@contentful/rich-text-plain-text-renderer
Advanced tools
@@ -73,2 +73,3 @@ 'use strict'; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.MARKS = void 0; | ||
| /** | ||
@@ -85,4 +86,3 @@ * Map of all Contentful marks. | ||
| MARKS["SUBSCRIPT"] = "subscript"; | ||
| })(MARKS || (MARKS = {})); | ||
| exports.default = MARKS; | ||
| })(MARKS || (exports.MARKS = MARKS = {})); | ||
@@ -92,2 +92,3 @@ }); | ||
| unwrapExports(marks); | ||
| var marks_1 = marks.MARKS; | ||
@@ -104,5 +105,2 @@ var schemaConstraints = createCommonjsModule(function (module, exports) { | ||
| }; | ||
| var __importDefault = (commonjsGlobal && commonjsGlobal.__importDefault) || function (mod) { | ||
| return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
| }; | ||
| var _a; | ||
@@ -113,3 +111,3 @@ Object.defineProperty(exports, "__esModule", { value: true }); | ||
| var marks_1 = __importDefault(marks); | ||
| /** | ||
@@ -228,3 +226,3 @@ * Array of all top level block types. | ||
| */ | ||
| exports.V1_MARKS = [marks_1.default.BOLD, marks_1.default.CODE, marks_1.default.ITALIC, marks_1.default.UNDERLINE]; | ||
| exports.V1_MARKS = [marks.MARKS.BOLD, marks.MARKS.CODE, marks.MARKS.ITALIC, marks.MARKS.UNDERLINE]; | ||
@@ -260,2 +258,3 @@ }); | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.EMPTY_DOCUMENT = void 0; | ||
@@ -266,3 +265,3 @@ /** | ||
| */ | ||
| var EMPTY_DOCUMENT = { | ||
| exports.EMPTY_DOCUMENT = { | ||
| nodeType: blocks.BLOCKS.DOCUMENT, | ||
@@ -285,3 +284,2 @@ data: {}, | ||
| }; | ||
| exports.default = EMPTY_DOCUMENT; | ||
@@ -291,2 +289,3 @@ }); | ||
| unwrapExports(emptyDocument); | ||
| var emptyDocument_1 = emptyDocument.EMPTY_DOCUMENT; | ||
@@ -367,5 +366,2 @@ var helpers = createCommonjsModule(function (module, exports) { | ||
| }; | ||
| var __importDefault = (commonjsGlobal && commonjsGlobal.__importDefault) || function (mod) { | ||
| return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
| }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
@@ -378,3 +374,3 @@ exports.helpers = exports.EMPTY_DOCUMENT = exports.MARKS = exports.INLINES = exports.BLOCKS = void 0; | ||
| Object.defineProperty(exports, "MARKS", { enumerable: true, get: function () { return __importDefault(marks).default; } }); | ||
| Object.defineProperty(exports, "MARKS", { enumerable: true, get: function () { return marks.MARKS; } }); | ||
| __exportStar(schemaConstraints, exports); | ||
@@ -384,3 +380,3 @@ __exportStar(types, exports); | ||
| Object.defineProperty(exports, "EMPTY_DOCUMENT", { enumerable: true, get: function () { return __importDefault(emptyDocument).default; } }); | ||
| Object.defineProperty(exports, "EMPTY_DOCUMENT", { enumerable: true, get: function () { return emptyDocument.EMPTY_DOCUMENT; } }); | ||
| var helpers$1 = __importStar(helpers); | ||
@@ -387,0 +383,0 @@ exports.helpers = helpers$1; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"rich-text-plain-text-renderer.es5.js","sources":["../../rich-text-types/src/blocks.ts","../../rich-text-types/src/inlines.ts","../../rich-text-types/src/marks.ts","../../rich-text-types/src/schemaConstraints.ts","../../rich-text-types/src/emptyDocument.ts","../../rich-text-types/src/helpers.ts","../../rich-text-types/src/index.ts","../src/index.ts"],"sourcesContent":["/**\n * Map of all Contentful block types. Blocks contain inline or block nodes.\n */\nexport enum BLOCKS {\n DOCUMENT = 'document',\n PARAGRAPH = 'paragraph',\n\n HEADING_1 = 'heading-1',\n HEADING_2 = 'heading-2',\n HEADING_3 = 'heading-3',\n HEADING_4 = 'heading-4',\n HEADING_5 = 'heading-5',\n HEADING_6 = 'heading-6',\n\n OL_LIST = 'ordered-list',\n UL_LIST = 'unordered-list',\n LIST_ITEM = 'list-item',\n\n HR = 'hr',\n QUOTE = 'blockquote',\n\n EMBEDDED_ENTRY = 'embedded-entry-block',\n EMBEDDED_ASSET = 'embedded-asset-block',\n EMBEDDED_RESOURCE = 'embedded-resource-block',\n\n TABLE = 'table',\n TABLE_ROW = 'table-row',\n TABLE_CELL = 'table-cell',\n TABLE_HEADER_CELL = 'table-header-cell',\n}\n","/**\n * Map of all Contentful inline types. Inline contain inline or text nodes.\n */\nexport enum INLINES {\n HYPERLINK = 'hyperlink',\n ENTRY_HYPERLINK = 'entry-hyperlink',\n ASSET_HYPERLINK = 'asset-hyperlink',\n RESOURCE_HYPERLINK = 'resource-hyperlink',\n EMBEDDED_ENTRY = 'embedded-entry-inline',\n EMBEDDED_RESOURCE = 'embedded-resource-inline',\n}\n","/**\n * Map of all Contentful marks.\n */\nenum MARKS {\n BOLD = 'bold',\n ITALIC = 'italic',\n UNDERLINE = 'underline',\n CODE = 'code',\n SUPERSCRIPT = 'superscript',\n SUBSCRIPT = 'subscript',\n}\n\nexport default MARKS;\n","import { BLOCKS } from './blocks';\nimport { INLINES } from './inlines';\nimport MARKS from './marks';\n\nexport type TopLevelBlockEnum =\n | BLOCKS.PARAGRAPH\n | BLOCKS.HEADING_1\n | BLOCKS.HEADING_2\n | BLOCKS.HEADING_3\n | BLOCKS.HEADING_4\n | BLOCKS.HEADING_5\n | BLOCKS.HEADING_6\n | BLOCKS.OL_LIST\n | BLOCKS.UL_LIST\n | BLOCKS.HR\n | BLOCKS.QUOTE\n | BLOCKS.EMBEDDED_ENTRY\n | BLOCKS.EMBEDDED_ASSET\n | BLOCKS.EMBEDDED_RESOURCE\n | BLOCKS.TABLE;\n\n/**\n * Array of all top level block types.\n * Only these block types can be the direct children of the document.\n */\nexport const TOP_LEVEL_BLOCKS: TopLevelBlockEnum[] = [\n BLOCKS.PARAGRAPH,\n BLOCKS.HEADING_1,\n BLOCKS.HEADING_2,\n BLOCKS.HEADING_3,\n BLOCKS.HEADING_4,\n BLOCKS.HEADING_5,\n BLOCKS.HEADING_6,\n BLOCKS.OL_LIST,\n BLOCKS.UL_LIST,\n BLOCKS.HR,\n BLOCKS.QUOTE,\n BLOCKS.EMBEDDED_ENTRY,\n BLOCKS.EMBEDDED_ASSET,\n BLOCKS.EMBEDDED_RESOURCE,\n BLOCKS.TABLE,\n];\n\nexport type ListItemBlockEnum =\n | BLOCKS.PARAGRAPH\n | BLOCKS.HEADING_1\n | BLOCKS.HEADING_2\n | BLOCKS.HEADING_3\n | BLOCKS.HEADING_4\n | BLOCKS.HEADING_5\n | BLOCKS.HEADING_6\n | BLOCKS.OL_LIST\n | BLOCKS.UL_LIST\n | BLOCKS.HR\n | BLOCKS.QUOTE\n | BLOCKS.EMBEDDED_ENTRY\n | BLOCKS.EMBEDDED_ASSET\n | BLOCKS.EMBEDDED_RESOURCE;\n\n/**\n * Array of all allowed block types inside list items\n */\nexport const LIST_ITEM_BLOCKS: TopLevelBlockEnum[] = [\n BLOCKS.PARAGRAPH,\n BLOCKS.HEADING_1,\n BLOCKS.HEADING_2,\n BLOCKS.HEADING_3,\n BLOCKS.HEADING_4,\n BLOCKS.HEADING_5,\n BLOCKS.HEADING_6,\n BLOCKS.OL_LIST,\n BLOCKS.UL_LIST,\n BLOCKS.HR,\n BLOCKS.QUOTE,\n BLOCKS.EMBEDDED_ENTRY,\n BLOCKS.EMBEDDED_ASSET,\n BLOCKS.EMBEDDED_RESOURCE,\n];\n\nexport const TABLE_BLOCKS = [\n BLOCKS.TABLE,\n BLOCKS.TABLE_ROW,\n BLOCKS.TABLE_CELL,\n BLOCKS.TABLE_HEADER_CELL,\n];\n\n/**\n * Array of all void block types\n */\nexport const VOID_BLOCKS = [\n BLOCKS.HR,\n BLOCKS.EMBEDDED_ENTRY,\n BLOCKS.EMBEDDED_ASSET,\n BLOCKS.EMBEDDED_RESOURCE,\n];\n\n/**\n * Dictionary of all container block types, and the set block types they accept as children.\n *\n * Note: This does not include `[BLOCKS.DOCUMENT]: TOP_LEVEL_BLOCKS`\n */\nexport const CONTAINERS = {\n [BLOCKS.OL_LIST]: [BLOCKS.LIST_ITEM],\n [BLOCKS.UL_LIST]: [BLOCKS.LIST_ITEM],\n [BLOCKS.LIST_ITEM]: LIST_ITEM_BLOCKS,\n [BLOCKS.QUOTE]: [BLOCKS.PARAGRAPH],\n [BLOCKS.TABLE]: [BLOCKS.TABLE_ROW],\n [BLOCKS.TABLE_ROW]: [BLOCKS.TABLE_CELL, BLOCKS.TABLE_HEADER_CELL],\n [BLOCKS.TABLE_CELL]: [BLOCKS.PARAGRAPH],\n [BLOCKS.TABLE_HEADER_CELL]: [BLOCKS.PARAGRAPH],\n};\n\n/**\n * Array of all heading levels\n */\nexport const HEADINGS = [\n BLOCKS.HEADING_1,\n BLOCKS.HEADING_2,\n BLOCKS.HEADING_3,\n BLOCKS.HEADING_4,\n BLOCKS.HEADING_5,\n BLOCKS.HEADING_6,\n];\n\n/**\n * Array of all block types that may contain text and inline nodes.\n */\nexport const TEXT_CONTAINERS = [BLOCKS.PARAGRAPH, ...HEADINGS];\n\n/**\n * Node types before `tables` release.\n */\nexport const V1_NODE_TYPES = [\n BLOCKS.DOCUMENT,\n BLOCKS.PARAGRAPH,\n BLOCKS.HEADING_1,\n BLOCKS.HEADING_2,\n BLOCKS.HEADING_3,\n BLOCKS.HEADING_4,\n BLOCKS.HEADING_5,\n BLOCKS.HEADING_6,\n BLOCKS.OL_LIST,\n BLOCKS.UL_LIST,\n BLOCKS.LIST_ITEM,\n BLOCKS.HR,\n BLOCKS.QUOTE,\n BLOCKS.EMBEDDED_ENTRY,\n BLOCKS.EMBEDDED_ASSET,\n INLINES.HYPERLINK,\n INLINES.ENTRY_HYPERLINK,\n INLINES.ASSET_HYPERLINK,\n INLINES.EMBEDDED_ENTRY,\n 'text',\n];\n\n/**\n * Marks before `superscript` & `subscript` release.\n */\nexport const V1_MARKS = [MARKS.BOLD, MARKS.CODE, MARKS.ITALIC, MARKS.UNDERLINE];\n","import { Document } from './types';\nimport { BLOCKS } from './blocks';\n\n/**\n * A rich text document considered to be empty.\n * Any other document structure than this is not considered empty.\n */\nconst EMPTY_DOCUMENT: Document = {\n nodeType: BLOCKS.DOCUMENT,\n data: {},\n content: [\n {\n nodeType: BLOCKS.PARAGRAPH,\n data: {},\n content: [\n {\n nodeType: 'text',\n value: '',\n marks: [],\n data: {},\n },\n ],\n },\n ],\n};\n\nexport default EMPTY_DOCUMENT;\n","import { Node, Block, Inline, Text } from './types';\nimport { BLOCKS } from './blocks';\nimport { INLINES } from './inlines';\n\n/**\n * Tiny replacement for Object.values(object).includes(key) to\n * avoid including CoreJS polyfills\n */\nfunction hasValue(obj: Record<string, unknown>, value: unknown) {\n for (const key of Object.keys(obj)) {\n if (value === obj[key]) {\n return true;\n }\n }\n\n return false;\n}\n\n/**\n * Checks if the node is an instance of Inline.\n */\nexport function isInline(node: Node): node is Inline {\n return hasValue(INLINES, node.nodeType);\n}\n\n/**\n * Checks if the node is an instance of Block.\n */\nexport function isBlock(node: Node): node is Block {\n return hasValue(BLOCKS, node.nodeType);\n}\n\n/**\n * Checks if the node is an instance of Text.\n */\nexport function isText(node: Node): node is Text {\n return node.nodeType === 'text';\n}\n","export { BLOCKS } from './blocks';\nexport { INLINES } from './inlines';\nexport { default as MARKS } from './marks';\n\nexport * from './schemaConstraints';\n\nexport * from './types';\nexport * from './nodeTypes';\n\nexport { default as EMPTY_DOCUMENT } from './emptyDocument';\n\nimport * as helpers from './helpers';\nexport { helpers };\n","import { Block, Node, Inline, helpers } from '@contentful/rich-text-types';\n\n/**\n * Returns the text value of a rich text document.\n *\n * NB: This can be applied to non text node of a structured text document,\n * hence the flexible typing.\n */\nexport function documentToPlainTextString(\n rootNode: Block | Inline,\n blockDivisor: string = ' ',\n): string {\n if (!rootNode || !rootNode.content) {\n /**\n * Handles edge cases, such as when the value is not set in the CMA or the\n * field has not been properly validated, e.g. because of a user extension.\n * Note that we are nevertheless strictly type-casting `rootNode` as\n * Block | Inline. Valid rich text documents (and their branch block nodes)\n * should never lack a Node[] `content` property.\n */\n return '';\n }\n /**\n * Algorithm notes: We only want to apply spacing when a node is part of a\n * sequence. This is tricky because nodes can often be deeply nested within\n * non-semantic content arrays. For example, to get the text value of an\n * unordered list, we have to traverse like so:\n *\n * {\n * nodeType: BLOCKS.UL_LIST,\n * data: {},\n * content: [\n * {\n * nodeType: BLOCKS.LIST_ITEM,\n * data: {},\n * content: [{\n * nodeType: BLOCKS.PARAGRAPH,\n * data: {},\n * content: [\n * { nodeType: 'text', data: {}, value: 'List ', marks: [] },\n * { nodeType: 'text', data: {}, value: 'item', marks: [{ type: 'bold' }] }\n * ]\n * }]\n * },\n * {\n * nodeType: BLOCKS.LIST_ITEM,\n * data: {},\n * content: [{\n * nodeType: BLOCKS.PARAGRAPH,\n * data: {},\n * content: [\n * { nodeType: 'text', data: {}, value: 'Another list item', marks: [] }\n * ]\n * }]\n * },\n * {\n * nodeType: BLOCKS.LIST_ITEM,\n * data: {},\n * content: [{\n * nodeType: BLOCKS.HR,\n * data: {},\n * content: [],\n * }]\n * },\n * {\n * nodeType: BLOCKS.LIST_ITEM,\n * data: {},\n * content: [{\n * nodeType: BLOCKS.PARAGRAPH,\n * data:\n * content: [\n * { nodeType: 'text', data: {}, value: 'Yet another list item', marks: [] }\n * ]\n * }]\n * },\n * }]\n * }\n *\n * We want there to be a space between 'List item' and 'Another list item' (to\n * denote a visual line break, which conventionally appears between non-text\n * node sequences) but not a redundant space between 'List ' and 'item'.\n * Moreover, we want just a _singular_ space between 'Another list item' and\n * 'Yet another list item' - the non-semantic HR between the two nodes should\n * not denote an additional space.\n */\n return (rootNode as Block).content.reduce((acc: string, node: Node, i: number): string => {\n let nodeTextValue: string;\n\n if (helpers.isText(node)) {\n nodeTextValue = node.value;\n } else if (helpers.isBlock(node) || helpers.isInline(node)) {\n nodeTextValue = documentToPlainTextString(node, blockDivisor);\n if (!nodeTextValue.length) {\n return acc;\n }\n }\n\n const nextNode = rootNode.content[i + 1];\n const isNextNodeBlock = nextNode && helpers.isBlock(nextNode);\n const divisor = isNextNodeBlock ? blockDivisor : '';\n return acc + nodeTextValue + divisor;\n }, '');\n}\n"],"names":["blocks_1","inlines_1","helpers"],"mappings":"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"} | ||
| {"version":3,"file":"rich-text-plain-text-renderer.es5.js","sources":["../../rich-text-types/src/blocks.ts","../../rich-text-types/src/inlines.ts","../../rich-text-types/src/marks.ts","../../rich-text-types/src/schemaConstraints.ts","../../rich-text-types/src/emptyDocument.ts","../../rich-text-types/src/helpers.ts","../../rich-text-types/src/index.ts","../src/index.ts"],"sourcesContent":["/**\n * Map of all Contentful block types. Blocks contain inline or block nodes.\n */\nexport enum BLOCKS {\n DOCUMENT = 'document',\n PARAGRAPH = 'paragraph',\n\n HEADING_1 = 'heading-1',\n HEADING_2 = 'heading-2',\n HEADING_3 = 'heading-3',\n HEADING_4 = 'heading-4',\n HEADING_5 = 'heading-5',\n HEADING_6 = 'heading-6',\n\n OL_LIST = 'ordered-list',\n UL_LIST = 'unordered-list',\n LIST_ITEM = 'list-item',\n\n HR = 'hr',\n QUOTE = 'blockquote',\n\n EMBEDDED_ENTRY = 'embedded-entry-block',\n EMBEDDED_ASSET = 'embedded-asset-block',\n EMBEDDED_RESOURCE = 'embedded-resource-block',\n\n TABLE = 'table',\n TABLE_ROW = 'table-row',\n TABLE_CELL = 'table-cell',\n TABLE_HEADER_CELL = 'table-header-cell',\n}\n","/**\n * Map of all Contentful inline types. Inline contain inline or text nodes.\n */\nexport enum INLINES {\n HYPERLINK = 'hyperlink',\n ENTRY_HYPERLINK = 'entry-hyperlink',\n ASSET_HYPERLINK = 'asset-hyperlink',\n RESOURCE_HYPERLINK = 'resource-hyperlink',\n EMBEDDED_ENTRY = 'embedded-entry-inline',\n EMBEDDED_RESOURCE = 'embedded-resource-inline',\n}\n","/**\n * Map of all Contentful marks.\n */\nexport enum MARKS {\n BOLD = 'bold',\n ITALIC = 'italic',\n UNDERLINE = 'underline',\n CODE = 'code',\n SUPERSCRIPT = 'superscript',\n SUBSCRIPT = 'subscript',\n}\n","import { BLOCKS } from './blocks';\nimport { INLINES } from './inlines';\nimport { MARKS } from './marks';\n\nexport type TopLevelBlockEnum =\n | BLOCKS.PARAGRAPH\n | BLOCKS.HEADING_1\n | BLOCKS.HEADING_2\n | BLOCKS.HEADING_3\n | BLOCKS.HEADING_4\n | BLOCKS.HEADING_5\n | BLOCKS.HEADING_6\n | BLOCKS.OL_LIST\n | BLOCKS.UL_LIST\n | BLOCKS.HR\n | BLOCKS.QUOTE\n | BLOCKS.EMBEDDED_ENTRY\n | BLOCKS.EMBEDDED_ASSET\n | BLOCKS.EMBEDDED_RESOURCE\n | BLOCKS.TABLE;\n\n/**\n * Array of all top level block types.\n * Only these block types can be the direct children of the document.\n */\nexport const TOP_LEVEL_BLOCKS: TopLevelBlockEnum[] = [\n BLOCKS.PARAGRAPH,\n BLOCKS.HEADING_1,\n BLOCKS.HEADING_2,\n BLOCKS.HEADING_3,\n BLOCKS.HEADING_4,\n BLOCKS.HEADING_5,\n BLOCKS.HEADING_6,\n BLOCKS.OL_LIST,\n BLOCKS.UL_LIST,\n BLOCKS.HR,\n BLOCKS.QUOTE,\n BLOCKS.EMBEDDED_ENTRY,\n BLOCKS.EMBEDDED_ASSET,\n BLOCKS.EMBEDDED_RESOURCE,\n BLOCKS.TABLE,\n];\n\nexport type ListItemBlockEnum =\n | BLOCKS.PARAGRAPH\n | BLOCKS.HEADING_1\n | BLOCKS.HEADING_2\n | BLOCKS.HEADING_3\n | BLOCKS.HEADING_4\n | BLOCKS.HEADING_5\n | BLOCKS.HEADING_6\n | BLOCKS.OL_LIST\n | BLOCKS.UL_LIST\n | BLOCKS.HR\n | BLOCKS.QUOTE\n | BLOCKS.EMBEDDED_ENTRY\n | BLOCKS.EMBEDDED_ASSET\n | BLOCKS.EMBEDDED_RESOURCE;\n\n/**\n * Array of all allowed block types inside list items\n */\nexport const LIST_ITEM_BLOCKS: TopLevelBlockEnum[] = [\n BLOCKS.PARAGRAPH,\n BLOCKS.HEADING_1,\n BLOCKS.HEADING_2,\n BLOCKS.HEADING_3,\n BLOCKS.HEADING_4,\n BLOCKS.HEADING_5,\n BLOCKS.HEADING_6,\n BLOCKS.OL_LIST,\n BLOCKS.UL_LIST,\n BLOCKS.HR,\n BLOCKS.QUOTE,\n BLOCKS.EMBEDDED_ENTRY,\n BLOCKS.EMBEDDED_ASSET,\n BLOCKS.EMBEDDED_RESOURCE,\n];\n\nexport const TABLE_BLOCKS = [\n BLOCKS.TABLE,\n BLOCKS.TABLE_ROW,\n BLOCKS.TABLE_CELL,\n BLOCKS.TABLE_HEADER_CELL,\n];\n\n/**\n * Array of all void block types\n */\nexport const VOID_BLOCKS = [\n BLOCKS.HR,\n BLOCKS.EMBEDDED_ENTRY,\n BLOCKS.EMBEDDED_ASSET,\n BLOCKS.EMBEDDED_RESOURCE,\n];\n\n/**\n * Dictionary of all container block types, and the set block types they accept as children.\n *\n * Note: This does not include `[BLOCKS.DOCUMENT]: TOP_LEVEL_BLOCKS`\n */\nexport const CONTAINERS = {\n [BLOCKS.OL_LIST]: [BLOCKS.LIST_ITEM],\n [BLOCKS.UL_LIST]: [BLOCKS.LIST_ITEM],\n [BLOCKS.LIST_ITEM]: LIST_ITEM_BLOCKS,\n [BLOCKS.QUOTE]: [BLOCKS.PARAGRAPH],\n [BLOCKS.TABLE]: [BLOCKS.TABLE_ROW],\n [BLOCKS.TABLE_ROW]: [BLOCKS.TABLE_CELL, BLOCKS.TABLE_HEADER_CELL],\n [BLOCKS.TABLE_CELL]: [BLOCKS.PARAGRAPH],\n [BLOCKS.TABLE_HEADER_CELL]: [BLOCKS.PARAGRAPH],\n};\n\n/**\n * Array of all heading levels\n */\nexport const HEADINGS = [\n BLOCKS.HEADING_1,\n BLOCKS.HEADING_2,\n BLOCKS.HEADING_3,\n BLOCKS.HEADING_4,\n BLOCKS.HEADING_5,\n BLOCKS.HEADING_6,\n];\n\n/**\n * Array of all block types that may contain text and inline nodes.\n */\nexport const TEXT_CONTAINERS = [BLOCKS.PARAGRAPH, ...HEADINGS];\n\n/**\n * Node types before `tables` release.\n */\nexport const V1_NODE_TYPES = [\n BLOCKS.DOCUMENT,\n BLOCKS.PARAGRAPH,\n BLOCKS.HEADING_1,\n BLOCKS.HEADING_2,\n BLOCKS.HEADING_3,\n BLOCKS.HEADING_4,\n BLOCKS.HEADING_5,\n BLOCKS.HEADING_6,\n BLOCKS.OL_LIST,\n BLOCKS.UL_LIST,\n BLOCKS.LIST_ITEM,\n BLOCKS.HR,\n BLOCKS.QUOTE,\n BLOCKS.EMBEDDED_ENTRY,\n BLOCKS.EMBEDDED_ASSET,\n INLINES.HYPERLINK,\n INLINES.ENTRY_HYPERLINK,\n INLINES.ASSET_HYPERLINK,\n INLINES.EMBEDDED_ENTRY,\n 'text',\n];\n\n/**\n * Marks before `superscript` & `subscript` release.\n */\nexport const V1_MARKS = [MARKS.BOLD, MARKS.CODE, MARKS.ITALIC, MARKS.UNDERLINE];\n","import { Document } from './types';\nimport { BLOCKS } from './blocks';\n\n/**\n * A rich text document considered to be empty.\n * Any other document structure than this is not considered empty.\n */\nexport const EMPTY_DOCUMENT: Document = {\n nodeType: BLOCKS.DOCUMENT,\n data: {},\n content: [\n {\n nodeType: BLOCKS.PARAGRAPH,\n data: {},\n content: [\n {\n nodeType: 'text',\n value: '',\n marks: [],\n data: {},\n },\n ],\n },\n ],\n};\n","import { Node, Block, Inline, Text } from './types';\nimport { BLOCKS } from './blocks';\nimport { INLINES } from './inlines';\n\n/**\n * Tiny replacement for Object.values(object).includes(key) to\n * avoid including CoreJS polyfills\n */\nfunction hasValue(obj: Record<string, unknown>, value: unknown) {\n for (const key of Object.keys(obj)) {\n if (value === obj[key]) {\n return true;\n }\n }\n\n return false;\n}\n\n/**\n * Checks if the node is an instance of Inline.\n */\nexport function isInline(node: Node): node is Inline {\n return hasValue(INLINES, node.nodeType);\n}\n\n/**\n * Checks if the node is an instance of Block.\n */\nexport function isBlock(node: Node): node is Block {\n return hasValue(BLOCKS, node.nodeType);\n}\n\n/**\n * Checks if the node is an instance of Text.\n */\nexport function isText(node: Node): node is Text {\n return node.nodeType === 'text';\n}\n","export { BLOCKS } from './blocks';\nexport { INLINES } from './inlines';\nexport { MARKS } from './marks';\n\nexport * from './schemaConstraints';\n\nexport * from './types';\nexport * from './nodeTypes';\n\nexport { EMPTY_DOCUMENT } from './emptyDocument';\n\nimport * as helpers from './helpers';\nexport { helpers };\n","import { Block, Node, Inline, helpers } from '@contentful/rich-text-types';\n\n/**\n * Returns the text value of a rich text document.\n *\n * NB: This can be applied to non text node of a structured text document,\n * hence the flexible typing.\n */\nexport function documentToPlainTextString(\n rootNode: Block | Inline,\n blockDivisor: string = ' ',\n): string {\n if (!rootNode || !rootNode.content) {\n /**\n * Handles edge cases, such as when the value is not set in the CMA or the\n * field has not been properly validated, e.g. because of a user extension.\n * Note that we are nevertheless strictly type-casting `rootNode` as\n * Block | Inline. Valid rich text documents (and their branch block nodes)\n * should never lack a Node[] `content` property.\n */\n return '';\n }\n /**\n * Algorithm notes: We only want to apply spacing when a node is part of a\n * sequence. This is tricky because nodes can often be deeply nested within\n * non-semantic content arrays. For example, to get the text value of an\n * unordered list, we have to traverse like so:\n *\n * {\n * nodeType: BLOCKS.UL_LIST,\n * data: {},\n * content: [\n * {\n * nodeType: BLOCKS.LIST_ITEM,\n * data: {},\n * content: [{\n * nodeType: BLOCKS.PARAGRAPH,\n * data: {},\n * content: [\n * { nodeType: 'text', data: {}, value: 'List ', marks: [] },\n * { nodeType: 'text', data: {}, value: 'item', marks: [{ type: 'bold' }] }\n * ]\n * }]\n * },\n * {\n * nodeType: BLOCKS.LIST_ITEM,\n * data: {},\n * content: [{\n * nodeType: BLOCKS.PARAGRAPH,\n * data: {},\n * content: [\n * { nodeType: 'text', data: {}, value: 'Another list item', marks: [] }\n * ]\n * }]\n * },\n * {\n * nodeType: BLOCKS.LIST_ITEM,\n * data: {},\n * content: [{\n * nodeType: BLOCKS.HR,\n * data: {},\n * content: [],\n * }]\n * },\n * {\n * nodeType: BLOCKS.LIST_ITEM,\n * data: {},\n * content: [{\n * nodeType: BLOCKS.PARAGRAPH,\n * data:\n * content: [\n * { nodeType: 'text', data: {}, value: 'Yet another list item', marks: [] }\n * ]\n * }]\n * },\n * }]\n * }\n *\n * We want there to be a space between 'List item' and 'Another list item' (to\n * denote a visual line break, which conventionally appears between non-text\n * node sequences) but not a redundant space between 'List ' and 'item'.\n * Moreover, we want just a _singular_ space between 'Another list item' and\n * 'Yet another list item' - the non-semantic HR between the two nodes should\n * not denote an additional space.\n */\n return (rootNode as Block).content.reduce((acc: string, node: Node, i: number): string => {\n let nodeTextValue: string;\n\n if (helpers.isText(node)) {\n nodeTextValue = node.value;\n } else if (helpers.isBlock(node) || helpers.isInline(node)) {\n nodeTextValue = documentToPlainTextString(node, blockDivisor);\n if (!nodeTextValue.length) {\n return acc;\n }\n }\n\n const nextNode = rootNode.content[i + 1];\n const isNextNodeBlock = nextNode && helpers.isBlock(nextNode);\n const divisor = isNextNodeBlock ? blockDivisor : '';\n return acc + nodeTextValue + divisor;\n }, '');\n}\n"],"names":["blocks_1","inlines_1","marks_1","helpers"],"mappings":"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"} |
+3
-3
| { | ||
| "name": "@contentful/rich-text-plain-text-renderer", | ||
| "version": "16.0.11", | ||
| "version": "16.0.12", | ||
| "main": "dist/rich-text-plain-text-renderer.es5.js", | ||
@@ -29,3 +29,3 @@ "typings": "dist/types/index.d.ts", | ||
| "dependencies": { | ||
| "@contentful/rich-text-types": "^16.3.4" | ||
| "@contentful/rich-text-types": "^16.3.5" | ||
| }, | ||
@@ -45,3 +45,3 @@ "devDependencies": { | ||
| }, | ||
| "gitHead": "1fbcc367918c03ed6eea7bd9f36a859026ef8cfb" | ||
| "gitHead": "63b4725a298fa5ea480f19e06cfc324996941c95" | ||
| } |
51180
-0.79%723
-0.69%