amotify 0.2.172 → 0.2.174

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.
Files changed (53) hide show
  1. package/demo/esbuild/app.tsx +84 -23
  2. package/demo/esbuild/public/index.js +79 -173
  3. package/demo/esbuild/server.ts +2 -2
  4. package/demo/next/README.md +38 -0
  5. package/demo/next/appspec.yml +11 -0
  6. package/demo/next/auto_builder.sh +10 -0
  7. package/demo/next/next-env.d.ts +5 -0
  8. package/demo/next/next.config.ts +12 -0
  9. package/demo/next/nodemon.json +7 -0
  10. package/demo/next/package.json +38 -0
  11. package/demo/next/src/app/(hooks)/useClientEffect.tsx +80 -0
  12. package/demo/next/src/app/(router)/page.tsx +143 -0
  13. package/demo/next/src/app/apis/test/route.ts +9 -0
  14. package/demo/next/src/app/layout.tsx +26 -0
  15. package/demo/next/src/server/app.ts +42 -0
  16. package/demo/next/src/server/fin.ts +11 -0
  17. package/demo/next/src/server/index.ts +4 -0
  18. package/demo/next/tsconfig.server.json +30 -0
  19. package/dist/@declares/property.d.ts +1 -1
  20. package/dist/@utils/GenerateClassName.js +1 -1
  21. package/dist/atoms/FAI.d.ts +1 -1
  22. package/dist/atoms/FAI.js +1 -1
  23. package/dist/fn/Button.js +1 -1
  24. package/dist/fn/Cropper.js +1 -1
  25. package/dist/fn/Effect/Fade.js +1 -1
  26. package/dist/fn/Input/Autocomplete.js +1 -1
  27. package/dist/fn/Input/CollectForm.js +1 -1
  28. package/dist/fn/Input/Color.js +1 -1
  29. package/dist/fn/Input/Contenteditable.js +1 -1
  30. package/dist/fn/Input/DigitCharacters.js +1 -1
  31. package/dist/fn/Input/Filer.js +1 -1
  32. package/dist/fn/Input/Hidden.d.ts +1 -1
  33. package/dist/fn/Input/Hidden.js +1 -1
  34. package/dist/fn/Input/Label.d.ts +1 -1
  35. package/dist/fn/Input/Label.js +1 -1
  36. package/dist/fn/Input/List.js +1 -1
  37. package/dist/fn/Input/Segmented.js +1 -1
  38. package/dist/fn/Input/Select.js +1 -1
  39. package/dist/fn/Input/Slider.js +1 -1
  40. package/dist/fn/Input/Switch.js +1 -1
  41. package/dist/fn/Input/TextField.d.ts +2 -0
  42. package/dist/fn/Input/TextField.js +3 -3
  43. package/dist/fn/Input/Time/Picker.js +1 -1
  44. package/dist/fn/Input/Time/index.js +1 -1
  45. package/dist/fn/Input/core.d.ts +2 -2
  46. package/dist/fn/Input/core.js +1 -1
  47. package/dist/fn/Input/index.d.ts +3 -3
  48. package/dist/fn/Loader/mini.js +1 -1
  49. package/dist/fn/Sheet.js +1 -1
  50. package/dist/fn/Snackbar.js +1 -1
  51. package/dist/fn/Table/Data.d.ts +1 -1
  52. package/dist/fn/Table/Data.js +1 -1
  53. package/package.json +9 -8
