@shoplflow/base 0.24.6 → 0.24.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/dist/index.js CHANGED
@@ -1,11 +1,11 @@
1
- import * as React3 from 'react';
2
- import React3__default, { createContext, forwardRef, useState, useEffect, useId, useCallback, useContext, useMemo } from 'react';
3
- import styled6 from '@emotion/styled';
1
+ import * as React2 from 'react';
2
+ import React2__default, { forwardRef, createContext, useState, useEffect, useId, useCallback, useContext, useMemo } from 'react';
3
+ import styled5 from '@emotion/styled';
4
4
  import { motion, AnimatePresence } from 'framer-motion';
5
5
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
6
6
  import { createPortal } from 'react-dom';
7
- import { noop, OutSideClick, useParentElementClick, useResizeObserver, isNullOrUndefined } from '@shoplflow/utils';
8
7
  import { css } from '@emotion/react';
8
+ import { noop, OutSideClick, useParentElementClick, useResizeObserver, isNullOrUndefined } from '@shoplflow/utils';
9
9
  import Scrollbars from 'react-custom-scrollbars-2';
10
10
  import { FloatingPortal, autoUpdate, offset, autoPlacement } from '@floating-ui/react';
11
11
  export { arrow, flip, hide, inline, offset, shift, size } from '@floating-ui/react';
@@ -154,7 +154,7 @@ var fadeInOut = {
154
154
  }
155
155
  }
156
156
  };
157
- var BackDropStyled = styled6(motion.div)`
157
+ var BackDropStyled = styled5(motion.div)`
158
158
  display: flex;
159
159
  align-items: center;
160
160
  justify-content: center;
@@ -180,126 +180,73 @@ var BackDrop = ({ children }) => {
180
180
  );
181
181
  };
182
182
  var BackDrop_default = BackDrop;
183
- var ModalHandlerContext = createContext({
184
- addModal: noop,
185
- removeModal: noop
186
- });
187
- var ModalContext = createContext([]);
188
- var SpaceMarginWrapper = styled6(motion.div)`
183
+ var getSizeBySizeVariant = (size2) => {
184
+ switch (size2) {
185
+ case "XS":
186
+ return "18px";
187
+ case "S":
188
+ return "24px";
189
+ case "M":
190
+ return "32px";
191
+ case "L":
192
+ return "48px";
193
+ case "XL":
194
+ return "72px";
195
+ default:
196
+ return "32px";
197
+ }
198
+ };
199
+ var StyledAvatar = styled5.picture`
200
+ display: flex;
201
+ align-items: center;
202
+ justify-content: center;
203
+ width: ${({ sizeVar }) => getSizeBySizeVariant(sizeVar)};
204
+ height: ${({ sizeVar }) => getSizeBySizeVariant(sizeVar)};
189
205
  position: relative;
206
+ overflow: hidden;
207
+ border-radius: 50%;
208
+ `;
209
+ var StyledAvatarContainer = styled5.div`
190
210
  display: flex;
191
211
  align-items: center;
192
212
  justify-content: center;
193
- flex-grow: 1;
194
- z-index: 101;
195
- padding: 32px 20px;
213
+ width: fit-content;
214
+ height: fit-content;
215
+ position: relative;
216
+ `;
217
+ var StyledAvatarImage = styled5.img`
196
218
  width: 100%;
197
219
  height: 100%;
