amotify 0.2.249 → 0.2.251

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.
@@ -1,6 +1,8 @@
1
- /// <reference types="react" />
2
1
  export * from './Box';
2
+ import React from 'react';
3
+ import { ReactElement } from 'src/@declares';
3
4
  import Box from './Box';
5
+ import { KeyValueDict } from 'jmini';
4
6
  /**
5
7
  * Span
6
8
  */
@@ -31,7 +33,19 @@ declare namespace Column {
31
33
  type Input = Flex.Input;
32
34
  }
33
35
  declare const Column: React.FC<Column.Input>;
34
- export { Span, P, Flex, FlexBr, FlexMargin, Column };
36
+ /**
37
+ *
38
+ */
39
+ declare namespace CacheRender {
40
+ type Props<T> = {
41
+ params: T;
42
+ children: ReactElement;
43
+ propsAreEqual?: (prev: Readonly<T>, next: Readonly<T>) => boolean;
44
+ };
45
+ type Component<T> = (props: Props<T>) => React.ReactElement | null;
46
+ }
47
+ declare const CacheRender: CacheRender.Component<KeyValueDict<any>>;
48
+ export { Span, P, Flex, FlexBr, FlexMargin, Column, CacheRender };
35
49
  export * from './FAI';
36
50
  export * from './Img';
37
51
  export * from './Logo';
