@searchcraft/javascript-sdk 0.2.3 → 0.2.4

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 (261) hide show
  1. package/dist/cjs/app-globals-3a1e7e63.js +7 -0
  2. package/dist/cjs/app-globals-3a1e7e63.js.map +1 -0
  3. package/dist/cjs/index-5b0b9d4c.js +84 -0
  4. package/dist/cjs/index-5b0b9d4c.js.map +1 -0
  5. package/dist/cjs/index-6c5282a0.js +1279 -0
  6. package/dist/cjs/index-6c5282a0.js.map +1 -0
  7. package/dist/cjs/index.cjs.js +17 -0
  8. package/dist/cjs/index.cjs.js.map +1 -0
  9. package/dist/cjs/loader.cjs.js +17 -0
  10. package/dist/cjs/loader.cjs.js.map +1 -0
  11. package/dist/cjs/searchcraft-auto-search-form_17.cjs.entry.js +789 -0
  12. package/dist/cjs/searchcraft-auto-search-form_17.cjs.entry.js.map +1 -0
  13. package/dist/cjs/searchcraft-base-search-form.cjs.entry.js +64 -0
  14. package/dist/cjs/searchcraft-base-search-form.cjs.entry.js.map +1 -0
  15. package/dist/cjs/searchcraft-button-icon.cjs.entry.js +18 -0
  16. package/dist/cjs/searchcraft-button-icon.cjs.entry.js.map +1 -0
  17. package/dist/cjs/searchcraft-button.cjs.entry.js +37 -0
  18. package/dist/cjs/searchcraft-button.cjs.entry.js.map +1 -0
  19. package/dist/cjs/searchcraft-javascript-sdk.cjs.js +27 -0
  20. package/dist/cjs/searchcraft-javascript-sdk.cjs.js.map +1 -0
  21. package/dist/cjs/store-b0a26894.js +313 -0
  22. package/dist/cjs/store-b0a26894.js.map +1 -0
  23. package/dist/{searchcraft-javascript-sdk/utils-6d98c145.js → cjs/utils-15f85bca.js} +10 -5
  24. package/dist/cjs/utils-15f85bca.js.map +1 -0
  25. package/dist/collection/assets/searchcraft-button-icons.js +9 -0
  26. package/dist/collection/assets/searchcraft-button-icons.js.map +1 -0
  27. package/dist/collection/assets/searchcraft-clear-icon-set.js +45 -0
  28. package/dist/collection/assets/searchcraft-clear-icon-set.js.map +1 -0
  29. package/dist/collection/assets/searchcraft-search-icon-set.js +84 -0
  30. package/dist/collection/assets/searchcraft-search-icon-set.js.map +1 -0
  31. package/dist/collection/collection-manifest.json +31 -0
  32. package/dist/collection/components/searchcraft-auto-search-form/searchcraft-auto-search-form.js +365 -0
  33. package/dist/collection/components/searchcraft-auto-search-form/searchcraft-auto-search-form.js.map +1 -0
  34. package/dist/collection/components/searchcraft-auto-search-form/searchcraft-auto-search-form.module.css +15 -0
  35. package/dist/collection/components/searchcraft-base-search-form/searchcraft-base-search-form.js +168 -0
  36. package/dist/collection/components/searchcraft-base-search-form/searchcraft-base-search-form.js.map +1 -0
  37. package/dist/collection/components/searchcraft-base-search-form/searchcraft-base-search-form.module.css +18 -0
  38. package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.js +308 -0
  39. package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.js.map +1 -0
  40. package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.module.css +216 -0
  41. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js +251 -0
  42. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js.map +1 -0
  43. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.module.css +47 -0
  44. package/dist/collection/components/searchcraft-button/searchcraft-button.js +137 -0
  45. package/dist/collection/components/searchcraft-button/searchcraft-button.js.map +1 -0
  46. package/dist/collection/components/searchcraft-button/searchcraft-button.module.css +82 -0
  47. package/dist/collection/components/searchcraft-clear-input-button/searchcraft-clear-input-button.js +95 -0
  48. package/dist/collection/components/searchcraft-clear-input-button/searchcraft-clear-input-button.js.map +1 -0
  49. package/dist/collection/components/searchcraft-clear-input-button/searchcraft-clear-input-button.module.css +33 -0
  50. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.js +64 -0
  51. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.js.map +1 -0
  52. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.module.css +21 -0
  53. package/dist/collection/components/searchcraft-filters-list/searchcraft-filters-list.js +155 -0
  54. package/dist/collection/components/searchcraft-filters-list/searchcraft-filters-list.js.map +1 -0
  55. package/dist/collection/components/searchcraft-filters-list/searchcraft-filters-list.module.css +70 -0
  56. package/dist/collection/components/searchcraft-input/searchcraft-input.js +352 -0
  57. package/dist/collection/components/searchcraft-input/searchcraft-input.js.map +1 -0
  58. package/dist/collection/components/searchcraft-input/searchcraft-input.module.css +241 -0
  59. package/dist/collection/components/searchcraft-input-caption/searchcraft-input-caption.js +122 -0
  60. package/dist/collection/components/searchcraft-input-caption/searchcraft-input-caption.js.map +1 -0
  61. package/dist/collection/components/searchcraft-input-caption/searchcraft-input-caption.module.css +79 -0
  62. package/dist/collection/components/searchcraft-input-icon/searchcraft-input-icon.js +109 -0
  63. package/dist/collection/components/searchcraft-input-icon/searchcraft-input-icon.js.map +1 -0
  64. package/dist/collection/components/searchcraft-input-icon/searchcraft-input-icon.module.css +17 -0
  65. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.js +76 -0
  66. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.js.map +1 -0
  67. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.module.css +21 -0
  68. package/dist/{searchcraft-javascript-sdk/searchcraft-results-info.entry.js → collection/components/searchcraft-results-info/searchcraft-results-info.js} +26 -15
  69. package/dist/collection/components/searchcraft-results-info/searchcraft-results-info.js.map +1 -0
  70. package/dist/collection/components/searchcraft-results-info/searchcraft-results-info.module.css +15 -0
  71. package/dist/collection/components/searchcraft-slider/searchcraft-slider.js +128 -0
  72. package/dist/collection/components/searchcraft-slider/searchcraft-slider.js.map +1 -0
  73. package/dist/collection/components/searchcraft-slider/searchcraft-slider.module.css +68 -0
  74. package/dist/collection/components/searchcraft-spinner-dark/searchcraft-spinner-dark.js +19 -0
  75. package/dist/collection/components/searchcraft-spinner-dark/searchcraft-spinner-dark.js.map +1 -0
  76. package/dist/collection/components/searchcraft-spinner-dark/searchcraft-spinner-dark.module.css +35 -0
  77. package/dist/collection/components/searchcraft-spinner-light/searchcraft-spinner-light.js +19 -0
  78. package/dist/collection/components/searchcraft-spinner-light/searchcraft-spinner-light.js.map +1 -0
  79. package/dist/collection/components/searchcraft-spinner-light/searchcraft-spinner-light.module.css +26 -0
  80. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.js +92 -0
  81. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.js.map +1 -0
  82. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.module.css +31 -0
  83. package/dist/collection/index.js +12 -0
  84. package/dist/collection/index.js.map +1 -0
  85. package/dist/collection/provider/store.js +95 -0
  86. package/dist/collection/provider/store.js.map +1 -0
  87. package/dist/collection/utils/utils.js +63 -0
  88. package/dist/collection/utils/utils.js.map +1 -0
  89. package/dist/components/index.js +58 -0
  90. package/dist/components/index.js.map +1 -0
  91. package/dist/{searchcraft-javascript-sdk/searchcraft-input.entry.js → components/p-1204b43a.js} +83 -12
  92. package/dist/components/p-1204b43a.js.map +1 -0
  93. package/dist/components/p-1c377190.js +67 -0
  94. package/dist/components/p-1c377190.js.map +1 -0
  95. package/dist/components/p-25f18f2e.js +33 -0
  96. package/dist/components/p-25f18f2e.js.map +1 -0
  97. package/dist/components/p-33bb5c45.js +309 -0
  98. package/dist/components/p-33bb5c45.js.map +1 -0
  99. package/dist/components/p-3fece4e2.js +33 -0
  100. package/dist/components/p-3fece4e2.js.map +1 -0
  101. package/dist/components/p-576f0d2b.js +61 -0
  102. package/dist/components/p-576f0d2b.js.map +1 -0
  103. package/dist/{searchcraft-javascript-sdk/index-d6567b9c.js → components/p-5cdc6210.js} +2 -10
  104. package/dist/components/p-5cdc6210.js.map +1 -0
  105. package/dist/{searchcraft-javascript-sdk/searchcraft-input-caption.entry.js → components/p-6237f03e.js} +31 -10
  106. package/dist/components/p-6237f03e.js.map +1 -0
  107. package/dist/{searchcraft-javascript-sdk/searchcraft-clear-icon-set.entry.js → components/p-70722ab2.js} +24 -7
  108. package/dist/components/p-70722ab2.js.map +1 -0
  109. package/dist/components/p-7498e493.js +1113 -0
  110. package/dist/components/p-7498e493.js.map +1 -0
  111. package/dist/components/p-848301b7.js +40 -0
  112. package/dist/components/p-848301b7.js.map +1 -0
  113. package/dist/components/p-8c38185e.js +53 -0
  114. package/dist/components/p-8c38185e.js.map +1 -0
  115. package/dist/{searchcraft-javascript-sdk/searchcraft-base-search-result.entry.js → components/p-8c70054a.js} +36 -8
  116. package/dist/components/p-8c70054a.js.map +1 -0
  117. package/dist/{searchcraft-javascript-sdk/searchcraft-search-icon-set.entry.js → components/p-a3bd1bc8.js} +26 -7
  118. package/dist/components/p-a3bd1bc8.js.map +1 -0
  119. package/dist/components/p-ae84b899.js +48 -0
  120. package/dist/components/p-ae84b899.js.map +1 -0
  121. package/dist/{searchcraft-javascript-sdk/utils-d88ac15c.js → components/p-ff6c3650.js} +2 -2
  122. package/dist/components/p-ff6c3650.js.map +1 -0
  123. package/dist/components/searchcraft-auto-search-form.js +207 -0
  124. package/dist/components/searchcraft-auto-search-form.js.map +1 -0
  125. package/dist/components/searchcraft-base-search-form.js +152 -0
  126. package/dist/components/searchcraft-base-search-form.js.map +1 -0
  127. package/dist/components/searchcraft-base-search-result.js +8 -0
  128. package/dist/components/searchcraft-base-search-result.js.map +1 -0
  129. package/dist/{searchcraft-javascript-sdk/searchcraft-base-search-results.entry.js → components/searchcraft-base-search-results.js} +52 -11
  130. package/dist/components/searchcraft-base-search-results.js.map +1 -0
  131. package/dist/components/searchcraft-button-icon.js +32 -0
  132. package/dist/components/searchcraft-button-icon.js.map +1 -0
  133. package/dist/components/searchcraft-button.js +8 -0
  134. package/dist/components/searchcraft-button.js.map +1 -0
  135. package/dist/components/searchcraft-clear-icon-set.js +8 -0
  136. package/dist/components/searchcraft-clear-icon-set.js.map +1 -0
  137. package/dist/components/searchcraft-clear-input-button.js +8 -0
  138. package/dist/components/searchcraft-clear-input-button.js.map +1 -0
  139. package/dist/components/searchcraft-error-message.js +8 -0
  140. package/dist/components/searchcraft-error-message.js.map +1 -0
  141. package/dist/{searchcraft-javascript-sdk/searchcraft-filters-list.entry.js → components/searchcraft-filters-list.js} +37 -10
  142. package/dist/components/searchcraft-filters-list.js.map +1 -0
  143. package/dist/components/searchcraft-input-caption.js +8 -0
  144. package/dist/components/searchcraft-input-caption.js.map +1 -0
  145. package/dist/components/searchcraft-input-icon.js +8 -0
  146. package/dist/components/searchcraft-input-icon.js.map +1 -0
  147. package/dist/components/searchcraft-input-label.js +8 -0
  148. package/dist/components/searchcraft-input-label.js.map +1 -0
  149. package/dist/components/searchcraft-input.js +8 -0
  150. package/dist/components/searchcraft-input.js.map +1 -0
  151. package/dist/components/searchcraft-results-info.js +63 -0
  152. package/dist/components/searchcraft-results-info.js.map +1 -0
  153. package/dist/components/searchcraft-search-icon-set.js +8 -0
  154. package/dist/components/searchcraft-search-icon-set.js.map +1 -0
  155. package/dist/{searchcraft-javascript-sdk/searchcraft-slider.entry.js → components/searchcraft-slider.js} +36 -10
  156. package/dist/components/searchcraft-slider.js.map +1 -0
  157. package/dist/components/searchcraft-spinner-dark.js +8 -0
  158. package/dist/components/searchcraft-spinner-dark.js.map +1 -0
  159. package/dist/components/searchcraft-spinner-light.js +8 -0
  160. package/dist/components/searchcraft-spinner-light.js.map +1 -0
  161. package/dist/{searchcraft-javascript-sdk/searchcraft-toggle-button.entry.js → components/searchcraft-toggle-button.js} +33 -10
  162. package/dist/components/searchcraft-toggle-button.js.map +1 -0
  163. package/dist/esm/index-0ac5bb53.js +1251 -0
  164. package/dist/esm/index-0ac5bb53.js.map +1 -0
  165. package/dist/esm/index-72ac5051.js +82 -0
  166. package/dist/esm/index-72ac5051.js.map +1 -0
  167. package/dist/esm/index.js +4 -0
  168. package/dist/esm/index.js.map +1 -0
  169. package/dist/esm/loader.js +13 -0
  170. package/dist/esm/loader.js.map +1 -0
  171. package/dist/esm/searchcraft-auto-search-form_17.entry.js +769 -0
  172. package/dist/esm/searchcraft-auto-search-form_17.entry.js.map +1 -0
  173. package/dist/{searchcraft-javascript-sdk → esm}/searchcraft-base-search-form.entry.js +5 -5
  174. package/dist/esm/searchcraft-base-search-form.entry.js.map +1 -0
  175. package/dist/{searchcraft-javascript-sdk → esm}/searchcraft-button-icon.entry.js +1 -1
  176. package/dist/esm/searchcraft-button-icon.entry.js.map +1 -0
  177. package/dist/{searchcraft-javascript-sdk → esm}/searchcraft-button.entry.js +4 -4
  178. package/dist/esm/searchcraft-button.entry.js.map +1 -0
  179. package/dist/esm/searchcraft-javascript-sdk.js +22 -0
  180. package/dist/esm/searchcraft-javascript-sdk.js.map +1 -0
  181. package/dist/esm/store-97358312.js +309 -0
  182. package/dist/esm/store-97358312.js.map +1 -0
  183. package/dist/index.cjs.js +1 -0
  184. package/dist/index.js +1 -0
  185. package/dist/loader/cdn.js +1 -0
  186. package/dist/loader/index.cjs.js +1 -0
  187. package/dist/loader/index.d.ts +24 -0
  188. package/dist/loader/index.es2017.js +1 -0
  189. package/dist/loader/index.js +2 -0
  190. package/dist/loader/package.json +11 -0
  191. package/dist/searchcraft-javascript-sdk/index.esm.js +1 -14
  192. package/dist/searchcraft-javascript-sdk/index.esm.js.map +1 -1
  193. package/dist/searchcraft-javascript-sdk/p-0880cfbb.js +3 -0
  194. package/dist/searchcraft-javascript-sdk/p-0880cfbb.js.map +1 -0
  195. package/dist/searchcraft-javascript-sdk/p-1a0e85ee.entry.js +2 -0
  196. package/dist/searchcraft-javascript-sdk/p-1a0e85ee.entry.js.map +1 -0
  197. package/dist/searchcraft-javascript-sdk/p-5cdc6210.js +7 -0
  198. package/dist/searchcraft-javascript-sdk/p-5cdc6210.js.map +1 -0
  199. package/dist/searchcraft-javascript-sdk/p-5ec960bd.entry.js +2 -0
  200. package/dist/searchcraft-javascript-sdk/p-5ec960bd.entry.js.map +1 -0
  201. package/dist/searchcraft-javascript-sdk/p-acca6173.entry.js +2 -0
  202. package/dist/searchcraft-javascript-sdk/p-acca6173.entry.js.map +1 -0
  203. package/dist/searchcraft-javascript-sdk/p-cc454542.entry.js +2 -0
  204. package/dist/searchcraft-javascript-sdk/p-cc454542.entry.js.map +1 -0
  205. package/dist/searchcraft-javascript-sdk/p-cd489e98.js +11 -0
  206. package/dist/searchcraft-javascript-sdk/p-cd489e98.js.map +1 -0
  207. package/dist/searchcraft-javascript-sdk/p-e1255160.js +2 -0
  208. package/dist/searchcraft-javascript-sdk/p-e1255160.js.map +1 -0
  209. package/dist/searchcraft-javascript-sdk/p-ff6c3650.js +2 -0
  210. package/dist/searchcraft-javascript-sdk/p-ff6c3650.js.map +1 -0
  211. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js +1 -48
  212. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js.map +1 -1
  213. package/package.json +1 -1
  214. package/dist/searchcraft-javascript-sdk/_commonjsHelpers-63cbe26c.js +0 -34
  215. package/dist/searchcraft-javascript-sdk/_commonjsHelpers-63cbe26c.js.map +0 -1
  216. package/dist/searchcraft-javascript-sdk/index-8211f330.js +0 -3043
  217. package/dist/searchcraft-javascript-sdk/index-8211f330.js.map +0 -1
  218. package/dist/searchcraft-javascript-sdk/index-d6567b9c.js.map +0 -1
  219. package/dist/searchcraft-javascript-sdk/searchcraft-auto-search-form.entry.js +0 -113
  220. package/dist/searchcraft-javascript-sdk/searchcraft-auto-search-form.entry.js.map +0 -1
  221. package/dist/searchcraft-javascript-sdk/searchcraft-base-search-form.entry.js.map +0 -1
  222. package/dist/searchcraft-javascript-sdk/searchcraft-base-search-result.entry.js.map +0 -1
  223. package/dist/searchcraft-javascript-sdk/searchcraft-base-search-results.entry.js.map +0 -1
  224. package/dist/searchcraft-javascript-sdk/searchcraft-button-icon.entry.js.map +0 -1
  225. package/dist/searchcraft-javascript-sdk/searchcraft-button.entry.js.map +0 -1
  226. package/dist/searchcraft-javascript-sdk/searchcraft-clear-icon-set.entry.js.map +0 -1
  227. package/dist/searchcraft-javascript-sdk/searchcraft-clear-input-button.entry.js +0 -30
  228. package/dist/searchcraft-javascript-sdk/searchcraft-clear-input-button.entry.js.map +0 -1
  229. package/dist/searchcraft-javascript-sdk/searchcraft-error-message.entry.js +0 -22
  230. package/dist/searchcraft-javascript-sdk/searchcraft-error-message.entry.js.map +0 -1
  231. package/dist/searchcraft-javascript-sdk/searchcraft-filters-list.entry.js.map +0 -1
  232. package/dist/searchcraft-javascript-sdk/searchcraft-input-caption.entry.js.map +0 -1
  233. package/dist/searchcraft-javascript-sdk/searchcraft-input-icon.entry.js +0 -25
  234. package/dist/searchcraft-javascript-sdk/searchcraft-input-icon.entry.js.map +0 -1
  235. package/dist/searchcraft-javascript-sdk/searchcraft-input-label.entry.js +0 -29
  236. package/dist/searchcraft-javascript-sdk/searchcraft-input-label.entry.js.map +0 -1
  237. package/dist/searchcraft-javascript-sdk/searchcraft-input.entry.js.map +0 -1
  238. package/dist/searchcraft-javascript-sdk/searchcraft-results-info.entry.js.map +0 -1
  239. package/dist/searchcraft-javascript-sdk/searchcraft-search-icon-set.entry.js.map +0 -1
  240. package/dist/searchcraft-javascript-sdk/searchcraft-slider.entry.js.map +0 -1
  241. package/dist/searchcraft-javascript-sdk/searchcraft-spinner-dark.entry.js +0 -17
  242. package/dist/searchcraft-javascript-sdk/searchcraft-spinner-dark.entry.js.map +0 -1
  243. package/dist/searchcraft-javascript-sdk/searchcraft-spinner-light.entry.js +0 -17
  244. package/dist/searchcraft-javascript-sdk/searchcraft-spinner-light.entry.js.map +0 -1
  245. package/dist/searchcraft-javascript-sdk/searchcraft-toggle-button.entry.js.map +0 -1
  246. package/dist/searchcraft-javascript-sdk/shadow-css-423dab2c.js +0 -334
  247. package/dist/searchcraft-javascript-sdk/shadow-css-423dab2c.js.map +0 -1
  248. package/dist/searchcraft-javascript-sdk/store-0451a982.js +0 -3070
  249. package/dist/searchcraft-javascript-sdk/store-0451a982.js.map +0 -1
  250. package/dist/searchcraft-javascript-sdk/store-18b7e3ea.js +0 -3071
  251. package/dist/searchcraft-javascript-sdk/store-18b7e3ea.js.map +0 -1
  252. package/dist/searchcraft-javascript-sdk/store-910b9836.js +0 -3071
  253. package/dist/searchcraft-javascript-sdk/store-910b9836.js.map +0 -1
  254. package/dist/searchcraft-javascript-sdk/store-935525f8.js +0 -3071
  255. package/dist/searchcraft-javascript-sdk/store-935525f8.js.map +0 -1
  256. package/dist/searchcraft-javascript-sdk/utils-6d98c145.js.map +0 -1
  257. package/dist/searchcraft-javascript-sdk/utils-d88ac15c.js.map +0 -1
  258. /package/dist/{searchcraft-javascript-sdk → esm}/app-globals-0f993ce5.js +0 -0
  259. /package/dist/{searchcraft-javascript-sdk → esm}/app-globals-0f993ce5.js.map +0 -0
  260. /package/dist/{searchcraft-javascript-sdk → esm}/utils-dbb6302b.js +0 -0
  261. /package/dist/{searchcraft-javascript-sdk → esm}/utils-dbb6302b.js.map +0 -0
