@searchcraft/javascript-sdk 0.7.2 → 0.8.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.
- package/dist/cjs/{store-f6ba3dfb.js → SearchcraftStore-75fac5e0.js} +576 -443
- package/dist/cjs/SearchcraftStore-75fac5e0.js.map +1 -0
- package/dist/cjs/index.cjs.js +2 -3
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/searchcraft-base-search-result_2.cjs.entry.js +152 -0
- package/dist/cjs/searchcraft-base-search-result_2.cjs.entry.js.map +1 -0
- package/dist/cjs/searchcraft-base-search-results.cjs.entry.js +30 -80
- package/dist/cjs/searchcraft-base-search-results.cjs.entry.js.map +1 -1
- package/dist/cjs/searchcraft-button_3.cjs.entry.js +22 -7
- package/dist/cjs/searchcraft-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/searchcraft-facet-list_3.cjs.entry.js +19 -18
- package/dist/cjs/searchcraft-facet-list_3.cjs.entry.js.map +1 -1
- package/dist/cjs/searchcraft-filter-panel.cjs.entry.js +6 -6
- package/dist/cjs/searchcraft-filter-panel.cjs.entry.js.map +1 -1
- package/dist/cjs/searchcraft-input-form_2.cjs.entry.js +20 -33
- package/dist/cjs/searchcraft-input-form_2.cjs.entry.js.map +1 -1
- package/dist/cjs/searchcraft-javascript-sdk.cjs.js +1 -1
- package/dist/cjs/searchcraft-pagination.cjs.entry.js +106 -0
- package/dist/cjs/searchcraft-pagination.cjs.entry.js.map +1 -0
- package/dist/cjs/searchcraft-popover-button.cjs.entry.js +3 -3
- package/dist/cjs/searchcraft-popover-button.cjs.entry.js.map +1 -1
- package/dist/cjs/searchcraft-popover-form.cjs.entry.js +27 -25
- package/dist/cjs/searchcraft-popover-form.cjs.entry.js.map +1 -1
- package/dist/cjs/searchcraft-popover-list-item_2.cjs.entry.js +101 -0
- package/dist/cjs/searchcraft-popover-list-item_2.cjs.entry.js.map +1 -0
- package/dist/cjs/searchcraft-results-info.cjs.entry.js +51 -13
- package/dist/cjs/searchcraft-results-info.cjs.entry.js.map +1 -1
- package/dist/cjs/searchcraft-search-results-per-page.cjs.entry.js +75 -0
- package/dist/cjs/searchcraft-search-results-per-page.cjs.entry.js.map +1 -0
- package/dist/cjs/searchcraft-select.cjs.entry.js +70 -0
- package/dist/cjs/searchcraft-select.cjs.entry.js.map +1 -0
- package/dist/cjs/searchcraft-theme.cjs.entry.js +29 -11
- package/dist/cjs/searchcraft-theme.cjs.entry.js.map +1 -1
- package/dist/cjs/units-fe4d8083.js.map +1 -1
- package/dist/collection/collection-manifest.json +5 -0
- package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.js +86 -208
- package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.js.map +1 -1
- package/dist/collection/components/searchcraft-base-search-result-ad/searchcraft-base-search-result-ad.js +73 -0
- package/dist/collection/components/searchcraft-base-search-result-ad/searchcraft-base-search-result-ad.js.map +1 -0
- package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js +37 -144
- package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js.map +1 -1
- package/dist/collection/components/searchcraft-button/searchcraft-button.js +87 -17
- package/dist/collection/components/searchcraft-button/searchcraft-button.js.map +1 -1
- package/dist/collection/components/searchcraft-error-message/searchcraft-error-message.js +1 -1
- package/dist/collection/components/searchcraft-facet-list/searchcraft-facet-list.js +8 -8
- package/dist/collection/components/searchcraft-facet-list/searchcraft-facet-list.js.map +1 -1
- package/dist/collection/components/searchcraft-filter-panel/searchcraft-filter-panel.js +7 -7
- package/dist/collection/components/searchcraft-filter-panel/searchcraft-filter-panel.js.map +1 -1
- package/dist/collection/components/searchcraft-input-form/searchcraft-input-form.js +10 -14
- package/dist/collection/components/searchcraft-input-form/searchcraft-input-form.js.map +1 -1
- package/dist/collection/components/searchcraft-input-label/searchcraft-input-label.js +1 -1
- package/dist/collection/components/searchcraft-pagination/searchcraft-pagination.js +141 -0
- package/dist/collection/components/searchcraft-pagination/searchcraft-pagination.js.map +1 -0
- package/dist/collection/components/searchcraft-popover-button/searchcraft-popover-button.js +1 -1
- package/dist/collection/components/searchcraft-popover-form/searchcraft-popover-form.js +26 -21
- package/dist/collection/components/searchcraft-popover-form/searchcraft-popover-form.js.map +1 -1
- package/dist/collection/components/searchcraft-popover-list-item/searchcraft-popover-list-item.js +59 -92
- package/dist/collection/components/searchcraft-popover-list-item/searchcraft-popover-list-item.js.map +1 -1
- package/dist/collection/components/searchcraft-popover-list-item-ad/searchcraft-popover-list-item-ad.js +73 -0
- package/dist/collection/components/searchcraft-popover-list-item-ad/searchcraft-popover-list-item-ad.js.map +1 -0
- package/dist/collection/components/searchcraft-popover-list-view/searchcraft-popover-list-view.js +77 -24
- package/dist/collection/components/searchcraft-popover-list-view/searchcraft-popover-list-view.js.map +1 -1
- package/dist/collection/components/searchcraft-results-info/searchcraft-results-info.js +105 -17
- package/dist/collection/components/searchcraft-results-info/searchcraft-results-info.js.map +1 -1
- package/dist/collection/components/searchcraft-search-results-per-page/searchcraft-search-results-per-page.js +129 -0
- package/dist/collection/components/searchcraft-search-results-per-page/searchcraft-search-results-per-page.js.map +1 -0
- package/dist/collection/components/searchcraft-select/searchcraft-select.js +261 -0
- package/dist/collection/components/searchcraft-select/searchcraft-select.js.map +1 -0
- package/dist/collection/components/searchcraft-slider/searchcraft-slider.js +2 -2
- package/dist/collection/components/searchcraft-theme/searchcraft-theme.js +72 -12
- package/dist/collection/components/searchcraft-theme/searchcraft-theme.js.map +1 -1
- package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.js +7 -6
- package/dist/collection/components/searchcraft-toggle-button/searchcraft-toggle-button.js.map +1 -1
- package/dist/collection/index.js +1 -2
- package/dist/collection/index.js.map +1 -1
- package/dist/collection/provider/SearchcraftStore.js +160 -0
- package/dist/collection/provider/SearchcraftStore.js.map +1 -0
- package/dist/collection/provider/SearchcraftStore.types.js +2 -0
- package/dist/collection/provider/SearchcraftStore.types.js.map +1 -0
- package/dist/collection/provider/store.js +2 -136
- package/dist/collection/provider/store.js.map +1 -1
- package/dist/collection/utils/units.js.map +1 -1
- package/dist/components/index.js +11 -1
- package/dist/components/index.js.map +1 -1
- package/dist/components/{p-a75ef832.js → p-0e393fe1.js} +2 -2
- package/dist/components/{p-a75ef832.js.map → p-0e393fe1.js.map} +1 -1
- package/dist/components/p-25ee7496.js +58 -0
- package/dist/components/p-25ee7496.js.map +1 -0
- package/dist/components/{p-936e2ed4.js → p-38419178.js} +576 -442
- package/dist/components/p-38419178.js.map +1 -0
- package/dist/components/{p-960ddc89.js → p-3df3ff8b.js} +17 -21
- package/dist/components/p-3df3ff8b.js.map +1 -0
- package/dist/components/{p-1234974c.js → p-433f974c.js} +9 -8
- package/dist/components/p-433f974c.js.map +1 -0
- package/dist/components/{p-4b92ae26.js → p-4e9cd62e.js} +4 -4
- package/dist/components/{p-4b92ae26.js.map → p-4e9cd62e.js.map} +1 -1
- package/dist/components/{p-755f491b.js → p-6104fe5d.js} +2 -2
- package/dist/components/p-6104fe5d.js.map +1 -0
- package/dist/components/{p-b4a8fcbe.js → p-97332d3e.js} +51 -59
- package/dist/components/p-97332d3e.js.map +1 -0
- package/dist/components/p-bf6a086a.js +92 -0
- package/dist/components/p-bf6a086a.js.map +1 -0
- package/dist/components/p-bff4d3fc.js +65 -0
- package/dist/components/p-bff4d3fc.js.map +1 -0
- package/dist/components/{p-521fe971.js → p-d19bf6ff.js} +25 -8
- package/dist/components/p-d19bf6ff.js.map +1 -0
- package/dist/components/p-de4a48b1.js +65 -0
- package/dist/components/p-de4a48b1.js.map +1 -0
- package/dist/components/{p-ca881e5c.js → p-e55a7970.js} +2 -2
- package/dist/components/{p-ca881e5c.js.map → p-e55a7970.js.map} +1 -1
- package/dist/components/p-ec0d230e.js +75 -0
- package/dist/components/p-ec0d230e.js.map +1 -0
- package/dist/components/{p-54998882.js → p-fc7cda96.js} +10 -10
- package/dist/components/p-fc7cda96.js.map +1 -0
- package/dist/components/searchcraft-base-search-result-ad.d.ts +11 -0
- package/dist/components/searchcraft-base-search-result-ad.js +8 -0
- package/dist/components/searchcraft-base-search-result-ad.js.map +1 -0
- package/dist/components/searchcraft-base-search-result.js +1 -1
- package/dist/components/searchcraft-base-search-results.js +44 -89
- package/dist/components/searchcraft-base-search-results.js.map +1 -1
- package/dist/components/searchcraft-button.js +1 -1
- package/dist/components/searchcraft-error-message.js +1 -1
- package/dist/components/searchcraft-facet-list.js +1 -1
- package/dist/components/searchcraft-filter-panel.js +9 -9
- package/dist/components/searchcraft-filter-panel.js.map +1 -1
- package/dist/components/searchcraft-input-form.js +1 -1
- package/dist/components/searchcraft-input-label.js +1 -1
- package/dist/components/searchcraft-pagination.d.ts +11 -0
- package/dist/components/searchcraft-pagination.js +135 -0
- package/dist/components/searchcraft-pagination.js.map +1 -0
- package/dist/components/searchcraft-popover-button.js +2 -2
- package/dist/components/searchcraft-popover-form.js +41 -30
- package/dist/components/searchcraft-popover-form.js.map +1 -1
- package/dist/components/searchcraft-popover-list-item-ad.d.ts +11 -0
- package/dist/components/searchcraft-popover-list-item-ad.js +8 -0
- package/dist/components/searchcraft-popover-list-item-ad.js.map +1 -0
- package/dist/components/searchcraft-popover-list-item.js +1 -1
- package/dist/components/searchcraft-popover-list-view.js +1 -1
- package/dist/components/searchcraft-results-info.js +60 -17
- package/dist/components/searchcraft-results-info.js.map +1 -1
- package/dist/components/searchcraft-search-results-per-page.d.ts +11 -0
- package/dist/components/searchcraft-search-results-per-page.js +105 -0
- package/dist/components/searchcraft-search-results-per-page.js.map +1 -0
- package/dist/components/searchcraft-select.d.ts +11 -0
- package/dist/components/searchcraft-select.js +8 -0
- package/dist/components/searchcraft-select.js.map +1 -0
- package/dist/components/searchcraft-slider.js +1 -1
- package/dist/components/searchcraft-theme.js +34 -13
- package/dist/components/searchcraft-theme.js.map +1 -1
- package/dist/components/searchcraft-toggle-button.js +1 -1
- package/dist/esm/{store-aa071d9c.js → SearchcraftStore-3cfd565a.js} +576 -442
- package/dist/esm/SearchcraftStore-3cfd565a.js.map +1 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/searchcraft-base-search-result_2.entry.js +147 -0
- package/dist/esm/searchcraft-base-search-result_2.entry.js.map +1 -0
- package/dist/esm/searchcraft-base-search-results.entry.js +30 -80
- package/dist/esm/searchcraft-base-search-results.entry.js.map +1 -1
- package/dist/esm/searchcraft-button_3.entry.js +22 -7
- package/dist/esm/searchcraft-button_3.entry.js.map +1 -1
- package/dist/esm/searchcraft-facet-list_3.entry.js +17 -16
- package/dist/esm/searchcraft-facet-list_3.entry.js.map +1 -1
- package/dist/esm/searchcraft-filter-panel.entry.js +5 -5
- package/dist/esm/searchcraft-filter-panel.entry.js.map +1 -1
- package/dist/esm/searchcraft-input-form_2.entry.js +19 -32
- package/dist/esm/searchcraft-input-form_2.entry.js.map +1 -1
- package/dist/esm/searchcraft-javascript-sdk.js +1 -1
- package/dist/esm/searchcraft-pagination.entry.js +102 -0
- package/dist/esm/searchcraft-pagination.entry.js.map +1 -0
- package/dist/esm/searchcraft-popover-button.entry.js +2 -2
- package/dist/esm/searchcraft-popover-form.entry.js +20 -18
- package/dist/esm/searchcraft-popover-form.entry.js.map +1 -1
- package/dist/esm/searchcraft-popover-list-item_2.entry.js +96 -0
- package/dist/esm/searchcraft-popover-list-item_2.entry.js.map +1 -0
- package/dist/esm/searchcraft-results-info.entry.js +51 -13
- package/dist/esm/searchcraft-results-info.entry.js.map +1 -1
- package/dist/esm/searchcraft-search-results-per-page.entry.js +71 -0
- package/dist/esm/searchcraft-search-results-per-page.entry.js.map +1 -0
- package/dist/esm/searchcraft-select.entry.js +66 -0
- package/dist/esm/searchcraft-select.entry.js.map +1 -0
- package/dist/esm/searchcraft-theme.entry.js +29 -11
- package/dist/esm/searchcraft-theme.entry.js.map +1 -1
- package/dist/esm/{units-b6eba560.js → units-daaf96f5.js} +2 -2
- package/dist/esm/units-daaf96f5.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/index.esm.js +1 -1
- package/dist/searchcraft-javascript-sdk/p-279f3e15.entry.js +2 -0
- package/dist/searchcraft-javascript-sdk/p-279f3e15.entry.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/p-2bc82b48.entry.js +2 -0
- package/dist/searchcraft-javascript-sdk/p-2bc82b48.entry.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/p-2dc07b47.entry.js +2 -0
- package/dist/searchcraft-javascript-sdk/p-2dc07b47.entry.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/p-38419178.js +11 -0
- package/dist/searchcraft-javascript-sdk/p-38419178.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/p-5e064c07.entry.js +2 -0
- package/dist/searchcraft-javascript-sdk/p-5e064c07.entry.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/{p-755f491b.js → p-6104fe5d.js} +2 -2
- package/dist/searchcraft-javascript-sdk/p-6104fe5d.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/p-69da4e58.entry.js +2 -0
- package/dist/searchcraft-javascript-sdk/p-69da4e58.entry.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/p-6bffd3f5.entry.js +2 -0
- package/dist/searchcraft-javascript-sdk/p-6bffd3f5.entry.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/p-7f4dd50c.entry.js +2 -0
- package/dist/searchcraft-javascript-sdk/p-9340f4e4.entry.js +2 -0
- package/dist/searchcraft-javascript-sdk/p-9340f4e4.entry.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/p-a3074a6d.entry.js +2 -0
- package/dist/searchcraft-javascript-sdk/p-a3074a6d.entry.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/p-a84b1548.entry.js +2 -0
- package/dist/searchcraft-javascript-sdk/p-a84b1548.entry.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/p-b8ea0454.entry.js +2 -0
- package/dist/searchcraft-javascript-sdk/p-b8ea0454.entry.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/p-c4a9d8ab.entry.js +2 -0
- package/dist/searchcraft-javascript-sdk/p-c4a9d8ab.entry.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/p-d2fffca9.entry.js +2 -0
- package/dist/searchcraft-javascript-sdk/p-d2fffca9.entry.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/p-e11de2d6.entry.js +2 -0
- package/dist/searchcraft-javascript-sdk/p-e11de2d6.entry.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js +1 -1
- package/dist/searchcraft-javascript-sdk/searchcraft-javascript-sdk.esm.js.map +1 -1
- package/dist/types/components/searchcraft-base-search-result/searchcraft-base-search-result.d.ts +20 -41
- package/dist/types/components/searchcraft-base-search-result-ad/searchcraft-base-search-result-ad.d.ts +14 -0
- package/dist/types/components/searchcraft-base-search-results/searchcraft-base-search-results.d.ts +9 -18
- package/dist/types/components/searchcraft-button/searchcraft-button.d.ts +17 -6
- package/dist/types/components/searchcraft-facet-list/searchcraft-facet-list.d.ts +1 -1
- package/dist/types/components/searchcraft-filter-panel/searchcraft-filter-panel.d.ts +2 -2
- package/dist/types/components/searchcraft-input-form/searchcraft-input-form.d.ts +1 -1
- package/dist/types/components/searchcraft-pagination/searchcraft-pagination.d.ts +33 -0
- package/dist/types/components/searchcraft-popover-form/searchcraft-popover-form.d.ts +9 -7
- package/dist/types/components/searchcraft-popover-list-item/searchcraft-popover-list-item.d.ts +9 -12
- package/dist/types/components/searchcraft-popover-list-item-ad/searchcraft-popover-list-item-ad.d.ts +14 -0
- package/dist/types/components/searchcraft-popover-list-view/searchcraft-popover-list-view.d.ts +7 -4
- package/dist/types/components/searchcraft-results-info/searchcraft-results-info.d.ts +26 -4
- package/dist/types/components/searchcraft-search-results-per-page/searchcraft-search-results-per-page.d.ts +33 -0
- package/dist/types/components/searchcraft-select/searchcraft-select.d.ts +64 -0
- package/dist/types/components/searchcraft-theme/searchcraft-theme.d.ts +11 -2
- package/dist/types/components/searchcraft-toggle-button/searchcraft-toggle-button.d.ts +1 -1
- package/dist/types/components.d.ts +444 -170
- package/dist/types/index.d.ts +1 -2
- package/dist/types/provider/SearchcraftStore.d.ts +4 -0
- package/dist/types/provider/SearchcraftStore.types.d.ts +44 -0
- package/dist/types/provider/store.d.ts +2 -34
- package/dist/types/utils/units.d.ts +1 -1
- package/package.json +3 -3
- package/dist/cjs/searchcraft-base-search-result.cjs.entry.js +0 -117
- package/dist/cjs/searchcraft-base-search-result.cjs.entry.js.map +0 -1
- package/dist/cjs/searchcraft-popover-list-item.cjs.entry.js +0 -49
- package/dist/cjs/searchcraft-popover-list-item.cjs.entry.js.map +0 -1
- package/dist/cjs/store-f6ba3dfb.js.map +0 -1
- package/dist/collection/types/_shared.types.js +0 -2
- package/dist/collection/types/_shared.types.js.map +0 -1
- package/dist/collection/types/index.js +0 -5
- package/dist/collection/types/index.js.map +0 -1
- package/dist/collection/types/searchcraft-base-search-results.types.js +0 -2
- package/dist/collection/types/searchcraft-base-search-results.types.js.map +0 -1
- package/dist/collection/types/searchcraft-filter-panel.types.js +0 -2
- package/dist/collection/types/searchcraft-filter-panel.types.js.map +0 -1
- package/dist/collection/types/searchcraft-popover-form.types.js +0 -2
- package/dist/collection/types/searchcraft-popover-form.types.js.map +0 -1
- package/dist/components/p-0ef4ab33.js +0 -66
- package/dist/components/p-0ef4ab33.js.map +0 -1
- package/dist/components/p-1234974c.js.map +0 -1
- package/dist/components/p-506cdac1.js +0 -58
- package/dist/components/p-506cdac1.js.map +0 -1
- package/dist/components/p-521fe971.js.map +0 -1
- package/dist/components/p-54998882.js.map +0 -1
- package/dist/components/p-755f491b.js.map +0 -1
- package/dist/components/p-936e2ed4.js.map +0 -1
- package/dist/components/p-960ddc89.js.map +0 -1
- package/dist/components/p-b4a8fcbe.js.map +0 -1
- package/dist/esm/searchcraft-base-search-result.entry.js +0 -113
- package/dist/esm/searchcraft-base-search-result.entry.js.map +0 -1
- package/dist/esm/searchcraft-popover-list-item.entry.js +0 -45
- package/dist/esm/searchcraft-popover-list-item.entry.js.map +0 -1
- package/dist/esm/store-aa071d9c.js.map +0 -1
- package/dist/esm/units-b6eba560.js.map +0 -1
- package/dist/searchcraft-javascript-sdk/p-109ab0e0.entry.js +0 -2
- package/dist/searchcraft-javascript-sdk/p-109ab0e0.entry.js.map +0 -1
- package/dist/searchcraft-javascript-sdk/p-26f5263d.entry.js +0 -2
- package/dist/searchcraft-javascript-sdk/p-26f5263d.entry.js.map +0 -1
- package/dist/searchcraft-javascript-sdk/p-2ff7eb35.entry.js +0 -2
- package/dist/searchcraft-javascript-sdk/p-2ff7eb35.entry.js.map +0 -1
- package/dist/searchcraft-javascript-sdk/p-36f0532e.entry.js +0 -2
- package/dist/searchcraft-javascript-sdk/p-36f0532e.entry.js.map +0 -1
- package/dist/searchcraft-javascript-sdk/p-41b6bc5d.entry.js +0 -2
- package/dist/searchcraft-javascript-sdk/p-41b6bc5d.entry.js.map +0 -1
- package/dist/searchcraft-javascript-sdk/p-57eddb07.entry.js +0 -2
- package/dist/searchcraft-javascript-sdk/p-57eddb07.entry.js.map +0 -1
- package/dist/searchcraft-javascript-sdk/p-5d6fbee0.entry.js +0 -2
- package/dist/searchcraft-javascript-sdk/p-5d6fbee0.entry.js.map +0 -1
- package/dist/searchcraft-javascript-sdk/p-64c5a1d2.entry.js +0 -2
- package/dist/searchcraft-javascript-sdk/p-64c5a1d2.entry.js.map +0 -1
- package/dist/searchcraft-javascript-sdk/p-755f491b.js.map +0 -1
- package/dist/searchcraft-javascript-sdk/p-936e2ed4.js +0 -11
- package/dist/searchcraft-javascript-sdk/p-936e2ed4.js.map +0 -1
- package/dist/searchcraft-javascript-sdk/p-c7df8be6.entry.js +0 -2
- package/dist/searchcraft-javascript-sdk/p-c7df8be6.entry.js.map +0 -1
- package/dist/searchcraft-javascript-sdk/p-eb6058e8.entry.js +0 -2
- package/dist/searchcraft-javascript-sdk/p-eb6058e8.entry.js.map +0 -1
- package/dist/searchcraft-javascript-sdk/p-faaa4394.entry.js +0 -2
- package/dist/types/types/_shared.types.d.ts +0 -46
- package/dist/types/types/index.d.ts +0 -5
- package/dist/types/types/searchcraft-base-search-results.types.d.ts +0 -11
- package/dist/types/types/searchcraft-filter-panel.types.d.ts +0 -43
- package/dist/types/types/searchcraft-popover-form.types.d.ts +0 -9
- /package/dist/searchcraft-javascript-sdk/{p-faaa4394.entry.js.map → p-7f4dd50c.entry.js.map} +0 -0
- /package/dist/types/{types → themes}/raw.d.ts +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["SearchcraftPopoverForm","config","type","popoverResultMappings","hotkey","hotkeyModifier","isPopoverVisibleInState","unsubscribe","searchClientResponseItems","adClientResponseItems","searchTerm","isFocused","breakpointSm","breakpointMd","breakpointLg","searchResultsPage","searchResultsPerPage","modalElement","componentDidLoad","computedStyle","getComputedStyle","document","documentElement","this","Number","parseFloat","getPropertyValue","trim","useSearchcraftStore","getState","isPopoverVisible","addEventListener","handleDocumentClick","handleDocumentKeyDown","subscribe","state","handlePopoverVisibilityChange","disconnectedCallback","removeEventListener","event","hostElement","contains","target","isVisible","body","style","overflow","key","handleHotkeyPressed","activeElement","preventDefault","focusOnNextListItem","setPopoverVisibility","handleInputInit","input","querySelector","focus","handleInputFocus","window","visualViewport","width","createElement","setAttribute","appendChild","handleModalBackdropClick","_event","ctrlKey","altKey","metaKey","hostElementInput","handleCancelButtonClick","direction","listItems","Array","from","querySelectorAll","filter","el","hasAttribute","offsetParent","currentIndex","indexOf","length","requestAnimationFrame","selectionEnd","value","selectionStart","hasResultsToShow","renderInlinePopover","isListViewVisible","popoverFormClassNames","classNames","h","class","onInputFocus","bind","renderModalPopover","onClick","onInputInit","renderFullscreenPopover","render"],"sources":["src/components/searchcraft-popover-form/searchcraft-popover-form.tsx"],"sourcesContent":["import { Component, Element, Prop, State, h } from '@stencil/core';\nimport classNames from 'classnames';\nimport type {\n SearchcraftConfig,\n SearchClientResponseItem,\n AdClientResponseItem,\n PopoverResultMappings,\n} from '@searchcraft/core';\n\nimport { useSearchcraftStore } from '@provider/store';\n\n/**\n * This web component is designed to display search results in a popover container that dynamically appears when the user interacts with a search input field, or when a popover-button is pressed.\n *\n * ## Usage\n * ```html\n * <!-- index.html -->\n * <searchcraft-popover-form type=\"fullscreen\" />\n * ```\n *\n * ```js\n * // index.js\n * const popoverForm = document.querySelector('searchcraft-popover-form');\n *\n * popoverForm.config = {\n * index: [index_name_from_vektron],\n * readKey: 'read_key_from_vektron',\n * endpointUrl: 'enpoint_url_from_vektron',\n * };\n *\n * popoverForm.popoverResultMappings = {\n * containerHref: {\n * fieldNames: [\n * {\n * fieldName: 'canonical_link',\n * dataType: 'text',\n * },\n * ],\n * };\n * ```\n */\n@Component({\n tag: 'searchcraft-popover-form',\n shadow: false,\n})\nexport class SearchcraftPopoverForm {\n /**\n * The Searchcraft config object.\n */\n @Prop() config: SearchcraftConfig | undefined;\n /**\n * The type of popover form to render.\n *\n * - `inline` - Renders inline with the rest of the content on the page. The search results pop over the page content.\n * - `fullscreen` - Renders in fullscreen view. Used together with the `searchcraft-popover-button` component.\n * - `modal` - Renders in a modal view. Used together with the `searchcraft-popover-button` component.\n */\n @Prop() type: 'inline' | 'fullscreen' | 'modal' = 'inline';\n /**\n * Formats the content rendered for each result.\n */\n @Prop() popoverResultMappings: PopoverResultMappings | undefined;\n /**\n * The hotkey that activates the popover.\n */\n @Prop() hotkey = 'k';\n /**\n * The hotkey modifier that activates the popover. Used together with the `hotkey` prop.\n */\n @Prop() hotkeyModifier: 'ctrl' | 'meta' | 'alt' | 'option' = 'meta';\n\n @State() isPopoverVisibleInState = false;\n @State() unsubscribe: (() => void) | undefined;\n @State() searchClientResponseItems: SearchClientResponseItem[] = [];\n @State() adClientResponseItems: AdClientResponseItem[] = [];\n @State() searchTerm: string | undefined;\n @State() isFocused = false;\n @State() breakpointSm = 576;\n @State() breakpointMd = 768;\n @State() breakpointLg = 992;\n @State() searchResultsPage;\n @State() searchResultsPerPage;\n\n @State() modalElement;\n\n @Element() hostElement!: HTMLElement;\n\n componentDidLoad() {\n // Loads the breakpoint values into state\n const computedStyle = getComputedStyle(document.documentElement);\n this.breakpointSm = Number.parseFloat(\n computedStyle.getPropertyValue('--sc-breakpoint-sm').trim(),\n );\n this.breakpointMd = Number.parseFloat(\n computedStyle.getPropertyValue('--sc-breakpoint-md').trim(),\n );\n this.breakpointLg = Number.parseFloat(\n computedStyle.getPropertyValue('--sc-breakpoint-lg').trim(),\n );\n // Set popover visiblity in state\n this.isPopoverVisibleInState =\n useSearchcraftStore.getState().isPopoverVisible;\n\n // Add event listeners\n document.addEventListener('click', this.handleDocumentClick);\n document.addEventListener('keydown', this.handleDocumentKeyDown);\n\n // Subscribe to state events\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n if (this.isPopoverVisibleInState !== state.isPopoverVisible) {\n this.handlePopoverVisibilityChange(state.isPopoverVisible);\n }\n\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\n disconnectedCallback() {\n this.unsubscribe?.();\n document.removeEventListener('click', this.handleDocumentClick);\n document.removeEventListener('keydown', this.handleDocumentKeyDown);\n }\n\n handleDocumentClick = (event: MouseEvent) => {\n if (!this.hostElement.contains(event.target as Node)) {\n this.isFocused = false;\n }\n };\n\n /**\n * Handles when popover visibility is changed in state\n */\n handlePopoverVisibilityChange(isVisible: boolean) {\n this.isPopoverVisibleInState = isVisible;\n document.body.style.overflow = isVisible ? 'hidden' : 'auto';\n }\n\n /**\n * Actions to perform when various keys are pressed within the popover form.\n */\n handleDocumentKeyDown = (event: KeyboardEvent) => {\n // Document-scoped actions\n if (event.key === this.hotkey) {\n this.handleHotkeyPressed(event);\n }\n\n // Document-scoped -> Popover-scoped keyboard event boundary\n if (!this.hostElement.contains(document.activeElement)) {\n return;\n }\n\n // Popover-scoped actions\n switch (event.key) {\n case 'ArrowDown':\n case 'ArrowUp':\n event.preventDefault();\n this.focusOnNextListItem(event.key);\n break;\n case 'Escape':\n useSearchcraftStore.getState().setPopoverVisibility(false);\n break;\n default:\n return;\n }\n };\n\n handleInputInit = () => {\n const input = this.hostElement.querySelector('.searchcraft-input') as\n | HTMLInputElement\n | undefined;\n input?.focus();\n };\n\n /**\n * When popover is `inline` and the viewport is at the smallest breakpoint,\n * focusing on the input will open a modal version of the popover form.\n */\n handleInputFocus() {\n this.isFocused = true;\n\n if (\n this.type === 'inline' &&\n window.visualViewport &&\n window.visualViewport.width < this.breakpointSm\n ) {\n useSearchcraftStore.getState().setPopoverVisibility(true);\n\n // Appends a popover form of type=`modal` to the body\n if (!this.modalElement) {\n this.modalElement = document.createElement('searchcraft-popover-form');\n this.modalElement.config = this.config;\n this.modalElement.popoverResultMappings = this.popoverResultMappings;\n this.modalElement.setAttribute('type', 'fullscreen');\n document.body.appendChild(this.modalElement);\n }\n }\n }\n\n handleModalBackdropClick(_event: MouseEvent) {\n useSearchcraftStore.getState().setPopoverVisibility(false);\n }\n\n /**\n * When a hotkey is pressed, tests if the modifiers also match.\n * If modifiers match, toggles visibility of the popover modal.\n */\n handleHotkeyPressed(event: KeyboardEvent) {\n if (\n (event.ctrlKey && this.hotkeyModifier === 'ctrl') ||\n (event.altKey && this.hotkeyModifier === 'alt') ||\n (event.metaKey && this.hotkeyModifier === 'meta')\n ) {\n event.preventDefault();\n if (this.type === 'inline' && !this.isPopoverVisibleInState) {\n const hostElementInput = this.hostElement.querySelector(\n '.searchcraft-input',\n ) as HTMLInputElement | undefined;\n hostElementInput?.focus();\n } else {\n useSearchcraftStore\n .getState()\n .setPopoverVisibility(!this.isPopoverVisibleInState);\n }\n }\n }\n\n handleCancelButtonClick() {\n useSearchcraftStore.getState().setPopoverVisibility(false);\n }\n\n /**\n * Moves focus to the next/previous list item in the list view. If you are at the top\n * of the list view, it moves focus back to the input.\n *\n * @param direction\n */\n focusOnNextListItem(direction: 'ArrowDown' | 'ArrowUp') {\n const listItems = Array.from(\n document.querySelectorAll<HTMLAnchorElement>(\n 'a.searchcraft-popover-list-item',\n ),\n ).filter((el) => !el.hasAttribute('disabled') && el.offsetParent !== null);\n\n const currentIndex = listItems.indexOf(\n document.activeElement as HTMLAnchorElement,\n );\n\n if (direction === 'ArrowDown') {\n listItems[(currentIndex + 1) % listItems.length]?.focus();\n } else if (direction === 'ArrowUp') {\n if (currentIndex >= 1) {\n listItems[currentIndex - 1]?.focus();\n } else {\n const input = document.querySelector('.searchcraft-input') as\n | HTMLInputElement\n | undefined;\n\n if (input) {\n input.focus();\n requestAnimationFrame(() => {\n input.selectionEnd = input.value.length;\n input.selectionStart = input.value.length;\n });\n }\n }\n }\n }\n\n get hasResultsToShow() {\n return (\n this.searchTerm &&\n this.searchTerm?.trim()?.length > 0 &&\n this.searchClientResponseItems.length > 0\n );\n }\n\n renderInlinePopover() {\n const isListViewVisible = this.hasResultsToShow && this.isFocused;\n\n const popoverFormClassNames = classNames(\n 'searchcraft-popover-form searchcraft-popover-form-inline',\n {\n 'searchcraft-popover-form-active': isListViewVisible,\n },\n );\n\n return (\n <div class={popoverFormClassNames}>\n <searchcraft-input-form\n config={this.config}\n onInputFocus={this.handleInputFocus.bind(this)}\n />\n {isListViewVisible && (\n <div class='searchcraft-popover-inline-wrapper-outer'>\n <div class='searchcraft-popover-inline-wrapper-inner'>\n <searchcraft-popover-list-view\n popoverResultMappings={this.popoverResultMappings}\n searchClientResponseItems={this.searchClientResponseItems}\n adClientResponseItems={this.adClientResponseItems}\n searchResultsPage={this.searchResultsPage}\n searchResultsPerPage={this.searchResultsPerPage}\n />\n </div>\n </div>\n )}\n </div>\n );\n }\n\n renderModalPopover() {\n if (this.isPopoverVisibleInState) {\n const popoverFormClassNames = classNames('searchcraft-popover-form', {\n 'searchcraft-popover-form-active': this.hasResultsToShow,\n });\n\n return (\n <div class='searchcraft-popover-form-modal'>\n {/* biome-ignore lint/a11y/useKeyWithClickEvents: <explanation> */}\n <div\n class='searchcraft-popover-form-modal-backdrop'\n onClick={this.handleModalBackdropClick}\n />\n <div class='searchcraft-popover-form-modal-inner'>\n <div class={popoverFormClassNames}>\n <div class='searchcraft-popover-form-input-wrapper'>\n <searchcraft-input-form\n config={this.config}\n onInputFocus={this.handleInputFocus.bind(this)}\n onInputInit={this.handleInputInit.bind(this)}\n />\n <button\n type='button'\n class='searchcraft-popover-form-cancel-button'\n onClick={this.handleCancelButtonClick.bind(this)}\n >\n Cancel\n </button>\n </div>\n {this.hasResultsToShow && (\n <searchcraft-popover-list-view\n popoverResultMappings={this.popoverResultMappings}\n searchClientResponseItems={this.searchClientResponseItems}\n adClientResponseItems={this.adClientResponseItems}\n searchResultsPage={this.searchResultsPage}\n searchResultsPerPage={this.searchResultsPerPage}\n />\n )}\n </div>\n </div>\n </div>\n );\n }\n }\n\n renderFullscreenPopover() {\n if (this.isPopoverVisibleInState) {\n return (\n <div class='searchcraft-popover-form-fullscreen'>\n <div class='searchcraft-popover-form'>\n <div class='searchcraft-popover-form-input-wrapper'>\n <searchcraft-input-form\n config={this.config}\n onInputFocus={this.handleInputFocus.bind(this)}\n onInputInit={this.handleInputInit.bind(this)}\n />\n <button\n type='button'\n class='searchcraft-popover-form-cancel-button'\n onClick={this.handleCancelButtonClick.bind(this)}\n >\n Cancel\n </button>\n </div>\n {this.hasResultsToShow && (\n <searchcraft-popover-list-view\n popoverResultMappings={this.popoverResultMappings}\n searchClientResponseItems={this.searchClientResponseItems}\n adClientResponseItems={this.adClientResponseItems}\n searchResultsPage={this.searchResultsPage}\n searchResultsPerPage={this.searchResultsPerPage}\n />\n )}\n </div>\n </div>\n );\n }\n }\n\n render() {\n switch (this.type) {\n case 'inline':\n return this.renderInlinePopover();\n case 'modal':\n return this.renderModalPopover();\n case 'fullscreen':\n return this.renderFullscreenPopover();\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
var e={};var n={};const t=e=>{let n;const t=new Set;const r=(e,r)=>{const o=typeof e==="function"?e(n):e;if(!Object.is(o,n)){const e=n;n=(r!=null?r:typeof o!=="object"||o===null)?o:Object.assign({},n,o);t.forEach((t=>t(n,e)))}};const o=()=>n;const i=()=>c;const a=e=>{t.add(e);return()=>t.delete(e)};const s={setState:r,getState:o,getInitialState:i,subscribe:a};const c=n=e(r,o,s);return s};const r=e=>e?t(e):t;n.createStore=r;var o={};var i={exports:{}};var a={};
|
|
2
|
+
/**
|
|
3
|
+
* @license React
|
|
4
|
+
* react.production.js
|
|
5
|
+
*
|
|
6
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
7
|
+
*
|
|
8
|
+
* This source code is licensed under the MIT license found in the
|
|
9
|
+
* LICENSE file in the root directory of this source tree.
|
|
10
|
+
*/var s=Symbol.for("react.transitional.element"),c=Symbol.for("react.portal"),u=Symbol.for("react.fragment"),f=Symbol.for("react.strict_mode"),l=Symbol.for("react.profiler"),d=Symbol.for("react.consumer"),h=Symbol.for("react.context"),v=Symbol.for("react.forward_ref"),m=Symbol.for("react.suspense"),p=Symbol.for("react.memo"),w=Symbol.for("react.lazy"),y=Symbol.iterator;function g(e){if(null===e||"object"!==typeof e)return null;e=y&&e[y]||e["@@iterator"];return"function"===typeof e?e:null}var b={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},S=Object.assign,M={};function P(e,n,t){this.props=e;this.context=n;this.refs=M;this.updater=t||b}P.prototype.isReactComponent={};P.prototype.setState=function(e,n){if("object"!==typeof e&&"function"!==typeof e&&null!=e)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,n,"setState")};P.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function R(){}R.prototype=P.prototype;function x(e,n,t){this.props=e;this.context=n;this.refs=M;this.updater=t||b}var F=x.prototype=new R;F.constructor=x;S(F,P.prototype);F.isPureReactComponent=!0;var I=Array.isArray,T={H:null,A:null,T:null,S:null},j=Object.prototype.hasOwnProperty;function k(e,n,t,r,o,i){t=i.ref;return{$$typeof:s,type:e,key:n,ref:void 0!==t?t:null,props:i}}function E(e,n){return k(e.type,n,void 0,void 0,void 0,e.props)}function C(e){return"object"===typeof e&&null!==e&&e.$$typeof===s}function O(e){var n={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return n[e]}))}var A=/\/+/g;function _(e,n){return"object"===typeof e&&null!==e&&null!=e.key?O(""+e.key):n.toString(36)}function $(){}function U(e){switch(e.status){case"fulfilled":return e.value;case"rejected":throw e.reason;default:switch("string"===typeof e.status?e.then($,$):(e.status="pending",e.then((function(n){"pending"===e.status&&(e.status="fulfilled",e.value=n)}),(function(n){"pending"===e.status&&(e.status="rejected",e.reason=n)}))),e.status){case"fulfilled":return e.value;case"rejected":throw e.reason}}throw e}function L(e,n,t,r,o){var i=typeof e;if("undefined"===i||"boolean"===i)e=null;var a=!1;if(null===e)a=!0;else switch(i){case"bigint":case"string":case"number":a=!0;break;case"object":switch(e.$$typeof){case s:case c:a=!0;break;case w:return a=e._init,L(a(e._payload),n,t,r,o)}}if(a)return o=o(e),a=""===r?"."+_(e,0):r,I(o)?(t="",null!=a&&(t=a.replace(A,"$&/")+"/"),L(o,n,t,"",(function(e){return e}))):null!=o&&(C(o)&&(o=E(o,t+(null==o.key||e&&e.key===o.key?"":(""+o.key).replace(A,"$&/")+"/")+a)),n.push(o)),1;a=0;var u=""===r?".":r+":";if(I(e))for(var f=0;f<e.length;f++)r=e[f],i=u+_(r,f),a+=L(r,n,t,i,o);else if(f=g(e),"function"===typeof f)for(e=f.call(e),f=0;!(r=e.next()).done;)r=r.value,i=u+_(r,f++),a+=L(r,n,t,i,o);else if("object"===i){if("function"===typeof e.then)return L(U(e),n,t,r,o);n=String(e);throw Error("Objects are not valid as a React child (found: "+("[object Object]"===n?"object with keys {"+Object.keys(e).join(", ")+"}":n)+"). If you meant to render a collection of children, use an array instead.")}return a}function N(e,n,t){if(null==e)return e;var r=[],o=0;L(e,r,"","",(function(e){return n.call(t,e,o++)}));return r}function V(e){if(-1===e._status){var n=e._result;n=n();n.then((function(n){if(0===e._status||-1===e._status)e._status=1,e._result=n}),(function(n){if(0===e._status||-1===e._status)e._status=2,e._result=n}));-1===e._status&&(e._status=0,e._result=n)}if(1===e._status)return e._result.default;throw e._result}var q="function"===typeof reportError?reportError:function(e){if("object"===typeof window&&"function"===typeof window.ErrorEvent){var n=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:"object"===typeof e&&null!==e&&"string"===typeof e.message?String(e.message):String(e),error:e});if(!window.dispatchEvent(n))return}else if("object"===typeof process&&"function"===typeof process.emit){process.emit("uncaughtException",e);return}console.error(e)};function B(){}a.Children={map:N,forEach:function(e,n,t){N(e,(function(){n.apply(this,arguments)}),t)},count:function(e){var n=0;N(e,(function(){n++}));return n},toArray:function(e){return N(e,(function(e){return e}))||[]},only:function(e){if(!C(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};a.Component=P;a.Fragment=u;a.Profiler=l;a.PureComponent=x;a.StrictMode=f;a.Suspense=m;a.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=T;a.act=function(){throw Error("act(...) is not supported in production builds of React.")};a.cache=function(e){return function(){return e.apply(null,arguments)}};a.cloneElement=function(e,n,t){if(null===e||void 0===e)throw Error("The argument must be a React element, but you passed "+e+".");var r=S({},e.props),o=e.key,i=void 0;if(null!=n)for(a in void 0!==n.ref&&(i=void 0),void 0!==n.key&&(o=""+n.key),n)!j.call(n,a)||"key"===a||"__self"===a||"__source"===a||"ref"===a&&void 0===n.ref||(r[a]=n[a]);var a=arguments.length-2;if(1===a)r.children=t;else if(1<a){for(var s=Array(a),c=0;c<a;c++)s[c]=arguments[c+2];r.children=s}return k(e.type,o,void 0,void 0,i,r)};a.createContext=function(e){e={$$typeof:h,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null};e.Provider=e;e.Consumer={$$typeof:d,_context:e};return e};a.createElement=function(e,n,t){var r,o={},i=null;if(null!=n)for(r in void 0!==n.key&&(i=""+n.key),n)j.call(n,r)&&"key"!==r&&"__self"!==r&&"__source"!==r&&(o[r]=n[r]);var a=arguments.length-2;if(1===a)o.children=t;else if(1<a){for(var s=Array(a),c=0;c<a;c++)s[c]=arguments[c+2];o.children=s}if(e&&e.defaultProps)for(r in a=e.defaultProps,a)void 0===o[r]&&(o[r]=a[r]);return k(e,i,void 0,void 0,null,o)};a.createRef=function(){return{current:null}};a.forwardRef=function(e){return{$$typeof:v,render:e}};a.isValidElement=C;a.lazy=function(e){return{$$typeof:w,_payload:{_status:-1,_result:e},_init:V}};a.memo=function(e,n){return{$$typeof:p,type:e,compare:void 0===n?null:n}};a.startTransition=function(e){var n=T.T,t={};T.T=t;try{var r=e(),o=T.S;null!==o&&o(t,r);"object"===typeof r&&null!==r&&"function"===typeof r.then&&r.then(B,q)}catch(e){q(e)}finally{T.T=n}};a.unstable_useCacheRefresh=function(){return T.H.useCacheRefresh()};a.use=function(e){return T.H.use(e)};a.useActionState=function(e,n,t){return T.H.useActionState(e,n,t)};a.useCallback=function(e,n){return T.H.useCallback(e,n)};a.useContext=function(e){return T.H.useContext(e)};a.useDebugValue=function(){};a.useDeferredValue=function(e,n){return T.H.useDeferredValue(e,n)};a.useEffect=function(e,n){return T.H.useEffect(e,n)};a.useId=function(){return T.H.useId()};a.useImperativeHandle=function(e,n,t){return T.H.useImperativeHandle(e,n,t)};a.useInsertionEffect=function(e,n){return T.H.useInsertionEffect(e,n)};a.useLayoutEffect=function(e,n){return T.H.useLayoutEffect(e,n)};a.useMemo=function(e,n){return T.H.useMemo(e,n)};a.useOptimistic=function(e,n){return T.H.useOptimistic(e,n)};a.useReducer=function(e,n,t){return T.H.useReducer(e,n,t)};a.useRef=function(e){return T.H.useRef(e)};a.useState=function(e){return T.H.useState(e)};a.useSyncExternalStore=function(e,n,t){return T.H.useSyncExternalStore(e,n,t)};a.useTransition=function(){return T.H.useTransition()};a.version="19.0.0";{i.exports=a}var D=i.exports;var z=n;const G=e=>e;function W(e,n=G){const t=D.useSyncExternalStore(e.subscribe,(()=>n(e.getState())),(()=>n(e.getInitialState())));D.useDebugValue(t);return t}const H=e=>{const n=z.createStore(e);const t=e=>W(n,e);Object.assign(t,n);return t};const J=e=>e?H(e):H;o.create=J;o.useStore=W;(function(e){var t=n;var r=o;Object.keys(t).forEach((function(n){if(n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n))Object.defineProperty(e,n,{enumerable:true,get:function(){return t[n]}})}));Object.keys(r).forEach((function(n){if(n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n))Object.defineProperty(e,n,{enumerable:true,get:function(){return r[n]}})}))})(e);var K=Object.defineProperty;var X=(e,n,t)=>n in e?K(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t;var Q=(e,n,t)=>X(e,typeof n!="symbol"?n+"":n,t);var Z=(e=>(e[e.DEBUG=0]="DEBUG",e[e.INFO=1]="INFO",e[e.WARN=2]="WARN",e[e.ERROR=3]="ERROR",e))(Z||{});class Y{constructor(e){Q(this,"logLevel");Q(this,"logFormatter");this.logLevel=e.logLevel||1,this.logFormatter=e.logFormatter||this.defaultFormatter}defaultFormatter(e,n){return`[${Z[e]}] ${(new Date).toISOString()}: ${n}`}debug(e){this.logLevel<=0&&console.log(this.logFormatter(0,e))}info(e){this.logLevel<=1&&console.info(this.logFormatter(1,e))}warn(e){this.logLevel<=2&&console.warn(this.logFormatter(2,e))}error(e){this.logLevel<=3&&console.error(this.logFormatter(3,e))}log(e,n){switch(e){case 0:this.debug(n);break;case 1:this.info(n);break;case 2:this.warn(n);break;case 3:this.error(n);break}}}function ee(e,n,t,r){return new(t||(t=Promise))((function(n,o){function i(e){try{s(r.next(e))}catch(e){o(e)}}function a(e){try{s(r.throw(e))}catch(e){o(e)}}function s(e){var r;e.done?n(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(i,a)}s((r=r.apply(e,[])).next())}))}function ne(e,n){var t,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},typeof Symbol=="function"&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(c){return function(s){if(t)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(t=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(o=a.trys,!((o=o.length>0&&o[o.length-1])||s[0]!==6&&s[0]!==2)){a=0;continue}if(s[0]===3&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(s[0]===6&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=n.call(e,a)}catch(e){s=[6,e],r=0}finally{t=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}}var te={exclude:[]},re={},oe={timeout:"true"},ie=function(e,n){typeof window<"u"&&(re[e]=n)},ae=function(){return Object.fromEntries(Object.entries(re).filter((function(e){var n,t=e[0];return!(!((n=te==null?void 0:te.exclude)===null||n===void 0)&&n.includes(t))})).map((function(e){return[e[0],(0,e[1])()]})))};function se(e){return e^=e>>>16,e=Math.imul(e,2246822507),e^=e>>>13,e=Math.imul(e,3266489909),(e^=e>>>16)>>>0}var ce=new Uint32Array([597399067,2869860233,951274213,2716044179]);function ue(e,n){return e<<n|e>>>32-n}function fe(e,n){var t;if(n===void 0&&(n=0),n=n?0|n:0,typeof e=="string"&&(t=e,e=(new TextEncoder).encode(t).buffer),!(e instanceof ArrayBuffer))throw new TypeError("Expected key to be ArrayBuffer or string");var r=new Uint32Array([n,n,n,n]);(function(e,n){for(var t=e.byteLength/16|0,r=new Uint32Array(e,0,4*t),o=0;o<t;o++){var i=r.subarray(4*o,4*(o+1));i[0]=Math.imul(i[0],ce[0]),i[0]=ue(i[0],15),i[0]=Math.imul(i[0],ce[1]),n[0]=n[0]^i[0],n[0]=ue(n[0],19),n[0]=n[0]+n[1],n[0]=Math.imul(n[0],5)+1444728091,i[1]=Math.imul(i[1],ce[1]),i[1]=ue(i[1],16),i[1]=Math.imul(i[1],ce[2]),n[1]=n[1]^i[1],n[1]=ue(n[1],17),n[1]=n[1]+n[2],n[1]=Math.imul(n[1],5)+197830471,i[2]=Math.imul(i[2],ce[2]),i[2]=ue(i[2],17),i[2]=Math.imul(i[2],ce[3]),n[2]=n[2]^i[2],n[2]=ue(n[2],15),n[2]=n[2]+n[3],n[2]=Math.imul(n[2],5)+2530024501,i[3]=Math.imul(i[3],ce[3]),i[3]=ue(i[3],18),i[3]=Math.imul(i[3],ce[0]),n[3]=n[3]^i[3],n[3]=ue(n[3],13),n[3]=n[3]+n[0],n[3]=Math.imul(n[3],5)+850148119}})(e,r),function(e,n){var t=e.byteLength/16|0,r=e.byteLength%16,o=new Uint32Array(4),i=new Uint8Array(e,16*t,r);switch(r){case 15:o[3]=o[3]^i[14]<<16;case 14:o[3]=o[3]^i[13]<<8;case 13:o[3]=o[3]^i[12]<<0,o[3]=Math.imul(o[3],ce[3]),o[3]=ue(o[3],18),o[3]=Math.imul(o[3],ce[0]),n[3]=n[3]^o[3];case 12:o[2]=o[2]^i[11]<<24;case 11:o[2]=o[2]^i[10]<<16;case 10:o[2]=o[2]^i[9]<<8;case 9:o[2]=o[2]^i[8]<<0,o[2]=Math.imul(o[2],ce[2]),o[2]=ue(o[2],17),o[2]=Math.imul(o[2],ce[3]),n[2]=n[2]^o[2];case 8:o[1]=o[1]^i[7]<<24;case 7:o[1]=o[1]^i[6]<<16;case 6:o[1]=o[1]^i[5]<<8;case 5:o[1]=o[1]^i[4]<<0,o[1]=Math.imul(o[1],ce[1]),o[1]=ue(o[1],16),o[1]=Math.imul(o[1],ce[2]),n[1]=n[1]^o[1];case 4:o[0]=o[0]^i[3]<<24;case 3:o[0]=o[0]^i[2]<<16;case 2:o[0]=o[0]^i[1]<<8;case 1:o[0]=o[0]^i[0]<<0,o[0]=Math.imul(o[0],ce[0]),o[0]=ue(o[0],15),o[0]=Math.imul(o[0],ce[1]),n[0]=n[0]^o[0]}}(e,r),function(e,n){n[0]=n[0]^e.byteLength,n[1]=n[1]^e.byteLength,n[2]=n[2]^e.byteLength,n[3]=n[3]^e.byteLength,n[0]=n[0]+n[1]|0,n[0]=n[0]+n[2]|0,n[0]=n[0]+n[3]|0,n[1]=n[1]+n[0]|0,n[2]=n[2]+n[0]|0,n[3]=n[3]+n[0]|0,n[0]=se(n[0]),n[1]=se(n[1]),n[2]=se(n[2]),n[3]=se(n[3]),n[0]=n[0]+n[1]|0,n[0]=n[0]+n[2]|0,n[0]=n[0]+n[3]|0,n[1]=n[1]+n[0]|0,n[2]=n[2]+n[0]|0,n[3]=n[3]+n[0]|0}(e,r);var o=new Uint8Array(r.buffer);return Array.from(o).map((function(e){return e.toString(16).padStart(2,"0")})).join("")}function le(e,n){return new Promise((function(t){setTimeout((function(){return t(n)}),e)}))}function de(e,n,t){return Promise.all(e.map((function(e){return Promise.race([e,le(n,t)])})))}function he(){return ee(this,void 0,void 0,(function(){var e,n,t,r,o;return ne(this,(function(i){switch(i.label){case 0:return i.trys.push([0,2,,3]),e=ae(),n=Object.keys(e),[4,de(Object.values(e),(te==null?void 0:te.timeout)||1e3,oe)];case 1:return t=i.sent(),r=t.filter((function(e){return e!==void 0})),o={},r.forEach((function(e,t){o[n[t]]=e})),[2,ve(o,te.exclude||[])];case 2:throw i.sent();case 3:return[2]}}))}))}function ve(e,n){var t={},r=function(r){if(e.hasOwnProperty(r)){var o=e[r];if(typeof o!="object"||Array.isArray(o))n.includes(r)||(t[r]=o);else{var i=ve(o,n.map((function(e){return e.startsWith(r+".")?e.slice(r.length+1):e})));Object.keys(i).length>0&&(t[r]=i)}}};for(var o in e)r(o);return t}function me(e){return ee(this,void 0,void 0,(function(){var e,n;return ne(this,(function(t){switch(t.label){case 0:return t.trys.push([0,2,,3]),[4,he()];case 1:return e=t.sent(),n=fe(JSON.stringify(e)),[2,n.toString()];case 2:throw t.sent();case 3:return[2]}}))}))}function pe(e){for(var n=0,t=0;t<e.length;++t)n+=Math.abs(e[t]);return n}function we(e,n,t){for(var r=[],o=0;o<e[0].data.length;o++){for(var i=[],a=0;a<e.length;a++)i.push(e[a].data[o]);r.push(ye(i))}var s=new Uint8ClampedArray(r);return new ImageData(s,n,t)}function ye(e){if(e.length===0)return 0;for(var n={},t=0,r=e;t<r.length;t++)n[i=r[t]]=(n[i]||0)+1;var o=e[0];for(var i in n)n[i]>n[o]&&(o=parseInt(i,10));return o}function ge(){if(typeof navigator>"u")return{name:"unknown",version:"unknown"};for(var e=navigator.userAgent,n={Edg:"Edge",OPR:"Opera"},t=0,r=[/(?<name>Edge|Edg)\/(?<version>\d+(?:\.\d+)?)/,/(?<name>(?:Chrome|Chromium|OPR|Opera|Vivaldi|Brave))\/(?<version>\d+(?:\.\d+)?)/,/(?<name>(?:Firefox|Waterfox|Iceweasel|IceCat))\/(?<version>\d+(?:\.\d+)?)/,/(?<name>Safari)\/(?<version>\d+(?:\.\d+)?)/,/(?<name>MSIE|Trident|IEMobile).+?(?<version>\d+(?:\.\d+)?)/,/(?<name>[A-Za-z]+)\/(?<version>\d+(?:\.\d+)?)/,/(?<name>SamsungBrowser)\/(?<version>\d+(?:\.\d+)?)/];t<r.length;t++){var o=r[t],i=e.match(o);if(i&&i.groups)return{name:n[i.groups.name]||i.groups.name,version:i.groups.version}}return{name:"unknown",version:"unknown"}}ie("audio",(function(){return ee(this,void 0,void 0,(function(){return ne(this,(function(e){return[2,new Promise((function(e,n){try{var t=new(window.OfflineAudioContext||window.webkitOfflineAudioContext)(1,5e3,44100),r=t.createBufferSource(),o=t.createOscillator();o.frequency.value=1e3;var i,a=t.createDynamicsCompressor();a.threshold.value=-50,a.knee.value=40,a.ratio.value=12,a.attack.value=0,a.release.value=.2,o.connect(a),a.connect(t.destination),o.start(),t.oncomplete=function(n){i=n.renderedBuffer.getChannelData(0),e({sampleHash:pe(i),oscillator:o.type,maxChannels:t.destination.maxChannelCount,channelCountMode:r.channelCountMode})},t.startRendering()}catch(e){console.error("Error creating audio fingerprint:",e),n(e)}}))]}))}))}));var be=ge().name!=="SamsungBrowser"?1:3,Se=280,Me=20;ge().name!="Firefox"&&ie("canvas",(function(){return document.createElement("canvas").getContext("2d"),new Promise((function(e){var n=Array.from({length:be},(function(){return function(){var e=document.createElement("canvas"),n=e.getContext("2d");if(!n)return new ImageData(1,1);e.width=Se,e.height=Me;var t=n.createLinearGradient(0,0,e.width,e.height);t.addColorStop(0,"red"),t.addColorStop(.16666666666666666,"orange"),t.addColorStop(.3333333333333333,"yellow"),t.addColorStop(.5,"green"),t.addColorStop(.6666666666666666,"blue"),t.addColorStop(.8333333333333334,"indigo"),t.addColorStop(1,"violet"),n.fillStyle=t,n.fillRect(0,0,e.width,e.height);var r="Random Text WMwmil10Oo";n.font="23.123px Arial",n.fillStyle="black",n.fillText(r,-5,15),n.fillStyle="rgba(0, 0, 255, 0.5)",n.fillText(r,-3.3,17.7),n.beginPath(),n.moveTo(0,0),n.lineTo(2*e.width/7,e.height),n.strokeStyle="white",n.lineWidth=2,n.stroke();var o=n.getImageData(0,0,e.width,e.height);return o}()}));e({commonImageDataHash:fe(we(n,Se,Me).data.toString()).toString()})}))}));var Pe,Re=["Arial","Arial Black","Arial Narrow","Arial Rounded MT","Arimo","Archivo","Barlow","Bebas Neue","Bitter","Bookman","Calibri","Cabin","Candara","Century","Century Gothic","Comic Sans MS","Constantia","Courier","Courier New","Crimson Text","DM Mono","DM Sans","DM Serif Display","DM Serif Text","Dosis","Droid Sans","Exo","Fira Code","Fira Sans","Franklin Gothic Medium","Garamond","Geneva","Georgia","Gill Sans","Helvetica","Impact","Inconsolata","Indie Flower","Inter","Josefin Sans","Karla","Lato","Lexend","Lucida Bright","Lucida Console","Lucida Sans Unicode","Manrope","Merriweather","Merriweather Sans","Montserrat","Myriad","Noto Sans","Nunito","Nunito Sans","Open Sans","Optima","Orbitron","Oswald","Pacifico","Palatino","Perpetua","PT Sans","PT Serif","Poppins","Prompt","Public Sans","Quicksand","Rajdhani","Recursive","Roboto","Roboto Condensed","Rockwell","Rubik","Segoe Print","Segoe Script","Segoe UI","Sora","Source Sans Pro","Space Mono","Tahoma","Taviraj","Times","Times New Roman","Titillium Web","Trebuchet MS","Ubuntu","Varela Round","Verdana","Work Sans"],xe=["monospace","sans-serif","serif"];function Fe(e,n){if(!e)throw new Error("Canvas context not supported");return e.font="72px ".concat(n),e.measureText("WwMmLli0Oo").width}function Ie(){var e,n=document.createElement("canvas"),t=(e=n.getContext("webgl"))!==null&&e!==void 0?e:n.getContext("experimental-webgl");if(t&&"getParameter"in t)try{var r=(t.getParameter(t.VENDOR)||"").toString(),o=(t.getParameter(t.RENDERER)||"").toString(),i={vendor:r,renderer:o,version:(t.getParameter(t.VERSION)||"").toString(),shadingLanguageVersion:(t.getParameter(t.SHADING_LANGUAGE_VERSION)||"").toString()};if(!o.length||!r.length){var a=t.getExtension("WEBGL_debug_renderer_info");if(a){var s=(t.getParameter(a.UNMASKED_VENDOR_WEBGL)||"").toString(),c=(t.getParameter(a.UNMASKED_RENDERER_WEBGL)||"").toString();s&&(i.vendorUnmasked=s),c&&(i.rendererUnmasked=c)}}return i}catch{}return"undefined"}function Te(){var e=new Float32Array(1),n=new Uint8Array(e.buffer);return e[0]=1/0,e[0]=e[0]-e[0],n[3]}function je(e,n){var t={};return n.forEach((function(n){var r=function(e){if(e.length===0)return null;var n={};e.forEach((function(e){var t=String(e);n[t]=(n[t]||0)+1}));var t=e[0],r=1;return Object.keys(n).forEach((function(e){n[e]>r&&(t=e,r=n[e])})),t}(e.map((function(e){return n in e?e[n]:void 0})).filter((function(e){return e!==void 0})));r&&(t[n]=r)})),t}function ke(){var e=[],n={"prefers-contrast":["high","more","low","less","forced","no-preference"],"any-hover":["hover","none"],"any-pointer":["none","coarse","fine"],pointer:["none","coarse","fine"],hover:["hover","none"],update:["fast","slow"],"inverted-colors":["inverted","none"],"prefers-reduced-motion":["reduce","no-preference"],"prefers-reduced-transparency":["reduce","no-preference"],scripting:["none","initial-only","enabled"],"forced-colors":["active","none"]};return Object.keys(n).forEach((function(t){n[t].forEach((function(n){matchMedia("(".concat(t,": ").concat(n,")")).matches&&e.push("".concat(t,": ").concat(n))}))})),e}function Ee(){if(window.location.protocol==="https:"&&typeof window.ApplePaySession=="function")try{for(var e=window.ApplePaySession.supportsVersion,n=15;n>0;n--)if(e(n))return n}catch{return 0}return 0}ge().name!="Firefox"&&ie("fonts",(function(){var e=this;return new Promise((function(n,t){try{(function(e){var n;ee(this,void 0,void 0,(function(){var t,r,o;return ne(this,(function(i){switch(i.label){case 0:return document.body?[3,2]:[4,(a=50,new Promise((function(e){return setTimeout(e,a,s)})))];case 1:return i.sent(),[3,0];case 2:if((t=document.createElement("iframe")).setAttribute("frameBorder","0"),(r=t.style).setProperty("position","fixed"),r.setProperty("display","block","important"),r.setProperty("visibility","visible"),r.setProperty("border","0"),r.setProperty("opacity","0"),t.src="about:blank",document.body.appendChild(t),!(o=t.contentDocument||((n=t.contentWindow)===null||n===void 0?void 0:n.document)))throw new Error("Iframe document is not accessible");return e({iframe:o}),setTimeout((function(){document.body.removeChild(t)}),0),[2]}var a,s}))}))})((function(t){var r=t.iframe;return ee(e,void 0,void 0,(function(){var e,t,o,i;return ne(this,(function(a){return e=r.createElement("canvas"),t=e.getContext("2d"),o=xe.map((function(e){return Fe(t,e)})),i={},Re.forEach((function(e){var n=Fe(t,e);o.includes(n)||(i[e]=n)})),n(i),[2]}))}))}))}catch{t({error:"unsupported"})}}))})),ie("hardware",(function(){return new Promise((function(e,n){var t=navigator.deviceMemory!==void 0?navigator.deviceMemory:0,r=window.performance&&window.performance.memory?window.performance.memory:0;e({videocard:Ie(),architecture:Te(),deviceMemory:t.toString()||"undefined",jsHeapSizeLimit:r.jsHeapSizeLimit||0})}))})),ie("locales",(function(){return new Promise((function(e){e({languages:navigator.language,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone})}))})),ie("permissions",(function(){return ee(this,void 0,void 0,(function(){var e;return ne(this,(function(n){return Pe=(te==null?void 0:te.permissions_to_check)||["accelerometer","accessibility","accessibility-events","ambient-light-sensor","background-fetch","background-sync","bluetooth","camera","clipboard-read","clipboard-write","device-info","display-capture","gyroscope","geolocation","local-fonts","magnetometer","microphone","midi","nfc","notifications","payment-handler","persistent-storage","push","speaker","storage-access","top-level-storage-access","window-management","query"],e=Array.from({length:(te==null?void 0:te.retries)||3},(function(){return function(){return ee(this,void 0,void 0,(function(){var e,n,t,r,o;return ne(this,(function(i){switch(i.label){case 0:e={},n=0,t=Pe,i.label=1;case 1:if(!(n<t.length))return[3,6];r=t[n],i.label=2;case 2:return i.trys.push([2,4,,5]),[4,navigator.permissions.query({name:r})];case 3:return o=i.sent(),e[r]=o.state.toString(),[3,5];case 4:return i.sent(),[3,5];case 5:return n++,[3,1];case 6:return[2,e]}}))}))}()})),[2,Promise.all(e).then((function(e){return je(e,Pe)}))]}))}))})),ie("plugins",(function(){var e=[];if(navigator.plugins)for(var n=0;n<navigator.plugins.length;n++){var t=navigator.plugins[n];e.push([t.name,t.filename,t.description].join("|"))}return new Promise((function(n){n({plugins:e})}))})),ie("screen",(function(){return new Promise((function(e){e({is_touchscreen:navigator.maxTouchPoints>0,maxTouchPoints:navigator.maxTouchPoints,colorDepth:screen.colorDepth,mediaMatches:ke()})}))})),ie("system",(function(){return new Promise((function(e){var n=ge();e({platform:window.navigator.platform,cookieEnabled:window.navigator.cookieEnabled,productSub:navigator.productSub,product:navigator.product,useragent:navigator.userAgent,hardwareConcurrency:navigator.hardwareConcurrency,browser:{name:n.name,version:n.version},applePayVersion:Ee()})}))}));var Ce,Oe=ge().name!=="SamsungBrowser"?1:3,Ae=null;ie("webgl",(function(){return ee(this,void 0,void 0,(function(){var e;return ne(this,(function(n){typeof document<"u"&&((Ce=document.createElement("canvas")).width=200,Ce.height=100,Ae=Ce.getContext("webgl"));try{if(!Ae)throw new Error("WebGL not supported");return e=Array.from({length:Oe},(function(){return function(){try{if(!Ae)throw new Error("WebGL not supported");var e=`\n attribute vec2 position;\n void main() {\n gl_Position = vec4(position, 0.0, 1.0);\n }\n `,n=`\n precision mediump float;\n void main() {\n gl_FragColor = vec4(0.812, 0.195, 0.553, 0.921); // Set line color\n }\n `,t=Ae.createShader(Ae.VERTEX_SHADER),r=Ae.createShader(Ae.FRAGMENT_SHADER);if(!t||!r)throw new Error("Failed to create shaders");if(Ae.shaderSource(t,e),Ae.shaderSource(r,n),Ae.compileShader(t),!Ae.getShaderParameter(t,Ae.COMPILE_STATUS))throw new Error("Vertex shader compilation failed: "+Ae.getShaderInfoLog(t));if(Ae.compileShader(r),!Ae.getShaderParameter(r,Ae.COMPILE_STATUS))throw new Error("Fragment shader compilation failed: "+Ae.getShaderInfoLog(r));var o=Ae.createProgram();if(!o)throw new Error("Failed to create shader program");if(Ae.attachShader(o,t),Ae.attachShader(o,r),Ae.linkProgram(o),!Ae.getProgramParameter(o,Ae.LINK_STATUS))throw new Error("Shader program linking failed: "+Ae.getProgramInfoLog(o));Ae.useProgram(o);for(var i=137,a=new Float32Array(4*i),s=2*Math.PI/i,c=0;c<i;c++){var u=c*s;a[4*c]=0,a[4*c+1]=0,a[4*c+2]=Math.cos(u)*(Ce.width/2),a[4*c+3]=Math.sin(u)*(Ce.height/2)}var f=Ae.createBuffer();Ae.bindBuffer(Ae.ARRAY_BUFFER,f),Ae.bufferData(Ae.ARRAY_BUFFER,a,Ae.STATIC_DRAW);var l=Ae.getAttribLocation(o,"position");Ae.enableVertexAttribArray(l),Ae.vertexAttribPointer(l,2,Ae.FLOAT,!1,0,0),Ae.viewport(0,0,Ce.width,Ce.height),Ae.clearColor(0,0,0,1),Ae.clear(Ae.COLOR_BUFFER_BIT),Ae.drawArrays(Ae.LINES,0,2*i);var d=new Uint8ClampedArray(Ce.width*Ce.height*4);return Ae.readPixels(0,0,Ce.width,Ce.height,Ae.RGBA,Ae.UNSIGNED_BYTE,d),new ImageData(d,Ce.width,Ce.height)}catch{return new ImageData(1,1)}finally{Ae&&(Ae.bindBuffer(Ae.ARRAY_BUFFER,null),Ae.useProgram(null),Ae.viewport(0,0,Ae.drawingBufferWidth,Ae.drawingBufferHeight),Ae.clearColor(0,0,0,0))}}()})),[2,{commonImageHash:fe(we(e,Ce.width,Ce.height).data.toString()).toString()}]}catch{return[2,{webgl:"unsupported"}]}return[2]}))}))}));var _e=function(e,n,t,r){for(var o=(t-n)/r,i=0,a=0;a<r;a++)i+=e(n+(a+.5)*o);return i*o};ie("math",(function(){return ee(void 0,void 0,void 0,(function(){return ne(this,(function(e){return[2,{acos:Math.acos(.5),asin:_e(Math.asin,-1,1,97),atan:_e(Math.atan,-1,1,97),cos:_e(Math.cos,0,Math.PI,97),cosh:Math.cosh(9/7),e:Math.E,largeCos:Math.cos(1e20),largeSin:Math.sin(1e20),largeTan:Math.tan(1e20),log:Math.log(1e3),pi:Math.PI,sin:_e(Math.sin,-Math.PI,Math.PI,97),sinh:_e(Math.sinh,-9/7,7/9,97),sqrt:Math.sqrt(2),tan:_e(Math.tan,0,2*Math.PI,97),tanh:_e(Math.tanh,-9/7,7/9,97)}]}))}))}));const $e="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let Ue=(e=21)=>{let n="",t=crypto.getRandomValues(new Uint8Array(e|=0));for(;e--;)n+=$e[t[e]&63];return n};class Le{constructor(e){Q(this,"config");this.config=e}async getAdsForSearchParams(e){return[]}}class Ne extends Le{async getAdsForSearchParams(e){if(!this.config.admSub)return console.error("No admSub specified in config."),[];const n=`https://demofeed.is.ampfeed.com/is?${new URLSearchParams({partner:"demofeed",sub1:this.config.admSub,qt:e.searchTerm,v:"2.0",rfr:"searchcraft.io","results-ta":`${this.config.admTextAdQuantity||0}`,"results-pa":`${this.config.admProductAdQuantity||0}`}).toString()}`,t=await(await fetch(n,{method:"GET"})).json();return(new Array).concat(t.product_ads.map((e=>({adId:Ue(),type:"adm-product-ad",admAd:e})))).concat(t.text_ads.map((e=>({adId:Ue(),type:"adm-text-ad",admAd:e}))))}}class Ve extends Le{async getAdsForSearchParams(e){return[]}}const qe=500;class Be{constructor(e,n,t){Q(this,"measureRequestTimeout");Q(this,"measureRequestsBatched",[]);Q(this,"config");Q(this,"sdkInfo");Q(this,"userId");Q(this,"sessionId");Q(this,"sendMeasureEvent",((e,n={},t={})=>{const r={event_name:e,properties:{searchcraft_index_names:this.config.index,session_id:this.sessionId,...n},user:{...this.measureRequestUser,...t}};this.measureRequestsBatched.push(r),clearTimeout(this.measureRequestTimeout),this.measureRequestTimeout=setTimeout((async()=>{const e=JSON.stringify({items:this.measureRequestsBatched}),n=`${this.baseMeasureUrl}/batch`;try{const t=await fetch(n,{method:"POST",headers:{"Content-Type":"application/json",Authorization:this.config.readKey,"X-Sc-User-Id":this.userId},body:e,keepalive:!0});if(!t.ok)throw new Error(`Failed to send request: ${t.status} ${t.statusText}`);this.measureRequestsBatched=[];return}catch(e){throw console.error("Error sending MeasureRequest:",e),e}}),qe)}));this.config=e,this.sdkInfo=n,this.userId=t,this.sessionId=Ue(),this.sendMeasureEvent("sdk_initialized")}get baseMeasureUrl(){return`${this.config.endpointURL}/measure`}get measureRequestUser(){return{user_id:this.userId,locale:navigator.language||"en-US",os:navigator.userAgent.includes("Windows")?"Windows":navigator.userAgent.includes("Mac")?"Mac":navigator.userAgent.includes("Linux")?"Linux":"Unknown",platform:navigator.platform||"Unknown",sdk_name:this.sdkInfo.sdkName,sdk_version:this.sdkInfo.sdkVersion,user_agent:navigator.userAgent||"Unknown"}}}function De(e){const n=[];let t="should";return e.facetPathsForIndexFields&&Object.keys(e.facetPathsForIndexFields).forEach((r=>{var o;const i=(o=e.facetPathsForIndexFields)==null?void 0:o[r];i&&(t="must",n.push({occur:t,exact:{ctx:i.value}}))})),e.rangeValueForIndexFields&&Object.keys(e.rangeValueForIndexFields).forEach((r=>{var o;const i=(o=e.rangeValueForIndexFields)==null?void 0:o[r];i&&(t="must",n.push({occur:t,exact:{ctx:i.value}}))})),e.sort==="desc"?e.order_by="date_published":e.order_by="",n.push({occur:t,[e.mode]:{ctx:e.searchTerm}}),n}const ze=e=>e.endsWith("/")?e.slice(0,-1):e,Ge=e=>{let n="";if(n=e.trim(),n=n.replace(/[‘’“”]/g,(e=>({"‘":"'","’":"'","“":'"',"”":'"'}[e]||e))),(n.match(/"/g)||[]).length%2!==0)throw new Error("The search term contains an uneven number of quote characters.");return n};class We{constructor(e,n,t){Q(this,"measureClient");Q(this,"config");Q(this,"userId");Q(this,"getSearchResponse",(async e=>{var n,t;const r=Ge(e.searchTerm);(n=this.measureClient)==null||n.sendMeasureEvent("search_requested",{search_term:r});try{const n={query:De(e),offset:e.offset||0,limit:e.limit||this.config.searchResultsPerPage||20};e.order_by&&(n.order_by=e.order_by,n.sort=e.sort==="desc"||e.sort==="asc"?e.sort:"asc");const o={method:"POST",headers:{Authorization:this.config.readKey,"Content-Type":"application/json","X-Sc-User-Id":this.userId},body:JSON.stringify(n)},i=await fetch(this.baseSearchUrl,o);if(!i.ok)throw new Error(`Error: ${i.statusText} (Status: ${i.status})`);const a=await i.json();return(t=this.measureClient)==null||t.sendMeasureEvent("search_response_received",{search_term:r,number_of_documents:a.data.count}),a}catch(e){throw console.error("Error parsing response:",e),e}}));this.measureClient=t,this.config=e,this.userId=n}get baseSearchUrl(){return`${this.config.endpointURL}/index/${this.config.index.join(",")}/search`}}class He{constructor(e,n){Q(this,"config");Q(this,"measureClient");Q(this,"searchClient");Q(this,"adClient");Q(this,"userId");Q(this,"requestTimeout");Q(this,"getItems",((e,n,t)=>{const r=async()=>{(async()=>{var t,r;const o=await((t=this==null?void 0:this.searchClient)==null?void 0:t.getSearchResponse(e));if(!o)throw new Error("Search client was not initialized.");const i=(r=o.data.hits||[])==null?void 0:r.map((e=>e.doc)).filter((e=>!!e)).map((e=>({type:"SearchDocument",id:Ue(),document:e})));n(o,i)})(),(async()=>{if(this.adClient){const n=await this.adClient.getAdsForSearchParams(e);t(n)}})()};clearTimeout(this.requestTimeout),this.config.searchDebounceDelay?this.requestTimeout=setTimeout(r,this.config.searchDebounceDelay):r()}));if(!e.endpointURL||!e.index||!e.readKey)throw new Error("Endpoint URL, Index value(s), and Read Key must be provided");this.config={...e,endpointURL:ze(e.endpointURL)},this.userId="",this.initClients(this.config,n)}initClients(e,n){setTimeout((async()=>{let t=this.config.userId;switch(t||(t=await me()),this.measureClient=new Be(e,n,t),this.searchClient=new We(e,t,this.measureClient),e.adProvider){case"adMarketplace":this.adClient=new Ne(e);break;case"Nativo":this.adClient=new Ve(e);break}}),300)}}const Je={adClientResponseItems:[],core:undefined,logger:undefined,facetPathsForIndexFields:{},isPopoverVisible:false,searchTerm:"",rangeValueForIndexFields:{},searchMode:"fuzzy",searchClientResponseItems:[],searchResponseTimeTaken:undefined,searchResponseFacetPrime:undefined,searchResultsCount:0,searchResultsPerPage:20,searchResultsPage:1,sortType:"asc"};const Ke=e.create(((e,n)=>{const t={addFacetPathsForIndexField:n=>e((e=>({facetPathsForIndexFields:{...e.facetPathsForIndexFields,[n.fieldName]:n}}))),addRangeValueForIndexField:n=>e((e=>({rangeValueForIndexFields:{...e.rangeValueForIndexFields,[n.fieldName]:n}}))),getSearchcraftInstance:()=>{const{core:e}=n();return e},initialize:(n,t=false)=>{const r=n;const o=t?new Y({logLevel:Z.DEBUG}):undefined;e({core:r,logger:o,searchResultsPerPage:r.config.searchResultsPerPage||20})},removeFacetPathsForIndexField:n=>e((e=>{const t=e.facetPathsForIndexFields;delete t[n];return{facetPathsForIndexFields:{...t}}})),removeRangeValueForIndexField:n=>e((e=>{const t=e.rangeValueForIndexFields;delete t[n];return{rangeValueForIndexFields:{...t}}})),resetFacetPaths:()=>{e({facetPathsForIndexFields:{}})},search:async()=>{const t=n();t.logger?.log(Z.INFO,`Starting search with search term: "${t.searchTerm}"`);if(!t.core){throw new Error("Searchcraft instance is not initialized.")}if(!t.searchTerm.trim()){t.logger?.log(Z.INFO,"No search request was made: search term was empty.");e({searchClientResponseItems:[],searchResultsCount:0,searchResultsPage:1,searchTerm:""});return}const r=(n,r)=>{const o=n.data.facets;e((e=>({searchClientResponseItems:r,searchResponseTimeTaken:n.data.time_taken||0,searchResultsPage:n.data.count===e.searchResultsCount?e.searchResultsPage:1,searchResultsCount:n.data.count||0})));if(o){e({searchResponseFacetPrime:o})}t.logger?.log(Z.DEBUG,`Search results: ${JSON.stringify(r)}`);t.logger?.log(Z.DEBUG,`Facets from response: ${JSON.stringify(o)}`)};const o=n=>{e({adClientResponseItems:n})};t.core.getItems({searchTerm:t.searchTerm,mode:t.searchMode,sort:t.sortType,facetPathsForIndexFields:t.facetPathsForIndexFields,rangeValueForIndexFields:t.rangeValueForIndexFields,offset:t.searchResultsPerPage?t.searchResultsPerPage*(t.searchResultsPage-1):0,limit:t.searchResultsPerPage},r,o)},setPopoverVisibility:n=>{e({isPopoverVisible:n})},setSearchMode:n=>e({searchMode:n}),setSortType:n=>e({sortType:n}),setSearchTerm:n=>{e({searchTerm:n,facetPathsForIndexFields:{},...n.trim().length===0&&{searchMode:"fuzzy",sortType:"asc"}})},setSearchClientResponseItems:n=>e({searchClientResponseItems:n}),setSearchResultsPage:async n=>{e({searchResultsPage:n});await t.search()},setSearchResultsPerPage:async n=>{e({searchResultsPerPage:n});await t.search()}};const r={...Je,...t};return r}));export{He as g,Ke as u};
|
|
11
|
+
//# sourceMappingURL=p-38419178.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createStoreImpl","createState","state","listeners","Set","setState","partial","replace","nextState","Object","is","previousState","assign","forEach","listener","getState","getInitialState","initialState","subscribe","add","delete","api","createStore","REACT_ELEMENT_TYPE","Symbol","for","REACT_PORTAL_TYPE","REACT_FRAGMENT_TYPE","REACT_STRICT_MODE_TYPE","REACT_PROFILER_TYPE","REACT_CONSUMER_TYPE","REACT_CONTEXT_TYPE","REACT_FORWARD_REF_TYPE","REACT_SUSPENSE_TYPE","REACT_MEMO_TYPE","REACT_LAZY_TYPE","MAYBE_ITERATOR_SYMBOL","iterator","getIteratorFn","maybeIterable","ReactNoopUpdateQueue","isMounted","enqueueForceUpdate","enqueueReplaceState","enqueueSetState","emptyObject","Component","props","context","updater","this","refs","prototype","isReactComponent","partialState","callback","Error","forceUpdate","ComponentDummy","PureComponent","pureComponentPrototype","constructor","isPureReactComponent","isArrayImpl","Array","isArray","ReactSharedInternals","H","A","T","S","hasOwnProperty","ReactElement","type","key","self","source","owner","ref","$$typeof","cloneAndReplaceKey","oldElement","newKey","isValidElement","object","escape","escaperLookup","match","userProvidedKeyEscapeRegex","getElementKey","element","index","toString","noop$1","resolveThenable","thenable","status","value","reason","then","fulfilledValue","error","mapIntoArray","children","array","escapedPrefix","nameSoFar","invokeCallback","_init","_payload","c","push","nextNamePrefix","i","length","call","next","done","String","keys","join","mapChildren","func","result","count","child","lazyInitializer","payload","_status","ctor","_result","moduleObject","default","reportGlobalError","reportError","window","ErrorEvent","event","bubbles","cancelable","message","dispatchEvent","process","emit","console","noop","map","forEachFunc","forEachContext","apply","arguments","n","toArray","only","fn","config","propName","childArray","defaultValue","_currentValue","_currentValue2","_threadCount","Provider","Consumer","_context","childrenLength","defaultProps","current","render","compare","scope","prevTransition","currentTransition","returnValue","onStartTransitionFinish","useCacheRefresh","usable","use","action","permalink","useActionState","deps","useCallback","Context","useContext","initialValue","useDeferredValue","create","useEffect","useId","useImperativeHandle","useInsertionEffect","useLayoutEffect","useMemo","passthrough","reducer","useOptimistic","initialArg","init","useReducer","useRef","useState","getSnapshot","getServerSnapshot","useSyncExternalStore","useTransition","reactModule","require$$0","React","vanilla","require$$1","identity","arg","useStore","selector","slice","useDebugValue","createImpl","useBoundStore","react","k","exports","defineProperty","enumerable","get","L","N","t","r","configurable","writable","h","_","DEBUG","INFO","WARN","ERROR","me","logLevel","logFormatter","defaultFormatter","Date","toISOString","debug","log","info","warn","w","o","Promise","a","e","u","l","s","throw","p","y","label","sent","trys","ops","return","TypeError","pop","exclude","F","q","timeout","v","j","fromEntries","entries","filter","includes","M","Math","imul","f","Uint32Array","g","I","TextEncoder","encode","buffer","ArrayBuffer","byteLength","subarray","Uint8Array","from","padStart","G","setTimeout","W","all","race","V","values","U","startsWith","$","JSON","stringify","abs","O","data","z","Uint8ClampedArray","ImageData","parseInt","E","navigator","name","version","userAgent","Edg","OPR","groups","OfflineAudioContext","webkitOfflineAudioContext","createBufferSource","createOscillator","frequency","createDynamicsCompressor","threshold","knee","ratio","attack","release","connect","destination","start","oncomplete","renderedBuffer","getChannelData","sampleHash","oscillator","maxChannels","maxChannelCount","channelCountMode","startRendering","K","document","createElement","getContext","width","height","createLinearGradient","addColorStop","fillStyle","fillRect","font","fillText","beginPath","moveTo","lineTo","strokeStyle","lineWidth","stroke","getImageData","commonImageDataHash","C","Q","J","P","concat","measureText","Y","getParameter","VENDOR","RENDERER","vendor","renderer","VERSION","shadingLanguageVersion","SHADING_LANGUAGE_VERSION","getExtension","UNMASKED_VENDOR_WEBGL","UNMASKED_RENDERER_WEBGL","vendorUnmasked","rendererUnmasked","X","Float32Array","Z","ee","pointer","hover","update","scripting","matchMedia","matches","te","location","protocol","ApplePaySession","supportsVersion","body","setAttribute","style","setProperty","src","appendChild","contentDocument","contentWindow","iframe","removeChild","deviceMemory","performance","memory","videocard","architecture","jsHeapSizeLimit","languages","language","timezone","Intl","DateTimeFormat","resolvedOptions","timeZone","permissions_to_check","retries","permissions","query","plugins","filename","description","is_touchscreen","maxTouchPoints","colorDepth","screen","mediaMatches","platform","cookieEnabled","productSub","product","useragent","hardwareConcurrency","browser","applePayVersion","m","ne","d","createShader","VERTEX_SHADER","FRAGMENT_SHADER","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","getShaderInfoLog","createProgram","attachShader","linkProgram","getProgramParameter","LINK_STATUS","getProgramInfoLog","useProgram","PI","cos","sin","B","createBuffer","bindBuffer","ARRAY_BUFFER","bufferData","STATIC_DRAW","R","getAttribLocation","enableVertexAttribArray","vertexAttribPointer","FLOAT","viewport","clearColor","clear","COLOR_BUFFER_BIT","drawArrays","LINES","x","readPixels","RGBA","UNSIGNED_BYTE","drawingBufferWidth","drawingBufferHeight","commonImageHash","webgl","b","acos","asin","atan","cosh","largeCos","largeSin","largeTan","tan","pi","sinh","sqrt","tanh","re","crypto","getRandomValues","D","getAdsForSearchParams","oe","admSub","URLSearchParams","partner","sub1","qt","searchTerm","rfr","admTextAdQuantity","admProductAdQuantity","fetch","method","json","product_ads","adId","admAd","text_ads","ie","ae","se","event_name","properties","searchcraft_index_names","session_id","sessionId","user","measureRequestUser","measureRequestsBatched","clearTimeout","measureRequestTimeout","async","items","baseMeasureUrl","headers","Authorization","readKey","userId","keepalive","ok","statusText","sdkInfo","sendMeasureEvent","endpointURL","user_id","locale","os","sdk_name","sdkName","sdk_version","sdkVersion","user_agent","ue","facetPathsForIndexFields","occur","exact","ctx","rangeValueForIndexFields","sort","order_by","mode","ce","endsWith","de","trim","le","measureClient","search_term","offset","limit","searchResultsPerPage","baseSearchUrl","number_of_documents","ge","searchClient","getSearchResponse","hits","doc","id","adClient","requestTimeout","searchDebounceDelay","initClients","adProvider","initialSearchcraftStateValues","adClientResponseItems","core","undefined","logger","isPopoverVisible","searchMode","searchClientResponseItems","searchResponseTimeTaken","searchResponseFacetPrime","searchResultsCount","searchResultsPage","sortType","useSearchcraftStore","set","functions","addFacetPathsForIndexField","fieldName","addRangeValueForIndexField","getSearchcraftInstance","initialize","searchcraftInstance","Logger","LogLevel","removeFacetPathsForIndexField","currentPaths","removeRangeValueForIndexField","currentValues","resetFacetPaths","search","handleSearchcraftResponse","response","facetsFromResponse","facets","time_taken","handleAdResponse","getItems","setPopoverVisibility","isVisible","setSearchMode","setSortType","setSearchTerm","setSearchClientResponseItems","setSearchResultsPage","page","setSearchResultsPerPage","perPage","stateObject"],"sources":["../../node_modules/zustand/vanilla.js","../../node_modules/react/cjs/react.production.js","../../node_modules/react/index.js","../../node_modules/zustand/react.js","../../node_modules/zustand/index.js","../core-sdk/dist/index.js","src/provider/SearchcraftStore.ts"],"sourcesContent":["'use strict';\n\nconst createStoreImpl = (createState) => {\n let state;\n const listeners = /* @__PURE__ */ new Set();\n const setState = (partial, replace) => {\n const nextState = typeof partial === \"function\" ? partial(state) : partial;\n if (!Object.is(nextState, state)) {\n const previousState = state;\n state = (replace != null ? replace : typeof nextState !== \"object\" || nextState === null) ? nextState : Object.assign({}, state, nextState);\n listeners.forEach((listener) => listener(state, previousState));\n }\n };\n const getState = () => state;\n const getInitialState = () => initialState;\n const subscribe = (listener) => {\n listeners.add(listener);\n return () => listeners.delete(listener);\n };\n const api = { setState, getState, getInitialState, subscribe };\n const initialState = state = createState(setState, getState, api);\n return api;\n};\nconst createStore = (createState) => createState ? createStoreImpl(createState) : createStoreImpl;\n\nexports.createStore = createStore;\n","/**\n * @license React\n * react.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nfunction getIteratorFn(maybeIterable) {\n if (null === maybeIterable || \"object\" !== typeof maybeIterable) return null;\n maybeIterable =\n (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||\n maybeIterable[\"@@iterator\"];\n return \"function\" === typeof maybeIterable ? maybeIterable : null;\n}\nvar ReactNoopUpdateQueue = {\n isMounted: function () {\n return !1;\n },\n enqueueForceUpdate: function () {},\n enqueueReplaceState: function () {},\n enqueueSetState: function () {}\n },\n assign = Object.assign,\n emptyObject = {};\nfunction Component(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nComponent.prototype.isReactComponent = {};\nComponent.prototype.setState = function (partialState, callback) {\n if (\n \"object\" !== typeof partialState &&\n \"function\" !== typeof partialState &&\n null != partialState\n )\n throw Error(\n \"takes an object of state variables to update or a function which returns an object of state variables.\"\n );\n this.updater.enqueueSetState(this, partialState, callback, \"setState\");\n};\nComponent.prototype.forceUpdate = function (callback) {\n this.updater.enqueueForceUpdate(this, callback, \"forceUpdate\");\n};\nfunction ComponentDummy() {}\nComponentDummy.prototype = Component.prototype;\nfunction PureComponent(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nvar pureComponentPrototype = (PureComponent.prototype = new ComponentDummy());\npureComponentPrototype.constructor = PureComponent;\nassign(pureComponentPrototype, Component.prototype);\npureComponentPrototype.isPureReactComponent = !0;\nvar isArrayImpl = Array.isArray,\n ReactSharedInternals = { H: null, A: null, T: null, S: null },\n hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction ReactElement(type, key, self, source, owner, props) {\n self = props.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== self ? self : null,\n props: props\n };\n}\nfunction cloneAndReplaceKey(oldElement, newKey) {\n return ReactElement(\n oldElement.type,\n newKey,\n void 0,\n void 0,\n void 0,\n oldElement.props\n );\n}\nfunction isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n}\nfunction escape(key) {\n var escaperLookup = { \"=\": \"=0\", \":\": \"=2\" };\n return (\n \"$\" +\n key.replace(/[=:]/g, function (match) {\n return escaperLookup[match];\n })\n );\n}\nvar userProvidedKeyEscapeRegex = /\\/+/g;\nfunction getElementKey(element, index) {\n return \"object\" === typeof element && null !== element && null != element.key\n ? escape(\"\" + element.key)\n : index.toString(36);\n}\nfunction noop$1() {}\nfunction resolveThenable(thenable) {\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n default:\n switch (\n (\"string\" === typeof thenable.status\n ? thenable.then(noop$1, noop$1)\n : ((thenable.status = \"pending\"),\n thenable.then(\n function (fulfilledValue) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"fulfilled\"),\n (thenable.value = fulfilledValue));\n },\n function (error) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"rejected\"), (thenable.reason = error));\n }\n )),\n thenable.status)\n ) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n }\n }\n throw thenable;\n}\nfunction mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) {\n var type = typeof children;\n if (\"undefined\" === type || \"boolean\" === type) children = null;\n var invokeCallback = !1;\n if (null === children) invokeCallback = !0;\n else\n switch (type) {\n case \"bigint\":\n case \"string\":\n case \"number\":\n invokeCallback = !0;\n break;\n case \"object\":\n switch (children.$$typeof) {\n case REACT_ELEMENT_TYPE:\n case REACT_PORTAL_TYPE:\n invokeCallback = !0;\n break;\n case REACT_LAZY_TYPE:\n return (\n (invokeCallback = children._init),\n mapIntoArray(\n invokeCallback(children._payload),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n )\n );\n }\n }\n if (invokeCallback)\n return (\n (callback = callback(children)),\n (invokeCallback =\n \"\" === nameSoFar ? \".\" + getElementKey(children, 0) : nameSoFar),\n isArrayImpl(callback)\n ? ((escapedPrefix = \"\"),\n null != invokeCallback &&\n (escapedPrefix =\n invokeCallback.replace(userProvidedKeyEscapeRegex, \"$&/\") + \"/\"),\n mapIntoArray(callback, array, escapedPrefix, \"\", function (c) {\n return c;\n }))\n : null != callback &&\n (isValidElement(callback) &&\n (callback = cloneAndReplaceKey(\n callback,\n escapedPrefix +\n (null == callback.key ||\n (children && children.key === callback.key)\n ? \"\"\n : (\"\" + callback.key).replace(\n userProvidedKeyEscapeRegex,\n \"$&/\"\n ) + \"/\") +\n invokeCallback\n )),\n array.push(callback)),\n 1\n );\n invokeCallback = 0;\n var nextNamePrefix = \"\" === nameSoFar ? \".\" : nameSoFar + \":\";\n if (isArrayImpl(children))\n for (var i = 0; i < children.length; i++)\n (nameSoFar = children[i]),\n (type = nextNamePrefix + getElementKey(nameSoFar, i)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (((i = getIteratorFn(children)), \"function\" === typeof i))\n for (\n children = i.call(children), i = 0;\n !(nameSoFar = children.next()).done;\n\n )\n (nameSoFar = nameSoFar.value),\n (type = nextNamePrefix + getElementKey(nameSoFar, i++)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (\"object\" === type) {\n if (\"function\" === typeof children.then)\n return mapIntoArray(\n resolveThenable(children),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n );\n array = String(children);\n throw Error(\n \"Objects are not valid as a React child (found: \" +\n (\"[object Object]\" === array\n ? \"object with keys {\" + Object.keys(children).join(\", \") + \"}\"\n : array) +\n \"). If you meant to render a collection of children, use an array instead.\"\n );\n }\n return invokeCallback;\n}\nfunction mapChildren(children, func, context) {\n if (null == children) return children;\n var result = [],\n count = 0;\n mapIntoArray(children, result, \"\", \"\", function (child) {\n return func.call(context, child, count++);\n });\n return result;\n}\nfunction lazyInitializer(payload) {\n if (-1 === payload._status) {\n var ctor = payload._result;\n ctor = ctor();\n ctor.then(\n function (moduleObject) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 1), (payload._result = moduleObject);\n },\n function (error) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 2), (payload._result = error);\n }\n );\n -1 === payload._status && ((payload._status = 0), (payload._result = ctor));\n }\n if (1 === payload._status) return payload._result.default;\n throw payload._result;\n}\nvar reportGlobalError =\n \"function\" === typeof reportError\n ? reportError\n : function (error) {\n if (\n \"object\" === typeof window &&\n \"function\" === typeof window.ErrorEvent\n ) {\n var event = new window.ErrorEvent(\"error\", {\n bubbles: !0,\n cancelable: !0,\n message:\n \"object\" === typeof error &&\n null !== error &&\n \"string\" === typeof error.message\n ? String(error.message)\n : String(error),\n error: error\n });\n if (!window.dispatchEvent(event)) return;\n } else if (\n \"object\" === typeof process &&\n \"function\" === typeof process.emit\n ) {\n process.emit(\"uncaughtException\", error);\n return;\n }\n console.error(error);\n };\nfunction noop() {}\nexports.Children = {\n map: mapChildren,\n forEach: function (children, forEachFunc, forEachContext) {\n mapChildren(\n children,\n function () {\n forEachFunc.apply(this, arguments);\n },\n forEachContext\n );\n },\n count: function (children) {\n var n = 0;\n mapChildren(children, function () {\n n++;\n });\n return n;\n },\n toArray: function (children) {\n return (\n mapChildren(children, function (child) {\n return child;\n }) || []\n );\n },\n only: function (children) {\n if (!isValidElement(children))\n throw Error(\n \"React.Children.only expected to receive a single React element child.\"\n );\n return children;\n }\n};\nexports.Component = Component;\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.Profiler = REACT_PROFILER_TYPE;\nexports.PureComponent = PureComponent;\nexports.StrictMode = REACT_STRICT_MODE_TYPE;\nexports.Suspense = REACT_SUSPENSE_TYPE;\nexports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE =\n ReactSharedInternals;\nexports.act = function () {\n throw Error(\"act(...) is not supported in production builds of React.\");\n};\nexports.cache = function (fn) {\n return function () {\n return fn.apply(null, arguments);\n };\n};\nexports.cloneElement = function (element, config, children) {\n if (null === element || void 0 === element)\n throw Error(\n \"The argument must be a React element, but you passed \" + element + \".\"\n );\n var props = assign({}, element.props),\n key = element.key,\n owner = void 0;\n if (null != config)\n for (propName in (void 0 !== config.ref && (owner = void 0),\n void 0 !== config.key && (key = \"\" + config.key),\n config))\n !hasOwnProperty.call(config, propName) ||\n \"key\" === propName ||\n \"__self\" === propName ||\n \"__source\" === propName ||\n (\"ref\" === propName && void 0 === config.ref) ||\n (props[propName] = config[propName]);\n var propName = arguments.length - 2;\n if (1 === propName) props.children = children;\n else if (1 < propName) {\n for (var childArray = Array(propName), i = 0; i < propName; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n return ReactElement(element.type, key, void 0, void 0, owner, props);\n};\nexports.createContext = function (defaultValue) {\n defaultValue = {\n $$typeof: REACT_CONTEXT_TYPE,\n _currentValue: defaultValue,\n _currentValue2: defaultValue,\n _threadCount: 0,\n Provider: null,\n Consumer: null\n };\n defaultValue.Provider = defaultValue;\n defaultValue.Consumer = {\n $$typeof: REACT_CONSUMER_TYPE,\n _context: defaultValue\n };\n return defaultValue;\n};\nexports.createElement = function (type, config, children) {\n var propName,\n props = {},\n key = null;\n if (null != config)\n for (propName in (void 0 !== config.key && (key = \"\" + config.key), config))\n hasOwnProperty.call(config, propName) &&\n \"key\" !== propName &&\n \"__self\" !== propName &&\n \"__source\" !== propName &&\n (props[propName] = config[propName]);\n var childrenLength = arguments.length - 2;\n if (1 === childrenLength) props.children = children;\n else if (1 < childrenLength) {\n for (var childArray = Array(childrenLength), i = 0; i < childrenLength; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n if (type && type.defaultProps)\n for (propName in ((childrenLength = type.defaultProps), childrenLength))\n void 0 === props[propName] &&\n (props[propName] = childrenLength[propName]);\n return ReactElement(type, key, void 0, void 0, null, props);\n};\nexports.createRef = function () {\n return { current: null };\n};\nexports.forwardRef = function (render) {\n return { $$typeof: REACT_FORWARD_REF_TYPE, render: render };\n};\nexports.isValidElement = isValidElement;\nexports.lazy = function (ctor) {\n return {\n $$typeof: REACT_LAZY_TYPE,\n _payload: { _status: -1, _result: ctor },\n _init: lazyInitializer\n };\n};\nexports.memo = function (type, compare) {\n return {\n $$typeof: REACT_MEMO_TYPE,\n type: type,\n compare: void 0 === compare ? null : compare\n };\n};\nexports.startTransition = function (scope) {\n var prevTransition = ReactSharedInternals.T,\n currentTransition = {};\n ReactSharedInternals.T = currentTransition;\n try {\n var returnValue = scope(),\n onStartTransitionFinish = ReactSharedInternals.S;\n null !== onStartTransitionFinish &&\n onStartTransitionFinish(currentTransition, returnValue);\n \"object\" === typeof returnValue &&\n null !== returnValue &&\n \"function\" === typeof returnValue.then &&\n returnValue.then(noop, reportGlobalError);\n } catch (error) {\n reportGlobalError(error);\n } finally {\n ReactSharedInternals.T = prevTransition;\n }\n};\nexports.unstable_useCacheRefresh = function () {\n return ReactSharedInternals.H.useCacheRefresh();\n};\nexports.use = function (usable) {\n return ReactSharedInternals.H.use(usable);\n};\nexports.useActionState = function (action, initialState, permalink) {\n return ReactSharedInternals.H.useActionState(action, initialState, permalink);\n};\nexports.useCallback = function (callback, deps) {\n return ReactSharedInternals.H.useCallback(callback, deps);\n};\nexports.useContext = function (Context) {\n return ReactSharedInternals.H.useContext(Context);\n};\nexports.useDebugValue = function () {};\nexports.useDeferredValue = function (value, initialValue) {\n return ReactSharedInternals.H.useDeferredValue(value, initialValue);\n};\nexports.useEffect = function (create, deps) {\n return ReactSharedInternals.H.useEffect(create, deps);\n};\nexports.useId = function () {\n return ReactSharedInternals.H.useId();\n};\nexports.useImperativeHandle = function (ref, create, deps) {\n return ReactSharedInternals.H.useImperativeHandle(ref, create, deps);\n};\nexports.useInsertionEffect = function (create, deps) {\n return ReactSharedInternals.H.useInsertionEffect(create, deps);\n};\nexports.useLayoutEffect = function (create, deps) {\n return ReactSharedInternals.H.useLayoutEffect(create, deps);\n};\nexports.useMemo = function (create, deps) {\n return ReactSharedInternals.H.useMemo(create, deps);\n};\nexports.useOptimistic = function (passthrough, reducer) {\n return ReactSharedInternals.H.useOptimistic(passthrough, reducer);\n};\nexports.useReducer = function (reducer, initialArg, init) {\n return ReactSharedInternals.H.useReducer(reducer, initialArg, init);\n};\nexports.useRef = function (initialValue) {\n return ReactSharedInternals.H.useRef(initialValue);\n};\nexports.useState = function (initialState) {\n return ReactSharedInternals.H.useState(initialState);\n};\nexports.useSyncExternalStore = function (\n subscribe,\n getSnapshot,\n getServerSnapshot\n) {\n return ReactSharedInternals.H.useSyncExternalStore(\n subscribe,\n getSnapshot,\n getServerSnapshot\n );\n};\nexports.useTransition = function () {\n return ReactSharedInternals.H.useTransition();\n};\nexports.version = \"19.0.0\";\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n","'use strict';\n\nvar React = require('react');\nvar vanilla = require('zustand/vanilla');\n\nconst identity = (arg) => arg;\nfunction useStore(api, selector = identity) {\n const slice = React.useSyncExternalStore(\n api.subscribe,\n () => selector(api.getState()),\n () => selector(api.getInitialState())\n );\n React.useDebugValue(slice);\n return slice;\n}\nconst createImpl = (createState) => {\n const api = vanilla.createStore(createState);\n const useBoundStore = (selector) => useStore(api, selector);\n Object.assign(useBoundStore, api);\n return useBoundStore;\n};\nconst create = (createState) => createState ? createImpl(createState) : createImpl;\n\nexports.create = create;\nexports.useStore = useStore;\n","'use strict';\n\nvar vanilla = require('zustand/vanilla');\nvar react = require('zustand/react');\n\n\n\nObject.keys(vanilla).forEach(function (k) {\n\tif (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {\n\t\tenumerable: true,\n\t\tget: function () { return vanilla[k]; }\n\t});\n});\nObject.keys(react).forEach(function (k) {\n\tif (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {\n\t\tenumerable: true,\n\t\tget: function () { return react[k]; }\n\t});\n});\n","var L = Object.defineProperty;\nvar N = (n, t, r) => t in n ? L(n, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : n[t] = r;\nvar h = (n, t, r) => N(n, typeof t != \"symbol\" ? t + \"\" : t, r);\nvar _ = /* @__PURE__ */ ((n) => (n[n.DEBUG = 0] = \"DEBUG\", n[n.INFO = 1] = \"INFO\", n[n.WARN = 2] = \"WARN\", n[n.ERROR = 3] = \"ERROR\", n))(_ || {});\nclass me {\n constructor(t) {\n h(this, \"logLevel\");\n h(this, \"logFormatter\");\n this.logLevel = t.logLevel || 1, this.logFormatter = t.logFormatter || this.defaultFormatter;\n }\n defaultFormatter(t, r) {\n return `[${_[t]}] ${(/* @__PURE__ */ new Date()).toISOString()}: ${r}`;\n }\n debug(t) {\n this.logLevel <= 0 && console.log(this.logFormatter(0, t));\n }\n info(t) {\n this.logLevel <= 1 && console.info(this.logFormatter(1, t));\n }\n warn(t) {\n this.logLevel <= 2 && console.warn(this.logFormatter(2, t));\n }\n error(t) {\n this.logLevel <= 3 && console.error(this.logFormatter(3, t));\n }\n log(t, r) {\n switch (t) {\n case 0:\n this.debug(r);\n break;\n case 1:\n this.info(r);\n break;\n case 2:\n this.warn(r);\n break;\n case 3:\n this.error(r);\n break;\n }\n }\n}\nfunction w(n, t, r, o) {\n return new (r || (r = Promise))(function(a, i) {\n function e(u) {\n try {\n l(o.next(u));\n } catch (s) {\n i(s);\n }\n }\n function c(u) {\n try {\n l(o.throw(u));\n } catch (s) {\n i(s);\n }\n }\n function l(u) {\n var s;\n u.done ? a(u.value) : (s = u.value, s instanceof r ? s : new r(function(p) {\n p(s);\n })).then(e, c);\n }\n l((o = o.apply(n, [])).next());\n });\n}\nfunction y(n, t) {\n var r, o, a, i, e = { label: 0, sent: function() {\n if (1 & a[0]) throw a[1];\n return a[1];\n }, trys: [], ops: [] };\n return i = { next: c(0), throw: c(1), return: c(2) }, typeof Symbol == \"function\" && (i[Symbol.iterator] = function() {\n return this;\n }), i;\n function c(l) {\n return function(u) {\n return function(s) {\n if (r) throw new TypeError(\"Generator is already executing.\");\n for (; i && (i = 0, s[0] && (e = 0)), e; ) try {\n if (r = 1, o && (a = 2 & s[0] ? o.return : s[0] ? o.throw || ((a = o.return) && a.call(o), 0) : o.next) && !(a = a.call(o, s[1])).done) return a;\n switch (o = 0, a && (s = [2 & s[0], a.value]), s[0]) {\n case 0:\n case 1:\n a = s;\n break;\n case 4:\n return e.label++, { value: s[1], done: !1 };\n case 5:\n e.label++, o = s[1], s = [0];\n continue;\n case 7:\n s = e.ops.pop(), e.trys.pop();\n continue;\n default:\n if (a = e.trys, !((a = a.length > 0 && a[a.length - 1]) || s[0] !== 6 && s[0] !== 2)) {\n e = 0;\n continue;\n }\n if (s[0] === 3 && (!a || s[1] > a[0] && s[1] < a[3])) {\n e.label = s[1];\n break;\n }\n if (s[0] === 6 && e.label < a[1]) {\n e.label = a[1], a = s;\n break;\n }\n if (a && e.label < a[2]) {\n e.label = a[2], e.ops.push(s);\n break;\n }\n a[2] && e.ops.pop(), e.trys.pop();\n continue;\n }\n s = t.call(n, e);\n } catch (p) {\n s = [6, p], o = 0;\n } finally {\n r = a = 0;\n }\n if (5 & s[0]) throw s[1];\n return { value: s[0] ? s[1] : void 0, done: !0 };\n }([l, u]);\n };\n }\n}\nvar S = { exclude: [] }, F = {}, q = { timeout: \"true\" }, v = function(n, t) {\n typeof window < \"u\" && (F[n] = t);\n}, j = function() {\n return Object.fromEntries(Object.entries(F).filter(function(n) {\n var t, r = n[0];\n return !(!((t = S == null ? void 0 : S.exclude) === null || t === void 0) && t.includes(r));\n }).map(function(n) {\n return [n[0], (0, n[1])()];\n }));\n};\nfunction M(n) {\n return n ^= n >>> 16, n = Math.imul(n, 2246822507), n ^= n >>> 13, n = Math.imul(n, 3266489909), (n ^= n >>> 16) >>> 0;\n}\nvar f = new Uint32Array([597399067, 2869860233, 951274213, 2716044179]);\nfunction g(n, t) {\n return n << t | n >>> 32 - t;\n}\nfunction I(n, t) {\n var r;\n if (t === void 0 && (t = 0), t = t ? 0 | t : 0, typeof n == \"string\" && (r = n, n = new TextEncoder().encode(r).buffer), !(n instanceof ArrayBuffer)) throw new TypeError(\"Expected key to be ArrayBuffer or string\");\n var o = new Uint32Array([t, t, t, t]);\n (function(i, e) {\n for (var c = i.byteLength / 16 | 0, l = new Uint32Array(i, 0, 4 * c), u = 0; u < c; u++) {\n var s = l.subarray(4 * u, 4 * (u + 1));\n s[0] = Math.imul(s[0], f[0]), s[0] = g(s[0], 15), s[0] = Math.imul(s[0], f[1]), e[0] = e[0] ^ s[0], e[0] = g(e[0], 19), e[0] = e[0] + e[1], e[0] = Math.imul(e[0], 5) + 1444728091, s[1] = Math.imul(s[1], f[1]), s[1] = g(s[1], 16), s[1] = Math.imul(s[1], f[2]), e[1] = e[1] ^ s[1], e[1] = g(e[1], 17), e[1] = e[1] + e[2], e[1] = Math.imul(e[1], 5) + 197830471, s[2] = Math.imul(s[2], f[2]), s[2] = g(s[2], 17), s[2] = Math.imul(s[2], f[3]), e[2] = e[2] ^ s[2], e[2] = g(e[2], 15), e[2] = e[2] + e[3], e[2] = Math.imul(e[2], 5) + 2530024501, s[3] = Math.imul(s[3], f[3]), s[3] = g(s[3], 18), s[3] = Math.imul(s[3], f[0]), e[3] = e[3] ^ s[3], e[3] = g(e[3], 13), e[3] = e[3] + e[0], e[3] = Math.imul(e[3], 5) + 850148119;\n }\n })(n, o), function(i, e) {\n var c = i.byteLength / 16 | 0, l = i.byteLength % 16, u = new Uint32Array(4), s = new Uint8Array(i, 16 * c, l);\n switch (l) {\n case 15:\n u[3] = u[3] ^ s[14] << 16;\n case 14:\n u[3] = u[3] ^ s[13] << 8;\n case 13:\n u[3] = u[3] ^ s[12] << 0, u[3] = Math.imul(u[3], f[3]), u[3] = g(u[3], 18), u[3] = Math.imul(u[3], f[0]), e[3] = e[3] ^ u[3];\n case 12:\n u[2] = u[2] ^ s[11] << 24;\n case 11:\n u[2] = u[2] ^ s[10] << 16;\n case 10:\n u[2] = u[2] ^ s[9] << 8;\n case 9:\n u[2] = u[2] ^ s[8] << 0, u[2] = Math.imul(u[2], f[2]), u[2] = g(u[2], 17), u[2] = Math.imul(u[2], f[3]), e[2] = e[2] ^ u[2];\n case 8:\n u[1] = u[1] ^ s[7] << 24;\n case 7:\n u[1] = u[1] ^ s[6] << 16;\n case 6:\n u[1] = u[1] ^ s[5] << 8;\n case 5:\n u[1] = u[1] ^ s[4] << 0, u[1] = Math.imul(u[1], f[1]), u[1] = g(u[1], 16), u[1] = Math.imul(u[1], f[2]), e[1] = e[1] ^ u[1];\n case 4:\n u[0] = u[0] ^ s[3] << 24;\n case 3:\n u[0] = u[0] ^ s[2] << 16;\n case 2:\n u[0] = u[0] ^ s[1] << 8;\n case 1:\n u[0] = u[0] ^ s[0] << 0, u[0] = Math.imul(u[0], f[0]), u[0] = g(u[0], 15), u[0] = Math.imul(u[0], f[1]), e[0] = e[0] ^ u[0];\n }\n }(n, o), function(i, e) {\n e[0] = e[0] ^ i.byteLength, e[1] = e[1] ^ i.byteLength, e[2] = e[2] ^ i.byteLength, e[3] = e[3] ^ i.byteLength, e[0] = e[0] + e[1] | 0, e[0] = e[0] + e[2] | 0, e[0] = e[0] + e[3] | 0, e[1] = e[1] + e[0] | 0, e[2] = e[2] + e[0] | 0, e[3] = e[3] + e[0] | 0, e[0] = M(e[0]), e[1] = M(e[1]), e[2] = M(e[2]), e[3] = M(e[3]), e[0] = e[0] + e[1] | 0, e[0] = e[0] + e[2] | 0, e[0] = e[0] + e[3] | 0, e[1] = e[1] + e[0] | 0, e[2] = e[2] + e[0] | 0, e[3] = e[3] + e[0] | 0;\n }(n, o);\n var a = new Uint8Array(o.buffer);\n return Array.from(a).map(function(i) {\n return i.toString(16).padStart(2, \"0\");\n }).join(\"\");\n}\nfunction G(n, t) {\n return new Promise(function(r) {\n setTimeout(function() {\n return r(t);\n }, n);\n });\n}\nfunction W(n, t, r) {\n return Promise.all(n.map(function(o) {\n return Promise.race([o, G(t, r)]);\n }));\n}\nfunction V() {\n return w(this, void 0, void 0, function() {\n var n, t, r, o, a;\n return y(this, function(i) {\n switch (i.label) {\n case 0:\n return i.trys.push([0, 2, , 3]), n = j(), t = Object.keys(n), [4, W(Object.values(n), (S == null ? void 0 : S.timeout) || 1e3, q)];\n case 1:\n return r = i.sent(), o = r.filter(function(e) {\n return e !== void 0;\n }), a = {}, o.forEach(function(e, c) {\n a[t[c]] = e;\n }), [2, U(a, S.exclude || [])];\n case 2:\n throw i.sent();\n case 3:\n return [2];\n }\n });\n });\n}\nfunction U(n, t) {\n var r = {}, o = function(i) {\n if (n.hasOwnProperty(i)) {\n var e = n[i];\n if (typeof e != \"object\" || Array.isArray(e)) t.includes(i) || (r[i] = e);\n else {\n var c = U(e, t.map(function(l) {\n return l.startsWith(i + \".\") ? l.slice(i.length + 1) : l;\n }));\n Object.keys(c).length > 0 && (r[i] = c);\n }\n }\n };\n for (var a in n) o(a);\n return r;\n}\nfunction $(n) {\n return w(this, void 0, void 0, function() {\n var t, r;\n return y(this, function(o) {\n switch (o.label) {\n case 0:\n return o.trys.push([0, 2, , 3]), [4, V()];\n case 1:\n return t = o.sent(), r = I(JSON.stringify(t)), [2, r.toString()];\n case 2:\n throw o.sent();\n case 3:\n return [2];\n }\n });\n });\n}\nfunction H(n) {\n for (var t = 0, r = 0; r < n.length; ++r) t += Math.abs(n[r]);\n return t;\n}\nfunction O(n, t, r) {\n for (var o = [], a = 0; a < n[0].data.length; a++) {\n for (var i = [], e = 0; e < n.length; e++) i.push(n[e].data[a]);\n o.push(z(i));\n }\n var c = new Uint8ClampedArray(o);\n return new ImageData(c, t, r);\n}\nfunction z(n) {\n if (n.length === 0) return 0;\n for (var t = {}, r = 0, o = n; r < o.length; r++)\n t[i = o[r]] = (t[i] || 0) + 1;\n var a = n[0];\n for (var i in t) t[i] > t[a] && (a = parseInt(i, 10));\n return a;\n}\nfunction E() {\n if (typeof navigator > \"u\") return { name: \"unknown\", version: \"unknown\" };\n for (var n = navigator.userAgent, t = { Edg: \"Edge\", OPR: \"Opera\" }, r = 0, o = [/(?<name>Edge|Edg)\\/(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>(?:Chrome|Chromium|OPR|Opera|Vivaldi|Brave))\\/(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>(?:Firefox|Waterfox|Iceweasel|IceCat))\\/(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>Safari)\\/(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>MSIE|Trident|IEMobile).+?(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>[A-Za-z]+)\\/(?<version>\\d+(?:\\.\\d+)?)/, /(?<name>SamsungBrowser)\\/(?<version>\\d+(?:\\.\\d+)?)/]; r < o.length; r++) {\n var a = o[r], i = n.match(a);\n if (i && i.groups) return { name: t[i.groups.name] || i.groups.name, version: i.groups.version };\n }\n return { name: \"unknown\", version: \"unknown\" };\n}\nv(\"audio\", function() {\n return w(this, void 0, void 0, function() {\n return y(this, function(n) {\n return [2, new Promise(function(t, r) {\n try {\n var o = new (window.OfflineAudioContext || window.webkitOfflineAudioContext)(1, 5e3, 44100), a = o.createBufferSource(), i = o.createOscillator();\n i.frequency.value = 1e3;\n var e, c = o.createDynamicsCompressor();\n c.threshold.value = -50, c.knee.value = 40, c.ratio.value = 12, c.attack.value = 0, c.release.value = 0.2, i.connect(c), c.connect(o.destination), i.start(), o.oncomplete = function(l) {\n e = l.renderedBuffer.getChannelData(0), t({ sampleHash: H(e), oscillator: i.type, maxChannels: o.destination.maxChannelCount, channelCountMode: a.channelCountMode });\n }, o.startRendering();\n } catch (l) {\n console.error(\"Error creating audio fingerprint:\", l), r(l);\n }\n })];\n });\n });\n});\nvar K = E().name !== \"SamsungBrowser\" ? 1 : 3, T = 280, k = 20;\nE().name != \"Firefox\" && v(\"canvas\", function() {\n return document.createElement(\"canvas\").getContext(\"2d\"), new Promise(function(n) {\n var t = Array.from({ length: K }, function() {\n return function() {\n var r = document.createElement(\"canvas\"), o = r.getContext(\"2d\");\n if (!o) return new ImageData(1, 1);\n r.width = T, r.height = k;\n var a = o.createLinearGradient(0, 0, r.width, r.height);\n a.addColorStop(0, \"red\"), a.addColorStop(0.16666666666666666, \"orange\"), a.addColorStop(0.3333333333333333, \"yellow\"), a.addColorStop(0.5, \"green\"), a.addColorStop(0.6666666666666666, \"blue\"), a.addColorStop(0.8333333333333334, \"indigo\"), a.addColorStop(1, \"violet\"), o.fillStyle = a, o.fillRect(0, 0, r.width, r.height);\n var i = \"Random Text WMwmil10Oo\";\n o.font = \"23.123px Arial\", o.fillStyle = \"black\", o.fillText(i, -5, 15), o.fillStyle = \"rgba(0, 0, 255, 0.5)\", o.fillText(i, -3.3, 17.7), o.beginPath(), o.moveTo(0, 0), o.lineTo(2 * r.width / 7, r.height), o.strokeStyle = \"white\", o.lineWidth = 2, o.stroke();\n var e = o.getImageData(0, 0, r.width, r.height);\n return e;\n }();\n });\n n({ commonImageDataHash: I(O(t, T, k).data.toString()).toString() });\n });\n});\nvar C, Q = [\"Arial\", \"Arial Black\", \"Arial Narrow\", \"Arial Rounded MT\", \"Arimo\", \"Archivo\", \"Barlow\", \"Bebas Neue\", \"Bitter\", \"Bookman\", \"Calibri\", \"Cabin\", \"Candara\", \"Century\", \"Century Gothic\", \"Comic Sans MS\", \"Constantia\", \"Courier\", \"Courier New\", \"Crimson Text\", \"DM Mono\", \"DM Sans\", \"DM Serif Display\", \"DM Serif Text\", \"Dosis\", \"Droid Sans\", \"Exo\", \"Fira Code\", \"Fira Sans\", \"Franklin Gothic Medium\", \"Garamond\", \"Geneva\", \"Georgia\", \"Gill Sans\", \"Helvetica\", \"Impact\", \"Inconsolata\", \"Indie Flower\", \"Inter\", \"Josefin Sans\", \"Karla\", \"Lato\", \"Lexend\", \"Lucida Bright\", \"Lucida Console\", \"Lucida Sans Unicode\", \"Manrope\", \"Merriweather\", \"Merriweather Sans\", \"Montserrat\", \"Myriad\", \"Noto Sans\", \"Nunito\", \"Nunito Sans\", \"Open Sans\", \"Optima\", \"Orbitron\", \"Oswald\", \"Pacifico\", \"Palatino\", \"Perpetua\", \"PT Sans\", \"PT Serif\", \"Poppins\", \"Prompt\", \"Public Sans\", \"Quicksand\", \"Rajdhani\", \"Recursive\", \"Roboto\", \"Roboto Condensed\", \"Rockwell\", \"Rubik\", \"Segoe Print\", \"Segoe Script\", \"Segoe UI\", \"Sora\", \"Source Sans Pro\", \"Space Mono\", \"Tahoma\", \"Taviraj\", \"Times\", \"Times New Roman\", \"Titillium Web\", \"Trebuchet MS\", \"Ubuntu\", \"Varela Round\", \"Verdana\", \"Work Sans\"], J = [\"monospace\", \"sans-serif\", \"serif\"];\nfunction P(n, t) {\n if (!n) throw new Error(\"Canvas context not supported\");\n return n.font, n.font = \"72px \".concat(t), n.measureText(\"WwMmLli0Oo\").width;\n}\nfunction Y() {\n var n, t = document.createElement(\"canvas\"), r = (n = t.getContext(\"webgl\")) !== null && n !== void 0 ? n : t.getContext(\"experimental-webgl\");\n if (r && \"getParameter\" in r) try {\n var o = (r.getParameter(r.VENDOR) || \"\").toString(), a = (r.getParameter(r.RENDERER) || \"\").toString(), i = { vendor: o, renderer: a, version: (r.getParameter(r.VERSION) || \"\").toString(), shadingLanguageVersion: (r.getParameter(r.SHADING_LANGUAGE_VERSION) || \"\").toString() };\n if (!a.length || !o.length) {\n var e = r.getExtension(\"WEBGL_debug_renderer_info\");\n if (e) {\n var c = (r.getParameter(e.UNMASKED_VENDOR_WEBGL) || \"\").toString(), l = (r.getParameter(e.UNMASKED_RENDERER_WEBGL) || \"\").toString();\n c && (i.vendorUnmasked = c), l && (i.rendererUnmasked = l);\n }\n }\n return i;\n } catch {\n }\n return \"undefined\";\n}\nfunction X() {\n var n = new Float32Array(1), t = new Uint8Array(n.buffer);\n return n[0] = 1 / 0, n[0] = n[0] - n[0], t[3];\n}\nfunction Z(n, t) {\n var r = {};\n return t.forEach(function(o) {\n var a = function(i) {\n if (i.length === 0) return null;\n var e = {};\n i.forEach(function(u) {\n var s = String(u);\n e[s] = (e[s] || 0) + 1;\n });\n var c = i[0], l = 1;\n return Object.keys(e).forEach(function(u) {\n e[u] > l && (c = u, l = e[u]);\n }), c;\n }(n.map(function(i) {\n return o in i ? i[o] : void 0;\n }).filter(function(i) {\n return i !== void 0;\n }));\n a && (r[o] = a);\n }), r;\n}\nfunction ee() {\n var n = [], t = { \"prefers-contrast\": [\"high\", \"more\", \"low\", \"less\", \"forced\", \"no-preference\"], \"any-hover\": [\"hover\", \"none\"], \"any-pointer\": [\"none\", \"coarse\", \"fine\"], pointer: [\"none\", \"coarse\", \"fine\"], hover: [\"hover\", \"none\"], update: [\"fast\", \"slow\"], \"inverted-colors\": [\"inverted\", \"none\"], \"prefers-reduced-motion\": [\"reduce\", \"no-preference\"], \"prefers-reduced-transparency\": [\"reduce\", \"no-preference\"], scripting: [\"none\", \"initial-only\", \"enabled\"], \"forced-colors\": [\"active\", \"none\"] };\n return Object.keys(t).forEach(function(r) {\n t[r].forEach(function(o) {\n matchMedia(\"(\".concat(r, \": \").concat(o, \")\")).matches && n.push(\"\".concat(r, \": \").concat(o));\n });\n }), n;\n}\nfunction te() {\n if (window.location.protocol === \"https:\" && typeof window.ApplePaySession == \"function\") try {\n for (var n = window.ApplePaySession.supportsVersion, t = 15; t > 0; t--) if (n(t)) return t;\n } catch {\n return 0;\n }\n return 0;\n}\nE().name != \"Firefox\" && v(\"fonts\", function() {\n var n = this;\n return new Promise(function(t, r) {\n try {\n (function(o) {\n var a;\n w(this, void 0, void 0, function() {\n var i, e, c;\n return y(this, function(l) {\n switch (l.label) {\n case 0:\n return document.body ? [3, 2] : [4, (u = 50, new Promise(function(p) {\n return setTimeout(p, u, s);\n }))];\n case 1:\n return l.sent(), [3, 0];\n case 2:\n if ((i = document.createElement(\"iframe\")).setAttribute(\"frameBorder\", \"0\"), (e = i.style).setProperty(\"position\", \"fixed\"), e.setProperty(\"display\", \"block\", \"important\"), e.setProperty(\"visibility\", \"visible\"), e.setProperty(\"border\", \"0\"), e.setProperty(\"opacity\", \"0\"), i.src = \"about:blank\", document.body.appendChild(i), !(c = i.contentDocument || ((a = i.contentWindow) === null || a === void 0 ? void 0 : a.document))) throw new Error(\"Iframe document is not accessible\");\n return o({ iframe: c }), setTimeout(function() {\n document.body.removeChild(i);\n }, 0), [2];\n }\n var u, s;\n });\n });\n })(function(o) {\n var a = o.iframe;\n return w(n, void 0, void 0, function() {\n var i, e, c, l;\n return y(this, function(u) {\n return i = a.createElement(\"canvas\"), e = i.getContext(\"2d\"), c = J.map(function(s) {\n return P(e, s);\n }), l = {}, Q.forEach(function(s) {\n var p = P(e, s);\n c.includes(p) || (l[s] = p);\n }), t(l), [2];\n });\n });\n });\n } catch {\n r({ error: \"unsupported\" });\n }\n });\n}), v(\"hardware\", function() {\n return new Promise(function(n, t) {\n var r = navigator.deviceMemory !== void 0 ? navigator.deviceMemory : 0, o = window.performance && window.performance.memory ? window.performance.memory : 0;\n n({ videocard: Y(), architecture: X(), deviceMemory: r.toString() || \"undefined\", jsHeapSizeLimit: o.jsHeapSizeLimit || 0 });\n });\n}), v(\"locales\", function() {\n return new Promise(function(n) {\n n({ languages: navigator.language, timezone: Intl.DateTimeFormat().resolvedOptions().timeZone });\n });\n}), v(\"permissions\", function() {\n return w(this, void 0, void 0, function() {\n var n;\n return y(this, function(t) {\n return C = (S == null ? void 0 : S.permissions_to_check) || [\"accelerometer\", \"accessibility\", \"accessibility-events\", \"ambient-light-sensor\", \"background-fetch\", \"background-sync\", \"bluetooth\", \"camera\", \"clipboard-read\", \"clipboard-write\", \"device-info\", \"display-capture\", \"gyroscope\", \"geolocation\", \"local-fonts\", \"magnetometer\", \"microphone\", \"midi\", \"nfc\", \"notifications\", \"payment-handler\", \"persistent-storage\", \"push\", \"speaker\", \"storage-access\", \"top-level-storage-access\", \"window-management\", \"query\"], n = Array.from({ length: (S == null ? void 0 : S.retries) || 3 }, function() {\n return function() {\n return w(this, void 0, void 0, function() {\n var r, o, a, i, e;\n return y(this, function(c) {\n switch (c.label) {\n case 0:\n r = {}, o = 0, a = C, c.label = 1;\n case 1:\n if (!(o < a.length)) return [3, 6];\n i = a[o], c.label = 2;\n case 2:\n return c.trys.push([2, 4, , 5]), [4, navigator.permissions.query({ name: i })];\n case 3:\n return e = c.sent(), r[i] = e.state.toString(), [3, 5];\n case 4:\n return c.sent(), [3, 5];\n case 5:\n return o++, [3, 1];\n case 6:\n return [2, r];\n }\n });\n });\n }();\n }), [2, Promise.all(n).then(function(r) {\n return Z(r, C);\n })];\n });\n });\n}), v(\"plugins\", function() {\n var n = [];\n if (navigator.plugins) for (var t = 0; t < navigator.plugins.length; t++) {\n var r = navigator.plugins[t];\n n.push([r.name, r.filename, r.description].join(\"|\"));\n }\n return new Promise(function(o) {\n o({ plugins: n });\n });\n}), v(\"screen\", function() {\n return new Promise(function(n) {\n n({ is_touchscreen: navigator.maxTouchPoints > 0, maxTouchPoints: navigator.maxTouchPoints, colorDepth: screen.colorDepth, mediaMatches: ee() });\n });\n}), v(\"system\", function() {\n return new Promise(function(n) {\n var t = E();\n n({ platform: window.navigator.platform, cookieEnabled: window.navigator.cookieEnabled, productSub: navigator.productSub, product: navigator.product, useragent: navigator.userAgent, hardwareConcurrency: navigator.hardwareConcurrency, browser: { name: t.name, version: t.version }, applePayVersion: te() });\n });\n});\nvar m, ne = E().name !== \"SamsungBrowser\" ? 1 : 3, d = null;\nv(\"webgl\", function() {\n return w(this, void 0, void 0, function() {\n var n;\n return y(this, function(t) {\n typeof document < \"u\" && ((m = document.createElement(\"canvas\")).width = 200, m.height = 100, d = m.getContext(\"webgl\"));\n try {\n if (!d) throw new Error(\"WebGL not supported\");\n return n = Array.from({ length: ne }, function() {\n return function() {\n try {\n if (!d) throw new Error(\"WebGL not supported\");\n var r = `\n attribute vec2 position;\n void main() {\n gl_Position = vec4(position, 0.0, 1.0);\n }\n `, o = `\n precision mediump float;\n void main() {\n gl_FragColor = vec4(0.812, 0.195, 0.553, 0.921); // Set line color\n }\n `, a = d.createShader(d.VERTEX_SHADER), i = d.createShader(d.FRAGMENT_SHADER);\n if (!a || !i) throw new Error(\"Failed to create shaders\");\n if (d.shaderSource(a, r), d.shaderSource(i, o), d.compileShader(a), !d.getShaderParameter(a, d.COMPILE_STATUS)) throw new Error(\"Vertex shader compilation failed: \" + d.getShaderInfoLog(a));\n if (d.compileShader(i), !d.getShaderParameter(i, d.COMPILE_STATUS)) throw new Error(\"Fragment shader compilation failed: \" + d.getShaderInfoLog(i));\n var e = d.createProgram();\n if (!e) throw new Error(\"Failed to create shader program\");\n if (d.attachShader(e, a), d.attachShader(e, i), d.linkProgram(e), !d.getProgramParameter(e, d.LINK_STATUS)) throw new Error(\"Shader program linking failed: \" + d.getProgramInfoLog(e));\n d.useProgram(e);\n for (var c = 137, l = new Float32Array(4 * c), u = 2 * Math.PI / c, s = 0; s < c; s++) {\n var p = s * u;\n l[4 * s] = 0, l[4 * s + 1] = 0, l[4 * s + 2] = Math.cos(p) * (m.width / 2), l[4 * s + 3] = Math.sin(p) * (m.height / 2);\n }\n var B = d.createBuffer();\n d.bindBuffer(d.ARRAY_BUFFER, B), d.bufferData(d.ARRAY_BUFFER, l, d.STATIC_DRAW);\n var R = d.getAttribLocation(e, \"position\");\n d.enableVertexAttribArray(R), d.vertexAttribPointer(R, 2, d.FLOAT, !1, 0, 0), d.viewport(0, 0, m.width, m.height), d.clearColor(0, 0, 0, 1), d.clear(d.COLOR_BUFFER_BIT), d.drawArrays(d.LINES, 0, 2 * c);\n var x = new Uint8ClampedArray(m.width * m.height * 4);\n return d.readPixels(0, 0, m.width, m.height, d.RGBA, d.UNSIGNED_BYTE, x), new ImageData(x, m.width, m.height);\n } catch {\n return new ImageData(1, 1);\n } finally {\n d && (d.bindBuffer(d.ARRAY_BUFFER, null), d.useProgram(null), d.viewport(0, 0, d.drawingBufferWidth, d.drawingBufferHeight), d.clearColor(0, 0, 0, 0));\n }\n }();\n }), [2, { commonImageHash: I(O(n, m.width, m.height).data.toString()).toString() }];\n } catch {\n return [2, { webgl: \"unsupported\" }];\n }\n return [2];\n });\n });\n});\nvar b = function(n, t, r, o) {\n for (var a = (r - t) / o, i = 0, e = 0; e < o; e++)\n i += n(t + (e + 0.5) * a);\n return i * a;\n};\nv(\"math\", function() {\n return w(void 0, void 0, void 0, function() {\n return y(this, function(n) {\n return [2, { acos: Math.acos(0.5), asin: b(Math.asin, -1, 1, 97), atan: b(Math.atan, -1, 1, 97), cos: b(Math.cos, 0, Math.PI, 97), cosh: Math.cosh(9 / 7), e: Math.E, largeCos: Math.cos(1e20), largeSin: Math.sin(1e20), largeTan: Math.tan(1e20), log: Math.log(1e3), pi: Math.PI, sin: b(Math.sin, -Math.PI, Math.PI, 97), sinh: b(Math.sinh, -9 / 7, 7 / 9, 97), sqrt: Math.sqrt(2), tan: b(Math.tan, 0, 2 * Math.PI, 97), tanh: b(Math.tanh, -9 / 7, 7 / 9, 97) }];\n });\n });\n});\nconst re = \"useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict\";\nlet A = (n = 21) => {\n let t = \"\", r = crypto.getRandomValues(new Uint8Array(n |= 0));\n for (; n--; )\n t += re[r[n] & 63];\n return t;\n};\nclass D {\n constructor(t) {\n h(this, \"config\");\n this.config = t;\n }\n async getAdsForSearchParams(t) {\n return [];\n }\n}\nclass oe extends D {\n /**\n * Gets ads from the adMarketplace API based on the search term.\n */\n async getAdsForSearchParams(t) {\n if (!this.config.admSub)\n return console.error(\"No admSub specified in config.\"), [];\n const o = `https://demofeed.is.ampfeed.com/is?${new URLSearchParams({\n partner: \"demofeed\",\n sub1: this.config.admSub,\n qt: t.searchTerm,\n v: \"2.0\",\n rfr: \"searchcraft.io\",\n \"results-ta\": `${this.config.admTextAdQuantity || 0}`,\n \"results-pa\": `${this.config.admProductAdQuantity || 0}`\n }).toString()}`, i = await (await fetch(o, { method: \"GET\" })).json();\n return new Array().concat(\n i.product_ads.map((c) => ({\n adId: A(),\n type: \"adm-product-ad\",\n admAd: c\n }))\n ).concat(\n i.text_ads.map((c) => ({\n adId: A(),\n type: \"adm-text-ad\",\n admAd: c\n }))\n );\n }\n}\nclass ie extends D {\n async getAdsForSearchParams(t) {\n return [];\n }\n}\nconst ae = 500;\nclass se {\n constructor(t, r, o) {\n h(this, \"measureRequestTimeout\");\n h(this, \"measureRequestsBatched\", []);\n h(this, \"config\");\n h(this, \"sdkInfo\");\n h(this, \"userId\");\n h(this, \"sessionId\");\n /**\n * Sends a measure event to the `/measure/event` endpoint for analytics purposes.\n *\n * @param {MeasureEventName} eventName - Name of the event.\n * @param {Partial<MeasureRequestProperties>} properties - Additional properties to send with the event.\n * @param {Partial<MeasureRequestUser>} user - Additional user properites to send with the event.\n */\n h(this, \"sendMeasureEvent\", (t, r = {}, o = {}) => {\n const a = {\n event_name: t,\n properties: {\n searchcraft_index_names: this.config.index,\n session_id: this.sessionId,\n ...r\n },\n user: {\n ...this.measureRequestUser,\n ...o\n }\n };\n this.measureRequestsBatched.push(a), clearTimeout(this.measureRequestTimeout), this.measureRequestTimeout = setTimeout(async () => {\n const i = JSON.stringify({ items: this.measureRequestsBatched }), e = `${this.baseMeasureUrl}/batch`;\n try {\n const c = await fetch(e, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: this.config.readKey,\n \"X-Sc-User-Id\": this.userId\n },\n body: i,\n keepalive: !0\n });\n if (!c.ok)\n throw new Error(\n `Failed to send request: ${c.status} ${c.statusText}`\n );\n this.measureRequestsBatched = [];\n return;\n } catch (c) {\n throw console.error(\"Error sending MeasureRequest:\", c), c;\n }\n }, ae);\n });\n this.config = t, this.sdkInfo = r, this.userId = o, this.sessionId = A(), this.sendMeasureEvent(\"sdk_initialized\");\n }\n /**\n * Getter for the base url used by the /measure endpoints.\n */\n get baseMeasureUrl() {\n return `${this.config.endpointURL}/measure`;\n }\n /**\n * Getter for the measure request user. Uses config values + navigator values.\n */\n get measureRequestUser() {\n return {\n user_id: this.userId,\n locale: navigator.language || \"en-US\",\n os: navigator.userAgent.includes(\"Windows\") ? \"Windows\" : navigator.userAgent.includes(\"Mac\") ? \"Mac\" : navigator.userAgent.includes(\"Linux\") ? \"Linux\" : \"Unknown\",\n platform: navigator.platform || \"Unknown\",\n sdk_name: this.sdkInfo.sdkName,\n sdk_version: this.sdkInfo.sdkVersion,\n user_agent: navigator.userAgent || \"Unknown\"\n };\n }\n}\nfunction ue(n) {\n const t = [];\n let r = \"should\";\n return n.facetPathsForIndexFields && Object.keys(n.facetPathsForIndexFields).forEach((o) => {\n var i;\n const a = (i = n.facetPathsForIndexFields) == null ? void 0 : i[o];\n a && (r = \"must\", t.push({\n occur: r,\n exact: {\n ctx: a.value\n }\n }));\n }), n.rangeValueForIndexFields && Object.keys(n.rangeValueForIndexFields).forEach((o) => {\n var i;\n const a = (i = n.rangeValueForIndexFields) == null ? void 0 : i[o];\n a && (r = \"must\", t.push({\n occur: r,\n exact: {\n ctx: a.value\n }\n }));\n }), n.sort === \"desc\" ? n.order_by = \"date_published\" : n.order_by = \"\", t.push({\n occur: r,\n // Valid, as 'occur' is a required property in QueryItem\n [n.mode]: { ctx: n.searchTerm }\n // Ensure dynamic mode is inside queryType\n }), t;\n}\nconst ce = (n) => n.endsWith(\"/\") ? n.slice(0, -1) : n, de = (n) => {\n let t = \"\";\n if (t = n.trim(), t = t.replace(/[‘’“”]/g, (o) => ({\n \"‘\": \"'\",\n \"’\": \"'\",\n \"“\": '\"',\n \"”\": '\"'\n })[o] || o), (t.match(/\"/g) || []).length % 2 !== 0)\n throw new Error(\n \"The search term contains an uneven number of quote characters.\"\n );\n return t;\n};\nclass le {\n constructor(t, r, o) {\n h(this, \"measureClient\");\n h(this, \"config\");\n h(this, \"userId\");\n /**\n * Performs a search operation.\n * @param {SearchParams} searchParams - The parameters for the search.\n */\n h(this, \"getSearchResponse\", async (t) => {\n var o, a;\n const r = de(t.searchTerm);\n (o = this.measureClient) == null || o.sendMeasureEvent(\"search_requested\", {\n search_term: r\n });\n try {\n const i = {\n query: ue(t),\n offset: t.offset || 0,\n // Default to 0 (first page) if not provided\n limit: t.limit || this.config.searchResultsPerPage || 20\n // Default to 20 if not provided\n };\n t.order_by && (i.order_by = t.order_by, i.sort = t.sort === \"desc\" || t.sort === \"asc\" ? t.sort : \"asc\");\n const e = {\n method: \"POST\",\n headers: {\n Authorization: this.config.readKey,\n \"Content-Type\": \"application/json\",\n \"X-Sc-User-Id\": this.userId\n },\n body: JSON.stringify(i)\n }, c = await fetch(this.baseSearchUrl, e);\n if (!c.ok)\n throw new Error(\n `Error: ${c.statusText} (Status: ${c.status})`\n );\n const l = await c.json();\n return (a = this.measureClient) == null || a.sendMeasureEvent(\"search_response_received\", {\n search_term: r,\n number_of_documents: l.data.count\n }), l;\n } catch (i) {\n throw console.error(\"Error parsing response:\", i), i;\n }\n });\n this.measureClient = o, this.config = t, this.userId = r;\n }\n /**\n * Getter for the base url used by the /search endpoint.\n */\n get baseSearchUrl() {\n return `${this.config.endpointURL}/index/${this.config.index.join(\",\")}/search`;\n }\n}\nclass ge {\n constructor(t, r) {\n h(this, \"config\");\n h(this, \"measureClient\");\n h(this, \"searchClient\");\n h(this, \"adClient\");\n h(this, \"userId\");\n h(this, \"requestTimeout\");\n /**\n * Gets items from the SearchClient and the AdClient.\n */\n h(this, \"getItems\", (t, r, o) => {\n const a = async () => {\n (async () => {\n var c, l;\n const i = await ((c = this == null ? void 0 : this.searchClient) == null ? void 0 : c.getSearchResponse(t));\n if (!i)\n throw new Error(\"Search client was not initialized.\");\n const e = (l = i.data.hits || []) == null ? void 0 : l.map((u) => u.doc).filter((u) => !!u).map((u) => ({\n type: \"SearchDocument\",\n id: A(),\n document: u\n }));\n r(i, e);\n })(), (async () => {\n if (this.adClient) {\n const i = await this.adClient.getAdsForSearchParams(t);\n o(i);\n }\n })();\n };\n clearTimeout(this.requestTimeout), this.config.searchDebounceDelay ? this.requestTimeout = setTimeout(\n a,\n this.config.searchDebounceDelay\n ) : a();\n });\n if (!t.endpointURL || !t.index || !t.readKey)\n throw new Error(\n \"Endpoint URL, Index value(s), and Read Key must be provided\"\n );\n this.config = {\n ...t,\n // Strips off the trailing '/' from an endpointURL if one is accidentally added\n endpointURL: ce(t.endpointURL)\n }, this.userId = \"\", this.initClients(this.config, r);\n }\n initClients(t, r) {\n setTimeout(async () => {\n let o = this.config.userId;\n switch (o || (o = await $()), this.measureClient = new se(t, r, o), this.searchClient = new le(t, o, this.measureClient), t.adProvider) {\n case \"adMarketplace\":\n this.adClient = new oe(t);\n break;\n case \"Nativo\":\n this.adClient = new ie(t);\n break;\n }\n }, 300);\n }\n}\nexport {\n _ as LogLevel,\n me as Logger,\n ge as SearchcraftCore\n};\n//# sourceMappingURL=index.js.map\n","import { create } from 'zustand';\n\nimport {\n Logger,\n LogLevel,\n type FacetPathsForIndexField,\n type RangeValueForIndexField,\n type SearchcraftResponse,\n type SearchClientResponseItem,\n type AdClientResponseItem,\n} from '@searchcraft/core';\nimport type {\n SearchcraftState,\n SearchcraftStateFunctions,\n SearchcraftStateValues,\n} from './SearchcraftStore.types';\n\nconst initialSearchcraftStateValues: SearchcraftStateValues = {\n adClientResponseItems: [],\n core: undefined,\n logger: undefined,\n facetPathsForIndexFields: {},\n isPopoverVisible: false,\n searchTerm: '',\n rangeValueForIndexFields: {},\n searchMode: 'fuzzy',\n searchClientResponseItems: [],\n searchResponseTimeTaken: undefined,\n searchResponseFacetPrime: undefined,\n searchResultsCount: 0,\n searchResultsPerPage: 20,\n searchResultsPage: 1,\n sortType: 'asc',\n};\n\nconst useSearchcraftStore = create<SearchcraftState>((set, get) => {\n const functions: SearchcraftStateFunctions = {\n addFacetPathsForIndexField: (data: FacetPathsForIndexField) =>\n set((state) => ({\n facetPathsForIndexFields: {\n ...state.facetPathsForIndexFields,\n [data.fieldName]: data,\n },\n })),\n addRangeValueForIndexField: (data: RangeValueForIndexField) =>\n set((state) => ({\n rangeValueForIndexFields: {\n ...state.rangeValueForIndexFields,\n [data.fieldName]: data,\n },\n })),\n getSearchcraftInstance: () => {\n const { core } = get();\n return core;\n },\n initialize: (searchcraftInstance, debug = false) => {\n const core = searchcraftInstance;\n const logger = debug\n ? new Logger({ logLevel: LogLevel.DEBUG })\n : undefined;\n\n set({\n core,\n logger,\n searchResultsPerPage: core.config.searchResultsPerPage || 20,\n });\n },\n removeFacetPathsForIndexField: (fieldName: string) =>\n set((state) => {\n const currentPaths = state.facetPathsForIndexFields;\n delete currentPaths[fieldName];\n return {\n facetPathsForIndexFields: {\n ...currentPaths,\n },\n };\n }),\n removeRangeValueForIndexField: (fieldName: string) =>\n set((state) => {\n const currentValues = state.rangeValueForIndexFields;\n delete currentValues[fieldName];\n return {\n rangeValueForIndexFields: {\n ...currentValues,\n },\n };\n }),\n resetFacetPaths: () => {\n set({\n facetPathsForIndexFields: {},\n });\n },\n search: async () => {\n const state = get();\n state.logger?.log(\n LogLevel.INFO,\n `Starting search with search term: \"${state.searchTerm}\"`,\n );\n\n if (!state.core) {\n throw new Error('Searchcraft instance is not initialized.');\n }\n\n if (!state.searchTerm.trim()) {\n state.logger?.log(\n LogLevel.INFO,\n 'No search request was made: search term was empty.',\n );\n set({\n searchClientResponseItems: [],\n searchResultsCount: 0,\n searchResultsPage: 1,\n searchTerm: '',\n });\n return;\n }\n\n const handleSearchcraftResponse = (\n response: SearchcraftResponse,\n items: SearchClientResponseItem[],\n ) => {\n const facetsFromResponse = response.data.facets;\n\n set((state) => {\n return {\n searchClientResponseItems: items,\n searchResponseTimeTaken: response.data.time_taken || 0,\n searchResultsPage:\n // reset to first page when response count changes\n response.data.count === state.searchResultsCount\n ? state.searchResultsPage\n : 1,\n searchResultsCount: response.data.count || 0,\n };\n });\n\n if (facetsFromResponse) {\n set({ searchResponseFacetPrime: facetsFromResponse });\n }\n\n state.logger?.log(\n LogLevel.DEBUG,\n `Search results: ${JSON.stringify(items)}`,\n );\n state.logger?.log(\n LogLevel.DEBUG,\n `Facets from response: ${JSON.stringify(facetsFromResponse)}`,\n );\n };\n\n const handleAdResponse = (\n adClientResponseItems: AdClientResponseItem[],\n ) => {\n set({ adClientResponseItems });\n };\n\n state.core.getItems(\n {\n searchTerm: state.searchTerm,\n mode: state.searchMode,\n sort: state.sortType,\n facetPathsForIndexFields: state.facetPathsForIndexFields,\n rangeValueForIndexFields: state.rangeValueForIndexFields,\n offset: state.searchResultsPerPage\n ? state.searchResultsPerPage * (state.searchResultsPage - 1)\n : 0,\n limit: state.searchResultsPerPage,\n },\n handleSearchcraftResponse,\n handleAdResponse,\n );\n },\n setPopoverVisibility: (isVisible: boolean) => {\n set({\n isPopoverVisible: isVisible,\n });\n },\n setSearchMode: (mode) => set({ searchMode: mode }),\n setSortType: (type) => set({ sortType: type }),\n setSearchTerm: (searchTerm) => {\n /**\n * When a new searchTerm is set, also reset the sort type, search mode, and facet paths.\n */\n set({\n searchTerm,\n facetPathsForIndexFields: {},\n ...(searchTerm.trim().length === 0 && {\n searchMode: 'fuzzy',\n sortType: 'asc',\n }),\n });\n },\n setSearchClientResponseItems: (items) =>\n set({ searchClientResponseItems: items }),\n setSearchResultsPage: async (page) => {\n set({ searchResultsPage: page });\n await functions.search();\n },\n setSearchResultsPerPage: async (perPage) => {\n set({ searchResultsPerPage: perPage });\n await functions.search();\n },\n };\n\n const stateObject: SearchcraftState = {\n ...initialSearchcraftStateValues,\n ...functions,\n };\n\n return stateObject;\n});\n\nexport { useSearchcraftStore };\n"],"mappings":"kBAEA,MAAMA,EAAmBC,IACvB,IAAIC,EACJ,MAAMC,EAA4B,IAAIC,IACtC,MAAMC,EAAW,CAACC,EAASC,KACzB,MAAMC,SAAmBF,IAAY,WAAaA,EAAQJ,GAASI,EACnE,IAAKG,OAAOC,GAAGF,EAAWN,GAAQ,CAChC,MAAMS,EAAgBT,EACtBA,GAASK,GAAW,KAAOA,SAAiBC,IAAc,UAAYA,IAAc,MAAQA,EAAYC,OAAOG,OAAO,GAAIV,EAAOM,GACjIL,EAAUU,SAASC,GAAaA,EAASZ,EAAOS,IACtD,GAEE,MAAMI,EAAW,IAAMb,EACvB,MAAMc,EAAkB,IAAMC,EAC9B,MAAMC,EAAaJ,IACjBX,EAAUgB,IAAIL,GACd,MAAO,IAAMX,EAAUiB,OAAON,EAAS,EAEzC,MAAMO,EAAM,CAAEhB,WAAUU,WAAUC,kBAAiBE,aACnD,MAAMD,EAAef,EAAQD,EAAYI,EAAUU,EAAUM,GAC7D,OAAOA,CAAG,EAEZ,MAAMC,EAAerB,GAAgBA,EAAcD,EAAgBC,GAAeD,E,cAE5DsB,E;;;;;;;;;GCdtB,IAAIC,EAAqBC,OAAOC,IAAI,8BAClCC,EAAoBF,OAAOC,IAAI,gBAC/BE,EAAsBH,OAAOC,IAAI,kBACjCG,EAAyBJ,OAAOC,IAAI,qBACpCI,EAAsBL,OAAOC,IAAI,kBACjCK,EAAsBN,OAAOC,IAAI,kBACjCM,EAAqBP,OAAOC,IAAI,iBAChCO,EAAyBR,OAAOC,IAAI,qBACpCQ,EAAsBT,OAAOC,IAAI,kBACjCS,EAAkBV,OAAOC,IAAI,cAC7BU,EAAkBX,OAAOC,IAAI,cAC7BW,EAAwBZ,OAAOa,SACjC,SAASC,EAAcC,GACrB,GAAI,OAASA,GAAiB,kBAAoBA,EAAe,OAAO,KACxEA,EACGH,GAAyBG,EAAcH,IACxCG,EAAc,cAChB,MAAO,oBAAsBA,EAAgBA,EAAgB,IAC/D,CACA,IAAIC,EAAuB,CACvBC,UAAW,WACT,OAAQ,CACd,EACIC,mBAAoB,WAAY,EAChCC,oBAAqB,WAAY,EACjCC,gBAAiB,WAAY,GAE/BhC,EAASH,OAAOG,OAChBiC,EAAc,GAChB,SAASC,EAAUC,EAAOC,EAASC,GACjCC,KAAKH,MAAQA,EACbG,KAAKF,QAAUA,EACfE,KAAKC,KAAON,EACZK,KAAKD,QAAUA,GAAWT,CAC5B,CACAM,EAAUM,UAAUC,iBAAmB,GACvCP,EAAUM,UAAU/C,SAAW,SAAUiD,EAAcC,GACrD,GACE,kBAAoBD,GACpB,oBAAsBA,GACtB,MAAQA,EAER,MAAME,MACJ,0GAEJN,KAAKD,QAAQL,gBAAgBM,KAAMI,EAAcC,EAAU,WAC7D,EACAT,EAAUM,UAAUK,YAAc,SAAUF,GAC1CL,KAAKD,QAAQP,mBAAmBQ,KAAMK,EAAU,cAClD,EACA,SAASG,IAAiB,CAC1BA,EAAeN,UAAYN,EAAUM,UACrC,SAASO,EAAcZ,EAAOC,EAASC,GACrCC,KAAKH,MAAQA,EACbG,KAAKF,QAAUA,EACfE,KAAKC,KAAON,EACZK,KAAKD,QAAUA,GAAWT,CAC5B,CACA,IAAIoB,EAA0BD,EAAcP,UAAY,IAAIM,EAC5DE,EAAuBC,YAAcF,EACrC/C,EAAOgD,EAAwBd,EAAUM,WACzCQ,EAAuBE,sBAAwB,EAC/C,IAAIC,EAAcC,MAAMC,QACtBC,EAAuB,CAAEC,EAAG,KAAMC,EAAG,KAAMC,EAAG,KAAMC,EAAG,MACvDC,EAAiB9D,OAAO2C,UAAUmB,eACpC,SAASC,EAAaC,EAAMC,EAAKC,EAAMC,EAAQC,EAAO9B,GACpD4B,EAAO5B,EAAM+B,IACb,MAAO,CACLC,SAAUxD,EACVkD,KAAMA,EACNC,IAAKA,EACLI,SAAU,IAAMH,EAAOA,EAAO,KAC9B5B,MAAOA,EAEX,CACA,SAASiC,EAAmBC,EAAYC,GACtC,OAAOV,EACLS,EAAWR,KACXS,OACK,OACA,OACA,EACLD,EAAWlC,MAEf,CACA,SAASoC,EAAeC,GACtB,MACE,kBAAoBA,GACpB,OAASA,GACTA,EAAOL,WAAaxD,CAExB,CACA,SAAS8D,EAAOX,GACd,IAAIY,EAAgB,CAAE,IAAK,KAAM,IAAK,MACtC,MACE,IACAZ,EAAInE,QAAQ,SAAS,SAAUgF,GAC7B,OAAOD,EAAcC,EAC3B,GAEA,CACA,IAAIC,EAA6B,OACjC,SAASC,EAAcC,EAASC,GAC9B,MAAO,kBAAoBD,GAAW,OAASA,GAAW,MAAQA,EAAQhB,IACtEW,EAAO,GAAKK,EAAQhB,KACpBiB,EAAMC,SAAS,GACrB,CACA,SAASC,IAAS,CAClB,SAASC,EAAgBC,GACvB,OAAQA,EAASC,QACf,IAAK,YACH,OAAOD,EAASE,MAClB,IAAK,WACH,MAAMF,EAASG,OACjB,QACE,OACG,kBAAoBH,EAASC,OAC1BD,EAASI,KAAKN,EAAQA,IACpBE,EAASC,OAAS,UACpBD,EAASI,MACP,SAAUC,GACR,YAAcL,EAASC,SACnBD,EAASC,OAAS,YACnBD,EAASE,MAAQG,EACpC,IACc,SAAUC,GACR,YAAcN,EAASC,SACnBD,EAASC,OAAS,WAAcD,EAASG,OAASG,EACtE,KAEQN,EAASC,QAET,IAAK,YACH,OAAOD,EAASE,MAClB,IAAK,WACH,MAAMF,EAASG,QAGvB,MAAMH,CACR,CACA,SAASO,EAAaC,EAAUC,EAAOC,EAAeC,EAAWnD,GAC/D,IAAIkB,SAAc8B,EAClB,GAAI,cAAgB9B,GAAQ,YAAcA,EAAM8B,EAAW,KAC3D,IAAII,GAAkB,EACtB,GAAI,OAASJ,EAAUI,GAAkB,OAEvC,OAAQlC,GACN,IAAK,SACL,IAAK,SACL,IAAK,SACHkC,GAAkB,EAClB,MACF,IAAK,SACH,OAAQJ,EAASxB,UACf,KAAKxD,EACL,KAAKG,EACHiF,GAAkB,EAClB,MACF,KAAKxE,EACH,OACGwE,EAAiBJ,EAASK,MAC3BN,EACEK,EAAeJ,EAASM,UACxBL,EACAC,EACAC,EACAnD,IAKd,GAAIoD,EACF,OACGpD,EAAWA,EAASgD,GACpBI,EACC,KAAOD,EAAY,IAAMjB,EAAcc,EAAU,GAAKG,EACxD3C,EAAYR,IACNkD,EAAgB,GAClB,MAAQE,IACLF,EACCE,EAAepG,QAAQiF,EAA4B,OAAS,KAChEc,EAAa/C,EAAUiD,EAAOC,EAAe,IAAI,SAAUK,GACzD,OAAOA,CACnB,KACU,MAAQvD,IACP4B,EAAe5B,KACbA,EAAWyB,EACVzB,EACAkD,GACG,MAAQlD,EAASmB,KACjB6B,GAAYA,EAAS7B,MAAQnB,EAASmB,IACnC,IACC,GAAKnB,EAASmB,KAAKnE,QAClBiF,EACA,OACE,KACRmB,IAENH,EAAMO,KAAKxD,IACf,EAEJoD,EAAiB,EACjB,IAAIK,EAAiB,KAAON,EAAY,IAAMA,EAAY,IAC1D,GAAI3C,EAAYwC,GACd,IAAK,IAAIU,EAAI,EAAGA,EAAIV,EAASW,OAAQD,IAClCP,EAAYH,EAASU,GACnBxC,EAAOuC,EAAiBvB,EAAciB,EAAWO,GACjDN,GAAkBL,EACjBI,EACAF,EACAC,EACAhC,EACAlB,QAEH,GAAM0D,EAAI3E,EAAciE,GAAY,oBAAsBU,EAC7D,IACEV,EAAWU,EAAEE,KAAKZ,GAAWU,EAAI,IAC/BP,EAAYH,EAASa,QAAQC,MAG9BX,EAAYA,EAAUT,MACpBxB,EAAOuC,EAAiBvB,EAAciB,EAAWO,KACjDN,GAAkBL,EACjBI,EACAF,EACAC,EACAhC,EACAlB,QAEH,GAAI,WAAakB,EAAM,CAC1B,GAAI,oBAAsB8B,EAASJ,KACjC,OAAOG,EACLR,EAAgBS,GAChBC,EACAC,EACAC,EACAnD,GAEJiD,EAAQc,OAAOf,GACf,MAAM/C,MACJ,mDACG,oBAAsBgD,EACnB,qBAAuB/F,OAAO8G,KAAKhB,GAAUiB,KAAK,MAAQ,IAC1DhB,GACJ,4EAER,CACE,OAAOG,CACT,CACA,SAASc,EAAYlB,EAAUmB,EAAM1E,GACnC,GAAI,MAAQuD,EAAU,OAAOA,EAC7B,IAAIoB,EAAS,GACXC,EAAQ,EACVtB,EAAaC,EAAUoB,EAAQ,GAAI,IAAI,SAAUE,GAC/C,OAAOH,EAAKP,KAAKnE,EAAS6E,EAAOD,IACrC,IACE,OAAOD,CACT,CACA,SAASG,EAAgBC,GACvB,IAAK,IAAMA,EAAQC,QAAS,CAC1B,IAAIC,EAAOF,EAAQG,QACnBD,EAAOA,IACPA,EAAK9B,MACH,SAAUgC,GACR,GAAI,IAAMJ,EAAQC,UAAY,IAAMD,EAAQC,QACzCD,EAAQC,QAAU,EAAKD,EAAQG,QAAUC,CACpD,IACM,SAAU9B,GACR,GAAI,IAAM0B,EAAQC,UAAY,IAAMD,EAAQC,QACzCD,EAAQC,QAAU,EAAKD,EAAQG,QAAU7B,CACpD,KAEK,IAAM0B,EAAQC,UAAaD,EAAQC,QAAU,EAAKD,EAAQG,QAAUD,EACzE,CACE,GAAI,IAAMF,EAAQC,QAAS,OAAOD,EAAQG,QAAQE,QAClD,MAAML,EAAQG,OAChB,CACA,IAAIG,EACF,oBAAsBC,YAClBA,YACA,SAAUjC,GACR,GACE,kBAAoBkC,QACpB,oBAAsBA,OAAOC,WAC7B,CACA,IAAIC,EAAQ,IAAIF,OAAOC,WAAW,QAAS,CACzCE,SAAU,EACVC,YAAa,EACbC,QACE,kBAAoBvC,GACpB,OAASA,GACT,kBAAoBA,EAAMuC,QACtBtB,OAAOjB,EAAMuC,SACbtB,OAAOjB,GACbA,MAAOA,IAET,IAAKkC,OAAOM,cAAcJ,GAAQ,MAC5C,MAAe,GACL,kBAAoBK,SACpB,oBAAsBA,QAAQC,KAC9B,CACAD,QAAQC,KAAK,oBAAqB1C,GAClC,MACV,CACQ2C,QAAQ3C,MAAMA,EACtB,EACA,SAAS4C,IAAO,C,WACG,CACjBC,IAAKzB,EACL5G,QAAS,SAAU0F,EAAU4C,EAAaC,GACxC3B,EACElB,GACA,WACE4C,EAAYE,MAAMnG,KAAMoG,UAChC,GACMF,EAEN,EACExB,MAAO,SAAUrB,GACf,IAAIgD,EAAI,EACR9B,EAAYlB,GAAU,WACpBgD,GACN,IACI,OAAOA,CACX,EACEC,QAAS,SAAUjD,GACjB,OACEkB,EAAYlB,GAAU,SAAUsB,GAC9B,OAAOA,CACf,KAAY,EAEZ,EACE4B,KAAM,SAAUlD,GACd,IAAKpB,EAAeoB,GAClB,MAAM/C,MACJ,yEAEJ,OAAO+C,CACX,G,YAEoBzD,E,WACDnB,E,WACAE,E,gBACK8B,E,aACH/B,E,WACFK,E,kEAEjBiC,E,MACY,WACZ,MAAMV,MAAM,2DACd,E,QACgB,SAAUkG,GACxB,OAAO,WACL,OAAOA,EAAGL,MAAM,KAAMC,UAC1B,CACA,E,eACuB,SAAU5D,EAASiE,EAAQpD,GAChD,GAAI,OAASb,QAAgB,IAAMA,EACjC,MAAMlC,MACJ,wDAA0DkC,EAAU,KAExE,IAAI3C,EAAQnC,EAAO,GAAI8E,EAAQ3C,OAC7B2B,EAAMgB,EAAQhB,IACdG,OAAa,EACf,GAAI,MAAQ8E,EACV,IAAKC,UAAkB,IAAMD,EAAO7E,MAAQD,OAAa,QACpD,IAAM8E,EAAOjF,MAAQA,EAAM,GAAKiF,EAAOjF,KAC5CiF,GACGpF,EAAe4C,KAAKwC,EAAQC,IAC3B,QAAUA,GACV,WAAaA,GACb,aAAeA,GACd,QAAUA,QAAiB,IAAMD,EAAO7E,MACxC/B,EAAM6G,GAAYD,EAAOC,IAChC,IAAIA,EAAWN,UAAUpC,OAAS,EAClC,GAAI,IAAM0C,EAAU7G,EAAMwD,SAAWA,OAChC,GAAI,EAAIqD,EAAU,CACrB,IAAK,IAAIC,EAAa7F,MAAM4F,GAAW3C,EAAI,EAAGA,EAAI2C,EAAU3C,IAC1D4C,EAAW5C,GAAKqC,UAAUrC,EAAI,GAChClE,EAAMwD,SAAWsD,CACrB,CACE,OAAOrF,EAAakB,EAAQjB,KAAMC,OAAU,OAAQ,EAAGG,EAAO9B,EAChE,E,gBACwB,SAAU+G,GAChCA,EAAe,CACb/E,SAAUhD,EACVgI,cAAeD,EACfE,eAAgBF,EAChBG,aAAc,EACdC,SAAU,KACVC,SAAU,MAEZL,EAAaI,SAAWJ,EACxBA,EAAaK,SAAW,CACtBpF,SAAUjD,EACVsI,SAAUN,GAEZ,OAAOA,CACT,E,gBACwB,SAAUrF,EAAMkF,EAAQpD,GAC9C,IAAIqD,EACF7G,EAAQ,GACR2B,EAAM,KACR,GAAI,MAAQiF,EACV,IAAKC,UAAkB,IAAMD,EAAOjF,MAAQA,EAAM,GAAKiF,EAAOjF,KAAMiF,EAClEpF,EAAe4C,KAAKwC,EAAQC,IAC1B,QAAUA,GACV,WAAaA,GACb,aAAeA,IACd7G,EAAM6G,GAAYD,EAAOC,IAChC,IAAIS,EAAiBf,UAAUpC,OAAS,EACxC,GAAI,IAAMmD,EAAgBtH,EAAMwD,SAAWA,OACtC,GAAI,EAAI8D,EAAgB,CAC3B,IAAK,IAAIR,EAAa7F,MAAMqG,GAAiBpD,EAAI,EAAGA,EAAIoD,EAAgBpD,IACtE4C,EAAW5C,GAAKqC,UAAUrC,EAAI,GAChClE,EAAMwD,SAAWsD,CACrB,CACE,GAAIpF,GAAQA,EAAK6F,aACf,IAAKV,KAAcS,EAAiB5F,EAAK6F,aAAeD,OACjD,IAAMtH,EAAM6G,KACd7G,EAAM6G,GAAYS,EAAeT,IACxC,OAAOpF,EAAaC,EAAMC,OAAU,OAAQ,EAAG,KAAM3B,EACvD,E,YACoB,WAClB,MAAO,CAAEwH,QAAS,KACpB,E,aACqB,SAAUC,GAC7B,MAAO,CAAEzF,SAAU/C,EAAwBwI,OAAQA,EACrD,E,iBACyBrF,E,OACV,SAAU8C,GACvB,MAAO,CACLlD,SAAU5C,EACV0E,SAAU,CAAEmB,SAAU,EAAGE,QAASD,GAClCrB,MAAOkB,EAEX,E,OACe,SAAUrD,EAAMgG,GAC7B,MAAO,CACL1F,SAAU7C,EACVuC,KAAMA,EACNgG,aAAc,IAAMA,EAAU,KAAOA,EAEzC,E,kBAC0B,SAAUC,GAClC,IAAIC,EAAiBzG,EAAqBG,EACxCuG,EAAoB,GACtB1G,EAAqBG,EAAIuG,EACzB,IACE,IAAIC,EAAcH,IAChBI,EAA0B5G,EAAqBI,EACjD,OAASwG,GACPA,EAAwBF,EAAmBC,GAC7C,kBAAoBA,GAClB,OAASA,GACT,oBAAsBA,EAAY1E,MAClC0E,EAAY1E,KAAK8C,EAAMZ,EAC7B,CAAI,MAAOhC,GACPgC,EAAkBhC,EACtB,CAAG,QACCnC,EAAqBG,EAAIsG,CAC7B,CACA,E,2BACmC,WACjC,OAAOzG,EAAqBC,EAAE4G,iBAChC,E,MACc,SAAUC,GACtB,OAAO9G,EAAqBC,EAAE8G,IAAID,EACpC,E,iBACyB,SAAUE,EAAQjK,EAAckK,GACvD,OAAOjH,EAAqBC,EAAEiH,eAAeF,EAAQjK,EAAckK,EACrE,E,cACsB,SAAU5H,EAAU8H,GACxC,OAAOnH,EAAqBC,EAAEmH,YAAY/H,EAAU8H,EACtD,E,aACqB,SAAUE,GAC7B,OAAOrH,EAAqBC,EAAEqH,WAAWD,EAC3C,E,gBACwB,WAAY,E,mBACT,SAAUtF,EAAOwF,GAC1C,OAAOvH,EAAqBC,EAAEuH,iBAAiBzF,EAAOwF,EACxD,E,YACoB,SAAUE,EAAQN,GACpC,OAAOnH,EAAqBC,EAAEyH,UAAUD,EAAQN,EAClD,E,QACgB,WACd,OAAOnH,EAAqBC,EAAE0H,OAChC,E,sBAC8B,SAAU/G,EAAK6G,EAAQN,GACnD,OAAOnH,EAAqBC,EAAE2H,oBAAoBhH,EAAK6G,EAAQN,EACjE,E,qBAC6B,SAAUM,EAAQN,GAC7C,OAAOnH,EAAqBC,EAAE4H,mBAAmBJ,EAAQN,EAC3D,E,kBAC0B,SAAUM,EAAQN,GAC1C,OAAOnH,EAAqBC,EAAE6H,gBAAgBL,EAAQN,EACxD,E,UACkB,SAAUM,EAAQN,GAClC,OAAOnH,EAAqBC,EAAE8H,QAAQN,EAAQN,EAChD,E,gBACwB,SAAUa,EAAaC,GAC7C,OAAOjI,EAAqBC,EAAEiI,cAAcF,EAAaC,EAC3D,E,aACqB,SAAUA,EAASE,EAAYC,GAClD,OAAOpI,EAAqBC,EAAEoI,WAAWJ,EAASE,EAAYC,EAChE,E,SACiB,SAAUb,GACzB,OAAOvH,EAAqBC,EAAEqI,OAAOf,EACvC,E,WACmB,SAAUxK,GAC3B,OAAOiD,EAAqBC,EAAEsI,SAASxL,EACzC,E,uBAC+B,SAC7BC,EACAwL,EACAC,GAEA,OAAOzI,EAAqBC,EAAEyI,qBAC5B1L,EACAwL,EACAC,EAEJ,E,gBACwB,WACtB,OAAOzI,EAAqBC,EAAE0I,eAChC,E,UACkB,SCvhByB,CACzCC,UAAiBC,CACnB,CCFA,IAAIC,EAAQD,UACZ,IAAIE,EAAUC,EAEd,MAAMC,EAAYC,GAAQA,EAC1B,SAASC,EAAShM,EAAKiM,EAAWH,GAChC,MAAMI,EAAQP,EAAMJ,qBAClBvL,EAAIH,WACJ,IAAMoM,EAASjM,EAAIN,cACnB,IAAMuM,EAASjM,EAAIL,qBAErBgM,EAAMQ,cAAcD,GACpB,OAAOA,CACT,CACA,MAAME,EAAcxN,IAClB,MAAMoB,EAAM4L,EAAQ3L,YAAYrB,GAChC,MAAMyN,EAAiBJ,GAAaD,EAAShM,EAAKiM,GAClD7M,OAAOG,OAAO8M,EAAerM,GAC7B,OAAOqM,CAAa,EAEtB,MAAM/B,EAAU1L,GAAgBA,EAAcwN,EAAWxN,GAAewN,E,SAEvD9B,E,WACE0B,G,YCtBnB,IAAIJ,EAAUF,EACd,IAAIY,EAAQT,EAIZzM,OAAO8G,KAAK0F,GAASpM,SAAQ,SAAU+M,GACtC,GAAIA,IAAM,YAAcnN,OAAO2C,UAAUmB,eAAe4C,KAAK0G,EAASD,GAAInN,OAAOqN,eAAeD,EAASD,EAAG,CAC3GG,WAAY,KACZC,IAAK,WAAc,OAAOf,EAAQW,EAAG,GAEvC,IACAnN,OAAO8G,KAAKoG,GAAO9M,SAAQ,SAAU+M,GACpC,GAAIA,IAAM,YAAcnN,OAAO2C,UAAUmB,eAAe4C,KAAK0G,EAASD,GAAInN,OAAOqN,eAAeD,EAASD,EAAG,CAC3GG,WAAY,KACZC,IAAK,WAAc,OAAOL,EAAMC,EAAG,GAErC,G,MClBA,IAAIK,EAAIxN,OAAOqN,eACf,IAAII,EAAI,CAAC3E,EAAG4E,EAAGC,IAAMD,KAAK5E,EAAI0E,EAAE1E,EAAG4E,EAAG,CAAEJ,YAAa,EAAGM,cAAe,EAAGC,UAAW,EAAGrI,MAAOmI,IAAO7E,EAAE4E,GAAKC,EAC7G,IAAIG,EAAI,CAAChF,EAAG4E,EAAGC,IAAMF,EAAE3E,SAAU4E,GAAK,SAAWA,EAAI,GAAKA,EAAGC,GAC7D,IAAII,EAAoB,CAAEjF,IAAOA,EAAEA,EAAEkF,MAAQ,GAAK,QAASlF,EAAEA,EAAEmF,KAAO,GAAK,OAAQnF,EAAEA,EAAEoF,KAAO,GAAK,OAAQpF,EAAEA,EAAEqF,MAAQ,GAAK,QAASrF,GAA7G,CAAiHiF,GAAK,IAC9I,MAAMK,EACJ,WAAAhL,CAAYsK,GACVI,EAAErL,KAAM,YACRqL,EAAErL,KAAM,gBACRA,KAAK4L,SAAWX,EAAEW,UAAY,EAAG5L,KAAK6L,aAAeZ,EAAEY,cAAgB7L,KAAK8L,gBAChF,CACE,gBAAAA,CAAiBb,EAAGC,GAClB,MAAO,IAAII,EAAEL,QAAO,IAAqBc,MAAQC,kBAAkBd,GACvE,CACE,KAAAe,CAAMhB,GACJjL,KAAK4L,UAAY,GAAK9F,QAAQoG,IAAIlM,KAAK6L,aAAa,EAAGZ,GAC3D,CACE,IAAAkB,CAAKlB,GACHjL,KAAK4L,UAAY,GAAK9F,QAAQqG,KAAKnM,KAAK6L,aAAa,EAAGZ,GAC5D,CACE,IAAAmB,CAAKnB,GACHjL,KAAK4L,UAAY,GAAK9F,QAAQsG,KAAKpM,KAAK6L,aAAa,EAAGZ,GAC5D,CACE,KAAA9H,CAAM8H,GACJjL,KAAK4L,UAAY,GAAK9F,QAAQ3C,MAAMnD,KAAK6L,aAAa,EAAGZ,GAC7D,CACE,GAAAiB,CAAIjB,EAAGC,GACL,OAAQD,GACN,KAAK,EACHjL,KAAKiM,MAAMf,GACX,MACF,KAAK,EACHlL,KAAKmM,KAAKjB,GACV,MACF,KAAK,EACHlL,KAAKoM,KAAKlB,GACV,MACF,KAAK,EACHlL,KAAKmD,MAAM+H,GACX,MAER,EAEA,SAASmB,GAAEhG,EAAG4E,EAAGC,EAAGoB,GAClB,OAAO,IAAKpB,IAAMA,EAAIqB,WAAU,SAASC,EAAGzI,GAC1C,SAAS0I,EAAEC,GACT,IACEC,EAAEL,EAAEpI,KAAKwI,GACjB,CAAQ,MAAOE,GACP7I,EAAE6I,EACV,CACA,CACI,SAAShJ,EAAE8I,GACT,IACEC,EAAEL,EAAEO,MAAMH,GAClB,CAAQ,MAAOE,GACP7I,EAAE6I,EACV,CACA,CACI,SAASD,EAAED,GACT,IAAIE,EACJF,EAAEvI,KAAOqI,EAAEE,EAAE3J,QAAU6J,EAAIF,EAAE3J,MAAO6J,aAAa1B,EAAI0B,EAAI,IAAI1B,GAAE,SAAS4B,GACtEA,EAAEF,EACV,KAAU3J,KAAKwJ,EAAG7I,EAClB,CACI+I,GAAGL,EAAIA,EAAEnG,MAAME,EAAG,KAAKnC,OAC3B,GACA,CACA,SAAS6I,GAAE1G,EAAG4E,GACZ,IAAIC,EAAGoB,EAAGE,EAAGzI,EAAG0I,EAAI,CAAEO,MAAO,EAAGC,KAAM,WACpC,GAAI,EAAIT,EAAE,GAAI,MAAMA,EAAE,GACtB,OAAOA,EAAE,EACb,EAAKU,KAAM,GAAIC,IAAK,IAClB,OAAOpJ,EAAI,CAAEG,KAAMN,EAAE,GAAIiJ,MAAOjJ,EAAE,GAAIwJ,OAAQxJ,EAAE,WAAatF,QAAU,aAAeyF,EAAEzF,OAAOa,UAAY,WACzG,OAAOa,IACX,GAAM+D,EACJ,SAASH,EAAE+I,GACT,OAAO,SAASD,GACd,OAAO,SAASE,GACd,GAAI1B,EAAG,MAAM,IAAImC,UAAU,mCAC3B,KAAOtJ,IAAMA,EAAI,EAAG6I,EAAE,KAAOH,EAAI,IAAKA,GAAK,IACzC,GAAIvB,EAAI,EAAGoB,IAAME,EAAI,EAAII,EAAE,GAAKN,EAAEc,OAASR,EAAE,GAAKN,EAAEO,SAAWL,EAAIF,EAAEc,SAAWZ,EAAEvI,KAAKqI,GAAI,GAAKA,EAAEpI,SAAWsI,EAAIA,EAAEvI,KAAKqI,EAAGM,EAAE,KAAKzI,KAAM,OAAOqI,EAC/I,OAAQF,EAAI,EAAGE,IAAMI,EAAI,CAAC,EAAIA,EAAE,GAAIJ,EAAEzJ,QAAS6J,EAAE,IAC/C,KAAK,EACL,KAAK,EACHJ,EAAII,EACJ,MACF,KAAK,EACH,OAAOH,EAAEO,QAAS,CAAEjK,MAAO6J,EAAE,GAAIzI,MAAO,GAC1C,KAAK,EACHsI,EAAEO,QAASV,EAAIM,EAAE,GAAIA,EAAI,CAAC,GAC1B,SACF,KAAK,EACHA,EAAIH,EAAEU,IAAIG,MAAOb,EAAES,KAAKI,MACxB,SACF,QACE,GAAId,EAAIC,EAAES,QAASV,EAAIA,EAAExI,OAAS,GAAKwI,EAAEA,EAAExI,OAAS,KAAO4I,EAAE,KAAO,GAAKA,EAAE,KAAO,GAAI,CACpFH,EAAI,EACJ,QAChB,CACc,GAAIG,EAAE,KAAO,KAAOJ,GAAKI,EAAE,GAAKJ,EAAE,IAAMI,EAAE,GAAKJ,EAAE,IAAK,CACpDC,EAAEO,MAAQJ,EAAE,GACZ,KAChB,CACc,GAAIA,EAAE,KAAO,GAAKH,EAAEO,MAAQR,EAAE,GAAI,CAChCC,EAAEO,MAAQR,EAAE,GAAIA,EAAII,EACpB,KAChB,CACc,GAAIJ,GAAKC,EAAEO,MAAQR,EAAE,GAAI,CACvBC,EAAEO,MAAQR,EAAE,GAAIC,EAAEU,IAAItJ,KAAK+I,GAC3B,KAChB,CACcJ,EAAE,IAAMC,EAAEU,IAAIG,MAAOb,EAAES,KAAKI,MAC5B,SAEJV,EAAI3B,EAAEhH,KAAKoC,EAAGoG,EACxB,CAAU,MAAOK,GACPF,EAAI,CAAC,EAAGE,GAAIR,EAAI,CAC1B,CAAS,QACCpB,EAAIsB,EAAI,CAClB,CACQ,GAAI,EAAII,EAAE,GAAI,MAAMA,EAAE,GACtB,MAAO,CAAE7J,MAAO6J,EAAE,GAAKA,EAAE,QAAU,EAAGzI,MAAO,EACrD,CA7Ca,CA6CL,CAACwI,EAAGD,GACZ,CACA,CACA,CACA,IAAItL,GAAI,CAAEmM,QAAS,IAAMC,GAAI,GAAIC,GAAI,CAAEC,QAAS,QAAUC,GAAI,SAAStH,EAAG4E,UACjE5F,OAAS,MAAQmI,GAAEnH,GAAK4E,EACjC,EAAG2C,GAAI,WACL,OAAOrQ,OAAOsQ,YAAYtQ,OAAOuQ,QAAQN,IAAGO,QAAO,SAAS1H,GAC1D,IAAI4E,EAAGC,EAAI7E,EAAE,GACb,WAAY4E,EAAI7J,IAAK,UAAY,EAAIA,GAAEmM,WAAa,MAAQtC,SAAW,IAAMA,EAAE+C,SAAS9C,GAC5F,IAAKlF,KAAI,SAASK,GACd,MAAO,CAACA,EAAE,IAAI,EAAIA,EAAE,MACxB,IACA,EACA,SAAS4H,GAAE5H,GACT,OAAOA,GAAKA,IAAM,GAAIA,EAAI6H,KAAKC,KAAK9H,EAAG,YAAaA,GAAKA,IAAM,GAAIA,EAAI6H,KAAKC,KAAK9H,EAAG,aAAcA,GAAKA,IAAM,MAAQ,CACvH,CACA,IAAI+H,GAAI,IAAIC,YAAY,CAAC,UAAW,WAAY,UAAW,aAC3D,SAASC,GAAEjI,EAAG4E,GACZ,OAAO5E,GAAK4E,EAAI5E,IAAM,GAAK4E,CAC7B,CACA,SAASsD,GAAElI,EAAG4E,GACZ,IAAIC,EACJ,GAAID,SAAW,IAAMA,EAAI,GAAIA,EAAIA,EAAI,EAAIA,EAAI,SAAU5E,GAAK,WAAa6E,EAAI7E,EAAGA,GAAI,IAAImI,aAAcC,OAAOvD,GAAGwD,UAAWrI,aAAasI,aAAc,MAAM,IAAItB,UAAU,4CAC1K,IAAIf,EAAI,IAAI+B,YAAY,CAACpD,EAAGA,EAAGA,EAAGA,KAClC,SAAUlH,EAAG0I,GACX,IAAK,IAAI7I,EAAIG,EAAE6K,WAAa,GAAK,EAAGjC,EAAI,IAAI0B,YAAYtK,EAAG,EAAG,EAAIH,GAAI8I,EAAI,EAAGA,EAAI9I,EAAG8I,IAAK,CACvF,IAAIE,EAAID,EAAEkC,SAAS,EAAInC,EAAG,GAAKA,EAAI,IACnCE,EAAE,GAAKsB,KAAKC,KAAKvB,EAAE,GAAIwB,GAAE,IAAKxB,EAAE,GAAK0B,GAAE1B,EAAE,GAAI,IAAKA,EAAE,GAAKsB,KAAKC,KAAKvB,EAAE,GAAIwB,GAAE,IAAK3B,EAAE,GAAKA,EAAE,GAAKG,EAAE,GAAIH,EAAE,GAAK6B,GAAE7B,EAAE,GAAI,IAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAIA,EAAE,GAAKyB,KAAKC,KAAK1B,EAAE,GAAI,GAAK,WAAYG,EAAE,GAAKsB,KAAKC,KAAKvB,EAAE,GAAIwB,GAAE,IAAKxB,EAAE,GAAK0B,GAAE1B,EAAE,GAAI,IAAKA,EAAE,GAAKsB,KAAKC,KAAKvB,EAAE,GAAIwB,GAAE,IAAK3B,EAAE,GAAKA,EAAE,GAAKG,EAAE,GAAIH,EAAE,GAAK6B,GAAE7B,EAAE,GAAI,IAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAIA,EAAE,GAAKyB,KAAKC,KAAK1B,EAAE,GAAI,GAAK,UAAWG,EAAE,GAAKsB,KAAKC,KAAKvB,EAAE,GAAIwB,GAAE,IAAKxB,EAAE,GAAK0B,GAAE1B,EAAE,GAAI,IAAKA,EAAE,GAAKsB,KAAKC,KAAKvB,EAAE,GAAIwB,GAAE,IAAK3B,EAAE,GAAKA,EAAE,GAAKG,EAAE,GAAIH,EAAE,GAAK6B,GAAE7B,EAAE,GAAI,IAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAIA,EAAE,GAAKyB,KAAKC,KAAK1B,EAAE,GAAI,GAAK,WAAYG,EAAE,GAAKsB,KAAKC,KAAKvB,EAAE,GAAIwB,GAAE,IAAKxB,EAAE,GAAK0B,GAAE1B,EAAE,GAAI,IAAKA,EAAE,GAAKsB,KAAKC,KAAKvB,EAAE,GAAIwB,GAAE,IAAK3B,EAAE,GAAKA,EAAE,GAAKG,EAAE,GAAIH,EAAE,GAAK6B,GAAE7B,EAAE,GAAI,IAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAIA,EAAE,GAAKyB,KAAKC,KAAK1B,EAAE,GAAI,GAAK,SACzsB,CACG,EALD,CAKGpG,EAAGiG,GAAI,SAASvI,EAAG0I,GACpB,IAAI7I,EAAIG,EAAE6K,WAAa,GAAK,EAAGjC,EAAI5I,EAAE6K,WAAa,GAAIlC,EAAI,IAAI2B,YAAY,GAAIzB,EAAI,IAAIkC,WAAW/K,EAAG,GAAKH,EAAG+I,GAC5G,OAAQA,GACN,KAAK,GACHD,EAAE,GAAKA,EAAE,GAAKE,EAAE,KAAO,GACzB,KAAK,GACHF,EAAE,GAAKA,EAAE,GAAKE,EAAE,KAAO,EACzB,KAAK,GACHF,EAAE,GAAKA,EAAE,GAAKE,EAAE,KAAO,EAAGF,EAAE,GAAKwB,KAAKC,KAAKzB,EAAE,GAAI0B,GAAE,IAAK1B,EAAE,GAAK4B,GAAE5B,EAAE,GAAI,IAAKA,EAAE,GAAKwB,KAAKC,KAAKzB,EAAE,GAAI0B,GAAE,IAAK3B,EAAE,GAAKA,EAAE,GAAKC,EAAE,GAC5H,KAAK,GACHA,EAAE,GAAKA,EAAE,GAAKE,EAAE,KAAO,GACzB,KAAK,GACHF,EAAE,GAAKA,EAAE,GAAKE,EAAE,KAAO,GACzB,KAAK,GACHF,EAAE,GAAKA,EAAE,GAAKE,EAAE,IAAM,EACxB,KAAK,EACHF,EAAE,GAAKA,EAAE,GAAKE,EAAE,IAAM,EAAGF,EAAE,GAAKwB,KAAKC,KAAKzB,EAAE,GAAI0B,GAAE,IAAK1B,EAAE,GAAK4B,GAAE5B,EAAE,GAAI,IAAKA,EAAE,GAAKwB,KAAKC,KAAKzB,EAAE,GAAI0B,GAAE,IAAK3B,EAAE,GAAKA,EAAE,GAAKC,EAAE,GAC3H,KAAK,EACHA,EAAE,GAAKA,EAAE,GAAKE,EAAE,IAAM,GACxB,KAAK,EACHF,EAAE,GAAKA,EAAE,GAAKE,EAAE,IAAM,GACxB,KAAK,EACHF,EAAE,GAAKA,EAAE,GAAKE,EAAE,IAAM,EACxB,KAAK,EACHF,EAAE,GAAKA,EAAE,GAAKE,EAAE,IAAM,EAAGF,EAAE,GAAKwB,KAAKC,KAAKzB,EAAE,GAAI0B,GAAE,IAAK1B,EAAE,GAAK4B,GAAE5B,EAAE,GAAI,IAAKA,EAAE,GAAKwB,KAAKC,KAAKzB,EAAE,GAAI0B,GAAE,IAAK3B,EAAE,GAAKA,EAAE,GAAKC,EAAE,GAC3H,KAAK,EACHA,EAAE,GAAKA,EAAE,GAAKE,EAAE,IAAM,GACxB,KAAK,EACHF,EAAE,GAAKA,EAAE,GAAKE,EAAE,IAAM,GACxB,KAAK,EACHF,EAAE,GAAKA,EAAE,GAAKE,EAAE,IAAM,EACxB,KAAK,EACHF,EAAE,GAAKA,EAAE,GAAKE,EAAE,IAAM,EAAGF,EAAE,GAAKwB,KAAKC,KAAKzB,EAAE,GAAI0B,GAAE,IAAK1B,EAAE,GAAK4B,GAAE5B,EAAE,GAAI,IAAKA,EAAE,GAAKwB,KAAKC,KAAKzB,EAAE,GAAI0B,GAAE,IAAK3B,EAAE,GAAKA,EAAE,GAAKC,EAAE,GAEjI,CAlCY,CAkCRrG,EAAGiG,GAAI,SAASvI,EAAG0I,GACnBA,EAAE,GAAKA,EAAE,GAAK1I,EAAE6K,WAAYnC,EAAE,GAAKA,EAAE,GAAK1I,EAAE6K,WAAYnC,EAAE,GAAKA,EAAE,GAAK1I,EAAE6K,WAAYnC,EAAE,GAAKA,EAAE,GAAK1I,EAAE6K,WAAYnC,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,EAAGA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,EAAGA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,EAAGA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,EAAGA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,EAAGA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,EAAGA,EAAE,GAAKwB,GAAExB,EAAE,IAAKA,EAAE,GAAKwB,GAAExB,EAAE,IAAKA,EAAE,GAAKwB,GAAExB,EAAE,IAAKA,EAAE,GAAKwB,GAAExB,EAAE,IAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,EAAGA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,EAAGA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,EAAGA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,EAAGA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,EAAGA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,CACjd,CAFW,CAEPpG,EAAGiG,GACL,IAAIE,EAAI,IAAIsC,WAAWxC,EAAEoC,QACzB,OAAO5N,MAAMiO,KAAKvC,GAAGxG,KAAI,SAASjC,GAChC,OAAOA,EAAErB,SAAS,IAAIsM,SAAS,EAAG,IACtC,IAAK1K,KAAK,GACV,CACA,SAAS2K,GAAE5I,EAAG4E,GACZ,OAAO,IAAIsB,SAAQ,SAASrB,GAC1BgE,YAAW,WACT,OAAOhE,EAAED,EACf,GAAO5E,EACP,GACA,CACA,SAAS8I,GAAE9I,EAAG4E,EAAGC,GACf,OAAOqB,QAAQ6C,IAAI/I,EAAEL,KAAI,SAASsG,GAChC,OAAOC,QAAQ8C,KAAK,CAAC/C,EAAG2C,GAAEhE,EAAGC,IACjC,IACA,CACA,SAASoE,KACP,OAAOjD,GAAErM,UAAW,OAAQ,GAAG,WAC7B,IAAIqG,EAAG4E,EAAGC,EAAGoB,EAAGE,EAChB,OAAOO,GAAE/M,MAAM,SAAS+D,GACtB,OAAQA,EAAEiJ,OACR,KAAK,EACH,OAAOjJ,EAAEmJ,KAAKrJ,KAAK,CAAC,EAAG,EAAC,CAAI,IAAKwC,EAAIuH,KAAK3C,EAAI1N,OAAO8G,KAAKgC,GAAI,CAAC,EAAG8I,GAAE5R,OAAOgS,OAAOlJ,IAAKjF,IAAK,UAAY,EAAIA,GAAEsM,UAAY,IAAKD,KACjI,KAAK,EACH,OAAOvC,EAAInH,EAAEkJ,OAAQX,EAAIpB,EAAE6C,QAAO,SAAStB,GACzC,OAAOA,SAAW,CAC9B,IAAcD,EAAI,GAAIF,EAAE3O,SAAQ,SAAS8O,EAAG7I,GAChC4I,EAAEvB,EAAErH,IAAM6I,CACtB,IAAc,CAAC,EAAG+C,GAAEhD,EAAGpL,GAAEmM,SAAW,KAC5B,KAAK,EACH,MAAMxJ,EAAEkJ,OACV,KAAK,EACH,MAAO,CAAC,GAElB,GACA,GACA,CACA,SAASuC,GAAEnJ,EAAG4E,GACZ,IAAIC,EAAI,GAAIoB,EAAI,SAASvI,GACvB,GAAIsC,EAAEhF,eAAe0C,GAAI,CACvB,IAAI0I,EAAIpG,EAAEtC,GACV,UAAW0I,GAAK,UAAY3L,MAAMC,QAAQ0L,GAAIxB,EAAE+C,SAASjK,KAAOmH,EAAEnH,GAAK0I,OAClE,CACH,IAAI7I,EAAI4L,GAAE/C,EAAGxB,EAAEjF,KAAI,SAAS2G,GAC1B,OAAOA,EAAE8C,WAAW1L,EAAI,KAAO4I,EAAEtC,MAAMtG,EAAEC,OAAS,GAAK2I,CACjE,KACQpP,OAAO8G,KAAKT,GAAGI,OAAS,IAAMkH,EAAEnH,GAAKH,EAC7C,CACA,CACA,EACE,IAAK,IAAI4I,KAAKnG,EAAGiG,EAAEE,GACnB,OAAOtB,CACT,CACA,SAASwE,GAAErJ,GACT,OAAOgG,GAAErM,UAAW,OAAQ,GAAG,WAC7B,IAAIiL,EAAGC,EACP,OAAO6B,GAAE/M,MAAM,SAASsM,GACtB,OAAQA,EAAEU,OACR,KAAK,EACH,OAAOV,EAAEY,KAAKrJ,KAAK,CAAC,EAAG,EAAC,CAAI,IAAK,CAAC,EAAGyL,MACvC,KAAK,EACH,OAAOrE,EAAIqB,EAAEW,OAAQ/B,EAAIqD,GAAEoB,KAAKC,UAAU3E,IAAK,CAAC,EAAGC,EAAExI,YACvD,KAAK,EACH,MAAM4J,EAAEW,OACV,KAAK,EACH,MAAO,CAAC,GAElB,GACA,GACA,CACA,SAAShM,GAAEoF,GACT,IAAK,IAAI4E,EAAI,EAAGC,EAAI,EAAGA,EAAI7E,EAAErC,SAAUkH,EAAGD,GAAKiD,KAAK2B,IAAIxJ,EAAE6E,IAC1D,OAAOD,CACT,CACA,SAAS6E,GAAEzJ,EAAG4E,EAAGC,GACf,IAAK,IAAIoB,EAAI,GAAIE,EAAI,EAAGA,EAAInG,EAAE,GAAG0J,KAAK/L,OAAQwI,IAAK,CACjD,IAAK,IAAIzI,EAAI,GAAI0I,EAAI,EAAGA,EAAIpG,EAAErC,OAAQyI,IAAK1I,EAAEF,KAAKwC,EAAEoG,GAAGsD,KAAKvD,IAC5DF,EAAEzI,KAAKmM,GAAEjM,GACb,CACE,IAAIH,EAAI,IAAIqM,kBAAkB3D,GAC9B,OAAO,IAAI4D,UAAUtM,EAAGqH,EAAGC,EAC7B,CACA,SAAS8E,GAAE3J,GACT,GAAIA,EAAErC,SAAW,EAAG,OAAO,EAC3B,IAAK,IAAIiH,EAAI,GAAIC,EAAI,EAAGoB,EAAIjG,EAAG6E,EAAIoB,EAAEtI,OAAQkH,IAC3CD,EAAElH,EAAIuI,EAAEpB,KAAOD,EAAElH,IAAM,GAAK,EAC9B,IAAIyI,EAAInG,EAAE,GACV,IAAK,IAAItC,KAAKkH,EAAGA,EAAElH,GAAKkH,EAAEuB,KAAOA,EAAI2D,SAASpM,EAAG,KACjD,OAAOyI,CACT,CACA,SAAS4D,KACP,UAAWC,UAAY,IAAK,MAAO,CAAEC,KAAM,UAAWC,QAAS,WAC/D,IAAK,IAAIlK,EAAIgK,UAAUG,UAAWvF,EAAI,CAAEwF,IAAK,OAAQC,IAAK,SAAWxF,EAAI,EAAGoB,EAAI,CAAC,+CAAgD,kFAAmF,4EAA6E,6CAA8C,6DAA8D,gDAAiD,sDAAuDpB,EAAIoB,EAAEtI,OAAQkH,IAAK,CACtgB,IAAIsB,EAAIF,EAAEpB,GAAInH,EAAIsC,EAAEhE,MAAMmK,GAC1B,GAAIzI,GAAKA,EAAE4M,OAAQ,MAAO,CAAEL,KAAMrF,EAAElH,EAAE4M,OAAOL,OAASvM,EAAE4M,OAAOL,KAAMC,QAASxM,EAAE4M,OAAOJ,QAC3F,CACE,MAAO,CAAED,KAAM,UAAWC,QAAS,UACrC,CACA5C,GAAE,SAAS,WACT,OAAOtB,GAAErM,UAAW,OAAQ,GAAG,WAC7B,OAAO+M,GAAE/M,MAAM,SAASqG,GACtB,MAAO,CAAC,EAAG,IAAIkG,SAAQ,SAAStB,EAAGC,GACjC,IACE,IAAIoB,EAAI,IAAKjH,OAAOuL,qBAAuBvL,OAAOwL,2BAA2B,EAAG,IAAK,OAAQrE,EAAIF,EAAEwE,qBAAsB/M,EAAIuI,EAAEyE,mBAC/HhN,EAAEiN,UAAUjO,MAAQ,IACpB,IAAI0J,EAAG7I,EAAI0I,EAAE2E,2BACbrN,EAAEsN,UAAUnO,OAAS,GAAIa,EAAEuN,KAAKpO,MAAQ,GAAIa,EAAEwN,MAAMrO,MAAQ,GAAIa,EAAEyN,OAAOtO,MAAQ,EAAGa,EAAE0N,QAAQvO,MAAQ,GAAKgB,EAAEwN,QAAQ3N,GAAIA,EAAE2N,QAAQjF,EAAEkF,aAAczN,EAAE0N,QAASnF,EAAEoF,WAAa,SAAS/E,GACpLF,EAAIE,EAAEgF,eAAeC,eAAe,GAAI3G,EAAE,CAAE4G,WAAY5Q,GAAEwL,GAAIqF,WAAY/N,EAAExC,KAAMwQ,YAAazF,EAAEkF,YAAYQ,gBAAiBC,iBAAkBzF,EAAEyF,kBAC9J,EAAa3F,EAAE4F,gBACf,CAAU,MAAOvF,GACP7G,QAAQ3C,MAAM,oCAAqCwJ,GAAIzB,EAAEyB,EACnE,CACA,IACA,GACA,GACA,IACA,IAAIwF,GAAI/B,KAAIE,OAAS,iBAAmB,EAAI,EAAGnP,GAAI,IAAKuJ,GAAI,GAC5D0F,KAAIE,MAAQ,WAAa3C,GAAE,UAAU,WACnC,OAAOyE,SAASC,cAAc,UAAUC,WAAW,MAAO,IAAI/F,SAAQ,SAASlG,GAC7E,IAAI4E,EAAInK,MAAMiO,KAAK,CAAE/K,OAAQmO,KAAK,WAChC,OAAO,WACL,IAAIjH,EAAIkH,SAASC,cAAc,UAAW/F,EAAIpB,EAAEoH,WAAW,MAC3D,IAAKhG,EAAG,OAAO,IAAI4D,UAAU,EAAG,GAChChF,EAAEqH,MAAQpR,GAAG+J,EAAEsH,OAAS9H,GACxB,IAAI8B,EAAIF,EAAEmG,qBAAqB,EAAG,EAAGvH,EAAEqH,MAAOrH,EAAEsH,QAChDhG,EAAEkG,aAAa,EAAG,OAAQlG,EAAEkG,aAAa,mBAAqB,UAAWlG,EAAEkG,aAAa,kBAAoB,UAAWlG,EAAEkG,aAAa,GAAK,SAAUlG,EAAEkG,aAAa,kBAAoB,QAASlG,EAAEkG,aAAa,kBAAoB,UAAWlG,EAAEkG,aAAa,EAAG,UAAWpG,EAAEqG,UAAYnG,EAAGF,EAAEsG,SAAS,EAAG,EAAG1H,EAAEqH,MAAOrH,EAAEsH,QACzT,IAAIzO,EAAI,yBACRuI,EAAEuG,KAAO,iBAAkBvG,EAAEqG,UAAY,QAASrG,EAAEwG,SAAS/O,GAAI,EAAG,IAAKuI,EAAEqG,UAAY,uBAAwBrG,EAAEwG,SAAS/O,GAAI,IAAK,MAAOuI,EAAEyG,YAAazG,EAAE0G,OAAO,EAAG,GAAI1G,EAAE2G,OAAO,EAAI/H,EAAEqH,MAAQ,EAAGrH,EAAEsH,QAASlG,EAAE4G,YAAc,QAAS5G,EAAE6G,UAAY,EAAG7G,EAAE8G,SAC1P,IAAI3G,EAAIH,EAAE+G,aAAa,EAAG,EAAGnI,EAAEqH,MAAOrH,EAAEsH,QACxC,OAAO/F,CACf,CAVa,EAWb,IACIpG,EAAE,CAAEiN,oBAAqB/E,GAAEuB,GAAE7E,EAAG9J,GAAGuJ,IAAGqF,KAAKrN,YAAYA,YAC3D,GACA,IACA,IAAI6Q,GAAGC,GAAI,CAAC,QAAS,cAAe,eAAgB,mBAAoB,QAAS,UAAW,SAAU,aAAc,SAAU,UAAW,UAAW,QAAS,UAAW,UAAW,iBAAkB,gBAAiB,aAAc,UAAW,cAAe,eAAgB,UAAW,UAAW,mBAAoB,gBAAiB,QAAS,aAAc,MAAO,YAAa,YAAa,yBAA0B,WAAY,SAAU,UAAW,YAAa,YAAa,SAAU,cAAe,eAAgB,QAAS,eAAgB,QAAS,OAAQ,SAAU,gBAAiB,iBAAkB,sBAAuB,UAAW,eAAgB,oBAAqB,aAAc,SAAU,YAAa,SAAU,cAAe,YAAa,SAAU,WAAY,SAAU,WAAY,WAAY,WAAY,UAAW,WAAY,UAAW,SAAU,cAAe,YAAa,WAAY,YAAa,SAAU,mBAAoB,WAAY,QAAS,cAAe,eAAgB,WAAY,OAAQ,kBAAmB,aAAc,SAAU,UAAW,QAAS,kBAAmB,gBAAiB,eAAgB,SAAU,eAAgB,UAAW,aAAcC,GAAI,CAAC,YAAa,aAAc,SACzrC,SAASC,GAAErN,EAAG4E,GACZ,IAAK5E,EAAG,MAAM,IAAI/F,MAAM,gCACxB,OAAe+F,EAAEwM,KAAO,QAAQc,OAAO1I,GAAI5E,EAAEuN,YAAY,cAAcrB,KACzE,CACA,SAASsB,KACP,IAAIxN,EAAG4E,EAAImH,SAASC,cAAc,UAAWnH,GAAK7E,EAAI4E,EAAEqH,WAAW,YAAc,MAAQjM,SAAW,EAAIA,EAAI4E,EAAEqH,WAAW,sBACzH,GAAIpH,GAAK,iBAAkBA,EAAG,IAC5B,IAAIoB,GAAKpB,EAAE4I,aAAa5I,EAAE6I,SAAW,IAAIrR,WAAY8J,GAAKtB,EAAE4I,aAAa5I,EAAE8I,WAAa,IAAItR,WAAYqB,EAAI,CAAEkQ,OAAQ3H,EAAG4H,SAAU1H,EAAG+D,SAAUrF,EAAE4I,aAAa5I,EAAEiJ,UAAY,IAAIzR,WAAY0R,wBAAyBlJ,EAAE4I,aAAa5I,EAAEmJ,2BAA6B,IAAI3R,YACxQ,IAAK8J,EAAExI,SAAWsI,EAAEtI,OAAQ,CAC1B,IAAIyI,EAAIvB,EAAEoJ,aAAa,6BACvB,GAAI7H,EAAG,CACL,IAAI7I,GAAKsH,EAAE4I,aAAarH,EAAE8H,wBAA0B,IAAI7R,WAAYiK,GAAKzB,EAAE4I,aAAarH,EAAE+H,0BAA4B,IAAI9R,WAC1HkB,IAAMG,EAAE0Q,eAAiB7Q,GAAI+I,IAAM5I,EAAE2Q,iBAAmB/H,EAChE,CACA,CACI,OAAO5I,CACX,CAAI,MACJ,CACE,MAAO,WACT,CACA,SAAS4Q,KACP,IAAItO,EAAI,IAAIuO,aAAa,GAAI3J,EAAI,IAAI6D,WAAWzI,EAAEqI,QAClD,OAAOrI,EAAE,GAAK,EAAI,EAAGA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAI4E,EAAE,EAC7C,CACA,SAAS4J,GAAExO,EAAG4E,GACZ,IAAIC,EAAI,GACR,OAAOD,EAAEtN,SAAQ,SAAS2O,GACxB,IAAIE,EAAI,SAASzI,GACf,GAAIA,EAAEC,SAAW,EAAG,OAAO,KAC3B,IAAIyI,EAAI,GACR1I,EAAEpG,SAAQ,SAAS+O,GACjB,IAAIE,EAAIxI,OAAOsI,GACfD,EAAEG,IAAMH,EAAEG,IAAM,GAAK,CAC7B,IACM,IAAIhJ,EAAIG,EAAE,GAAI4I,EAAI,EAClB,OAAOpP,OAAO8G,KAAKoI,GAAG9O,SAAQ,SAAS+O,GACrCD,EAAEC,GAAKC,IAAM/I,EAAI8I,EAAGC,EAAIF,EAAEC,GAClC,IAAU9I,CACV,CAXY,CAWNyC,EAAEL,KAAI,SAASjC,GACf,OAAOuI,KAAKvI,EAAIA,EAAEuI,QAAU,CAClC,IAAOyB,QAAO,SAAShK,GACjB,OAAOA,SAAW,CACxB,KACIyI,IAAMtB,EAAEoB,GAAKE,EACjB,IAAMtB,CACN,CACA,SAAS4J,KACP,IAAIzO,EAAI,GAAI4E,EAAI,CAAE,mBAAoB,CAAC,OAAQ,OAAQ,MAAO,OAAQ,SAAU,iBAAkB,YAAa,CAAC,QAAS,QAAS,cAAe,CAAC,OAAQ,SAAU,QAAS8J,QAAS,CAAC,OAAQ,SAAU,QAASC,MAAO,CAAC,QAAS,QAASC,OAAQ,CAAC,OAAQ,QAAS,kBAAmB,CAAC,WAAY,QAAS,yBAA0B,CAAC,SAAU,iBAAkB,+BAAgC,CAAC,SAAU,iBAAkBC,UAAW,CAAC,OAAQ,eAAgB,WAAY,gBAAiB,CAAC,SAAU,SAC/e,OAAO3X,OAAO8G,KAAK4G,GAAGtN,SAAQ,SAASuN,GACrCD,EAAEC,GAAGvN,SAAQ,SAAS2O,GACpB6I,WAAW,IAAIxB,OAAOzI,EAAG,MAAMyI,OAAOrH,EAAG,MAAM8I,SAAW/O,EAAExC,KAAK,GAAG8P,OAAOzI,EAAG,MAAMyI,OAAOrH,GACjG,GACA,IAAMjG,CACN,CACA,SAASgP,KACP,GAAIhQ,OAAOiQ,SAASC,WAAa,iBAAmBlQ,OAAOmQ,iBAAmB,WAAY,IACxF,IAAK,IAAInP,EAAIhB,OAAOmQ,gBAAgBC,gBAAiBxK,EAAI,GAAIA,EAAI,EAAGA,IAAK,GAAI5E,EAAE4E,GAAI,OAAOA,CAC9F,CAAI,MACA,OAAO,CACX,CACE,OAAO,CACT,CACAmF,KAAIE,MAAQ,WAAa3C,GAAE,SAAS,WAClC,IAAItH,EAAIrG,KACR,OAAO,IAAIuM,SAAQ,SAAStB,EAAGC,GAC7B,KACE,SAAUoB,GACR,IAAIE,EACJH,GAAErM,UAAW,OAAQ,GAAG,WACtB,IAAI+D,EAAG0I,EAAG7I,EACV,OAAOmJ,GAAE/M,MAAM,SAAS2M,GACtB,OAAQA,EAAEK,OACR,KAAK,EACH,OAAOoF,SAASsD,KAAO,CAAC,EAAG,GAAK,CAAC,GAAIhJ,EAAI,GAAI,IAAIH,SAAQ,SAASO,GAChE,OAAOoC,WAAWpC,EAAGJ,EAAGE,EAC1C,MACc,KAAK,EACH,OAAOD,EAAEM,OAAQ,CAAC,EAAG,GACvB,KAAK,EACH,IAAKlJ,EAAIqO,SAASC,cAAc,WAAWsD,aAAa,cAAe,MAAOlJ,EAAI1I,EAAE6R,OAAOC,YAAY,WAAY,SAAUpJ,EAAEoJ,YAAY,UAAW,QAAS,aAAcpJ,EAAEoJ,YAAY,aAAc,WAAYpJ,EAAEoJ,YAAY,SAAU,KAAMpJ,EAAEoJ,YAAY,UAAW,KAAM9R,EAAE+R,IAAM,cAAe1D,SAASsD,KAAKK,YAAYhS,KAAMH,EAAIG,EAAEiS,mBAAqBxJ,EAAIzI,EAAEkS,iBAAmB,MAAQzJ,SAAW,OAAS,EAAIA,EAAE4F,WAAY,MAAM,IAAI9R,MAAM,qCAC3b,OAAOgM,EAAE,CAAE4J,OAAQtS,IAAMsL,YAAW,WAClCkD,SAASsD,KAAKS,YAAYpS,EAC5C,GAAmB,GAAI,CAAC,GAEZ,IAAI2I,EAAGE,CACnB,GACA,GACO,EArBD,EAqBG,SAASN,GACV,IAAIE,EAAIF,EAAE4J,OACV,OAAO7J,GAAEhG,OAAQ,OAAQ,GAAG,WAC1B,IAAItC,EAAG0I,EAAG7I,EAAG+I,EACb,OAAOI,GAAE/M,MAAM,SAAS0M,GACtB,OAAO3I,EAAIyI,EAAE6F,cAAc,UAAW5F,EAAI1I,EAAEuO,WAAW,MAAO1O,EAAI6P,GAAEzN,KAAI,SAAS4G,GAC/E,OAAO8G,GAAEjH,EAAGG,EAC1B,IAAgBD,EAAI,GAAI6G,GAAE7V,SAAQ,SAASiP,GAC7B,IAAIE,EAAI4G,GAAEjH,EAAGG,GACbhJ,EAAEoK,SAASlB,KAAOH,EAAEC,GAAKE,EACvC,IAAgB7B,EAAE0B,GAAI,CAAC,EACvB,GACA,GACA,GACA,CAAM,MACAzB,EAAE,CAAE/H,MAAO,eACjB,CACA,GACA,IAAIwK,GAAE,YAAY,WAChB,OAAO,IAAIpB,SAAQ,SAASlG,EAAG4E,GAC7B,IAAIC,EAAImF,UAAU+F,oBAAsB,EAAI/F,UAAU+F,aAAe,EAAG9J,EAAIjH,OAAOgR,aAAehR,OAAOgR,YAAYC,OAASjR,OAAOgR,YAAYC,OAAS,EAC1JjQ,EAAE,CAAEkQ,UAAW1C,KAAK2C,aAAc7B,KAAKyB,aAAclL,EAAExI,YAAc,YAAa+T,gBAAiBnK,EAAEmK,iBAAmB,GAC5H,GACA,IAAI9I,GAAE,WAAW,WACf,OAAO,IAAIpB,SAAQ,SAASlG,GAC1BA,EAAE,CAAEqQ,UAAWrG,UAAUsG,SAAUC,SAAUC,KAAKC,iBAAiBC,kBAAkBC,UACzF,GACA,IAAIrJ,GAAE,eAAe,WACnB,OAAOtB,GAAErM,UAAW,OAAQ,GAAG,WAC7B,IAAIqG,EACJ,OAAO0G,GAAE/M,MAAM,SAASiL,GACtB,OAAOsI,IAAKnS,IAAK,UAAY,EAAIA,GAAE6V,uBAAyB,CAAC,gBAAiB,gBAAiB,uBAAwB,uBAAwB,mBAAoB,kBAAmB,YAAa,SAAU,iBAAkB,kBAAmB,cAAe,kBAAmB,YAAa,cAAe,cAAe,eAAgB,aAAc,OAAQ,MAAO,gBAAiB,kBAAmB,qBAAsB,OAAQ,UAAW,iBAAkB,2BAA4B,oBAAqB,SAAU5Q,EAAIvF,MAAMiO,KAAK,CAAE/K,QAAS5C,IAAK,UAAY,EAAIA,GAAE8V,UAAY,IAAK,WACtkB,OAAO,WACL,OAAO7K,GAAErM,UAAW,OAAQ,GAAG,WAC7B,IAAIkL,EAAGoB,EAAGE,EAAGzI,EAAG0I,EAChB,OAAOM,GAAE/M,MAAM,SAAS4D,GACtB,OAAQA,EAAEoJ,OACR,KAAK,EACH9B,EAAI,GAAIoB,EAAI,EAAGE,EAAI+G,GAAG3P,EAAEoJ,MAAQ,EAClC,KAAK,EACH,KAAMV,EAAIE,EAAExI,QAAS,MAAO,CAAC,EAAG,GAChCD,EAAIyI,EAAEF,GAAI1I,EAAEoJ,MAAQ,EACtB,KAAK,EACH,OAAOpJ,EAAEsJ,KAAKrJ,KAAK,CAAC,EAAG,EAAC,CAAI,IAAK,CAAC,EAAGwM,UAAU8G,YAAYC,MAAM,CAAE9G,KAAMvM,KAC3E,KAAK,EACH,OAAO0I,EAAI7I,EAAEqJ,OAAQ/B,EAAEnH,GAAK0I,EAAEzP,MAAM0F,WAAY,CAAC,EAAG,GACtD,KAAK,EACH,OAAOkB,EAAEqJ,OAAQ,CAAC,EAAG,GACvB,KAAK,EACH,OAAOX,IAAK,CAAC,EAAG,GAClB,KAAK,EACH,MAAO,CAAC,EAAGpB,GAE7B,GACA,GACA,CAvBe,EAwBf,IAAU,CAAC,EAAGqB,QAAQ6C,IAAI/I,GAAGpD,MAAK,SAASiI,GACnC,OAAO2J,GAAE3J,EAAGqI,GACpB,IACA,GACA,GACA,IAAI5F,GAAE,WAAW,WACf,IAAItH,EAAI,GACR,GAAIgK,UAAUgH,QAAS,IAAK,IAAIpM,EAAI,EAAGA,EAAIoF,UAAUgH,QAAQrT,OAAQiH,IAAK,CACxE,IAAIC,EAAImF,UAAUgH,QAAQpM,GAC1B5E,EAAExC,KAAK,CAACqH,EAAEoF,KAAMpF,EAAEoM,SAAUpM,EAAEqM,aAAajT,KAAK,KACpD,CACE,OAAO,IAAIiI,SAAQ,SAASD,GAC1BA,EAAE,CAAE+K,QAAShR,GACjB,GACA,IAAIsH,GAAE,UAAU,WACd,OAAO,IAAIpB,SAAQ,SAASlG,GAC1BA,EAAE,CAAEmR,eAAgBnH,UAAUoH,eAAiB,EAAGA,eAAgBpH,UAAUoH,eAAgBC,WAAYC,OAAOD,WAAYE,aAAc9C,MAC7I,GACA,IAAInH,GAAE,UAAU,WACd,OAAO,IAAIpB,SAAQ,SAASlG,GAC1B,IAAI4E,EAAImF,KACR/J,EAAE,CAAEwR,SAAUxS,OAAOgL,UAAUwH,SAAUC,cAAezS,OAAOgL,UAAUyH,cAAeC,WAAY1H,UAAU0H,WAAYC,QAAS3H,UAAU2H,QAASC,UAAW5H,UAAUG,UAAW0H,oBAAqB7H,UAAU6H,oBAAqBC,QAAS,CAAE7H,KAAMrF,EAAEqF,KAAMC,QAAStF,EAAEsF,SAAW6H,gBAAiB/C,MAC9S,GACA,IACA,IAAIgD,GAAGC,GAAKlI,KAAIE,OAAS,iBAAmB,EAAI,EAAGiI,GAAI,KACvD5K,GAAE,SAAS,WACT,OAAOtB,GAAErM,UAAW,OAAQ,GAAG,WAC7B,IAAIqG,EACJ,OAAO0G,GAAE/M,MAAM,SAASiL,UACfmH,SAAW,OAASiG,GAAIjG,SAASC,cAAc,WAAWE,MAAQ,IAAK8F,GAAE7F,OAAS,IAAK+F,GAAIF,GAAE/F,WAAW,UAC/G,IACE,IAAKiG,GAAG,MAAM,IAAIjY,MAAM,uBACxB,OAAO+F,EAAIvF,MAAMiO,KAAK,CAAE/K,OAAQsU,KAAM,WACpC,OAAO,WACL,IACE,IAAKC,GAAG,MAAM,IAAIjY,MAAM,uBACxB,IAAI4K,EAAI,4IAKboB,EAAI,uKAKJE,EAAI+L,GAAEC,aAAaD,GAAEE,eAAgB1U,EAAIwU,GAAEC,aAAaD,GAAEG,iBACrD,IAAKlM,IAAMzI,EAAG,MAAM,IAAIzD,MAAM,4BAC9B,GAAIiY,GAAEI,aAAanM,EAAGtB,GAAIqN,GAAEI,aAAa5U,EAAGuI,GAAIiM,GAAEK,cAAcpM,IAAK+L,GAAEM,mBAAmBrM,EAAG+L,GAAEO,gBAAiB,MAAM,IAAIxY,MAAM,qCAAuCiY,GAAEQ,iBAAiBvM,IAC1L,GAAI+L,GAAEK,cAAc7U,IAAKwU,GAAEM,mBAAmB9U,EAAGwU,GAAEO,gBAAiB,MAAM,IAAIxY,MAAM,uCAAyCiY,GAAEQ,iBAAiBhV,IAChJ,IAAI0I,EAAI8L,GAAES,gBACV,IAAKvM,EAAG,MAAM,IAAInM,MAAM,mCACxB,GAAIiY,GAAEU,aAAaxM,EAAGD,GAAI+L,GAAEU,aAAaxM,EAAG1I,GAAIwU,GAAEW,YAAYzM,IAAK8L,GAAEY,oBAAoB1M,EAAG8L,GAAEa,aAAc,MAAM,IAAI9Y,MAAM,kCAAoCiY,GAAEc,kBAAkB5M,IACpL8L,GAAEe,WAAW7M,GACb,IAAK,IAAI7I,EAAI,IAAK+I,EAAI,IAAIiI,aAAa,EAAIhR,GAAI8I,EAAI,EAAIwB,KAAKqL,GAAK3V,EAAGgJ,EAAI,EAAGA,EAAIhJ,EAAGgJ,IAAK,CACrF,IAAIE,EAAIF,EAAIF,EACZC,EAAE,EAAIC,GAAK,EAAGD,EAAE,EAAIC,EAAI,GAAK,EAAGD,EAAE,EAAIC,EAAI,GAAKsB,KAAKsL,IAAI1M,IAAMuL,GAAE9F,MAAQ,GAAI5F,EAAE,EAAIC,EAAI,GAAKsB,KAAKuL,IAAI3M,IAAMuL,GAAE7F,OAAS,EACrI,CACc,IAAIkH,EAAInB,GAAEoB,eACVpB,GAAEqB,WAAWrB,GAAEsB,aAAcH,GAAInB,GAAEuB,WAAWvB,GAAEsB,aAAclN,EAAG4L,GAAEwB,aACnE,IAAIC,EAAIzB,GAAE0B,kBAAkBxN,EAAG,YAC/B8L,GAAE2B,wBAAwBF,GAAIzB,GAAE4B,oBAAoBH,EAAG,EAAGzB,GAAE6B,OAAQ,EAAG,EAAG,GAAI7B,GAAE8B,SAAS,EAAG,EAAGhC,GAAE9F,MAAO8F,GAAE7F,QAAS+F,GAAE+B,WAAW,EAAG,EAAG,EAAG,GAAI/B,GAAEgC,MAAMhC,GAAEiC,kBAAmBjC,GAAEkC,WAAWlC,GAAEmC,MAAO,EAAG,EAAI9W,GACvM,IAAI+W,EAAI,IAAI1K,kBAAkBoI,GAAE9F,MAAQ8F,GAAE7F,OAAS,GACnD,OAAO+F,GAAEqC,WAAW,EAAG,EAAGvC,GAAE9F,MAAO8F,GAAE7F,OAAQ+F,GAAEsC,KAAMtC,GAAEuC,cAAeH,GAAI,IAAIzK,UAAUyK,EAAGtC,GAAE9F,MAAO8F,GAAE7F,OACpH,CAAc,MACA,OAAO,IAAItC,UAAU,EAAG,EACtC,CAAa,QACCqI,KAAMA,GAAEqB,WAAWrB,GAAEsB,aAAc,MAAOtB,GAAEe,WAAW,MAAOf,GAAE8B,SAAS,EAAG,EAAG9B,GAAEwC,mBAAoBxC,GAAEyC,qBAAsBzC,GAAE+B,WAAW,EAAG,EAAG,EAAG,GACjK,CACA,CApCiB,EAqCjB,IAAY,CAAC,EAAG,CAAEW,gBAAiB1M,GAAEuB,GAAEzJ,EAAGgS,GAAE9F,MAAO8F,GAAE7F,QAAQzC,KAAKrN,YAAYA,YAC9E,CAAQ,MACA,MAAO,CAAC,EAAG,CAAEwY,MAAO,eAC5B,CACM,MAAO,CAAC,EACd,GACA,GACA,IACA,IAAIC,GAAI,SAAS9U,EAAG4E,EAAGC,EAAGoB,GACxB,IAAK,IAAIE,GAAKtB,EAAID,GAAKqB,EAAGvI,EAAI,EAAG0I,EAAI,EAAGA,EAAIH,EAAGG,IAC7C1I,GAAKsC,EAAE4E,GAAKwB,EAAI,IAAOD,GACzB,OAAOzI,EAAIyI,CACb,EACAmB,GAAE,QAAQ,WACR,OAAOtB,QAAO,OAAQ,OAAQ,GAAG,WAC/B,OAAOU,GAAE/M,MAAM,SAASqG,GACtB,MAAO,CAAC,EAAG,CAAE+U,KAAMlN,KAAKkN,KAAK,IAAMC,KAAMF,GAAEjN,KAAKmN,MAAO,EAAG,EAAG,IAAKC,KAAMH,GAAEjN,KAAKoN,MAAO,EAAG,EAAG,IAAK9B,IAAK2B,GAAEjN,KAAKsL,IAAK,EAAGtL,KAAKqL,GAAI,IAAKgC,KAAMrN,KAAKqN,KAAK,EAAI,GAAI9O,EAAGyB,KAAKkC,EAAGoL,SAAUtN,KAAKsL,IAAI,MAAOiC,SAAUvN,KAAKuL,IAAI,MAAOiC,SAAUxN,KAAKyN,IAAI,MAAOzP,IAAKgC,KAAKhC,IAAI,KAAM0P,GAAI1N,KAAKqL,GAAIE,IAAK0B,GAAEjN,KAAKuL,KAAMvL,KAAKqL,GAAIrL,KAAKqL,GAAI,IAAKsC,KAAMV,GAAEjN,KAAK2N,MAAO,EAAI,EAAG,EAAI,EAAG,IAAKC,KAAM5N,KAAK4N,KAAK,GAAIH,IAAKR,GAAEjN,KAAKyN,IAAK,EAAG,EAAIzN,KAAKqL,GAAI,IAAKwC,KAAMZ,GAAEjN,KAAK6N,MAAO,EAAI,EAAG,EAAI,EAAG,KACvc,GACA,GACA,IACA,MAAMC,GAAK,mEACX,IAAI9a,GAAI,CAACmF,EAAI,MACX,IAAI4E,EAAI,GAAIC,EAAI+Q,OAAOC,gBAAgB,IAAIpN,WAAWzI,GAAK,IAC3D,KAAOA,KACL4E,GAAK+Q,GAAG9Q,EAAE7E,GAAK,IACjB,OAAO4E,CAAC,EAEV,MAAMkR,GACJ,WAAAxb,CAAYsK,GACVI,EAAErL,KAAM,UACRA,KAAKyG,OAASwE,CAClB,CACE,2BAAMmR,CAAsBnR,GAC1B,MAAO,EACX,EAEA,MAAMoR,WAAWF,GAIf,2BAAMC,CAAsBnR,GAC1B,IAAKjL,KAAKyG,OAAO6V,OACf,OAAOxW,QAAQ3C,MAAM,kCAAmC,GAC1D,MAAMmJ,EAAI,sCAAsC,IAAIiQ,gBAAgB,CAClEC,QAAS,WACTC,KAAMzc,KAAKyG,OAAO6V,OAClBI,GAAIzR,EAAE0R,WACNhP,EAAG,MACHiP,IAAK,iBACL,aAAc,GAAG5c,KAAKyG,OAAOoW,mBAAqB,IAClD,aAAc,GAAG7c,KAAKyG,OAAOqW,sBAAwB,MACpDpa,aAAcqB,cAAiBgZ,MAAMzQ,EAAG,CAAE0Q,OAAQ,SAAUC,OAC/D,OAAO,IAAInc,OAAQ6S,OACjB5P,EAAEmZ,YAAYlX,KAAKpC,IAAC,CAClBuZ,KAAMjc,KACNK,KAAM,iBACN6b,MAAOxZ,OAET+P,OACA5P,EAAEsZ,SAASrX,KAAKpC,IAAC,CACfuZ,KAAMjc,KACNK,KAAM,cACN6b,MAAOxZ,MAGf,EAEA,MAAM0Z,WAAWnB,GACf,2BAAMC,CAAsBnR,GAC1B,MAAO,EACX,EAEA,MAAMsS,GAAK,IACX,MAAMC,GACJ,WAAA7c,CAAYsK,EAAGC,EAAGoB,GAChBjB,EAAErL,KAAM,yBACRqL,EAAErL,KAAM,yBAA0B,IAClCqL,EAAErL,KAAM,UACRqL,EAAErL,KAAM,WACRqL,EAAErL,KAAM,UACRqL,EAAErL,KAAM,aAQRqL,EAAErL,KAAM,oBAAoB,CAACiL,EAAGC,EAAI,GAAIoB,EAAI,MAC1C,MAAME,EAAI,CACRiR,WAAYxS,EACZyS,WAAY,CACVC,wBAAyB3d,KAAKyG,OAAOhE,MACrCmb,WAAY5d,KAAK6d,aACd3S,GAEL4S,KAAM,IACD9d,KAAK+d,sBACLzR,IAGPtM,KAAKge,uBAAuBna,KAAK2I,GAAIyR,aAAaje,KAAKke,uBAAwBle,KAAKke,sBAAwBhP,YAAWiP,UACrH,MAAMpa,EAAI4L,KAAKC,UAAU,CAAEwO,MAAOpe,KAAKge,yBAA2BvR,EAAI,GAAGzM,KAAKqe,uBAC9E,IACE,MAAMza,QAAUmZ,MAAMtQ,EAAG,CACvBuQ,OAAQ,OACRsB,QAAS,CACP,eAAgB,mBAChBC,cAAeve,KAAKyG,OAAO+X,QAC3B,eAAgBxe,KAAKye,QAEvB/I,KAAM3R,EACN2a,WAAY,IAEd,IAAK9a,EAAE+a,GACL,MAAM,IAAIre,MACR,2BAA2BsD,EAAEd,UAAUc,EAAEgb,cAE7C5e,KAAKge,uBAAyB,GAC9B,MACV,CAAU,MAAOpa,GACP,MAAMkC,QAAQ3C,MAAM,gCAAiCS,GAAIA,CACnE,IACS2Z,GAAG,IAERvd,KAAKyG,OAASwE,EAAGjL,KAAK6e,QAAU3T,EAAGlL,KAAKye,OAASnS,EAAGtM,KAAK6d,UAAY3c,KAAKlB,KAAK8e,iBAAiB,kBACpG,CAIE,kBAAIT,GACF,MAAO,GAAGre,KAAKyG,OAAOsY,qBAC1B,CAIE,sBAAIhB,GACF,MAAO,CACLiB,QAAShf,KAAKye,OACdQ,OAAQ5O,UAAUsG,UAAY,QAC9BuI,GAAI7O,UAAUG,UAAUxC,SAAS,WAAa,UAAYqC,UAAUG,UAAUxC,SAAS,OAAS,MAAQqC,UAAUG,UAAUxC,SAAS,SAAW,QAAU,UAC1J6J,SAAUxH,UAAUwH,UAAY,UAChCsH,SAAUnf,KAAK6e,QAAQO,QACvBC,YAAarf,KAAK6e,QAAQS,WAC1BC,WAAYlP,UAAUG,WAAa,UAEzC,EAEA,SAASgP,GAAGnZ,GACV,MAAM4E,EAAI,GACV,IAAIC,EAAI,SACR,OAAO7E,EAAEoZ,0BAA4BliB,OAAO8G,KAAKgC,EAAEoZ,0BAA0B9hB,SAAS2O,IACpF,IAAIvI,EACJ,MAAMyI,GAAKzI,EAAIsC,EAAEoZ,2BAA6B,UAAY,EAAI1b,EAAEuI,GAChEE,IAAMtB,EAAI,OAAQD,EAAEpH,KAAK,CACvB6b,MAAOxU,EACPyU,MAAO,CACLC,IAAKpT,EAAEzJ,SAER,IACDsD,EAAEwZ,0BAA4BtiB,OAAO8G,KAAKgC,EAAEwZ,0BAA0BliB,SAAS2O,IACjF,IAAIvI,EACJ,MAAMyI,GAAKzI,EAAIsC,EAAEwZ,2BAA6B,UAAY,EAAI9b,EAAEuI,GAChEE,IAAMtB,EAAI,OAAQD,EAAEpH,KAAK,CACvB6b,MAAOxU,EACPyU,MAAO,CACLC,IAAKpT,EAAEzJ,SAER,IACDsD,EAAEyZ,OAAS,OAASzZ,EAAE0Z,SAAW,iBAAmB1Z,EAAE0Z,SAAW,GAAI9U,EAAEpH,KAAK,CAC9E6b,MAAOxU,EAEP,CAAC7E,EAAE2Z,MAAO,CAAEJ,IAAKvZ,EAAEsW,cAEjB1R,CACN,CACA,MAAMgV,GAAM5Z,GAAMA,EAAE6Z,SAAS,KAAO7Z,EAAEgE,MAAM,GAAI,GAAKhE,EAAG8Z,GAAM9Z,IAC5D,IAAI4E,EAAI,GACR,GAAIA,EAAI5E,EAAE+Z,OAAQnV,EAAIA,EAAE5N,QAAQ,WAAYiP,IAAM,CAChD,IAAK,IACL,IAAK,IACL,IAAK,IACL,IAAK,KACJA,IAAMA,MAAKrB,EAAE5I,MAAM,OAAS,IAAI2B,OAAS,IAAM,EAChD,MAAM,IAAI1D,MACR,kEAEJ,OAAO2K,CAAC,EAEV,MAAMoV,GACJ,WAAA1f,CAAYsK,EAAGC,EAAGoB,GAChBjB,EAAErL,KAAM,iBACRqL,EAAErL,KAAM,UACRqL,EAAErL,KAAM,UAKRqL,EAAErL,KAAM,qBAAqBme,MAAOlT,IAClC,IAAIqB,EAAGE,EACP,MAAMtB,EAAIiV,GAAGlV,EAAE0R,aACdrQ,EAAItM,KAAKsgB,gBAAkB,MAAQhU,EAAEwS,iBAAiB,mBAAoB,CACzEyB,YAAarV,IAEf,IACE,MAAMnH,EAAI,CACRqT,MAAOoI,GAAGvU,GACVuV,OAAQvV,EAAEuV,QAAU,EAEpBC,MAAOxV,EAAEwV,OAASzgB,KAAKyG,OAAOia,sBAAwB,IAGxDzV,EAAE8U,WAAahc,EAAEgc,SAAW9U,EAAE8U,SAAUhc,EAAE+b,KAAO7U,EAAE6U,OAAS,QAAU7U,EAAE6U,OAAS,MAAQ7U,EAAE6U,KAAO,OAClG,MAAMrT,EAAI,CACRuQ,OAAQ,OACRsB,QAAS,CACPC,cAAeve,KAAKyG,OAAO+X,QAC3B,eAAgB,mBAChB,eAAgBxe,KAAKye,QAEvB/I,KAAM/F,KAAKC,UAAU7L,IACpBH,QAAUmZ,MAAM/c,KAAK2gB,cAAelU,GACvC,IAAK7I,EAAE+a,GACL,MAAM,IAAIre,MACR,UAAUsD,EAAEgb,uBAAuBhb,EAAEd,WAEzC,MAAM6J,QAAU/I,EAAEqZ,OAClB,OAAQzQ,EAAIxM,KAAKsgB,gBAAkB,MAAQ9T,EAAEsS,iBAAiB,2BAA4B,CACxFyB,YAAarV,EACb0V,oBAAqBjU,EAAEoD,KAAKrL,QAC1BiI,CACZ,CAAQ,MAAO5I,GACP,MAAM+B,QAAQ3C,MAAM,0BAA2BY,GAAIA,CAC3D,KAEI/D,KAAKsgB,cAAgBhU,EAAGtM,KAAKyG,OAASwE,EAAGjL,KAAKye,OAASvT,CAC3D,CAIE,iBAAIyV,GACF,MAAO,GAAG3gB,KAAKyG,OAAOsY,qBAAqB/e,KAAKyG,OAAOhE,MAAM6B,KAAK,aACtE,EAEA,MAAMuc,GACJ,WAAAlgB,CAAYsK,EAAGC,GACbG,EAAErL,KAAM,UACRqL,EAAErL,KAAM,iBACRqL,EAAErL,KAAM,gBACRqL,EAAErL,KAAM,YACRqL,EAAErL,KAAM,UACRqL,EAAErL,KAAM,kBAIRqL,EAAErL,KAAM,YAAY,CAACiL,EAAGC,EAAGoB,KACzB,MAAME,EAAI2R,UACR,WACE,IAAIva,EAAG+I,EACP,MAAM5I,SAAYH,EAAI5D,MAAQ,UAAY,EAAIA,KAAK8gB,eAAiB,UAAY,EAAIld,EAAEmd,kBAAkB9V,IACxG,IAAKlH,EACH,MAAM,IAAIzD,MAAM,sCAClB,MAAMmM,GAAKE,EAAI5I,EAAEgM,KAAKiR,MAAQ,KAAO,UAAY,EAAIrU,EAAE3G,KAAK0G,GAAMA,EAAEuU,MAAKlT,QAAQrB,KAAQA,IAAG1G,KAAK0G,IAAC,CAChGnL,KAAM,iBACN2f,GAAIhgB,KACJkR,SAAU1F,MAEZxB,EAAEnH,EAAG0I,EACN,EAXD,GAWM,WACJ,GAAIzM,KAAKmhB,SAAU,CACjB,MAAMpd,QAAU/D,KAAKmhB,SAAS/E,sBAAsBnR,GACpDqB,EAAEvI,EACd,CACS,EALK,EAKF,EAENka,aAAaje,KAAKohB,gBAAiBphB,KAAKyG,OAAO4a,oBAAsBrhB,KAAKohB,eAAiBlS,WACzF1C,EACAxM,KAAKyG,OAAO4a,qBACV7U,GAAG,IAET,IAAKvB,EAAE8T,cAAgB9T,EAAExI,QAAUwI,EAAEuT,QACnC,MAAM,IAAIle,MACR,+DAEJN,KAAKyG,OAAS,IACTwE,EAEH8T,YAAakB,GAAGhV,EAAE8T,cACjB/e,KAAKye,OAAS,GAAIze,KAAKshB,YAAYthB,KAAKyG,OAAQyE,EACvD,CACE,WAAAoW,CAAYrW,EAAGC,GACbgE,YAAWiP,UACT,IAAI7R,EAAItM,KAAKyG,OAAOgY,OACpB,OAAQnS,IAAMA,QAAUoD,MAAM1P,KAAKsgB,cAAgB,IAAI9C,GAAGvS,EAAGC,EAAGoB,GAAItM,KAAK8gB,aAAe,IAAIT,GAAGpV,EAAGqB,EAAGtM,KAAKsgB,eAAgBrV,EAAEsW,YAC1H,IAAK,gBACHvhB,KAAKmhB,SAAW,IAAI9E,GAAGpR,GACvB,MACF,IAAK,SACHjL,KAAKmhB,SAAW,IAAI7D,GAAGrS,GACvB,MACV,GACO,IACP,ECxzBA,MAAMuW,GAAwD,CAC5DC,sBAAuB,GACvBC,KAAMC,UACNC,OAAQD,UACRlC,yBAA0B,GAC1BoC,iBAAkB,MAClBlF,WAAY,GACZkD,yBAA0B,GAC1BiC,WAAY,QACZC,0BAA2B,GAC3BC,wBAAyBL,UACzBM,yBAA0BN,UAC1BO,mBAAoB,EACpBxB,qBAAsB,GACtByB,kBAAmB,EACnBC,SAAU,O,MAGNC,GAAsB5Z,UAAyB,CAAC6Z,EAAKxX,KACzD,MAAMyX,EAAuC,CAC3CC,2BAA6BzS,GAC3BuS,GAAKtlB,IAAK,CACRyiB,yBAA0B,IACrBziB,EAAMyiB,yBACT,CAAC1P,EAAK0S,WAAY1S,OAGxB2S,2BAA6B3S,GAC3BuS,GAAKtlB,IAAK,CACR6iB,yBAA0B,IACrB7iB,EAAM6iB,yBACT,CAAC9P,EAAK0S,WAAY1S,OAGxB4S,uBAAwB,KACtB,MAAMjB,KAAEA,GAAS5W,IACjB,OAAO4W,CAAI,EAEbkB,WAAY,CAACC,EAAqB5W,EAAQ,SACxC,MAAMyV,EAAOmB,EACb,MAAMjB,EAAS3V,EACX,IAAI6W,EAAO,CAAElX,SAAUmX,EAASxX,QAChCoW,UAEJW,EAAI,CACFZ,OACAE,SACAlB,qBAAsBgB,EAAKjb,OAAOia,sBAAwB,IAC1D,EAEJsC,8BAAgCP,GAC9BH,GAAKtlB,IACH,MAAMimB,EAAejmB,EAAMyiB,gCACpBwD,EAAaR,GACpB,MAAO,CACLhD,yBAA0B,IACrBwD,GAEN,IAELC,8BAAgCT,GAC9BH,GAAKtlB,IACH,MAAMmmB,EAAgBnmB,EAAM6iB,gCACrBsD,EAAcV,GACrB,MAAO,CACL5C,yBAA0B,IACrBsD,GAEN,IAELC,gBAAiB,KACfd,EAAI,CACF7C,yBAA0B,IAC1B,EAEJ4D,OAAQlF,UACN,MAAMnhB,EAAQ8N,IACd9N,EAAM4kB,QAAQ1V,IACZ6W,EAASvX,KACT,sCAAsCxO,EAAM2f,eAG9C,IAAK3f,EAAM0kB,KAAM,CACf,MAAM,IAAIphB,MAAM,2C,CAGlB,IAAKtD,EAAM2f,WAAWyD,OAAQ,CAC5BpjB,EAAM4kB,QAAQ1V,IACZ6W,EAASvX,KACT,sDAEF8W,EAAI,CACFP,0BAA2B,GAC3BG,mBAAoB,EACpBC,kBAAmB,EACnBxF,WAAY,KAEd,M,CAGF,MAAM2G,EAA4B,CAChCC,EACAnF,KAEA,MAAMoF,EAAqBD,EAASxT,KAAK0T,OAEzCnB,GAAKtlB,IACI,CACL+kB,0BAA2B3D,EAC3B4D,wBAAyBuB,EAASxT,KAAK2T,YAAc,EACrDvB,kBAEEoB,EAASxT,KAAKrL,QAAU1H,EAAMklB,mBAC1BllB,EAAMmlB,kBACN,EACND,mBAAoBqB,EAASxT,KAAKrL,OAAS,MAI/C,GAAI8e,EAAoB,CACtBlB,EAAI,CAAEL,yBAA0BuB,G,CAGlCxmB,EAAM4kB,QAAQ1V,IACZ6W,EAASxX,MACT,mBAAmBoE,KAAKC,UAAUwO,MAEpCphB,EAAM4kB,QAAQ1V,IACZ6W,EAASxX,MACT,yBAAyBoE,KAAKC,UAAU4T,KACzC,EAGH,MAAMG,EACJlC,IAEAa,EAAI,CAAEb,yBAAwB,EAGhCzkB,EAAM0kB,KAAKkC,SACT,CACEjH,WAAY3f,EAAM2f,WAClBqD,KAAMhjB,EAAM8kB,WACZhC,KAAM9iB,EAAMolB,SACZ3C,yBAA0BziB,EAAMyiB,yBAChCI,yBAA0B7iB,EAAM6iB,yBAChCW,OAAQxjB,EAAM0jB,qBACV1jB,EAAM0jB,sBAAwB1jB,EAAMmlB,kBAAoB,GACxD,EACJ1B,MAAOzjB,EAAM0jB,sBAEf4C,EACAK,EACD,EAEHE,qBAAuBC,IACrBxB,EAAI,CACFT,iBAAkBiC,GAClB,EAEJC,cAAgB/D,GAASsC,EAAI,CAAER,WAAY9B,IAC3CgE,YAAcziB,GAAS+gB,EAAI,CAAEF,SAAU7gB,IACvC0iB,cAAgBtH,IAId2F,EAAI,CACF3F,aACA8C,yBAA0B,MACtB9C,EAAWyD,OAAOpc,SAAW,GAAK,CACpC8d,WAAY,QACZM,SAAU,QAEZ,EAEJ8B,6BAA+B9F,GAC7BkE,EAAI,CAAEP,0BAA2B3D,IACnC+F,qBAAsBhG,MAAOiG,IAC3B9B,EAAI,CAAEH,kBAAmBiC,UACnB7B,EAAUc,QAAQ,EAE1BgB,wBAAyBlG,MAAOmG,IAC9BhC,EAAI,CAAE5B,qBAAsB4D,UACtB/B,EAAUc,QAAQ,GAI5B,MAAMkB,EAAgC,IACjC/C,MACAe,GAGL,OAAOgC,CAAW,W","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as s,h as e}from"./p-7e13c128.js";import{u as t}from"./p-38419178.js";import{c as r}from"./p-5cdc6210.js";import{p as a}from"./p-d9551738.js";const c=class{constructor(e){s(this,e)}increment=20;customStyles;searchTerm;searchResultsPage;searchResultsPerPage;searchResultsCount;searchResultsPagesCount;initialSearchResultsPerPage;setSearchResultsPerPage=()=>{};setSearchResultsPage=()=>{};unsubscribe=()=>{};componentDidLoad(){this.unsubscribe=t.subscribe((s=>{this.searchTerm=s.searchTerm;this.searchResultsPerPage=s.searchResultsPerPage;this.searchResultsPage=s.searchResultsPage;this.searchResultsCount=s.searchResultsCount;this.searchResultsPagesCount=Math.ceil(this.searchResultsCount/this.searchResultsPerPage);this.setSearchResultsPage=s.setSearchResultsPage;this.setSearchResultsPerPage=s.setSearchResultsPerPage}));this.initialSearchResultsPerPage=t.getState().searchResultsPerPage}disconnectedCallback(){this.unsubscribe?.()}render(){if(!this.searchTerm||this.searchResultsPagesCount<=1){return}return e("div",{class:r("searchcraft-search-results-per-page",a(this.customStyles||{}))},e("div",{class:"searchcraft-search-results-per-page-select"},e("label",{class:"searchcraft-search-results-per-page-select-label",htmlFor:"searchcraft-search-results-per-page-select-input"},"Results Per Page"),e("div",{class:"searchcraft-search-results-per-page-select-input"},e("searchcraft-select",{inputId:"searchcraft-search-results-per-page-select-input",name:"results-per-page",options:[...Array(5)].map(((s,e)=>{const t=this.initialSearchResultsPerPage+Number(this.increment)*e;return{label:`${t}`,value:t}})),onSelectChange:s=>{this.setSearchResultsPerPage(Number(s.detail));this.setSearchResultsPage(1)}}))))}};export{c as searchcraft_search_results_per_page};
|
|
2
|
+
//# sourceMappingURL=p-5e064c07.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["SearchcraftSearchResultsPerPage","increment","customStyles","searchTerm","searchResultsPage","searchResultsPerPage","searchResultsCount","searchResultsPagesCount","initialSearchResultsPerPage","setSearchResultsPerPage","setSearchResultsPage","unsubscribe","componentDidLoad","this","useSearchcraftStore","subscribe","state","Math","ceil","getState","disconnectedCallback","render","h","class","classNames","parseCustomStyles","htmlFor","inputId","name","options","Array","map","_","index","value","Number","label","onSelectChange","event","detail"],"sources":["src/components/searchcraft-search-results-per-page/searchcraft-search-results-per-page.tsx"],"sourcesContent":["import { useSearchcraftStore } from '@provider/store';\nimport { Component, h, State, Prop } from '@stencil/core';\nimport classNames from 'classnames';\n\nimport { parseCustomStyles } from '@utils';\n\n/**\n * This web component is designed to choose the number of search results displayed.\n *\n * ## Usage\n * ```html\n * <!-- index.html -->\n * <searchcraft-search-results-per-page increment=\"20\" />\n * ```\n */\n@Component({\n tag: 'searchcraft-search-results-per-page',\n shadow: false,\n})\nexport class SearchcraftSearchResultsPerPage {\n /**\n * The amount the options will increase (e.g. 20 = [20, 40, 60, 80, 100]).\n * The base value is defined by the `searchResultsPerPage` option in the configuration.\n */\n @Prop() increment: string | number = 20;\n /**\n * The custom styles object.\n */\n @Prop() customStyles?: string;\n\n // store vars\n @State() searchTerm;\n @State() searchResultsPage;\n @State() searchResultsPerPage;\n @State() searchResultsCount;\n @State() searchResultsPagesCount;\n\n // local vars\n @State() initialSearchResultsPerPage;\n\n // store functions\n @State() setSearchResultsPerPage: (perPage: number) => void = () => {};\n @State() setSearchResultsPage: (page: number) => void = () => {};\n\n private unsubscribe: () => void = () => {};\n\n componentDidLoad() {\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n // store vars\n this.searchTerm = state.searchTerm;\n this.searchResultsPerPage = state.searchResultsPerPage;\n this.searchResultsPage = state.searchResultsPage;\n this.searchResultsCount = state.searchResultsCount;\n\n // local vars\n this.searchResultsPagesCount = Math.ceil(\n this.searchResultsCount / this.searchResultsPerPage,\n );\n\n // store functions\n this.setSearchResultsPage = state.setSearchResultsPage;\n this.setSearchResultsPerPage = state.setSearchResultsPerPage;\n });\n\n this.initialSearchResultsPerPage =\n useSearchcraftStore.getState().searchResultsPerPage;\n }\n\n disconnectedCallback() {\n this.unsubscribe?.();\n }\n\n render() {\n // early return if there isn't a searchTerm or there is 1 or fewer pages of results\n if (!this.searchTerm || this.searchResultsPagesCount <= 1) {\n return;\n }\n\n return (\n <div\n class={classNames(\n 'searchcraft-search-results-per-page',\n parseCustomStyles(this.customStyles || {}),\n )}\n >\n <div class='searchcraft-search-results-per-page-select'>\n <label\n class='searchcraft-search-results-per-page-select-label'\n htmlFor='searchcraft-search-results-per-page-select-input'\n >\n Results Per Page\n </label>\n <div class='searchcraft-search-results-per-page-select-input'>\n <searchcraft-select\n inputId='searchcraft-search-results-per-page-select-input'\n name='results-per-page'\n options={[...Array(5)].map((_, index) => {\n const value =\n this.initialSearchResultsPerPage +\n Number(this.increment) * index;\n return {\n label: `${value}`,\n value,\n };\n })}\n onSelectChange={(event) => {\n this.setSearchResultsPerPage(Number(event.detail));\n this.setSearchResultsPage(1);\n }}\n />\n </div>\n </div>\n </div>\n );\n }\n}\n"],"mappings":"6JAmBaA,EAA+B,M,yBAKlCC,UAA6B,GAI7BC,aAGCC,WACAC,kBACAC,qBACAC,mBACAC,wBAGAC,4BAGAC,wBAAqD,OACrDC,qBAA+C,OAEhDC,YAA0B,OAElC,gBAAAC,GACEC,KAAKF,YAAcG,EAAoBC,WAAWC,IAEhDH,KAAKV,WAAaa,EAAMb,WACxBU,KAAKR,qBAAuBW,EAAMX,qBAClCQ,KAAKT,kBAAoBY,EAAMZ,kBAC/BS,KAAKP,mBAAqBU,EAAMV,mBAGhCO,KAAKN,wBAA0BU,KAAKC,KAClCL,KAAKP,mBAAqBO,KAAKR,sBAIjCQ,KAAKH,qBAAuBM,EAAMN,qBAClCG,KAAKJ,wBAA0BO,EAAMP,uBAAuB,IAG9DI,KAAKL,4BACHM,EAAoBK,WAAWd,oB,CAGnC,oBAAAe,GACEP,KAAKF,e,CAGP,MAAAU,GAEE,IAAKR,KAAKV,YAAcU,KAAKN,yBAA2B,EAAG,CACzD,M,CAGF,OACEe,EAAA,OACEC,MAAOC,EACL,sCACAC,EAAkBZ,KAAKX,cAAgB,MAGzCoB,EAAA,OAAKC,MAAM,8CACTD,EAAA,SACEC,MAAM,mDACNG,QAAQ,oDAAkD,oBAI5DJ,EAAA,OAAKC,MAAM,oDACTD,EAAA,sBACEK,QAAQ,mDACRC,KAAK,mBACLC,QAAS,IAAIC,MAAM,IAAIC,KAAI,CAACC,EAAGC,KAC7B,MAAMC,EACJrB,KAAKL,4BACL2B,OAAOtB,KAAKZ,WAAagC,EAC3B,MAAO,CACLG,MAAO,GAAGF,IACVA,QACD,IAEHG,eAAiBC,IACfzB,KAAKJ,wBAAwB0B,OAAOG,EAAMC,SAC1C1B,KAAKH,qBAAqB,EAAE,M","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
function t(t,n){if(t&&n){return n.fieldNames.map((n=>{let e=t[n.fieldName];if(e){switch(n.dataType){case"date":{e=r(e);break}case"number":{e=Intl.NumberFormat(n.numberFormatLocale,n.numberFormatOptions).format(e*(n.numberScale||1));break}}}return e})).filter((t=>!!t)).join(n.delimiter||" ")}}function n(t){const n=60*60*1e3;const e=24*n;const r=30*e;const a=365*e;switch(t){case"hour":return n;case"day":return e;case"month":return r;case"year":return a;default:return 36e5}}function e(t){return t.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")}function r(t){const n=new Date;const e=new Date(t);const r=Math.floor((n.getTime()-e.getTime())/1e3);const a=Math.floor(r/60);const c=Math.floor(a/60);const o=Math.floor(c/24);const s=Math.floor(o/365);if(a<60){return`${a}m ago`}if(c<24){return`${c}h ago`}if(o<365){return`${o}d ago`}return`${s}y ago`}export{
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
function t(t,n){if(t&&n){return n.fieldNames.map((n=>{let e=t[n.fieldName];if(e){switch(n.dataType){case"date":{e=r(e);break}case"number":{e=Intl.NumberFormat(n.numberFormatLocale,n.numberFormatOptions).format(e*(n.numberScale||1));break}}}return e})).filter((t=>!!t)).join(n.delimiter||" ")}}function n(t){const n=60*60*1e3;const e=24*n;const r=30*e;const a=365*e;switch(t){case"hour":return n;case"day":return e;case"month":return r;case"year":return a;default:return 36e5}}function e(t){return t.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")}function r(t){const n=new Date;const e=new Date(t);const r=Math.floor((n.getTime()-e.getTime())/1e3);const a=Math.floor(r/60);const c=Math.floor(a/60);const o=Math.floor(c/24);const s=Math.floor(o/365);if(a<60){return`${a}m ago`}if(c<24){return`${c}h ago`}if(o<365){return`${o}d ago`}return`${s}y ago`}export{t as a,e as f,n as g};
|
|
2
|
+
//# sourceMappingURL=p-6104fe5d.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["getDocumentValueFromSearchResultMapping","document","mapping","fieldNames","map","fieldNameDetails","valueFound","fieldName","dataType","getFormattedTimeFromNow","Intl","NumberFormat","numberFormatLocale","numberFormatOptions","format","numberScale","filter","value","join","delimiter","getMillis","unit","millisInHour","millisInDay","millisInMonth","millisInYear","formatNumberWithCommas","number","toString","replace","timestamp","now","Date","inputTime","diffInSeconds","Math","floor","getTime","minutes","hours","days","years"],"sources":["src/utils/units.ts"],"sourcesContent":["import type { SearchResultMapping } from '@searchcraft/core';\n\n/**\n * Given a document and a SearchResultMapping, return a mapped value from the document.\n *\n * Applies formatting based on the values specified in the `SearchResultFieldName` values.\n *\n * @param document\n * @param {SearchResultMapping} mapping\n * @returns {string | undefined}\n */\nexport function getDocumentValueFromSearchResultMapping(\n document: Record<string, unknown> | undefined,\n mapping: SearchResultMapping | undefined,\n): string | undefined {\n if (document && mapping) {\n return mapping.fieldNames\n .map((fieldNameDetails) => {\n let valueFound = document[fieldNameDetails.fieldName];\n\n if (valueFound) {\n switch (fieldNameDetails.dataType) {\n case 'date': {\n // TODO: Use fieldNameDetails.DateFormatOptions to format the date\n valueFound = getFormattedTimeFromNow(valueFound as string);\n break;\n }\n case 'number': {\n valueFound = Intl.NumberFormat(\n fieldNameDetails.numberFormatLocale,\n fieldNameDetails.numberFormatOptions,\n ).format(\n (valueFound as number) * (fieldNameDetails.numberScale || 1),\n );\n break;\n }\n default:\n break;\n }\n }\n\n return valueFound;\n })\n .filter((value) => !!value)\n .join(mapping.delimiter || ' ');\n }\n}\n\nexport function getMillis(unit: 'year' | 'month' | 'day' | 'hour'): number {\n const millisInHour = 60 * 60 * 1000;\n const millisInDay = 24 * millisInHour;\n const millisInMonth = 30 * millisInDay;\n const millisInYear = 365 * millisInDay;\n\n switch (unit) {\n case 'hour':\n return millisInHour;\n case 'day':\n return millisInDay;\n case 'month':\n return millisInMonth;\n case 'year':\n return millisInYear;\n default:\n return 3600000;\n }\n}\n\nexport function formatNumberWithCommas(number) {\n return number.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n}\n\n/**\n * Given a timestamp value, returns a formatted time string for the time\n * since now.\n *\n * @param timestamp\n * @returns {string} Formatted string value\n */\nexport function getFormattedTimeFromNow(timestamp: string): string {\n const now = new Date();\n const inputTime = new Date(timestamp);\n const diffInSeconds = Math.floor(\n (now.getTime() - inputTime.getTime()) / 1000,\n );\n\n const minutes = Math.floor(diffInSeconds / 60);\n const hours = Math.floor(minutes / 60);\n const days = Math.floor(hours / 24);\n const years = Math.floor(days / 365);\n\n if (minutes < 60) {\n return `${minutes}m ago`;\n }\n if (hours < 24) {\n return `${hours}h ago`;\n }\n if (days < 365) {\n return `${days}d ago`;\n }\n return `${years}y ago`;\n}\n"],"mappings":"SAWgBA,EACdC,EACAC,GAEA,GAAID,GAAYC,EAAS,CACvB,OAAOA,EAAQC,WACZC,KAAKC,IACJ,IAAIC,EAAaL,EAASI,EAAiBE,WAE3C,GAAID,EAAY,CACd,OAAQD,EAAiBG,UACvB,IAAK,OAAQ,CAEXF,EAAaG,EAAwBH,GACrC,K,CAEF,IAAK,SAAU,CACbA,EAAaI,KAAKC,aAChBN,EAAiBO,mBACjBP,EAAiBQ,qBACjBC,OACCR,GAAyBD,EAAiBU,aAAe,IAE5D,K,GAON,OAAOT,CAAU,IAElBU,QAAQC,KAAYA,IACpBC,KAAKhB,EAAQiB,WAAa,I,CAEjC,C,SAEgBC,EAAUC,GACxB,MAAMC,EAAe,GAAK,GAAK,IAC/B,MAAMC,EAAc,GAAKD,EACzB,MAAME,EAAgB,GAAKD,EAC3B,MAAME,EAAe,IAAMF,EAE3B,OAAQF,GACN,IAAK,OACH,OAAOC,EACT,IAAK,MACH,OAAOC,EACT,IAAK,QACH,OAAOC,EACT,IAAK,OACH,OAAOC,EACT,QACE,OAAO,KAEb,C,SAEgBC,EAAuBC,GACrC,OAAOA,EAAOC,WAAWC,QAAQ,wBAAyB,IAC5D,C,SASgBpB,EAAwBqB,GACtC,MAAMC,EAAM,IAAIC,KAChB,MAAMC,EAAY,IAAID,KAAKF,GAC3B,MAAMI,EAAgBC,KAAKC,OACxBL,EAAIM,UAAYJ,EAAUI,WAAa,KAG1C,MAAMC,EAAUH,KAAKC,MAAMF,EAAgB,IAC3C,MAAMK,EAAQJ,KAAKC,MAAME,EAAU,IACnC,MAAME,EAAOL,KAAKC,MAAMG,EAAQ,IAChC,MAAME,EAAQN,KAAKC,MAAMI,EAAO,KAEhC,GAAIF,EAAU,GAAI,CAChB,MAAO,GAAGA,Q,CAEZ,GAAIC,EAAQ,GAAI,CACd,MAAO,GAAGA,Q,CAEZ,GAAIC,EAAO,IAAK,CACd,MAAO,GAAGA,Q,CAEZ,MAAO,GAAGC,QACZ,Q","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,h as i}from"./p-7e13c128.js";import{u as s}from"./p-38419178.js";import{c as a}from"./p-5cdc6210.js";import{p as e}from"./p-d9551738.js";const n=class{constructor(i){t(this,i)}customStyles;searchTerm;searchResultsPerPage;searchResultsPage;searchResultsCount;searchResultsPagesCount=1;searchResultsRangeMin=1;searchResultsRangeMax=1;setSearchResultsPage=()=>{};unsubscribe=()=>{};componentDidLoad(){this.unsubscribe=s.subscribe((t=>{this.searchTerm=t.searchTerm;this.searchResultsPerPage=t.searchResultsPerPage;this.searchResultsPage=t.searchResultsPage;this.searchResultsCount=t.searchResultsCount;this.searchResultsPagesCount=Math.ceil(this.searchResultsCount/this.searchResultsPerPage);this.searchResultsRangeMin=(this.searchResultsPage-1)*this.searchResultsPerPage+1;this.searchResultsRangeMax=(this.searchResultsPerPage-1)*this.searchResultsPerPage+this.searchResultsPerPage;this.setSearchResultsPage=t.setSearchResultsPage}))}disconnectedCallback(){this.unsubscribe?.()}handleGoToPage(t){this.setSearchResultsPage(t)}renderOddPaginationItem(t){return i("li",null,i("button",{class:a("searchcraft-pagination-item",{"searchcraft-pagination-item-active":this.searchResultsPage===t}),onClick:()=>this.handleGoToPage(t),type:"button"},t))}renderEvenPaginationItem(t){if(this.searchResultsPagesCount<=t){return}if(this.searchResultsPagesCount<=5||t<Math.ceil(this.searchResultsPagesCount/2)?this.searchResultsPage<=t+1:this.searchResultsPage>=t-1){return i("li",null,i("button",{class:a("searchcraft-pagination-item",{"searchcraft-pagination-item-active":this.searchResultsPage===t}),onClick:()=>this.handleGoToPage(t),type:"button"},t))}return i("li",null,i("span",{class:"searchcraft-pagination-item"},"..."))}renderMiddlePaginationItem(){if(this.searchResultsPagesCount<=3){return}if(this.searchResultsPagesCount<=5||this.searchResultsPage<=3||this.searchResultsPage>=this.searchResultsPagesCount-2){return i("li",null,i("button",{class:a("searchcraft-pagination-item",{"searchcraft-pagination-item-active":this.searchResultsPage===3||this.searchResultsPage===this.searchResultsPagesCount-2}),type:"button",onClick:()=>this.handleGoToPage(this.searchResultsPage>=this.searchResultsPagesCount-2?this.searchResultsPagesCount-2:3)},this.searchResultsPage>=this.searchResultsPagesCount-2?this.searchResultsPagesCount-2:3))}return i("li",null,i("span",{class:"searchcraft-pagination-item searchcraft-pagination-item-active"},this.searchResultsPage))}render(){if(!this.searchTerm||this.searchResultsPagesCount<=1){return}return i("div",{class:a("searchcraft-pagination",e(this.customStyles||{}))},i("div",{class:"searchcraft-pagination-control"},i("searchcraft-button",{disabled:this.searchResultsPage===1,hierarchy:"tertiary",onButtonClick:()=>this.handleGoToPage(Math.max(1,this.searchResultsPage-1)),label:"PREVIOUS",iconPosition:"left",icon:i("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},i("title",null,"Previous page icon"),i("path",{d:"M12.5 15L7.5 10L12.5 5",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}))})),i("ul",{class:"searchcraft-pagination-list"},this.renderOddPaginationItem(1),this.renderEvenPaginationItem(2),this.renderMiddlePaginationItem(),this.renderEvenPaginationItem(this.searchResultsPagesCount>4?this.searchResultsPagesCount-1:4),this.renderOddPaginationItem(this.searchResultsPagesCount)),i("div",{class:"searchcraft-pagination-control"},i("searchcraft-button",{disabled:this.searchResultsPage===this.searchResultsPagesCount,hierarchy:"tertiary",onButtonClick:()=>{this.handleGoToPage(Math.min(this.searchResultsPagesCount,this.searchResultsPage+1))},label:"NEXT",iconPosition:"right",icon:i("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},i("title",null,"Next page icon"),i("path",{d:"M7.5 15L12.5 10L7.5 5",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}))})))}};export{n as searchcraft_pagination};
|
|
2
|
+
//# sourceMappingURL=p-69da4e58.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["SearchcraftPagination","customStyles","searchTerm","searchResultsPerPage","searchResultsPage","searchResultsCount","searchResultsPagesCount","searchResultsRangeMin","searchResultsRangeMax","setSearchResultsPage","unsubscribe","componentDidLoad","this","useSearchcraftStore","subscribe","state","Math","ceil","disconnectedCallback","handleGoToPage","page","renderOddPaginationItem","h","class","classNames","onClick","type","renderEvenPaginationItem","renderMiddlePaginationItem","render","parseCustomStyles","disabled","hierarchy","onButtonClick","max","label","iconPosition","icon","width","height","viewBox","fill","xmlns","d","stroke","min"],"sources":["src/components/searchcraft-pagination/searchcraft-pagination.tsx"],"sourcesContent":["import { useSearchcraftStore } from '@provider/store';\nimport { Component, h, State, Prop } from '@stencil/core';\nimport classNames from 'classnames';\n\nimport { parseCustomStyles } from '@utils';\n\n/**\n * This web component is designed to facilitate pagination of search results.\n * Once a query is submitted, calculates the number for pages.\n *\n * ## Usage\n * ```html\n * <!-- index.html -->\n * <searchcraft-pagination />\n * ```\n */\n@Component({\n tag: 'searchcraft-pagination',\n shadow: false,\n})\nexport class SearchcraftPagination {\n /**\n * The custom styles object.\n */\n @Prop() customStyles?: string;\n\n // store vars\n @State() searchTerm;\n @State() searchResultsPerPage;\n @State() searchResultsPage;\n @State() searchResultsCount;\n\n // local vars\n @State() searchResultsPagesCount = 1;\n @State() searchResultsRangeMin = 1;\n @State() searchResultsRangeMax = 1;\n\n // store functions\n @State() setSearchResultsPage: (page: number) => void = () => {};\n\n private unsubscribe: () => void = () => {};\n\n componentDidLoad() {\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n // store vars\n this.searchTerm = state.searchTerm;\n this.searchResultsPerPage = state.searchResultsPerPage;\n this.searchResultsPage = state.searchResultsPage;\n this.searchResultsCount = state.searchResultsCount;\n\n // local vars\n this.searchResultsPagesCount = Math.ceil(\n this.searchResultsCount / this.searchResultsPerPage,\n );\n this.searchResultsRangeMin =\n (this.searchResultsPage - 1) * this.searchResultsPerPage + 1;\n this.searchResultsRangeMax =\n (this.searchResultsPerPage - 1) * this.searchResultsPerPage +\n this.searchResultsPerPage;\n\n // store functions\n this.setSearchResultsPage = state.setSearchResultsPage;\n });\n }\n\n disconnectedCallback() {\n this.unsubscribe?.();\n }\n\n handleGoToPage(page: number) {\n this.setSearchResultsPage(page);\n }\n\n renderOddPaginationItem(page: number) {\n return (\n <li>\n <button\n class={classNames('searchcraft-pagination-item', {\n 'searchcraft-pagination-item-active':\n this.searchResultsPage === page,\n })}\n onClick={() => this.handleGoToPage(page)}\n type='button'\n >\n {page}\n </button>\n </li>\n );\n }\n\n renderEvenPaginationItem(page: number) {\n if (this.searchResultsPagesCount <= page) {\n return;\n }\n\n if (\n this.searchResultsPagesCount <= 5 ||\n page < Math.ceil(this.searchResultsPagesCount / 2) // is the first or second even pagination item\n ? this.searchResultsPage <= page + 1\n : this.searchResultsPage >= page - 1\n ) {\n return (\n <li>\n <button\n class={classNames('searchcraft-pagination-item', {\n 'searchcraft-pagination-item-active':\n this.searchResultsPage === page,\n })}\n onClick={() => this.handleGoToPage(page)}\n type='button'\n >\n {page}\n </button>\n </li>\n );\n }\n\n return (\n <li>\n <span class='searchcraft-pagination-item'>...</span>\n </li>\n );\n }\n\n renderMiddlePaginationItem() {\n if (this.searchResultsPagesCount <= 3) {\n return;\n }\n\n if (\n this.searchResultsPagesCount <= 5 ||\n this.searchResultsPage <= 3 ||\n this.searchResultsPage >= this.searchResultsPagesCount - 2\n ) {\n return (\n <li>\n <button\n class={classNames('searchcraft-pagination-item', {\n 'searchcraft-pagination-item-active':\n this.searchResultsPage === 3 ||\n this.searchResultsPage === this.searchResultsPagesCount - 2,\n })}\n type='button'\n onClick={() =>\n this.handleGoToPage(\n this.searchResultsPage >= this.searchResultsPagesCount - 2\n ? this.searchResultsPagesCount - 2\n : 3,\n )\n }\n >\n {this.searchResultsPage >= this.searchResultsPagesCount - 2\n ? this.searchResultsPagesCount - 2\n : 3}\n </button>\n </li>\n );\n }\n\n return (\n <li>\n <span class='searchcraft-pagination-item searchcraft-pagination-item-active'>\n {this.searchResultsPage}\n </span>\n </li>\n );\n }\n\n render() {\n // early return if there isn't a searchTerm or there is 1 or fewer pages of results\n if (!this.searchTerm || this.searchResultsPagesCount <= 1) {\n return;\n }\n\n return (\n <div\n class={classNames(\n 'searchcraft-pagination',\n parseCustomStyles(this.customStyles || {}),\n )}\n >\n <div class='searchcraft-pagination-control'>\n <searchcraft-button\n disabled={this.searchResultsPage === 1}\n hierarchy='tertiary'\n onButtonClick={() =>\n this.handleGoToPage(Math.max(1, this.searchResultsPage - 1))\n }\n label='PREVIOUS'\n iconPosition='left'\n icon={\n <svg\n width='20'\n height='20'\n viewBox='0 0 20 20'\n fill='none'\n xmlns='http://www.w3.org/2000/svg'\n >\n <title>Previous page icon</title>\n <path\n d='M12.5 15L7.5 10L12.5 5'\n stroke='currentColor'\n stroke-width='1.5'\n stroke-linecap='round'\n stroke-linejoin='round'\n />\n </svg>\n }\n />\n </div>\n <ul class='searchcraft-pagination-list'>\n {this.renderOddPaginationItem(1)}\n {this.renderEvenPaginationItem(2)}\n {this.renderMiddlePaginationItem()}\n {this.renderEvenPaginationItem(\n this.searchResultsPagesCount > 4\n ? this.searchResultsPagesCount - 1\n : 4,\n )}\n {this.renderOddPaginationItem(this.searchResultsPagesCount)}\n </ul>\n <div class='searchcraft-pagination-control'>\n <searchcraft-button\n disabled={this.searchResultsPage === this.searchResultsPagesCount}\n hierarchy='tertiary'\n onButtonClick={() => {\n this.handleGoToPage(\n Math.min(\n this.searchResultsPagesCount,\n this.searchResultsPage + 1,\n ),\n );\n }}\n label='NEXT'\n iconPosition='right'\n icon={\n <svg\n width='20'\n height='20'\n viewBox='0 0 20 20'\n fill='none'\n xmlns='http://www.w3.org/2000/svg'\n >\n <title>Next page icon</title>\n <path\n d='M7.5 15L12.5 10L7.5 5'\n stroke='currentColor'\n stroke-width='1.5'\n stroke-linecap='round'\n stroke-linejoin='round'\n />\n </svg>\n }\n />\n </div>\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as s,c as t,h as e}from"./p-7e13c128.js";import{u as r}from"./p-38419178.js";import{s as a}from"./p-d9551738.js";const i=class{constructor(e){s(this,e);this.noResults=t(this,"noResults",7)}customStylesForResults;searchResultMappings;resultImagePlacement="right";buttonLabel;buttonTarget="_blank";buttonRel;containerTarget="_blank";containerRel;noResults;searchTerm="";searchClientResponseItems=[];adClientResponseItems=[];searchResultsPerPage;searchResultsPage;unsubscribe=()=>{};componentDidLoad(){this.unsubscribe=r.subscribe((s=>this.handleStateChange(s)));const s=r.getState();this.searchClientResponseItems=s.searchClientResponseItems;this.searchTerm=s.searchTerm}disconnectedCallback(){this.unsubscribe?.()}handleStateChange(s){this.searchClientResponseItems=[...s.searchClientResponseItems];this.adClientResponseItems=[...s.adClientResponseItems];this.searchTerm=s.searchTerm;this.searchResultsPage=s.searchResultsPage;this.searchResultsPerPage=s.searchResultsPerPage}render(){if(this.searchTerm.trim()===""){return e("div",{class:"searchcraft-search-results-empty-state-container"},e("slot",{name:"empty-search"}))}if(this.searchClientResponseItems.length===0){return}if(this.searchTerm.length>0&&this.searchClientResponseItems.length===0){this.noResults?.emit()}let s="";if(this.customStylesForResults){s=typeof this.customStylesForResults==="string"?this.customStylesForResults:a(this.customStylesForResults)}return e("div",{class:"searchcraft-search-results-container"},this.adClientResponseItems?.map((s=>e("searchcraft-base-search-result-ad",{adClientResponseItem:s,key:s.adId}))),this.searchClientResponseItems?.map(((t,r)=>e("searchcraft-base-search-result",{key:t.id,"custom-styles":s,"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+r,searchResultMappings:this.searchResultMappings,item:t}))),this.searchTerm.length>0&&this.searchClientResponseItems.length===0&&e("div",{class:"searchcraft-search-results-error-message-container"},e("searchcraft-error-message",{"error-message":`No search results found for "${this.searchTerm}" query`})))}};export{i as searchcraft_base_search_results};
|
|
2
|
+
//# sourceMappingURL=p-6bffd3f5.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["SearchcraftBaseSearchResults","customStylesForResults","searchResultMappings","resultImagePlacement","buttonLabel","buttonTarget","buttonRel","containerTarget","containerRel","noResults","searchTerm","searchClientResponseItems","adClientResponseItems","searchResultsPerPage","searchResultsPage","unsubscribe","componentDidLoad","this","useSearchcraftStore","subscribe","state","handleStateChange","currentState","getState","disconnectedCallback","render","trim","h","class","name","length","emit","serializedStyles","serializeStyles","map","item","adClientResponseItem","key","adId","index","id"],"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"],"mappings":"gIAuDaA,EAA4B,M,8DAI/BC,uBAOAC,qBAIAC,qBAAyC,QAIzCC,YAIAC,aAAwD,SAIxDC,UAIAC,gBAA2D,SAI3DC,aAKCC,UAEAC,WAAa,GACbC,0BAAwD,GACxDC,sBAAgD,GAChDC,qBACAC,kBAEDC,YAA0B,OAElC,gBAAAC,GACEC,KAAKF,YAAcG,EAAoBC,WAAWC,GAChDH,KAAKI,kBAAkBD,KAEzB,MAAME,EAAeJ,EAAoBK,WACzCN,KAAKN,0BAA4BW,EAAaX,0BAC9CM,KAAKP,WAAaY,EAAaZ,U,CAGjC,oBAAAc,GACEP,KAAKF,e,CAGP,iBAAAM,CAAkBD,GAChBH,KAAKN,0BAA4B,IAAIS,EAAMT,2BAC3CM,KAAKL,sBAAwB,IAAIQ,EAAMR,uBACvCK,KAAKP,WAAaU,EAAMV,WACxBO,KAAKH,kBAAoBM,EAAMN,kBAC/BG,KAAKJ,qBAAuBO,EAAMP,oB,CAGpC,MAAAY,GACE,GAAIR,KAAKP,WAAWgB,SAAW,GAAI,CACjC,OACEC,EAAA,OAAKC,MAAM,oDACTD,EAAA,QAAME,KAAK,iB,CAKjB,GAAIZ,KAAKN,0BAA0BmB,SAAW,EAAG,CAC/C,M,CAGF,GACEb,KAAKP,WAAWoB,OAAS,GACzBb,KAAKN,0BAA0BmB,SAAW,EAC1C,CACAb,KAAKR,WAAWsB,M,CAGlB,IAAIC,EAAmB,GACvB,GAAIf,KAAKhB,uBAAwB,CAC/B+B,SACSf,KAAKhB,yBAA2B,SACnCgB,KAAKhB,uBACLgC,EAAgBhB,KAAKhB,uB,CAG7B,OACE0B,EAAA,OAAKC,MAAM,wCACRX,KAAKL,uBAAuBsB,KAAKC,GAChCR,EAAA,qCACES,qBAAsBD,EACtBE,IAAKF,EAAKG,SAGbrB,KAAKN,2BAA2BuB,KAAI,CAACC,EAAMI,IAC1CZ,EAAA,kCACEU,IAAKF,EAAKK,GAAE,gBACGR,EAAgB,kBACdf,KAAKd,qBAAoB,gBAC3Bc,KAAKT,aAAY,mBACdS,KAAKV,gBAAe,eACxBU,KAAKb,aAAe,YAAW,aACjCa,KAAKX,UAAS,gBACXW,KAAKZ,aAAY,oBAE9BY,KAAKJ,qBAAuBI,KAAKH,kBAAoByB,EAEvDrC,qBAAsBe,KAAKf,qBAC3BiC,KAAMA,MAGTlB,KAAKP,WAAWoB,OAAS,GACxBb,KAAKN,0BAA0BmB,SAAW,GACxCH,EAAA,OAAKC,MAAM,sDACTD,EAAA,6CACiB,gCAAgCV,KAAKP,uB","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,h as e}from"./p-7e13c128.js";import{u as r}from"./p-38419178.js";const a=class{constructor(e){t(this,e)}handleOnClick(){r.getState().setPopoverVisibility(true)}render(){return e("button",{key:"538e1e8506bea196e6ba45482f9daa75d032462f",type:"button",onClick:this.handleOnClick.bind(this)},e("slot",{key:"788b70da6edcbfb283d373ada36709582ad16e51"}))}};export{a as searchcraft_popover_button};
|
|
2
|
+
//# sourceMappingURL=p-7f4dd50c.entry.js.map
|