@searchcraft/javascript-sdk 0.5.3 → 0.7.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 (326) hide show
  1. package/README.md +53 -55
  2. package/dist/cjs/{index-b76bece0.js → index-d4b4a45e.js} +234 -130
  3. package/dist/cjs/index-d4b4a45e.js.map +1 -0
  4. package/dist/cjs/index.cjs.js +4 -4
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/searchcraft-base-search-result.cjs.entry.js +15 -19
  7. package/dist/cjs/searchcraft-base-search-result.cjs.entry.js.map +1 -1
  8. package/dist/cjs/searchcraft-base-search-results.cjs.entry.js +31 -17
  9. package/dist/cjs/searchcraft-base-search-results.cjs.entry.js.map +1 -1
  10. package/dist/cjs/searchcraft-button_3.cjs.entry.js +72 -0
  11. package/dist/cjs/searchcraft-button_3.cjs.entry.js.map +1 -0
  12. package/dist/cjs/searchcraft-facet-list_3.cjs.entry.js +163 -35
  13. package/dist/cjs/searchcraft-facet-list_3.cjs.entry.js.map +1 -1
  14. package/dist/cjs/searchcraft-filter-panel.cjs.entry.js +11 -10
  15. package/dist/cjs/searchcraft-filter-panel.cjs.entry.js.map +1 -1
  16. package/dist/cjs/searchcraft-input-form_2.cjs.entry.js +238 -0
  17. package/dist/cjs/searchcraft-input-form_2.cjs.entry.js.map +1 -0
  18. package/dist/cjs/searchcraft-javascript-sdk.cjs.js +3 -3
  19. package/dist/cjs/searchcraft-javascript-sdk.cjs.js.map +1 -1
  20. package/dist/cjs/searchcraft-popover-button.cjs.entry.js +26 -0
  21. package/dist/cjs/searchcraft-popover-button.cjs.entry.js.map +1 -0
  22. package/dist/cjs/searchcraft-popover-form.cjs.entry.js +206 -5
  23. package/dist/cjs/searchcraft-popover-form.cjs.entry.js.map +1 -1
  24. package/dist/cjs/searchcraft-popover-list-item.cjs.entry.js +26 -0
  25. package/dist/cjs/searchcraft-popover-list-item.cjs.entry.js.map +1 -0
  26. package/dist/cjs/searchcraft-results-info.cjs.entry.js +5 -5
  27. package/dist/cjs/searchcraft-results-info.cjs.entry.js.map +1 -1
  28. package/dist/cjs/store-abe47006.js +1479 -0
  29. package/dist/cjs/store-abe47006.js.map +1 -0
  30. package/dist/cjs/styles-7b2d06f2.js +28 -0
  31. package/dist/cjs/styles-7b2d06f2.js.map +1 -0
  32. package/dist/cjs/units-fe4d8083.js +88 -0
  33. package/dist/cjs/units-fe4d8083.js.map +1 -0
  34. package/dist/collection/collection-manifest.json +3 -2
  35. package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.js +65 -32
  36. package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.js.map +1 -1
  37. package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.module.css +54 -4
  38. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js +86 -19
  39. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js.map +1 -1
  40. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.module.css +52 -2
  41. package/dist/collection/components/searchcraft-button/searchcraft-button.js +32 -11
  42. package/dist/collection/components/searchcraft-button/searchcraft-button.js.map +1 -1
  43. package/dist/collection/components/searchcraft-button/searchcraft-button.module.css +52 -2
  44. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.js +13 -5
  45. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.js.map +1 -1
  46. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.module.css +52 -2
  47. package/dist/collection/components/searchcraft-facet-list/searchcraft-facet-list.js +27 -14
  48. package/dist/collection/components/searchcraft-facet-list/searchcraft-facet-list.js.map +1 -1
  49. package/dist/collection/components/searchcraft-facet-list/searchcraft-facet-list.module.css +52 -2
  50. package/dist/collection/components/searchcraft-filter-panel/searchcraft-filter-panel.js +19 -7
  51. package/dist/collection/components/searchcraft-filter-panel/searchcraft-filter-panel.js.map +1 -1
  52. package/dist/collection/components/searchcraft-filter-panel/searchcraft-filter-panel.module.css +52 -2
  53. package/dist/collection/components/searchcraft-input-form/searchcraft-input-form.js +106 -61
  54. package/dist/collection/components/searchcraft-input-form/searchcraft-input-form.js.map +1 -1
  55. package/dist/collection/components/searchcraft-input-form/searchcraft-input-form.module.css +56 -6
  56. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.js +19 -7
  57. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.js.map +1 -1
  58. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.module.css +52 -2
  59. package/dist/collection/components/searchcraft-popover-button/searchcraft-popover-button.js +25 -0
  60. package/dist/collection/components/searchcraft-popover-button/searchcraft-popover-button.js.map +1 -0
  61. package/dist/collection/components/searchcraft-popover-form/searchcraft-popover-form.js +299 -9
  62. package/dist/collection/components/searchcraft-popover-form/searchcraft-popover-form.js.map +1 -1
  63. package/dist/collection/components/searchcraft-popover-form/searchcraft-popover-form.module.css +322 -0
  64. package/dist/collection/components/searchcraft-popover-list-item/searchcraft-popover-list-item.js +143 -0
  65. package/dist/collection/components/searchcraft-popover-list-item/searchcraft-popover-list-item.js.map +1 -0
  66. package/dist/collection/components/searchcraft-popover-list-item/searchcraft-popover-list-item.module.css +209 -0
  67. package/dist/collection/components/searchcraft-popover-list-view/searchcraft-popover-list-view.js +50 -9
  68. package/dist/collection/components/searchcraft-popover-list-view/searchcraft-popover-list-view.js.map +1 -1
  69. package/dist/collection/components/searchcraft-results-info/searchcraft-results-info.js +11 -1
  70. package/dist/collection/components/searchcraft-results-info/searchcraft-results-info.js.map +1 -1
  71. package/dist/collection/components/searchcraft-results-info/searchcraft-results-info.module.css +53 -3
  72. package/dist/collection/components/searchcraft-slider/searchcraft-slider.js +38 -15
  73. package/dist/collection/components/searchcraft-slider/searchcraft-slider.js.map +1 -1
  74. package/dist/collection/components/searchcraft-slider/searchcraft-slider.module.css +52 -2
  75. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.js +18 -10
  76. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.js.map +1 -1
  77. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.module.css +52 -2
  78. package/dist/collection/index.js +1 -1
  79. package/dist/collection/index.js.map +1 -1
  80. package/dist/collection/provider/store.js +14 -15
  81. package/dist/collection/provider/store.js.map +1 -1
  82. package/dist/collection/types/_shared.types.js +2 -0
  83. package/dist/collection/types/_shared.types.js.map +1 -0
  84. package/dist/collection/types/index.js +1 -0
  85. package/dist/collection/types/index.js.map +1 -1
  86. package/dist/collection/types/searchcraft-base-search-results.types.js.map +1 -1
  87. package/dist/collection/types/searchcraft-popover-form.types.js.map +1 -1
  88. package/dist/collection/utils/{utils.js → facets.js} +7 -105
  89. package/dist/collection/utils/facets.js.map +1 -0
  90. package/dist/collection/utils/index.js +4 -0
  91. package/dist/collection/utils/index.js.map +1 -0
  92. package/dist/collection/utils/styles.js +22 -0
  93. package/dist/collection/utils/styles.js.map +1 -0
  94. package/dist/collection/utils/units.js +83 -0
  95. package/dist/collection/utils/units.js.map +1 -0
  96. package/dist/components/index.js +7 -5
  97. package/dist/components/index.js.map +1 -1
  98. package/dist/components/p-01dc5b3b.js +1475 -0
  99. package/dist/components/p-01dc5b3b.js.map +1 -0
  100. package/dist/components/p-1ae87308.js +43 -0
  101. package/dist/components/p-1ae87308.js.map +1 -0
  102. package/dist/components/p-649654b5.js +268 -0
  103. package/dist/components/p-649654b5.js.map +1 -0
  104. package/dist/components/p-662cb490.js +67 -0
  105. package/dist/components/p-662cb490.js.map +1 -0
  106. package/dist/components/{p-e4846fa2.js → p-6cafd48d.js} +189 -112
  107. package/dist/components/p-6cafd48d.js.map +1 -0
  108. package/dist/components/p-755f491b.js +84 -0
  109. package/dist/components/p-755f491b.js.map +1 -0
  110. package/dist/components/p-87d1611b.js +97 -0
  111. package/dist/components/p-87d1611b.js.map +1 -0
  112. package/dist/components/p-c273e43d.js +40 -0
  113. package/dist/components/p-c273e43d.js.map +1 -0
  114. package/dist/components/p-cc9f8c61.js +109 -0
  115. package/dist/components/p-cc9f8c61.js.map +1 -0
  116. package/dist/components/p-cf096782.js +56 -0
  117. package/dist/components/p-cf096782.js.map +1 -0
  118. package/dist/components/p-d9551738.js +25 -0
  119. package/dist/components/p-d9551738.js.map +1 -0
  120. package/dist/components/p-da5b92ef.js +253 -0
  121. package/dist/components/p-da5b92ef.js.map +1 -0
  122. package/dist/components/p-e1cf5f9d.js +54 -0
  123. package/dist/components/p-e1cf5f9d.js.map +1 -0
  124. package/dist/components/p-f5a06210.js +34 -0
  125. package/dist/components/p-f5a06210.js.map +1 -0
  126. package/dist/components/searchcraft-base-search-result.js +1 -1
  127. package/dist/components/searchcraft-base-search-results.js +25 -11
  128. package/dist/components/searchcraft-base-search-results.js.map +1 -1
  129. package/dist/components/searchcraft-button.js +1 -1
  130. package/dist/components/searchcraft-error-message.js +1 -1
  131. package/dist/components/searchcraft-facet-list.js +1 -1
  132. package/dist/components/searchcraft-filter-panel.js +13 -12
  133. package/dist/components/searchcraft-filter-panel.js.map +1 -1
  134. package/dist/components/searchcraft-input-form.js +1 -241
  135. package/dist/components/searchcraft-input-form.js.map +1 -1
  136. package/dist/components/searchcraft-input-label.js +1 -1
  137. package/dist/components/searchcraft-popover-button.d.ts +11 -0
  138. package/dist/components/searchcraft-popover-button.js +39 -0
  139. package/dist/components/searchcraft-popover-button.js.map +1 -0
  140. package/dist/components/searchcraft-popover-form.js +255 -8
  141. package/dist/components/searchcraft-popover-form.js.map +1 -1
  142. package/dist/components/searchcraft-popover-list-item.d.ts +11 -0
  143. package/dist/components/searchcraft-popover-list-item.js +8 -0
  144. package/dist/components/searchcraft-popover-list-item.js.map +1 -0
  145. package/dist/components/searchcraft-popover-list-view.js +1 -1
  146. package/dist/components/searchcraft-results-info.js +4 -4
  147. package/dist/components/searchcraft-results-info.js.map +1 -1
  148. package/dist/components/searchcraft-slider.js +1 -1
  149. package/dist/components/searchcraft-toggle-button.js +1 -1
  150. package/dist/esm/{index-be042742.js → index-56b713de.js} +234 -131
  151. package/dist/esm/index-56b713de.js.map +1 -0
  152. package/dist/esm/index.js +2 -2
  153. package/dist/esm/loader.js +3 -3
  154. package/dist/esm/searchcraft-base-search-result.entry.js +15 -19
  155. package/dist/esm/searchcraft-base-search-result.entry.js.map +1 -1
  156. package/dist/esm/searchcraft-base-search-results.entry.js +23 -9
  157. package/dist/esm/searchcraft-base-search-results.entry.js.map +1 -1
  158. package/dist/esm/searchcraft-button_3.entry.js +66 -0
  159. package/dist/esm/searchcraft-button_3.entry.js.map +1 -0
  160. package/dist/esm/searchcraft-facet-list_3.entry.js +161 -33
  161. package/dist/esm/searchcraft-facet-list_3.entry.js.map +1 -1
  162. package/dist/esm/searchcraft-filter-panel.entry.js +10 -9
  163. package/dist/esm/searchcraft-filter-panel.entry.js.map +1 -1
  164. package/dist/esm/searchcraft-input-form_2.entry.js +233 -0
  165. package/dist/esm/searchcraft-input-form_2.entry.js.map +1 -0
  166. package/dist/esm/searchcraft-javascript-sdk.js +4 -4
  167. package/dist/esm/searchcraft-javascript-sdk.js.map +1 -1
  168. package/dist/esm/searchcraft-popover-button.entry.js +22 -0
  169. package/dist/esm/searchcraft-popover-button.entry.js.map +1 -0
  170. package/dist/esm/searchcraft-popover-form.entry.js +206 -5
  171. package/dist/esm/searchcraft-popover-form.entry.js.map +1 -1
  172. package/dist/esm/searchcraft-popover-list-item.entry.js +22 -0
  173. package/dist/esm/searchcraft-popover-list-item.entry.js.map +1 -0
  174. package/dist/esm/searchcraft-results-info.entry.js +4 -4
  175. package/dist/esm/searchcraft-results-info.entry.js.map +1 -1
  176. package/dist/esm/store-712f0586.js +1475 -0
  177. package/dist/esm/store-712f0586.js.map +1 -0
  178. package/dist/esm/styles-961644ef.js +25 -0
  179. package/dist/esm/styles-961644ef.js.map +1 -0
  180. package/dist/esm/units-b6eba560.js +84 -0
  181. package/dist/esm/units-b6eba560.js.map +1 -0
  182. package/dist/searchcraft-javascript-sdk/index.esm.js +1 -1
  183. package/dist/searchcraft-javascript-sdk/p-01dc5b3b.js +11 -0
  184. package/dist/searchcraft-javascript-sdk/p-01dc5b3b.js.map +1 -0
  185. package/dist/searchcraft-javascript-sdk/p-117fcdd3.entry.js +2 -0
  186. package/dist/searchcraft-javascript-sdk/p-117fcdd3.entry.js.map +1 -0
  187. package/dist/searchcraft-javascript-sdk/p-129e6f2c.js +3 -0
  188. package/dist/searchcraft-javascript-sdk/p-129e6f2c.js.map +1 -0
  189. package/dist/searchcraft-javascript-sdk/p-27cb401c.entry.js +2 -0
  190. package/dist/searchcraft-javascript-sdk/p-27cb401c.entry.js.map +1 -0
  191. package/dist/searchcraft-javascript-sdk/p-4df4a29e.entry.js +2 -0
  192. package/dist/searchcraft-javascript-sdk/p-4df4a29e.entry.js.map +1 -0
  193. package/dist/searchcraft-javascript-sdk/p-54248dd8.entry.js +2 -0
  194. package/dist/searchcraft-javascript-sdk/p-54248dd8.entry.js.map +1 -0
  195. package/dist/searchcraft-javascript-sdk/p-69430dbf.entry.js +2 -0
  196. package/dist/searchcraft-javascript-sdk/p-69430dbf.entry.js.map +1 -0
  197. package/dist/searchcraft-javascript-sdk/p-755f491b.js +2 -0
  198. package/dist/searchcraft-javascript-sdk/p-755f491b.js.map +1 -0
  199. package/dist/searchcraft-javascript-sdk/p-a460755d.entry.js +2 -0
  200. package/dist/searchcraft-javascript-sdk/p-a460755d.entry.js.map +1 -0
  201. package/dist/searchcraft-javascript-sdk/p-bc2c4259.entry.js +2 -0
  202. package/dist/searchcraft-javascript-sdk/p-bc2c4259.entry.js.map +1 -0
  203. package/dist/searchcraft-javascript-sdk/p-caecdcda.entry.js +2 -0
  204. package/dist/searchcraft-javascript-sdk/p-caecdcda.entry.js.map +1 -0
  205. package/dist/searchcraft-javascript-sdk/p-d9551738.js +2 -0
  206. package/dist/searchcraft-javascript-sdk/p-d9551738.js.map +1 -0
  207. package/dist/searchcraft-javascript-sdk/p-f8129731.entry.js +2 -0
  208. package/dist/searchcraft-javascript-sdk/p-f8129731.entry.js.map +1 -0
  209. package/dist/searchcraft-javascript-sdk/p-f839b682.entry.js +2 -0
  210. package/dist/searchcraft-javascript-sdk/p-f839b682.entry.js.map +1 -0
  211. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js +1 -1
  212. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js.map +1 -1
  213. package/dist/types/components/searchcraft-base-search-result/searchcraft-base-search-result.d.ts +53 -0
  214. package/dist/types/components/searchcraft-base-search-results/searchcraft-base-search-results.d.ts +68 -0
  215. package/dist/types/components/searchcraft-button/searchcraft-button.d.ts +20 -0
  216. package/dist/types/components/searchcraft-error-message/searchcraft-error-message.d.ts +12 -0
  217. package/dist/types/components/searchcraft-facet-list/searchcraft-facet-list.d.ts +25 -0
  218. package/dist/types/components/searchcraft-filter-panel/searchcraft-filter-panel.d.ts +12 -0
  219. package/dist/types/components/searchcraft-input-form/searchcraft-input-form.d.ts +37 -13
  220. package/dist/types/components/searchcraft-input-label/searchcraft-input-label.d.ts +13 -1
  221. package/dist/types/components/searchcraft-popover-button/searchcraft-popover-button.d.ts +7 -0
  222. package/dist/types/components/searchcraft-popover-form/searchcraft-popover-form.d.ts +97 -1
  223. package/dist/types/components/searchcraft-popover-list-item/searchcraft-popover-list-item.d.ts +22 -0
  224. package/dist/types/components/searchcraft-popover-list-view/searchcraft-popover-list-view.d.ts +19 -3
  225. package/dist/types/components/searchcraft-results-info/searchcraft-results-info.d.ts +10 -0
  226. package/dist/types/components/searchcraft-slider/searchcraft-slider.d.ts +18 -0
  227. package/dist/types/components/searchcraft-toggle-button/searchcraft-toggle-button.d.ts +11 -3
  228. package/dist/types/components.d.ts +1023 -30
  229. package/dist/types/index.d.ts +1 -1
  230. package/dist/types/provider/store.d.ts +4 -2
  231. package/dist/types/types/_shared.types.d.ts +45 -0
  232. package/dist/types/types/index.d.ts +1 -0
  233. package/dist/types/types/searchcraft-base-search-results.types.d.ts +1 -8
  234. package/dist/types/types/searchcraft-popover-form.types.d.ts +2 -1
  235. package/dist/types/utils/facets.d.ts +6 -0
  236. package/dist/types/utils/index.d.ts +3 -0
  237. package/dist/types/utils/styles.d.ts +2 -0
  238. package/dist/types/utils/{utils.d.ts → units.d.ts} +12 -19
  239. package/package.json +8 -4
  240. package/dist/cjs/index-b76bece0.js.map +0 -1
  241. package/dist/cjs/searchcraft-button_2.cjs.entry.js +0 -51
  242. package/dist/cjs/searchcraft-button_2.cjs.entry.js.map +0 -1
  243. package/dist/cjs/searchcraft-error-message.cjs.entry.js +0 -23
  244. package/dist/cjs/searchcraft-error-message.cjs.entry.js.map +0 -1
  245. package/dist/cjs/searchcraft-input-form.cjs.entry.js +0 -202
  246. package/dist/cjs/searchcraft-input-form.cjs.entry.js.map +0 -1
  247. package/dist/cjs/searchcraft-popover-list-view.cjs.entry.js +0 -26
  248. package/dist/cjs/searchcraft-popover-list-view.cjs.entry.js.map +0 -1
  249. package/dist/cjs/searchcraft-popover-result.cjs.entry.js +0 -25
  250. package/dist/cjs/searchcraft-popover-result.cjs.entry.js.map +0 -1
  251. package/dist/cjs/store-943576b0.js +0 -956
  252. package/dist/cjs/store-943576b0.js.map +0 -1
  253. package/dist/cjs/utils-a17279a2.js +0 -226
  254. package/dist/cjs/utils-a17279a2.js.map +0 -1
  255. package/dist/collection/components/searchcraft-popover-result/searchcraft-popover-result.js +0 -21
  256. package/dist/collection/components/searchcraft-popover-result/searchcraft-popover-result.js.map +0 -1
  257. package/dist/collection/utils/utils.js.map +0 -1
  258. package/dist/components/p-16983367.js +0 -35
  259. package/dist/components/p-16983367.js.map +0 -1
  260. package/dist/components/p-42bfef5f.js +0 -151
  261. package/dist/components/p-42bfef5f.js.map +0 -1
  262. package/dist/components/p-5380505b.js +0 -99
  263. package/dist/components/p-5380505b.js.map +0 -1
  264. package/dist/components/p-672354c0.js +0 -38
  265. package/dist/components/p-672354c0.js.map +0 -1
  266. package/dist/components/p-9cb3d38b.js +0 -48
  267. package/dist/components/p-9cb3d38b.js.map +0 -1
  268. package/dist/components/p-a23d2994.js +0 -67
  269. package/dist/components/p-a23d2994.js.map +0 -1
  270. package/dist/components/p-ad4ebde0.js +0 -952
  271. package/dist/components/p-ad4ebde0.js.map +0 -1
  272. package/dist/components/p-bd5fede3.js +0 -41
  273. package/dist/components/p-bd5fede3.js.map +0 -1
  274. package/dist/components/p-cbdcf6df.js +0 -101
  275. package/dist/components/p-cbdcf6df.js.map +0 -1
  276. package/dist/components/p-e4846fa2.js.map +0 -1
  277. package/dist/components/p-f308d05d.js +0 -218
  278. package/dist/components/p-f308d05d.js.map +0 -1
  279. package/dist/components/searchcraft-popover-result.d.ts +0 -11
  280. package/dist/components/searchcraft-popover-result.js +0 -38
  281. package/dist/components/searchcraft-popover-result.js.map +0 -1
  282. package/dist/esm/index-be042742.js.map +0 -1
  283. package/dist/esm/searchcraft-button_2.entry.js +0 -46
  284. package/dist/esm/searchcraft-button_2.entry.js.map +0 -1
  285. package/dist/esm/searchcraft-error-message.entry.js +0 -19
  286. package/dist/esm/searchcraft-error-message.entry.js.map +0 -1
  287. package/dist/esm/searchcraft-input-form.entry.js +0 -198
  288. package/dist/esm/searchcraft-input-form.entry.js.map +0 -1
  289. package/dist/esm/searchcraft-popover-list-view.entry.js +0 -22
  290. package/dist/esm/searchcraft-popover-list-view.entry.js.map +0 -1
  291. package/dist/esm/searchcraft-popover-result.entry.js +0 -21
  292. package/dist/esm/searchcraft-popover-result.entry.js.map +0 -1
  293. package/dist/esm/store-eb4269d6.js +0 -952
  294. package/dist/esm/store-eb4269d6.js.map +0 -1
  295. package/dist/esm/utils-c2ce411f.js +0 -218
  296. package/dist/esm/utils-c2ce411f.js.map +0 -1
  297. package/dist/searchcraft-javascript-sdk/p-04300412.entry.js +0 -2
  298. package/dist/searchcraft-javascript-sdk/p-04300412.entry.js.map +0 -1
  299. package/dist/searchcraft-javascript-sdk/p-09c7fbef.entry.js +0 -2
  300. package/dist/searchcraft-javascript-sdk/p-09c7fbef.entry.js.map +0 -1
  301. package/dist/searchcraft-javascript-sdk/p-32068485.entry.js +0 -2
  302. package/dist/searchcraft-javascript-sdk/p-32068485.entry.js.map +0 -1
  303. package/dist/searchcraft-javascript-sdk/p-4d3682a8.entry.js +0 -2
  304. package/dist/searchcraft-javascript-sdk/p-4d3682a8.entry.js.map +0 -1
  305. package/dist/searchcraft-javascript-sdk/p-61cf9d6c.entry.js +0 -2
  306. package/dist/searchcraft-javascript-sdk/p-61cf9d6c.entry.js.map +0 -1
  307. package/dist/searchcraft-javascript-sdk/p-93b92b65.entry.js +0 -2
  308. package/dist/searchcraft-javascript-sdk/p-93b92b65.entry.js.map +0 -1
  309. package/dist/searchcraft-javascript-sdk/p-a7a7b4e0.entry.js +0 -2
  310. package/dist/searchcraft-javascript-sdk/p-a7a7b4e0.entry.js.map +0 -1
  311. package/dist/searchcraft-javascript-sdk/p-a810aeae.entry.js +0 -2
  312. package/dist/searchcraft-javascript-sdk/p-a810aeae.entry.js.map +0 -1
  313. package/dist/searchcraft-javascript-sdk/p-aa155194.entry.js +0 -2
  314. package/dist/searchcraft-javascript-sdk/p-aa155194.entry.js.map +0 -1
  315. package/dist/searchcraft-javascript-sdk/p-ad4ebde0.js +0 -11
  316. package/dist/searchcraft-javascript-sdk/p-ad4ebde0.js.map +0 -1
  317. package/dist/searchcraft-javascript-sdk/p-adadf38a.entry.js +0 -2
  318. package/dist/searchcraft-javascript-sdk/p-adadf38a.entry.js.map +0 -1
  319. package/dist/searchcraft-javascript-sdk/p-d57eba31.entry.js +0 -2
  320. package/dist/searchcraft-javascript-sdk/p-d57eba31.entry.js.map +0 -1
  321. package/dist/searchcraft-javascript-sdk/p-d7d0b88c.js +0 -3
  322. package/dist/searchcraft-javascript-sdk/p-d7d0b88c.js.map +0 -1
  323. package/dist/searchcraft-javascript-sdk/p-f308d05d.js +0 -2
  324. package/dist/searchcraft-javascript-sdk/p-f308d05d.js.map +0 -1
  325. package/dist/types/components/searchcraft-popover-result/searchcraft-popover-result.d.ts +0 -6
  326. /package/dist/collection/components/{searchcraft-popover-result/searchcraft-popover-result.module.css → searchcraft-popover-button/searchcraft-popover-button.module.css} +0 -0
