@windstream/react-shared-components 0.1.96 → 0.1.98

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/contentful/index.d.ts +5 -0
  2. package/dist/contentful/index.esm.js +2 -2
  3. package/dist/contentful/index.esm.js.map +1 -1
  4. package/dist/contentful/index.js +2 -2
  5. package/dist/contentful/index.js.map +1 -1
  6. package/dist/core.d.ts +2 -2
  7. package/dist/index.d.ts +2 -2
  8. package/dist/index.esm.js +1 -1
  9. package/dist/index.esm.js.map +1 -1
  10. package/dist/index.js +1 -1
  11. package/dist/index.js.map +1 -1
  12. package/dist/next/index.esm.js.map +1 -1
  13. package/dist/next/index.js.map +1 -1
  14. package/dist/styles.css +1 -1
  15. package/dist/utils/index.esm.js +1 -1
  16. package/dist/utils/index.esm.js.map +1 -1
  17. package/dist/utils/index.js +1 -1
  18. package/dist/utils/index.js.map +1 -1
  19. package/package.json +1 -1
  20. package/src/components/animation-wrapper/index.tsx +5 -0
  21. package/src/components/animation-wrapper/types.ts +7 -1
  22. package/src/components/brand-button/index.tsx +1 -1
  23. package/src/contentful/blocks/breadcrumbs/index.tsx +2 -2
  24. package/src/contentful/blocks/button/index.tsx +24 -3
  25. package/src/contentful/blocks/button/types.ts +1 -0
  26. package/src/contentful/blocks/email-input-block/index.tsx +16 -7
  27. package/src/contentful/blocks/find-kinetic/index.tsx +61 -35
  28. package/src/contentful/blocks/find-kinetic/types.ts +1 -0
  29. package/src/contentful/blocks/image-promo-bar/helper.tsx +1 -1
  30. package/src/contentful/blocks/image-promo-bar/index.tsx +38 -10
  31. package/src/contentful/blocks/image-promo-bar/types.ts +3 -0
  32. package/src/contentful/blocks/image-promo-bar/youtube-embed.tsx +1 -1
  33. package/src/contentful/blocks/shape-background-wrapper/index.tsx +5 -2
  34. package/src/hooks/contentful/use-contentful-rich-text.tsx +6 -2
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/utils/cx.ts","../../src/utils/cookie.ts","../../src/types/utm.ts","../../src/utils/contentful/to-document.ts","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/blocks.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/inlines.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/marks.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/schemaConstraints.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/emptyDocument.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/helpers.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/validator/errors.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/validator/assert.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/validator/node.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/validator/index.mjs","../../node_modules/.pnpm/@contentful+rich-text-react-renderer@16.2.1_react-dom@19.2.5_react@19.2.5/node_modules/@contentful/rich-text-react-renderer/dist/rich-text-react-renderer.esm.js","../../src/hooks/contentful/use-contentful-rich-text.tsx","../../src/hooks/contentful/use-processed-check-list.ts","../../src/utils/speed-card-bg.ts","../../src/utils/utm.ts"],"sourcesContent":[null,null,null,null,"export var BLOCKS = /*#__PURE__*/ function(BLOCKS) {\n BLOCKS[\"DOCUMENT\"] = \"document\";\n BLOCKS[\"PARAGRAPH\"] = \"paragraph\";\n BLOCKS[\"HEADING_1\"] = \"heading-1\";\n BLOCKS[\"HEADING_2\"] = \"heading-2\";\n BLOCKS[\"HEADING_3\"] = \"heading-3\";\n BLOCKS[\"HEADING_4\"] = \"heading-4\";\n BLOCKS[\"HEADING_5\"] = \"heading-5\";\n BLOCKS[\"HEADING_6\"] = \"heading-6\";\n BLOCKS[\"OL_LIST\"] = \"ordered-list\";\n BLOCKS[\"UL_LIST\"] = \"unordered-list\";\n BLOCKS[\"LIST_ITEM\"] = \"list-item\";\n BLOCKS[\"HR\"] = \"hr\";\n BLOCKS[\"QUOTE\"] = \"blockquote\";\n BLOCKS[\"EMBEDDED_ENTRY\"] = \"embedded-entry-block\";\n BLOCKS[\"EMBEDDED_ASSET\"] = \"embedded-asset-block\";\n BLOCKS[\"EMBEDDED_RESOURCE\"] = \"embedded-resource-block\";\n BLOCKS[\"TABLE\"] = \"table\";\n BLOCKS[\"TABLE_ROW\"] = \"table-row\";\n BLOCKS[\"TABLE_CELL\"] = \"table-cell\";\n BLOCKS[\"TABLE_HEADER_CELL\"] = \"table-header-cell\";\n return BLOCKS;\n}({});\n","export var INLINES = /*#__PURE__*/ function(INLINES) {\n INLINES[\"ASSET_HYPERLINK\"] = \"asset-hyperlink\";\n INLINES[\"EMBEDDED_ENTRY\"] = \"embedded-entry-inline\";\n INLINES[\"EMBEDDED_RESOURCE\"] = \"embedded-resource-inline\";\n INLINES[\"ENTRY_HYPERLINK\"] = \"entry-hyperlink\";\n INLINES[\"HYPERLINK\"] = \"hyperlink\";\n INLINES[\"RESOURCE_HYPERLINK\"] = \"resource-hyperlink\";\n return INLINES;\n}({});\n","export var MARKS = /*#__PURE__*/ function(MARKS) {\n MARKS[\"BOLD\"] = \"bold\";\n MARKS[\"ITALIC\"] = \"italic\";\n MARKS[\"UNDERLINE\"] = \"underline\";\n MARKS[\"CODE\"] = \"code\";\n MARKS[\"SUPERSCRIPT\"] = \"superscript\";\n MARKS[\"SUBSCRIPT\"] = \"subscript\";\n MARKS[\"STRIKETHROUGH\"] = \"strikethrough\";\n return MARKS;\n}({});\n","import { BLOCKS } from './blocks.mjs';\nimport { INLINES } from './inlines.mjs';\nimport { MARKS } from './marks.mjs';\nexport const TOP_LEVEL_BLOCKS = [\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];\nexport const LIST_ITEM_BLOCKS = [\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];\nexport const TABLE_BLOCKS = [\n BLOCKS.TABLE,\n BLOCKS.TABLE_ROW,\n BLOCKS.TABLE_CELL,\n BLOCKS.TABLE_HEADER_CELL\n];\nexport const VOID_BLOCKS = [\n BLOCKS.HR,\n BLOCKS.EMBEDDED_ENTRY,\n BLOCKS.EMBEDDED_ASSET,\n BLOCKS.EMBEDDED_RESOURCE\n];\nexport const CONTAINERS = {\n [BLOCKS.OL_LIST]: [\n BLOCKS.LIST_ITEM\n ],\n [BLOCKS.UL_LIST]: [\n BLOCKS.LIST_ITEM\n ],\n [BLOCKS.LIST_ITEM]: LIST_ITEM_BLOCKS,\n [BLOCKS.QUOTE]: [\n BLOCKS.PARAGRAPH\n ],\n [BLOCKS.TABLE]: [\n BLOCKS.TABLE_ROW\n ],\n [BLOCKS.TABLE_ROW]: [\n BLOCKS.TABLE_CELL,\n BLOCKS.TABLE_HEADER_CELL\n ],\n [BLOCKS.TABLE_CELL]: [\n BLOCKS.PARAGRAPH,\n BLOCKS.UL_LIST,\n BLOCKS.OL_LIST\n ],\n [BLOCKS.TABLE_HEADER_CELL]: [\n BLOCKS.PARAGRAPH\n ]\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];\nexport const TEXT_CONTAINERS = [\n BLOCKS.PARAGRAPH,\n ...HEADINGS\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];\nexport const V1_MARKS = [\n MARKS.BOLD,\n MARKS.CODE,\n MARKS.ITALIC,\n MARKS.UNDERLINE\n];\n","import { BLOCKS } from './blocks.mjs';\nexport const EMPTY_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 { BLOCKS } from './blocks.mjs';\nimport { INLINES } from './inlines.mjs';\nfunction hasValue(obj, value) {\n for (const key of Object.keys(obj)){\n if (value === obj[key]) {\n return true;\n }\n }\n return false;\n}\nexport function isInline(node) {\n return hasValue(INLINES, node.nodeType);\n}\nexport function isBlock(node) {\n return hasValue(BLOCKS, node.nodeType);\n}\nexport function isText(node) {\n return node.nodeType === 'text';\n}\nexport function isEmptyParagraph(node) {\n if (node.nodeType !== BLOCKS.PARAGRAPH) {\n return false;\n }\n if (node.content.length !== 1) {\n return false;\n }\n const textNode = node.content[0];\n return textNode.nodeType === 'text' && textNode.value === '';\n}\nfunction isValidDocument(document) {\n return document != null && typeof document === 'object' && 'content' in document && Array.isArray(document.content);\n}\nconst MIN_NODES_FOR_STRIPPING = 2;\nexport function stripEmptyTrailingParagraphFromDocument(document) {\n if (!isValidDocument(document) || document.content.length < MIN_NODES_FOR_STRIPPING) {\n return document;\n }\n const lastNode = document.content[document.content.length - 1];\n if (isEmptyParagraph(lastNode)) {\n return {\n ...document,\n content: document.content.slice(0, -1)\n };\n }\n return document;\n}\n","export const typeMismatchError = ({ path, property, typeName, value })=>{\n return {\n details: `The type of \"${property}\" is incorrect, expected type: ${typeName}`,\n name: 'type',\n path: path.toArray(),\n type: typeName,\n value\n };\n};\nexport const minSizeError = ({ min, value, path })=>{\n return {\n name: 'size',\n min,\n path: path.toArray(),\n details: `Size must be at least ${min}`,\n value\n };\n};\nexport const maxSizeError = ({ max, value, path })=>{\n return {\n name: 'size',\n max,\n path: path.toArray(),\n details: `Size must be at most ${max}`,\n value\n };\n};\nexport const enumError = ({ expected, value, path })=>{\n return {\n details: `Value must be one of expected values`,\n name: 'in',\n expected: [\n ...expected\n ].sort(),\n path: path.toArray(),\n value\n };\n};\nexport const unknownPropertyError = ({ property, path })=>{\n return {\n details: `The property \"${property}\" is not expected`,\n name: 'unexpected',\n path: path.toArray()\n };\n};\nexport const requiredPropertyError = ({ property, path })=>{\n return {\n details: `The property \"${property}\" is required here`,\n name: 'required',\n path: path.toArray()\n };\n};\n","import { maxSizeError, typeMismatchError, enumError, unknownPropertyError, requiredPropertyError, minSizeError } from './errors.mjs';\nexport class ObjectAssertion {\n obj;\n path;\n _errors = [];\n constructor(obj, path){\n this.obj = obj;\n this.path = path;\n }\n catch = (...errors)=>{\n this._errors.push(...errors);\n };\n get errors() {\n const serializeError = (error)=>JSON.stringify({\n details: error.details,\n path: error.path\n });\n return this._errors.filter((error, index)=>this._errors.findIndex((step)=>serializeError(error) === serializeError(step)) === index);\n }\n exists = (key)=>{\n if (key in this.obj) {\n return true;\n }\n this.catch(requiredPropertyError({\n property: key,\n path: this.path.of(key)\n }));\n return false;\n };\n object = (key)=>{\n const value = key ? this.obj[key] : this.obj;\n if (key) {\n if (!this.exists(key)) {\n return false;\n }\n }\n if (typeof value === 'object' && !Array.isArray(value) && value !== null) {\n return true;\n }\n const path = key ? this.path.of(key) : this.path;\n const property = key ?? this.path.last() ?? 'value';\n this.catch(typeMismatchError({\n typeName: 'Object',\n property,\n path,\n value\n }));\n return false;\n };\n string = (key)=>{\n const value = this.obj[key];\n if (key && !this.exists(key)) {\n return false;\n }\n if (typeof value === 'string') {\n return true;\n }\n this.catch(typeMismatchError({\n typeName: 'String',\n property: key,\n path: this.path.of(key),\n value\n }));\n return false;\n };\n number = (key, optional)=>{\n const value = this.obj[key];\n if (optional && !(key in this.obj)) {\n return true;\n }\n if (!this.exists(key)) {\n return false;\n }\n if (typeof value === 'number' && !Number.isNaN(value)) {\n return true;\n }\n this.catch(typeMismatchError({\n typeName: 'Number',\n property: key,\n path: this.path.of(key),\n value\n }));\n return false;\n };\n array = (key)=>{\n const value = this.obj[key];\n if (key && !this.exists(key)) {\n return false;\n }\n if (Array.isArray(value)) {\n return true;\n }\n this.catch(typeMismatchError({\n typeName: 'Array',\n property: key,\n path: this.path.of(key),\n value\n }));\n return false;\n };\n enum = (key, expected)=>{\n const value = this.obj[key];\n if (typeof value === 'string' && expected.includes(value)) {\n return true;\n }\n this.catch(enumError({\n expected,\n value,\n path: this.path.of(key)\n }));\n return false;\n };\n empty = (key)=>{\n if (!this.array(key)) {\n return false;\n }\n const value = this.obj[key];\n if (value.length === 0) {\n return true;\n }\n this.catch(maxSizeError({\n max: 0,\n value,\n path: this.path.of(key)\n }));\n return false;\n };\n minLength = (key, min)=>{\n if (!this.array(key)) {\n return false;\n }\n const value = this.obj[key];\n if (value.length >= min) {\n return true;\n }\n this.catch(minSizeError({\n min,\n value,\n path: this.path.of(key)\n }));\n return false;\n };\n noAdditionalProperties = (properties)=>{\n const unknowns = Object.keys(this.obj).sort().filter((key)=>!properties.includes(key));\n unknowns.forEach((property)=>this.catch(unknownPropertyError({\n property,\n path: this.path.of(property)\n })));\n return unknowns.length === 0;\n };\n each = (key, assert)=>{\n if (!this.array(key)) {\n return;\n }\n const value = this.obj[key];\n let foundErrors = false;\n value.forEach((item, index)=>{\n if (foundErrors) {\n return;\n }\n const errors = assert(item, this.path.of(key).of(index));\n if (errors.length > 0) {\n foundErrors = true;\n }\n this.catch(...errors);\n });\n };\n}\n","import { ObjectAssertion } from './assert.mjs';\nexport const VOID_CONTENT = [];\nexport class NodeAssertion {\n contentRule;\n validateData;\n constructor(contentRule, validateData){\n this.contentRule = contentRule;\n this.validateData = validateData;\n }\n assert(node, path) {\n const $ = new ObjectAssertion(node, path);\n if (!$.object()) {\n return $.errors;\n }\n $.noAdditionalProperties([\n 'nodeType',\n 'data',\n 'content'\n ]);\n const { nodeTypes, min = 0 } = Array.isArray(this.contentRule) ? {\n nodeTypes: this.contentRule\n } : this.contentRule(node, path);\n if (nodeTypes.length === 0 && min > 0) {\n throw new Error(`Invalid content rule. Cannot have enforce a 'min' of ${min} with no nodeTypes`);\n }\n $.minLength('content', min);\n if (nodeTypes.length === 0) {\n $.empty('content');\n } else {\n $.each('content', (item, path)=>{\n const item$ = new ObjectAssertion(item, path);\n if (!item$.object()) {\n return item$.errors;\n }\n item$.enum('nodeType', nodeTypes);\n return item$.errors;\n });\n }\n if ($.object('data')) {\n const dataErrors = this.validateData?.(node.data, path.of('data')) ?? [];\n $.catch(...dataErrors);\n }\n return $.errors;\n }\n}\nexport class EntityLinkAssertion extends NodeAssertion {\n linkType;\n type;\n constructor(linkType, contentNodeTypes){\n super(contentNodeTypes, (data, path)=>this.assertLink(data, path)), this.linkType = linkType;\n this.type = this.linkType.startsWith('Contentful:') ? 'ResourceLink' : 'Link';\n }\n assertLink = (data, path)=>{\n const $ = new ObjectAssertion(data, path);\n if ($.object('target')) {\n const sys$ = new ObjectAssertion(data.target.sys, path.of('target').of('sys'));\n if (sys$.object()) {\n sys$.enum('type', [\n this.type\n ]);\n sys$.enum('linkType', [\n this.linkType\n ]);\n if (this.type === 'Link') {\n sys$.string('id');\n sys$.noAdditionalProperties([\n 'type',\n 'linkType',\n 'id'\n ]);\n } else if (this.type === 'ResourceLink') {\n sys$.string('urn');\n sys$.noAdditionalProperties([\n 'type',\n 'linkType',\n 'urn'\n ]);\n }\n }\n $.catch(...sys$.errors);\n }\n $.noAdditionalProperties([\n 'target'\n ]);\n return $.errors;\n };\n}\nexport class HyperLinkAssertion extends NodeAssertion {\n constructor(){\n super([\n 'text'\n ], (data, path)=>this.assertLink(data, path));\n }\n assertLink = (data, path)=>{\n const $ = new ObjectAssertion(data, path);\n $.string('uri');\n $.noAdditionalProperties([\n 'uri'\n ]);\n return $.errors;\n };\n}\nexport const assert = (contentRule, validateData)=>{\n return new NodeAssertion(contentRule, validateData);\n};\nexport const assertLink = (linkType, contentRule)=>{\n return new EntityLinkAssertion(linkType, contentRule);\n};\n","import { BLOCKS } from '../blocks.mjs';\nimport { INLINES } from '../inlines.mjs';\nimport { CONTAINERS, LIST_ITEM_BLOCKS, TOP_LEVEL_BLOCKS } from '../schemaConstraints.mjs';\nimport { ObjectAssertion } from './assert.mjs';\nimport { HyperLinkAssertion, assert, assertLink, VOID_CONTENT } from './node.mjs';\nimport { Path } from './path.mjs';\nimport { assertText } from './text.mjs';\nconst assertInlineOrText = assert([\n ...Object.values(INLINES),\n 'text'\n].sort());\nconst assertList = assert([\n BLOCKS.LIST_ITEM\n]);\nconst assertVoidEntryLink = assertLink('Entry', VOID_CONTENT);\nconst assertTableCell = assert(()=>({\n nodeTypes: [\n BLOCKS.PARAGRAPH\n ],\n min: 1\n }), (data, path)=>{\n const $ = new ObjectAssertion(data, path);\n $.noAdditionalProperties([\n 'colspan',\n 'rowspan'\n ]);\n $.number('colspan', true);\n $.number('rowspan', true);\n return $.errors;\n});\nconst nodeValidator = {\n [BLOCKS.DOCUMENT]: assert(TOP_LEVEL_BLOCKS),\n [BLOCKS.PARAGRAPH]: assertInlineOrText,\n [BLOCKS.HEADING_1]: assertInlineOrText,\n [BLOCKS.HEADING_2]: assertInlineOrText,\n [BLOCKS.HEADING_3]: assertInlineOrText,\n [BLOCKS.HEADING_4]: assertInlineOrText,\n [BLOCKS.HEADING_5]: assertInlineOrText,\n [BLOCKS.HEADING_6]: assertInlineOrText,\n [BLOCKS.QUOTE]: assert(CONTAINERS[BLOCKS.QUOTE]),\n [BLOCKS.EMBEDDED_ENTRY]: assertVoidEntryLink,\n [BLOCKS.EMBEDDED_ASSET]: assertLink('Asset', VOID_CONTENT),\n [BLOCKS.EMBEDDED_RESOURCE]: assertLink('Contentful:Entry', VOID_CONTENT),\n [BLOCKS.HR]: assert(VOID_CONTENT),\n [BLOCKS.OL_LIST]: assertList,\n [BLOCKS.UL_LIST]: assertList,\n [BLOCKS.LIST_ITEM]: assert([\n ...LIST_ITEM_BLOCKS\n ].sort()),\n [BLOCKS.TABLE]: assert(()=>({\n nodeTypes: [\n BLOCKS.TABLE_ROW\n ],\n min: 1\n })),\n [BLOCKS.TABLE_ROW]: assert(()=>({\n nodeTypes: [\n BLOCKS.TABLE_CELL,\n BLOCKS.TABLE_HEADER_CELL\n ],\n min: 1\n })),\n [BLOCKS.TABLE_CELL]: assertTableCell,\n [BLOCKS.TABLE_HEADER_CELL]: assertTableCell,\n [INLINES.HYPERLINK]: new HyperLinkAssertion(),\n [INLINES.EMBEDDED_ENTRY]: assertVoidEntryLink,\n [INLINES.EMBEDDED_RESOURCE]: assertLink('Contentful:Entry', VOID_CONTENT),\n [INLINES.ENTRY_HYPERLINK]: assertLink('Entry', [\n 'text'\n ]),\n [INLINES.ASSET_HYPERLINK]: assertLink('Asset', [\n 'text'\n ]),\n [INLINES.RESOURCE_HYPERLINK]: assertLink('Contentful:Entry', [\n 'text'\n ])\n};\nfunction validateNode(node, path) {\n if (node.nodeType === 'text') {\n return assertText(node, path);\n }\n const errors = nodeValidator[node.nodeType].assert(node, path);\n if (errors.length > 0) {\n return errors;\n }\n const $ = new ObjectAssertion(node, path);\n $.each('content', (item, path)=>{\n return validateNode(item, path);\n });\n return $.errors;\n}\nexport const validateRichTextDocument = (document)=>{\n const path = new Path();\n const $ = new ObjectAssertion(document, path);\n if ($.object()) {\n $.enum('nodeType', [\n BLOCKS.DOCUMENT\n ]);\n }\n if ($.errors.length > 0) {\n return $.errors;\n }\n return validateNode(document, path);\n};\n","import React, { isValidElement, cloneElement } from 'react';\nimport { helpers, INLINES, BLOCKS, MARKS } from '@contentful/rich-text-types';\n\nfunction appendKeyToValidElement(element, key) {\n if (isValidElement(element) && element.key === null) {\n return cloneElement(element, {\n key\n });\n }\n return element;\n}\n\nfunction nodeListToReactComponents(nodes, options) {\n return nodes.map((node, index)=>{\n return appendKeyToValidElement(nodeToReactComponent(node, options), index);\n });\n}\nfunction nodeToReactComponent(node, options) {\n const { renderNode, renderMark, renderText, preserveWhitespace } = options;\n if (helpers.isText(node)) {\n let nodeValue = renderText ? renderText(node.value) : node.value;\n if (preserveWhitespace && !renderText) {\n nodeValue = nodeValue.replace(/ {2,}/g, (match)=>'\\u00A0'.repeat(match.length));\n const lines = nodeValue.split('\\n');\n const jsxLines = [];\n lines.forEach((line, index)=>{\n jsxLines.push(line);\n if (index !== lines.length - 1) {\n jsxLines.push(React.createElement(\"br\", null));\n }\n });\n nodeValue = jsxLines;\n }\n return node.marks.reduce((value, mark)=>{\n if (!renderMark[mark.type]) {\n return value;\n }\n return renderMark[mark.type](value);\n }, nodeValue);\n } else {\n const children = nodeListToReactComponents(node.content, options);\n if (!node.nodeType || !renderNode[node.nodeType]) {\n return React.createElement(React.Fragment, null, children);\n }\n return renderNode[node.nodeType](node, children);\n }\n}\n\nconst defaultNodeRenderers = {\n [BLOCKS.DOCUMENT]: (node, children)=>children,\n [BLOCKS.PARAGRAPH]: (node, children)=>React.createElement(\"p\", null, children),\n [BLOCKS.HEADING_1]: (node, children)=>React.createElement(\"h1\", null, children),\n [BLOCKS.HEADING_2]: (node, children)=>React.createElement(\"h2\", null, children),\n [BLOCKS.HEADING_3]: (node, children)=>React.createElement(\"h3\", null, children),\n [BLOCKS.HEADING_4]: (node, children)=>React.createElement(\"h4\", null, children),\n [BLOCKS.HEADING_5]: (node, children)=>React.createElement(\"h5\", null, children),\n [BLOCKS.HEADING_6]: (node, children)=>React.createElement(\"h6\", null, children),\n [BLOCKS.EMBEDDED_ENTRY]: (node, children)=>React.createElement(\"div\", null, children),\n [BLOCKS.EMBEDDED_RESOURCE]: (node, children)=>React.createElement(\"div\", null, children),\n [BLOCKS.UL_LIST]: (node, children)=>React.createElement(\"ul\", null, children),\n [BLOCKS.OL_LIST]: (node, children)=>React.createElement(\"ol\", null, children),\n [BLOCKS.LIST_ITEM]: (node, children)=>React.createElement(\"li\", null, children),\n [BLOCKS.QUOTE]: (node, children)=>React.createElement(\"blockquote\", null, children),\n [BLOCKS.HR]: ()=>React.createElement(\"hr\", null),\n [BLOCKS.TABLE]: (node, children)=>React.createElement(\"table\", null, React.createElement(\"tbody\", null, children)),\n [BLOCKS.TABLE_ROW]: (node, children)=>React.createElement(\"tr\", null, children),\n [BLOCKS.TABLE_HEADER_CELL]: (node, children)=>React.createElement(\"th\", null, children),\n [BLOCKS.TABLE_CELL]: (node, children)=>React.createElement(\"td\", null, children),\n [INLINES.ASSET_HYPERLINK]: (node)=>defaultInline(INLINES.ASSET_HYPERLINK, node),\n [INLINES.ENTRY_HYPERLINK]: (node)=>defaultInline(INLINES.ENTRY_HYPERLINK, node),\n [INLINES.RESOURCE_HYPERLINK]: (node)=>defaultInlineResource(INLINES.RESOURCE_HYPERLINK, node),\n [INLINES.EMBEDDED_ENTRY]: (node)=>defaultInline(INLINES.EMBEDDED_ENTRY, node),\n [INLINES.EMBEDDED_RESOURCE]: (node, _children)=>defaultInlineResource(INLINES.EMBEDDED_RESOURCE, node),\n [INLINES.HYPERLINK]: (node, children)=>React.createElement(\"a\", {\n href: node.data.uri\n }, children)\n};\nconst defaultMarkRenderers = {\n [MARKS.BOLD]: (text)=>React.createElement(\"b\", null, text),\n [MARKS.ITALIC]: (text)=>React.createElement(\"i\", null, text),\n [MARKS.UNDERLINE]: (text)=>React.createElement(\"u\", null, text),\n [MARKS.CODE]: (text)=>React.createElement(\"code\", null, text),\n [MARKS.SUPERSCRIPT]: (text)=>React.createElement(\"sup\", null, text),\n [MARKS.SUBSCRIPT]: (text)=>React.createElement(\"sub\", null, text),\n [MARKS.STRIKETHROUGH]: (text)=>React.createElement(\"s\", null, text)\n};\nfunction defaultInline(type, node) {\n return React.createElement(\"span\", {\n key: node.data.target.sys.id\n }, \"type: \", node.nodeType, \" id: \", node.data.target.sys.id);\n}\nfunction defaultInlineResource(type, node) {\n return React.createElement(\"span\", {\n key: node.data.target.sys.urn\n }, \"type: \", node.nodeType, \" urn: \", node.data.target.sys.urn);\n}\nfunction documentToReactComponents(richTextDocument, options = {}) {\n if (!richTextDocument) {\n return null;\n }\n let processedDocument = richTextDocument;\n if (options.stripEmptyTrailingParagraph) {\n processedDocument = helpers.stripEmptyTrailingParagraphFromDocument(richTextDocument);\n }\n return nodeToReactComponent(processedDocument, {\n renderNode: {\n ...defaultNodeRenderers,\n ...options.renderNode\n },\n renderMark: {\n ...defaultMarkRenderers,\n ...options.renderMark\n },\n renderText: options.renderText,\n preserveWhitespace: options.preserveWhitespace\n });\n}\n\nexport { documentToReactComponents };\n//# sourceMappingURL=rich-text-react-renderer.esm.js.map\n",null,null,null,null],"names":["twMerge","extendTailwindMerge","extend","classGroups","UTM_COOKIE_KEY","DEFAULT_DOMAIN","getCookie","key","window","encryptedValue","Cookies","get","Base64","decode","UTM_PARAM_NAMES","isDocument","v","toDocument","json","BLOCKS","INLINES","MARKS","TOP_LEVEL_BLOCKS","PARAGRAPH","HEADING_1","HEADING_2","HEADING_3","HEADING_4","HEADING_5","HEADING_6","OL_LIST","UL_LIST","HR","QUOTE","EMBEDDED_ENTRY","EMBEDDED_ASSET","EMBEDDED_RESOURCE","TABLE","LIST_ITEM_BLOCKS","TABLE_ROW","TABLE_CELL","TABLE_HEADER_CELL","CONTAINERS","LIST_ITEM","DOCUMENT","HYPERLINK","ENTRY_HYPERLINK","ASSET_HYPERLINK","BOLD","CODE","ITALIC","UNDERLINE","stripEmptyTrailingParagraphFromDocument","document","Array","isArray","content","isValidDocument","length","node","nodeType","textNode","value","isEmptyParagraph","slice","typeMismatchError","path","property","typeName","details","name","toArray","type","ObjectAssertion","obj","_errors","constructor","this","catch","errors","push","serializeError","error","JSON","stringify","filter","index","findIndex","step","exists","requiredPropertyError","of","object","last","string","number","optional","Number","isNaN","array","enum","expected","includes","sort","enumError","empty","max","maxSizeError","minLength","min","minSizeError","noAdditionalProperties","properties","unknowns","Object","keys","forEach","unknownPropertyError","each","assert","foundErrors","item","VOID_CONTENT","NodeAssertion","contentRule","validateData","$","nodeTypes","Error","item$","dataErrors","data","EntityLinkAssertion","linkType","contentNodeTypes","super","assertLink","startsWith","sys$","target","sys","values","nodeListToReactComponents","nodes","options","map","element","nodeToReactComponent","isValidElement","cloneElement","renderNode","renderMark","renderText","preserveWhitespace","helpers.isText","nodeValue","replace","match","repeat","lines","split","jsxLines","line","React","createElement","marks","reduce","mark","children","Fragment","RESOURCE_HYPERLINK","defaultNodeRenderers","defaultInline","defaultInlineResource","_children","href","uri","defaultMarkRenderers","text","SUPERSCRIPT","SUBSCRIPT","STRIKETHROUGH","id","urn","documentToReactComponents","richTextDocument","processedDocument","stripEmptyTrailingParagraph","helpers.stripEmptyTrailingParagraphFromDocument","defaultOptions","_jsx","className","_node","Text","as","url","_a","external","test","undefined","rel","fields","file","_b","alt","title","description","src","style","maxWidth","entry","_d","contentType","_jsxs","border","padding","borderRadius","body","display","alignItems","gap","backgroundColor","fontSize","_f","_e","renderContentfulRichText","doc","linkClassName","shouldOpenBlank","Link","variant","label1BoldOptions","color","currentSearch","currentParams","URLSearchParams","utmSet","Set","stripParams","basePath","targetParams","URL","origin","pathname","searchParams","query","merged","has","toLowerCase","set","queryString","toString","existing","incoming","every","utm_content","utm_term","hasNewContent","hasNewTerm","val","clsx","utms","campaign","utm_campaign","utm_source","source","utm_medium","medium","term","utm_campaign_id","campaign_id","utm_adgroup_id","adgroup_id","gclid","fbclid","msclkid","referrer","referrerHost","hostname","parse","raw","decoded","location","search","found","param","domain","remove","links","_Fragment","isScrollable","parent","rawText","_c","trim","MaterialIcon","fill","entryId","entries","inline","find","e","__typename","items","list","checkListTitle","Checklist","listIconName","listItemClassName","stringValue","encode","encoded","sameSite","useMemo","checklistData","titlesOnly","richTextOptions","richTextClassName","rawItems","iconUrl","icon","anchorId"],"mappings":"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","x_google_ignoreList":[4,5,6,7,8,9,10,11,12,13,14]}
1
+ {"version":3,"file":"index.js","sources":["../../src/utils/cx.ts","../../src/utils/cookie.ts","../../src/types/utm.ts","../../src/utils/contentful/to-document.ts","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/blocks.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/inlines.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/marks.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/schemaConstraints.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/emptyDocument.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/helpers.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/validator/errors.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/validator/assert.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/validator/node.mjs","../../node_modules/.pnpm/@contentful+rich-text-types@17.2.7/node_modules/@contentful/rich-text-types/dist/esm/validator/index.mjs","../../node_modules/.pnpm/@contentful+rich-text-react-renderer@16.2.1_react-dom@19.2.5_react@19.2.5/node_modules/@contentful/rich-text-react-renderer/dist/rich-text-react-renderer.esm.js","../../src/hooks/contentful/use-contentful-rich-text.tsx","../../src/hooks/contentful/use-processed-check-list.ts","../../src/utils/speed-card-bg.ts","../../src/utils/utm.ts"],"sourcesContent":[null,null,null,null,"export var BLOCKS = /*#__PURE__*/ function(BLOCKS) {\n BLOCKS[\"DOCUMENT\"] = \"document\";\n BLOCKS[\"PARAGRAPH\"] = \"paragraph\";\n BLOCKS[\"HEADING_1\"] = \"heading-1\";\n BLOCKS[\"HEADING_2\"] = \"heading-2\";\n BLOCKS[\"HEADING_3\"] = \"heading-3\";\n BLOCKS[\"HEADING_4\"] = \"heading-4\";\n BLOCKS[\"HEADING_5\"] = \"heading-5\";\n BLOCKS[\"HEADING_6\"] = \"heading-6\";\n BLOCKS[\"OL_LIST\"] = \"ordered-list\";\n BLOCKS[\"UL_LIST\"] = \"unordered-list\";\n BLOCKS[\"LIST_ITEM\"] = \"list-item\";\n BLOCKS[\"HR\"] = \"hr\";\n BLOCKS[\"QUOTE\"] = \"blockquote\";\n BLOCKS[\"EMBEDDED_ENTRY\"] = \"embedded-entry-block\";\n BLOCKS[\"EMBEDDED_ASSET\"] = \"embedded-asset-block\";\n BLOCKS[\"EMBEDDED_RESOURCE\"] = \"embedded-resource-block\";\n BLOCKS[\"TABLE\"] = \"table\";\n BLOCKS[\"TABLE_ROW\"] = \"table-row\";\n BLOCKS[\"TABLE_CELL\"] = \"table-cell\";\n BLOCKS[\"TABLE_HEADER_CELL\"] = \"table-header-cell\";\n return BLOCKS;\n}({});\n","export var INLINES = /*#__PURE__*/ function(INLINES) {\n INLINES[\"ASSET_HYPERLINK\"] = \"asset-hyperlink\";\n INLINES[\"EMBEDDED_ENTRY\"] = \"embedded-entry-inline\";\n INLINES[\"EMBEDDED_RESOURCE\"] = \"embedded-resource-inline\";\n INLINES[\"ENTRY_HYPERLINK\"] = \"entry-hyperlink\";\n INLINES[\"HYPERLINK\"] = \"hyperlink\";\n INLINES[\"RESOURCE_HYPERLINK\"] = \"resource-hyperlink\";\n return INLINES;\n}({});\n","export var MARKS = /*#__PURE__*/ function(MARKS) {\n MARKS[\"BOLD\"] = \"bold\";\n MARKS[\"ITALIC\"] = \"italic\";\n MARKS[\"UNDERLINE\"] = \"underline\";\n MARKS[\"CODE\"] = \"code\";\n MARKS[\"SUPERSCRIPT\"] = \"superscript\";\n MARKS[\"SUBSCRIPT\"] = \"subscript\";\n MARKS[\"STRIKETHROUGH\"] = \"strikethrough\";\n return MARKS;\n}({});\n","import { BLOCKS } from './blocks.mjs';\nimport { INLINES } from './inlines.mjs';\nimport { MARKS } from './marks.mjs';\nexport const TOP_LEVEL_BLOCKS = [\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];\nexport const LIST_ITEM_BLOCKS = [\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];\nexport const TABLE_BLOCKS = [\n BLOCKS.TABLE,\n BLOCKS.TABLE_ROW,\n BLOCKS.TABLE_CELL,\n BLOCKS.TABLE_HEADER_CELL\n];\nexport const VOID_BLOCKS = [\n BLOCKS.HR,\n BLOCKS.EMBEDDED_ENTRY,\n BLOCKS.EMBEDDED_ASSET,\n BLOCKS.EMBEDDED_RESOURCE\n];\nexport const CONTAINERS = {\n [BLOCKS.OL_LIST]: [\n BLOCKS.LIST_ITEM\n ],\n [BLOCKS.UL_LIST]: [\n BLOCKS.LIST_ITEM\n ],\n [BLOCKS.LIST_ITEM]: LIST_ITEM_BLOCKS,\n [BLOCKS.QUOTE]: [\n BLOCKS.PARAGRAPH\n ],\n [BLOCKS.TABLE]: [\n BLOCKS.TABLE_ROW\n ],\n [BLOCKS.TABLE_ROW]: [\n BLOCKS.TABLE_CELL,\n BLOCKS.TABLE_HEADER_CELL\n ],\n [BLOCKS.TABLE_CELL]: [\n BLOCKS.PARAGRAPH,\n BLOCKS.UL_LIST,\n BLOCKS.OL_LIST\n ],\n [BLOCKS.TABLE_HEADER_CELL]: [\n BLOCKS.PARAGRAPH\n ]\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];\nexport const TEXT_CONTAINERS = [\n BLOCKS.PARAGRAPH,\n ...HEADINGS\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];\nexport const V1_MARKS = [\n MARKS.BOLD,\n MARKS.CODE,\n MARKS.ITALIC,\n MARKS.UNDERLINE\n];\n","import { BLOCKS } from './blocks.mjs';\nexport const EMPTY_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 { BLOCKS } from './blocks.mjs';\nimport { INLINES } from './inlines.mjs';\nfunction hasValue(obj, value) {\n for (const key of Object.keys(obj)){\n if (value === obj[key]) {\n return true;\n }\n }\n return false;\n}\nexport function isInline(node) {\n return hasValue(INLINES, node.nodeType);\n}\nexport function isBlock(node) {\n return hasValue(BLOCKS, node.nodeType);\n}\nexport function isText(node) {\n return node.nodeType === 'text';\n}\nexport function isEmptyParagraph(node) {\n if (node.nodeType !== BLOCKS.PARAGRAPH) {\n return false;\n }\n if (node.content.length !== 1) {\n return false;\n }\n const textNode = node.content[0];\n return textNode.nodeType === 'text' && textNode.value === '';\n}\nfunction isValidDocument(document) {\n return document != null && typeof document === 'object' && 'content' in document && Array.isArray(document.content);\n}\nconst MIN_NODES_FOR_STRIPPING = 2;\nexport function stripEmptyTrailingParagraphFromDocument(document) {\n if (!isValidDocument(document) || document.content.length < MIN_NODES_FOR_STRIPPING) {\n return document;\n }\n const lastNode = document.content[document.content.length - 1];\n if (isEmptyParagraph(lastNode)) {\n return {\n ...document,\n content: document.content.slice(0, -1)\n };\n }\n return document;\n}\n","export const typeMismatchError = ({ path, property, typeName, value })=>{\n return {\n details: `The type of \"${property}\" is incorrect, expected type: ${typeName}`,\n name: 'type',\n path: path.toArray(),\n type: typeName,\n value\n };\n};\nexport const minSizeError = ({ min, value, path })=>{\n return {\n name: 'size',\n min,\n path: path.toArray(),\n details: `Size must be at least ${min}`,\n value\n };\n};\nexport const maxSizeError = ({ max, value, path })=>{\n return {\n name: 'size',\n max,\n path: path.toArray(),\n details: `Size must be at most ${max}`,\n value\n };\n};\nexport const enumError = ({ expected, value, path })=>{\n return {\n details: `Value must be one of expected values`,\n name: 'in',\n expected: [\n ...expected\n ].sort(),\n path: path.toArray(),\n value\n };\n};\nexport const unknownPropertyError = ({ property, path })=>{\n return {\n details: `The property \"${property}\" is not expected`,\n name: 'unexpected',\n path: path.toArray()\n };\n};\nexport const requiredPropertyError = ({ property, path })=>{\n return {\n details: `The property \"${property}\" is required here`,\n name: 'required',\n path: path.toArray()\n };\n};\n","import { maxSizeError, typeMismatchError, enumError, unknownPropertyError, requiredPropertyError, minSizeError } from './errors.mjs';\nexport class ObjectAssertion {\n obj;\n path;\n _errors = [];\n constructor(obj, path){\n this.obj = obj;\n this.path = path;\n }\n catch = (...errors)=>{\n this._errors.push(...errors);\n };\n get errors() {\n const serializeError = (error)=>JSON.stringify({\n details: error.details,\n path: error.path\n });\n return this._errors.filter((error, index)=>this._errors.findIndex((step)=>serializeError(error) === serializeError(step)) === index);\n }\n exists = (key)=>{\n if (key in this.obj) {\n return true;\n }\n this.catch(requiredPropertyError({\n property: key,\n path: this.path.of(key)\n }));\n return false;\n };\n object = (key)=>{\n const value = key ? this.obj[key] : this.obj;\n if (key) {\n if (!this.exists(key)) {\n return false;\n }\n }\n if (typeof value === 'object' && !Array.isArray(value) && value !== null) {\n return true;\n }\n const path = key ? this.path.of(key) : this.path;\n const property = key ?? this.path.last() ?? 'value';\n this.catch(typeMismatchError({\n typeName: 'Object',\n property,\n path,\n value\n }));\n return false;\n };\n string = (key)=>{\n const value = this.obj[key];\n if (key && !this.exists(key)) {\n return false;\n }\n if (typeof value === 'string') {\n return true;\n }\n this.catch(typeMismatchError({\n typeName: 'String',\n property: key,\n path: this.path.of(key),\n value\n }));\n return false;\n };\n number = (key, optional)=>{\n const value = this.obj[key];\n if (optional && !(key in this.obj)) {\n return true;\n }\n if (!this.exists(key)) {\n return false;\n }\n if (typeof value === 'number' && !Number.isNaN(value)) {\n return true;\n }\n this.catch(typeMismatchError({\n typeName: 'Number',\n property: key,\n path: this.path.of(key),\n value\n }));\n return false;\n };\n array = (key)=>{\n const value = this.obj[key];\n if (key && !this.exists(key)) {\n return false;\n }\n if (Array.isArray(value)) {\n return true;\n }\n this.catch(typeMismatchError({\n typeName: 'Array',\n property: key,\n path: this.path.of(key),\n value\n }));\n return false;\n };\n enum = (key, expected)=>{\n const value = this.obj[key];\n if (typeof value === 'string' && expected.includes(value)) {\n return true;\n }\n this.catch(enumError({\n expected,\n value,\n path: this.path.of(key)\n }));\n return false;\n };\n empty = (key)=>{\n if (!this.array(key)) {\n return false;\n }\n const value = this.obj[key];\n if (value.length === 0) {\n return true;\n }\n this.catch(maxSizeError({\n max: 0,\n value,\n path: this.path.of(key)\n }));\n return false;\n };\n minLength = (key, min)=>{\n if (!this.array(key)) {\n return false;\n }\n const value = this.obj[key];\n if (value.length >= min) {\n return true;\n }\n this.catch(minSizeError({\n min,\n value,\n path: this.path.of(key)\n }));\n return false;\n };\n noAdditionalProperties = (properties)=>{\n const unknowns = Object.keys(this.obj).sort().filter((key)=>!properties.includes(key));\n unknowns.forEach((property)=>this.catch(unknownPropertyError({\n property,\n path: this.path.of(property)\n })));\n return unknowns.length === 0;\n };\n each = (key, assert)=>{\n if (!this.array(key)) {\n return;\n }\n const value = this.obj[key];\n let foundErrors = false;\n value.forEach((item, index)=>{\n if (foundErrors) {\n return;\n }\n const errors = assert(item, this.path.of(key).of(index));\n if (errors.length > 0) {\n foundErrors = true;\n }\n this.catch(...errors);\n });\n };\n}\n","import { ObjectAssertion } from './assert.mjs';\nexport const VOID_CONTENT = [];\nexport class NodeAssertion {\n contentRule;\n validateData;\n constructor(contentRule, validateData){\n this.contentRule = contentRule;\n this.validateData = validateData;\n }\n assert(node, path) {\n const $ = new ObjectAssertion(node, path);\n if (!$.object()) {\n return $.errors;\n }\n $.noAdditionalProperties([\n 'nodeType',\n 'data',\n 'content'\n ]);\n const { nodeTypes, min = 0 } = Array.isArray(this.contentRule) ? {\n nodeTypes: this.contentRule\n } : this.contentRule(node, path);\n if (nodeTypes.length === 0 && min > 0) {\n throw new Error(`Invalid content rule. Cannot have enforce a 'min' of ${min} with no nodeTypes`);\n }\n $.minLength('content', min);\n if (nodeTypes.length === 0) {\n $.empty('content');\n } else {\n $.each('content', (item, path)=>{\n const item$ = new ObjectAssertion(item, path);\n if (!item$.object()) {\n return item$.errors;\n }\n item$.enum('nodeType', nodeTypes);\n return item$.errors;\n });\n }\n if ($.object('data')) {\n const dataErrors = this.validateData?.(node.data, path.of('data')) ?? [];\n $.catch(...dataErrors);\n }\n return $.errors;\n }\n}\nexport class EntityLinkAssertion extends NodeAssertion {\n linkType;\n type;\n constructor(linkType, contentNodeTypes){\n super(contentNodeTypes, (data, path)=>this.assertLink(data, path)), this.linkType = linkType;\n this.type = this.linkType.startsWith('Contentful:') ? 'ResourceLink' : 'Link';\n }\n assertLink = (data, path)=>{\n const $ = new ObjectAssertion(data, path);\n if ($.object('target')) {\n const sys$ = new ObjectAssertion(data.target.sys, path.of('target').of('sys'));\n if (sys$.object()) {\n sys$.enum('type', [\n this.type\n ]);\n sys$.enum('linkType', [\n this.linkType\n ]);\n if (this.type === 'Link') {\n sys$.string('id');\n sys$.noAdditionalProperties([\n 'type',\n 'linkType',\n 'id'\n ]);\n } else if (this.type === 'ResourceLink') {\n sys$.string('urn');\n sys$.noAdditionalProperties([\n 'type',\n 'linkType',\n 'urn'\n ]);\n }\n }\n $.catch(...sys$.errors);\n }\n $.noAdditionalProperties([\n 'target'\n ]);\n return $.errors;\n };\n}\nexport class HyperLinkAssertion extends NodeAssertion {\n constructor(){\n super([\n 'text'\n ], (data, path)=>this.assertLink(data, path));\n }\n assertLink = (data, path)=>{\n const $ = new ObjectAssertion(data, path);\n $.string('uri');\n $.noAdditionalProperties([\n 'uri'\n ]);\n return $.errors;\n };\n}\nexport const assert = (contentRule, validateData)=>{\n return new NodeAssertion(contentRule, validateData);\n};\nexport const assertLink = (linkType, contentRule)=>{\n return new EntityLinkAssertion(linkType, contentRule);\n};\n","import { BLOCKS } from '../blocks.mjs';\nimport { INLINES } from '../inlines.mjs';\nimport { CONTAINERS, LIST_ITEM_BLOCKS, TOP_LEVEL_BLOCKS } from '../schemaConstraints.mjs';\nimport { ObjectAssertion } from './assert.mjs';\nimport { HyperLinkAssertion, assert, assertLink, VOID_CONTENT } from './node.mjs';\nimport { Path } from './path.mjs';\nimport { assertText } from './text.mjs';\nconst assertInlineOrText = assert([\n ...Object.values(INLINES),\n 'text'\n].sort());\nconst assertList = assert([\n BLOCKS.LIST_ITEM\n]);\nconst assertVoidEntryLink = assertLink('Entry', VOID_CONTENT);\nconst assertTableCell = assert(()=>({\n nodeTypes: [\n BLOCKS.PARAGRAPH\n ],\n min: 1\n }), (data, path)=>{\n const $ = new ObjectAssertion(data, path);\n $.noAdditionalProperties([\n 'colspan',\n 'rowspan'\n ]);\n $.number('colspan', true);\n $.number('rowspan', true);\n return $.errors;\n});\nconst nodeValidator = {\n [BLOCKS.DOCUMENT]: assert(TOP_LEVEL_BLOCKS),\n [BLOCKS.PARAGRAPH]: assertInlineOrText,\n [BLOCKS.HEADING_1]: assertInlineOrText,\n [BLOCKS.HEADING_2]: assertInlineOrText,\n [BLOCKS.HEADING_3]: assertInlineOrText,\n [BLOCKS.HEADING_4]: assertInlineOrText,\n [BLOCKS.HEADING_5]: assertInlineOrText,\n [BLOCKS.HEADING_6]: assertInlineOrText,\n [BLOCKS.QUOTE]: assert(CONTAINERS[BLOCKS.QUOTE]),\n [BLOCKS.EMBEDDED_ENTRY]: assertVoidEntryLink,\n [BLOCKS.EMBEDDED_ASSET]: assertLink('Asset', VOID_CONTENT),\n [BLOCKS.EMBEDDED_RESOURCE]: assertLink('Contentful:Entry', VOID_CONTENT),\n [BLOCKS.HR]: assert(VOID_CONTENT),\n [BLOCKS.OL_LIST]: assertList,\n [BLOCKS.UL_LIST]: assertList,\n [BLOCKS.LIST_ITEM]: assert([\n ...LIST_ITEM_BLOCKS\n ].sort()),\n [BLOCKS.TABLE]: assert(()=>({\n nodeTypes: [\n BLOCKS.TABLE_ROW\n ],\n min: 1\n })),\n [BLOCKS.TABLE_ROW]: assert(()=>({\n nodeTypes: [\n BLOCKS.TABLE_CELL,\n BLOCKS.TABLE_HEADER_CELL\n ],\n min: 1\n })),\n [BLOCKS.TABLE_CELL]: assertTableCell,\n [BLOCKS.TABLE_HEADER_CELL]: assertTableCell,\n [INLINES.HYPERLINK]: new HyperLinkAssertion(),\n [INLINES.EMBEDDED_ENTRY]: assertVoidEntryLink,\n [INLINES.EMBEDDED_RESOURCE]: assertLink('Contentful:Entry', VOID_CONTENT),\n [INLINES.ENTRY_HYPERLINK]: assertLink('Entry', [\n 'text'\n ]),\n [INLINES.ASSET_HYPERLINK]: assertLink('Asset', [\n 'text'\n ]),\n [INLINES.RESOURCE_HYPERLINK]: assertLink('Contentful:Entry', [\n 'text'\n ])\n};\nfunction validateNode(node, path) {\n if (node.nodeType === 'text') {\n return assertText(node, path);\n }\n const errors = nodeValidator[node.nodeType].assert(node, path);\n if (errors.length > 0) {\n return errors;\n }\n const $ = new ObjectAssertion(node, path);\n $.each('content', (item, path)=>{\n return validateNode(item, path);\n });\n return $.errors;\n}\nexport const validateRichTextDocument = (document)=>{\n const path = new Path();\n const $ = new ObjectAssertion(document, path);\n if ($.object()) {\n $.enum('nodeType', [\n BLOCKS.DOCUMENT\n ]);\n }\n if ($.errors.length > 0) {\n return $.errors;\n }\n return validateNode(document, path);\n};\n","import React, { isValidElement, cloneElement } from 'react';\nimport { helpers, INLINES, BLOCKS, MARKS } from '@contentful/rich-text-types';\n\nfunction appendKeyToValidElement(element, key) {\n if (isValidElement(element) && element.key === null) {\n return cloneElement(element, {\n key\n });\n }\n return element;\n}\n\nfunction nodeListToReactComponents(nodes, options) {\n return nodes.map((node, index)=>{\n return appendKeyToValidElement(nodeToReactComponent(node, options), index);\n });\n}\nfunction nodeToReactComponent(node, options) {\n const { renderNode, renderMark, renderText, preserveWhitespace } = options;\n if (helpers.isText(node)) {\n let nodeValue = renderText ? renderText(node.value) : node.value;\n if (preserveWhitespace && !renderText) {\n nodeValue = nodeValue.replace(/ {2,}/g, (match)=>'\\u00A0'.repeat(match.length));\n const lines = nodeValue.split('\\n');\n const jsxLines = [];\n lines.forEach((line, index)=>{\n jsxLines.push(line);\n if (index !== lines.length - 1) {\n jsxLines.push(React.createElement(\"br\", null));\n }\n });\n nodeValue = jsxLines;\n }\n return node.marks.reduce((value, mark)=>{\n if (!renderMark[mark.type]) {\n return value;\n }\n return renderMark[mark.type](value);\n }, nodeValue);\n } else {\n const children = nodeListToReactComponents(node.content, options);\n if (!node.nodeType || !renderNode[node.nodeType]) {\n return React.createElement(React.Fragment, null, children);\n }\n return renderNode[node.nodeType](node, children);\n }\n}\n\nconst defaultNodeRenderers = {\n [BLOCKS.DOCUMENT]: (node, children)=>children,\n [BLOCKS.PARAGRAPH]: (node, children)=>React.createElement(\"p\", null, children),\n [BLOCKS.HEADING_1]: (node, children)=>React.createElement(\"h1\", null, children),\n [BLOCKS.HEADING_2]: (node, children)=>React.createElement(\"h2\", null, children),\n [BLOCKS.HEADING_3]: (node, children)=>React.createElement(\"h3\", null, children),\n [BLOCKS.HEADING_4]: (node, children)=>React.createElement(\"h4\", null, children),\n [BLOCKS.HEADING_5]: (node, children)=>React.createElement(\"h5\", null, children),\n [BLOCKS.HEADING_6]: (node, children)=>React.createElement(\"h6\", null, children),\n [BLOCKS.EMBEDDED_ENTRY]: (node, children)=>React.createElement(\"div\", null, children),\n [BLOCKS.EMBEDDED_RESOURCE]: (node, children)=>React.createElement(\"div\", null, children),\n [BLOCKS.UL_LIST]: (node, children)=>React.createElement(\"ul\", null, children),\n [BLOCKS.OL_LIST]: (node, children)=>React.createElement(\"ol\", null, children),\n [BLOCKS.LIST_ITEM]: (node, children)=>React.createElement(\"li\", null, children),\n [BLOCKS.QUOTE]: (node, children)=>React.createElement(\"blockquote\", null, children),\n [BLOCKS.HR]: ()=>React.createElement(\"hr\", null),\n [BLOCKS.TABLE]: (node, children)=>React.createElement(\"table\", null, React.createElement(\"tbody\", null, children)),\n [BLOCKS.TABLE_ROW]: (node, children)=>React.createElement(\"tr\", null, children),\n [BLOCKS.TABLE_HEADER_CELL]: (node, children)=>React.createElement(\"th\", null, children),\n [BLOCKS.TABLE_CELL]: (node, children)=>React.createElement(\"td\", null, children),\n [INLINES.ASSET_HYPERLINK]: (node)=>defaultInline(INLINES.ASSET_HYPERLINK, node),\n [INLINES.ENTRY_HYPERLINK]: (node)=>defaultInline(INLINES.ENTRY_HYPERLINK, node),\n [INLINES.RESOURCE_HYPERLINK]: (node)=>defaultInlineResource(INLINES.RESOURCE_HYPERLINK, node),\n [INLINES.EMBEDDED_ENTRY]: (node)=>defaultInline(INLINES.EMBEDDED_ENTRY, node),\n [INLINES.EMBEDDED_RESOURCE]: (node, _children)=>defaultInlineResource(INLINES.EMBEDDED_RESOURCE, node),\n [INLINES.HYPERLINK]: (node, children)=>React.createElement(\"a\", {\n href: node.data.uri\n }, children)\n};\nconst defaultMarkRenderers = {\n [MARKS.BOLD]: (text)=>React.createElement(\"b\", null, text),\n [MARKS.ITALIC]: (text)=>React.createElement(\"i\", null, text),\n [MARKS.UNDERLINE]: (text)=>React.createElement(\"u\", null, text),\n [MARKS.CODE]: (text)=>React.createElement(\"code\", null, text),\n [MARKS.SUPERSCRIPT]: (text)=>React.createElement(\"sup\", null, text),\n [MARKS.SUBSCRIPT]: (text)=>React.createElement(\"sub\", null, text),\n [MARKS.STRIKETHROUGH]: (text)=>React.createElement(\"s\", null, text)\n};\nfunction defaultInline(type, node) {\n return React.createElement(\"span\", {\n key: node.data.target.sys.id\n }, \"type: \", node.nodeType, \" id: \", node.data.target.sys.id);\n}\nfunction defaultInlineResource(type, node) {\n return React.createElement(\"span\", {\n key: node.data.target.sys.urn\n }, \"type: \", node.nodeType, \" urn: \", node.data.target.sys.urn);\n}\nfunction documentToReactComponents(richTextDocument, options = {}) {\n if (!richTextDocument) {\n return null;\n }\n let processedDocument = richTextDocument;\n if (options.stripEmptyTrailingParagraph) {\n processedDocument = helpers.stripEmptyTrailingParagraphFromDocument(richTextDocument);\n }\n return nodeToReactComponent(processedDocument, {\n renderNode: {\n ...defaultNodeRenderers,\n ...options.renderNode\n },\n renderMark: {\n ...defaultMarkRenderers,\n ...options.renderMark\n },\n renderText: options.renderText,\n preserveWhitespace: options.preserveWhitespace\n });\n}\n\nexport { documentToReactComponents };\n//# sourceMappingURL=rich-text-react-renderer.esm.js.map\n",null,null,null,null],"names":["twMerge","extendTailwindMerge","extend","classGroups","UTM_COOKIE_KEY","DEFAULT_DOMAIN","getCookie","key","window","encryptedValue","Cookies","get","Base64","decode","UTM_PARAM_NAMES","isDocument","v","toDocument","json","BLOCKS","INLINES","MARKS","TOP_LEVEL_BLOCKS","PARAGRAPH","HEADING_1","HEADING_2","HEADING_3","HEADING_4","HEADING_5","HEADING_6","OL_LIST","UL_LIST","HR","QUOTE","EMBEDDED_ENTRY","EMBEDDED_ASSET","EMBEDDED_RESOURCE","TABLE","LIST_ITEM_BLOCKS","TABLE_ROW","TABLE_CELL","TABLE_HEADER_CELL","CONTAINERS","LIST_ITEM","DOCUMENT","HYPERLINK","ENTRY_HYPERLINK","ASSET_HYPERLINK","BOLD","CODE","ITALIC","UNDERLINE","stripEmptyTrailingParagraphFromDocument","document","Array","isArray","content","isValidDocument","length","node","nodeType","textNode","value","isEmptyParagraph","slice","typeMismatchError","path","property","typeName","details","name","toArray","type","ObjectAssertion","obj","_errors","constructor","this","catch","errors","push","serializeError","error","JSON","stringify","filter","index","findIndex","step","exists","requiredPropertyError","of","object","last","string","number","optional","Number","isNaN","array","enum","expected","includes","sort","enumError","empty","max","maxSizeError","minLength","min","minSizeError","noAdditionalProperties","properties","unknowns","Object","keys","forEach","unknownPropertyError","each","assert","foundErrors","item","VOID_CONTENT","NodeAssertion","contentRule","validateData","$","nodeTypes","Error","item$","dataErrors","data","EntityLinkAssertion","linkType","contentNodeTypes","super","assertLink","startsWith","sys$","target","sys","values","nodeListToReactComponents","nodes","options","map","element","nodeToReactComponent","isValidElement","cloneElement","renderNode","renderMark","renderText","preserveWhitespace","helpers.isText","nodeValue","replace","match","repeat","lines","split","jsxLines","line","React","createElement","marks","reduce","mark","children","Fragment","RESOURCE_HYPERLINK","defaultNodeRenderers","defaultInline","defaultInlineResource","_children","href","uri","defaultMarkRenderers","text","SUPERSCRIPT","SUBSCRIPT","STRIKETHROUGH","id","urn","documentToReactComponents","richTextDocument","processedDocument","stripEmptyTrailingParagraph","helpers.stripEmptyTrailingParagraphFromDocument","defaultOptions","_jsx","className","_node","Text","as","url","_a","external","test","undefined","rel","fields","file","_b","alt","title","description","src","style","maxWidth","entry","_d","contentType","_jsxs","border","padding","borderRadius","body","display","alignItems","gap","backgroundColor","fontSize","_f","_e","renderContentfulRichText","doc","linkClassName","shouldOpenBlank","Link","variant","label1BoldOptions","color","currentSearch","currentParams","URLSearchParams","utmSet","Set","stripParams","basePath","targetParams","URL","origin","pathname","searchParams","query","merged","has","toLowerCase","set","queryString","toString","existing","incoming","every","utm_content","utm_term","hasNewContent","hasNewTerm","val","clsx","utms","campaign","utm_campaign","utm_source","source","utm_medium","medium","term","utm_campaign_id","campaign_id","utm_adgroup_id","adgroup_id","gclid","fbclid","msclkid","referrer","referrerHost","hostname","parse","raw","decoded","location","search","found","param","domain","remove","links","_Fragment","isScrollable","parent","rawText","_c","trim","MaterialIcon","fill","entryId","entries","inline","find","e","__typename","items","list","checkListTitle","Checklist","listIconName","listItemClassName","stringValue","encode","encoded","sameSite","useMemo","checklistData","titlesOnly","richTextOptions","richTextClassName","rawItems","iconUrl","icon","anchorId"],"mappings":"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","x_google_ignoreList":[4,5,6,7,8,9,10,11,12,13,14]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@windstream/react-shared-components",
3
- "version": "0.1.96",
3
+ "version": "0.1.98",
4
4
  "type": "module",
5
5
  "description": "Shared React components for Kinetic applications",
6
6
  "main": "dist/index.js",
@@ -34,6 +34,11 @@ const ANIMATION_PRESETS: Record<AnimationType, AnimationPreset> = {
34
34
  whileTap: { scale: 0.95 },
35
35
  transition: { type: "spring", stiffness: 300, damping: 20 },
36
36
  },
37
+ pop: {
38
+ whileHover: { scale: 1.05 },
39
+ whileTap: { scale: 0.95 },
40
+ transition: { duration: 0.15 },
41
+ },
37
42
  };
