@piying/view-react 1.2.2 → 1.3.2

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,5 +1,3 @@
1
- import type { PiResolvedViewFieldConfig } from '../type';
2
1
  export interface PiyingGroupProps {
3
- fields: PiResolvedViewFieldConfig[];
4
2
  }
5
- export declare function PiyingGroup(props: PiyingGroupProps): import("react/jsx-runtime").JSX.Element;
3
+ export declare function PiyingGroup(_: PiyingGroupProps): import("react/jsx-runtime").JSX.Element;
package/index.cjs CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),T=require("static-injector"),P=require("@piying/view-core");require("valibot");const be=require("fast-equals");var A={exports:{}},x={};/**
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react"),v=require("static-injector"),A=require("@piying/view-core"),be=require("fast-equals");require("valibot");var y={exports:{}},x={};/**
2
2
  * @license React
3
3
  * react-jsx-runtime.production.js
4
4
  *
@@ -6,7 +6,7 @@
6
6
  *
7
7
  * This source code is licensed under the MIT license found in the
8
8
  * LICENSE file in the root directory of this source tree.
9
- */var X;function ge(){if(X)return x;X=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function o(l,n,a){var i=null;if(a!==void 0&&(i=""+a),n.key!==void 0&&(i=""+n.key),"key"in n){a={};for(var E in n)E!=="key"&&(a[E]=n[E])}else a=n;return n=a.ref,{$$typeof:e,type:l,key:i,ref:n!==void 0?n:null,props:a}}return x.Fragment=t,x.jsx=o,x.jsxs=o,x}var S={};/**
9
+ */var H;function he(){if(H)return x;H=1;var r=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function n(u,o,l){var i=null;if(l!==void 0&&(i=""+l),o.key!==void 0&&(i=""+o.key),"key"in o){l={};for(var E in o)E!=="key"&&(l[E]=o[E])}else l=o;return o=l.ref,{$$typeof:r,type:u,key:i,ref:o!==void 0?o:null,props:l}}return x.Fragment=t,x.jsx=n,x.jsxs=n,x}var S={};/**
10
10
  * @license React
11
11
  * react-jsx-runtime.development.js
12
12
  *
@@ -14,9 +14,9 @@
14
14
  *
15
15
  * This source code is licensed under the MIT license found in the
16
16
  * LICENSE file in the root directory of this source tree.
17
- */var Z;function Ee(){return Z||(Z=1,process.env.NODE_ENV!=="production"&&function(){function e(r){if(r==null)return null;if(typeof r=="function")return r.$$typeof===de?null:r.displayName||r.name||null;if(typeof r=="string")return r;switch(r){case p:return"Fragment";case d:return"Profiler";case M:return"StrictMode";case le:return"Suspense";case ae:return"SuspenseList";case ce:return"Activity"}if(typeof r=="object")switch(typeof r.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),r.$$typeof){case O:return"Portal";case ue:return(r.displayName||"Context")+".Provider";case oe:return(r._context.displayName||"Context")+".Consumer";case se:var u=r.render;return r=r.displayName,r||(r=u.displayName||u.name||"",r=r!==""?"ForwardRef("+r+")":"ForwardRef"),r;case ie:return u=r.displayName||null,u!==null?u:e(r.type)||"Memo";case W:u=r._payload,r=r._init;try{return e(r(u))}catch{}}return null}function t(r){return""+r}function o(r){try{t(r);var u=!1}catch{u=!0}if(u){u=console;var c=u.error,b=typeof Symbol=="function"&&Symbol.toStringTag&&r[Symbol.toStringTag]||r.constructor.name||"Object";return c.call(u,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",b),t(r)}}function l(r){if(r===p)return"<>";if(typeof r=="object"&&r!==null&&r.$$typeof===W)return"<...>";try{var u=e(r);return u?"<"+u+">":"<...>"}catch{return"<...>"}}function n(){var r=N.A;return r===null?null:r.getOwner()}function a(){return Error("react-stack-top-frame")}function i(r){if(q.call(r,"key")){var u=Object.getOwnPropertyDescriptor(r,"key").get;if(u&&u.isReactWarning)return!1}return r.key!==void 0}function E(r,u){function c(){U||(U=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",u))}c.isReactWarning=!0,Object.defineProperty(r,"key",{get:c,configurable:!0})}function m(){var r=e(this.type);return B[r]||(B[r]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),r=this.props.ref,r!==void 0?r:null}function I(r,u,c,b,v,h,Y,D){return c=h.ref,r={$$typeof:y,type:r,key:u,props:h,_owner:v},(c!==void 0?c:null)!==null?Object.defineProperty(r,"ref",{enumerable:!1,get:m}):Object.defineProperty(r,"ref",{enumerable:!1,value:null}),r._store={},Object.defineProperty(r._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(r,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(r,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:Y}),Object.defineProperty(r,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:D}),Object.freeze&&(Object.freeze(r.props),Object.freeze(r)),r}function k(r,u,c,b,v,h,Y,D){var g=u.children;if(g!==void 0)if(b)if(fe(g)){for(b=0;b<g.length;b++)j(g[b]);Object.freeze&&Object.freeze(g)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else j(g);if(q.call(u,"key")){g=e(r);var C=Object.keys(u).filter(function(me){return me!=="key"});b=0<C.length?"{key: someKey, "+C.join(": ..., ")+": ...}":"{key: someKey}",H[g+b]||(C=0<C.length?"{"+C.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
17
+ */var X;function Ee(){return X||(X=1,process.env.NODE_ENV!=="production"&&function(){function r(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===de?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case w:return"Fragment";case ne:return"Profiler";case te:return"StrictMode";case le:return"Suspense";case ae:return"SuspenseList";case ie:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case m:return"Portal";case ue:return(e.displayName||"Context")+".Provider";case oe:return(e._context.displayName||"Context")+".Consumer";case se:var s=e.render;return e=e.displayName,e||(e=s.displayName||s.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case ce:return s=e.displayName||null,s!==null?s:r(e.type)||"Memo";case L:s=e._payload,e=e._init;try{return r(e(s))}catch{}}return null}function t(e){return""+e}function n(e){try{t(e);var s=!1}catch{s=!0}if(s){s=console;var c=s.error,b=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return c.call(s,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",b),t(e)}}function u(e){if(e===w)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===L)return"<...>";try{var s=r(e);return s?"<"+s+">":"<...>"}catch{return"<...>"}}function o(){var e=I.A;return e===null?null:e.getOwner()}function l(){return Error("react-stack-top-frame")}function i(e){if(W.call(e,"key")){var s=Object.getOwnPropertyDescriptor(e,"key").get;if(s&&s.isReactWarning)return!1}return e.key!==void 0}function E(e,s){function c(){q||(q=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",s))}c.isReactWarning=!0,Object.defineProperty(e,"key",{get:c,configurable:!0})}function d(){var e=r(this.type);return U[e]||(U[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function T(e,s,c,b,_,R,N,F){return c=R.ref,e={$$typeof:O,type:e,key:s,props:R,_owner:_},(c!==void 0?c:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:d}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:N}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:F}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function k(e,s,c,b,_,R,N,F){var h=s.children;if(h!==void 0)if(b)if(fe(h)){for(b=0;b<h.length;b++)j(h[b]);Object.freeze&&Object.freeze(h)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else j(h);if(W.call(s,"key")){h=r(e);var C=Object.keys(s).filter(function(me){return me!=="key"});b=0<C.length?"{key: someKey, "+C.join(": ..., ")+": ...}":"{key: someKey}",z[h+b]||(C=0<C.length?"{"+C.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
18
18
  let props = %s;
19
19
  <%s {...props} />
20
20
  React keys must be passed directly to JSX without using spread:
21
21
  let props = %s;
22
- <%s key={someKey} {...props} />`,b,g,C,g),H[g+b]=!0)}if(g=null,c!==void 0&&(o(c),g=""+c),i(u)&&(o(u.key),g=""+u.key),"key"in u){c={};for(var V in u)V!=="key"&&(c[V]=u[V])}else c=u;return g&&E(c,typeof r=="function"?r.displayName||r.name||"Unknown":r),I(r,g,h,v,n(),c,Y,D)}function j(r){typeof r=="object"&&r!==null&&r.$$typeof===y&&r._store&&(r._store.validated=1)}var R=s,y=Symbol.for("react.transitional.element"),O=Symbol.for("react.portal"),p=Symbol.for("react.fragment"),M=Symbol.for("react.strict_mode"),d=Symbol.for("react.profiler"),oe=Symbol.for("react.consumer"),ue=Symbol.for("react.context"),se=Symbol.for("react.forward_ref"),le=Symbol.for("react.suspense"),ae=Symbol.for("react.suspense_list"),ie=Symbol.for("react.memo"),W=Symbol.for("react.lazy"),ce=Symbol.for("react.activity"),de=Symbol.for("react.client.reference"),N=R.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,q=Object.prototype.hasOwnProperty,fe=Array.isArray,F=console.createTask?console.createTask:function(){return null};R={react_stack_bottom_frame:function(r){return r()}};var U,B={},J=R.react_stack_bottom_frame.bind(R,a)(),z=F(l(a)),H={};S.Fragment=p,S.jsx=function(r,u,c,b,v){var h=1e4>N.recentlyCreatedOwnerStacks++;return k(r,u,c,!1,b,v,h?Error("react-stack-top-frame"):J,h?F(l(r)):z)},S.jsxs=function(r,u,c,b,v){var h=1e4>N.recentlyCreatedOwnerStacks++;return k(r,u,c,!0,b,v,h?Error("react-stack-top-frame"):J,h?F(l(r)):z)}}()),S}var Q;function Re(){return Q||(Q=1,process.env.NODE_ENV==="production"?A.exports=ge():A.exports=Ee()),A.exports}var f=Re();const K=s.createContext(void 0),w=s.createContext(void 0);function _(e,t){const o=s.useContext(w),[l,n]=s.useState(s.useMemo(()=>t(e),[])),a=s.useRef(l);return s.useEffect(()=>{const i=t(e);Object.is(a.current,i)||(n(i),a.current=i);const E=T.effect(()=>{const m=t(e);Object.is(a.current,m)||(n(m),a.current=m)},{injector:o});return()=>{E.destroy()}},[e,s.useMemo(()=>t,[])]),l}function $(e){const t=s.useMemo(()=>e.wrappers.slice(1),[e.wrappers]),o=e.wrappers[0],l=_(o,()=>({...o?.inputs(),...o?.attributes(),...o?.outputs}));return f.jsx(f.Fragment,{children:o?f.jsx(o.type,{...l,children:f.jsx($,{wrappers:t,children:e.children})}):e.children})}const ee=Symbol.for("ControlValueAccessor");function L(e){const t=_(e.field,d=>d.inputs()),o=_(e.field,d=>d.outputs()),l=_(e.field,d=>d.attributes()),n=s.useMemo(()=>({...l,...t,...o}),[l,t,o]),a=_(e.field,d=>d.renderConfig()),i=_(e.field,d=>d.fieldGroup?.()),E=_(e.field,d=>d.fieldArray?.()),m=s.useMemo(()=>({...n,fields:i}),[n,i]),I=s.useMemo(()=>({...n,fields:E}),[n,E]),k=_(e.field,d=>d.wrappers()),j=e.field.form.control,R=e.field.define?.type,y=s.useMemo(()=>!!a.hidden||!R,[a.hidden,R]),O=s.useContext(w),p=s.useRef(void 0),M=s.useMemo(()=>({...n,[ee]:p}),[n,p]);return s.useEffect(()=>{let d;return p.current&&(d=P.createViewControlLink(()=>j,p.current,O)),()=>{d?.(),d=void 0}},[p.current,j,O]),f.jsx(f.Fragment,{children:f.jsx(K,{value:e.field,children:y?void 0:f.jsx($,{wrappers:k,children:i?f.jsx(R,{...m}):E?f.jsx(R,{...I}):e.field.form.control?f.jsx(R,{...M}):f.jsx(R,{...n})})})})}function he(e){return f.jsx(f.Fragment,{children:e.fields.map((t,o)=>f.jsx(L,{field:t},o))})}class re extends P.CoreSchemaHandle{}class te extends P.FormBuilder{}function ne(e,t,o,l){let n=!0;return T.effect(()=>{const a=t.value$$();n?(be.deepEqual(a,e)||l(a),n=!1):l(a)},{injector:o})}function G(e,t){const o=s.useCallback(e,t),l=s.useRef(void 0);s.useMemo(()=>(l.current=o(),l.current),t),s.useEffect(()=>()=>{l.current?.(),l.current=void 0},[])}function pe(e){const t=s.useMemo(()=>T.createRootInjector({providers:[{provide:T.ChangeDetectionScheduler,useClass:T.ChangeDetectionSchedulerImpl}]}),[]),[o,l]=s.useMemo(()=>{const n=T.createInjector({providers:[],parent:t});return[P.convert(e.schema,{handle:re,builder:te,injector:n,registerOnDestroy:i=>{n.get(T.DestroyRef).onDestroy(i)},...e.options}),n]},[e.schema,e.options]);return G(()=>{let n;if(o.form.control){const a=e.model;n=ne(typeof a<"u"?a:void 0,o.form.control,l,i=>{T.untracked(()=>{o.form.control?.valueNoError$$()&&e.modelChange?.(i)})})}return()=>{l.destroy(),n?.destroy()}},[o]),G(()=>{o.form.control?.updateValue(e.model)},[o,e.model]),f.jsx(f.Fragment,{children:f.jsx(w,{value:t,children:f.jsx(L,{field:o})})})}const _e=[],ve={directives:"merge",formConfig:"merge",inputs:"merge",outputs:"merge",props:"merge",renderConfig:"merge",wrappers:"replace"};function Te(e,t){const o=s.useRef(!1);return s.useMemo(()=>{const l={value:e.value==null?"":e.value,disabled:e.disabled,onBlur:e.touchedChange};return t?{...l,onCompositionStart:()=>{o.current=!0},onCompositionEnd:n=>{o.current=!1,e.valueChange(n.target.value)}}:{...l,onInput:n=>e.valueChange(n.target.value)}},[e,t])}function Ce(e){return s.useMemo(()=>({checked:e.value??!1,disabled:e.disabled,onBlur:e.touchedChange,onChange:t=>e.valueChange(t.target.checked)}),[e])}function je(e){return s.useMemo(()=>({value:e.value==null?"":e.value,disabled:e.disabled,onBlur:e.touchedChange,onInput:t=>{const o=t.target.value;e.valueChange(o==""?void 0:parseFloat(o))}}),[e])}function xe(e,t){return s.useMemo(()=>({value:t,checked:Object.is(e.value,t),disabled:e.disabled,onBlur:e.touchedChange,onChange:()=>e.valueChange(t)}),[e])}function Se(e){return s.useMemo(()=>{const t=o=>{const l=o.target.value;e.valueChange(l==""?void 0:parseFloat(l))};return{value:e.value==null?"":e.value,disabled:e.disabled,onBlur:e.touchedChange,onInput:t,onChange:t}},[e])}function ke(e,t=!1){return s.useMemo(()=>({value:e.value,disabled:e.disabled,onBlur:e.touchedChange,onChange:o=>{const l=[],n=o.target;if(n.selectedOptions!==void 0)for(let a=0;a<n.selectedOptions.length;a++){const i=n.selectedOptions[a];if(l.push(i.value),!t)break}else for(let a=0;a<n.options.length;a++){const i=n.options[a];if(i.selected&&(l.push(i.value),!t))break}e.valueChange(t?l:l[0])}}),[e])}function ye(){const[e,t]=s.useState(void 0),[o,l]=s.useState(!1),n=s.useRef(void 0),a=s.useRef(void 0),i=s.useMemo(()=>({writeValue(m){t(m)},registerOnChange(m){n.current=m},registerOnTouched(m){a.current=m},setDisabledState(m){l(m)}}),[]),E=s.useMemo(()=>({value:e,disabled:o,valueChange:m=>{n.current?.(m),t(m)},touchedChange:()=>{a.current?.()}}),[e,o]);return s.useMemo(()=>({cva:i,cvaa:E}),[E])}exports.CVA=ee;exports.EMPTY_ARRAY=_e;exports.InjectorToken=w;exports.NG_CONFIG_DEFAULT_MERGE_STRAGEGY=ve;exports.PI_VIEW_FIELD_TOKEN=K;exports.PiyingFieldTemplate=L;exports.PiyingGroup=he;exports.PiyingView=pe;exports.PiyingWrapper=$;exports.ReactFormBuilder=te;exports.ReactSchemaHandle=re;exports.initListen=ne;exports.useControlValueAccessor=ye;exports.useEffectSync=G;exports.useInputCheckboxModel=Ce;exports.useInputNumberModel=je;exports.useInputRadioModel=xe;exports.useInputRangeModel=Se;exports.useInputTextModel=Te;exports.useSelectModel=ke;exports.useSignalToRef=_;
22
+ <%s key={someKey} {...props} />`,b,h,C,h),z[h+b]=!0)}if(h=null,c!==void 0&&(n(c),h=""+c),i(s)&&(n(s.key),h=""+s.key),"key"in s){c={};for(var Y in s)Y!=="key"&&(c[Y]=s[Y])}else c=s;return h&&E(c,typeof e=="function"?e.displayName||e.name||"Unknown":e),T(e,h,R,_,o(),c,N,F)}function j(e){typeof e=="object"&&e!==null&&e.$$typeof===O&&e._store&&(e._store.validated=1)}var g=a,O=Symbol.for("react.transitional.element"),m=Symbol.for("react.portal"),w=Symbol.for("react.fragment"),te=Symbol.for("react.strict_mode"),ne=Symbol.for("react.profiler"),oe=Symbol.for("react.consumer"),ue=Symbol.for("react.context"),se=Symbol.for("react.forward_ref"),le=Symbol.for("react.suspense"),ae=Symbol.for("react.suspense_list"),ce=Symbol.for("react.memo"),L=Symbol.for("react.lazy"),ie=Symbol.for("react.activity"),de=Symbol.for("react.client.reference"),I=g.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,W=Object.prototype.hasOwnProperty,fe=Array.isArray,M=console.createTask?console.createTask:function(){return null};g={react_stack_bottom_frame:function(e){return e()}};var q,U={},B=g.react_stack_bottom_frame.bind(g,l)(),J=M(u(l)),z={};S.Fragment=w,S.jsx=function(e,s,c,b,_){var R=1e4>I.recentlyCreatedOwnerStacks++;return k(e,s,c,!1,b,_,R?Error("react-stack-top-frame"):B,R?M(u(e)):J)},S.jsxs=function(e,s,c,b,_){var R=1e4>I.recentlyCreatedOwnerStacks++;return k(e,s,c,!0,b,_,R?Error("react-stack-top-frame"):B,R?M(u(e)):J)}}()),S}var Z;function ge(){return Z||(Z=1,process.env.NODE_ENV==="production"?y.exports=he():y.exports=Ee()),y.exports}var f=ge();const V=a.createContext(void 0),P=a.createContext(void 0);function p(r,t){const n=a.useContext(P),[u,o]=a.useState(a.useMemo(()=>t(r),[])),l=a.useRef(u);return a.useEffect(()=>{const i=t(r);Object.is(l.current,i)||(o(i),l.current=i);const E=v.effect(()=>{const d=t(r);Object.is(l.current,d)||(o(d),l.current=d)},{injector:n});return()=>{E.destroy()}},[r,a.useMemo(()=>t,[])]),u}function $(r){const t=a.useMemo(()=>r.wrappers.slice(1),[r.wrappers]),n=r.wrappers[0],u=p(n,()=>({...n?.inputs(),...n?.attributes(),...n?.outputs}));return f.jsx(f.Fragment,{children:n?f.jsx(n.type,{...u,children:f.jsx($,{wrappers:t,children:r.children})}):r.children})}const Q=Symbol.for("ControlValueAccessor");function G(r){const t=p(r.field,m=>m.inputs()),n=p(r.field,m=>m.outputs()),u=p(r.field,m=>m.attributes()),o=a.useMemo(()=>({...u,...t,...n}),[u,t,n]),l=p(r.field,m=>m.renderConfig()),i=p(r.field,m=>m.children?.()),E=p(r.field,m=>m.wrappers()),d=r.field.form.control,T=r.field.define?.type,k=a.useMemo(()=>!!l.hidden||!T,[l.hidden,T]),j=a.useContext(P),g=a.useRef(void 0),O=a.useMemo(()=>({...o,[Q]:g}),[o,g]);return a.useEffect(()=>{let m;return g.current&&(m=A.createViewControlLink(()=>d,g.current,j)),()=>{m?.(),m=void 0}},[g.current,d,j]),f.jsx(f.Fragment,{children:f.jsx(V,{value:r.field,children:k?void 0:f.jsx($,{wrappers:E,children:i?f.jsx(T,{...o}):r.field.form.control?f.jsx(T,{...O}):f.jsx(T,{...o})})})})}function K(r,t,n,u){let o=!0;return v.effect(()=>{const l=t.value$$();o?(be.deepEqual(l,r)||u(l),o=!1):u(l)},{injector:n})}function Re(){const[r,t]=a.useState(void 0),[n,u]=a.useState(!1),o=a.useRef(void 0),l=a.useRef(void 0),i=a.useMemo(()=>({writeValue(d){t(d)},registerOnChange(d){o.current=d},registerOnTouched(d){l.current=d},setDisabledState(d){u(d)}}),[]),E=a.useMemo(()=>({value:r,disabled:n,valueChange:d=>{o.current?.(d),t(d)},touchedChange:()=>{l.current?.()}}),[r,n]);return a.useMemo(()=>({cva:i,cvaa:E}),[E])}function D(r,t){const n=a.useCallback(r,t),u=a.useRef(void 0);a.useMemo(()=>(u.current=n(),u.current),t),a.useEffect(()=>()=>{u.current?.(),u.current=void 0},[])}function pe(r){const t=a.useContext(V),n=p(t,u=>u?.children());return f.jsx(f.Fragment,{children:n.map((u,o)=>f.jsx(G,{field:u},o))})}class ee extends A.CoreSchemaHandle{}class re extends A.FormBuilder{}function _e(r){const t=a.useMemo(()=>v.createRootInjector({providers:[{provide:v.ChangeDetectionScheduler,useClass:v.ChangeDetectionSchedulerImpl}]}),[]),[n,u]=a.useMemo(()=>{const o=v.createInjector({providers:[],parent:t});return[A.convert(r.schema,{handle:ee,builder:re,injector:o,registerOnDestroy:i=>{o.get(v.DestroyRef).onDestroy(i)},...r.options}),o]},[r.schema,r.options]);return D(()=>{let o;if(n.form.control){const l=r.model;o=K(typeof l<"u"?l:void 0,n.form.control,u,i=>{v.untracked(()=>{n.form.control?.valueNoError$$()&&r.modelChange?.(i)})})}return()=>{u.destroy(),o?.destroy()}},[n]),D(()=>{n.form.control?.updateValue(r.model)},[n,r.model]),f.jsx(f.Fragment,{children:f.jsx(P,{value:t,children:f.jsx(G,{field:n})})})}const ve=[],Te={directives:"merge",formConfig:"merge",inputs:"merge",outputs:"merge",props:"merge",renderConfig:"merge",wrappers:"replace"};function Ce(r,t){const n=a.useRef(!1);return a.useMemo(()=>{const u={value:r.value==null?"":r.value,disabled:r.disabled,onBlur:r.touchedChange};return t?{...u,onCompositionStart:()=>{n.current=!0},onCompositionEnd:o=>{n.current=!1,r.valueChange(o.target.value)}}:{...u,onInput:o=>r.valueChange(o.target.value)}},[r,t])}function je(r){return a.useMemo(()=>({checked:r.value??!1,disabled:r.disabled,onBlur:r.touchedChange,onChange:t=>r.valueChange(t.target.checked)}),[r])}function xe(r){return a.useMemo(()=>({value:r.value==null?"":r.value,disabled:r.disabled,onBlur:r.touchedChange,onInput:t=>{const n=t.target.value;r.valueChange(n==""?void 0:parseFloat(n))}}),[r])}function Se(r,t){return a.useMemo(()=>({value:t,checked:Object.is(r.value,t),disabled:r.disabled,onBlur:r.touchedChange,onChange:()=>r.valueChange(t)}),[r])}function ke(r){return a.useMemo(()=>{const t=n=>{const u=n.target.value;r.valueChange(u==""?void 0:parseFloat(u))};return{value:r.value==null?"":r.value,disabled:r.disabled,onBlur:r.touchedChange,onInput:t,onChange:t}},[r])}function Oe(r,t=!1){return a.useMemo(()=>({value:r.value,disabled:r.disabled,onBlur:r.touchedChange,onChange:n=>{const u=[],o=n.target;if(o.selectedOptions!==void 0)for(let l=0;l<o.selectedOptions.length;l++){const i=o.selectedOptions[l];if(u.push(i.value),!t)break}else for(let l=0;l<o.options.length;l++){const i=o.options[l];if(i.selected&&(u.push(i.value),!t))break}r.valueChange(t?u:u[0])}}),[r])}exports.CVA=Q;exports.EMPTY_ARRAY=ve;exports.InjectorToken=P;exports.NG_CONFIG_DEFAULT_MERGE_STRAGEGY=Te;exports.PI_VIEW_FIELD_TOKEN=V;exports.PiyingFieldTemplate=G;exports.PiyingGroup=pe;exports.PiyingView=_e;exports.PiyingWrapper=$;exports.ReactFormBuilder=re;exports.ReactSchemaHandle=ee;exports.initListen=K;exports.useControlValueAccessor=Re;exports.useEffectSync=D;exports.useInputCheckboxModel=je;exports.useInputNumberModel=xe;exports.useInputRadioModel=Se;exports.useInputRangeModel=ke;exports.useInputTextModel=Ce;exports.useSelectModel=Oe;exports.useSignalToRef=p;
package/index.js CHANGED
@@ -1,9 +1,9 @@
1
- import me, { createContext as Q, useContext as K, useState as M, useMemo as c, useRef as C, useEffect as V, useCallback as be } from "react";
2
- import { effect as ee, createRootInjector as he, ChangeDetectionSchedulerImpl as ge, ChangeDetectionScheduler as pe, createInjector as Ee, DestroyRef as Re, untracked as ve } from "static-injector";
3
- import { createViewControlLink as _e, CoreSchemaHandle as Te, FormBuilder as Ce, convert as je } from "@piying/view-core";
1
+ import he, { createContext as Z, useContext as D, useState as Y, useMemo as f, useRef as C, useEffect as M, useCallback as be } from "react";
2
+ import { effect as Q, createRootInjector as ge, ChangeDetectionSchedulerImpl as pe, ChangeDetectionScheduler as Ee, createInjector as Re, DestroyRef as ve, untracked as _e } from "static-injector";
3
+ import { createViewControlLink as Te, CoreSchemaHandle as Ce, FormBuilder as je, convert as xe } from "@piying/view-core";
4
+ import { deepEqual as ke } from "fast-equals";
4
5
  import "valibot";
5
- import { deepEqual as xe } from "fast-equals";
6
- var A = { exports: {} }, x = {};
6
+ var w = { exports: {} }, x = {};
7
7
  /**
8
8
  * @license React
9
9
  * react-jsx-runtime.production.js
@@ -13,27 +13,27 @@ var A = { exports: {} }, x = {};
13
13
  * This source code is licensed under the MIT license found in the
14
14
  * LICENSE file in the root directory of this source tree.
15
15
  */
16
- var z;
17
- function ke() {
18
- if (z) return x;
19
- z = 1;
20
- var e = Symbol.for("react.transitional.element"), t = Symbol.for("react.fragment");
21
- function o(s, n, l) {
22
- var a = null;
23
- if (l !== void 0 && (a = "" + l), n.key !== void 0 && (a = "" + n.key), "key" in n) {
16
+ var J;
17
+ function Oe() {
18
+ if (J) return x;
19
+ J = 1;
20
+ var r = Symbol.for("react.transitional.element"), t = Symbol.for("react.fragment");
21
+ function n(u, o, l) {
22
+ var c = null;
23
+ if (l !== void 0 && (c = "" + l), o.key !== void 0 && (c = "" + o.key), "key" in o) {
24
24
  l = {};
25
- for (var g in n)
26
- g !== "key" && (l[g] = n[g]);
27
- } else l = n;
28
- return n = l.ref, {
29
- $$typeof: e,
30
- type: s,
31
- key: a,
32
- ref: n !== void 0 ? n : null,
25
+ for (var g in o)
26
+ g !== "key" && (l[g] = o[g]);
27
+ } else l = o;
28
+ return o = l.ref, {
29
+ $$typeof: r,
30
+ type: u,
31
+ key: c,
32
+ ref: o !== void 0 ? o : null,
33
33
  props: l
34
34
  };
35
35
  }
36
- return x.Fragment = t, x.jsx = o, x.jsxs = o, x;
36
+ return x.Fragment = t, x.jsx = n, x.jsxs = n, x;
37
37
  }
38
38
  var k = {};
39
39
  /**
@@ -45,375 +45,396 @@ var k = {};
45
45
  * This source code is licensed under the MIT license found in the
46
46
  * LICENSE file in the root directory of this source tree.
47
47
  */
48
- var H;
49
- function Oe() {
50
- return H || (H = 1, process.env.NODE_ENV !== "production" && function() {
51
- function e(r) {
52
- if (r == null) return null;
53
- if (typeof r == "function")
54
- return r.$$typeof === ce ? null : r.displayName || r.name || null;
55
- if (typeof r == "string") return r;
56
- switch (r) {
57
- case R:
48
+ var z;
49
+ function Se() {
50
+ return z || (z = 1, process.env.NODE_ENV !== "production" && function() {
51
+ function r(e) {
52
+ if (e == null) return null;
53
+ if (typeof e == "function")
54
+ return e.$$typeof === de ? null : e.displayName || e.name || null;
55
+ if (typeof e == "string") return e;
56
+ switch (e) {
57
+ case A:
58
58
  return "Fragment";
59
- case d:
59
+ case ne:
60
60
  return "Profiler";
61
- case P:
61
+ case te:
62
62
  return "StrictMode";
63
- case se:
64
- return "Suspense";
65
63
  case le:
64
+ return "Suspense";
65
+ case ae:
66
66
  return "SuspenseList";
67
67
  case ie:
68
68
  return "Activity";
69
69
  }
70
- if (typeof r == "object")
71
- switch (typeof r.tag == "number" && console.error(
70
+ if (typeof e == "object")
71
+ switch (typeof e.tag == "number" && console.error(
72
72
  "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
73
- ), r.$$typeof) {
74
- case y:
73
+ ), e.$$typeof) {
74
+ case m:
75
75
  return "Portal";
76
- case oe:
77
- return (r.displayName || "Context") + ".Provider";
78
- case ne:
79
- return (r._context.displayName || "Context") + ".Consumer";
80
76
  case ue:
81
- var u = r.render;
82
- return r = r.displayName, r || (r = u.displayName || u.name || "", r = r !== "" ? "ForwardRef(" + r + ")" : "ForwardRef"), r;
83
- case ae:
84
- return u = r.displayName || null, u !== null ? u : e(r.type) || "Memo";
85
- case L:
86
- u = r._payload, r = r._init;
77
+ return (e.displayName || "Context") + ".Provider";
78
+ case oe:
79
+ return (e._context.displayName || "Context") + ".Consumer";
80
+ case se:
81
+ var s = e.render;
82
+ return e = e.displayName, e || (e = s.displayName || s.name || "", e = e !== "" ? "ForwardRef(" + e + ")" : "ForwardRef"), e;
83
+ case ce:
84
+ return s = e.displayName || null, s !== null ? s : r(e.type) || "Memo";
85
+ case $:
86
+ s = e._payload, e = e._init;
87
87
  try {
88
- return e(r(u));
88
+ return r(e(s));
89
89
  } catch {
90
90
  }
91
91
  }
92
92
  return null;
93
93
  }
94
- function t(r) {
95
- return "" + r;
94
+ function t(e) {
95
+ return "" + e;
96
96
  }
97
- function o(r) {
97
+ function n(e) {
98
98
  try {
99
- t(r);
100
- var u = !1;
99
+ t(e);
100
+ var s = !1;
101
101
  } catch {
102
- u = !0;
102
+ s = !0;
103
103
  }
104
- if (u) {
105
- u = console;
106
- var i = u.error, b = typeof Symbol == "function" && Symbol.toStringTag && r[Symbol.toStringTag] || r.constructor.name || "Object";
107
- return i.call(
108
- u,
104
+ if (s) {
105
+ s = console;
106
+ var a = s.error, h = typeof Symbol == "function" && Symbol.toStringTag && e[Symbol.toStringTag] || e.constructor.name || "Object";
107
+ return a.call(
108
+ s,
109
109
  "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
110
- b
111
- ), t(r);
110
+ h
111
+ ), t(e);
112
112
  }
113
113
  }
114
- function s(r) {
115
- if (r === R) return "<>";
116
- if (typeof r == "object" && r !== null && r.$$typeof === L)
114
+ function u(e) {
115
+ if (e === A) return "<>";
116
+ if (typeof e == "object" && e !== null && e.$$typeof === $)
117
117
  return "<...>";
118
118
  try {
119
- var u = e(r);
120
- return u ? "<" + u + ">" : "<...>";
119
+ var s = r(e);
120
+ return s ? "<" + s + ">" : "<...>";
121
121
  } catch {
122
122
  return "<...>";
123
123
  }
124
124
  }
125
- function n() {
126
- var r = I.A;
127
- return r === null ? null : r.getOwner();
125
+ function o() {
126
+ var e = y.A;
127
+ return e === null ? null : e.getOwner();
128
128
  }
129
129
  function l() {
130
130
  return Error("react-stack-top-frame");
131
131
  }
132
- function a(r) {
133
- if (G.call(r, "key")) {
134
- var u = Object.getOwnPropertyDescriptor(r, "key").get;
135
- if (u && u.isReactWarning) return !1;
132
+ function c(e) {
133
+ if (L.call(e, "key")) {
134
+ var s = Object.getOwnPropertyDescriptor(e, "key").get;
135
+ if (s && s.isReactWarning) return !1;
136
136
  }
137
- return r.key !== void 0;
137
+ return e.key !== void 0;
138
138
  }
139
- function g(r, u) {
140
- function i() {
139
+ function g(e, s) {
140
+ function a() {
141
141
  W || (W = !0, console.error(
142
142
  "%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
143
- u
143
+ s
144
144
  ));
145
145
  }
146
- i.isReactWarning = !0, Object.defineProperty(r, "key", {
147
- get: i,
146
+ a.isReactWarning = !0, Object.defineProperty(e, "key", {
147
+ get: a,
148
148
  configurable: !0
149
149
  });
150
150
  }
151
- function m() {
152
- var r = e(this.type);
153
- return U[r] || (U[r] = !0, console.error(
151
+ function i() {
152
+ var e = r(this.type);
153
+ return G[e] || (G[e] = !0, console.error(
154
154
  "Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
155
- )), r = this.props.ref, r !== void 0 ? r : null;
155
+ )), e = this.props.ref, e !== void 0 ? e : null;
156
156
  }
157
- function w(r, u, i, b, v, E, F, Y) {
158
- return i = E.ref, r = {
157
+ function _(e, s, a, h, R, E, I, N) {
158
+ return a = E.ref, e = {
159
159
  $$typeof: S,
160
- type: r,
161
- key: u,
160
+ type: e,
161
+ key: s,
162
162
  props: E,
163
- _owner: v
164
- }, (i !== void 0 ? i : null) !== null ? Object.defineProperty(r, "ref", {
163
+ _owner: R
164
+ }, (a !== void 0 ? a : null) !== null ? Object.defineProperty(e, "ref", {
165
165
  enumerable: !1,
166
- get: m
167
- }) : Object.defineProperty(r, "ref", { enumerable: !1, value: null }), r._store = {}, Object.defineProperty(r._store, "validated", {
166
+ get: i
167
+ }) : Object.defineProperty(e, "ref", { enumerable: !1, value: null }), e._store = {}, Object.defineProperty(e._store, "validated", {
168
168
  configurable: !1,
169
169
  enumerable: !1,
170
170
  writable: !0,
171
171
  value: 0
172
- }), Object.defineProperty(r, "_debugInfo", {
172
+ }), Object.defineProperty(e, "_debugInfo", {
173
173
  configurable: !1,
174
174
  enumerable: !1,
175
175
  writable: !0,
176
176
  value: null
177
- }), Object.defineProperty(r, "_debugStack", {
177
+ }), Object.defineProperty(e, "_debugStack", {
178
178
  configurable: !1,
179
179
  enumerable: !1,
180
180
  writable: !0,
181
- value: F
182
- }), Object.defineProperty(r, "_debugTask", {
181
+ value: I
182
+ }), Object.defineProperty(e, "_debugTask", {
183
183
  configurable: !1,
184
184
  enumerable: !1,
185
185
  writable: !0,
186
- value: Y
187
- }), Object.freeze && (Object.freeze(r.props), Object.freeze(r)), r;
186
+ value: N
187
+ }), Object.freeze && (Object.freeze(e.props), Object.freeze(e)), e;
188
188
  }
189
- function O(r, u, i, b, v, E, F, Y) {
190
- var h = u.children;
191
- if (h !== void 0)
192
- if (b)
193
- if (de(h)) {
194
- for (b = 0; b < h.length; b++)
195
- j(h[b]);
196
- Object.freeze && Object.freeze(h);
189
+ function O(e, s, a, h, R, E, I, N) {
190
+ var b = s.children;
191
+ if (b !== void 0)
192
+ if (h)
193
+ if (fe(b)) {
194
+ for (h = 0; h < b.length; h++)
195
+ j(b[h]);
196
+ Object.freeze && Object.freeze(b);
197
197
  } else
198
198
  console.error(
199
199
  "React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
200
200
  );
201
- else j(h);
202
- if (G.call(u, "key")) {
203
- h = e(r);
204
- var T = Object.keys(u).filter(function(fe) {
205
- return fe !== "key";
201
+ else j(b);
202
+ if (L.call(s, "key")) {
203
+ b = r(e);
204
+ var T = Object.keys(s).filter(function(me) {
205
+ return me !== "key";
206
206
  });
207
- b = 0 < T.length ? "{key: someKey, " + T.join(": ..., ") + ": ...}" : "{key: someKey}", J[h + b] || (T = 0 < T.length ? "{" + T.join(": ..., ") + ": ...}" : "{}", console.error(
207
+ h = 0 < T.length ? "{key: someKey, " + T.join(": ..., ") + ": ...}" : "{key: someKey}", q[b + h] || (T = 0 < T.length ? "{" + T.join(": ..., ") + ": ...}" : "{}", console.error(
208
208
  `A props object containing a "key" prop is being spread into JSX:
209
209
  let props = %s;
210
210
  <%s {...props} />
211
211
  React keys must be passed directly to JSX without using spread:
212
212
  let props = %s;
213
213
  <%s key={someKey} {...props} />`,
214
- b,
215
214
  h,
215
+ b,
216
216
  T,
217
- h
218
- ), J[h + b] = !0);
217
+ b
218
+ ), q[b + h] = !0);
219
219
  }
220
- if (h = null, i !== void 0 && (o(i), h = "" + i), a(u) && (o(u.key), h = "" + u.key), "key" in u) {
221
- i = {};
222
- for (var D in u)
223
- D !== "key" && (i[D] = u[D]);
224
- } else i = u;
225
- return h && g(
226
- i,
227
- typeof r == "function" ? r.displayName || r.name || "Unknown" : r
228
- ), w(
229
- r,
230
- h,
220
+ if (b = null, a !== void 0 && (n(a), b = "" + a), c(s) && (n(s.key), b = "" + s.key), "key" in s) {
221
+ a = {};
222
+ for (var F in s)
223
+ F !== "key" && (a[F] = s[F]);
224
+ } else a = s;
225
+ return b && g(
226
+ a,
227
+ typeof e == "function" ? e.displayName || e.name || "Unknown" : e
228
+ ), _(
229
+ e,
230
+ b,
231
231
  E,
232
- v,
233
- n(),
234
- i,
235
- F,
236
- Y
232
+ R,
233
+ o(),
234
+ a,
235
+ I,
236
+ N
237
237
  );
238
238
  }
239
- function j(r) {
240
- typeof r == "object" && r !== null && r.$$typeof === S && r._store && (r._store.validated = 1);
239
+ function j(e) {
240
+ typeof e == "object" && e !== null && e.$$typeof === S && e._store && (e._store.validated = 1);
241
241
  }
242
- var p = me, S = Symbol.for("react.transitional.element"), y = Symbol.for("react.portal"), R = Symbol.for("react.fragment"), P = Symbol.for("react.strict_mode"), d = Symbol.for("react.profiler"), ne = Symbol.for("react.consumer"), oe = Symbol.for("react.context"), ue = Symbol.for("react.forward_ref"), se = Symbol.for("react.suspense"), le = Symbol.for("react.suspense_list"), ae = Symbol.for("react.memo"), L = Symbol.for("react.lazy"), ie = Symbol.for("react.activity"), ce = Symbol.for("react.client.reference"), I = p.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, G = Object.prototype.hasOwnProperty, de = Array.isArray, N = console.createTask ? console.createTask : function() {
242
+ var p = he, S = Symbol.for("react.transitional.element"), m = Symbol.for("react.portal"), A = Symbol.for("react.fragment"), te = Symbol.for("react.strict_mode"), ne = Symbol.for("react.profiler"), oe = Symbol.for("react.consumer"), ue = Symbol.for("react.context"), se = Symbol.for("react.forward_ref"), le = Symbol.for("react.suspense"), ae = Symbol.for("react.suspense_list"), ce = Symbol.for("react.memo"), $ = Symbol.for("react.lazy"), ie = Symbol.for("react.activity"), de = Symbol.for("react.client.reference"), y = p.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, L = Object.prototype.hasOwnProperty, fe = Array.isArray, P = console.createTask ? console.createTask : function() {
243
243
  return null;
244
244
  };
245
245
  p = {
246
- react_stack_bottom_frame: function(r) {
247
- return r();
246
+ react_stack_bottom_frame: function(e) {
247
+ return e();
248
248
  }
249
249
  };
250
- var W, U = {}, B = p.react_stack_bottom_frame.bind(
250
+ var W, G = {}, U = p.react_stack_bottom_frame.bind(
251
251
  p,
252
252
  l
253
- )(), q = N(s(l)), J = {};
254
- k.Fragment = R, k.jsx = function(r, u, i, b, v) {
255
- var E = 1e4 > I.recentlyCreatedOwnerStacks++;
253
+ )(), B = P(u(l)), q = {};
254
+ k.Fragment = A, k.jsx = function(e, s, a, h, R) {
255
+ var E = 1e4 > y.recentlyCreatedOwnerStacks++;
256
256
  return O(
257
- r,
258
- u,
259
- i,
257
+ e,
258
+ s,
259
+ a,
260
260
  !1,
261
- b,
262
- v,
263
- E ? Error("react-stack-top-frame") : B,
264
- E ? N(s(r)) : q
261
+ h,
262
+ R,
263
+ E ? Error("react-stack-top-frame") : U,
264
+ E ? P(u(e)) : B
265
265
  );
266
- }, k.jsxs = function(r, u, i, b, v) {
267
- var E = 1e4 > I.recentlyCreatedOwnerStacks++;
266
+ }, k.jsxs = function(e, s, a, h, R) {
267
+ var E = 1e4 > y.recentlyCreatedOwnerStacks++;
268
268
  return O(
269
- r,
270
- u,
271
- i,
269
+ e,
270
+ s,
271
+ a,
272
272
  !0,
273
- b,
274
- v,
275
- E ? Error("react-stack-top-frame") : B,
276
- E ? N(s(r)) : q
273
+ h,
274
+ R,
275
+ E ? Error("react-stack-top-frame") : U,
276
+ E ? P(u(e)) : B
277
277
  );
278
278
  };
279
279
  }()), k;
280
280
  }
281
- var X;
282
- function Se() {
283
- return X || (X = 1, process.env.NODE_ENV === "production" ? A.exports = ke() : A.exports = Oe()), A.exports;
281
+ var H;
282
+ function we() {
283
+ return H || (H = 1, process.env.NODE_ENV === "production" ? w.exports = Oe() : w.exports = Se()), w.exports;
284
284
  }
285
- var f = Se();
286
- const ye = Q(void 0), $ = Q(void 0);
287
- function _(e, t) {
288
- const o = K($), [s, n] = M(c(() => t(e), [])), l = C(s);
289
- return V(() => {
290
- const a = t(e);
291
- Object.is(l.current, a) || (n(a), l.current = a);
292
- const g = ee(
285
+ var d = we();
286
+ const K = Z(void 0), V = Z(void 0);
287
+ function v(r, t) {
288
+ const n = D(V), [u, o] = Y(f(() => t(r), [])), l = C(u);
289
+ return M(() => {
290
+ const c = t(r);
291
+ Object.is(l.current, c) || (o(c), l.current = c);
292
+ const g = Q(
293
293
  () => {
294
- const m = t(e);
295
- Object.is(l.current, m) || (n(m), l.current = m);
294
+ const i = t(r);
295
+ Object.is(l.current, i) || (o(i), l.current = i);
296
296
  },
297
- { injector: o }
297
+ { injector: n }
298
298
  );
299
299
  return () => {
300
300
  g.destroy();
301
301
  };
302
- }, [e, c(() => t, [])]), s;
302
+ }, [r, f(() => t, [])]), u;
303
303
  }
304
- function re(e) {
305
- const t = c(
306
- () => e.wrappers.slice(1),
307
- [e.wrappers]
308
- ), o = e.wrappers[0], s = _(o, () => ({
309
- ...o?.inputs(),
310
- ...o?.attributes(),
311
- ...o?.outputs
304
+ function ee(r) {
305
+ const t = f(
306
+ () => r.wrappers.slice(1),
307
+ [r.wrappers]
308
+ ), n = r.wrappers[0], u = v(n, () => ({
309
+ ...n?.inputs(),
310
+ ...n?.attributes(),
311
+ ...n?.outputs
312
312
  }));
313
- return /* @__PURE__ */ f.jsx(f.Fragment, { children: o ? /* @__PURE__ */ f.jsx(o.type, { ...s, children: /* @__PURE__ */ f.jsx(re, { wrappers: t, children: e.children }) }) : e.children });
313
+ return /* @__PURE__ */ d.jsx(d.Fragment, { children: n ? /* @__PURE__ */ d.jsx(n.type, { ...u, children: /* @__PURE__ */ d.jsx(ee, { wrappers: t, children: r.children }) }) : r.children });
314
314
  }
315
315
  const Ae = Symbol.for("ControlValueAccessor");
316
- function te(e) {
317
- const t = _(e.field, (d) => d.inputs()), o = _(e.field, (d) => d.outputs()), s = _(e.field, (d) => d.attributes()), n = c(
318
- () => ({ ...s, ...t, ...o }),
319
- [s, t, o]
320
- ), l = _(
321
- e.field,
322
- (d) => d.renderConfig()
323
- ), a = _(
324
- e.field,
325
- (d) => d.fieldGroup?.()
326
- ), g = _(
327
- e.field,
328
- (d) => d.fieldArray?.()
329
- ), m = c(
330
- () => ({ ...n, fields: a }),
331
- [n, a]
332
- ), w = c(
333
- () => ({ ...n, fields: g }),
334
- [n, g]
335
- ), O = _(e.field, (d) => d.wrappers()), j = e.field.form.control, p = e.field.define?.type, S = c(() => !!l.hidden || !p, [l.hidden, p]), y = K($), R = C(void 0), P = c(
336
- () => ({ ...n, [Ae]: R }),
337
- [n, R]
316
+ function re(r) {
317
+ const t = v(r.field, (m) => m.inputs()), n = v(r.field, (m) => m.outputs()), u = v(r.field, (m) => m.attributes()), o = f(
318
+ () => ({ ...u, ...t, ...n }),
319
+ [u, t, n]
320
+ ), l = v(
321
+ r.field,
322
+ (m) => m.renderConfig()
323
+ ), c = v(
324
+ r.field,
325
+ (m) => m.children?.()
326
+ ), g = v(r.field, (m) => m.wrappers()), i = r.field.form.control, _ = r.field.define?.type, O = f(() => !!l.hidden || !_, [l.hidden, _]), j = D(V), p = C(void 0), S = f(
327
+ () => ({ ...o, [Ae]: p }),
328
+ [o, p]
338
329
  );
339
- return V(() => {
340
- let d;
341
- return R.current && (d = _e(
342
- () => j,
343
- R.current,
344
- y
330
+ return M(() => {
331
+ let m;
332
+ return p.current && (m = Te(
333
+ () => i,
334
+ p.current,
335
+ j
345
336
  )), () => {
346
- d?.(), d = void 0;
337
+ m?.(), m = void 0;
347
338
  };
348
- }, [R.current, j, y]), /* @__PURE__ */ f.jsx(f.Fragment, { children: /* @__PURE__ */ f.jsx(ye, { value: e.field, children: S ? void 0 : /* @__PURE__ */ f.jsx(re, { wrappers: O, children: a ? /* @__PURE__ */ f.jsx(p, { ...m }) : g ? /* @__PURE__ */ f.jsx(p, { ...w }) : e.field.form.control ? /* @__PURE__ */ f.jsx(p, { ...P }) : /* @__PURE__ */ f.jsx(p, { ...n }) }) }) });
349
- }
350
- function Ve(e) {
351
- return /* @__PURE__ */ f.jsx(f.Fragment, { children: e.fields.map((t, o) => /* @__PURE__ */ f.jsx(te, { field: t }, o)) });
352
- }
353
- class we extends Te {
354
- // contents?: any[];
339
+ }, [p.current, i, j]), /* @__PURE__ */ d.jsx(d.Fragment, { children: /* @__PURE__ */ d.jsx(K, { value: r.field, children: O ? void 0 : /* @__PURE__ */ d.jsx(ee, { wrappers: g, children: c ? /* @__PURE__ */ d.jsx(_, { ...o }) : r.field.form.control ? /* @__PURE__ */ d.jsx(_, { ...S }) : /* @__PURE__ */ d.jsx(_, { ...o }) }) }) });
355
340
  }
356
- class Pe extends Ce {
357
- }
358
- function Ie(e, t, o, s) {
359
- let n = !0;
360
- return ee(
341
+ function ye(r, t, n, u) {
342
+ let o = !0;
343
+ return Q(
361
344
  () => {
362
345
  const l = t.value$$();
363
- n ? (xe(l, e) || s(l), n = !1) : s(l);
346
+ o ? (ke(l, r) || u(l), o = !1) : u(l);
364
347
  },
365
- { injector: o }
348
+ { injector: n }
366
349
  );
367
350
  }
368
- function Z(e, t) {
369
- const o = be(e, t), s = C(void 0);
370
- c(() => (s.current = o(), s.current), t), V(() => () => {
371
- s.current?.(), s.current = void 0;
351
+ function Ve() {
352
+ const [r, t] = Y(void 0), [n, u] = Y(!1), o = C(void 0), l = C(void 0), c = f(() => ({
353
+ writeValue(i) {
354
+ t(i);
355
+ },
356
+ registerOnChange(i) {
357
+ o.current = i;
358
+ },
359
+ registerOnTouched(i) {
360
+ l.current = i;
361
+ },
362
+ setDisabledState(i) {
363
+ u(i);
364
+ }
365
+ }), []), g = f(() => ({
366
+ value: r,
367
+ disabled: n,
368
+ valueChange: (i) => {
369
+ o.current?.(i), t(i);
370
+ },
371
+ touchedChange: () => {
372
+ l.current?.();
373
+ }
374
+ }), [r, n]);
375
+ return f(() => ({
376
+ cva: c,
377
+ cvaa: g
378
+ }), [g]);
379
+ }
380
+ function X(r, t) {
381
+ const n = be(r, t), u = C(void 0);
382
+ f(() => (u.current = n(), u.current), t), M(() => () => {
383
+ u.current?.(), u.current = void 0;
372
384
  }, []);
373
385
  }
374
- function $e(e) {
375
- const t = c(() => he({
386
+ function $e(r) {
387
+ const t = D(K), n = v(t, (u) => u?.children());
388
+ return /* @__PURE__ */ d.jsx(d.Fragment, { children: n.map((u, o) => /* @__PURE__ */ d.jsx(re, { field: u }, o)) });
389
+ }
390
+ class Pe extends Ce {
391
+ // contents?: any[];
392
+ }
393
+ class Ie extends je {
394
+ }
395
+ function Le(r) {
396
+ const t = f(() => ge({
376
397
  providers: [
377
398
  {
378
- provide: pe,
379
- useClass: ge
399
+ provide: Ee,
400
+ useClass: pe
380
401
  }
381
402
  ]
382
- }), []), [o, s] = c(() => {
383
- const n = Ee({ providers: [], parent: t });
384
- return [je(e.schema, {
385
- handle: we,
386
- builder: Pe,
387
- injector: n,
388
- registerOnDestroy: (a) => {
389
- n.get(Re).onDestroy(a);
403
+ }), []), [n, u] = f(() => {
404
+ const o = Re({ providers: [], parent: t });
405
+ return [xe(r.schema, {
406
+ handle: Pe,
407
+ builder: Ie,
408
+ injector: o,
409
+ registerOnDestroy: (c) => {
410
+ o.get(ve).onDestroy(c);
390
411
  },
391
- ...e.options
392
- }), n];
393
- }, [e.schema, e.options]);
394
- return Z(() => {
395
- let n;
396
- if (o.form.control) {
397
- const l = e.model;
398
- n = Ie(
412
+ ...r.options
413
+ }), o];
414
+ }, [r.schema, r.options]);
415
+ return X(() => {
416
+ let o;
417
+ if (n.form.control) {
418
+ const l = r.model;
419
+ o = ye(
399
420
  typeof l < "u" ? l : void 0,
400
- o.form.control,
401
- s,
402
- (a) => {
403
- ve(() => {
404
- o.form.control?.valueNoError$$() && e.modelChange?.(a);
421
+ n.form.control,
422
+ u,
423
+ (c) => {
424
+ _e(() => {
425
+ n.form.control?.valueNoError$$() && r.modelChange?.(c);
405
426
  });
406
427
  }
407
428
  );
408
429
  }
409
430
  return () => {
410
- s.destroy(), n?.destroy();
431
+ u.destroy(), o?.destroy();
411
432
  };
412
- }, [o]), Z(() => {
413
- o.form.control?.updateValue(e.model);
414
- }, [o, e.model]), /* @__PURE__ */ f.jsx(f.Fragment, { children: /* @__PURE__ */ f.jsx($, { value: t, children: /* @__PURE__ */ f.jsx(te, { field: o }) }) });
433
+ }, [n]), X(() => {
434
+ n.form.control?.updateValue(r.model);
435
+ }, [n, r.model]), /* @__PURE__ */ d.jsx(d.Fragment, { children: /* @__PURE__ */ d.jsx(V, { value: t, children: /* @__PURE__ */ d.jsx(re, { field: n }) }) });
415
436
  }
416
- const Le = [], Ge = {
437
+ const We = [], Ge = {
417
438
  directives: "merge",
418
439
  formConfig: "merge",
419
440
  inputs: "merge",
@@ -422,143 +443,114 @@ const Le = [], Ge = {
422
443
  renderConfig: "merge",
423
444
  wrappers: "replace"
424
445
  };
425
- function We(e, t) {
426
- const o = C(!1);
427
- return c(() => {
428
- const s = {
429
- value: e.value == null ? "" : e.value,
430
- disabled: e.disabled,
431
- onBlur: e.touchedChange
446
+ function Ue(r, t) {
447
+ const n = C(!1);
448
+ return f(() => {
449
+ const u = {
450
+ value: r.value == null ? "" : r.value,
451
+ disabled: r.disabled,
452
+ onBlur: r.touchedChange
432
453
  };
433
454
  return t ? {
434
- ...s,
455
+ ...u,
435
456
  onCompositionStart: () => {
436
- o.current = !0;
457
+ n.current = !0;
437
458
  },
438
- onCompositionEnd: (n) => {
439
- o.current = !1, e.valueChange(n.target.value);
459
+ onCompositionEnd: (o) => {
460
+ n.current = !1, r.valueChange(o.target.value);
440
461
  }
441
462
  } : {
442
- ...s,
443
- onInput: (n) => e.valueChange(n.target.value)
463
+ ...u,
464
+ onInput: (o) => r.valueChange(o.target.value)
444
465
  };
445
- }, [e, t]);
466
+ }, [r, t]);
446
467
  }
447
- function Ue(e) {
448
- return c(() => ({
449
- checked: e.value ?? !1,
450
- disabled: e.disabled,
451
- onBlur: e.touchedChange,
452
- onChange: (t) => e.valueChange(t.target.checked)
453
- }), [e]);
468
+ function Be(r) {
469
+ return f(() => ({
470
+ checked: r.value ?? !1,
471
+ disabled: r.disabled,
472
+ onBlur: r.touchedChange,
473
+ onChange: (t) => r.valueChange(t.target.checked)
474
+ }), [r]);
454
475
  }
455
- function Be(e) {
456
- return c(() => ({
457
- value: e.value == null ? "" : e.value,
458
- disabled: e.disabled,
459
- onBlur: e.touchedChange,
476
+ function qe(r) {
477
+ return f(() => ({
478
+ value: r.value == null ? "" : r.value,
479
+ disabled: r.disabled,
480
+ onBlur: r.touchedChange,
460
481
  onInput: (t) => {
461
- const o = t.target.value;
462
- e.valueChange(o == "" ? void 0 : parseFloat(o));
482
+ const n = t.target.value;
483
+ r.valueChange(n == "" ? void 0 : parseFloat(n));
463
484
  }
464
- }), [e]);
485
+ }), [r]);
465
486
  }
466
- function qe(e, t) {
467
- return c(() => ({
487
+ function Je(r, t) {
488
+ return f(() => ({
468
489
  value: t,
469
- checked: Object.is(e.value, t),
470
- disabled: e.disabled,
471
- onBlur: e.touchedChange,
472
- onChange: () => e.valueChange(t)
473
- }), [e]);
490
+ checked: Object.is(r.value, t),
491
+ disabled: r.disabled,
492
+ onBlur: r.touchedChange,
493
+ onChange: () => r.valueChange(t)
494
+ }), [r]);
474
495
  }
475
- function Je(e) {
476
- return c(() => {
477
- const t = (o) => {
478
- const s = o.target.value;
479
- e.valueChange(s == "" ? void 0 : parseFloat(s));
496
+ function ze(r) {
497
+ return f(() => {
498
+ const t = (n) => {
499
+ const u = n.target.value;
500
+ r.valueChange(u == "" ? void 0 : parseFloat(u));
480
501
  };
481
502
  return {
482
- value: e.value == null ? "" : e.value,
483
- disabled: e.disabled,
484
- onBlur: e.touchedChange,
503
+ value: r.value == null ? "" : r.value,
504
+ disabled: r.disabled,
505
+ onBlur: r.touchedChange,
485
506
  onInput: t,
486
507
  onChange: t
487
508
  };
488
- }, [e]);
509
+ }, [r]);
489
510
  }
490
- function ze(e, t = !1) {
491
- return c(() => ({
492
- value: e.value,
493
- disabled: e.disabled,
494
- onBlur: e.touchedChange,
495
- onChange: (o) => {
496
- const s = [], n = o.target;
497
- if (n.selectedOptions !== void 0)
498
- for (let l = 0; l < n.selectedOptions.length; l++) {
499
- const a = n.selectedOptions[l];
500
- if (s.push(a.value), !t)
511
+ function He(r, t = !1) {
512
+ return f(() => ({
513
+ value: r.value,
514
+ disabled: r.disabled,
515
+ onBlur: r.touchedChange,
516
+ onChange: (n) => {
517
+ const u = [], o = n.target;
518
+ if (o.selectedOptions !== void 0)
519
+ for (let l = 0; l < o.selectedOptions.length; l++) {
520
+ const c = o.selectedOptions[l];
521
+ if (u.push(c.value), !t)
501
522
  break;
502
523
  }
503
524
  else
504
- for (let l = 0; l < n.options.length; l++) {
505
- const a = n.options[l];
506
- if (a.selected && (s.push(a.value), !t))
525
+ for (let l = 0; l < o.options.length; l++) {
526
+ const c = o.options[l];
527
+ if (c.selected && (u.push(c.value), !t))
507
528
  break;
508
529
  }
509
- e.valueChange(t ? s : s[0]);
530
+ r.valueChange(t ? u : u[0]);
510
531
  }
511
- }), [e]);
512
- }
513
- function He() {
514
- const [e, t] = M(void 0), [o, s] = M(!1), n = C(void 0), l = C(void 0), a = c(() => ({
515
- writeValue(m) {
516
- t(m);
517
- },
518
- registerOnChange(m) {
519
- n.current = m;
520
- },
521
- registerOnTouched(m) {
522
- l.current = m;
523
- },
524
- setDisabledState(m) {
525
- s(m);
526
- }
527
- }), []), g = c(() => ({
528
- value: e,
529
- disabled: o,
530
- valueChange: (m) => {
531
- n.current?.(m), t(m);
532
- },
533
- touchedChange: () => {
534
- l.current?.();
535
- }
536
- }), [e, o]);
537
- return c(() => ({
538
- cva: a,
539
- cvaa: g
540
- }), [g]);
532
+ }), [r]);
541
533
  }
542
534
  export {
543
535
  Ae as CVA,
544
- Le as EMPTY_ARRAY,
545
- $ as InjectorToken,
536
+ We as EMPTY_ARRAY,
537
+ V as InjectorToken,
546
538
  Ge as NG_CONFIG_DEFAULT_MERGE_STRAGEGY,
547
- ye as PI_VIEW_FIELD_TOKEN,
548
- te as PiyingFieldTemplate,
549
- Ve as PiyingGroup,
550
- $e as PiyingView,
551
- re as PiyingWrapper,
552
- Pe as ReactFormBuilder,
553
- we as ReactSchemaHandle,
554
- Ie as initListen,
555
- He as useControlValueAccessor,
556
- Z as useEffectSync,
557
- Ue as useInputCheckboxModel,
558
- Be as useInputNumberModel,
559
- qe as useInputRadioModel,
560
- Je as useInputRangeModel,
561
- We as useInputTextModel,
562
- ze as useSelectModel,
563
- _ as useSignalToRef
539
+ K as PI_VIEW_FIELD_TOKEN,
540
+ re as PiyingFieldTemplate,
541
+ $e as PiyingGroup,
542
+ Le as PiyingView,
543
+ ee as PiyingWrapper,
544
+ Ie as ReactFormBuilder,
545
+ Pe as ReactSchemaHandle,
546
+ ye as initListen,
547
+ Ve as useControlValueAccessor,
548
+ X as useEffectSync,
549
+ Be as useInputCheckboxModel,
550
+ qe as useInputNumberModel,
551
+ Je as useInputRadioModel,
552
+ ze as useInputRangeModel,
553
+ Ue as useInputTextModel,
554
+ He as useSelectModel,
555
+ v as useSignalToRef
564
556
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@piying/view-react",
3
- "version": "1.2.2",
3
+ "version": "1.3.2",
4
4
  "description": "Piying view For React;Valibot to Component",
5
5
  "type": "module",
6
6
  "homepage": "https://piying-org.github.io/website/docs/client/intro",
@@ -34,7 +34,7 @@
34
34
  ],
35
35
  "license": "MIT",
36
36
  "dependencies": {
37
- "@piying/view-core": "^1.2.2",
37
+ "@piying/view-core": "^1.3.2",
38
38
  "fast-equals": "^5.2.2",
39
39
  "static-injector": "^6.1.2",
40
40
  "valibot": "^1.1.0"
package/readme.md CHANGED
@@ -1 +1,27 @@
1
- [document](https://piying-org.github.io/website/docs/client/intro)
1
+ <div><a href="https://www.npmjs.com/package/@piying/view-core"><img src="https://img.shields.io/npm/v/@piying/view-core" alt="NPM Version" /></a> <a href="https://coveralls.io/github/piying-org/piying-view?branch=main"><img src="https://coveralls.io/repos/github/piying-org/piying-view/badge.svg" alt="Coverage Status" ></a> <a href=""><img src="https://img.shields.io/badge/License-MIT-teal.svg" alt="MIT License" /></a></div>
2
+
3
+ ## document
4
+
5
+ - https://piying-org.github.io/website/docs/client/intro
6
+
7
+ ## start
8
+
9
+ - npm i
10
+ - npm run build:core
11
+
12
+ ## test
13
+
14
+ - npx playwright install
15
+ - npm run test:all
16
+
17
+ ### test Core/Angular
18
+
19
+ - npm run test
20
+
21
+ ### test Vue
22
+
23
+ - npm run test:vue
24
+
25
+ ### test React
26
+
27
+ - npm run test:react