@plasmicpkgs/commerce 0.0.37 → 0.0.40

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.
@@ -7,10 +7,10 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
7
7
  var registerComponent = _interopDefault(require('@plasmicapp/host/registerComponent'));
8
8
  var React = require('react');
9
9
  var React__default = _interopDefault(React);
10
+ var host = require('@plasmicapp/host');
10
11
  var reactHookForm = require('react-hook-form');
11
12
  var query = require('@plasmicapp/query');
12
13
  var Cookies = _interopDefault(require('js-cookie'));
13
- var host = require('@plasmicapp/host');
14
14
 
15
15
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
16
16
  try {
@@ -970,51 +970,54 @@ var defaultProduct = {
970
970
  options: []
971
971
  };
972
972
 
973
- var ProductContext = /*#__PURE__*/React__default.createContext(undefined);
973
+ var productSelector = "product";
974
974
  function ProductProvider(_ref) {
975
975
  var product = _ref.product,
976
976
  children = _ref.children;
977
977
  var methods = reactHookForm.useForm();
978
- return React__default.createElement(ProductContext.Provider, {
979
- value: product,
978
+ return React__default.createElement(host.DataProvider, {
979
+ name: productSelector,
980
+ data: product,
980
981
  key: product.id
981
982
  }, React__default.createElement(reactHookForm.FormProvider, Object.assign({}, methods), children));
982
983
  }
983
984
  var useProduct = function useProduct() {
984
- var product = React.useContext(ProductContext);
985
+ var product = host.useSelector(productSelector);
985
986
  return product != null ? product : defaultProduct;
986
987
  };
987
- var CategoryContext = /*#__PURE__*/React__default.createContext(undefined);
988
988
  var PrimaryCategoryContext = /*#__PURE__*/React__default.createContext(undefined); //used to render correctly the defaultValueHint in ProductCollection
989
989
 
990
+ var categorySelector = "category";
990
991
  function CategoryProvider(_ref2) {
991
992
  var category = _ref2.category,
992
993
  children = _ref2.children;
993
- return React__default.createElement(CategoryContext.Provider, {
994
- value: category,
994
+ return React__default.createElement(host.DataProvider, {
995
+ name: categorySelector,
996
+ data: category,
995
997
  key: category.id
996
998
  }, children);
997
999
  }
998
1000
  var useCategoryContext = function useCategoryContext() {
999
- return React.useContext(CategoryContext);
1001
+ return host.useSelector(categorySelector);
1000
1002
  };
1001
1003
  var usePrimaryCategory = function usePrimaryCategory() {
1002
1004
  return React.useContext(PrimaryCategoryContext);
1003
1005
  };
1004
- var ProductMediaContext = /*#__PURE__*/React__default.createContext(undefined);
1006
+ var mediaSelector = "currentMedia";
1005
1007
  function ProductMediaProvider(_ref3) {
1006
1008
  var mediaIndex = _ref3.mediaIndex,
1007
1009
  onClick = _ref3.onClick,
1008
1010
  children = _ref3.children;
1009
- return React__default.createElement(ProductMediaContext.Provider, {
1010
- value: mediaIndex,
1011
+ return React__default.createElement(host.DataProvider, {
1012
+ name: mediaSelector,
1013
+ data: mediaIndex,
1011
1014
  key: mediaIndex
1012
1015
  }, React__default.cloneElement(React__default.isValidElement(children) ? children : React__default.createElement(React__default.Fragment, null), {
1013
1016
  onClick: onClick
1014
1017
  }));
1015
1018
  }
1016
1019
  var useProductMediaContext = function useProductMediaContext() {
1017
- return React.useContext(ProductMediaContext);
1020
+ return host.useSelector(mediaSelector);
1018
1021
  };
1019
1022
 
1020
1023
  var _excluded = ["children"];
@@ -1801,7 +1804,7 @@ var categoryMediaMeta = {
1801
1804
  importPath: "@plasmicpkgs/commerce",
1802
1805
  importName: "CategoryMedia"
1803
1806
  };
1804
- function CategoryMedia(props) {
1807
+ var CategoryMedia = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
1805
1808
  var _image$url;
1806
1809
 
1807
1810
  var className = props.className,
@@ -1810,12 +1813,13 @@ function CategoryMedia(props) {
1810
1813
  var category = useCategoryContext();
1811
1814
  var image = category != null && category.images ? category.images[mediaIndex] : undefined;
1812
1815
  return React__default.createElement("img", {
1816
+ ref: ref,
1813
1817
  alt: (category == null ? void 0 : category.name) || "Category Image",
1814
1818
  src: (_image$url = image == null ? void 0 : image.url) != null ? _image$url : "",
1815
1819
  loading: "lazy",
1816
1820
  className: className
1817
1821
  });
1818
- }
1822
+ });
1819
1823
  function registerCategoryMedia(loader, customCategoryMediaMeta) {
1820
1824
  var doRegisterComponent = function doRegisterComponent() {
1821
1825
  return loader ? loader.registerComponent.apply(loader, arguments) : registerComponent.apply(void 0, arguments);
@@ -2227,7 +2231,7 @@ var productMediaMeta = {
2227
2231
  importPath: "@plasmicpkgs/commerce",
2228
2232
  importName: "ProductMedia"
2229
2233
  };
2230
- function ProductMedia(props) {
2234
+ var ProductMedia = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
2231
2235
  var _image$url;
2232
2236
 
2233
2237
  var className = props.className,
@@ -2241,12 +2245,13 @@ function ProductMedia(props) {
2241
2245
  });
2242
2246
  var image = product == null ? void 0 : product.images[mediaContext != null ? mediaContext : mediaIndex];
2243
2247
  return React__default.createElement("img", {
2248
+ ref: ref,
2244
2249
  alt: (product == null ? void 0 : product.name) || "Product Image",
2245
2250
  src: product ? (_image$url = image == null ? void 0 : image.url) != null ? _image$url : "" : placeholderImage,
2246
2251
  loading: "lazy",
2247
2252
  className: className
2248
2253
  });
2249
- }
2254
+ });
2250
2255
  function registerProductMedia(loader, customProductMediaMeta) {
2251
2256
  var doRegisterComponent = function doRegisterComponent() {
2252
2257
  return loader ? loader.registerComponent.apply(loader, arguments) : registerComponent.apply(void 0, arguments);