@searchcraft/javascript-sdk 0.2.4 → 0.2.6
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/index.cjs.js +2 -2
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/searchcraft-auto-search-form_17.cjs.entry.js +63 -43
- package/dist/cjs/searchcraft-auto-search-form_17.cjs.entry.js.map +1 -1
- package/dist/cjs/searchcraft-base-search-form.cjs.entry.js +1 -1
- package/dist/cjs/searchcraft-javascript-sdk.cjs.js +1 -1
- package/dist/cjs/{store-b0a26894.js → store-c44c58ab.js} +8 -7
- package/dist/cjs/{store-b0a26894.js.map → store-c44c58ab.js.map} +1 -1
- package/dist/cjs/{utils-15f85bca.js → utils-2dc6115c.js} +13 -1
- package/dist/cjs/utils-2dc6115c.js.map +1 -0
- package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.js +24 -3
- package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.js.map +1 -1
- package/dist/collection/components/searchcraft-base-search-result/searchcraft-base-search-result.module.css +0 -2
- package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js +20 -1
- package/dist/collection/components/searchcraft-base-search-results/searchcraft-base-search-results.js.map +1 -1
- package/dist/collection/components/searchcraft-filters-list/searchcraft-filters-list.js +54 -39
- package/dist/collection/components/searchcraft-filters-list/searchcraft-filters-list.js.map +1 -1
- package/dist/collection/provider/store.js +7 -6
- package/dist/collection/provider/store.js.map +1 -1
- package/dist/collection/utils/utils.js +11 -0
- package/dist/collection/utils/utils.js.map +1 -1
- package/dist/components/index.js +2 -2
- package/dist/components/{p-8c70054a.js → p-023371c8.js} +10 -6
- package/dist/components/p-023371c8.js.map +1 -0
- package/dist/components/{p-33bb5c45.js → p-157e5b1a.js} +8 -7
- package/dist/components/{p-33bb5c45.js.map → p-157e5b1a.js.map} +1 -1
- package/dist/components/{p-ff6c3650.js → p-2bda632c.js} +13 -2
- package/dist/components/p-2bda632c.js.map +1 -0
- package/dist/components/{p-1204b43a.js → p-b5f97e04.js} +2 -2
- package/dist/components/{p-1204b43a.js.map → p-b5f97e04.js.map} +1 -1
- package/dist/components/searchcraft-auto-search-form.js +3 -3
- package/dist/components/searchcraft-base-search-form.js +2 -2
- package/dist/components/searchcraft-base-search-result.js +1 -1
- package/dist/components/searchcraft-base-search-results.js +6 -4
- package/dist/components/searchcraft-base-search-results.js.map +1 -1
- package/dist/components/searchcraft-filters-list.js +55 -40
- package/dist/components/searchcraft-filters-list.js.map +1 -1
- package/dist/components/searchcraft-input.js +1 -1
- package/dist/components/searchcraft-results-info.js +1 -1
- package/dist/components/searchcraft-slider.js +1 -1
- package/dist/components/searchcraft-toggle-button.js +1 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/loader.js +1 -1
- package/dist/esm/searchcraft-auto-search-form_17.entry.js +63 -43
- package/dist/esm/searchcraft-auto-search-form_17.entry.js.map +1 -1
- package/dist/esm/searchcraft-base-search-form.entry.js +1 -1
- package/dist/esm/searchcraft-javascript-sdk.js +1 -1
- package/dist/esm/{store-97358312.js → store-9e0b0710.js} +8 -7
- package/dist/esm/{store-97358312.js.map → store-9e0b0710.js.map} +1 -1
- package/dist/esm/{utils-dbb6302b.js → utils-a3373179.js} +13 -2
- package/dist/esm/utils-a3373179.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/index.esm.js +1 -1
- package/dist/searchcraft-javascript-sdk/p-2bda632c.js +2 -0
- package/dist/searchcraft-javascript-sdk/p-2bda632c.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/{p-acca6173.entry.js → p-63b3b565.entry.js} +2 -2
- package/dist/searchcraft-javascript-sdk/{p-cd489e98.js → p-901fee50.js} +2 -2
- package/dist/searchcraft-javascript-sdk/p-901fee50.js.map +1 -0
- package/dist/searchcraft-javascript-sdk/p-c2c4f6b7.entry.js +2 -0
- package/dist/searchcraft-javascript-sdk/p-c2c4f6b7.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 +1 -0
- package/dist/types/components/searchcraft-base-search-results/searchcraft-base-search-results.d.ts +1 -0
- package/dist/types/components/searchcraft-filters-list/searchcraft-filters-list.d.ts +1 -5
- package/dist/types/components.d.ts +4 -0
- package/dist/types/utils/utils.d.ts +11 -0
- package/package.json +1 -1
- package/dist/cjs/utils-15f85bca.js.map +0 -1
- package/dist/components/p-8c70054a.js.map +0 -1
- package/dist/components/p-ff6c3650.js.map +0 -1
- package/dist/esm/utils-dbb6302b.js.map +0 -1
- package/dist/searchcraft-javascript-sdk/p-1a0e85ee.entry.js +0 -2
- package/dist/searchcraft-javascript-sdk/p-1a0e85ee.entry.js.map +0 -1
- package/dist/searchcraft-javascript-sdk/p-cd489e98.js.map +0 -1
- package/dist/searchcraft-javascript-sdk/p-ff6c3650.js +0 -2
- package/dist/searchcraft-javascript-sdk/p-ff6c3650.js.map +0 -1
- /package/dist/searchcraft-javascript-sdk/{p-acca6173.entry.js.map → p-63b3b565.entry.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"searchcraft-filters-list.js","sourceRoot":"","sources":["../../../src/components/searchcraft-filters-list/searchcraft-filters-list.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n h,\n State,\n Prop,\n Event,\n type EventEmitter,\n} from '@stencil/core';\n\nimport type { Facets } from '@searchcraft/core';\n\nimport { useSearchcraftStore } from '@provider/store';\n\n@Component({\n tag: 'searchcraft-filters-list',\n styleUrl: 'searchcraft-filters-list.module.scss',\n shadow: true,\n})\nexport class SearchcraftFiltersList {\n @Prop() filters: Array<{ label: string; value: string }> = [];\n\n @Event() filtersUpdated: EventEmitter<string[]>;\n\n @State() dynamicFilters: Array<{ label: string; value: string }> = [];\n @State() initialFilters: Array<{ label: string; value: string }> = [];\n @State() isRequesting = false;\n @State() originalFilterCounts: Record<string, string> = {};\n @State() query = '';\n @State() resultsCount = 0;\n @State() selectedFilters: Set<string> = new Set();\n\n private searchStore = useSearchcraftStore.getState();\n unsubscribe: () => void;\n\n connectedCallback() {\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n this.isRequesting = state.isRequesting;\n this.query = state.query || '';\n this.resultsCount = state.searchResults?.data?.hits?.length || 0;\n\n const facets = state.searchResults?.data.facets;\n if (facets) {\n this.populateFiltersFromFacets(facets);\n }\n });\n }\n\n disconnectedCallback() {\n if (this.unsubscribe) {\n this.unsubscribe();\n }\n }\n\n populateFiltersFromFacets(facets: Facets) {\n const newFilters = Object.entries(facets.section?.counts || {}).map(\n ([key, count]) => {\n const filterValue = key;\n this.originalFilterCounts[filterValue] = `${count}`;\n return {\n label: `${key.replace(/^\\//, '')} (${count})`,\n value: filterValue,\n };\n },\n );\n\n // Update dynamic filters while preserving the initial filters\n const updatedFilters = [\n ...this.initialFilters,\n ...newFilters.filter(\n (filter) =>\n !this.initialFilters.some(\n (initial) => initial.value === filter.value,\n ),\n ),\n ];\n\n this.dynamicFilters = updatedFilters;\n\n // Store the initial filters only once\n if (this.initialFilters.length === 0) {\n this.initialFilters = [...updatedFilters];\n }\n }\n\n handleFilterChange = (value: string, checked: boolean) => {\n if (checked) {\n this.selectedFilters.add(value);\n } else {\n this.selectedFilters.delete(value);\n }\n\n const selectedFiltersArray = Array.from(this.selectedFilters);\n\n this.filtersUpdated.emit(selectedFiltersArray);\n this.searchStore.setSelectedFilters(selectedFiltersArray);\n this.searchStore.search();\n };\n\n formatLabel(label: string): string {\n return label\n .replace(/-/g, ' ')\n .split(' ')\n .map((word) => word.charAt(0).toUpperCase() + word.slice(1))\n .join(' ');\n }\n\n render() {\n if (!this.query || this.resultsCount === 0) {\n return null;\n }\n\n const filtersToRender = this.initialFilters.map((initialFilter) => {\n const isChecked = this.selectedFilters.has(initialFilter.value);\n const dynamicChildren = this.dynamicFilters.filter(\n (dynamicFilter) =>\n dynamicFilter.value.startsWith(initialFilter.value) &&\n dynamicFilter.value !== initialFilter.value, // Exclude parent itself\n );\n return {\n ...initialFilter,\n isChecked,\n children: dynamicChildren,\n };\n });\n\n return (\n <div class='filtersList'>\n {filtersToRender.map((filter) => (\n <div key={filter.value}>\n {/* Render the parent filter */}\n <label class='checkboxLabel'>\n <input\n class='filterCheckbox'\n checked={filter.isChecked}\n onChange={(event: Event) =>\n this.handleFilterChange(\n filter.value,\n (event.target as HTMLInputElement).checked,\n )\n }\n type='checkbox'\n value={filter.value}\n />\n {this.formatLabel(filter.label)}\n </label>\n {filter.isChecked &&\n filter.children.map((childFilter) => {\n const childLabel = childFilter.label.split('/').pop();\n return (\n <label\n class='childCheckboxLabel'\n key={childFilter.value}\n style={{ marginLeft: '20px' }}\n >\n <input\n class='childFilterCheckbox'\n checked={this.selectedFilters.has(childFilter.value)}\n onChange={(event: Event) =>\n this.handleFilterChange(\n childFilter.value,\n (event.target as HTMLInputElement).checked,\n )\n }\n type='checkbox'\n value={childFilter.value}\n />\n {this.formatLabel(childLabel || '')}\n </label>\n );\n })}\n </div>\n ))}\n </div>\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"searchcraft-filters-list.js","sourceRoot":"","sources":["../../../src/components/searchcraft-filters-list/searchcraft-filters-list.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n h,\n State,\n Prop,\n Event,\n type EventEmitter,\n} from '@stencil/core';\n\nimport type { Facets } from '@searchcraft/core';\n\nimport { useSearchcraftStore } from '@provider/store';\n\nimport { flattenFacets } from '@utils/utils';\n\n@Component({\n tag: 'searchcraft-filters-list',\n styleUrl: 'searchcraft-filters-list.module.scss',\n shadow: true,\n})\nexport class SearchcraftFiltersList {\n @Prop() filters: Array<{ label: string; value: string }> = [];\n\n @Event() filtersUpdated: EventEmitter<string[]>;\n\n @State() dynamicFilters: Array<{ label: string; value: string }> = [];\n @State() isRequesting = false;\n @State() query = '';\n @State() resultsCount = 0;\n @State() selectedFilters: Set<string> = new Set();\n\n private searchStore = useSearchcraftStore.getState();\n unsubscribe: () => void;\n\n connectedCallback() {\n const state = this.searchStore; // Fetch the initial state\n\n // Initial population of facets if available\n if (state.searchResults?.data.facets) {\n this.populateFiltersFromFacets(state.searchResults.data.facets);\n }\n\n this.unsubscribe = useSearchcraftStore.subscribe((state) => {\n if (!state.query || state.query.trim().length === 0) {\n if (this.selectedFilters.size > 0) {\n this.selectedFilters.clear();\n this.filtersUpdated.emit([]);\n if (this.searchStore.selectedFilters.length > 0) {\n this.searchStore.setSelectedFilters([]);\n }\n }\n }\n this.query = state.query || '';\n this.isRequesting = state.isRequesting;\n this.resultsCount = state.searchResults?.data?.hits?.length || 0;\n\n // Populate filters when facets are updated\n if (state.searchResults?.data.facets) {\n this.populateFiltersFromFacets(state.searchResults.data.facets);\n }\n });\n }\n\n disconnectedCallback() {\n if (this.unsubscribe) {\n this.unsubscribe();\n }\n }\n\n populateFiltersFromFacets(facets: Facets) {\n const newFilters = flattenFacets(facets[0]?.section || []);\n const filtersMap = new Map<string, { label: string; value: string }>();\n\n newFilters.forEach((filter) => {\n const key = filter.value.split('/').pop() || '';\n const existingFilter = filtersMap.get(key);\n if (\n !existingFilter ||\n filter.value.length < existingFilter.value.length\n ) {\n filtersMap.set(key, filter);\n }\n });\n\n this.dynamicFilters = Array.from(filtersMap.values());\n }\n\n handleFilterChange = (value: string, checked: boolean) => {\n if (checked) {\n this.selectedFilters.add(value);\n } else {\n this.selectedFilters.delete(value);\n }\n const deduplicatedFilters = this.deduplicatePaths(\n Array.from(this.selectedFilters),\n );\n\n this.filtersUpdated.emit(deduplicatedFilters);\n this.searchStore.setSelectedFilters(deduplicatedFilters);\n this.searchStore.search();\n };\n\n deduplicatePaths(filters: string[]): string[] {\n const pathMap = new Map<string, string>();\n\n filters.forEach((path) => {\n const key = path.split('/').pop() || '';\n const existingPath = pathMap.get(key);\n\n if (!existingPath || path.length < existingPath.length) {\n pathMap.set(key, path);\n }\n });\n\n return Array.from(pathMap.values());\n }\n\n formatLabel(label: string): string {\n return label\n .replace(/-/g, ' ')\n .split(' ')\n .map((word) => word.charAt(0).toUpperCase() + word.slice(1))\n .join(' ');\n }\n\n render() {\n if (!this.query || this.resultsCount === 0) {\n return null;\n }\n\n const filtersToRender = this.dynamicFilters.filter(\n (filter) => !filter.value.includes('/', filter.value.indexOf('/') + 1),\n );\n\n return (\n <div class='filtersList'>\n {filtersToRender.map((filter) => {\n const isChecked = this.selectedFilters.has(filter.value);\n const children = this.dynamicFilters.filter(\n (child) =>\n child.value.startsWith(`${filter.value}/`) &&\n child.value !== filter.value,\n );\n\n return (\n <div key={filter.value}>\n <label class='checkboxLabel'>\n <input\n class='filterCheckbox'\n checked={isChecked}\n onChange={(event: Event) =>\n this.handleFilterChange(\n filter.value,\n (event.target as HTMLInputElement).checked,\n )\n }\n type='checkbox'\n />\n {this.formatLabel(filter.label)}\n </label>\n {children.map((child) => {\n const isChildChecked = this.selectedFilters.has(child.value);\n return (\n <label\n class='childCheckboxLabel'\n key={child.value}\n style={{ marginLeft: '20px' }}\n >\n <input\n class='childFilterCheckbox'\n checked={isChildChecked}\n onChange={(event: Event) =>\n this.handleFilterChange(\n child.value,\n (event.target as HTMLInputElement).checked,\n )\n }\n type='checkbox'\n />\n {this.formatLabel(child.label.split('/').pop() || '')}\n </label>\n );\n })}\n </div>\n );\n })}\n </div>\n );\n }\n}\n"]}
|
|
@@ -51,16 +51,17 @@ const useSearchcraftStore = create((set, get) => {
|
|
|
51
51
|
setIsRequesting(true);
|
|
52
52
|
log(LogLevel.INFO, `Starting search with query: "${query}"`);
|
|
53
53
|
try {
|
|
54
|
-
const counts = selectedFilters.reduce((acc, filter) => {
|
|
55
|
-
const cleanedFilter = filter.replace(/^section:/, '');
|
|
56
|
-
acc[cleanedFilter] = 1;
|
|
57
|
-
return acc;
|
|
58
|
-
}, {});
|
|
59
54
|
const searchRequest = {
|
|
60
55
|
query,
|
|
61
56
|
mode: searchParams.mode,
|
|
62
57
|
sort: searchParams.sort,
|
|
63
|
-
facets: selectedFilters.length > 0
|
|
58
|
+
facets: selectedFilters.length > 0
|
|
59
|
+
? {
|
|
60
|
+
section: {
|
|
61
|
+
counts: Object.fromEntries(selectedFilters.map((path) => [path, 1])),
|
|
62
|
+
},
|
|
63
|
+
}
|
|
64
|
+
: null,
|
|
64
65
|
yearsRange: searchParams.yearsRange,
|
|
65
66
|
};
|
|
66
67
|
const results = await searchcraft.search(searchRequest);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/provider/store.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,OAAO,EAEL,WAAW,EACX,QAAQ,GAGT,MAAM,mBAAmB,CAAC;AA+B3B,sCAAsC;AACtC,MAAM,mBAAmB,GAAG,MAAM,CAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAChE,IAAI,WAAW,GAA2B,IAAI,CAAC;IAC/C,IAAI,gBAAgB,GAAuB,IAAI,CAAC;IAEhD,MAAM,GAAG,GAAG,CAAC,KAAe,EAAE,OAAe,EAAE,EAAE;QAC/C,IAAI,gBAAgB,EAAE,CAAC;YACrB,QAAQ,KAAK,EAAE,CAAC;gBACd,KAAK,QAAQ,CAAC,KAAK;oBACjB,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBAChC,MAAM;gBACR,KAAK,QAAQ,CAAC,IAAI;oBAChB,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC/B,MAAM;gBACR,KAAK,QAAQ,CAAC,IAAI;oBAChB,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC/B,MAAM;gBACR,KAAK,QAAQ,CAAC,KAAK;oBACjB,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBAChC,MAAM;YACV,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,OAAO;QACL,KAAK,EAAE,EAAE;QACT,YAAY,EAAE,KAAK;QACnB,aAAa,EAAE,IAAI;QACnB,MAAM,EAAE,IAAI;QACZ,eAAe,EAAE,EAAE;QACnB,YAAY,EAAE;YACZ,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,KAAK;SACZ;QACD,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;QACnC,gBAAgB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC;QAC9D,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;QACtC,kBAAkB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC;QAClE,eAAe,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,YAAY,EAAE,CAAC;QACxD,eAAe,EAAE,CAAC,MAAM,EAAE,EAAE,CAC1B,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACd,YAAY,kCACP,KAAK,CAAC,YAAY,GAClB,MAAM,CACV;SACF,CAAC,CAAC;QACL,aAAa,EAAE,CAAC,UAAU,EAAE,EAAE,CAC5B,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACd,YAAY,kCACP,KAAK,CAAC,YAAY,KACrB,UAAU,GACX;SACF,CAAC,CAAC;QACL,MAAM,EAAE,KAAK,IAAI,EAAE;YACjB,MAAM,EACJ,KAAK,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,SAAS,EACT,YAAY,GACb,GAAG,GAAG,EAAE,CAAC;YACV,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAC9D,CAAC;YACD,eAAe,CAAC,IAAI,CAAC,CAAC;YACtB,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,gCAAgC,KAAK,GAAG,CAAC,CAAC;YAE7D,IAAI,CAAC;gBACH,MAAM,
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/provider/store.tsx"],"names":[],"mappings":"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","sourcesContent":["import { create } from 'zustand';\n\nimport {\n type CoreSDK as SearchcraftCore,\n SDKDebugger,\n LogLevel,\n type SearchcraftResponse,\n type Facets,\n} from '@searchcraft/core';\n\ninterface ThemeState {\n theme: 'light' | 'dark';\n toggleTheme: () => void;\n}\n\ninterface SearchParams {\n mode: 'fuzzy' | 'normal';\n sort: 'asc' | 'desc';\n yearsRange?: [number, number];\n}\n\ninterface SearchcraftState {\n facets: Facets | null;\n initialize: (searchcraft: SearchcraftCore, debug?: boolean) => void;\n isRequesting: boolean;\n query: string;\n search: () => Promise<void>;\n searchParams: SearchParams;\n searchResults: SearchcraftResponse | null;\n selectedFilters: string[]; // Add this to store selected filters\n setFacets: (facets: Facets) => void;\n setIsRequesting: (isRequesting: boolean) => void;\n setQuery: (query: string) => void;\n setSearchParams: (params: Partial<SearchParams>) => void;\n setSearchResults: (results: SearchcraftResponse | null) => void;\n setSelectedFilters: (filters: string[]) => void; // Update selected filters\n setYearsRange: (yearsRange: [number, number]) => void;\n}\n\n// Zustand store for Searchcraft state\nconst useSearchcraftStore = create<SearchcraftState>((set, get) => {\n let searchcraft: SearchcraftCore | null = null;\n let debuggerInstance: SDKDebugger | null = null;\n\n const log = (level: LogLevel, message: string) => {\n if (debuggerInstance) {\n switch (level) {\n case LogLevel.DEBUG:\n debuggerInstance.debug(message);\n break;\n case LogLevel.INFO:\n debuggerInstance.info(message);\n break;\n case LogLevel.WARN:\n debuggerInstance.warn(message);\n break;\n case LogLevel.ERROR:\n debuggerInstance.error(message);\n break;\n }\n }\n };\n\n return {\n query: '',\n isRequesting: false,\n searchResults: null,\n facets: null,\n selectedFilters: [],\n searchParams: {\n mode: 'fuzzy',\n sort: 'asc',\n },\n setQuery: (query) => set({ query }),\n setSearchResults: (results) => set({ searchResults: results }),\n setFacets: (facets) => set({ facets }),\n setSelectedFilters: (filters) => set({ selectedFilters: filters }),\n setIsRequesting: (isRequesting) => set({ isRequesting }),\n setSearchParams: (params) =>\n set((state) => ({\n searchParams: {\n ...state.searchParams,\n ...params,\n },\n })),\n setYearsRange: (yearsRange) =>\n set((state) => ({\n searchParams: {\n ...state.searchParams,\n yearsRange,\n },\n })),\n search: async () => {\n const {\n query,\n selectedFilters,\n setIsRequesting,\n setSearchResults,\n setFacets,\n searchParams,\n } = get();\n if (!searchcraft) {\n throw new Error('Searchcraft instance is not initialized.');\n }\n setIsRequesting(true);\n log(LogLevel.INFO, `Starting search with query: \"${query}\"`);\n\n try {\n const searchRequest = {\n query,\n mode: searchParams.mode,\n sort: searchParams.sort,\n facets:\n selectedFilters.length > 0\n ? {\n section: {\n counts: Object.fromEntries(\n selectedFilters.map((path) => [path, 1]),\n ),\n },\n }\n : null,\n yearsRange: searchParams.yearsRange,\n };\n\n const results = await searchcraft.search(searchRequest);\n setSearchResults(results);\n const updatedFacets = results.data.facets || null;\n setFacets(updatedFacets);\n\n log(LogLevel.DEBUG, `Search results: ${JSON.stringify(results)}`);\n log(LogLevel.DEBUG, `Updated facets: ${JSON.stringify(updatedFacets)}`);\n } catch (error) {\n console.error(`Search failed: ${(error as Error).message}`);\n log(\n LogLevel.ERROR,\n `Search failed with error: ${(error as Error).message}`,\n );\n } finally {\n setIsRequesting(false);\n }\n },\n initialize: (searchcraftInstance, debug = false) => {\n searchcraft = searchcraftInstance;\n debuggerInstance = debug\n ? new SDKDebugger({ logLevel: LogLevel.DEBUG })\n : null;\n\n log(LogLevel.INFO, 'Searchcraft store initialized.');\n },\n };\n});\n\nconst useThemeStore = create<ThemeState>((set) => ({\n theme: 'light',\n toggleTheme: () =>\n set((state) => ({ theme: state.theme === 'light' ? 'dark' : 'light' })),\n}));\n\nexport { useSearchcraftStore, useThemeStore };\n"]}
|
|
@@ -60,4 +60,15 @@ export function getFormattedTimeFromNow(timestamp) {
|
|
|
60
60
|
}
|
|
61
61
|
return `${years}y ago`;
|
|
62
62
|
}
|
|
63
|
+
export function flattenFacets(sections) {
|
|
64
|
+
return sections.flatMap((section) => {
|
|
65
|
+
const fullPath = section.path;
|
|
66
|
+
const filter = {
|
|
67
|
+
label: `${fullPath.replace(/^\//, '')} (${section.count})`,
|
|
68
|
+
value: fullPath,
|
|
69
|
+
};
|
|
70
|
+
const children = section.children ? flattenFacets(section.children) : [];
|
|
71
|
+
return [filter, ...children];
|
|
72
|
+
});
|
|
73
|
+
}
|
|
63
74
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"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","sourcesContent":["export function parseCustomStyles(\n styles: string | Record<string, string>,\n): Record<string, string> {\n if (typeof styles === 'string') {\n try {\n return JSON.parse(styles);\n } catch (error) {\n console.error('Invalid customStyles format:', styles);\n return {};\n }\n }\n return styles || {};\n}\n\nexport function parseSearchKeys(\n documentAttributesForDisplay: string,\n): string[] {\n try {\n const parsedKeys = JSON.parse(documentAttributesForDisplay);\n if (\n Array.isArray(parsedKeys) &&\n parsedKeys.every((key) => typeof key === 'string')\n ) {\n return parsedKeys;\n }\n console.warn(\n 'searchKeys must be a JSON array of strings. Defaulting to an empty array.',\n );\n return [];\n } catch (error) {\n console.error('Failed to parse searchKeys:', error);\n return [];\n }\n}\n\nexport function extractDynamicProperties(\n document: Record<string, string | number>,\n keys: string[],\n) {\n const extractedProperties: Record<string, string | number> = {};\n keys.forEach((key) => {\n extractedProperties[key] = document[key] || '';\n });\n return extractedProperties;\n}\n\nexport function serializeStyles(\n styles: Record<string, Record<string, string>>,\n): string {\n try {\n return JSON.stringify(styles);\n } catch (error) {\n console.error('Error serializing styles:', error);\n return '{}';\n }\n}\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"]}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,iBAAiB,CAC/B,MAAuC;IAEvC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,MAAM,CAAC,CAAC;YACtD,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IACD,OAAO,MAAM,IAAI,EAAE,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,4BAAoC;IAEpC,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC5D,IACE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;YACzB,UAAU,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,EAClD,CAAC;YACD,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,OAAO,CAAC,IAAI,CACV,2EAA2E,CAC5E,CAAC;QACF,OAAO,EAAE,CAAC;IACZ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;QACpD,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,QAAyC,EACzC,IAAc;IAEd,MAAM,mBAAmB,GAAoC,EAAE,CAAC;IAChE,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACnB,mBAAmB,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IACjD,CAAC,CAAC,CAAC;IACH,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,MAA8C;IAE9C,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,SAAiB;IACvD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;IACtC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAC9B,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,CAC7C,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,EAAE,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC;IAErC,IAAI,OAAO,GAAG,EAAE,EAAE,CAAC;QACjB,OAAO,GAAG,OAAO,OAAO,CAAC;IAC3B,CAAC;IACD,IAAI,KAAK,GAAG,EAAE,EAAE,CAAC;QACf,OAAO,GAAG,KAAK,OAAO,CAAC;IACzB,CAAC;IACD,IAAI,IAAI,GAAG,GAAG,EAAE,CAAC;QACf,OAAO,GAAG,IAAI,OAAO,CAAC;IACxB,CAAC;IACD,OAAO,GAAG,KAAK,OAAO,CAAC;AACzB,CAAC;AAaD,MAAM,UAAU,aAAa,CAAC,QAAmB;IAC/C,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;QAC9B,MAAM,MAAM,GAAG;YACb,KAAK,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,KAAK,GAAG;YAC1D,KAAK,EAAE,QAAQ;SAChB,CAAC;QAEF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,OAAO,CAAC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;AACL,CAAC","sourcesContent":["export function parseCustomStyles(\n styles: string | Record<string, string>,\n): Record<string, string> {\n if (typeof styles === 'string') {\n try {\n return JSON.parse(styles);\n } catch (error) {\n console.error('Invalid customStyles format:', styles);\n return {};\n }\n }\n return styles || {};\n}\n\nexport function parseSearchKeys(\n documentAttributesForDisplay: string,\n): string[] {\n try {\n const parsedKeys = JSON.parse(documentAttributesForDisplay);\n if (\n Array.isArray(parsedKeys) &&\n parsedKeys.every((key) => typeof key === 'string')\n ) {\n return parsedKeys;\n }\n console.warn(\n 'searchKeys must be a JSON array of strings. Defaulting to an empty array.',\n );\n return [];\n } catch (error) {\n console.error('Failed to parse searchKeys:', error);\n return [];\n }\n}\n\nexport function extractDynamicProperties(\n document: Record<string, string | number>,\n keys: string[],\n) {\n const extractedProperties: Record<string, string | number> = {};\n keys.forEach((key) => {\n extractedProperties[key] = document[key] || '';\n });\n return extractedProperties;\n}\n\nexport function serializeStyles(\n styles: Record<string, Record<string, string>>,\n): string {\n try {\n return JSON.stringify(styles);\n } catch (error) {\n console.error('Error serializing styles:', error);\n return '{}';\n }\n}\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\ntype Section = {\n count: number;\n path: string;\n children: Section[];\n};\n\ntype FacetCheckbox = {\n label: string;\n value: string;\n};\n\nexport function flattenFacets(sections: Section[]): FacetCheckbox[] {\n return sections.flatMap((section) => {\n const fullPath = section.path;\n const filter = {\n label: `${fullPath.replace(/^\\//, '')} (${section.count})`,\n value: fullPath,\n };\n\n const children = section.children ? flattenFacets(section.children) : [];\n return [filter, ...children];\n });\n}\n"]}
|
package/dist/components/index.js
CHANGED
|
@@ -19,8 +19,8 @@ import { SearchcraftSpinnerDark } from './searchcraft-spinner-dark.js';
|
|
|
19
19
|
import { SearchcraftSpinnerLight } from './searchcraft-spinner-light.js';
|
|
20
20
|
import { SearchcraftToggleButton } from './searchcraft-toggle-button.js';
|
|
21
21
|
export { g as getAssetPath, s as setAssetPath, a as setNonce, b as setPlatformOptions } from './p-7498e493.js';
|
|
22
|
-
export { e as extractDynamicProperties, p as parseCustomStyles, a as parseSearchKeys, s as serializeStyles } from './p-
|
|
23
|
-
export { u as useSearchcraftStore, a as useThemeStore } from './p-
|
|
22
|
+
export { e as extractDynamicProperties, p as parseCustomStyles, a as parseSearchKeys, s as serializeStyles } from './p-2bda632c.js';
|
|
23
|
+
export { u as useSearchcraftStore, a as useThemeStore } from './p-157e5b1a.js';
|
|
24
24
|
|
|
25
25
|
const defineCustomElements = (opts) => {
|
|
26
26
|
if (typeof customElements !== 'undefined') {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { p as proxyCustomElement, H, c as createEvent, h } from './p-7498e493.js';
|
|
1
|
+
import { p as proxyCustomElement, H, c as createEvent, h, F as Fragment } from './p-7498e493.js';
|
|
2
2
|
|
|
3
|
-
const searchcraftBaseSearchResultModuleCss = "@charset \"UTF-8\";:root{--font-stack:Helvetica, Arial, sans-serif}.interactiveResultContainerLight{align-items:flex-start;border-radius:16px;display:flex;flex-direction:column;gap:16px;padding:8px;position:relative;background-color:#FAFAFA}@media (min-width: 600px){.interactiveResultContainerLight{flex-direction:row}}.interactiveResultContainerDark{align-items:flex-start;border-radius:16px;display:flex;flex-direction:column;gap:16px;padding:8px;position:relative;background-color:#2E2E2E}@media (min-width: 600px){.interactiveResultContainerDark{flex-direction:row}}.resultContainer{align-items:flex-start;display:flex;flex-direction:column;gap:16px}@media (min-width: 600px){.resultContainer{flex-direction:row}}.interactiveIconLarge{display:inline-block;position:absolute;right:5px;top:8px}@media (max-width: 600px){.interactiveIconLarge{display:none}}.interactiveIconSmall{display:inline-block;position:absolute;right:5px;top:-2px}@media (min-width: 600px){.interactiveIconSmall{display:none}}.imageContainer{max-width:100%}.contentContainer{max-height:100%;max-width:100%}@media (min-width: 600px){.contentContainer{max-width:50%}}.secondaryContentContainer{display:flex}.imageLight{
|
|
3
|
+
const searchcraftBaseSearchResultModuleCss = "@charset \"UTF-8\";:root{--font-stack:Helvetica, Arial, sans-serif}.interactiveResultContainerLight{align-items:flex-start;border-radius:16px;display:flex;flex-direction:column;gap:16px;padding:8px;position:relative;background-color:#FAFAFA}@media (min-width: 600px){.interactiveResultContainerLight{flex-direction:row}}.interactiveResultContainerDark{align-items:flex-start;border-radius:16px;display:flex;flex-direction:column;gap:16px;padding:8px;position:relative;background-color:#2E2E2E}@media (min-width: 600px){.interactiveResultContainerDark{flex-direction:row}}.resultContainer{align-items:flex-start;display:flex;flex-direction:column;gap:16px}@media (min-width: 600px){.resultContainer{flex-direction:row}}.interactiveIconLarge{display:inline-block;position:absolute;right:5px;top:8px}@media (max-width: 600px){.interactiveIconLarge{display:none}}.interactiveIconSmall{display:inline-block;position:absolute;right:5px;top:-2px}@media (min-width: 600px){.interactiveIconSmall{display:none}}.imageContainer{max-width:100%}.contentContainer{max-height:100%;max-width:100%}@media (min-width: 600px){.contentContainer{max-width:50%}}.secondaryContentContainer{display:flex}.imageLight{border-radius:8px;max-height:100%;max-width:100%;border:1px solid #D9D9D9}.imageDark{border-radius:8px;max-height:100%;max-width:100%;border:1px solid #333}.headingLight{font-family:var(--font-stack);font-size:16px;font-weight:700;line-height:20px;margin-bottom:4px;margin-top:0;position:relative;color:#292929}.headingDark{font-family:var(--font-stack);font-size:16px;font-weight:700;line-height:20px;margin-bottom:4px;margin-top:0;position:relative;color:#FFF}.subheadingLight{font-family:var(--font-stack);font-size:12px;font-weight:400;line-height:16px;margin-bottom:4px;margin-top:0px;color:#737373}.subheadingDark{font-family:var(--font-stack);font-size:12px;font-weight:400;line-height:16px;margin-bottom:4px;margin-top:0px;color:#BFBFBF}.primaryContentLight{font-family:var(--font-stack);font-size:16px;font-weight:400;line-height:20px;margin-bottom:4px;margin-top:0px;color:#404040}.primaryContentDark{font-family:var(--font-stack);font-size:16px;font-weight:400;line-height:20px;margin-bottom:4px;margin-top:0px;color:#E6E6E6}.secondaryContentLight{font-family:var(--font-stack);font-size:16px;font-weight:400;line-height:20px;margin-bottom:4px;margin-top:0px;color:#404040}.secondaryContentLight::after{content:\"•\";color:#404040;font-size:1em;margin-left:5px;margin-right:5px}.secondaryContentDark{font-family:var(--font-stack);font-size:16px;font-weight:400;line-height:20px;margin-bottom:4px;margin-top:0px;color:#E6E6E6}.tertiaryContentLight{font-family:var(--font-stack);font-size:16px;font-weight:400;line-height:20px;margin-bottom:4px;margin-top:0px;color:#404040}.tertiaryContentDark{font-family:var(--font-stack);font-size:16px;font-weight:400;line-height:20px;margin-bottom:4px;margin-top:0px;color:#E6E6E6}";
|
|
4
4
|
const SearchcraftBaseSearchResultStyle0 = searchcraftBaseSearchResultModuleCss;
|
|
5
5
|
|
|
6
6
|
const SearchcraftBaseSearchResult = /*@__PURE__*/ proxyCustomElement(class SearchcraftBaseSearchResult extends H {
|
|
@@ -33,6 +33,7 @@ const SearchcraftBaseSearchResult = /*@__PURE__*/ proxyCustomElement(class Searc
|
|
|
33
33
|
this.subheadingText = '';
|
|
34
34
|
this.tertiaryContent = '';
|
|
35
35
|
this.themeMode = 'light';
|
|
36
|
+
this.placeImageRight = false;
|
|
36
37
|
}
|
|
37
38
|
parseStyles() {
|
|
38
39
|
try {
|
|
@@ -46,11 +47,13 @@ const SearchcraftBaseSearchResult = /*@__PURE__*/ proxyCustomElement(class Searc
|
|
|
46
47
|
render() {
|
|
47
48
|
const isLightTheme = this.themeMode === 'light';
|
|
48
49
|
const styles = this.parseStyles();
|
|
49
|
-
|
|
50
|
+
const imageContainer = this.imageSource && (h("div", { key: '1dee969549e02c262a9fdf050438630961d1954e', class: 'imageContainer' }, h("img", { key: '2a08fd81d563ad2f18e91d22449afefb772244c8', alt: this.imageDescription, class: isLightTheme ? 'imageLight' : 'imageDark', src: this.imageSource, style: styles.image || {} })));
|
|
51
|
+
const contentContainer = (h("div", { key: '93f350bba36c296377dc09824d86631e4f731e78', class: 'contentContainer' }, h("h2", { key: 'd630e930eba15b86c84f7e62f73d1d3539c3650d', class: isLightTheme ? 'headingLight' : 'headingDark', style: styles.heading || {} }, this.headingText), h("h3", { key: '0f8639094f2f64695d887b2de6fc1d777564cbb2', class: isLightTheme ? 'subheadingLight' : 'subheadingDark', style: styles.subheading || {} }, this.subheadingText), h("p", { key: 'e8562ca0a438f9ff0848920a5bae1e208eb3ae72', class: isLightTheme ? 'primaryContentLight' : 'primaryContentDark', style: styles.primaryContent || {} }, this.primaryContent), h("div", { key: 'dd97fb5946a1a50ccba31ae97c8b5b6e0cac91d9', class: 'secondaryContentContainer' }, h("p", { key: '9c6d705bfbd4eccb24f5afcbaad9ec92ca6fda9f', class: isLightTheme ? 'secondaryContentLight' : 'secondaryContentDark', style: styles.secondaryContent || {} }, this.secondaryContent), h("p", { key: '7147e47a9ed408066439431329cda75495567227', class: isLightTheme ? 'tertiaryContentLight' : 'tertiaryContentDark', style: styles.tertiaryContent || {} }, this.tertiaryContent)), this.buttonText && (h("button", { key: 'e620382ea1fe2f0e60645330ec087f767ff535a0', onClick: this.handleButtonClick, style: styles.button || {}, type: 'button' }, this.buttonText))));
|
|
52
|
+
return (h("div", { key: 'a104499c8adaa7d57743aaea20ee4af7caf6bdb9', class: this.isInteractive
|
|
50
53
|
? isLightTheme
|
|
51
54
|
? 'interactiveResultContainerLight'
|
|
52
55
|
: 'interactiveResultContainerDark'
|
|
53
|
-
: 'resultContainer', onKeyDown: this.keyDownCallback, onClick: this.handleContainerClick, style: styles.container || {}, tabindex: '0' },
|
|
56
|
+
: 'resultContainer', onKeyDown: this.keyDownCallback, onClick: this.handleContainerClick, style: styles.container || {}, tabindex: '0' }, this.placeImageRight ? (h(Fragment, null, contentContainer, imageContainer)) : (h(Fragment, null, imageContainer, contentContainer))));
|
|
54
57
|
}
|
|
55
58
|
static get style() { return SearchcraftBaseSearchResultStyle0; }
|
|
56
59
|
}, [1, "searchcraft-base-search-result", {
|
|
@@ -64,7 +67,8 @@ const SearchcraftBaseSearchResult = /*@__PURE__*/ proxyCustomElement(class Searc
|
|
|
64
67
|
"secondaryContent": [1, "secondary-content"],
|
|
65
68
|
"subheadingText": [1, "subheading-text"],
|
|
66
69
|
"tertiaryContent": [1, "tertiary-content"],
|
|
67
|
-
"themeMode": [1, "theme-mode"]
|
|
70
|
+
"themeMode": [1, "theme-mode"],
|
|
71
|
+
"placeImageRight": [4, "place-image-right"]
|
|
68
72
|
}]);
|
|
69
73
|
function defineCustomElement() {
|
|
70
74
|
if (typeof customElements === "undefined") {
|
|
@@ -82,4 +86,4 @@ function defineCustomElement() {
|
|
|
82
86
|
|
|
83
87
|
export { SearchcraftBaseSearchResult as S, defineCustomElement as d };
|
|
84
88
|
|
|
85
|
-
//# sourceMappingURL=p-
|
|
89
|
+
//# sourceMappingURL=p-023371c8.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"p-023371c8.js","mappings":"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","names":[],"sources":["src/components/searchcraft-base-search-result/searchcraft-base-search-result.module.scss?tag=searchcraft-base-search-result&encapsulation=shadow","src/components/searchcraft-base-search-result/searchcraft-base-search-result.tsx"],"sourcesContent":["@import '../../utils/theme';\n\n:root {\n --font-stack: Helvetica, Arial, sans-serif;\n}\n\n@mixin interactive-result-container-base {\n align-items: flex-start;\n border-radius: 16px;\n display: flex;\n flex-direction: column;\n gap: 16px;\n padding: 8px;\n position: relative;\n\n @media (min-width: 600px) {\n flex-direction: row;\n }\n}\n\n.interactiveResultContainerLight {\n @include interactive-result-container-base;\n background-color: $light-search-result-container-background;\n}\n\n.interactiveResultContainerDark {\n @include interactive-result-container-base;\n background-color: $dark-search-result-container-background;\n}\n\n.resultContainer {\n align-items: flex-start;\n display: flex;\n flex-direction: column;\n gap: 16px;\n\n @media (min-width: 600px) {\n flex-direction: row;\n }\n}\n\n.interactiveIconLarge {\n display: inline-block;\n position: absolute;\n right: 5px;\n top: 8px;\n\n\n @media (max-width: 600px) {\n display: none;\n }\n}\n\n.interactiveIconSmall {\n display: inline-block;\n position: absolute;\n right: 5px;\n top: -2px;\n\n\n @media (min-width: 600px) {\n display: none;\n }\n}\n\n.imageContainer {\n max-width: 100%;\n}\n\n.contentContainer {\n max-height: 100%;\n max-width: 100%;\n\n @media (min-width: 600px) {\n max-width: 50%;\n }\n}\n\n.secondaryContentContainer {\n display: flex;\n\n}\n\n@mixin image-base {\n border-radius: 8px;\n max-height: 100%;\n max-width: 100%;\n}\n\n.imageLight {\n @include image-base;\n border: 1px solid $light-search-result-image-border;\n}\n\n.imageDark {\n @include image-base;\n border: 1px solid $dark-search-result-image-border;\n}\n\n@mixin heading-base {\n font-family: var(--font-stack);\n font-size: 16px;\n font-weight: 700;\n line-height: 20px;\n margin-bottom: 4px;\n margin-top: 0;\n position: relative;\n}\n\n.headingLight {\n @include heading-base;\n color: $light-search-result-heading-color;\n}\n\n.headingDark {\n @include heading-base;\n color: $dark-search-result-heading-color;\n}\n\n@mixin subheading-base {\n font-family: var(--font-stack);\n font-size: 12px;\n font-weight: 400;\n line-height: 16px;\n margin-bottom: 4px;\n margin-top: 0px;\n}\n\n.subheadingLight {\n @include subheading-base;\n color: $light-search-result-subheading-color;\n}\n\n.subheadingDark {\n @include subheading-base;\n color: $dark-search-result-subheading-color\n}\n\n@mixin body-content-base {\n font-family: var(--font-stack);\n font-size: 16px;\n font-weight: 400;\n line-height: 20px;\n margin-bottom: 4px;\n margin-top: 0px;\n}\n\n.primaryContentLight {\n @include body-content-base;\n color: $light-search-result-body-content-color;\n}\n\n.primaryContentDark {\n @include body-content-base;\n color: $dark-search-result-body-content-color;\n}\n\n.secondaryContentLight {\n @include body-content-base;\n color: $light-search-result-body-content-color;\n}\n\n.secondaryContentLight::after {\n content: \"•\";\n color: $light-search-result-body-content-color;\n font-size: 1em;\n margin-left: 5px;\n margin-right: 5px;\n}\n\n.secondaryContentDark {\n @include body-content-base;\n color: $dark-search-result-body-content-color;\n}\n\n.tertiaryContentLight {\n @include body-content-base;\n color: $light-search-result-body-content-color;\n}\n\n.tertiaryContentDark {\n @include body-content-base;\n color: $dark-search-result-body-content-color;\n}","import { Component, Event, Fragment, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'searchcraft-base-search-result',\n styleUrl: 'searchcraft-base-search-result.module.scss',\n shadow: true,\n})\nexport class SearchcraftBaseSearchResult {\n @Prop() buttonText = ''; // Label for the button\n @Prop() customStyles = '{}'; // New string prop for serialized styles.\n @Prop() headingText = ''; // Text for the heading\n @Prop() imageDescription = ''; // Alternative text for the image\n @Prop() imageSource = ''; // Source URL for the image\n @Prop() isInteractive = false; // Determines if the result is interactive\n @Prop() primaryContent = ''; // Primary body content\n @Prop() secondaryContent = ''; // Secondary body content\n @Prop() subheadingText = ''; // Text for the subheading\n @Prop() tertiaryContent = ''; // Tertiary body content\n @Prop() themeMode: 'light' | 'dark' = 'light'; // Light or dark theme context\n @Prop() placeImageRight = false; // Determines the placement of the image container\n\n @Event() buttonCallback: () => void = () => {}; // Callback for button click\n @Event() keyDownCallback: () => void = () => {}; // Callback for key down event\n @Event() resultCallback: () => void = () => {}; // Callback for result container click\n\n private handleButtonClick = () => {\n this.buttonCallback();\n };\n\n private handleContainerClick = () => {\n if (this.isInteractive) {\n this.resultCallback();\n }\n };\n\n private parseStyles(): Record<string, { [key: string]: string }> {\n try {\n return JSON.parse(this.customStyles);\n } catch (error) {\n console.error('Error parsing custom styles:', error);\n return {};\n }\n }\n\n render() {\n const isLightTheme = this.themeMode === 'light';\n const styles = this.parseStyles();\n\n const imageContainer = this.imageSource && (\n <div class='imageContainer'>\n <img\n alt={this.imageDescription}\n class={isLightTheme ? 'imageLight' : 'imageDark'}\n src={this.imageSource}\n style={styles.image || {}}\n />\n </div>\n );\n\n const contentContainer = (\n <div class='contentContainer'>\n <h2\n class={isLightTheme ? 'headingLight' : 'headingDark'}\n style={styles.heading || {}}\n >\n {this.headingText}\n </h2>\n <h3\n class={isLightTheme ? 'subheadingLight' : 'subheadingDark'}\n style={styles.subheading || {}}\n >\n {this.subheadingText}\n </h3>\n <p\n class={isLightTheme ? 'primaryContentLight' : 'primaryContentDark'}\n style={styles.primaryContent || {}}\n >\n {this.primaryContent}\n </p>\n <div class='secondaryContentContainer'>\n <p\n class={\n isLightTheme ? 'secondaryContentLight' : 'secondaryContentDark'\n }\n style={styles.secondaryContent || {}}\n >\n {this.secondaryContent}\n </p>\n <p\n class={\n isLightTheme ? 'tertiaryContentLight' : 'tertiaryContentDark'\n }\n style={styles.tertiaryContent || {}}\n >\n {this.tertiaryContent}\n </p>\n </div>\n {this.buttonText && (\n <button\n onClick={this.handleButtonClick}\n style={styles.button || {}}\n type='button'\n >\n {this.buttonText}\n </button>\n )}\n </div>\n );\n\n return (\n <div\n class={\n this.isInteractive\n ? isLightTheme\n ? 'interactiveResultContainerLight'\n : 'interactiveResultContainerDark'\n : 'resultContainer'\n }\n onKeyDown={this.keyDownCallback}\n onClick={this.handleContainerClick}\n style={styles.container || {}}\n tabindex='0'\n >\n {this.placeImageRight ? (\n <Fragment>\n {contentContainer}\n {imageContainer}\n </Fragment>\n ) : (\n <Fragment>\n {imageContainer}\n {contentContainer}\n </Fragment>\n )}\n </div>\n );\n }\n}\n"],"version":3}
|
|
@@ -263,16 +263,17 @@ const useSearchcraftStore = zustand.create((set, get) => {
|
|
|
263
263
|
setIsRequesting(true);
|
|
264
264
|
log(d.INFO, `Starting search with query: "${query}"`);
|
|
265
265
|
try {
|
|
266
|
-
const counts = selectedFilters.reduce((acc, filter) => {
|
|
267
|
-
const cleanedFilter = filter.replace(/^section:/, '');
|
|
268
|
-
acc[cleanedFilter] = 1;
|
|
269
|
-
return acc;
|
|
270
|
-
}, {});
|
|
271
266
|
const searchRequest = {
|
|
272
267
|
query,
|
|
273
268
|
mode: searchParams.mode,
|
|
274
269
|
sort: searchParams.sort,
|
|
275
|
-
facets: selectedFilters.length > 0
|
|
270
|
+
facets: selectedFilters.length > 0
|
|
271
|
+
? {
|
|
272
|
+
section: {
|
|
273
|
+
counts: Object.fromEntries(selectedFilters.map((path) => [path, 1])),
|
|
274
|
+
},
|
|
275
|
+
}
|
|
276
|
+
: null,
|
|
276
277
|
yearsRange: searchParams.yearsRange,
|
|
277
278
|
};
|
|
278
279
|
const results = await searchcraft.search(searchRequest);
|
|
@@ -306,4 +307,4 @@ const useThemeStore = zustand.create((set) => ({
|
|
|
306
307
|
|
|
307
308
|
export { useThemeStore as a, g, useSearchcraftStore as u };
|
|
308
309
|
|
|
309
|
-
//# sourceMappingURL=p-
|
|
310
|
+
//# sourceMappingURL=p-157e5b1a.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"p-33bb5c45.js","mappings":"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","names":["l","reactModule","require$$0","require$$1","create","LogLevel","SDKDebugger"],"sources":["../core-sdk/dist/index.js","../../node_modules/zustand/vanilla.js","../../node_modules/react/cjs/react.production.min.js","../../node_modules/react/index.js","../../node_modules/zustand/react.js","../../node_modules/zustand/index.js","src/provider/store.tsx"],"sourcesContent":["var f = Object.defineProperty;\nvar c = (o, t, e) => t in o ? f(o, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : o[t] = e;\nvar l = (o, t, e) => c(o, typeof t != \"symbol\" ? t + \"\" : t, e);\nclass g {\n constructor(t) {\n l(this, \"config\");\n /**\n * Performs a search operation.\n * @param {SearchParams} searchParams - The parameters for the search.\n * @returns {Promise<SearchcraftResponse>} - Returns the search response or throws an error.\n */\n l(this, \"search\", async (t) => {\n if ((t.query.match(/\"/g) || []).length % 2 !== 0)\n throw new Error(\n \"The search term contains an uneven number of quote characters.\"\n );\n try {\n const n = this.config.index.join(\",\"), s = `${this.config.endpointURL}/index/${n}/search`, r = {\n query: this.buildQueryObject(t),\n limit: t.limit ?? 20\n // Default to 20 if not provided\n };\n t.offset !== void 0 && (r.offset = t.offset), t.facets && (r.facets = t.facets), t.order_by && (r.order_by = t.order_by, r.sort = t.sort === \"desc\" || t.sort === \"asc\" ? t.sort : \"asc\");\n const u = {\n method: \"POST\",\n headers: {\n Authorization: this.config.apiKey,\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(r)\n }, i = await fetch(s, u);\n if (!i.ok)\n throw new Error(\n `Error: ${i.statusText} (Status: ${i.status})`\n );\n return await i.json();\n } catch (n) {\n throw console.error(\"Error parsing response:\", n), n;\n }\n });\n if (!t.endpointURL || !t.index || !t.apiKey)\n throw new Error(\n \"Endpoint URL, Index value(s), and API Key must be provided\"\n );\n this.config = t;\n }\n /**\n * Builds a query object for the search request.\n * @param {SearchParams} searchParams - The parameters for the search.\n * @returns {QueryObject} - A properly formatted query object.\n */\n buildQueryObject(t) {\n var r;\n const e = [];\n let n = \"should\";\n if (t.yearsRange) {\n n = \"must\";\n const u = /* @__PURE__ */ new Date(`${t.yearsRange[0]}-01-01`), i = /* @__PURE__ */ new Date(`${t.yearsRange[1]}-12-31`);\n e.push({\n occur: n,\n normal: {\n ctx: `date_published:[${u.toISOString()} TO ${i.toISOString()}]`\n }\n });\n }\n const s = Object.keys(((r = t == null ? void 0 : t.facets) == null ? void 0 : r.section.counts) || {});\n return s && s.length > 0 && (n = \"must\", e.push({\n occur: n,\n normal: {\n ctx: `section: IN [${s.join(\" \")}]`\n }\n })), t.sort === \"desc\" ? t.order_by = \"date_published\" : t.order_by = \"\", e.push({\n occur: n,\n // Valid, as 'occur' is a required property in QueryItem\n [t.mode]: { ctx: t.query }\n // Ensure dynamic mode is inside queryType\n }), e;\n }\n}\nvar d = /* @__PURE__ */ ((o) => (o[o.DEBUG = 0] = \"DEBUG\", o[o.INFO = 1] = \"INFO\", o[o.WARN = 2] = \"WARN\", o[o.ERROR = 3] = \"ERROR\", o))(d || {});\nclass b {\n constructor(t) {\n l(this, \"logLevel\");\n l(this, \"logFormatter\");\n this.logLevel = t.logLevel || 1, this.logFormatter = t.logFormatter || this.defaultFormatter;\n }\n defaultFormatter(t, e) {\n return `[${d[t]}] ${(/* @__PURE__ */ new Date()).toISOString()}: ${e}`;\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}\nexport {\n g as CoreSDK,\n d as LogLevel,\n b as SDKDebugger\n};\n//# sourceMappingURL=index.js.map\n","'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.min.js\n *\n * Copyright (c) Facebook, Inc. and its 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'use strict';var l=Symbol.for(\"react.element\"),n=Symbol.for(\"react.portal\"),p=Symbol.for(\"react.fragment\"),q=Symbol.for(\"react.strict_mode\"),r=Symbol.for(\"react.profiler\"),t=Symbol.for(\"react.provider\"),u=Symbol.for(\"react.context\"),v=Symbol.for(\"react.forward_ref\"),w=Symbol.for(\"react.suspense\"),x=Symbol.for(\"react.memo\"),y=Symbol.for(\"react.lazy\"),z=Symbol.iterator;function A(a){if(null===a||\"object\"!==typeof a)return null;a=z&&a[z]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}\nvar B={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,D={};function E(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}E.prototype.isReactComponent={};\nE.prototype.setState=function(a,b){if(\"object\"!==typeof a&&\"function\"!==typeof a&&null!=a)throw Error(\"setState(...): takes an object of state variables to update or a function which returns an object of state variables.\");this.updater.enqueueSetState(this,a,b,\"setState\")};E.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,\"forceUpdate\")};function F(){}F.prototype=E.prototype;function G(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}var H=G.prototype=new F;\nH.constructor=G;C(H,E.prototype);H.isPureReactComponent=!0;var I=Array.isArray,J=Object.prototype.hasOwnProperty,K={current:null},L={key:!0,ref:!0,__self:!0,__source:!0};\nfunction M(a,b,e){var d,c={},k=null,h=null;if(null!=b)for(d in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(k=\"\"+b.key),b)J.call(b,d)&&!L.hasOwnProperty(d)&&(c[d]=b[d]);var g=arguments.length-2;if(1===g)c.children=e;else if(1<g){for(var f=Array(g),m=0;m<g;m++)f[m]=arguments[m+2];c.children=f}if(a&&a.defaultProps)for(d in g=a.defaultProps,g)void 0===c[d]&&(c[d]=g[d]);return{$$typeof:l,type:a,key:k,ref:h,props:c,_owner:K.current}}\nfunction N(a,b){return{$$typeof:l,type:a.type,key:b,ref:a.ref,props:a.props,_owner:a._owner}}function O(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===l}function escape(a){var b={\"=\":\"=0\",\":\":\"=2\"};return\"$\"+a.replace(/[=:]/g,function(a){return b[a]})}var P=/\\/+/g;function Q(a,b){return\"object\"===typeof a&&null!==a&&null!=a.key?escape(\"\"+a.key):b.toString(36)}\nfunction R(a,b,e,d,c){var k=typeof a;if(\"undefined\"===k||\"boolean\"===k)a=null;var h=!1;if(null===a)h=!0;else switch(k){case \"string\":case \"number\":h=!0;break;case \"object\":switch(a.$$typeof){case l:case n:h=!0}}if(h)return h=a,c=c(h),a=\"\"===d?\".\"+Q(h,0):d,I(c)?(e=\"\",null!=a&&(e=a.replace(P,\"$&/\")+\"/\"),R(c,b,e,\"\",function(a){return a})):null!=c&&(O(c)&&(c=N(c,e+(!c.key||h&&h.key===c.key?\"\":(\"\"+c.key).replace(P,\"$&/\")+\"/\")+a)),b.push(c)),1;h=0;d=\"\"===d?\".\":d+\":\";if(I(a))for(var g=0;g<a.length;g++){k=\na[g];var f=d+Q(k,g);h+=R(k,b,e,f,c)}else if(f=A(a),\"function\"===typeof f)for(a=f.call(a),g=0;!(k=a.next()).done;)k=k.value,f=d+Q(k,g++),h+=R(k,b,e,f,c);else if(\"object\"===k)throw b=String(a),Error(\"Objects are not valid as a React child (found: \"+(\"[object Object]\"===b?\"object with keys {\"+Object.keys(a).join(\", \")+\"}\":b)+\"). If you meant to render a collection of children, use an array instead.\");return h}\nfunction S(a,b,e){if(null==a)return a;var d=[],c=0;R(a,d,\"\",\"\",function(a){return b.call(e,a,c++)});return d}function T(a){if(-1===a._status){var b=a._result;b=b();b.then(function(b){if(0===a._status||-1===a._status)a._status=1,a._result=b},function(b){if(0===a._status||-1===a._status)a._status=2,a._result=b});-1===a._status&&(a._status=0,a._result=b)}if(1===a._status)return a._result.default;throw a._result;}\nvar U={current:null},V={transition:null},W={ReactCurrentDispatcher:U,ReactCurrentBatchConfig:V,ReactCurrentOwner:K};function X(){throw Error(\"act(...) is not supported in production builds of React.\");}\nexports.Children={map:S,forEach:function(a,b,e){S(a,function(){b.apply(this,arguments)},e)},count:function(a){var b=0;S(a,function(){b++});return b},toArray:function(a){return S(a,function(a){return a})||[]},only:function(a){if(!O(a))throw Error(\"React.Children.only expected to receive a single React element child.\");return a}};exports.Component=E;exports.Fragment=p;exports.Profiler=r;exports.PureComponent=G;exports.StrictMode=q;exports.Suspense=w;\nexports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=W;exports.act=X;\nexports.cloneElement=function(a,b,e){if(null===a||void 0===a)throw Error(\"React.cloneElement(...): The argument must be a React element, but you passed \"+a+\".\");var d=C({},a.props),c=a.key,k=a.ref,h=a._owner;if(null!=b){void 0!==b.ref&&(k=b.ref,h=K.current);void 0!==b.key&&(c=\"\"+b.key);if(a.type&&a.type.defaultProps)var g=a.type.defaultProps;for(f in b)J.call(b,f)&&!L.hasOwnProperty(f)&&(d[f]=void 0===b[f]&&void 0!==g?g[f]:b[f])}var f=arguments.length-2;if(1===f)d.children=e;else if(1<f){g=Array(f);\nfor(var m=0;m<f;m++)g[m]=arguments[m+2];d.children=g}return{$$typeof:l,type:a.type,key:c,ref:k,props:d,_owner:h}};exports.createContext=function(a){a={$$typeof:u,_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null};a.Provider={$$typeof:t,_context:a};return a.Consumer=a};exports.createElement=M;exports.createFactory=function(a){var b=M.bind(null,a);b.type=a;return b};exports.createRef=function(){return{current:null}};\nexports.forwardRef=function(a){return{$$typeof:v,render:a}};exports.isValidElement=O;exports.lazy=function(a){return{$$typeof:y,_payload:{_status:-1,_result:a},_init:T}};exports.memo=function(a,b){return{$$typeof:x,type:a,compare:void 0===b?null:b}};exports.startTransition=function(a){var b=V.transition;V.transition={};try{a()}finally{V.transition=b}};exports.unstable_act=X;exports.useCallback=function(a,b){return U.current.useCallback(a,b)};exports.useContext=function(a){return U.current.useContext(a)};\nexports.useDebugValue=function(){};exports.useDeferredValue=function(a){return U.current.useDeferredValue(a)};exports.useEffect=function(a,b){return U.current.useEffect(a,b)};exports.useId=function(){return U.current.useId()};exports.useImperativeHandle=function(a,b,e){return U.current.useImperativeHandle(a,b,e)};exports.useInsertionEffect=function(a,b){return U.current.useInsertionEffect(a,b)};exports.useLayoutEffect=function(a,b){return U.current.useLayoutEffect(a,b)};\nexports.useMemo=function(a,b){return U.current.useMemo(a,b)};exports.useReducer=function(a,b,e){return U.current.useReducer(a,b,e)};exports.useRef=function(a){return U.current.useRef(a)};exports.useState=function(a){return U.current.useState(a)};exports.useSyncExternalStore=function(a,b,e){return U.current.useSyncExternalStore(a,b,e)};exports.useTransition=function(){return U.current.useTransition()};exports.version=\"18.3.1\";\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.min.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","import { create } from 'zustand';\n\nimport {\n type CoreSDK as SearchcraftCore,\n SDKDebugger,\n LogLevel,\n type SearchcraftResponse,\n type Facets,\n} from '@searchcraft/core';\n\ninterface ThemeState {\n theme: 'light' | 'dark';\n toggleTheme: () => void;\n}\n\ninterface SearchParams {\n mode: 'fuzzy' | 'normal';\n sort: 'asc' | 'desc';\n yearsRange?: [number, number];\n}\n\ninterface SearchcraftState {\n facets: Facets | null;\n initialize: (searchcraft: SearchcraftCore, debug?: boolean) => void;\n isRequesting: boolean;\n query: string;\n search: () => Promise<void>;\n searchParams: SearchParams;\n searchResults: SearchcraftResponse | null;\n selectedFilters: string[]; // Add this to store selected filters\n setFacets: (facets: Facets) => void;\n setIsRequesting: (isRequesting: boolean) => void;\n setQuery: (query: string) => void;\n setSearchParams: (params: Partial<SearchParams>) => void;\n setSearchResults: (results: SearchcraftResponse | null) => void;\n setSelectedFilters: (filters: string[]) => void; // Update selected filters\n setYearsRange: (yearsRange: [number, number]) => void;\n}\n\n// Zustand store for Searchcraft state\nconst useSearchcraftStore = create<SearchcraftState>((set, get) => {\n let searchcraft: SearchcraftCore | null = null;\n let debuggerInstance: SDKDebugger | null = null;\n\n const log = (level: LogLevel, message: string) => {\n if (debuggerInstance) {\n switch (level) {\n case LogLevel.DEBUG:\n debuggerInstance.debug(message);\n break;\n case LogLevel.INFO:\n debuggerInstance.info(message);\n break;\n case LogLevel.WARN:\n debuggerInstance.warn(message);\n break;\n case LogLevel.ERROR:\n debuggerInstance.error(message);\n break;\n }\n }\n };\n\n return {\n query: '',\n isRequesting: false,\n searchResults: null,\n facets: null,\n selectedFilters: [],\n searchParams: {\n mode: 'fuzzy',\n sort: 'asc',\n },\n setQuery: (query) => set({ query }),\n setSearchResults: (results) => set({ searchResults: results }),\n setFacets: (facets) => set({ facets }),\n setSelectedFilters: (filters) => set({ selectedFilters: filters }),\n setIsRequesting: (isRequesting) => set({ isRequesting }),\n setSearchParams: (params) =>\n set((state) => ({\n searchParams: {\n ...state.searchParams,\n ...params,\n },\n })),\n setYearsRange: (yearsRange) =>\n set((state) => ({\n searchParams: {\n ...state.searchParams,\n yearsRange,\n },\n })),\n search: async () => {\n const {\n query,\n selectedFilters,\n setIsRequesting,\n setSearchResults,\n setFacets,\n searchParams,\n } = get();\n if (!searchcraft) {\n throw new Error('Searchcraft instance is not initialized.');\n }\n setIsRequesting(true);\n log(LogLevel.INFO, `Starting search with query: \"${query}\"`);\n\n try {\n const counts: Record<string, number> = selectedFilters.reduce(\n (acc, filter) => {\n const cleanedFilter = filter.replace(/^section:/, '');\n acc[cleanedFilter] = 1;\n return acc;\n },\n {} as Record<string, number>,\n );\n\n const searchRequest = {\n query,\n mode: searchParams.mode,\n sort: searchParams.sort,\n facets: selectedFilters.length > 0 ? { section: { counts } } : null,\n yearsRange: searchParams.yearsRange,\n };\n\n const results = await searchcraft.search(searchRequest);\n setSearchResults(results);\n const updatedFacets = results.data.facets || null;\n setFacets(updatedFacets);\n\n log(LogLevel.DEBUG, `Search results: ${JSON.stringify(results)}`);\n log(LogLevel.DEBUG, `Updated facets: ${JSON.stringify(updatedFacets)}`);\n } catch (error) {\n console.error(`Search failed: ${(error as Error).message}`);\n log(\n LogLevel.ERROR,\n `Search failed with error: ${(error as Error).message}`,\n );\n } finally {\n setIsRequesting(false);\n }\n },\n initialize: (searchcraftInstance, debug = false) => {\n searchcraft = searchcraftInstance;\n debuggerInstance = debug\n ? new SDKDebugger({ logLevel: LogLevel.DEBUG })\n : null;\n\n log(LogLevel.INFO, 'Searchcraft store initialized.');\n },\n };\n});\n\nconst useThemeStore = create<ThemeState>((set) => ({\n theme: 'light',\n toggleTheme: () =>\n set((state) => ({ theme: state.theme === 'light' ? 'dark' : 'light' })),\n}));\n\nexport { useSearchcraftStore, useThemeStore };\n"],"version":3}
|
|
1
|
+
{"file":"p-157e5b1a.js","mappings":"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","names":["l","reactModule","require$$0","require$$1","create","LogLevel","SDKDebugger"],"sources":["../core-sdk/dist/index.js","../../node_modules/zustand/vanilla.js","../../node_modules/react/cjs/react.production.min.js","../../node_modules/react/index.js","../../node_modules/zustand/react.js","../../node_modules/zustand/index.js","src/provider/store.tsx"],"sourcesContent":["var f = Object.defineProperty;\nvar c = (o, t, e) => t in o ? f(o, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : o[t] = e;\nvar l = (o, t, e) => c(o, typeof t != \"symbol\" ? t + \"\" : t, e);\nclass g {\n constructor(t) {\n l(this, \"config\");\n /**\n * Performs a search operation.\n * @param {SearchParams} searchParams - The parameters for the search.\n * @returns {Promise<SearchcraftResponse>} - Returns the search response or throws an error.\n */\n l(this, \"search\", async (t) => {\n if ((t.query.match(/\"/g) || []).length % 2 !== 0)\n throw new Error(\n \"The search term contains an uneven number of quote characters.\"\n );\n try {\n const n = this.config.index.join(\",\"), s = `${this.config.endpointURL}/index/${n}/search`, r = {\n query: this.buildQueryObject(t),\n limit: t.limit ?? 20\n // Default to 20 if not provided\n };\n t.offset !== void 0 && (r.offset = t.offset), t.facets && (r.facets = t.facets), t.order_by && (r.order_by = t.order_by, r.sort = t.sort === \"desc\" || t.sort === \"asc\" ? t.sort : \"asc\");\n const u = {\n method: \"POST\",\n headers: {\n Authorization: this.config.apiKey,\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(r)\n }, i = await fetch(s, u);\n if (!i.ok)\n throw new Error(\n `Error: ${i.statusText} (Status: ${i.status})`\n );\n return await i.json();\n } catch (n) {\n throw console.error(\"Error parsing response:\", n), n;\n }\n });\n if (!t.endpointURL || !t.index || !t.apiKey)\n throw new Error(\n \"Endpoint URL, Index value(s), and API Key must be provided\"\n );\n this.config = t;\n }\n /**\n * Builds a query object for the search request.\n * @param {SearchParams} searchParams - The parameters for the search.\n * @returns {QueryObject} - A properly formatted query object.\n */\n buildQueryObject(t) {\n var r;\n const e = [];\n let n = \"should\";\n if (t.yearsRange) {\n n = \"must\";\n const u = /* @__PURE__ */ new Date(`${t.yearsRange[0]}-01-01`), i = /* @__PURE__ */ new Date(`${t.yearsRange[1]}-12-31`);\n e.push({\n occur: n,\n normal: {\n ctx: `date_published:[${u.toISOString()} TO ${i.toISOString()}]`\n }\n });\n }\n const s = Object.keys(((r = t == null ? void 0 : t.facets) == null ? void 0 : r.section.counts) || {});\n return s && s.length > 0 && (n = \"must\", e.push({\n occur: n,\n normal: {\n ctx: `section: IN [${s.join(\" \")}]`\n }\n })), t.sort === \"desc\" ? t.order_by = \"date_published\" : t.order_by = \"\", e.push({\n occur: n,\n // Valid, as 'occur' is a required property in QueryItem\n [t.mode]: { ctx: t.query }\n // Ensure dynamic mode is inside queryType\n }), e;\n }\n}\nvar d = /* @__PURE__ */ ((o) => (o[o.DEBUG = 0] = \"DEBUG\", o[o.INFO = 1] = \"INFO\", o[o.WARN = 2] = \"WARN\", o[o.ERROR = 3] = \"ERROR\", o))(d || {});\nclass b {\n constructor(t) {\n l(this, \"logLevel\");\n l(this, \"logFormatter\");\n this.logLevel = t.logLevel || 1, this.logFormatter = t.logFormatter || this.defaultFormatter;\n }\n defaultFormatter(t, e) {\n return `[${d[t]}] ${(/* @__PURE__ */ new Date()).toISOString()}: ${e}`;\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}\nexport {\n g as CoreSDK,\n d as LogLevel,\n b as SDKDebugger\n};\n//# sourceMappingURL=index.js.map\n","'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.min.js\n *\n * Copyright (c) Facebook, Inc. and its 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'use strict';var l=Symbol.for(\"react.element\"),n=Symbol.for(\"react.portal\"),p=Symbol.for(\"react.fragment\"),q=Symbol.for(\"react.strict_mode\"),r=Symbol.for(\"react.profiler\"),t=Symbol.for(\"react.provider\"),u=Symbol.for(\"react.context\"),v=Symbol.for(\"react.forward_ref\"),w=Symbol.for(\"react.suspense\"),x=Symbol.for(\"react.memo\"),y=Symbol.for(\"react.lazy\"),z=Symbol.iterator;function A(a){if(null===a||\"object\"!==typeof a)return null;a=z&&a[z]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}\nvar B={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,D={};function E(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}E.prototype.isReactComponent={};\nE.prototype.setState=function(a,b){if(\"object\"!==typeof a&&\"function\"!==typeof a&&null!=a)throw Error(\"setState(...): takes an object of state variables to update or a function which returns an object of state variables.\");this.updater.enqueueSetState(this,a,b,\"setState\")};E.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,\"forceUpdate\")};function F(){}F.prototype=E.prototype;function G(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}var H=G.prototype=new F;\nH.constructor=G;C(H,E.prototype);H.isPureReactComponent=!0;var I=Array.isArray,J=Object.prototype.hasOwnProperty,K={current:null},L={key:!0,ref:!0,__self:!0,__source:!0};\nfunction M(a,b,e){var d,c={},k=null,h=null;if(null!=b)for(d in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(k=\"\"+b.key),b)J.call(b,d)&&!L.hasOwnProperty(d)&&(c[d]=b[d]);var g=arguments.length-2;if(1===g)c.children=e;else if(1<g){for(var f=Array(g),m=0;m<g;m++)f[m]=arguments[m+2];c.children=f}if(a&&a.defaultProps)for(d in g=a.defaultProps,g)void 0===c[d]&&(c[d]=g[d]);return{$$typeof:l,type:a,key:k,ref:h,props:c,_owner:K.current}}\nfunction N(a,b){return{$$typeof:l,type:a.type,key:b,ref:a.ref,props:a.props,_owner:a._owner}}function O(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===l}function escape(a){var b={\"=\":\"=0\",\":\":\"=2\"};return\"$\"+a.replace(/[=:]/g,function(a){return b[a]})}var P=/\\/+/g;function Q(a,b){return\"object\"===typeof a&&null!==a&&null!=a.key?escape(\"\"+a.key):b.toString(36)}\nfunction R(a,b,e,d,c){var k=typeof a;if(\"undefined\"===k||\"boolean\"===k)a=null;var h=!1;if(null===a)h=!0;else switch(k){case \"string\":case \"number\":h=!0;break;case \"object\":switch(a.$$typeof){case l:case n:h=!0}}if(h)return h=a,c=c(h),a=\"\"===d?\".\"+Q(h,0):d,I(c)?(e=\"\",null!=a&&(e=a.replace(P,\"$&/\")+\"/\"),R(c,b,e,\"\",function(a){return a})):null!=c&&(O(c)&&(c=N(c,e+(!c.key||h&&h.key===c.key?\"\":(\"\"+c.key).replace(P,\"$&/\")+\"/\")+a)),b.push(c)),1;h=0;d=\"\"===d?\".\":d+\":\";if(I(a))for(var g=0;g<a.length;g++){k=\na[g];var f=d+Q(k,g);h+=R(k,b,e,f,c)}else if(f=A(a),\"function\"===typeof f)for(a=f.call(a),g=0;!(k=a.next()).done;)k=k.value,f=d+Q(k,g++),h+=R(k,b,e,f,c);else if(\"object\"===k)throw b=String(a),Error(\"Objects are not valid as a React child (found: \"+(\"[object Object]\"===b?\"object with keys {\"+Object.keys(a).join(\", \")+\"}\":b)+\"). If you meant to render a collection of children, use an array instead.\");return h}\nfunction S(a,b,e){if(null==a)return a;var d=[],c=0;R(a,d,\"\",\"\",function(a){return b.call(e,a,c++)});return d}function T(a){if(-1===a._status){var b=a._result;b=b();b.then(function(b){if(0===a._status||-1===a._status)a._status=1,a._result=b},function(b){if(0===a._status||-1===a._status)a._status=2,a._result=b});-1===a._status&&(a._status=0,a._result=b)}if(1===a._status)return a._result.default;throw a._result;}\nvar U={current:null},V={transition:null},W={ReactCurrentDispatcher:U,ReactCurrentBatchConfig:V,ReactCurrentOwner:K};function X(){throw Error(\"act(...) is not supported in production builds of React.\");}\nexports.Children={map:S,forEach:function(a,b,e){S(a,function(){b.apply(this,arguments)},e)},count:function(a){var b=0;S(a,function(){b++});return b},toArray:function(a){return S(a,function(a){return a})||[]},only:function(a){if(!O(a))throw Error(\"React.Children.only expected to receive a single React element child.\");return a}};exports.Component=E;exports.Fragment=p;exports.Profiler=r;exports.PureComponent=G;exports.StrictMode=q;exports.Suspense=w;\nexports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=W;exports.act=X;\nexports.cloneElement=function(a,b,e){if(null===a||void 0===a)throw Error(\"React.cloneElement(...): The argument must be a React element, but you passed \"+a+\".\");var d=C({},a.props),c=a.key,k=a.ref,h=a._owner;if(null!=b){void 0!==b.ref&&(k=b.ref,h=K.current);void 0!==b.key&&(c=\"\"+b.key);if(a.type&&a.type.defaultProps)var g=a.type.defaultProps;for(f in b)J.call(b,f)&&!L.hasOwnProperty(f)&&(d[f]=void 0===b[f]&&void 0!==g?g[f]:b[f])}var f=arguments.length-2;if(1===f)d.children=e;else if(1<f){g=Array(f);\nfor(var m=0;m<f;m++)g[m]=arguments[m+2];d.children=g}return{$$typeof:l,type:a.type,key:c,ref:k,props:d,_owner:h}};exports.createContext=function(a){a={$$typeof:u,_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null};a.Provider={$$typeof:t,_context:a};return a.Consumer=a};exports.createElement=M;exports.createFactory=function(a){var b=M.bind(null,a);b.type=a;return b};exports.createRef=function(){return{current:null}};\nexports.forwardRef=function(a){return{$$typeof:v,render:a}};exports.isValidElement=O;exports.lazy=function(a){return{$$typeof:y,_payload:{_status:-1,_result:a},_init:T}};exports.memo=function(a,b){return{$$typeof:x,type:a,compare:void 0===b?null:b}};exports.startTransition=function(a){var b=V.transition;V.transition={};try{a()}finally{V.transition=b}};exports.unstable_act=X;exports.useCallback=function(a,b){return U.current.useCallback(a,b)};exports.useContext=function(a){return U.current.useContext(a)};\nexports.useDebugValue=function(){};exports.useDeferredValue=function(a){return U.current.useDeferredValue(a)};exports.useEffect=function(a,b){return U.current.useEffect(a,b)};exports.useId=function(){return U.current.useId()};exports.useImperativeHandle=function(a,b,e){return U.current.useImperativeHandle(a,b,e)};exports.useInsertionEffect=function(a,b){return U.current.useInsertionEffect(a,b)};exports.useLayoutEffect=function(a,b){return U.current.useLayoutEffect(a,b)};\nexports.useMemo=function(a,b){return U.current.useMemo(a,b)};exports.useReducer=function(a,b,e){return U.current.useReducer(a,b,e)};exports.useRef=function(a){return U.current.useRef(a)};exports.useState=function(a){return U.current.useState(a)};exports.useSyncExternalStore=function(a,b,e){return U.current.useSyncExternalStore(a,b,e)};exports.useTransition=function(){return U.current.useTransition()};exports.version=\"18.3.1\";\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.min.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","import { create } from 'zustand';\n\nimport {\n type CoreSDK as SearchcraftCore,\n SDKDebugger,\n LogLevel,\n type SearchcraftResponse,\n type Facets,\n} from '@searchcraft/core';\n\ninterface ThemeState {\n theme: 'light' | 'dark';\n toggleTheme: () => void;\n}\n\ninterface SearchParams {\n mode: 'fuzzy' | 'normal';\n sort: 'asc' | 'desc';\n yearsRange?: [number, number];\n}\n\ninterface SearchcraftState {\n facets: Facets | null;\n initialize: (searchcraft: SearchcraftCore, debug?: boolean) => void;\n isRequesting: boolean;\n query: string;\n search: () => Promise<void>;\n searchParams: SearchParams;\n searchResults: SearchcraftResponse | null;\n selectedFilters: string[]; // Add this to store selected filters\n setFacets: (facets: Facets) => void;\n setIsRequesting: (isRequesting: boolean) => void;\n setQuery: (query: string) => void;\n setSearchParams: (params: Partial<SearchParams>) => void;\n setSearchResults: (results: SearchcraftResponse | null) => void;\n setSelectedFilters: (filters: string[]) => void; // Update selected filters\n setYearsRange: (yearsRange: [number, number]) => void;\n}\n\n// Zustand store for Searchcraft state\nconst useSearchcraftStore = create<SearchcraftState>((set, get) => {\n let searchcraft: SearchcraftCore | null = null;\n let debuggerInstance: SDKDebugger | null = null;\n\n const log = (level: LogLevel, message: string) => {\n if (debuggerInstance) {\n switch (level) {\n case LogLevel.DEBUG:\n debuggerInstance.debug(message);\n break;\n case LogLevel.INFO:\n debuggerInstance.info(message);\n break;\n case LogLevel.WARN:\n debuggerInstance.warn(message);\n break;\n case LogLevel.ERROR:\n debuggerInstance.error(message);\n break;\n }\n }\n };\n\n return {\n query: '',\n isRequesting: false,\n searchResults: null,\n facets: null,\n selectedFilters: [],\n searchParams: {\n mode: 'fuzzy',\n sort: 'asc',\n },\n setQuery: (query) => set({ query }),\n setSearchResults: (results) => set({ searchResults: results }),\n setFacets: (facets) => set({ facets }),\n setSelectedFilters: (filters) => set({ selectedFilters: filters }),\n setIsRequesting: (isRequesting) => set({ isRequesting }),\n setSearchParams: (params) =>\n set((state) => ({\n searchParams: {\n ...state.searchParams,\n ...params,\n },\n })),\n setYearsRange: (yearsRange) =>\n set((state) => ({\n searchParams: {\n ...state.searchParams,\n yearsRange,\n },\n })),\n search: async () => {\n const {\n query,\n selectedFilters,\n setIsRequesting,\n setSearchResults,\n setFacets,\n searchParams,\n } = get();\n if (!searchcraft) {\n throw new Error('Searchcraft instance is not initialized.');\n }\n setIsRequesting(true);\n log(LogLevel.INFO, `Starting search with query: \"${query}\"`);\n\n try {\n const searchRequest = {\n query,\n mode: searchParams.mode,\n sort: searchParams.sort,\n facets:\n selectedFilters.length > 0\n ? {\n section: {\n counts: Object.fromEntries(\n selectedFilters.map((path) => [path, 1]),\n ),\n },\n }\n : null,\n yearsRange: searchParams.yearsRange,\n };\n\n const results = await searchcraft.search(searchRequest);\n setSearchResults(results);\n const updatedFacets = results.data.facets || null;\n setFacets(updatedFacets);\n\n log(LogLevel.DEBUG, `Search results: ${JSON.stringify(results)}`);\n log(LogLevel.DEBUG, `Updated facets: ${JSON.stringify(updatedFacets)}`);\n } catch (error) {\n console.error(`Search failed: ${(error as Error).message}`);\n log(\n LogLevel.ERROR,\n `Search failed with error: ${(error as Error).message}`,\n );\n } finally {\n setIsRequesting(false);\n }\n },\n initialize: (searchcraftInstance, debug = false) => {\n searchcraft = searchcraftInstance;\n debuggerInstance = debug\n ? new SDKDebugger({ logLevel: LogLevel.DEBUG })\n : null;\n\n log(LogLevel.INFO, 'Searchcraft store initialized.');\n },\n };\n});\n\nconst useThemeStore = create<ThemeState>((set) => ({\n theme: 'light',\n toggleTheme: () =>\n set((state) => ({ theme: state.theme === 'light' ? 'dark' : 'light' })),\n}));\n\nexport { useSearchcraftStore, useThemeStore };\n"],"version":3}
|
|
@@ -60,7 +60,18 @@ function getFormattedTimeFromNow(timestamp) {
|
|
|
60
60
|
}
|
|
61
61
|
return `${years}y ago`;
|
|
62
62
|
}
|
|
63
|
+
function flattenFacets(sections) {
|
|
64
|
+
return sections.flatMap((section) => {
|
|
65
|
+
const fullPath = section.path;
|
|
66
|
+
const filter = {
|
|
67
|
+
label: `${fullPath.replace(/^\//, '')} (${section.count})`,
|
|
68
|
+
value: fullPath,
|
|
69
|
+
};
|
|
70
|
+
const children = section.children ? flattenFacets(section.children) : [];
|
|
71
|
+
return [filter, ...children];
|
|
72
|
+
});
|
|
73
|
+
}
|
|
63
74
|
|
|
64
|
-
export { parseSearchKeys as a, extractDynamicProperties as e, getFormattedTimeFromNow as g, parseCustomStyles as p, serializeStyles as s };
|
|
75
|
+
export { parseSearchKeys as a, extractDynamicProperties as e, flattenFacets as f, getFormattedTimeFromNow as g, parseCustomStyles as p, serializeStyles as s };
|
|
65
76
|
|
|
66
|
-
//# sourceMappingURL=p-
|
|
77
|
+
//# sourceMappingURL=p-2bda632c.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"p-2bda632c.js","mappings":"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","names":[],"sources":["src/utils/utils.ts"],"sourcesContent":["export function parseCustomStyles(\n styles: string | Record<string, string>,\n): Record<string, string> {\n if (typeof styles === 'string') {\n try {\n return JSON.parse(styles);\n } catch (error) {\n console.error('Invalid customStyles format:', styles);\n return {};\n }\n }\n return styles || {};\n}\n\nexport function parseSearchKeys(\n documentAttributesForDisplay: string,\n): string[] {\n try {\n const parsedKeys = JSON.parse(documentAttributesForDisplay);\n if (\n Array.isArray(parsedKeys) &&\n parsedKeys.every((key) => typeof key === 'string')\n ) {\n return parsedKeys;\n }\n console.warn(\n 'searchKeys must be a JSON array of strings. Defaulting to an empty array.',\n );\n return [];\n } catch (error) {\n console.error('Failed to parse searchKeys:', error);\n return [];\n }\n}\n\nexport function extractDynamicProperties(\n document: Record<string, string | number>,\n keys: string[],\n) {\n const extractedProperties: Record<string, string | number> = {};\n keys.forEach((key) => {\n extractedProperties[key] = document[key] || '';\n });\n return extractedProperties;\n}\n\nexport function serializeStyles(\n styles: Record<string, Record<string, string>>,\n): string {\n try {\n return JSON.stringify(styles);\n } catch (error) {\n console.error('Error serializing styles:', error);\n return '{}';\n }\n}\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\ntype Section = {\n count: number;\n path: string;\n children: Section[];\n};\n\ntype FacetCheckbox = {\n label: string;\n value: string;\n};\n\nexport function flattenFacets(sections: Section[]): FacetCheckbox[] {\n return sections.flatMap((section) => {\n const fullPath = section.path;\n const filter = {\n label: `${fullPath.replace(/^\\//, '')} (${section.count})`,\n value: fullPath,\n };\n\n const children = section.children ? flattenFacets(section.children) : [];\n return [filter, ...children];\n });\n}\n"],"version":3}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { p as proxyCustomElement, H, c as createEvent, h, F as Fragment } from './p-7498e493.js';
|
|
2
2
|
import { c as classNames } from './p-5cdc6210.js';
|
|
3
|
-
import { p as parseCustomStyles } from './p-
|
|
3
|
+
import { p as parseCustomStyles } from './p-2bda632c.js';
|
|
4
4
|
import { d as defineCustomElement$7 } from './p-70722ab2.js';
|
|
5
5
|
import { d as defineCustomElement$6 } from './p-1c377190.js';
|
|
6
6
|
import { d as defineCustomElement$5 } from './p-6237f03e.js';
|
|
@@ -142,4 +142,4 @@ function defineCustomElement() {
|
|
|
142
142
|
|
|
143
143
|
export { SearchcraftInput as S, defineCustomElement as d };
|
|
144
144
|
|
|
145
|
-
//# sourceMappingURL=p-
|
|
145
|
+
//# sourceMappingURL=p-b5f97e04.js.map
|