@searchcraft/javascript-sdk 0.8.2 → 0.9.1

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 (287) hide show
  1. package/README.md +25 -37
  2. package/dist/components/defineCustomElements.d.ts +1 -0
  3. package/dist/components/defineCustomElements.js +46 -0
  4. package/dist/components/index.d.ts +44 -11
  5. package/dist/components/index.js +104 -53
  6. package/dist/components/index.js.map +1 -1
  7. package/dist/components/p-05872320.js +1462 -0
  8. package/dist/components/p-05872320.js.map +1 -0
  9. package/dist/components/{p-433f974c.js → p-11b05b94.js} +5 -5
  10. package/dist/components/p-11b05b94.js.map +1 -0
  11. package/dist/components/{p-ec0d230e.js → p-3568414f.js} +4 -4
  12. package/dist/components/p-3568414f.js.map +1 -0
  13. package/dist/components/{p-6e2eef88.js → p-5bd5c3cb.js} +17 -126
  14. package/dist/components/p-5bd5c3cb.js.map +1 -0
  15. package/dist/{cjs/SearchcraftStore-75fac5e0.js → components/p-6d8b0ead.js} +1408 -1350
  16. package/dist/components/p-6d8b0ead.js.map +1 -0
  17. package/dist/components/{p-fc7cda96.js → p-7777d986.js} +4 -4
  18. package/dist/components/{p-fc7cda96.js.map → p-7777d986.js.map} +1 -1
  19. package/dist/components/p-b0bc5cee.js +102 -0
  20. package/dist/components/p-b0bc5cee.js.map +1 -0
  21. package/dist/components/{p-4e9cd62e.js → p-bb12ab5a.js} +3 -3
  22. package/dist/components/{p-4e9cd62e.js.map → p-bb12ab5a.js.map} +1 -1
  23. package/dist/components/{p-97332d3e.js → p-cd9ba361.js} +3 -3
  24. package/dist/components/p-cd9ba361.js.map +1 -0
  25. package/dist/components/searchcraft-ad.d.ts +11 -0
  26. package/dist/components/searchcraft-ad.js +8 -0
  27. package/dist/components/searchcraft-ad.js.map +1 -0
  28. package/dist/components/searchcraft-base-search-result.js +1 -1
  29. package/dist/components/searchcraft-base-search-results.js +79 -29
  30. package/dist/components/searchcraft-base-search-results.js.map +1 -1
  31. package/dist/components/searchcraft-facet-list.js +1 -1
  32. package/dist/components/searchcraft-filter-panel.js +9 -9
  33. package/dist/components/searchcraft-filter-panel.js.map +1 -1
  34. package/dist/components/searchcraft-input-form.js +1 -1
  35. package/dist/components/searchcraft-pagination.js +2 -2
  36. package/dist/components/searchcraft-pagination.js.map +1 -1
  37. package/dist/components/searchcraft-popover-button.js +3 -3
  38. package/dist/components/searchcraft-popover-button.js.map +1 -1
  39. package/dist/components/searchcraft-popover-form.js +28 -35
  40. package/dist/components/searchcraft-popover-form.js.map +1 -1
  41. package/dist/components/searchcraft-popover-list-item.js +1 -1
  42. package/dist/components/searchcraft-popover-list-view.js +1 -1
  43. package/dist/components/searchcraft-results-info.js +2 -2
  44. package/dist/components/searchcraft-results-info.js.map +1 -1
  45. package/dist/components/searchcraft-search-results-per-page.js +3 -3
  46. package/dist/components/searchcraft-search-results-per-page.js.map +1 -1
  47. package/dist/components/searchcraft-slider.js +1 -1
  48. package/dist/components/searchcraft-theme.js +5 -5
  49. package/dist/components/searchcraft-theme.js.map +1 -1
  50. package/dist/components/searchcraft-toggle-button.js +1 -1
  51. package/dist/types/components/searchcraft-ad/searchcraft-ad.d.ts +19 -0
  52. package/dist/types/components/searchcraft-base-search-result/searchcraft-base-search-result.d.ts +5 -5
  53. package/dist/types/components/searchcraft-base-search-results/searchcraft-base-search-results.d.ts +15 -12
  54. package/dist/types/components/searchcraft-facet-list/searchcraft-facet-list.d.ts +1 -1
  55. package/dist/types/components/searchcraft-input-form/searchcraft-input-form.d.ts +6 -31
  56. package/dist/types/components/searchcraft-popover-form/searchcraft-popover-form.d.ts +2 -12
  57. package/dist/types/components/searchcraft-popover-list-view/searchcraft-popover-list-view.d.ts +4 -0
  58. package/dist/types/components/searchcraft-theme/searchcraft-theme.d.ts +2 -2
  59. package/dist/types/components.d.ts +62 -189
  60. package/dist/types/index.d.ts +14 -1
  61. package/dist/types/store/SearchcraftStore.d.ts +4 -0
  62. package/dist/types/{provider → store}/SearchcraftStore.types.d.ts +2 -1
  63. package/dist/{collection/provider/store.js → types/store/index.d.ts} +2 -2
  64. package/package.json +8 -17
  65. package/dist/cjs/SearchcraftStore-75fac5e0.js.map +0 -1
  66. package/dist/cjs/app-globals-3a1e7e63.js +0 -7
  67. package/dist/cjs/app-globals-3a1e7e63.js.map +0 -1
  68. package/dist/cjs/index-5b0b9d4c.js +0 -84
  69. package/dist/cjs/index-5b0b9d4c.js.map +0 -1
  70. package/dist/cjs/index-a81df4f0.js +0 -1577
  71. package/dist/cjs/index-a81df4f0.js.map +0 -1
  72. package/dist/cjs/index.cjs.js +0 -14
  73. package/dist/cjs/index.cjs.js.map +0 -1
  74. package/dist/cjs/loader.cjs.js +0 -17
  75. package/dist/cjs/loader.cjs.js.map +0 -1
  76. package/dist/cjs/searchcraft-base-search-result_2.cjs.entry.js +0 -152
  77. package/dist/cjs/searchcraft-base-search-result_2.cjs.entry.js.map +0 -1
  78. package/dist/cjs/searchcraft-base-search-results.cjs.entry.js +0 -97
  79. package/dist/cjs/searchcraft-base-search-results.cjs.entry.js.map +0 -1
  80. package/dist/cjs/searchcraft-button_3.cjs.entry.js +0 -88
  81. package/dist/cjs/searchcraft-button_3.cjs.entry.js.map +0 -1
  82. package/dist/cjs/searchcraft-facet-list_3.cjs.entry.js +0 -393
  83. package/dist/cjs/searchcraft-facet-list_3.cjs.entry.js.map +0 -1
  84. package/dist/cjs/searchcraft-filter-panel.cjs.entry.js +0 -113
  85. package/dist/cjs/searchcraft-filter-panel.cjs.entry.js.map +0 -1
  86. package/dist/cjs/searchcraft-input-form_2.cjs.entry.js +0 -260
  87. package/dist/cjs/searchcraft-input-form_2.cjs.entry.js.map +0 -1
  88. package/dist/cjs/searchcraft-javascript-sdk.cjs.js +0 -27
  89. package/dist/cjs/searchcraft-javascript-sdk.cjs.js.map +0 -1
  90. package/dist/cjs/searchcraft-pagination.cjs.entry.js +0 -106
  91. package/dist/cjs/searchcraft-pagination.cjs.entry.js.map +0 -1
  92. package/dist/cjs/searchcraft-popover-button.cjs.entry.js +0 -22
  93. package/dist/cjs/searchcraft-popover-button.cjs.entry.js.map +0 -1
  94. package/dist/cjs/searchcraft-popover-form.cjs.entry.js +0 -234
  95. package/dist/cjs/searchcraft-popover-form.cjs.entry.js.map +0 -1
  96. package/dist/cjs/searchcraft-popover-list-item_2.cjs.entry.js +0 -101
  97. package/dist/cjs/searchcraft-popover-list-item_2.cjs.entry.js.map +0 -1
  98. package/dist/cjs/searchcraft-results-info.cjs.entry.js +0 -80
  99. package/dist/cjs/searchcraft-results-info.cjs.entry.js.map +0 -1
  100. package/dist/cjs/searchcraft-search-results-per-page.cjs.entry.js +0 -75
  101. package/dist/cjs/searchcraft-search-results-per-page.cjs.entry.js.map +0 -1
  102. package/dist/cjs/searchcraft-select.cjs.entry.js +0 -70
  103. package/dist/cjs/searchcraft-select.cjs.entry.js.map +0 -1
  104. package/dist/cjs/searchcraft-theme.cjs.entry.js +0 -56
  105. package/dist/cjs/searchcraft-theme.cjs.entry.js.map +0 -1
  106. package/dist/cjs/styles-7b2d06f2.js +0 -28
  107. package/dist/cjs/styles-7b2d06f2.js.map +0 -1
  108. package/dist/cjs/units-fe4d8083.js +0 -88
  109. package/dist/cjs/units-fe4d8083.js.map +0 -1
  110. package/dist/collection/collection-manifest.json +0 -32
  111. package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.js +0 -302
  112. package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.js.map +0 -1
  113. package/dist/collection/components/searchcraft-base-search-result-ad/searchcraft-base-search-result-ad.js +0 -73
  114. package/dist/collection/components/searchcraft-base-search-result-ad/searchcraft-base-search-result-ad.js.map +0 -1
  115. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js +0 -313
  116. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js.map +0 -1
  117. package/dist/collection/components/searchcraft-button/searchcraft-button.js +0 -217
  118. package/dist/collection/components/searchcraft-button/searchcraft-button.js.map +0 -1
  119. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.js +0 -44
  120. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.js.map +0 -1
  121. package/dist/collection/components/searchcraft-facet-list/searchcraft-facet-list.js +0 -200
  122. package/dist/collection/components/searchcraft-facet-list/searchcraft-facet-list.js.map +0 -1
  123. package/dist/collection/components/searchcraft-filter-panel/searchcraft-filter-panel.js +0 -149
  124. package/dist/collection/components/searchcraft-filter-panel/searchcraft-filter-panel.js.map +0 -1
  125. package/dist/collection/components/searchcraft-input-form/searchcraft-input-form.js +0 -443
  126. package/dist/collection/components/searchcraft-input-form/searchcraft-input-form.js.map +0 -1
  127. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.js +0 -67
  128. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.js.map +0 -1
  129. package/dist/collection/components/searchcraft-pagination/searchcraft-pagination.js +0 -141
  130. package/dist/collection/components/searchcraft-pagination/searchcraft-pagination.js.map +0 -1
  131. package/dist/collection/components/searchcraft-popover-button/searchcraft-popover-button.js +0 -15
  132. package/dist/collection/components/searchcraft-popover-button/searchcraft-popover-button.js.map +0 -1
  133. package/dist/collection/components/searchcraft-popover-form/searchcraft-popover-form.js +0 -381
  134. package/dist/collection/components/searchcraft-popover-form/searchcraft-popover-form.js.map +0 -1
  135. package/dist/collection/components/searchcraft-popover-list-item/searchcraft-popover-list-item.js +0 -128
  136. package/dist/collection/components/searchcraft-popover-list-item/searchcraft-popover-list-item.js.map +0 -1
  137. package/dist/collection/components/searchcraft-popover-list-item-ad/searchcraft-popover-list-item-ad.js +0 -73
  138. package/dist/collection/components/searchcraft-popover-list-item-ad/searchcraft-popover-list-item-ad.js.map +0 -1
  139. package/dist/collection/components/searchcraft-popover-list-view/searchcraft-popover-list-view.js +0 -141
  140. package/dist/collection/components/searchcraft-popover-list-view/searchcraft-popover-list-view.js.map +0 -1
  141. package/dist/collection/components/searchcraft-results-info/searchcraft-results-info.js +0 -138
  142. package/dist/collection/components/searchcraft-results-info/searchcraft-results-info.js.map +0 -1
  143. package/dist/collection/components/searchcraft-search-results-per-page/searchcraft-search-results-per-page.js +0 -129
  144. package/dist/collection/components/searchcraft-search-results-per-page/searchcraft-search-results-per-page.js.map +0 -1
  145. package/dist/collection/components/searchcraft-select/searchcraft-select.js +0 -261
  146. package/dist/collection/components/searchcraft-select/searchcraft-select.js.map +0 -1
  147. package/dist/collection/components/searchcraft-slider/searchcraft-slider.js +0 -194
  148. package/dist/collection/components/searchcraft-slider/searchcraft-slider.js.map +0 -1
  149. package/dist/collection/components/searchcraft-theme/searchcraft-theme.js +0 -97
  150. package/dist/collection/components/searchcraft-theme/searchcraft-theme.js.map +0 -1
  151. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.js +0 -118
  152. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.js.map +0 -1
  153. package/dist/collection/index.js +0 -3
  154. package/dist/collection/index.js.map +0 -1
  155. package/dist/collection/provider/SearchcraftStore.js +0 -160
  156. package/dist/collection/provider/SearchcraftStore.js.map +0 -1
  157. package/dist/collection/provider/SearchcraftStore.types.js +0 -2
  158. package/dist/collection/provider/SearchcraftStore.types.js.map +0 -1
  159. package/dist/collection/provider/store.js.map +0 -1
  160. package/dist/collection/utils/facets.js +0 -128
  161. package/dist/collection/utils/facets.js.map +0 -1
  162. package/dist/collection/utils/index.js +0 -4
  163. package/dist/collection/utils/index.js.map +0 -1
  164. package/dist/collection/utils/styles.js +0 -22
  165. package/dist/collection/utils/styles.js.map +0 -1
  166. package/dist/collection/utils/units.js +0 -83
  167. package/dist/collection/utils/units.js.map +0 -1
  168. package/dist/components/p-25ee7496.js +0 -58
  169. package/dist/components/p-25ee7496.js.map +0 -1
  170. package/dist/components/p-38419178.js +0 -1625
  171. package/dist/components/p-38419178.js.map +0 -1
  172. package/dist/components/p-433f974c.js.map +0 -1
  173. package/dist/components/p-6e2eef88.js.map +0 -1
  174. package/dist/components/p-97332d3e.js.map +0 -1
  175. package/dist/components/p-bff4d3fc.js +0 -65
  176. package/dist/components/p-bff4d3fc.js.map +0 -1
  177. package/dist/components/p-de4a48b1.js +0 -65
  178. package/dist/components/p-de4a48b1.js.map +0 -1
  179. package/dist/components/p-ec0d230e.js.map +0 -1
  180. package/dist/components/searchcraft-base-search-result-ad.d.ts +0 -11
  181. package/dist/components/searchcraft-base-search-result-ad.js +0 -8
  182. package/dist/components/searchcraft-base-search-result-ad.js.map +0 -1
  183. package/dist/components/searchcraft-popover-list-item-ad.d.ts +0 -11
  184. package/dist/components/searchcraft-popover-list-item-ad.js +0 -8
  185. package/dist/components/searchcraft-popover-list-item-ad.js.map +0 -1
  186. package/dist/esm/SearchcraftStore-3cfd565a.js +0 -1625
  187. package/dist/esm/SearchcraftStore-3cfd565a.js.map +0 -1
  188. package/dist/esm/app-globals-0f993ce5.js +0 -5
  189. package/dist/esm/app-globals-0f993ce5.js.map +0 -1
  190. package/dist/esm/index-3608c57d.js +0 -1548
  191. package/dist/esm/index-3608c57d.js.map +0 -1
  192. package/dist/esm/index-72ac5051.js +0 -82
  193. package/dist/esm/index-72ac5051.js.map +0 -1
  194. package/dist/esm/index.js +0 -4
  195. package/dist/esm/index.js.map +0 -1
  196. package/dist/esm/loader.js +0 -13
  197. package/dist/esm/loader.js.map +0 -1
  198. package/dist/esm/searchcraft-base-search-result_2.entry.js +0 -147
  199. package/dist/esm/searchcraft-base-search-result_2.entry.js.map +0 -1
  200. package/dist/esm/searchcraft-base-search-results.entry.js +0 -93
  201. package/dist/esm/searchcraft-base-search-results.entry.js.map +0 -1
  202. package/dist/esm/searchcraft-button_3.entry.js +0 -82
  203. package/dist/esm/searchcraft-button_3.entry.js.map +0 -1
  204. package/dist/esm/searchcraft-facet-list_3.entry.js +0 -387
  205. package/dist/esm/searchcraft-facet-list_3.entry.js.map +0 -1
  206. package/dist/esm/searchcraft-filter-panel.entry.js +0 -109
  207. package/dist/esm/searchcraft-filter-panel.entry.js.map +0 -1
  208. package/dist/esm/searchcraft-input-form_2.entry.js +0 -255
  209. package/dist/esm/searchcraft-input-form_2.entry.js.map +0 -1
  210. package/dist/esm/searchcraft-javascript-sdk.js +0 -22
  211. package/dist/esm/searchcraft-javascript-sdk.js.map +0 -1
  212. package/dist/esm/searchcraft-pagination.entry.js +0 -102
  213. package/dist/esm/searchcraft-pagination.entry.js.map +0 -1
  214. package/dist/esm/searchcraft-popover-button.entry.js +0 -18
  215. package/dist/esm/searchcraft-popover-button.entry.js.map +0 -1
  216. package/dist/esm/searchcraft-popover-form.entry.js +0 -230
  217. package/dist/esm/searchcraft-popover-form.entry.js.map +0 -1
  218. package/dist/esm/searchcraft-popover-list-item_2.entry.js +0 -96
  219. package/dist/esm/searchcraft-popover-list-item_2.entry.js.map +0 -1
  220. package/dist/esm/searchcraft-results-info.entry.js +0 -76
  221. package/dist/esm/searchcraft-results-info.entry.js.map +0 -1
  222. package/dist/esm/searchcraft-search-results-per-page.entry.js +0 -71
  223. package/dist/esm/searchcraft-search-results-per-page.entry.js.map +0 -1
  224. package/dist/esm/searchcraft-select.entry.js +0 -66
  225. package/dist/esm/searchcraft-select.entry.js.map +0 -1
  226. package/dist/esm/searchcraft-theme.entry.js +0 -52
  227. package/dist/esm/searchcraft-theme.entry.js.map +0 -1
  228. package/dist/esm/styles-961644ef.js +0 -25
  229. package/dist/esm/styles-961644ef.js.map +0 -1
  230. package/dist/esm/units-daaf96f5.js +0 -84
  231. package/dist/esm/units-daaf96f5.js.map +0 -1
  232. package/dist/index.cjs.js +0 -1
  233. package/dist/index.js +0 -1
  234. package/dist/loader/cdn.js +0 -1
  235. package/dist/loader/index.cjs.js +0 -1
  236. package/dist/loader/index.d.ts +0 -24
  237. package/dist/loader/index.es2017.js +0 -1
  238. package/dist/loader/index.js +0 -2
  239. package/dist/loader/package.json +0 -11
  240. package/dist/searchcraft-javascript-sdk/index.esm.js +0 -2
  241. package/dist/searchcraft-javascript-sdk/index.esm.js.map +0 -1
  242. package/dist/searchcraft-javascript-sdk/p-279f3e15.entry.js +0 -2
  243. package/dist/searchcraft-javascript-sdk/p-279f3e15.entry.js.map +0 -1
  244. package/dist/searchcraft-javascript-sdk/p-2bc82b48.entry.js +0 -2
  245. package/dist/searchcraft-javascript-sdk/p-2bc82b48.entry.js.map +0 -1
  246. package/dist/searchcraft-javascript-sdk/p-2dc07b47.entry.js +0 -2
  247. package/dist/searchcraft-javascript-sdk/p-2dc07b47.entry.js.map +0 -1
  248. package/dist/searchcraft-javascript-sdk/p-37842dee.entry.js +0 -2
  249. package/dist/searchcraft-javascript-sdk/p-37842dee.entry.js.map +0 -1
  250. package/dist/searchcraft-javascript-sdk/p-38419178.js +0 -11
  251. package/dist/searchcraft-javascript-sdk/p-38419178.js.map +0 -1
  252. package/dist/searchcraft-javascript-sdk/p-3be70f20.entry.js +0 -2
  253. package/dist/searchcraft-javascript-sdk/p-3be70f20.entry.js.map +0 -1
  254. package/dist/searchcraft-javascript-sdk/p-5cdc6210.js +0 -7
  255. package/dist/searchcraft-javascript-sdk/p-5cdc6210.js.map +0 -1
  256. package/dist/searchcraft-javascript-sdk/p-5e064c07.entry.js +0 -2
  257. package/dist/searchcraft-javascript-sdk/p-5e064c07.entry.js.map +0 -1
  258. package/dist/searchcraft-javascript-sdk/p-6104fe5d.js +0 -2
  259. package/dist/searchcraft-javascript-sdk/p-6104fe5d.js.map +0 -1
  260. package/dist/searchcraft-javascript-sdk/p-6bffd3f5.entry.js +0 -2
  261. package/dist/searchcraft-javascript-sdk/p-6bffd3f5.entry.js.map +0 -1
  262. package/dist/searchcraft-javascript-sdk/p-7813f3cc.entry.js +0 -2
  263. package/dist/searchcraft-javascript-sdk/p-7813f3cc.entry.js.map +0 -1
  264. package/dist/searchcraft-javascript-sdk/p-7e13c128.js +0 -3
  265. package/dist/searchcraft-javascript-sdk/p-7e13c128.js.map +0 -1
  266. package/dist/searchcraft-javascript-sdk/p-7f4dd50c.entry.js +0 -2
  267. package/dist/searchcraft-javascript-sdk/p-7f4dd50c.entry.js.map +0 -1
  268. package/dist/searchcraft-javascript-sdk/p-9340f4e4.entry.js +0 -2
  269. package/dist/searchcraft-javascript-sdk/p-9340f4e4.entry.js.map +0 -1
  270. package/dist/searchcraft-javascript-sdk/p-a84b1548.entry.js +0 -2
  271. package/dist/searchcraft-javascript-sdk/p-a84b1548.entry.js.map +0 -1
  272. package/dist/searchcraft-javascript-sdk/p-b8ea0454.entry.js +0 -2
  273. package/dist/searchcraft-javascript-sdk/p-b8ea0454.entry.js.map +0 -1
  274. package/dist/searchcraft-javascript-sdk/p-c4a9d8ab.entry.js +0 -2
  275. package/dist/searchcraft-javascript-sdk/p-c4a9d8ab.entry.js.map +0 -1
  276. package/dist/searchcraft-javascript-sdk/p-d9551738.js +0 -2
  277. package/dist/searchcraft-javascript-sdk/p-d9551738.js.map +0 -1
  278. package/dist/searchcraft-javascript-sdk/p-e11de2d6.entry.js +0 -2
  279. package/dist/searchcraft-javascript-sdk/p-e11de2d6.entry.js.map +0 -1
  280. package/dist/searchcraft-javascript-sdk/p-e1255160.js +0 -2
  281. package/dist/searchcraft-javascript-sdk/p-e1255160.js.map +0 -1
  282. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js +0 -2
  283. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js.map +0 -1
  284. package/dist/types/components/searchcraft-base-search-result-ad/searchcraft-base-search-result-ad.d.ts +0 -14
  285. package/dist/types/components/searchcraft-popover-list-item-ad/searchcraft-popover-list-item-ad.d.ts +0 -14
  286. package/dist/types/provider/SearchcraftStore.d.ts +0 -4
  287. package/dist/types/provider/store.d.ts +0 -3