38
43
 
39
44
  function mergePresets(animationType?: AnimationType | AnimationType[]) {
@@ -1,7 +1,13 @@
1
1
  import { ReactElement } from "react";
2
2
  import { HTMLMotionProps } from "framer-motion";
3
3
 
4
- export type AnimationType = "scale" | "shadow" | "lift" | "opacity" | "grow";
4
+ export type AnimationType =
5
+ | "scale"
6
+ | "shadow"
7
+ | "lift"
8
+ | "opacity"
9
+ | "grow"
10
+ | "pop";
5
11
 
6
12
  export interface AnimationWrapperProps
7
13
  extends Omit<HTMLMotionProps<"div">, "children"> {
@@ -36,7 +36,7 @@ export const BrandButton = forwardRef<
36
36
  const getVariantClasses = () => {
37
37
  const baseClasses = cx(
38
38
  sizeToClassNames(size),
39
- "rounded-button pl-15 pr-15 inline-flex gap-2 items-center justify-center outline-none focus:ring-2 focus:ring-offset-2 cursor-pointer transition-colors duration-200 align-top whitespace-nowrap",
39
+ "rounded-button pl-15 pr-15 inline-flex gap-2 items-center justify-center outline-none focus:ring-2 focus:ring-offset-2 cursor-pointer transition-colors duration-200 align-top sm:whitespace-nowrap",
40
40
  fullWidth ? "w-full" : "w-auto"
41
41
  );
42
42
 
@@ -37,10 +37,10 @@ export const BreadcrumbNavigation: React.FC<
37
37
  return (
38
38
  <nav
39
39
  aria-label="Breadcrumb"
40
- className={`${maxWidth ? `${float === "none" && "mx-5"} max-w-120 xl:mx-auto` : "mx-auto"} relative`}
40
+ className={`${float === "always" ? "w-full" : maxWidth ? `${float === "none" ? "mx-5" : "mx-auto"} max-w-120 xl:mx-auto` : "mx-auto"} relative ${float === "always" ? "h-0 overflow-visible" : ""} `}
41
41
  >
42
42
  <ol
43
- className={`${float === "always" && "px-7 md:px-14"} right-0 z-10 mx-0 flex w-full flex-nowrap items-center gap-2 pb-0 pt-8 ${olPosition} xl:mx-auto xl:flex-wrap xl:px-3`}
43
+ className={`${float === "always" ? "px-4 md:px-7 left-0" : "right-0"} z-10 mx-0 flex w-full flex-nowrap items-center gap-2 pb-0 pt-8 ${olPosition} xl:mx-auto xl:flex-wrap xl:px-3`}
44
44
  >
45
45
  {links.map((link, index) => {
46
46
  const { image, ...linkProps } = link;
@@ -26,6 +26,7 @@ export const Button: React.FC<ButtonProps> = props => {
26
26
  buttonClassName,
27
27
  clickToOpen,
28
28
  tabmodalNameToOpen,
29
+ idNameToOpen,
29
30
  onModalButtonClick,
30
31
  onClick,
31
32
  iconName,
@@ -36,7 +37,10 @@ export const Button: React.FC<ButtonProps> = props => {
36
37
  ...rest
37
38
  } = props;
38
39
 
39
- if (preDefinedFunctionExecution === "check availability") {
40
+ if (
41
+ preDefinedFunctionExecution === "check availability" &&
42
+ renderCheckPlans
43
+ ) {
40
44
  const checkPlansNode = renderCheckPlans?.({
41
45
  ctaText: buttonLabel,
42
46
  buttonVariant: buttonVariant,
@@ -46,10 +50,26 @@ export const Button: React.FC<ButtonProps> = props => {
46
50
  return checkPlansNode;
47
51
  }
48
52
 
53
+ function handleClickId() {
54
+ if (clickToOpen === "clickId" && idNameToOpen) {
55
+ const element = document.getElementById(idNameToOpen);
56
+ if (element) {
57
+ element.scrollIntoView({
58
+ behavior: "smooth",
59
+ block: "start",
60
+ });
61
+ element.click?.();
62
+ }
63
+ }
64
+ }
65
+
49
66
  function handleModalClick() {
50
67
  if (clickToOpen === "modal") {
51
68
  onModalButtonClick?.(tabmodalNameToOpen);
52
69
  }
70
+ if (clickToOpen === "clickId") {
71
+ handleClickId();
72
+ }
53
73
  }
54
74
 
55
75
  function linkClick(event: React.MouseEvent<HTMLAnchorElement>) {
@@ -65,8 +85,9 @@ export const Button: React.FC<ButtonProps> = props => {
65
85
  // Resolve the final href — merge non-UTM query params when preserveQueryParameters is true
66
86
  const currentSearch =
67
87
  typeof window !== "undefined" ? window.location.search : "";
68
- const resolvedHref =
69
- href && preserveQueryParameters && currentSearch
88
+ const resolvedHref = preDefinedFunctionExecution
89
+ ? undefined
90
+ : href && preserveQueryParameters && currentSearch
70
91
  ? buildPreservedQueryHref(href, currentSearch)
71
92
  : href;
72
93
 
@@ -24,6 +24,7 @@ export type ButtonProps = {
24
24
  preserveQueryParameters?: boolean;
25
25
  clickToOpen?: string;
26
26
  tabmodalNameToOpen?: string;
27
+ idNameToOpen?: string;
27
28
  preDefinedFunctionExecution?: string;
28
29
  renderCheckPlans?: (overrides?: CheckPlansProps) => React.ReactNode;
29
30
  linkClassName?: string;
@@ -39,18 +39,20 @@ export const EmailInputBlock: React.FC<EmailInputBlockProps> = props => {
39
39
  const [emailError, setEmailError] = useState("");
40
40
 
41
41
  const validateEmail = (email: string) => {
42
- const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
42
+ const emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
43
43
  return emailRegex.test(email);
44
44
  };
45
45
 
46
46
  const handleOnSubmit = () => {
47
- if (validateEmail(email)) {
47
+ if (!email.trim()) {
48
+ setEmailError("Email is required");
49
+ } else if (!validateEmail(email)) {
50
+ setEmailError("Invalid email address");
51
+ } else {
48
52
  onSubmit({ email });
49
53
  setEmail("");
50
54
  setFormSubmitted(true);
51
55
  setEmailError("");
52
- } else {
53
- setEmailError("Please enter a valid email address.");
54
56
  }
55
57
  };
56
58
 
@@ -84,9 +86,16 @@ export const EmailInputBlock: React.FC<EmailInputBlockProps> = props => {
84
86
  placeholder={inputPlaceholder}
85
87
  value={email}
86
88
  onChange={e => {
87
- setEmail(e.target.value);
88
- if (emailError) setEmailError("");
89
+ const value = e.target.value;
90
+ setEmail(value);
89
91
  if (formSubmitted) setFormSubmitted(false);
92
+ if (!value.trim()) {
93
+ setEmailError("Email is required");
94
+ } else if (!validateEmail(value)) {
95
+ setEmailError("Invalid email address");
96
+ } else {
97
+ setEmailError("");
98
+ }
90
99
  }}
91
100
  className="w-full flex-grow bg-transparent !pl-4 pr-6 py-3 text-[1rem] leading-none md:text-base font-normal text-text outline-none placeholder:input-text-placeholder md:py-4"
92
101
  />
@@ -99,7 +108,7 @@ export const EmailInputBlock: React.FC<EmailInputBlockProps> = props => {
99
108
  />
100
109
  </div>
101
110
  {emailError && (
102
- <p className="mt-2 text-label4 font-semibold text-text-critical">
111
+ <p className="mt-2 text-label4 font-semibold text-text-inverse">
103
112
  {emailError}
104
113
  </p>
105
114
  )}
@@ -16,6 +16,7 @@ export const FindKinetic: React.FC<FindKineticProps> = ({
16
16
  title,
17
17
  color = "dark",
18
18
  maxWidth = true,
19
+ columns = 3,
19
20
  }) => {
20
21
  const bgColorClasses: Record<ThemeKey, string> = {
21
22
  blue: "bg-[#07B2E2]",
@@ -42,7 +43,7 @@ export const FindKinetic: React.FC<FindKineticProps> = ({
42
43
  {title && (
43
44
  <Text
44
45
  as={enableHeading ? "h1" : "h2"}
45
- className="heading2 md:heading1 md:text-center"
46
+ className="heading2 md:heading1 text-center"
46
47
  >
47
48
  {title}
48
49
  </Text>
@@ -50,16 +51,16 @@ export const FindKinetic: React.FC<FindKineticProps> = ({
50
51
  {subTitle && (
51
52
  <Text
52
53
  as={enableHeading ? "h2" : "h3"}
53
- className="heading3 mt-4 text-center"
54
+ className="subheading1 mt-4 text-center"
54
55
  >
55
56
  {subTitle}
56
57
  </Text>
57
58
  )}
58
59
 
59
- <div className="mt-8 flex items-center xl:mt-16 xl:gap-10">
60
- <div className="flex flex-col items-start gap-10 self-stretch xl:flex-[1_0_0]">
60
+ <div className="mt-2 flex flex-col items-center xl:mt-8 xl:flex-row xl:gap-10">
61
+ <div className="flex w-full flex-col items-start gap-10 self-stretch xl:flex-[1_0_0]">
61
62
  {description && (
62
- <Text as="p" className="body1">
63
+ <Text as="p" className={`body1 w-full ${!image ? "text-center" : ""}`}>
63
64
  {description}
64
65
  </Text>
65
66
  )}
@@ -72,60 +73,85 @@ export const FindKinetic: React.FC<FindKineticProps> = ({
72
73
  );
73
74
  const numColumns = 2;
74
75
  const numRows = Math.ceil(sortedList.length / numColumns);
75
- const rearranged = [];
76
+ const rearranged: (typeof sortedList[0] | null)[] = [];
76
77
  for (let row = 0; row < numRows; row++) {
77
78
  for (let col = 0; col < numColumns; col++) {
78
79
  const index = col * numRows + row;
79
- if (index < sortedList.length) {
80
- rearranged.push(sortedList[index]);
81
- }
80
+ rearranged.push(index < sortedList.length ? sortedList[index] : null);
82
81
  }
83
82
  }
84
- return rearranged.map((item, index: number) => (
85
- <li key={`item-list-2-${index}`}>
86
- <Link
87
- href={getLocationHref(item.code)}
88
- className="label1"
89
- >
90
- {item.name}
91
- </Link>
92
- </li>
93
- ));
83
+ return rearranged.map((item, index: number) =>
84
+ item ? (
85
+ <li key={`item-list-2-${index}`}>
86
+ <Link href={getLocationHref(item.code)} className="label1">
87
+ {item.name}
88
+ </Link>
89
+ </li>
90
+ ) : (
91
+ <li key={`item-list-2-${index}`} aria-hidden="true" />
92
+ )
93
+ );
94
94
  })()}
95
95
  </ul>
96
- <ul className="hidden gap-x-6 gap-y-5 md:grid md:grid-cols-3">
96
+ <ul className="hidden w-full gap-x-6 gap-y-5 md:grid md:grid-cols-3 xl:hidden">
97
97
  {(() => {
98
98
  const sortedList = [...list].sort((a, b) =>
99
99
  a.name.localeCompare(b.name)
100
100
  );
101
101
  const numColumns = 3;
102
102
  const numRows = Math.ceil(sortedList.length / numColumns);
103
- const rearranged = [];
103
+ const rearranged: (typeof sortedList[0] | null)[] = [];
104
104
  for (let row = 0; row < numRows; row++) {
105
105
  for (let col = 0; col < numColumns; col++) {
106
106
  const index = col * numRows + row;
107
- if (index < sortedList.length) {
108
- rearranged.push(sortedList[index]);
109
- }
107
+ rearranged.push(index < sortedList.length ? sortedList[index] : null);
110
108
  }
111
109
  }
112
- return rearranged.map((item, index: number) => (
113
- <li key={`item-list-3-${index}`}>
114
- <Link
115
- href={getLocationHref(item.code)}
116
- className="label1"
117
- >
118
- {item.name}
119
- </Link>
120
- </li>
121
- ));
110
+ return rearranged.map((item, index: number) =>
111
+ item ? (
112
+ <li key={`item-list-md-${index}`}>
113
+ <Link href={getLocationHref(item.code)} className="label1">
114
+ {item.name}
115
+ </Link>
116
+ </li>
117
+ ) : (
118
+ <li key={`item-list-md-${index}`} aria-hidden="true" />
119
+ )
120
+ );
121
+ })()}
122
+ </ul>
123
+ <ul className={`hidden w-full gap-x-6 gap-y-5 xl:grid xl:grid-cols-${columns}`}>
124
+ {(() => {
125
+ const sortedList = [...list].sort((a, b) =>
126
+ a.name.localeCompare(b.name)
127
+ );
128
+ const numColumns = columns;
129
+ const numRows = Math.ceil(sortedList.length / numColumns);
130
+ const rearranged: (typeof sortedList[0] | null)[] = [];
131
+ for (let row = 0; row < numRows; row++) {
132
+ for (let col = 0; col < numColumns; col++) {
133
+ const index = col * numRows + row;
134
+ rearranged.push(index < sortedList.length ? sortedList[index] : null);
135
+ }
136
+ }
137
+ return rearranged.map((item, index: number) =>
138
+ item ? (
139
+ <li key={`item-list-xl-${index}`}>
140
+ <Link href={getLocationHref(item.code)} className="label1">
141
+ {item.name}
142
+ </Link>
143
+ </li>
144
+ ) : (
145
+ <li key={`item-list-xl-${index}`} aria-hidden="true" />
146
+ )
147
+ );
122
148
  })()}
123
149
  </ul>
124
150
  </>
125
151
  )}
126
152
  </div>
127
153
  {image && (
128
- <aside className="hidden xl:block">
154
+ <aside className="hidden md:block xl:flex-shrink-0">
129
155
  <NextImage width={472} height={100} src={image} alt="image" />
130
156
  </aside>
131
157
  )}
@@ -9,6 +9,7 @@ export type FindKineticProps = {
9
9
  list?: { name: string; code: string }[];
10
10
  maxWidth?: boolean;
11
11
  color?: "dark" | "light";
12
+ columns?: 2 | 3 | 4;
12
13
  };
13
14
 
14
15
  export type ThemeKey =