@coveo/atomic 3.33.3-pre.ee24f8bd85 → 3.33.3-pre.f230cfebef

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 (118) hide show
  1. package/dist/atomic/_atomic.esm.js +1 -1
  2. package/dist/atomic/components/analytics-config.js +1 -1
  3. package/dist/atomic/components/atomic-insight-result2.js +1 -1
  4. package/dist/atomic/components/atomic-insight-result2.js.map +1 -1
  5. package/dist/atomic/components/atomic-recs-result2.js +1 -1
  6. package/dist/atomic/components/atomic-recs-result2.js.map +1 -1
  7. package/dist/atomic/components/atomic-result-placeholder2.js +1 -1
  8. package/dist/atomic/components/atomic-result-placeholder2.js.map +1 -1
  9. package/dist/atomic/components/atomic-result2.js +1 -1
  10. package/dist/atomic/components/atomic-result2.js.map +1 -1
  11. package/dist/atomic/components/components/commerce/atomic-commerce-facet-number-input/atomic-commerce-facet-number-input.js +2 -5
  12. package/dist/atomic/components/components/commerce/atomic-commerce-facets/atomic-commerce-facets.js +3 -7
  13. package/dist/atomic/components/components/commerce/atomic-commerce-layout/atomic-commerce-layout.js +9 -7
  14. package/dist/atomic/components/components/commerce/atomic-commerce-product-list/atomic-commerce-product-list.js +13 -3
  15. package/dist/atomic/components/components/commerce/atomic-commerce-recommendation-list/atomic-commerce-recommendation-list.js +7 -3
  16. package/dist/atomic/components/components/commerce/atomic-product/atomic-product.tw.css.js +1 -1
  17. package/dist/atomic/components/components/commerce/atomic-product-children/atomic-product-children.js +3 -7
  18. package/dist/atomic/components/components/commerce/atomic-product-description/atomic-product-description.js +3 -4
  19. package/dist/atomic/components/components/commerce/atomic-product-excerpt/atomic-product-excerpt.js +3 -4
  20. package/dist/atomic/components/components/commerce/atomic-product-field-condition/atomic-product-field-condition.js +2 -4
  21. package/dist/atomic/components/components/commerce/atomic-product-link/atomic-product-link.js +3 -6
  22. package/dist/atomic/components/components/commerce/atomic-product-numeric-field-value/atomic-product-numeric-field-value.js +3 -7
  23. package/dist/atomic/components/components/commerce/atomic-product-price/atomic-product-price.js +2 -3
  24. package/dist/atomic/components/components/commerce/atomic-product-rating/atomic-product-rating.js +3 -4
  25. package/dist/atomic/components/components/commerce/atomic-product-section-actions/atomic-product-section-actions.js +3 -2
  26. package/dist/atomic/components/components/commerce/atomic-product-section-metadata/atomic-product-section-metadata.js +3 -2
  27. package/dist/atomic/components/components/commerce/atomic-product-section-name/atomic-product-section-name.js +3 -2
  28. package/dist/atomic/components/components/commerce/atomic-product-section-visual/atomic-product-section-visual.js +4 -3
  29. package/dist/atomic/components/components/commerce/atomic-product-text/atomic-product-text.js +2 -4
  30. package/dist/atomic/components/components/common/atomic-aria-live/atomic-aria-live.js +2 -4
  31. package/dist/atomic/components/components/common/atomic-facet-date-input/atomic-facet-date-input.js +3 -7
  32. package/dist/atomic/components/components/common/atomic-icon/atomic-icon.js +3 -4
  33. package/dist/atomic/components/components/common/atomic-layout-section/atomic-layout-section.js +2 -4
  34. package/dist/atomic/components/components/common/item-list/styles/grid-display.tw.css.js +4 -0
  35. package/dist/atomic/components/components/common/item-list/styles/list-display.tw.css.js +4 -0
  36. package/dist/atomic/components/components/common/item-list/styles/placeholders.tw.css.js +3 -0
  37. package/dist/atomic/components/components/common/item-list/styles/table-display.tw.css.js +4 -0
  38. package/dist/atomic/components/components/search/atomic-search-layout/atomic-search-layout.js +7 -7
  39. package/dist/atomic/components/global/environment.js +1 -1
  40. package/dist/atomic/components/mixins/item-section-mixin.js +4 -13
  41. package/dist/atomic/components/mixins/light-dom.js +70 -0
  42. package/dist/atomic/p-45b200a8.entry.js +2 -0
  43. package/dist/atomic/{p-bce99a61.entry.js.map → p-45b200a8.entry.js.map} +1 -1
  44. package/dist/atomic/{p-0544aeaf.entry.js → p-8368d287.entry.js} +2 -2
  45. package/dist/atomic/{p-3bd7c3e2.entry.js → p-911c5765.entry.js} +2 -2
  46. package/dist/atomic/{p-d402d8a3.entry.js → p-9ff3ff9e.entry.js} +2 -2
  47. package/dist/atomic/{p-a13d7515.js → p-d1539193.js} +2 -2
  48. package/dist/atomic/p-e40a763b.entry.js +2 -0
  49. package/dist/atomic/{p-78aeb2d4.entry.js.map → p-e40a763b.entry.js.map} +1 -1
  50. package/dist/atomic/p-e91e8521.entry.js +2 -0
  51. package/dist/atomic/{p-2215b188.entry.js.map → p-e91e8521.entry.js.map} +1 -1
  52. package/dist/atomic/p-feb020b6.entry.js +2 -0
  53. package/dist/atomic/{p-0a58608a.entry.js.map → p-feb020b6.entry.js.map} +1 -1
  54. package/dist/cjs/{analytics-config-a0130d05.js → analytics-config-1e7b21a7.js} +2 -2
  55. package/dist/cjs/{analytics-config-a0130d05.js.map → analytics-config-1e7b21a7.js.map} +1 -1
  56. package/dist/cjs/atomic-insight-interface.cjs.entry.js +1 -1
  57. package/dist/cjs/atomic-insight-result.cjs.entry.js +1 -1
  58. package/dist/cjs/atomic-insight-result.cjs.entry.js.map +1 -1
  59. package/dist/cjs/atomic-recs-interface.cjs.entry.js +1 -1
  60. package/dist/cjs/atomic-recs-result.cjs.entry.js +1 -1
  61. package/dist/cjs/atomic-recs-result.cjs.entry.js.map +1 -1
  62. package/dist/cjs/atomic-result-placeholder_8.cjs.entry.js +1 -1
  63. package/dist/cjs/atomic-result-placeholder_8.cjs.entry.js.map +1 -1
  64. package/dist/cjs/atomic-result.cjs.entry.js +1 -1
  65. package/dist/cjs/atomic-result.cjs.entry.js.map +1 -1
  66. package/dist/cjs/atomic-search-interface.cjs.entry.js +1 -1
  67. package/dist/cjs/version.cjs.js +2 -2
  68. package/dist/esm/{analytics-config-ca9f2d02.js → analytics-config-3299bb39.js} +2 -2
  69. package/dist/esm/{analytics-config-ca9f2d02.js.map → analytics-config-3299bb39.js.map} +1 -1
  70. package/dist/esm/atomic-insight-interface.entry.js +1 -1
  71. package/dist/esm/atomic-insight-result.entry.js +1 -1
  72. package/dist/esm/atomic-insight-result.entry.js.map +1 -1
  73. package/dist/esm/atomic-recs-interface.entry.js +1 -1
  74. package/dist/esm/atomic-recs-result.entry.js +1 -1
  75. package/dist/esm/atomic-recs-result.entry.js.map +1 -1
  76. package/dist/esm/atomic-result-placeholder_8.entry.js +1 -1
  77. package/dist/esm/atomic-result-placeholder_8.entry.js.map +1 -1
  78. package/dist/esm/atomic-result.entry.js +1 -1
  79. package/dist/esm/atomic-result.entry.js.map +1 -1
  80. package/dist/esm/atomic-search-interface.entry.js +1 -1
  81. package/dist/esm/version.js +2 -2
  82. package/dist/types/components/commerce/atomic-commerce-facet-number-input/atomic-commerce-facet-number-input.d.ts +5 -1
  83. package/dist/types/components/commerce/atomic-commerce-facets/atomic-commerce-facets.d.ts +5 -2
  84. package/dist/types/components/commerce/atomic-commerce-layout/atomic-commerce-layout.d.ts +6 -2
  85. package/dist/types/components/commerce/atomic-product-children/atomic-product-children.d.ts +5 -2
  86. package/dist/types/components/commerce/atomic-product-description/atomic-product-description.d.ts +5 -1
  87. package/dist/types/components/commerce/atomic-product-excerpt/atomic-product-excerpt.d.ts +5 -1
  88. package/dist/types/components/commerce/atomic-product-field-condition/atomic-product-field-condition.d.ts +5 -2
  89. package/dist/types/components/commerce/atomic-product-link/atomic-product-link.d.ts +3 -1
  90. package/dist/types/components/commerce/atomic-product-numeric-field-value/atomic-product-numeric-field-value.d.ts +5 -2
  91. package/dist/types/components/commerce/atomic-product-price/atomic-product-price.d.ts +5 -1
  92. package/dist/types/components/commerce/atomic-product-rating/atomic-product-rating.d.ts +5 -1
  93. package/dist/types/components/commerce/atomic-product-text/atomic-product-text.d.ts +5 -2
  94. package/dist/types/components/common/atomic-aria-live/atomic-aria-live.d.ts +5 -2
  95. package/dist/types/components/common/atomic-facet-date-input/atomic-facet-date-input.d.ts +5 -2
  96. package/dist/types/components/common/atomic-icon/atomic-icon.d.ts +3 -1
  97. package/dist/types/components/common/atomic-layout-section/atomic-layout-section.d.ts +5 -2
  98. package/dist/types/components/common/interface/bindings.d.ts +1 -1
  99. package/dist/types/components/common/item-list/styles/placeholders.tw.css.d.ts +2 -0
  100. package/dist/types/components/common/item-list/styles/table-display.tw.css.d.ts +2 -0
  101. package/dist/types/components/search/atomic-search-layout/atomic-search-layout.d.ts +4 -2
  102. package/dist/types/mixins/light-dom.d.ts +25 -0
  103. package/docs/atomic-docs.json +1 -1
  104. package/package.json +3 -4
  105. package/dist/atomic/components/components/commerce/atomic-commerce-product-list/atomic-commerce-product-list.tw.css.js +0 -4
  106. package/dist/atomic/components/components/commerce/atomic-commerce-recommendation-list/atomic-commerce-recommendation-list.tw.css.js +0 -4
  107. package/dist/atomic/components/decorators/inject-styles-for-no-shadow-dom.js +0 -55
  108. package/dist/atomic/p-0a58608a.entry.js +0 -2
  109. package/dist/atomic/p-2215b188.entry.js +0 -2
  110. package/dist/atomic/p-78aeb2d4.entry.js +0 -2
  111. package/dist/atomic/p-bce99a61.entry.js +0 -2
  112. package/dist/types/decorators/inject-styles-for-no-shadow-dom.d.ts +0 -31
  113. /package/dist/atomic/{p-0544aeaf.entry.js.map → p-8368d287.entry.js.map} +0 -0
  114. /package/dist/atomic/{p-3bd7c3e2.entry.js.map → p-911c5765.entry.js.map} +0 -0
  115. /package/dist/atomic/{p-d402d8a3.entry.js.map → p-9ff3ff9e.entry.js.map} +0 -0
  116. /package/dist/atomic/{p-a13d7515.js.map → p-d1539193.js.map} +0 -0
  117. /package/dist/types/components/{commerce/atomic-commerce-product-list/atomic-commerce-product-list.tw.css.d.ts → common/item-list/styles/grid-display.tw.css.d.ts} +0 -0
  118. /package/dist/types/components/{commerce/atomic-commerce-recommendation-list/atomic-commerce-recommendation-list.tw.css.d.ts → common/item-list/styles/list-display.tw.css.d.ts} +0 -0