@@ -1,13 +1,22 @@
1
- import { r as registerInstance, a as createEvent, h, F as Fragment } from './index-8211f330.js';
2
- import { c as classNames } from './index-d6567b9c.js';
3
- import { p as parseCustomStyles } from './utils-dbb6302b.js';
4
- import './_commonjsHelpers-63cbe26c.js';
1
+ import { p as proxyCustomElement, H, c as createEvent, h, F as Fragment } from './p-7498e493.js';
2
+ import { c as classNames } from './p-5cdc6210.js';
3
+ import { p as parseCustomStyles } from './p-ff6c3650.js';
4
+ import { d as defineCustomElement$7 } from './p-70722ab2.js';
5
+ import { d as defineCustomElement$6 } from './p-1c377190.js';
6
+ import { d as defineCustomElement$5 } from './p-6237f03e.js';
7
+ import { d as defineCustomElement$4 } from './p-8c38185e.js';
8
+ import { d as defineCustomElement$3 } from './p-a3bd1bc8.js';
9
+ import { d as defineCustomElement$2 } from './p-3fece4e2.js';
10
+ import { d as defineCustomElement$1 } from './p-25f18f2e.js';
5
11
 
6
12
  const searchcraftInputModuleCss = ":root{--font-stack:Helvetica, Arial, sans-serif}.inputContainerLTR{position:relative;width:100%}.inputContainerRTL{position:relative;width:100%;margin-left:8px}.inputLightLTR{border:none;border-radius:8px;font-family:var(--font-stack);outline:none;padding-bottom:15px;padding-top:15px;width:100%;background-color:#EDEDED;color:#292929;margin-right:8px;padding-left:36px;padding-right:16px}.inputLightLTR::placeholder{font-family:var(--font-stack);font-size:16px}.inputLightLTR::placeholder{color:#737373}.inputLightLTR:focus{outline:2px solid #000}.inputDarkLTR{border:none;border-radius:8px;font-family:var(--font-stack);outline:none;padding-bottom:15px;padding-top:15px;width:100%;background-color:#1A1A1A;color:#FFF;margin-right:8px;padding-left:36px;padding-right:16px}.inputDarkLTR::placeholder{font-family:var(--font-stack);font-size:16px}.inputDarkLTR::placeholder{color:#BFBFBF}.inputDarkLTR:focus{outline:2px solid #FFF}.inputErrorLightLTR{border:none;border-radius:8px;font-family:var(--font-stack);outline:none;padding-bottom:15px;padding-top:15px;width:100%;background-color:#EDEDED;color:#292929;outline:2px solid #c00;margin-right:8px;padding-left:36px;padding-right:16px}.inputErrorLightLTR::placeholder{font-family:var(--font-stack);font-size:16px}.inputErrorLightLTR::placeholder{color:#737373}.inputErrorLightLTR:focus{outline:2px solid #000}.inputErrorLightLTR:focus-visible{outline:2px solid #c00}.inputErrorDarkLTR{border:none;border-radius:8px;font-family:var(--font-stack);outline:none;padding-bottom:15px;padding-top:15px;width:100%;background-color:#1A1A1A;color:#FFF;outline:2px solid #FFB3B3;margin-right:8px;padding-left:36px;padding-right:16px}.inputErrorDarkLTR::placeholder{font-family:var(--font-stack);font-size:16px}.inputErrorDarkLTR::placeholder{color:#BFBFBF}.inputErrorDarkLTR:focus{outline:2px solid #FFF}.inputErrorDarkLTR:focus-visible{outline:2px solid #FFB3B3}.inputLightRTL{border:none;border-radius:8px;font-family:var(--font-stack);outline:none;padding-bottom:15px;padding-top:15px;width:100%;background-color:#EDEDED;color:#292929;margin-left:8px;padding-left:16px;padding-right:36px;text-align:right}.inputLightRTL::placeholder{font-family:var(--font-stack);font-size:16px}.inputLightRTL::placeholder{color:#737373}.inputLightRTL:focus{outline:2px solid #000}.inputDarkRTL{border:none;border-radius:8px;font-family:var(--font-stack);outline:none;padding-bottom:15px;padding-top:15px;width:100%;background-color:#1A1A1A;color:#FFF;margin-left:8px;padding-left:16px;padding-right:36px;text-align:right}.inputDarkRTL::placeholder{font-family:var(--font-stack);font-size:16px}.inputDarkRTL::placeholder{color:#BFBFBF}.inputDarkRTL:focus{outline:2px solid #FFF}.inputErrorLightRTL{border:none;border-radius:8px;font-family:var(--font-stack);outline:none;padding-bottom:15px;padding-top:15px;width:100%;background-color:#EDEDED;color:#292929;outline:2px solid #c00;margin-left:8px;padding-left:16px;padding-right:36px;text-align:right}.inputErrorLightRTL::placeholder{font-family:var(--font-stack);font-size:16px}.inputErrorLightRTL::placeholder{color:#737373}.inputErrorLightRTL:focus{outline:2px solid #000}.inputErrorLightRTL:focus-visible{outline:2px solid #c00}.inputErrorDarkRTL{border:none;border-radius:8px;font-family:var(--font-stack);outline:none;padding-bottom:15px;padding-top:15px;width:100%;background-color:#1A1A1A;color:#FFF;outline:2px solid #FFB3B3;margin-left:8px;padding-left:16px;padding-right:36px;text-align:right}.inputErrorDarkRTL::placeholder{font-family:var(--font-stack);font-size:16px}.inputErrorDarkRTL::placeholder{color:#BFBFBF}.inputErrorDarkRTL:focus{outline:2px solid #FFF}.inputErrorDarkRTL:focus-visible{outline:2px solid #FFB3B3}.inputWrapper{align-items:center;display:flex;position:relative;width:100%}";
