@searchcraft/javascript-sdk 0.1.3 → 0.1.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 (230) 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-e7bd239c.js +1270 -0
  6. package/dist/cjs/index-e7bd239c.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_13.cjs.entry.js +458 -0
  12. package/dist/cjs/searchcraft-auto-search-form_13.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-ab3978ce.js +251 -0
  22. package/dist/cjs/store-ab3978ce.js.map +1 -0
  23. package/dist/cjs/utils-39791159.js +53 -0
  24. package/dist/cjs/utils-39791159.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 +45 -0
  30. package/dist/collection/assets/searchcraft-search-icon-set.js.map +1 -0
  31. package/dist/collection/collection-manifest.json +27 -0
  32. package/dist/collection/components/searchcraft-auto-search-form/searchcraft-auto-search-form.js +294 -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 +19 -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 +14 -0
  38. package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.js +309 -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 +210 -0
  41. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js +111 -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 +20 -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 +96 -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-input/searchcraft-input.js +276 -0
  54. package/dist/collection/components/searchcraft-input/searchcraft-input.js.map +1 -0
  55. package/dist/collection/components/searchcraft-input/searchcraft-input.module.css +241 -0
  56. package/dist/collection/components/searchcraft-input-caption/searchcraft-input-caption.js +122 -0
  57. package/dist/collection/components/searchcraft-input-caption/searchcraft-input-caption.js.map +1 -0
  58. package/dist/collection/components/searchcraft-input-caption/searchcraft-input-caption.module.css +79 -0
  59. package/dist/collection/components/searchcraft-input-icon/searchcraft-input-icon.js +71 -0
  60. package/dist/collection/components/searchcraft-input-icon/searchcraft-input-icon.js.map +1 -0
  61. package/dist/collection/components/searchcraft-input-icon/searchcraft-input-icon.module.css +21 -0
  62. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.js +77 -0
  63. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.js.map +1 -0
  64. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.module.css +21 -0
  65. package/dist/collection/components/searchcraft-spinner-dark/searchcraft-spinner-dark.js +19 -0
  66. package/dist/collection/components/searchcraft-spinner-dark/searchcraft-spinner-dark.js.map +1 -0
  67. package/dist/collection/components/searchcraft-spinner-dark/searchcraft-spinner-dark.module.css +35 -0
  68. package/dist/collection/components/searchcraft-spinner-light/searchcraft-spinner-light.js +19 -0
  69. package/dist/collection/components/searchcraft-spinner-light/searchcraft-spinner-light.js.map +1 -0
  70. package/dist/collection/components/searchcraft-spinner-light/searchcraft-spinner-light.module.css +26 -0
  71. package/dist/collection/index.js +14 -0
  72. package/dist/collection/index.js.map +1 -0
  73. package/dist/collection/provider/store.js +68 -0
  74. package/dist/collection/provider/store.js.map +1 -0
  75. package/dist/collection/utils/utils.js +45 -0
  76. package/dist/collection/utils/utils.js.map +1 -0
  77. package/dist/components/index.js +5 -0
  78. package/dist/components/index.js.map +1 -0
  79. package/dist/{searchcraft-javascript-sdk/searchcraft-search-icon-set.entry.js → components/p-04e7305e.js} +25 -7
  80. package/dist/components/p-04e7305e.js.map +1 -0
  81. package/dist/components/p-0c25e95d.js +41 -0
  82. package/dist/components/p-0c25e95d.js.map +1 -0
  83. package/dist/{searchcraft-javascript-sdk/searchcraft-clear-icon-set.entry.js → components/p-155f7a59.js} +25 -7
  84. package/dist/components/p-155f7a59.js.map +1 -0
  85. package/dist/components/p-16a533e3.js +34 -0
  86. package/dist/components/p-16a533e3.js.map +1 -0
  87. package/dist/components/p-17c94ac1.js +48 -0
  88. package/dist/components/p-17c94ac1.js.map +1 -0
  89. package/dist/{searchcraft-javascript-sdk/searchcraft-input-caption.entry.js → components/p-199065b5.js} +32 -10
  90. package/dist/components/p-199065b5.js.map +1 -0
  91. package/dist/components/p-2cc8c074.js +69 -0
  92. package/dist/components/p-2cc8c074.js.map +1 -0
  93. package/dist/components/p-36c95064.js +247 -0
  94. package/dist/components/p-36c95064.js.map +1 -0
  95. package/dist/{searchcraft-javascript-sdk/searchcraft-input.entry.js → components/p-4244171c.js} +80 -11
  96. package/dist/components/p-4244171c.js.map +1 -0
  97. package/dist/{searchcraft-javascript-sdk/searchcraft-base-search-result.entry.js → components/p-4f201f41.js} +37 -8
  98. package/dist/components/p-4f201f41.js.map +1 -0
  99. package/dist/{searchcraft-javascript-sdk/index-d6567b9c.js → components/p-5cdc6210.js} +2 -10
  100. package/dist/components/p-5cdc6210.js.map +1 -0
  101. package/dist/components/p-9283a3c2.js +50 -0
  102. package/dist/components/p-9283a3c2.js.map +1 -0
  103. package/dist/components/p-a7ab9d65.js +50 -0
  104. package/dist/components/p-a7ab9d65.js.map +1 -0
  105. package/dist/components/p-c69651f6.js +1106 -0
  106. package/dist/components/p-c69651f6.js.map +1 -0
  107. package/dist/components/p-e8e40447.js +34 -0
  108. package/dist/components/p-e8e40447.js.map +1 -0
  109. package/dist/components/p-f83f2b59.js +62 -0
  110. package/dist/components/p-f83f2b59.js.map +1 -0
  111. package/dist/components/searchcraft-auto-search-form.js +185 -0
  112. package/dist/components/searchcraft-auto-search-form.js.map +1 -0
  113. package/dist/components/searchcraft-base-search-form.js +153 -0
  114. package/dist/components/searchcraft-base-search-form.js.map +1 -0
  115. package/dist/components/searchcraft-base-search-result.js +8 -0
  116. package/dist/components/searchcraft-base-search-result.js.map +1 -0
  117. package/dist/{searchcraft-javascript-sdk/searchcraft-base-search-results.entry.js → components/searchcraft-base-search-results.js} +47 -11
  118. package/dist/components/searchcraft-base-search-results.js.map +1 -0
  119. package/dist/components/searchcraft-button-icon.js +33 -0
  120. package/dist/components/searchcraft-button-icon.js.map +1 -0
  121. package/dist/components/searchcraft-button.js +8 -0
  122. package/dist/components/searchcraft-button.js.map +1 -0
  123. package/dist/components/searchcraft-clear-icon-set.js +8 -0
  124. package/dist/components/searchcraft-clear-icon-set.js.map +1 -0
  125. package/dist/components/searchcraft-clear-input-button.js +8 -0
  126. package/dist/components/searchcraft-clear-input-button.js.map +1 -0
  127. package/dist/components/searchcraft-error-message.js +8 -0
  128. package/dist/components/searchcraft-error-message.js.map +1 -0
  129. package/dist/components/searchcraft-input-caption.js +8 -0
  130. package/dist/components/searchcraft-input-caption.js.map +1 -0
  131. package/dist/components/searchcraft-input-icon.js +8 -0
  132. package/dist/components/searchcraft-input-icon.js.map +1 -0
  133. package/dist/components/searchcraft-input-label.js +8 -0
  134. package/dist/components/searchcraft-input-label.js.map +1 -0
  135. package/dist/components/searchcraft-input.js +8 -0
  136. package/dist/components/searchcraft-input.js.map +1 -0
  137. package/dist/components/searchcraft-search-icon-set.js +8 -0
  138. package/dist/components/searchcraft-search-icon-set.js.map +1 -0
  139. package/dist/components/searchcraft-spinner-dark.js +8 -0
  140. package/dist/components/searchcraft-spinner-dark.js.map +1 -0
  141. package/dist/components/searchcraft-spinner-light.js +8 -0
  142. package/dist/components/searchcraft-spinner-light.js.map +1 -0
  143. package/dist/esm/index-0d9f850d.js +1242 -0
  144. package/dist/esm/index-0d9f850d.js.map +1 -0
  145. package/dist/esm/index-72ac5051.js +82 -0
  146. package/dist/esm/index-72ac5051.js.map +1 -0
  147. package/dist/esm/index.js +4 -0
  148. package/dist/esm/index.js.map +1 -0
  149. package/dist/esm/loader.js +13 -0
  150. package/dist/esm/loader.js.map +1 -0
  151. package/dist/esm/searchcraft-auto-search-form_13.entry.js +442 -0
  152. package/dist/esm/searchcraft-auto-search-form_13.entry.js.map +1 -0
  153. package/dist/{searchcraft-javascript-sdk → esm}/searchcraft-base-search-form.entry.js +4 -4
  154. package/dist/esm/searchcraft-base-search-form.entry.js.map +1 -0
  155. package/dist/{searchcraft-javascript-sdk → esm}/searchcraft-button-icon.entry.js +1 -1
  156. package/dist/esm/searchcraft-button-icon.entry.js.map +1 -0
  157. package/dist/{searchcraft-javascript-sdk → esm}/searchcraft-button.entry.js +4 -4
  158. package/dist/esm/searchcraft-button.entry.js.map +1 -0
  159. package/dist/esm/searchcraft-javascript-sdk.js +22 -0
  160. package/dist/esm/searchcraft-javascript-sdk.js.map +1 -0
  161. package/dist/esm/store-e55b12aa.js +247 -0
  162. package/dist/esm/store-e55b12aa.js.map +1 -0
  163. package/dist/index.cjs.js +1 -0
  164. package/dist/index.js +1 -0
  165. package/dist/loader/cdn.js +1 -0
  166. package/dist/loader/index.cjs.js +1 -0
  167. package/dist/loader/index.d.ts +24 -0
  168. package/dist/loader/index.es2017.js +1 -0
  169. package/dist/loader/index.js +2 -0
  170. package/dist/loader/package.json +11 -0
  171. package/dist/searchcraft-javascript-sdk/index.esm.js +1 -14
  172. package/dist/searchcraft-javascript-sdk/index.esm.js.map +1 -1
  173. package/dist/searchcraft-javascript-sdk/p-04e2f067.entry.js +2 -0
  174. package/dist/searchcraft-javascript-sdk/p-04e2f067.entry.js.map +1 -0
  175. package/dist/searchcraft-javascript-sdk/p-09af71e8.entry.js +2 -0
  176. package/dist/searchcraft-javascript-sdk/p-09af71e8.entry.js.map +1 -0
  177. package/dist/searchcraft-javascript-sdk/p-17c94ac1.js +2 -0
  178. package/dist/searchcraft-javascript-sdk/p-17c94ac1.js.map +1 -0
  179. package/dist/searchcraft-javascript-sdk/p-329c3f66.js +3 -0
  180. package/dist/searchcraft-javascript-sdk/p-329c3f66.js.map +1 -0
  181. package/dist/searchcraft-javascript-sdk/p-36c95064.js +11 -0
  182. package/dist/searchcraft-javascript-sdk/p-36c95064.js.map +1 -0
  183. package/dist/searchcraft-javascript-sdk/p-40791ead.entry.js +2 -0
  184. package/dist/searchcraft-javascript-sdk/p-40791ead.entry.js.map +1 -0
  185. package/dist/searchcraft-javascript-sdk/p-4d18a44a.entry.js +2 -0
  186. package/dist/searchcraft-javascript-sdk/p-4d18a44a.entry.js.map +1 -0
  187. package/dist/searchcraft-javascript-sdk/p-5cdc6210.js +7 -0
  188. package/dist/searchcraft-javascript-sdk/p-5cdc6210.js.map +1 -0
  189. package/dist/searchcraft-javascript-sdk/p-e1255160.js +2 -0
  190. package/dist/searchcraft-javascript-sdk/p-e1255160.js.map +1 -0
  191. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js +1 -48
  192. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js.map +1 -1
  193. package/dist/types/index.d.ts +1 -1
  194. package/package.json +1 -1
  195. package/dist/searchcraft-javascript-sdk/_commonjsHelpers-63cbe26c.js +0 -34
  196. package/dist/searchcraft-javascript-sdk/_commonjsHelpers-63cbe26c.js.map +0 -1
  197. package/dist/searchcraft-javascript-sdk/index-be6bffea.js +0 -3043
  198. package/dist/searchcraft-javascript-sdk/index-be6bffea.js.map +0 -1
  199. package/dist/searchcraft-javascript-sdk/index-d6567b9c.js.map +0 -1
  200. package/dist/searchcraft-javascript-sdk/searchcraft-auto-search-form.entry.js +0 -93
  201. package/dist/searchcraft-javascript-sdk/searchcraft-auto-search-form.entry.js.map +0 -1
  202. package/dist/searchcraft-javascript-sdk/searchcraft-base-search-form.entry.js.map +0 -1
  203. package/dist/searchcraft-javascript-sdk/searchcraft-base-search-result.entry.js.map +0 -1
  204. package/dist/searchcraft-javascript-sdk/searchcraft-base-search-results.entry.js.map +0 -1
  205. package/dist/searchcraft-javascript-sdk/searchcraft-button-icon.entry.js.map +0 -1
  206. package/dist/searchcraft-javascript-sdk/searchcraft-button.entry.js.map +0 -1
  207. package/dist/searchcraft-javascript-sdk/searchcraft-clear-icon-set.entry.js.map +0 -1
  208. package/dist/searchcraft-javascript-sdk/searchcraft-clear-input-button.entry.js +0 -31
  209. package/dist/searchcraft-javascript-sdk/searchcraft-clear-input-button.entry.js.map +0 -1
  210. package/dist/searchcraft-javascript-sdk/searchcraft-error-message.entry.js +0 -22
  211. package/dist/searchcraft-javascript-sdk/searchcraft-error-message.entry.js.map +0 -1
  212. package/dist/searchcraft-javascript-sdk/searchcraft-input-caption.entry.js.map +0 -1
  213. package/dist/searchcraft-javascript-sdk/searchcraft-input-icon.entry.js +0 -23
  214. package/dist/searchcraft-javascript-sdk/searchcraft-input-icon.entry.js.map +0 -1
  215. package/dist/searchcraft-javascript-sdk/searchcraft-input-label.entry.js +0 -30
  216. package/dist/searchcraft-javascript-sdk/searchcraft-input-label.entry.js.map +0 -1
  217. package/dist/searchcraft-javascript-sdk/searchcraft-input.entry.js.map +0 -1
  218. package/dist/searchcraft-javascript-sdk/searchcraft-search-icon-set.entry.js.map +0 -1
  219. package/dist/searchcraft-javascript-sdk/searchcraft-spinner-dark.entry.js +0 -17
  220. package/dist/searchcraft-javascript-sdk/searchcraft-spinner-dark.entry.js.map +0 -1
  221. package/dist/searchcraft-javascript-sdk/searchcraft-spinner-light.entry.js +0 -17
  222. package/dist/searchcraft-javascript-sdk/searchcraft-spinner-light.entry.js.map +0 -1
  223. package/dist/searchcraft-javascript-sdk/shadow-css-423dab2c.js +0 -334
  224. package/dist/searchcraft-javascript-sdk/shadow-css-423dab2c.js.map +0 -1
  225. package/dist/searchcraft-javascript-sdk/store-b50263a1.js +0 -3008
  226. package/dist/searchcraft-javascript-sdk/store-b50263a1.js.map +0 -1
  227. /package/dist/{searchcraft-javascript-sdk → esm}/app-globals-0f993ce5.js +0 -0
  228. /package/dist/{searchcraft-javascript-sdk → esm}/app-globals-0f993ce5.js.map +0 -0
  229. /package/dist/{searchcraft-javascript-sdk → esm}/utils-7bff0c78.js +0 -0
  230. /package/dist/{searchcraft-javascript-sdk → esm}/utils-7bff0c78.js.map +0 -0
