amotify 0.3.31 → 0.3.32

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/fn/Sheet.js CHANGED
@@ -1 +1 @@
1
- import{b as d,c as I,d as H}from"../chunk-C5N2D3ZX.js";import{Fragment as le,jsx as a,jsxs as L}from"react/jsx-runtime";import c,{UUID as $,Time as pe,useStore as P}from"jmini";import{useState as X,useEffect as U,useRef as ue}from"react";import{$$fromRoot as Y,Config as j}from"../@utils";import{Box as B,Flex as ce,Img as he,FAI as q,Column as J,Grid as me,CacheRender as de}from"../atoms";import{Literal as fe,Row as ee}from"../mols";import{Button as te}from"./Button";import{SheetClasses as f}from"../@styles/componentClasses";import ge from"./Plate";const y={currentIndex:0,openQueue:{},getSessionStates:()=>{let t=P.get("sessionStates-"+j.get().sessionUID);return t||null},getnew_sheetstates:t=>{var i;let e=I(d({sheetGroups:t.sheetGroups||[],backgroundEffect:!0,overwrap:t.type=="custom",hold_state:!1,closeAtPageTransit:!0,closeAtEscapeKeyDown:!0,closeAtAroundClick:t.type=="custom",transition:"middle"},t),{sheetID:t.sheetID||$(),isOpen:!0,created_at:pe()});return e.type=="custom"&&(e.parent=e.parent||((i=e.event)==null?void 0:i.currentTarget)),e},Wrapper:()=>{let[t,e]=X([]),i={val_sheets:t,set_sheets:e},h="sessionStates-"+j.get().sessionUID;P.set({[h]:i}),U(()=>{let r="Sheet-"+j.get().sessionUID;P.set({[r]:{add:(n,o)=>{let p=P.get(r);if(!p)return;let l=y.getnew_sheetstates(n);if(y.openQueue[l.sheetID])return;if(y.openQueue[l.sheetID]=!0,o!="inherit"&&(l.isOpen=o!=null?o:!0),!!p.find(l.sheetID)){e(b=>{let A=[...b],R=A.findIndex(M=>M.sheetID==l.sheetID);return R==-1||(A[R]=l),A}),delete y.openQueue[l.sheetID];return}e(b=>[l,...b])},find:n=>{let o=y.getSessionStates();if(!o)return null;let{val_sheets:p}=o;return p.find(l=>l.sheetID==n)}}}),c(j.get().appRoot).removeEvent(["SheetEvent.keyUp","SheetEvent.Click"]).onEvent("keyup",function(n){let{key:o,metaKey:p}=n;if(o=="Escape"||o==","&&p){let l=y.getSessionStates();if(!l)return;let{val_sheets:x}=l,b=x.filter(R=>R.isOpen);if(!b.length)return;let A=b.reduce((R,M)=>R.created_at.value>M.created_at.value?R:M);v.close(A.sheetID,o)}},{eventID:"SheetEvent.keyUp"}).onEvent("click",function(n){let o=y.getSessionStates();if(!o)return;let{val_sheets:p}=o,l=n.target;if(!l||l!=null&&l.closest("."+f("CustomSheet")))return;let x=p.filter(b=>b.type=="custom");x.length&&x.forEach(b=>{let{parent:A}=b;if(!b.closeAtAroundClick)return;let R=Y(A)[0];A!==l&&R!==l&&(c(R).find(l).length||v.close(b.sheetID))})},{eventID:"SheetEvent.Click"})},[]);let S=t.some(r=>r.type!="custom"&&!r.overwrap&&r.isOpen);return L(le,{children:[t.map(r=>a(de,{params:r,forceRender:(n,o)=>n.isOpen!=o.isOpen||n.size!=o.size||!c.isEqual(c.SortifyObject(n.props||""),c.SortifyObject(o.props||"")),children:a(y.Core,I(d({},i),{val_sheet:r,patch_sheet:n=>{e(o=>{let p=[...o],l=p.findIndex(x=>x.sheetID==r.sheetID);return l!=-1&&(p[l]=I(d(d({},p[l]),n),{props:d(d({},p[l].props),n.props)})),p})},delete_sheet:()=>{e(n=>[...n.filter(o=>o.sheetID!=r.sheetID)])}}))},r.sheetID)),a(B,{className:f("BackgroundWrapper"),transition:"middle",backgroundColor:"dark.opa.few",ssAbsoluteCovered:!0,position:"fixed",ssZIndex:100,xcss:{opacity:S?1:0,pointerEvents:"none"}})]})},sheetCategory:t=>t=="custom"?"custom":t.startsWith("drawer")?"drawer":"normal",sheetPosition:t=>t=="drawer.left"?"left":t=="drawer.right"?"right":t=="drawer.bottom"?"bottom":"",Core:t=>{let{val_sheet:e,patch_sheet:i}=t,[h,S]=X(101+y.currentIndex),[r]=X($()),n=e.type!="custom"&&!e.overwrap;U(()=>{y.currentIndex++,c.scope(()=>{if(!e.closeAtParentBlur)return;let p=c(e.parent);p[0]&&p.onEvent("mouseout",()=>{p.removeEvent("SheetClosation-"+e.sheetID),i({isOpen:!1})},{eventID:"SheetClosation-"+e.sheetID})}),P.set({[e.sheetID]:{update:p=>{setTimeout(()=>{i(p)},10)},close:p=>{i({isOpen:!1})},open:()=>{i({isOpen:!0})}}})},[]),U(()=>{c.scope(()=>{let p=Y("#"+r);if(e.isOpen){e.hold_state&&S(y.currentIndex+1),p.await(10).removeClass(f("Hide")).await(10).addClass(f("Open")).callback(()=>{delete y.openQueue[e.sheetID],e.onOpen&&e.onOpen()});return}p.await(10).removeClass(f("Open")).await(251).addClass(f("Hide")).callback(()=>{if(e.onClose&&e.onClose(),n&&j.get().browserIs!="safari"&&c(j.get().appRoot).focus(),e.hold_state)return i({isOpen:!1});t.delete_sheet()})})},[e.isOpen]);let o=y.Types[{topLeft:"Normal",topCenter:"Normal",topRight:"Normal",middleLeft:"Normal",middleCenter:"Normal",middleRight:"Normal",bottomLeft:"Normal",bottomCenter:"Normal",bottomRight:"Normal","drawer.left":"Edge","drawer.right":"Edge","drawer.bottom":"Bottom",custom:"Custom"}[e.type]];return a(B,{className:["AMOTIFY_be",f("Wrap"),f("Tcate_"+y.sheetCategory(e.type)),f("Tpos_"+y.sheetPosition(e.type)),f("isMainSheet_"+n),e.wrapperClassName||""].join(" "),transition:"middle",width:1,ssAbsoluteCovered:!0,position:"fixed",ssZIndex:h,overflow:"auto",id:r,children:L(J,{className:f("Content"),gap:0,xcss:{minHeight:"100%"},children:[!!n&&a(B,{className:f("TapSensor"),position:"sticky",top:0,height:0,width:1,flexSizing:"none",children:a(B,{backgroundColor:"trans",height:"viewHeight",position:"absolute",top:0,width:1,className:f("TapContent"),onClick:p=>{var x;((x=e.closeAtAroundClick)==null||x)&&v.close(e.sheetID)}})}),a(o,d({componentId:r},e))]})},r)},Types:{Normal:t=>{let T=t,{sheetID:e,sheetGroups:i,bodyScrolls:h,props:S,content:r,className:n="",type:o,size:p="R",xcss:l,onOpen:x,onClose:b,closeAtAroundClick:A,closeAtEscapeKeyDown:R,closeAtPageTransit:M,closeAtParentBlur:oe,closeAtSwipeDown:K,hold_state:se,overwrap:re,isOpen:ne,backgroundEffect:F,wrapperClassName:Q}=T,W=H(T,["sheetID","sheetGroups","bodyScrolls","props","content","className","type","size","xcss","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect","wrapperClassName"]),D={},w=[];return o.match(/top/)?(w.push("top"),D.marginBottom="auto"):o.match(/middle/)?(w.push("center"),D.marginTop="auto",D.marginBottom="auto"):o.match(/bottom/)&&(w.push("bottom"),D.marginTop="auto"),o.match(/left/i)?(w.push("left"),D.marginRight="auto"):o.match(/center/i)?(w.push("center"),D.marginLeft="auto",D.marginRight="auto"):o.match(/right/i)&&(w.push("right"),D.marginLeft="auto"),a(B,I(d(d({className:[f("BB"),n].join(" "),padding:1,opacity:"trans"},W),D),{xcss:d({width:{XS:"22rem",S:"26rem",R:"36rem",L:"44rem","2L":"60rem","3L":"72rem",MAX:"100%"}[p],maxWidth:"96vw",transformOrigin:w.join(" ")},l),children:c.isFunction(r)?a(r,d({},S)):r}))},Edge:t=>{let W=t,{sheetID:e,sheetGroups:i,bodyScrolls:h,type:S,props:r,content:n,className:o="",size:p="R",onOpen:l,onClose:x,closeAtAroundClick:b,closeAtEscapeKeyDown:A,closeAtPageTransit:R,closeAtParentBlur:M,closeAtSwipeDown:oe,hold_state:K,overwrap:se,isOpen:re,backgroundEffect:ne,wrapperClassName:F}=W,Q=H(W,["sheetID","sheetGroups","bodyScrolls","type","props","content","className","size","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect","wrapperClassName"]);return a(B,I(d(I(d({className:[f("BB"),o].join(" ")},S=="drawer.right"?{marginLeft:"auto"}:S=="drawer.left"?{marginRight:"auto"}:{}),{opacity:"trans",position:"relative",backgroundColor:"layer.1",flexSizing:"none",minHeight:"viewHeight",boxShadow:"3.remark"}),Q),{xcss:d({width:{XS:"16rem",S:"20rem",R:"27rem",L:"32rem","2L":"40rem","3L":"58rem",MAX:"100vw"}[p],maxWidth:"96vw"},Q.xcss),children:c.isFunction(n)?a(n,d({},r)):n}))},Bottom:t=>{let Z=t,{componentId:e,sheetID:i,sheetGroups:h,bodyScrolls:S,props:r,content:n,size:o="R",sizeChanged:p,baseStyles:l,onOpen:x,onClose:b,closeAtAroundClick:A,closeAtEscapeKeyDown:R,closeAtPageTransit:M,closeAtParentBlur:oe,closeAtSwipeDown:K=!0,hold_state:se,overwrap:re,isOpen:ne,backgroundEffect:F,wrapperClassName:Q}=Z,W=H(Z,["componentId","sheetID","sheetGroups","bodyScrolls","props","content","size","sizeChanged","baseStyles","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect","wrapperClassName"]),D=c.getScreenSize(),w=[0,.2,.6,.95],T={ZERO:0,XS:1,S:1,R:2,L:3,"2L":3,"3L":3,MAX:3},[G,ie]=X(o),[E,k]=X({process:!1,processStart:0,originY:0,originValue:0,viewHeight:0,value:w[T[o]]});const O={Start:C=>{c(document).onEvent("mousemove",O.Move,{eventID:"BottomSheetMouseMove",passive:!1}).onEvent("touchmove",O.Move,{eventID:"BottomSheetTouchMove",passive:!1}).onEvent("mouseup",O.End,{eventID:"BottomSheetMouseUp"}).onEvent("touchend",O.End,{eventID:"BottomSheetTouchEnd"});let g=c.getCursor(C),m=I(d({},E),{process:!0,processStart:new Date().getTime(),originY:g.y,originValue:E.value,viewHeight:c.getScreenSize().height});P.update({[e]:{val_edit:m}}),k(m)},Move:C=>{var z;let g=(z=P.get(e))==null?void 0:z.val_edit;if(!g.process)return;let _=(c.getCursor(C).y-g.originY)/g.viewHeight,s=g.originValue-_;if(s>.95)s=.95+(s-.95)*.5;else if(s<.2){let N=.2-s;N-=.1,s=.1+(.1-N)*.5}return k(I(d({},g),{value:s})),C.preventDefault(),C.stopPropagation(),!1},End:C=>{var s;let g=(s=P.get(e))==null?void 0:s.val_edit;if(!g.process)return;c(document).removeEvent(["BottomSheetMouseMove","BottomSheetTouchMove","BottomSheetMouseUp","BottomSheetTouchEnd"]);let m=0;if(g.value<.1||(g.value<.5?m=1:g.value>.75?m=3:m=2),new Date().getTime()-g.processStart<300){let z=c.getCursor(C).y-g.originY;if(Math.abs(z)>=20){let N=+(z<0)*2-1;m+=N,m=Math.min(Math.max(m,0),w.length-1)}}m==0&&(K||(m=1)),ie(["ZERO","S","R","L"][m]),k(I(d({},g),{value:w[m],process:!1}))}},V=ue(!1);return U(()=>{V.current?G=="ZERO"?K&&v.close(i):setTimeout(()=>{t.sizeChanged&&t.sizeChanged(G)},250):V.current=!0},[G]),a(B,{className:f("BB"),margin:[0,"auto"],marginTop:"auto",opacity:"trans",width:1,xcss:d({maxWidth:12*60,height:D.height*E.value},E.process?{transition:"0s"}:{}),children:L(J,I(d({gap:0,flexSizing:"none",borderTopLeftRadius:"1.tone.primary",borderTopRightRadius:"1.tone.primary",borderBottom:"unset",boxShadow:"3.remark",position:"relative",overflow:"hidden",height:1},l),{children:[L(ee.Separate,{padding:1,backgroundColor:"layer.1",position:"relative",xcss:{userSelect:"none"},children:[a(B,{ssSphere:2.5}),a(ee.Center,{onPointerDown:O.Start,flexSizing:0,padding:"2/3",ssPushable:!0,isRounded:!0,xcss:{cursor:"grab",userSelect:"none"},children:a(B,{unitWidth:6,unitHeight:"1/2",backgroundColor:"layer.4",isRounded:!0,className:f("DragBar")})}),a(te.Sub,{color:"cloud",ssSphere:2.5,onClick:()=>{v.close(i)},children:a(q.X,{})})]}),a(B,I(d({backgroundColor:"layer.1",flexSizing:0,overflow:"auto"},W),{children:c.isFunction(n)?a(n,d({},r)):n}))]}))})},Custom:t=>{let Z=t,{sheetID:e,sheetGroups:i,bodyScrolls:h,event:S,parent:r,nextToCursor:n,gravityPoint:o=22,props:p,content:l,closeAtAroundClick:x,closeAtEscapeKeyDown:b,closeAtPageTransit:A,closeAtParentBlur:R,closeAtSwipeDown:M,hold_state:oe,onOpen:K,onClose:se,overwrap:re,isOpen:ne,resize:F,backgroundEffect:Q,wrapperClassName:W}=Z,D=H(Z,["sheetID","sheetGroups","bodyScrolls","event","parent","nextToCursor","gravityPoint","props","content","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","onOpen","onClose","overwrap","isOpen","resize","backgroundEffect","wrapperClassName"]),[w]=X($()),T=c.isElement(r)||c.isJmini(r)?c(r):Y(r),G='[data-sheet-id="'+w+'"]',ie='[data-sheet-content="'+w+'"]';o=o;let E=o%5||5,k=Math.ceil(o/5);const O={Init:()=>{if(n&&S){let u=c.getScreenSize(),ae=c.getCursor(S);return{top:ae.y-u.pageYOffset,left:ae.x-u.pageXOffset}}let C={};if(!T||!T[0])return C;let{top:g,right:m,bottom:_,left:s,height:z,width:N}=T.position();return c.isOneOf(E,1,2)?C.left=s:E==3?C.left=s+N/2:c.isOneOf(E,4,5)&&(C.left=m),o<=10?C.top=g:o<=15?C.top=g+z/2:o<=25&&(C.top=_),C},Adjust:()=>{let C=Y(G).position(),g=Y(ie).position(),m=T.position(),_=c.getScreenSize(),s={};for(let u in g)s[u]=g[u];if(c.scope(()=>{if(t.nextToCursor)return;let u=0;k==1?u=m.top-s.bottom:k==2?u=m.top-s.top:k==3?u=m.top-s.top+(m.height-s.height)/2:k==4?u=m.bottom-s.bottom:k==5&&(u=m.bottom-s.top),s.top+=u,s.bottom+=u}),c.scope(()=>{if(t.nextToCursor)return;let u=0;E==1?u=m.left-s.right:E==2?u=m.left-s.left:E==3?u=m.left-s.left+(m.width-s.width)/2:E==4?u=m.right-s.right:E==5&&(u=m.right-s.left),s.left+=u,s.right+=u}),s.top<0){let u=-s.top;s.top+=u,s.bottom+=u}if(s.bottom>_.height){let u=s.bottom-_.height;s.top-=u,s.bottom-=u}if(s.left<0){let u=-s.left;s.left+=u,s.right+=u}if(s.right>_.width){let u=s.right-_.width;s.left-=u,s.right-=u}let z=s.top-g.top,N=s.left-g.left;c(G).css({top:C.top+z+"px",left:C.left+N+"px"})}};let[V]=X(O.Init());return U(()=>{Y(G).await(10).addClass(f("Open")).await(200).callback(()=>{(F==null||F)&&O.Adjust()}),P.update({["customSheet-"+t.sheetID]:{reposition:()=>{O.Adjust()}}})},[]),T[0]?a(B,{className:[f("BB"),f("CustomSheet")].join(" "),"data-sheet-id":w,transition:"long",position:"absolute",width:0,height:0,opacity:"trans",flexCenter:!0,xcss:V,children:a(ce,{position:"absolute",className:[f("GPT"),f("GPT_"+o),f("Col_"+E),f("Row_"+k)].join(" "),children:a(B,I(d({"data-sheet-content":w,flexSizing:"none",maxHeight:"viewHeight"},D),{xcss:d({maxWidth:"98vw"},D.xcss),children:c.isFunction(l)?a(l,d({},p)):l}))})}):null}}},v={Wrapper:()=>a(y.Wrapper,{}),Element:t=>{let S=t,{isOpen:e,children:i}=S,h=H(S,["isOpen","children"]);return U(()=>{if(e){v.open(t.type,I(d({},h),{content:i}));return}h.sheetID&&v.close(h.sheetID)},[e,h.props||""]),null},image:(t,e)=>{let i=t.sheetID||$(),r=t,{type:h}=r,S=H(r,["type"]);v.open(h||"topCenter",I(d({size:"MAX"},S),{sheetID:i,xcss:{maxWidth:"100vw"},content:()=>{let[n]=X(c.Arrayify(e));return a(ge,{children:L(J,{children:[a(ee.Right,{children:L(te.Sub.S,{color:"cloud",isRounded:!0,onClick:()=>{v.close(i)},children:[a(q.X,{})," \u9589\u3058\u308B"]})}),a(me.Layout,{gap:1,gridTemplateColumns:"repeat(3,1fr)",gridTemplateRows:"repeat(2,auto)",gridChildTemplates:[["span 3",0],["span 2","span 2"],[0,0],[0,0],[0,"span 2"],["span 2",0],[0,0],[0,0]],children:n.map((o,p)=>a(he,{ssCardBox:!0,position:"relative",flexCenter:!0,src:o},p))})]})})}}))},open:(t,e,i)=>{e.sheetID=(e.sheetID||"").replace(/\./g,"-"),e.type=t;let h=P.get("Sheet-"+j.get().sessionUID);h&&h.add(e,i)},confirm:(t,e)=>{let i=(e==null?void 0:e.sheetID)||$();return new Promise((h,S)=>{let r=!1;v.open("middleCenter",{sheetID:i,size:(e==null?void 0:e.size)||"S",closeAtAroundClick:!0,onClose:()=>{h(r)},content:n=>L(J,{children:[a(ee.Right,{children:a(te.Sub.S,{color:"cloud",ssSphere:3,onClick:()=>{v.close(i)},children:a(q.X,{})})}),a(v.Body,{children:L(J,{gap:1,padding:2,children:[a(fe,{children:t}),a(te.Prime,{color:(e==null?void 0:e.color)||"theme",onClick:()=>{v.close(i),r=!0,h(r)},children:(e==null?void 0:e.buttonLabel)||L(le,{children:["\u5B9F\u884C ",a(q.ArrowRight,{})]})})]})})]})})})},update:(t,e)=>{t=(t||"").replace(/\./g,"-");let i=P.get(t);i&&i.update&&i.update(e)},customSheet:{reposition:t=>{let e=P.get("customSheet-"+t);e&&e.reposition&&e.reposition()}},close:function(t,e,i){let h=y.getSessionStates();if(!h)return;let{val_sheets:S}=h;t=t==null?void 0:t.replace(/\./g,"-");let r=S.find(o=>o.sheetID==t);if(!r||e=="Escape"&&!r.closeAtEscapeKeyDown)return;let n=P.get(r.sheetID);n&&n.close&&n.close(i)},closeGroup:t=>{let e=y.getSessionStates();if(!e)return;let{val_sheets:i}=e;t=(t||"").replace(/\./g,"-");for(let h of i)h.sheetGroups&&h.sheetGroups==t&&v.close(h.sheetID)},closeAll:t=>{let e=y.getSessionStates();if(!e)return;let{val_sheets:i}=e;for(let h of i)t&&!h.closeAtPageTransit||v.close(h.sheetID,"pageTransit",!0)},Body:t=>a(B,d({className:f("BaseBody"),backgroundColor:"layer.1",borderRadius:"1.tone.primary",position:"relative",boxShadow:"3.remark",transition:"long"},t))};export{v as Sheet,v as default};
1
+ import{b as m,c as I,d as H}from"../chunk-C5N2D3ZX.js";import{Fragment as le,jsx as a,jsxs as L}from"react/jsx-runtime";import c,{UUID as $,Time as pe,useStore as P}from"jmini";import{useState as X,useEffect as U,useRef as ue}from"react";import{$$fromRoot as Y,Config as j}from"../@utils";import{Box as T,Flex as ce,Img as he,FAI as q,Column as J,Grid as de,CacheRender as me}from"../atoms";import{Literal as fe,Row as ee}from"../mols";import{Button as te}from"./Trigger";import{SheetClasses as f}from"../@styles/componentClasses";import ge from"./Plate";const y={currentIndex:0,openQueue:{},getSessionStates:()=>{let t=P.get("sessionStates-"+j.get().sessionUID);return t||null},getnew_sheetstates:t=>{var i;let e=I(m({sheetGroups:t.sheetGroups||[],backgroundEffect:!0,overwrap:t.type=="custom",hold_state:!1,closeAtPageTransit:!0,closeAtEscapeKeyDown:!0,closeAtAroundClick:t.type=="custom",transition:"middle"},t),{sheetID:t.sheetID||$(),isOpen:!0,created_at:pe()});return e.type=="custom"&&(e.parent=e.parent||((i=e.event)==null?void 0:i.currentTarget)),e},Wrapper:()=>{let[t,e]=X([]),i={val_sheets:t,set_sheets:e},h="sessionStates-"+j.get().sessionUID;P.set({[h]:i}),U(()=>{let r="Sheet-"+j.get().sessionUID;P.set({[r]:{add:(n,o)=>{let p=P.get(r);if(!p)return;let l=y.getnew_sheetstates(n);if(y.openQueue[l.sheetID])return;if(y.openQueue[l.sheetID]=!0,o!="inherit"&&(l.isOpen=o!=null?o:!0),!!p.find(l.sheetID)){e(b=>{let A=[...b],R=A.findIndex(M=>M.sheetID==l.sheetID);return R==-1||(A[R]=l),A}),delete y.openQueue[l.sheetID];return}e(b=>[l,...b])},find:n=>{let o=y.getSessionStates();if(!o)return null;let{val_sheets:p}=o;return p.find(l=>l.sheetID==n)}}}),c(j.get().appRoot).removeEvent(["SheetEvent.keyUp","SheetEvent.Click"]).onEvent("keyup",function(n){let{key:o,metaKey:p}=n;if(o=="Escape"||o==","&&p){let l=y.getSessionStates();if(!l)return;let{val_sheets:x}=l,b=x.filter(R=>R.isOpen);if(!b.length)return;let A=b.reduce((R,M)=>R.created_at.value>M.created_at.value?R:M);v.close(A.sheetID,o)}},{eventID:"SheetEvent.keyUp"}).onEvent("click",function(n){let o=y.getSessionStates();if(!o)return;let{val_sheets:p}=o,l=n.target;if(!l||l!=null&&l.closest("."+f("CustomSheet")))return;let x=p.filter(b=>b.type=="custom");x.length&&x.forEach(b=>{let{parent:A}=b;if(!b.closeAtAroundClick)return;let R=Y(A)[0];A!==l&&R!==l&&(c(R).find(l).length||v.close(b.sheetID))})},{eventID:"SheetEvent.Click"})},[]);let S=t.some(r=>r.type!="custom"&&!r.overwrap&&r.isOpen);return L(le,{children:[t.map(r=>a(me,{params:r,forceRender:(n,o)=>n.isOpen!=o.isOpen||n.size!=o.size||!c.isEqual(c.SortifyObject(n.props||""),c.SortifyObject(o.props||"")),children:a(y.Core,I(m({},i),{val_sheet:r,patch_sheet:n=>{e(o=>{let p=[...o],l=p.findIndex(x=>x.sheetID==r.sheetID);return l!=-1&&(p[l]=I(m(m({},p[l]),n),{props:m(m({},p[l].props),n.props)})),p})},delete_sheet:()=>{e(n=>[...n.filter(o=>o.sheetID!=r.sheetID)])}}))},r.sheetID)),a(T,{className:f("BackgroundWrapper"),transition:"middle",backgroundColor:"dark.opa.few",ssAbsoluteCovered:!0,position:"fixed",ssZIndex:100,xcss:{opacity:S?1:0,pointerEvents:"none"}})]})},sheetCategory:t=>t=="custom"?"custom":t.startsWith("drawer")?"drawer":"normal",sheetPosition:t=>t=="drawer.left"?"left":t=="drawer.right"?"right":t=="drawer.bottom"?"bottom":"",Core:t=>{let{val_sheet:e,patch_sheet:i}=t,[h,S]=X(101+y.currentIndex),[r]=X($()),n=e.type!="custom"&&!e.overwrap;U(()=>{y.currentIndex++,c.scope(()=>{if(!e.closeAtParentBlur)return;let p=c(e.parent);p[0]&&p.onEvent("mouseout",()=>{p.removeEvent("SheetClosation-"+e.sheetID),i({isOpen:!1})},{eventID:"SheetClosation-"+e.sheetID})}),P.set({[e.sheetID]:{update:p=>{setTimeout(()=>{i(p)},10)},close:p=>{i({isOpen:!1})},open:()=>{i({isOpen:!0})}}})},[]),U(()=>{c.scope(()=>{let p=Y("#"+r);if(e.isOpen){e.hold_state&&S(y.currentIndex+1),p.await(10).removeClass(f("Hide")).await(10).addClass(f("Open")).callback(()=>{delete y.openQueue[e.sheetID],e.onOpen&&e.onOpen()});return}p.await(10).removeClass(f("Open")).await(251).addClass(f("Hide")).callback(()=>{if(e.onClose&&e.onClose(),n&&j.get().browserIs!="safari"&&c(j.get().appRoot).focus(),e.hold_state)return i({isOpen:!1});t.delete_sheet()})})},[e.isOpen]);let o=y.Types[{topLeft:"Normal",topCenter:"Normal",topRight:"Normal",middleLeft:"Normal",middleCenter:"Normal",middleRight:"Normal",bottomLeft:"Normal",bottomCenter:"Normal",bottomRight:"Normal","drawer.left":"Edge","drawer.right":"Edge","drawer.bottom":"Bottom",custom:"Custom"}[e.type]];return a(T,{className:["AMOTIFY_be",f("Wrap"),f("Tcate_"+y.sheetCategory(e.type)),f("Tpos_"+y.sheetPosition(e.type)),f("isMainSheet_"+n),e.wrapperClassName||""].join(" "),transition:"middle",width:1,ssAbsoluteCovered:!0,position:"fixed",ssZIndex:h,overflow:"auto",id:r,children:L(J,{className:f("Content"),gap:0,xcss:{minHeight:"100%"},children:[!!n&&a(T,{className:f("TapSensor"),position:"sticky",top:0,height:0,width:1,flexSizing:"none",children:a(T,{backgroundColor:"trans",height:"viewHeight",position:"absolute",top:0,width:1,className:f("TapContent"),onClick:p=>{var x;((x=e.closeAtAroundClick)==null||x)&&v.close(e.sheetID)}})}),a(o,m({componentId:r},e))]})},r)},Types:{Normal:t=>{let B=t,{sheetID:e,sheetGroups:i,bodyScrolls:h,props:S,content:r,className:n="",type:o,size:p="R",xcss:l,onOpen:x,onClose:b,closeAtAroundClick:A,closeAtEscapeKeyDown:R,closeAtPageTransit:M,closeAtParentBlur:oe,closeAtSwipeDown:K,hold_state:se,overwrap:re,isOpen:ne,backgroundEffect:F,wrapperClassName:Q}=B,W=H(B,["sheetID","sheetGroups","bodyScrolls","props","content","className","type","size","xcss","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect","wrapperClassName"]),D={},w=[];return o.match(/top/)?(w.push("top"),D.marginBottom="auto"):o.match(/middle/)?(w.push("center"),D.marginTop="auto",D.marginBottom="auto"):o.match(/bottom/)&&(w.push("bottom"),D.marginTop="auto"),o.match(/left/i)?(w.push("left"),D.marginRight="auto"):o.match(/center/i)?(w.push("center"),D.marginLeft="auto",D.marginRight="auto"):o.match(/right/i)&&(w.push("right"),D.marginLeft="auto"),a(T,I(m(m({className:[f("BB"),n].join(" "),padding:1,opacity:"trans"},W),D),{xcss:m({width:{XS:"22rem",S:"26rem",R:"36rem",L:"44rem","2L":"60rem","3L":"72rem",MAX:"100%"}[p],maxWidth:"96vw",transformOrigin:w.join(" ")},l),children:c.isFunction(r)?a(r,m({},S)):r}))},Edge:t=>{let W=t,{sheetID:e,sheetGroups:i,bodyScrolls:h,type:S,props:r,content:n,className:o="",size:p="R",onOpen:l,onClose:x,closeAtAroundClick:b,closeAtEscapeKeyDown:A,closeAtPageTransit:R,closeAtParentBlur:M,closeAtSwipeDown:oe,hold_state:K,overwrap:se,isOpen:re,backgroundEffect:ne,wrapperClassName:F}=W,Q=H(W,["sheetID","sheetGroups","bodyScrolls","type","props","content","className","size","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect","wrapperClassName"]);return a(T,I(m(I(m({className:[f("BB"),o].join(" ")},S=="drawer.right"?{marginLeft:"auto"}:S=="drawer.left"?{marginRight:"auto"}:{}),{opacity:"trans",position:"relative",backgroundColor:"layer.1",flexSizing:"none",minHeight:"viewHeight",boxShadow:"3.remark"}),Q),{xcss:m({width:{XS:"16rem",S:"20rem",R:"27rem",L:"32rem","2L":"40rem","3L":"58rem",MAX:"100vw"}[p],maxWidth:"96vw"},Q.xcss),children:c.isFunction(n)?a(n,m({},r)):n}))},Bottom:t=>{let Z=t,{componentId:e,sheetID:i,sheetGroups:h,bodyScrolls:S,props:r,content:n,size:o="R",sizeChanged:p,baseStyles:l,onOpen:x,onClose:b,closeAtAroundClick:A,closeAtEscapeKeyDown:R,closeAtPageTransit:M,closeAtParentBlur:oe,closeAtSwipeDown:K=!0,hold_state:se,overwrap:re,isOpen:ne,backgroundEffect:F,wrapperClassName:Q}=Z,W=H(Z,["componentId","sheetID","sheetGroups","bodyScrolls","props","content","size","sizeChanged","baseStyles","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect","wrapperClassName"]),D=c.getScreenSize(),w=[0,.2,.6,.95],B={ZERO:0,XS:1,S:1,R:2,L:3,"2L":3,"3L":3,MAX:3},[G,ie]=X(o),[E,k]=X({process:!1,processStart:0,originY:0,originValue:0,viewHeight:0,value:w[B[o]]});const O={Start:C=>{c(document).onEvent("mousemove",O.Move,{eventID:"BottomSheetMouseMove",passive:!1}).onEvent("touchmove",O.Move,{eventID:"BottomSheetTouchMove",passive:!1}).onEvent("mouseup",O.End,{eventID:"BottomSheetMouseUp"}).onEvent("touchend",O.End,{eventID:"BottomSheetTouchEnd"});let g=c.getCursor(C),d=I(m({},E),{process:!0,processStart:new Date().getTime(),originY:g.y,originValue:E.value,viewHeight:c.getScreenSize().height});P.update({[e]:{val_edit:d}}),k(d)},Move:C=>{var z;let g=(z=P.get(e))==null?void 0:z.val_edit;if(!g.process)return;let _=(c.getCursor(C).y-g.originY)/g.viewHeight,s=g.originValue-_;if(s>.95)s=.95+(s-.95)*.5;else if(s<.2){let N=.2-s;N-=.1,s=.1+(.1-N)*.5}return k(I(m({},g),{value:s})),C.preventDefault(),C.stopPropagation(),!1},End:C=>{var s;let g=(s=P.get(e))==null?void 0:s.val_edit;if(!g.process)return;c(document).removeEvent(["BottomSheetMouseMove","BottomSheetTouchMove","BottomSheetMouseUp","BottomSheetTouchEnd"]);let d=0;if(g.value<.1||(g.value<.5?d=1:g.value>.75?d=3:d=2),new Date().getTime()-g.processStart<300){let z=c.getCursor(C).y-g.originY;if(Math.abs(z)>=20){let N=+(z<0)*2-1;d+=N,d=Math.min(Math.max(d,0),w.length-1)}}d==0&&(K||(d=1)),ie(["ZERO","S","R","L"][d]),k(I(m({},g),{value:w[d],process:!1}))}},V=ue(!1);return U(()=>{V.current?G=="ZERO"?K&&v.close(i):setTimeout(()=>{t.sizeChanged&&t.sizeChanged(G)},250):V.current=!0},[G]),a(T,{className:f("BB"),margin:[0,"auto"],marginTop:"auto",opacity:"trans",width:1,xcss:m({maxWidth:12*60,height:D.height*E.value},E.process?{transition:"0s"}:{}),children:L(J,I(m({gap:0,flexSizing:"none",borderTopLeftRadius:"1.tone.primary",borderTopRightRadius:"1.tone.primary",borderBottom:"unset",boxShadow:"3.remark",position:"relative",overflow:"hidden",height:1},l),{children:[L(ee.Separate,{padding:1,backgroundColor:"layer.1",position:"relative",xcss:{userSelect:"none"},children:[a(T,{ssSphere:2.5}),a(ee.Center,{onPointerDown:O.Start,flexSizing:0,padding:"2/3",ssPushable:!0,isRounded:!0,xcss:{cursor:"grab",userSelect:"none"},children:a(T,{unitWidth:6,unitHeight:"1/2",backgroundColor:"layer.4",isRounded:!0,className:f("DragBar")})}),a(te.Sub,{color:"cloud",ssSphere:2.5,onClick:()=>{v.close(i)},children:a(q.X,{})})]}),a(T,I(m({backgroundColor:"layer.1",flexSizing:0,overflow:"auto"},W),{children:c.isFunction(n)?a(n,m({},r)):n}))]}))})},Custom:t=>{let Z=t,{sheetID:e,sheetGroups:i,bodyScrolls:h,event:S,parent:r,nextToCursor:n,gravityPoint:o=22,props:p,content:l,closeAtAroundClick:x,closeAtEscapeKeyDown:b,closeAtPageTransit:A,closeAtParentBlur:R,closeAtSwipeDown:M,hold_state:oe,onOpen:K,onClose:se,overwrap:re,isOpen:ne,resize:F,backgroundEffect:Q,wrapperClassName:W}=Z,D=H(Z,["sheetID","sheetGroups","bodyScrolls","event","parent","nextToCursor","gravityPoint","props","content","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","onOpen","onClose","overwrap","isOpen","resize","backgroundEffect","wrapperClassName"]),[w]=X($()),B=c.isElement(r)||c.isJmini(r)?c(r):Y(r),G='[data-sheet-id="'+w+'"]',ie='[data-sheet-content="'+w+'"]';o=o;let E=o%5||5,k=Math.ceil(o/5);const O={Init:()=>{if(n&&S){let u=c.getScreenSize(),ae=c.getCursor(S);return{top:ae.y-u.pageYOffset,left:ae.x-u.pageXOffset}}let C={};if(!B||!B[0])return C;let{top:g,right:d,bottom:_,left:s,height:z,width:N}=B.position();return c.isOneOf(E,1,2)?C.left=s:E==3?C.left=s+N/2:c.isOneOf(E,4,5)&&(C.left=d),o<=10?C.top=g:o<=15?C.top=g+z/2:o<=25&&(C.top=_),C},Adjust:()=>{let C=Y(G).position(),g=Y(ie).position(),d=B.position(),_=c.getScreenSize(),s={};for(let u in g)s[u]=g[u];if(c.scope(()=>{if(t.nextToCursor)return;let u=0;k==1?u=d.top-s.bottom:k==2?u=d.top-s.top:k==3?u=d.top-s.top+(d.height-s.height)/2:k==4?u=d.bottom-s.bottom:k==5&&(u=d.bottom-s.top),s.top+=u,s.bottom+=u}),c.scope(()=>{if(t.nextToCursor)return;let u=0;E==1?u=d.left-s.right:E==2?u=d.left-s.left:E==3?u=d.left-s.left+(d.width-s.width)/2:E==4?u=d.right-s.right:E==5&&(u=d.right-s.left),s.left+=u,s.right+=u}),s.top<0){let u=-s.top;s.top+=u,s.bottom+=u}if(s.bottom>_.height){let u=s.bottom-_.height;s.top-=u,s.bottom-=u}if(s.left<0){let u=-s.left;s.left+=u,s.right+=u}if(s.right>_.width){let u=s.right-_.width;s.left-=u,s.right-=u}let z=s.top-g.top,N=s.left-g.left;c(G).css({top:C.top+z+"px",left:C.left+N+"px"})}};let[V]=X(O.Init());return U(()=>{Y(G).await(10).addClass(f("Open")).await(200).callback(()=>{(F==null||F)&&O.Adjust()}),P.update({["customSheet-"+t.sheetID]:{reposition:()=>{O.Adjust()}}})},[]),B[0]?a(T,{className:[f("BB"),f("CustomSheet")].join(" "),"data-sheet-id":w,transition:"long",position:"absolute",width:0,height:0,opacity:"trans",flexCenter:!0,xcss:V,children:a(ce,{position:"absolute",className:[f("GPT"),f("GPT_"+o),f("Col_"+E),f("Row_"+k)].join(" "),children:a(T,I(m({"data-sheet-content":w,flexSizing:"none",maxHeight:"viewHeight"},D),{xcss:m({maxWidth:"98vw"},D.xcss),children:c.isFunction(l)?a(l,m({},p)):l}))})}):null}}},v={Wrapper:()=>a(y.Wrapper,{}),Element:t=>{let S=t,{isOpen:e,children:i}=S,h=H(S,["isOpen","children"]);return U(()=>{if(e){v.open(t.type,I(m({},h),{content:i}));return}h.sheetID&&v.close(h.sheetID)},[e,h.props||""]),null},image:(t,e)=>{let i=t.sheetID||$(),r=t,{type:h}=r,S=H(r,["type"]);v.open(h||"topCenter",I(m({size:"MAX"},S),{sheetID:i,xcss:{maxWidth:"100vw"},content:()=>{let[n]=X(c.Arrayify(e));return a(ge,{children:L(J,{children:[a(ee.Right,{children:L(te.Sub.S,{color:"cloud",isRounded:!0,onClick:()=>{v.close(i)},children:[a(q.X,{})," \u9589\u3058\u308B"]})}),a(de.Layout,{gap:1,gridTemplateColumns:"repeat(3,1fr)",gridTemplateRows:"repeat(2,auto)",gridChildTemplates:[["span 3",0],["span 2","span 2"],[0,0],[0,0],[0,"span 2"],["span 2",0],[0,0],[0,0]],children:n.map((o,p)=>a(he,{ssCardBox:!0,position:"relative",flexCenter:!0,src:o},p))})]})})}}))},open:(t,e,i)=>{e.sheetID=(e.sheetID||"").replace(/\./g,"-"),e.type=t;let h=P.get("Sheet-"+j.get().sessionUID);h&&h.add(e,i)},confirm:(t,e)=>{let i=(e==null?void 0:e.sheetID)||$();return new Promise((h,S)=>{let r=!1;v.open("middleCenter",{sheetID:i,size:(e==null?void 0:e.size)||"S",closeAtAroundClick:!0,onClose:()=>{h(r)},content:n=>L(J,{children:[a(ee.Right,{children:a(te.Sub.S,{color:"cloud",ssSphere:3,onClick:()=>{v.close(i)},children:a(q.X,{})})}),a(v.Body,{children:L(J,{gap:1,padding:2,children:[a(fe,{children:t}),a(te.Prime,{color:(e==null?void 0:e.color)||"theme",onClick:()=>{v.close(i),r=!0,h(r)},children:(e==null?void 0:e.buttonLabel)||L(le,{children:["\u5B9F\u884C ",a(q.ArrowRight,{})]})})]})})]})})})},update:(t,e)=>{t=(t||"").replace(/\./g,"-");let i=P.get(t);i&&i.update&&i.update(e)},customSheet:{reposition:t=>{let e=P.get("customSheet-"+t);e&&e.reposition&&e.reposition()}},close:function(t,e,i){let h=y.getSessionStates();if(!h)return;let{val_sheets:S}=h;t=t==null?void 0:t.replace(/\./g,"-");let r=S.find(o=>o.sheetID==t);if(!r||e=="Escape"&&!r.closeAtEscapeKeyDown)return;let n=P.get(r.sheetID);n&&n.close&&n.close(i)},closeGroup:t=>{let e=y.getSessionStates();if(!e)return;let{val_sheets:i}=e;t=(t||"").replace(/\./g,"-");for(let h of i)h.sheetGroups&&h.sheetGroups==t&&v.close(h.sheetID)},closeAll:t=>{let e=y.getSessionStates();if(!e)return;let{val_sheets:i}=e;for(let h of i)t&&!h.closeAtPageTransit||v.close(h.sheetID,"pageTransit",!0)},Body:t=>a(T,m({className:f("BaseBody"),backgroundColor:"layer.1",borderRadius:"1.tone.primary",position:"relative",boxShadow:"3.remark",transition:"long"},t))};export{v as Sheet,v as default};
@@ -1 +1 @@
1
- import{b as m,c as p,d as D}from"../chunk-C5N2D3ZX.js";import{Fragment as _,jsx as a,jsxs as y}from"react/jsx-runtime";import{createElement as M}from"react";import x,{UUID as k,useStore as i}from"jmini";import{Config as I,$$fromRoot as w}from"../@utils";import{useState as g,useEffect as b}from"react";import{Box as A,Flex as F,FAI as R}from"../atoms";import{Row as B}from"../mols";import{Button as E}from"./Button";import{SnackbarClasses as h}from"../@styles/componentClasses";const u={add:function(o){let t=i.get("Snackbar-"+I.get().sessionUID);return t&&t.add(o),this},remove:function(o){let t=i.get("Snackbar-"+I.get().sessionUID);return t&&t.remove(o),this},removeALL:function(){let o=i.get("Snackbar-"+I.get().sessionUID);return o&&o.removeALL(),this},Wrapper:()=>a(L.Wrapper,{})},L={Cell:o=>{let C=o,{snackID:t,secondsToClose:r,componentId:f=k(),children:d,customChildren:e}=C,s=D(C,["snackID","secondsToClose","componentId","children","customChildren"]),[n]=g(f),[l,c]=g(o.secondsToClose||10);b(()=>{let v=w('[data-component-id="'+n+'"]');setTimeout(()=>{v.addClass(h("FadeIn"))},10),i.set({["Snackbar-"+t]:{remove:()=>{v.addClass(h("FadeOut"))}}})},[]),b(()=>{x.interval.once(()=>{l<=0||c(l-1)},1e3,"Snackbar-"+n),l===0&&u.remove(t)},[l]);let S=a(_,{});return e?S=a(e,{close:()=>{u.remove(t)}}):S=y(B.Separate,{verticalAlign:"top",children:[a(A,{padding:["1/4",0],flexSizing:0,children:x.isFunction(d)?a(d,{}):d}),a(E.Clear,{color:"layer",backgroundColor:"layer.4.opa.low",fontColor:"white",ssSphere:2.5,onClick:()=>{u.remove(t)},children:a(R.X,{})})]}),a(A,p(m({className:h("Cell"),componentId:n,onMouseOver:()=>{c(-1)},onMouseOut:()=>{c(r||10)},opacity:"trans",width:1,padding:"2/3",marginBottom:1,borderRadius:"1.tone.primary",fontColor:"white",boxShadow:"1.remark",backgroundColor:"dark",transition:"middle"},s),{children:S}))},Wrapper:()=>{let[o,t]=g(k()),[r,f]=g([]);b(()=>{i.set({["Snackbar-"+I.get().sessionUID]:{add:e=>{e.snackID=e.snackID||k();let s=r.findIndex(n=>n.snackID==e.snackID);if(s==-1)r.unshift(p(m({},e),{snackID:e.snackID}));else{let n=[...r];n[s]=p(m({},e),{snackID:e.snackID}),r=n}t(k())},remove:e=>{let s=i.get("Snackbar-"+e);s&&s.remove&&(s.remove(),setTimeout(()=>{let n=r.findIndex(c=>c.snackID==e);if(n==-1)return;let l=[...r];l.splice(n,1),f(l)},210))},removeALL:()=>{f([])}}})},[r.length]);let d=r.map(e=>M(L.Cell,p(m({},e),{key:e.snackID})));return a(F,{className:["AMOTIFY_be","AMOTIFY_be_snackbar",h("Wrapper")].join(" "),position:"fixed",right:0,bottom:0,paddingLeft:0,paddingRight:1,paddingBottom:"safeAreaBottom",verticalAlign:"bottom",overflow:"auto",UnderBreakPointStyles:{left:0,paddingLeft:1,width:"auto"},children:d})}};export{u as Snackbar,u as default};
1
+ import{b as m,c as p,d as D}from"../chunk-C5N2D3ZX.js";import{Fragment as _,jsx as a,jsxs as y}from"react/jsx-runtime";import{createElement as M}from"react";import x,{UUID as k,useStore as i}from"jmini";import{Config as I,$$fromRoot as w}from"../@utils";import{useState as g,useEffect as b}from"react";import{Box as A,Flex as F,FAI as R}from"../atoms";import{Row as B}from"../mols";import{Button as E}from"./Trigger";import{SnackbarClasses as h}from"../@styles/componentClasses";const u={add:function(o){let t=i.get("Snackbar-"+I.get().sessionUID);return t&&t.add(o),this},remove:function(o){let t=i.get("Snackbar-"+I.get().sessionUID);return t&&t.remove(o),this},removeALL:function(){let o=i.get("Snackbar-"+I.get().sessionUID);return o&&o.removeALL(),this},Wrapper:()=>a(L.Wrapper,{})},L={Cell:o=>{let C=o,{snackID:t,secondsToClose:r,componentId:f=k(),children:d,customChildren:e}=C,s=D(C,["snackID","secondsToClose","componentId","children","customChildren"]),[n]=g(f),[l,c]=g(o.secondsToClose||10);b(()=>{let v=w('[data-component-id="'+n+'"]');setTimeout(()=>{v.addClass(h("FadeIn"))},10),i.set({["Snackbar-"+t]:{remove:()=>{v.addClass(h("FadeOut"))}}})},[]),b(()=>{x.interval.once(()=>{l<=0||c(l-1)},1e3,"Snackbar-"+n),l===0&&u.remove(t)},[l]);let S=a(_,{});return e?S=a(e,{close:()=>{u.remove(t)}}):S=y(B.Separate,{verticalAlign:"top",children:[a(A,{padding:["1/4",0],flexSizing:0,children:x.isFunction(d)?a(d,{}):d}),a(E.Clear,{color:"layer",backgroundColor:"layer.4.opa.low",fontColor:"white",ssSphere:2.5,onClick:()=>{u.remove(t)},children:a(R.X,{})})]}),a(A,p(m({className:h("Cell"),componentId:n,onMouseOver:()=>{c(-1)},onMouseOut:()=>{c(r||10)},opacity:"trans",width:1,padding:"2/3",marginBottom:1,borderRadius:"1.tone.primary",fontColor:"white",boxShadow:"1.remark",backgroundColor:"dark",transition:"middle"},s),{children:S}))},Wrapper:()=>{let[o,t]=g(k()),[r,f]=g([]);b(()=>{i.set({["Snackbar-"+I.get().sessionUID]:{add:e=>{e.snackID=e.snackID||k();let s=r.findIndex(n=>n.snackID==e.snackID);if(s==-1)r.unshift(p(m({},e),{snackID:e.snackID}));else{let n=[...r];n[s]=p(m({},e),{snackID:e.snackID}),r=n}t(k())},remove:e=>{let s=i.get("Snackbar-"+e);s&&s.remove&&(s.remove(),setTimeout(()=>{let n=r.findIndex(c=>c.snackID==e);if(n==-1)return;let l=[...r];l.splice(n,1),f(l)},210))},removeALL:()=>{f([])}}})},[r.length]);let d=r.map(e=>M(L.Cell,p(m({},e),{key:e.snackID})));return a(F,{className:["AMOTIFY_be","AMOTIFY_be_snackbar",h("Wrapper")].join(" "),position:"fixed",right:0,bottom:0,paddingLeft:0,paddingRight:1,paddingBottom:"safeAreaBottom",verticalAlign:"bottom",overflow:"auto",UnderBreakPointStyles:{left:0,paddingLeft:1,width:"auto"},children:d})}};export{u as Snackbar,u as default};
@@ -1 +1 @@
1
- import{b as r,c as S,d as $}from"../../chunk-C5N2D3ZX.js";import{Fragment as U,jsx as a,jsxs as L}from"react/jsx-runtime";import D,{UUID as G,useStore as Q}from"jmini";import{useState as Y,useEffect as W}from"react";import{useRemote as E}from"../../@utils";import{Box as B,Flex as M,FAI as N,Span as le,Column as oe}from"../../atoms";import{Literal as ne,Row as j}from"../../mols";import{Button as F}from"../Button";import ee from"../Sheet";import I from"../Input";import{faArrowUp as se}from"@fortawesome/free-solid-svg-icons/faArrowUp";import{faArrowDown as ie}from"@fortawesome/free-solid-svg-icons/faArrowDown";import{faArrowRight as ce}from"@fortawesome/free-solid-svg-icons/faArrowRight";import{faFilter as de}from"@fortawesome/free-solid-svg-icons/faFilter";import R from"./Parts";import ue from"./Wrapper";import{DefaultCellSystemAdjustingStyles as K}from"./cellStyling";import{TableClasses as b}from"../../@styles/componentClasses";const x={__memoryID:G(),Header:t=>{var g,w;let{val_status:e,set_status:s,KeywordFilterRows:h}=r({},t),{order:i,filter:l}=e,[d,p]=i.current,m=[],c=[...e.head];if(e.checker){let n={top:!0,bottom:!e.rows.length,left:!0,right:!e.colLength,rowIndex:0,colIndex:0,isBody:!1,isHeader:!0},o=K(n),u=e.cellStylesCallback?e.cellStylesCallback(n):{};m.push(a(R.TH,S(r(r(r({fontWeight:"2.normal",position:"sticky",ssZIndex:2,top:0,unitWidth:4,padding:0},e.cellStyles),o),u),{xcss:r(r({},(g=e.cellStyles)==null?void 0:g.xcss),u.xcss),className:[b("Cell"),e.cellClassName].join(" "),children:a(B,{flexCenter:!0,children:a(I.Checker,{label:"",value:!1,onUpdateValidValue:f=>{let y=e.rows;y.forEach(T=>{T.checked=f}),s(S(r({},e),{rows:y}))}})})}),-1))}for(let n=0;n<e.colLength;n++){let o=c[n];if(!o)continue;let u=o.children||o.data,f=i.enabled&&i.column[n],y=l.enabled&&l.column[n],T=f?a(N,{fontSize:"1.mini",fontColor:n==d?"1.clear":"5.translucent",icon:n==d?p=="DESC"?ie:se:ce}):null,A=a(U,{});if(y){let _=h.map(O=>{var v;return(v=O[n])==null?void 0:v.data});_=[...new Set(_)].toASC();let P=l.current[n];if(P){let O=_.filter(C=>!P.includes(C)),v=[];_.forEach(C=>{C&&v.push({value:C,label:a(B,{flexSizing:"auto",children:C})})});let J="BUTTON-"+e.componentId+"-"+n,X=e.componentId+"-"+n,re={sheetID:X,parent:"#"+J,gravityPoint:23,content:L(M,{flexType:"col",border:!0,boxShadow:"3.remark",backgroundColor:"layer.1",borderRadius:1,xcss:{minWidth:12*20,maxWidth:12*30},children:[a(oe,{gap:"1/3",overflow:"auto",padding:"2/3",xcss:{maxHeight:12*30},children:a(I.Checkbox,{icon:!0,value:O,display:"flex",gap:"2/3",override:"force",options:v,hideInput:!0,name:"DTFilter-col-"+n+"-table-"+e.componentId,onUpdateValidValue:C=>{let H=_.filter(ae=>!C.includes(ae)),Z=r({},e);Z.filter.current[n]=H,s(Z)}})}),L(j.Separate,{gap:"2/3",padding:"2/3",horizontalAlign:"right",children:[a(F.Border.S,{isRounded:!0,onClick:()=>{ee.close(X)},children:"\u9589\u3058\u308B"}),a(F.Prime.S,{color:"theme",isRounded:!0,ssEffectsOnActive:"shrink",onClick:()=>{let C=[];P.length||(C=_);let H=r({},e);H.filter.current[n]=C,s(H)},children:"\u5168\u9078\u629E"})]})]})};A=a(B,{className:b("FilterRegion"),children:a(F.Sub.S,{ssSphere:2.5,fontSize:"1.mini",className:b("Filtering_"+!!P.length),id:J,onClick:C=>{C.stopPropagation(),ee.open("custom",re)},children:a(N,{icon:de})})})}}let z={top:!0,bottom:!e.rows.length,left:e.checker?!1:n==0,right:n==e.colLength-1,rowIndex:0,colIndex:n,isBody:!1,isHeader:!0},te=K(z),q=e.cellStylesCallback?e.cellStylesCallback(z):{};o=S(r(r(r(r({},e.cellStyles),te),o),q),{ssPushable:f,xcss:r(r(r({},(w=e.cellStyles)==null?void 0:w.xcss),q.xcss),o.xcss),className:[b("Cell"),e.cellClassName,o.className].join(" ")}),delete o.orderIndex,m.push(a(R.TH,S(r({fontWeight:"2.normal",position:"sticky",ssZIndex:2,top:0},o),{onClick:_=>{if(f){let P=r({},e),O=[n,d===n?p=="ASC"?"DESC":"ASC":i.priority];P.order.current=O,s(P),e.onOrderChanged&&e.onOrderChanged(O)}},children:L(M,{flexType:"row-r",flexWrap:!1,height:1,borderRadius:"inherit",flexCenter:!0,children:[A,L(M,{flexSizing:0,position:"relative",borderRadius:"inherit",gap:"1/2",flexWrap:!1,verticalAlign:"center",horizontalAlign:"center",children:[T,u]})]})}),n))}return a(R.Row,{className:[b("Row"),b("HeadRow")].join(" "),children:m})},Body:t=>{let{val_status:e,PageRows:s}=t,h=[];if(s.forEach((i,l)=>{var m;let d=[...i],p=[];if(e.checker){let c={top:l==0&&!e.head,bottom:l==s.length-1,left:!0,right:!e.colLength,rowIndex:l,colIndex:0,isBody:!0,isHeader:!1},g=K(c),w=e.cellStylesCallback?e.cellStylesCallback(c):{};p.push(a(R.TH,S(r(r(r({unitWidth:4,padding:0,borderRight:!0},e.cellStyles),g),w),{xcss:r(r({},(m=e.cellStyles)==null?void 0:m.xcss),w.xcss),className:[b("Cell"),e.cellClassName].join(" "),children:a(B,{flexCenter:!0,children:a(I.Checker,{label:"",value:i.checked,override:"force",onUpdateValidValue:n=>{let o=e.rows,u=o.findIndex(f=>D.isEqual(f.rowID,i.rowID));u!=-1&&(o[u].checked=n,t.set_status(f=>S(r({},f),{rows:o})))}})})}),-1))}d.forEach((c,g)=>{var A;if(!c)return;let T=c,{type:w="td"}=T,n=$(T,["type"]),o={top:l==0&&!e.head,bottom:l==s.length-1,left:e.checker?!1:g==0,right:g==e.colLength-1,rowIndex:l,colIndex:g,isBody:!0,isHeader:!1},u=K(o),f=e.cellStylesCallback?e.cellStylesCallback(o):{};n=S(r(r(r(r({},e.cellStyles),u),n),f),{xcss:r(r(r({},(A=e.cellStyles)==null?void 0:A.xcss),n.xcss),f.xcss),className:[b("Cell"),e.cellClassName,n.className].join(" ")}),delete n.orderIndex;let y=R[w=="td"?"TD":"TH"];p.push(a(y,r({},n),g))}),h.push(a(R.Row,{className:[b("Row"),b("BodyRow")].join(" "),children:p,onClick:c=>{e.onRowClick&&e.onRowClick(i.rowID,c)}},l))}),!s.length){let i=a(B,{padding:2,fontColor:"4.thin",textAlign:"center",borderTop:"1.thin",children:"\u30C6\u30FC\u30D6\u30EB\u304C\u3042\u308A\u307E\u305B\u3093"});e.noRecords&&(i=a(U,{children:e.noRecords})),h.push(a(R.Row,{className:[b("Row"),b("BodyRow"),b("DataNotFound")].join(" "),children:a(R.TD,{colSpan:e.colLength,className:b("Cell"),children:i})},"dataNotFound"))}return a(U,{children:h})},Core:t=>{let{val_status:e,set_status:s}=t,{searchKeyword:h,filter:i,order:l,paging:d}=e,p=[...e.rows],m=[...e.rows],c=[...e.rows],g=[...e.rows];if(h&&(m=p.filter(o=>(o.__sys4SearchKey||"").match(new RegExp(String(h).escapeRegExChar(),"i"))?1:0),c=[...m],g=[...m]),i.enabled)for(let o=0;o<e.colLength;o++){let u=i.column[o],f=i.current[o];u&&f&&f.length&&(c=c.filter(y=>!f.includes(y[o].data)),g=[...c])}l.enabled&&(l.current[1]=="ASC"?c=c.toASC(l.current[0]+"[orderIndex]"):c=c.toDESC(l.current[0]+"[orderIndex]"),g=[...c]);{let{currentPageIndex:o,rowLength:u}=d;g=[...g].splice((o-1)*u,u)}let w=x.__memoryID+"_"+e.tableID,n={rows:{total:p.length,page:g.length,filtered:c.length},val_status:S(r({},e),{paging:S(r({},e.paging),{pageLength:Math.ceil(c.length/e.paging.rowLength)})}),set_status:s};return Q.update({[w]:{getRowData:()=>{let o=[...p];return l.enabled&&(l.current[1]=="ASC"?o=o.toASC(l.current[0]+"[orderIndex]"):o=o.toDESC(l.current[0]+"[orderIndex]")),o.forEach(u=>{u.currentPage=!1,u.filtered=!1}),g.forEach(u=>{let{rowID:f}=u;o.find(y=>D.isEqual(y.rowID,f)).currentPage=!0}),c.forEach(u=>{let{rowID:f}=u;o.find(y=>D.isEqual(y.rowID,f)).filtered=!0}),o}}}),W(()=>{E.bridge(e.tableID,n)}),a(B,{className:b("TableBase"),children:a(R.Table,{className:b("Table"),children:L(R.Body,{children:[a(x.Header,{val_status:e,set_status:s,KeywordFilterRows:m}),a(x.Body,{val_status:e,set_status:s,PageRows:g})]})})},h)},Propagations:{},DataLeveler:t=>{var e,s;return t=r({},t),t.filter=(e=t.filter)!=null?e:!1,t.filter=Array.from({length:t.colLength}).map((h,i)=>{var l;return D.isBoolean(t.filter)?t.filter:(l=t.filter[i])!=null?l:!1}),t.order=(s=t.order)!=null?s:!0,t.orderPriority=t.orderPriority||"ASC",t.order=Array.from({length:t.colLength}).map((h,i)=>{var l;return D.isBoolean(t.order)?t.order:(l=t.order[i])!=null?l:!0}),t=r({checker:!1,searchKeyword:"",filter:!1,order:!0,defaultOrder:[0,"ASC"]},t),t.rows.forEach((h,i)=>{h.rowID=h.rowID||i;let l=[];h.forEach((d,p)=>{let{data:m,children:c,orderIndex:g}=d;d.orderIndex=D.isExist(g)?String(g):String(m),d.children=c||String(m),l.push(String(d.data))}),h.__sys4SearchKey=l.join("/")}),a(x.StateManager,r({},t))},StateManager:t=>{let{colLength:e,checker:s=!1,searchKeyword:h="",filter:i,order:l,orderPriority:d="ASC",defaultOrder:p=[0,d],pageRowLength:m=30}=t,[c]=Y(G()),g={tableID:t.tableID||c,componentId:c,colLength:e,checker:s,searchKeyword:h,filter:{enabled:i!==!1,column:i,current:Array.from({length:e},()=>[])},order:{enabled:l!==!1,column:l,current:p,priority:t.orderPriority},paging:{rowLength:m,pageLength:Math.ceil(t.rows.length/m),currentPageIndex:1},head:t.head,rows:t.rows,noRecords:t.noRecords,cellStyles:t.cellStyles||{},cellClassName:t.cellClassName||"",cellStylesCallback:t.cellStylesCallback,onRowClick:t.onRowClick,onOrderChanged:t.onOrderChanged},[w,n]=Y(g);const o=()=>{const u=new WeakSet;return(f,y)=>{if(typeof y=="object"&&y!==null){if(u.has(y))return"[Circular Reference]";if(f=="children")return"[React Element]";u.add(y)}return y}};return W(()=>{n(u=>S(r({},u),{rows:g.rows}))},[D.Stringify(g.rows,o())]),W(()=>{n(u=>S(r({},u),{head:g.head}))},[D.Stringify(g.head,o())]),a(x.Core,{val_status:w,set_status:n})}},ge={__memoryID:x.__memoryID,getRowData:t=>{let e=Q.get(x.__memoryID+"_"+t);if(e!=null&&e.getRowData)return e.getRowData()}},V={SearchInput:t=>{let e=E.catch(t.tableID);if(!e)return null;let{val_status:s,set_status:h}=e;return a(I.TextField,{label:"\u691C\u7D22...",clearButton:!0,padding:"2/3",paddingRight:3,rightIcon:a(I.RightIcon,{ssSphere:2,fontColor:"5.translucent",right:"2/3",children:a(N.Search,{})}),value:s.searchKeyword,onUpdateValidValue:i=>{t.onChange(i),D.interval.once(()=>{h(l=>S(r({},l),{paging:S(r({},l.paging),{currentPageIndex:1}),filter:S(r({},l.filter),{current:Array.from({length:l.colLength},()=>[])}),searchKeyword:i}))},200,"InputSearchTime")}})},Info:t=>{let e=E.catch(t.tableID);if(!e)return null;let s=e.rows.filtered.toRate(e.rows.total)||0;return L(M,{verticalAlign:"baseline",gap:"1/2",fontSize:"1.mini",fontColor:"3.blur",children:[a(le,{fontSize:"4.thirdTitle",fontColor:"theme",children:e.rows.filtered.toLocaleString()}),"/ ",e.rows.total.toLocaleString(),"\u4EF6 (",s,"%)"]})},Paging:t=>{let e=E.catch(t.tableID);if(!e)return null;let{val_status:s,set_status:h}=e,i=[];for(let d=0;d<s.paging.pageLength;d++)i.push({value:d+1,label:(d+1).toString()});const l=d=>{let p=Math.min(Math.max(1,d),s.paging.pageLength),m=r({},s);m.paging.currentPageIndex=p,h(c=>S(r({},c),{paging:S(r({},c.paging),{currentPageIndex:p})}))};return a(I.Select,{emptySelect:!1,padding:["1/3","2/3"],override:"force",gap:0,leftIcon:a(I.LeftIcon,{xcss:{left:2,pointerEvents:"all"},children:a(F.Sub.S,{color:"cloud",fontColor:"4.thin",ssSquare:2.5,unitWidth:2,onClick:()=>{if(s.paging.currentPageIndex==1){l(s.paging.pageLength);return}l(s.paging.currentPageIndex-1)},children:a(N.ChevronLeft,{})})}),rightIcon:a(I.RightIcon,{xcss:{right:2,pointerEvents:"all"},children:a(F.Sub.S,{color:"cloud",fontColor:"4.thin",ssSquare:2.5,unitWidth:2,onClick:()=>{if(s.paging.currentPageIndex==s.paging.pageLength){l(1);return}l(s.paging.currentPageIndex+1)},children:a(N.ChevronRight,{})})}),options:i.map(d=>({value:d.value,label:L(j.Left,{gap:"1/3",verticalAlign:"baseline",children:[d.label,L(ne.Micro,{fontColor:"4.thin",children:["/ ",s.paging.pageLength]})]})})),value:s.paging.currentPageIndex,onUpdateValidValue:d=>{l(d)}})},RowLength:t=>{let e=E.catch(t.tableID);if(!e)return null;let{val_status:s,set_status:h}=e,i=s.paging.rowLength,l=0,d=t.lengthSelect.map(p=>(l|=+(p==i),{value:p,label:p.toString()}));return l||d.push({value:i,label:i.toString()}),a(j.Center,{gap:"1/2",children:a(I.Select,{emptySelect:!1,override:"force",padding:"1/3",paddingLeft:3,paddingRight:2,pickerStyles:{xcss:{minWidth:12*9}},pickerPosition:4,value:s.paging.rowLength,leftIcon:a(I.LeftIcon,{fontSize:"0.xs",fontColor:"4.thin",xcss:{left:6},children:"\u8868\u793A"}),rightIcon:a(I.RightIcon,{fontSize:"0.xs",fontColor:"4.thin",xcss:{right:6},children:"\u4EF6"}),options:d.toASC("value"),onUpdateValidValue:p=>{h(m=>S(r({},m),{paging:{rowLength:Number(p),currentPageIndex:1,pageLength:Math.ceil(e.rows.filtered/Number(p))}}))}})})}},he=t=>a(ue,S(r({},t),{type:"data",JSXChildren:x.DataLeveler})),k=he;k.__memoryID=x.__memoryID,k.getRowData=ge.getRowData,k.Info=V.Info,k.Paging=V.Paging,k.RowLength=V.RowLength,k.SearchInput=V.SearchInput;export{k as Data,k as default};
1
+ import{b as r,c as S,d as $}from"../../chunk-C5N2D3ZX.js";import{Fragment as U,jsx as a,jsxs as L}from"react/jsx-runtime";import D,{UUID as G,useStore as Q}from"jmini";import{useState as Y,useEffect as W}from"react";import{useRemote as E}from"../../@utils";import{Box as B,Flex as M,FAI as N,Span as le,Column as oe}from"../../atoms";import{Literal as ne,Row as j}from"../../mols";import{Button as F}from"../Trigger";import ee from"../Sheet";import I from"../Input";import{faArrowUp as se}from"@fortawesome/free-solid-svg-icons/faArrowUp";import{faArrowDown as ie}from"@fortawesome/free-solid-svg-icons/faArrowDown";import{faArrowRight as ce}from"@fortawesome/free-solid-svg-icons/faArrowRight";import{faFilter as de}from"@fortawesome/free-solid-svg-icons/faFilter";import R from"./Parts";import ue from"./Wrapper";import{DefaultCellSystemAdjustingStyles as K}from"./cellStyling";import{TableClasses as b}from"../../@styles/componentClasses";const x={__memoryID:G(),Header:t=>{var g,w;let{val_status:e,set_status:s,KeywordFilterRows:h}=r({},t),{order:i,filter:l}=e,[d,p]=i.current,m=[],c=[...e.head];if(e.checker){let n={top:!0,bottom:!e.rows.length,left:!0,right:!e.colLength,rowIndex:0,colIndex:0,isBody:!1,isHeader:!0},o=K(n),u=e.cellStylesCallback?e.cellStylesCallback(n):{};m.push(a(R.TH,S(r(r(r({fontWeight:"2.normal",position:"sticky",ssZIndex:2,top:0,unitWidth:4,padding:0},e.cellStyles),o),u),{xcss:r(r({},(g=e.cellStyles)==null?void 0:g.xcss),u.xcss),className:[b("Cell"),e.cellClassName].join(" "),children:a(B,{flexCenter:!0,children:a(I.Checker,{label:"",value:!1,onUpdateValidValue:f=>{let y=e.rows;y.forEach(T=>{T.checked=f}),s(S(r({},e),{rows:y}))}})})}),-1))}for(let n=0;n<e.colLength;n++){let o=c[n];if(!o)continue;let u=o.children||o.data,f=i.enabled&&i.column[n],y=l.enabled&&l.column[n],T=f?a(N,{fontSize:"1.mini",fontColor:n==d?"1.clear":"5.translucent",icon:n==d?p=="DESC"?ie:se:ce}):null,A=a(U,{});if(y){let _=h.map(O=>{var v;return(v=O[n])==null?void 0:v.data});_=[...new Set(_)].toASC();let P=l.current[n];if(P){let O=_.filter(C=>!P.includes(C)),v=[];_.forEach(C=>{C&&v.push({value:C,label:a(B,{flexSizing:"auto",children:C})})});let J="BUTTON-"+e.componentId+"-"+n,X=e.componentId+"-"+n,re={sheetID:X,parent:"#"+J,gravityPoint:23,content:L(M,{flexType:"col",border:!0,boxShadow:"3.remark",backgroundColor:"layer.1",borderRadius:1,xcss:{minWidth:12*20,maxWidth:12*30},children:[a(oe,{gap:"1/3",overflow:"auto",padding:"2/3",xcss:{maxHeight:12*30},children:a(I.Checkbox,{icon:!0,value:O,display:"flex",gap:"2/3",override:"force",options:v,hideInput:!0,name:"DTFilter-col-"+n+"-table-"+e.componentId,onUpdateValidValue:C=>{let H=_.filter(ae=>!C.includes(ae)),Z=r({},e);Z.filter.current[n]=H,s(Z)}})}),L(j.Separate,{gap:"2/3",padding:"2/3",horizontalAlign:"right",children:[a(F.Border.S,{isRounded:!0,onClick:()=>{ee.close(X)},children:"\u9589\u3058\u308B"}),a(F.Prime.S,{color:"theme",isRounded:!0,ssEffectsOnActive:"shrink",onClick:()=>{let C=[];P.length||(C=_);let H=r({},e);H.filter.current[n]=C,s(H)},children:"\u5168\u9078\u629E"})]})]})};A=a(B,{className:b("FilterRegion"),children:a(F.Sub.S,{ssSphere:2.5,fontSize:"1.mini",className:b("Filtering_"+!!P.length),id:J,onClick:C=>{C.stopPropagation(),ee.open("custom",re)},children:a(N,{icon:de})})})}}let z={top:!0,bottom:!e.rows.length,left:e.checker?!1:n==0,right:n==e.colLength-1,rowIndex:0,colIndex:n,isBody:!1,isHeader:!0},te=K(z),q=e.cellStylesCallback?e.cellStylesCallback(z):{};o=S(r(r(r(r({},e.cellStyles),te),o),q),{ssPushable:f,xcss:r(r(r({},(w=e.cellStyles)==null?void 0:w.xcss),q.xcss),o.xcss),className:[b("Cell"),e.cellClassName,o.className].join(" ")}),delete o.orderIndex,m.push(a(R.TH,S(r({fontWeight:"2.normal",position:"sticky",ssZIndex:2,top:0},o),{onClick:_=>{if(f){let P=r({},e),O=[n,d===n?p=="ASC"?"DESC":"ASC":i.priority];P.order.current=O,s(P),e.onOrderChanged&&e.onOrderChanged(O)}},children:L(M,{flexType:"row-r",flexWrap:!1,height:1,borderRadius:"inherit",flexCenter:!0,children:[A,L(M,{flexSizing:0,position:"relative",borderRadius:"inherit",gap:"1/2",flexWrap:!1,verticalAlign:"center",horizontalAlign:"center",children:[T,u]})]})}),n))}return a(R.Row,{className:[b("Row"),b("HeadRow")].join(" "),children:m})},Body:t=>{let{val_status:e,PageRows:s}=t,h=[];if(s.forEach((i,l)=>{var m;let d=[...i],p=[];if(e.checker){let c={top:l==0&&!e.head,bottom:l==s.length-1,left:!0,right:!e.colLength,rowIndex:l,colIndex:0,isBody:!0,isHeader:!1},g=K(c),w=e.cellStylesCallback?e.cellStylesCallback(c):{};p.push(a(R.TH,S(r(r(r({unitWidth:4,padding:0,borderRight:!0},e.cellStyles),g),w),{xcss:r(r({},(m=e.cellStyles)==null?void 0:m.xcss),w.xcss),className:[b("Cell"),e.cellClassName].join(" "),children:a(B,{flexCenter:!0,children:a(I.Checker,{label:"",value:i.checked,override:"force",onUpdateValidValue:n=>{let o=e.rows,u=o.findIndex(f=>D.isEqual(f.rowID,i.rowID));u!=-1&&(o[u].checked=n,t.set_status(f=>S(r({},f),{rows:o})))}})})}),-1))}d.forEach((c,g)=>{var A;if(!c)return;let T=c,{type:w="td"}=T,n=$(T,["type"]),o={top:l==0&&!e.head,bottom:l==s.length-1,left:e.checker?!1:g==0,right:g==e.colLength-1,rowIndex:l,colIndex:g,isBody:!0,isHeader:!1},u=K(o),f=e.cellStylesCallback?e.cellStylesCallback(o):{};n=S(r(r(r(r({},e.cellStyles),u),n),f),{xcss:r(r(r({},(A=e.cellStyles)==null?void 0:A.xcss),n.xcss),f.xcss),className:[b("Cell"),e.cellClassName,n.className].join(" ")}),delete n.orderIndex;let y=R[w=="td"?"TD":"TH"];p.push(a(y,r({},n),g))}),h.push(a(R.Row,{className:[b("Row"),b("BodyRow")].join(" "),children:p,onClick:c=>{e.onRowClick&&e.onRowClick(i.rowID,c)}},l))}),!s.length){let i=a(B,{padding:2,fontColor:"4.thin",textAlign:"center",borderTop:"1.thin",children:"\u30C6\u30FC\u30D6\u30EB\u304C\u3042\u308A\u307E\u305B\u3093"});e.noRecords&&(i=a(U,{children:e.noRecords})),h.push(a(R.Row,{className:[b("Row"),b("BodyRow"),b("DataNotFound")].join(" "),children:a(R.TD,{colSpan:e.colLength,className:b("Cell"),children:i})},"dataNotFound"))}return a(U,{children:h})},Core:t=>{let{val_status:e,set_status:s}=t,{searchKeyword:h,filter:i,order:l,paging:d}=e,p=[...e.rows],m=[...e.rows],c=[...e.rows],g=[...e.rows];if(h&&(m=p.filter(o=>(o.__sys4SearchKey||"").match(new RegExp(String(h).escapeRegExChar(),"i"))?1:0),c=[...m],g=[...m]),i.enabled)for(let o=0;o<e.colLength;o++){let u=i.column[o],f=i.current[o];u&&f&&f.length&&(c=c.filter(y=>!f.includes(y[o].data)),g=[...c])}l.enabled&&(l.current[1]=="ASC"?c=c.toASC(l.current[0]+"[orderIndex]"):c=c.toDESC(l.current[0]+"[orderIndex]"),g=[...c]);{let{currentPageIndex:o,rowLength:u}=d;g=[...g].splice((o-1)*u,u)}let w=x.__memoryID+"_"+e.tableID,n={rows:{total:p.length,page:g.length,filtered:c.length},val_status:S(r({},e),{paging:S(r({},e.paging),{pageLength:Math.ceil(c.length/e.paging.rowLength)})}),set_status:s};return Q.update({[w]:{getRowData:()=>{let o=[...p];return l.enabled&&(l.current[1]=="ASC"?o=o.toASC(l.current[0]+"[orderIndex]"):o=o.toDESC(l.current[0]+"[orderIndex]")),o.forEach(u=>{u.currentPage=!1,u.filtered=!1}),g.forEach(u=>{let{rowID:f}=u;o.find(y=>D.isEqual(y.rowID,f)).currentPage=!0}),c.forEach(u=>{let{rowID:f}=u;o.find(y=>D.isEqual(y.rowID,f)).filtered=!0}),o}}}),W(()=>{E.bridge(e.tableID,n)}),a(B,{className:b("TableBase"),children:a(R.Table,{className:b("Table"),children:L(R.Body,{children:[a(x.Header,{val_status:e,set_status:s,KeywordFilterRows:m}),a(x.Body,{val_status:e,set_status:s,PageRows:g})]})})},h)},Propagations:{},DataLeveler:t=>{var e,s;return t=r({},t),t.filter=(e=t.filter)!=null?e:!1,t.filter=Array.from({length:t.colLength}).map((h,i)=>{var l;return D.isBoolean(t.filter)?t.filter:(l=t.filter[i])!=null?l:!1}),t.order=(s=t.order)!=null?s:!0,t.orderPriority=t.orderPriority||"ASC",t.order=Array.from({length:t.colLength}).map((h,i)=>{var l;return D.isBoolean(t.order)?t.order:(l=t.order[i])!=null?l:!0}),t=r({checker:!1,searchKeyword:"",filter:!1,order:!0,defaultOrder:[0,"ASC"]},t),t.rows.forEach((h,i)=>{h.rowID=h.rowID||i;let l=[];h.forEach((d,p)=>{let{data:m,children:c,orderIndex:g}=d;d.orderIndex=D.isExist(g)?String(g):String(m),d.children=c||String(m),l.push(String(d.data))}),h.__sys4SearchKey=l.join("/")}),a(x.StateManager,r({},t))},StateManager:t=>{let{colLength:e,checker:s=!1,searchKeyword:h="",filter:i,order:l,orderPriority:d="ASC",defaultOrder:p=[0,d],pageRowLength:m=30}=t,[c]=Y(G()),g={tableID:t.tableID||c,componentId:c,colLength:e,checker:s,searchKeyword:h,filter:{enabled:i!==!1,column:i,current:Array.from({length:e},()=>[])},order:{enabled:l!==!1,column:l,current:p,priority:t.orderPriority},paging:{rowLength:m,pageLength:Math.ceil(t.rows.length/m),currentPageIndex:1},head:t.head,rows:t.rows,noRecords:t.noRecords,cellStyles:t.cellStyles||{},cellClassName:t.cellClassName||"",cellStylesCallback:t.cellStylesCallback,onRowClick:t.onRowClick,onOrderChanged:t.onOrderChanged},[w,n]=Y(g);const o=()=>{const u=new WeakSet;return(f,y)=>{if(typeof y=="object"&&y!==null){if(u.has(y))return"[Circular Reference]";if(f=="children")return"[React Element]";u.add(y)}return y}};return W(()=>{n(u=>S(r({},u),{rows:g.rows}))},[D.Stringify(g.rows,o())]),W(()=>{n(u=>S(r({},u),{head:g.head}))},[D.Stringify(g.head,o())]),a(x.Core,{val_status:w,set_status:n})}},ge={__memoryID:x.__memoryID,getRowData:t=>{let e=Q.get(x.__memoryID+"_"+t);if(e!=null&&e.getRowData)return e.getRowData()}},V={SearchInput:t=>{let e=E.catch(t.tableID);if(!e)return null;let{val_status:s,set_status:h}=e;return a(I.TextField,{label:"\u691C\u7D22...",clearButton:!0,padding:"2/3",paddingRight:3,rightIcon:a(I.RightIcon,{ssSphere:2,fontColor:"5.translucent",right:"2/3",children:a(N.Search,{})}),value:s.searchKeyword,onUpdateValidValue:i=>{t.onChange(i),D.interval.once(()=>{h(l=>S(r({},l),{paging:S(r({},l.paging),{currentPageIndex:1}),filter:S(r({},l.filter),{current:Array.from({length:l.colLength},()=>[])}),searchKeyword:i}))},200,"InputSearchTime")}})},Info:t=>{let e=E.catch(t.tableID);if(!e)return null;let s=e.rows.filtered.toRate(e.rows.total)||0;return L(M,{verticalAlign:"baseline",gap:"1/2",fontSize:"1.mini",fontColor:"3.blur",children:[a(le,{fontSize:"4.thirdTitle",fontColor:"theme",children:e.rows.filtered.toLocaleString()}),"/ ",e.rows.total.toLocaleString(),"\u4EF6 (",s,"%)"]})},Paging:t=>{let e=E.catch(t.tableID);if(!e)return null;let{val_status:s,set_status:h}=e,i=[];for(let d=0;d<s.paging.pageLength;d++)i.push({value:d+1,label:(d+1).toString()});const l=d=>{let p=Math.min(Math.max(1,d),s.paging.pageLength),m=r({},s);m.paging.currentPageIndex=p,h(c=>S(r({},c),{paging:S(r({},c.paging),{currentPageIndex:p})}))};return a(I.Select,{emptySelect:!1,padding:["1/3","2/3"],override:"force",gap:0,leftIcon:a(I.LeftIcon,{xcss:{left:2,pointerEvents:"all"},children:a(F.Sub.S,{color:"cloud",fontColor:"4.thin",ssSquare:2.5,unitWidth:2,onClick:()=>{if(s.paging.currentPageIndex==1){l(s.paging.pageLength);return}l(s.paging.currentPageIndex-1)},children:a(N.ChevronLeft,{})})}),rightIcon:a(I.RightIcon,{xcss:{right:2,pointerEvents:"all"},children:a(F.Sub.S,{color:"cloud",fontColor:"4.thin",ssSquare:2.5,unitWidth:2,onClick:()=>{if(s.paging.currentPageIndex==s.paging.pageLength){l(1);return}l(s.paging.currentPageIndex+1)},children:a(N.ChevronRight,{})})}),options:i.map(d=>({value:d.value,label:L(j.Left,{gap:"1/3",verticalAlign:"baseline",children:[d.label,L(ne.Micro,{fontColor:"4.thin",children:["/ ",s.paging.pageLength]})]})})),value:s.paging.currentPageIndex,onUpdateValidValue:d=>{l(d)}})},RowLength:t=>{let e=E.catch(t.tableID);if(!e)return null;let{val_status:s,set_status:h}=e,i=s.paging.rowLength,l=0,d=t.lengthSelect.map(p=>(l|=+(p==i),{value:p,label:p.toString()}));return l||d.push({value:i,label:i.toString()}),a(j.Center,{gap:"1/2",children:a(I.Select,{emptySelect:!1,override:"force",padding:"1/3",paddingLeft:3,paddingRight:2,pickerStyles:{xcss:{minWidth:12*9}},pickerPosition:4,value:s.paging.rowLength,leftIcon:a(I.LeftIcon,{fontSize:"0.xs",fontColor:"4.thin",xcss:{left:6},children:"\u8868\u793A"}),rightIcon:a(I.RightIcon,{fontSize:"0.xs",fontColor:"4.thin",xcss:{right:6},children:"\u4EF6"}),options:d.toASC("value"),onUpdateValidValue:p=>{h(m=>S(r({},m),{paging:{rowLength:Number(p),currentPageIndex:1,pageLength:Math.ceil(e.rows.filtered/Number(p))}}))}})})}},he=t=>a(ue,S(r({},t),{type:"data",JSXChildren:x.DataLeveler})),k=he;k.__memoryID=x.__memoryID,k.getRowData=ge.getRowData,k.Info=V.Info,k.Paging=V.Paging,k.RowLength=V.RowLength,k.SearchInput=V.SearchInput;export{k as Data,k as default};
@@ -1 +1 @@
1
- import{b as p,d as y}from"../chunk-C5N2D3ZX.js";import{jsx as s,jsxs as S}from"react/jsx-runtime";import{useState as h,useEffect as f}from"react";import a,{useStore as w,UUID as d}from"jmini";import{Box as g,FAI as D}from"../atoms";import{Row as A}from"../mols";import{Button as I}from"./Button";import u from"./Sheet";const r={__memoryID:d(),open:o=>{let n=o,{tipsID:e=d(),tipsGroups:t=[]}=n,i=y(n,["tipsID","tipsGroups"]);u.open("custom",p({sheetID:e,props:{tipsID:e},sheetGroups:["tooltips",...t],closeAtAroundClick:!0,closeAtParentBlur:!0,closeAtEscapeKeyDown:!0,closeAtPageTransit:!0},i))},close:o=>{o&&u.close(o)},closeALL:()=>{u.closeGroup("tooltips")},notice:(o,e)=>{let t=(e==null?void 0:e.tipsID)||d();r.open({tipsID:t,parent:document.body,gravityPoint:18,hold_state:!1,closeAtAroundClick:!1,closeAtParentBlur:!1,paddingBottom:"1/2",content:()=>{f(()=>{let m="resize_event-"+t;return a(window).onEvent("resize",()=>{a.interval.once(()=>{var l,v;(v=(l=w.get("customSheet-"+t))==null?void 0:l.reposition)==null||v.call(l)},50)},{eventID:m}),()=>{a(window).removeEvent(m)}},[]);let i=(e==null?void 0:e.closeToSeconds)||5,[n,c]=h(i);return f(()=>{a.interval.once(()=>{n>0&&c(n-1),n==0&&r.close(t)},1e3,"notice_countDown-"+t)},[n]),s(r.Body,{borderRadius:"2.tone.secondary",padding:"1/2",onMouseOver:()=>{c(-1)},onMouseLeave:()=>{c(i)},children:S(A.Separate,{children:[s(g,{padding:[0,"1/2"],xcss:{minWidth:"20vw",maxWidth:"60vw"},children:o}),s(I.Clear,{color:"white",ssSphere:2.5,onClick:()=>{r.close(t)},children:s(D.X,{})})]})})}})},Body:o=>s(g,p({padding:"1/2",backgroundColor:"dark",borderRadius:"2.tone.secondary",fontColor:"white",boxShadow:"1.remark"},o))};export{r as Tooltips,r as default};
1
+ import{b as p,d as y}from"../chunk-C5N2D3ZX.js";import{jsx as s,jsxs as S}from"react/jsx-runtime";import{useState as h,useEffect as f}from"react";import a,{useStore as w,UUID as d}from"jmini";import{Box as g,FAI as D}from"../atoms";import{Row as A}from"../mols";import{Button as I}from"./Trigger";import u from"./Sheet";const r={__memoryID:d(),open:o=>{let n=o,{tipsID:e=d(),tipsGroups:t=[]}=n,i=y(n,["tipsID","tipsGroups"]);u.open("custom",p({sheetID:e,props:{tipsID:e},sheetGroups:["tooltips",...t],closeAtAroundClick:!0,closeAtParentBlur:!0,closeAtEscapeKeyDown:!0,closeAtPageTransit:!0},i))},close:o=>{o&&u.close(o)},closeALL:()=>{u.closeGroup("tooltips")},notice:(o,e)=>{let t=(e==null?void 0:e.tipsID)||d();r.open({tipsID:t,parent:document.body,gravityPoint:18,hold_state:!1,closeAtAroundClick:!1,closeAtParentBlur:!1,paddingBottom:"1/2",content:()=>{f(()=>{let m="resize_event-"+t;return a(window).onEvent("resize",()=>{a.interval.once(()=>{var l,v;(v=(l=w.get("customSheet-"+t))==null?void 0:l.reposition)==null||v.call(l)},50)},{eventID:m}),()=>{a(window).removeEvent(m)}},[]);let i=(e==null?void 0:e.closeToSeconds)||5,[n,c]=h(i);return f(()=>{a.interval.once(()=>{n>0&&c(n-1),n==0&&r.close(t)},1e3,"notice_countDown-"+t)},[n]),s(r.Body,{borderRadius:"2.tone.secondary",padding:"1/2",onMouseOver:()=>{c(-1)},onMouseLeave:()=>{c(i)},children:S(A.Separate,{children:[s(g,{padding:[0,"1/2"],xcss:{minWidth:"20vw",maxWidth:"60vw"},children:o}),s(I.Clear,{color:"white",ssSphere:2.5,onClick:()=>{r.close(t)},children:s(D.X,{})})]})})}})},Body:o=>s(g,p({padding:"1/2",backgroundColor:"dark",borderRadius:"2.tone.secondary",fontColor:"white",boxShadow:"1.remark"},o))};export{r as Tooltips,r as default};
@@ -0,0 +1,142 @@
1
+ /// <reference types="react" />
2
+ import { StyleProps, ReactElement } from '../@declares';
3
+ import { Records } from 'jmini';
4
+ declare namespace Trigger {
5
+ type Seeds = 'button' | 'label' | 'anchor';
6
+ type Tones = 'plain' | 'link' | 'normal' | 'border' | 'prime' | 'sub' | 'clear' | 'fillToBorder' | 'borderToFill';
7
+ type Colors = 'plain' | 'theme' | 'posi' | 'nega' | 'warn' | 'cloud' | 'trans' | 'white';
8
+ type Sizes = 'plain' | 'xsmall' | 'small' | 'regular' | 'large';
9
+ type delegateClickEventProps = 'auxEnter' | 'enter' | 'space';
10
+ type ClearColors = Colors | 'layer';
11
+ type SubColors = Colors | 'layer';
12
+ type Input<C = Colors> = StyleProps.BasicElement & {
13
+ color?: C;
14
+ tone?: Tones;
15
+ size?: Sizes;
16
+ tabIndex?: number;
17
+ children?: ReactElement;
18
+ 'aria-label'?: string;
19
+ isLocked?: boolean;
20
+ isActive?: boolean;
21
+ isActiveStyles?: StyleProps.StyleProps;
22
+ isActiveClassName?: string;
23
+ };
24
+ namespace SizeMethods {
25
+ type Component<I> = React.FC<I>;
26
+ type FNs<I> = {
27
+ Plain: React.FC<I>;
28
+ XS: React.FC<I>;
29
+ S: React.FC<I>;
30
+ R: React.FC<I>;
31
+ L: React.FC<I>;
32
+ };
33
+ }
34
+ type SizeMethods<I> = SizeMethods.Component<I> & SizeMethods.FNs<I>;
35
+ namespace Button {
36
+ namespace OnFormSubmit {
37
+ type Input = [
38
+ string,
39
+ Callback<any>
40
+ ] | [
41
+ string,
42
+ Callback<any>,
43
+ Options
44
+ ];
45
+ type Callback<T = Records> = {
46
+ (args: CallbackParams<T>): void;
47
+ };
48
+ type CallbackParams<T = Records> = {
49
+ body: T;
50
+ isValid: boolean;
51
+ /**
52
+ * ⚠️ Warning: Be careful when using this function to avoid deadlocks.
53
+ * after serialLock function is called, the form submission will be stopped receive new form submissions until release function is called.
54
+ * */
55
+ serialLock(): {
56
+ release(): void;
57
+ };
58
+ };
59
+ type Options = {
60
+ validOnly?: boolean;
61
+ submitableKey?: Trigger.delegateClickEventProps | Trigger.delegateClickEventProps[];
62
+ /**
63
+ * releaseOnFinish
64
+ * [default] true
65
+ * */
66
+ releaseOnFinish?: boolean;
67
+ };
68
+ }
69
+ type Input<C = Trigger.Colors> = Trigger.Input<C> & {
70
+ onFormSubmit?: OnFormSubmit.Input;
71
+ submitOption?: {
72
+ formName: string;
73
+ acceptInvalidForm?: boolean;
74
+ submitDelegationKey?: Trigger.delegateClickEventProps | Trigger.delegateClickEventProps[];
75
+ callback(form: Records, ok: boolean): void;
76
+ };
77
+ } & React.ButtonHTMLAttributes<HTMLButtonElement>;
78
+ namespace Methods {
79
+ type Component = (p: Input) => React.JSX.Element;
80
+ type FNs = {
81
+ Plain: Trigger.SizeMethods<Input<''>>;
82
+ Link: Trigger.SizeMethods<Input<''>>;
83
+ Normal: Trigger.SizeMethods<Input>;
84
+ Border: Trigger.SizeMethods<Input>;
85
+ Prime: Trigger.SizeMethods<Input>;
86
+ Sub: Trigger.SizeMethods<Input<Trigger.SubColors>>;
87
+ Clear: Trigger.SizeMethods<Input<Trigger.ClearColors>>;
88
+ FillToBorder: Trigger.SizeMethods<Input>;
89
+ BorderToFill: Trigger.SizeMethods<Input>;
90
+ };
91
+ }
92
+ type Methods = Methods.Component & Methods.FNs;
93
+ }
94
+ namespace Label {
95
+ type Input<C = Trigger.Colors> = Trigger.Input<C> & {
96
+ htmlFor?: string;
97
+ } & React.LabelHTMLAttributes<HTMLLabelElement>;
98
+ namespace Methods {
99
+ type Component = (p: Input) => React.JSX.Element;
100
+ type FNs = {
101
+ Plain: Trigger.SizeMethods<Input<''>>;
102
+ Link: Trigger.SizeMethods<Input<''>>;
103
+ Normal: Trigger.SizeMethods<Input>;
104
+ Border: Trigger.SizeMethods<Input>;
105
+ Prime: Trigger.SizeMethods<Input>;
106
+ Sub: Trigger.SizeMethods<Input<Trigger.SubColors>>;
107
+ Clear: Trigger.SizeMethods<Input<Trigger.ClearColors>>;
108
+ FillToBorder: Trigger.SizeMethods<Input>;
109
+ BorderToFill: Trigger.SizeMethods<Input>;
110
+ };
111
+ }
112
+ type Methods = Methods.Component & Methods.FNs;
113
+ }
114
+ namespace Anchor {
115
+ type Input<C = Trigger.Colors> = Trigger.Input<C> & {
116
+ href?: string;
117
+ newTab?: boolean;
118
+ sync?: boolean;
119
+ download?: any;
120
+ shiftQueryParams?: boolean;
121
+ } & React.ButtonHTMLAttributes<HTMLAnchorElement>;
122
+ namespace Methods {
123
+ type Component = (p: Input) => React.JSX.Element;
124
+ type FNs = {
125
+ Plain: Trigger.SizeMethods<Input<''>>;
126
+ Link: Trigger.SizeMethods<Input<''>>;
127
+ Normal: Trigger.SizeMethods<Input>;
128
+ Border: Trigger.SizeMethods<Input>;
129
+ Prime: Trigger.SizeMethods<Input>;
130
+ Sub: Trigger.SizeMethods<Input<Trigger.SubColors>>;
131
+ Clear: Trigger.SizeMethods<Input<Trigger.ClearColors>>;
132
+ FillToBorder: Trigger.SizeMethods<Input>;
133
+ BorderToFill: Trigger.SizeMethods<Input>;
134
+ };
135
+ }
136
+ type Methods = Methods.Component & Methods.FNs;
137
+ }
138
+ }
139
+ declare const Button: Trigger.Button.Methods;
140
+ declare const Label: Trigger.Label.Methods;
141
+ declare const Anchor: Trigger.Anchor.Methods;
142
+ export { Trigger, Button, Label, Anchor };
@@ -0,0 +1 @@
1
+ import{b as o,c as a,d as M,e as F}from"../chunk-C5N2D3ZX.js";import{jsx as g}from"react/jsx-runtime";import k,{useStore as B,UUID as H}from"jmini";import{pageRouter as E,ReadStyleSet as V}from"../@utils";import{Input as O}from".";import{Box as A}from"../atoms";import{TriggerClasses as C}from"../@styles/componentClasses";const w={Size:(l,r,t,i)=>{let e={fontSize:"inherit"};return t=t||"R",r=="plain"?{}:(r=="link"?t=="xsmall"?e.fontSize="0.xs":t=="small"?e.fontSize="1.mini":t=="regular"||t=="large"&&(e.fontSize="3.paragraph"):e=o({borderRadius:"2.tone.secondary",transition:"middle",position:"relative",textAlign:"center"},e),t=="xsmall"?e=a(o({},e),{padding:["1/3","2/3"],fontSize:"0.xs",borderRadius:"3.tone.tertiary"}):t=="small"?e=a(o({},e),{padding:["1/2","3/4"],fontSize:"1.mini",borderRadius:"2.tone.secondary"}):t=="regular"?e.padding=["3/4",1]:t=="large"&&(e.padding=[1,2],e.fontSize="3.paragraph",e.isSemiBoldFont=!0),e)},Tone:(l,r,t,i)=>{let e={display:"inlineBlock",fontWeight:"inherit",fontColor:"inherit",border:"unset"};return r=="plain"||(r=="link"?(e.fontColor="theme",e.textAlign="left",e.backgroundColor="trans"):r=="normal"?e=a(o({},e),{backgroundColor:"trans"}):r=="border"?e=a(o({},e),{backgroundColor:"layer.1",border:"2.normal",borderStyle:"solid",boxShadow:"0.min"}):r=="prime"?(e=a(o({},e),{isSemiBoldFont:!0,fontColor:"white",backgroundColor:i,boxShadow:"0.normal",ssEffectsOnActive:["shrink","push","ripple.white"]}),i=="white"&&(e=a(o({},e),{fontColor:"theme",ssEffectsOnActive:["shrink","push","ripple.cloud"]}))):r=="sub"?e=a(o({},e),{fontColor:i,ssEffectsOnActive:["shrink","ripple.cloud"]}):r=="clear"?e=a(o({},e),{fontColor:i,backgroundColor:"trans",ssEffectsOnActive:["shrink","ripple.cloud"]}):r=="fillToBorder"?e=a(o({},e),{boxShadow:"0.normal",border:"2.normal",borderWidth:2,borderColor:i,fontColor:i,backgroundColor:i}):r=="borderToFill"&&(e=a(o({},e),{fontColor:i,boxShadow:"0.normal",border:"2.normal",borderWidth:2,borderColor:i,backgroundColor:i})),i=="cloud"&&(e.fontColor="2.normal"),r!="link"&&(e=o({position:"relative",ssEffectsOnActive:["shrink","push"]},e))),e}},K=l=>{var e;let r=V(o({isLocked:!1,isActive:!1,isActiveStyles:{},isActiveClassName:"",tabIndex:0,className:"",color:"theme",tone:"border","aria-label":H()},l)),t=r.seed;{let{isLocked:m=!1,isActive:h=!1,isActiveStyles:y={},isActiveClassName:I="",tone:s="border",size:n="regular",color:p="theme",className:d=""}=r;r=o(o(o({},w.Size(l.seed,s,n,p)),w.Tone(l.seed,s,n,p)),r),r.className=[d,C("Wrap"),C("isNeutral_"+!h),C("isLocked_"+m),C("Tone_"+s),C("Color_"+p),C("Tone_"+s+"_Color_"+p)].join(" "),h&&(r=o(o({className:[r.className,I].join(" ")},r),y))}if(t=="button"){let i=r,{isLocked:m,isActive:h,isActiveClassName:y,isActiveStyles:I,submitOption:s,onFormSubmit:n,onClick:p}=i,d=M(i,["isLocked","isActive","isActiveClassName","isActiveStyles","submitOption","onFormSubmit","onClick"]);return n!=null&&n[1]&&(d=a(o({},d),{"data-form-submit-button":n[0],"data-sdfike":k.Arrayify(((e=n[2])==null?void 0:e.submitableKey)||"auxEnter").join(",")})),s&&(s=o({acceptInvalidForm:!1,submitDelegationKey:"auxEnter"},s),d=a(o({},d),{"data-form-submit-button":s.formName,"data-sdfike":k.Arrayify(s.submitDelegationKey).join(",")})),g(A,a(o({htmlTag:"button",fontHeight:"inherit"},d),{onClick:x=>{m||(p&&p(x),k.scope(()=>F(void 0,null,function*(){if(!(n!=null&&n[1]))return;n[2]=o({validOnly:!0,submitableKey:"auxEnter",releaseOnFinish:!0},n==null?void 0:n[2]);let[c,T,f]=n,S="prevent-form-submit-"+c,b=B.get(S),z=()=>B.delete(S);const v=()=>(B.set({[S]:!0}),{release:z});if(b)return f.validOnly?void 0:T({body:{},isValid:!1,serialLock:v});v();let P=yield O.CollectForm(c);if(!P.isValid&&f.validOnly){z();return}yield T({body:P.data,isValid:P.isValid,serialLock:v}),f.releaseOnFinish&&z()})),k.scope(()=>F(void 0,null,function*(){if(!s)return;let c=yield O.CollectForm(s.formName);!c.isValid&&!s.acceptInvalidForm||s.callback(c.data,c.isValid)})))}}))}else if(t=="label"){let L=r,{isLocked:m,isActive:h,isActiveClassName:y,isActiveStyles:I,onClick:s}=L,n=M(L,["isLocked","isActive","isActiveClassName","isActiveStyles","onClick"]);return g(A,a(o({htmlTag:"label"},n),{onClick:p=>{m||s&&s(p)}}))}else if(t=="anchor"){let R=r,{isLocked:m,isActive:h,isActiveClassName:y,isActiveStyles:I,onClick:s,href:n="",newTab:p,sync:d,shiftQueryParams:x}=R,c=M(R,["isLocked","isActive","isActiveClassName","isActiveStyles","onClick","href","newTab","sync","shiftQueryParams"]);return g(A,a(o({htmlTag:"button"},c),{onClick:T=>{if(m)return;if(s)return s(T);let f=T.ctrlKey||T.metaKey,S=p||!!f,b=n;if(x&&(b+=location.search),d){E.pushSync(b);return}E.push(b,!!S)}}))}return null},u=function(l,r){const t=e=>g(K,o({seed:l,tone:r,size:"regular"},e)),i=t;return i.Plain=e=>g(t,o({size:"plain",tone:r},e)),i.XS=e=>g(t,o({size:"xsmall",tone:r},e)),i.S=e=>g(t,o({size:"small",tone:r},e)),i.R=e=>g(t,o({size:"regular",tone:r},e)),i.L=e=>g(t,o({size:"large",tone:r},e)),i},N=function(l){const t=i=>g(K,o({seed:l,tone:"prime",size:"regular"},i));return t.Plain=u(l,"plain"),t.Link=u(l,"link"),t.Normal=u(l,"normal"),t.Border=u(l,"border"),t.Prime=u(l,"prime"),t.Sub=u(l,"sub"),t.Clear=u(l,"clear"),t.FillToBorder=u(l,"fillToBorder"),t.BorderToFill=u(l,"borderToFill"),t},W=N("button"),_=N("label"),X=N("anchor");export{X as Anchor,W as Button,_ as Label};
@@ -4,7 +4,7 @@ export * from './PageViewController';
4
4
  export * from './SwipeView';
