@trafilea/afrodita-components 4.3.1-beta.4 → 4.3.1-beta.8

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/build/index.js CHANGED
@@ -8,7 +8,26 @@ var reactDom = require('react-dom');
8
8
 
9
9
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
10
 
11
+ function _interopNamespace(e) {
12
+ if (e && e.__esModule) return e;
13
+ var n = Object.create(null);
14
+ if (e) {
15
+ Object.keys(e).forEach(function (k) {
16
+ if (k !== 'default') {
17
+ var d = Object.getOwnPropertyDescriptor(e, k);
18
+ Object.defineProperty(n, k, d.get ? d : {
19
+ enumerable: true,
20
+ get: function () { return e[k]; }
21
+ });
22
+ }
23
+ });
24
+ }
25
+ n["default"] = e;
26
+ return Object.freeze(n);
27
+ }
28
+
11
29
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
30
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
12
31
 
13
32
  /*! *****************************************************************************
14
33
  Copyright (c) Microsoft Corporation.
@@ -462,8 +481,8 @@ var Icon = {
462
481
  SlideDots: SlideDots$1,
463
482
  };
464
483
 
465
- function _extends$1() {
466
- _extends$1 = Object.assign || function (target) {
484
+ function _extends$2() {
485
+ _extends$2 = Object.assign || function (target) {
467
486
  for (var i = 1; i < arguments.length; i++) {
468
487
  var source = arguments[i];
469
488
 
@@ -477,7 +496,7 @@ function _extends$1() {
477
496
  return target;
478
497
  };
479
498
 
480
- return _extends$1.apply(this, arguments);
499
+ return _extends$2.apply(this, arguments);
481
500
  }
482
501
 
483
502
  function memoize(fn) {
@@ -2571,7 +2590,7 @@ var getTheme = function getTheme(outerTheme, theme) {
2571
2590
  throw new Error('[ThemeProvider] Please make your theme prop a plain object');
2572
2591
  }
2573
2592
 
2574
- return _extends$1({}, outerTheme, theme);
2593
+ return _extends$2({}, outerTheme, theme);
2575
2594
  };
2576
2595
 
2577
2596
  var createCacheWithTheme = /* #__PURE__ */weakMemoize(function (outerTheme) {
@@ -3250,7 +3269,7 @@ var createStyled = function createStyled(tag, options) {
3250
3269
  });
3251
3270
 
3252
3271
  Styled.withComponent = function (nextTag, nextOptions) {
3253
- return createStyled(nextTag, _extends$1({}, options, nextOptions, {
3272
+ return createStyled(nextTag, _extends$2({}, options, nextOptions, {
3254
3273
  shouldForwardProp: composeShouldForwardProps(Styled, nextOptions, true)
3255
3274
  })).apply(void 0, styles);
3256
3275
  };
@@ -3596,8 +3615,8 @@ var ButtonSecondaryOutline = function (props) {
3596
3615
  } }), void 0));
3597
3616
  };
3598
3617
 