@@ -1 +1 @@
1
- {"file":"atomic-result.entry.js","mappings":"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","names":[],"sources":["src/components/search/atomic-result/atomic-result.pcss?tag=atomic-result&encapsulation=shadow","src/components/search/atomic-result/atomic-result.tsx"],"sourcesContent":["@import '../../common/template-system/template-system.pcss';\n\n:host {\n @apply atomic-template-system;\n}\n","import {FoldedResult, InteractiveResult, Result} from '@coveo/headless';\nimport {Component, h, Prop, Element, Listen, Host} from '@stencil/core';\nimport {parentNodeToString} from '../../../utils/dom-utils';\nimport {DisplayConfig} from '../../common/item-list/stencil-item-decorators';\nimport {\n ItemRenderingFunction,\n resultComponentClass,\n} from '../../common/item-list/stencil-item-list-common';\nimport {\n ItemLayout,\n ItemDisplayDensity,\n ItemDisplayImageSize,\n ItemDisplayLayout,\n} from '../../common/layout/display-options';\nimport {SearchStore} from '../atomic-search-interface/store';\nimport {\n InteractiveResultContextEvent,\n ResultContextEvent,\n} from '../result-template-components/result-template-decorators';\n\n/**\n * The `atomic-result` component is used internally by the `atomic-result-list` component.\n */\n@Component({\n tag: 'atomic-result',\n styleUrl: 'atomic-result.pcss',\n shadow: true,\n})\nexport class AtomicResult {\n private layout!: ItemLayout;\n\n @Element() host!: HTMLElement;\n\n /**\n * Whether an atomic-result-link inside atomic-result should stop click event propagation.\n */\n @Prop() stopPropagation?: boolean;\n\n /**\n * The result item.\n */\n @Prop() result!: Result | FoldedResult;\n\n /**\n * The InteractiveResult item.\n * @internal\n */\n @Prop() interactiveResult!: InteractiveResult;\n\n /**\n * Global Atomic state.\n * @internal\n */\n @Prop() store?: SearchStore;\n\n /**\n * The result content to display.\n */\n @Prop() content?: ParentNode;\n\n /**\n * The result link to use when the result is clicked in a grid layout.\n *\n * @default - An `atomic-result-link` without any customization.\n */\n @Prop() linkContent: ParentNode = new DocumentFragment();\n\n /**\n * How results should be displayed.\n */\n @Prop() display: ItemDisplayLayout = 'list';\n\n /**\n * How large or small results should be.\n */\n @Prop() density: ItemDisplayDensity = 'normal';\n\n /**\n * The size of the visual section in result list items.\n *\n * This is overwritten by the image size defined in the result content, if it exists.\n */\n @Prop() imageSize: ItemDisplayImageSize = 'icon';\n\n /**\n * The classes to add to the result element.\n */\n @Prop() classes = '';\n\n /**\n * @internal\n */\n @Prop() loadingFlag?: string;\n\n /**\n * Internal function used by atomic-recs-list in advanced setups, which lets you bypass the standard HTML template system.\n * Particularly useful for Atomic React\n *\n * @internal\n */\n @Prop() renderingFunction: ItemRenderingFunction;\n\n private resultRootRef?: HTMLElement;\n private linkContainerRef?: HTMLElement;\n private executedRenderingFunctionOnce = false;\n\n @Listen('atomic/resolveResult')\n public resolveResult(event: ResultContextEvent<FoldedResult | Result>) {\n event.preventDefault();\n event.stopPropagation();\n event.detail(this.result);\n }\n\n @Listen('atomic/resolveInteractiveResult')\n public resolveInteractiveResult(event: InteractiveResultContextEvent) {\n event.preventDefault();\n event.stopPropagation();\n if (this.interactiveResult) {\n event.detail(this.interactiveResult);\n }\n }\n\n @Listen('atomic/resolveStopPropagation')\n public resolveStopPropagation(event: CustomEvent) {\n event.detail(this.stopPropagation);\n }\n\n @Listen('atomic/resolveResultDisplayConfig')\n public resolveResultDisplayConfig(event: ResultContextEvent<DisplayConfig>) {\n event.preventDefault();\n event.stopPropagation();\n event.detail({\n density: this.density,\n imageSize: this.imageSize!,\n });\n }\n\n @Listen('click')\n public handleClick(event: MouseEvent) {\n if (this.stopPropagation) {\n event.stopPropagation();\n }\n this.host\n .shadowRoot!.querySelector<HTMLAnchorElement>(\n '.link-container > atomic-result-link a:not([slot])'\n )\n ?.click();\n }\n\n public connectedCallback() {\n this.layout = new ItemLayout(\n this.content!.children,\n this.display,\n this.density,\n this.imageSize\n );\n }\n\n private get isCustomRenderFunctionMode() {\n return this.renderingFunction !== undefined;\n }\n\n private getContentHTML() {\n return parentNodeToString(this.content!);\n }\n\n private getLinkHTML() {\n return parentNodeToString(this.linkContent);\n }\n\n private shouldExecuteRenderFunction() {\n return (\n this.isCustomRenderFunctionMode &&\n this.resultRootRef &&\n !this.executedRenderingFunctionOnce\n );\n }\n\n public render() {\n if (this.isCustomRenderFunctionMode) {\n return (\n <Host class={resultComponentClass}>\n <div\n class=\"result-root\"\n ref={(ref) => (this.resultRootRef = ref)}\n ></div>\n <div\n class=\"link-container\"\n ref={(ref) => (this.linkContainerRef = ref)}\n ></div>\n </Host>\n );\n }\n return (\n <Host class={resultComponentClass}>\n <div\n class={`result-root ${this.layout\n .getClasses()\n .concat(this.classes)\n .join(' ')}`}\n innerHTML={this.getContentHTML()}\n ></div>\n <div class=\"link-container\" innerHTML={this.getLinkHTML()}></div>\n </Host>\n );\n }\n\n public componentDidLoad() {\n if (this.loadingFlag && this.store) {\n this.store.unsetLoadingFlag(this.loadingFlag);\n }\n this.host.classList.add('hydrated');\n }\n\n public componentDidRender() {\n if (this.shouldExecuteRenderFunction()) {\n const customRenderOutputAsString = this.renderingFunction!(\n this.result,\n this.resultRootRef!,\n this.linkContainerRef!\n );\n\n this.resultRootRef!.className += ` ${this.layout\n .getClasses(customRenderOutputAsString)\n .concat(this.classes)\n .join(' ')}`;\n\n this.executedRenderingFunctionOnce = true;\n }\n this.host.classList.add('hydrated');\n }\n}\n"],"version":3}
1
+ {"file":"atomic-result.entry.js","mappings":"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","names":[],"sources":["src/components/search/atomic-result/atomic-result.pcss?tag=atomic-result&encapsulation=shadow","src/components/search/atomic-result/atomic-result.tsx"],"sourcesContent":["@import '../../common/template-system/template-system.pcss';\n\n:host {\n @apply atomic-template-system;\n}\n","import {FoldedResult, InteractiveResult, Result} from '@coveo/headless';\nimport {Component, h, Prop, Element, Listen, Host} from '@stencil/core';\nimport {parentNodeToString} from '../../../utils/dom-utils';\nimport {DisplayConfig} from '../../common/item-list/stencil-item-decorators';\nimport {\n ItemRenderingFunction,\n resultComponentClass,\n} from '../../common/item-list/stencil-item-list-common';\nimport {\n ItemLayout,\n ItemDisplayDensity,\n ItemDisplayImageSize,\n ItemDisplayLayout,\n} from '../../common/layout/display-options';\nimport {SearchStore} from '../atomic-search-interface/store';\nimport {\n InteractiveResultContextEvent,\n ResultContextEvent,\n} from '../result-template-components/result-template-decorators';\n\n/**\n * The `atomic-result` component is used internally by the `atomic-result-list` component.\n */\n@Component({\n tag: 'atomic-result',\n styleUrl: 'atomic-result.pcss',\n shadow: true,\n})\nexport class AtomicResult {\n private layout!: ItemLayout;\n\n @Element() host!: HTMLElement;\n\n /**\n * Whether an atomic-result-link inside atomic-result should stop click event propagation.\n */\n @Prop() stopPropagation?: boolean;\n\n /**\n * The result item.\n */\n @Prop() result!: Result | FoldedResult;\n\n /**\n * The InteractiveResult item.\n * @internal\n */\n @Prop() interactiveResult!: InteractiveResult;\n\n /**\n * Global Atomic state.\n * @internal\n */\n @Prop() store?: SearchStore;\n\n /**\n * The result content to display.\n */\n @Prop() content?: ParentNode;\n\n /**\n * The result link to use when the result is clicked in a grid layout.\n *\n * @default - An `atomic-result-link` without any customization.\n */\n @Prop() linkContent: ParentNode = new DocumentFragment();\n\n /**\n * How results should be displayed.\n */\n @Prop() display: ItemDisplayLayout = 'list';\n\n /**\n * How large or small results should be.\n */\n @Prop() density: ItemDisplayDensity = 'normal';\n\n /**\n * The size of the visual section in result list items.\n *\n * This is overwritten by the image size defined in the result content, if it exists.\n */\n @Prop() imageSize: ItemDisplayImageSize = 'icon';\n\n /**\n * The classes to add to the result element.\n */\n @Prop() classes = '';\n\n /**\n * @internal\n */\n @Prop() loadingFlag?: string;\n\n /**\n * Internal function used by atomic-recs-list in advanced setups, which lets you bypass the standard HTML template system.\n * Particularly useful for Atomic React\n *\n * @internal\n */\n @Prop() renderingFunction: ItemRenderingFunction;\n\n private resultRootRef?: HTMLElement;\n private linkContainerRef?: HTMLElement;\n private executedRenderingFunctionOnce = false;\n\n @Listen('atomic/resolveResult')\n public resolveResult(event: ResultContextEvent<FoldedResult | Result>) {\n event.preventDefault();\n event.stopPropagation();\n event.detail(this.result);\n }\n\n @Listen('atomic/resolveInteractiveResult')\n public resolveInteractiveResult(event: InteractiveResultContextEvent) {\n event.preventDefault();\n event.stopPropagation();\n if (this.interactiveResult) {\n event.detail(this.interactiveResult);\n }\n }\n\n @Listen('atomic/resolveStopPropagation')\n public resolveStopPropagation(event: CustomEvent) {\n event.detail(this.stopPropagation);\n }\n\n @Listen('atomic/resolveResultDisplayConfig')\n public resolveResultDisplayConfig(event: ResultContextEvent<DisplayConfig>) {\n event.preventDefault();\n event.stopPropagation();\n event.detail({\n density: this.density,\n imageSize: this.imageSize!,\n });\n }\n\n @Listen('click')\n public handleClick(event: MouseEvent) {\n if (this.stopPropagation) {\n event.stopPropagation();\n }\n this.host\n .shadowRoot!.querySelector<HTMLAnchorElement>(\n '.link-container > atomic-result-link a:not([slot])'\n )\n ?.click();\n }\n\n public connectedCallback() {\n this.layout = new ItemLayout(\n this.content!.children,\n this.display,\n this.density,\n this.imageSize\n );\n }\n\n private get isCustomRenderFunctionMode() {\n return this.renderingFunction !== undefined;\n }\n\n private getContentHTML() {\n return parentNodeToString(this.content!);\n }\n\n private getLinkHTML() {\n return parentNodeToString(this.linkContent);\n }\n\n private shouldExecuteRenderFunction() {\n return (\n this.isCustomRenderFunctionMode &&\n this.resultRootRef &&\n !this.executedRenderingFunctionOnce\n );\n }\n\n public render() {\n if (this.isCustomRenderFunctionMode) {\n return (\n <Host class={resultComponentClass}>\n <div\n class=\"result-root\"\n ref={(ref) => (this.resultRootRef = ref)}\n ></div>\n <div\n class=\"link-container\"\n ref={(ref) => (this.linkContainerRef = ref)}\n ></div>\n </Host>\n );\n }\n return (\n <Host class={resultComponentClass}>\n <div\n class={`result-root ${this.layout\n .getClasses()\n .concat(this.classes)\n .join(' ')}`}\n innerHTML={this.getContentHTML()}\n ></div>\n <div class=\"link-container\" innerHTML={this.getLinkHTML()}></div>\n </Host>\n );\n }\n\n public componentDidLoad() {\n if (this.loadingFlag && this.store) {\n this.store.unsetLoadingFlag(this.loadingFlag);\n }\n this.host.classList.add('hydrated');\n }\n\n public componentDidRender() {\n if (this.shouldExecuteRenderFunction()) {\n const customRenderOutputAsString = this.renderingFunction!(\n this.result,\n this.resultRootRef!,\n this.linkContainerRef!\n );\n\n this.resultRootRef!.className += ` ${this.layout\n .getClasses(customRenderOutputAsString)\n .concat(this.classes)\n .join(' ')}`;\n\n this.executedRenderingFunctionOnce = true;\n }\n this.host.classList.add('hydrated');\n }\n}\n"],"version":3}
@@ -1,7 +1,7 @@
1
1
  import { r as registerInstance, s as setNonce, h, g as getElement } from './index-3f35faca.js';
