@searchcraft/javascript-sdk 0.1.7 → 0.1.9

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 (140) hide show
  1. package/dist/cjs/{index-7b49313c.js → index-d0e71432.js} +10 -4
  2. package/dist/cjs/index-d0e71432.js.map +1 -0
  3. package/dist/cjs/index.cjs.js +1 -1
  4. package/dist/cjs/loader.cjs.js +2 -2
  5. package/dist/cjs/{searchcraft-auto-search-form_13.cjs.entry.js → searchcraft-auto-search-form_16.cjs.entry.js} +219 -16
  6. package/dist/cjs/searchcraft-auto-search-form_16.cjs.entry.js.map +1 -0
  7. package/dist/cjs/searchcraft-base-search-form.cjs.entry.js +3 -3
  8. package/dist/cjs/searchcraft-button-icon.cjs.entry.js +1 -1
  9. package/dist/cjs/searchcraft-button.cjs.entry.js +1 -1
  10. package/dist/cjs/searchcraft-javascript-sdk.cjs.js +2 -2
  11. package/dist/cjs/{store-3d577aac.js → store-3f6eab7d.js} +110 -42
  12. package/dist/cjs/store-3f6eab7d.js.map +1 -0
  13. package/dist/collection/collection-manifest.json +4 -1
  14. package/dist/collection/components/searchcraft-auto-search-form/searchcraft-auto-search-form.js +7 -4
  15. package/dist/collection/components/searchcraft-auto-search-form/searchcraft-auto-search-form.js.map +1 -1
  16. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js +78 -7
  17. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js.map +1 -1
  18. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.module.css +4 -0
  19. package/dist/collection/components/searchcraft-filters-list/searchcraft-filters-list.js +131 -0
  20. package/dist/collection/components/searchcraft-filters-list/searchcraft-filters-list.js.map +1 -0
  21. package/dist/collection/components/searchcraft-filters-list/searchcraft-filters-list.module.css +35 -0
  22. package/dist/collection/components/searchcraft-input/searchcraft-input.js +21 -2
  23. package/dist/collection/components/searchcraft-input/searchcraft-input.js.map +1 -1
  24. package/dist/collection/components/searchcraft-slider/searchcraft-slider.js +97 -0
  25. package/dist/collection/components/searchcraft-slider/searchcraft-slider.js.map +1 -0
  26. package/dist/collection/components/searchcraft-slider/searchcraft-slider.module.css +75 -0
  27. package/dist/collection/components/searchcraft-spinner-dark/searchcraft-spinner-dark.js +1 -1
  28. package/dist/collection/components/searchcraft-spinner-light/searchcraft-spinner-light.js +1 -1
  29. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.js +79 -0
  30. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.js.map +1 -0
  31. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.module.css +38 -0
  32. package/dist/collection/provider/store.js +35 -2
  33. package/dist/collection/provider/store.js.map +1 -1
  34. package/dist/components/index.js +2 -2
  35. package/dist/components/{p-a3ea7edc.js → p-05cd002d.js} +2 -2
  36. package/dist/components/{p-a3ea7edc.js.map → p-05cd002d.js.map} +1 -1
  37. package/dist/components/{p-85d96d9b.js → p-25bd714c.js} +2 -2
  38. package/dist/components/{p-85d96d9b.js.map → p-25bd714c.js.map} +1 -1
  39. package/dist/components/{p-62f37242.js → p-37df2122.js} +16 -11
  40. package/dist/components/p-37df2122.js.map +1 -0
  41. package/dist/components/{p-f3af2b04.js → p-3cbac2bb.js} +2 -2
  42. package/dist/components/{p-f3af2b04.js.map → p-3cbac2bb.js.map} +1 -1
  43. package/dist/components/{p-07fba086.js → p-403f6115.js} +5 -5
  44. package/dist/components/{p-07fba086.js.map → p-403f6115.js.map} +1 -1
  45. package/dist/components/{p-04bad430.js → p-50ca3fe4.js} +3 -3
  46. package/dist/components/{p-04bad430.js.map → p-50ca3fe4.js.map} +1 -1
  47. package/dist/components/{p-3ea9ba3a.js → p-574e8e3c.js} +3 -3
  48. package/dist/components/{p-3ea9ba3a.js.map → p-574e8e3c.js.map} +1 -1
  49. package/dist/components/{p-9c617862.js → p-5aa6335f.js} +110 -42
  50. package/dist/components/p-5aa6335f.js.map +1 -0
  51. package/dist/components/{p-d33fdd81.js → p-71dff048.js} +2 -2
  52. package/dist/components/{p-d33fdd81.js.map → p-71dff048.js.map} +1 -1
  53. package/dist/components/{p-d73bc01d.js → p-9bb9d6f0.js} +2 -2
  54. package/dist/components/{p-d73bc01d.js.map → p-9bb9d6f0.js.map} +1 -1
  55. package/dist/components/{p-c14731ca.js → p-c9629cc3.js} +2 -2
  56. package/dist/components/{p-c14731ca.js.map → p-c9629cc3.js.map} +1 -1
  57. package/dist/components/{p-af65953e.js → p-c9cd5533.js} +6 -2
  58. package/dist/components/p-c9cd5533.js.map +1 -0
  59. package/dist/components/{p-781a9a8c.js → p-e0e0fc94.js} +3 -3
  60. package/dist/components/{p-781a9a8c.js.map → p-e0e0fc94.js.map} +1 -1
  61. package/dist/components/{p-6b1d0cba.js → p-f2e41d24.js} +3 -3
  62. package/dist/components/{p-6b1d0cba.js.map → p-f2e41d24.js.map} +1 -1
  63. package/dist/components/searchcraft-auto-search-form.js +20 -17
  64. package/dist/components/searchcraft-auto-search-form.js.map +1 -1
  65. package/dist/components/searchcraft-base-search-form.js +14 -14
  66. package/dist/components/searchcraft-base-search-result.js +1 -1
  67. package/dist/components/searchcraft-base-search-results.js +45 -8
  68. package/dist/components/searchcraft-base-search-results.js.map +1 -1
  69. package/dist/components/searchcraft-button-icon.js +1 -1
  70. package/dist/components/searchcraft-button.js +1 -1
  71. package/dist/components/searchcraft-clear-icon-set.js +1 -1
  72. package/dist/components/searchcraft-clear-input-button.js +1 -1
  73. package/dist/components/searchcraft-error-message.js +1 -1
  74. package/dist/components/searchcraft-filters-list.d.ts +11 -0
  75. package/dist/components/searchcraft-filters-list.js +103 -0
  76. package/dist/components/searchcraft-filters-list.js.map +1 -0
  77. package/dist/components/searchcraft-input-caption.js +1 -1
  78. package/dist/components/searchcraft-input-icon.js +1 -1
  79. package/dist/components/searchcraft-input-label.js +1 -1
  80. package/dist/components/searchcraft-input.js +1 -1
  81. package/dist/components/searchcraft-search-icon-set.js +1 -1
  82. package/dist/components/searchcraft-slider.d.ts +11 -0
  83. package/dist/components/searchcraft-slider.js +72 -0
  84. package/dist/components/searchcraft-slider.js.map +1 -0
  85. package/dist/components/searchcraft-spinner-dark.js +1 -1
  86. package/dist/components/searchcraft-spinner-light.js +1 -1
  87. package/dist/components/searchcraft-toggle-button.d.ts +11 -0
  88. package/dist/components/searchcraft-toggle-button.js +71 -0
  89. package/dist/components/searchcraft-toggle-button.js.map +1 -0
  90. package/dist/esm/{index-e4a4f86d.js → index-92040c37.js} +10 -4
  91. package/dist/esm/index-92040c37.js.map +1 -0
  92. package/dist/esm/index.js +1 -1
  93. package/dist/esm/loader.js +3 -3
  94. package/dist/esm/{searchcraft-auto-search-form_13.entry.js → searchcraft-auto-search-form_16.entry.js} +217 -17
  95. package/dist/esm/searchcraft-auto-search-form_16.entry.js.map +1 -0
  96. package/dist/esm/searchcraft-base-search-form.entry.js +3 -3
  97. package/dist/esm/searchcraft-button-icon.entry.js +1 -1
  98. package/dist/esm/searchcraft-button.entry.js +1 -1
  99. package/dist/esm/searchcraft-javascript-sdk.js +3 -3
  100. package/dist/esm/{store-03dc618f.js → store-5f6f8445.js} +110 -42
  101. package/dist/esm/store-5f6f8445.js.map +1 -0
  102. package/dist/searchcraft-javascript-sdk/index.esm.js +1 -1
  103. package/dist/searchcraft-javascript-sdk/{p-6a17384e.entry.js → p-02f632b6.entry.js} +2 -2
  104. package/dist/searchcraft-javascript-sdk/{p-e6f6972c.js → p-05369654.js} +3 -3
  105. package/dist/searchcraft-javascript-sdk/p-05369654.js.map +1 -0
  106. package/dist/searchcraft-javascript-sdk/p-5aa6335f.js +11 -0
  107. package/dist/searchcraft-javascript-sdk/p-5aa6335f.js.map +1 -0
  108. package/dist/searchcraft-javascript-sdk/p-639d019b.entry.js +2 -0
  109. package/dist/searchcraft-javascript-sdk/{p-6c825f8c.entry.js.map → p-639d019b.entry.js.map} +1 -1
  110. package/dist/searchcraft-javascript-sdk/p-73265750.entry.js +2 -0
  111. package/dist/searchcraft-javascript-sdk/p-73265750.entry.js.map +1 -0
  112. package/dist/searchcraft-javascript-sdk/{p-98eab6f9.entry.js → p-81eaebdc.entry.js} +2 -2
  113. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js +1 -1
  114. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js.map +1 -1
  115. package/dist/types/components/searchcraft-auto-search-form/searchcraft-auto-search-form.d.ts +1 -0
  116. package/dist/types/components/searchcraft-base-search-results/searchcraft-base-search-results.d.ts +3 -15
  117. package/dist/types/components/searchcraft-filters-list/searchcraft-filters-list.d.ts +23 -0
  118. package/dist/types/components/searchcraft-input/searchcraft-input.d.ts +2 -0
  119. package/dist/types/components/searchcraft-slider/searchcraft-slider.d.ts +11 -0
  120. package/dist/types/components/searchcraft-toggle-button/searchcraft-toggle-button.d.ts +12 -0
  121. package/dist/types/components.d.ts +75 -24
  122. package/dist/types/provider/store.d.ts +17 -5
  123. package/package.json +1 -1
  124. package/dist/cjs/index-7b49313c.js.map +0 -1
  125. package/dist/cjs/searchcraft-auto-search-form_13.cjs.entry.js.map +0 -1
  126. package/dist/cjs/store-3d577aac.js.map +0 -1
  127. package/dist/components/p-62f37242.js.map +0 -1
  128. package/dist/components/p-9c617862.js.map +0 -1
  129. package/dist/components/p-af65953e.js.map +0 -1
  130. package/dist/esm/index-e4a4f86d.js.map +0 -1
  131. package/dist/esm/searchcraft-auto-search-form_13.entry.js.map +0 -1
  132. package/dist/esm/store-03dc618f.js.map +0 -1
  133. package/dist/searchcraft-javascript-sdk/p-6c825f8c.entry.js +0 -2
  134. package/dist/searchcraft-javascript-sdk/p-9c617862.js +0 -11
  135. package/dist/searchcraft-javascript-sdk/p-9c617862.js.map +0 -1
  136. package/dist/searchcraft-javascript-sdk/p-e6f6972c.js.map +0 -1
  137. package/dist/searchcraft-javascript-sdk/p-f77e9c21.entry.js +0 -2
  138. package/dist/searchcraft-javascript-sdk/p-f77e9c21.entry.js.map +0 -1
  139. /package/dist/searchcraft-javascript-sdk/{p-6a17384e.entry.js.map → p-02f632b6.entry.js.map} +0 -0
  140. /package/dist/searchcraft-javascript-sdk/{p-98eab6f9.entry.js.map → p-81eaebdc.entry.js.map} +0 -0