13
+ const SearchcraftInputStyle0 = searchcraftInputModuleCss;
7
14
 
8
- const SearchcraftInput = class {
9
- constructor(hostRef) {
10
- registerInstance(this, hostRef);
15
+ const SearchcraftInput = /*@__PURE__*/ proxyCustomElement(class SearchcraftInput extends H {
16
+ constructor() {
17
+ super();
18
+ this.__registerHost();
19
+ this.__attachShadow();
11
20
  this.clearInput = createEvent(this, "clearInput", 7);
12
21
  this.searchInputChange = createEvent(this, "searchInputChange", 7);
13
22
  this.inputKeyUp = createEvent(this, "inputKeyUp", 7);
@@ -56,7 +65,7 @@ const SearchcraftInput = class {
56
65
  const placeholderStyle = {
57
66
  fontSize: validatedCustomStyles.placeholderFontSize || '16px',
58
67
  };
59
- return (h("div", { key: '80b683ed9ed141f5e74b06f63dabab10e17b9de2', class: classNames(containerClassName, this.formClassName, 'searchcraft-input-form') }, this.rightToLeftOrientation ? (h(Fragment, null, h("input", { autoComplete: 'off', class: classNames(inputClassName, 'searchcraft-input'), id: 'searchcraft-input-id', onChange: this.handleInputChange.bind(this), onKeyUp: this.handleInputKeyUp.bind(this), placeholder: this.placeholderValue, type: 'text', value: this.query, style: validatedCustomStyles }), h("style", null, `
68
+ return (h("div", { key: 'ca2698b808ef606d890817f6b8c133503663570e', class: classNames(containerClassName, this.formClassName, 'searchcraft-input-form') }, this.rightToLeftOrientation ? (h(Fragment, null, h("input", { autoComplete: 'off', class: classNames(inputClassName, 'searchcraft-input'), id: 'searchcraft-input-id', onChange: this.handleInputChange.bind(this), onKeyUp: this.handleInputKeyUp.bind(this), placeholder: this.placeholderValue, type: 'text', value: this.query, style: validatedCustomStyles }), h("style", null, `
60
69
  #searchcraft-input-id::placeholder {
61
70
  font-size: ${placeholderStyle.fontSize};
62
71
  }
@@ -66,9 +75,71 @@ const SearchcraftInput = class {
66
75
  }
67
76
  `), this.inputCaptionValue && (h("searchcraft-input-caption", { inputCaptionClassName: this.inputCaptionClassName, inputCaptionValue: this.inputCaptionValue, rightToLeftOrientation: this.rightToLeftOrientation })), this.query.length > 0 && (h("searchcraft-clear-input-button", { isRequesting: this.isRequesting, onClearInput: this.handleClearInput, rightToLeftOrientation: this.rightToLeftOrientation }))))));
68
77
  }
69
- };
70
- SearchcraftInput.style = searchcraftInputModuleCss;
78
+ static get style() { return SearchcraftInputStyle0; }
79
+ }, [1, "searchcraft-input", {
80
+ "customStyles": [1, "custom-styles"],
81
+ "error": [4],
82
+ "formClassName": [1, "form-class-name"],
83
+ "inputCaptionClassName": [1, "input-caption-class-name"],
84
+ "inputCaptionValue": [1, "input-caption-value"],
85
+ "inputClassName": [1, "input-class-name"],
86
+ "inputIconHeight": [2, "input-icon-height"],
87
+ "inputIconWidth": [2, "input-icon-width"],
88
+ "isRequesting": [4, "is-requesting"],
89
+ "placeholderValue": [1, "placeholder-value"],
90
+ "rightToLeftOrientation": [4, "right-to-left-orientation"],
91
+ "query": [1],
92
+ "theme": [32]
93
+ }]);
94
+ function defineCustomElement() {
95
+ if (typeof customElements === "undefined") {
96
+ return;
97
+ }
98
+ const components = ["searchcraft-input", "searchcraft-clear-icon-set", "searchcraft-clear-input-button", "searchcraft-input-caption", "searchcraft-input-icon", "searchcraft-search-icon-set", "searchcraft-spinner-dark", "searchcraft-spinner-light"];
99
+ components.forEach(tagName => { switch (tagName) {
100
+ case "searchcraft-input":
101
+ if (!customElements.get(tagName)) {
102
+ customElements.define(tagName, SearchcraftInput);
103
+ }
104
+ break;
105
+ case "searchcraft-clear-icon-set":
106
+ if (!customElements.get(tagName)) {
107
+ defineCustomElement$7();
108
+ }
109
+ break;
110
+ case "searchcraft-clear-input-button":
111
+ if (!customElements.get(tagName)) {
112
+ defineCustomElement$6();
113
+ }
114
+ break;
115
+ case "searchcraft-input-caption":
116
+ if (!customElements.get(tagName)) {
117
+ defineCustomElement$5();
118
+ }
119
+ break;
120
+ case "searchcraft-input-icon":
121
+ if (!customElements.get(tagName)) {
122
+ defineCustomElement$4();
123
+ }
124
+ break;
125
+ case "searchcraft-search-icon-set":
126
+ if (!customElements.get(tagName)) {
127
+ defineCustomElement$3();
128
+ }
129
+ break;
130
+ case "searchcraft-spinner-dark":
131
+ if (!customElements.get(tagName)) {
132
+ defineCustomElement$2();
133
+ }
134
+ break;
135
+ case "searchcraft-spinner-light":
136
+ if (!customElements.get(tagName)) {
137
+ defineCustomElement$1();
138
+ }
139
+ break;
140
+ } });
141
+ }
71
142
 
72
- export { SearchcraftInput as searchcraft_input };
143
+ export { SearchcraftInput as S, defineCustomElement as d };
73
144
 
74
- //# sourceMappingURL=searchcraft-input.entry.js.map
145
+ //# sourceMappingURL=p-1204b43a.js.map
@@ -0,0 +1 @@
1
+ {"file":"p-1204b43a.js","mappings":";;;;;;;;;;;AAAA,MAAM,yBAAyB,GAAG,2sHAA2sH,CAAC;AAC9uH,+BAAe,yBAAyB;;MCsB3B,gBAAgB;;;;;;;;4BAC6B,EAAE;qBAC1C,KAAK;6BACG,EAAE;qCACM,EAAE;iCACN,EAAE;8BACL,EAAE;+BACD,EAAE;8BACH,EAAE;4BACJ,KAAK;gCACD,cAAc;sCACR,KAAK;qBACtB,EAAE;qBAMD,OAAO;;IAExB,IAAY,YAAY;QACtB,OAAO,IAAI,CAAC,KAAK,KAAK,OAAO,CAAC;KAC/B;IAED,iBAAiB,CAAC,KAAY;QAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,MAA0B,CAAC;QAC/C,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;KAC1C;IAED,gBAAgB,CAAC,KAAoB;QACnC,MAAM,KAAK,GAAG,KAAK,CAAC,MAA0B,CAAC;QAC/C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;KACnC;IAED,gBAAgB;QACd,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;SACxB;KACF;IAED,MAAM;QACJ,MAAM,kBAAkB,GAAG,IAAI,CAAC,sBAAsB;cAClD,mBAAmB;cACnB,mBAAmB,CAAC;QAExB,MAAM,cAAc,GAAG,UAAU,CAC/B,IAAI,CAAC,KAAK;cACN,IAAI,CAAC,YAAY;kBACf,oBAAoB;kBACpB,mBAAmB;cACrB,IAAI,CAAC,YAAY;kBACf,eAAe;kBACf,cAAc,EACpB,mBAAmB,CACpB,CAAC;QAEF,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAEnE,MAAM,gBAAgB,GAAG;YACvB,QAAQ,EAAE,qBAAqB,CAAC,mBAAmB,IAAI,MAAM;SAC9D,CAAC;QACF,QACE,4DACE,KAAK,EAAE,UAAU,CACf,kBAAkB,EAClB,IAAI,CAAC,aAAa,EAClB,wBAAwB,CACzB,IAEA,IAAI,CAAC,sBAAsB,IAC1B,EAAC,QAAQ,QACP,aACE,YAAY,EAAC,KAAK,EAClB,KAAK,EAAE,UAAU,CAAC,cAAc,EAAE,mBAAmB,CAAC,EACtD,EAAE,EAAC,sBAAsB,EACzB,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAC3C,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EACzC,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAClC,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,KAAK,EAAE,qBAAqB,GAC5B,EACF,iBACG;;+BAEgB,gBAAgB,CAAC,QAAQ;;eAEzC,CACK,EACP,IAAI,CAAC,iBAAiB,KACrB,iCACE,qBAAqB,EAAE,IAAI,CAAC,qBAAqB,EACjD,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EACzC,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,GACnD,CACH,EACA,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,KACpB,sCACE,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,YAAY,EAAE,IAAI,CAAC,gBAAgB,EACnC,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,GACnD,CACH,EACD,8BACE,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,MAAM,EAAE,IAAI,CAAC,eAAe,EAC5B,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,EACnD,KAAK,EAAE,IAAI,CAAC,cAAc,GAC1B,CACO,KAEX,EAAC,QAAQ,QACP,8BACE,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,MAAM,EAAE,IAAI,CAAC,eAAe,EAC5B,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,EACnD,KAAK,EAAE,IAAI,CAAC,cAAc,GAC1B,EACF,aACE,YAAY,EAAC,KAAK,EAClB,KAAK,EAAE,UAAU,CAAC,cAAc,EAAE,mBAAmB,CAAC,EACtD,EAAE,EAAC,sBAAsB,EACzB,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAC3C,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EACzC,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAClC,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,KAAK,EAAE,qBAAqB,GAC5B,EACF,iBACG;;+BAEgB,gBAAgB,CAAC,QAAQ;;eAEzC,CACK,EACP,IAAI,CAAC,iBAAiB,KACrB,iCACE,qBAAqB,EAAE,IAAI,CAAC,qBAAqB,EACjD,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EACzC,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,GACnD,CACH,EACA,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,KACpB,sCACE,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,YAAY,EAAE,IAAI,CAAC,gBAAgB,EACnC,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,GACnD,CACH,CACQ,CACZ,CACG,EACN;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/searchcraft-input/searchcraft-input.module.scss?tag=searchcraft-input&encapsulation=shadow","src/components/searchcraft-input/searchcraft-input.tsx"],"sourcesContent":["@import '../../utils/theme';\n\n:root {\n --font-stack: Helvetica, Arial, sans-serif;\n}\n\n@mixin input-container-base {\n position: relative;\n width: 100%;\n}\n\n@mixin input-base {\n border: none;\n border-radius: 8px;\n font-family: var(--font-stack);\n outline: none;\n padding-bottom: 15px;\n padding-top: 15px;\n width: 100%;\n\n &::placeholder {\n font-family: var(--font-stack);\n font-size: 16px;\n }\n}\n\n@mixin input-base-light {\n @include input-base;\n background-color: $light-input-background-color;\n color: $light-input-label-color;\n\n &::placeholder {\n color: $light-input-placeholder-color;\n }\n\n &:focus {\n outline: 2px solid $light-input-outline-focus;\n }\n}\n\n@mixin input-base-dark {\n @include input-base;\n background-color: $dark-input-background-color;\n color: $dark-input-label-color;\n\n &::placeholder {\n color: $dark-input-placeholder-color;\n }\n\n &:focus {\n outline: 2px solid $dark-input-outline-focus;\n }\n}\n\n@mixin input-error-base-light {\n @include input-base-light;\n outline: 2px solid $light-input-error-outline;\n\n &:focus-visible {\n outline: 2px solid $light-input-error-outline,\n }\n}\n\n@mixin input-error-base-dark {\n @include input-base-dark;\n outline: 2px solid $dark-input-error-outline;\n\n &:focus-visible {\n outline: 2px solid $dark-input-error-outline;\n }\n}\n\n.inputContainerLTR {\n @include input-container-base;\n}\n\n.inputContainerRTL {\n @include input-container-base;\n margin-left: 8px;\n}\n\n@mixin align-LTR {\n margin-right: 8px;\n padding-left: 36px;\n padding-right: 16px;\n}\n\n.inputLightLTR {\n @include input-base-light;\n @include align-LTR;\n}\n\n.inputDarkLTR {\n @include input-base-dark;\n @include align-LTR;\n}\n\n.inputErrorLightLTR {\n @include input-error-base-light;\n @include align-LTR;\n}\n\n.inputErrorDarkLTR {\n @include input-error-base-dark;\n @include align-LTR;\n}\n\n@mixin align-RTL {\n margin-left: 8px;\n padding-left: 16px;\n padding-right: 36px;\n text-align: right;\n}\n\n.inputLightRTL {\n @include input-base-light;\n @include align-RTL;\n}\n\n.inputDarkRTL {\n @include input-base-dark;\n @include align-RTL;\n}\n\n.inputErrorLightRTL {\n @include input-error-base-light;\n @include align-RTL;\n}\n\n.inputErrorDarkRTL {\n @include input-error-base-dark;\n @include align-RTL;\n}\n\n.inputWrapper {\n align-items: center;\n display: flex;\n position: relative;\n width: 100%;\n}\n","import {\n Component,\n h,\n Prop,\n State,\n Event,\n Fragment,\n type EventEmitter,\n} from '@stencil/core';\nimport classNames from 'classnames';\n\nimport { parseCustomStyles } from '@utils/utils';\n\nexport interface ScInputCustomEvent<T> extends CustomEvent<T> {\n detail: T;\n target: HTMLSearchcraftInputElement;\n}\n\n@Component({\n tag: 'searchcraft-input',\n styleUrl: 'searchcraft-input.module.scss',\n shadow: true,\n})\nexport class SearchcraftInput {\n @Prop() customStyles: string | Record<string, string> = {};\n @Prop() error = false;\n @Prop() formClassName = '';\n @Prop() inputCaptionClassName = '';\n @Prop() inputCaptionValue = '';\n @Prop() inputClassName = '';\n @Prop() inputIconHeight = 20;\n @Prop() inputIconWidth = 20;\n @Prop() isRequesting = false;\n @Prop() placeholderValue = 'Enter Search';\n @Prop() rightToLeftOrientation = false;\n @Prop() query = '';\n\n @Event() clearInput: EventEmitter<void>;\n @Event() searchInputChange: EventEmitter<string>;\n @Event() inputKeyUp: EventEmitter<string>;\n\n @State() theme = 'light';\n\n private get isLightTheme() {\n return this.theme === 'light';\n }\n\n handleInputChange(event: Event) {\n const input = event.target as HTMLInputElement;\n this.searchInputChange.emit(input.value);\n }\n\n handleInputKeyUp(event: KeyboardEvent) {\n const input = event.target as HTMLInputElement;\n this.inputKeyUp.emit(input.value);\n }\n\n handleClearInput() {\n if (this.clearInput) {\n this.clearInput.emit();\n }\n }\n\n render() {\n const containerClassName = this.rightToLeftOrientation\n ? 'inputContainerRTL'\n : 'inputContainerLTR';\n\n const inputClassName = classNames(\n this.error\n ? this.isLightTheme\n ? 'inputErrorLightRTL'\n : 'inputErrorDarkRTL'\n : this.isLightTheme\n ? 'inputLightLTR'\n : 'inputDarkLTR',\n 'searchcraft-input',\n );\n\n const validatedCustomStyles = parseCustomStyles(this.customStyles);\n\n const placeholderStyle = {\n fontSize: validatedCustomStyles.placeholderFontSize || '16px',\n };\n return (\n <div\n class={classNames(\n containerClassName,\n this.formClassName,\n 'searchcraft-input-form',\n )}\n >\n {this.rightToLeftOrientation ? (\n <Fragment>\n <input\n autoComplete='off'\n class={classNames(inputClassName, 'searchcraft-input')}\n id='searchcraft-input-id'\n onChange={this.handleInputChange.bind(this)}\n onKeyUp={this.handleInputKeyUp.bind(this)}\n placeholder={this.placeholderValue}\n type='text'\n value={this.query}\n style={validatedCustomStyles}\n />\n <style>\n {`\n #searchcraft-input-id::placeholder {\n font-size: ${placeholderStyle.fontSize};\n }\n `}\n </style>\n {this.inputCaptionValue && (\n <searchcraft-input-caption\n inputCaptionClassName={this.inputCaptionClassName}\n inputCaptionValue={this.inputCaptionValue}\n rightToLeftOrientation={this.rightToLeftOrientation}\n />\n )}\n {this.query.length > 0 && (\n <searchcraft-clear-input-button\n isRequesting={this.isRequesting}\n onClearInput={this.handleClearInput}\n rightToLeftOrientation={this.rightToLeftOrientation}\n />\n )}\n <searchcraft-input-icon\n error={this.error}\n height={this.inputIconHeight}\n rightToLeftOrientation={this.rightToLeftOrientation}\n width={this.inputIconWidth}\n />\n </Fragment>\n ) : (\n <Fragment>\n <searchcraft-input-icon\n error={this.error}\n height={this.inputIconHeight}\n rightToLeftOrientation={this.rightToLeftOrientation}\n width={this.inputIconWidth}\n />\n <input\n autoComplete='off'\n class={classNames(inputClassName, 'searchcraft-input')}\n id='searchcraft-input-id'\n onChange={this.handleInputChange.bind(this)}\n onKeyUp={this.handleInputKeyUp.bind(this)}\n placeholder={this.placeholderValue}\n type='text'\n value={this.query}\n style={validatedCustomStyles}\n />\n <style>\n {`\n #searchcraft-input-id::placeholder {\n font-size: ${placeholderStyle.fontSize};\n }\n `}\n </style>\n {this.inputCaptionValue && (\n <searchcraft-input-caption\n inputCaptionClassName={this.inputCaptionClassName}\n inputCaptionValue={this.inputCaptionValue}\n rightToLeftOrientation={this.rightToLeftOrientation}\n />\n )}\n {this.query.length > 0 && (\n <searchcraft-clear-input-button\n isRequesting={this.isRequesting}\n onClearInput={this.handleClearInput}\n rightToLeftOrientation={this.rightToLeftOrientation}\n />\n )}\n </Fragment>\n )}\n </div>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,67 @@
1
+ import { p as proxyCustomElement, H, c as createEvent, h } from './p-7498e493.js';
2
+ import { c as classNames } from './p-5cdc6210.js';
3
+ import { d as defineCustomElement$3 } from './p-70722ab2.js';
4
+ import { d as defineCustomElement$2 } from './p-3fece4e2.js';
5
+ import { d as defineCustomElement$1 } from './p-25f18f2e.js';
6
+
7
+ const searchcraftClearInputButtonModuleCss = ":root{--font-stack:Helvetica, Arial, sans-serif}.inputClearButtonLTR{align-items:center;background:none;border:none;display:flex;height:20px;justify-content:center;padding:0;position:absolute;right:0;top:50%;transform:translateY(-50%);width:20px}.inputClearButtonRTL{align-items:center;background:none;border:none;display:flex;height:20px;justify-content:center;left:0px;padding:0;position:absolute;top:50%;transform:translateY(-50%);width:20px}";
8
+ const SearchcraftClearInputButtonStyle0 = searchcraftClearInputButtonModuleCss;
9
+
10
+ const SearchcraftClearInputButton = /*@__PURE__*/ proxyCustomElement(class SearchcraftClearInputButton extends H {
11
+ constructor() {
12
+ super();
13
+ this.__registerHost();
14
+ this.__attachShadow();
15
+ this.clearInput = createEvent(this, "clearInput", 7);
16
+ this.handleClearClick = (event) => {
17
+ event.preventDefault();
18
+ this.clearInput.emit();
19
+ };
20
+ this.isRequesting = false;
21
+ this.rightToLeftOrientation = false;
22
+ this.theme = 'light';
23
+ }
24
+ isLightTheme() {
25
+ return this.theme === 'light';
26
+ }
27
+ render() {
28
+ return this.rightToLeftOrientation ? (h("button", { class: classNames('inputClearButtonRTL', '.sc-clear-input-button-rtl'), onClick: this.handleClearClick, type: 'button' }, this.isRequesting ? (this.isLightTheme ? (h("searchcraft-spinner-light", null)) : (h("searchcraft-spinner-dark", null))) : this.isLightTheme ? (h("searchcraft-clear-icon-set", { type: 'clear-light' })) : (h("searchcraft-clear-icon-set", { type: 'clear-dark' })))) : (h("button", { class: classNames('inputClearButtonLTR', '.sc-clear-input-button-ltr'), onClick: this.handleClearClick, type: 'button' }, this.isRequesting ? (this.isLightTheme ? (h("searchcraft-spinner-light", null)) : (h("searchcraft-spinner-dark", null))) : this.isLightTheme ? (h("searchcraft-clear-icon-set", { type: 'clear-light' })) : (h("searchcraft-clear-icon-set", { type: 'clear-dark' }))));
29
+ }
30
+ static get style() { return SearchcraftClearInputButtonStyle0; }
31
+ }, [1, "searchcraft-clear-input-button", {
32
+ "isRequesting": [4, "is-requesting"],
33
+ "rightToLeftOrientation": [4, "right-to-left-orientation"],
34
+ "theme": [32]
35
+ }]);
36
+ function defineCustomElement() {
37
+ if (typeof customElements === "undefined") {
38
+ return;
39
+ }
40
+ const components = ["searchcraft-clear-input-button", "searchcraft-clear-icon-set", "searchcraft-spinner-dark", "searchcraft-spinner-light"];
41
+ components.forEach(tagName => { switch (tagName) {
42
+ case "searchcraft-clear-input-button":
43
+ if (!customElements.get(tagName)) {
44
+ customElements.define(tagName, SearchcraftClearInputButton);
45
+ }
46
+ break;
47
+ case "searchcraft-clear-icon-set":
48
+ if (!customElements.get(tagName)) {
49
+ defineCustomElement$3();
50
+ }
51
+ break;
52
+ case "searchcraft-spinner-dark":
53
+ if (!customElements.get(tagName)) {
54
+ defineCustomElement$2();
55
+ }
56
+ break;
57
+ case "searchcraft-spinner-light":
58
+ if (!customElements.get(tagName)) {
59
+ defineCustomElement$1();
60
+ }
61
+ break;
62
+ } });
63
+ }
64
+
65
+ export { SearchcraftClearInputButton as S, defineCustomElement as d };
66
+
67
+ //# sourceMappingURL=p-1c377190.js.map
@@ -0,0 +1 @@
1
+ {"file":"p-1c377190.js","mappings":";;;;;;AAAA,MAAM,oCAAoC,GAAG,+bAA+b,CAAC;AAC7e,0CAAe,oCAAoC;;MCctC,2BAA2B;;;;;;QAY9B,qBAAgB,GAAG,CAAC,KAAiB;YAC3C,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;SACxB,CAAC;4BAdsB,KAAK;sCACI,KAAK;qBAIrB,OAAO;;IAEhB,YAAY;QAClB,OAAO,IAAI,CAAC,KAAK,KAAK,OAAO,CAAC;KAC/B;IAOD,MAAM;QACJ,OAAO,IAAI,CAAC,sBAAsB,IAChC,cACE,KAAK,EAAE,UAAU,CAAC,qBAAqB,EAAE,4BAA4B,CAAC,EACtE,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAC9B,IAAI,EAAC,QAAQ,IAEZ,IAAI,CAAC,YAAY,IAChB,IAAI,CAAC,YAAY,IACf,oCAA6B,KAE7B,mCAA4B,CAC7B,IACC,IAAI,CAAC,YAAY,IACnB,kCAA4B,IAAI,EAAC,aAAa,GAAG,KAEjD,kCAA4B,IAAI,EAAC,YAAY,GAAG,CACjD,CACM,KAET,cACE,KAAK,EAAE,UAAU,CAAC,qBAAqB,EAAE,4BAA4B,CAAC,EACtE,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAC9B,IAAI,EAAC,QAAQ,IAEZ,IAAI,CAAC,YAAY,IAChB,IAAI,CAAC,YAAY,IACf,oCAA6B,KAE7B,mCAA4B,CAC7B,IACC,IAAI,CAAC,YAAY,IACnB,kCAA4B,IAAI,EAAC,aAAa,GAAG,KAEjD,kCAA4B,IAAI,EAAC,YAAY,GAAG,CACjD,CACM,CACV,CAAC;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/searchcraft-clear-input-button/searchcraft-clear-input-button.module.scss?tag=searchcraft-clear-input-button&encapsulation=shadow","src/components/searchcraft-clear-input-button/searchcraft-clear-input-button.tsx"],"sourcesContent":[":root {\n --font-stack: Helvetica, Arial, sans-serif;\n}\n\n.inputClearButtonLTR {\n align-items: center;\n background: none;\n border: none;\n display: flex;\n height: 20px;\n justify-content: center;\n padding: 0;\n position: absolute;\n right: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 20px;\n}\n\n.inputClearButtonRTL {\n align-items: center;\n background: none;\n border: none;\n display: flex;\n height: 20px;\n justify-content: center;\n left: 0px;\n padding: 0;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n width: 20px;\n}","import {\n Component,\n Event,\n type EventEmitter,\n Prop,\n h,\n State,\n} from '@stencil/core';\nimport classNames from 'classnames';\n\n@Component({\n tag: 'searchcraft-clear-input-button',\n styleUrl: 'searchcraft-clear-input-button.module.scss',\n shadow: true,\n})\nexport class SearchcraftClearInputButton {\n @Prop() isRequesting? = false;\n @Prop() rightToLeftOrientation = false;\n\n @Event() clearInput: EventEmitter<void>;\n\n @State() theme = 'light';\n\n private isLightTheme() {\n return this.theme === 'light';\n }\n\n private handleClearClick = (event: MouseEvent) => {\n event.preventDefault();\n this.clearInput.emit();\n };\n\n render() {\n return this.rightToLeftOrientation ? (\n <button\n class={classNames('inputClearButtonRTL', '.sc-clear-input-button-rtl')}\n onClick={this.handleClearClick}\n type='button'\n >\n {this.isRequesting ? (\n this.isLightTheme ? (\n <searchcraft-spinner-light />\n ) : (\n <searchcraft-spinner-dark />\n )\n ) : this.isLightTheme ? (\n <searchcraft-clear-icon-set type='clear-light' />\n ) : (\n <searchcraft-clear-icon-set type='clear-dark' />\n )}\n </button>\n ) : (\n <button\n class={classNames('inputClearButtonLTR', '.sc-clear-input-button-ltr')}\n onClick={this.handleClearClick}\n type='button'\n >\n {this.isRequesting ? (\n this.isLightTheme ? (\n <searchcraft-spinner-light />\n ) : (\n <searchcraft-spinner-dark />\n )\n ) : this.isLightTheme ? (\n <searchcraft-clear-icon-set type='clear-light' />\n ) : (\n <searchcraft-clear-icon-set type='clear-dark' />\n )}\n </button>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,33 @@
1
+ import { p as proxyCustomElement, H, h } from './p-7498e493.js';
2
+
3
+ const searchcraftSpinnerLightModuleCss = ".spinnerContainer{background-color:transparent;height:20px;width:20px}.spinnerLight{animation:spinning 1s linear infinite;background:conic-gradient(#737373 50%, #FFFFFF);clip-path:circle(50%);height:100%;mask-image:radial-gradient(circle at center, rgba(0, 0, 0, 0) 6.6666666667px, rgb(0, 0, 0) 6.6666666667px);width:100%}@keyframes spinning{0%{transform:rotate(0deg)}50%{transform:rotate(180deg)}100%{transform:rotate(360deg)}}";
4
+ const SearchcraftSpinnerLightStyle0 = searchcraftSpinnerLightModuleCss;
5
+
6
+ const SearchcraftSpinnerLight = /*@__PURE__*/ proxyCustomElement(class SearchcraftSpinnerLight extends H {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.__attachShadow();
11
+ }
12
+ render() {
13
+ return (h("div", { key: 'ad5224c97faf7e329d2a8904488c17dfd7414b9e', class: 'spinnerContainer' }, h("div", { key: '6336ce7737af65eedac46ee290b20291ce5b6096', class: 'spinnerLight' })));
14
+ }
15
+ static get style() { return SearchcraftSpinnerLightStyle0; }
16
+ }, [1, "searchcraft-spinner-light"]);
17
+ function defineCustomElement() {
18
+ if (typeof customElements === "undefined") {
19
+ return;
20
+ }
21
+ const components = ["searchcraft-spinner-light"];
22
+ components.forEach(tagName => { switch (tagName) {
23
+ case "searchcraft-spinner-light":
24
+ if (!customElements.get(tagName)) {
25
+ customElements.define(tagName, SearchcraftSpinnerLight);
26
+ }
27
+ break;
28
+ } });
29
+ }
30
+
31
+ export { SearchcraftSpinnerLight as S, defineCustomElement as d };
32
+
33
+ //# sourceMappingURL=p-25f18f2e.js.map
@@ -0,0 +1 @@
1
+ {"file":"p-25f18f2e.js","mappings":";;AAAA,MAAM,gCAAgC,GAAG,8aAA8a,CAAC;AACxd,sCAAe,gCAAgC;;MCMlC,uBAAuB;;;;;;IAClC,MAAM;QACJ,QACE,4DAAK,KAAK,EAAC,kBAAkB,IAC3B,4DAAK,KAAK,EAAC,cAAc,GAAG,CACxB,EACN;KACH;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/searchcraft-spinner-light/searchcraft-spinner-light.module.scss?tag=searchcraft-spinner-light&encapsulation=shadow","src/components/searchcraft-spinner-light/searchcraft-spinner-light.tsx"],"sourcesContent":["$spinner-size: 20px;\n\n.spinnerContainer {\n background-color: transparent;\n height: $spinner-size;\n width: $spinner-size;\n}\n\n.spinnerLight {\n animation: spinning 1s linear infinite;\n background: conic-gradient(#737373 50%, #FFFFFF);\n clip-path: circle(50%);\n height: 100%;\n mask-image: radial-gradient(circle at center, rgba(0,0,0,0) calc($spinner-size/3), rgba(0,0,0,1) calc($spinner-size/3));\n width: 100%;\n}\n\n@keyframes spinning {\n 0% { transform: rotate(0deg); }\n 50% {transform: rotate(180deg);}\n 100% { transform: rotate(360deg); }\n}","import { Component, h } from '@stencil/core';\n\n@Component({\n tag: 'searchcraft-spinner-light',\n styleUrl: 'searchcraft-spinner-light.module.scss',\n shadow: true,\n})\nexport class SearchcraftSpinnerLight {\n render() {\n return (\n <div class='spinnerContainer'>\n <div class='spinnerLight' />\n </div>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,309 @@
1
+ var f = Object.defineProperty;
2
+ var c = (o, t, e) => t in o ? f(o, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : o[t] = e;
3
+ var l$1 = (o, t, e) => c(o, typeof t != "symbol" ? t + "" : t, e);
4
+ class g {
5
+ constructor(t) {
6
+ l$1(this, "config");
7
+ /**
8
+ * Performs a search operation.
9
+ * @param {SearchParams} searchParams - The parameters for the search.
10
+ * @returns {Promise<SearchcraftResponse>} - Returns the search response or throws an error.
11
+ */
12
+ l$1(this, "search", async (t) => {
13
+ if ((t.query.match(/"/g) || []).length % 2 !== 0)
14
+ throw new Error(
15
+ "The search term contains an uneven number of quote characters."
16
+ );
17
+ try {
18
+ const n = this.config.index.join(","), s = `${this.config.endpointURL}/index/${n}/search`, r = {
19
+ query: this.buildQueryObject(t),
20
+ limit: t.limit ?? 20
21
+ // Default to 20 if not provided
22
+ };
23
+ t.offset !== void 0 && (r.offset = t.offset), t.facets && (r.facets = t.facets), t.order_by && (r.order_by = t.order_by, r.sort = t.sort === "desc" || t.sort === "asc" ? t.sort : "asc");
24
+ const u = {
25
+ method: "POST",
26
+ headers: {
27
+ Authorization: this.config.apiKey,
28
+ "Content-Type": "application/json"
29
+ },
30
+ body: JSON.stringify(r)
31
+ }, i = await fetch(s, u);
32
+ if (!i.ok)
33
+ throw new Error(
34
+ `Error: ${i.statusText} (Status: ${i.status})`
35
+ );
36
+ return await i.json();
37
+ } catch (n) {
38
+ throw console.error("Error parsing response:", n), n;
39
+ }
40
+ });
41
+ if (!t.endpointURL || !t.index || !t.apiKey)
42
+ throw new Error(
43
+ "Endpoint URL, Index value(s), and API Key must be provided"
44
+ );
45
+ this.config = t;
46
+ }
47
+ /**
48
+ * Builds a query object for the search request.
49
+ * @param {SearchParams} searchParams - The parameters for the search.
50
+ * @returns {QueryObject} - A properly formatted query object.
51
+ */
52
+ buildQueryObject(t) {
53
+ var r;
54
+ const e = [];
55
+ let n = "should";
56
+ if (t.yearsRange) {
57
+ n = "must";
58
+ const u = /* @__PURE__ */ new Date(`${t.yearsRange[0]}-01-01`), i = /* @__PURE__ */ new Date(`${t.yearsRange[1]}-12-31`);
59
+ e.push({
60
+ occur: n,
61
+ normal: {
62
+ ctx: `date_published:[${u.toISOString()} TO ${i.toISOString()}]`
63
+ }
64
+ });
65
+ }
66
+ const s = Object.keys(((r = t == null ? void 0 : t.facets) == null ? void 0 : r.section.counts) || {});
67
+ return s && s.length > 0 && (n = "must", e.push({
68
+ occur: n,
69
+ normal: {
70
+ ctx: `section: IN [${s.join(" ")}]`
71
+ }
72
+ })), t.sort === "desc" ? t.order_by = "date_published" : t.order_by = "", e.push({
73
+ occur: n,
74
+ // Valid, as 'occur' is a required property in QueryItem
75
+ [t.mode]: { ctx: t.query }
76
+ // Ensure dynamic mode is inside queryType
77
+ }), e;
78
+ }
79
+ }
80
+ var d = /* @__PURE__ */ ((o) => (o[o.DEBUG = 0] = "DEBUG", o[o.INFO = 1] = "INFO", o[o.WARN = 2] = "WARN", o[o.ERROR = 3] = "ERROR", o))(d || {});
81
+ class b {
82
+ constructor(t) {
83
+ l$1(this, "logLevel");
84
+ l$1(this, "logFormatter");
85
+ this.logLevel = t.logLevel || 1, this.logFormatter = t.logFormatter || this.defaultFormatter;
86
+ }
87
+ defaultFormatter(t, e) {
88
+ return `[${d[t]}] ${( new Date()).toISOString()}: ${e}`;
89
+ }
90
+ debug(t) {
91
+ this.logLevel <= 0 && console.log(this.logFormatter(0, t));
92
+ }
93
+ info(t) {
94
+ this.logLevel <= 1 && console.info(this.logFormatter(1, t));
95
+ }
96
+ warn(t) {
97
+ this.logLevel <= 2 && console.warn(this.logFormatter(2, t));
98
+ }
99
+ error(t) {
100
+ this.logLevel <= 3 && console.error(this.logFormatter(3, t));
101
+ }
102
+ }
103
+
104
+ var zustand = {};
105
+
106
+ var vanilla$1 = {};
107
+
108
+ const createStoreImpl = (createState) => {
109
+ let state;
110
+ const listeners = /* @__PURE__ */ new Set();
111
+ const setState = (partial, replace) => {
112
+ const nextState = typeof partial === "function" ? partial(state) : partial;
113
+ if (!Object.is(nextState, state)) {
114
+ const previousState = state;
115
+ state = (replace != null ? replace : typeof nextState !== "object" || nextState === null) ? nextState : Object.assign({}, state, nextState);
116
+ listeners.forEach((listener) => listener(state, previousState));
117
+ }
118
+ };
119
+ const getState = () => state;
120
+ const getInitialState = () => initialState;
121
+ const subscribe = (listener) => {
122
+ listeners.add(listener);
123
+ return () => listeners.delete(listener);
124
+ };
125
+ const api = { setState, getState, getInitialState, subscribe };
126
+ const initialState = state = createState(setState, getState, api);
127
+ return api;
128
+ };
129
+ const createStore = (createState) => createState ? createStoreImpl(createState) : createStoreImpl;
130
+
131
+ vanilla$1.createStore = createStore;
132
+
133
+ var react$1 = {};
134
+
135
+ var react = {exports: {}};
136
+
137
+ var react_production_min = {};
138
+
139
+ /**
140
+ * @license React
141
+ * react.production.min.js
142
+ *
143
+ * Copyright (c) Facebook, Inc. and its affiliates.
144
+ *
145
+ * This source code is licensed under the MIT license found in the
146
+ * LICENSE file in the root directory of this source tree.
147
+ */
148
+ var l=Symbol.for("react.element"),n=Symbol.for("react.portal"),p=Symbol.for("react.fragment"),q=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),t=Symbol.for("react.provider"),u=Symbol.for("react.context"),v=Symbol.for("react.forward_ref"),w=Symbol.for("react.suspense"),x=Symbol.for("react.memo"),y=Symbol.for("react.lazy"),z=Symbol.iterator;function A(a){if(null===a||"object"!==typeof a)return null;a=z&&a[z]||a["@@iterator"];return "function"===typeof a?a:null}
149
+ var B={isMounted:function(){return !1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,D={};function E(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B;}E.prototype.isReactComponent={};
150
+ E.prototype.setState=function(a,b){if("object"!==typeof a&&"function"!==typeof a&&null!=a)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,a,b,"setState");};E.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,"forceUpdate");};function F(){}F.prototype=E.prototype;function G(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B;}var H=G.prototype=new F;
151
+ H.constructor=G;C(H,E.prototype);H.isPureReactComponent=!0;var I=Array.isArray,J=Object.prototype.hasOwnProperty,K={current:null},L={key:!0,ref:!0,__self:!0,__source:!0};
152
+ function M(a,b,e){var d,c={},k=null,h=null;if(null!=b)for(d in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(k=""+b.key),b)J.call(b,d)&&!L.hasOwnProperty(d)&&(c[d]=b[d]);var g=arguments.length-2;if(1===g)c.children=e;else if(1<g){for(var f=Array(g),m=0;m<g;m++)f[m]=arguments[m+2];c.children=f;}if(a&&a.defaultProps)for(d in g=a.defaultProps,g)void 0===c[d]&&(c[d]=g[d]);return {$$typeof:l,type:a,key:k,ref:h,props:c,_owner:K.current}}
153
+ function N(a,b){return {$$typeof:l,type:a.type,key:b,ref:a.ref,props:a.props,_owner:a._owner}}function O(a){return "object"===typeof a&&null!==a&&a.$$typeof===l}function escape(a){var b={"=":"=0",":":"=2"};return "$"+a.replace(/[=:]/g,function(a){return b[a]})}var P=/\/+/g;function Q(a,b){return "object"===typeof a&&null!==a&&null!=a.key?escape(""+a.key):b.toString(36)}
154
+ function R(a,b,e,d,c){var k=typeof a;if("undefined"===k||"boolean"===k)a=null;var h=!1;if(null===a)h=!0;else switch(k){case "string":case "number":h=!0;break;case "object":switch(a.$$typeof){case l:case n:h=!0;}}if(h)return h=a,c=c(h),a=""===d?"."+Q(h,0):d,I(c)?(e="",null!=a&&(e=a.replace(P,"$&/")+"/"),R(c,b,e,"",function(a){return a})):null!=c&&(O(c)&&(c=N(c,e+(!c.key||h&&h.key===c.key?"":(""+c.key).replace(P,"$&/")+"/")+a)),b.push(c)),1;h=0;d=""===d?".":d+":";if(I(a))for(var g=0;g<a.length;g++){k=
155
+ a[g];var f=d+Q(k,g);h+=R(k,b,e,f,c);}else if(f=A(a),"function"===typeof f)for(a=f.call(a),g=0;!(k=a.next()).done;)k=k.value,f=d+Q(k,g++),h+=R(k,b,e,f,c);else if("object"===k)throw b=String(a),Error("Objects are not valid as a React child (found: "+("[object Object]"===b?"object with keys {"+Object.keys(a).join(", ")+"}":b)+"). If you meant to render a collection of children, use an array instead.");return h}
156
+ function S(a,b,e){if(null==a)return a;var d=[],c=0;R(a,d,"","",function(a){return b.call(e,a,c++)});return d}function T(a){if(-1===a._status){var b=a._result;b=b();b.then(function(b){if(0===a._status||-1===a._status)a._status=1,a._result=b;},function(b){if(0===a._status||-1===a._status)a._status=2,a._result=b;});-1===a._status&&(a._status=0,a._result=b);}if(1===a._status)return a._result.default;throw a._result;}
157
+ var U={current:null},V={transition:null},W={ReactCurrentDispatcher:U,ReactCurrentBatchConfig:V,ReactCurrentOwner:K};function X(){throw Error("act(...) is not supported in production builds of React.");}
158
+ react_production_min.Children={map:S,forEach:function(a,b,e){S(a,function(){b.apply(this,arguments);},e);},count:function(a){var b=0;S(a,function(){b++;});return b},toArray:function(a){return S(a,function(a){return a})||[]},only:function(a){if(!O(a))throw Error("React.Children.only expected to receive a single React element child.");return a}};react_production_min.Component=E;react_production_min.Fragment=p;react_production_min.Profiler=r;react_production_min.PureComponent=G;react_production_min.StrictMode=q;react_production_min.Suspense=w;
159
+ react_production_min.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=W;react_production_min.act=X;
160
+ react_production_min.cloneElement=function(a,b,e){if(null===a||void 0===a)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+a+".");var d=C({},a.props),c=a.key,k=a.ref,h=a._owner;if(null!=b){void 0!==b.ref&&(k=b.ref,h=K.current);void 0!==b.key&&(c=""+b.key);if(a.type&&a.type.defaultProps)var g=a.type.defaultProps;for(f in b)J.call(b,f)&&!L.hasOwnProperty(f)&&(d[f]=void 0===b[f]&&void 0!==g?g[f]:b[f]);}var f=arguments.length-2;if(1===f)d.children=e;else if(1<f){g=Array(f);
161
+ for(var m=0;m<f;m++)g[m]=arguments[m+2];d.children=g;}return {$$typeof:l,type:a.type,key:c,ref:k,props:d,_owner:h}};react_production_min.createContext=function(a){a={$$typeof:u,_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null};a.Provider={$$typeof:t,_context:a};return a.Consumer=a};react_production_min.createElement=M;react_production_min.createFactory=function(a){var b=M.bind(null,a);b.type=a;return b};react_production_min.createRef=function(){return {current:null}};
162
+ react_production_min.forwardRef=function(a){return {$$typeof:v,render:a}};react_production_min.isValidElement=O;react_production_min.lazy=function(a){return {$$typeof:y,_payload:{_status:-1,_result:a},_init:T}};react_production_min.memo=function(a,b){return {$$typeof:x,type:a,compare:void 0===b?null:b}};react_production_min.startTransition=function(a){var b=V.transition;V.transition={};try{a();}finally{V.transition=b;}};react_production_min.unstable_act=X;react_production_min.useCallback=function(a,b){return U.current.useCallback(a,b)};react_production_min.useContext=function(a){return U.current.useContext(a)};
163
+ react_production_min.useDebugValue=function(){};react_production_min.useDeferredValue=function(a){return U.current.useDeferredValue(a)};react_production_min.useEffect=function(a,b){return U.current.useEffect(a,b)};react_production_min.useId=function(){return U.current.useId()};react_production_min.useImperativeHandle=function(a,b,e){return U.current.useImperativeHandle(a,b,e)};react_production_min.useInsertionEffect=function(a,b){return U.current.useInsertionEffect(a,b)};react_production_min.useLayoutEffect=function(a,b){return U.current.useLayoutEffect(a,b)};
164
+ react_production_min.useMemo=function(a,b){return U.current.useMemo(a,b)};react_production_min.useReducer=function(a,b,e){return U.current.useReducer(a,b,e)};react_production_min.useRef=function(a){return U.current.useRef(a)};react_production_min.useState=function(a){return U.current.useState(a)};react_production_min.useSyncExternalStore=function(a,b,e){return U.current.useSyncExternalStore(a,b,e)};react_production_min.useTransition=function(){return U.current.useTransition()};react_production_min.version="18.3.1";
165
+
166
+ {
167
+ react.exports = react_production_min;
168
+ }
169
+
170
+ var React = react.exports;
171
+ var vanilla = vanilla$1;
172
+
173
+ const identity = (arg) => arg;
174
+ function useStore(api, selector = identity) {
175
+ const slice = React.useSyncExternalStore(
176
+ api.subscribe,
177
+ () => selector(api.getState()),
178
+ () => selector(api.getInitialState())
179
+ );
180
+ React.useDebugValue(slice);
181
+ return slice;
182
+ }
183
+ const createImpl = (createState) => {
184
+ const api = vanilla.createStore(createState);
185
+ const useBoundStore = (selector) => useStore(api, selector);
186
+ Object.assign(useBoundStore, api);
187
+ return useBoundStore;
188
+ };
189
+ const create = (createState) => createState ? createImpl(createState) : createImpl;
190
+
191
+ react$1.create = create;
192
+ react$1.useStore = useStore;
193
+
194
+ (function (exports) {
195
+
196
+ var vanilla = vanilla$1;
197
+ var react = react$1;
198
+
199
+
200
+
201
+ Object.keys(vanilla).forEach(function (k) {
202
+ if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
203
+ enumerable: true,
204
+ get: function () { return vanilla[k]; }
205
+ });
206
+ });
207
+ Object.keys(react).forEach(function (k) {
208
+ if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
209
+ enumerable: true,
210
+ get: function () { return react[k]; }
211
+ });
212
+ });
213
+ }(zustand));
214
+
215
+ // Zustand store for Searchcraft state
216
+ const useSearchcraftStore = zustand.create((set, get) => {
217
+ let searchcraft = null;
218
+ let debuggerInstance = null;
219
+ const log = (level, message) => {
220
+ if (debuggerInstance) {
221
+ switch (level) {
222
+ case d.DEBUG:
223
+ debuggerInstance.debug(message);
224
+ break;
225
+ case d.INFO:
226
+ debuggerInstance.info(message);
227
+ break;
228
+ case d.WARN:
229
+ debuggerInstance.warn(message);
230
+ break;
231
+ case d.ERROR:
232
+ debuggerInstance.error(message);
233
+ break;
234
+ }
235
+ }
236
+ };
237
+ return {
238
+ query: '',
239
+ isRequesting: false,
240
+ searchResults: null,
241
+ facets: null,
242
+ selectedFilters: [],
243
+ searchParams: {
244
+ mode: 'fuzzy',
245
+ sort: 'asc',
246
+ },
247
+ setQuery: (query) => set({ query }),
248
+ setSearchResults: (results) => set({ searchResults: results }),
249
+ setFacets: (facets) => set({ facets }),
250
+ setSelectedFilters: (filters) => set({ selectedFilters: filters }),
251
+ setIsRequesting: (isRequesting) => set({ isRequesting }),
252
+ setSearchParams: (params) => set((state) => ({
253
+ searchParams: Object.assign(Object.assign({}, state.searchParams), params),
254
+ })),
255
+ setYearsRange: (yearsRange) => set((state) => ({
256
+ searchParams: Object.assign(Object.assign({}, state.searchParams), { yearsRange }),
257
+ })),
258
+ search: async () => {
259
+ const { query, selectedFilters, setIsRequesting, setSearchResults, setFacets, searchParams, } = get();
260
+ if (!searchcraft) {
261
+ throw new Error('Searchcraft instance is not initialized.');
262
+ }
263
+ setIsRequesting(true);
264
+ log(d.INFO, `Starting search with query: "${query}"`);
265
+ try {
266
+ const counts = selectedFilters.reduce((acc, filter) => {
267
+ const cleanedFilter = filter.replace(/^section:/, '');
268
+ acc[cleanedFilter] = 1;
269
+ return acc;
270
+ }, {});
271
+ const searchRequest = {
272
+ query,
273
+ mode: searchParams.mode,
274
+ sort: searchParams.sort,
275
+ facets: selectedFilters.length > 0 ? { section: { counts } } : null,
276
+ yearsRange: searchParams.yearsRange,
277
+ };
278
+ const results = await searchcraft.search(searchRequest);
279
+ setSearchResults(results);
280
+ const updatedFacets = results.data.facets || null;
281
+ setFacets(updatedFacets);
282
+ log(d.DEBUG, `Search results: ${JSON.stringify(results)}`);
283
+ log(d.DEBUG, `Updated facets: ${JSON.stringify(updatedFacets)}`);
284
+ }
285
+ catch (error) {
286
+ console.error(`Search failed: ${error.message}`);
287
+ log(d.ERROR, `Search failed with error: ${error.message}`);
288
+ }
289
+ finally {
290
+ setIsRequesting(false);
291
+ }
292
+ },
293
+ initialize: (searchcraftInstance, debug = false) => {
294
+ searchcraft = searchcraftInstance;
295
+ debuggerInstance = debug
296
+ ? new b({ logLevel: d.DEBUG })
297
+ : null;
298
+ log(d.INFO, 'Searchcraft store initialized.');
299
+ },
300
+ };
301
+ });
302
+ const useThemeStore = zustand.create((set) => ({
303
+ theme: 'light',
304
+ toggleTheme: () => set((state) => ({ theme: state.theme === 'light' ? 'dark' : 'light' })),
305
+ }));
306
+
307
+ export { useThemeStore as a, g, useSearchcraftStore as u };
308
+
309
+ //# sourceMappingURL=p-33bb5c45.js.map