2
2
  import { m as markParentAsReady } from './init-queue-fbe942c3.js';
3
3
  import { loadSearchConfigurationActions, loadQueryActions, EcommerceDefaultFieldsToInclude, loadFieldActions, buildSearchEngine, buildUrlManager, buildSearchStatus } from '@coveo/headless';
4
- import { g as getNextAnalyticsConfig, d as augmentAnalyticsConfigWithAtomicVersion, c as augmentAnalyticsConfigWithDocument, a as augmentWithExternalMiddleware, b as augmentAnalyticsWithAtomicVersion, C as CommonAtomicInterfaceHelper, i as instance, m as mismatchedInterfaceAndEnginePropError } from './analytics-config-ca9f2d02.js';
4
+ import { g as getNextAnalyticsConfig, d as augmentAnalyticsConfigWithAtomicVersion, c as augmentAnalyticsConfigWithDocument, a as augmentWithExternalMiddleware, b as augmentAnalyticsWithAtomicVersion, C as CommonAtomicInterfaceHelper, i as instance, m as mismatchedInterfaceAndEnginePropError } from './analytics-config-3299bb39.js';
5
5
  import { a as StorageItems, S as SafeStorage } from './local-storage-utils-410269e6.js';
6
6
  import { A as ArrayProp } from './props-utils-76e19fa7.js';
