@searchcraft/javascript-sdk 0.8.2 → 0.9.0

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 (285) hide show
  1. package/README.md +25 -37
  2. package/dist/components/defineCustomElements.d.ts +1 -0
  3. package/dist/components/defineCustomElements.js +46 -0
  4. package/dist/components/index.d.ts +44 -11
  5. package/dist/components/index.js +104 -53
  6. package/dist/components/index.js.map +1 -1
  7. package/dist/components/p-05872320.js +1462 -0
  8. package/dist/components/p-05872320.js.map +1 -0
  9. package/dist/components/{p-433f974c.js → p-11b05b94.js} +5 -5
  10. package/dist/components/p-11b05b94.js.map +1 -0
  11. package/dist/components/{p-6e2eef88.js → p-3026f7d3.js} +17 -126
  12. package/dist/components/p-3026f7d3.js.map +1 -0
  13. package/dist/components/{p-ec0d230e.js → p-3568414f.js} +4 -4
  14. package/dist/components/p-3568414f.js.map +1 -0
  15. package/dist/{cjs/SearchcraftStore-75fac5e0.js → components/p-6d8b0ead.js} +1408 -1350
  16. package/dist/components/p-6d8b0ead.js.map +1 -0
  17. package/dist/components/{p-fc7cda96.js → p-7777d986.js} +4 -4
  18. package/dist/components/{p-fc7cda96.js.map → p-7777d986.js.map} +1 -1
  19. package/dist/components/p-b0bc5cee.js +102 -0
  20. package/dist/components/p-b0bc5cee.js.map +1 -0
  21. package/dist/components/{p-4e9cd62e.js → p-bb12ab5a.js} +3 -3
  22. package/dist/components/{p-4e9cd62e.js.map → p-bb12ab5a.js.map} +1 -1
  23. package/dist/components/{p-97332d3e.js → p-cd9ba361.js} +3 -3
  24. package/dist/components/p-cd9ba361.js.map +1 -0
  25. package/dist/components/searchcraft-ad.d.ts +11 -0
  26. package/dist/components/searchcraft-ad.js +8 -0
  27. package/dist/components/searchcraft-ad.js.map +1 -0
  28. package/dist/components/searchcraft-base-search-result.js +1 -1
  29. package/dist/components/searchcraft-base-search-results.js +79 -29
  30. package/dist/components/searchcraft-base-search-results.js.map +1 -1
  31. package/dist/components/searchcraft-facet-list.js +1 -1
  32. package/dist/components/searchcraft-filter-panel.js +7 -7
  33. package/dist/components/searchcraft-filter-panel.js.map +1 -1
  34. package/dist/components/searchcraft-input-form.js +1 -1
  35. package/dist/components/searchcraft-pagination.js +2 -2
  36. package/dist/components/searchcraft-pagination.js.map +1 -1
  37. package/dist/components/searchcraft-popover-button.js +3 -3
  38. package/dist/components/searchcraft-popover-button.js.map +1 -1
  39. package/dist/components/searchcraft-popover-form.js +28 -35
  40. package/dist/components/searchcraft-popover-form.js.map +1 -1
  41. package/dist/components/searchcraft-popover-list-item.js +1 -1
  42. package/dist/components/searchcraft-popover-list-view.js +1 -1
  43. package/dist/components/searchcraft-results-info.js +2 -2
  44. package/dist/components/searchcraft-results-info.js.map +1 -1
  45. package/dist/components/searchcraft-search-results-per-page.js +3 -3
  46. package/dist/components/searchcraft-search-results-per-page.js.map +1 -1
  47. package/dist/components/searchcraft-slider.js +1 -1
  48. package/dist/components/searchcraft-theme.js +1 -1
  49. package/dist/components/searchcraft-theme.js.map +1 -1
  50. package/dist/components/searchcraft-toggle-button.js +1 -1
  51. package/dist/types/components/searchcraft-ad/searchcraft-ad.d.ts +19 -0
  52. package/dist/types/components/searchcraft-base-search-results/searchcraft-base-search-results.d.ts +10 -7
  53. package/dist/types/components/searchcraft-facet-list/searchcraft-facet-list.d.ts +1 -1
  54. package/dist/types/components/searchcraft-input-form/searchcraft-input-form.d.ts +4 -29
  55. package/dist/types/components/searchcraft-popover-form/searchcraft-popover-form.d.ts +1 -11
  56. package/dist/types/components/searchcraft-popover-list-view/searchcraft-popover-list-view.d.ts +4 -0
  57. package/dist/types/components.d.ts +33 -158
  58. package/dist/types/index.d.ts +10 -1
  59. package/dist/types/store/SearchcraftStore.d.ts +4 -0
  60. package/dist/types/{provider → store}/SearchcraftStore.types.d.ts +2 -1
  61. package/dist/{collection/provider/store.js → types/store/index.d.ts} +2 -2
  62. package/package.json +8 -17
  63. package/dist/cjs/SearchcraftStore-75fac5e0.js.map +0 -1
  64. package/dist/cjs/app-globals-3a1e7e63.js +0 -7
  65. package/dist/cjs/app-globals-3a1e7e63.js.map +0 -1
  66. package/dist/cjs/index-5b0b9d4c.js +0 -84
  67. package/dist/cjs/index-5b0b9d4c.js.map +0 -1
  68. package/dist/cjs/index-a81df4f0.js +0 -1577
  69. package/dist/cjs/index-a81df4f0.js.map +0 -1
  70. package/dist/cjs/index.cjs.js +0 -14
  71. package/dist/cjs/index.cjs.js.map +0 -1
  72. package/dist/cjs/loader.cjs.js +0 -17
  73. package/dist/cjs/loader.cjs.js.map +0 -1
  74. package/dist/cjs/searchcraft-base-search-result_2.cjs.entry.js +0 -152
  75. package/dist/cjs/searchcraft-base-search-result_2.cjs.entry.js.map +0 -1
  76. package/dist/cjs/searchcraft-base-search-results.cjs.entry.js +0 -97
  77. package/dist/cjs/searchcraft-base-search-results.cjs.entry.js.map +0 -1
  78. package/dist/cjs/searchcraft-button_3.cjs.entry.js +0 -88
  79. package/dist/cjs/searchcraft-button_3.cjs.entry.js.map +0 -1
  80. package/dist/cjs/searchcraft-facet-list_3.cjs.entry.js +0 -393
  81. package/dist/cjs/searchcraft-facet-list_3.cjs.entry.js.map +0 -1
  82. package/dist/cjs/searchcraft-filter-panel.cjs.entry.js +0 -113
  83. package/dist/cjs/searchcraft-filter-panel.cjs.entry.js.map +0 -1
  84. package/dist/cjs/searchcraft-input-form_2.cjs.entry.js +0 -260
  85. package/dist/cjs/searchcraft-input-form_2.cjs.entry.js.map +0 -1
  86. package/dist/cjs/searchcraft-javascript-sdk.cjs.js +0 -27
  87. package/dist/cjs/searchcraft-javascript-sdk.cjs.js.map +0 -1
  88. package/dist/cjs/searchcraft-pagination.cjs.entry.js +0 -106
  89. package/dist/cjs/searchcraft-pagination.cjs.entry.js.map +0 -1
  90. package/dist/cjs/searchcraft-popover-button.cjs.entry.js +0 -22
  91. package/dist/cjs/searchcraft-popover-button.cjs.entry.js.map +0 -1
  92. package/dist/cjs/searchcraft-popover-form.cjs.entry.js +0 -234
  93. package/dist/cjs/searchcraft-popover-form.cjs.entry.js.map +0 -1
  94. package/dist/cjs/searchcraft-popover-list-item_2.cjs.entry.js +0 -101
  95. package/dist/cjs/searchcraft-popover-list-item_2.cjs.entry.js.map +0 -1
  96. package/dist/cjs/searchcraft-results-info.cjs.entry.js +0 -80
  97. package/dist/cjs/searchcraft-results-info.cjs.entry.js.map +0 -1
  98. package/dist/cjs/searchcraft-search-results-per-page.cjs.entry.js +0 -75
  99. package/dist/cjs/searchcraft-search-results-per-page.cjs.entry.js.map +0 -1
  100. package/dist/cjs/searchcraft-select.cjs.entry.js +0 -70
  101. package/dist/cjs/searchcraft-select.cjs.entry.js.map +0 -1
  102. package/dist/cjs/searchcraft-theme.cjs.entry.js +0 -56
  103. package/dist/cjs/searchcraft-theme.cjs.entry.js.map +0 -1
  104. package/dist/cjs/styles-7b2d06f2.js +0 -28
  105. package/dist/cjs/styles-7b2d06f2.js.map +0 -1
  106. package/dist/cjs/units-fe4d8083.js +0 -88
  107. package/dist/cjs/units-fe4d8083.js.map +0 -1
  108. package/dist/collection/collection-manifest.json +0 -32
  109. package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.js +0 -302
  110. package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.js.map +0 -1
  111. package/dist/collection/components/searchcraft-base-search-result-ad/searchcraft-base-search-result-ad.js +0 -73
  112. package/dist/collection/components/searchcraft-base-search-result-ad/searchcraft-base-search-result-ad.js.map +0 -1
  113. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js +0 -313
  114. package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js.map +0 -1
  115. package/dist/collection/components/searchcraft-button/searchcraft-button.js +0 -217
  116. package/dist/collection/components/searchcraft-button/searchcraft-button.js.map +0 -1
  117. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.js +0 -44
  118. package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.js.map +0 -1
  119. package/dist/collection/components/searchcraft-facet-list/searchcraft-facet-list.js +0 -200
  120. package/dist/collection/components/searchcraft-facet-list/searchcraft-facet-list.js.map +0 -1
  121. package/dist/collection/components/searchcraft-filter-panel/searchcraft-filter-panel.js +0 -149
  122. package/dist/collection/components/searchcraft-filter-panel/searchcraft-filter-panel.js.map +0 -1
  123. package/dist/collection/components/searchcraft-input-form/searchcraft-input-form.js +0 -443
  124. package/dist/collection/components/searchcraft-input-form/searchcraft-input-form.js.map +0 -1
  125. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.js +0 -67
  126. package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.js.map +0 -1
  127. package/dist/collection/components/searchcraft-pagination/searchcraft-pagination.js +0 -141
  128. package/dist/collection/components/searchcraft-pagination/searchcraft-pagination.js.map +0 -1
  129. package/dist/collection/components/searchcraft-popover-button/searchcraft-popover-button.js +0 -15
  130. package/dist/collection/components/searchcraft-popover-button/searchcraft-popover-button.js.map +0 -1
  131. package/dist/collection/components/searchcraft-popover-form/searchcraft-popover-form.js +0 -381
  132. package/dist/collection/components/searchcraft-popover-form/searchcraft-popover-form.js.map +0 -1
  133. package/dist/collection/components/searchcraft-popover-list-item/searchcraft-popover-list-item.js +0 -128
  134. package/dist/collection/components/searchcraft-popover-list-item/searchcraft-popover-list-item.js.map +0 -1
  135. package/dist/collection/components/searchcraft-popover-list-item-ad/searchcraft-popover-list-item-ad.js +0 -73
  136. package/dist/collection/components/searchcraft-popover-list-item-ad/searchcraft-popover-list-item-ad.js.map +0 -1
  137. package/dist/collection/components/searchcraft-popover-list-view/searchcraft-popover-list-view.js +0 -141
  138. package/dist/collection/components/searchcraft-popover-list-view/searchcraft-popover-list-view.js.map +0 -1
  139. package/dist/collection/components/searchcraft-results-info/searchcraft-results-info.js +0 -138
  140. package/dist/collection/components/searchcraft-results-info/searchcraft-results-info.js.map +0 -1
  141. package/dist/collection/components/searchcraft-search-results-per-page/searchcraft-search-results-per-page.js +0 -129
  142. package/dist/collection/components/searchcraft-search-results-per-page/searchcraft-search-results-per-page.js.map +0 -1
  143. package/dist/collection/components/searchcraft-select/searchcraft-select.js +0 -261
  144. package/dist/collection/components/searchcraft-select/searchcraft-select.js.map +0 -1
  145. package/dist/collection/components/searchcraft-slider/searchcraft-slider.js +0 -194
  146. package/dist/collection/components/searchcraft-slider/searchcraft-slider.js.map +0 -1
  147. package/dist/collection/components/searchcraft-theme/searchcraft-theme.js +0 -97
  148. package/dist/collection/components/searchcraft-theme/searchcraft-theme.js.map +0 -1
  149. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.js +0 -118
  150. package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.js.map +0 -1
  151. package/dist/collection/index.js +0 -3
  152. package/dist/collection/index.js.map +0 -1
  153. package/dist/collection/provider/SearchcraftStore.js +0 -160
  154. package/dist/collection/provider/SearchcraftStore.js.map +0 -1
  155. package/dist/collection/provider/SearchcraftStore.types.js +0 -2
  156. package/dist/collection/provider/SearchcraftStore.types.js.map +0 -1
  157. package/dist/collection/provider/store.js.map +0 -1
  158. package/dist/collection/utils/facets.js +0 -128
  159. package/dist/collection/utils/facets.js.map +0 -1
  160. package/dist/collection/utils/index.js +0 -4
  161. package/dist/collection/utils/index.js.map +0 -1
  162. package/dist/collection/utils/styles.js +0 -22
  163. package/dist/collection/utils/styles.js.map +0 -1
  164. package/dist/collection/utils/units.js +0 -83
  165. package/dist/collection/utils/units.js.map +0 -1
  166. package/dist/components/p-25ee7496.js +0 -58
  167. package/dist/components/p-25ee7496.js.map +0 -1
  168. package/dist/components/p-38419178.js +0 -1625
  169. package/dist/components/p-38419178.js.map +0 -1
  170. package/dist/components/p-433f974c.js.map +0 -1
  171. package/dist/components/p-6e2eef88.js.map +0 -1
  172. package/dist/components/p-97332d3e.js.map +0 -1
  173. package/dist/components/p-bff4d3fc.js +0 -65
  174. package/dist/components/p-bff4d3fc.js.map +0 -1
  175. package/dist/components/p-de4a48b1.js +0 -65
  176. package/dist/components/p-de4a48b1.js.map +0 -1
  177. package/dist/components/p-ec0d230e.js.map +0 -1
  178. package/dist/components/searchcraft-base-search-result-ad.d.ts +0 -11
  179. package/dist/components/searchcraft-base-search-result-ad.js +0 -8
  180. package/dist/components/searchcraft-base-search-result-ad.js.map +0 -1
  181. package/dist/components/searchcraft-popover-list-item-ad.d.ts +0 -11
  182. package/dist/components/searchcraft-popover-list-item-ad.js +0 -8
  183. package/dist/components/searchcraft-popover-list-item-ad.js.map +0 -1
  184. package/dist/esm/SearchcraftStore-3cfd565a.js +0 -1625
  185. package/dist/esm/SearchcraftStore-3cfd565a.js.map +0 -1
  186. package/dist/esm/app-globals-0f993ce5.js +0 -5
  187. package/dist/esm/app-globals-0f993ce5.js.map +0 -1
  188. package/dist/esm/index-3608c57d.js +0 -1548
  189. package/dist/esm/index-3608c57d.js.map +0 -1
  190. package/dist/esm/index-72ac5051.js +0 -82
  191. package/dist/esm/index-72ac5051.js.map +0 -1
  192. package/dist/esm/index.js +0 -4
  193. package/dist/esm/index.js.map +0 -1
  194. package/dist/esm/loader.js +0 -13
  195. package/dist/esm/loader.js.map +0 -1
  196. package/dist/esm/searchcraft-base-search-result_2.entry.js +0 -147
  197. package/dist/esm/searchcraft-base-search-result_2.entry.js.map +0 -1
  198. package/dist/esm/searchcraft-base-search-results.entry.js +0 -93
  199. package/dist/esm/searchcraft-base-search-results.entry.js.map +0 -1
  200. package/dist/esm/searchcraft-button_3.entry.js +0 -82
  201. package/dist/esm/searchcraft-button_3.entry.js.map +0 -1
  202. package/dist/esm/searchcraft-facet-list_3.entry.js +0 -387
  203. package/dist/esm/searchcraft-facet-list_3.entry.js.map +0 -1
  204. package/dist/esm/searchcraft-filter-panel.entry.js +0 -109
  205. package/dist/esm/searchcraft-filter-panel.entry.js.map +0 -1
  206. package/dist/esm/searchcraft-input-form_2.entry.js +0 -255
  207. package/dist/esm/searchcraft-input-form_2.entry.js.map +0 -1
  208. package/dist/esm/searchcraft-javascript-sdk.js +0 -22
  209. package/dist/esm/searchcraft-javascript-sdk.js.map +0 -1
  210. package/dist/esm/searchcraft-pagination.entry.js +0 -102
  211. package/dist/esm/searchcraft-pagination.entry.js.map +0 -1
  212. package/dist/esm/searchcraft-popover-button.entry.js +0 -18
  213. package/dist/esm/searchcraft-popover-button.entry.js.map +0 -1
  214. package/dist/esm/searchcraft-popover-form.entry.js +0 -230
  215. package/dist/esm/searchcraft-popover-form.entry.js.map +0 -1
  216. package/dist/esm/searchcraft-popover-list-item_2.entry.js +0 -96
  217. package/dist/esm/searchcraft-popover-list-item_2.entry.js.map +0 -1
  218. package/dist/esm/searchcraft-results-info.entry.js +0 -76
  219. package/dist/esm/searchcraft-results-info.entry.js.map +0 -1
  220. package/dist/esm/searchcraft-search-results-per-page.entry.js +0 -71
  221. package/dist/esm/searchcraft-search-results-per-page.entry.js.map +0 -1
  222. package/dist/esm/searchcraft-select.entry.js +0 -66
  223. package/dist/esm/searchcraft-select.entry.js.map +0 -1
  224. package/dist/esm/searchcraft-theme.entry.js +0 -52
  225. package/dist/esm/searchcraft-theme.entry.js.map +0 -1
  226. package/dist/esm/styles-961644ef.js +0 -25
  227. package/dist/esm/styles-961644ef.js.map +0 -1
  228. package/dist/esm/units-daaf96f5.js +0 -84
  229. package/dist/esm/units-daaf96f5.js.map +0 -1
  230. package/dist/index.cjs.js +0 -1
  231. package/dist/index.js +0 -1
  232. package/dist/loader/cdn.js +0 -1
  233. package/dist/loader/index.cjs.js +0 -1
  234. package/dist/loader/index.d.ts +0 -24
  235. package/dist/loader/index.es2017.js +0 -1
  236. package/dist/loader/index.js +0 -2
  237. package/dist/loader/package.json +0 -11
  238. package/dist/searchcraft-javascript-sdk/index.esm.js +0 -2
  239. package/dist/searchcraft-javascript-sdk/index.esm.js.map +0 -1
  240. package/dist/searchcraft-javascript-sdk/p-279f3e15.entry.js +0 -2
  241. package/dist/searchcraft-javascript-sdk/p-279f3e15.entry.js.map +0 -1
  242. package/dist/searchcraft-javascript-sdk/p-2bc82b48.entry.js +0 -2
  243. package/dist/searchcraft-javascript-sdk/p-2bc82b48.entry.js.map +0 -1
  244. package/dist/searchcraft-javascript-sdk/p-2dc07b47.entry.js +0 -2
  245. package/dist/searchcraft-javascript-sdk/p-2dc07b47.entry.js.map +0 -1
  246. package/dist/searchcraft-javascript-sdk/p-37842dee.entry.js +0 -2
  247. package/dist/searchcraft-javascript-sdk/p-37842dee.entry.js.map +0 -1
  248. package/dist/searchcraft-javascript-sdk/p-38419178.js +0 -11
  249. package/dist/searchcraft-javascript-sdk/p-38419178.js.map +0 -1
  250. package/dist/searchcraft-javascript-sdk/p-3be70f20.entry.js +0 -2
  251. package/dist/searchcraft-javascript-sdk/p-3be70f20.entry.js.map +0 -1
  252. package/dist/searchcraft-javascript-sdk/p-5cdc6210.js +0 -7
  253. package/dist/searchcraft-javascript-sdk/p-5cdc6210.js.map +0 -1
  254. package/dist/searchcraft-javascript-sdk/p-5e064c07.entry.js +0 -2
  255. package/dist/searchcraft-javascript-sdk/p-5e064c07.entry.js.map +0 -1
  256. package/dist/searchcraft-javascript-sdk/p-6104fe5d.js +0 -2
  257. package/dist/searchcraft-javascript-sdk/p-6104fe5d.js.map +0 -1
  258. package/dist/searchcraft-javascript-sdk/p-6bffd3f5.entry.js +0 -2
  259. package/dist/searchcraft-javascript-sdk/p-6bffd3f5.entry.js.map +0 -1
  260. package/dist/searchcraft-javascript-sdk/p-7813f3cc.entry.js +0 -2
  261. package/dist/searchcraft-javascript-sdk/p-7813f3cc.entry.js.map +0 -1
  262. package/dist/searchcraft-javascript-sdk/p-7e13c128.js +0 -3
  263. package/dist/searchcraft-javascript-sdk/p-7e13c128.js.map +0 -1
  264. package/dist/searchcraft-javascript-sdk/p-7f4dd50c.entry.js +0 -2
  265. package/dist/searchcraft-javascript-sdk/p-7f4dd50c.entry.js.map +0 -1
  266. package/dist/searchcraft-javascript-sdk/p-9340f4e4.entry.js +0 -2
  267. package/dist/searchcraft-javascript-sdk/p-9340f4e4.entry.js.map +0 -1
  268. package/dist/searchcraft-javascript-sdk/p-a84b1548.entry.js +0 -2
  269. package/dist/searchcraft-javascript-sdk/p-a84b1548.entry.js.map +0 -1
  270. package/dist/searchcraft-javascript-sdk/p-b8ea0454.entry.js +0 -2
  271. package/dist/searchcraft-javascript-sdk/p-b8ea0454.entry.js.map +0 -1
  272. package/dist/searchcraft-javascript-sdk/p-c4a9d8ab.entry.js +0 -2
  273. package/dist/searchcraft-javascript-sdk/p-c4a9d8ab.entry.js.map +0 -1
  274. package/dist/searchcraft-javascript-sdk/p-d9551738.js +0 -2
  275. package/dist/searchcraft-javascript-sdk/p-d9551738.js.map +0 -1
  276. package/dist/searchcraft-javascript-sdk/p-e11de2d6.entry.js +0 -2
  277. package/dist/searchcraft-javascript-sdk/p-e11de2d6.entry.js.map +0 -1
  278. package/dist/searchcraft-javascript-sdk/p-e1255160.js +0 -2
  279. package/dist/searchcraft-javascript-sdk/p-e1255160.js.map +0 -1
  280. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js +0 -2
  281. package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js.map +0 -1
  282. package/dist/types/components/searchcraft-base-search-result-ad/searchcraft-base-search-result-ad.d.ts +0 -14
  283. package/dist/types/components/searchcraft-popover-list-item-ad/searchcraft-popover-list-item-ad.d.ts +0 -14
  284. package/dist/types/provider/SearchcraftStore.d.ts +0 -4
  285. package/dist/types/provider/store.d.ts +0 -3