198
220
  `;
199
- var ModalPortal = () => {
200
- const modal = useContext(ModalContext);
201
- return /* @__PURE__ */ jsx(Fragment, { children: createPortal(
202
- /* @__PURE__ */ jsx(AnimatePresence, { children: modal.map((item, index) => /* @__PURE__ */ jsx(BackDrop_default, { children: /* @__PURE__ */ jsx(SpaceMarginWrapper, { children: item.component }) }, index)) }),
203
- document.body
204
- ) });
205
- };
206
- var ModalPortal_default = ModalPortal;
207
- var ModalProvider = ({ children }) => {
208
- const [openedModals, setOpenedModals] = useState([]);
209
- const addModal = (component, id) => {
210
- setOpenedModals((modals) => {
211
- if (modals) {
212
- return [...modals, { component, id }];
213
- }
214
- return [{ component, id }];
215
- });
216
- };
217
- const removeModal = (props) => {
218
- const { id, deps } = props || {
219
- id: void 0,
220
- deps: void 0
221
- };
222
- const isIncludeAllProps = Boolean(id && deps);
223
- const isIncludeId = Boolean(id);
224
- const isNotIncludeAllProps = !id && Boolean(isNullOrUndefined(deps));
225
- const isIncludeDeps = Boolean(Boolean(!isNullOrUndefined(deps)) && !id);
226
- if (isIncludeAllProps) {
227
- throw new Error("id\uC640 deps\uB294 \uB3D9\uC2DC\uC5D0 \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");
228
- }
229
- if (isIncludeId) {
230
- setOpenedModals((modal) => {
231
- const filterModal = modal.filter((modal2) => modal2.id !== id);
232
- return [...filterModal];
233
- });
234
- return;
235
- }
236
- if (isNotIncludeAllProps || deps === 1) {
237
- setOpenedModals((modal) => {
238
- const removeModal2 = modal.slice(0, -1);
239
- return [...removeModal2];
240
- });
241
- return;
242
- }
243
- if (isIncludeDeps) {
244
- if (deps === 0 || deps === void 0) {
245
- return;
246
- }
247
- setOpenedModals((modal) => {
248
- const removeDeps = modal.slice(0, -deps);
249
- return [...removeDeps];
250
- });
251
- return;
252
- }
253
- };
254
- const dispatch = useMemo(() => ({ addModal, removeModal }), []);
255
- useEffect(() => {
256
- if (openedModals.length === 1) {
257
- document.body.style.cssText = "overflow:hidden";
258
- return () => {
259
- document.body.style.cssText = "overflow:unset";
260
- };
261
- }
262
- }, [openedModals.length]);
263
- return /* @__PURE__ */ jsx(ModalContext.Provider, { value: openedModals, children: /* @__PURE__ */ jsx(ModalHandlerContext.Provider, { value: dispatch, children }) });
264
- };
265
- var ModalProvider_default = ModalProvider;
266
- var PopperPortal = () => {
267
- return /* @__PURE__ */ jsx(Fragment, { children: createPortal(
268
- /* @__PURE__ */ jsx(
269
- "div",
270
- {
271
- id: "popper-portal-key",
272
- style: {
273
- zIndex: 20001,
274
- position: "relative"
275
- }
276
- }
277
- ),
278
- document.body
279
- ) });
280
- };
281
- var PopperPortal_default = PopperPortal;
282
- var ShoplflowProvider = ({ children, domain = "SHOPL" }) => {
283
- useDomain(domain);
284
- return /* @__PURE__ */ jsxs(ModalProvider_default, { children: [
285
- /* @__PURE__ */ jsx(PopperPortal_default, {}),
286
- /* @__PURE__ */ jsx(ModalPortal_default, {}),
287
- children
221
+ var StyledAvatarBadge = styled5.div`
222
+ position: absolute;
223
+ display: flex;
224
+ align-items: center;
225
+ justify-content: center;
226
+ width: fit-content;
227
+ height: fit-content;
228
+ bottom: 0;
229
+ right: 0;
230
+ `;
231
+
232
+ // src/assets/mocks/AvatarNone.png
233
+ var AvatarNone_default = "./AvatarNone-F5VQQNT7.png";
234
+ var Avatar = (_a) => {
235
+ var _b = _a, { src, badge } = _b, rest = __objRest(_b, ["src", "badge"]);
236
+ return /* @__PURE__ */ jsxs(StyledAvatarContainer, { children: [
237
+ /* @__PURE__ */ jsx(StyledAvatar, __spreadProps(__spreadValues({ "data-shoplflow": "Avatar" }, rest), { children: /* @__PURE__ */ jsx(StyledAvatarImage, { src: src != null ? src : AvatarNone_default }) })),
238
+ /* @__PURE__ */ jsx(StyledAvatarBadge, { children: badge })
288
239
  ] });
289
240
  };
290
- var ShoplflowProvider_default = ShoplflowProvider;
291
- var useHandleModal = () => {
292
- const { addModal, removeModal } = useContext(ModalHandlerContext);
293
- return {
294
- addModal,
295
- removeModal
296
- };
297
- };
298
- var useModalValue = () => {
299
- const modal = useContext(ModalContext);
300
- return {
301
- modal
302
- };
241
+ var Avatar_default = Avatar;
242
+
243
+ // src/components/Avatar/Avatar.types.ts
244
+ var AvatarSizeVariants = {
245
+ XS: "XS",
246
+ S: "S",
247
+ M: "M",
248
+ L: "L",
249
+ XL: "XL"
303
250
  };
304
251
 
305
252
  // src/styles/tokens.ts
@@ -493,75 +440,9 @@ var typographyTokens = {
493
440
  caption_700,
494
441
  caption_400
495
442
  };
496
- var getSizeBySizeVariant = (size2) => {
497
- switch (size2) {
498
- case "XS":
499
- return "18px";
500
- case "S":
501
- return "24px";
502
- case "M":
503
- return "32px";
504
- case "L":
505
- return "48px";
506
- case "XL":
507
- return "72px";
508
- default:
509
- return "32px";
510
- }
511
- };
512
- var StyledAvatar = styled6.picture`
513
- display: flex;
514
- align-items: center;
515
- justify-content: center;
516
- width: ${({ sizeVar }) => getSizeBySizeVariant(sizeVar)};
517
- height: ${({ sizeVar }) => getSizeBySizeVariant(sizeVar)};
518
- position: relative;
519
- overflow: hidden;
520
- border-radius: 50%;
521
- `;
522
- var StyledAvatarContainer = styled6.div`
523
- display: flex;
524
- align-items: center;
525
- justify-content: center;
526
- width: fit-content;
527
- height: fit-content;
528
- position: relative;
529
- `;
530
- var StyledAvatarImage = styled6.img`
531
- width: 100%;
532
- height: 100%;
533
- `;
534
- var StyledAvatarBadge = styled6.div`
535
- position: absolute;
536
- display: flex;
537
- align-items: center;
538
- justify-content: center;
539
- width: fit-content;
540
- height: fit-content;
541
- bottom: 0;
542
- right: 0;
543
- `;
544
-
545
- // src/assets/mocks/AvatarNone.png
546
- var AvatarNone_default = "./AvatarNone-F5VQQNT7.png";
547
- var Avatar = (_a) => {
548
- var _b = _a, { src, badge } = _b, rest = __objRest(_b, ["src", "badge"]);
549
- return /* @__PURE__ */ jsxs(StyledAvatarContainer, { children: [
550
- /* @__PURE__ */ jsx(StyledAvatar, __spreadProps(__spreadValues({ "data-shoplflow": "Avatar" }, rest), { children: /* @__PURE__ */ jsx(StyledAvatarImage, { src: src != null ? src : AvatarNone_default }) })),
551
- /* @__PURE__ */ jsx(StyledAvatarBadge, { children: badge })
552
- ] });
553
- };
554
- var Avatar_default = Avatar;
555
443
 
556
- // src/components/Avatar/Avatar.types.ts
557
- var AvatarSizeVariants = {
558
- XS: "XS",
559
- S: "S",
560
- M: "M",
561
- L: "L",
562
- XL: "XL"
563
- };
564
- var StyledStack = styled6.div`
444
+ // src/components/Stack/Stack.styled.ts
445
+ var StyledStack = styled5.div`
565
446
  display: flex;
566
447
  width: ${({ width }) => width};
567
448
  max-width: ${({ maxWidth }) => maxWidth};
@@ -643,7 +524,7 @@ var setEllipsis = (maxLines) => {
643
524
  text-overflow: ellipsis;
644
525
  `;