7
7
  import { D as DEFAULT_MOBILE_BREAKPOINT } from './replace-breakpoint-213367f8.js';
@@ -1,2 +1,2 @@
1
- export const headlessVersion = '3.29.2-pre.ee24f8bd85';
2
- export const atomicVersion = '3.33.3-pre.ee24f8bd85';
1
+ export const headlessVersion = '3.29.2-pre.f230cfebef';
2
+ export const atomicVersion = '3.33.3-pre.f230cfebef';
@@ -6,11 +6,14 @@ export type Range = {
6
6
  start: number;
7
7
  end: number;
8
8
  };
9
+ declare const AtomicCommerceFacetNumberInput_base: import("../../../mixins/mixin-common").Constructor<{
10
+ injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
11
+ }> & typeof LitElement;
9
12
  /**
10
13
  * Internal component made to be integrated in a NumericFacet.
11
14
  * @internal
12
15
  */
13
- export declare class AtomicCommerceFacetNumberInput extends LitElement implements InitializableComponent<CommerceBindings> {
16
+ export declare class AtomicCommerceFacetNumberInput extends AtomicCommerceFacetNumberInput_base implements InitializableComponent<CommerceBindings> {
14
17
  /**
15
18
  * The bindings object containing i18n and engine context for the component.
16
19
  */
@@ -47,3 +50,4 @@ declare global {
47
50
  'atomic-commerce-facet-number-input': AtomicCommerceFacetNumberInput;
48
51
  }
49
52
  }
53
+ export {};
@@ -8,11 +8,14 @@ import '../atomic-commerce-facet/atomic-commerce-facet';
8
8
  import type { CommerceBindings } from '../atomic-commerce-interface/atomic-commerce-interface';
9
9
  import '../atomic-commerce-numeric-facet/atomic-commerce-numeric-facet';
10
10
  import '../atomic-commerce-timeframe-facet/atomic-commerce-timeframe-facet';
11
+ declare const AtomicCommerceFacets_base: import("../../../mixins/mixin-common").Constructor<{
12
+ injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
13
+ }> & typeof LitElement;
11
14
  /**
12
15
  * The `atomic-commerce-facets` component automatically renders commerce facets based on the Commerce API response.
13
16
  * Unlike regular facets, which require explicit definition and request in the query, the `atomic-commerce-facets` component dynamically generates facets.
14
17
  */
15
- export declare class AtomicCommerceFacets extends LitElement implements InitializableComponent<CommerceBindings> {
18
+ export declare class AtomicCommerceFacets extends AtomicCommerceFacets_base implements InitializableComponent<CommerceBindings> {
16
19
  bindings: CommerceBindings;
17
20
  error: Error;
18
21
  facetGeneratorState: string[];
@@ -28,7 +31,6 @@ export declare class AtomicCommerceFacets extends LitElement implements Initiali
28
31
  collapseFacetsAfter: number;
29
32
  private isAppLoaded;
30
33
  initialize(): void;
31
- createRenderRoot(): this;
32
34
  private isProductListing;
33
35
  private get controllerBuilder();
34
36
  private validateProps;
@@ -42,3 +44,4 @@ declare global {
42
44
  'atomic-commerce-facets': AtomicCommerceFacets;
43
45
  }
44
46
  }
47
+ export {};
@@ -1,15 +1,19 @@
1
1
  import { LitElement } from 'lit';
2
- declare const AtomicCommerceLayout_base: typeof LitElement;
2
+ declare const AtomicCommerceLayout_base: import("../../../mixins/mixin-common").Constructor<{
3
+ injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
4
+ }> & typeof LitElement;
3
5
  /**
4
6
  * The `atomic-commerce-layout` helps organize elements in the commerce page.
5
7
  *
6
8
  * @cssprop --atomic-layout-max-search-box-input-width: The maximum width that the search box input will take.
7
9
  * @cssprop --atomic-layout-max-search-box-double-suggestions-width: The maximum width that the search box suggestions will take when displaying a double list.
8
10
  * @cssprop --atomic-layout-search-box-left-suggestions-width: The width of the left list when displaying a double list.
11
+ *
12
+ * @slot default - The default slot for the layout content.
9
13
  */
10
14
  export declare class AtomicCommerceLayout extends AtomicCommerceLayout_base {
11
15
  static styles: import("lit").CSSResult[];
12
- static dynamicStyles(instance: AtomicCommerceLayout): Promise<import("lit").CSSResult>;
16
+ private addStyles;
13
17
  error: Error;
14
18
  /**
15
19
  * The viewport width at which the layout goes from desktop to mobile.
@@ -2,6 +2,9 @@ import { LitElement } from 'lit';
2
2
  import type { InitializableComponent } from "../../../decorators/types";
3
3
  import type { CommerceBindings } from '../atomic-commerce-interface/atomic-commerce-interface';
4
4
  import '../atomic-commerce-text/atomic-commerce-text';
5
+ declare const AtomicProductChildren_base: import("../../../mixins/mixin-common").Constructor<{
6
+ injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
7
+ }> & typeof LitElement;
5
8
  /**
6
9
  * The `atomic-product-children` component renders a section that allows the user to select a nested product (e.g., a color variant of a given product).
7
10
  *
@@ -10,8 +13,7 @@ import '../atomic-commerce-text/atomic-commerce-text';
10
13
  * The component displays up to 5 child products before showing a "+N" button for additional variants.
11
14
  * This limit ensures consistent UI layout while preventing performance issues with large product variant collections.
12
15
  */
13
- export declare class AtomicProductChildren extends LitElement implements InitializableComponent<CommerceBindings> {
14
- createRenderRoot(): this;
16
+ export declare class AtomicProductChildren extends AtomicProductChildren_base implements InitializableComponent<CommerceBindings> {
15
17
  bindings: CommerceBindings;
16
18
  private productController;
17
19
  private childProducts;
@@ -57,3 +59,4 @@ declare global {
57
59
  'atomic-product-children': AtomicProductChildren;
58
60
  }
59
61
  }
62
+ export {};
@@ -3,10 +3,13 @@ import type { InitializableComponent } from "../../../decorators/types.js";
3
3
  import { type TruncateAfter } from '../../common/expandable-text/expandable-text.js';
4
4
  import type { CommerceBindings } from '../atomic-commerce-interface/atomic-commerce-interface.js';
5
5
  import '../atomic-product-text/atomic-product-text.js';
6
+ declare const AtomicProductDescription_base: import("../../../mixins/mixin-common.js").Constructor<{
7
+ injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
8
+ }> & typeof LitElement;
6
9
  /**
7
10
  * The `atomic-product-description` component renders the description of a product.
8
11
  */
9
- export declare class AtomicProductDescription extends LitElement implements InitializableComponent<CommerceBindings> {
12
+ export declare class AtomicProductDescription extends AtomicProductDescription_base implements InitializableComponent<CommerceBindings> {
10
13
  bindings: CommerceBindings;
11
14
  error: Error;
12
15
  private productController;
@@ -42,3 +45,4 @@ declare global {
42
45
  'atomic-product-description': AtomicProductDescription;
43
46
  }
44
47
  }
48
+ export {};
@@ -3,10 +3,13 @@ import type { InitializableComponent } from "../../../decorators/types";
3
3
  import { type TruncateAfter } from '../../common/expandable-text/expandable-text';
4
4
  import type { CommerceBindings } from '../atomic-commerce-interface/atomic-commerce-interface';
5
5
  import '../atomic-product-text/atomic-product-text.js';
6
+ declare const AtomicProductExcerpt_base: import("../../../mixins/mixin-common").Constructor<{
7
+ injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
8
+ }> & typeof LitElement;
6
9
  /**
7
10
  * The `atomic-product-excerpt` component renders the excerpt of a product.
8
11
  */
9
- export declare class AtomicProductExcerpt extends LitElement implements InitializableComponent<CommerceBindings> {
12
+ export declare class AtomicProductExcerpt extends AtomicProductExcerpt_base implements InitializableComponent<CommerceBindings> {
10
13
  bindings: CommerceBindings;
11
14
  error: Error;
12
15
  private productController;
@@ -36,3 +39,4 @@ declare global {
36
39
  'atomic-product-excerpt': AtomicProductExcerpt;
37
40
  }
38
41
  }
42
+ export {};
@@ -1,14 +1,16 @@
1
1
  import { LitElement } from 'lit';
2
2
  import type { InitializableComponent } from "../../../decorators/types";
3
3
  import type { CommerceBindings } from '../atomic-commerce-interface/atomic-commerce-interface';
4
+ declare const AtomicProductFieldCondition_base: import("../../../mixins/mixin-common").Constructor<{
5
+ injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
6
+ }> & typeof LitElement;
4
7
  /**
5
8
  * The `atomic-product-field-condition` component renders its children only when all of the conditions specified through its props are satisfied.
6
9
  * The condition properties can be based on any top-level product property of the `product` object, not restricted to fields (e.g., `ec_name`).
7
10
  *
8
11
  * @slot default - The content to render if the conditions are met.
9
12
  */
10
- export declare class AtomicProductFieldCondition extends LitElement implements InitializableComponent<CommerceBindings> {
11
- createRenderRoot(): this;
13
+ export declare class AtomicProductFieldCondition extends AtomicProductFieldCondition_base implements InitializableComponent<CommerceBindings> {
12
14
  bindings: CommerceBindings;
13
15
  error: Error;
14
16
  private productController;
@@ -39,3 +41,4 @@ declare global {
39
41
  'atomic-product-field-condition': AtomicProductFieldCondition;
40
42
  }
41
43
  }
44
+ export {};
@@ -4,7 +4,9 @@ import type { InitializableComponent } from "../../../decorators/types";
4
4
  import type { CommerceBindings } from '../atomic-commerce-interface/atomic-commerce-interface';
5
5
  import '../atomic-product-text/atomic-product-text';
6
6
  import { type LightDOMWithSlots } from "../../../mixins/slots-for-no-shadow-dom-mixin";
7
- declare const AtomicProductLink_base: typeof LitElement & import("../../../mixins/mixin-common").Constructor<LightDOMWithSlots>;
7
+ declare const AtomicProductLink_base: import("../../../mixins/mixin-common").Constructor<{
8
+ injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
9
+ }> & typeof LitElement & import("../../../mixins/mixin-common").Constructor<LightDOMWithSlots>;
8
10
  /**
9
11
  * The `atomic-product-link` component automatically transforms a product `ec_name` into a clickable link that points to the original item.
10
12
  *
@@ -1,13 +1,15 @@
1
1
  import { LitElement } from 'lit';
2
2
  import type { InitializableComponent } from "../../../decorators/types.js";
3
3
  import type { CommerceBindings } from '../atomic-commerce-interface/atomic-commerce-interface.js';
4
+ declare const AtomicProductNumericFieldValue_base: import("../../../mixins/mixin-common.js").Constructor<{
5
+ injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
6
+ }> & typeof LitElement;
4
7
  /**
5
8
  * The `atomic-product-numeric-field-value` component renders the value of a number product field.
6
9
  *
7
10
  * The number can be formatted by adding a `atomic-format-number`, `atomic-format-currency` or `atomic-format-unit` component into this component.
8
11
  */
9
- export declare class AtomicProductNumericFieldValue extends LitElement implements InitializableComponent<CommerceBindings> {
10
- createRenderRoot(): this;
12
+ export declare class AtomicProductNumericFieldValue extends AtomicProductNumericFieldValue_base implements InitializableComponent<CommerceBindings> {
11
13
  bindings: CommerceBindings;
12
14
  error: Error;
13
15
  private productController;
@@ -28,3 +30,4 @@ declare global {
28
30
  'atomic-product-numeric-field-value': AtomicProductNumericFieldValue;
29
31
  }
30
32
  }
33
+ export {};
@@ -2,10 +2,13 @@ import { type Context, type ContextState } from '@coveo/headless/commerce';
2
2
  import { LitElement } from 'lit';
3
3
  import type { InitializableComponent } from "../../../decorators/types.js";
4
4
  import type { CommerceBindings } from '../atomic-commerce-interface/atomic-commerce-interface.js';
5
+ declare const AtomicProductPrice_base: import("../../../mixins/mixin-common.js").Constructor<{
6
+ injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
7
+ }> & typeof LitElement;
5
8
  /**
6
9
  * The `atomic-product-price` component renders the price of a product.
7
10
  */
8
- export declare class AtomicProductPrice extends LitElement implements InitializableComponent<CommerceBindings> {
11
+ export declare class AtomicProductPrice extends AtomicProductPrice_base implements InitializableComponent<CommerceBindings> {
9
12
  static styles: import("lit").CSSResult;
10
13
  bindings: CommerceBindings;
11
14
  error: Error;
@@ -24,3 +27,4 @@ declare global {
24
27
  'atomic-product-price': AtomicProductPrice;
25
28
  }
26
29
  }
30
+ export {};
@@ -1,6 +1,9 @@
1
1
  import { LitElement } from 'lit';
2
2
  import type { InitializableComponent } from "../../../decorators/types.js";
3
3
  import type { CommerceBindings } from '../atomic-commerce-interface/atomic-commerce-interface.js';
4
+ declare const AtomicProductRating_base: import("../../../mixins/mixin-common").Constructor<{
5
+ injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
6
+ }> & typeof LitElement;
4
7
  /**
5
8
  * The `atomic-product-rating` element renders a star rating.
6
9
  *
@@ -11,7 +14,7 @@ import type { CommerceBindings } from '../atomic-commerce-interface/atomic-comme
11
14
  * @cssprop --atomic-rating-icon-inactive-color - Color of the icon when inactive.
12
15
  * @cssprop --atomic-rating-icon-outline - Outline color of the icon.
13
16
  */
14
- export declare class AtomicProductRating extends LitElement implements InitializableComponent<CommerceBindings> {
17
+ export declare class AtomicProductRating extends AtomicProductRating_base implements InitializableComponent<CommerceBindings> {
15
18
  bindings: CommerceBindings;
16
19
  error: Error;
17
20
  private productController;
@@ -56,3 +59,4 @@ declare global {
56
59
  'atomic-product-rating': AtomicProductRating;
57
60
  }
58
61
  }
62
+ export {};
@@ -2,10 +2,13 @@ import { LitElement } from 'lit';
2
2
  import type { InitializableComponent } from "../../../decorators/types";
3
3
  import type { CommerceBindings } from '../atomic-commerce-interface/atomic-commerce-interface';
4
4
  import '../atomic-commerce-text/atomic-commerce-text';
5
+ declare const AtomicProductText_base: import("../../../mixins/mixin-common").Constructor<{
6
+ injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
7
+ }> & typeof LitElement;
5
8
  /**
6
9
  * The `atomic-product-text` component renders the value of a string field for a given product.
7
10
  */
8
- export declare class AtomicProductText extends LitElement implements InitializableComponent<CommerceBindings> {
11
+ export declare class AtomicProductText extends AtomicProductText_base implements InitializableComponent<CommerceBindings> {
9
12
  /**
10
13
  * The string field whose value the component should render.
11
14
  * The component will look for the specified field in the product's properties first, and then in the product's `additionalFields` property.
@@ -30,7 +33,6 @@ export declare class AtomicProductText extends LitElement implements Initializab
30
33
  private productController;
31
34
  bindings: CommerceBindings;
32
35
  error: Error;
33
- protected createRenderRoot(): this;
34
36
  initialize(): void;
35
37
  private get shouldRenderHighlights();
36
38
  private isFieldSupportedForHighlighting;
@@ -45,3 +47,4 @@ declare global {
45
47
  'atomic-product-text': AtomicProductText;
46
48
  }
47
49
  }
50
+ export {};
@@ -1,11 +1,13 @@
1
1
  import { LitElement } from 'lit';
2
+ declare const AtomicAriaLive_base: import("../../../mixins/mixin-common").Constructor<{
3
+ injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
4
+ }> & typeof LitElement;
2
5
  /**
3
6
  * The `atomic-aria-live` component notifies screen readers of changes in the search and commerce interfaces.
4
7
  *
5
8
  * @event atomic/accessibility/findAriaLive - Dispatches an event to find the `atomic-aria-live` element.
6
9
  */
7
- export declare class AtomicAriaLive extends LitElement {
8
- createRenderRoot(): this;
10
+ export declare class AtomicAriaLive extends AtomicAriaLive_base {
9
11
  private regions;
10
12
  private messagesQueue;
11
13
  private ariaLiveId;
@@ -36,3 +38,4 @@ declare global {
36
38
  'atomic-aria-live': AtomicAriaLive;
37
39
  }
38
40
  }
41
+ export {};
@@ -3,6 +3,9 @@ import { LitElement } from 'lit';
3
3
  import type { LitElementWithError } from "../../../decorators/types";
4
4
  import type { AnyBindings } from '../interface/bindings';
5
5
  export type FacetDateInputEventDetails = Omit<DateRangeRequest, 'state'>;
6
+ declare const AtomicFacetDateInput_base: import("../../../mixins/mixin-common").Constructor<{
7
+ injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
8
+ }> & typeof LitElement;
6
9
  /**
7
10
  * Internal component made to be integrated in a TimeframeFacet.
8
11
  *
@@ -11,7 +14,7 @@ export type FacetDateInputEventDetails = Omit<DateRangeRequest, 'state'>;
11
14
  *
12
15
  * @internal
13
16
  */
14
- export declare class AtomicFacetDateInput extends LitElement implements LitElementWithError {
17
+ export declare class AtomicFacetDateInput extends AtomicFacetDateInput_base implements LitElementWithError {
15
18
  private start?;
16
19
  private end?;
17
20
  private startRef;
@@ -25,7 +28,6 @@ export declare class AtomicFacetDateInput extends LitElement implements LitEleme
25
28
  error: Error;
26
29
  bindings: AnyBindings;
27
30
  connectedCallback(): void;
28
- createRenderRoot(): this;
29
31
  /**
30
32
  * Validates that this component is only used within an atomic-commerce-timeframe-facet.
31
33
  * This is an internal component and should not be used directly by consumers.
@@ -41,3 +43,4 @@ declare global {
41
43
  'atomic-facet-date-input': AtomicFacetDateInput;
42
44
  }
43
45
  }
46
+ export {};
@@ -1,7 +1,9 @@
1
1
  import { LitElement } from 'lit';
2
2
  import type { InitializableComponent } from "../../../decorators/types";
3
3
  import type { AnyBindings } from '../interface/bindings';
4
- declare const AtomicIcon_base: typeof LitElement;
4
+ declare const AtomicIcon_base: import("../../../mixins/mixin-common").Constructor<{
5
+ injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
6
+ }> & typeof LitElement;
5
7
  /**
6
8
  * The `atomic-icon` component displays an SVG icon with a 1:1 aspect ratio.
7
9
  *
@@ -1,11 +1,14 @@
1
1
  import { LitElement } from 'lit';
2
2
  import type { Section } from './sections';
3
+ declare const AtomicLayoutSection_base: import("../../../mixins/mixin-common").Constructor<{
4
+ injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
5
+ }> & typeof LitElement;
3
6
  /**
4
7
  * The `atomic-layout-section` lets you identify various sections for the related `atomic-search-layout` or `atomic-commerce-layout` component.
5
8
  *
6
9
  * @slot default - The default slot where you can add child components to the section.
7
10
  */
8
- export declare class AtomicLayoutSection extends LitElement {
11
+ export declare class AtomicLayoutSection extends AtomicLayoutSection_base {
9
12
  /**
10
13
  * The name of the layout section.
11
14
  */
@@ -20,10 +23,10 @@ export declare class AtomicLayoutSection extends LitElement {
20
23
  * E.g. '300px'
21
24
  */
22
25
  maxWidth?: string;
23
- createRenderRoot(): this;
24
26
  }
25
27
  declare global {
26
28
  interface HTMLElementTagNameMap {
27
29
  'atomic-layout-section': AtomicLayoutSection;
28
30
  }
29
31
  }
32
+ export {};
@@ -45,7 +45,7 @@ export interface NonceBindings {
45
45
  }
46
46
  /**
47
47
  * @deprecated
48
- * If used to inject style on a component with no shadow DOM, use `@injectStylesForNoShadowDOM` decorator on Lit component.
48
+ * If used to inject style on a component with no shadow DOM, use the `LightDomMixin` mixin on Lit component.
49
49
  * If used to inject a styled layout, consider using `CommerceLayoutMixin` instead.
50
50
  */
51
51
  export interface AdoptedStylesBindings {
@@ -0,0 +1,2 @@
1
+ declare const styles: import("lit").CSSResult;
2
+ export default styles;
@@ -0,0 +1,2 @@
1
+ declare const styles: import("lit").CSSResult;
2
+ export default styles;
@@ -1,5 +1,7 @@
1
1
  import { LitElement } from 'lit';
2
- declare const AtomicSearchLayout_base: typeof LitElement;
2
+ declare const AtomicSearchLayout_base: import("../../../mixins/mixin-common").Constructor<{
3
+ injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
4
+ }> & typeof LitElement;
3
5
  /**
4
6
  * The `atomic-search-layout` helps organize elements in the page.
5
7
  *
@@ -9,7 +11,7 @@ declare const AtomicSearchLayout_base: typeof LitElement;
9
11
  */
10
12
  export declare class AtomicSearchLayout extends AtomicSearchLayout_base {
11
13
  static styles: import("lit").CSSResult[];
12
- static dynamicStyles(instance: AtomicSearchLayout): Promise<import("lit").CSSResult>;
14
+ private addStyles;
13
15
  error: Error;
14
16
  /**
15
17
  * The viewport width at which the layout goes from desktop to mobile.
@@ -0,0 +1,25 @@
1
+ import type { CSSResultGroup, LitElement } from 'lit';
2
+ import type { Constructor } from './mixin-common.js';
3
+ declare class LightDomMixinInterface {
4
+ injectStyles(dynamicStyles?: CSSResultGroup): Promise<void>;
5
+ }
6
+ /**
7
+ * Mixin that provides dynamic styles injection functionality for components that do not use Shadow DOM.
8
+ *
9
+ * Usage:
10
+ * class MyComponent extends LightDomMixin(LitElement) {
11
+ * static styles = css`div { color: blue; }`;
12
+ * render() { return html`<div>content</div>`; }
13
+ * }
14
+ *
15
+ * Features:
16
+ * - Automatically injects static styles from the component's `styles` property in `connectedCallback`
17
+ * - Exposes an `injectStyles` method that can be called manually with dynamic styles
18
+ * - Prevents duplicate style injection by checking for existing style sheets
19
+ * - Overrides `createRenderRoot` to return `this` (disabling Shadow DOM)
20
+ *
21
+ * @param superClass - The base class to extend (must be a LitElement constructor)
22
+ * @returns A class that extends the superClass with dynamic styles injection functionality
23
+ */
24
+ export declare const LightDomMixin: <T extends Constructor<LitElement>>(superClass: T) => Constructor<LightDomMixinInterface> & T;
25
+ export {};
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2025-08-28T16:41:06",
2
+ "timestamp": "2025-08-29T18:54:49",
3
3
  "compiler": {
4
4
  "name": "@stencil/core",
5
5
  "version": "4.20.0",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@coveo/atomic",
3
3
  "type": "module",
4
- "version": "3.33.3-pre.ee24f8bd85",
4
+ "version": "3.33.3-pre.f230cfebef",
5
5
  "description": "A web-component library for building modern UIs interfacing with the Coveo platform",
6
6
  "homepage": "https://docs.coveo.com/en/atomic/latest/",
7
7
  "repository": {
@@ -48,7 +48,6 @@
48
48
  ],
49
49
  "scripts": {
50
50
  "clean": "rimraf -rf dist/* dist-storybook/* www/* docs/* playwright-report/*",
51
- "build": "npm run build:storybook",
52
51
  "build:storybook": "storybook build -o dist-storybook",
53
52
  "build:cem": "cem analyze",
54
53
  "build:stencil-lit": "node --max_old_space_size=6144 ../../node_modules/@stencil/core/bin/stencil build --tsConfig tsconfig.stencil.json && node ./scripts/stencil-proxy.mjs && node ./scripts/build.mjs --config=tsconfig.lit.json && esbuild src/autoloader/index.ts --format=esm --outfile=dist/atomic/autoloader/index.esm.js && esbuild src/autoloader/index.ts --format=cjs --outfile=dist/atomic/autoloader/index.cjs.js && rollup -c rollup.config.js && rimraf ./dist/atomic/loader/package.json && tsc --noEmit --esModuleInterop --skipLibCheck ./dist/types/components.d.ts",
@@ -82,7 +81,7 @@
82
81
  },
83
82
  "dependencies": {
84
83
  "@coveo/bueno": "1.1.0",
85
- "@coveo/headless": "3.29.2-pre.ee24f8bd85",
84
+ "@coveo/headless": "3.29.2-pre.f230cfebef",
86
85
  "@lit/context": "1.1.6",
87
86
  "@open-wc/lit-helpers": "0.7.0",
88
87
  "@popperjs/core": "2.11.8",
@@ -165,7 +164,7 @@
165
164
  },
166
165
  "peerDependencies": {
167
166
  "@coveo/bueno": "1.1.0",
168
- "@coveo/headless": "3.29.2-pre.ee24f8bd85",
167
+ "@coveo/headless": "3.29.2-pre.f230cfebef",
169
168
  "typescript": ">=5.0.0"
170
169
  },
171
170
  "peerDependenciesMeta": {
@@ -1,4 +0,0 @@
1
- import { css } from 'lit';
2
- const styles = css`/*! tailwindcss v4.1.12 | MIT License | https://tailwindcss.com */
3
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid}}}.list-wrapper.placeholder{& .result-component,& table.list-root{display:none}}.list-wrapper:not(.placeholder){& atomic-result-placeholder,& atomic-result-table-placeholder{display:none}}.list-root.loading{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes pulse{50%{opacity:.5}}.list-wrapper.display-table{display:grid;overflow-x:auto}.list-root.display-table{border-spacing:0;border-collapse:separate;border-spacing:0;border-collapse:separate;border-spacing:0;border-collapse:separate;min-width:100%;& th,& td{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);font-family:var(--atomic-font-family);font-size:var(--atomic-text-sm);line-height:var(--tw-leading,calc(1.25/.875));white-space:nowrap;line-height:1rem;&:not(:first-child){border-left:none}&:first-child{min-width:19rem}}& th{background-color:var(--atomic-neutral-light);color:#000;padding:1rem var(--padding);text-align:left;border-bottom:none;font-weight:700;&:first-child{border-top-left-radius:var(--atomic-border-radius-xl)}&:last-child{border-top-right-radius:var(--atomic-border-radius-xl)}}& th,& td{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);font-family:var(--atomic-font-family);font-size:var(--atomic-text-sm);line-height:var(--tw-leading,calc(1.25/.875));white-space:nowrap;line-height:1rem;&:not(:first-child){border-left:none}&:first-child{min-width:19rem}}& th{background-color:var(--atomic-neutral-light);color:#000;padding:1rem var(--padding);text-align:left;border-bottom:none;font-weight:700;&:first-child{border-top-left-radius:var(--atomic-border-radius-xl)}&:last-child{border-top-right-radius:var(--atomic-border-radius-xl)}}& th,& td{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);font-family:var(--atomic-font-family);font-size:var(--atomic-text-sm);line-height:var(--tw-leading,calc(1.25/.875));white-space:nowrap;line-height:1rem;&:not(:first-child){border-left:none}&:first-child{min-width:19rem}}& th{background-color:var(--atomic-neutral-light);color:#000;padding:1rem var(--padding);text-align:left;border-bottom:none;font-weight:700;&:first-child{border-top-left-radius:var(--atomic-border-radius-xl)}&:last-child{border-top-right-radius:var(--atomic-border-radius-xl)}}& td{color:var(--atomic-neutral-dark);vertical-align:top;padding:var(--padding);border-top:none}&.density-comfortable{--padding:2rem}&.density-normal{--padding:1.5rem}&.density-compact{--padding:1rem}}[part~=divider]{margin-bottom:1rem;&:not(:last-child){border-bottom-color:var(--atomic-neutral);padding-bottom:1rem}}.list-root.display-list{flex-direction:column;display:flex;& .result-component,& atomic-result-placeholder{width:auto}@media (width>=1024px){&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}}@media not all and (width>=1024px){&.image-large{grid-template-columns:minmax(auto,35rem);justify-content:space-evenly;display:grid;&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}}&.image-small,&.image-icon,&.image-none{grid-row-gap:1rem;& [part~=outline]{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);border-radius:1rem;padding:1rem}& atomic-result-placeholder{border-color:#0000}}}}:host{& [part~=outline][part~=result-list-grid-clickable-container]{border:1px solid #0000;border-radius:1rem;padding:1rem;transition:all .12s ease-out;position:relative;&:hover{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);box-shadow:0px 10px 25px var(--atomic-neutral);cursor:pointer}}& [part~=outline][part~=result-list-grid-clickable-container]{border:1px solid #0000;border-radius:1rem;padding:1rem;transition:all .12s ease-out;position:relative;&:hover{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);box-shadow:0px 10px 25px var(--atomic-neutral);cursor:pointer}}& [part~=outline][part~=result-list-grid-clickable-container]{border:1px solid #0000;border-radius:1rem;padding:1rem;transition:all .12s ease-out;position:relative;&:hover{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);box-shadow:0px 10px 25px var(--atomic-neutral);cursor:pointer}}& [part=result-list-grid-clickable]:focus-visible{border-style:var(--tw-border-style);border-width:2px;border-color:var(--atomic-primary);color:var(--atomic-primary);cursor:pointer;text-align:center;border-radius:2px;text-decoration:underline;display:inline-block;position:absolute}& [part=result-list-grid-clickable]:not(:focus){clip:rect(1px,1px,1px,1px);padding:0;position:absolute;overflow:hidden}& .list-root.display-grid{justify-content:space-evenly;display:grid;& .result-component{box-sizing:border-box;height:100%}}& .list-root.display-grid{justify-content:space-evenly;display:grid;& .result-component{box-sizing:border-box;height:100%}}& .list-wrapper{word-break:break-word}& .list-root.display-grid{justify-content:space-evenly;display:grid;& .result-component{box-sizing:border-box;height:100%}}& .list-root.display-grid{@media (width>=1024px){&{grid-template-columns:repeat(auto-fit,minmax(17rem,1fr))}&.density-comfortable{grid-row-gap:4rem;grid-column-gap:1.5rem}&.density-normal,&.density-compact{grid-row-gap:3rem;grid-column-gap:1.5rem}&.image-large{grid-template-columns:repeat(auto-fill,minmax(19rem,1fr))}&.image-small{@media not all and (width>=1024px){&{grid-template-columns:repeat(3,1fr)}}@media (width>=1024px){&{grid-template-columns:repeat(3,1fr)}}@media (width>=1280px){&{grid-template-columns:repeat(4,1fr)}}}}}& .list-root.display-grid{@media (width>=1024px){&{grid-template-columns:repeat(auto-fit,minmax(17rem,1fr))}&.density-comfortable{grid-row-gap:4rem;grid-column-gap:1.5rem}&.density-normal,&.density-compact{grid-row-gap:3rem;grid-column-gap:1.5rem}&.image-large{grid-template-columns:repeat(auto-fill,minmax(19rem,1fr))}&.image-small{@media not all and (width>=1024px){&{grid-template-columns:repeat(3,1fr)}}@media (width>=1024px){&{grid-template-columns:repeat(3,1fr)}}@media (width>=1280px){&{grid-template-columns:repeat(4,1fr)}}}}}& .list-root.display-grid{@media (width>=1024px){&{grid-template-columns:repeat(auto-fit,minmax(17rem,1fr))}&.density-comfortable{grid-row-gap:4rem;grid-column-gap:1.5rem}&.density-normal,&.density-compact{grid-row-gap:3rem;grid-column-gap:1.5rem}&.image-large{grid-template-columns:repeat(auto-fill,minmax(19rem,1fr))}&.image-small{@media not all and (width>=1024px){&{grid-template-columns:repeat(3,1fr)}}@media (width>=1024px){&{grid-template-columns:repeat(3,1fr)}}@media (width>=1280px){&{grid-template-columns:repeat(4,1fr)}}}}}& .list-root.display-grid{@media not all and (width>=1024px){&.image-large{@media not all and (width>=768px){&{grid-template-columns:minmax(auto,35rem)}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}}@media (width>=768px){&{grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-template-columns:1fr 1fr}& [part~=outline]{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);border-radius:1rem;padding:1rem}& atomic-result-placeholder{border-color:#0000}}}&.image-small,&.image-icon,&.image-none{grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;& [part~=outline]{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);border-radius:1rem;padding:1rem}& atomic-result-placeholder{border-color:#0000}@media not all and (width>=640px){&{grid-template-columns:minmax(0,1fr)}}@media (width>=768px){&{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (width>=1024px){&{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}}}}}& .list-root.display-grid{@media not all and (width>=1024px){&.image-large{@media not all and (width>=768px){&{grid-template-columns:minmax(auto,35rem)}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}}@media (width>=768px){&{grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-template-columns:1fr 1fr}& [part~=outline]{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);border-radius:1rem;padding:1rem}& atomic-result-placeholder{border-color:#0000}}}&.image-small,&.image-icon,&.image-none{grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;& [part~=outline]{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);border-radius:1rem;padding:1rem}& atomic-result-placeholder{border-color:#0000}@media not all and (width>=640px){&{grid-template-columns:minmax(0,1fr)}}@media (width>=768px){&{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (width>=1024px){&{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}}}}}& .list-root.display-grid{@media not all and (width>=1024px){&.image-large{@media not all and (width>=768px){&{grid-template-columns:minmax(auto,35rem)}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}}@media (width>=768px){&{grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-template-columns:1fr 1fr}& [part~=outline]{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);border-radius:1rem;padding:1rem}& atomic-result-placeholder{border-color:#0000}}}&.image-small,&.image-icon,&.image-none{grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;& [part~=outline]{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);border-radius:1rem;padding:1rem}& atomic-result-placeholder{border-color:#0000}@media not all and (width>=640px){&{grid-template-columns:minmax(0,1fr)}}@media (width>=768px){&{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (width>=1024px){&{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}}}}}}:host{& .result-link{color:var(--atomic-on-background);&:hover,&:focus-visible{color:var(--atomic-primary);text-decoration:underline}&:focus{outline:none}&:visited{color:var(--atomic-visited)}}& .result-grid{grid-template-columns:repeat(5,minmax(0,1fr));justify-items:center;& a{justify-content:center}}& .result-list{flex-direction:column;display:flex;& .result-item{flex-wrap:wrap;width:100%;max-width:600px;display:flex;& .result-details{align-content:center}}}}@media (width>=1024px){:host .result-grid{display:grid}}@media not all and (width>=1024px){:host .result-grid{flex-direction:column;display:flex}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}`;
4
- export default styles;
@@ -1,4 +0,0 @@
1
- import { css } from 'lit';
2
- const styles = css`/*! tailwindcss v4.1.12 | MIT License | https://tailwindcss.com */
3
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-font-weight:initial}}}.list-wrapper.placeholder{& .result-component,& table.list-root{display:none}}.list-wrapper:not(.placeholder){& atomic-result-placeholder,& atomic-result-table-placeholder{display:none}}.list-root.loading{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes pulse{50%{opacity:.5}}:host{& [part~=outline][part~=result-list-grid-clickable-container]{border:1px solid #0000;border-radius:1rem;padding:1rem;transition:all .12s ease-out;position:relative;&:hover{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);box-shadow:0px 10px 25px var(--atomic-neutral);cursor:pointer}}& [part=result-list-grid-clickable]:focus-visible{border-style:var(--tw-border-style);border-width:2px;border-color:var(--atomic-primary);color:var(--atomic-primary);cursor:pointer;text-align:center;border-radius:2px;text-decoration:underline;display:inline-block;position:absolute}& [part=result-list-grid-clickable]:not(:focus){clip:rect(1px,1px,1px,1px);padding:0;position:absolute;overflow:hidden}& .list-wrapper{word-break:break-word}& .list-root.display-grid{justify-content:space-evenly;display:grid;& .result-component{box-sizing:border-box;height:100%}}& .list-root{grid-column-gap:.5rem;grid-row-gap:.5rem;grid-template-columns:repeat(var(--atomic-recs-number-of-columns,1),minmax(0,1fr));grid-template-rows:repeat(var(--atomic-recs-number-of-rows,1),minmax(0,1fr));& [part~=outline]{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);border-radius:1rem;padding:1rem}& atomic-result-placeholder{border-color:#0000}}& [part=label]{font-family:var(--atomic-font-family);font-size:var(--atomic-text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height,calc(2/1.5)));--tw-font-weight:var(--atomic-font-bold);font-weight:var(--atomic-font-bold)}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}`;
4
- export default styles;