├── .LICENSE ├── .github ├── dependabot.yml └── workflows │ ├── node.js.yml │ └── npm-publish.yml ├── .gitignore ├── .npmrc ├── README.md ├── docs └── migration │ ├── 1_2_x__1_3_x.md │ └── 1_x_x__2_x_x.md ├── examples └── redis-minimal │ ├── .env │ ├── .gitignore │ ├── README.md │ ├── cache-handler.mjs │ ├── eslint.config.mjs │ ├── next.config.ts │ ├── package.json │ ├── postcss.config.mjs │ ├── src │ ├── app │ │ ├── api │ │ │ └── cache │ │ │ │ └── route.ts │ │ ├── favicon.ico │ │ ├── fetch-example │ │ │ └── page.tsx │ │ ├── globals.css │ │ ├── isr-example │ │ │ └── blog │ │ │ │ └── [id] │ │ │ │ └── page.tsx │ │ ├── layout.tsx │ │ ├── manifest.ts │ │ ├── page.tsx │ │ ├── ppr-example │ │ │ ├── Example.tsx │ │ │ └── page.tsx │ │ └── static-params-test │ │ │ └── [testName] │ │ │ ├── page copy.tsx │ │ │ └── page.tsx │ ├── instrumentation.ts │ └── pages │ │ └── posts │ │ └── [id].tsx │ └── tsconfig.json ├── package.json ├── packages └── nextjs-cache-handler │ ├── .gitignore │ ├── .npmignore │ ├── .prettierrc.js │ ├── eslint.config.json │ ├── jest.config.js │ ├── package.json │ ├── src │ ├── constants.ts │ ├── functions │ │ ├── functions.ts │ │ └── nesh-classic-cache.ts │ ├── handlers │ │ ├── cache-handler.ts │ │ ├── cache-handler.types.ts │ │ ├── composite.ts │ │ ├── composite.types.ts │ │ ├── local-lru.ts │ │ ├── local-lru.types.ts │ │ ├── redis-strings.ts │ │ └── redis-strings.types.ts │ ├── helpers │ │ ├── buffer.ts │ │ ├── const.ts │ │ ├── createValidatedAgeEstimationFunction.test.ts │ │ ├── createValidatedAgeEstimationFunction.ts │ │ ├── getTagsFromHeaders.ts │ │ ├── isImplicitTag.ts │ │ ├── redisClusterAdapter.ts │ │ ├── resolveRevalidateValue.ts │ │ ├── withAbortSignal.test.ts │ │ ├── withAbortSignal.ts │ │ └── withAbortSignalProxy.ts │ └── instrumentation │ │ ├── instrumentation.ts │ │ └── register-initial-cache.ts │ ├── tsconfig.jest.json │ ├── tsconfig.json │ └── tsup.config.ts ├── pnpm-lock.yaml ├── pnpm-workspace.yaml └── turbo.json /.LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/.LICENSE -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/workflows/node.js.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/.github/workflows/node.js.yml -------------------------------------------------------------------------------- /.github/workflows/npm-publish.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/.github/workflows/npm-publish.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/.gitignore -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/.npmrc -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/README.md -------------------------------------------------------------------------------- /docs/migration/1_2_x__1_3_x.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/docs/migration/1_2_x__1_3_x.md -------------------------------------------------------------------------------- /docs/migration/1_x_x__2_x_x.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/docs/migration/1_x_x__2_x_x.md -------------------------------------------------------------------------------- /examples/redis-minimal/.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/.env -------------------------------------------------------------------------------- /examples/redis-minimal/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/.gitignore -------------------------------------------------------------------------------- /examples/redis-minimal/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/README.md -------------------------------------------------------------------------------- /examples/redis-minimal/cache-handler.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/cache-handler.mjs -------------------------------------------------------------------------------- /examples/redis-minimal/eslint.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/eslint.config.mjs -------------------------------------------------------------------------------- /examples/redis-minimal/next.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/next.config.ts -------------------------------------------------------------------------------- /examples/redis-minimal/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/package.json -------------------------------------------------------------------------------- /examples/redis-minimal/postcss.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/postcss.config.mjs -------------------------------------------------------------------------------- /examples/redis-minimal/src/app/api/cache/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/src/app/api/cache/route.ts -------------------------------------------------------------------------------- /examples/redis-minimal/src/app/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/src/app/favicon.ico -------------------------------------------------------------------------------- /examples/redis-minimal/src/app/fetch-example/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/src/app/fetch-example/page.tsx -------------------------------------------------------------------------------- /examples/redis-minimal/src/app/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/src/app/globals.css -------------------------------------------------------------------------------- /examples/redis-minimal/src/app/isr-example/blog/[id]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/src/app/isr-example/blog/[id]/page.tsx -------------------------------------------------------------------------------- /examples/redis-minimal/src/app/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/src/app/layout.tsx -------------------------------------------------------------------------------- /examples/redis-minimal/src/app/manifest.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/src/app/manifest.ts -------------------------------------------------------------------------------- /examples/redis-minimal/src/app/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/src/app/page.tsx -------------------------------------------------------------------------------- /examples/redis-minimal/src/app/ppr-example/Example.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/src/app/ppr-example/Example.tsx -------------------------------------------------------------------------------- /examples/redis-minimal/src/app/ppr-example/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/src/app/ppr-example/page.tsx -------------------------------------------------------------------------------- /examples/redis-minimal/src/app/static-params-test/[testName]/page copy.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/src/app/static-params-test/[testName]/page copy.tsx -------------------------------------------------------------------------------- /examples/redis-minimal/src/app/static-params-test/[testName]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/src/app/static-params-test/[testName]/page.tsx -------------------------------------------------------------------------------- /examples/redis-minimal/src/instrumentation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/src/instrumentation.ts -------------------------------------------------------------------------------- /examples/redis-minimal/src/pages/posts/[id].tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/src/pages/posts/[id].tsx -------------------------------------------------------------------------------- /examples/redis-minimal/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/examples/redis-minimal/tsconfig.json -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/package.json -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/.gitignore -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/.npmignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/.npmignore -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/.prettierrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/.prettierrc.js -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/eslint.config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/eslint.config.json -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/jest.config.js -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/package.json -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/constants.ts: -------------------------------------------------------------------------------- 1 | export const REVALIDATED_TAGS_KEY = "__revalidated_tags__"; 2 | -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/functions/functions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/functions/functions.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/functions/nesh-classic-cache.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/functions/nesh-classic-cache.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/handlers/cache-handler.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/handlers/cache-handler.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/handlers/cache-handler.types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/handlers/cache-handler.types.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/handlers/composite.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/handlers/composite.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/handlers/composite.types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/handlers/composite.types.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/handlers/local-lru.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/handlers/local-lru.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/handlers/local-lru.types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/handlers/local-lru.types.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/handlers/redis-strings.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/handlers/redis-strings.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/handlers/redis-strings.types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/handlers/redis-strings.types.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/helpers/buffer.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/helpers/buffer.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/helpers/const.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/helpers/const.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/helpers/createValidatedAgeEstimationFunction.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/helpers/createValidatedAgeEstimationFunction.test.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/helpers/createValidatedAgeEstimationFunction.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/helpers/createValidatedAgeEstimationFunction.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/helpers/getTagsFromHeaders.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/helpers/getTagsFromHeaders.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/helpers/isImplicitTag.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/helpers/isImplicitTag.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/helpers/redisClusterAdapter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/helpers/redisClusterAdapter.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/helpers/resolveRevalidateValue.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/helpers/resolveRevalidateValue.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/helpers/withAbortSignal.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/helpers/withAbortSignal.test.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/helpers/withAbortSignal.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/helpers/withAbortSignal.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/helpers/withAbortSignalProxy.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/helpers/withAbortSignalProxy.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/instrumentation/instrumentation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/instrumentation/instrumentation.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/src/instrumentation/register-initial-cache.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/src/instrumentation/register-initial-cache.ts -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/tsconfig.jest.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/tsconfig.jest.json -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/tsconfig.json -------------------------------------------------------------------------------- /packages/nextjs-cache-handler/tsup.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/packages/nextjs-cache-handler/tsup.config.ts -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/pnpm-lock.yaml -------------------------------------------------------------------------------- /pnpm-workspace.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/pnpm-workspace.yaml -------------------------------------------------------------------------------- /turbo.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fortedigital/nextjs-cache-handler/HEAD/turbo.json --------------------------------------------------------------------------------