@@ -1,3 +1,3 @@
1
- import{b as i,c as s,d as G,e as ae}from"../../chunk-C5N2D3ZX.js";import{Fragment as ne,jsx as n,jsxs as W}from"react/jsx-runtime";import b,{UUID as L,useStore as ve}from"jmini";import{useState as Z,useEffect as X}from"react";import{$$fromRoot as Ce,ExtractStyles as Te}from"../../@utils";import{Box as F,FAI as Re}from"../../atoms";import{Literal as j}from"../../mols";import{Tips as le,Button as we}from"..";import{faEye as ye}from"@fortawesome/free-solid-svg-icons/faEye";import{OptionalInputWrapper as Ve,BoxWrapper as De,CoreEffects as U,DefaultBoxishStyles as ke}from"./core";import{InputLabel as Ne}from"./Label";import{LeftIcon as Fe,RightIcon as ie}from".";const _e={katakana:{reg:/^[ァ-ヶー  ヲ-゚  ]*$/g,exist:!0,reason:"\u30AB\u30BF\u30AB\u30CA\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},"hankaku.katakana":{reg:/^[ヲ-゚  ]*$/g,exist:!0,reason:"\u534A\u89D2\u30AB\u30BF\u30AB\u30CA\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},number:{reg:/^-?[0-9\.]{0,}[0-9]{1,}$/g,exist:!0,reason:"\u534A\u89D2\u6570\u5B57\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},digitNumber:{reg:/^-?[0-9\,\.]{0,}[0-9]{1,}$/g,exist:!0,reason:"\u534A\u89D2\u6570\u5B57\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},fileName:{reg:/[¥\/:*\?\"\'\|\.\s\n\r\<\>]/g,exist:!1,reason:"\u7A7A\u767D\u307E\u305F\u306F\u4E00\u90E8\u306E\u7279\u6B8A\u6587\u5B57\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093"},creditCard:{reg:/^\d{14,16}$/g,exist:!0,reason:"14~16\u6841\u306E\u6570\u5B57\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},email:{reg:/^[A-Za-z0-9]{1}[A-Za-z0-9_.-]*@{1}[A-Za-z0-9_.-]+\.[A-Za-z0-9]+$/,exist:!0,reason:W(ne,{children:[n(F,{children:"\u25CB\u25CB\u25CB\u25CB@\u25CB\u25CB\u25CB\u25CB.\u25CB\u25CB\u25CB\u306E\u5F62\u5F0F\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"}),n(F,{children:"\u6700\u5F8C\u306E\u6587\u5B57\u306B.(\u30C9\u30C3\u30C8)\u3092\u5165\u308C\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093"})]})},password:{reg:/^(?=[^A-Z]*[A-Z])(?=[^a-z]*[a-z])(?=[^0-9]*[0-9]).{8,}$/,exist:!0,reason:"8\u6587\u5B57\u4EE5\u4E0A\u3001\u534A\u89D2\u82F1\u6570\u5927\u5C0F\u6587\u5B57\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},tel:{reg:/.*$/g,exist:!0,reason:W(ne,{children:[n(F,{children:"0\u304B\u3089\u59CB\u307E\u308B\u756A\u53F7\u306E\u307F\u5165\u529B\u53EF\u80FD\u3067\u3059"}),n(F,{children:"9~12\u6841\u306E\u6570\u5B57\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"}),n(F,{children:"\u6570\u5B57\u306E\u307F\u5165\u529B\u53EF\u80FD\u3067\u3059"})]})},url:{reg:/^https?:\/\/[^\n\s]+(\.|\:)[^\n\s\.\:]+$/,exist:!0,reason:"URL\u5F62\u5F0F : http(s)://\u25EF\u25EF\u25EF\u25EF"},postal:{reg:/^\d{7}$/g,exist:!0,reason:"7\u6841\u306E\u6570\u5B57\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"}},R={setSelection:e=>{let{id:l,restrict:o,val_status:u}=e,a=Ce("#"+l)[0];if(a&&u.prevValue&&u.formatValue){let{formatValue:t,prevValue:p,caretFrom:d,caretTo:r}=u;if(o=="creditCard")t.length>=p.length&&d%5==0&&(d++,r++),a.setSelectionRange(d,r);else if(o=="postal")t.length==5&&p.length==3&&(d++,r++),a.setSelectionRange(d,r);else if(o=="digitNumber"){let f=t.length-p.length;f==2&&(d++,r++),f==-2&&(d--,r--),a.setSelectionRange(d,r)}}},Validation:{System:e=>{let{value:l,states:o}=e,{restrict:u="text",defaultValidation:a,maxLength:t,multiline:p,required:d}=o,r=[];if(p||(t=t||255),b.is.exist(t)&&l.length>=Number(t)&&r.push({type:"invalid",label:t+"\u5B57\u4EE5\u5185\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"}),l){let f=R.Validation.Text(l,u,a);f.ok||r.push({type:"invalid",label:f.body})}else d&&r.push({type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"});return{ok:!r.filter(({type:f})=>f=="invalid").length,notice:r}},Text:(e,l,o)=>{let u={ok:!0,body:""};return(()=>{let a=o||_e[l];if(!a)return;let t=a.reason;if(a){let p=!!(+!!e.match(a.reg)^+!a.exist);u={ok:p,body:p?"":t}}})(),u},DataLeveling:e=>{let{restrict:l,allowDecimals:o,allowZeroStart:u,value:a=""}=e,t=String(a);["tel","number","digitNumber","test","postal","creditCard"].includes(l)&&(t=t.zen2hanNumber()),l=="katakana",l=="hankaku.katakana",["postal","creditCard"].includes(l)&&(t=t.removeLetters()),b.scope(()=>{if(!["number","digitNumber"].includes(l))return;t=t.replace(/(\.\d+)\..*/g,"$1").replace(/\.+/g,".").replace(/[^0-9.-]/g,"");let d=Number(t)<0||t[0]=="-";t=t.replace(/[^0-9.]/g,""),d&&(t="-"+t),o||(t=t.replace(/\.\d?/g,"")),b.scope(()=>{l=="number"&&(u||(t=t.replace(/^0(\d+)/g,"$1").replace(/^-0(\d+)/g,"-$1")))}),b.scope(()=>{let r=t.slice(-1);t&&r!="."&&r!="-"&&(b.is.exist(e.min)&&(t=String(Math.max(Number(t),Number(e.min)))),b.is.exist(e.max)&&(t=String(Math.min(Number(t),Number(e.max)))))}),b.scope(()=>{if(!t||t=="-"||l!="digitNumber")return;let r=Number(t)<0,f=String(Math.abs(Math.round(Number(t)))),C=t.split("."),y=[];for(let g=f.length-1;g>=0;g--){y.unshift(f[g]);let m=f.length-1-g+1;g!=0&&m%3==0&&y.unshift(",")}t=y.join(""),r&&(t="-"+t),(C==null?void 0:C.length)==2&&(t+="."+C[1]||"")})});let p=t;return l=="digitNumber"||(l=="postal"?t.length>=4&&(p=t.clip(0,3)+"-"+t.clip(3)):l=="creditCard"&&(p=t.replace(/.{4}(?=.)/g,"$& "))),t=t.replace(/,/g,""),{formatValue:p,dataValue:t}}},Shallow:e=>{let{rootStates:l,val_status:o}=e,u=o.dataValue||"";X(()=>{b.scope(()=>ae(void 0,null,function*(){if(!l.multiline)return;let f=b('[data-input-origin="'+o.componentID+'"]'),C=b('[data-input-shallow="'+o.componentID+'"]'),y=b('[data-input-min-height-value-shallow="'+o.componentID+'"]'),g=b('[data-input-max-height-value-shallow="'+o.componentID+'"]');if(!f[0]||!C[0]||!y[0]||!g[0])return;let m=C.position(),_=y.position(),M=g.position(),I=0;l.autoHeight&&(I=m.height),I=Math.max(I,_.height),I=Math.min(I,M.height),f[0].style.height=I+"px"}))},[u]);let a=u||"";(!!u.match(/\n$/)||!u)&&(a+="T");let p="",d="";if(l.multiline){let f=l.minRows||1,C=l.maxRows||100;p=`
2
- T`.repeat(f-1),d=`
3
- T`.repeat(C-1)}let r=Te(l);return W(F,{position:"absolute",top:0,left:0,right:0,height:0,overflow:"hidden",opacity:"trans",freeCSS:{zIndex:3,pointerEvents:"none"},children:[n(j.Description,s(i({className:l.className},r),{position:"absolute",width:1,freeCSS:s(i({},r.freeCSS),{color:"orange"}),"data-input-shallow":o.componentID,children:n(F,{"data-input-value-shallow":o.componentID,children:a})})),n(j.Description,s(i({className:l.className},r),{position:"absolute",left:0,freeCSS:s(i({},r.freeCSS),{backgroundColor:"transparent",color:"blue"}),"data-input-min-height-value-shallow":o.componentID,children:p})),n(j.Description,s(i({className:l.className},r),{position:"absolute",right:0,freeCSS:s(i({},r.freeCSS),{backgroundColor:"transparent",color:"red"}),"data-input-max-height-value-shallow":o.componentID,children:d}))]})},InputBox:e=>{let{rootStates:l,val_validate:o,set_validate:u,val_status:a,set_status:t,val_focus:p,set_focus:d,val_isComposing:r,set_isComposing:f}=e;if(l.multiline)return null;let te=l,{componentID:C,tone:y,required:g,restrict:m="text",form:_,autoComplete:M="off",autoCapitalize:I="off",minRows:oe,maxRows:re,multiline:se,autoHeight:ue,enableFormSubmit:O,clearButton:me=!1,allowDecimals:$,allowZeroStart:H,checkValidationAtFirst:K,onChange:q,onKeyDown:J,onValidate:ce,onUpdateValue:pe,onUpdateValidValue:de,value:fe="",leftIndicator:ge,rightIndicator:xe,leftIcon:he,rightIcon:be,maxLength:S,min:P,max:B,label:V,isLabelActive:Q,defaultValidation:ee,wrapStyles:Le}=te,c=G(te,["componentID","tone","required","restrict","form","autoComplete","autoCapitalize","minRows","maxRows","multiline","autoHeight","enableFormSubmit","clearButton","allowDecimals","allowZeroStart","checkValidationAtFirst","onChange","onKeyDown","onValidate","onUpdateValue","onUpdateValidValue","value","leftIndicator","rightIndicator","leftIcon","rightIcon","maxLength","min","max","label","isLabelActive","defaultValidation","wrapStyles"]),Ie=m=="password"||m=="concealed"?"password":"text",Se=["number","digitNumber","creditCard"].includes(m)?"numeric":m=="email"?"email":"text";return n(F,s(i({htmlTag:"input",type:Ie,inputMode:Se,"data-disabled":l.disabled,"data-show-validation":U.isShowValidation(o,a,!!K),"data-component-id":a.componentID,"data-input-origin":a.componentID,value:a.formatValue,autoComplete:M,autoCapitalize:I,onKeyDown:x=>{let{key:T,target:E}=x;{let D=E,{selectionStart:k,selectionEnd:v}=D,A=Number(k),z=Number(v),N=a.formatValue[Number(A)],Y=a.formatValue[Number(A)-1];T=="Delete"&&(m=="creditCard"&&N==" "||m=="postal"&&N=="-"||m=="digitNumber"&&N==",")&&(D.setSelectionRange(A+1,z+1),x.preventDefault()),T=="Backspace"&&(m=="creditCard"&&Y==" "||m=="postal"&&Y=="-"||m=="digitNumber"&&Y==",")&&(D.setSelectionRange(A-1,z-1),x.preventDefault()),T=="Enter"||T=="Tab"}b.scope(()=>{["number","digitNumber","creditCard"].includes(m)&&T=="Clear"&&t(D=>s(i({},D),{dataValue:"",formatValue:"",eventType:"update",eventID:L()}))}),b.scope(()=>{var z;if(!["number","digitNumber"].includes(m)||!["ArrowUp","ArrowDown"].includes(T))return;let D=+(T=="ArrowUp")*2-1,k=a.dataValue.slice(-1),v=a.dataValue,A=((z=a.dataValue.split(".")[1])==null?void 0:z.length)||0;if(!k)v+="0";else if(k=="-")v+="0";else if(k==".")v+="0";else if(A){let N=Number(k)+D;v=v.slice(0,-1),N<0?v+="9":N>9?v+="0":v+=String(N)}else v=String(Number(a.dataValue.replace(/,/g,""))+D);o.ok&&u({ok:!1,notice:[]}),t(N=>s(i(i({},N),R.Validation.DataLeveling({allowDecimals:$,allowZeroStart:H,min:P,max:B,restrict:m,value:v})),{eventType:"update",eventID:L()})),x.preventDefault()}),J&&J(x),O&&U.SubmitForm(x,_)},onChange:x=>{let{value:T,selectionStart:E,selectionEnd:D}=x.target,k=R.Validation.DataLeveling({allowDecimals:$,allowZeroStart:H,min:P,max:B,restrict:m,value:T});r&&(k.formatValue=T),k.formatValue!=a.formatValue&&(o.ok&&u({ok:!1,notice:[]}),t(v=>s(i(i({},v),k),{prevValue:a.formatValue,eventType:"update",eventID:L(),caretFrom:Number(E),caretTo:Number(D)})),q&&q(x))},width:1},c),{onFocus:x=>{c!=null&&c.onFocus&&(c==null||c.onFocus(x)),d(!0)},onBlur:x=>{c!=null&&c.onBlur&&(c==null||c.onBlur(x)),d(!1)},onCompositionStart:x=>{c!=null&&c.onCompositionStart&&(c==null||c.onCompositionStart(x)),f(!0)},onCompositionEnd:x=>{if(c!=null&&c.onCompositionEnd&&(c==null||c.onCompositionEnd(x)),m=="text")return;let T=R.Validation.DataLeveling({allowDecimals:$,allowZeroStart:H,min:P,max:B,restrict:m,value:a.formatValue});t(E=>s(i(i({},E),T),{prevValue:E.formatValue,eventType:"update",eventID:L(),caretFrom:Number(E.formatValue.length+1),caretTo:Number(E.formatValue.length+1)})),f(!1)}}))},TextAreaBox:e=>{let{rootStates:l,val_focus:o,set_focus:u,val_validate:a,set_validate:t,val_status:p,set_status:d,isShallow:r}=e,B=l,{componentID:f,tone:C,required:y,form:g,label:m,isLabelActive:_,minRows:M,maxRows:I,multiline:oe,autoHeight:re,allowDecimals:se,allowZeroStart:ue,enableFormSubmit:O,maxLength:me,checkValidationAtFirst:$,onChange:H,onKeyDown:K,onValidate:q,onUpdateValue:J,onUpdateValidValue:ce,value:pe="",leftIndicator:de,rightIndicator:fe,leftIcon:ge,rightIcon:xe,defaultValidation:he,wrapStyles:be}=B,S=G(B,["componentID","tone","required","form","label","isLabelActive","minRows","maxRows","multiline","autoHeight","allowDecimals","allowZeroStart","enableFormSubmit","maxLength","checkValidationAtFirst","onChange","onKeyDown","onValidate","onUpdateValue","onUpdateValidValue","value","leftIndicator","rightIndicator","leftIcon","rightIcon","defaultValidation","wrapStyles"]);return!l.multiline?null:n(F,s(i({htmlTag:"textarea","data-show-validation":U.isShowValidation(a,p,!!$),"data-input-origin":p.componentID,"data-component-id":p.componentID,value:p.dataValue,width:1},S),{onFocus:V=>{S!=null&&S.onFocus&&(S==null||S.onFocus(V)),u(!0)},onBlur:V=>{S!=null&&S.onBlur&&(S==null||S.onBlur(V)),u(!1)},onKeyDown:V=>{K&&K(V),O&&U.SubmitForm(V,g)},onChange:V=>{let{value:Q}=V.target;a.ok&&t({ok:!1,notice:[]}),d(ee=>s(i({},ee),{dataValue:Q,eventType:"update",eventID:L()})),H&&H(V)}}))}},Ee=e=>{let{componentID:l,restrict:o="text",value:u="",min:a,max:t,allowDecimals:p,allowZeroStart:d}=e,[r,f]=Z(!1),[C,y]=Z(!1),[g,m]=Z(s(i({componentID:l},R.Validation.DataLeveling({allowDecimals:p,allowZeroStart:d,min:a,max:t,restrict:o,value:u})),{prevValue:"",eventType:"init",eventID:L(),caretFrom:null,caretTo:null})),[_,M]=Z({ok:!1,notice:[]}),I={rootStates:e,val_focus:r,set_focus:f,val_isComposing:C,set_isComposing:y,val_status:g,set_status:m,val_validate:_,set_validate:M};return U.CommonEffects({type:"textfield",states:e,val_status:g,set_status:m,val_validate:_,set_validate:M,SystemValidation:R.Validation.System,ExtraOverrideStates:i({},R.Validation.DataLeveling({allowDecimals:p,allowZeroStart:d,min:a,max:t,restrict:o,value:u}))}),X(()=>{R.setSelection({id:e.id,restrict:o,val_status:g})},[g]),W(De,{val_status:g,set_status:m,val_validate:_,states:I.rootStates,children:[n(Ne,{componentID:e.componentID,fontSize:e.fontSize,required:e.required,label:e.label,isActive:e.isLabelActive||r||!!g.dataValue}),n(R.Shallow,i({},I)),n(R.InputBox,i({},I)),n(R.TextAreaBox,i({},I))]})},w=e=>(e=i({autoHeight:!0,restrict:"text",fontSize:"inherit"},e),e.multiline?(e.minRows=e.minRows||5,e.maxRows=e.maxRows||20):(e.minRows=1,e.maxRows=1),n(Ve,{componentID:e.componentID,children:Ee,states:ke(e)})),h=w;h.Validate=R.Validation.Text,h.Katakana=e=>n(w,s(i({},e),{restrict:"katakana",multiline:!1,autoHeight:!1})),h.HankakuKatakana=e=>n(w,s(i({},e),{restrict:"hankaku.katakana",multiline:!1,autoHeight:!1})),h.CreditCard=e=>n(w,s(i({},e),{restrict:"creditCard",multiline:!1,autoHeight:!1})),h.Tel=e=>n(w,s(i({},e),{restrict:"tel",multiline:!1,autoHeight:!1})),h.Number=e=>n(w,s(i({},e),{restrict:"number",multiline:!1,autoHeight:!1})),h.DigitNumber=e=>n(w,s(i({},e),{restrict:"digitNumber",multiline:!1,autoHeight:!1})),h.Email=e=>n(w,s(i({},e),{restrict:"email",multiline:!1,autoHeight:!1})),h.Url=e=>n(w,s(i({},e),{restrict:"url",multiline:!1,autoHeight:!1})),h.Postal=e=>{let[l]=Z(L());return X(()=>()=>{ve.delete(l)},[]),n(w,s(i({label:"\u90F5\u4FBF\u756A\u53F7"},e),{restrict:"postal",multiline:!1,autoHeight:!1,leftIcon:n(Fe,{ssSphere:2,fontColor:"4.thin",children:"\u3012"})}))},h.Password=e=>{let l=e.componentID||L();return n(w,s(i({label:"\u30D1\u30B9\u30EF\u30FC\u30C9",rightIcon:n(ie,{ssSphere:2,padding:0,freeCSS:{pointerEvents:"all"},children:n(we.Sub,{ssSphere:2,borderRadius:"3.tone.tertiary",fontColor:"theme",flexCenter:!0,height:1,ssEffectsOnActive:["expand"],onMouseOver:o=>{le.open(o.currentTarget,"\u30C6\u30AD\u30B9\u30C8\u3092\u8868\u793A",24)},onMouseLeave:le.abort,tabIndex:-1,onClick:o=>{b(o.target).parent().parent().find("input").callback(u=>{let a=u[0];a&&(a.type=a.type==="password"?"text":"password")})},children:n(Re,{icon:ye})})}),restrict:"password"},e),{multiline:!1,autoHeight:!1}))},h.Concealed=e=>n(h.Password,s(i({label:"\u79D8\u5BC6\u9375"},e),{restrict:"concealed"})),h.Money={JPY:e=>n(h.DigitNumber,s(i({rightIcon:n(ie,{ssSphere:2,fontColor:"4.thin",children:"\u5186"})},e),{multiline:!1,autoHeight:!1}))};export{h as TextField,Ee as TextInput,h as default};
1
+ import{b as l,c as p,d as j,e as ne}from"../../chunk-C5N2D3ZX.js";import{Fragment as ue,jsx as n,jsxs as W}from"react/jsx-runtime";import x,{UUID as B,useStore as oe}from"jmini";import{useState as U,useEffect as Q}from"react";import{$$fromRoot as Ie,ExtractStyles as Te}from"../../@utils";import{Box as D,FAI as ve}from"../../atoms";import{Literal as ee}from"../../mols";import{Tips as re,Button as Re}from"..";import{faEye as ye}from"@fortawesome/free-solid-svg-icons/faEye";import{OptionalInputWrapper as Ce,BoxWrapper as we,CoreEffects as P,DefaultBoxishStyles as Ve}from"./core";import{InputLabel as ke}from"./Label";import{LeftIcon as Ne,RightIcon as se}from".";const Fe={katakana:{reg:/^[ァ-ヶー  ヲ-゚  ]*$/g,exist:!0,reason:"\u30AB\u30BF\u30AB\u30CA\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},"hankaku.katakana":{reg:/^[ヲ-゚  ]*$/g,exist:!0,reason:"\u534A\u89D2\u30AB\u30BF\u30AB\u30CA\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},number:{reg:/^-?[0-9\.]{0,}[0-9]{1,}$/g,exist:!0,reason:"\u534A\u89D2\u6570\u5B57\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},digitNumber:{reg:/^-?[0-9\,\.]{0,}[0-9]{1,}$/g,exist:!0,reason:"\u534A\u89D2\u6570\u5B57\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},fileName:{reg:/[¥\/:*\?\"\'\|\.\s\n\r\<\>]/g,exist:!1,reason:"\u7A7A\u767D\u307E\u305F\u306F\u4E00\u90E8\u306E\u7279\u6B8A\u6587\u5B57\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093"},creditCard:{reg:/^\d{14,16}$/g,exist:!0,reason:"14~16\u6841\u306E\u6570\u5B57\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},email:{reg:/^[A-Za-z0-9]{1}[A-Za-z0-9_.-]*@{1}[A-Za-z0-9_.-]+\.[A-Za-z0-9]+$/,exist:!0,reason:W(ue,{children:[n(D,{children:"\u25CB\u25CB\u25CB\u25CB@\u25CB\u25CB\u25CB\u25CB.\u25CB\u25CB\u25CB\u306E\u5F62\u5F0F\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"}),n(D,{children:"\u6700\u5F8C\u306E\u6587\u5B57\u306B.(\u30C9\u30C3\u30C8)\u3092\u5165\u308C\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093"})]})},password:{reg:/^(?=[^A-Z]*[A-Z])(?=[^a-z]*[a-z])(?=[^0-9]*[0-9]).{8,}$/,exist:!0,reason:"8\u6587\u5B57\u4EE5\u4E0A\u3001\u534A\u89D2\u82F1\u6570\u5927\u5C0F\u6587\u5B57\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},tel:{reg:/.*$/g,exist:!0,reason:W(ue,{children:[n(D,{children:"0\u304B\u3089\u59CB\u307E\u308B\u756A\u53F7\u306E\u307F\u5165\u529B\u53EF\u80FD\u3067\u3059"}),n(D,{children:"9~12\u6841\u306E\u6570\u5B57\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"}),n(D,{children:"\u6570\u5B57\u306E\u307F\u5165\u529B\u53EF\u80FD\u3067\u3059"})]})},url:{reg:/^https?:\/\/[^\n\s]+(\.|\:)[^\n\s\.\:]+$/,exist:!0,reason:"URL\u5F62\u5F0F : http(s)://\u25EF\u25EF\u25EF\u25EF"},postal:{reg:/^\d{7}$/g,exist:!0,reason:"7\u6841\u306E\u6570\u5B57\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"}},C={setSelection:t=>{let{id:a,restrict:o,val_status:s}=t,i=Ie("#"+a)[0];if(i&&s.prevValue&&s.formatValue){let{formatValue:e,prevValue:u,caretFrom:d,caretTo:r}=s;if(o=="creditCard")e.length>=u.length&&d%5==0&&(d++,r++),i.setSelectionRange(d,r);else if(o=="postal")e.length==5&&u.length==3&&(d++,r++),i.setSelectionRange(d,r);else if(o=="digitNumber"){let m=e.length-u.length;m==2&&(d++,r++),m==-2&&(d--,r--),i.setSelectionRange(d,r)}}},Validation:{System:t=>{let{value:a,states:o}=t,{restrict:s="text",defaultValidation:i,maxLength:e,multiline:u,required:d}=o,r=[];if(u||(e=e||255),x.is.exist(e)&&a.length>=Number(e)&&r.push({type:"invalid",label:e+"\u5B57\u4EE5\u5185\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"}),a){let m=C.Validation.Text(a,s,i);m.ok||r.push({type:"invalid",label:m.body})}else d&&r.push({type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"});return{ok:!r.filter(({type:m})=>m=="invalid").length,notice:r}},Text:(t,a,o)=>{let s={ok:!0,body:""};return(()=>{let i=o||Fe[a];if(!i)return;let e=i.reason;if(i){let u=!!(+!!t.match(i.reg)^+!i.exist);s={ok:u,body:u?"":e}}})(),s},DataLeveling:t=>{let{restrict:a,allowDecimals:o,allowZeroStart:s,value:i=""}=t,e=String(i);["tel","number","digitNumber","test","postal","creditCard"].includes(a)&&(e=e.zen2hanNumber()),a=="katakana",a=="hankaku.katakana",["postal","creditCard"].includes(a)&&(e=e.removeLetters()),x.scope(()=>{if(!["number","digitNumber"].includes(a))return;e=e.replace(/(\.\d+)\..*/g,"$1").replace(/\.+/g,".").replace(/[^0-9.-]/g,"");let d=Number(e)<0||e[0]=="-";e=e.replace(/[^0-9.]/g,""),d&&(e="-"+e),o||(e=e.replace(/\.\d?/g,"")),x.scope(()=>{a=="number"&&(s||(e=e.replace(/^0(\d+)/g,"$1").replace(/^-0(\d+)/g,"-$1")))}),x.scope(()=>{let r=e.slice(-1);e&&r!="."&&r!="-"&&(x.is.exist(t.min)&&(e=String(Math.max(Number(e),Number(t.min)))),x.is.exist(t.max)&&(e=String(Math.min(Number(e),Number(t.max)))))}),x.scope(()=>{if(!e||e=="-"||a!="digitNumber")return;let r=Number(e)<0,m=String(Math.abs(Math.round(Number(e)))),S=e.split("."),R=[];for(let g=m.length-1;g>=0;g--){R.unshift(m[g]);let F=m.length-1-g+1;g!=0&&F%3==0&&R.unshift(",")}e=R.join(""),r&&(e="-"+e),(S==null?void 0:S.length)==2&&(e+="."+S[1]||"")})});let u=e;return a=="digitNumber"||(a=="postal"?e.length>=4&&(u=e.clip(0,3)+"-"+e.clip(3)):a=="creditCard"&&(u=e.replace(/.{4}(?=.)/g,"$& "))),e=e.replace(/,/g,""),{formatValue:u,dataValue:e}}},Shallow:t=>{let{rootStates:a,val_status:o}=t,s=o.dataValue||"";Q(()=>{x.scope(()=>ne(void 0,null,function*(){if(!a.multiline)return;let m=x('[data-input-origin="'+o.componentId+'"]'),S=x('[data-input-shallow="'+o.componentId+'"]'),R=x('[data-input-min-height-value-shallow="'+o.componentId+'"]'),g=x('[data-input-max-height-value-shallow="'+o.componentId+'"]');if(!m[0]||!S[0]||!R[0]||!g[0])return;let F=S.position(),E=R.position(),f=g.position(),w=0;a.autoHeight&&(w=F.height),w=Math.max(w,E.height),w=Math.min(w,f.height),m[0].style.height=w+"px"}))},[s]);let i=s||"";(!!s.match(/\n$/)||!s)&&(i+="T");let u="",d="";if(a.multiline){let m=a.minRows||1,S=a.maxRows||100;u=`
2
+ T`.repeat(m-1),d=`
3
+ T`.repeat(S-1)}let r=Te(a);return W(D,{position:"absolute",top:0,left:0,right:0,height:0,overflow:"hidden",opacity:"trans",freeCSS:{zIndex:3,pointerEvents:"none"},children:[n(ee.Description,p(l({className:a.className},r),{position:"absolute",width:1,freeCSS:p(l({},r.freeCSS),{color:"orange"}),"data-input-shallow":o.componentId,children:n(D,{"data-input-value-shallow":o.componentId,children:i})})),n(ee.Description,p(l({className:a.className},r),{position:"absolute",left:0,freeCSS:p(l({},r.freeCSS),{backgroundColor:"transparent",color:"blue"}),"data-input-min-height-value-shallow":o.componentId,children:u})),n(ee.Description,p(l({className:a.className},r),{position:"absolute",right:0,freeCSS:p(l({},r.freeCSS),{backgroundColor:"transparent",color:"red"}),"data-input-max-height-value-shallow":o.componentId,children:d}))]})},InputBox:t=>{let{rootStates:a,val_validate:o,set_validate:s,val_status:i,set_status:e,val_inputType:u,set_inputType:d,val_focus:r,set_focus:m,val_isComposing:S,set_isComposing:R}=t;if(a.multiline)return null;let le=a,{componentId:g,tone:F,required:E,restrict:f="text",form:w,autoComplete:$="off",autoCapitalize:H="off",minRows:pe,maxRows:ce,multiline:te,autoHeight:me,enableFormSubmit:O,clearButton:q=!1,allowDecimals:M,allowZeroStart:K,checkValidationAtFirst:ae,onChange:J,onKeyDown:Y,onValidate:de,onUpdateValue:fe,onUpdateValidValue:ge,value:be="",leftIndicator:he,rightIndicator:xe,leftIcon:I,rightIcon:Se,maxLength:G,min:v,max:z,label:ie,isLabelActive:De,defaultValidation:Le,wrapStyles:Ee}=le,c=j(le,["componentId","tone","required","restrict","form","autoComplete","autoCapitalize","minRows","maxRows","multiline","autoHeight","enableFormSubmit","clearButton","allowDecimals","allowZeroStart","checkValidationAtFirst","onChange","onKeyDown","onValidate","onUpdateValue","onUpdateValidValue","value","leftIndicator","rightIndicator","leftIcon","rightIcon","maxLength","min","max","label","isLabelActive","defaultValidation","wrapStyles"]);return n(D,p(l({htmlTag:"input",type:u,inputMode:["number","digitNumber","creditCard"].includes(f)?"numeric":f=="email"?"email":"text","data-disabled":a.disabled,"data-show-validation":P.isShowValidation(o,i,!!ae),"data-component-id":i.componentId,"data-input-origin":i.componentId,value:i.formatValue,autoComplete:$,autoCapitalize:H,onKeyDown:b=>{let{key:y,target:L}=b;{let k=L,{selectionStart:N,selectionEnd:T}=k,A=Number(N),Z=Number(T),_=i.formatValue[Number(A)],X=i.formatValue[Number(A)-1];y=="Delete"&&(f=="creditCard"&&_==" "||f=="postal"&&_=="-"||f=="digitNumber"&&_==",")&&(k.setSelectionRange(A+1,Z+1),b.preventDefault()),y=="Backspace"&&(f=="creditCard"&&X==" "||f=="postal"&&X=="-"||f=="digitNumber"&&X==",")&&(k.setSelectionRange(A-1,Z-1),b.preventDefault()),y=="Enter"||y=="Tab"}x.scope(()=>{["number","digitNumber","creditCard"].includes(f)&&y=="Clear"&&e(k=>p(l({},k),{dataValue:"",formatValue:"",eventType:"update",eventID:B()}))}),x.scope(()=>{var Z;if(!["number","digitNumber"].includes(f)||!["ArrowUp","ArrowDown"].includes(y))return;let k=+(y=="ArrowUp")*2-1,N=i.dataValue.slice(-1),T=i.dataValue,A=((Z=i.dataValue.split(".")[1])==null?void 0:Z.length)||0;if(!N)T+="0";else if(N=="-")T+="0";else if(N==".")T+="0";else if(A){let _=Number(N)+k;T=T.slice(0,-1),_<0?T+="9":_>9?T+="0":T+=String(_)}else T=String(Number(i.dataValue.replace(/,/g,""))+k);o.ok&&s({ok:!1,notice:[]}),e(_=>p(l(l({},_),C.Validation.DataLeveling({allowDecimals:M,allowZeroStart:K,min:v,max:z,restrict:f,value:T})),{eventType:"update",eventID:B()})),b.preventDefault()}),Y&&Y(b),O&&P.SubmitForm(b,w)},onChange:b=>{let{value:y,selectionStart:L,selectionEnd:k}=b.target,N=C.Validation.DataLeveling({allowDecimals:M,allowZeroStart:K,min:v,max:z,restrict:f,value:y});S&&(N.formatValue=y),N.formatValue!=i.formatValue&&(o.ok&&s({ok:!1,notice:[]}),e(T=>p(l(l({},T),N),{prevValue:i.formatValue,eventType:"update",eventID:B(),caretFrom:Number(L),caretTo:Number(k)})),J&&J(b))},width:1},c),{onFocus:b=>{c!=null&&c.onFocus&&(c==null||c.onFocus(b)),m(!0)},onBlur:b=>{c!=null&&c.onBlur&&(c==null||c.onBlur(b)),m(!1)},onCompositionStart:b=>{c!=null&&c.onCompositionStart&&(c==null||c.onCompositionStart(b)),R(!0)},onCompositionEnd:b=>{if(c!=null&&c.onCompositionEnd&&(c==null||c.onCompositionEnd(b)),f=="text")return;let y=C.Validation.DataLeveling({allowDecimals:M,allowZeroStart:K,min:v,max:z,restrict:f,value:i.formatValue});e(L=>p(l(l({},L),y),{prevValue:L.formatValue,eventType:"update",eventID:B(),caretFrom:Number(L.formatValue.length+1),caretTo:Number(L.formatValue.length+1)})),R(!1)}}))},TextAreaBox:t=>{let{rootStates:a,val_focus:o,set_focus:s,val_validate:i,set_validate:e,val_status:u,set_status:d,isShallow:r}=t,G=a,{componentId:m,tone:S,required:R,form:g,label:F,isLabelActive:E,minRows:f,maxRows:w,multiline:$,autoHeight:H,allowDecimals:pe,allowZeroStart:ce,enableFormSubmit:te,maxLength:me,checkValidationAtFirst:O,onChange:q,onKeyDown:M,onValidate:K,onUpdateValue:ae,onUpdateValidValue:J,value:Y="",leftIndicator:de,rightIndicator:fe,leftIcon:ge,rightIcon:be,defaultValidation:he,wrapStyles:xe}=G,I=j(G,["componentId","tone","required","form","label","isLabelActive","minRows","maxRows","multiline","autoHeight","allowDecimals","allowZeroStart","enableFormSubmit","maxLength","checkValidationAtFirst","onChange","onKeyDown","onValidate","onUpdateValue","onUpdateValidValue","value","leftIndicator","rightIndicator","leftIcon","rightIcon","defaultValidation","wrapStyles"]);return!a.multiline?null:n(D,p(l({htmlTag:"textarea","data-show-validation":P.isShowValidation(i,u,!!O),"data-input-origin":u.componentId,"data-component-id":u.componentId,value:u.dataValue,width:1},I),{onFocus:v=>{I!=null&&I.onFocus&&(I==null||I.onFocus(v)),s(!0)},onBlur:v=>{I!=null&&I.onBlur&&(I==null||I.onBlur(v)),s(!1)},onKeyDown:v=>{M&&M(v),te&&P.SubmitForm(v,g)},onChange:v=>{let{value:z}=v.target;i.ok&&e({ok:!1,notice:[]}),d(ie=>p(l({},ie),{dataValue:z,eventType:"update",eventID:B()})),q&&q(v)}}))}},_e=t=>{let{componentId:a,restrict:o="text",value:s="",min:i,max:e,allowDecimals:u,allowZeroStart:d}=t,[r,m]=U(!1),[S,R]=U(!1),[g,F]=U(p(l({componentId:a},C.Validation.DataLeveling({allowDecimals:u,allowZeroStart:d,min:i,max:e,restrict:o,value:s})),{prevValue:"",eventType:"init",eventID:B(),caretFrom:null,caretTo:null})),[E,f]=U({ok:!1,notice:[]}),[w,$]=U(["password","concealed"].includes(o)&&"password"||"text");Q(()=>{oe.set({[a+":set_inputType"]:$})},[]);let H={rootStates:t,val_focus:r,set_focus:m,val_inputType:w,set_inputType:$,val_isComposing:S,set_isComposing:R,val_status:g,set_status:F,val_validate:E,set_validate:f};return P.CommonEffects({type:"textfield",states:t,val_status:g,set_status:F,val_validate:E,set_validate:f,SystemValidation:C.Validation.System,ExtraOverrideStates:l({},C.Validation.DataLeveling({allowDecimals:u,allowZeroStart:d,min:i,max:e,restrict:o,value:s}))}),Q(()=>{C.setSelection({id:t.id,restrict:o,val_status:g})},[g]),W(we,{val_status:g,set_status:F,val_validate:E,states:H.rootStates,children:[n(ke,{componentId:t.componentId,fontSize:t.fontSize,required:t.required,label:t.label,isActive:t.isLabelActive||r||!!g.dataValue}),n(C.Shallow,l({},H)),n(C.InputBox,l({},H)),n(C.TextAreaBox,l({},H))]})},V=t=>(t=l({autoHeight:!0,restrict:"text",fontSize:"inherit"},t),t.multiline?(t.minRows=t.minRows||5,t.maxRows=t.maxRows||20):(t.minRows=1,t.maxRows=1),n(Ce,{componentId:t.componentId,children:_e,states:Ve(t)})),h=V;h.Validate=C.Validation.Text,h.Katakana=t=>n(V,p(l({},t),{restrict:"katakana",multiline:!1,autoHeight:!1})),h.HankakuKatakana=t=>n(V,p(l({},t),{restrict:"hankaku.katakana",multiline:!1,autoHeight:!1})),h.CreditCard=t=>n(V,p(l({},t),{restrict:"creditCard",multiline:!1,autoHeight:!1})),h.Tel=t=>n(V,p(l({},t),{restrict:"tel",multiline:!1,autoHeight:!1})),h.Number=t=>n(V,p(l({},t),{restrict:"number",multiline:!1,autoHeight:!1})),h.DigitNumber=t=>n(V,p(l({},t),{restrict:"digitNumber",multiline:!1,autoHeight:!1})),h.Email=t=>n(V,p(l({},t),{restrict:"email",multiline:!1,autoHeight:!1})),h.Url=t=>n(V,p(l({},t),{restrict:"url",multiline:!1,autoHeight:!1})),h.Postal=t=>n(V,p(l({label:"\u90F5\u4FBF\u756A\u53F7"},t),{restrict:"postal",multiline:!1,autoHeight:!1,leftIcon:n(Ne,{ssSphere:2,fontColor:"4.thin",children:"\u3012"})})),h.Password=t=>n(V,p(l({label:"\u30D1\u30B9\u30EF\u30FC\u30C9",rightIcon:n(se,{ssSphere:2,padding:0,freeCSS:{pointerEvents:"all"},children:n(Re.Sub,{ssSphere:2,borderRadius:"3.tone.tertiary",fontColor:"theme",flexCenter:!0,height:1,ssEffectsOnActive:["expand"],onMouseOver:a=>{re.open(a.currentTarget,"\u30C6\u30AD\u30B9\u30C8\u3092\u8868\u793A",24)},onMouseLeave:re.abort,tabIndex:-1,onClick:a=>{x(a.target).parent().parent().find("input").callback(o=>{let s=o[0];if(!s)return;let i=s.dataset.componentId;if(!i)return;let e=oe.get(i+":set_inputType");e&&e(u=>u==="password"&&"text"||"password")})},children:n(ve,{icon:ye})})}),restrict:"password"},t),{multiline:!1,autoHeight:!1})),h.Concealed=t=>n(h.Password,p(l({label:"\u79D8\u5BC6\u9375"},t),{restrict:"concealed"})),h.Money={JPY:t=>n(h.DigitNumber,p(l({rightIcon:n(se,{ssSphere:2,fontColor:"4.thin",children:"\u5186"})},t),{multiline:!1,autoHeight:!1}))};export{h as TextField,_e as TextInput,h as default};
@@ -1 +1 @@
1
- import{b as p,c as x}from"../../../chunk-C5N2D3ZX.js";import{Fragment as q,jsx as a,jsxs as f}from"react/jsx-runtime";import{createElement as X}from"react";import D,{UUID as O,Time as S}from"jmini";import{useState as A,useEffect as F,useRef as H}from"react";import{Box as k,Flex as w,Grid as W,FAI as T,Column as V}from"../../../atoms";import{Row as N,Literal as G}from"../../../mols";import{Button as C}from"../../Button";import $ from"../../Sheet";import M from"../Select";import{Radio as L}from"../List";import{RightIcon as B}from"..";import{InputTimeClasses as y}from"../../../@styles/componentClasses";let _=i=>{var t,r;let e=[],d=Number((t=i==null?void 0:i.min)!=null?t:1900),o=Number((r=i==null?void 0:i.max)!=null?r:S().addYear(10).year);for(let m=d;m<=o;m++)e.unshift({value:m,label:[m,...D.transformer.wareki(m).value].join(" -")});return e};const j=i=>{let{restrict:e,era:d="year",defaultValue:o=""}=i;i=p({},i),i.sheetID=i.sheetID||O();const t=H(!1);let[r,m]=A((()=>{var n,s;if(e=="clock"){let l=String(o).split(/[^\d]/);l[0]||(l=[0,0]);let u=Number(l[0]),c=Number(l[1]);return{modifiedType:"init",hour:u,minutes:c}}else if(e=="date"){let[l,u,c]=(n=String(o))==null?void 0:n.split(/\D/);return(D.is.nullish(l)||D.is.nullish(u)||D.is.nullish(c))&&([l,u,c]=S().toFormat("%Y-%M-%D").split("-")),{modifiedType:"init",year:Number(l),month:Number(u),date:Number(c)}}else if(e!="week"){if(e=="month"){let[l,u]=String(o).split(/\D/);return(D.is.nullish(l)||D.is.nullish(u))&&([l,u]=S().toFormat("%Y-%M").split("-")),{modifiedType:"init",year:Number(l),month:Number(u)}}else if(e=="year"){let[l]=String(o).split(/\D/);return D.is.nullish(l)&&([l]=S().toFormat("%Y").split("-")),{modifiedType:"init",year:Number(l)}}else if(e=="dateWareki"){let[l,u,c]=(s=String(o))==null?void 0:s.split(/\D/);return(D.is.nullish(l)||D.is.nullish(u)||D.is.nullish(c))&&([l,u,c]=S().toFormat("%Y-%M-%D").split("-")),{modifiedType:"init",era:d||"year",year:Number(l),month:Number(u),date:Number(c)}}}return{}})());F(()=>{if(t.current){if(r.modifiedType=="update"){let n="",s=d||"year";if(e=="clock"){let{hour:l,minutes:u}=r;n=[l.zeroEmbed(2),u.zeroEmbed(2)].join("/")}else if(e=="date"){let{year:l,month:u,date:c}=r;n=[l,u.zeroEmbed(2),c.zeroEmbed(2)].join("/")}else if(e!="week"){if(e=="month"){let{year:l,month:u}=r;n=[l,u.zeroEmbed(2)].join("/")}else if(e=="year"){let{year:l}=r;n=String(l)}else if(e=="dateWareki"){let{year:l,month:u,date:c,era:v}=r;s=v,n=[l,u.zeroEmbed(2),c.zeroEmbed(2)].join("/")}}i.onValueUpdate(n,s)}}else t.current=!0},[r]);let h=x(p({},i),{val_value:r,set_value:m});return a(k,{backgroundColor:"layer.1",borderRadius:"2.tone.secondary",boxShadow:"1.remark",children:a(k,{className:y(e.toCapital()+"Base"),children:e=="clock"?a(g.Clock.index,p({},h)):e=="date"?a(g.Date.index,p({},h)):e=="week"?"":e=="month"?a(g.Month.index,p({},h)):e=="year"?a(g.Year.index,p({},h)):e=="dates"||e=="months"?"":e=="dateWareki"?a(g.DateWareki.index,p({},h)):a(q,{})})})},g={Clock:{index:i=>{let{min:e,max:d,onValueUpdate:o,sheetID:t,val_value:r,set_value:m}=i,[h,n]=A(r.hour>12?2:1),[s,l]=A(Number(localStorage.getItem("timePickerUnit")||5));F(()=>{localStorage.setItem("timePickerUnit",String(s))},[s]);let{hour:u,minutes:c}=r;return f(V,{padding:1,children:[f(w,{flexType:"row",flexWrap:!1,gap:1,className:y("Body"),children:[f(V,{className:y("DesignSide"),flexSizing:0,children:[a(k,{className:y("ClockUiBase"),padding:[1,"2/3"],flexCenter:!0,children:f(k,{className:y("ClockUi"),backgroundColor:"theme.opa.low",isRounded:!0,position:"relative",children:[a(k,{position:"absolute",backgroundColor:"theme",unitWidth:"1/12",className:[y("Needle"),y("hour")].join(" "),freeCSS:{transform:`rotate(${u*30+c/2}deg)`}}),a(k,{position:"absolute",backgroundColor:"theme",unitWidth:"1/12",className:[y("Needle"),y("minute")].join(" "),freeCSS:{transform:`rotate(${c*6}deg)`}})]})}),a(L,{icon:!0,value:[h],options:[{value:1,label:"AM"},{value:2,label:"PM"}],flexType:"col",gap:"1/2",tabIndex:-1,onUpdateValidValue:v=>{let I=r.hour%12+(v==2?12:0);n(v),m({modifiedType:"update",hour:I,minutes:r.minutes})}}),a(k,{borderTop:!0,margin:[0,1]}),a(L,{icon:!0,value:[s],options:[{value:1,label:"/ 1\u5206"},{value:2,label:"/ 2\u5206"},{value:5,label:"/ 5\u5206"}],flexType:"col",gap:"1/2",tabIndex:-1,onUpdateValidValue:v=>{l(v)}})]}),f(V,{children:[f(k,{flexCenter:!0,isSemiBoldFont:!0,fontSize:"3.paragraph",children:[r.hour.zeroEmbed(2)," : ",r.minutes.zeroEmbed(2)]}),f(w,{flexWrap:!1,ssCardBox:!0,flexChilds:"even",padding:["1/3",0],freeCSS:{minWidth:12*12},children:[a(V,{gap:0,overflow:"auto",padding:"2/3",borderRight:!0,freeCSS:{maxHeight:12*22},children:g.Clock.Hours({onClick:v=>{let R=v+(h==2?12:0);m({modifiedType:"update",hour:R,minutes:r.minutes})},min:e,max:d,ampm:h})}),a(V,{gap:0,overflow:"auto",padding:"2/3",freeCSS:{maxHeight:12*22},children:g.Clock.Minutes({onClick:v=>{m({modifiedType:"update",hour:r.hour,minutes:v})},min:e,max:d,unit:s})})]})]})]}),a(g.Variables.Footer,{sheetID:t,onValueUpdate:o})]})},Hours:i=>{let e=[];for(let d=0;d<12;d++){let o=i.ampm==2?d+12:d,t=!1;{let r=Number(String(o*100).replace(/\D/ig,""));if(i.min&&Number(String(i.min).replace(/\D/ig,""))>r&&(t=!0),i.max){let m=Number(String(i.max).replace(/\D/ig,""));r>m&&(t=!0)}}e.push(a(C.Normal,{isLocked:t,borderBottom:!0,borderRadius:0,padding:["1/2",1],freeCSS:{whiteSpace:"nowrap"},tabIndex:-1,onClick:()=>{i.onClick(d)},children:o.zeroEmbed(2)},d))}return e},Minutes:i=>{let e=[];for(let d=0;d<60/i.unit;d++){let o=d*i.unit;e.push(a(C.Normal,{borderBottom:!0,borderRadius:0,padding:["1/2",1],freeCSS:{whiteSpace:"nowrap"},tabIndex:-1,onClick:()=>{i.onClick(o)},children:o.zeroEmbed(2)},o))}return e}},Date:{index:i=>{let{min:e,max:d,onValueUpdate:o,sheetID:t,val_value:r,set_value:m}=i,{year:h,month:n,date:s}=r;return f(V,{padding:1,children:[f(N.Separate,{flexWrap:!0,children:[f(w,{verticalAlign:"bottom",horizontalAlign:"left",gap:"2/3",flexWrap:!1,children:[a(M,{override:"force",emptySelect:!1,value:h,options:_(),fontSize:"1.mini",border:"1.thin",padding:["1/3","2/3"],paddingRight:1,SelectorStyles:{freeCSS:{minWidth:12*12}},onUpdateValidValue:l=>{m({modifiedType:"update",year:Number(l),month:n,date:s})},rightIcon:a(B,{ssSphere:2,right:"1/3",children:a(T.AngleDown,{})})}),a(M,{override:"force",emptySelect:!1,value:n,options:(()=>{let l=[];for(let u=1;u<=12;u++)l.push({value:u,label:String(u)+"\u6708"});return l})(),fontSize:"1.mini",border:"1.thin",padding:["1/3","2/3"],paddingRight:1,SelectorStyles:{freeCSS:{minWidth:12*8}},rightIcon:a(B,{ssSphere:2,right:"1/3",children:a(T.AngleDown,{})}),onUpdateValidValue:l=>{m({modifiedType:"update",year:h,month:Number(l),date:s})}})]}),a(g.Variables.ShiftButtons,{callback:l=>{let u=n+l,c=h;u<=0&&(c--,u=12),u>12&&(c++,u=1),m({modifiedType:"update",year:c,month:u,date:r.date})}})]}),a(k,{borderTop:!0}),a(k,{children:g.Date.MonthCalendar({min:e,max:d,year:r.year,month:r.month,current:[r.year,r.month,r.date],callback:l=>{let[u,c,v]=l;m({modifiedType:"update",year:u,month:c,date:v})}})}),a(g.Variables.Footer,{sheetID:t,onValueUpdate:o})]})},MonthCalendar:i=>{let{min:e,max:d,year:o,month:t,current:r,callback:m}=i,h=S(),n=S([o,t.zeroEmbed(2),"01"].join("/")),s=n.getLastDayOfTheMonth(),l=S(n).addMonth(-1).getLastDayOfTheMonth().date,u=[],c=[],v=[],R=[],I={padding:0,unitWidth:3,unitHeight:3,flexCenter:!0,borderRadius:"3.tone.tertiary"};for(var b=0;b<7;b++)u.push(a(k,x(p({className:[y("CalendarDay"),y("Legend")].join(" ")},I),{children:["\u65E5","\u6708","\u706B","\u6C34","\u6728","\u91D1","\u571F"][b]}),b));for(var b=0;b<n.weekday;b++)c.unshift(X(k,x(p({className:[y("CalendarDay"),y("Dummy")].join(" "),fontColor:"4.thin"},I),{key:b}),l-b));for(var b=1;b<=s.date;b++){let E=b,Y=o==h.year&&t==h.month&&b==h.date,P=!1;{let z=Number(String([o,t.zeroEmbed(2),b.zeroEmbed(2)].join("/")).replace(/\D/ig,""));if(i.min&&Number(String(i.min).replace(/\D/ig,""))>z&&(P=!0),i.max){let U=Number(String(i.max).replace(/\D/ig,""));z>U&&(P=!0)}}v.push(a(C.Clear,x(p({className:[y("CalendarDay"),y("isToday_"+Y)].join(" ")},I),{fontColor:"1.clear",padding:0,flexCenter:!0,isRounded:!0,ssEffectsOnActive:"shrink",onClick:()=>{m([o,t,E])},tabIndex:-1,isLocked:P,children:b}),E))}for(var b=1;b<7-s.weekday;b++)R.push(a(k,x(p({className:[y("CalendarDay"),y("Dummy")].join(" "),fontColor:"4.thin"},I),{children:b}),b));return f(W,{gridCols:7,gap:"1/6",children:[u,c,v,R]})}},Month:{index:i=>{let{min:e,max:d,onValueUpdate:o,sheetID:t,val_value:r,set_value:m}=i,{year:h,month:n}=r;return f(V,{padding:1,children:[f(N.Separate,{gap:0,children:[a(N.Center,{verticalAlign:"bottom",gap:"2/3",children:a(M,{emptySelect:!1,value:h,options:_(),override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,SelectorStyles:{freeCSS:{minWidth:12*12}},rightIcon:a(B,{ssSphere:2,right:"1/3",children:a(T.AngleDown,{})}),onUpdateValidValue:s=>{m({modifiedType:"update",year:Number(s),month:n})}})}),a(g.Variables.ShiftButtons,{callback:s=>{let l=Math.min(Math.max(h+s,1900),2100);m({modifiedType:"update",year:l,month:n})}})]}),a(k,{borderTop:!0}),g.Month.Months({min:e,max:d,year:r.year,callback:s=>{let[l,u]=s;m({modifiedType:"update",year:l,month:u})}}),a(g.Variables.Footer,{sheetID:t,onValueUpdate:o})]})},Months:i=>{let{year:e,callback:d}=i,o=S(),t=[];for(let r=1;r<=12;r++){let m=e==o.year&&r==o.month,h=!1;{let s=Number(String([e,r.zeroEmbed(2)].join("/")).replace(/\D/ig,""));if(i.min&&Number(String(i.min).replace(/\D/ig,""))>s&&(h=!0),i.max){let l=Number(String(i.max).replace(/\D/ig,""));s>l&&(h=!0)}}let n=[y("Cell"),m?y("isThisMonth"):""].join(" ");t.push(f(C.Clear,{className:n,isLocked:h,fontColor:"2.normal",padding:["1/3",1],ssEffectsOnActive:"shrink",onClick:()=>{d([e,r])},children:[r," \u6708"]},e+"-"+r))}return a(W,{gridCols:4,gap:"2/3",children:t})}},Year:{index:i=>{let{min:e,max:d,onValueUpdate:o,sheetID:t,val_value:r,set_value:m}=i,{year:h}=r;return f(V,{padding:1,children:[a(M,{emptySelect:!1,paddingRight:1,fontSize:"1.mini",value:h||S().year,override:"force",SelectorStyles:{freeCSS:{minWidth:12*12}},options:_({min:e,max:d}),onUpdateValidValue:n=>{m({modifiedType:"update",year:Number(n)})}}),a(g.Variables.Footer,{sheetID:t,onValueUpdate:o,onSubmit:()=>{m({modifiedType:"update",year:Number(h||S().year)})}})]})}},DateWareki:{index:i=>{let{min:e,max:d,onValueUpdate:o,sheetID:t,val_value:r,set_value:m}=i,{era:h,year:n,month:s,date:l}=r,u={val_value:r,set_value:m};return f(k,{children:[f(N.Left,{borderBottom:!0,gap:0,verticalAlign:"unset",children:[a(g.DateWareki.EraSelect,p({},u)),a(k,{borderRight:!0}),a(g.DateWareki.Calendar,p({},u))]}),a(N.Right,{padding:1,children:a(g.Variables.Footer,{sheetID:t,onValueUpdate:o})})]})},EraSelect:i=>{let{val_value:e,set_value:d}=i,o={padding:["1/2",1.5],fontColor:"3.blur"},t={backgroundColor:"cloud",fontColor:"2.normal",isSemiBoldFont:!0};return f(V,{padding:1,gap:0,children:[a(C.Clear,x(p({color:"cloud"},o),{isActiveStyles:t,isActive:e.era=="year",onClick:()=>{let r=S();d({modifiedType:"update",era:"year",year:r.year,month:r.month,date:r.date})},children:"\u897F\u66A6"})),a(C.Clear,x(p({color:"cloud"},o),{isActiveStyles:t,isActive:e.era=="reiwa",onClick:()=>{let r=S();d({modifiedType:"update",era:"reiwa",year:r.year,month:r.month,date:r.date})},children:"\u4EE4\u548C"})),a(C.Clear,x(p({color:"cloud"},o),{isActiveStyles:t,isActive:e.era=="heisei",onClick:()=>{d({modifiedType:"update",era:"heisei",year:2019,month:1,date:1})},children:"\u5E73\u6210"})),a(C.Clear,x(p({color:"cloud"},o),{isActiveStyles:t,isActive:e.era=="shouwa",onClick:()=>{d({modifiedType:"update",era:"shouwa",year:1989,month:1,date:1})},children:"\u662D\u548C"})),a(C.Clear,x(p({color:"cloud"},o),{isActiveStyles:t,isActive:e.era=="taisho",onClick:()=>{d({modifiedType:"update",era:"taisho",year:1926,month:1,date:1})},children:"\u5927\u6B63"})),a(C.Clear,x(p({color:"cloud"},o),{isActiveStyles:t,isActive:e.era=="meiji",onClick:()=>{d({modifiedType:"update",era:"meiji",year:1912,month:1,date:1})},children:"\u660E\u6CBB"}))]})},Calendar:i=>{let{val_value:e,set_value:d}=i,o=[];if(e.era=="year"){let t=S().year+10;for(let r=1900;r<t;r++)o.unshift({value:r,label:r+"\u5E74"})}else if(e.era=="reiwa"){let t=S().year-2018;for(let r=1;r<=t+10;r++)o.unshift({value:2019+r-1,label:"\u4EE4\u548C"+(r==1?"\u5143":r)+"\u5E74"})}else if(e.era=="heisei")for(let t=1;t<=31;t++)o.unshift({value:1989+t-1,label:"\u5E73\u6210"+(t==1?"\u5143":t)+"\u5E74"});else if(e.era=="shouwa")for(let t=1;t<=64;t++)o.unshift({value:1926+t-1,label:"\u662D\u548C"+(t==1?"\u5143":t)+"\u5E74"});else if(e.era=="taisho")for(let t=1;t<=15;t++)o.unshift({value:1912+t-1,label:"\u5927\u6B63"+(t==1?"\u5143":t)+"\u5E74"});else if(e.era=="meiji")for(let t=1;t<=45;t++)o.unshift({value:1868+t-1,label:"\u660E\u6CBB"+(t==1?"\u5143":t)+"\u5E74"});return f(V,{padding:1,children:[f(N.Separate,{children:[a(M,{emptySelect:!1,override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:1,fontSize:"1.mini",SelectorStyles:{freeCSS:{minWidth:12*12}},rightIcon:a(B,{ssSphere:2,right:"1/3",children:a(T.AngleDown,{})}),options:o,value:e.year,onUpdateValidValue:t=>{d(r=>x(p({},r),{modifiedType:"update",year:Number(t)}))}}),f(N.Center,{gap:"1/3",children:[a(M,{emptySelect:!1,override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:1,fontSize:"1.mini",SelectorStyles:{freeCSS:{minWidth:12*9}},rightIcon:a(B,{ssSphere:2,right:"1/3",children:a(T.AngleDown,{})}),options:[{value:1,label:"1\u6708"},{value:2,label:"2\u6708"},{value:3,label:"3\u6708"},{value:4,label:"4\u6708"},{value:5,label:"5\u6708"},{value:6,label:"6\u6708"},{value:7,label:"7\u6708"},{value:8,label:"8\u6708"},{value:9,label:"9\u6708"},{value:10,label:"10\u6708"},{value:11,label:"11\u6708"},{value:12,label:"12\u6708"}],value:e.month,onUpdateValidValue:t=>{d({modifiedType:"update",era:e.era,year:e.year,month:Number(t),date:1})}}),a(C.Clear.S,{ssSphere:2.5,onClick:()=>{let t=e.month-1;d({modifiedType:"update",era:e.era,year:t==0?e.year-1:e.year,month:t==0?12:t,date:1})},children:a(T.ChevronLeft,{})}),a(C.Clear.S,{ssSphere:2.5,onClick:()=>{let t=e.month+1;d({modifiedType:"update",era:e.era,year:t==13?e.year+1:e.year,month:t==13?1:t,date:1})},children:a(T.ChevronRight,{})})]})]}),a(g.DateWareki.MonthCell,p({},i))]},e.era)},MonthCell:i=>{let{val_value:e,set_value:d}=i,o=S([e.year.zeroEmbed(4),e.month.zeroEmbed(2),e.date.zeroEmbed(2)].join("/"));if(!o.validate)return;let t=o.getFirstDayOfTheMonth().weekday,r=o.getLastDayOfTheMonth(),m=[];for(let n=0;n<7;n++)m.push(a(G.Supplement,{flexCenter:!0,fontColor:n==0?"googleRed":n==6?"googleBlue":"3.blur",children:D.transformer.weekday.shortJP(n)},"legend-"+n));for(let n=0;n<t;n++){let s=S(o).getFirstDayOfTheMonth().addDate(n-t);m.push(a(C.Sub,{color:"cloud",ssSquare:3,opacity:"middle",onClick:l=>{l.preventDefault(),l.stopPropagation(),d({modifiedType:"update",era:e.era,year:s.year,month:s.month,date:s.date})},children:s.date},"lastMonth-"+n))}let h=S();for(let n=1;n<=r.date;n++){let s=S(o).setDate(n),l=h.diff(s).dates==0;m.push(a(C.Clear,{ssSquare:3,fontColor:"2.normal",className:[y("CalendarDay"),y("isToday_"+l)].join(" "),onClick:()=>{d({modifiedType:"update",era:e.era,year:s.year,month:s.month,date:s.date})},children:s.date},"currentMonth-"+n))}for(let n=0;n<7-r.weekday-1;n++){let s=S(o).addMonth(1).setDate(1).addDate(n);m.push(a(C.Sub,{color:"cloud",ssSquare:3,opacity:"middle",onClick:l=>{l.preventDefault(),l.stopPropagation(),d({modifiedType:"update",era:e.era,year:s.year,month:s.month,date:s.date})},children:s.date},"nextMonth-"+n))}return a(W,{gridCols:7,gap:"1/4",children:m})}},Variables:{Footer:i=>f(w,{flexWrap:!1,gap:1,flexChilds:"even",freeCSS:{whiteSpace:"nowrap"},children:[f(C.Sub.S,{color:"cloud",tabIndex:-1,isRounded:!0,onClick:()=>{i.onValueUpdate("")},flexSizing:"none",children:[a(T.Times,{})," \u524A\u9664"]}),a(C.Prime.S,{tabIndex:-1,isRounded:!0,flexSizing:"auto",freeCSS:{minWidth:12*6},onClick:()=>{i.onSubmit&&i.onSubmit(),$.close(i.sheetID)},children:"\u6C7A\u5B9A"})]}),ShiftButtons:i=>f(w,{gap:"1/3",flexWrap:!1,children:[a(C.Clear,x(p({className:y("LeftButton"),tabIndex:-1,right:0},g.Variables.ShiftButtonStyles),{onClick:()=>{i.callback(-1)},children:a(T.ChevronLeft,{})})),a(C.Clear,x(p({className:y("RightButton"),tabIndex:-1,left:0},g.Variables.ShiftButtonStyles),{onClick:()=>{i.callback(1)},children:a(T.ChevronRight,{})}))]}),ShiftButtonStyles:{position:"relative",flexCenter:!0,ssSphere:2.5}}};export{j as Picker,j as default};
1
+ import{b as p,c as x}from"../../../chunk-C5N2D3ZX.js";import{Fragment as $,jsx as a,jsxs as f}from"react/jsx-runtime";import{createElement as q}from"react";import D,{UUID as O,Time as S}from"jmini";import{useState as A,useEffect as F,useRef as H}from"react";import{Box as k,Flex as w,Grid as W,FAI as V,Column as T}from"../../../atoms";import{Row as N,Literal as G}from"../../../mols";import{Button as C}from"../../Button";import X from"../../Sheet";import M from"../Select";import{Radio as L}from"../List";import{RightIcon as B}from"..";import{InputTimeClasses as y}from"../../../@styles/componentClasses";let _=i=>{var t,r;let e=[],d=Number((t=i==null?void 0:i.min)!=null?t:1900),o=Number((r=i==null?void 0:i.max)!=null?r:S().addYear(10).year);for(let m=d;m<=o;m++)e.unshift({value:m,label:[m,...D.transformer.wareki(m).value].join(" -")});return e};const j=i=>{let{restrict:e,era:d="year",defaultValue:o=""}=i;i=p({},i),i.sheetID=i.sheetID||O();const t=H(!1);let[r,m]=A((()=>{var n,s;if(e=="clock"){let l=String(o).split(/[^\d]/);l[0]||(l=[0,0]);let u=Number(l[0]),c=Number(l[1]);return{modifiedType:"init",hour:u,minutes:c}}else if(e=="date"){let[l,u,c]=(n=String(o))==null?void 0:n.split(/\D/);return(D.is.nullish(l)||D.is.nullish(u)||D.is.nullish(c))&&([l,u,c]=S().toFormat("%Y-%M-%D").split("-")),{modifiedType:"init",year:Number(l),month:Number(u),date:Number(c)}}else if(e!="week"){if(e=="month"){let[l,u]=String(o).split(/\D/);return(D.is.nullish(l)||D.is.nullish(u))&&([l,u]=S().toFormat("%Y-%M").split("-")),{modifiedType:"init",year:Number(l),month:Number(u)}}else if(e=="year"){let[l]=String(o).split(/\D/);return D.is.nullish(l)&&([l]=S().toFormat("%Y").split("-")),{modifiedType:"init",year:Number(l)}}else if(e=="dateWareki"){let[l,u,c]=(s=String(o))==null?void 0:s.split(/\D/);return(D.is.nullish(l)||D.is.nullish(u)||D.is.nullish(c))&&([l,u,c]=S().toFormat("%Y-%M-%D").split("-")),{modifiedType:"init",era:d||"year",year:Number(l),month:Number(u),date:Number(c)}}}return{}})());F(()=>{if(t.current){if(r.modifiedType=="update"){let n="",s=d||"year";if(e=="clock"){let{hour:l,minutes:u}=r;n=[l.zeroEmbed(2),u.zeroEmbed(2)].join("/")}else if(e=="date"){let{year:l,month:u,date:c}=r;n=[l,u.zeroEmbed(2),c.zeroEmbed(2)].join("/")}else if(e!="week"){if(e=="month"){let{year:l,month:u}=r;n=[l,u.zeroEmbed(2)].join("/")}else if(e=="year"){let{year:l}=r;n=String(l)}else if(e=="dateWareki"){let{year:l,month:u,date:c,era:v}=r;s=v,n=[l,u.zeroEmbed(2),c.zeroEmbed(2)].join("/")}}i.onValueUpdate(n,s)}}else t.current=!0},[r]);let h=x(p({},i),{val_value:r,set_value:m});return a(k,{backgroundColor:"layer.1",borderRadius:"2.tone.secondary",boxShadow:"1.remark",children:a(k,{className:y(e.toCapital()+"Base"),children:e=="clock"?a(g.Clock.index,p({},h)):e=="date"?a(g.Date.index,p({},h)):e=="week"?"":e=="month"?a(g.Month.index,p({},h)):e=="year"?a(g.Year.index,p({},h)):e=="dates"||e=="months"?"":e=="dateWareki"?a(g.DateWareki.index,p({},h)):a($,{})})})},g={Clock:{index:i=>{let{min:e,max:d,onValueUpdate:o,sheetID:t,val_value:r,set_value:m}=i,[h,n]=A(r.hour>12?2:1),[s,l]=A(Number(localStorage.getItem("timePickerUnit")||5));F(()=>{localStorage.setItem("timePickerUnit",String(s))},[s]);let{hour:u,minutes:c}=r;return f(T,{padding:1,children:[f(w,{flexType:"row",flexWrap:!1,gap:1,className:y("Body"),children:[f(T,{className:y("DesignSide"),flexSizing:0,children:[a(k,{className:y("ClockUiBase"),padding:[1,"2/3"],flexCenter:!0,children:f(k,{className:y("ClockUi"),backgroundColor:"theme.opa.low",isRounded:!0,position:"relative",children:[a(k,{position:"absolute",backgroundColor:"theme",unitWidth:"1/12",className:[y("Needle"),y("hour")].join(" "),freeCSS:{transform:`rotate(${u*30+c/2}deg)`}}),a(k,{position:"absolute",backgroundColor:"theme",unitWidth:"1/12",className:[y("Needle"),y("minute")].join(" "),freeCSS:{transform:`rotate(${c*6}deg)`}})]})}),a(L,{icon:!0,value:[h],options:[{value:1,label:"AM"},{value:2,label:"PM"}],flexType:"col",gap:"1/2",tabIndex:-1,onUpdateValidValue:v=>{let I=r.hour%12+(v==2?12:0);n(v),m({modifiedType:"update",hour:I,minutes:r.minutes})}}),a(k,{borderTop:!0,margin:[0,1]}),a(L,{icon:!0,value:[s],options:[{value:1,label:"/ 1\u5206"},{value:2,label:"/ 2\u5206"},{value:5,label:"/ 5\u5206"}],flexType:"col",gap:"1/2",tabIndex:-1,onUpdateValidValue:v=>{l(v)}})]}),f(T,{children:[f(k,{flexCenter:!0,isSemiBoldFont:!0,fontSize:"3.paragraph",children:[r.hour.zeroEmbed(2)," : ",r.minutes.zeroEmbed(2)]}),f(w,{flexWrap:!1,ssCardBox:!0,flexChilds:"even",padding:["1/3",0],freeCSS:{minWidth:12*12},children:[a(T,{gap:0,overflow:"auto",padding:"2/3",borderRight:!0,freeCSS:{maxHeight:12*22},children:g.Clock.Hours({onClick:v=>{let R=v+(h==2?12:0);m({modifiedType:"update",hour:R,minutes:r.minutes})},min:e,max:d,ampm:h})}),a(T,{gap:0,overflow:"auto",padding:"2/3",freeCSS:{maxHeight:12*22},children:g.Clock.Minutes({onClick:v=>{m({modifiedType:"update",hour:r.hour,minutes:v})},min:e,max:d,unit:s})})]})]})]}),a(g.Variables.Footer,{sheetID:t,onValueUpdate:o})]})},Hours:i=>{let e=[];for(let d=0;d<12;d++){let o=i.ampm==2?d+12:d,t=!1;{let r=Number(String(o*100).replace(/\D/ig,""));if(i.min&&Number(String(i.min).replace(/\D/ig,""))>r&&(t=!0),i.max){let m=Number(String(i.max).replace(/\D/ig,""));r>m&&(t=!0)}}e.push(a(C.Normal,{isLocked:t,borderBottom:!0,borderRadius:0,padding:["1/2",1],freeCSS:{whiteSpace:"nowrap"},tabIndex:-1,onClick:()=>{i.onClick(d)},children:o.zeroEmbed(2)},d))}return e},Minutes:i=>{let e=[];for(let d=0;d<60/i.unit;d++){let o=d*i.unit;e.push(a(C.Normal,{borderBottom:!0,borderRadius:0,padding:["1/2",1],freeCSS:{whiteSpace:"nowrap"},tabIndex:-1,onClick:()=>{i.onClick(o)},children:o.zeroEmbed(2)},o))}return e}},Date:{index:i=>{let{min:e,max:d,onValueUpdate:o,sheetID:t,val_value:r,set_value:m}=i,{year:h,month:n,date:s}=r;return f(T,{padding:1,children:[f(N.Separate,{flexWrap:!0,children:[f(w,{verticalAlign:"bottom",horizontalAlign:"left",gap:"2/3",flexWrap:!1,children:[a(M,{override:"force",emptySelect:!1,value:h,options:_(),fontSize:"1.mini",border:"1.thin",padding:["1/3","2/3"],paddingRight:1,SelectorStyles:{freeCSS:{minWidth:12*12}},onUpdateValidValue:l=>{m({modifiedType:"update",year:Number(l),month:n,date:s})},rightIcon:a(B,{ssSphere:2,right:"1/3",children:a(V.AngleDown,{})})}),a(M,{override:"force",emptySelect:!1,value:n,options:(()=>{let l=[];for(let u=1;u<=12;u++)l.push({value:u,label:String(u)+"\u6708"});return l})(),fontSize:"1.mini",border:"1.thin",padding:["1/3","2/3"],paddingRight:1,SelectorStyles:{freeCSS:{minWidth:12*8}},rightIcon:a(B,{ssSphere:2,right:"1/3",children:a(V.AngleDown,{})}),onUpdateValidValue:l=>{m({modifiedType:"update",year:h,month:Number(l),date:s})}})]}),a(g.Variables.ShiftButtons,{callback:l=>{let u=n+l,c=h;u<=0&&(c--,u=12),u>12&&(c++,u=1),m({modifiedType:"update",year:c,month:u,date:r.date})}})]}),a(k,{borderTop:!0}),a(k,{children:g.Date.MonthCalendar({min:e,max:d,year:r.year,month:r.month,current:[r.year,r.month,r.date],callback:l=>{let[u,c,v]=l;m({modifiedType:"update",year:u,month:c,date:v})}})}),a(g.Variables.Footer,{sheetID:t,onValueUpdate:o})]})},MonthCalendar:i=>{let{min:e,max:d,year:o,month:t,current:r,callback:m}=i,h=S(),n=S([o,t.zeroEmbed(2),"01"].join("/")),s=n.getLastDayOfMonth(),l=S(n).addMonth(-1).getLastDayOfMonth().date,u=[],c=[],v=[],R=[],I={padding:0,unitWidth:3,unitHeight:3,flexCenter:!0,borderRadius:"3.tone.tertiary"};for(var b=0;b<7;b++)u.push(a(k,x(p({className:[y("CalendarDay"),y("Legend")].join(" ")},I),{children:["\u65E5","\u6708","\u706B","\u6C34","\u6728","\u91D1","\u571F"][b]}),b));for(var b=0;b<n.weekday;b++)c.unshift(q(k,x(p({className:[y("CalendarDay"),y("Dummy")].join(" "),fontColor:"4.thin"},I),{key:b}),l-b));for(var b=1;b<=s.date;b++){let E=b,Y=o==h.year&&t==h.month&&b==h.date,P=!1;{let z=Number(String([o,t.zeroEmbed(2),b.zeroEmbed(2)].join("/")).replace(/\D/ig,""));if(i.min&&Number(String(i.min).replace(/\D/ig,""))>z&&(P=!0),i.max){let U=Number(String(i.max).replace(/\D/ig,""));z>U&&(P=!0)}}v.push(a(C.Clear,x(p({className:[y("CalendarDay"),y("isToday_"+Y)].join(" ")},I),{fontColor:"1.clear",padding:0,flexCenter:!0,isRounded:!0,ssEffectsOnActive:"shrink",onClick:()=>{m([o,t,E])},tabIndex:-1,isLocked:P,children:b}),E))}for(var b=1;b<7-s.weekday;b++)R.push(a(k,x(p({className:[y("CalendarDay"),y("Dummy")].join(" "),fontColor:"4.thin"},I),{children:b}),b));return f(W,{gridCols:7,gap:"1/6",children:[u,c,v,R]})}},Month:{index:i=>{let{min:e,max:d,onValueUpdate:o,sheetID:t,val_value:r,set_value:m}=i,{year:h,month:n}=r;return f(T,{padding:1,children:[f(N.Separate,{gap:0,children:[a(N.Center,{verticalAlign:"bottom",gap:"2/3",children:a(M,{emptySelect:!1,value:h,options:_(),override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,SelectorStyles:{freeCSS:{minWidth:12*12}},rightIcon:a(B,{ssSphere:2,right:"1/3",children:a(V.AngleDown,{})}),onUpdateValidValue:s=>{m({modifiedType:"update",year:Number(s),month:n})}})}),a(g.Variables.ShiftButtons,{callback:s=>{let l=Math.min(Math.max(h+s,1900),2100);m({modifiedType:"update",year:l,month:n})}})]}),a(k,{borderTop:!0}),g.Month.Months({min:e,max:d,year:r.year,callback:s=>{let[l,u]=s;m({modifiedType:"update",year:l,month:u})}}),a(g.Variables.Footer,{sheetID:t,onValueUpdate:o})]})},Months:i=>{let{year:e,callback:d}=i,o=S(),t=[];for(let r=1;r<=12;r++){let m=e==o.year&&r==o.month,h=!1;{let s=Number(String([e,r.zeroEmbed(2)].join("/")).replace(/\D/ig,""));if(i.min&&Number(String(i.min).replace(/\D/ig,""))>s&&(h=!0),i.max){let l=Number(String(i.max).replace(/\D/ig,""));s>l&&(h=!0)}}let n=[y("Cell"),m?y("isThisMonth"):""].join(" ");t.push(f(C.Clear,{className:n,isLocked:h,fontColor:"2.normal",padding:["1/3",1],ssEffectsOnActive:"shrink",onClick:()=>{d([e,r])},children:[r," \u6708"]},e+"-"+r))}return a(W,{gridCols:4,gap:"2/3",children:t})}},Year:{index:i=>{let{min:e,max:d,onValueUpdate:o,sheetID:t,val_value:r,set_value:m}=i,{year:h}=r;return f(T,{padding:1,children:[a(M,{emptySelect:!1,paddingRight:1,fontSize:"1.mini",value:h||S().year,override:"force",SelectorStyles:{freeCSS:{minWidth:12*12}},options:_({min:e,max:d}),onUpdateValidValue:n=>{m({modifiedType:"update",year:Number(n)})}}),a(g.Variables.Footer,{sheetID:t,onValueUpdate:o,onSubmit:()=>{m({modifiedType:"update",year:Number(h||S().year)})}})]})}},DateWareki:{index:i=>{let{min:e,max:d,onValueUpdate:o,sheetID:t,val_value:r,set_value:m}=i,{era:h,year:n,month:s,date:l}=r,u={val_value:r,set_value:m};return f(k,{children:[f(N.Left,{borderBottom:!0,gap:0,verticalAlign:"unset",children:[a(g.DateWareki.EraSelect,p({},u)),a(k,{borderRight:!0}),a(g.DateWareki.Calendar,p({},u))]}),a(N.Right,{padding:1,children:a(g.Variables.Footer,{sheetID:t,onValueUpdate:o})})]})},EraSelect:i=>{let{val_value:e,set_value:d}=i,o={padding:["1/2",1.5],fontColor:"3.blur"},t={backgroundColor:"cloud",fontColor:"2.normal",isSemiBoldFont:!0};return f(T,{padding:1,gap:0,children:[a(C.Clear,x(p({color:"cloud"},o),{isActiveStyles:t,isActive:e.era=="year",onClick:()=>{let r=S();d({modifiedType:"update",era:"year",year:r.year,month:r.month,date:r.date})},children:"\u897F\u66A6"})),a(C.Clear,x(p({color:"cloud"},o),{isActiveStyles:t,isActive:e.era=="reiwa",onClick:()=>{let r=S();d({modifiedType:"update",era:"reiwa",year:r.year,month:r.month,date:r.date})},children:"\u4EE4\u548C"})),a(C.Clear,x(p({color:"cloud"},o),{isActiveStyles:t,isActive:e.era=="heisei",onClick:()=>{d({modifiedType:"update",era:"heisei",year:2019,month:1,date:1})},children:"\u5E73\u6210"})),a(C.Clear,x(p({color:"cloud"},o),{isActiveStyles:t,isActive:e.era=="shouwa",onClick:()=>{d({modifiedType:"update",era:"shouwa",year:1989,month:1,date:1})},children:"\u662D\u548C"})),a(C.Clear,x(p({color:"cloud"},o),{isActiveStyles:t,isActive:e.era=="taisho",onClick:()=>{d({modifiedType:"update",era:"taisho",year:1926,month:1,date:1})},children:"\u5927\u6B63"})),a(C.Clear,x(p({color:"cloud"},o),{isActiveStyles:t,isActive:e.era=="meiji",onClick:()=>{d({modifiedType:"update",era:"meiji",year:1912,month:1,date:1})},children:"\u660E\u6CBB"}))]})},Calendar:i=>{let{val_value:e,set_value:d}=i,o=[];if(e.era=="year"){let t=S().year+10;for(let r=1900;r<t;r++)o.unshift({value:r,label:r+"\u5E74"})}else if(e.era=="reiwa"){let t=S().year-2018;for(let r=1;r<=t+10;r++)o.unshift({value:2019+r-1,label:"\u4EE4\u548C"+(r==1?"\u5143":r)+"\u5E74"})}else if(e.era=="heisei")for(let t=1;t<=31;t++)o.unshift({value:1989+t-1,label:"\u5E73\u6210"+(t==1?"\u5143":t)+"\u5E74"});else if(e.era=="shouwa")for(let t=1;t<=64;t++)o.unshift({value:1926+t-1,label:"\u662D\u548C"+(t==1?"\u5143":t)+"\u5E74"});else if(e.era=="taisho")for(let t=1;t<=15;t++)o.unshift({value:1912+t-1,label:"\u5927\u6B63"+(t==1?"\u5143":t)+"\u5E74"});else if(e.era=="meiji")for(let t=1;t<=45;t++)o.unshift({value:1868+t-1,label:"\u660E\u6CBB"+(t==1?"\u5143":t)+"\u5E74"});return f(T,{padding:1,children:[f(N.Separate,{children:[a(M,{emptySelect:!1,override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:1,fontSize:"1.mini",SelectorStyles:{freeCSS:{minWidth:12*12}},rightIcon:a(B,{ssSphere:2,right:"1/3",children:a(V.AngleDown,{})}),options:o,value:e.year,onUpdateValidValue:t=>{d(r=>x(p({},r),{modifiedType:"update",year:Number(t)}))}}),f(N.Center,{gap:"1/3",children:[a(M,{emptySelect:!1,override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:1,fontSize:"1.mini",SelectorStyles:{freeCSS:{minWidth:12*9}},rightIcon:a(B,{ssSphere:2,right:"1/3",children:a(V.AngleDown,{})}),options:[{value:1,label:"1\u6708"},{value:2,label:"2\u6708"},{value:3,label:"3\u6708"},{value:4,label:"4\u6708"},{value:5,label:"5\u6708"},{value:6,label:"6\u6708"},{value:7,label:"7\u6708"},{value:8,label:"8\u6708"},{value:9,label:"9\u6708"},{value:10,label:"10\u6708"},{value:11,label:"11\u6708"},{value:12,label:"12\u6708"}],value:e.month,onUpdateValidValue:t=>{d({modifiedType:"update",era:e.era,year:e.year,month:Number(t),date:1})}}),a(C.Clear.S,{ssSphere:2.5,onClick:()=>{let t=e.month-1;d({modifiedType:"update",era:e.era,year:t==0?e.year-1:e.year,month:t==0?12:t,date:1})},children:a(V.ChevronLeft,{})}),a(C.Clear.S,{ssSphere:2.5,onClick:()=>{let t=e.month+1;d({modifiedType:"update",era:e.era,year:t==13?e.year+1:e.year,month:t==13?1:t,date:1})},children:a(V.ChevronRight,{})})]})]}),a(g.DateWareki.MonthCell,p({},i))]},e.era)},MonthCell:i=>{let{val_value:e,set_value:d}=i,o=S([e.year.zeroEmbed(4),e.month.zeroEmbed(2),e.date.zeroEmbed(2)].join("/"));if(!o.validate)return;let t=o.getFirstDayOfMonth().weekday,r=o.getLastDayOfMonth(),m=[];for(let n=0;n<7;n++)m.push(a(G.Supplement,{flexCenter:!0,fontColor:n==0?"googleRed":n==6?"googleBlue":"3.blur",children:D.transformer.weekday.shortJP(n)},"legend-"+n));for(let n=0;n<t;n++){let s=S(o).getFirstDayOfMonth().addDate(n-t);m.push(a(C.Sub,{color:"cloud",ssSquare:3,opacity:"middle",onClick:l=>{l.preventDefault(),l.stopPropagation(),d({modifiedType:"update",era:e.era,year:s.year,month:s.month,date:s.date})},children:s.date},"lastMonth-"+n))}let h=S();for(let n=1;n<=r.date;n++){let s=S(o).setDate(n),l=h.diff(s).dates==0;m.push(a(C.Clear,{ssSquare:3,fontColor:"2.normal",className:[y("CalendarDay"),y("isToday_"+l)].join(" "),onClick:()=>{d({modifiedType:"update",era:e.era,year:s.year,month:s.month,date:s.date})},children:s.date},"currentMonth-"+n))}for(let n=0;n<7-r.weekday-1;n++){let s=S(o).addMonth(1).setDate(1).addDate(n);m.push(a(C.Sub,{color:"cloud",ssSquare:3,opacity:"middle",onClick:l=>{l.preventDefault(),l.stopPropagation(),d({modifiedType:"update",era:e.era,year:s.year,month:s.month,date:s.date})},children:s.date},"nextMonth-"+n))}return a(W,{gridCols:7,gap:"1/4",children:m})}},Variables:{Footer:i=>f(w,{flexWrap:!1,gap:1,flexChilds:"even",freeCSS:{whiteSpace:"nowrap"},children:[f(C.Sub.S,{color:"cloud",tabIndex:-1,isRounded:!0,onClick:()=>{i.onValueUpdate("")},flexSizing:"none",children:[a(V.X,{})," \u524A\u9664"]}),a(C.Prime.S,{tabIndex:-1,isRounded:!0,flexSizing:"auto",freeCSS:{minWidth:12*6},onClick:()=>{i.onSubmit&&i.onSubmit(),X.close(i.sheetID)},children:"\u6C7A\u5B9A"})]}),ShiftButtons:i=>f(w,{gap:"1/3",flexWrap:!1,children:[a(C.Clear,x(p({className:y("LeftButton"),tabIndex:-1,right:0},g.Variables.ShiftButtonStyles),{onClick:()=>{i.callback(-1)},children:a(V.ChevronLeft,{})})),a(C.Clear,x(p({className:y("RightButton"),tabIndex:-1,left:0},g.Variables.ShiftButtonStyles),{onClick:()=>{i.callback(1)},children:a(V.ChevronRight,{})}))]}),ShiftButtonStyles:{position:"relative",flexCenter:!0,ssSphere:2.5}}};export{j as Picker,j as default};
@@ -1 +1 @@
1
- import{a as ae,b as l,c as k,d as q}from"../../../chunk-C5N2D3ZX.js";import{Fragment as _e,jsx as y,jsxs as oe}from"react/jsx-runtime";import G,{UUID as N,useStore as L}from"jmini";import*as K from"jmini";import{useState as W,useEffect as Q,useRef as ce}from"react";import{$$fromRoot as pe,Config as re,ExtractStyles as ue}from"../../../@utils";import{Box as X,FAI as de}from"../../../atoms";import{Literal as fe,Row as he}from"../../../mols";import{Button as ie}from"../../Button";import ge from"../../Tooltips";import ye from"../../Sheet";import{faClock as De}from"@fortawesome/free-solid-svg-icons/faClock";import{faCalendarAlt as ve}from"@fortawesome/free-solid-svg-icons/faCalendarAlt";import{OptionalInputWrapper as Ie,BoxWrapper as Se,CoreEffects as z,DefaultBoxishStyles as Te}from"../core";import{RightIcon as be}from"..";import xe from"../Select";import{InputLabel as ke}from"../Label";import Ee from"./Picker";const F=" ~ ",we={clock:{defaultValue:"--:--",format:/^\d{2}\D\d{2}$/,ranges:[{type:"hour",from:0,length:2},{type:"minute",from:3,length:2}],sets:1},date:{defaultValue:"----/--/--",format:/^\d{4}\D\d{2}\D\d{2}$/,ranges:[{type:"year",from:0,length:4},{type:"month",from:5,length:2},{type:"date",from:8,length:2}],sets:1},week:{defaultValue:"----\u5E74\u7B2C--\u9031",format:/^\d{4}\D\d{2}$/,ranges:[{type:"year",from:0,length:4,region:6},{type:"week",from:6,length:2,region:3}],sets:1},month:{defaultValue:"----\u5E74--\u6708",format:/^\d{4}\D\d{2}$/,ranges:[{type:"year",from:0,length:4},{type:"month",from:5,length:2,region:3}],sets:1},year:{defaultValue:"----\u5E74",format:/^\d{4}$/,ranges:[{type:"year",from:0,length:4,region:5}],sets:1},dates:{defaultValue:"----/--/--",format:/^\d{4}\D\d{2}\D\d{2}$/,ranges:[{type:"year",from:0,length:4},{type:"month",from:5,length:2},{type:"date",from:8,length:2,region:5},{type:"year",from:10+F.length,length:4},{type:"month",from:15+F.length,length:2},{type:"date",from:18+F.length,length:2}],sets:2},months:{defaultValue:"----\u5E74--\u6708",format:/^\d{4}\D\d{2}$/,ranges:[{type:"year",from:0,length:4},{type:"month",from:5,length:2,region:6},{type:"year",from:8+F.length,length:4},{type:"month",from:13+F.length,length:2,region:3}],sets:2},dateWareki:{defaultValue:"----\u5E74--\u6708--\u65E5",format:/^\d{4}\D\d{2}\D\d{2}$/,ranges:[{type:"dateWareki",from:0,length:4,region:5},{type:"month",from:5,length:2,region:3},{type:"date",from:8,length:2,region:3}],sets:1}},O={PeriodMargin:" ~ ",DataLeveling:e=>{let{restrict:t,value:D,era:a}=e,d=G.flatArray(D||""),{defaultValue:f,format:h,ranges:v,sets:r}=we[t],m=[],o=t=="clock"&&":"||"/";for(let i=0;i<d.length;i++)d[i]=String(d[i]).replace(/\D/ig,o);for(let i=0;i<r;i++){let u=d[i]||"";if(!u.match(h))d[i]="",m.push(f);else{let x=f;u.split(/\D/).forEach((E,R)=>{if(R==0&&t=="dateWareki"){let S=Number(E);a!="year"&&(S>=2019?a=="reiwa"?S-=2018:a=="heisei"&&(S=31):S>=1989?a=="heisei"?S-=1988:a=="shouwa"&&(S=64):S>=1926?a=="shouwa"?S-=1925:a=="taisho"&&(S=15):S>=1912?a=="taisho"?S-=1911:a=="meiji"&&(S=45):S>=1868&&(S-=1867)),E=S.zeroEmbed(4)}x=x.replace(new RegExp("------------------".slice(0,E.length)),E)}),m.push(x)}}return{formatValue:m.join(F),dataValue:["dates","months"].includes(t)?d:d[0],ranges:v}},SystemValidation:e=>{let{states:t}=e,{restrict:D,min:a,max:d,required:f}=t,h=[],v=G.flatArray(e.value),r={empty:!1,escalated:1,filled:!0,correct:!0,prohibited:!1};(()=>{let m=D=="clock"&&":"||"/";for(let o=0;o<v.length;o++)v[o]=String(v[o]).replace(/\D/ig,m);for(let o=0;o<v.length;o++){let i=v[o],u=v[o-1];i.removeLetters()||(r.empty=!0),o>0&&(r.escalated&=+(i>=u))}r.escalated&&(r.empty||(D.match(/clock/)?v.forEach(o=>{let[i,u]=o.split(/\D+/);!i||!u?r.filled=!1:(Number(i)>23||Number(u)>59)&&(r.correct=!1)}):D.match(/date/)?v.forEach(o=>{let[i,u,x]=o.split(/\D+/);if(!i||!u||!x)r.filled=!1;else{let E=K.Time(o);(!E.validate||o!=E.toFormatYMD())&&(r.correct=!1)}}):D.match(/week/)?v.forEach(o=>{let[i,u]=o.split(/\D+/);if(!i||!u)r.filled=!1;else{let x=K.Time(i+"/01/01").weekday,R=K.Time(i+"/01/0"+(7-x+1)).addWeek(Number(u)-1);i!=String(R.year)&&(r.correct=!1)}}):D.match(/month/)?v.forEach(o=>{let[i,u]=o.split(/\D+/);!i||!u?r.filled=!1:K.Time([i,u,"01"].join("/")).validate||(r.correct=!1)}):D.match(/year/),r.filled&&r.correct&&v.forEach(o=>{{let i=Number(String(o).replace(/\D/ig,""));if(a&&Number(String(a).replace(/\D/ig,""))>i&&(r.prohibited=!0),d){let u=Number(String(d).replace(/\D/ig,""));i>u&&(r.prohibited=!0)}}})))})();{let{empty:m,escalated:o,filled:i,correct:u,prohibited:x}=r;m&&f&&(h=[{type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"}]),o||h.push({type:"invalid",label:"\u6642\u7CFB\u5217\u3092\u6B63\u3057\u304F\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"}),u||h.push({type:"invalid",label:"\u7121\u52B9\u306A\u5024\u304C\u5165\u529B\u3055\u308C\u3066\u3044\u307E\u3059"}),i||h.push({type:"invalid",label:"\u6700\u5F8C\u307E\u3067\u5024\u3092\u57CB\u3081\u3066\u304F\u3060\u3055\u3044"}),x&&h.push({type:"invalid",label:oe(_e,{children:[y(X,{children:"\u5165\u529B\u7BC4\u56F2\u304C\u5236\u9650\u3055\u308C\u3066\u3044\u307E\u3059"}),"[",a||"\u4E0B\u9650\u7121\u3057","] ~ [",d||"\u4E0A\u9650\u7121\u3057","]"]})})}return{ok:!h.filter(({type:m})=>m=="invalid").length,notice:h}},KeyDownEvent:e=>{let{val_era:t,restrict:D,event:a,val_status:d,set_status:f,val_focus:h,set_focus:v}=e,{key:r,shiftKey:m,ctrlKey:o,metaKey:i}=a,u=o||i,{selectionStart:x,selectionEnd:E}=a.target,{index:R,prevIndex:S}=h,{ranges:$,formatValue:H}=d,C=$.length-1;if(["Tab","ArrowLeft","ArrowRight"].includes(r)){let I=0;if(r=="Tab"){let s=+!m*2-1;if(I=h.index+s,I<0||I>C)return}else{let s=r=="ArrowLeft"?-1:r=="ArrowRight"?1:0;u||x==0&&E==String(d.formatValue).length?I=s==1?C:0:I=Math.max(0,Math.min(R+s,C))}v(s=>k(l({},s),{index:I,prevIndex:R})),a.preventDefault()}if(["Backspace","ArrowUp","ArrowDown","0","1","2","3","4","5","6","7","8","9"].includes(r)){a.preventDefault();let I=R;I=Math.max(I,0),I=Math.min(I,C);let{type:s,from:B,length:Y}=$[I],_=H.slice(B,B+Y),p;if(r=="Backspace")p="------".slice(0,Y);else if(["ArrowUp","ArrowDown"].includes(r)){let w=r=="ArrowUp"?1:-1;_=_|0,p=_+w;let[n,c,T]=s=="dateWareki"?t=="year"?[0,2999,4]:t=="reiwa"?[1,2999,4]:t=="heisei"?[1,31,4]:t=="shouwa"?[1,64,4]:t=="taisho"?[1,15,4]:t=="meiji"?[1,45,4]:[0,0,0]:s=="minute"?[0,59,2]:s=="hour"?[0,23,2]:s=="date"?[1,31,2]:s=="week"?[1,53,2]:s=="month"?[1,12,2]:s=="year"?[0,2999,4]:[0,0,0];p>c?p=n:p<n&&(p=c),p=Number(p).zeroEmbed(T)}else if(["0","1","2","3","4","5","6","7","8","9"].includes(r)){let w=_|0,n=r,c=`${w}${n}`;if(S!=R&&(w=0,c="0"+n),s=="year"||s=="dateWareki"&&t=="year")Number(c)>1e4?p=n:p=c,(p|0)>1e3&&I++;else if(["hour","minute","date","week","month"].includes(s)||s=="dateWareki"&&t!="year"){let T=s=="dateWareki"?t=="reiwa"?100:t=="heisei"?31:t=="shouwa"?64:t=="taisho"?15:t=="meiji"?45:0:s=="minute"?59:s=="hour"?23:s=="date"?31:s=="week"?53:s=="month"?12:0;p=(c|0)>T?n:c,(Number(n)>Number(String(T)[0])||_=="0000".slice(0,String(T).length)&&(c!="0000".slice(0,String(T).length)||["minute","hour"].includes(s)&&S==R)||(c|0)>=ae(10,String(T).length-1))&&I++}s=="year"||s=="dateWareki"?p=(p|0).zeroEmbed(4):p=(p|0).zeroEmbed(2)}{let w=String(H).partReplace(B,String(p)),n=w.split(F).map(c=>c.replace(/(^\D|\D$)/,"").split(/\D+/).join(D=="clock"&&":"||"/").replace(/(^\D|\D$)/,""));if(D=="dateWareki"){let c=n[0].split(/\D/),[T,j,P]=c;c.length==3&&T&&(n=[[Number(T)-1+Number({year:1,reiwa:2019,heisei:1989,shouwa:1926,taisho:1912,meiji:1868}[t]),j,P].join("/")])}I=Math.max(I,0),I=Math.min(I,C),f(c=>k(l({},c),{dataValue:["dates","months"].includes(D)?n:n[0],formatValue:w,eventType:"update",eventID:N()})),v(c=>k(l({},c),{index:I,prevIndex:c.index}))}}}},ne={picker:{launch:e=>{let t=e.sheetID||N(),m=e,{onValueUpdate:D,min:a,max:d,era:f,restrict:h,defaultValue:v}=m,r=q(m,["onValueUpdate","min","max","era","restrict","defaultValue"]);ye.open("middleCenter",k(l({sheetID:t,size:"S",padding:0,closeAtAroundClick:!0,closeAtParentBlur:!1},r),{content:y(he.Center,{children:y(Ee,{restrict:h,min:a,max:d,era:f,defaultValue:v,sheetID:t,onValueUpdate:(o,i)=>{D(o,i)}})})}))},remove:e=>{ge.close(e)}}},Re={Shallow:e=>{let{rootStates:t,val_status:D}=e,a=ue(t);return y(X,{position:"absolute",top:0,left:0,right:0,height:0,overflow:"hidden",opacity:"trans",freeCSS:{zIndex:3,pointerEvents:"none"},children:y(fe.Description,k(l({className:t.className},a),{position:"absolute",width:1,freeCSS:k(l({},a.freeCSS),{color:"orange"}),children:y(X,{"data-input-value-shallow":D.componentID,children:"A"})}))})}},Ve=e=>{let ee=e,{tone:t,required:D,restrict:a="clock",componentID:d,era:f,form:h,name:v,min:r,max:m,className:o,enableFormSubmit:i,checkValidationAtFirst:u,onKeyDown:x,onValidate:E,onUpdateValue:R,onUpdateValidValue:S,value:$="",leftIndicator:H,rightIndicator:C,leftIcon:I,rightIcon:s,freeCSS:B,wrapStyles:Y}=ee,_=q(ee,["tone","required","restrict","componentID","era","form","name","min","max","className","enableFormSubmit","checkValidationAtFirst","onKeyDown","onValidate","onUpdateValue","onUpdateValidValue","value","leftIndicator","rightIndicator","leftIcon","rightIcon","freeCSS","wrapStyles"]),[p,w]=W(f),[n,c]=W(k(l({componentID:e.componentID||""},O.DataLeveling({restrict:a,value:$,era:p})),{eventType:"init",eventID:N()})),[T,j]=W({ok:!1,notice:[]}),[P,U]=W({active:!1,index:0,prevIndex:-1}),le={rootStates:e,val_status:n,set_status:c,val_validate:T,set_validate:j,val_era:p,set_era:w,val_focus:P,set_focus:U};z.CommonEffects({type:"time",states:e,val_status:n,set_status:c,val_validate:T,set_validate:j,SystemValidation:O.SystemValidation,ExtraOverrideStates:l({},O.DataLeveling({restrict:a,value:$,era:p}))});const Z=ce(!1);return Q(()=>{if(Z.current){c(b=>l(l({},b),O.DataLeveling({restrict:a,value:b.dataValue,era:p})));let g=L.get("refreshEra_"+n.componentID);g&&g.refreshEra(p)}else Z.current=!0},[p]),L.update({[n.componentID]:{openPicker:g=>{e.disabled||ne.picker.launch({parent:g,sheetID:"PickerTips-"+n.componentID,restrict:a,min:r,max:m,defaultValue:n.dataValue,era:p,onValueUpdate:(b,A)=>{c(M=>k(l(l({},M),O.DataLeveling({restrict:a,value:b,era:A})),{eventType:"update",eventID:N()})),w(A)}})},resetEra:g=>{w(g),c(b=>k(l(l({},b),O.DataLeveling({restrict:a,value:"",era:p})),{eventType:"update",eventID:N()}))}}}),Q(()=>{let{index:g,active:b}=P;if(b){g=Math.max(g,0),g=Math.min(g,n.ranges.length-1);let{from:A,length:M}=n.ranges[g],J=pe("#"+e.id)[0];J&&J.setSelectionRange(A,A+M)}},[P]),oe(Se,{val_status:n,set_status:c,val_validate:T,states:e,children:[y(Re.Shallow,l({},le)),y(ke,{componentID:e.componentID,fontSize:e.fontSize,required:e.required,label:e.label,isActive:!0}),re.get().isTouchDevice?y(ie.Plain,k(l({"data-show-validation":z.isShowValidation(T,n,!!u),"data-component-id":n.componentID,"data-input-origin":n.componentID,"data-disabled":e.disabled,className:o,freeCSS:{textAlign:"left"}},_),{children:n.formatValue,onClick:g=>{let b=L.get(n.componentID);b&&b.openPicker(`[data-input-origin="${n.componentID}"]`),g.stopPropagation()}})):y(X,l({htmlTag:"input",type:"text",inputMode:"numeric","data-show-validation":z.isShowValidation(T,n,!!u),"data-input-origin":n.componentID,"data-disabled":e.disabled,value:n.formatValue,className:o,tabIndex:re.get().isTouchDevice?-1:0,onKeyDown:g=>{O.KeyDownEvent({restrict:a,event:g,val_era:p,val_status:n,set_status:c,val_focus:P,set_focus:U}),x&&x(g),i&&z.SubmitForm(g,h)},onKeyUp:g=>{g.key=="Tab"&&U(b=>k(l({},b),{active:!0}))},onClick:g=>{let b=g.target.selectionEnd,A=0;n.ranges.forEach((M,J)=>{let{from:te,length:se,region:me}=M;te<=b&&b<=te+(me||se)&&(A=J)}),U(M=>k(l({},M),{active:!0,index:A})),g.preventDefault()},onChange:()=>{}},_))]})},V={Origin:e=>{let t=l({fontSize:"inherit",width:1},e),[D]=W(e.componentID||N());if(t.componentID=D,G.is.nullish(t.rightIcon)){let a=(e.restrict||"").match(/clock/)?De:ve;t.rightIcon=y(be,{ssSphere:2,freeCSS:{pointerEvents:"all"},children:y(ie.Sub,{color:"cloud",border:"unset",ssSphere:2,fontColor:"theme",boxShadow:"0.normal",borderRadius:"3.tone.tertiary",flexCenter:!0,ssEffectsOnActive:"push",tabIndex:-1,id:"Picker-"+t.componentID,onClick:()=>{let d=L.get(t.componentID);d&&d.openPicker("#Picker-"+t.componentID)},children:y(de,{icon:a})})})}return y(Ie,{componentID:t.componentID,children:Ve,states:Te(t)})},Clock:e=>y(V.Origin,l({restrict:"clock",era:"clock"},e)),Date:e=>y(V.Origin,l({restrict:"date"},e)),Week:e=>y(V.Origin,l({restrict:"week"},e)),Month:e=>y(V.Origin,l({restrict:"month"},e)),Year:e=>y(V.Origin,l({restrict:"year"},e)),DateWareki:e=>{e=l({},e);let[t]=W(e.componentID||N());e.componentID=t;let{defaultEra:D="wareki"}=e,[a,d]=W((()=>{let f="year";if(D=="wareki"&&(f="reiwa",e.value)){let[h,v,r]=e.value.split(/\D/);if(h&&v&&r){let m=Number(h);m>=2019?(m-=2019,f="reiwa"):m>=1989?(m-=1989,f="heisei"):m>=1926?(m-=1926,f="shouwa"):m>=1912?(m-=1912,f="taisho"):m>=1868&&(m-=1868,f="meiji"),m+=1}}return f})());return Q(()=>{L.set({["refreshEra_"+t]:{refreshEra:f=>{d(f)}}})},[]),y(V.Origin,k(l({restrict:"dateWareki",leftIndicator:y(xe,{label:"\u5143\u53F7",emptySelect:!1,value:a,tone:e.tone||"border",override:"force",flexCenter:!0,borderTopRightRadius:"2/3",borderBottomRightRadius:"2/3",height:1,freeCSS:{whiteSpace:"nowrap"},options:[{value:"year",label:"\u897F\u66A6"},{value:"reiwa",label:"\u4EE4\u548C"},{value:"heisei",label:"\u5E73\u6210"},{value:"shouwa",label:"\u662D\u548C"},{value:"taisho",label:"\u5927\u6B63"},{value:"meiji",label:"\u660E\u6CBB"}],onUpdateValidValue:f=>{d(f);let h=L.get(e.componentID);h&&h.resetEra&&h.resetEra(f)}})},e),{era:a}))},Periods:{Date:e=>y(V.Origin,l({restrict:"dates"},e)),Month:e=>y(V.Origin,l({restrict:"months"},e))},fn:ne};export{V as Time,V as default};
1
+ import{a as ae,b as l,c as k,d as q}from"../../../chunk-C5N2D3ZX.js";import{Fragment as _e,jsx as y,jsxs as oe}from"react/jsx-runtime";import G,{UUID as N,useStore as L}from"jmini";import*as K from"jmini";import{useState as W,useEffect as Q,useRef as ce}from"react";import{$$fromRoot as pe,Config as re,ExtractStyles as de}from"../../../@utils";import{Box as X,FAI as ue}from"../../../atoms";import{Literal as fe,Row as he}from"../../../mols";import{Button as ie}from"../../Button";import ge from"../../Tooltips";import ye from"../../Sheet";import{faClock as ve}from"@fortawesome/free-solid-svg-icons/faClock";import{faCalendarAlt as Ie}from"@fortawesome/free-solid-svg-icons/faCalendarAlt";import{OptionalInputWrapper as Se,BoxWrapper as Te,CoreEffects as z,DefaultBoxishStyles as De}from"../core";import{RightIcon as be}from"..";import xe from"../Select";import{InputLabel as ke}from"../Label";import Ee from"./Picker";const F=" ~ ",we={clock:{defaultValue:"--:--",format:/^\d{2}\D\d{2}$/,ranges:[{type:"hour",from:0,length:2},{type:"minute",from:3,length:2}],sets:1},date:{defaultValue:"----/--/--",format:/^\d{4}\D\d{2}\D\d{2}$/,ranges:[{type:"year",from:0,length:4},{type:"month",from:5,length:2},{type:"date",from:8,length:2}],sets:1},week:{defaultValue:"----\u5E74\u7B2C--\u9031",format:/^\d{4}\D\d{2}$/,ranges:[{type:"year",from:0,length:4,region:6},{type:"week",from:6,length:2,region:3}],sets:1},month:{defaultValue:"----\u5E74--\u6708",format:/^\d{4}\D\d{2}$/,ranges:[{type:"year",from:0,length:4},{type:"month",from:5,length:2,region:3}],sets:1},year:{defaultValue:"----\u5E74",format:/^\d{4}$/,ranges:[{type:"year",from:0,length:4,region:5}],sets:1},dates:{defaultValue:"----/--/--",format:/^\d{4}\D\d{2}\D\d{2}$/,ranges:[{type:"year",from:0,length:4},{type:"month",from:5,length:2},{type:"date",from:8,length:2,region:5},{type:"year",from:10+F.length,length:4},{type:"month",from:15+F.length,length:2},{type:"date",from:18+F.length,length:2}],sets:2},months:{defaultValue:"----\u5E74--\u6708",format:/^\d{4}\D\d{2}$/,ranges:[{type:"year",from:0,length:4},{type:"month",from:5,length:2,region:6},{type:"year",from:8+F.length,length:4},{type:"month",from:13+F.length,length:2,region:3}],sets:2},dateWareki:{defaultValue:"----\u5E74--\u6708--\u65E5",format:/^\d{4}\D\d{2}\D\d{2}$/,ranges:[{type:"dateWareki",from:0,length:4,region:5},{type:"month",from:5,length:2,region:3},{type:"date",from:8,length:2,region:3}],sets:1}},O={PeriodMargin:" ~ ",DataLeveling:e=>{let{restrict:t,value:v,era:a}=e,u=G.flatArray(v||""),{defaultValue:f,format:h,ranges:I,sets:r}=we[t],m=[],o=t=="clock"&&":"||"/";for(let i=0;i<u.length;i++)u[i]=String(u[i]).replace(/\D/ig,o);for(let i=0;i<r;i++){let d=u[i]||"";if(!d.match(h))u[i]="",m.push(f);else{let x=f;d.split(/\D/).forEach((E,R)=>{if(R==0&&t=="dateWareki"){let T=Number(E);a!="year"&&(T>=2019?a=="reiwa"?T-=2018:a=="heisei"&&(T=31):T>=1989?a=="heisei"?T-=1988:a=="shouwa"&&(T=64):T>=1926?a=="shouwa"?T-=1925:a=="taisho"&&(T=15):T>=1912?a=="taisho"?T-=1911:a=="meiji"&&(T=45):T>=1868&&(T-=1867)),E=T.zeroEmbed(4)}x=x.replace(new RegExp("------------------".slice(0,E.length)),E)}),m.push(x)}}return{formatValue:m.join(F),dataValue:["dates","months"].includes(t)?u:u[0],ranges:I}},SystemValidation:e=>{let{states:t}=e,{restrict:v,min:a,max:u,required:f}=t,h=[],I=G.flatArray(e.value),r={empty:!1,escalated:1,filled:!0,correct:!0,prohibited:!1};(()=>{let m=v=="clock"&&":"||"/";for(let o=0;o<I.length;o++)I[o]=String(I[o]).replace(/\D/ig,m);for(let o=0;o<I.length;o++){let i=I[o],d=I[o-1];i.removeLetters()||(r.empty=!0),o>0&&(r.escalated&=+(i>=d))}r.escalated&&(r.empty||(v.match(/clock/)?I.forEach(o=>{let[i,d]=o.split(/\D+/);!i||!d?r.filled=!1:(Number(i)>23||Number(d)>59)&&(r.correct=!1)}):v.match(/date/)?I.forEach(o=>{let[i,d,x]=o.split(/\D+/);if(!i||!d||!x)r.filled=!1;else{let E=K.Time(o);(!E.validate||o!=E.toFormatYMD())&&(r.correct=!1)}}):v.match(/week/)?I.forEach(o=>{let[i,d]=o.split(/\D+/);if(!i||!d)r.filled=!1;else{let x=K.Time(i+"/01/01").weekday,R=K.Time(i+"/01/0"+(7-x+1)).addWeek(Number(d)-1);i!=String(R.year)&&(r.correct=!1)}}):v.match(/month/)?I.forEach(o=>{let[i,d]=o.split(/\D+/);!i||!d?r.filled=!1:K.Time([i,d,"01"].join("/")).validate||(r.correct=!1)}):v.match(/year/),r.filled&&r.correct&&I.forEach(o=>{{let i=Number(String(o).replace(/\D/ig,""));if(a&&Number(String(a).replace(/\D/ig,""))>i&&(r.prohibited=!0),u){let d=Number(String(u).replace(/\D/ig,""));i>d&&(r.prohibited=!0)}}})))})();{let{empty:m,escalated:o,filled:i,correct:d,prohibited:x}=r;m&&f&&(h=[{type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"}]),o||h.push({type:"invalid",label:"\u6642\u7CFB\u5217\u3092\u6B63\u3057\u304F\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"}),d||h.push({type:"invalid",label:"\u7121\u52B9\u306A\u5024\u304C\u5165\u529B\u3055\u308C\u3066\u3044\u307E\u3059"}),i||h.push({type:"invalid",label:"\u6700\u5F8C\u307E\u3067\u5024\u3092\u57CB\u3081\u3066\u304F\u3060\u3055\u3044"}),x&&h.push({type:"invalid",label:oe(_e,{children:[y(X,{children:"\u5165\u529B\u7BC4\u56F2\u304C\u5236\u9650\u3055\u308C\u3066\u3044\u307E\u3059"}),"[",a||"\u4E0B\u9650\u7121\u3057","] ~ [",u||"\u4E0A\u9650\u7121\u3057","]"]})})}return{ok:!h.filter(({type:m})=>m=="invalid").length,notice:h}},KeyDownEvent:e=>{let{val_era:t,restrict:v,event:a,val_status:u,set_status:f,val_focus:h,set_focus:I}=e,{key:r,shiftKey:m,ctrlKey:o,metaKey:i}=a,d=o||i,{selectionStart:x,selectionEnd:E}=a.target,{index:R,prevIndex:T}=h,{ranges:$,formatValue:H}=u,C=$.length-1;if(["Tab","ArrowLeft","ArrowRight"].includes(r)){let S=0;if(r=="Tab"){let s=+!m*2-1;if(S=h.index+s,S<0||S>C)return}else{let s=r=="ArrowLeft"?-1:r=="ArrowRight"?1:0;d||x==0&&E==String(u.formatValue).length?S=s==1?C:0:S=Math.max(0,Math.min(R+s,C))}I(s=>k(l({},s),{index:S,prevIndex:R})),a.preventDefault()}if(["Backspace","ArrowUp","ArrowDown","0","1","2","3","4","5","6","7","8","9"].includes(r)){a.preventDefault();let S=R;S=Math.max(S,0),S=Math.min(S,C);let{type:s,from:U,length:Y}=$[S],_=H.slice(U,U+Y),p;if(r=="Backspace")p="------".slice(0,Y);else if(["ArrowUp","ArrowDown"].includes(r)){let w=r=="ArrowUp"?1:-1;_=_|0,p=_+w;let[n,c,D]=s=="dateWareki"?t=="year"?[0,2999,4]:t=="reiwa"?[1,2999,4]:t=="heisei"?[1,31,4]:t=="shouwa"?[1,64,4]:t=="taisho"?[1,15,4]:t=="meiji"?[1,45,4]:[0,0,0]:s=="minute"?[0,59,2]:s=="hour"?[0,23,2]:s=="date"?[1,31,2]:s=="week"?[1,53,2]:s=="month"?[1,12,2]:s=="year"?[0,2999,4]:[0,0,0];p>c?p=n:p<n&&(p=c),p=Number(p).zeroEmbed(D)}else if(["0","1","2","3","4","5","6","7","8","9"].includes(r)){let w=_|0,n=r,c=`${w}${n}`;if(T!=R&&(w=0,c="0"+n),s=="year"||s=="dateWareki"&&t=="year")Number(c)>1e4?p=n:p=c,(p|0)>1e3&&S++;else if(["hour","minute","date","week","month"].includes(s)||s=="dateWareki"&&t!="year"){let D=s=="dateWareki"?t=="reiwa"?100:t=="heisei"?31:t=="shouwa"?64:t=="taisho"?15:t=="meiji"?45:0:s=="minute"?59:s=="hour"?23:s=="date"?31:s=="week"?53:s=="month"?12:0;p=(c|0)>D?n:c,(Number(n)>Number(String(D)[0])||_=="0000".slice(0,String(D).length)&&(c!="0000".slice(0,String(D).length)||["minute","hour"].includes(s)&&T==R)||(c|0)>=ae(10,String(D).length-1))&&S++}s=="year"||s=="dateWareki"?p=(p|0).zeroEmbed(4):p=(p|0).zeroEmbed(2)}{let w=String(H).partReplace(U,String(p)),n=w.split(F).map(c=>c.replace(/(^\D|\D$)/,"").split(/\D+/).join(v=="clock"&&":"||"/").replace(/(^\D|\D$)/,""));if(v=="dateWareki"){let c=n[0].split(/\D/),[D,j,P]=c;c.length==3&&D&&(n=[[Number(D)-1+Number({year:1,reiwa:2019,heisei:1989,shouwa:1926,taisho:1912,meiji:1868}[t]),j,P].join("/")])}S=Math.max(S,0),S=Math.min(S,C),f(c=>k(l({},c),{dataValue:["dates","months"].includes(v)?n:n[0],formatValue:w,eventType:"update",eventID:N()})),I(c=>k(l({},c),{index:S,prevIndex:c.index}))}}}},ne={picker:{launch:e=>{let t=e.sheetID||N(),m=e,{onValueUpdate:v,min:a,max:u,era:f,restrict:h,defaultValue:I}=m,r=q(m,["onValueUpdate","min","max","era","restrict","defaultValue"]);ye.open("middleCenter",k(l({sheetID:t,size:"S",padding:0,closeAtAroundClick:!0,closeAtParentBlur:!1},r),{content:y(he.Center,{children:y(Ee,{restrict:h,min:a,max:u,era:f,defaultValue:I,sheetID:t,onValueUpdate:(o,i)=>{v(o,i)}})})}))},remove:e=>{ge.close(e)}}},Re={Shallow:e=>{let{rootStates:t,val_status:v}=e,a=de(t);return y(X,{position:"absolute",top:0,left:0,right:0,height:0,overflow:"hidden",opacity:"trans",freeCSS:{zIndex:3,pointerEvents:"none"},children:y(fe.Description,k(l({className:t.className},a),{position:"absolute",width:1,freeCSS:k(l({},a.freeCSS),{color:"orange"}),children:y(X,{"data-input-value-shallow":v.componentId,children:"A"})}))})}},Ve=e=>{let ee=e,{tone:t,required:v,restrict:a="clock",componentId:u,era:f,form:h,name:I,min:r,max:m,className:o,enableFormSubmit:i,checkValidationAtFirst:d,onKeyDown:x,onValidate:E,onUpdateValue:R,onUpdateValidValue:T,value:$="",leftIndicator:H,rightIndicator:C,leftIcon:S,rightIcon:s,freeCSS:U,wrapStyles:Y}=ee,_=q(ee,["tone","required","restrict","componentId","era","form","name","min","max","className","enableFormSubmit","checkValidationAtFirst","onKeyDown","onValidate","onUpdateValue","onUpdateValidValue","value","leftIndicator","rightIndicator","leftIcon","rightIcon","freeCSS","wrapStyles"]),[p,w]=W(f),[n,c]=W(k(l({componentId:e.componentId||""},O.DataLeveling({restrict:a,value:$,era:p})),{eventType:"init",eventID:N()})),[D,j]=W({ok:!1,notice:[]}),[P,B]=W({active:!1,index:0,prevIndex:-1}),le={rootStates:e,val_status:n,set_status:c,val_validate:D,set_validate:j,val_era:p,set_era:w,val_focus:P,set_focus:B};z.CommonEffects({type:"time",states:e,val_status:n,set_status:c,val_validate:D,set_validate:j,SystemValidation:O.SystemValidation,ExtraOverrideStates:l({},O.DataLeveling({restrict:a,value:$,era:p}))});const Z=ce(!1);return Q(()=>{if(Z.current){c(b=>l(l({},b),O.DataLeveling({restrict:a,value:b.dataValue,era:p})));let g=L.get("refreshEra_"+n.componentId);g&&g.refreshEra(p)}else Z.current=!0},[p]),L.update({[n.componentId]:{openPicker:g=>{e.disabled||ne.picker.launch({parent:g,sheetID:"PickerTips-"+n.componentId,restrict:a,min:r,max:m,defaultValue:n.dataValue,era:p,onValueUpdate:(b,A)=>{c(M=>k(l(l({},M),O.DataLeveling({restrict:a,value:b,era:A})),{eventType:"update",eventID:N()})),w(A)}})},resetEra:g=>{w(g),c(b=>k(l(l({},b),O.DataLeveling({restrict:a,value:"",era:p})),{eventType:"update",eventID:N()}))}}}),Q(()=>{let{index:g,active:b}=P;if(b){g=Math.max(g,0),g=Math.min(g,n.ranges.length-1);let{from:A,length:M}=n.ranges[g],J=pe("#"+e.id)[0];J&&J.setSelectionRange(A,A+M)}},[P]),oe(Te,{val_status:n,set_status:c,val_validate:D,states:e,children:[y(Re.Shallow,l({},le)),y(ke,{componentId:e.componentId,fontSize:e.fontSize,required:e.required,label:e.label,isActive:!0}),re.get().isTouchDevice?y(ie.Plain,k(l({"data-show-validation":z.isShowValidation(D,n,!!d),"data-component-id":n.componentId,"data-input-origin":n.componentId,"data-disabled":e.disabled,className:o,freeCSS:{textAlign:"left"}},_),{children:n.formatValue,onClick:g=>{let b=L.get(n.componentId);b&&b.openPicker(`[data-input-origin="${n.componentId}"]`),g.stopPropagation()}})):y(X,l({htmlTag:"input",type:"text",inputMode:"numeric","data-show-validation":z.isShowValidation(D,n,!!d),"data-input-origin":n.componentId,"data-disabled":e.disabled,value:n.formatValue,className:o,tabIndex:re.get().isTouchDevice?-1:0,onKeyDown:g=>{O.KeyDownEvent({restrict:a,event:g,val_era:p,val_status:n,set_status:c,val_focus:P,set_focus:B}),x&&x(g),i&&z.SubmitForm(g,h)},onKeyUp:g=>{g.key=="Tab"&&B(b=>k(l({},b),{active:!0}))},onClick:g=>{let b=g.target.selectionEnd,A=0;n.ranges.forEach((M,J)=>{let{from:te,length:se,region:me}=M;te<=b&&b<=te+(me||se)&&(A=J)}),B(M=>k(l({},M),{active:!0,index:A})),g.preventDefault()},onChange:()=>{}},_))]})},V={Origin:e=>{let t=l({fontSize:"inherit",width:1},e),[v]=W(e.componentId||N());if(t.componentId=v,G.is.nullish(t.rightIcon)){let a=(e.restrict||"").match(/clock/)?ve:Ie;t.rightIcon=y(be,{ssSphere:2,freeCSS:{pointerEvents:"all"},children:y(ie.Sub,{color:"cloud",border:"unset",ssSphere:2,fontColor:"theme",boxShadow:"0.normal",borderRadius:"3.tone.tertiary",flexCenter:!0,ssEffectsOnActive:"push",tabIndex:-1,id:"Picker-"+t.componentId,onClick:()=>{let u=L.get(t.componentId);u&&u.openPicker("#Picker-"+t.componentId)},children:y(ue,{icon:a})})})}return y(Se,{componentId:t.componentId,children:Ve,states:De(t)})},Clock:e=>y(V.Origin,l({restrict:"clock",era:"clock"},e)),Date:e=>y(V.Origin,l({restrict:"date"},e)),Week:e=>y(V.Origin,l({restrict:"week"},e)),Month:e=>y(V.Origin,l({restrict:"month"},e)),Year:e=>y(V.Origin,l({restrict:"year"},e)),DateWareki:e=>{e=l({},e);let[t]=W(e.componentId||N());e.componentId=t;let{defaultEra:v="wareki"}=e,[a,u]=W((()=>{let f="year";if(v=="wareki"&&(f="reiwa",e.value)){let[h,I,r]=e.value.split(/\D/);if(h&&I&&r){let m=Number(h);m>=2019?(m-=2019,f="reiwa"):m>=1989?(m-=1989,f="heisei"):m>=1926?(m-=1926,f="shouwa"):m>=1912?(m-=1912,f="taisho"):m>=1868&&(m-=1868,f="meiji"),m+=1}}return f})());return Q(()=>{L.set({["refreshEra_"+t]:{refreshEra:f=>{u(f)}}})},[]),y(V.Origin,k(l({restrict:"dateWareki",leftIndicator:y(xe,{label:"\u5143\u53F7",emptySelect:!1,value:a,tone:e.tone||"border",override:"force",flexCenter:!0,borderTopRightRadius:"2/3",borderBottomRightRadius:"2/3",height:1,freeCSS:{whiteSpace:"nowrap"},options:[{value:"year",label:"\u897F\u66A6"},{value:"reiwa",label:"\u4EE4\u548C"},{value:"heisei",label:"\u5E73\u6210"},{value:"shouwa",label:"\u662D\u548C"},{value:"taisho",label:"\u5927\u6B63"},{value:"meiji",label:"\u660E\u6CBB"}],onUpdateValidValue:f=>{u(f);let h=L.get(e.componentId);h&&h.resetEra&&h.resetEra(f)}})},e),{era:a}))},Periods:{Date:e=>y(V.Origin,l({restrict:"dates"},e)),Month:e=>y(V.Origin,l({restrict:"months"},e))},fn:ne};export{V as Time,V as default};
@@ -4,7 +4,7 @@ import { KeyValueDict } from 'jmini';
4
4
  import { InputTypes } from '.';
5
5
  declare namespace OptionalInputWrapper {
6
6
  type Input = {
7
- componentID?: string;
7
+ componentId?: string;
8
8
  children: React.FC<any>;
9
9
  states: any;
10
10
  };
@@ -21,7 +21,7 @@ declare namespace BoxWrapper {
21
21
  }
22
22
  export declare const BoxWrapper: React.FC<BoxWrapper.Input>;
23
23
  export declare const CoreEffects: {
24
- DefaultStatus: (componentID: string, value: any) => InputTypes.Status.Plain<any>;
24
+ DefaultStatus: (componentId: string, value: any) => InputTypes.Status.Plain<any>;
25
25
  CommonEffects: <T = KeyValueDict<any>>(props: {
26
26
  type: InputTypes.Type;
27
27
  states: KeyValueDict;
@@ -1 +1 @@
1
- import{b as o,c as d,e as b}from"../../chunk-C5N2D3ZX.js";import{jsx as p,jsxs as T}from"react/jsx-runtime";import{useState as x,useEffect as g}from"react";import c,{UUID as y,useStore as v}from"jmini";import{$$fromRoot as k,Config as B}from"../../@utils";import{InputClasses as _}from"../../@styles/componentClasses";import{Box as E,Flex as w,FAI as R,Column as N}from"../../atoms";import{Row as D,Literal as F}from"../../mols";import{Button as L}from"../Button";import h from"../Tooltips";const et=t=>{let[n]=x(t.componentID||y());t=o({},t),t.states=d(o({enableFormSubmit:!0,status_id:y(),override:"never",form:"",id:y(),"aria-label":"Input-"+n},t.states),{componentID:n});let{children:e}=t;return p(e,o({},t.states))},at=t=>{let{children:n,val_status:e,val_validate:a,states:i}=t,{leftIcon:l,wrapStyles:s}=i;return e.eventType=="init"&&!i.checkValidationAtFirst&&(a.notice=[]),T(D.Center,d(o({position:"relative",verticalAlign:"unset",gap:0},s),{className:_("Wrapper"),"data-notice-uid":e.componentID,children:[p(C.Notice,{notice:a.notice,val_status:e}),i.leftIndicator,T(w,{position:"relative",flexSizing:"auto",children:[n,l,p(C.RightIcon,o({},t)),p(C.ClearButton,o({},t))]}),i.rightIndicator]}))},C={ClearButton:t=>!t.states.clearButton||!t.val_status.dataValue?null:p(L.Normal,{ssSphere:2,flexCenter:!0,fontColor:"5.translucent",ssEffectsOnActive:["ripple.theme"],position:"absolute",right:1,top:"50%",freeCSS:{zIndex:3,transform:"translateY(-50%)"},onClick:()=>{t.set_status(n=>d(o({},n),{dataValue:"",formatValue:"",eventType:"update",eventID:y()}))},children:p(R.Times,{})}),RightIcon:t=>t.states.clearButton&&t.val_status.dataValue?null:t.states.rightIcon,Notice:t=>{let{notice:n,val_status:e}=t,{componentID:a}=e,i="NoticeTimer-"+a,l="NoticeTimerClose-"+a,s="notice-tips-"+a;return g(()=>{c.interval.once(()=>{if(!n.length){h.close(s);return}h.open({tipsID:s,parent:`[data-notice-uid="${a}"]`,gravityPoint:22,padding:[1,0],closeAtParentBlur:!1,content:T(h.Body,{padding:["1/2","2/3"],fontSize:"1.mini",position:"relative",children:[p(E,{position:"absolute",unitHeight:1,unitWidth:1,left:1,backgroundColor:"dark",freeCSS:{zIndex:1,transform:"rotate(45deg)",top:-6}}),p(N,{backgroundColor:"inherit",gap:"1/3",position:"relative",freeCSS:{zIndex:2},children:n.map((I,S)=>{let{type:r,label:u}=I,f=r=="invalid"?R.Times:r=="warn"?R.Exclamation:R.Check;return T(D.Left,{gap:0,borderRadius:"2.tone.secondary",children:[p(f,{flexCenter:!0,fontSize:"2.normal",fontColor:{invalid:"nega",warn:"warn",valid:"posi"}[r]}),p(F.Supplement,{fontSize:"0.xs",fontColor:"white",children:u})]},S+"-"+c.Stringify(I))})})]})})},350,i),c.interval.once(()=>{h.close(s)},6e3,l)},[n]),null}},W={DefaultStatus:(t,n)=>({componentID:t,dataValue:n,eventType:"init",eventID:y()}),CommonEffects:function(t){let{type:n,states:e,val_status:a,set_status:i,val_validate:l,set_validate:s,SystemValidation:I}=t;e=o({},e);let{componentID:S}=a;g(()=>(v.update({[S]:{ResolveRefresh:null,Refresh:()=>new Promise((r,u)=>{v.get(S).ResolveRefresh=r,i(f=>d(o({},f),{eventType:"refresh",eventID:y()}))}),GenNotice:r=>{let{ok:u,notice:f}=r;s({ok:u,notice:f})}}}),()=>{v.delete(S)}),[]),c.scope(()=>{let{override:r}=e;if(r=="never"||r=="beforeModified"&&!["init","override"].includes(a.eventType))return;let u=v.get(a.componentID);u&&(e.value!=a.dataValue&&e.status_id!=u.status_id&&i(f=>d(o(d(o({},f),{dataValue:e.value}),t.ExtraOverrideStates),{eventType:"override",eventID:y()})),u.status_id=e.status_id)}),g(()=>{W.ValidationCheck({val_status:a,set_validate:s,SystemValidation:I,states:e})},[a.eventID,a.dataValue]),g(()=>(c.scope(()=>{let{componentID:r,eventType:u,dataValue:f}=a,m=f;if(n=="autocomplete.single"||n=="list.radio"?m=m[0]:e.isChecker&&(m=!!m[0]),e.form=e.form||"testForm",e.name&&e.form&&v.update({[["form-data",e.form].join("-")]:{[e.name]:{componentID:r,type:n,value:m,validation:l.ok}}}),u=="refresh"){let V=v.get(r);V&&V.ResolveRefresh&&V.ResolveRefresh(null)}else u=="update"&&(e.onUpdateValue&&e.onUpdateValue(m,u,r),c.scope(()=>{l.ok&&e.onUpdateValidValue&&e.onUpdateValidValue(m,u,r)}))}),()=>{v.update({[["form-data",e.form].join("-")]:{[e.name]:null}})}),[l])},ValidationCheck:t=>{let{states:n}=t,e="ValidationTimer-"+t.val_status.componentID;c.interval.abort(e);let a=t.SystemValidation({value:t.val_status.dataValue,states:n});if(!a.ok){t.set_validate(a);return}let i=a.notice;const l=()=>b(void 0,null,function*(){if(!n.onValidate)return;let s=yield n.onValidate(t.val_status.dataValue,t.val_status.eventType,t);t.set_validate({ok:s.ok,notice:[...i,...s.notice]})});if(n.onValidate){if(t.val_status.eventType=="refresh"){l();return}c.interval.once(l,450,e);return}t.set_validate({ok:!0,notice:i})},SubmitForm:(t,n)=>{let e=!1;if(!n)return e;let a=k(`[data-form-submit-button="${n}"]`)[0];if(!a)return e;let i=a.dataset.sdfike||"",l=t.key,s=t.ctrlKey||t.metaKey;return c.scope(()=>{i.includes("enter")&&(l!="Enter"||t.nativeEvent.isComposing||B.get().browserIs=="safari"&&t.keyCode==229)||((l=="Enter"&&(i.includes("enter")||i.includes("auxEnter")&&s)||l==" "&&i.includes("space"))&&(a.click(),t.preventDefault()),e=!0)}),e},isShowValidation:(t,n,e)=>{let a=t.ok;return!e&&n.eventType=="init"&&(a=!0),a}},nt=function(t){t=o({tone:"border"},t);let n=c.scope(()=>{if(t.tone=="plain")return{};let a={padding:"3/4",transition:"middle",flexSizing:"auto",boxShadow:"0.min"};return t.tone=="border"?a=d(o({},a),{border:!0,borderRadius:"2.tone.secondary",backgroundColor:"layer.1"}):t.tone=="cloud"?a=d(o({},a),{border:"1.thin",borderRadius:"2.tone.secondary",backgroundColor:"cloud"}):t.tone=="bottomBorder"&&(a=d(o({},a),{borderRadius:0,border:"unset",borderBottom:!0,backgroundColor:"cloud"})),a});return d(o(o(o(o(o(o({fontColor:"2.normal"},n),!!t.rightIcon&&{paddingRight:3}),!!t.leftIcon&&{paddingLeft:3}),!!t.leftIndicator&&{borderTopLeftRadius:"2/3",borderBottomLeftRadius:"2/3",marginLeft:"1/4"}),!!t.rightIndicator&&{borderTopRightRadius:"2/3",borderBottomRightRadius:"2/3",marginRight:"1/4"}),t),{freeCSS:o({letterSpacing:"1px",resize:"none"},t.freeCSS),className:[_("Input"),t.className].join(" ")})};export{at as BoxWrapper,W as CoreEffects,nt as DefaultBoxishStyles,et as OptionalInputWrapper};
1
+ import{b as o,c as d,e as b}from"../../chunk-C5N2D3ZX.js";import{jsx as p,jsxs as V}from"react/jsx-runtime";import{useState as k,useEffect as g}from"react";import c,{UUID as y,useStore as v}from"jmini";import{$$fromRoot as B,Config as D}from"../../@utils";import{InputClasses as _}from"../../@styles/componentClasses";import{Box as E,Flex as w,FAI as R,Column as N}from"../../atoms";import{Row as x,Literal as F}from"../../mols";import{Button as L}from"../Button";import h from"../Tooltips";const et=t=>{let[n]=k(t.componentId||y());t=o({},t),t.states=d(o({enableFormSubmit:!0,status_id:y(),override:"never",form:"",id:y(),"aria-label":"Input-"+n},t.states),{componentId:n});let{children:e}=t;return p(e,o({},t.states))},at=t=>{let{children:n,val_status:e,val_validate:a,states:i}=t,{leftIcon:l,wrapStyles:s}=i;return e.eventType=="init"&&!i.checkValidationAtFirst&&(a.notice=[]),V(x.Center,d(o({position:"relative",verticalAlign:"unset",gap:0},s),{className:_("Wrapper"),"data-notice-uid":e.componentId,children:[p(C.Notice,{notice:a.notice,val_status:e}),i.leftIndicator,V(w,{position:"relative",flexSizing:"auto",children:[n,l,p(C.RightIcon,o({},t)),p(C.ClearButton,o({},t))]}),i.rightIndicator]}))},C={ClearButton:t=>!t.states.clearButton||!t.val_status.dataValue?null:p(L.Normal,{ssSphere:2,flexCenter:!0,fontColor:"5.translucent",ssEffectsOnActive:["ripple.theme"],position:"absolute",right:1,top:"50%",freeCSS:{zIndex:3,transform:"translateY(-50%)"},onClick:()=>{t.set_status(n=>d(o({},n),{dataValue:"",formatValue:"",eventType:"update",eventID:y()}))},children:p(R.X,{})}),RightIcon:t=>t.states.clearButton&&t.val_status.dataValue?null:t.states.rightIcon,Notice:t=>{let{notice:n,val_status:e}=t,{componentId:a}=e,i="NoticeTimer-"+a,l="NoticeTimerClose-"+a,s="notice-tips-"+a;return g(()=>{c.interval.once(()=>{if(!n.length){h.close(s);return}h.open({tipsID:s,parent:`[data-notice-uid="${a}"]`,gravityPoint:22,padding:[1,0],closeAtParentBlur:!1,content:V(h.Body,{padding:["1/2","2/3"],fontSize:"1.mini",position:"relative",children:[p(E,{position:"absolute",unitHeight:1,unitWidth:1,left:1,backgroundColor:"dark",freeCSS:{zIndex:1,transform:"rotate(45deg)",top:-6}}),p(N,{backgroundColor:"inherit",gap:"1/3",position:"relative",freeCSS:{zIndex:2},children:n.map((I,S)=>{let{type:r,label:u}=I,f=r=="invalid"?R.X:r=="warn"?R.Exclamation:R.Check;return V(x.Left,{gap:0,borderRadius:"2.tone.secondary",children:[p(f,{flexCenter:!0,fontSize:"2.normal",fontColor:{invalid:"nega",warn:"warn",valid:"posi"}[r]}),p(F.Supplement,{fontSize:"0.xs",fontColor:"white",children:u})]},S+"-"+c.Stringify(I))})})]})})},350,i),c.interval.once(()=>{h.close(s)},6e3,l)},[n]),null}},W={DefaultStatus:(t,n)=>({componentId:t,dataValue:n,eventType:"init",eventID:y()}),CommonEffects:function(t){let{type:n,states:e,val_status:a,set_status:i,val_validate:l,set_validate:s,SystemValidation:I}=t;e=o({},e);let{componentId:S}=a;g(()=>(v.update({[S]:{ResolveRefresh:null,Refresh:()=>new Promise((r,u)=>{v.get(S).ResolveRefresh=r,i(f=>d(o({},f),{eventType:"refresh",eventID:y()}))}),GenNotice:r=>{let{ok:u,notice:f}=r;s({ok:u,notice:f})}}}),()=>{v.delete(S)}),[]),c.scope(()=>{let{override:r}=e;if(r=="never"||r=="beforeModified"&&!["init","override"].includes(a.eventType))return;let u=v.get(a.componentId);u&&(e.value!=a.dataValue&&e.status_id!=u.status_id&&i(f=>d(o(d(o({},f),{dataValue:e.value}),t.ExtraOverrideStates),{eventType:"override",eventID:y()})),u.status_id=e.status_id)}),g(()=>{W.ValidationCheck({val_status:a,set_validate:s,SystemValidation:I,states:e})},[a.eventID,a.dataValue]),g(()=>(c.scope(()=>{let{componentId:r,eventType:u,dataValue:f}=a,m=f;if(n=="autocomplete.single"||n=="list.radio"?m=m[0]:e.isChecker&&(m=!!m[0]),e.form=e.form||"testForm",e.name&&e.form&&v.update({[["form-data",e.form].join("-")]:{[e.name]:{componentId:r,type:n,value:m,validation:l.ok}}}),u=="refresh"){let T=v.get(r);T&&T.ResolveRefresh&&T.ResolveRefresh(null)}else u=="update"&&(e.onUpdateValue&&e.onUpdateValue(m,u,r),c.scope(()=>{l.ok&&e.onUpdateValidValue&&e.onUpdateValidValue(m,u,r)}))}),()=>{v.update({[["form-data",e.form].join("-")]:{[e.name]:null}})}),[l])},ValidationCheck:t=>{let{states:n}=t,e="ValidationTimer-"+t.val_status.componentId;c.interval.abort(e);let a=t.SystemValidation({value:t.val_status.dataValue,states:n});if(!a.ok){t.set_validate(a);return}let i=a.notice;const l=()=>b(void 0,null,function*(){if(!n.onValidate)return;let s=yield n.onValidate(t.val_status.dataValue,t.val_status.eventType,t);t.set_validate({ok:s.ok,notice:[...i,...s.notice]})});if(n.onValidate){if(t.val_status.eventType=="refresh"){l();return}c.interval.once(l,450,e);return}t.set_validate({ok:!0,notice:i})},SubmitForm:(t,n)=>{let e=!1;if(!n)return e;let a=B(`[data-form-submit-button="${n}"]`)[0];if(!a)return e;let i=a.dataset.sdfike||"",l=t.key,s=t.ctrlKey||t.metaKey;return c.scope(()=>{i.includes("enter")&&(l!="Enter"||t.nativeEvent.isComposing||D.get().browserIs=="safari"&&t.keyCode==229)||((l=="Enter"&&(i.includes("enter")||i.includes("auxEnter")&&s)||l==" "&&i.includes("space"))&&(a.click(),t.preventDefault()),e=!0)}),e},isShowValidation:(t,n,e)=>{let a=t.ok;return!e&&n.eventType=="init"&&(a=!0),a}},nt=function(t){t=o({tone:"border"},t);let n=c.scope(()=>{if(t.tone=="plain")return{};let a={padding:"3/4",transition:"middle",flexSizing:"auto",boxShadow:"0.min"};return t.tone=="border"?a=d(o({},a),{border:!0,borderRadius:"2.tone.secondary",backgroundColor:"layer.1"}):t.tone=="cloud"?a=d(o({},a),{border:"1.thin",borderRadius:"2.tone.secondary",backgroundColor:"cloud"}):t.tone=="bottomBorder"&&(a=d(o({},a),{borderRadius:0,border:"unset",borderBottom:!0,backgroundColor:"cloud"})),a});return d(o(o(o(o(o(o({fontColor:"2.normal"},n),!!t.rightIcon&&{paddingRight:3}),!!t.leftIcon&&{paddingLeft:3}),!!t.leftIndicator&&{borderTopLeftRadius:"2/3",borderBottomLeftRadius:"2/3",marginLeft:"1/4"}),!!t.rightIndicator&&{borderTopRightRadius:"2/3",borderBottomRightRadius:"2/3",marginRight:"1/4"}),t),{freeCSS:o({letterSpacing:"1px",resize:"none"},t.freeCSS),className:[_("Input"),t.className].join(" ")})};export{at as BoxWrapper,W as CoreEffects,nt as DefaultBoxishStyles,et as OptionalInputWrapper};
@@ -3,13 +3,13 @@ import { ReactElement, StyleTags } from '../../@declares';
3
3
  export declare namespace InputTypes {
4
4
  type BoxTone = 'border' | 'cloud' | 'bottomBorder' | 'plain';
5
5
  type Type = 'hidden' | 'textfield' | 'textfield.multiline' | 'select' | 'list.radio' | 'list.checkbox' | 'autocomplete.single' | 'autocomplete.multi' | 'time' | 'switch' | 'slider' | 'file' | 'contenteditable' | 'color' | '';
6
- type OnUpdateValue<T = any> = (value: T, eventType: Validation.EventType, componentID: string) => void;
6
+ type OnUpdateValue<T = any> = (value: T, eventType: Validation.EventType, componentId: string) => void;
7
7
  type UniInput<T = any> = {
8
8
  'data-type'?: T;
9
9
  name?: string;
10
10
  form?: string;
11
11
  status_id?: string;
12
- componentID?: string;
12
+ componentId?: string;
13
13
  override?: 'force' | 'beforeModified' | 'never';
14
14
  required?: boolean;
15
15
  enableFormSubmit?: boolean;
@@ -40,7 +40,7 @@ export declare namespace InputTypes {
40
40
  }
41
41
  namespace Status {
42
42
  type Plain<T = any> = {
43
- componentID: string;
43
+ componentId: string;
44
44
  dataValue: T;
45
45
  eventType: Validation.EventType;
46
46
  eventID: string;
@@ -1 +1 @@
1
- import{b as f,c as d,d as h}from"../../chunk-C5N2D3ZX.js";import{jsx as s,jsxs as x}from"react/jsx-runtime";import{UUID as y,useStore as L}from"jmini";import{$$fromRoot as z}from"../../@utils";import{useState as l,useEffect as g}from"react";import{LoaderClasses as e}from"../../@styles/componentClasses";import{Row as I}from"../../mols";const R=w=>{let n=w,{color:S="theme",size:t="R",showInitial:c=!1,loaderID:C=""}=n,u=h(n,["color","size","showInitial","loaderID"]),[m]=l(C),[i]=l(y()),[v,a]=l(c),o=0;t=="S"?o=1:t=="R"?o=1.5:t=="L"?o=3:t=="XL"?o=4:t=="MAX"&&(o=6);let p={theme:"hsl( var( --color-theme-hsl ) )",posi:"var( --color-positive )",nega:"var( --color-negative )",warn:"var( --color-warning )",cloud:"hsl( var( --color-layer5-hsl ) )",white:"white"}[S];return g(()=>{let r=z('[data-component-id="'+i+'"]');v?r.removeClass(e("Hide")).await(10).addClass(e("Active")):r.removeClass(e("Active")).await(210).addClass(e("Hide"))},[v]),g(()=>{L.set({[i]:{active:r=>{m==r&&a(!0)},stop:r=>{m==r&&a(!1)},stopForce:()=>{a(!1)}}})},[]),x(I.Center,d(f({className:[e("MiniLoader"),e(c?"Active":"Hide")].join(" "),componentID:i,ssSphere:o,position:"relative"},u),{children:[s("svg",{className:e("SVG1"),width:"100",height:"100",viewBox:"0 0 100 100",style:{stroke:p},children:s("circle",{cx:"50",cy:"50",r:"40"})}),s("svg",{className:e("SVG2"),width:"100",height:"100",viewBox:"0 0 100 100",style:{stroke:p},children:s("circle",{cx:"50",cy:"50",r:"40"})})]}))};export{R as Mini};
1
+ import{b as d,c as f,d as h}from"../../chunk-C5N2D3ZX.js";import{jsx as s,jsxs as x}from"react/jsx-runtime";import{UUID as y,useStore as L}from"jmini";import{$$fromRoot as z}from"../../@utils";import{useState as l,useEffect as g}from"react";import{LoaderClasses as e}from"../../@styles/componentClasses";import{Row as I}from"../../mols";const R=w=>{let p=w,{color:S="theme",size:t="R",showInitial:c=!1,loaderID:C=""}=p,u=h(p,["color","size","showInitial","loaderID"]),[m]=l(C),[i]=l(y()),[v,a]=l(c),o=0;t=="S"?o=1:t=="R"?o=1.5:t=="L"?o=3:t=="XL"?o=4:t=="MAX"&&(o=6);let n={theme:"hsl( var( --color-theme-hsl ) )",posi:"var( --color-positive )",nega:"var( --color-negative )",warn:"var( --color-warning )",cloud:"hsl( var( --color-layer5-hsl ) )",white:"white"}[S];return g(()=>{let r=z('[data-component-id="'+i+'"]');v?r.removeClass(e("Hide")).await(10).addClass(e("Active")):r.removeClass(e("Active")).await(210).addClass(e("Hide"))},[v]),g(()=>{L.set({[i]:{active:r=>{m==r&&a(!0)},stop:r=>{m==r&&a(!1)},stopForce:()=>{a(!1)}}})},[]),x(I.Center,f(d({className:[e("MiniLoader"),e(c?"Active":"Hide")].join(" "),componentId:i,ssSphere:o,position:"relative"},u),{children:[s("svg",{className:e("SVG1"),width:"100",height:"100",viewBox:"0 0 100 100",style:{stroke:n},children:s("circle",{cx:"50",cy:"50",r:"40"})}),s("svg",{className:e("SVG2"),width:"100",height:"100",viewBox:"0 0 100 100",style:{stroke:n},children:s("circle",{cx:"50",cy:"50",r:"40"})})]}))};export{R as Mini};
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 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};
1
+ import{b as g,c as w,d as H}from"../chunk-C5N2D3ZX.js";import{jsx as h,jsxs as V}from"react/jsx-runtime";import c,{UUID as Z,Time as le,useStore as A}from"jmini";import{useState as L,useEffect as G,useRef as pe}from"react";import{$$fromRoot as K,Config as X}from"../@utils";import{Box as E,Flex as ue,Img as ie,FAI as ae,Column as oe}from"../atoms";import{Row as re}from"../mols";import{Button as ne}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-"+X.get().sessionUID);return t||null},getNewSheetStates:t=>{var a;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||Z(),isOpen:!0,created_at:le()});if(e.type=="custom"){let l=e;l.parent=l.parent||((a=l==null?void 0:l.event)==null?void 0:a.currentTarget),e=l}return e}},j={Wrapper:()=>{let[t,e]=L([]),a={val_sheets:t,set_sheets:e},l="sessionStates-"+X.get().sessionUID;return A.set({[l]:a}),G(()=>{let f="Sheet-"+X.get().sessionUID;A.set({[f]:{add:(s,n)=>{let i=A.get(f);if(!i)return;let o=T.getNewSheetStates(s);if(T.openQueue[o.sheetID])return;if(T.openQueue[o.sheetID]=!0,n!="inherit"&&(o.isOpen=n!=null?n:!0),!!i.find(o.sheetID)){e(C=>{let I=[...C],x=I.findIndex(N=>N.sheetID==o.sheetID);return x==-1||(I[x]=o),I}),delete T.openQueue[o.sheetID];return}e(C=>[o,...C])},find:s=>{let n=T.getSessionStates();if(!n)return null;let{val_sheets:i}=n;return i.find(o=>o.sheetID==s)}}}),c(X.get().appRoot).addEvent({eventType:"keyup",eventID:"SheetEvent.keyUp",callback:function(s){let{key:n,metaKey:i}=s;if(n=="Escape"||n==","&&i){let o=T.getSessionStates();if(!o)return;let{val_sheets:y}=o,C=y.filter(x=>x.isOpen);if(!C.length)return;let I=C.reduce((x,N)=>x.created_at.value>N.created_at.value?x:N);R.close(I.sheetID,n)}}}).addEvent({eventType:"click",eventID:"SheetEvent.Click",callback:function(s){let n=T.getSessionStates();if(!n)return;let{val_sheets:i}=n,o=s.target;if(!o||o!=null&&o.closest("."+m("CustomSheet")))return;let y=i.filter(C=>C.type=="custom");y.length&&y.forEach(C=>{let{parent:I}=C;if(!C.closeAtAroundClick)return;let x=K(I)[0];I!==o&&x!==o&&(c(x).find(o).length||R.close(C.sheetID))})}})},[]),h(E,{className:["AMOTIFY_be",m("Wrapper")].join(" "),children:t.map(f=>h(j.Core,w(g({},a),{val_sheet:f,patch_sheet:s=>{e(n=>{let i=[...n],o=i.findIndex(y=>y.sheetID==f.sheetID);return o==-1||(i[o]=g(g({},i[o]),s)),i})},delete_sheet:()=>{e(s=>{let n=[...s],i=n.findIndex(o=>o.sheetID==f.sheetID);return i==-1||n.splice(i,1),n})}}),f.sheetID))})},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:a}=t,[l,f]=L(T.currentIndex+2),[s]=L(Z()),n=e.type!="custom"&&!e.overwrap;G(()=>{T.currentIndex++,c.scope(()=>{if(!e.closeAtParentBlur)return;let o=c(e.parent);o[0]&&o.addEvent({eventID:"SheetClosation-"+e.sheetID,eventType:"mouseout",callback:()=>{o.removeEvent("SheetClosation-"+e.sheetID),a({isOpen:!1})}})}),A.set({[e.sheetID]:{resize:o=>{if(e.type=="drawer.bottom"){let y=A.get(s);y&&y.resize&&y.resize(o)}else(e.type.includes("normal")||e.type.includes("drawer"))&&a({size:o})},close:o=>{a({isOpen:!1})},open:()=>{a({isOpen:!0})}}})},[]),G(()=>{c.scope(()=>{let o=K("#"+s);if(e.isOpen){e.hold_state&&f(T.currentIndex+1),o.await(10).removeClass(m("Hide")).await(10).addClass(m("Open")).callback(()=>{delete T.openQueue[e.sheetID],e.openAfter&&e.openAfter()});return}o.await(10).removeClass(m("Open")).await(251).addClass(m("Hide")).callback(()=>{if(e.closeAfter&&e.closeAfter(),n&&X.get().browserIs!="safari"&&c(X.get().appRoot).focus(),e.hold_state)return a({isOpen:!1});t.delete_sheet()})})},[e.isOpen]);let i=j.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 h(E,{className:[m("Wrap"),m("Tcate_"+j.sheetCategory(e.type)),m("Tpos_"+j.sheetPosition(e.type)),m("isMainSheet_"+n)].join(" "),width:1,ssAbsoluteCovered:!0,freeCSS:{zIndex:l},id:s,children:V(oe,{className:m("Content"),gap:0,height:"viewHeight",overflow:"auto",transition:"middle",children:[!!n&&h(j.TapSensor,{sheetID:e.sheetID,delegateAroundClick:e.closeAtAroundClick}),h(i,g({componentId:s},e))]})},s)},Types:{Normal:t=>{let k=t,{sheetID:e,sheetGroups:a,bodyScrolls:l,content:f,className:s="",type:n,size:i="R",freeCSS:o,openAfter:y,closeAfter:C,closeAtAroundClick:I,closeAtEscapeKeyDown:x,closeAtPageTransit:N,closeAtParentBlur:J,closeAtSwipeDown:Y,hold_state:q,overwrap:ee,isOpen:te,backgroundEffect:U}=k,M=H(k,["sheetID","sheetGroups","bodyScrolls","content","className","type","size","freeCSS","openAfter","closeAfter","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]),D={},v=[];return n.match(/top/)?(v.push("top"),D.marginBottom="auto"):n.match(/middle/)?(v.push("center"),D.marginTop="auto",D.marginBottom="auto"):n.match(/bottom/)&&(v.push("bottom"),D.marginTop="auto"),n.match(/left/i)?(v.push("left"),D.marginRight="auto"):n.match(/center/i)?(v.push("center"),D.marginLeft="auto",D.marginRight="auto"):n.match(/right/i)&&(v.push("right"),D.marginLeft="auto"),h(E,w(g(g({className:[m("BB"),s].join(" "),padding:1,transition:"long",opacity:"trans"},M),D),{freeCSS:g({width:{S:"26rem",R:"36rem",L:"44rem","2L":"60rem","3L":"72rem",MAX:"100%"}[i],maxWidth:"96vw",transformOrigin:v.join(" ")},o),children:c.is.function(f)?h(f,{}):f}))},Edge:t=>{let M=t,{sheetID:e,sheetGroups:a,bodyScrolls:l,type:f,content:s,className:n="",size:i="R",openAfter:o,closeAfter:y,closeAtAroundClick:C,closeAtEscapeKeyDown:I,closeAtPageTransit:x,closeAtParentBlur:N,closeAtSwipeDown:J,hold_state:Y,overwrap:q,isOpen:ee,backgroundEffect:te}=M,U=H(M,["sheetID","sheetGroups","bodyScrolls","type","content","className","size","openAfter","closeAfter","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]);return h(E,w(g(w(g({className:[m("BB"),n].join(" ")},f=="drawer.right"?{marginLeft:"auto"}:f=="drawer.left"?{marginRight:"auto"}:{}),{opacity:"trans",transition:"long",position:"relative",backgroundColor:"layer.1",flexSizing:"none",minHeight:"viewHeight",boxShadow:"3.remark"}),U),{freeCSS:g({width:{S:"20rem",R:"27rem",L:"32rem","2L":"40rem","3L":"58rem",MAX:"100vw"}[i],maxWidth:"96vw"},U.freeCSS),children:c.is.function(s)?h(s,{}):s}))},Bottom:t=>{let F=t,{componentId:e,sheetID:a,sheetGroups:l,bodyScrolls:f,content:s,size:n="R",sizeChanged:i,baseStyles:o,openAfter:y,closeAfter:C,closeAtAroundClick:I,closeAtEscapeKeyDown:x,closeAtPageTransit:N,closeAtParentBlur:J,closeAtSwipeDown:Y=!0,hold_state:q,overwrap:ee,isOpen:te,backgroundEffect:U}=F,M=H(F,["componentId","sheetID","sheetGroups","bodyScrolls","content","size","sizeChanged","baseStyles","openAfter","closeAfter","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]),D=c.getScreenSize(),v=[0,.2,.6,.95],k={ZERO:0,S:1,R:2,L:3,"2L":3,"3L":3,MAX:3},[W,$]=L(n),[b,_]=L({process:!1,processStart:0,originY:0,originValue:0,viewHeight:0,value:v[k[n]]});A.update({[e]:{val_edit:b,resize:S=>{let d=v[k[S]];_(u=>w(g({},u),{value:d})),$(S)}}});const B={Start:S=>{c(document).addEvent({eventID:"BottomSheetMouseMove",eventType:"mousemove",callback:B.Move,options:{passive:!1}}).addEvent({eventID:"BottomSheetTouchMove",eventType:"touchmove",callback:B.Move,options:{passive:!1}}).addEvent({eventID:"BottomSheetMouseUp",eventType:"mouseup",callback:B.End}).addEvent({eventID:"BottomSheetTouchEnd",eventType:"touchend",callback:B.End});let d=c.getCursor(S),u=w(g({},b),{process:!0,processStart:new Date().getTime(),originY:d.y,originValue:b.value,viewHeight:c.getScreenSize().height});A.update({[e]:{val_edit:u}}),_(u)},Move:S=>{var O;let d=(O=A.get(e))==null?void 0:O.val_edit;if(!d.process)return;let z=(c.getCursor(S).y-d.originY)/d.viewHeight,r=d.originValue-z;if(r>.95)r=.95+(r-.95)*.5;else if(r<.2){let P=.2-r;P-=.1,r=.1+(.1-P)*.5}return _(w(g({},d),{value:r})),S.preventDefault(),S.stopPropagation(),!1},End:S=>{var r;let d=(r=A.get(e))==null?void 0:r.val_edit;if(!d.process)return;c(document).removeEvent(["BottomSheetMouseMove","BottomSheetTouchMove","BottomSheetMouseUp","BottomSheetTouchEnd"]);let u=0;if(d.value<.1||(d.value<.5?u=1:d.value>.75?u=3:u=2),new Date().getTime()-d.processStart<300){let O=c.getCursor(S).y-d.originY;if(Math.abs(O)>=20){let P=+(O<0)*2-1;u+=P,u=Math.min(Math.max(u,0),v.length-1)}}u==0&&(Y||(u=1)),$(["ZERO","S","R","L"][u]),_(w(g({},d),{value:v[u],process:!1}))}},Q=pe(!1);return G(()=>{Q.current?W=="ZERO"?Y&&R.close(a):setTimeout(()=>{t.sizeChanged&&t.sizeChanged(W)},250):Q.current=!0},[W]),h(E,{className:m("BB"),margin:[0,"auto"],marginTop:"auto",opacity:"trans",width:1,transition:"long",freeCSS:g({maxWidth:12*60,height:D.height*b.value},b.process?{transition:"0s"}:{}),children:V(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},o),{children:[V(re.Separate,{padding:1,backgroundColor:"layer.1",position:"relative",freeCSS:{userSelect:"none"},children:[h(E,{ssSphere:2.5}),h(re.Center,{onPointerDown:B.Start,flexSizing:0,padding:"2/3",ssPushable:!0,isRounded:!0,freeCSS:{cursor:"grab",userSelect:"none"},children:h(E,{unitWidth:6,unitHeight:"1/2",backgroundColor:"layer.4",isRounded:!0,className:m("DragBar")})}),h(ne.Sub,{color:"cloud",ssSphere:2.5,onClick:()=>{R.close(a)},children:h(ae.X,{})})]}),h(E,w(g({backgroundColor:"layer.1",flexSizing:0,overflow:"auto"},M),{children:c.is.function(s)?h(s,{}):s}))]}))})},Custom:t=>{let F=t,{sheetID:e,sheetGroups:a,bodyScrolls:l,event:f,parent:s,nextToCursor:n,gravityPoint:i=22,content:o,closeAtAroundClick:y,closeAtEscapeKeyDown:C,closeAtPageTransit:I,closeAtParentBlur:x,closeAtSwipeDown:N,hold_state:J,openAfter:Y,closeAfter:q,overwrap:ee,isOpen:te,resize:U,backgroundEffect:M}=F,D=H(F,["sheetID","sheetGroups","bodyScrolls","event","parent","nextToCursor","gravityPoint","content","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","openAfter","closeAfter","overwrap","isOpen","resize","backgroundEffect"]),[v]=L(Z()),k=c.is.element(s)||c.is.jmini(s)?c(s):K(s),W='[data-sheet-id="'+v+'"]',$='[data-sheet-content="'+v+'"]';i=i;let b=i%5||5,_=Math.ceil(i/5);const B={Init:()=>{if(n&&f){let p=c.getScreenSize(),se=c.getCursor(f);return{top:se.y-p.pageYOffset,left:se.x-p.pageXOffset}}let S={};if(!k||!k[0])return S;let{top:d,right:u,bottom:z,left:r,height:O,width:P}=k.position();return[1,2].includes(b)?S.left=r:b==3?S.left=r+P/2:[4,5].includes(b)&&(S.left=u),i<=10?S.top=d:i<=15?S.top=d+O/2:i<=25&&(S.top=z),S},Adjust:()=>{let S=K(W).position(),d=K($).position(),u=k.position(),z=c.getScreenSize(),r={};for(let p in d)r[p]=d[p];if(c.scope(()=>{if(t.nextToCursor)return;let p=0;_==1?p=u.top-r.bottom:_==2?p=u.top-r.top:_==3?p=u.top-r.top+(u.height-r.height)/2:_==4?p=u.bottom-r.bottom:_==5&&(p=u.bottom-r.top),r.top+=p,r.bottom+=p}),c.scope(()=>{if(t.nextToCursor)return;let p=0;b==1?p=u.left-r.right:b==2?p=u.left-r.left:b==3?p=u.left-r.left+(u.width-r.width)/2:b==4?p=u.right-r.right:b==5&&(p=u.right-r.left),r.left+=p,r.right+=p}),r.top<0){let p=-r.top;r.top+=p,r.bottom+=p}if(r.bottom>z.height){let p=r.bottom-z.height;r.top-=p,r.bottom-=p}if(r.left<0){let p=-r.left;r.left+=p,r.right+=p}if(r.right>z.width){let p=r.right-z.width;r.left-=p,r.right-=p}let O=r.top-d.top,P=r.left-d.left;c(W).css({top:S.top+O+"px",left:S.left+P+"px"})}};let[Q]=L(B.Init());return G(()=>{K(W).await(10).addClass(m("Open")).await(200).callback(()=>{(U==null||U)&&B.Adjust()}),A.update({["customSheet-"+t.sheetID]:{reposition:()=>{B.Adjust()}}})},[]),k[0]?h(E,{className:[m("BB"),m("CustomSheet")].join(" "),"data-sheet-id":v,transition:"long",position:"absolute",width:0,height:0,opacity:"trans",flexCenter:!0,freeCSS:Q,children:h(ue,{position:"absolute",className:[m("GPT"),m("GPT_"+i),m("Col_"+b),m("Row_"+_)].join(" "),children:h(E,w(g({"data-sheet-content":v,flexSizing:"none",maxHeight:"viewHeight"},D),{freeCSS:g({maxWidth:"98vw"},D.freeCSS),children:c.is.function(o)?h(o,{}):o}))})}):null}},TapSensor:t=>h(E,{className:m("TapSensor"),children:h(ne.Plain,{className:m("TapContent"),onClick:e=>{var a;(a=t.delegateAroundClick)!=null&&a&&R.close(t.sheetID)},freeCSS:{cursor:"default",pointerEvents:"all"}})})},R={Wrapper:()=>h(j.Wrapper,{}),Element:t=>{let f=t,{isOpen:e,children:a}=f,l=H(f,["isOpen","children"]);return G(()=>{if(e){R.open(t.type,w(g({},l),{content:a}));return}l.sheetID&&R.close(l.sheetID)},[e]),null},image:(t,e)=>{let a=t.sheetID||Z(),s=t,{type:l}=s,f=H(s,["type"]);R.open(l||"topCenter",w(g({size:"MAX",backgroundColor:"trans",height:"viewHeight"},f),{sheetID:a,freeCSS:{maxWidth:"96vw",transformOrigin:"top"},content:()=>{let[n]=L(c.flatArray(e)),[i,o]=L(0),y=[];return n.forEach((C,I)=>{y.push({value:I,label:h(ie,{src:c.flatArray(C)[0],width:"auto",height:1,borderRadius:"3.tone.tertiary",freeCSS:{maxWidth:12*6,maxHeight:12*3}})})}),V(oe,{gap:0,height:1,position:"relative",children:[V(re.Separate,{position:"absolute",top:0,left:0,right:0,padding:[1,2],freeCSS:{zIndex:2},children:[h(he.Radio,{icon:!1,value:i,override:"force",horizontalAlign:"center",onUpdateValidValue:C=>{o(C)},cellStyles:{border:!0,borderWidth:2,padding:"1/3",paddingRight:"1/3",boxShadow:"2.normal",gap:0},cellCheckedStyles:{borderColor:"theme"},options:y}),h(ne.Sub.S,{color:"cloud",ssSphere:3,onClick:()=>{R.close(a)},children:h(ae.X,{})})]}),h(ce.FadeIn,{flexCenter:!0,flexSizing:0,overflow:"auto",children:h(ie,{width:"auto",height:"auto",maxWidth:1,maxHeight:1,src:n[i]})},i)]})}}))},open:(t,e,a)=>{e.sheetID=(e.sheetID||"").replace(/\./g,"-"),e.type=t;let l=A.get("Sheet-"+X.get().sessionUID);l&&l.add(e,a)},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,a){let l=T.getSessionStates();if(!l)return;let{val_sheets:f}=l;t=t==null?void 0:t.replace(/\./g,"-");let s=f.find(i=>i.sheetID==t);if(!s||e=="Escape"&&!s.closeAtEscapeKeyDown)return;let n=A.get(s.sheetID);n&&n.close&&n.close(a)},closeGroup:t=>{let e=T.getSessionStates();if(!e)return;let{val_sheets:a}=e;t=(t||"").replace(/\./g,"-");for(let l of a)l.sheetGroups&&l.sheetGroups==t&&R.close(l.sheetID)},closeAll:t=>{let e=T.getSessionStates();if(!e)return;let{val_sheets:a}=e;for(let l of a)t&&!l.closeAtPageTransit||R.close(l.sheetID,"pageTransit",!0)},Body:t=>h(E,g({className:m("BaseBody"),backgroundColor:"layer.1",borderRadius:"1.tone.primary",position:"relative",boxShadow:"3.remark",transition:"long"},t))};export{R as Sheet,R 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 l}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 B,FAI as E}from"../atoms";import{Row as F}from"../mols";import{Button as T}from"./Button";import{SnackbarClasses as h}from"../@styles/componentClasses";const u={add:function(o){let t=l.get("Snackbar-"+I.get().sessionUID);return t&&t.add(o),this},remove:function(o){let t=l.get("Snackbar-"+I.get().sessionUID);return t&&t.remove(o),this},removeALL:function(){let o=l.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),[i,c]=g(o.secondsToClose||10);b(()=>{let v=w('[data-component-id="'+n+'"]');setTimeout(()=>{v.addClass(h("FadeIn"))},10),l.set({["Snackbar-"+t]:{remove:()=>{v.addClass(h("FadeOut"))}}})},[]),b(()=>{x.interval.once(()=>{i<=0||c(i-1)},1e3,"Snackbar-"+n),i===0&&u.remove(t)},[i]);let S=a(_,{});return e?S=a(e,{close:()=>{u.remove(t)}}):S=y(F.Separate,{verticalAlign:"top",children:[a(A,{padding:["1/4",0],flexSizing:0,children:x.is.function(d)?a(d,{}):d}),a(T.Clear,{color:"layer",backgroundColor:"layer.4.opa.low",fontColor:"white",ssSphere:2.5,onClick:()=>{u.remove(t)},children:a(E.Times,{})})]}),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(()=>{l.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=l.get("Snackbar-"+e);s&&s.remove&&(s.remove(),setTimeout(()=>{let n=r.findIndex(c=>c.snackID==e);if(n==-1)return;let i=[...r];i.splice(n,1),f(i)},210))},removeALL:()=>{f([])}}})},[r.length]);let d=r.map(e=>M(L.Cell,p(m({},e),{key:e.snackID})));return a(B,{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 y,jsx as a,jsxs as M}from"react/jsx-runtime";import{createElement as T}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 B,FAI as E}from"../atoms";import{Row as F}from"../mols";import{Button as _}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(y,{});return e?S=a(e,{close:()=>{u.remove(t)}}):S=M(F.Separate,{verticalAlign:"top",children:[a(A,{padding:["1/4",0],flexSizing:0,children:x.is.function(d)?a(d,{}):d}),a(_.Clear,{color:"layer",backgroundColor:"layer.4.opa.low",fontColor:"white",ssSphere:2.5,onClick:()=>{u.remove(t)},children:a(E.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=>T(L.Cell,p(m({},e),{key:e.snackID})));return a(B,{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};
@@ -52,7 +52,7 @@ declare namespace Data {
52
52
  type Order = [number, 'ASC' | 'DESC'];
53
53
  type Options = {
54
54
  tableID: string;
55
- componentID: string;
55
+ componentId: string;
56
56
  colLength: number;
57
57
  checker: boolean;
58
58
  searchKeyword: string;