diff --git a/.oxfmtrc.json b/.oxfmtrc.json new file mode 100644 index 0000000..ec6d335 --- /dev/null +++ b/.oxfmtrc.json @@ -0,0 +1,5 @@ +{ + "$schema": "./node_modules/oxfmt/configuration_schema.json", + "sortImports": {}, + "jsdoc": {} +} diff --git a/.prettierignore b/.prettierignore deleted file mode 100644 index 7f5c090..0000000 --- a/.prettierignore +++ /dev/null @@ -1,46 +0,0 @@ -# custom -dist -examples/**/package-lock.json -*.tgz -CHANGELOG.md -e2e-projects/**/.next - -# os -.DS_Store -._* - -# node -logs -*.log -node_modules - -# yarn -yarn-debug.log* -yarn-error.log* -lerna-debug.log* -.yarn-integrity -yarn.lock - -# npm -npm-debug.log* - -# tests -coverage -.eslintcache -.nyc_output - -# .env -.env -.env.test -.env*.local - -# vscode -.vscode/* -!.vscode/tasks.json -!.vscode/launch.json -*.code-workspace -/test-results/ -/playwright-report/ -/blob-report/ -/playwright/.cache/ -/tests/.storage-state.json diff --git a/.prettierrc b/.prettierrc deleted file mode 100644 index dbea890..0000000 --- a/.prettierrc +++ /dev/null @@ -1,21 +0,0 @@ -{ - "plugins": ["prettier-plugin-jsdoc", "@trivago/prettier-plugin-sort-imports"], - "jsdocSeparateReturnsFromParam": true, - "jsdocSeparateTagGroups": true, - "jsdocSingleLineComment": false, - "tsdoc": true, - "printWidth": 80, - "useTabs": true, - "semi": true, - "singleQuote": false, - "quoteProps": "as-needed", - "jsxSingleQuote": false, - "trailingComma": "all", - "bracketSpacing": true, - "bracketSameLine": false, - "arrowParens": "always", - "requirePragma": false, - "insertPragma": false, - "htmlWhitespaceSensitivity": "css", - "endOfLine": "lf" -} diff --git a/CHANGELOG.md b/CHANGELOG.md index ba0272c..c06de71 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,772 +4,659 @@ All notable changes to this project will be documented in this file. See [standa ## [3.4.0](https://github.com/prismicio/prismic-react/compare/v3.3.0...v3.4.0) (2026-02-21) - ### Features -* **PrismicToolbar:** add `onPreviewUpdate` and `onPreviewEnd` props ([#249](https://github.com/prismicio/prismic-react/issues/249)) ([af5bd80](https://github.com/prismicio/prismic-react/commit/af5bd80a9ca023f444075f5dd57b33def1e01f58)) +- **PrismicToolbar:** add `onPreviewUpdate` and `onPreviewEnd` props ([#249](https://github.com/prismicio/prismic-react/issues/249)) ([af5bd80](https://github.com/prismicio/prismic-react/commit/af5bd80a9ca023f444075f5dd57b33def1e01f58)) ## [3.3.0](https://github.com/prismicio/prismic-react/compare/v3.2.2...v3.3.0) (2026-01-14) - ### Features -* rename `JSXMapSerializer` to `RichTextComponents` ([#241](https://github.com/prismicio/prismic-react/issues/241)) ([f7485e5](https://github.com/prismicio/prismic-react/commit/f7485e57f1bb4d9e65b3042e3665277a9974776c)) +- rename `JSXMapSerializer` to `RichTextComponents` ([#241](https://github.com/prismicio/prismic-react/issues/241)) ([f7485e5](https://github.com/prismicio/prismic-react/commit/f7485e57f1bb4d9e65b3042e3665277a9974776c)) ### [3.2.2](https://github.com/prismicio/prismic-react/compare/v3.2.1...v3.2.2) (2025-10-14) - ### Documentation -* improve TSDoc comments across codebase ([#233](https://github.com/prismicio/prismic-react/issues/233)) ([f060db8](https://github.com/prismicio/prismic-react/commit/f060db89ccea65162670a5397839d62124ebf207)) +- improve TSDoc comments across codebase ([#233](https://github.com/prismicio/prismic-react/issues/233)) ([f060db8](https://github.com/prismicio/prismic-react/commit/f060db89ccea65162670a5397839d62124ebf207)) ### [3.2.1](https://github.com/prismicio/prismic-react/compare/v3.2.0...v3.2.1) (2025-04-14) - ### Bug Fixes -* **PrismicTable:** use React 18 and 19 compatible types ([#228](https://github.com/prismicio/prismic-react/issues/228)) ([25eed98](https://github.com/prismicio/prismic-react/commit/25eed9813c8157cc9a157f7ab6b5a58f8d22d866)) - +- **PrismicTable:** use React 18 and 19 compatible types ([#228](https://github.com/prismicio/prismic-react/issues/228)) ([25eed98](https://github.com/prismicio/prismic-react/commit/25eed9813c8157cc9a157f7ab6b5a58f8d22d866)) ### Documentation -* update contributing guide ([#229](https://github.com/prismicio/prismic-react/issues/229)) ([29b0b76](https://github.com/prismicio/prismic-react/commit/29b0b76565fbfe3a8f39896475fe05f69ea09705)) +- update contributing guide ([#229](https://github.com/prismicio/prismic-react/issues/229)) ([29b0b76](https://github.com/prismicio/prismic-react/commit/29b0b76565fbfe3a8f39896475fe05f69ea09705)) ### [3.2.1-alpha.0](https://github.com/prismicio/prismic-react/compare/v3.2.0...v3.2.1-alpha.0) (2025-04-09) - ### Bug Fixes -* **PrismicTable:** use React 18 and 19 compatible types ([accb41f](https://github.com/prismicio/prismic-react/commit/accb41f1b5e2bc2bcb8cd6635693d994aafbf662)) -* use `FC` ([892e66d](https://github.com/prismicio/prismic-react/commit/892e66dc09dbf779e0ddfc3d7a3e36127c828540)) - +- **PrismicTable:** use React 18 and 19 compatible types ([accb41f](https://github.com/prismicio/prismic-react/commit/accb41f1b5e2bc2bcb8cd6635693d994aafbf662)) +- use `FC` ([892e66d](https://github.com/prismicio/prismic-react/commit/892e66dc09dbf779e0ddfc3d7a3e36127c828540)) ### Chore -* remove `--release-as` from `release:alpha` scripts ([c435240](https://github.com/prismicio/prismic-react/commit/c4352401c96ba1dc408e6058580d5029fa9902b6)) +- remove `--release-as` from `release:alpha` scripts ([c435240](https://github.com/prismicio/prismic-react/commit/c4352401c96ba1dc408e6058580d5029fa9902b6)) ## [3.2.0](https://github.com/prismicio/prismic-react/compare/v3.1.0...v3.2.0) (2025-03-19) - ### Features -* support key for table field content ([#222](https://github.com/prismicio/prismic-react/issues/222)) ([8cf8fe2](https://github.com/prismicio/prismic-react/commit/8cf8fe2a95a2154518d2e10562f11da7673203e2)) - +- support key for table field content ([#222](https://github.com/prismicio/prismic-react/issues/222)) ([8cf8fe2](https://github.com/prismicio/prismic-react/commit/8cf8fe2a95a2154518d2e10562f11da7673203e2)) ### Chore -* add e2e tests to test script ([941d656](https://github.com/prismicio/prismic-react/commit/941d6566759abb7376b6c0c6fda9512407535994)) +- add e2e tests to test script ([941d656](https://github.com/prismicio/prismic-react/commit/941d6566759abb7376b6c0c6fda9512407535994)) ## [3.1.0](https://github.com/prismicio/prismic-react/compare/v3.0.0...v3.1.0) (2025-02-28) - ### Features -* add PrismicTable component ([#219](https://github.com/prismicio/prismic-react/issues/219)) ([2ff34fb](https://github.com/prismicio/prismic-react/commit/2ff34fb259cfaf5ed9ddf344e4c8d58334d2364c)) +- add PrismicTable component ([#219](https://github.com/prismicio/prismic-react/issues/219)) ([2ff34fb](https://github.com/prismicio/prismic-react/commit/2ff34fb259cfaf5ed9ddf344e4c8d58334d2364c)) ## [3.0.0](https://github.com/prismicio/prismic-react/compare/v2.9.2...v3.0.0) (2025-01-29) - ### ⚠ BREAKING CHANGES -* v3 (#214) +- v3 (#214) ### Features -* v3 ([#214](https://github.com/prismicio/prismic-react/issues/214)) ([30df4e6](https://github.com/prismicio/prismic-react/commit/30df4e67d2fb1c02f2722d8ecb943c3250d5a690)) +- v3 ([#214](https://github.com/prismicio/prismic-react/issues/214)) ([30df4e6](https://github.com/prismicio/prismic-react/commit/30df4e67d2fb1c02f2722d8ecb943c3250d5a690)) ### [2.9.2](https://github.com/prismicio/prismic-react/compare/v2.9.1...v2.9.2) (2025-01-29) - ### Bug Fixes -* use React 18 and 19 compatible types ([#217](https://github.com/prismicio/prismic-react/issues/217)) ([5c3bc34](https://github.com/prismicio/prismic-react/commit/5c3bc344f1e315f31ff59a62bc7c1144cb955d45)) +- use React 18 and 19 compatible types ([#217](https://github.com/prismicio/prismic-react/issues/217)) ([5c3bc34](https://github.com/prismicio/prismic-react/commit/5c3bc344f1e315f31ff59a62bc7c1144cb955d45)) ### [2.9.1](https://github.com/prismicio/prismic-react/compare/v2.9.0...v2.9.1) (2024-10-30) - ### Bug Fixes -* **helpers:** add missing `dir` attribute for right-to-left languages ([#211](https://github.com/prismicio/prismic-react/issues/211)) ([b5139ec](https://github.com/prismicio/prismic-react/commit/b5139ec33ef520832064a81e0125ec09869d1f4f)) +- **helpers:** add missing `dir` attribute for right-to-left languages ([#211](https://github.com/prismicio/prismic-react/issues/211)) ([b5139ec](https://github.com/prismicio/prismic-react/commit/b5139ec33ef520832064a81e0125ec09869d1f4f)) ## [2.9.0](https://github.com/prismicio/prismic-react/compare/v2.9.0-alpha.0...v2.9.0) (2024-09-27) ## [2.9.0-alpha.0](https://github.com/prismicio/prismic-react/compare/v2.7.4...v2.9.0-alpha.0) (2024-09-10) - ### Features -* support link text ([aeeedcd](https://github.com/prismicio/prismic-react/commit/aeeedcd70058a73f1a00da0d12f2a555ab5d5cf0)) -* support React 19 ([c06d5c1](https://github.com/prismicio/prismic-react/commit/c06d5c13a9313efc5dda0c98f714803789b48bf8)) - +- support link text ([aeeedcd](https://github.com/prismicio/prismic-react/commit/aeeedcd70058a73f1a00da0d12f2a555ab5d5cf0)) +- support React 19 ([c06d5c1](https://github.com/prismicio/prismic-react/commit/c06d5c13a9313efc5dda0c98f714803789b48bf8)) ### Chore -* **release:** 2.8.0 ([2f15c25](https://github.com/prismicio/prismic-react/commit/2f15c2592d41672e2b76921b3ebeebfb1c4617f0)) +- **release:** 2.8.0 ([2f15c25](https://github.com/prismicio/prismic-react/commit/2f15c2592d41672e2b76921b3ebeebfb1c4617f0)) ## [2.8.0](https://github.com/prismicio/prismic-react/compare/v2.7.4...v2.8.0) (2024-05-30) - ### Features -* support React 19 ([c06d5c1](https://github.com/prismicio/prismic-react/commit/c06d5c13a9313efc5dda0c98f714803789b48bf8)) +- support React 19 ([c06d5c1](https://github.com/prismicio/prismic-react/commit/c06d5c13a9313efc5dda0c98f714803789b48bf8)) ### [2.7.4](https://github.com/prismicio/prismic-react/compare/v2.7.3...v2.7.4) (2024-03-27) - ### Bug Fixes -* `` compat with Slice Mapper ([#202](https://github.com/prismicio/prismic-react/issues/202)) ([0fd4313](https://github.com/prismicio/prismic-react/commit/0fd43134b4845a36e240e6438fea8ea84025e7dd)) +- `` compat with Slice Mapper ([#202](https://github.com/prismicio/prismic-react/issues/202)) ([0fd4313](https://github.com/prismicio/prismic-react/commit/0fd43134b4845a36e240e6438fea8ea84025e7dd)) ### [2.7.3](https://github.com/prismicio/prismic-react/compare/v2.7.2...v2.7.3) (2023-09-18) - ### Bug Fixes -* resolve TypeScript build error in projects using `--isolatedModules` ([c3628d5](https://github.com/prismicio/prismic-react/commit/c3628d55278dc17b8e0938a679d98704b9ac2a1e)) +- resolve TypeScript build error in projects using `--isolatedModules` ([c3628d5](https://github.com/prismicio/prismic-react/commit/c3628d55278dc17b8e0938a679d98704b9ac2a1e)) ### [2.7.2](https://github.com/prismicio/prismic-react/compare/v2.7.1...v2.7.2) (2023-08-31) - ### Bug Fixes -* **`usePrismicClient()`:** accept a type parameter to define which documents are supported by the client (e.g. `Content.AllDocumentTypes`) ([#197](https://github.com/prismicio/prismic-react/issues/197)) ([b16e968](https://github.com/prismicio/prismic-react/commit/b16e9681781bbbcb4afcf5c268b7ceddd1cf7e7f)) +- **`usePrismicClient()`:** accept a type parameter to define which documents are supported by the client (e.g. `Content.AllDocumentTypes`) ([#197](https://github.com/prismicio/prismic-react/issues/197)) ([b16e968](https://github.com/prismicio/prismic-react/commit/b16e9681781bbbcb4afcf5c268b7ceddd1cf7e7f)) ### [2.7.1](https://github.com/prismicio/prismic-react/compare/v2.7.0...v2.7.1) (2023-06-16) - ### Bug Fixes -* **PrismicImage:** allow removing Imgix params in React Server Components using `null` ([#188](https://github.com/prismicio/prismic-react/issues/188)) ([2b17327](https://github.com/prismicio/prismic-react/commit/2b173279539992574b5ef85a72d02fe3f0b601fa)) +- **PrismicImage:** allow removing Imgix params in React Server Components using `null` ([#188](https://github.com/prismicio/prismic-react/issues/188)) ([2b17327](https://github.com/prismicio/prismic-react/commit/2b173279539992574b5ef85a72d02fe3f0b601fa)) ## [2.7.0](https://github.com/prismicio/prismic-react/compare/v2.6.2...v2.7.0) (2023-06-13) - ### Features -* **SliceZone:** add support for mapped Slice Zones created with `@prismicio/client`'s `unstable_mapSliceZone()` ([#185](https://github.com/prismicio/prismic-react/issues/185)) ([c1e469d](https://github.com/prismicio/prismic-react/commit/c1e469d7298b3461b6d18e4dffde6f9ee970b5d1)) - +- **SliceZone:** add support for mapped Slice Zones created with `@prismicio/client`'s `unstable_mapSliceZone()` ([#185](https://github.com/prismicio/prismic-react/issues/185)) ([c1e469d](https://github.com/prismicio/prismic-react/commit/c1e469d7298b3461b6d18e4dffde6f9ee970b5d1)) ### Bug Fixes -* replace `@prismicio/types` usage with `@prismicio/client` v7 ([#186](https://github.com/prismicio/prismic-react/issues/186)) ([34649e2](https://github.com/prismicio/prismic-react/commit/34649e20731ac111b527391f11e06b20dc1d410b)) - +- replace `@prismicio/types` usage with `@prismicio/client` v7 ([#186](https://github.com/prismicio/prismic-react/issues/186)) ([34649e2](https://github.com/prismicio/prismic-react/commit/34649e20731ac111b527391f11e06b20dc1d410b)) ### Chore -* **deps:** update `@prismicio/mock` ([f30c971](https://github.com/prismicio/prismic-react/commit/f30c97187017ad5715fcfc58cb328a40bfcf912b)) +- **deps:** update `@prismicio/mock` ([f30c971](https://github.com/prismicio/prismic-react/commit/f30c97187017ad5715fcfc58cb328a40bfcf912b)) ### [2.6.2](https://github.com/prismicio/prismic-react/compare/v2.6.1...v2.6.2) (2023-05-22) - ### Bug Fixes -* properly resolve types when using TypeScript's latest module resolution strategy ([#182](https://github.com/prismicio/prismic-react/issues/182)) ([27332f5](https://github.com/prismicio/prismic-react/commit/27332f571ec660f6b9aed8ff54739f5581bc64a7)) +- properly resolve types when using TypeScript's latest module resolution strategy ([#182](https://github.com/prismicio/prismic-react/issues/182)) ([27332f5](https://github.com/prismicio/prismic-react/commit/27332f571ec660f6b9aed8ff54739f5581bc64a7)) ### [2.6.1](https://github.com/prismicio/prismic-react/compare/v2.6.0...v2.6.1) (2023-05-09) - ### Bug Fixes -* **SliceZone:** restore `resolver` prop ([#181](https://github.com/prismicio/prismic-react/issues/181)) ([e3604d9](https://github.com/prismicio/prismic-react/commit/e3604d98b85fcd9ea0dd7e208ed305868d6a8fdd)) -* warn when passing `className` to `` or `` ([#179](https://github.com/prismicio/prismic-react/issues/179)) ([aac1cc7](https://github.com/prismicio/prismic-react/commit/aac1cc76d586ddf971a903e8b1e5c066a370ebb7)) - +- **SliceZone:** restore `resolver` prop ([#181](https://github.com/prismicio/prismic-react/issues/181)) ([e3604d9](https://github.com/prismicio/prismic-react/commit/e3604d98b85fcd9ea0dd7e208ed305868d6a8fdd)) +- warn when passing `className` to `` or `` ([#179](https://github.com/prismicio/prismic-react/issues/179)) ([aac1cc7](https://github.com/prismicio/prismic-react/commit/aac1cc76d586ddf971a903e8b1e5c066a370ebb7)) ### Refactor -* remove `__PRODUCTION__` and `invariant`; add tests for `development` environment ([#180](https://github.com/prismicio/prismic-react/issues/180)) ([8f30e6c](https://github.com/prismicio/prismic-react/commit/8f30e6c4d65014757d15cdbae730ff39425c24ba)) +- remove `__PRODUCTION__` and `invariant`; add tests for `development` environment ([#180](https://github.com/prismicio/prismic-react/issues/180)) ([8f30e6c](https://github.com/prismicio/prismic-react/commit/8f30e6c4d65014757d15cdbae730ff39425c24ba)) ## [2.6.0](https://github.com/prismicio/prismic-react/compare/v2.5.2...v2.6.0) (2023-05-06) - ### Features -* support React Server Components ([#178](https://github.com/prismicio/prismic-react/issues/178)) ([ea0ddf8](https://github.com/prismicio/prismic-react/commit/ea0ddf84fdaeefb830bacaf7746a52a614365975)) +- support React Server Components ([#178](https://github.com/prismicio/prismic-react/issues/178)) ([ea0ddf8](https://github.com/prismicio/prismic-react/commit/ea0ddf84fdaeefb830bacaf7746a52a614365975)) ## [2.6.0-alpha.3](https://github.com/prismicio/prismic-react/compare/v2.6.0-alpha.2...v2.6.0-alpha.3) (2023-05-05) - ### Bug Fixes -* mark `@prismicio/client` as an optional peer dependency ([ebfb24d](https://github.com/prismicio/prismic-react/commit/ebfb24d2c5648271e92271cb489211e1d4b440f2)) +- mark `@prismicio/client` as an optional peer dependency ([ebfb24d](https://github.com/prismicio/prismic-react/commit/ebfb24d2c5648271e92271cb489211e1d4b440f2)) ## [2.6.0-alpha.2](https://github.com/prismicio/prismic-react/compare/v2.6.0-alpha.1...v2.6.0-alpha.2) (2023-05-01) - ### Bug Fixes -* bundle `@prismicio/client` v7 to prevent `npm install` issues ([fdff6ce](https://github.com/prismicio/prismic-react/commit/fdff6ce800407ad19e440863a23ffb19afd0137d)) -* update error message for incompatible Server Component APIs ([d558c91](https://github.com/prismicio/prismic-react/commit/d558c918dce0afe3d434d59a01cf6303fbd60dd7)) +- bundle `@prismicio/client` v7 to prevent `npm install` issues ([fdff6ce](https://github.com/prismicio/prismic-react/commit/fdff6ce800407ad19e440863a23ffb19afd0137d)) +- update error message for incompatible Server Component APIs ([d558c91](https://github.com/prismicio/prismic-react/commit/d558c918dce0afe3d434d59a01cf6303fbd60dd7)) ## [2.6.0-alpha.1](https://github.com/prismicio/prismic-react/compare/v2.6.0-alpha.0...v2.6.0-alpha.1) (2023-04-25) - ### Bug Fixes -* support projects using `@prismicio/client` v6 ([3742685](https://github.com/prismicio/prismic-react/commit/3742685837d20ec8f8def8a9f88d1e842046dab7)) +- support projects using `@prismicio/client` v6 ([3742685](https://github.com/prismicio/prismic-react/commit/3742685837d20ec8f8def8a9f88d1e842046dab7)) ## [2.6.0-alpha.0](https://github.com/prismicio/prismic-react/compare/v2.5.2...v2.6.0-alpha.0) (2023-04-24) - ### Features -* add initial React Server Components experiments ([6845370](https://github.com/prismicio/prismic-react/commit/6845370758c6a37f39eaa375d0fd2921b5e8fba7)) -* full RSC compatibility (maybe) ([935cb40](https://github.com/prismicio/prismic-react/commit/935cb40864716ff3047e100f5627ff83a6d737c5)) -* PrismicLink progress ([61020b5](https://github.com/prismicio/prismic-react/commit/61020b5c08193bd0df3b2efdf552d46f68dce85e)) -* remove the ability to configure components via `@prismicio/react/config` ([180802a](https://github.com/prismicio/prismic-react/commit/180802a915b386d90080dcf3135c2e567f51052d)) - +- add initial React Server Components experiments ([6845370](https://github.com/prismicio/prismic-react/commit/6845370758c6a37f39eaa375d0fd2921b5e8fba7)) +- full RSC compatibility (maybe) ([935cb40](https://github.com/prismicio/prismic-react/commit/935cb40864716ff3047e100f5627ff83a6d737c5)) +- PrismicLink progress ([61020b5](https://github.com/prismicio/prismic-react/commit/61020b5c08193bd0df3b2efdf552d46f68dce85e)) +- remove the ability to configure components via `@prismicio/react/config` ([180802a](https://github.com/prismicio/prismic-react/commit/180802a915b386d90080dcf3135c2e567f51052d)) ### Bug Fixes -* **PrismicLink:** types for `rel` and internal/external component props ([ed75718](https://github.com/prismicio/prismic-react/commit/ed75718de9aff5b59ec4b1f5eadef6ccc21901ce)) -* remove `[@ts-expect-error](https://github.com/ts-expect-error)` ([2b420c0](https://github.com/prismicio/prismic-react/commit/2b420c049a77d7b18d9df45e009e3a3456432d27)) -* type import issue ([fe73dc0](https://github.com/prismicio/prismic-react/commit/fe73dc0f1fd3406e1793506629dea0d74d771c75)) - +- **PrismicLink:** types for `rel` and internal/external component props ([ed75718](https://github.com/prismicio/prismic-react/commit/ed75718de9aff5b59ec4b1f5eadef6ccc21901ce)) +- remove `[@ts-expect-error](https://github.com/ts-expect-error)` ([2b420c0](https://github.com/prismicio/prismic-react/commit/2b420c049a77d7b18d9df45e009e3a3456432d27)) +- type import issue ([fe73dc0](https://github.com/prismicio/prismic-react/commit/fe73dc0f1fd3406e1793506629dea0d74d771c75)) ### Refactor -* export non-RSC modules from root ([fea9c14](https://github.com/prismicio/prismic-react/commit/fea9c146976cddd8fe8242b807e38fad5d29376f)) - +- export non-RSC modules from root ([fea9c14](https://github.com/prismicio/prismic-react/commit/fea9c146976cddd8fe8242b807e38fad5d29376f)) ### Chore -* **deps:** update all dependencies ([299b701](https://github.com/prismicio/prismic-react/commit/299b701ef5edae426b833e47d04a4b10a68fdaa2)) -* remove reference to `/config` entry ([57c836f](https://github.com/prismicio/prismic-react/commit/57c836fe2179bc0c403ba9c34ea376c0f2b175d0)) -* remove references to `/config` entry ([03d47b3](https://github.com/prismicio/prismic-react/commit/03d47b3ccd39b4a7969a897e097046d8a38faa57)) -* remove unused `jsdom` dependencies ([963d21c](https://github.com/prismicio/prismic-react/commit/963d21cc592148464327e57e27f0ccb967595ba7)) -* update Size Limit config to include all exports ([ffc7e75](https://github.com/prismicio/prismic-react/commit/ffc7e75a9705ad2a601a7429f4d49037900cf4a8)) -* use consistent `package.json` file paths ([e901bc0](https://github.com/prismicio/prismic-react/commit/e901bc0a5ae6ada843f749fd0943b442c7c551ca)) +- **deps:** update all dependencies ([299b701](https://github.com/prismicio/prismic-react/commit/299b701ef5edae426b833e47d04a4b10a68fdaa2)) +- remove reference to `/config` entry ([57c836f](https://github.com/prismicio/prismic-react/commit/57c836fe2179bc0c403ba9c34ea376c0f2b175d0)) +- remove references to `/config` entry ([03d47b3](https://github.com/prismicio/prismic-react/commit/03d47b3ccd39b4a7969a897e097046d8a38faa57)) +- remove unused `jsdom` dependencies ([963d21c](https://github.com/prismicio/prismic-react/commit/963d21cc592148464327e57e27f0ccb967595ba7)) +- update Size Limit config to include all exports ([ffc7e75](https://github.com/prismicio/prismic-react/commit/ffc7e75a9705ad2a601a7429f4d49037900cf4a8)) +- use consistent `package.json` file paths ([e901bc0](https://github.com/prismicio/prismic-react/commit/e901bc0a5ae6ada843f749fd0943b442c7c551ca)) ### [2.5.2](https://github.com/prismicio/prismic-react/compare/v2.5.1...v2.5.2) (2023-02-17) - ### Bug Fixes -* **PrismicLink:** only set `target="_blank"` when "Open in new window" is checked ([#176](https://github.com/prismicio/prismic-react/issues/176)) ([e74b4d6](https://github.com/prismicio/prismic-react/commit/e74b4d6a9c85166feed1caedaeb7d065d10891fb)) +- **PrismicLink:** only set `target="_blank"` when "Open in new window" is checked ([#176](https://github.com/prismicio/prismic-react/issues/176)) ([e74b4d6](https://github.com/prismicio/prismic-react/commit/e74b4d6a9c85166feed1caedaeb7d065d10891fb)) ### [2.5.1](https://github.com/prismicio/prismic-react/compare/v2.5.0...v2.5.1) (2022-12-19) - ### Bug Fixes -* make `@prismicio/types` a regular dependency ([b6caa1f](https://github.com/prismicio/prismic-react/commit/b6caa1f1f78380fdcbcd6dcaf5c538817006dc7c)) - +- make `@prismicio/types` a regular dependency ([b6caa1f](https://github.com/prismicio/prismic-react/commit/b6caa1f1f78380fdcbcd6dcaf5c538817006dc7c)) ### Chore -* **deps:** maintain dependencies ([f8bc7e4](https://github.com/prismicio/prismic-react/commit/f8bc7e4fa7da92ded7fea4d2d89e979f336f0bbe)) -* update infrastructure ([#168](https://github.com/prismicio/prismic-react/issues/168)) ([7768901](https://github.com/prismicio/prismic-react/commit/77689014ec78f6a03b54b9b7193e778a1f13dc10)) +- **deps:** maintain dependencies ([f8bc7e4](https://github.com/prismicio/prismic-react/commit/f8bc7e4fa7da92ded7fea4d2d89e979f336f0bbe)) +- update infrastructure ([#168](https://github.com/prismicio/prismic-react/issues/168)) ([7768901](https://github.com/prismicio/prismic-react/commit/77689014ec78f6a03b54b9b7193e778a1f13dc10)) ## [2.5.0](https://github.com/prismicio/prismic-react/compare/v2.4.4...v2.5.0) (2022-08-23) - ### Features -* use Slice `id` property to key Slices in `` when available ([#162](https://github.com/prismicio/prismic-react/issues/162)) ([dd85581](https://github.com/prismicio/prismic-react/commit/dd85581ce26ebf6b9aefa33791c0278d5a79d0a2)) +- use Slice `id` property to key Slices in `` when available ([#162](https://github.com/prismicio/prismic-react/issues/162)) ([dd85581](https://github.com/prismicio/prismic-react/commit/dd85581ce26ebf6b9aefa33791c0278d5a79d0a2)) ## [2.5.0-alpha.1](https://github.com/prismicio/prismic-react/compare/v2.5.0-alpha.0...v2.5.0-alpha.1) (2022-08-02) - ### Refactor -* slice `slice_id` > `id` ([be245ce](https://github.com/prismicio/prismic-react/commit/be245ceaa0051f2a0616a28fb28ded6c7fe82b09)) +- slice `slice_id` > `id` ([be245ce](https://github.com/prismicio/prismic-react/commit/be245ceaa0051f2a0616a28fb28ded6c7fe82b09)) ## [2.5.0-alpha.0](https://github.com/prismicio/prismic-react/compare/v2.4.3...v2.5.0-alpha.0) (2022-07-28) - ### Features -* support slice id ([d066399](https://github.com/prismicio/prismic-react/commit/d066399a3e94d2e48d53ce14dcca4c71d346e452)) +- support slice id ([d066399](https://github.com/prismicio/prismic-react/commit/d066399a3e94d2e48d53ce14dcca4c71d346e452)) ### [2.4.4](https://github.com/prismicio/prismic-react/compare/v2.4.3...v2.4.4) (2022-07-30) - ### Bug Fixes -* **PrismicLink:** do not warn about missing field properties if the Link field is empty ([#163](https://github.com/prismicio/prismic-react/issues/163)) ([b138472](https://github.com/prismicio/prismic-react/commit/b13847234dc95e3e6ce2c66e91dcce702dcfede6)) +- **PrismicLink:** do not warn about missing field properties if the Link field is empty ([#163](https://github.com/prismicio/prismic-react/issues/163)) ([b138472](https://github.com/prismicio/prismic-react/commit/b13847234dc95e3e6ce2c66e91dcce702dcfede6)) ### [2.4.3](https://github.com/prismicio/prismic-react/compare/v2.4.2...v2.4.3) (2022-07-21) - ### Bug Fixes -* type context, components in SliceZoneProps ([#159](https://github.com/prismicio/prismic-react/issues/159)) ([edb21ec](https://github.com/prismicio/prismic-react/commit/edb21ecdd93e20ac5d64e1080af93b250e935e63)) +- type context, components in SliceZoneProps ([#159](https://github.com/prismicio/prismic-react/issues/159)) ([edb21ec](https://github.com/prismicio/prismic-react/commit/edb21ecdd93e20ac5d64e1080af93b250e935e63)) ### [2.4.2](https://github.com/prismicio/prismic-react/compare/v2.4.1...v2.4.2) (2022-06-09) - ### Bug Fixes -* export `SliceLikeRestV2` and `SliceLikeGraphQL` ([#156](https://github.com/prismicio/prismic-react/issues/156)) ([fcd7a13](https://github.com/prismicio/prismic-react/commit/fcd7a13617697a79507ff85f3d0cc0d18fa17cf2)) -* prefer warning over throwing when `` is given an invalid prop in development ([#157](https://github.com/prismicio/prismic-react/issues/157)) ([4610658](https://github.com/prismicio/prismic-react/commit/46106588de14b2b7f4d04b171a3121bbd3f89a8e)) -* support untyped or partially typed Slices in `` ([#154](https://github.com/prismicio/prismic-react/issues/154)) ([5ca557a](https://github.com/prismicio/prismic-react/commit/5ca557abeffb269ed7a9e56301bdb15bddaecf2c)) +- export `SliceLikeRestV2` and `SliceLikeGraphQL` ([#156](https://github.com/prismicio/prismic-react/issues/156)) ([fcd7a13](https://github.com/prismicio/prismic-react/commit/fcd7a13617697a79507ff85f3d0cc0d18fa17cf2)) +- prefer warning over throwing when `` is given an invalid prop in development ([#157](https://github.com/prismicio/prismic-react/issues/157)) ([4610658](https://github.com/prismicio/prismic-react/commit/46106588de14b2b7f4d04b171a3121bbd3f89a8e)) +- support untyped or partially typed Slices in `` ([#154](https://github.com/prismicio/prismic-react/issues/154)) ([5ca557a](https://github.com/prismicio/prismic-react/commit/5ca557abeffb269ed7a9e56301bdb15bddaecf2c)) ### [2.4.1](https://github.com/prismicio/prismic-react/compare/v2.4.0...v2.4.1) (2022-05-26) - ### Bug Fixes -* throw a helpful error if `` receives an incorrect field value ([#152](https://github.com/prismicio/prismic-react/issues/152)) ([2e4bab0](https://github.com/prismicio/prismic-react/commit/2e4bab0f81746ee4378c6caa33f71f82f3b3753b)) -* throw when ``'s `field` or `document` prop value is missing required properties ([#153](https://github.com/prismicio/prismic-react/issues/153)) ([349529e](https://github.com/prismicio/prismic-react/commit/349529e2fcd464ccfe1f050f18ad1e9aebed571a)) +- throw a helpful error if `` receives an incorrect field value ([#152](https://github.com/prismicio/prismic-react/issues/152)) ([2e4bab0](https://github.com/prismicio/prismic-react/commit/2e4bab0f81746ee4378c6caa33f71f82f3b3753b)) +- throw when ``'s `field` or `document` prop value is missing required properties ([#153](https://github.com/prismicio/prismic-react/issues/153)) ([349529e](https://github.com/prismicio/prismic-react/commit/349529e2fcd464ccfe1f050f18ad1e9aebed571a)) ## [2.4.0](https://github.com/prismicio/prismic-react/compare/v2.3.0...v2.4.0) (2022-05-25) - ### Features -* **PrismicLink:** automatically set `target="_blank" rel="noopener noreferrer"` when `href` is external ([#147](https://github.com/prismicio/prismic-react/issues/147)) ([add20dd](https://github.com/prismicio/prismic-react/commit/add20dde8c3fd1a3588e8d3df4db0da160fd1bf9)) - +- **PrismicLink:** automatically set `target="_blank" rel="noopener noreferrer"` when `href` is external ([#147](https://github.com/prismicio/prismic-react/issues/147)) ([add20dd](https://github.com/prismicio/prismic-react/commit/add20dde8c3fd1a3588e8d3df4db0da160fd1bf9)) ### Bug Fixes -* do not execute ``'s script during happy-dom tests ([72aaa1e](https://github.com/prismicio/prismic-react/commit/72aaa1ec0537086b2b3f0cc9b079a02992cb76a0)) -* provide more detailed warning message for ``'s `alt`, `fallbackAlt`, `width`, and `pixelDensities` props ([4eaf529](https://github.com/prismicio/prismic-react/commit/4eaf5297a491ee7ca315aed8df2740906b96dbd2)) - +- do not execute ``'s script during happy-dom tests ([72aaa1e](https://github.com/prismicio/prismic-react/commit/72aaa1ec0537086b2b3f0cc9b079a02992cb76a0)) +- provide more detailed warning message for ``'s `alt`, `fallbackAlt`, `width`, and `pixelDensities` props ([4eaf529](https://github.com/prismicio/prismic-react/commit/4eaf5297a491ee7ca315aed8df2740906b96dbd2)) ### Documentation -* fix typo ([821e629](https://github.com/prismicio/prismic-react/commit/821e6296d3bdf49f577d256b0198468aed8088ca)) -* fix typo ([92303a0](https://github.com/prismicio/prismic-react/commit/92303a04bbd37dc4798e4771f29504ece6c17904)) - +- fix typo ([821e629](https://github.com/prismicio/prismic-react/commit/821e6296d3bdf49f577d256b0198468aed8088ca)) +- fix typo ([92303a0](https://github.com/prismicio/prismic-react/commit/92303a04bbd37dc4798e4771f29504ece6c17904)) ### Chore -* fix Happy DOM spelling [skip ci] ([9c18562](https://github.com/prismicio/prismic-react/commit/9c18562a8f2e17325f39cc06355eca4cf5b5e66b)) +- fix Happy DOM spelling [skip ci] ([9c18562](https://github.com/prismicio/prismic-react/commit/9c18562a8f2e17325f39cc06355eca4cf5b5e66b)) ## [2.3.0](https://github.com/prismicio/prismic-react/compare/v2.2.0...v2.3.0) (2022-04-15) - ### Features -* add `` ([#140](https://github.com/prismicio/prismic-react/issues/140)) ([7a93f69](https://github.com/prismicio/prismic-react/commit/7a93f69604ee423477d572ef11b8f59e39f9ba6d)) - +- add `` ([#140](https://github.com/prismicio/prismic-react/issues/140)) ([7a93f69](https://github.com/prismicio/prismic-react/commit/7a93f69604ee423477d572ef11b8f59e39f9ba6d)) ### Bug Fixes -* restore default `React.AnchorHTMLAttributes` props on `` ([#146](https://github.com/prismicio/prismic-react/issues/146)) ([e82a394](https://github.com/prismicio/prismic-react/commit/e82a394879b7ad1bc174f226e40d106ddb68c274)) +- restore default `React.AnchorHTMLAttributes` props on `` ([#146](https://github.com/prismicio/prismic-react/issues/146)) ([e82a394](https://github.com/prismicio/prismic-react/commit/e82a394879b7ad1bc174f226e40d106ddb68c274)) ## [2.2.0](https://github.com/prismicio/prismic-react/compare/v2.1.2...v2.2.0) (2022-03-31) - ### Features -* add `fallback` prop to `` which is rendered when given an empty field ([#135](https://github.com/prismicio/prismic-react/issues/135)) ([1c6eacb](https://github.com/prismicio/prismic-react/commit/1c6eacb889e9bfea6d379f7027bcf5e9f14abbf6)) -* support Prismic's GraphQL API in `` ([#141](https://github.com/prismicio/prismic-react/issues/141)) ([3f774db](https://github.com/prismicio/prismic-react/commit/3f774db4fdca766ec01742d27d63353ae3a4f86c)) - +- add `fallback` prop to `` which is rendered when given an empty field ([#135](https://github.com/prismicio/prismic-react/issues/135)) ([1c6eacb](https://github.com/prismicio/prismic-react/commit/1c6eacb889e9bfea6d379f7027bcf5e9f14abbf6)) +- support Prismic's GraphQL API in `` ([#141](https://github.com/prismicio/prismic-react/issues/141)) ([3f774db](https://github.com/prismicio/prismic-react/commit/3f774db4fdca766ec01742d27d63353ae3a4f86c)) ### Bug Fixes -* correct types for non-string Link Resolver functions ([#142](https://github.com/prismicio/prismic-react/issues/142)) ([50ed2f0](https://github.com/prismicio/prismic-react/commit/50ed2f03b359ddaff87444a9f2b280c00cb0e8d3)) -* support React 18 ([#138](https://github.com/prismicio/prismic-react/issues/138)) ([3c09fc3](https://github.com/prismicio/prismic-react/commit/3c09fc368716632d800908173a60e91b60eb0da7)) - +- correct types for non-string Link Resolver functions ([#142](https://github.com/prismicio/prismic-react/issues/142)) ([50ed2f0](https://github.com/prismicio/prismic-react/commit/50ed2f03b359ddaff87444a9f2b280c00cb0e8d3)) +- support React 18 ([#138](https://github.com/prismicio/prismic-react/issues/138)) ([3c09fc3](https://github.com/prismicio/prismic-react/commit/3c09fc368716632d800908173a60e91b60eb0da7)) ### Chore -* **deps:** update dependencies ([192bdf6](https://github.com/prismicio/prismic-react/commit/192bdf6e769022fdcca793b3b1d5274481c1e980)) +- **deps:** update dependencies ([192bdf6](https://github.com/prismicio/prismic-react/commit/192bdf6e769022fdcca793b3b1d5274481c1e980)) ### [2.1.2](https://github.com/prismicio/prismic-react/compare/v2.1.1...v2.1.2) (2022-03-09) - ### Bug Fixes -* better support for custom `` components using `forwardRef()` ([#132](https://github.com/prismicio/prismic-react/issues/132)) ([685b270](https://github.com/prismicio/prismic-react/commit/685b2706aa0d6b183cbfe80abc2bf56d01d44e28)) - +- better support for custom `` components using `forwardRef()` ([#132](https://github.com/prismicio/prismic-react/issues/132)) ([685b270](https://github.com/prismicio/prismic-react/commit/685b2706aa0d6b183cbfe80abc2bf56d01d44e28)) ### Documentation -* fix typo in `` TSDoc ([#133](https://github.com/prismicio/prismic-react/issues/133)) ([797f7c0](https://github.com/prismicio/prismic-react/commit/797f7c094cc6ee540d73b40df56413fd5105dd9b)) +- fix typo in `` TSDoc ([#133](https://github.com/prismicio/prismic-react/issues/133)) ([797f7c0](https://github.com/prismicio/prismic-react/commit/797f7c094cc6ee540d73b40df56413fd5105dd9b)) ### [2.1.1](https://github.com/prismicio/prismic-react/compare/v2.1.0...v2.1.1) (2022-03-03) - ### Bug Fixes -* detect empty Rich Text fields using `@prismicio/helpers`'s `isFilled.richText()` ([#130](https://github.com/prismicio/prismic-react/issues/130)) ([fc0d68c](https://github.com/prismicio/prismic-react/commit/fc0d68c0192892e2bcfb6dbe4ad045f3e58ff6aa)) -* forward refs to `` components ([#131](https://github.com/prismicio/prismic-react/issues/131)) ([d7f75ed](https://github.com/prismicio/prismic-react/commit/d7f75ed4c7a4573ad91e4fb27f44f2fea1dd82fb)) +- detect empty Rich Text fields using `@prismicio/helpers`'s `isFilled.richText()` ([#130](https://github.com/prismicio/prismic-react/issues/130)) ([fc0d68c](https://github.com/prismicio/prismic-react/commit/fc0d68c0192892e2bcfb6dbe4ad045f3e58ff6aa)) +- forward refs to `` components ([#131](https://github.com/prismicio/prismic-react/issues/131)) ([d7f75ed](https://github.com/prismicio/prismic-react/commit/d7f75ed4c7a4573ad91e4fb27f44f2fea1dd82fb)) ## [2.1.0](https://github.com/prismicio/prismic-react/compare/v2.0.6...v2.1.0) (2022-02-28) - ### Features -* provide a fallback string to `` ([#126](https://github.com/prismicio/prismic-react/issues/126)) ([e2fb4fc](https://github.com/prismicio/prismic-react/commit/e2fb4fcbdf817ac67e00fbe39acb5b038dc585d5)) - +- provide a fallback string to `` ([#126](https://github.com/prismicio/prismic-react/issues/126)) ([e2fb4fc](https://github.com/prismicio/prismic-react/commit/e2fb4fcbdf817ac67e00fbe39acb5b038dc585d5)) ### Chore -* **deps:** update dependencies ([f426bb6](https://github.com/prismicio/prismic-react/commit/f426bb6064f99e75d1dee190f3ab1a4b59ce80da)) -* update license ([ce32036](https://github.com/prismicio/prismic-react/commit/ce320369646152cd3e9428d31d6b9d62d16e2e10)) - +- **deps:** update dependencies ([f426bb6](https://github.com/prismicio/prismic-react/commit/f426bb6064f99e75d1dee190f3ab1a4b59ce80da)) +- update license ([ce32036](https://github.com/prismicio/prismic-react/commit/ce320369646152cd3e9428d31d6b9d62d16e2e10)) ### Documentation -* add with-typescript example ([#127](https://github.com/prismicio/prismic-react/issues/127)) ([b95fe41](https://github.com/prismicio/prismic-react/commit/b95fe4113439b5d701964f591c0603c064377208)) +- add with-typescript example ([#127](https://github.com/prismicio/prismic-react/issues/127)) ([b95fe41](https://github.com/prismicio/prismic-react/commit/b95fe4113439b5d701964f591c0603c064377208)) ### [2.0.6](https://github.com/prismicio/prismic-react/compare/v2.0.5...v2.0.6) (2022-02-05) - ### Bug Fixes -* remove ESM `package.json` declaration (fixes `'Element' is not exported from '@prismicio/richtext'`) ([#122](https://github.com/prismicio/prismic-react/issues/122)) ([6fab9d5](https://github.com/prismicio/prismic-react/commit/6fab9d535d6c04a52c5c83a1f5d67cb4e7fef950)) - +- remove ESM `package.json` declaration (fixes `'Element' is not exported from '@prismicio/richtext'`) ([#122](https://github.com/prismicio/prismic-react/issues/122)) ([6fab9d5](https://github.com/prismicio/prismic-react/commit/6fab9d535d6c04a52c5c83a1f5d67cb4e7fef950)) ### Refactor -* remove `type-fest` dependency ([#121](https://github.com/prismicio/prismic-react/issues/121)) ([27c502f](https://github.com/prismicio/prismic-react/commit/27c502f62cb7e10386c7ab9a289117f58d4b1879)) +- remove `type-fest` dependency ([#121](https://github.com/prismicio/prismic-react/issues/121)) ([27c502f](https://github.com/prismicio/prismic-react/commit/27c502f62cb7e10386c7ab9a289117f58d4b1879)) ### [2.0.5](https://github.com/prismicio/prismic-react/compare/v2.0.4...v2.0.5) (2022-01-28) - ### Chore -* ensure an entry file is available for React Native ([f65ae5d](https://github.com/prismicio/prismic-react/commit/f65ae5d487cc4ec4a246b3d871c4f2a9b66d6cc9)) +- ensure an entry file is available for React Native ([f65ae5d](https://github.com/prismicio/prismic-react/commit/f65ae5d487cc4ec4a246b3d871c4f2a9b66d6cc9)) ### [2.0.4](https://github.com/prismicio/prismic-react/compare/v2.0.3...v2.0.4) (2022-01-28) - ### Bug Fixes -* automatically assign keys to custom `` components ([#118](https://github.com/prismicio/prismic-react/issues/118)) ([9e609f6](https://github.com/prismicio/prismic-react/commit/9e609f6c6815ddbd903c488c2596af672e47fb5a)) - +- automatically assign keys to custom `` components ([#118](https://github.com/prismicio/prismic-react/issues/118)) ([9e609f6](https://github.com/prismicio/prismic-react/commit/9e609f6c6815ddbd903c488c2596af672e47fb5a)) ### Chore -* add Size Limit support ([473d3fe](https://github.com/prismicio/prismic-react/commit/473d3fea7028990061bc1c814a548870423e85cb)) -* add Size Limit to CI workflow ([a7a34d0](https://github.com/prismicio/prismic-react/commit/a7a34d03d927dae35932af884f49f287efc41af6)) -* **deps:** update dependencies ([3a902c6](https://github.com/prismicio/prismic-react/commit/3a902c64666aabc0edfe2c3edf86d1d5ea9df775)) -* support React Native's Metro bundler ([9659a5a](https://github.com/prismicio/prismic-react/commit/9659a5a94c9b6f78e3205ef3a02ab70200eb35f6)) +- add Size Limit support ([473d3fe](https://github.com/prismicio/prismic-react/commit/473d3fea7028990061bc1c814a548870423e85cb)) +- add Size Limit to CI workflow ([a7a34d0](https://github.com/prismicio/prismic-react/commit/a7a34d03d927dae35932af884f49f287efc41af6)) +- **deps:** update dependencies ([3a902c6](https://github.com/prismicio/prismic-react/commit/3a902c64666aabc0edfe2c3edf86d1d5ea9df775)) +- support React Native's Metro bundler ([9659a5a](https://github.com/prismicio/prismic-react/commit/9659a5a94c9b6f78e3205ef3a02ab70200eb35f6)) ### [2.0.3](https://github.com/prismicio/prismic-react/compare/v2.0.2...v2.0.3) (2022-01-14) - ### Bug Fixes -* correct pascalCase type ([cf66443](https://github.com/prismicio/prismic-react/commit/cf66443b6048933d656eb8c4a1598a9f01659e91)) -* resolve lint error in PrismicToolbar ([d0a366a](https://github.com/prismicio/prismic-react/commit/d0a366af87ea1a455f8fb298984d0e2ebb6c0c0e)) -* use .mjs module exports ([c485fc1](https://github.com/prismicio/prismic-react/commit/c485fc18570b4ef3dfcd2431782aa728ac9850c4)) -* use pascalCase Slice type for `` resolver ([#109](https://github.com/prismicio/prismic-react/issues/109)) ([a2f2c23](https://github.com/prismicio/prismic-react/commit/a2f2c232db304f2ff0b008f9c3c4fc7d2fe5e7ef)) - +- correct pascalCase type ([cf66443](https://github.com/prismicio/prismic-react/commit/cf66443b6048933d656eb8c4a1598a9f01659e91)) +- resolve lint error in PrismicToolbar ([d0a366a](https://github.com/prismicio/prismic-react/commit/d0a366af87ea1a455f8fb298984d0e2ebb6c0c0e)) +- use .mjs module exports ([c485fc1](https://github.com/prismicio/prismic-react/commit/c485fc18570b4ef3dfcd2431782aa728ac9850c4)) +- use pascalCase Slice type for `` resolver ([#109](https://github.com/prismicio/prismic-react/issues/109)) ([a2f2c23](https://github.com/prismicio/prismic-react/commit/a2f2c232db304f2ff0b008f9c3c4fc7d2fe5e7ef)) ### Chore -* **deps:** update `@prismicio/client` dev dependency ([382a2a9](https://github.com/prismicio/prismic-react/commit/382a2a93f3b9f1f5d836785e473f4eb2345ac444)) -* **deps:** update dependencies ([f1bb443](https://github.com/prismicio/prismic-react/commit/f1bb443f8f7b5f652239368f830f4b9798097c4f)) -* lint .tsx files ([ad91234](https://github.com/prismicio/prismic-react/commit/ad91234e8fb4f51dd3c53e43b073cec7c70cf31c)) +- **deps:** update `@prismicio/client` dev dependency ([382a2a9](https://github.com/prismicio/prismic-react/commit/382a2a93f3b9f1f5d836785e473f4eb2345ac444)) +- **deps:** update dependencies ([f1bb443](https://github.com/prismicio/prismic-react/commit/f1bb443f8f7b5f652239368f830f4b9798097c4f)) +- lint .tsx files ([ad91234](https://github.com/prismicio/prismic-react/commit/ad91234e8fb4f51dd3c53e43b073cec7c70cf31c)) ### [2.0.2](https://github.com/prismicio/prismic-react/compare/v2.0.1...v2.0.2) (2021-12-16) - ### Bug Fixes -* use correct toolbar URL (`new=true`) ([8de749c](https://github.com/prismicio/prismic-react/commit/8de749cde1b06e52f58a0bdef3d39a11b60d21f0)) - +- use correct toolbar URL (`new=true`) ([8de749c](https://github.com/prismicio/prismic-react/commit/8de749cde1b06e52f58a0bdef3d39a11b60d21f0)) ### Chore -* remove incorrect CHANGELOG entry ([60967b8](https://github.com/prismicio/prismic-react/commit/60967b8fbd1be02b92a1e90dcb060bb3d4f47157)) +- remove incorrect CHANGELOG entry ([60967b8](https://github.com/prismicio/prismic-react/commit/60967b8fbd1be02b92a1e90dcb060bb3d4f47157)) ### [2.0.1](https://github.com/prismicio/prismic-react/compare/v1.3.4...v2.0.1) (2021-12-16) - ### Bug Fixes -* compose `` components with `` components ([e2d1af4](https://github.com/prismicio/prismic-react/commit/e2d1af48a10f9c664b6acb2dda7750a2a9cdec8b)) - +- compose `` components with `` components ([e2d1af4](https://github.com/prismicio/prismic-react/commit/e2d1af48a10f9c664b6acb2dda7750a2a9cdec8b)) ### Documentation -* remove `[@beta](https://github.com/beta)` tag from installation command [skip ci] ([0957770](https://github.com/prismicio/prismic-react/commit/0957770d7a14414dfbfee8c10fa26b266ac3f700)) -* update docs link [skip ci] ([8bf355e](https://github.com/prismicio/prismic-react/commit/8bf355e904ed40bcaf00d855483ade8b752b7116)) - +- remove `[@beta](https://github.com/beta)` tag from installation command [skip ci] ([0957770](https://github.com/prismicio/prismic-react/commit/0957770d7a14414dfbfee8c10fa26b266ac3f700)) +- update docs link [skip ci] ([8bf355e](https://github.com/prismicio/prismic-react/commit/8bf355e904ed40bcaf00d855483ade8b752b7116)) ### Chore -* add github issue and pull request templates ([25f2d4f](https://github.com/prismicio/prismic-react/commit/25f2d4f3ef89022f52eac0481cbf37b79b4f0e3b)) -* **deps:** update dependencies ([b3dbec1](https://github.com/prismicio/prismic-react/commit/b3dbec14dab2b8e3d75c76d91177201b63e6d28b)) - +- add github issue and pull request templates ([25f2d4f](https://github.com/prismicio/prismic-react/commit/25f2d4f3ef89022f52eac0481cbf37b79b4f0e3b)) +- **deps:** update dependencies ([b3dbec1](https://github.com/prismicio/prismic-react/commit/b3dbec14dab2b8e3d75c76d91177201b63e6d28b)) ### Refactor -* simplify Rich Text serializer composition ([0904a3e](https://github.com/prismicio/prismic-react/commit/0904a3eefd76e82f934e2c6b1b4cff6728e4c611)) -* use `React.ElementType` over `string | React.ComponentType` ([19094f6](https://github.com/prismicio/prismic-react/commit/19094f62465208bee95051d88321bb808c390a4f)) +- simplify Rich Text serializer composition ([0904a3e](https://github.com/prismicio/prismic-react/commit/0904a3eefd76e82f934e2c6b1b4cff6728e4c611)) +- use `React.ElementType` over `string | React.ComponentType` ([19094f6](https://github.com/prismicio/prismic-react/commit/19094f62465208bee95051d88321bb808c390a4f)) ## [2.0.0](https://github.com/prismicio/prismic-reactjs/compare/v2.0.0-beta.9...v2.0.0) (2021-12-03) ## [2.0.0-beta.9](https://github.com/prismicio/prismic-reactjs/compare/v2.0.0-beta.8...v2.0.0-beta.9) (2021-12-03) - ### Bug Fixes -* cancel client requests on hook cleanup ([2c91305](https://github.com/prismicio/prismic-reactjs/commit/2c91305a6138eca0bd7b4f19645ac4b7b4f717f8)) -* prevent infinite loops in client hooks due to object arguments ([4858113](https://github.com/prismicio/prismic-reactjs/commit/4858113754a78f008b270a1082af711f72c8a3fb)) -* re-run hook on argument changes ([4b2da91](https://github.com/prismicio/prismic-reactjs/commit/4b2da91b4eda73f69ba7999f0d7d1bb144c1e45a)) +- cancel client requests on hook cleanup ([2c91305](https://github.com/prismicio/prismic-reactjs/commit/2c91305a6138eca0bd7b4f19645ac4b7b4f717f8)) +- prevent infinite loops in client hooks due to object arguments ([4858113](https://github.com/prismicio/prismic-reactjs/commit/4858113754a78f008b270a1082af711f72c8a3fb)) +- re-run hook on argument changes ([4b2da91](https://github.com/prismicio/prismic-reactjs/commit/4b2da91b4eda73f69ba7999f0d7d1bb144c1e45a)) ## [2.0.0-beta.8](https://github.com/prismicio/prismic-reactjs/compare/v2.0.0-beta.7...v2.0.0-beta.8) (2021-12-03) - ### Features -* re-export Element from `@prismicio/richtext` ([ae79fd6](https://github.com/prismicio/prismic-reactjs/commit/ae79fd6d09ae7045d96cf6175173f0a29d9a9be9)) - +- re-export Element from `@prismicio/richtext` ([ae79fd6](https://github.com/prismicio/prismic-reactjs/commit/ae79fd6d09ae7045d96cf6175173f0a29d9a9be9)) ### Bug Fixes -* inject Prismic Toolbar only once ([aa14cbd](https://github.com/prismicio/prismic-reactjs/commit/aa14cbd9c7883ee8c9d8760fcbbce1d334c696c4)) -* re-run client hooks on parameter changes ([1fd3dad](https://github.com/prismicio/prismic-reactjs/commit/1fd3dad33336c58b67e533f7d10adf1c05b60f11)) -* restore default link component types ([9d6f366](https://github.com/prismicio/prismic-reactjs/commit/9d6f366bae85ec151e7e5ed2d178e6eda6671a99)) -* use Link Resolver from context in usePrismicPreviewResolver ([ed44fa6](https://github.com/prismicio/prismic-reactjs/commit/ed44fa6609b0ac3525dfe7a173bad0aac03a9229)) - +- inject Prismic Toolbar only once ([aa14cbd](https://github.com/prismicio/prismic-reactjs/commit/aa14cbd9c7883ee8c9d8760fcbbce1d334c696c4)) +- re-run client hooks on parameter changes ([1fd3dad](https://github.com/prismicio/prismic-reactjs/commit/1fd3dad33336c58b67e533f7d10adf1c05b60f11)) +- restore default link component types ([9d6f366](https://github.com/prismicio/prismic-reactjs/commit/9d6f366bae85ec151e7e5ed2d178e6eda6671a99)) +- use Link Resolver from context in usePrismicPreviewResolver ([ed44fa6](https://github.com/prismicio/prismic-reactjs/commit/ed44fa6609b0ac3525dfe7a173bad0aac03a9229)) ### Chore -* **deps:** maintain dependencies ([fc35a26](https://github.com/prismicio/prismic-reactjs/commit/fc35a26008da703b7506b7632dbd92d06b4e6f23)) -* **deps:** update dependencies ([05b9d33](https://github.com/prismicio/prismic-reactjs/commit/05b9d331a5f651b9f41b927968c1e0167ef6655f)) +- **deps:** maintain dependencies ([fc35a26](https://github.com/prismicio/prismic-reactjs/commit/fc35a26008da703b7506b7632dbd92d06b4e6f23)) +- **deps:** update dependencies ([05b9d33](https://github.com/prismicio/prismic-reactjs/commit/05b9d331a5f651b9f41b927968c1e0167ef6655f)) ## [2.0.0-beta.7](https://github.com/prismicio/prismic-reactjs/compare/v2.0.0-beta.6...v2.0.0-beta.7) (2021-11-23) - ### Bug Fixes -* render Slices in the correct order in `` ([#104](https://github.com/prismicio/prismic-reactjs/issues/104)) ([ffc4d4a](https://github.com/prismicio/prismic-reactjs/commit/ffc4d4ad6a4373f827cef400a47c53daea96ff38)) +- render Slices in the correct order in `` ([#104](https://github.com/prismicio/prismic-reactjs/issues/104)) ([ffc4d4a](https://github.com/prismicio/prismic-reactjs/commit/ffc4d4ad6a4373f827cef400a47c53daea96ff38)) ## [2.0.0-beta.6](https://github.com/prismicio/prismic-reactjs/compare/v2.0.0-beta.5...v2.0.0-beta.6) (2021-11-22) - ### Features -* add `resolver` prop to SliceZone for backwards compatibility with `next-slicezone` ([#103](https://github.com/prismicio/prismic-reactjs/issues/103)) ([cfdcfb1](https://github.com/prismicio/prismic-reactjs/commit/cfdcfb1e98367e56e4c61464f6126d4f176636ec)) - +- add `resolver` prop to SliceZone for backwards compatibility with `next-slicezone` ([#103](https://github.com/prismicio/prismic-reactjs/issues/103)) ([cfdcfb1](https://github.com/prismicio/prismic-reactjs/commit/cfdcfb1e98367e56e4c61464f6126d4f176636ec)) ### Chore -* add `jsdocSeparateTagGroups` option ([c0ab73e](https://github.com/prismicio/prismic-reactjs/commit/c0ab73e38834daabd56b791473da13d03fc7f7cf)) -* update ignore files ([68dc008](https://github.com/prismicio/prismic-reactjs/commit/68dc0088a0c444131be5440a7ca1989e0616ed50)) +- add `jsdocSeparateTagGroups` option ([c0ab73e](https://github.com/prismicio/prismic-reactjs/commit/c0ab73e38834daabd56b791473da13d03fc7f7cf)) +- update ignore files ([68dc008](https://github.com/prismicio/prismic-reactjs/commit/68dc0088a0c444131be5440a7ca1989e0616ed50)) ## [2.0.0-beta.5](https://github.com/prismicio/prismic-reactjs/compare/v2.0.0-beta.4...v2.0.0-beta.5) (2021-11-20) - ### Bug Fixes -* identify package as side-effect free ([3e3e009](https://github.com/prismicio/prismic-reactjs/commit/3e3e009eeb4098158981dab0cb7069adeef3c8e7)) - +- identify package as side-effect free ([3e3e009](https://github.com/prismicio/prismic-reactjs/commit/3e3e009eeb4098158981dab0cb7069adeef3c8e7)) ### Refactor -* resolve hook lint warning ([6ff01a8](https://github.com/prismicio/prismic-reactjs/commit/6ff01a826622bf84078d77b8652f5a392b75951b)) +- resolve hook lint warning ([6ff01a8](https://github.com/prismicio/prismic-reactjs/commit/6ff01a826622bf84078d77b8652f5a392b75951b)) ## [2.0.0-beta.4](https://github.com/prismicio/prismic-reactjs/compare/v2.0.0-beta.3...v2.0.0-beta.4) (2021-11-20) - ### Features -* add `usePrismicPreviewResolver` ([4e64de2](https://github.com/prismicio/prismic-reactjs/commit/4e64de2405937d86c77f188f88f9162e1c3ab2df)) - +- add `usePrismicPreviewResolver` ([4e64de2](https://github.com/prismicio/prismic-reactjs/commit/4e64de2405937d86c77f188f88f9162e1c3ab2df)) ### Bug Fixes -* infer type of internal/external Link component ([891140f](https://github.com/prismicio/prismic-reactjs/commit/891140fd328f4beb63b532f1ed8f569d9d24fec2)) -* omit required LinkProps from PrismicLink ([4ea3128](https://github.com/prismicio/prismic-reactjs/commit/4ea3128e6bb8be8996805e315cefc68dc3311c3e)) - +- infer type of internal/external Link component ([891140f](https://github.com/prismicio/prismic-reactjs/commit/891140fd328f4beb63b532f1ed8f569d9d24fec2)) +- omit required LinkProps from PrismicLink ([4ea3128](https://github.com/prismicio/prismic-reactjs/commit/4ea3128e6bb8be8996805e315cefc68dc3311c3e)) ### Refactor -* rename hooks.ts to clientHooks.ts ([28d4a73](https://github.com/prismicio/prismic-reactjs/commit/28d4a737c819809c9812437230451d00d43e97b9)) +- rename hooks.ts to clientHooks.ts ([28d4a73](https://github.com/prismicio/prismic-reactjs/commit/28d4a737c819809c9812437230451d00d43e97b9)) ## [2.0.0-beta.3](https://github.com/prismicio/prismic-reactjs/compare/v2.0.0-beta.2...v2.0.0-beta.3) (2021-11-19) - ### Features -* rename useAllPrismicDocuments to useAllPrismicDocumentsDangerously ([22d63fe](https://github.com/prismicio/prismic-reactjs/commit/22d63fe0866006f02bbf044e27bfdd0fa86a4b39)) -* treat @prismicio/client as an optional peer dependency ([0e0b0b5](https://github.com/prismicio/prismic-reactjs/commit/0e0b0b5e10a28774629aaa6e6811e872706ca562)) +- rename useAllPrismicDocuments to useAllPrismicDocumentsDangerously ([22d63fe](https://github.com/prismicio/prismic-reactjs/commit/22d63fe0866006f02bbf044e27bfdd0fa86a4b39)) +- treat @prismicio/client as an optional peer dependency ([0e0b0b5](https://github.com/prismicio/prismic-reactjs/commit/0e0b0b5e10a28774629aaa6e6811e872706ca562)) ## [2.0.0-beta.2](https://github.com/prismicio/prismic-reactjs/compare/v2.0.0-beta.1...v2.0.0-beta.2) (2021-11-04) - ### Features -* support nullish fields in PrismicRichText and PrismicText ([7b6f73f](https://github.com/prismicio/prismic-reactjs/commit/7b6f73f2ebe014fefbd0e9797b9a189bea1833ab)), closes [#99](https://github.com/prismicio/prismic-reactjs/issues/99) - +- support nullish fields in PrismicRichText and PrismicText ([7b6f73f](https://github.com/prismicio/prismic-reactjs/commit/7b6f73f2ebe014fefbd0e9797b9a189bea1833ab)), closes [#99](https://github.com/prismicio/prismic-reactjs/issues/99) ### Bug Fixes -* support null PrismicLink target and rel props ([850d9a8](https://github.com/prismicio/prismic-reactjs/commit/850d9a8a7dab8024536b77b7b9f482c017dda907)) - +- support null PrismicLink target and rel props ([850d9a8](https://github.com/prismicio/prismic-reactjs/commit/850d9a8a7dab8024536b77b7b9f482c017dda907)) ### Documentation -* update installation command with beta tag ([a08ac53](https://github.com/prismicio/prismic-reactjs/commit/a08ac53cf3f128e98c644c17dab7c3b8d3e8b295)) - +- update installation command with beta tag ([a08ac53](https://github.com/prismicio/prismic-reactjs/commit/a08ac53cf3f128e98c644c17dab7c3b8d3e8b295)) ### Chore -* add github issue and pull request templates ([25f2d4f](https://github.com/prismicio/prismic-reactjs/commit/25f2d4f3ef89022f52eac0481cbf37b79b4f0e3b)) -* remove outdated README comment ([75b4e3e](https://github.com/prismicio/prismic-reactjs/commit/75b4e3e7e98cea1cffa93b7e946b17762a7bbf51)) -* update dependencies ([3542673](https://github.com/prismicio/prismic-reactjs/commit/35426734ae20e41fcd510c3521cdb9fe588633f7)) +- add github issue and pull request templates ([25f2d4f](https://github.com/prismicio/prismic-reactjs/commit/25f2d4f3ef89022f52eac0481cbf37b79b4f0e3b)) +- remove outdated README comment ([75b4e3e](https://github.com/prismicio/prismic-reactjs/commit/75b4e3e7e98cea1cffa93b7e946b17762a7bbf51)) +- update dependencies ([3542673](https://github.com/prismicio/prismic-reactjs/commit/35426734ae20e41fcd510c3521cdb9fe588633f7)) ## [2.0.0-beta.1](https://github.com/prismicio/prismic-reactjs/compare/v2.0.0-alpha.6...v2.0.0-beta.1) (2021-11-01) - ### Features -* add *BySomeTags and *ByEveryTag hooks ([7faa6b3](https://github.com/prismicio/prismic-reactjs/commit/7faa6b35c907dd451fb1ccc605ec8368bec27d55)) - +- add *BySomeTags and *ByEveryTag hooks ([7faa6b3](https://github.com/prismicio/prismic-reactjs/commit/7faa6b35c907dd451fb1ccc605ec8368bec27d55)) ### Refactor -* use universal Error object in client hooks ([c02a557](https://github.com/prismicio/prismic-reactjs/commit/c02a5575df001780aff23510c9c9ef3ebb8272eb)) - +- use universal Error object in client hooks ([c02a557](https://github.com/prismicio/prismic-reactjs/commit/c02a5575df001780aff23510c9c9ef3ebb8272eb)) ### Chore -* **deps:** update dependencies ([49878fd](https://github.com/prismicio/prismic-reactjs/commit/49878fd5352b494f979f5e3620e9ccf17614cb55)) -* prepare for beta release ([8f6cb34](https://github.com/prismicio/prismic-reactjs/commit/8f6cb34a93152e6640e2f01fde4b4fb2a4c8940a)) +- **deps:** update dependencies ([49878fd](https://github.com/prismicio/prismic-reactjs/commit/49878fd5352b494f979f5e3620e9ccf17614cb55)) +- prepare for beta release ([8f6cb34](https://github.com/prismicio/prismic-reactjs/commit/8f6cb34a93152e6640e2f01fde4b4fb2a4c8940a)) ## [2.0.0-alpha.6](https://github.com/prismicio/prismic-reactjs/compare/v2.0.0-alpha.5...v2.0.0-alpha.6) (2021-10-09) - ### Features -* add `usePrismicDocumentsByUIDs` and `useAllPrismicDocumentsByUIDs` ([3a25db8](https://github.com/prismicio/prismic-reactjs/commit/3a25db8cc9fa5909ff025028de7502b5790f2b5b)) -* support intrinsic props from link components ([ab82e96](https://github.com/prismicio/prismic-reactjs/commit/ab82e9670d36fb533044e071481d1a7e3c2c7317)) - +- add `usePrismicDocumentsByUIDs` and `useAllPrismicDocumentsByUIDs` ([3a25db8](https://github.com/prismicio/prismic-reactjs/commit/3a25db8cc9fa5909ff025028de7502b5790f2b5b)) +- support intrinsic props from link components ([ab82e96](https://github.com/prismicio/prismic-reactjs/commit/ab82e9670d36fb533044e071481d1a7e3c2c7317)) ### Bug Fixes -* add keys to rendered Rich Text components ([b0300d3](https://github.com/prismicio/prismic-reactjs/commit/b0300d34605bb1d428767e80a29f641b2fd9db8c)) -* export PrismicText ([87457bf](https://github.com/prismicio/prismic-reactjs/commit/87457bfa05e56f34eef7f609f2d6d9c1d16984ef)) -* looser SliceZoneComponents type to support non-const `slice_type` ([c227fec](https://github.com/prismicio/prismic-reactjs/commit/c227fece72338a4b12c3f9f5f26f814900fe59d4)) -* move `@prismicio/client` and `@prismicio/helpers` to peer dependencies ([91a9381](https://github.com/prismicio/prismic-reactjs/commit/91a938164487e4f01944cb906986d9db8abe00b9)) -* only pass external props to rendered PrismicLink component ([1f9d9a5](https://github.com/prismicio/prismic-reactjs/commit/1f9d9a50236e9d6711fc49d3b3c2945f8d0ab2c3)) -* render Rich Text line breaks as
([4eaa6dd](https://github.com/prismicio/prismic-reactjs/commit/4eaa6dd5ab33262e536c6d46d901c0aed2abf731)) -* use string union over enum for hook states ([fef36bc](https://github.com/prismicio/prismic-reactjs/commit/fef36bc49baed5ff4f134c2ca6d94153516f9bcc)) - +- add keys to rendered Rich Text components ([b0300d3](https://github.com/prismicio/prismic-reactjs/commit/b0300d34605bb1d428767e80a29f641b2fd9db8c)) +- export PrismicText ([87457bf](https://github.com/prismicio/prismic-reactjs/commit/87457bfa05e56f34eef7f609f2d6d9c1d16984ef)) +- looser SliceZoneComponents type to support non-const `slice_type` ([c227fec](https://github.com/prismicio/prismic-reactjs/commit/c227fece72338a4b12c3f9f5f26f814900fe59d4)) +- move `@prismicio/client` and `@prismicio/helpers` to peer dependencies ([91a9381](https://github.com/prismicio/prismic-reactjs/commit/91a938164487e4f01944cb906986d9db8abe00b9)) +- only pass external props to rendered PrismicLink component ([1f9d9a5](https://github.com/prismicio/prismic-reactjs/commit/1f9d9a50236e9d6711fc49d3b3c2945f8d0ab2c3)) +- render Rich Text line breaks as
([4eaa6dd](https://github.com/prismicio/prismic-reactjs/commit/4eaa6dd5ab33262e536c6d46d901c0aed2abf731)) +- use string union over enum for hook states ([fef36bc](https://github.com/prismicio/prismic-reactjs/commit/fef36bc49baed5ff4f134c2ca6d94153516f9bcc)) ### Documentation -* update PrismicToolbar description ([1a96dd6](https://github.com/prismicio/prismic-reactjs/commit/1a96dd6739cf0cd37def03ba6b8bbaaa91b365b9)) - +- update PrismicToolbar description ([1a96dd6](https://github.com/prismicio/prismic-reactjs/commit/1a96dd6739cf0cd37def03ba6b8bbaaa91b365b9)) ### Refactor -* reorganize PrismicLink ([9dfc9b9](https://github.com/prismicio/prismic-reactjs/commit/9dfc9b9baca6fd7a2a928cd13dd4f0c8d5f55fec)) - +- reorganize PrismicLink ([9dfc9b9](https://github.com/prismicio/prismic-reactjs/commit/9dfc9b9baca6fd7a2a928cd13dd4f0c8d5f55fec)) ### Chore -* add @prismicio/client and @prismicio/helpers as devDependencies ([672454f](https://github.com/prismicio/prismic-reactjs/commit/672454f74087c2ae1766a3b89e0ee8b16339e02f)) -* update dependencies ([c342721](https://github.com/prismicio/prismic-reactjs/commit/c342721cfa6fb6479ec6f496056b67d4cbf58b30)) -* update package-lock.json ([b8abf23](https://github.com/prismicio/prismic-reactjs/commit/b8abf23394f76b15fa823f166e9b2726eada7026)) +- add @prismicio/client and @prismicio/helpers as devDependencies ([672454f](https://github.com/prismicio/prismic-reactjs/commit/672454f74087c2ae1766a3b89e0ee8b16339e02f)) +- update dependencies ([c342721](https://github.com/prismicio/prismic-reactjs/commit/c342721cfa6fb6479ec6f496056b67d4cbf58b30)) +- update package-lock.json ([b8abf23](https://github.com/prismicio/prismic-reactjs/commit/b8abf23394f76b15fa823f166e9b2726eada7026)) ## [2.0.0-alpha.5](https://github.com/prismicio/prismic-reactjs/compare/v2.0.0-alpha.4...v2.0.0-alpha.5) (2021-09-27) - ### Bug Fixes -* export PrismicProvider props type ([848cd7d](https://github.com/prismicio/prismic-reactjs/commit/848cd7def29712d72b33f334ba1e738968463746)) - +- export PrismicProvider props type ([848cd7d](https://github.com/prismicio/prismic-reactjs/commit/848cd7def29712d72b33f334ba1e738968463746)) ### Chore -* **deps:** maintain dependencies ([7437659](https://github.com/prismicio/prismic-reactjs/commit/74376591ec5e394ead1359df73b723baf02e9c53)) -* update template config ([8d63067](https://github.com/prismicio/prismic-reactjs/commit/8d63067a5c419e5082b741e57e03f0a96eee3d12)) +- **deps:** maintain dependencies ([7437659](https://github.com/prismicio/prismic-reactjs/commit/74376591ec5e394ead1359df73b723baf02e9c53)) +- update template config ([8d63067](https://github.com/prismicio/prismic-reactjs/commit/8d63067a5c419e5082b741e57e03f0a96eee3d12)) ## [2.0.0-alpha.4](https://github.com/prismicio/prismic-reactjs/compare/v2.0.0-alpha.3...v2.0.0-alpha.4) (2021-09-15) - ### Bug Fixes -* allow undefined SliceZone slices and components ([a44bebf](https://github.com/prismicio/prismic-reactjs/commit/a44bebf16617e220dbbbec2263c912238ff0f1b6)) -* proper PrismicRichText serializer fallbacks ([ca1d37a](https://github.com/prismicio/prismic-reactjs/commit/ca1d37ab6f522e2b0d9ad88c5c7bc2450b5c7f4d)) +- allow undefined SliceZone slices and components ([a44bebf](https://github.com/prismicio/prismic-reactjs/commit/a44bebf16617e220dbbbec2263c912238ff0f1b6)) +- proper PrismicRichText serializer fallbacks ([ca1d37a](https://github.com/prismicio/prismic-reactjs/commit/ca1d37ab6f522e2b0d9ad88c5c7bc2450b5c7f4d)) ## [2.0.0-alpha.3](https://github.com/prismicio/prismic-reactjs/compare/v2.0.0-alpha.2...v2.0.0-alpha.3) (2021-08-23) - ### Features -* render PrismicLink using a document ([0768280](https://github.com/prismicio/prismic-reactjs/commit/0768280e049d120cb93ebac581bc4e629ff98c67)) - +- render PrismicLink using a document ([0768280](https://github.com/prismicio/prismic-reactjs/commit/0768280e049d120cb93ebac581bc4e629ff98c67)) ### Bug Fixes -* wording on TODOSliceComponent warning ([8abfc9a](https://github.com/prismicio/prismic-reactjs/commit/8abfc9acc5fd5ca6a5c65fdc28092d4cc5dd376b)) - +- wording on TODOSliceComponent warning ([8abfc9a](https://github.com/prismicio/prismic-reactjs/commit/8abfc9acc5fd5ca6a5c65fdc28092d4cc5dd376b)) ### Documentation -* add tsdocs for hooks ([0b1a610](https://github.com/prismicio/prismic-reactjs/commit/0b1a610197e23c2462f62443497c7044d7f49ccf)) +- add tsdocs for hooks ([0b1a610](https://github.com/prismicio/prismic-reactjs/commit/0b1a610197e23c2462f62443497c7044d7f49ccf)) ## [2.0.0-alpha.2](https://github.com/prismicio/prismic-reactjs/compare/v2.0.0-alpha.1...v2.0.0-alpha.2) (2021-08-03) - ### Features -* support document type on client hooks ([0a0427b](https://github.com/prismicio/prismic-reactjs/commit/0a0427b344087d898f0f5e56b1c125a194fa6595)) - +- support document type on client hooks ([0a0427b](https://github.com/prismicio/prismic-reactjs/commit/0a0427b344087d898f0f5e56b1c125a194fa6595)) ### Bug Fixes -* rename PrismicHookState to PrismicClientHookState ([8047f8b](https://github.com/prismicio/prismic-reactjs/commit/8047f8b752a9852d516ddd7a89a74c53cc99e83e)) - +- rename PrismicHookState to PrismicClientHookState ([8047f8b](https://github.com/prismicio/prismic-reactjs/commit/8047f8b752a9852d516ddd7a89a74c53cc99e83e)) ### Chore -* add react as a dev dependency for tests ([9bac238](https://github.com/prismicio/prismic-reactjs/commit/9bac238a9cd8ad77b384e9683d5824862a05d4d4)) - +- add react as a dev dependency for tests ([9bac238](https://github.com/prismicio/prismic-reactjs/commit/9bac238a9cd8ad77b384e9683d5824862a05d4d4)) ### Refactor -* increase test coverage by restructuring ([84c5cde](https://github.com/prismicio/prismic-reactjs/commit/84c5cde319afec2e7afbcc876d43b85b00039b98)) +- increase test coverage by restructuring ([84c5cde](https://github.com/prismicio/prismic-reactjs/commit/84c5cde319afec2e7afbcc876d43b85b00039b98)) ## [2.0.0-alpha.1](https://github.com/prismicio/prismic-reactjs/compare/v2.0.0-alpha.0...v2.0.0-alpha.1) (2021-08-02) - ### Bug Fixes -* move react to a peer dependency ([17d9f08](https://github.com/prismicio/prismic-reactjs/commit/17d9f08f507b612699449cb87de6d6273494f213)) - +- move react to a peer dependency ([17d9f08](https://github.com/prismicio/prismic-reactjs/commit/17d9f08f507b612699449cb87de6d6273494f213)) ### Chore -* remove private label ([8bafde4](https://github.com/prismicio/prismic-reactjs/commit/8bafde44aee43f66fd652e8fcf2151f245a80918)) +- remove private label ([8bafde4](https://github.com/prismicio/prismic-reactjs/commit/8bafde44aee43f66fd652e8fcf2151f245a80918)) ## [2.0.0-alpha.0](https://github.com/prismicio/prismic-reactjs/compare/v1.3.4...v2.0.0-alpha.0) (2021-08-02) - ### Features -* add SliceZone component ([1e13c98](https://github.com/prismicio/prismic-reactjs/commit/1e13c98b4338bf291dca585eae3e79a1e16675a3)) -* complete implementation ([530be7d](https://github.com/prismicio/prismic-reactjs/commit/530be7da1f63cc918d9683aa1895a691bc166b72)) -* export PrismicHookState ([8058fe1](https://github.com/prismicio/prismic-reactjs/commit/8058fe19c2279828b3a7c72644b0f3a36397cbc8)) -* export updated types ([4eb4973](https://github.com/prismicio/prismic-reactjs/commit/4eb4973d92031330e6a4416f4fcfaccaeb011174)) -* initial v2 commit ([c666519](https://github.com/prismicio/prismic-reactjs/commit/c6665194435134f65493343d95ef6bef94c65691)) -* refine SliceZone types and TODOSliceComponent ([0728187](https://github.com/prismicio/prismic-reactjs/commit/0728187b8b68e29ca25c7fff03faa576c9d4c98d)) - +- add SliceZone component ([1e13c98](https://github.com/prismicio/prismic-reactjs/commit/1e13c98b4338bf291dca585eae3e79a1e16675a3)) +- complete implementation ([530be7d](https://github.com/prismicio/prismic-reactjs/commit/530be7da1f63cc918d9683aa1895a691bc166b72)) +- export PrismicHookState ([8058fe1](https://github.com/prismicio/prismic-reactjs/commit/8058fe19c2279828b3a7c72644b0f3a36397cbc8)) +- export updated types ([4eb4973](https://github.com/prismicio/prismic-reactjs/commit/4eb4973d92031330e6a4416f4fcfaccaeb011174)) +- initial v2 commit ([c666519](https://github.com/prismicio/prismic-reactjs/commit/c6665194435134f65493343d95ef6bef94c65691)) +- refine SliceZone types and TODOSliceComponent ([0728187](https://github.com/prismicio/prismic-reactjs/commit/0728187b8b68e29ca25c7fff03faa576c9d4c98d)) ### Bug Fixes -* accept provider children ([629180d](https://github.com/prismicio/prismic-reactjs/commit/629180dec8dd016ffd858eb9da38addf6a611f20)) -* allow href, target overrides in PrismicLink ([b0037f5](https://github.com/prismicio/prismic-reactjs/commit/b0037f5568695ec4688f43f8246d936b77a03606)) -* better internal url detection ([10d5dc3](https://github.com/prismicio/prismic-reactjs/commit/10d5dc3bf4482fcaadf3241572f66d32eb44f8bd)) -* more specific SliceZone types ([a4d5a2d](https://github.com/prismicio/prismic-reactjs/commit/a4d5a2d2e5f10a90fd5942f19b94030501772ab5)) -* safely polyfill process.env ([75d70c7](https://github.com/prismicio/prismic-reactjs/commit/75d70c7f22574d94ea7469e3a491c61b4595ea60)) -* stricter href/field prop types for PrismicLink ([5dec44a](https://github.com/prismicio/prismic-reactjs/commit/5dec44a6ff07def7e67471bcea6ae80b3fe9732f)) -* use more correct internalLinkComponent/externalLinkComponent type ([281e27c](https://github.com/prismicio/prismic-reactjs/commit/281e27cf59ecd6a9bed3dfc8d7f48184253ad069)) -* use production over development for optimization checks ([b466791](https://github.com/prismicio/prismic-reactjs/commit/b46679179a27567f902f3bba78a4189c955dd141)) - +- accept provider children ([629180d](https://github.com/prismicio/prismic-reactjs/commit/629180dec8dd016ffd858eb9da38addf6a611f20)) +- allow href, target overrides in PrismicLink ([b0037f5](https://github.com/prismicio/prismic-reactjs/commit/b0037f5568695ec4688f43f8246d936b77a03606)) +- better internal url detection ([10d5dc3](https://github.com/prismicio/prismic-reactjs/commit/10d5dc3bf4482fcaadf3241572f66d32eb44f8bd)) +- more specific SliceZone types ([a4d5a2d](https://github.com/prismicio/prismic-reactjs/commit/a4d5a2d2e5f10a90fd5942f19b94030501772ab5)) +- safely polyfill process.env ([75d70c7](https://github.com/prismicio/prismic-reactjs/commit/75d70c7f22574d94ea7469e3a491c61b4595ea60)) +- stricter href/field prop types for PrismicLink ([5dec44a](https://github.com/prismicio/prismic-reactjs/commit/5dec44a6ff07def7e67471bcea6ae80b3fe9732f)) +- use more correct internalLinkComponent/externalLinkComponent type ([281e27c](https://github.com/prismicio/prismic-reactjs/commit/281e27cf59ecd6a9bed3dfc8d7f48184253ad069)) +- use production over development for optimization checks ([b466791](https://github.com/prismicio/prismic-reactjs/commit/b46679179a27567f902f3bba78a4189c955dd141)) ### Documentation -* add documentation to all exports ([ba15a01](https://github.com/prismicio/prismic-reactjs/commit/ba15a01421d7cfdc64b459601055c8e1d1f94bf6)) -* add examples ([4984832](https://github.com/prismicio/prismic-reactjs/commit/4984832d333ca5bcdb883cc020ea1cb675bcea5e)) -* fix typo ([32c20bc](https://github.com/prismicio/prismic-reactjs/commit/32c20bce4067ed2d9bd2221f0605dbf642715dc3)) -* link to React ([3a083ca](https://github.com/prismicio/prismic-reactjs/commit/3a083ca4432a18e1a8aaecceb7ce9329c0bee09a)) -* rename with-provider example to with-global-configuration ([7fc834f](https://github.com/prismicio/prismic-reactjs/commit/7fc834f3f8a5c0904fe2d32004453c80aee89e14)) -* update README ([41539a8](https://github.com/prismicio/prismic-reactjs/commit/41539a8e4d62091570e2ddfe025af0f1fbee4201)) - +- add documentation to all exports ([ba15a01](https://github.com/prismicio/prismic-reactjs/commit/ba15a01421d7cfdc64b459601055c8e1d1f94bf6)) +- add examples ([4984832](https://github.com/prismicio/prismic-reactjs/commit/4984832d333ca5bcdb883cc020ea1cb675bcea5e)) +- fix typo ([32c20bc](https://github.com/prismicio/prismic-reactjs/commit/32c20bce4067ed2d9bd2221f0605dbf642715dc3)) +- link to React ([3a083ca](https://github.com/prismicio/prismic-reactjs/commit/3a083ca4432a18e1a8aaecceb7ce9329c0bee09a)) +- rename with-provider example to with-global-configuration ([7fc834f](https://github.com/prismicio/prismic-reactjs/commit/7fc834f3f8a5c0904fe2d32004453c80aee89e14)) +- update README ([41539a8](https://github.com/prismicio/prismic-reactjs/commit/41539a8e4d62091570e2ddfe025af0f1fbee4201)) ### Refactor -* move hook reducer into hook factory file ([b06e831](https://github.com/prismicio/prismic-reactjs/commit/b06e831c8ac252d21632d513e0368b835ac51768)) -* organize types and hooks ([5add30b](https://github.com/prismicio/prismic-reactjs/commit/5add30bdff8a0c8bf8173693317d716954760f8c)) -* use map for default PrismicRichText serializer ([0ba98f0](https://github.com/prismicio/prismic-reactjs/commit/0ba98f061b5437bbe0b04a2a6c8361b2a37287c5)) +- move hook reducer into hook factory file ([b06e831](https://github.com/prismicio/prismic-reactjs/commit/b06e831c8ac252d21632d513e0368b835ac51768)) +- organize types and hooks ([5add30b](https://github.com/prismicio/prismic-reactjs/commit/5add30bdff8a0c8bf8173693317d716954760f8c)) +- use map for default PrismicRichText serializer ([0ba98f0](https://github.com/prismicio/prismic-reactjs/commit/0ba98f061b5437bbe0b04a2a6c8361b2a37287c5)) diff --git a/e2e-projects/nextjs/app/PrismicImage/client/ClientTest.tsx b/e2e-projects/nextjs/app/PrismicImage/client/ClientTest.tsx index a8f1904..b9ea40f 100644 --- a/e2e-projects/nextjs/app/PrismicImage/client/ClientTest.tsx +++ b/e2e-projects/nextjs/app/PrismicImage/client/ClientTest.tsx @@ -1,9 +1,9 @@ "use client"; -import type { ReactNode } from "react"; -import { useState } from "react"; import type { ImageField } from "@prismicio/client"; import { PrismicImage } from "@prismicio/react"; +import type { ReactNode } from "react"; +import { useState } from "react"; export function ClientTest(props: { field: ImageField }): ReactNode { const { field } = props; diff --git a/e2e-projects/nextjs/app/PrismicImage/client/page.tsx b/e2e-projects/nextjs/app/PrismicImage/client/page.tsx index c0045c8..1791ada 100644 --- a/e2e-projects/nextjs/app/PrismicImage/client/page.tsx +++ b/e2e-projects/nextjs/app/PrismicImage/client/page.tsx @@ -1,8 +1,10 @@ -import type { ReactNode } from "react"; -import { isFilled } from "@prismicio/client"; import assert from "assert"; +import { isFilled } from "@prismicio/client"; +import type { ReactNode } from "react"; + import { createClient } from "@/prismicio"; + import { ClientTest } from "./ClientTest"; export default async function Page(): Promise { diff --git a/e2e-projects/nextjs/app/PrismicImage/page.tsx b/e2e-projects/nextjs/app/PrismicImage/page.tsx index a9a0d51..6a6b331 100644 --- a/e2e-projects/nextjs/app/PrismicImage/page.tsx +++ b/e2e-projects/nextjs/app/PrismicImage/page.tsx @@ -1,7 +1,8 @@ -import type { ReactNode } from "react"; +import assert from "assert"; + import { isFilled } from "@prismicio/client"; import { PrismicImage } from "@prismicio/react"; -import assert from "assert"; +import type { ReactNode } from "react"; import { createClient } from "@/prismicio"; @@ -9,13 +10,8 @@ export default async function Page(): Promise { const client = await createClient(); const { data: tests } = await client.getSingle("image_test"); - assert( - isFilled.image(tests.with_alt_text) && tests.with_alt_text.alt !== null, - ); - assert( - isFilled.image(tests.without_alt_text) && - tests.without_alt_text.alt === null, - ); + assert(isFilled.image(tests.with_alt_text) && tests.with_alt_text.alt !== null); + assert(isFilled.image(tests.without_alt_text) && tests.without_alt_text.alt === null); assert(isFilled.image(tests.filled)); assert(!isFilled.image(tests.empty)); assert( @@ -37,27 +33,15 @@ export default async function Page(): Promise { - - + + - + { field={tests.without_alt_text} fallbackAlt="" /> - + - + (null); diff --git a/e2e-projects/nextjs/app/PrismicLink/page.tsx b/e2e-projects/nextjs/app/PrismicLink/page.tsx index 70f0bfb..55b2f46 100644 --- a/e2e-projects/nextjs/app/PrismicLink/page.tsx +++ b/e2e-projects/nextjs/app/PrismicLink/page.tsx @@ -1,8 +1,9 @@ -import type { ReactNode } from "react"; -import Link from "next/link"; +import assert from "assert"; + import { isFilled } from "@prismicio/client"; import { PrismicLink } from "@prismicio/react"; -import assert from "assert"; +import Link from "next/link"; +import type { ReactNode } from "react"; import { createClient } from "@/prismicio"; @@ -10,9 +11,7 @@ export default async function Page(): Promise { const client = await createClient(); const { data: tests } = await client.getSingle("link_test"); assert( - isFilled.link(tests.document) && - tests.document.link_type === "Document" && - tests.document.url, + isFilled.link(tests.document) && tests.document.link_type === "Document" && tests.document.url, ); const doc = await client.getByID(tests.document.id); @@ -37,10 +36,7 @@ export default async function Page(): Promise { return ( <> - + { - + { - + - + { rel={(payload) => JSON.stringify(payload)} /> - + {/* @ts-expect-error - We are purposely providing an invalid `href` value. */} diff --git a/e2e-projects/nextjs/app/PrismicRichText/page.tsx b/e2e-projects/nextjs/app/PrismicRichText/page.tsx index 86dddd4..17514fc 100644 --- a/e2e-projects/nextjs/app/PrismicRichText/page.tsx +++ b/e2e-projects/nextjs/app/PrismicRichText/page.tsx @@ -1,7 +1,8 @@ -import type { ReactNode } from "react"; +import assert from "assert"; + import { isFilled } from "@prismicio/client"; import { PrismicRichText } from "@prismicio/react"; -import assert from "assert"; +import type { ReactNode } from "react"; import { createClient } from "@/prismicio"; @@ -218,9 +219,7 @@ export default async function Page(): Promise { ( -
- ), + embed: ({ node }) =>
, }} />
diff --git a/e2e-projects/nextjs/app/PrismicTable/page.tsx b/e2e-projects/nextjs/app/PrismicTable/page.tsx index ed6cdd7..9af9805 100644 --- a/e2e-projects/nextjs/app/PrismicTable/page.tsx +++ b/e2e-projects/nextjs/app/PrismicTable/page.tsx @@ -1,7 +1,8 @@ -import type { ReactNode } from "react"; +import assert from "assert"; + import { isFilled } from "@prismicio/client"; import { PrismicTable } from "@prismicio/react"; -import assert from "assert"; +import type { ReactNode } from "react"; import { createClient } from "@/prismicio"; @@ -44,15 +45,9 @@ export default async function Page(): Promise { ( - {children}
- ), - paragraph: ({ children }) => ( -

{children}

- ), - strong: ({ children }) => ( - {children} - ), + table: ({ children }) => {children}
, + paragraph: ({ children }) =>

{children}

, + strong: ({ children }) => {children}, em: ({ children }) => {children}, }} /> diff --git a/e2e-projects/nextjs/app/PrismicText/page.tsx b/e2e-projects/nextjs/app/PrismicText/page.tsx index fa31f6f..05ca3db 100644 --- a/e2e-projects/nextjs/app/PrismicText/page.tsx +++ b/e2e-projects/nextjs/app/PrismicText/page.tsx @@ -1,7 +1,8 @@ -import type { ReactNode } from "react"; +import assert from "assert"; + import { isFilled } from "@prismicio/client"; import { PrismicText } from "@prismicio/react"; -import assert from "assert"; +import type { ReactNode } from "react"; import { createClient } from "@/prismicio"; diff --git a/e2e-projects/nextjs/app/PrismicToolbar/page.tsx b/e2e-projects/nextjs/app/PrismicToolbar/page.tsx index ab6f495..4cc70fe 100644 --- a/e2e-projects/nextjs/app/PrismicToolbar/page.tsx +++ b/e2e-projects/nextjs/app/PrismicToolbar/page.tsx @@ -1,5 +1,5 @@ -import type { ReactNode } from "react"; import { PrismicToolbar } from "@prismicio/react"; +import type { ReactNode } from "react"; import { createClient } from "@/prismicio"; diff --git a/e2e-projects/nextjs/app/PrismicToolbar/preview-events/PrismicToolbarPreviewEvents.tsx b/e2e-projects/nextjs/app/PrismicToolbar/preview-events/PrismicToolbarPreviewEvents.tsx index 0dd5b44..e19b476 100644 --- a/e2e-projects/nextjs/app/PrismicToolbar/preview-events/PrismicToolbarPreviewEvents.tsx +++ b/e2e-projects/nextjs/app/PrismicToolbar/preview-events/PrismicToolbarPreviewEvents.tsx @@ -1,11 +1,9 @@ "use client"; -import { type ReactNode, useState } from "react"; import { PrismicToolbar } from "@prismicio/react"; +import { type ReactNode, useState } from "react"; -export function PrismicToolbarPreviewEvents(props: { - repositoryName: string; -}): ReactNode { +export function PrismicToolbarPreviewEvents(props: { repositoryName: string }): ReactNode { const [updateCount, setUpdateCount] = useState(0); const [endCount, setEndCount] = useState(0); const [updateRef, setUpdateRef] = useState(""); diff --git a/e2e-projects/nextjs/app/PrismicToolbar/preview-events/page.tsx b/e2e-projects/nextjs/app/PrismicToolbar/preview-events/page.tsx index 3da8451..26e1409 100644 --- a/e2e-projects/nextjs/app/PrismicToolbar/preview-events/page.tsx +++ b/e2e-projects/nextjs/app/PrismicToolbar/preview-events/page.tsx @@ -1,12 +1,11 @@ import type { ReactNode } from "react"; import { createClient } from "@/prismicio"; + import { PrismicToolbarPreviewEvents } from "./PrismicToolbarPreviewEvents"; export default async function Page(): Promise { const client = await createClient(); - return ( - - ); + return ; } diff --git a/e2e-projects/nextjs/app/SliceZone/page.tsx b/e2e-projects/nextjs/app/SliceZone/page.tsx index a4f11cf..fab83d7 100644 --- a/e2e-projects/nextjs/app/SliceZone/page.tsx +++ b/e2e-projects/nextjs/app/SliceZone/page.tsx @@ -1,7 +1,8 @@ -import type { ReactNode } from "react"; +import assert from "assert"; + import { isFilled, mapSliceZone } from "@prismicio/client"; import { type SliceComponentProps, SliceZone } from "@prismicio/react"; -import assert from "assert"; +import type { ReactNode } from "react"; import { createClient } from "@/prismicio"; @@ -33,17 +34,11 @@ export default async function Page(): Promise {
- +
- +
@@ -54,12 +49,8 @@ export default async function Page(): Promise { } const components = { - text: (props: SliceComponentProps) => ( -
{JSON.stringify(props)}
- ), - image: (props: SliceComponentProps) => ( -
{JSON.stringify(props)}
- ), + text: (props: SliceComponentProps) =>
{JSON.stringify(props)}
, + image: (props: SliceComponentProps) =>
{JSON.stringify(props)}
, }; const graphQLQuery = /* GraphQL */ ` diff --git a/e2e-projects/nextjs/app/layout.tsx b/e2e-projects/nextjs/app/layout.tsx index da7d0b4..be8abc9 100644 --- a/e2e-projects/nextjs/app/layout.tsx +++ b/e2e-projects/nextjs/app/layout.tsx @@ -1,10 +1,6 @@ import type { ReactNode } from "react"; -export default function RootLayout({ - children, -}: { - children: ReactNode; -}): ReactNode { +export default function RootLayout({ children }: { children: ReactNode }): ReactNode { return ( {children} diff --git a/e2e-projects/nextjs/next.config.ts b/e2e-projects/nextjs/next.config.ts index 34a8907..41cf08a 100644 --- a/e2e-projects/nextjs/next.config.ts +++ b/e2e-projects/nextjs/next.config.ts @@ -1,6 +1,7 @@ -import type { NextConfig } from "next"; import { fileURLToPath } from "node:url"; +import type { NextConfig } from "next"; + const nextConfig: NextConfig = { outputFileTracingRoot: fileURLToPath(new URL("../..", import.meta.url)), images: { diff --git a/e2e-projects/nextjs/package.json b/e2e-projects/nextjs/package.json index da48954..8ec15df 100644 --- a/e2e-projects/nextjs/package.json +++ b/e2e-projects/nextjs/package.json @@ -7,17 +7,17 @@ "start": "next start --port=4321" }, "dependencies": { - "@prismicio/client": "^7.16.0", + "@prismicio/client": "^7.21.7", "@prismicio/react": "*", - "next": "15.1.9", - "react": "19.2.1", - "react-dom": "19.2.1" + "next": "16.2.2", + "react": "19.2.4", + "react-dom": "19.2.4" }, "devDependencies": { "@prismicio/types-internal": "^3.6.0", - "@types/node": "^22", + "@types/node": "^25", "@types/react": "^19", "@types/react-dom": "^19", - "typescript": "^5" + "typescript": "^6" } } diff --git a/e2e-projects/nextjs/prismic-types.d.ts b/e2e-projects/nextjs/prismic-types.d.ts index e3f73c7..e429148 100644 --- a/e2e-projects/nextjs/prismic-types.d.ts +++ b/e2e-projects/nextjs/prismic-types.d.ts @@ -82,12 +82,11 @@ interface ImageTestDocumentData { * * @typeParam Lang - Language API ID of the document. */ -export type ImageTestDocument = - prismic.PrismicDocumentWithoutUID< - Simplify, - "image_test", - Lang - >; +export type ImageTestDocument = prismic.PrismicDocumentWithoutUID< + Simplify, + "image_test", + Lang +>; /** Content for Link Test documents */ interface LinkTestDocumentData { @@ -178,12 +177,11 @@ interface LinkTestDocumentData { * * @typeParam Lang - Language API ID of the document. */ -export type LinkTestDocument = - prismic.PrismicDocumentWithoutUID< - Simplify, - "link_test", - Lang - >; +export type LinkTestDocument = prismic.PrismicDocumentWithoutUID< + Simplify, + "link_test", + Lang +>; type PageDocumentDataFilledSlice = TextSlice | ImageSlice; @@ -221,8 +219,11 @@ interface PageDocumentData { * * @typeParam Lang - Language API ID of the document. */ -export type PageDocument = - prismic.PrismicDocumentWithoutUID, "page", Lang>; +export type PageDocument = prismic.PrismicDocumentWithoutUID< + Simplify, + "page", + Lang +>; /** Content for Rich Text Test documents */ interface RichTextTestDocumentData { @@ -478,12 +479,11 @@ interface RichTextTestDocumentData { * * @typeParam Lang - Language API ID of the document. */ -export type RichTextTestDocument = - prismic.PrismicDocumentWithoutUID< - Simplify, - "rich_text_test", - Lang - >; +export type RichTextTestDocument = prismic.PrismicDocumentWithoutUID< + Simplify, + "rich_text_test", + Lang +>; /** Content for Table Test documents */ interface TableTestDocumentData { @@ -519,12 +519,11 @@ interface TableTestDocumentData { * * @typeParam Lang - Language API ID of the document. */ -export type TableTestDocument = - prismic.PrismicDocumentWithoutUID< - Simplify, - "table_test", - Lang - >; +export type TableTestDocument = prismic.PrismicDocumentWithoutUID< + Simplify, + "table_test", + Lang +>; export type AllDocumentTypes = | ImageTestDocument diff --git a/e2e-projects/nextjs/prismicio.ts b/e2e-projects/nextjs/prismicio.ts index 4df5257..9bb5cae 100644 --- a/e2e-projects/nextjs/prismicio.ts +++ b/e2e-projects/nextjs/prismicio.ts @@ -1,10 +1,9 @@ +import assert from "node:assert"; + import * as prismic from "@prismicio/client"; import { cookies } from "next/headers"; -import assert from "node:assert"; -export async function createClient( - config: prismic.ClientConfig = {}, -): Promise { +export async function createClient(config: prismic.ClientConfig = {}): Promise { const cookieJar = await cookies(); const repositoryName = cookieJar.get("repository-name")?.value; assert(repositoryName, "A repository-name cookie is required."); diff --git a/e2e-projects/nextjs/tsconfig.json b/e2e-projects/nextjs/tsconfig.json index 96f8e1b..e7ff3a2 100644 --- a/e2e-projects/nextjs/tsconfig.json +++ b/e2e-projects/nextjs/tsconfig.json @@ -1,27 +1,41 @@ { - "compilerOptions": { - "target": "ES2017", - "lib": ["dom", "dom.iterable", "esnext"], - "allowJs": true, - "skipLibCheck": true, - "strict": true, - "noEmit": true, - "esModuleInterop": true, - "module": "esnext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "jsx": "preserve", - "incremental": true, - "plugins": [ - { - "name": "next" - } - ], - "paths": { - "@/*": ["./*"] - } - }, - "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], - "exclude": ["node_modules"] + "compilerOptions": { + "target": "ES2017", + "lib": [ + "dom", + "dom.iterable", + "esnext" + ], + "allowJs": true, + "skipLibCheck": true, + "strict": true, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "react-jsx", + "incremental": true, + "plugins": [ + { + "name": "next" + } + ], + "paths": { + "@/*": [ + "./*" + ] + } + }, + "include": [ + "next-env.d.ts", + "**/*.ts", + "**/*.tsx", + ".next/types/**/*.ts", + ".next/dev/types/**/*.ts" + ], + "exclude": [ + "node_modules" + ] } diff --git a/examples/custom-slicezone-props/index.tsx b/examples/custom-slicezone-props/index.tsx index d569174..d1d6289 100644 --- a/examples/custom-slicezone-props/index.tsx +++ b/examples/custom-slicezone-props/index.tsx @@ -1,9 +1,5 @@ +import { SliceZone, type SliceComponentProps, type SliceComponentType } from "@prismicio/react"; import type { ReactNode } from "react"; -import { - SliceZone, - type SliceComponentProps, - type SliceComponentType, -} from "@prismicio/react"; import type { HeroSlice, ExampleSliceZone } from "./types"; @@ -69,13 +65,7 @@ const HeroSlice = ({ slice }: SliceComponentProps) => { // // The SliceZome component will need to extract the content from within the // Slice object before rendering. -const CallToActionSlice = ({ - text, - disclaimer, -}: { - text: string; - disclaimer: string; -}) => { +const CallToActionSlice = ({ text, disclaimer }: { text: string; disclaimer: string }) => { return (

{text}

@@ -98,9 +88,7 @@ const components: Record = { // props it expects using content from within the Slice object. // // We can also pass arbitrary data as well, such as the `disclaimer` prop. - call_to_action: ({ slice }) => ( - - ), + call_to_action: ({ slice }) => , }; // We render the Slice Zone using the `` component by passing the diff --git a/examples/with-typescript/index.tsx b/examples/with-typescript/index.tsx index 83086f3..0d04f50 100644 --- a/examples/with-typescript/index.tsx +++ b/examples/with-typescript/index.tsx @@ -1,6 +1,6 @@ -import type { ReactNode } from "react"; import * as prismic from "@prismicio/client"; import { SliceZone, PrismicRichText, PrismicLink } from "@prismicio/react"; +import type { ReactNode } from "react"; // Documents can be typed using `@prismicio/client` type PageDocument = prismic.PrismicDocumentWithUID<{ @@ -77,9 +77,7 @@ export const WithGroupFieldLink = (): ReactNode => { prismic.isFilled.link(item.link) && (
  • diff --git a/messages/classname-is-not-a-valid-prop.md b/messages/classname-is-not-a-valid-prop.md index 5bd1415..f03167a 100644 --- a/messages/classname-is-not-a-valid-prop.md +++ b/messages/classname-is-not-a-valid-prop.md @@ -22,9 +22,7 @@ To add a `className` to a specific block type when using ``, pr ( -

    {children}

    - ), + heading1: ({ children }) =>

    {children}

    , }} /> ``` diff --git a/package-lock.json b/package-lock.json index cabda99..326ea38 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,20 +16,18 @@ "esm-env": "^1.2.2" }, "devDependencies": { - "@playwright/test": "^1.57.0", + "@playwright/test": "^1.59.1", "@prismicio/client": "^7.17.0", - "@trivago/prettier-plugin-sort-imports": "^6.0.2", - "@types/react": "^19.2.8", + "@types/react": "^19.2.14", "@types/react-dom": "^19.2.3", - "dotenv": "^17.2.3", - "oxlint": "^1.39.0", - "playwright": "^1.57.0", - "prettier": "^3.7.4", - "prettier-plugin-jsdoc": "^1.8.0", - "react": "^19.2.1", - "react-dom": "^19.2.3", - "tsdown": "^0.19.0", - "typescript": "^5.9.3" + "dotenv": "^17.4.0", + "oxfmt": "^0.43.0", + "oxlint": "^1.58.0", + "playwright": "^1.59.1", + "react": "^19.2.4", + "react-dom": "^19.2.4", + "tsdown": "^0.21.7", + "typescript": "^6.0.2" }, "engines": { "node": ">=20" @@ -41,183 +39,37 @@ }, "e2e-projects/nextjs": { "dependencies": { - "@prismicio/client": "^7.16.0", + "@prismicio/client": "^7.21.7", "@prismicio/react": "*", - "next": "15.1.9", - "react": "19.2.1", - "react-dom": "19.2.1" + "next": "16.2.2", + "react": "19.2.4", + "react-dom": "19.2.4" }, "devDependencies": { "@prismicio/types-internal": "^3.6.0", - "@types/node": "^22", + "@types/node": "^25", "@types/react": "^19", "@types/react-dom": "^19", - "typescript": "^5" - } - }, - "e2e-projects/nextjs/node_modules/react": { - "version": "19.2.1", - "resolved": "https://registry.npmjs.org/react/-/react-19.2.1.tgz", - "integrity": "sha512-DGrYcCWK7tvYMnWh79yrPHt+vdx9tY+1gPZa7nJQtO/p8bLTDaHp4dzwEhQB7pZ4Xe3ok4XKuEPrVuc+wlpkmw==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "e2e-projects/nextjs/node_modules/react-dom": { - "version": "19.2.1", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.1.tgz", - "integrity": "sha512-ibrK8llX2a4eOskq1mXKu/TGZj9qzomO+sNfO98M6d9zIPOEhlBkMkBUBLd1vgS0gQsLDBzA+8jJBVXDnfHmJg==", - "license": "MIT", - "dependencies": { - "scheduler": "^0.27.0" - }, - "peerDependencies": { - "react": "^19.2.1" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.28.6.tgz", - "integrity": "sha512-JYgintcMjRiCvS8mMECzaEn+m3PfoQiyqukOMCCVQtoJGYJw8j/8LBJEiqkHLkfwCcs74E3pbAUFNg7d9VNJ+Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.28.5", - "js-tokens": "^4.0.0", - "picocolors": "^1.1.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/generator": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.6.tgz", - "integrity": "sha512-lOoVRwADj8hjf7al89tvQ2a1lf53Z+7tiXMgpZJL3maQPDxh0DgLMN62B2MKUOFcoodBHLMbDM6WAbKgNy5Suw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.28.6", - "@babel/types": "^7.28.6", - "@jridgewell/gen-mapping": "^0.3.12", - "@jridgewell/trace-mapping": "^0.3.28", - "jsesc": "^3.0.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-globals": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", - "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", - "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", - "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.6.tgz", - "integrity": "sha512-TeR9zWR18BvbfPmGbLampPMW+uW1NZnJlRuuHso8i87QZNq2JRF9i6RgxRqtEq+wQGsS19NNTWr2duhnE49mfQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.28.6" - }, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/template": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", - "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.28.6", - "@babel/parser": "^7.28.6", - "@babel/types": "^7.28.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.6.tgz", - "integrity": "sha512-fgWX62k02qtjqdSNTAGxmKYY/7FSL9WAS1o2Hu5+I5m9T0yxZzr4cnrfXQ/MX0rIifthCSs6FKTlzYbJcPtMNg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.28.6", - "@babel/generator": "^7.28.6", - "@babel/helper-globals": "^7.28.0", - "@babel/parser": "^7.28.6", - "@babel/template": "^7.28.6", - "@babel/types": "^7.28.6", - "debug": "^4.3.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/types": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.6.tgz", - "integrity": "sha512-0ZrskXVEHSWIqZM/sQZ4EV3jZJXRkio/WCxaqKZP1g//CEWEPSfeZFcms4XeKBCHU0ZKnIkdJeU/kF+eRp5lBg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-string-parser": "^7.27.1", - "@babel/helper-validator-identifier": "^7.28.5" - }, - "engines": { - "node": ">=6.9.0" + "typescript": "^6" } }, "node_modules/@emnapi/core": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.8.1.tgz", - "integrity": "sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.9.1.tgz", + "integrity": "sha512-mukuNALVsoix/w1BJwFzwXBN/dHeejQtuVzcDsfOEsdpCumXb/E9j8w11h5S54tT1xhifGfbbSm/ICrObRb3KA==", "dev": true, "license": "MIT", "optional": true, + "peer": true, "dependencies": { - "@emnapi/wasi-threads": "1.1.0", + "@emnapi/wasi-threads": "1.2.0", "tslib": "^2.4.0" } }, "node_modules/@emnapi/runtime": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.8.1.tgz", - "integrity": "sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.9.1.tgz", + "integrity": "sha512-VYi5+ZVLhpgK4hQ0TAjiQiZ6ol0oe4mBx7mVv7IflsiEp0OWoVsp/+f9Vc1hOhE0TtkORVrI1GvzyreqpgWtkA==", "license": "MIT", "optional": true, "dependencies": { @@ -225,20 +77,31 @@ } }, "node_modules/@emnapi/wasi-threads": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", - "integrity": "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.0.tgz", + "integrity": "sha512-N10dEJNSsUx41Z6pZsXU8FjPjpBEplgH24sfkmITrBED1/U2Esum9F3lfLrMjKHHjmi557zQn7kR9R+XWXu5Rg==", "dev": true, "license": "MIT", "optional": true, + "peer": true, "dependencies": { "tslib": "^2.4.0" } }, + "node_modules/@img/colour": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@img/colour/-/colour-1.1.0.tgz", + "integrity": "sha512-Td76q7j57o/tLVdgS746cYARfSyxk8iEfRxewL9h4OMzYhbW4TAcppl0mT4eyqXddh6L/jwoM75mo7ixa/pCeQ==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=18" + } + }, "node_modules/@img/sharp-darwin-arm64": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.5.tgz", - "integrity": "sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==", + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.5.tgz", + "integrity": "sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w==", "cpu": [ "arm64" ], @@ -254,13 +117,13 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-libvips-darwin-arm64": "1.0.4" + "@img/sharp-libvips-darwin-arm64": "1.2.4" } }, "node_modules/@img/sharp-darwin-x64": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.5.tgz", - "integrity": "sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==", + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.5.tgz", + "integrity": "sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw==", "cpu": [ "x64" ], @@ -276,13 +139,13 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-libvips-darwin-x64": "1.0.4" + "@img/sharp-libvips-darwin-x64": "1.2.4" } }, "node_modules/@img/sharp-libvips-darwin-arm64": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.4.tgz", - "integrity": "sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.2.4.tgz", + "integrity": "sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g==", "cpu": [ "arm64" ], @@ -296,9 +159,9 @@ } }, "node_modules/@img/sharp-libvips-darwin-x64": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.4.tgz", - "integrity": "sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.2.4.tgz", + "integrity": "sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg==", "cpu": [ "x64" ], @@ -312,9 +175,9 @@ } }, "node_modules/@img/sharp-libvips-linux-arm": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.5.tgz", - "integrity": "sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.2.4.tgz", + "integrity": "sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==", "cpu": [ "arm" ], @@ -328,9 +191,9 @@ } }, "node_modules/@img/sharp-libvips-linux-arm64": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.4.tgz", - "integrity": "sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.2.4.tgz", + "integrity": "sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==", "cpu": [ "arm64" ], @@ -343,10 +206,42 @@ "url": "https://opencollective.com/libvips" } }, + "node_modules/@img/sharp-libvips-linux-ppc64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.2.4.tgz", + "integrity": "sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==", + "cpu": [ + "ppc64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-riscv64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-riscv64/-/sharp-libvips-linux-riscv64-1.2.4.tgz", + "integrity": "sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==", + "cpu": [ + "riscv64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, "node_modules/@img/sharp-libvips-linux-s390x": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.4.tgz", - "integrity": "sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.2.4.tgz", + "integrity": "sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==", "cpu": [ "s390x" ], @@ -360,9 +255,9 @@ } }, "node_modules/@img/sharp-libvips-linux-x64": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.4.tgz", - "integrity": "sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.2.4.tgz", + "integrity": "sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==", "cpu": [ "x64" ], @@ -376,9 +271,9 @@ } }, "node_modules/@img/sharp-libvips-linuxmusl-arm64": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.4.tgz", - "integrity": "sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.2.4.tgz", + "integrity": "sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==", "cpu": [ "arm64" ], @@ -392,9 +287,9 @@ } }, "node_modules/@img/sharp-libvips-linuxmusl-x64": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.4.tgz", - "integrity": "sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.2.4.tgz", + "integrity": "sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==", "cpu": [ "x64" ], @@ -408,9 +303,9 @@ } }, "node_modules/@img/sharp-linux-arm": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.5.tgz", - "integrity": "sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==", + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.5.tgz", + "integrity": "sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==", "cpu": [ "arm" ], @@ -426,13 +321,13 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-libvips-linux-arm": "1.0.5" + "@img/sharp-libvips-linux-arm": "1.2.4" } }, "node_modules/@img/sharp-linux-arm64": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.5.tgz", - "integrity": "sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==", + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.5.tgz", + "integrity": "sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==", "cpu": [ "arm64" ], @@ -448,13 +343,57 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-libvips-linux-arm64": "1.0.4" + "@img/sharp-libvips-linux-arm64": "1.2.4" + } + }, + "node_modules/@img/sharp-linux-ppc64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.34.5.tgz", + "integrity": "sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==", + "cpu": [ + "ppc64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-ppc64": "1.2.4" + } + }, + "node_modules/@img/sharp-linux-riscv64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-riscv64/-/sharp-linux-riscv64-0.34.5.tgz", + "integrity": "sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==", + "cpu": [ + "riscv64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-riscv64": "1.2.4" } }, "node_modules/@img/sharp-linux-s390x": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.5.tgz", - "integrity": "sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==", + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.5.tgz", + "integrity": "sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==", "cpu": [ "s390x" ], @@ -470,13 +409,13 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-libvips-linux-s390x": "1.0.4" + "@img/sharp-libvips-linux-s390x": "1.2.4" } }, "node_modules/@img/sharp-linux-x64": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.5.tgz", - "integrity": "sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==", + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.5.tgz", + "integrity": "sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==", "cpu": [ "x64" ], @@ -492,13 +431,13 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-libvips-linux-x64": "1.0.4" + "@img/sharp-libvips-linux-x64": "1.2.4" } }, "node_modules/@img/sharp-linuxmusl-arm64": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.5.tgz", - "integrity": "sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==", + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.5.tgz", + "integrity": "sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==", "cpu": [ "arm64" ], @@ -514,13 +453,13 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-libvips-linuxmusl-arm64": "1.0.4" + "@img/sharp-libvips-linuxmusl-arm64": "1.2.4" } }, "node_modules/@img/sharp-linuxmusl-x64": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.5.tgz", - "integrity": "sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==", + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.5.tgz", + "integrity": "sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==", "cpu": [ "x64" ], @@ -536,21 +475,40 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-libvips-linuxmusl-x64": "1.0.4" + "@img/sharp-libvips-linuxmusl-x64": "1.2.4" } }, "node_modules/@img/sharp-wasm32": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.33.5.tgz", - "integrity": "sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==", + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.34.5.tgz", + "integrity": "sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==", "cpu": [ "wasm32" ], "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT", "optional": true, "dependencies": { - "@emnapi/runtime": "^1.2.0" + "@emnapi/runtime": "^1.7.0" + }, + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-arm64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.5.tgz", + "integrity": "sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], "engines": { "node": "^18.17.0 || ^20.3.0 || >=21.0.0" }, @@ -559,9 +517,9 @@ } }, "node_modules/@img/sharp-win32-ia32": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.5.tgz", - "integrity": "sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==", + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.5.tgz", + "integrity": "sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg==", "cpu": [ "ia32" ], @@ -578,9 +536,9 @@ } }, "node_modules/@img/sharp-win32-x64": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.5.tgz", - "integrity": "sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==", + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.5.tgz", + "integrity": "sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw==", "cpu": [ "x64" ], @@ -636,32 +594,34 @@ } }, "node_modules/@napi-rs/wasm-runtime": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.1.tgz", - "integrity": "sha512-p64ah1M1ld8xjWv3qbvFwHiFVWrq1yFvV4f7w+mzaqiR4IlSgkqhcRdHwsGgomwzBH51sRY4NEowLxnaBjcW/A==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.2.tgz", + "integrity": "sha512-sNXv5oLJ7ob93xkZ1XnxisYhGYXfaG9f65/ZgYuAu3qt7b3NadcOEhLvx28hv31PgX8SZJRYrAIPQilQmFpLVw==", "dev": true, "license": "MIT", "optional": true, "dependencies": { - "@emnapi/core": "^1.7.1", - "@emnapi/runtime": "^1.7.1", "@tybys/wasm-util": "^0.10.1" }, "funding": { "type": "github", "url": "https://github.com/sponsors/Brooooooklyn" + }, + "peerDependencies": { + "@emnapi/core": "^1.7.1", + "@emnapi/runtime": "^1.7.1" } }, "node_modules/@next/env": { - "version": "15.1.9", - "resolved": "https://registry.npmjs.org/@next/env/-/env-15.1.9.tgz", - "integrity": "sha512-Te1wbiJ//I40T7UePOUG8QBwh+VVMCc0OTuqesOcD3849TVOVOyX4Hdrkx7wcpLpy/LOABIcGyLX5P/SzzXhFA==", + "version": "16.2.2", + "resolved": "https://registry.npmjs.org/@next/env/-/env-16.2.2.tgz", + "integrity": "sha512-LqSGz5+xGk9EL/iBDr2yo/CgNQV6cFsNhRR2xhSXYh7B/hb4nePCxlmDvGEKG30NMHDFf0raqSyOZiQrO7BkHQ==", "license": "MIT" }, "node_modules/@next/swc-darwin-arm64": { - "version": "15.1.9", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-15.1.9.tgz", - "integrity": "sha512-sQF6MfW4nk0PwMYYq8xNgqyxZJGIJV16QqNDgaZ5ze9YoVzm4/YNx17X0exZudayjL9PF0/5RGffDtzXapch0Q==", + "version": "16.2.2", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-16.2.2.tgz", + "integrity": "sha512-B92G3ulrwmkDSEJEp9+XzGLex5wC1knrmCSIylyVeiAtCIfvEJYiN3v5kXPlYt5R4RFlsfO/v++aKV63Acrugg==", "cpu": [ "arm64" ], @@ -675,9 +635,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "15.1.9", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-15.1.9.tgz", - "integrity": "sha512-fp0c1rB6jZvdSDhprOur36xzQvqelAkNRXM/An92sKjjtaJxjlqJR8jiQLQImPsClIu8amQn+ZzFwl1lsEf62w==", + "version": "16.2.2", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-16.2.2.tgz", + "integrity": "sha512-7ZwSgNKJNQiwW0CKhNm9B1WS2L1Olc4B2XY0hPYCAL3epFnugMhuw5TMWzMilQ3QCZcCHoYm9NGWTHbr5REFxw==", "cpu": [ "x64" ], @@ -691,9 +651,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "15.1.9", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-15.1.9.tgz", - "integrity": "sha512-77rYykF6UtaXvxh9YyRIKoaYPI6/YX6cy8j1DL5/1XkjbfOwFDfTEhH7YGPqG/ePl+emBcbDYC2elgEqY2e+ag==", + "version": "16.2.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-16.2.2.tgz", + "integrity": "sha512-c3m8kBHMziMgo2fICOP/cd/5YlrxDU5YYjAJeQLyFsCqVF8xjOTH/QYG4a2u48CvvZZSj1eHQfBCbyh7kBr30Q==", "cpu": [ "arm64" ], @@ -707,9 +667,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "15.1.9", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-15.1.9.tgz", - "integrity": "sha512-uZ1HazKcyWC7RA6j+S/8aYgvxmDqwnG+gE5S9MhY7BTMj7ahXKunpKuX8/BA2M7OvINLv7LTzoobQbw928p3WA==", + "version": "16.2.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-16.2.2.tgz", + "integrity": "sha512-VKLuscm0P/mIfzt+SDdn2+8TNNJ7f0qfEkA+az7OqQbjzKdBxAHs0UvuiVoCtbwX+dqMEL9U54b5wQ/aN3dHeg==", "cpu": [ "arm64" ], @@ -723,9 +683,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "15.1.9", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-15.1.9.tgz", - "integrity": "sha512-gQIX1d3ct2RBlgbbWOrp+SHExmtmFm/HSW1Do5sSGMDyzbkYhS2sdq5LRDJWWsQu+/MqpgJHqJT6ORolKp/U1g==", + "version": "16.2.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-16.2.2.tgz", + "integrity": "sha512-kU3OPHJq6sBUjOk7wc5zJ7/lipn8yGldMoAv4z67j6ov6Xo/JvzA7L7LCsyzzsXmgLEhk3Qkpwqaq/1+XpNR3g==", "cpu": [ "x64" ], @@ -739,9 +699,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "15.1.9", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-15.1.9.tgz", - "integrity": "sha512-fJOwxAbCeq6Vo7pXZGDP6iA4+yIBGshp7ie2Evvge7S7lywyg7b/SGqcvWq/jYcmd0EbXdb7hBfdqSQwTtGTPg==", + "version": "16.2.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-16.2.2.tgz", + "integrity": "sha512-CKXRILyErMtUftp+coGcZ38ZwE/Aqq45VMCcRLr2I4OXKrgxIBDXHnBgeX/UMil0S09i2JXaDL3Q+TN8D/cKmg==", "cpu": [ "x64" ], @@ -755,9 +715,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "15.1.9", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-15.1.9.tgz", - "integrity": "sha512-crfbUkAd9PVg9nGfyjSzQbz82dPvc4pb1TeP0ZaAdGzTH6OfTU9kxidpFIogw0DYIEadI7hRSvuihy2NezkaNQ==", + "version": "16.2.2", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-16.2.2.tgz", + "integrity": "sha512-sS/jSk5VUoShUqINJFvNjVT7JfR5ORYj/+/ZpOYbbIohv/lQfduWnGAycq2wlknbOql2xOR0DoV0s6Xfcy49+g==", "cpu": [ "arm64" ], @@ -771,9 +731,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "15.1.9", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-15.1.9.tgz", - "integrity": "sha512-SBB0oA4E2a0axUrUwLqXlLkSn+bRx9OWU6LheqmRrO53QEAJP7JquKh3kF0jRzmlYOWFZtQwyIWJMEJMtvvDcQ==", + "version": "16.2.2", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-16.2.2.tgz", + "integrity": "sha512-aHaKceJgdySReT7qeck5oShucxWRiiEuwCGK8HHALe6yZga8uyFpLkPgaRw3kkF04U7ROogL/suYCNt/+CuXGA==", "cpu": [ "x64" ], @@ -787,19 +747,53 @@ } }, "node_modules/@oxc-project/types": { - "version": "0.107.0", - "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.107.0.tgz", - "integrity": "sha512-QFDRbYfV2LVx8tyqtyiah3jQPUj1mK2+RYwxyFWyGoys6XJnwTdlzO6rdNNHOPorHAu5Uo34oWRKcvNpbJarmQ==", + "version": "0.122.0", + "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.122.0.tgz", + "integrity": "sha512-oLAl5kBpV4w69UtFZ9xqcmTi+GENWOcPF7FCrczTiBbmC0ibXxCwyvZGbO39rCVEuLGAZM84DH0pUIyyv/YJzA==", "dev": true, "license": "MIT", "funding": { "url": "https://github.com/sponsors/Boshen" } }, - "node_modules/@oxlint/darwin-arm64": { - "version": "1.39.0", - "resolved": "https://registry.npmjs.org/@oxlint/darwin-arm64/-/darwin-arm64-1.39.0.tgz", - "integrity": "sha512-lT3hNhIa02xCujI6YGgjmYGg3Ht/X9ag5ipUVETaMpx5Rd4BbTNWUPif1WN1YZHxt3KLCIqaAe7zVhatv83HOQ==", + "node_modules/@oxfmt/binding-android-arm-eabi": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-android-arm-eabi/-/binding-android-arm-eabi-0.43.0.tgz", + "integrity": "sha512-CgU2s+/9hHZgo0IxVxrbMPrMj+tJ6VM3mD7Mr/4oiz4FNTISLoCvRmB5nk4wAAle045RtRjd86m673jwPyb1OQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxfmt/binding-android-arm64": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-android-arm64/-/binding-android-arm64-0.43.0.tgz", + "integrity": "sha512-T9OfRwjA/EdYxAqbvR7TtqLv5nIrwPXuCtTwOHtS7aR9uXyn74ZYgzgTo6/ZwvTq9DY4W+DsV09hB2EXgn9EbA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxfmt/binding-darwin-arm64": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-darwin-arm64/-/binding-darwin-arm64-0.43.0.tgz", + "integrity": "sha512-o3i49ZUSJWANzXMAAVY1wnqb65hn4JVzwlRQ5qfcwhRzIA8lGVaud31Q3by5ALHPrksp5QEaKCQF9aAS3TXpZA==", "cpu": [ "arm64" ], @@ -808,12 +802,15 @@ "optional": true, "os": [ "darwin" - ] + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, - "node_modules/@oxlint/darwin-x64": { - "version": "1.39.0", - "resolved": "https://registry.npmjs.org/@oxlint/darwin-x64/-/darwin-x64-1.39.0.tgz", - "integrity": "sha512-UT+rfTWd+Yr7iJeSLd/7nF8X4gTYssKh+n77hxl6Oilp3NnG1CKRHxZDy3o3lIBnwgzJkdyUAiYWO1bTMXQ1lA==", + "node_modules/@oxfmt/binding-darwin-x64": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-darwin-x64/-/binding-darwin-x64-0.43.0.tgz", + "integrity": "sha512-vWECzzCFkb0kK6jaHjbtC5sC3adiNWtqawFCxhpvsWlzVeKmv5bNvkB4nux+o4JKWTpHCM57NDK/MeXt44txmA==", "cpu": [ "x64" ], @@ -822,68 +819,83 @@ "optional": true, "os": [ "darwin" - ] + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, - "node_modules/@oxlint/linux-arm64-gnu": { - "version": "1.39.0", - "resolved": "https://registry.npmjs.org/@oxlint/linux-arm64-gnu/-/linux-arm64-gnu-1.39.0.tgz", - "integrity": "sha512-qocBkvS2V6rH0t9AT3DfQunMnj3xkM7srs5/Ycj2j5ZqMoaWd/FxHNVJDFP++35roKSvsRJoS0mtA8/77jqm6Q==", + "node_modules/@oxfmt/binding-freebsd-x64": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-freebsd-x64/-/binding-freebsd-x64-0.43.0.tgz", + "integrity": "sha512-rgz8JpkKiI/umOf7fl9gwKyQasC8bs5SYHy6g7e4SunfLBY3+8ATcD5caIg8KLGEtKFm5ujKaH8EfjcmnhzTLg==", "cpu": [ - "arm64" + "x64" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "linux" - ] + "freebsd" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, - "node_modules/@oxlint/linux-arm64-musl": { - "version": "1.39.0", - "resolved": "https://registry.npmjs.org/@oxlint/linux-arm64-musl/-/linux-arm64-musl-1.39.0.tgz", - "integrity": "sha512-arZzAc1PPcz9epvGBBCMHICeyQloKtHX3eoOe62B3Dskn7gf6Q14wnDHr1r9Vp4vtcBATNq6HlKV14smdlC/qA==", + "node_modules/@oxfmt/binding-linux-arm-gnueabihf": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.43.0.tgz", + "integrity": "sha512-nWYnF3vIFzT4OM1qL/HSf1Yuj96aBuKWSaObXHSWliwAk2rcj7AWd6Lf7jowEBQMo4wCZVnueIGw/7C4u0KTBQ==", "cpu": [ - "arm64" + "arm" ], "dev": true, "license": "MIT", "optional": true, "os": [ "linux" - ] + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, - "node_modules/@oxlint/linux-x64-gnu": { - "version": "1.39.0", - "resolved": "https://registry.npmjs.org/@oxlint/linux-x64-gnu/-/linux-x64-gnu-1.39.0.tgz", - "integrity": "sha512-ZVt5qsECpuNprdWxAPpDBwoixr1VTcZ4qAEQA2l/wmFyVPDYFD3oBY/SWACNnWBddMrswjTg9O8ALxYWoEpmXw==", + "node_modules/@oxfmt/binding-linux-arm-musleabihf": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.43.0.tgz", + "integrity": "sha512-sFg+NWJbLfupYTF4WELHAPSnLPOn1jiDZ33Z1jfDnTaA+cC3iB35x0FMMZTFdFOz3icRIArncwCcemJFGXu6TQ==", "cpu": [ - "x64" + "arm" ], "dev": true, "license": "MIT", "optional": true, "os": [ "linux" - ] + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, - "node_modules/@oxlint/linux-x64-musl": { - "version": "1.39.0", - "resolved": "https://registry.npmjs.org/@oxlint/linux-x64-musl/-/linux-x64-musl-1.39.0.tgz", - "integrity": "sha512-pB0hlGyKPbxr9NMIV783lD6cWL3MpaqnZRM9MWni4yBdHPTKyFNYdg5hGD0Bwg+UP4S2rOevq/+OO9x9Bi7E6g==", + "node_modules/@oxfmt/binding-linux-arm64-gnu": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.43.0.tgz", + "integrity": "sha512-MelWqv68tX6wZEILDrTc9yewiGXe7im62+5x0bNXlCYFOZdA+VnYiJfAihbROsZ5fm90p9C3haFrqjj43XnlAA==", "cpu": [ - "x64" + "arm64" ], "dev": true, "license": "MIT", "optional": true, "os": [ "linux" - ] + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, - "node_modules/@oxlint/win32-arm64": { - "version": "1.39.0", - "resolved": "https://registry.npmjs.org/@oxlint/win32-arm64/-/win32-arm64-1.39.0.tgz", - "integrity": "sha512-Gg2SFaJohI9+tIQVKXlPw3FsPQFi/eCSWiCgwPtPn5uzQxHRTeQEZKuluz1fuzR5U70TXubb2liZi4Dgl8LJQA==", + "node_modules/@oxfmt/binding-linux-arm64-musl": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.43.0.tgz", + "integrity": "sha512-ROaWfYh+6BSJ1Arwy5ujijTlwnZetxDxzBpDc1oBR4d7rfrPBqzeyjd5WOudowzQUgyavl2wEpzn1hw3jWcqLA==", "cpu": [ "arm64" ], @@ -891,93 +903,118 @@ "license": "MIT", "optional": true, "os": [ - "win32" - ] + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, - "node_modules/@oxlint/win32-x64": { - "version": "1.39.0", - "resolved": "https://registry.npmjs.org/@oxlint/win32-x64/-/win32-x64-1.39.0.tgz", - "integrity": "sha512-sbi25lfj74hH+6qQtb7s1wEvd1j8OQbTaH8v3xTcDjrwm579Cyh0HBv1YSZ2+gsnVwfVDiCTL1D0JsNqYXszVA==", + "node_modules/@oxfmt/binding-linux-ppc64-gnu": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-0.43.0.tgz", + "integrity": "sha512-PJRs/uNxmFipJJ8+SyKHh7Y7VZIKQicqrrBzvfyM5CtKi8D7yZKTwUOZV3ffxmiC2e7l1SDJpkBEOyue5NAFsg==", "cpu": [ - "x64" + "ppc64" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "win32" - ] - }, - "node_modules/@playwright/test": { - "version": "1.57.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.57.0.tgz", - "integrity": "sha512-6TyEnHgd6SArQO8UO2OMTxshln3QMWBtPGrOCgs3wVEmQmwyuNtB10IZMfmYDE0riwNR1cu4q+pPcxMVtaG3TA==", - "devOptional": true, - "license": "Apache-2.0", - "dependencies": { - "playwright": "1.57.0" - }, - "bin": { - "playwright": "cli.js" - }, + "linux" + ], "engines": { - "node": ">=18" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@prismicio/client": { - "version": "7.21.3", - "resolved": "https://registry.npmjs.org/@prismicio/client/-/client-7.21.3.tgz", - "integrity": "sha512-OQ/c+dfUcexYFEAhrN+0DrrKwEF5nHabOMJxAPXACpaVg9+itX2PX7YCqUXYEj7DTfOVTRbxyCyKqWprVtMi/w==", - "license": "Apache-2.0", - "dependencies": { - "imgix-url-builder": "^0.0.6" - }, + "node_modules/@oxfmt/binding-linux-riscv64-gnu": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.43.0.tgz", + "integrity": "sha512-j6biGAgzIhj+EtHXlbNumvwG7XqOIdiU4KgIWRXAEj/iUbHKukKW8eXa4MIwpQwW1YkxovduKtzEAPnjlnAhVQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=14.15.0" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@prismicio/react": { - "resolved": "", - "link": true + "node_modules/@oxfmt/binding-linux-riscv64-musl": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-riscv64-musl/-/binding-linux-riscv64-musl-0.43.0.tgz", + "integrity": "sha512-RYWxAcslKxvy7yri24Xm9cmD0RiANaiEPs007EFG6l9h1ChM69Q5SOzACaCoz4Z9dEplnhhneeBaTWMEdpgIbA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, - "node_modules/@prismicio/types-internal": { - "version": "3.16.1", - "resolved": "https://registry.npmjs.org/@prismicio/types-internal/-/types-internal-3.16.1.tgz", - "integrity": "sha512-oS/PRtsF8V58j5MDOpWVKlIxUBmVExvn5ylOJsiPoGCEGMcY67MxkcI+LdNoB/wigckpPBwOisLhHlr6M70TZw==", + "node_modules/@oxfmt/binding-linux-s390x-gnu": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.43.0.tgz", + "integrity": "sha512-DT6Q8zfQQy3jxpezAsBACEHNUUixKSYTwdXeXojNHe4DQOoxjPdjr3Szu6BRNjxLykZM/xMNmp9ElOIyDppwtw==", + "cpu": [ + "s390x" + ], "dev": true, - "license": "Apache-2.0", - "dependencies": { - "monocle-ts": "^2.3.11", - "newtype-ts": "^0.3.5", - "tslib": "^2.3.1", - "uuid": "^9.0.0" - }, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=12.7.0" - }, - "peerDependencies": { - "fp-ts": "^2.11.8", - "io-ts": "^2.2.16", - "io-ts-types": "^0.5.16" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@quansync/fs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@quansync/fs/-/fs-1.0.0.tgz", - "integrity": "sha512-4TJ3DFtlf1L5LDMaM6CanJ/0lckGNtJcMjQ1NAV6zDmA0tEHKZtxNKin8EgPaVX1YzljbxckyT2tJrpQKAtngQ==", + "node_modules/@oxfmt/binding-linux-x64-gnu": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.43.0.tgz", + "integrity": "sha512-R8Yk7iYcuZORXmCfFZClqbDxRZgZ9/HEidUuBNdoX8Ptx07cMePnMVJ/woB84lFIDjh2ROHVaOP40Ds3rBXFqg==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", - "dependencies": { - "quansync": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sxzz" + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@rolldown/binding-android-arm64": { - "version": "1.0.0-beta.59", - "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-beta.59.tgz", - "integrity": "sha512-6yLLgyswYwiCfls9+hoNFY9F8TQdwo15hpXDHzlAR0X/GojeKF+AuNcXjYNbOJ4zjl/5D6lliE8CbpB5t1OWIQ==", + "node_modules/@oxfmt/binding-linux-x64-musl": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-x64-musl/-/binding-linux-x64-musl-0.43.0.tgz", + "integrity": "sha512-F2YYqyvnQNvi320RWZNAvsaWEHwmW3k4OwNJ1hZxRKXupY63expbBaNp6jAgvYs7y/g546vuQnGHQuCBhslhLQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxfmt/binding-openharmony-arm64": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-openharmony-arm64/-/binding-openharmony-arm64-0.43.0.tgz", + "integrity": "sha512-OE6TdietLXV3F6c7pNIhx/9YC1/2YFwjU9DPc/fbjxIX19hNIaP1rS0cFjCGJlGX+cVJwIKWe8Mos+LdQ1yAJw==", "cpu": [ "arm64" ], @@ -985,16 +1022,16 @@ "license": "MIT", "optional": true, "os": [ - "android" + "openharmony" ], "engines": { "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@rolldown/binding-darwin-arm64": { - "version": "1.0.0-beta.59", - "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-beta.59.tgz", - "integrity": "sha512-hqGXRc162qCCIOAcHN2Cw4eXiVTwYsMFLOhAy1IG2CxY+dwc/l4Ga+dLPkLor3Ikqy5WDn+7kxHbbh6EmshEpQ==", + "node_modules/@oxfmt/binding-win32-arm64-msvc": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.43.0.tgz", + "integrity": "sha512-0nWK6a7pGkbdoypfVicmV9k/N1FwjPZENoqhlTU+5HhZnAhpIO3za30nEE33u6l6tuy9OVfpdXUqxUgZ+4lbZw==", "cpu": [ "arm64" ], @@ -1002,33 +1039,33 @@ "license": "MIT", "optional": true, "os": [ - "darwin" + "win32" ], "engines": { "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@rolldown/binding-darwin-x64": { - "version": "1.0.0-beta.59", - "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-beta.59.tgz", - "integrity": "sha512-ezvvGuhteE15JmMhJW0wS7BaXmhwLy1YHeEwievYaPC1PgGD86wgBKfOpHr9tSKllAXbCe0BeeMvasscWLhKdA==", + "node_modules/@oxfmt/binding-win32-ia32-msvc": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-0.43.0.tgz", + "integrity": "sha512-9aokTR4Ft+tRdvgN/pKzSkVy2ksc4/dCpDm9L/xFrbIw0yhLtASLbvoG/5WOTUh/BRPPnfGTsWznEqv0dlOmhA==", "cpu": [ - "x64" + "ia32" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "darwin" + "win32" ], "engines": { "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@rolldown/binding-freebsd-x64": { - "version": "1.0.0-beta.59", - "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-beta.59.tgz", - "integrity": "sha512-4fhKVJiEYVd5n6no/mrL3LZ9kByfCGwmONOrdtvx8DJGDQhehH/q3RfhG3V/4jGKhpXgbDjpIjkkFdybCTcgew==", + "node_modules/@oxfmt/binding-win32-x64-msvc": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@oxfmt/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.43.0.tgz", + "integrity": "sha512-4bPgdQux2ZLWn3bf2TTXXMHcJB4lenmuxrLqygPmvCJ104Yqzj1UctxSRzR31TiJ4MLaG22RK8dUsVpJtrCz5g==", "cpu": [ "x64" ], @@ -1036,16 +1073,16 @@ "license": "MIT", "optional": true, "os": [ - "freebsd" + "win32" ], "engines": { "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@rolldown/binding-linux-arm-gnueabihf": { - "version": "1.0.0-beta.59", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-beta.59.tgz", - "integrity": "sha512-T3Y52sW6JAhvIqArBw+wtjNU1Ieaz4g0NBxyjSJoW971nZJBZygNlSYx78G4cwkCmo1dYTciTPDOnQygLV23pA==", + "node_modules/@oxlint/binding-android-arm-eabi": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-android-arm-eabi/-/binding-android-arm-eabi-1.58.0.tgz", + "integrity": "sha512-1T7UN3SsWWxpWyWGn1cT3ASNJOo+pI3eUkmEl7HgtowapcV8kslYpFQcYn431VuxghXakPNlbjRwhqmR37PFOg==", "cpu": [ "arm" ], @@ -1053,16 +1090,16 @@ "license": "MIT", "optional": true, "os": [ - "linux" + "android" ], "engines": { "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@rolldown/binding-linux-arm64-gnu": { - "version": "1.0.0-beta.59", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-beta.59.tgz", - "integrity": "sha512-NIW40jQDSQap2KDdmm9z3B/4OzWJ6trf8dwx3FD74kcQb3v34ThsBFTtzE5KjDuxnxgUlV+DkAu+XgSMKrgufw==", + "node_modules/@oxlint/binding-android-arm64": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-android-arm64/-/binding-android-arm64-1.58.0.tgz", + "integrity": "sha512-GryzujxuiRv2YFF7bRy8mKcxlbuAN+euVUtGJt9KKbLT8JBUIosamVhcthLh+VEr6KE6cjeVMAQxKAzJcoN7dg==", "cpu": [ "arm64" ], @@ -1070,16 +1107,16 @@ "license": "MIT", "optional": true, "os": [ - "linux" + "android" ], "engines": { "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@rolldown/binding-linux-arm64-musl": { - "version": "1.0.0-beta.59", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-beta.59.tgz", - "integrity": "sha512-CCKEk+H+8c0WGe/8n1E20n85Tq4Pv+HNAbjP1KfUXW+01aCWSMjU56ChNrM2tvHnXicfm7QRNoZyfY8cWh7jLQ==", + "node_modules/@oxlint/binding-darwin-arm64": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-darwin-arm64/-/binding-darwin-arm64-1.58.0.tgz", + "integrity": "sha512-7/bRSJIwl4GxeZL9rPZ11anNTyUO9epZrfEJH/ZMla3+/gbQ6xZixh9nOhsZ0QwsTW7/5J2A/fHbD1udC5DQQA==", "cpu": [ "arm64" ], @@ -1087,16 +1124,16 @@ "license": "MIT", "optional": true, "os": [ - "linux" + "darwin" ], "engines": { "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@rolldown/binding-linux-x64-gnu": { - "version": "1.0.0-beta.59", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-beta.59.tgz", - "integrity": "sha512-VlfwJ/HCskPmQi8R0JuAFndySKVFX7yPhE658o27cjSDWWbXVtGkSbwaxstii7Q+3Rz87ZXN+HLnb1kd4R9Img==", + "node_modules/@oxlint/binding-darwin-x64": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-darwin-x64/-/binding-darwin-x64-1.58.0.tgz", + "integrity": "sha512-EqdtJSiHweS2vfILNrpyJ6HUwpEq2g7+4Zx1FPi4hu3Hu7tC3znF6ufbXO8Ub2LD4mGgznjI7kSdku9NDD1Mkg==", "cpu": [ "x64" ], @@ -1104,16 +1141,16 @@ "license": "MIT", "optional": true, "os": [ - "linux" + "darwin" ], "engines": { "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@rolldown/binding-linux-x64-musl": { - "version": "1.0.0-beta.59", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-beta.59.tgz", - "integrity": "sha512-kuO92hTRyGy0Ts3Nsqll0rfO8eFsEJe9dGQGktkQnZ2hrJrDVN0y419dMgKy/gB2S2o7F2dpWhpfQOBehZPwVA==", + "node_modules/@oxlint/binding-freebsd-x64": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-freebsd-x64/-/binding-freebsd-x64-1.58.0.tgz", + "integrity": "sha512-VQt5TH4M42mY20F545G637RKxV/yjwVtKk2vfXuazfReSIiuvWBnv+FVSvIV5fKVTJNjt3GSJibh6JecbhGdBw==", "cpu": [ "x64" ], @@ -1121,50 +1158,50 @@ "license": "MIT", "optional": true, "os": [ - "linux" + "freebsd" ], "engines": { "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@rolldown/binding-openharmony-arm64": { - "version": "1.0.0-beta.59", - "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-beta.59.tgz", - "integrity": "sha512-PXAebvNL4sYfCqi8LdY4qyFRacrRoiPZLo3NoUmiTxm7MPtYYR8CNtBGNokqDmMuZIQIecRaD/jbmFAIDz7DxQ==", + "node_modules/@oxlint/binding-linux-arm-gnueabihf": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.58.0.tgz", + "integrity": "sha512-fBYcj4ucwpAtjJT3oeBdFBYKvNyjRSK+cyuvBOTQjh0jvKp4yeA4S/D0IsCHus/VPaNG5L48qQkh+Vjy3HL2/Q==", "cpu": [ - "arm64" + "arm" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "openharmony" + "linux" ], "engines": { "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@rolldown/binding-wasm32-wasi": { - "version": "1.0.0-beta.59", - "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-beta.59.tgz", - "integrity": "sha512-yJoklQg7XIZq8nAg0bbkEXcDK6sfpjxQGxpg2Nd6ERNtvg+eOaEBRgPww0BVTrYFQzje1pB5qPwC2VnJHT3koQ==", + "node_modules/@oxlint/binding-linux-arm-musleabihf": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-1.58.0.tgz", + "integrity": "sha512-0BeuFfwlUHlJ1xpEdSD1YO3vByEFGPg36uLjK1JgFaxFb4W6w17F8ET8sz5cheZ4+x5f2xzdnRrrWv83E3Yd8g==", "cpu": [ - "wasm32" + "arm" ], "dev": true, "license": "MIT", "optional": true, - "dependencies": { - "@napi-rs/wasm-runtime": "^1.1.1" - }, + "os": [ + "linux" + ], "engines": { - "node": ">=14.0.0" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@rolldown/binding-win32-arm64-msvc": { - "version": "1.0.0-beta.59", - "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-beta.59.tgz", - "integrity": "sha512-ljZ4+McmCbIuZwEBaoGtiG8Rq2nJjaXEnLEIx+usWetXn1ECjXY0LAhkELxOV6ytv4ensEmoJJ8nXg47hRMjlw==", + "node_modules/@oxlint/binding-linux-arm64-gnu": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.58.0.tgz", + "integrity": "sha512-TXlZgnPTlxrQzxG9ZXU7BNwx1Ilrr17P3GwZY0If2EzrinqRH3zXPc3HrRcBJgcsoZNMuNL5YivtkJYgp467UQ==", "cpu": [ "arm64" ], @@ -1172,547 +1209,612 @@ "license": "MIT", "optional": true, "os": [ - "win32" + "linux" ], "engines": { "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@rolldown/binding-win32-x64-msvc": { - "version": "1.0.0-beta.59", - "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-beta.59.tgz", - "integrity": "sha512-bMY4tTIwbdZljW+xe/ln1hvs0SRitahQSXfWtvgAtIzgSX9Ar7KqJzU7lRm33YTRFIHLULRi53yNjw9nJGd6uQ==", + "node_modules/@oxlint/binding-linux-arm64-musl": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.58.0.tgz", + "integrity": "sha512-zSoYRo5dxHLcUx93Stl2hW3hSNjPt99O70eRVWt5A1zwJ+FPjeCCANCD2a9R4JbHsdcl11TIQOjyigcRVOH2mw==", "cpu": [ - "x64" + "arm64" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "win32" + "linux" ], "engines": { "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@rolldown/pluginutils": { - "version": "1.0.0-beta.59", - "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.59.tgz", - "integrity": "sha512-aoh6LAJRyhtazs98ydgpNOYstxUlsOV1KJXcpf/0c0vFcUA8uyd/hwKRhqE/AAPNqAho9RliGsvitCoOzREoVA==", + "node_modules/@oxlint/binding-linux-ppc64-gnu": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.58.0.tgz", + "integrity": "sha512-NQ0U/lqxH2/VxBYeAIvMNUK1y0a1bJ3ZicqkF2c6wfakbEciP9jvIE4yNzCFpZaqeIeRYaV7AVGqEO1yrfVPjA==", + "cpu": [ + "ppc64" + ], "dev": true, - "license": "MIT" - }, - "node_modules/@swc/counter": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz", - "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==", - "license": "Apache-2.0" - }, - "node_modules/@swc/helpers": { - "version": "0.5.15", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.15.tgz", - "integrity": "sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.8.0" + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@trivago/prettier-plugin-sort-imports": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@trivago/prettier-plugin-sort-imports/-/prettier-plugin-sort-imports-6.0.2.tgz", - "integrity": "sha512-3DgfkukFyC/sE/VuYjaUUWoFfuVjPK55vOFDsxD56XXynFMCZDYFogH2l/hDfOsQAm1myoU/1xByJ3tWqtulXA==", + "node_modules/@oxlint/binding-linux-riscv64-gnu": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-1.58.0.tgz", + "integrity": "sha512-X9J+kr3gIC9FT8GuZt0ekzpNUtkBVzMVU4KiKDSlocyQuEgi3gBbXYN8UkQiV77FTusLDPsovjo95YedHr+3yg==", + "cpu": [ + "riscv64" + ], "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@babel/generator": "^7.28.0", - "@babel/parser": "^7.28.0", - "@babel/traverse": "^7.28.0", - "@babel/types": "^7.28.0", - "javascript-natural-sort": "^0.7.1", - "lodash-es": "^4.17.21", - "minimatch": "^9.0.0", - "parse-imports-exports": "^0.2.4" - }, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">= 20" - }, - "peerDependencies": { - "@vue/compiler-sfc": "3.x", - "prettier": "2.x - 3.x", - "prettier-plugin-ember-template-tag": ">= 2.0.0", - "prettier-plugin-svelte": "3.x", - "svelte": "4.x || 5.x" - }, - "peerDependenciesMeta": { - "@vue/compiler-sfc": { - "optional": true - }, - "prettier-plugin-ember-template-tag": { - "optional": true - }, - "prettier-plugin-svelte": { - "optional": true - }, - "svelte": { - "optional": true - } + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@tybys/wasm-util": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", - "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", + "node_modules/@oxlint/binding-linux-riscv64-musl": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-riscv64-musl/-/binding-linux-riscv64-musl-1.58.0.tgz", + "integrity": "sha512-CDze3pi1OO3Wvb/QsXjmLEY4XPKGM6kIo82ssNOgmcl1IdndF9VSGAE38YLhADWmOac7fjqhBw82LozuUVxD0Q==", + "cpu": [ + "riscv64" + ], "dev": true, "license": "MIT", "optional": true, - "dependencies": { - "tslib": "^2.4.0" + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@types/debug": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", - "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "node_modules/@oxlint/binding-linux-s390x-gnu": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.58.0.tgz", + "integrity": "sha512-b/89glbxFaEAcA6Uf1FvCNecBJEgcUTsV1quzrqXM/o4R1M4u+2KCVuyGCayN2UpsRWtGGLb+Ver0tBBpxaPog==", + "cpu": [ + "s390x" + ], "dev": true, "license": "MIT", - "dependencies": { - "@types/ms": "*" + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@types/mdast": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", - "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", + "node_modules/@oxlint/binding-linux-x64-gnu": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.58.0.tgz", + "integrity": "sha512-0/yYpkq9VJFCEcuRlrViGj8pJUFFvNS4EkEREaN7CB1EcLXJIaVSSa5eCihwBGXtOZxhnblWgxks9juRdNQI7w==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", - "dependencies": { - "@types/unist": "*" + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@types/ms": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz", - "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/node": { - "version": "22.19.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.6.tgz", - "integrity": "sha512-qm+G8HuG6hOHQigsi7VGuLjUVu6TtBo/F05zvX04Mw2uCg9Dv0Qxy3Qw7j41SidlTcl5D/5yg0SEZqOB+EqZnQ==", + "node_modules/@oxlint/binding-linux-x64-musl": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-x64-musl/-/binding-linux-x64-musl-1.58.0.tgz", + "integrity": "sha512-hr6FNvmcAXiH+JxSvaJ4SJ1HofkdqEElXICW9sm3/Rd5eC3t7kzvmLyRAB3NngKO2wzXRCAm4Z/mGWfrsS4X8w==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", - "dependencies": { - "undici-types": "~6.21.0" + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@types/react": { - "version": "19.2.8", - "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.8.tgz", - "integrity": "sha512-3MbSL37jEchWZz2p2mjntRZtPt837ij10ApxKfgmXCTuHWagYg7iA5bqPw6C8BMPfwidlvfPI/fxOc42HLhcyg==", + "node_modules/@oxlint/binding-openharmony-arm64": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-openharmony-arm64/-/binding-openharmony-arm64-1.58.0.tgz", + "integrity": "sha512-R+O368VXgRql1K6Xar+FEo7NEwfo13EibPMoTv3sesYQedRXd6m30Dh/7lZMxnrQVFfeo4EOfYIP4FpcgWQNHg==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", - "dependencies": { - "csstype": "^3.2.2" + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@types/react-dom": { - "version": "19.2.3", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.2.3.tgz", - "integrity": "sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==", + "node_modules/@oxlint/binding-win32-arm64-msvc": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.58.0.tgz", + "integrity": "sha512-Q0FZiAY/3c4YRj4z3h9K1PgaByrifrfbBoODSeX7gy97UtB7pySPUQfC2B/GbxWU6k7CzQrRy5gME10PltLAFQ==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", - "peerDependencies": { - "@types/react": "^19.2.0" + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "node_modules/@oxlint/binding-win32-ia32-msvc": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-1.58.0.tgz", + "integrity": "sha512-Y8FKBABrSPp9H0QkRLHDHOSUgM/309a3IvOVgPcVxYcX70wxJrk608CuTg7w+C6vEd724X5wJoNkBcGYfH7nNQ==", + "cpu": [ + "ia32" + ], "dev": true, - "license": "MIT" - }, - "node_modules/ansis": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/ansis/-/ansis-4.2.0.tgz", - "integrity": "sha512-HqZ5rWlFjGiV0tDm3UxxgNRqsOTniqoKZu0pIAfh7TZQMGuZK+hH0drySty0si0QXj1ieop4+SkSfPZBPPkHig==", - "dev": true, - "license": "ISC", + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": ">=14" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/ast-kit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ast-kit/-/ast-kit-2.2.0.tgz", - "integrity": "sha512-m1Q/RaVOnTp9JxPX+F+Zn7IcLYMzM8kZofDImfsKZd8MbR+ikdOzTeztStWqfrqIxZnYWryyI9ePm3NGjnZgGw==", + "node_modules/@oxlint/binding-win32-x64-msvc": { + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.58.0.tgz", + "integrity": "sha512-bCn5rbiz5My+Bj7M09sDcnqW0QJyINRVxdZ65x1/Y2tGrMwherwK/lpk+HRQCKvXa8pcaQdF5KY5j54VGZLwNg==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@playwright/test": { + "version": "1.59.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.59.1.tgz", + "integrity": "sha512-PG6q63nQg5c9rIi4/Z5lR5IVF7yU5MqmKaPOe0HSc0O2cX1fPi96sUQu5j7eo4gKCkB2AnNGoWt7y4/Xx3Kcqg==", + "devOptional": true, + "license": "Apache-2.0", "dependencies": { - "@babel/parser": "^7.28.5", - "pathe": "^2.0.3" + "playwright": "1.59.1" + }, + "bin": { + "playwright": "cli.js" }, "engines": { - "node": ">=20.19.0" + "node": ">=18" + } + }, + "node_modules/@prismicio/client": { + "version": "7.21.7", + "resolved": "https://registry.npmjs.org/@prismicio/client/-/client-7.21.7.tgz", + "integrity": "sha512-gMaRiVTgArtNTkNQctUVYmi/YMqFOj48vWT1EluL9OVgh+sKKzOgzD1tuOX/Iyde2QPUfcqj7tH+3YQCvosvIw==", + "license": "Apache-2.0", + "dependencies": { + "imgix-url-builder": "^0.0.6" }, - "funding": { - "url": "https://github.com/sponsors/sxzz" + "engines": { + "node": ">=14.15.0" } }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true, - "license": "MIT" + "node_modules/@prismicio/react": { + "resolved": "", + "link": true }, - "node_modules/binary-searching": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/binary-searching/-/binary-searching-2.0.5.tgz", - "integrity": "sha512-v4N2l3RxL+m4zDxyxz3Ne2aTmiPn8ZUpKFpdPtO+ItW1NcTCXA7JeHG5GMBSvoKSkQZ9ycS+EouDVxYB9ufKWA==", + "node_modules/@prismicio/types-internal": { + "version": "3.17.0", + "resolved": "https://registry.npmjs.org/@prismicio/types-internal/-/types-internal-3.17.0.tgz", + "integrity": "sha512-JzZEzb6JgRlXFmXnzY5fGjq+84s1ShA0AUelZiyxTPCYZCJ7OGBsiIp12B81P7BOu3jhZqA4HaP+tRz9pgmqFQ==", "dev": true, - "license": "MIT" + "license": "Apache-2.0", + "dependencies": { + "monocle-ts": "^2.3.11", + "newtype-ts": "^0.3.5", + "tslib": "^2.3.1", + "uuid": "^9.0.0" + }, + "engines": { + "node": ">=12.7.0" + }, + "peerDependencies": { + "fp-ts": "^2.11.8", + "io-ts": "^2.2.16", + "io-ts-types": "^0.5.16" + } }, - "node_modules/birpc": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/birpc/-/birpc-4.0.0.tgz", - "integrity": "sha512-LShSxJP0KTmd101b6DRyGBj57LZxSDYWKitQNW/mi8GRMvZb078Uf9+pveax1DrVL89vm7mWe+TovdI/UDOuPw==", + "node_modules/@quansync/fs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@quansync/fs/-/fs-1.0.0.tgz", + "integrity": "sha512-4TJ3DFtlf1L5LDMaM6CanJ/0lckGNtJcMjQ1NAV6zDmA0tEHKZtxNKin8EgPaVX1YzljbxckyT2tJrpQKAtngQ==", "dev": true, "license": "MIT", + "dependencies": { + "quansync": "^1.0.0" + }, "funding": { - "url": "https://github.com/sponsors/antfu" + "url": "https://github.com/sponsors/sxzz" } }, - "node_modules/brace-expansion": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", - "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "node_modules/@rolldown/binding-android-arm64": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.12.tgz", + "integrity": "sha512-pv1y2Fv0JybcykuiiD3qBOBdz6RteYojRFY1d+b95WVuzx211CRh+ytI/+9iVyWQ6koTh5dawe4S/yRfOFjgaA==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/busboy": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", - "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", - "dependencies": { - "streamsearch": "^1.1.0" - }, + "optional": true, + "os": [ + "android" + ], "engines": { - "node": ">=10.16.0" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/cac": { - "version": "6.7.14", - "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", - "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "node_modules/@rolldown/binding-darwin-arm64": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.12.tgz", + "integrity": "sha512-cFYr6zTG/3PXXF3pUO+umXxt1wkRK/0AYT8lDwuqvRC+LuKYWSAQAQZjCWDQpAH172ZV6ieYrNnFzVVcnSflAg==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=8" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001764", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001764.tgz", - "integrity": "sha512-9JGuzl2M+vPL+pz70gtMF9sHdMFbY9FJaQBi186cHKH3pSzDvzoUJUPV6fqiKIMyXbud9ZLg4F3Yza1vJ1+93g==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } + "node_modules/@rolldown/binding-darwin-x64": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-rc.12.tgz", + "integrity": "sha512-ZCsYknnHzeXYps0lGBz8JrF37GpE9bFVefrlmDrAQhOEi4IOIlcoU1+FwHEtyXGx2VkYAvhu7dyBf75EJQffBw==", + "cpu": [ + "x64" ], - "license": "CC-BY-4.0" - }, - "node_modules/character-entities": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", - "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", "dev": true, "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/client-only": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", - "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==", - "license": "MIT" - }, - "node_modules/color": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", - "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", + "node_modules/@rolldown/binding-freebsd-x64": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-rc.12.tgz", + "integrity": "sha512-dMLeprcVsyJsKolRXyoTH3NL6qtsT0Y2xeuEA8WQJquWFXkEC4bcu1rLZZSnZRMtAqwtrF/Ib9Ddtpa/Gkge9Q==", + "cpu": [ + "x64" + ], + "dev": true, "license": "MIT", "optional": true, - "dependencies": { - "color-convert": "^2.0.1", - "color-string": "^1.9.0" - }, + "os": [ + "freebsd" + ], "engines": { - "node": ">=12.5.0" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/@rolldown/binding-linux-arm-gnueabihf": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-rc.12.tgz", + "integrity": "sha512-YqWjAgGC/9M1lz3GR1r1rP79nMgo3mQiiA+Hfo+pvKFK1fAJ1bCi0ZQVh8noOqNacuY1qIcfyVfP6HoyBRZ85Q==", + "cpu": [ + "arm" + ], + "dev": true, "license": "MIT", "optional": true, - "dependencies": { - "color-name": "~1.1.4" - }, + "os": [ + "linux" + ], "engines": { - "node": ">=7.0.0" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "license": "MIT", - "optional": true - }, - "node_modules/color-string": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", - "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "node_modules/@rolldown/binding-linux-arm64-gnu": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-rc.12.tgz", + "integrity": "sha512-/I5AS4cIroLpslsmzXfwbe5OmWvSsrFuEw3mwvbQ1kDxJ822hFHIx+vsN/TAzNVyepI/j/GSzrtCIwQPeKCLIg==", + "cpu": [ + "arm64" + ], + "dev": true, "license": "MIT", "optional": true, - "dependencies": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/comment-parser": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", - "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", + "node_modules/@rolldown/binding-linux-arm64-musl": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-rc.12.tgz", + "integrity": "sha512-V6/wZztnBqlx5hJQqNWwFdxIKN0m38p8Jas+VoSfgH54HSj9tKTt1dZvG6JRHcjh6D7TvrJPWFGaY9UBVOaWPw==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">= 12.0.0" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/csstype": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", - "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/debug": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", - "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "node_modules/@rolldown/binding-linux-ppc64-gnu": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.0-rc.12.tgz", + "integrity": "sha512-AP3E9BpcUYliZCxa3w5Kwj9OtEVDYK6sVoUzy4vTOJsjPOgdaJZKFmN4oOlX0Wp0RPV2ETfmIra9x1xuayFB7g==", + "cpu": [ + "ppc64" + ], "dev": true, "license": "MIT", - "dependencies": { - "ms": "^2.1.3" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/decode-named-character-reference": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.2.0.tgz", - "integrity": "sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q==", + "node_modules/@rolldown/binding-linux-s390x-gnu": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.0-rc.12.tgz", + "integrity": "sha512-nWwpvUSPkoFmZo0kQazZYOrT7J5DGOJ/+QHHzjvNlooDZED8oH82Yg67HvehPPLAg5fUff7TfWFHQS8IV1n3og==", + "cpu": [ + "s390x" + ], "dev": true, "license": "MIT", - "dependencies": { - "character-entities": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/defu": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.4.tgz", - "integrity": "sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==", + "node_modules/@rolldown/binding-linux-x64-gnu": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-rc.12.tgz", + "integrity": "sha512-RNrafz5bcwRy+O9e6P8Z/OCAJW/A+qtBczIqVYwTs14pf4iV1/+eKEjdOUta93q2TsT/FI0XYDP3TCky38LMAg==", + "cpu": [ + "x64" + ], "dev": true, - "license": "MIT" + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } }, - "node_modules/dequal": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", - "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "node_modules/@rolldown/binding-linux-x64-musl": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-rc.12.tgz", + "integrity": "sha512-Jpw/0iwoKWx3LJ2rc1yjFrj+T7iHZn2JDg1Yny1ma0luviFS4mhAIcd1LFNxK3EYu3DHWCps0ydXQ5i/rrJ2ig==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=6" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/detect-libc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", - "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", - "license": "Apache-2.0", + "node_modules/@rolldown/binding-openharmony-arm64": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-rc.12.tgz", + "integrity": "sha512-vRugONE4yMfVn0+7lUKdKvN4D5YusEiPilaoO2sgUWpCvrncvWgPMzK00ZFFJuiPgLwgFNP5eSiUlv2tfc+lpA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", "optional": true, + "os": [ + "openharmony" + ], "engines": { - "node": ">=8" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/devlop": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", - "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", + "node_modules/@rolldown/binding-wasm32-wasi": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-rc.12.tgz", + "integrity": "sha512-ykGiLr/6kkiHc0XnBfmFJuCjr5ZYKKofkx+chJWDjitX+KsJuAmrzWhwyOMSHzPhzOHOy7u9HlFoa5MoAOJ/Zg==", + "cpu": [ + "wasm32" + ], "dev": true, "license": "MIT", + "optional": true, "dependencies": { - "dequal": "^2.0.0" + "@napi-rs/wasm-runtime": "^1.1.1" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/dotenv": { - "version": "17.2.3", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.3.tgz", - "integrity": "sha512-JVUnt+DUIzu87TABbhPmNfVdBDt18BLOWjMUFJMSi/Qqg7NTYtabbvSNJGOJ7afbRuv9D/lngizHtP7QyLQ+9w==", - "dev": true, - "license": "BSD-2-Clause", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://dotenvx.com" + "node": ">=14.0.0" } }, - "node_modules/dts-resolver": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/dts-resolver/-/dts-resolver-2.1.3.tgz", - "integrity": "sha512-bihc7jPC90VrosXNzK0LTE2cuLP6jr0Ro8jk+kMugHReJVLIpHz/xadeq3MhuwyO4TD4OA3L1Q8pBBFRc08Tsw==", + "node_modules/@rolldown/binding-win32-arm64-msvc": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-rc.12.tgz", + "integrity": "sha512-5eOND4duWkwx1AzCxadcOrNeighiLwMInEADT0YM7xeEOOFcovWZCq8dadXgcRHSf3Ulh1kFo/qvzoFiCLOL1Q==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": ">=20.19.0" - }, - "funding": { - "url": "https://github.com/sponsors/sxzz" - }, - "peerDependencies": { - "oxc-resolver": ">=11.0.0" - }, - "peerDependenciesMeta": { - "oxc-resolver": { - "optional": true - } + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/empathic": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/empathic/-/empathic-2.0.0.tgz", - "integrity": "sha512-i6UzDscO/XfAcNYD75CfICkmfLedpyPDdozrLMmQc5ORaQcdMoc21OnlEylMIqI7U8eniKrPMxxtj8k0vhmJhA==", + "node_modules/@rolldown/binding-win32-x64-msvc": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-rc.12.tgz", + "integrity": "sha512-PyqoipaswDLAZtot351MLhrlrh6lcZPo2LSYE+VDxbVk24LVKAGOuE4hb8xZQmrPAuEtTZW8E6D2zc5EUZX4Lw==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": ">=14" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/esm-env": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/esm-env/-/esm-env-1.2.2.tgz", - "integrity": "sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==", + "node_modules/@rolldown/pluginutils": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.12.tgz", + "integrity": "sha512-HHMwmarRKvoFsJorqYlFeFRzXZqCt2ETQlEDOb9aqssrnVBB1/+xgTGtuTrIk5vzLNX1MjMtTf7W9z3tsSbrxw==", + "dev": true, "license": "MIT" }, - "node_modules/fdir": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", - "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "node_modules/@swc/helpers": { + "version": "0.5.15", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.15.tgz", + "integrity": "sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + } + }, + "node_modules/@tybys/wasm-util": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", + "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", "dev": true, "license": "MIT", - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "picomatch": "^3 || ^4" - }, - "peerDependenciesMeta": { - "picomatch": { - "optional": true - } + "optional": true, + "dependencies": { + "tslib": "^2.4.0" } }, - "node_modules/fp-ts": { - "version": "2.16.11", - "resolved": "https://registry.npmjs.org/fp-ts/-/fp-ts-2.16.11.tgz", - "integrity": "sha512-LaI+KaX2NFkfn1ZGHoKCmcfv7yrZsC3b8NtWsTVQeHkq4F27vI5igUuO53sxqDEa2gNQMHFPmpojDw/1zmUK7w==", + "node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "node_modules/@types/jsesc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@types/jsesc/-/jsesc-2.5.1.tgz", + "integrity": "sha512-9VN+6yxLOPLOav+7PwjZbxiID2bVaeq0ED4qSQmdQTdjnXJSaCVKTR58t15oqH1H5t8Ng2ZX1SabJVoN9Q34bw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "25.5.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-25.5.2.tgz", + "integrity": "sha512-tO4ZIRKNC+MDWV4qKVZe3Ql/woTnmHDr5JD8UI5hn2pwBrHEwOEMZK7WlNb5RKB6EoJ02gwmQS9OrjuFnZYdpg==", "dev": true, - "hasInstallScript": true, "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + "dependencies": { + "undici-types": "~7.18.0" } }, - "node_modules/get-tsconfig": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.0.tgz", - "integrity": "sha512-1VKTZJCwBrvbd+Wn3AOgQP/2Av+TfTCOlE4AcRJE72W1ksZXbAx8PPBR9RzgTeSPzlPMHrbANMH3LbltH73wxQ==", + "node_modules/@types/react": { + "version": "19.2.14", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.14.tgz", + "integrity": "sha512-ilcTH/UniCkMdtexkoCN0bI7pMcJDvmQFPvuPvmEaYA/NSfFTAgdUSLAoVjaRJm7+6PvcM+q1zYOwS4wTYMF9w==", "dev": true, "license": "MIT", "dependencies": { - "resolve-pkg-maps": "^1.0.0" - }, - "funding": { - "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + "csstype": "^3.2.2" } }, - "node_modules/hookable": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/hookable/-/hookable-6.0.1.tgz", - "integrity": "sha512-uKGyY8BuzN/a5gvzvA+3FVWo0+wUjgtfSdnmjtrOVwQCZPHpHDH2WRO3VZSOeluYrHoDCiXFffZXs8Dj1ULWtw==", + "node_modules/@types/react-dom": { + "version": "19.2.3", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.2.3.tgz", + "integrity": "sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==", "dev": true, - "license": "MIT" + "license": "MIT", + "peerDependencies": { + "@types/react": "^19.2.0" + } }, - "node_modules/imgix-url-builder": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/imgix-url-builder/-/imgix-url-builder-0.0.6.tgz", - "integrity": "sha512-lFVbvaE9vMck8qz9j+y6o7vsyc1vZhdqzWu+Wp/nlnOCi9zAErc31QMkZKYUGMNLLzxOO4YIBAUPndTPah8HFg==", - "license": "Apache-2.0", + "node_modules/ansis": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/ansis/-/ansis-4.2.0.tgz", + "integrity": "sha512-HqZ5rWlFjGiV0tDm3UxxgNRqsOTniqoKZu0pIAfh7TZQMGuZK+hH0drySty0si0QXj1ieop4+SkSfPZBPPkHig==", + "dev": true, + "license": "ISC", "engines": { - "node": ">=12.7.0" + "node": ">=14" } }, - "node_modules/import-without-cache": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/import-without-cache/-/import-without-cache-0.2.5.tgz", - "integrity": "sha512-B6Lc2s6yApwnD2/pMzFh/d5AVjdsDXjgkeJ766FmFuJELIGHNycKRj+l3A39yZPM4CchqNCB4RITEAYB1KUM6A==", + "node_modules/ast-kit": { + "version": "3.0.0-beta.1", + "resolved": "https://registry.npmjs.org/ast-kit/-/ast-kit-3.0.0-beta.1.tgz", + "integrity": "sha512-trmleAnZ2PxN/loHWVhhx1qeOHSRXq4TDsBBxq3GqeJitfk3+jTQ+v/C1km/KYq9M7wKqCewMh+/NAvVH7m+bw==", "dev": true, "license": "MIT", + "dependencies": { + "@babel/parser": "^8.0.0-beta.4", + "estree-walker": "^3.0.3", + "pathe": "^2.0.3" + }, "engines": { "node": ">=20.19.0" }, @@ -1720,588 +1822,317 @@ "url": "https://github.com/sponsors/sxzz" } }, - "node_modules/io-ts": { - "version": "2.2.22", - "resolved": "https://registry.npmjs.org/io-ts/-/io-ts-2.2.22.tgz", - "integrity": "sha512-FHCCztTkHoV9mdBsHpocLpdTAfh956ZQcIkWQxxS0U5HT53vtrcuYdQneEJKH6xILaLNzXVl2Cvwtoy8XNN0AA==", + "node_modules/ast-kit/node_modules/@babel/helper-string-parser": { + "version": "8.0.0-rc.3", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-8.0.0-rc.3.tgz", + "integrity": "sha512-AmwWFx1m8G/a5cXkxLxTiWl+YEoWuoFLUCwqMlNuWO1tqAYITQAbCRPUkyBHv1VOFgfjVOqEj6L3u15J5ZCzTA==", "dev": true, "license": "MIT", - "peer": true, - "peerDependencies": { - "fp-ts": "^2.5.0" + "engines": { + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/io-ts-types": { - "version": "0.5.19", - "resolved": "https://registry.npmjs.org/io-ts-types/-/io-ts-types-0.5.19.tgz", - "integrity": "sha512-kQOYYDZG5vKre+INIDZbLeDJe+oM+4zLpUkjXyTMyUfoCpjJNyi29ZLkuEAwcPufaYo3yu/BsemZtbdD+NtRfQ==", + "node_modules/ast-kit/node_modules/@babel/helper-validator-identifier": { + "version": "8.0.0-rc.3", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-8.0.0-rc.3.tgz", + "integrity": "sha512-8AWCJ2VJJyDFlGBep5GpaaQ9AAaE/FjAcrqI7jyssYhtL7WGV0DOKpJsQqM037xDbpRLHXsY8TwU7zDma7coOw==", "dev": true, "license": "MIT", - "peer": true, - "peerDependencies": { - "fp-ts": "^2.0.0", - "io-ts": "^2.0.0", - "monocle-ts": "^2.0.0", - "newtype-ts": "^0.3.2" + "engines": { + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/is-arrayish": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.4.tgz", - "integrity": "sha512-m6UrgzFVUYawGBh1dUsWR5M2Clqic9RVXC/9f8ceNlv2IcO9j9J/z8UoCLPqtsPBFNzEpfR3xftohbfqDx8EQA==", - "license": "MIT", - "optional": true - }, - "node_modules/javascript-natural-sort": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/javascript-natural-sort/-/javascript-natural-sort-0.7.1.tgz", - "integrity": "sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw==", - "dev": true, - "license": "MIT" - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/jsesc": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", - "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "node_modules/ast-kit/node_modules/@babel/parser": { + "version": "8.0.0-rc.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-8.0.0-rc.3.tgz", + "integrity": "sha512-B20dvP3MfNc/XS5KKCHy/oyWl5IA6Cn9YjXRdDlCjNmUFrjvLXMNUfQq/QUy9fnG2gYkKKcrto2YaF9B32ToOQ==", "dev": true, "license": "MIT", + "dependencies": { + "@babel/types": "^8.0.0-rc.3" + }, "bin": { - "jsesc": "bin/jsesc" + "parser": "bin/babel-parser.js" }, "engines": { - "node": ">=6" + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/lodash-es": { - "version": "4.17.22", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.22.tgz", - "integrity": "sha512-XEawp1t0gxSi9x01glktRZ5HDy0HXqrM0x5pXQM98EaI0NxO6jVM7omDOxsuEo5UIASAnm2bRp1Jt/e0a2XU8Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/mdast-util-from-markdown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.2.tgz", - "integrity": "sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==", + "node_modules/ast-kit/node_modules/@babel/types": { + "version": "8.0.0-rc.3", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-8.0.0-rc.3.tgz", + "integrity": "sha512-mOm5ZrYmphGfqVWoH5YYMTITb3cDXsFgmvFlvkvWDMsR9X8RFnt7a0Wb6yNIdoFsiMO9WjYLq+U/FMtqIYAF8Q==", "dev": true, "license": "MIT", "dependencies": { - "@types/mdast": "^4.0.0", - "@types/unist": "^3.0.0", - "decode-named-character-reference": "^1.0.0", - "devlop": "^1.0.0", - "mdast-util-to-string": "^4.0.0", - "micromark": "^4.0.0", - "micromark-util-decode-numeric-character-reference": "^2.0.0", - "micromark-util-decode-string": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0", - "unist-util-stringify-position": "^4.0.0" + "@babel/helper-string-parser": "^8.0.0-rc.3", + "@babel/helper-validator-identifier": "^8.0.0-rc.3" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": "^20.19.0 || >=22.12.0" } }, - "node_modules/mdast-util-to-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", - "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/mdast": "^4.0.0" + "node_modules/baseline-browser-mapping": { + "version": "2.10.14", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.14.tgz", + "integrity": "sha512-fOVLPAsFTsQfuCkvahZkzq6nf8KvGWanlYoTh0SVA0A/PIUxQGU2AOZAoD95n2gFLVDW/jP6sbGLny95nmEuHA==", + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.cjs" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">=6.0.0" } }, - "node_modules/micromark": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.2.tgz", - "integrity": "sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "@types/debug": "^4.0.0", - "debug": "^4.0.0", - "decode-named-character-reference": "^1.0.0", - "devlop": "^1.0.0", - "micromark-core-commonmark": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-combine-extensions": "^2.0.0", - "micromark-util-decode-numeric-character-reference": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "micromark-util-subtokenize": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-core-commonmark": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.3.tgz", - "integrity": "sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "decode-named-character-reference": "^1.0.0", - "devlop": "^1.0.0", - "micromark-factory-destination": "^2.0.0", - "micromark-factory-label": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-factory-title": "^2.0.0", - "micromark-factory-whitespace": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-classify-character": "^2.0.0", - "micromark-util-html-tag-name": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", - "micromark-util-subtokenize": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-factory-destination": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.1.tgz", - "integrity": "sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==", + "node_modules/birpc": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/birpc/-/birpc-4.0.0.tgz", + "integrity": "sha512-LShSxJP0KTmd101b6DRyGBj57LZxSDYWKitQNW/mi8GRMvZb078Uf9+pveax1DrVL89vm7mWe+TovdI/UDOuPw==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "license": "MIT", - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/micromark-factory-label": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.1.tgz", - "integrity": "sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==", + "node_modules/cac": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/cac/-/cac-7.0.0.tgz", + "integrity": "sha512-tixWYgm5ZoOD+3g6UTea91eow5z6AAHaho3g0V9CNSNb45gM8SmflpAc+GRd1InC4AqN/07Unrgp56Y94N9hJQ==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "license": "MIT", - "dependencies": { - "devlop": "^1.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "engines": { + "node": ">=20.19.0" } }, - "node_modules/micromark-factory-space": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.1.tgz", - "integrity": "sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==", - "dev": true, + "node_modules/caniuse-lite": { + "version": "1.0.30001782", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001782.tgz", + "integrity": "sha512-dZcaJLJeDMh4rELYFw1tvSn1bhZWYFOt468FcbHHxx/Z/dFidd1I6ciyFdi3iwfQCyOjqo9upF6lGQYtMiJWxw==", "funding": [ { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" + "type": "opencollective", + "url": "https://opencollective.com/browserslist" }, { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-factory-title": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.1.tgz", - "integrity": "sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" }, { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" + "type": "github", + "url": "https://github.com/sponsors/ai" } ], - "license": "MIT", - "dependencies": { - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } + "license": "CC-BY-4.0" + }, + "node_modules/client-only": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", + "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==", + "license": "MIT" }, - "node_modules/micromark-factory-whitespace": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.1.tgz", - "integrity": "sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==", + "node_modules/csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } + "license": "MIT" }, - "node_modules/micromark-util-character": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz", - "integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==", + "node_modules/defu": { + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.4.tgz", + "integrity": "sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "license": "MIT" + }, + "node_modules/detect-libc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "license": "Apache-2.0", + "optional": true, + "engines": { + "node": ">=8" } }, - "node_modules/micromark-util-chunked": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.1.tgz", - "integrity": "sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==", + "node_modules/dotenv": { + "version": "17.4.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.4.0.tgz", + "integrity": "sha512-kCKF62fwtzwYm0IGBNjRUjtJgMfGapII+FslMHIjMR5KTnwEmBmWLDRSnc3XSNP8bNy34tekgQyDT0hr7pERRQ==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-symbol": "^2.0.0" + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" } }, - "node_modules/micromark-util-classify-character": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.1.tgz", - "integrity": "sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==", + "node_modules/dts-resolver": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/dts-resolver/-/dts-resolver-2.1.3.tgz", + "integrity": "sha512-bihc7jPC90VrosXNzK0LTE2cuLP6jr0Ro8jk+kMugHReJVLIpHz/xadeq3MhuwyO4TD4OA3L1Q8pBBFRc08Tsw==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "license": "MIT", - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "engines": { + "node": ">=20.19.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + }, + "peerDependencies": { + "oxc-resolver": ">=11.0.0" + }, + "peerDependenciesMeta": { + "oxc-resolver": { + "optional": true + } } }, - "node_modules/micromark-util-combine-extensions": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.1.tgz", - "integrity": "sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==", + "node_modules/empathic": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/empathic/-/empathic-2.0.0.tgz", + "integrity": "sha512-i6UzDscO/XfAcNYD75CfICkmfLedpyPDdozrLMmQc5ORaQcdMoc21OnlEylMIqI7U8eniKrPMxxtj8k0vhmJhA==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "license": "MIT", - "dependencies": { - "micromark-util-chunked": "^2.0.0", - "micromark-util-types": "^2.0.0" + "engines": { + "node": ">=14" } }, - "node_modules/micromark-util-decode-numeric-character-reference": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.2.tgz", - "integrity": "sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==", + "node_modules/esm-env": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/esm-env/-/esm-env-1.2.2.tgz", + "integrity": "sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==", + "license": "MIT" + }, + "node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "license": "MIT", "dependencies": { - "micromark-util-symbol": "^2.0.0" + "@types/estree": "^1.0.0" } }, - "node_modules/micromark-util-decode-string": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.1.tgz", - "integrity": "sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==", + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true } - ], - "license": "MIT", - "dependencies": { - "decode-named-character-reference": "^1.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-decode-numeric-character-reference": "^2.0.0", - "micromark-util-symbol": "^2.0.0" } }, - "node_modules/micromark-util-encode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz", - "integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==", + "node_modules/fp-ts": { + "version": "2.16.11", + "resolved": "https://registry.npmjs.org/fp-ts/-/fp-ts-2.16.11.tgz", + "integrity": "sha512-LaI+KaX2NFkfn1ZGHoKCmcfv7yrZsC3b8NtWsTVQeHkq4F27vI5igUuO53sxqDEa2gNQMHFPmpojDw/1zmUK7w==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" + "license": "MIT", + "peer": true }, - "node_modules/micromark-util-html-tag-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.1.tgz", - "integrity": "sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==", + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" ], - "license": "MIT" + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } }, - "node_modules/micromark-util-normalize-identifier": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.1.tgz", - "integrity": "sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==", + "node_modules/get-tsconfig": { + "version": "4.13.7", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.7.tgz", + "integrity": "sha512-7tN6rFgBlMgpBML5j8typ92BKFi2sFQvIdpAqLA2beia5avZDrMs0FLZiM5etShWq5irVyGcGMEA1jcDaK7A/Q==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "license": "MIT", "dependencies": { - "micromark-util-symbol": "^2.0.0" + "resolve-pkg-maps": "^1.0.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" } }, - "node_modules/micromark-util-resolve-all": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.1.tgz", - "integrity": "sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==", + "node_modules/hookable": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/hookable/-/hookable-6.1.0.tgz", + "integrity": "sha512-ZoKZSJgu8voGK2geJS+6YtYjvIzu9AOM/KZXsBxr83uhLL++e9pEv/dlgwgy3dvHg06kTz6JOh1hk3C8Ceiymw==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "micromark-util-types": "^2.0.0" + "license": "MIT" + }, + "node_modules/imgix-url-builder": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/imgix-url-builder/-/imgix-url-builder-0.0.6.tgz", + "integrity": "sha512-lFVbvaE9vMck8qz9j+y6o7vsyc1vZhdqzWu+Wp/nlnOCi9zAErc31QMkZKYUGMNLLzxOO4YIBAUPndTPah8HFg==", + "license": "Apache-2.0", + "engines": { + "node": ">=12.7.0" } }, - "node_modules/micromark-util-sanitize-uri": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz", - "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==", + "node_modules/import-without-cache": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/import-without-cache/-/import-without-cache-0.2.5.tgz", + "integrity": "sha512-B6Lc2s6yApwnD2/pMzFh/d5AVjdsDXjgkeJ766FmFuJELIGHNycKRj+l3A39yZPM4CchqNCB4RITEAYB1KUM6A==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "license": "MIT", - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-symbol": "^2.0.0" + "engines": { + "node": ">=20.19.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" } }, - "node_modules/micromark-util-subtokenize": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.1.0.tgz", - "integrity": "sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==", + "node_modules/io-ts": { + "version": "2.2.22", + "resolved": "https://registry.npmjs.org/io-ts/-/io-ts-2.2.22.tgz", + "integrity": "sha512-FHCCztTkHoV9mdBsHpocLpdTAfh956ZQcIkWQxxS0U5HT53vtrcuYdQneEJKH6xILaLNzXVl2Cvwtoy8XNN0AA==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "license": "MIT", - "dependencies": { - "devlop": "^1.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "peer": true, + "peerDependencies": { + "fp-ts": "^2.5.0" } }, - "node_modules/micromark-util-symbol": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz", - "integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" - }, - "node_modules/micromark-util-types": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.2.tgz", - "integrity": "sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==", + "node_modules/io-ts-types": { + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/io-ts-types/-/io-ts-types-0.5.19.tgz", + "integrity": "sha512-kQOYYDZG5vKre+INIDZbLeDJe+oM+4zLpUkjXyTMyUfoCpjJNyi29ZLkuEAwcPufaYo3yu/BsemZtbdD+NtRfQ==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" + "license": "MIT", + "peer": true, + "peerDependencies": { + "fp-ts": "^2.0.0", + "io-ts": "^2.0.0", + "monocle-ts": "^2.0.0", + "newtype-ts": "^0.3.2" + } }, - "node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" }, "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=6" } }, "node_modules/monocle-ts": { @@ -2314,13 +2145,6 @@ "fp-ts": "^2.5.0" } }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true, - "license": "MIT" - }, "node_modules/nanoid": { "version": "3.3.11", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", @@ -2351,16 +2175,14 @@ } }, "node_modules/next": { - "version": "15.1.9", - "resolved": "https://registry.npmjs.org/next/-/next-15.1.9.tgz", - "integrity": "sha512-OoQpDPV2i3o5Hnn46nz2x6fzdFxFO+JsU4ZES12z65/feMjPHKKHLDVQ2NuEvTaXTRisix/G5+6hyTkwK329kA==", - "deprecated": "This version has a security vulnerability. Please upgrade to a patched version. See https://nextjs.org/blog/security-update-2025-12-11 for more details.", + "version": "16.2.2", + "resolved": "https://registry.npmjs.org/next/-/next-16.2.2.tgz", + "integrity": "sha512-i6AJdyVa4oQjyvX/6GeER8dpY/xlIV+4NMv/svykcLtURJSy/WzDnnUk/TM4d0uewFHK7xSQz4TbIwPgjky+3A==", "license": "MIT", "dependencies": { - "@next/env": "15.1.9", - "@swc/counter": "0.1.3", + "@next/env": "16.2.2", "@swc/helpers": "0.5.15", - "busboy": "1.6.0", + "baseline-browser-mapping": "^2.9.19", "caniuse-lite": "^1.0.30001579", "postcss": "8.4.31", "styled-jsx": "5.1.6" @@ -2369,22 +2191,22 @@ "next": "dist/bin/next" }, "engines": { - "node": "^18.18.0 || ^19.8.0 || >= 20.0.0" + "node": ">=20.9.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "15.1.9", - "@next/swc-darwin-x64": "15.1.9", - "@next/swc-linux-arm64-gnu": "15.1.9", - "@next/swc-linux-arm64-musl": "15.1.9", - "@next/swc-linux-x64-gnu": "15.1.9", - "@next/swc-linux-x64-musl": "15.1.9", - "@next/swc-win32-arm64-msvc": "15.1.9", - "@next/swc-win32-x64-msvc": "15.1.9", - "sharp": "^0.33.5" + "@next/swc-darwin-arm64": "16.2.2", + "@next/swc-darwin-x64": "16.2.2", + "@next/swc-linux-arm64-gnu": "16.2.2", + "@next/swc-linux-arm64-musl": "16.2.2", + "@next/swc-linux-x64-gnu": "16.2.2", + "@next/swc-linux-x64-musl": "16.2.2", + "@next/swc-win32-arm64-msvc": "16.2.2", + "@next/swc-win32-x64-msvc": "16.2.2", + "sharp": "^0.34.5" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", - "@playwright/test": "^1.41.2", + "@playwright/test": "^1.51.1", "babel-plugin-react-compiler": "*", "react": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", "react-dom": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", @@ -2420,10 +2242,50 @@ ], "license": "MIT" }, + "node_modules/oxfmt": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/oxfmt/-/oxfmt-0.43.0.tgz", + "integrity": "sha512-KTYNG5ISfHSdmeZ25Xzb3qgz9EmQvkaGAxgBY/p38+ZiAet3uZeu7FnMwcSQJg152Qwl0wnYAxDc+Z/H6cvrwA==", + "dev": true, + "license": "MIT", + "dependencies": { + "tinypool": "2.1.0" + }, + "bin": { + "oxfmt": "bin/oxfmt" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "funding": { + "url": "https://github.com/sponsors/Boshen" + }, + "optionalDependencies": { + "@oxfmt/binding-android-arm-eabi": "0.43.0", + "@oxfmt/binding-android-arm64": "0.43.0", + "@oxfmt/binding-darwin-arm64": "0.43.0", + "@oxfmt/binding-darwin-x64": "0.43.0", + "@oxfmt/binding-freebsd-x64": "0.43.0", + "@oxfmt/binding-linux-arm-gnueabihf": "0.43.0", + "@oxfmt/binding-linux-arm-musleabihf": "0.43.0", + "@oxfmt/binding-linux-arm64-gnu": "0.43.0", + "@oxfmt/binding-linux-arm64-musl": "0.43.0", + "@oxfmt/binding-linux-ppc64-gnu": "0.43.0", + "@oxfmt/binding-linux-riscv64-gnu": "0.43.0", + "@oxfmt/binding-linux-riscv64-musl": "0.43.0", + "@oxfmt/binding-linux-s390x-gnu": "0.43.0", + "@oxfmt/binding-linux-x64-gnu": "0.43.0", + "@oxfmt/binding-linux-x64-musl": "0.43.0", + "@oxfmt/binding-openharmony-arm64": "0.43.0", + "@oxfmt/binding-win32-arm64-msvc": "0.43.0", + "@oxfmt/binding-win32-ia32-msvc": "0.43.0", + "@oxfmt/binding-win32-x64-msvc": "0.43.0" + } + }, "node_modules/oxlint": { - "version": "1.39.0", - "resolved": "https://registry.npmjs.org/oxlint/-/oxlint-1.39.0.tgz", - "integrity": "sha512-wSiLr0wjG+KTU6c1LpVoQk7JZ7l8HCKlAkVDVTJKWmCGazsNxexxnOXl7dsar92mQcRnzko5g077ggP3RINSjA==", + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/oxlint/-/oxlint-1.58.0.tgz", + "integrity": "sha512-t4s9leczDMqlvOSjnbCQe7gtoLkWgBGZ7sBdCJ9EOj5IXFSG/X7OAzK4yuH4iW+4cAYe8kLFbC8tuYMwWZm+Cg==", "dev": true, "license": "MIT", "bin": { @@ -2436,17 +2298,28 @@ "url": "https://github.com/sponsors/Boshen" }, "optionalDependencies": { - "@oxlint/darwin-arm64": "1.39.0", - "@oxlint/darwin-x64": "1.39.0", - "@oxlint/linux-arm64-gnu": "1.39.0", - "@oxlint/linux-arm64-musl": "1.39.0", - "@oxlint/linux-x64-gnu": "1.39.0", - "@oxlint/linux-x64-musl": "1.39.0", - "@oxlint/win32-arm64": "1.39.0", - "@oxlint/win32-x64": "1.39.0" + "@oxlint/binding-android-arm-eabi": "1.58.0", + "@oxlint/binding-android-arm64": "1.58.0", + "@oxlint/binding-darwin-arm64": "1.58.0", + "@oxlint/binding-darwin-x64": "1.58.0", + "@oxlint/binding-freebsd-x64": "1.58.0", + "@oxlint/binding-linux-arm-gnueabihf": "1.58.0", + "@oxlint/binding-linux-arm-musleabihf": "1.58.0", + "@oxlint/binding-linux-arm64-gnu": "1.58.0", + "@oxlint/binding-linux-arm64-musl": "1.58.0", + "@oxlint/binding-linux-ppc64-gnu": "1.58.0", + "@oxlint/binding-linux-riscv64-gnu": "1.58.0", + "@oxlint/binding-linux-riscv64-musl": "1.58.0", + "@oxlint/binding-linux-s390x-gnu": "1.58.0", + "@oxlint/binding-linux-x64-gnu": "1.58.0", + "@oxlint/binding-linux-x64-musl": "1.58.0", + "@oxlint/binding-openharmony-arm64": "1.58.0", + "@oxlint/binding-win32-arm64-msvc": "1.58.0", + "@oxlint/binding-win32-ia32-msvc": "1.58.0", + "@oxlint/binding-win32-x64-msvc": "1.58.0" }, "peerDependencies": { - "oxlint-tsgolint": ">=0.10.0" + "oxlint-tsgolint": ">=0.18.0" }, "peerDependenciesMeta": { "oxlint-tsgolint": { @@ -2454,23 +2327,6 @@ } } }, - "node_modules/parse-imports-exports": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/parse-imports-exports/-/parse-imports-exports-0.2.4.tgz", - "integrity": "sha512-4s6vd6dx1AotCx/RCI2m7t7GCh5bDRUtGNvRfHSP2wbBQdMi67pPe7mtzmgwcaQ8VKK/6IB7Glfyu3qdZJPybQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "parse-statements": "1.0.11" - } - }, - "node_modules/parse-statements": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/parse-statements/-/parse-statements-1.0.11.tgz", - "integrity": "sha512-HlsyYdMBnbPQ9Jr/VgJ1YF4scnldvJpJxCVx6KgqPL4dxppsWrJHCIIxQXMJrqGnsRkNPATbeMJ8Yxu7JMsYcA==", - "dev": true, - "license": "MIT" - }, "node_modules/pathe": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", @@ -2485,9 +2341,9 @@ "license": "ISC" }, "node_modules/picomatch": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", - "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", + "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", "dev": true, "license": "MIT", "engines": { @@ -2498,13 +2354,13 @@ } }, "node_modules/playwright": { - "version": "1.57.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.57.0.tgz", - "integrity": "sha512-ilYQj1s8sr2ppEJ2YVadYBN0Mb3mdo9J0wQ+UuDhzYqURwSoW4n1Xs5vs7ORwgDGmyEh33tRMeS8KhdkMoLXQw==", + "version": "1.59.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.59.1.tgz", + "integrity": "sha512-C8oWjPR3F81yljW9o5OxcWzfh6avkVwDD2VYdwIGqTkl+OGFISgypqzfu7dOe4QNLL2aqcWBmI3PMtLIK233lw==", "devOptional": true, "license": "Apache-2.0", "dependencies": { - "playwright-core": "1.57.0" + "playwright-core": "1.59.1" }, "bin": { "playwright": "cli.js" @@ -2517,9 +2373,9 @@ } }, "node_modules/playwright-core": { - "version": "1.57.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.57.0.tgz", - "integrity": "sha512-agTcKlMw/mjBWOnD6kFZttAAGHgi/Nw0CZ2o6JqWSbMlI219lAFLZZCyqByTsvVAJq5XA5H8cA6PrvBRpBWEuQ==", + "version": "1.59.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.59.1.tgz", + "integrity": "sha512-HBV/RJg81z5BiiZ9yPzIiClYV/QMsDCKUyogwH9p3MCP6IYjUFu/MActgYAvK0oWyV9NlwM3GLBjADyWgydVyg==", "devOptional": true, "license": "Apache-2.0", "bin": { @@ -2557,40 +2413,6 @@ "node": "^10 || ^12 || >=14" } }, - "node_modules/prettier": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.7.4.tgz", - "integrity": "sha512-v6UNi1+3hSlVvv8fSaoUbggEM5VErKmmpGA7Pl3HF8V6uKY7rvClBOJlH6yNwQtfTueNkGVpOv/mtWL9L4bgRA==", - "dev": true, - "license": "MIT", - "bin": { - "prettier": "bin/prettier.cjs" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" - } - }, - "node_modules/prettier-plugin-jsdoc": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/prettier-plugin-jsdoc/-/prettier-plugin-jsdoc-1.8.0.tgz", - "integrity": "sha512-byW8EBZ1DSA3CPdDGBXfcdqqhh2eq0+HlIOPTGZ6rf9O2p/AwBmtS0e49ot5ZeOdcszj81FyzbyHr/VS0eYpCg==", - "dev": true, - "license": "MIT", - "dependencies": { - "binary-searching": "^2.0.5", - "comment-parser": "^1.4.0", - "mdast-util-from-markdown": "^2.0.0" - }, - "engines": { - "node": ">=14.13.1 || >=16.0.0" - }, - "peerDependencies": { - "prettier": "^3.0.0" - } - }, "node_modules/quansync": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/quansync/-/quansync-1.0.0.tgz", @@ -2609,24 +2431,24 @@ "license": "MIT" }, "node_modules/react": { - "version": "19.2.3", - "resolved": "https://registry.npmjs.org/react/-/react-19.2.3.tgz", - "integrity": "sha512-Ku/hhYbVjOQnXDZFv2+RibmLFGwFdeeKHFcOTlrt7xplBnya5OGn/hIRDsqDiSUcfORsDC7MPxwork8jBwsIWA==", + "version": "19.2.4", + "resolved": "https://registry.npmjs.org/react/-/react-19.2.4.tgz", + "integrity": "sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ==", "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/react-dom": { - "version": "19.2.3", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.3.tgz", - "integrity": "sha512-yELu4WmLPw5Mr/lmeEpox5rw3RETacE++JgHqQzd2dg+YbJuat3jH4ingc+WPZhxaoFzdv9y33G+F7Nl5O0GBg==", + "version": "19.2.4", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.4.tgz", + "integrity": "sha512-AXJdLo8kgMbimY95O2aKQqsz2iWi9jMgKJhRBAxECE4IFxfcazB2LmzloIoibJI3C12IlY20+KFaLv+71bUJeQ==", "license": "MIT", "dependencies": { "scheduler": "^0.27.0" }, "peerDependencies": { - "react": "^19.2.3" + "react": "^19.2.4" } }, "node_modules/resolve-pkg-maps": { @@ -2640,14 +2462,14 @@ } }, "node_modules/rolldown": { - "version": "1.0.0-beta.59", - "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-beta.59.tgz", - "integrity": "sha512-Slm000Gd8/AO9z4Kxl4r8mp/iakrbAuJ1L+7ddpkNxgQ+Vf37WPvY63l3oeyZcfuPD1DRrUYBsRPIXSOhvOsmw==", + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-rc.12.tgz", + "integrity": "sha512-yP4USLIMYrwpPHEFB5JGH1uxhcslv6/hL0OyvTuY+3qlOSJvZ7ntYnoWpehBxufkgN0cvXxppuTu5hHa/zPh+A==", "dev": true, "license": "MIT", "dependencies": { - "@oxc-project/types": "=0.107.0", - "@rolldown/pluginutils": "1.0.0-beta.59" + "@oxc-project/types": "=0.122.0", + "@rolldown/pluginutils": "1.0.0-rc.12" }, "bin": { "rolldown": "bin/cli.mjs" @@ -2656,36 +2478,40 @@ "node": "^20.19.0 || >=22.12.0" }, "optionalDependencies": { - "@rolldown/binding-android-arm64": "1.0.0-beta.59", - "@rolldown/binding-darwin-arm64": "1.0.0-beta.59", - "@rolldown/binding-darwin-x64": "1.0.0-beta.59", - "@rolldown/binding-freebsd-x64": "1.0.0-beta.59", - "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-beta.59", - "@rolldown/binding-linux-arm64-gnu": "1.0.0-beta.59", - "@rolldown/binding-linux-arm64-musl": "1.0.0-beta.59", - "@rolldown/binding-linux-x64-gnu": "1.0.0-beta.59", - "@rolldown/binding-linux-x64-musl": "1.0.0-beta.59", - "@rolldown/binding-openharmony-arm64": "1.0.0-beta.59", - "@rolldown/binding-wasm32-wasi": "1.0.0-beta.59", - "@rolldown/binding-win32-arm64-msvc": "1.0.0-beta.59", - "@rolldown/binding-win32-x64-msvc": "1.0.0-beta.59" + "@rolldown/binding-android-arm64": "1.0.0-rc.12", + "@rolldown/binding-darwin-arm64": "1.0.0-rc.12", + "@rolldown/binding-darwin-x64": "1.0.0-rc.12", + "@rolldown/binding-freebsd-x64": "1.0.0-rc.12", + "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-rc.12", + "@rolldown/binding-linux-arm64-gnu": "1.0.0-rc.12", + "@rolldown/binding-linux-arm64-musl": "1.0.0-rc.12", + "@rolldown/binding-linux-ppc64-gnu": "1.0.0-rc.12", + "@rolldown/binding-linux-s390x-gnu": "1.0.0-rc.12", + "@rolldown/binding-linux-x64-gnu": "1.0.0-rc.12", + "@rolldown/binding-linux-x64-musl": "1.0.0-rc.12", + "@rolldown/binding-openharmony-arm64": "1.0.0-rc.12", + "@rolldown/binding-wasm32-wasi": "1.0.0-rc.12", + "@rolldown/binding-win32-arm64-msvc": "1.0.0-rc.12", + "@rolldown/binding-win32-x64-msvc": "1.0.0-rc.12" } }, "node_modules/rolldown-plugin-dts": { - "version": "0.20.0", - "resolved": "https://registry.npmjs.org/rolldown-plugin-dts/-/rolldown-plugin-dts-0.20.0.tgz", - "integrity": "sha512-cLAY1kN2ilTYMfZcFlGWbXnu6Nb+8uwUBsi+Mjbh4uIx7IN8uMOmJ7RxrrRgPsO4H7eSz3E+JwGoL1gyugiyUA==", + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/rolldown-plugin-dts/-/rolldown-plugin-dts-0.23.2.tgz", + "integrity": "sha512-PbSqLawLgZBGcOGT3yqWBGn4cX+wh2nt5FuBGdcMHyOhoukmjbhYAl8NT9sE4U38Cm9tqLOIQeOrvzeayM0DLQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/generator": "^7.28.5", - "@babel/parser": "^7.28.5", - "@babel/types": "^7.28.5", - "ast-kit": "^2.2.0", + "@babel/generator": "8.0.0-rc.3", + "@babel/helper-validator-identifier": "8.0.0-rc.3", + "@babel/parser": "8.0.0-rc.3", + "@babel/types": "8.0.0-rc.3", + "ast-kit": "^3.0.0-beta.1", "birpc": "^4.0.0", "dts-resolver": "^2.1.3", - "get-tsconfig": "^4.13.0", - "obug": "^2.1.1" + "get-tsconfig": "^4.13.7", + "obug": "^2.1.1", + "picomatch": "^4.0.4" }, "engines": { "node": ">=20.19.0" @@ -2695,9 +2521,9 @@ }, "peerDependencies": { "@ts-macro/tsc": "^0.3.6", - "@typescript/native-preview": ">=7.0.0-dev.20250601.1", - "rolldown": "^1.0.0-beta.57", - "typescript": "^5.0.0", + "@typescript/native-preview": ">=7.0.0-dev.20260325.1", + "rolldown": "^1.0.0-rc.12", + "typescript": "^5.0.0 || ^6.0.0", "vue-tsc": "~3.2.0" }, "peerDependenciesMeta": { @@ -2715,6 +2541,74 @@ } } }, + "node_modules/rolldown-plugin-dts/node_modules/@babel/generator": { + "version": "8.0.0-rc.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-8.0.0-rc.3.tgz", + "integrity": "sha512-em37/13/nR320G4jab/nIIHZgc2Wz2y/D39lxnTyxB4/D/omPQncl/lSdlnJY1OhQcRGugTSIF2l/69o31C9dA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^8.0.0-rc.3", + "@babel/types": "^8.0.0-rc.3", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "@types/jsesc": "^2.5.0", + "jsesc": "^3.0.2" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/rolldown-plugin-dts/node_modules/@babel/helper-string-parser": { + "version": "8.0.0-rc.3", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-8.0.0-rc.3.tgz", + "integrity": "sha512-AmwWFx1m8G/a5cXkxLxTiWl+YEoWuoFLUCwqMlNuWO1tqAYITQAbCRPUkyBHv1VOFgfjVOqEj6L3u15J5ZCzTA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/rolldown-plugin-dts/node_modules/@babel/helper-validator-identifier": { + "version": "8.0.0-rc.3", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-8.0.0-rc.3.tgz", + "integrity": "sha512-8AWCJ2VJJyDFlGBep5GpaaQ9AAaE/FjAcrqI7jyssYhtL7WGV0DOKpJsQqM037xDbpRLHXsY8TwU7zDma7coOw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/rolldown-plugin-dts/node_modules/@babel/parser": { + "version": "8.0.0-rc.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-8.0.0-rc.3.tgz", + "integrity": "sha512-B20dvP3MfNc/XS5KKCHy/oyWl5IA6Cn9YjXRdDlCjNmUFrjvLXMNUfQq/QUy9fnG2gYkKKcrto2YaF9B32ToOQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^8.0.0-rc.3" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/rolldown-plugin-dts/node_modules/@babel/types": { + "version": "8.0.0-rc.3", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-8.0.0-rc.3.tgz", + "integrity": "sha512-mOm5ZrYmphGfqVWoH5YYMTITb3cDXsFgmvFlvkvWDMsR9X8RFnt7a0Wb6yNIdoFsiMO9WjYLq+U/FMtqIYAF8Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^8.0.0-rc.3", + "@babel/helper-validator-identifier": "^8.0.0-rc.3" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, "node_modules/scheduler": { "version": "0.27.0", "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz", @@ -2722,9 +2616,9 @@ "license": "MIT" }, "node_modules/semver": { - "version": "7.7.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", - "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", "devOptional": true, "license": "ISC", "bin": { @@ -2735,16 +2629,16 @@ } }, "node_modules/sharp": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.33.5.tgz", - "integrity": "sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==", + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.5.tgz", + "integrity": "sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg==", "hasInstallScript": true, "license": "Apache-2.0", "optional": true, "dependencies": { - "color": "^4.2.3", - "detect-libc": "^2.0.3", - "semver": "^7.6.3" + "@img/colour": "^1.0.0", + "detect-libc": "^2.1.2", + "semver": "^7.7.3" }, "engines": { "node": "^18.17.0 || ^20.3.0 || >=21.0.0" @@ -2753,35 +2647,30 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-darwin-arm64": "0.33.5", - "@img/sharp-darwin-x64": "0.33.5", - "@img/sharp-libvips-darwin-arm64": "1.0.4", - "@img/sharp-libvips-darwin-x64": "1.0.4", - "@img/sharp-libvips-linux-arm": "1.0.5", - "@img/sharp-libvips-linux-arm64": "1.0.4", - "@img/sharp-libvips-linux-s390x": "1.0.4", - "@img/sharp-libvips-linux-x64": "1.0.4", - "@img/sharp-libvips-linuxmusl-arm64": "1.0.4", - "@img/sharp-libvips-linuxmusl-x64": "1.0.4", - "@img/sharp-linux-arm": "0.33.5", - "@img/sharp-linux-arm64": "0.33.5", - "@img/sharp-linux-s390x": "0.33.5", - "@img/sharp-linux-x64": "0.33.5", - "@img/sharp-linuxmusl-arm64": "0.33.5", - "@img/sharp-linuxmusl-x64": "0.33.5", - "@img/sharp-wasm32": "0.33.5", - "@img/sharp-win32-ia32": "0.33.5", - "@img/sharp-win32-x64": "0.33.5" - } - }, - "node_modules/simple-swizzle": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.4.tgz", - "integrity": "sha512-nAu1WFPQSMNr2Zn9PGSZK9AGn4t/y97lEm+MXTtUDwfP0ksAIX4nO+6ruD9Jwut4C49SB1Ws+fbXsm/yScWOHw==", - "license": "MIT", - "optional": true, - "dependencies": { - "is-arrayish": "^0.3.1" + "@img/sharp-darwin-arm64": "0.34.5", + "@img/sharp-darwin-x64": "0.34.5", + "@img/sharp-libvips-darwin-arm64": "1.2.4", + "@img/sharp-libvips-darwin-x64": "1.2.4", + "@img/sharp-libvips-linux-arm": "1.2.4", + "@img/sharp-libvips-linux-arm64": "1.2.4", + "@img/sharp-libvips-linux-ppc64": "1.2.4", + "@img/sharp-libvips-linux-riscv64": "1.2.4", + "@img/sharp-libvips-linux-s390x": "1.2.4", + "@img/sharp-libvips-linux-x64": "1.2.4", + "@img/sharp-libvips-linuxmusl-arm64": "1.2.4", + "@img/sharp-libvips-linuxmusl-x64": "1.2.4", + "@img/sharp-linux-arm": "0.34.5", + "@img/sharp-linux-arm64": "0.34.5", + "@img/sharp-linux-ppc64": "0.34.5", + "@img/sharp-linux-riscv64": "0.34.5", + "@img/sharp-linux-s390x": "0.34.5", + "@img/sharp-linux-x64": "0.34.5", + "@img/sharp-linuxmusl-arm64": "0.34.5", + "@img/sharp-linuxmusl-x64": "0.34.5", + "@img/sharp-wasm32": "0.34.5", + "@img/sharp-win32-arm64": "0.34.5", + "@img/sharp-win32-ia32": "0.34.5", + "@img/sharp-win32-x64": "0.34.5" } }, "node_modules/source-map-js": { @@ -2793,14 +2682,6 @@ "node": ">=0.10.0" } }, - "node_modules/streamsearch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", - "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", - "engines": { - "node": ">=10.0.0" - } - }, "node_modules/styled-jsx": { "version": "5.1.6", "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.6.tgz", @@ -2825,9 +2706,9 @@ } }, "node_modules/tinyexec": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.0.2.tgz", - "integrity": "sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.0.4.tgz", + "integrity": "sha512-u9r3uZC0bdpGOXtlxUIdwf9pkmvhqJdrVCH9fapQtgy/OeTTMZ1nqH7agtvEfmGui6e1XxjcdrlxvxJvc3sMqw==", "dev": true, "license": "MIT", "engines": { @@ -2851,6 +2732,16 @@ "url": "https://github.com/sponsors/SuperchupuDev" } }, + "node_modules/tinypool": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-2.1.0.tgz", + "integrity": "sha512-Pugqs6M0m7Lv1I7FtxN4aoyToKg1C4tu+/381vH35y8oENM/Ai7f7C4StcoK4/+BSw9ebcS8jRiVrORFKCALLw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^20.0.0 || >=22.0.0" + } + }, "node_modules/tree-kill": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", @@ -2862,28 +2753,28 @@ } }, "node_modules/tsdown": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/tsdown/-/tsdown-0.19.0.tgz", - "integrity": "sha512-uqg8yzlS7GemFWcM6aCp/sptF4bJiJbWUibuHTRLLCBEsGCgJxuqxPhuVTqyHXqoEkh9ohwAdlyDKli5MEWCyQ==", + "version": "0.21.7", + "resolved": "https://registry.npmjs.org/tsdown/-/tsdown-0.21.7.tgz", + "integrity": "sha512-ukKIxKQzngkWvOYJAyptudclkm4VQqbjq+9HF5K5qDO8GJsYtMh8gIRwicbnZEnvFPr6mquFwYAVZ8JKt3rY2g==", "dev": true, "license": "MIT", "dependencies": { "ansis": "^4.2.0", - "cac": "^6.7.14", + "cac": "^7.0.0", "defu": "^6.1.4", "empathic": "^2.0.0", - "hookable": "^6.0.1", + "hookable": "^6.1.0", "import-without-cache": "^0.2.5", "obug": "^2.1.1", - "picomatch": "^4.0.3", - "rolldown": "1.0.0-beta.59", - "rolldown-plugin-dts": "^0.20.0", - "semver": "^7.7.3", - "tinyexec": "^1.0.2", + "picomatch": "^4.0.4", + "rolldown": "1.0.0-rc.12", + "rolldown-plugin-dts": "^0.23.2", + "semver": "^7.7.4", + "tinyexec": "^1.0.4", "tinyglobby": "^0.2.15", "tree-kill": "^1.2.2", - "unconfig-core": "^7.4.2", - "unrun": "^0.2.24" + "unconfig-core": "^7.5.0", + "unrun": "^0.2.34" }, "bin": { "tsdown": "dist/run.mjs" @@ -2896,16 +2787,23 @@ }, "peerDependencies": { "@arethetypeswrong/core": "^0.18.1", + "@tsdown/css": "0.21.7", + "@tsdown/exe": "0.21.7", "@vitejs/devtools": "*", "publint": "^0.3.0", - "typescript": "^5.0.0", - "unplugin-lightningcss": "^0.4.0", + "typescript": "^5.0.0 || ^6.0.0", "unplugin-unused": "^0.5.0" }, "peerDependenciesMeta": { "@arethetypeswrong/core": { "optional": true }, + "@tsdown/css": { + "optional": true + }, + "@tsdown/exe": { + "optional": true + }, "@vitejs/devtools": { "optional": true }, @@ -2915,9 +2813,6 @@ "typescript": { "optional": true }, - "unplugin-lightningcss": { - "optional": true - }, "unplugin-unused": { "optional": true } @@ -2930,9 +2825,9 @@ "license": "0BSD" }, "node_modules/typescript": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.2.tgz", + "integrity": "sha512-bGdAIrZ0wiGDo5l8c++HWtbaNCWTS4UTv7RaTH/ThVIgjkveJt83m74bBHMJkuCbslY8ixgLBVZJIOiQlQTjfQ==", "dev": true, "license": "Apache-2.0", "bin": { @@ -2944,9 +2839,9 @@ } }, "node_modules/unconfig-core": { - "version": "7.4.2", - "resolved": "https://registry.npmjs.org/unconfig-core/-/unconfig-core-7.4.2.tgz", - "integrity": "sha512-VgPCvLWugINbXvMQDf8Jh0mlbvNjNC6eSUziHsBCMpxR05OPrNrvDnyatdMjRgcHaaNsCqz+wjNXxNw1kRLHUg==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/unconfig-core/-/unconfig-core-7.5.0.tgz", + "integrity": "sha512-Su3FauozOGP44ZmKdHy2oE6LPjk51M/TRRjHv2HNCWiDvfvCoxC2lno6jevMA91MYAdCdwP05QnWdWpSbncX/w==", "dev": true, "license": "MIT", "dependencies": { @@ -2958,34 +2853,20 @@ } }, "node_modules/undici-types": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", - "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.18.2.tgz", + "integrity": "sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==", "dev": true, "license": "MIT" }, - "node_modules/unist-util-stringify-position": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", - "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/unrun": { - "version": "0.2.24", - "resolved": "https://registry.npmjs.org/unrun/-/unrun-0.2.24.tgz", - "integrity": "sha512-xa4/O5q2jmI6EqxweJ+sOy5cyORZWcsgmi8pmABVSUyg24Fh44qJrneUHavZEMsbJbghHYWKSraFy5hDCb/m4w==", + "version": "0.2.34", + "resolved": "https://registry.npmjs.org/unrun/-/unrun-0.2.34.tgz", + "integrity": "sha512-LyaghRBR++r7svhDK6tnDz2XaYHWdneBOA0jbS8wnRsHerI9MFljX4fIiTgbbNbEVzZ0C9P1OjWLLe1OqoaaEw==", "dev": true, "license": "MIT", "dependencies": { - "rolldown": "1.0.0-beta.59" + "rolldown": "1.0.0-rc.12" }, "bin": { "unrun": "dist/cli.mjs" diff --git a/package.json b/package.json index ef25fb1..95478c0 100644 --- a/package.json +++ b/package.json @@ -3,22 +3,26 @@ "version": "3.4.0", "description": "React components and hooks to fetch and present Prismic content", "keywords": [ - "typescript", "prismic", - "react" + "react", + "typescript" ], + "license": "Apache-2.0", + "author": "Prismic (https://prismic.io)", "repository": { "type": "git", "url": "git+https://github.com/prismicio/prismic-react.git" }, - "license": "Apache-2.0", - "author": "Prismic (https://prismic.io)", - "sideEffects": false, + "workspaces": [ + ".", + "e2e-projects/*" + ], + "files": [ + "dist", + "src" + ], "type": "module", - "exports": { - ".": "./dist/index.js", - "./package.json": "./package.json" - }, + "sideEffects": false, "types": "./dist/index.d.ts", "typesVersions": { "*": { @@ -27,20 +31,19 @@ ] } }, - "files": [ - "dist", - "src" - ], - "workspaces": [ - ".", - "e2e-projects/*" - ], + "exports": { + ".": "./dist/index.js", + "./package.json": "./package.json" + }, + "publishConfig": { + "access": "public" + }, "scripts": { "build": "tsdown", "dev": "tsdown --watch", "e2e": "playwright test", "e2e:ui": "npm run e2e -- --ui", - "format": "prettier --write .", + "format": "oxfmt", "lint": "oxlint --deny-warnings", "prepare": "npm run build", "test": "npm run lint && npm run types && npm run build && npm run e2e", @@ -50,20 +53,18 @@ "esm-env": "^1.2.2" }, "devDependencies": { - "@playwright/test": "^1.57.0", + "@playwright/test": "^1.59.1", "@prismicio/client": "^7.17.0", - "@trivago/prettier-plugin-sort-imports": "^6.0.2", - "@types/react": "^19.2.8", + "@types/react": "^19.2.14", "@types/react-dom": "^19.2.3", - "dotenv": "^17.2.3", - "oxlint": "^1.39.0", - "playwright": "^1.57.0", - "prettier": "^3.7.4", - "prettier-plugin-jsdoc": "^1.8.0", - "react": "^19.2.1", - "react-dom": "^19.2.3", - "tsdown": "^0.19.0", - "typescript": "^5.9.3" + "dotenv": "^17.4.0", + "oxfmt": "^0.43.0", + "oxlint": "^1.58.0", + "playwright": "^1.59.1", + "react": "^19.2.4", + "react-dom": "^19.2.4", + "tsdown": "^0.21.7", + "typescript": "^6.0.2" }, "peerDependencies": { "@prismicio/client": "^7", @@ -71,8 +72,5 @@ }, "engines": { "node": ">=20" - }, - "publishConfig": { - "access": "public" } } diff --git a/playwright.config.ts b/playwright.config.ts index f88f613..d35994c 100644 --- a/playwright.config.ts +++ b/playwright.config.ts @@ -1,16 +1,16 @@ -import { defineConfig, devices } from "@playwright/test"; -import dotenv from "dotenv"; import assert from "node:assert"; -import { fileURLToPath } from "node:url"; import { existsSync, writeFileSync } from "node:fs"; +import { fileURLToPath } from "node:url"; + +import { defineConfig, devices } from "@playwright/test"; +import dotenv from "dotenv"; dotenv.config({ path: ".env.test.local" }); export const STORAGE_STATE = fileURLToPath( new URL("./tests/infra/.storage-state.json", import.meta.url), ); -if (!existsSync(STORAGE_STATE)) - writeFileSync(STORAGE_STATE, JSON.stringify({})); +if (!existsSync(STORAGE_STATE)) writeFileSync(STORAGE_STATE, JSON.stringify({})); // https://playwright.dev/docs/test-configuration export default defineConfig({ @@ -70,11 +70,5 @@ declare global { } } -assert.ok( - process.env.E2E_PRISMIC_EMAIL, - "Missing E2E_PRISMIC_EMAIL env variable.", -); -assert.ok( - process.env.E2E_PRISMIC_PASSWORD, - "Missing E2E_PRISMIC_PASSWORD env variable.", -); +assert.ok(process.env.E2E_PRISMIC_EMAIL, "Missing E2E_PRISMIC_EMAIL env variable."); +assert.ok(process.env.E2E_PRISMIC_PASSWORD, "Missing E2E_PRISMIC_PASSWORD env variable."); diff --git a/src/PrismicImage.tsx b/src/PrismicImage.tsx index 5df7371..fc5337d 100644 --- a/src/PrismicImage.tsx +++ b/src/PrismicImage.tsx @@ -1,10 +1,3 @@ -import { - type ForwardedRef, - forwardRef, - type ComponentProps, - type FC, - type ReactNode, -} from "react"; import { type ImageFieldImage, asImagePixelDensitySrcSet, @@ -12,23 +5,15 @@ import { isFilled, } from "@prismicio/client"; import { DEV } from "esm-env"; +import { type ForwardedRef, forwardRef, type ComponentProps, type FC, type ReactNode } from "react"; import { devMsg } from "./lib/devMsg.js"; -type ImgixURLParams = Omit< - NonNullable[1]>, - "widths" -> & - Omit< - NonNullable[1]>, - "pixelDensities" - >; +type ImgixURLParams = Omit[1]>, "widths"> & + Omit[1]>, "pixelDensities">; /** Props for ``. */ -export type PrismicImageProps = Omit< - ComponentProps<"img">, - "src" | "srcset" | "alt" -> & { +export type PrismicImageProps = Omit, "src" | "srcset" | "alt"> & { /** The Prismic image field or thumbnail to render. */ field: ImageFieldImage | null | undefined; @@ -42,41 +27,35 @@ export type PrismicImageProps = Omit< /** * Declare an image as decorative by providing `alt=""`. * - * See: - * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt#decorative_images + * See: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt#decorative_images */ alt?: ""; /** - * Declare an image as decorative only if the image field does not have - * alternative text by providing `fallbackAlt=""`. + * Declare an image as decorative only if the image field does not have alternative text by + * providing `fallbackAlt=""`. * - * See: - * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt#decorative_images + * See: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt#decorative_images */ fallbackAlt?: ""; /** - * The value to be rendered when the field is empty. If a fallback is not - * given, `null` will be rendered. + * The value to be rendered when the field is empty. If a fallback is not given, `null` will be + * rendered. */ fallback?: ReactNode; } & ( | { /** - * Widths (in pixels) used to build a `srcset` value for the image - * field. + * Widths (in pixels) used to build a `srcset` value for the image field. * - * If omitted or set to `"defaults"`, the following widths will be used: - * 640, 750, 828, 1080, 1200, 1920, 2048, 3840. + * If omitted or set to `"defaults"`, the following widths will be used: 640, 750, 828, + * 1080, 1200, 1920, 2048, 3840. * - * If the image field contains responsive views, each responsive view - * can be used as a width in the resulting `srcset` by passing - * `"thumbnails"` as the `widths` prop. + * If the image field contains responsive views, each responsive view can be used as a width + * in the resulting `srcset` by passing `"thumbnails"` as the `widths` prop. */ - widths?: - | NonNullable[1]>["widths"] - | "defaults"; + widths?: NonNullable[1]>["widths"] | "defaults"; /** Not used when the `widths` prop is used. */ pixelDensities?: never; } @@ -86,13 +65,11 @@ export type PrismicImageProps = Omit< /** * Pixel densities used to build a `srcset` value for the image field. * - * If a `pixelDensities` prop is passed `"defaults"`, the following - * pixel densities will be used: 1, 2, 3. + * If a `pixelDensities` prop is passed `"defaults"`, the following pixel densities will be + * used: 1, 2, 3. */ pixelDensities: - | NonNullable< - Parameters[1] - >["pixelDensities"] + | NonNullable[1]>["pixelDensities"] | "defaults"; } ); @@ -101,94 +78,90 @@ export type PrismicImageProps = Omit< * Renders an optimized image from a Prismic image field. * * @example - * - * ```tsx - * ; - * ``` + * ```tsx + * ; + * ``` * * @see Learn how to optimize images with imgix, use responsive images, and use framework-specific image components: {@link https://prismic.io/docs/fields/image} */ -export const PrismicImage: FC = forwardRef( - function PrismicImage( - props: PrismicImageProps, - ref: ForwardedRef, - ) { - const { - field, - alt, - fallbackAlt, - imgixParams = {}, - widths, - pixelDensities, - fallback, - ...restProps - } = props; - - if (DEV) { - if (typeof alt === "string" && alt !== "") { - console.warn( - `[PrismicImage] The "alt" prop can only be used to declare an image as decorative by passing an empty string (alt="") but was provided a non-empty string. You can resolve this warning by removing the "alt" prop or changing it to alt="". For more details, see ${devMsg( - "alt-must-be-an-empty-string", - )}`, - ); - } - - if (typeof fallbackAlt === "string" && fallbackAlt !== "") { - console.warn( - `[PrismicImage] The "fallbackAlt" prop can only be used to declare an image as decorative by passing an empty string (fallbackAlt="") but was provided a non-empty string. You can resolve this warning by removing the "fallbackAlt" prop or changing it to fallbackAlt="". For more details, see ${devMsg( - "alt-must-be-an-empty-string", - )}`, - ); - } - - if (widths && pixelDensities) { - console.warn( - `[PrismicImage] Only one of "widths" or "pixelDensities" props can be provided. You can resolve this warning by removing either the "widths" or "pixelDensities" prop. "widths" will be used in this case.`, - ); - } +export const PrismicImage: FC = forwardRef(function PrismicImage( + props: PrismicImageProps, + ref: ForwardedRef, +) { + const { + field, + alt, + fallbackAlt, + imgixParams = {}, + widths, + pixelDensities, + fallback, + ...restProps + } = props; + + if (DEV) { + if (typeof alt === "string" && alt !== "") { + console.warn( + `[PrismicImage] The "alt" prop can only be used to declare an image as decorative by passing an empty string (alt="") but was provided a non-empty string. You can resolve this warning by removing the "alt" prop or changing it to alt="". For more details, see ${devMsg( + "alt-must-be-an-empty-string", + )}`, + ); } - if (!isFilled.imageThumbnail(field)) { - return <>{fallback}; + if (typeof fallbackAlt === "string" && fallbackAlt !== "") { + console.warn( + `[PrismicImage] The "fallbackAlt" prop can only be used to declare an image as decorative by passing an empty string (fallbackAlt="") but was provided a non-empty string. You can resolve this warning by removing the "fallbackAlt" prop or changing it to fallbackAlt="". For more details, see ${devMsg( + "alt-must-be-an-empty-string", + )}`, + ); } - const resolvedImgixParams = imgixParams; - for (const x in imgixParams) { - if (resolvedImgixParams[x as keyof typeof resolvedImgixParams] === null) { - resolvedImgixParams[x as keyof typeof resolvedImgixParams] = undefined; - } + if (widths && pixelDensities) { + console.warn( + `[PrismicImage] Only one of "widths" or "pixelDensities" props can be provided. You can resolve this warning by removing either the "widths" or "pixelDensities" prop. "widths" will be used in this case.`, + ); } + } - let src: string | undefined; - let srcSet: string | undefined; - - if (widths || !pixelDensities) { - const res = asImageWidthSrcSet(field, { - ...resolvedImgixParams, - widths: widths === "defaults" ? undefined : widths, - } as ImgixURLParams); + if (!isFilled.imageThumbnail(field)) { + return <>{fallback}; + } - src = res.src; - srcSet = res.srcset; - } else if (pixelDensities) { - const res = asImagePixelDensitySrcSet(field, { - ...resolvedImgixParams, - pixelDensities: - pixelDensities === "defaults" ? undefined : pixelDensities, - } as ImgixURLParams); - - src = res.src; - srcSet = res.srcset; + const resolvedImgixParams = imgixParams; + for (const x in imgixParams) { + if (resolvedImgixParams[x as keyof typeof resolvedImgixParams] === null) { + resolvedImgixParams[x as keyof typeof resolvedImgixParams] = undefined; } - - return ( - {alt - ); - }, -); + } + + let src: string | undefined; + let srcSet: string | undefined; + + if (widths || !pixelDensities) { + const res = asImageWidthSrcSet(field, { + ...resolvedImgixParams, + widths: widths === "defaults" ? undefined : widths, + } as ImgixURLParams); + + src = res.src; + srcSet = res.srcset; + } else if (pixelDensities) { + const res = asImagePixelDensitySrcSet(field, { + ...resolvedImgixParams, + pixelDensities: pixelDensities === "defaults" ? undefined : pixelDensities, + } as ImgixURLParams); + + src = res.src; + srcSet = res.srcset; + } + + return ( + {alt + ); +}); diff --git a/src/PrismicLink.tsx b/src/PrismicLink.tsx index 4262a17..808fa80 100644 --- a/src/PrismicLink.tsx +++ b/src/PrismicLink.tsx @@ -1,11 +1,3 @@ -import { - type ComponentProps, - type ComponentType, - type ForwardedRef, - type HTMLAttributeAnchorTarget, - type ReactNode, - forwardRef, -} from "react"; import { type LinkField, type LinkResolverFunction, @@ -14,6 +6,14 @@ import { type AsLinkAttrsConfig, } from "@prismicio/client"; import { DEV } from "esm-env"; +import { + type ComponentProps, + type ComponentType, + type ForwardedRef, + type HTMLAttributeAnchorTarget, + type ReactNode, + forwardRef, +} from "react"; import { devMsg } from "./lib/devMsg.js"; @@ -26,14 +26,14 @@ export interface LinkProps { href: string; /** - * The `target` attribute for anchor elements. If the Prismic field is - * configured to open in a new window, this prop defaults to `_blank`. + * The `target` attribute for anchor elements. If the Prismic field is configured to open in a new + * window, this prop defaults to `_blank`. */ target?: HTMLAttributeAnchorTarget; /** - * The `rel` attribute for anchor elements. If the `target` prop is set to - * `"_blank"`, this prop defaults to `"noopener noreferrer"`. + * The `rel` attribute for anchor elements. If the `target` prop is set to `"_blank"`, this prop + * defaults to `"noopener noreferrer"`. */ rel?: string; @@ -44,14 +44,11 @@ export interface LinkProps { export type PrismicLinkProps< InternalComponentProps = ComponentProps, ExternalComponentProps = ComponentProps, -> = Omit< - InternalComponentProps & ExternalComponentProps, - "rel" | "href" | "children" -> & { +> = Omit & { /** - * The `rel` attribute for the link. By default, `"noreferrer"` is provided if - * the link's URL is external. This prop can be provided a function to use the - * link's metadata to determine the `rel` value. + * The `rel` attribute for the link. By default, `"noreferrer"` is provided if the link's URL is + * external. This prop can be provided a function to use the link's metadata to determine the + * `rel` value. */ rel?: string | AsLinkAttrsConfig["rel"]; @@ -59,9 +56,8 @@ export type PrismicLinkProps< * The link resolver used to resolve links. * * @remarks - * If your app uses route resolvers when querying for your Prismic - * repository's content, a link resolver does not need to be provided. - * + * If your app uses route resolvers when querying for your Prismic repository's content, a link + * resolver does not need to be provided. * @see Learn about link resolvers and route resolvers {@link https://prismic.io/docs/routes} */ linkResolver?: LinkResolverFunction; @@ -69,8 +65,8 @@ export type PrismicLinkProps< /** * The component rendered for internal URLs. Defaults to ``. * - * If your app uses a client-side router that requires a special Link - * component, provide the Link component to this prop. + * If your app uses a client-side router that requires a special Link component, provide the Link + * component to this prop. */ internalComponent?: ComponentType; @@ -78,8 +74,8 @@ export type PrismicLinkProps< externalComponent?: ComponentType; /** - * The children to render for the link. If no children are provided, the - * link's `text` property will be used. + * The children to render for the link. If no children are provided, the link's `text` property + * will be used. */ children?: ReactNode; } & ( @@ -104,10 +100,9 @@ export type PrismicLinkProps< * Renders a link from a Prismic link field or page. * * @example - * - * ```tsx - * Click here; - * ``` + * ```tsx + * Click here; + * ``` * * @see Learn how to display links and use variants for styling: {@link https://prismic.io/docs/fields/link} */ @@ -141,9 +136,7 @@ export const PrismicLink = forwardRef(function PrismicLink< )}`, ); } else if ( - ("text" in field - ? Object.keys(field).length > 2 - : Object.keys(field).length > 1) && + ("text" in field ? Object.keys(field).length > 2 : Object.keys(field).length > 1) && !("url" in field || "uid" in field || "id" in field) ) { console.warn( @@ -181,10 +174,8 @@ export const PrismicLink = forwardRef(function PrismicLink< const href = ("href" in restProps ? restProps.href : computedHref) || ""; - const InternalComponent = (internalComponent || - defaultComponent) as ComponentType; - const ExternalComponent = (externalComponent || - defaultComponent) as ComponentType; + const InternalComponent = (internalComponent || defaultComponent) as ComponentType; + const ExternalComponent = (externalComponent || defaultComponent) as ComponentType; const Component = href ? isInternalURL(href) ? InternalComponent @@ -209,7 +200,6 @@ export const PrismicLink = forwardRef(function PrismicLink< * Determines if a URL is internal or external. * * @param url - The URL to check if internal or external. - * * @returns `true` if `url` is internal, `false` otherwise. */ // TODO: This does not detect all relative URLs as internal such as `about` or `./about`. This function assumes relative URLs start with a "/" or "#"`. diff --git a/src/PrismicRichText.tsx b/src/PrismicRichText.tsx index 5a06cd7..c28e4e9 100644 --- a/src/PrismicRichText.tsx +++ b/src/PrismicRichText.tsx @@ -1,5 +1,3 @@ -import { type LinkProps, PrismicLink } from "./PrismicLink.js"; -import { devMsg } from "./lib/devMsg.js"; import { isFilled, type LinkResolverFunction, @@ -23,25 +21,25 @@ import { type ReactNode, } from "react"; +import { devMsg } from "./lib/devMsg.js"; +import { type LinkProps, PrismicLink } from "./PrismicLink.js"; + /** - * A function mapping rich text block types to React Components. It is used to - * render rich text fields. + * A function mapping rich text block types to React Components. It is used to render rich text + * fields. * * @see Templating rich text fields {@link https://prismic.io/docs/fields/rich-text} */ export type JSXFunctionSerializer = RichTextFunctionSerializer; /** - * A map of rich text block types to React Components. It is used to render rich - * text fields. + * A map of rich text block types to React Components. It is used to render rich text fields. * * @see Templating rich text fields {@link https://prismic.io/docs/fields/rich-text} */ export type RichTextComponents = RichTextMapSerializer; -/** - * @deprecated Use `RichTextComponents` instead. - */ +/** @deprecated Use `RichTextComponents` instead. */ export type JSXMapSerializer = RichTextComponents; /** Props for ``. */ @@ -53,9 +51,8 @@ export type PrismicRichTextProps = { * The link resolver used to resolve links. * * @remarks - * If your app uses route resolvers when querying for your Prismic - * repository's content, a link resolver does not need to be provided. - * + * If your app uses route resolvers when querying for your Prismic repository's content, a link + * resolver does not need to be provided. * @see Learn about link resolvers and route resolvers {@link https://prismic.io/docs/routes} */ linkResolver?: LinkResolverFunction; @@ -64,28 +61,29 @@ export type PrismicRichTextProps = { * A map or function that maps a rich text block to a React component. * * @remarks - * Prefer using a map serializer over the function serializer when possible. - * The map serializer is simpler to maintain. - * - * @example A map serializer. + * Prefer using a map serializer over the function serializer when possible. The map serializer + * is simpler to maintain. + * @example + * A map serializer. * - * ```jsx - * { - * heading1: ({children}) => {children} - * } - * ``` + * ```jsx + * { + * heading1: ({children}) => {children} + * } + * ``` * - * @example A function serializer. + * @example + * A function serializer. * - * ```jsx - * (type, node, content, children) => { + * ```jsx + * (type, node, content, children) => { * switch (type) { - * case "heading1": { - * return {children}; - * } + * case "heading1": { + * return {children}; + * } * } - * }; - * ``` + * }; + * ``` */ components?: RichTextComponents | JSXFunctionSerializer; @@ -104,8 +102,8 @@ export type PrismicRichTextProps = { externalLinkComponent?: ComponentType; /** - * The value to be rendered when the field is empty. If a fallback is not - * given, `null` will be rendered. + * The value to be rendered when the field is empty. If a fallback is not given, `null` will be + * rendered. */ fallback?: ReactNode; }; @@ -122,9 +120,7 @@ const getDir = (node: RTAnyNode): "rtl" | undefined => { } }; -const createDefaultSerializer = ( - args: CreateDefaultSerializerArgs, -): JSXFunctionSerializer => +const createDefaultSerializer = (args: CreateDefaultSerializerArgs): JSXFunctionSerializer => wrapMapSerializer({ heading1: ({ node, children, key }) => (

    @@ -249,10 +245,9 @@ const createDefaultSerializer = ( * Renders content from a Prismic rich text field as React components. * * @example - * - * ```tsx - * ; - * ``` + * ```tsx + * ; + * ``` * * @see Learn how to style rich text, use custom components, and use labels for custom formatting: {@link https://prismic.io/docs/fields/rich-text} */ @@ -294,18 +289,15 @@ export const PrismicRichText: FC = (props) => { // The serializer is wrapped in a higher-order function that // automatically applies a key to React Elements if one is not already // given. - const serialized = serialize( - field, - (type, node, text, children, key) => { - const result = serializer(type, node, text, children, key); + const serialized = serialize(field, (type, node, text, children, key) => { + const result = serializer(type, node, text, children, key); - if (isValidElement(result) && result.key == null) { - return cloneElement(result, { key }); - } else { - return result; - } - }, - ); + if (isValidElement(result) && result.key == null) { + return cloneElement(result, { key }); + } else { + return result; + } + }); if (!serialized) { return fallback != null ? <>{fallback} : null; diff --git a/src/PrismicTable.tsx b/src/PrismicTable.tsx index bcc2936..362b0db 100644 --- a/src/PrismicTable.tsx +++ b/src/PrismicTable.tsx @@ -1,4 +1,3 @@ -import type { ComponentType, FC, ReactNode } from "react"; import { isFilled, type TableField, @@ -9,6 +8,7 @@ import { type TableFieldHeaderCell, type TableFieldDataCell, } from "@prismicio/client"; +import type { ComponentType, FC, ReactNode } from "react"; import { type JSXMapSerializer, PrismicRichText } from "./PrismicRichText.js"; @@ -41,20 +41,21 @@ export type PrismicTableProps = { /** * An object that maps a table block to a React component. * - * @example A map serializer. + * @example + * A map serializer. * - * ```jsx - * { - * table: ({children}) => {children}
    - * thead: ({children}) => {children} - * } - * ``` + * ```jsx + * { + * table: ({children}) => {children}
    + * thead: ({children}) => {children} + * } + * ``` */ components?: JSXMapSerializer & TableComponents; /** - * The value to be rendered when the field is empty. If a fallback is not - * given, `null` will be rendered. + * The value to be rendered when the field is empty. If a fallback is not given, `null` will be + * rendered. */ fallback?: ReactNode; }; @@ -63,10 +64,9 @@ export type PrismicTableProps = { * Renders content from a Prismic table field as React components. * * @example - * - * ```tsx - * ; - * ``` + * ```tsx + * ; + * ``` * * @see Learn how to style tables and customize table element components: {@link https://prismic.io/docs/fields/table} */ @@ -77,11 +77,7 @@ export const PrismicTable: FC = (props) => { return fallback; } - const { - table: Table, - thead: Thead, - tbody: Tbody, - } = { ...defaultComponents, ...components }; + const { table: Table, thead: Thead, tbody: Tbody } = { ...defaultComponents, ...components }; return ( diff --git a/src/PrismicText.tsx b/src/PrismicText.tsx index 60a4349..38000f9 100644 --- a/src/PrismicText.tsx +++ b/src/PrismicText.tsx @@ -1,6 +1,6 @@ -import type { FC } from "react"; import { asText, isFilled, type RichTextField } from "@prismicio/client"; import { DEV } from "esm-env"; +import type { FC } from "react"; import { devMsg } from "./lib/devMsg.js"; @@ -10,8 +10,8 @@ export type PrismicTextProps = { field: RichTextField | null | undefined; /** - * The string rendered when the field is empty. If a fallback is not given, - * `null` will be rendered. + * The string rendered when the field is empty. If a fallback is not given, `null` will be + * rendered. */ fallback?: string; @@ -23,10 +23,9 @@ export type PrismicTextProps = { * Renders content from a Prismic rich text field as plain text (no HTML). * * @example - * - * ```tsx - * ; - * ``` + * ```tsx + * ; + * ``` * * @see Learn how to display rich text as plain text or React components: {@link https://prismic.io/docs/fields/rich-text} */ diff --git a/src/PrismicToolbar.tsx b/src/PrismicToolbar.tsx index 52efa02..a0d8312 100644 --- a/src/PrismicToolbar.tsx +++ b/src/PrismicToolbar.tsx @@ -6,28 +6,26 @@ import { type FC, useEffect, useRef } from "react"; /** Props for ``. */ export type PrismicToolbarProps = { /** - * The name of the Prismic repository. For example, `"my-repo"` if the - * repository URL is `my-repo.prismic.io`. + * The name of the Prismic repository. For example, `"my-repo"` if the repository URL is + * `my-repo.prismic.io`. */ repositoryName: string; /** - * Called when the Prismic toolbar triggers a preview update. This happens - * when the previewed content changes. + * Called when the Prismic toolbar triggers a preview update. This happens when the previewed + * content changes. * * The new ref can be read from `event.detail.ref`. * - * The default page reload behavior can be cancelled with - * `event.preventDefault()`. + * The default page reload behavior can be cancelled with `event.preventDefault()`. */ onPreviewUpdate?: (event: CustomEvent<{ ref: string }>) => void; /** - * Called when the Prismic toolbar triggers a preview end. This happens when - * a preview session is closed. + * Called when the Prismic toolbar triggers a preview end. This happens when a preview session is + * closed. * - * The default page reload behavior can be cancelled with - * `event.preventDefault()`. + * The default page reload behavior can be cancelled with `event.preventDefault()`. */ onPreviewEnd?: (event: CustomEvent) => void; }; @@ -36,10 +34,9 @@ export type PrismicToolbarProps = { * Renders the Prismic Toolbar script to support draft previews. * * @example - * - * ```tsx - * ; - * ``` + * ```tsx + * ; + * ``` * * @see Learn how to set up preview functionality and the toolbar's role in preview sessions: {@link https://prismic.io/docs/previews} */ @@ -79,8 +76,7 @@ export const PrismicToolbar: FC = (props) => { window.addEventListener( "prismicPreviewUpdate", - (event) => - onPreviewUpdateRef.current?.(event as CustomEvent<{ ref: string }>), + (event) => onPreviewUpdateRef.current?.(event as CustomEvent<{ ref: string }>), { signal: controller.signal }, ); diff --git a/src/SliceZone.tsx b/src/SliceZone.tsx index 87f7c72..73a94a1 100644 --- a/src/SliceZone.tsx +++ b/src/SliceZone.tsx @@ -1,6 +1,6 @@ -import type { ComponentType, FC, ReactNode } from "react"; import type { Slice } from "@prismicio/client"; import { DEV } from "esm-env"; +import type { ComponentType, FC, ReactNode } from "react"; /** * Returns the type of a `SliceLike` type. @@ -14,8 +14,8 @@ type ExtractSliceType = TSlice extends Slice : never; /** - * The minimum required properties to represent a Prismic slice from the Prismic - * Content API for the `mapSliceZone()` helper. + * The minimum required properties to represent a Prismic slice from the Prismic Content API for the + * `mapSliceZone()` helper. * * @typeParam SliceType - Type name of the slice. */ @@ -25,8 +25,8 @@ export type SliceLikeRestV2 = Pick< >; /** - * The minimum required properties to represent a Prismic slice from the Prismic - * GraphQL API for the `mapSliceZone()` helper. + * The minimum required properties to represent a Prismic slice from the Prismic GraphQL API for the + * `mapSliceZone()` helper. * * @typeParam SliceType - Type name of the slice. */ @@ -35,11 +35,10 @@ export type SliceLikeGraphQL = { }; /** - * The minimum required properties to represent a Prismic slice for the - * `mapSliceZone()` helper. + * The minimum required properties to represent a Prismic slice for the `mapSliceZone()` helper. * - * If using Prismic's Content API, use the `Slice` export from - * `@prismicio/client` for a full interface. + * If using Prismic's Content API, use the `Slice` export from `@prismicio/client` for a full + * interface. * * @typeParam SliceType - Type name of the slice. */ @@ -48,8 +47,8 @@ export type SliceLike = ( | SliceLikeGraphQL ) & { /** - * If `true`, this slice has been modified from its original value using a - * mapper and `@prismicio/client`'s `mapSliceZone()`. + * If `true`, this slice has been modified from its original value using a mapper and + * `@prismicio/client`'s `mapSliceZone()`. * * @internal */ @@ -57,29 +56,24 @@ export type SliceLike = ( }; /** - * A looser version of the `SliceZone` type from `@prismicio/client` using - * `SliceLike`. + * A looser version of the `SliceZone` type from `@prismicio/client` using `SliceLike`. * - * If using Prismic's Content API, use the `SliceZone` export from - * `@prismicio/client` for the full type. + * If using Prismic's Content API, use the `SliceZone` export from `@prismicio/client` for the full + * type. * * @typeParam TSlice - The type(s) of a slice in the slice zone. */ -export type SliceZoneLike = - readonly TSlice[]; +export type SliceZoneLike = readonly TSlice[]; /** - * React props for a component rendering content from a Prismic slice using the - * `` component. + * React props for a component rendering content from a Prismic slice using the `` + * component. * * @typeParam TSlice - The slice passed as a prop. - * @typeParam TContext - Arbitrary data passed to `` and made - * available to all slice components. + * @typeParam TContext - Arbitrary data passed to `` and made available to all slice + * components. */ -export type SliceComponentProps< - TSlice extends SliceLike = SliceLike, - TContext = unknown, -> = { +export type SliceComponentProps = { /** Slice data for this component. */ slice: TSlice; @@ -91,14 +85,9 @@ export type SliceComponentProps< // reference limtiations. If we had another generic to determine the full // union of slice types, it would include TSlice. This causes TypeScript to // throw a compilation error. - slices: SliceZoneLike< - TSlice extends SliceLikeGraphQL ? SliceLikeGraphQL : SliceLikeRestV2 - >; + slices: SliceZoneLike; - /** - * Arbitrary data passed to `` and made available to all slice - * components. - */ + /** Arbitrary data passed to `` and made available to all slice components. */ context: TContext; }; @@ -115,19 +104,15 @@ export type SliceComponentType< > = ComponentType>; /** - * A record of slice types mapped to a React component. The component will be - * rendered for each instance of its slice. + * A record of slice types mapped to a React component. The component will be rendered for each + * instance of its slice. * * @deprecated This type is no longer used by `@prismicio/react`. Prefer using * `Record>` instead. - * * @typeParam TSlice - The type(s) of a slice in the slice zone. * @typeParam TContext - Arbitrary data made available to all slice components. */ -export type SliceZoneComponents< - TSlice extends SliceLike = SliceLike, - TContext = unknown, -> = +export type SliceZoneComponents = // This is purposely not wrapped in Partial to ensure a component is provided // for all slice types. will render a default component if one is // not provided, but it *should* be a type error if an explicit component is @@ -160,10 +145,7 @@ export type SliceZoneProps = { // eslint-disable-next-line @typescript-eslint/no-explicit-any components?: Record>; - /** - * The React component rendered if a component mapping from the `components` - * prop cannot be found. - */ + /** The React component rendered if a component mapping from the `components` prop cannot be found. */ // eslint-disable-next-line @typescript-eslint/no-explicit-any defaultComponent?: ComponentType>; @@ -172,11 +154,10 @@ export type SliceZoneProps = { }; /** - * This slice component can be used as a reminder to provide a proper - * implementation. + * This slice component can be used as a reminder to provide a proper implementation. * - * This is also the default React component rendered when a component mapping - * cannot be found in ``. + * This is also the default React component rendered when a component mapping cannot be found in + * ``. */ export const TODOSliceComponent = ({ slice, @@ -189,10 +170,7 @@ export const TODOSliceComponent = ({ const type = "slice_type" in slice ? slice.slice_type : slice.type; - console.warn( - `[SliceZone] Could not find a component for slice type "${type}"`, - slice, - ); + console.warn(`[SliceZone] Could not find a component for slice type "${type}"`, slice); return (
    @@ -206,31 +184,21 @@ export const TODOSliceComponent = ({ * Renders slices in a slice zone as React components. * * @example - * - * ```tsx - * ; - * ``` + * ```tsx + * ; + * ``` * * @see Learn how to create slices, use slice variations, and display slices: {@link https://prismic.io/docs/slices} */ export const SliceZone: FC = (props) => { - const { - slices = [], - components = {}, - defaultComponent, - context = {}, - } = props; + const { slices = [], components = {}, defaultComponent, context = {} } = props; const renderedSlices = slices.map((slice, index) => { const type = "slice_type" in slice ? slice.slice_type : slice.type; - const key = - "id" in slice && slice.id - ? slice.id - : `${index}-${JSON.stringify(slice)}`; + const key = "id" in slice && slice.id ? slice.id : `${index}-${JSON.stringify(slice)}`; - const Comp = - components[type as keyof typeof components] || defaultComponent; + const Comp = components[type as keyof typeof components] || defaultComponent; if (!Comp) { return ; @@ -242,15 +210,7 @@ export const SliceZone: FC = (props) => { return ; } - return ( - - ); + return ; }); return <>{renderedSlices}; diff --git a/src/lib/devMsg.ts b/src/lib/devMsg.ts index a735599..0f829f0 100644 --- a/src/lib/devMsg.ts +++ b/src/lib/devMsg.ts @@ -4,15 +4,13 @@ import { version } from "../../package.json"; * Returns a `prismic.dev/msg` URL for a given message slug. * * @example + * ```ts + * devMsg("missing-param"); + * // => "https://prismic.dev/msg/react/v1.2.3/missing-param" + * ``` * - * ```ts - * devMsg("missing-param"); - * // => "https://prismic.dev/msg/react/v1.2.3/missing-param" - * ``` - * - * @param slug - Slug for the message. This corresponds to a Markdown file in - * the Git repository's `/messages` directory. - * + * @param slug - Slug for the message. This corresponds to a Markdown file in the Git repository's + * `/messages` directory. * @returns The `prismic.dev/msg` URL for the given slug. */ export function devMsg(slug: string): string { diff --git a/tests/PrismicImage.spec.ts b/tests/PrismicImage.spec.ts index 8607ae8..a717bea 100644 --- a/tests/PrismicImage.spec.ts +++ b/tests/PrismicImage.spec.ts @@ -56,9 +56,7 @@ test('renders a width-based srcset with the field\'s responsive views if widths ); }); -test("renders pixel-density srcset with the given densities", async ({ - page, -}) => { +test("renders pixel-density srcset with the given densities", async ({ page }) => { const image = page.getByTestId("pixel-densities"); await expect(image).toHaveAttribute( "src", @@ -116,9 +114,7 @@ test("excludes alt text if the field does not have any", async ({ page }) => { await expect(image).not.toHaveAttribute("alt"); }); -test("renders an explicit decorative fallback alt value if given", async ({ - page, -}) => { +test("renders an explicit decorative fallback alt value if given", async ({ page }) => { const image = page.getByTestId("with-decorative-fallback-alt"); await expect(image).toHaveAttribute("alt", ""); }); diff --git a/tests/PrismicLink.spec.ts b/tests/PrismicLink.spec.ts index 9b775a4..05903ce 100644 --- a/tests/PrismicLink.spec.ts +++ b/tests/PrismicLink.spec.ts @@ -24,9 +24,7 @@ test.describe("web links", () => { await expect(link).toHaveAttribute("target", "_blank"); }); - test("renders an external web link with a provided target", async ({ - page, - }) => { + test("renders an external web link with a provided target", async ({ page }) => { const link = page.getByTestId("external-web-with-target-override"); await expect(link).toHaveAttribute("target", "foo"); }); @@ -41,9 +39,7 @@ test.describe("web links", () => { await expect(link).not.toHaveAttribute("rel"); }); - test("can render an external web link with rel derived from a function", async ({ - page, - }) => { + test("can render an external web link with rel derived from a function", async ({ page }) => { const link = page.getByTestId("external-web-with-rel-function"); await expect(link).toHaveAttribute( "rel", @@ -85,18 +81,14 @@ test.describe("media links", () => { }); test.describe("documents", () => { - test("renders a document link with a route resolver via the document prop", async ({ - page, - }) => { + test("renders a document link with a route resolver via the document prop", async ({ page }) => { const link = page.getByTestId("document-prop-with-route-resolver"); await expect(link).toHaveAttribute("href", "/page"); await expect(link).not.toHaveAttribute("rel"); await expect(link).not.toHaveAttribute("target"); }); - test("renders a document link with a link resolver via the document prop", async ({ - page, - }) => { + test("renders a document link with a link resolver via the document prop", async ({ page }) => { const link = page.getByTestId("document-prop-with-link-resolver"); await expect(link).toHaveAttribute("href", "/page"); await expect(link).not.toHaveAttribute("rel"); @@ -122,9 +114,7 @@ test.describe("href", () => { test("renders default next/link href on falsy href", async ({ page }) => { const link = page.getByTestId("falsy-href-prop"); - const defaultHref = await page - .getByTestId("default-link-falsy-href") - .getAttribute("href"); + const defaultHref = await page.getByTestId("default-link-falsy-href").getAttribute("href"); expect(await link.getAttribute("href")).toEqual(defaultHref); await expect(link).not.toHaveAttribute("rel"); await expect(link).not.toHaveAttribute("target"); @@ -137,9 +127,7 @@ test.describe("with text", () => { await expect(link).toContainText("foo"); }); - test("renders the given children, overriding the link's text", async ({ - page, - }) => { + test("renders the given children, overriding the link's text", async ({ page }) => { const link = page.getByTestId("with-text-override"); await expect(link).toContainText("override"); }); diff --git a/tests/PrismicRichText.spec.ts b/tests/PrismicRichText.spec.ts index 104df48..1b171ac 100644 --- a/tests/PrismicRichText.spec.ts +++ b/tests/PrismicRichText.spec.ts @@ -141,9 +141,7 @@ test.describe("strong", () => { test("custom", async ({ page }) => { const scope = page.getByTestId("strong"); const output = scope.getByTestId("custom"); - expect(await output.innerHTML()).toBe( - '

    foo

    ', - ); + expect(await output.innerHTML()).toBe('

    foo

    '); }); }); @@ -157,9 +155,7 @@ test.describe("em", () => { test("custom", async ({ page }) => { const scope = page.getByTestId("em"); const output = scope.getByTestId("custom"); - expect(await output.innerHTML()).toBe( - '

    foo

    ', - ); + expect(await output.innerHTML()).toBe('

    foo

    '); }); }); @@ -267,9 +263,7 @@ test.describe("label", () => { test("default", async ({ page }) => { const scope = page.getByTestId("label"); const output = scope.getByTestId("default"); - expect(await output.innerHTML()).toBe( - '

    foo

    ', - ); + expect(await output.innerHTML()).toBe('

    foo

    '); }); test("custom", async ({ page }) => { diff --git a/tests/PrismicToolbar.spec.ts b/tests/PrismicToolbar.spec.ts index 9c73b9d..9101b3e 100644 --- a/tests/PrismicToolbar.spec.ts +++ b/tests/PrismicToolbar.spec.ts @@ -8,18 +8,14 @@ test("adds the Prismic toolbar", async ({ appPage }) => { await expect(appPage.toolbarIframe).toHaveCount(1); }); -test("includes the repository name in the script element", async ({ - appPage, -}) => { +test("includes the repository name in the script element", async ({ appPage }) => { await expect(appPage.toolbarScript).toHaveAttribute( "data-repository-name", appPage.repository.domain, ); }); -test("calls onPreviewUpdate when prismicPreviewUpdate is dispatched", async ({ - page, -}) => { +test("calls onPreviewUpdate when prismicPreviewUpdate is dispatched", async ({ page }) => { await page.goto("/PrismicToolbar/preview-events"); const updateCount = page.getByTestId("update-count"); @@ -47,25 +43,19 @@ test("calls onPreviewUpdate when prismicPreviewUpdate is dispatched", async ({ await expect(updateRef).toHaveText("test-ref-2"); }); -test("calls onPreviewEnd when prismicPreviewEnd is dispatched", async ({ - page, -}) => { +test("calls onPreviewEnd when prismicPreviewEnd is dispatched", async ({ page }) => { await page.goto("/PrismicToolbar/preview-events"); const endCount = page.getByTestId("end-count"); await expect(endCount).toHaveText("0"); await page.evaluate(() => { - window.dispatchEvent( - new CustomEvent("prismicPreviewEnd", { detail: null }), - ); + window.dispatchEvent(new CustomEvent("prismicPreviewEnd", { detail: null })); }); await expect(endCount).toHaveText("1"); await page.evaluate(() => { - window.dispatchEvent( - new CustomEvent("prismicPreviewEnd", { detail: null }), - ); + window.dispatchEvent(new CustomEvent("prismicPreviewEnd", { detail: null })); }); await expect(endCount).toHaveText("2"); }); diff --git a/tests/SliceZone.spec.ts b/tests/SliceZone.spec.ts index a5a8e2e..4df0f06 100644 --- a/tests/SliceZone.spec.ts +++ b/tests/SliceZone.spec.ts @@ -21,9 +21,7 @@ test("renders null by when passed an empty slice zone", async ({ page }) => { await expect(output).toBeEmpty(); }); -test("renders TODO component if component mapping is missing", async ({ - page, -}) => { +test("renders TODO component if component mapping is missing", async ({ page }) => { const output = page.getByTestId("todo"); const todo = output.locator("[data-slice-zone-todo-component]"); await expect(todo).toHaveAttribute("data-slice-type", "image"); diff --git a/tests/infra/client.ts b/tests/infra/client.ts index d898457..2534c2a 100644 --- a/tests/infra/client.ts +++ b/tests/infra/client.ts @@ -1,14 +1,8 @@ -import { - type APIRequestContext, - type APIResponse, - request, -} from "@playwright/test"; -import type { - CustomType, - SharedSlice, -} from "@prismicio/types-internal/lib/customtypes"; -import { randomUUID } from "node:crypto"; import assert from "node:assert"; +import { randomUUID } from "node:crypto"; + +import { type APIRequestContext, type APIResponse, request } from "@playwright/test"; +import type { CustomType, SharedSlice } from "@prismicio/types-internal/lib/customtypes"; type PrismicURLs = { wroom: URL; auth: URL; customtypes: URL }; type RepoURLs = PrismicURLs & { cdn: URL; core: URL }; @@ -23,11 +17,7 @@ export class Prismic { urls: PrismicURLs; #auth: AuthenticatedAPI; - constructor(config: { - baseURL: string; - auth: Auth; - request: APIRequestContext; - }) { + constructor(config: { baseURL: string; auth: Auth; request: APIRequestContext }) { const { baseURL, auth, request } = config; this.urls = { wroom: new URL(baseURL), @@ -37,10 +27,7 @@ export class Prismic { this.#auth = new AuthenticatedAPI({ urls: this.urls, auth, request }); } - async createRepository(args: { - defaultLocale: string; - prefix?: string; - }): Promise { + async createRepository(args: { defaultLocale: string; prefix?: string }): Promise { const { defaultLocale, prefix = "e2e-tests" } = args; const suffix = randomUUID().replace("-", "").slice(0, 16); const data = { @@ -70,11 +57,7 @@ export class Repo { urls: RepoURLs; #auth: AuthenticatedAPI; - constructor(config: { - domain: string; - urls: PrismicURLs; - auth: AuthenticatedAPI; - }) { + constructor(config: { domain: string; urls: PrismicURLs; auth: AuthenticatedAPI }) { const { domain, auth, urls } = config; this.domain = domain; this.urls = { @@ -87,10 +70,7 @@ export class Repo { } async setDefaultLocale(locale: string): Promise { - const url = new URL( - `app/settings/multilanguages/${locale}/createMasterLang`, - this.urls.wroom, - ); + const url = new URL(`app/settings/multilanguages/${locale}/createMasterLang`, this.urls.wroom); const res = await this.#auth.postWroom(url.toString()); assert(res.ok, `Could not default locale to ${locale}.`); } @@ -107,9 +87,7 @@ export class Repo { assert(res.ok, `Could not create preview ${name}.`); } - async getPreviewConfigs(): Promise< - { id: string; label: string; url: string }[] - > { + async getPreviewConfigs(): Promise<{ id: string; label: string; url: string }[]> { const url = new URL("repository/preview_configs", this.urls.core); const res = await this.#auth.get(url.toString()); assert(res.ok, `Could not get preview configs.`); @@ -188,10 +166,7 @@ export class Repo { return res.json(); } - async getDocumentByUID( - type: string, - uid: string, - ): Promise { + async getDocumentByUID(type: string, uid: string): Promise { const url = new URL("documents", this.urls.core); url.searchParams.set("uid", uid); const res = await this.#auth.get(url.toString()); @@ -226,48 +201,34 @@ class AuthenticatedAPI { #wroomRequest: Promise; #cachedToken?: string; - constructor(config: { - urls: PrismicURLs; - auth: Auth; - request: APIRequestContext; - }) { + constructor(config: { urls: PrismicURLs; auth: Auth; request: APIRequestContext }) { this.urls = config.urls; this.auth = config.auth; this.#request = config.request; this.#wroomRequest = request.newContext(); } - async get( - ...args: Parameters - ): Promise { + async get(...args: Parameters): Promise { const headers = await this.#headers(args[1]?.headers); return await this.#request.get(args[0], { ...args[1], headers }); } - async post( - ...args: Parameters - ): Promise { + async post(...args: Parameters): Promise { const headers = await this.#headers(args[1]?.headers); return await this.#request.post(args[0], { ...args[1], headers }); } - async put( - ...args: Parameters - ): Promise { + async put(...args: Parameters): Promise { const headers = await this.#headers(args[1]?.headers); return await this.#request.put(args[0], { ...args[1], headers }); } - async patch( - ...args: Parameters - ): Promise { + async patch(...args: Parameters): Promise { const headers = await this.#headers(args[1]?.headers); return await this.#request.patch(args[0], { ...args[1], headers }); } - async postWroom( - ...args: Parameters - ): Promise { + async postWroom(...args: Parameters): Promise { const request = await this.#wroomRequest; const { cookies } = await request.storageState(); const auth = cookies.find((cookie) => cookie.name === "prismic-auth"); @@ -297,9 +258,7 @@ class AuthenticatedAPI { return (this.#cachedToken = await res.text()); } - async #headers( - existingHeaders?: Record, - ): Promise> { + async #headers(existingHeaders?: Record): Promise> { const token = await this.#token(); return { authorization: `Bearer ${token}`, ...existingHeaders }; } diff --git a/tests/infra/content/link.ts b/tests/infra/content/link.ts index 37a191f..97a82c3 100644 --- a/tests/infra/content/link.ts +++ b/tests/infra/content/link.ts @@ -80,9 +80,7 @@ export const model = { }, } as const; -export function content(args: { - documentLinkID: string; -}): Record { +export function content(args: { documentLinkID: string }): Record { const { documentLinkID } = args; return { diff --git a/tests/infra/setup.ts b/tests/infra/setup.ts index 8efe167..bb601c9 100644 --- a/tests/infra/setup.ts +++ b/tests/infra/setup.ts @@ -1,12 +1,10 @@ import { STORAGE_STATE } from "../../playwright.config"; -import { test as setup } from "./test"; import * as content from "./content"; +import { test as setup } from "./test"; setup("create repo", async ({ page, prismic }) => { const cookies = await page.context().cookies(); - const repositoryName = cookies.find( - (cookie) => cookie.name === "repository-name", - )?.value; + const repositoryName = cookies.find((cookie) => cookie.name === "repository-name")?.value; if (repositoryName) return; diff --git a/tests/infra/test.ts b/tests/infra/test.ts index d56c8cf..56e334b 100644 --- a/tests/infra/test.ts +++ b/tests/infra/test.ts @@ -1,12 +1,8 @@ +import assert from "assert"; + /* oxlint-disable rules-of-hooks */ -import { - type Locator, - type Page, - test as base, - expect, -} from "@playwright/test"; +import { type Locator, type Page, test as base, expect } from "@playwright/test"; import { createClient } from "@prismicio/client"; -import assert from "assert"; import { type CoreAPIDocument, Prismic, type Repo } from "./client"; @@ -76,10 +72,9 @@ class AppPage { } async goToDocument(document: CoreAPIDocument, pathPrefix = "") { - const client = createClient( - new URL("/api/v2", this.repository.urls.cdn).toString(), - { routes: [{ type: "page", path: "/:uid" }] }, - ); + const client = createClient(new URL("/api/v2", this.repository.urls.cdn).toString(), { + routes: [{ type: "page", path: "/:uid" }], + }); const apiDocument = await client.getByID(document.id); return await this.page.goto(pathPrefix + apiDocument.url!); }