@searchcraft/javascript-sdk 0.3.1 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (344) hide show
  1. package/README.md +197 -0
  2. package/dist/cjs/{index-264ebadc.js → index-6916cc47.js} +30 -3
  3. package/dist/cjs/index-6916cc47.js.map +1 -0
  4. package/dist/cjs/index.cjs.js +4 -5
  5. package/dist/cjs/index.cjs.js.map +1 -1
  6. package/dist/cjs/loader.cjs.js +2 -2
  7. package/dist/cjs/{package-35d3b670.js → package-38f7e2c7.js} +3 -3
  8. package/dist/cjs/package-38f7e2c7.js.map +1 -0
  9. package/dist/cjs/searchcraft-auto-search-form.cjs.entry.js +143 -0
  10. package/dist/cjs/searchcraft-auto-search-form.cjs.entry.js.map +1 -0
  11. package/dist/cjs/searchcraft-base-search-form.cjs.entry.js +8 -11
  12. package/dist/cjs/searchcraft-base-search-form.cjs.entry.js.map +1 -1
  13. package/dist/cjs/searchcraft-base-search-result.cjs.entry.js +74 -0
  14. package/dist/cjs/searchcraft-base-search-result.cjs.entry.js.map +1 -0
  15. package/dist/cjs/searchcraft-base-search-results.cjs.entry.js +109 -0
  16. package/dist/cjs/searchcraft-base-search-results.cjs.entry.js.map +1 -0
  17. package/dist/cjs/searchcraft-button-icon.cjs.entry.js +1 -1
  18. package/dist/cjs/searchcraft-button.cjs.entry.js +3 -8
  19. package/dist/cjs/searchcraft-button.cjs.entry.js.map +1 -1
  20. package/dist/cjs/searchcraft-check-icon_2.cjs.entry.js +28 -0
  21. package/dist/cjs/searchcraft-check-icon_2.cjs.entry.js.map +1 -0
  22. package/dist/cjs/searchcraft-clear-icon-set.cjs.entry.js +30 -0
  23. package/dist/cjs/searchcraft-clear-icon-set.cjs.entry.js.map +1 -0
  24. package/dist/cjs/searchcraft-error-message_3.cjs.entry.js +95 -0
  25. package/dist/cjs/searchcraft-error-message_3.cjs.entry.js.map +1 -0
  26. package/dist/cjs/searchcraft-facet-list_3.cjs.entry.js +236 -0
  27. package/dist/cjs/searchcraft-facet-list_3.cjs.entry.js.map +1 -0
  28. package/dist/cjs/searchcraft-filter-panel.cjs.entry.js +115 -0
  29. package/dist/cjs/searchcraft-filter-panel.cjs.entry.js.map +1 -0
  30. package/dist/cjs/searchcraft-javascript-sdk.cjs.js +2 -2
  31. package/dist/cjs/searchcraft-results-info.cjs.entry.js +46 -0
  32. package/dist/cjs/searchcraft-results-info.cjs.entry.js.map +1 -0
  33. package/dist/cjs/searchcraft-search-icon-set.cjs.entry.js +33 -0
  34. package/dist/cjs/searchcraft-search-icon-set.cjs.entry.js.map +1 -0
  35. package/dist/cjs/searchcraft-spinner-dark.cjs.entry.js +3 -3
  36. package/dist/cjs/searchcraft-spinner-dark.cjs.entry.js.map +1 -1
  37. package/dist/cjs/searchcraft-spinner-light.cjs.entry.js +3 -3
  38. package/dist/cjs/searchcraft-spinner-light.cjs.entry.js.map +1 -1
  39. package/dist/{esm/store-b519dd0b.js → cjs/store-afa727af.js} +148 -208
  40. package/dist/cjs/store-afa727af.js.map +1 -0
  41. package/dist/cjs/utils-0f309f6d.js +226 -0
  42. package/dist/cjs/utils-0f309f6d.js.map +1 -0
  43. package/dist/collection/collection-manifest.json +2 -4
  44. package/dist/collection/components/searchcraft-auto-search-form/searchcraft-auto-search-form.js +46 -95
  45. package/dist/collection/components/searchcraft-auto-search-form/searchcraft-auto-search-form.js.map +1 -1
  46. package/dist/collection/components/searchcraft-auto-search-form/searchcraft-auto-search-form.module.css +98 -9
  47. package/dist/collection/components/searchcraft-base-search-form/searchcraft-base-search-form.js +31 -16
  48. package/dist/collection/components/searchcraft-base-search-form/searchcraft-base-search-form.js.map +1 -1
  49. package/dist/collection/components/searchcraft-base-search-form/searchcraft-base-search-form.module.css +94 -8
  50. package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.js +125 -153
  51. package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.js.map +1 -1
  52. package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.module.css +139 -206
  53. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js +121 -92
  54. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js.map +1 -1
  55. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.module.css +105 -23
  56. package/dist/collection/components/searchcraft-button/searchcraft-button.js +2 -8
  57. package/dist/collection/components/searchcraft-button/searchcraft-button.js.map +1 -1
  58. package/dist/collection/components/searchcraft-button/searchcraft-button.module.css +107 -36
  59. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.js +1 -22
  60. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.js.map +1 -1
  61. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.module.css +101 -15
  62. package/dist/collection/components/searchcraft-facet-list/searchcraft-facet-list.js +171 -0
  63. package/dist/collection/components/searchcraft-facet-list/searchcraft-facet-list.js.map +1 -0
  64. package/dist/collection/components/searchcraft-facet-list/searchcraft-facet-list.module.css +216 -0
  65. package/dist/collection/components/searchcraft-filter-panel/searchcraft-filter-panel.js +148 -0
  66. package/dist/collection/components/searchcraft-filter-panel/searchcraft-filter-panel.js.map +1 -0
  67. package/dist/collection/components/searchcraft-filter-panel/searchcraft-filter-panel.module.css +118 -0
  68. package/dist/collection/components/searchcraft-input/searchcraft-input.js +36 -125
  69. package/dist/collection/components/searchcraft-input/searchcraft-input.js.map +1 -1
  70. package/dist/collection/components/searchcraft-input/searchcraft-input.module.css +158 -209
  71. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.js +1 -12
  72. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.js.map +1 -1
  73. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.module.css +102 -14
  74. package/dist/collection/components/searchcraft-results-info/searchcraft-results-info.js +1 -2
  75. package/dist/collection/components/searchcraft-results-info/searchcraft-results-info.js.map +1 -1
  76. package/dist/collection/components/searchcraft-results-info/searchcraft-results-info.module.css +103 -9
  77. package/dist/collection/components/searchcraft-slider/searchcraft-slider.js +93 -68
  78. package/dist/collection/components/searchcraft-slider/searchcraft-slider.js.map +1 -1
  79. package/dist/collection/components/searchcraft-slider/searchcraft-slider.module.css +117 -18
  80. package/dist/collection/components/searchcraft-spinner-dark/searchcraft-spinner-dark.js +1 -1
  81. package/dist/collection/components/searchcraft-spinner-dark/searchcraft-spinner-dark.module.css +103 -4
  82. package/dist/collection/components/searchcraft-spinner-light/searchcraft-spinner-light.js +1 -1
  83. package/dist/collection/components/searchcraft-spinner-light/searchcraft-spinner-light.module.css +102 -3
  84. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.js +62 -59
  85. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.js.map +1 -1
  86. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.module.css +135 -9
  87. package/dist/collection/index.js +2 -1
  88. package/dist/collection/index.js.map +1 -1
  89. package/dist/collection/provider/store.js +54 -34
  90. package/dist/collection/provider/store.js.map +1 -1
  91. package/dist/collection/types/index.js +3 -0
  92. package/dist/collection/types/index.js.map +1 -0
  93. package/dist/collection/types/searchcraft-base-search-results.types.js +2 -0
  94. package/dist/collection/types/searchcraft-base-search-results.types.js.map +1 -0
  95. package/dist/collection/types/searchcraft-filter-panel.types.js +2 -0
  96. package/dist/collection/types/searchcraft-filter-panel.types.js.map +1 -0
  97. package/dist/collection/utils/utils.js +171 -35
  98. package/dist/collection/utils/utils.js.map +1 -1
  99. package/dist/components/index.js +7 -11
  100. package/dist/components/index.js.map +1 -1
  101. package/dist/components/{p-bbf9973a.js → p-04d13314.js} +2 -2
  102. package/dist/components/{p-bbf9973a.js.map → p-04d13314.js.map} +1 -1
  103. package/dist/components/p-08e421ca.js +99 -0
  104. package/dist/components/p-08e421ca.js.map +1 -0
  105. package/dist/components/p-37f54c0b.js +54 -0
  106. package/dist/components/p-37f54c0b.js.map +1 -0
  107. package/dist/components/{p-727bfc38.js → p-3c181808.js} +135 -113
  108. package/dist/components/p-3c181808.js.map +1 -0
  109. package/dist/components/p-415f7b11.js +101 -0
  110. package/dist/components/p-415f7b11.js.map +1 -0
  111. package/dist/components/p-4353a2b8.js +155 -0
  112. package/dist/components/p-4353a2b8.js.map +1 -0
  113. package/dist/components/{p-b0c1fd63.js → p-4c89f065.js} +3 -3
  114. package/dist/components/p-4c89f065.js.map +1 -0
  115. package/dist/components/p-4fad3388.js +82 -0
  116. package/dist/components/p-4fad3388.js.map +1 -0
  117. package/dist/components/{p-6b353c3e.js → p-5639be85.js} +23 -3
  118. package/dist/components/p-5639be85.js.map +1 -0
  119. package/dist/components/p-9982883f.js +218 -0
  120. package/dist/components/p-9982883f.js.map +1 -0
  121. package/dist/components/p-9b9df0ca.js +67 -0
  122. package/dist/components/p-9b9df0ca.js.map +1 -0
  123. package/dist/components/p-9f2b8375.js +33 -0
  124. package/dist/components/p-9f2b8375.js.map +1 -0
  125. package/dist/components/p-ace4e6a0.js +35 -0
  126. package/dist/components/p-ace4e6a0.js.map +1 -0
  127. package/dist/components/p-c8bc1e4f.js +40 -0
  128. package/dist/components/p-c8bc1e4f.js.map +1 -0
  129. package/dist/components/{p-aad03c2a.js → p-de50441f.js} +2 -2
  130. package/dist/components/{p-aad03c2a.js.map → p-de50441f.js.map} +1 -1
  131. package/dist/components/searchcraft-auto-search-form.js +54 -82
  132. package/dist/components/searchcraft-auto-search-form.js.map +1 -1
  133. package/dist/components/searchcraft-base-search-form.js +20 -52
  134. package/dist/components/searchcraft-base-search-form.js.map +1 -1
  135. package/dist/components/searchcraft-base-search-result.js +1 -1
  136. package/dist/components/searchcraft-base-search-results.js +51 -52
  137. package/dist/components/searchcraft-base-search-results.js.map +1 -1
  138. package/dist/components/searchcraft-button-icon.js +1 -1
  139. package/dist/components/searchcraft-button.js +1 -1
  140. package/dist/components/searchcraft-check-icon.js +1 -1
  141. package/dist/components/searchcraft-clear-icon-set.js +39 -1
  142. package/dist/components/searchcraft-clear-icon-set.js.map +1 -1
  143. package/dist/components/searchcraft-dash-icon.js +1 -1
  144. package/dist/components/searchcraft-error-message.js +1 -1
  145. package/dist/components/searchcraft-facet-list.d.ts +11 -0
  146. package/dist/components/searchcraft-facet-list.js +8 -0
  147. package/dist/components/searchcraft-facet-list.js.map +1 -0
  148. package/dist/components/searchcraft-filter-panel.d.ts +11 -0
  149. package/dist/components/searchcraft-filter-panel.js +162 -0
  150. package/dist/components/searchcraft-filter-panel.js.map +1 -0
  151. package/dist/components/searchcraft-input-label.js +1 -1
  152. package/dist/components/searchcraft-input.js +1 -1
  153. package/dist/components/searchcraft-results-info.js +5 -6
  154. package/dist/components/searchcraft-results-info.js.map +1 -1
  155. package/dist/components/searchcraft-search-icon-set.js +44 -1
  156. package/dist/components/searchcraft-search-icon-set.js.map +1 -1
  157. package/dist/components/searchcraft-slider.js +1 -104
  158. package/dist/components/searchcraft-slider.js.map +1 -1
  159. package/dist/components/searchcraft-spinner-dark.js +1 -1
  160. package/dist/components/searchcraft-spinner-light.js +3 -3
  161. package/dist/components/searchcraft-spinner-light.js.map +1 -1
  162. package/dist/components/searchcraft-toggle-button.js +1 -93
  163. package/dist/components/searchcraft-toggle-button.js.map +1 -1
  164. package/dist/esm/{index-d851fb46.js → index-921fe029.js} +30 -4
  165. package/dist/esm/index-921fe029.js.map +1 -0
  166. package/dist/esm/index.js +2 -1
  167. package/dist/esm/index.js.map +1 -1
  168. package/dist/esm/loader.js +3 -3
  169. package/dist/esm/{package-82baadd7.js → package-e62ac63a.js} +3 -3
  170. package/dist/esm/package-e62ac63a.js.map +1 -0
  171. package/dist/esm/searchcraft-auto-search-form.entry.js +139 -0
  172. package/dist/esm/searchcraft-auto-search-form.entry.js.map +1 -0
  173. package/dist/esm/searchcraft-base-search-form.entry.js +8 -11
  174. package/dist/esm/searchcraft-base-search-form.entry.js.map +1 -1
  175. package/dist/esm/searchcraft-base-search-result.entry.js +70 -0
  176. package/dist/esm/searchcraft-base-search-result.entry.js.map +1 -0
  177. package/dist/esm/searchcraft-base-search-results.entry.js +105 -0
  178. package/dist/esm/searchcraft-base-search-results.entry.js.map +1 -0
  179. package/dist/esm/searchcraft-button-icon.entry.js +1 -1
  180. package/dist/esm/searchcraft-button.entry.js +3 -8
  181. package/dist/esm/searchcraft-button.entry.js.map +1 -1
  182. package/dist/esm/searchcraft-check-icon_2.entry.js +23 -0
  183. package/dist/esm/searchcraft-check-icon_2.entry.js.map +1 -0
  184. package/dist/{components/p-62e6b69c.js → esm/searchcraft-clear-icon-set.entry.js} +7 -24
  185. package/dist/esm/searchcraft-clear-icon-set.entry.js.map +1 -0
  186. package/dist/esm/searchcraft-error-message_3.entry.js +89 -0
  187. package/dist/esm/searchcraft-error-message_3.entry.js.map +1 -0
  188. package/dist/esm/searchcraft-facet-list_3.entry.js +230 -0
  189. package/dist/esm/searchcraft-facet-list_3.entry.js.map +1 -0
  190. package/dist/esm/searchcraft-filter-panel.entry.js +111 -0
  191. package/dist/esm/searchcraft-filter-panel.entry.js.map +1 -0
  192. package/dist/esm/searchcraft-javascript-sdk.js +3 -3
  193. package/dist/esm/searchcraft-results-info.entry.js +42 -0
  194. package/dist/esm/searchcraft-results-info.entry.js.map +1 -0
  195. package/dist/{components/p-5a872bdf.js → esm/searchcraft-search-icon-set.entry.js} +7 -26
  196. package/dist/esm/searchcraft-search-icon-set.entry.js.map +1 -0
  197. package/dist/esm/searchcraft-spinner-dark.entry.js +3 -3
  198. package/dist/esm/searchcraft-spinner-dark.entry.js.map +1 -1
  199. package/dist/esm/searchcraft-spinner-light.entry.js +3 -3
  200. package/dist/esm/searchcraft-spinner-light.entry.js.map +1 -1
  201. package/dist/{cjs/store-e3bbdd49.js → esm/store-8d82e948.js} +145 -220
  202. package/dist/esm/store-8d82e948.js.map +1 -0
  203. package/dist/esm/utils-ee63b542.js +218 -0
  204. package/dist/esm/utils-ee63b542.js.map +1 -0
  205. package/dist/searchcraft-javascript-sdk/index.esm.js +1 -1
  206. package/dist/searchcraft-javascript-sdk/p-15e0ce05.entry.js +2 -0
  207. package/dist/searchcraft-javascript-sdk/p-15e0ce05.entry.js.map +1 -0
  208. package/dist/searchcraft-javascript-sdk/p-2816782c.entry.js +2 -0
  209. package/dist/searchcraft-javascript-sdk/p-2816782c.entry.js.map +1 -0
  210. package/dist/searchcraft-javascript-sdk/p-3292e706.entry.js +2 -0
  211. package/dist/searchcraft-javascript-sdk/p-3292e706.entry.js.map +1 -0
  212. package/dist/searchcraft-javascript-sdk/p-4a2d1f44.entry.js +2 -0
  213. package/dist/searchcraft-javascript-sdk/p-4a2d1f44.entry.js.map +1 -0
  214. package/dist/searchcraft-javascript-sdk/p-4c89f065.js +2 -0
  215. package/dist/searchcraft-javascript-sdk/p-80e3f29f.js +3 -0
  216. package/dist/searchcraft-javascript-sdk/p-80e3f29f.js.map +1 -0
  217. package/dist/searchcraft-javascript-sdk/p-8a9b0762.entry.js +2 -0
  218. package/dist/searchcraft-javascript-sdk/p-8a9b0762.entry.js.map +1 -0
  219. package/dist/searchcraft-javascript-sdk/p-92d080a7.entry.js +2 -0
  220. package/dist/searchcraft-javascript-sdk/p-92d080a7.entry.js.map +1 -0
  221. package/dist/searchcraft-javascript-sdk/p-9982883f.js +2 -0
  222. package/dist/searchcraft-javascript-sdk/p-9982883f.js.map +1 -0
  223. package/dist/searchcraft-javascript-sdk/p-9f29b018.entry.js +2 -0
  224. package/dist/searchcraft-javascript-sdk/p-9f29b018.entry.js.map +1 -0
  225. package/dist/searchcraft-javascript-sdk/p-a148febe.entry.js +2 -0
  226. package/dist/searchcraft-javascript-sdk/p-a148febe.entry.js.map +1 -0
  227. package/dist/searchcraft-javascript-sdk/p-a2801518.js +11 -0
  228. package/dist/searchcraft-javascript-sdk/p-a2801518.js.map +1 -0
  229. package/dist/searchcraft-javascript-sdk/p-bcc68b15.entry.js +2 -0
  230. package/dist/searchcraft-javascript-sdk/p-bcc68b15.entry.js.map +1 -0
  231. package/dist/searchcraft-javascript-sdk/p-c70b31ae.entry.js +2 -0
  232. package/dist/searchcraft-javascript-sdk/p-c70b31ae.entry.js.map +1 -0
  233. package/dist/searchcraft-javascript-sdk/p-cc614ce6.entry.js +2 -0
  234. package/dist/searchcraft-javascript-sdk/p-cc614ce6.entry.js.map +1 -0
  235. package/dist/searchcraft-javascript-sdk/p-d4a7d8bd.entry.js +2 -0
  236. package/dist/searchcraft-javascript-sdk/p-d4a7d8bd.entry.js.map +1 -0
  237. package/dist/searchcraft-javascript-sdk/p-e108dd2e.entry.js +2 -0
  238. package/dist/searchcraft-javascript-sdk/p-e108dd2e.entry.js.map +1 -0
  239. package/dist/searchcraft-javascript-sdk/{p-99356c9a.entry.js → p-e8a96dca.entry.js} +2 -2
  240. package/dist/searchcraft-javascript-sdk/p-efb41d6d.entry.js +2 -0
  241. package/dist/searchcraft-javascript-sdk/p-efb41d6d.entry.js.map +1 -0
  242. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js +1 -1
  243. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js.map +1 -1
  244. package/dist/types/components/searchcraft-auto-search-form/searchcraft-auto-search-form.d.ts +5 -5
  245. package/dist/types/components/searchcraft-base-search-form/searchcraft-base-search-form.d.ts +3 -2
  246. package/dist/types/components/searchcraft-base-search-result/searchcraft-base-search-result.d.ts +16 -18
  247. package/dist/types/components/searchcraft-base-search-results/searchcraft-base-search-results.d.ts +10 -6
  248. package/dist/types/components/searchcraft-button/searchcraft-button.d.ts +0 -2
  249. package/dist/types/components/searchcraft-error-message/searchcraft-error-message.d.ts +0 -1
  250. package/dist/types/components/searchcraft-facet-list/searchcraft-facet-list.d.ts +24 -0
  251. package/dist/types/components/searchcraft-filter-panel/searchcraft-filter-panel.d.ts +22 -0
  252. package/dist/types/components/searchcraft-input/searchcraft-input.d.ts +4 -10
  253. package/dist/types/components/searchcraft-input-label/searchcraft-input-label.d.ts +0 -2
  254. package/dist/types/components/searchcraft-slider/searchcraft-slider.d.ts +12 -15
  255. package/dist/types/components/searchcraft-toggle-button/searchcraft-toggle-button.d.ts +8 -9
  256. package/dist/types/components.d.ts +127 -185
  257. package/dist/types/index.d.ts +2 -1
  258. package/dist/types/provider/store.d.ts +15 -14
  259. package/dist/types/types/index.d.ts +2 -0
  260. package/dist/types/types/searchcraft-base-search-results.types.d.ts +17 -0
  261. package/dist/types/types/searchcraft-filter-panel.types.d.ts +42 -0
  262. package/dist/types/utils/utils.d.ts +23 -15
  263. package/package.json +2 -2
  264. package/dist/cjs/index-264ebadc.js.map +0 -1
  265. package/dist/cjs/package-35d3b670.js.map +0 -1
  266. package/dist/cjs/searchcraft-auto-search-form_17.cjs.entry.js +0 -867
  267. package/dist/cjs/searchcraft-auto-search-form_17.cjs.entry.js.map +0 -1
  268. package/dist/cjs/store-e3bbdd49.js.map +0 -1
  269. package/dist/collection/components/searchcraft-clear-input-button/searchcraft-clear-input-button.js +0 -94
  270. package/dist/collection/components/searchcraft-clear-input-button/searchcraft-clear-input-button.js.map +0 -1
  271. package/dist/collection/components/searchcraft-clear-input-button/searchcraft-clear-input-button.module.css +0 -33
  272. package/dist/collection/components/searchcraft-filters-list/searchcraft-filters-list.js +0 -168
  273. package/dist/collection/components/searchcraft-filters-list/searchcraft-filters-list.js.map +0 -1
  274. package/dist/collection/components/searchcraft-filters-list/searchcraft-filters-list.module.css +0 -111
  275. package/dist/collection/components/searchcraft-input-caption/searchcraft-input-caption.js +0 -121
  276. package/dist/collection/components/searchcraft-input-caption/searchcraft-input-caption.js.map +0 -1
  277. package/dist/collection/components/searchcraft-input-caption/searchcraft-input-caption.module.css +0 -79
  278. package/dist/collection/components/searchcraft-input-icon/searchcraft-input-icon.js +0 -109
  279. package/dist/collection/components/searchcraft-input-icon/searchcraft-input-icon.js.map +0 -1
  280. package/dist/collection/components/searchcraft-input-icon/searchcraft-input-icon.module.css +0 -17
  281. package/dist/components/p-4f939ba2.js +0 -53
  282. package/dist/components/p-4f939ba2.js.map +0 -1
  283. package/dist/components/p-5015a359.js +0 -39
  284. package/dist/components/p-5015a359.js.map +0 -1
  285. package/dist/components/p-54848b4d.js +0 -136
  286. package/dist/components/p-54848b4d.js.map +0 -1
  287. package/dist/components/p-5a872bdf.js.map +0 -1
  288. package/dist/components/p-62c40862.js +0 -91
  289. package/dist/components/p-62c40862.js.map +0 -1
  290. package/dist/components/p-62e6b69c.js.map +0 -1
  291. package/dist/components/p-69ee3b9a.js +0 -59
  292. package/dist/components/p-69ee3b9a.js.map +0 -1
  293. package/dist/components/p-6b353c3e.js.map +0 -1
  294. package/dist/components/p-727bfc38.js.map +0 -1
  295. package/dist/components/p-7c280820.js +0 -33
  296. package/dist/components/p-7c280820.js.map +0 -1
  297. package/dist/components/p-7d385ffb.js +0 -60
  298. package/dist/components/p-7d385ffb.js.map +0 -1
  299. package/dist/components/p-8524c749.js +0 -54
  300. package/dist/components/p-8524c749.js.map +0 -1
  301. package/dist/components/p-b0c1fd63.js.map +0 -1
  302. package/dist/components/p-b38d171d.js +0 -47
  303. package/dist/components/p-b38d171d.js.map +0 -1
  304. package/dist/components/p-cd9a038a.js +0 -105
  305. package/dist/components/p-cd9a038a.js.map +0 -1
  306. package/dist/components/searchcraft-clear-input-button.d.ts +0 -11
  307. package/dist/components/searchcraft-clear-input-button.js +0 -8
  308. package/dist/components/searchcraft-clear-input-button.js.map +0 -1
  309. package/dist/components/searchcraft-filters-list.d.ts +0 -11
  310. package/dist/components/searchcraft-filters-list.js +0 -151
  311. package/dist/components/searchcraft-filters-list.js.map +0 -1
  312. package/dist/components/searchcraft-input-caption.d.ts +0 -11
  313. package/dist/components/searchcraft-input-caption.js +0 -8
  314. package/dist/components/searchcraft-input-caption.js.map +0 -1
  315. package/dist/components/searchcraft-input-icon.d.ts +0 -11
  316. package/dist/components/searchcraft-input-icon.js +0 -8
  317. package/dist/components/searchcraft-input-icon.js.map +0 -1
  318. package/dist/esm/index-d851fb46.js.map +0 -1
  319. package/dist/esm/package-82baadd7.js.map +0 -1
  320. package/dist/esm/searchcraft-auto-search-form_17.entry.js +0 -847
  321. package/dist/esm/searchcraft-auto-search-form_17.entry.js.map +0 -1
  322. package/dist/esm/store-b519dd0b.js.map +0 -1
  323. package/dist/searchcraft-javascript-sdk/p-1f3ae7f3.entry.js +0 -2
  324. package/dist/searchcraft-javascript-sdk/p-1f3ae7f3.entry.js.map +0 -1
  325. package/dist/searchcraft-javascript-sdk/p-201cb2dc.entry.js +0 -2
  326. package/dist/searchcraft-javascript-sdk/p-201cb2dc.entry.js.map +0 -1
  327. package/dist/searchcraft-javascript-sdk/p-2c220368.entry.js +0 -2
  328. package/dist/searchcraft-javascript-sdk/p-2c220368.entry.js.map +0 -1
  329. package/dist/searchcraft-javascript-sdk/p-39c0ca33.entry.js +0 -2
  330. package/dist/searchcraft-javascript-sdk/p-39c0ca33.entry.js.map +0 -1
  331. package/dist/searchcraft-javascript-sdk/p-476829a4.entry.js +0 -2
  332. package/dist/searchcraft-javascript-sdk/p-476829a4.entry.js.map +0 -1
  333. package/dist/searchcraft-javascript-sdk/p-b0c1fd63.js +0 -2
  334. package/dist/searchcraft-javascript-sdk/p-b42eaa55.js +0 -3
  335. package/dist/searchcraft-javascript-sdk/p-b42eaa55.js.map +0 -1
  336. package/dist/searchcraft-javascript-sdk/p-d5f8dda2.js +0 -11
  337. package/dist/searchcraft-javascript-sdk/p-d5f8dda2.js.map +0 -1
  338. package/dist/types/components/searchcraft-clear-input-button/searchcraft-clear-input-button.d.ts +0 -10
  339. package/dist/types/components/searchcraft-filters-list/searchcraft-filters-list.d.ts +0 -34
  340. package/dist/types/components/searchcraft-input-caption/searchcraft-input-caption.d.ts +0 -9
  341. package/dist/types/components/searchcraft-input-icon/searchcraft-input-icon.d.ts +0 -9
  342. package/readme.md +0 -11
  343. /package/dist/searchcraft-javascript-sdk/{p-b0c1fd63.js.map → p-4c89f065.js.map} +0 -0
  344. /package/dist/searchcraft-javascript-sdk/{p-99356c9a.entry.js.map → p-e8a96dca.entry.js.map} +0 -0
