diff --git a/.changeset/@graphql-yoga_plugin-response-cache-3092-dependencies.md b/.changeset/@graphql-yoga_plugin-response-cache-3092-dependencies.md new file mode 100644 index 0000000000..a910957491 --- /dev/null +++ b/.changeset/@graphql-yoga_plugin-response-cache-3092-dependencies.md @@ -0,0 +1,7 @@ +--- +'@graphql-yoga/plugin-response-cache': patch +--- +dependencies updates: + - Updated dependency [`@envelop/response-cache@^6.1.0` + ↗︎](https://www.npmjs.com/package/@envelop/response-cache/v/6.1.0) (from `^6.0.0`, in + `dependencies`) diff --git a/.changeset/early-masks-try.md b/.changeset/early-masks-try.md new file mode 100644 index 0000000000..0ef853459a --- /dev/null +++ b/.changeset/early-masks-try.md @@ -0,0 +1,5 @@ +--- +'@graphql-yoga/plugin-response-cache': minor +--- + +Expose `hashSHA256` sha256 implementation to ease cache key factory customisation. diff --git a/.changeset/pretty-numbers-fetch.md b/.changeset/pretty-numbers-fetch.md new file mode 100644 index 0000000000..2d20353b5b --- /dev/null +++ b/.changeset/pretty-numbers-fetch.md @@ -0,0 +1,5 @@ +--- +'@graphql-yoga/plugin-response-cache': patch +--- + +Fix missing export of `Cache` type and `cacheControlDirective` exports diff --git a/packages/plugins/response-cache/package.json b/packages/plugins/response-cache/package.json index a3003ee131..a96d1fd8d8 100644 --- a/packages/plugins/response-cache/package.json +++ b/packages/plugins/response-cache/package.json @@ -47,7 +47,7 @@ "graphql-yoga": "^5.0.0" }, "dependencies": { - "@envelop/response-cache": "^6.0.0" + "@envelop/response-cache": "^6.1.0" }, "devDependencies": { "graphql": "^16.6.0", diff --git a/packages/plugins/response-cache/src/index.ts b/packages/plugins/response-cache/src/index.ts index da16a55fe5..5a68095651 100644 --- a/packages/plugins/response-cache/src/index.ts +++ b/packages/plugins/response-cache/src/index.ts @@ -12,6 +12,8 @@ import { UseResponseCacheParameter as UseEnvelopResponseCacheParameter, } from '@envelop/response-cache'; +export { cacheControlDirective, hashSHA256 } from '@envelop/response-cache'; + export type BuildResponseCacheKeyFunction = ( params: Omit[0], 'context'> & { request: Request; @@ -72,7 +74,7 @@ export interface ResponseCachePluginExtensions { [key: string]: unknown; } -interface Cache extends EnvelopCache { +export interface Cache extends EnvelopCache { get( key: string, ): Promise, ResponseCachePluginExtensions> | undefined>; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9b15075c81..4921f0bbb4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1943,8 +1943,8 @@ importers: packages/plugins/response-cache: dependencies: '@envelop/response-cache': - specifier: ^6.0.0 - version: 6.0.0(@envelop/core@5.0.0)(graphql@16.6.0) + specifier: ^6.1.0 + version: 6.1.0(@envelop/core@5.0.0)(graphql@16.6.0) graphql-yoga: specifier: ^5.0.0 version: link:../../graphql-yoga/dist @@ -6679,8 +6679,8 @@ packages: tslib: 2.6.2 dev: false - /@envelop/response-cache@6.0.0(@envelop/core@5.0.0)(graphql@16.6.0): - resolution: {integrity: sha512-vCgveh+wfGD6Hza5ynK2usv/SRG3Pp6MHtMhKpfKj5cfs4aVVZFpl17qd/c+xgrXhGLtrnOdh6J9771V1m4KxQ==} + /@envelop/response-cache@6.1.0(@envelop/core@5.0.0)(graphql@16.6.0): + resolution: {integrity: sha512-yE1H85jju/OGlbFTFfUx0dXAScewWES2UBe8UhFrMMRFTVsNwnOHFaVWQw7mwnMZjQOzahRiXPlG2Z0dxBQ6GQ==} engines: {node: '>=18.0.0'} peerDependencies: '@envelop/core': ^5.0.0