@@ -41,22 +41,12 @@ export namespace Components {
41
41
  "themeMode": 'light' | 'dark';
42
42
  }
43
43
  interface SearchcraftBaseSearchResults {
44
- /**
45
- * Place ad every N results (e.g., every 4 results). Default value: 4
46
- */
47
44
  "adInterval": number;
48
- /**
49
- * Custom styles to apply to search results. Expected format: JSON string, e.g., '{"borderRadius": "10px", "padding": "16px"}'
50
- */
51
45
  "customStylesForResults": | string
52
46
  | Record<string, Record<string, string>>;
53
- /**
54
- * Place ad at the end of the results.
55
- */
47
+ "formatTime": boolean;
56
48
  "placeAdAtEnd": boolean;
57
- /**
58
- * Array of keys to dynamically extract properties from each document. Must be explicitly set by the parent component.
59
- */
49
+ "placeAdAtStart": boolean;
60
50
  "searchKeys": string;
61
51
  }
62
52
  interface SearchcraftButton {
@@ -87,6 +77,9 @@ export namespace Components {
87
77
  */
88
78
  "theme": 'light' | 'dark';
89
79
  }
80
+ interface SearchcraftFiltersList {
81
+ "filters": Array<{ label: string; value: string }>;
82
+ }
90
83
  interface SearchcraftInput {
91
84
  "customStyles": string | Record<string, string>;
92
85
  "error": boolean;
@@ -131,10 +124,20 @@ export namespace Components {
131
124
  "type": 'search-light' | 'search-dark' | 'error-light' | 'error-dark';
132
125
  "width": number;
133
126
  }
127
+ interface SearchcraftSlider {
128
+ "maxYear": number;
129
+ "minYear": number;
130
+ }
134
131
  interface SearchcraftSpinnerDark {
135
132
  }
136
133
  interface SearchcraftSpinnerLight {
137
134
  }
135
+ interface SearchcraftToggleButton {
136
+ /**
137
+ * Type of the toggle - determines what it controls 'mode': toggles between 'fuzzy' and 'normal' 'sort': toggles between 'asc' and 'desc'
138
+ */
139
+ "type": 'mode' | 'sort';
140
+ }
138
141
  }
139
142
  export interface SearchcraftAutoSearchFormCustomEvent<T> extends CustomEvent<T> {
140
143
  detail: T;
@@ -156,6 +159,10 @@ export interface SearchcraftClearInputButtonCustomEvent<T> extends CustomEvent<T
156
159
  detail: T;
157
160
  target: HTMLSearchcraftClearInputButtonElement;
158
161
  }
162
+ export interface SearchcraftFiltersListCustomEvent<T> extends CustomEvent<T> {
163
+ detail: T;
164
+ target: HTMLSearchcraftFiltersListElement;
165
+ }
159
166
  export interface SearchcraftInputCustomEvent<T> extends CustomEvent<T> {
160
167
  detail: T;
161
168
  target: HTMLSearchcraftInputElement;
@@ -272,9 +279,27 @@ declare global {
272
279
  prototype: HTMLSearchcraftErrorMessageElement;
273
280
  new (): HTMLSearchcraftErrorMessageElement;
274
281
  };
282
+ interface HTMLSearchcraftFiltersListElementEventMap {
283
+ "filtersUpdated": string[];
284
+ }
285
+ interface HTMLSearchcraftFiltersListElement extends Components.SearchcraftFiltersList, HTMLStencilElement {
286
+ addEventListener<K extends keyof HTMLSearchcraftFiltersListElementEventMap>(type: K, listener: (this: HTMLSearchcraftFiltersListElement, ev: SearchcraftFiltersListCustomEvent<HTMLSearchcraftFiltersListElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
287
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
288
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
289
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
290
+ removeEventListener<K extends keyof HTMLSearchcraftFiltersListElementEventMap>(type: K, listener: (this: HTMLSearchcraftFiltersListElement, ev: SearchcraftFiltersListCustomEvent<HTMLSearchcraftFiltersListElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
291
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
292
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
293
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
294
+ }
295
+ var HTMLSearchcraftFiltersListElement: {
296
+ prototype: HTMLSearchcraftFiltersListElement;
297
+ new (): HTMLSearchcraftFiltersListElement;
298
+ };
275
299
  interface HTMLSearchcraftInputElementEventMap {
276
300
  "clearInput": void;
277
301
  "searchInputChange": string;
302
+ "inputKeyUp": string;
278
303
  }
279
304
  interface HTMLSearchcraftInputElement extends Components.SearchcraftInput, HTMLStencilElement {
280
305
  addEventListener<K extends keyof HTMLSearchcraftInputElementEventMap>(type: K, listener: (this: HTMLSearchcraftInputElement, ev: SearchcraftInputCustomEvent<HTMLSearchcraftInputElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
@@ -314,6 +339,12 @@ declare global {
314
339
  prototype: HTMLSearchcraftSearchIconSetElement;
315
340
  new (): HTMLSearchcraftSearchIconSetElement;
316
341
  };
342
+ interface HTMLSearchcraftSliderElement extends Components.SearchcraftSlider, HTMLStencilElement {
343
+ }
344
+ var HTMLSearchcraftSliderElement: {
345
+ prototype: HTMLSearchcraftSliderElement;
346
+ new (): HTMLSearchcraftSliderElement;
347
+ };
317
348
  interface HTMLSearchcraftSpinnerDarkElement extends Components.SearchcraftSpinnerDark, HTMLStencilElement {
318
349
  }
319
350
  var HTMLSearchcraftSpinnerDarkElement: {
@@ -326,6 +357,12 @@ declare global {
326
357
  prototype: HTMLSearchcraftSpinnerLightElement;
327
358
  new (): HTMLSearchcraftSpinnerLightElement;
328
359
  };
360
+ interface HTMLSearchcraftToggleButtonElement extends Components.SearchcraftToggleButton, HTMLStencilElement {
361
+ }
362
+ var HTMLSearchcraftToggleButtonElement: {
363
+ prototype: HTMLSearchcraftToggleButtonElement;
364
+ new (): HTMLSearchcraftToggleButtonElement;
365
+ };
329
366
  interface HTMLElementTagNameMap {
330
367
  "searchcraft-auto-search-form": HTMLSearchcraftAutoSearchFormElement;
331
368
  "searchcraft-base-search-form": HTMLSearchcraftBaseSearchFormElement;
@@ -336,13 +373,16 @@ declare global {
336
373
  "searchcraft-clear-icon-set": HTMLSearchcraftClearIconSetElement;
337
374
  "searchcraft-clear-input-button": HTMLSearchcraftClearInputButtonElement;
338
375
  "searchcraft-error-message": HTMLSearchcraftErrorMessageElement;
376
+ "searchcraft-filters-list": HTMLSearchcraftFiltersListElement;
339
377
  "searchcraft-input": HTMLSearchcraftInputElement;
340
378
  "searchcraft-input-caption": HTMLSearchcraftInputCaptionElement;
341
379
  "searchcraft-input-icon": HTMLSearchcraftInputIconElement;
342
380
  "searchcraft-input-label": HTMLSearchcraftInputLabelElement;
343
381
  "searchcraft-search-icon-set": HTMLSearchcraftSearchIconSetElement;
382
+ "searchcraft-slider": HTMLSearchcraftSliderElement;
344
383
  "searchcraft-spinner-dark": HTMLSearchcraftSpinnerDarkElement;
345
384
  "searchcraft-spinner-light": HTMLSearchcraftSpinnerLightElement;
385
+ "searchcraft-toggle-button": HTMLSearchcraftToggleButtonElement;
346
386
  }
347
387
  }
348
388
  declare namespace LocalJSX {
@@ -384,22 +424,12 @@ declare namespace LocalJSX {
384
424
  "themeMode"?: 'light' | 'dark';
385
425
  }
386
426
  interface SearchcraftBaseSearchResults {
387
- /**
388
- * Place ad every N results (e.g., every 4 results). Default value: 4
389
- */
390
427
  "adInterval"?: number;
391
- /**
392
- * Custom styles to apply to search results. Expected format: JSON string, e.g., '{"borderRadius": "10px", "padding": "16px"}'
393
- */
394
428
  "customStylesForResults"?: | string
395
429
  | Record<string, Record<string, string>>;
396
- /**
397
- * Place ad at the end of the results.
398
- */
430
+ "formatTime"?: boolean;
399
431
  "placeAdAtEnd"?: boolean;
400
- /**
401
- * Array of keys to dynamically extract properties from each document. Must be explicitly set by the parent component.
402
- */
432
+ "placeAdAtStart"?: boolean;
403
433
  "searchKeys"?: string;
404
434
  }
405
435
  interface SearchcraftButton {
@@ -432,6 +462,10 @@ declare namespace LocalJSX {
432
462
  */
433
463
  "theme"?: 'light' | 'dark';
434
464
  }
465
+ interface SearchcraftFiltersList {
466
+ "filters"?: Array<{ label: string; value: string }>;
467
+ "onFiltersUpdated"?: (event: SearchcraftFiltersListCustomEvent<string[]>) => void;
468
+ }
435
469
  interface SearchcraftInput {
436
470
  "customStyles"?: string | Record<string, string>;
437
471
  "error"?: boolean;
@@ -443,6 +477,7 @@ declare namespace LocalJSX {
443
477
  "inputIconWidth"?: number;
444
478
  "isRequesting"?: boolean;
445
479
  "onClearInput"?: (event: SearchcraftInputCustomEvent<void>) => void;
480
+ "onInputKeyUp"?: (event: SearchcraftInputCustomEvent<string>) => void;
446
481
  "onSearchInputChange"?: (event: SearchcraftInputCustomEvent<string>) => void;
447
482
  "placeholderValue"?: string;
448
483
  "query"?: string;
@@ -478,10 +513,20 @@ declare namespace LocalJSX {
478
513
  "type"?: 'search-light' | 'search-dark' | 'error-light' | 'error-dark';
479
514
  "width"?: number;
480
515
  }
516
+ interface SearchcraftSlider {
517
+ "maxYear"?: number;
518
+ "minYear"?: number;
519
+ }
481
520
  interface SearchcraftSpinnerDark {
482
521
  }
483
522
  interface SearchcraftSpinnerLight {
484
523
  }
524
+ interface SearchcraftToggleButton {
525
+ /**
526
+ * Type of the toggle - determines what it controls 'mode': toggles between 'fuzzy' and 'normal' 'sort': toggles between 'asc' and 'desc'
527
+ */
528
+ "type"?: 'mode' | 'sort';
529
+ }
485
530
  interface IntrinsicElements {
486
531
  "searchcraft-auto-search-form": SearchcraftAutoSearchForm;
487
532
  "searchcraft-base-search-form": SearchcraftBaseSearchForm;
@@ -492,13 +537,16 @@ declare namespace LocalJSX {
492
537
  "searchcraft-clear-icon-set": SearchcraftClearIconSet;
493
538
  "searchcraft-clear-input-button": SearchcraftClearInputButton;
494
539
  "searchcraft-error-message": SearchcraftErrorMessage;
540
+ "searchcraft-filters-list": SearchcraftFiltersList;
495
541
  "searchcraft-input": SearchcraftInput;
496
542
  "searchcraft-input-caption": SearchcraftInputCaption;
497
543
  "searchcraft-input-icon": SearchcraftInputIcon;
498
544
  "searchcraft-input-label": SearchcraftInputLabel;
499
545
  "searchcraft-search-icon-set": SearchcraftSearchIconSet;
546
+ "searchcraft-slider": SearchcraftSlider;
500
547
  "searchcraft-spinner-dark": SearchcraftSpinnerDark;
501
548
  "searchcraft-spinner-light": SearchcraftSpinnerLight;
549
+ "searchcraft-toggle-button": SearchcraftToggleButton;
502
550
  }
503
551
  }
504
552
  export { LocalJSX as JSX };
@@ -514,13 +562,16 @@ declare module "@stencil/core" {
514
562
  "searchcraft-clear-icon-set": LocalJSX.SearchcraftClearIconSet & JSXBase.HTMLAttributes<HTMLSearchcraftClearIconSetElement>;
515
563
  "searchcraft-clear-input-button": LocalJSX.SearchcraftClearInputButton & JSXBase.HTMLAttributes<HTMLSearchcraftClearInputButtonElement>;
516
564
  "searchcraft-error-message": LocalJSX.SearchcraftErrorMessage & JSXBase.HTMLAttributes<HTMLSearchcraftErrorMessageElement>;
565
+ "searchcraft-filters-list": LocalJSX.SearchcraftFiltersList & JSXBase.HTMLAttributes<HTMLSearchcraftFiltersListElement>;
517
566
  "searchcraft-input": LocalJSX.SearchcraftInput & JSXBase.HTMLAttributes<HTMLSearchcraftInputElement>;
518
567
  "searchcraft-input-caption": LocalJSX.SearchcraftInputCaption & JSXBase.HTMLAttributes<HTMLSearchcraftInputCaptionElement>;
519
568
  "searchcraft-input-icon": LocalJSX.SearchcraftInputIcon & JSXBase.HTMLAttributes<HTMLSearchcraftInputIconElement>;
520
569
  "searchcraft-input-label": LocalJSX.SearchcraftInputLabel & JSXBase.HTMLAttributes<HTMLSearchcraftInputLabelElement>;
521
570
  "searchcraft-search-icon-set": LocalJSX.SearchcraftSearchIconSet & JSXBase.HTMLAttributes<HTMLSearchcraftSearchIconSetElement>;
571
+ "searchcraft-slider": LocalJSX.SearchcraftSlider & JSXBase.HTMLAttributes<HTMLSearchcraftSliderElement>;
522
572
  "searchcraft-spinner-dark": LocalJSX.SearchcraftSpinnerDark & JSXBase.HTMLAttributes<HTMLSearchcraftSpinnerDarkElement>;
523
573
  "searchcraft-spinner-light": LocalJSX.SearchcraftSpinnerLight & JSXBase.HTMLAttributes<HTMLSearchcraftSpinnerLightElement>;
574
+ "searchcraft-toggle-button": LocalJSX.SearchcraftToggleButton & JSXBase.HTMLAttributes<HTMLSearchcraftToggleButtonElement>;
524
575
  }
525
576
  }
526
577
  }
@@ -1,18 +1,30 @@
1
- import { type CoreSDK as SearchcraftCore, type SearchcraftResponse } from '@searchcraft/core';
1
+ import { type CoreSDK as SearchcraftCore, type SearchcraftResponse, type Facets } from '@searchcraft/core';
2
+ interface ThemeState {
3
+ theme: 'light' | 'dark';
4
+ toggleTheme: () => void;
5
+ }
6
+ interface SearchParams {
7
+ mode: 'fuzzy' | 'normal';
8
+ sort: 'asc' | 'desc';
9
+ yearsRange?: [number, number];
10
+ }
2
11
  interface SearchcraftState {
3
12
  query: string;
4
13
  isRequesting: boolean;
5
14
  searchResults: SearchcraftResponse | null;
15
+ facets: Facets | null;
16
+ selectedFilters: string[];
17
+ searchParams: SearchParams;
6
18
  setQuery: (query: string) => void;
7
19
  setSearchResults: (results: SearchcraftResponse | null) => void;
20
+ setFacets: (facets: Facets) => void;
21
+ setSelectedFilters: (filters: string[]) => void;
8
22
  setIsRequesting: (isRequesting: boolean) => void;
23
+ setSearchParams: (params: Partial<SearchParams>) => void;
24
+ setYearsRange: (yearsRange: [number, number]) => void;
9
25
  search: () => Promise<void>;
10
26
  initialize: (searchcraft: SearchcraftCore, debug?: boolean) => void;
11
27
  }
12
- interface ThemeState {
13
- theme: 'light' | 'dark';
14
- toggleTheme: () => void;
15
- }
16
28
  declare const useSearchcraftStore: import("zustand").UseBoundStore<import("zustand").StoreApi<SearchcraftState>>;
17
29
  declare const useThemeStore: import("zustand").UseBoundStore<import("zustand").StoreApi<ThemeState>>;
18
30
  export { useSearchcraftStore, useThemeStore };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@searchcraft/javascript-sdk",
3
3
  "private": false,
4
- "version": "0.1.7",
4
+ "version": "0.1.9",
5
5
  "description": "Searchcraft Javascript SDK",
6
6
  "author": "Searchcraft",
7
7
  "license": "Apache-2.0",