@@ -1 +1 @@
1
- import{b as t,c as n}from"../chunk-C5N2D3ZX.js";import{jsx as p}from"react/jsx-runtime";export*from"./Box";import o from"./Box";const a=e=>p(o,n(t({},e),{htmlTag:"span"})),x=e=>p(o,n(t({},e),{htmlTag:"p"})),r=e=>p(o,n(t({flexType:"row",flexWrap:!0,display:"flex"},e),{freeCSS:t({wordBreak:"break-word"},e.freeCSS)})),l=e=>p(o,t({width:1,flexSizing:"none"},e)),u=e=>p(o,t({flexSizing:0},e)),f=e=>p(r,t({flexType:"col",gap:1},e));export*from"./FAI";export*from"./Img";export*from"./Logo";export*from"./Placeholder";export*from"./Card";export*from"./Grid";export{f as Column,r as Flex,l as FlexBr,u as FlexMargin,x as P,a as Span};
1
+ import{b as t,c as r}from"../chunk-C5N2D3ZX.js";import{jsx as p}from"react/jsx-runtime";export*from"./Box";import l from"react";import o from"./Box";const m=e=>p(o,r(t({},e),{htmlTag:"span"})),x=e=>p(o,r(t({},e),{htmlTag:"p"})),n=e=>p(o,r(t({flexType:"row",flexWrap:!0,display:"flex"},e),{freeCSS:t({wordBreak:"break-word"},e.freeCSS)})),c=e=>p(o,t({width:1,flexSizing:"none"},e)),u=e=>p(o,t({flexSizing:0},e)),s=e=>p(n,t({flexType:"col",gap:1},e)),f=l.memo(e=>e.children,(e,a)=>e.propsAreEqual?e.propsAreEqual(e.params,a.params):!1);export*from"./FAI";export*from"./Img";export*from"./Logo";export*from"./Placeholder";export*from"./Card";export*from"./Grid";export{f as CacheRender,s as Column,n as Flex,c as FlexBr,u as FlexMargin,x as P,m as Span};
@@ -1 +1 @@
1
- import{b as f,c as g,d as Y,e as Z}from"../../chunk-C5N2D3ZX.js";import{Fragment as H,jsx as l,jsxs as A}from"react/jsx-runtime";import{useState as b,useEffect as F,useRef as re}from"react";import c,{UUID as C}from"jmini";import{ExtractStyles as se}from"../../@utils";import{Box as E,Span as ue,FAI as N,Column as ee}from"../../atoms";import{Literal as U,Row as P}from"../../mols";import{Button as te}from"../Button";import{Loader as ce}from"../Loader";import{Sheet as pe}from"../Sheet";import{OptionalInputWrapper as de,BoxWrapper as Se,CoreEffects as M,DefaultBoxishStyles as fe}from"./core";import{InputAutocompleteClasses as W}from"../../@styles/componentClasses";import{InputLabel as me}from"./Label";import{RightIcon as oe}from".";function ve(e){let{value:t,states:r}=e,{required:p,options:o,min:a,max:n}=r;a=a||0,n=n||65535;let d=[],s=t.filter(u=>u!==null).length;return p&&(s||d.push({type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"})),s<a&&d.push({type:"invalid",label:a+"\u500B\u4EE5\u4E0A\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044"}),s>n&&d.push({type:"invalid",label:n+"\u500B\u307E\u3067\u9078\u629E\u3067\u304D\u307E\u3059"}),{ok:!d.filter(({type:u})=>u=="invalid").length,notice:d}}const z={InitOptions:e=>{let t=[];return e.forEach(r=>{if(!r)return;let{type:p,label:o,value:a,searchValue:n}=r,d=n||c.is.string(o)&&o||""||c.is.string(a)&&a||c.Stringify(a||"")||"";c.is.nullish(o)&&(o=String(a)),t.push(g(f({id:C()},r),{searchValue:d,type:p||"selector",label:o,value:a}))}),t},FilterSelectableOptions:(e,t,r)=>{let p=e;return r||(p=e.filter(o=>(o==null?void 0:o.type)!="label")),c.scope(()=>{if(!t)return;let o=t.toLower().replace(/ /g,"");p=p.filter(a=>(a.searchValue||"").toLower().replace(/ /g,"").includes(o))}),p}},L={Shallow:e=>{let{rootStates:t,val_status:r}=e,p=se(t);return l(E,{position:"absolute",top:0,left:0,right:0,height:0,overflow:"hidden",opacity:"trans",freeCSS:{zIndex:3,pointerEvents:"none"},children:l(U.Description,g(f({className:t.className},p),{position:"absolute",width:1,freeCSS:g(f({},p.freeCSS),{color:"orange"}),"data-id":"shallow_"+r.componentId,children:l(E,{"data-input-value-shallow":r.componentId,children:"A"})}))})},Button:e=>{let{rootStates:t,val_keyword:r,set_keyword:p,val_optionFocused:o,set_optionFocused:a,val_preventOpenSelector:n,set_preventOpenSelector:d,val_openSelector:s,set_openSelector:u,val_status:i,set_status:S,val_activeInput:m,set_activeInput:y}=e,G=t,{tone:D,required:O,form:h,className:w,multiSelect:I,enableFormSubmit:x,checkValidationAtFirst:k,onValidate:q,onValidateDelay:j,onUpdateValue:K,onUpdateValidValue:X,onUserAction:$,value:J="",options:R,leftIndicator:B,rightIndicator:T,leftIcon:ye,rightIcon:_e,componentId:ge,status_id:he,wrapStyles:Ie,emptySelect:be,SearchInput:Ce,SearchInputPlaceholder:De,SelectedComponent:Oe,SelectorComponent:we,SelectorStyles:xe,SelectorPosition:ke,DynamicOptionsOnSearch:Re,DynamicOptionsOnSearchDelay:Te}=G,v=Y(G,["tone","required","form","className","multiSelect","enableFormSubmit","checkValidationAtFirst","onValidate","onValidateDelay","onUpdateValue","onUpdateValidValue","onUserAction","value","options","leftIndicator","rightIndicator","leftIcon","rightIcon","componentId","status_id","wrapStyles","emptySelect","SearchInput","SearchInputPlaceholder","SelectedComponent","SelectorComponent","SelectorStyles","SelectorPosition","DynamicOptionsOnSearch","DynamicOptionsOnSearchDelay"]);return F(()=>{var V;if(t.disabled||!s||c.is.exist(o))return;let _=z.FilterSelectableOptions(e.val_options,r,!1);a(((V=_[0])==null?void 0:V.id)||"")},[r]),F(()=>{if(i.eventType!="init"&&i.eventType!="override"){if(t.max==i.dataValue.length){u(!1),d(!0),p("");return}c("#SearchInput_"+t.componentId).focus()}},[i.dataValue]),F(()=>{let _="autocomplete-click-"+t.componentId;if(!s){c(document).removeEvent([_]);return}c('[data-input-origin="'+t.componentId+'"]')&&(c("#SearchInput_"+t.componentId).focus(),c(document).addEvent({eventID:_,eventType:"mousedown",callback:le=>{let Q=c(le.target),ne=!!c(Q).parent("."+W("Core")).length,ie=!!c(Q).parent("."+W("Selector")).length;ne||ie||(u(!1),y(!1))},options:{passive:!1}}))},[s]),A(H,{children:[l(E,g(f({tabIndex:0},v),{"data-disabled":t.disabled,"data-show-validation":M.isShowValidation(i,!!k),"data-component-id":i.componentId,"data-input-origin":i.componentId,"data-focus":!!s||!!m,className:[w,W("Core")].join(" "),onFocus:_=>{if(v!=null&&v.onFocus&&(v==null||v.onFocus(_)),!t.disabled){if(n)return d(!1);u(!0),y(!0),_.preventDefault()}},onCompositionStart:_=>{v!=null&&v.onCompositionStart&&(v==null||v.onCompositionStart(_))},onCompositionEnd:_=>{v!=null&&v.onCompositionEnd&&(v==null||v.onCompositionEnd(_))},onClick:_=>{v!=null&&v.onClick&&(v==null||v.onClick(_)),!t.disabled&&(u(!0),y(!0))},onKeyDown:_=>{let{key:V}=_;x&&M.SubmitForm(_,h),!s&&(V==" "||V=="ArrowDown"||V=="ArrowUp"||V=="Enter")&&(u(!0),y(!0))},children:A(P.Left,{gap:0,children:[l(ue,{width:0,overflow:"hidden",opacity:"trans",children:"A"}),A(P.Left,{flexWrap:!0,flexSizing:0,gap:"1/3",freeCSS:{letterSpacing:".5px"},children:[l(L.Selected,f({},e)),l(L.SearchInput,f({},e))]})]})})),s&&l(L.Selector,f({},e))]})},SearchInput:e=>{let{rootStates:t,val_status:r,set_status:p}=e;return t.disabled||!e.val_openSelector&&!e.val_activeInput?null:l(E,{htmlTag:"input",id:"SearchInput_"+t.componentId,placeholder:t.SearchInputPlaceholder||"\u691C\u7D22...",opacity:e.val_openSelector?"max":"middle",transition:"middle",flexSizing:0,fontSize:"inherit",border:"unset",backgroundColor:"trans",value:e.val_keyword,freeCSS:{outline:"none"},onFocus:o=>{p(a=>g(f({},a),{eventID:C(12),isFocusing:!0}))},onBlur:o=>{e.set_activeInput(!1),p(a=>g(f({},a),{eventID:C(12),isFocusing:!1}))},onCompositionStart:o=>{p(a=>g(f({},a),{eventID:C(12),isComposing:!0}))},onCompositionEnd:o=>{p(a=>g(f({},a),{eventID:C(12),isComposing:!1}))},onKeyDown:o=>{let{key:a,metaKey:n,ctrlKey:d}=o,s=n||d;a=="Tab"?(e.set_openSelector(!1),e.set_activeInput(!1),e.set_preventOpenSelector(!1)):a==" "?c.scope(()=>{e.val_openSelector||e.val_keyword||(o.preventDefault(),e.set_openSelector(!0))}):a=="Backspace"?c.scope(()=>{if(e.val_keyword)return;let u=[...e.val_status.dataValue];u.pop(),e.set_status(i=>g(f({},i),{dataValue:u,eventType:"update",eventID:C(12),isInspected:!1}))}):a=="Enter"&&c.scope(()=>{if(r.isComposing||(o==null?void 0:o.keyCode)===229)return;if(!e.val_openSelector)return e.set_openSelector(!0);if(!e.val_optionFocused)return;let u=e.val_options.find(S=>(S==null?void 0:S.id)==e.val_optionFocused);if(!u)return;let{value:i}=u;e.set_status(S=>{let m=[...S.dataValue];return c.scope(()=>{if(i===null)return m=[];S.dataValue.includes(i)?m=m.filter(D=>D!==i):t.multiSelect?m.push(i):m=[i]}),g(f({},S),{dataValue:m,eventType:"update",eventID:C(12),isInspected:!1})}),e.set_optionsModified(!0),e.set_keyword("")}),c.scope(()=>{if(!["ArrowDown","ArrowUp"].includes(a))return;if(o.preventDefault(),!e.val_openSelector)return e.set_openSelector(!0);let u=a=="ArrowDown"?1:-1,i=z.FilterSelectableOptions(e.val_options),S=i.length-1,m=null;c.scope(()=>{var D,O,h,w,I,x;let y=i.findIndex(k=>(k==null?void 0:k.id)==e.val_optionFocused);if(y==-1&&(y=0),u==1){if(m=(D=i[0])==null?void 0:D.id,s){m=(O=i[S])==null?void 0:O.id;return}if(y==-1||y==S)return;m=(h=i[y+1])==null?void 0:h.id}else{if(m=(w=i[S])==null?void 0:w.id,s){m=(I=i[0])==null?void 0:I.id;return}if(y==-1||y==0)return;m=(x=i[y-1])==null?void 0:x.id}}),e.set_optionFocused(m)}),t.enableFormSubmit&&M.SubmitForm(o,e.rootStates.form)},onChange:o=>{let n=o.target.value;e.set_openSelector(!0),e.set_keyword(n)}},"searchInput")},Selector:e=>{var d;let[t,r]=b("idle"),[p,o]=b("idle");F(()=>{if(!e.rootStates.DynamicOptionsOnSearch||!e.val_openSelector)return;if(e.val_optionsModified)return e.set_optionsModified(!1);if(e.val_status.isComposing)return;if(t=="idle")return r("ok");o("fetch");let s="autocomplete-search-"+e.rootStates.componentId;e.set_optionFocused(""),c.interval.once(()=>Z(void 0,null,function*(){var S;let u=yield e.rootStates.DynamicOptionsOnSearch(e.val_keyword);o("idle");let i=z.InitOptions(u||[]);e.set_options(i),e.set_optionFocused(((S=i[0])==null?void 0:S.id)||"")}),e.rootStates.DynamicOptionsOnSearchDelay||500,s)},[e.val_keyword,e.val_status.isComposing]),F(()=>{let s=c(`[data-selector-id="${e.val_status.componentId}"]`)[0];if(!s)return;let u=c(`[data-autocomplete-input-value="${e.val_optionFocused}"]`)[0];u&&(s.scrollTop=u.offsetTop-24)},[e.val_optionFocused]);let a=z.FilterSelectableOptions(e.val_options,e.rootStates.DynamicOptionsOnSearch?"":e.val_keyword,!0),n={};switch(e.rootStates.SelectorPosition){case 1:n.bottom="100%",n.left=0,n.paddingBottom="1/3";break;case 2:n.bottom="100%",n.right=0,n.paddingBottom="1/3";break;case 3:n.top="100%",n.left=0,n.paddingTop="1/3";break;case 4:n.top="100%",n.right=0,n.paddingTop="1/3";break;default:break}return l(E,g(f({position:"absolute"},n),{freeCSS:f({minWidth:"75%",zIndex:1e3},n.freeCSS),children:l(pe.Body,g(f({className:W("Selector"),borderRadius:"2.tone.secondary",ssCardBox:!0,boxShadow:"1.normal",overflow:"auto","data-selector-id":e.val_status.componentId},e.rootStates.SelectorStyles),{freeCSS:f({maxHeight:12*24},(d=e.rootStates.SelectorStyles)==null?void 0:d.freeCSS),children:A(ee,{gap:"1/12",padding:[1,0],children:[p=="fetch"&&l(P.Center,{padding:"1/2",children:l(ce.Theme.R,{showInitial:!0})}),p!="fetch"&&A(H,{children:[!a.length&&l(U.Supplement,{padding:[0,1],fontColor:"4.thin",children:"\u5019\u88DC\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093"}),a.map((s,u)=>{if(!s)return null;let{type:i,value:S}=s,m=e.val_optionFocused==s.id,y=e.val_status.dataValue.includes(S),D=e.rootStates.SelectorComponent;return l(ee,{"data-autocomplete-input-value":s.id,children:l(D,{option:s,isFocused:m,isSelected:y,addCallback:()=>{e.set_status(O=>{let h=[...O.dataValue];return c.scope(()=>{if(S===null)return h=[];O.dataValue.includes(S)?h=h.filter(I=>I!==S):e.rootStates.multiSelect?h.push(S):h=[S]}),g(f({},O),{dataValue:h,eventType:"update",eventID:C(12),isInspected:!1})})}})},s.id)})]})]})}))}))},Selected:e=>{let{rootStates:t,val_status:r,set_status:p,val_optionsDict:o}=e,a=[];return r.dataValue.forEach(n=>{let d=o[c.Stringify(n)];if(!d)return;let s=t.SelectedComponent,u=d.label;(d==null?void 0:d.value)===null&&(u=""),a.push(l(E,{className:W("SelectedCell"),children:l(s,{value:d==null?void 0:d.value,label:u,removeCallback:i=>{if(i.stopPropagation(),i.preventDefault(),t.disabled)return;let S=[...r.dataValue];S=S.filter(m=>m!==n),p(m=>g(f({},m),{dataValue:S,eventType:"update",eventID:C(12),isInspected:!1}))}})},c.Stringify(d==null?void 0:d.value)||C()))}),l(H,{children:a})},Core:e=>{var X,$,J;let{value:t}=e,[r,p]=b(!1),[o,a]=b(!1),[n,d]=b(!1),[s,u]=b(!1),[i,S]=b(""),[m,y]=b(e.options),[D,O]=b(((X=e.options.find(R=>{var B;return(R==null?void 0:R.value)===((B=e.value)==null?void 0:B[0])}))==null?void 0:X.id)||(($=e.options[0])==null?void 0:$.id)||""),[h,w]=b({}),[I,x]=b(M.DefaultStatus(e.componentId,t)),k=re(!1);F(()=>{o||(k.current?y(e.options):k.current=!0)},[c.Stringify((J=e.options)==null?void 0:J.map(R=>R.value))]),F(()=>{if(!m.length)return;let R=[...m],B=f({},h);R.forEach(T=>{(T==null?void 0:T.type)!="label"&&(B[c.Stringify(T==null?void 0:T.value)]=T)}),w(B)},[m]);let q={rootStates:e,val_options:m,set_options:y,val_optionFocused:D,set_optionFocused:O,val_optionsDict:h,set_optionsDict:w,val_optionsModified:o,set_optionsModified:a,val_preventOpenSelector:r,set_preventOpenSelector:p,val_openSelector:n,set_openSelector:d,val_activeInput:s,set_activeInput:u,val_keyword:i,set_keyword:S,val_status:I,set_status:x},j=!!e.multiSelect;M.CommonEffects({type:j?"autocomplete.multi":"autocomplete.single",states:e,val_status:I,set_status:x,SystemValidation:ve});let K=I.dataValue.length&&I.dataValue[0]!==null;return K=K||n||s,A(Se,{val_status:I,set_status:x,states:e,children:[l(me,{componentId:e.componentId,fontSize:e.fontSize,required:e.required,label:e.label,isActive:K}),l(L.Shallow,f({},q)),l(L.Button,f({},q))]})}},ae=e=>{let t=f({},e);return t=g(f({value:[],min:0,max:65535,multiSelect:!0,SearchInput:!0,emptySelect:!0,SelectorComponent:({option:r,isSelected:p,isFocused:o,addCallback:a})=>r?(r==null?void 0:r.type)=="label"?l(H,{children:r.label}):l(te.Sub.S,{color:"cloud",backgroundColor:"trans",borderRadius:0,fontColor:"2.normal",textAlign:"left",padding:["1/2",1.5],isActive:o,isActiveStyles:{backgroundColor:"cloud"},onClick:a,children:A(P.Left,{gap:"1/2",children:[p&&l(N.Check,{fontColor:"theme"}),l(U.Supplement,{transition:"short",children:r.label})]})}):null,SelectedComponent:({value:r,label:p,removeCallback:o})=>A(P.Left,{ssCardBox:"cloud",borderRadius:"2.tone.secondary",fontSize:"1.mini",padding:"1/2",gap:0,children:[l(E,{padding:[0,"1/4"],children:p}),l(te.Clear,{flexSizing:"none",color:"nega",fontColor:"4.thin",tabIndex:-1,isRounded:!0,padding:"1/4",onClick:o,freeCSS:{lineHeight:1,aspectRatio:"1/1"},children:l(N.X,{})})]}),SelectorPosition:3},t),{freeCSS:f({cursor:"pointer"},t.freeCSS)}),t.multiSelect||(t.min=0,t.max=1),t.options=t.options||[],t.emptySelect&&(t.options=[{value:null,label:l(U.Supplement,{fontColor:"4.thin",children:"\u9078\u629E\u3092\u89E3\u9664"})},...t.options]),t.value=c.flatArray(t.value),t.options=z.InitOptions(t.options),c.is.nullish(t.rightIcon)&&(t.rightIcon=l(oe,{children:l(N.Search,{})}),t.disabled&&(t.rightIcon=l(oe,{fontColor:"5.translucent",children:l(N.Ban,{})}))),t.rightIcon&&(t=f({paddingRight:3},t)),t.leftIcon&&(t=f({paddingLeft:3},t)),l(de,{componentId:t.componentId,children:L.Core,states:fe(t)})};export{ae as Autocomplete,ae as default};
1
+ import{b as f,c as g,d as Q,e as Y}from"../../chunk-C5N2D3ZX.js";import{Fragment as U,jsx as l,jsxs as F}from"react/jsx-runtime";import{useState as b,useEffect as E,useRef as ie}from"react";import c,{UUID as D}from"jmini";import{ExtractStyles as re}from"../../@utils";import{Box as B,Span as se,FAI as K,Column as Z}from"../../atoms";import{Literal as N,Row as P}from"../../mols";import{Button as ee}from"../Button";import{Loader as ue}from"../Loader";import{Sheet as ce}from"../Sheet";import{OptionalInputWrapper as pe,BoxWrapper as de,CoreEffects as M,DefaultBoxishStyles as Se}from"./core";import{InputAutocompleteClasses as W}from"../../@styles/componentClasses";import{InputLabel as fe}from"./Label";import{RightIcon as te}from".";function me(e){let{value:t,states:r}=e,{required:p,options:o,min:a,max:n}=r;a=a||0,n=n||65535;let d=[],s=t.filter(u=>u!==null).length;return p&&(s||d.push({type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"})),s<a&&d.push({type:"invalid",label:a+"\u500B\u4EE5\u4E0A\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044"}),s>n&&d.push({type:"invalid",label:n+"\u500B\u307E\u3067\u9078\u629E\u3067\u304D\u307E\u3059"}),{ok:!d.filter(({type:u})=>u=="invalid").length,notice:d}}const C={InitOptions:e=>{let t=[];return e.forEach(r=>{if(!r)return;let{type:p,label:o,value:a,searchValue:n}=r,d=n||c.is.string(o)&&o||""||c.is.string(a)&&a||c.Stringify(a||"")||"";c.is.nullish(o)&&(o=String(a)),t.push(g(f({id:D()},r),{searchValue:d,type:p||"selector",label:o,value:a}))}),t},FilterSelectableOptions:(e,t,r)=>{let p=e;return r||(p=e.filter(o=>(o==null?void 0:o.type)!="label")),c.scope(()=>{if(!t)return;let o=t.toLower().replace(/ /g,"");p=p.filter(a=>(a.searchValue||"").toLower().replace(/ /g,"").includes(o))}),p},Shallow:e=>{let{rootStates:t,val_status:r}=e,p=re(t);return l(B,{position:"absolute",top:0,left:0,right:0,height:0,overflow:"hidden",opacity:"trans",freeCSS:{zIndex:3,pointerEvents:"none"},children:l(N.Description,g(f({className:t.className},p),{position:"absolute",width:1,freeCSS:g(f({},p.freeCSS),{color:"orange"}),"data-id":"shallow_"+r.componentId,children:l(B,{"data-input-value-shallow":r.componentId,children:"A"})}))})},Button:e=>{let{rootStates:t,val_keyword:r,set_keyword:p,val_optionFocused:o,set_optionFocused:a,val_preventOpenSelector:n,set_preventOpenSelector:d,val_openSelector:s,set_openSelector:u,val_status:i,set_status:S,val_activeInput:m,set_activeInput:y}=e,j=t,{tone:O,required:w,form:h,className:x,multiSelect:I,enableFormSubmit:k,checkValidationAtFirst:R,onValidate:H,onValidateDelay:J,onUpdateValue:z,onUpdateValidValue:q,onUserAction:X,value:$="",options:T,leftIndicator:L,rightIndicator:V,leftIcon:ve,rightIcon:ye,componentId:_e,status_id:ge,wrapStyles:he,emptySelect:Ie,SearchInput:be,SearchInputPlaceholder:Ce,SelectedComponent:De,SelectorComponent:Oe,SelectorStyles:we,SelectorPosition:xe,DynamicOptionsOnSearch:ke,DynamicOptionsOnSearchDelay:Re}=j,v=Q(j,["tone","required","form","className","multiSelect","enableFormSubmit","checkValidationAtFirst","onValidate","onValidateDelay","onUpdateValue","onUpdateValidValue","onUserAction","value","options","leftIndicator","rightIndicator","leftIcon","rightIcon","componentId","status_id","wrapStyles","emptySelect","SearchInput","SearchInputPlaceholder","SelectedComponent","SelectorComponent","SelectorStyles","SelectorPosition","DynamicOptionsOnSearch","DynamicOptionsOnSearchDelay"]);return E(()=>{var A;if(t.disabled||!s||c.is.exist(o))return;let _=C.FilterSelectableOptions(e.val_options,r,!1);a(((A=_[0])==null?void 0:A.id)||"")},[r]),E(()=>{if(i.eventType!="init"&&i.eventType!="override"){if(t.max==i.dataValue.length){u(!1),d(!0),p("");return}c("#SearchInput_"+t.componentId).focus()}},[i.dataValue]),E(()=>{let _="autocomplete-click-"+t.componentId;if(!s){c(document).removeEvent([_]);return}c('[data-input-origin="'+t.componentId+'"]')&&(c("#SearchInput_"+t.componentId).focus(),c(document).addEvent({eventID:_,eventType:"mousedown",callback:ae=>{let G=c(ae.target),le=!!c(G).parent("."+W("Core")).length,ne=!!c(G).parent("."+W("Selector")).length;le||ne||(u(!1),y(!1))},options:{passive:!1}}))},[s]),F(U,{children:[l(B,g(f({tabIndex:0},v),{"data-disabled":t.disabled,"data-show-validation":M.isShowValidation(i,!!R),"data-component-id":i.componentId,"data-input-origin":i.componentId,"data-focus":!!s||!!m,className:[x,W("Core")].join(" "),onFocus:_=>{if(v!=null&&v.onFocus&&(v==null||v.onFocus(_)),!t.disabled){if(n)return d(!1);u(!0),y(!0),_.preventDefault()}},onCompositionStart:_=>{v!=null&&v.onCompositionStart&&(v==null||v.onCompositionStart(_))},onCompositionEnd:_=>{v!=null&&v.onCompositionEnd&&(v==null||v.onCompositionEnd(_))},onClick:_=>{v!=null&&v.onClick&&(v==null||v.onClick(_)),!t.disabled&&(u(!0),y(!0))},onKeyDown:_=>{let{key:A}=_;k&&M.SubmitForm(_,h),!s&&(A==" "||A=="ArrowDown"||A=="ArrowUp"||A=="Enter")&&(u(!0),y(!0))},children:F(P.Left,{gap:0,children:[l(se,{width:0,overflow:"hidden",opacity:"trans",children:"A"}),F(P.Left,{flexWrap:!0,flexSizing:0,gap:"1/3",freeCSS:{letterSpacing:".5px"},children:[l(C.Selected,f({},e)),l(C.SearchInput,f({},e))]})]})})),s&&l(C.Selector,f({},e))]})},SearchInput:e=>{let{rootStates:t,val_status:r,set_status:p}=e;return t.disabled||!e.val_openSelector&&!e.val_activeInput?null:l(B,{htmlTag:"input",id:"SearchInput_"+t.componentId,placeholder:t.SearchInputPlaceholder||"\u691C\u7D22...",opacity:e.val_openSelector?"max":"middle",transition:"middle",flexSizing:0,fontSize:"inherit",border:"unset",backgroundColor:"trans",value:e.val_keyword,freeCSS:{outline:"none"},onFocus:o=>{p(a=>g(f({},a),{eventID:D(12),isFocusing:!0}))},onBlur:o=>{e.set_activeInput(!1),p(a=>g(f({},a),{eventID:D(12),isFocusing:!1}))},onCompositionStart:o=>{p(a=>g(f({},a),{eventID:D(12),isComposing:!0}))},onCompositionEnd:o=>{p(a=>g(f({},a),{eventID:D(12),isComposing:!1}))},onKeyDown:o=>{let{key:a,metaKey:n,ctrlKey:d}=o,s=n||d;a=="Tab"?(e.set_openSelector(!1),e.set_activeInput(!1),e.set_preventOpenSelector(!1)):a==" "?c.scope(()=>{e.val_openSelector||e.val_keyword||(o.preventDefault(),e.set_openSelector(!0))}):a=="Backspace"?c.scope(()=>{if(e.val_keyword)return;let u=[...e.val_status.dataValue];u.pop(),e.set_status(i=>g(f({},i),{dataValue:u,eventType:"update",eventID:D(12),isInspected:!1}))}):a=="Enter"&&c.scope(()=>{if(r.isComposing||(o==null?void 0:o.keyCode)===229)return;if(!e.val_openSelector)return e.set_openSelector(!0);if(!e.val_optionFocused)return;let u=e.val_options.find(S=>(S==null?void 0:S.id)==e.val_optionFocused);if(!u)return;let{value:i}=u;e.set_status(S=>{let m=[...S.dataValue];return c.scope(()=>{if(i===null)return m=[];S.dataValue.includes(i)?m=m.filter(O=>O!==i):t.multiSelect?m.push(i):m=[i]}),g(f({},S),{dataValue:m,eventType:"update",eventID:D(12),isInspected:!1})}),e.set_optionsModified(!0),e.set_keyword("")}),c.scope(()=>{if(!["ArrowDown","ArrowUp"].includes(a))return;if(o.preventDefault(),!e.val_openSelector)return e.set_openSelector(!0);let u=a=="ArrowDown"?1:-1,i=C.FilterSelectableOptions(e.val_options),S=i.length-1,m=null;c.scope(()=>{var O,w,h,x,I,k;let y=i.findIndex(R=>(R==null?void 0:R.id)==e.val_optionFocused);if(y==-1&&(y=0),u==1){if(m=(O=i[0])==null?void 0:O.id,s){m=(w=i[S])==null?void 0:w.id;return}if(y==-1||y==S)return;m=(h=i[y+1])==null?void 0:h.id}else{if(m=(x=i[S])==null?void 0:x.id,s){m=(I=i[0])==null?void 0:I.id;return}if(y==-1||y==0)return;m=(k=i[y-1])==null?void 0:k.id}}),e.set_optionFocused(m)}),t.enableFormSubmit&&M.SubmitForm(o,e.rootStates.form)},onChange:o=>{let n=o.target.value;e.set_openSelector(!0),e.set_keyword(n)}},"searchInput")},Selector:e=>{var d;let[t,r]=b("idle"),[p,o]=b("idle");E(()=>{if(!e.rootStates.DynamicOptionsOnSearch||!e.val_openSelector)return;if(e.val_optionsModified)return e.set_optionsModified(!1);if(e.val_status.isComposing)return;if(t=="idle")return r("ok");o("fetch");let s="autocomplete-search-"+e.rootStates.componentId;e.set_optionFocused(""),c.interval.once(()=>Y(void 0,null,function*(){var S;let u=yield e.rootStates.DynamicOptionsOnSearch(e.val_keyword);o("idle");let i=C.InitOptions(u||[]);e.set_options(i),e.set_optionFocused(((S=i[0])==null?void 0:S.id)||"")}),e.rootStates.DynamicOptionsOnSearchDelay||500,s)},[e.val_keyword,e.val_status.isComposing]),E(()=>{let s=c(`[data-selector-id="${e.val_status.componentId}"]`)[0];if(!s)return;let u=c(`[data-autocomplete-input-value="${e.val_optionFocused}"]`)[0];u&&(s.scrollTop=u.offsetTop-24)},[e.val_optionFocused]);let a=C.FilterSelectableOptions(e.val_options,e.rootStates.DynamicOptionsOnSearch?"":e.val_keyword,!0),n={};switch(e.rootStates.SelectorPosition){case 1:n.bottom="100%",n.left=0,n.paddingBottom="1/3";break;case 2:n.bottom="100%",n.right=0,n.paddingBottom="1/3";break;case 3:n.top="100%",n.left=0,n.paddingTop="1/3";break;case 4:n.top="100%",n.right=0,n.paddingTop="1/3";break;default:break}return l(B,g(f({position:"absolute"},n),{freeCSS:f({minWidth:"75%",zIndex:1e3},n.freeCSS),children:l(ce.Body,g(f({className:W("Selector"),borderRadius:"2.tone.secondary",ssCardBox:!0,boxShadow:"1.normal",overflow:"auto","data-selector-id":e.val_status.componentId},e.rootStates.SelectorStyles),{freeCSS:f({maxHeight:12*24},(d=e.rootStates.SelectorStyles)==null?void 0:d.freeCSS),children:F(Z,{gap:"1/12",padding:[1,0],children:[p=="fetch"&&l(P.Center,{padding:"1/2",children:l(ue.Theme.R,{showInitial:!0})}),p!="fetch"&&F(U,{children:[!a.length&&l(N.Supplement,{padding:[0,1],fontColor:"4.thin",children:"\u5019\u88DC\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093"}),a.map((s,u)=>{if(!s)return null;let{type:i,value:S}=s,m=e.val_optionFocused==s.id,y=e.val_status.dataValue.includes(S),O=e.rootStates.SelectorComponent;return l(Z,{"data-autocomplete-input-value":s.id,children:l(O,{option:s,isFocused:m,isSelected:y,addCallback:()=>{e.set_status(w=>{let h=[...w.dataValue];return c.scope(()=>{if(S===null)return h=[];w.dataValue.includes(S)?h=h.filter(I=>I!==S):e.rootStates.multiSelect?h.push(S):h=[S]}),g(f({},w),{dataValue:h,eventType:"update",eventID:D(12),isInspected:!1})})}})},s.id)})]})]})}))}))},Selected:e=>{let{rootStates:t,val_status:r,set_status:p,val_optionsDict:o}=e,a=[];return r.dataValue.forEach(n=>{let d=o[c.Stringify(n)];if(!d)return;let s=t.SelectedComponent,u=d.label;(d==null?void 0:d.value)===null&&(u=""),a.push(l(B,{className:W("SelectedCell"),children:l(s,{value:d==null?void 0:d.value,label:u,removeCallback:i=>{if(i.stopPropagation(),i.preventDefault(),t.disabled)return;let S=[...r.dataValue];S=S.filter(m=>m!==n),p(m=>g(f({},m),{dataValue:S,eventType:"update",eventID:D(12),isInspected:!1}))}})},c.Stringify(d==null?void 0:d.value)||D()))}),l(U,{children:a})},Core:e=>{var q,X,$;let{value:t}=e,[r,p]=b(!1),[o,a]=b(!1),[n,d]=b(!1),[s,u]=b(!1),[i,S]=b(""),[m,y]=b(e.options),[O,w]=b(((q=e.options.find(T=>{var L;return(T==null?void 0:T.value)===((L=e.value)==null?void 0:L[0])}))==null?void 0:q.id)||((X=e.options[0])==null?void 0:X.id)||""),[h,x]=b({}),[I,k]=b(M.DefaultStatus(e.componentId,t)),R=ie(!1);E(()=>{o||(R.current?y(e.options):R.current=!0)},[c.Stringify(($=e.options)==null?void 0:$.map(T=>T.value))]),E(()=>{if(!m.length)return;let T=[...m],L=f({},h);T.forEach(V=>{(V==null?void 0:V.type)!="label"&&(L[c.Stringify(V==null?void 0:V.value)]=V)}),x(L)},[m]);let H={rootStates:e,val_options:m,set_options:y,val_optionFocused:O,set_optionFocused:w,val_optionsDict:h,set_optionsDict:x,val_optionsModified:o,set_optionsModified:a,val_preventOpenSelector:r,set_preventOpenSelector:p,val_openSelector:n,set_openSelector:d,val_activeInput:s,set_activeInput:u,val_keyword:i,set_keyword:S,val_status:I,set_status:k},J=!!e.multiSelect;M.CommonEffects({type:J?"autocomplete.multi":"autocomplete.single",states:e,val_status:I,set_status:k,SystemValidation:me});let z=I.dataValue.length&&I.dataValue[0]!==null;return z=z||n||s,F(de,{val_status:I,set_status:k,states:e,children:[l(fe,{componentId:e.componentId,fontSize:e.fontSize,required:e.required,label:e.label,isActive:z}),l(C.Shallow,f({},H)),l(C.Button,f({},H))]})}},oe=e=>{let t=f({},e);return t=g(f({value:[],min:0,max:65535,multiSelect:!0,SearchInput:!0,emptySelect:!0,SelectorComponent:({option:r,isSelected:p,isFocused:o,addCallback:a})=>r?(r==null?void 0:r.type)=="label"?l(U,{children:r.label}):l(ee.Sub.S,{color:"cloud",backgroundColor:"trans",borderRadius:0,fontColor:"2.normal",textAlign:"left",padding:["1/2",1.5],isActive:o,isActiveStyles:{backgroundColor:"cloud"},onClick:a,children:F(P.Left,{gap:"1/2",children:[p&&l(K.Check,{fontColor:"theme"}),l(N.Supplement,{transition:"short",children:r.label})]})}):null,SelectedComponent:({value:r,label:p,removeCallback:o})=>F(P.Left,{ssCardBox:"cloud",borderRadius:"2.tone.secondary",fontSize:"1.mini",padding:"1/2",gap:0,children:[l(B,{padding:[0,"1/4"],children:p}),l(ee.Clear,{flexSizing:"none",color:"nega",fontColor:"4.thin",tabIndex:-1,isRounded:!0,padding:"1/4",onClick:o,freeCSS:{lineHeight:1,aspectRatio:"1/1"},children:l(K.X,{})})]}),SelectorPosition:3},t),{freeCSS:f({cursor:"pointer"},t.freeCSS)}),t.multiSelect||(t.min=0,t.max=1),t.options=t.options||[],t.emptySelect&&(t.options=[{value:null,label:l(N.Supplement,{fontColor:"4.thin",children:"\u9078\u629E\u3092\u89E3\u9664"})},...t.options]),t.value=c.flatArray(t.value),t.options=C.InitOptions(t.options),c.is.nullish(t.rightIcon)&&(t.rightIcon=l(te,{children:l(K.Search,{})}),t.disabled&&(t.rightIcon=l(te,{fontColor:"5.translucent",children:l(K.Ban,{})}))),t.rightIcon&&(t=f({paddingRight:3},t)),t.leftIcon&&(t=f({paddingLeft:3},t)),l(pe,{componentId:t.componentId,children:C.Core,states:Se(t)})};export{oe as Autocomplete,oe as default};
@@ -1 +1 @@
1
- import{b as r,c as f,d as Q,e as j}from"../../chunk-C5N2D3ZX.js";import{Fragment as oe,jsx as a,jsxs as m}from"react/jsx-runtime";import{useState as Y,useEffect as ee}from"react";import H,{UUID as b,useStore as te}from"jmini";import{$$fromRoot as _,ExtractStyles as se}from"../../@utils";import{Box as S,FAI as P,Flex as R,Column as le}from"../../atoms";import{Row as re}from"../../mols";import{Button as L}from"../Button";import q from"../Snackbar";import{OptionalInputWrapper as pe,BoxWrapper as ue,CoreEffects as ae,DefaultBoxishStyles as me}from"./core";import ce from"./TextField";import{InputFilerClasses as y}from"../../@styles/componentClasses";import{faCloudArrowUp as de}from"@fortawesome/free-solid-svg-icons/faCloudArrowUp";function fe(e){let{value:t,states:o}=e,{required:c}=o,l=[];return c&&!t.length&&l.push({type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"}),{ok:!l.filter(({type:p})=>p=="invalid").length,notice:l}}const ne={List:e=>{let{rootStates:t,val_status:o,set_status:c}=e;if(t.useSystemOnly)return null;let l=t.limit-(o.dataValue||[]).length,p=(o.dataValue||[]).map((n,u)=>a(ne.ListCell,f(r({},e),{index:u,val_file:n}),n.name));return l>0&&p.push(a(S,f(r({htmlTag:"label"},t.cellStyles),{className:[t.cellClassName,y("AddButton")].join(" "),"data-component-id":o.componentId,htmlFor:t.id,tabIndex:t.tabIndex,onKeyDown:n=>{let{key:u}=n;t.tabIndex!=-1&&[" ","Enter"].includes(u)&&_("#"+t.id).click()},children:m(re.Center,{padding:["1/3",0],children:[a(S,{isRounded:!0,className:y("AddIcon"),children:a(P,{icon:de,className:y("Icon"),fontColor:"theme",fontSize:"4.thirdTitle",backgroundColor:"theme.opa.low",ssSphere:3,padding:"1/2"})}),m(S,{children:[m(S,{fontColor:"theme",fontSize:"2.normal",isSemiBoldFont:!0,children:["\u30D5\u30A1\u30A4\u30EB\u3092\u9078\u629E(",l,")"]}),a(S,{fontColor:"4.thin",fontSize:"0.xs",isSemiBoldFont:!0,children:"\u30D5\u30A1\u30A4\u30EB\u3092\u30C9\u30ED\u30C3\u30D7"})]})]})}),"AddButton")),a(le,f(r({flexSizing:"auto"},se(t)),{className:t.className,children:p}))},ListCell:e=>{let{index:t,rootStates:o,val_file:c,val_status:l,set_status:p}=e,{name:n,size:u,type:i}=c,[d,v]=Y(!1),I=b(),J=u.rank(),[X,W]=n.replace(/\s/g,"_").replace(/(.*)\.(.*)$/,"$1 $2").split(" "),s="\u30D5\u30A1\u30A4\u30EB";return i.match(/image/)?s=i.replace(/image\//,""):i.match(/pdf/)?s="PDF":i.match(/csv/)?s="CSV":i.match(/spreadsheet/)?s="SpreadSheet":i.match(/presentation/)?s="PowerPoint":i.match(/word/)?s="Word":i.match(/zip/)?s="Zip":i.match(/powerpoint/)?s="PowerPoint":i.match(/html/)?s="HTML":i.match(/js/)?s="JavaScript":i.match(/css/)?s="CSS":i.match(/text\/plain/)&&(s="\u30C6\u30AD\u30B9\u30C8"),ee(()=>{d&&setTimeout(()=>{_("#"+I).focus()},100)},[d]),m(R,f(r({verticalAlign:"center",flexWrap:!1,gap:1,className:o.cellClassName},o.cellStyles),{children:[a(P.File,{fontSize:"4.thirdTitle",fontColor:"4.thin"}),m(S,{flexSizing:0,children:[a(S,{children:a(R,{verticalAlign:"center",gap:"2/3",flexWrap:!1,className:y("FileName"),children:d?a(oe,{children:m(le,{flexSizing:0,gap:"1/2",children:[m(R,{gap:"2/3",verticalAlign:"center",children:[a(ce,{tone:"border",wrapStyles:{flexSizing:"auto"},restrict:"fileName",name:"name",required:!0,id:I,form:"form-"+I,enableFormSubmit:!0,value:X,onKeyDown:F=>{let{key:w}=F;w=="Escape"&&v(!1)}}),m(S,{children:[". ",W]})]}),m(R,{gap:"2/3",horizontalAlign:"right",flexWrap:!1,children:[a(L.Sub.S,{padding:["2/3",1],onClick:()=>{v(!1)},children:"\u9589\u3058\u308B"}),a(L.Prime.S,{padding:["2/3",1],onFormSubmit:["form-"+I,F=>j(void 0,null,function*(){let{name:w}=F.body,T=[...l.dataValue],A=T[t],Z=A.id;if(!A)return;let k=yield A.convert();k=String(k);let M=yield k.toBlob(c.type);if(!M)return;let $=new File([M],w+"."+W,{type:A.type});$.id=Z,T[t]=$,p(O=>f(r({},O),{dataValue:T,eventType:"update",eventID:b(12),isInspected:!1})),v(!1)})],children:"\u6C7A\u5B9A"})]})]})}):m(oe,{children:[n,!!o.isNameEditable&&a(L.Clear,{ssSphere:2.5,flexSizing:"none",fontColor:"4.thin",padding:"1/3",ssEffectsOnActive:"expand",color:"cloud",onClick:()=>{v(!0)},children:a(P.Pen,{})})]})})}),!d&&m(S,{fontSize:"1.mini",fontColor:"4.thin",flexSizing:0,children:[s,"\u30D5\u30A1\u30A4\u30EB / ",J,"B"]})]}),a(L.Sub,{color:"cloud",fontColor:"4.thin",ssSphere:3,onClick:()=>{let F=[...l.dataValue];F[t]&&(F.splice(t,1),p(T=>f(r({},T),{dataValue:F,eventType:"update",eventID:b(12),isInspected:!1})))},children:a(P.X,{})})]}))}},ge=e=>{let G=e,{tone:t,required:o,form:c,isNameEditable:l,useSystemOnly:p,accept:n="*",limit:u=1,checkValidationAtFirst:i,onChange:d,onValidate:v,onValidateDelay:I,onUpdateValue:J,onUpdateValidValue:X,onUserAction:W,value:s=[],className:F,cellStyles:w,cellClassName:T,componentId:A,status_id:Z,enableFormSubmit:k,freeCSS:M,wrapStyles:$}=G,O=Q(G,["tone","required","form","isNameEditable","useSystemOnly","accept","limit","checkValidationAtFirst","onChange","onValidate","onValidateDelay","onUpdateValue","onUpdateValidValue","onUserAction","value","className","cellStyles","cellClassName","componentId","status_id","enableFormSubmit","freeCSS","wrapStyles"]),[B,N]=Y(ae.DefaultStatus(e.componentId||"",s)),ie={rootStates:e,val_status:B,set_status:N};ee(()=>{te.set({["AddFiles-"+B.componentId]:x=>{N(D=>{let C=D.dataValue,V=[];for(var g=0;g<(x==null?void 0:x.length);g++){let h=x[g],{type:E,name:z}=h;if(g+1+C.length>u){q.add({componentId:z,secondsToClose:12e3,children:`\u30D5\u30A1\u30A4\u30EB\u9078\u629E\u4E0A\u9650\u3092\u8D85\u3048\u305F\u305F\u3081\u3001${z}}\u306F\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3002`,backgroundColor:"nega"});continue}if(n&&n=="image"&&!E.match(/image/)){q.add({componentId:z,secondsToClose:12e3,children:`\u30D5\u30A1\u30A4\u30EB\u5F62\u5F0F\u304C\u7570\u306A\u308B\u305F\u3081\u3001${z} \u306F\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3002`,backgroundColor:"nega"});continue}V.push(h)}return f(r({},D),{dataValue:[...C,...V],eventType:"update",eventID:b(12),isInspected:!1})})}})},[]),ae.CommonEffects({type:"file",states:e,val_status:B,set_status:N,SystemValidation:fe});let U="";return n&&(n=="image"?U="image/png,image/jpeg":U=n),m(ue,{val_status:B,set_status:N,states:e,children:[a(S,f(r({htmlTag:"input",type:"file",className:y("Input"),"data-component-id":B.componentId,accept:U,multiple:u!=1,onChange:x=>j(void 0,null,function*(){d&&d(x);let D=x.target,C=D.files,V=[];for(var g=0;g<(C==null?void 0:C.length);g++){if(!C[g])continue;let h=C[g].clone(),E=h.name;if(h.id=b(),g+1+B.dataValue.length>u){q.add({componentId:E,secondsToClose:12e3,children:`\u30D5\u30A1\u30A4\u30EB\u767B\u9332\u6570\u3092\u8D85\u3048\u305F\u305F\u3081\u3001${E}}\u306F\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002`,backgroundColor:"nega"});continue}V.push(h)}N(h=>f(r({},h),{dataValue:[...h.dataValue,...V],eventType:"update",eventID:b(12),isInspected:!1})),D.value=""})},O),{opacity:"low",tabIndex:-1,value:""})),a(ne.List,r({},ie))]})},K=e=>(e=f(r({limit:1,isNameEditable:!0,useSystemOnly:!1,tone:"border",value:[]},e),{override:"force",cellStyles:r(r({},me({tone:e.tone||"border"})),e.cellStyles)}),a(pe,{componentId:e.componentId,children:ge,states:e}));K.fn={openDialog:e=>{let{multiple:t,accept:o}=e,c=b();const l=document.createElement("input");l.type="file",l.multiple=!!t,l.value="",l.id=c,o&&(o=="image"?l.accept="image/png,image/jpeg,image/jpg,image/webp":l.accept=o),H("body").append(l),l.onchange=p=>{var i;let n=((i=p==null?void 0:p.target)==null?void 0:i.files)||[];if(!(n!=null&&n.length))return;let u=[];for(let d=0;d<n.length;d++){let I=n[d].clone();u.push(I)}e.onChange(u),H("#"+c).remove()},l.click()}},typeof window!="undefined"&&window.document&&H(document).addEvent({eventType:"dragover",callback:e=>{e.preventDefault(),_("."+y("AddButton")).addClass(y("Draggable"))},options:{passive:!1}}).addEvent({eventType:"drop",callback:e=>{e.preventDefault(),_("."+y("AddButton")).removeClass(y("Draggable"));let t=e.dataTransfer.files;if(t.length){let o=e.target;if(_(o).hasClass(y("AddButton"))){let{componentId:c}=o.dataset,l=te.get("AddFiles-"+c);l&&l(t)}}},options:{passive:!1}});export{K as Filer,K as default};
1
+ import{b as r,c as f,d as Q,e as H}from"../../chunk-C5N2D3ZX.js";import{Fragment as oe,jsx as a,jsxs as c}from"react/jsx-runtime";import{useState as Y,useEffect as ee}from"react";import j,{UUID as b,useStore as te}from"jmini";import{$$fromRoot as k,ExtractStyles as se}from"../../@utils";import{Box as S,FAI as P,Flex as R,Column as le}from"../../atoms";import{Row as re}from"../../mols";import{Button as L}from"../Button";import q from"../Snackbar";import{OptionalInputWrapper as pe,BoxWrapper as ue,CoreEffects as ae,DefaultBoxishStyles as ce}from"./core";import me from"./TextField";import{InputFilerClasses as y}from"../../@styles/componentClasses";import{faCloudArrowUp as de}from"@fortawesome/free-solid-svg-icons/faCloudArrowUp";function fe(e){let{value:t,states:o}=e,{required:m}=o,l=[];return m&&!t.length&&l.push({type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"}),{ok:!l.filter(({type:p})=>p=="invalid").length,notice:l}}const ne={List:e=>{let{rootStates:t,val_status:o,set_status:m}=e;if(t.useSystemOnly)return null;let l=t.limit-(o.dataValue||[]).length,p=(o.dataValue||[]).map((n,u)=>a(ne.ListCell,f(r({},e),{index:u,val_file:n}),n.name));return l>0&&p.push(a(S,f(r({htmlTag:"label"},t.cellStyles),{className:[t.cellClassName,y("AddButton")].join(" "),"data-component-id":o.componentId,htmlFor:t.id,tabIndex:t.tabIndex,onKeyDown:n=>{let{key:u}=n;t.tabIndex!=-1&&[" ","Enter"].includes(u)&&k("#"+t.id).click()},children:c(re.Center,{padding:["1/3",0],children:[a(S,{isRounded:!0,className:y("AddIcon"),children:a(P,{icon:de,className:y("Icon"),fontColor:"theme",fontSize:"4.thirdTitle",backgroundColor:"theme.opa.low",ssSphere:3,padding:"1/2"})}),c(S,{children:[c(S,{fontColor:"theme",fontSize:"2.normal",isSemiBoldFont:!0,children:["\u30D5\u30A1\u30A4\u30EB\u3092\u9078\u629E(",l,")"]}),a(S,{fontColor:"4.thin",fontSize:"0.xs",isSemiBoldFont:!0,children:"\u30D5\u30A1\u30A4\u30EB\u3092\u30C9\u30ED\u30C3\u30D7"})]})]})}),"AddButton")),a(le,f(r({flexSizing:"auto"},se(t)),{className:t.className,children:p}))},ListCell:e=>{let{index:t,rootStates:o,val_file:m,val_status:l,set_status:p}=e,{name:n,size:u,type:i}=m,[d,v]=Y(!1),I=b(),J=u.rank(),[X,W]=n.replace(/\s/g,"_").replace(/(.*)\.(.*)$/,"$1 $2").split(" "),s="\u30D5\u30A1\u30A4\u30EB";return i.match(/image/)?s=i.replace(/image\//,""):i.match(/pdf/)?s="PDF":i.match(/csv/)?s="CSV":i.match(/spreadsheet/)?s="SpreadSheet":i.match(/presentation/)?s="PowerPoint":i.match(/word/)?s="Word":i.match(/zip/)?s="Zip":i.match(/powerpoint/)?s="PowerPoint":i.match(/html/)?s="HTML":i.match(/js/)?s="JavaScript":i.match(/css/)?s="CSS":i.match(/text\/plain/)&&(s="\u30C6\u30AD\u30B9\u30C8"),ee(()=>{d&&setTimeout(()=>{k("#"+I).focus()},100)},[d]),c(R,f(r({verticalAlign:"center",flexWrap:!1,gap:1,className:o.cellClassName},o.cellStyles),{children:[a(P.File,{fontSize:"4.thirdTitle",fontColor:"4.thin"}),c(S,{flexSizing:0,children:[a(S,{children:a(R,{verticalAlign:"center",gap:"2/3",flexWrap:!1,className:y("FileName"),children:d?a(oe,{children:c(le,{flexSizing:0,gap:"1/2",children:[c(R,{gap:"2/3",verticalAlign:"center",children:[a(me,{tone:"border",wrapStyles:{flexSizing:"auto"},restrict:"fileName",name:"name",required:!0,id:I,form:"form-"+I,enableFormSubmit:!0,value:X,onKeyDown:F=>{let{key:w}=F;w=="Escape"&&v(!1)}}),c(S,{children:[". ",W]})]}),c(R,{gap:"2/3",horizontalAlign:"right",flexWrap:!1,children:[a(L.Sub.S,{padding:["2/3",1],onClick:()=>{v(!1)},children:"\u9589\u3058\u308B"}),a(L.Prime.S,{padding:["2/3",1],onFormSubmit:["form-"+I,F=>H(void 0,null,function*(){let{name:w}=F.body,T=[...l.dataValue],A=T[t],Z=A.id;if(!A)return;let _=yield A.convert();_=String(_);let M=yield _.toBlob(m.type);if(!M)return;let $=new File([M],w+"."+W,{type:A.type});$.id=Z,T[t]=$,p(O=>f(r({},O),{dataValue:T,eventType:"update",eventID:b(12),isInspected:!1})),v(!1)})],children:"\u6C7A\u5B9A"})]})]})}):c(oe,{children:[n,!!o.isNameEditable&&a(L.Clear,{ssSphere:2.5,flexSizing:"none",fontColor:"4.thin",padding:"1/3",ssEffectsOnActive:"expand",color:"cloud",onClick:()=>{v(!0)},children:a(P.Pen,{})})]})})}),!d&&c(S,{fontSize:"1.mini",fontColor:"4.thin",flexSizing:0,children:[s,"\u30D5\u30A1\u30A4\u30EB / ",J,"B"]})]}),a(L.Sub,{color:"cloud",fontColor:"4.thin",ssSphere:3,onClick:()=>{let F=[...l.dataValue];F[t]&&(F.splice(t,1),p(T=>f(r({},T),{dataValue:F,eventType:"update",eventID:b(12),isInspected:!1})))},children:a(P.X,{})})]}))}},ge=e=>{let G=e,{tone:t,required:o,form:m,isNameEditable:l,useSystemOnly:p,accept:n="*",limit:u=1,checkValidationAtFirst:i,onChange:d,onValidate:v,onValidateDelay:I,onUpdateValue:J,onUpdateValidValue:X,onUserAction:W,value:s=[],className:F,cellStyles:w,cellClassName:T,componentId:A,status_id:Z,enableFormSubmit:_,freeCSS:M,wrapStyles:$}=G,O=Q(G,["tone","required","form","isNameEditable","useSystemOnly","accept","limit","checkValidationAtFirst","onChange","onValidate","onValidateDelay","onUpdateValue","onUpdateValidValue","onUserAction","value","className","cellStyles","cellClassName","componentId","status_id","enableFormSubmit","freeCSS","wrapStyles"]),[B,N]=Y(ae.DefaultStatus(e.componentId||"",s)),ie={rootStates:e,val_status:B,set_status:N};ee(()=>{te.set({["AddFiles-"+B.componentId]:x=>{N(D=>{let C=D.dataValue,V=[];for(var g=0;g<(x==null?void 0:x.length);g++){let h=x[g],{type:E,name:z}=h;if(g+1+C.length>u){q.add({componentId:z,secondsToClose:12e3,children:`\u30D5\u30A1\u30A4\u30EB\u9078\u629E\u4E0A\u9650\u3092\u8D85\u3048\u305F\u305F\u3081\u3001${z}}\u306F\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3002`,backgroundColor:"nega"});continue}if(n&&n=="image"&&!E.match(/image/)){q.add({componentId:z,secondsToClose:12e3,children:`\u30D5\u30A1\u30A4\u30EB\u5F62\u5F0F\u304C\u7570\u306A\u308B\u305F\u3081\u3001${z} \u306F\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3002`,backgroundColor:"nega"});continue}V.push(h)}return f(r({},D),{dataValue:[...C,...V],eventType:"update",eventID:b(12),isInspected:!1})})}})},[]),ae.CommonEffects({type:"file",states:e,val_status:B,set_status:N,SystemValidation:fe});let U="";return n&&(n=="image"?U="image/png,image/jpeg":U=n),c(ue,{val_status:B,set_status:N,states:e,children:[a(S,f(r({htmlTag:"input",type:"file",className:y("Input"),"data-component-id":B.componentId,accept:U,multiple:u!=1,onChange:x=>H(void 0,null,function*(){d&&d(x);let D=x.target,C=D.files,V=[];for(var g=0;g<(C==null?void 0:C.length);g++){if(!C[g])continue;let h=C[g].clone(),E=h.name;if(h.id=b(),g+1+B.dataValue.length>u){q.add({componentId:E,secondsToClose:12e3,children:`\u30D5\u30A1\u30A4\u30EB\u767B\u9332\u6570\u3092\u8D85\u3048\u305F\u305F\u3081\u3001${E}}\u306F\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002`,backgroundColor:"nega"});continue}V.push(h)}N(h=>f(r({},h),{dataValue:[...h.dataValue,...V],eventType:"update",eventID:b(12),isInspected:!1})),D.value=""})},O),{opacity:"low",tabIndex:-1,value:""})),a(ne.List,r({},ie))]})},K=e=>(e=f(r({limit:1,isNameEditable:!0,useSystemOnly:!1,tone:"border",value:[]},e),{override:"force",cellStyles:r(r({},ce({tone:e.tone||"border"})),e.cellStyles)}),a(pe,{componentId:e.componentId,children:ge,states:e}));K.fn={openDialog:e=>{let{multiple:t,accept:o}=e,m=b();const l=document.createElement("input");l.type="file",l.multiple=!!t,l.value="",l.id=m,o&&(o=="image"?l.accept="image/png,image/jpeg,image/jpg,image/webp":l.accept=o),j("body").append(l),l.onchange=p=>{var i;let n=((i=p==null?void 0:p.target)==null?void 0:i.files)||[];if(!(n!=null&&n.length))return;let u=[];for(let d=0;d<n.length;d++){let I=n[d].clone();u.push(I)}e.onChange(u),j("#"+m).remove()},l.click()}},typeof window!="undefined"&&window.document&&j(document).addEvent({eventType:"dragover",callback:e=>{e.preventDefault(),k("."+y("AddButton")).addClass(y("Draggable"))},options:{passive:!1}}).addEvent({eventType:"drop",callback:e=>{e.preventDefault(),k("."+y("AddButton")).removeClass(y("Draggable"));let t=e.dataTransfer.files;if(t.length){let o=e.target;if(k(o).hasClass(y("AddButton"))){let{componentId:m}=o.dataset,l=te.get("AddFiles-"+m);l&&l(t)}}},options:{passive:!1}});export{K as Filer,K as default};
@@ -1 +1 @@
1
- import{b as o,c as d,d as q}from"../../chunk-C5N2D3ZX.js";import{Fragment as le,jsx as a,jsxs as V}from"react/jsx-runtime";import S,{UUID as h}from"jmini";import{useState as A,useEffect as z}from"react";import{ExtractStyles as Ce}from"../../@utils";import{Box as I,FAI as Z,Column as Ve}from"../../atoms";import{Literal as E,Row as H}from"../../mols";import{Button as Oe}from"../Button";import{Sheet as xe}from"../Sheet";import{OptionalInputWrapper as Fe,BoxWrapper as Te,CoreEffects as k,DefaultBoxishStyles as _e}from"./core";import{InputAutocompleteClasses as R}from"../../@styles/componentClasses";import{InputLabel as we}from"./Label";import{RightIcon as De}from".";function ke(e){let{value:t,states:l}=e,{required:s,options:i}=l,m=[];return s&&t===null&&m.push({type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"}),{ok:!m.filter(({type:u})=>u=="invalid").length,notice:m}}const ee={FilterSelectableOptions:(e,t)=>{let l=e.rootStates.options;return t||(l=l.filter(s=>(s==null?void 0:s.type)!="label")),l}},C={Shallow:e=>{let{rootStates:t,val_status:l}=e,s=Ce(t);return a(I,{position:"absolute",top:0,left:0,right:0,height:0,overflow:"hidden",opacity:"trans",freeCSS:{zIndex:3,pointerEvents:"none"},children:a(E.Description,d(o({className:t.className},s),{position:"absolute",width:1,freeCSS:d(o({},s.freeCSS),{color:"orange"}),children:a(I,{"data-input-value-shallow":l.componentId,children:"A"})}))})},Button:e=>V(le,{children:[a(C.LegacySelector,o({},e)),a(C.Original,o({},e))]}),Placeholder:e=>!e.rootStates.placeholder||e.val_status.dataValue!==null?null:a(I,{position:"absolute",opacity:"middle",fontColor:"3.blur",children:e.rootStates.placeholder||""}),Original:e=>{let{rootStates:t,val_preventOpenSelectorOnFocus:l,set_preventOpenSelectorOnFocus:s,val_optionFocused:i,set_optionFocused:m,val_status:u,set_status:g,val_selectorOpen:y,set_selectorOpen:p}=e,N=t,{tone:B,required:F,form:T,className:O,label:ae,isLabelActive:oe,placeholder:ne,enableFormSubmit:L,emptySelect:$,checkValidationAtFirst:W,onValidate:re,onValidateDelay:se,onUpdateValue:ie,onUpdateValidValue:ue,onUserAction:ce,value:P="",options:M,leftIndicator:de,rightIndicator:j,leftIcon:Se,rightIcon:pe,componentId:fe,status_id:me,wrapStyles:ye,SelectedCellStyles:ve,SelectorCellStyles:ge,SelectorMode:be,SelectorStyles:Ie,SelectorPosition:he}=N,n=q(N,["tone","required","form","className","label","isLabelActive","placeholder","enableFormSubmit","emptySelect","checkValidationAtFirst","onValidate","onValidateDelay","onUpdateValue","onUpdateValidValue","onUserAction","value","options","leftIndicator","rightIndicator","leftIcon","rightIcon","componentId","status_id","wrapStyles","SelectedCellStyles","SelectorCellStyles","SelectorMode","SelectorStyles","SelectorPosition"]);return z(()=>{if(e.rootStates.SelectorMode!="original"||t.disabled)return;let c="select-click-"+t.componentId;if(y){if(!S('[data-input-origin="'+t.componentId+'"]'))return;S(document).addEvent({eventID:c,eventType:"click",callback:r=>{let _=S(r.target),w=!!S(_).parent("."+R("Core")).length;S(_).parent("."+R("Selector")).length||w||p(!1)}})}else S(document).removeEvent([c])},[y]),z(()=>{if(e.rootStates.SelectorMode!="original"||u.eventType=="init"||!y)return;let c=S('[data-input-origin="'+t.componentId+'"]');c&&c.focus()},[u.dataValue]),e.rootStates.SelectorMode!="original"?null:V(le,{children:[a(I,d(o({tabIndex:0},n),{"data-disabled":t.disabled,"data-show-validation":k.isShowValidation(u,!!W),"data-component-id":u.componentId,"data-input-origin":u.componentId,className:[O,R("Core")].join(" "),onFocus:c=>{if(n!=null&&n.onFocus&&(n==null||n.onFocus(c)),g(f=>d(o({},f),{eventID:h(12),isFocusing:!0})),!t.disabled){if(l)return s(!1);p(!0)}},onBlur:c=>{n!=null&&n.onBlur&&(n==null||n.onBlur(c)),g(f=>d(o({},f),{eventID:h(12),isFocusing:!1}))},onClick:c=>{n!=null&&n.onClick&&(n==null||n.onClick(c)),!t.disabled&&p(!0)},onKeyDown:c=>{let{key:f,metaKey:r,ctrlKey:_}=c,w=r||_;if(n!=null&&n.onKeyDown&&(n==null||n.onKeyDown(c)),L&&k.SubmitForm(c,T),!t.disabled){if(S.scope(()=>{if(!["ArrowDown","ArrowUp"].includes(f))return;if(c.preventDefault(),!y)return p(!0);let b=f=="ArrowDown"?1:-1,v=ee.FilterSelectableOptions(e),K=v.length-1,x=null;S.scope(()=>{var J,X,G,Q,Y;let D=v.findIndex(U=>(U==null?void 0:U.id)==i);if(b==1){if(x=(J=v[0])==null?void 0:J.id,w){x=v[K].id;return}if(D==-1||D==K)return;x=(X=v[D+1])==null?void 0:X.id}else{if(x=(G=v[K])==null?void 0:G.id,w){x=(Q=v[0])==null?void 0:Q.id;return}if(D==-1||D==0)return;x=(Y=v[D-1])==null?void 0:Y.id}}),m(x)}),f=="Escape")p(!1);else if(f=="Tab")p(!1);else if(f=="Backspace")g(b=>d(o({},b),{dataValue:null,eventType:"update",eventID:h(12),isInspected:!1}));else if(f==" ")c.preventDefault(),p(!0);else if(f=="Enter"){if(!y)return p(!0);c.preventDefault();let b=t.options.find(v=>(v==null?void 0:v.id)==i);if(!b)return;g(v=>d(o({},v),{dataValue:b==null?void 0:b.value,eventType:"update",eventID:h(12),isInspected:!1})),p(!1)}}},children:V(H.Left,{gap:0,children:[a(I,{freeCSS:{width:0},overflow:"hidden",opacity:"trans",children:"A"}),V(H.Left,{flexWrap:!0,gap:"1/3",freeCSS:{letterSpacing:".5px"},children:[a(C.Placeholder,o({},e)),a(C.Selected,o({},e))]})]})})),y&&a(C.Selector,o({},e))]})},LegacySelector:e=>{let{rootStates:t,val_preventOpenSelectorOnFocus:l,set_preventOpenSelectorOnFocus:s,val_optionFocused:i,set_optionFocused:m,val_status:u,set_status:g,val_selectorOpen:y,set_selectorOpen:p}=e,f=t,{tone:B,required:F,form:T,className:O,label:ae,isLabelActive:oe,placeholder:ne,enableFormSubmit:L,emptySelect:$,checkValidationAtFirst:W,onValidate:re,onValidateDelay:se,onUpdateValue:ie,onUpdateValidValue:ue,onUserAction:ce,onKeyDown:P,onChange:M,value:de="",options:j,leftIndicator:Se,rightIndicator:pe,leftIcon:fe,rightIcon:me,componentId:ye,status_id:ve,wrapStyles:ge,SelectedCellStyles:be,SelectorCellStyles:Ie,SelectorMode:he,SelectorStyles:n,SelectorPosition:N}=f,c=q(f,["tone","required","form","className","label","isLabelActive","placeholder","enableFormSubmit","emptySelect","checkValidationAtFirst","onValidate","onValidateDelay","onUpdateValue","onUpdateValidValue","onUserAction","onKeyDown","onChange","value","options","leftIndicator","rightIndicator","leftIcon","rightIcon","componentId","status_id","wrapStyles","SelectedCellStyles","SelectorCellStyles","SelectorMode","SelectorStyles","SelectorPosition"]);return e.rootStates.SelectorMode!="legacy"?null:V(I,d(o({htmlTag:"select",tabIndex:0},c),{"data-disabled":t.disabled,"data-show-validation":k.isShowValidation(u,!!W),"data-component-id":u.componentId,"data-input-origin":u.componentId,className:[O,R("Core")].join(" "),onKeyDown:r=>{P&&P(r),L&&k.SubmitForm(r,T)},onChange:r=>{let{value:_}=r.target;g(w=>d(o({},w),{dataValue:_,eventType:"update",eventID:h(12),isInspected:!1,isValidated:!1,notice:[]})),M&&M(r)},children:[!!$&&a("option",{value:"null",children:"\u9078\u629E"}),j.map(r=>S.is.nullish(r==null?void 0:r.value)?null:a("option",{value:r==null?void 0:r.value,children:(r==null?void 0:r.label)||(r==null?void 0:r.value)},String(r==null?void 0:r.value)))]}))},Selector:e=>{var s;z(()=>{let i=S(`[data-selector-id="${e.val_status.componentId}"]`)[0];if(!i)return;let m=S(`[data-select-input-value="${e.val_optionFocused}"]`)[0];m&&(i.scrollTop=m.offsetTop-24)},[e.val_optionFocused]);let t=ee.FilterSelectableOptions(e,!0),l={position:"absolute",minWidth:1,freeCSS:{zIndex:1e3}};switch(e.rootStates.SelectorPosition){case 1:l.bottom="100%",l.left=0,l.paddingBottom="1/3";break;case 2:l.bottom="100%",l.right=0,l.paddingBottom="1/3";break;case 3:l.top="100%",l.left=0,l.paddingTop="1/3";break;case 4:l.top="100%",l.right=0,l.paddingTop="1/3";break;default:break}return a(I,d(o({},l),{children:a(xe.Body,d(o({className:R("Selector"),ssCardBox:!0,borderRadius:"2.tone.secondary",boxShadow:"1.normal",overflow:"auto","data-selector-id":e.val_status.componentId},e.rootStates.SelectorStyles),{freeCSS:o({minWidth:12*6,maxHeight:12*24},(s=e.rootStates.SelectorStyles)==null?void 0:s.freeCSS),children:V(Ve,{gap:"1/12",padding:[1,0],children:[t.map((i,m)=>{if(!i)return null;let{type:u,value:g}=i,y=e.val_optionFocused==i.id,p=e.val_status.dataValue===g;return u=="label"?a(I,{children:i.label||i.value},h()):a(Oe.Sub.S,d(o({"data-select-input-value":i.id,color:"cloud",backgroundColor:"trans",borderRadius:0,fontColor:"2.normal",textAlign:"left",padding:["1/2",1],isActive:p||y,isActiveStyles:y?{backgroundColor:"cloud"}:{backgroundColor:"theme.opa.few",fontColor:"theme"}},e.rootStates.SelectorCellStyles),{onClick:B=>{e.set_status(F=>d(o({},F),{dataValue:g,eventType:"update",eventID:h(12),isInspected:!1})),e.set_selectorOpen(!1),e.set_preventOpenSelectorOnFocus(!0)},children:V(H.Left,{gap:"1/2",children:[p&&a(Z.Check,{fontColor:"theme"}),a(E.Supplement,{transition:"short",flexSizing:0,children:i.label||i.value})]})}),i.id)}),!t.length&&a(E.Supplement,{padding:[0,1],fontColor:"4.thin",children:"\u5019\u88DC\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093"},"no-selector-notice")]})}))}))},Selected:e=>{let t=e.rootStates.options.find(l=>S.is.equal(l==null?void 0:l.value,e.val_status.dataValue));return!t||e.val_status.dataValue===null&&(e.rootStates.label||e.rootStates.placeholder)?null:a(I,d(o({},e.rootStates.SelectedCellStyles),{children:(t==null?void 0:t.label)||(t==null?void 0:t.value)}),String(t==null?void 0:t.value))},Core:e=>{var F,T;let{value:t}=e,[l,s]=A(k.DefaultStatus(e.componentId,t)),[i,m]=A(!1),[u,g]=A(!1),[y,p]=A(((F=e.options.find(O=>(O==null?void 0:O.value)===e.value))==null?void 0:F.id)||((T=e.options[0])==null?void 0:T.id)||""),B={rootStates:e,val_preventOpenSelectorOnFocus:i,set_preventOpenSelectorOnFocus:m,val_optionFocused:y,set_optionFocused:p,val_selectorOpen:u,set_selectorOpen:g,val_status:l,set_status:s};return k.CommonEffects({type:"select",states:e,val_status:l,set_status:s,SystemValidation:ke}),V(Te,{val_status:l,set_status:s,states:e,children:[a(we,{componentId:e.componentId,fontSize:e.fontSize,required:e.required,label:e.label,isActive:e.isLabelActive||l.dataValue!==null}),a(C.Shallow,o({},B)),a(C.Button,o({},B))]})}},te=e=>{var l;let t=o({},e);return t=d(o({emptySelect:!0,SelectorMode:"original",SelectorPosition:3},t),{freeCSS:o({cursor:"pointer"},t.freeCSS)}),t.emptySelect&&(t.options=[{value:null,label:a(E.Supplement,{fontColor:"4.thin",children:"\u672A\u9078\u629E"})},...t.options]),t.value=(l=t.value)!=null?l:null,t.options.forEach((s,i)=>{if(!s)return;let{type:m,value:u,searchValue:g}=s,y=g||S.is.string(u)&&u||S.Stringify(u||"")||"";t.options[i]=d(o({id:h()},s),{value:u,searchValue:y,type:m||"selector"})}),S.is.nullish(t.rightIcon)&&(t.rightIcon=a(De,{children:a(Z.AngleDown,{})})),a(Fe,{componentId:t.componentId,children:C.Core,states:_e(t)})};export{te as Select,te as default};
1
+ import{b as o,c as d,d as q}from"../../chunk-C5N2D3ZX.js";import{Fragment as te,jsx as a,jsxs as V}from"react/jsx-runtime";import S,{UUID as C}from"jmini";import{useState as A,useEffect as z}from"react";import{ExtractStyles as he}from"../../@utils";import{Box as h,FAI as Z,Column as Ce}from"../../atoms";import{Literal as E,Row as H}from"../../mols";import{Button as Ve}from"../Button";import{Sheet as Oe}from"../Sheet";import{OptionalInputWrapper as xe,BoxWrapper as Fe,CoreEffects as k,DefaultBoxishStyles as Te}from"./core";import{InputAutocompleteClasses as R}from"../../@styles/componentClasses";import{InputLabel as _e}from"./Label";import{RightIcon as we}from".";function De(e){let{value:t,states:l}=e,{required:s,options:i}=l,m=[];return s&&t===null&&m.push({type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"}),{ok:!m.filter(({type:u})=>u=="invalid").length,notice:m}}const b={FilterSelectableOptions:(e,t)=>{let l=e.rootStates.options;return t||(l=l.filter(s=>(s==null?void 0:s.type)!="label")),l},Shallow:e=>{let{rootStates:t,val_status:l}=e,s=he(t);return a(h,{position:"absolute",top:0,left:0,right:0,height:0,overflow:"hidden",opacity:"trans",freeCSS:{zIndex:3,pointerEvents:"none"},children:a(E.Description,d(o({className:t.className},s),{position:"absolute",width:1,freeCSS:d(o({},s.freeCSS),{color:"orange"}),children:a(h,{"data-input-value-shallow":l.componentId,children:"A"})}))})},Button:e=>V(te,{children:[a(b.LegacySelector,o({},e)),a(b.Original,o({},e))]}),Placeholder:e=>!e.rootStates.placeholder||e.val_status.dataValue!==null?null:a(h,{position:"absolute",opacity:"middle",fontColor:"3.blur",children:e.rootStates.placeholder||""}),Original:e=>{let{rootStates:t,val_preventOpenSelectorOnFocus:l,set_preventOpenSelectorOnFocus:s,val_optionFocused:i,set_optionFocused:m,val_status:u,set_status:g,val_selectorOpen:y,set_selectorOpen:p}=e,N=t,{tone:B,required:F,form:T,className:O,label:le,isLabelActive:ae,placeholder:oe,enableFormSubmit:L,emptySelect:$,checkValidationAtFirst:W,onValidate:ne,onValidateDelay:re,onUpdateValue:se,onUpdateValidValue:ie,onUserAction:ue,value:P="",options:M,leftIndicator:ce,rightIndicator:j,leftIcon:de,rightIcon:Se,componentId:pe,status_id:fe,wrapStyles:me,SelectedCellStyles:ye,SelectorCellStyles:ve,SelectorMode:ge,SelectorStyles:be,SelectorPosition:Ie}=N,n=q(N,["tone","required","form","className","label","isLabelActive","placeholder","enableFormSubmit","emptySelect","checkValidationAtFirst","onValidate","onValidateDelay","onUpdateValue","onUpdateValidValue","onUserAction","value","options","leftIndicator","rightIndicator","leftIcon","rightIcon","componentId","status_id","wrapStyles","SelectedCellStyles","SelectorCellStyles","SelectorMode","SelectorStyles","SelectorPosition"]);return z(()=>{if(e.rootStates.SelectorMode!="original"||t.disabled)return;let c="select-click-"+t.componentId;if(y){if(!S('[data-input-origin="'+t.componentId+'"]'))return;S(document).addEvent({eventID:c,eventType:"click",callback:r=>{let _=S(r.target),w=!!S(_).parent("."+R("Core")).length;S(_).parent("."+R("Selector")).length||w||p(!1)}})}else S(document).removeEvent([c])},[y]),z(()=>{if(e.rootStates.SelectorMode!="original"||u.eventType=="init"||!y)return;let c=S('[data-input-origin="'+t.componentId+'"]');c&&c.focus()},[u.dataValue]),e.rootStates.SelectorMode!="original"?null:V(te,{children:[a(h,d(o({tabIndex:0},n),{"data-disabled":t.disabled,"data-show-validation":k.isShowValidation(u,!!W),"data-component-id":u.componentId,"data-input-origin":u.componentId,className:[O,R("Core")].join(" "),onFocus:c=>{if(n!=null&&n.onFocus&&(n==null||n.onFocus(c)),g(f=>d(o({},f),{eventID:C(12),isFocusing:!0})),!t.disabled){if(l)return s(!1);p(!0)}},onBlur:c=>{n!=null&&n.onBlur&&(n==null||n.onBlur(c)),g(f=>d(o({},f),{eventID:C(12),isFocusing:!1}))},onClick:c=>{n!=null&&n.onClick&&(n==null||n.onClick(c)),!t.disabled&&p(!0)},onKeyDown:c=>{let{key:f,metaKey:r,ctrlKey:_}=c,w=r||_;if(n!=null&&n.onKeyDown&&(n==null||n.onKeyDown(c)),L&&k.SubmitForm(c,T),!t.disabled){if(S.scope(()=>{if(!["ArrowDown","ArrowUp"].includes(f))return;if(c.preventDefault(),!y)return p(!0);let I=f=="ArrowDown"?1:-1,v=b.FilterSelectableOptions(e),K=v.length-1,x=null;S.scope(()=>{var J,X,G,Q,Y;let D=v.findIndex(U=>(U==null?void 0:U.id)==i);if(I==1){if(x=(J=v[0])==null?void 0:J.id,w){x=v[K].id;return}if(D==-1||D==K)return;x=(X=v[D+1])==null?void 0:X.id}else{if(x=(G=v[K])==null?void 0:G.id,w){x=(Q=v[0])==null?void 0:Q.id;return}if(D==-1||D==0)return;x=(Y=v[D-1])==null?void 0:Y.id}}),m(x)}),f=="Escape")p(!1);else if(f=="Tab")p(!1);else if(f=="Backspace")g(I=>d(o({},I),{dataValue:null,eventType:"update",eventID:C(12),isInspected:!1}));else if(f==" ")c.preventDefault(),p(!0);else if(f=="Enter"){if(!y)return p(!0);c.preventDefault();let I=t.options.find(v=>(v==null?void 0:v.id)==i);if(!I)return;g(v=>d(o({},v),{dataValue:I==null?void 0:I.value,eventType:"update",eventID:C(12),isInspected:!1})),p(!1)}}},children:V(H.Left,{gap:0,children:[a(h,{freeCSS:{width:0},overflow:"hidden",opacity:"trans",children:"A"}),V(H.Left,{flexWrap:!0,gap:"1/3",freeCSS:{letterSpacing:".5px"},children:[a(b.Placeholder,o({},e)),a(b.Selected,o({},e))]})]})})),y&&a(b.Selector,o({},e))]})},LegacySelector:e=>{let{rootStates:t,val_preventOpenSelectorOnFocus:l,set_preventOpenSelectorOnFocus:s,val_optionFocused:i,set_optionFocused:m,val_status:u,set_status:g,val_selectorOpen:y,set_selectorOpen:p}=e,f=t,{tone:B,required:F,form:T,className:O,label:le,isLabelActive:ae,placeholder:oe,enableFormSubmit:L,emptySelect:$,checkValidationAtFirst:W,onValidate:ne,onValidateDelay:re,onUpdateValue:se,onUpdateValidValue:ie,onUserAction:ue,onKeyDown:P,onChange:M,value:ce="",options:j,leftIndicator:de,rightIndicator:Se,leftIcon:pe,rightIcon:fe,componentId:me,status_id:ye,wrapStyles:ve,SelectedCellStyles:ge,SelectorCellStyles:be,SelectorMode:Ie,SelectorStyles:n,SelectorPosition:N}=f,c=q(f,["tone","required","form","className","label","isLabelActive","placeholder","enableFormSubmit","emptySelect","checkValidationAtFirst","onValidate","onValidateDelay","onUpdateValue","onUpdateValidValue","onUserAction","onKeyDown","onChange","value","options","leftIndicator","rightIndicator","leftIcon","rightIcon","componentId","status_id","wrapStyles","SelectedCellStyles","SelectorCellStyles","SelectorMode","SelectorStyles","SelectorPosition"]);return e.rootStates.SelectorMode!="legacy"?null:V(h,d(o({htmlTag:"select",tabIndex:0},c),{"data-disabled":t.disabled,"data-show-validation":k.isShowValidation(u,!!W),"data-component-id":u.componentId,"data-input-origin":u.componentId,className:[O,R("Core")].join(" "),onKeyDown:r=>{P&&P(r),L&&k.SubmitForm(r,T)},onChange:r=>{let{value:_}=r.target;g(w=>d(o({},w),{dataValue:_,eventType:"update",eventID:C(12),isInspected:!1,isValidated:!1,notice:[]})),M&&M(r)},children:[!!$&&a("option",{value:"null",children:"\u9078\u629E"}),j.map(r=>S.is.nullish(r==null?void 0:r.value)?null:a("option",{value:r==null?void 0:r.value,children:(r==null?void 0:r.label)||(r==null?void 0:r.value)},String(r==null?void 0:r.value)))]}))},Selector:e=>{var s;z(()=>{let i=S(`[data-selector-id="${e.val_status.componentId}"]`)[0];if(!i)return;let m=S(`[data-select-input-value="${e.val_optionFocused}"]`)[0];m&&(i.scrollTop=m.offsetTop-24)},[e.val_optionFocused]);let t=b.FilterSelectableOptions(e,!0),l={position:"absolute",minWidth:1,freeCSS:{zIndex:1e3}};switch(e.rootStates.SelectorPosition){case 1:l.bottom="100%",l.left=0,l.paddingBottom="1/3";break;case 2:l.bottom="100%",l.right=0,l.paddingBottom="1/3";break;case 3:l.top="100%",l.left=0,l.paddingTop="1/3";break;case 4:l.top="100%",l.right=0,l.paddingTop="1/3";break;default:break}return a(h,d(o({},l),{children:a(Oe.Body,d(o({className:R("Selector"),ssCardBox:!0,borderRadius:"2.tone.secondary",boxShadow:"1.normal",overflow:"auto","data-selector-id":e.val_status.componentId},e.rootStates.SelectorStyles),{freeCSS:o({minWidth:12*6,maxHeight:12*24},(s=e.rootStates.SelectorStyles)==null?void 0:s.freeCSS),children:V(Ce,{gap:"1/12",padding:[1,0],children:[t.map((i,m)=>{if(!i)return null;let{type:u,value:g}=i,y=e.val_optionFocused==i.id,p=e.val_status.dataValue===g;return u=="label"?a(h,{children:i.label||i.value},C()):a(Ve.Sub.S,d(o({"data-select-input-value":i.id,color:"cloud",backgroundColor:"trans",borderRadius:0,fontColor:"2.normal",textAlign:"left",padding:["1/2",1],isActive:p||y,isActiveStyles:y?{backgroundColor:"cloud"}:{backgroundColor:"theme.opa.few",fontColor:"theme"}},e.rootStates.SelectorCellStyles),{onClick:B=>{e.set_status(F=>d(o({},F),{dataValue:g,eventType:"update",eventID:C(12),isInspected:!1})),e.set_selectorOpen(!1),e.set_preventOpenSelectorOnFocus(!0)},children:V(H.Left,{gap:"1/2",children:[p&&a(Z.Check,{fontColor:"theme"}),a(E.Supplement,{transition:"short",flexSizing:0,children:i.label||i.value})]})}),i.id)}),!t.length&&a(E.Supplement,{padding:[0,1],fontColor:"4.thin",children:"\u5019\u88DC\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093"},"no-selector-notice")]})}))}))},Selected:e=>{let t=e.rootStates.options.find(l=>S.is.equal(l==null?void 0:l.value,e.val_status.dataValue));return!t||e.val_status.dataValue===null&&(e.rootStates.label||e.rootStates.placeholder)?null:a(h,d(o({},e.rootStates.SelectedCellStyles),{children:(t==null?void 0:t.label)||(t==null?void 0:t.value)}),String(t==null?void 0:t.value))},Core:e=>{var F,T;let{value:t}=e,[l,s]=A(k.DefaultStatus(e.componentId,t)),[i,m]=A(!1),[u,g]=A(!1),[y,p]=A(((F=e.options.find(O=>(O==null?void 0:O.value)===e.value))==null?void 0:F.id)||((T=e.options[0])==null?void 0:T.id)||""),B={rootStates:e,val_preventOpenSelectorOnFocus:i,set_preventOpenSelectorOnFocus:m,val_optionFocused:y,set_optionFocused:p,val_selectorOpen:u,set_selectorOpen:g,val_status:l,set_status:s};return k.CommonEffects({type:"select",states:e,val_status:l,set_status:s,SystemValidation:De}),V(Fe,{val_status:l,set_status:s,states:e,children:[a(_e,{componentId:e.componentId,fontSize:e.fontSize,required:e.required,label:e.label,isActive:e.isLabelActive||l.dataValue!==null}),a(b.Shallow,o({},B)),a(b.Button,o({},B))]})}},ee=e=>{var l;let t=o({},e);return t=d(o({emptySelect:!0,SelectorMode:"original",SelectorPosition:3},t),{freeCSS:o({cursor:"pointer"},t.freeCSS)}),t.emptySelect&&(t.options=[{value:null,label:a(E.Supplement,{fontColor:"4.thin",children:"\u672A\u9078\u629E"})},...t.options]),t.value=(l=t.value)!=null?l:null,t.options.forEach((s,i)=>{if(!s)return;let{type:m,value:u,searchValue:g}=s,y=g||S.is.string(u)&&u||S.Stringify(u||"")||"";t.options[i]=d(o({id:C()},s),{value:u,searchValue:y,type:m||"selector"})}),S.is.nullish(t.rightIcon)&&(t.rightIcon=a(we,{children:a(Z.AngleDown,{})})),a(xe,{componentId:t.componentId,children:b.Core,states:Te(t)})};export{ee as Select,ee as default};
@@ -1 +1 @@
1
- import{b,c as h,d as V}from"../../chunk-C5N2D3ZX.js";import{jsx as p,jsxs as N}from"react/jsx-runtime";import L,{UUID as x}from"jmini";import{useState as W,useEffect as K}from"react";import{$$fromRoot as C,GenerateHTMLProps as P}from"../../@utils";import{Box as w,Flex as B,Column as $}from"../../atoms";import{Button as q}from"../Button";import{OptionalInputWrapper as O,BoxWrapper as G,CoreEffects as k}from"./core";import{InputSliderClasses as m}from"../../@styles/componentClasses";function X(t){let{value:e,states:o}=t,{required:s}=o,n=[];return s&&!e&&n.push({type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"}),{ok:!n.filter(({type:r})=>r=="invalid").length,notice:n}}const A=t=>{let{value:e,val_status:o}=t,{min:s,max:n,step:r}=o;e=Math.max(e,s),e=Math.min(e,n);let a=e/n*n;return a=Math.round(a/r),{stepValue:a*r,stepIndex:a,positionLeft:a*r/n*100+"%"}},F={IndicatorLabels:t=>{let{componentId:e,min:o,max:s,step:n,customLegends:r}=t,u=[],a=Math.round(o/n),i=Math.round(s/n),c=i-a+1;for(var d=a;d<=i;d++){let l=d*n;l=Math.max(l,o),l=Math.min(l,s);let S=l/s*100+"%";u.push(p(w,{className:m("Label"),id:"Legend-"+e+"-"+d,display:d==a||d==i?"flex":"none",position:"absolute",top:0,unitHeight:1,unitWidth:1.5,transition:"middle",fontColor:"1.clear",verticalAlign:"center",horizontalAlign:"center",freeCSS:{left:S,whiteSpace:"nowrap",textAlign:"center"},children:r?r(l):l.rank()},l))}return K(()=>{const l=()=>{let S=C("#Labels-"+e),{width:f}=S.position(),R=Math.round(f/50)-1,y=Math.round(c/R);for(let v=a+1;v<i;v++)C("#Legend-"+e+"-"+v).css({display:v%y==0?"flex":"none"})};return L(window).addEvent({eventID:"SliderResizeCallback-"+e,eventType:"resize",callback:()=>{l()}}),l(),()=>{L(window).removeEvent("SliderResizeCallback-"+e)}},[]),p(B,{className:m("Labels"),verticalAlign:"center",horizontalAlign:"between",fontSize:"0.xs",position:"relative",unitHeight:1,id:"Labels-"+e,children:p(w,{position:"absolute",top:0,left:0,bottom:0,freeCSS:{right:12*1.5},children:u})})},Rail:t=>{let{val_status:e,set_status:o,DotData:s,form:n,enableFormSubmit:r}=t,{componentId:u}=e;return N(B,{className:m("Rail"),position:"relative",paddingLeft:"1/2",unitHeight:1.5,verticalAlign:"center",freeCSS:{zIndex:1,cursor:"pointer"},onPointerDown:a=>{t.rootStates.disabled||(a.stopPropagation(),g.Effects.Start(a,{val_status:e,set_status:o,DotData:s}))},children:[p(w,{className:m("Bar"),backgroundColor:"layer.4",position:"relative",borderRadius:"1.tone.primary",transition:"middle",flexSizing:"none",unitHeight:"2/3",width:1,id:u+"_Bar",children:p(w,{className:m("BarColor"),position:"relative",height:1,width:0,left:0,transition:"long",borderRadius:"inherit",backgroundColor:t.color,opacity:"middle",overflow:"hidden",freeCSS:{width:s.positionLeft},id:u+"_BarColor"})}),p(w,{className:m("BallWrap"),position:"absolute",top:0,left:0,bottom:0,freeCSS:{right:12*1.5},children:p(q.Plain,{className:m("Ball"),position:"absolute",boxShadow:"1.remark",backgroundColor:t.color,top:0,left:0,ssSquare:1.5,borderRadius:"1.tone.primary",freeCSS:{zIndex:2,left:s.positionLeft},id:u+"_Ball",onKeyDown:a=>{g.KeyDownEvent({event:a,val_status:e,set_status:o,DotData:s}),r&&k.SubmitForm(a,n)},onFocus:a=>{o(i=>h(b({},i),{eventID:x(12),isFocusing:!0}))},onBlur:a=>{o(i=>h(b({},i),{eventID:x(12),isFocusing:!1}))}})})]})}},g={Effects:{Start:(t,e)=>{L(document).addEvent({eventID:"SliderMouseMove",eventType:"mousemove",callback:o=>{g.Effects.Move(o,e)},options:{passive:!1}}).addEvent({eventID:"SliderTouchMove",eventType:"touchmove",callback:o=>{g.Effects.Move(o,e)},options:{passive:!1}}).addEvent({eventID:"SliderMouseUp",eventType:"mouseup",callback:()=>{g.Effects.End()}}).addEvent({eventID:"SliderTouchEnd",eventType:"touchend",callback:()=>{g.Effects.End()}})},Move:(t,e)=>{let o=L.getCursor(t).x,{val_status:s,set_status:n}=e,{componentId:r,min:u,max:a}=s,i=C("#"+r+"_Ball"),c=C("#"+r+"_Bar"),d=C("#"+r+"_BarColor"),{width:l,left:S}=c.position(),f=(o-S)/l;f=Math.max(f,0),f=Math.min(f,1);let R=f*a,y=A({value:R,val_status:s}),v=y.positionLeft,T=y.stepValue;return i.css({left:v}),d.css({width:v}),n(D=>{let E=D.dataValue;return T==E?D:h(b({},D),{dataValue:T,eventType:"update",eventID:x(12),isInspected:!1})}),t.preventDefault(),t.stopPropagation(),!1},End:()=>{L(document).removeEvent(["SliderMouseMove","SliderTouchMove","SliderMouseUp","SliderTouchEnd"])}},KeyDownEvent:t=>{let{event:e,val_status:o,set_status:s}=t,{min:n,max:r,step:u}=o,{key:a,metaKey:i,ctrlKey:c}=e,d=c||i,l=o.dataValue;a.match(/Arrow/)&&(e.preventDefault(),a.match(/Left|Up/)?d?l=n:l-=u:a.match(/Right|Down/)&&(d?l=r:l+=u),l=Math.max(Math.min(l,r),n),s(S=>h(b({},S),{dataValue:l,eventType:"update",eventID:x(12),isInspected:!1})))}},j=t=>{let M=t,{color:e="theme",required:o,form:s="",legends:{enable:n=!0,custom:r,showAlways:u=!1}={},min:a,max:i,step:c,enableFormSubmit:d,checkValidationAtFirst:l,onValidate:S,onValidateDelay:f,onUpdateValue:R,onUpdateValidValue:y,onUserAction:v,value:T="",className:D,wrapStyles:E}=M,H=V(M,["color","required","form","legends","min","max","step","enableFormSubmit","checkValidationAtFirst","onValidate","onValidateDelay","onUpdateValue","onUpdateValidValue","onUserAction","value","className","wrapStyles"]),[I,_]=W({componentId:t.componentId||"",dataValue:T,min:a,max:i,step:c,eventType:"init",eventID:x(12)});k.CommonEffects({type:"slider",states:t,val_status:I,set_status:_,SystemValidation:X});let U=A({value:I.dataValue,val_status:I});return p(G,{val_status:I,set_status:_,states:t,children:N($,h(b({gap:"1/2",flexSizing:"auto"},H),{className:[m("Wrap"),D,m("ShowLegendsAlways_"+u)].join(" "),children:[p(F.Rail,{rootStates:t,color:e,val_status:I,set_status:_,DotData:U,form:s,enableFormSubmit:d}),!!n&&p(F.IndicatorLabels,{componentId:I.componentId,min:a,max:i,step:c,customLegends:r})]}))})},z=t=>{let e=h(b({},t),{freeCSS:b({minWidth:120},t.freeCSS)});return p(O,{componentId:t.componentId,children:j,states:P(e)})};export{z as Slider,z as default};
1
+ import{b,c as I,d as V}from"../../chunk-C5N2D3ZX.js";import{jsx as p,jsxs as z}from"react/jsx-runtime";import L,{UUID as x}from"jmini";import{useState as U,useEffect as W}from"react";import{$$fromRoot as C,GenerateHTMLProps as K}from"../../@utils";import{Box as w,Flex as B,Column as P}from"../../atoms";import{Button as $}from"../Button";import{OptionalInputWrapper as q,BoxWrapper as O,CoreEffects as k}from"./core";import{InputSliderClasses as m}from"../../@styles/componentClasses";function G(t){let{value:e,states:o}=t,{required:s}=o,n=[];return s&&!e&&n.push({type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"}),{ok:!n.filter(({type:r})=>r=="invalid").length,notice:n}}const A=t=>{let{value:e,val_status:o}=t,{min:s,max:n,step:r}=o;e=Math.max(e,s),e=Math.min(e,n);let a=e/n*n;return a=Math.round(a/r),{stepValue:a*r,stepIndex:a,positionLeft:a*r/n*100+"%"}},h={IndicatorLabels:t=>{let{componentId:e,min:o,max:s,step:n,customLegends:r}=t,u=[],a=Math.round(o/n),i=Math.round(s/n),c=i-a+1;for(var d=a;d<=i;d++){let l=d*n;l=Math.max(l,o),l=Math.min(l,s);let S=l/s*100+"%";u.push(p(w,{className:m("Label"),id:"Legend-"+e+"-"+d,display:d==a||d==i?"flex":"none",position:"absolute",top:0,unitHeight:1,unitWidth:1.5,transition:"middle",fontColor:"1.clear",verticalAlign:"center",horizontalAlign:"center",freeCSS:{left:S,whiteSpace:"nowrap",textAlign:"center"},children:r?r(l):l.rank()},l))}return W(()=>{const l=()=>{let S=C("#Labels-"+e),{width:f}=S.position(),R=Math.round(f/50)-1,y=Math.round(c/R);for(let v=a+1;v<i;v++)C("#Legend-"+e+"-"+v).css({display:v%y==0?"flex":"none"})};return L(window).addEvent({eventID:"SliderResizeCallback-"+e,eventType:"resize",callback:()=>{l()}}),l(),()=>{L(window).removeEvent("SliderResizeCallback-"+e)}},[]),p(B,{className:m("Labels"),verticalAlign:"center",horizontalAlign:"between",fontSize:"0.xs",position:"relative",unitHeight:1,id:"Labels-"+e,children:p(w,{position:"absolute",top:0,left:0,bottom:0,freeCSS:{right:12*1.5},children:u})})},Rail:t=>{let{val_status:e,set_status:o,DotData:s,form:n,enableFormSubmit:r}=t,{componentId:u}=e;return z(B,{className:m("Rail"),position:"relative",paddingLeft:"1/2",unitHeight:1.5,verticalAlign:"center",freeCSS:{zIndex:1,cursor:"pointer"},onPointerDown:a=>{t.rootStates.disabled||(a.stopPropagation(),h.Effects.Start(a,{val_status:e,set_status:o,DotData:s}))},children:[p(w,{className:m("Bar"),backgroundColor:"layer.4",position:"relative",borderRadius:"1.tone.primary",transition:"middle",flexSizing:"none",unitHeight:"2/3",width:1,id:u+"_Bar",children:p(w,{className:m("BarColor"),position:"relative",height:1,width:0,left:0,transition:"long",borderRadius:"inherit",backgroundColor:t.color,opacity:"middle",overflow:"hidden",freeCSS:{width:s.positionLeft},id:u+"_BarColor"})}),p(w,{className:m("BallWrap"),position:"absolute",top:0,left:0,bottom:0,freeCSS:{right:12*1.5},children:p($.Plain,{className:m("Ball"),position:"absolute",boxShadow:"1.remark",backgroundColor:t.color,top:0,left:0,ssSquare:1.5,borderRadius:"1.tone.primary",freeCSS:{zIndex:2,left:s.positionLeft},id:u+"_Ball",onKeyDown:a=>{h.KeyDownEvent({event:a,val_status:e,set_status:o,DotData:s}),r&&k.SubmitForm(a,n)},onFocus:a=>{o(i=>I(b({},i),{eventID:x(12),isFocusing:!0}))},onBlur:a=>{o(i=>I(b({},i),{eventID:x(12),isFocusing:!1}))}})})]})},Effects:{Start:(t,e)=>{L(document).addEvent({eventID:"SliderMouseMove",eventType:"mousemove",callback:o=>{h.Effects.Move(o,e)},options:{passive:!1}}).addEvent({eventID:"SliderTouchMove",eventType:"touchmove",callback:o=>{h.Effects.Move(o,e)},options:{passive:!1}}).addEvent({eventID:"SliderMouseUp",eventType:"mouseup",callback:()=>{h.Effects.End()}}).addEvent({eventID:"SliderTouchEnd",eventType:"touchend",callback:()=>{h.Effects.End()}})},Move:(t,e)=>{let o=L.getCursor(t).x,{val_status:s,set_status:n}=e,{componentId:r,min:u,max:a}=s,i=C("#"+r+"_Ball"),c=C("#"+r+"_Bar"),d=C("#"+r+"_BarColor"),{width:l,left:S}=c.position(),f=(o-S)/l;f=Math.max(f,0),f=Math.min(f,1);let R=f*a,y=A({value:R,val_status:s}),v=y.positionLeft,T=y.stepValue;return i.css({left:v}),d.css({width:v}),n(D=>{let E=D.dataValue;return T==E?D:I(b({},D),{dataValue:T,eventType:"update",eventID:x(12),isInspected:!1})}),t.preventDefault(),t.stopPropagation(),!1},End:()=>{L(document).removeEvent(["SliderMouseMove","SliderTouchMove","SliderMouseUp","SliderTouchEnd"])}},KeyDownEvent:t=>{let{event:e,val_status:o,set_status:s}=t,{min:n,max:r,step:u}=o,{key:a,metaKey:i,ctrlKey:c}=e,d=c||i,l=o.dataValue;a.match(/Arrow/)&&(e.preventDefault(),a.match(/Left|Up/)?d?l=n:l-=u:a.match(/Right|Down/)&&(d?l=r:l+=u),l=Math.max(Math.min(l,r),n),s(S=>I(b({},S),{dataValue:l,eventType:"update",eventID:x(12),isInspected:!1})))}},X=t=>{let M=t,{color:e="theme",required:o,form:s="",legends:{enable:n=!0,custom:r,showAlways:u=!1}={},min:a,max:i,step:c,enableFormSubmit:d,checkValidationAtFirst:l,onValidate:S,onValidateDelay:f,onUpdateValue:R,onUpdateValidValue:y,onUserAction:v,value:T="",className:D,wrapStyles:E}=M,N=V(M,["color","required","form","legends","min","max","step","enableFormSubmit","checkValidationAtFirst","onValidate","onValidateDelay","onUpdateValue","onUpdateValidValue","onUserAction","value","className","wrapStyles"]),[g,_]=U({componentId:t.componentId||"",dataValue:T,min:a,max:i,step:c,eventType:"init",eventID:x(12)});k.CommonEffects({type:"slider",states:t,val_status:g,set_status:_,SystemValidation:G});let H=A({value:g.dataValue,val_status:g});return p(O,{val_status:g,set_status:_,states:t,children:z(P,I(b({gap:"1/2",flexSizing:"auto"},N),{className:[m("Wrap"),D,m("ShowLegendsAlways_"+u)].join(" "),children:[p(h.Rail,{rootStates:t,color:e,val_status:g,set_status:_,DotData:H,form:s,enableFormSubmit:d}),!!n&&p(h.IndicatorLabels,{componentId:g.componentId,min:a,max:i,step:c,customLegends:r})]}))})},F=t=>{let e=I(b({},t),{freeCSS:b({minWidth:120},t.freeCSS)});return p(q,{componentId:t.componentId,children:X,states:K(e)})};export{F as Slider,F as default};
@@ -1 +1 @@
1
- import{b as f,c as h}from"../../../chunk-C5N2D3ZX.js";import{Fragment as G,jsx as t,jsxs as u}from"react/jsx-runtime";import{createElement as K}from"react";import v,{UUID as A,Time as c}from"jmini";import H,{useState as D,useEffect as M}from"react";import{Box as C,Flex as q,Grid as O,FAI as R,Column as b,FlexMargin as B}from"../../../atoms";import{Row as S,Literal as k}from"../../../mols";import{Button as T}from"../../Button";import Y from"../../Sheet";import L from"../Select";import{Radio as J}from"../List";import{RightIcon as F}from"..";import{InputTimeClasses as P}from"../../../@styles/componentClasses";const X=a=>{let{restrict:n}=a;return n=="year"?t(m.Year,f({},a)):n=="month"?t(m.Month.index,f({},a)):n=="week"?"[DEV]":n=="date"?t(m.Date.index,f({},a)):n=="locale.jp.warekiDate"?t(m.Locale.JP.WarekiDate.index,f({},a)):n=="clock"?t(m.Clock.index,f({},a)):n=="period.month"?t(m.Period.Month.index,f({},a)):n=="period.date"?t(m.Period.Date.index,f({},a)):null},m={YearOptions:a=>{var l,o;let n=[],p=Number((l=a==null?void 0:a.min)!=null?l:1900),r=Number((o=a==null?void 0:a.max)!=null?o:c().addYear(10).year);for(let e=p;e<=r;e++){let i=[e],[d,s]=v.transformer.wareki(e).value;d&&i.push(t(k.Supplement,{fontSize:"0.xs",fontColor:"4.thin",children:d},1)),s&&i.push(u(k.Supplement,{fontSize:"0.xs",fontColor:"4.thin",children:["[",s,"]"]},2)),n.unshift({value:e,label:t(S.Left,{gap:"1/4",verticalAlign:"baseline",flexWrap:!0,children:i})})}return n},Year:a=>{let{min:n,max:p}=a,[r,l]=D(v.scope(()=>{let[o]=String(a.defaultValue).split(/\D/);return v.is.nullish(o)&&([o]=c().toFormat("%Y").split("-")),{eventType:"init",from:c().setYear(Number(o))}}));return M(()=>{a.onValueUpdate({value:String(r.from.year||null),era:"year",eventType:r.eventType})},[r]),u(b,{freeCSS:{minWidth:12*16},children:[t(k.Supplement,{children:"\u5E74\u306E\u9078\u629E"}),t(L,{fontSize:"1.mini",override:"force",value:r.from.year||null,SelectorStyles:{freeCSS:{maxHeight:12*32,minWidth:12*16}},options:m.YearOptions({min:n,max:p}),onUpdateValidValue:o=>{l(e=>({eventType:"update",from:e.from.clone().setYear(Number(o))}))}}),t(m.Parts.FooterNav,h(f({},a),{set_value:l,onClear:()=>{l(o=>({eventType:"update",from:c(null)}))}}))]})},Month:{index:a=>{let{min:n,max:p}=a,[r,l]=D(v.scope(()=>{let[o,e]=String(a.defaultValue).split(/\D/);(v.is.nullish(o)||v.is.nullish(e))&&([o,e]=c().toFormat("%Y-%M").split("-"));let i=c(),d=c().setYear(Number(o)||i.year).setMonth(Number(e)||i.month).setDate(1);return{eventType:"init",from:d,display:d}}));return M(()=>{a.onValueUpdate({value:r.from.toFormatYM(),era:"year",eventType:r.eventType})},[r]),u(b,{freeCSS:{minWidth:12*16},children:[u(S.Left,{children:[t(k.Paragraph,{children:r.from.toFormatYM()||"----/--"}),t(B,{}),u(S.Center,{gap:"2/3",children:[t(T.Border.XS,{fontColor:"theme",borderRadius:"2.tone.secondary",onClick:()=>{let o=c();l({eventType:"update",from:o,display:o})},children:"\u4ECA\u6708"}),t(L,{emptySelect:!1,value:r.display.year,options:m.YearOptions({}),override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,SelectorStyles:{freeCSS:{minWidth:12*12}},rightIcon:t(F,{right:"2/3",children:t(R.AngleDown,{})}),onUpdateValidValue:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().setYear(Number(o))}))}})]}),t(m.Parts.ShiftButtons,{callback:o=>{l(e=>{let i=e.display.clone().addYear(o);return i.year<1900&&i.setYear(2100),i.year>2100&&i.setYear(1900),h(f({},e),{eventType:"update",display:i})})}})]}),t(C,{borderTop:!0}),t(S.Left,{verticalAlign:"top",flexWrap:!0,children:Array.from({length:4}).map((o,e)=>{let i=m.Parts.MonthCalendar({min:n,max:p,targetYear:r.display.year+e-1,from:r.from,onChange:d=>{l(s=>h(f({},s),{eventType:"update",from:d}))}});return t(S.Center,{flexSizing:0,ssHiddenOnBreak:e<1||e>2,children:i},e)})}),t(m.Parts.FooterNav,h(f({},a),{set_value:l,onClear:()=>{l(o=>h(f({},o),{eventType:"commit",from:c(null)}))}}))]})}},Date:{index:a=>{let{min:n,max:p}=a,[r,l]=D(v.scope(()=>{var g;let[o,e,i]=(g=String(a.defaultValue))==null?void 0:g.split(/\D/);(v.is.nullish(o)||v.is.nullish(e)||v.is.nullish(i))&&([o,e,i]=c().toFormat("%Y-%M-%D").split("-"));let d=c(),s=c([Number(o)||d.year,(Number(e)||d.month).zeroEmbed(2),(Number(i)||d.date).zeroEmbed(2)].join("/"));return{eventType:"init",era:"year",display:s,from:s}}));return M(()=>{a.onValueUpdate({value:r.from.toFormatYMD(),era:"year",eventType:r.eventType})},[r]),u(b,{freeCSS:{minWidth:12*16},children:[u(S.Left,{flexWrap:!0,children:[t(k.Paragraph,{children:r.from.toFormatYMD()||"----/--/--"}),t(B,{}),u(S.Center,{horizontalAlign:"left",gap:"1/2",children:[t(T.Border.XS,{fontColor:"theme",borderRadius:"2.tone.secondary",onClick:()=>{let o=c();l({eventType:"update",era:"year",from:o,display:o})},children:"\u4ECA\u65E5"}),t(L,{override:"force",emptySelect:!1,value:r.display.year,options:m.YearOptions({}),fontSize:"1.mini",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,SelectorStyles:{freeCSS:{minWidth:12*12}},onUpdateValidValue:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().setYear(Number(o))}))},rightIcon:t(F,{right:"2/3",children:t(R.AngleDown,{})})}),t(L,{override:"force",emptySelect:!1,value:r.display.month,options:(()=>{let o=[];for(let e=1;e<=12;e++)o.push({value:e,label:String(e)+"\u6708"});return o})(),fontSize:"1.mini",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,SelectorStyles:{freeCSS:{minWidth:12*8}},rightIcon:t(F,{right:"2/3",children:t(R.AngleDown,{})}),onUpdateValidValue:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().setMonth(Number(o))}))}})]}),t(m.Parts.ShiftButtons,{callback:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().addMonth(o)}))}})]}),t(C,{borderTop:!0}),t(S.Left,{verticalAlign:"top",flexWrap:!0,children:Array.from({length:4}).map((o,e)=>{let i=m.Parts.Calendar({min:n,max:p,targetMonth:r.display.clone().addMonth(e-1),from:r.from,onChange:d=>{l(s=>h(f({},s),{eventType:"update",from:d}))}});return t(S.Center,{flexSizing:0,ssHiddenOnBreak:e<1||e>2,children:i},e)})}),t(m.Parts.FooterNav,h(f({},a),{set_value:l,onClear:()=>{l(o=>h(f({},o),{eventType:"commit",from:c(null)}))}}))]})}},Locale:{JP:{WarekiDate:{index:a=>{let[n,p]=D(v.scope(()=>{var s;let[r,l,o]=(s=String(a.defaultValue))==null?void 0:s.split(/\D/),e=a.era||"year";if(v.is.nullish(r)||v.is.nullish(l)||v.is.nullish(o)){let g=c();e=="heisei"?g.setYear(1989):e=="shouwa"?g.setYear(1926):e=="taisho"?g.setYear(1912):e=="meiji"&&g.setYear(1868),[r,l,o]=g.toFormat("%Y-%M-%D").split("-")}let i=c(),d=c([Number(r)||i.year,(Number(l)||i.month).zeroEmbed(2),(Number(o)||i.date).zeroEmbed(2)].join("/"));return{eventType:"init",era:e,from:d}}));return M(()=>{a.onValueUpdate({value:n.from.toFormatYMD(),era:n.era,eventType:n.eventType})},[n]),u(b,{children:[u(S.Left,{verticalAlign:"unset",children:[t(m.Locale.JP.WarekiDate.EraSelect,{val_value:n,set_value:p}),t(m.Locale.JP.WarekiDate.Calendar,{val_value:n,set_value:p})]}),t(m.Parts.FooterNav,h(f({},a),{set_value:p,onClear:()=>{p({eventType:"commit",era:"year",from:c(null)})}}))]})},EraSelect:a=>{let{val_value:n,set_value:p}=a;return t(b,{gap:"1/4",borderRight:!0,paddingRight:1,children:[{value:"year",label:"\u897F\u66A6"},{value:"reiwa",label:"\u4EE4\u548C"},{value:"heisei",label:"\u5E73\u6210",year:1989},{value:"shouwa",label:"\u662D\u548C",year:1926},{value:"taisho",label:"\u5927\u6B63",year:1912},{value:"meiji",label:"\u660E\u6CBB",year:1868}].map(l=>t(T.Clear.S,{fontColor:"3.blur",borderRadius:"2.tone.secondary",isActive:n.era==l.value,isActiveStyles:{backgroundColor:"theme",fontColor:"white",boxShadow:"0.remark"},onClick:()=>{let o=c();l.year&&(o=c().setYear(l.year).setMonth(1).setDate(1)),p({eventType:"update",era:l.value,from:o})},children:l.label},l.value))})},Calendar:a=>{let{val_value:n,set_value:p}=a,r=0,l=c().year+10,o=[];if(n.era=="year")for(let e=1900;e<l;e++)o.unshift({value:e,label:e+"\u5E74"});else if(n.era=="reiwa"){r=2019,l=c().year+10;let e=c().year-2018;for(let i=1;i<=e+10;i++)o.unshift({value:r+i-1,label:"\u4EE4\u548C"+(i==1?"\u5143":i)+"\u5E74"})}else{let e="";n.era=="heisei"?(e="\u5E73\u6210",r=1989,l=2019):n.era=="shouwa"?(e="\u662D\u548C",r=1926,l=1989):n.era=="taisho"?(e="\u5927\u6B63",r=1912,l=1926):n.era=="meiji"&&(e="\u660E\u6CBB",r=1868,l=1912);for(let i=r;i<=l;i++){let d=i==r,s=i-r+1;o.unshift({value:i,label:e+(d?"\u5143":s)+"\u5E74"})}}return u(b,{children:[u(S.Left,{gap:"1/2",children:[t(L,{emptySelect:!1,override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,fontSize:"1.mini",SelectorStyles:{freeCSS:{minWidth:12*12}},rightIcon:t(F,{right:"2/3",children:t(R.AngleDown,{})}),options:o,value:n.from.year,onUpdateValidValue:e=>{p(i=>({era:i.era,eventType:"update",from:i.from.clone().setYear(Number(e))}))}}),t(L,{emptySelect:!1,override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,fontSize:"1.mini",SelectorStyles:{freeCSS:{minWidth:12*9}},rightIcon:t(F,{right:"2/3",children:t(R.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:n.from.month,onUpdateValidValue:e=>{p(i=>({era:i.era,eventType:"update",from:i.from.clone().setMonth(Number(e)).setDate(1)}))}}),t(B,{}),t(m.Parts.ShiftButtons,{callback:e=>{p(i=>({era:i.era,eventType:"update",from:i.from.clone().addMonth(e)}))}})]}),t(m.Parts.Calendar,{showTitle:!1,targetMonth:n.from,from:n.from,onChange:e=>{p(i=>({era:i.era,eventType:"update",from:e}))}})]})}}}},Clock:{index:a=>{let{min:n,max:p}=a,[r,l]=D(v.scope(()=>{let s=String(a.defaultValue).split(/[^\d]/);s[0]||(s=[0,0]);let g=Number(s[0]),x=Number(s[1]);return{eventType:"init",from:c().setHours(g).setMinutes(x)}}));M(()=>{a.onValueUpdate({value:r.from.toFormatHM(),era:"clock",eventType:r.eventType})},[r]);let[o,e]=D(r.from.hours>=12?2:1),[i,d]=D(Number(localStorage.getItem("@env/input/time/selector/clock/minutesUnit")||5));return M(()=>{localStorage.setItem("@env/input/time/selector/clock/minutesUnit",String(i))},[i]),u(b,{freeCSS:{minWidth:12*16},children:[t(b,{gap:"1/2",children:u(S.Center,{children:[t(C,{className:P("ClockBase"),children:t(m.Clock.UI,{val_value:r})}),u(C,{textAlign:"center",fontHeight:1.2,children:[u(k.Paragraph,{children:[r.from.hours.zeroEmbed(2)," : ",r.from.minutes.zeroEmbed(2)]}),u(k.Supplement,{fontColor:"4.thin",children:[r.from.hours>=12&&"PM"||"AM",r.from.hours%12,":",r.from.minutes.zeroEmbed(2)]})]}),t(T.Border.XS,{borderRadius:"2.tone.secondary",fontColor:"theme",onClick:()=>{let s=c().setSeconds(0);e(s.hours>=12?2:1),l({eventType:"update",from:s})},children:"\u73FE\u6642\u523B"})]})}),u(q,{flexType:"row",flexWrap:!1,gap:1,children:[u(b,{flexSizing:0,children:[t(J.Border,{value:[o],options:[{value:0,label:"24H"},{value:1,label:"AM"},{value:2,label:"PM"}],flexType:"col",override:"force",gap:"1/4",cellStyles:{gap:"1/4"},tabIndex:-1,onUpdateValidValue:s=>{let x=r.from.hours%12+(s==2?12:0);e(s),l(y=>({eventType:"update",from:y.from.clone().setHours(x)}))}}),t(C,{borderTop:!0,margin:[0,1]}),t(J.Border,{value:[i],options:[{value:1,label:"/1\u5206"},{value:5,label:"/5\u5206"},{value:10,label:"/10\u5206"}],flexType:"col",gap:"1/4",cellStyles:{gap:"1/4"},tabIndex:-1,onUpdateValidValue:s=>{d(s)}})]}),t(b,{children:u(S.Center,{gap:0,ssCardBox:!0,flexChilds:"even",freeCSS:{minWidth:12*14},children:[t(b,{gap:"1/4",overflow:"auto",padding:"1/2",borderRight:!0,freeCSS:{maxHeight:12*24},children:m.Clock.Hours({current:r.from.hours,min:n,max:p,ampm:o,onClick:s=>{let g=s+(o==2?12:0);l(x=>({eventType:"update",from:x.from.clone().setHours(g)}))}})}),t(b,{gap:"1/4",overflow:"auto",padding:"1/2",freeCSS:{maxHeight:12*24},children:m.Clock.Minutes({current:r.from.minutes,min:n,max:p,unit:i,onClick:s=>{l(g=>({eventType:"update",from:g.from.clone().setMinutes(s)}))}})})]})})]}),t(m.Parts.FooterNav,h(f({},a),{set_value:l,onClear:()=>{l({eventType:"update",from:c().setFirstOfDay()})}}))]})},Hours:a=>{let{ampm:n}=a,p=[],[r]=D(A());M(()=>{v("#"+r+"-"+a.current).focus()},[]);for(let l=0;l<(n==0?24:12);l++){let o=l;n==2&&(o+=12);let e=!1;{let d=Number(String(o*100).replace(/\D/ig,""));if(a.min&&Number(String(a.min).replace(/\D/ig,""))>d&&(e=!0),a.max){let s=Number(String(a.max).replace(/\D/ig,""));d>s&&(e=!0)}}let i=o==a.current;p.push(u(H.Fragment,{children:[u(T.Normal,{id:r+"-"+o,isActive:i,isActiveStyles:{fontColor:"white",backgroundColor:"theme",boxShadow:"0.remark"},isLocked:e,padding:["1/2",1],freeCSS:{whiteSpace:"nowrap"},tabIndex:-1,onClick:()=>{a.onClick(o)},children:[n!=2&&o.zeroEmbed(2),n==2&&(o%12).zeroEmbed(2)]}),t(C,{borderBottom:!0})]},o))}return p},Minutes:a=>{let n=[],[p]=D(A());M(()=>{v("#"+p+"-"+a.current).focus()},[]);for(let r=0;r<60/a.unit;r++){let l=r*a.unit,o=l==a.current;n.push(u(H.Fragment,{children:[t(T.Normal,{id:p+"-"+l,isActive:o,isActiveStyles:{fontColor:"white",backgroundColor:"theme",boxShadow:"0.remark"},padding:["1/2",1],freeCSS:{whiteSpace:"nowrap"},tabIndex:-1,onClick:()=>{a.onClick(l)},children:l.zeroEmbed(2)}),t(C,{borderBottom:!0})]},l))}return n},UI:a=>{let{val_value:n}=a;return t(C,{className:P("ClockUiBase"),flexCenter:!0,children:u(C,{className:P("ClockUi"),backgroundColor:"theme.opa.low",isRounded:!0,position:"relative",children:[t(C,{position:"absolute",backgroundColor:"theme",unitWidth:"1/12",className:[P("Needle"),P("hour")].join(" "),freeCSS:{transform:`rotate(${n.from.hours*30+n.from.minutes/2}deg)`}}),t(C,{position:"absolute",backgroundColor:"theme",unitWidth:"1/12",className:[P("Needle"),P("minute")].join(" "),freeCSS:{transform:`rotate(${n.from.minutes*6}deg)`}})]})})}},Period:{Date:{index:a=>{let{min:n,max:p}=a,[r,l]=D(v.scope(()=>{let[o,e]=v.flatArray(a.defaultValue),i=c(o||void 0).setFirstOfDay(),d=c(e||null).setFirstOfDay();return{eventType:"init",forcus:0,display:i,from:i,to:d}}));return M(()=>{if(!r.to.value)return;if(r.from.value>r.to.value){l(e=>h(f({},e),{eventType:"update",from:e.to,to:e.from}));return}a.onValueUpdate({value:[r.from.toFormatYMD(),r.to.toFormatYMD()],era:"year",eventType:r.eventType})},[r]),u(b,{freeCSS:{minWidth:12*16},children:[u(S.Left,{flexWrap:!0,children:[u(S.Left,{gap:"1/2",children:[u(T.Clear,{color:"cloud",borderRadius:"1.tone.primary",isSemiBoldFont:!0,fontColor:"inherit",onClick:()=>{l(o=>h(f({},o),{forcus:0}))},children:[r.from.toFormatYMD()||"----/--/--",r.forcus==0&&t(m.Parts.PeriodFocusSign,{})]}),t(k.Supplement,{children:"-"}),u(T.Clear,{color:"cloud",borderRadius:"1.tone.primary",isSemiBoldFont:!0,fontColor:"inherit",onClick:()=>{l(o=>h(f({},o),{forcus:1}))},children:[r.to.toFormatYMD()||"----/--/--",r.forcus==1&&t(m.Parts.PeriodFocusSign,{})]})]}),t(B,{}),u(S.Left,{gap:"1/2",children:[t(L,{emptySelect:!1,override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,fontSize:"1.mini",SelectorStyles:{freeCSS:{minWidth:12*12}},rightIcon:t(F,{right:"2/3",children:t(R.AngleDown,{})}),options:m.YearOptions({}),value:r.display.year,onUpdateValidValue:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().setYear(Number(o))}))}}),t(L,{emptySelect:!1,override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,fontSize:"1.mini",SelectorStyles:{freeCSS:{minWidth:12*9}},rightIcon:t(F,{right:"2/3",children:t(R.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:r.display.month,onUpdateValidValue:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().setMonth(Number(o)).setDate(1)}))}}),t(B,{}),t(m.Parts.ShiftButtons,{callback:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().addMonth(o)}))}})]})]}),t(C,{borderBottom:!0}),t(S.Left,{verticalAlign:"top",flexWrap:!0,children:Array.from({length:4}).map((o,e)=>{let i=m.Parts.Calendar({min:n,max:p,targetMonth:r.display.clone().addMonth(e-1),from:r.from,to:r.to,onChange:d=>{if(r.forcus==0){l(s=>h(f({},s),{eventType:"update",forcus:1,from:d,to:c(null)}));return}l(s=>h(f({},s),{eventType:"update",to:d}))}});return t(S.Center,{flexSizing:0,ssHiddenOnBreak:e<1||e>2,children:i},e)})}),t(m.Parts.FooterNav,h(f({},a),{set_value:l,onClear:()=>{l({eventType:"update",forcus:0,display:c(),from:c(null),to:c(null)})}}))]})}},Month:{index:a=>{let{min:n,max:p}=a,[r,l]=D(v.scope(()=>{let[o,e]=v.flatArray(a.defaultValue),i=c(o||void 0).setDate(1).setFirstOfDay(),d=c(e||null).setDate(1).setFirstOfDay();return{eventType:"init",forcus:0,display:i,from:i,to:d}}));return M(()=>{if(!r.to.value)return;if(r.from.value>r.to.value){l(e=>h(f({},e),{eventType:"update",from:e.to,to:e.from}));return}a.onValueUpdate({value:[r.from.toFormatYM(),r.to.toFormatYM()],era:"year",eventType:r.eventType})},[r]),u(b,{freeCSS:{minWidth:12*16},children:[u(S.Left,{flexWrap:!0,children:[u(S.Left,{gap:"1/2",children:[u(T.Clear,{color:"cloud",borderRadius:"1.tone.primary",isSemiBoldFont:!0,fontColor:"inherit",onClick:()=>{l(o=>h(f({},o),{forcus:0}))},children:[r.from.toFormatYM("JP")||"----/--",r.forcus==0&&t(m.Parts.PeriodFocusSign,{})]}),t(k.Supplement,{children:"-"}),u(T.Clear,{color:"cloud",borderRadius:"1.tone.primary",isSemiBoldFont:!0,fontColor:"inherit",onClick:()=>{l(o=>h(f({},o),{forcus:1}))},children:[r.to.toFormatYM("JP")||"----/--",r.forcus==1&&t(m.Parts.PeriodFocusSign,{})]})]}),t(B,{}),u(S.Left,{gap:"1/2",children:[t(L,{emptySelect:!1,override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,fontSize:"1.mini",SelectorStyles:{freeCSS:{minWidth:12*12}},rightIcon:t(F,{right:"2/3",children:t(R.AngleDown,{})}),options:m.YearOptions({}),value:r.display.year,onUpdateValidValue:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().setYear(Number(o))}))}}),t(B,{}),t(m.Parts.ShiftButtons,{callback:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().addYear(o)}))}})]})]}),t(C,{borderBottom:!0}),t(S.Left,{verticalAlign:"top",flexWrap:!0,children:Array.from({length:4}).map((o,e)=>{let i=m.Parts.MonthCalendar({min:n,max:p,targetYear:r.display.year+e-1,from:r.from,to:r.to,onChange:d=>{if(r.forcus==0){l(s=>h(f({},s),{eventType:"update",forcus:1,from:d,to:c(null)}));return}l(s=>h(f({},s),{eventType:"update",to:d}))}});return t(S.Center,{flexSizing:0,ssHiddenOnBreak:e<1||e>2,children:i},e)})}),t(m.Parts.FooterNav,h(f({},a),{set_value:l,onClear:()=>{l({eventType:"update",forcus:0,display:c(),from:c(null),to:c(null)})}}))]})}}},Parts:{FooterNav:a=>a.commitFooter?u(G,{children:[t(C,{borderBottom:!0}),u(S.Separate,{gap:"1/2",children:[u(T.Sub,{color:"cloud",tabIndex:-1,fontSize:"1.mini",borderRadius:"2.tone.secondary",flexSizing:"none",onClick:()=>{a.onClear()},children:[t(R.X,{})," \u30EA\u30BB\u30C3\u30C8"]}),t(T.Prime,{tabIndex:-1,borderRadius:"2.tone.secondary",freeCSS:{minWidth:12*8},onClick:()=>{a.onCommit&&a.onCommit(),a.set_value(n=>h(f({},n),{eventType:"commit"}))},children:"\u6C7A\u5B9A"})]})]}):null,ShiftButtons:a=>u(S.Center,{gap:"1/3",children:[t(T.Sub,{className:P("LeftButton"),tabIndex:-1,right:0,position:"relative",flexCenter:!0,ssSquare:3,onClick:()=>{a.callback(-1)},children:t(R.ChevronLeft,{})}),t(T.Sub,{className:P("RightButton"),tabIndex:-1,left:0,position:"relative",flexCenter:!0,ssSquare:3,onClick:()=>{a.callback(1)},children:t(R.ChevronRight,{})})]}),CalendarCellStyles:{ssSquare:3,borderRadius:"3.tone.tertiary"},Calendar:a=>{var N;let{targetMonth:n,from:p,to:r}=a,l=c();if(!a.targetMonth.validate)return null;let o=n.clone().setDate(1),e=o.getLastDayOfMonth(),i=c(o).addMonth(-1).getLastDayOfMonth().date,d=[],s=[],g=[],x=[];for(var y=0;y<7;y++){let _=y==6,w=y==0;d.push(t(k,{textAlign:"center",fontSize:"0.xs",fontColor:_?"googleBlue":w?"googleRed":"inherit",children:v.transformer.weekday.shortJP(y)},y))}for(var y=0;y<o.weekday;y++)s.unshift(K(C,h(f({fontColor:"4.thin"},m.Parts.CalendarCellStyles),{key:y}),i-y));for(var y=1;y<=e.date;y++){let w=n.clone().setDate(y),j=p.isSameDate(w),I=!1,z=!1;r&&r.validate&&(I=w.isInRange(p,r),z=r.isSameDate(w));let $=l.isSameDate(w),V=!1;{let E=Number(String([n.year,n.month.zeroEmbed(2),y.zeroEmbed(2)].join("/")).replace(/\D/ig,""));if(a.min&&Number(String(a.min).replace(/\D/ig,""))>E&&(V=!0),a.max){let U=Number(String(a.max).replace(/\D/ig,""));E>U&&(V=!0)}}g.push(u(T.Clear,h(f({isActive:j||z,isActiveStyles:{fontColor:"white",backgroundColor:"theme",boxShadow:"0.remark"}},m.Parts.CalendarCellStyles),{fontColor:I?"theme":"inherit",fontSize:"inherit",padding:0,flexCenter:!0,borderRadius:"2.tone.secondary",ssEffectsOnActive:"shrink",tabIndex:-1,isLocked:V,onClick:()=>{a.onChange(w)},children:[y,I&&t(m.Parts.RangeSign,{}),$&&t(m.Parts.CurrentSign,{})]}),w.toFormatYMD()))}for(var y=1;y<7-e.weekday;y++)x.push(t(C,h(f({fontColor:"4.thin"},m.Parts.CalendarCellStyles),{children:y}),y));return u(b,{gap:"1/2",children:[((N=a.showTitle)!=null?N:!0)&&u(k.Supplement,{isSemiBoldFont:!0,children:[n.year,"\u5E74",n.month,"\u6708"]}),u(O,{gridCols:7,gap:"1/6",children:[d,s,g,x]})]},n.toFormatYM())},MonthCalendar:a=>{var e;let{targetYear:n,from:p,to:r}=a,l=c(),o=[];for(let i=1;i<=12;i++){let d=c().setYear(a.targetYear).setMonth(i).setDate(1),s=!1;{let _=Number(String([n,d.month.zeroEmbed(2)].join("/")).replace(/\D/ig,""));if(a.min&&Number(String(a.min).replace(/\D/ig,""))>_&&(s=!0),a.max){let w=Number(String(a.max).replace(/\D/ig,""));_>w&&(s=!0)}}let g=p.year==n&&p.month==d.month,x=!1,y=!1;r&&r.validate&&(x=d.isInRange(p,r),y=r.year==n&&r.month==d.month);let N=l.year==n&&l.month==d.month;o.push(t(b,{gap:"1/12",children:u(T.Clear,{isLocked:s,isActive:g||y,isActiveStyles:{fontColor:"white",backgroundColor:"theme",boxShadow:"0.remark"},fontColor:x?"theme":"inherit",padding:["1/3","2/3"],ssEffectsOnActive:"shrink",onClick:()=>{a.onChange(d)},children:[u(k,{freeCSS:{whiteSpace:"nowrap"},children:[d.month," \u6708"]}),x&&t(m.Parts.RangeSign,{}),N&&t(m.Parts.CurrentSign,{})]})},n+"-"+d.month))}return u(b,{gap:"1/2",children:[((e=a.showTitle)!=null?e:!0)&&u(k.Supplement,{isSemiBoldFont:!0,children:[a.targetYear,"\u5E74"]}),t(O,{gridCols:4,gap:"1/6",children:o})]},a.targetYear)},CurrentSign:()=>t(C,{position:"absolute",bottom:"1/6",left:"1/2",right:"1/2",unitHeight:"1/6",backgroundColor:"warn",isRounded:!0}),RangeSign:()=>t(C,{position:"absolute",top:"50%",unitHeight:2,backgroundColor:"theme.opa.low",freeCSS:{left:-1,right:-1,transform:"translateY(-50%)"}}),PeriodFocusSign:()=>t(C,{position:"absolute",bottom:"1/4",left:"1/2",right:"1/2",backgroundColor:"theme",unitHeight:"1/4",boxShadow:"0.remark",isRounded:!0})}},W=X;W.picker={open:a=>{let n=null,p=null,r=a.sheetID||A();Y.open("middleCenter",{sheetID:r,size:"L",closeAtAroundClick:!0,closeAtParentBlur:!1,onClose:()=>{a.onValueUpdate({value:n,era:p,eventType:"commit"})},content:t(S.Center,{children:u(b,{children:[t(S.Right,{children:t(T.Sub.S,{color:"cloud",ssSphere:3,onClick:()=>{Y.close(r)},children:t(R.X,{})})}),t(Y.Body,{children:t(b,{padding:1.5,children:t(X,{restrict:a.restrict,commitFooter:!0,min:a.min,max:a.max,era:a.era,defaultValue:a.defaultValue,onValueUpdate:l=>{a.onValueUpdate(l),n=l.value,p=l.era,l.eventType=="commit"&&Y.close(r)}})})})]})})}),console.log(a)},close:a=>{Y.close(a)}};export{W as TimeSelector,W as default};
1
+ import{b as f,c as h}from"../../../chunk-C5N2D3ZX.js";import{Fragment as G,jsx as t,jsxs as u}from"react/jsx-runtime";import{createElement as K}from"react";import v,{UUID as A,Time as c}from"jmini";import H,{useState as D,useEffect as M}from"react";import{Box as C,Flex as q,Grid as O,FAI as R,Column as b,FlexMargin as B}from"../../../atoms";import{Row as S,Literal as k}from"../../../mols";import{Button as T}from"../../Button";import Y from"../../Sheet";import L from"../Select";import{Radio as J}from"../List";import{RightIcon as F}from"..";import{InputTimeClasses as P}from"../../../@styles/componentClasses";const X=a=>{let{restrict:n}=a;return n=="year"?t(m.Year,f({},a)):n=="month"?t(m.Month.index,f({},a)):n=="week"?"[DEV]":n=="date"?t(m.Date.index,f({},a)):n=="locale.jp.warekiDate"?t(m.Locale.JP.WarekiDate.index,f({},a)):n=="clock"?t(m.Clock.index,f({},a)):n=="period.month"?t(m.Period.Month.index,f({},a)):n=="period.date"?t(m.Period.Date.index,f({},a)):null},m={YearOptions:a=>{var l,o;let n=[],p=Number((l=a==null?void 0:a.min)!=null?l:1900),r=Number((o=a==null?void 0:a.max)!=null?o:c().addYear(10).year);for(let e=p;e<=r;e++){let i=[e],[d,s]=v.transformer.wareki(e).value;d&&i.push(t(k.Supplement,{fontSize:"0.xs",fontColor:"4.thin",children:d},1)),s&&i.push(u(k.Supplement,{fontSize:"0.xs",fontColor:"4.thin",children:["[",s,"]"]},2)),n.unshift({value:e,label:t(S.Left,{gap:"1/4",verticalAlign:"baseline",flexWrap:!0,children:i})})}return n},Year:a=>{let{min:n,max:p}=a,[r,l]=D(v.scope(()=>{let[o]=String(a.defaultValue).split(/\D/);return v.is.nullish(o)&&([o]=c().toFormat("%Y").split("-")),{eventType:"init",from:c().setYear(Number(o))}}));return M(()=>{a.onValueUpdate({value:String(r.from.year||null),era:"year",eventType:r.eventType})},[r]),u(b,{freeCSS:{minWidth:12*16},children:[t(k.Supplement,{children:"\u5E74\u306E\u9078\u629E"}),t(L,{fontSize:"1.mini",override:"force",value:r.from.year||null,SelectorStyles:{freeCSS:{maxHeight:12*32,minWidth:12*16}},options:m.YearOptions({min:n,max:p}),onUpdateValidValue:o=>{l(e=>({eventType:"update",from:e.from.clone().setYear(Number(o))}))}}),t(m.Parts.FooterNav,h(f({},a),{set_value:l,onClear:()=>{l(o=>({eventType:"update",from:c(null)}))}}))]})},Month:{index:a=>{let{min:n,max:p}=a,[r,l]=D(v.scope(()=>{let[o,e]=String(a.defaultValue).split(/\D/);(v.is.nullish(o)||v.is.nullish(e))&&([o,e]=c().toFormat("%Y-%M").split("-"));let i=c(),d=c().setYear(Number(o)||i.year).setMonth(Number(e)||i.month).setDate(1);return{eventType:"init",from:d,display:d}}));return M(()=>{a.onValueUpdate({value:r.from.toFormatYM(),era:"year",eventType:r.eventType})},[r]),u(b,{freeCSS:{minWidth:12*16},children:[u(S.Left,{children:[t(k.Paragraph,{children:r.from.toFormatYM()||"----/--"}),t(B,{}),u(S.Center,{gap:"2/3",children:[t(T.Border.XS,{fontColor:"theme",borderRadius:"2.tone.secondary",onClick:()=>{let o=c();l({eventType:"update",from:o,display:o})},children:"\u4ECA\u6708"}),t(L,{emptySelect:!1,value:r.display.year,options:m.YearOptions({}),override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,SelectorStyles:{freeCSS:{minWidth:12*12}},rightIcon:t(F,{right:"2/3",children:t(R.AngleDown,{})}),onUpdateValidValue:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().setYear(Number(o))}))}})]}),t(m.Parts.ShiftButtons,{callback:o=>{l(e=>{let i=e.display.clone().addYear(o);return i.year<1900&&i.setYear(2100),i.year>2100&&i.setYear(1900),h(f({},e),{eventType:"update",display:i})})}})]}),t(C,{borderTop:!0}),t(S.Left,{verticalAlign:"top",flexWrap:!0,children:Array.from({length:4}).map((o,e)=>{let i=m.Parts.MonthCalendar({min:n,max:p,targetYear:r.display.year+e-1,from:r.from,onChange:d=>{l(s=>h(f({},s),{eventType:"update",from:d}))}});return t(S.Center,{flexSizing:0,ssHiddenOnBreak:e<1||e>2,children:i},e)})}),t(m.Parts.FooterNav,h(f({},a),{set_value:l,onClear:()=>{l(o=>h(f({},o),{eventType:"commit",from:c(null)}))}}))]})}},Date:{index:a=>{let{min:n,max:p}=a,[r,l]=D(v.scope(()=>{var g;let[o,e,i]=(g=String(a.defaultValue))==null?void 0:g.split(/\D/);(v.is.nullish(o)||v.is.nullish(e)||v.is.nullish(i))&&([o,e,i]=c().toFormat("%Y-%M-%D").split("-"));let d=c(),s=c([Number(o)||d.year,(Number(e)||d.month).zeroEmbed(2),(Number(i)||d.date).zeroEmbed(2)].join("/"));return{eventType:"init",era:"year",display:s,from:s}}));return M(()=>{a.onValueUpdate({value:r.from.toFormatYMD(),era:"year",eventType:r.eventType})},[r]),u(b,{freeCSS:{minWidth:12*16},children:[u(S.Left,{flexWrap:!0,children:[t(k.Paragraph,{children:r.from.toFormatYMD()||"----/--/--"}),t(B,{}),u(S.Center,{horizontalAlign:"left",gap:"1/2",children:[t(T.Border.XS,{fontColor:"theme",borderRadius:"2.tone.secondary",onClick:()=>{let o=c();l({eventType:"update",era:"year",from:o,display:o})},children:"\u4ECA\u65E5"}),t(L,{override:"force",emptySelect:!1,value:r.display.year,options:m.YearOptions({}),fontSize:"1.mini",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,SelectorStyles:{freeCSS:{minWidth:12*12}},onUpdateValidValue:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().setYear(Number(o))}))},rightIcon:t(F,{right:"2/3",children:t(R.AngleDown,{})})}),t(L,{override:"force",emptySelect:!1,value:r.display.month,options:(()=>{let o=[];for(let e=1;e<=12;e++)o.push({value:e,label:String(e)+"\u6708"});return o})(),fontSize:"1.mini",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,SelectorStyles:{freeCSS:{minWidth:12*8}},rightIcon:t(F,{right:"2/3",children:t(R.AngleDown,{})}),onUpdateValidValue:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().setMonth(Number(o))}))}})]}),t(m.Parts.ShiftButtons,{callback:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().addMonth(o)}))}})]}),t(C,{borderTop:!0}),t(S.Left,{verticalAlign:"top",flexWrap:!0,children:Array.from({length:4}).map((o,e)=>{let i=m.Parts.Calendar({min:n,max:p,targetMonth:r.display.clone().addMonth(e-1),from:r.from,onChange:d=>{l(s=>h(f({},s),{eventType:"update",from:d}))}});return t(S.Center,{flexSizing:0,ssHiddenOnBreak:e<1||e>2,children:i},e)})}),t(m.Parts.FooterNav,h(f({},a),{set_value:l,onClear:()=>{l(o=>h(f({},o),{eventType:"commit",from:c(null)}))}}))]})}},Locale:{JP:{WarekiDate:{index:a=>{let[n,p]=D(v.scope(()=>{var s;let[r,l,o]=(s=String(a.defaultValue))==null?void 0:s.split(/\D/),e=a.era||"year";if(v.is.nullish(r)||v.is.nullish(l)||v.is.nullish(o)){let g=c();e=="heisei"?g.setYear(1989):e=="shouwa"?g.setYear(1926):e=="taisho"?g.setYear(1912):e=="meiji"&&g.setYear(1868),[r,l,o]=g.toFormat("%Y-%M-%D").split("-")}let i=c(),d=c([Number(r)||i.year,(Number(l)||i.month).zeroEmbed(2),(Number(o)||i.date).zeroEmbed(2)].join("/"));return{eventType:"init",era:e,from:d}}));return M(()=>{a.onValueUpdate({value:n.from.toFormatYMD(),era:n.era,eventType:n.eventType})},[n]),u(b,{children:[u(S.Left,{verticalAlign:"unset",children:[t(m.Locale.JP.WarekiDate.EraSelect,{val_value:n,set_value:p}),t(m.Locale.JP.WarekiDate.Calendar,{val_value:n,set_value:p})]}),t(m.Parts.FooterNav,h(f({},a),{set_value:p,onClear:()=>{p({eventType:"commit",era:"year",from:c(null)})}}))]})},EraSelect:a=>{let{val_value:n,set_value:p}=a;return t(b,{gap:"1/4",borderRight:!0,paddingRight:1,children:[{value:"year",label:"\u897F\u66A6"},{value:"reiwa",label:"\u4EE4\u548C"},{value:"heisei",label:"\u5E73\u6210",year:1989},{value:"shouwa",label:"\u662D\u548C",year:1926},{value:"taisho",label:"\u5927\u6B63",year:1912},{value:"meiji",label:"\u660E\u6CBB",year:1868}].map(l=>t(T.Clear.S,{fontColor:"3.blur",borderRadius:"2.tone.secondary",isActive:n.era==l.value,isActiveStyles:{backgroundColor:"theme",fontColor:"white",boxShadow:"0.remark"},onClick:()=>{let o=c();l.year&&(o=c().setYear(l.year).setMonth(1).setDate(1)),p({eventType:"update",era:l.value,from:o})},children:l.label},l.value))})},Calendar:a=>{let{val_value:n,set_value:p}=a,r=0,l=c().year+10,o=[];if(n.era=="year")for(let e=1900;e<l;e++)o.unshift({value:e,label:e+"\u5E74"});else if(n.era=="reiwa"){r=2019,l=c().year+10;let e=c().year-2018;for(let i=1;i<=e+10;i++)o.unshift({value:r+i-1,label:"\u4EE4\u548C"+(i==1?"\u5143":i)+"\u5E74"})}else{let e="";n.era=="heisei"?(e="\u5E73\u6210",r=1989,l=2019):n.era=="shouwa"?(e="\u662D\u548C",r=1926,l=1989):n.era=="taisho"?(e="\u5927\u6B63",r=1912,l=1926):n.era=="meiji"&&(e="\u660E\u6CBB",r=1868,l=1912);for(let i=r;i<=l;i++){let d=i==r,s=i-r+1;o.unshift({value:i,label:e+(d?"\u5143":s)+"\u5E74"})}}return u(b,{children:[u(S.Left,{gap:"1/2",children:[t(L,{emptySelect:!1,override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,fontSize:"1.mini",SelectorStyles:{freeCSS:{minWidth:12*12}},rightIcon:t(F,{right:"2/3",children:t(R.AngleDown,{})}),options:o,value:n.from.year,onUpdateValidValue:e=>{p(i=>({era:i.era,eventType:"update",from:i.from.clone().setYear(Number(e))}))}}),t(L,{emptySelect:!1,override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,fontSize:"1.mini",SelectorStyles:{freeCSS:{minWidth:12*9}},rightIcon:t(F,{right:"2/3",children:t(R.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:n.from.month,onUpdateValidValue:e=>{p(i=>({era:i.era,eventType:"update",from:i.from.clone().setMonth(Number(e)).setDate(1)}))}}),t(B,{}),t(m.Parts.ShiftButtons,{callback:e=>{p(i=>({era:i.era,eventType:"update",from:i.from.clone().addMonth(e)}))}})]}),t(m.Parts.Calendar,{showTitle:!1,targetMonth:n.from,from:n.from,onChange:e=>{p(i=>({era:i.era,eventType:"update",from:e}))}})]})}}}},Clock:{index:a=>{let{min:n,max:p}=a,[r,l]=D(v.scope(()=>{let s=String(a.defaultValue).split(/[^\d]/);s[0]||(s=[0,0]);let g=Number(s[0]),x=Number(s[1]);return{eventType:"init",from:c().setHours(g).setMinutes(x)}}));M(()=>{a.onValueUpdate({value:r.from.toFormatHM(),era:"clock",eventType:r.eventType})},[r]);let[o,e]=D(r.from.hours>=12?2:1),[i,d]=D(Number(localStorage.getItem("@env/input/time/selector/clock/minutesUnit")||5));return M(()=>{localStorage.setItem("@env/input/time/selector/clock/minutesUnit",String(i))},[i]),u(b,{freeCSS:{minWidth:12*16},children:[t(b,{gap:"1/2",children:u(S.Center,{children:[t(C,{className:P("ClockBase"),children:t(m.Clock.UI,{val_value:r})}),u(C,{textAlign:"center",fontHeight:1.2,children:[u(k.Paragraph,{children:[r.from.hours.zeroEmbed(2)," : ",r.from.minutes.zeroEmbed(2)]}),u(k.Supplement,{fontColor:"4.thin",children:[r.from.hours>=12&&"PM"||"AM",r.from.hours%12,":",r.from.minutes.zeroEmbed(2)]})]}),t(T.Border.XS,{borderRadius:"2.tone.secondary",fontColor:"theme",onClick:()=>{let s=c().setSeconds(0);e(s.hours>=12?2:1),l({eventType:"update",from:s})},children:"\u73FE\u6642\u523B"})]})}),u(q,{flexType:"row",flexWrap:!1,gap:1,children:[u(b,{flexSizing:0,children:[t(J.Border,{value:[o],options:[{value:0,label:"24H"},{value:1,label:"AM"},{value:2,label:"PM"}],flexType:"col",override:"force",gap:"1/4",cellStyles:{gap:"1/4"},tabIndex:-1,onUpdateValidValue:s=>{let x=r.from.hours%12+(s==2?12:0);e(s),l(y=>({eventType:"update",from:y.from.clone().setHours(x)}))}}),t(C,{borderTop:!0,margin:[0,1]}),t(J.Border,{value:[i],options:[{value:1,label:"/1\u5206"},{value:5,label:"/5\u5206"},{value:10,label:"/10\u5206"}],flexType:"col",gap:"1/4",cellStyles:{gap:"1/4"},tabIndex:-1,onUpdateValidValue:s=>{d(s)}})]}),t(b,{children:u(S.Center,{gap:0,ssCardBox:!0,flexChilds:"even",freeCSS:{minWidth:12*14},children:[t(b,{gap:"1/4",overflow:"auto",padding:"1/2",borderRight:!0,freeCSS:{maxHeight:12*24},children:m.Clock.Hours({current:r.from.hours,min:n,max:p,ampm:o,onClick:s=>{let g=s+(o==2?12:0);l(x=>({eventType:"update",from:x.from.clone().setHours(g)}))}})}),t(b,{gap:"1/4",overflow:"auto",padding:"1/2",freeCSS:{maxHeight:12*24},children:m.Clock.Minutes({current:r.from.minutes,min:n,max:p,unit:i,onClick:s=>{l(g=>({eventType:"update",from:g.from.clone().setMinutes(s)}))}})})]})})]}),t(m.Parts.FooterNav,h(f({},a),{set_value:l,onClear:()=>{l({eventType:"update",from:c().setFirstOfDay()})}}))]})},Hours:a=>{let{ampm:n}=a,p=[],[r]=D(A());M(()=>{v("#"+r+"-"+a.current).focus()},[]);for(let l=0;l<(n==0?24:12);l++){let o=l;n==2&&(o+=12);let e=!1;{let d=Number(String(o*100).replace(/\D/ig,""));if(a.min&&Number(String(a.min).replace(/\D/ig,""))>d&&(e=!0),a.max){let s=Number(String(a.max).replace(/\D/ig,""));d>s&&(e=!0)}}let i=o==a.current;p.push(u(H.Fragment,{children:[u(T.Normal,{id:r+"-"+o,isActive:i,isActiveStyles:{fontColor:"white",backgroundColor:"theme",boxShadow:"0.remark"},isLocked:e,padding:["1/2",1],freeCSS:{whiteSpace:"nowrap"},tabIndex:-1,onClick:()=>{a.onClick(o)},children:[n!=2&&o.zeroEmbed(2),n==2&&(o%12).zeroEmbed(2)]}),t(C,{borderBottom:!0})]},o))}return p},Minutes:a=>{let n=[],[p]=D(A());M(()=>{v("#"+p+"-"+a.current).focus()},[]);for(let r=0;r<60/a.unit;r++){let l=r*a.unit,o=l==a.current;n.push(u(H.Fragment,{children:[t(T.Normal,{id:p+"-"+l,isActive:o,isActiveStyles:{fontColor:"white",backgroundColor:"theme",boxShadow:"0.remark"},padding:["1/2",1],freeCSS:{whiteSpace:"nowrap"},tabIndex:-1,onClick:()=>{a.onClick(l)},children:l.zeroEmbed(2)}),t(C,{borderBottom:!0})]},l))}return n},UI:a=>{let{val_value:n}=a;return t(C,{className:P("ClockUiBase"),flexCenter:!0,children:u(C,{className:P("ClockUi"),backgroundColor:"theme.opa.low",isRounded:!0,position:"relative",children:[t(C,{position:"absolute",backgroundColor:"theme",unitWidth:"1/12",className:[P("Needle"),P("hour")].join(" "),freeCSS:{transform:`rotate(${n.from.hours*30+n.from.minutes/2}deg)`}}),t(C,{position:"absolute",backgroundColor:"theme",unitWidth:"1/12",className:[P("Needle"),P("minute")].join(" "),freeCSS:{transform:`rotate(${n.from.minutes*6}deg)`}})]})})}},Period:{Date:{index:a=>{let{min:n,max:p}=a,[r,l]=D(v.scope(()=>{let[o,e]=v.flatArray(a.defaultValue),i=c(o||void 0).setFirstOfDay(),d=c(e||null).setFirstOfDay();return{eventType:"init",forcus:0,display:i,from:i,to:d}}));return M(()=>{if(!r.to.value)return;if(r.from.value>r.to.value){l(e=>h(f({},e),{eventType:"update",from:e.to,to:e.from}));return}a.onValueUpdate({value:[r.from.toFormatYMD(),r.to.toFormatYMD()],era:"year",eventType:r.eventType})},[r]),u(b,{freeCSS:{minWidth:12*16},children:[u(S.Left,{flexWrap:!0,children:[u(S.Left,{gap:"1/2",children:[u(T.Clear,{color:"cloud",borderRadius:"1.tone.primary",isSemiBoldFont:!0,fontColor:"inherit",onClick:()=>{l(o=>h(f({},o),{forcus:0}))},children:[r.from.toFormatYMD()||"----/--/--",r.forcus==0&&t(m.Parts.PeriodFocusSign,{})]}),t(k.Supplement,{children:"-"}),u(T.Clear,{color:"cloud",borderRadius:"1.tone.primary",isSemiBoldFont:!0,fontColor:"inherit",onClick:()=>{l(o=>h(f({},o),{forcus:1}))},children:[r.to.toFormatYMD()||"----/--/--",r.forcus==1&&t(m.Parts.PeriodFocusSign,{})]})]}),t(B,{}),u(S.Left,{gap:"1/2",children:[t(L,{emptySelect:!1,override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,fontSize:"1.mini",SelectorStyles:{freeCSS:{minWidth:12*12}},rightIcon:t(F,{right:"2/3",children:t(R.AngleDown,{})}),options:m.YearOptions({}),value:r.display.year,onUpdateValidValue:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().setYear(Number(o))}))}}),t(L,{emptySelect:!1,override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,fontSize:"1.mini",SelectorStyles:{freeCSS:{minWidth:12*9}},rightIcon:t(F,{right:"2/3",children:t(R.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:r.display.month,onUpdateValidValue:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().setMonth(Number(o)).setDate(1)}))}}),t(B,{}),t(m.Parts.ShiftButtons,{callback:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().addMonth(o)}))}})]})]}),t(C,{borderBottom:!0}),t(S.Left,{verticalAlign:"top",flexWrap:!0,children:Array.from({length:4}).map((o,e)=>{let i=m.Parts.Calendar({min:n,max:p,targetMonth:r.display.clone().addMonth(e-1),from:r.from,to:r.to,onChange:d=>{if(r.forcus==0){l(s=>h(f({},s),{eventType:"update",forcus:1,from:d,to:c(null)}));return}l(s=>h(f({},s),{eventType:"update",to:d}))}});return t(S.Center,{flexSizing:0,ssHiddenOnBreak:e<1||e>2,children:i},e)})}),t(m.Parts.FooterNav,h(f({},a),{set_value:l,onClear:()=>{l({eventType:"update",forcus:0,display:c(),from:c(null),to:c(null)})}}))]})}},Month:{index:a=>{let{min:n,max:p}=a,[r,l]=D(v.scope(()=>{let[o,e]=v.flatArray(a.defaultValue),i=c(o||void 0).setDate(1).setFirstOfDay(),d=c(e||null).setDate(1).setFirstOfDay();return{eventType:"init",forcus:0,display:i,from:i,to:d}}));return M(()=>{if(!r.to.value)return;if(r.from.value>r.to.value){l(e=>h(f({},e),{eventType:"update",from:e.to,to:e.from}));return}a.onValueUpdate({value:[r.from.toFormatYM(),r.to.toFormatYM()],era:"year",eventType:r.eventType})},[r]),u(b,{freeCSS:{minWidth:12*16},children:[u(S.Left,{flexWrap:!0,children:[u(S.Left,{gap:"1/2",children:[u(T.Clear,{color:"cloud",borderRadius:"1.tone.primary",isSemiBoldFont:!0,fontColor:"inherit",onClick:()=>{l(o=>h(f({},o),{forcus:0}))},children:[r.from.toFormatYM("JP")||"----/--",r.forcus==0&&t(m.Parts.PeriodFocusSign,{})]}),t(k.Supplement,{children:"-"}),u(T.Clear,{color:"cloud",borderRadius:"1.tone.primary",isSemiBoldFont:!0,fontColor:"inherit",onClick:()=>{l(o=>h(f({},o),{forcus:1}))},children:[r.to.toFormatYM("JP")||"----/--",r.forcus==1&&t(m.Parts.PeriodFocusSign,{})]})]}),t(B,{}),u(S.Left,{gap:"1/2",children:[t(L,{emptySelect:!1,override:"force",border:"1.thin",padding:["1/3","2/3"],paddingRight:2,fontSize:"1.mini",SelectorStyles:{freeCSS:{minWidth:12*12}},rightIcon:t(F,{right:"2/3",children:t(R.AngleDown,{})}),options:m.YearOptions({}),value:r.display.year,onUpdateValidValue:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().setYear(Number(o))}))}}),t(B,{}),t(m.Parts.ShiftButtons,{callback:o=>{l(e=>h(f({},e),{eventType:"update",display:e.display.clone().addYear(o)}))}})]})]}),t(C,{borderBottom:!0}),t(S.Left,{verticalAlign:"top",flexWrap:!0,children:Array.from({length:4}).map((o,e)=>{let i=m.Parts.MonthCalendar({min:n,max:p,targetYear:r.display.year+e-1,from:r.from,to:r.to,onChange:d=>{if(r.forcus==0){l(s=>h(f({},s),{eventType:"update",forcus:1,from:d,to:c(null)}));return}l(s=>h(f({},s),{eventType:"update",to:d}))}});return t(S.Center,{flexSizing:0,ssHiddenOnBreak:e<1||e>2,children:i},e)})}),t(m.Parts.FooterNav,h(f({},a),{set_value:l,onClear:()=>{l({eventType:"update",forcus:0,display:c(),from:c(null),to:c(null)})}}))]})}}},Parts:{FooterNav:a=>a.commitFooter?u(G,{children:[t(C,{borderBottom:!0}),u(S.Separate,{gap:"1/2",children:[u(T.Sub,{color:"cloud",tabIndex:-1,fontSize:"1.mini",borderRadius:"2.tone.secondary",flexSizing:"none",onClick:()=>{a.onClear()},children:[t(R.X,{})," \u30EA\u30BB\u30C3\u30C8"]}),t(T.Prime,{tabIndex:-1,borderRadius:"2.tone.secondary",freeCSS:{minWidth:12*8},onClick:()=>{a.onCommit&&a.onCommit(),a.set_value(n=>h(f({},n),{eventType:"commit"}))},children:"\u6C7A\u5B9A"})]})]}):null,ShiftButtons:a=>u(S.Center,{gap:"1/3",children:[t(T.Sub,{className:P("LeftButton"),tabIndex:-1,right:0,position:"relative",flexCenter:!0,ssSquare:3,onClick:()=>{a.callback(-1)},children:t(R.ChevronLeft,{})}),t(T.Sub,{className:P("RightButton"),tabIndex:-1,left:0,position:"relative",flexCenter:!0,ssSquare:3,onClick:()=>{a.callback(1)},children:t(R.ChevronRight,{})})]}),CalendarCellStyles:{ssSquare:3,borderRadius:"3.tone.tertiary"},Calendar:a=>{var N;let{targetMonth:n,from:p,to:r}=a,l=c();if(!a.targetMonth.validate)return null;let o=n.clone().setDate(1),e=o.getLastDayOfMonth(),i=c(o).addMonth(-1).getLastDayOfMonth().date,d=[],s=[],g=[],x=[];for(var y=0;y<7;y++){let _=y==6,w=y==0;d.push(t(k,{textAlign:"center",fontSize:"0.xs",fontColor:_?"googleBlue":w?"googleRed":"inherit",children:v.transformer.weekday.shortJP(y)},y))}for(var y=0;y<o.weekday;y++)s.unshift(K(C,h(f({fontColor:"4.thin"},m.Parts.CalendarCellStyles),{key:y}),i-y));for(var y=1;y<=e.date;y++){let w=n.clone().setDate(y),j=p.isSameDate(w),I=!1,z=!1;r&&r.validate&&(I=w.isInRange(p,r),z=r.isSameDate(w));let $=l.isSameDate(w),V=!1;{let E=Number(String([n.year,n.month.zeroEmbed(2),y.zeroEmbed(2)].join("/")).replace(/\D/ig,""));if(a.min&&Number(String(a.min).replace(/\D/ig,""))>E&&(V=!0),a.max){let U=Number(String(a.max).replace(/\D/ig,""));E>U&&(V=!0)}}g.push(u(T.Clear,h(f({isActive:j||z,isActiveStyles:{fontColor:"white",backgroundColor:"theme",boxShadow:"0.remark"}},m.Parts.CalendarCellStyles),{fontColor:I?"theme":"inherit",fontSize:"inherit",padding:0,flexCenter:!0,borderRadius:"2.tone.secondary",ssEffectsOnActive:"shrink",tabIndex:-1,isLocked:V,onClick:()=>{a.onChange(w)},children:[y,I&&t(m.Parts.RangeSign,{}),$&&t(m.Parts.CurrentSign,{})]}),w.toFormatYMD()))}for(var y=1;y<7-e.weekday;y++)x.push(t(C,h(f({fontColor:"4.thin"},m.Parts.CalendarCellStyles),{children:y}),y));return u(b,{gap:"1/2",children:[((N=a.showTitle)!=null?N:!0)&&u(k.Supplement,{isSemiBoldFont:!0,children:[n.year,"\u5E74",n.month,"\u6708"]}),u(O,{gridCols:7,gap:"1/6",children:[d,s,g,x]})]},n.toFormatYM())},MonthCalendar:a=>{var e;let{targetYear:n,from:p,to:r}=a,l=c(),o=[];for(let i=1;i<=12;i++){let d=c().setYear(a.targetYear).setMonth(i).setDate(1),s=!1;{let _=Number(String([n,d.month.zeroEmbed(2)].join("/")).replace(/\D/ig,""));if(a.min&&Number(String(a.min).replace(/\D/ig,""))>_&&(s=!0),a.max){let w=Number(String(a.max).replace(/\D/ig,""));_>w&&(s=!0)}}let g=p.year==n&&p.month==d.month,x=!1,y=!1;r&&r.validate&&(x=d.isInRange(p,r),y=r.year==n&&r.month==d.month);let N=l.year==n&&l.month==d.month;o.push(t(b,{gap:"1/12",children:u(T.Clear,{isLocked:s,isActive:g||y,isActiveStyles:{fontColor:"white",backgroundColor:"theme",boxShadow:"0.remark"},fontColor:x?"theme":"inherit",padding:["1/3","2/3"],ssEffectsOnActive:"shrink",onClick:()=>{a.onChange(d)},children:[u(k,{freeCSS:{whiteSpace:"nowrap"},children:[d.month," \u6708"]}),x&&t(m.Parts.RangeSign,{}),N&&t(m.Parts.CurrentSign,{})]})},n+"-"+d.month))}return u(b,{gap:"1/2",children:[((e=a.showTitle)!=null?e:!0)&&u(k.Supplement,{isSemiBoldFont:!0,children:[a.targetYear,"\u5E74"]}),t(O,{gridCols:4,gap:"1/6",children:o})]},a.targetYear)},CurrentSign:()=>t(C,{position:"absolute",bottom:"1/6",left:"1/2",right:"1/2",unitHeight:"1/6",backgroundColor:"warn",isRounded:!0}),RangeSign:()=>t(C,{position:"absolute",top:"50%",unitHeight:2,backgroundColor:"theme.opa.low",freeCSS:{left:-1,right:-1,transform:"translateY(-50%)"}}),PeriodFocusSign:()=>t(C,{position:"absolute",bottom:"1/4",left:"1/2",right:"1/2",backgroundColor:"theme",unitHeight:"1/4",boxShadow:"0.remark",isRounded:!0})}},W=X;W.picker={open:a=>{let n=null,p=null,r=a.sheetID||A();Y.open("middleCenter",{sheetID:r,size:"L",closeAtAroundClick:!0,closeAtParentBlur:!1,onClose:()=>{a.onValueUpdate({value:n,era:p,eventType:"commit"})},content:t(S.Center,{children:u(b,{children:[t(S.Right,{children:t(T.Sub.S,{color:"cloud",ssSphere:3,onClick:()=>{Y.close(r)},children:t(R.X,{})})}),t(Y.Body,{children:t(b,{padding:1.5,children:t(X,{restrict:a.restrict,commitFooter:!0,min:a.min,max:a.max,era:a.era,defaultValue:a.defaultValue,onValueUpdate:l=>{a.onValueUpdate(l),n=l.value,p=l.era,l.eventType=="commit"&&Y.close(r)}})})})]})})})},close:a=>{Y.close(a)}};export{W as TimeSelector,W as default};
@@ -1 +1 @@
1
- import{a as ae,b as o,c as I,d as G}from"../../../chunk-C5N2D3ZX.js";import{Fragment as Ee,jsx as y,jsxs as ne}from"react/jsx-runtime";import Q,{UUID as $,useStore as B}from"jmini";import*as U from"jmini";import{useState as J,useEffect as K,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}from"../../../mols";import{Button as ie}from"../../Button";import{faClock as he}from"@fortawesome/free-solid-svg-icons/faClock";import{faCalendarAlt as ge}from"@fortawesome/free-solid-svg-icons/faCalendarAlt";import{OptionalInputWrapper as ye,BoxWrapper as ve,CoreEffects as z,DefaultBoxishStyles as Ie}from"../core";import{RightIcon as Se}from"..";import De from"../Select";import{InputLabel as Te}from"../Label";import{TimeSelector as oe}from"./Selector";const L=" ~ ",be={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},"period.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,region:5},{type:"year",from:10+L.length,length:4},{type:"month",from:15+L.length,length:2},{type:"date",from:18+L.length,length:2}],sets:2},"period.month":{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+L.length,length:4},{type:"month",from:13+L.length,length:2,region:3}],sets:2},"locale.jp.warekiDate":{defaultValue:"----\u5E74--\u6708--\u65E5",format:/^\d{4}\D\d{2}\D\d{2}$/,ranges:[{type:"locale.jp.warekiDate",from:0,length:4,region:5},{type:"month",from:5,length:2,region:3},{type:"date",from:8,length:2,region:3}],sets:1}},F={PeriodMargin:" ~ ",DataLeveling:e=>{let{restrict:a,value:v,era:i}=e,f=Q.flatArray(v||""),{defaultValue:w,format:D,ranges:n,sets:r}=be[a],R=[],b=a=="clock"&&":"||"/";for(let t=0;t<f.length;t++)f[t]=String(f[t]).replace(/\D/ig,b);for(let t=0;t<r;t++){let c=f[t]||"";if(!c.match(D))f[t]="",R.push(w);else{let p=w;c.split(/\D/).forEach((x,E)=>{if(E==0&&a=="locale.jp.warekiDate"){let h=Number(x);i!="year"&&(h>=2019?i=="reiwa"?h-=2018:i=="heisei"&&(h=31):h>=1989?i=="heisei"?h-=1988:i=="shouwa"&&(h=64):h>=1926?i=="shouwa"?h-=1925:i=="taisho"&&(h=15):h>=1912?i=="taisho"?h-=1911:i=="meiji"&&(h=45):h>=1868&&(h-=1867)),x=h.zeroEmbed(4)}p=p.replace(new RegExp("------------------".slice(0,x.length)),x)}),R.push(p)}}return{formatValue:R.join(L),dataValue:["period.date","period.month"].includes(a)?f:f[0],ranges:n}},SystemValidation:e=>{let{states:a}=e,{restrict:v,min:i,max:f,required:w}=a,D=[],n=Q.flatArray(e.value),r={empty:!1,escalated:1,filled:!0,correct:!0,prohibited:!1};(()=>{let b=v=="clock"&&":"||"/";for(let t=0;t<n.length;t++)n[t]=String(n[t]).replace(/\D/ig,b);for(let t=0;t<n.length;t++){let c=n[t],p=n[t-1];c.removeLetters()||(r.empty=!0),t>0&&(r.escalated&=+(c>=p))}r.escalated&&(r.empty||(v.match(/clock/)?n.forEach(t=>{let[c,p]=t.split(/\D+/);!c||!p?r.filled=!1:(Number(c)>23||Number(p)>59)&&(r.correct=!1)}):v.match(/date/)?n.forEach(t=>{let[c,p,x]=t.split(/\D+/);if(!c||!p||!x)r.filled=!1;else{let E=U.Time(t);(!E.validate||t!=E.toFormatYMD())&&(r.correct=!1)}}):v.match(/week/)?n.forEach(t=>{let[c,p]=t.split(/\D+/);if(!c||!p)r.filled=!1;else{let x=U.Time(c+"/01/01").weekday,h=U.Time(c+"/01/0"+(7-x+1)).addWeek(Number(p)-1);c!=String(h.year)&&(r.correct=!1)}}):v.match(/month/)?n.forEach(t=>{let[c,p]=t.split(/\D+/);!c||!p?r.filled=!1:U.Time([c,p,"01"].join("/")).validate||(r.correct=!1)}):v.match(/year/),r.filled&&r.correct&&n.forEach(t=>{{let c=Number(String(t).replace(/\D/ig,""));if(i&&Number(String(i).replace(/\D/ig,""))>c&&(r.prohibited=!0),f){let p=Number(String(f).replace(/\D/ig,""));c>p&&(r.prohibited=!0)}}})))})();{let{empty:b,escalated:t,filled:c,correct:p,prohibited:x}=r;b&&w&&(D=[{type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"}]),t||D.push({type:"invalid",label:"\u6642\u7CFB\u5217\u3092\u6B63\u3057\u304F\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"}),p||D.push({type:"invalid",label:"\u7121\u52B9\u306A\u5024\u304C\u5165\u529B\u3055\u308C\u3066\u3044\u307E\u3059"}),c||D.push({type:"invalid",label:"\u6700\u5F8C\u307E\u3067\u5024\u3092\u57CB\u3081\u3066\u304F\u3060\u3055\u3044"}),x&&D.push({type:"invalid",label:ne(Ee,{children:[y(X,{children:"\u5165\u529B\u7BC4\u56F2\u304C\u5236\u9650\u3055\u308C\u3066\u3044\u307E\u3059"}),"[",i||"\u4E0B\u9650\u7121\u3057","] ~ [",f||"\u4E0A\u9650\u7121\u3057","]"]})})}return{ok:!D.filter(({type:b})=>b=="invalid").length,notice:D}},KeyDownEvent:e=>{let{val_era:a,restrict:v,event:i,val_status:f,set_status:w,val_focus:D,set_focus:n}=e,{key:r,shiftKey:R,ctrlKey:b,metaKey:t}=i,c=b||t,{selectionStart:p,selectionEnd:x}=i.target,{index:E,prevIndex:h}=D,{ranges:H,formatValue:Y}=f,V=H.length-1;if(["Tab","ArrowLeft","ArrowRight"].includes(r)){let g=0;if(r=="Tab"){let m=+!R*2-1;if(g=D.index+m,g<0||g>V)return}else{let m=r=="ArrowLeft"?-1:r=="ArrowRight"?1:0;c||p==0&&x==String(f.formatValue).length?g=m==1?V:0:g=Math.max(0,Math.min(E+m,V))}n(m=>I(o({},m),{index:g,prevIndex:E})),i.preventDefault()}if(["Backspace","ArrowUp","ArrowDown","0","1","2","3","4","5","6","7","8","9"].includes(r)){i.preventDefault();let g=E;g=Math.max(g,0),g=Math.min(g,V);let{type:m,from:W,length:q}=H[g],O=Y.slice(W,W+q),S;if(r=="Backspace")S="------".slice(0,q);else if(["ArrowUp","ArrowDown"].includes(r)){let _=r=="ArrowUp"?1:-1;O=O|0,S=O+_;let[d,u,l]=m=="locale.jp.warekiDate"?a=="year"?[0,2999,4]:a=="reiwa"?[1,2999,4]:a=="heisei"?[1,31,4]:a=="shouwa"?[1,64,4]:a=="taisho"?[1,15,4]:a=="meiji"?[1,45,4]:[0,0,0]:m=="minute"?[0,59,2]:m=="hour"?[0,23,2]:m=="date"?[1,31,2]:m=="week"?[1,53,2]:m=="month"?[1,12,2]:m=="year"?[0,2999,4]:[0,0,0];S>u?S=d:S<d&&(S=u),S=Number(S).zeroEmbed(l)}else if(["0","1","2","3","4","5","6","7","8","9"].includes(r)){let _=O|0,d=r,u=`${_}${d}`;if(h!=E&&(_=0,u="0"+d),m=="year"||m=="locale.jp.warekiDate"&&a=="year")Number(u)>1e4?S=d:S=u,(S|0)>1e3&&g++;else if(["hour","minute","date","week","month"].includes(m)||m=="locale.jp.warekiDate"&&a!="year"){let l=m=="locale.jp.warekiDate"?a=="reiwa"?100:a=="heisei"?31:a=="shouwa"?64:a=="taisho"?15:a=="meiji"?45:0:m=="minute"?59:m=="hour"?23:m=="date"?31:m=="week"?53:m=="month"?12:0;S=(u|0)>l?d:u,(Number(d)>Number(String(l)[0])||O=="0000".slice(0,String(l).length)&&(u!="0000".slice(0,String(l).length)||["minute","hour"].includes(m)&&h==E)||(u|0)>=ae(10,String(l).length-1))&&g++}m=="year"||m=="locale.jp.warekiDate"?S=(S|0).zeroEmbed(4):S=(S|0).zeroEmbed(2)}{let _=String(Y).partReplace(W,String(S)),d=_.split(L).map(u=>u.replace(/(^\D|\D$)/,"").split(/\D+/).join(v=="clock"&&":"||"/").replace(/(^\D|\D$)/,""));if(v=="locale.jp.warekiDate"){let u=d[0].split(/\D/),[l,k,P]=u;u.length==3&&l&&(d=[[Number(l)-1+Number({year:1,reiwa:2019,heisei:1989,shouwa:1926,taisho:1912,meiji:1868}[a]),k,P].join("/")])}g=Math.max(g,0),g=Math.min(g,V),w(u=>I(o({},u),{dataValue:["period.date","period.month"].includes(v)?d:d[0],formatValue:_,eventType:"update",eventID:$(12),isInspected:!1})),n(u=>I(o({},u),{index:g,prevIndex:u.index}))}}}},xe={Shallow:e=>{let{rootStates:a,val_status:v}=e,i=ue(a);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,I(o({className:a.className},i),{position:"absolute",width:1,freeCSS:I(o({},i.freeCSS),{color:"orange"}),children:y(X,{"data-input-value-shallow":v.componentId,children:"A"})}))})}},we=e=>{let ee=e,{tone:a,required:v,restrict:i="clock",componentId:f,era:w,form:D,name:n,min:r,max:R,className:b,enableFormSubmit:t,checkValidationAtFirst:c,onKeyDown:p,onValidate:x,onValidateDelay:E,onUpdateValue:h,onUpdateValidValue:H,onUserAction:Y,value:V="",leftIndicator:g,rightIndicator:m,leftIcon:W,rightIcon:q,freeCSS:O,wrapStyles:S}=ee,_=G(ee,["tone","required","restrict","componentId","era","form","name","min","max","className","enableFormSubmit","checkValidationAtFirst","onKeyDown","onValidate","onValidateDelay","onUpdateValue","onUpdateValidValue","onUserAction","value","leftIndicator","rightIndicator","leftIcon","rightIcon","freeCSS","wrapStyles"]),[d,u]=J(w||"year"),[l,k]=J(I(o({componentId:e.componentId||""},F.DataLeveling({restrict:i,value:V,era:d})),{ranges:[],eventType:"init",eventID:$(12)})),[P,C]=J({active:!1,index:0,prevIndex:-1}),le={rootStates:e,val_status:l,set_status:k,val_era:d,set_era:u,val_focus:P,set_focus:C};z.CommonEffects({type:"time",states:e,val_status:l,set_status:k,SystemValidation:F.SystemValidation,ExtraOverrideStates:()=>F.DataLeveling({restrict:i,value:V,era:d})}),K(()=>{k(s=>I(o(o({},s),F.DataLeveling({restrict:i,value:V,era:d})),{isInspected:!1}))},[]);const Z=ce(!1);return K(()=>{if(Z.current){k(T=>I(o(o({},T),F.DataLeveling({restrict:i,value:T.dataValue,era:d})),{isInspected:!1}));let s=B.get("refreshEra_"+l.componentId);s&&s.refreshEra(d)}else Z.current=!0},[d]),B.update({[l.componentId]:{openPicker:s=>{e.disabled||oe.picker.open({restrict:i,era:w,defaultValue:l.dataValue,min:r,max:R,onValueUpdate:({value:T,era:A,eventType:N})=>{N=="commit"&&(k(j=>I(o(o({},j),F.DataLeveling({restrict:i,value:T,era:A})),{eventType:"update",eventID:$(12),isInspected:!1,isValidated:!1,notice:[]})),u(A))}})},resetEra:s=>{u(s),k(T=>I(o(o({},T),F.DataLeveling({restrict:i,value:"",era:d})),{eventType:"update",eventID:$(12),isInspected:!1}))}}}),K(()=>{let{index:s,active:T}=P;if(T){s=Math.max(s,0),s=Math.min(s,l.ranges.length-1);let{from:A,length:N}=l.ranges[s],j=pe("#"+e.id)[0];j&&j.setSelectionRange&&j.setSelectionRange(A,A+N)}k(A=>I(o({},A),{isFocusing:T}))},[P]),ne(ve,{val_status:l,set_status:k,states:e,children:[y(xe.Shallow,o({},le)),y(Te,{componentId:e.componentId,fontSize:e.fontSize,required:e.required,label:e.label,isActive:!0}),re.get().isTouchDevice?y(ie.Plain,I(o({"data-show-validation":z.isShowValidation(l,!!c),"data-component-id":l.componentId,"data-input-origin":l.componentId,"data-disabled":e.disabled,className:b,freeCSS:{textAlign:"left"}},_),{children:l.formatValue,onClick:s=>{let T=B.get(l.componentId);T&&T.openPicker(`[data-input-origin="${l.componentId}"]`),s.stopPropagation()},onFocus:()=>{C(s=>I(o({},s),{active:!0}))},onBlur:()=>{C(s=>I(o({},s),{active:!1}))}})):y(X,o({htmlTag:"input",type:"text",inputMode:"numeric","data-show-validation":z.isShowValidation(l,!!c),"data-input-origin":l.componentId,"data-disabled":e.disabled,value:l.formatValue,className:b,tabIndex:re.get().isTouchDevice?-1:0,onKeyDown:s=>{F.KeyDownEvent({restrict:i,event:s,val_era:d,val_status:l,set_status:k,val_focus:P,set_focus:C}),p&&p(s),t&&z.SubmitForm(s,D)},onKeyUp:s=>{s.key=="Tab"&&C(T=>I(o({},T),{active:!0}))},onClick:s=>{let T=s.target.selectionEnd,A=0;l.ranges.forEach((N,j)=>{let{from:te,length:se,region:me}=N;te<=T&&T<=te+(me||se)&&(A=j)}),C(N=>I(o({},N),{active:!0,index:A})),s.preventDefault()},onBlur:()=>{C(s=>I(o({},s),{active:!1}))},onChange:()=>{}},_))]})},M={Origin:e=>{let a=o({fontSize:"inherit",width:1,value:""},e);a.value=a.value||"";let[v]=J(e.componentId||$(12));if(a.componentId=v,Q.is.nullish(a.rightIcon)){let i=(e.restrict||"").match(/clock/)?he:ge;a.rightIcon=y(Se,{ssSphere:2.5,freeCSS:{pointerEvents:"all"},children:y(ie.Sub,{color:"cloud",border:"unset",ssSphere:2.5,fontColor:"theme",boxShadow:"0.normal",borderRadius:"3.tone.tertiary",flexCenter:!0,ssEffectsOnActive:"push",tabIndex:-1,id:"Picker-"+a.componentId,onClick:()=>{let f=B.get(a.componentId);f&&f.openPicker("#Picker-"+a.componentId)},children:y(de,{icon:i})})})}return y(ye,{componentId:a.componentId,children:we,states:Ie(a)})},Clock:e=>y(M.Origin,o({restrict:"clock",era:"clock"},e)),Date:e=>y(M.Origin,o({restrict:"date"},e)),Week:e=>y(M.Origin,o({restrict:"week"},e)),Month:e=>y(M.Origin,o({restrict:"month"},e)),Year:e=>y(M.Origin,o({restrict:"year"},e)),Locale:{JP:{WarekiDate:e=>{e=o({},e);let[a]=J(e.componentId||$(12));e.componentId=a;let D=e,{defaultEra:v="wareki"}=D,i=G(D,["defaultEra"]),[f,w]=J((()=>{let n="year";if(v=="wareki"&&(n="reiwa",e.value)){let[r,R,b]=e.value.split(/\D/);if(r&&R&&b){let t=Number(r);t>=2019?(t-=2019,n="reiwa"):t>=1989?(t-=1989,n="heisei"):t>=1926?(t-=1926,n="shouwa"):t>=1912?(t-=1912,n="taisho"):t>=1868&&(t-=1868,n="meiji"),t+=1}}return n})());return K(()=>{B.set({["refreshEra_"+a]:{refreshEra:n=>{w(n)}}})},[]),y(M.Origin,I(o({restrict:"locale.jp.warekiDate",leftIndicator:y(De,{label:"\u5143\u53F7",emptySelect:!1,value:f,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:n=>{w(n);let r=B.get(e.componentId);r&&r.resetEra&&r.resetEra(n)}})},i),{era:f}))}}},Periods:{Date:e=>y(M.Origin,o({restrict:"period.date"},e)),Month:e=>y(M.Origin,o({restrict:"period.month"},e))}};export{M as Time,oe as TimeSelector,M as default};
1
+ import{a as ae,b as o,c as S,d as G}from"../../../chunk-C5N2D3ZX.js";import{Fragment as we,jsx as y,jsxs as ne}from"react/jsx-runtime";import Q,{UUID as O,useStore as P}from"jmini";import*as U from"jmini";import{useState as $,useEffect as K,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}from"../../../mols";import{Button as ie}from"../../Button";import{faClock as he}from"@fortawesome/free-solid-svg-icons/faClock";import{faCalendarAlt as ge}from"@fortawesome/free-solid-svg-icons/faCalendarAlt";import{OptionalInputWrapper as ye,BoxWrapper as ve,CoreEffects as z,DefaultBoxishStyles as Ie}from"../core";import{RightIcon as Se}from"..";import De from"../Select";import{InputLabel as Te}from"../Label";import{TimeSelector as oe}from"./Selector";const N=" ~ ",be={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},"period.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,region:5},{type:"year",from:10+N.length,length:4},{type:"month",from:15+N.length,length:2},{type:"date",from:18+N.length,length:2}],sets:2},"period.month":{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+N.length,length:4},{type:"month",from:13+N.length,length:2,region:3}],sets:2},"locale.jp.warekiDate":{defaultValue:"----\u5E74--\u6708--\u65E5",format:/^\d{4}\D\d{2}\D\d{2}$/,ranges:[{type:"locale.jp.warekiDate",from:0,length:4,region:5},{type:"month",from:5,length:2,region:3},{type:"date",from:8,length:2,region:3}],sets:1}},C={PeriodMargin:" ~ ",DataLeveling:e=>{let{restrict:a,value:I,era:i}=e,f=Q.flatArray(I||""),{defaultValue:w,format:T,ranges:n,sets:r}=be[a],R=[],b=a=="clock"&&":"||"/";for(let t=0;t<f.length;t++)f[t]=String(f[t]).replace(/\D/ig,b);for(let t=0;t<r;t++){let c=f[t]||"";if(!c.match(T))f[t]="",R.push(w);else{let p=w;c.split(/\D/).forEach((x,E)=>{if(E==0&&a=="locale.jp.warekiDate"){let h=Number(x);i!="year"&&(h>=2019?i=="reiwa"?h-=2018:i=="heisei"&&(h=31):h>=1989?i=="heisei"?h-=1988:i=="shouwa"&&(h=64):h>=1926?i=="shouwa"?h-=1925:i=="taisho"&&(h=15):h>=1912?i=="taisho"?h-=1911:i=="meiji"&&(h=45):h>=1868&&(h-=1867)),x=h.zeroEmbed(4)}p=p.replace(new RegExp("------------------".slice(0,x.length)),x)}),R.push(p)}}return{formatValue:R.join(N),dataValue:["period.date","period.month"].includes(a)?f:f[0],ranges:n}},SystemValidation:e=>{let{states:a}=e,{restrict:I,min:i,max:f,required:w}=a,T=[],n=Q.flatArray(e.value),r={empty:!1,escalated:1,filled:!0,correct:!0,prohibited:!1};(()=>{let b=I=="clock"&&":"||"/";for(let t=0;t<n.length;t++)n[t]=String(n[t]).replace(/\D/ig,b);for(let t=0;t<n.length;t++){let c=n[t],p=n[t-1];c.removeLetters()||(r.empty=!0),t>0&&(r.escalated&=+(c>=p))}r.escalated&&(r.empty||(I.match(/clock/)?n.forEach(t=>{let[c,p]=t.split(/\D+/);!c||!p?r.filled=!1:(Number(c)>23||Number(p)>59)&&(r.correct=!1)}):I.match(/date/)?n.forEach(t=>{let[c,p,x]=t.split(/\D+/);if(!c||!p||!x)r.filled=!1;else{let E=U.Time(t);(!E.validate||t!=E.toFormatYMD())&&(r.correct=!1)}}):I.match(/week/)?n.forEach(t=>{let[c,p]=t.split(/\D+/);if(!c||!p)r.filled=!1;else{let x=U.Time(c+"/01/01").weekday,h=U.Time(c+"/01/0"+(7-x+1)).addWeek(Number(p)-1);c!=String(h.year)&&(r.correct=!1)}}):I.match(/month/)?n.forEach(t=>{let[c,p]=t.split(/\D+/);!c||!p?r.filled=!1:U.Time([c,p,"01"].join("/")).validate||(r.correct=!1)}):I.match(/year/),r.filled&&r.correct&&n.forEach(t=>{{let c=Number(String(t).replace(/\D/ig,""));if(i&&Number(String(i).replace(/\D/ig,""))>c&&(r.prohibited=!0),f){let p=Number(String(f).replace(/\D/ig,""));c>p&&(r.prohibited=!0)}}})))})();{let{empty:b,escalated:t,filled:c,correct:p,prohibited:x}=r;b&&w&&(T=[{type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"}]),t||T.push({type:"invalid",label:"\u6642\u7CFB\u5217\u3092\u6B63\u3057\u304F\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"}),p||T.push({type:"invalid",label:"\u7121\u52B9\u306A\u5024\u304C\u5165\u529B\u3055\u308C\u3066\u3044\u307E\u3059"}),c||T.push({type:"invalid",label:"\u6700\u5F8C\u307E\u3067\u5024\u3092\u57CB\u3081\u3066\u304F\u3060\u3055\u3044"}),x&&T.push({type:"invalid",label:ne(we,{children:[y(X,{children:"\u5165\u529B\u7BC4\u56F2\u304C\u5236\u9650\u3055\u308C\u3066\u3044\u307E\u3059"}),"[",i||"\u4E0B\u9650\u7121\u3057","] ~ [",f||"\u4E0A\u9650\u7121\u3057","]"]})})}return{ok:!T.filter(({type:b})=>b=="invalid").length,notice:T}},KeyDownEvent:e=>{let{val_era:a,restrict:I,event:i,val_status:f,set_status:w,val_focus:T,set_focus:n}=e,{key:r,shiftKey:R,ctrlKey:b,metaKey:t}=i,c=b||t,{selectionStart:p,selectionEnd:x}=i.target,{index:E,prevIndex:h}=T,{ranges:H,formatValue:Y}=f,V=H.length-1;if(["Tab","ArrowLeft","ArrowRight"].includes(r)){let g=0;if(r=="Tab"){let m=+!R*2-1;if(g=T.index+m,g<0||g>V)return}else{let m=r=="ArrowLeft"?-1:r=="ArrowRight"?1:0;c||p==0&&x==String(f.formatValue).length?g=m==1?V:0:g=Math.max(0,Math.min(E+m,V))}n(m=>S(o({},m),{index:g,prevIndex:E})),i.preventDefault()}if(["Backspace","ArrowUp","ArrowDown","0","1","2","3","4","5","6","7","8","9"].includes(r)){i.preventDefault();let g=E;g=Math.max(g,0),g=Math.min(g,V);let{type:m,from:W,length:q}=H[g],j=Y.slice(W,W+q),D;if(r=="Backspace")D="------".slice(0,q);else if(["ArrowUp","ArrowDown"].includes(r)){let _=r=="ArrowUp"?1:-1;j=j|0,D=j+_;let[d,u,l]=m=="locale.jp.warekiDate"?a=="year"?[0,2999,4]:a=="reiwa"?[1,2999,4]:a=="heisei"?[1,31,4]:a=="shouwa"?[1,64,4]:a=="taisho"?[1,15,4]:a=="meiji"?[1,45,4]:[0,0,0]:m=="minute"?[0,59,2]:m=="hour"?[0,23,2]:m=="date"?[1,31,2]:m=="week"?[1,53,2]:m=="month"?[1,12,2]:m=="year"?[0,2999,4]:[0,0,0];D>u?D=d:D<d&&(D=u),D=Number(D).zeroEmbed(l)}else if(["0","1","2","3","4","5","6","7","8","9"].includes(r)){let _=j|0,d=r,u=`${_}${d}`;if(h!=E&&(_=0,u="0"+d),m=="year"||m=="locale.jp.warekiDate"&&a=="year")Number(u)>1e4?D=d:D=u,(D|0)>1e3&&g++;else if(["hour","minute","date","week","month"].includes(m)||m=="locale.jp.warekiDate"&&a!="year"){let l=m=="locale.jp.warekiDate"?a=="reiwa"?100:a=="heisei"?31:a=="shouwa"?64:a=="taisho"?15:a=="meiji"?45:0:m=="minute"?59:m=="hour"?23:m=="date"?31:m=="week"?53:m=="month"?12:0;D=(u|0)>l?d:u,(Number(d)>Number(String(l)[0])||j=="0000".slice(0,String(l).length)&&(u!="0000".slice(0,String(l).length)||["minute","hour"].includes(m)&&h==E)||(u|0)>=ae(10,String(l).length-1))&&g++}m=="year"||m=="locale.jp.warekiDate"?D=(D|0).zeroEmbed(4):D=(D|0).zeroEmbed(2)}{let _=String(Y).partReplace(W,String(D)),d=_.split(N).map(u=>u.replace(/(^\D|\D$)/,"").split(/\D+/).join(I=="clock"&&":"||"/").replace(/(^\D|\D$)/,""));if(I=="locale.jp.warekiDate"){let u=d[0].split(/\D/),[l,k,L]=u;u.length==3&&l&&(d=[[Number(l)-1+Number({year:1,reiwa:2019,heisei:1989,shouwa:1926,taisho:1912,meiji:1868}[a]),k,L].join("/")])}g=Math.max(g,0),g=Math.min(g,V),w(u=>S(o({},u),{dataValue:["period.date","period.month"].includes(I)?d:d[0],formatValue:_,eventType:"update",eventID:O(12),isInspected:!1})),n(u=>S(o({},u),{index:g,prevIndex:u.index}))}}},Shallow:e=>{let{rootStates:a,val_status:I}=e,i=ue(a);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,S(o({className:a.className},i),{position:"absolute",width:1,freeCSS:S(o({},i.freeCSS),{color:"orange"}),children:y(X,{"data-input-value-shallow":I.componentId,children:"A"})}))})}},xe=e=>{let ee=e,{tone:a,required:I,restrict:i="clock",componentId:f,era:w,form:T,name:n,min:r,max:R,className:b,enableFormSubmit:t,checkValidationAtFirst:c,onKeyDown:p,onValidate:x,onValidateDelay:E,onUpdateValue:h,onUpdateValidValue:H,onUserAction:Y,value:V="",leftIndicator:g,rightIndicator:m,leftIcon:W,rightIcon:q,freeCSS:j,wrapStyles:D}=ee,_=G(ee,["tone","required","restrict","componentId","era","form","name","min","max","className","enableFormSubmit","checkValidationAtFirst","onKeyDown","onValidate","onValidateDelay","onUpdateValue","onUpdateValidValue","onUserAction","value","leftIndicator","rightIndicator","leftIcon","rightIcon","freeCSS","wrapStyles"]),[d,u]=$(w||"year"),[l,k]=$(S(o({componentId:e.componentId||""},C.DataLeveling({restrict:i,value:V,era:d})),{ranges:[],eventType:"init",eventID:O(12)})),[L,F]=$({active:!1,index:0,prevIndex:-1}),le={rootStates:e,val_status:l,set_status:k,val_era:d,set_era:u,val_focus:L,set_focus:F};z.CommonEffects({type:"time",states:e,val_status:l,set_status:k,SystemValidation:C.SystemValidation,ExtraOverrideStates:()=>C.DataLeveling({restrict:i,value:V,era:d})}),K(()=>{k(s=>S(o(o({},s),C.DataLeveling({restrict:i,value:V,era:d})),{isInspected:!1}))},[]);const Z=ce(!1);return K(()=>{if(Z.current){k(v=>S(o(o({},v),C.DataLeveling({restrict:i,value:v.dataValue,era:d})),{isInspected:!1}));let s=P.get("refreshEra_"+l.componentId);s&&s.refreshEra(d)}else Z.current=!0},[d]),P.update({[l.componentId]:{openPicker:s=>{e.disabled||oe.picker.open({restrict:i,era:w,defaultValue:l.dataValue,min:r,max:R,onValueUpdate:v=>{v.eventType=="commit"&&(k(M=>S(o(o({},M),C.DataLeveling({restrict:i,value:v.value,era:v.era})),{eventType:"update",eventID:O(12),isInspected:!1,isValidated:!1,notice:[]})),u(v.era))}})},resetEra:s=>{u(s),k(v=>S(o(o({},v),C.DataLeveling({restrict:i,value:"",era:d})),{eventType:"update",eventID:O(12),isInspected:!1}))}}}),K(()=>{let{index:s,active:v}=L;if(v){s=Math.max(s,0),s=Math.min(s,l.ranges.length-1);let{from:M,length:B}=l.ranges[s],J=pe("#"+e.id)[0];J&&J.setSelectionRange&&J.setSelectionRange(M,M+B)}k(M=>S(o({},M),{isFocusing:v}))},[L]),ne(ve,{val_status:l,set_status:k,states:e,children:[y(C.Shallow,o({},le)),y(Te,{componentId:e.componentId,fontSize:e.fontSize,required:e.required,label:e.label,isActive:!0}),re.get().isTouchDevice?y(ie.Plain,S(o({"data-show-validation":z.isShowValidation(l,!!c),"data-component-id":l.componentId,"data-input-origin":l.componentId,"data-disabled":e.disabled,className:b,freeCSS:{textAlign:"left"}},_),{children:l.formatValue,onClick:s=>{let v=P.get(l.componentId);v&&v.openPicker(`[data-input-origin="${l.componentId}"]`),s.stopPropagation()},onFocus:()=>{F(s=>S(o({},s),{active:!0}))},onBlur:()=>{F(s=>S(o({},s),{active:!1}))}})):y(X,o({htmlTag:"input",type:"text",inputMode:"numeric","data-show-validation":z.isShowValidation(l,!!c),"data-input-origin":l.componentId,"data-disabled":e.disabled,value:l.formatValue,className:b,tabIndex:re.get().isTouchDevice?-1:0,onKeyDown:s=>{C.KeyDownEvent({restrict:i,event:s,val_era:d,val_status:l,set_status:k,val_focus:L,set_focus:F}),p&&p(s),t&&z.SubmitForm(s,T)},onKeyUp:s=>{s.key=="Tab"&&F(v=>S(o({},v),{active:!0}))},onClick:s=>{let v=s.target.selectionEnd,M=0;l.ranges.forEach((B,J)=>{let{from:te,length:se,region:me}=B;te<=v&&v<=te+(me||se)&&(M=J)}),F(B=>S(o({},B),{active:!0,index:M})),s.preventDefault()},onBlur:()=>{F(s=>S(o({},s),{active:!1}))},onChange:()=>{}},_))]})},A={Origin:e=>{let a=o({fontSize:"inherit",width:1,value:""},e);a.value=a.value||"";let[I]=$(e.componentId||O(12));if(a.componentId=I,Q.is.nullish(a.rightIcon)){let i=(e.restrict||"").match(/clock/)?he:ge;a.rightIcon=y(Se,{ssSphere:2.5,freeCSS:{pointerEvents:"all"},children:y(ie.Sub,{color:"cloud",border:"unset",ssSphere:2.5,fontColor:"theme",boxShadow:"0.normal",borderRadius:"3.tone.tertiary",flexCenter:!0,ssEffectsOnActive:"push",tabIndex:-1,id:"Picker-"+a.componentId,onClick:()=>{let f=P.get(a.componentId);f&&f.openPicker("#Picker-"+a.componentId)},children:y(de,{icon:i})})})}return y(ye,{componentId:a.componentId,children:xe,states:Ie(a)})},Clock:e=>y(A.Origin,o({restrict:"clock",era:"clock"},e)),Date:e=>y(A.Origin,o({restrict:"date"},e)),Week:e=>y(A.Origin,o({restrict:"week"},e)),Month:e=>y(A.Origin,o({restrict:"month"},e)),Year:e=>y(A.Origin,o({restrict:"year"},e)),Locale:{JP:{WarekiDate:e=>{e=o({},e);let[a]=$(e.componentId||O(12));e.componentId=a;let T=e,{defaultEra:I="wareki"}=T,i=G(T,["defaultEra"]),[f,w]=$((()=>{let n="year";if(I=="wareki"&&(n="reiwa",e.value)){let[r,R,b]=e.value.split(/\D/);if(r&&R&&b){let t=Number(r);t>=2019?(t-=2019,n="reiwa"):t>=1989?(t-=1989,n="heisei"):t>=1926?(t-=1926,n="shouwa"):t>=1912?(t-=1912,n="taisho"):t>=1868&&(t-=1868,n="meiji"),t+=1}}return n})());return K(()=>{P.set({["refreshEra_"+a]:{refreshEra:n=>{w(n)}}})},[]),y(A.Origin,S(o({restrict:"locale.jp.warekiDate",leftIndicator:y(De,{label:"\u5143\u53F7",emptySelect:!1,value:f,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:n=>{w(n);let r=P.get(e.componentId);r&&r.resetEra&&r.resetEra(n)}})},i),{era:f}))}}},Periods:{Date:e=>y(A.Origin,o({restrict:"period.date"},e)),Month:e=>y(A.Origin,o({restrict:"period.month"},e))}};export{A as Time,oe as TimeSelector,A as default};
@@ -1 +1 @@
1
- import{b as n,c as u,e as R}from"../../chunk-C5N2D3ZX.js";import{jsx as m,jsxs as C}from"react/jsx-runtime";import{useState as _,useEffect as g}from"react";import c,{UUID as I,useStore as S}from"jmini";import{$$fromRoot as x}from"../../@utils";import{InputClasses as T}from"../../@styles/componentClasses";import{Box as k,Flex as B,FAI as v,Column as D}from"../../atoms";import{Row as b,Literal as E}from"../../mols";import{Button as F}from"../Button";import V from"../Tooltips";const Z=t=>{let[i]=_(t.componentId||I(12));t=n({},t),t.states=u(n({enableFormSubmit:!0,status_id:I(),override:"never",form:"",id:I(),"aria-label":"Input-"+i},t.states),{componentId:i});let{children:a}=t;return m(a,n({},t.states))},tt=t=>{let{children:i,val_status:a,states:e}=t,{leftIcon:r,wrapStyles:p}=e,s=a.notice||[];return e.checkValidationAtFirst||a.eventType=="init"&&(s=[]),C(b.Center,u(n({position:"relative",verticalAlign:"unset",gap:0},p),{className:T("Wrapper"),"data-notice-uid":a.componentId,children:[m(h.Notice,{notice:s,val_status:a}),e.leftIndicator,C(B,{position:"relative",flexSizing:"auto",children:[i,r,m(h.RightIcon,n({},t)),m(h.ClearButton,n({},t))]}),e.rightIndicator]}))},h={ClearButton:t=>!t.states.clearButton||!t.val_status.dataValue?null:m(F.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(i=>u(n({},i),{dataValue:"",formatValue:"",eventType:"update",eventID:I(12),isInspected:!1}))},children:m(v.X,{})}),RightIcon:t=>t.states.clearButton&&t.val_status.dataValue?null:t.states.rightIcon,Notice:t=>{let{notice:i,val_status:a}=t,{componentId:e}=a,r="NoticeTimer-"+e,p="NoticeTimerClose-"+e,s="notice-tips-"+e;return g(()=>{c.interval.once(()=>{if(!(i!=null&&i.length)){V.close(s);return}V.open({tipsID:s,parent:`[data-notice-uid="${e}"]`,gravityPoint:24,padding:[1,0],closeAtParentBlur:!1,content:C(V.Body,{padding:["1/2","2/3"],fontSize:"1.mini",position:"relative",children:[m(k,{position:"absolute",unitHeight:1,unitWidth:1,right:1,backgroundColor:"dark",freeCSS:{zIndex:1,transform:"rotate(45deg)",top:-6}}),m(D,{backgroundColor:"inherit",gap:"1/3",position:"relative",freeCSS:{zIndex:2},children:i.map((o,d)=>{let{type:f,label:l}=o,y=f=="invalid"?v.Exclamation:f=="warn"?v.Exclamation:v.Check;return C(b.Left,{gap:0,borderRadius:"2.tone.secondary",children:[m(y,{flexCenter:!0,fontSize:"2.normal",fontColor:{invalid:"nega",warn:"warn",valid:"posi"}[f]}),m(E.Supplement,{fontSize:"0.xs",fontColor:"white",children:l})]},d+"-"+c.Stringify(o))})})]})})},350,r),c.interval.once(()=>{V.close(s)},6e3,p)},[i]),null}},w={DefaultStatus:(t,i)=>({componentId:t,dataValue:i,eventType:"init",eventID:I(12)}),CommonEffects:function(t){let{type:i,states:a,val_status:e,set_status:r,SystemValidation:p}=t;a=n({},a);let{componentId:s}=e;g(()=>(S.update({[s]:{ResolveRefresh:null,Refresh:()=>new Promise((o,d)=>{S.get(s).ResolveRefresh=o,r(f=>u(n({},f),{isInspected:!1,eventType:"refresh",eventID:I(12)}))})}}),()=>{S.delete(s)}),[]),c.scope(()=>{let{override:o}=a;if(o=="never"||o=="beforeModified"&&!["init","override"].includes(e.eventType)||e.isComposing)return;let d=S.get(e.componentId);if(!d)return;if(c.is.equal(a.value,e.dataValue)){d.status_id=a.status_id;return}let f=c.SortifyObject(a.value),l=c.SortifyObject(e.dataValue);if(f&&l&&c.is.equal(f,l)){d.status_id=a.status_id;return}a.status_id!=d.status_id&&r(y=>u(n(u(n({},y),{dataValue:a.value}),t.ExtraOverrideStates&&t.ExtraOverrideStates()),{eventType:"override",eventID:I(12),isInspected:!1}))}),g(()=>{w.ValidationCheck({val_status:e,set_status:r,SystemValidation:p,states:a})},[e.eventID,e.dataValue]);{let{componentId:o,eventType:d,dataValue:f}=e,l=f;i=="autocomplete.single"||i=="list.radio"?l=l[0]:a.isChecker&&(l=!!l[0]),g(()=>(c.scope(()=>{if(a.form=a.form||"testForm",a.name&&a.form&&S.update({[["form-data",a.form].join("-")]:{[a.name]:{componentId:o,type:i,value:l,validation:e.isValidated}}}),!e.isInspected||d!="refresh")return;let y=S.get(o);y&&y.ResolveRefresh&&y.ResolveRefresh(null)}),()=>{S.update({[["form-data",a.form].join("-")]:{[a.name]:null}})}),[e]),g(()=>{a.onUserAction&&a.onUserAction(l,{eventType:d,componentId:o,isInspected:!!e.isInspected,isValidated:!!e.isValidated,isComposing:!!e.isComposing,isFocusing:!!e.isFocusing})},[e]),g(()=>{d=="update"&&e.isInspected&&(a.onUpdateValue&&a.onUpdateValue(l,{eventType:d,componentId:o,isValidated:!!e.isValidated,isComposing:!!e.isComposing,isFocusing:!!e.isFocusing}),e.isValidated&&a.onUpdateValidValue&&a.onUpdateValidValue(l,{eventType:d,componentId:o,isValidated:!!e.isValidated,isComposing:!!e.isComposing,isFocusing:!!e.isFocusing}))},[e.isValidated,e.isInspected,e.dataValue])}},ValidationCheck:t=>{let{states:i}=t;if(t.val_status.isInspected)return;let a="ValidationTimer-"+t.val_status.componentId;c.interval.abort(a),t.set_status(s=>u(n({},s),{isInspected:!1}));let e=t.SystemValidation({value:t.val_status.dataValue,states:i});if(!e.ok){t.set_status(s=>u(n({},s),{isInspected:!0,isValidated:e.ok,notice:e.notice||[]}));return}let r=e.notice||[];const p=()=>R(void 0,null,function*(){if(!i.onValidate)return;let s=yield i.onValidate(t.val_status.dataValue,t.val_status.eventType,t.val_status);t.set_status(o=>u(n({},o),{isInspected:!0,isValidated:s.ok,notice:[...r,...s.notice||[]]}))});if(i.onValidate){if(t.val_status.eventType=="refresh"){p();return}c.interval.once(p,i.onValidateDelay||500,a);return}t.set_status(s=>u(n({},s),{isInspected:!0,isValidated:!0,notice:r}))},SubmitForm:(t,i)=>{let a=!1;if(!i)return a;let e=x(`[data-form-submit-button="${i}"]`)[0];if(!e)return a;let r=e.dataset.sdfike||"",p=t.key,s=t.ctrlKey||t.metaKey;return c.scope(()=>{r.includes("enter")&&(p!="Enter"||t.nativeEvent.isComposing||(t==null?void 0:t.keyCode)==229)||((p=="Enter"&&(r.includes("enter")||r.includes("auxEnter")&&s)||p==" "&&r.includes("space"))&&(e.click(),t.preventDefault()),a=!0)}),a},isShowValidation:(t,i)=>{let a=t.isValidated;return!i&&t.eventType=="init"?!0:a}},et=function(t){t=n({tone:"border"},t);let i=c.scope(()=>{if(t.tone=="plain")return{};let e={padding:1,transition:"middle",flexSizing:"auto",boxShadow:"0.min"};return t.tone=="border"?e=u(n({},e),{border:!0,borderRadius:"2.tone.secondary",backgroundColor:"layer.1"}):t.tone=="cloud"?e=u(n({},e),{border:"1.thin",borderRadius:"2.tone.secondary",backgroundColor:"cloud"}):t.tone=="bottomBorder"&&(e=u(n({},e),{borderRadius:0,border:"unset",borderBottom:!0,backgroundColor:"cloud"})),e});return u(n(n(n(n(n(n({fontColor:"2.normal"},i),!!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:n({letterSpacing:"1px",resize:"none"},t.freeCSS),className:[T("Input"),t.className].join(" ")})};export{tt as BoxWrapper,w as CoreEffects,et as DefaultBoxishStyles,Z as OptionalInputWrapper};
1
+ import{b as n,c as u,e as R}from"../../chunk-C5N2D3ZX.js";import{jsx as m,jsxs as C}from"react/jsx-runtime";import{useState as _,useEffect as g}from"react";import c,{UUID as y,useStore as S}from"jmini";import{$$fromRoot as x}from"../../@utils";import{InputClasses as T}from"../../@styles/componentClasses";import{Box as k,Flex as D,FAI as v,Column as B}from"../../atoms";import{Row as b,Literal as E}from"../../mols";import{Button as F}from"../Button";import V from"../Tooltips";const Z=t=>{let[i]=_(t.componentId||y(12));t=n({},t),t.states=u(n({enableFormSubmit:!0,status_id:y(),override:"never",form:"",id:y(),"aria-label":"Input-"+i},t.states),{componentId:i});let{children:a}=t;return m(a,n({},t.states))},tt=t=>{let{children:i,val_status:a,states:e}=t,{leftIcon:r,wrapStyles:p}=e,s=a.notice||[];return e.checkValidationAtFirst||a.eventType=="init"&&(s=[]),C(b.Center,u(n({position:"relative",verticalAlign:"unset",gap:0},p),{className:T("Wrapper"),"data-notice-uid":a.componentId,children:[m(h.Notice,{notice:s,val_status:a}),e.leftIndicator,C(D,{position:"relative",flexSizing:"auto",children:[i,r,m(h.RightIcon,n({},t)),m(h.ClearButton,n({},t))]}),e.rightIndicator]}))},h={ClearButton:t=>!t.states.clearButton||!t.val_status.dataValue?null:m(F.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(i=>u(n({},i),{dataValue:"",formatValue:"",eventType:"update",eventID:y(12),isInspected:!1}))},children:m(v.X,{})}),RightIcon:t=>t.states.clearButton&&t.val_status.dataValue?null:t.states.rightIcon,Notice:t=>{let{notice:i,val_status:a}=t,{componentId:e}=a,r="NoticeTimer-"+e,p="NoticeTimerClose-"+e,s="notice-tips-"+e;return g(()=>{c.interval.once(()=>{if(!(i!=null&&i.length)){V.close(s);return}V.open({tipsID:s,parent:`[data-notice-uid="${e}"]`,gravityPoint:24,padding:[1,0],closeAtParentBlur:!1,content:C(V.Body,{padding:["1/2","2/3"],fontSize:"1.mini",position:"relative",children:[m(k,{position:"absolute",unitHeight:1,unitWidth:1,right:1,backgroundColor:"dark",freeCSS:{zIndex:1,transform:"rotate(45deg)",top:-6}}),m(B,{backgroundColor:"inherit",gap:"1/3",position:"relative",freeCSS:{zIndex:2},children:i.map((o,d)=>{let{type:f,label:l}=o,I=f=="invalid"?v.Exclamation:f=="warn"?v.Exclamation:v.Check;return C(b.Left,{gap:0,borderRadius:"2.tone.secondary",children:[m(I,{flexCenter:!0,fontSize:"2.normal",fontColor:{invalid:"nega",warn:"warn",valid:"posi"}[f]}),m(E.Supplement,{fontSize:"0.xs",fontColor:"white",children:l})]},d+"-"+c.Stringify(o))})})]})})},350,r),c.interval.once(()=>{V.close(s)},6e3,p)},[i]),null}},w={DefaultStatus:(t,i)=>({componentId:t,dataValue:i,eventType:"init",eventID:y(12)}),CommonEffects:function(t){let{type:i,states:a,val_status:e,set_status:r,SystemValidation:p}=t;a=n({},a);let{componentId:s}=e;t.type=="time",g(()=>(S.update({[s]:{ResolveRefresh:null,Refresh:()=>new Promise((o,d)=>{S.get(s).ResolveRefresh=o,r(f=>u(n({},f),{isInspected:!1,eventType:"refresh",eventID:y(12)}))})}}),()=>{S.delete(s)}),[]),g(()=>{w.ValidationCheck({val_status:e,set_status:r,SystemValidation:p,states:a})},[e.eventID,e.dataValue]),c.scope(()=>{let{override:o}=a;if(o=="never"||o=="beforeModified"&&!["init","override"].includes(e.eventType)||e.isComposing)return;let d=S.get(e.componentId);if(!d)return;if(c.is.equal(a.value,e.dataValue)){d.status_id=a.status_id;return}let f=c.SortifyObject(a.value),l=c.SortifyObject(e.dataValue);if(f&&l&&c.is.equal(f,l)){d.status_id=a.status_id;return}a.status_id!=d.status_id&&(e.eventType=="update"&&!e.isInspected||r(I=>u(n(u(n({},I),{dataValue:a.value}),t.ExtraOverrideStates&&t.ExtraOverrideStates()),{eventType:"override",eventID:y(12),isInspected:!1,isValidated:!1})))});{let{componentId:o,eventType:d,dataValue:f}=e,l=f;i=="autocomplete.single"||i=="list.radio"?l=l[0]:a.isChecker&&(l=!!l[0]),g(()=>(c.scope(()=>{if(a.form=a.form||"testForm",a.name&&a.form&&S.update({[["form-data",a.form].join("-")]:{[a.name]:{componentId:o,type:i,value:l,validation:e.isValidated}}}),!e.isInspected||d!="refresh")return;let I=S.get(o);I&&I.ResolveRefresh&&I.ResolveRefresh(null)}),()=>{S.update({[["form-data",a.form].join("-")]:{[a.name]:null}})}),[e]),g(()=>{a.onUserAction&&a.onUserAction(l,{eventType:d,componentId:o,isInspected:!!e.isInspected,isValidated:!!e.isValidated,isComposing:!!e.isComposing,isFocusing:!!e.isFocusing})},[e]),g(()=>{d=="update"&&e.isInspected&&(a.onUpdateValue&&a.onUpdateValue(l,{eventType:d,componentId:o,isValidated:!!e.isValidated,isComposing:!!e.isComposing,isFocusing:!!e.isFocusing}),e.isValidated&&a.onUpdateValidValue&&a.onUpdateValidValue(l,{eventType:d,componentId:o,isValidated:!!e.isValidated,isComposing:!!e.isComposing,isFocusing:!!e.isFocusing}))},[e.isValidated,e.isInspected,e.dataValue])}},ValidationCheck:t=>{let{states:i}=t;if(t.val_status.isInspected)return;let a="ValidationTimer-"+t.val_status.componentId;c.interval.abort(a),t.set_status(s=>u(n({},s),{isInspected:!1,isValidated:!1}));let e=t.SystemValidation({value:t.val_status.dataValue,states:i});if(!e.ok){t.set_status(s=>u(n({},s),{isInspected:!0,isValidated:!!e.ok,notice:e.notice||[]}));return}let r=e.notice||[];const p=()=>R(void 0,null,function*(){if(!i.onValidate)return;let s=yield i.onValidate(t.val_status.dataValue,t.val_status.eventType,t.val_status);t.set_status(o=>u(n({},o),{isInspected:!0,isValidated:!!s.ok,notice:[...r,...s.notice||[]]}))});if(i.onValidate){if(t.val_status.eventType=="refresh"){p();return}c.interval.once(p,i.onValidateDelay||500,a);return}t.set_status(s=>u(n({},s),{eventID:y(12),isInspected:!0,isValidated:!0,notice:r}))},SubmitForm:(t,i)=>{let a=!1;if(!i)return a;let e=x(`[data-form-submit-button="${i}"]`)[0];if(!e)return a;let r=e.dataset.sdfike||"",p=t.key,s=t.ctrlKey||t.metaKey;return c.scope(()=>{r.includes("enter")&&(p!="Enter"||t.nativeEvent.isComposing||(t==null?void 0:t.keyCode)==229)||((p=="Enter"&&(r.includes("enter")||r.includes("auxEnter")&&s)||p==" "&&r.includes("space"))&&(e.click(),t.preventDefault()),a=!0)}),a},isShowValidation:(t,i)=>{let a=t.isValidated;return!i&&t.eventType=="init"?!0:a}},et=function(t){t=n({tone:"border"},t);let i=c.scope(()=>{if(t.tone=="plain")return{};let e={padding:1,transition:"middle",flexSizing:"auto",boxShadow:"0.min"};return t.tone=="border"?e=u(n({},e),{border:!0,borderRadius:"2.tone.secondary",backgroundColor:"layer.1"}):t.tone=="cloud"?e=u(n({},e),{border:"1.thin",borderRadius:"2.tone.secondary",backgroundColor:"cloud"}):t.tone=="bottomBorder"&&(e=u(n({},e),{borderRadius:0,border:"unset",borderBottom:!0,backgroundColor:"cloud"})),e});return u(n(n(n(n(n(n({fontColor:"2.normal"},i),!!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:n({letterSpacing:"1px",resize:"none"},t.freeCSS),className:[T("Input"),t.className].join(" ")})};export{tt as BoxWrapper,w as CoreEffects,et as DefaultBoxishStyles,Z as OptionalInputWrapper};
package/dist/fn/Sheet.js CHANGED
@@ -1 +1 @@
1
- import{b as m,c as w,d as W}from"../chunk-C5N2D3ZX.js";import{Fragment as le,jsx as h,jsxs as Q}from"react/jsx-runtime";import d,{UUID as J,Time as pe,useStore as b}from"jmini";import{useState as L,useEffect as H,useRef as ue}from"react";import{$$fromRoot as K,Config as G}from"../@utils";import{Box as A,Flex as he,Img as ce,FAI as ie,Column as se,Grid as de}from"../atoms";import{Row as ne}from"../mols";import{Button as ae}from"./Button";import{SheetClasses as g}from"../@styles/componentClasses";import fe from"./Plate";const x={currentIndex:0,openQueue:{},getSessionStates:()=>{let t=b.get("sessionStates-"+G.get().sessionUID);return t||null},getNewSheetStates:t=>{var u;let e=w(m({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:pe()});if(e.type=="custom"){let a=e;a.parent=a.parent||((u=a==null?void 0:a.event)==null?void 0:u.currentTarget),e=a}return e}},F={Wrapper:()=>{let[t,e]=L([]),u={val_sheets:t,set_sheets:e},a="sessionStates-"+G.get().sessionUID;return b.set({[a]:u}),H(()=>{let c="Sheet-"+G.get().sessionUID;b.set({[c]:{add:(r,n)=>{let i=b.get(c);if(!i)return;let o=x.getNewSheetStates(r);if(x.openQueue[o.sheetID])return;if(x.openQueue[o.sheetID]=!0,n!="inherit"&&(o.isOpen=n!=null?n:!0),!!i.find(o.sheetID)){e(C=>{let R=[...C],D=R.findIndex(P=>P.sheetID==o.sheetID);return D==-1||(R[D]=o),R}),delete x.openQueue[o.sheetID];return}e(C=>[o,...C])},find:r=>{let n=x.getSessionStates();if(!n)return null;let{val_sheets:i}=n;return i.find(o=>o.sheetID==r)}}}),d(G.get().appRoot).removeEvent(["SheetEvent.keyUp","SheetEvent.Click"]).addEvent({eventType:"keyup",eventID:"SheetEvent.keyUp",callback:function(r){let{key:n,metaKey:i}=r;if(n=="Escape"||n==","&&i){let o=x.getSessionStates();if(!o)return;let{val_sheets:v}=o,C=v.filter(D=>D.isOpen);if(!C.length)return;let R=C.reduce((D,P)=>D.created_at.value>P.created_at.value?D:P);E.close(R.sheetID,n)}}}).addEvent({eventType:"click",eventID:"SheetEvent.Click",callback:function(r){let n=x.getSessionStates();if(!n)return;let{val_sheets:i}=n,o=r.target;if(!o||o!=null&&o.closest("."+g("CustomSheet")))return;let v=i.filter(C=>C.type=="custom");v.length&&v.forEach(C=>{let{parent:R}=C;if(!C.closeAtAroundClick)return;let D=K(R)[0];R!==o&&D!==o&&(d(D).find(o).length||E.close(C.sheetID))})}})},[]),h(le,{children:t.map(c=>h(F.Core,w(m({},u),{val_sheet:c,patch_sheet:r=>{e(n=>{let i=[...n],o=i.findIndex(v=>v.sheetID==c.sheetID);return o==-1||(i[o]=m(m({},i[o]),r)),i})},delete_sheet:()=>{e(r=>{let n=[...r],i=n.findIndex(o=>o.sheetID==c.sheetID);return i==-1||n.splice(i,1),n})}}),c.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:u}=t,[a,c]=L(x.currentIndex+2),[r]=L(J()),n=e.type!="custom"&&!e.overwrap;H(()=>{x.currentIndex++,d.scope(()=>{if(!e.closeAtParentBlur)return;let o=d(e.parent);o[0]&&o.addEvent({eventID:"SheetClosation-"+e.sheetID,eventType:"mouseout",callback:()=>{o.removeEvent("SheetClosation-"+e.sheetID),u({isOpen:!1})}})}),b.set({[e.sheetID]:{resize:o=>{if(e.type=="drawer.bottom"){let v=b.get(r);v&&v.resize&&v.resize(o)}else(e.type.includes("normal")||e.type.includes("drawer"))&&u({size:o})},close:o=>{u({isOpen:!1})},open:()=>{u({isOpen:!0})}}})},[]),H(()=>{d.scope(()=>{let o=K("#"+r);if(e.isOpen){e.hold_state&&c(x.currentIndex+1),o.await(10).removeClass(g("Hide")).await(10).addClass(g("Open")).callback(()=>{delete x.openQueue[e.sheetID],e.onOpen&&e.onOpen()});return}o.await(10).removeClass(g("Open")).await(251).addClass(g("Hide")).callback(()=>{if(e.onClose&&e.onClose(),n&&G.get().browserIs!="safari"&&d(G.get().appRoot).focus(),e.hold_state)return u({isOpen:!1});t.delete_sheet()})})},[e.isOpen]);let i=F.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(A,{className:["AMOTIFY_be",g("Wrap"),g("Tcate_"+F.sheetCategory(e.type)),g("Tpos_"+F.sheetPosition(e.type)),g("isMainSheet_"+n),e.wrapperClassName||""].join(" "),width:1,ssAbsoluteCovered:!0,position:"fixed",freeCSS:{zIndex:a},id:r,children:Q(se,{className:g("Content"),gap:0,height:"viewHeight",overflow:"auto",transition:"middle",children:[!!n&&h(A,{className:g("TapSensor"),position:"sticky",top:0,height:0,width:1,flexSizing:"none",children:h(A,{backgroundColor:"trans",height:"viewHeight",position:"absolute",top:0,width:1,className:g("TapContent"),onClick:o=>{var C;((C=e.closeAtAroundClick)==null||C)&&E.close(e.sheetID)}})}),h(i,m({componentId:r},e))]})},r)},Types:{Normal:t=>{let k=t,{sheetID:e,sheetGroups:u,bodyScrolls:a,content:c,className:r="",type:n,size:i="R",freeCSS:o,onOpen:v,onClose:C,closeAtAroundClick:R,closeAtEscapeKeyDown:D,closeAtPageTransit:P,closeAtParentBlur:q,closeAtSwipeDown:Y,hold_state:ee,overwrap:te,isOpen:oe,backgroundEffect:X,wrapperClassName:j}=k,U=W(k,["sheetID","sheetGroups","bodyScrolls","content","className","type","size","freeCSS","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect","wrapperClassName"]),T={},y=[];return n.match(/top/)?(y.push("top"),T.marginBottom="auto"):n.match(/middle/)?(y.push("center"),T.marginTop="auto",T.marginBottom="auto"):n.match(/bottom/)&&(y.push("bottom"),T.marginTop="auto"),n.match(/left/i)?(y.push("left"),T.marginRight="auto"):n.match(/center/i)?(y.push("center"),T.marginLeft="auto",T.marginRight="auto"):n.match(/right/i)&&(y.push("right"),T.marginLeft="auto"),h(A,w(m(m({className:[g("BB"),r].join(" "),padding:1,transition:"short",opacity:"trans"},U),T),{freeCSS:m({width:{S:"26rem",R:"36rem",L:"44rem","2L":"60rem","3L":"72rem",MAX:"100%"}[i],maxWidth:"96vw",transformOrigin:y.join(" ")},o),children:d.is.function(c)?h(c,{}):c}))},Edge:t=>{let U=t,{sheetID:e,sheetGroups:u,bodyScrolls:a,type:c,content:r,className:n="",size:i="R",onOpen:o,onClose:v,closeAtAroundClick:C,closeAtEscapeKeyDown:R,closeAtPageTransit:D,closeAtParentBlur:P,closeAtSwipeDown:q,hold_state:Y,overwrap:ee,isOpen:te,backgroundEffect:oe,wrapperClassName:X}=U,j=W(U,["sheetID","sheetGroups","bodyScrolls","type","content","className","size","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect","wrapperClassName"]);return h(A,w(m(w(m({className:[g("BB"),n].join(" ")},c=="drawer.right"?{marginLeft:"auto"}:c=="drawer.left"?{marginRight:"auto"}:{}),{opacity:"trans",transition:"short",position:"relative",backgroundColor:"layer.1",flexSizing:"none",minHeight:"viewHeight",boxShadow:"3.remark"}),j),{freeCSS:m({width:{S:"20rem",R:"27rem",L:"32rem","2L":"40rem","3L":"58rem",MAX:"100vw"}[i],maxWidth:"96vw"},j.freeCSS),children:d.is.function(r)?h(r,{}):r}))},Bottom:t=>{let $=t,{componentId:e,sheetID:u,sheetGroups:a,bodyScrolls:c,content:r,size:n="R",sizeChanged:i,baseStyles:o,onOpen:v,onClose:C,closeAtAroundClick:R,closeAtEscapeKeyDown:D,closeAtPageTransit:P,closeAtParentBlur:q,closeAtSwipeDown:Y=!0,hold_state:ee,overwrap:te,isOpen:oe,backgroundEffect:X,wrapperClassName:j}=$,U=W($,["componentId","sheetID","sheetGroups","bodyScrolls","content","size","sizeChanged","baseStyles","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect","wrapperClassName"]),T=d.getScreenSize(),y=[0,.2,.6,.95],k={ZERO:0,S:1,R:2,L:3,"2L":3,"3L":3,MAX:3},[M,V]=L(n),[I,_]=L({process:!1,processStart:0,originY:0,originValue:0,viewHeight:0,value:y[k[n]]});b.update({[e]:{val_edit:I,resize:S=>{let f=y[k[S]];_(p=>w(m({},p),{value:f})),V(S)}}});const B={Start:S=>{d(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 f=d.getCursor(S),p=w(m({},I),{process:!0,processStart:new Date().getTime(),originY:f.y,originValue:I.value,viewHeight:d.getScreenSize().height});b.update({[e]:{val_edit:p}}),_(p)},Move:S=>{var O;let f=(O=b.get(e))==null?void 0:O.val_edit;if(!f.process)return;let z=(d.getCursor(S).y-f.originY)/f.viewHeight,s=f.originValue-z;if(s>.95)s=.95+(s-.95)*.5;else if(s<.2){let N=.2-s;N-=.1,s=.1+(.1-N)*.5}return _(w(m({},f),{value:s})),S.preventDefault(),S.stopPropagation(),!1},End:S=>{var s;let f=(s=b.get(e))==null?void 0:s.val_edit;if(!f.process)return;d(document).removeEvent(["BottomSheetMouseMove","BottomSheetTouchMove","BottomSheetMouseUp","BottomSheetTouchEnd"]);let p=0;if(f.value<.1||(f.value<.5?p=1:f.value>.75?p=3:p=2),new Date().getTime()-f.processStart<300){let O=d.getCursor(S).y-f.originY;if(Math.abs(O)>=20){let N=+(O<0)*2-1;p+=N,p=Math.min(Math.max(p,0),y.length-1)}}p==0&&(Y||(p=1)),V(["ZERO","S","R","L"][p]),_(w(m({},f),{value:y[p],process:!1}))}},Z=ue(!1);return H(()=>{Z.current?M=="ZERO"?Y&&E.close(u):setTimeout(()=>{t.sizeChanged&&t.sizeChanged(M)},250):Z.current=!0},[M]),h(A,{className:g("BB"),margin:[0,"auto"],marginTop:"auto",opacity:"trans",width:1,transition:"long",freeCSS:m({maxWidth:12*60,height:T.height*I.value},I.process?{transition:"0s"}:{}),children:Q(se,w(m({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:[Q(ne.Separate,{padding:1,backgroundColor:"layer.1",position:"relative",freeCSS:{userSelect:"none"},children:[h(A,{ssSphere:2.5}),h(ne.Center,{onPointerDown:B.Start,flexSizing:0,padding:"2/3",ssPushable:!0,isRounded:!0,freeCSS:{cursor:"grab",userSelect:"none"},children:h(A,{unitWidth:6,unitHeight:"1/2",backgroundColor:"layer.4",isRounded:!0,className:g("DragBar")})}),h(ae.Sub,{color:"cloud",ssSphere:2.5,onClick:()=>{E.close(u)},children:h(ie.X,{})})]}),h(A,w(m({backgroundColor:"layer.1",flexSizing:0,overflow:"auto"},U),{children:d.is.function(r)?h(r,{}):r}))]}))})},Custom:t=>{let $=t,{sheetID:e,sheetGroups:u,bodyScrolls:a,event:c,parent:r,nextToCursor:n,gravityPoint:i=22,content:o,closeAtAroundClick:v,closeAtEscapeKeyDown:C,closeAtPageTransit:R,closeAtParentBlur:D,closeAtSwipeDown:P,hold_state:q,onOpen:Y,onClose:ee,overwrap:te,isOpen:oe,resize:X,backgroundEffect:j,wrapperClassName:U}=$,T=W($,["sheetID","sheetGroups","bodyScrolls","event","parent","nextToCursor","gravityPoint","content","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","onOpen","onClose","overwrap","isOpen","resize","backgroundEffect","wrapperClassName"]),[y]=L(J()),k=d.is.element(r)||d.is.jmini(r)?d(r):K(r),M='[data-sheet-id="'+y+'"]',V='[data-sheet-content="'+y+'"]';i=i;let I=i%5||5,_=Math.ceil(i/5);const B={Init:()=>{if(n&&c){let l=d.getScreenSize(),re=d.getCursor(c);return{top:re.y-l.pageYOffset,left:re.x-l.pageXOffset}}let S={};if(!k||!k[0])return S;let{top:f,right:p,bottom:z,left:s,height:O,width:N}=k.position();return[1,2].includes(I)?S.left=s:I==3?S.left=s+N/2:[4,5].includes(I)&&(S.left=p),i<=10?S.top=f:i<=15?S.top=f+O/2:i<=25&&(S.top=z),S},Adjust:()=>{let S=K(M).position(),f=K(V).position(),p=k.position(),z=d.getScreenSize(),s={};for(let l in f)s[l]=f[l];if(d.scope(()=>{if(t.nextToCursor)return;let l=0;_==1?l=p.top-s.bottom:_==2?l=p.top-s.top:_==3?l=p.top-s.top+(p.height-s.height)/2:_==4?l=p.bottom-s.bottom:_==5&&(l=p.bottom-s.top),s.top+=l,s.bottom+=l}),d.scope(()=>{if(t.nextToCursor)return;let l=0;I==1?l=p.left-s.right:I==2?l=p.left-s.left:I==3?l=p.left-s.left+(p.width-s.width)/2:I==4?l=p.right-s.right:I==5&&(l=p.right-s.left),s.left+=l,s.right+=l}),s.top<0){let l=-s.top;s.top+=l,s.bottom+=l}if(s.bottom>z.height){let l=s.bottom-z.height;s.top-=l,s.bottom-=l}if(s.left<0){let l=-s.left;s.left+=l,s.right+=l}if(s.right>z.width){let l=s.right-z.width;s.left-=l,s.right-=l}let O=s.top-f.top,N=s.left-f.left;d(M).css({top:S.top+O+"px",left:S.left+N+"px"})}};let[Z]=L(B.Init());return H(()=>{K(M).await(10).addClass(g("Open")).await(200).callback(()=>{(X==null||X)&&B.Adjust()}),b.update({["customSheet-"+t.sheetID]:{reposition:()=>{B.Adjust()}}})},[]),k[0]?h(A,{className:[g("BB"),g("CustomSheet")].join(" "),"data-sheet-id":y,transition:"long",position:"absolute",width:0,height:0,opacity:"trans",flexCenter:!0,freeCSS:Z,children:h(he,{position:"absolute",className:[g("GPT"),g("GPT_"+i),g("Col_"+I),g("Row_"+_)].join(" "),children:h(A,w(m({"data-sheet-content":y,flexSizing:"none",maxHeight:"viewHeight"},T),{freeCSS:m({maxWidth:"98vw"},T.freeCSS),children:d.is.function(o)?h(o,{}):o}))})}):null}}},E={Wrapper:()=>h(F.Wrapper,{}),Element:t=>{let c=t,{isOpen:e,children:u}=c,a=W(c,["isOpen","children"]);return H(()=>{if(e){E.open(t.type,w(m({},a),{content:u}));return}a.sheetID&&E.close(a.sheetID)},[e]),h(le,{})},image:(t,e)=>{let u=t.sheetID||J(),r=t,{type:a}=r,c=W(r,["type"]);E.open(a||"topCenter",w(m({size:"MAX"},c),{sheetID:u,freeCSS:{maxWidth:"100vw"},content:()=>{let[n]=L(d.flatArray(e));return h(fe,{children:Q(se,{children:[h(ne.Right,{children:Q(ae.Sub.S,{color:"cloud",isRounded:!0,onClick:()=>{E.close(u)},children:[h(ie.X,{})," \u9589\u3058\u308B"]})}),h(de.Layout,{gap:1,gridTemplateColumns:"repeat(3,1fr)",gridTemplateRows:"repeat(2,auto)",gridChildTemplates:[["span 3",0],["span 2","span 2"],[0,0],[0,0],[0,"span 2"],["span 2",0],[0,0],[0,0]],children:n.map((i,o)=>h(ce,{ssCardBox:!0,position:"relative",flexCenter:!0,src:i},o))})]})})}}))},open:(t,e,u)=>{e.sheetID=(e.sheetID||"").replace(/\./g,"-"),e.type=t;let a=b.get("Sheet-"+G.get().sessionUID);a&&a.add(e,u)},resize:t=>{t.sheetID=(t.sheetID||"").replace(/\./g,"-");let e=b.get(t.sheetID);e&&e.resize&&e.resize(t.size)},customSheet:{reposition:t=>{let e=b.get("customSheet-"+t);e&&e.reposition&&e.reposition()}},close:function(t,e,u){let a=x.getSessionStates();if(!a)return;let{val_sheets:c}=a;t=t==null?void 0:t.replace(/\./g,"-");let r=c.find(i=>i.sheetID==t);if(!r||e=="Escape"&&!r.closeAtEscapeKeyDown)return;let n=b.get(r.sheetID);n&&n.close&&n.close(u)},closeGroup:t=>{let e=x.getSessionStates();if(!e)return;let{val_sheets:u}=e;t=(t||"").replace(/\./g,"-");for(let a of u)a.sheetGroups&&a.sheetGroups==t&&E.close(a.sheetID)},closeAll:t=>{let e=x.getSessionStates();if(!e)return;let{val_sheets:u}=e;for(let a of u)t&&!a.closeAtPageTransit||E.close(a.sheetID,"pageTransit",!0)},Body:t=>h(A,m({className:g("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 m,c as w,d as W}from"../chunk-C5N2D3ZX.js";import{Fragment as ae,jsx as u,jsxs as F}from"react/jsx-runtime";import d,{UUID as Z,Time as le,useStore as D}from"jmini";import{useState as L,useEffect as H,useRef as pe}from"react";import{$$fromRoot as K,Config as G}from"../@utils";import{Box as A,Flex as ue,Img as he,FAI as re,Column as oe,Grid as ce,CacheRender as de}from"../atoms";import{Row as se}from"../mols";import{Button as ie}from"./Button";import{SheetClasses as g}from"../@styles/componentClasses";import fe from"./Plate";const y={currentIndex:0,openQueue:{},getSessionStates:()=>{let t=D.get("sessionStates-"+G.get().sessionUID);return t||null},getnew_sheetstates:t=>{var h;let e=w(m({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 i=e;i.parent=i.parent||((h=i==null?void 0:i.event)==null?void 0:h.currentTarget),e=i}return e},Wrapper:()=>{let[t,e]=L([]),h={val_sheets:t,set_sheets:e},i="sessionStates-"+G.get().sessionUID;return D.set({[i]:h}),H(()=>{let c="Sheet-"+G.get().sessionUID;D.set({[c]:{add:(r,n)=>{let a=D.get(c);if(!a)return;let s=y.getnew_sheetstates(r);if(y.openQueue[s.sheetID])return;if(y.openQueue[s.sheetID]=!0,n!="inherit"&&(s.isOpen=n!=null?n:!0),!!a.find(s.sheetID)){e(C=>{let R=[...C],T=R.findIndex(N=>N.sheetID==s.sheetID);return T==-1||(R[T]=s),R}),delete y.openQueue[s.sheetID];return}e(C=>[s,...C])},find:r=>{let n=y.getSessionStates();if(!n)return null;let{val_sheets:a}=n;return a.find(s=>s.sheetID==r)}}}),d(G.get().appRoot).removeEvent(["SheetEvent.keyUp","SheetEvent.Click"]).addEvent({eventType:"keyup",eventID:"SheetEvent.keyUp",callback:function(r){let{key:n,metaKey:a}=r;if(n=="Escape"||n==","&&a){let s=y.getSessionStates();if(!s)return;let{val_sheets:I}=s,C=I.filter(T=>T.isOpen);if(!C.length)return;let R=C.reduce((T,N)=>T.created_at.value>N.created_at.value?T:N);E.close(R.sheetID,n)}}}).addEvent({eventType:"click",eventID:"SheetEvent.Click",callback:function(r){let n=y.getSessionStates();if(!n)return;let{val_sheets:a}=n,s=r.target;if(!s||s!=null&&s.closest("."+g("CustomSheet")))return;let I=a.filter(C=>C.type=="custom");I.length&&I.forEach(C=>{let{parent:R}=C;if(!C.closeAtAroundClick)return;let T=K(R)[0];R!==s&&T!==s&&(d(T).find(s).length||E.close(C.sheetID))})}})},[]),u(ae,{children:t.map(c=>u(de,{params:c,propsAreEqual:(r,n)=>r.isOpen==n.isOpen,children:u(y.Core,w(m({},h),{val_sheet:c,patch_sheet:r=>{e(n=>{let a=[...n],s=a.findIndex(I=>I.sheetID==c.sheetID);return s!=-1&&(a[s]=m(m({},a[s]),r)),a})},delete_sheet:()=>{e(r=>[...r.filter(n=>n.sheetID!=c.sheetID)])}}))},c.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:h}=t,[i,c]=L(y.currentIndex+2),[r]=L(Z()),n=e.type!="custom"&&!e.overwrap;H(()=>{y.currentIndex++,d.scope(()=>{if(!e.closeAtParentBlur)return;let s=d(e.parent);s[0]&&s.addEvent({eventID:"SheetClosation-"+e.sheetID,eventType:"mouseout",callback:()=>{s.removeEvent("SheetClosation-"+e.sheetID),h({isOpen:!1})}})}),D.set({[e.sheetID]:{resize:s=>{if(e.type=="drawer.bottom"){let I=D.get(r);I&&I.resize&&I.resize(s)}else(e.type.includes("normal")||e.type.includes("drawer"))&&h({size:s})},close:s=>{h({isOpen:!1})},open:()=>{h({isOpen:!0})}}})},[]),H(()=>{d.scope(()=>{let s=K("#"+r);if(e.isOpen){e.hold_state&&c(y.currentIndex+1),s.await(10).removeClass(g("Hide")).await(10).addClass(g("Open")).callback(()=>{delete y.openQueue[e.sheetID],e.onOpen&&e.onOpen()});return}s.await(10).removeClass(g("Open")).await(251).addClass(g("Hide")).callback(()=>{if(e.onClose&&e.onClose(),n&&G.get().browserIs!="safari"&&d(G.get().appRoot).focus(),e.hold_state)return h({isOpen:!1});t.delete_sheet()})})},[e.isOpen]);let a=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 u(A,{className:["AMOTIFY_be",g("Wrap"),g("Tcate_"+y.sheetCategory(e.type)),g("Tpos_"+y.sheetPosition(e.type)),g("isMainSheet_"+n),e.wrapperClassName||""].join(" "),width:1,ssAbsoluteCovered:!0,position:"fixed",freeCSS:{zIndex:i},id:r,children:F(oe,{className:g("Content"),gap:0,height:"viewHeight",overflow:"auto",transition:"middle",children:[!!n&&u(A,{className:g("TapSensor"),position:"sticky",top:0,height:0,width:1,flexSizing:"none",children:u(A,{backgroundColor:"trans",height:"viewHeight",position:"absolute",top:0,width:1,className:g("TapContent"),onClick:s=>{var C;((C=e.closeAtAroundClick)==null||C)&&E.close(e.sheetID)}})}),u(a,m({componentId:r},e))]})},r)},Types:{Normal:t=>{let k=t,{sheetID:e,sheetGroups:h,bodyScrolls:i,content:c,className:r="",type:n,size:a="R",freeCSS:s,onOpen:I,onClose:C,closeAtAroundClick:R,closeAtEscapeKeyDown:T,closeAtPageTransit:N,closeAtParentBlur:J,closeAtSwipeDown:Y,hold_state:q,overwrap:ee,isOpen:te,backgroundEffect:X,wrapperClassName:j}=k,U=W(k,["sheetID","sheetGroups","bodyScrolls","content","className","type","size","freeCSS","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect","wrapperClassName"]),x={},v=[];return n.match(/top/)?(v.push("top"),x.marginBottom="auto"):n.match(/middle/)?(v.push("center"),x.marginTop="auto",x.marginBottom="auto"):n.match(/bottom/)&&(v.push("bottom"),x.marginTop="auto"),n.match(/left/i)?(v.push("left"),x.marginRight="auto"):n.match(/center/i)?(v.push("center"),x.marginLeft="auto",x.marginRight="auto"):n.match(/right/i)&&(v.push("right"),x.marginLeft="auto"),u(A,w(m(m({className:[g("BB"),r].join(" "),padding:1,transition:"short",opacity:"trans"},U),x),{freeCSS:m({width:{S:"26rem",R:"36rem",L:"44rem","2L":"60rem","3L":"72rem",MAX:"100%"}[a],maxWidth:"96vw",transformOrigin:v.join(" ")},s),children:d.is.function(c)?u(c,{}):c}))},Edge:t=>{let U=t,{sheetID:e,sheetGroups:h,bodyScrolls:i,type:c,content:r,className:n="",size:a="R",onOpen:s,onClose:I,closeAtAroundClick:C,closeAtEscapeKeyDown:R,closeAtPageTransit:T,closeAtParentBlur:N,closeAtSwipeDown:J,hold_state:Y,overwrap:q,isOpen:ee,backgroundEffect:te,wrapperClassName:X}=U,j=W(U,["sheetID","sheetGroups","bodyScrolls","type","content","className","size","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect","wrapperClassName"]);return u(A,w(m(w(m({className:[g("BB"),n].join(" ")},c=="drawer.right"?{marginLeft:"auto"}:c=="drawer.left"?{marginRight:"auto"}:{}),{opacity:"trans",transition:"short",position:"relative",backgroundColor:"layer.1",flexSizing:"none",minHeight:"viewHeight",boxShadow:"3.remark"}),j),{freeCSS:m({width:{S:"20rem",R:"27rem",L:"32rem","2L":"40rem","3L":"58rem",MAX:"100vw"}[a],maxWidth:"96vw"},j.freeCSS),children:d.is.function(r)?u(r,{}):r}))},Bottom:t=>{let $=t,{componentId:e,sheetID:h,sheetGroups:i,bodyScrolls:c,content:r,size:n="R",sizeChanged:a,baseStyles:s,onOpen:I,onClose:C,closeAtAroundClick:R,closeAtEscapeKeyDown:T,closeAtPageTransit:N,closeAtParentBlur:J,closeAtSwipeDown:Y=!0,hold_state:q,overwrap:ee,isOpen:te,backgroundEffect:X,wrapperClassName:j}=$,U=W($,["componentId","sheetID","sheetGroups","bodyScrolls","content","size","sizeChanged","baseStyles","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect","wrapperClassName"]),x=d.getScreenSize(),v=[0,.2,.6,.95],k={ZERO:0,S:1,R:2,L:3,"2L":3,"3L":3,MAX:3},[M,Q]=L(n),[b,_]=L({process:!1,processStart:0,originY:0,originValue:0,viewHeight:0,value:v[k[n]]});D.update({[e]:{val_edit:b,resize:S=>{let f=v[k[S]];_(p=>w(m({},p),{value:f})),Q(S)}}});const B={Start:S=>{d(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 f=d.getCursor(S),p=w(m({},b),{process:!0,processStart:new Date().getTime(),originY:f.y,originValue:b.value,viewHeight:d.getScreenSize().height});D.update({[e]:{val_edit:p}}),_(p)},Move:S=>{var O;let f=(O=D.get(e))==null?void 0:O.val_edit;if(!f.process)return;let z=(d.getCursor(S).y-f.originY)/f.viewHeight,o=f.originValue-z;if(o>.95)o=.95+(o-.95)*.5;else if(o<.2){let P=.2-o;P-=.1,o=.1+(.1-P)*.5}return _(w(m({},f),{value:o})),S.preventDefault(),S.stopPropagation(),!1},End:S=>{var o;let f=(o=D.get(e))==null?void 0:o.val_edit;if(!f.process)return;d(document).removeEvent(["BottomSheetMouseMove","BottomSheetTouchMove","BottomSheetMouseUp","BottomSheetTouchEnd"]);let p=0;if(f.value<.1||(f.value<.5?p=1:f.value>.75?p=3:p=2),new Date().getTime()-f.processStart<300){let O=d.getCursor(S).y-f.originY;if(Math.abs(O)>=20){let P=+(O<0)*2-1;p+=P,p=Math.min(Math.max(p,0),v.length-1)}}p==0&&(Y||(p=1)),Q(["ZERO","S","R","L"][p]),_(w(m({},f),{value:v[p],process:!1}))}},V=pe(!1);return H(()=>{V.current?M=="ZERO"?Y&&E.close(h):setTimeout(()=>{t.sizeChanged&&t.sizeChanged(M)},250):V.current=!0},[M]),u(A,{className:g("BB"),margin:[0,"auto"],marginTop:"auto",opacity:"trans",width:1,transition:"long",freeCSS:m({maxWidth:12*60,height:x.height*b.value},b.process?{transition:"0s"}:{}),children:F(oe,w(m({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:[F(se.Separate,{padding:1,backgroundColor:"layer.1",position:"relative",freeCSS:{userSelect:"none"},children:[u(A,{ssSphere:2.5}),u(se.Center,{onPointerDown:B.Start,flexSizing:0,padding:"2/3",ssPushable:!0,isRounded:!0,freeCSS:{cursor:"grab",userSelect:"none"},children:u(A,{unitWidth:6,unitHeight:"1/2",backgroundColor:"layer.4",isRounded:!0,className:g("DragBar")})}),u(ie.Sub,{color:"cloud",ssSphere:2.5,onClick:()=>{E.close(h)},children:u(re.X,{})})]}),u(A,w(m({backgroundColor:"layer.1",flexSizing:0,overflow:"auto"},U),{children:d.is.function(r)?u(r,{}):r}))]}))})},Custom:t=>{let $=t,{sheetID:e,sheetGroups:h,bodyScrolls:i,event:c,parent:r,nextToCursor:n,gravityPoint:a=22,content:s,closeAtAroundClick:I,closeAtEscapeKeyDown:C,closeAtPageTransit:R,closeAtParentBlur:T,closeAtSwipeDown:N,hold_state:J,onOpen:Y,onClose:q,overwrap:ee,isOpen:te,resize:X,backgroundEffect:j,wrapperClassName:U}=$,x=W($,["sheetID","sheetGroups","bodyScrolls","event","parent","nextToCursor","gravityPoint","content","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","onOpen","onClose","overwrap","isOpen","resize","backgroundEffect","wrapperClassName"]),[v]=L(Z()),k=d.is.element(r)||d.is.jmini(r)?d(r):K(r),M='[data-sheet-id="'+v+'"]',Q='[data-sheet-content="'+v+'"]';a=a;let b=a%5||5,_=Math.ceil(a/5);const B={Init:()=>{if(n&&c){let l=d.getScreenSize(),ne=d.getCursor(c);return{top:ne.y-l.pageYOffset,left:ne.x-l.pageXOffset}}let S={};if(!k||!k[0])return S;let{top:f,right:p,bottom:z,left:o,height:O,width:P}=k.position();return[1,2].includes(b)?S.left=o:b==3?S.left=o+P/2:[4,5].includes(b)&&(S.left=p),a<=10?S.top=f:a<=15?S.top=f+O/2:a<=25&&(S.top=z),S},Adjust:()=>{let S=K(M).position(),f=K(Q).position(),p=k.position(),z=d.getScreenSize(),o={};for(let l in f)o[l]=f[l];if(d.scope(()=>{if(t.nextToCursor)return;let l=0;_==1?l=p.top-o.bottom:_==2?l=p.top-o.top:_==3?l=p.top-o.top+(p.height-o.height)/2:_==4?l=p.bottom-o.bottom:_==5&&(l=p.bottom-o.top),o.top+=l,o.bottom+=l}),d.scope(()=>{if(t.nextToCursor)return;let l=0;b==1?l=p.left-o.right:b==2?l=p.left-o.left:b==3?l=p.left-o.left+(p.width-o.width)/2:b==4?l=p.right-o.right:b==5&&(l=p.right-o.left),o.left+=l,o.right+=l}),o.top<0){let l=-o.top;o.top+=l,o.bottom+=l}if(o.bottom>z.height){let l=o.bottom-z.height;o.top-=l,o.bottom-=l}if(o.left<0){let l=-o.left;o.left+=l,o.right+=l}if(o.right>z.width){let l=o.right-z.width;o.left-=l,o.right-=l}let O=o.top-f.top,P=o.left-f.left;d(M).css({top:S.top+O+"px",left:S.left+P+"px"})}};let[V]=L(B.Init());return H(()=>{K(M).await(10).addClass(g("Open")).await(200).callback(()=>{(X==null||X)&&B.Adjust()}),D.update({["customSheet-"+t.sheetID]:{reposition:()=>{B.Adjust()}}})},[]),k[0]?u(A,{className:[g("BB"),g("CustomSheet")].join(" "),"data-sheet-id":v,transition:"long",position:"absolute",width:0,height:0,opacity:"trans",flexCenter:!0,freeCSS:V,children:u(ue,{position:"absolute",className:[g("GPT"),g("GPT_"+a),g("Col_"+b),g("Row_"+_)].join(" "),children:u(A,w(m({"data-sheet-content":v,flexSizing:"none",maxHeight:"viewHeight"},x),{freeCSS:m({maxWidth:"98vw"},x.freeCSS),children:d.is.function(s)?u(s,{}):s}))})}):null}}},E={Wrapper:()=>u(y.Wrapper,{}),Element:t=>{let c=t,{isOpen:e,children:h}=c,i=W(c,["isOpen","children"]);return H(()=>{if(e){E.open(t.type,w(m({},i),{content:h}));return}i.sheetID&&E.close(i.sheetID)},[e]),u(ae,{})},image:(t,e)=>{let h=t.sheetID||Z(),r=t,{type:i}=r,c=W(r,["type"]);E.open(i||"topCenter",w(m({size:"MAX"},c),{sheetID:h,freeCSS:{maxWidth:"100vw"},content:()=>{let[n]=L(d.flatArray(e));return u(fe,{children:F(oe,{children:[u(se.Right,{children:F(ie.Sub.S,{color:"cloud",isRounded:!0,onClick:()=>{E.close(h)},children:[u(re.X,{})," \u9589\u3058\u308B"]})}),u(ce.Layout,{gap:1,gridTemplateColumns:"repeat(3,1fr)",gridTemplateRows:"repeat(2,auto)",gridChildTemplates:[["span 3",0],["span 2","span 2"],[0,0],[0,0],[0,"span 2"],["span 2",0],[0,0],[0,0]],children:n.map((a,s)=>u(he,{ssCardBox:!0,position:"relative",flexCenter:!0,src:a},s))})]})})}}))},open:(t,e,h)=>{e.sheetID=(e.sheetID||"").replace(/\./g,"-"),e.type=t;let i=D.get("Sheet-"+G.get().sessionUID);i&&i.add(e,h)},resize:t=>{t.sheetID=(t.sheetID||"").replace(/\./g,"-");let e=D.get(t.sheetID);e&&e.resize&&e.resize(t.size)},customSheet:{reposition:t=>{let e=D.get("customSheet-"+t);e&&e.reposition&&e.reposition()}},close:function(t,e,h){let i=y.getSessionStates();if(!i)return;let{val_sheets:c}=i;t=t==null?void 0:t.replace(/\./g,"-");let r=c.find(a=>a.sheetID==t);if(!r||e=="Escape"&&!r.closeAtEscapeKeyDown)return;let n=D.get(r.sheetID);n&&n.close&&n.close(h)},closeGroup:t=>{let e=y.getSessionStates();if(!e)return;let{val_sheets:h}=e;t=(t||"").replace(/\./g,"-");for(let i of h)i.sheetGroups&&i.sheetGroups==t&&E.close(i.sheetID)},closeAll:t=>{let e=y.getSessionStates();if(!e)return;let{val_sheets:h}=e;for(let i of h)t&&!i.closeAtPageTransit||E.close(i.sheetID,"pageTransit",!0)},Body:t=>u(A,m({className:g("BaseBody"),backgroundColor:"layer.1",borderRadius:"1.tone.primary",position:"relative",boxShadow:"3.remark",transition:"long"},t))};export{E as Sheet,E as default};
@@ -1 +1 @@
1
- import{b as r,c as y,d as G}from"../../chunk-C5N2D3ZX.js";import{Fragment as j,jsx as a,jsxs as _}from"react/jsx-runtime";import D,{UUID as Q,useStore as Y}from"jmini";import{useState as Z,useEffect as W}from"react";import{useRefresh as E}from"../../@utils";import{Box as v,Flex as K,FAI as F,Span as le,Column as oe}from"../../atoms";import{Literal as ne,Row as z}from"../../mols";import{Button as N}from"../Button";import ee from"../Sheet";import I from"../Input";import{faArrowUp as se}from"@fortawesome/free-solid-svg-icons/faArrowUp";import{faArrowDown as ie}from"@fortawesome/free-solid-svg-icons/faArrowDown";import{faArrowRight as ce}from"@fortawesome/free-solid-svg-icons/faArrowRight";import{faFilter as de}from"@fortawesome/free-solid-svg-icons/faFilter";import R from"./Parts";import ue from"./Wrapper";import{DefaultCellSystemAdjustingStyles as M}from"./cellStyling";import{TableClasses as m}from"../../@styles/componentClasses";const x={__memoryID:Q(),Header:t=>{var g,w;let{val_status:e,set_status:i,KeywordFilterRows:f}=r({},t),{order:s,filter:l}=e,[d,h]=s.current,S=[],c=[...e.head];if(e.checker){let n={top:!0,bottom:!e.rows.length,left:!0,right:!e.colLength,rowIndex:0,colIndex:0,isBody:!1,isHeader:!0},o=M(n),u=e.cellStylesCallback?e.cellStylesCallback(n):{};S.push(a(R.TH,y(r(r(r({fontWeight:"2.normal",position:"sticky",top:0,unitWidth:4,padding:0},e.cellStyles),o),u),{freeCSS:y(r(r({},(g=e.cellStyles)==null?void 0:g.freeCSS),u.freeCSS),{zIndex:2}),className:[m("Cell"),e.cellClassName].join(" "),children:a(v,{flexCenter:!0,children:a(I.Checker,{label:"",value:!1,onUpdateValidValue:p=>{let C=e.rows;C.forEach(P=>{P.checked=p}),i(y(r({},e),{rows:C}))}})})}),-1))}for(let n=0;n<e.colLength;n++){let o=c[n];if(!o)continue;let u=o.children||o.data,p=s.enabled&&s.column[n],C=l.enabled&&l.column[n],P=p?a(F,{fontSize:"1.mini",fontColor:n==d?"1.clear":"5.translucent",icon:n==d?h=="DESC"?ie:se:ce}):null,A=a(j,{});if(C){let L=f.map(O=>{var B;return(B=O[n])==null?void 0:B.data});L=[...new Set(L)].toASC();let T=l.current[n];if(T){let O=L.filter(b=>!T.includes(b)),B=[];L.forEach(b=>{b&&B.push({value:b,label:a(v,{flexSizing:"auto",children:b})})});let J="BUTTON-"+e.componentId+"-"+n,X=e.componentId+"-"+n,re={sheetID:X,parent:"#"+J,gravityPoint:23,content:_(K,{flexType:"col",border:!0,boxShadow:"3.remark",backgroundColor:"layer.1",borderRadius:1,freeCSS:{minWidth:12*20,maxWidth:12*30},children:[a(oe,{gap:"1/3",overflow:"auto",padding:"2/3",freeCSS:{maxHeight:12*30},children:a(I.Checkbox,{icon:!0,value:O,display:"flex",gap:"2/3",override:"force",options:B,hideInput:!0,name:"DTFilter-col-"+n+"-table-"+e.componentId,onUpdateValidValue:b=>{let H=L.filter(ae=>!b.includes(ae)),$=r({},e);$.filter.current[n]=H,i($)}})}),_(z.Separate,{gap:"2/3",padding:"2/3",horizontalAlign:"right",children:[a(N.Border.S,{isRounded:!0,onClick:()=>{ee.close(X)},children:"\u9589\u3058\u308B"}),a(N.Prime.S,{color:"theme",isRounded:!0,ssEffectsOnActive:"shrink",onClick:()=>{let b=[];T.length||(b=L);let H=r({},e);H.filter.current[n]=b,i(H)},children:"\u5168\u9078\u629E"})]})]})};A=a(v,{className:m("FilterRegion"),children:a(N.Sub.S,{ssSphere:2.5,fontSize:"1.mini",className:m("Filtering_"+!!T.length),id:J,onClick:b=>{b.stopPropagation(),ee.open("custom",re)},children:a(F,{icon:de})})})}}let U={top:!0,bottom:!e.rows.length,left:e.checker?!1:n==0,right:n==e.colLength-1,rowIndex:0,colIndex:n,isBody:!1,isHeader:!0},te=M(U),q=e.cellStylesCallback?e.cellStylesCallback(U):{};o=y(r(r(r(r({},e.cellStyles),te),o),q),{ssPushable:p,freeCSS:r(r(r({},(w=e.cellStyles)==null?void 0:w.freeCSS),q.freeCSS),o.freeCSS),className:[m("Cell"),e.cellClassName,o.className].join(" ")}),delete o.orderIndex,S.push(a(R.TH,y(r({fontWeight:"2.normal",position:"sticky",top:0},o),{freeCSS:r({zIndex:2},o.freeCSS),onClick:L=>{if(p){let T=r({},e),O=[n,d===n?h=="ASC"?"DESC":"ASC":s.priority];T.order.current=O,i(T),e.onOrderChanged&&e.onOrderChanged(O)}},children:_(K,{flexType:"row-r",flexWrap:!1,height:1,borderRadius:"inherit",flexCenter:!0,children:[A,_(K,{flexSizing:0,position:"relative",borderRadius:"inherit",gap:"1/2",flexWrap:!1,verticalAlign:"center",horizontalAlign:"center",children:[P,u]})]})}),n))}return a(R.Row,{className:[m("Row"),m("HeadRow")].join(" "),children:S})},Body:t=>{let{val_status:e,PageRows:i}=t,f=[];if(i.forEach((s,l)=>{var S;let d=[...s],h=[];if(e.checker){let c={top:l==0&&!e.head,bottom:l==i.length-1,left:!0,right:!e.colLength,rowIndex:l,colIndex:0,isBody:!0,isHeader:!1},g=M(c),w=e.cellStylesCallback?e.cellStylesCallback(c):{};h.push(a(R.TH,y(r(r(r({unitWidth:4,padding:0,borderRight:!0},e.cellStyles),g),w),{freeCSS:r(r({},(S=e.cellStyles)==null?void 0:S.freeCSS),w.freeCSS),className:[m("Cell"),e.cellClassName].join(" "),children:a(v,{flexCenter:!0,children:a(I.Checker,{label:"",value:s.checked,override:"force",onUpdateValidValue:n=>{let o=e.rows,u=o.findIndex(p=>D.is.equal(p.rowID,s.rowID));u!=-1&&(o[u].checked=n,t.set_status(p=>y(r({},p),{rows:o})))}})})}),-1))}d.forEach((c,g)=>{var A;if(!c)return;let P=c,{type:w="td"}=P,n=G(P,["type"]),o={top:l==0&&!e.head,bottom:l==i.length-1,left:e.checker?!1:g==0,right:g==e.colLength-1,rowIndex:l,colIndex:g,isBody:!0,isHeader:!1},u=M(o),p=e.cellStylesCallback?e.cellStylesCallback(o):{};n=y(r(r(r(r({},e.cellStyles),u),n),p),{freeCSS:r(r(r({},(A=e.cellStyles)==null?void 0:A.freeCSS),n.freeCSS),p.freeCSS),className:[m("Cell"),e.cellClassName,n.className].join(" ")}),delete n.orderIndex;let C=R[w=="td"?"TD":"TH"];h.push(a(C,r({},n),g))}),f.push(a(R.Row,{className:[m("Row"),m("BodyRow")].join(" "),children:h,onClick:c=>{e.onRowClick&&e.onRowClick(s.rowID,c)}},l))}),!i.length){let s=a(v,{padding:2,fontColor:"4.thin",textAlign:"center",borderTop:"1.thin",children:"\u30C6\u30FC\u30D6\u30EB\u304C\u3042\u308A\u307E\u305B\u3093"});e.noRecords&&(s=a(j,{children:e.noRecords})),f.push(a(R.Row,{className:[m("Row"),m("BodyRow"),m("DataNotFound")].join(" "),children:a(R.TD,{colSpan:e.colLength,className:m("Cell"),children:s})},"dataNotFound"))}return a(j,{children:f})},Core:t=>{let{val_status:e,set_status:i}=t,{searchKeyword:f,filter:s,order:l,paging:d}=e,h=[...e.rows],S=[...e.rows],c=[...e.rows],g=[...e.rows];if(f&&(S=h.filter(o=>(o.__sys4SearchKey||"").match(new RegExp(String(f).escapeRegExChar(),"i"))?1:0),c=[...S],g=[...S]),s.enabled)for(let o=0;o<e.colLength;o++){let u=s.column[o],p=s.current[o];u&&p&&p.length&&(c=c.filter(C=>!p.includes(C[o].data)),g=[...c])}l.enabled&&(l.current[1]=="ASC"?c=c.toASC(l.current[0]+"[orderIndex]"):c=c.toDESC(l.current[0]+"[orderIndex]"),g=[...c]);{let{currentPageIndex:o,rowLength:u}=d;g=[...g].splice((o-1)*u,u)}let w=x.__memoryID+"_"+e.tableID,n={rows:{total:h.length,page:g.length,filtered:c.length},val_status:y(r({},e),{paging:y(r({},e.paging),{pageLength:Math.ceil(c.length/e.paging.rowLength)})}),set_status:i};return Y.update({[w]:{getRowData:()=>{let o=[...h];return l.enabled&&(l.current[1]=="ASC"?o=o.toASC(l.current[0]+"[orderIndex]"):o=o.toDESC(l.current[0]+"[orderIndex]")),o.forEach(u=>{u.currentPage=!1,u.filtered=!1}),g.forEach(u=>{let{rowID:p}=u;o.find(C=>D.is.equal(C.rowID,p)).currentPage=!0}),c.forEach(u=>{let{rowID:p}=u;o.find(C=>D.is.equal(C.rowID,p)).filtered=!0}),o}}}),W(()=>{E.release(e.tableID,n)}),a(v,{className:m("TableBase"),children:a(R.Table,{className:m("Table"),children:_(R.Body,{children:[a(x.Header,{val_status:e,set_status:i,KeywordFilterRows:S}),a(x.Body,{val_status:e,set_status:i,PageRows:g})]})})},f)},Propagations:{},DataLeveler:t=>{var e,i;return t=r({},t),t.filter=(e=t.filter)!=null?e:!1,t.filter=Array.from({length:t.colLength}).map((f,s)=>{var l;return D.is.boolean(t.filter)?t.filter:(l=t.filter[s])!=null?l:!1}),t.order=(i=t.order)!=null?i:!0,t.orderPriority=t.orderPriority||"ASC",t.order=Array.from({length:t.colLength}).map((f,s)=>{var l;return D.is.boolean(t.order)?t.order:(l=t.order[s])!=null?l:!0}),t=r({checker:!1,searchKeyword:"",filter:!1,order:!0,defaultOrder:[0,"ASC"]},t),t.rows.forEach((f,s)=>{f.rowID=f.rowID||s;let l=[];f.forEach((d,h)=>{let{data:S,children:c,orderIndex:g}=d;d.orderIndex=D.is.exist(g)?String(g):String(S),d.children=c||String(S),l.push(String(d.data))}),f.__sys4SearchKey=l.join("/")}),a(x.StateManager,r({},t))},StateManager:t=>{let{colLength:e,checker:i=!1,searchKeyword:f="",filter:s,order:l,orderPriority:d="ASC",defaultOrder:h=[0,d],pageRowLength:S=30}=t,[c]=Z(Q()),g={tableID:t.tableID||c,componentId:c,colLength:e,checker:i,searchKeyword:f,filter:{enabled:s!==!1,column:s,current:Array.from({length:e},()=>[])},order:{enabled:l!==!1,column:l,current:h,priority:t.orderPriority},paging:{rowLength:S,pageLength:Math.ceil(t.rows.length/S),currentPageIndex:1},head:t.head,rows:t.rows,noRecords:t.noRecords,cellStyles:t.cellStyles||{},cellClassName:t.cellClassName||"",cellStylesCallback:t.cellStylesCallback,onRowClick:t.onRowClick,onOrderChanged:t.onOrderChanged},[w,n]=Z(g);const o=()=>{const u=new WeakSet;return(p,C)=>{if(typeof C=="object"&&C!==null){if(u.has(C))return"[Circular Reference]";if(p=="children")return"[React Element]";u.add(C)}return C}};return W(()=>{n(u=>y(r({},u),{rows:g.rows}))},[D.Stringify(g.rows,o())]),W(()=>{n(u=>y(r({},u),{head:g.head}))},[D.Stringify(g.head,o())]),a(x.Core,{val_status:w,set_status:n})}},ge={__memoryID:x.__memoryID,getRowData:t=>{let e=Y.get(x.__memoryID+"_"+t);if(e!=null&&e.getRowData)return e.getRowData()}},V={SearchInput:t=>{let e=E.catch(t.tableID);if(!e)return null;let{val_status:i,set_status:f}=e;return a(I.TextField,{label:"\u691C\u7D22...",clearButton:!0,padding:"2/3",paddingRight:3,rightIcon:a(I.RightIcon,{ssSphere:2,fontColor:"5.translucent",right:"2/3",children:a(F.Search,{})}),value:i.searchKeyword,onUpdateValidValue:s=>{t.onChange(s),D.interval.once(()=>{f(l=>y(r({},l),{paging:y(r({},l.paging),{currentPageIndex:1}),filter:y(r({},l.filter),{current:Array.from({length:l.colLength},()=>[])}),searchKeyword:s}))},200,"InputSearchTime")}})},Info:t=>{let e=E.catch(t.tableID);if(!e)return null;let{val_status:i,set_status:f}=e,s=e.rows.filtered.ratio(e.rows.total)||0;return _(K,{verticalAlign:"baseline",gap:"1/2",fontSize:"1.mini",fontColor:"3.blur",children:[a(le,{fontSize:"4.thirdTitle",fontColor:"theme",children:e.rows.filtered.toLocaleString()}),"/ ",e.rows.total.toLocaleString(),"\u4EF6 (",s,"%)"]})},Paging:t=>{let e=E.catch(t.tableID);if(!e)return null;let{val_status:i,set_status:f}=e,s=[];for(let d=0;d<i.paging.pageLength;d++)s.push({value:d+1,label:(d+1).toString()});const l=d=>{let h=Math.min(Math.max(1,d),i.paging.pageLength),S=r({},i);S.paging.currentPageIndex=h,f(c=>y(r({},c),{paging:y(r({},c.paging),{currentPageIndex:h})}))};return a(I.Select,{emptySelect:!1,padding:["1/3","2/3"],override:"force",gap:0,leftIcon:a(I.LeftIcon,{freeCSS:{left:2,pointerEvents:"all"},children:a(N.Clear.S,{color:"cloud",fontColor:"4.thin",borderRadius:"2.tone.secondary",ssSquare:2.5,unitWidth:2,onClick:()=>{if(i.paging.currentPageIndex==1){l(i.paging.pageLength);return}l(i.paging.currentPageIndex-1)},children:a(F.ChevronLeft,{})})}),rightIcon:a(I.RightIcon,{freeCSS:{right:2,pointerEvents:"all"},children:a(N.Clear.S,{color:"cloud",fontColor:"4.thin",borderRadius:"2.tone.secondary",ssSquare:2.5,unitWidth:2,onClick:()=>{if(i.paging.currentPageIndex==i.paging.pageLength){l(1);return}l(i.paging.currentPageIndex+1)},children:a(F.ChevronRight,{})})}),options:s.map(d=>({value:d.value,label:_(z.Left,{gap:"1/3",verticalAlign:"baseline",children:[d.label,_(ne,{fontColor:"4.thin",fontSize:"0.xs",children:["/ ",i.paging.pageLength]})]})})),value:i.paging.currentPageIndex,onUpdateValidValue:d=>{l(d)}})},RowLength:t=>{let e=E.catch(t.tableID);if(!e)return null;let{val_status:i,set_status:f}=e,s=i.paging.rowLength,l=0,d=t.lengthSelect.map(h=>(l|=+(h==s),{value:h,label:h.toString()}));return l||d.push({value:s,label:s.toString()}),a(z.Center,{gap:"1/2",children:a(I.Select,{emptySelect:!1,override:"force",padding:"1/3",paddingLeft:3,paddingRight:2,SelectorStyles:{freeCSS:{minWidth:12*9}},SelectorPosition:4,value:i.paging.rowLength,leftIcon:a(I.LeftIcon,{fontSize:"0.xs",fontColor:"4.thin",freeCSS:{left:6},children:"\u8868\u793A"}),rightIcon:a(I.RightIcon,{fontSize:"0.xs",fontColor:"4.thin",freeCSS:{right:6},children:"\u4EF6"}),options:d.toASC("value"),onUpdateValidValue:h=>{f(S=>y(r({},S),{paging:{rowLength:Number(h),currentPageIndex:1,pageLength:Math.ceil(e.rows.filtered/Number(h))}}))}})})}},fe=t=>a(ue,y(r({},t),{type:"data",JSXChildren:x.DataLeveler})),k=fe;k.__memoryID=x.__memoryID,k.getRowData=ge.getRowData,k.Info=V.Info,k.Paging=V.Paging,k.RowLength=V.RowLength,k.SearchInput=V.SearchInput;export{k as Data,k as default};
1
+ import{b as r,c as y,d as G}from"../../chunk-C5N2D3ZX.js";import{Fragment as j,jsx as a,jsxs as _}from"react/jsx-runtime";import D,{UUID as Q,useStore as Y}from"jmini";import{useState as Z,useEffect as W}from"react";import{useRefresh as E}from"../../@utils";import{Box as v,Flex as K,FAI as F,Span as le,Column as oe}from"../../atoms";import{Literal as ne,Row as z}from"../../mols";import{Button as N}from"../Button";import ee from"../Sheet";import I from"../Input";import{faArrowUp as se}from"@fortawesome/free-solid-svg-icons/faArrowUp";import{faArrowDown as ie}from"@fortawesome/free-solid-svg-icons/faArrowDown";import{faArrowRight as ce}from"@fortawesome/free-solid-svg-icons/faArrowRight";import{faFilter as de}from"@fortawesome/free-solid-svg-icons/faFilter";import R from"./Parts";import ue from"./Wrapper";import{DefaultCellSystemAdjustingStyles as M}from"./cellStyling";import{TableClasses as C}from"../../@styles/componentClasses";const x={__memoryID:Q(),Header:t=>{var g,w;let{val_status:e,set_status:i,KeywordFilterRows:f}=r({},t),{order:s,filter:l}=e,[d,h]=s.current,S=[],c=[...e.head];if(e.checker){let n={top:!0,bottom:!e.rows.length,left:!0,right:!e.colLength,rowIndex:0,colIndex:0,isBody:!1,isHeader:!0},o=M(n),u=e.cellStylesCallback?e.cellStylesCallback(n):{};S.push(a(R.TH,y(r(r(r({fontWeight:"2.normal",position:"sticky",top:0,unitWidth:4,padding:0},e.cellStyles),o),u),{freeCSS:y(r(r({},(g=e.cellStyles)==null?void 0:g.freeCSS),u.freeCSS),{zIndex:2}),className:[C("Cell"),e.cellClassName].join(" "),children:a(v,{flexCenter:!0,children:a(I.Checker,{label:"",value:!1,onUpdateValidValue:p=>{let m=e.rows;m.forEach(P=>{P.checked=p}),i(y(r({},e),{rows:m}))}})})}),-1))}for(let n=0;n<e.colLength;n++){let o=c[n];if(!o)continue;let u=o.children||o.data,p=s.enabled&&s.column[n],m=l.enabled&&l.column[n],P=p?a(F,{fontSize:"1.mini",fontColor:n==d?"1.clear":"5.translucent",icon:n==d?h=="DESC"?ie:se:ce}):null,A=a(j,{});if(m){let L=f.map(O=>{var B;return(B=O[n])==null?void 0:B.data});L=[...new Set(L)].toASC();let T=l.current[n];if(T){let O=L.filter(b=>!T.includes(b)),B=[];L.forEach(b=>{b&&B.push({value:b,label:a(v,{flexSizing:"auto",children:b})})});let J="BUTTON-"+e.componentId+"-"+n,X=e.componentId+"-"+n,re={sheetID:X,parent:"#"+J,gravityPoint:23,content:_(K,{flexType:"col",border:!0,boxShadow:"3.remark",backgroundColor:"layer.1",borderRadius:1,freeCSS:{minWidth:12*20,maxWidth:12*30},children:[a(oe,{gap:"1/3",overflow:"auto",padding:"2/3",freeCSS:{maxHeight:12*30},children:a(I.Checkbox,{icon:!0,value:O,display:"flex",gap:"2/3",override:"force",options:B,hideInput:!0,name:"DTFilter-col-"+n+"-table-"+e.componentId,onUpdateValidValue:b=>{let H=L.filter(ae=>!b.includes(ae)),$=r({},e);$.filter.current[n]=H,i($)}})}),_(z.Separate,{gap:"2/3",padding:"2/3",horizontalAlign:"right",children:[a(N.Border.S,{isRounded:!0,onClick:()=>{ee.close(X)},children:"\u9589\u3058\u308B"}),a(N.Prime.S,{color:"theme",isRounded:!0,ssEffectsOnActive:"shrink",onClick:()=>{let b=[];T.length||(b=L);let H=r({},e);H.filter.current[n]=b,i(H)},children:"\u5168\u9078\u629E"})]})]})};A=a(v,{className:C("FilterRegion"),children:a(N.Sub.S,{ssSphere:2.5,fontSize:"1.mini",className:C("Filtering_"+!!T.length),id:J,onClick:b=>{b.stopPropagation(),ee.open("custom",re)},children:a(F,{icon:de})})})}}let U={top:!0,bottom:!e.rows.length,left:e.checker?!1:n==0,right:n==e.colLength-1,rowIndex:0,colIndex:n,isBody:!1,isHeader:!0},te=M(U),q=e.cellStylesCallback?e.cellStylesCallback(U):{};o=y(r(r(r(r({},e.cellStyles),te),o),q),{ssPushable:p,freeCSS:r(r(r({},(w=e.cellStyles)==null?void 0:w.freeCSS),q.freeCSS),o.freeCSS),className:[C("Cell"),e.cellClassName,o.className].join(" ")}),delete o.orderIndex,S.push(a(R.TH,y(r({fontWeight:"2.normal",position:"sticky",top:0},o),{freeCSS:r({zIndex:2},o.freeCSS),onClick:L=>{if(p){let T=r({},e),O=[n,d===n?h=="ASC"?"DESC":"ASC":s.priority];T.order.current=O,i(T),e.onOrderChanged&&e.onOrderChanged(O)}},children:_(K,{flexType:"row-r",flexWrap:!1,height:1,borderRadius:"inherit",flexCenter:!0,children:[A,_(K,{flexSizing:0,position:"relative",borderRadius:"inherit",gap:"1/2",flexWrap:!1,verticalAlign:"center",horizontalAlign:"center",children:[P,u]})]})}),n))}return a(R.Row,{className:[C("Row"),C("HeadRow")].join(" "),children:S})},Body:t=>{let{val_status:e,PageRows:i}=t,f=[];if(i.forEach((s,l)=>{var S;let d=[...s],h=[];if(e.checker){let c={top:l==0&&!e.head,bottom:l==i.length-1,left:!0,right:!e.colLength,rowIndex:l,colIndex:0,isBody:!0,isHeader:!1},g=M(c),w=e.cellStylesCallback?e.cellStylesCallback(c):{};h.push(a(R.TH,y(r(r(r({unitWidth:4,padding:0,borderRight:!0},e.cellStyles),g),w),{freeCSS:r(r({},(S=e.cellStyles)==null?void 0:S.freeCSS),w.freeCSS),className:[C("Cell"),e.cellClassName].join(" "),children:a(v,{flexCenter:!0,children:a(I.Checker,{label:"",value:s.checked,override:"force",onUpdateValidValue:n=>{let o=e.rows,u=o.findIndex(p=>D.is.equal(p.rowID,s.rowID));u!=-1&&(o[u].checked=n,t.set_status(p=>y(r({},p),{rows:o})))}})})}),-1))}d.forEach((c,g)=>{var A;if(!c)return;let P=c,{type:w="td"}=P,n=G(P,["type"]),o={top:l==0&&!e.head,bottom:l==i.length-1,left:e.checker?!1:g==0,right:g==e.colLength-1,rowIndex:l,colIndex:g,isBody:!0,isHeader:!1},u=M(o),p=e.cellStylesCallback?e.cellStylesCallback(o):{};n=y(r(r(r(r({},e.cellStyles),u),n),p),{freeCSS:r(r(r({},(A=e.cellStyles)==null?void 0:A.freeCSS),n.freeCSS),p.freeCSS),className:[C("Cell"),e.cellClassName,n.className].join(" ")}),delete n.orderIndex;let m=R[w=="td"?"TD":"TH"];h.push(a(m,r({},n),g))}),f.push(a(R.Row,{className:[C("Row"),C("BodyRow")].join(" "),children:h,onClick:c=>{e.onRowClick&&e.onRowClick(s.rowID,c)}},l))}),!i.length){let s=a(v,{padding:2,fontColor:"4.thin",textAlign:"center",borderTop:"1.thin",children:"\u30C6\u30FC\u30D6\u30EB\u304C\u3042\u308A\u307E\u305B\u3093"});e.noRecords&&(s=a(j,{children:e.noRecords})),f.push(a(R.Row,{className:[C("Row"),C("BodyRow"),C("DataNotFound")].join(" "),children:a(R.TD,{colSpan:e.colLength,className:C("Cell"),children:s})},"dataNotFound"))}return a(j,{children:f})},Core:t=>{let{val_status:e,set_status:i}=t,{searchKeyword:f,filter:s,order:l,paging:d}=e,h=[...e.rows],S=[...e.rows],c=[...e.rows],g=[...e.rows];if(f&&(S=h.filter(o=>(o.__sys4SearchKey||"").match(new RegExp(String(f).escapeRegExChar(),"i"))?1:0),c=[...S],g=[...S]),s.enabled)for(let o=0;o<e.colLength;o++){let u=s.column[o],p=s.current[o];u&&p&&p.length&&(c=c.filter(m=>!p.includes(m[o].data)),g=[...c])}l.enabled&&(l.current[1]=="ASC"?c=c.toASC(l.current[0]+"[orderIndex]"):c=c.toDESC(l.current[0]+"[orderIndex]"),g=[...c]);{let{currentPageIndex:o,rowLength:u}=d;g=[...g].splice((o-1)*u,u)}let w=x.__memoryID+"_"+e.tableID,n={rows:{total:h.length,page:g.length,filtered:c.length},val_status:y(r({},e),{paging:y(r({},e.paging),{pageLength:Math.ceil(c.length/e.paging.rowLength)})}),set_status:i};return Y.update({[w]:{getRowData:()=>{let o=[...h];return l.enabled&&(l.current[1]=="ASC"?o=o.toASC(l.current[0]+"[orderIndex]"):o=o.toDESC(l.current[0]+"[orderIndex]")),o.forEach(u=>{u.currentPage=!1,u.filtered=!1}),g.forEach(u=>{let{rowID:p}=u;o.find(m=>D.is.equal(m.rowID,p)).currentPage=!0}),c.forEach(u=>{let{rowID:p}=u;o.find(m=>D.is.equal(m.rowID,p)).filtered=!0}),o}}}),W(()=>{E.release(e.tableID,n)}),a(v,{className:C("TableBase"),children:a(R.Table,{className:C("Table"),children:_(R.Body,{children:[a(x.Header,{val_status:e,set_status:i,KeywordFilterRows:S}),a(x.Body,{val_status:e,set_status:i,PageRows:g})]})})},f)},Propagations:{},DataLeveler:t=>{var e,i;return t=r({},t),t.filter=(e=t.filter)!=null?e:!1,t.filter=Array.from({length:t.colLength}).map((f,s)=>{var l;return D.is.boolean(t.filter)?t.filter:(l=t.filter[s])!=null?l:!1}),t.order=(i=t.order)!=null?i:!0,t.orderPriority=t.orderPriority||"ASC",t.order=Array.from({length:t.colLength}).map((f,s)=>{var l;return D.is.boolean(t.order)?t.order:(l=t.order[s])!=null?l:!0}),t=r({checker:!1,searchKeyword:"",filter:!1,order:!0,defaultOrder:[0,"ASC"]},t),t.rows.forEach((f,s)=>{f.rowID=f.rowID||s;let l=[];f.forEach((d,h)=>{let{data:S,children:c,orderIndex:g}=d;d.orderIndex=D.is.exist(g)?String(g):String(S),d.children=c||String(S),l.push(String(d.data))}),f.__sys4SearchKey=l.join("/")}),a(x.StateManager,r({},t))},StateManager:t=>{let{colLength:e,checker:i=!1,searchKeyword:f="",filter:s,order:l,orderPriority:d="ASC",defaultOrder:h=[0,d],pageRowLength:S=30}=t,[c]=Z(Q()),g={tableID:t.tableID||c,componentId:c,colLength:e,checker:i,searchKeyword:f,filter:{enabled:s!==!1,column:s,current:Array.from({length:e},()=>[])},order:{enabled:l!==!1,column:l,current:h,priority:t.orderPriority},paging:{rowLength:S,pageLength:Math.ceil(t.rows.length/S),currentPageIndex:1},head:t.head,rows:t.rows,noRecords:t.noRecords,cellStyles:t.cellStyles||{},cellClassName:t.cellClassName||"",cellStylesCallback:t.cellStylesCallback,onRowClick:t.onRowClick,onOrderChanged:t.onOrderChanged},[w,n]=Z(g);const o=()=>{const u=new WeakSet;return(p,m)=>{if(typeof m=="object"&&m!==null){if(u.has(m))return"[Circular Reference]";if(p=="children")return"[React Element]";u.add(m)}return m}};return W(()=>{n(u=>y(r({},u),{rows:g.rows}))},[D.Stringify(g.rows,o())]),W(()=>{n(u=>y(r({},u),{head:g.head}))},[D.Stringify(g.head,o())]),a(x.Core,{val_status:w,set_status:n})}},ge={__memoryID:x.__memoryID,getRowData:t=>{let e=Y.get(x.__memoryID+"_"+t);if(e!=null&&e.getRowData)return e.getRowData()}},V={SearchInput:t=>{let e=E.catch(t.tableID);if(!e)return null;let{val_status:i,set_status:f}=e;return a(I.TextField,{label:"\u691C\u7D22...",clearButton:!0,padding:"2/3",paddingRight:3,rightIcon:a(I.RightIcon,{ssSphere:2,fontColor:"5.translucent",right:"2/3",children:a(F.Search,{})}),value:i.searchKeyword,onUpdateValidValue:s=>{t.onChange(s),D.interval.once(()=>{f(l=>y(r({},l),{paging:y(r({},l.paging),{currentPageIndex:1}),filter:y(r({},l.filter),{current:Array.from({length:l.colLength},()=>[])}),searchKeyword:s}))},200,"InputSearchTime")}})},Info:t=>{let e=E.catch(t.tableID);if(!e)return null;let{val_status:i,set_status:f}=e,s=e.rows.filtered.ratio(e.rows.total)||0;return _(K,{verticalAlign:"baseline",gap:"1/2",fontSize:"1.mini",fontColor:"3.blur",children:[a(le,{fontSize:"4.thirdTitle",fontColor:"theme",children:e.rows.filtered.toLocaleString()}),"/ ",e.rows.total.toLocaleString(),"\u4EF6 (",s,"%)"]})},Paging:t=>{let e=E.catch(t.tableID);if(!e)return null;let{val_status:i,set_status:f}=e,s=[];for(let d=0;d<i.paging.pageLength;d++)s.push({value:d+1,label:(d+1).toString()});const l=d=>{let h=Math.min(Math.max(1,d),i.paging.pageLength),S=r({},i);S.paging.currentPageIndex=h,f(c=>y(r({},c),{paging:y(r({},c.paging),{currentPageIndex:h})}))};return a(I.Select,{emptySelect:!1,padding:["1/3","2/3"],override:"force",gap:0,leftIcon:a(I.LeftIcon,{freeCSS:{left:2,pointerEvents:"all"},children:a(N.Sub.S,{color:"cloud",fontColor:"4.thin",ssSquare:2.5,unitWidth:2,onClick:()=>{if(i.paging.currentPageIndex==1){l(i.paging.pageLength);return}l(i.paging.currentPageIndex-1)},children:a(F.ChevronLeft,{})})}),rightIcon:a(I.RightIcon,{freeCSS:{right:2,pointerEvents:"all"},children:a(N.Sub.S,{color:"cloud",fontColor:"4.thin",ssSquare:2.5,unitWidth:2,onClick:()=>{if(i.paging.currentPageIndex==i.paging.pageLength){l(1);return}l(i.paging.currentPageIndex+1)},children:a(F.ChevronRight,{})})}),options:s.map(d=>({value:d.value,label:_(z.Left,{gap:"1/3",verticalAlign:"baseline",children:[d.label,_(ne,{fontColor:"4.thin",fontSize:"0.xs",children:["/ ",i.paging.pageLength]})]})})),value:i.paging.currentPageIndex,onUpdateValidValue:d=>{l(d)}})},RowLength:t=>{let e=E.catch(t.tableID);if(!e)return null;let{val_status:i,set_status:f}=e,s=i.paging.rowLength,l=0,d=t.lengthSelect.map(h=>(l|=+(h==s),{value:h,label:h.toString()}));return l||d.push({value:s,label:s.toString()}),a(z.Center,{gap:"1/2",children:a(I.Select,{emptySelect:!1,override:"force",padding:"1/3",paddingLeft:3,paddingRight:2,SelectorStyles:{freeCSS:{minWidth:12*9}},SelectorPosition:4,value:i.paging.rowLength,leftIcon:a(I.LeftIcon,{fontSize:"0.xs",fontColor:"4.thin",freeCSS:{left:6},children:"\u8868\u793A"}),rightIcon:a(I.RightIcon,{fontSize:"0.xs",fontColor:"4.thin",freeCSS:{right:6},children:"\u4EF6"}),options:d.toASC("value"),onUpdateValidValue:h=>{f(S=>y(r({},S),{paging:{rowLength:Number(h),currentPageIndex:1,pageLength:Math.ceil(e.rows.filtered/Number(h))}}))}})})}},fe=t=>a(ue,y(r({},t),{type:"data",JSXChildren:x.DataLeveler})),k=fe;k.__memoryID=x.__memoryID,k.getRowData=ge.getRowData,k.Info=V.Info,k.Paging=V.Paging,k.RowLength=V.RowLength,k.SearchInput=V.SearchInput;export{k as Data,k as default};
@@ -1 +1 @@
1
- import{b as e,c}from"../../chunk-C5N2D3ZX.js";import{Fragment as H,jsx as a,jsxs as g}from"react/jsx-runtime";import p from"./Parts";import D from"./Wrapper";import{DefaultCellSystemAdjustingStyles as N}from"./cellStyling";import{TableClasses as y}from"../../@styles/componentClasses";const R={HeadRow:l=>{let{cellStyles:t={},cellClassName:n="",cellStylesCallback:S,colLength:u,head:f,rows:w}=l;if(!f)return null;let i=[];return f.forEach((s,r)=>{let C=p[s.type=="th"?"TH":"TD"],T={top:!0,bottom:!w.length,left:r==0,right:r==u-1,rowIndex:0,colIndex:r,isBody:!1,isHeader:!0},o=N(T),m=S?S(T):{},b=c(e(e(e(e({},t),o),m),s),{freeCSS:e(e(e({},t.freeCSS),m.freeCSS),s.freeCSS),className:[y("Cell"),n,s.className].join(" ")});i.push(a(C,e({},b),r))}),a(p.Row,{className:[y("Row"),y("HeadRow")].join(" "),children:i})},BodyRows:l=>{let{cellStyles:t={},cellClassName:n="",cellStylesCallback:S,head:u,rows:f,colLength:w,onRowClick:i}=l,s=[];return f.forEach((r,C)=>{let T=[];r.forEach((o,m)=>{let b=p[o.type=="th"?"TH":"TD"],h={top:C==0&&!u,bottom:C==f.length-1,left:m==0,right:m==w-1,rowIndex:C,colIndex:m,isBody:!0,isHeader:!1},k=N(h),d=S?S(h):{};T.push(a(b,c(e(e(e(e({},t),k),o),d),{freeCSS:e(e(e({},t.freeCSS),d.freeCSS),o.freeCSS),className:[y("Cell"),n,o.className].join(" ")}),m))}),s.push(a(p.Row,{className:[y("Row"),y("BodyRow")].join(" "),children:T,onClick:o=>{i&&i(r.rowID,o)}},C))}),a(H,{children:s})},Normal:l=>(l=e({},l),l.rows=l.rows.map((t,n)=>(t.rowID=t.rowID||n,t)),a(p.Table,{className:y("Table"),children:g(p.Body,{children:[a(R.HeadRow,e({},l)),a(R.BodyRows,e({},l))]})}))},B=l=>a(D,c(e({type:"normal"},l),{JSXChildren:R.Normal}));export{B as Normal,B as default};
1
+ import{b as e,c}from"../../chunk-C5N2D3ZX.js";import{Fragment as D,jsx as a,jsxs as g}from"react/jsx-runtime";import n from"./Parts";import H from"./Wrapper";import{DefaultCellSystemAdjustingStyles as N}from"./cellStyling";import{TableClasses as y}from"../../@styles/componentClasses";const R={HeadRow:l=>{let{cellStyles:t={},cellClassName:p="",cellStylesCallback:S,colLength:u,head:f,rows:w}=l;if(!f)return null;let i=[];return f.forEach((s,r)=>{let C=n[s.type=="th"?"TH":"TD"],T={top:!0,bottom:!w.length,left:r==0,right:r==u-1,rowIndex:0,colIndex:r,isBody:!1,isHeader:!0},o=N(T),m=S?S(T):{},b=c(e(e(e(e({},t),o),m),s),{freeCSS:e(e(e({},t.freeCSS),m.freeCSS),s.freeCSS),className:[y("Cell"),p,s.className].join(" ")});i.push(a(C,e({},b),r))}),a(n.Row,{className:[y("Row"),y("HeadRow")].join(" "),children:i})},BodyRows:l=>{let{cellStyles:t={},cellClassName:p="",cellStylesCallback:S,head:u,rows:f,colLength:w,onRowClick:i}=l,s=[];return f.forEach((r,C)=>{let T=[];r.forEach((o,m)=>{let b=n[o.type=="th"?"TH":"TD"],h={top:C==0&&!u,bottom:C==f.length-1,left:m==0,right:m==w-1,rowIndex:C,colIndex:m,isBody:!0,isHeader:!1},B=N(h),d=S?S(h):{};T.push(a(b,c(e(e(e(e({},t),B),o),d),{freeCSS:e(e(e({},t.freeCSS),d.freeCSS),o.freeCSS),className:[y("Cell"),p,o.className].join(" ")}),m))}),s.push(a(n.Row,{className:[y("Row"),y("BodyRow")].join(" "),children:T,onClick:o=>{i&&i(r.rowID,o)}},C))}),a(D,{children:s})},Normal:l=>(l=e({},l),l.rows=l.rows.map((t,p)=>(t.rowID=t.rowID||p,t)),a(n.Table,{className:y("Table"),children:g(n.Body,{children:[a(R.HeadRow,e({},l)),a(R.BodyRows,e({},l))]})}))},k=l=>a(H,c(e({type:"normal"},l),{JSXChildren:R.Normal}));export{k as Normal,k as default};
package/dist/index.d.ts CHANGED
@@ -52,6 +52,7 @@ declare const amotify: {
52
52
  FlexBr: React.FC<atoms.Box.DefaultInput>;
53
53
  FlexMargin: React.FC<atoms.Box.DefaultInput>;
54
54
  Column: React.FC<atoms.Box.DefaultInput>;
55
+ CacheRender: atoms.CacheRender.Component<import("jmini").KeyValueDict<any>>;
55
56
  Box: <T extends React.ElementType<any, keyof React.JSX.IntrinsicElements> = "div">(p: atoms.Box.Input<T>) => import("react/jsx-runtime").JSX.Element | null;
56
57
  FAI: atoms.FAI.Methods;
57
58
  Img: React.FC<atoms.Img.Input>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "amotify",
3
- "version": "0.2.249",
3
+ "version": "0.2.251",
4
4
  "description": "UI Component for React,NextJS,esbuild",
5
5
  "scripts": {
6
6
  "start": "run-p clean build:*",