5
5
  export * from './TabBar';
6
6
  export * from './Effect';
7
- export * from './Button';
7
+ export * from './Trigger';
8
8
  export * from './Input';
9
9
  export * from './Table';
10
10
  export * from './DataGrid';
package/dist/fn/index.js CHANGED
@@ -1 +1 @@
1
- export*from"./RootViewController";export*from"./Plate";export*from"./PageViewController";export*from"./SwipeView";export*from"./TabBar";export*from"./Effect";export*from"./Button";export*from"./Input";export*from"./Table";export*from"./DataGrid";export*from"./Sheet";export*from"./Snackbar";export*from"./Loader";export*from"./Tooltips";export*from"./Tips";export*from"./Cropper";export*from"./PageNotFound";
1
+ export*from"./RootViewController";export*from"./Plate";export*from"./PageViewController";export*from"./SwipeView";export*from"./TabBar";export*from"./Effect";export*from"./Trigger";export*from"./Input";export*from"./Table";export*from"./DataGrid";export*from"./Sheet";export*from"./Snackbar";export*from"./Loader";export*from"./Tooltips";export*from"./Tips";export*from"./Cropper";export*from"./PageNotFound";
package/dist/index.d.ts CHANGED
@@ -21,9 +21,9 @@ declare const amotify: {
21
21
  FadeIn: React.FC<import("./fn/Effect/Fade").FadeIn.Input>;
22
22
  FadeUp: React.FC<import("./fn/Effect/Fade").FadeUp.Input>;
23
23
  };
