@searchcraft/javascript-sdk 0.1.2 → 0.1.3

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 (235) hide show
  1. package/dist/searchcraft-javascript-sdk/_commonjsHelpers-63cbe26c.js +34 -0
  2. package/dist/searchcraft-javascript-sdk/_commonjsHelpers-63cbe26c.js.map +1 -0
  3. package/dist/searchcraft-javascript-sdk/index-be6bffea.js +3043 -0
  4. package/dist/searchcraft-javascript-sdk/index-be6bffea.js.map +1 -0
  5. package/dist/{esm/index-72ac5051.js → searchcraft-javascript-sdk/index-d6567b9c.js} +10 -2
  6. package/dist/searchcraft-javascript-sdk/index-d6567b9c.js.map +1 -0
  7. package/dist/searchcraft-javascript-sdk/index.esm.js +14 -1
  8. package/dist/searchcraft-javascript-sdk/index.esm.js.map +1 -1
  9. package/dist/searchcraft-javascript-sdk/searchcraft-auto-search-form.entry.js +93 -0
  10. package/dist/searchcraft-javascript-sdk/searchcraft-auto-search-form.entry.js.map +1 -0
  11. package/dist/{esm → searchcraft-javascript-sdk}/searchcraft-base-search-form.entry.js +4 -4
  12. package/dist/searchcraft-javascript-sdk/searchcraft-base-search-form.entry.js.map +1 -0
  13. package/dist/{components/p-1912bbbd.js → searchcraft-javascript-sdk/searchcraft-base-search-result.entry.js} +22 -47
  14. package/dist/searchcraft-javascript-sdk/searchcraft-base-search-result.entry.js.map +1 -0
  15. package/dist/searchcraft-javascript-sdk/searchcraft-base-search-results.entry.js +57 -0
  16. package/dist/searchcraft-javascript-sdk/searchcraft-base-search-results.entry.js.map +1 -0
  17. package/dist/{esm → searchcraft-javascript-sdk}/searchcraft-button-icon.entry.js +1 -1
  18. package/dist/searchcraft-javascript-sdk/searchcraft-button-icon.entry.js.map +1 -0
  19. package/dist/{esm → searchcraft-javascript-sdk}/searchcraft-button.entry.js +5 -5
  20. package/dist/searchcraft-javascript-sdk/searchcraft-button.entry.js.map +1 -0
  21. package/dist/{components/p-d446eda4.js → searchcraft-javascript-sdk/searchcraft-clear-icon-set.entry.js} +7 -25
  22. package/dist/searchcraft-javascript-sdk/searchcraft-clear-icon-set.entry.js.map +1 -0
  23. package/dist/searchcraft-javascript-sdk/searchcraft-clear-input-button.entry.js +31 -0
  24. package/dist/searchcraft-javascript-sdk/searchcraft-clear-input-button.entry.js.map +1 -0
  25. package/dist/searchcraft-javascript-sdk/searchcraft-error-message.entry.js +22 -0
  26. package/dist/searchcraft-javascript-sdk/searchcraft-error-message.entry.js.map +1 -0
  27. package/dist/{components/p-cb75ba7a.js → searchcraft-javascript-sdk/searchcraft-input-caption.entry.js} +10 -32
  28. package/dist/searchcraft-javascript-sdk/searchcraft-input-caption.entry.js.map +1 -0
  29. package/dist/searchcraft-javascript-sdk/searchcraft-input-icon.entry.js +23 -0
  30. package/dist/searchcraft-javascript-sdk/searchcraft-input-icon.entry.js.map +1 -0
  31. package/dist/searchcraft-javascript-sdk/searchcraft-input-label.entry.js +30 -0
  32. package/dist/searchcraft-javascript-sdk/searchcraft-input-label.entry.js.map +1 -0
  33. package/dist/{components/p-1bd04bac.js → searchcraft-javascript-sdk/searchcraft-input.entry.js} +11 -80
  34. package/dist/searchcraft-javascript-sdk/searchcraft-input.entry.js.map +1 -0
  35. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js +48 -1
  36. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js.map +1 -1
  37. package/dist/{components/p-d0edf961.js → searchcraft-javascript-sdk/searchcraft-search-icon-set.entry.js} +7 -25
  38. package/dist/searchcraft-javascript-sdk/searchcraft-search-icon-set.entry.js.map +1 -0
  39. package/dist/searchcraft-javascript-sdk/searchcraft-spinner-dark.entry.js +17 -0
  40. package/dist/searchcraft-javascript-sdk/searchcraft-spinner-dark.entry.js.map +1 -0
  41. package/dist/searchcraft-javascript-sdk/searchcraft-spinner-light.entry.js +17 -0
  42. package/dist/searchcraft-javascript-sdk/searchcraft-spinner-light.entry.js.map +1 -0
  43. package/dist/searchcraft-javascript-sdk/shadow-css-423dab2c.js +334 -0
  44. package/dist/searchcraft-javascript-sdk/shadow-css-423dab2c.js.map +1 -0
  45. package/dist/searchcraft-javascript-sdk/store-b50263a1.js +3008 -0
  46. package/dist/searchcraft-javascript-sdk/store-b50263a1.js.map +1 -0
  47. package/dist/{esm/utils-02b18bb5.js → searchcraft-javascript-sdk/utils-7bff0c78.js} +11 -7
  48. package/dist/searchcraft-javascript-sdk/utils-7bff0c78.js.map +1 -0
  49. package/dist/types/components/searchcraft-base-search-result/searchcraft-base-search-result.d.ts +2 -1
  50. package/dist/types/components/searchcraft-base-search-results/searchcraft-base-search-results.d.ts +1 -2
  51. package/dist/types/components.d.ts +6 -4
  52. package/dist/types/utils/utils.d.ts +1 -5
  53. package/package.json +1 -1
  54. package/dist/cjs/app-globals-3a1e7e63.js +0 -7
  55. package/dist/cjs/app-globals-3a1e7e63.js.map +0 -1
  56. package/dist/cjs/index-5b0b9d4c.js +0 -84
  57. package/dist/cjs/index-5b0b9d4c.js.map +0 -1
  58. package/dist/cjs/index-e7e9ab69.js +0 -1271
  59. package/dist/cjs/index-e7e9ab69.js.map +0 -1
  60. package/dist/cjs/index.cjs.js +0 -16
  61. package/dist/cjs/index.cjs.js.map +0 -1
  62. package/dist/cjs/loader.cjs.js +0 -17
  63. package/dist/cjs/loader.cjs.js.map +0 -1
  64. package/dist/cjs/searchcraft-auto-search-form_13.cjs.entry.js +0 -460
  65. package/dist/cjs/searchcraft-auto-search-form_13.cjs.entry.js.map +0 -1
  66. package/dist/cjs/searchcraft-base-search-form.cjs.entry.js +0 -64
  67. package/dist/cjs/searchcraft-base-search-form.cjs.entry.js.map +0 -1
  68. package/dist/cjs/searchcraft-button-icon.cjs.entry.js +0 -18
  69. package/dist/cjs/searchcraft-button-icon.cjs.entry.js.map +0 -1
  70. package/dist/cjs/searchcraft-button.cjs.entry.js +0 -37
  71. package/dist/cjs/searchcraft-button.cjs.entry.js.map +0 -1
  72. package/dist/cjs/searchcraft-javascript-sdk.cjs.js +0 -27
  73. package/dist/cjs/searchcraft-javascript-sdk.cjs.js.map +0 -1
  74. package/dist/cjs/store-ab3978ce.js +0 -251
  75. package/dist/cjs/store-ab3978ce.js.map +0 -1
  76. package/dist/cjs/utils-57b6c18f.js +0 -48
  77. package/dist/cjs/utils-57b6c18f.js.map +0 -1
  78. package/dist/collection/assets/searchcraft-button-icons.js +0 -9
  79. package/dist/collection/assets/searchcraft-button-icons.js.map +0 -1
  80. package/dist/collection/assets/searchcraft-clear-icon-set.js +0 -45
  81. package/dist/collection/assets/searchcraft-clear-icon-set.js.map +0 -1
  82. package/dist/collection/assets/searchcraft-search-icon-set.js +0 -45
  83. package/dist/collection/assets/searchcraft-search-icon-set.js.map +0 -1
  84. package/dist/collection/collection-manifest.json +0 -27
  85. package/dist/collection/components/searchcraft-auto-search-form/searchcraft-auto-search-form.js +0 -294
  86. package/dist/collection/components/searchcraft-auto-search-form/searchcraft-auto-search-form.js.map +0 -1
  87. package/dist/collection/components/searchcraft-auto-search-form/searchcraft-auto-search-form.module.css +0 -19
  88. package/dist/collection/components/searchcraft-base-search-form/searchcraft-base-search-form.js +0 -168
  89. package/dist/collection/components/searchcraft-base-search-form/searchcraft-base-search-form.js.map +0 -1
  90. package/dist/collection/components/searchcraft-base-search-form/searchcraft-base-search-form.module.css +0 -14
  91. package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.js +0 -302
  92. package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.js.map +0 -1
  93. package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.module.css +0 -210
  94. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js +0 -123
  95. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js.map +0 -1
  96. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.module.css +0 -20
  97. package/dist/collection/components/searchcraft-button/searchcraft-button.js +0 -137
  98. package/dist/collection/components/searchcraft-button/searchcraft-button.js.map +0 -1
  99. package/dist/collection/components/searchcraft-button/searchcraft-button.module.css +0 -82
  100. package/dist/collection/components/searchcraft-clear-input-button/searchcraft-clear-input-button.js +0 -96
  101. package/dist/collection/components/searchcraft-clear-input-button/searchcraft-clear-input-button.js.map +0 -1
  102. package/dist/collection/components/searchcraft-clear-input-button/searchcraft-clear-input-button.module.css +0 -33
  103. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.js +0 -64
  104. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.js.map +0 -1
  105. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.module.css +0 -21
  106. package/dist/collection/components/searchcraft-input/searchcraft-input.js +0 -276
  107. package/dist/collection/components/searchcraft-input/searchcraft-input.js.map +0 -1
  108. package/dist/collection/components/searchcraft-input/searchcraft-input.module.css +0 -241
  109. package/dist/collection/components/searchcraft-input-caption/searchcraft-input-caption.js +0 -122
  110. package/dist/collection/components/searchcraft-input-caption/searchcraft-input-caption.js.map +0 -1
  111. package/dist/collection/components/searchcraft-input-caption/searchcraft-input-caption.module.css +0 -79
  112. package/dist/collection/components/searchcraft-input-icon/searchcraft-input-icon.js +0 -71
  113. package/dist/collection/components/searchcraft-input-icon/searchcraft-input-icon.js.map +0 -1
  114. package/dist/collection/components/searchcraft-input-icon/searchcraft-input-icon.module.css +0 -21
  115. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.js +0 -77
  116. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.js.map +0 -1
  117. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.module.css +0 -21
  118. package/dist/collection/components/searchcraft-spinner-dark/searchcraft-spinner-dark.js +0 -19
  119. package/dist/collection/components/searchcraft-spinner-dark/searchcraft-spinner-dark.js.map +0 -1
  120. package/dist/collection/components/searchcraft-spinner-dark/searchcraft-spinner-dark.module.css +0 -35
  121. package/dist/collection/components/searchcraft-spinner-light/searchcraft-spinner-light.js +0 -19
  122. package/dist/collection/components/searchcraft-spinner-light/searchcraft-spinner-light.js.map +0 -1
  123. package/dist/collection/components/searchcraft-spinner-light/searchcraft-spinner-light.module.css +0 -26
  124. package/dist/collection/index.js +0 -14
  125. package/dist/collection/index.js.map +0 -1
  126. package/dist/collection/provider/store.js +0 -68
  127. package/dist/collection/provider/store.js.map +0 -1
  128. package/dist/collection/utils/utils.js +0 -41
  129. package/dist/collection/utils/utils.js.map +0 -1
  130. package/dist/components/index.js +0 -5
  131. package/dist/components/index.js.map +0 -1
  132. package/dist/components/p-066c8210.js +0 -1106
  133. package/dist/components/p-066c8210.js.map +0 -1
  134. package/dist/components/p-1912bbbd.js.map +0 -1
  135. package/dist/components/p-1bd04bac.js.map +0 -1
  136. package/dist/components/p-36c95064.js +0 -247
  137. package/dist/components/p-36c95064.js.map +0 -1
  138. package/dist/components/p-5cdc6210.js +0 -82
  139. package/dist/components/p-5cdc6210.js.map +0 -1
  140. package/dist/components/p-5e3152c4.js +0 -44
  141. package/dist/components/p-5e3152c4.js.map +0 -1
  142. package/dist/components/p-63035c6a.js +0 -50
  143. package/dist/components/p-63035c6a.js.map +0 -1
  144. package/dist/components/p-6f2a72d3.js +0 -41
  145. package/dist/components/p-6f2a72d3.js.map +0 -1
  146. package/dist/components/p-8d9551ce.js +0 -34
  147. package/dist/components/p-8d9551ce.js.map +0 -1
  148. package/dist/components/p-b1ff2296.js +0 -69
  149. package/dist/components/p-b1ff2296.js.map +0 -1
  150. package/dist/components/p-c3838435.js +0 -62
  151. package/dist/components/p-c3838435.js.map +0 -1
  152. package/dist/components/p-cb75ba7a.js.map +0 -1
  153. package/dist/components/p-d0edf961.js.map +0 -1
  154. package/dist/components/p-d446eda4.js.map +0 -1
  155. package/dist/components/p-d54bca75.js +0 -50
  156. package/dist/components/p-d54bca75.js.map +0 -1
  157. package/dist/components/p-d6616aa5.js +0 -34
  158. package/dist/components/p-d6616aa5.js.map +0 -1
  159. package/dist/components/searchcraft-auto-search-form.js +0 -185
  160. package/dist/components/searchcraft-auto-search-form.js.map +0 -1
  161. package/dist/components/searchcraft-base-search-form.js +0 -153
  162. package/dist/components/searchcraft-base-search-form.js.map +0 -1
  163. package/dist/components/searchcraft-base-search-result.js +0 -8
  164. package/dist/components/searchcraft-base-search-result.js.map +0 -1
  165. package/dist/components/searchcraft-base-search-results.js +0 -111
  166. package/dist/components/searchcraft-base-search-results.js.map +0 -1
  167. package/dist/components/searchcraft-button-icon.js +0 -33
  168. package/dist/components/searchcraft-button-icon.js.map +0 -1
  169. package/dist/components/searchcraft-button.js +0 -8
  170. package/dist/components/searchcraft-button.js.map +0 -1
  171. package/dist/components/searchcraft-clear-icon-set.js +0 -8
  172. package/dist/components/searchcraft-clear-icon-set.js.map +0 -1
  173. package/dist/components/searchcraft-clear-input-button.js +0 -8
  174. package/dist/components/searchcraft-clear-input-button.js.map +0 -1
  175. package/dist/components/searchcraft-error-message.js +0 -8
  176. package/dist/components/searchcraft-error-message.js.map +0 -1
  177. package/dist/components/searchcraft-input-caption.js +0 -8
  178. package/dist/components/searchcraft-input-caption.js.map +0 -1
  179. package/dist/components/searchcraft-input-icon.js +0 -8
  180. package/dist/components/searchcraft-input-icon.js.map +0 -1
  181. package/dist/components/searchcraft-input-label.js +0 -8
  182. package/dist/components/searchcraft-input-label.js.map +0 -1
  183. package/dist/components/searchcraft-input.js +0 -8
  184. package/dist/components/searchcraft-input.js.map +0 -1
  185. package/dist/components/searchcraft-search-icon-set.js +0 -8
  186. package/dist/components/searchcraft-search-icon-set.js.map +0 -1
  187. package/dist/components/searchcraft-spinner-dark.js +0 -8
  188. package/dist/components/searchcraft-spinner-dark.js.map +0 -1
  189. package/dist/components/searchcraft-spinner-light.js +0 -8
  190. package/dist/components/searchcraft-spinner-light.js.map +0 -1
  191. package/dist/esm/index-72ac5051.js.map +0 -1
  192. package/dist/esm/index-eace3343.js +0 -1242
  193. package/dist/esm/index-eace3343.js.map +0 -1
  194. package/dist/esm/index.js +0 -4
  195. package/dist/esm/index.js.map +0 -1
  196. package/dist/esm/loader.js +0 -13
  197. package/dist/esm/loader.js.map +0 -1
  198. package/dist/esm/searchcraft-auto-search-form_13.entry.js +0 -444
  199. package/dist/esm/searchcraft-auto-search-form_13.entry.js.map +0 -1
  200. package/dist/esm/searchcraft-base-search-form.entry.js.map +0 -1
  201. package/dist/esm/searchcraft-button-icon.entry.js.map +0 -1
  202. package/dist/esm/searchcraft-button.entry.js.map +0 -1
  203. package/dist/esm/searchcraft-javascript-sdk.js +0 -22
  204. package/dist/esm/searchcraft-javascript-sdk.js.map +0 -1
  205. package/dist/esm/store-e55b12aa.js +0 -247
  206. package/dist/esm/store-e55b12aa.js.map +0 -1
  207. package/dist/esm/utils-02b18bb5.js.map +0 -1
  208. package/dist/index.cjs.js +0 -1
  209. package/dist/index.js +0 -1
  210. package/dist/loader/cdn.js +0 -1
  211. package/dist/loader/index.cjs.js +0 -1
  212. package/dist/loader/index.d.ts +0 -24
  213. package/dist/loader/index.es2017.js +0 -1
  214. package/dist/loader/index.js +0 -2
  215. package/dist/loader/package.json +0 -11
  216. package/dist/searchcraft-javascript-sdk/p-0ba9029b.js +0 -3
  217. package/dist/searchcraft-javascript-sdk/p-0ba9029b.js.map +0 -1
  218. package/dist/searchcraft-javascript-sdk/p-36c95064.js +0 -11
  219. package/dist/searchcraft-javascript-sdk/p-36c95064.js.map +0 -1
  220. package/dist/searchcraft-javascript-sdk/p-437c6ef9.entry.js +0 -2
  221. package/dist/searchcraft-javascript-sdk/p-437c6ef9.entry.js.map +0 -1
  222. package/dist/searchcraft-javascript-sdk/p-562e923d.entry.js +0 -2
  223. package/dist/searchcraft-javascript-sdk/p-562e923d.entry.js.map +0 -1
  224. package/dist/searchcraft-javascript-sdk/p-5959cd6a.entry.js +0 -2
  225. package/dist/searchcraft-javascript-sdk/p-5959cd6a.entry.js.map +0 -1
  226. package/dist/searchcraft-javascript-sdk/p-5cdc6210.js +0 -7
  227. package/dist/searchcraft-javascript-sdk/p-5cdc6210.js.map +0 -1
  228. package/dist/searchcraft-javascript-sdk/p-5e3152c4.js +0 -2
  229. package/dist/searchcraft-javascript-sdk/p-5e3152c4.js.map +0 -1
  230. package/dist/searchcraft-javascript-sdk/p-e1255160.js +0 -2
  231. package/dist/searchcraft-javascript-sdk/p-e1255160.js.map +0 -1
  232. package/dist/searchcraft-javascript-sdk/p-eb632a89.entry.js +0 -2
  233. package/dist/searchcraft-javascript-sdk/p-eb632a89.entry.js.map +0 -1
  234. /package/dist/{esm → searchcraft-javascript-sdk}/app-globals-0f993ce5.js +0 -0
  235. /package/dist/{esm → searchcraft-javascript-sdk}/app-globals-0f993ce5.js.map +0 -0
