@getlupa/client 0.6.0 → 0.7.0-alpha-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/dist/cjs/components/product-list/CategoryDescription.vue.d.ts +0 -1
  2. package/dist/cjs/components/product-list/CategoryFilter.vue.d.ts +4 -1
  3. package/dist/cjs/components/search-results/SearchResults.vue.d.ts +3 -4
  4. package/dist/cjs/components/search-results/additional-panels/AdditionalPanel.vue.d.ts +3 -0
  5. package/dist/cjs/components/search-results/filters/MobileFilterSidebar.vue.d.ts +1 -1
  6. package/dist/cjs/components/search-results/filters/facets/FacetDisplay.vue.d.ts +9 -0
  7. package/dist/cjs/components/search-results/products/SearchResultsMobileToggle.vue.d.ts +1 -1
  8. package/dist/cjs/components/search-results/products/SearchResultsProducts.vue.d.ts +8 -0
  9. package/dist/cjs/components/search-results/products/SearchResultsToolbar.vue.d.ts +1 -0
  10. package/dist/cjs/components/search-results/products/pagination/SearchResultsPageSelect.vue.d.ts +3 -0
  11. package/dist/cjs/constants/development/searchResultsDev.example.const.d.ts +3 -0
  12. package/dist/cjs/constants/global.const.d.ts +2 -1
  13. package/dist/cjs/constants/searchResults.const.d.ts +1 -0
  14. package/dist/cjs/index.d.ts +5 -4
  15. package/dist/cjs/index.min.js +20367 -35287
  16. package/dist/cjs/store/modules/options.d.ts +1 -0
  17. package/dist/cjs/store/modules/searchResult.d.ts +18 -0
  18. package/dist/cjs/types/DocumentElement.d.ts +2 -1
  19. package/dist/cjs/types/General.d.ts +3 -2
  20. package/dist/cjs/types/product-list/ProductListOptions.d.ts +6 -6
  21. package/dist/cjs/types/search-results/BadgeOptions.d.ts +5 -4
  22. package/dist/cjs/types/search-results/PaginationOptions.d.ts +1 -0
  23. package/dist/cjs/types/search-results/SearchResultsOptions.d.ts +31 -2
  24. package/dist/cjs/types/search-results/SearchResultsSort.d.ts +1 -1
  25. package/dist/cjs/utils/scroll.utils.d.ts +2 -0
  26. package/dist/es/components/product-list/CategoryDescription.vue.d.ts +0 -1
  27. package/dist/es/components/product-list/CategoryFilter.vue.d.ts +4 -1
  28. package/dist/es/components/search-results/SearchResults.vue.d.ts +3 -4
  29. package/dist/es/components/search-results/additional-panels/AdditionalPanel.vue.d.ts +3 -0
  30. package/dist/es/components/search-results/filters/MobileFilterSidebar.vue.d.ts +1 -1
  31. package/dist/es/components/search-results/filters/facets/FacetDisplay.vue.d.ts +9 -0
  32. package/dist/es/components/search-results/products/SearchResultsMobileToggle.vue.d.ts +1 -1
  33. package/dist/es/components/search-results/products/SearchResultsProducts.vue.d.ts +8 -0
  34. package/dist/es/components/search-results/products/SearchResultsToolbar.vue.d.ts +1 -0
  35. package/dist/es/components/search-results/products/pagination/SearchResultsPageSelect.vue.d.ts +3 -0
  36. package/dist/es/constants/development/searchResultsDev.example.const.d.ts +3 -0
  37. package/dist/es/constants/global.const.d.ts +2 -1
  38. package/dist/es/constants/searchResults.const.d.ts +1 -0
  39. package/dist/es/index.d.ts +5 -4
  40. package/dist/es/index.min.js +20367 -35287
  41. package/dist/es/store/modules/options.d.ts +1 -0
  42. package/dist/es/store/modules/searchResult.d.ts +18 -0
  43. package/dist/es/types/DocumentElement.d.ts +2 -1
  44. package/dist/es/types/General.d.ts +3 -2
  45. package/dist/es/types/product-list/ProductListOptions.d.ts +6 -6
  46. package/dist/es/types/search-results/BadgeOptions.d.ts +5 -4
  47. package/dist/es/types/search-results/PaginationOptions.d.ts +1 -0
  48. package/dist/es/types/search-results/SearchResultsOptions.d.ts +31 -2
  49. package/dist/es/types/search-results/SearchResultsSort.d.ts +1 -1
  50. package/dist/es/utils/scroll.utils.d.ts +2 -0
  51. package/dist/iife/components/product-list/CategoryDescription.vue.d.ts +0 -1
  52. package/dist/iife/components/product-list/CategoryFilter.vue.d.ts +4 -1
  53. package/dist/iife/components/search-results/SearchResults.vue.d.ts +3 -4
  54. package/dist/iife/components/search-results/additional-panels/AdditionalPanel.vue.d.ts +3 -0
  55. package/dist/iife/components/search-results/filters/MobileFilterSidebar.vue.d.ts +1 -1
  56. package/dist/iife/components/search-results/filters/facets/FacetDisplay.vue.d.ts +9 -0
  57. package/dist/iife/components/search-results/products/SearchResultsMobileToggle.vue.d.ts +1 -1
  58. package/dist/iife/components/search-results/products/SearchResultsProducts.vue.d.ts +8 -0
  59. package/dist/iife/components/search-results/products/SearchResultsToolbar.vue.d.ts +1 -0
  60. package/dist/iife/components/search-results/products/pagination/SearchResultsPageSelect.vue.d.ts +3 -0
  61. package/dist/iife/constants/development/searchResultsDev.example.const.d.ts +3 -0
  62. package/dist/iife/constants/global.const.d.ts +2 -1
  63. package/dist/iife/constants/searchResults.const.d.ts +1 -0
  64. package/dist/iife/index.d.ts +5 -4
  65. package/dist/iife/index.min.js +1 -1
  66. package/dist/iife/store/modules/options.d.ts +1 -0
  67. package/dist/iife/store/modules/searchResult.d.ts +18 -0
  68. package/dist/iife/types/DocumentElement.d.ts +2 -1
  69. package/dist/iife/types/General.d.ts +3 -2
  70. package/dist/iife/types/product-list/ProductListOptions.d.ts +6 -6
  71. package/dist/iife/types/search-results/BadgeOptions.d.ts +5 -4
  72. package/dist/iife/types/search-results/PaginationOptions.d.ts +1 -0
  73. package/dist/iife/types/search-results/SearchResultsOptions.d.ts +31 -2
  74. package/dist/iife/types/search-results/SearchResultsSort.d.ts +1 -1
  75. package/dist/iife/utils/scroll.utils.d.ts +2 -0
  76. package/dist/style.css +1 -1
  77. package/package.json +1 -1