@@ -0,0 +1,45 @@
1
+ import { h } from "@stencil/core";
2
+ export class SearchcraftClearIconSet {
3
+ constructor() {
4
+ this.type = 'clear-light';
5
+ }
6
+ render() {
7
+ switch (this.type) {
8
+ case 'clear-light':
9
+ return (h("svg", { width: '22', height: '22', viewBox: '0 0 22 22', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', "aria-labelledby": 'icon-title' }, h("title", { id: 'icon-title' }, "Searchcraft Clear Input Icon Light"), h("path", { d: 'M14 8L8 14M8 8L14 14M21 11C21 16.5228 16.5228 21 11 21C5.47715 21 1 16.5228 1 11C1 5.47715 5.47715 1 11 1C16.5228 1 21 5.47715 21 11Z', stroke: 'black', "stroke-width": '1.5', "stroke-linecap": 'round', "stroke-linejoin": 'round' })));
10
+ case 'clear-dark':
11
+ return (h("svg", { width: '22', height: '22', viewBox: '0 0 22 22', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', "aria-labelledby": 'icon-title' }, h("title", { id: 'icon-title' }, "Searchcraft Clear Input Icon Dark"), h("path", { d: 'M14 8L8 14M8 8L14 14M21 11C21 16.5228 16.5228 21 11 21C5.47715 21 1 16.5228 1 11C1 5.47715 5.47715 1 11 1C16.5228 1 21 5.47715 21 11Z', stroke: 'white', "stroke-width": '1.5', "stroke-linecap": 'round', "stroke-linejoin": 'round' })));
12
+ case 'arrow-light':
13
+ return (h("svg", { width: '20', height: '21', viewBox: '0 0 20 21', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', "aria-labelledby": 'icon-title' }, h("title", { id: 'icon-title' }, "Searchcraft Arrow Right Icon Light"), h("path", { d: 'M7.5 15.0444L12.5 10.0444L7.5 5.04443', stroke: '#737373', "stroke-width": '1.5', "stroke-linecap": 'round', "stroke-linejoin": 'round' })));
14
+ case 'arrow-dark':
15
+ return (h("svg", { width: '8', height: '12', viewBox: '0 0 8 12', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', "aria-labelledby": 'icon-title' }, h("title", { id: 'icon-title' }, "Searchcraft Arrow Right Icon Dark"), h("path", { d: 'M1.5 11L6.5 6L1.5 1', stroke: '#BFBFBF', "stroke-width": '1.5', "stroke-linecap": 'round', "stroke-linejoin": 'round' })));
16
+ default:
17
+ return null;
18
+ }
19
+ }
20
+ static get is() { return "searchcraft-clear-icon-set"; }
21
+ static get encapsulation() { return "shadow"; }
22
+ static get properties() {
23
+ return {
24
+ "type": {
25
+ "type": "string",
26
+ "mutable": false,
27
+ "complexType": {
28
+ "original": "'clear-light' | 'clear-dark' | 'arrow-light' | 'arrow-dark'",
29
+ "resolved": "\"arrow-dark\" | \"arrow-light\" | \"clear-dark\" | \"clear-light\"",
30
+ "references": {}
31
+ },
32
+ "required": false,
33
+ "optional": false,
34
+ "docs": {
35
+ "tags": [],
36
+ "text": "Type of the icon to display.\nOptions: 'clear-light', 'clear-dark', 'arrow-light', 'arrow-dark'"
37
+ },
38
+ "attribute": "type",
39
+ "reflect": false,
40
+ "defaultValue": "'clear-light'"
41
+ }
42
+ };
43
+ }
44
+ }
45
+ //# sourceMappingURL=searchcraft-clear-icon-set.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"searchcraft-clear-icon-set.js","sourceRoot":"","sources":["../../src/assets/searchcraft-clear-icon-set.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAMnD,MAAM,OAAO,uBAAuB;;oBAMhC,aAAa;;IAEf,MAAM;QACJ,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,aAAa;gBAChB,OAAO,CACL,WACE,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,4BAA4B,qBAClB,YAAY;oBAE5B,aAAO,EAAE,EAAC,YAAY,yCAA2C;oBACjE,YACE,CAAC,EAAC,uIAAuI,EACzI,MAAM,EAAC,OAAO,kBACD,KAAK,oBACH,OAAO,qBACN,OAAO,GACvB,CACE,CACP,CAAC;YACJ,KAAK,YAAY;gBACf,OAAO,CACL,WACE,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,4BAA4B,qBAClB,YAAY;oBAE5B,aAAO,EAAE,EAAC,YAAY,wCAA0C;oBAChE,YACE,CAAC,EAAC,uIAAuI,EACzI,MAAM,EAAC,OAAO,kBACD,KAAK,oBACH,OAAO,qBACN,OAAO,GACvB,CACE,CACP,CAAC;YACJ,KAAK,aAAa;gBAChB,OAAO,CACL,WACE,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,4BAA4B,qBAClB,YAAY;oBAE5B,aAAO,EAAE,EAAC,YAAY,yCAA2C;oBACjE,YACE,CAAC,EAAC,uCAAuC,EACzC,MAAM,EAAC,SAAS,kBACH,KAAK,oBACH,OAAO,qBACN,OAAO,GACvB,CACE,CACP,CAAC;YACJ,KAAK,YAAY;gBACf,OAAO,CACL,WACE,KAAK,EAAC,GAAG,EACT,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,UAAU,EAClB,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,4BAA4B,qBAClB,YAAY;oBAE5B,aAAO,EAAE,EAAC,YAAY,wCAA0C;oBAChE,YACE,CAAC,EAAC,qBAAqB,EACvB,MAAM,EAAC,SAAS,kBACH,KAAK,oBACH,OAAO,qBACN,OAAO,GACvB,CACE,CACP,CAAC;YAEJ;gBACE,OAAO,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'searchcraft-clear-icon-set',\n shadow: true,\n})\nexport class SearchcraftClearIconSet {\n /**\n * Type of the icon to display.\n * Options: 'clear-light', 'clear-dark', 'arrow-light', 'arrow-dark'\n */\n @Prop() type: 'clear-light' | 'clear-dark' | 'arrow-light' | 'arrow-dark' =\n 'clear-light';\n\n render() {\n switch (this.type) {\n case 'clear-light':\n return (\n <svg\n width='22'\n height='22'\n viewBox='0 0 22 22'\n fill='none'\n xmlns='http://www.w3.org/2000/svg'\n aria-labelledby='icon-title'\n >\n <title id='icon-title'>Searchcraft Clear Input Icon Light</title>\n <path\n d='M14 8L8 14M8 8L14 14M21 11C21 16.5228 16.5228 21 11 21C5.47715 21 1 16.5228 1 11C1 5.47715 5.47715 1 11 1C16.5228 1 21 5.47715 21 11Z'\n stroke='black'\n stroke-width='1.5'\n stroke-linecap='round'\n stroke-linejoin='round'\n />\n </svg>\n );\n case 'clear-dark':\n return (\n <svg\n width='22'\n height='22'\n viewBox='0 0 22 22'\n fill='none'\n xmlns='http://www.w3.org/2000/svg'\n aria-labelledby='icon-title'\n >\n <title id='icon-title'>Searchcraft Clear Input Icon Dark</title>\n <path\n d='M14 8L8 14M8 8L14 14M21 11C21 16.5228 16.5228 21 11 21C5.47715 21 1 16.5228 1 11C1 5.47715 5.47715 1 11 1C16.5228 1 21 5.47715 21 11Z'\n stroke='white'\n stroke-width='1.5'\n stroke-linecap='round'\n stroke-linejoin='round'\n />\n </svg>\n );\n case 'arrow-light':\n return (\n <svg\n width='20'\n height='21'\n viewBox='0 0 20 21'\n fill='none'\n xmlns='http://www.w3.org/2000/svg'\n aria-labelledby='icon-title'\n >\n <title id='icon-title'>Searchcraft Arrow Right Icon Light</title>\n <path\n d='M7.5 15.0444L12.5 10.0444L7.5 5.04443'\n stroke='#737373'\n stroke-width='1.5'\n stroke-linecap='round'\n stroke-linejoin='round'\n />\n </svg>\n );\n case 'arrow-dark':\n return (\n <svg\n width='8'\n height='12'\n viewBox='0 0 8 12'\n fill='none'\n xmlns='http://www.w3.org/2000/svg'\n aria-labelledby='icon-title'\n >\n <title id='icon-title'>Searchcraft Arrow Right Icon Dark</title>\n <path\n d='M1.5 11L6.5 6L1.5 1'\n stroke='#BFBFBF'\n stroke-width='1.5'\n stroke-linecap='round'\n stroke-linejoin='round'\n />\n </svg>\n );\n\n default:\n return null;\n }\n }\n}\n"]}
@@ -0,0 +1,45 @@
1
+ import { h } from "@stencil/core";
2
+ export class SearchcraftSearchIconSet {
3
+ constructor() {
4
+ this.type = 'search-dark';
5
+ }
6
+ render() {
7
+ switch (this.type) {
8
+ case 'search-light':
9
+ return (h("svg", { width: '20', height: '20', viewBox: '0 0 20 20', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', "aria-labelledby": 'searchcraft-title' }, h("title", { id: 'searchcraft-title' }, "Searchcraft Search Icon Light"), h("path", { d: 'M17.5 17.5L13.875 13.875M15.8333 9.16667C15.8333 12.8486 12.8486 15.8333 9.16667 15.8333C5.48477 15.8333 2.5 12.8486 2.5 9.16667C2.5 5.48477 5.48477 2.5 9.16667 2.5C12.8486 2.5 15.8333 5.48477 15.8333 9.16667Z', stroke: '#404040', "stroke-width": '1.5', "stroke-linecap": 'round', "stroke-linejoin": 'round' })));
10
+ case 'search-dark':
11
+ return (h("svg", { width: '18', height: '18', viewBox: '0 0 18 18', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', "aria-labelledby": 'searchcraft-title' }, h("title", { id: 'searchcraft-title' }, "Searchcraft Search Icon Dark"), h("path", { d: 'M16.5 16.5L12.875 12.875M14.8333 8.16667C14.8333 11.8486 11.8486 14.8333 8.16667 14.8333C4.48477 14.8333 1.5 11.8486 1.5 8.16667C1.5 4.48477 4.48477 1.5 8.16667 1.5C11.8486 1.5 14.8333 4.48477 14.8333 8.16667Z', stroke: '#E6E6E6', "stroke-width": '1.5', "stroke-linecap": 'round', "stroke-linejoin": 'round' })));
12
+ case 'error-light':
13
+ return (h("svg", { width: '20', height: '20', viewBox: '0 0 20 20', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', "aria-labelledby": 'searchcraft-title' }, h("title", { id: 'searchcraft-title' }, "Searchcraft Error Search Icon Light"), h("path", { d: 'M17.5 17.5L13.875 13.875M15.8333 9.16667C15.8333 12.8486 12.8486 15.8333 9.16667 15.8333C5.48477 15.8333 2.5 12.8486 2.5 9.16667C2.5 5.48477 5.48477 2.5 9.16667 2.5C12.8486 2.5 15.8333 5.48477 15.8333 9.16667Z', stroke: '#737373', "stroke-width": '1.5', "stroke-linecap": 'round', "stroke-linejoin": 'round' })));
14
+ case 'error-dark':
15
+ return (h("svg", { width: '18', height: '18', viewBox: '0 0 18 18', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', "aria-labelledby": 'searchcraft-title' }, h("title", { id: 'searchcraft-title' }, "Searchcraft Error Search Icon Dark"), h("path", { d: 'M16.5 16.5L12.875 12.875M14.8333 8.16667C14.8333 11.8486 11.8486 14.8333 8.16667 14.8333C4.48477 14.8333 1.5 11.8486 1.5 8.16667C1.5 4.48477 4.48477 1.5 8.16667 1.5C11.8486 1.5 14.8333 4.48477 14.8333 8.16667Z', stroke: '#BFBFBF', "stroke-width": '1.5', "stroke-linecap": 'round', "stroke-linejoin": 'round' })));
16
+ default:
17
+ return null;
18
+ }
19
+ }
20
+ static get is() { return "searchcraft-search-icon-set"; }
21
+ static get encapsulation() { return "shadow"; }
22
+ static get properties() {
23
+ return {
24
+ "type": {
25
+ "type": "string",
26
+ "mutable": false,
27
+ "complexType": {
28
+ "original": "'search-light' | 'search-dark' | 'error-light' | 'error-dark'",
29
+ "resolved": "\"error-dark\" | \"error-light\" | \"search-dark\" | \"search-light\"",
30
+ "references": {}
31
+ },
32
+ "required": false,
33
+ "optional": false,
34
+ "docs": {
35
+ "tags": [],
36
+ "text": "Type of the icon to display.\nOptions: ''search-light', search-dark', 'error-light', 'error-dark'"
37
+ },
38
+ "attribute": "type",
39
+ "reflect": false,
40
+ "defaultValue": "'search-dark'"
41
+ }
42
+ };
43
+ }
44
+ }
45
+ //# sourceMappingURL=searchcraft-search-icon-set.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"searchcraft-search-icon-set.js","sourceRoot":"","sources":["../../src/assets/searchcraft-search-icon-set.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAMnD,MAAM,OAAO,wBAAwB;;oBAMjC,aAAa;;IAEf,MAAM;QACJ,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,cAAc;gBACjB,OAAO,CACL,WACE,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,4BAA4B,qBAClB,mBAAmB;oBAEnC,aAAO,EAAE,EAAC,mBAAmB,oCAAsC;oBACnE,YACE,CAAC,EAAC,mNAAmN,EACrN,MAAM,EAAC,SAAS,kBACH,KAAK,oBACH,OAAO,qBACN,OAAO,GACvB,CACE,CACP,CAAC;YACJ,KAAK,aAAa;gBAChB,OAAO,CACL,WACE,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,4BAA4B,qBAClB,mBAAmB;oBAEnC,aAAO,EAAE,EAAC,mBAAmB,mCAAqC;oBAClE,YACE,CAAC,EAAC,mNAAmN,EACrN,MAAM,EAAC,SAAS,kBACH,KAAK,oBACH,OAAO,qBACN,OAAO,GACvB,CACE,CACP,CAAC;YACJ,KAAK,aAAa;gBAChB,OAAO,CACL,WACE,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,4BAA4B,qBAClB,mBAAmB;oBAEnC,aAAO,EAAE,EAAC,mBAAmB,0CAErB;oBACR,YACE,CAAC,EAAC,mNAAmN,EACrN,MAAM,EAAC,SAAS,kBACH,KAAK,oBACH,OAAO,qBACN,OAAO,GACvB,CACE,CACP,CAAC;YACJ,KAAK,YAAY;gBACf,OAAO,CACL,WACE,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,4BAA4B,qBAClB,mBAAmB;oBAEnC,aAAO,EAAE,EAAC,mBAAmB,yCAErB;oBACR,YACE,CAAC,EAAC,mNAAmN,EACrN,MAAM,EAAC,SAAS,kBACH,KAAK,oBACH,OAAO,qBACN,OAAO,GACvB,CACE,CACP,CAAC;YACJ;gBACE,OAAO,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'searchcraft-search-icon-set',\n shadow: true,\n})\nexport class SearchcraftSearchIconSet {\n /**\n * Type of the icon to display.\n * Options: ''search-light', search-dark', 'error-light', 'error-dark'\n */\n @Prop() type: 'search-light' | 'search-dark' | 'error-light' | 'error-dark' =\n 'search-dark';\n\n render() {\n switch (this.type) {\n case 'search-light':\n return (\n <svg\n width='20'\n height='20'\n viewBox='0 0 20 20'\n fill='none'\n xmlns='http://www.w3.org/2000/svg'\n aria-labelledby='searchcraft-title'\n >\n <title id='searchcraft-title'>Searchcraft Search Icon Light</title>\n <path\n d='M17.5 17.5L13.875 13.875M15.8333 9.16667C15.8333 12.8486 12.8486 15.8333 9.16667 15.8333C5.48477 15.8333 2.5 12.8486 2.5 9.16667C2.5 5.48477 5.48477 2.5 9.16667 2.5C12.8486 2.5 15.8333 5.48477 15.8333 9.16667Z'\n stroke='#404040'\n stroke-width='1.5'\n stroke-linecap='round'\n stroke-linejoin='round'\n />\n </svg>\n );\n case 'search-dark':\n return (\n <svg\n width='18'\n height='18'\n viewBox='0 0 18 18'\n fill='none'\n xmlns='http://www.w3.org/2000/svg'\n aria-labelledby='searchcraft-title'\n >\n <title id='searchcraft-title'>Searchcraft Search Icon Dark</title>\n <path\n d='M16.5 16.5L12.875 12.875M14.8333 8.16667C14.8333 11.8486 11.8486 14.8333 8.16667 14.8333C4.48477 14.8333 1.5 11.8486 1.5 8.16667C1.5 4.48477 4.48477 1.5 8.16667 1.5C11.8486 1.5 14.8333 4.48477 14.8333 8.16667Z'\n stroke='#E6E6E6'\n stroke-width='1.5'\n stroke-linecap='round'\n stroke-linejoin='round'\n />\n </svg>\n );\n case 'error-light':\n return (\n <svg\n width='20'\n height='20'\n viewBox='0 0 20 20'\n fill='none'\n xmlns='http://www.w3.org/2000/svg'\n aria-labelledby='searchcraft-title'\n >\n <title id='searchcraft-title'>\n Searchcraft Error Search Icon Light\n </title>\n <path\n d='M17.5 17.5L13.875 13.875M15.8333 9.16667C15.8333 12.8486 12.8486 15.8333 9.16667 15.8333C5.48477 15.8333 2.5 12.8486 2.5 9.16667C2.5 5.48477 5.48477 2.5 9.16667 2.5C12.8486 2.5 15.8333 5.48477 15.8333 9.16667Z'\n stroke='#737373'\n stroke-width='1.5'\n stroke-linecap='round'\n stroke-linejoin='round'\n />\n </svg>\n );\n case 'error-dark':\n return (\n <svg\n width='18'\n height='18'\n viewBox='0 0 18 18'\n fill='none'\n xmlns='http://www.w3.org/2000/svg'\n aria-labelledby='searchcraft-title'\n >\n <title id='searchcraft-title'>\n Searchcraft Error Search Icon Dark\n </title>\n <path\n d='M16.5 16.5L12.875 12.875M14.8333 8.16667C14.8333 11.8486 11.8486 14.8333 8.16667 14.8333C4.48477 14.8333 1.5 11.8486 1.5 8.16667C1.5 4.48477 4.48477 1.5 8.16667 1.5C11.8486 1.5 14.8333 4.48477 14.8333 8.16667Z'\n stroke='#BFBFBF'\n stroke-width='1.5'\n stroke-linecap='round'\n stroke-linejoin='round'\n />\n </svg>\n );\n default:\n return null;\n }\n }\n}\n"]}
@@ -0,0 +1,27 @@
1
+ {
2
+ "entries": [
3
+ "assets/searchcraft-button-icons.js",
4
+ "assets/searchcraft-clear-icon-set.js",
5
+ "assets/searchcraft-search-icon-set.js",
6
+ "components/searchcraft-input/searchcraft-input.js",
7
+ "components/searchcraft-auto-search-form/searchcraft-auto-search-form.js",
8
+ "components/searchcraft-base-search-form/searchcraft-base-search-form.js",
9
+ "components/searchcraft-base-search-result/searchcraft-base-search-result.js",
10
+ "components/searchcraft-base-search-results/searchcraft-base-search-results.js",
11
+ "components/searchcraft-button/searchcraft-button.js",
12
+ "components/searchcraft-clear-input-button/searchcraft-clear-input-button.js",
13
+ "components/searchcraft-error-message/searchcraft-error-message.js",
14
+ "components/searchcraft-input-caption/searchcraft-input-caption.js",
15
+ "components/searchcraft-input-icon/searchcraft-input-icon.js",
16
+ "components/searchcraft-input-label/searchcraft-input-label.js",
17
+ "components/searchcraft-spinner-dark/searchcraft-spinner-dark.js",
18
+ "components/searchcraft-spinner-light/searchcraft-spinner-light.js"
19
+ ],
20
+ "compiler": {
21
+ "name": "@stencil/core",
22
+ "version": "4.22.3",
23
+ "typescriptVersion": "5.5.4"
24
+ },
25
+ "collections": [],
26
+ "bundles": []
27
+ }
@@ -0,0 +1,294 @@
1
+ import { h, } from "@stencil/core";
2
+ import { CoreSDK as SearchcraftCore, } from "@searchcraft/core";
3
+ import { parseCustomStyles } from "../../utils/utils";
4
+ import { useSearchcraftStore } from "../../provider/store";
5
+ export class SearchcraftAutoSearchForm {
6
+ constructor() {
7
+ this.debounceTimeout = null;
8
+ this.debounceDelay = 300; // 300ms debounce delay
9
+ this.searchStore = useSearchcraftStore.getState();
10
+ this.handleInputChange = (event) => {
11
+ this.query = event.detail;
12
+ this.querySubmit.emit(this.query);
13
+ // Clear the previous debounce timeout
14
+ if (this.debounceTimeout) {
15
+ clearTimeout(this.debounceTimeout);
16
+ }
17
+ // Set a new debounce timeout
18
+ this.debounceTimeout = setTimeout(() => {
19
+ console.log('Debounced search triggered');
20
+ this.runSearch();
21
+ }, this.debounceDelay);
22
+ };
23
+ this.handleClearInput = () => {
24
+ this.query = '';
25
+ console.log('Input cleared');
26
+ if (typeof this.clearInput === 'function') {
27
+ this.clearInput();
28
+ }
29
+ if (this.debounceTimeout) {
30
+ clearTimeout(this.debounceTimeout);
31
+ }
32
+ this.error = false;
33
+ this.searchResults = '';
34
+ };
35
+ this.runSearch = async () => {
36
+ if (this.query.trim() === '') {
37
+ this.error = true;
38
+ this.searchResults = '';
39
+ }
40
+ else {
41
+ this.error = false;
42
+ this.searchStore.setQuery(this.query);
43
+ try {
44
+ await this.searchStore.search();
45
+ this.searchResults = JSON.stringify(this.searchStore.searchResults);
46
+ }
47
+ catch (error) {
48
+ this.error = true;
49
+ }
50
+ }
51
+ };
52
+ this.handleFormSubmit = async (event) => {
53
+ event.preventDefault();
54
+ await this.runSearch();
55
+ };
56
+ this.autoSearchFormClass = '';
57
+ this.clearInput = () => { };
58
+ this.config = {
59
+ apiKey: '',
60
+ endpointURL: '',
61
+ index: [],
62
+ };
63
+ this.customStylesForInput = {};
64
+ this.inputCaptionValue = '';
65
+ this.labelForInput = '';
66
+ this.placeholderValue = 'Search here';
67
+ this.rightToLeftOrientation = false;
68
+ this.searchContainerClass = '';
69
+ this.error = false;
70
+ this.query = '';
71
+ this.searchResults = '';
72
+ }
73
+ componentDidLoad() {
74
+ const searchcraft = new SearchcraftCore(this.config);
75
+ this.searchStore.initialize(searchcraft, true);
76
+ console.log('Component initialized');
77
+ }
78
+ render() {
79
+ const formClass = this.rightToLeftOrientation ? 'formRTL' : 'formLTR';
80
+ const parsedCustomStyles = parseCustomStyles(this.customStylesForInput);
81
+ return (h("form", { key: '60978e813198af27c34232ebd1bda4ca4a6f5199', class: `${formClass}`, onSubmit: this.handleFormSubmit }, h("searchcraft-input-label", { key: '4418b675769d041c684f15afb2d9b919f765c133', label: this.labelForInput }), h("div", { key: '73581bf8fee7deee1bcf426f80493c78e92d8ada', class: 'searchContainer' }, h("searchcraft-input", { key: '6e90612f4fc8c773c9f98f5fcfffb303909d3c6f', customStyles: parsedCustomStyles, "input-caption-value": this.inputCaptionValue, onClearInput: this.handleClearInput, onSearchInputChange: this.handleInputChange, "placeholder-value": this.placeholderValue, query: this.query, "right-to-left-orientation": this.rightToLeftOrientation })), this.error && (h("searchcraft-error-message", { key: '1637aff0dcac83d975d9d53545e7fee26c41aa7f', errorMessage: 'Please enter a search query.' }))));
82
+ }
83
+ static get is() { return "searchcraft-auto-search-form"; }
84
+ static get encapsulation() { return "shadow"; }
85
+ static get originalStyleUrls() {
86
+ return {
87
+ "$": ["searchcraft-auto-search-form.module.scss"]
88
+ };
89
+ }
90
+ static get styleUrls() {
91
+ return {
92
+ "$": ["searchcraft-auto-search-form.module.css"]
93
+ };
94
+ }
95
+ static get properties() {
96
+ return {
97
+ "autoSearchFormClass": {
98
+ "type": "string",
99
+ "mutable": false,
100
+ "complexType": {
101
+ "original": "string",
102
+ "resolved": "string",
103
+ "references": {}
104
+ },
105
+ "required": false,
106
+ "optional": false,
107
+ "docs": {
108
+ "tags": [],
109
+ "text": ""
110
+ },
111
+ "attribute": "auto-search-form-class",
112
+ "reflect": false,
113
+ "defaultValue": "''"
114
+ },
115
+ "clearInput": {
116
+ "type": "unknown",
117
+ "mutable": false,
118
+ "complexType": {
119
+ "original": "() => void",
120
+ "resolved": "() => void",
121
+ "references": {}
122
+ },
123
+ "required": false,
124
+ "optional": false,
125
+ "docs": {
126
+ "tags": [],
127
+ "text": ""
128
+ },
129
+ "defaultValue": "() => {}"
130
+ },
131
+ "config": {
132
+ "type": "unknown",
133
+ "mutable": false,
134
+ "complexType": {
135
+ "original": "CoreConfigSDK",
136
+ "resolved": "CoreConfigSDK",
137
+ "references": {
138
+ "CoreConfigSDK": {
139
+ "location": "import",
140
+ "path": "@searchcraft/core",
141
+ "id": "../core-sdk/dist/index.d.ts::CoreConfigSDK"
142
+ }
143
+ }
144
+ },
145
+ "required": false,
146
+ "optional": false,
147
+ "docs": {
148
+ "tags": [],
149
+ "text": ""
150
+ },
151
+ "defaultValue": "{\n apiKey: '',\n endpointURL: '',\n index: [],\n }"
152
+ },
153
+ "customStylesForInput": {
154
+ "type": "string",
155
+ "mutable": false,
156
+ "complexType": {
157
+ "original": "string | Record<string, string>",
158
+ "resolved": "string | { [x: string]: string; }",
159
+ "references": {
160
+ "Record": {
161
+ "location": "global",
162
+ "id": "global::Record"
163
+ }
164
+ }
165
+ },
166
+ "required": false,
167
+ "optional": false,
168
+ "docs": {
169
+ "tags": [],
170
+ "text": ""
171
+ },
172
+ "attribute": "custom-styles-for-input",
173
+ "reflect": false,
174
+ "defaultValue": "{}"
175
+ },
176
+ "inputCaptionValue": {
177
+ "type": "string",
178
+ "mutable": false,
179
+ "complexType": {
180
+ "original": "string",
181
+ "resolved": "string",
182
+ "references": {}
183
+ },
184
+ "required": false,
185
+ "optional": false,
186
+ "docs": {
187
+ "tags": [],
188
+ "text": ""
189
+ },
190
+ "attribute": "input-caption-value",
191
+ "reflect": false,
192
+ "defaultValue": "''"
193
+ },
194
+ "labelForInput": {
195
+ "type": "string",
196
+ "mutable": false,
197
+ "complexType": {
198
+ "original": "string",
199
+ "resolved": "string",
200
+ "references": {}
201
+ },
202
+ "required": false,
203
+ "optional": false,
204
+ "docs": {
205
+ "tags": [],
206
+ "text": ""
207
+ },
208
+ "attribute": "label-for-input",
209
+ "reflect": false,
210
+ "defaultValue": "''"
211
+ },
212
+ "placeholderValue": {
213
+ "type": "string",
214
+ "mutable": false,
215
+ "complexType": {
216
+ "original": "string",
217
+ "resolved": "string",
218
+ "references": {}
219
+ },
220
+ "required": false,
221
+ "optional": false,
222
+ "docs": {
223
+ "tags": [],
224
+ "text": ""
225
+ },
226
+ "attribute": "placeholder-value",
227
+ "reflect": false,
228
+ "defaultValue": "'Search here'"
229
+ },
230
+ "rightToLeftOrientation": {
231
+ "type": "boolean",
232
+ "mutable": false,
233
+ "complexType": {
234
+ "original": "boolean",
235
+ "resolved": "boolean",
236
+ "references": {}
237
+ },
238
+ "required": false,
239
+ "optional": false,
240
+ "docs": {
241
+ "tags": [],
242
+ "text": ""
243
+ },
244
+ "attribute": "right-to-left-orientation",
245
+ "reflect": false,
246
+ "defaultValue": "false"
247
+ },
248
+ "searchContainerClass": {
249
+ "type": "string",
250
+ "mutable": false,
251
+ "complexType": {
252
+ "original": "string",
253
+ "resolved": "string",
254
+ "references": {}
255
+ },
256
+ "required": false,
257
+ "optional": false,
258
+ "docs": {
259
+ "tags": [],
260
+ "text": ""
261
+ },
262
+ "attribute": "search-container-class",
263
+ "reflect": false,
264
+ "defaultValue": "''"
265
+ }
266
+ };
267
+ }
268
+ static get states() {
269
+ return {
270
+ "error": {},
271
+ "query": {},
272
+ "searchResults": {}
273
+ };
274
+ }
275
+ static get events() {
276
+ return [{
277
+ "method": "querySubmit",
278
+ "name": "querySubmit",
279
+ "bubbles": true,
280
+ "cancelable": true,
281
+ "composed": true,
282
+ "docs": {
283
+ "tags": [],
284
+ "text": ""
285
+ },
286
+ "complexType": {
287
+ "original": "string",
288
+ "resolved": "string",
289
+ "references": {}
290
+ }
291
+ }];
292
+ }
293
+ }
294
+ //# sourceMappingURL=searchcraft-auto-search-form.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"searchcraft-auto-search-form.js","sourceRoot":"","sources":["../../../src/components/searchcraft-auto-search-form/searchcraft-auto-search-form.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Prop,\n State,\n Event,\n type EventEmitter,\n h,\n} from '@stencil/core';\nimport {\n type CoreConfigSDK,\n CoreSDK as SearchcraftCore,\n} from '@searchcraft/core';\n\nimport type { ScInputCustomEvent } from '@components/searchcraft-input/searchcraft-input';\nimport { parseCustomStyles } from '@utils/utils';\nimport { useSearchcraftStore } from '@provider/store';\n\n@Component({\n tag: 'searchcraft-auto-search-form',\n styleUrl: 'searchcraft-auto-search-form.module.scss',\n shadow: true,\n})\nexport class SearchcraftAutoSearchForm {\n @Prop() autoSearchFormClass = '';\n @Prop() clearInput: () => void = () => {};\n @Prop() config: CoreConfigSDK = {\n apiKey: '',\n endpointURL: '',\n index: [],\n };\n @Prop() customStylesForInput: string | Record<string, string> = {};\n @Prop() inputCaptionValue = '';\n @Prop() labelForInput = '';\n @Prop() placeholderValue = 'Search here';\n @Prop() rightToLeftOrientation = false;\n @Prop() searchContainerClass = '';\n\n @Event() querySubmit: EventEmitter<string>;\n\n @State() error = false;\n @State() query = '';\n @State() searchResults = '';\n\n private debounceTimeout: ReturnType<typeof setTimeout> | null = null;\n private debounceDelay = 300; // 300ms debounce delay\n private searchStore = useSearchcraftStore.getState();\n\n componentDidLoad() {\n const searchcraft = new SearchcraftCore(this.config);\n this.searchStore.initialize(searchcraft, true);\n console.log('Component initialized');\n }\n\n handleInputChange = (event: ScInputCustomEvent<string>) => {\n this.query = event.detail;\n this.querySubmit.emit(this.query);\n\n // Clear the previous debounce timeout\n if (this.debounceTimeout) {\n clearTimeout(this.debounceTimeout);\n }\n\n // Set a new debounce timeout\n this.debounceTimeout = setTimeout(() => {\n console.log('Debounced search triggered');\n this.runSearch();\n }, this.debounceDelay);\n };\n\n handleClearInput = () => {\n this.query = '';\n console.log('Input cleared');\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.searchResults = '';\n };\n\n private runSearch = async () => {\n if (this.query.trim() === '') {\n this.error = true;\n this.searchResults = '';\n } else {\n this.error = false;\n this.searchStore.setQuery(this.query);\n\n try {\n await this.searchStore.search();\n this.searchResults = JSON.stringify(this.searchStore.searchResults);\n } catch (error) {\n this.error = true;\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 class={`${formClass}`} onSubmit={this.handleFormSubmit}>\n <searchcraft-input-label label={this.labelForInput} />\n <div class='searchContainer'>\n <searchcraft-input\n customStyles={parsedCustomStyles}\n input-caption-value={this.inputCaptionValue}\n onClearInput={this.handleClearInput}\n onSearchInputChange={this.handleInputChange}\n placeholder-value={this.placeholderValue}\n query={this.query}\n right-to-left-orientation={this.rightToLeftOrientation}\n />\n </div>\n {this.error && (\n <searchcraft-error-message errorMessage='Please enter a search query.' />\n )}\n </form>\n );\n }\n}\n"]}
@@ -0,0 +1,19 @@
1
+ :root {
2
+ --font-stack: Helvetica, Arial, sans-serif;
3
+ }
4
+
5
+ .formLTR {
6
+ text-align: left;
7
+ width: 100%;
8
+ }
9
+
10
+ .formRTL {
11
+ text-align: right;
12
+ width: 100%;
13
+ }
14
+
15
+ .searchContainer {
16
+ align-items: center;
17
+ display: flex;
18
+ width: 100%;
19
+ }
@@ -0,0 +1,168 @@
1
+ import { h } from "@stencil/core";
2
+ import { CoreSDK as SearchcraftCore, } from "@searchcraft/core";
3
+ import { useSearchcraftStore, useThemeStore } from "../../provider/store";
4
+ export class SearchcraftBaseSearchForm {
5
+ constructor() {
6
+ this.clearInput = () => { };
7
+ this.searchStore = useSearchcraftStore.getState();
8
+ this.themeStore = useThemeStore.getState();
9
+ this.componentDidLoad = () => {
10
+ const searchcraft = new SearchcraftCore(this.config);
11
+ this.searchStore.initialize(searchcraft, true);
12
+ };
13
+ this.handleFormSubmit = async (event) => {
14
+ event.preventDefault();
15
+ if (this.query.trim() === '') {
16
+ this.error = true;
17
+ }
18
+ else {
19
+ this.error = false;
20
+ this.searchStore.setQuery(this.query);
21
+ await this.searchStore.search();
22
+ this.searchResults = JSON.stringify(this.searchStore.searchResults);
23
+ }
24
+ };
25
+ this.handleSearchInputChange = (event) => {
26
+ this.query = event.detail;
27
+ };
28
+ this.handleClearInput = () => {
29
+ this.query = '';
30
+ this === null || this === void 0 ? void 0 : this.clearInput();
31
+ };
32
+ this.toggleTheme = () => {
33
+ this.themeStore.toggleTheme();
34
+ };
35
+ this.config = {
36
+ apiKey: '',
37
+ endpointURL: '',
38
+ index: [],
39
+ };
40
+ this.errorMessage = 'Search was unsuccessful';
41
+ this.labelForInput = 'Search';
42
+ this.rightToLeftOrientation = false;
43
+ this.error = false;
44
+ this.query = '';
45
+ this.searchResults = null;
46
+ }
47
+ render() {
48
+ return (h("form", { key: '6460e91d9c4a48c40476c18762b8b4873c157653', class: this.rightToLeftOrientation ? 'formRTL' : 'formLTR', onSubmit: this.handleFormSubmit }, h("searchcraft-input-label", { key: '9d0a89868c4dafae20e7437101c5639466fc2ffa', label: this.labelForInput }), h("div", { key: '441c0923111995fc0b04b0acb799ade4b2018be0', class: 'searchContainer' }, this.rightToLeftOrientation && h("searchcraft-button", { key: '2a0dc24c906917cd1ec5bd605e25a0a67bffee21' }), h("searchcraft-input", { key: '6744a36c97e03fbd10cc354653e32f0f7eac1c00', onClearInput: this.handleClearInput, rightToLeftOrientation: this.rightToLeftOrientation, onSearchInputChange: this.handleSearchInputChange, query: this.query }), !this.rightToLeftOrientation && (h("searchcraft-button", { key: '50ea437efebe7a62d6122fb6a76942861003884a', onButtonClick: this.handleFormSubmit }))), this.error && (h("searchcraft-error-message", { key: 'ae4b2fa7d874771af0b88757244abe5d50679d55', errorMessage: this.errorMessage }))));
49
+ }
50
+ static get is() { return "searchcraft-base-search-form"; }
51
+ static get encapsulation() { return "shadow"; }
52
+ static get originalStyleUrls() {
53
+ return {
54
+ "$": ["searchcraft-base-search-form.module.scss"]
55
+ };
56
+ }
57
+ static get styleUrls() {
58
+ return {
59
+ "$": ["searchcraft-base-search-form.module.css"]
60
+ };
61
+ }
62
+ static get properties() {
63
+ return {
64
+ "config": {
65
+ "type": "unknown",
66
+ "mutable": false,
67
+ "complexType": {
68
+ "original": "CoreConfigSDK",
69
+ "resolved": "CoreConfigSDK",
70
+ "references": {
71
+ "CoreConfigSDK": {
72
+ "location": "import",
73
+ "path": "@searchcraft/core",
74
+ "id": "../core-sdk/dist/index.d.ts::CoreConfigSDK"
75
+ }
76
+ }
77
+ },
78
+ "required": false,
79
+ "optional": false,
80
+ "docs": {
81
+ "tags": [],
82
+ "text": ""
83
+ },
84
+ "defaultValue": "{\n apiKey: '',\n endpointURL: '',\n index: [],\n }"
85
+ },
86
+ "errorMessage": {
87
+ "type": "string",
88
+ "mutable": false,
89
+ "complexType": {
90
+ "original": "string",
91
+ "resolved": "string",
92
+ "references": {}
93
+ },
94
+ "required": false,
95
+ "optional": false,
96
+ "docs": {
97
+ "tags": [],
98
+ "text": ""
99
+ },
100
+ "attribute": "error-message",
101
+ "reflect": false,
102
+ "defaultValue": "'Search was unsuccessful'"
103
+ },
104
+ "labelForInput": {
105
+ "type": "string",
106
+ "mutable": false,
107
+ "complexType": {
108
+ "original": "string",
109
+ "resolved": "string",
110
+ "references": {}
111
+ },
112
+ "required": false,
113
+ "optional": false,
114
+ "docs": {
115
+ "tags": [],
116
+ "text": ""
117
+ },
118
+ "attribute": "label-for-input",
119
+ "reflect": false,
120
+ "defaultValue": "'Search'"
121
+ },
122
+ "rightToLeftOrientation": {
123
+ "type": "boolean",
124
+ "mutable": false,
125
+ "complexType": {
126
+ "original": "boolean",
127
+ "resolved": "boolean",
128
+ "references": {}
129
+ },
130
+ "required": false,
131
+ "optional": false,
132
+ "docs": {
133
+ "tags": [],
134
+ "text": ""
135
+ },
136
+ "attribute": "right-to-left-orientation",
137
+ "reflect": false,
138
+ "defaultValue": "false"
139
+ }
140
+ };
141
+ }
142
+ static get states() {
143
+ return {
144
+ "error": {},
145
+ "query": {},
146
+ "searchResults": {}
147
+ };
148
+ }
149
+ static get events() {
150
+ return [{
151
+ "method": "clearInput",
152
+ "name": "clearInput",
153
+ "bubbles": true,
154
+ "cancelable": true,
155
+ "composed": true,
156
+ "docs": {
157
+ "tags": [],
158
+ "text": ""
159
+ },
160
+ "complexType": {
161
+ "original": "any",
162
+ "resolved": "any",
163
+ "references": {}
164
+ }
165
+ }];
166
+ }
167
+ }
168
+ //# sourceMappingURL=searchcraft-base-search-form.js.map