@usereactify/search 5.1.5 → 5.2.0-beta.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 (30) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/dist/package.json +1 -1
  3. package/dist/src/components/Example/ExampleFiltersSelected.d.ts +4 -0
  4. package/dist/src/components/Example/{ExampleFiltersActive.js → ExampleFiltersSelected.js} +10 -10
  5. package/dist/src/components/Example/ExampleFiltersSelected.js.map +1 -0
  6. package/dist/src/components/Example/index.d.ts +1 -1
  7. package/dist/src/components/Example/index.js +1 -1
  8. package/dist/src/components/Example/index.js.map +1 -1
  9. package/dist/src/components/Filter/{FiltersActive.d.ts → FiltersSelected.d.ts} +2 -2
  10. package/dist/src/components/Filter/{FiltersActive.js → FiltersSelected.js} +5 -5
  11. package/dist/src/components/Filter/FiltersSelected.js.map +1 -0
  12. package/dist/src/components/Filter/index.d.ts +1 -1
  13. package/dist/src/components/Filter/index.js +1 -1
  14. package/dist/src/components/Filter/index.js.map +1 -1
  15. package/dist/src/components/Search/Search.js +3 -3
  16. package/dist/src/components/Search/Search.js.map +1 -1
  17. package/dist/src/components/SortBy/SortBy.js +2 -2
  18. package/dist/src/components/SortBy/SortBy.js.map +1 -1
  19. package/dist/src/hooks/useSearch.js +1 -13
  20. package/dist/src/hooks/useSearch.js.map +1 -1
  21. package/dist/src/utility/index.d.ts +1 -0
  22. package/dist/src/utility/index.js +1 -0
  23. package/dist/src/utility/index.js.map +1 -1
  24. package/dist/src/utility/liquid.d.ts +14 -0
  25. package/dist/src/utility/liquid.js +35 -0
  26. package/dist/src/utility/liquid.js.map +1 -0
  27. package/package.json +1 -1
  28. package/dist/src/components/Example/ExampleFiltersActive.d.ts +0 -4
  29. package/dist/src/components/Example/ExampleFiltersActive.js.map +0 -1
  30. package/dist/src/components/Filter/FiltersActive.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -2,6 +2,28 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ## [5.2.0-beta.1](https://bitbucket.org/usereactify/reactify-search-ui/compare/beta-v5.2.0-beta.0...beta-v5.2.0-beta.1) (2022-08-10)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * improve liquid utilities ([b54a8ca](https://bitbucket.org/usereactify/reactify-search-ui/commit/b54a8caa6c498d3798068fe47527ac5bcde74aca))
