@coveo/atomic 3.50.0 → 3.52.0

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 (465) hide show
  1. package/custom-elements.json +15081 -13083
  2. package/dist/atomic/_atomic.esm.js +1 -1
  3. package/dist/atomic/atomic.esm.js.map +1 -1
  4. package/dist/atomic/components/_index.d.ts +0 -18
  5. package/dist/atomic/components/_index.js +97 -31
  6. package/dist/atomic/components/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.js +2 -2
  7. package/dist/atomic/components/components/common/atomic-facet-date-input/atomic-facet-date-input.js +1 -0
  8. package/dist/atomic/components/components/common/facets/timeframe-facet-common.js +1 -0
  9. package/dist/atomic/components/components/common/generated-answer/atomic-answer-content/atomic-answer-content.js +166 -0
  10. package/dist/atomic/components/components/common/generated-answer/atomic-generated-answer-thread-item/atomic-generated-answer-thread-item.js +155 -0
  11. package/dist/atomic/components/components/common/generated-answer/atomic-generated-answers-thread/atomic-generated-answers-thread.js +165 -0
  12. package/dist/atomic/components/components/common/generated-answer/render-feedback-and-copy-buttons.js +4 -3
  13. package/dist/atomic/components/components/common/generated-answer/render-follow-up-input.js +66 -0
  14. package/dist/atomic/components/components/common/generated-answer/styles/generated-answer.tw.css.js +1 -1
  15. package/dist/atomic/components/components/insight/atomic-insight-generated-answer/atomic-insight-generated-answer.js +444 -0
  16. package/dist/atomic/components/components/insight/atomic-insight-generated-answer/atomic-insight-generated-answer.tw.css.js +2 -0
  17. package/dist/atomic/components/components/insight/atomic-insight-result-action/atomic-insight-result-action.js +169 -0
  18. package/dist/atomic/components/components/insight/atomic-insight-result-attach-to-case-action/atomic-insight-result-attach-to-case-action.js +122 -0
  19. package/dist/atomic/components/components/insight/atomic-insight-result-children/atomic-insight-result-children.js +3 -2
  20. package/dist/atomic/components/components/insight/atomic-insight-result-children-template/atomic-insight-result-children-template.js +79 -0
  21. package/dist/atomic/components/components/insight/atomic-insight-timeframe-facet/atomic-insight-timeframe-facet.js +267 -0
  22. package/dist/atomic/components/components/insight/atomic-insight-user-actions-session/atomic-insight-user-actions-session.js +1 -1
  23. package/dist/atomic/components/components/insight/atomic-insight-user-actions-timeline/atomic-insight-user-actions-timeline.js +1 -1
  24. package/dist/atomic/components/components/insight/index.js +5 -0
  25. package/dist/atomic/components/components/insight/lazy-index.js +5 -0
  26. package/dist/atomic/components/components/ipx/atomic-ipx-button/atomic-ipx-button.js +1 -1
  27. package/dist/atomic/components/components/ipx/atomic-ipx-recs-list/atomic-ipx-recs-list.js +483 -0
  28. package/dist/atomic/components/components/ipx/atomic-ipx-refine-modal/atomic-ipx-refine-modal.js +202 -0
  29. package/dist/atomic/components/components/ipx/atomic-ipx-refine-toggle/atomic-ipx-refine-toggle.js +123 -0
  30. package/dist/atomic/components/components/ipx/index.js +3 -0
  31. package/dist/atomic/components/components/ipx/lazy-index.js +3 -0
  32. package/dist/atomic/components/components/recommendations/atomic-recs-result/atomic-recs-result.js +1 -0
  33. package/dist/atomic/components/components/search/atomic-external/atomic-external.js +1 -1
  34. package/dist/atomic/components/components/search/atomic-generated-answer/atomic-generated-answer.js +103 -10
  35. package/dist/atomic/components/components/search/atomic-refine-modal/atomic-refine-modal.js +2 -1
  36. package/dist/atomic/components/components/search/atomic-search-box/atomic-search-box.js +2 -2
  37. package/dist/atomic/components/decorators/bindings.js +1 -1
  38. package/dist/atomic/components/global/environment.js +1 -1
  39. package/dist/atomic/components/index.js.map +1 -1
  40. package/dist/atomic/components/mixins/bindings-mixin.js +1 -1
  41. package/dist/atomic/components/utils/custom-element-tags.js +11 -1
  42. package/dist/atomic/components/utils/tailwind.global.tw.css.js +2 -2
  43. package/dist/atomic/index.esm.js +1 -1
  44. package/dist/atomic/index.esm.js.map +1 -1
  45. package/dist/atomic/lang/cs.json +1 -1
  46. package/dist/atomic/lang/da.json +1 -1
  47. package/dist/atomic/lang/de.json +1 -1
  48. package/dist/atomic/lang/dev.json +1 -1
  49. package/dist/atomic/lang/el.json +1 -1
  50. package/dist/atomic/lang/en.json +1 -1
  51. package/dist/atomic/lang/es.json +1 -1
  52. package/dist/atomic/lang/fi.json +1 -1
  53. package/dist/atomic/lang/fr.json +1 -1
  54. package/dist/atomic/lang/hu.json +1 -1
  55. package/dist/atomic/lang/id.json +1 -1
  56. package/dist/atomic/lang/it.json +1 -1
  57. package/dist/atomic/lang/ja.json +1 -1
  58. package/dist/atomic/lang/ko.json +1 -1
  59. package/dist/atomic/lang/nl.json +1 -1
  60. package/dist/atomic/lang/no.json +1 -1
  61. package/dist/atomic/lang/pl.json +1 -1
  62. package/dist/atomic/lang/pt-BR.json +1 -1
  63. package/dist/atomic/lang/pt.json +1 -1
  64. package/dist/atomic/lang/ru.json +1 -1
  65. package/dist/atomic/lang/sv.json +1 -1
  66. package/dist/atomic/lang/th.json +1 -1
  67. package/dist/atomic/lang/tr.json +1 -1
  68. package/dist/atomic/lang/zh-CN.json +1 -1
  69. package/dist/atomic/lang/zh-TW.json +1 -1
  70. package/dist/atomic/lang/zh.json +1 -1
  71. package/dist/atomic/p-998f7983.js +3 -0
  72. package/dist/atomic/p-998f7983.js.map +1 -0
  73. package/dist/cjs/_index.cjs.js +110 -28
  74. package/dist/cjs/_loader.cjs.js +3 -4
  75. package/dist/cjs/app-globals-18f43c37.js +506 -0
  76. package/dist/cjs/app-globals-18f43c37.js.map +1 -0
  77. package/dist/cjs/atomic.cjs.js +4 -5
  78. package/dist/cjs/atomic.cjs.js.map +1 -1
  79. package/dist/cjs/index.cjs.js.map +1 -1
  80. package/dist/cjs/loader.cjs.js.map +1 -1
  81. package/dist/cjs/version.cjs.js +2 -2
  82. package/dist/esm/_index.js +97 -23
  83. package/dist/esm/_loader.js +3 -4
  84. package/dist/esm/app-globals-c5b073da.js +481 -0
  85. package/dist/esm/app-globals-c5b073da.js.map +1 -0
  86. package/dist/esm/atomic.js +3 -4
  87. package/dist/esm/atomic.js.map +1 -1
  88. package/dist/esm/index.js.map +1 -1
  89. package/dist/esm/loader.js.map +1 -1
  90. package/dist/esm/version.js +2 -2
  91. package/dist/types/components/common/context/bindings-context.d.ts +1 -1
  92. package/dist/types/components/common/facets/timeframe-facet-common.d.ts +1 -0
  93. package/dist/types/components/common/generated-answer/atomic-answer-content/atomic-answer-content.d.ts +50 -0
  94. package/dist/types/components/common/generated-answer/{generated-answer-thread-item/generated-answer-thread-item.d.ts → atomic-generated-answer-thread-item/atomic-generated-answer-thread-item.d.ts} +3 -3
  95. package/dist/types/components/common/generated-answer/atomic-generated-answers-thread/atomic-generated-answers-thread.d.ts +42 -0
  96. package/dist/types/components/common/generated-answer/render-feedback-and-copy-buttons.d.ts +8 -2
  97. package/dist/types/components/common/item-list/table-layout.d.ts +1 -1
  98. package/dist/types/components/insight/atomic-insight-generated-answer/atomic-insight-generated-answer.d.ts +54 -35
  99. package/dist/types/components/insight/atomic-insight-generated-answer/atomic-insight-generated-answer.tw.css.d.ts +2 -0
  100. package/dist/types/components/insight/atomic-insight-result-action/atomic-insight-result-action.d.ts +33 -18
  101. package/dist/types/components/insight/atomic-insight-result-attach-to-case-action/atomic-insight-result-attach-to-case-action.d.ts +25 -20
  102. package/dist/types/components/insight/atomic-insight-result-children/atomic-insight-result-children.d.ts +1 -0
  103. package/dist/types/components/insight/atomic-insight-result-children-template/atomic-insight-result-children-template.d.ts +62 -0
  104. package/dist/types/components/insight/atomic-insight-timeframe-facet/atomic-insight-timeframe-facet.d.ts +47 -28
  105. package/dist/types/components/insight/index.d.ts +5 -0
  106. package/dist/types/components/ipx/atomic-ipx-button/atomic-ipx-button.d.ts +1 -1
  107. package/dist/types/components/ipx/atomic-ipx-recs-list/{atomic-recs-list/atomic-ipx-recs-list.d.ts → atomic-ipx-recs-list.d.ts} +43 -21
  108. package/dist/types/components/ipx/atomic-ipx-refine-modal/atomic-ipx-refine-modal.d.ts +62 -15
  109. package/dist/types/components/ipx/atomic-ipx-refine-toggle/atomic-ipx-refine-toggle.d.ts +26 -11
  110. package/dist/types/components/ipx/index.d.ts +3 -0
  111. package/dist/types/components/recommendations/atomic-recs-result/atomic-recs-result.d.ts +1 -0
  112. package/dist/types/components/search/atomic-external/atomic-external.d.ts +1 -1
  113. package/dist/types/components/search/atomic-generated-answer/atomic-generated-answer.d.ts +11 -2
  114. package/dist/types/components/search/atomic-refine-modal/atomic-refine-modal.d.ts +4 -3
  115. package/dist/types/components.d.ts +0 -547
  116. package/dist/types/decorators/bindings.d.ts +1 -1
  117. package/dist/types/index.d.ts +2 -3
  118. package/dist/types/utils/accessibility-utils.d.ts +2 -2
  119. package/dist/types/utils/init-queue.d.ts +1 -1
  120. package/docs/atomic-docs.json +2 -68
  121. package/package.json +4 -8
  122. package/dist/atomic/components/_commonjsHelpers.js +0 -5
  123. package/dist/atomic/components/_commonjsHelpers.js.map +0 -1
  124. package/dist/atomic/components/arrow-top-rounded.js +0 -7
  125. package/dist/atomic/components/arrow-top-rounded.js.map +0 -1
  126. package/dist/atomic/components/atomic-insight-generated-answer.d.ts +0 -11
  127. package/dist/atomic/components/atomic-insight-generated-answer.js +0 -3264
  128. package/dist/atomic/components/atomic-insight-generated-answer.js.map +0 -1
  129. package/dist/atomic/components/atomic-insight-result-action.d.ts +0 -11
  130. package/dist/atomic/components/atomic-insight-result-action.js +0 -155
  131. package/dist/atomic/components/atomic-insight-result-action.js.map +0 -1
  132. package/dist/atomic/components/atomic-insight-result-attach-to-case-action.d.ts +0 -11
  133. package/dist/atomic/components/atomic-insight-result-attach-to-case-action.js +0 -102
  134. package/dist/atomic/components/atomic-insight-result-attach-to-case-action.js.map +0 -1
  135. package/dist/atomic/components/atomic-insight-result-children-template.d.ts +0 -11
  136. package/dist/atomic/components/atomic-insight-result-children-template.js +0 -243
  137. package/dist/atomic/components/atomic-insight-result-children-template.js.map +0 -1
  138. package/dist/atomic/components/atomic-insight-timeframe-facet.d.ts +0 -11
  139. package/dist/atomic/components/atomic-insight-timeframe-facet.js +0 -726
  140. package/dist/atomic/components/atomic-insight-timeframe-facet.js.map +0 -1
  141. package/dist/atomic/components/atomic-ipx-recs-list.d.ts +0 -11
  142. package/dist/atomic/components/atomic-ipx-recs-list.js +0 -631
  143. package/dist/atomic/components/atomic-ipx-recs-list.js.map +0 -1
  144. package/dist/atomic/components/atomic-ipx-refine-modal.d.ts +0 -11
  145. package/dist/atomic/components/atomic-ipx-refine-modal.js +0 -8
  146. package/dist/atomic/components/atomic-ipx-refine-modal.js.map +0 -1
  147. package/dist/atomic/components/atomic-ipx-refine-modal2.js +0 -162
  148. package/dist/atomic/components/atomic-ipx-refine-modal2.js.map +0 -1
  149. package/dist/atomic/components/atomic-ipx-refine-toggle.d.ts +0 -11
  150. package/dist/atomic/components/atomic-ipx-refine-toggle.js +0 -121
  151. package/dist/atomic/components/atomic-ipx-refine-toggle.js.map +0 -1
  152. package/dist/atomic/components/atomic-stencil-facet-date-input.d.ts +0 -11
  153. package/dist/atomic/components/atomic-stencil-facet-date-input.js +0 -107
  154. package/dist/atomic/components/atomic-stencil-facet-date-input.js.map +0 -1
  155. package/dist/atomic/components/attach.js +0 -115
  156. package/dist/atomic/components/attach.js.map +0 -1
  157. package/dist/atomic/components/components/common/layout/display-options.js +0 -28
  158. package/dist/atomic/components/date-utils.js +0 -26
  159. package/dist/atomic/components/date-utils.js.map +0 -1
  160. package/dist/atomic/components/initialization-utils.js +0 -226
  161. package/dist/atomic/components/initialization-utils.js.map +0 -1
  162. package/dist/atomic/components/popover-type.js +0 -12
  163. package/dist/atomic/components/popover-type.js.map +0 -1
  164. package/dist/atomic/components/props-utils.js +0 -57
  165. package/dist/atomic/components/props-utils.js.map +0 -1
  166. package/dist/atomic/components/stencil-button.js +0 -148
  167. package/dist/atomic/components/stencil-button.js.map +0 -1
  168. package/dist/atomic/components/stencil-heading.js +0 -169
  169. package/dist/atomic/components/stencil-heading.js.map +0 -1
  170. package/dist/atomic/components/stencil-iconButton.js +0 -16
  171. package/dist/atomic/components/stencil-iconButton.js.map +0 -1
  172. package/dist/atomic/components/store.js +0 -13
  173. package/dist/atomic/components/store.js.map +0 -1
  174. package/dist/atomic/components/utils.js +0 -1421
  175. package/dist/atomic/components/utils.js.map +0 -1
  176. package/dist/atomic/p-0698ccf1.entry.js +0 -2
  177. package/dist/atomic/p-0698ccf1.entry.js.map +0 -1
  178. package/dist/atomic/p-0f896350.entry.js +0 -2
  179. package/dist/atomic/p-0f896350.entry.js.map +0 -1
  180. package/dist/atomic/p-1580513b.js +0 -2
  181. package/dist/atomic/p-1580513b.js.map +0 -1
  182. package/dist/atomic/p-4117289b.entry.js +0 -2
  183. package/dist/atomic/p-4117289b.entry.js.map +0 -1
  184. package/dist/atomic/p-4573c419.js +0 -2
  185. package/dist/atomic/p-4573c419.js.map +0 -1
  186. package/dist/atomic/p-4a32511f.js +0 -2
  187. package/dist/atomic/p-4a32511f.js.map +0 -1
  188. package/dist/atomic/p-578d761c.js +0 -2
  189. package/dist/atomic/p-578d761c.js.map +0 -1
  190. package/dist/atomic/p-677f9c40.js +0 -2
  191. package/dist/atomic/p-677f9c40.js.map +0 -1
  192. package/dist/atomic/p-70cc18a1.js +0 -2
  193. package/dist/atomic/p-70cc18a1.js.map +0 -1
  194. package/dist/atomic/p-74210c4b.entry.js +0 -9
  195. package/dist/atomic/p-74210c4b.entry.js.map +0 -1
  196. package/dist/atomic/p-81d6e743.js +0 -2
  197. package/dist/atomic/p-81d6e743.js.map +0 -1
  198. package/dist/atomic/p-8b039c2e.entry.js +0 -2
  199. package/dist/atomic/p-8b039c2e.entry.js.map +0 -1
  200. package/dist/atomic/p-991e840f.entry.js +0 -2
  201. package/dist/atomic/p-991e840f.entry.js.map +0 -1
  202. package/dist/atomic/p-9c5ec170.js +0 -2
  203. package/dist/atomic/p-9c5ec170.js.map +0 -1
  204. package/dist/atomic/p-9dfe5ab1.js +0 -2
  205. package/dist/atomic/p-9dfe5ab1.js.map +0 -1
  206. package/dist/atomic/p-9f774145.entry.js +0 -2
  207. package/dist/atomic/p-9f774145.entry.js.map +0 -1
  208. package/dist/atomic/p-a33748a9.js +0 -2
  209. package/dist/atomic/p-a33748a9.js.map +0 -1
  210. package/dist/atomic/p-b09433bb.js +0 -3
  211. package/dist/atomic/p-b09433bb.js.map +0 -1
  212. package/dist/atomic/p-b4cfedf1.js +0 -2
  213. package/dist/atomic/p-b4cfedf1.js.map +0 -1
  214. package/dist/atomic/p-c81f1edb.entry.js +0 -2
  215. package/dist/atomic/p-c81f1edb.entry.js.map +0 -1
  216. package/dist/atomic/p-d75a4630.js +0 -2
  217. package/dist/atomic/p-d75a4630.js.map +0 -1
  218. package/dist/atomic/p-dac60354.js +0 -2
  219. package/dist/atomic/p-dac60354.js.map +0 -1
  220. package/dist/atomic/p-e1255160.js +0 -2
  221. package/dist/atomic/p-e1255160.js.map +0 -1
  222. package/dist/atomic/p-ec1c5f46.js +0 -3
  223. package/dist/atomic/p-ec1c5f46.js.map +0 -1
  224. package/dist/atomic/p-eea2c139.entry.js +0 -2
  225. package/dist/atomic/p-eea2c139.entry.js.map +0 -1
  226. package/dist/atomic/p-f321aab0.js +0 -2
  227. package/dist/atomic/p-f321aab0.js.map +0 -1
  228. package/dist/cjs/_commonjsHelpers-68cdf74f.js +0 -7
  229. package/dist/cjs/_commonjsHelpers-68cdf74f.js.map +0 -1
  230. package/dist/cjs/app-globals-3a1e7e63.js +0 -7
  231. package/dist/cjs/app-globals-3a1e7e63.js.map +0 -1
  232. package/dist/cjs/arrow-top-rounded-885250ea.js +0 -10
  233. package/dist/cjs/arrow-top-rounded-885250ea.js.map +0 -1
  234. package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js +0 -3238
  235. package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js.map +0 -1
  236. package/dist/cjs/atomic-insight-result-action.cjs.entry.js +0 -140
  237. package/dist/cjs/atomic-insight-result-action.cjs.entry.js.map +0 -1
  238. package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js +0 -90
  239. package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js.map +0 -1
  240. package/dist/cjs/atomic-insight-result-children-template.cjs.entry.js +0 -223
  241. package/dist/cjs/atomic-insight-result-children-template.cjs.entry.js.map +0 -1
  242. package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js +0 -700
  243. package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js.map +0 -1
  244. package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js +0 -600
  245. package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js.map +0 -1
  246. package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js +0 -143
  247. package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js.map +0 -1
  248. package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js +0 -99
  249. package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js.map +0 -1
  250. package/dist/cjs/atomic-stencil-facet-date-input.cjs.entry.js +0 -86
  251. package/dist/cjs/atomic-stencil-facet-date-input.cjs.entry.js.map +0 -1
  252. package/dist/cjs/attach-19283bec.js +0 -10
  253. package/dist/cjs/attach-19283bec.js.map +0 -1
  254. package/dist/cjs/date-utils-aae1d713.js +0 -28
  255. package/dist/cjs/date-utils-aae1d713.js.map +0 -1
  256. package/dist/cjs/event-utils-9bfcf3c5.js +0 -27
  257. package/dist/cjs/event-utils-9bfcf3c5.js.map +0 -1
  258. package/dist/cjs/index-3532822e.js +0 -1448
  259. package/dist/cjs/index-3532822e.js.map +0 -1
  260. package/dist/cjs/initialization-lit-stencil-common-utils-f19f74c0.js +0 -95
  261. package/dist/cjs/initialization-lit-stencil-common-utils-f19f74c0.js.map +0 -1
  262. package/dist/cjs/initialization-utils-51a423fe.js +0 -148
  263. package/dist/cjs/initialization-utils-51a423fe.js.map +0 -1
  264. package/dist/cjs/popover-type-22f285e1.js +0 -16
  265. package/dist/cjs/popover-type-22f285e1.js.map +0 -1
  266. package/dist/cjs/props-utils-bc5feb04.js +0 -59
  267. package/dist/cjs/props-utils-bc5feb04.js.map +0 -1
  268. package/dist/cjs/stencil-button-f39da03e.js +0 -130
  269. package/dist/cjs/stencil-button-f39da03e.js.map +0 -1
  270. package/dist/cjs/stencil-heading-ecec9ab3.js +0 -174
  271. package/dist/cjs/stencil-heading-ecec9ab3.js.map +0 -1
  272. package/dist/cjs/stencil-iconButton-f8b9fda0.js +0 -18
  273. package/dist/cjs/stencil-iconButton-f8b9fda0.js.map +0 -1
  274. package/dist/cjs/stencil-result-template-decorators-1f099c15.js +0 -114
  275. package/dist/cjs/stencil-result-template-decorators-1f099c15.js.map +0 -1
  276. package/dist/cjs/store-70fff5e6.js +0 -16
  277. package/dist/cjs/store-70fff5e6.js.map +0 -1
  278. package/dist/cjs/utils-e845f262.js +0 -1431
  279. package/dist/cjs/utils-e845f262.js.map +0 -1
  280. package/dist/esm/_commonjsHelpers-1c8beb5f.js +0 -5
  281. package/dist/esm/_commonjsHelpers-1c8beb5f.js.map +0 -1
  282. package/dist/esm/app-globals-0f993ce5.js +0 -5
  283. package/dist/esm/app-globals-0f993ce5.js.map +0 -1
  284. package/dist/esm/arrow-top-rounded-745b84a6.js +0 -7
  285. package/dist/esm/arrow-top-rounded-745b84a6.js.map +0 -1
  286. package/dist/esm/atomic-insight-generated-answer.entry.js +0 -3234
  287. package/dist/esm/atomic-insight-generated-answer.entry.js.map +0 -1
  288. package/dist/esm/atomic-insight-result-action.entry.js +0 -136
  289. package/dist/esm/atomic-insight-result-action.entry.js.map +0 -1
  290. package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js +0 -86
  291. package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js.map +0 -1
  292. package/dist/esm/atomic-insight-result-children-template.entry.js +0 -219
  293. package/dist/esm/atomic-insight-result-children-template.entry.js.map +0 -1
  294. package/dist/esm/atomic-insight-timeframe-facet.entry.js +0 -696
  295. package/dist/esm/atomic-insight-timeframe-facet.entry.js.map +0 -1
  296. package/dist/esm/atomic-ipx-recs-list.entry.js +0 -596
  297. package/dist/esm/atomic-ipx-recs-list.entry.js.map +0 -1
  298. package/dist/esm/atomic-ipx-refine-modal.entry.js +0 -139
  299. package/dist/esm/atomic-ipx-refine-modal.entry.js.map +0 -1
  300. package/dist/esm/atomic-ipx-refine-toggle.entry.js +0 -95
  301. package/dist/esm/atomic-ipx-refine-toggle.entry.js.map +0 -1
  302. package/dist/esm/atomic-stencil-facet-date-input.entry.js +0 -82
  303. package/dist/esm/atomic-stencil-facet-date-input.entry.js.map +0 -1
  304. package/dist/esm/attach-81bb8872.js +0 -8
  305. package/dist/esm/attach-81bb8872.js.map +0 -1
  306. package/dist/esm/date-utils-3b955e79.js +0 -26
  307. package/dist/esm/date-utils-3b955e79.js.map +0 -1
  308. package/dist/esm/event-utils-8de63ec3.js +0 -24
  309. package/dist/esm/event-utils-8de63ec3.js.map +0 -1
  310. package/dist/esm/index-3eb0b28e.js +0 -1417
  311. package/dist/esm/index-3eb0b28e.js.map +0 -1
  312. package/dist/esm/initialization-lit-stencil-common-utils-e7755434.js +0 -88
  313. package/dist/esm/initialization-lit-stencil-common-utils-e7755434.js.map +0 -1
  314. package/dist/esm/initialization-utils-82d28c63.js +0 -144
  315. package/dist/esm/initialization-utils-82d28c63.js.map +0 -1
  316. package/dist/esm/popover-type-c85677ef.js +0 -12
  317. package/dist/esm/popover-type-c85677ef.js.map +0 -1
  318. package/dist/esm/props-utils-d343133b.js +0 -57
  319. package/dist/esm/props-utils-d343133b.js.map +0 -1
  320. package/dist/esm/stencil-button-c25899df.js +0 -128
  321. package/dist/esm/stencil-button-c25899df.js.map +0 -1
  322. package/dist/esm/stencil-heading-98a5f23f.js +0 -169
  323. package/dist/esm/stencil-heading-98a5f23f.js.map +0 -1
  324. package/dist/esm/stencil-iconButton-ed5804d3.js +0 -16
  325. package/dist/esm/stencil-iconButton-ed5804d3.js.map +0 -1
  326. package/dist/esm/stencil-result-template-decorators-9cbe1e1c.js +0 -110
  327. package/dist/esm/stencil-result-template-decorators-9cbe1e1c.js.map +0 -1
  328. package/dist/esm/store-50d170c8.js +0 -13
  329. package/dist/esm/store-50d170c8.js.map +0 -1
  330. package/dist/esm/utils-b5bab369.js +0 -1421
  331. package/dist/esm/utils-b5bab369.js.map +0 -1
  332. package/dist/types/components/commerce/product-template-component-utils/context/stencil-product-template-decorators.d.ts +0 -14
  333. package/dist/types/components/common/atomic-rating/stencil-rating.d.ts +0 -18
  334. package/dist/types/components/common/atomic-result-placeholder/stencil-placeholders.d.ts +0 -20
  335. package/dist/types/components/common/breadbox/stencil-breadcrumb-button.d.ts +0 -15
  336. package/dist/types/components/common/breadbox/stencil-breadcrumb-clear-all.d.ts +0 -13
  337. package/dist/types/components/common/breadbox/stencil-breadcrumb-container.d.ts +0 -11
  338. package/dist/types/components/common/breadbox/stencil-breadcrumb-content.d.ts +0 -14
  339. package/dist/types/components/common/breadbox/stencil-breadcrumb-show-less.d.ts +0 -13
  340. package/dist/types/components/common/breadbox/stencil-breadcrumb-show-more.d.ts +0 -14
  341. package/dist/types/components/common/facets/category-facet/stencil-all-categories-button.d.ts +0 -13
  342. package/dist/types/components/common/facets/category-facet/stencil-child-value-link.d.ts +0 -9
  343. package/dist/types/components/common/facets/category-facet/stencil-children-as-tree-container.d.ts +0 -9
  344. package/dist/types/components/common/facets/category-facet/stencil-parent-as-tree-container.d.ts +0 -10
  345. package/dist/types/components/common/facets/category-facet/stencil-parent-button.d.ts +0 -16
  346. package/dist/types/components/common/facets/category-facet/stencil-parent-value-link.d.ts +0 -9
  347. package/dist/types/components/common/facets/category-facet/stencil-search-results-container.d.ts +0 -5
  348. package/dist/types/components/common/facets/category-facet/stencil-search-value.d.ts +0 -19
  349. package/dist/types/components/common/facets/category-facet/stencil-value-as-tree-container.d.ts +0 -5
  350. package/dist/types/components/common/facets/category-facet/stencil-value-link.d.ts +0 -20
  351. package/dist/types/components/common/facets/facet-container/stencil-facet-container.d.ts +0 -5
  352. package/dist/types/components/common/facets/facet-header/stencil-facet-header.d.ts +0 -17
  353. package/dist/types/components/common/facets/facet-placeholder/stencil-facet-placeholder.d.ts +0 -10
  354. package/dist/types/components/common/facets/facet-search/stencil-facet-search-input-guard.d.ts +0 -11
  355. package/dist/types/components/common/facets/facet-search/stencil-facet-search-input.d.ts +0 -14
  356. package/dist/types/components/common/facets/facet-search/stencil-facet-search-matches.d.ts +0 -14
  357. package/dist/types/components/common/facets/facet-search/stencil-facet-search-value.d.ts +0 -6
  358. package/dist/types/components/common/facets/facet-show-more-less/stencil-facet-show-more-less.d.ts +0 -17
  359. package/dist/types/components/common/facets/facet-value/stencil-facet-value.d.ts +0 -22
  360. package/dist/types/components/common/facets/facet-value-box/stencil-facet-value-box.d.ts +0 -6
  361. package/dist/types/components/common/facets/facet-value-checkbox/stencil-facet-value-checkbox.d.ts +0 -11
  362. package/dist/types/components/common/facets/facet-value-exclude/stencil-facet-value-exclude.d.ts +0 -10
  363. package/dist/types/components/common/facets/facet-value-label-highlight/stencil-facet-value-label-highlight.d.ts +0 -12
  364. package/dist/types/components/common/facets/facet-value-link/stencil-facet-value-link.d.ts +0 -10
  365. package/dist/types/components/common/facets/facet-values-group/stencil-facet-values-group.d.ts +0 -12
  366. package/dist/types/components/common/facets/numeric-facet/stencil-value-link.d.ts +0 -12
  367. package/dist/types/components/common/facets/numeric-facet/stencil-values-container.d.ts +0 -11
  368. package/dist/types/components/common/facets/stencil-facet-common.d.ts +0 -43
  369. package/dist/types/components/common/facets/stencil-facet-date-input/stencil-facet-date-input.d.ts +0 -33
  370. package/dist/types/components/common/facets/stencil-facet-guard.d.ts +0 -12
  371. package/dist/types/components/common/facets/stencil-timeframe-facet-common.d.ts +0 -72
  372. package/dist/types/components/common/generated-answer/generated-answer-common.d.ts +0 -58
  373. package/dist/types/components/common/generated-answer/generated-content/stencil-generated-markdown-content.d.ts +0 -10
  374. package/dist/types/components/common/generated-answer/generated-content/stencil-generated-text-content.d.ts +0 -10
  375. package/dist/types/components/common/generated-answer/stencil-copy-button.d.ts +0 -12
  376. package/dist/types/components/common/generated-answer/stencil-feedback-button.d.ts +0 -13
  377. package/dist/types/components/common/generated-answer/stencil-generated-content-container.d.ts +0 -11
  378. package/dist/types/components/common/generated-answer/stencil-retry-prompt.d.ts +0 -11
  379. package/dist/types/components/common/generated-answer/stencil-show-button.d.ts +0 -12
  380. package/dist/types/components/common/generated-answer/stencil-source-citations.d.ts +0 -10
  381. package/dist/types/components/common/interface/interface-common-stencil.d.ts +0 -34
  382. package/dist/types/components/common/interface/stencil-i18n.d.ts +0 -11
  383. package/dist/types/components/common/item-link/stencil-item-link.d.ts +0 -30
  384. package/dist/types/components/common/item-list/item-list-decorators.d.ts +0 -17
  385. package/dist/types/components/common/item-list/stencil-display-grid.d.ts +0 -17
  386. package/dist/types/components/common/item-list/stencil-display-wrapper.d.ts +0 -11
  387. package/dist/types/components/common/item-list/stencil-item-decorators.d.ts +0 -41
  388. package/dist/types/components/common/item-list/stencil-item-display-guard.d.ts +0 -10
  389. package/dist/types/components/common/item-list/stencil-item-list-common.d.ts +0 -31
  390. package/dist/types/components/common/item-list/stencil-item-list-guard.d.ts +0 -13
  391. package/dist/types/components/common/item-text/stencil-item-text-fallback.d.ts +0 -14
  392. package/dist/types/components/common/item-text/stencil-item-text-highlighted.d.ts +0 -13
  393. package/dist/types/components/common/load-more/guard.d.ts +0 -10
  394. package/dist/types/components/common/load-more/stencil-button.d.ts +0 -13
  395. package/dist/types/components/common/load-more/stencil-container.d.ts +0 -5
  396. package/dist/types/components/common/load-more/stencil-progress-bar.d.ts +0 -10
  397. package/dist/types/components/common/load-more/stencil-summary.d.ts +0 -13
  398. package/dist/types/components/common/no-items/stencil-container.d.ts +0 -5
  399. package/dist/types/components/common/no-items/stencil-guard.d.ts +0 -11
  400. package/dist/types/components/common/no-items/stencil-magnifying-glass.d.ts +0 -5
  401. package/dist/types/components/common/no-items/stencil-no-items.d.ts +0 -12
  402. package/dist/types/components/common/no-items/stencil-tips.d.ts +0 -10
  403. package/dist/types/components/common/pager/stencil-pager-buttons.d.ts +0 -33
  404. package/dist/types/components/common/pager/stencil-pager-navigation.d.ts +0 -10
  405. package/dist/types/components/common/product-template/stencil-product-template-common.d.ts +0 -26
  406. package/dist/types/components/common/query-correction/stencil-auto-correction.d.ts +0 -12
  407. package/dist/types/components/common/query-correction/stencil-correction.d.ts +0 -12
  408. package/dist/types/components/common/query-correction/stencil-guard.d.ts +0 -9
  409. package/dist/types/components/common/query-correction/stencil-trigger-correction.d.ts +0 -13
  410. package/dist/types/components/common/query-error/stencil-container.d.ts +0 -5
  411. package/dist/types/components/common/query-error/stencil-description.d.ts +0 -13
  412. package/dist/types/components/common/query-error/stencil-details.d.ts +0 -10
  413. package/dist/types/components/common/query-error/stencil-guard.d.ts +0 -9
  414. package/dist/types/components/common/query-error/stencil-icon.d.ts +0 -9
  415. package/dist/types/components/common/query-error/stencil-link.d.ts +0 -11
  416. package/dist/types/components/common/query-error/stencil-show-more.d.ts +0 -13
  417. package/dist/types/components/common/query-error/stencil-title.d.ts +0 -12
  418. package/dist/types/components/common/query-summary/stencil-container.d.ts +0 -9
  419. package/dist/types/components/common/query-summary/stencil-guard.d.ts +0 -11
  420. package/dist/types/components/common/query-summary/stencil-utils.d.ts +0 -23
  421. package/dist/types/components/common/refine-modal/stencil-body.d.ts +0 -7
  422. package/dist/types/components/common/refine-modal/stencil-button.d.ts +0 -12
  423. package/dist/types/components/common/refine-modal/stencil-filters.d.ts +0 -20
  424. package/dist/types/components/common/refine-modal/stencil-guard.d.ts +0 -11
  425. package/dist/types/components/common/refine-modal/stencil-modal.d.ts +0 -18
  426. package/dist/types/components/common/refine-modal/stencil-sort.d.ts +0 -11
  427. package/dist/types/components/common/result-children/stencil-children-wrapper.d.ts +0 -9
  428. package/dist/types/components/common/result-children/stencil-collection-guard.d.ts +0 -16
  429. package/dist/types/components/common/result-children/stencil-guard.d.ts +0 -11
  430. package/dist/types/components/common/result-children/stencil-show-hide-button.d.ts +0 -14
  431. package/dist/types/components/common/result-templates/stencil-result-template-common.d.ts +0 -24
  432. package/dist/types/components/common/search-box/stencil-search-box-wrapper.d.ts +0 -10
  433. package/dist/types/components/common/search-box/stencil-search-text-area.d.ts +0 -22
  434. package/dist/types/components/common/search-box/stencil-submit-button.d.ts +0 -12
  435. package/dist/types/components/common/search-box/stencil-text-area-clear-button.d.ts +0 -12
  436. package/dist/types/components/common/smart-snippets/atomic-smart-snippet/stencil-smart-snippet-common.d.ts +0 -31
  437. package/dist/types/components/common/smart-snippets/atomic-smart-snippet-feedback-modal/stencil-smart-snippet-feedback-modal-common.d.ts +0 -57
  438. package/dist/types/components/common/smart-snippets/atomic-smart-snippet-suggestions/stencil-smart-snippet-suggestions-common.d.ts +0 -43
  439. package/dist/types/components/common/smart-snippets/stencil-smart-snippet-feedback-banner.d.ts +0 -18
  440. package/dist/types/components/common/stencil-button-style.d.ts +0 -11
  441. package/dist/types/components/common/stencil-button.d.ts +0 -30
  442. package/dist/types/components/common/stencil-carousel.d.ts +0 -15
  443. package/dist/types/components/common/stencil-checkbox.d.ts +0 -22
  444. package/dist/types/components/common/stencil-fieldset-group.d.ts +0 -9
  445. package/dist/types/components/common/stencil-heading.d.ts +0 -7
  446. package/dist/types/components/common/stencil-hidden.d.ts +0 -5
  447. package/dist/types/components/common/stencil-iconButton.d.ts +0 -13
  448. package/dist/types/components/common/stencil-radio-button.d.ts +0 -12
  449. package/dist/types/components/common/stencil-switch.d.ts +0 -15
  450. package/dist/types/components/common/stencil-triStateCheckbox.d.ts +0 -11
  451. package/dist/types/components/common/suggestions/stencil-instant-item.d.ts +0 -19
  452. package/dist/types/components/common/suggestions/stencil-query-suggestions.d.ts +0 -32
  453. package/dist/types/components/common/suggestions/stencil-suggestion-manager.d.ts +0 -96
  454. package/dist/types/components/insight/result-templates/atomic-insight-result-children-template/atomic-insight-result-children-template.d.ts +0 -50
  455. package/dist/types/components/search/facets/facet-segmented-value/stencil-facet-segmented-value.d.ts +0 -6
  456. package/dist/types/components/search/result-template-component-utils/context/stencil-result-template-decorators.d.ts +0 -32
  457. package/dist/types/components/search/result-template-components/quickview-iframe/stencil-quickview-iframe.d.ts +0 -14
  458. package/dist/types/utils/__mocks__/stencil-resource-url.d.ts +0 -1
  459. package/dist/types/utils/initialization-utils.d.ts +0 -70
  460. package/dist/types/utils/jsx-utils.d.ts +0 -6
  461. package/dist/types/utils/stencil-accessibility-utils.d.ts +0 -43
  462. package/dist/types/utils/stencil-asset-path-utils.d.ts +0 -1
  463. package/dist/types/utils/stencil-resource-url.d.ts +0 -1
  464. /package/dist/atomic/components/utils/{initialization-lit-stencil-common-utils.js → initialization-common-utils.js} +0 -0
  465. /package/dist/types/utils/{initialization-lit-stencil-common-utils.d.ts → initialization-common-utils.d.ts} +0 -0
