amotify 0.2.168 → 0.2.170
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.
|
@@ -22,6 +22,7 @@ declare namespace Autocomplete {
|
|
|
22
22
|
SearchInput?: boolean;
|
|
23
23
|
SearchInputPlaceholder?: string;
|
|
24
24
|
DynamicOptionsOnSearch?: DynamicOptionsOnSearch<T>;
|
|
25
|
+
DynamicOptionsOnSearchDelay?: number;
|
|
25
26
|
SelectedComponent?: {
|
|
26
27
|
(p: SelectedComponentProps<T>): JSX.Element;
|
|
27
28
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as S,c as O,d as Q,e as Y}from"../../chunk-C5N2D3ZX.js";import{Fragment as X,jsx as n,jsxs as B}from"react/jsx-runtime";import{useState as I,useEffect as F,useRef as ne}from"react";import s,{UUID as K}from"jmini";import{ExtractStyles as ae}from"../../@utils";import{Box as x,Span as ie,FAI as M,Column as re}from"../../atoms";import{Literal as W,Row as q}from"../../mols";import{Button as Z}from"../Button";import{Loader as se}from"../Loader";import{Sheet as ue}from"../Sheet";import{OptionalInputWrapper as ce,BoxWrapper as pe,CoreEffects as N,DefaultBoxishStyles as de}from"./core";import{InputAutocompleteClasses as z}from"../../@styles/componentClasses";import{InputLabel as Se}from"./Label";import{RightIcon as ee}from".";function me(e){let{value:t,states:p}=e,{required:u,options:a,min:o,max:d}=p;o=o||0,d=d||65535;let i=[],h=t.filter(c=>c!==null).length;return u&&(h||i.push({type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"})),h<o&&i.push({type:"invalid",label:o+"\u500B\u4EE5\u4E0A\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044"}),h>d&&i.push({type:"invalid",label:d+"\u500B\u307E\u3067\u9078\u629E\u3067\u304D\u307E\u3059"}),{ok:!i.filter(({type:c})=>c=="invalid").length,notice:i}}const U={InitOptions:e=>{let t=[];return e.forEach(p=>{let{type:u,label:a,value:o,searchValue:d}=p,i=d||s.is.string(a)&&a||""||s.is.string(o)&&o||s.Stringify(o||"")||"";s.is.nullish(a)&&(a=String(o)),t.push(O(S({},p),{searchValue:i,type:u||"selector",label:a,value:o}))}),t},FilterSelectableOptions:(e,t,p)=>{let u=e;return p||(u=e.filter(a=>a.type!="label")),s.scope(()=>{if(!t)return;let a=t.toLower().replace(/ /g,"");u=u.filter(o=>(o.searchValue||"").toLower().replace(/ /g,"").includes(a))}),u}},L={Shallow:e=>{let{rootStates:t,val_status:p}=e,u=ae(t);return n(x,{position:"absolute",top:0,left:0,right:0,height:0,overflow:"hidden",opacity:"trans",freeCSS:{zIndex:3,pointerEvents:"none"},children:n(W.Description,O(S({className:t.className},u),{position:"absolute",width:1,freeCSS:O(S({},u.freeCSS),{color:"orange"}),"data-id":"shallow_"+p.componentID,children:n(x,{"data-input-value-shallow":p.componentID,children:"A"})}))})},Button:e=>{let{rootStates:t,val_keyword:p,set_keyword:u,val_optionFocused:a,set_optionFocused:o,val_options:d,set_options:i,val_optionsDict:h,set_optionsDict:c,val_preventOpenSelectorOnFocus:r,set_preventOpenSelectorOnFocus:m,val_selectorOpen:l,set_selectorOpen:f,val_status:v,set_status:C,val_validate:_,set_validate:g}=e,j=t,{tone:D,required:w,form:T,className:R,multiSelect:P,enableFormSubmit:V,checkValidationAtFirst:A,onValidate:$,onUpdateValue:J,onUpdateValidValue:H,value:fe="",options:ve,leftIndicator:ye,rightIndicator:he,leftIcon:_e,rightIcon:ge,componentID:be,status_id:Oe,wrapStyles:Ie,emptySelect:Ce,SearchInput:De,SearchInputPlaceholder:we,SelectedComponent:Ve,SelectorComponent:ke,SelectorStyles:Te,SelectorPosition:Re,DynamicOptionsOnSearch:xe}=j,b=Q(j,["tone","required","form","className","multiSelect","enableFormSubmit","checkValidationAtFirst","onValidate","onUpdateValue","onUpdateValidValue","value","options","leftIndicator","rightIndicator","leftIcon","rightIcon","componentID","status_id","wrapStyles","emptySelect","SearchInput","SearchInputPlaceholder","SelectedComponent","SelectorComponent","SelectorStyles","SelectorPosition","DynamicOptionsOnSearch"]);return F(()=>{var k,E;if(t.disabled||!l)return;let y=U.FilterSelectableOptions(e.val_options,p,!1);o((E=(k=y[0])==null?void 0:k.value)!=null?E:null)},[p]),F(()=>{v.eventType!="init"&&(t.max==v.dataValue.length?(f(!1),m(!0),setTimeout(()=>{let y=s('[data-input-origin="'+t.componentID+'"]');y&&y.focus()},10)):s("#SearchInput_"+t.componentID).focus())},[v.dataValue]),F(()=>{let y="autocomplete-click-"+t.componentID;if(l){if(!s('[data-input-origin="'+t.componentID+'"]'))return;s("#SearchInput_"+t.componentID).focus(),s(document).addEvent({eventID:y,eventType:"mousedown",callback:E=>{let G=s(E.target),oe=!!s(G).parent("."+z("Core")).length,le=!!s(G).parent("."+z("Selector")).length;oe||le||(f(!1),E.preventDefault(),E.stopPropagation())},options:{passive:!1}})}else s(document).removeEvent([y]),u("")},[l]),B(X,{children:[n(x,O(S({tabIndex:0},b),{"data-disabled":t.disabled,"data-show-validation":N.isShowValidation(_,v,!!A),"data-component-id":v.componentID,"data-input-origin":v.componentID,"data-focus":!!l,className:[R,z("Core")].join(" "),onFocus:y=>{if(b!=null&&b.onFocus&&(b==null||b.onFocus(y)),!t.disabled){if(r)return m(!1);f(!0),y.preventDefault()}},onClick:y=>{b!=null&&b.onClick&&(b==null||b.onClick(y)),!t.disabled&&f(!0)},onKeyDown:y=>{let{key:k}=y;V&&N.SubmitForm(y,T),!l&&(k==" "||k=="ArrowDown"||k=="ArrowUp"||k=="Enter")&&f(!0)},children:B(q.Left,{flexWrap:!0,gap:"1/3",freeCSS:{letterSpacing:".5px"},children:[n(L.Selected,S({},e)),n(ie,{width:0,overflow:"hidden",opacity:"trans",children:"A"}),n(L.SearchInput,S({},e))]})})),l&&n(L.Selector,S({},e))]})},SearchInput:e=>{let{rootStates:t}=e,[p,u]=I(!1);return t.disabled||!e.val_selectorOpen?null:n(x,{id:"SearchInput_"+t.componentID,placeholder:t.SearchInputPlaceholder||"\u691C\u7D22...",opacity:e.val_selectorOpen?"max":"trans",transition:"middle",flexSizing:0,htmlTag:"input",border:"unset",backgroundColor:"trans",value:e.val_keyword,freeCSS:{outline:"none"},onCompositionStart:a=>{t.onCompositionStart&&t.onCompositionStart(a),u(!0)},onCompositionEnd:a=>{t.onCompositionEnd&&t.onCompositionEnd(a),u(!1)},onKeyDown:a=>{let{key:o,metaKey:d,ctrlKey:i}=a,h=d||i;o=="Escape"?(e.set_selectorOpen(!1),e.set_preventOpenSelectorOnFocus(!0),setTimeout(()=>{let c=s('[data-input-origin="'+t.componentID+'"]');c&&c.focus()},10)):o=="Tab"?e.set_selectorOpen(!1):o==" "?s.scope(()=>{e.val_selectorOpen||e.val_keyword||(a.preventDefault(),e.set_selectorOpen(!0))}):o=="Backspace"?s.scope(()=>{if(e.val_keyword)return;let c=[...e.val_status.dataValue];c.pop(),e.set_status(r=>O(S({},r),{dataValue:c,eventType:"update",eventID:K()}))}):o=="Enter"&&s.scope(()=>{if(p)return;if(!e.val_selectorOpen)return e.set_selectorOpen(!0);let c=e.val_options.find(m=>m.value==e.val_optionFocused);if(!c)return;let{value:r}=c;e.set_status(m=>{let l=[...m.dataValue];return s.scope(()=>{if(r===null)return l=[];m.dataValue.includes(r)?l=l.filter(v=>v!==r):t.multiSelect?l.push(r):l=[r]}),O(S({},m),{dataValue:l,eventType:"update",eventID:K()})}),e.set_keyword(""),e.set_preventDynamicSearchOnKeywordChange(!0)}),s.scope(()=>{if(!["ArrowDown","ArrowUp"].includes(o))return;if(a.preventDefault(),!e.val_selectorOpen)return e.set_selectorOpen(!0);let c=o=="ArrowDown"?1:-1,r=U.FilterSelectableOptions(e.val_options,e.val_keyword,!1),m=r.length-1,l=null;s.scope(()=>{var v,C,_,g,D,w,T,R,P,V;let f=r.findIndex(A=>A.value==e.val_optionFocused);if(f==-1&&(f=0),c==1){if(l=(C=(v=r[0])==null?void 0:v.value)!=null?C:null,h){l=(_=r[m].value)!=null?_:null;return}if(f==-1||f==m)return;l=(D=(g=r[f+1])==null?void 0:g.value)!=null?D:null}else{if(l=(w=r[m].value)!=null?w:null,h){l=(R=(T=r[0])==null?void 0:T.value)!=null?R:null;return}if(f==-1||f==0)return;l=(V=(P=r[f-1])==null?void 0:P.value)!=null?V:null}}),e.set_optionFocused(l)}),t.enableFormSubmit&&N.SubmitForm(a,e.rootStates.form)},onChange:a=>{let d=a.target.value;e.set_keyword(d)}},"searchInput")},Selector:e=>{var h;let[t,p]=I("idle"),[u,a]=I("idle");F(()=>{if(!e.val_selectorOpen||!e.rootStates.DynamicOptionsOnSearch)return;if(e.val_preventDynamicSearchOnKeywordChange)return e.set_preventDynamicSearchOnKeywordChange(!1);if(t=="idle")return p("ok");a("fetch");let c="autocomplete-search-"+e.rootStates.componentID;s.interval.once(()=>Y(void 0,null,function*(){let r=yield e.rootStates.DynamicOptionsOnSearch(e.val_keyword);a("idle");let m=U.InitOptions(r||[]);e.set_options(m)}),300,c)},[e.val_keyword]);let o=[],d=U.FilterSelectableOptions(e.val_options,e.rootStates.DynamicOptionsOnSearch?"":e.val_keyword,!0);d.forEach((c,r)=>{let{type:m,value:l}=c,f=e.val_optionFocused==l,v=e.val_status.dataValue.includes(l),C=e.rootStates.SelectorComponent;o.push(n(C,{option:c,isFocused:f,isSelected:v,addCallback:()=>{e.set_status(_=>{let g=[..._.dataValue];return s.scope(()=>{if(l===null)return g=[];_.dataValue.includes(l)?g=g.filter(w=>w!==l):e.rootStates.multiSelect?g.push(l):g=[l]}),O(S({},_),{dataValue:g,eventType:"update",eventID:K()})})}},s.Stringify(l)||K()))}),d.length||(o=[n(W.Supplement,{padding:[0,1],fontColor:"4.thin",children:"\u5019\u88DC\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093"},"no-selector-notice")]),u=="fetch"&&(o=[B(q.Left,{padding:1,fontColor:"3.blur",children:[n(se.Theme.R,{showInitial:!0}),n(W.Supplement,{children:"Loading..."})]},"loader")]);let i={position:"absolute",minWidth:1,freeCSS:{zIndex:1e3}};switch(e.rootStates.SelectorPosition){case 1:i.bottom="100%",i.left=0,i.paddingBottom="1/3";break;case 2:i.bottom="100%",i.right=0,i.paddingBottom="1/3";break;case 3:i.top="100%",i.left=0,i.paddingTop="1/3";break;case 4:i.top="100%",i.right=0,i.paddingTop="1/3";break;default:break}return n(x,O(S({},i),{children:n(ue.Body,O(S({className:z("Selector"),borderRadius:"2.tone.secondary",ssCardBox:!0,boxShadow:"1.normal",overflow:"auto"},e.rootStates.SelectorStyles),{freeCSS:S({maxHeight:12*24},(h=e.rootStates.SelectorStyles)==null?void 0:h.freeCSS),children:n(re,{gap:"1/12",padding:[1,0],children:o})}))}))},Selected:e=>{let{rootStates:t,val_status:p,set_status:u,val_optionsDict:a}=e,o=[];return p.dataValue.forEach(d=>{let i=a[s.Stringify(d)];if(!i)return;let h=t.SelectedComponent,c=i.label;i.value===null&&(c=""),o.push(n(x,{className:z("SelectedCell"),children:n(h,{value:i.value,label:c,removeCallback:r=>{if(r.stopPropagation(),r.preventDefault(),t.disabled)return;let m=[...p.dataValue];m=m.filter(l=>l!==d),u(l=>O(S({},l),{dataValue:m,eventType:"update",eventID:K()}))}})},s.Stringify(i.value)))}),n(X,{children:o})},Core:e=>{var A;let{value:t}=e,[p,u]=I(!1),[a,o]=I(!1),[d,i]=I(!1),[h,c]=I(""),[r,m]=I(e.options),[l,f]=I((A=e.value[0])!=null?A:null),[v,C]=I({}),[_,g]=I(N.DefaultStatus(e.componentID,t)),[D,w]=I({ok:!1,notice:[]}),T=ne(!1);F(()=>{T.current?m(e.options):T.current=!0},[e.options]),F(()=>{if(!r.length)return;let $=[...r],J=S({},v);$.forEach(H=>{H.type!="label"&&(J[s.Stringify(H.value)]=H)}),C(J)},[r]);let R={rootStates:e,val_options:r,set_options:m,val_optionFocused:l,set_optionFocused:f,val_optionsDict:v,set_optionsDict:C,val_preventDynamicSearchOnKeywordChange:a,set_preventDynamicSearchOnKeywordChange:o,val_preventOpenSelectorOnFocus:p,set_preventOpenSelectorOnFocus:u,val_selectorOpen:d,set_selectorOpen:i,val_keyword:h,set_keyword:c,val_status:_,set_status:g,val_validate:D,set_validate:w},P=!!e.multiSelect;N.CommonEffects({type:P?"autocomplete.multi":"autocomplete.single",states:e,val_status:_,set_status:g,val_validate:D,set_validate:w,SystemValidation:me});let V=_.dataValue.length&&_.dataValue[0]!==null;return V=V||d,B(pe,{val_status:_,set_status:g,val_validate:D,states:e,children:[n(Se,{componentID:e.componentID,fontSize:e.fontSize,required:e.required,label:e.label,isActive:V}),n(L.Shallow,S({},R)),n(L.Button,S({},R))]})}},te=e=>{var p;let t=S({},e);return t=O(S({value:[],min:0,max:65535,multiSelect:!0,SearchInput:!0,emptySelect:!0,SelectorComponent:({option:u,isSelected:a,isFocused:o,addCallback:d})=>u.type=="selector"?n(Z.Sub.S,{color:"cloud",backgroundColor:"trans",borderRadius:0,fontColor:"2.normal",textAlign:"left",padding:["1/2",1.5],isActive:o,isActiveStyles:{backgroundColor:"cloud"},onClick:i=>{d()},children:B(q.Left,{gap:"1/2",children:[a&&n(M.Check,{fontColor:"theme"}),n(W.Supplement,{transition:"short",children:u.label})]})}):n(X,{children:u.label}),SelectedComponent:({value:u,label:a,removeCallback:o})=>B(q.Left,{ssCardBox:"cloud",borderRadius:"2.tone.secondary",fontSize:"1.mini",padding:"1/2",gap:0,children:[n(x,{padding:[0,"1/4"],children:a}),n(Z.Sub,{flexSizing:"none",color:"cloud",fontColor:"white",backgroundColor:"layer.5",isRounded:!0,padding:"1/4",onClick:o,freeCSS:{lineHeight:1,aspectRatio:"1/1"},children:n(M.Times,{ssSphere:1})})]}),SelectorPosition:3},t),{freeCSS:S({cursor:"pointer"},t.freeCSS)}),t.multiSelect||(t.min=0,t.max=1),t.options=t.options||[],t.emptySelect&&(t.options=[{value:null,label:n(W.Supplement,{fontColor:"4.thin",children:"\u9078\u629E\u3092\u89E3\u9664"})},...t.options]),t.value=s.flatArray((p=t.value)!=null?p:null),t.options=U.InitOptions(t.options),s.is.nullish(t.rightIcon)&&(t.rightIcon=n(ee,{ssSphere:2,children:n(M.Search,{})}),t.disabled&&(t.rightIcon=n(ee,{ssSphere:2,fontColor:"5.translucent",children:n(M.Ban,{})}))),t.rightIcon&&(t=S({paddingRight:3},t)),t.leftIcon&&(t=S({paddingLeft:3},t)),n(ce,{componentID:t.componentID,children:L.Core,states:de(t)})};export{te as Autocomplete,te as default};
|
|
1
|
+
import{b as S,c as b,d as Q,e as Y}from"../../chunk-C5N2D3ZX.js";import{Fragment as X,jsx as n,jsxs as B}from"react/jsx-runtime";import{useState as I,useEffect as F,useRef as ne}from"react";import s,{UUID as K}from"jmini";import{ExtractStyles as ae}from"../../@utils";import{Box as x,Span as ie,FAI as M,Column as re}from"../../atoms";import{Literal as W,Row as q}from"../../mols";import{Button as Z}from"../Button";import{Loader as se}from"../Loader";import{Sheet as ue}from"../Sheet";import{OptionalInputWrapper as ce,BoxWrapper as pe,CoreEffects as N,DefaultBoxishStyles as de}from"./core";import{InputAutocompleteClasses as z}from"../../@styles/componentClasses";import{InputLabel as Se}from"./Label";import{RightIcon as ee}from".";function me(e){let{value:t,states:p}=e,{required:u,options:a,min:o,max:d}=p;o=o||0,d=d||65535;let i=[],h=t.filter(c=>c!==null).length;return u&&(h||i.push({type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"})),h<o&&i.push({type:"invalid",label:o+"\u500B\u4EE5\u4E0A\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044"}),h>d&&i.push({type:"invalid",label:d+"\u500B\u307E\u3067\u9078\u629E\u3067\u304D\u307E\u3059"}),{ok:!i.filter(({type:c})=>c=="invalid").length,notice:i}}const U={InitOptions:e=>{let t=[];return e.forEach(p=>{let{type:u,label:a,value:o,searchValue:d}=p,i=d||s.is.string(a)&&a||""||s.is.string(o)&&o||s.Stringify(o||"")||"";s.is.nullish(a)&&(a=String(o)),t.push(b(S({},p),{searchValue:i,type:u||"selector",label:a,value:o}))}),t},FilterSelectableOptions:(e,t,p)=>{let u=e;return p||(u=e.filter(a=>a.type!="label")),s.scope(()=>{if(!t)return;let a=t.toLower().replace(/ /g,"");u=u.filter(o=>(o.searchValue||"").toLower().replace(/ /g,"").includes(a))}),u}},L={Shallow:e=>{let{rootStates:t,val_status:p}=e,u=ae(t);return n(x,{position:"absolute",top:0,left:0,right:0,height:0,overflow:"hidden",opacity:"trans",freeCSS:{zIndex:3,pointerEvents:"none"},children:n(W.Description,b(S({className:t.className},u),{position:"absolute",width:1,freeCSS:b(S({},u.freeCSS),{color:"orange"}),"data-id":"shallow_"+p.componentID,children:n(x,{"data-input-value-shallow":p.componentID,children:"A"})}))})},Button:e=>{let{rootStates:t,val_keyword:p,set_keyword:u,val_optionFocused:a,set_optionFocused:o,val_options:d,set_options:i,val_optionsDict:h,set_optionsDict:c,val_preventOpenSelectorOnFocus:r,set_preventOpenSelectorOnFocus:m,val_selectorOpen:l,set_selectorOpen:f,val_status:v,set_status:D,val_validate:_,set_validate:g}=e,j=t,{tone:C,required:w,form:T,className:R,multiSelect:P,enableFormSubmit:V,checkValidationAtFirst:A,onValidate:$,onUpdateValue:J,onUpdateValidValue:H,value:fe="",options:ve,leftIndicator:ye,rightIndicator:he,leftIcon:_e,rightIcon:ge,componentID:Oe,status_id:be,wrapStyles:Ie,emptySelect:De,SearchInput:Ce,SearchInputPlaceholder:we,SelectedComponent:Ve,SelectorComponent:ke,SelectorStyles:Te,SelectorPosition:Re,DynamicOptionsOnSearch:xe,DynamicOptionsOnSearchDelay:Ae}=j,O=Q(j,["tone","required","form","className","multiSelect","enableFormSubmit","checkValidationAtFirst","onValidate","onUpdateValue","onUpdateValidValue","value","options","leftIndicator","rightIndicator","leftIcon","rightIcon","componentID","status_id","wrapStyles","emptySelect","SearchInput","SearchInputPlaceholder","SelectedComponent","SelectorComponent","SelectorStyles","SelectorPosition","DynamicOptionsOnSearch","DynamicOptionsOnSearchDelay"]);return F(()=>{var k,E;if(t.disabled||!l)return;let y=U.FilterSelectableOptions(e.val_options,p,!1);o((E=(k=y[0])==null?void 0:k.value)!=null?E:null)},[p]),F(()=>{v.eventType!="init"&&(t.max==v.dataValue.length?(f(!1),m(!0),setTimeout(()=>{let y=s('[data-input-origin="'+t.componentID+'"]');y&&y.focus()},10)):s("#SearchInput_"+t.componentID).focus())},[v.dataValue]),F(()=>{let y="autocomplete-click-"+t.componentID;if(l){if(!s('[data-input-origin="'+t.componentID+'"]'))return;s("#SearchInput_"+t.componentID).focus(),s(document).addEvent({eventID:y,eventType:"mousedown",callback:E=>{let G=s(E.target),oe=!!s(G).parent("."+z("Core")).length,le=!!s(G).parent("."+z("Selector")).length;oe||le||(f(!1),E.preventDefault(),E.stopPropagation())},options:{passive:!1}})}else s(document).removeEvent([y]),u("")},[l]),B(X,{children:[n(x,b(S({tabIndex:0},O),{"data-disabled":t.disabled,"data-show-validation":N.isShowValidation(_,v,!!A),"data-component-id":v.componentID,"data-input-origin":v.componentID,"data-focus":!!l,className:[R,z("Core")].join(" "),onFocus:y=>{if(O!=null&&O.onFocus&&(O==null||O.onFocus(y)),!t.disabled){if(r)return m(!1);f(!0),y.preventDefault()}},onClick:y=>{O!=null&&O.onClick&&(O==null||O.onClick(y)),!t.disabled&&f(!0)},onKeyDown:y=>{let{key:k}=y;V&&N.SubmitForm(y,T),!l&&(k==" "||k=="ArrowDown"||k=="ArrowUp"||k=="Enter")&&f(!0)},children:B(q.Left,{flexWrap:!0,gap:"1/3",freeCSS:{letterSpacing:".5px"},children:[n(L.Selected,S({},e)),n(ie,{width:0,overflow:"hidden",opacity:"trans",children:"A"}),n(L.SearchInput,S({},e))]})})),l&&n(L.Selector,S({},e))]})},SearchInput:e=>{let{rootStates:t}=e,[p,u]=I(!1);return t.disabled||!e.val_selectorOpen?null:n(x,{id:"SearchInput_"+t.componentID,placeholder:t.SearchInputPlaceholder||"\u691C\u7D22...",opacity:e.val_selectorOpen?"max":"trans",transition:"middle",flexSizing:0,htmlTag:"input",border:"unset",backgroundColor:"trans",value:e.val_keyword,freeCSS:{outline:"none"},onCompositionStart:a=>{t.onCompositionStart&&t.onCompositionStart(a),u(!0)},onCompositionEnd:a=>{t.onCompositionEnd&&t.onCompositionEnd(a),u(!1)},onKeyDown:a=>{let{key:o,metaKey:d,ctrlKey:i}=a,h=d||i;o=="Escape"?(e.set_selectorOpen(!1),e.set_preventOpenSelectorOnFocus(!0),setTimeout(()=>{let c=s('[data-input-origin="'+t.componentID+'"]');c&&c.focus()},10)):o=="Tab"?e.set_selectorOpen(!1):o==" "?s.scope(()=>{e.val_selectorOpen||e.val_keyword||(a.preventDefault(),e.set_selectorOpen(!0))}):o=="Backspace"?s.scope(()=>{if(e.val_keyword)return;let c=[...e.val_status.dataValue];c.pop(),e.set_status(r=>b(S({},r),{dataValue:c,eventType:"update",eventID:K()}))}):o=="Enter"&&s.scope(()=>{if(p)return;if(!e.val_selectorOpen)return e.set_selectorOpen(!0);let c=e.val_options.find(m=>m.value==e.val_optionFocused);if(!c)return;let{value:r}=c;e.set_status(m=>{let l=[...m.dataValue];return s.scope(()=>{if(r===null)return l=[];m.dataValue.includes(r)?l=l.filter(v=>v!==r):t.multiSelect?l.push(r):l=[r]}),b(S({},m),{dataValue:l,eventType:"update",eventID:K()})}),e.set_keyword(""),e.set_preventDynamicSearchOnKeywordChange(!0)}),s.scope(()=>{if(!["ArrowDown","ArrowUp"].includes(o))return;if(a.preventDefault(),!e.val_selectorOpen)return e.set_selectorOpen(!0);let c=o=="ArrowDown"?1:-1,r=U.FilterSelectableOptions(e.val_options,e.val_keyword,!1),m=r.length-1,l=null;s.scope(()=>{var v,D,_,g,C,w,T,R,P,V;let f=r.findIndex(A=>A.value==e.val_optionFocused);if(f==-1&&(f=0),c==1){if(l=(D=(v=r[0])==null?void 0:v.value)!=null?D:null,h){l=(_=r[m].value)!=null?_:null;return}if(f==-1||f==m)return;l=(C=(g=r[f+1])==null?void 0:g.value)!=null?C:null}else{if(l=(w=r[m].value)!=null?w:null,h){l=(R=(T=r[0])==null?void 0:T.value)!=null?R:null;return}if(f==-1||f==0)return;l=(V=(P=r[f-1])==null?void 0:P.value)!=null?V:null}}),e.set_optionFocused(l)}),t.enableFormSubmit&&N.SubmitForm(a,e.rootStates.form)},onChange:a=>{let d=a.target.value;e.set_keyword(d)}},"searchInput")},Selector:e=>{var h;let[t,p]=I("idle"),[u,a]=I("idle");F(()=>{if(!e.val_selectorOpen||!e.rootStates.DynamicOptionsOnSearch)return;if(e.val_preventDynamicSearchOnKeywordChange)return e.set_preventDynamicSearchOnKeywordChange(!1);if(t=="idle")return p("ok");a("fetch");let c="autocomplete-search-"+e.rootStates.componentID;s.interval.once(()=>Y(void 0,null,function*(){let r=yield e.rootStates.DynamicOptionsOnSearch(e.val_keyword);a("idle");let m=U.InitOptions(r||[]);e.set_options(m)}),e.rootStates.DynamicOptionsOnSearchDelay||300,c)},[e.val_keyword]);let o=[],d=U.FilterSelectableOptions(e.val_options,e.rootStates.DynamicOptionsOnSearch&&""||e.val_keyword,!0);d.forEach((c,r)=>{let{type:m,value:l}=c,f=e.val_optionFocused==l,v=e.val_status.dataValue.includes(l),D=e.rootStates.SelectorComponent;o.push(n(D,{option:c,isFocused:f,isSelected:v,addCallback:()=>{e.set_status(_=>{let g=[..._.dataValue];return s.scope(()=>{if(l===null)return g=[];_.dataValue.includes(l)?g=g.filter(w=>w!==l):e.rootStates.multiSelect?g.push(l):g=[l]}),b(S({},_),{dataValue:g,eventType:"update",eventID:K()})})}},s.Stringify(l)||K()))}),d.length||(o=[n(W.Supplement,{padding:[0,1],fontColor:"4.thin",children:"\u5019\u88DC\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093"},"no-selector-notice")]),u=="fetch"&&(o=[B(q.Left,{padding:1,fontColor:"3.blur",children:[n(se.Theme.R,{showInitial:!0}),n(W.Supplement,{children:"Loading..."})]},"loader")]);let i={position:"absolute",minWidth:1,freeCSS:{zIndex:1e3}};switch(e.rootStates.SelectorPosition){case 1:i.bottom="100%",i.left=0,i.paddingBottom="1/3";break;case 2:i.bottom="100%",i.right=0,i.paddingBottom="1/3";break;case 3:i.top="100%",i.left=0,i.paddingTop="1/3";break;case 4:i.top="100%",i.right=0,i.paddingTop="1/3";break;default:break}return n(x,b(S({},i),{children:n(ue.Body,b(S({className:z("Selector"),borderRadius:"2.tone.secondary",ssCardBox:!0,boxShadow:"1.normal",overflow:"auto"},e.rootStates.SelectorStyles),{freeCSS:S({maxHeight:12*24},(h=e.rootStates.SelectorStyles)==null?void 0:h.freeCSS),children:n(re,{gap:"1/12",padding:[1,0],children:o})}))}))},Selected:e=>{let{rootStates:t,val_status:p,set_status:u,val_optionsDict:a}=e,o=[];return p.dataValue.forEach(d=>{let i=a[s.Stringify(d)];if(!i)return;let h=t.SelectedComponent,c=i.label;i.value===null&&(c=""),o.push(n(x,{className:z("SelectedCell"),children:n(h,{value:i.value,label:c,removeCallback:r=>{if(r.stopPropagation(),r.preventDefault(),t.disabled)return;let m=[...p.dataValue];m=m.filter(l=>l!==d),u(l=>b(S({},l),{dataValue:m,eventType:"update",eventID:K()}))}})},s.Stringify(i.value)))}),n(X,{children:o})},Core:e=>{var A;let{value:t}=e,[p,u]=I(!1),[a,o]=I(!1),[d,i]=I(!1),[h,c]=I(""),[r,m]=I(e.options),[l,f]=I((A=e.value[0])!=null?A:null),[v,D]=I({}),[_,g]=I(N.DefaultStatus(e.componentID,t)),[C,w]=I({ok:!1,notice:[]}),T=ne(!1);F(()=>{T.current?m(e.options):T.current=!0},[e.options]),F(()=>{if(!r.length)return;let $=[...r],J=S({},v);$.forEach(H=>{H.type!="label"&&(J[s.Stringify(H.value)]=H)}),D(J)},[r]);let R={rootStates:e,val_options:r,set_options:m,val_optionFocused:l,set_optionFocused:f,val_optionsDict:v,set_optionsDict:D,val_preventDynamicSearchOnKeywordChange:a,set_preventDynamicSearchOnKeywordChange:o,val_preventOpenSelectorOnFocus:p,set_preventOpenSelectorOnFocus:u,val_selectorOpen:d,set_selectorOpen:i,val_keyword:h,set_keyword:c,val_status:_,set_status:g,val_validate:C,set_validate:w},P=!!e.multiSelect;N.CommonEffects({type:P?"autocomplete.multi":"autocomplete.single",states:e,val_status:_,set_status:g,val_validate:C,set_validate:w,SystemValidation:me});let V=_.dataValue.length&&_.dataValue[0]!==null;return V=V||d,B(pe,{val_status:_,set_status:g,val_validate:C,states:e,children:[n(Se,{componentID:e.componentID,fontSize:e.fontSize,required:e.required,label:e.label,isActive:V}),n(L.Shallow,S({},R)),n(L.Button,S({},R))]})}},te=e=>{var p;let t=S({},e);return t=b(S({value:[],min:0,max:65535,multiSelect:!0,SearchInput:!0,emptySelect:!0,SelectorComponent:({option:u,isSelected:a,isFocused:o,addCallback:d})=>u.type=="selector"?n(Z.Sub.S,{color:"cloud",backgroundColor:"trans",borderRadius:0,fontColor:"2.normal",textAlign:"left",padding:["1/2",1.5],isActive:o,isActiveStyles:{backgroundColor:"cloud"},onClick:i=>{d()},children:B(q.Left,{gap:"1/2",children:[a&&n(M.Check,{fontColor:"theme"}),n(W.Supplement,{transition:"short",children:u.label})]})}):n(X,{children:u.label}),SelectedComponent:({value:u,label:a,removeCallback:o})=>B(q.Left,{ssCardBox:"cloud",borderRadius:"2.tone.secondary",fontSize:"1.mini",padding:"1/2",gap:0,children:[n(x,{padding:[0,"1/4"],children:a}),n(Z.Sub,{flexSizing:"none",color:"cloud",fontColor:"white",backgroundColor:"layer.5",isRounded:!0,padding:"1/4",onClick:o,freeCSS:{lineHeight:1,aspectRatio:"1/1"},children:n(M.Times,{ssSphere:1})})]}),SelectorPosition:3},t),{freeCSS:S({cursor:"pointer"},t.freeCSS)}),t.multiSelect||(t.min=0,t.max=1),t.options=t.options||[],t.emptySelect&&(t.options=[{value:null,label:n(W.Supplement,{fontColor:"4.thin",children:"\u9078\u629E\u3092\u89E3\u9664"})},...t.options]),t.value=s.flatArray((p=t.value)!=null?p:null),t.options=U.InitOptions(t.options),s.is.nullish(t.rightIcon)&&(t.rightIcon=n(ee,{ssSphere:2,children:n(M.Search,{})}),t.disabled&&(t.rightIcon=n(ee,{ssSphere:2,fontColor:"5.translucent",children:n(M.Ban,{})}))),t.rightIcon&&(t=S({paddingRight:3},t)),t.leftIcon&&(t=S({paddingLeft:3},t)),n(ce,{componentID:t.componentID,children:L.Core,states:de(t)})};export{te as Autocomplete,te as default};
|
package/dist/fn/Sheet.d.ts
CHANGED
|
@@ -5,7 +5,8 @@ import { Box } from '../atoms';
|
|
|
5
5
|
declare namespace Sheet {
|
|
6
6
|
type Methods = {
|
|
7
7
|
Wrapper(): JSX.Element;
|
|
8
|
-
Element<T extends keyof TypesInput>(
|
|
8
|
+
Element<T extends keyof TypesInput>(p: Omit<TypesInput[T], 'content'> & {
|
|
9
|
+
type: T;
|
|
9
10
|
isOpen: boolean;
|
|
10
11
|
children: ReactElement;
|
|
11
12
|
}): ReactElement;
|
package/dist/fn/Sheet.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as g,c as w,d as G}from"../chunk-C5N2D3ZX.js";import{jsx as c,jsxs as $}from"react/jsx-runtime";import f,{UUID as J,Time as le,useStore as A}from"jmini";import{useState as U,useEffect as X,useRef as pe}from"react";import{$$fromRoot as j,Config as K}from"../@utils";import{Box as k,Flex as ue,Img as ie,FAI as ae,Column as oe}from"../atoms";import{Row as re}from"../mols";import{Button as se}from"./Button";import he from"./Input";import{SheetClasses as m}from"../@styles/componentClasses";import ce from"./Effect";const T={currentIndex:0,openQueue:{},getSessionStates:()=>{let t=A.get("sessionStates-"+K.get().sessionUID);return t||null},getNewSheetStates:t=>{var l;let e=w(g({sheetGroups:t.sheetGroups||[],backgroundEffect:!0,overwrap:t.type=="custom",hold_state:!1,closeAtPageTransit:!0,closeAtEscapeKeyDown:!0,closeAtAroundClick:t.type=="custom"},t),{sheetID:t.sheetID||J(),isOpen:!0,created_at:le()});if(e.type=="custom"){let u=e;u.parent=u.parent||((l=u==null?void 0:u.event)==null?void 0:l.currentTarget),e=u}return e}},Y={Wrapper:()=>{let[t,e]=U([]),l={val_sheets:t,set_sheets:e},u="sessionStates-"+K.get().sessionUID;A.set({[u]:l}),X(()=>{let n="Sheet-"+K.get().sessionUID;A.set({[n]:{add:(a,r)=>{let s=A.get(n);if(!s)return;let i=T.getNewSheetStates(a);if(T.openQueue[i.sheetID])return;if(T.openQueue[i.sheetID]=!0,r!="inherit"&&(i.isOpen=r!=null?r:!0),!!s.find(i.sheetID)){e(y=>{let R=[...y],D=R.findIndex(N=>N.sheetID==i.sheetID);return D==-1||(R[D]=i),R}),delete T.openQueue[i.sheetID];return}e(y=>[i,...y])},find:a=>{let r=T.getSessionStates();if(!r)return null;let{val_sheets:s}=r;return s.find(i=>i.sheetID==a)}}}),f(K.get().appRoot).addEvent({eventType:"keyup",eventID:"SheetEvent.keyUp",callback:function(a){let{key:r,metaKey:s}=a;if(r=="Escape"||r==","&&s){let i=T.getSessionStates();if(!i)return;let{val_sheets:I}=i,y=I.filter(D=>D.isOpen);if(!y.length)return;let R=y.reduce((D,N)=>D.created_at.value>N.created_at.value?D:N);E.close(R.sheetID,r)}}}).addEvent({eventType:"click",eventID:"SheetEvent.Click",callback:function(a){let r=T.getSessionStates();if(!r)return;let{val_sheets:s}=r,i=a.target;if(!i||i!=null&&i.closest("."+m("CustomSheet")))return;let I=s.filter(y=>y.type=="custom");I.length&&I.forEach(y=>{let{parent:R}=y;if(!y.closeAtAroundClick)return;let D=j(R)[0];R!==i&&D!==i&&(f(D).find(i).length||E.close(y.sheetID))})}})},[]);let S=t.map(n=>c(Y.Core,w(g({},l),{val_sheet:n,patch_sheet:a=>{e(r=>{let s=[...r],i=s.findIndex(I=>I.sheetID==n.sheetID);return i==-1||(s[i]=g(g({},s[i]),a)),s})},delete_sheet:()=>{e(a=>{let r=[...a],s=r.findIndex(i=>i.sheetID==n.sheetID);return s==-1||r.splice(s,1),r})}}),n.sheetID));return c(k,{className:["AMOTIFY_be",m("Wrapper")].join(" "),children:S})},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:l}=t,[u,S]=U(T.currentIndex+2),[n]=U(J()),a=e.type!="custom"&&!e.overwrap;X(()=>{T.currentIndex++,f.scope(()=>{if(!e.closeAtParentBlur)return;let s=f(e.parent);s[0]&&s.addEvent({eventID:"SheetClosation-"+e.sheetID,eventType:"mouseout",callback:()=>{s.removeEvent("SheetClosation-"+e.sheetID),l({isOpen:!1})}})}),A.set({[e.sheetID]:{resize:s=>{if(e.type=="drawer.bottom"){let i=A.get(n);i&&i.resize&&i.resize(s)}else(e.type.includes("normal")||e.type.includes("drawer"))&&l({size:s})},close:s=>{l({isOpen:!1})},open:()=>{l({isOpen:!0})}}})},[]),X(()=>{f.scope(()=>{let s=j("#"+n);if(e.isOpen){e.hold_state&&S(T.currentIndex+1),s.await(10).removeClass(m("Hide")).await(10).addClass(m("Open")).callback(()=>{delete T.openQueue[e.sheetID],e.openAfter&&e.openAfter()});return}s.await(10).removeClass(m("Open")).await(251).addClass(m("Hide")).callback(()=>{if(e.closeAfter&&e.closeAfter(),a&&K.get().browserIs!="safari"&&f(K.get().appRoot).focus(),e.hold_state)return l({isOpen:!1});t.delete_sheet()})})},[e.isOpen]);let r=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 c(k,{className:[m("Wrap"),m("Tcate_"+Y.sheetCategory(e.type)),m("Tpos_"+Y.sheetPosition(e.type)),m("isMainSheet_"+a)].join(" "),width:1,ssAbsoluteCovered:!0,freeCSS:{zIndex:u},id:n,children:$(oe,{className:m("Content"),gap:0,height:"viewHeight",overflow:"auto",transition:"middle",children:[!!a&&c(Y.TapSensor,{sheetID:e.sheetID,delegateAroundClick:e.closeAtAroundClick}),c(r,g({componentID:n},e))]})},n)},Types:{Normal:t=>{let _=t,{sheetID:e,sheetGroups:l,bodyScrolls:u,content:S,className:n="",type:a,size:r="R",freeCSS:s,openAfter:i,closeAfter:I,closeAtAroundClick:y,closeAtEscapeKeyDown:R,closeAtPageTransit:D,closeAtParentBlur:N,closeAtSwipeDown:F,hold_state:q,overwrap:ee,isOpen:te,backgroundEffect:M}=_,W=G(_,["sheetID","sheetGroups","bodyScrolls","content","className","type","size","freeCSS","openAfter","closeAfter","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]),x={},v=[];return a.match(/top/)?(v.push("top"),x.marginBottom="auto"):a.match(/middle/)?(v.push("center"),x.marginTop="auto",x.marginBottom="auto"):a.match(/bottom/)&&(v.push("bottom"),x.marginTop="auto"),a.match(/left/i)?(v.push("left"),x.marginRight="auto"):a.match(/center/i)?(v.push("center"),x.marginLeft="auto",x.marginRight="auto"):a.match(/right/i)&&(v.push("right"),x.marginLeft="auto"),c(k,w(g(g({className:[m("BB"),n].join(" "),padding:1,transition:"long",opacity:"trans"},W),x),{freeCSS:g({width:{S:"26rem",R:"36rem",L:"44rem","2L":"60rem","3L":"72rem",MAX:"100%"}[r],maxWidth:"96vw",transformOrigin:v.join(" ")},s),children:f.is.function(S)?c(S,{}):S}))},Edge:t=>{let W=t,{sheetID:e,sheetGroups:l,bodyScrolls:u,type:S,content:n,className:a="",size:r="R",openAfter:s,closeAfter:i,closeAtAroundClick:I,closeAtEscapeKeyDown:y,closeAtPageTransit:R,closeAtParentBlur:D,closeAtSwipeDown:N,hold_state:F,overwrap:q,isOpen:ee,backgroundEffect:te}=W,M=G(W,["sheetID","sheetGroups","bodyScrolls","type","content","className","size","openAfter","closeAfter","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]);return c(k,w(g(w(g({className:[m("BB"),a].join(" ")},S=="drawer.right"?{marginLeft:"auto"}:S=="drawer.left"?{marginRight:"auto"}:{}),{opacity:"trans",transition:"long",position:"relative",backgroundColor:"layer.1",flexSizing:"none",minHeight:"viewHeight",boxShadow:"3.remark"}),M),{freeCSS:g({width:{S:"20rem",R:"27rem",L:"32rem","2L":"40rem","3L":"58rem",MAX:"100vw"}[r],maxWidth:"96vw"},M.freeCSS),children:f.is.function(n)?c(n,{}):n}))},Bottom:t=>{let V=t,{componentID:e,sheetID:l,sheetGroups:u,bodyScrolls:S,content:n,size:a="R",sizeChanged:r,baseStyles:s,openAfter:i,closeAfter:I,closeAtAroundClick:y,closeAtEscapeKeyDown:R,closeAtPageTransit:D,closeAtParentBlur:N,closeAtSwipeDown:F=!0,hold_state:q,overwrap:ee,isOpen:te,backgroundEffect:M}=V,W=G(V,["componentID","sheetID","sheetGroups","bodyScrolls","content","size","sizeChanged","baseStyles","openAfter","closeAfter","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]),x=f.getScreenSize(),v=[0,.2,.6,.95],_={ZERO:0,S:1,R:2,L:3,"2L":3,"3L":3,MAX:3},[H,Q]=U(a),[b,B]=U({process:!1,processStart:0,originY:0,originValue:0,viewHeight:0,value:v[_[a]]});A.update({[e]:{val_edit:b,resize:C=>{let d=v[_[C]];B(h=>w(g({},h),{value:d})),Q(C)}}});const z={Start:C=>{f(document).addEvent({eventID:"BottomSheetMouseMove",eventType:"mousemove",callback:z.Move,options:{passive:!1}}).addEvent({eventID:"BottomSheetTouchMove",eventType:"touchmove",callback:z.Move,options:{passive:!1}}).addEvent({eventID:"BottomSheetMouseUp",eventType:"mouseup",callback:z.End}).addEvent({eventID:"BottomSheetTouchEnd",eventType:"touchend",callback:z.End});let d=f.getCursor(C),h=w(g({},b),{process:!0,processStart:new Date().getTime(),originY:d.y,originValue:b.value,viewHeight:f.getScreenSize().height});A.update({[e]:{val_edit:h}}),B(h)},Move:C=>{var P;let d=(P=A.get(e))==null?void 0:P.val_edit;if(!d.process)return;let O=(f.getCursor(C).y-d.originY)/d.viewHeight,o=d.originValue-O;if(o>.95)o=.95+(o-.95)*.5;else if(o<.2){let L=.2-o;L-=.1,o=.1+(.1-L)*.5}return B(w(g({},d),{value:o})),C.preventDefault(),C.stopPropagation(),!1},End:C=>{var o;let d=(o=A.get(e))==null?void 0:o.val_edit;if(!d.process)return;f(document).removeEvent(["BottomSheetMouseMove","BottomSheetTouchMove","BottomSheetMouseUp","BottomSheetTouchEnd"]);let h=0;if(d.value<.1||(d.value<.5?h=1:d.value>.75?h=3:h=2),new Date().getTime()-d.processStart<300){let P=f.getCursor(C).y-d.originY;if(Math.abs(P)>=20){let L=+(P<0)*2-1;h+=L,h=Math.min(Math.max(h,0),v.length-1)}}h==0&&(F||(h=1)),Q(["ZERO","S","R","L"][h]),B(w(g({},d),{value:v[h],process:!1}))}},Z=pe(!1);return X(()=>{Z.current?H=="ZERO"?F&&E.close(l):setTimeout(()=>{t.sizeChanged&&t.sizeChanged(H)},250):Z.current=!0},[H]),c(k,{className:m("BB"),margin:[0,"auto"],marginTop:"auto",opacity:"trans",width:1,transition:"long",freeCSS:g({maxWidth:12*60,height:x.height*b.value},b.process?{transition:"0s"}:{}),children:$(oe,w(g({gap:0,flexSizing:"none",borderTopLeftRadius:"1.tone.primary",borderTopRightRadius:"1.tone.primary",borderBottom:"unset",boxShadow:"3.remark",position:"relative",overflow:"hidden",height:1},s),{children:[$(re.Separate,{padding:1,backgroundColor:"layer.1",position:"relative",freeCSS:{userSelect:"none"},children:[c(k,{ssSphere:2.5}),c(re.Center,{onPointerDown:z.Start,flexSizing:0,padding:"2/3",ssPushable:!0,isRounded:!0,freeCSS:{cursor:"grab",userSelect:"none"},children:c(k,{unitWidth:6,unitHeight:"1/2",backgroundColor:"layer.4",isRounded:!0,className:m("DragBar")})}),c(se.Sub,{color:"cloud",ssSphere:2.5,onClick:()=>{E.close(l)},children:c(ae.Times,{})})]}),c(k,w(g({backgroundColor:"layer.1",flexSizing:0,overflow:"auto"},W),{children:f.is.function(n)?c(n,{}):n}))]}))})},Custom:t=>{let V=t,{sheetID:e,sheetGroups:l,bodyScrolls:u,event:S,parent:n,nextToCursor:a,gravityPoint:r=22,content:s,closeAtAroundClick:i,closeAtEscapeKeyDown:I,closeAtPageTransit:y,closeAtParentBlur:R,closeAtSwipeDown:D,hold_state:N,openAfter:F,closeAfter:q,overwrap:ee,isOpen:te,resize:M,backgroundEffect:W}=V,x=G(V,["sheetID","sheetGroups","bodyScrolls","event","parent","nextToCursor","gravityPoint","content","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","openAfter","closeAfter","overwrap","isOpen","resize","backgroundEffect"]),[v]=U(J()),_=f.is.element(n)||f.is.jmini(n)?f(n):j(n),H='[data-sheet-id="'+v+'"]',Q='[data-sheet-content="'+v+'"]';r=r;let b=r%5||5,B=Math.ceil(r/5);const z={Init:()=>{if(a&&S){let p=f.getScreenSize(),ne=f.getCursor(S);return{top:ne.y-p.pageYOffset,left:ne.x-p.pageXOffset}}let C={};if(!_||!_[0])return C;let{top:d,right:h,bottom:O,left:o,height:P,width:L}=_.position();return[1,2].includes(b)?C.left=o:b==3?C.left=o+L/2:[4,5].includes(b)&&(C.left=h),r<=10?C.top=d:r<=15?C.top=d+P/2:r<=25&&(C.top=O),C},Adjust:()=>{let C=j(H).position(),d=j(Q).position(),h=_.position(),O=f.getScreenSize(),o={};for(let p in d)o[p]=d[p];if(f.scope(()=>{if(t.nextToCursor)return;let p=0;B==1?p=h.top-o.bottom:B==2?p=h.top-o.top:B==3?p=h.top-o.top+(h.height-o.height)/2:B==4?p=h.bottom-o.bottom:B==5&&(p=h.bottom-o.top),o.top+=p,o.bottom+=p}),f.scope(()=>{if(t.nextToCursor)return;let p=0;b==1?p=h.left-o.right:b==2?p=h.left-o.left:b==3?p=h.left-o.left+(h.width-o.width)/2:b==4?p=h.right-o.right:b==5&&(p=h.right-o.left),o.left+=p,o.right+=p}),o.top<0){let p=-o.top;o.top+=p,o.bottom+=p}if(o.bottom>O.height){let p=o.bottom-O.height;o.top-=p,o.bottom-=p}if(o.left<0){let p=-o.left;o.left+=p,o.right+=p}if(o.right>O.width){let p=o.right-O.width;o.left-=p,o.right-=p}let P=o.top-d.top,L=o.left-d.left;f(H).css({top:C.top+P+"px",left:C.left+L+"px"})}};let[Z]=U(z.Init());return X(()=>{j(H).await(10).addClass(m("Open")).await(200).callback(()=>{(M==null||M)&&z.Adjust()}),A.update({["customSheet-"+t.sheetID]:{reposition:()=>{z.Adjust()}}})},[]),_[0]?c(k,{className:[m("BB"),m("CustomSheet")].join(" "),"data-sheet-id":v,transition:"long",position:"absolute",width:0,height:0,opacity:"trans",flexCenter:!0,freeCSS:Z,children:c(ue,{position:"absolute",className:[m("GPT"),m("GPT_"+r),m("Col_"+b),m("Row_"+B)].join(" "),children:c(k,w(g({"data-sheet-content":v,flexSizing:"none",maxHeight:"viewHeight"},x),{freeCSS:g({maxWidth:"98vw"},x.freeCSS),children:f.is.function(s)?c(s,{}):s}))})}):null}},TapSensor:t=>c(k,{className:m("TapSensor"),children:c(se.Plain,{className:m("TapContent"),onClick:e=>{var l;(l=t.delegateAroundClick)!=null&&l&&E.close(t.sheetID)},freeCSS:{cursor:"default",pointerEvents:"all"}})})},E={Wrapper:()=>c(Y.Wrapper,{}),Element:(t,e)=>{let n=e,{isOpen:l,children:u}=n,S=G(n,["isOpen","children"]);return e.type=t,X(()=>{if(l){E.open(t,w(g({},S),{content:u}));return}S.sheetID&&E.close(S.sheetID)},[l]),null},image:(t,e)=>{let l=t.sheetID||J(),n=t,{type:u}=n,S=G(n,["type"]);E.open(u||"topCenter",w(g({size:"MAX",backgroundColor:"trans",height:"viewHeight"},S),{sheetID:l,freeCSS:{maxWidth:"96vw",transformOrigin:"top"},content:()=>{let[a]=U(f.flatArray(e)),[r,s]=U(0),i=[];return a.forEach((I,y)=>{i.push({value:y,label:c(ie,{src:f.flatArray(I)[0],width:"auto",height:1,borderRadius:"3.tone.tertiary",freeCSS:{maxWidth:12*6,maxHeight:12*3}})})}),$(oe,{gap:0,height:1,position:"relative",children:[$(re.Separate,{position:"absolute",top:0,left:0,right:0,padding:[1,2],freeCSS:{zIndex:2},children:[c(he.Radio,{icon:!1,value:r,override:"force",horizontalAlign:"center",onUpdateValidValue:I=>{s(I)},cellStyles:{border:!0,borderWidth:2,padding:"1/3",paddingRight:"1/3",boxShadow:"2.normal",gap:0},cellCheckedStyles:{borderColor:"theme"},options:i}),c(se.Sub.S,{color:"cloud",ssSphere:3,onClick:()=>{E.close(l)},children:c(ae.Times,{})})]}),c(ce.FadeIn,{flexCenter:!0,flexSizing:0,overflow:"auto",children:c(ie,{width:"auto",height:"auto",maxWidth:1,maxHeight:1,src:a[r]})},r)]})}}))},open:(t,e,l)=>{e.sheetID=(e.sheetID||"").replace(/\./g,"-"),e.type=t;let u=A.get("Sheet-"+K.get().sessionUID);u&&u.add(e,l)},resize:t=>{t.sheetID=(t.sheetID||"").replace(/\./g,"-");let e=A.get(t.sheetID);e&&e.resize&&e.resize(t.size)},customSheet:{reposition:t=>{let e=A.get("customSheet-"+t);e&&e.reposition&&e.reposition()}},close:function(t,e,l){let u=T.getSessionStates();if(!u)return;let{val_sheets:S}=u;t=t==null?void 0:t.replace(/\./g,"-");let n=S.find(r=>r.sheetID==t);if(!n||e=="Escape"&&!n.closeAtEscapeKeyDown)return;let a=A.get(n.sheetID);a&&a.close&&a.close(l)},closeGroup:t=>{let e=T.getSessionStates();if(!e)return;let{val_sheets:l}=e;t=(t||"").replace(/\./g,"-");for(let u of l)u.sheetGroups&&u.sheetGroups==t&&E.close(u.sheetID)},closeAll:t=>{let e=T.getSessionStates();if(!e)return;let{val_sheets:l}=e;for(let u of l)t&&!u.closeAtPageTransit||E.close(u.sheetID,"pageTransit",!0)},Body:t=>c(k,g({className:m("BaseBody"),backgroundColor:"layer.1",borderRadius:"1.tone.primary",position:"relative",boxShadow:"3.remark",transition:"long"},t))};export{E as Sheet,E as default};
|
|
1
|
+
import{b as g,c as w,d as G}from"../chunk-C5N2D3ZX.js";import{jsx as c,jsxs as $}from"react/jsx-runtime";import f,{UUID as J,Time as le,useStore as A}from"jmini";import{useState as U,useEffect as X,useRef as pe}from"react";import{$$fromRoot as j,Config as K}from"../@utils";import{Box as k,Flex as ue,Img as ie,FAI as ae,Column as oe}from"../atoms";import{Row as re}from"../mols";import{Button as se}from"./Button";import he from"./Input";import{SheetClasses as m}from"../@styles/componentClasses";import ce from"./Effect";const T={currentIndex:0,openQueue:{},getSessionStates:()=>{let t=A.get("sessionStates-"+K.get().sessionUID);return t||null},getNewSheetStates:t=>{var l;let e=w(g({sheetGroups:t.sheetGroups||[],backgroundEffect:!0,overwrap:t.type=="custom",hold_state:!1,closeAtPageTransit:!0,closeAtEscapeKeyDown:!0,closeAtAroundClick:t.type=="custom"},t),{sheetID:t.sheetID||J(),isOpen:!0,created_at:le()});if(e.type=="custom"){let p=e;p.parent=p.parent||((l=p==null?void 0:p.event)==null?void 0:l.currentTarget),e=p}return e}},Y={Wrapper:()=>{let[t,e]=U([]),l={val_sheets:t,set_sheets:e},p="sessionStates-"+K.get().sessionUID;A.set({[p]:l}),X(()=>{let a="Sheet-"+K.get().sessionUID;A.set({[a]:{add:(i,r)=>{let s=A.get(a);if(!s)return;let n=T.getNewSheetStates(i);if(T.openQueue[n.sheetID])return;if(T.openQueue[n.sheetID]=!0,r!="inherit"&&(n.isOpen=r!=null?r:!0),!!s.find(n.sheetID)){e(y=>{let R=[...y],D=R.findIndex(N=>N.sheetID==n.sheetID);return D==-1||(R[D]=n),R}),delete T.openQueue[n.sheetID];return}e(y=>[n,...y])},find:i=>{let r=T.getSessionStates();if(!r)return null;let{val_sheets:s}=r;return s.find(n=>n.sheetID==i)}}}),f(K.get().appRoot).addEvent({eventType:"keyup",eventID:"SheetEvent.keyUp",callback:function(i){let{key:r,metaKey:s}=i;if(r=="Escape"||r==","&&s){let n=T.getSessionStates();if(!n)return;let{val_sheets:I}=n,y=I.filter(D=>D.isOpen);if(!y.length)return;let R=y.reduce((D,N)=>D.created_at.value>N.created_at.value?D:N);E.close(R.sheetID,r)}}}).addEvent({eventType:"click",eventID:"SheetEvent.Click",callback:function(i){let r=T.getSessionStates();if(!r)return;let{val_sheets:s}=r,n=i.target;if(!n||n!=null&&n.closest("."+m("CustomSheet")))return;let I=s.filter(y=>y.type=="custom");I.length&&I.forEach(y=>{let{parent:R}=y;if(!y.closeAtAroundClick)return;let D=j(R)[0];R!==n&&D!==n&&(f(D).find(n).length||E.close(y.sheetID))})}})},[]);let C=t.map(a=>c(Y.Core,w(g({},l),{val_sheet:a,patch_sheet:i=>{e(r=>{let s=[...r],n=s.findIndex(I=>I.sheetID==a.sheetID);return n==-1||(s[n]=g(g({},s[n]),i)),s})},delete_sheet:()=>{e(i=>{let r=[...i],s=r.findIndex(n=>n.sheetID==a.sheetID);return s==-1||r.splice(s,1),r})}}),a.sheetID));return c(k,{className:["AMOTIFY_be",m("Wrapper")].join(" "),children:C})},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:l}=t,[p,C]=U(T.currentIndex+2),[a]=U(J()),i=e.type!="custom"&&!e.overwrap;X(()=>{T.currentIndex++,f.scope(()=>{if(!e.closeAtParentBlur)return;let s=f(e.parent);s[0]&&s.addEvent({eventID:"SheetClosation-"+e.sheetID,eventType:"mouseout",callback:()=>{s.removeEvent("SheetClosation-"+e.sheetID),l({isOpen:!1})}})}),A.set({[e.sheetID]:{resize:s=>{if(e.type=="drawer.bottom"){let n=A.get(a);n&&n.resize&&n.resize(s)}else(e.type.includes("normal")||e.type.includes("drawer"))&&l({size:s})},close:s=>{l({isOpen:!1})},open:()=>{l({isOpen:!0})}}})},[]),X(()=>{f.scope(()=>{let s=j("#"+a);if(e.isOpen){e.hold_state&&C(T.currentIndex+1),s.await(10).removeClass(m("Hide")).await(10).addClass(m("Open")).callback(()=>{delete T.openQueue[e.sheetID],e.openAfter&&e.openAfter()});return}s.await(10).removeClass(m("Open")).await(251).addClass(m("Hide")).callback(()=>{if(e.closeAfter&&e.closeAfter(),i&&K.get().browserIs!="safari"&&f(K.get().appRoot).focus(),e.hold_state)return l({isOpen:!1});t.delete_sheet()})})},[e.isOpen]);let r=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 c(k,{className:[m("Wrap"),m("Tcate_"+Y.sheetCategory(e.type)),m("Tpos_"+Y.sheetPosition(e.type)),m("isMainSheet_"+i)].join(" "),width:1,ssAbsoluteCovered:!0,freeCSS:{zIndex:p},id:a,children:$(oe,{className:m("Content"),gap:0,height:"viewHeight",overflow:"auto",transition:"middle",children:[!!i&&c(Y.TapSensor,{sheetID:e.sheetID,delegateAroundClick:e.closeAtAroundClick}),c(r,g({componentID:a},e))]})},a)},Types:{Normal:t=>{let _=t,{sheetID:e,sheetGroups:l,bodyScrolls:p,content:C,className:a="",type:i,size:r="R",freeCSS:s,openAfter:n,closeAfter:I,closeAtAroundClick:y,closeAtEscapeKeyDown:R,closeAtPageTransit:D,closeAtParentBlur:N,closeAtSwipeDown:F,hold_state:q,overwrap:ee,isOpen:te,backgroundEffect:M}=_,W=G(_,["sheetID","sheetGroups","bodyScrolls","content","className","type","size","freeCSS","openAfter","closeAfter","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]),x={},v=[];return i.match(/top/)?(v.push("top"),x.marginBottom="auto"):i.match(/middle/)?(v.push("center"),x.marginTop="auto",x.marginBottom="auto"):i.match(/bottom/)&&(v.push("bottom"),x.marginTop="auto"),i.match(/left/i)?(v.push("left"),x.marginRight="auto"):i.match(/center/i)?(v.push("center"),x.marginLeft="auto",x.marginRight="auto"):i.match(/right/i)&&(v.push("right"),x.marginLeft="auto"),c(k,w(g(g({className:[m("BB"),a].join(" "),padding:1,transition:"long",opacity:"trans"},W),x),{freeCSS:g({width:{S:"26rem",R:"36rem",L:"44rem","2L":"60rem","3L":"72rem",MAX:"100%"}[r],maxWidth:"96vw",transformOrigin:v.join(" ")},s),children:f.is.function(C)?c(C,{}):C}))},Edge:t=>{let W=t,{sheetID:e,sheetGroups:l,bodyScrolls:p,type:C,content:a,className:i="",size:r="R",openAfter:s,closeAfter:n,closeAtAroundClick:I,closeAtEscapeKeyDown:y,closeAtPageTransit:R,closeAtParentBlur:D,closeAtSwipeDown:N,hold_state:F,overwrap:q,isOpen:ee,backgroundEffect:te}=W,M=G(W,["sheetID","sheetGroups","bodyScrolls","type","content","className","size","openAfter","closeAfter","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]);return c(k,w(g(w(g({className:[m("BB"),i].join(" ")},C=="drawer.right"?{marginLeft:"auto"}:C=="drawer.left"?{marginRight:"auto"}:{}),{opacity:"trans",transition:"long",position:"relative",backgroundColor:"layer.1",flexSizing:"none",minHeight:"viewHeight",boxShadow:"3.remark"}),M),{freeCSS:g({width:{S:"20rem",R:"27rem",L:"32rem","2L":"40rem","3L":"58rem",MAX:"100vw"}[r],maxWidth:"96vw"},M.freeCSS),children:f.is.function(a)?c(a,{}):a}))},Bottom:t=>{let V=t,{componentID:e,sheetID:l,sheetGroups:p,bodyScrolls:C,content:a,size:i="R",sizeChanged:r,baseStyles:s,openAfter:n,closeAfter:I,closeAtAroundClick:y,closeAtEscapeKeyDown:R,closeAtPageTransit:D,closeAtParentBlur:N,closeAtSwipeDown:F=!0,hold_state:q,overwrap:ee,isOpen:te,backgroundEffect:M}=V,W=G(V,["componentID","sheetID","sheetGroups","bodyScrolls","content","size","sizeChanged","baseStyles","openAfter","closeAfter","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]),x=f.getScreenSize(),v=[0,.2,.6,.95],_={ZERO:0,S:1,R:2,L:3,"2L":3,"3L":3,MAX:3},[H,Q]=U(i),[b,B]=U({process:!1,processStart:0,originY:0,originValue:0,viewHeight:0,value:v[_[i]]});A.update({[e]:{val_edit:b,resize:S=>{let d=v[_[S]];B(h=>w(g({},h),{value:d})),Q(S)}}});const z={Start:S=>{f(document).addEvent({eventID:"BottomSheetMouseMove",eventType:"mousemove",callback:z.Move,options:{passive:!1}}).addEvent({eventID:"BottomSheetTouchMove",eventType:"touchmove",callback:z.Move,options:{passive:!1}}).addEvent({eventID:"BottomSheetMouseUp",eventType:"mouseup",callback:z.End}).addEvent({eventID:"BottomSheetTouchEnd",eventType:"touchend",callback:z.End});let d=f.getCursor(S),h=w(g({},b),{process:!0,processStart:new Date().getTime(),originY:d.y,originValue:b.value,viewHeight:f.getScreenSize().height});A.update({[e]:{val_edit:h}}),B(h)},Move:S=>{var P;let d=(P=A.get(e))==null?void 0:P.val_edit;if(!d.process)return;let O=(f.getCursor(S).y-d.originY)/d.viewHeight,o=d.originValue-O;if(o>.95)o=.95+(o-.95)*.5;else if(o<.2){let L=.2-o;L-=.1,o=.1+(.1-L)*.5}return B(w(g({},d),{value:o})),S.preventDefault(),S.stopPropagation(),!1},End:S=>{var o;let d=(o=A.get(e))==null?void 0:o.val_edit;if(!d.process)return;f(document).removeEvent(["BottomSheetMouseMove","BottomSheetTouchMove","BottomSheetMouseUp","BottomSheetTouchEnd"]);let h=0;if(d.value<.1||(d.value<.5?h=1:d.value>.75?h=3:h=2),new Date().getTime()-d.processStart<300){let P=f.getCursor(S).y-d.originY;if(Math.abs(P)>=20){let L=+(P<0)*2-1;h+=L,h=Math.min(Math.max(h,0),v.length-1)}}h==0&&(F||(h=1)),Q(["ZERO","S","R","L"][h]),B(w(g({},d),{value:v[h],process:!1}))}},Z=pe(!1);return X(()=>{Z.current?H=="ZERO"?F&&E.close(l):setTimeout(()=>{t.sizeChanged&&t.sizeChanged(H)},250):Z.current=!0},[H]),c(k,{className:m("BB"),margin:[0,"auto"],marginTop:"auto",opacity:"trans",width:1,transition:"long",freeCSS:g({maxWidth:12*60,height:x.height*b.value},b.process?{transition:"0s"}:{}),children:$(oe,w(g({gap:0,flexSizing:"none",borderTopLeftRadius:"1.tone.primary",borderTopRightRadius:"1.tone.primary",borderBottom:"unset",boxShadow:"3.remark",position:"relative",overflow:"hidden",height:1},s),{children:[$(re.Separate,{padding:1,backgroundColor:"layer.1",position:"relative",freeCSS:{userSelect:"none"},children:[c(k,{ssSphere:2.5}),c(re.Center,{onPointerDown:z.Start,flexSizing:0,padding:"2/3",ssPushable:!0,isRounded:!0,freeCSS:{cursor:"grab",userSelect:"none"},children:c(k,{unitWidth:6,unitHeight:"1/2",backgroundColor:"layer.4",isRounded:!0,className:m("DragBar")})}),c(se.Sub,{color:"cloud",ssSphere:2.5,onClick:()=>{E.close(l)},children:c(ae.Times,{})})]}),c(k,w(g({backgroundColor:"layer.1",flexSizing:0,overflow:"auto"},W),{children:f.is.function(a)?c(a,{}):a}))]}))})},Custom:t=>{let V=t,{sheetID:e,sheetGroups:l,bodyScrolls:p,event:C,parent:a,nextToCursor:i,gravityPoint:r=22,content:s,closeAtAroundClick:n,closeAtEscapeKeyDown:I,closeAtPageTransit:y,closeAtParentBlur:R,closeAtSwipeDown:D,hold_state:N,openAfter:F,closeAfter:q,overwrap:ee,isOpen:te,resize:M,backgroundEffect:W}=V,x=G(V,["sheetID","sheetGroups","bodyScrolls","event","parent","nextToCursor","gravityPoint","content","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","openAfter","closeAfter","overwrap","isOpen","resize","backgroundEffect"]),[v]=U(J()),_=f.is.element(a)||f.is.jmini(a)?f(a):j(a),H='[data-sheet-id="'+v+'"]',Q='[data-sheet-content="'+v+'"]';r=r;let b=r%5||5,B=Math.ceil(r/5);const z={Init:()=>{if(i&&C){let u=f.getScreenSize(),ne=f.getCursor(C);return{top:ne.y-u.pageYOffset,left:ne.x-u.pageXOffset}}let S={};if(!_||!_[0])return S;let{top:d,right:h,bottom:O,left:o,height:P,width:L}=_.position();return[1,2].includes(b)?S.left=o:b==3?S.left=o+L/2:[4,5].includes(b)&&(S.left=h),r<=10?S.top=d:r<=15?S.top=d+P/2:r<=25&&(S.top=O),S},Adjust:()=>{let S=j(H).position(),d=j(Q).position(),h=_.position(),O=f.getScreenSize(),o={};for(let u in d)o[u]=d[u];if(f.scope(()=>{if(t.nextToCursor)return;let u=0;B==1?u=h.top-o.bottom:B==2?u=h.top-o.top:B==3?u=h.top-o.top+(h.height-o.height)/2:B==4?u=h.bottom-o.bottom:B==5&&(u=h.bottom-o.top),o.top+=u,o.bottom+=u}),f.scope(()=>{if(t.nextToCursor)return;let u=0;b==1?u=h.left-o.right:b==2?u=h.left-o.left:b==3?u=h.left-o.left+(h.width-o.width)/2:b==4?u=h.right-o.right:b==5&&(u=h.right-o.left),o.left+=u,o.right+=u}),o.top<0){let u=-o.top;o.top+=u,o.bottom+=u}if(o.bottom>O.height){let u=o.bottom-O.height;o.top-=u,o.bottom-=u}if(o.left<0){let u=-o.left;o.left+=u,o.right+=u}if(o.right>O.width){let u=o.right-O.width;o.left-=u,o.right-=u}let P=o.top-d.top,L=o.left-d.left;f(H).css({top:S.top+P+"px",left:S.left+L+"px"})}};let[Z]=U(z.Init());return X(()=>{j(H).await(10).addClass(m("Open")).await(200).callback(()=>{(M==null||M)&&z.Adjust()}),A.update({["customSheet-"+t.sheetID]:{reposition:()=>{z.Adjust()}}})},[]),_[0]?c(k,{className:[m("BB"),m("CustomSheet")].join(" "),"data-sheet-id":v,transition:"long",position:"absolute",width:0,height:0,opacity:"trans",flexCenter:!0,freeCSS:Z,children:c(ue,{position:"absolute",className:[m("GPT"),m("GPT_"+r),m("Col_"+b),m("Row_"+B)].join(" "),children:c(k,w(g({"data-sheet-content":v,flexSizing:"none",maxHeight:"viewHeight"},x),{freeCSS:g({maxWidth:"98vw"},x.freeCSS),children:f.is.function(s)?c(s,{}):s}))})}):null}},TapSensor:t=>c(k,{className:m("TapSensor"),children:c(se.Plain,{className:m("TapContent"),onClick:e=>{var l;(l=t.delegateAroundClick)!=null&&l&&E.close(t.sheetID)},freeCSS:{cursor:"default",pointerEvents:"all"}})})},E={Wrapper:()=>c(Y.Wrapper,{}),Element:t=>{let C=t,{isOpen:e,children:l}=C,p=G(C,["isOpen","children"]);return X(()=>{if(e){E.open(t.type,w(g({},p),{content:l}));return}p.sheetID&&E.close(p.sheetID)},[e]),null},image:(t,e)=>{let l=t.sheetID||J(),a=t,{type:p}=a,C=G(a,["type"]);E.open(p||"topCenter",w(g({size:"MAX",backgroundColor:"trans",height:"viewHeight"},C),{sheetID:l,freeCSS:{maxWidth:"96vw",transformOrigin:"top"},content:()=>{let[i]=U(f.flatArray(e)),[r,s]=U(0),n=[];return i.forEach((I,y)=>{n.push({value:y,label:c(ie,{src:f.flatArray(I)[0],width:"auto",height:1,borderRadius:"3.tone.tertiary",freeCSS:{maxWidth:12*6,maxHeight:12*3}})})}),$(oe,{gap:0,height:1,position:"relative",children:[$(re.Separate,{position:"absolute",top:0,left:0,right:0,padding:[1,2],freeCSS:{zIndex:2},children:[c(he.Radio,{icon:!1,value:r,override:"force",horizontalAlign:"center",onUpdateValidValue:I=>{s(I)},cellStyles:{border:!0,borderWidth:2,padding:"1/3",paddingRight:"1/3",boxShadow:"2.normal",gap:0},cellCheckedStyles:{borderColor:"theme"},options:n}),c(se.Sub.S,{color:"cloud",ssSphere:3,onClick:()=>{E.close(l)},children:c(ae.Times,{})})]}),c(ce.FadeIn,{flexCenter:!0,flexSizing:0,overflow:"auto",children:c(ie,{width:"auto",height:"auto",maxWidth:1,maxHeight:1,src:i[r]})},r)]})}}))},open:(t,e,l)=>{e.sheetID=(e.sheetID||"").replace(/\./g,"-"),e.type=t;let p=A.get("Sheet-"+K.get().sessionUID);p&&p.add(e,l)},resize:t=>{t.sheetID=(t.sheetID||"").replace(/\./g,"-");let e=A.get(t.sheetID);e&&e.resize&&e.resize(t.size)},customSheet:{reposition:t=>{let e=A.get("customSheet-"+t);e&&e.reposition&&e.reposition()}},close:function(t,e,l){let p=T.getSessionStates();if(!p)return;let{val_sheets:C}=p;t=t==null?void 0:t.replace(/\./g,"-");let a=C.find(r=>r.sheetID==t);if(!a||e=="Escape"&&!a.closeAtEscapeKeyDown)return;let i=A.get(a.sheetID);i&&i.close&&i.close(l)},closeGroup:t=>{let e=T.getSessionStates();if(!e)return;let{val_sheets:l}=e;t=(t||"").replace(/\./g,"-");for(let p of l)p.sheetGroups&&p.sheetGroups==t&&E.close(p.sheetID)},closeAll:t=>{let e=T.getSessionStates();if(!e)return;let{val_sheets:l}=e;for(let p of l)t&&!p.closeAtPageTransit||E.close(p.sheetID,"pageTransit",!0)},Body:t=>c(k,g({className:m("BaseBody"),backgroundColor:"layer.1",borderRadius:"1.tone.primary",position:"relative",boxShadow:"3.remark",transition:"long"},t))};export{E as Sheet,E as default};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "amotify",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.170",
|
|
4
4
|
"description": "UI Component for React,NextJS,esbuild",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"start": "run-p clean build:*",
|
|
@@ -90,7 +90,7 @@
|
|
|
90
90
|
"@fortawesome/free-solid-svg-icons": "^6.6.0",
|
|
91
91
|
"@fortawesome/react-fontawesome": "^0.2.0",
|
|
92
92
|
"dotenv": "^16.4.6",
|
|
93
|
-
"jmini": "^0.0.
|
|
93
|
+
"jmini": "^0.0.75",
|
|
94
94
|
"react": "^18.3.1"
|
|
95
95
|
},
|
|
96
96
|
"devDependencies": {
|