@searchcraft/javascript-sdk 0.4.2 → 0.5.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 (320) hide show
  1. package/dist/cjs/{index-6916cc47.js → index-b76bece0.js} +11 -41
  2. package/dist/cjs/index-b76bece0.js.map +1 -0
  3. package/dist/cjs/index.cjs.js +1 -1
  4. package/dist/cjs/loader.cjs.js +2 -2
  5. package/dist/cjs/searchcraft-base-search-result.cjs.entry.js +2 -2
  6. package/dist/cjs/searchcraft-base-search-results.cjs.entry.js +2 -2
  7. package/dist/cjs/{searchcraft-button.cjs.entry.js → searchcraft-button_2.cjs.entry.js} +22 -3
  8. package/dist/cjs/searchcraft-button_2.cjs.entry.js.map +1 -0
  9. package/dist/cjs/{searchcraft-spinner-light.cjs.entry.js → searchcraft-error-message.cjs.entry.js} +9 -8
  10. package/dist/cjs/searchcraft-error-message.cjs.entry.js.map +1 -0
  11. package/dist/cjs/searchcraft-facet-list_3.cjs.entry.js +20 -14
  12. package/dist/cjs/searchcraft-facet-list_3.cjs.entry.js.map +1 -1
  13. package/dist/cjs/searchcraft-filter-panel.cjs.entry.js +3 -3
  14. package/dist/cjs/searchcraft-filter-panel.cjs.entry.js.map +1 -1
  15. package/dist/cjs/searchcraft-input-form.cjs.entry.js +200 -0
  16. package/dist/cjs/searchcraft-input-form.cjs.entry.js.map +1 -0
  17. package/dist/cjs/searchcraft-javascript-sdk.cjs.js +2 -2
  18. package/dist/cjs/searchcraft-popover-form.cjs.entry.js +25 -0
  19. package/dist/cjs/searchcraft-popover-form.cjs.entry.js.map +1 -0
  20. package/dist/cjs/searchcraft-popover-list-view.cjs.entry.js +26 -0
  21. package/dist/cjs/searchcraft-popover-list-view.cjs.entry.js.map +1 -0
  22. package/dist/cjs/searchcraft-popover-result.cjs.entry.js +25 -0
  23. package/dist/cjs/searchcraft-popover-result.cjs.entry.js.map +1 -0
  24. package/dist/cjs/searchcraft-results-info.cjs.entry.js +2 -2
  25. package/dist/cjs/{store-afa727af.js → store-f2faf5d3.js} +9 -6
  26. package/dist/cjs/{store-afa727af.js.map → store-f2faf5d3.js.map} +1 -1
  27. package/dist/collection/collection-manifest.json +4 -10
  28. package/dist/collection/components/searchcraft-button/searchcraft-button.js +1 -1
  29. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.js +1 -1
  30. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.module.css +1 -0
  31. package/dist/collection/components/searchcraft-facet-list/searchcraft-facet-list.js +13 -5
  32. package/dist/collection/components/searchcraft-facet-list/searchcraft-facet-list.js.map +1 -1
  33. package/dist/collection/components/searchcraft-filter-panel/searchcraft-filter-panel.js +1 -1
  34. package/dist/collection/components/searchcraft-filter-panel/searchcraft-filter-panel.js.map +1 -1
  35. package/dist/collection/components/searchcraft-input-form/searchcraft-input-form.js +377 -0
  36. package/dist/collection/components/searchcraft-input-form/searchcraft-input-form.js.map +1 -0
  37. package/dist/collection/components/{searchcraft-input/searchcraft-input.module.css → searchcraft-input-form/searchcraft-input-form.module.css} +64 -11
  38. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.js +2 -1
  39. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.js.map +1 -1
  40. package/dist/collection/components/searchcraft-popover-form/searchcraft-popover-form.js +87 -0
  41. package/dist/collection/components/searchcraft-popover-form/searchcraft-popover-form.js.map +1 -0
  42. package/dist/collection/components/searchcraft-popover-form/searchcraft-popover-form.module.css +0 -0
  43. package/dist/collection/components/searchcraft-popover-list-view/searchcraft-popover-list-view.js +49 -0
  44. package/dist/collection/components/searchcraft-popover-list-view/searchcraft-popover-list-view.js.map +1 -0
  45. package/dist/collection/components/searchcraft-popover-list-view/searchcraft-popover-list-view.module.css +0 -0
  46. package/dist/collection/components/searchcraft-popover-result/searchcraft-popover-result.js +21 -0
  47. package/dist/collection/components/searchcraft-popover-result/searchcraft-popover-result.js.map +1 -0
  48. package/dist/collection/components/searchcraft-popover-result/searchcraft-popover-result.module.css +0 -0
  49. package/dist/collection/components/searchcraft-slider/searchcraft-slider.js +2 -2
  50. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.js +4 -4
  51. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.js.map +1 -1
  52. package/dist/collection/index.js +1 -0
  53. package/dist/collection/index.js.map +1 -1
  54. package/dist/collection/provider/store.js +8 -5
  55. package/dist/collection/provider/store.js.map +1 -1
  56. package/dist/collection/types/index.js +1 -0
  57. package/dist/collection/types/index.js.map +1 -1
  58. package/dist/collection/types/searchcraft-popover-form.types.js +2 -0
  59. package/dist/collection/types/searchcraft-popover-form.types.js.map +1 -0
  60. package/dist/components/index.js +10 -22
  61. package/dist/components/index.js.map +1 -1
  62. package/dist/components/{p-ace4e6a0.js → p-16983367.js} +4 -4
  63. package/dist/components/p-16983367.js.map +1 -0
  64. package/dist/components/{p-7bb734f3.js → p-193cf280.js} +19 -23
  65. package/dist/components/p-193cf280.js.map +1 -0
  66. package/dist/components/{p-3e8d3586.js → p-5380505b.js} +4 -4
  67. package/dist/components/{p-3e8d3586.js.map → p-5380505b.js.map} +1 -1
  68. package/dist/components/{p-9b9df0ca.js → p-596ceccc.js} +7 -7
  69. package/dist/components/p-596ceccc.js.map +1 -0
  70. package/dist/components/p-672354c0.js +38 -0
  71. package/dist/components/p-672354c0.js.map +1 -0
  72. package/dist/{esm/store-8d82e948.js → components/p-86911576.js} +9 -6
  73. package/dist/components/p-86911576.js.map +1 -0
  74. package/dist/components/{p-37f54c0b.js → p-9cb3d38b.js} +4 -10
  75. package/dist/components/p-9cb3d38b.js.map +1 -0
  76. package/dist/components/{p-415f7b11.js → p-b180ba11.js} +3 -3
  77. package/dist/components/{p-415f7b11.js.map → p-b180ba11.js.map} +1 -1
  78. package/dist/components/{p-c8bc1e4f.js → p-bd5fede3.js} +4 -3
  79. package/dist/components/p-bd5fede3.js.map +1 -0
  80. package/dist/components/{p-5639be85.js → p-e4846fa2.js} +12 -36
  81. package/dist/components/p-e4846fa2.js.map +1 -0
  82. package/dist/components/searchcraft-base-search-result.js +1 -1
  83. package/dist/components/searchcraft-base-search-results.js +4 -4
  84. package/dist/components/searchcraft-button.js +1 -1
  85. package/dist/components/searchcraft-error-message.js +1 -1
  86. package/dist/components/searchcraft-facet-list.js +2 -2
  87. package/dist/components/searchcraft-filter-panel.js +7 -19
  88. package/dist/components/searchcraft-filter-panel.js.map +1 -1
  89. package/dist/components/searchcraft-input-form.d.ts +11 -0
  90. package/dist/components/searchcraft-input-form.js +245 -0
  91. package/dist/components/searchcraft-input-form.js.map +1 -0
  92. package/dist/components/searchcraft-input-label.js +1 -1
  93. package/dist/components/searchcraft-popover-form.d.ts +11 -0
  94. package/dist/components/searchcraft-popover-form.js +48 -0
  95. package/dist/components/searchcraft-popover-form.js.map +1 -0
  96. package/dist/components/searchcraft-popover-list-view.d.ts +11 -0
  97. package/dist/components/searchcraft-popover-list-view.js +8 -0
  98. package/dist/components/searchcraft-popover-list-view.js.map +1 -0
  99. package/dist/components/searchcraft-popover-result.d.ts +11 -0
  100. package/dist/components/searchcraft-popover-result.js +38 -0
  101. package/dist/components/searchcraft-popover-result.js.map +1 -0
  102. package/dist/components/searchcraft-results-info.js +2 -2
  103. package/dist/components/searchcraft-slider.js +1 -1
  104. package/dist/components/searchcraft-toggle-button.js +1 -1
  105. package/dist/esm/{index-921fe029.js → index-be042742.js} +12 -41
  106. package/dist/esm/index-be042742.js.map +1 -0
  107. package/dist/esm/index.js +1 -1
  108. package/dist/esm/loader.js +3 -3
  109. package/dist/esm/searchcraft-base-search-result.entry.js +2 -2
  110. package/dist/esm/searchcraft-base-search-results.entry.js +2 -2
  111. package/dist/esm/{searchcraft-button.entry.js → searchcraft-button_2.entry.js} +22 -4
  112. package/dist/esm/searchcraft-button_2.entry.js.map +1 -0
  113. package/dist/esm/{searchcraft-spinner-light.entry.js → searchcraft-error-message.entry.js} +9 -8
  114. package/dist/esm/searchcraft-error-message.entry.js.map +1 -0
  115. package/dist/esm/searchcraft-facet-list_3.entry.js +20 -14
  116. package/dist/esm/searchcraft-facet-list_3.entry.js.map +1 -1
  117. package/dist/esm/searchcraft-filter-panel.entry.js +3 -3
  118. package/dist/esm/searchcraft-filter-panel.entry.js.map +1 -1
  119. package/dist/esm/searchcraft-input-form.entry.js +196 -0
  120. package/dist/esm/searchcraft-input-form.entry.js.map +1 -0
  121. package/dist/esm/searchcraft-javascript-sdk.js +3 -3
  122. package/dist/esm/searchcraft-popover-form.entry.js +21 -0
  123. package/dist/esm/searchcraft-popover-form.entry.js.map +1 -0
  124. package/dist/esm/searchcraft-popover-list-view.entry.js +22 -0
  125. package/dist/esm/searchcraft-popover-list-view.entry.js.map +1 -0
  126. package/dist/esm/searchcraft-popover-result.entry.js +21 -0
  127. package/dist/esm/searchcraft-popover-result.entry.js.map +1 -0
  128. package/dist/esm/searchcraft-results-info.entry.js +2 -2
  129. package/dist/{components/p-3c181808.js → esm/store-0c6c43cc.js} +234 -231
  130. package/dist/esm/{store-8d82e948.js.map → store-0c6c43cc.js.map} +1 -1
  131. package/dist/searchcraft-javascript-sdk/index.esm.js +1 -1
  132. package/dist/searchcraft-javascript-sdk/p-04300412.entry.js +2 -0
  133. package/dist/searchcraft-javascript-sdk/p-04300412.entry.js.map +1 -0
  134. package/dist/searchcraft-javascript-sdk/{p-efb41d6d.entry.js → p-09c7fbef.entry.js} +2 -2
  135. package/dist/searchcraft-javascript-sdk/p-09c7fbef.entry.js.map +1 -0
  136. package/dist/searchcraft-javascript-sdk/{p-d4a7d8bd.entry.js → p-51eb71bd.entry.js} +2 -2
  137. package/dist/searchcraft-javascript-sdk/p-61cf9d6c.entry.js +2 -0
  138. package/dist/searchcraft-javascript-sdk/p-61cf9d6c.entry.js.map +1 -0
  139. package/dist/searchcraft-javascript-sdk/p-64eadc05.entry.js +2 -0
  140. package/dist/searchcraft-javascript-sdk/p-64eadc05.entry.js.map +1 -0
  141. package/dist/searchcraft-javascript-sdk/{p-676e2eef.entry.js → p-6579c3b2.entry.js} +2 -2
  142. package/dist/searchcraft-javascript-sdk/p-7336f522.entry.js +2 -0
  143. package/dist/searchcraft-javascript-sdk/p-7336f522.entry.js.map +1 -0
  144. package/dist/searchcraft-javascript-sdk/{p-a56af0b0.entry.js → p-8574b83f.entry.js} +2 -2
  145. package/dist/searchcraft-javascript-sdk/p-8574b83f.entry.js.map +1 -0
  146. package/dist/searchcraft-javascript-sdk/{p-a2801518.js → p-86911576.js} +2 -2
  147. package/dist/searchcraft-javascript-sdk/p-86911576.js.map +1 -0
  148. package/dist/searchcraft-javascript-sdk/p-a7a7b4e0.entry.js +2 -0
  149. package/dist/searchcraft-javascript-sdk/p-a7a7b4e0.entry.js.map +1 -0
  150. package/dist/searchcraft-javascript-sdk/p-adadf38a.entry.js +2 -0
  151. package/dist/searchcraft-javascript-sdk/p-adadf38a.entry.js.map +1 -0
  152. package/dist/searchcraft-javascript-sdk/{p-fb239507.entry.js → p-ca022b18.entry.js} +2 -2
  153. package/dist/searchcraft-javascript-sdk/p-d7d0b88c.js +3 -0
  154. package/dist/searchcraft-javascript-sdk/p-d7d0b88c.js.map +1 -0
  155. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js +1 -1
  156. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js.map +1 -1
  157. package/dist/types/components/searchcraft-facet-list/searchcraft-facet-list.d.ts +4 -2
  158. package/dist/types/components/searchcraft-filter-panel/searchcraft-filter-panel.d.ts +0 -4
  159. package/dist/types/components/searchcraft-input-form/searchcraft-input-form.d.ts +76 -0
  160. package/dist/types/components/searchcraft-popover-form/searchcraft-popover-form.d.ts +8 -0
  161. package/dist/types/components/searchcraft-popover-list-view/searchcraft-popover-list-view.d.ts +8 -0
  162. package/dist/types/components/searchcraft-popover-result/searchcraft-popover-result.d.ts +6 -0
  163. package/dist/types/components.d.ts +158 -233
  164. package/dist/types/index.d.ts +1 -2
  165. package/dist/types/types/index.d.ts +1 -0
  166. package/dist/types/types/searchcraft-popover-form.types.d.ts +7 -0
  167. package/package.json +18 -4
  168. package/dist/cjs/index-6916cc47.js.map +0 -1
  169. package/dist/cjs/package-2005293c.js +0 -68
  170. package/dist/cjs/package-2005293c.js.map +0 -1
  171. package/dist/cjs/searchcraft-auto-search-form.cjs.entry.js +0 -143
  172. package/dist/cjs/searchcraft-auto-search-form.cjs.entry.js.map +0 -1
  173. package/dist/cjs/searchcraft-base-search-form.cjs.entry.js +0 -69
  174. package/dist/cjs/searchcraft-base-search-form.cjs.entry.js.map +0 -1
  175. package/dist/cjs/searchcraft-button-icon.cjs.entry.js +0 -18
  176. package/dist/cjs/searchcraft-button-icon.cjs.entry.js.map +0 -1
  177. package/dist/cjs/searchcraft-button.cjs.entry.js.map +0 -1
  178. package/dist/cjs/searchcraft-check-icon_2.cjs.entry.js +0 -28
  179. package/dist/cjs/searchcraft-check-icon_2.cjs.entry.js.map +0 -1
  180. package/dist/cjs/searchcraft-clear-icon-set.cjs.entry.js +0 -30
  181. package/dist/cjs/searchcraft-clear-icon-set.cjs.entry.js.map +0 -1
  182. package/dist/cjs/searchcraft-error-message_3.cjs.entry.js +0 -95
  183. package/dist/cjs/searchcraft-error-message_3.cjs.entry.js.map +0 -1
  184. package/dist/cjs/searchcraft-search-icon-set.cjs.entry.js +0 -33
  185. package/dist/cjs/searchcraft-search-icon-set.cjs.entry.js.map +0 -1
  186. package/dist/cjs/searchcraft-spinner-dark.cjs.entry.js +0 -22
  187. package/dist/cjs/searchcraft-spinner-dark.cjs.entry.js.map +0 -1
  188. package/dist/cjs/searchcraft-spinner-light.cjs.entry.js.map +0 -1
  189. package/dist/collection/assets/searchcraft-button-icons.js +0 -9
  190. package/dist/collection/assets/searchcraft-button-icons.js.map +0 -1
  191. package/dist/collection/assets/searchcraft-check-icon.js +0 -9
  192. package/dist/collection/assets/searchcraft-check-icon.js.map +0 -1
  193. package/dist/collection/assets/searchcraft-clear-icon-set.js +0 -45
  194. package/dist/collection/assets/searchcraft-clear-icon-set.js.map +0 -1
  195. package/dist/collection/assets/searchcraft-dash-icon.js +0 -9
  196. package/dist/collection/assets/searchcraft-dash-icon.js.map +0 -1
  197. package/dist/collection/assets/searchcraft-search-icon-set.js +0 -84
  198. package/dist/collection/assets/searchcraft-search-icon-set.js.map +0 -1
  199. package/dist/collection/components/searchcraft-auto-search-form/searchcraft-auto-search-form.js +0 -338
  200. package/dist/collection/components/searchcraft-auto-search-form/searchcraft-auto-search-form.js.map +0 -1
  201. package/dist/collection/components/searchcraft-auto-search-form/searchcraft-auto-search-form.module.css +0 -104
  202. package/dist/collection/components/searchcraft-base-search-form/searchcraft-base-search-form.js +0 -190
  203. package/dist/collection/components/searchcraft-base-search-form/searchcraft-base-search-form.js.map +0 -1
  204. package/dist/collection/components/searchcraft-base-search-form/searchcraft-base-search-form.module.css +0 -104
  205. package/dist/collection/components/searchcraft-input/searchcraft-input.js +0 -266
  206. package/dist/collection/components/searchcraft-input/searchcraft-input.js.map +0 -1
  207. package/dist/collection/components/searchcraft-spinner-dark/searchcraft-spinner-dark.js +0 -19
  208. package/dist/collection/components/searchcraft-spinner-dark/searchcraft-spinner-dark.js.map +0 -1
  209. package/dist/collection/components/searchcraft-spinner-dark/searchcraft-spinner-dark.module.css +0 -134
  210. package/dist/collection/components/searchcraft-spinner-light/searchcraft-spinner-light.js +0 -19
  211. package/dist/collection/components/searchcraft-spinner-light/searchcraft-spinner-light.js.map +0 -1
  212. package/dist/collection/components/searchcraft-spinner-light/searchcraft-spinner-light.module.css +0 -125
  213. package/dist/components/p-0468a9eb.js +0 -82
  214. package/dist/components/p-0468a9eb.js.map +0 -1
  215. package/dist/components/p-04d13314.js +0 -29
  216. package/dist/components/p-04d13314.js.map +0 -1
  217. package/dist/components/p-37f54c0b.js.map +0 -1
  218. package/dist/components/p-3c181808.js.map +0 -1
  219. package/dist/components/p-5639be85.js.map +0 -1
  220. package/dist/components/p-7bb734f3.js.map +0 -1
  221. package/dist/components/p-9b9df0ca.js.map +0 -1
  222. package/dist/components/p-9f2b8375.js +0 -33
  223. package/dist/components/p-9f2b8375.js.map +0 -1
  224. package/dist/components/p-ace4e6a0.js.map +0 -1
  225. package/dist/components/p-c8bc1e4f.js.map +0 -1
  226. package/dist/components/p-c994d722.js +0 -66
  227. package/dist/components/p-c994d722.js.map +0 -1
  228. package/dist/components/p-de50441f.js +0 -29
  229. package/dist/components/p-de50441f.js.map +0 -1
  230. package/dist/components/searchcraft-auto-search-form.d.ts +0 -11
  231. package/dist/components/searchcraft-auto-search-form.js +0 -189
  232. package/dist/components/searchcraft-auto-search-form.js.map +0 -1
  233. package/dist/components/searchcraft-base-search-form.d.ts +0 -11
  234. package/dist/components/searchcraft-base-search-form.js +0 -121
  235. package/dist/components/searchcraft-base-search-form.js.map +0 -1
  236. package/dist/components/searchcraft-button-icon.d.ts +0 -11
  237. package/dist/components/searchcraft-button-icon.js +0 -32
  238. package/dist/components/searchcraft-button-icon.js.map +0 -1
  239. package/dist/components/searchcraft-check-icon.d.ts +0 -11
  240. package/dist/components/searchcraft-check-icon.js +0 -8
  241. package/dist/components/searchcraft-check-icon.js.map +0 -1
  242. package/dist/components/searchcraft-clear-icon-set.d.ts +0 -11
  243. package/dist/components/searchcraft-clear-icon-set.js +0 -46
  244. package/dist/components/searchcraft-clear-icon-set.js.map +0 -1
  245. package/dist/components/searchcraft-dash-icon.d.ts +0 -11
  246. package/dist/components/searchcraft-dash-icon.js +0 -8
  247. package/dist/components/searchcraft-dash-icon.js.map +0 -1
  248. package/dist/components/searchcraft-input.d.ts +0 -11
  249. package/dist/components/searchcraft-input.js +0 -8
  250. package/dist/components/searchcraft-input.js.map +0 -1
  251. package/dist/components/searchcraft-search-icon-set.d.ts +0 -11
  252. package/dist/components/searchcraft-search-icon-set.js +0 -51
  253. package/dist/components/searchcraft-search-icon-set.js.map +0 -1
  254. package/dist/components/searchcraft-spinner-dark.d.ts +0 -11
  255. package/dist/components/searchcraft-spinner-dark.js +0 -8
  256. package/dist/components/searchcraft-spinner-dark.js.map +0 -1
  257. package/dist/components/searchcraft-spinner-light.d.ts +0 -11
  258. package/dist/components/searchcraft-spinner-light.js +0 -36
  259. package/dist/components/searchcraft-spinner-light.js.map +0 -1
  260. package/dist/esm/index-921fe029.js.map +0 -1
  261. package/dist/esm/package-07f53086.js +0 -66
  262. package/dist/esm/package-07f53086.js.map +0 -1
  263. package/dist/esm/searchcraft-auto-search-form.entry.js +0 -139
  264. package/dist/esm/searchcraft-auto-search-form.entry.js.map +0 -1
  265. package/dist/esm/searchcraft-base-search-form.entry.js +0 -65
  266. package/dist/esm/searchcraft-base-search-form.entry.js.map +0 -1
  267. package/dist/esm/searchcraft-button-icon.entry.js +0 -14
  268. package/dist/esm/searchcraft-button-icon.entry.js.map +0 -1
  269. package/dist/esm/searchcraft-button.entry.js.map +0 -1
  270. package/dist/esm/searchcraft-check-icon_2.entry.js +0 -23
  271. package/dist/esm/searchcraft-check-icon_2.entry.js.map +0 -1
  272. package/dist/esm/searchcraft-clear-icon-set.entry.js +0 -26
  273. package/dist/esm/searchcraft-clear-icon-set.entry.js.map +0 -1
  274. package/dist/esm/searchcraft-error-message_3.entry.js +0 -89
  275. package/dist/esm/searchcraft-error-message_3.entry.js.map +0 -1
  276. package/dist/esm/searchcraft-search-icon-set.entry.js +0 -29
  277. package/dist/esm/searchcraft-search-icon-set.entry.js.map +0 -1
  278. package/dist/esm/searchcraft-spinner-dark.entry.js +0 -18
  279. package/dist/esm/searchcraft-spinner-dark.entry.js.map +0 -1
  280. package/dist/esm/searchcraft-spinner-light.entry.js.map +0 -1
  281. package/dist/searchcraft-javascript-sdk/p-1720b612.entry.js +0 -2
  282. package/dist/searchcraft-javascript-sdk/p-1720b612.entry.js.map +0 -1
  283. package/dist/searchcraft-javascript-sdk/p-3292e706.entry.js +0 -2
  284. package/dist/searchcraft-javascript-sdk/p-3292e706.entry.js.map +0 -1
  285. package/dist/searchcraft-javascript-sdk/p-491ae071.entry.js +0 -2
  286. package/dist/searchcraft-javascript-sdk/p-491ae071.entry.js.map +0 -1
  287. package/dist/searchcraft-javascript-sdk/p-4a2d1f44.entry.js +0 -2
  288. package/dist/searchcraft-javascript-sdk/p-4a2d1f44.entry.js.map +0 -1
  289. package/dist/searchcraft-javascript-sdk/p-80e3f29f.js +0 -3
  290. package/dist/searchcraft-javascript-sdk/p-80e3f29f.js.map +0 -1
  291. package/dist/searchcraft-javascript-sdk/p-83a074b6.entry.js +0 -2
  292. package/dist/searchcraft-javascript-sdk/p-83a074b6.entry.js.map +0 -1
  293. package/dist/searchcraft-javascript-sdk/p-8a9b0762.entry.js +0 -2
  294. package/dist/searchcraft-javascript-sdk/p-8a9b0762.entry.js.map +0 -1
  295. package/dist/searchcraft-javascript-sdk/p-a2801518.js.map +0 -1
  296. package/dist/searchcraft-javascript-sdk/p-a56af0b0.entry.js.map +0 -1
  297. package/dist/searchcraft-javascript-sdk/p-bcc68b15.entry.js +0 -2
  298. package/dist/searchcraft-javascript-sdk/p-bcc68b15.entry.js.map +0 -1
  299. package/dist/searchcraft-javascript-sdk/p-c70b31ae.entry.js +0 -2
  300. package/dist/searchcraft-javascript-sdk/p-c70b31ae.entry.js.map +0 -1
  301. package/dist/searchcraft-javascript-sdk/p-c994d722.js +0 -2
  302. package/dist/searchcraft-javascript-sdk/p-c994d722.js.map +0 -1
  303. package/dist/searchcraft-javascript-sdk/p-d08d0b15.entry.js +0 -2
  304. package/dist/searchcraft-javascript-sdk/p-d08d0b15.entry.js.map +0 -1
  305. package/dist/searchcraft-javascript-sdk/p-e8a96dca.entry.js +0 -2
  306. package/dist/searchcraft-javascript-sdk/p-e8a96dca.entry.js.map +0 -1
  307. package/dist/searchcraft-javascript-sdk/p-efb41d6d.entry.js.map +0 -1
  308. package/dist/types/assets/searchcraft-button-icons.d.ts +0 -3
  309. package/dist/types/assets/searchcraft-check-icon.d.ts +0 -3
  310. package/dist/types/assets/searchcraft-clear-icon-set.d.ts +0 -8
  311. package/dist/types/assets/searchcraft-dash-icon.d.ts +0 -3
  312. package/dist/types/assets/searchcraft-search-icon-set.d.ts +0 -10
  313. package/dist/types/components/searchcraft-auto-search-form/searchcraft-auto-search-form.d.ts +0 -34
  314. package/dist/types/components/searchcraft-base-search-form/searchcraft-base-search-form.d.ts +0 -21
  315. package/dist/types/components/searchcraft-input/searchcraft-input.d.ts +0 -22
  316. package/dist/types/components/searchcraft-spinner-dark/searchcraft-spinner-dark.d.ts +0 -3
  317. package/dist/types/components/searchcraft-spinner-light/searchcraft-spinner-light.d.ts +0 -3
  318. /package/dist/searchcraft-javascript-sdk/{p-d4a7d8bd.entry.js.map → p-51eb71bd.entry.js.map} +0 -0
  319. /package/dist/searchcraft-javascript-sdk/{p-676e2eef.entry.js.map → p-6579c3b2.entry.js.map} +0 -0
  320. /package/dist/searchcraft-javascript-sdk/{p-fb239507.entry.js.map → p-ca022b18.entry.js.map} +0 -0
