diff --git a/components/NotionPage.tsx b/components/NotionPage.tsx index 9e885304da..f8b8f7da1e 100644 --- a/components/NotionPage.tsx +++ b/components/NotionPage.tsx @@ -28,6 +28,9 @@ import { PageAside } from './PageAside' import { PageHead } from './PageHead' import styles from './styles.module.css' +import { DiscussionEmbed } from 'disqus-react'; + + // ----------------------------------------------------------------------------- // dynamic imports for optional components // ----------------------------------------------------------------------------- @@ -80,6 +83,7 @@ const Collection = dynamic(() => const Equation = dynamic(() => import('react-notion-x/build/third-party/equation').then((m) => m.Equation) ) + const Pdf = dynamic( () => import('react-notion-x/build/third-party/pdf').then((m) => m.Pdf), { @@ -165,7 +169,7 @@ export const NotionPage: React.FC = ({ propertyLastEditedTimeValue, propertyTextValue, propertyDateValue - }), + }), [] ) @@ -242,6 +246,17 @@ export const NotionPage: React.FC = ({ getPageProperty('Description', block, recordMap) || config.description + const disqus = + return ( <> = ({ mapImageUrl={mapImageUrl} searchNotion={config.isSearchEnabled ? searchNotion : null} pageAside={pageAside} + pageFooter={pageId === site.rootNotionPageId ? null : disqus} footer={footer} /> - - ) } diff --git a/components/PageActions.tsx b/components/PageActions.tsx index 2336513c58..051cc49274 100644 --- a/components/PageActions.tsx +++ b/components/PageActions.tsx @@ -30,6 +30,7 @@ export const PageActions: React.FC<{ tweet: string }> = ({ tweet }) => { > + ) } diff --git a/package-lock.json b/package-lock.json index f475a43730..f3acf9ef2f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,6 +16,7 @@ "@vercel/og": "^0.0.19", "classnames": "^2.3.1", "date-fns": "^2.28.0", + "disqus-react": "^1.1.5", "expiry-map": "^2.0.0", "fathom-client": "^3.4.1", "got": "^12.0.3", @@ -2218,6 +2219,15 @@ "node": ">=8" } }, + "node_modules/disqus-react": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/disqus-react/-/disqus-react-1.1.5.tgz", + "integrity": "sha512-9fdG5m6c3wJzlCDLaMheuUagMVj3s5qgUSXdekpCsvzYOKG21AiuOoqyDzA0oXrpPnYzgpnsvPYqZ+i0hJPGZw==", + "peerDependencies": { + "react": "^15.6.1 || ^16.0.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^15.6.1 || ^16.0.0 || ^17.0.0 || ^18.0.0" + } + }, "node_modules/doctrine": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", @@ -7142,7 +7152,8 @@ "@matejmazur/react-katex": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/@matejmazur/react-katex/-/react-katex-3.1.3.tgz", - "integrity": "sha512-rBp7mJ9An7ktNoU653BWOYdO4FoR4YNwofHZi+vaytX/nWbIlmHVIF+X8VFOn6c3WYmrLT5FFBjKqCZ1sjR5uQ==" + "integrity": "sha512-rBp7mJ9An7ktNoU653BWOYdO4FoR4YNwofHZi+vaytX/nWbIlmHVIF+X8VFOn6c3WYmrLT5FFBjKqCZ1sjR5uQ==", + "requires": {} }, "@next/bundle-analyzer": { "version": "12.3.1", @@ -7271,7 +7282,8 @@ "@react-icons/all-files": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/@react-icons/all-files/-/all-files-4.1.0.tgz", - "integrity": "sha512-hxBI2UOuVaI3O/BhQfhtb4kcGn9ft12RWAFVMUeNjqqhLsHvFtzIkFaptBJpFDANTKoDfdVoHTKZDlwKCACbMQ==" + "integrity": "sha512-hxBI2UOuVaI3O/BhQfhtb4kcGn9ft12RWAFVMUeNjqqhLsHvFtzIkFaptBJpFDANTKoDfdVoHTKZDlwKCACbMQ==", + "requires": {} }, "@resvg/resvg-wasm": { "version": "2.0.0-alpha.4", @@ -7547,7 +7559,8 @@ "@use-it/event-listener": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/@use-it/event-listener/-/event-listener-0.1.7.tgz", - "integrity": "sha512-hgfExDzUU9uTRTPDCpw2s9jWTxcxmpJya3fK5ADpf5VDpSy8WYwY/kh28XE0tUcbsljeP8wfan48QvAQTSSa3Q==" + "integrity": "sha512-hgfExDzUU9uTRTPDCpw2s9jWTxcxmpJya3fK5ADpf5VDpSy8WYwY/kh28XE0tUcbsljeP8wfan48QvAQTSSa3Q==", + "requires": {} }, "@vercel/og": { "version": "0.0.19", @@ -7574,7 +7587,8 @@ "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true + "dev": true, + "requires": {} }, "acorn-walk": { "version": "8.2.0", @@ -7605,7 +7619,8 @@ "ajv-keywords": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==" + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "requires": {} }, "ansi-regex": { "version": "5.0.1", @@ -8093,6 +8108,12 @@ "path-type": "^4.0.0" } }, + "disqus-react": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/disqus-react/-/disqus-react-1.1.5.tgz", + "integrity": "sha512-9fdG5m6c3wJzlCDLaMheuUagMVj3s5qgUSXdekpCsvzYOKG21AiuOoqyDzA0oXrpPnYzgpnsvPYqZ+i0hJPGZw==", + "requires": {} + }, "doctrine": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", @@ -8334,7 +8355,8 @@ "version": "8.5.0", "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz", "integrity": "sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==", - "dev": true + "dev": true, + "requires": {} }, "eslint-plugin-react": { "version": "7.31.10", @@ -8373,7 +8395,8 @@ "version": "4.6.0", "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", - "dev": true + "dev": true, + "requires": {} }, "eslint-scope": { "version": "5.1.1", @@ -10015,7 +10038,8 @@ "pdfjs-dist": { "version": "2.12.313", "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-2.12.313.tgz", - "integrity": "sha512-1x6iXO4Qnv6Eb+YFdN5JdUzt4pAkxSp3aLAYPX93eQCyg/m7QFzXVWJHJVtoW48CI8HCXju4dSkhQZwoheL5mA==" + "integrity": "sha512-1x6iXO4Qnv6Eb+YFdN5JdUzt4pAkxSp3aLAYPX93eQCyg/m7QFzXVWJHJVtoW48CI8HCXju4dSkhQZwoheL5mA==", + "requires": {} }, "picocolors": { "version": "1.0.0", @@ -10202,7 +10226,8 @@ "react-image": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/react-image/-/react-image-4.0.3.tgz", - "integrity": "sha512-19MUK9u1qaw9xys8XEsVkSpVhHctEBUeYFvrLTe1PN+4w5Co13AN2WA7xtBshPM6SthsOj77SlDrEAeOaJpf7g==" + "integrity": "sha512-19MUK9u1qaw9xys8XEsVkSpVhHctEBUeYFvrLTe1PN+4w5Co13AN2WA7xtBshPM6SthsOj77SlDrEAeOaJpf7g==", + "requires": {} }, "react-intersection-observer": { "version": "6.4.2", @@ -10283,17 +10308,20 @@ "react-side-effect": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/react-side-effect/-/react-side-effect-2.1.1.tgz", - "integrity": "sha512-2FoTQzRNTncBVtnzxFOk2mCpcfxQpenBMbk5kSVBg5UcPqV9fRbgY2zhb7GTWWOlpFmAxhClBDlIq8Rsubz1yQ==" + "integrity": "sha512-2FoTQzRNTncBVtnzxFOk2mCpcfxQpenBMbk5kSVBg5UcPqV9fRbgY2zhb7GTWWOlpFmAxhClBDlIq8Rsubz1yQ==", + "requires": {} }, "react-tweet-embed": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/react-tweet-embed/-/react-tweet-embed-2.0.0.tgz", - "integrity": "sha512-g2kfPjSRTOKeJtaQF5EMuSTmp/q8I0qdDs/pZ2qLXZjCWExDT/JgjxSlyM65NyNzsz8072PDpvlO/sIXwwVpdQ==" + "integrity": "sha512-g2kfPjSRTOKeJtaQF5EMuSTmp/q8I0qdDs/pZ2qLXZjCWExDT/JgjxSlyM65NyNzsz8072PDpvlO/sIXwwVpdQ==", + "requires": {} }, "react-universal-interface": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/react-universal-interface/-/react-universal-interface-0.6.2.tgz", - "integrity": "sha512-dg8yXdcQmvgR13RIlZbTRQOoUrDciFVoSBZILwjE2LFISxZZ8loVJKAkuzswl5js8BHda79bIb2b84ehU8IjXw==" + "integrity": "sha512-dg8yXdcQmvgR13RIlZbTRQOoUrDciFVoSBZILwjE2LFISxZZ8loVJKAkuzswl5js8BHda79bIb2b84ehU8IjXw==", + "requires": {} }, "react-use": { "version": "17.3.2", @@ -10874,7 +10902,8 @@ "styled-jsx": { "version": "5.0.7", "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.0.7.tgz", - "integrity": "sha512-b3sUzamS086YLRuvnaDigdAewz1/EFYlHpYBP5mZovKEdQQOIIYq8lApylub3HHZ6xFjV051kkGU7cudJmrXEA==" + "integrity": "sha512-b3sUzamS086YLRuvnaDigdAewz1/EFYlHpYBP5mZovKEdQQOIIYq8lApylub3HHZ6xFjV051kkGU7cudJmrXEA==", + "requires": {} }, "stylis": { "version": "4.0.13", @@ -11090,7 +11119,8 @@ "use-sync-external-store": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", - "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==" + "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", + "requires": {} }, "util-deprecate": { "version": "1.0.2", @@ -11248,7 +11278,8 @@ "version": "7.5.7", "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.7.tgz", "integrity": "sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A==", - "dev": true + "dev": true, + "requires": {} }, "xml": { "version": "1.0.1", diff --git a/package.json b/package.json index d925501a50..49832652fa 100644 --- a/package.json +++ b/package.json @@ -32,6 +32,7 @@ "@vercel/og": "^0.0.19", "classnames": "^2.3.1", "date-fns": "^2.28.0", + "disqus-react": "^1.1.5", "expiry-map": "^2.0.0", "fathom-client": "^3.4.1", "got": "^12.0.3", diff --git a/styles/global.css b/styles/global.css index a0341ca55d..f5bfbb3fe1 100644 --- a/styles/global.css +++ b/styles/global.css @@ -38,3 +38,8 @@ body { color: var(--fg-color); caret-color: var(--fg-color); } + + +.disqusComments { + width: 100%; +} \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 36b3fb0dac..aefed983d2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -22,7 +22,7 @@ "resolved" "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.19.4.tgz" "version" "7.19.4" -"@babel/core@7.17.8": +"@babel/core@^7.0.0", "@babel/core@7.17.8": "integrity" "sha512-OdQDV/7cRBtJHLSOBqqbYNkOcydOgnX59TZx4puf41fzcVtN3e/4yqY8lMQsK+5X2lJtAdmA+6OHqsj1hBJ4IQ==" "resolved" "https://registry.npmjs.org/@babel/core/-/core-7.17.8.tgz" "version" "7.17.8" @@ -174,7 +174,7 @@ "resolved" "https://registry.npmjs.org/@babel/parser/-/parser-7.19.4.tgz" "version" "7.19.4" -"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.2.0": +"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.2.0", "@babel/runtime@>=7": "integrity" "sha512-lkqXDcvlFT5rvEjiu6+QYO+1GXrEHRo2LOtS7E4GtX5ESIZOgepqsZBVIj6Pv+a6zqsya9VCgiK1KAK4BvJDAw==" "resolved" "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.9.tgz" "version" "7.18.9" @@ -586,7 +586,7 @@ "semver" "^7.3.7" "tsutils" "^3.21.0" -"@typescript-eslint/parser@^5.40.0": +"@typescript-eslint/parser@^5.0.0", "@typescript-eslint/parser@^5.40.0": "integrity" "sha512-Ah5gqyX2ySkiuYeOIDg7ap51/b63QgWZA7w6AHtFrag7aH0lRQPbLzUjk0c9o5/KZ6JRkTTDKShL4AUrQa6/hw==" "resolved" "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.40.0.tgz" "version" "5.40.0" @@ -682,7 +682,7 @@ "resolved" "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz" "version" "8.2.0" -"acorn@^8.0.4", "acorn@^8.8.0": +"acorn@^6.0.0 || ^7.0.0 || ^8.0.0", "acorn@^8.0.4", "acorn@^8.8.0": "integrity" "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==" "resolved" "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz" "version" "8.8.0" @@ -708,7 +708,7 @@ "resolved" "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz" "version" "3.5.2" -"ajv@^6.10.0", "ajv@^6.12.4", "ajv@^6.12.5": +"ajv@^6.10.0", "ajv@^6.12.4", "ajv@^6.12.5", "ajv@^6.9.1": "integrity" "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==" "resolved" "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" "version" "6.12.6" @@ -825,7 +825,7 @@ dependencies: "fill-range" "^7.0.1" -"browserslist@^4.21.3": +"browserslist@^4.21.3", "browserslist@>= 4.21.0": "integrity" "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==" "resolved" "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz" "version" "4.21.4" @@ -1181,6 +1181,11 @@ dependencies: "path-type" "^4.0.0" +"disqus-react@^1.1.5": + "integrity" "sha512-9fdG5m6c3wJzlCDLaMheuUagMVj3s5qgUSXdekpCsvzYOKG21AiuOoqyDzA0oXrpPnYzgpnsvPYqZ+i0hJPGZw==" + "resolved" "https://registry.npmjs.org/disqus-react/-/disqus-react-1.1.5.tgz" + "version" "1.1.5" + "doctrine@^2.1.0": "integrity" "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==" "resolved" "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz" @@ -1360,7 +1365,7 @@ "resolved" "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz" "version" "3.3.0" -"eslint@^8.25.0": +"eslint@*", "eslint@^3 || ^4 || ^5 || ^6 || ^7 || ^8", "eslint@^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0", "eslint@^6.0.0 || ^7.0.0 || ^8.0.0", "eslint@^8.25.0", "eslint@>=5", "eslint@>=7.0.0": "integrity" "sha512-DVlJOZ4Pn50zcKW5bYH7GQK/9MsoQG2d5eDH0ebEkE8PbgzTTmtt/VTH9GGJ4BfeZCpBLqFfvsjX35UacUL83A==" "resolved" "https://registry.npmjs.org/eslint/-/eslint-8.25.0.tgz" "version" "8.25.0" @@ -2136,7 +2141,7 @@ "array-includes" "^3.1.3" "object.assign" "^4.1.2" -"katex@^0.15.3": +"katex@^0.15.3", "katex@>=0.9": "integrity" "sha512-Al6V7RJsmjklT9QItyHWGaQCt+NYTle1bZwB1e9MR/tLoIT1MXaHy9UpfGSB7eaqDgjjqqRxQOaQGrALCrEyBQ==" "resolved" "https://registry.npmjs.org/katex/-/katex-0.15.3.tgz" "version" "0.15.3" @@ -2816,7 +2821,7 @@ "resolved" "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" "version" "1.2.1" -"prettier@^2.7.1": +"prettier@^2.7.1", "prettier@2.x": "integrity" "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==" "resolved" "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz" "version" "2.7.1" @@ -2881,7 +2886,7 @@ "prop-types" "^15.5.6" "react-side-effect" "^1.1.0 || ^2.1.0" -"react-dom@^18.2.0": +"react-dom@*", "react-dom@^0.14.0 || ^15.0.0 || ^16 || ^17", "react-dom@^15 || ^16", "react-dom@^15.6.1 || ^16.0.0 || ^17.0.0 || ^18.0.0", "react-dom@^16.3.0 || ^17.0.0 || ^18.0.0", "react-dom@^16.8.0 || ^17.0.0", "react-dom@^17.0.2 || ^18.0.0-0", "react-dom@^18.2.0", "react-dom@>=16", "react-dom@>=16.8", "react-dom@>=16.8.1": "integrity" "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==" "resolved" "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz" "version" "18.2.0" @@ -3012,7 +3017,7 @@ "ts-easing" "^0.2.0" "tslib" "^2.1.0" -"react@^18.2.0": +"react@*", "react@^0.14.0 || ^15.0.0 || ^16 || ^17", "react@^15 || ^16", "react@^15.0.0 || ^16.0.0 || ^17.0.0", "react@^15.6.1 || ^16.0.0 || ^17.0.0 || ^18.0.0", "react@^16.3.0 || ^17.0.0", "react@^16.3.0 || ^17.0.0 || ^18.0.0", "react@^16.8.0 || ^17.0.0", "react@^16.8.0 || ^17.0.0", "react@^16.8.0 || ^17.0.0 || ^18.0.0", "react@^17.0.2 || ^18.0.0-0", "react@^18.2.0", "react@>= 16.8.0 || 17.x.x || ^18.0.0-0", "react@>=16", "react@>=16.8", "react@>=16.8.0", "react@>=16.8.1", "react@>=17": "integrity" "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==" "resolved" "https://registry.npmjs.org/react/-/react-18.2.0.tgz" "version" "18.2.0" @@ -3636,16 +3641,16 @@ "resolved" "https://registry.npmjs.org/ts-easing/-/ts-easing-0.2.0.tgz" "version" "0.2.0" +"tslib@*", "tslib@^2.1.0", "tslib@^2.4.0": + "integrity" "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" + "resolved" "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz" + "version" "2.4.0" + "tslib@^1.8.1": "integrity" "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" "resolved" "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" "version" "1.14.1" -"tslib@^2.1.0", "tslib@^2.4.0": - "integrity" "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" - "resolved" "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz" - "version" "2.4.0" - "tsutils@^3.21.0": "integrity" "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==" "resolved" "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz" @@ -3672,7 +3677,7 @@ "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" "version" "0.20.2" -"typescript@^4.8.4": +"typescript@^4.8.4", "typescript@>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta": "integrity" "sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==" "resolved" "https://registry.npmjs.org/typescript/-/typescript-4.8.4.tgz" "version" "4.8.4"