@shoplflow/base 0.6.0 → 0.7.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
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var oe=Object.create;var O=Object.defineProperty;var ee=Object.getOwnPropertyDescriptor;var te=Object.getOwnPropertyNames;var re=Object.getPrototypeOf,ne=Object.prototype.hasOwnProperty;var ae=(o,t)=>{for(var e in t)O(o,e,{get:t[e],enumerable:!0})},
|
|
1
|
+
"use strict";var oe=Object.create;var O=Object.defineProperty;var ee=Object.getOwnPropertyDescriptor;var te=Object.getOwnPropertyNames;var re=Object.getPrototypeOf,ne=Object.prototype.hasOwnProperty;var ae=(o,t)=>{for(var e in t)O(o,e,{get:t[e],enumerable:!0})},no=(o,t,e,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of te(t))!ne.call(o,r)&&r!==e&&O(o,r,{get:()=>t[r],enumerable:!(a=ee(t,r))||a.enumerable});return o};var c=(o,t,e)=>(e=o!=null?oe(re(o)):{},no(t||!o||!o.__esModule?O(e,"default",{value:o,enumerable:!0}):e,o)),ie=o=>no(O({},"__esModule",{value:!0}),o);var dr={};ae(dr,{ChipButton:()=>Qo,ChipButtonSizeVariants:()=>to,ChipButtonStyleVariants:()=>eo,ChipToggle:()=>Uo,ChipToggleSizeVariants:()=>nr,ChipToggleStyleVariants:()=>J,MODAL_BODY_KEY:()=>q,MODAL_FOOTER_KEY:()=>w,MODAL_HEADER_KEY:()=>B,Modal:()=>rr,ModalProvider:()=>L,ModalSize:()=>Eo,MotionStack:()=>U,ShoplflowProvider:()=>ho,Stack:()=>bo,StyledStack:()=>K,Text:()=>M,borderRadiusTokens:()=>f,boxShadowTokens:()=>z,colorTokens:()=>i,fontWeightTokens:()=>xo,spacingTokens:()=>R,typographyTokens:()=>To,useDomain:()=>W,useHandleModal:()=>pe,useModalStore:()=>g,useModalValue:()=>se,useOutsideClick:()=>io,useResizeObserver:()=>Y});module.exports=ie(dr);var V=c(require("react"),1);var P=require("react"),W=({domain:o="SHOPL"})=>{let[t,e]=(0,P.useState)(void 0);(0,P.useEffect)(()=>{o&&e(o)},[o]),(0,P.useEffect)(()=>{t&&(document.documentElement.dataset.shoplflow=t?.toLowerCase())},[t])};var S=c(require("react"),1);var ao=require("zustand"),g=(0,ao.create)(o=>({modal:[],addModal:(t,e)=>o(a=>({modal:[...a.modal,{component:t,id:e}]})),removeModal:t=>{let{id:e,deps:a=1}=t||{id:void 0,deps:0},r=!!(e&&String(a)),p=!!e,l=!e&&!a,s=!!String(a)&&!e;if(r)throw new Error("id\uC640 deps\uB294 \uB3D9\uC2DC\uC5D0 \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");if(p){o(n=>({modal:[...n.modal.filter(m=>m.id!==e)]}));return}if(l||a===1){o(n=>({modal:[...n.modal.slice(0,-1)]}));return}if(s){o(n=>({modal:[...n.modal.slice(0,-a+1)]}));return}}}));var pe=()=>{let o=g(e=>e.addModal),t=g(e=>e.removeModal);return{addModal:o,removeModal:t}};var se=()=>({modal:g(t=>t.modal)});var T=require("react"),io=(o,t)=>{let e=t??(0,T.useRef)(null),a=(0,T.useCallback)(r=>{e.current?.parentNode&&!e.current?.contains(r.target)&&o(r.target)},[e,o]);return(0,T.useEffect)(()=>{let r=e.current?.parentNode;if(r)return r.addEventListener("click",a),()=>{r.removeEventListener("click",a)}},[e,a]),{ref:e}},po=io;var D=require("react"),Y=(o,t={trackWidth:!0,trackHeight:!0})=>{let[e,a]=(0,D.useState)({width:0,height:0});return(0,D.useEffect)(()=>{let r=new ResizeObserver(p=>{p.forEach(l=>{if(l.target===o){let{width:s,height:n}=l.contentRect,d={...e};t.trackWidth&&s!==e.width&&(d.width=s),t.trackHeight&&n!==e.height&&(d.height=n),(d.width!==e.width||d.height!==e.height)&&a(d)}})});return r.observe(o),()=>{r.disconnect()}},[o,t.trackWidth,t.trackHeight,e]),e};var fo=c(require("react"),1);var so={initial:{opacity:0},animate:{opacity:1,transition:{duration:.1}},exit:{opacity:0,transition:{duration:.1}}};var lo=c(require("@emotion/styled"),1),co=require("framer-motion"),mo=(0,lo.default)(co.motion.div)`
|
|
2
2
|
display: flex;
|
|
3
3
|
align-items: center;
|
|
4
4
|
justify-content: center;
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
width: 100%;
|
|
10
10
|
height: 100%;
|
|
11
11
|
background: rgba(51, 51, 51, 0.6);
|
|
12
|
-
`;var le=({children:o})=>
|
|
12
|
+
`;var le=({children:o})=>fo.default.createElement(mo,{variants:so,initial:"initial",animate:"animate",exit:"exit"},o),uo=le;var yo=require("react-dom"),H=require("framer-motion"),go=c(require("@emotion/styled"),1),de=(0,go.default)(H.motion.div)`
|
|
13
13
|
position: relative;
|
|
14
14
|
display: flex;
|
|
15
15
|
align-items: center;
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
padding: 32px 20px;
|
|
20
20
|
width: 100%;
|
|
21
21
|
height: 100%;
|
|
22
|
-
`,ce=()=>{let o=g(t=>t.modal);return S.default.createElement(S.default.Fragment,null,(0,
|
|
22
|
+
`,ce=()=>{let o=g(t=>t.modal);return S.default.createElement(S.default.Fragment,null,(0,yo.createPortal)(S.default.createElement(H.AnimatePresence,null,o.map((t,e)=>S.default.createElement(uo,{key:e},S.default.createElement(de,null,t.component)))),document.body))},L=ce;var me=({children:o,domain:t="SHOPL"})=>(W({domain:t}),V.default.createElement(V.default.Fragment,null,V.default.createElement(L,null),o)),ho=me;var fe="var(--font-weight-regular)",ue="var(--font-weight-medium)",ye="var(--font-weight-bold)",xo={fontWeightRegular:fe,fontWeightMedium:ue,fontWeightBold:ye},ge="var(--border-radius04)",he="var(--border-radius06)",xe="var(--border-radius08)",Te="var(--border-radius12)",Se="var(--border-radius16)",be="var(--border-radius20)",f={borderRadius04:ge,borderRadius06:he,borderRadius08:xe,borderRadius12:Te,borderRadius16:Se,borderRadius20:be},Me="var(--coolgray300)",ke="var(--coolgray200)",Ce="var(--coolgray100)",ve="var(--coolgray50)",Pe="var(--navy400)",_e="var(--navy300)",Be="var(--neutral0)",we="var(--neutral100)",Ee="var(--neutral150)",$e="var(--neutral200)",Oe="var(--neutral300)",De="var(--neutral350)",He="var(--neutral400)",Le="var(--neutral500)",Ve="var(--neutral600)",Re="var(--neutral700)",ze="var(--neutral400_5)",Ae="var(--red300)",Ne="var(--red200)",Xe="var(--red100)",Fe="var(--ocean300)",Ie="var(--ocean200)",We="var(--ocean100)",Ye="var(--purple400)",Ke="var(--purple300)",je="var(--purple100)",Ue="var(--yellow300)",Ze="var(--yellow200)",Ge="var(--yellow100)",qe="var(--green300)",Je="var(--green200)",Qe="var(--green100)",ot="var(--shopl400)",et="var(--shopl300)",tt="var(--shopl200)",rt="var(--shopl150)",nt="var(--shopl100)",at="var(--hada400)",it="var(--hada300)",pt="var(--hada200)",st="var(--hada150)",lt="var(--hada100)",dt="var(--background)",ct="var(--primary100)",mt="var(--primary150)",ft="var(--primary200)",ut="var(--primary300)",yt="var(--primary400)",i={coolgray300:Me,coolgray200:ke,coolgray100:Ce,coolgray50:ve,navy400:Pe,navy300:_e,neutral0:Be,neutral100:we,neutral150:Ee,neutral200:$e,neutral300:Oe,neutral350:De,neutral400:He,neutral500:Le,neutral600:Ve,neutral700:Re,neutral400_5:ze,red300:Ae,red200:Ne,red100:Xe,ocean300:Fe,ocean200:Ie,ocean100:We,purple400:Ye,purple300:Ke,purple100:je,yellow300:Ue,yellow200:Ze,yellow100:Ge,green300:qe,green200:Je,green100:Qe,shopl400:ot,shopl300:et,shopl200:tt,shopl150:rt,shopl100:nt,hada400:at,hada300:it,hada200:pt,hada150:st,hada100:lt,background:dt,primary100:ct,primary150:mt,primary200:ft,primary300:ut,primary400:yt},gt="var(--spacing04)",ht="var(--spacing06)",xt="var(--spacing08)",Tt="var(--spacing12)",St="var(--spacing16)",bt="var(--spacing20)",Mt="var(--spacing24)",kt="var(--spacing30)",Ct="var(--spacing32)",vt="var(--spacing40)",R={spacing04:gt,spacing06:ht,spacing08:xt,spacing12:Tt,spacing16:St,spacing20:bt,spacing24:Mt,spacing30:kt,spacing32:Ct,spacing40:vt},Pt="var(--dropShadow)",z={dropShadow:Pt},_t=".heading1_700",Bt=".heading1_400",wt=".heading2_700",Et=".heading2_400",$t=".heading3_700",Ot=".heading3_400",Dt=".title1_700",Ht=".title1_400",Lt=".title2_700",Vt=".title2_500",Rt=".title2_400",zt=".body1_700",At=".body1_500",Nt=".body1_400",Xt=".body2_700",Ft=".body2_500",It=".body2_400",Wt=".body3_400",Yt=".body3_500",Kt=".caption_400",To={heading1_700:_t,heading1_400:Bt,heading2_700:wt,heading2_400:Et,heading3_700:$t,heading3_400:Ot,title1_700:Dt,title1_400:Ht,title2_700:Lt,title2_500:Vt,title2_400:Rt,body1_700:zt,body1_500:At,body1_400:Nt,body2_700:Xt,body2_500:Ft,body2_400:It,body3_400:Wt,body3_500:Yt,caption_400:Kt};var A=c(require("react"),1),N=require("framer-motion");var So=c(require("@emotion/styled"),1);var K=So.default.div`
|
|
23
23
|
display: flex;
|
|
24
24
|
width: ${({width:o})=>o};
|
|
25
25
|
height: ${({height:o})=>o};
|
|
@@ -32,14 +32,14 @@
|
|
|
32
32
|
background: ${({background:o})=>o?i[o]:"transparent"};
|
|
33
33
|
border-radius: ${({radius:o})=>o&&f[o]};
|
|
34
34
|
animation: 0.2s all ease-in-out;
|
|
35
|
-
`;var j=o=>(0,A.forwardRef)(function({as:e="div",spacing:a=o?.spacing??"spacing08",direction:r=o?.direction??"column",align:
|
|
35
|
+
`;var j=o=>(0,A.forwardRef)(function({as:e="div",spacing:a=o?.spacing??"spacing08",direction:r=o?.direction??"column",align:p=o?.align??"flex-start",justify:l=o?.justify??"flex-start",width:s=o?.width??"initial",height:n=o?.height??"initial",flexWrap:d=o?.flexWrap??"initial",flex:m=o?.flex??"initial",radius:y=o?.radius,background:C=o?.background,...v},x){return A.default.createElement(K,{as:e,spacing:a,ref:x,direction:r,align:p,justify:l,width:s,height:n,flexWrap:d,flex:m,background:C,radius:y,...v},v.children)}),b=j();b.Vertical=j({direction:"column"});b.Horizontal=j({direction:"row"});var U=(0,N.motion)(b);U.Vertical=(0,N.motion)(b.Vertical);U.Horizontal=(0,N.motion)(b.Horizontal);var bo=b;var X=c(require("react"),1);var _=require("@emotion/react"),Mo=c(require("@emotion/styled"),1);var jt=o=>_.css`
|
|
36
36
|
display: -webkit-box;
|
|
37
37
|
line-clamp: ${o};
|
|
38
38
|
-webkit-line-clamp: ${o};
|
|
39
39
|
-webkit-box-orient: vertical;
|
|
40
40
|
overflow: hidden;
|
|
41
41
|
text-overflow: ellipsis;
|
|
42
|
-
`,
|
|
42
|
+
`,ko=Mo.default.span`
|
|
43
43
|
display: ${({display:o})=>o&&o};
|
|
44
44
|
align-items: center;
|
|
45
45
|
color: ${({color:o})=>o&&i[o]};
|
|
@@ -55,13 +55,13 @@
|
|
|
55
55
|
${({wordBreak:o})=>o&&_.css`
|
|
56
56
|
word-break: ${o};
|
|
57
57
|
`};
|
|
58
|
-
`;var Ut=(0,X.forwardRef)(({children:o,typography:t="body1_400",whiteSpace:e,color:a="neutral700",display:r="inline-block",textAlign:
|
|
58
|
+
`;var Ut=(0,X.forwardRef)(({children:o,typography:t="body1_400",whiteSpace:e,color:a="neutral700",display:r="inline-block",textAlign:p="inherit",className:l,...s},n)=>X.default.createElement(ko,{ref:n,whiteSpace:e,className:l?`${t} ${l}`:t,color:a,display:r,textAlign:p,...s},o)),M=Ut;var u=c(require("react"),1);var k=c(require("@emotion/styled"),1),Z=require("@emotion/react");var Zt=400,Gt=500,qt=560,Co=640,Jt=768,Qt=1040,or=1280,G=o=>{switch(o){case"XXS":return Zt;case"XS":return Gt;case"S":return qt;case"M":return Co;case"L":return Jt;case"XL":return Qt;case"XXL":return or;default:return Co}},er=o=>o?Z.css`
|
|
59
59
|
padding-top: 16px;
|
|
60
60
|
padding-bottom: 24px;
|
|
61
61
|
`:Z.css`
|
|
62
62
|
padding-top: 24px;
|
|
63
63
|
padding-bottom: 24px;
|
|
64
|
-
`,
|
|
64
|
+
`,vo=k.default.div`
|
|
65
65
|
display: flex;
|
|
66
66
|
flex-direction: column;
|
|
67
67
|
border-radius: ${f.borderRadius08};
|
|
@@ -74,14 +74,14 @@
|
|
|
74
74
|
max-height: 1200px;
|
|
75
75
|
width: ${({sizeVar:o})=>G(o)}px;
|
|
76
76
|
max-width: ${({sizeVar:o})=>G(o)}px;
|
|
77
|
-
`,
|
|
77
|
+
`,Po=k.default.div`
|
|
78
78
|
display: flex;
|
|
79
79
|
width: 100%;
|
|
80
80
|
justify-content: space-between;
|
|
81
81
|
align-items: center;
|
|
82
82
|
padding: 12px 16px 12px 24px;
|
|
83
83
|
gap: 10px;
|
|
84
|
-
`,
|
|
84
|
+
`,_o=k.default.div`
|
|
85
85
|
display: flex;
|
|
86
86
|
width: 100%;
|
|
87
87
|
height: 100%;
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
min-height: ${({height:o})=>o};
|
|
92
92
|
flex: 1;
|
|
93
93
|
${({isIncludeHeader:o})=>er(o)}
|
|
94
|
-
`,
|
|
94
|
+
`,Bo=k.default.div`
|
|
95
95
|
display: flex;
|
|
96
96
|
flex-direction: column;
|
|
97
97
|
width: 100%;
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
padding: 0 24px;
|
|
101
101
|
overflow: hidden;
|
|
102
102
|
background: ${i.neutral0};
|
|
103
|
-
|
|
103
|
+
`,wo=k.default.div`
|
|
104
104
|
display: flex;
|
|
105
105
|
width: 100%;
|
|
106
106
|
flex-direction: row;
|
|
@@ -110,10 +110,10 @@
|
|
|
110
110
|
gap: 12px;
|
|
111
111
|
border-top: 1px solid ${i.neutral300};
|
|
112
112
|
background: ${i.neutral0};
|
|
113
|
-
`;var
|
|
113
|
+
`;var Eo=(s=>(s.XXS="XXS",s.XS="XS",s.S="S",s.M="M",s.L="L",s.XL="XL",s.XXL="XXL",s))(Eo||{}),B=Symbol("MODAL_HEADER"),q=Symbol("MODAL_BODY"),w=Symbol("MODAL_FOOTER");var $o=function(){};var tr=({children:o,outsideClick:t=$o,...e})=>{let a=u.default.useRef(null);po(t,a),console.debug("ModalContainer",e),console.debug("children",o);let r=u.default.Children.toArray(o),p=r.find(n=>{if(!u.default.isValidElement(n)||n.type[B])return n}),l=r.find(n=>{if(!u.default.isValidElement(n)||n.type[w])return n}),s=u.Children.map(r,n=>u.default.isValidElement(n)?u.default.cloneElement(n,{isIncludeHeader:!!p,isIncludeFooter:!!l,sizeVar:e.sizeVar,height:e.height}):n);return u.default.createElement(vo,{ref:a,...e},s)},Oo=tr;var Do=c(require("react"),1);var Ho=({children:o})=>Do.default.createElement(wo,null,o);Ho[w]=!0;var Lo=Ho;var h=c(require("react"),1);var Vo=c(require("react-custom-scrollbars-2"),1);var Ro=({children:o,isIncludeHeader:t=!1,isIncludeFooter:e=!1,sizeVar:a,height:r})=>{let{height:p}=Y(document.body,{trackHeight:!0});console.debug("windowHeight",p),console.debug("isIncludeFooter",e),console.debug("isIncludeHeader",t),console.debug("sizeVar",a);let l=64,s=64,n=64,d=(0,h.useCallback)(()=>{let x=0;return t&&(x+=l),e&&(x+=s),x},[e,t]),m=(0,h.useMemo)(()=>d(),[d]),y=()=>r?r-m:"100%",C=p-n-m,v=1200-n-m;return h.default.createElement(_o,{isIncludeHeader:t,height:y()},h.default.createElement(Vo.default,{id:"scrollbar",autoHeight:!r,autoHeightMin:y(),autoHeightMax:p>1200?v:C,autoHide:!0,autoHideTimeout:1e3,autoHideDuration:200,style:{height:"100%",overflow:"hidden"}},h.default.createElement(Bo,{isIncludeHeader:t,sizeVar:a},o)))};Ro[q]=!0;var zo=Ro;var Ao=c(require("react"),1);var No=({children:o})=>Ao.default.createElement(Po,null,o);No[B]=!0;var Xo=No;var rr={Container:Oo,Header:Xo,Body:zo,Footer:Lo};var Q=c(require("react"),1);var E=require("react"),Fo=(o,t)=>{let[e,a]=(0,E.useState)(!1),r=o!==void 0,p=()=>{!r&&a(l=>!l)};return(0,E.useEffect)(()=>{r&&a(o)},[r,o]),(0,E.useEffect)(()=>{t&&a(t)},[t,r]),[e,p]};var J={SOLID:"SOLID"},nr={S:"S",XS:"XS"};var Wo=c(require("@emotion/styled"),1),I=require("@emotion/react");var Io=require("@emotion/react"),F=o=>{if(o)return Io.css`
|
|
114
114
|
opacity: 50%;
|
|
115
115
|
cursor: not-allowed;
|
|
116
|
-
`};var
|
|
116
|
+
`};var Yo=o=>{switch(o){case"XS":return"body3_400";case"S":return"body2_400";default:return"body2_400"}},ar=({isSelected:o,color:t,radius:e})=>I.css`
|
|
117
117
|
padding: 7px 12px;
|
|
118
118
|
gap: 4px;
|
|
119
119
|
background: ${i.neutral150};
|
|
@@ -137,7 +137,7 @@
|
|
|
137
137
|
background: ${i[t]};
|
|
138
138
|
}
|
|
139
139
|
`};
|
|
140
|
-
`,
|
|
140
|
+
`,Ko=Wo.default.button`
|
|
141
141
|
display: flex;
|
|
142
142
|
align-items: center;
|
|
143
143
|
justify-content: center;
|
|
@@ -147,15 +147,15 @@
|
|
|
147
147
|
cursor: pointer;
|
|
148
148
|
${o=>o.styleVar==="SOLID"&&ar(o)};
|
|
149
149
|
${({disabled:o})=>F(o)};
|
|
150
|
-
`;var
|
|
150
|
+
`;var jo=require("@shoplflow/utils"),ir=({text:o,isSelected:t,defaultSelected:e,color:a="neutral600",styleVar:r=J.SOLID,sizeVar:p,leftSource:l,rightSource:s,onClick:n=jo.noop,disabled:d=!1,...m})=>{let[y,C]=Fo(t,e);return Q.default.createElement(Ko,{...m,color:a,isSelected:y,styleVar:r,sizeVar:p,onClick:x=>{!d&&C(),!d&&n&&n(x)},disabled:d},l,Q.default.createElement(M,{typography:Yo(p)},o),s)},Uo=ir;var ro=c(require("react"),1);var Zo=c(require("@emotion/styled"),1),$=require("@emotion/react");var oo=(o,t=1)=>{let e=o.replace(/[0-9]|_/g,""),a=o.replace(/[a-z]|_/g,""),r=Number(a)+100*t,p=`${e}${r}`,l=Object.keys(i).filter(m=>m.includes(e)).sort((m,y)=>Number(m.replace(/[a-z]|_/g,""))-Number(y.replace(/[a-z]|_/g,""))),n=Object.keys(i).find(m=>m===p),d=l[l.length-1];return n||d};var Go=o=>{switch(o){case"XS":return"caption_400";case"S":return"body3_400";default:return"body3_400"}},pr=({color:o})=>$.css`
|
|
151
151
|
background: ${i.neutral0};
|
|
152
152
|
border: 1px solid ${i[o]};
|
|
153
153
|
border-radius: ${f.borderRadius20};
|
|
154
154
|
&:hover {
|
|
155
|
-
border: 1px solid ${i[
|
|
155
|
+
border: 1px solid ${i[oo(o,2)]};
|
|
156
156
|
}
|
|
157
157
|
& > span {
|
|
158
|
-
color: ${i[
|
|
158
|
+
color: ${i[oo(o,4)]};
|
|
159
159
|
}
|
|
160
160
|
`,sr=o=>{switch(o){case"XS":return $.css`
|
|
161
161
|
padding: 4px 8px;
|
|
@@ -163,7 +163,7 @@
|
|
|
163
163
|
padding: 7px 12px;
|
|
164
164
|
`;default:return $.css`
|
|
165
165
|
padding: 7px 12px;
|
|
166
|
-
`}},
|
|
166
|
+
`}},qo=Zo.default.button`
|
|
167
167
|
display: flex;
|
|
168
168
|
align-items: center;
|
|
169
169
|
justify-content: center;
|
|
@@ -175,4 +175,4 @@
|
|
|
175
175
|
${({sizeVar:o})=>sr(o)};
|
|
176
176
|
${o=>o.styleVar==="LINE"&&pr(o)};
|
|
177
177
|
${({disabled:o})=>F(o)};
|
|
178
|
-
`;var Jo=require("@shoplflow/utils");var
|
|
178
|
+
`;var Jo=require("@shoplflow/utils");var eo={LINE:"LINE"},to={S:"S",XS:"XS"};var lr=({styleVar:o=eo.LINE,color:t="neutral200",sizeVar:e=to.S,text:a,onClick:r=Jo.noop,disabled:p=!1,...l})=>ro.default.createElement(qo,{styleVar:o,color:t,...l,onClick:n=>{!p&&r(n)},disabled:p},ro.default.createElement(M,{typography:Go(e)},a)),Qo=lr;0&&(module.exports={ChipButton,ChipButtonSizeVariants,ChipButtonStyleVariants,ChipToggle,ChipToggleSizeVariants,ChipToggleStyleVariants,MODAL_BODY_KEY,MODAL_FOOTER_KEY,MODAL_HEADER_KEY,Modal,ModalProvider,ModalSize,MotionStack,ShoplflowProvider,Stack,StyledStack,Text,borderRadiusTokens,boxShadowTokens,colorTokens,fontWeightTokens,spacingTokens,typographyTokens,useDomain,useHandleModal,useModalStore,useModalValue,useOutsideClick,useResizeObserver});
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import w from"react";import{useEffect as z,useState as Mo}from"react";var A=({domain:o="SHOPL"})=>{let[t,e]=Mo(void 0);z(()=>{o&&e(o)},[o]),z(()=>{t&&(document.documentElement.dataset.shoplflow=t?.toLowerCase())},[t])};import S from"react";import{create as ko}from"zustand";var y=ko(o=>({modal:[],addModal:(t,e)=>o(a=>({modal:[...a.modal,{component:t,id:e}]})),removeModal:t=>{let{id:e,deps:a=1}=t||{id:void 0,deps:0},n=!!(e&&String(a)),
|
|
1
|
+
import w from"react";import{useEffect as z,useState as Mo}from"react";var A=({domain:o="SHOPL"})=>{let[t,e]=Mo(void 0);z(()=>{o&&e(o)},[o]),z(()=>{t&&(document.documentElement.dataset.shoplflow=t?.toLowerCase())},[t])};import S from"react";import{create as ko}from"zustand";var y=ko(o=>({modal:[],addModal:(t,e)=>o(a=>({modal:[...a.modal,{component:t,id:e}]})),removeModal:t=>{let{id:e,deps:a=1}=t||{id:void 0,deps:0},n=!!(e&&String(a)),p=!!e,l=!e&&!a,s=!!String(a)&&!e;if(n)throw new Error("id\uC640 deps\uB294 \uB3D9\uC2DC\uC5D0 \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");if(p){o(r=>({modal:[...r.modal.filter(c=>c.id!==e)]}));return}if(l||a===1){o(r=>({modal:[...r.modal.slice(0,-1)]}));return}if(s){o(r=>({modal:[...r.modal.slice(0,-a+1)]}));return}}}));var mr=()=>{let o=y(e=>e.addModal),t=y(e=>e.removeModal);return{addModal:o,removeModal:t}};var yr=()=>({modal:y(t=>t.modal)});import{useCallback as Co,useEffect as vo,useRef as Po}from"react";var _o=(o,t)=>{let e=t??Po(null),a=Co(n=>{e.current?.parentNode&&!e.current?.contains(n.target)&&o(n.target)},[e,o]);return vo(()=>{let n=e.current?.parentNode;if(n)return n.addEventListener("click",a),()=>{n.removeEventListener("click",a)}},[e,a]),{ref:e}},N=_o;import{useEffect as Bo,useState as wo}from"react";var X=(o,t={trackWidth:!0,trackHeight:!0})=>{let[e,a]=wo({width:0,height:0});return Bo(()=>{let n=new ResizeObserver(p=>{p.forEach(l=>{if(l.target===o){let{width:s,height:r}=l.contentRect,d={...e};t.trackWidth&&s!==e.width&&(d.width=s),t.trackHeight&&r!==e.height&&(d.height=r),(d.width!==e.width||d.height!==e.height)&&a(d)}})});return n.observe(o),()=>{n.disconnect()}},[o,t.trackWidth,t.trackHeight,e]),e};import Oo from"react";var F={initial:{opacity:0},animate:{opacity:1,transition:{duration:.1}},exit:{opacity:0,transition:{duration:.1}}};import Eo from"@emotion/styled";import{motion as $o}from"framer-motion";var I=Eo($o.div)`
|
|
2
2
|
display: flex;
|
|
3
3
|
align-items: center;
|
|
4
4
|
justify-content: center;
|
|
@@ -9,7 +9,7 @@ import w from"react";import{useEffect as z,useState as Mo}from"react";var A=({do
|
|
|
9
9
|
width: 100%;
|
|
10
10
|
height: 100%;
|
|
11
11
|
background: rgba(51, 51, 51, 0.6);
|
|
12
|
-
`;var Do=({children:o})=>Oo.createElement(I,{variants:F,initial:"initial",animate:"animate",exit:"exit"},o),W=Do;import{createPortal as
|
|
12
|
+
`;var Do=({children:o})=>Oo.createElement(I,{variants:F,initial:"initial",animate:"animate",exit:"exit"},o),W=Do;import{createPortal as Ho}from"react-dom";import{AnimatePresence as Lo,motion as Vo}from"framer-motion";import Ro from"@emotion/styled";var zo=Ro(Vo.div)`
|
|
13
13
|
position: relative;
|
|
14
14
|
display: flex;
|
|
15
15
|
align-items: center;
|
|
@@ -19,7 +19,7 @@ import w from"react";import{useEffect as z,useState as Mo}from"react";var A=({do
|
|
|
19
19
|
padding: 32px 20px;
|
|
20
20
|
width: 100%;
|
|
21
21
|
height: 100%;
|
|
22
|
-
`,Ao=()=>{let o=y(t=>t.modal);return S.createElement(S.Fragment,null,
|
|
22
|
+
`,Ao=()=>{let o=y(t=>t.modal);return S.createElement(S.Fragment,null,Ho(S.createElement(Lo,null,o.map((t,e)=>S.createElement(W,{key:e},S.createElement(zo,null,t.component)))),document.body))},B=Ao;var No=({children:o,domain:t="SHOPL"})=>(A({domain:t}),w.createElement(w.Fragment,null,w.createElement(B,null),o)),Xo=No;var Fo="var(--font-weight-regular)",Io="var(--font-weight-medium)",Wo="var(--font-weight-bold)",Yo={fontWeightRegular:Fo,fontWeightMedium:Io,fontWeightBold:Wo},Ko="var(--border-radius04)",jo="var(--border-radius06)",Uo="var(--border-radius08)",Zo="var(--border-radius12)",Go="var(--border-radius16)",qo="var(--border-radius20)",m={borderRadius04:Ko,borderRadius06:jo,borderRadius08:Uo,borderRadius12:Zo,borderRadius16:Go,borderRadius20:qo},Jo="var(--coolgray300)",Qo="var(--coolgray200)",oe="var(--coolgray100)",ee="var(--coolgray50)",te="var(--navy400)",re="var(--navy300)",ne="var(--neutral0)",ae="var(--neutral100)",ie="var(--neutral150)",pe="var(--neutral200)",se="var(--neutral300)",le="var(--neutral350)",de="var(--neutral400)",ce="var(--neutral500)",me="var(--neutral600)",fe="var(--neutral700)",ue="var(--neutral400_5)",ye="var(--red300)",ge="var(--red200)",he="var(--red100)",xe="var(--ocean300)",Te="var(--ocean200)",Se="var(--ocean100)",be="var(--purple400)",Me="var(--purple300)",ke="var(--purple100)",Ce="var(--yellow300)",ve="var(--yellow200)",Pe="var(--yellow100)",_e="var(--green300)",Be="var(--green200)",we="var(--green100)",Ee="var(--shopl400)",$e="var(--shopl300)",Oe="var(--shopl200)",De="var(--shopl150)",He="var(--shopl100)",Le="var(--hada400)",Ve="var(--hada300)",Re="var(--hada200)",ze="var(--hada150)",Ae="var(--hada100)",Ne="var(--background)",Xe="var(--primary100)",Fe="var(--primary150)",Ie="var(--primary200)",We="var(--primary300)",Ye="var(--primary400)",i={coolgray300:Jo,coolgray200:Qo,coolgray100:oe,coolgray50:ee,navy400:te,navy300:re,neutral0:ne,neutral100:ae,neutral150:ie,neutral200:pe,neutral300:se,neutral350:le,neutral400:de,neutral500:ce,neutral600:me,neutral700:fe,neutral400_5:ue,red300:ye,red200:ge,red100:he,ocean300:xe,ocean200:Te,ocean100:Se,purple400:be,purple300:Me,purple100:ke,yellow300:Ce,yellow200:ve,yellow100:Pe,green300:_e,green200:Be,green100:we,shopl400:Ee,shopl300:$e,shopl200:Oe,shopl150:De,shopl100:He,hada400:Le,hada300:Ve,hada200:Re,hada150:ze,hada100:Ae,background:Ne,primary100:Xe,primary150:Fe,primary200:Ie,primary300:We,primary400:Ye},Ke="var(--spacing04)",je="var(--spacing06)",Ue="var(--spacing08)",Ze="var(--spacing12)",Ge="var(--spacing16)",qe="var(--spacing20)",Je="var(--spacing24)",Qe="var(--spacing30)",ot="var(--spacing32)",et="var(--spacing40)",E={spacing04:Ke,spacing06:je,spacing08:Ue,spacing12:Ze,spacing16:Ge,spacing20:qe,spacing24:Je,spacing30:Qe,spacing32:ot,spacing40:et},tt="var(--dropShadow)",$={dropShadow:tt},rt=".heading1_700",nt=".heading1_400",at=".heading2_700",it=".heading2_400",pt=".heading3_700",st=".heading3_400",lt=".title1_700",dt=".title1_400",ct=".title2_700",mt=".title2_500",ft=".title2_400",ut=".body1_700",yt=".body1_500",gt=".body1_400",ht=".body2_700",xt=".body2_500",Tt=".body2_400",St=".body3_400",bt=".body3_500",Mt=".caption_400",kt={heading1_700:rt,heading1_400:nt,heading2_700:at,heading2_400:it,heading3_700:pt,heading3_400:st,title1_700:lt,title1_400:dt,title2_700:ct,title2_500:mt,title2_400:ft,body1_700:ut,body1_500:yt,body1_400:gt,body2_700:ht,body2_500:xt,body2_400:Tt,body3_400:St,body3_500:bt,caption_400:Mt};import vt,{forwardRef as Pt}from"react";import{motion as O}from"framer-motion";import Ct from"@emotion/styled";var Y=Ct.div`
|
|
23
23
|
display: flex;
|
|
24
24
|
width: ${({width:o})=>o};
|
|
25
25
|
height: ${({height:o})=>o};
|
|
@@ -32,7 +32,7 @@ import w from"react";import{useEffect as z,useState as Mo}from"react";var A=({do
|
|
|
32
32
|
background: ${({background:o})=>o?i[o]:"transparent"};
|
|
33
33
|
border-radius: ${({radius:o})=>o&&m[o]};
|
|
34
34
|
animation: 0.2s all ease-in-out;
|
|
35
|
-
`;var D=o=>Pt(function({as:e="div",spacing:a=o?.spacing??"spacing08",direction:n=o?.direction??"column",align:
|
|
35
|
+
`;var D=o=>Pt(function({as:e="div",spacing:a=o?.spacing??"spacing08",direction:n=o?.direction??"column",align:p=o?.align??"flex-start",justify:l=o?.justify??"flex-start",width:s=o?.width??"initial",height:r=o?.height??"initial",flexWrap:d=o?.flexWrap??"initial",flex:c=o?.flex??"initial",radius:f=o?.radius,background:x=o?.background,...T},u){return vt.createElement(Y,{as:e,spacing:a,ref:u,direction:n,align:p,justify:l,width:s,height:r,flexWrap:d,flex:c,background:x,radius:f,...T},T.children)}),h=D();h.Vertical=D({direction:"column"});h.Horizontal=D({direction:"row"});var K=O(h);K.Vertical=O(h.Vertical);K.Horizontal=O(h.Horizontal);var _t=h;import Et,{forwardRef as $t}from"react";import{css as k}from"@emotion/react";import Bt from"@emotion/styled";var wt=o=>k`
|
|
36
36
|
display: -webkit-box;
|
|
37
37
|
line-clamp: ${o};
|
|
38
38
|
-webkit-line-clamp: ${o};
|
|
@@ -55,7 +55,7 @@ import w from"react";import{useEffect as z,useState as Mo}from"react";var A=({do
|
|
|
55
55
|
${({wordBreak:o})=>o&&k`
|
|
56
56
|
word-break: ${o};
|
|
57
57
|
`};
|
|
58
|
-
`;var Ot=$t(({children:o,typography:t="body1_400",whiteSpace:e,color:a="neutral700",display:n="inline-block",textAlign:
|
|
58
|
+
`;var Ot=$t(({children:o,typography:t="body1_400",whiteSpace:e,color:a="neutral700",display:n="inline-block",textAlign:p="inherit",className:l,...s},r)=>Et.createElement(j,{ref:r,whiteSpace:e,className:l?`${t} ${l}`:t,color:a,display:n,textAlign:p,...s},o)),b=Ot;import g,{Children as Xt}from"react";import M from"@emotion/styled";import{css as U}from"@emotion/react";var Dt=400,Ht=500,Lt=560,Z=640,Vt=768,Rt=1040,zt=1280,H=o=>{switch(o){case"XXS":return Dt;case"XS":return Ht;case"S":return Lt;case"M":return Z;case"L":return Vt;case"XL":return Rt;case"XXL":return zt;default:return Z}},At=o=>o?U`
|
|
59
59
|
padding-top: 16px;
|
|
60
60
|
padding-bottom: 24px;
|
|
61
61
|
`:U`
|
|
@@ -72,8 +72,8 @@ import w from"react";import{useEffect as z,useState as Mo}from"react";var A=({do
|
|
|
72
72
|
height: initial;
|
|
73
73
|
height: ${({height:o})=>o}px;
|
|
74
74
|
max-height: 1200px;
|
|
75
|
-
width: ${({sizeVar:o})=>
|
|
76
|
-
max-width: ${({sizeVar:o})=>
|
|
75
|
+
width: ${({sizeVar:o})=>H(o)}px;
|
|
76
|
+
max-width: ${({sizeVar:o})=>H(o)}px;
|
|
77
77
|
`,q=M.div`
|
|
78
78
|
display: flex;
|
|
79
79
|
width: 100%;
|
|
@@ -95,7 +95,7 @@ import w from"react";import{useEffect as z,useState as Mo}from"react";var A=({do
|
|
|
95
95
|
display: flex;
|
|
96
96
|
flex-direction: column;
|
|
97
97
|
width: 100%;
|
|
98
|
-
max-width: ${({sizeVar:o})=>
|
|
98
|
+
max-width: ${({sizeVar:o})=>H(o)}px;
|
|
99
99
|
box-sizing: border-box;
|
|
100
100
|
padding: 0 24px;
|
|
101
101
|
overflow: hidden;
|
|
@@ -110,7 +110,7 @@ import w from"react";import{useEffect as z,useState as Mo}from"react";var A=({do
|
|
|
110
110
|
gap: 12px;
|
|
111
111
|
border-top: 1px solid ${i.neutral300};
|
|
112
112
|
background: ${i.neutral0};
|
|
113
|
-
`;var Nt=(
|
|
113
|
+
`;var Nt=(s=>(s.XXS="XXS",s.XS="XS",s.S="S",s.M="M",s.L="L",s.XL="XL",s.XXL="XXL",s))(Nt||{}),C=Symbol("MODAL_HEADER"),eo=Symbol("MODAL_BODY"),v=Symbol("MODAL_FOOTER");var to=function(){};var Ft=({children:o,outsideClick:t=to,...e})=>{let a=g.useRef(null);N(t,a),console.debug("ModalContainer",e),console.debug("children",o);let n=g.Children.toArray(o),p=n.find(r=>{if(!g.isValidElement(r)||r.type[C])return r}),l=n.find(r=>{if(!g.isValidElement(r)||r.type[v])return r}),s=Xt.map(n,r=>g.isValidElement(r)?g.cloneElement(r,{isIncludeHeader:!!p,isIncludeFooter:!!l,sizeVar:e.sizeVar,height:e.height}):r);return g.createElement(G,{ref:a,...e},s)},ro=Ft;import It from"react";var no=({children:o})=>It.createElement(oo,null,o);no[v]=!0;var ao=no;import L,{useCallback as Wt,useMemo as Yt}from"react";import Kt from"react-custom-scrollbars-2";var io=({children:o,isIncludeHeader:t=!1,isIncludeFooter:e=!1,sizeVar:a,height:n})=>{let{height:p}=X(document.body,{trackHeight:!0});console.debug("windowHeight",p),console.debug("isIncludeFooter",e),console.debug("isIncludeHeader",t),console.debug("sizeVar",a);let l=64,s=64,r=64,d=Wt(()=>{let u=0;return t&&(u+=l),e&&(u+=s),u},[e,t]),c=Yt(()=>d(),[d]),f=()=>n?n-c:"100%",x=p-r-c,T=1200-r-c;return L.createElement(J,{isIncludeHeader:t,height:f()},L.createElement(Kt,{id:"scrollbar",autoHeight:!n,autoHeightMin:f(),autoHeightMax:p>1200?T:x,autoHide:!0,autoHideTimeout:1e3,autoHideDuration:200,style:{height:"100%",overflow:"hidden"}},L.createElement(Q,{isIncludeHeader:t,sizeVar:a},o)))};io[eo]=!0;var po=io;import jt from"react";var so=({children:o})=>jt.createElement(q,null,o);so[C]=!0;var lo=so;var Qn={Container:ro,Header:lo,Body:po,Footer:ao};import go from"react";import{useEffect as co,useState as Ut}from"react";var mo=(o,t)=>{let[e,a]=Ut(!1),n=o!==void 0,p=()=>{!n&&a(l=>!l)};return co(()=>{n&&a(o)},[n,o]),co(()=>{t&&a(t)},[t,n]),[e,p]};var fo={SOLID:"SOLID"},ia={S:"S",XS:"XS"};import Gt from"@emotion/styled";import{css as V}from"@emotion/react";import{css as Zt}from"@emotion/react";var P=o=>{if(o)return Zt`
|
|
114
114
|
opacity: 50%;
|
|
115
115
|
cursor: not-allowed;
|
|
116
116
|
`};var uo=o=>{switch(o){case"XS":return"body3_400";case"S":return"body2_400";default:return"body2_400"}},qt=({isSelected:o,color:t,radius:e})=>V`
|
|
@@ -147,7 +147,7 @@ import w from"react";import{useEffect as z,useState as Mo}from"react";var A=({do
|
|
|
147
147
|
cursor: pointer;
|
|
148
148
|
${o=>o.styleVar==="SOLID"&&qt(o)};
|
|
149
149
|
${({disabled:o})=>P(o)};
|
|
150
|
-
`;import{noop as Jt}from"@shoplflow/utils";var Qt=({text:o,isSelected:t,defaultSelected:e,color:a="neutral600",styleVar:n=fo.SOLID,sizeVar:
|
|
150
|
+
`;import{noop as Jt}from"@shoplflow/utils";var Qt=({text:o,isSelected:t,defaultSelected:e,color:a="neutral600",styleVar:n=fo.SOLID,sizeVar:p,leftSource:l,rightSource:s,onClick:r=Jt,disabled:d=!1,...c})=>{let[f,x]=mo(t,e);return go.createElement(yo,{...c,color:a,isSelected:f,styleVar:n,sizeVar:p,onClick:u=>{!d&&x(),!d&&r&&r(u)},disabled:d},l,go.createElement(b,{typography:uo(p)},o),s)},or=Qt;import bo from"react";import er from"@emotion/styled";import{css as _}from"@emotion/react";var R=(o,t=1)=>{let e=o.replace(/[0-9]|_/g,""),a=o.replace(/[a-z]|_/g,""),n=Number(a)+100*t,p=`${e}${n}`,l=Object.keys(i).filter(c=>c.includes(e)).sort((c,f)=>Number(c.replace(/[a-z]|_/g,""))-Number(f.replace(/[a-z]|_/g,""))),r=Object.keys(i).find(c=>c===p),d=l[l.length-1];return r||d};var ho=o=>{switch(o){case"XS":return"caption_400";case"S":return"body3_400";default:return"body3_400"}},tr=({color:o})=>_`
|
|
151
151
|
background: ${i.neutral0};
|
|
152
152
|
border: 1px solid ${i[o]};
|
|
153
153
|
border-radius: ${m.borderRadius20};
|
|
@@ -175,4 +175,4 @@ import w from"react";import{useEffect as z,useState as Mo}from"react";var A=({do
|
|
|
175
175
|
${({sizeVar:o})=>rr(o)};
|
|
176
176
|
${o=>o.styleVar==="LINE"&&tr(o)};
|
|
177
177
|
${({disabled:o})=>P(o)};
|
|
178
|
-
`;import{noop as nr}from"@shoplflow/utils";var To={LINE:"LINE"},So={S:"S",XS:"XS"};var ar=({styleVar:o=To.LINE,color:t="neutral200",sizeVar:e=So.S,text:a,onClick:n=nr,disabled:
|
|
178
|
+
`;import{noop as nr}from"@shoplflow/utils";var To={LINE:"LINE"},So={S:"S",XS:"XS"};var ar=({styleVar:o=To.LINE,color:t="neutral200",sizeVar:e=So.S,text:a,onClick:n=nr,disabled:p=!1,...l})=>bo.createElement(xo,{styleVar:o,color:t,...l,onClick:r=>{!p&&n(r)},disabled:p},bo.createElement(b,{typography:ho(e)},a)),ir=ar;export{ir as ChipButton,So as ChipButtonSizeVariants,To as ChipButtonStyleVariants,or as ChipToggle,ia as ChipToggleSizeVariants,fo as ChipToggleStyleVariants,eo as MODAL_BODY_KEY,v as MODAL_FOOTER_KEY,C as MODAL_HEADER_KEY,Qn as Modal,B as ModalProvider,Nt as ModalSize,K as MotionStack,Xo as ShoplflowProvider,_t as Stack,Y as StyledStack,b as Text,m as borderRadiusTokens,$ as boxShadowTokens,i as colorTokens,Yo as fontWeightTokens,E as spacingTokens,kt as typographyTokens,A as useDomain,mr as useHandleModal,y as useModalStore,yr as useModalValue,_o as useOutsideClick,X as useResizeObserver};
|