From ebbdebbb06a4ec55e6be12e5e7db4279bb341005 Mon Sep 17 00:00:00 2001 From: Angelo Ashmore Date: Tue, 6 Jun 2023 09:46:38 -1000 Subject: [PATCH] refactor: update to `@prismicio/client` v7 --- examples/.gitkeep | 0 package-lock.json | 100 +++++++++++---------------------- package.json | 3 +- src/createPrismicLink.ts | 3 +- test/createPrismicLink.test.ts | 14 ++--- 5 files changed, 42 insertions(+), 78 deletions(-) delete mode 100644 examples/.gitkeep diff --git a/examples/.gitkeep b/examples/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/package-lock.json b/package-lock.json index 3c573c6..12c594a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,11 +9,10 @@ "version": "1.1.1", "license": "Apache-2.0", "dependencies": { - "@prismicio/client": "^6.4.1" + "@prismicio/client": "^7.0.1" }, "devDependencies": { "@apollo/client": "^3.5.8", - "@prismicio/types": "^0.1.24", "@size-limit/preset-small-lib": "^7.0.8", "@types/node-fetch": "^2.6.0", "@types/sinon": "^10.0.11", @@ -667,46 +666,32 @@ } }, "node_modules/@prismicio/client": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/@prismicio/client/-/client-6.4.1.tgz", - "integrity": "sha512-yP3aTETsybx7DOMeOTDYMJgZyGBBwu5HpDqcPtZ4QUhKWjy749ZNVUMfXayU90609UhzEvKSkGtu13u0wcpbDw==", - "dependencies": { - "@prismicio/helpers": "^2.1.1", - "@prismicio/types": "^0.1.24" - }, - "engines": { - "node": ">=12.13.0" - } - }, - "node_modules/@prismicio/helpers": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@prismicio/helpers/-/helpers-2.1.1.tgz", - "integrity": "sha512-jP17J0ot3zOEMqL3yJteAQW6zwR2ttWwowpVJ02Q6sBk1K9DFfQbQ9ySA4tkBQS0ki3ttWFnrERDzCZ/xCCvGQ==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@prismicio/client/-/client-7.0.1.tgz", + "integrity": "sha512-f4SDcDwVB2T73QKJJtzXd8LsfvDgIqOQNhC78bwsKLb1BjfPZNucsyIcRI9jGZdGxcU7lA+HStkYHw6z98ofKQ==", "dependencies": { - "@prismicio/richtext": "^2.0.1", - "@prismicio/types": "^0.1.23", - "escape-html": "^1.0.3", - "imgix-url-builder": "^0.0.2" + "@prismicio/richtext": "^2.1.5", + "imgix-url-builder": "^0.0.3" }, "engines": { - "node": ">=12.7.0" + "node": ">=14.15.0" } }, "node_modules/@prismicio/richtext": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@prismicio/richtext/-/richtext-2.0.1.tgz", - "integrity": "sha512-sM+eusvE4PsKnwefDRd0ai3Ny59XJ54dn6xfwq0Fyqj0LAcuyB2gRjSufbIqYOZ1r4JKMQArDKrypNEcrbBFkA==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@prismicio/richtext/-/richtext-2.1.5.tgz", + "integrity": "sha512-Sf6iCsciPmfK3uQeFmeY9RTRSuhrCVzyU39OkiJ1VJn8O0531pKapGoWS+5WGxouJtE5+jGqV8L+L2mKP7NkXQ==", "dependencies": { - "@prismicio/types": "^0.1.22" + "@prismicio/types": "^0.2.7" }, "engines": { "node": ">=12.7.0" } }, "node_modules/@prismicio/types": { - "version": "0.1.24", - "resolved": "https://registry.npmjs.org/@prismicio/types/-/types-0.1.24.tgz", - "integrity": "sha512-jugSx4sgzux0dCWwlEZSjTo98rryxNlHLkdlBbMHpAFJjjor8Jqt+cN7PSCxPTkUbynHEFIwuNCbJhoLU+gEGA==", + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/@prismicio/types/-/types-0.2.8.tgz", + "integrity": "sha512-EmuYYil56U+UtEifMD/9TmLzpWliV+X6kypwPq47GNXmIXyFK1JsP3z872fUziXwoBjd2YILj28DNdYXlLOpXg==", "engines": { "node": ">=12.7.0" } @@ -3024,11 +3009,6 @@ "node": ">=6" } }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" - }, "node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -4137,9 +4117,9 @@ } }, "node_modules/imgix-url-builder": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/imgix-url-builder/-/imgix-url-builder-0.0.2.tgz", - "integrity": "sha512-PHT9aXvD+I6x5UAdvsAKNALvxHI1AWGGpxLUQDQAXzUt54ScFHxxODJ/4/XWDM55cqvRCvT3MMxbOWjgWhLe9Q==", + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/imgix-url-builder/-/imgix-url-builder-0.0.3.tgz", + "integrity": "sha512-8Oc2Cn4+jF06sEfJcVPlWYfD2F6RjrwIMbk1xEzux8unoB5LsvFc/GL1BQ47HPaeE12ReX2nMUcjUslGYWLxHA==", "engines": { "node": ">=12.7.0" } @@ -8965,37 +8945,26 @@ } }, "@prismicio/client": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/@prismicio/client/-/client-6.4.1.tgz", - "integrity": "sha512-yP3aTETsybx7DOMeOTDYMJgZyGBBwu5HpDqcPtZ4QUhKWjy749ZNVUMfXayU90609UhzEvKSkGtu13u0wcpbDw==", - "requires": { - "@prismicio/helpers": "^2.1.1", - "@prismicio/types": "^0.1.24" - } - }, - "@prismicio/helpers": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@prismicio/helpers/-/helpers-2.1.1.tgz", - "integrity": "sha512-jP17J0ot3zOEMqL3yJteAQW6zwR2ttWwowpVJ02Q6sBk1K9DFfQbQ9ySA4tkBQS0ki3ttWFnrERDzCZ/xCCvGQ==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@prismicio/client/-/client-7.0.1.tgz", + "integrity": "sha512-f4SDcDwVB2T73QKJJtzXd8LsfvDgIqOQNhC78bwsKLb1BjfPZNucsyIcRI9jGZdGxcU7lA+HStkYHw6z98ofKQ==", "requires": { - "@prismicio/richtext": "^2.0.1", - "@prismicio/types": "^0.1.23", - "escape-html": "^1.0.3", - "imgix-url-builder": "^0.0.2" + "@prismicio/richtext": "^2.1.5", + "imgix-url-builder": "^0.0.3" } }, "@prismicio/richtext": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@prismicio/richtext/-/richtext-2.0.1.tgz", - "integrity": "sha512-sM+eusvE4PsKnwefDRd0ai3Ny59XJ54dn6xfwq0Fyqj0LAcuyB2gRjSufbIqYOZ1r4JKMQArDKrypNEcrbBFkA==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@prismicio/richtext/-/richtext-2.1.5.tgz", + "integrity": "sha512-Sf6iCsciPmfK3uQeFmeY9RTRSuhrCVzyU39OkiJ1VJn8O0531pKapGoWS+5WGxouJtE5+jGqV8L+L2mKP7NkXQ==", "requires": { - "@prismicio/types": "^0.1.22" + "@prismicio/types": "^0.2.7" } }, "@prismicio/types": { - "version": "0.1.24", - "resolved": "https://registry.npmjs.org/@prismicio/types/-/types-0.1.24.tgz", - "integrity": "sha512-jugSx4sgzux0dCWwlEZSjTo98rryxNlHLkdlBbMHpAFJjjor8Jqt+cN7PSCxPTkUbynHEFIwuNCbJhoLU+gEGA==" + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/@prismicio/types/-/types-0.2.8.tgz", + "integrity": "sha512-EmuYYil56U+UtEifMD/9TmLzpWliV+X6kypwPq47GNXmIXyFK1JsP3z872fUziXwoBjd2YILj28DNdYXlLOpXg==" }, "@rollup/plugin-alias": { "version": "3.1.9", @@ -10626,11 +10595,6 @@ "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "dev": true }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" - }, "escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -11449,9 +11413,9 @@ "dev": true }, "imgix-url-builder": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/imgix-url-builder/-/imgix-url-builder-0.0.2.tgz", - "integrity": "sha512-PHT9aXvD+I6x5UAdvsAKNALvxHI1AWGGpxLUQDQAXzUt54ScFHxxODJ/4/XWDM55cqvRCvT3MMxbOWjgWhLe9Q==" + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/imgix-url-builder/-/imgix-url-builder-0.0.3.tgz", + "integrity": "sha512-8Oc2Cn4+jF06sEfJcVPlWYfD2F6RjrwIMbk1xEzux8unoB5LsvFc/GL1BQ47HPaeE12ReX2nMUcjUslGYWLxHA==" }, "import-fresh": { "version": "3.3.0", diff --git a/package.json b/package.json index 0c57bdd..e9c7d87 100644 --- a/package.json +++ b/package.json @@ -48,11 +48,10 @@ "unit": "nyc --reporter=lcovonly --reporter=text --exclude-after-remap=false ava" }, "dependencies": { - "@prismicio/client": "^6.4.1" + "@prismicio/client": "^7.0.1" }, "devDependencies": { "@apollo/client": "^3.5.8", - "@prismicio/types": "^0.1.24", "@size-limit/preset-small-lib": "^7.0.8", "@types/node-fetch": "^2.6.0", "@types/sinon": "^10.0.11", diff --git a/src/createPrismicLink.ts b/src/createPrismicLink.ts index 940a584..981c71e 100644 --- a/src/createPrismicLink.ts +++ b/src/createPrismicLink.ts @@ -1,7 +1,8 @@ import type { ApolloLink, HttpOptions } from "@apollo/client/core"; -import { FetchLike, getRepositoryName } from "@prismicio/client"; import { createHttpLink } from "@apollo/client/core"; import { + FetchLike, + getRepositoryName, getRepositoryEndpoint, getGraphQLEndpoint, createClient, diff --git a/test/createPrismicLink.test.ts b/test/createPrismicLink.test.ts index 189082f..5b7cd2e 100644 --- a/test/createPrismicLink.test.ts +++ b/test/createPrismicLink.test.ts @@ -52,7 +52,7 @@ const ref = repositoryResponse.refs?.[0].ref as string; test("creates an HTTP Link from a repositoryName", async (t) => { const repositoryName = "qwerty"; - const apiEndpoint = prismic.getEndpoint(repositoryName); + const apiEndpoint = prismic.getRepositoryEndpoint(repositoryName); const uri = prismic.getGraphQLEndpoint(repositoryName); const query = gql` @@ -62,7 +62,7 @@ test("creates an HTTP Link from a repositoryName", async (t) => { `; const compressedQuery = `{foo}`; - const fetch = sinon.stub().callsFake((url) => { + const fetch = sinon.stub().callsFake(async (url) => { const instance = new URL(url); if (url === apiEndpoint) { @@ -95,7 +95,7 @@ test("creates an HTTP Link from a repositoryName", async (t) => { test("supports only a uri option", async (t) => { const repositoryName = "qwerty"; - const apiEndpoint = prismic.getEndpoint(repositoryName); + const apiEndpoint = prismic.getRepositoryEndpoint(repositoryName); const uri = prismic.getGraphQLEndpoint(repositoryName); const query = gql` @@ -105,7 +105,7 @@ test("supports only a uri option", async (t) => { `; const compressedQuery = `{foo}`; - const fetch = sinon.stub().callsFake((url) => { + const fetch = sinon.stub().callsFake(async (url) => { const instance = new URL(url); if (url === apiEndpoint) { @@ -165,7 +165,7 @@ test("supports custom API endpoint (for Rest API)", async (t) => { `; const compressedQuery = `{foo}`; - const fetch = sinon.stub().callsFake((url) => { + const fetch = sinon.stub().callsFake(async (url) => { const instance = new URL(url); if (url === apiEndpoint) { @@ -199,7 +199,7 @@ test("supports custom API endpoint (for Rest API)", async (t) => { test("supports custom GraphQL endpoint", async (t) => { const repositoryName = "qwerty"; - const apiEndpoint = prismic.getEndpoint(repositoryName); + const apiEndpoint = prismic.getRepositoryEndpoint(repositoryName); const uri = "https://example.com/"; const query = gql` @@ -209,7 +209,7 @@ test("supports custom GraphQL endpoint", async (t) => { `; const compressedQuery = `{foo}`; - const fetch = sinon.stub().callsFake((url) => { + const fetch = sinon.stub().callsFake(async (url) => { const instance = new URL(url); if (url === apiEndpoint) {