@@ -1 +0,0 @@
1
- {"version":3,"names":["getDocumentValueFromSearchResultMapping","document","mapping","fieldNames","map","fieldNameDetails","valueFound","fieldName","dataType","getFormattedTimeFromNow","Intl","NumberFormat","numberFormatLocale","numberFormatOptions","format","numberScale","filter","value","join","delimiter","getMillis","unit","millisInHour","millisInDay","millisInMonth","millisInYear","formatNumberWithCommas","number","toString","replace","timestamp","now","Date","inputTime","diffInSeconds","Math","floor","getTime","minutes","hours","days","years"],"sources":["src/utils/units.ts"],"sourcesContent":["import type { SearchResultMapping } from '@searchcraft/core';\n\n/**\n * Given a document and a SearchResultMapping, return a mapped value from the document.\n *\n * Applies formatting based on the values specified in the `SearchResultFieldName` values.\n *\n * @param document\n * @param {SearchResultMapping} mapping\n * @returns {string | undefined}\n */\nexport function getDocumentValueFromSearchResultMapping(\n document: Record<string, unknown> | undefined,\n mapping: SearchResultMapping | undefined,\n): string | undefined {\n if (document && mapping) {\n return mapping.fieldNames\n .map((fieldNameDetails) => {\n let valueFound = document[fieldNameDetails.fieldName];\n\n if (valueFound) {\n switch (fieldNameDetails.dataType) {\n case 'date': {\n // TODO: Use fieldNameDetails.DateFormatOptions to format the date\n valueFound = getFormattedTimeFromNow(valueFound as string);\n break;\n }\n case 'number': {\n valueFound = Intl.NumberFormat(\n fieldNameDetails.numberFormatLocale,\n fieldNameDetails.numberFormatOptions,\n ).format(\n (valueFound as number) * (fieldNameDetails.numberScale || 1),\n );\n break;\n }\n default:\n break;\n }\n }\n\n return valueFound;\n })\n .filter((value) => !!value)\n .join(mapping.delimiter || ' ');\n }\n}\n\nexport function getMillis(unit: 'year' | 'month' | 'day' | 'hour'): number {\n const millisInHour = 60 * 60 * 1000;\n const millisInDay = 24 * millisInHour;\n const millisInMonth = 30 * millisInDay;\n const millisInYear = 365 * millisInDay;\n\n switch (unit) {\n case 'hour':\n return millisInHour;\n case 'day':\n return millisInDay;\n case 'month':\n return millisInMonth;\n case 'year':\n return millisInYear;\n default:\n return 3600000;\n }\n}\n\nexport function formatNumberWithCommas(number) {\n return number.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n}\n\n/**\n * Given a timestamp value, returns a formatted time string for the time\n * since now.\n *\n * @param timestamp\n * @returns {string} Formatted string value\n */\nexport function getFormattedTimeFromNow(timestamp: string): string {\n const now = new Date();\n const inputTime = new Date(timestamp);\n const diffInSeconds = Math.floor(\n (now.getTime() - inputTime.getTime()) / 1000,\n );\n\n const minutes = Math.floor(diffInSeconds / 60);\n const hours = Math.floor(minutes / 60);\n const days = Math.floor(hours / 24);\n const years = Math.floor(days / 365);\n\n if (minutes < 60) {\n return `${minutes}m ago`;\n }\n if (hours < 24) {\n return `${hours}h ago`;\n }\n if (days < 365) {\n return `${days}d ago`;\n }\n return `${years}y ago`;\n}\n"],"mappings":"SAWgBA,EACdC,EACAC,GAEA,GAAID,GAAYC,EAAS,CACvB,OAAOA,EAAQC,WACZC,KAAKC,IACJ,IAAIC,EAAaL,EAASI,EAAiBE,WAE3C,GAAID,EAAY,CACd,OAAQD,EAAiBG,UACvB,IAAK,OAAQ,CAEXF,EAAaG,EAAwBH,GACrC,K,CAEF,IAAK,SAAU,CACbA,EAAaI,KAAKC,aAChBN,EAAiBO,mBACjBP,EAAiBQ,qBACjBC,OACCR,GAAyBD,EAAiBU,aAAe,IAE5D,K,GAON,OAAOT,CAAU,IAElBU,QAAQC,KAAYA,IACpBC,KAAKhB,EAAQiB,WAAa,I,CAEjC,C,SAEgBC,EAAUC,GACxB,MAAMC,EAAe,GAAK,GAAK,IAC/B,MAAMC,EAAc,GAAKD,EACzB,MAAME,EAAgB,GAAKD,EAC3B,MAAME,EAAe,IAAMF,EAE3B,OAAQF,GACN,IAAK,OACH,OAAOC,EACT,IAAK,MACH,OAAOC,EACT,IAAK,QACH,OAAOC,EACT,IAAK,OACH,OAAOC,EACT,QACE,OAAO,KAEb,C,SAEgBC,EAAuBC,GACrC,OAAOA,EAAOC,WAAWC,QAAQ,wBAAyB,IAC5D,C,SASgBpB,EAAwBqB,GACtC,MAAMC,EAAM,IAAIC,KAChB,MAAMC,EAAY,IAAID,KAAKF,GAC3B,MAAMI,EAAgBC,KAAKC,OACxBL,EAAIM,UAAYJ,EAAUI,WAAa,KAG1C,MAAMC,EAAUH,KAAKC,MAAMF,EAAgB,IAC3C,MAAMK,EAAQJ,KAAKC,MAAME,EAAU,IACnC,MAAME,EAAOL,KAAKC,MAAMG,EAAQ,IAChC,MAAME,EAAQN,KAAKC,MAAMI,EAAO,KAEhC,GAAIF,EAAU,GAAI,CAChB,MAAO,GAAGA,Q,CAEZ,GAAIC,EAAQ,GAAI,CACd,MAAO,GAAGA,Q,CAEZ,GAAIC,EAAO,IAAK,CACd,MAAO,GAAGA,Q,CAEZ,MAAO,GAAGC,QACZ,Q","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as s,c as t,h as e}from"./p-7e13c128.js";import{u as r}from"./p-38419178.js";import{s as a}from"./p-d9551738.js";const i=class{constructor(e){s(this,e);this.noResults=t(this,"noResults",7)}customStylesForResults;searchResultMappings;resultImagePlacement="right";buttonLabel;buttonTarget="_blank";buttonRel;containerTarget="_blank";containerRel;noResults;searchTerm="";searchClientResponseItems=[];adClientResponseItems=[];searchResultsPerPage;searchResultsPage;unsubscribe=()=>{};componentDidLoad(){this.unsubscribe=r.subscribe((s=>this.handleStateChange(s)));const s=r.getState();this.searchClientResponseItems=s.searchClientResponseItems;this.searchTerm=s.searchTerm}disconnectedCallback(){this.unsubscribe?.()}handleStateChange(s){this.searchClientResponseItems=[...s.searchClientResponseItems];this.adClientResponseItems=[...s.adClientResponseItems];this.searchTerm=s.searchTerm;this.searchResultsPage=s.searchResultsPage;this.searchResultsPerPage=s.searchResultsPerPage}render(){if(this.searchTerm.trim()===""){return e("div",{class:"searchcraft-search-results-empty-state-container"},e("slot",{name:"empty-search"}))}if(this.searchClientResponseItems.length===0){return}if(this.searchTerm.length>0&&this.searchClientResponseItems.length===0){this.noResults?.emit()}let s="";if(this.customStylesForResults){s=typeof this.customStylesForResults==="string"?this.customStylesForResults:a(this.customStylesForResults)}return e("div",{class:"searchcraft-search-results-container"},this.adClientResponseItems?.map((s=>e("searchcraft-base-search-result-ad",{adClientResponseItem:s,key:s.adId}))),this.searchClientResponseItems?.map(((t,r)=>e("searchcraft-base-search-result",{key:t.id,"custom-styles":s,"image-placement":this.resultImagePlacement,"container-rel":this.containerRel,"container-target":this.containerTarget,"button-label":this.buttonLabel||"View more","button-rel":this.buttonRel,"button-target":this.buttonTarget,"document-position":this.searchResultsPerPage*this.searchResultsPage+r,searchResultMappings:this.searchResultMappings,item:t}))),this.searchTerm.length>0&&this.searchClientResponseItems.length===0&&e("div",{class:"searchcraft-search-results-error-message-container"},e("searchcraft-error-message",{"error-message":`No search results found for "${this.searchTerm}" query`})))}};export{i as searchcraft_base_search_results};
2
- //# sourceMappingURL=p-6bffd3f5.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["SearchcraftBaseSearchResults","customStylesForResults","searchResultMappings","resultImagePlacement","buttonLabel","buttonTarget","buttonRel","containerTarget","containerRel","noResults","searchTerm","searchClientResponseItems","adClientResponseItems","searchResultsPerPage","searchResultsPage","unsubscribe","componentDidLoad","this","useSearchcraftStore","subscribe","state","handleStateChange","currentState","getState","disconnectedCallback","render","trim","h","class","name","length","emit","serializedStyles","serializeStyles","map","item","adClientResponseItem","key","adId","index","id"],"sources":["src/components/searchcraft-base-search-results/searchcraft-base-search-results.tsx"],"sourcesContent":["import {\n Component,\n h,\n Event,\n Prop,\n State,\n type EventEmitter,\n} from '@stencil/core';\n\nimport type {\n AdClientResponseItem,\n SearchClientResponseItem,\n} from '@searchcraft/core';\n\nimport { type SearchcraftState, useSearchcraftStore } from '@provider/store';\n\nimport { serializeStyles } from '@utils';\nimport type { SearchResultMappings } from '@searchcraft/core';\n\n/**\n * This web component is responsible for displaying the results of a search query.\n * Once a query is submitted, the component formats and presents an ordered list of the results.\n *\n * ## Usage\n * ```html\n * <!-- index.html -->\n * <searchcraft-base-search-results\n * ad-interval=\"4\"\n * place-ad-at-start=\"false\"\n * result-image-placement=\"right\"\n * />\n * ```\n *\n * ```js\n * // index.js\n * const baseSearchResults = document.querySelector('searchcraft-base-search-results');\n *\n * baseSearchResults.searchResultMappings = containerHref: {\n * fieldNames: [\n * {\n * fieldName: 'canonical_link',\n * dataType: 'text',\n * },\n * ],\n * };\n *\n * baseSearchResults.addEventListener('noResults', () => {\n * console.log('No search results found');\n * });\n * ```\n */\n@Component({\n tag: 'searchcraft-base-search-results',\n shadow: false,\n})\nexport class SearchcraftBaseSearchResults {\n /**\n * A custom styles object.\n */\n @Prop() customStylesForResults:\n | string\n | Record<string, Record<string, string>>\n | undefined;\n /**\n * Formats the content rendered for each result.\n */\n @Prop() searchResultMappings: SearchResultMappings | undefined;\n /**\n * The placement of the image for each result.\n */\n @Prop() resultImagePlacement: 'left' | 'right' = 'right';\n /**\n * The label for the button rendered when containerHref is not present for each result.\n */\n @Prop() buttonLabel: string | undefined;\n /**\n * Where to open the link for the button rendered when containerHref is not present for each result.\n */\n @Prop() buttonTarget: '_blank' | '_self' | '_top' | '_parent' = '_blank';\n /**\n * The relationship between the current document and the link for the button rendered when containerHref is not present for each result.\n */\n @Prop() buttonRel: 'noreferrer' | 'noopener' | 'nofollow' | undefined;\n /**\n * Where to open the link for the containing element for each result.\n */\n @Prop() containerTarget: '_blank' | '_self' | '_top' | '_parent' = '_blank';\n /**\n * The relationship between the current document and the link for the containing element for each result.\n */\n @Prop() containerRel: 'noreferrer' | 'noopener' | 'nofollow' | undefined;\n\n /**\n * When no results are returned.\n */\n @Event() noResults?: EventEmitter<void>;\n\n @State() searchTerm = '';\n @State() searchClientResponseItems: SearchClientResponseItem[] = [];\n @State() adClientResponseItems: AdClientResponseItem[] = [];\n @State() searchResultsPerPage;\n @State() searchResultsPage;\n\n private unsubscribe: () => void = () => {};\n\n componentDidLoad() {\n this.unsubscribe = useSearchcraftStore.subscribe((state) =>\n this.handleStateChange(state),\n );\n const currentState = useSearchcraftStore.getState();\n this.searchClientResponseItems = currentState.searchClientResponseItems;\n this.searchTerm = currentState.searchTerm;\n }\n\n disconnectedCallback() {\n this.unsubscribe?.();\n }\n\n handleStateChange(state: SearchcraftState) {\n this.searchClientResponseItems = [...state.searchClientResponseItems];\n this.adClientResponseItems = [...state.adClientResponseItems];\n this.searchTerm = state.searchTerm;\n this.searchResultsPage = state.searchResultsPage;\n this.searchResultsPerPage = state.searchResultsPerPage;\n }\n\n render() {\n if (this.searchTerm.trim() === '') {\n return (\n <div class='searchcraft-search-results-empty-state-container'>\n <slot name='empty-search' />\n </div>\n );\n }\n\n if (this.searchClientResponseItems.length === 0) {\n return;\n }\n\n if (\n this.searchTerm.length > 0 &&\n this.searchClientResponseItems.length === 0\n ) {\n this.noResults?.emit();\n }\n\n let serializedStyles = '';\n if (this.customStylesForResults) {\n serializedStyles =\n typeof this.customStylesForResults === 'string'\n ? this.customStylesForResults\n : serializeStyles(this.customStylesForResults);\n }\n\n return (\n <div class='searchcraft-search-results-container'>\n {this.adClientResponseItems?.map((item) => (\n <searchcraft-base-search-result-ad\n adClientResponseItem={item}\n key={item.adId}\n />\n ))}\n {this.searchClientResponseItems?.map((item, index) => (\n <searchcraft-base-search-result\n key={item.id}\n custom-styles={serializedStyles}\n image-placement={this.resultImagePlacement}\n container-rel={this.containerRel}\n container-target={this.containerTarget}\n button-label={this.buttonLabel || 'View more'}\n button-rel={this.buttonRel}\n button-target={this.buttonTarget}\n document-position={\n this.searchResultsPerPage * this.searchResultsPage + index\n }\n searchResultMappings={this.searchResultMappings}\n item={item}\n />\n ))}\n {this.searchTerm.length > 0 &&\n this.searchClientResponseItems.length === 0 && (\n <div class='searchcraft-search-results-error-message-container'>\n <searchcraft-error-message\n error-message={`No search results found for \"${this.searchTerm}\" query`}\n />\n </div>\n )}\n </div>\n );\n }\n}\n"],"mappings":"gIAuDaA,EAA4B,M,8DAI/BC,uBAOAC,qBAIAC,qBAAyC,QAIzCC,YAIAC,aAAwD,SAIxDC,UAIAC,gBAA2D,SAI3DC,aAKCC,UAEAC,WAAa,GACbC,0BAAwD,GACxDC,sBAAgD,GAChDC,qBACAC,kBAEDC,YAA0B,OAElC,gBAAAC,GACEC,KAAKF,YAAcG,EAAoBC,WAAWC,GAChDH,KAAKI,kBAAkBD,KAEzB,MAAME,EAAeJ,EAAoBK,WACzCN,KAAKN,0BAA4BW,EAAaX,0BAC9CM,KAAKP,WAAaY,EAAaZ,U,CAGjC,oBAAAc,GACEP,KAAKF,e,CAGP,iBAAAM,CAAkBD,GAChBH,KAAKN,0BAA4B,IAAIS,EAAMT,2BAC3CM,KAAKL,sBAAwB,IAAIQ,EAAMR,uBACvCK,KAAKP,WAAaU,EAAMV,WACxBO,KAAKH,kBAAoBM,EAAMN,kBAC/BG,KAAKJ,qBAAuBO,EAAMP,oB,CAGpC,MAAAY,GACE,GAAIR,KAAKP,WAAWgB,SAAW,GAAI,CACjC,OACEC,EAAA,OAAKC,MAAM,oDACTD,EAAA,QAAME,KAAK,iB,CAKjB,GAAIZ,KAAKN,0BAA0BmB,SAAW,EAAG,CAC/C,M,CAGF,GACEb,KAAKP,WAAWoB,OAAS,GACzBb,KAAKN,0BAA0BmB,SAAW,EAC1C,CACAb,KAAKR,WAAWsB,M,CAGlB,IAAIC,EAAmB,GACvB,GAAIf,KAAKhB,uBAAwB,CAC/B+B,SACSf,KAAKhB,yBAA2B,SACnCgB,KAAKhB,uBACLgC,EAAgBhB,KAAKhB,uB,CAG7B,OACE0B,EAAA,OAAKC,MAAM,wCACRX,KAAKL,uBAAuBsB,KAAKC,GAChCR,EAAA,qCACES,qBAAsBD,EACtBE,IAAKF,EAAKG,SAGbrB,KAAKN,2BAA2BuB,KAAI,CAACC,EAAMI,IAC1CZ,EAAA,kCACEU,IAAKF,EAAKK,GAAE,gBACGR,EAAgB,kBACdf,KAAKd,qBAAoB,gBAC3Bc,KAAKT,aAAY,mBACdS,KAAKV,gBAAe,eACxBU,KAAKb,aAAe,YAAW,aACjCa,KAAKX,UAAS,gBACXW,KAAKZ,aAAY,oBAE9BY,KAAKJ,qBAAuBI,KAAKH,kBAAoByB,EAEvDrC,qBAAsBe,KAAKf,qBAC3BiC,KAAMA,MAGTlB,KAAKP,WAAWoB,OAAS,GACxBb,KAAKN,0BAA0BmB,SAAW,GACxCH,EAAA,OAAKC,MAAM,sDACTD,EAAA,6CACiB,gCAAgCV,KAAKP,uB","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,c as e,h as s}from"./p-7e13c128.js";import{u as c,g as a}from"./p-38419178.js";import{p as i}from"./p-d9551738.js";import{c as r}from"./p-5cdc6210.js";const n="@searchcraft/javascript-sdk";const o="0.8.2";const d="Searchcraft Javascript SDK";const h="Searchcraft";const p="Apache-2.0";const l="dist/index.cjs.js";const f="dist/index.js";const u="dist/types/index.d.ts";const b="dist/collection/collection-manifest.json";const m="dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js";const y={".":{import:"./dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js",require:"./dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.cjs.js",types:"./dist/types/index.d.ts"},"./components":{import:"./dist/components/index.js",types:"./dist/components/index.d.ts"},"./loader":{import:"./dist/loader/index.js",require:"./dist/loader/index.cjs",types:"./dist/loader/index.d.ts"},"./dist/components/*":{import:"./dist/components/*",types:"./dist/components/*"}};const k={type:"git",url:"https://bitbucket.org/madebychalk/searchcraft-javascript-sdks/"};const v=["dist/"];const g={build:"stencil build && yarn docs",docs:"typedoc --options typedoc.json",dev:"stencil build --dev --watch",test:"stencil test --spec --e2e","test.watch":"stencil test --spec --e2e --watchAll",generate:"stencil generate"};const j={"@stencil/vue-output-target":"^0.9.2",classnames:"^2.3.2"};const w={"@searchcraft/core":"^0.8.2","@searchcraft/javascript-sdk":"*","@stencil/core":"^4.7.0","@stencil/react-output-target":"^0.8.2","@stencil/sass":"^3.0.12","@types/node":"^16.18.11",zustand:"^5.0.1"};const C={name:n,private:false,version:o,description:d,author:h,license:p,main:l,module:f,types:u,collection:b,"collection:main":"dist/collection/index.js",unpkg:m,exports:y,repository:k,files:v,scripts:g,dependencies:j,devDependencies:w};const x=class{constructor(s){t(this,s);this.inputCleared=e(this,"inputCleared",7);this.noResultsReceived=e(this,"noResultsReceived",7);this.inputFocus=e(this,"inputFocus",7);this.inputBlur=e(this,"inputBlur",7);this.inputInit=e(this,"inputInit",7);this.querySubmit=e(this,"querySubmit",7)}config;autoSearch=true;buttonPlacement="none";buttonLabel;inputLabel;customStyles={};placeholderValue="Enter Search";searchTerm="";inputCleared;noResultsReceived;inputFocus;inputBlur;inputInit;querySubmit;inputValue=this.searchTerm;error=false;isSearchcraftInitialized=false;searchStore=c.getState();init(){if(this.config&&!this.isSearchcraftInitialized){const t=new a(this.config,{sdkName:C.name,sdkVersion:C.version});this.searchStore.initialize(t,true);this.isSearchcraftInitialized=true;this.inputInit?.emit()}}componentDidLoad(){this.init()}onConfigChange(){this.init()}handleOnInput=t=>{const e=t.target;this.inputValue=e.value;if(!this.autoSearch){return}if(e.value.trim()===""){this.inputCleared?.emit()}this.performSearch(e.value)};performSearch=async t=>{if(t===c.getState().searchTerm){return}this.searchTerm=t.trim();this.error=false;this.searchStore.setSearchTerm(this.searchTerm);this.querySubmit?.emit(this.searchTerm);try{await this.searchStore.search()}catch(t){this.error=true;this.inputCleared?.emit()}};handleClearInput=()=>{this.inputValue="";this.searchTerm="";this.searchStore.setSearchTerm("");this.searchStore.setSearchClientResponseItems([]);this.error=false;this.inputCleared?.emit()};handleFormSubmit=async t=>{t.preventDefault();await this.performSearch(this.searchTerm)};render(){const t=i(this.customStyles);const e=this.inputValue.length>0;const c=r("searchcraft-input-grid",{"searchcraft-input-grid-buttonLeft":this.buttonPlacement==="left","searchcraft-input-grid-buttonRight":this.buttonPlacement==="right","searchcraft-input-grid-buttonNone":this.buttonPlacement==="none"});const a=this.inputLabel||this.error;const n={gap:a?"4px 8px":"0px 8px"};return s("form",{key:"bc665c50db8de601a3c95266bdf063ebb988d6a8",class:"searchcraft-input-form",onSubmit:this.handleFormSubmit},s("div",{key:"a6936858c08d866b66b887c7ae03b35961cf04a1",class:c,style:n},s("div",{key:"915ac892fccb771f1c5338cd2d52f16f1793615d",class:"searchcraft-input-button-wrapper"},s("searchcraft-button",{key:"81447da28dcb9cb80a8cdf0c6765c909c2746585",onButtonClick:this.handleFormSubmit,label:this.buttonLabel})),this.inputLabel&&s("div",{key:"939c3407d16075be25ff23bf9b379c05ba1a66d4",class:"searchcraft-input-label-wrapper"},s("searchcraft-input-label",{key:"9d9c4043c04132b27710cca47abf102a188a80b9",label:this.inputLabel})),this.error&&s("div",{key:"7e309f8a5c81a41bdd593f4e4ee1ba30c531c97d",class:"searchcraft-input-error-wrapper"},s("searchcraft-error-message",{key:"de947c04f0948e36786f50ac65720eeb598ae7bf",errorMessage:"Something went wrong."})),s("div",{key:"bcf774e3fa5164ab838b634badf2002495437fe7",class:"searchcraft-input-wrapper"},s("input",{key:"fd9759559712a39d3493e069ddddf7c267879c84",autoComplete:"off",class:"searchcraft-input",onFocus:()=>this.inputFocus?.emit(),onBlur:()=>this.inputBlur?.emit(),onInput:t=>{this.handleOnInput(t)},placeholder:this.placeholderValue,style:t,type:"text",value:this.inputValue}),s("div",{key:"8564b18962feeea8d9ab8bb46af4ba28a089d8f4",class:"searchcraft-input-search-icon-wrapper"},s("svg",{key:"90c3636ea306ed70887d76deaf058ab3ace61134",class:"searchcraft-input-search-icon",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-labelledby":"searchcraft-title"},s("title",{key:"c9921263b87df28e06bab9990e324aa1bebac767",id:"searchcraft-title"},"Searchcraft Search Icon Light"),s("path",{key:"bb82073fd722ff4a74e1a86c74cdf0dd9a8080b4",d:"M17.5 17.5L13.875 13.875M15.8333 9.16667C15.8333 12.8486 12.8486 15.8333 9.16667 15.8333C5.48477 15.8333 2.5 12.8486 2.5 9.16667C2.5 5.48477 5.48477 2.5 9.16667 2.5C12.8486 2.5 15.8333 5.48477 15.8333 9.16667Z",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}))),e&&s("button",{key:"e708cb9426171bfdfb29e0a98206d086fa14e15e",type:"button",class:"searchcraft-input-clear-button",onClick:this.handleClearInput},s("svg",{key:"243b6eacc68fa8cc57d5e11b9b317d7fe581406f",class:"searchcraft-input-clear-icon",viewBox:"0 0 22 22",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-labelledby":"icon-title"},s("title",{key:"d8a8b44fe04345b5b27ba33ec4ba510500eab3bf",id:"icon-title"},"Searchcraft Clear Input Icon Light"),s("path",{key:"0602cbff7aac6755dabb496b84e6ef3e4e2ac7a6",d:"M14 8L8 14M8 8L14 14M21 11C21 16.5228 16.5228 21 11 21C5.47715 21 1 16.5228 1 11C1 5.47715 5.47715 1 11 1C16.5228 1 21 5.47715 21 11Z",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}))))))}static get watchers(){return{config:["onConfigChange"]}}};const S=class{constructor(e){t(this,e)}popoverResultMappings;searchClientResponseItems;adClientResponseItems;searchResultsPage;searchResultsPerPage;render(){return s("div",{key:"a869d98e96f6fbbc80ecb79058c4753b4a3a8b1d",class:"searchcraft-popover-list-view"},this.adClientResponseItems?.map((t=>s("searchcraft-popover-list-item-ad",{adClientResponseItem:t,key:t.adId}))),this.searchClientResponseItems?.map(((t,e)=>s("searchcraft-popover-list-item",{item:t,key:t.id,popoverResultMappings:this.popoverResultMappings,documentPosition:this.searchResultsPerPage*(this.searchResultsPage-1)+e}))))}};export{x as searchcraft_input_form,S as searchcraft_popover_list_view};
2
- //# sourceMappingURL=p-7813f3cc.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["SearchcraftInput","config","autoSearch","buttonPlacement","buttonLabel","inputLabel","customStyles","placeholderValue","searchTerm","inputCleared","noResultsReceived","inputFocus","inputBlur","inputInit","querySubmit","inputValue","this","error","isSearchcraftInitialized","searchStore","useSearchcraftStore","getState","init","searchcraft","SearchcraftCore","sdkName","packageJson","name","sdkVersion","version","initialize","emit","componentDidLoad","onConfigChange","handleOnInput","event","input","target","value","trim","performSearch","async","setSearchTerm","search","handleClearInput","setSearchClientResponseItems","handleFormSubmit","preventDefault","render","validatedCustomStyles","parseCustomStyles","isShowingClearButton","length","inputGridClassNames","classNames","shouldHaveVerticalGap","inputGridStyles","gap","h","key","class","onSubmit","style","onButtonClick","label","errorMessage","autoComplete","onFocus","onBlur","onInput","placeholder","type","viewBox","fill","xmlns","id","d","stroke","onClick","SearchcraftPopoverListView","popoverResultMappings","searchClientResponseItems","adClientResponseItems","searchResultsPage","searchResultsPerPage","map","item","adClientResponseItem","adId","index","documentPosition"],"sources":["src/components/searchcraft-input-form/searchcraft-input-form.tsx","src/components/searchcraft-popover-list-view/searchcraft-popover-list-view.tsx"],"sourcesContent":["import {\n Component,\n h,\n Prop,\n State,\n Event,\n type EventEmitter,\n Watch,\n} from '@stencil/core';\n\nimport { type SearchcraftConfig, SearchcraftCore } from '@searchcraft/core';\nimport packageJson from '../../../package.json';\n\nimport { parseCustomStyles } from '@utils';\nimport { useSearchcraftStore } from '@provider/store';\nimport classNames from 'classnames';\n\n/**\n * This web component provides a user-friendly interface for querying an indexed dataset, enabling users to easily search large collections of data.\n * It abstracts the complexities of index-based searching, making it accessible to users of all technical levels.\n *\n * ## Usage\n * ```html\n * <!-- index.html -->\n * <searchcraft-input-form placeholder-value=\"Search here\" />\n * ```\n *\n * ```js\n * // index.js\n * const searchInputForm = document.querySelector('searchcraft-input-form');\n *\n * searchInputForm.config = {\n * index: [],\n * readKey: '',\n * endpointUrl: '',\n * };\n *\n * searchForm.addEventListener('querySubmit', (event) => {\n * console.log('Query submitted', event.detail);\n * });\n * ```\n */\n@Component({\n tag: 'searchcraft-input-form',\n shadow: false,\n})\nexport class SearchcraftInput {\n /**\n * The Searchcraft config object.\n */\n @Prop() config: SearchcraftConfig | undefined;\n /**\n * Whether or not to automatically submit the search term when the input changes.\n */\n @Prop() autoSearch = true;\n /**\n * Where to place the search button.\n */\n @Prop() buttonPlacement: 'left' | 'right' | 'none' = 'none';\n /**\n * The label for the submit button.\n */\n @Prop() buttonLabel: string | undefined;\n /**\n * The label rendered above the input.\n */\n @Prop() inputLabel: string | undefined;\n /**\n * A custom styles object to be applied to the input element.\n */\n @Prop() customStyles: string | Record<string, string> = {};\n /**\n * The input element's placeholder value.\n */\n @Prop() placeholderValue = 'Enter Search';\n /**\n * The starting value of the input element.\n */\n @Prop() searchTerm = '';\n /**\n * When the input is cleared.\n */\n @Event() inputCleared?: EventEmitter<void>;\n /**\n * When no results are returned.\n */\n @Event() noResultsReceived?: EventEmitter<void>;\n /**\n * When the input becomes focused.\n */\n @Event() inputFocus?: EventEmitter<void>;\n /**\n * When the input becomes unfocused.\n */\n @Event() inputBlur?: EventEmitter<void>;\n /**\n * Event emitted when input initializes.\n */\n @Event() inputInit?: EventEmitter<void>;\n /**\n * Event emitted when a query has been submitted.\n */\n @Event() querySubmit?: EventEmitter<string>;\n\n @State() inputValue = this.searchTerm;\n @State() error = false;\n @State() isSearchcraftInitialized = false;\n\n private searchStore = useSearchcraftStore.getState();\n\n init() {\n if (this.config && !this.isSearchcraftInitialized) {\n const searchcraft = new SearchcraftCore(this.config, {\n sdkName: packageJson.name,\n sdkVersion: packageJson.version,\n });\n this.searchStore.initialize(searchcraft, true);\n this.isSearchcraftInitialized = true;\n this.inputInit?.emit();\n }\n }\n\n componentDidLoad() {\n this.init();\n }\n\n @Watch('config')\n onConfigChange() {\n this.init();\n }\n\n handleOnInput = (event: Event) => {\n const input = event.target as HTMLInputElement;\n this.inputValue = input.value;\n\n if (!this.autoSearch) {\n return;\n }\n\n if (input.value.trim() === '') {\n this.inputCleared?.emit();\n }\n\n this.performSearch(input.value);\n };\n\n private performSearch = async (value: string) => {\n if (value === useSearchcraftStore.getState().searchTerm) {\n return;\n }\n\n this.searchTerm = value.trim();\n this.error = false;\n this.searchStore.setSearchTerm(this.searchTerm);\n this.querySubmit?.emit(this.searchTerm);\n\n try {\n await this.searchStore.search();\n } catch (error) {\n this.error = true;\n this.inputCleared?.emit();\n }\n };\n\n handleClearInput = () => {\n this.inputValue = '';\n this.searchTerm = '';\n this.searchStore.setSearchTerm('');\n this.searchStore.setSearchClientResponseItems([]);\n this.error = false;\n\n this.inputCleared?.emit();\n };\n\n handleFormSubmit = async (event: Event) => {\n event.preventDefault();\n await this.performSearch(this.searchTerm);\n };\n\n render() {\n const validatedCustomStyles = parseCustomStyles(this.customStyles);\n\n const isShowingClearButton = this.inputValue.length > 0;\n\n const inputGridClassNames = classNames('searchcraft-input-grid', {\n 'searchcraft-input-grid-buttonLeft': this.buttonPlacement === 'left',\n 'searchcraft-input-grid-buttonRight': this.buttonPlacement === 'right',\n 'searchcraft-input-grid-buttonNone': this.buttonPlacement === 'none',\n });\n\n const shouldHaveVerticalGap = this.inputLabel || this.error;\n const inputGridStyles = {\n gap: shouldHaveVerticalGap ? '4px 8px' : '0px 8px',\n };\n\n return (\n <form class='searchcraft-input-form' onSubmit={this.handleFormSubmit}>\n <div class={inputGridClassNames} style={inputGridStyles}>\n <div class='searchcraft-input-button-wrapper'>\n <searchcraft-button\n onButtonClick={this.handleFormSubmit}\n label={this.buttonLabel}\n />\n </div>\n {this.inputLabel && (\n <div class='searchcraft-input-label-wrapper'>\n <searchcraft-input-label label={this.inputLabel} />\n </div>\n )}\n {this.error && (\n <div class='searchcraft-input-error-wrapper'>\n <searchcraft-error-message errorMessage='Something went wrong.' />\n </div>\n )}\n <div class='searchcraft-input-wrapper'>\n <input\n autoComplete='off'\n class='searchcraft-input'\n onFocus={() => this.inputFocus?.emit()}\n onBlur={() => this.inputBlur?.emit()}\n onInput={(event) => {\n this.handleOnInput(event);\n }}\n placeholder={this.placeholderValue}\n style={validatedCustomStyles}\n type='text'\n value={this.inputValue}\n />\n <div class='searchcraft-input-search-icon-wrapper'>\n <svg\n class='searchcraft-input-search-icon'\n viewBox='0 0 20 20'\n fill='none'\n xmlns='http://www.w3.org/2000/svg'\n aria-labelledby='searchcraft-title'\n >\n <title id='searchcraft-title'>\n Searchcraft Search Icon Light\n </title>\n <path\n d='M17.5 17.5L13.875 13.875M15.8333 9.16667C15.8333 12.8486 12.8486 15.8333 9.16667 15.8333C5.48477 15.8333 2.5 12.8486 2.5 9.16667C2.5 5.48477 5.48477 2.5 9.16667 2.5C12.8486 2.5 15.8333 5.48477 15.8333 9.16667Z'\n stroke='currentColor'\n stroke-width='1.5'\n stroke-linecap='round'\n stroke-linejoin='round'\n />\n </svg>\n </div>\n {isShowingClearButton && (\n <button\n type='button'\n class='searchcraft-input-clear-button'\n onClick={this.handleClearInput}\n >\n <svg\n class='searchcraft-input-clear-icon'\n viewBox='0 0 22 22'\n fill='none'\n xmlns='http://www.w3.org/2000/svg'\n aria-labelledby='icon-title'\n >\n <title id='icon-title'>\n Searchcraft Clear Input Icon Light\n </title>\n <path\n d='M14 8L8 14M8 8L14 14M21 11C21 16.5228 16.5228 21 11 21C5.47715 21 1 16.5228 1 11C1 5.47715 5.47715 1 11 1C16.5228 1 21 5.47715 21 11Z'\n stroke='currentColor'\n stroke-width='1.5'\n stroke-linecap='round'\n stroke-linejoin='round'\n />\n </svg>\n </button>\n )}\n </div>\n </div>\n </form>\n );\n }\n}\n","import type {\n AdClientResponseItem,\n SearchClientResponseItem,\n} from '@searchcraft/core';\nimport { Component, h, Prop } from '@stencil/core';\n\nimport type { PopoverResultMappings } from '@searchcraft/core';\n\n/**\n * This web component is designed to display a list of results within a popover interface.\n * It is consumed within the `searchcraft-popover-form` component.\n *\n * ## Usage\n * ```html\n * <!-- index.html -->\n * <searchcraft-popover-list-view />\n * ```\n */\n@Component({\n tag: 'searchcraft-popover-list-view',\n shadow: false,\n})\nexport class SearchcraftPopoverListView {\n /**\n * The mappings that define how the data in the documents are mapped to the\n * list-view-item elements.\n */\n @Prop() popoverResultMappings: PopoverResultMappings | undefined;\n /**\n * The items to render in the list view.\n */\n @Prop() searchClientResponseItems: SearchClientResponseItem[] | undefined;\n @Prop() adClientResponseItems: AdClientResponseItem[] | undefined;\n @Prop() searchResultsPage!: number;\n @Prop() searchResultsPerPage!: number;\n\n render() {\n return (\n <div class='searchcraft-popover-list-view'>\n {this.adClientResponseItems?.map((item) => (\n <searchcraft-popover-list-item-ad\n adClientResponseItem={item}\n key={item.adId}\n />\n ))}\n {this.searchClientResponseItems?.map((item, index) => (\n <searchcraft-popover-list-item\n item={item}\n key={item.id}\n popoverResultMappings={this.popoverResultMappings}\n documentPosition={\n this.searchResultsPerPage * (this.searchResultsPage - 1) + index\n }\n />\n ))}\n </div>\n );\n }\n}\n"],"mappings":"6zDA8CaA,EAAgB,M,mRAInBC,OAIAC,WAAa,KAIbC,gBAA6C,OAI7CC,YAIAC,WAIAC,aAAgD,GAIhDC,iBAAmB,eAInBC,WAAa,GAIZC,aAIAC,kBAIAC,WAIAC,UAIAC,UAIAC,YAEAC,WAAaC,KAAKR,WAClBS,MAAQ,MACRC,yBAA2B,MAE5BC,YAAcC,EAAoBC,WAE1C,IAAAC,GACE,GAAIN,KAAKf,SAAWe,KAAKE,yBAA0B,CACjD,MAAMK,EAAc,IAAIC,EAAgBR,KAAKf,OAAQ,CACnDwB,QAASC,EAAYC,KACrBC,WAAYF,EAAYG,UAE1Bb,KAAKG,YAAYW,WAAWP,EAAa,MACzCP,KAAKE,yBAA2B,KAChCF,KAAKH,WAAWkB,M,EAIpB,gBAAAC,GACEhB,KAAKM,M,CAIP,cAAAW,GACEjB,KAAKM,M,CAGPY,cAAiBC,IACf,MAAMC,EAAQD,EAAME,OACpBrB,KAAKD,WAAaqB,EAAME,MAExB,IAAKtB,KAAKd,WAAY,CACpB,M,CAGF,GAAIkC,EAAME,MAAMC,SAAW,GAAI,CAC7BvB,KAAKP,cAAcsB,M,CAGrBf,KAAKwB,cAAcJ,EAAME,MAAM,EAGzBE,cAAgBC,MAAOH,IAC7B,GAAIA,IAAUlB,EAAoBC,WAAWb,WAAY,CACvD,M,CAGFQ,KAAKR,WAAa8B,EAAMC,OACxBvB,KAAKC,MAAQ,MACbD,KAAKG,YAAYuB,cAAc1B,KAAKR,YACpCQ,KAAKF,aAAaiB,KAAKf,KAAKR,YAE5B,UACQQ,KAAKG,YAAYwB,Q,CACvB,MAAO1B,GACPD,KAAKC,MAAQ,KACbD,KAAKP,cAAcsB,M,GAIvBa,iBAAmB,KACjB5B,KAAKD,WAAa,GAClBC,KAAKR,WAAa,GAClBQ,KAAKG,YAAYuB,cAAc,IAC/B1B,KAAKG,YAAY0B,6BAA6B,IAC9C7B,KAAKC,MAAQ,MAEbD,KAAKP,cAAcsB,MAAM,EAG3Be,iBAAmBL,MAAON,IACxBA,EAAMY,uBACA/B,KAAKwB,cAAcxB,KAAKR,WAAW,EAG3C,MAAAwC,GACE,MAAMC,EAAwBC,EAAkBlC,KAAKV,cAErD,MAAM6C,EAAuBnC,KAAKD,WAAWqC,OAAS,EAEtD,MAAMC,EAAsBC,EAAW,yBAA0B,CAC/D,oCAAqCtC,KAAKb,kBAAoB,OAC9D,qCAAsCa,KAAKb,kBAAoB,QAC/D,oCAAqCa,KAAKb,kBAAoB,SAGhE,MAAMoD,EAAwBvC,KAAKX,YAAcW,KAAKC,MACtD,MAAMuC,EAAkB,CACtBC,IAAKF,EAAwB,UAAY,WAG3C,OACEG,EAAA,QAAAC,IAAA,2CAAMC,MAAM,yBAAyBC,SAAU7C,KAAK8B,kBAClDY,EAAA,OAAAC,IAAA,2CAAKC,MAAOP,EAAqBS,MAAON,GACtCE,EAAA,OAAAC,IAAA,2CAAKC,MAAM,oCACTF,EAAA,sBAAAC,IAAA,2CACEI,cAAe/C,KAAK8B,iBACpBkB,MAAOhD,KAAKZ,eAGfY,KAAKX,YACJqD,EAAA,OAAAC,IAAA,2CAAKC,MAAM,mCACTF,EAAA,2BAAAC,IAAA,2CAAyBK,MAAOhD,KAAKX,cAGxCW,KAAKC,OACJyC,EAAA,OAAAC,IAAA,2CAAKC,MAAM,mCACTF,EAAA,6BAAAC,IAAA,2CAA2BM,aAAa,2BAG5CP,EAAA,OAAAC,IAAA,2CAAKC,MAAM,6BACTF,EAAA,SAAAC,IAAA,2CACEO,aAAa,MACbN,MAAM,oBACNO,QAAS,IAAMnD,KAAKL,YAAYoB,OAChCqC,OAAQ,IAAMpD,KAAKJ,WAAWmB,OAC9BsC,QAAUlC,IACRnB,KAAKkB,cAAcC,EAAM,EAE3BmC,YAAatD,KAAKT,iBAClBuD,MAAOb,EACPsB,KAAK,OACLjC,MAAOtB,KAAKD,aAEd2C,EAAA,OAAAC,IAAA,2CAAKC,MAAM,yCACTF,EAAA,OAAAC,IAAA,2CACEC,MAAM,gCACNY,QAAQ,YACRC,KAAK,OACLC,MAAM,6BAA4B,kBAClB,qBAEhBhB,EAAA,SAAAC,IAAA,2CAAOgB,GAAG,qBAAmB,iCAG7BjB,EAAA,QAAAC,IAAA,2CACEiB,EAAE,oNACFC,OAAO,eAAc,eACR,MAAK,iBACH,QAAO,kBACN,YAIrB1B,GACCO,EAAA,UAAAC,IAAA,2CACEY,KAAK,SACLX,MAAM,iCACNkB,QAAS9D,KAAK4B,kBAEdc,EAAA,OAAAC,IAAA,2CACEC,MAAM,+BACNY,QAAQ,YACRC,KAAK,OACLC,MAAM,6BAA4B,kBAClB,cAEhBhB,EAAA,SAAAC,IAAA,2CAAOgB,GAAG,cAAY,sCAGtBjB,EAAA,QAAAC,IAAA,2CACEiB,EAAE,wIACFC,OAAO,eAAc,eACR,MAAK,iBACH,QAAO,kBACN,c,iECvPvBE,EAA0B,M,yBAK7BC,sBAIAC,0BACAC,sBACAC,kBACAC,qBAER,MAAApC,GACE,OACEU,EAAA,OAAAC,IAAA,2CAAKC,MAAM,iCACR5C,KAAKkE,uBAAuBG,KAAKC,GAChC5B,EAAA,oCACE6B,qBAAsBD,EACtB3B,IAAK2B,EAAKE,SAGbxE,KAAKiE,2BAA2BI,KAAI,CAACC,EAAMG,IAC1C/B,EAAA,iCACE4B,KAAMA,EACN3B,IAAK2B,EAAKX,GACVK,sBAAuBhE,KAAKgE,sBAC5BU,iBACE1E,KAAKoE,sBAAwBpE,KAAKmE,kBAAoB,GAAKM,M","ignoreList":[]}
@@ -1,3 +0,0 @@
1
- const e="searchcraft-javascript-sdk";const t={allRenderFn:true,appendChildSlotFix:false,asyncLoading:true,asyncQueue:false,attachStyles:true,cloneNodeFix:false,cmpDidLoad:true,cmpDidRender:false,cmpDidUnload:false,cmpDidUpdate:false,cmpShouldUpdate:false,cmpWillLoad:false,cmpWillRender:false,cmpWillUpdate:false,connectedCallback:true,constructableCSS:true,cssAnnotations:true,devTools:false,disconnectedCallback:true,element:false,event:true,experimentalScopedSlotChanges:false,experimentalSlotFixes:false,formAssociated:false,hasRenderFn:true,hostListener:false,hostListenerTarget:false,hostListenerTargetBody:false,hostListenerTargetDocument:false,hostListenerTargetParent:false,hostListenerTargetWindow:false,hotModuleReplacement:false,hydrateClientSide:false,hydrateServerSide:false,hydratedAttribute:false,hydratedClass:true,hydratedSelectorName:"hydrated",initializeNextTick:false,invisiblePrehydration:true,isDebug:false,isDev:false,isTesting:false,lazyLoad:true,lifecycle:true,lifecycleDOMEvents:false,member:true,method:false,mode:false,modernPropertyDecls:true,observeAttribute:true,profile:false,prop:true,propBoolean:true,propMutable:false,propNumber:true,propString:true,reflect:false,scoped:false,scopedSlotTextContentFix:false,scriptDataOpts:false,shadowDelegatesFocus:false,shadowDom:false,slot:true,slotChildNodesFix:false,slotRelocation:true,state:true,style:false,svg:true,taskQueue:true,transformTagName:false,updatable:true,vdomAttribute:true,vdomClass:true,vdomFunctional:true,vdomKey:true,vdomListener:true,vdomPropOrAttr:true,vdomRef:false,vdomRender:true,vdomStyle:true,vdomText:true,vdomXlink:false,watchCallback:true};var r=Object.defineProperty;var n=(e,t)=>{for(var n in t)r(e,n,{get:t[n],enumerable:true})};var l="http://www.w3.org/2000/svg";var s="http://www.w3.org/1999/xhtml";var i=(e,t)=>{var r;const n=t.t;const l=Object.entries((r=n.l)!=null?r:{});l.map((([r,[n]])=>{if(n&31||n&32){const n=e[r];const l=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(e),r);Object.defineProperty(e,r,{get(){return l.get.call(this)},set(e){l.set.call(this,e)},configurable:true,enumerable:true});e[r]=t.i.has(r)?t.i.get(r):n}}))};var o=new WeakMap;var a=e=>o.get(e);var f=(e,t)=>{o.set(t.o=e,t);{i(e,t)}};var c=(e,t)=>{const r={u:0,$hostElement$:e,t,i:new Map};{r.v=new Promise((e=>r.h=e));e["s-p"]=[];e["s-rc"]=[]}const n=o.set(e,r);return n};var u=(e,t)=>t in e;var v=(e,t)=>(0,console.error)(e,t);var d=new Map;var h=(e,t,r)=>{const n=e.p.replace(/-/g,"_");const l=e.m;if(!l){return void 0}const s=d.get(l);if(s){return s[n]}
2
- /*!__STENCIL_STATIC_IMPORT_SWITCH__*/return import(`./${l}.entry.js${""}`).then((e=>{{d.set(l,e)}return e[n]}),(e=>{v(e,t.$hostElement$)}))};var p="{visibility:hidden}.hydrated{visibility:inherit}";var m="slot-fb{display:contents}slot-fb[hidden]{display:none}";var b=typeof window!=="undefined"?window:{};var y=b.document||{head:{}};var w={u:0,$:"",jmp:e=>e(),raf:e=>requestAnimationFrame(e),ael:(e,t,r,n)=>e.addEventListener(t,r,n),rel:(e,t,r,n)=>e.removeEventListener(t,r,n),ce:(e,t)=>new CustomEvent(e,t)};var g=t.shadowDom;var $=e=>Promise.resolve(e);var O=false;var j=[];var S=[];var k=(e,t)=>r=>{e.push(r);if(!O){O=true;if(t&&w.u&4){x(T)}else{w.raf(T)}}};var C=e=>{for(let t=0;t<e.length;t++){try{e[t](performance.now())}catch(e){v(e)}}e.length=0};var T=()=>{C(j);{C(S);if(O=j.length>0){w.raf(T)}}};var x=e=>$().then(e);var L=k(S,true);var F=e=>{e=typeof e;return e==="object"||e==="function"};function R(e){var t,r,n;return(n=(r=(t=e.head)==null?void 0:t.querySelector('meta[name="csp-nonce"]'))==null?void 0:r.getAttribute("content"))!=null?n:void 0}var D={};n(D,{err:()=>M,map:()=>N,ok:()=>E,unwrap:()=>P,unwrapErr:()=>A});var E=e=>({isOk:true,isErr:false,value:e});var M=e=>({isOk:false,isErr:true,value:e});function N(e,t){if(e.isOk){const r=t(e.value);if(r instanceof Promise){return r.then((e=>E(e)))}else{return E(r)}}if(e.isErr){const t=e.value;return M(t)}throw"should never get here"}var P=e=>{if(e.isOk){return e.value}else{throw e.value}};var A=e=>{if(e.isErr){return e.value}else{throw e.value}};var U=e=>{const t=e.__childNodes||e.childNodes;if(e.tagName&&e.tagName.includes("-")&&e["s-cr"]&&e.tagName!=="SLOT-FB"){W(t,e.tagName).forEach((e=>{var t;if(e.nodeType===1&&e.tagName==="SLOT-FB"){if((t=B(e,e["s-sn"],false))==null?void 0:t.length){e.hidden=true}else{e.hidden=false}}}))}for(const e of t){if(e.nodeType===1&&(e.__childNodes||e.childNodes).length){U(e)}}};function W(e,t,r){let n=0;let l=[];let s;for(;n<e.length;n++){s=e[n];if(s["s-sr"]&&s["s-hn"]===t&&(r===void 0||s["s-sn"]===r)){l.push(s);if(typeof r!=="undefined")return l}l=[...l,...W(s.childNodes,t,r)]}return l}var B=(e,t,r=true)=>{const n=[];if(r&&e["s-sr"]||!e["s-sr"])n.push(e);while((e=e.nextSibling)&&e["s-sn"]===t){n.push(e)}return n};var z=(e,t)=>{if(e.nodeType===1){if(e.getAttribute("slot")===null&&t===""){return true}if(e.getAttribute("slot")===t){return true}return false}if(e["s-sn"]===t){return true}return t===""};var H=(e,t="")=>{{return()=>{}}};var Q=(e,t)=>{{return()=>{}}};var V=(e,t,...r)=>{let n=null;let l=null;let s=null;let i=false;let o=false;const a=[];const f=t=>{for(let r=0;r<t.length;r++){n=t[r];if(Array.isArray(n)){f(n)}else if(n!=null&&typeof n!=="boolean"){if(i=typeof e!=="function"&&!F(n)){n=String(n)}if(i&&o){a[a.length-1].O+=n}else{a.push(i?q(null,n):n)}o=i}}};f(r);if(t){if(t.key){l=t.key}if(t.name){s=t.name}{const e=t.className||t.class;if(e){t.class=typeof e!=="object"?e:Object.keys(e).filter((t=>e[t])).join(" ")}}}if(typeof e==="function"){return e(t===null?{}:t,a,K)}const c=q(e,null);c.j=t;if(a.length>0){c.S=a}{c.k=l}{c.C=s}return c};var q=(e,t)=>{const r={u:0,T:e,O:t,L:null,S:null};{r.j=null}{r.k=null}{r.C=null}return r};var G={};var I=e=>e&&e.T===G;var K={forEach:(e,t)=>e.map(X).forEach(t),map:(e,t)=>e.map(X).map(t).map(_)};var X=e=>({vattrs:e.j,vchildren:e.S,vkey:e.k,vname:e.C,vtag:e.T,vtext:e.O});var _=e=>{if(typeof e.vtag==="function"){const t={...e.vattrs};if(e.vkey){t.key=e.vkey}if(e.vname){t.name=e.vname}return V(e.vtag,t,...e.vchildren||[])}const t=q(e.vtag,e.vtext);t.j=e.vattrs;t.S=e.vchildren;t.k=e.vkey;t.C=e.vname;return t};var J=(e,t)=>{if(e!=null&&!F(e)){if(t&4){return e==="false"?false:e===""||!!e}if(t&2){return parseFloat(e)}if(t&1){return String(e)}return e}return e};var Y=e=>a(e).$hostElement$;var Z=(e,t,r)=>{const n=Y(e);return{emit:e=>ee(n,t,{bubbles:!!(r&4),composed:!!(r&2),cancelable:!!(r&1),detail:e})}};var ee=(e,t,r)=>{const n=w.ce(t,r);e.dispatchEvent(n);return n};var te=new WeakMap;var re=(e,t,r,n,l,s)=>{if(r!==n){let i=u(e,t);let o=t.toLowerCase();if(t==="class"){const t=e.classList;const l=le(r);let s=le(n);if(e["s-si"]){s.push(e["s-si"]);l.forEach((t=>{if(t.startsWith(e["s-si"]))s.push(t)}));s=[...new Set(s)];t.add(...s);delete e["s-si"]}else{t.remove(...l.filter((e=>e&&!s.includes(e))));t.add(...s.filter((e=>e&&!l.includes(e))))}}else if(t==="style"){{for(const t in r){if(!n||n[t]==null){if(t.includes("-")){e.style.removeProperty(t)}else{e.style[t]=""}}}}for(const t in n){if(!r||n[t]!==r[t]){if(t.includes("-")){e.style.setProperty(t,n[t])}else{e.style[t]=n[t]}}}}else if(t==="key");else if(!i&&t[0]==="o"&&t[1]==="n"){if(t[2]==="-"){t=t.slice(3)}else if(u(b,o)){t=o.slice(2)}else{t=o[2]+t.slice(3)}if(r||n){const l=t.endsWith(se);t=t.replace(ie,"");if(r){w.rel(e,t,r,l)}if(n){w.ael(e,t,n,l)}}}else{const o=F(n);if((i||o&&n!==null)&&!l){try{if(!e.tagName.includes("-")){const l=n==null?"":n;if(t==="list"){i=false}else if(r==null||e[t]!=l){if(typeof e.__lookupSetter__(t)==="function"){e[t]=l}else{e.setAttribute(t,l)}}}else if(e[t]!==n){e[t]=n}}catch(e){}}if(n==null||n===false){if(n!==false||e.getAttribute(t)===""){{e.removeAttribute(t)}}}else if((!i||s&4||l)&&!o){n=n===true?"":n;{e.setAttribute(t,n)}}}}};var ne=/\s/;var le=e=>{if(typeof e==="object"&&"baseVal"in e){e=e.baseVal}if(!e){return[]}return e.split(ne)};var se="Capture";var ie=new RegExp(se+"$");var oe=(e,t,r)=>{const n=t.L.nodeType===11&&t.L.host?t.L.host:t.L;const l=e&&e.j||{};const s=t.j||{};{for(const e of ae(Object.keys(l))){if(!(e in s)){re(n,e,l[e],void 0,r,t.u)}}}for(const e of ae(Object.keys(s))){re(n,e,l[e],s[e],r,t.u)}};function ae(e){return e.includes("ref")?[...e.filter((e=>e!=="ref")),"ref"]:e}var fe;var ce;var ue=false;var ve=false;var de=false;var he=false;var pe=(e,r,n)=>{var i;const o=r.S[n];let a=0;let f;let c;let u;if(!ue){de=true;if(o.T==="slot"){o.u|=o.S?2:1}}if(o.O!==null){f=o.L=y.createTextNode(o.O)}else if(o.u&1){f=o.L=y.createTextNode("")}else{if(!he){he=o.T==="svg"}f=o.L=y.createElementNS(he?l:s,!ue&&t.slotRelocation&&o.u&2?"slot-fb":o.T);if(he&&o.T==="foreignObject"){he=false}{oe(null,o,he)}if(o.S){for(a=0;a<o.S.length;++a){c=pe(e,o,a);if(c){f.appendChild(c)}}}{if(o.T==="svg"){he=false}else if(f.tagName==="foreignObject"){he=true}}}f["s-hn"]=ce;{if(o.u&(2|1)){f["s-sr"]=true;f["s-cr"]=fe;f["s-sn"]=o.C||"";f["s-rf"]=(i=o.j)==null?void 0:i.ref;u=e&&e.S&&e.S[n];if(u&&u.T===o.T&&e.L){{me(e.L,false)}}}}return f};var me=(e,r)=>{w.u|=1;const n=Array.from(e.__childNodes||e.childNodes);if(e["s-sr"]&&t.experimentalSlotFixes){let t=e;while(t=t.nextSibling){if(t&&t["s-sn"]===e["s-sn"]&&t["s-sh"]===ce){n.push(t)}}}for(let e=n.length-1;e>=0;e--){const t=n[e];if(t["s-hn"]!==ce&&t["s-ol"]){ke($e(t).parentNode,t,$e(t));t["s-ol"].remove();t["s-ol"]=void 0;t["s-sh"]=void 0;de=true}if(r){me(t,r)}}w.u&=~1};var be=(e,t,r,n,l,s)=>{let i=e["s-cr"]&&e["s-cr"].parentNode||e;let o;for(;l<=s;++l){if(n[l]){o=pe(null,r,l);if(o){n[l].L=o;ke(i,o,$e(t))}}}};var ye=(e,t,r)=>{for(let n=t;n<=r;++n){const t=e[n];if(t){const e=t.L;if(e){{ve=true;if(e["s-ol"]){e["s-ol"].remove()}else{me(e,true)}}e.remove()}}}};var we=(e,t,r,n,l=false)=>{let s=0;let i=0;let o=0;let a=0;let f=t.length-1;let c=t[0];let u=t[f];let v=n.length-1;let d=n[0];let h=n[v];let p;let m;while(s<=f&&i<=v){if(c==null){c=t[++s]}else if(u==null){u=t[--f]}else if(d==null){d=n[++i]}else if(h==null){h=n[--v]}else if(ge(c,d,l)){Oe(c,d,l);c=t[++s];d=n[++i]}else if(ge(u,h,l)){Oe(u,h,l);u=t[--f];h=n[--v]}else if(ge(c,h,l)){if(c.T==="slot"||h.T==="slot"){me(c.L.parentNode,false)}Oe(c,h,l);ke(e,c.L,u.L.nextSibling);c=t[++s];h=n[--v]}else if(ge(u,d,l)){if(c.T==="slot"||h.T==="slot"){me(u.L.parentNode,false)}Oe(u,d,l);ke(e,u.L,c.L);u=t[--f];d=n[++i]}else{o=-1;{for(a=s;a<=f;++a){if(t[a]&&t[a].k!==null&&t[a].k===d.k){o=a;break}}}if(o>=0){m=t[o];if(m.T!==d.T){p=pe(t&&t[i],r,o)}else{Oe(m,d,l);t[o]=void 0;p=m.L}d=n[++i]}else{p=pe(t&&t[i],r,i);d=n[++i]}if(p){{ke($e(c.L).parentNode,p,$e(c.L))}}}}if(s>f){be(e,n[v+1]==null?null:n[v+1].L,r,n,i,v)}else if(i>v){ye(t,s,f)}};var ge=(e,t,r=false)=>{if(e.T===t.T){if(e.T==="slot"){return e.C===t.C}if(!r){return e.k===t.k}if(r&&!e.k&&t.k){e.k=t.k}return true}return false};var $e=e=>e&&e["s-ol"]||e;var Oe=(e,r,n=false)=>{const l=r.L=e.L;const s=e.S;const i=r.S;const o=r.T;const a=r.O;let f;if(a===null){{he=o==="svg"?true:o==="foreignObject"?false:he}{if(o==="slot"&&!ue);else{oe(e,r,he)}}if(s!==null&&i!==null){we(l,s,r,i,n)}else if(i!==null){if(e.O!==null){l.textContent=""}be(l,null,r,i,0,i.length-1)}else if(!n&&t.updatable&&s!==null){ye(s,0,s.length-1)}if(he&&o==="svg"){he=false}}else if(f=l["s-cr"]){f.parentNode.textContent=a}else if(e.O!==a){l.data=a}};var je=[];var Se=e=>{let r;let n;let l;const s=e.__childNodes||e.childNodes;for(const e of s){if(e["s-sr"]&&(r=e["s-cr"])&&r.parentNode){n=r.parentNode.__childNodes||r.parentNode.childNodes;const s=e["s-sn"];for(l=n.length-1;l>=0;l--){r=n[l];if(!r["s-cn"]&&!r["s-nr"]&&r["s-hn"]!==e["s-hn"]&&!t.experimentalSlotFixes){if(z(r,s)){let t=je.find((e=>e.F===r));ve=true;r["s-sn"]=r["s-sn"]||s;if(t){t.F["s-sh"]=e["s-hn"];t.R=e}else{r["s-sh"]=e["s-hn"];je.push({R:e,F:r})}if(r["s-sr"]){je.map((e=>{if(z(e.F,r["s-sn"])){t=je.find((e=>e.F===r));if(t&&!e.R){e.R=t.R}}}))}}else if(!je.some((e=>e.F===r))){je.push({F:r})}}}}if(e.nodeType===1){Se(e)}}};var ke=(e,t,r)=>{{return e==null?void 0:e.insertBefore(t,r)}};var Ce=(e,t,r=false)=>{var n,l,s,i;const o=e.$hostElement$;const a=e.D||q(null,null);const f=I(t)?t:V(null,null,t);ce=o.tagName;if(r&&f.j){for(const e of Object.keys(f.j)){if(o.hasAttribute(e)&&!["key","ref","style","class"].includes(e)){f.j[e]=o[e]}}}f.T=null;f.u|=4;e.D=f;f.L=a.L=o;ue=g;{fe=o["s-cr"];ve=false}Oe(a,f,r);{w.u|=1;if(de){Se(f.L);for(const e of je){const t=e.F;if(!t["s-ol"]){const e=y.createTextNode("");e["s-nr"]=t;ke(t.parentNode,t["s-ol"]=e,t)}}for(const e of je){const t=e.F;const o=e.R;if(o){const e=o.parentNode;let r=o.nextSibling;{let s=(n=t["s-ol"])==null?void 0:n.previousSibling;while(s){let n=(l=s["s-nr"])!=null?l:null;if(n&&n["s-sn"]===t["s-sn"]&&e===(n.__parentNode||n.parentNode)){n=n.nextSibling;while(n===t||(n==null?void 0:n["s-sr"])){n=n==null?void 0:n.nextSibling}if(!n||!n["s-nr"]){r=n;break}}s=s.previousSibling}}const i=t.__parentNode||t.parentNode;const a=t.__nextSibling||t.nextSibling;if(!r&&e!==i||a!==r){if(t!==r){if(!t["s-hn"]&&t["s-ol"]){t["s-hn"]=t["s-ol"].parentNode.nodeName}ke(e,t,r);if(t.nodeType===1&&t.tagName!=="SLOT-FB"){t.hidden=(s=t["s-ih"])!=null?s:false}}}t&&typeof o["s-rf"]==="function"&&o["s-rf"](t)}else{if(t.nodeType===1){if(r){t["s-ih"]=(i=t.hidden)!=null?i:false}t.hidden=true}}}}if(ve){U(f.L)}w.u&=~1;je.length=0}fe=void 0};var Te=(e,t)=>{if(t&&!e.M&&t["s-p"]){const r=t["s-p"].push(new Promise((n=>e.M=()=>{t["s-p"].splice(r-1,1);n()})))}};var xe=(e,t)=>{{e.u|=16}if(e.u&4){e.u|=512;return}Te(e,e.N);const r=()=>Le(e,t);return L(r)};var Le=(e,t)=>{const r=e.$hostElement$;const n=H("scheduleUpdate",e.t.p);const l=e.o;if(!l){throw new Error(`Can't render component <${r.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`)}let s;n();return Fe(s,(()=>De(e,l,t)))};var Fe=(e,t)=>Re(e)?e.then(t).catch((e=>{console.error(e);t()})):t();var Re=e=>e instanceof Promise||e&&e.then&&typeof e.then==="function";var De=async(e,t,r)=>{var n;const l=e.$hostElement$;const s=H("update",e.t.p);const i=l["s-rc"];const o=H("render",e.t.p);{Ee(e,t,l,r)}if(i){i.map((e=>e()));l["s-rc"]=void 0}o();s();{const t=(n=l["s-p"])!=null?n:[];const r=()=>Me(e);if(t.length===0){r()}else{Promise.all(t).then(r);e.u|=4;t.length=0}}};var Ee=(e,t,r,n)=>{try{t=t.render();{e.u&=~16}{e.u|=2}{{{Ce(e,t,n)}}}}catch(t){v(t,e.$hostElement$)}return null};var Me=e=>{const t=e.t.p;const r=e.$hostElement$;const n=H("postUpdate",t);const l=e.o;const s=e.N;if(!(e.u&64)){e.u|=64;{Ae(r)}{Pe(l,"componentDidLoad",void 0,r)}n();{e.h(r);if(!s){Ne()}}}else{n()}{if(e.M){e.M();e.M=void 0}if(e.u&512){x((()=>xe(e,false)))}e.u&=~(4|512)}};var Ne=t=>{{Ae(y.documentElement)}x((()=>ee(b,"appload",{detail:{namespace:e}})))};var Pe=(e,t,r,n)=>{if(e&&e[t]){try{return e[t](r)}catch(e){v(e,n)}}return void 0};var Ae=e=>{var r;return e.classList.add((r=t.hydratedSelectorName)!=null?r:"hydrated")};var Ue=(e,t)=>a(e).i.get(t);var We=(e,t,r,n)=>{const l=a(e);if(!l){throw new Error(`Couldn't find host element for "${n.p}" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/ionic-team/stencil/issues/5457).`)}const s=l.$hostElement$;const i=l.i.get(t);const o=l.u;const f=l.o;r=J(r,n.l[t][0]);const c=Number.isNaN(i)&&Number.isNaN(r);const u=r!==i&&!c;if((!(o&8)||i===void 0)&&u){l.i.set(t,r);if(f){if(n.P&&o&128){const e=n.P[t];if(e){e.map((e=>{try{f[e](r,i,t)}catch(e){v(e,s)}}))}}if((o&(2|16))===2){xe(l,false)}}}};var Be=(e,r,n)=>{var l,s;const i=e.prototype;if(r.l||(r.P||e.watchers)){if(e.watchers&&!r.P){r.P=e.watchers}const o=Object.entries((l=r.l)!=null?l:{});o.map((([e,[t]])=>{if(t&31||n&2&&t&32){const{get:l,set:s}=Object.getOwnPropertyDescriptor(i,e)||{};if(l)r.l[e][0]|=2048;if(s)r.l[e][0]|=4096;if(n&1||!l){Object.defineProperty(i,e,{get(){{if((r.l[e][0]&2048)===0){return Ue(this,e)}const t=a(this);const n=t?t.o:i;if(!n)return;return n[e]}},configurable:true,enumerable:true})}Object.defineProperty(i,e,{set(l){const i=a(this);if(s){const n=t&32?this[e]:i.$hostElement$[e];if(typeof n==="undefined"&&i.i.get(e)){l=i.i.get(e)}else if(!i.i.get(e)&&n){i.i.set(e,n)}s.apply(this,[J(l,t)]);l=t&32?this[e]:i.$hostElement$[e];We(this,e,l,r);return}{if((n&1)===0||(r.l[e][0]&4096)===0){We(this,e,l,r);if(n&1&&!i.o){i.v.then((()=>{if(r.l[e][0]&4096&&i.o[e]!==i.i.get(e)){i.o[e]=l}}))}return}const s=()=>{const n=i.o[e];if(!i.i.get(e)&&n){i.i.set(e,n)}i.o[e]=J(l,t);We(this,e,i.o[e],r)};if(i.o){s()}else{i.v.then((()=>s()))}}}})}}));if(n&1){const n=new Map;i.attributeChangedCallback=function(e,l,s){w.jmp((()=>{var o;const f=n.get(e);if(this.hasOwnProperty(f)&&t.lazyLoad){s=this[f];delete this[f]}else if(i.hasOwnProperty(f)&&typeof this[f]==="number"&&this[f]==s){return}else if(f==null){const t=a(this);const n=t==null?void 0:t.u;if(n&&!(n&8)&&n&128&&s!==l){const n=t.o;const i=(o=r.P)==null?void 0:o[e];i==null?void 0:i.forEach((t=>{if(n[t]!=null){n[t].call(n,s,l,e)}}))}return}const c=Object.getOwnPropertyDescriptor(i,f);s=s===null&&typeof this[f]==="boolean"?false:s;if(s!==this[f]&&(!c.get||!!c.set)){this[f]=s}}))};e.observedAttributes=Array.from(new Set([...Object.keys((s=r.P)!=null?s:{}),...o.filter((([e,t])=>t[0]&15)).map((([e,t])=>{const r=t[1]||e;n.set(r,e);return r}))]))}}return e};var ze=async(e,t,r,n)=>{let l;if((t.u&32)===0){t.u|=32;{const n=h(r,t);if(n&&"then"in n){const e=Q();l=await n;e()}else{l=n}if(!l){throw new Error(`Constructor for "${r.p}#${t.A}" was not found`)}if(!l.isProxied){{r.P=l.watchers}Be(l,r,2);l.isProxied=true}const s=H("createInstance",r.p);{t.u|=8}try{new l(t)}catch(t){v(t,e)}{t.u&=~8}{t.u|=128}s();He(t.o,e)}}const s=t.N;const i=()=>xe(t,true);if(s&&s["s-rc"]){s["s-rc"].push(i)}else{i()}};var He=(e,t)=>{{Pe(e,"connectedCallback",void 0,t)}};var Qe=e=>{if((w.u&1)===0){const t=a(e);const r=t.t;const n=H("connectedCallback",r.p);if(!(t.u&1)){t.u|=1;{if(r.u&(4|8)){Ve(e)}}{let r=e;while(r=r.parentNode||r.host){if(r["s-p"]){Te(t,t.N=r);break}}}if(r.l){Object.entries(r.l).map((([t,[r]])=>{if(r&31&&e.hasOwnProperty(t)){const r=e[t];delete e[t];e[t]=r}}))}{ze(e,t,r)}}else{if(t==null?void 0:t.o){He(t.o,e)}else if(t==null?void 0:t.v){t.v.then((()=>He(t.o,e)))}}n()}};var Ve=e=>{const t=e["s-cr"]=y.createComment("");t["s-cn"]=true;ke(e,t,e.firstChild)};var qe=(e,t)=>{{Pe(e,"disconnectedCallback",void 0,t||e)}};var Ge=async e=>{if((w.u&1)===0){const t=a(e);if(t==null?void 0:t.o){qe(t.o,e)}else if(t==null?void 0:t.v){t.v.then((()=>qe(t.o,e)))}}if(te.has(e)){te.delete(e)}if(e.shadowRoot&&te.has(e.shadowRoot)){te.delete(e.shadowRoot)}};var Ie=(e,t={})=>{var r;const n=H();const l=[];const s=t.exclude||[];const i=b.customElements;const o=y.head;const f=o.querySelector("meta[charset]");const u=y.createElement("style");const v=[];let d;let h=true;Object.assign(w,t);w.$=new URL(t.resourcesUrl||"./",y.baseURI).href;let g=false;e.map((e=>{e[1].map((t=>{var r;const n={u:t[0],p:t[1],l:t[2],U:t[3]};if(n.u&4){g=true}{n.l=t[2]}{n.P=(r=t[4])!=null?r:{}}const o=n.p;const f=class extends HTMLElement{constructor(e){super(e);this.hasRegisteredEventListeners=false;e=this;c(e,n)}connectedCallback(){a(this);if(!this.hasRegisteredEventListeners){this.hasRegisteredEventListeners=true}if(d){clearTimeout(d);d=null}if(h){v.push(this)}else{w.jmp((()=>Qe(this)))}}disconnectedCallback(){w.jmp((()=>Ge(this)));w.raf((()=>{var e;const t=a(this);if(((e=t==null?void 0:t.D)==null?void 0:e.L)instanceof Node&&!t.D.L.isConnected){delete t.D.L}}))}componentOnReady(){return a(this).v}};n.m=e[0];if(!s.includes(o)&&!i.get(o)){l.push(o);i.define(o,Be(f,n,1))}}))}));if(l.length>0){if(g){u.textContent+=m}{u.textContent+=l.sort()+p}if(u.innerHTML.length){u.setAttribute("data-styles","");const e=(r=w.W)!=null?r:R(y);if(e!=null){u.setAttribute("nonce",e)}o.insertBefore(u,f?f.nextSibling:o.firstChild)}}h=false;if(v.length){v.map((e=>e.connectedCallback()))}else{{w.jmp((()=>d=setTimeout(Ne,30)))}}n()};var Ke=(e,t)=>t;var Xe=e=>w.W=e;export{Ke as F,Ie as b,Z as c,Y as g,V as h,$ as p,f as r,Xe as s};
3
- //# sourceMappingURL=p-7e13c128.js.map