{"version":3,"file":"static/chunks/4605.81260519e48afb71.js","mappings":"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","sources":["webpack://_N_E/../design-system/src/components/blocks/supporting-details/supporting-details.tsx","webpack://_N_E/./src/contentful/components/blocks/supporting-details.contentful.tsx","webpack://_N_E/./src/contentful/lib/create-contentful-component.tsx","webpack://_N_E/../design-system/src/components/blocks/supporting-details/supporting-details.scss?1e3e","webpack://_N_E/"],"sourcesContent":["import \"./supporting-details.scss\";\nimport { ReactNode } from \"react\";\nimport cn from \"clsx\";\nimport {\n MediaAsset,\n MediaAssetProps,\n} from \"design-system/components/primitives/media-asset/media-asset\";\nimport { Alignment, EditAttributes } from \"design-system/types/types\";\n\nexport interface SupportingDetailsListItem {\n title?: ReactNode;\n subtitle?: ReactNode;\n\n editAttributes?: {\n title?: EditAttributes;\n subtitle?: EditAttributes;\n };\n}\n\nexport interface SupportingDetailsProps {\n items?: Array;\n mediaAsset?: MediaAssetProps;\n align?: Alignment;\n}\n\n/**\n * ## See it in use on...\n * - The [homepage](/story/example-pages-homepage--homepage)\n *\n * - **`id: CB-016-000-00`**\n * - **`data-region: cb__supporting-details`**\n */\nexport function SupportingDetails({\n items,\n mediaAsset,\n align = \"full\",\n}: SupportingDetailsProps) {\n if (!Array.isArray(items)) items = [];\n\n const wrapperClass = cn(\n align && `hbs-global-align-${align}`,\n \"hbs-supporting-details\",\n );\n\n return (\n
\n
\n
    \n {items.map((item, i) => (\n
  • \n
    \n {item.title && (\n \n {item.title}\n
    \n )}\n\n {item.subtitle && (\n \n {item.subtitle}\n \n )}\n
\n \n ))}\n \n\n {mediaAsset && (\n
\n \n
\n )}\n
\n \n );\n}\n","import { SupportingDetailsEntry } from \"frontend/contentful/schema/blocks\";\nimport {\n SupportingDetails,\n SupportingDetailsProps,\n} from \"design-system/components/blocks/supporting-details/supporting-details\";\nimport { createContentfulComponent } from \"frontend/contentful/lib/create-contentful-component\";\nimport { createMediaAssetProps } from \"../primitives/media-asset.props\";\nimport { RenderContentfulRichText } from \"../utils/render-contentful-rich-text\";\nimport { useContentful } from \"frontend/hooks/use-contentful\";\nimport { Alignment } from \"design-system/types/types\";\n\ninterface SupportingDetailsOptions {\n alignment?: Alignment;\n}\n\nexport const ContentfulSupportingDetails = createContentfulComponent<\n SupportingDetailsEntry,\n SupportingDetailsOptions\n>(({ entry, options, createEditAttributes }) => {\n const { getEntries } = useContentful();\n\n const props: SupportingDetailsProps = {\n align: options?.alignment,\n mediaAsset: createMediaAssetProps(entry.fields.media),\n items: getEntries(entry.fields.listItems)?.map((item) => ({\n title: ,\n subtitle: (\n \n ),\n editAttributes: {\n title: createEditAttributes({ entry: item, fieldId: \"title\" }),\n subtitle: createEditAttributes({ entry: item, fieldId: \"description\" }),\n },\n })),\n };\n\n return ;\n});\n","import { ContentfulEntry, EntryRef } from \"frontend/contentful/schema/sys\";\nimport { useContentful } from \"frontend/hooks/use-contentful\";\nimport { ComponentType, ReactNode } from \"react\";\nimport { CreateEditAttributesFn } from \"./edit-attributes-factory\";\n\nexport interface ContentfulComponentProps<\n E extends ContentfulEntry,\n O = Record,\n> {\n entry: E;\n options: O | undefined;\n createEditAttributes: CreateEditAttributesFn;\n}\n\nexport type ContentfulComponent = (\n props: ContentfulComponentProps,\n) => ReactNode;\nexport interface ContentfulComponentRenderProps<\n E extends ContentfulEntry,\n O = void,\n> {\n entry?: EntryRef;\n options?: O;\n}\nexport type ContentfulFactoryComponent<\n E extends ContentfulEntry,\n O = void,\n> = ComponentType>;\n\nexport function createContentfulComponent(\n Component: ContentfulComponent,\n) {\n const ContentfulComponent: ContentfulFactoryComponent = ({\n entry: ref,\n options,\n }) => {\n const { getEntry, createEditAttributes } = useContentful();\n\n const entry = getEntry(ref);\n\n if (!entry?.fields || !entry?.metadata || !entry?.sys.id) return null;\n\n return (\n \n );\n };\n\n return ContentfulComponent;\n}\n","// extracted by mini-css-extract-plugin"],"names":["SupportingDetails","param","items","mediaAsset","align","Array","isArray","wrapperClass","cn","concat","jsx_runtime","jsx","div","className","data-region","jsxs","ul","map","item","i","li","title","editAttributes","subtitle","span","MediaAsset","ContentfulSupportingDetails","createContentfulComponent","getEntries","entry","options","createEditAttributes","useContentful","props","alignment","createMediaAssetProps","fields","media","listItems","RenderContentfulRichText","document","description","fieldId","Component","ref","getEntry","metadata","sys","id","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__"],"sourceRoot":""}