645
526
  };
646
- var StyledText = styled6.span`
527
+ var StyledText = styled5.span`
647
528
  display: ${({ display }) => display && display};
648
529
  align-items: center;
649
530
  color: ${({ color }) => color && colorTokens[color]};
@@ -738,7 +619,7 @@ var getModalBodyTopBottomPadding = (isIncludeHeader) => {
738
619
  padding-bottom: 24px;
739
620
  `;
740
621
  };
741
- var Container = styled6.div`
622
+ var Container = styled5.div`
742
623
  display: flex;
743
624
  flex-direction: column;
744
625
  border-radius: ${borderRadiusTokens.borderRadius08};
@@ -752,7 +633,7 @@ var Container = styled6.div`
752
633
  width: ${({ sizeVar }) => getModalWidthFromSize(sizeVar)}px;
753
634
  max-width: ${({ sizeVar }) => getModalWidthFromSize(sizeVar)}px;
754
635
  `;
755
- var HeaderContainer = styled6.div`
636
+ var HeaderContainer = styled5.div`
756
637
  display: flex;
757
638
  width: 100%;
758
639
  min-height: 64px;
@@ -761,7 +642,7 @@ var HeaderContainer = styled6.div`
761
642
  padding: 12px 16px 12px 24px;
762
643
  gap: 10px;
763
644
  `;
764
- var BodyContainer = styled6.div`
645
+ var BodyContainer = styled5.div`
765
646
  display: flex;
766
647
  width: 100%;
767
648
  height: 100%;
@@ -773,7 +654,7 @@ var BodyContainer = styled6.div`
773
654
  flex: 1;
774
655
  ${({ isIncludeHeader }) => getModalBodyTopBottomPadding(isIncludeHeader)}
775
656
  `;
776
- var ModalBodyContainerInner = styled6.div`
657
+ var ModalBodyContainerInner = styled5.div`
777
658
  display: grid;
778
659
  align-self: stretch;
779
660
  flex-direction: column;
@@ -782,7 +663,7 @@ var ModalBodyContainerInner = styled6.div`
782
663
  height: calc(100%);
783
664
  box-sizing: border-box;
784
665
  `;
785
- var ModalBodyContent = styled6.div`
666
+ var ModalBodyContent = styled5.div`
786
667
  display: flex;
787
668
  flex-direction: column;
788
669
  height: 100%;
@@ -790,7 +671,7 @@ var ModalBodyContent = styled6.div`
790
671
  padding: 0 24px;
791
672
  background: ${colorTokens.neutral0};
792
673
  `;
793
- var FooterContainer = styled6.div`
674
+ var FooterContainer = styled5.div`
794
675
  display: flex;
795
676
  width: 100%;
796
677
  flex-direction: row;
@@ -817,9 +698,9 @@ var MODAL_FOOTER_KEY = Symbol("MODAL_FOOTER");
817
698
  var ModalContainer = (_a) => {
818
699
  var _b = _a, { children, outsideClick = noop } = _b, rest = __objRest(_b, ["children", "outsideClick"]);
819
700
  const ref = useParentElementClick(outsideClick);
820
- const childrenArray = React3__default.Children.toArray(children);
701
+ const childrenArray = React2__default.Children.toArray(children);
821
702
  const findHeader = childrenArray.find((child) => {
822
- if (!React3__default.isValidElement(child)) {
703
+ if (!React2__default.isValidElement(child)) {
823
704
  return child;
824
705
  }
825
706
  if (child.type[MODAL_HEADER_KEY]) {
@@ -827,18 +708,18 @@ var ModalContainer = (_a) => {
827
708
  }
828
709
  });
829
710
  const findFooter = childrenArray.find((child) => {
830
- if (!React3__default.isValidElement(child)) {
711
+ if (!React2__default.isValidElement(child)) {
831
712
  return child;
832
713
  }
833
714
  if (child.type[MODAL_FOOTER_KEY]) {
834
715
  return child;
835
716
  }
836
717
  });
837
- const addPropInChildren = React3__default.Children.map(childrenArray, (child) => {
838
- if (!React3__default.isValidElement(child)) {
718
+ const addPropInChildren = React2__default.Children.map(childrenArray, (child) => {
719
+ if (!React2__default.isValidElement(child)) {
839
720
  return child;
840
721
  }
841
- return React3__default.cloneElement(child, {
722
+ return React2__default.cloneElement(child, {
842
723
  isIncludeHeader: Boolean(findHeader),
843
724
  isIncludeFooter: Boolean(findFooter),
844
725
  sizeVar: rest.sizeVar,
@@ -913,6 +794,85 @@ var ModalHeader = ({ children }) => {
913
794
  };
914
795
  ModalHeader[MODAL_HEADER_KEY] = true;
915
796
  var ModalHeader_default = ModalHeader;
797
+ var ModalHandlerContext = createContext({
798
+ addModal: noop,
799
+ removeModal: noop
800
+ });
801
+ var ModalContext = createContext([]);
802
+
803
+ // src/components/Modal/hooks/useModalValue.ts
804
+ var useModalValue = () => {
805
+ const modal = useContext(ModalContext);
806
+ return {
807
+ modal
808
+ };
809
+ };
810
+ var useHandleModal = () => {
811
+ const { addModal, removeModal } = useContext(ModalHandlerContext);
812
+ return {
813
+ addModal,
814
+ removeModal
815
+ };
816
+ };
817
+ var ModalProvider = ({ children }) => {
818
+ const [openedModals, setOpenedModals] = useState([]);
819
+ const addModal = (component, id) => {
820
+ setOpenedModals((modals) => {
821
+ if (modals) {
822
+ return [...modals, { component, id }];
823
+ }
824
+ return [{ component, id }];
825
+ });
826
+ };
827
+ const removeModal = (props) => {
828
+ const { id, deps } = props || {
829
+ id: void 0,
830
+ deps: void 0
831
+ };
832
+ const isIncludeAllProps = Boolean(id && deps);
833
+ const isIncludeId = Boolean(id);
834
+ const isNotIncludeAllProps = !id && Boolean(isNullOrUndefined(deps));
835
+ const isIncludeDeps = Boolean(Boolean(!isNullOrUndefined(deps)) && !id);
836
+ if (isIncludeAllProps) {
837
+ throw new Error("id\uC640 deps\uB294 \uB3D9\uC2DC\uC5D0 \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");
838
+ }
839
+ if (isIncludeId) {
840
+ setOpenedModals((modal) => {
841
+ const filterModal = modal.filter((modal2) => modal2.id !== id);
842
+ return [...filterModal];
843
+ });
844
+ return;
845
+ }
846
+ if (isNotIncludeAllProps || deps === 1) {
847
+ setOpenedModals((modal) => {
848
+ const removeModal2 = modal.slice(0, -1);
849
+ return [...removeModal2];
850
+ });
851
+ return;
852
+ }
853
+ if (isIncludeDeps) {
854
+ if (deps === 0 || deps === void 0) {
855
+ return;
856
+ }
857
+ setOpenedModals((modal) => {
858
+ const removeDeps = modal.slice(0, -deps);
859
+ return [...removeDeps];
860
+ });
861
+ return;
862
+ }
863
+ };
864
+ const dispatch = useMemo(() => ({ addModal, removeModal }), []);
865
+ useEffect(() => {
866
+ if (openedModals.length === 1) {
867
+ document.body.style.cssText = "overflow:hidden";
868
+ return () => {
869
+ document.body.style.cssText = "overflow:unset";
870
+ };
871
+ }
872
+ }, [openedModals.length]);
873
+ return /* @__PURE__ */ jsx(ModalContext.Provider, { value: openedModals, children: /* @__PURE__ */ jsx(ModalHandlerContext.Provider, { value: dispatch, children }) });
874
+ };
875
+ var ModalProvider_default = ModalProvider;
916
876
 
917
877
  // src/components/Modal/index.ts
918
878
  var Modal = {
@@ -921,7 +881,7 @@ var Modal = {
921
881
  Body: ModalBody_default,
922
882
  Footer: ModalFooter_default
923
883
  };
924
- var SwitchContainer = styled6.div`
884
+ var SwitchContainer = styled5.div`
925
885
  width: 32px;
926
886
  height: 32px;
927
887
  border-radius: 6px;
@@ -934,7 +894,7 @@ var SwitchContainer = styled6.div`
934
894
  background: ${({ isDisabled }) => !isDisabled && colorTokens.neutral400_5};
935
895
  }