@@ -13,6 +13,7 @@ export default class OptionsModule extends VuexModule {
13
13
  get boxRoutingBehavior(): RoutingBehavior;
14
14
  get searchResultsRoutingBehavior(): RoutingBehavior;
15
15
  get defaultSearchResultPageSize(): number;
16
+ get currentResolutionPageSizes(): number[];
16
17
  setSearchBoxOptions({ options }: {
17
18
  options: SearchBoxOptions;
18
19
  }): void;
@@ -1,3 +1,4 @@
1
+ import { ScreenSize } from "@/types/General";
1
2
  import { LabeledFilter } from "@/types/search-results/Filters";
2
3
  import { ResultsLayout } from "@/types/search-results/ResultsLayout";
3
4
  import { ProductGrid } from "@/types/search-results/SearchResultsOptions";
@@ -10,6 +11,7 @@ export default class SearchResultModule extends VuexModule {
10
11
  layout: ResultsLayout;
11
12
  loading: boolean;
12
13
  isMobileSidebarVisible: boolean;
14
+ screenWidth: number;
13
15
  get facets(): FacetResult[] | undefined;
14
16
  get currentFilters(): FilterGroup | undefined;
15
17
  get filters(): FilterGroup;
@@ -19,8 +21,17 @@ export default class SearchResultModule extends VuexModule {
19
21
  get labeledFilters(): LabeledFilter[];
20
22
  get displayFilters(): LabeledFilter[];
21
23
  get currentFilterCount(): number;
24
+ get currentFilterKeys(): string[];
22
25
  get hasAnyFilter(): boolean;
23
26
  get itemRange(): number[];
27
+ get isMobileWidth(): boolean;
28
+ get currentScreenWidth(): ScreenSize;
29
+ get isPageEmpty(): boolean;
30
+ setSidebarState({ visible }: {
31
+ visible: boolean;
32
+ }): {
33
+ visible: boolean;
34
+ };
24
35
  setSidebarVisibility({ visible }: {
25
36
  visible: boolean;
26
37
  }): void;
@@ -30,7 +41,14 @@ export default class SearchResultModule extends VuexModule {
30
41
  addToCartAmount?: number;
31
42
  layout?: ResultsLayout;
32
43
  }): void;
44
+ queryFacet({ queryKey, facetKey, }: {
45
+ queryKey: string;
46
+ facetKey: string;
47
+ }): Promise<void>;
33
48
  load(loading: boolean): void;
49
+ setScreenWidth({ width }: {
50
+ width: number;
51
+ }): void;
34
52
  add(searchResult: SearchQueryResult): {
35
53
  searchResult: SearchQueryResult;
36
54
  pageSize: number;
@@ -13,7 +13,7 @@ export declare enum DocumentElementType {
13
13
  export declare type DocumentElementBase = {
14
14
  type: DocumentElementType;
15
15
  key?: string;
16
- display?: (document: Record<string, unknown>) => boolean;
16
+ display?: <T>(document: T) => boolean;
17
17
  isHtml?: boolean;
18
18
  };
19
19
  export declare type ImageDocumentElement = DocumentElementBase & {
@@ -32,6 +32,7 @@ export declare type DescriptionDocumentElement = DocumentElementBase & {
32
32
  type: DocumentElementType.DESCRIPTION;
33
33
  maxLines: number;
34
34
  key: string;
35
+ className: string;
35
36
  };
36
37
  export declare type CustomDocumentElement = DocumentElementBase & {
37
38
  type: DocumentElementType.CUSTOM;
@@ -1,5 +1,5 @@
1
1
  import { AnalyticsOptions } from "./AnalyticsOptions";
2
- import { Environment as SdkEnvironment, SortDirection as SdkSortDirection } from "@getlupa/client-sdk/Types";
2
+ import { Environment as SdkEnvironment } from "@getlupa/client-sdk/Types";
3
3
  export declare type SdkOptions = {
4
4
  environment: SdkEnvironment;
5
5
  customUrl?: string;
@@ -14,5 +14,6 @@ export declare type TrackingOptions = {
14
14
  userKey?: string;
15
15
  analytics?: AnalyticsOptions;
16
16
  };
17
- export declare type SortDirection = SdkSortDirection;
18
17
  export declare type Environment = SdkEnvironment;
18
+ export declare type SortDirection = "asc" | "desc";
19
+ export declare type ScreenSize = "xs" | "sm" | "md" | "l" | "xl";
@@ -2,7 +2,7 @@ import { FilterGroup } from "@getlupa/client-sdk/Types";
2
2
  import { RoutingBehavior } from "../search-results/RoutingBehavior";
3
3
  import { SearchResultsOptions } from "../search-results/SearchResultsOptions";
4
4
  export declare type CategoryFilterOptions = {
5
- queryKey: string;
5
+ queryKey?: string;
6
6
  routingBehavior?: RoutingBehavior;
7
7
  keys: {
8
8
  titleKey?: string;
@@ -14,15 +14,15 @@ export declare type CategoryFilterOptions = {
14
14
  title: string;
15
15
  };
16
16
  parent?: {
17
- url: string;
18
- title: string;
17
+ url?: string;
18
+ title?: string;
19
19
  };
20
20
  current?: {
21
- title: string;
22
- description: string;
21
+ title?: string;
22
+ description?: string;
23
23
  };
24
24
  };
25
25
  export declare type ProductListOptions = SearchResultsOptions & {
26
26
  initialFilters?: FilterGroup;
27
- categories: CategoryFilterOptions;
27
+ categories?: CategoryFilterOptions;
28
28
  };
@@ -4,13 +4,14 @@ export declare type SearchResultBadgeType = "text" | "image" | "customHtml";
4
4
  export declare type BadgeOptions = {
5
5
  anchor: AnchorPosition;
6
6
  elements: BadgeElement[];
7
- product: Document;
7
+ product?: Document;
8
8
  };
9
9
  export declare type SearchResultBadgeElement = {
10
10
  type: SearchResultBadgeType;
11
11
  key: string;
12
- isHtml: boolean;
13
- product: Document;
12
+ isHtml?: boolean;
13
+ className?: boolean;
14
+ product?: Document;
14
15
  display?: (document: Record<string, unknown>) => boolean;
15
16
  };
16
17
  export declare type BaseBadgeElement = SearchResultBadgeElement & {
@@ -28,7 +29,7 @@ export declare type ImageBadgeElement = BaseBadgeElement & {
28
29
  };
29
30
  export declare type CustomHtmlBadgeElement = BaseBadgeElement & {
30
31
  type: "customHtml";
31
- className: string;
32
+ className?: string;
32
33
  html: (doc: Document) => string;
33
34
  };
34
35
  export declare type BadgeElement = BaseBadgeElement | TextBadgeElement;
@@ -12,6 +12,7 @@ export declare type PaginationPageSelect = {
12
12
  count: number;
13
13
  selectedPage: number;
14
14
  display: number;
15
+ displayMobile: number;
15
16
  };
16
17
  export declare type PaginationDisplay = {
17
18
  pageSize: boolean;
@@ -7,8 +7,8 @@ export declare type SearchResultsOptions = SearchResultsProductOptions & SearchR
7
7
  containerSelector: string;
8
8
  breadcrumbs: SearchResultsBreadcrumb[];
9
9
  classMap?: Record<string, string>;
10
- noResultsQueryFlag?: string;
11
10
  disallowEmptyQuery?: boolean;
11
+ callbacks?: SearchResultEventCallbacks;
12
12
  };
13
13
  export declare type SearchTitlePosition = "page-top" | "search-results-top";
14
14
  export declare type SearchResultsDidYouMeanLabels = {
@@ -18,6 +18,17 @@ export declare type SearchResultsDidYouMeanLabels = {
18
18
  export declare type SearchResultsSimilarQueriesLabels = {
19
19
  similarQuery: string;
20
20
  similarQueries: string;
21
+ aiSuggestions?: string;
22
+ };
23
+ export declare type CallbackContext = {
24
+ queryKey: string;
25
+ hasResults: boolean;
26
+ };
27
+ export declare type SearchResultEventCallbacks = {
28
+ onSearchResults?: (context: CallbackContext) => unknown;
29
+ onAdditionalPanelResults?: (context: CallbackContext) => unknown;
30
+ onCategoryFilterResults?: (context: CallbackContext) => unknown;
31
+ onMounted?: () => unknown;
21
32
  };
22
33
  export declare type SearchResultsOptionLabels = SearchResultsPaginationLabels & SearchResultsDidYouMeanLabels & SearchResultsSimilarQueriesLabels & {
23
34
  sortBy: string;
@@ -28,6 +39,9 @@ export declare type SearchResultsOptionLabels = SearchResultsPaginationLabels &
28
39
  emptyResults: string;
29
40
  mobileFilterButton: string;
30
41
  htmlTitleTemplate: string;
42
+ outOfStock?: string;
43
+ noItemsInPage?: string;
44
+ backToFirstPage?: string;
31
45
  };
32
46
  export declare type SearchResultsAdditionalPanels = {
33
47
  additionalPanels?: SearchResultsAdditionalPanelOptions[];
@@ -59,15 +73,25 @@ export declare type ProductGrid = {
59
73
  export declare type SearchResultsPaginationLabels = {
60
74
  pageSize: string;
61
75
  showMore: string;
76
+ showLess?: string;
62
77
  };
78
+ export declare type ResponsiveSearchResultPageSizes = {
79
+ xs: number[];
80
+ sm: number[];
81
+ md: number[];
82
+ l: number[];
83
+ xl: number[];
84
+ };
85
+ export declare type SearchResultPageSizes = number[] | ResponsiveSearchResultPageSizes;
63
86
  export declare type SearchResultsPagination = {
64
87
  sizeSelection: {
65
- sizes: number[];
88
+ sizes: SearchResultPageSizes;
66
89
  position: SearchResultsPaginationPosition;
67
90
  };
68
91
  pageSelection: {
69
92
  position: SearchResultsPaginationPosition;
70
93
  display: number;
94
+ displayMobile: number;
71
95
  };
72
96
  };
73
97
  export declare type SearchResultsPaginationPosition = {
@@ -89,6 +113,9 @@ export declare type ResultCurrentFilterOptions = {
89
113
  };
90
114
  };
91
115
  export declare type FacetStyle = "sidebar" | "top-dropdown";
116
+ export declare type FacetFilterQuery = {
117
+ queryKey: string;
118
+ };
92
119
  export declare type ResultFacetOptions = {
93
120
  labels: {
94
121
  title: string;
@@ -120,6 +147,8 @@ export declare type ResultFacetOptions = {
120
147
  type: FacetStyle;
121
148
  };
122
149
  exclude?: string[];
150
+ expand?: string[];
151
+ facetFilterQueries?: Record<string, FacetFilterQuery>;
123
152
  };
124
153
  export declare type SearchResultsFilterOptions = {
125
154
  currentFilters?: ResultCurrentFilterOptions;
@@ -1,4 +1,4 @@
1
- import { SortDirection } from "@getlupa/client-sdk/Types";
1
+ import { SortDirection } from "../General";
2
2
  export declare type SearchResultsSortOptions = {
3
3
  key: string;
4
4
  label: string;
@@ -1,2 +1,4 @@
1
1
  export declare const scrollToSearchResults: (timeout?: number) => void;
2
2
  export declare const scrollTo: (elementId: string) => void;
3
+ export declare const disableBodyScroll: () => void;
4
+ export declare const enableBodyScroll: () => void;
@@ -2,7 +2,6 @@ import Vue from "vue";
2
2
  import { ProductListOptions } from "@/types/product-list/ProductListOptions";
3
3
  export default class CategoryDescription extends Vue {
4
4
  options: ProductListOptions;
5
- get title(): string | undefined;
6
5
  get description(): string | undefined;
7
6
  get overviewVisible(): boolean;
8
7
  }
@@ -1,10 +1,12 @@
1
1
  import Vue from "vue";
2
- import { Options } from "@getlupa/client-sdk/Types";
2
+ import { Options, SdkError, SearchQueryResult } from "@getlupa/client-sdk/Types";
3
3
  import { CategoryFilterOptions } from "@/types/product-list/ProductListOptions";
4
+ import { SearchResultsOptions } from "@/types/search-results/SearchResultsOptions";
4
5
  export default class CategoryFilter extends Vue {
5
6
  options: CategoryFilterOptions;
6
7
  categoryChildren: Record<string, string>[];
7
8
  envOptions: Options;
9
+ searchResultOptions: SearchResultsOptions;
8
10
  get hasBackButton(): boolean;
9
11
  get hasEventRouting(): boolean;
10
12
  get backTitle(): string | undefined;
@@ -13,6 +15,7 @@ export default class CategoryFilter extends Vue {
13
15
  get parentUrlLink(): string | undefined;
14
16
  get isActive(): boolean;
15
17
  mounted(): Promise<void>;
18
+ handleResult(result: SearchQueryResult | SdkError): void;
16
19
  getCategoryKey(item: Record<string, string>): string;
17
20
  handleNavigationParent(event?: Event): void;
18
21
  handleNavigationBack(event?: Event): void;
@@ -25,10 +25,6 @@ export default class SearchResults extends Vue {
25
25
  setDefaultLimit: (defaultLimit: number) => {
26
26
  defaultLimit: number;
27
27
  };
28
- handleNoResultsFlag: ({ resultCount, noResultsParam, }: {
29
- resultCount: number;
30
- noResultsParam?: string;
31
- }) => void;
32
28
  addParams: (params: QueryParams) => {
33
29
  params: QueryParams;
34
30
  };
@@ -64,6 +60,9 @@ export default class SearchResults extends Vue {
64
60
  queryKey: string;
65
61
  results: SearchQueryResult;
66
62
  }): void;
63
+ setScreenWidth: ({ width, }: {
64
+ width: number;
65
+ }) => void;
67
66
  setColumnCount: ({ width, grid, }: {
68
67
  width: number;
69
68
  grid: ProductGrid;
@@ -3,11 +3,13 @@ import Vue from "vue";
3
3
  import { SdkOptions } from "@/types/General";
4
4
  import { SearchQueryResult } from "@getlupa/client-sdk/Types";
5
5
  import { Document } from "@getlupa/client-sdk/Types";
6
+ import { SearchResultsOptions } from "@/types/search-results/SearchResultsOptions";
6
7
  export default class AdditionalPanels extends Vue {
7
8
  panel: SearchResultsAdditionalPanelOptions;
8
9
  options: SdkOptions;
9
10
  result: SearchQueryResult;
10
11
  query: string;
12
+ searchResultOptions: SearchResultsOptions;
11
13
  showAll: boolean;
12
14
  get displayShowMore(): boolean;
13
15
  get itemCount(): number;
@@ -16,6 +18,7 @@ export default class AdditionalPanels extends Vue {
16
18
  get hasResults(): boolean;
17
19
  mounted(): void;
18
20
  handleQueryChange(): void;
21
+ handleResults(res: SearchQueryResult): void;
19
22
  toggleShowMore(): void;
20
23
  addParams(label: string, itemCount: number): string;
21
24
  }
@@ -2,7 +2,7 @@ import { SearchResultsFilterOptions } from "@/types/search-results/SearchResults
2
2
  import Vue from "vue";
3
3
  export default class MobileFilterSidebar extends Vue {
4
4
  options: SearchResultsFilterOptions;
5
- setSidebarVisibility: ({ visible, }: {
5
+ setSidebarState: ({ visible, }: {
6
6
  visible: boolean;
7
7
  }) => void;
8
8
  isMobileSidebarVisible: boolean;
@@ -7,14 +7,23 @@ export default class FacetDisplay extends Vue {
7
7
  facet: FacetResult;
8
8
  currentFilters: FilterGroup;
9
9
  clearable: boolean;
10
+ currentFilterKeys: string[];
10
11
  isOpen: boolean;
11
12
  get facetType(): string;
12
13
  get hasItems(): boolean;
13
14
  get hasFilter(): boolean;
15
+ get filterQueryKey(): string | undefined;
16
+ get activeFilterKeys(): string;
14
17
  mounted(): void;
15
18
  beforeDestroy(): void;
16
19
  handleMouseClick(e: MouseEvent): void;
20
+ handleParamsChange(): void;
21
+ queryFacet: ({ queryKey, facetKey, }: {
22
+ queryKey: string;
23
+ facetKey: string;
24
+ }) => Promise<void>;
17
25
  toggleFacet(): void;
26
+ handleFacetQueryFilter(): void;
18
27
  handleFacetSelect(item: FacetAction): void;
19
28
  clear(): void;
20
29
  }
@@ -3,7 +3,7 @@ export default class SearchResultsMobileToggle extends Vue {
3
3
  label: string;
4
4
  showFilterCount: boolean;
5
5
  currentFilterCount: number;
6
- setSidebarVisibility: ({ visible, }: {
6
+ setSidebarState: ({ visible, }: {
7
7
  visible: boolean;
8
8
  }) => void;
9
9
  handleMobileToggle(): void;
@@ -8,6 +8,7 @@ export default class SearchResultsProducts extends Vue {
8
8
  loading: boolean;
9
9
  hasResults: boolean;
10
10
  currentQueryText: string;
11
+ isPageEmpty: boolean;
11
12
  isMobileSidebarVisible: boolean;
12
13
  productCardOptions(): SearchResultsProductCardOptions;
13
14
  get similarQueriesLabels(): SearchResultsSimilarQueriesLabels;
@@ -21,4 +22,11 @@ export default class SearchResultsProducts extends Vue {
21
22
  page: number;
22
23
  get columnSize(): string;
23
24
  getProductKey(index: string, product: Document): string;
25
+ appendParams: ({ params, }: {
26
+ params: {
27
+ name: string;
28
+ value: string;
29
+ }[];
30
+ }) => void;
31
+ goToFirstPage(): void;
24
32
  }
@@ -21,6 +21,7 @@ export default class SearchResultsToolbar extends Vue {
21
21
  get displayPageSelect(): boolean;
22
22
  get searchSummaryLabel(): string;
23
23
  get showMobileFilterCount(): boolean;
24
+ currentResolutionPageSizes: number[];
24
25
  removeAllFilters: () => {
25
26
  params: QueryParams;
26
27
  };
@@ -5,6 +5,8 @@ export default class SearchResultsPageSelect extends Vue {
5
5
  lastPageLabel: string;
6
6
  firstPageLabel: string;
7
7
  options: PaginationPageSelect;
8
+ isMobileWidth: boolean;
9
+ get pageOptionsCount(): number;
8
10
  get pages(): number[];
9
11
  get showBack(): boolean;
10
12
  get lastPage(): number | undefined;
@@ -12,6 +14,7 @@ export default class SearchResultsPageSelect extends Vue {
12
14
  get showLastPageSeparator(): boolean;
13
15
  get showFirstPage(): boolean;
14
16
  get showFirstPageSeparator(): boolean;
17
+ get showPagination(): boolean;
15
18
  appendParams: ({ params, paramsToRemove, }: {
16
19
  params: {
17
20
  name: string;
@@ -13,12 +13,15 @@ export declare const SEARCH_RESULTS_CONFIGURATION: {
13
13
  priceSeparator: string;
14
14
  showMore: string;
15
15
  emptyResults: string;
16
+ noItemsInPage: string;
17
+ backToFirstPage: string;
16
18
  mobileFilterButton: string;
17
19
  htmlTitleTemplate: string;
18
20
  noResultsSuggestion: string;
19
21
  didYouMean: string;
20
22
  similarQuery: string;
21
23
  similarQueries: string;
24
+ aiSuggestions: string;
22
25
  };
23
26
  toolbar: {
24
27
  totalCount: boolean;
@@ -8,7 +8,8 @@ export declare const S_MIN_WIDTH = 575;
8
8
  export declare const MD_MIN_WIDTH = 767;
9
9
  export declare const L_MIN_WIDTH = 991;
10
10
  export declare const XL_MIN_WIDTH = 1199;
11
- export declare const MAX_FACET_VALUES = 1000;
11
+ export declare const MAX_FACET_VALUES = 5000;
12
12
  export declare const CURRENCY_KEY_INDICATOR = "price";
13
13
  export declare const DEFAULT_PAGE_SIZE = 12;
14
+ export declare const DEFAULT_PAGE_SIZE_SELECTION: number[];
14
15
  export declare const LUPA_ROUTING_EVENT = "lupaRedirect";
@@ -46,6 +46,7 @@ export declare const DEFAULT_OPTIONS_RESULTS: {
46
46
  bottom: boolean;
47
47
  };
48
48
  display: number;
49
+ displayMobile: number;
49
50
  };
50
51
  };
51
52
  sort: never[];
@@ -1,12 +1,13 @@
1
1
  import { SearchBoxOptions } from "./types/search-box/SearchBoxOptions";
2
- import { FacetStyle, SearchResultsOptions } from "./types/search-results/SearchResultsOptions";
2
+ import { CallbackContext, FacetFilterQuery, FacetStyle, SearchResultEventCallbacks, SearchResultsFilterOptions, SearchResultsOptions } from "./types/search-results/SearchResultsOptions";
3
3
  import { SdkOptions, TrackingOptions, Environment, SortDirection } from "./types/General";
4
- import { ProductListOptions } from "./types/product-list/ProductListOptions";
4
+ import { CategoryFilterOptions, ProductListOptions } from "./types/product-list/ProductListOptions";
5
5
  import { AddToCartElement, CustomDocumentElement, CustomHtmlElement, DescriptionDocumentElement, DocumentElement, DocumentElementType, ImageDocumentElement, PriceElement, RatingElement, RegularPriceDocumentElement, TitleDocumentElement } from "./types/DocumentElement";
6
6
  import { SearchBoxPanelType } from "./types/search-box/SearchBoxPanel";
7
7
  import { RoutingBehavior } from "./types/search-results/RoutingBehavior";
8
8
  import { AnchorPosition } from "./types/search-results/SearchResultsProductCardOptions";
9
- import { BadgeType } from "./types/search-results/BadgeOptions";
9
+ import { BadgeType, SearchResultBadgeElement, SearchResultBadgeType } from "./types/search-results/BadgeOptions";
10
+ import { SearchResultsSortOptions, SortOptions } from "./types/search-results/SearchResultsSort";
10
11
  declare const lupaSearch: {
11
12
  searchBox: (options: SearchBoxOptions) => void;
12
13
  searchResults: (options: SearchResultsOptions) => void;
@@ -16,5 +17,5 @@ declare const lupaSearch: {
16
17
  clearSearchResults: () => void;
17
18
  clearProductList: () => void;
18
19
  };
19
- export { TrackingOptions, SearchBoxOptions, SearchResultsOptions, ProductListOptions, SdkOptions, DocumentElementType, SearchBoxPanelType, FacetStyle, Environment, RoutingBehavior, AnchorPosition, BadgeType, SortDirection, DocumentElement, ImageDocumentElement, TitleDocumentElement, DescriptionDocumentElement, CustomDocumentElement, PriceElement, RegularPriceDocumentElement, RatingElement, AddToCartElement, CustomHtmlElement, };
20
+ export { TrackingOptions, SearchBoxOptions, SearchResultsOptions, ProductListOptions, SdkOptions, DocumentElementType, SearchBoxPanelType, FacetStyle, Environment, RoutingBehavior, AnchorPosition, BadgeType, SortDirection, DocumentElement, ImageDocumentElement, TitleDocumentElement, DescriptionDocumentElement, CustomDocumentElement, PriceElement, RegularPriceDocumentElement, RatingElement, AddToCartElement, CustomHtmlElement, SortOptions, SearchResultsSortOptions, SearchResultEventCallbacks, CallbackContext, FacetFilterQuery, CategoryFilterOptions, SearchResultsFilterOptions, SearchResultBadgeType, SearchResultBadgeElement, };
20
21
  export default lupaSearch;