3599
- function _extends() {
3600
- _extends = Object.assign || function (target) {
3618
+ function _extends$1() {
3619
+ _extends$1 = Object.assign || function (target) {
3601
3620
  for (var i = 1; i < arguments.length; i++) {
3602
3621
  var source = arguments[i];
3603
3622
 
@@ -3611,7 +3630,7 @@ function _extends() {
3611
3630
  return target;
3612
3631
  };
3613
3632
 
3614
- return _extends.apply(this, arguments);
3633
+ return _extends$1.apply(this, arguments);
3615
3634
  }
3616
3635
 
3617
3636
  function _objectWithoutPropertiesLoose$1(source, excluded) {
@@ -3750,7 +3769,7 @@ function render(_ref) {
3750
3769
  return match(strategy, (_match = {}, _match[RenderStrategy.Unmount] = function () {
3751
3770
  return null;
3752
3771
  }, _match[RenderStrategy.Hidden] = function () {
3753
- return _render(_extends({}, _rest, {
3772
+ return _render(_extends$1({}, _rest, {
3754
3773
  hidden: true,
3755
3774
  style: {
3756
3775
  display: 'none'
@@ -4227,12 +4246,12 @@ function Description$2(props) {
4227
4246
  }, [id, context.register]);
4228
4247
  var passThroughProps = props;
4229
4248
 
4230
- var propsWeControl = _extends({}, context.props, {
4249
+ var propsWeControl = _extends$1({}, context.props, {
4231
4250
  id: id
4232
4251
  });
4233
4252
 
4234
4253
  return render({
4235
- props: _extends({}, passThroughProps, propsWeControl),
4254
+ props: _extends$1({}, passThroughProps, propsWeControl),
4236
4255
  slot: context.slot || {},
4237
4256
  defaultTag: DEFAULT_DESCRIPTION_TAG,
4238
4257
  name: context.name || 'Description'
@@ -4311,32 +4330,32 @@ var ActionTypes$2;
4311
4330
  var reducers$2 = (_reducers$2 = {}, _reducers$2[ActionTypes$2.ToggleDisclosure] = function (state) {
4312
4331
  var _match;
4313
4332
 
4314
- return _extends({}, state, {
4333
+ return _extends$1({}, state, {
4315
4334
  disclosureState: match(state.disclosureState, (_match = {}, _match[DisclosureStates.Open] = DisclosureStates.Closed, _match[DisclosureStates.Closed] = DisclosureStates.Open, _match))
4316
4335
  });
4317
4336
  }, _reducers$2[ActionTypes$2.CloseDisclosure] = function (state) {
4318
4337
  if (state.disclosureState === DisclosureStates.Closed) return state;
4319
- return _extends({}, state, {
4338
+ return _extends$1({}, state, {
4320
4339
  disclosureState: DisclosureStates.Closed
4321
4340
  });
4322
4341
  }, _reducers$2[ActionTypes$2.LinkPanel] = function (state) {
4323
4342
  if (state.linkedPanel === true) return state;
4324
- return _extends({}, state, {
4343
+ return _extends$1({}, state, {
4325
4344
  linkedPanel: true
4326
4345
  });
4327
4346
  }, _reducers$2[ActionTypes$2.UnlinkPanel] = function (state) {
4328
4347
  if (state.linkedPanel === false) return state;
4329
- return _extends({}, state, {
4348
+ return _extends$1({}, state, {
4330
4349
  linkedPanel: false
4331
4350
  });
4332
4351
  }, _reducers$2[ActionTypes$2.SetButtonId] = function (state, action) {
4333
4352
  if (state.buttonId === action.buttonId) return state;
4334
- return _extends({}, state, {
4353
+ return _extends$1({}, state, {
4335
4354
  buttonId: action.buttonId
4336
4355
  });
4337
4356
  }, _reducers$2[ActionTypes$2.SetPanelId] = function (state, action) {
4338
4357
  if (state.panelId === action.panelId) return state;
4339
- return _extends({}, state, {
4358
+ return _extends$1({}, state, {
4340
4359
  panelId: action.panelId
4341
4360
  });
4342
4361
  }, _reducers$2);
@@ -4541,7 +4560,7 @@ var Button$7 = /*#__PURE__*/forwardRefWithAs(function Button(props, ref) {
4541
4560
  onClick: handleClick
4542
4561
  };
4543
4562
  return render({
4544
- props: _extends({}, passthroughProps, propsWeControl),
4563
+ props: _extends$1({}, passthroughProps, propsWeControl),
4545
4564
  slot: slot,
4546
4565
  defaultTag: DEFAULT_BUTTON_TAG$1,
4547
4566
  name: 'Disclosure.Button'
@@ -4606,7 +4625,7 @@ var Panel = /*#__PURE__*/forwardRefWithAs(function Panel(props, ref) {
4606
4625
  return React__default["default"].createElement(DisclosurePanelContext.Provider, {
4607
4626
  value: state.panelId
4608
4627
  }, render({
4609
- props: _extends({}, passthroughProps, propsWeControl),
4628
+ props: _extends$1({}, passthroughProps, propsWeControl),
4610
4629
  slot: slot,
4611
4630
  defaultTag: DEFAULT_PANEL_TAG,
4612
4631
  features: PanelRenderFeatures,
@@ -4809,24 +4828,24 @@ var ActionTypes$1;
4809
4828
  var reducers$1 = (_reducers$1 = {}, _reducers$1[ActionTypes$1.CloseListbox] = function (state) {
4810
4829
  if (state.disabled) return state;
4811
4830
  if (state.listboxState === ListboxStates.Closed) return state;
4812
- return _extends({}, state, {
4831
+ return _extends$1({}, state, {
4813
4832
  activeOptionIndex: null,
4814
4833
  listboxState: ListboxStates.Closed
4815
4834
  });
4816
4835
  }, _reducers$1[ActionTypes$1.OpenListbox] = function (state) {
4817
4836
  if (state.disabled) return state;
4818
4837
  if (state.listboxState === ListboxStates.Open) return state;
4819
- return _extends({}, state, {
4838
+ return _extends$1({}, state, {
4820
4839
  listboxState: ListboxStates.Open
4821
4840
  });
4822
4841
  }, _reducers$1[ActionTypes$1.SetDisabled] = function (state, action) {
4823
4842
  if (state.disabled === action.disabled) return state;
4824
- return _extends({}, state, {
4843
+ return _extends$1({}, state, {
4825
4844
  disabled: action.disabled
4826
4845
  });
4827
4846
  }, _reducers$1[ActionTypes$1.SetOrientation] = function (state, action) {
4828
4847
  if (state.orientation === action.orientation) return state;
4829
- return _extends({}, state, {
4848
+ return _extends$1({}, state, {
4830
4849
  orientation: action.orientation
4831
4850
  });
4832
4851
  }, _reducers$1[ActionTypes$1.GoToOption] = function (state, action) {
@@ -4847,7 +4866,7 @@ var reducers$1 = (_reducers$1 = {}, _reducers$1[ActionTypes$1.CloseListbox] = fu
4847
4866
  }
4848
4867
  });
4849
4868
  if (state.searchQuery === '' && state.activeOptionIndex === activeOptionIndex) return state;
4850
- return _extends({}, state, {
4869
+ return _extends$1({}, state, {
4851
4870
  searchQuery: '',
4852
4871
  activeOptionIndex: activeOptionIndex
4853
4872
  });
@@ -4860,10 +4879,10 @@ var reducers$1 = (_reducers$1 = {}, _reducers$1[ActionTypes$1.CloseListbox] = fu
4860
4879
 
4861
4880
  return !option.dataRef.current.disabled && ((_option$dataRef$curre = option.dataRef.current.textValue) == null ? void 0 : _option$dataRef$curre.startsWith(searchQuery));
4862
4881
  });
4863
- if (match === -1 || match === state.activeOptionIndex) return _extends({}, state, {
4882
+ if (match === -1 || match === state.activeOptionIndex) return _extends$1({}, state, {
4864
4883
  searchQuery: searchQuery
4865
4884
  });
4866
- return _extends({}, state, {
4885
+ return _extends$1({}, state, {
4867
4886
  searchQuery: searchQuery,
4868
4887
  activeOptionIndex: match
4869
4888
  });
@@ -4871,11 +4890,11 @@ var reducers$1 = (_reducers$1 = {}, _reducers$1[ActionTypes$1.CloseListbox] = fu
4871
4890
  if (state.disabled) return state;
4872
4891
  if (state.listboxState === ListboxStates.Closed) return state;
4873
4892
  if (state.searchQuery === '') return state;
4874
- return _extends({}, state, {
4893
+ return _extends$1({}, state, {
4875
4894
  searchQuery: ''
4876
4895
  });
4877
4896
  }, _reducers$1[ActionTypes$1.RegisterOption] = function (state, action) {
4878
- return _extends({}, state, {
4897
+ return _extends$1({}, state, {
4879
4898
  options: [].concat(state.options, [{
4880
4899
  id: action.id,
4881
4900
  dataRef: action.dataRef
@@ -4888,7 +4907,7 @@ var reducers$1 = (_reducers$1 = {}, _reducers$1[ActionTypes$1.CloseListbox] = fu
4888
4907
  return a.id === action.id;
4889
4908
  });
4890
4909
  if (idx !== -1) nextOptions.splice(idx, 1);
4891
- return _extends({}, state, {
4910
+ return _extends$1({}, state, {
4892
4911
  options: nextOptions,
4893
4912
  activeOptionIndex: function () {
4894
4913
  if (idx === state.activeOptionIndex) return null;
@@ -5109,7 +5128,7 @@ var Button$6 = /*#__PURE__*/forwardRefWithAs(function Button(props, ref) {
5109
5128
  onClick: handleClick
5110
5129
  };
5111
5130
  return render({
5112
- props: _extends({}, passthroughProps, propsWeControl),
5131
+ props: _extends$1({}, passthroughProps, propsWeControl),
5113
5132
  slot: slot,
5114
5133
  defaultTag: DEFAULT_BUTTON_TAG,
5115
5134
  name: 'Listbox.Button'
@@ -5142,7 +5161,7 @@ function Label$4(props) {
5142
5161
  onClick: handleClick
5143
5162
  };
5144
5163
  return render({
5145
- props: _extends({}, props, propsWeControl),
5164
+ props: _extends$1({}, props, propsWeControl),
5146
5165
  slot: slot,
5147
5166
  defaultTag: DEFAULT_LABEL_TAG$1,
5148
5167
  name: 'Listbox.Label'
@@ -5318,7 +5337,7 @@ var Options = /*#__PURE__*/forwardRefWithAs(function Options(props, ref) {
5318
5337
  };
5319
5338
  var passthroughProps = props;
5320
5339
  return render({
5321
- props: _extends({}, passthroughProps, propsWeControl),
5340
+ props: _extends$1({}, passthroughProps, propsWeControl),
5322
5341
  slot: slot,
5323
5342
  defaultTag: DEFAULT_OPTIONS_TAG,
5324
5343
  features: OptionsRenderFeatures,
@@ -5462,7 +5481,7 @@ function Option$2(props) {
5462
5481
  onMouseLeave: handleLeave
5463
5482
  };
5464
5483
  return render({
5465
- props: _extends({}, passthroughProps, propsWeControl),
5484
+ props: _extends$1({}, passthroughProps, propsWeControl),
5466
5485
  slot: slot,
5467
5486
  defaultTag: DEFAULT_OPTION_TAG$1,
5468
5487
  name: 'Listbox.Option'
@@ -5603,11 +5622,11 @@ function Label$3(props) {
5603
5622
  return context.register(id);
5604
5623
  }, [id, context.register]);
5605
5624
 
5606
- var propsWeControl = _extends({}, context.props, {
5625
+ var propsWeControl = _extends$1({}, context.props, {
5607
5626
  id: id
5608
5627
  });
5609
5628
 
5610
- var allProps = _extends({}, passThroughProps, propsWeControl); // @ts-expect-error props are dynamic via context, some components will
5629
+ var allProps = _extends$1({}, passThroughProps, propsWeControl); // @ts-expect-error props are dynamic via context, some components will
5611
5630
  // provide an onClick then we can delete it.
5612
5631
 
5613
5632
 
@@ -5629,7 +5648,7 @@ var ActionTypes;
5629
5648
  })(ActionTypes || (ActionTypes = {}));
5630
5649
 
5631
5650
  var reducers = (_reducers = {}, _reducers[ActionTypes.RegisterOption] = function (state, action) {
5632
- return _extends({}, state, {
5651
+ return _extends$1({}, state, {
5633
5652
  options: [].concat(state.options, [{
5634
5653
  id: action.id,
5635
5654
  element: action.element,
@@ -5643,7 +5662,7 @@ var reducers = (_reducers = {}, _reducers[ActionTypes.RegisterOption] = function
5643
5662
  });
5644
5663
  if (idx === -1) return state;
5645
5664
  options.splice(idx, 1);
5646
- return _extends({}, state, {
5665
+ return _extends$1({}, state, {
5647
5666
  options: options
5648
5667
  });
5649
5668
  }, _reducers);
@@ -5784,7 +5803,7 @@ function RadioGroup(props) {
5784
5803
  }
5785
5804
  }, [radioGroupRef, options, triggerChange]);
5786
5805
  var registerOption = React.useCallback(function (option) {
5787
- dispatch(_extends({
5806
+ dispatch(_extends$1({
5788
5807
  type: ActionTypes.RegisterOption
5789
5808
  }, option));
5790
5809
  return function () {
@@ -5819,7 +5838,7 @@ function RadioGroup(props) {
5819
5838
  }, React__default["default"].createElement(RadioGroupContext.Provider, {
5820
5839
  value: api
5821
5840
  }, render({
5822
- props: _extends({}, passThroughProps, propsWeControl),
5841
+ props: _extends$1({}, passThroughProps, propsWeControl),
5823
5842
  defaultTag: DEFAULT_RADIO_GROUP_TAG,
5824
5843
  name: 'RadioGroup'
5825
5844
  }))));
@@ -5928,7 +5947,7 @@ function Option$1(props) {
5928
5947
  }, React__default["default"].createElement(LabelProvider, {
5929
5948
  name: "RadioGroup.Label"
5930
5949
  }, render({
5931
- props: _extends({}, passThroughProps, propsWeControl),
5950
+ props: _extends$1({}, passThroughProps, propsWeControl),
5932
5951
  slot: slot,
5933
5952
  defaultTag: DEFAULT_OPTION_TAG,
5934
5953
  name: 'RadioGroup.Option'
@@ -8334,7 +8353,7 @@ function _objectWithoutProperties(source, excluded) {
8334
8353
  return target;
8335
8354
  }
8336
8355
 
8337
- var initialState$1 = {
8356
+ var initialState$2 = {
8338
8357
  animating: false,
8339
8358
  autoplaying: null,
8340
8359
  currentDirection: 0,
@@ -10018,7 +10037,7 @@ var Track = /*#__PURE__*/function (_React$PureComponent) {
10018
10037
  onMouseOver: onMouseOver,
10019
10038
  onMouseLeave: onMouseLeave
10020
10039
  };
10021
- return /*#__PURE__*/React__default["default"].createElement("div", _extends$1({
10040
+ return /*#__PURE__*/React__default["default"].createElement("div", _extends$2({
10022
10041
  ref: this.handleRef,
10023
10042
  className: "slick-track",
10024
10043
  style: this.props.trackStyle
@@ -10174,7 +10193,7 @@ var PrevArrow = /*#__PURE__*/function (_React$PureComponent) {
10174
10193
  if (this.props.prevArrow) {
10175
10194
  prevArrow = /*#__PURE__*/React__default["default"].cloneElement(this.props.prevArrow, _objectSpread2(_objectSpread2({}, prevArrowProps), customProps));
10176
10195
  } else {
10177
- prevArrow = /*#__PURE__*/React__default["default"].createElement("button", _extends$1({
10196
+ prevArrow = /*#__PURE__*/React__default["default"].createElement("button", _extends$2({
10178
10197
  key: "0",
10179
10198
  type: "button"
10180
10199
  }, prevArrowProps), " ", "Previous");
@@ -10240,7 +10259,7 @@ var NextArrow = /*#__PURE__*/function (_React$PureComponent2) {
10240
10259
  if (this.props.nextArrow) {
10241
10260
  nextArrow = /*#__PURE__*/React__default["default"].cloneElement(this.props.nextArrow, _objectSpread2(_objectSpread2({}, nextArrowProps), customProps));
10242
10261
  } else {
10243
- nextArrow = /*#__PURE__*/React__default["default"].createElement("button", _extends$1({
10262
+ nextArrow = /*#__PURE__*/React__default["default"].createElement("button", _extends$2({
10244
10263
  key: "1",
10245
10264
  type: "button"
10246
10265
  }, nextArrowProps), " ", "Next");
@@ -11943,16 +11962,16 @@ var InnerSlider = /*#__PURE__*/function (_React$Component) {
11943
11962
  };
11944
11963
  }
11945
11964
 
11946
- return /*#__PURE__*/React__default["default"].createElement("div", innerSliderProps, !_this.props.unslick ? prevArrow : "", /*#__PURE__*/React__default["default"].createElement("div", _extends$1({
11965
+ return /*#__PURE__*/React__default["default"].createElement("div", innerSliderProps, !_this.props.unslick ? prevArrow : "", /*#__PURE__*/React__default["default"].createElement("div", _extends$2({
11947
11966
  ref: _this.listRefHandler
11948
- }, listProps), /*#__PURE__*/React__default["default"].createElement(Track, _extends$1({
11967
+ }, listProps), /*#__PURE__*/React__default["default"].createElement(Track, _extends$2({
11949
11968
  ref: _this.trackRefHandler
11950
11969
  }, trackProps), _this.props.children)), !_this.props.unslick ? nextArrow : "", !_this.props.unslick ? dots : "");
11951
11970
  });
11952
11971
 
11953
11972
  _this.list = null;
11954
11973
  _this.track = null;
11955
- _this.state = _objectSpread2(_objectSpread2({}, initialState$1), {}, {
11974
+ _this.state = _objectSpread2(_objectSpread2({}, initialState$2), {}, {
11956
11975
  currentSlide: _this.props.initialSlide,
11957
11976
  slideCount: React__default["default"].Children.count(_this.props.children)
11958
11977
  });
@@ -12059,7 +12078,7 @@ var json2mq = function (query) {
12059
12078
 
12060
12079
  var json2mq_1 = json2mq;
12061
12080
 
12062
- var defaultProps = {
12081
+ var defaultProps$1 = {
12063
12082
  accessibility: true,
12064
12083
  adaptiveHeight: false,
12065
12084
  afterChange: null,
@@ -12260,9 +12279,9 @@ var Slider = /*#__PURE__*/function (_React$Component) {
12260
12279
  newProps = this.props.responsive.filter(function (resp) {
12261
12280
  return resp.breakpoint === _this3.state.breakpoint;
12262
12281
  });
12263
- settings = newProps[0].settings === "unslick" ? "unslick" : _objectSpread2(_objectSpread2(_objectSpread2({}, defaultProps), this.props), newProps[0].settings);
12282
+ settings = newProps[0].settings === "unslick" ? "unslick" : _objectSpread2(_objectSpread2(_objectSpread2({}, defaultProps$1), this.props), newProps[0].settings);
12264
12283
  } else {
12265
- settings = _objectSpread2(_objectSpread2({}, defaultProps), this.props);
12284
+ settings = _objectSpread2(_objectSpread2({}, defaultProps$1), this.props);
12266
12285
  } // force scrolling by one if centerMode is on
12267
12286
 
12268
12287
 
@@ -12358,7 +12377,7 @@ var Slider = /*#__PURE__*/function (_React$Component) {
12358
12377
  settings.unslick = true;
12359
12378
  }
12360
12379
 
12361
- return /*#__PURE__*/React__default["default"].createElement(InnerSlider, _extends$1({
12380
+ return /*#__PURE__*/React__default["default"].createElement(InnerSlider, _extends$2({
12362
12381
  style: this.props.style,
12363
12382
  ref: this.innerSliderRefHandler
12364
12383
  }, settings), newChildren);
@@ -12854,6 +12873,8 @@ var useWindowDimensions = function (breakpoints) {
12854
12873
  function handleResize() {
12855
12874
  setWindowDimensions(getWindowDimensions());
12856
12875
  }
12876
+ // calling it here updates the dimensions on first render
12877
+ handleResize();
12857
12878
  window.addEventListener('resize', handleResize);
12858
12879
  return function () { return window.removeEventListener('resize', handleResize); };
12859
12880
  }, []);
@@ -12890,7 +12911,7 @@ var SearchControl = function (_a) {
12890
12911
  }
12891
12912
  };
12892
12913
 
12893
- var initialState = { selectedOption: undefined, open: false, term: '' };
12914
+ var initialState$1 = { selectedOption: undefined, open: false, term: '' };
12894
12915
  var reducer = function (state, action) {
12895
12916
  switch (action.type) {
12896
12917
  case 'UPDATE_TERM': {
@@ -12914,7 +12935,7 @@ var Container$6 = newStyled.div({
12914
12935
  var SearchBar = function (_a) {
12915
12936
  var suggestions = _a.suggestions, resultOptions = _a.resultOptions, onChange = _a.onChange, onSearch = _a.onSearch, resultsPanelDataTestId = _a.resultsPanelDataTestId;
12916
12937
  var theme = useTheme();
12917
- var _b = React.useReducer(reducer, initialState), state = _b[0], dispatch = _b[1];
12938
+ var _b = React.useReducer(reducer, initialState$1), state = _b[0], dispatch = _b[1];
12918
12939
  var ref = React.useRef(null);
12919
12940
  useOnClickOutside(ref, function () { return dispatch({ type: 'TOGGLE_PANEL', payload: { open: false } }); });
12920
12941
  React.useEffect(function () {
@@ -12931,13 +12952,278 @@ var SearchBar = function (_a) {
12931
12952
  }, onViewAll: function () { return onSearch(state.term); } }, void 0))] }), void 0));
12932
12953
  };
12933
12954
 
12955
+ function _extends() {
12956
+ _extends = Object.assign || function (target) {
12957
+ for (var i = 1; i < arguments.length; i++) {
12958
+ var source = arguments[i];
12959
+
12960
+ for (var key in source) {
12961
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
12962
+ target[key] = source[key];
12963
+ }
12964
+ }
12965
+ }
12966
+
12967
+ return target;
12968
+ };
12969
+
12970
+ return _extends.apply(this, arguments);
12971
+ }
12972
+
12973
+ var LEFT = "Left";
12974
+ var RIGHT = "Right";
12975
+ var UP = "Up";
12976
+ var DOWN = "Down";
12977
+
12978
+ var defaultProps = {
12979
+ delta: 10,
12980
+ preventDefaultTouchmoveEvent: false,
12981
+ rotationAngle: 0,
12982
+ trackMouse: false,
12983
+ trackTouch: true
12984
+ };
12985
+ var initialState = {
12986
+ first: true,
12987
+ initial: [0, 0],
12988
+ start: 0,
12989
+ swiping: false,
12990
+ xy: [0, 0]
12991
+ };
12992
+ var mouseMove = "mousemove";
12993
+ var mouseUp = "mouseup";
12994
+ var touchEnd = "touchend";
12995
+ var touchMove = "touchmove";
12996
+ var touchStart = "touchstart";
12997
+
12998
+ function getDirection(absX, absY, deltaX, deltaY) {
12999
+ if (absX > absY) {
13000
+ if (deltaX > 0) {
13001
+ return RIGHT;
13002
+ }
13003
+
13004
+ return LEFT;
13005
+ } else if (deltaY > 0) {
13006
+ return DOWN;
13007
+ }
13008
+
13009
+ return UP;
13010
+ }
13011
+
13012
+ function rotateXYByAngle(pos, angle) {
13013
+ if (angle === 0) return pos;
13014
+ var angleInRadians = Math.PI / 180 * angle;
13015
+ var x = pos[0] * Math.cos(angleInRadians) + pos[1] * Math.sin(angleInRadians);
13016
+ var y = pos[1] * Math.cos(angleInRadians) - pos[0] * Math.sin(angleInRadians);
13017
+ return [x, y];
13018
+ }
13019
+
13020
+ function getHandlers(set, handlerProps) {
13021
+ var onStart = function onStart(event) {
13022
+ if (event && "touches" in event && event.touches.length > 1) return;
13023
+ set(function (state, props) {
13024
+ if (props.trackMouse) {
13025
+ document.addEventListener(mouseMove, onMove);
13026
+ document.addEventListener(mouseUp, onUp);
13027
+ }
13028
+
13029
+ var _ref = "touches" in event ? event.touches[0] : event,
13030
+ clientX = _ref.clientX,
13031
+ clientY = _ref.clientY;
13032
+
13033
+ var xy = rotateXYByAngle([clientX, clientY], props.rotationAngle);
13034
+ return _extends({}, state, initialState, {
13035
+ initial: [].concat(xy),
13036
+ xy: xy,
13037
+ start: event.timeStamp || 0
13038
+ });
13039
+ });
13040
+ };
13041
+
13042
+ var onMove = function onMove(event) {
13043
+ set(function (state, props) {
13044
+ if ("touches" in event && event.touches.length > 1) {
13045
+ return state;
13046
+ }
13047
+
13048
+ var _ref2 = "touches" in event ? event.touches[0] : event,
13049
+ clientX = _ref2.clientX,
13050
+ clientY = _ref2.clientY;
13051
+
13052
+ var _rotateXYByAngle = rotateXYByAngle([clientX, clientY], props.rotationAngle),
13053
+ x = _rotateXYByAngle[0],
13054
+ y = _rotateXYByAngle[1];
13055
+
13056
+ var deltaX = x - state.xy[0];
13057
+ var deltaY = y - state.xy[1];
13058
+ var absX = Math.abs(deltaX);
13059
+ var absY = Math.abs(deltaY);
13060
+ var time = (event.timeStamp || 0) - state.start;
13061
+ var velocity = Math.sqrt(absX * absX + absY * absY) / (time || 1);
13062
+ var vxvy = [deltaX / (time || 1), deltaY / (time || 1)];
13063
+ var dir = getDirection(absX, absY, deltaX, deltaY);
13064
+ var delta = typeof props.delta === "number" ? props.delta : props.delta[dir.toLowerCase()] || defaultProps.delta;
13065
+ if (absX < delta && absY < delta && !state.swiping) return state;
13066
+ var eventData = {
13067
+ absX: absX,
13068
+ absY: absY,
13069
+ deltaX: deltaX,
13070
+ deltaY: deltaY,
13071
+ dir: dir,
13072
+ event: event,
13073
+ first: state.first,
13074
+ initial: state.initial,
13075
+ velocity: velocity,
13076
+ vxvy: vxvy
13077
+ };
13078
+ eventData.first && props.onSwipeStart && props.onSwipeStart(eventData);
13079
+ props.onSwiping && props.onSwiping(eventData);
13080
+ var cancelablePageSwipe = false;
13081
+
13082
+ if (props.onSwiping || props.onSwiped || "onSwiped" + dir in props) {
13083
+ cancelablePageSwipe = true;
13084
+ }
13085
+
13086
+ if (cancelablePageSwipe && props.preventDefaultTouchmoveEvent && props.trackTouch && event.cancelable) event.preventDefault();
13087
+ return _extends({}, state, {
13088
+ first: false,
13089
+ eventData: eventData,
13090
+ swiping: true
13091
+ });
13092
+ });
13093
+ };
13094
+
13095
+ var onEnd = function onEnd(event) {
13096
+ set(function (state, props) {
13097
+ var eventData;
13098
+
13099
+ if (state.swiping && state.eventData) {
13100
+ eventData = _extends({}, state.eventData, {
13101
+ event: event
13102
+ });
13103
+ props.onSwiped && props.onSwiped(eventData);
13104
+ var onSwipedDir = props["onSwiped" + eventData.dir];
13105
+ onSwipedDir && onSwipedDir(eventData);
13106
+ } else {
13107
+ props.onTap && props.onTap({
13108
+ event: event
13109
+ });
13110
+ }
13111
+
13112
+ return _extends({}, state, initialState, {
13113
+ eventData: eventData
13114
+ });
13115
+ });
13116
+ };
13117
+
13118
+ var cleanUpMouse = function cleanUpMouse() {
13119
+ document.removeEventListener(mouseMove, onMove);
13120
+ document.removeEventListener(mouseUp, onUp);
13121
+ };
13122
+
13123
+ var onUp = function onUp(e) {
13124
+ cleanUpMouse();
13125
+ onEnd(e);
13126
+ };
13127
+
13128
+ var attachTouch = function attachTouch(el, passive) {
13129
+ var cleanup = function cleanup() {};
13130
+
13131
+ if (el && el.addEventListener) {
13132
+ var tls = [[touchStart, onStart], [touchMove, onMove], [touchEnd, onEnd]];
13133
+ tls.forEach(function (_ref3) {
13134
+ var e = _ref3[0],
13135
+ h = _ref3[1];
13136
+ return el.addEventListener(e, h, {
13137
+ passive: passive
13138
+ });
13139
+ });
13140
+
13141
+ cleanup = function cleanup() {
13142
+ return tls.forEach(function (_ref4) {
13143
+ var e = _ref4[0],
13144
+ h = _ref4[1];
13145
+ return el.removeEventListener(e, h);
13146
+ });
13147
+ };
13148
+ }
13149
+
13150
+ return cleanup;
13151
+ };
13152
+
13153
+ var onRef = function onRef(el) {
13154
+ if (el === null) return;
13155
+ set(function (state, props) {
13156
+ if (state.el === el) return state;
13157
+ var addState = {};
13158
+
13159
+ if (state.el && state.el !== el && state.cleanUpTouch) {
13160
+ state.cleanUpTouch();
13161
+ addState.cleanUpTouch = undefined;
13162
+ }
13163
+
13164
+ if (props.trackTouch && el) {
13165
+ addState.cleanUpTouch = attachTouch(el, !props.preventDefaultTouchmoveEvent);
13166
+ }
13167
+
13168
+ return _extends({}, state, {
13169
+ el: el
13170
+ }, addState);
13171
+ });
13172
+ };
13173
+
13174
+ var output = {
13175
+ ref: onRef
13176
+ };
13177
+
13178
+ if (handlerProps.trackMouse) {
13179
+ output.onMouseDown = onStart;
13180
+ }
13181
+
13182
+ return [output, attachTouch];
13183
+ }
13184
+
13185
+ function updateTransientState(state, props, attachTouch) {
13186
+ var addState = {};
13187
+
13188
+ if (!props.trackTouch && state.cleanUpTouch) {
13189
+ state.cleanUpTouch();
13190
+ addState.cleanUpTouch = undefined;
13191
+ } else if (props.trackTouch && !state.cleanUpTouch) {
13192
+ if (state.el) {
13193
+ addState.cleanUpTouch = attachTouch(state.el, !props.preventDefaultTouchmoveEvent);
13194
+ }
13195
+ }
13196
+
13197
+ return _extends({}, state, addState);
13198
+ }
13199
+
13200
+ function useSwipeable(options) {
13201
+ var trackMouse = options.trackMouse;
13202
+ var transientState = React__namespace.useRef(_extends({}, initialState));
13203
+ var transientProps = React__namespace.useRef(_extends({}, defaultProps));
13204
+ transientProps.current = _extends({}, defaultProps, options);
13205
+
13206
+ var _React$useMemo = React__namespace.useMemo(function () {
13207
+ return getHandlers(function (stateSetter) {
13208
+ return transientState.current = stateSetter(transientState.current, transientProps.current);
13209
+ }, {
13210
+ trackMouse: trackMouse
13211
+ });
13212
+ }, [trackMouse]),
13213
+ handlers = _React$useMemo[0],
13214
+ attachTouch = _React$useMemo[1];
13215
+
13216
+ transientState.current = updateTransientState(transientState.current, transientProps.current, attachTouch);
13217
+ return handlers;
13218
+ }
13219
+
12934
13220
  var Container$5 = newStyled.div(templateObject_1$a || (templateObject_1$a = __makeTemplateObject(["\n position: relative;\n max-height: 31.875rem;\n"], ["\n position: relative;\n max-height: 31.875rem;\n"])));
12935
13221
  var TopTagContainer = newStyled.div(templateObject_2$3 || (templateObject_2$3 = __makeTemplateObject(["\n position: absolute;\n left: 0;\n top: 0;\n"], ["\n position: absolute;\n left: 0;\n top: 0;\n"])));
12936
13222
  var BottomTagContainer = newStyled.div(templateObject_3$3 || (templateObject_3$3 = __makeTemplateObject(["\n position: absolute;\n bottom: 3.75rem;\n left: 0;\n"], ["\n position: absolute;\n bottom: 3.75rem;\n left: 0;\n"])));
12937
- var ImageProductWithTags = function (_a) {
13223
+ var ImageProductWithTags = React.forwardRef(function ImageProductWithTags(_a, ref) {
12938
13224
  var image = _a.image, DiscountTagElement = _a.DiscountTagElement, BestSellerTagElement = _a.BestSellerTagElement, testId = _a.testId;
12939
- return (jsxRuntime.jsxs(Container$5, __assign({ "data-testid": testId }, { children: [jsxRuntime.jsx(Image, { src: image.imageUrl, alt: image.alt, objectFit: "cover", objectPosition: "center top", width: "100%", height: "510px" }, void 0), jsxRuntime.jsx(TopTagContainer, { children: DiscountTagElement }, void 0), jsxRuntime.jsx(BottomTagContainer, { children: BestSellerTagElement }, void 0)] }), void 0));
12940
- };
13225
+ return (jsxRuntime.jsxs(Container$5, __assign({ "data-testid": testId, ref: ref }, { children: [jsxRuntime.jsx(Image, { src: image.imageUrl, alt: image.alt, objectFit: "cover", objectPosition: "center top", width: "100%", height: "510px" }, void 0), jsxRuntime.jsx(TopTagContainer, { children: DiscountTagElement }, void 0), jsxRuntime.jsx(BottomTagContainer, { children: BestSellerTagElement }, void 0)] }), void 0));
13226
+ });
12941
13227
  var templateObject_1$a, templateObject_2$3, templateObject_3$3;
12942
13228
 
12943
13229
  var Button = newStyled.button(templateObject_1$9 || (templateObject_1$9 = __makeTemplateObject(["\n background: transparent;\n border: none;\n padding: 0.188rem 0.625rem;\n"], ["\n background: transparent;\n border: none;\n padding: 0.188rem 0.625rem;\n"])));
@@ -12977,12 +13263,32 @@ var templateObject_1$7, templateObject_2$2, templateObject_3$2;
12977
13263
  var Container$3 = newStyled.div(templateObject_1$6 || (templateObject_1$6 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n height: fit-content;\n position: relative;\n max-width: 450px;\n"], ["\n display: flex;\n flex-direction: column;\n height: fit-content;\n position: relative;\n max-width: 450px;\n"])));
12978
13264
  var ProductGalleryMobile = function (_a) {
12979
13265
  var images = _a.images, selectedValue = _a.selectedValue, DiscountTagElement = _a.DiscountTagElement, BestSellerTagElement = _a.BestSellerTagElement, productImageDataTestId = _a.productImageDataTestId, slideDotsDataTestId = _a.slideDotsDataTestId;
12980
- var initialValue = selectedValue && images.includes(selectedValue) ? selectedValue : images[0];
12981
- var _b = React.useState(initialValue), selectedImage = _b[0], setSelectedImage = _b[1];
13266
+ var _b = React.useState(0), index = _b[0], setIndex = _b[1];
12982
13267
  React.useEffect(function () {
12983
- setSelectedImage(initialValue);
12984
- }, [initialValue]);
12985
- return (jsxRuntime.jsxs(Container$3, { children: [jsxRuntime.jsx(ImageProductWithTags, { image: selectedImage, DiscountTagElement: DiscountTagElement, BestSellerTagElement: BestSellerTagElement, testId: productImageDataTestId }, void 0), jsxRuntime.jsx(SlideNavigation, { quantity: images.length, selectedIndex: images.indexOf(selectedImage), onNavigate: function (index) { return setSelectedImage(images[index]); }, testId: slideDotsDataTestId }, void 0)] }, void 0));
13268
+ if (selectedValue == null) {
13269
+ return;
13270
+ }
13271
+ setIndex(Math.max(0, images.indexOf(selectedValue)));
13272
+ }, [selectedValue, images]);
13273
+ var _c = React.useState(function () { return images[index]; }), selectedImage = _c[0], setSelectedImage = _c[1];
13274
+ var handlers = useSwipeable({
13275
+ onSwiped: React.useCallback(function (_a) {
13276
+ var dir = _a.dir;
13277
+ setIndex(function (index) {
13278
+ if (dir === 'Left') {
13279
+ return Math.min(index + 1, images.length - 1);
13280
+ }
13281
+ if (dir === 'Right') {
13282
+ return Math.max(index - 1, 0);
13283
+ }
13284
+ return index;
13285
+ });
13286
+ }, [images.length]),
13287
+ });
13288
+ React.useEffect(function () {
13289
+ setSelectedImage(images[index]);
13290
+ }, [index, images]);
13291
+ return (jsxRuntime.jsxs(Container$3, { children: [jsxRuntime.jsx(ImageProductWithTags, __assign({}, handlers, { image: selectedImage, DiscountTagElement: DiscountTagElement, BestSellerTagElement: BestSellerTagElement, testId: productImageDataTestId }), void 0), jsxRuntime.jsx(SlideNavigation, { quantity: images.length, selectedIndex: images.indexOf(selectedImage), onNavigate: setIndex, testId: slideDotsDataTestId }, void 0)] }, void 0));
12986
13292
  };
12987
13293
  var templateObject_1$6;
12988
13294