@@ -1,18 +1,12 @@
1
- import { p as proxyCustomElement, H, c as createEvent, h } from './p-6b353c3e.js';
2
- import { c as classNames } from './p-5cdc6210.js';
3
- import { u as useSearchcraftStore, i as ie } from './p-727bfc38.js';
4
- import { p as parseCustomStyles } from './p-62c40862.js';
5
- import { p as packageJson } from './p-b0c1fd63.js';
6
- import { d as defineCustomElement$9 } from './p-62e6b69c.js';
7
- import { d as defineCustomElement$8 } from './p-8524c749.js';
8
- import { d as defineCustomElement$7 } from './p-5015a359.js';
9
- import { d as defineCustomElement$6 } from './p-54848b4d.js';
10
- import { d as defineCustomElement$5 } from './p-69ee3b9a.js';
11
- import { d as defineCustomElement$4 } from './p-4f939ba2.js';
12
- import { d as defineCustomElement$3 } from './p-b38d171d.js';
13
- import { d as defineCustomElement$2 } from './p-5a872bdf.js';
1
+ import { p as proxyCustomElement, H, c as createEvent, h } from './p-5639be85.js';
2
+ import { u as useSearchcraftStore, i as ie } from './p-3c181808.js';
3
+ import { p as parseCustomStyles } from './p-9982883f.js';
4
+ import { p as packageJson } from './p-4c89f065.js';
5
+ import { d as defineCustomElement$4 } from './p-ace4e6a0.js';
6
+ import { d as defineCustomElement$3 } from './p-4fad3388.js';
7
+ import { d as defineCustomElement$2 } from './p-c8bc1e4f.js';
14
8
 