24
- Button: fn.Button.Methods;
25
- Label: fn.Label.Methods;
26
- Anchor: fn.Anchor.Methods;
24
+ Button: fn.Trigger.Button.Methods;
25
+ Label: fn.Trigger.Label.Methods;
26
+ Anchor: fn.Trigger.Anchor.Methods;
27
27
  Input: typeof fn.Input;
28
28
  RequiredSign: React.FC<atoms.Span.Input>;
29
29
  RequiredShortSign: React.FC<atoms.Span.Input>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "amotify",
3
- "version": "0.3.31",
3
+ "version": "0.3.32",
4
4
  "description": "UI Component for React,NextJS,esbuild",
5
5
  "scripts": {
6
6
  "start": "run-p clean build:*",
@@ -1,142 +0,0 @@
1
- /// <reference types="react" />
2
- import { StyleProps, ReactElement } from '../@declares';
3
- import { Records } from 'jmini';
4
- declare namespace ButtonTypes {
5
- type Seeds = 'button' | 'label' | 'anchor';
6
- type Tones = 'plain' | 'link' | 'normal' | 'border' | 'prime' | 'sub' | 'clear' | 'fillToBorder' | 'borderToFill';
7
- type Colors = 'plain' | 'theme' | 'posi' | 'nega' | 'warn' | 'cloud' | 'trans' | 'white';
8
- type Sizes = 'plain' | 'xsmall' | 'small' | 'regular' | 'large';
9
- type delegateClickEventProps = 'auxEnter' | 'enter' | 'space';
10
- type ClearColors = Colors | 'layer';
11
- type SubColors = Colors | 'layer';
12
- type Input<C = Colors> = StyleProps.BasicElement & {
13
- color?: C;
14
- tone?: Tones;
15
- size?: Sizes;
16
- tabIndex?: number;
17
- children?: ReactElement;
18
- 'aria-label'?: string;
19
- isLocked?: boolean;
20
- isActive?: boolean;
21
- isActiveStyles?: StyleProps.StyleProps;
22
- isActiveClassName?: string;
23
- };
24
- namespace SizeMethods {
25
- type Component<I> = React.FC<I>;
26
- type FNs<I> = {
27
- Plain: React.FC<I>;
28
- XS: React.FC<I>;
29
- S: React.FC<I>;
30
- R: React.FC<I>;
31
- L: React.FC<I>;
32
- };
33
- }
34
- type SizeMethods<I> = SizeMethods.Component<I> & SizeMethods.FNs<I>;
35
- }
36
- declare namespace Button {
37
- namespace OnFormSubmit {
38
- type Input = [
39
- string,
40
- Callback<any>
41
- ] | [
42
- string,
43
- Callback<any>,
44
- Options
45
- ];
46
- type Callback<T = Records> = {
47
- (args: CallbackParams<T>): void;
48
- };
49
- type CallbackParams<T = Records> = {
50
- body: T;
51
- isValid: boolean;
52
- /**
53
- * ⚠️ Warning: Be careful when using this function to avoid deadlocks.
54
- * after serialLock function is called, the form submission will be stopped receive new form submissions until release function is called.
55
- * */
56
- serialLock(): {
57
- release(): void;
58
- };
59
- };
60
- type Options = {
61
- validOnly?: boolean;
62
- submitableKey?: ButtonTypes.delegateClickEventProps | ButtonTypes.delegateClickEventProps[];
63
- /**
64
- * releaseOnFinish
65
- * [default] true
66
- * */
67
- releaseOnFinish?: boolean;
68
- };
69
- }
70
- type Input<C = ButtonTypes.Colors> = ButtonTypes.Input<C> & {
71
- onFormSubmit?: OnFormSubmit.Input;
72
- submitOption?: {
73
- formName: string;
74
- acceptInvalidForm?: boolean;
75
- submitDelegationKey?: ButtonTypes.delegateClickEventProps | ButtonTypes.delegateClickEventProps[];
76
- callback(form: Records, ok: boolean): void;
77
- };
78
- } & React.ButtonHTMLAttributes<HTMLButtonElement>;
79
- namespace Methods {
80
- type Component = (p: Input) => React.JSX.Element;
81
- type FNs = {
82
- Plain: ButtonTypes.SizeMethods<Input<''>>;
83
- Link: ButtonTypes.SizeMethods<Input<''>>;
84
- Normal: ButtonTypes.SizeMethods<Input>;
85
- Border: ButtonTypes.SizeMethods<Input>;
86
- Prime: ButtonTypes.SizeMethods<Input>;
87
- Sub: ButtonTypes.SizeMethods<Input<ButtonTypes.SubColors>>;
88
- Clear: ButtonTypes.SizeMethods<Input<ButtonTypes.ClearColors>>;
89
- FillToBorder: ButtonTypes.SizeMethods<Input>;
90
- BorderToFill: ButtonTypes.SizeMethods<Input>;
91
- };
92
- }
93
- type Methods = Methods.Component & Methods.FNs;
94
- }
95
- declare namespace Label {
96
- type Input<C = ButtonTypes.Colors> = ButtonTypes.Input<C> & {
97
- htmlFor?: string;
98
- } & React.LabelHTMLAttributes<HTMLLabelElement>;
99
- namespace Methods {
100
- type Component = (p: Input) => React.JSX.Element;
101
- type FNs = {
102
- Plain: ButtonTypes.SizeMethods<Input<''>>;
103
- Link: ButtonTypes.SizeMethods<Input<''>>;
104
- Normal: ButtonTypes.SizeMethods<Input>;
105
- Border: ButtonTypes.SizeMethods<Input>;
106
- Prime: ButtonTypes.SizeMethods<Input>;
107
- Sub: ButtonTypes.SizeMethods<Input<ButtonTypes.SubColors>>;
108
- Clear: ButtonTypes.SizeMethods<Input<ButtonTypes.ClearColors>>;
109
- FillToBorder: ButtonTypes.SizeMethods<Input>;
110
- BorderToFill: ButtonTypes.SizeMethods<Input>;
111
- };
112
- }
113
- type Methods = Methods.Component & Methods.FNs;
114
- }
115
- declare namespace Anchor {
116
- type Input<C = ButtonTypes.Colors> = ButtonTypes.Input<C> & {
117
- href?: string;
118
- newTab?: boolean;
119
- sync?: boolean;
120
- download?: any;
121
- shiftQueryParams?: boolean;
122
- } & React.ButtonHTMLAttributes<HTMLAnchorElement>;
123
- namespace Methods {
124
- type Component = (p: Input) => React.JSX.Element;
125
- type FNs = {
126
- Plain: ButtonTypes.SizeMethods<Input<''>>;
127
- Link: ButtonTypes.SizeMethods<Input<''>>;
128
- Normal: ButtonTypes.SizeMethods<Input>;
129
- Border: ButtonTypes.SizeMethods<Input>;
130
- Prime: ButtonTypes.SizeMethods<Input>;
131
- Sub: ButtonTypes.SizeMethods<Input<ButtonTypes.SubColors>>;
132
- Clear: ButtonTypes.SizeMethods<Input<ButtonTypes.ClearColors>>;
133
- FillToBorder: ButtonTypes.SizeMethods<Input>;
134
- BorderToFill: ButtonTypes.SizeMethods<Input>;
135
- };
136
- }
137
- type Methods = Methods.Component & Methods.FNs;
138
- }
139
- declare const Button: Button.Methods;
140
- declare const Label: Label.Methods;
141
- declare const Anchor: Anchor.Methods;
142
- export { ButtonTypes, Button, Label, Anchor };
package/dist/fn/Button.js DELETED
@@ -1 +0,0 @@
1
- import{b as s,c as a,d as M,e as P}from"../chunk-C5N2D3ZX.js";import{jsx as u}from"react/jsx-runtime";import k,{useStore as F,UUID as H}from"jmini";import{pageRouter as E,ReadStyleSet as V}from"../@utils";import{Input as O}from".";import{Box as A}from"../atoms";import{ButtonClasses as h}from"../@styles/componentClasses";const w={Size:(i,t,o,n)=>{let e={fontSize:"inherit"};return o=o||"R",t=="plain"?{}:(t=="link"?o=="xsmall"?e.fontSize="0.xs":o=="small"?e.fontSize="1.mini":o=="regular"||o=="large"&&(e.fontSize="3.paragraph"):e=s({borderRadius:"2.tone.secondary",transition:"middle",position:"relative",textAlign:"center"},e),o=="xsmall"?e=a(s({},e),{padding:["1/3","2/3"],fontSize:"0.xs",borderRadius:"3.tone.tertiary"}):o=="small"?e=a(s({},e),{padding:["1/2","3/4"],fontSize:"1.mini",borderRadius:"2.tone.secondary"}):o=="regular"?e.padding=["3/4",1]:o=="large"&&(e.padding=[1,2],e.fontSize="3.paragraph",e.isSemiBoldFont=!0),e)},Tone:(i,t,o,n)=>{let e={display:"inlineBlock",fontWeight:"inherit",fontColor:"inherit",border:"unset"};return t=="plain"||(t=="link"?(e.fontColor="theme",e.textAlign="left",e.backgroundColor="trans"):t=="normal"?e=a(s({},e),{backgroundColor:"trans"}):t=="border"?e=a(s({},e),{backgroundColor:"layer.1",border:"2.normal",borderStyle:"solid",boxShadow:"0.min"}):t=="prime"?(e=a(s({},e),{isSemiBoldFont:!0,fontColor:"white",backgroundColor:n,boxShadow:"0.normal",ssEffectsOnActive:["shrink","push","ripple.white"]}),n=="white"&&(e=a(s({},e),{fontColor:"theme",ssEffectsOnActive:["shrink","push","ripple.cloud"]}))):t=="sub"?e=a(s({},e),{fontColor:n,ssEffectsOnActive:["shrink","ripple.cloud"]}):t=="clear"?e=a(s({},e),{fontColor:n,backgroundColor:"trans",ssEffectsOnActive:["shrink","ripple.cloud"]}):t=="fillToBorder"?e=a(s({},e),{boxShadow:"0.normal",border:"2.normal",borderWidth:2,borderColor:n,fontColor:n,backgroundColor:n}):t=="borderToFill"&&(e=a(s({},e),{fontColor:n,boxShadow:"0.normal",border:"2.normal",borderWidth:2,borderColor:n,backgroundColor:n})),n=="cloud"&&(e.fontColor="2.normal"),t!="link"&&(e=s({position:"relative",ssEffectsOnActive:["shrink","push"]},e))),e}},K=i=>{var e;let t=V(s({isLocked:!1,isActive:!1,isActiveStyles:{},isActiveClassName:"",tabIndex:0,className:"",color:"theme",tone:"border","aria-label":H()},i)),o=t.seed;{let{isLocked:m=!1,isActive:f=!1,isActiveStyles:B={},isActiveClassName:I="",tone:r="border",size:l="regular",color:p="theme",className:d=""}=t;t=s(s(s({},w.Size(i.seed,r,l,p)),w.Tone(i.seed,r,l,p)),t),t.className=[d,h("Wrap"),h("isNeutral_"+!f),h("isLocked_"+m),h("Tone_"+r),h("Color_"+p),h("Tone_"+r+"_Color_"+p)].join(" "),f&&(t=s(s({className:[t.className,I].join(" ")},t),B))}if(o=="button"){let n=t,{isLocked:m,isActive:f,isActiveClassName:B,isActiveStyles:I,submitOption:r,onFormSubmit:l,onClick:p}=n,d=M(n,["isLocked","isActive","isActiveClassName","isActiveStyles","submitOption","onFormSubmit","onClick"]);return l!=null&&l[1]&&(d=a(s({},d),{"data-form-submit-button":l[0],"data-sdfike":k.Arrayify(((e=l[2])==null?void 0:e.submitableKey)||"auxEnter").join(",")})),r&&(r=s({acceptInvalidForm:!1,submitDelegationKey:"auxEnter"},r),d=a(s({},d),{"data-form-submit-button":r.formName,"data-sdfike":k.Arrayify(r.submitDelegationKey).join(",")})),u(A,a(s({htmlTag:"button",fontHeight:"inherit"},d),{onClick:g=>{m||(p&&p(g),k.scope(()=>P(void 0,null,function*(){if(!(l!=null&&l[1]))return;l[2]=s({validOnly:!0,submitableKey:"auxEnter",releaseOnFinish:!0},l==null?void 0:l[2]);let[c,C,S]=l,b="prevent-form-submit-"+c,T=F.get(b),x=()=>F.delete(b);const z=()=>(F.set({[b]:!0}),{release:x});if(T)return S.validOnly?void 0:C({body:{},isValid:!1,serialLock:z});z();let v=yield O.CollectForm(c);if(!v.isValid&&S.validOnly){x();return}yield C({body:v.data,isValid:v.isValid,serialLock:z}),S.releaseOnFinish&&x()})),k.scope(()=>P(void 0,null,function*(){if(!r)return;let c=yield O.CollectForm(r.formName);!c.isValid&&!r.acceptInvalidForm||r.callback(c.data,c.isValid)})))}}))}else if(o=="label"){let L=t,{isLocked:m,isActive:f,isActiveClassName:B,isActiveStyles:I,onClick:r}=L,l=M(L,["isLocked","isActive","isActiveClassName","isActiveStyles","onClick"]);return u(A,a(s({htmlTag:"label"},l),{onClick:p=>{m||r&&r(p)}}))}else if(o=="anchor"){let R=t,{isLocked:m,isActive:f,isActiveClassName:B,isActiveStyles:I,onClick:r,href:l="",newTab:p,sync:d,shiftQueryParams:g}=R,c=M(R,["isLocked","isActive","isActiveClassName","isActiveStyles","onClick","href","newTab","sync","shiftQueryParams"]);return u(A,a(s({htmlTag:"button"},c),{onClick:C=>{if(m)return;if(r)return r(C);let S=C.ctrlKey||C.metaKey,b=p||!!S,T=l;if(g&&(T+=location.search),d){E.pushSync(T);return}E.push(T,!!b)}}))}return null},y=function(i,t){const o=e=>u(K,s({seed:i,tone:t,size:"regular"},e)),n=o;return n.Plain=e=>u(o,s({size:"plain",tone:t},e)),n.XS=e=>u(o,s({size:"xsmall",tone:t},e)),n.S=e=>u(o,s({size:"small",tone:t},e)),n.R=e=>u(o,s({size:"regular",tone:t},e)),n.L=e=>u(o,s({size:"large",tone:t},e)),n},N=function(i){const o=n=>u(K,s({seed:i,tone:"prime",size:"regular"},n));return o.Plain=y(i,"plain"),o.Link=y(i,"link"),o.Normal=y(i,"normal"),o.Border=y(i,"border"),o.Prime=y(i,"prime"),o.Sub=y(i,"sub"),o.Clear=y(i,"clear"),o.FillToBorder=y(i,"fillToBorder"),o.BorderToFill=y(i,"borderToFill"),o},W=N("button"),_=N("label"),X=N("anchor");export{X as Anchor,W as Button,_ as Label};