@@ -1,144 +0,0 @@
1
- import { h, H as Host, g as getElement, f as forceUpdate } from './index-3eb0b28e.js';
2
- import { i as initializeEventName, c as closest, M as MissingInterfaceParentError, e as enqueueOrDispatchInitializationEvent, a as initializableElements } from './initialization-lit-stencil-common-utils-e7755434.js';
3
- import { b as buildCustomEvent } from './event-utils-8de63ec3.js';
4
-
5
- /**
6
- * @deprecated This component is no longer needed. For Lit components, render `nothing` instead.
7
- */
8
- const Hidden = () => (h(Host, { class: "atomic-hidden" }));
9
-
10
- const renderedAttribute = 'data-atomic-rendered';
11
- const loadedAttribute = 'data-atomic-loaded';
12
- /**
13
- * A [StencilJS property decorator](https://stenciljs.com/) to be used on a property named `bindings`.
14
- * This will automatically fetch the `Bindings` from the parent `atomic-search-interface` or `atomic-external` components.
15
- *
16
- * Once a component is bound, the `initialize` method is called.
17
- * In the event of an initialization error, the `error` property will be set and an `atomic-component-error` will be rendered.
18
- *
19
- * In order for a component using this decorator to render properly, it should have an internal state bound to one of the properties from `bindings`.
20
- * This is possible by using the `BindStateToController` decorator.
21
- *
22
- * @example
23
- * @InitializeBindings() public bindings!: Bindings;
24
- *
25
- * For more information and examples, view the "Utilities" section of the readme.
26
- * @deprecated To be used for Stencil components. For Lit components, use `BindingController` Reactive Controller from @/mixins/bindings-mixin.ts.
27
- */
28
- function InitializeBindings({ forceUpdate: forceUpdate$1, } = {}) {
29
- return (component, bindingsProperty) => {
30
- const { componentWillLoad, render, componentDidRender, componentDidLoad, disconnectedCallback, } = component;
31
- let unsubscribeLanguage = () => { };
32
- if (bindingsProperty !== 'bindings') {
33
- return console.error(`The InitializeBindings decorator should be used on a property called "bindings", and not "${bindingsProperty}"`, component);
34
- }
35
- component.componentWillLoad = function () {
36
- const element = getElement(this);
37
- element.setAttribute(renderedAttribute, 'false');
38
- element.setAttribute(loadedAttribute, 'false');
39
- const event = buildCustomEvent(initializeEventName, (bindings) => {
40
- this.bindings = bindings;
41
- const updateLanguage = () => forceUpdate(this);
42
- this.bindings.i18n.on('languageChanged', updateLanguage);
43
- unsubscribeLanguage = () => this.bindings.i18n.off('languageChanged', updateLanguage);
44
- try {
45
- // When no controller is initialized, updating a property with a State() decorator, there will be no re-render.
46
- // In this case, we have to manually trigger it.
47
- if (this.initialize) {
48
- this.initialize();
49
- if (forceUpdate$1) {
50
- forceUpdate(this);
51
- }
52
- }
53
- else {
54
- forceUpdate(this);
55
- }
56
- }
57
- catch (e) {
58
- this.error = e;
59
- }
60
- });
61
- const parent = closest(element, initializableElements.join(', '));
62
- if (!parent) {
63
- this.error = new MissingInterfaceParentError(element.nodeName.toLowerCase());
64
- return;
65
- }
66
- enqueueOrDispatchInitializationEvent(parent, event, element);
67
- return componentWillLoad && componentWillLoad.call(this);
68
- };
69
- component.render = function () {
70
- if (this.error) {
71
- return (h("atomic-component-error", { element: getElement(this), error: this.error }));
72
- }
73
- if (!this.bindings) {
74
- return h(Hidden, null);
75
- }
76
- getElement(this).setAttribute(renderedAttribute, 'true');
77
- return render && render.call(this);
78
- };
79
- component.disconnectedCallback = function () {
80
- const element = getElement(this);
81
- element.setAttribute(renderedAttribute, 'false');
82
- element.setAttribute(loadedAttribute, 'false');
83
- unsubscribeLanguage();
84
- disconnectedCallback && disconnectedCallback.call(this);
85
- };
86
- component.componentDidRender = function () {
87
- const element = getElement(this);
88
- if (element.getAttribute(renderedAttribute) === 'false') {
89
- return;
90
- }
91
- componentDidRender && componentDidRender.call(this);
92
- if (element.getAttribute(loadedAttribute) === 'false') {
93
- element.setAttribute(loadedAttribute, 'true');
94
- componentDidLoad && componentDidLoad.call(this);
95
- }
96
- };
97
- component.componentDidLoad = function () { };
98
- };
99
- }
100
- /**
101
- * A [StencilJS property decorator](https://stenciljs.com/) is used together with the [State decorator](https://stenciljs.com/docs/state#state-decorator).
102
- * This allows the Stencil component state property to automatically get updates from a [Coveo Headless controller](https://docs.coveo.com/en/headless/latest/usage/#use-headless-controllers).
103
- *
104
- * @example
105
- * @BindStateToController('pager') @State() private pagerState!: PagerState;
106
- *
107
- * For more information and examples, view the "Utilities" section of the readme.
108
- *
109
- * @param controllerProperty The controller property to subscribe to. The controller has to be created inside of the `initialize` method.
110
- * @param options The configurable `BindStateToController` options.
111
- *
112
- * @deprecated To be used for Stencil components. For Lit components. use `bindStateToController` from '../decorators/bind-state.ts'
113
- */
114
- function BindStateToController(controllerProperty, options) {
115
- return (component, stateProperty) => {
116
- const { disconnectedCallback, initialize } = component;
117
- component.initialize = function () {
118
- initialize && initialize.call(this);
119
- if (!initialize) {
120
- return console.error(`ControllerState: The "initialize" method has to be defined and instantiate a controller for the property ${controllerProperty}`, component);
121
- }
122
- if (!this[controllerProperty]) {
123
- return;
124
- }
125
- if (options?.onUpdateCallbackMethod &&
126
- !this[options.onUpdateCallbackMethod]) {
127
- return console.error(`ControllerState: The onUpdateCallbackMethod property "${options.onUpdateCallbackMethod}" is not defined`, component);
128
- }
129
- this.unsubscribeController = this[controllerProperty].subscribe(() => {
130
- this[stateProperty] = this[controllerProperty].state;
131
- options?.onUpdateCallbackMethod &&
132
- this[options.onUpdateCallbackMethod]();
133
- });
134
- };
135
- component.disconnectedCallback = function () {
136
- !getElement(this).isConnected && this.unsubscribeController?.();
137
- disconnectedCallback && disconnectedCallback.call(this);
138
- };
139
- };
140
- }
141
-
142
- export { BindStateToController as B, Hidden as H, InitializeBindings as I };
143
-
144
- //# sourceMappingURL=initialization-utils-82d28c63.js.map
@@ -1 +0,0 @@
1
- {"file":"initialization-utils-82d28c63.js","mappings":"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","names":["forceUpdate","forceUpdateComponent"],"sources":["src/components/common/stencil-hidden.tsx","src/utils/initialization-utils.tsx"],"sourcesContent":["import {FunctionalComponent, Host, h} from '@stencil/core';\n\n/**\n * @deprecated This component is no longer needed. For Lit components, render `nothing` instead.\n */\nexport const Hidden: FunctionalComponent = () => (\n <Host class=\"atomic-hidden\"></Host>\n);\n","import {\n ComponentInterface,\n getElement,\n h,\n forceUpdate as forceUpdateComponent,\n} from '@stencil/core';\nimport {TOptions} from 'i18next';\nimport {AnyBindings} from '../components/common/interface/bindings';\nimport {Hidden} from '../components/common/stencil-hidden';\nimport {Bindings} from '../components/search/atomic-search-interface/atomic-search-interface';\nimport {closest} from './dom-utils';\nimport {buildCustomEvent} from './event-utils';\nimport {enqueueOrDispatchInitializationEvent} from './init-queue';\nimport {\n MissingInterfaceParentError,\n InitializeEventHandler,\n initializableElements,\n initializeEventName,\n fetchBindings,\n} from './initialization-lit-stencil-common-utils';\n\nexport type InitializeEvent = CustomEvent<InitializeEventHandler>;\n\n/**\n * Retrieves `Bindings` or `CommerceBindings` on a configured parent interface.\n * @param event - The element on which to dispatch the event, which must be the child of a configured Atomic container element.\n * @returns A promise that resolves upon initialization of the parent container element, and rejects otherwise.\n */\nexport function initializeBindings<\n SpecificBindings extends AnyBindings = Bindings,\n>(element: Element) {\n return fetchBindings<SpecificBindings>(element);\n}\n\nexport {\n MissingInterfaceParentError,\n InitializeEventHandler,\n initializeEventName,\n} from './initialization-lit-stencil-common-utils';\n\n/**\n * Necessary interface an Atomic Component must have to initialize itself correctly.\n * @deprecated To be used for Stencil components. For Lit components. use `InitializableComponent` from './decorators/types/'\n */\nexport interface InitializableComponent<\n SpecificBindings extends AnyBindings = Bindings,\n> extends ComponentInterface {\n /**\n * Bindings passed from the `AtomicSearchInterface` to its children components.\n */\n bindings: SpecificBindings;\n /**\n * Method called right after the `bindings` property is defined. This is the method where Headless Framework controllers should be initialized.\n */\n initialize?: () => void;\n error: Error;\n}\n\ntype InitializeBindingsProps = {\n forceUpdate?: boolean;\n};\n\nconst renderedAttribute = 'data-atomic-rendered';\nconst loadedAttribute = 'data-atomic-loaded';\n\n/**\n * A [StencilJS property decorator](https://stenciljs.com/) to be used on a property named `bindings`.\n * This will automatically fetch the `Bindings` from the parent `atomic-search-interface` or `atomic-external` components.\n *\n * Once a component is bound, the `initialize` method is called.\n * In the event of an initialization error, the `error` property will be set and an `atomic-component-error` will be rendered.\n *\n * In order for a component using this decorator to render properly, it should have an internal state bound to one of the properties from `bindings`.\n * This is possible by using the `BindStateToController` decorator.\n *\n * @example\n * @InitializeBindings() public bindings!: Bindings;\n *\n * For more information and examples, view the \"Utilities\" section of the readme.\n * @deprecated To be used for Stencil components. For Lit components, use `BindingController` Reactive Controller from @/mixins/bindings-mixin.ts.\n */\nexport function InitializeBindings<SpecificBindings extends AnyBindings>({\n forceUpdate,\n}: InitializeBindingsProps = {}) {\n return (\n component: InitializableComponent<SpecificBindings>,\n bindingsProperty: string\n ) => {\n const {\n componentWillLoad,\n render,\n componentDidRender,\n componentDidLoad,\n disconnectedCallback,\n } = component;\n let unsubscribeLanguage = () => {};\n\n if (bindingsProperty !== 'bindings') {\n return console.error(\n `The InitializeBindings decorator should be used on a property called \"bindings\", and not \"${bindingsProperty}\"`,\n component\n );\n }\n\n component.componentWillLoad = function () {\n const element = getElement(this);\n element.setAttribute(renderedAttribute, 'false');\n element.setAttribute(loadedAttribute, 'false');\n const event = buildCustomEvent(\n initializeEventName,\n (bindings: SpecificBindings) => {\n this.bindings = bindings;\n\n const updateLanguage = () => forceUpdateComponent(this);\n this.bindings.i18n.on('languageChanged', updateLanguage);\n unsubscribeLanguage = () =>\n this.bindings.i18n.off('languageChanged', updateLanguage);\n\n try {\n // When no controller is initialized, updating a property with a State() decorator, there will be no re-render.\n // In this case, we have to manually trigger it.\n if (this.initialize) {\n this.initialize();\n if (forceUpdate) {\n forceUpdateComponent(this);\n }\n } else {\n forceUpdateComponent(this);\n }\n } catch (e) {\n this.error = e as Error;\n }\n }\n );\n const parent = closest(element, initializableElements.join(', '));\n if (!parent) {\n this.error = new MissingInterfaceParentError(\n element.nodeName.toLowerCase()\n );\n return;\n }\n enqueueOrDispatchInitializationEvent(\n parent,\n event as InitializeEvent,\n element\n );\n return componentWillLoad && componentWillLoad.call(this);\n };\n\n component.render = function () {\n if (this.error) {\n return (\n <atomic-component-error\n element={getElement(this)}\n error={this.error}\n ></atomic-component-error>\n );\n }\n\n if (!this.bindings) {\n return <Hidden></Hidden>;\n }\n\n getElement(this).setAttribute(renderedAttribute, 'true');\n return render && render.call(this);\n };\n\n component.disconnectedCallback = function () {\n const element = getElement(this);\n element.setAttribute(renderedAttribute, 'false');\n element.setAttribute(loadedAttribute, 'false');\n unsubscribeLanguage();\n disconnectedCallback && disconnectedCallback.call(this);\n };\n\n component.componentDidRender = function () {\n const element = getElement(this);\n if (element.getAttribute(renderedAttribute) === 'false') {\n return;\n }\n\n componentDidRender && componentDidRender.call(this);\n if (element.getAttribute(loadedAttribute) === 'false') {\n element.setAttribute(loadedAttribute, 'true');\n componentDidLoad && componentDidLoad.call(this);\n }\n };\n\n component.componentDidLoad = function () {};\n };\n}\n\n/**\n * A [StencilJS property decorator](https://stenciljs.com/) is used together with the [State decorator](https://stenciljs.com/docs/state#state-decorator).\n * This allows the Stencil component state property to automatically get updates from a [Coveo Headless controller](https://docs.coveo.com/en/headless/latest/usage/#use-headless-controllers).\n *\n * @example\n * @BindStateToController('pager') @State() private pagerState!: PagerState;\n *\n * For more information and examples, view the \"Utilities\" section of the readme.\n *\n * @param controllerProperty The controller property to subscribe to. The controller has to be created inside of the `initialize` method.\n * @param options The configurable `BindStateToController` options.\n *\n * @deprecated To be used for Stencil components. For Lit components. use `bindStateToController` from '../decorators/bind-state.ts'\n */\nexport function BindStateToController(\n controllerProperty: string,\n options?: {\n /**\n * Component's method to be called when state is updated.\n */\n onUpdateCallbackMethod?: string;\n }\n) {\n return (\n component: InitializableComponent<AnyBindings>,\n stateProperty: string\n ) => {\n const {disconnectedCallback, initialize} = component;\n\n component.initialize = function () {\n initialize && initialize.call(this);\n\n if (!initialize) {\n return console.error(\n `ControllerState: The \"initialize\" method has to be defined and instantiate a controller for the property ${controllerProperty}`,\n component\n );\n }\n\n if (!this[controllerProperty]) {\n return;\n }\n\n if (\n options?.onUpdateCallbackMethod &&\n !this[options.onUpdateCallbackMethod]\n ) {\n return console.error(\n `ControllerState: The onUpdateCallbackMethod property \"${options.onUpdateCallbackMethod}\" is not defined`,\n component\n );\n }\n\n this.unsubscribeController = this[controllerProperty].subscribe(() => {\n this[stateProperty] = this[controllerProperty].state;\n options?.onUpdateCallbackMethod &&\n this[options.onUpdateCallbackMethod]();\n });\n };\n\n component.disconnectedCallback = function () {\n !getElement(this).isConnected && this.unsubscribeController?.();\n disconnectedCallback && disconnectedCallback.call(this);\n };\n };\n}\n\ninterface DeferredExecution {\n args: unknown[];\n}\n\nexport function DeferUntilRender() {\n return (component: ComponentInterface, methodName: string) => {\n const {componentDidRender, connectedCallback} = component;\n const originalMethod = component[methodName] as Function;\n let deferredExecutions: DeferredExecution[] = [];\n\n component.connectedCallback = function () {\n this[methodName] = function (...args: unknown[]) {\n deferredExecutions.push({args});\n };\n connectedCallback && connectedCallback.call(this);\n };\n\n component.componentDidRender = function () {\n deferredExecutions.forEach(({args}) =>\n originalMethod.call(this, ...args)\n );\n deferredExecutions = [];\n componentDidRender && componentDidRender.call(this);\n };\n };\n}\n\nexport type I18nState = Record<string, (variables?: TOptions) => string>;\n"],"version":3}
@@ -1,12 +0,0 @@
1
- import { b as buildCustomEvent } from './event-utils-8de63ec3.js';
2
-
3
- const CloseIcon = `<svg viewBox="0 0 22 22"><g transform="matrix(.7071 -.7071 .7071 .7071 -3.142 11)"><path d="m9-3.4h2v26.9h-2z"/><path d="m-3.4 9h26.9v2h-26.9z"/></g></svg>`;
4
-
5
- const popoverClass = 'popover-nested';
6
- function initializePopover(host, childFacet) {
7
- host.dispatchEvent(buildCustomEvent('atomic/initializePopover', childFacet));
8
- }
9
-
10
- export { CloseIcon as C, initializePopover as i, popoverClass as p };
11
-
12
- //# sourceMappingURL=popover-type-c85677ef.js.map
@@ -1 +0,0 @@
1
- {"file":"popover-type-c85677ef.js","mappings":";;;;MAQa,YAAY,GAAG,iBAAiB;SAE7B,iBAAiB,CAC/B,IAAiB,EACjB,UAA6B;IAE7B,IAAI,CAAC,aAAa,CAChB,gBAAgB,CAAoB,0BAA0B,EAAE,UAAU,CAAC,CAC5E,CAAC;AACJ;;;;","names":[],"sources":["src/components/common/facets/popover/popover-type.ts"],"sourcesContent":["import {buildCustomEvent} from '../../../../utils/event-utils';\nimport type {FacetInfo} from '../../../common/facets/facet-common-store';\n\nexport interface PopoverChildFacet extends FacetInfo {\n hasValues: () => boolean;\n numberOfActiveValues: () => number;\n}\n\nexport const popoverClass = 'popover-nested';\n\nexport function initializePopover(\n host: HTMLElement,\n childFacet: PopoverChildFacet\n) {\n host.dispatchEvent(\n buildCustomEvent<PopoverChildFacet>('atomic/initializePopover', childFacet)\n );\n}\n"],"version":3}
@@ -1,57 +0,0 @@
1
- import '@coveo/bueno';
2
- import { g as getElement } from './index-3eb0b28e.js';
3
- import { c as camelToKebab, k as kebabToCamel } from './utils-b5bab369.js';
4
-
5
- /**
6
- * @deprecated Use the `mapProperty` decorator instead.
7
- */
8
- function MapProp(opts) {
9
- return (component, variableName) => {
10
- const { componentWillLoad } = component;
11
- if (!componentWillLoad) {
12
- console.error('The "componentWillLoad" lifecycle method has to be defined for the MapProp decorator to work.');
13
- return;
14
- }
15
- component.componentWillLoad = function () {
16
- const prefix = opts?.attributePrefix || variableName;
17
- const variable = this[variableName];
18
- const attributes = getElement(this).attributes;
19
- mapAttributesToProp(prefix, variable, Array.from(attributes), opts?.splitValues ?? false);
20
- componentWillLoad.call(this);
21
- };
22
- };
23
- }
24
- function splitAttributeValueOnCommas(attributeValue) {
25
- const splitButIgnoreEscapeSymbolsExpression = /(?:\\.|[^,])+/g;
26
- const [...valuesWithEscapeSymbols] = attributeValue.matchAll(splitButIgnoreEscapeSymbolsExpression) ?? [];
27
- const removeEscapeSymbolsExpression = /\\(.)/g;
28
- return valuesWithEscapeSymbols.map(([valuesWithEscapeSymbols]) => valuesWithEscapeSymbols.replace(removeEscapeSymbolsExpression, '$1'));
29
- }
30
- function mapAttributesToProp(prefix, mapVariable, attributes, splitValues) {
31
- const map = attributesToStringMap(prefix, attributes);
32
- Object.assign(mapVariable, splitValues ? stringMapToStringArrayMap(map) : map);
33
- }
34
- function stringMapToStringArrayMap(map) {
35
- return Object.entries(map).reduce((acc, [key, value]) => ({
36
- // biome-ignore lint/performance/noAccumulatingSpread: <>
37
- ...acc,
38
- [key]: splitAttributeValueOnCommas(value).map((subValue) => subValue.trim()),
39
- }), {});
40
- }
41
- function attributesToStringMap(prefix, attributes) {
42
- const mapVariable = {};
43
- const kebabPrefix = `${camelToKebab(prefix)}-`;
44
- for (let i = 0; i < attributes.length; i++) {
45
- const attribute = attributes[i];
46
- if (attribute.name.indexOf(kebabPrefix) !== 0) {
47
- continue;
48
- }
49
- const property = kebabToCamel(attribute.name.replace(kebabPrefix, ''));
50
- mapVariable[property] = `${attribute.value}`;
51
- }
52
- return mapVariable;
53
- }
54
-
55
- export { MapProp as M };
56
-
57
- //# sourceMappingURL=props-utils-d343133b.js.map
@@ -1 +0,0 @@
1
- {"file":"props-utils-d343133b.js","mappings":";;;;AAyCA;;;SAGgB,OAAO,CAAC,IAAqB;IAC3C,OAAO,CAAC,SAA6B,EAAE,YAAoB;QACzD,MAAM,EAAC,iBAAiB,EAAC,GAAG,SAAS,CAAC;QACtC,IAAI,CAAC,iBAAiB,EAAE;YACtB,OAAO,CAAC,KAAK,CACX,+FAA+F,CAChG,CAAC;YACF,OAAO;SACR;QAED,SAAS,CAAC,iBAAiB,GAAG;YAC5B,MAAM,MAAM,GAAG,IAAI,EAAE,eAAe,IAAI,YAAY,CAAC;YACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;YACpC,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC;YAC/C,mBAAmB,CACjB,MAAM,EACN,QAAQ,EACR,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EACtB,IAAI,EAAE,WAAW,IAAI,KAAK,CAC3B,CAAC;YACF,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC9B,CAAC;KACH,CAAC;AACJ,CAAC;AAwCD,SAAS,2BAA2B,CAAC,cAAsB;IACzD,MAAM,qCAAqC,GAAG,gBAAgB,CAAC;IAC/D,MAAM,CAAC,GAAG,uBAAuB,CAAC,GAChC,cAAc,CAAC,QAAQ,CAAC,qCAAqC,CAAC,IAAI,EAAE,CAAC;IAEvE,MAAM,6BAA6B,GAAG,QAAQ,CAAC;IAC/C,OAAO,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC,uBAAuB,CAAC,KAC3D,uBAAuB,CAAC,OAAO,CAAC,6BAA6B,EAAE,IAAI,CAAC,CACrE,CAAC;AACJ,CAAC;SAEe,mBAAmB,CACjC,MAAc,EACd,WAA8C,EAC9C,UAA2C,EAC3C,WAAoB;IAEpB,MAAM,GAAG,GAAG,qBAAqB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACtD,MAAM,CAAC,MAAM,CACX,WAAW,EACX,WAAW,GAAG,yBAAyB,CAAC,GAAG,CAAC,GAAG,GAAG,CACnD,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,GAA2B;IAC5D,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAC/B,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM;;QAEtB,GAAG,GAAG;QACN,CAAC,GAAG,GAAG,2BAA2B,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,KACrD,QAAQ,CAAC,IAAI,EAAE,CAChB;KACF,CAAC,EACF,EAAE,CACH,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAC5B,MAAc,EACd,UAA2C;IAE3C,MAAM,WAAW,GAA2B,EAAE,CAAC;IAC/C,MAAM,WAAW,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC;IAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC1C,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE;YAC7C,SAAS;SACV;QAED,MAAM,QAAQ,GAAG,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC;QACvE,WAAW,CAAC,QAAQ,CAAC,GAAG,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC;KAC9C;IACD,OAAO,WAAW,CAAC;AACrB;;;;","names":[],"sources":["src/utils/props-utils.ts"],"sourcesContent":["import {isArray} from '@coveo/bueno';\nimport {type ComponentInterface, getElement} from '@stencil/core';\nimport type {ReactiveElement} from 'lit';\nimport {camelToKebab, kebabToCamel} from './utils';\n\ninterface MapPropOptions {\n attributePrefix?: string;\n splitValues?: boolean;\n}\n\nexport function mapProperty<Element extends ReactiveElement>(\n options?: MapPropOptions\n) {\n return <\n Instance extends Element & Record<string, unknown>,\n K extends keyof Instance,\n >(\n proto: ReactiveElement,\n propertyKey: K\n ) => {\n const ctor = proto.constructor as typeof ReactiveElement;\n\n ctor.createProperty(propertyKey, {type: Object});\n\n ctor.addInitializer((instance) => {\n const props = {};\n const prefix =\n options?.attributePrefix || camelToKebab(propertyKey.toString());\n\n mapAttributesToProp(\n prefix,\n props,\n Array.from(instance.attributes),\n options?.splitValues ?? false\n );\n\n (instance as Instance)[propertyKey] = props as Instance[K];\n });\n };\n}\n\n/**\n * @deprecated Use the `mapProperty` decorator instead.\n */\nexport function MapProp(opts?: MapPropOptions) {\n return (component: ComponentInterface, variableName: string) => {\n const {componentWillLoad} = component;\n if (!componentWillLoad) {\n console.error(\n 'The \"componentWillLoad\" lifecycle method has to be defined for the MapProp decorator to work.'\n );\n return;\n }\n\n component.componentWillLoad = function () {\n const prefix = opts?.attributePrefix || variableName;\n const variable = this[variableName];\n const attributes = getElement(this).attributes;\n mapAttributesToProp(\n prefix,\n variable,\n Array.from(attributes),\n opts?.splitValues ?? false\n );\n componentWillLoad.call(this);\n };\n };\n}\n\n/**\n * @deprecated In Lit, you can achieve the same behavior by using `@property({type: Array})`.\n */\nexport function ArrayProp() {\n return (component: ComponentInterface, variableName: string) => {\n const {componentWillLoad} = component;\n\n const attributeWithBrackets = camelToKebab(variableName);\n\n component.componentWillLoad = function () {\n const value = this[variableName];\n if (!value || isArray(value)) {\n componentWillLoad?.call(this);\n return;\n }\n\n try {\n const valueAsArray = JSON.parse(value);\n if (isArray(valueAsArray)) {\n this[variableName] = valueAsArray;\n } else {\n console.error(\n `Property ${attributeWithBrackets} should be an array`,\n getElement(this)\n );\n }\n } catch (e) {\n console.error(\n `Error while parsing attribute ${attributeWithBrackets} as array`,\n e\n );\n }\n\n componentWillLoad?.call(this);\n };\n };\n}\n\nfunction splitAttributeValueOnCommas(attributeValue: string) {\n const splitButIgnoreEscapeSymbolsExpression = /(?:\\\\.|[^,])+/g;\n const [...valuesWithEscapeSymbols] =\n attributeValue.matchAll(splitButIgnoreEscapeSymbolsExpression) ?? [];\n\n const removeEscapeSymbolsExpression = /\\\\(.)/g;\n return valuesWithEscapeSymbols.map(([valuesWithEscapeSymbols]) =>\n valuesWithEscapeSymbols.replace(removeEscapeSymbolsExpression, '$1')\n );\n}\n\nexport function mapAttributesToProp(\n prefix: string,\n mapVariable: Record<string, string | string[]>,\n attributes: {name: string; value: string}[],\n splitValues: boolean\n) {\n const map = attributesToStringMap(prefix, attributes);\n Object.assign(\n mapVariable,\n splitValues ? stringMapToStringArrayMap(map) : map\n );\n}\n\nfunction stringMapToStringArrayMap(map: Record<string, string>) {\n return Object.entries(map).reduce(\n (acc, [key, value]) => ({\n // biome-ignore lint/performance/noAccumulatingSpread: <>\n ...acc,\n [key]: splitAttributeValueOnCommas(value).map((subValue) =>\n subValue.trim()\n ),\n }),\n {}\n );\n}\n\nfunction attributesToStringMap(\n prefix: string,\n attributes: {name: string; value: string}[]\n) {\n const mapVariable: Record<string, string> = {};\n const kebabPrefix = `${camelToKebab(prefix)}-`;\n for (let i = 0; i < attributes.length; i++) {\n const attribute = attributes[i];\n if (attribute.name.indexOf(kebabPrefix) !== 0) {\n continue;\n }\n\n const property = kebabToCamel(attribute.name.replace(kebabPrefix, ''));\n mapVariable[property] = `${attribute.value}`;\n }\n return mapVariable;\n}\n"],"version":3}
@@ -1,128 +0,0 @@
1
- import { h } from './index-3eb0b28e.js';
2
- import { l as listenOnce } from './event-utils-8de63ec3.js';
3
-
4
- const RIPPLE = 'ripple';
5
- function getAnimationDurationInMilliseconds(radiusPixels) {
6
- // A 318px wide button has a duration of 700ms.
7
- return Math.cbrt(radiusPixels) * 129.21;
8
- }
9
- function setPositionRelativeIfStatic(element) {
10
- if (getComputedStyle(element).position === 'static') {
11
- element.classList.add('ripple-relative');
12
- }
13
- }
14
- async function createRipple(event, options) {
15
- const button = options.parent ?? event.currentTarget;
16
- const existingRipple = button.getElementsByClassName(RIPPLE)[0];
17
- existingRipple?.remove();
18
- button.classList.add('ripple-parent');
19
- setPositionRelativeIfStatic(button);
20
- Array.from(button.children).forEach(setPositionRelativeIfStatic);
21
- const ripple = document.createElement('span');
22
- ripple.classList.add(RIPPLE);
23
- ripple.style.backgroundColor = `var(--atomic-${options.color})`;
24
- ripple.setAttribute('part', RIPPLE);
25
- const diameter = Math.max(button.clientWidth, button.clientHeight);
26
- const radius = diameter / 2;
27
- const animationDuration = getAnimationDurationInMilliseconds(radius);
28
- const { top, left } = button.getBoundingClientRect();
29
- ripple.style.width = ripple.style.height = `${diameter}px`;
30
- ripple.style.left = `${event.clientX - (left + radius)}px`;
31
- ripple.style.top = `${event.clientY - (top + radius)}px`;
32
- ripple.style.setProperty('--animation-duration', `${animationDuration}ms`);
33
- button.prepend(ripple);
34
- await cleanupAnimationOnFinish(ripple, animationDuration);
35
- }
36
- async function cleanupAnimationOnFinish(ripple, animationDuration) {
37
- listenOnce(ripple, 'animationend', () => {
38
- ripple?.remove();
39
- });
40
- // Backup in case the button gets hidden or unmounted and the ripple hasn't been cleaned up.
41
- setTimeout(() => ripple?.remove(), animationDuration + animationDuration * 0.1);
42
- }
43
-
44
- /**
45
- * @deprecated Should only be used for Stencil components; for Lit components, use the button-style.ts
46
- * This file is required to be in a tsx file to be able to use it in Stencil components.
47
- */
48
- function getClassNameForButtonStyle(buttonStyle) {
49
- switch (buttonStyle) {
50
- case 'primary':
51
- return 'btn-primary';
52
- case 'outline-primary':
53
- return 'btn-outline-primary';
54
- case 'outline-neutral':
55
- return 'btn-outline-neutral';
56
- case 'outline-error':
57
- return 'btn-outline-error';
58
- case 'outline-bg-neutral':
59
- return 'btn-outline-bg-neutral';
60
- case 'outline-bg-error':
61
- return 'btn-outline-bg-error';
62
- case 'text-primary':
63
- return 'btn-text-primary';
64
- case 'text-neutral':
65
- return 'btn-text-neutral';
66
- case 'text-transparent':
67
- return 'btn-text-transparent';
68
- case 'square-neutral':
69
- return 'btn-square-neutral';
70
- }
71
- }
72
- /**
73
- * @deprecated Should only be used for Stencil components; for Lit components, use the button-style.ts
74
- * This file is required to be in a tsx file to be able to use it in Stencil components.
75
- */
76
- function getRippleColorForButtonStyle(buttonStyle) {
77
- switch (buttonStyle) {
78
- case 'primary':
79
- return 'primary';
80
- case 'text-transparent':
81
- return 'neutral-light';
82
- default:
83
- return 'neutral';
84
- }
85
- }
86
-
87
- /**
88
- * @deprecated should only be used for Stencil components.
89
- */
90
- const Button = (props, children) => {
91
- const rippleColor = getRippleColorForButtonStyle(props.style);
92
- const className = getClassNameForButtonStyle(props.style);
93
- const attributes = {
94
- class: props.class ? `${className} ${props.class}` : className,
95
- part: props.part,
96
- onClick: props.onClick,
97
- title: props.title,
98
- type: props.type,
99
- role: props.role,
100
- 'aria-label': props.ariaLabel,
101
- 'aria-expanded': props.ariaExpanded,
102
- 'aria-pressed': props.ariaPressed,
103
- 'aria-checked': props.ariaChecked,
104
- 'aria-current': props.ariaCurrent,
105
- 'aria-controls': props.ariaControls,
106
- 'aria-hidden': props.ariaHidden,
107
- disabled: props.disabled,
108
- ref(buttonEl) {
109
- if (props.form) {
110
- buttonEl?.setAttribute('form', props.form);
111
- }
112
- if (props.ariaHidden) {
113
- buttonEl?.setAttribute('aria-hidden', props.ariaHidden);
114
- }
115
- if (props.tabIndex) {
116
- buttonEl?.setAttribute('tabindex', props.tabIndex);
117
- }
118
- props.ref?.(buttonEl);
119
- },
120
- };
121
- return (h("button", { ...attributes, onMouseDown: (e) => createRipple(e, { color: rippleColor }) },
122
- props.text ? h("span", { class: "truncate" }, props.text) : null,
123
- children));
124
- };
125
-
126
- export { Button as B };
127
-
128
- //# sourceMappingURL=stencil-button-c25899df.js.map
@@ -1 +0,0 @@
1
- {"file":"stencil-button-c25899df.js","mappings":"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","names":[],"sources":["src/utils/ripple-utils.ts","src/components/common/stencil-button-style.tsx","src/components/common/stencil-button.tsx"],"sourcesContent":["import {listenOnce} from './event-utils';\n\ninterface RippleOptions {\n color: string;\n /**\n * When the ripple's parent is not the event's origin\n */\n parent?: Element;\n}\n\nconst RIPPLE = 'ripple';\n\nfunction getAnimationDurationInMilliseconds(radiusPixels: number) {\n // A 318px wide button has a duration of 700ms.\n return Math.cbrt(radiusPixels) * 129.21;\n}\n\nfunction setPositionRelativeIfStatic(element: Element) {\n if (getComputedStyle(element).position === 'static') {\n element.classList.add('ripple-relative');\n }\n}\n\nexport async function createRipple(event: MouseEvent, options: RippleOptions) {\n const button = options.parent ?? (event.currentTarget as Element);\n const existingRipple = button.getElementsByClassName(RIPPLE)[0];\n existingRipple?.remove();\n\n button.classList.add('ripple-parent');\n setPositionRelativeIfStatic(button);\n Array.from(button.children).forEach(setPositionRelativeIfStatic);\n\n const ripple = document.createElement('span');\n ripple.classList.add(RIPPLE);\n ripple.style.backgroundColor = `var(--atomic-${options.color})`;\n ripple.setAttribute('part', RIPPLE);\n\n const diameter = Math.max(button.clientWidth, button.clientHeight);\n const radius = diameter / 2;\n const animationDuration = getAnimationDurationInMilliseconds(radius);\n const {top, left} = button.getBoundingClientRect();\n ripple.style.width = ripple.style.height = `${diameter}px`;\n ripple.style.left = `${event.clientX - (left + radius)}px`;\n ripple.style.top = `${event.clientY - (top + radius)}px`;\n ripple.style.setProperty('--animation-duration', `${animationDuration}ms`);\n button.prepend(ripple);\n await cleanupAnimationOnFinish(ripple, animationDuration);\n}\n\nasync function cleanupAnimationOnFinish(\n ripple: HTMLSpanElement,\n animationDuration: number\n) {\n listenOnce(ripple, 'animationend', () => {\n ripple?.remove();\n });\n // Backup in case the button gets hidden or unmounted and the ripple hasn't been cleaned up.\n setTimeout(\n () => ripple?.remove(),\n animationDuration + animationDuration * 0.1\n );\n}\n","export type ButtonStyle =\n | 'primary'\n | 'outline-primary'\n | 'outline-neutral'\n | 'outline-error'\n | 'outline-bg-neutral'\n | 'outline-bg-error'\n | 'text-primary'\n | 'text-neutral'\n | 'text-transparent'\n | 'square-neutral';\n\n/**\n * @deprecated Should only be used for Stencil components; for Lit components, use the button-style.ts\n * This file is required to be in a tsx file to be able to use it in Stencil components.\n */\nexport function getClassNameForButtonStyle(buttonStyle: ButtonStyle) {\n switch (buttonStyle) {\n case 'primary':\n return 'btn-primary';\n case 'outline-primary':\n return 'btn-outline-primary';\n case 'outline-neutral':\n return 'btn-outline-neutral';\n case 'outline-error':\n return 'btn-outline-error';\n case 'outline-bg-neutral':\n return 'btn-outline-bg-neutral';\n case 'outline-bg-error':\n return 'btn-outline-bg-error';\n case 'text-primary':\n return 'btn-text-primary';\n case 'text-neutral':\n return 'btn-text-neutral';\n case 'text-transparent':\n return 'btn-text-transparent';\n case 'square-neutral':\n return 'btn-square-neutral';\n }\n}\n\n/**\n * @deprecated Should only be used for Stencil components; for Lit components, use the button-style.ts\n * This file is required to be in a tsx file to be able to use it in Stencil components.\n */\nexport function getRippleColorForButtonStyle(buttonStyle: ButtonStyle) {\n switch (buttonStyle) {\n case 'primary':\n return 'primary';\n case 'text-transparent':\n return 'neutral-light';\n default:\n return 'neutral';\n }\n}\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {createRipple} from '../../utils/ripple-utils';\nimport {\n ButtonStyle,\n getRippleColorForButtonStyle,\n getClassNameForButtonStyle,\n} from './stencil-button-style';\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport interface StencilButtonProps {\n style: ButtonStyle;\n onClick?(event?: MouseEvent): void;\n class?: string;\n text?: string;\n part?: string;\n type?: string;\n form?: string;\n role?: string;\n disabled?: boolean;\n ariaLabel?: string;\n ariaExpanded?: string;\n ariaPressed?: string;\n ariaChecked?: string;\n ariaCurrent?: string;\n ariaControls?: string;\n ariaHidden?: string;\n tabIndex?: string;\n title?: string;\n ref?(element?: HTMLButtonElement): void;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const Button: FunctionalComponent<StencilButtonProps> = (\n props,\n children\n) => {\n const rippleColor = getRippleColorForButtonStyle(props.style);\n const className = getClassNameForButtonStyle(props.style);\n\n const attributes = {\n class: props.class ? `${className} ${props.class}` : className,\n part: props.part,\n onClick: props.onClick,\n title: props.title,\n type: props.type,\n role: props.role,\n 'aria-label': props.ariaLabel,\n 'aria-expanded': props.ariaExpanded,\n 'aria-pressed': props.ariaPressed,\n 'aria-checked': props.ariaChecked,\n 'aria-current': props.ariaCurrent,\n 'aria-controls': props.ariaControls,\n 'aria-hidden': props.ariaHidden,\n disabled: props.disabled,\n ref(buttonEl?: HTMLButtonElement) {\n if (props.form) {\n buttonEl?.setAttribute('form', props.form);\n }\n if (props.ariaHidden) {\n buttonEl?.setAttribute('aria-hidden', props.ariaHidden);\n }\n if (props.tabIndex) {\n buttonEl?.setAttribute('tabindex', props.tabIndex);\n }\n props.ref?.(buttonEl);\n },\n };\n\n return (\n <button\n {...attributes}\n onMouseDown={(e) => createRipple(e, {color: rippleColor})}\n >\n {props.text ? <span class=\"truncate\">{props.text}</span> : null}\n {children}\n </button>\n );\n};\n"],"version":3}
@@ -1,169 +0,0 @@
1
- import { b as buildCustomEvent } from './event-utils-8de63ec3.js';
2
- import { d as defer } from './utils-b5bab369.js';
3
- import { h } from './index-3eb0b28e.js';
4
-
5
- const findAriaLiveEventName = 'atomic/accessibility/findAriaLive';
6
- /**
7
- * @deprecated use Lit equivalent
8
- */
9
- function AriaLiveRegion(regionName, assertive = false) {
10
- function getAriaLiveElement() {
11
- const event = buildCustomEvent(findAriaLiveEventName, {});
12
- document.dispatchEvent(event);
13
- const { element } = event.detail;
14
- return element;
15
- }
16
- function dispatchMessage(message) {
17
- getAriaLiveElement()?.updateMessage(regionName, message, assertive);
18
- }
19
- function registerRegion() {
20
- getAriaLiveElement()?.registerRegion(regionName, assertive);
21
- }
22
- return (component, setterName) => {
23
- const { componentWillRender } = component;
24
- Object.defineProperty(component, setterName, {
25
- set: (message) => dispatchMessage(message),
26
- });
27
- component.componentWillRender = function () {
28
- componentWillRender && componentWillRender.call(this);
29
- registerRegion();
30
- };
31
- };
32
- }
33
- /**
34
- * @deprecated use Lit equivalent
35
- */
36
- class FocusTargetController {
37
- constructor(component) {
38
- this.component = component;
39
- this.registerFocusCallback = (callback) => {
40
- this.publicOnFocusCallbacks.push(callback);
41
- };
42
- this.doFocusAfterSearch = false;
43
- this.doFocusOnNextTarget = false;
44
- this.publicOnFocusCallbacks = [];
45
- this.bindings = component.bindings;
46
- this.handleComponentRenderLoop();
47
- }
48
- clearFocusCallbacks() {
49
- this.internalOnFocusCallback?.();
50
- while (this.publicOnFocusCallbacks.length) {
51
- this.publicOnFocusCallbacks.pop()?.();
52
- }
53
- }
54
- setTarget(el) {
55
- if (!el) {
56
- return;
57
- }
58
- this.element = el;
59
- if (this.doFocusOnNextTarget) {
60
- this.doFocusOnNextTarget = false;
61
- this.focus();
62
- }
63
- }
64
- async focus() {
65
- await defer();
66
- this.element?.focus();
67
- this.clearFocusCallbacks();
68
- }
69
- focusAfterSearch() {
70
- this.lastSearchId = this.bindings.store.getUniqueIDFromEngine(this.bindings.engine);
71
- this.doFocusAfterSearch = true;
72
- return new Promise((resolve) => (this.internalOnFocusCallback = resolve));
73
- }
74
- focusOnNextTarget() {
75
- this.doFocusOnNextTarget = true;
76
- return new Promise((resolve) => (this.internalOnFocusCallback = resolve));
77
- }
78
- disableForCurrentSearch() {
79
- if (this.bindings.store.getUniqueIDFromEngine(this.bindings.engine) !==
80
- this.lastSearchId) {
81
- this.doFocusAfterSearch = false;
82
- }
83
- }
84
- handleComponentRenderLoop() {
85
- const originalComponentDidRender = this.component.componentDidRender;
86
- this.component.componentDidRender = () => {
87
- originalComponentDidRender &&
88
- originalComponentDidRender.call(this.component);
89
- if (!this.bindings) {
90
- return;
91
- }
92
- if (this.doFocusAfterSearch &&
93
- this.bindings.store.getUniqueIDFromEngine(this.bindings.engine) !==
94
- this.lastSearchId) {
95
- this.doFocusAfterSearch = false;
96
- if (this.element) {
97
- const el = this.element;
98
- // The focus seems to be flaky without deferring, especially on iOS.
99
- defer().then(() => {
100
- el.focus();
101
- this.clearFocusCallbacks();
102
- });
103
- }
104
- }
105
- };
106
- }
107
- }
108
- function isFocusable(element) {
109
- // Source: https://stackoverflow.com/a/30753870
110
- if (element.getAttribute('tabindex') === '-1') {
111
- return false;
112
- }
113
- if (element.hasAttribute('tabindex')) {
114
- return true;
115
- }
116
- if (element.getAttribute('contentEditable') === 'true') {
117
- return true;
118
- }
119
- switch (element.tagName) {
120
- case 'A':
121
- case 'AREA':
122
- return element.hasAttribute('href');
123
- case 'INPUT':
124
- case 'SELECT':
125
- case 'TEXTAREA':
126
- case 'BUTTON':
127
- return !element.hasAttribute('disabled');
128
- case 'IFRAME':
129
- return true;
130
- default:
131
- return false;
132
- }
133
- }
134
- /**
135
- * @deprecated use Lit equivalent
136
- */
137
- function* getFocusableDescendants(element) {
138
- if (isFocusable(element)) {
139
- yield element;
140
- }
141
- let children = Array.from(element.children);
142
- if (element instanceof HTMLSlotElement) {
143
- children = element.assignedElements();
144
- }
145
- else if (element.shadowRoot) {
146
- children.push(...Array.from(element.shadowRoot.children));
147
- }
148
- for (const child of children) {
149
- yield* getFocusableDescendants(child);
150
- }
151
- }
152
- /**
153
- * @deprecated use Lit equivalent
154
- */
155
- function getFirstFocusableDescendant(element) {
156
- return getFocusableDescendants(element).next().value ?? null;
157
- }
158
-
159
- /**
160
- * @deprecated should only be used for Stencil components.
161
- */
162
- const Heading = ({ level, ...htmlProps }, children) => {
163
- const HeadingTag = level > 0 && level <= 6 ? `h${level}` : 'div';
164
- return h(HeadingTag, { ...htmlProps }, children);
165
- };
166
-
167
- export { AriaLiveRegion as A, FocusTargetController as F, Heading as H, getFirstFocusableDescendant as g };
168
-
169
- //# sourceMappingURL=stencil-heading-98a5f23f.js.map
@@ -1 +0,0 @@
1
- {"file":"stencil-heading-98a5f23f.js","mappings":"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","names":[],"sources":["src/utils/stencil-accessibility-utils.tsx","src/components/common/stencil-heading.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { AtomicAriaLive } from '../components/common/atomic-aria-live/atomic-aria-live';\nimport {AnyBindings} from '../components/common/interface/bindings';\nimport {buildCustomEvent} from './event-utils';\nimport {InitializableComponent} from './initialization-utils';\nimport {defer} from './utils';\n\nconst findAriaLiveEventName = 'atomic/accessibility/findAriaLive';\n\n/**\n * @deprecated use Lit equivalent\n */\nexport interface FindAriaLiveEventArgs {\n element?: AtomicAriaLive;\n}\n\n/**\n * @deprecated use Lit equivalent\n */\nexport function AriaLiveRegion(regionName: string, assertive = false) {\n function getAriaLiveElement() {\n const event = buildCustomEvent<FindAriaLiveEventArgs>(\n findAriaLiveEventName,\n {}\n );\n document.dispatchEvent(event);\n const {element} = event.detail;\n return element;\n }\n\n function dispatchMessage(message: string) {\n getAriaLiveElement()?.updateMessage(regionName, message, assertive);\n }\n\n function registerRegion() {\n getAriaLiveElement()?.registerRegion(regionName, assertive);\n }\n\n return (\n component: InitializableComponent<AnyBindings>,\n setterName: string\n ) => {\n const {componentWillRender} = component;\n Object.defineProperty(component, setterName, {\n set: (message: string) => dispatchMessage(message),\n });\n\n component.componentWillRender = function () {\n componentWillRender && componentWillRender.call(this);\n registerRegion();\n };\n };\n}\n\n/**\n * @deprecated use Lit equivalent\n */\nexport class FocusTargetController {\n private bindings: AnyBindings;\n private lastSearchId?: string;\n private element?: HTMLElement;\n public registerFocusCallback: (callback: Function) => void = (\n callback: Function\n ) => {\n this.publicOnFocusCallbacks.push(callback);\n };\n private internalOnFocusCallback?: Function;\n private doFocusAfterSearch = false;\n private doFocusOnNextTarget = false;\n private publicOnFocusCallbacks: Function[] = [];\n\n constructor(private component: InitializableComponent<AnyBindings>) {\n this.bindings = component.bindings;\n this.handleComponentRenderLoop();\n }\n\n private clearFocusCallbacks() {\n this.internalOnFocusCallback?.();\n while (this.publicOnFocusCallbacks.length) {\n this.publicOnFocusCallbacks.pop()?.();\n }\n }\n\n public setTarget(el: HTMLElement | undefined) {\n if (!el) {\n return;\n }\n this.element = el;\n if (this.doFocusOnNextTarget) {\n this.doFocusOnNextTarget = false;\n this.focus();\n }\n }\n\n public async focus() {\n await defer();\n this.element?.focus();\n this.clearFocusCallbacks();\n }\n\n public focusAfterSearch() {\n this.lastSearchId = this.bindings.store.getUniqueIDFromEngine(\n this.bindings.engine\n );\n this.doFocusAfterSearch = true;\n return new Promise((resolve) => (this.internalOnFocusCallback = resolve));\n }\n\n public focusOnNextTarget() {\n this.doFocusOnNextTarget = true;\n return new Promise((resolve) => (this.internalOnFocusCallback = resolve));\n }\n\n public disableForCurrentSearch() {\n if (\n this.bindings.store.getUniqueIDFromEngine(this.bindings.engine) !==\n this.lastSearchId\n ) {\n this.doFocusAfterSearch = false;\n }\n }\n\n private handleComponentRenderLoop() {\n const originalComponentDidRender = this.component.componentDidRender;\n\n this.component.componentDidRender = () => {\n originalComponentDidRender &&\n originalComponentDidRender.call(this.component);\n if (!this.bindings) {\n return;\n }\n if (\n this.doFocusAfterSearch &&\n this.bindings.store.getUniqueIDFromEngine(this.bindings.engine) !==\n this.lastSearchId\n ) {\n this.doFocusAfterSearch = false;\n if (this.element) {\n const el = this.element;\n // The focus seems to be flaky without deferring, especially on iOS.\n defer().then(() => {\n el.focus();\n this.clearFocusCallbacks();\n });\n }\n }\n };\n }\n}\n\nfunction isFocusable(element: Element) {\n // Source: https://stackoverflow.com/a/30753870\n if (element.getAttribute('tabindex') === '-1') {\n return false;\n }\n if (element.hasAttribute('tabindex')) {\n return true;\n }\n if (element.getAttribute('contentEditable') === 'true') {\n return true;\n }\n switch (element.tagName) {\n case 'A':\n case 'AREA':\n return element.hasAttribute('href');\n case 'INPUT':\n case 'SELECT':\n case 'TEXTAREA':\n case 'BUTTON':\n return !element.hasAttribute('disabled');\n case 'IFRAME':\n return true;\n default:\n return false;\n }\n}\n\n/**\n * @deprecated use Lit equivalent\n */\nexport function* getFocusableDescendants(\n element: Element\n): Generator<HTMLElement> {\n if (isFocusable(element)) {\n yield element as HTMLElement;\n }\n let children = Array.from(element.children);\n if (element instanceof HTMLSlotElement) {\n children = element.assignedElements();\n } else if (element.shadowRoot) {\n children.push(...Array.from(element.shadowRoot.children));\n }\n for (const child of children) {\n yield* getFocusableDescendants(child);\n }\n}\n\n/**\n * @deprecated use Lit equivalent\n */\nexport function getFirstFocusableDescendant(\n element: Element\n): HTMLElement | null {\n return getFocusableDescendants(element).next().value ?? null;\n}\n","import {h, FunctionalComponent} from '@stencil/core';\nimport {JSXBase} from '@stencil/core/internal';\nimport {HeadingProps} from './heading';\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const Heading: FunctionalComponent<\n Pick<HeadingProps, 'level'> & JSXBase.HTMLAttributes<HTMLHeadingElement>\n> = ({level, ...htmlProps}, children) => {\n const HeadingTag = level > 0 && level <= 6 ? `h${level}` : 'div';\n return <HeadingTag {...htmlProps}>{children}</HeadingTag>;\n};\n"],"version":3}
@@ -1,16 +0,0 @@
1
- import { h } from './index-3eb0b28e.js';
2
- import { B as Button } from './stencil-button-c25899df.js';
3
-
4
- /**
5
- * @deprecated should only be used for Stencil components.
6
- */
7
- const IconButton = (props) => {
8
- return (h("div", { class: "relative", part: `${props.partPrefix}-container` },
9
- h(Button, { ...props, class: "relative h-[2.6rem] w-[2.6rem] p-3", part: `${props.partPrefix}-button`, ref: props.buttonRef },
10
- h("atomic-icon", { icon: props.icon, class: "h-4 w-4 shrink-0", part: `${props.partPrefix}-icon` })),
11
- props.badge && (h("span", { part: `${props.partPrefix}-badge`, class: "bg-primary text-on-primary absolute -top-2 -right-2 block h-4 w-4 rounded-full text-center text-xs leading-4" }, props.badge))));
12
- };
13
-
14
- export { IconButton as I };
15
-
16
- //# sourceMappingURL=stencil-iconButton-ed5804d3.js.map
@@ -1 +0,0 @@
1
- {"file":"stencil-iconButton-ed5804d3.js","mappings":";;;AAUA;;;MAGa,UAAU,GAAyC,CAAC,KAAK;IACpE,QACE,WAAK,KAAK,EAAC,UAAU,EAAC,IAAI,EAAE,GAAG,KAAK,CAAC,UAAU,YAAY;QACzD,EAAC,MAAM,OACD,KAAK,EACT,KAAK,EAAC,oCAAoC,EAC1C,IAAI,EAAE,GAAG,KAAK,CAAC,UAAU,SAAS,EAClC,GAAG,EAAE,KAAK,CAAC,SAAS;YAEpB,mBACE,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,KAAK,EAAC,kBAAkB,EACxB,IAAI,EAAE,GAAG,KAAK,CAAC,UAAU,OAAO,GACnB,CACR;QACR,KAAK,CAAC,KAAK,KACV,YACE,IAAI,EAAE,GAAG,KAAK,CAAC,UAAU,QAAQ,EACjC,KAAK,EAAC,8GAA8G,IAEnH,KAAK,CAAC,KAAK,CACP,CACR,CACG,EACN;AACJ;;;;","names":[],"sources":["src/components/common/stencil-iconButton.tsx"],"sourcesContent":["import {FunctionalComponent, h, VNode} from '@stencil/core';\nimport {Button, StencilButtonProps} from './stencil-button';\n\ninterface IconButtonProps extends StencilButtonProps {\n badge?: VNode;\n buttonRef?: (el?: HTMLButtonElement) => void;\n icon: string;\n partPrefix: string;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const IconButton: FunctionalComponent<IconButtonProps> = (props) => {\n return (\n <div class=\"relative\" part={`${props.partPrefix}-container`}>\n <Button\n {...props}\n class=\"relative h-[2.6rem] w-[2.6rem] p-3\"\n part={`${props.partPrefix}-button`}\n ref={props.buttonRef}\n >\n <atomic-icon\n icon={props.icon}\n class=\"h-4 w-4 shrink-0\"\n part={`${props.partPrefix}-icon`}\n ></atomic-icon>\n </Button>\n {props.badge && (\n <span\n part={`${props.partPrefix}-badge`}\n class=\"bg-primary text-on-primary absolute -top-2 -right-2 block h-4 w-4 rounded-full text-center text-xs leading-4\"\n >\n {props.badge}\n </span>\n )}\n </div>\n );\n};\n"],"version":3}