@@ -1,2 +0,0 @@
1
- import{r as t,c as e,h as s}from"./p-d7d0b88c.js";import{u as r,i as a}from"./p-ad4ebde0.js";import{p as c}from"./p-f308d05d.js";import{c as i}from"./p-5cdc6210.js";const n="@searchcraft/javascript-sdk";const o="0.5.3";const d="Searchcraft Javascript SDK";const p="Searchcraft";const h="Apache-2.0";const u="dist/index.cjs.js";const f="dist/index.js";const l="dist/types/index.d.ts";const b="dist/collection/collection-manifest.json";const g="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 m={type:"git",url:"https://bitbucket.org/madebychalk/searchcraft-javascript-sdks/"};const v=["dist/"];const w={build:"stencil build",dev:"stencil build --dev --watch",test:"stencil test --spec --e2e","test.watch":"stencil test --spec --e2e --watchAll",generate:"stencil generate"};const F={classnames:"^2.3.2"};const x={"@searchcraft/core":"*","@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 k={name:n,private:false,version:o,description:d,author:p,license:h,main:u,module:f,types:l,collection:b,"collection:main":"dist/collection/index.js",unpkg:g,exports:y,repository:m,files:v,scripts:w,dependencies:F,devDependencies:x};const C=":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-input-wrapper{position:relative;display:flex}.searchcraft-input-grid{display:grid;gap:4px 8px}.searchcraft-input-grid-buttonLeft{grid-template-rows:repeat(3, auto);grid-template-columns:auto 1fr}.searchcraft-input-grid-buttonLeft .searchcraft-input-button-wrapper{grid-column:1/span 1;grid-row:2/span 1}.searchcraft-input-grid-buttonLeft .searchcraft-input-label-wrapper{grid-column:2/span 1;grid-row:1/span 1}.searchcraft-input-grid-buttonLeft .searchcraft-input-error-wrapper{grid-column:2/span 1;grid-row:3/span 1}.searchcraft-input-grid-buttonLeft .searchcraft-input-wrapper{grid-column:2/span 1;grid-row:2/span 1}.searchcraft-input-grid-buttonRight{grid-template-rows:repeat(3, auto);grid-template-columns:1fr auto}.searchcraft-input-grid-buttonRight .searchcraft-input-button-wrapper{grid-column:2/span 1;grid-row:2/span 1}.searchcraft-input-grid-buttonRight .searchcraft-input-label-wrapper{grid-column:1/span 1;grid-row:1/span 1}.searchcraft-input-grid-buttonRight .searchcraft-input-error-wrapper{grid-column:1/span 1;grid-row:3/span 1}.searchcraft-input-grid-buttonRight .searchcraft-input-wrapper{grid-column:1/span 1;grid-row:2/span 1}.searchcraft-input-grid-buttonNone{grid-template-rows:repeat(3, auto);grid-template-columns:auto}.searchcraft-input-grid-buttonNone .searchcraft-input-button-wrapper{display:none}.searchcraft-input-grid-buttonNone .searchcraft-input-label-wrapper{grid-column:1/span 1;grid-row:1/span 1}.searchcraft-input-grid-buttonNone .searchcraft-input-error-wrapper{grid-column:1/span 1;grid-row:3/span 1}.searchcraft-input-grid-buttonNone .searchcraft-input-wrapper{grid-column:1/span 1;grid-row:2/span 1}.searchcraft-input{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-body-font-weight);line-height:var(--sc-body-line-height);background-color:var(--sc-surface-neutral-secondary);border:none;border-radius:var(--sc-input-border-radius);color:var(--sc-content-neutral-primary);outline:none;padding-left:var(--sc-input-padding-left);padding-right:var(--sc-input-padding-right);padding-top:12px;padding-bottom:12px;flex:1}.searchcraft-input::placeholder{color:var(--sc-content-disabled)}.searchcraft-input:focus{outline:var(--sc-border-brand) solid 2px}.searchcraft-input:focus::placeholder{opacity:0}.searchcraft-input.error{color:var(--sc-content-danger);outline:var(--sc-border-danger) solid 2px}.searchcraft-input.error:focus{outline:var(--sc-border-danger) solid 2px}.searchcraft-input-search-icon-wrapper{align-items:center;justify-content:center;display:flex;position:absolute;pointer-events:none;bottom:0;left:0;top:0;width:var(--sc-input-padding-left)}.searchcraft-input-search-icon{pointer-events:none;width:var(--sc-input-search-icon-size);height:var(--sc-input-search-icon-size)}.searchcraft-input-clear-button{all:unset;align-items:center;justify-content:center;cursor:pointer;display:flex;position:absolute;border:none;outline:none;bottom:0;right:0;top:0;width:var(--sc-input-padding-right)}.searchcraft-input-clear-icon{width:var(--sc-input-clear-icon-size);height:var(--sc-input-clear-icon-size)}";const j=C;const E=class{constructor(s){t(this,s);this.inputCleared=e(this,"inputCleared",7);this.noResultsReceived=e(this,"noResultsReceived",7);this.querySubmit=e(this,"querySubmit",7);this.inputFocus=e(this,"inputFocus",7);this.inputBlur=e(this,"inputBlur",7);this.debounceTimeout=null;this.searchStore=r.getState();this.handleOnInput=t=>{const e=t.target;this.inputValue=e.value;if(e.value.trim()===""){this.inputCleared.emit();return}if(!this.autoSearch){return}if(this.debounceDelay>0){if(this.debounceTimeout){clearTimeout(this.debounceTimeout)}this.debounceTimeout=setTimeout((()=>this.performSearch(e.value)),this.debounceDelay)}else{this.performSearch(e.value)}};this.performSearch=async t=>{if(t===r.getState().query){return}this.querySubmit.emit(t);this.searchTerm=t.trim();this.error=false;this.searchStore.setQuery(this.searchTerm);try{await this.searchStore.search()}catch(t){this.error=true;this.inputCleared.emit()}};this.handleClearInput=()=>{this.inputValue="";if(this.debounceTimeout){clearTimeout(this.debounceTimeout)}this.searchTerm="";this.searchStore.setQuery("");this.searchStore.setSearchResults(null);this.error=false;if(this.inputCleared){this.inputCleared.emit()}};this.handleFormSubmit=async t=>{t.preventDefault();await this.performSearch(this.searchTerm)};this.config=undefined;this.autoSearch=true;this.buttonPlacement="none";this.buttonLabel=undefined;this.inputLabel=undefined;this.customStyles={};this.placeholderValue="Enter Search";this.searchTerm="";this.debounceDelay=0;this.inputValue=this.searchTerm;this.error=false;this.isSearchcraftInitialized=false}init(){if(this.config&&!this.isSearchcraftInitialized){const t=new a(this.config,{sdkName:k.name,sdkVersion:k.version});this.searchStore.initialize(t,true);this.isSearchcraftInitialized=true}}componentDidLoad(){this.init()}onConfigChange(){this.init()}render(){const t=c(this.customStyles);const e=this.inputValue.length>0;const r=i("searchcraft-input-grid",{"searchcraft-input-grid-buttonLeft":this.buttonPlacement==="left","searchcraft-input-grid-buttonRight":this.buttonPlacement==="right","searchcraft-input-grid-buttonNone":this.buttonPlacement==="none"});return s("form",{key:"7f224a10ab80d70660c9db97be5d68830932570b",class:"searchcraft-input-form",onSubmit:this.handleFormSubmit},s("div",{key:"6822a21a43e5be992b11ddb6c86370ddd68e1475",class:r},s("div",{key:"6022989ca876ea46de048398a076bc43d5213554",class:"searchcraft-input-button-wrapper"},s("searchcraft-button",{key:"d48b61729ef9a3f19049dfe751aefa22fdc85e9f",onButtonClick:this.handleFormSubmit,label:this.buttonLabel})),s("div",{key:"3465e467cbb965ad813b6c9c726173bb3fe828f2",class:"searchcraft-input-label-wrapper"},s("searchcraft-input-label",{key:"1026b7834358c6673a72ef8352830c9b4681020f",label:this.inputLabel})),this.error&&s("div",{key:"ff0d55cd88e1895f9b0bd4c0afc917127e76afa2",class:"searchcraft-input-error-wrapper"},s("searchcraft-error-message",{key:"57fc160411f21f45617e1a3b8677fb4c6e96c0f0",errorMessage:"Please enter a search query."})),s("div",{key:"b2783bf86177d22d4abedb4420fdb2a1807527ef",class:"searchcraft-input-wrapper"},s("input",{key:"e985da32be58ab3e200866e085b2acd25b54aa31",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:"d5277758ae26262f5f3b49e8763add412661e5cf",class:"searchcraft-input-search-icon-wrapper"},s("svg",{key:"79792740ea1207fad40786f555c63c4a26ff3fe2",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:"7a487bdf41babdafb802ebd79c34a6a5da300cd6",id:"searchcraft-title"},"Searchcraft Search Icon Light"),s("path",{key:"27c442bf412aca373cbc982b3a35a00fe7bb82ed",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:"#404040","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}))),e&&s("button",{key:"4c4bc21e9e87f4245ac38d7af269aae35876b6b0",type:"button",class:"searchcraft-input-clear-button",onClick:this.handleClearInput},s("svg",{key:"4b82e65987a8a8c296d2b9c279474c29607727e0",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:"9d64212798691a2f8c6c9c4f74ceca1d2fe39fd1",id:"icon-title"},"Searchcraft Clear Input Icon Light"),s("path",{key:"4c6c5b33fbd9ac02661996bb56e0902094e9b140",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:"black","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}))))))}static get watchers(){return{config:["onConfigChange"]}}};E.style=j;export{E as searchcraft_input_form};
2
- //# sourceMappingURL=p-32068485.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["searchcraftInputFormModuleCss","SearchcraftInputFormStyle0","SearchcraftInput","this","debounceTimeout","searchStore","useSearchcraftStore","getState","handleOnInput","event","input","target","inputValue","value","trim","inputCleared","emit","autoSearch","debounceDelay","clearTimeout","setTimeout","performSearch","async","query","querySubmit","searchTerm","error","setQuery","search","handleClearInput","setSearchResults","handleFormSubmit","preventDefault","init","config","isSearchcraftInitialized","searchcraft","SearchcraftCore","sdkName","packageJson","name","sdkVersion","version","initialize","componentDidLoad","onConfigChange","render","validatedCustomStyles","parseCustomStyles","customStyles","isShowingClearButton","length","inputGridClassNames","classNames","buttonPlacement","h","key","class","onSubmit","onButtonClick","label","buttonLabel","inputLabel","errorMessage","autoComplete","onFocus","inputFocus","onBlur","inputBlur","onInput","placeholder","placeholderValue","style","type","viewBox","fill","xmlns","id","d","stroke","onClick"],"sources":["src/components/searchcraft-input-form/searchcraft-input-form.module.scss?tag=searchcraft-input-form","src/components/searchcraft-input-form/searchcraft-input-form.tsx"],"sourcesContent":[".searchcraft-input-wrapper {\n position: relative;\n display: flex;\n}\n\n.searchcraft-input-grid {\n display: grid;\n gap: 4px 8px;\n}\n\n.searchcraft-input-grid-buttonLeft {\n grid-template-rows: repeat(3, auto);\n grid-template-columns: auto 1fr;\n\n & .searchcraft-input-button-wrapper {\n grid-column: 1 / span 1;\n grid-row: 2 / span 1;\n }\n\n & .searchcraft-input-label-wrapper {\n grid-column: 2 / span 1;\n grid-row: 1 / span 1;\n }\n\n & .searchcraft-input-error-wrapper {\n grid-column: 2 / span 1;\n grid-row: 3 / span 1;\n }\n\n & .searchcraft-input-wrapper {\n grid-column: 2 / span 1;\n grid-row: 2 / span 1;\n }\n}\n\n.searchcraft-input-grid-buttonRight {\n grid-template-rows: repeat(3, auto);\n grid-template-columns: 1fr auto;\n\n & .searchcraft-input-button-wrapper {\n grid-column: 2 / span 1;\n grid-row: 2 / span 1;\n }\n\n & .searchcraft-input-label-wrapper {\n grid-column: 1 / span 1;\n grid-row: 1 / span 1;\n }\n\n & .searchcraft-input-error-wrapper {\n grid-column: 1 / span 1;\n grid-row: 3 / span 1;\n }\n\n & .searchcraft-input-wrapper {\n grid-column: 1 / span 1;\n grid-row: 2 / span 1;\n }\n}\n\n.searchcraft-input-grid-buttonNone {\n grid-template-rows: repeat(3, auto);\n grid-template-columns: auto;\n\n & .searchcraft-input-button-wrapper {\n display: none;\n }\n\n & .searchcraft-input-label-wrapper {\n grid-column: 1 / span 1;\n grid-row: 1 / span 1;\n }\n\n & .searchcraft-input-error-wrapper {\n grid-column: 1 / span 1;\n grid-row: 3 / span 1;\n }\n\n & .searchcraft-input-wrapper {\n grid-column: 1 / span 1;\n grid-row: 2 / span 1;\n }\n}\n\n.searchcraft-input {\n @include body();\n background-color: var(--sc-surface-neutral-secondary);\n border: none;\n border-radius: var(--sc-input-border-radius);\n color: var(--sc-content-neutral-primary);\n outline: none;\n padding-left: var(--sc-input-padding-left);\n padding-right: var(--sc-input-padding-right);\n padding-top: 12px;\n padding-bottom: 12px;\n flex: 1;\n\n &::placeholder {\n color: var(--sc-content-disabled);\n }\n\n &:focus {\n outline: var(--sc-border-brand) solid 2px;\n }\n\n &:focus::placeholder {\n opacity: 0;\n }\n}\n\n.searchcraft-input.error {\n color: var(--sc-content-danger);\n outline: var(--sc-border-danger) solid 2px;\n\n &:focus {\n outline: var(--sc-border-danger) solid 2px;\n }\n}\n\n.searchcraft-input-search-icon-wrapper {\n align-items: center;\n justify-content: center;\n display: flex;\n position: absolute;\n pointer-events: none;\n bottom: 0;\n left: 0;\n top: 0;\n width: var(--sc-input-padding-left);\n}\n\n.searchcraft-input-search-icon {\n pointer-events: none;\n width: var(--sc-input-search-icon-size);\n height: var(--sc-input-search-icon-size);\n}\n\n.searchcraft-input-clear-button {\n all: unset;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n display: flex;\n position: absolute;\n border: none;\n outline: none;\n bottom: 0;\n right: 0;\n top: 0;\n width: var(--sc-input-padding-right);\n}\n\n.searchcraft-input-clear-icon {\n width: var(--sc-input-clear-icon-size);\n height: var(--sc-input-clear-icon-size);\n}\n","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/utils';\nimport { useSearchcraftStore } from '@provider/store';\nimport classNames from 'classnames';\n\nexport interface ScInputCustomEvent<T> extends CustomEvent<T> {\n detail: T;\n target: HTMLSearchcraftInputFormElement;\n}\n\n@Component({\n tag: 'searchcraft-input-form',\n styleUrl: 'searchcraft-input-form.module.scss',\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 * The duration to debounce the input's `inputChange` event.\n */\n @Prop() debounceDelay = 0;\n /**\n * Event emitted when the input element has been cleared.\n */\n @Event() inputCleared: EventEmitter<void>;\n /**\n * Event emitted when a query returns with no results received.\n */\n @Event() noResultsReceived: EventEmitter<void>;\n /**\n * Event emitted when a new search request has been submitted.\n */\n @Event() querySubmit: EventEmitter<string>;\n /**\n * Event emitted when the input has gained focus.\n */\n @Event() inputFocus: EventEmitter<void>;\n /**\n * Event emitted when the input has lost focus.\n */\n @Event() inputBlur: EventEmitter<void>;\n\n @State() inputValue = this.searchTerm;\n @State() error = false;\n @State() isSearchcraftInitialized = false;\n\n private debounceTimeout: ReturnType<typeof setTimeout> | null = null;\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 }\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 (input.value.trim() === '') {\n this.inputCleared.emit();\n return;\n }\n\n if (!this.autoSearch) {\n return;\n }\n\n if (this.debounceDelay > 0) {\n if (this.debounceTimeout) {\n clearTimeout(this.debounceTimeout);\n }\n\n this.debounceTimeout = setTimeout(\n () => this.performSearch(input.value),\n this.debounceDelay,\n );\n } else {\n this.performSearch(input.value);\n }\n };\n\n private performSearch = async (value: string) => {\n if (value === useSearchcraftStore.getState().query) {\n return;\n }\n this.querySubmit.emit(value);\n this.searchTerm = value.trim();\n this.error = false;\n this.searchStore.setQuery(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\n if (this.debounceTimeout) {\n clearTimeout(this.debounceTimeout);\n }\n\n this.searchTerm = '';\n this.searchStore.setQuery('');\n this.searchStore.setSearchResults(null);\n this.error = false;\n\n if (this.inputCleared) {\n this.inputCleared.emit();\n }\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 return (\n <form class='searchcraft-input-form' onSubmit={this.handleFormSubmit}>\n <div class={inputGridClassNames}>\n <div class='searchcraft-input-button-wrapper'>\n <searchcraft-button\n onButtonClick={this.handleFormSubmit}\n label={this.buttonLabel}\n />\n </div>\n <div class='searchcraft-input-label-wrapper'>\n <searchcraft-input-label label={this.inputLabel} />\n </div>\n {this.error && (\n <div class='searchcraft-input-error-wrapper'>\n <searchcraft-error-message errorMessage='Please enter a search query.' />\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='#404040'\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='black'\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"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as s,c as e,h as t}from"./p-d7d0b88c.js";import{u as c}from"./p-ad4ebde0.js";import{g as r,s as i}from"./p-f308d05d.js";const n=":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-search-results-container{display:flex;flex-direction:column;justify-content:center;gap:16px}.searchcraft-ad-section{align-items:center;background-color:#F1F1F1;border-radius:16px;display:flex;flex-direction:column;font-size:16px;justify-content:center;min-height:176px;text-align:center}.searchcraft-ad-section p{margin:0;color:var(--sc-content-disabled)}.searchcraft-search-results-empty-state-container{text-align:center}.searchcraft-search-results-error-message-container{text-align:center}";const a=n;const o=class{constructor(t){s(this,t);this.noResults=e(this,"noResults",7);this.adInterval=4;this.customStylesForResults=undefined;this.searchResultMappings=undefined;this.placeAdAtEnd=false;this.placeAdAtStart=true;this.resultImagePlacement="right";this.buttonLabel=undefined;this.buttonTarget="_blank";this.buttonRel=undefined;this.containerTarget="_blank";this.containerRel=undefined;this.hasSearched=false;this.query="";this.searchResults=null}componentDidLoad(){this.unsubscribe=c.subscribe((s=>{if(s.query.length>0){this.hasSearched=true}else{this.hasSearched=false}this.searchResults=Object.assign({},s.searchResults);this.query=s.query}));const{searchResults:s,query:e}=c.getState();this.searchResults=s;this.query=e}disconnectedCallback(){if(this.unsubscribe){this.unsubscribe()}}renderDocument(s,e){const c=r(s,this.searchResultMappings.title);const n=r(s,this.searchResultMappings.subtitle);const a=r(s,this.searchResultMappings.body);const o=r(s,this.searchResultMappings.containerHref);const d=r(s,this.searchResultMappings.buttonHref);const h=r(s,this.searchResultMappings.imageSource);const l=r(s,this.searchResultMappings.footer);const u=typeof this.customStylesForResults==="string"?this.customStylesForResults:i(this.customStylesForResults);return t("searchcraft-base-search-result",{key:`${s.document_id}-${e}`,"custom-styles":u,"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":e,"title-content":c,"subtitle-content":n,"body-content":a,"footer-content":l,"container-href":o,"button-href":d,"image-src":h})}render(){var s,e,c,r,i,n,a,o,d,h;if(this.query.trim()===""){return t("div",{class:"searchcraft-search-results-empty-state-container"},t("slot",{name:"empty-search"}))}if(!((s=this.searchResults)===null||s===void 0?void 0:s.data)){return}const l=(r=(c=(e=this.searchResults)===null||e===void 0?void 0:e.data)===null||c===void 0?void 0:c.hits)===null||r===void 0?void 0:r.map(((s,e)=>{const{doc:t}=s;return t}));const u=[];if(this.placeAdAtStart){u.push(t("div",{key:"ad-section-start",class:"searchcraft-ad-section"},t("p",null,"Ad Section")))}if(this.adInterval>0){l.forEach(((s,e)=>{u.push(this.renderDocument(s,e));if((e+1)%this.adInterval===0){u.push(t("div",{key:`ad-section-${e+1}`,class:"searchcraft-ad-section "},t("p",null,"Ad Section")))}}))}else{const s=l.map(((s,e)=>this.renderDocument(s,e)));u.push(...s)}if(this.placeAdAtEnd){u.push(t("div",{key:"ad-section-end",class:"searchcraft-ad-section"},t("p",null,"Ad Section")))}if(this.query.length>0&&((a=(n=(i=this.searchResults)===null||i===void 0?void 0:i.data)===null||n===void 0?void 0:n.hits)===null||a===void 0?void 0:a.length)===0){this.noResults.emit()}return t("div",{class:"searchcraft-search-results-container"},u,this.query.length>0&&((h=(d=(o=this.searchResults)===null||o===void 0?void 0:o.data)===null||d===void 0?void 0:d.hits)===null||h===void 0?void 0:h.length)===0&&t("div",{class:"searchcraft-search-results-error-message-container"},t("searchcraft-error-message",{"error-message":`No search results found for "${this.query}" query`})))}};o.style=a;export{o as searchcraft_base_search_results};
2
- //# sourceMappingURL=p-4d3682a8.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["searchcraftBaseSearchResultsModuleCss","SearchcraftBaseSearchResultsStyle0","SearchcraftBaseSearchResults","componentDidLoad","this","unsubscribe","useSearchcraftStore","subscribe","state","query","length","hasSearched","searchResults","Object","assign","getState","disconnectedCallback","renderDocument","document","index","titleContent","getDocumentValueFromSearchResultMapping","searchResultMappings","title","subtitleContent","subtitle","bodyContent","body","containerHref","buttonHref","imageSource","footerContent","footer","serializedStyles","customStylesForResults","serializeStyles","h","key","document_id","resultImagePlacement","containerRel","containerTarget","buttonLabel","buttonRel","buttonTarget","render","trim","class","name","_a","data","documents","_d","_c","_b","hits","map","_index","doc","result","finalComponents","placeAdAtStart","push","adInterval","forEach","documentElements","placeAdAtEnd","_g","_f","_e","noResults","emit","_k","_j","_h"],"sources":["src/components/searchcraft-base-search-results/searchcraft-base-search-results.module.scss?tag=searchcraft-base-search-results","src/components/searchcraft-base-search-results/searchcraft-base-search-results.tsx"],"sourcesContent":[".searchcraft-search-results-container {\n display: flex;\n flex-direction: column;\n justify-content: center;\n gap: 16px;\n}\n\n.searchcraft-ad-section {\n align-items: center;\n background-color: #F1F1F1;\n border-radius: 16px;\n display: flex;\n flex-direction: column;\n font-size: 16px;\n justify-content: center;\n min-height: 176px;\n text-align: center;\n\n p {\n margin: 0;\n color: var(--sc-content-disabled);\n }\n}\n\n.searchcraft-search-results-empty-state-container {\n text-align: center;\n}\n\n.searchcraft-search-results-error-message-container {\n text-align: center;\n}\n","import {\n Component,\n h,\n Event,\n Prop,\n State,\n type EventEmitter,\n} from '@stencil/core';\n\nimport type { SearchcraftResponse } from '@searchcraft/core';\n\nimport { useSearchcraftStore } from '@provider/store';\n\nimport {\n getDocumentValueFromSearchResultMapping,\n serializeStyles,\n} from '@utils/utils';\nimport type { SearchResultMappings } from 'types';\n\n@Component({\n tag: 'searchcraft-base-search-results',\n styleUrl: 'searchcraft-base-search-results.module.scss',\n shadow: false,\n})\nexport class SearchcraftBaseSearchResults {\n @Prop() adInterval = 4;\n @Prop() customStylesForResults:\n | string\n | Record<string, Record<string, string>>\n | undefined;\n @Prop() searchResultMappings: SearchResultMappings | undefined;\n @Prop() placeAdAtEnd = false;\n @Prop() placeAdAtStart = true;\n @Prop() resultImagePlacement: 'left' | 'right' = 'right';\n @Prop() buttonLabel: string | undefined;\n @Prop() buttonTarget: '_blank' | '_self' | '_top' | '_parent' = '_blank';\n @Prop() buttonRel: 'noreferrer' | 'noopener' | 'nofollow' | undefined;\n @Prop() containerTarget: '_blank' | '_self' | '_top' | '_parent' = '_blank';\n @Prop() containerRel: 'noreferrer' | 'noopener' | 'nofollow' | undefined;\n\n @Event() noResults: EventEmitter<void>;\n\n @State() hasSearched = false;\n @State() query = '';\n @State() searchResults: SearchcraftResponse | null = null;\n\n private unsubscribe: () => void;\n\n componentDidLoad() {\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n if (state.query.length > 0) {\n this.hasSearched = true;\n } else {\n this.hasSearched = false;\n }\n this.searchResults = { ...state.searchResults };\n this.query = state.query;\n });\n\n const { searchResults, query } = useSearchcraftStore.getState();\n this.searchResults = searchResults;\n this.query = query;\n }\n\n disconnectedCallback() {\n if (this.unsubscribe) {\n this.unsubscribe();\n }\n }\n\n renderDocument(document: Record<string, unknown>, index: number) {\n /**\n * Index field values -> Result container props mappings.\n */\n const titleContent = getDocumentValueFromSearchResultMapping(\n document,\n this.searchResultMappings.title,\n );\n const subtitleContent = getDocumentValueFromSearchResultMapping(\n document,\n this.searchResultMappings.subtitle,\n );\n const bodyContent = getDocumentValueFromSearchResultMapping(\n document,\n this.searchResultMappings.body,\n );\n const containerHref = getDocumentValueFromSearchResultMapping(\n document,\n this.searchResultMappings.containerHref,\n );\n const buttonHref = getDocumentValueFromSearchResultMapping(\n document,\n this.searchResultMappings.buttonHref,\n );\n const imageSource = getDocumentValueFromSearchResultMapping(\n document,\n this.searchResultMappings.imageSource,\n );\n const footerContent = getDocumentValueFromSearchResultMapping(\n document,\n this.searchResultMappings.footer,\n );\n\n const serializedStyles =\n typeof this.customStylesForResults === 'string'\n ? this.customStylesForResults\n : serializeStyles(this.customStylesForResults);\n\n return (\n <searchcraft-base-search-result\n key={`${document.document_id}-${index}`}\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={index}\n title-content={titleContent}\n subtitle-content={subtitleContent}\n body-content={bodyContent}\n footer-content={footerContent}\n container-href={containerHref}\n button-href={buttonHref}\n image-src={imageSource}\n />\n );\n }\n\n render() {\n if (this.query.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.searchResults?.data) {\n return;\n }\n\n const documents: Record<string, unknown>[] =\n this.searchResults?.data?.hits?.map((data, _index) => {\n const { doc: result } = data;\n return result;\n });\n\n const finalComponents: JSX.Element[] = [];\n\n if (this.placeAdAtStart) {\n finalComponents.push(\n <div key='ad-section-start' class='searchcraft-ad-section'>\n <p>Ad Section</p>\n </div>,\n );\n }\n\n if (this.adInterval > 0) {\n documents.forEach((document, index) => {\n finalComponents.push(this.renderDocument(document, index));\n\n if ((index + 1) % this.adInterval === 0) {\n finalComponents.push(\n <div\n key={`ad-section-${index + 1}`}\n class='searchcraft-ad-section '\n >\n <p>Ad Section</p>\n </div>,\n );\n }\n });\n } else {\n const documentElements = documents.map((document, index) =>\n this.renderDocument(document, index),\n );\n finalComponents.push(...documentElements);\n }\n\n if (this.placeAdAtEnd) {\n finalComponents.push(\n <div key='ad-section-end' class='searchcraft-ad-section'>\n <p>Ad Section</p>\n </div>,\n );\n }\n\n if (this.query.length > 0 && this.searchResults?.data?.hits?.length === 0) {\n this.noResults.emit();\n }\n\n return (\n <div class='searchcraft-search-results-container'>\n {finalComponents}\n {this.query.length > 0 &&\n this.searchResults?.data?.hits?.length === 0 && (\n <div class='searchcraft-search-results-error-message-container'>\n <searchcraft-error-message\n error-message={`No search results found for \"${this.query}\" query`}\n />\n </div>\n )}\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as e,h as s}from"./p-d7d0b88c.js";const o="";const c=o;const r=class{constructor(s){e(this,s);this.config=undefined;this.type="inline";this.popoverResultMappings=undefined}render(){return s("div",{key:"a0a5602203dc33f66fd950187e8f9761a13e5bdc",style:{display:"flex",flexDirection:"column",flex:"1"}},s("searchcraft-input",{key:"b8f9b0d86e66a17f8ddd9966e577e16c4834d1cb",onInputFocus:()=>console.log("focused"),onInputBlur:()=>console.log("blurred")}),s("searchcraft-popover-list-view",{key:"a6f5bf1118cd759f28e634e3dadbe64fe3470b6b",popoverResultMappings:this.popoverResultMappings}))}};r.style=c;export{r as searchcraft_popover_form};
2
- //# sourceMappingURL=p-61cf9d6c.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["searchcraftPopoverFormModuleCss","SearchcraftPopoverFormStyle0","SearchcraftPopoverForm","render","h","key","style","display","flexDirection","flex","onInputFocus","console","log","onInputBlur","popoverResultMappings","this"],"sources":["src/components/searchcraft-popover-form/searchcraft-popover-form.module.scss?tag=searchcraft-popover-form","src/components/searchcraft-popover-form/searchcraft-popover-form.tsx"],"sourcesContent":[null,"import { Component, Prop, h } from '@stencil/core';\n\nimport type { SearchcraftConfig } from '@searchcraft/core';\n\nimport type { PopoverResultMappings } from 'types';\n\n@Component({\n tag: 'searchcraft-popover-form',\n styleUrl: 'searchcraft-popover-form.module.scss',\n shadow: false,\n})\nexport class SearchcraftPopoverForm {\n @Prop() config: SearchcraftConfig | undefined;\n @Prop() type: 'inline' | 'fullscreen' | 'modal' = 'inline';\n @Prop() popoverResultMappings: PopoverResultMappings | undefined;\n\n render() {\n return (\n <div style={{ display: 'flex', flexDirection: 'column', flex: '1' }}>\n <searchcraft-input\n onInputFocus={() => console.log('focused')}\n onInputBlur={() => console.log('blurred')}\n />\n <searchcraft-popover-list-view\n popoverResultMappings={this.popoverResultMappings}\n />\n </div>\n );\n }\n}\n"],"mappings":"2CAAA,MAAMA,EAAkC,GACxC,MAAAC,EAAeD,E,MCUFE,EAAsB,M,yDAEiB,S,qCAGlD,MAAAC,GACE,OACEC,EAAA,OAAAC,IAAA,2CAAKC,MAAO,CAAEC,QAAS,OAAQC,cAAe,SAAUC,KAAM,MAC5DL,EAAA,qBAAAC,IAAA,2CACEK,aAAc,IAAMC,QAAQC,IAAI,WAChCC,YAAa,IAAMF,QAAQC,IAAI,aAEjCR,EAAA,iCAAAC,IAAA,2CACES,sBAAuBC,KAAKD,wB","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as s,h as e,F as t}from"./p-d7d0b88c.js";import{u as r}from"./p-ad4ebde0.js";const c=":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-search-result-container{all:unset;align-items:flex-start;border-radius:16px;display:flex;flex-direction:column;gap:16px;padding:8px;color:inherit;background-color:var(--sc-surface-neutral-primary)}@media (min-width: 900px){.searchcraft-search-result-container{flex-direction:row}}a.searchcraft-search-result-container{cursor:pointer;transition:background-color 100ms}.searchcraft-base-search-result-content-container{flex:1;display:flex;flex-direction:column;gap:8px}.searchcraft-search-result-image{border-radius:var(--sc-image-border-radius);width:100%}@media (min-width: 900px){.searchcraft-search-result-image{width:200px}}.searchcraft-base-search-result-title{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-bold-font-size);font-weight:var(--sc-body-bold-font-weight);line-height:var(--sc-body-bold-line-height);margin:0;color:var(--sc-content-neutral-primary)}.searchcraft-base-search-result-subtitle{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-body-small-font-weight);line-height:var(--sc-body-small-line-height);margin:0;color:var(--sc-content-disabled)}.searchcraft-base-search-result-body-content{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-body-font-weight);line-height:var(--sc-body-line-height);margin:0;color:var(--sc-content-neutral-secondary)}.searchcraft-base-search-result-footer-content{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-body-font-weight);line-height:var(--sc-body-line-height);margin:0;color:var(--sc-content-disabled)}";const a=c;const i=class{constructor(e){s(this,e);this.searchcraftStore=r.getState();this.recordMeasureEvent=()=>{var s,e,t;const r=this.searchcraftStore.getSearchcraftInstance();if(r){const c=this.documentPosition;const a=this.searchcraftStore.query;const i=((t=(e=(s=this.searchcraftStore.searchResults)===null||s===void 0?void 0:s.data)===null||e===void 0?void 0:e.hits)===null||t===void 0?void 0:t.length)||0;r.sendMeasureEvent("document_clicked",{document_position:c,number_of_documents:i,search_term:a})}};this.parseStyles=()=>{if(this.customStyles){try{return JSON.parse(this.customStyles)}catch(s){console.error("Error parsing custom styles:",s);return{}}}return{}};this.titleContent=undefined;this.subtitleContent=undefined;this.bodyContent=undefined;this.footerContent=undefined;this.buttonLabel=undefined;this.buttonHref=undefined;this.buttonTarget="_blank";this.buttonRel=undefined;this.containerHref=undefined;this.containerTarget="_blank";this.containerRel=undefined;this.imageSrc=undefined;this.imageAlt=undefined;this.imagePlacement=undefined;this.customStyles=undefined;this.documentPosition=0}render(){const s=this.parseStyles();const r=this.imageSrc&&e("img",{alt:this.imageAlt,class:"searchcraft-search-result-image",src:this.imageSrc,style:s.image||{}});const c=e(t,null,this.imageSrc&&this.imagePlacement==="left"&&r,e("div",{class:"searchcraft-base-search-result-content-container"},this.titleContent&&e("h2",{class:"searchcraft-base-search-result-title",style:s.title||{}},this.titleContent),this.subtitleContent&&e("h3",{class:"searchcraft-base-search-result-subtitle",style:s.subtitle||{}},this.subtitleContent),this.bodyContent&&e("p",{class:"searchcraft-base-search-result-body-content",style:s.primaryContent||{}},this.bodyContent),this.footerContent&&e("p",{class:"searchcraft-base-search-result-footer-content",style:s.secondaryContent||{}},this.footerContent),this.buttonHref&&!this.containerHref&&this.buttonLabel&&e("a",{class:"searchcraft-search-result-button",href:this.buttonHref,style:s.button||{},target:this.buttonTarget,rel:this.buttonRel},this.buttonLabel)),this.imageSrc&&this.imagePlacement==="right"&&r);if(this.containerHref){return e("a",{class:"searchcraft-search-result-container",onClick:this.recordMeasureEvent,href:this.containerHref,rel:this.containerRel,style:s.container||{},tabindex:"0",target:this.containerTarget},c)}return e("div",{class:"searchcraft-search-result-container",style:s.container||{}},c)}};i.style=a;export{i as searchcraft_base_search_result};
2
- //# sourceMappingURL=p-93b92b65.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["searchcraftBaseSearchResultModuleCss","SearchcraftBaseSearchResultStyle0","SearchcraftBaseSearchResult","this","searchcraftStore","useSearchcraftStore","getState","recordMeasureEvent","searchcraft","getSearchcraftInstance","document_position","documentPosition","search_term","query","number_of_documents","_c","_b","_a","searchResults","data","hits","length","sendMeasureEvent","parseStyles","customStyles","JSON","parse","error","console","render","styles","imageContainer","imageSrc","h","alt","imageAlt","class","src","style","image","contentContainer","Fragment","imagePlacement","titleContent","title","subtitleContent","subtitle","bodyContent","primaryContent","footerContent","secondaryContent","buttonHref","containerHref","buttonLabel","href","button","target","buttonTarget","rel","buttonRel","onClick","containerRel","container","tabindex","containerTarget"],"sources":["src/components/searchcraft-base-search-result/searchcraft-base-search-result.module.scss?tag=searchcraft-base-search-result","src/components/searchcraft-base-search-result/searchcraft-base-search-result.tsx"],"sourcesContent":["\n.searchcraft-search-result-container {\n all: unset;\n align-items: flex-start;\n border-radius: 16px;\n display: flex;\n flex-direction: column;\n gap: 16px;\n padding: 8px;\n color: inherit;\n\n background-color: var(--sc-surface-neutral-primary);\n\n @media (min-width: 900px) {\n flex-direction: row;\n }\n}\n\na.searchcraft-search-result-container {\n cursor: pointer;\n transition: background-color 100ms;\n}\n\n.searchcraft-base-search-result-content-container {\n flex: 1;\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.searchcraft-search-result-image {\n border-radius: var(--sc-image-border-radius);\n width: 100%;\n\n @media (min-width: 900px) {\n width: 200px;\n }\n}\n\n.searchcraft-base-search-result-title {\n @include body-bold();\n margin: 0;\n color: var(--sc-content-neutral-primary);\n}\n\n.searchcraft-base-search-result-subtitle {\n @include body-small();\n margin: 0;\n color: var(--sc-content-disabled);\n}\n\n.searchcraft-base-search-result-body-content {\n @include body();\n margin: 0;\n color: var(--sc-content-neutral-secondary);\n}\n\n.searchcraft-base-search-result-footer-content {\n @include body();\n margin: 0;\n color: var(--sc-content-disabled);\n}\n","import { useSearchcraftStore } from '@provider/store';\nimport { Component, Fragment, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'searchcraft-base-search-result',\n styleUrl: 'searchcraft-base-search-result.module.scss',\n shadow: false,\n})\nexport class SearchcraftBaseSearchResult {\n @Prop() titleContent: string | undefined;\n @Prop() subtitleContent: string | undefined;\n @Prop() bodyContent: string | undefined;\n @Prop() footerContent: string | undefined;\n @Prop() buttonLabel: string | undefined;\n @Prop() buttonHref: string | undefined;\n @Prop() buttonTarget: '_blank' | '_self' | '_top' | '_parent' = '_blank';\n @Prop() buttonRel: 'noreferrer' | 'noopener' | 'nofollow' | undefined;\n @Prop() containerHref: string | undefined;\n @Prop() containerTarget: '_blank' | '_self' | '_top' | '_parent' = '_blank';\n @Prop() containerRel: 'noreferrer' | 'noopener' | 'nofollow' | undefined;\n @Prop() imageSrc: string | undefined;\n @Prop() imageAlt: string | undefined;\n @Prop() imagePlacement: 'left' | 'right';\n @Prop() customStyles: string | undefined;\n @Prop() documentPosition = 0;\n\n private searchcraftStore = useSearchcraftStore.getState();\n\n private recordMeasureEvent = () => {\n const searchcraft = this.searchcraftStore.getSearchcraftInstance();\n\n if (searchcraft) {\n const document_position = this.documentPosition;\n const search_term = this.searchcraftStore.query;\n const number_of_documents =\n this.searchcraftStore.searchResults?.data?.hits?.length || 0;\n\n searchcraft.sendMeasureEvent('document_clicked', {\n document_position,\n number_of_documents,\n search_term,\n });\n }\n };\n\n private parseStyles = (): Record<string, { [key: string]: string }> => {\n if (this.customStyles) {\n try {\n return JSON.parse(this.customStyles);\n } catch (error) {\n console.error('Error parsing custom styles:', error);\n return {};\n }\n }\n return {};\n };\n\n render() {\n const styles = this.parseStyles();\n const imageContainer = this.imageSrc && (\n <img\n alt={this.imageAlt}\n class='searchcraft-search-result-image'\n src={this.imageSrc}\n style={styles.image || {}}\n />\n );\n\n const contentContainer = (\n <Fragment>\n {this.imageSrc && this.imagePlacement === 'left' && imageContainer}\n <div class='searchcraft-base-search-result-content-container'>\n {this.titleContent && (\n <h2\n class='searchcraft-base-search-result-title'\n style={styles.title || {}}\n >\n {this.titleContent}\n </h2>\n )}\n {this.subtitleContent && (\n <h3\n class='searchcraft-base-search-result-subtitle'\n style={styles.subtitle || {}}\n >\n {this.subtitleContent}\n </h3>\n )}\n {this.bodyContent && (\n <p\n class='searchcraft-base-search-result-body-content'\n style={styles.primaryContent || {}}\n >\n {this.bodyContent}\n </p>\n )}\n\n {this.footerContent && (\n <p\n class='searchcraft-base-search-result-footer-content'\n style={styles.secondaryContent || {}}\n >\n {this.footerContent}\n </p>\n )}\n {this.buttonHref && !this.containerHref && this.buttonLabel && (\n <a\n class='searchcraft-search-result-button'\n href={this.buttonHref}\n style={styles.button || {}}\n target={this.buttonTarget}\n rel={this.buttonRel}\n >\n {this.buttonLabel}\n </a>\n )}\n </div>\n {this.imageSrc && this.imagePlacement === 'right' && imageContainer}\n </Fragment>\n );\n\n /** Render as an anchor tag if the containerHref prop is present. */\n if (this.containerHref) {\n return (\n <a\n class='searchcraft-search-result-container'\n onClick={this.recordMeasureEvent}\n href={this.containerHref}\n rel={this.containerRel}\n style={styles.container || {}}\n tabindex='0'\n target={this.containerTarget}\n >\n {contentContainer}\n </a>\n );\n }\n\n /** Render as a div if no href prop. */\n return (\n <div\n class='searchcraft-search-result-container'\n style={styles.container || {}}\n >\n {contentContainer}\n </div>\n );\n }\n}\n"],"mappings":"sFAAA,MAAMA,EAAuC,wvJAC7C,MAAAC,EAAeD,E,MCOFE,EAA2B,M,yBAkB9BC,KAAAC,iBAAmBC,EAAoBC,WAEvCH,KAAAI,mBAAqB,K,UAC3B,MAAMC,EAAcL,KAAKC,iBAAiBK,yBAE1C,GAAID,EAAa,CACf,MAAME,EAAoBP,KAAKQ,iBAC/B,MAAMC,EAAcT,KAAKC,iBAAiBS,MAC1C,MAAMC,IACJC,GAAAC,GAAAC,EAAAd,KAAKC,iBAAiBc,iBAAa,MAAAD,SAAA,SAAAA,EAAEE,QAAI,MAAAH,SAAA,SAAAA,EAAEI,QAAI,MAAAL,SAAA,SAAAA,EAAEM,SAAU,EAE7Db,EAAYc,iBAAiB,mBAAoB,CAC/CZ,oBACAI,sBACAF,e,GAKET,KAAAoB,YAAc,KACpB,GAAIpB,KAAKqB,aAAc,CACrB,IACE,OAAOC,KAAKC,MAAMvB,KAAKqB,a,CACvB,MAAOG,GACPC,QAAQD,MAAM,+BAAgCA,GAC9C,MAAO,E,EAGX,MAAO,EAAE,E,0LAvCqD,S,2EAGG,S,4JAMxC,C,CAiC3B,MAAAE,GACE,MAAMC,EAAS3B,KAAKoB,cACpB,MAAMQ,EAAiB5B,KAAK6B,UAC1BC,EAAA,OACEC,IAAK/B,KAAKgC,SACVC,MAAM,kCACNC,IAAKlC,KAAK6B,SACVM,MAAOR,EAAOS,OAAS,KAI3B,MAAMC,EACJP,EAACQ,EAAQ,KACNtC,KAAK6B,UAAY7B,KAAKuC,iBAAmB,QAAUX,EACpDE,EAAA,OAAKG,MAAM,oDACRjC,KAAKwC,cACJV,EAAA,MACEG,MAAM,uCACNE,MAAOR,EAAOc,OAAS,IAEtBzC,KAAKwC,cAGTxC,KAAK0C,iBACJZ,EAAA,MACEG,MAAM,0CACNE,MAAOR,EAAOgB,UAAY,IAEzB3C,KAAK0C,iBAGT1C,KAAK4C,aACJd,EAAA,KACEG,MAAM,8CACNE,MAAOR,EAAOkB,gBAAkB,IAE/B7C,KAAK4C,aAIT5C,KAAK8C,eACJhB,EAAA,KACEG,MAAM,gDACNE,MAAOR,EAAOoB,kBAAoB,IAEjC/C,KAAK8C,eAGT9C,KAAKgD,aAAehD,KAAKiD,eAAiBjD,KAAKkD,aAC9CpB,EAAA,KACEG,MAAM,mCACNkB,KAAMnD,KAAKgD,WACXb,MAAOR,EAAOyB,QAAU,GACxBC,OAAQrD,KAAKsD,aACbC,IAAKvD,KAAKwD,WAETxD,KAAKkD,cAIXlD,KAAK6B,UAAY7B,KAAKuC,iBAAmB,SAAWX,GAKzD,GAAI5B,KAAKiD,cAAe,CACtB,OACEnB,EAAA,KACEG,MAAM,sCACNwB,QAASzD,KAAKI,mBACd+C,KAAMnD,KAAKiD,cACXM,IAAKvD,KAAK0D,aACVvB,MAAOR,EAAOgC,WAAa,GAC3BC,SAAS,IACTP,OAAQrD,KAAK6D,iBAEZxB,E,CAMP,OACEP,EAAA,OACEG,MAAM,sCACNE,MAAOR,EAAOgC,WAAa,IAE1BtB,E","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as e,h as c}from"./p-d7d0b88c.js";const o="";const a=o;const d=class{constructor(c){e(this,c)}componentDidLoad(){}connectedCallback(){}disconnectedCallback(){}render(){return c("div",{key:"e4d6558ca479b241642b04513e173ac9abadeab0",style:{display:"flex"}},c("p",{key:"c9e99c2d2e829d00f7d3905e52deb6061ff71077"},"[popover result]"))}};d.style=a;export{d as searchcraft_popover_result};
2
- //# sourceMappingURL=p-a7a7b4e0.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["searchcraftPopoverResultModuleCss","SearchcraftPopoverResultStyle0","SearchcraftPopoverResult","componentDidLoad","connectedCallback","disconnectedCallback","render","h","key","style","display"],"sources":["src/components/searchcraft-popover-result/searchcraft-popover-result.module.scss?tag=searchcraft-popover-result","src/components/searchcraft-popover-result/searchcraft-popover-result.tsx"],"sourcesContent":[null,"import { Component, h } from '@stencil/core';\n\n@Component({\n tag: 'searchcraft-popover-result',\n styleUrl: 'searchcraft-popover-result.module.scss',\n shadow: false,\n})\nexport class SearchcraftPopoverResult {\n componentDidLoad() {}\n\n connectedCallback() {}\n\n disconnectedCallback() {}\n\n render() {\n return (\n <div style={{ display: 'flex' }}>\n <p>[popover result]</p>\n </div>\n );\n }\n}\n"],"mappings":"2CAAA,MAAMA,EAAoC,GAC1C,MAAAC,EAAeD,E,MCMFE,EAAwB,M,yBACnC,gBAAAC,GAAgB,CAEhB,iBAAAC,GAAiB,CAEjB,oBAAAC,GAAoB,CAEpB,MAAAC,GACE,OACEC,EAAA,OAAAC,IAAA,2CAAKC,MAAO,CAAEC,QAAS,SACrBH,EAAA,KAAAC,IAAA,gE","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as e,h as s}from"./p-d7d0b88c.js";import{u as a}from"./p-ad4ebde0.js";import{a as c}from"./p-f308d05d.js";const t=":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-filter-panel{display:flex;flex-direction:column;gap:16px}.searchcraft-filter-panel-section{display:flex;flex-direction:column;gap:8px}.searchcraft-filter-panel-label{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-bold-font-size);font-weight:var(--sc-body-small-bold-font-weight);line-height:var(--sc-body-small-bold-line-height)}";const n=t;const r=class{constructor(s){e(this,s);this.searchStore=a.getState();this.items=[];this.unsubscribe=undefined;this.lastQuery=undefined}componentDidLoad(){this.unsubscribe=a.subscribe((e=>{this.lastQuery=e.query||""}))}disconnectedCallback(){var e;(e=this.unsubscribe)===null||e===void 0?void 0:e.call(this)}handleDateRangeChanged(e,s,a){const c=new Date(s);const t=new Date(a);this.searchStore.addRangeValueForIndexField({fieldName:e,value:`${e}:[${c.toISOString()} TO ${t.toISOString()}]`});this.searchStore.search()}handleNumericRangeChanged(e,s,a){this.searchStore.addRangeValueForIndexField({fieldName:e,value:`${e}:[${s} TO ${a}]`});this.searchStore.search()}handleFacetSelectionUpdated(e,s){if(s.length>0){this.searchStore.addFacetPathsForIndexField({fieldName:e,value:`${e}: IN [${s.join(" ")}]`})}else{this.searchStore.removeFacetPathsForIndexField(e)}this.searchStore.search()}handleExactMatchToggleUpdated(e){this.searchStore.setSearchMode(e?"normal":"fuzzy");this.searchStore.search()}handleMostRecentToggleUpdated(e){this.searchStore.setSortType(e?"desc":"asc");this.searchStore.search()}render(){return s("div",{key:"45bcbe509465b8fe3720f3a535902906acfac2ea",class:"searchcraft-filter-panel"},this.items.map((e=>{switch(e.type){case"dateRange":{const a=e;const t=new Date(a.options.minDate).getTime();const n=new Date(a.options.maxDate).getTime();const r=c(a.options.granularity);return s("div",{class:"searchcraft-filter-panel-section"},s("p",{class:"searchcraft-filter-panel-label"},e.label),s("searchcraft-slider",{min:t,max:n,granularity:r,dataType:"date",onRangeChanged:e=>{this.handleDateRangeChanged(a.fieldName,e.detail.startValue,e.detail.endValue)}}))}case"numericRange":{const a=e;return s("div",{class:"searchcraft-filter-panel-section"},s("p",{class:"searchcraft-filter-panel-label"},e.label),s("searchcraft-slider",{min:a.options.min,max:a.options.max,granularity:a.options.granularity,onRangeChanged:e=>{this.handleNumericRangeChanged(a.fieldName,e.detail.startValue,e.detail.endValue)}}))}case"facets":{const a=e;return s("div",{class:"searchcraft-filter-panel-section"},s("p",{class:"searchcraft-filter-panel-label"},e.label),s("searchcraft-facet-list",{fieldName:a.fieldName,onFacetSelectionUpdated:e=>{this.handleFacetSelectionUpdated(a.fieldName,e.detail.paths)}}))}case"exactMatchToggle":{const a=e;return s("searchcraft-toggle-button",{label:a.label,subLabel:a.options.subLabel,onToggleUpdated:e=>{this.handleExactMatchToggleUpdated(e.detail)}})}case"mostRecentToggle":{const a=e;return s("searchcraft-toggle-button",{label:a.label,subLabel:a.options.subLabel,onToggleUpdated:e=>{this.handleMostRecentToggleUpdated(e.detail)}})}}})))}};r.style=n;export{r as searchcraft_filter_panel};
2
- //# sourceMappingURL=p-a810aeae.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["searchcraftFilterPanelModuleCss","SearchcraftFilterPanelStyle0","SearchcraftFilterPanel","this","searchStore","useSearchcraftStore","getState","componentDidLoad","unsubscribe","subscribe","state","lastQuery","query","disconnectedCallback","_a","call","handleDateRangeChanged","fieldName","min","max","start","Date","end","addRangeValueForIndexField","value","toISOString","search","handleNumericRangeChanged","handleFacetSelectionUpdated","paths","length","addFacetPathsForIndexField","join","removeFacetPathsForIndexField","handleExactMatchToggleUpdated","isActive","setSearchMode","handleMostRecentToggleUpdated","setSortType","render","h","key","class","items","map","filterItem","type","item","options","minDate","getTime","maxDate","granularityValue","getMillis","granularity","label","dataType","onRangeChanged","event","detail","startValue","endValue","onFacetSelectionUpdated","subLabel","onToggleUpdated"],"sources":["src/components/searchcraft-filter-panel/searchcraft-filter-panel.module.scss?tag=searchcraft-filter-panel","src/components/searchcraft-filter-panel/searchcraft-filter-panel.tsx"],"sourcesContent":[".searchcraft-filter-panel {\n display: flex;\n flex-direction: column;\n gap: 16px;\n}\n\n.searchcraft-filter-panel-section {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.searchcraft-filter-panel-label {\n @include body-small-bold();\n}\n","import { Component, h, Prop, State } from '@stencil/core';\nimport type {\n FilterItem,\n DateRangeFilterItem,\n NumericFilterItem,\n ExactMatchToggleFilterItem,\n FacetsFilterItem,\n} from '../../types/searchcraft-filter-panel.types';\nimport { useSearchcraftStore } from '@provider/store';\nimport { getMillis } from '@utils/utils';\n\n@Component({\n tag: 'searchcraft-filter-panel',\n styleUrl: 'searchcraft-filter-panel.module.scss',\n shadow: false,\n})\nexport class SearchcraftFilterPanel {\n @Prop() items: FilterItem[] = [];\n\n @State() unsubscribe: (() => void) | undefined;\n @State() lastQuery: string | undefined;\n\n private searchStore = useSearchcraftStore.getState();\n\n componentDidLoad() {\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n if (this.lastQuery !== state.query) {\n // A place to put actions to do when the query changes\n }\n this.lastQuery = state.query || '';\n });\n }\n\n disconnectedCallback() {\n this.unsubscribe?.();\n }\n\n handleDateRangeChanged(fieldName: string, min: number, max: number) {\n const start = new Date(min);\n const end = new Date(max);\n this.searchStore.addRangeValueForIndexField({\n fieldName,\n value: `${fieldName}:[${start.toISOString()} TO ${end.toISOString()}]`,\n });\n\n this.searchStore.search();\n }\n\n handleNumericRangeChanged(fieldName: string, min: number, max: number) {\n this.searchStore.addRangeValueForIndexField({\n fieldName,\n value: `${fieldName}:[${min} TO ${max}]`,\n });\n this.searchStore.search();\n }\n\n handleFacetSelectionUpdated(fieldName: string, paths: string[]) {\n if (paths.length > 0) {\n this.searchStore.addFacetPathsForIndexField({\n fieldName,\n value: `${fieldName}: IN [${paths.join(' ')}]`,\n });\n } else {\n this.searchStore.removeFacetPathsForIndexField(fieldName);\n }\n this.searchStore.search();\n }\n\n handleExactMatchToggleUpdated(isActive: boolean) {\n this.searchStore.setSearchMode(isActive ? 'normal' : 'fuzzy');\n this.searchStore.search();\n }\n\n handleMostRecentToggleUpdated(isActive: boolean) {\n this.searchStore.setSortType(isActive ? 'desc' : 'asc');\n this.searchStore.search();\n }\n\n /**\n * Iterate through `items` and render them based on `type`\n */\n render() {\n return (\n <div class='searchcraft-filter-panel'>\n {this.items.map((filterItem) => {\n switch (filterItem.type) {\n case 'dateRange': {\n const item = filterItem as DateRangeFilterItem;\n const min = new Date(item.options.minDate).getTime();\n const max = new Date(item.options.maxDate).getTime();\n const granularityValue = getMillis(item.options.granularity);\n // return date range slider\n return (\n <div class='searchcraft-filter-panel-section'>\n <p class='searchcraft-filter-panel-label'>\n {filterItem.label}\n </p>\n <searchcraft-slider\n min={min}\n max={max}\n granularity={granularityValue}\n dataType='date'\n onRangeChanged={(event) => {\n this.handleDateRangeChanged(\n item.fieldName,\n event.detail.startValue,\n event.detail.endValue,\n );\n }}\n />\n </div>\n );\n }\n case 'numericRange': {\n const item = filterItem as NumericFilterItem;\n // return date range slider\n return (\n <div class='searchcraft-filter-panel-section'>\n <p class='searchcraft-filter-panel-label'>\n {filterItem.label}\n </p>\n <searchcraft-slider\n min={item.options.min}\n max={item.options.max}\n granularity={item.options.granularity}\n onRangeChanged={(event) => {\n this.handleNumericRangeChanged(\n item.fieldName,\n event.detail.startValue,\n event.detail.endValue,\n );\n }}\n />\n </div>\n );\n }\n case 'facets': {\n const item = filterItem as FacetsFilterItem;\n // return \"filters-list\"\n return (\n <div class='searchcraft-filter-panel-section'>\n <p class='searchcraft-filter-panel-label'>\n {filterItem.label}\n </p>\n <searchcraft-facet-list\n fieldName={item.fieldName}\n onFacetSelectionUpdated={(event) => {\n this.handleFacetSelectionUpdated(\n item.fieldName,\n event.detail.paths,\n );\n }}\n />\n </div>\n );\n }\n case 'exactMatchToggle': {\n const item = filterItem as ExactMatchToggleFilterItem;\n return (\n <searchcraft-toggle-button\n label={item.label}\n subLabel={item.options.subLabel}\n onToggleUpdated={(event) => {\n this.handleExactMatchToggleUpdated(event.detail);\n }}\n />\n );\n }\n case 'mostRecentToggle': {\n const item = filterItem as ExactMatchToggleFilterItem;\n return (\n <searchcraft-toggle-button\n label={item.label}\n subLabel={item.options.subLabel}\n onToggleUpdated={(event) => {\n this.handleMostRecentToggleUpdated(event.detail);\n }}\n />\n );\n }\n }\n })}\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as e,c as s,h as c,F as a}from"./p-d7d0b88c.js";import{c as t}from"./p-5cdc6210.js";import{u as r}from"./p-ad4ebde0.js";import{m as i,r as n,a as o}from"./p-f308d05d.js";const d=":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.filtersListContainer{width:100%}.filterCheckboxLabel{align-items:center;color:var(--sc-content-primary);display:flex;font-family:var(--sc-font-family);font-size:14px;font-weight:600;gap:14px;position:relative;-webkit-font-smoothing:antialiased}.filterCheckboxLabel input[type=checkbox]{align-items:center;appearance:none;background-color:var(--sc-surface-brand-secondary-hover);border:1px solid var(--sc-surface-disabled);border-radius:8px;cursor:pointer;display:flex;height:24px;justify-content:center;width:24px}.filterCheckboxLabel input[type=checkbox]:focus{outline:2px solid var(--sc-surface-brand-primary)}.filterCheckboxLabel input[type=checkbox]:checked{background-color:var(--sc-surface-brand-primary);position:relative}.filterCheckboxLabel input[type=checkbox]:checked+.checkContainer{display:block}.filterCheckboxLabel input[type=checkbox]:checked+.dashContainer{display:block}.childFilterCheckboxLabel{align-items:center;color:var(--sc-content-primary);display:flex;font-family:var(--sc-font-family);font-size:14px;font-weight:600;gap:12px;margin-left:24px;position:relative}.childFilterCheckboxLabel input[type=checkbox]{align-items:center;appearance:none;background-color:var(--sc-surface-brand-secondary-hover);border:1px solid var(--sc-surface-disabled);border-radius:8px;cursor:pointer;display:flex;height:24px;justify-content:center;position:relative;width:24px;-webkit-font-smoothing:antialiased}.childFilterCheckboxLabel input[type=checkbox]:focus{outline:2px solid var(--sc-surface-brand-primary)}.childFilterCheckboxLabel input[type=checkbox]:checked{background-color:var(--sc-surface-brand-primary);position:relative}.childFilterCheckboxLabel input[type=checkbox]:checked+.checkContainer{display:block}.childFilterCheckboxLabel input[type=checkbox]:checked+.dashContainer{display:block}.checkContainer{display:none;height:16px;width:16px;position:absolute;top:9px;left:8px}.dashContainer{display:none;height:3px;width:14px;position:absolute;top:3px;left:9px}.searchcraft-facet-message{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-body-small-font-weight);line-height:var(--sc-body-small-line-height);color:var(--sc-content-disabled);text-align:center}";const h=d;const l=class{constructor(c){e(this,c);this.facetSelectionUpdated=s(this,"facetSelectionUpdated",7);this.searchStore=r.getState();this.formatLabel=e=>{const s=e.path.replace(/^\//,"");const c=e.count;return`${s.replace(/-/g," ").replace(/\b\w/g,(e=>e.toUpperCase()))} (${c})`};this.formatSubLabel=(e,s)=>{const c=e.path.substring(s.path.length);const a=c.replace(/^\//,"");const t=e.count;return`${a.replace(/-/g," ").replace(/\b\w/g,(e=>e.toUpperCase()))} (${t})`};this.fieldName=undefined;this.baseFacetRoot=undefined;this.facetRoot=undefined;this.selectedPaths={};this.lastTimeTaken=undefined;this.hasNewSearchTerm=false;this.lastQuery=undefined;this.lastSearchMode=undefined;this.lastSortType=undefined;this.unsubscribe=undefined}handleStateUpdate(e){var s,c;const a=(s=e.searchResults)===null||s===void 0?void 0:s.data.facets;const t=(c=e.searchResults)===null||c===void 0?void 0:c.data.time_taken;if(e.query!==this.lastQuery||e.searchMode!==this.lastSearchMode||e.sortType!==this.lastSortType){this.selectedPaths={};this.hasNewSearchTerm=true}if(t!==this.lastTimeTaken&&a){this.facetRoot=undefined;const e=a.find((e=>this.fieldName===Object.keys(e)[0]));if(this.hasNewSearchTerm){this.baseFacetRoot=e;this.facetRoot=e;this.hasNewSearchTerm=false}else if(this.baseFacetRoot){this.facetRoot=i(this.fieldName,this.baseFacetRoot,e)}}this.lastQuery=e.query;this.lastSearchMode=e.searchMode;this.lastSortType=e.sortType;this.lastTimeTaken=t}connectedCallback(){this.handleStateUpdate(this.searchStore);this.unsubscribe=r.subscribe((e=>{this.handleStateUpdate(e)}))}disconnectedCallback(){var e;(e=this.unsubscribe)===null||e===void 0?void 0:e.call(this)}handleCheckboxChange(e){const s=!this.selectedPaths[e];if(s){this.selectedPaths=Object.assign(Object.assign({},this.selectedPaths),{[e]:true})}else{const s=Object.keys(this.selectedPaths).filter((s=>!s.includes(e)));this.selectedPaths=s.reduce(((e,s)=>{e[s]=true;return e}),{})}const c=Object.keys(this.selectedPaths).filter((e=>this.selectedPaths[e]));const a=n(c);this.facetSelectionUpdated.emit({paths:a})}render(){var e;const s=(e=this.facetRoot)===null||e===void 0?void 0:e[this.fieldName];return c("div",{key:"c7b6a2c7bbb48d0835745b4bcae43a283ade4139",class:t("filtersListContainer","searchcraft-filters-list-container")},!s&&c("p",{key:"a682f57ff51fdcfec670744ef84930c90c9b9c20",class:"searchcraft-facet-message"},"Enter a search to view facets."),s===null||s===void 0?void 0:s.map((e=>{var s;const r=e.children?(s=e.children)===null||s===void 0?void 0:s.some((e=>this.selectedPaths[e.path])):false;return c("div",{key:e.path,class:t("searchcraft-filters-list-item")},c("label",{class:t("filterCheckboxLabel","searchcraft-filters-list-checkbox-label")},c("input",{checked:this.selectedPaths[e.path],onChange:s=>this.handleCheckboxChange(e.path),type:"checkbox"}),r?c("div",{class:t("dashContainer","searchcraft-filter-list-dash-container")},c("searchcraft-dash-icon",null)):c("div",{class:t("checkContainer","searchcraft-filter-list-check-container")},c("searchcraft-check-icon",null)),this.formatLabel(e)),e.children&&e.children.length>0&&c(a,null,e.children.map((s=>c("label",{key:s.path,class:t("childFilterCheckboxLabel","searchcraft-child-filter-checkbox-label"),style:{display:this.selectedPaths[e.path]?"flex":"none"}},c("input",{checked:this.selectedPaths[s.path],onChange:e=>{this.handleCheckboxChange(s.path)},type:"checkbox"}),c("div",{class:t("checkContainer","searchcraft-filter-list-check-container")},c("searchcraft-check-icon",null)),this.formatSubLabel(s,e))))))})))}};l.style=h;const f=':root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-slider-container{align-items:center;display:flex;flex-direction:column;gap:10px;width:100%}.searchcraft-slider-range-container{align-items:center;background-color:var(--sc-surface-disabled);border-radius:999px;display:flex;position:relative;height:4px;width:100%}.searchcraft-slider-range-container::-webkit-slider-runnable-track{pointer-events:none}.searchcraft-slider-range-container .searchcraft-slider-active-range{background-color:var(--sc-surface-brand-primary);border-radius:2px;height:4px;position:absolute;top:50%;transform:translateY(-50%);z-index:0}.searchcraft-slider-range-container .searchcraft-slider-active-range::-webkit-slider-runnable-track{pointer-events:none}.searchcraft-slider-range-container .searchcraft-slider-active-range::-moz-range-track{pointer-events:none}.searchcraft-slider-range-container .searchcraft-slider-input{appearance:none;background:transparent;border-radius:2px;height:4px;margin:0;outline:none;pointer-events:none;position:absolute;width:100%;-webkit-appearance:none}.searchcraft-slider-range-container .searchcraft-slider-input::-webkit-slider-thumb{background-color:var(--sc-surface-neutral-light);border-radius:50%;border:2px solid var(--sc-border-neutral);cursor:pointer;height:20px;pointer-events:all;width:20px;-webkit-appearance:none}.searchcraft-slider-range-container .searchcraft-slider-input::-moz-range-thumb{background-color:var(--sc-surface-neutral-light);border-radius:50%;border:2px solid var(--sc-border-neutral);cursor:pointer;height:20px;pointer-events:all;width:20px}.searchcraft-slider-label-container{color:var(--sc-content-primary);display:flex;font-family:"Source Sans Pro", sans-serif;font-size:15px;font-weight:600;justify-content:space-between;margin-top:10px;width:100%}.searchcraft-slider-label{min-width:30px;text-align:center}';const u=f;const p=class{constructor(c){e(this,c);this.rangeChanged=s(this,"rangeChanged",7);this.emitUpdate=async()=>{this.rangeChanged.emit({startValue:this.startValue,endValue:this.endValue})};this.handleStartValueChange=e=>{const s=e.target;const c=Number.parseInt(s.value,10);this.lastFocusedHandle="min";if(c<=this.endValue){this.startValue=c;this.emitUpdate()}else{this.startValue=this.endValue;s.value=`${this.endValue}`}};this.handleEndValueChange=e=>{const s=e.target;const c=Number.parseInt(s.value,10);this.lastFocusedHandle="max";if(c>=this.startValue){this.endValue=c;this.emitUpdate()}else{this.endValue=this.startValue;s.value=`${this.startValue}`}};this.max=100;this.min=0;this.granularity=o("month");this.dataType="number";this.endValue=this.max;this.startValue=this.min;this.lastFocusedHandle="max"}componentDidLoad(){this.startValue=this.min;this.endValue=this.max}render(){const e=this.min;const s=this.max;const a=(this.startValue-e)/(s-e)*100;const r=(this.endValue-e)/(s-e)*100;const i=this.dataType==="number"?this.startValue:new Date(this.startValue).getFullYear();const n=this.dataType==="number"?this.endValue:new Date(this.endValue).getFullYear();return c("div",{key:"51de4996df052bf178590aeb4c56a67ec57c92e5",class:"searchcraft-slider-container"},c("div",{key:"634bead69c3fbc462cda3dd65dd4ba6a398c6913",class:"searchcraft-slider-range-container"},c("div",{key:"1b7a0b63ef208884f24b9f56b48a72bca320c71b",class:"searchcraft-slider-active-range",style:{left:`${a}%`,width:`${r-a}%`}}),c("input",{key:"29313d6909d5ff646d7f3810163f5f01fe09cc36",class:t("searchcraft-slider-input","searchcraft-slider-input-min-handle"),max:this.max,min:this.min,onInput:this.handleStartValueChange.bind(this),step:this.granularity,style:{zIndex:this.lastFocusedHandle==="min"?"2":"1"},type:"range",value:this.startValue}),c("input",{key:"1e95e93a028c7bc204e2f3894bfe8b77ac6c9d28",class:t("searchcraft-slider-input","searchcraft-slider-input-max-handle"),max:this.max,min:this.min,onInput:this.handleEndValueChange.bind(this),step:this.granularity,style:{zIndex:this.lastFocusedHandle==="max"?"2":"1"},type:"range",value:this.endValue})),c("div",{key:"c1560933a38f3153ac1dbaece041ef75df479dc4",class:"searchcraft-slider-label-container"},c("span",{key:"638f72b8c081a324cc3ecb833163cd036a6ab90c",class:"searchcraft-slider-label"},i),c("span",{key:"011968bdf897de9960fe2214b4adceee4d79b6d0",class:"searchcraft-slider-label"},n)))}};p.style=u;const b=":root{--sc-spinner-size:20px;--sc-input-border-radius:8px;--sc-input-search-icon-size:20px;--sc-input-clear-icon-size:20px;--sc-input-padding-left:44px;--sc-input-padding-right:44px;--sc-image-border-radius:8px}:root{--sc-surface-disabled:#D9D9D9;--sc-surface-neutral-primary:#FFFFFF;--sc-surface-neutral-secondary:#F3F3F3;--sc-surface-neutral-light:#FFFFFF;--sc-surface-neutral-primary-hover:#FAFAFA;--sc-surface-neutral-primary-active:#F7F7F7;--sc-surface-neutral-secondary-hover:#EDEDED;--sc-surface-neutral-secondary-active:#E6E6E6;--sc-surface-brand-primary:#000000;--sc-surface-brand-secondary:#E6E6E6;--sc-surface-brand-primary-hover:#2E2E2E;--sc-surface-brand-primary-active:#292929;--sc-surface-brand-secondary-hover:#EBEBEB;--sc-surface-brand-secondary-active:#E0E0E0;--sc-surface-success-primary:#008000;--sc-surface-success-secondary:#CCFFCC;--sc-surface-success-primary-hover:#009900;--sc-surface-success-primary-active:#006600;--sc-surface-success-secondary-hover:#E6FFE6;--sc-surface-success-secondary-active:#E6FFE6;--sc-surface-caution-primary:#CC6600;--sc-surface-caution-secondary:#FFD9B3;--sc-surface-caution-primary-hover:#E57300;--sc-surface-caution-primary-active:#B25A00;--sc-surface-caution-secondary-hover:#FFE5CC;--sc-surface-caution-secondary-active:#FFCC99;--sc-surface-danger-primary:#CC0000;--sc-surface-danger-secondary:#FFCCCC;--sc-surface-danger-primary-hover:#E50000;--sc-surface-danger-primary-active:#B30000;--sc-surface-danger-secondary-hover:#FFE7E7;--sc-surface-danger-secondary-active:#FFB3B3;--sc-content-brand:#000000;--sc-content-success:#008000;--sc-content-caution:#994D00;--sc-content-danger:#990000;--sc-content-disabled:#737373;--sc-content-neutral-primary:#292929;--sc-content-neutral-secondary:#404040;--sc-content-brand-on-primary:#FFFFFF;--sc-content-success-on-primary:#FFFFFF;--sc-content-caution-on-primary:#FFFFFF;--sc-content-danger-on-primary:#FFFFFF;--sc-content-disabled-on-disabled:#737373;--sc-border-neutral:rgba(0,0,0, 0.1);--sc-border-brand:#000000;--sc-border-success:#008000;--sc-border-caution:#CC6600;--sc-border-danger:#CC0000;--sc-border-disabled:#737373}:root{--sc-font-family:sans-serif;--sc-heading-1-font-size:32px;--sc-heading-1-line-height:36px;--sc-heading-1-font-weight:700;--sc-heading-2-font-size:29px;--sc-heading-2-line-height:32px;--sc-heading-2-font-weight:700;--sc-heading-3-font-size:26px;--sc-heading-3-line-height:28px;--sc-heading-3-font-weight:700;--sc-heading-4-font-size:23px;--sc-heading-4-line-height:24px;--sc-heading-4-font-weight:700;--sc-heading-5-font-size:20px;--sc-heading-5-line-height:24px;--sc-heading-5-font-weight:700;--sc-heading-6-font-size:10px;--sc-heading-6-line-height:12px;--sc-heading-6-font-weight:700;--sc-body-bold-font-size:16px;--sc-body-bold-line-height:20px;--sc-body-bold-font-weight:700;--sc-body-font-size:16px;--sc-body-line-height:20px;--sc-body-font-weight:400;--sc-body-small-bold-font-size:12px;--sc-body-small-bold-line-height:16px;--sc-body-small-bold-font-weight:700;--sc-body-small-font-size:12px;--sc-body-small-line-height:16px;--sc-body-small-font-weight:400}.searchcraft-toggle-button-container{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.searchcraft-toggle-button-label{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-body-font-weight);line-height:var(--sc-body-line-height);margin:0;color:var(--sc-content-neutral-primary)}.searchcraft-toggle-button-sub-label{font-family:var(--sc-font-family);-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-body-small-font-weight);line-height:var(--sc-body-small-line-height);margin:0;color:var(--sc-content-neutral-secondary)}.searchcraft-toggle-button-background{transition:background-color 0.2s;background:var(--sc-surface-disabled);border:none;border-radius:16px;cursor:pointer;height:26px;position:relative;width:44px;flex-shrink:0}.searchcraft-toggle-button-background.active{background:var(--sc-surface-brand-primary);box-shadow:0px 0px 0px 1px rgba(0, 0, 0, 0.05)}.searchcraft-toggle-button-handle{background:var(--sc-surface-neutral-light);border-radius:50%;height:18px;left:4px;position:absolute;top:calc(50% - 9px);transition:transform 0.3s ease;width:18px}.searchcraft-toggle-button-handle.active{transform:translateX(16px)}";const g=b;const y=class{constructor(c){e(this,c);this.toggleUpdated=s(this,"toggleUpdated",7);this.handleToggle=async()=>{this.isActive=!this.isActive;this.toggleUpdated.emit(this.isActive)};this.label="Toggle";this.subLabel=undefined;this.isActive=false;this.unsubscribe=undefined;this.lastQuery=undefined}connectedCallback(){this.unsubscribe=r.subscribe((e=>{if(e.query!==this.lastQuery&&e.query.trim().length===0){this.isActive=false}this.lastQuery=e.query}))}disconnectedCallback(){var e;(e=this.unsubscribe)===null||e===void 0?void 0:e.call(this)}render(){return c("div",{key:"90a7816e1e02125939f3f05a9dbfd94a5f161959",class:"searchcraft-toggle-button-container"},c("div",{key:"6a3e570ba3d00ccc315cd092d5b1c618c0b23ea2"},c("p",{key:"41d1d0ab4557c856bb0ed12af8a4b0c81203d6d5",class:"searchcraft-toggle-button-label"},this.label),this.subLabel&&c("p",{key:"ec145b4f655bacec600ac9aa137662f7fed9b7d2",class:"searchcraft-toggle-button-sub-label"},this.subLabel)),c("button",{key:"226599543806881f306630708eee24e922ff592e",class:t("searchcraft-toggle-button-background",{active:this.isActive}),onClick:this.handleToggle,type:"button"},c("div",{key:"b83e81e7820705952cfc8c911223e67dfbc0f98d",class:t("searchcraft-toggle-button-handle",{active:this.isActive})})))}};y.style=g;export{l as searchcraft_facet_list,p as searchcraft_slider,y as searchcraft_toggle_button};
2
- //# sourceMappingURL=p-aa155194.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["searchcraftFacetListModuleCss","SearchcraftFacetListStyle0","SearchcraftFacetList","this","searchStore","useSearchcraftStore","getState","formatLabel","facetChild","label","path","replace","count","char","toUpperCase","formatSubLabel","facetChildAncestor","facetChildPath","substring","length","handleStateUpdate","state","facetPrime","_a","searchResults","data","facets","timeTaken","_b","time_taken","query","lastQuery","searchMode","lastSearchMode","sortType","lastSortType","selectedPaths","hasNewSearchTerm","lastTimeTaken","facetRoot","undefined","incomingFacetRoot","find","facet","fieldName","Object","keys","baseFacetRoot","mergeFacetRoots","connectedCallback","unsubscribe","subscribe","disconnectedCallback","call","handleCheckboxChange","isCheckboxChecked","assign","updatedPaths","filter","testPath","includes","reduce","acc","str","paths","pathsWithParentPathsRemoved","removeSubstringMatches","facetSelectionUpdated","emit","render","firstFacet","h","key","class","classNames","map","isChildSelected","children","some","child","checked","onChange","_event","type","Fragment","grandchild","style","display","searchcraftSliderModuleCss","SearchcraftSliderStyle0","SearchcraftSlider","emitUpdate","async","rangeChanged","startValue","endValue","handleStartValueChange","event","inputElement","target","value","Number","parseInt","lastFocusedHandle","handleEndValueChange","getMillis","max","min","componentDidLoad","rangeMin","rangeMax","startPercent","endPercent","startLabel","dataType","Date","getFullYear","endLabel","left","width","onInput","bind","step","granularity","zIndex","searchcraftToggleButtonModuleCss","SearchcraftToggleButtonStyle0","SearchcraftToggleButton","handleToggle","isActive","toggleUpdated","trim","subLabel","active","onClick"],"sources":["src/components/searchcraft-facet-list/searchcraft-facet-list.module.scss?tag=searchcraft-facet-list","src/components/searchcraft-facet-list/searchcraft-facet-list.tsx","src/components/searchcraft-slider/searchcraft-slider.module.scss?tag=searchcraft-slider","src/components/searchcraft-slider/searchcraft-slider.tsx","src/components/searchcraft-toggle-button/searchcraft-toggle-button.module.scss?tag=searchcraft-toggle-button","src/components/searchcraft-toggle-button/searchcraft-toggle-button.tsx"],"sourcesContent":[".filtersListContainer {\n width: 100%;\n}\n\n.filterCheckboxLabel {\n align-items: center;\n color: var(--sc-content-primary);\n display: flex;\n font-family: var(--sc-font-family);\n font-size: 14px;\n font-weight: 600;\n gap: 14px;\n position: relative;\n -webkit-font-smoothing: antialiased;\n}\n\n.filterCheckboxLabel input[type=\"checkbox\"] {\n align-items: center;\n appearance: none;\n background-color: var(--sc-surface-brand-secondary-hover);\n border: 1px solid var(--sc-surface-disabled);\n border-radius: 8px;\n cursor: pointer;\n display: flex;\n height: 24px;\n justify-content: center;\n width: 24px;\n}\n\n.filterCheckboxLabel input[type=\"checkbox\"]:focus {\n outline: 2px solid var(--sc-surface-brand-primary);\n}\n\n.filterCheckboxLabel input[type=\"checkbox\"]:checked {\n background-color: var(--sc-surface-brand-primary);\n position: relative;\n}\n\n.filterCheckboxLabel input[type=\"checkbox\"]:checked + .checkContainer {\n display: block;\n}\n\n.filterCheckboxLabel input[type=\"checkbox\"]:checked + .dashContainer {\n display: block;\n}\n\n.childFilterCheckboxLabel {\n align-items: center;\n color: var(--sc-content-primary);\n display: flex;\n font-family: var(--sc-font-family);\n font-size: 14px;\n font-weight: 600;\n gap: 12px;\n margin-left: 24px;\n position: relative;\n}\n\n.childFilterCheckboxLabel input[type=\"checkbox\"] {\n align-items: center;\n appearance: none;\n background-color: var(--sc-surface-brand-secondary-hover);\n border: 1px solid var(--sc-surface-disabled);\n border-radius: 8px;\n cursor: pointer;\n display: flex;\n height: 24px;\n justify-content: center;\n position: relative;\n width: 24px;\n -webkit-font-smoothing: antialiased;\n}\n\n.childFilterCheckboxLabel input[type=\"checkbox\"]:focus {\n outline: 2px solid var(--sc-surface-brand-primary);\n}\n\n.childFilterCheckboxLabel input[type=\"checkbox\"]:checked {\n background-color: var(--sc-surface-brand-primary);\n position: relative;\n}\n\n.childFilterCheckboxLabel input[type=\"checkbox\"]:checked + .checkContainer {\n display: block;\n}\n\n.childFilterCheckboxLabel input[type=\"checkbox\"]:checked + .dashContainer {\n display: block;\n}\n\n.checkContainer {\n display: none;\n height: 16px;\n width: 16px;\n position: absolute;\n top: 9px;\n left: 8px;\n}\n\n.dashContainer {\n display: none;\n height: 3px;\n width: 14px;\n position: absolute;\n top: 3px;\n left: 9px;\n}\n\n.searchcraft-facet-message {\n @include body-small();\n color: var(--sc-content-disabled);\n text-align: center;\n}","import {\n Component,\n h,\n State,\n Prop,\n Event,\n type EventEmitter,\n Fragment,\n} from '@stencil/core';\nimport classNames from 'classnames';\n\nimport type { FacetChild, FacetRoot } from '@searchcraft/core';\n\nimport { useSearchcraftStore, type SearchcraftState } from '@provider/store';\nimport { mergeFacetRoots, removeSubstringMatches } from '@utils/utils';\n\n@Component({\n tag: 'searchcraft-facet-list',\n styleUrl: 'searchcraft-facet-list.module.scss',\n shadow: false,\n})\nexport class SearchcraftFacetList {\n @Prop() fieldName: string;\n\n @Event() facetSelectionUpdated: EventEmitter<{ paths: string[] }>;\n\n @State() baseFacetRoot: FacetRoot | undefined;\n @State() facetRoot: FacetRoot | undefined;\n @State() selectedPaths: Record<string, boolean> = {};\n @State() lastTimeTaken: number | undefined;\n @State() hasNewSearchTerm = false;\n\n @State() lastQuery: string | undefined;\n @State() lastSearchMode: string | undefined;\n @State() lastSortType: string | undefined;\n\n @State() unsubscribe: (() => void) | undefined;\n\n private searchStore = useSearchcraftStore.getState();\n\n handleStateUpdate(state: SearchcraftState) {\n const facetPrime = state.searchResults?.data.facets;\n const timeTaken = state.searchResults?.data.time_taken;\n\n /** Things to do when the state's search term has changed, but before the response received */\n if (\n state.query !== this.lastQuery ||\n state.searchMode !== this.lastSearchMode ||\n state.sortType !== this.lastSortType\n ) {\n this.selectedPaths = {};\n this.hasNewSearchTerm = true;\n }\n\n /** Things to do when a new response with a new facet prime has been received */\n if (timeTaken !== this.lastTimeTaken && facetPrime) {\n this.facetRoot = undefined;\n const incomingFacetRoot: FacetRoot = facetPrime.find(\n (facet) => this.fieldName === Object.keys(facet)[0],\n );\n\n /** Data is from a new search term: completely override our facets */\n if (this.hasNewSearchTerm) {\n this.baseFacetRoot = incomingFacetRoot;\n this.facetRoot = incomingFacetRoot;\n this.hasNewSearchTerm = false;\n } else if (this.baseFacetRoot) {\n /** Data is from an existing search term, merge the facets together */\n this.facetRoot = mergeFacetRoots(\n this.fieldName,\n this.baseFacetRoot,\n incomingFacetRoot,\n );\n }\n }\n\n this.lastQuery = state.query;\n this.lastSearchMode = state.searchMode;\n this.lastSortType = state.sortType;\n this.lastTimeTaken = timeTaken;\n }\n\n connectedCallback() {\n this.handleStateUpdate(this.searchStore);\n\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n this.handleStateUpdate(state);\n });\n }\n\n disconnectedCallback() {\n this.unsubscribe?.();\n }\n\n handleCheckboxChange(path: string) {\n const isCheckboxChecked = !this.selectedPaths[path];\n\n if (isCheckboxChecked) {\n /**\n * Checkbox Checked: Add to the selectedPaths record\n * Uses spread operator here so UI updates.\n */\n this.selectedPaths = {\n ...this.selectedPaths,\n [path]: true,\n };\n } else {\n /**\n * Checkbox Uncheck: Remove any paths and sub-paths\n */\n const updatedPaths = Object.keys(this.selectedPaths).filter(\n (testPath) => !testPath.includes(path),\n );\n\n this.selectedPaths = updatedPaths.reduce(\n (acc, str) => {\n acc[str] = true;\n return acc;\n },\n {} as Record<string, boolean>,\n );\n }\n\n /**\n * Emit the paths array, with parent paths removed.\n */\n const paths = Object.keys(this.selectedPaths).filter(\n (path) => this.selectedPaths[path],\n );\n const pathsWithParentPathsRemoved = removeSubstringMatches(paths);\n\n this.facetSelectionUpdated.emit({ paths: pathsWithParentPathsRemoved });\n }\n\n formatLabel = (facetChild: FacetChild): string => {\n const label = facetChild.path.replace(/^\\//, '');\n const count = facetChild.count;\n return `${label.replace(/-/g, ' ').replace(/\\b\\w/g, (char) => char.toUpperCase())} (${count})`;\n };\n\n formatSubLabel = (\n facetChild: FacetChild,\n facetChildAncestor: FacetChild,\n ): string => {\n const facetChildPath = facetChild.path.substring(\n facetChildAncestor.path.length,\n );\n const label = facetChildPath.replace(/^\\//, '');\n const count = facetChild.count;\n return `${label.replace(/-/g, ' ').replace(/\\b\\w/g, (char) => char.toUpperCase())} (${count})`;\n };\n\n render() {\n const firstFacet = this.facetRoot?.[this.fieldName];\n\n return (\n <div\n class={classNames(\n 'filtersListContainer',\n 'searchcraft-filters-list-container',\n )}\n >\n {!firstFacet && (\n <p class='searchcraft-facet-message'>\n Enter a search to view facets.\n </p>\n )}\n {firstFacet?.map((facetChild: FacetChild) => {\n const isChildSelected = facetChild.children\n ? facetChild.children?.some(\n (child) => this.selectedPaths[child.path],\n )\n : false;\n\n return (\n <div\n key={facetChild.path}\n class={classNames('searchcraft-filters-list-item')}\n >\n <label\n class={classNames(\n 'filterCheckboxLabel',\n 'searchcraft-filters-list-checkbox-label',\n )}\n >\n <input\n checked={this.selectedPaths[facetChild.path]}\n onChange={(_event: Event) =>\n this.handleCheckboxChange(facetChild.path)\n }\n type='checkbox'\n />\n {isChildSelected ? (\n <div\n class={classNames(\n 'dashContainer',\n 'searchcraft-filter-list-dash-container',\n )}\n >\n <searchcraft-dash-icon />\n </div>\n ) : (\n <div\n class={classNames(\n 'checkContainer',\n 'searchcraft-filter-list-check-container',\n )}\n >\n <searchcraft-check-icon />\n </div>\n )}\n {this.formatLabel(facetChild)}\n </label>\n {facetChild.children && facetChild.children.length > 0 && (\n <Fragment>\n {facetChild.children.map((grandchild) => (\n <label\n key={grandchild.path}\n class={classNames(\n 'childFilterCheckboxLabel',\n 'searchcraft-child-filter-checkbox-label',\n )}\n style={{\n display: this.selectedPaths[facetChild.path]\n ? 'flex'\n : 'none',\n }}\n >\n <input\n checked={this.selectedPaths[grandchild.path]}\n onChange={(_event: Event) => {\n this.handleCheckboxChange(grandchild.path);\n }}\n type='checkbox'\n />\n <div\n class={classNames(\n 'checkContainer',\n 'searchcraft-filter-list-check-container',\n )}\n >\n <searchcraft-check-icon />\n </div>\n {this.formatSubLabel(grandchild, facetChild)}\n </label>\n ))}\n </Fragment>\n )}\n </div>\n );\n })}\n </div>\n );\n }\n}\n",".searchcraft-slider-container {\n align-items: center;\n display: flex;\n flex-direction: column;\n gap: 10px;\n width: 100%;\n}\n\n.searchcraft-slider-range-container {\n align-items: center;\n background-color: var(--sc-surface-disabled);\n border-radius: 999px;\n display: flex;\n position: relative;\n height: 4px;\n width: 100%;\n\n &::-webkit-slider-runnable-track {\n pointer-events: none;\n }\n\n .searchcraft-slider-active-range {\n background-color: var(--sc-surface-brand-primary);\n border-radius: 2px;\n height: 4px;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n z-index: 0;\n\n &::-webkit-slider-runnable-track {\n pointer-events: none;\n }\n\n &::-moz-range-track {\n pointer-events: none;\n }\n }\n\n .searchcraft-slider-input {\n appearance: none;\n background: transparent;\n border-radius: 2px;\n height: 4px;\n margin: 0;\n outline: none;\n pointer-events: none;\n position: absolute;\n width: 100%;\n -webkit-appearance: none;\n\n &::-webkit-slider-thumb {\n background-color: var(--sc-surface-neutral-light);\n border-radius: 50%;\n border: 2px solid var(--sc-border-neutral);\n cursor: pointer;\n height: 20px;\n pointer-events: all;\n width: 20px;\n -webkit-appearance: none;\n }\n\n &::-moz-range-thumb {\n background-color: var(--sc-surface-neutral-light);\n border-radius: 50%;\n border: 2px solid var(--sc-border-neutral);\n cursor: pointer;\n height: 20px;\n pointer-events: all;\n width: 20px;\n }\n }\n}\n\n.searchcraft-slider-label-container {\n color: var(--sc-content-primary);\n display: flex;\n font-family: 'Source Sans Pro', sans-serif;\n font-size: 15px;\n font-weight: 600;\n justify-content: space-between;\n margin-top: 10px;\n width: 100%;\n}\n\n.searchcraft-slider-label {\n min-width: 30px;\n text-align: center;\n}","import {\n Component,\n Event,\n type EventEmitter,\n h,\n State,\n Prop,\n} from '@stencil/core';\nimport { getMillis } from '@utils/utils';\nimport classNames from 'classnames';\n\n@Component({\n tag: 'searchcraft-slider',\n styleUrl: 'searchcraft-slider.module.scss',\n shadow: false,\n})\nexport class SearchcraftSlider {\n @Prop() max = 100;\n @Prop() min = 0;\n @Prop() granularity: number = getMillis('month');\n @Prop() dataType: 'number' | 'date' = 'number';\n\n @State() endValue = this.max;\n @State() startValue = this.min;\n @State() lastFocusedHandle: 'min' | 'max' = 'max';\n\n @Event() rangeChanged: EventEmitter<{ startValue: number; endValue: number }>;\n\n componentDidLoad() {\n this.startValue = this.min;\n this.endValue = this.max;\n }\n\n private emitUpdate = async () => {\n this.rangeChanged.emit({\n startValue: this.startValue,\n endValue: this.endValue,\n });\n };\n\n private handleStartValueChange = (event: InputEvent) => {\n const inputElement = event.target as HTMLInputElement;\n const value = Number.parseInt(inputElement.value, 10);\n this.lastFocusedHandle = 'min';\n if (value <= this.endValue) {\n this.startValue = value;\n this.emitUpdate();\n } else {\n this.startValue = this.endValue;\n inputElement.value = `${this.endValue}`;\n }\n };\n\n private handleEndValueChange = (event: InputEvent) => {\n const inputElement = event.target as HTMLInputElement;\n const value = Number.parseInt(inputElement.value, 10);\n this.lastFocusedHandle = 'max';\n if (value >= this.startValue) {\n this.endValue = value;\n this.emitUpdate();\n } else {\n this.endValue = this.startValue;\n inputElement.value = `${this.startValue}`;\n }\n };\n\n render() {\n const rangeMin = this.min;\n const rangeMax = this.max;\n const startPercent =\n ((this.startValue - rangeMin) / (rangeMax - rangeMin)) * 100;\n const endPercent =\n ((this.endValue - rangeMin) / (rangeMax - rangeMin)) * 100;\n\n const startLabel =\n this.dataType === 'number'\n ? this.startValue\n : new Date(this.startValue).getFullYear();\n\n const endLabel =\n this.dataType === 'number'\n ? this.endValue\n : new Date(this.endValue).getFullYear();\n\n return (\n <div class='searchcraft-slider-container'>\n <div class='searchcraft-slider-range-container'>\n <div\n class='searchcraft-slider-active-range'\n style={{\n left: `${startPercent}%`,\n width: `${endPercent - startPercent}%`,\n }}\n />\n <input\n class={classNames(\n 'searchcraft-slider-input',\n 'searchcraft-slider-input-min-handle',\n )}\n max={this.max}\n min={this.min}\n onInput={this.handleStartValueChange.bind(this)}\n step={this.granularity}\n style={{ zIndex: this.lastFocusedHandle === 'min' ? '2' : '1' }}\n type='range'\n value={this.startValue}\n />\n <input\n class={classNames(\n 'searchcraft-slider-input',\n 'searchcraft-slider-input-max-handle',\n )}\n max={this.max}\n min={this.min}\n onInput={this.handleEndValueChange.bind(this)}\n step={this.granularity}\n style={{ zIndex: this.lastFocusedHandle === 'max' ? '2' : '1' }}\n type='range'\n value={this.endValue}\n />\n </div>\n <div class='searchcraft-slider-label-container'>\n <span class='searchcraft-slider-label'>{startLabel}</span>\n <span class='searchcraft-slider-label'>{endLabel}</span>\n </div>\n </div>\n );\n }\n}\n",".searchcraft-toggle-button-container {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n gap: 10px;\n}\n\n.searchcraft-toggle-button-label {\n @include body();\n margin: 0;\n color: var(--sc-content-neutral-primary);\n}\n\n.searchcraft-toggle-button-sub-label {\n @include body-small();\n margin: 0;\n color: var(--sc-content-neutral-secondary);\n}\n\n.searchcraft-toggle-button-background {\n transition: background-color 0.2s;\n background: var(--sc-surface-disabled);\n border: none;\n border-radius: 16px;\n cursor: pointer;\n height: 26px;\n position: relative;\n width: 44px;\n flex-shrink: 0;\n}\n\n.searchcraft-toggle-button-background.active {\n background: var(--sc-surface-brand-primary);\n box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.05);\n}\n\n.searchcraft-toggle-button-handle {\n background: var(--sc-surface-neutral-light);\n border-radius: 50%;\n height: 18px;\n left: 4px;\n position: absolute;\n top: calc(50% - 18px/2);\n transition: transform 0.3s ease;\n width: 18px;\n}\n\n.searchcraft-toggle-button-handle.active {\n transform: translateX(16px);\n}\n","import { useSearchcraftStore } from '@provider/store';\nimport {\n Component,\n Event,\n h,\n Prop,\n State,\n type EventEmitter,\n} from '@stencil/core';\nimport classNames from 'classnames';\n@Component({\n tag: 'searchcraft-toggle-button',\n styleUrl: 'searchcraft-toggle-button.module.scss',\n shadow: false,\n})\nexport class SearchcraftToggleButton {\n /**\n * Type of the toggle - determines what it controls\n * 'mode': toggles between 'fuzzy' and 'normal'\n * 'sort': toggles between 'asc' and 'desc'\n */\n @Prop() label = 'Toggle';\n @Prop() subLabel: string | undefined;\n\n @Event() toggleUpdated: EventEmitter<boolean>;\n\n @State() isActive = false;\n @State() unsubscribe: (() => void) | undefined;\n @State() lastQuery: string | undefined;\n\n private handleToggle = async () => {\n this.isActive = !this.isActive;\n this.toggleUpdated.emit(this.isActive);\n };\n\n connectedCallback() {\n /** When the query changes, sets toggle button state back to inactive. */\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n if (state.query !== this.lastQuery && state.query.trim().length === 0) {\n this.isActive = false;\n }\n this.lastQuery = state.query;\n });\n }\n\n disconnectedCallback() {\n this.unsubscribe?.();\n }\n\n render() {\n return (\n <div class='searchcraft-toggle-button-container'>\n <div>\n <p class='searchcraft-toggle-button-label'>{this.label}</p>\n {this.subLabel && (\n <p class='searchcraft-toggle-button-sub-label'>{this.subLabel}</p>\n )}\n </div>\n <button\n class={classNames('searchcraft-toggle-button-background', {\n active: this.isActive,\n })}\n onClick={this.handleToggle}\n type='button'\n >\n <div\n class={classNames('searchcraft-toggle-button-handle', {\n active: this.isActive,\n })}\n />\n </button>\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,11 +0,0 @@
1
- var e={};var n={};const r=e=>{let n;const r=new Set;const t=(e,t)=>{const o=typeof e==="function"?e(n):e;if(!Object.is(o,n)){const e=n;n=(t!=null?t:typeof o!=="object"||o===null)?o:Object.assign({},n,o);r.forEach((r=>r(n,e)))}};const o=()=>n;const a=()=>u;const i=e=>{r.add(e);return()=>r.delete(e)};const c={setState:t,getState:o,getInitialState:a,subscribe:i};const u=n=e(t,o,c);return c};const t=e=>e?r(e):r;n.createStore=t;var o={};var a={exports:{}};var i={};
2
- /**
3
- * @license React
4
- * react.production.min.js
5
- *
6
- * Copyright (c) Facebook, Inc. and its affiliates.
7
- *
8
- * This source code is licensed under the MIT license found in the
9
- * LICENSE file in the root directory of this source tree.
10
- */var c=Symbol.for("react.element"),u=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),f=Symbol.for("react.strict_mode"),l=Symbol.for("react.profiler"),d=Symbol.for("react.provider"),h=Symbol.for("react.context"),v=Symbol.for("react.forward_ref"),m=Symbol.for("react.suspense"),w=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),y=Symbol.iterator;function b(e){if(null===e||"object"!==typeof e)return null;e=y&&e[y]||e["@@iterator"];return"function"===typeof e?e:null}var g={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},S=Object.assign,M={};function O(e,n,r){this.props=e;this.context=n;this.refs=M;this.updater=r||g}O.prototype.isReactComponent={};O.prototype.setState=function(e,n){if("object"!==typeof e&&"function"!==typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,n,"setState")};O.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function F(){}F.prototype=O.prototype;function j(e,n,r){this.props=e;this.context=n;this.refs=M;this.updater=r||g}var x=j.prototype=new F;x.constructor=j;S(x,O.prototype);x.isPureReactComponent=!0;var k=Array.isArray,I=Object.prototype.hasOwnProperty,E={current:null},P={key:!0,ref:!0,__self:!0,__source:!0};function _(e,n,r){var t,o={},a=null,i=null;if(null!=n)for(t in void 0!==n.ref&&(i=n.ref),void 0!==n.key&&(a=""+n.key),n)I.call(n,t)&&!P.hasOwnProperty(t)&&(o[t]=n[t]);var u=arguments.length-2;if(1===u)o.children=r;else if(1<u){for(var s=Array(u),f=0;f<u;f++)s[f]=arguments[f+2];o.children=s}if(e&&e.defaultProps)for(t in u=e.defaultProps,u)void 0===o[t]&&(o[t]=u[t]);return{$$typeof:c,type:e,key:a,ref:i,props:o,_owner:E.current}}function R(e,n){return{$$typeof:c,type:e.type,key:n,ref:e.ref,props:e.props,_owner:e._owner}}function A(e){return"object"===typeof e&&null!==e&&e.$$typeof===c}function $(e){var n={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return n[e]}))}var C=/\/+/g;function T(e,n){return"object"===typeof e&&null!==e&&null!=e.key?$(""+e.key):n.toString(36)}function U(e,n,r,t,o){var a=typeof e;if("undefined"===a||"boolean"===a)e=null;var i=!1;if(null===e)i=!0;else switch(a){case"string":case"number":i=!0;break;case"object":switch(e.$$typeof){case c:case u:i=!0}}if(i)return i=e,o=o(i),e=""===t?"."+T(i,0):t,k(o)?(r="",null!=e&&(r=e.replace(C,"$&/")+"/"),U(o,n,r,"",(function(e){return e}))):null!=o&&(A(o)&&(o=R(o,r+(!o.key||i&&i.key===o.key?"":(""+o.key).replace(C,"$&/")+"/")+e)),n.push(o)),1;i=0;t=""===t?".":t+":";if(k(e))for(var s=0;s<e.length;s++){a=e[s];var f=t+T(a,s);i+=U(a,n,r,f,o)}else if(f=b(e),"function"===typeof f)for(e=f.call(e),s=0;!(a=e.next()).done;)a=a.value,f=t+T(a,s++),i+=U(a,n,r,f,o);else if("object"===a)throw n=String(e),Error("Objects are not valid as a React child (found: "+("[object Object]"===n?"object with keys {"+Object.keys(e).join(", ")+"}":n)+"). If you meant to render a collection of children, use an array instead.");return i}function q(e,n,r){if(null==e)return e;var t=[],o=0;U(e,t,"","",(function(e){return n.call(r,e,o++)}));return t}function B(e){if(-1===e._status){var n=e._result;n=n();n.then((function(n){if(0===e._status||-1===e._status)e._status=1,e._result=n}),(function(n){if(0===e._status||-1===e._status)e._status=2,e._result=n}));-1===e._status&&(e._status=0,e._result=n)}if(1===e._status)return e._result.default;throw e._result}var D={current:null},L={transition:null},N={ReactCurrentDispatcher:D,ReactCurrentBatchConfig:L,ReactCurrentOwner:E};function V(){throw Error("act(...) is not supported in production builds of React.")}i.Children={map:q,forEach:function(e,n,r){q(e,(function(){n.apply(this,arguments)}),r)},count:function(e){var n=0;q(e,(function(){n++}));return n},toArray:function(e){return q(e,(function(e){return e}))||[]},only:function(e){if(!A(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};i.Component=O;i.Fragment=s;i.Profiler=l;i.PureComponent=j;i.StrictMode=f;i.Suspense=m;i.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=N;i.act=V;i.cloneElement=function(e,n,r){if(null===e||void 0===e)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var t=S({},e.props),o=e.key,a=e.ref,i=e._owner;if(null!=n){void 0!==n.ref&&(a=n.ref,i=E.current);void 0!==n.key&&(o=""+n.key);if(e.type&&e.type.defaultProps)var u=e.type.defaultProps;for(s in n)I.call(n,s)&&!P.hasOwnProperty(s)&&(t[s]=void 0===n[s]&&void 0!==u?u[s]:n[s])}var s=arguments.length-2;if(1===s)t.children=r;else if(1<s){u=Array(s);for(var f=0;f<s;f++)u[f]=arguments[f+2];t.children=u}return{$$typeof:c,type:e.type,key:o,ref:a,props:t,_owner:i}};i.createContext=function(e){e={$$typeof:h,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null};e.Provider={$$typeof:d,_context:e};return e.Consumer=e};i.createElement=_;i.createFactory=function(e){var n=_.bind(null,e);n.type=e;return n};i.createRef=function(){return{current:null}};i.forwardRef=function(e){return{$$typeof:v,render:e}};i.isValidElement=A;i.lazy=function(e){return{$$typeof:p,_payload:{_status:-1,_result:e},_init:B}};i.memo=function(e,n){return{$$typeof:w,type:e,compare:void 0===n?null:n}};i.startTransition=function(e){var n=L.transition;L.transition={};try{e()}finally{L.transition=n}};i.unstable_act=V;i.useCallback=function(e,n){return D.current.useCallback(e,n)};i.useContext=function(e){return D.current.useContext(e)};i.useDebugValue=function(){};i.useDeferredValue=function(e){return D.current.useDeferredValue(e)};i.useEffect=function(e,n){return D.current.useEffect(e,n)};i.useId=function(){return D.current.useId()};i.useImperativeHandle=function(e,n,r){return D.current.useImperativeHandle(e,n,r)};i.useInsertionEffect=function(e,n){return D.current.useInsertionEffect(e,n)};i.useLayoutEffect=function(e,n){return D.current.useLayoutEffect(e,n)};i.useMemo=function(e,n){return D.current.useMemo(e,n)};i.useReducer=function(e,n,r){return D.current.useReducer(e,n,r)};i.useRef=function(e){return D.current.useRef(e)};i.useState=function(e){return D.current.useState(e)};i.useSyncExternalStore=function(e,n,r){return D.current.useSyncExternalStore(e,n,r)};i.useTransition=function(){return D.current.useTransition()};i.version="18.3.1";{a.exports=i}var z=a.exports;var G=n;const W=e=>e;function J(e,n=W){const r=z.useSyncExternalStore(e.subscribe,(()=>n(e.getState())),(()=>n(e.getInitialState())));z.useDebugValue(r);return r}const H=e=>{const n=G.createStore(e);const r=e=>J(n,e);Object.assign(r,n);return r};const Q=e=>e?H(e):H;o.create=Q;o.useStore=J;(function(e){var r=n;var t=o;Object.keys(r).forEach((function(n){if(n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n))Object.defineProperty(e,n,{enumerable:true,get:function(){return r[n]}})}));Object.keys(t).forEach((function(n){if(n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n))Object.defineProperty(e,n,{enumerable:true,get:function(){return t[n]}})}))})(e);var K=Object.defineProperty;var X=(e,n,r)=>n in e?K(e,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[n]=r;var Z=(e,n,r)=>X(e,typeof n!="symbol"?n+"":n,r);const Y="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let ee=(e=21)=>{let n="",r=crypto.getRandomValues(new Uint8Array(e|=0));for(;e--;)n+=Y[r[e]&63];return n};function ne(e,n,r,t){return new(r||(r=Promise))((function(n,o){function a(e){try{c(t.next(e))}catch(e){o(e)}}function i(e){try{c(t.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,i)}c((t=t.apply(e,[])).next())}))}function re(e,n){var r,t,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:c(0),throw:c(1),return:c(2)},typeof Symbol=="function"&&(a[Symbol.iterator]=function(){return this}),a;function c(c){return function(u){return function(c){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(i=0)),i;)try{if(r=1,t&&(o=2&c[0]?t.return:c[0]?t.throw||((o=t.return)&&o.call(t),0):t.next)&&!(o=o.call(t,c[1])).done)return o;switch(t=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return i.label++,{value:c[1],done:!1};case 5:i.label++,t=c[1],c=[0];continue;case 7:c=i.ops.pop(),i.trys.pop();continue;default:if(o=i.trys,!((o=o.length>0&&o[o.length-1])||c[0]!==6&&c[0]!==2)){i=0;continue}if(c[0]===3&&(!o||c[1]>o[0]&&c[1]<o[3])){i.label=c[1];break}if(c[0]===6&&i.label<o[1]){i.label=o[1],o=c;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(c);break}o[2]&&i.ops.pop(),i.trys.pop();continue}c=n.call(e,i)}catch(e){c=[6,e],t=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}([c,u])}}}var te={exclude:[]},oe={},ae={timeout:"true"},ie=function(e,n){typeof window<"u"&&(oe[e]=n)},ce=function(){return Object.fromEntries(Object.entries(oe).filter((function(e){var n,r=e[0];return!(!((n=te==null?void 0:te.exclude)===null||n===void 0)&&n.includes(r))})).map((function(e){return[e[0],(0,e[1])()]})))};function ue(e){return e^=e>>>16,e=Math.imul(e,2246822507),e^=e>>>13,e=Math.imul(e,3266489909),(e^=e>>>16)>>>0}var se=new Uint32Array([597399067,2869860233,951274213,2716044179]);function fe(e,n){return e<<n|e>>>32-n}function le(e,n){var r;if(n===void 0&&(n=0),n=n?0|n:0,typeof e=="string"&&(r=e,e=(new TextEncoder).encode(r).buffer),!(e instanceof ArrayBuffer))throw new TypeError("Expected key to be ArrayBuffer or string");var t=new Uint32Array([n,n,n,n]);(function(e,n){for(var r=e.byteLength/16|0,t=new Uint32Array(e,0,4*r),o=0;o<r;o++){var a=t.subarray(4*o,4*(o+1));a[0]=Math.imul(a[0],se[0]),a[0]=fe(a[0],15),a[0]=Math.imul(a[0],se[1]),n[0]=n[0]^a[0],n[0]=fe(n[0],19),n[0]=n[0]+n[1],n[0]=Math.imul(n[0],5)+1444728091,a[1]=Math.imul(a[1],se[1]),a[1]=fe(a[1],16),a[1]=Math.imul(a[1],se[2]),n[1]=n[1]^a[1],n[1]=fe(n[1],17),n[1]=n[1]+n[2],n[1]=Math.imul(n[1],5)+197830471,a[2]=Math.imul(a[2],se[2]),a[2]=fe(a[2],17),a[2]=Math.imul(a[2],se[3]),n[2]=n[2]^a[2],n[2]=fe(n[2],15),n[2]=n[2]+n[3],n[2]=Math.imul(n[2],5)+2530024501,a[3]=Math.imul(a[3],se[3]),a[3]=fe(a[3],18),a[3]=Math.imul(a[3],se[0]),n[3]=n[3]^a[3],n[3]=fe(n[3],13),n[3]=n[3]+n[0],n[3]=Math.imul(n[3],5)+850148119}})(e,t),function(e,n){var r=e.byteLength/16|0,t=e.byteLength%16,o=new Uint32Array(4),a=new Uint8Array(e,16*r,t);switch(t){case 15:o[3]=o[3]^a[14]<<16;case 14:o[3]=o[3]^a[13]<<8;case 13:o[3]=o[3]^a[12]<<0,o[3]=Math.imul(o[3],se[3]),o[3]=fe(o[3],18),o[3]=Math.imul(o[3],se[0]),n[3]=n[3]^o[3];case 12:o[2]=o[2]^a[11]<<24;case 11:o[2]=o[2]^a[10]<<16;case 10:o[2]=o[2]^a[9]<<8;case 9:o[2]=o[2]^a[8]<<0,o[2]=Math.imul(o[2],se[2]),o[2]=fe(o[2],17),o[2]=Math.imul(o[2],se[3]),n[2]=n[2]^o[2];case 8:o[1]=o[1]^a[7]<<24;case 7:o[1]=o[1]^a[6]<<16;case 6:o[1]=o[1]^a[5]<<8;case 5:o[1]=o[1]^a[4]<<0,o[1]=Math.imul(o[1],se[1]),o[1]=fe(o[1],16),o[1]=Math.imul(o[1],se[2]),n[1]=n[1]^o[1];case 4:o[0]=o[0]^a[3]<<24;case 3:o[0]=o[0]^a[2]<<16;case 2:o[0]=o[0]^a[1]<<8;case 1:o[0]=o[0]^a[0]<<0,o[0]=Math.imul(o[0],se[0]),o[0]=fe(o[0],15),o[0]=Math.imul(o[0],se[1]),n[0]=n[0]^o[0]}}(e,t),function(e,n){n[0]=n[0]^e.byteLength,n[1]=n[1]^e.byteLength,n[2]=n[2]^e.byteLength,n[3]=n[3]^e.byteLength,n[0]=n[0]+n[1]|0,n[0]=n[0]+n[2]|0,n[0]=n[0]+n[3]|0,n[1]=n[1]+n[0]|0,n[2]=n[2]+n[0]|0,n[3]=n[3]+n[0]|0,n[0]=ue(n[0]),n[1]=ue(n[1]),n[2]=ue(n[2]),n[3]=ue(n[3]),n[0]=n[0]+n[1]|0,n[0]=n[0]+n[2]|0,n[0]=n[0]+n[3]|0,n[1]=n[1]+n[0]|0,n[2]=n[2]+n[0]|0,n[3]=n[3]+n[0]|0}(e,t);var o=new Uint8Array(t.buffer);return Array.from(o).map((function(e){return e.toString(16).padStart(2,"0")})).join("")}function de(e,n){return new Promise((function(r){setTimeout((function(){return r(n)}),e)}))}function he(e,n,r){return Promise.all(e.map((function(e){return Promise.race([e,de(n,r)])})))}function ve(){return ne(this,void 0,void 0,(function(){var e,n,r,t,o;return re(this,(function(a){switch(a.label){case 0:return a.trys.push([0,2,,3]),e=ce(),n=Object.keys(e),[4,he(Object.values(e),(te==null?void 0:te.timeout)||1e3,ae)];case 1:return r=a.sent(),t=r.filter((function(e){return e!==void 0})),o={},t.forEach((function(e,r){o[n[r]]=e})),[2,me(o,te.exclude||[])];case 2:throw a.sent();case 3:return[2]}}))}))}function me(e,n){var r={},t=function(t){if(e.hasOwnProperty(t)){var o=e[t];if(typeof o!="object"||Array.isArray(o))n.includes(t)||(r[t]=o);else{var a=me(o,n.map((function(e){return e.startsWith(t+".")?e.slice(t.length+1):e})));Object.keys(a).length>0&&(r[t]=a)}}};for(var o in e)t(o);return r}function we(e){return ne(this,void 0,void 0,(function(){var e,n;return re(this,(function(r){switch(r.label){case 0:return r.trys.push([0,2,,3]),[4,ve()];case 1:return e=r.sent(),n=le(JSON.stringify(e)),[2,n.toString()];case 2:throw r.sent();case 3:return[2]}}))}))}function pe(e){for(var n=0,r=0;r<e.length;++r)n+=Math.abs(e[r]);return n}function ye(e,n,r){for(var t=[],o=0;o<e[0].data.length;o++){for(var a=[],i=0;i<e.length;i++)a.push(e[i].data[o]);t.push(be(a))}var c=new Uint8ClampedArray(t);return new ImageData(c,n,r)}function be(e){if(e.length===0)return 0;for(var n={},r=0,t=e;r<t.length;r++)n[a=t[r]]=(n[a]||0)+1;var o=e[0];for(var a in n)n[a]>n[o]&&(o=parseInt(a,10));return o}function ge(){if(typeof navigator>"u")return{name:"unknown",version:"unknown"};for(var e=navigator.userAgent,n={Edg:"Edge",OPR:"Opera"},r=0,t=[/(?<name>Edge|Edg)\/(?<version>\d+(?:\.\d+)?)/,/(?<name>(?:Chrome|Chromium|OPR|Opera|Vivaldi|Brave))\/(?<version>\d+(?:\.\d+)?)/,/(?<name>(?:Firefox|Waterfox|Iceweasel|IceCat))\/(?<version>\d+(?:\.\d+)?)/,/(?<name>Safari)\/(?<version>\d+(?:\.\d+)?)/,/(?<name>MSIE|Trident|IEMobile).+?(?<version>\d+(?:\.\d+)?)/,/(?<name>[A-Za-z]+)\/(?<version>\d+(?:\.\d+)?)/,/(?<name>SamsungBrowser)\/(?<version>\d+(?:\.\d+)?)/];r<t.length;r++){var o=t[r],a=e.match(o);if(a&&a.groups)return{name:n[a.groups.name]||a.groups.name,version:a.groups.version}}return{name:"unknown",version:"unknown"}}ie("audio",(function(){return ne(this,void 0,void 0,(function(){return re(this,(function(e){return[2,new Promise((function(e,n){try{var r=new(window.OfflineAudioContext||window.webkitOfflineAudioContext)(1,5e3,44100),t=r.createBufferSource(),o=r.createOscillator();o.frequency.value=1e3;var a,i=r.createDynamicsCompressor();i.threshold.value=-50,i.knee.value=40,i.ratio.value=12,i.attack.value=0,i.release.value=.2,o.connect(i),i.connect(r.destination),o.start(),r.oncomplete=function(n){a=n.renderedBuffer.getChannelData(0),e({sampleHash:pe(a),oscillator:o.type,maxChannels:r.destination.maxChannelCount,channelCountMode:t.channelCountMode})},r.startRendering()}catch(e){console.error("Error creating audio fingerprint:",e),n(e)}}))]}))}))}));var Se=ge().name!=="SamsungBrowser"?1:3,Me=280,Oe=20;ge().name!="Firefox"&&ie("canvas",(function(){return document.createElement("canvas").getContext("2d"),new Promise((function(e){var n=Array.from({length:Se},(function(){return function(){var e=document.createElement("canvas"),n=e.getContext("2d");if(!n)return new ImageData(1,1);e.width=Me,e.height=Oe;var r=n.createLinearGradient(0,0,e.width,e.height);r.addColorStop(0,"red"),r.addColorStop(.16666666666666666,"orange"),r.addColorStop(.3333333333333333,"yellow"),r.addColorStop(.5,"green"),r.addColorStop(.6666666666666666,"blue"),r.addColorStop(.8333333333333334,"indigo"),r.addColorStop(1,"violet"),n.fillStyle=r,n.fillRect(0,0,e.width,e.height);var t="Random Text WMwmil10Oo";n.font="23.123px Arial",n.fillStyle="black",n.fillText(t,-5,15),n.fillStyle="rgba(0, 0, 255, 0.5)",n.fillText(t,-3.3,17.7),n.beginPath(),n.moveTo(0,0),n.lineTo(2*e.width/7,e.height),n.strokeStyle="white",n.lineWidth=2,n.stroke();var o=n.getImageData(0,0,e.width,e.height);return o}()}));e({commonImageDataHash:le(ye(n,Me,Oe).data.toString()).toString()})}))}));var Fe,je=["Arial","Arial Black","Arial Narrow","Arial Rounded MT","Arimo","Archivo","Barlow","Bebas Neue","Bitter","Bookman","Calibri","Cabin","Candara","Century","Century Gothic","Comic Sans MS","Constantia","Courier","Courier New","Crimson Text","DM Mono","DM Sans","DM Serif Display","DM Serif Text","Dosis","Droid Sans","Exo","Fira Code","Fira Sans","Franklin Gothic Medium","Garamond","Geneva","Georgia","Gill Sans","Helvetica","Impact","Inconsolata","Indie Flower","Inter","Josefin Sans","Karla","Lato","Lexend","Lucida Bright","Lucida Console","Lucida Sans Unicode","Manrope","Merriweather","Merriweather Sans","Montserrat","Myriad","Noto Sans","Nunito","Nunito Sans","Open Sans","Optima","Orbitron","Oswald","Pacifico","Palatino","Perpetua","PT Sans","PT Serif","Poppins","Prompt","Public Sans","Quicksand","Rajdhani","Recursive","Roboto","Roboto Condensed","Rockwell","Rubik","Segoe Print","Segoe Script","Segoe UI","Sora","Source Sans Pro","Space Mono","Tahoma","Taviraj","Times","Times New Roman","Titillium Web","Trebuchet MS","Ubuntu","Varela Round","Verdana","Work Sans"],xe=["monospace","sans-serif","serif"];function ke(e,n){if(!e)throw new Error("Canvas context not supported");return e.font="72px ".concat(n),e.measureText("WwMmLli0Oo").width}function Ie(){var e,n=document.createElement("canvas"),r=(e=n.getContext("webgl"))!==null&&e!==void 0?e:n.getContext("experimental-webgl");if(r&&"getParameter"in r)try{var t=(r.getParameter(r.VENDOR)||"").toString(),o=(r.getParameter(r.RENDERER)||"").toString(),a={vendor:t,renderer:o,version:(r.getParameter(r.VERSION)||"").toString(),shadingLanguageVersion:(r.getParameter(r.SHADING_LANGUAGE_VERSION)||"").toString()};if(!o.length||!t.length){var i=r.getExtension("WEBGL_debug_renderer_info");if(i){var c=(r.getParameter(i.UNMASKED_VENDOR_WEBGL)||"").toString(),u=(r.getParameter(i.UNMASKED_RENDERER_WEBGL)||"").toString();c&&(a.vendorUnmasked=c),u&&(a.rendererUnmasked=u)}}return a}catch{}return"undefined"}function Ee(){var e=new Float32Array(1),n=new Uint8Array(e.buffer);return e[0]=1/0,e[0]=e[0]-e[0],n[3]}function Pe(e,n){var r={};return n.forEach((function(n){var t=function(e){if(e.length===0)return null;var n={};e.forEach((function(e){var r=String(e);n[r]=(n[r]||0)+1}));var r=e[0],t=1;return Object.keys(n).forEach((function(e){n[e]>t&&(r=e,t=n[e])})),r}(e.map((function(e){return n in e?e[n]:void 0})).filter((function(e){return e!==void 0})));t&&(r[n]=t)})),r}function _e(){var e=[],n={"prefers-contrast":["high","more","low","less","forced","no-preference"],"any-hover":["hover","none"],"any-pointer":["none","coarse","fine"],pointer:["none","coarse","fine"],hover:["hover","none"],update:["fast","slow"],"inverted-colors":["inverted","none"],"prefers-reduced-motion":["reduce","no-preference"],"prefers-reduced-transparency":["reduce","no-preference"],scripting:["none","initial-only","enabled"],"forced-colors":["active","none"]};return Object.keys(n).forEach((function(r){n[r].forEach((function(n){matchMedia("(".concat(r,": ").concat(n,")")).matches&&e.push("".concat(r,": ").concat(n))}))})),e}function Re(){if(window.location.protocol==="https:"&&typeof window.ApplePaySession=="function")try{for(var e=window.ApplePaySession.supportsVersion,n=15;n>0;n--)if(e(n))return n}catch{return 0}return 0}ge().name!="Firefox"&&ie("fonts",(function(){var e=this;return new Promise((function(n,r){try{(function(e){var n;ne(this,void 0,void 0,(function(){var r,t,o;return re(this,(function(a){switch(a.label){case 0:return document.body?[3,2]:[4,(i=50,new Promise((function(e){return setTimeout(e,i,c)})))];case 1:return a.sent(),[3,0];case 2:if((r=document.createElement("iframe")).setAttribute("frameBorder","0"),(t=r.style).setProperty("position","fixed"),t.setProperty("display","block","important"),t.setProperty("visibility","visible"),t.setProperty("border","0"),t.setProperty("opacity","0"),r.src="about:blank",document.body.appendChild(r),!(o=r.contentDocument||((n=r.contentWindow)===null||n===void 0?void 0:n.document)))throw new Error("Iframe document is not accessible");return e({iframe:o}),setTimeout((function(){document.body.removeChild(r)}),0),[2]}var i,c}))}))})((function(r){var t=r.iframe;return ne(e,void 0,void 0,(function(){var e,r,o,a;return re(this,(function(i){return e=t.createElement("canvas"),r=e.getContext("2d"),o=xe.map((function(e){return ke(r,e)})),a={},je.forEach((function(e){var n=ke(r,e);o.includes(n)||(a[e]=n)})),n(a),[2]}))}))}))}catch{r({error:"unsupported"})}}))})),ie("hardware",(function(){return new Promise((function(e,n){var r=navigator.deviceMemory!==void 0?navigator.deviceMemory:0,t=window.performance&&window.performance.memory?window.performance.memory:0;e({videocard:Ie(),architecture:Ee(),deviceMemory:r.toString()||"undefined",jsHeapSizeLimit:t.jsHeapSizeLimit||0})}))})),ie("locales",(function(){return new Promise((function(e){e({languages:navigator.language,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone})}))})),ie("permissions",(function(){return ne(this,void 0,void 0,(function(){var e;return re(this,(function(n){return Fe=(te==null?void 0:te.permissions_to_check)||["accelerometer","accessibility","accessibility-events","ambient-light-sensor","background-fetch","background-sync","bluetooth","camera","clipboard-read","clipboard-write","device-info","display-capture","gyroscope","geolocation","local-fonts","magnetometer","microphone","midi","nfc","notifications","payment-handler","persistent-storage","push","speaker","storage-access","top-level-storage-access","window-management","query"],e=Array.from({length:(te==null?void 0:te.retries)||3},(function(){return function(){return ne(this,void 0,void 0,(function(){var e,n,r,t,o;return re(this,(function(a){switch(a.label){case 0:e={},n=0,r=Fe,a.label=1;case 1:if(!(n<r.length))return[3,6];t=r[n],a.label=2;case 2:return a.trys.push([2,4,,5]),[4,navigator.permissions.query({name:t})];case 3:return o=a.sent(),e[t]=o.state.toString(),[3,5];case 4:return a.sent(),[3,5];case 5:return n++,[3,1];case 6:return[2,e]}}))}))}()})),[2,Promise.all(e).then((function(e){return Pe(e,Fe)}))]}))}))})),ie("plugins",(function(){var e=[];if(navigator.plugins)for(var n=0;n<navigator.plugins.length;n++){var r=navigator.plugins[n];e.push([r.name,r.filename,r.description].join("|"))}return new Promise((function(n){n({plugins:e})}))})),ie("screen",(function(){return new Promise((function(e){e({is_touchscreen:navigator.maxTouchPoints>0,maxTouchPoints:navigator.maxTouchPoints,colorDepth:screen.colorDepth,mediaMatches:_e()})}))})),ie("system",(function(){return new Promise((function(e){var n=ge();e({platform:window.navigator.platform,cookieEnabled:window.navigator.cookieEnabled,productSub:navigator.productSub,product:navigator.product,useragent:navigator.userAgent,hardwareConcurrency:navigator.hardwareConcurrency,browser:{name:n.name,version:n.version},applePayVersion:Re()})}))}));var Ae,$e=ge().name!=="SamsungBrowser"?1:3,Ce=null;ie("webgl",(function(){return ne(this,void 0,void 0,(function(){var e;return re(this,(function(n){typeof document<"u"&&((Ae=document.createElement("canvas")).width=200,Ae.height=100,Ce=Ae.getContext("webgl"));try{if(!Ce)throw new Error("WebGL not supported");return e=Array.from({length:$e},(function(){return function(){try{if(!Ce)throw new Error("WebGL not supported");var e=`\n attribute vec2 position;\n void main() {\n gl_Position = vec4(position, 0.0, 1.0);\n }\n `,n=`\n precision mediump float;\n void main() {\n gl_FragColor = vec4(0.812, 0.195, 0.553, 0.921); // Set line color\n }\n `,r=Ce.createShader(Ce.VERTEX_SHADER),t=Ce.createShader(Ce.FRAGMENT_SHADER);if(!r||!t)throw new Error("Failed to create shaders");if(Ce.shaderSource(r,e),Ce.shaderSource(t,n),Ce.compileShader(r),!Ce.getShaderParameter(r,Ce.COMPILE_STATUS))throw new Error("Vertex shader compilation failed: "+Ce.getShaderInfoLog(r));if(Ce.compileShader(t),!Ce.getShaderParameter(t,Ce.COMPILE_STATUS))throw new Error("Fragment shader compilation failed: "+Ce.getShaderInfoLog(t));var o=Ce.createProgram();if(!o)throw new Error("Failed to create shader program");if(Ce.attachShader(o,r),Ce.attachShader(o,t),Ce.linkProgram(o),!Ce.getProgramParameter(o,Ce.LINK_STATUS))throw new Error("Shader program linking failed: "+Ce.getProgramInfoLog(o));Ce.useProgram(o);for(var a=137,i=new Float32Array(4*a),c=2*Math.PI/a,u=0;u<a;u++){var s=u*c;i[4*u]=0,i[4*u+1]=0,i[4*u+2]=Math.cos(s)*(Ae.width/2),i[4*u+3]=Math.sin(s)*(Ae.height/2)}var f=Ce.createBuffer();Ce.bindBuffer(Ce.ARRAY_BUFFER,f),Ce.bufferData(Ce.ARRAY_BUFFER,i,Ce.STATIC_DRAW);var l=Ce.getAttribLocation(o,"position");Ce.enableVertexAttribArray(l),Ce.vertexAttribPointer(l,2,Ce.FLOAT,!1,0,0),Ce.viewport(0,0,Ae.width,Ae.height),Ce.clearColor(0,0,0,1),Ce.clear(Ce.COLOR_BUFFER_BIT),Ce.drawArrays(Ce.LINES,0,2*a);var d=new Uint8ClampedArray(Ae.width*Ae.height*4);return Ce.readPixels(0,0,Ae.width,Ae.height,Ce.RGBA,Ce.UNSIGNED_BYTE,d),new ImageData(d,Ae.width,Ae.height)}catch{return new ImageData(1,1)}finally{Ce&&(Ce.bindBuffer(Ce.ARRAY_BUFFER,null),Ce.useProgram(null),Ce.viewport(0,0,Ce.drawingBufferWidth,Ce.drawingBufferHeight),Ce.clearColor(0,0,0,0))}}()})),[2,{commonImageHash:le(ye(e,Ae.width,Ae.height).data.toString()).toString()}]}catch{return[2,{webgl:"unsupported"}]}return[2]}))}))}));var Te=function(e,n,r,t){for(var o=(r-n)/t,a=0,i=0;i<t;i++)a+=e(n+(i+.5)*o);return a*o};ie("math",(function(){return ne(void 0,void 0,void 0,(function(){return re(this,(function(e){return[2,{acos:Math.acos(.5),asin:Te(Math.asin,-1,1,97),atan:Te(Math.atan,-1,1,97),cos:Te(Math.cos,0,Math.PI,97),cosh:Math.cosh(9/7),e:Math.E,largeCos:Math.cos(1e20),largeSin:Math.sin(1e20),largeTan:Math.tan(1e20),log:Math.log(1e3),pi:Math.PI,sin:Te(Math.sin,-Math.PI,Math.PI,97),sinh:Te(Math.sinh,-9/7,7/9,97),sqrt:Math.sqrt(2),tan:Te(Math.tan,0,2*Math.PI,97),tanh:Te(Math.tanh,-9/7,7/9,97)}]}))}))}));class Ue{constructor(e,n){Z(this,"config");Z(this,"sdkInfo");Z(this,"userId");Z(this,"sessionId");Z(this,"search",(async e=>{if(this.sendMeasureEvent("search_requested",{search_term:e.query}),(e.query.match(/"/g)||[]).length%2!==0)throw new Error("The search term contains an uneven number of quote characters.");try{const n={query:this.buildQueryObject(e),limit:e.limit??20};e.offset!==void 0&&(n.offset=e.offset),e.order_by&&(n.order_by=e.order_by,n.sort=e.sort==="desc"||e.sort==="asc"?e.sort:"asc");const r={method:"POST",headers:{Authorization:this.config.readKey,"Content-Type":"application/json","X-Sc-User-Id":this.userId},body:JSON.stringify(n)},t=await fetch(this.baseSearchUrl,r);if(!t.ok)throw new Error(`Error: ${t.statusText} (Status: ${t.status})`);const o=await t.json();return this.sendMeasureEvent("search_response_received",{search_term:e.query,number_of_documents:o.data.count}),o}catch(e){throw console.error("Error parsing response:",e),e}}));Z(this,"sendMeasureEvent",(async(e,n={},r={})=>{const t={event_name:e,properties:{searchcraft_index_names:this.config.index,...n},user:{...this.measureRequestUser,...r}},o=JSON.stringify(t),a=`${this.baseMeasureUrl}/event`;try{const e=await fetch(a,{method:"POST",headers:{"Content-Type":"application/json",Authorization:this.config.readKey,"X-Sc-User-Id":this.userId},body:o,keepalive:!0});if(!e.ok)throw new Error(`Failed to send request: ${e.status} ${e.statusText}`);return}catch(e){throw console.error("Error sending MeasureRequest:",e),e}}));if(!e.endpointURL||!e.index||!e.readKey)throw new Error("Endpoint URL, Index value(s), and Read Key must be provided");this.config=e,this.sdkInfo=n,this.userId=e.userId||"",this.sessionId="",setTimeout((()=>{this.sessionId=ee(),this.initMeasure()}),300)}async initMeasure(){if(!this.config.userId){const e=await we();this.userId=e}this.sendMeasureEvent("sdk_initialized")}get baseSearchUrl(){return`${this.config.endpointURL}/index/${this.config.index.join(",")}/search`}get baseMeasureUrl(){return`${this.config.endpointURL}/measure`}get measureRequestUser(){return{user_id:this.userId,locale:navigator.language||"en-US",os:navigator.userAgent.includes("Windows")?"Windows":navigator.userAgent.includes("Mac")?"Mac":navigator.userAgent.includes("Linux")?"Linux":"Unknown",platform:navigator.platform||"Unknown",sdk_name:this.sdkInfo.sdkName,sdk_version:this.sdkInfo.sdkVersion,user_agent:navigator.userAgent||"Unknown"}}buildQueryObject(e){const n=[];let r="should";return e.facetPathsForIndexFields&&Object.keys(e.facetPathsForIndexFields).forEach((t=>{var o;const a=(o=e.facetPathsForIndexFields)==null?void 0:o[t];a&&(r="must",n.push({occur:r,normal:{ctx:a.value}}))})),e.rangeValueForIndexFields&&Object.keys(e.rangeValueForIndexFields).forEach((t=>{var o;const a=(o=e.rangeValueForIndexFields)==null?void 0:o[t];a&&(r="must",n.push({occur:r,normal:{ctx:a.value}}))})),e.sort==="desc"?e.order_by="date_published":e.order_by="",n.push({occur:r,[e.mode]:{ctx:e.query}}),n}}var qe=(e=>(e[e.DEBUG=0]="DEBUG",e[e.INFO=1]="INFO",e[e.WARN=2]="WARN",e[e.ERROR=3]="ERROR",e))(qe||{});class Be{constructor(e){Z(this,"logLevel");Z(this,"logFormatter");this.logLevel=e.logLevel||1,this.logFormatter=e.logFormatter||this.defaultFormatter}defaultFormatter(e,n){return`[${qe[e]}] ${(new Date).toISOString()}: ${n}`}debug(e){this.logLevel<=0&&console.log(this.logFormatter(0,e))}info(e){this.logLevel<=1&&console.info(this.logFormatter(1,e))}warn(e){this.logLevel<=2&&console.warn(this.logFormatter(2,e))}error(e){this.logLevel<=3&&console.error(this.logFormatter(3,e))}}const De=e.create(((e,n)=>{let r=null;let t=null;const o=(e,n)=>{if(t){switch(e){case qe.DEBUG:t.debug(n);break;case qe.INFO:t.info(n);break;case qe.WARN:t.warn(n);break;case qe.ERROR:t.error(n);break}}};return{resetFacetPaths:()=>{e({facetPathsForIndexFields:{}})},addFacetPathsForIndexField:n=>e((e=>({facetPathsForIndexFields:Object.assign(Object.assign({},e.facetPathsForIndexFields),{[n.fieldName]:n})}))),removeFacetPathsForIndexField:n=>e((e=>{const r=e.facetPathsForIndexFields;delete r[n];return{facetPathsForIndexFields:Object.assign({},r)}})),addRangeValueForIndexField:n=>e((e=>({rangeValueForIndexFields:Object.assign(Object.assign({},e.rangeValueForIndexFields),{[n.fieldName]:n})}))),removeRangeValueForIndexField:n=>e((e=>{const r=e.rangeValueForIndexFields;delete r[n];return{rangeValueForIndexFields:Object.assign({},r)}})),setSearchMode:n=>e({searchMode:n}),setSortType:n=>e({sortType:n}),searchMode:"fuzzy",sortType:"asc",facetPathsForIndexFields:{},rangeValueForIndexFields:{},query:"",isRequesting:false,searchResults:null,facets:null,getSearchcraftInstance:()=>r,setQuery:n=>{e(Object.assign({query:n,facetPathsForIndexFields:{}},n.trim().length===0&&{searchMode:"fuzzy",sortType:"asc"}))},setSearchResults:n=>e({searchResults:n}),setFacets:n=>e({facets:n}),setIsRequesting:n=>e({isRequesting:n}),search:async()=>{const e=n();o(qe.INFO,`Starting search with search term: "${e.query}"`);if(!r){throw new Error("Searchcraft instance is not initialized.")}if(!e.query.trim()){o(qe.INFO,"No search request was made: search term was empty.");e.setSearchResults(null);return}e.setIsRequesting(true);try{const n=await r.search({query:e.query,mode:e.searchMode,sort:e.sortType,facetPathsForIndexFields:e.facetPathsForIndexFields,rangeValueForIndexFields:e.rangeValueForIndexFields});const t=n.data.facets||null;e.setSearchResults(n);e.setFacets(t);o(qe.DEBUG,`Search results: ${JSON.stringify(n)}`);o(qe.DEBUG,`Updated facets: ${JSON.stringify(t)}`)}catch(e){console.error(`Search failed: ${e.message}`);o(qe.ERROR,`Search failed with error: ${e.message}`)}finally{e.setIsRequesting(false)}},initialize:(e,n=false)=>{r=e;t=n?new Be({logLevel:qe.DEBUG}):null;o(qe.INFO,"Searchcraft store initialized.")}}}));const Le=e.create((e=>({theme:"light",toggleTheme:()=>e((e=>({theme:e.theme==="light"?"dark":"light"})))})));export{Le as a,Ue as i,De as u};
11
- //# sourceMappingURL=p-ad4ebde0.js.map