936
896
  `;
937
- var StyledSwitch = styled6.input`
897
+ var StyledSwitch = styled5.input`
938
898
  appearance: none;
939
899
  border: none;
940
900
  border-radius: 12px;
@@ -1084,7 +1044,7 @@ var solidStyle = ({
1084
1044
  }
1085
1045
  `};
1086
1046
  `;
1087
- var StyledChip = styled6.button`
1047
+ var StyledChip = styled5.button`
1088
1048
  display: flex;
1089
1049
  align-items: center;
1090
1050
  justify-content: center;
@@ -1214,7 +1174,7 @@ var getStyleBySizeVar = (sizeVar) => {
1214
1174
  `;
1215
1175
  }
1216
1176
  };
1217
- var StyledChipButton = styled6.button`
1177
+ var StyledChipButton = styled5.button`
1218
1178
  display: flex;
1219
1179
  align-items: center;
1220
1180
  justify-content: center;
@@ -1333,7 +1293,7 @@ var getStyleBySizeVar2 = (sizeVar) => {
1333
1293
  `;
1334
1294
  }
1335
1295
  };
1336
- var StyledButton = styled6.button`
1296
+ var StyledButton = styled5.button`
1337
1297
  display: flex;
1338
1298
  align-items: center;
1339
1299
  justify-content: center;
@@ -1483,7 +1443,7 @@ var getStyleByStyleVar2 = (styleVar, color, isHovered) => {
1483
1443
  `;
1484
1444
  }
1485
1445
  };
1486
- var StyledIconButton = styled6.button`
1446
+ var StyledIconButton = styled5.button`
1487
1447
  display: flex;
1488
1448
  flex-shrink: 0;
1489
1449
  border-radius: ${borderRadiusTokens.borderRadius06};
@@ -1561,7 +1521,7 @@ var alertStyle = css`
1561
1521
  fill: ${colorTokens.red300};
1562
1522
  }
1563
1523
  `;