15
- const searchcraftAutoSearchFormModuleCss = ":root{--font-stack:Helvetica, Arial, sans-serif}.formLTR{font-family:var(--font-stack);text-align:left;width:100%}.formRTL{font-family:var(--font-stack);text-align:right;width:100%}";
9
+ const searchcraftAutoSearchFormModuleCss = ":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-auto-search-form{display:flex;flex-direction:column;gap:4px}";
16
10
  const SearchcraftAutoSearchFormStyle0 = searchcraftAutoSearchFormModuleCss;
17
11
 
18
12
  const SearchcraftAutoSearchForm$1 = /*@__PURE__*/ proxyCustomElement(class SearchcraftAutoSearchForm extends H {
@@ -25,35 +19,35 @@ const SearchcraftAutoSearchForm$1 = /*@__PURE__*/ proxyCustomElement(class Searc
25
19
  this.debounceDelay = 0;
26
20
  this.searchStore = useSearchcraftStore.getState();
27
21
  this.handleInputChange = (event) => {
28
- this.query = event.detail;
29
- this.searchStore.setQuery(this.query);
30
- if (this.query.trim() === '') {
31
- this.searchResults = null;
32
- this.inputClearedOrNoResults.emit();
33
- this.searchStore.setSearchResults(null);
34
- }
35
- };
36
- this.handleInputKeyUp = (event) => {
37
22
  const target = event.detail;
38
23
  if (target === this.query) {
39
24
  return;
40
25
  }
41
26
  this.query = target;
42
- if (this.debounceTimeout) {
43
- clearTimeout(this.debounceTimeout);
44
- }
45
- this.debounceTimeout = setTimeout(() => {
27
+ const performSearchActions = () => {
46
28
  if (this.query.trim() === '') {
29
+ this.searchStore.setQuery('');
47
30
  this.searchResults = null;
48
31
  this.searchStore.setSearchResults(null);
49
32
  this.inputClearedOrNoResults.emit();
50
33
  }
51
34
  else {
52
35
  this.searchStore.setQuery(this.query);
53
- this.querySubmit.emit(this.query);
36
+ this.querySubmit.emit();
54
37
  this.runSearch();
55
38
  }
56
- }, this.debounceDelay);
39
+ };
40
+ // Only set a timeout if debounceDelay > 0
41
+ if (this.debounceDelay > 0) {
42
+ if (this.debounceTimeout) {
43
+ clearTimeout(this.debounceTimeout);
44
+ }
45
+ this.debounceTimeout = setTimeout(performSearchActions, this.debounceDelay);
46
+ }
47
+ else {
48
+ // Otherwise just call search actions directly
49
+ performSearchActions();
50
+ }
57
51
  };
58
52
  this.handleClearInput = () => {
59
53
  if (this.query === '' && !this.searchResults) {
@@ -80,7 +74,6 @@ const SearchcraftAutoSearchForm$1 = /*@__PURE__*/ proxyCustomElement(class Searc
80
74
  else {
81
75
  this.error = false;
82
76
  this.searchStore.setQuery(this.query);
83
- this.searchStore.setSelectedFilters([]);
84
77
  try {
85
78
  await this.searchStore.search();
86
79
  }
@@ -96,47 +89,52 @@ const SearchcraftAutoSearchForm$1 = /*@__PURE__*/ proxyCustomElement(class Searc
96
89
  };
97
90
  this.autoSearchFormClass = '';
98
91
  this.clearInput = () => { };
99
- this.config = {
100
- readKey: '',
101
- endpointURL: '',
102
- index: [],
103
- organizationId: '',
104
- applicationId: '',
105
- };
92
+ this.config = undefined;
106
93
  this.customStylesForInput = {};
107
94
  this.inputCaptionValue = '';
108
- this.inputIconHeight = 20;
109
- this.inputIconWidth = 20;
110
95
  this.labelForInput = '';
111
96
  this.placeholderValue = 'Search here';
112
- this.rightToLeftOrientation = false;
113
97
  this.searchContainerClass = '';
114
98
  this.error = false;
115
99
  this.isRequesting = false;
116
100
  this.query = '';
117
101
  this.searchResults = null;
118
102
  }
103
+ init() {
104
+ var _a;
105
+ if (this.config) {
106
+ const searchcraft = new ie(this.config, {
107
+ sdkName: packageJson.name,
108
+ sdkVersion: packageJson.version,
109
+ });
110
+ this.searchStore.initialize(searchcraft, true);
111
+ (_a = this.unsubscribe) === null || _a === void 0 ? void 0 : _a.call(this);
112
+ this.unsubscribe = useSearchcraftStore.subscribe((state) => {
113
+ this.isRequesting = state.isRequesting;
114
+ this.searchResults = Object.assign({}, state.searchResults);
115
+ });
116
+ }
117
+ }
119
118
  componentDidLoad() {
120
- const searchcraft = new ie(this.config, {
121
- sdkName: packageJson.name,
122
- sdkVersion: packageJson.version,
123
- });
124
- this.searchStore.initialize(searchcraft, true);
125
- this.unsubscribe = useSearchcraftStore.subscribe((state) => {
126
- this.isRequesting = state.isRequesting;
127
- this.searchResults = Object.assign({}, state.searchResults);
128
- });
119
+ this.init();
120
+ }
121
+ onConfigChange() {
122
+ this.init();
129
123
  }
124
+ connectedCallback() { }
130
125
  disconnectedCallback() {
131
126
  if (this.unsubscribe) {
132
127
  this.unsubscribe();
133
128
  }
134
129
  }
135
130
  render() {
136
- const formClass = this.rightToLeftOrientation ? 'formRTL' : 'formLTR';
137
131
  const parsedCustomStyles = parseCustomStyles(this.customStylesForInput);
138
- return (h("form", { key: '3f8e9a36e827b3f1f8d591622a1c824e7ccc6f83', class: classNames(`${formClass}`, 'searchcraft-auto-search-form'), onSubmit: this.handleFormSubmit }, h("searchcraft-input-label", { key: 'daf9b6aab7185e045891a975ac70a3bf3b7ff75f', label: this.labelForInput }), h("searchcraft-input", { key: '655e92d562a73dcf9857f24075c65c6bbe2215f5', customStyles: parsedCustomStyles, "input-caption-value": this.inputCaptionValue, "input-icon-height": this.inputIconHeight, "input-icon-width": this.inputIconWidth, "is-requesting": this.isRequesting, onClearInput: this.handleClearInput, onInputKeyUp: this.handleInputKeyUp, onSearchInputChange: this.handleInputChange, "placeholder-value": this.placeholderValue, query: this.query, "right-to-left-orientation": this.rightToLeftOrientation }), this.error && (h("searchcraft-error-message", { key: '988624eb1ff71adde2a2e38ab8adb868a5a12469', errorMessage: 'Please enter a search query.' }))));
132
+ return (h("form", { key: '3c1069cbaf543e9b06616d7440eb784010a7b601', class: 'searchcraft-auto-search-form', onSubmit: this.handleFormSubmit }, h("searchcraft-input-label", { key: '7ba138f9335b59ee2205a22ef3a8af306db102d1', label: this.labelForInput }), h("searchcraft-input", { key: 'a7400629e259ea15cd58d5f2c87f1659c8d6addb', customStyles: parsedCustomStyles, "input-caption-value": this.inputCaptionValue, "is-requesting": this.isRequesting, onClearInput: this.handleClearInput, onInputChange: this.handleInputChange.bind(this), "placeholder-value": this.placeholderValue, query: this.query }), this.error && (h("searchcraft-error-message", { key: 'f304152c611d3e8849a9d24b07a9db3d5d71197f', errorMessage: 'Please enter a search query.' }))));
139
133
  }
134
+ get element() { return this; }
135
+ static get watchers() { return {
136
+ "config": ["onConfigChange"]
137
+ }; }
140
138
  static get style() { return SearchcraftAutoSearchFormStyle0; }
141
139
  }, [0, "searchcraft-auto-search-form", {
142
140
  "autoSearchFormClass": [1, "auto-search-form-class"],
@@ -144,64 +142,38 @@ const SearchcraftAutoSearchForm$1 = /*@__PURE__*/ proxyCustomElement(class Searc
144
142
  "config": [16],
145
143
  "customStylesForInput": [1, "custom-styles-for-input"],
146
144
  "inputCaptionValue": [1, "input-caption-value"],
147
- "inputIconHeight": [2, "input-icon-height"],
148
- "inputIconWidth": [2, "input-icon-width"],
149
145
  "labelForInput": [1, "label-for-input"],
150
146
  "placeholderValue": [1, "placeholder-value"],
151
- "rightToLeftOrientation": [4, "right-to-left-orientation"],
152
147
  "searchContainerClass": [1, "search-container-class"],
153
148
  "error": [32],
154
149
  "isRequesting": [32],
155
150
  "query": [32],
156
151
  "searchResults": [32]
152
+ }, undefined, {
153
+ "config": ["onConfigChange"]
157
154
  }]);
158
155
  function defineCustomElement$1() {
159
156
  if (typeof customElements === "undefined") {
160
157
  return;
161
158
  }
162
- const components = ["searchcraft-auto-search-form", "searchcraft-clear-icon-set", "searchcraft-clear-input-button", "searchcraft-error-message", "searchcraft-input", "searchcraft-input-caption", "searchcraft-input-icon", "searchcraft-input-label", "searchcraft-search-icon-set"];
159
+ const components = ["searchcraft-auto-search-form", "searchcraft-error-message", "searchcraft-input", "searchcraft-input-label"];
163
160
  components.forEach(tagName => { switch (tagName) {
164
161
  case "searchcraft-auto-search-form":
165
162
  if (!customElements.get(tagName)) {
166
163
  customElements.define(tagName, SearchcraftAutoSearchForm$1);
167
164
  }
168
165
  break;
169
- case "searchcraft-clear-icon-set":
170
- if (!customElements.get(tagName)) {
171
- defineCustomElement$9();
172
- }
173
- break;
174
- case "searchcraft-clear-input-button":
175
- if (!customElements.get(tagName)) {
176
- defineCustomElement$8();
177
- }
178
- break;
179
166
  case "searchcraft-error-message":
180
- if (!customElements.get(tagName)) {
181
- defineCustomElement$7();
182
- }
183
- break;
184
- case "searchcraft-input":
185
- if (!customElements.get(tagName)) {
186
- defineCustomElement$6();
187
- }
188
- break;
189
- case "searchcraft-input-caption":
190
- if (!customElements.get(tagName)) {
191
- defineCustomElement$5();
192
- }
193
- break;
194
- case "searchcraft-input-icon":
195
167
  if (!customElements.get(tagName)) {
196
168
  defineCustomElement$4();
197
169
  }
198
170
  break;
199
- case "searchcraft-input-label":
171
+ case "searchcraft-input":
200
172
  if (!customElements.get(tagName)) {
201
173
  defineCustomElement$3();
202
174
  }
203
175
  break;
204
- case "searchcraft-search-icon-set":
176
+ case "searchcraft-input-label":
205
177
  if (!customElements.get(tagName)) {
206
178
  defineCustomElement$2();
207
179
  }
@@ -1 +1 @@
1
- {"file":"searchcraft-auto-search-form.js","mappings":"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","names":["SearchcraftAutoSearchForm","SearchcraftCore"],"sources":["src/components/searchcraft-auto-search-form/searchcraft-auto-search-form.module.scss?tag=searchcraft-auto-search-form","src/components/searchcraft-auto-search-form/searchcraft-auto-search-form.tsx"],"sourcesContent":[":root {\n --font-stack: Helvetica, Arial, sans-serif;\n}\n\n.formLTR {\n font-family: var(--font-stack);\n text-align: left;\n width: 100%;\n}\n\n.formRTL {\n font-family: var(--font-stack);\n text-align: right;\n width: 100%;\n}","import {\n Component,\n Prop,\n State,\n Event,\n type EventEmitter,\n h,\n} from '@stencil/core';\nimport classNames from 'classnames';\n\nimport {\n type SearchcraftConfig,\n SearchcraftCore,\n type SearchcraftResponse,\n} from '@searchcraft/core';\n\nimport { useSearchcraftStore } from '@provider/store';\nimport { parseCustomStyles } from '@utils/utils';\nimport type { ScInputCustomEvent } from '@components/searchcraft-input/searchcraft-input';\n\nimport packageJson from '../../../package.json';\n\n@Component({\n tag: 'searchcraft-auto-search-form',\n styleUrl: 'searchcraft-auto-search-form.module.scss',\n shadow: false,\n})\nexport class SearchcraftAutoSearchForm {\n @Prop() autoSearchFormClass = '';\n @Prop() clearInput: () => void = () => {};\n @Prop() config: SearchcraftConfig = {\n readKey: '',\n endpointURL: '',\n index: [],\n organizationId: '',\n applicationId: '',\n };\n @Prop() customStylesForInput: string | Record<string, string> = {};\n @Prop() inputCaptionValue = '';\n @Prop() inputIconHeight = 20;\n @Prop() inputIconWidth = 20;\n @Prop() labelForInput = '';\n @Prop() placeholderValue = 'Search here';\n @Prop() rightToLeftOrientation = false;\n @Prop() searchContainerClass = '';\n\n @Event() inputClearedOrNoResults: EventEmitter<void>;\n @Event() querySubmit: EventEmitter<string>;\n\n @State() error = false;\n @State() isRequesting = false;\n @State() query = '';\n @State() searchResults: SearchcraftResponse | null = null;\n\n private debounceTimeout: ReturnType<typeof setTimeout> | null = null;\n private debounceDelay = 0;\n private searchStore = useSearchcraftStore.getState();\n unsubscribe: () => void;\n\n componentDidLoad() {\n const searchcraft = new SearchcraftCore(this.config, {\n sdkName: packageJson.name,\n sdkVersion: packageJson.version,\n });\n this.searchStore.initialize(searchcraft, true);\n\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n this.isRequesting = state.isRequesting;\n this.searchResults = { ...state.searchResults };\n });\n }\n\n disconnectedCallback() {\n if (this.unsubscribe) {\n this.unsubscribe();\n }\n }\n\n handleInputChange = (event: ScInputCustomEvent<string>) => {\n this.query = event.detail;\n this.searchStore.setQuery(this.query);\n if (this.query.trim() === '') {\n this.searchResults = null;\n this.inputClearedOrNoResults.emit();\n this.searchStore.setSearchResults(null);\n }\n };\n\n handleInputKeyUp = (event: ScInputCustomEvent<string>) => {\n const target = event.detail;\n if (target === this.query) {\n return;\n }\n this.query = target;\n\n if (this.debounceTimeout) {\n clearTimeout(this.debounceTimeout);\n }\n\n this.debounceTimeout = setTimeout(() => {\n if (this.query.trim() === '') {\n this.searchResults = null;\n this.searchStore.setSearchResults(null);\n this.inputClearedOrNoResults.emit();\n } else {\n this.searchStore.setQuery(this.query);\n this.querySubmit.emit(this.query);\n this.runSearch();\n }\n }, this.debounceDelay);\n };\n\n handleClearInput = () => {\n if (this.query === '' && !this.searchResults) {\n return;\n }\n this.query = '';\n this.searchResults = null;\n this.searchStore.setQuery('');\n this.searchStore.setSearchResults(null);\n\n if (typeof this.clearInput === 'function') {\n this.clearInput();\n }\n\n if (this.debounceTimeout) {\n clearTimeout(this.debounceTimeout);\n }\n\n this.error = false;\n this.inputClearedOrNoResults.emit();\n };\n\n private runSearch = async () => {\n if (this.query.trim() === '') {\n this.error = true;\n this.inputClearedOrNoResults.emit();\n } else {\n this.error = false;\n this.searchStore.setQuery(this.query);\n this.searchStore.setSelectedFilters([]);\n\n try {\n await this.searchStore.search();\n } catch (error) {\n this.error = true;\n this.inputClearedOrNoResults.emit();\n }\n }\n };\n\n handleFormSubmit = async (event: Event) => {\n event.preventDefault();\n await this.runSearch();\n };\n\n render() {\n const formClass = this.rightToLeftOrientation ? 'formRTL' : 'formLTR';\n const parsedCustomStyles = parseCustomStyles(this.customStylesForInput);\n return (\n <form\n class={classNames(`${formClass}`, 'searchcraft-auto-search-form')}\n onSubmit={this.handleFormSubmit}\n >\n <searchcraft-input-label label={this.labelForInput} />\n <searchcraft-input\n customStyles={parsedCustomStyles}\n input-caption-value={this.inputCaptionValue}\n input-icon-height={this.inputIconHeight}\n input-icon-width={this.inputIconWidth}\n is-requesting={this.isRequesting}\n onClearInput={this.handleClearInput}\n onInputKeyUp={this.handleInputKeyUp}\n onSearchInputChange={this.handleInputChange}\n placeholder-value={this.placeholderValue}\n query={this.query}\n right-to-left-orientation={this.rightToLeftOrientation}\n />\n {this.error && (\n <searchcraft-error-message errorMessage='Please enter a search query.' />\n )}\n </form>\n );\n }\n}\n"],"version":3}
1
+ {"file":"searchcraft-auto-search-form.js","mappings":"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","names":["SearchcraftAutoSearchForm","SearchcraftCore"],"sources":["src/components/searchcraft-auto-search-form/searchcraft-auto-search-form.module.scss?tag=searchcraft-auto-search-form","src/components/searchcraft-auto-search-form/searchcraft-auto-search-form.tsx"],"sourcesContent":[".searchcraft-auto-search-form {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n","import {\n Component,\n Prop,\n State,\n Event,\n type EventEmitter,\n h,\n Element,\n Watch,\n} from '@stencil/core';\n\nimport {\n type SearchcraftConfig,\n SearchcraftCore,\n type SearchcraftResponse,\n} from '@searchcraft/core';\n\nimport { useSearchcraftStore } from '@provider/store';\nimport { parseCustomStyles } from '@utils/utils';\nimport type { ScInputCustomEvent } from '@components/searchcraft-input/searchcraft-input';\n\nimport packageJson from '../../../package.json';\n\n@Component({\n tag: 'searchcraft-auto-search-form',\n styleUrl: 'searchcraft-auto-search-form.module.scss',\n shadow: false,\n})\nexport class SearchcraftAutoSearchForm {\n @Prop() autoSearchFormClass = '';\n @Prop() clearInput: () => void = () => {};\n @Prop() config: SearchcraftConfig | undefined;\n @Prop() customStylesForInput: string | Record<string, string> = {};\n @Prop() inputCaptionValue = '';\n @Prop() labelForInput = '';\n @Prop() placeholderValue = 'Search here';\n @Prop() searchContainerClass = '';\n\n @Event() inputClearedOrNoResults: EventEmitter<void>;\n @Event() querySubmit: EventEmitter<string>;\n\n @State() error = false;\n @State() isRequesting = false;\n @State() query = '';\n @State() searchResults: SearchcraftResponse | null = null;\n\n @Element() element: HTMLElement;\n\n private debounceTimeout: ReturnType<typeof setTimeout> | null = null;\n private debounceDelay = 0;\n private searchStore = useSearchcraftStore.getState();\n unsubscribe: () => void;\n\n init() {\n if (this.config) {\n const searchcraft = new SearchcraftCore(this.config, {\n sdkName: packageJson.name,\n sdkVersion: packageJson.version,\n });\n this.searchStore.initialize(searchcraft, true);\n\n this.unsubscribe?.();\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n this.isRequesting = state.isRequesting;\n this.searchResults = { ...state.searchResults };\n });\n }\n }\n\n componentDidLoad() {\n this.init();\n }\n\n @Watch('config')\n onConfigChange() {\n this.init();\n }\n\n connectedCallback() {}\n\n disconnectedCallback() {\n if (this.unsubscribe) {\n this.unsubscribe();\n }\n }\n\n handleInputChange = (event: ScInputCustomEvent<string>) => {\n const target = event.detail;\n if (target === this.query) {\n return;\n }\n this.query = target;\n\n const performSearchActions = () => {\n if (this.query.trim() === '') {\n this.searchStore.setQuery('');\n this.searchResults = null;\n this.searchStore.setSearchResults(null);\n this.inputClearedOrNoResults.emit();\n } else {\n this.searchStore.setQuery(this.query);\n this.querySubmit.emit();\n this.runSearch();\n }\n };\n\n // Only set a timeout if debounceDelay > 0\n if (this.debounceDelay > 0) {\n if (this.debounceTimeout) {\n clearTimeout(this.debounceTimeout);\n }\n this.debounceTimeout = setTimeout(\n performSearchActions,\n this.debounceDelay,\n );\n } else {\n // Otherwise just call search actions directly\n performSearchActions();\n }\n };\n\n handleClearInput = () => {\n if (this.query === '' && !this.searchResults) {\n return;\n }\n this.query = '';\n this.searchResults = null;\n this.searchStore.setQuery('');\n this.searchStore.setSearchResults(null);\n\n if (typeof this.clearInput === 'function') {\n this.clearInput();\n }\n\n if (this.debounceTimeout) {\n clearTimeout(this.debounceTimeout);\n }\n\n this.error = false;\n this.inputClearedOrNoResults.emit();\n };\n\n private runSearch = async () => {\n if (this.query.trim() === '') {\n this.error = true;\n this.inputClearedOrNoResults.emit();\n } else {\n this.error = false;\n this.searchStore.setQuery(this.query);\n\n try {\n await this.searchStore.search();\n } catch (error) {\n this.error = true;\n this.inputClearedOrNoResults.emit();\n }\n }\n };\n\n handleFormSubmit = async (event: Event) => {\n event.preventDefault();\n await this.runSearch();\n };\n\n render() {\n const parsedCustomStyles = parseCustomStyles(this.customStylesForInput);\n return (\n <form\n class='searchcraft-auto-search-form'\n onSubmit={this.handleFormSubmit}\n >\n <searchcraft-input-label label={this.labelForInput} />\n <searchcraft-input\n customStyles={parsedCustomStyles}\n input-caption-value={this.inputCaptionValue}\n is-requesting={this.isRequesting}\n onClearInput={this.handleClearInput}\n onInputChange={this.handleInputChange.bind(this)}\n placeholder-value={this.placeholderValue}\n query={this.query}\n />\n {this.error && (\n <searchcraft-error-message errorMessage='Please enter a search query.' />\n )}\n </form>\n );\n }\n}\n"],"version":3}
@@ -1,19 +1,13 @@
1
- import { p as proxyCustomElement, H, c as createEvent, h } from './p-6b353c3e.js';
2
- import { c as classNames } from './p-5cdc6210.js';
3
- import { u as useSearchcraftStore, a as useThemeStore, i as ie } from './p-727bfc38.js';
4
- import { p as packageJson } from './p-b0c1fd63.js';
5
- import { d as defineCustomElement$b } from './p-7d385ffb.js';
6
- import { d as defineCustomElement$a } from './p-62e6b69c.js';
7
- import { d as defineCustomElement$9 } from './p-8524c749.js';
8
- import { d as defineCustomElement$8 } from './p-5015a359.js';
9
- import { d as defineCustomElement$7 } from './p-54848b4d.js';
10
- import { d as defineCustomElement$6 } from './p-69ee3b9a.js';
11
- import { d as defineCustomElement$5 } from './p-4f939ba2.js';
12
- import { d as defineCustomElement$4 } from './p-b38d171d.js';
13
- import { d as defineCustomElement$3 } from './p-5a872bdf.js';
14
- import { d as defineCustomElement$2 } from './p-7c280820.js';
1
+ import { p as proxyCustomElement, H, c as createEvent, h } from './p-5639be85.js';
2
+ import { u as useSearchcraftStore, a as useThemeStore, i as ie } from './p-3c181808.js';
3
+ import { p as packageJson } from './p-4c89f065.js';
4
+ import { d as defineCustomElement$6 } from './p-37f54c0b.js';
5
+ import { d as defineCustomElement$5 } from './p-ace4e6a0.js';
6
+ import { d as defineCustomElement$4 } from './p-4fad3388.js';
7
+ import { d as defineCustomElement$3 } from './p-c8bc1e4f.js';
8
+ import { d as defineCustomElement$2 } from './p-9f2b8375.js';
15
9
 
16
- const searchcraftBaseSearchFormModuleCss = ":root{--font-stack:Helvetica, Arial, sans-serif}.formLTR{font-family:var(--font-stack);text-align:left}.formRTL{font-family:var(--font-stack);text-align:right}.searchContainer{align-items:center;display:flex}";
10
+ const searchcraftBaseSearchFormModuleCss = ":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-base-search-form-input-container{align-items:center;display:flex;gap:8px}";
17
11
  const SearchcraftBaseSearchFormStyle0 = searchcraftBaseSearchFormModuleCss;
18
12
 
19
13
  const SearchcraftBaseSearchForm$1 = /*@__PURE__*/ proxyCustomElement(class SearchcraftBaseSearchForm extends H {
@@ -57,26 +51,25 @@ const SearchcraftBaseSearchForm$1 = /*@__PURE__*/ proxyCustomElement(class Searc
57
51
  readKey: '',
58
52
  endpointURL: '',
59
53
  index: [],
60
- organizationId: '',
61
- applicationId: '',
62
54
  };
63
55
  this.errorMessage = 'Search was unsuccessful';
64
- this.labelForInput = 'Search';
65
- this.rightToLeftOrientation = false;
56
+ this.inputLabel = 'Search';
57
+ this.buttonLabel = 'Find';
58
+ this.buttonPlacement = 'right';
66
59
  this.error = false;
67
60
  this.query = '';
68
61
  this.searchResults = null;
69
62
  }
70
63
  render() {
71
- const formClass = this.rightToLeftOrientation ? 'formRTL' : 'formLTR';
72
- return (h("form", { key: '7a0640c6646a1eefda23ceb1623a72b457be648a', class: classNames(`${formClass}`, 'searchcraft-base-search-form'), onSubmit: this.handleFormSubmit }, h("searchcraft-input-label", { key: '33d98e7db9af81170cb693b1f89a38da0a8234e7', label: this.labelForInput }), h("div", { key: '8764b5abbc5008d46bdd8b60b95558252ad6999c', class: classNames('searchContainer', 'searchcraft-base-search-form-input-container') }, this.rightToLeftOrientation && h("searchcraft-button", { key: 'c2a008f5da3bae24bd7417245c4e0df0aa73fd7c' }), h("searchcraft-input", { key: 'dad6c9c1e37ff05a8f032ad3f63ddb1ec234d2e5', onClearInput: this.handleClearInput, onSearchInputChange: this.handleSearchInputChange, query: this.query, rightToLeftOrientation: this.rightToLeftOrientation }), !this.rightToLeftOrientation && (h("searchcraft-button", { key: '2f2a75da81103e3435cbf3337daf605010167339', onButtonClick: this.handleFormSubmit }))), this.error && (h("searchcraft-error-message", { key: '8477fb8f5c3662587e318d8d7c9e1bbd3b7d86a5', errorMessage: this.errorMessage }))));
64
+ return (h("form", { key: '3200182783a9612326e4350beda3e0facc3abd83', class: 'searchcraft-base-search-form', onSubmit: this.handleFormSubmit }, h("searchcraft-input-label", { key: '51fbd74cab7f82435b21edcee9855fe570199d5a', label: this.inputLabel }), h("div", { key: '245a6e8fd2abf14f379e8dee9a2012a7a0fa7636', class: 'searchcraft-base-search-form-input-container' }, this.buttonPlacement === 'left' && (h("searchcraft-button", { key: '53b09c93f5ebaf548b6954923eaa5eb0e8c6ba18', onButtonClick: this.handleFormSubmit, label: this.buttonLabel })), h("searchcraft-input", { key: 'b8154b313b93cbd043bf141bdb505f8fc874428b', onClearInput: this.handleClearInput, onInputChange: this.handleSearchInputChange, query: this.query }), this.buttonPlacement === 'right' && (h("searchcraft-button", { key: '534fbb59f038a670f2a65293fa5dd6a9a3cba92d', onButtonClick: this.handleFormSubmit, label: this.buttonLabel }))), this.error && (h("searchcraft-error-message", { key: '8ed98aa322c4104346ac3dcb578133d8e2758866', errorMessage: this.errorMessage }))));
73
65
  }
74
66
  static get style() { return SearchcraftBaseSearchFormStyle0; }
75
67
  }, [0, "searchcraft-base-search-form", {
76
68
  "config": [16],
77
69
  "errorMessage": [1, "error-message"],
78
- "labelForInput": [1, "label-for-input"],
79
- "rightToLeftOrientation": [4, "right-to-left-orientation"],
70
+ "inputLabel": [1, "input-label"],
71
+ "buttonLabel": [1, "button-label"],
72
+ "buttonPlacement": [1, "button-placement"],
80
73
  "error": [32],
81
74
  "query": [32],
82
75
  "searchResults": [32]
@@ -85,7 +78,7 @@ function defineCustomElement$1() {
85
78
  if (typeof customElements === "undefined") {
86
79
  return;
87
80
  }
88
- const components = ["searchcraft-base-search-form", "searchcraft-button", "searchcraft-clear-icon-set", "searchcraft-clear-input-button", "searchcraft-error-message", "searchcraft-input", "searchcraft-input-caption", "searchcraft-input-icon", "searchcraft-input-label", "searchcraft-search-icon-set", "searchcraft-spinner-dark"];
81
+ const components = ["searchcraft-base-search-form", "searchcraft-button", "searchcraft-error-message", "searchcraft-input", "searchcraft-input-label", "searchcraft-spinner-dark"];
89
82
  components.forEach(tagName => { switch (tagName) {
90
83
  case "searchcraft-base-search-form":
91
84
  if (!customElements.get(tagName)) {
@@ -93,46 +86,21 @@ function defineCustomElement$1() {
93
86
  }
94
87
  break;
95
88
  case "searchcraft-button":
96
- if (!customElements.get(tagName)) {
97
- defineCustomElement$b();
98
- }
99
- break;
100
- case "searchcraft-clear-icon-set":
101
- if (!customElements.get(tagName)) {
102
- defineCustomElement$a();
103
- }
104
- break;
105
- case "searchcraft-clear-input-button":
106
- if (!customElements.get(tagName)) {
107
- defineCustomElement$9();
108
- }
109
- break;
110
- case "searchcraft-error-message":
111
- if (!customElements.get(tagName)) {
112
- defineCustomElement$8();
113
- }
114
- break;
115
- case "searchcraft-input":
116
- if (!customElements.get(tagName)) {
117
- defineCustomElement$7();
118
- }
119
- break;
120
- case "searchcraft-input-caption":
121
89
  if (!customElements.get(tagName)) {
122
90
  defineCustomElement$6();
123
91
  }
124
92
  break;
125
- case "searchcraft-input-icon":
93
+ case "searchcraft-error-message":
126
94
  if (!customElements.get(tagName)) {
127
95
  defineCustomElement$5();
128
96
  }
129
97
  break;
130
- case "searchcraft-input-label":
98
+ case "searchcraft-input":
131
99
  if (!customElements.get(tagName)) {
132
100
  defineCustomElement$4();
133
101
  }
134
102
  break;
135
- case "searchcraft-search-icon-set":
103
+ case "searchcraft-input-label":
136
104
  if (!customElements.get(tagName)) {
137
105
  defineCustomElement$3();
138
106
  }
@@ -1 +1 @@
1
- {"file":"searchcraft-base-search-form.js","mappings":";;;;;;;;;;;;;;;AAAA,MAAM,kCAAkC,GAAG,kNAAkN,CAAC;AAC9P,wCAAe,kCAAkC;;MCepCA,2BAAyB;;;;;QAY3B,eAAU,GAAG,SAAQ,CAAC;QAMvB,gBAAW,GAAG,mBAAmB,CAAC,QAAQ,EAAE,CAAC;QAC7C,eAAU,GAAG,aAAa,CAAC,QAAQ,EAAE,CAAC;QAE9C,qBAAgB,GAAG;YACjB,MAAM,WAAW,GAAG,IAAIC,EAAe,CAAC,IAAI,CAAC,MAAM,EAAE;gBACnD,OAAO,EAAE,WAAW,CAAC,IAAI;gBACzB,UAAU,EAAE,WAAW,CAAC,OAAO;aAChC,CAAC,CAAC;YACH,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;SAChD,CAAC;QAEF,qBAAgB,GAAG,OAAO,KAAK;YAC7B,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gBAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;aACnB;iBAAM;gBACL,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACtC,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;gBAChC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;aACrE;SACF,CAAC;QAEF,4BAAuB,GAAG,CAAC,KAAiC;YAC1D,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;SAC3B,CAAC;QAEF,qBAAgB,GAAG;YACjB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YAChB,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,EAAE,CAAC;SACpB,CAAC;QAEF,gBAAW,GAAG;YACZ,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;SAC/B,CAAC;sBAnDkC;YAClC,OAAO,EAAE,EAAE;YACX,WAAW,EAAE,EAAE;YACf,KAAK,EAAE,EAAE;YACT,cAAc,EAAE,EAAE;YAClB,aAAa,EAAE,EAAE;SAClB;4BACsB,yBAAyB;6BACxB,QAAQ;sCACC,KAAK;qBAIrB,KAAK;qBACL,EAAE;6BACqB,IAAI;;IAsC5C,MAAM;QACJ,MAAM,SAAS,GAAG,IAAI,CAAC,sBAAsB,GAAG,SAAS,GAAG,SAAS,CAAC;QACtE,QACE,6DACE,KAAK,EAAE,UAAU,CAAC,GAAG,SAAS,EAAE,EAAE,8BAA8B,CAAC,EACjE,QAAQ,EAAE,IAAI,CAAC,gBAAgB,IAE/B,gFAAyB,KAAK,EAAE,IAAI,CAAC,aAAa,GAAI,EACtD,4DACE,KAAK,EAAE,UAAU,CACf,iBAAiB,EACjB,8CAA8C,CAC/C,IAEA,IAAI,CAAC,sBAAsB,IAAI,4EAAsB,EACtD,0EACE,YAAY,EAAE,IAAI,CAAC,gBAAgB,EACnC,mBAAmB,EAAE,IAAI,CAAC,uBAAuB,EACjD,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,GACnD,EACD,CAAC,IAAI,CAAC,sBAAsB,KAC3B,2EAAoB,aAAa,EAAE,IAAI,CAAC,gBAAgB,GAAI,CAC7D,CACG,EACL,IAAI,CAAC,KAAK,KACT,kFAA2B,YAAY,EAAE,IAAI,CAAC,YAAY,GAAI,CAC/D,CACI,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["SearchcraftBaseSearchForm","SearchcraftCore"],"sources":["src/components/searchcraft-base-search-form/searchcraft-base-search-form.module.scss?tag=searchcraft-base-search-form","src/components/searchcraft-base-search-form/searchcraft-base-search-form.tsx"],"sourcesContent":[":root {\n --font-stack: Helvetica, Arial, sans-serif;\n}\n\n.formLTR {\n font-family: var(--font-stack);\n text-align: left;\n}\n\n.formRTL {\n font-family: var(--font-stack);\n text-align: right;\n}\n\n.searchContainer {\n align-items: center;\n display: flex;\n}","import { Component, h, Event, Prop, State } from '@stencil/core';\nimport classNames from 'classnames';\n\nimport { type SearchcraftConfig, SearchcraftCore } from '@searchcraft/core';\n\nimport { useSearchcraftStore, useThemeStore } from '@provider/store';\n\nimport type { ScInputCustomEvent } from '@components/searchcraft-input/searchcraft-input';\n\nimport packageJson from '../../../package.json';\n\n@Component({\n tag: 'searchcraft-base-search-form',\n styleUrl: 'searchcraft-base-search-form.module.scss',\n shadow: false,\n})\nexport class SearchcraftBaseSearchForm {\n @Prop() config: SearchcraftConfig = {\n readKey: '',\n endpointURL: '',\n index: [],\n organizationId: '',\n applicationId: '',\n };\n @Prop() errorMessage = 'Search was unsuccessful';\n @Prop() labelForInput = 'Search';\n @Prop() rightToLeftOrientation = false;\n\n @Event() clearInput = () => {};\n\n @State() error = false;\n @State() query = '';\n @State() searchResults: string | null = null;\n\n private searchStore = useSearchcraftStore.getState();\n private themeStore = useThemeStore.getState();\n\n componentDidLoad = () => {\n const searchcraft = new SearchcraftCore(this.config, {\n sdkName: packageJson.name,\n sdkVersion: packageJson.version,\n });\n this.searchStore.initialize(searchcraft, true);\n };\n\n handleFormSubmit = async (event) => {\n event.preventDefault();\n if (this.query.trim() === '') {\n this.error = true;\n } else {\n this.error = false;\n this.searchStore.setQuery(this.query);\n await this.searchStore.search();\n this.searchResults = JSON.stringify(this.searchStore.searchResults);\n }\n };\n\n handleSearchInputChange = (event: ScInputCustomEvent<string>) => {\n this.query = event.detail;\n };\n\n handleClearInput = () => {\n this.query = '';\n this?.clearInput();\n };\n\n toggleTheme = () => {\n this.themeStore.toggleTheme();\n };\n\n render() {\n const formClass = this.rightToLeftOrientation ? 'formRTL' : 'formLTR';\n return (\n <form\n class={classNames(`${formClass}`, 'searchcraft-base-search-form')}\n onSubmit={this.handleFormSubmit}\n >\n <searchcraft-input-label label={this.labelForInput} />\n <div\n class={classNames(\n 'searchContainer',\n 'searchcraft-base-search-form-input-container',\n )}\n >\n {this.rightToLeftOrientation && <searchcraft-button />}\n <searchcraft-input\n onClearInput={this.handleClearInput}\n onSearchInputChange={this.handleSearchInputChange}\n query={this.query}\n rightToLeftOrientation={this.rightToLeftOrientation}\n />\n {!this.rightToLeftOrientation && (\n <searchcraft-button onButtonClick={this.handleFormSubmit} />\n )}\n </div>\n {this.error && (\n <searchcraft-error-message errorMessage={this.errorMessage} />\n )}\n </form>\n );\n }\n}\n"],"version":3}
1
+ {"file":"searchcraft-base-search-form.js","mappings":";;;;;;;;;AAAA,MAAM,kCAAkC,GAAG,inGAAinG,CAAC;AAC7pG,wCAAe,kCAAkC;;MCcpCA,2BAAyB;;;;;QAW3B,eAAU,GAAG,SAAQ,CAAC;QAMvB,gBAAW,GAAG,mBAAmB,CAAC,QAAQ,EAAE,CAAC;QAC7C,eAAU,GAAG,aAAa,CAAC,QAAQ,EAAE,CAAC;QAE9C,qBAAgB,GAAG;YACjB,MAAM,WAAW,GAAG,IAAIC,EAAe,CAAC,IAAI,CAAC,MAAM,EAAE;gBACnD,OAAO,EAAE,WAAW,CAAC,IAAI;gBACzB,UAAU,EAAE,WAAW,CAAC,OAAO;aAChC,CAAC,CAAC;YACH,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;SAChD,CAAC;QAEF,qBAAgB,GAAG,OAAO,KAAK;YAC7B,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gBAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;aACnB;iBAAM;gBACL,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACtC,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;gBAChC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;aACrE;SACF,CAAC;QAEF,4BAAuB,GAAG,CAAC,KAAiC;YAC1D,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;SAC3B,CAAC;QAEF,qBAAgB,GAAG;YACjB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YAChB,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,EAAE,CAAC;SACpB,CAAC;QAEF,gBAAW,GAAG;YACZ,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;SAC/B,CAAC;sBAlDkC;YAClC,OAAO,EAAE,EAAE;YACX,WAAW,EAAE,EAAE;YACf,KAAK,EAAE,EAAE;SACV;4BACsB,yBAAyB;0BAC3B,QAAQ;2BACP,MAAM;+BACgB,OAAO;qBAIlC,KAAK;qBACL,EAAE;6BACqB,IAAI;;IAsC5C,MAAM;QACJ,QACE,6DACE,KAAK,EAAC,8BAA8B,EACpC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,IAE/B,gFAAyB,KAAK,EAAE,IAAI,CAAC,UAAU,GAAI,EACnD,4DAAK,KAAK,EAAC,8CAA8C,IACtD,IAAI,CAAC,eAAe,KAAK,MAAM,KAC9B,2EACE,aAAa,EAAE,IAAI,CAAC,gBAAgB,EACpC,KAAK,EAAE,IAAI,CAAC,WAAW,GACvB,CACH,EACD,0EACE,YAAY,EAAE,IAAI,CAAC,gBAAgB,EACnC,aAAa,EAAE,IAAI,CAAC,uBAAuB,EAC3C,KAAK,EAAE,IAAI,CAAC,KAAK,GACjB,EACD,IAAI,CAAC,eAAe,KAAK,OAAO,KAC/B,2EACE,aAAa,EAAE,IAAI,CAAC,gBAAgB,EACpC,KAAK,EAAE,IAAI,CAAC,WAAW,GACvB,CACH,CACG,EACL,IAAI,CAAC,KAAK,KACT,kFAA2B,YAAY,EAAE,IAAI,CAAC,YAAY,GAAI,CAC/D,CACI,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["SearchcraftBaseSearchForm","SearchcraftCore"],"sources":["src/components/searchcraft-base-search-form/searchcraft-base-search-form.module.scss?tag=searchcraft-base-search-form","src/components/searchcraft-base-search-form/searchcraft-base-search-form.tsx"],"sourcesContent":[".searchcraft-base-search-form {\n\n}\n\n.searchcraft-base-search-form-input-container {\n align-items: center;\n display: flex;\n gap: 8px;\n}","import { Component, h, Event, Prop, State } from '@stencil/core';\n\nimport { type SearchcraftConfig, SearchcraftCore } from '@searchcraft/core';\n\nimport { useSearchcraftStore, useThemeStore } from '@provider/store';\n\nimport type { ScInputCustomEvent } from '@components/searchcraft-input/searchcraft-input';\n\nimport packageJson from '../../../package.json';\n\n@Component({\n tag: 'searchcraft-base-search-form',\n styleUrl: 'searchcraft-base-search-form.module.scss',\n shadow: false,\n})\nexport class SearchcraftBaseSearchForm {\n @Prop() config: SearchcraftConfig = {\n readKey: '',\n endpointURL: '',\n index: [],\n };\n @Prop() errorMessage = 'Search was unsuccessful';\n @Prop() inputLabel = 'Search';\n @Prop() buttonLabel = 'Find';\n @Prop() buttonPlacement: 'right' | 'left' = 'right';\n\n @Event() clearInput = () => {};\n\n @State() error = false;\n @State() query = '';\n @State() searchResults: string | null = null;\n\n private searchStore = useSearchcraftStore.getState();\n private themeStore = useThemeStore.getState();\n\n componentDidLoad = () => {\n const searchcraft = new SearchcraftCore(this.config, {\n sdkName: packageJson.name,\n sdkVersion: packageJson.version,\n });\n this.searchStore.initialize(searchcraft, true);\n };\n\n handleFormSubmit = async (event) => {\n event.preventDefault();\n if (this.query.trim() === '') {\n this.error = true;\n } else {\n this.error = false;\n this.searchStore.setQuery(this.query);\n await this.searchStore.search();\n this.searchResults = JSON.stringify(this.searchStore.searchResults);\n }\n };\n\n handleSearchInputChange = (event: ScInputCustomEvent<string>) => {\n this.query = event.detail;\n };\n\n handleClearInput = () => {\n this.query = '';\n this?.clearInput();\n };\n\n toggleTheme = () => {\n this.themeStore.toggleTheme();\n };\n\n render() {\n return (\n <form\n class='searchcraft-base-search-form'\n onSubmit={this.handleFormSubmit}\n >\n <searchcraft-input-label label={this.inputLabel} />\n <div class='searchcraft-base-search-form-input-container'>\n {this.buttonPlacement === 'left' && (\n <searchcraft-button\n onButtonClick={this.handleFormSubmit}\n label={this.buttonLabel}\n />\n )}\n <searchcraft-input\n onClearInput={this.handleClearInput}\n onInputChange={this.handleSearchInputChange}\n query={this.query}\n />\n {this.buttonPlacement === 'right' && (\n <searchcraft-button\n onButtonClick={this.handleFormSubmit}\n label={this.buttonLabel}\n />\n )}\n </div>\n {this.error && (\n <searchcraft-error-message errorMessage={this.errorMessage} />\n )}\n </form>\n );\n }\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
- import { S as SearchcraftBaseSearchResult$1, d as defineCustomElement$1 } from './p-cd9a038a.js';
1
+ import { S as SearchcraftBaseSearchResult$1, d as defineCustomElement$1 } from './p-415f7b11.js';
2
2
 
3
3
  const SearchcraftBaseSearchResult = SearchcraftBaseSearchResult$1;
4
4
  const defineCustomElement = defineCustomElement$1;