11
+
12
+ ## [5.2.0-beta.0](https://bitbucket.org/usereactify/reactify-search-ui/compare/beta-v5.1.6-beta.0...beta-v5.2.0-beta.0) (2022-08-10)
13
+
14
+
15
+ ### Features
16
+
17
+ * add utilities for liquid consumers ([e8d738c](https://bitbucket.org/usereactify/reactify-search-ui/commit/e8d738c2a242e4437f05ab0832e86cabed756f75))
18
+
19
+ ### [5.1.6-beta.0](https://bitbucket.org/usereactify/reactify-search-ui/compare/beta-v5.1.4-beta.1...beta-v5.1.6-beta.0) (2022-08-10)
20
+
21
+
22
+ ### Bug Fixes
23
+
24
+ * filter searchTerm curations in search mode only ([57b6359](https://bitbucket.org/usereactify/reactify-search-ui/commit/57b6359aabbacce95c724be96df27cdc8d9eb2f4))
25
+ * remove unnecessary check for collectionHandle ([1a634e5](https://bitbucket.org/usereactify/reactify-search-ui/commit/1a634e517fee6a9db8b6deeb43eba7c012070a0a))
26
+
5
27
  ### [5.1.5](https://bitbucket.org/usereactify/reactify-search-ui/compare/release-v5.1.4...release-v5.1.5) (2022-08-09)
6
28
 
7
29
 
package/dist/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@usereactify/search",
3
3
  "description": "React UI library for Reactify Search",
4
- "version": "5.1.5",
4
+ "version": "5.2.0-beta.1",
5
5
  "license": "MIT",
6
6
  "main": "dist/src/index.js",
7
7
  "types": "dist/src/index.d.ts",
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { FiltersSelectedProps } from "../../components";
3
+ export declare type ExampleFiltersSelectedProps = React.ComponentProps<NonNullable<FiltersSelectedProps["render"]>>;
4
+ export declare const ExampleFiltersSelected: React.FC<ExampleFiltersSelectedProps>;
@@ -3,21 +3,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ExampleFiltersActive = void 0;
6
+ exports.ExampleFiltersSelected = void 0;
7
7
  const react_1 = __importDefault(require("react"));
8
- const ExampleFiltersActive = (props) => {
9
- return (react_1.default.createElement("div", { className: "rs__filter-active" },
10
- react_1.default.createElement("h3", { className: "rs__filter-active__name" }, "Filters Active"),
11
- react_1.default.createElement("ul", { className: "rs__filter-active__list" }, props.selectedFilters.map((selectedFilter) => (react_1.default.createElement("li", { key: selectedFilter.key, className: "rs__filter-active__list-item" },
12
- react_1.default.createElement("label", { className: "rs__filter-active__list-item-label", onClick: () => props.handleRemove(selectedFilter.key) },
13
- react_1.default.createElement("span", { className: "rs__filter-active__list-item-label" },
8
+ const ExampleFiltersSelected = (props) => {
9
+ return (react_1.default.createElement("div", { className: "rs__filters-selected" },
10
+ react_1.default.createElement("h3", { className: "rs__filters-selected__name" }, "Filters Selected"),
11
+ react_1.default.createElement("ul", { className: "rs__filters-selected__list" }, props.selectedFilters.map((selectedFilter) => (react_1.default.createElement("li", { key: selectedFilter.key, className: "rs__filters-selected__list-item" },
12
+ react_1.default.createElement("label", { className: "rs__filters-selected__list-item-label", onClick: () => props.handleRemove(selectedFilter.key) },
13
+ react_1.default.createElement("span", { className: "rs__filters-selected__list-item-label" },
14
14
  selectedFilter.label,
15
15
  ": "),
16
- react_1.default.createElement("span", { className: "rs__filter-active__list-item-value" }, Array.isArray(selectedFilter.value)
16
+ react_1.default.createElement("span", { className: "rs__filters-selected__list-item-value" }, Array.isArray(selectedFilter.value)
17
17
  ? selectedFilter.value.join(", ")
18
18
  : typeof selectedFilter.value !== "string"
19
19
  ? `${selectedFilter.value.start}-${selectedFilter.value.end}`
20
20
  : selectedFilter.value))))))));
21
21
  };
22
- exports.ExampleFiltersActive = ExampleFiltersActive;
23
- //# sourceMappingURL=ExampleFiltersActive.js.map
22
+ exports.ExampleFiltersSelected = ExampleFiltersSelected;
23
+ //# sourceMappingURL=ExampleFiltersSelected.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExampleFiltersSelected.js","sourceRoot":"","sources":["../../../../src/components/Example/ExampleFiltersSelected.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAQnB,MAAM,sBAAsB,GAA0C,CAC3E,KAAK,EACL,EAAE;IACF,OAAO,CACL,uCAAK,SAAS,EAAC,sBAAsB;QACnC,sCAAI,SAAS,EAAC,4BAA4B,IAAE,kBAAkB,CAAM;QACpE,sCAAI,SAAS,EAAC,4BAA4B,IACvC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,CAC7C,sCACE,GAAG,EAAE,cAAc,CAAC,GAAG,EACvB,SAAS,EAAC,iCAAiC;YAE3C,yCACE,SAAS,EAAC,uCAAuC,EACjD,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC,GAAG,CAAC;gBAErD,wCAAM,SAAS,EAAC,uCAAuC;oBACpD,cAAc,CAAC,KAAK;oBACpB,IAAI,CACA;gBACP,wCAAM,SAAS,EAAC,uCAAuC,IACpD,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC;oBAClC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;oBACjC,CAAC,CAAC,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ;wBAC1C,CAAC,CAAC,GAAG,cAAc,CAAC,KAAK,CAAC,KAAK,IAAI,cAAc,CAAC,KAAK,CAAC,GAAG,EAAE;wBAC7D,CAAC,CAAC,cAAc,CAAC,KAAK,CACnB,CACD,CACL,CACN,CAAC,CACC,CACD,CACP,CAAC;AACJ,CAAC,CAAC;AAjCW,QAAA,sBAAsB,0BAiCjC","sourcesContent":["import React from \"react\";\n\nimport { FiltersSelectedProps } from \"../../components\";\n\nexport type ExampleFiltersSelectedProps = React.ComponentProps<\n NonNullable<FiltersSelectedProps[\"render\"]>\n>;\n\nexport const ExampleFiltersSelected: React.FC<ExampleFiltersSelectedProps> = (\n props\n) => {\n return (\n <div className=\"rs__filters-selected\">\n <h3 className=\"rs__filters-selected__name\">{\"Filters Selected\"}</h3>\n <ul className=\"rs__filters-selected__list\">\n {props.selectedFilters.map((selectedFilter) => (\n <li\n key={selectedFilter.key}\n className=\"rs__filters-selected__list-item\"\n >\n <label\n className=\"rs__filters-selected__list-item-label\"\n onClick={() => props.handleRemove(selectedFilter.key)}\n >\n <span className=\"rs__filters-selected__list-item-label\">\n {selectedFilter.label}\n {\": \"}\n </span>\n <span className=\"rs__filters-selected__list-item-value\">\n {Array.isArray(selectedFilter.value)\n ? selectedFilter.value.join(\", \")\n : typeof selectedFilter.value !== \"string\"\n ? `${selectedFilter.value.start}-${selectedFilter.value.end}`\n : selectedFilter.value}\n </span>\n </label>\n </li>\n ))}\n </ul>\n </div>\n );\n};\n"]}
@@ -4,7 +4,7 @@ export * from "./ExampleFilterList";
4
4
  export * from "./ExampleFilterRange";
5
5
  export * from "./ExampleFilterSlider";
6
6
  export * from "./ExampleFilters";
7
- export * from "./ExampleFiltersActive";
7
+ export * from "./ExampleFiltersSelected";
8
8
  export * from "./ExampleReactiveSearchProviderCollection";
9
9
  export * from "./ExampleReactiveSearchProviderInstantSearch";
10
10
  export * from "./ExampleReactiveSearchProviderSearch";
@@ -16,7 +16,7 @@ __exportStar(require("./ExampleFilterList"), exports);
16
16
  __exportStar(require("./ExampleFilterRange"), exports);
17
17
  __exportStar(require("./ExampleFilterSlider"), exports);
18
18
  __exportStar(require("./ExampleFilters"), exports);
19
- __exportStar(require("./ExampleFiltersActive"), exports);
19
+ __exportStar(require("./ExampleFiltersSelected"), exports);
20
20
  __exportStar(require("./ExampleReactiveSearchProviderCollection"), exports);
21
21
  __exportStar(require("./ExampleReactiveSearchProviderInstantSearch"), exports);
22
22
  __exportStar(require("./ExampleReactiveSearchProviderSearch"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Example/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAkC;AAClC,2DAAyC;AACzC,sDAAoC;AACpC,uDAAqC;AACrC,wDAAsC;AACtC,mDAAiC;AACjC,yDAAuC;AACvC,4EAA0D;AAC1D,+EAA6D;AAC7D,wEAAsD;AACtD,6DAA2C;AAC3C,6DAA2C;AAC3C,oEAAkD;AAClD,oEAAkD;AAClD,oEAAkD;AAClD,kDAAgC;AAChC,kDAAgC;AAChC,iDAA+B;AAE/B,yDAAuC;AACvC,yDAAuC","sourcesContent":["export * from \"./ExampleClearAll\";\nexport * from \"./ExampleCustomComponent\";\nexport * from \"./ExampleFilterList\";\nexport * from \"./ExampleFilterRange\";\nexport * from \"./ExampleFilterSlider\";\nexport * from \"./ExampleFilters\";\nexport * from \"./ExampleFiltersActive\";\nexport * from \"./ExampleReactiveSearchProviderCollection\";\nexport * from \"./ExampleReactiveSearchProviderInstantSearch\";\nexport * from \"./ExampleReactiveSearchProviderSearch\";\nexport * from \"./ExampleResultCardCallout\";\nexport * from \"./ExampleResultCardProduct\";\nexport * from \"./ExampleResultPaginationNumbered\";\nexport * from \"./ExampleResultPaginationLoadMore\";\nexport * from \"./ExampleResultPaginationNextPrev\";\nexport * from \"./ExampleSearch\";\nexport * from \"./ExampleSortBy\";\nexport * from \"./ExampleStats\";\n\nexport * from \"./ExampleHookUseSearch\";\nexport * from \"./ExampleHookUseSortBy\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Example/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAkC;AAClC,2DAAyC;AACzC,sDAAoC;AACpC,uDAAqC;AACrC,wDAAsC;AACtC,mDAAiC;AACjC,2DAAyC;AACzC,4EAA0D;AAC1D,+EAA6D;AAC7D,wEAAsD;AACtD,6DAA2C;AAC3C,6DAA2C;AAC3C,oEAAkD;AAClD,oEAAkD;AAClD,oEAAkD;AAClD,kDAAgC;AAChC,kDAAgC;AAChC,iDAA+B;AAE/B,yDAAuC;AACvC,yDAAuC","sourcesContent":["export * from \"./ExampleClearAll\";\nexport * from \"./ExampleCustomComponent\";\nexport * from \"./ExampleFilterList\";\nexport * from \"./ExampleFilterRange\";\nexport * from \"./ExampleFilterSlider\";\nexport * from \"./ExampleFilters\";\nexport * from \"./ExampleFiltersSelected\";\nexport * from \"./ExampleReactiveSearchProviderCollection\";\nexport * from \"./ExampleReactiveSearchProviderInstantSearch\";\nexport * from \"./ExampleReactiveSearchProviderSearch\";\nexport * from \"./ExampleResultCardCallout\";\nexport * from \"./ExampleResultCardProduct\";\nexport * from \"./ExampleResultPaginationNumbered\";\nexport * from \"./ExampleResultPaginationLoadMore\";\nexport * from \"./ExampleResultPaginationNextPrev\";\nexport * from \"./ExampleSearch\";\nexport * from \"./ExampleSortBy\";\nexport * from \"./ExampleStats\";\n\nexport * from \"./ExampleHookUseSearch\";\nexport * from \"./ExampleHookUseSortBy\";\n"]}
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
- export declare type FiltersActiveProps = {
2
+ export declare type FiltersSelectedProps = {
3
3
  /** Render method called once for all active filters */
4
4
  render?: React.FC<{
5
5
  selectedFilters: Array<{
@@ -13,4 +13,4 @@ export declare type FiltersActiveProps = {
13
13
  handleRemove: (filterKey: string) => void;
14
14
  }>;
15
15
  };
16
- export declare const FiltersActive: React.FC<FiltersActiveProps>;
16
+ export declare const FiltersSelected: React.FC<FiltersSelectedProps>;
@@ -3,13 +3,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.FiltersActive = void 0;
6
+ exports.FiltersSelected = void 0;
7
7
  const reactivesearch_1 = require("@appbaseio/reactivesearch");
8
8
  const react_1 = __importDefault(require("react"));
9
9
  const components_1 = require("../../components");
10
- const FiltersActive = (props) => {
10
+ const FiltersSelected = (props) => {
11
11
  var _a;
12
- const RenderComponent = (_a = props.render) !== null && _a !== void 0 ? _a : components_1.ExampleFiltersActive;
12
+ const RenderComponent = (_a = props.render) !== null && _a !== void 0 ? _a : components_1.ExampleFiltersSelected;
13
13
  return (react_1.default.createElement(reactivesearch_1.SelectedFilters, { render: ({ selectedValues, setValue }) => {
14
14
  const selectedFilters = Object.entries(selectedValues)
15
15
  .filter(([key, item]) => {
@@ -32,5 +32,5 @@ const FiltersActive = (props) => {
32
32
  return (react_1.default.createElement(RenderComponent, { selectedFilters: selectedFilters, handleRemove: handleRemove }));
33
33
  } }));
34
34
  };
35
- exports.FiltersActive = FiltersActive;
36
- //# sourceMappingURL=FiltersActive.js.map
35
+ exports.FiltersSelected = FiltersSelected;
36
+ //# sourceMappingURL=FiltersSelected.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FiltersSelected.js","sourceRoot":"","sources":["../../../../src/components/Filter/FiltersSelected.tsx"],"names":[],"mappings":";;;;;;AAAA,8DAA4D;AAC5D,kDAA0B;AAE1B,iDAA0D;AAcnD,MAAM,eAAe,GAAmC,CAAC,KAAK,EAAE,EAAE;;IACvE,MAAM,eAAe,GAAG,MAAA,KAAK,CAAC,MAAM,mCAAI,mCAAsB,CAAC;IAE/D,OAAO,CACL,8BAAC,gCAAe,IACd,MAAM,EAAE,CAAC,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,EAAE;YACvC,MAAM,eAAe,GACnB,MAAM,CAAC,OAAO,CAAC,cAAc,CAC9B;iBACE,MAAM,CACL,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE;;gBACd,OAAA,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAS;qBACf,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CAAA;oBAChB,CAAC,CAAC,CAAC,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,0CAAE,MAAM,CAAA,IAAI,CAAC,CAAC,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,0CAAE,KAAK,CAAA,CAAC,CAAA;aAAA,CAClD;iBACA,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gBACrB,GAAG,EAAE,GAAG;gBACR,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB,CAAC,CAAC,CAAC;YAEN,MAAM,YAAY,GAAG,CAAC,iBAAyB,EAAE,EAAE;gBACjD,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;YACpC,CAAC,CAAC;YAEF,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;gBAC3B,OAAO,IAAI,CAAC;aACb;YAED,OAAO,CACL,8BAAC,eAAe,IACd,eAAe,EAAE,eAAe,EAChC,YAAY,EAAE,YAAY,GAC1B,CACH,CAAC;QACJ,CAAC,GACD,CACH,CAAC;AACJ,CAAC,CAAC;AAtCW,QAAA,eAAe,mBAsC1B","sourcesContent":["import { SelectedFilters } from \"@appbaseio/reactivesearch\";\nimport React from \"react\";\n\nimport { ExampleFiltersSelected } from \"../../components\";\n\nexport type FiltersSelectedProps = {\n /** Render method called once for all active filters */\n render?: React.FC<{\n selectedFilters: Array<{\n key: string;\n label: string;\n value: Array<string> | string | { start: number; end: number };\n }>;\n handleRemove: (filterKey: string) => void;\n }>;\n};\n\nexport const FiltersSelected: React.FC<FiltersSelectedProps> = (props) => {\n const RenderComponent = props.render ?? ExampleFiltersSelected;\n\n return (\n <SelectedFilters\n render={({ selectedValues, setValue }) => {\n const selectedFilters = (\n Object.entries(selectedValues) as Array<[string, any]>\n )\n .filter(\n ([key, item]) =>\n item?.URLParams &&\n item?.showFilter &&\n (!!item?.value?.length || !!item?.value?.label)\n )\n .map(([key, item]) => ({\n key: key,\n label: item.label,\n value: item.value,\n }));\n\n const handleRemove = (selectedFilterKey: string) => {\n setValue(selectedFilterKey, null);\n };\n\n if (!selectedFilters.length) {\n return null;\n }\n\n return (\n <RenderComponent\n selectedFilters={selectedFilters}\n handleRemove={handleRemove}\n />\n );\n }}\n />\n );\n};\n"]}
@@ -1,3 +1,3 @@
1
1
  export * from "./Filter";
2
2
  export * from "./Filters";
3
- export * from "./FiltersActive";
3
+ export * from "./FiltersSelected";
@@ -12,5 +12,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./Filter"), exports);
14
14
  __exportStar(require("./Filters"), exports);
15
- __exportStar(require("./FiltersActive"), exports);
15
+ __exportStar(require("./FiltersSelected"), exports);
16
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Filter/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAyB;AACzB,4CAA0B;AAC1B,kDAAgC","sourcesContent":["export * from \"./Filter\";\nexport * from \"./Filters\";\nexport * from \"./FiltersActive\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Filter/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAyB;AACzB,4CAA0B;AAC1B,oDAAkC","sourcesContent":["export * from \"./Filter\";\nexport * from \"./Filters\";\nexport * from \"./FiltersSelected\";\n"]}
@@ -9,9 +9,9 @@ const hooks_1 = require("../../hooks");
9
9
  const components_1 = require("../../components");
10
10
  const Search = (props) => {
11
11
  var _a;
12
- const sortbyData = (0, hooks_1.useSearch)();
13
- const RenderSortOptionsComponent = (_a = props.render) !== null && _a !== void 0 ? _a : components_1.ExampleSearch;
14
- return react_1.default.createElement(RenderSortOptionsComponent, Object.assign({}, sortbyData));
12
+ const searchHook = (0, hooks_1.useSearch)();
13
+ const RenderComponent = (_a = props.render) !== null && _a !== void 0 ? _a : components_1.ExampleSearch;
14
+ return react_1.default.createElement(RenderComponent, Object.assign({}, searchHook));
15
15
  };
16
16
  exports.Search = Search;
17
17
  //# sourceMappingURL=Search.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Search.js","sourceRoot":"","sources":["../../../../src/components/Search/Search.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,uCAAwC;AACxC,iDAAiD;AAO1C,MAAM,MAAM,GAA0B,CAAC,KAAK,EAAE,EAAE;;IACrD,MAAM,UAAU,GAAG,IAAA,iBAAS,GAAE,CAAC;IAE/B,MAAM,0BAA0B,GAAG,MAAA,KAAK,CAAC,MAAM,mCAAI,0BAAa,CAAC;IAEjE,OAAO,8BAAC,0BAA0B,oBAAK,UAAU,EAAI,CAAC;AACxD,CAAC,CAAC;AANW,QAAA,MAAM,UAMjB","sourcesContent":["import React from \"react\";\n\nimport { useSearch } from \"../../hooks\";\nimport { ExampleSearch } from \"../../components\";\n\nexport type SearchProps = {\n /** Render method */\n render?: React.FC<ReturnType<typeof useSearch>>;\n};\n\nexport const Search: React.FC<SearchProps> = (props) => {\n const sortbyData = useSearch();\n\n const RenderSortOptionsComponent = props.render ?? ExampleSearch;\n\n return <RenderSortOptionsComponent {...sortbyData} />;\n};\n"]}
1
+ {"version":3,"file":"Search.js","sourceRoot":"","sources":["../../../../src/components/Search/Search.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,uCAAwC;AACxC,iDAAiD;AAO1C,MAAM,MAAM,GAA0B,CAAC,KAAK,EAAE,EAAE;;IACrD,MAAM,UAAU,GAAG,IAAA,iBAAS,GAAE,CAAC;IAE/B,MAAM,eAAe,GAAG,MAAA,KAAK,CAAC,MAAM,mCAAI,0BAAa,CAAC;IAEtD,OAAO,8BAAC,eAAe,oBAAK,UAAU,EAAI,CAAC;AAC7C,CAAC,CAAC;AANW,QAAA,MAAM,UAMjB","sourcesContent":["import React from \"react\";\n\nimport { useSearch } from \"../../hooks\";\nimport { ExampleSearch } from \"../../components\";\n\nexport type SearchProps = {\n /** Render method */\n render?: React.FC<ReturnType<typeof useSearch>>;\n};\n\nexport const Search: React.FC<SearchProps> = (props) => {\n const searchHook = useSearch();\n\n const RenderComponent = props.render ?? ExampleSearch;\n\n return <RenderComponent {...searchHook} />;\n};\n"]}
@@ -9,9 +9,9 @@ const hooks_1 = require("../../hooks");
9
9
  const components_1 = require("../../components");
10
10
  const SortBy = (props) => {
11
11
  var _a;
12
- const sortbyData = (0, hooks_1.useSortBy)();
12
+ const sortByHook = (0, hooks_1.useSortBy)();
13
13
  const RenderComponent = (_a = props.render) !== null && _a !== void 0 ? _a : components_1.ExampleSortBy;
14
- return react_1.default.createElement(RenderComponent, Object.assign({}, sortbyData));
14
+ return react_1.default.createElement(RenderComponent, Object.assign({}, sortByHook));
15
15
  };
16
16
  exports.SortBy = SortBy;
17
17
  //# sourceMappingURL=SortBy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SortBy.js","sourceRoot":"","sources":["../../../../src/components/SortBy/SortBy.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,uCAAwC;AACxC,iDAAiD;AAO1C,MAAM,MAAM,GAA0B,CAAC,KAAK,EAAE,EAAE;;IACrD,MAAM,UAAU,GAAG,IAAA,iBAAS,GAAE,CAAC;IAE/B,MAAM,eAAe,GAAG,MAAA,KAAK,CAAC,MAAM,mCAAI,0BAAa,CAAC;IAEtD,OAAO,8BAAC,eAAe,oBAAK,UAAU,EAAI,CAAC;AAC7C,CAAC,CAAC;AANW,QAAA,MAAM,UAMjB","sourcesContent":["import React from \"react\";\n\nimport { useSortBy } from \"../../hooks\";\nimport { ExampleSortBy } from \"../../components\";\n\nexport type SortByProps = {\n /** Render method called once for all sort options */\n render?: React.FC<ReturnType<typeof useSortBy>>;\n};\n\nexport const SortBy: React.FC<SortByProps> = (props) => {\n const sortbyData = useSortBy();\n\n const RenderComponent = props.render ?? ExampleSortBy;\n\n return <RenderComponent {...sortbyData} />;\n};\n"]}
1
+ {"version":3,"file":"SortBy.js","sourceRoot":"","sources":["../../../../src/components/SortBy/SortBy.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,uCAAwC;AACxC,iDAAiD;AAO1C,MAAM,MAAM,GAA0B,CAAC,KAAK,EAAE,EAAE;;IACrD,MAAM,UAAU,GAAG,IAAA,iBAAS,GAAE,CAAC;IAE/B,MAAM,eAAe,GAAG,MAAA,KAAK,CAAC,MAAM,mCAAI,0BAAa,CAAC;IAEtD,OAAO,8BAAC,eAAe,oBAAK,UAAU,EAAI,CAAC;AAC7C,CAAC,CAAC;AANW,QAAA,MAAM,UAMjB","sourcesContent":["import React from \"react\";\n\nimport { useSortBy } from \"../../hooks\";\nimport { ExampleSortBy } from \"../../components\";\n\nexport type SortByProps = {\n /** Render method called once for all sort options */\n render?: React.FC<ReturnType<typeof useSortBy>>;\n};\n\nexport const SortBy: React.FC<SortByProps> = (props) => {\n const sortByHook = useSortBy();\n\n const RenderComponent = props.render ?? ExampleSortBy;\n\n return <RenderComponent {...sortByHook} />;\n};\n"]}
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.useSearch = void 0;
7
- const ahooks_1 = require("ahooks");
8
7
  const react_1 = __importDefault(require("react"));
9
8
  const hooks_1 = require("../hooks");
10
9
  const utility_1 = require("../utility");
@@ -38,7 +37,7 @@ const useSearch = () => {
38
37
  window.location.href = `/search?q=${searchTerm}`;
39
38
  }
40
39
  }, [search.searchTerm]);
41
- const { run: runDebouncedBreadcrumb, cancel: cancelDebouncedBreadcrumb } = (0, ahooks_1.useDebounceFn)((searchTerm = search.searchTerm) => {
40
+ const handleSetSearchTerm = react_1.default.useCallback((searchTerm = "") => {
42
41
  utility_1.debug.log("useSearch", "setSearchTerm[searchTerm]", searchTerm);
43
42
  utility_1.debug.breadcrumb({
44
43
  category: "search",
@@ -47,17 +46,6 @@ const useSearch = () => {
47
46
  searchTerm: searchTerm,
48
47
  },
49
48
  });
50
- }, {
51
- wait: 300,
52
- });
53
- const handleSetSearchTerm = react_1.default.useCallback((searchTerm = "") => {
54
- utility_1.debug.log("useSearch", "setSearchTerm[searchTerm]", searchTerm);
55
- if (searchTerm) {
56
- runDebouncedBreadcrumb(searchTerm);
57
- }
58
- else {
59
- cancelDebouncedBreadcrumb();
60
- }
61
49
  search.setSearchTerm(searchTerm);
62
50
  }, [search.searchTerm]);
63
51
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"useSearch.js","sourceRoot":"","sources":["../../../src/hooks/useSearch.ts"],"names":[],"mappings":"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","sourcesContent":["import { useDebounceFn } from \"ahooks\";\nimport React from \"react\";\n\nimport { useReactifySearchContext } from \"../hooks\";\nimport { debug } from \"../utility\";\n\nexport const useSearch = (): {\n /** The current search term */\n searchTerm: string;\n /** Function for changing the current search term */\n setSearchTerm: (searchTerm?: string) => void;\n /** Function for navigating to the search page, includes logic for redirects */\n submitSearchTerm: (searchTerm?: string) => void;\n /** Used to determine if instant search results should be displayed */\n showInstantSearchResults: boolean;\n /** Used to manually set the \"showInstantSearchResults\" value */\n setShowInstantSearchResults: React.Dispatch<React.SetStateAction<boolean>>;\n} => {\n const { options, config, search } = useReactifySearchContext();\n\n const handleSubmitSearchTerm = React.useCallback(\n (searchTerm: string = search.searchTerm) => {\n debug.breadcrumb({\n category: \"search\",\n message: \"search submit\",\n data: {\n searchTerm: searchTerm,\n },\n });\n\n debug.log(\"useSearch\", \"submitSearchTerm[query]\", searchTerm);\n\n if (!searchTerm) {\n return;\n }\n\n const redirect = config.redirects.find(\n (redirect) =>\n redirect.query.trim().toLowerCase() ===\n searchTerm.trim().toLowerCase()\n );\n\n if (redirect) {\n debug.log(\"useSearch\", \"submitSearchTerm[redirect]\", redirect);\n }\n\n search.setShowInstantSearchResults(false);\n\n if (options.onRedirect) {\n options.onRedirect(\n redirect ? \"redirect\" : \"search\",\n redirect ? redirect.url : `/search?q=${searchTerm}`\n );\n } else if (redirect) {\n window.location.href = redirect.url;\n } else {\n window.location.href = `/search?q=${searchTerm}`;\n }\n },\n [search.searchTerm]\n );\n\n const { run: runDebouncedBreadcrumb, cancel: cancelDebouncedBreadcrumb } =\n useDebounceFn(\n (searchTerm: string = search.searchTerm) => {\n debug.log(\"useSearch\", \"setSearchTerm[searchTerm]\", searchTerm);\n debug.breadcrumb({\n category: \"search\",\n message: \"search query\",\n data: {\n searchTerm: searchTerm,\n },\n });\n },\n {\n wait: 300,\n }\n );\n\n const handleSetSearchTerm = React.useCallback(\n (searchTerm: string = \"\") => {\n debug.log(\"useSearch\", \"setSearchTerm[searchTerm]\", searchTerm);\n if (searchTerm) {\n runDebouncedBreadcrumb(searchTerm);\n } else {\n cancelDebouncedBreadcrumb();\n }\n\n search.setSearchTerm(searchTerm);\n },\n [search.searchTerm]\n );\n\n return {\n searchTerm: search.searchTerm,\n setSearchTerm: handleSetSearchTerm,\n submitSearchTerm: handleSubmitSearchTerm,\n showInstantSearchResults:\n !!search.showInstantSearchResults && !!search.searchTerm,\n setShowInstantSearchResults: search.setShowInstantSearchResults,\n };\n};\n"]}
1
+ {"version":3,"file":"useSearch.js","sourceRoot":"","sources":["../../../src/hooks/useSearch.ts"],"names":[],"mappings":";;;;;;AACA,kDAA0B;AAE1B,oCAAoD;AACpD,wCAAmC;AAE5B,MAAM,SAAS,GAAG,GAWvB,EAAE;IACF,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,gCAAwB,GAAE,CAAC;IAE/D,MAAM,sBAAsB,GAAG,eAAK,CAAC,WAAW,CAC9C,CAAC,aAAqB,MAAM,CAAC,UAAU,EAAE,EAAE;QACzC,eAAK,CAAC,UAAU,CAAC;YACf,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,eAAe;YACxB,IAAI,EAAE;gBACJ,UAAU,EAAE,UAAU;aACvB;SACF,CAAC,CAAC;QAEH,eAAK,CAAC,GAAG,CAAC,WAAW,EAAE,yBAAyB,EAAE,UAAU,CAAC,CAAC;QAE9D,IAAI,CAAC,UAAU,EAAE;YACf,OAAO;SACR;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CACpC,CAAC,QAAQ,EAAE,EAAE,CACX,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,UAAU,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAClC,CAAC;QAEF,IAAI,QAAQ,EAAE;YACZ,eAAK,CAAC,GAAG,CAAC,WAAW,EAAE,4BAA4B,EAAE,QAAQ,CAAC,CAAC;SAChE;QAED,MAAM,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;QAE1C,IAAI,OAAO,CAAC,UAAU,EAAE;YACtB,OAAO,CAAC,UAAU,CAChB,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,EAChC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa,UAAU,EAAE,CACpD,CAAC;SACH;aAAM,IAAI,QAAQ,EAAE;YACnB,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC;SACrC;aAAM;YACL,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,aAAa,UAAU,EAAE,CAAC;SAClD;IACH,CAAC,EACD,CAAC,MAAM,CAAC,UAAU,CAAC,CACpB,CAAC;IAEF,MAAM,mBAAmB,GAAG,eAAK,CAAC,WAAW,CAC3C,CAAC,aAAqB,EAAE,EAAE,EAAE;QAC1B,eAAK,CAAC,GAAG,CAAC,WAAW,EAAE,2BAA2B,EAAE,UAAU,CAAC,CAAC;QAChE,eAAK,CAAC,UAAU,CAAC;YACf,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,cAAc;YACvB,IAAI,EAAE;gBACJ,UAAU,EAAE,UAAU;aACvB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC,EACD,CAAC,MAAM,CAAC,UAAU,CAAC,CACpB,CAAC;IAEF,OAAO;QACL,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,aAAa,EAAE,mBAAmB;QAClC,gBAAgB,EAAE,sBAAsB;QACxC,wBAAwB,EACtB,CAAC,CAAC,MAAM,CAAC,wBAAwB,IAAI,CAAC,CAAC,MAAM,CAAC,UAAU;QAC1D,2BAA2B,EAAE,MAAM,CAAC,2BAA2B;KAChE,CAAC;AACJ,CAAC,CAAC;AAhFW,QAAA,SAAS,aAgFpB","sourcesContent":["import { useDebounceFn } from \"ahooks\";\nimport React from \"react\";\n\nimport { useReactifySearchContext } from \"../hooks\";\nimport { debug } from \"../utility\";\n\nexport const useSearch = (): {\n /** The current search term */\n searchTerm: string;\n /** Function for changing the current search term */\n setSearchTerm: (searchTerm?: string) => void;\n /** Function for navigating to the search page, includes logic for redirects */\n submitSearchTerm: (searchTerm?: string) => void;\n /** Used to determine if instant search results should be displayed */\n showInstantSearchResults: boolean;\n /** Used to manually set the \"showInstantSearchResults\" value */\n setShowInstantSearchResults: React.Dispatch<React.SetStateAction<boolean>>;\n} => {\n const { options, config, search } = useReactifySearchContext();\n\n const handleSubmitSearchTerm = React.useCallback(\n (searchTerm: string = search.searchTerm) => {\n debug.breadcrumb({\n category: \"search\",\n message: \"search submit\",\n data: {\n searchTerm: searchTerm,\n },\n });\n\n debug.log(\"useSearch\", \"submitSearchTerm[query]\", searchTerm);\n\n if (!searchTerm) {\n return;\n }\n\n const redirect = config.redirects.find(\n (redirect) =>\n redirect.query.trim().toLowerCase() ===\n searchTerm.trim().toLowerCase()\n );\n\n if (redirect) {\n debug.log(\"useSearch\", \"submitSearchTerm[redirect]\", redirect);\n }\n\n search.setShowInstantSearchResults(false);\n\n if (options.onRedirect) {\n options.onRedirect(\n redirect ? \"redirect\" : \"search\",\n redirect ? redirect.url : `/search?q=${searchTerm}`\n );\n } else if (redirect) {\n window.location.href = redirect.url;\n } else {\n window.location.href = `/search?q=${searchTerm}`;\n }\n },\n [search.searchTerm]\n );\n\n const handleSetSearchTerm = React.useCallback(\n (searchTerm: string = \"\") => {\n debug.log(\"useSearch\", \"setSearchTerm[searchTerm]\", searchTerm);\n debug.breadcrumb({\n category: \"search\",\n message: \"search query\",\n data: {\n searchTerm: searchTerm,\n },\n });\n\n search.setSearchTerm(searchTerm);\n },\n [search.searchTerm]\n );\n\n return {\n searchTerm: search.searchTerm,\n setSearchTerm: handleSetSearchTerm,\n submitSearchTerm: handleSubmitSearchTerm,\n showInstantSearchResults:\n !!search.showInstantSearchResults && !!search.searchTerm,\n setShowInstantSearchResults: search.setShowInstantSearchResults,\n };\n};\n"]}
@@ -1 +1,2 @@
1
1
  export * from "./debug";
2
+ export * from "./liquid";
@@ -11,4 +11,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./debug"), exports);
14
+ __exportStar(require("./liquid"), exports);
14
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utility/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAwB","sourcesContent":["export * from \"./debug\";"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utility/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAwB;AACxB,2CAAyB","sourcesContent":["export * from \"./debug\";\nexport * from \"./liquid\";\n"]}
@@ -0,0 +1,14 @@
1
+ import React from "react";
2
+ import { ReactifySearchProviderProps } from "../components";
3
+ export declare class ReactifySearchLiquidFactory {
4
+ providerProps: Omit<ReactifySearchProviderProps, "shopifyPermanentDomain"> & {
5
+ shopifyPermanentDomain?: string;
6
+ collectionHandle?: string;
7
+ };
8
+ constructor(providerProps: Omit<ReactifySearchProviderProps, "shopifyPermanentDomain"> & {
9
+ shopifyPermanentDomain?: string;
10
+ collectionHandle?: string;
11
+ });
12
+ getProvider(): React.FC<{}>;
13
+ getMountNode(): HTMLElement;
14
+ }
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ReactifySearchLiquidFactory = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const components_1 = require("../components");
9
+ class ReactifySearchLiquidFactory {
10
+ constructor(providerProps) {
11
+ this.providerProps = providerProps;
12
+ }
13
+ getProvider() {
14
+ var _a, _b, _c, _d;
15
+ const shopifyPermanentDomain = (_a = this.providerProps.shopifyPermanentDomain) !== null && _a !== void 0 ? _a : (_c = (_b = window) === null || _b === void 0 ? void 0 : _b.Shopify) === null || _c === void 0 ? void 0 : _c.shop;
16
+ if (!shopifyPermanentDomain) {
17
+ throw new Error("Cannot determine shopifyPermanentDomain from window");
18
+ }
19
+ const collectionHandle = (_d = this.providerProps.collectionHandle) !== null && _d !== void 0 ? _d : window.location.href.split(/\//)[4];
20
+ if (this.providerProps.mode === "collection" && !collectionHandle) {
21
+ throw new Error("Cannot determine collectionHandle from URL");
22
+ }
23
+ const provider = (props) => (react_1.default.createElement(components_1.ReactifySearchProvider, Object.assign({}, this.providerProps, { shopifyPermanentDomain: shopifyPermanentDomain, collectionHandle: collectionHandle }), props.children));
24
+ return provider;
25
+ }
26
+ getMountNode() {
27
+ const mountNode = document.getElementById(`reactify-mount-${this.providerProps.mode}`);
28
+ if (!mountNode) {
29
+ throw new Error(`Cannot find mount node with ID "reactify-mount-${this.providerProps.mode}"`);
30
+ }
31
+ return mountNode;
32
+ }
33
+ }
34
+ exports.ReactifySearchLiquidFactory = ReactifySearchLiquidFactory;
35
+ //# sourceMappingURL=liquid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"liquid.js","sourceRoot":"","sources":["../../../src/utility/liquid.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,8CAGuB;AAEvB,MAAa,2BAA2B;IACtC,YACS,aAMN;QANM,kBAAa,GAAb,aAAa,CAMnB;IACA,CAAC;IAEJ,WAAW;;QACT,MAAM,sBAAsB,GAC1B,MAAA,IAAI,CAAC,aAAa,CAAC,sBAAsB,mCACzC,MAAA,MAAC,MAAc,0CAAE,OAAO,0CAAE,IAAI,CAAC;QACjC,IAAI,CAAC,sBAAsB,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;SACxE;QAED,MAAM,gBAAgB,GACpB,MAAA,IAAI,CAAC,aAAa,CAAC,gBAAgB,mCACnC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACtC,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,gBAAgB,EAAE;YACjE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;SAC/D;QAED,MAAM,QAAQ,GAAa,CAAC,KAAK,EAAE,EAAE,CAAC,CACpC,8BAAC,mCAAsB,oBACjB,IAAI,CAAC,aAAa,IACtB,sBAAsB,EAAE,sBAAsB,EAC9C,gBAAgB,EAAE,gBAAgB,KAEjC,KAAK,CAAC,QAAQ,CACQ,CAC1B,CAAC;QAEF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,YAAY;QACV,MAAM,SAAS,GAAG,QAAQ,CAAC,cAAc,CACvC,kBAAkB,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAC5C,CAAC;QACF,IAAI,CAAC,SAAS,EAAE;YACd,MAAM,IAAI,KAAK,CACb,kDAAkD,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,CAC7E,CAAC;SACH;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAnDD,kEAmDC","sourcesContent":["import React from \"react\";\n\nimport {\n ReactifySearchProvider,\n ReactifySearchProviderProps,\n} from \"../components\";\n\nexport class ReactifySearchLiquidFactory {\n constructor(\n public providerProps: Omit<\n ReactifySearchProviderProps,\n \"shopifyPermanentDomain\"\n > & {\n shopifyPermanentDomain?: string;\n collectionHandle?: string;\n }\n ) {}\n\n getProvider() {\n const shopifyPermanentDomain =\n this.providerProps.shopifyPermanentDomain ??\n (window as any)?.Shopify?.shop;\n if (!shopifyPermanentDomain) {\n throw new Error(\"Cannot determine shopifyPermanentDomain from window\");\n }\n\n const collectionHandle =\n this.providerProps.collectionHandle ??\n window.location.href.split(/\\//)[4];\n if (this.providerProps.mode === \"collection\" && !collectionHandle) {\n throw new Error(\"Cannot determine collectionHandle from URL\");\n }\n\n const provider: React.FC = (props) => (\n <ReactifySearchProvider\n {...this.providerProps}\n shopifyPermanentDomain={shopifyPermanentDomain}\n collectionHandle={collectionHandle}\n >\n {props.children}\n </ReactifySearchProvider>\n );\n\n return provider;\n }\n\n getMountNode() {\n const mountNode = document.getElementById(\n `reactify-mount-${this.providerProps.mode}`\n );\n if (!mountNode) {\n throw new Error(\n `Cannot find mount node with ID \"reactify-mount-${this.providerProps.mode}\"`\n );\n }\n\n return mountNode;\n }\n}\n"]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@usereactify/search",
3
3
  "description": "React UI library for Reactify Search",
4
- "version": "5.1.5",
4
+ "version": "5.2.0-beta.1",
5
5
  "license": "MIT",
6
6
  "main": "dist/src/index.js",
7
7
  "types": "dist/src/index.d.ts",
@@ -1,4 +0,0 @@
1
- import React from "react";
2
- import { FiltersActiveProps } from "../../components";
3
- export declare type ExampleFiltersActiveProps = React.ComponentProps<NonNullable<FiltersActiveProps["render"]>>;
4
- export declare const ExampleFiltersActive: React.FC<ExampleFiltersActiveProps>;
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExampleFiltersActive.js","sourceRoot":"","sources":["../../../../src/components/Example/ExampleFiltersActive.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAQnB,MAAM,oBAAoB,GAAwC,CACvE,KAAK,EACL,EAAE;IACF,OAAO,CACL,uCAAK,SAAS,EAAC,mBAAmB;QAChC,sCAAI,SAAS,EAAC,yBAAyB,IAAE,gBAAgB,CAAM;QAC/D,sCAAI,SAAS,EAAC,yBAAyB,IACpC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,CAC7C,sCAAI,GAAG,EAAE,cAAc,CAAC,GAAG,EAAE,SAAS,EAAC,8BAA8B;YACnE,yCACE,SAAS,EAAC,oCAAoC,EAC9C,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC,GAAG,CAAC;gBAErD,wCAAM,SAAS,EAAC,oCAAoC;oBACjD,cAAc,CAAC,KAAK;oBACpB,IAAI,CACA;gBACP,wCAAM,SAAS,EAAC,oCAAoC,IACjD,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC;oBAClC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;oBACjC,CAAC,CAAC,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ;wBAC1C,CAAC,CAAC,GAAG,cAAc,CAAC,KAAK,CAAC,KAAK,IAAI,cAAc,CAAC,KAAK,CAAC,GAAG,EAAE;wBAC7D,CAAC,CAAC,cAAc,CAAC,KAAK,CACnB,CACD,CACL,CACN,CAAC,CACC,CACD,CACP,CAAC;AACJ,CAAC,CAAC;AA9BW,QAAA,oBAAoB,wBA8B/B","sourcesContent":["import React from \"react\";\n\nimport { FiltersActiveProps } from \"../../components\";\n\nexport type ExampleFiltersActiveProps = React.ComponentProps<\n NonNullable<FiltersActiveProps[\"render\"]>\n>;\n\nexport const ExampleFiltersActive: React.FC<ExampleFiltersActiveProps> = (\n props\n) => {\n return (\n <div className=\"rs__filter-active\">\n <h3 className=\"rs__filter-active__name\">{\"Filters Active\"}</h3>\n <ul className=\"rs__filter-active__list\">\n {props.selectedFilters.map((selectedFilter) => (\n <li key={selectedFilter.key} className=\"rs__filter-active__list-item\">\n <label\n className=\"rs__filter-active__list-item-label\"\n onClick={() => props.handleRemove(selectedFilter.key)}\n >\n <span className=\"rs__filter-active__list-item-label\">\n {selectedFilter.label}\n {\": \"}\n </span>\n <span className=\"rs__filter-active__list-item-value\">\n {Array.isArray(selectedFilter.value)\n ? selectedFilter.value.join(\", \")\n : typeof selectedFilter.value !== \"string\"\n ? `${selectedFilter.value.start}-${selectedFilter.value.end}`\n : selectedFilter.value}\n </span>\n </label>\n </li>\n ))}\n </ul>\n </div>\n );\n};\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"FiltersActive.js","sourceRoot":"","sources":["../../../../src/components/Filter/FiltersActive.tsx"],"names":[],"mappings":";;;;;;AAAA,8DAA4D;AAC5D,kDAA0B;AAE1B,iDAAwD;AAcjD,MAAM,aAAa,GAAiC,CAAC,KAAK,EAAE,EAAE;;IACnE,MAAM,eAAe,GAAG,MAAA,KAAK,CAAC,MAAM,mCAAI,iCAAoB,CAAC;IAE7D,OAAO,CACL,8BAAC,gCAAe,IACd,MAAM,EAAE,CAAC,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,EAAE;YACvC,MAAM,eAAe,GACnB,MAAM,CAAC,OAAO,CAAC,cAAc,CAC9B;iBACE,MAAM,CACL,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE;;gBACd,OAAA,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAS;qBACf,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CAAA;oBAChB,CAAC,CAAC,CAAC,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,0CAAE,MAAM,CAAA,IAAI,CAAC,CAAC,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,0CAAE,KAAK,CAAA,CAAC,CAAA;aAAA,CAClD;iBACA,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gBACrB,GAAG,EAAE,GAAG;gBACR,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB,CAAC,CAAC,CAAC;YAEN,MAAM,YAAY,GAAG,CAAC,iBAAyB,EAAE,EAAE;gBACjD,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;YACpC,CAAC,CAAC;YAEF,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;gBAC3B,OAAO,IAAI,CAAC;aACb;YAED,OAAO,CACL,8BAAC,eAAe,IACd,eAAe,EAAE,eAAe,EAChC,YAAY,EAAE,YAAY,GAC1B,CACH,CAAC;QACJ,CAAC,GACD,CACH,CAAC;AACJ,CAAC,CAAC;AAtCW,QAAA,aAAa,iBAsCxB","sourcesContent":["import { SelectedFilters } from \"@appbaseio/reactivesearch\";\nimport React from \"react\";\n\nimport { ExampleFiltersActive } from \"../../components\";\n\nexport type FiltersActiveProps = {\n /** Render method called once for all active filters */\n render?: React.FC<{\n selectedFilters: Array<{\n key: string;\n label: string;\n value: Array<string> | string | { start: number; end: number };\n }>;\n handleRemove: (filterKey: string) => void;\n }>;\n};\n\nexport const FiltersActive: React.FC<FiltersActiveProps> = (props) => {\n const RenderComponent = props.render ?? ExampleFiltersActive;\n\n return (\n <SelectedFilters\n render={({ selectedValues, setValue }) => {\n const selectedFilters = (\n Object.entries(selectedValues) as Array<[string, any]>\n )\n .filter(\n ([key, item]) =>\n item?.URLParams &&\n item?.showFilter &&\n (!!item?.value?.length || !!item?.value?.label)\n )\n .map(([key, item]) => ({\n key: key,\n label: item.label,\n value: item.value,\n }));\n\n const handleRemove = (selectedFilterKey: string) => {\n setValue(selectedFilterKey, null);\n };\n\n if (!selectedFilters.length) {\n return null;\n }\n\n return (\n <RenderComponent\n selectedFilters={selectedFilters}\n handleRemove={handleRemove}\n />\n );\n }}\n />\n );\n};\n"]}