@shoplflow/base 0.11.4 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -537,11 +537,7 @@ function _templateObject34() {
537
537
  }
538
538
  function _templateObject35() {
539
539
  var data = _tagged_template_literal([
540
- "\n display: flex;\n align-items: center;\n justify-content: center;\n gap: ",
541
- ";\n border-radius: ",
542
- ";\n padding: 0px ",
543
- ";\n border-radius: ",
544
- ";\n cursor: pointer;\n ",
540
+ "\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 4px;\n padding: 0 12px;\n border-radius: 6px;\n cursor: pointer;\n ",
545
541
  ";\n ",
546
542
  ";\n ",
547
543
  ";\n"
@@ -553,7 +549,7 @@ function _templateObject35() {
553
549
  }
554
550
  function _templateObject36() {
555
551
  var data = _tagged_template_literal([
556
- "\n width: 40px;\n height: 40px;\n "
552
+ "\n width: 40px;\n min-width: 40px;\n height: 40px;\n min-height: 40px;\n "
557
553
  ]);
558
554
  _templateObject36 = function _templateObject() {
559
555
  return data;
@@ -562,7 +558,7 @@ function _templateObject36() {
562
558
  }
563
559
  function _templateObject37() {
564
560
  var data = _tagged_template_literal([
565
- "\n width: 32px;\n height: 32px;\n "
561
+ "\n width: 32px;\n min-width: 32px;\n height: 32px;\n min-height: 32px;\n "
566
562
  ]);
567
563
  _templateObject37 = function _templateObject() {
568
564
  return data;
@@ -571,7 +567,7 @@ function _templateObject37() {
571
567
  }
572
568
  function _templateObject38() {
573
569
  var data = _tagged_template_literal([
574
- "\n width: 40px;\n height: 40px;\n "
570
+ "\n width: 40px;\n min-width: 40px;\n height: 40px;\n min-height: 40px;\n "
575
571
  ]);
576
572
  _templateObject38 = function _templateObject() {
577
573
  return data;
@@ -580,8 +576,9 @@ function _templateObject38() {
580
576
  }
581
577
  function _templateObject39() {
582
578
  var data = _tagged_template_literal([
583
- "\n border: 1px solid ",
584
- ";\n "
579
+ "\n border: 1px solid ",
580
+ ";\n &:hover {\n background-color: ",
581
+ ";\n }\n "
585
582
  ]);
586
583
  _templateObject39 = function _templateObject() {
587
584
  return data;
@@ -590,8 +587,8 @@ function _templateObject39() {
590
587
  }
591
588
  function _templateObject40() {
592
589
  var data = _tagged_template_literal([
593
- "\n border: 1px solid ",
594
- ";\n "
590
+ "\n border: 1px solid transparent;\n &:hover {\n background-color: ",
591
+ ";\n }\n "
595
592
  ]);
596
593
  _templateObject40 = function _templateObject() {
597
594
  return data;
@@ -599,71 +596,233 @@ function _templateObject40() {
599
596
  return data;
600
597
  }
601
598
  function _templateObject41() {
599
+ var data = _tagged_template_literal([
600
+ "\n border: 1px solid ",
601
+ ";\n &:hover {\n background-color: ",
602
+ ";\n }\n "
603
+ ]);
604
+ _templateObject41 = function _templateObject() {
605
+ return data;
606
+ };
607
+ return data;
608
+ }
609
+ function _templateObject42() {
602
610
  var data = _tagged_template_literal([
603
611
  "\n display: flex;\n flex-shrink: 0;\n border-radius: ",
604
612
  ";\n justify-content: center;\n align-items: center;\n background-color: ",
613
+ ";\n cursor: pointer;\n ",
605
614
  ";\n ",
606
615
  ";\n ",
616
+ ";\n & > svg {\n width: 20px;\n height: 20px;\n }\n"
617
+ ]);
618
+ _templateObject42 = function _templateObject() {
619
+ return data;
620
+ };
621
+ return data;
622
+ }
623
+ function _templateObject43() {
624
+ var data = _tagged_template_literal([
625
+ "\n background: ",
626
+ ";\n & > span {\n color: ",
627
+ ";\n }\n & > svg > path {\n fill: ",
628
+ ";\n }\n"
629
+ ]);
630
+ _templateObject43 = function _templateObject() {
631
+ return data;
632
+ };
633
+ return data;
634
+ }
635
+ function _templateObject44() {
636
+ var data = _tagged_template_literal([
637
+ "\n background: ",
638
+ ";\n & > span {\n align-self: center;\n color: ",
639
+ ";\n }\n & > svg > path {\n fill: ",
640
+ ";\n }\n"
641
+ ]);
642
+ _templateObject44 = function _templateObject() {
643
+ return data;
644
+ };
645
+ return data;
646
+ }
647
+ function _templateObject45() {
648
+ var data = _tagged_template_literal([
649
+ "\n display: flex;\n justify-content: flex-start;\n align-items: start;\n padding: 6px 8px;\n gap: 4px;\n border-radius: ",
607
650
  ";\n ",
608
- ";\n ",
609
- ";\n cursor: pointer;\n &:hover {\n background-color: ",
651
+ "\n ",
652
+ "\n"
653
+ ]);
654
+ _templateObject45 = function _templateObject() {
655
+ return data;
656
+ };
657
+ return data;
658
+ }
659
+ function _templateObject46() {
660
+ var data = _tagged_template_literal([
661
+ "\n display: flex;\n min-height: 20px;\n min-width: 20px;\n"
662
+ ]);
663
+ _templateObject46 = function _templateObject() {
664
+ return data;
665
+ };
666
+ return data;
667
+ }
668
+ function _templateObject47() {
669
+ var data = _tagged_template_literal([
670
+ "\n padding: 2px 0;\n"
671
+ ]);
672
+ _templateObject47 = function _templateObject() {
673
+ return data;
674
+ };
675
+ return data;
676
+ }
677
+ function _templateObject48() {
678
+ var data = _tagged_template_literal([
679
+ "\n width: ",
680
+ ";\n min-width: ",
681
+ ";\n height: ",
682
+ ";\n min-height: ",
683
+ ";\n\n & > path {\n fill: ",
610
684
  ";\n }\n"
611
685
  ]);
612
- _templateObject41 = function _templateObject() {
686
+ _templateObject48 = function _templateObject() {
613
687
  return data;
614
688
  };
615
689
  return data;
616
690
  }
617
- function _templateObject42() {
691
+ function _templateObject49() {
692
+ var data = _tagged_template_literal([
693
+ "\n padding: 4px 8px 4px 12px;\n background-color: transparent;\n width: 100%;\n border: none;\n box-sizing: border-box;\n &::placeholder {\n color: ",
694
+ ";\n }\n"
695
+ ]);
696
+ _templateObject49 = function _templateObject() {
697
+ return data;
698
+ };
699
+ return data;
700
+ }
701
+ function _templateObject50() {
702
+ var data = _tagged_template_literal([
703
+ "\n display: flex;\n flex-direction: row;\n align-items: center;\n"
704
+ ]);
705
+ _templateObject50 = function _templateObject() {
706
+ return data;
707
+ };
708
+ return data;
709
+ }
710
+ function _templateObject51() {
711
+ var data = _tagged_template_literal([
712
+ "\n display: flex;\n width: 100%;\n justify-content: flex-end;\n align-items: center;\n gap: 2px;\n"
713
+ ]);
714
+ _templateObject51 = function _templateObject() {
715
+ return data;
716
+ };
717
+ return data;
718
+ }
719
+ function _templateObject52() {
720
+ var data = _tagged_template_literal([
721
+ "\n display: flex;\n align-items: center;\n width: 100%;\n flex-direction: ",
722
+ ";\n justify-content: space-between;\n min-height: 40px;\n margin: 1px;\n gap: 8px;\n box-shadow: 0 0 0 1px ",
723
+ ";\n border-radius: 6px;\n background-color: ",
724
+ ";\n overflow: hidden;\n ",
725
+ ";\n"
726
+ ]);
727
+ _templateObject52 = function _templateObject() {
728
+ return data;
729
+ };
730
+ return data;
731
+ }
732
+ function _templateObject53() {
733
+ var data = _tagged_template_literal([
734
+ "\n display: flex;\n width: 100%;\n flex-direction: row;\n padding: 8px 12px;\n gap: 8px;\n background-color: ",
735
+ ";\n"
736
+ ]);
737
+ _templateObject53 = function _templateObject() {
738
+ return data;
739
+ };
740
+ return data;
741
+ }
742
+ function _templateObject54() {
743
+ var data = _tagged_template_literal([
744
+ "\n padding: 8px 12px 0 12px;\n background-color: transparent;\n resize: none;\n width: 100%;\n height: ",
745
+ ";\n flex: 1;\n word-break: break-all;\n ",
746
+ ";\n &::placeholder {\n color: ",
747
+ ";\n }\n"
748
+ ]);
749
+ _templateObject54 = function _templateObject() {
750
+ return data;
751
+ };
752
+ return data;
753
+ }
754
+ function _templateObject55() {
618
755
  var data = _tagged_template_literal([
619
756
  "\n width: 32px;\n height: 32px;\n padding: 7px;\n"
620
757
  ]);
621
- _templateObject42 = function _templateObject() {
758
+ _templateObject55 = function _templateObject() {
622
759
  return data;
623
760
  };
624
761
  return data;
625
762
  }
626
- function _templateObject43() {
763
+ function _templateObject56() {
627
764
  var data = _tagged_template_literal([
628
765
  "\n display: flex;\n width: 16px;\n height: 16px;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n border-radius: ",
629
766
  ";\n border: none;\n background: ",
630
767
  ";\n cursor: pointer;\n transition:\n transform 0.1s ease-out,\n background 0.1s ease;\n\n &:hover {\n background: ",
631
768
  ";\n }\n"
632
769
  ]);
633
- _templateObject43 = function _templateObject() {
770
+ _templateObject56 = function _templateObject() {
634
771
  return data;
635
772
  };
636
773
  return data;
637
774
  }
638
- var React2 = require("react");
639
- var zustand = require("zustand");
640
- var utils = require("@shoplflow/utils");
775
+ var React3 = require("react");
641
776
  var styled5 = require("@emotion/styled");
642
777
  var framerMotion = require("framer-motion");
643
778
  var jsxRuntime = require("react/jsx-runtime");
644
779
  var reactDom = require("react-dom");
780
+ var utils = require("@shoplflow/utils");
645
781
  var react = require("@emotion/react");
646
782
  var Scrollbars = require("react-custom-scrollbars-2");
783
+ var ShoplAssets = require("@shoplflow/shopl-assets");
784
+ var HadaAssets = require("@shoplflow/hada-assets");
647
785
  function _interopDefault(e) {
648
786
  return e && e.__esModule ? e : {
649
787
  default: e
650
788
  };
651
789
  }
652
- var React2__default = /*#__PURE__*/ _interopDefault(React2);
790
+ function _interopNamespace(e) {
791
+ if (e && e.__esModule) return e;
792
+ var n = Object.create(null);
793
+ if (e) {
794
+ Object.keys(e).forEach(function(k) {
795
+ if (k !== "default") {
796
+ var d = Object.getOwnPropertyDescriptor(e, k);
797
+ Object.defineProperty(n, k, d.get ? d : {
798
+ enumerable: true,
799
+ get: function get() {
800
+ return e[k];
801
+ }
802
+ });
803
+ }
804
+ });
805
+ }
806
+ n.default = e;
807
+ return Object.freeze(n);
808
+ }
809
+ var React3__default = /*#__PURE__*/ _interopDefault(React3);
653
810
  var styled5__default = /*#__PURE__*/ _interopDefault(styled5);
654
811
  var Scrollbars__default = /*#__PURE__*/ _interopDefault(Scrollbars);
812
+ var ShoplAssets__namespace = /*#__PURE__*/ _interopNamespace(ShoplAssets);
813
+ var HadaAssets__namespace = /*#__PURE__*/ _interopNamespace(HadaAssets);
655
814
  // src/hooks/useDomain.ts
656
- exports.useDomain = function(param) {
657
- var _param_domain = param.domain, domain = _param_domain === void 0 ? "SHOPL" : _param_domain;
658
- var _React2_useState = _sliced_to_array(React2.useState(void 0), 2), domainType = _React2_useState[0], setDomainType = _React2_useState[1];
659
- React2.useEffect(function() {
815
+ exports.useDomain = function() {
816
+ var domain = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "SHOPL";
817
+ var _React3_useState = _sliced_to_array(React3.useState(void 0), 2), domainType = _React3_useState[0], setDomainType = _React3_useState[1];
818
+ React3.useEffect(function() {
660
819
  if (domain) {
661
820
  setDomainType(domain);
662
821
  }
663
822
  }, [
664
823
  domain
665
824
  ]);
666
- React2.useEffect(function() {
825
+ React3.useEffect(function() {
667
826
  if (!domainType) {
668
827
  return;
669
828
  }
@@ -671,94 +830,13 @@ exports.useDomain = function(param) {
671
830
  }, [
672
831
  domainType
673
832
  ]);
833
+ return [
834
+ domainType
835
+ ];
674
836
  };
675
837
  exports.getDomain = function() {
676
838
  return document.documentElement.dataset.shoplflow;
677
839
  };
678
- exports.useModalStore = zustand.create(function(set) {
679
- return {
680
- modal: [],
681
- addModal: function(modal, id) {
682
- return set(function(state) {
683
- return {
684
- modal: _to_consumable_array(state.modal).concat([
685
- {
686
- component: modal,
687
- id: id
688
- }
689
- ])
690
- };
691
- });
692
- },
693
- removeModal: function(props) {
694
- var _ref = props || {
695
- id: void 0,
696
- deps: void 0
697
- }, id = _ref.id, deps = _ref.deps;
698
- var isIncludeAllProps = Boolean(id && deps);
699
- var isIncludeId = Boolean(id);
700
- var isNotIncludeAllProps = !id && Boolean(utils.isNullOrUndefined(deps));
701
- var isIncludeDeps = Boolean(Boolean(!utils.isNullOrUndefined(deps)) && !id);
702
- if (isIncludeAllProps) {
703
- throw new Error("id와 deps는 동시에 사용할 수 없습니다.");
704
- }
705
- if (isIncludeId) {
706
- set(function(state) {
707
- var filterModal = state.modal.filter(function(modal) {
708
- return modal.id !== id;
709
- });
710
- return {
711
- modal: _to_consumable_array(filterModal)
712
- };
713
- });
714
- return;
715
- }
716
- if (isNotIncludeAllProps || deps === 1) {
717
- set(function(state) {
718
- var removeModal = state.modal.slice(0, -1);
719
- return {
720
- modal: _to_consumable_array(removeModal)
721
- };
722
- });
723
- return;
724
- }
725
- if (isIncludeDeps) {
726
- if (deps === 0 || deps === void 0) {
727
- return;
728
- }
729
- set(function(state) {
730
- var removeDeps = state.modal.slice(0, -deps);
731
- return {
732
- modal: _to_consumable_array(removeDeps)
733
- };
734
- });
735
- return;
736
- }
737
- }
738
- };
739
- });
740
- // src/hooks/useHandleModal.ts
741
- exports.useHandleModal = function() {
742
- var addModal = exports.useModalStore(function(state) {
743
- return state.addModal;
744
- });
745
- var removeModal = exports.useModalStore(function(state) {
746
- return state.removeModal;
747
- });
748
- return {
749
- addModal: addModal,
750
- removeModal: removeModal
751
- };
752
- };
753
- // src/hooks/useModalValue.ts
754
- exports.useModalValue = function() {
755
- var modal = exports.useModalStore(function(state) {
756
- return state.modal;
757
- });
758
- return {
759
- modal: modal
760
- };
761
- };
762
840
  // src/animation/fadeInOut.ts
763
841
  var fadeInOut = {
764
842
  initial: {
@@ -785,15 +863,19 @@ var BackDrop = function(param) {
785
863
  initial: "initial",
786
864
  animate: "animate",
787
865
  exit: "exit",
866
+ "data-shoplflow": "BackDrop",
788
867
  children: children
789
868
  });
790
869
  };
791
870
  var BackDrop_default = BackDrop;
871
+ var ModalHandlerContext = React3.createContext({
872
+ addModal: utils.noop,
873
+ removeModal: utils.noop
874
+ });
875
+ var ModalContext = React3.createContext([]);
792
876
  var SpaceMarginWrapper = styled5__default.default(framerMotion.motion.div)(_templateObject1());
793
877
  var ModalPortal = function() {
794
- var modal = exports.useModalStore(function(state) {
795
- return state.modal;
796
- });
878
+ var modal = React3.useContext(ModalContext);
797
879
  return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, {
798
880
  children: reactDom.createPortal(/* @__PURE__ */ jsxRuntime.jsx(framerMotion.AnimatePresence, {
799
881
  children: modal.map(function(item, index) {
@@ -807,12 +889,85 @@ var ModalPortal = function() {
807
889
  });
808
890
  };
809
891
  exports.ModalProvider = ModalPortal;
892
+ var ModalProvider = function(param) {
893
+ var children = param.children;
894
+ var _React3_useState = _sliced_to_array(React3.useState([]), 2), openedModals = _React3_useState[0], setOpenedModals = _React3_useState[1];
895
+ var addModal = function(component, id) {
896
+ setOpenedModals(function(modals) {
897
+ if (modals) {
898
+ return _to_consumable_array(modals).concat([
899
+ {
900
+ component: component,
901
+ id: id
902
+ }
903
+ ]);
904
+ }
905
+ return [
906
+ {
907
+ component: component,
908
+ id: id
909
+ }
910
+ ];
911
+ });
912
+ };
913
+ var removeModal = function(props) {
914
+ var _ref = props || {
915
+ id: void 0,
916
+ deps: void 0
917
+ }, id = _ref.id, deps = _ref.deps;
918
+ var isIncludeAllProps = Boolean(id && deps);
919
+ var isIncludeId = Boolean(id);
920
+ var isNotIncludeAllProps = !id && Boolean(utils.isNullOrUndefined(deps));
921
+ var isIncludeDeps = Boolean(Boolean(!utils.isNullOrUndefined(deps)) && !id);
922
+ if (isIncludeAllProps) {
923
+ throw new Error("id와 deps는 동시에 사용할 수 없습니다.");
924
+ }
925
+ if (isIncludeId) {
926
+ setOpenedModals(function(modal) {
927
+ var filterModal = modal.filter(function(modal2) {
928
+ return modal2.id !== id;
929
+ });
930
+ return _to_consumable_array(filterModal);
931
+ });
932
+ return;
933
+ }
934
+ if (isNotIncludeAllProps || deps === 1) {
935
+ setOpenedModals(function(modal) {
936
+ var removeModal2 = modal.slice(0, -1);
937
+ return _to_consumable_array(removeModal2);
938
+ });
939
+ return;
940
+ }
941
+ if (isIncludeDeps) {
942
+ if (deps === 0 || deps === void 0) {
943
+ return;
944
+ }
945
+ setOpenedModals(function(modal) {
946
+ var removeDeps = modal.slice(0, -deps);
947
+ return _to_consumable_array(removeDeps);
948
+ });
949
+ return;
950
+ }
951
+ };
952
+ var dispatch = React3.useMemo(function() {
953
+ return {
954
+ addModal: addModal,
955
+ removeModal: removeModal
956
+ };
957
+ }, []);
958
+ return /* @__PURE__ */ jsxRuntime.jsx(ModalContext.Provider, {
959
+ value: openedModals,
960
+ children: /* @__PURE__ */ jsxRuntime.jsx(ModalHandlerContext.Provider, {
961
+ value: dispatch,
962
+ children: children
963
+ })
964
+ });
965
+ };
966
+ var ModalProvider_default = ModalProvider;
810
967
  var ShoplflowProvider = function(param) {
811
968
  var children = param.children, _param_domain = param.domain, domain = _param_domain === void 0 ? "SHOPL" : _param_domain;
812
- exports.useDomain({
813
- domain: domain
814
- });
815
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
969
+ exports.useDomain(domain);
970
+ return /* @__PURE__ */ jsxRuntime.jsxs(ModalProvider_default, {
816
971
  children: [
817
972
  /* @__PURE__ */ jsxRuntime.jsx(exports.ModalProvider, {}),
818
973
  children
@@ -820,6 +975,19 @@ var ShoplflowProvider = function(param) {
820
975
  });
821
976
  };
822
977
  exports.ShoplflowProvider = ShoplflowProvider;
978
+ exports.useHandleModal = function() {
979
+ var _React3_useContext = React3.useContext(ModalHandlerContext), addModal = _React3_useContext.addModal, removeModal = _React3_useContext.removeModal;
980
+ return {
981
+ addModal: addModal,
982
+ removeModal: removeModal
983
+ };
984
+ };
985
+ exports.useModalValue = function() {
986
+ var modal = React3.useContext(ModalContext);
987
+ return {
988
+ modal: modal
989
+ };
990
+ };
823
991
  // src/styles/tokens.ts
824
992
  var fontWeightRegular = "var(--font-weight-regular)";
825
993
  var fontWeightMedium = "var(--font-weight-medium)";
@@ -1042,7 +1210,7 @@ exports.StyledStack = styled5__default.default.div(_templateObject2(), function(
1042
1210
  });
1043
1211
  var createStackComponent = function(stackOption) {
1044
1212
  var _stackOption_direction, _stackOption_align, _stackOption_justify, _stackOption_width, _stackOption_height, _stackOption_flexWrap, _stackOption_flex;
1045
- return React2.forwardRef(function Stack2(_param, ref) {
1213
+ return React3.forwardRef(function Stack2(_param, ref) {
1046
1214
  var _param_as = _param.as, as = _param_as === void 0 ? "div" : _param_as, _param_spacing = _param.spacing, spacing = _param_spacing === void 0 ? stackOption === null || stackOption === void 0 ? void 0 : stackOption.spacing : _param_spacing, _param_direction = _param.direction, direction = _param_direction === void 0 ? (_stackOption_direction = stackOption === null || stackOption === void 0 ? void 0 : stackOption.direction) !== null && _stackOption_direction !== void 0 ? _stackOption_direction : "column" : _param_direction, _param_align = _param.align, align = _param_align === void 0 ? (_stackOption_align = stackOption === null || stackOption === void 0 ? void 0 : stackOption.align) !== null && _stackOption_align !== void 0 ? _stackOption_align : "flex-start" : _param_align, _param_justify = _param.justify, justify = _param_justify === void 0 ? (_stackOption_justify = stackOption === null || stackOption === void 0 ? void 0 : stackOption.justify) !== null && _stackOption_justify !== void 0 ? _stackOption_justify : "flex-start" : _param_justify, _param_width = _param.width, width = _param_width === void 0 ? (_stackOption_width = stackOption === null || stackOption === void 0 ? void 0 : stackOption.width) !== null && _stackOption_width !== void 0 ? _stackOption_width : "initial" : _param_width, _param_height = _param.height, height = _param_height === void 0 ? (_stackOption_height = stackOption === null || stackOption === void 0 ? void 0 : stackOption.height) !== null && _stackOption_height !== void 0 ? _stackOption_height : "initial" : _param_height, _param_flexWrap = _param.flexWrap, flexWrap = _param_flexWrap === void 0 ? (_stackOption_flexWrap = stackOption === null || stackOption === void 0 ? void 0 : stackOption.flexWrap) !== null && _stackOption_flexWrap !== void 0 ? _stackOption_flexWrap : "initial" : _param_flexWrap, _param_flex = _param.flex, flex = _param_flex === void 0 ? (_stackOption_flex = stackOption === null || stackOption === void 0 ? void 0 : stackOption.flex) !== null && _stackOption_flex !== void 0 ? _stackOption_flex : "initial" : _param_flex, _param_radius = _param.radius, radius = _param_radius === void 0 ? stackOption === null || stackOption === void 0 ? void 0 : stackOption.radius : _param_radius, tmp = _param.background, background2 = tmp === void 0 ? stackOption === null || stackOption === void 0 ? void 0 : stackOption.background : tmp, rest = _object_without_properties(_param, [
1047
1215
  "as",
1048
1216
  "spacing",
@@ -1070,6 +1238,7 @@ var createStackComponent = function(stackOption) {
1070
1238
  background: background2,
1071
1239
  radius: radius
1072
1240
  }, rest), {
1241
+ "data-shoplflow": "Stack",
1073
1242
  children: rest.children
1074
1243
  }));
1075
1244
  });
@@ -1113,7 +1282,7 @@ var StyledText = styled5__default.default.span(_templateObject7(), function(para
1113
1282
  var wordBreak = param.wordBreak;
1114
1283
  return wordBreak && react.css(_templateObject6(), wordBreak);
1115
1284
  });
1116
- var Text = React2.forwardRef(function(_param, ref) {
1285
+ var Text = React3.forwardRef(function(_param, ref) {
1117
1286
  var children = _param.children, _param_typography = _param.typography, typography = _param_typography === void 0 ? "body1_400" : _param_typography, whiteSpace = _param.whiteSpace, _param_color = _param.color, color = _param_color === void 0 ? "neutral700" : _param_color, _param_display = _param.display, display = _param_display === void 0 ? "inline-block" : _param_display, _param_textAlign = _param.textAlign, textAlign = _param_textAlign === void 0 ? "start" : _param_textAlign, className = _param.className, as = _param.as, rest = _object_without_properties(_param, [
1118
1287
  "children",
1119
1288
  "typography",
@@ -1133,6 +1302,7 @@ var Text = React2.forwardRef(function(_param, ref) {
1133
1302
  textAlign: textAlign,
1134
1303
  as: as
1135
1304
  }, rest), {
1305
+ "data-shoplflow": "Text",
1136
1306
  children: children
1137
1307
  }));
1138
1308
  });
@@ -1194,16 +1364,15 @@ var ModalBodyContent = styled5__default.default.div(_templateObject13(), functio
1194
1364
  }, exports.colorTokens.neutral0);
1195
1365
  var FooterContainer = styled5__default.default.div(_templateObject14(), exports.colorTokens.neutral300, exports.colorTokens.neutral0);
1196
1366
  // src/components/Modal/Modal.types.ts
1197
- exports.ModalSize = /* @__PURE__ */ function(ModalSize2) {
1198
- ModalSize2["XXS"] = "XXS";
1199
- ModalSize2["XS"] = "XS";
1200
- ModalSize2["S"] = "S";
1201
- ModalSize2["M"] = "M";
1202
- ModalSize2["L"] = "L";
1203
- ModalSize2["XL"] = "XL";
1204
- ModalSize2["XXL"] = "XXL";
1205
- return ModalSize2;
1206
- }(exports.ModalSize || {});
1367
+ exports.ModalSize = {
1368
+ XXS: "XXS",
1369
+ XS: "XS",
1370
+ S: "S",
1371
+ M: "M",
1372
+ L: "L",
1373
+ XL: "XL",
1374
+ XXL: "XXL"
1375
+ };
1207
1376
  exports.MODAL_HEADER_KEY = Symbol("MODAL_HEADER");
1208
1377
  exports.MODAL_FOOTER_KEY = Symbol("MODAL_FOOTER");
1209
1378
  var ModalContainer = function(_param) {
@@ -1212,9 +1381,9 @@ var ModalContainer = function(_param) {
1212
1381
  "outsideClick"
1213
1382
  ]);
1214
1383
  var ref = utils.useParentElementClick(outsideClick);
1215
- var childrenArray = React2__default.default.Children.toArray(children);
1384
+ var childrenArray = React3__default.default.Children.toArray(children);
1216
1385
  var findHeader = childrenArray.find(function(child) {
1217
- if (!React2__default.default.isValidElement(child)) {
1386
+ if (!React3__default.default.isValidElement(child)) {
1218
1387
  return child;
1219
1388
  }
1220
1389
  if (child.type[exports.MODAL_HEADER_KEY]) {
@@ -1222,18 +1391,18 @@ var ModalContainer = function(_param) {
1222
1391
  }
1223
1392
  });
1224
1393
  var findFooter = childrenArray.find(function(child) {
1225
- if (!React2__default.default.isValidElement(child)) {
1394
+ if (!React3__default.default.isValidElement(child)) {
1226
1395
  return child;
1227
1396
  }
1228
1397
  if (child.type[exports.MODAL_FOOTER_KEY]) {
1229
1398
  return child;
1230
1399
  }
1231
1400
  });
1232
- var addPropInChildren = React2.Children.map(childrenArray, function(child) {
1233
- if (!React2__default.default.isValidElement(child)) {
1401
+ var addPropInChildren = React3__default.default.Children.map(childrenArray, function(child) {
1402
+ if (!React3__default.default.isValidElement(child)) {
1234
1403
  return child;
1235
1404
  }
1236
- return React2__default.default.cloneElement(child, {
1405
+ return React3__default.default.cloneElement(child, {
1237
1406
  isIncludeHeader: Boolean(findHeader),
1238
1407
  isIncludeFooter: Boolean(findFooter),
1239
1408
  sizeVar: rest.sizeVar,
@@ -1243,6 +1412,7 @@ var ModalContainer = function(_param) {
1243
1412
  return /* @__PURE__ */ jsxRuntime.jsx(Container, _object_spread_props(_object_spread({
1244
1413
  ref: ref
1245
1414
  }, rest), {
1415
+ "data-shoplflow": "Modal",
1246
1416
  children: addPropInChildren
1247
1417
  }));
1248
1418
  };
@@ -1263,7 +1433,7 @@ var ModalBody = function(param) {
1263
1433
  var headerHeight = 64;
1264
1434
  var footerHeight = 64;
1265
1435
  var topBottomMargin = 64;
1266
- var getHeaderFooterHeight = React2.useCallback(function() {
1436
+ var getHeaderFooterHeight = React3.useCallback(function() {
1267
1437
  var result = 0;
1268
1438
  if (isIncludeHeader) {
1269
1439
  result += headerHeight;
@@ -1276,7 +1446,7 @@ var ModalBody = function(param) {
1276
1446
  isIncludeFooter,
1277
1447
  isIncludeHeader
1278
1448
  ]);
1279
- var headerFooterHeight = React2.useMemo(function() {
1449
+ var headerFooterHeight = React3.useMemo(function() {
1280
1450
  return getHeaderFooterHeight();
1281
1451
  }, [
1282
1452
  getHeaderFooterHeight
@@ -1341,14 +1511,14 @@ var StyledSwitch = styled5__default.default.input(_templateObject16(), exports.c
1341
1511
  return exports.colorTokens[activeColor];
1342
1512
  });
1343
1513
  var useOnToggle = function(selected, defaultSelected) {
1344
- var _React2_useState = _sliced_to_array(React2.useState(false), 2), isToggle = _React2_useState[0], setIsToggle = _React2_useState[1];
1514
+ var _React3_useState = _sliced_to_array(React3.useState(false), 2), isToggle = _React3_useState[0], setIsToggle = _React3_useState[1];
1345
1515
  var isControlled = selected !== void 0;
1346
1516
  var handleToggle = function() {
1347
1517
  !isControlled && setIsToggle(function(prev) {
1348
1518
  return !prev;
1349
1519
  });
1350
1520
  };
1351
- React2.useEffect(function() {
1521
+ React3.useEffect(function() {
1352
1522
  if (isControlled) {
1353
1523
  setIsToggle(selected);
1354
1524
  }
@@ -1356,7 +1526,7 @@ var useOnToggle = function(selected, defaultSelected) {
1356
1526
  isControlled,
1357
1527
  selected
1358
1528
  ]);
1359
- React2.useEffect(function() {
1529
+ React3.useEffect(function() {
1360
1530
  if (defaultSelected) {
1361
1531
  setIsToggle(defaultSelected);
1362
1532
  }
@@ -1378,18 +1548,21 @@ var Switch = function(_param) {
1378
1548
  "defaultSelected"
1379
1549
  ]);
1380
1550
  var _useOnToggle = _sliced_to_array(useOnToggle(isSelected, defaultSelected), 2), isToggled = _useOnToggle[0], handleToggle = _useOnToggle[1];
1551
+ var handleOnChange = function(e) {
1552
+ handleToggle();
1553
+ onChange && onChange(e);
1554
+ };
1381
1555
  return /* @__PURE__ */ jsxRuntime.jsx(SwitchContainer, {
1382
1556
  isDisabled: disabled,
1383
- children: /* @__PURE__ */ jsxRuntime.jsx(StyledSwitch, _object_spread({
1557
+ children: /* @__PURE__ */ jsxRuntime.jsx(StyledSwitch, _object_spread_props(_object_spread({
1384
1558
  type: "checkbox",
1385
1559
  checked: isToggled,
1386
1560
  disabled: disabled,
1387
- onChange: function() {
1388
- handleToggle();
1389
- onChange && onChange();
1390
- },
1561
+ onChange: handleOnChange,
1391
1562
  activeColor: activeColor
1392
- }, rest))
1563
+ }, rest), {
1564
+ "data-shoplflow": "Switch"
1565
+ }))
1393
1566
  });
1394
1567
  };
1395
1568
  exports.Switch = Switch;
@@ -1453,6 +1626,7 @@ var ChipToggle = function(_param) {
1453
1626
  sizeVar: sizeVar,
1454
1627
  onClick: handleClick,
1455
1628
  disabled: disabled,
1629
+ "data-shoplflow": "ChipToggle",
1456
1630
  children: [
1457
1631
  leftSource,
1458
1632
  /* @__PURE__ */ jsxRuntime.jsx(exports.Text, {
@@ -1546,6 +1720,7 @@ var ChipButton = function(_param) {
1546
1720
  }, rest), {
1547
1721
  onClick: handleOnClick,
1548
1722
  disabled: disabled,
1723
+ "data-shoplflow": "ChipButton",
1549
1724
  children: /* @__PURE__ */ jsxRuntime.jsx(exports.Text, {
1550
1725
  typography: getLineTypographyBySizeVar2(sizeVar),
1551
1726
  children: text
@@ -1577,7 +1752,7 @@ var getStyleBySizeVar2 = function(sizeVar) {
1577
1752
  return react.css(_templateObject34());
1578
1753
  }
1579
1754
  };
1580
- var StyledButton = styled5__default.default.button(_templateObject35(), exports.spacingTokens.spacing04, exports.borderRadiusTokens.borderRadius06, exports.spacingTokens.spacing12, exports.borderRadiusTokens.borderRadius12, function(param) {
1755
+ var StyledButton = styled5__default.default.button(_templateObject35(), function(param) {
1581
1756
  var styleVar = param.styleVar, disabled = param.disabled;
1582
1757
  return getStyleByStyleVar(styleVar, disabled);
1583
1758
  }, function(param) {
@@ -1587,8 +1762,8 @@ var StyledButton = styled5__default.default.button(_templateObject35(), exports.
1587
1762
  var disabled = param.disabled;
1588
1763
  return getDisabledStyle(disabled);
1589
1764
  });
1590
- var Button = React2.forwardRef(function(_param, ref) {
1591
- var styleVar = _param.styleVar, _param_sizeVar = _param.sizeVar, sizeVar = _param_sizeVar === void 0 ? "M" : _param_sizeVar, style = _param.style, color = _param.color, as = _param.as, children = _param.children, leftSource = _param.leftSource, rightSource = _param.rightSource, rest = _object_without_properties(_param, [
1765
+ var Button = React3.forwardRef(function(_param, ref) {
1766
+ var _param_styleVar = _param.styleVar, styleVar = _param_styleVar === void 0 ? "PRIMARY" : _param_styleVar, _param_sizeVar = _param.sizeVar, sizeVar = _param_sizeVar === void 0 ? "M" : _param_sizeVar, style = _param.style, color = _param.color, as = _param.as, children = _param.children, leftSource = _param.leftSource, rightSource = _param.rightSource, rest = _object_without_properties(_param, [
1592
1767
  "styleVar",
1593
1768
  "sizeVar",
1594
1769
  "style",
@@ -1607,9 +1782,12 @@ var Button = React2.forwardRef(function(_param, ref) {
1607
1782
  ref: ref,
1608
1783
  color: color
1609
1784
  }, rest), {
1785
+ "data-shoplflow": "Button",
1610
1786
  children: [
1611
1787
  leftSource,
1612
1788
  /* @__PURE__ */ jsxRuntime.jsx(exports.Text, {
1789
+ wordBreak: "keep-all",
1790
+ whiteSpace: "nowrap",
1613
1791
  color: styleVar === "PRIMARY" ? "neutral0" : "neutral700",
1614
1792
  typography: sizeVar === "M" ? "body1_400" : "body2_400",
1615
1793
  children: children
@@ -1640,49 +1818,27 @@ var getWidthAndHeightFromSizeVar = function(sizeVar) {
1640
1818
  return react.css(_templateObject38());
1641
1819
  }
1642
1820
  };
1643
- var getHoverBackgroundFromStyleVar = function(styleVar) {
1821
+ var getStyleByStyleVar2 = function(styleVar) {
1644
1822
  switch(styleVar){
1645
1823
  case "SOLID":
1646
- return exports.colorTokens.neutral100;
1824
+ return react.css(_templateObject39(), exports.colorTokens.neutral200, exports.colorTokens.neutral100);
1647
1825
  case "GHOST":
1648
- return exports.colorTokens.neutral400_5;
1826
+ return react.css(_templateObject40(), exports.colorTokens.neutral400_5);
1649
1827
  default:
1650
- return exports.colorTokens.neutral100;
1828
+ return react.css(_templateObject41(), exports.colorTokens.neutral200, exports.colorTokens.neutral100);
1651
1829
  }
1652
1830
  };
1653
- var getBorderByStyleVar = function(styleVar) {
1654
- if (!styleVar) {
1655
- return;
1656
- }
1657
- if (styleVar === "SOLID") {
1658
- return react.css(_templateObject39(), exports.colorTokens.neutral200);
1659
- }
1660
- };
1661
- var StyledIconButton = styled5__default.default.button(_templateObject41(), exports.borderRadiusTokens.borderRadius06, exports.colorTokens.neutral0, function(param) {
1831
+ var StyledIconButton = styled5__default.default.button(_templateObject42(), exports.borderRadiusTokens.borderRadius06, exports.colorTokens.neutral0, function(param) {
1662
1832
  var styleVar = param.styleVar;
1663
- if (!styleVar) {
1664
- return;
1665
- }
1666
- if (styleVar === "SOLID") {
1667
- return react.css(_templateObject40(), exports.colorTokens.neutral200);
1668
- }
1669
- }, function(param) {
1670
- var styleVar = param.styleVar;
1671
- return getBorderByStyleVar(styleVar);
1833
+ return getStyleByStyleVar2(styleVar);
1672
1834
  }, function(param) {
1673
1835
  var sizeVar = param.sizeVar;
1674
1836
  return getWidthAndHeightFromSizeVar(sizeVar);
1675
1837
  }, function(param) {
1676
1838
  var disabled = param.disabled;
1677
1839
  return getDisabledStyle(disabled);
1678
- }, function(param) {
1679
- var styleVar = param.styleVar, disabled = param.disabled;
1680
- if (disabled) {
1681
- return;
1682
- }
1683
- return getHoverBackgroundFromStyleVar(styleVar);
1684
1840
  });
1685
- var IconButton = React2.forwardRef(function(_param, ref) {
1841
+ var IconButton = React3.forwardRef(function(_param, ref) {
1686
1842
  var styleVar = _param.styleVar, sizeVar = _param.sizeVar, disabled = _param.disabled, as = _param.as, children = _param.children, rest = _object_without_properties(_param, [
1687
1843
  "styleVar",
1688
1844
  "sizeVar",
@@ -1697,6 +1853,7 @@ var IconButton = React2.forwardRef(function(_param, ref) {
1697
1853
  as: as,
1698
1854
  ref: ref
1699
1855
  }, rest), {
1856
+ "data-shoplflow": "IconButton",
1700
1857
  children: children
1701
1858
  }));
1702
1859
  });
@@ -1710,20 +1867,469 @@ exports.iconButtonStyleVar = {
1710
1867
  SOLID: "SOLID",
1711
1868
  GHOST: "GHOST"
1712
1869
  };
1713
- var Container2 = styled5__default.default.div(_templateObject42());
1714
- var IconButton2 = styled5__default.default.button(_templateObject43(), exports.borderRadiusTokens.borderRadius04, function(param) {
1870
+ var informationStyle = react.css(_templateObject43(), exports.colorTokens.neutral100, exports.colorTokens.neutral600, exports.colorTokens.neutral600);
1871
+ var alertStyle = react.css(_templateObject44(), exports.colorTokens.red100, exports.colorTokens.red300, exports.colorTokens.red300);
1872
+ var StyledCallout = styled5__default.default.div(_templateObject45(), exports.borderRadiusTokens.borderRadius08, function(param) {
1873
+ var styleVar = param.styleVar;
1874
+ return styleVar === "INFORMATION" && informationStyle;
1875
+ }, function(param) {
1876
+ var styleVar = param.styleVar;
1877
+ return styleVar === "ALERT" && alertStyle;
1878
+ });
1879
+ var StyledCalloutIcon = styled5__default.default.svg(_templateObject46());
1880
+ styled5__default.default.div(_templateObject47());
1881
+ var Callout = function(_param) {
1882
+ var children = _param.children, _param_styleVar = _param.styleVar, styleVar = _param_styleVar === void 0 ? "INFORMATION" : _param_styleVar, rest = _object_without_properties(_param, [
1883
+ "children",
1884
+ "styleVar"
1885
+ ]);
1886
+ return /* @__PURE__ */ jsxRuntime.jsx(StyledCallout, _object_spread_props(_object_spread({}, rest), {
1887
+ styleVar: styleVar,
1888
+ "data-shoplflow": "Callout",
1889
+ children: children
1890
+ }));
1891
+ };
1892
+ var CalloutText = function(_param) {
1893
+ var children = _param.children, rest = _object_without_properties(_param, [
1894
+ "children"
1895
+ ]);
1896
+ return /* @__PURE__ */ jsxRuntime.jsx(exports.Text, _object_spread_props(_object_spread({}, rest), {
1897
+ typography: "body3_400",
1898
+ children: children
1899
+ }));
1900
+ };
1901
+ var CalloutIcon = function(param) {
1902
+ var iconSource = param.iconSource;
1903
+ return /* @__PURE__ */ jsxRuntime.jsx(StyledCalloutIcon, {
1904
+ as: iconSource
1905
+ });
1906
+ };
1907
+ Callout.Text = CalloutText;
1908
+ Callout.Icon = CalloutIcon;
1909
+ exports.Callout = Callout;
1910
+ // src/components/Callout/Callout.types.ts
1911
+ exports.CalloutTypes = {
1912
+ INFORMATION: "INFORMATION",
1913
+ ALERT: "ALERT"
1914
+ };
1915
+ // src/components/Icon/Icon.types.ts
1916
+ exports.IconSizeVariants = {
1917
+ X_SMALL: "X_SMALL",
1918
+ SMALL: "SMALL",
1919
+ MEDIUM: "MEDIUM",
1920
+ LARGE: "LARGE",
1921
+ X_LARGE: "X_LARGE"
1922
+ };
1923
+ // src/components/Icon/Icon.styled.ts
1924
+ var getIconSize = function(size) {
1925
+ switch(size){
1926
+ case exports.IconSizeVariants.X_SMALL:
1927
+ return "12px";
1928
+ case exports.IconSizeVariants.SMALL:
1929
+ return "20px";
1930
+ case exports.IconSizeVariants.MEDIUM:
1931
+ return "24px";
1932
+ case exports.IconSizeVariants.LARGE:
1933
+ return "30px";
1934
+ case exports.IconSizeVariants.X_LARGE:
1935
+ return "36px";
1936
+ default:
1937
+ return "24px";
1938
+ }
1939
+ };
1940
+ exports.StyledIcon = styled5__default.default.svg(_templateObject48(), function(param) {
1941
+ var sizeVar = param.sizeVar;
1942
+ return sizeVar && getIconSize(sizeVar);
1943
+ }, function(param) {
1944
+ var sizeVar = param.sizeVar;
1945
+ return sizeVar && getIconSize(sizeVar);
1946
+ }, function(param) {
1947
+ var sizeVar = param.sizeVar;
1948
+ return sizeVar && getIconSize(sizeVar);
1949
+ }, function(param) {
1950
+ var sizeVar = param.sizeVar;
1951
+ return sizeVar && getIconSize(sizeVar);
1952
+ }, function(param) {
1953
+ var color = param.color;
1954
+ return color && exports.colorTokens[color];
1955
+ });
1956
+ var Icon = React3.forwardRef(function(_param, ref) {
1957
+ var iconSource = _param.iconSource, rest = _object_without_properties(_param, [
1958
+ "iconSource"
1959
+ ]);
1960
+ return /* @__PURE__ */ jsxRuntime.jsx(exports.StyledIcon, _object_spread_props(_object_spread({
1961
+ as: iconSource,
1962
+ ref: ref
1963
+ }, rest), {
1964
+ "data-shoplflow": "Icon"
1965
+ }));
1966
+ });
1967
+ exports.Icon = Icon;
1968
+ var StyledInput = styled5__default.default.input(_templateObject49(), exports.colorTokens.neutral350);
1969
+ var RightElementWrapper = styled5__default.default.div(_templateObject50());
1970
+ var Wrapper = styled5__default.default.div(_templateObject51());
1971
+ var TextCounter = function(param) {
1972
+ var currentLength = param.currentLength, maxLength = param.maxLength;
1973
+ return /* @__PURE__ */ jsxRuntime.jsxs(Wrapper, {
1974
+ children: [
1975
+ /* @__PURE__ */ jsxRuntime.jsx(exports.Text, {
1976
+ typography: "caption_400",
1977
+ color: "neutral400",
1978
+ children: currentLength
1979
+ }),
1980
+ /* @__PURE__ */ jsxRuntime.jsx(exports.Text, {
1981
+ typography: "caption_400",
1982
+ color: "neutral350",
1983
+ children: "/"
1984
+ }),
1985
+ /* @__PURE__ */ jsxRuntime.jsx(exports.Text, {
1986
+ typography: "caption_400",
1987
+ color: "neutral350",
1988
+ children: maxLength
1989
+ })
1990
+ ]
1991
+ });
1992
+ };
1993
+ var TextCounter_default = TextCounter;
1994
+ React3.createContext({
1995
+ domain: "SHOPL",
1996
+ handleToggleTheme: function() {}
1997
+ });
1998
+ // src/styles/IconAssets.tsx
1999
+ var assetFunction = function(iconName, domainProps) {
2000
+ var domain = domainProps !== null && domainProps !== void 0 ? domainProps : exports.getDomain();
2001
+ var HadaIcon = HadaAssets__namespace[iconName];
2002
+ var ShoplIcon = ShoplAssets__namespace[iconName];
2003
+ return domain === "hada" ? HadaIcon : ShoplIcon;
2004
+ };
2005
+ function assignRef(ref, value) {
2006
+ if (ref == null) {
2007
+ return;
2008
+ }
2009
+ if (typeof ref === "function") {
2010
+ ref(value);
2011
+ return;
2012
+ }
2013
+ try {
2014
+ ref.current = value;
2015
+ } catch (error) {
2016
+ throw new Error("Cannot assign value '".concat(value, "' to ref '").concat(ref, "'"));
2017
+ }
2018
+ }
2019
+ function mergeRefs() {
2020
+ for(var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++){
2021
+ refs[_key] = arguments[_key];
2022
+ }
2023
+ return function(node) {
2024
+ refs.forEach(function(ref) {
2025
+ assignRef(ref, node);
2026
+ });
2027
+ };
2028
+ }
2029
+ function useMergeRefs() {
2030
+ for(var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++){
2031
+ refs[_key] = arguments[_key];
2032
+ }
2033
+ return React3.useMemo(function() {
2034
+ return mergeRefs.apply(void 0, _to_consumable_array(refs));
2035
+ }, refs);
2036
+ }
2037
+ var getBorderColorByStatus = function(param) {
2038
+ var isFocused = param.isFocused, isError = param.isError, isHovered = param.isHovered, disabled = param.disabled;
2039
+ if (!disabled) {
2040
+ if (isError) {
2041
+ return exports.colorTokens.red300;
2042
+ }
2043
+ if (isFocused) {
2044
+ return exports.colorTokens.primary300;
2045
+ }
2046
+ if (isHovered) {
2047
+ return exports.colorTokens.neutral700;
2048
+ }
2049
+ }
2050
+ return exports.colorTokens.neutral300;
2051
+ };
2052
+ var InputWrapper = styled5__default.default.label(_templateObject52(), function(param) {
2053
+ var direction = param.direction;
2054
+ return direction || "row";
2055
+ }, function(props) {
2056
+ return getBorderColorByStatus(props);
2057
+ }, exports.colorTokens.neutral0, function(param) {
2058
+ var disabled = param.disabled;
2059
+ return getDisabledStyle(disabled);
2060
+ });
2061
+ React3.forwardRef(function(_param, ref) {
2062
+ var onFocus = _param.onFocus, onBlur = _param.onBlur, onChange = _param.onChange, onClear = _param.onClear, defaultValue = _param.defaultValue, value = _param.value, isError = _param.isError, disabled = _param.disabled, initialType = _param.type, maxLength = _param.maxLength, className = _param.className, rest = _object_without_properties(_param, [
2063
+ "onFocus",
2064
+ "onBlur",
2065
+ "onChange",
2066
+ "onClear",
2067
+ "defaultValue",
2068
+ "value",
2069
+ "isError",
2070
+ "disabled",
2071
+ "type",
2072
+ "maxLength",
2073
+ "className"
2074
+ ]);
2075
+ var _React3_useState = _sliced_to_array(React3.useState(""), 2), text = _React3_useState[0], setText = _React3_useState[1];
2076
+ var _React3_useState1 = _sliced_to_array(React3.useState(false), 2), isFocused = _React3_useState1[0], setIsFocused = _React3_useState1[1];
2077
+ var _React3_useState2 = _sliced_to_array(React3.useState("text"), 2), type = _React3_useState2[0], setType = _React3_useState2[1];
2078
+ var _React3_useState3 = _sliced_to_array(React3.useState(false), 2), isHovered = _React3_useState3[0], setIsHovered = _React3_useState3[1];
2079
+ var uniqueId = React3.useId();
2080
+ var inputRef = React3__default.default.useRef(null);
2081
+ var refs = useMergeRefs(ref, inputRef);
2082
+ var convertToString = React3.useCallback(function(value2) {
2083
+ if (typeof value2 !== "number") {
2084
+ return typeof value2 === "string" ? value2 : value2.join("");
2085
+ }
2086
+ return String(value2);
2087
+ }, []);
2088
+ var sliceText = React3.useCallback(function(value2) {
2089
+ if (maxLength && value2.length > maxLength) {
2090
+ return value2.slice(0, maxLength);
2091
+ }
2092
+ return value2;
2093
+ }, [
2094
+ maxLength
2095
+ ]);
2096
+ var handleOnMouseEnter = function() {
2097
+ setIsHovered(true);
2098
+ };
2099
+ var handleOnMouseLeave = function() {
2100
+ setIsHovered(false);
2101
+ };
2102
+ var handleOnFocus = function(event) {
2103
+ onFocus && onFocus(event);
2104
+ setIsFocused(true);
2105
+ };
2106
+ var handleOnBlur = function(event) {
2107
+ onBlur && onBlur(event);
2108
+ !isHovered && setIsFocused(false);
2109
+ };
2110
+ var handleOnChange = function(event) {
2111
+ onChange && onChange(event);
2112
+ var slicedText = sliceText(event.target.value);
2113
+ setText(slicedText);
2114
+ };
2115
+ var handleOnClear = function() {
2116
+ onClear && onClear();
2117
+ if (inputRef.current) {
2118
+ setText("");
2119
+ inputRef.current.value = "";
2120
+ }
2121
+ };
2122
+ var handleTogglePasswordType = function() {
2123
+ if (type === "password") {
2124
+ setType("text");
2125
+ } else {
2126
+ setType("password");
2127
+ }
2128
+ };
2129
+ React3.useEffect(function() {
2130
+ if (defaultValue) {
2131
+ var convertString = convertToString(defaultValue);
2132
+ var slicedText = sliceText(convertString);
2133
+ setText(slicedText);
2134
+ }
2135
+ }, [
2136
+ convertToString,
2137
+ defaultValue,
2138
+ maxLength,
2139
+ sliceText
2140
+ ]);
2141
+ React3.useEffect(function() {
2142
+ if (value) {
2143
+ var convertString = convertToString(value);
2144
+ var slicedText = sliceText(convertString);
2145
+ setText(slicedText);
2146
+ }
2147
+ }, [
2148
+ convertToString,
2149
+ maxLength,
2150
+ sliceText,
2151
+ value
2152
+ ]);
2153
+ React3.useEffect(function() {
2154
+ setType(initialType);
2155
+ }, [
2156
+ initialType
2157
+ ]);
2158
+ return /* @__PURE__ */ jsxRuntime.jsxs(InputWrapper, {
2159
+ htmlFor: uniqueId,
2160
+ isFocused: isFocused,
2161
+ disabled: disabled,
2162
+ isError: isError,
2163
+ isHovered: isHovered,
2164
+ onMouseEnter: handleOnMouseEnter,
2165
+ onMouseLeave: handleOnMouseLeave,
2166
+ "data-shoplflow": "input",
2167
+ children: [
2168
+ /* @__PURE__ */ jsxRuntime.jsx(StyledInput, _object_spread({
2169
+ className: "".concat(exports.typographyTokens.body1_400, " ").concat(className),
2170
+ onFocus: handleOnFocus,
2171
+ onBlur: handleOnBlur,
2172
+ onChange: handleOnChange,
2173
+ maxLength: maxLength,
2174
+ disabled: disabled,
2175
+ value: text,
2176
+ type: type,
2177
+ id: uniqueId,
2178
+ ref: refs
2179
+ }, rest)),
2180
+ /* @__PURE__ */ jsxRuntime.jsxs(RightElementWrapper, {
2181
+ children: [
2182
+ maxLength && isFocused && /* @__PURE__ */ jsxRuntime.jsx(TextCounter_default, {
2183
+ currentLength: String(text).length,
2184
+ maxLength: maxLength
2185
+ }),
2186
+ isFocused && Boolean(String(text).length > 0) && /* @__PURE__ */ jsxRuntime.jsx(exports.IconButton, {
2187
+ sizeVar: "S",
2188
+ onClick: handleOnClear,
2189
+ styleVar: "GHOST",
2190
+ children: /* @__PURE__ */ jsxRuntime.jsx(exports.Icon, {
2191
+ iconSource: assetFunction("DeleteIcon"),
2192
+ color: "neutral600"
2193
+ })
2194
+ }),
2195
+ initialType === "password" && /* @__PURE__ */ jsxRuntime.jsx(exports.IconButton, {
2196
+ sizeVar: "S",
2197
+ onClick: handleTogglePasswordType,
2198
+ styleVar: "GHOST",
2199
+ children: /* @__PURE__ */ jsxRuntime.jsx(exports.Icon, {
2200
+ color: "neutral600",
2201
+ iconSource: assetFunction(type === "password" ? "ViewOffIcon" : "ViewOnIcon")
2202
+ })
2203
+ })
2204
+ ]
2205
+ })
2206
+ ]
2207
+ });
2208
+ });
2209
+ var BottomElementWrapper = styled5__default.default.div(_templateObject53(), exports.colorTokens.neutral0);
2210
+ var StyledTextarea = styled5__default.default.textarea(_templateObject54(), function(param) {
2211
+ var minHeight = param.minHeight;
2212
+ return minHeight ? "".concat(minHeight, "px") : "300px";
2213
+ }, function(param) {
2214
+ var disabled = param.disabled;
2215
+ return getDisabledStyle(disabled);
2216
+ }, exports.colorTokens.neutral350);
2217
+ var TextArea = React3.forwardRef(function(_param, ref) {
2218
+ var name = _param.name, maxLength = _param.maxLength, placeholder = _param.placeholder, _param_disabled = _param.disabled, disabled = _param_disabled === void 0 ? false : _param_disabled, _param_isError = _param.isError, isError = _param_isError === void 0 ? false : _param_isError, onChange = _param.onChange, value = _param.value, defaultValue = _param.defaultValue, onBlur = _param.onBlur, onFocus = _param.onFocus, _param_minHeight = _param.minHeight, minHeight = _param_minHeight === void 0 ? 100 : _param_minHeight, rest = _object_without_properties(_param, [
2219
+ "name",
2220
+ "maxLength",
2221
+ "placeholder",
2222
+ "disabled",
2223
+ "isError",
2224
+ "onChange",
2225
+ "value",
2226
+ "defaultValue",
2227
+ "onBlur",
2228
+ "onFocus",
2229
+ "minHeight"
2230
+ ]);
2231
+ var _React3_useState = _sliced_to_array(React3.useState(""), 2), text = _React3_useState[0], setText = _React3_useState[1];
2232
+ var _React3_useState1 = _sliced_to_array(React3.useState(false), 2), isFocused = _React3_useState1[0], setIsFocused = _React3_useState1[1];
2233
+ var _React3_useState2 = _sliced_to_array(React3.useState(false), 2), isHovered = _React3_useState2[0], setIsHovered = _React3_useState2[1];
2234
+ var handleOnMouseEnter = function() {
2235
+ setIsHovered(true);
2236
+ };
2237
+ var handleOnMouseLeave = function() {
2238
+ setIsHovered(false);
2239
+ };
2240
+ var handleOnFocus = function(event) {
2241
+ onFocus && onFocus(event);
2242
+ setIsFocused(true);
2243
+ };
2244
+ var handleOnBlur = function(event) {
2245
+ onBlur && onBlur(event);
2246
+ !isHovered && setIsFocused(false);
2247
+ };
2248
+ var handleOnChange = function(event) {
2249
+ onChange && onChange(event);
2250
+ setText(event.target.value);
2251
+ };
2252
+ var convertToString = function(value2) {
2253
+ if (typeof value2 !== "number") {
2254
+ return typeof value2 === "string" ? value2 : value2.join("");
2255
+ }
2256
+ return String(value2);
2257
+ };
2258
+ React3.useEffect(function() {
2259
+ if (defaultValue) {
2260
+ var convertString = convertToString(defaultValue);
2261
+ if (maxLength && convertString.length > maxLength) {
2262
+ setText(convertString);
2263
+ }
2264
+ setText(convertString);
2265
+ }
2266
+ }, [
2267
+ defaultValue,
2268
+ maxLength
2269
+ ]);
2270
+ React3.useEffect(function() {
2271
+ if (value) {
2272
+ var convertString = convertToString(value);
2273
+ if (maxLength && convertString.length > maxLength) {
2274
+ setText(convertString);
2275
+ }
2276
+ setText(convertToString(value));
2277
+ }
2278
+ }, [
2279
+ maxLength,
2280
+ value
2281
+ ]);
2282
+ var uniqueId = React3.useId();
2283
+ return /* @__PURE__ */ jsxRuntime.jsxs(InputWrapper, {
2284
+ htmlFor: uniqueId,
2285
+ isFocused: isFocused,
2286
+ disabled: disabled,
2287
+ isHovered: isHovered,
2288
+ isError: isError,
2289
+ direction: "column",
2290
+ onMouseEnter: handleOnMouseEnter,
2291
+ onMouseLeave: handleOnMouseLeave,
2292
+ "data-shoplflow": "text-area",
2293
+ children: [
2294
+ /* @__PURE__ */ jsxRuntime.jsx(StyledTextarea, _object_spread({
2295
+ className: "body1_400",
2296
+ placeholder: placeholder,
2297
+ onFocus: handleOnFocus,
2298
+ onBlur: handleOnBlur,
2299
+ onChange: handleOnChange,
2300
+ name: name,
2301
+ id: uniqueId,
2302
+ value: value,
2303
+ ref: ref,
2304
+ maxLength: maxLength,
2305
+ disabled: disabled,
2306
+ minHeight: minHeight
2307
+ }, rest)),
2308
+ /* @__PURE__ */ jsxRuntime.jsx(BottomElementWrapper, {
2309
+ children: maxLength && /* @__PURE__ */ jsxRuntime.jsx(TextCounter_default, {
2310
+ currentLength: String(text).length,
2311
+ maxLength: maxLength
2312
+ })
2313
+ })
2314
+ ]
2315
+ });
2316
+ });
2317
+ exports.TextArea = TextArea;
2318
+ var Container2 = styled5__default.default.div(_templateObject55());
2319
+ var IconButton2 = styled5__default.default.button(_templateObject56(), exports.borderRadiusTokens.borderRadius04, function(param) {
1715
2320
  var color = param.color;
1716
2321
  return exports.colorTokens[color];
1717
2322
  }, function(param) {
1718
2323
  var color = param.color;
1719
2324
  return exports.colorTokens[getNextColor(color, 1)];
1720
2325
  });
1721
- var MinusButton = React2.forwardRef(function(_param, ref) {
2326
+ var MinusButton = React3.forwardRef(function(_param, ref) {
1722
2327
  var onClick = _param.onClick, _param_color = _param.color, color = _param_color === void 0 ? "neutral300" : _param_color, rest = _object_without_properties(_param, [
1723
2328
  "onClick",
1724
2329
  "color"
1725
2330
  ]);
1726
2331
  return /* @__PURE__ */ jsxRuntime.jsx(Container2, {
2332
+ "data-shoplflow": "minusButton",
1727
2333
  children: /* @__PURE__ */ jsxRuntime.jsx(IconButton2, _object_spread_props(_object_spread({
1728
2334
  color: color,
1729
2335
  onClick: onClick,