@@ -1,19 +0,0 @@
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
- }
@@ -1,168 +0,0 @@
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"searchcraft-base-search-form.js","sourceRoot":"","sources":["../../../src/components/searchcraft-base-search-form/searchcraft-base-search-form.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Event, Prop, State } from '@stencil/core';\nimport {\n type CoreConfigSDK,\n CoreSDK as SearchcraftCore,\n} from '@searchcraft/core';\n\nimport { useSearchcraftStore, useThemeStore } from '@provider/store';\n\nimport type { ScInputCustomEvent } from '@components/searchcraft-input/searchcraft-input';\n\n@Component({\n tag: 'searchcraft-base-search-form',\n styleUrl: 'searchcraft-base-search-form.module.scss',\n shadow: true,\n})\nexport class SearchcraftBaseSearchForm {\n @Prop() config: CoreConfigSDK = {\n apiKey: '',\n endpointURL: '',\n index: [],\n };\n @Prop() errorMessage = 'Search was unsuccessful';\n @Prop() labelForInput = 'Search';\n @Prop() rightToLeftOrientation = false;\n\n @Event() clearInput = () => {};\n\n @State() error = false;\n @State() query = '';\n @State() searchResults: string | null = null;\n\n private searchStore = useSearchcraftStore.getState();\n private themeStore = useThemeStore.getState();\n\n componentDidLoad = () => {\n const searchcraft = new SearchcraftCore(this.config);\n this.searchStore.initialize(searchcraft, true);\n };\n\n handleFormSubmit = async (event) => {\n event.preventDefault();\n if (this.query.trim() === '') {\n this.error = true;\n } else {\n this.error = false;\n this.searchStore.setQuery(this.query);\n await this.searchStore.search();\n this.searchResults = JSON.stringify(this.searchStore.searchResults);\n }\n };\n\n handleSearchInputChange = (event: ScInputCustomEvent<string>) => {\n this.query = event.detail;\n };\n\n handleClearInput = () => {\n this.query = '';\n this?.clearInput();\n };\n\n toggleTheme = () => {\n this.themeStore.toggleTheme();\n };\n\n render() {\n return (\n <form\n class={this.rightToLeftOrientation ? 'formRTL' : 'formLTR'}\n onSubmit={this.handleFormSubmit}\n >\n <searchcraft-input-label label={this.labelForInput} />\n <div class='searchContainer'>\n {this.rightToLeftOrientation && <searchcraft-button />}\n <searchcraft-input\n onClearInput={this.handleClearInput}\n rightToLeftOrientation={this.rightToLeftOrientation}\n onSearchInputChange={this.handleSearchInputChange}\n query={this.query}\n />\n {!this.rightToLeftOrientation && (\n <searchcraft-button onButtonClick={this.handleFormSubmit} />\n )}\n </div>\n {this.error && (\n <searchcraft-error-message errorMessage={this.errorMessage} />\n )}\n </form>\n );\n }\n}\n"]}
@@ -1,14 +0,0 @@
1
- .formLTR {
2
- font-family: Helvetica, Arial, sans-serif;
3
- text-align: left;
4
- }
5
-
6
- .formRTL {
7
- font-family: Helvetica, Arial, sans-serif;
8
- text-align: right;
9
- }
10
-
11
- .searchContainer {
12
- align-items: center;
13
- display: flex;
14
- }
@@ -1,302 +0,0 @@
1
- import { h } from "@stencil/core";
2
- export class SearchcraftBaseSearchResult {
3
- constructor() {
4
- this.buttonCallback = () => { }; // Callback for button click
5
- this.keyDownCallback = () => { }; // Callback for key down event
6
- this.resultCallback = () => { }; // Callback for result container click
7
- this.handleButtonClick = () => {
8
- this.buttonCallback();
9
- };
10
- this.handleContainerClick = () => {
11
- if (this.isInteractive) {
12
- this.resultCallback();
13
- }
14
- };
15
- this.buttonText = '';
16
- this.imageDescription = '';
17
- this.imageSource = '';
18
- this.isInteractive = false;
19
- this.primaryContent = '';
20
- this.secondaryContent = '';
21
- this.tertiaryContent = '';
22
- this.headingText = '';
23
- this.subheadingText = '';
24
- this.themeMode = 'light';
25
- this.customStyles = {};
26
- }
27
- render() {
28
- const isLightTheme = this.themeMode === 'light';
29
- const containerStyle = Object.assign({}, this.customStyles);
30
- return (h("div", { key: '512b19a2637993cd71fe9b0ac1557106f8501cf2', class: this.isInteractive
31
- ? isLightTheme
32
- ? 'interactiveResultContainerLight'
33
- : 'interactiveResultContainerDark'
34
- : 'resultContainer', id: 'searchcraft-item', onClick: this.handleContainerClick, onKeyDown: this.keyDownCallback, style: containerStyle, tabindex: '0' }, this.isInteractive && (h("div", { key: '735b5c931e6bb209cb948d1a4834f689c836528c', class: 'interactiveIconLarge' }, isLightTheme ? (h("searchcraft-clear-icon-set", { type: 'arrow-light' })) : (h("searchcraft-clear-icon-set", { type: 'arrow-dark' })))), h("div", { key: 'd864f312cc779cb52f7f4529691f32b2460a38c1', class: 'imageContainer' }, h("img", { key: 'b705f3ebaa1c02e0a80c181c0cb9e6c5afd1b10c', alt: this.imageDescription, class: isLightTheme ? 'imageLight' : 'imageDark', src: this.imageSource })), h("div", { key: 'da90f1ba12456a8a25c5983e1061fba917632ebf', class: 'contentContainer' }, h("h2", { key: '27af1079e7b12025a96cc0ac890dc9a2516bfa4a', class: isLightTheme ? 'headingLight' : 'headingDark' }, this.headingText, this.isInteractive && (h("div", { key: 'da3f8e81bb039fb68b1afb8e3656ce04adc552ba', class: 'interactiveIconSmall' }, isLightTheme ? (h("searchcraft-clear-icon-set", { type: 'arrow-light' })) : (h("searchcraft-clear-icon-set", { type: 'arrow-dark' }))))), h("h3", { key: 'f62cd5e67cdf03286387061ed944504ac1b0e0d2', class: isLightTheme ? 'subheadingLight' : 'subheadingDark' }, this.subheadingText), h("p", { key: 'b8024831da3be09abfb758370e25b42a7d9e8517', class: isLightTheme ? 'primaryContentLight' : 'primaryContentDark' }, this.primaryContent), h("p", { key: 'b9a847323f17b8cda2c8de170c9308359f113cfd', class: isLightTheme ? 'secondaryContentLight' : 'secondaryContentDark' }, this.secondaryContent), h("p", { key: 'cda9259099171541f59fcf6ab4524d4ba3d40f29', class: isLightTheme ? 'tertiaryContentLight' : 'tertiaryContentDark' }, this.tertiaryContent), this.buttonText && (h("button", { key: 'f527dad1a614f3bf54d8ce724f374423013f8ca2', onClick: this.handleButtonClick, type: 'button' }, this.buttonText)))));
35
- }
36
- static get is() { return "searchcraft-base-search-result"; }
37
- static get encapsulation() { return "shadow"; }
38
- static get originalStyleUrls() {
39
- return {
40
- "$": ["searchcraft-base-search-result.module.scss"]
41
- };
42
- }
43
- static get styleUrls() {
44
- return {
45
- "$": ["searchcraft-base-search-result.module.css"]
46
- };
47
- }
48
- static get properties() {
49
- return {
50
- "buttonText": {
51
- "type": "string",
52
- "mutable": false,
53
- "complexType": {
54
- "original": "string",
55
- "resolved": "string",
56
- "references": {}
57
- },
58
- "required": false,
59
- "optional": false,
60
- "docs": {
61
- "tags": [],
62
- "text": ""
63
- },
64
- "attribute": "button-text",
65
- "reflect": false,
66
- "defaultValue": "''"
67
- },
68
- "imageDescription": {
69
- "type": "string",
70
- "mutable": false,
71
- "complexType": {
72
- "original": "string",
73
- "resolved": "string",
74
- "references": {}
75
- },
76
- "required": false,
77
- "optional": false,
78
- "docs": {
79
- "tags": [],
80
- "text": ""
81
- },
82
- "attribute": "image-description",
83
- "reflect": false,
84
- "defaultValue": "''"
85
- },
86
- "imageSource": {
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": "image-source",
101
- "reflect": false,
102
- "defaultValue": "''"
103
- },
104
- "isInteractive": {
105
- "type": "boolean",
106
- "mutable": false,
107
- "complexType": {
108
- "original": "boolean",
109
- "resolved": "boolean",
110
- "references": {}
111
- },
112
- "required": false,
113
- "optional": false,
114
- "docs": {
115
- "tags": [],
116
- "text": ""
117
- },
118
- "attribute": "is-interactive",
119
- "reflect": false,
120
- "defaultValue": "false"
121
- },
122
- "primaryContent": {
123
- "type": "string",
124
- "mutable": false,
125
- "complexType": {
126
- "original": "string",
127
- "resolved": "string",
128
- "references": {}
129
- },
130
- "required": false,
131
- "optional": false,
132
- "docs": {
133
- "tags": [],
134
- "text": ""
135
- },
136
- "attribute": "primary-content",
137
- "reflect": false,
138
- "defaultValue": "''"
139
- },
140
- "secondaryContent": {
141
- "type": "string",
142
- "mutable": false,
143
- "complexType": {
144
- "original": "string",
145
- "resolved": "string",
146
- "references": {}
147
- },
148
- "required": false,
149
- "optional": false,
150
- "docs": {
151
- "tags": [],
152
- "text": ""
153
- },
154
- "attribute": "secondary-content",
155
- "reflect": false,
156
- "defaultValue": "''"
157
- },
158
- "tertiaryContent": {
159
- "type": "string",
160
- "mutable": false,
161
- "complexType": {
162
- "original": "string",
163
- "resolved": "string",
164
- "references": {}
165
- },
166
- "required": false,
167
- "optional": false,
168
- "docs": {
169
- "tags": [],
170
- "text": ""
171
- },
172
- "attribute": "tertiary-content",
173
- "reflect": false,
174
- "defaultValue": "''"
175
- },
176
- "headingText": {
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": "heading-text",
191
- "reflect": false,
192
- "defaultValue": "''"
193
- },
194
- "subheadingText": {
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": "subheading-text",
209
- "reflect": false,
210
- "defaultValue": "''"
211
- },
212
- "themeMode": {
213
- "type": "string",
214
- "mutable": false,
215
- "complexType": {
216
- "original": "'light' | 'dark'",
217
- "resolved": "\"dark\" | \"light\"",
218
- "references": {}
219
- },
220
- "required": false,
221
- "optional": false,
222
- "docs": {
223
- "tags": [],
224
- "text": ""
225
- },
226
- "attribute": "theme-mode",
227
- "reflect": false,
228
- "defaultValue": "'light'"
229
- },
230
- "customStyles": {
231
- "type": "unknown",
232
- "mutable": false,
233
- "complexType": {
234
- "original": "Record<string, string>",
235
- "resolved": "{ [x: string]: string; }",
236
- "references": {
237
- "Record": {
238
- "location": "global",
239
- "id": "global::Record"
240
- }
241
- }
242
- },
243
- "required": false,
244
- "optional": false,
245
- "docs": {
246
- "tags": [],
247
- "text": ""
248
- },
249
- "defaultValue": "{}"
250
- }
251
- };
252
- }
253
- static get events() {
254
- return [{
255
- "method": "buttonCallback",
256
- "name": "buttonCallback",
257
- "bubbles": true,
258
- "cancelable": true,
259
- "composed": true,
260
- "docs": {
261
- "tags": [],
262
- "text": ""
263
- },
264
- "complexType": {
265
- "original": "any",
266
- "resolved": "any",
267
- "references": {}
268
- }
269
- }, {
270
- "method": "keyDownCallback",
271
- "name": "keyDownCallback",
272
- "bubbles": true,
273
- "cancelable": true,
274
- "composed": true,
275
- "docs": {
276
- "tags": [],
277
- "text": ""
278
- },
279
- "complexType": {
280
- "original": "any",
281
- "resolved": "any",
282
- "references": {}
283
- }
284
- }, {
285
- "method": "resultCallback",
286
- "name": "resultCallback",
287
- "bubbles": true,
288
- "cancelable": true,
289
- "composed": true,
290
- "docs": {
291
- "tags": [],
292
- "text": ""
293
- },
294
- "complexType": {
295
- "original": "any",
296
- "resolved": "any",
297
- "references": {}
298
- }
299
- }];
300
- }
301
- }
302
- //# sourceMappingURL=searchcraft-base-search-result.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"searchcraft-base-search-result.js","sourceRoot":"","sources":["../../../src/components/searchcraft-base-search-result/searchcraft-base-search-result.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAO1D,MAAM,OAAO,2BAA2B;;QAa7B,mBAAc,GAAe,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,4BAA4B;QACnE,oBAAe,GAAe,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,8BAA8B;QACtE,mBAAc,GAAe,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,sCAAsC;QAE9E,sBAAiB,GAAG,GAAG,EAAE;YAC/B,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC,CAAC;QAEM,yBAAoB,GAAG,GAAG,EAAE;YAClC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,CAAC;QACH,CAAC,CAAC;0BAxBmB,EAAE;gCACI,EAAE;2BACP,EAAE;6BACA,KAAK;8BACJ,EAAE;gCACA,EAAE;+BACH,EAAE;2BACN,EAAE;8BACC,EAAE;yBACW,OAAO;4BACE,EAAE;;IAgBjD,MAAM;QACJ,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,KAAK,OAAO,CAAC;QAChD,MAAM,cAAc,qBAAQ,IAAI,CAAC,YAAY,CAAE,CAAC;QAChD,OAAO,CACL,4DACE,KAAK,EACH,IAAI,CAAC,aAAa;gBAChB,CAAC,CAAC,YAAY;oBACZ,CAAC,CAAC,iCAAiC;oBACnC,CAAC,CAAC,gCAAgC;gBACpC,CAAC,CAAC,iBAAiB,EAEvB,EAAE,EAAC,kBAAkB,EACrB,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAClC,SAAS,EAAE,IAAI,CAAC,eAAe,EAC/B,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAC,GAAG;YAEX,IAAI,CAAC,aAAa,IAAI,CACrB,4DAAK,KAAK,EAAC,sBAAsB,IAC9B,YAAY,CAAC,CAAC,CAAC,CACd,kCAA4B,IAAI,EAAC,aAAa,GAAG,CAClD,CAAC,CAAC,CAAC,CACF,kCAA4B,IAAI,EAAC,YAAY,GAAG,CACjD,CACG,CACP;YACD,4DAAK,KAAK,EAAC,gBAAgB;gBACzB,4DACE,GAAG,EAAE,IAAI,CAAC,gBAAgB,EAC1B,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,EAChD,GAAG,EAAE,IAAI,CAAC,WAAW,GACrB,CACE;YACN,4DAAK,KAAK,EAAC,kBAAkB;gBAC3B,2DAAI,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa;oBACrD,IAAI,CAAC,WAAW;oBAChB,IAAI,CAAC,aAAa,IAAI,CACrB,4DAAK,KAAK,EAAC,sBAAsB,IAC9B,YAAY,CAAC,CAAC,CAAC,CACd,kCAA4B,IAAI,EAAC,aAAa,GAAG,CAClD,CAAC,CAAC,CAAC,CACF,kCAA4B,IAAI,EAAC,YAAY,GAAG,CACjD,CACG,CACP,CACE;gBACL,2DAAI,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,IAC3D,IAAI,CAAC,cAAc,CACjB;gBACL,0DACE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,oBAAoB,IAEjE,IAAI,CAAC,cAAc,CAClB;gBACJ,0DACE,KAAK,EACH,YAAY,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,sBAAsB,IAGhE,IAAI,CAAC,gBAAgB,CACpB;gBACJ,0DACE,KAAK,EACH,YAAY,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,qBAAqB,IAG9D,IAAI,CAAC,eAAe,CACnB;gBACH,IAAI,CAAC,UAAU,IAAI,CAClB,+DAAQ,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,IAAI,EAAC,QAAQ,IACnD,IAAI,CAAC,UAAU,CACT,CACV,CACG,CACF,CACP,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Event, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'searchcraft-base-search-result',\n styleUrl: 'searchcraft-base-search-result.module.scss',\n shadow: true,\n})\nexport class SearchcraftBaseSearchResult {\n @Prop() buttonText = ''; // Label for the button\n @Prop() imageDescription = ''; // Alternative text for the image\n @Prop() imageSource = ''; // Source URL for the image\n @Prop() isInteractive = false; // Determines if the result is interactive\n @Prop() primaryContent = ''; // Primary body content\n @Prop() secondaryContent = ''; // Secondary body content\n @Prop() tertiaryContent = ''; // Tertiary body content\n @Prop() headingText = ''; // Text for the heading\n @Prop() subheadingText = ''; // Text for the subheading\n @Prop() themeMode: 'light' | 'dark' = 'light'; // Light or dark theme context\n @Prop() customStyles: Record<string, string> = {}; // Custom styles passed from parent\n\n @Event() buttonCallback: () => void = () => {}; // Callback for button click\n @Event() keyDownCallback: () => void = () => {}; // Callback for key down event\n @Event() resultCallback: () => void = () => {}; // Callback for result container click\n\n private handleButtonClick = () => {\n this.buttonCallback();\n };\n\n private handleContainerClick = () => {\n if (this.isInteractive) {\n this.resultCallback();\n }\n };\n\n render() {\n const isLightTheme = this.themeMode === 'light';\n const containerStyle = { ...this.customStyles };\n return (\n <div\n class={\n this.isInteractive\n ? isLightTheme\n ? 'interactiveResultContainerLight'\n : 'interactiveResultContainerDark'\n : 'resultContainer'\n }\n id='searchcraft-item'\n onClick={this.handleContainerClick}\n onKeyDown={this.keyDownCallback}\n style={containerStyle}\n tabindex='0'\n >\n {this.isInteractive && (\n <div class='interactiveIconLarge'>\n {isLightTheme ? (\n <searchcraft-clear-icon-set type='arrow-light' />\n ) : (\n <searchcraft-clear-icon-set type='arrow-dark' />\n )}\n </div>\n )}\n <div class='imageContainer'>\n <img\n alt={this.imageDescription}\n class={isLightTheme ? 'imageLight' : 'imageDark'}\n src={this.imageSource}\n />\n </div>\n <div class='contentContainer'>\n <h2 class={isLightTheme ? 'headingLight' : 'headingDark'}>\n {this.headingText}\n {this.isInteractive && (\n <div class='interactiveIconSmall'>\n {isLightTheme ? (\n <searchcraft-clear-icon-set type='arrow-light' />\n ) : (\n <searchcraft-clear-icon-set type='arrow-dark' />\n )}\n </div>\n )}\n </h2>\n <h3 class={isLightTheme ? 'subheadingLight' : 'subheadingDark'}>\n {this.subheadingText}\n </h3>\n <p\n class={isLightTheme ? 'primaryContentLight' : 'primaryContentDark'}\n >\n {this.primaryContent}\n </p>\n <p\n class={\n isLightTheme ? 'secondaryContentLight' : 'secondaryContentDark'\n }\n >\n {this.secondaryContent}\n </p>\n <p\n class={\n isLightTheme ? 'tertiaryContentLight' : 'tertiaryContentDark'\n }\n >\n {this.tertiaryContent}\n </p>\n {this.buttonText && (\n <button onClick={this.handleButtonClick} type='button'>\n {this.buttonText}\n </button>\n )}\n </div>\n </div>\n );\n }\n}\n"]}