amotify 0.2.234 → 0.2.235

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.
@@ -14,8 +14,8 @@ expressServer
14
14
  .get( "*",( req,res ) => {
15
15
  res.render( 'layout.ejs' )
16
16
  } )
17
- expressServer.listen( 8000,() => {
18
- let port = 8000
17
+ expressServer.listen( 8100,() => {
18
+ let port = 8100
19
19
  let localIP = Server.getLocalIP( os )
20
20
 
21
21
  let local_ip = `http://${ localIP }:${ port }`,
@@ -1,5 +1,6 @@
1
1
  /// <reference types="next" />
2
2
  /// <reference types="next/image-types/global" />
3
+ import "./.next/dev/types/routes.d.ts";
3
4
 
4
5
  // NOTE: This file should not be edited
5
6
  // see https://nextjs.org/docs/app/api-reference/config/typescript for more information.
@@ -3,7 +3,7 @@ import {
3
3
  } from 'next'
4
4
  const nextConfig: NextConfig = {
5
5
  reactStrictMode: false,
6
- skipMiddlewareUrlNormalize: true,
6
+ skipProxyUrlNormalize: true,
7
7
  experimental: {
8
8
  webpackMemoryOptimizations: true,
9
9
  },
@@ -1,25 +1,24 @@
1
1
  {
2
- "name": "rakumeo.app",
2
+ "name": "demo.app",
3
3
  "version": "1.0.0",
4
4
  "private": true,
5
5
  "scripts": {
6
- "start": "run-p clean dev:*",
6
+ "start": "run-p clean dev:next",
7
7
  "clean": "rimraf .next serverDist",
8
- "dev:next": "NODE_OPTIONS=\"--max-old-space-size=8192\" NEXT_TURBOPACK_TRACING=1 next dev --turbopack",
9
- "dev:server": "nodemon"
8
+ "dev:next": "NODE_OPTIONS=\"--max-old-space-size=8192\" NEXT_TURBOPACK_TRACING=1 next dev --turbopack -p 8000"
10
9
  },
11
10
  "dependencies": {
12
11
  "cross-env": "^7.0.3",
13
12
  "dotenv": "^16.4.5",
14
13
  "express": "^4.19.2",
15
14
  "jmini": "^0.0.102",
16
- "next": "^15.3.4",
15
+ "next": "^16.1.1",
17
16
  "node-cron": "^4.1.1",
18
17
  "nodemon": "^3.1.4",
19
18
  "npm-run-all": "^4.1.5",
20
19
  "os": "^0.1.2",
21
- "react": "^18",
22
- "react-dom": "^18.3.1",
20
+ "react": "^19.2.3",
21
+ "react-dom": "^19.2.3",
23
22
  "rimraf": "^6.0.1",
24
23
  "sass": "^1.77.8",
25
24
  "ts-loader": "^9.5.1",
@@ -29,10 +28,10 @@
29
28
  "devDependencies": {
30
29
  "@types/express": "^4.17.21",
31
30
  "@types/node": "^20",
32
- "@types/react": "^18",
33
- "@types/react-dom": "^18",
31
+ "@types/react": "^19.2.3",
32
+ "react-dom": "^19.2.3",
34
33
  "eslint": "^8",
35
34
  "eslint-config-next": "14.2.5",
36
35
  "typescript": "^5"
37
36
  }
38
- }
37
+ }
@@ -34,7 +34,41 @@ declare namespace ButtonTypes {
34
34
  type SizeMethods<I> = SizeMethods.Component<I> & SizeMethods.FNs<I>;
35
35
  }
36
36
  declare namespace Button {
37
+ namespace OnFormSubmit {
38
+ type Input = [
39
+ string,
40
+ Callback<any>
41
+ ] | [
42
+ string,
43
+ Callback<any>,
44
+ Options
45
+ ];
46
+ type Callback<T = KeyValueDict> = {
47
+ (args: CallbackParams<T>): void;
48
+ };
49
+ type CallbackParams<T = KeyValueDict> = {
50
+ body: T;
51
+ isValid: boolean;
52
+ /**
53
+ * ⚠️ Warning: Be careful when using this function to avoid deadlocks.
54
+ * after serialLock function is called, the form submission will be locked until release function is called.
55
+ * */
56
+ serialLock(): {
57
+ release(): void;
58
+ };
59
+ };
60
+ type Options = {
61
+ validOnly?: boolean;
62
+ submitableKey?: ButtonTypes.delegateClickEventProps | ButtonTypes.delegateClickEventProps[];
63
+ /**
64
+ * releaseOnFinish
65
+ * [default] true
66
+ * */
67
+ releaseOnFinish?: boolean;
68
+ };
69
+ }
37
70
  type Input<C = ButtonTypes.Colors> = ButtonTypes.Input<C> & {
71
+ onFormSubmit?: OnFormSubmit.Input;
38
72
  submitOption?: {
39
73
  formName: string;
40
74
  acceptInvalidForm?: boolean;
package/dist/fn/Button.js CHANGED
@@ -1 +1 @@
1
- import{b as s,c as i,d as B,e as z}from"../chunk-C5N2D3ZX.js";import{jsx as p}from"react/jsx-runtime";import L,{UUID as R}from"jmini";import{pageRouter as k,ReadStyleSet as P}from"../@utils";import{Input as E}from".";import{Box as I}from"../atoms";import{ButtonClasses as c}from"../@styles/componentClasses";const x={Size:(l,t,o,n)=>{let e={fontSize:"inherit"};return o=o||"R",t=="plain"?{}:(t=="link"?o=="xsmall"?e.fontSize="0.xs":o=="small"?e.fontSize="1.mini":o=="regular"||o=="large"&&(e.fontSize="3.paragraph"):e=s({borderRadius:"2.tone.secondary",transition:"middle",position:"relative",textAlign:"center"},e),o=="xsmall"?e=i(s({},e),{padding:["1/3","2/3"],fontSize:"0.xs",borderRadius:"3.tone.tertiary"}):o=="small"?e=i(s({},e),{padding:["1/2","3/4"],fontSize:"1.mini",borderRadius:"3.tone.tertiary"}):o=="regular"?e.padding=["3/4",1]:o=="large"&&(e.padding=[1,2],e.fontSize="3.paragraph",e.isSemiBoldFont=!0),e)},Tone:(l,t,o,n)=>{let e={display:"inlineBlock",fontWeight:"inherit",fontColor:"inherit",border:"unset"};return t=="plain"||(t=="link"?(e.fontColor="theme",e.textAlign="left",e.backgroundColor="trans"):t=="normal"?e=i(s({},e),{backgroundColor:"trans"}):t=="border"?e=i(s({},e),{backgroundColor:"layer.1",border:"2.normal",borderStyle:"solid",boxShadow:"0.min"}):t=="prime"?(e=i(s({},e),{isSemiBoldFont:!0,fontColor:"white",backgroundColor:n,boxShadow:"0.normal",ssEffectsOnActive:["shrink","push","ripple.white"]}),n=="white"&&(e=i(s({},e),{fontColor:"theme",ssEffectsOnActive:["shrink","push","ripple.cloud"]}))):t=="sub"?e=i(s({},e),{fontColor:n,ssEffectsOnActive:["shrink","ripple.cloud"]}):t=="clear"?e=i(s({},e),{fontColor:n,backgroundColor:"trans",ssEffectsOnActive:["shrink","ripple.cloud"]}):t=="fillToBorder"?e=i(s({},e),{boxShadow:"0.normal",border:"2.normal",borderWidth:2,borderColor:n,fontColor:n,backgroundColor:n}):t=="borderToFill"&&(e=i(s({},e),{fontColor:n,boxShadow:"0.normal",border:"2.normal",borderWidth:2,borderColor:n,backgroundColor:n})),n=="cloud"&&(e.fontColor="2.normal"),t!="link"&&(e=s({position:"relative",ssEffectsOnActive:["shrink","push"]},e))),e}},F=l=>{let t=P(s({isLocked:!1,isActive:!1,isActiveStyles:{},isActiveClassName:"",tabIndex:0,className:"",color:"theme",tone:"border","aria-label":R()},l)),o=t.seed;{let{isLocked:y=!1,isActive:m=!1,isActiveStyles:h={},isActiveClassName:C="",tone:r="border",size:u="regular",color:a="theme",className:T=""}=t;t=s(s(s({},x.Size(l.seed,r,u,a)),x.Tone(l.seed,r,u,a)),t),t.className=[T,c("Wrap"),c("isNeutral_"+!m),c("isLocked_"+y),c("Tone_"+r),c("Color_"+a),c("Tone_"+r+"_Color_"+a)].join(" "),m&&(t=s(s({className:[t.className,C].join(" ")},t),h))}if(o=="button"){let n=t,{isLocked:y,isActive:m,isActiveClassName:h,isActiveStyles:C,submitOption:r,onClick:u}=n,a=B(n,["isLocked","isActive","isActiveClassName","isActiveStyles","submitOption","onClick"]);return r&&(r=s({acceptInvalidForm:!1,submitDelegationKey:"auxEnter"},r),a=i(s({},a),{"data-form-submit-button":r.formName,"data-sdfike":L.flatArray(r.submitDelegationKey).join(",")})),p(I,i(s({htmlTag:"button",fontHeight:"inherit"},a),{onClick:T=>z(void 0,null,function*(){if(y||(u&&u(T),!r))return;let S=yield E.CollectForm(r.formName);!S.valid&&!r.acceptInvalidForm||r.callback(S.data,S.valid)})}))}else if(o=="label"){let e=t,{isLocked:y,isActive:m,isActiveClassName:h,isActiveStyles:C,onClick:r}=e,u=B(e,["isLocked","isActive","isActiveClassName","isActiveStyles","onClick"]);return p(I,i(s({htmlTag:"label"},u),{onClick:a=>{y||r&&r(a)}}))}else if(o=="anchor"){let M=t,{isLocked:y,isActive:m,isActiveClassName:h,isActiveStyles:C,onClick:r,href:u="",newTab:a,sync:T,shiftQueryParams:S}=M,A=B(M,["isLocked","isActive","isActiveClassName","isActiveStyles","onClick","href","newTab","sync","shiftQueryParams"]);return p(I,i(s({htmlTag:"button"},A),{onClick:f=>{if(y)return;if(r)return r(f);let v=f.ctrlKey||f.metaKey,N=a||!!v,b=u;if(S&&(b+=location.search),T){k.pushSync(b);return}k.push(b,!!N)}}))}return null},d=function(l,t){const o=e=>p(F,s({seed:l,tone:t,size:"regular"},e)),n=o;return n.Plain=e=>p(o,s({size:"plain",tone:t},e)),n.XS=e=>p(o,s({size:"xsmall",tone:t},e)),n.S=e=>p(o,s({size:"small",tone:t},e)),n.R=e=>p(o,s({size:"regular",tone:t},e)),n.L=e=>p(o,s({size:"large",tone:t},e)),n},g=function(l){const o=n=>p(F,s({seed:l,tone:"prime",size:"regular"},n));return o.Plain=d(l,"plain"),o.Link=d(l,"link"),o.Normal=d(l,"normal"),o.Border=d(l,"border"),o.Prime=d(l,"prime"),o.Sub=d(l,"sub"),o.Clear=d(l,"clear"),o.FillToBorder=d(l,"fillToBorder"),o.BorderToFill=d(l,"borderToFill"),o},w=g("button"),H=g("label"),K=g("anchor");export{K as Anchor,w as Button,H as Label};
1
+ import{b as s,c as i,d as I,e as F}from"../chunk-C5N2D3ZX.js";import{jsx as u}from"react/jsx-runtime";import M,{useStore as A,UUID as V}from"jmini";import{pageRouter as R,ReadStyleSet as D}from"../@utils";import{Input as O}from".";import{Box as N}from"../atoms";import{ButtonClasses as C}from"../@styles/componentClasses";const w={Size:(a,t,o,n)=>{let e={fontSize:"inherit"};return o=o||"R",t=="plain"?{}:(t=="link"?o=="xsmall"?e.fontSize="0.xs":o=="small"?e.fontSize="1.mini":o=="regular"||o=="large"&&(e.fontSize="3.paragraph"):e=s({borderRadius:"2.tone.secondary",transition:"middle",position:"relative",textAlign:"center"},e),o=="xsmall"?e=i(s({},e),{padding:["1/3","2/3"],fontSize:"0.xs",borderRadius:"3.tone.tertiary"}):o=="small"?e=i(s({},e),{padding:["1/2","3/4"],fontSize:"1.mini",borderRadius:"3.tone.tertiary"}):o=="regular"?e.padding=["3/4",1]:o=="large"&&(e.padding=[1,2],e.fontSize="3.paragraph",e.isSemiBoldFont=!0),e)},Tone:(a,t,o,n)=>{let e={display:"inlineBlock",fontWeight:"inherit",fontColor:"inherit",border:"unset"};return t=="plain"||(t=="link"?(e.fontColor="theme",e.textAlign="left",e.backgroundColor="trans"):t=="normal"?e=i(s({},e),{backgroundColor:"trans"}):t=="border"?e=i(s({},e),{backgroundColor:"layer.1",border:"2.normal",borderStyle:"solid",boxShadow:"0.min"}):t=="prime"?(e=i(s({},e),{isSemiBoldFont:!0,fontColor:"white",backgroundColor:n,boxShadow:"0.normal",ssEffectsOnActive:["shrink","push","ripple.white"]}),n=="white"&&(e=i(s({},e),{fontColor:"theme",ssEffectsOnActive:["shrink","push","ripple.cloud"]}))):t=="sub"?e=i(s({},e),{fontColor:n,ssEffectsOnActive:["shrink","ripple.cloud"]}):t=="clear"?e=i(s({},e),{fontColor:n,backgroundColor:"trans",ssEffectsOnActive:["shrink","ripple.cloud"]}):t=="fillToBorder"?e=i(s({},e),{boxShadow:"0.normal",border:"2.normal",borderWidth:2,borderColor:n,fontColor:n,backgroundColor:n}):t=="borderToFill"&&(e=i(s({},e),{fontColor:n,boxShadow:"0.normal",border:"2.normal",borderWidth:2,borderColor:n,backgroundColor:n})),n=="cloud"&&(e.fontColor="2.normal"),t!="link"&&(e=s({position:"relative",ssEffectsOnActive:["shrink","push"]},e))),e}},K=a=>{var e;let t=D(s({isLocked:!1,isActive:!1,isActiveStyles:{},isActiveClassName:"",tabIndex:0,className:"",color:"theme",tone:"border","aria-label":V()},a)),o=t.seed;{let{isLocked:m=!1,isActive:h=!1,isActiveStyles:B={},isActiveClassName:g="",tone:r="border",size:l="regular",color:p="theme",className:d=""}=t;t=s(s(s({},w.Size(a.seed,r,l,p)),w.Tone(a.seed,r,l,p)),t),t.className=[d,C("Wrap"),C("isNeutral_"+!h),C("isLocked_"+m),C("Tone_"+r),C("Color_"+p),C("Tone_"+r+"_Color_"+p)].join(" "),h&&(t=s(s({className:[t.className,g].join(" ")},t),B))}if(o=="button"){let n=t,{isLocked:m,isActive:h,isActiveClassName:B,isActiveStyles:g,submitOption:r,onFormSubmit:l,onClick:p}=n,d=I(n,["isLocked","isActive","isActiveClassName","isActiveStyles","submitOption","onFormSubmit","onClick"]);return l!=null&&l[1]&&(d=i(s({},d),{"data-form-submit-button":l[0],"data-sdfike":M.flatArray(((e=l[2])==null?void 0:e.submitableKey)||"auxEnter").join(",")})),r&&(r=s({acceptInvalidForm:!1,submitDelegationKey:"auxEnter"},r),d=i(s({},d),{"data-form-submit-button":r.formName,"data-sdfike":M.flatArray(r.submitDelegationKey).join(",")})),u(N,i(s({htmlTag:"button",fontHeight:"inherit"},d),{onClick:k=>{m||(p&&p(k),M.scope(()=>F(void 0,null,function*(){if(!(l!=null&&l[1]))return;l[2]=s({validOnly:!0,submitableKey:"auxEnter",releaseOnFinish:!0},l==null?void 0:l[2]);let[c,T,f]=l,S="prevent-form-submit-"+c,b=A.get(S),x=()=>A.delete(S);const z=()=>(A.set({[S]:!0}),{release:x});if(b)return f.validOnly?void 0:T({body:{},isValid:!1,serialLock:z});z();let v=yield O.CollectForm(c);x(),!(!v.isValid&&f.validOnly)&&(yield T({body:v.data,isValid:v.isValid,serialLock:z}),f.releaseOnFinish&&x())})),M.scope(()=>F(void 0,null,function*(){if(!r)return;let c=yield O.CollectForm(r.formName);!c.isValid&&!r.acceptInvalidForm||r.callback(c.data,c.isValid)})))}}))}else if(o=="label"){let P=t,{isLocked:m,isActive:h,isActiveClassName:B,isActiveStyles:g,onClick:r}=P,l=I(P,["isLocked","isActive","isActiveClassName","isActiveStyles","onClick"]);return u(N,i(s({htmlTag:"label"},l),{onClick:p=>{m||r&&r(p)}}))}else if(o=="anchor"){let E=t,{isLocked:m,isActive:h,isActiveClassName:B,isActiveStyles:g,onClick:r,href:l="",newTab:p,sync:d,shiftQueryParams:k}=E,c=I(E,["isLocked","isActive","isActiveClassName","isActiveStyles","onClick","href","newTab","sync","shiftQueryParams"]);return u(N,i(s({htmlTag:"button"},c),{onClick:T=>{if(m)return;if(r)return r(T);let f=T.ctrlKey||T.metaKey,S=p||!!f,b=l;if(k&&(b+=location.search),d){R.pushSync(b);return}R.push(b,!!S)}}))}return null},y=function(a,t){const o=e=>u(K,s({seed:a,tone:t,size:"regular"},e)),n=o;return n.Plain=e=>u(o,s({size:"plain",tone:t},e)),n.XS=e=>u(o,s({size:"xsmall",tone:t},e)),n.S=e=>u(o,s({size:"small",tone:t},e)),n.R=e=>u(o,s({size:"regular",tone:t},e)),n.L=e=>u(o,s({size:"large",tone:t},e)),n},L=function(a){const o=n=>u(K,s({seed:a,tone:"prime",size:"regular"},n));return o.Plain=y(a,"plain"),o.Link=y(a,"link"),o.Normal=y(a,"normal"),o.Border=y(a,"border"),o.Prime=y(a,"prime"),o.Sub=y(a,"sub"),o.Clear=y(a,"clear"),o.FillToBorder=y(a,"fillToBorder"),o.BorderToFill=y(a,"borderToFill"),o},H=L("button"),W=L("label"),_=L("anchor");export{_ as Anchor,H as Button,W as Label};
@@ -4,7 +4,7 @@ declare namespace CollectForm {
4
4
  (formName: string): Promise<Output>;
5
5
  };
6
6
  type Output = {
7
- valid: boolean;
7
+ isValid: boolean;
8
8
  data: KeyValueDict;
9
9
  };
10
10
  }
@@ -1 +1 @@
1
- import{e as l}from"../../chunk-C5N2D3ZX.js";import u,{useStore as t}from"jmini";const p=o=>l(void 0,null,function*(){let i={},n="form-process-"+o;if(t.get(n))return console.log("[CollectForm] already processing..."),{valid:!1,data:{}};t.set({[n]:!0});let s=1;return yield u.pending(()=>{},100),yield u.scope(()=>l(void 0,null,function*(){let m=document.activeElement;m&&m.blur();let c=t.get(["form-data",o].join("-"));if(c){for(let[r,a]of Object.entries(c)){if(!a)continue;let e=t.get(a.componentId);e&&e.Refresh&&(yield e.Refresh())}{let r=t.get(["form-data",o].join("-"));if(!r)return;for(let[a,e]of Object.entries(r))e&&(s&=Number(e.validation),i[a]=e.value)}}})),t.set({[n]:!1}),{valid:!!s,data:i}});export{p as CollectForm,p as default};
1
+ import{e as i}from"../../chunk-C5N2D3ZX.js";import c,{useStore as t}from"jmini";const p=o=>i(void 0,null,function*(){let l={},r="form-process-"+o;if(t.get(r))return console.log("[CollectForm] already processing..."),{isValid:!1,data:{}};t.set({[r]:!0});let s=1;return yield c.pending(()=>{},200),yield c.scope(()=>i(void 0,null,function*(){let m=t.get(["form-data",o].join("-"));if(m){for(let[n,a]of Object.entries(m)){if(!a)continue;let e=t.get(a.componentId);e&&e.Refresh&&(yield e.Refresh())}{let n=t.get(["form-data",o].join("-"));if(!n)return;for(let[a,e]of Object.entries(n))e&&(s&=Number(e.validation),l[a]=e.value)}}})),t.set({[r]:!1}),{isValid:!!s,data:l}});export{p as CollectForm,p as default};
@@ -1 +1 @@
1
- import{b as r,c as f,d as ee,e as j}from"../../chunk-C5N2D3ZX.js";import{Fragment as ie,jsx as a,jsxs as m}from"react/jsx-runtime";import{useState as H,useEffect as te}from"react";import q,{UUID as v,useStore as le}from"jmini";import{$$fromRoot as k,ExtractStyles as pe}from"../../@utils";import{Box as y,FAI as R,Flex as L,Column as ae}from"../../atoms";import{Row as ue}from"../../mols";import{Button as W}from"../Button";import K from"../Snackbar";import{OptionalInputWrapper as me,BoxWrapper as ce,CoreEffects as ne,DefaultBoxishStyles as de}from"./core";import fe from"./TextField";import{InputFilerClasses as S}from"../../@styles/componentClasses";import{faCloudArrowUp as ge}from"@fortawesome/free-solid-svg-icons/faCloudArrowUp";function ye(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 oe={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(oe.ListCell,f(r({},e),{index:u,val_file:n}),n.name));return l>0&&p.push(a(y,f(r({htmlTag:"label"},t.cellStyles),{className:[t.cellClassName,S("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:m(ue.Center,{padding:["1/3",0],children:[a(y,{isRounded:!0,className:S("AddIcon"),children:a(R,{icon:ge,className:S("Icon"),fontColor:"theme",fontSize:"4.thirdTitle",backgroundColor:"theme.opa.low",ssSphere:3,padding:"1/2"})}),m(y,{children:[m(y,{fontColor:"theme",fontSize:"2.normal",isSemiBoldFont:!0,children:["\u30D5\u30A1\u30A4\u30EB\u3092\u9078\u629E(",l,")"]}),a(y,{fontColor:"4.thin",fontSize:"0.xs",isSemiBoldFont:!0,children:"\u30D5\u30A1\u30A4\u30EB\u3092\u30C9\u30ED\u30C3\u30D7"})]})]})}),"AddButton")),a(ae,f(r({flexSizing:"auto"},pe(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,b]=H(!1),x=v(),X=u.rank(),[Z,M]=n.replace(/\s/,"").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"),te(()=>{d&&setTimeout(()=>{k("#"+x).focus()},100)},[d]),m(L,f(r({verticalAlign:"center",flexWrap:!1,gap:1,className:o.cellClassName},o.cellStyles),{children:[a(R.File,{fontSize:"4.thirdTitle",fontColor:"4.thin"}),m(y,{flexSizing:0,children:[a(y,{children:a(L,{verticalAlign:"center",gap:"2/3",flexWrap:!1,className:S("FileName"),children:d?a(ie,{children:m(ae,{flexSizing:0,gap:"1/2",children:[m(L,{gap:"2/3",verticalAlign:"center",children:[a(fe,{tone:"border",wrapStyles:{flexSizing:"auto"},restrict:"fileName",name:"name",required:!0,id:x,form:"form-"+x,enableFormSubmit:!0,value:Z,onKeyDown:F=>{let{key:w}=F;w=="Escape"&&b(!1)}}),m(y,{children:[". ",M]})]}),m(L,{gap:"2/3",horizontalAlign:"right",flexWrap:!1,children:[a(W.Sub,{padding:["2/3",1],onClick:()=>{b(!1)},children:"\u9589\u3058\u308B"}),a(W,{padding:["2/3",1],submitOption:{formName:"form-"+x,callback:F=>j(void 0,null,function*(){let{name:w}=F,T=[...l.dataValue],N=T[t],G=N.id;if(!N)return;let D=yield N.convert();D=String(D);let P=yield D.toBlob(c.type);if(!P)return;let $=new File([P],w+"."+M,{type:N.type});$.id=G,T[t]=$,p(O=>f(r({},O),{dataValue:T,eventType:"update",eventID:v()})),b(!1)})},children:"\u6C7A\u5B9A"})]})]})}):m(ie,{children:[n,!!o.isNameEditable&&a(W.Clear,{ssSphere:2.5,flexSizing:"none",fontColor:"4.thin",padding:"1/3",ssEffectsOnActive:"expand",color:"cloud",onClick:()=>{b(!0)},children:a(R.Pen,{})})]})})}),!d&&m(y,{fontSize:"1.mini",fontColor:"4.thin",flexSizing:0,children:[s,"\u30D5\u30A1\u30A4\u30EB / ",X,"B"]})]}),a(W.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:v()})))},children:a(R.X,{})})]}))}},Se=e=>{let Y=e,{tone:t,required:o,form:c,isNameEditable:l,useSystemOnly:p,accept:n="*",limit:u=1,checkValidationAtFirst:i,onChange:d,onValidate:b,onValidateDelay:x,onUpdateValue:X,onUpdateValidValue:Z,onUserAction:M,value:s=[],className:F,cellStyles:w,cellClassName:T,componentId:N,status_id:G,enableFormSubmit:D,freeCSS:P,wrapStyles:$}=Y,O=ee(Y,["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,A]=H(ne.DefaultStatus(e.componentId||"",s)),[Q,se]=H({ok:!1,notice:[]}),re={rootStates:e,val_status:B,set_status:A};te(()=>{le.set({["AddFiles-"+B.componentId]:I=>{A(V=>{let C=V.dataValue,_=[];for(var g=0;g<(I==null?void 0:I.length);g++){let h=I[g],{type:E,name:z}=h;if(g+1+C.length>u){K.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/)){K.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}_.push(h)}return f(r({},V),{dataValue:[...C,..._],eventType:"update",eventID:v()})})}})},[]),ne.CommonEffects({type:"file",states:e,val_status:B,set_status:A,val_validate:Q,set_validate:se,SystemValidation:ye});let U="";return n&&(n=="image"?U="image/png,image/jpeg":U=n),m(ce,{val_status:B,set_status:A,val_validate:Q,states:e,children:[a(y,f(r({htmlTag:"input",type:"file",className:S("Input"),"data-component-id":B.componentId,accept:U,multiple:u!=1,onChange:I=>j(void 0,null,function*(){d&&d(I);let V=I.target,C=V.files,_=[];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=v(),g+1+B.dataValue.length>u){K.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}_.push(h)}A(h=>f(r({},h),{dataValue:[...h.dataValue,..._],eventType:"update",eventID:v()})),V.value=""})},O),{opacity:"low",tabIndex:-1,value:""})),a(oe.List,r({},re))]})},J=e=>(e=f(r({limit:1,isNameEditable:!0,useSystemOnly:!1,tone:"border",value:[]},e),{override:"force",cellStyles:r(r({},de({tone:e.tone||"border"})),e.cellStyles)}),a(me,{componentId:e.componentId,children:Se,states:e}));J.fn={openDialog:e=>{let{multiple:t,accept:o}=e,c=v();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),q("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 x=n[d].clone();u.push(x)}e.onChange(u),q("#"+c).remove()},l.click()}},typeof window!="undefined"&&window.document&&q(document).addEvent({eventType:"dragover",callback:e=>{e.preventDefault(),k("."+S("AddButton")).addClass(S("Draggable"))},options:{passive:!1}}).addEvent({eventType:"drop",callback:e=>{e.preventDefault(),k("."+S("AddButton")).removeClass(S("Draggable"));let t=e.dataTransfer.files;if(t.length){let o=e.target;if(k(o).hasClass(S("AddButton"))){let{componentId:c}=o.dataset,l=le.get("AddFiles-"+c);l&&l(t)}}},options:{passive:!1}});export{J as Filer,J as default};
1
+ import{b as r,c as f,d as ee,e as j}from"../../chunk-C5N2D3ZX.js";import{Fragment as ie,jsx as a,jsxs as m}from"react/jsx-runtime";import{useState as H,useEffect as te}from"react";import q,{UUID as v,useStore as le}from"jmini";import{$$fromRoot as D,ExtractStyles as pe}from"../../@utils";import{Box as S,FAI as R,Flex as P,Column as ae}from"../../atoms";import{Row as ue}from"../../mols";import{Button as L}from"../Button";import K from"../Snackbar";import{OptionalInputWrapper as me,BoxWrapper as de,CoreEffects as ne,DefaultBoxishStyles as ce}from"./core";import fe from"./TextField";import{InputFilerClasses as y}from"../../@styles/componentClasses";import{faCloudArrowUp as ge}from"@fortawesome/free-solid-svg-icons/faCloudArrowUp";function Se(e){let{value:t,states:o}=e,{required:d}=o,l=[];return d&&!t.length&&l.push({type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"}),{ok:!l.filter(({type:p})=>p=="invalid").length,notice:l}}const oe={List:e=>{let{rootStates:t,val_status:o,set_status:d}=e;if(t.useSystemOnly)return null;let l=t.limit-(o.dataValue||[]).length,p=(o.dataValue||[]).map((n,u)=>a(oe.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)&&D("#"+t.id).click()},children:m(ue.Center,{padding:["1/3",0],children:[a(S,{isRounded:!0,className:y("AddIcon"),children:a(R,{icon:ge,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(ae,f(r({flexSizing:"auto"},pe(t)),{className:t.className,children:p}))},ListCell:e=>{let{index:t,rootStates:o,val_file:d,val_status:l,set_status:p}=e,{name:n,size:u,type:i}=d,[c,b]=H(!1),x=v(),X=u.rank(),[Z,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"),te(()=>{c&&setTimeout(()=>{D("#"+x).focus()},100)},[c]),m(P,f(r({verticalAlign:"center",flexWrap:!1,gap:1,className:o.cellClassName},o.cellStyles),{children:[a(R.File,{fontSize:"4.thirdTitle",fontColor:"4.thin"}),m(S,{flexSizing:0,children:[a(S,{children:a(P,{verticalAlign:"center",gap:"2/3",flexWrap:!1,className:y("FileName"),children:c?a(ie,{children:m(ae,{flexSizing:0,gap:"1/2",children:[m(P,{gap:"2/3",verticalAlign:"center",children:[a(fe,{tone:"border",wrapStyles:{flexSizing:"auto"},restrict:"fileName",name:"name",required:!0,id:x,form:"form-"+x,enableFormSubmit:!0,value:Z,onKeyDown:F=>{let{key:w}=F;w=="Escape"&&b(!1)}}),m(S,{children:[". ",W]})]}),m(P,{gap:"2/3",horizontalAlign:"right",flexWrap:!1,children:[a(L.Sub.S,{padding:["2/3",1],onClick:()=>{b(!1)},children:"\u9589\u3058\u308B"}),a(L.Prime.S,{padding:["2/3",1],onFormSubmit:["form-"+x,F=>j(void 0,null,function*(){let{name:w}=F.body,T=[...l.dataValue],A=T[t],G=A.id;if(!A)return;let k=yield A.convert();k=String(k);let M=yield k.toBlob(d.type);if(!M)return;let $=new File([M],w+"."+W,{type:A.type});$.id=G,T[t]=$,p(O=>f(r({},O),{dataValue:T,eventType:"update",eventID:v()})),b(!1)})],children:"\u6C7A\u5B9A"})]})]})}):m(ie,{children:[n,!!o.isNameEditable&&a(L.Clear,{ssSphere:2.5,flexSizing:"none",fontColor:"4.thin",padding:"1/3",ssEffectsOnActive:"expand",color:"cloud",onClick:()=>{b(!0)},children:a(R.Pen,{})})]})})}),!c&&m(S,{fontSize:"1.mini",fontColor:"4.thin",flexSizing:0,children:[s,"\u30D5\u30A1\u30A4\u30EB / ",X,"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:v()})))},children:a(R.X,{})})]}))}},ye=e=>{let Y=e,{tone:t,required:o,form:d,isNameEditable:l,useSystemOnly:p,accept:n="*",limit:u=1,checkValidationAtFirst:i,onChange:c,onValidate:b,onValidateDelay:x,onUpdateValue:X,onUpdateValidValue:Z,onUserAction:W,value:s=[],className:F,cellStyles:w,cellClassName:T,componentId:A,status_id:G,enableFormSubmit:k,freeCSS:M,wrapStyles:$}=Y,O=ee(Y,["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]=H(ne.DefaultStatus(e.componentId||"",s)),[Q,se]=H({ok:!1,notice:[]}),re={rootStates:e,val_status:B,set_status:N};te(()=>{le.set({["AddFiles-"+B.componentId]:I=>{N(_=>{let C=_.dataValue,V=[];for(var g=0;g<(I==null?void 0:I.length);g++){let h=I[g],{type:E,name:z}=h;if(g+1+C.length>u){K.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/)){K.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({},_),{dataValue:[...C,...V],eventType:"update",eventID:v()})})}})},[]),ne.CommonEffects({type:"file",states:e,val_status:B,set_status:N,val_validate:Q,set_validate:se,SystemValidation:Se});let U="";return n&&(n=="image"?U="image/png,image/jpeg":U=n),m(de,{val_status:B,set_status:N,val_validate:Q,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:I=>j(void 0,null,function*(){c&&c(I);let _=I.target,C=_.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=v(),g+1+B.dataValue.length>u){K.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:v()})),_.value=""})},O),{opacity:"low",tabIndex:-1,value:""})),a(oe.List,r({},re))]})},J=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(me,{componentId:e.componentId,children:ye,states:e}));J.fn={openDialog:e=>{let{multiple:t,accept:o}=e,d=v();const l=document.createElement("input");l.type="file",l.multiple=!!t,l.value="",l.id=d,o&&(o=="image"?l.accept="image/png,image/jpeg,image/jpg,image/webp":l.accept=o),q("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 c=0;c<n.length;c++){let x=n[c].clone();u.push(x)}e.onChange(u),q("#"+d).remove()},l.click()}},typeof window!="undefined"&&window.document&&q(document).addEvent({eventType:"dragover",callback:e=>{e.preventDefault(),D("."+y("AddButton")).addClass(y("Draggable"))},options:{passive:!1}}).addEvent({eventType:"drop",callback:e=>{e.preventDefault(),D("."+y("AddButton")).removeClass(y("Draggable"));let t=e.dataTransfer.files;if(t.length){let o=e.target;if(D(o).hasClass(y("AddButton"))){let{componentId:d}=o.dataset,l=le.get("AddFiles-"+d);l&&l(t)}}},options:{passive:!1}});export{J as Filer,J as default};
@@ -1 +1 @@
1
- import{b as n,c as d,e as _}from"../../chunk-C5N2D3ZX.js";import{jsx as m,jsxs as h}from"react/jsx-runtime";import{useState as x,useEffect as S}from"react";import p,{UUID as v,useStore as g}from"jmini";import{$$fromRoot as D}from"../../@utils";import{InputClasses as b}from"../../@styles/componentClasses";import{Box as B,Flex as E,FAI as C,Column as F}from"../../atoms";import{Row as k,Literal as N}from"../../mols";import{Button as w}from"../Button";import R from"../Tooltips";const et=t=>{let[i]=x(t.componentId||v());t=n({},t),t.states=d(n({enableFormSubmit:!0,status_id:v(),override:"never",form:"",id:v(),"aria-label":"Input-"+i},t.states),{componentId:i});let{children:a}=t;return m(a,n({},t.states))},at=t=>{let{children:i,val_status:a,val_validate:e,states:s}=t,{leftIcon:r,wrapStyles:o}=s;return s.checkValidationAtFirst||a.eventType=="init"&&(e.notice=[]),h(k.Center,d(n({position:"relative",verticalAlign:"unset",gap:0},o),{className:b("Wrapper"),"data-notice-uid":a.componentId,children:[m(T.Notice,{notice:e.notice,val_status:a}),s.leftIndicator,h(E,{position:"relative",flexSizing:"auto",children:[i,r,m(T.RightIcon,n({},t)),m(T.ClearButton,n({},t))]}),s.rightIndicator]}))},T={ClearButton:t=>!t.states.clearButton||!t.val_status.dataValue?null:m(w.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=>d(n({},i),{dataValue:"",formatValue:"",eventType:"update",eventID:v()}))},children:m(C.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,s="NoticeTimer-"+e,r="NoticeTimerClose-"+e,o="notice-tips-"+e;return S(()=>{p.interval.once(()=>{if(!i.length){R.close(o);return}R.open({tipsID:o,parent:`[data-notice-uid="${e}"]`,gravityPoint:24,padding:[1,0],closeAtParentBlur:!1,content:h(R.Body,{padding:["1/2","2/3"],fontSize:"1.mini",position:"relative",children:[m(B,{position:"absolute",unitHeight:1,unitWidth:1,right:1,backgroundColor:"dark",freeCSS:{zIndex:1,transform:"rotate(45deg)",top:-6}}),m(F,{backgroundColor:"inherit",gap:"1/3",position:"relative",freeCSS:{zIndex:2},children:i.map((y,I)=>{let{type:l,label:u}=y,f=l=="invalid"?C.Exclamation:l=="warn"?C.Exclamation:C.Check;return h(k.Left,{gap:0,borderRadius:"2.tone.secondary",children:[m(f,{flexCenter:!0,fontSize:"2.normal",fontColor:{invalid:"nega",warn:"warn",valid:"posi"}[l]}),m(N.Supplement,{fontSize:"0.xs",fontColor:"white",children:u})]},I+"-"+p.Stringify(y))})})]})})},350,s),p.interval.once(()=>{R.close(o)},6e3,r)},[i]),null}},A={DefaultStatus:(t,i)=>({componentId:t,dataValue:i,eventType:"init",eventID:v()}),CommonEffects:function(t){let{type:i,states:a,val_status:e,set_status:s,val_validate:r,set_validate:o,SystemValidation:y}=t;a=n({},a);let{componentId:I}=e;S(()=>(g.update({[I]:{ResolveRefresh:null,Refresh:()=>new Promise((l,u)=>{g.get(I).ResolveRefresh=l,s(f=>d(n({},f),{isValidating:!0,eventType:"refresh",eventID:v()}))}),GenNotice:l=>{let{ok:u,notice:f}=l;o({ok:u,notice:f})}}}),()=>{g.delete(I)}),[]),p.scope(()=>{let{override:l}=a;if(l=="never"||l=="beforeModified"&&!["init","override"].includes(e.eventType)||e.isComposing)return;let u=g.get(e.componentId);if(!u)return;if(p.is.equal(a.value,e.dataValue)){u.status_id=a.status_id;return}let f=p.SortifyObject(a.value),c=p.SortifyObject(e.dataValue);if(f&&c&&p.is.equal(f,c)){u.status_id=a.status_id;return}a.status_id!=u.status_id&&s(V=>d(n(d(n({},V),{dataValue:a.value}),t.ExtraOverrideStates&&t.ExtraOverrideStates()),{eventType:"override",eventID:v()}))}),S(()=>{A.ValidationCheck({val_status:e,set_status:s,set_validate:o,SystemValidation:y,states:a})},[e.eventID,e.dataValue]);{let{componentId:l,eventType:u,dataValue:f}=e,c=f;i=="autocomplete.single"||i=="list.radio"?c=c[0]:a.isChecker&&(c=!!c[0]),S(()=>(p.scope(()=>{if(a.form=a.form||"testForm",a.name&&a.form&&g.update({[["form-data",a.form].join("-")]:{[a.name]:{componentId:l,type:i,value:c,validation:r.ok}}}),e.isValidating||u!="refresh")return;let V=g.get(l);V&&V.ResolveRefresh&&V.ResolveRefresh(null)}),()=>{g.update({[["form-data",a.form].join("-")]:{[a.name]:null}})}),[e,r]),S(()=>{a.onUserAction&&a.onUserAction(c,{eventType:u,componentId:l,isValidated:!!r.ok,isComposing:!!e.isComposing,isFocusing:!!e.isFocusing})},[e]),S(()=>{u=="update"&&(a.onUpdateValue&&a.onUpdateValue(c,{eventType:u,componentId:l,isValidated:!!r.ok,isComposing:!!e.isComposing,isFocusing:!!e.isFocusing}),a.onUpdateValidValue&&r.ok&&a.onUpdateValidValue(c,{eventType:u,componentId:l,isValidated:!!r.ok,isComposing:!!e.isComposing,isFocusing:!!e.isFocusing}))},[r.ok,e.dataValue])}},ValidationCheck:t=>{let{states:i}=t,a="ValidationTimer-"+t.val_status.componentId;p.interval.abort(a),t.set_status(o=>d(n({},o),{isValidating:!0}));let e=t.SystemValidation({value:t.val_status.dataValue,states:i});if(!e.ok){t.set_validate(e),t.set_status(o=>d(n({},o),{isValidating:!1}));return}let s=e.notice;const r=()=>_(void 0,null,function*(){if(!i.onValidate)return;let o=yield i.onValidate(t.val_status.dataValue,t.val_status.eventType,t.val_status);t.set_validate({ok:o.ok,notice:[...s,...o.notice]}),t.set_status(y=>d(n({},y),{isValidating:!1}))});if(i.onValidate){if(t.val_status.eventType=="refresh"){r();return}p.interval.once(r,i.onValidateDelay||500,a);return}t.set_validate({ok:!0,notice:s}),t.set_status(o=>d(n({},o),{isValidating:!1}))},SubmitForm:(t,i)=>{let a=!1;if(!i)return a;let e=D(`[data-form-submit-button="${i}"]`)[0];if(!e)return a;let s=e.dataset.sdfike||"",r=t.key,o=t.ctrlKey||t.metaKey;return p.scope(()=>{s.includes("enter")&&(r!="Enter"||t.nativeEvent.isComposing||(t==null?void 0:t.keyCode)==229)||((r=="Enter"&&(s.includes("enter")||s.includes("auxEnter")&&o)||r==" "&&s.includes("space"))&&(e.click(),t.preventDefault()),a=!0)}),a},isShowValidation:(t,i,a)=>{let e=t.ok;return!a&&i.eventType=="init"?!0:e}},it=function(t){t=n({tone:"border"},t);let i=p.scope(()=>{if(t.tone=="plain")return{};let e={padding:1,transition:"middle",flexSizing:"auto",boxShadow:"0.min"};return t.tone=="border"?e=d(n({},e),{border:!0,borderRadius:"2.tone.secondary",backgroundColor:"layer.1"}):t.tone=="cloud"?e=d(n({},e),{border:"1.thin",borderRadius:"2.tone.secondary",backgroundColor:"cloud"}):t.tone=="bottomBorder"&&(e=d(n({},e),{borderRadius:0,border:"unset",borderBottom:!0,backgroundColor:"cloud"})),e});return d(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:[b("Input"),t.className].join(" ")})};export{at as BoxWrapper,A as CoreEffects,it as DefaultBoxishStyles,et as OptionalInputWrapper};
1
+ import{b as n,c as d,e as _}from"../../chunk-C5N2D3ZX.js";import{jsx as m,jsxs as h}from"react/jsx-runtime";import{useState as x,useEffect as S}from"react";import p,{UUID as v,useStore as g}from"jmini";import{$$fromRoot as D}from"../../@utils";import{InputClasses as b}from"../../@styles/componentClasses";import{Box as B,Flex as E,FAI as C,Column as F}from"../../atoms";import{Row as k,Literal as N}from"../../mols";import{Button as w}from"../Button";import R from"../Tooltips";const et=t=>{let[i]=x(t.componentId||v());t=n({},t),t.states=d(n({enableFormSubmit:!0,status_id:v(),override:"never",form:"",id:v(),"aria-label":"Input-"+i},t.states),{componentId:i});let{children:a}=t;return m(a,n({},t.states))},at=t=>{let{children:i,val_status:a,val_validate:e,states:s}=t,{leftIcon:r,wrapStyles:o}=s;return s.checkValidationAtFirst||a.eventType=="init"&&(e.notice=[]),h(k.Center,d(n({position:"relative",verticalAlign:"unset",gap:0},o),{className:b("Wrapper"),"data-notice-uid":a.componentId,children:[m(T.Notice,{notice:e.notice,val_status:a}),s.leftIndicator,h(E,{position:"relative",flexSizing:"auto",children:[i,r,m(T.RightIcon,n({},t)),m(T.ClearButton,n({},t))]}),s.rightIndicator]}))},T={ClearButton:t=>!t.states.clearButton||!t.val_status.dataValue?null:m(w.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=>d(n({},i),{dataValue:"",formatValue:"",eventType:"update",eventID:v()}))},children:m(C.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,s="NoticeTimer-"+e,r="NoticeTimerClose-"+e,o="notice-tips-"+e;return S(()=>{p.interval.once(()=>{if(!(i!=null&&i.length)){R.close(o);return}R.open({tipsID:o,parent:`[data-notice-uid="${e}"]`,gravityPoint:24,padding:[1,0],closeAtParentBlur:!1,content:h(R.Body,{padding:["1/2","2/3"],fontSize:"1.mini",position:"relative",children:[m(B,{position:"absolute",unitHeight:1,unitWidth:1,right:1,backgroundColor:"dark",freeCSS:{zIndex:1,transform:"rotate(45deg)",top:-6}}),m(F,{backgroundColor:"inherit",gap:"1/3",position:"relative",freeCSS:{zIndex:2},children:i.map((y,I)=>{let{type:l,label:u}=y,f=l=="invalid"?C.Exclamation:l=="warn"?C.Exclamation:C.Check;return h(k.Left,{gap:0,borderRadius:"2.tone.secondary",children:[m(f,{flexCenter:!0,fontSize:"2.normal",fontColor:{invalid:"nega",warn:"warn",valid:"posi"}[l]}),m(N.Supplement,{fontSize:"0.xs",fontColor:"white",children:u})]},I+"-"+p.Stringify(y))})})]})})},350,s),p.interval.once(()=>{R.close(o)},6e3,r)},[i]),null}},A={DefaultStatus:(t,i)=>({componentId:t,dataValue:i,eventType:"init",eventID:v()}),CommonEffects:function(t){let{type:i,states:a,val_status:e,set_status:s,val_validate:r,set_validate:o,SystemValidation:y}=t;a=n({},a);let{componentId:I}=e;S(()=>(g.update({[I]:{ResolveRefresh:null,Refresh:()=>new Promise((l,u)=>{g.get(I).ResolveRefresh=l,s(f=>d(n({},f),{isValidating:!0,eventType:"refresh",eventID:v()}))}),GenNotice:l=>{let{ok:u,notice:f}=l;o({ok:u,notice:f})}}}),()=>{g.delete(I)}),[]),p.scope(()=>{let{override:l}=a;if(l=="never"||l=="beforeModified"&&!["init","override"].includes(e.eventType)||e.isComposing)return;let u=g.get(e.componentId);if(!u)return;if(p.is.equal(a.value,e.dataValue)){u.status_id=a.status_id;return}let f=p.SortifyObject(a.value),c=p.SortifyObject(e.dataValue);if(f&&c&&p.is.equal(f,c)){u.status_id=a.status_id;return}a.status_id!=u.status_id&&s(V=>d(n(d(n({},V),{dataValue:a.value}),t.ExtraOverrideStates&&t.ExtraOverrideStates()),{eventType:"override",eventID:v()}))}),S(()=>{A.ValidationCheck({val_status:e,set_status:s,set_validate:o,SystemValidation:y,states:a})},[e.eventID,e.dataValue]);{let{componentId:l,eventType:u,dataValue:f}=e,c=f;i=="autocomplete.single"||i=="list.radio"?c=c[0]:a.isChecker&&(c=!!c[0]),S(()=>(p.scope(()=>{if(a.form=a.form||"testForm",a.name&&a.form&&g.update({[["form-data",a.form].join("-")]:{[a.name]:{componentId:l,type:i,value:c,validation:r.ok}}}),e.isValidating||u!="refresh")return;let V=g.get(l);V&&V.ResolveRefresh&&V.ResolveRefresh(null)}),()=>{g.update({[["form-data",a.form].join("-")]:{[a.name]:null}})}),[e,r]),S(()=>{a.onUserAction&&a.onUserAction(c,{eventType:u,componentId:l,isValidated:!!r.ok,isComposing:!!e.isComposing,isFocusing:!!e.isFocusing})},[e]),S(()=>{u=="update"&&(a.onUpdateValue&&a.onUpdateValue(c,{eventType:u,componentId:l,isValidated:!!r.ok,isComposing:!!e.isComposing,isFocusing:!!e.isFocusing}),a.onUpdateValidValue&&r.ok&&a.onUpdateValidValue(c,{eventType:u,componentId:l,isValidated:!!r.ok,isComposing:!!e.isComposing,isFocusing:!!e.isFocusing}))},[r.ok,e.dataValue])}},ValidationCheck:t=>{let{states:i}=t,a="ValidationTimer-"+t.val_status.componentId;p.interval.abort(a),t.set_status(o=>d(n({},o),{isValidating:!0}));let e=t.SystemValidation({value:t.val_status.dataValue,states:i});if(!e.ok){t.set_validate(e),t.set_status(o=>d(n({},o),{isValidating:!1}));return}let s=e.notice||[];const r=()=>_(void 0,null,function*(){if(!i.onValidate)return;let o=yield i.onValidate(t.val_status.dataValue,t.val_status.eventType,t.val_status);t.set_validate({ok:o.ok,notice:[...s,...o.notice||[]]}),t.set_status(y=>d(n({},y),{isValidating:!1}))});if(i.onValidate){if(t.val_status.eventType=="refresh"){r();return}p.interval.once(r,i.onValidateDelay||500,a);return}t.set_validate({ok:!0,notice:s}),t.set_status(o=>d(n({},o),{isValidating:!1}))},SubmitForm:(t,i)=>{let a=!1;if(!i)return a;let e=D(`[data-form-submit-button="${i}"]`)[0];if(!e)return a;let s=e.dataset.sdfike||"",r=t.key,o=t.ctrlKey||t.metaKey;return p.scope(()=>{s.includes("enter")&&(r!="Enter"||t.nativeEvent.isComposing||(t==null?void 0:t.keyCode)==229)||((r=="Enter"&&(s.includes("enter")||s.includes("auxEnter")&&o)||r==" "&&s.includes("space"))&&(e.click(),t.preventDefault()),a=!0)}),a},isShowValidation:(t,i,a)=>{let e=t.ok;return!a&&i.eventType=="init"?!0:e}},it=function(t){t=n({tone:"border"},t);let i=p.scope(()=>{if(t.tone=="plain")return{};let e={padding:1,transition:"middle",flexSizing:"auto",boxShadow:"0.min"};return t.tone=="border"?e=d(n({},e),{border:!0,borderRadius:"2.tone.secondary",backgroundColor:"layer.1"}):t.tone=="cloud"?e=d(n({},e),{border:"1.thin",borderRadius:"2.tone.secondary",backgroundColor:"cloud"}):t.tone=="bottomBorder"&&(e=d(n({},e),{borderRadius:0,border:"unset",borderBottom:!0,backgroundColor:"cloud"})),e});return d(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:[b("Input"),t.className].join(" ")})};export{at as BoxWrapper,A as CoreEffects,it as DefaultBoxishStyles,et as OptionalInputWrapper};
@@ -44,7 +44,7 @@ export declare namespace InputTypes {
44
44
  };
45
45
  type Result = {
46
46
  ok: boolean;
47
- notice: Notice[];
47
+ notice?: Notice[];
48
48
  };
49
49
  type System = (props: {
50
50
  value: any;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "amotify",
3
- "version": "0.2.234",
3
+ "version": "0.2.235",
4
4
  "description": "UI Component for React,NextJS,esbuild",
5
5
  "scripts": {
6
6
  "start": "run-p clean build:*",
@@ -101,7 +101,6 @@
101
101
  "esbuild-sass-plugin": "^3.3.1",
102
102
  "express": "^4.19.2",
103
103
  "express-ejs-layouts": "^2.5.1",
104
- "next": "^15.3.4",
105
104
  "nodemon": "^3.1.4",
106
105
  "npm-run-all": "^4.1.5",
107
106
  "postcss-modules": "^6.0.0",
@@ -1,7 +0,0 @@
1
- {
2
- "watch": [
3
- "./src/server"
4
- ],
5
- "exec": "ts-node -r tsconfig-paths/register --project tsconfig.server.json src/server/index.ts",
6
- "ext": "ts tsx"
7
- }