@@ -1,14 +1,12 @@
1
- import { p as proxyCustomElement, H, c as createEvent, h, F as Fragment } from './p-5639be85.js';
1
+ import { p as proxyCustomElement, H, c as createEvent, h, F as Fragment } from './p-e4846fa2.js';
2
2
  import { c as classNames } from './p-5cdc6210.js';
3
- import { u as useSearchcraftStore } from './p-3c181808.js';
3
+ import { u as useSearchcraftStore } from './p-86911576.js';
4
4
  import { m as mergeFacetRoots, r as removeSubstringMatches } from './p-f308d05d.js';
5
- import { d as defineCustomElement$2 } from './p-04d13314.js';
6
- import { d as defineCustomElement$1 } from './p-de50441f.js';
7
5
 
8
6
  const searchcraftFacetListModuleCss = ":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}";
9
7
  const SearchcraftFacetListStyle0 = searchcraftFacetListModuleCss;
10
8
 
11
- const SearchcraftFiltersList = /*@__PURE__*/ proxyCustomElement(class SearchcraftFiltersList extends H {
9
+ const SearchcraftFacetList = /*@__PURE__*/ proxyCustomElement(class SearchcraftFacetList extends H {
12
10
  constructor() {
13
11
  super();
14
12
  this.__registerHost();
@@ -29,9 +27,11 @@ const SearchcraftFiltersList = /*@__PURE__*/ proxyCustomElement(class Searchcraf
29
27
  this.baseFacetRoot = undefined;
30
28
  this.facetRoot = undefined;
31
29
  this.selectedPaths = {};
32
- this.lastQuery = undefined;
33
30
  this.lastTimeTaken = undefined;
34
31
  this.hasNewSearchTerm = false;
32
+ this.lastQuery = undefined;
33
+ this.lastSearchMode = undefined;
34
+ this.lastSortType = undefined;
35
35
  this.unsubscribe = undefined;
36
36
  }
37
37
  handleStateUpdate(state) {
@@ -39,7 +39,9 @@ const SearchcraftFiltersList = /*@__PURE__*/ proxyCustomElement(class Searchcraf
39
39
  const facetPrime = (_a = state.searchResults) === null || _a === void 0 ? void 0 : _a.data.facets;
40
40
  const timeTaken = (_b = state.searchResults) === null || _b === void 0 ? void 0 : _b.data.time_taken;
41
41
  /** Things to do when the state's search term has changed, but before the response received */
42
- if (state.query !== this.lastQuery) {
42
+ if (state.query !== this.lastQuery ||
43
+ state.searchMode !== this.lastSearchMode ||
44
+ state.sortType !== this.lastSortType) {
43
45
  this.selectedPaths = {};
44
46
  this.hasNewSearchTerm = true;
45
47
  }
@@ -59,6 +61,8 @@ const SearchcraftFiltersList = /*@__PURE__*/ proxyCustomElement(class Searchcraf
59
61
  }
60
62
  }
61
63
  this.lastQuery = state.query;
64
+ this.lastSearchMode = state.searchMode;
65
+ this.lastSortType = state.sortType;
62
66
  this.lastTimeTaken = timeTaken;
63
67
  }
64
68
  connectedCallback() {
@@ -100,7 +104,7 @@ const SearchcraftFiltersList = /*@__PURE__*/ proxyCustomElement(class Searchcraf
100
104
  render() {
101
105
  var _a;
102
106
  const firstFacet = (_a = this.facetRoot) === null || _a === void 0 ? void 0 : _a[this.fieldName];
103
- return (h("div", { key: '3dbfa6515c9628e8eea3cddcd108403a9d51f7c1', class: classNames('filtersListContainer', 'searchcraft-filters-list-container') }, !firstFacet && (h("p", { key: 'c7c519a6a4b6d27343a0ba953d428ec892dbdc93', class: 'searchcraft-facet-message' }, "Enter a search to view facets.")), firstFacet === null || firstFacet === void 0 ? void 0 :
107
+ return (h("div", { key: 'c7b6a2c7bbb48d0835745b4bcae43a283ade4139', class: classNames('filtersListContainer', 'searchcraft-filters-list-container') }, !firstFacet && (h("p", { key: 'a682f57ff51fdcfec670744ef84930c90c9b9c20', class: 'searchcraft-facet-message' }, "Enter a search to view facets.")), firstFacet === null || firstFacet === void 0 ? void 0 :
104
108
  firstFacet.map((facetChild) => {
105
109
  var _a;
106
110
  const isChildSelected = facetChild.children
@@ -121,35 +125,27 @@ const SearchcraftFiltersList = /*@__PURE__*/ proxyCustomElement(class Searchcraf
121
125
  "baseFacetRoot": [32],
122
126
  "facetRoot": [32],
123
127
  "selectedPaths": [32],
124
- "lastQuery": [32],
125
128
  "lastTimeTaken": [32],
126
129
  "hasNewSearchTerm": [32],
130
+ "lastQuery": [32],
131
+ "lastSearchMode": [32],
132
+ "lastSortType": [32],
127
133
  "unsubscribe": [32]
128
134
  }]);
129
135
  function defineCustomElement() {
130
136
  if (typeof customElements === "undefined") {
131
137
  return;
132
138
  }
133
- const components = ["searchcraft-facet-list", "searchcraft-check-icon", "searchcraft-dash-icon"];
139
+ const components = ["searchcraft-facet-list"];
134
140
  components.forEach(tagName => { switch (tagName) {
135
141
  case "searchcraft-facet-list":
136
142
  if (!customElements.get(tagName)) {
137
- customElements.define(tagName, SearchcraftFiltersList);
138
- }
139
- break;
140
- case "searchcraft-check-icon":
141
- if (!customElements.get(tagName)) {
142
- defineCustomElement$2();
143
- }
144
- break;
145
- case "searchcraft-dash-icon":
146
- if (!customElements.get(tagName)) {
147
- defineCustomElement$1();
143
+ customElements.define(tagName, SearchcraftFacetList);
148
144
  }
149
145
  break;
150
146
  } });
151
147
  }
152
148
 
153
- export { SearchcraftFiltersList as S, defineCustomElement as d };
149
+ export { SearchcraftFacetList as S, defineCustomElement as d };
154
150
 
155
- //# sourceMappingURL=p-7bb734f3.js.map
151
+ //# sourceMappingURL=p-193cf280.js.map
@@ -0,0 +1 @@
1
+ {"file":"p-193cf280.js","mappings":"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","names":[],"sources":["src/components/searchcraft-facet-list/searchcraft-facet-list.module.scss?tag=searchcraft-facet-list","src/components/searchcraft-facet-list/searchcraft-facet-list.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"],"version":3}
@@ -1,4 +1,4 @@
1
- import { p as proxyCustomElement, H, c as createEvent, h } from './p-5639be85.js';
1
+ import { p as proxyCustomElement, H, c as createEvent, h } from './p-e4846fa2.js';
2
2
  import { a as getMillis } from './p-f308d05d.js';
3
3
  import { c as classNames } from './p-5cdc6210.js';
4
4
 
@@ -65,10 +65,10 @@ const SearchcraftSlider = /*@__PURE__*/ proxyCustomElement(class SearchcraftSlid
65
65
  const endLabel = this.dataType === 'number'
66
66
  ? this.endValue
67
67
  : new Date(this.endValue).getFullYear();
68
- return (h("div", { key: 'f05bc14a425c9e302cd0aad174af7e80a553258e', class: 'searchcraft-slider-container' }, h("div", { key: 'e52983353639e1c5b695772d55148daa25b48845', class: 'searchcraft-slider-range-container' }, h("div", { key: '9f7d5601f056a75bfd8f5ef9053a21a4931c8b1c', class: 'searchcraft-slider-active-range', style: {
68
+ return (h("div", { key: '51de4996df052bf178590aeb4c56a67ec57c92e5', class: 'searchcraft-slider-container' }, h("div", { key: '634bead69c3fbc462cda3dd65dd4ba6a398c6913', class: 'searchcraft-slider-range-container' }, h("div", { key: '1b7a0b63ef208884f24b9f56b48a72bca320c71b', class: 'searchcraft-slider-active-range', style: {
69
69
  left: `${startPercent}%`,
70
70
  width: `${endPercent - startPercent}%`,
71
- } }), h("input", { key: 'c7816c75212e3573ec35171557b79c9de1da60f9', class: classNames('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 }), h("input", { key: '0fe6e721448b99899f6875d05789399f862cb82e', class: classNames('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 })), h("div", { key: 'fdf17ab7c1322824bbd94de96b223d3e2ceddfc8', class: 'searchcraft-slider-label-container' }, h("span", { key: 'e7ddfd13f5d258a995bb824e9b26a492e5ca4f32', class: 'searchcraft-slider-label' }, startLabel), h("span", { key: '67d6f9ea4e8fa7f651c9e9cafb624996df1676ea', class: 'searchcraft-slider-label' }, endLabel))));
71
+ } }), h("input", { key: '29313d6909d5ff646d7f3810163f5f01fe09cc36', class: classNames('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 }), h("input", { key: '1e95e93a028c7bc204e2f3894bfe8b77ac6c9d28', class: classNames('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 })), h("div", { key: 'c1560933a38f3153ac1dbaece041ef75df479dc4', class: 'searchcraft-slider-label-container' }, h("span", { key: '638f72b8c081a324cc3ecb833163cd036a6ab90c', class: 'searchcraft-slider-label' }, startLabel), h("span", { key: '011968bdf897de9960fe2214b4adceee4d79b6d0', class: 'searchcraft-slider-label' }, endLabel))));
72
72
  }
73
73
  static get style() { return SearchcraftSliderStyle0; }
74
74
  }, [0, "searchcraft-slider", {
@@ -96,4 +96,4 @@ function defineCustomElement() {
96
96
 
97
97
  export { SearchcraftSlider as S, defineCustomElement as d };
98
98
 
99
- //# sourceMappingURL=p-3e8d3586.js.map
99
+ //# sourceMappingURL=p-5380505b.js.map
@@ -1 +1 @@
1
- {"file":"p-3e8d3586.js","mappings":"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","names":[],"sources":["src/components/searchcraft-slider/searchcraft-slider.module.scss?tag=searchcraft-slider","src/components/searchcraft-slider/searchcraft-slider.tsx"],"sourcesContent":[".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"],"version":3}
1
+ {"file":"p-5380505b.js","mappings":"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","names":[],"sources":["src/components/searchcraft-slider/searchcraft-slider.module.scss?tag=searchcraft-slider","src/components/searchcraft-slider/searchcraft-slider.tsx"],"sourcesContent":[".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"],"version":3}
@@ -1,5 +1,5 @@
1
- import { p as proxyCustomElement, H, c as createEvent, h } from './p-5639be85.js';
2
- import { u as useSearchcraftStore } from './p-3c181808.js';
1
+ import { p as proxyCustomElement, H, c as createEvent, h } from './p-e4846fa2.js';
2
+ import { u as useSearchcraftStore } from './p-86911576.js';
3
3
  import { c as classNames } from './p-5cdc6210.js';
4
4
 
5
5
  const searchcraftToggleButtonModuleCss = ":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)}";
@@ -23,10 +23,10 @@ const SearchcraftToggleButton = /*@__PURE__*/ proxyCustomElement(class Searchcra
23
23
  connectedCallback() {
24
24
  /** When the query changes, sets toggle button state back to inactive. */
25
25
  this.unsubscribe = useSearchcraftStore.subscribe((state) => {
26
- if (state.query !== this.lastQuery) {
26
+ if (state.query !== this.lastQuery && state.query.trim().length === 0) {
27
27
  this.isActive = false;
28
- this.lastQuery = state.query;
29
28
  }
29
+ this.lastQuery = state.query;
30
30
  });
31
31
  }
32
32
  disconnectedCallback() {
@@ -34,9 +34,9 @@ const SearchcraftToggleButton = /*@__PURE__*/ proxyCustomElement(class Searchcra
34
34
  (_a = this.unsubscribe) === null || _a === void 0 ? void 0 : _a.call(this);
35
35
  }
36
36
  render() {
37
- return (h("div", { key: 'e6d23071452a4a01b95a45748860df7737735c83', class: 'searchcraft-toggle-button-container' }, h("div", { key: '3d87cd576368065c7fe8d3b50daef9c67c04253e' }, h("p", { key: '06d1f349c9132e6a9762d777e3f90c635852e4a1', class: 'searchcraft-toggle-button-label' }, this.label), this.subLabel && (h("p", { key: '9bf361bdb33977a089d9364822c9c11b846b59a5', class: 'searchcraft-toggle-button-sub-label' }, this.subLabel))), h("button", { key: 'bb8f27eecb9fe8d5dde237f81d04c3e79a7ec87b', class: classNames('searchcraft-toggle-button-background', {
37
+ return (h("div", { key: '90a7816e1e02125939f3f05a9dbfd94a5f161959', class: 'searchcraft-toggle-button-container' }, h("div", { key: '6a3e570ba3d00ccc315cd092d5b1c618c0b23ea2' }, h("p", { key: '41d1d0ab4557c856bb0ed12af8a4b0c81203d6d5', class: 'searchcraft-toggle-button-label' }, this.label), this.subLabel && (h("p", { key: 'ec145b4f655bacec600ac9aa137662f7fed9b7d2', class: 'searchcraft-toggle-button-sub-label' }, this.subLabel))), h("button", { key: '226599543806881f306630708eee24e922ff592e', class: classNames('searchcraft-toggle-button-background', {
38
38
  active: this.isActive,
39
- }), onClick: this.handleToggle, type: 'button' }, h("div", { key: 'd4be7cc5fbadfc28e97c4dfada15236b7be2fda0', class: classNames('searchcraft-toggle-button-handle', {
39
+ }), onClick: this.handleToggle, type: 'button' }, h("div", { key: 'b83e81e7820705952cfc8c911223e67dfbc0f98d', class: classNames('searchcraft-toggle-button-handle', {
40
40
  active: this.isActive,
41
41
  }) }))));
42
42
  }
@@ -64,4 +64,4 @@ function defineCustomElement() {
64
64
 
65
65
  export { SearchcraftToggleButton as S, defineCustomElement as d };
66
66
 
67
- //# sourceMappingURL=p-9b9df0ca.js.map
67
+ //# sourceMappingURL=p-596ceccc.js.map
@@ -0,0 +1 @@
1
+ {"file":"p-596ceccc.js","mappings":";;;;AAAA,MAAM,gCAAgC,GAAG,oxIAAoxI,CAAC;AAC9zI,sCAAe,gCAAgC;;MCclC,uBAAuB;;;;;QAe1B,iBAAY,GAAG;YACrB,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;YAC/B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACxC,CAAC;qBAZc,QAAQ;;wBAKJ,KAAK;;;;IASzB,iBAAiB;;QAEf,IAAI,CAAC,WAAW,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC,KAAK;YACrD,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;gBACrE,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;aACvB;YACD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC;SAC9B,CAAC,CAAC;KACJ;IAED,oBAAoB;;QAClB,MAAA,IAAI,CAAC,WAAW,oDAAI,CAAC;KACtB;IAED,MAAM;QACJ,QACE,4DAAK,KAAK,EAAC,qCAAqC,IAC9C,8DACE,0DAAG,KAAK,EAAC,iCAAiC,IAAE,IAAI,CAAC,KAAK,CAAK,EAC1D,IAAI,CAAC,QAAQ,KACZ,0DAAG,KAAK,EAAC,qCAAqC,IAAE,IAAI,CAAC,QAAQ,CAAK,CACnE,CACG,EACN,+DACE,KAAK,EAAE,UAAU,CAAC,sCAAsC,EAAE;gBACxD,MAAM,EAAE,IAAI,CAAC,QAAQ;aACtB,CAAC,EACF,OAAO,EAAE,IAAI,CAAC,YAAY,EAC1B,IAAI,EAAC,QAAQ,IAEb,4DACE,KAAK,EAAE,UAAU,CAAC,kCAAkC,EAAE;gBACpD,MAAM,EAAE,IAAI,CAAC,QAAQ;aACtB,CAAC,GACF,CACK,CACL,EACN;KACH;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/searchcraft-toggle-button/searchcraft-toggle-button.module.scss?tag=searchcraft-toggle-button","src/components/searchcraft-toggle-button/searchcraft-toggle-button.tsx"],"sourcesContent":[".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"],"version":3}
@@ -0,0 +1,38 @@
1
+ import { p as proxyCustomElement, H, h } from './p-e4846fa2.js';
2
+
3
+ const searchcraftPopoverListViewModuleCss = "";
4
+ const SearchcraftPopoverListViewStyle0 = searchcraftPopoverListViewModuleCss;
5
+
6
+ const SearchcraftPopoverListView = /*@__PURE__*/ proxyCustomElement(class SearchcraftPopoverListView extends H {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.popoverResultMappings = undefined;
11
+ }
12
+ componentDidLoad() { }
13
+ connectedCallback() { }
14
+ disconnectedCallback() { }
15
+ render() {
16
+ return (h("div", { key: 'a35800c35a9c5104e1a519452295e41a020b7efc', style: { display: 'flex' } }, h("p", { key: '5d158cefd96951528e0690d2299d8847e1777d35' }, "[popover list view]")));
17
+ }
18
+ static get style() { return SearchcraftPopoverListViewStyle0; }
19
+ }, [0, "searchcraft-popover-list-view", {
20
+ "popoverResultMappings": [16]
21
+ }]);
22
+ function defineCustomElement() {
23
+ if (typeof customElements === "undefined") {
24
+ return;
25
+ }
26
+ const components = ["searchcraft-popover-list-view"];
27
+ components.forEach(tagName => { switch (tagName) {
28
+ case "searchcraft-popover-list-view":
29
+ if (!customElements.get(tagName)) {
30
+ customElements.define(tagName, SearchcraftPopoverListView);
31
+ }
32
+ break;
33
+ } });
34
+ }
35
+
36
+ export { SearchcraftPopoverListView as S, defineCustomElement as d };
37
+
38
+ //# sourceMappingURL=p-672354c0.js.map
@@ -0,0 +1 @@
1
+ {"file":"p-672354c0.js","mappings":";;AAAA,MAAM,mCAAmC,GAAG,EAAE,CAAC;AAC/C,yCAAe,mCAAmC;;MCOrC,0BAA0B;;;;;;IAGrC,gBAAgB,MAAK;IAErB,iBAAiB,MAAK;IAEtB,oBAAoB,MAAK;IAEzB,MAAM;QACJ,QACE,4DAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAC7B,kFAA0B,CACtB,EACN;KACH;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/searchcraft-popover-list-view/searchcraft-popover-list-view.module.scss?tag=searchcraft-popover-list-view","src/components/searchcraft-popover-list-view/searchcraft-popover-list-view.tsx"],"sourcesContent":["","import { Component, h, Prop } from '@stencil/core';\nimport type { PopoverResultMappings } from 'types';\n\n@Component({\n tag: 'searchcraft-popover-list-view',\n styleUrl: 'searchcraft-popover-list-view.module.scss',\n shadow: false,\n})\nexport class SearchcraftPopoverListView {\n @Prop() popoverResultMappings: PopoverResultMappings | undefined;\n\n componentDidLoad() {}\n\n connectedCallback() {}\n\n disconnectedCallback() {}\n\n render() {\n return (\n <div style={{ display: 'flex' }}>\n <p>[popover list view]</p>\n </div>\n );\n }\n}\n"],"version":3}
@@ -889,23 +889,26 @@ const useSearchcraftStore = zustand.create((set, get) => {
889
889
  /**
890
890
  * When a new query is set, also reset the sort type, search mode, and facet paths.
891
891
  */
892
- set({
893
- query,
894
- facetPathsForIndexFields: {},
892
+ set(Object.assign({ query, facetPathsForIndexFields: {} }, (query.trim().length === 0 && {
895
893
  searchMode: 'fuzzy',
896
894
  sortType: 'asc',
897
- });
895
+ })));
898
896
  },
899
897
  setSearchResults: (results) => set({ searchResults: results }),
900
898
  setFacets: (facets) => set({ facets }),
901
899
  setIsRequesting: (isRequesting) => set({ isRequesting }),
902
900
  search: async () => {
903
901
  const state = get();
902
+ log(O.INFO, `Starting search with search term: "${state.query}"`);
904
903
  if (!searchcraft) {
905
904
  throw new Error('Searchcraft instance is not initialized.');
906
905
  }
906
+ if (!state.query.trim()) {
907
+ log(O.INFO, 'No search request was made: search term was empty.');
908
+ state.setSearchResults(null);
909
+ return;
910
+ }
907
911
  state.setIsRequesting(true);
908
- log(O.INFO, `Starting search with query: "${state.query}"`);
909
912
  try {
910
913
  const results = await searchcraft.search({
911
914
  query: state.query,
@@ -944,4 +947,4 @@ const useThemeStore = zustand.create((set) => ({
944
947
 
945
948
  export { useThemeStore as a, ie as i, useSearchcraftStore as u };
946
949
 
947
- //# sourceMappingURL=store-8d82e948.js.map
950
+ //# sourceMappingURL=p-86911576.js.map