1564
- var StyledCallout = styled6.div`
1524
+ var StyledCallout = styled5.div`
1565
1525
  display: flex;
1566
1526
  justify-content: flex-start;
1567
1527
  align-items: start;
@@ -1571,12 +1531,12 @@ var StyledCallout = styled6.div`
1571
1531
  ${({ styleVar }) => styleVar === "INFORMATION" && informationStyle}
1572
1532
  ${({ styleVar }) => styleVar === "ALERT" && alertStyle}
1573
1533
  `;
1574
- var StyledCalloutIcon = styled6.svg`
1534
+ var StyledCalloutIcon = styled5.svg`
1575
1535
  display: flex;
1576
1536
  min-height: 20px;
1577
1537
  min-width: 20px;
1578
1538
  `;
1579
- styled6.div`
1539
+ styled5.div`
1580
1540
  padding: 2px 0;
1581
1541
  `;
1582
1542
  var Callout = (_a) => {
@@ -1599,13 +1559,13 @@ var CalloutTypes = {
1599
1559
  INFORMATION: "INFORMATION",
1600
1560
  ALERT: "ALERT"
1601
1561
  };
1602
- var StyledPopper = styled6.div`
1562
+ var StyledPopper = styled5.div`
1603
1563
  width: ${({ width }) => width != null ? width : "fit-content"};
1604
1564
  height: ${({ height }) => height && height};
1605
1565
  `;
1606
1566
  var PopperContext = createContext(null);
1607
1567
  var usePopper = () => {
1608
- const context = React3.useContext(PopperContext);
1568
+ const context = React2.useContext(PopperContext);
1609
1569
  if (context === null) {
1610
1570
  throw new Error("usePopper must be used within a PopperProvider");
1611
1571
  }
@@ -1669,7 +1629,7 @@ var PopperTrigger = forwardRef(
1669
1629
  return /* @__PURE__ */ jsx(StyledPopper, __spreadProps(__spreadValues({ ref: refs, "data-shoplflow": "Popper" }, rest), { children }));
1670
1630
  }
1671
1631
  );
1672
- var PopperPortal2 = forwardRef(
1632
+ var PopperPortal = forwardRef(
1673
1633
  ({ children, animation: initialAnimation }, ref) => {
1674
1634
  const { floatingStyles, setFloating, isOpen } = usePopper();
1675
1635
  const animation = initialAnimation != null ? initialAnimation : fadeInOut;
@@ -1688,7 +1648,7 @@ var PopperPortal2 = forwardRef(
1688
1648
  }
1689
1649
  );
1690
1650
  Popper.Trigger = PopperTrigger;
1691
- Popper.Portal = PopperPortal2;
1651
+ Popper.Portal = PopperPortal;
1692
1652
  var Popper_default = Popper;
1693
1653
  var getDropdownHeightBySizeVar = (size2) => {
1694
1654
  switch (size2) {
@@ -1751,10 +1711,10 @@ var getDropdownIconSizeBySizeVar = (size2) => {
1751
1711
  `;
1752
1712
  }
1753
1713
  };
1754
- var StyledDropdown = styled6.div`
1714
+ var StyledDropdown = styled5.div`
1755
1715
  width: ${({ width }) => width};
1756
1716
  `;
1757
- var StyledDropdownContent = styled6.div`
1717
+ var StyledDropdownContent = styled5.div`
1758
1718
  display: flex;
1759
1719
  flex-direction: column;
1760
1720
  background: ${colorTokens.neutral0};
@@ -1763,7 +1723,7 @@ var StyledDropdownContent = styled6.div`
1763
1723
  border-radius: 6px;
1764
1724
  box-shadow: ${boxShadowTokens.dropShadow};
1765
1725
  `;
1766
- var StyledDropdownButton = styled6.button`
1726
+ var StyledDropdownButton = styled5.button`
1767
1727
  display: flex;
1768
1728
  flex-direction: row;
1769
1729
  align-items: center;
@@ -1778,7 +1738,7 @@ var StyledDropdownButton = styled6.button`
1778
1738
  cursor: not-allowed;
1779
1739
  `}
1780
1740
  `;
1781
- var DropdownButtonIcon = styled6(motion.div)`
1741
+ var DropdownButtonIcon = styled5(motion.div)`
1782
1742
  display: flex;
1783
1743
  align-items: center;
1784
1744
  justify-content: center;
@@ -1807,7 +1767,7 @@ var getBorderColorByStatus = ({ isFocused, isError, isHovered, disabled }) => {
1807
1767
  }
1808
1768
  return colorTokens.neutral300;
1809
1769
  };
1810
- var InputWrapper = styled6.label`
1770
+ var InputWrapper = styled5.label`
1811
1771
  display: flex;
1812
1772
  align-items: center;
1813
1773
  width: ${({ width }) => width != null ? width : "100%"};
@@ -1853,7 +1813,7 @@ var getIconSize = (size2) => {
1853
1813
  return "24px";
1854
1814
  }
1855
1815
  };
1856
- var StyledIcon = styled6.svg`
1816
+ var StyledIcon = styled5.svg`
1857
1817
  width: ${({ sizeVar }) => sizeVar && getIconSize(sizeVar)};
1858
1818
  min-width: ${({ sizeVar }) => sizeVar && getIconSize(sizeVar)};
1859
1819
  height: ${({ sizeVar }) => sizeVar && getIconSize(sizeVar)};
