├── .changeset └── config.json ├── .editorconfig ├── .github ├── renovate.json └── workflows │ ├── deploy.yml │ ├── format-if-needed.yml │ ├── main.yml │ ├── release.yml │ └── renovate.yml ├── .gitignore ├── .oxfmtrc.json ├── .oxlintrc.json ├── CHANGELOG.md ├── LICENSE ├── MIGRATING.md ├── README.md ├── demo ├── components │ ├── AnnotatedMap.tsx │ ├── CharacterReference.tsx │ ├── Code.css │ ├── Code.tsx │ ├── CurrencyAmount.tsx │ ├── Leaflet.tsx │ ├── Link.tsx │ ├── LinkableHeader.tsx │ ├── SchnauzerList.tsx │ ├── SpeechSynthesis.tsx │ └── TermDefinition.tsx ├── demo.css ├── demo.tsx ├── external.d.ts ├── fixture.ts └── index.html ├── package.config.ts ├── package.json ├── pnpm-lock.yaml ├── src ├── components │ ├── defaults.tsx │ ├── list.tsx │ ├── marks.tsx │ ├── merge.ts │ └── unknown.tsx ├── index.ts ├── react-portable-text.tsx ├── types.ts └── warnings.ts ├── test ├── components.test.tsx ├── fixtures │ ├── 001-empty-block.ts │ ├── 002-single-span.ts │ ├── 003-multiple-spans.ts │ ├── 004-basic-mark-single-span.ts │ ├── 005-basic-mark-multiple-adjacent-spans.ts │ ├── 006-basic-mark-nested-marks.ts │ ├── 007-link-mark-def.ts │ ├── 008-plain-header-block.ts │ ├── 009-messy-link-text.ts │ ├── 010-basic-bullet-list.ts │ ├── 011-basic-numbered-list.ts │ ├── 014-nested-lists.ts │ ├── 015-all-basic-marks.ts │ ├── 016-deep-weird-lists.ts │ ├── 017-all-default-block-styles.ts │ ├── 018-marks-all-the-way-down.ts │ ├── 019-keyless.ts │ ├── 020-empty-array.ts │ ├── 021-list-without-level.ts │ ├── 022-inline-nodes.ts │ ├── 023-hard-breaks.ts │ ├── 024-inline-objects.ts │ ├── 026-inline-block-with-text.ts │ ├── 027-styled-list-items.ts │ ├── 028-custom-list-item-type.ts │ ├── 050-custom-block-type.ts │ ├── 052-custom-marks.ts │ ├── 053-override-default-marks.ts │ ├── 060-list-issue.ts │ ├── 061-missing-mark-component.ts │ ├── 062-custom-block-type-with-children.ts │ └── index.ts ├── mutations.test.tsx ├── portable-text.test.tsx └── toPlainText.test.ts ├── tsconfig.dist.json ├── tsconfig.json ├── tsconfig.settings.json └── vite.config.demo.ts /.changeset/config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/.changeset/config.json -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/.editorconfig -------------------------------------------------------------------------------- /.github/renovate.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/.github/renovate.json -------------------------------------------------------------------------------- /.github/workflows/deploy.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/.github/workflows/deploy.yml -------------------------------------------------------------------------------- /.github/workflows/format-if-needed.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/.github/workflows/format-if-needed.yml -------------------------------------------------------------------------------- /.github/workflows/main.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/.github/workflows/main.yml -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/.github/workflows/release.yml -------------------------------------------------------------------------------- /.github/workflows/renovate.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/.github/workflows/renovate.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/.gitignore -------------------------------------------------------------------------------- /.oxfmtrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/.oxfmtrc.json -------------------------------------------------------------------------------- /.oxlintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/.oxlintrc.json -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/LICENSE -------------------------------------------------------------------------------- /MIGRATING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/MIGRATING.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/README.md -------------------------------------------------------------------------------- /demo/components/AnnotatedMap.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/demo/components/AnnotatedMap.tsx -------------------------------------------------------------------------------- /demo/components/CharacterReference.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/demo/components/CharacterReference.tsx -------------------------------------------------------------------------------- /demo/components/Code.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/demo/components/Code.css -------------------------------------------------------------------------------- /demo/components/Code.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/demo/components/Code.tsx -------------------------------------------------------------------------------- /demo/components/CurrencyAmount.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/demo/components/CurrencyAmount.tsx -------------------------------------------------------------------------------- /demo/components/Leaflet.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/demo/components/Leaflet.tsx -------------------------------------------------------------------------------- /demo/components/Link.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/demo/components/Link.tsx -------------------------------------------------------------------------------- /demo/components/LinkableHeader.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/demo/components/LinkableHeader.tsx -------------------------------------------------------------------------------- /demo/components/SchnauzerList.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/demo/components/SchnauzerList.tsx -------------------------------------------------------------------------------- /demo/components/SpeechSynthesis.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/demo/components/SpeechSynthesis.tsx -------------------------------------------------------------------------------- /demo/components/TermDefinition.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/demo/components/TermDefinition.tsx -------------------------------------------------------------------------------- /demo/demo.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/demo/demo.css -------------------------------------------------------------------------------- /demo/demo.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/demo/demo.tsx -------------------------------------------------------------------------------- /demo/external.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/demo/external.d.ts -------------------------------------------------------------------------------- /demo/fixture.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/demo/fixture.ts -------------------------------------------------------------------------------- /demo/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/demo/index.html -------------------------------------------------------------------------------- /package.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/package.config.ts -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/package.json -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/pnpm-lock.yaml -------------------------------------------------------------------------------- /src/components/defaults.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/src/components/defaults.tsx -------------------------------------------------------------------------------- /src/components/list.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/src/components/list.tsx -------------------------------------------------------------------------------- /src/components/marks.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/src/components/marks.tsx -------------------------------------------------------------------------------- /src/components/merge.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/src/components/merge.ts -------------------------------------------------------------------------------- /src/components/unknown.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/src/components/unknown.tsx -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/react-portable-text.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/src/react-portable-text.tsx -------------------------------------------------------------------------------- /src/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/src/types.ts -------------------------------------------------------------------------------- /src/warnings.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/src/warnings.ts -------------------------------------------------------------------------------- /test/components.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/components.test.tsx -------------------------------------------------------------------------------- /test/fixtures/001-empty-block.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/001-empty-block.ts -------------------------------------------------------------------------------- /test/fixtures/002-single-span.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/002-single-span.ts -------------------------------------------------------------------------------- /test/fixtures/003-multiple-spans.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/003-multiple-spans.ts -------------------------------------------------------------------------------- /test/fixtures/004-basic-mark-single-span.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/004-basic-mark-single-span.ts -------------------------------------------------------------------------------- /test/fixtures/005-basic-mark-multiple-adjacent-spans.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/005-basic-mark-multiple-adjacent-spans.ts -------------------------------------------------------------------------------- /test/fixtures/006-basic-mark-nested-marks.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/006-basic-mark-nested-marks.ts -------------------------------------------------------------------------------- /test/fixtures/007-link-mark-def.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/007-link-mark-def.ts -------------------------------------------------------------------------------- /test/fixtures/008-plain-header-block.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/008-plain-header-block.ts -------------------------------------------------------------------------------- /test/fixtures/009-messy-link-text.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/009-messy-link-text.ts -------------------------------------------------------------------------------- /test/fixtures/010-basic-bullet-list.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/010-basic-bullet-list.ts -------------------------------------------------------------------------------- /test/fixtures/011-basic-numbered-list.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/011-basic-numbered-list.ts -------------------------------------------------------------------------------- /test/fixtures/014-nested-lists.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/014-nested-lists.ts -------------------------------------------------------------------------------- /test/fixtures/015-all-basic-marks.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/015-all-basic-marks.ts -------------------------------------------------------------------------------- /test/fixtures/016-deep-weird-lists.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/016-deep-weird-lists.ts -------------------------------------------------------------------------------- /test/fixtures/017-all-default-block-styles.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/017-all-default-block-styles.ts -------------------------------------------------------------------------------- /test/fixtures/018-marks-all-the-way-down.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/018-marks-all-the-way-down.ts -------------------------------------------------------------------------------- /test/fixtures/019-keyless.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/019-keyless.ts -------------------------------------------------------------------------------- /test/fixtures/020-empty-array.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/020-empty-array.ts -------------------------------------------------------------------------------- /test/fixtures/021-list-without-level.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/021-list-without-level.ts -------------------------------------------------------------------------------- /test/fixtures/022-inline-nodes.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/022-inline-nodes.ts -------------------------------------------------------------------------------- /test/fixtures/023-hard-breaks.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/023-hard-breaks.ts -------------------------------------------------------------------------------- /test/fixtures/024-inline-objects.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/024-inline-objects.ts -------------------------------------------------------------------------------- /test/fixtures/026-inline-block-with-text.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/026-inline-block-with-text.ts -------------------------------------------------------------------------------- /test/fixtures/027-styled-list-items.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/027-styled-list-items.ts -------------------------------------------------------------------------------- /test/fixtures/028-custom-list-item-type.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/028-custom-list-item-type.ts -------------------------------------------------------------------------------- /test/fixtures/050-custom-block-type.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/050-custom-block-type.ts -------------------------------------------------------------------------------- /test/fixtures/052-custom-marks.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/052-custom-marks.ts -------------------------------------------------------------------------------- /test/fixtures/053-override-default-marks.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/053-override-default-marks.ts -------------------------------------------------------------------------------- /test/fixtures/060-list-issue.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/060-list-issue.ts -------------------------------------------------------------------------------- /test/fixtures/061-missing-mark-component.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/061-missing-mark-component.ts -------------------------------------------------------------------------------- /test/fixtures/062-custom-block-type-with-children.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/062-custom-block-type-with-children.ts -------------------------------------------------------------------------------- /test/fixtures/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/fixtures/index.ts -------------------------------------------------------------------------------- /test/mutations.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/mutations.test.tsx -------------------------------------------------------------------------------- /test/portable-text.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/portable-text.test.tsx -------------------------------------------------------------------------------- /test/toPlainText.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/test/toPlainText.test.ts -------------------------------------------------------------------------------- /tsconfig.dist.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/tsconfig.dist.json -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/tsconfig.json -------------------------------------------------------------------------------- /tsconfig.settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/tsconfig.settings.json -------------------------------------------------------------------------------- /vite.config.demo.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/portabletext/react-portabletext/HEAD/vite.config.demo.ts --------------------------------------------------------------------------------