5dd4999b64
Strategized with @balazsorban44 to open one larger PR, with changes to individual examples as separate commits. For each example, I researched how multiple realworld codebases use the featured technology with TypeScript, to thoughtfully convert them by hand - nothing automated whatsoever. ## Documentation / Examples - [X] Make sure the linting passes by running `pnpm lint` - [X] The "examples guidelines" are followed from [our contributing doc](https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md)
35 lines
692 B
JavaScript
35 lines
692 B
JavaScript
// @ts-check
|
|
const withOffline = require('next-offline')
|
|
|
|
/**
|
|
* @type {import('next').NextConfig}
|
|
**/
|
|
const nextConfig = {
|
|
workboxOpts: {
|
|
swDest: process.env.NEXT_EXPORT
|
|
? 'service-worker.js'
|
|
: 'static/service-worker.js',
|
|
runtimeCaching: [
|
|
{
|
|
urlPattern: /^https?.*/,
|
|
handler: 'NetworkFirst',
|
|
options: {
|
|
cacheName: 'offlineCache',
|
|
expiration: {
|
|
maxEntries: 200,
|
|
},
|
|
},
|
|
},
|
|
],
|
|
},
|
|
async rewrites() {
|
|
return [
|
|
{
|
|
source: '/service-worker.js',
|
|
destination: '/_next/static/service-worker.js',
|
|
},
|
|
]
|
|
},
|
|
}
|
|
|
|
module.exports = withOffline(nextConfig)
|