@@ -1,13 +0,0 @@
1
- import { b as bootstrapLazy } from './index-3608c57d.js';
2
- export { s as setNonce } from './index-3608c57d.js';
3
- import { g as globalScripts } from './app-globals-0f993ce5.js';
4
-
5
- const defineCustomElements = async (win, options) => {
6
- if (typeof window === 'undefined') return undefined;
7
- await globalScripts();
8
- return bootstrapLazy([["searchcraft-base-search-results",[[4,"searchcraft-base-search-results",{"customStylesForResults":[1,"custom-styles-for-results"],"searchResultMappings":[16],"resultImagePlacement":[1,"result-image-placement"],"buttonLabel":[1,"button-label"],"buttonTarget":[1,"button-target"],"buttonRel":[1,"button-rel"],"containerTarget":[1,"container-target"],"containerRel":[1,"container-rel"],"searchTerm":[32],"searchClientResponseItems":[32],"adClientResponseItems":[32],"searchResultsPerPage":[32],"searchResultsPage":[32]}]]],["searchcraft-filter-panel",[[0,"searchcraft-filter-panel",{"items":[16],"unsubscribe":[32],"lastSearchTerm":[32]}]]],["searchcraft-pagination",[[0,"searchcraft-pagination",{"customStyles":[1,"custom-styles"],"searchTerm":[32],"searchResultsPerPage":[32],"searchResultsPage":[32],"searchResultsCount":[32],"searchResultsPagesCount":[32],"searchResultsRangeMin":[32],"searchResultsRangeMax":[32],"setSearchResultsPage":[32]}]]],["searchcraft-search-results-per-page",[[0,"searchcraft-search-results-per-page",{"increment":[8],"customStyles":[1,"custom-styles"],"searchTerm":[32],"searchResultsPage":[32],"searchResultsPerPage":[32],"searchResultsCount":[32],"searchResultsPagesCount":[32],"initialSearchResultsPerPage":[32],"setSearchResultsPerPage":[32],"setSearchResultsPage":[32]}]]],["searchcraft-popover-button",[[4,"searchcraft-popover-button"]]],["searchcraft-results-info",[[0,"searchcraft-results-info",{"customFormatter":[16],"customStyles":[1,"custom-styles"],"searchTerm":[32],"searchResultsPage":[32],"searchResultsPerPage":[32],"searchResultsCount":[32],"count":[32],"range":[32],"responseTime":[32]}]]],["searchcraft-theme",[[0,"searchcraft-theme",{"theme":[1],"customTheme":[1,"custom-theme"]}]]],["searchcraft-input-form_2",[[0,"searchcraft-input-form",{"config":[16],"autoSearch":[4,"auto-search"],"buttonPlacement":[1,"button-placement"],"buttonLabel":[1,"button-label"],"inputLabel":[1,"input-label"],"customStyles":[1,"custom-styles"],"placeholderValue":[1,"placeholder-value"],"searchTerm":[1,"search-term"],"inputValue":[32],"error":[32],"isSearchcraftInitialized":[32]},null,{"config":["onConfigChange"]}],[0,"searchcraft-popover-list-view",{"popoverResultMappings":[16],"searchClientResponseItems":[16],"adClientResponseItems":[16],"searchResultsPage":[2,"search-results-page"],"searchResultsPerPage":[2,"search-results-per-page"]}]]],["searchcraft-popover-form",[[0,"searchcraft-popover-form",{"config":[16],"type":[1],"popoverResultMappings":[16],"hotkey":[1],"hotkeyModifier":[1,"hotkey-modifier"],"isPopoverVisibleInState":[32],"unsubscribe":[32],"searchClientResponseItems":[32],"adClientResponseItems":[32],"searchTerm":[32],"isFocused":[32],"breakpointSm":[32],"breakpointMd":[32],"breakpointLg":[32],"searchResultsPage":[32],"searchResultsPerPage":[32],"modalElement":[32]}]]],["searchcraft-select",[[0,"searchcraft-select",{"caption":[1],"disabled":[4],"inputId":[1,"input-id"],"label":[1],"labelId":[1,"label-id"],"name":[1],"options":[1],"customStyles":[1,"custom-styles"],"searchResultsPerPage":[32],"setSearchResultsPage":[32],"setSearchResultsPerPage":[32]}]]],["searchcraft-base-search-result_2",[[0,"searchcraft-base-search-result",{"item":[16],"searchResultMappings":[16],"containerTarget":[1,"container-target"],"containerRel":[1,"container-rel"],"buttonTarget":[1,"button-target"],"buttonRel":[1,"button-rel"],"imagePlacement":[1,"image-placement"],"customStyles":[1,"custom-styles"],"documentPosition":[2,"document-position"],"titleContent":[32],"subtitleContent":[32],"bodyContent":[32],"footerContent":[32],"buttonLabel":[32],"buttonHref":[32],"containerHref":[32],"imageSrc":[32],"imageAlt":[32]}],[0,"searchcraft-base-search-result-ad",{"adClientResponseItem":[16]}]]],["searchcraft-facet-list_3",[[0,"searchcraft-facet-list",{"fieldName":[1,"field-name"],"baseFacetRoot":[32],"facetRoot":[32],"selectedPaths":[32],"lastTimeTaken":[32],"hasNewSearchTerm":[32],"lastSearchTerm":[32],"lastSearchMode":[32],"lastSortType":[32],"unsubscribe":[32]}],[0,"searchcraft-slider",{"max":[2],"min":[2],"granularity":[2],"dataType":[1,"data-type"],"endValue":[32],"startValue":[32],"lastFocusedHandle":[32]}],[0,"searchcraft-toggle-button",{"label":[1],"subLabel":[1,"sub-label"],"isActive":[32],"unsubscribe":[32],"lastSearchTerm":[32]}]]],["searchcraft-popover-list-item_2",[[0,"searchcraft-popover-list-item",{"item":[16],"popoverResultMappings":[16],"documentPosition":[2,"document-position"],"href":[32],"imageSrc":[32],"imageAlt":[32],"titleContent":[32],"subtitleContent":[32]}],[0,"searchcraft-popover-list-item-ad",{"adClientResponseItem":[16]}]]],["searchcraft-button_3",[[0,"searchcraft-input-label",{"inputLabelClassName":[1,"input-label-class-name"],"label":[1]}],[0,"searchcraft-button",{"hierarchy":[1],"disabled":[4],"icon":[16],"iconOnly":[4,"icon-only"],"iconPosition":[1,"icon-position"],"label":[1],"type":[1]}],[0,"searchcraft-error-message",{"errorMessage":[1,"error-message"]}]]]], options);
9
- };
10
-
11
- export { defineCustomElements };
12
-
13
- //# sourceMappingURL=loader.js.map
@@ -1 +0,0 @@
1
- {"file":"loader.js","mappings":";;;;AAGY,MAAC,oBAAoB,GAAG,OAAO,GAAG,EAAE,OAAO,KAAK;AAC5D,EAAE,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,OAAO,SAAS,CAAC;AACtD,EAAE,MAAM,aAAa,EAAE,CAAC;AACxB,EAAE,OAAO,aAAa,CAAC,4BAA4B,EAAE,OAAO,CAAC,CAAC;AAC9D;;;;","names":[],"sources":["@lazy-external-entrypoint?app-data=conditional"],"sourcesContent":["export { setNonce } from '@stencil/core';\nimport { bootstrapLazy } from '@stencil/core';\nimport { globalScripts } from '@stencil/core/internal/app-globals';\nexport const defineCustomElements = async (win, options) => {\n if (typeof window === 'undefined') return undefined;\n await globalScripts();\n return bootstrapLazy([/*!__STENCIL_LAZY_DATA__*/], options);\n};\n"],"version":3}
@@ -1,147 +0,0 @@
1
- import { r as registerInstance, h, F as Fragment } from './index-3608c57d.js';
2
- import { u as useSearchcraftStore } from './SearchcraftStore-3cfd565a.js';
3
- import { a as getDocumentValueFromSearchResultMapping } from './units-daaf96f5.js';
4
-
5
- const SearchcraftBaseSearchResult = class {
6
- constructor(hostRef) {
7
- registerInstance(this, hostRef);
8
- }
9
- item;
10
- searchResultMappings;
11
- /**
12
- * Where to open the link for the containing element.
13
- */
14
- containerTarget = '_blank';
15
- /**
16
- * The relationship between the current document and the link for the containing element.
17
- */
18
- containerRel;
19
- /**
20
- * Where to open the link for the button rendered when containerHref is not present.
21
- */
22
- buttonTarget = '_blank';
23
- /**
24
- * The relationship between the current document and the link for the button rendered when containerHref is not present.
25
- */
26
- buttonRel;
27
- /**
28
- * The placement of the image.
29
- */
30
- imagePlacement = 'right';
31
- /**
32
- * A custom styles object.
33
- */
34
- customStyles;
35
- /**
36
- * The position in the document. Used with the "document_clicked" measure event.
37
- */
38
- documentPosition = 0;
39
- titleContent;
40
- subtitleContent;
41
- bodyContent;
42
- footerContent;
43
- buttonLabel;
44
- buttonHref;
45
- containerHref;
46
- imageSrc;
47
- imageAlt;
48
- searchcraftStore = useSearchcraftStore.getState();
49
- connectedCallback() {
50
- if (this.item) {
51
- this.mapValuesFromDocument(this.item.document);
52
- }
53
- }
54
- mapValuesFromDocument(document) {
55
- this.titleContent = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings?.title);
56
- this.subtitleContent = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings?.subtitle);
57
- this.bodyContent = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings?.body);
58
- this.containerHref = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings?.containerHref);
59
- this.buttonHref = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings?.buttonHref);
60
- this.imageSrc = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings?.imageSource);
61
- this.footerContent = getDocumentValueFromSearchResultMapping(document, this.searchResultMappings?.footer);
62
- }
63
- handleLinkClick = () => {
64
- const searchcraft = this.searchcraftStore.getSearchcraftInstance();
65
- if (searchcraft) {
66
- const document_position = this.documentPosition;
67
- const search_term = this.searchcraftStore.searchTerm;
68
- const number_of_documents = this.searchcraftStore.searchClientResponseItems.length;
69
- searchcraft.measureClient?.sendMeasureEvent('document_clicked', {
70
- document_position,
71
- number_of_documents,
72
- search_term,
73
- });
74
- }
75
- };
76
- parseStyles = () => {
77
- if (this.customStyles) {
78
- try {
79
- return JSON.parse(this.customStyles);
80
- }
81
- catch (error) {
82
- console.error('Error parsing custom styles:', error);
83
- return {};
84
- }
85
- }
86
- return {};
87
- };
88
- render() {
89
- const styles = this.parseStyles();
90
- const imageContainer = this.imageSrc && (h("img", { alt: this.imageAlt, class: 'searchcraft-search-result-image', src: this.imageSrc, style: styles.image || {} }));
91
- const contentContainer = (h(Fragment, null, this.imageSrc && this.imagePlacement === 'left' && imageContainer, h("div", { class: 'searchcraft-base-search-result-content-container' }, this.titleContent && (h("h2", { class: 'searchcraft-base-search-result-title', style: styles.title || {} }, this.titleContent)), this.subtitleContent && (h("h3", { class: 'searchcraft-base-search-result-subtitle', style: styles.subtitle || {} }, this.subtitleContent)), this.bodyContent && (h("p", { class: 'searchcraft-base-search-result-body-content', style: styles.primaryContent || {} }, this.bodyContent)), this.footerContent && (h("p", { class: 'searchcraft-base-search-result-footer-content', style: styles.secondaryContent || {} }, this.footerContent)), this.buttonHref && !this.containerHref && this.buttonLabel && (h("a", { class: 'searchcraft-search-result-button', href: this.buttonHref, style: styles.button || {}, target: this.buttonTarget, rel: this.buttonRel }, this.buttonLabel))), this.imageSrc && this.imagePlacement === 'right' && imageContainer));
92
- /** Render as an anchor tag if the containerHref prop is present. */
93
- if (this.containerHref) {
94
- return (h("a", { class: 'searchcraft-search-result-container', onClick: this.handleLinkClick, href: this.containerHref, rel: this.containerRel, style: styles.container || {}, tabindex: '0', target: this.containerTarget }, contentContainer));
95
- }
96
- /** Render as a div if no href prop. */
97
- return (h("div", { class: 'searchcraft-search-result-container', style: styles.container || {} }, contentContainer));
98
- }
99
- };
100
-
101
- const SearchcraftBaseSearchResultAd = class {
102
- constructor(hostRef) {
103
- registerInstance(this, hostRef);
104
- }
105
- adClientResponseItem;
106
- connectedCallback() {
107
- if (this.adClientResponseItem?.admAd?.impression_url) {
108
- fetch(this.adClientResponseItem?.admAd?.impression_url);
109
- }
110
- }
111
- renderADMProductAd() {
112
- const ad = this.adClientResponseItem?.admAd;
113
- if (!ad) {
114
- return;
115
- }
116
- return (h("a", { class: 'searchcraft-base-ad', href: ad.click_url }, ad.image_url && (h("div", { class: 'searchcraft-base-ad-image-wrapper' }, h("img", { alt: ad.term, src: ad.image_url, class: 'searchcraft-base-ad-image' }))), h("div", { class: 'searchcraft-base-ad-info-wrapper' }, h("p", { class: 'searchcraft-base-ad-title' }, ad.term), h("p", { class: 'searchcraft-base-ad-subtitle' }, ad.price))));
117
- }
118
- renderADMTextAd() {
119
- const ad = this.adClientResponseItem?.admAd;
120
- if (!ad) {
121
- return;
122
- }
123
- return (h("a", { class: 'searchcraft-base-ad', href: ad.click_url }, ad.image_url && (h("div", { class: 'searchcraft-base-ad-image-wrapper' }, h("img", { alt: ad.term, src: ad.image_url, class: 'searchcraft-base-ad-image' }))), h("div", { class: 'searchcraft-base-ad-info-wrapper' }, h("p", { class: 'searchcraft-base-ad-title' }, ad.term))));
124
- }
125
- renderNativoAd() { }
126
- renderAdPlaceholder() {
127
- return h("p", null, "Ad placeholder");
128
- // return;
129
- }
130
- render() {
131
- if (!this.adClientResponseItem) {
132
- return this.renderAdPlaceholder();
133
- }
134
- switch (this.adClientResponseItem.type) {
135
- case 'adm-product-ad':
136
- return this.renderADMProductAd();
137
- case 'adm-text-ad':
138
- return this.renderADMTextAd();
139
- case 'nativo-ad':
140
- return this.renderNativoAd();
141
- }
142
- }
143
- };
144
-
145
- export { SearchcraftBaseSearchResult as searchcraft_base_search_result, SearchcraftBaseSearchResultAd as searchcraft_base_search_result_ad };
146
-
147
- //# sourceMappingURL=searchcraft-base-search-result_2.entry.js.map
@@ -1 +0,0 @@
1
- {"file":"searchcraft-base-search-result.searchcraft-base-search-result-ad.entry.js","mappings":"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","names":[],"sources":["src/components/searchcraft-base-search-result/searchcraft-base-search-result.tsx","src/components/searchcraft-base-search-result-ad/searchcraft-base-search-result-ad.tsx"],"sourcesContent":["import { useSearchcraftStore } from '@provider/store';\nimport type {\n SearchClientResponseItem,\n SearchDocument,\n} from '@searchcraft/core';\nimport { Component, Fragment, h, Prop, State } from '@stencil/core';\nimport { getDocumentValueFromSearchResultMapping } from '@utils';\nimport type { SearchResultMappings } from '@searchcraft/core';\n\n/**\n * This web component is designed to display detailed information for a single search result.\n * Once a query is submitted, the component formats and presents the result.\n * It is consumed within the `searchcraft-base-search-results` component.\n */\n@Component({\n tag: 'searchcraft-base-search-result',\n shadow: false,\n})\nexport class SearchcraftBaseSearchResult {\n @Prop() item: SearchClientResponseItem | undefined;\n @Prop() searchResultMappings: SearchResultMappings | undefined;\n /**\n * Where to open the link for the containing element.\n */\n @Prop() containerTarget: '_blank' | '_self' | '_top' | '_parent' = '_blank';\n /**\n * The relationship between the current document and the link for the containing element.\n */\n @Prop() containerRel: 'noreferrer' | 'noopener' | 'nofollow' | undefined;\n /**\n * Where to open the link for the button rendered when containerHref is not present.\n */\n @Prop() buttonTarget: '_blank' | '_self' | '_top' | '_parent' = '_blank';\n /**\n * The relationship between the current document and the link for the button rendered when containerHref is not present.\n */\n @Prop() buttonRel: 'noreferrer' | 'noopener' | 'nofollow' | undefined;\n /**\n * The placement of the image.\n */\n @Prop() imagePlacement: 'left' | 'right' = 'right';\n /**\n * A custom styles object.\n */\n @Prop() customStyles: string | undefined;\n /**\n * The position in the document. Used with the \"document_clicked\" measure event.\n */\n @Prop() documentPosition = 0;\n\n @State() titleContent: string | undefined;\n @State() subtitleContent: string | undefined;\n @State() bodyContent: string | undefined;\n @State() footerContent: string | undefined;\n @State() buttonLabel: string | undefined;\n @State() buttonHref: string | undefined;\n @State() containerHref: string | undefined;\n @State() imageSrc: string | undefined;\n @State() imageAlt: string | undefined;\n\n private searchcraftStore = useSearchcraftStore.getState();\n\n connectedCallback() {\n if (this.item) {\n this.mapValuesFromDocument(this.item.document);\n }\n }\n\n mapValuesFromDocument(document: SearchDocument) {\n this.titleContent = getDocumentValueFromSearchResultMapping(\n document,\n this.searchResultMappings?.title,\n );\n this.subtitleContent = getDocumentValueFromSearchResultMapping(\n document,\n this.searchResultMappings?.subtitle,\n );\n this.bodyContent = getDocumentValueFromSearchResultMapping(\n document,\n this.searchResultMappings?.body,\n );\n this.containerHref = getDocumentValueFromSearchResultMapping(\n document,\n this.searchResultMappings?.containerHref,\n );\n this.buttonHref = getDocumentValueFromSearchResultMapping(\n document,\n this.searchResultMappings?.buttonHref,\n );\n this.imageSrc = getDocumentValueFromSearchResultMapping(\n document,\n this.searchResultMappings?.imageSource,\n );\n this.footerContent = getDocumentValueFromSearchResultMapping(\n document,\n this.searchResultMappings?.footer,\n );\n }\n\n private handleLinkClick = () => {\n const searchcraft = this.searchcraftStore.getSearchcraftInstance();\n\n if (searchcraft) {\n const document_position = this.documentPosition;\n const search_term = this.searchcraftStore.searchTerm;\n const number_of_documents =\n this.searchcraftStore.searchClientResponseItems.length;\n\n searchcraft.measureClient?.sendMeasureEvent('document_clicked', {\n document_position,\n number_of_documents,\n search_term,\n });\n }\n };\n\n private parseStyles = (): Record<string, { [key: string]: string }> => {\n if (this.customStyles) {\n try {\n return JSON.parse(this.customStyles);\n } catch (error) {\n console.error('Error parsing custom styles:', error);\n return {};\n }\n }\n return {};\n };\n\n render() {\n const styles = this.parseStyles();\n const imageContainer = this.imageSrc && (\n <img\n alt={this.imageAlt}\n class='searchcraft-search-result-image'\n src={this.imageSrc}\n style={styles.image || {}}\n />\n );\n\n const contentContainer = (\n <Fragment>\n {this.imageSrc && this.imagePlacement === 'left' && imageContainer}\n <div class='searchcraft-base-search-result-content-container'>\n {this.titleContent && (\n <h2\n class='searchcraft-base-search-result-title'\n style={styles.title || {}}\n >\n {this.titleContent}\n </h2>\n )}\n {this.subtitleContent && (\n <h3\n class='searchcraft-base-search-result-subtitle'\n style={styles.subtitle || {}}\n >\n {this.subtitleContent}\n </h3>\n )}\n {this.bodyContent && (\n <p\n class='searchcraft-base-search-result-body-content'\n style={styles.primaryContent || {}}\n >\n {this.bodyContent}\n </p>\n )}\n\n {this.footerContent && (\n <p\n class='searchcraft-base-search-result-footer-content'\n style={styles.secondaryContent || {}}\n >\n {this.footerContent}\n </p>\n )}\n {this.buttonHref && !this.containerHref && this.buttonLabel && (\n <a\n class='searchcraft-search-result-button'\n href={this.buttonHref}\n style={styles.button || {}}\n target={this.buttonTarget}\n rel={this.buttonRel}\n >\n {this.buttonLabel}\n </a>\n )}\n </div>\n {this.imageSrc && this.imagePlacement === 'right' && imageContainer}\n </Fragment>\n );\n\n /** Render as an anchor tag if the containerHref prop is present. */\n if (this.containerHref) {\n return (\n <a\n class='searchcraft-search-result-container'\n onClick={this.handleLinkClick}\n href={this.containerHref}\n rel={this.containerRel}\n style={styles.container || {}}\n tabindex='0'\n target={this.containerTarget}\n >\n {contentContainer}\n </a>\n );\n }\n\n /** Render as a div if no href prop. */\n return (\n <div\n class='searchcraft-search-result-container'\n style={styles.container || {}}\n >\n {contentContainer}\n </div>\n );\n }\n}\n","import type {\n AdClientResponseItem,\n ADMProductAd,\n ADMTextAd,\n} from '@searchcraft/core';\nimport { Component, h, Prop } from '@stencil/core';\n\n/**\n * A single list item rendered in a searchcraft-popover-list-view.\n */\n@Component({\n tag: 'searchcraft-base-search-result-ad',\n shadow: false,\n})\nexport class SearchcraftBaseSearchResultAd {\n @Prop() adClientResponseItem?: AdClientResponseItem;\n\n connectedCallback() {\n if (this.adClientResponseItem?.admAd?.impression_url) {\n fetch(this.adClientResponseItem?.admAd?.impression_url);\n }\n }\n\n renderADMProductAd() {\n const ad = this.adClientResponseItem?.admAd as ADMProductAd;\n if (!ad) {\n return;\n }\n\n return (\n <a class='searchcraft-base-ad' href={ad.click_url}>\n {ad.image_url && (\n <div class='searchcraft-base-ad-image-wrapper'>\n <img\n alt={ad.term}\n src={ad.image_url}\n class='searchcraft-base-ad-image'\n />\n </div>\n )}\n <div class='searchcraft-base-ad-info-wrapper'>\n <p class='searchcraft-base-ad-title'>{ad.term}</p>\n <p class='searchcraft-base-ad-subtitle'>{ad.price}</p>\n </div>\n </a>\n );\n }\n\n renderADMTextAd() {\n const ad = this.adClientResponseItem?.admAd as ADMTextAd;\n if (!ad) {\n return;\n }\n\n return (\n <a class='searchcraft-base-ad' href={ad.click_url}>\n {ad.image_url && (\n <div class='searchcraft-base-ad-image-wrapper'>\n <img\n alt={ad.term}\n src={ad.image_url}\n class='searchcraft-base-ad-image'\n />\n </div>\n )}\n <div class='searchcraft-base-ad-info-wrapper'>\n <p class='searchcraft-base-ad-title'>{ad.term}</p>\n </div>\n </a>\n );\n }\n\n renderNativoAd() {}\n\n renderAdPlaceholder() {\n return <p>Ad placeholder</p>;\n // return;\n }\n\n render() {\n if (!this.adClientResponseItem) {\n return this.renderAdPlaceholder();\n }\n\n switch (this.adClientResponseItem.type) {\n case 'adm-product-ad':\n return this.renderADMProductAd();\n case 'adm-text-ad':\n return this.renderADMTextAd();\n case 'nativo-ad':\n return this.renderNativoAd();\n }\n }\n}\n"],"version":3}
@@ -1,93 +0,0 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-3608c57d.js';
2
- import { u as useSearchcraftStore } from './SearchcraftStore-3cfd565a.js';
3
- import { s as serializeStyles } from './styles-961644ef.js';
4
-
5
- const SearchcraftBaseSearchResults = class {
6
- constructor(hostRef) {
7
- registerInstance(this, hostRef);
8
- this.noResults = createEvent(this, "noResults", 7);
9
- }
10
- /**
11
- * A custom styles object.
12
- */
13
- customStylesForResults;
14
- /**
15
- * Formats the content rendered for each result.
16
- */
17
- searchResultMappings;
18
- /**
19
- * The placement of the image for each result.
20
- */
21
- resultImagePlacement = 'right';
22
- /**
23
- * The label for the button rendered when containerHref is not present for each result.
24
- */
25
- buttonLabel;
26
- /**
27
- * Where to open the link for the button rendered when containerHref is not present for each result.
28
- */
29
- buttonTarget = '_blank';
30
- /**
31
- * The relationship between the current document and the link for the button rendered when containerHref is not present for each result.
32
- */
33
- buttonRel;
34
- /**
35
- * Where to open the link for the containing element for each result.
36
- */
37
- containerTarget = '_blank';
38
- /**
39
- * The relationship between the current document and the link for the containing element for each result.
40
- */
41
- containerRel;
42
- /**
43
- * When no results are returned.
44
- */
45
- noResults;
46
- searchTerm = '';
47
- searchClientResponseItems = [];
48
- adClientResponseItems = [];
49
- searchResultsPerPage;
50
- searchResultsPage;
51
- unsubscribe = () => { };
52
- componentDidLoad() {
53
- this.unsubscribe = useSearchcraftStore.subscribe((state) => this.handleStateChange(state));
54
- const currentState = useSearchcraftStore.getState();
55
- this.searchClientResponseItems = currentState.searchClientResponseItems;
56
- this.searchTerm = currentState.searchTerm;
57
- }
58
- disconnectedCallback() {
59
- this.unsubscribe?.();
60
- }
61
- handleStateChange(state) {
62
- this.searchClientResponseItems = [...state.searchClientResponseItems];
63
- this.adClientResponseItems = [...state.adClientResponseItems];
64
- this.searchTerm = state.searchTerm;
65
- this.searchResultsPage = state.searchResultsPage;
66
- this.searchResultsPerPage = state.searchResultsPerPage;
67
- }
68
- render() {
69
- if (this.searchTerm.trim() === '') {
70
- return (h("div", { class: 'searchcraft-search-results-empty-state-container' }, h("slot", { name: 'empty-search' })));
71
- }
72
- if (this.searchClientResponseItems.length === 0) {
73
- return;
74
- }
75
- if (this.searchTerm.length > 0 &&
76
- this.searchClientResponseItems.length === 0) {
77
- this.noResults?.emit();
78
- }
79
- let serializedStyles = '';
80
- if (this.customStylesForResults) {
81
- serializedStyles =
82
- typeof this.customStylesForResults === 'string'
83
- ? this.customStylesForResults
84
- : serializeStyles(this.customStylesForResults);
85
- }
86
- return (h("div", { class: 'searchcraft-search-results-container' }, this.adClientResponseItems?.map((item) => (h("searchcraft-base-search-result-ad", { adClientResponseItem: item, key: item.adId }))), this.searchClientResponseItems?.map((item, index) => (h("searchcraft-base-search-result", { key: item.id, "custom-styles": serializedStyles, "image-placement": this.resultImagePlacement, "container-rel": this.containerRel, "container-target": this.containerTarget, "button-label": this.buttonLabel || 'View more', "button-rel": this.buttonRel, "button-target": this.buttonTarget, "document-position": this.searchResultsPerPage * this.searchResultsPage + index, searchResultMappings: this.searchResultMappings, item: item }))), this.searchTerm.length > 0 &&
87
- this.searchClientResponseItems.length === 0 && (h("div", { class: 'searchcraft-search-results-error-message-container' }, h("searchcraft-error-message", { "error-message": `No search results found for "${this.searchTerm}" query` })))));
88
- }
89
- };
90
-
91
- export { SearchcraftBaseSearchResults as searchcraft_base_search_results };
92
-
93
- //# sourceMappingURL=searchcraft-base-search-results.entry.js.map
@@ -1 +0,0 @@
1
- {"file":"searchcraft-base-search-results.entry.js","mappings":"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","names":[],"sources":["src/components/searchcraft-base-search-results/searchcraft-base-search-results.tsx"],"sourcesContent":["import {\n Component,\n h,\n Event,\n Prop,\n State,\n type EventEmitter,\n} from '@stencil/core';\n\nimport type {\n AdClientResponseItem,\n SearchClientResponseItem,\n} from '@searchcraft/core';\n\nimport { type SearchcraftState, useSearchcraftStore } from '@provider/store';\n\nimport { serializeStyles } from '@utils';\nimport type { SearchResultMappings } from '@searchcraft/core';\n\n/**\n * This web component is responsible for displaying the results of a search query.\n * Once a query is submitted, the component formats and presents an ordered list of the results.\n *\n * ## Usage\n * ```html\n * <!-- index.html -->\n * <searchcraft-base-search-results\n * ad-interval=\"4\"\n * place-ad-at-start=\"false\"\n * result-image-placement=\"right\"\n * />\n * ```\n *\n * ```js\n * // index.js\n * const baseSearchResults = document.querySelector('searchcraft-base-search-results');\n *\n * baseSearchResults.searchResultMappings = containerHref: {\n * fieldNames: [\n * {\n * fieldName: 'canonical_link',\n * dataType: 'text',\n * },\n * ],\n * };\n *\n * baseSearchResults.addEventListener('noResults', () => {\n * console.log('No search results found');\n * });\n * ```\n */\n@Component({\n tag: 'searchcraft-base-search-results',\n shadow: false,\n})\nexport class SearchcraftBaseSearchResults {\n /**\n * A custom styles object.\n */\n @Prop() customStylesForResults:\n | string\n | Record<string, Record<string, string>>\n | undefined;\n /**\n * Formats the content rendered for each result.\n */\n @Prop() searchResultMappings: SearchResultMappings | undefined;\n /**\n * The placement of the image for each result.\n */\n @Prop() resultImagePlacement: 'left' | 'right' = 'right';\n /**\n * The label for the button rendered when containerHref is not present for each result.\n */\n @Prop() buttonLabel: string | undefined;\n /**\n * Where to open the link for the button rendered when containerHref is not present for each result.\n */\n @Prop() buttonTarget: '_blank' | '_self' | '_top' | '_parent' = '_blank';\n /**\n * The relationship between the current document and the link for the button rendered when containerHref is not present for each result.\n */\n @Prop() buttonRel: 'noreferrer' | 'noopener' | 'nofollow' | undefined;\n /**\n * Where to open the link for the containing element for each result.\n */\n @Prop() containerTarget: '_blank' | '_self' | '_top' | '_parent' = '_blank';\n /**\n * The relationship between the current document and the link for the containing element for each result.\n */\n @Prop() containerRel: 'noreferrer' | 'noopener' | 'nofollow' | undefined;\n\n /**\n * When no results are returned.\n */\n @Event() noResults?: EventEmitter<void>;\n\n @State() searchTerm = '';\n @State() searchClientResponseItems: SearchClientResponseItem[] = [];\n @State() adClientResponseItems: AdClientResponseItem[] = [];\n @State() searchResultsPerPage;\n @State() searchResultsPage;\n\n private unsubscribe: () => void = () => {};\n\n componentDidLoad() {\n this.unsubscribe = useSearchcraftStore.subscribe((state) =>\n this.handleStateChange(state),\n );\n const currentState = useSearchcraftStore.getState();\n this.searchClientResponseItems = currentState.searchClientResponseItems;\n this.searchTerm = currentState.searchTerm;\n }\n\n disconnectedCallback() {\n this.unsubscribe?.();\n }\n\n handleStateChange(state: SearchcraftState) {\n this.searchClientResponseItems = [...state.searchClientResponseItems];\n this.adClientResponseItems = [...state.adClientResponseItems];\n this.searchTerm = state.searchTerm;\n this.searchResultsPage = state.searchResultsPage;\n this.searchResultsPerPage = state.searchResultsPerPage;\n }\n\n render() {\n if (this.searchTerm.trim() === '') {\n return (\n <div class='searchcraft-search-results-empty-state-container'>\n <slot name='empty-search' />\n </div>\n );\n }\n\n if (this.searchClientResponseItems.length === 0) {\n return;\n }\n\n if (\n this.searchTerm.length > 0 &&\n this.searchClientResponseItems.length === 0\n ) {\n this.noResults?.emit();\n }\n\n let serializedStyles = '';\n if (this.customStylesForResults) {\n serializedStyles =\n typeof this.customStylesForResults === 'string'\n ? this.customStylesForResults\n : serializeStyles(this.customStylesForResults);\n }\n\n return (\n <div class='searchcraft-search-results-container'>\n {this.adClientResponseItems?.map((item) => (\n <searchcraft-base-search-result-ad\n adClientResponseItem={item}\n key={item.adId}\n />\n ))}\n {this.searchClientResponseItems?.map((item, index) => (\n <searchcraft-base-search-result\n key={item.id}\n custom-styles={serializedStyles}\n image-placement={this.resultImagePlacement}\n container-rel={this.containerRel}\n container-target={this.containerTarget}\n button-label={this.buttonLabel || 'View more'}\n button-rel={this.buttonRel}\n button-target={this.buttonTarget}\n document-position={\n this.searchResultsPerPage * this.searchResultsPage + index\n }\n searchResultMappings={this.searchResultMappings}\n item={item}\n />\n ))}\n {this.searchTerm.length > 0 &&\n this.searchClientResponseItems.length === 0 && (\n <div class='searchcraft-search-results-error-message-container'>\n <searchcraft-error-message\n error-message={`No search results found for \"${this.searchTerm}\" query`}\n />\n </div>\n )}\n </div>\n );\n }\n}\n"],"version":3}
@@ -1,82 +0,0 @@
1
- import { r as registerInstance, c as createEvent, h, F as Fragment } from './index-3608c57d.js';
2
- import { c as classNames } from './index-72ac5051.js';
3
-
4
- const SearchcraftButton = class {
5
- constructor(hostRef) {
6
- registerInstance(this, hostRef);
7
- this.buttonClick = createEvent(this, "buttonClick", 7);
8
- }
9
- /**
10
- * Controls the visual representation of the button.
11
- */
12
- hierarchy = 'primary';
13
- /**
14
- * Whether the button is disabled.
15
- */
16
- disabled = false;
17
- /**
18
- * The icon element.
19
- */
20
- icon;
21
- /**
22
- * Should the button only display an icon.
23
- */
24
- iconOnly = false;
25
- /**
26
- * The position of the icon.
27
- */
28
- iconPosition = 'left';
29
- /**
30
- * The label for the button.
31
- */
32
- label = 'Search';
33
- /**
34
- * The type of the button.
35
- */
36
- type = 'button';
37
- /**
38
- * The event fired when the button is clicked.
39
- */
40
- buttonClick;
41
- handleButtonClick = () => {
42
- this.buttonClick.emit();
43
- };
44
- render() {
45
- return (h("button", { key: 'ff883b930d03da6cbfb40badd3be1de0a873f853', "aria-label": this.label, class: classNames('searchcraft-button', {
46
- 'searchcraft-button-primary': this.hierarchy === 'primary',
47
- 'searchcraft-button-tertiary': this.hierarchy === 'tertiary',
48
- 'searchcraft-button-disabled': this.disabled,
49
- }), disabled: this.disabled, onClick: this.handleButtonClick, type: this.type }, this.iconOnly ? (this.icon) : (h(Fragment, null, this.iconPosition === 'left' && this.icon, h("span", null, this.label), this.iconPosition === 'right' && this.icon))));
50
- }
51
- };
52
-
53
- const SearchcraftErrorMessage = class {
54
- constructor(hostRef) {
55
- registerInstance(this, hostRef);
56
- }
57
- /**
58
- * The error message.
59
- */
60
- errorMessage;
61
- render() {
62
- return (h("p", { key: 'dc97bb66da10a98fca027f928deaaf80d945417b', class: 'searchcraft-error-message' }, this.errorMessage || 'Search term is required.'));
63
- }
64
- };
65
-
66
- const SearchcraftInputLabel = class {
67
- constructor(hostRef) {
68
- registerInstance(this, hostRef);
69
- }
70
- /**
71
- * The classname applied to the label element.
72
- */
73
- inputLabelClassName = '';
74
- label = '';
75
- render() {
76
- return (h("label", { key: '528396d4be9f22ff0c02d95d8bcea056576aed41', class: classNames('searchcraft-input-label', this.inputLabelClassName), htmlFor: 'searchcraft-input-id' }, this.label));
77
- }
78
- };
79
-
80
- export { SearchcraftButton as searchcraft_button, SearchcraftErrorMessage as searchcraft_error_message, SearchcraftInputLabel as searchcraft_input_label };
81
-
82
- //# sourceMappingURL=searchcraft-button_3.entry.js.map
@@ -1 +0,0 @@
1
- {"file":"searchcraft-button.searchcraft-error-message.searchcraft-input-label.entry.js","mappings":";;;MAmBa,iBAAiB;;;;;;;;IAIpB,SAAS,GAA4B,SAAS,CAAC;;;;IAI/C,QAAQ,GAAa,KAAK,CAAC;;;;IAI3B,IAAI,CAAW;;;;IAIf,QAAQ,GAAa,KAAK,CAAC;;;;IAI3B,YAAY,GAAsB,MAAM,CAAC;;;;IAIzC,KAAK,GAAG,QAAQ,CAAC;;;;IAIjB,IAAI,GAAmC,QAAQ,CAAC;;;;IAI/C,WAAW,CAAsB;IAElC,iBAAiB,GAAG;QAC1B,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;KACzB,CAAC;IAEF,MAAM;QACJ,QACE,6EACc,IAAI,CAAC,KAAK,EACtB,KAAK,EAAE,UAAU,CAAC,oBAAoB,EAAE;gBACtC,4BAA4B,EAAE,IAAI,CAAC,SAAS,KAAK,SAAS;gBAC1D,6BAA6B,EAAE,IAAI,CAAC,SAAS,KAAK,UAAU;gBAC5D,6BAA6B,EAAE,IAAI,CAAC,QAAQ;aAC7C,CAAC,EACF,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAC/B,IAAI,EAAE,IAAI,CAAC,IAAI,IAEd,IAAI,CAAC,QAAQ,IACZ,IAAI,CAAC,IAAI,KAET,EAAC,QAAQ,QACN,IAAI,CAAC,YAAY,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,EAC1C,gBAAO,IAAI,CAAC,KAAK,CAAQ,EACxB,IAAI,CAAC,YAAY,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,CAClC,CACZ,CACM,EACT;KACH;;;MClEU,uBAAuB;;;;;;;IAI1B,YAAY,CAAU;IAE9B,MAAM;QACJ,QACE,0DAAG,KAAK,EAAC,2BAA2B,IACjC,IAAI,CAAC,YAAY,IAAI,0BAA0B,CAC9C,EACJ;KACH;;;MCXU,qBAAqB;;;;;;;IAIxB,mBAAmB,GAAI,EAAE,CAAC;IAC1B,KAAK,GAAG,EAAE,CAAC;IAEnB,MAAM;QACJ,QACE,8DACE,KAAK,EAAE,UAAU,CAAC,yBAAyB,EAAE,IAAI,CAAC,mBAAmB,CAAC,EACtE,OAAO,EAAC,sBAAsB,IAE7B,IAAI,CAAC,KAAK,CACL,EACR;KACH;;;;;","names":[],"sources":["src/components/searchcraft-button/searchcraft-button.tsx","src/components/searchcraft-error-message/searchcraft-error-message.tsx","src/components/searchcraft-input-label/searchcraft-input-label.tsx"],"sourcesContent":["import {\n Component,\n Event,\n type EventEmitter,\n Prop,\n h,\n Fragment,\n} from '@stencil/core';\nimport classNames from 'classnames';\n\n/**\n * This web component represents a button to be consumed within the `search-input-form` component.\n * It provides a clear, interactive way for users to submit search queries or trigger actions in a search interface.\n * It is consumed within the `searchcraft-input-form` component.\n */\n@Component({\n tag: 'searchcraft-button',\n shadow: false,\n})\nexport class SearchcraftButton {\n /**\n * Controls the visual representation of the button.\n */\n @Prop() hierarchy?: 'primary' | 'tertiary' = 'primary';\n /**\n * Whether the button is disabled.\n */\n @Prop() disabled?: boolean = false;\n /**\n * The icon element.\n */\n @Prop() icon?: Element;\n /**\n * Should the button only display an icon.\n */\n @Prop() iconOnly?: boolean = false;\n /**\n * The position of the icon.\n */\n @Prop() iconPosition?: 'left' | 'right' = 'left';\n /**\n * The label for the button.\n */\n @Prop() label = 'Search';\n /**\n * The type of the button.\n */\n @Prop() type?: 'submit' | 'reset' | 'button' = 'button';\n /**\n * The event fired when the button is clicked.\n */\n @Event() buttonClick!: EventEmitter<void>;\n\n private handleButtonClick = () => {\n this.buttonClick.emit();\n };\n\n render() {\n return (\n <button\n aria-label={this.label}\n class={classNames('searchcraft-button', {\n 'searchcraft-button-primary': this.hierarchy === 'primary',\n 'searchcraft-button-tertiary': this.hierarchy === 'tertiary',\n 'searchcraft-button-disabled': this.disabled,\n })}\n disabled={this.disabled}\n onClick={this.handleButtonClick}\n type={this.type}\n >\n {this.iconOnly ? (\n this.icon\n ) : (\n <Fragment>\n {this.iconPosition === 'left' && this.icon}\n <span>{this.label}</span>\n {this.iconPosition === 'right' && this.icon}\n </Fragment>\n )}\n </button>\n );\n }\n}\n","import { Component, Prop, h } from '@stencil/core';\n\n/**\n * This web component is designed to display a user-friendly error message when a search query fails, providing clear feedback to users and enhancing their experience when an issue arises during the search process.\n *\n * ## Usage\n * ```html\n * <!-- index.html -->\n * <searchcraft-error-message error-message=\"No search results found for query\" />\n * ```\n */\n@Component({\n tag: 'searchcraft-error-message',\n shadow: false,\n})\nexport class SearchcraftErrorMessage {\n /**\n * The error message.\n */\n @Prop() errorMessage?: string;\n\n render() {\n return (\n <p class='searchcraft-error-message'>\n {this.errorMessage || 'Search term is required.'}\n </p>\n );\n }\n}\n","import { Component, Prop, h } from '@stencil/core';\nimport classNames from 'classnames';\n\n/**\n * This web component serves as the input label for the searchcraft-input-form component.\n *\n * ## Usage\n * ```html\n * <!-- index.html -->\n * <searchcraft-input-label label=\"Search\" />\n * ```\n */\n@Component({\n tag: 'searchcraft-input-label',\n shadow: false,\n})\nexport class SearchcraftInputLabel {\n /**\n * The classname applied to the label element.\n */\n @Prop() inputLabelClassName? = '';\n @Prop() label = '';\n\n render() {\n return (\n <label\n class={classNames('searchcraft-input-label', this.inputLabelClassName)}\n htmlFor='searchcraft-input-id'\n >\n {this.label}\n </label>\n );\n }\n}\n"],"version":3}