@@ -1896,16 +1856,7 @@ var DropdownButton = forwardRef(
1896
1856
  height: getDropdownHeightBySizeVar(sizeVar),
1897
1857
  children: /* @__PURE__ */ jsxs(StyledDropdownButton, __spreadProps(__spreadValues({ ref, onClick: handleOnClick, disabled }, rest), { sizeVar, children: [
1898
1858
  leftSource && leftSource,
1899
- value ? /* @__PURE__ */ jsx(
1900
- Text_default,
1901
- {
1902
- typography: getDropdownFontSizeBySizeVar(sizeVar),
1903
- color: "neutral700",
1904
- textOverflow: "ellipsis",
1905
- lineClamp: 1,
1906
- children: value
1907
- }
1908
- ) : /* @__PURE__ */ jsx(
1859
+ value || /* @__PURE__ */ jsx(
1909
1860
  Text_default,
1910
1861
  {
1911
1862
  typography: getDropdownFontSizeBySizeVar(sizeVar),
@@ -1996,12 +1947,12 @@ var Dropdown = ({
1996
1947
  Dropdown.Button = DropdownButton;
1997
1948
  Dropdown.Content = DropdownContent;
1998
1949
  var Dropdown_default = Dropdown;
1999
- var Container2 = styled6.div`
1950
+ var Container2 = styled5.div`
2000
1951
  width: 32px;
2001
1952
  height: 32px;
2002
1953
  padding: 7px;
2003
1954
  `;
2004
- var IconButton2 = styled6.button`
1955
+ var IconButton2 = styled5.button`
2005
1956
  display: flex;
2006
1957
  width: 16px;
2007
1958
  height: 16px;
@@ -2108,7 +2059,7 @@ var getStylesByStyleVariant = (styleVariant, isSelected, isHovered) => {
2108
2059
  return "";
2109
2060
  }
2110
2061
  };
2111
- var StyledCheckbox = styled6.button`
2062
+ var StyledCheckbox = styled5.button`
2112
2063
  display: flex;
2113
2064
  align-items: center;
2114
2065
  justify-content: center;
@@ -2123,7 +2074,7 @@ var StyledCheckbox = styled6.button`
2123
2074
  ${({ styleVar, isSelected, isHovered }) => getStylesByStyleVariant(styleVar, isSelected, isHovered)};
2124
2075
  ${({ disabled }) => getDisabledStyle(disabled)}
2125
2076
  `;
2126
- var Container3 = styled6.button`
2077
+ var Container3 = styled5.button`
2127
2078
  display: flex;
2128
2079
  align-items: center;
2129
2080
  justify-content: center;
@@ -2209,7 +2160,7 @@ var getSelectedStyle = (isHovered) => {
2209
2160
  `}
2210
2161
  `;
2211
2162
  };
2212
- var StyledRadio = styled6.div`
2163
+ var StyledRadio = styled5.div`
2213
2164
  display: flex;
2214
2165
  align-items: center;
2215
2166
  justify-content: center;
@@ -2231,7 +2182,7 @@ var StyledRadio = styled6.div`
2231
2182
  ${({ isSelected, isHovered }) => isSelected && getSelectedStyle(isHovered)}
2232
2183
  ${({ disabled }) => getDisabledStyle(disabled)}
2233
2184
  `;
2234
- var Container4 = styled6.button`
2185
+ var Container4 = styled5.button`
2235
2186
  display: flex;
2236
2187
  align-items: center;
2237
2188
  justify-content: center;
@@ -2308,7 +2259,7 @@ var getFontStylesBySizeVar = (sizeVar) => {
2308
2259
  return "body1_400";
2309
2260
  }
2310
2261
  };
2311
- var StyledMenu = styled6.li`
2262
+ var StyledMenu = styled5.li`
2312
2263
  display: flex;
2313
2264
  width: 100%;
2314
2265
  flex-direction: row;
@@ -2351,7 +2302,7 @@ var Menu = (_a) => {
2351
2302
  "disabled"
2352
2303
  ]);
2353
2304
  const [selected, handleToggle] = useOnToggle(isSelected, defaultSelected);
2354
- const LeftSourceClone = leftSource ? React3__default.cloneElement(leftSource, __spreadProps(__spreadValues({}, rest), {
2305
+ const LeftSourceClone = leftSource ? React2__default.cloneElement(leftSource, __spreadProps(__spreadValues({}, rest), {
2355
2306
  isSelected
2356
2307
  })) : leftSource;
2357
2308
  const handleOnClick = (e) => {
@@ -2383,7 +2334,7 @@ var MenuSizeVariants = {
2383
2334
  S: "S",
2384
2335
  M: "M"
2385
2336
  };
2386
- var StyledList = styled6.li`
2337
+ var StyledList = styled5.li`
2387
2338
  display: flex;
2388
2339
  flex-direction: row;
2389
2340
  width: 100%;
@@ -2398,7 +2349,7 @@ var StyledList = styled6.li`
2398
2349
  background: ${colorTokens.neutral100};
2399
2350
  }
2400
2351
  `;
2401
- var StyledText2Rows = styled6.div`
2352
+ var StyledText2Rows = styled5.div`
2402
2353
  display: flex;
2403
2354
  flex-direction: column;
2404
2355
  justify-content: center;
@@ -2406,7 +2357,7 @@ var StyledText2Rows = styled6.div`
2406
2357
  `;
2407
2358
  var List = (_a) => {
2408
2359
  var _b = _a, { children, leftSource, rightSource } = _b, rest = __objRest(_b, ["children", "leftSource", "rightSource"]);
2409
- const LeftSourceClone = leftSource ? React3__default.cloneElement(leftSource, __spreadValues({}, rest)) : leftSource;
2360
+ const LeftSourceClone = leftSource ? React2__default.cloneElement(leftSource, __spreadValues({}, rest)) : leftSource;
2410
2361
  if (!children && rightSource) {
2411
2362
  throw new Error("RightSource\uB294 children\uC774 \uD544\uC218\uB85C \uD3EC\uD568\uB418\uC5B4\uC57C\uD569\uB2C8\uB2E4.");
2412
2363
  }
@@ -2508,7 +2459,7 @@ var getColorsByStyleVariant = (styleVariant, color = "neutral700") => {
2508
2459
  `;
2509
2460
  }
2510
2461
  };
2511
- var StyledTag = styled6.div`
2462
+ var StyledTag = styled5.div`
2512
2463
  display: flex;
2513
2464
  align-items: center;
2514
2465
  flex-direction: row;
@@ -2551,7 +2502,7 @@ var TagSizeVariants = {
2551
2502
  S: "S",
2552
2503
  M: "M"
2553
2504
  };
2554
- var StyledInput = styled6.input`
2505
+ var StyledInput = styled5.input`
2555
2506
  padding: 4px 0 4px 12px;
2556
2507
  background-color: transparent;
2557
2508
  width: 100%;
@@ -2572,13 +2523,13 @@ var StyledInput = styled6.input`
2572
2523
  -moz-appearance: textfield;
2573
2524
  }
2574
2525
  `;
2575
- var RightElementWrapper = styled6.div`
2526
+ var RightElementWrapper = styled5.div`
2576
2527
  display: flex;
2577
2528
  flex-direction: row;
2578
2529
  align-items: center;
2579
2530
  padding: 0 8px 0 0;
2580
2531
  `;
2581
- var Wrapper = styled6.div`
2532
+ var Wrapper = styled5.div`
2582
2533
  display: flex;
2583
2534
  width: 100%;
2584
2535
  justify-content: flex-end;
@@ -2644,7 +2595,7 @@ var Input = forwardRef(
2644
2595
  const [type, setType] = useState("text");
2645
2596
  const [isHovered, setIsHovered] = useState(false);
2646
2597
  const uniqueId = useId();
2647
- const inputRef = React3__default.useRef(null);
2598
+ const inputRef = React2__default.useRef(null);
2648
2599
  const refs = useMergeRefs(ref, inputRef);
2649
2600
  const convertToString = useCallback((value2) => {
2650
2601
  if (typeof value2 !== "number") {
@@ -2782,7 +2733,7 @@ var Input = forwardRef(
2782
2733
  }
2783
2734
  );
2784
2735
  var Input_default = Input;
2785
- var StyledInputButton = styled6.div`
2736
+ var StyledInputButton = styled5.div`
2786
2737
  display: flex;
2787
2738
  flex-direction: row;
2788
2739
  align-items: center;
@@ -2797,7 +2748,7 @@ var StyledInputButton = styled6.div`
2797
2748
  cursor: not-allowed;
2798
2749
  `}
2799
2750
  `;
2800
- var StyledInputButtonContent = styled6.input`
2751
+ var StyledInputButtonContent = styled5.input`
2801
2752
  display: flex;
2802
2753
  width: 100%;
2803
2754
  border: none;
@@ -2874,7 +2825,7 @@ var InputButton = forwardRef(
2874
2825
  }
2875
2826
  );
2876
2827
  var InputButton_default = InputButton;
2877
- var BottomElementWrapper = styled6.div`
2828
+ var BottomElementWrapper = styled5.div`
2878
2829
  display: flex;
2879
2830
  width: 100%;
2880
2831
  flex-direction: row;
@@ -2882,7 +2833,7 @@ var BottomElementWrapper = styled6.div`
2882
2833
  gap: 8px;
2883
2834
  background-color: ${colorTokens.neutral0};
2884
2835
  `;
2885
- var StyledTextarea = styled6.textarea`
2836
+ var StyledTextarea = styled5.textarea`
2886
2837
  padding: 8px 12px 0 12px;
2887
2838
  background-color: transparent;
2888
2839
  resize: none;
@@ -3010,7 +2961,7 @@ var TextArea = forwardRef(
3010
2961
  }
3011
2962
  );
3012
2963
  var TextArea_default = TextArea;
3013
- var StyledSelectInputButton = styled6.div`
2964
+ var StyledSelectInputButton = styled5.div`
3014
2965
  display: flex;
3015
2966
  flex-direction: row;
3016
2967
  align-items: center;
@@ -3103,6 +3054,50 @@ var SelectInputButton = (_a) => {
3103
3054
  );
3104
3055
  };
3105
3056
  var SelectInputButton_default = SelectInputButton;
3057
+ var SpaceMarginWrapper = styled5(motion.div)`
3058
+ position: relative;
3059
+ display: flex;
3060
+ align-items: center;
3061
+ justify-content: center;
3062
+ flex-grow: 1;
3063
+ z-index: 101;
3064
+ padding: 32px 20px;
3065
+ width: 100%;
3066
+ height: 100%;
3067
+ `;
3068
+ var ModalPortal = () => {
3069
+ const modal = useContext(ModalContext);
3070
+ return /* @__PURE__ */ jsx(Fragment, { children: createPortal(
3071
+ /* @__PURE__ */ jsx(AnimatePresence, { children: modal.map((item, index) => /* @__PURE__ */ jsx(BackDrop_default, { children: /* @__PURE__ */ jsx(SpaceMarginWrapper, { children: item.component }) }, index)) }),
3072
+ document.body
3073
+ ) });
3074
+ };
3075
+ var ModalPortal_default = ModalPortal;
3076
+ var PopperPortal2 = () => {
3077
+ return /* @__PURE__ */ jsx(Fragment, { children: createPortal(
3078
+ /* @__PURE__ */ jsx(
3079
+ "div",
3080
+ {
3081
+ id: "popper-portal-key",
3082
+ style: {
3083
+ zIndex: 20001,
3084
+ position: "relative"
3085
+ }
3086
+ }
3087
+ ),
3088
+ document.body
3089
+ ) });
3090
+ };
3091
+ var PopperPortal_default = PopperPortal2;
3092
+ var ShoplflowProvider = ({ children, domain = "SHOPL" }) => {
3093
+ useDomain(domain);
3094
+ return /* @__PURE__ */ jsxs(ModalProvider_default, { children: [
3095
+ /* @__PURE__ */ jsx(PopperPortal_default, {}),
3096
+ /* @__PURE__ */ jsx(ModalPortal_default, {}),
3097
+ children
3098
+ ] });
3099
+ };
3100
+ var ShoplflowProvider_default = ShoplflowProvider;
3106
3101
  /*! Bundled license information:
3107
3102
 
3108
3103
  classnames/index.js:
@@ -3113,6 +3108,6 @@ classnames/index.js:
3113
3108
  *)
3114
3109
  */
3115
3110
 
3116
- export { Avatar_default as Avatar, AvatarSizeVariants, Button_default as Button, ButtonSizeVariants, ButtonStyleVariants, CHECKBOX_SYMBOL_KEY, Callout_default as Callout, CalloutTypes, Checkbox_default as Checkbox, CheckboxStyleVariants, ChipButton_default as ChipButton, ChipButtonSizeVariants, ChipButtonStyleVariants, ChipToggle_default as ChipToggle, ChipToggleSizeVariants, ChipToggleStyleVariants, Dropdown_default as Dropdown, DropdownButtonIcon, Icon_default as Icon, IconButton_default as IconButton, IconButtonSizeVariants, IconButtonStyleVariants, IconSizeVariants, Input_default as Input, InputButton_default as InputButton, List_default as List, MODAL_FOOTER_KEY, MODAL_HEADER_KEY, Menu_default as Menu, MenuSizeVariants, MinusButton_default as MinusButton, Modal, ModalPortal_default as ModalProvider, ModalSize, MotionStack, Popper_default as Popper, PopperPortal2 as PopperPortal, PopperTrigger, RADIO_SYMBOL_KEY, Radio_default as Radio, ScrollArea_default as ScrollArea, SelectInputButton_default as SelectInputButton, ShoplflowProvider_default as ShoplflowProvider, Stack_default as Stack, StyledDropdown, StyledDropdownButton, StyledDropdownContent, StyledIcon, StyledInputButton, StyledInputButtonContent, StyledList, StyledMenu, StyledPopper, StyledStack, StyledText2Rows, Switch_default as Switch, Tag_default as Tag, TagSizeVariants, TagStyleVariants, Text_default as Text, Text2Rows, TextArea_default as TextArea, borderRadiusTokens, boxShadowTokens, colorTokens, fontWeightTokens, getDomain, getDropdownFontSizeBySizeVar, getDropdownHeightBySizeVar, getDropdownIconSizeBySizeVar, getDropdownStyleBySizeVar, getFontStylesBySizeVar, spacingTokens, typographyTokens, useDomain, useHandleModal, useModalValue };
3111
+ export { Avatar_default as Avatar, AvatarSizeVariants, Button_default as Button, ButtonSizeVariants, ButtonStyleVariants, CHECKBOX_SYMBOL_KEY, Callout_default as Callout, CalloutTypes, Checkbox_default as Checkbox, CheckboxStyleVariants, ChipButton_default as ChipButton, ChipButtonSizeVariants, ChipButtonStyleVariants, ChipToggle_default as ChipToggle, ChipToggleSizeVariants, ChipToggleStyleVariants, Dropdown_default as Dropdown, DropdownButtonIcon, Icon_default as Icon, IconButton_default as IconButton, IconButtonSizeVariants, IconButtonStyleVariants, IconSizeVariants, Input_default as Input, InputButton_default as InputButton, List_default as List, MODAL_FOOTER_KEY, MODAL_HEADER_KEY, Menu_default as Menu, MenuSizeVariants, MinusButton_default as MinusButton, Modal, ModalContext, ModalHandlerContext, ModalPortal_default as ModalProvider, ModalSize, MotionStack, Popper_default as Popper, PopperPortal, PopperTrigger, RADIO_SYMBOL_KEY, Radio_default as Radio, ScrollArea_default as ScrollArea, SelectInputButton_default as SelectInputButton, ShoplflowProvider_default as ShoplflowProvider, Stack_default as Stack, StyledDropdown, StyledDropdownButton, StyledDropdownContent, StyledIcon, StyledInputButton, StyledInputButtonContent, StyledList, StyledMenu, StyledPopper, StyledStack, StyledText2Rows, Switch_default as Switch, Tag_default as Tag, TagSizeVariants, TagStyleVariants, Text_default as Text, Text2Rows, TextArea_default as TextArea, borderRadiusTokens, boxShadowTokens, colorTokens, fontWeightTokens, getDomain, getDropdownFontSizeBySizeVar, getDropdownHeightBySizeVar, getDropdownIconSizeBySizeVar, getDropdownStyleBySizeVar, getFontStylesBySizeVar, spacingTokens, typographyTokens, useDomain, useHandleModal, useModalValue };
3117
3112
  //# sourceMappingURL=out.js.map
3118
3113
  //# sourceMappingURL=index.js.map