@foormjs/vue 0.2.4 → 0.2.5
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.
- package/README.md +385 -236
- package/dist/index.cjs +1 -0
- package/dist/index.css +1 -0
- package/dist/index.d.ts +446 -216
- package/dist/index.js +1554 -371
- package/package.json +29 -25
- package/scripts/setup-skills.js +78 -0
- package/skills/foormjs-vue/.placeholder +0 -0
- package/skills/foormjs-vue/SKILL.md +53 -0
- package/skills/foormjs-vue/composables.md +189 -0
- package/skills/foormjs-vue/core.md +279 -0
- package/skills/foormjs-vue/custom-components.md +677 -0
- package/skills/foormjs-vue/defaults.md +266 -0
- package/skills/foormjs-vue/rendering.md +175 -0
- package/dist/index.umd.cjs +0 -1
- package/dist/style.css +0 -1
package/dist/index.cjs
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),ge=require("@foormjs/composables"),n=require("@foormjs/atscript"),qe=e.computed(()=>"");function se(o){const t=e.inject("__foorm_form");if(!t)throw new Error(`${o} must be used inside an OoForm component`);const l=t,i=e.inject("__foorm_root_data");if(!i)throw new Error(`${o} must be used inside an OoForm component (missing root data)`);const a=()=>i.value,d=e.inject("__foorm_path_prefix",qe),c=e.inject("__foorm_form_context"),m=e.computed(()=>c?.value??{});function v(f){return e.computed(()=>{const p=typeof f=="function"?f():f;return p?d.value?`${d.value}.${p}`:p:d.value})}function F(f){return f?d.value?`${d.value}.${f}`:f:d.value}function y(f){return n.getByPath(a(),f)}function b(f,p){n.setByPath(a(),f,p)}function B(f,p){const h=a();return{v:f,data:h.value,context:m.value,entry:p}}return{foormState:l,rootFormData:a,pathPrefix:d,formContext:m,joinPath:v,buildPath:F,getByPath:y,setByPath:b,buildScope:B}}function q(){const o=e.inject("__foorm_union",void 0);return e.provide("__foorm_union",void 0),o}function me(o,t){return t!==void 0?o?`${o} #${t+1}`:`#${t+1}`:o}const Ue={key:1},Q={v:void 0,data:{},context:{},entry:void 0},A=e.defineComponent({__name:"oo-field",props:{field:{},error:{},onRemove:{type:Function},canRemove:{type:Boolean},removeLabel:{},arrayIndex:{}},setup(o){const t=o,l=e.inject("__foorm_types"),i=e.inject("__foorm_components"),a=e.inject("__foorm_errors"),d=e.inject("__foorm_action_handler",()=>{}),c=e.inject("__foorm_change_handler",()=>{}),{rootFormData:m,formContext:v,joinPath:F,buildPath:y,getByPath:b,setByPath:B,buildScope:f}=se("OoField"),p=F(()=>t.field.path),h=n.isObjectField(t.field)||n.isArrayField(t.field)||n.isTupleField(t.field),C=n.isUnionField(t.field),D=e.inject("__foorm_level",e.computed(()=>-1)),$=h?D.value+1:-1;(h||C)&&e.provide("__foorm_path_prefix",e.computed(()=>p.value)),h&&e.provide("__foorm_level",e.computed(()=>$));const u=s=>e.isRef(s)?s.value:s;function k(s,w,N){return s?e.computed(w):N}function E(s,w,N){return{...typeof s=="string"?{[s]:!0}:s,disabled:w,required:N}}const r=t.field.prop,V=n.getFieldMeta(r,"foorm.autocomplete"),U=n.getFieldMeta(r,"expect.maxLength")?.length,L=n.getFieldMeta(r,"foorm.component"),T=n.getFieldMeta(r,"foorm.altAction"),ee=T?{id:T.id,label:T.label??n.getFieldMeta(r,"meta.label")??t.field.name}:void 0,g=n.createFieldValidator(r,h||C?{rootOnly:!0}:void 0);function x(){return b(p.value)}function O(s){B(p.value,s)}function K(s){if(s){const w=n.createFoormValueResolver(m().value,v.value);O(n.createFormData(t.field.prop,w).value)}else O(void 0);c("update",p.value,x())}const pe=e.computed(()=>L?i?.value?.[L]:l?.value?.[t.field.type]);let S,z,I,M,W,X,oe,te,ne,le,ae,re,ie,de,ce,Y;const j=n.getFieldMeta(r,"meta.required")!==void 0;if(t.field.allStatic)Y=!1,S=n.getFieldMeta(r,"foorm.disabled")!==void 0,z=n.getFieldMeta(r,"foorm.hidden")!==void 0,I=t.field.prop.optional??!1,M=n.getFieldMeta(r,"foorm.readonly")!==void 0,W=t.field.phantom?void 0:j,X=n.getFieldMeta(r,"meta.label")??t.field.name,oe=n.getFieldMeta(r,"meta.description"),te=n.getFieldMeta(r,"meta.hint"),ne=n.getFieldMeta(r,"meta.placeholder"),ae=n.getFieldMeta(r,"foorm.styles"),re=n.resolveOptions(r,Q),ie=n.getFieldMeta(r,"foorm.attr")!==void 0?n.resolveAttrs(r,Q):void 0,le=h?n.getFieldMeta(r,"foorm.title")??n.getFieldMeta(r,"meta.label")??t.field.name:void 0,de=E(n.getFieldMeta(r,"foorm.classes"),S,j),ce=t.field.phantom?n.getFieldMeta(r,"foorm.value"):void 0;else{const s=new Set;for(const J of r.metadata.keys())J.startsWith("foorm.fn.")&&s.add(J.slice(9));Y=n.getFieldMeta(r,"foorm.validate")!==void 0;const w=s.has("disabled")||s.has("hidden")||s.has("readonly"),N=s.has("label")||s.has("description")||s.has("hint")||s.has("placeholder")||s.has("classes")||s.has("styles")||s.has("options")||s.has("value")||s.has("attr")||s.has("title")||Y,H=w||N?e.computed(()=>f(x())):void 0,ue={staticAsBoolean:!0};S=k(s.has("disabled"),()=>n.resolveFieldProp(r,"foorm.fn.disabled","foorm.disabled",H.value,ue)??!1,n.getFieldMeta(r,"foorm.disabled")!==void 0),z=k(s.has("hidden"),()=>n.resolveFieldProp(r,"foorm.fn.hidden","foorm.hidden",H.value,ue)??!1,n.getFieldMeta(r,"foorm.hidden")!==void 0),I=t.field.prop.optional??!1,M=k(s.has("readonly"),()=>n.resolveFieldProp(r,"foorm.fn.readonly","foorm.readonly",H.value,ue)??!1,n.getFieldMeta(r,"foorm.readonly")!==void 0),W=t.field.phantom?void 0:j;const R=N?e.computed(()=>n.buildFieldEntry(r,H.value,t.field.path,{type:t.field.type,component:L,name:t.field.name,optional:u(I),disabled:u(S),hidden:u(z),readonly:u(M)})):void 0;if(X=k(s.has("label"),()=>n.resolveFieldProp(r,"foorm.fn.label","meta.label",R.value)??t.field.name,n.getFieldMeta(r,"meta.label")??t.field.name),oe=k(s.has("description"),()=>n.resolveFieldProp(r,"foorm.fn.description","meta.description",R.value),n.getFieldMeta(r,"meta.description")),te=k(s.has("hint"),()=>n.resolveFieldProp(r,"foorm.fn.hint","meta.hint",R.value),n.getFieldMeta(r,"meta.hint")),ne=k(s.has("placeholder"),()=>n.resolveFieldProp(r,"foorm.fn.placeholder","meta.placeholder",R.value),n.getFieldMeta(r,"meta.placeholder")),ae=k(s.has("styles"),()=>n.resolveFieldProp(r,"foorm.fn.styles","foorm.styles",R.value),n.getFieldMeta(r,"foorm.styles")),re=k(s.has("options"),()=>n.resolveOptions(r,R.value),n.resolveOptions(r,Q)),ie=s.has("attr")||n.getFieldMeta(r,"foorm.attr")!==void 0?s.has("attr")?e.computed(()=>n.resolveAttrs(r,R.value)):n.resolveAttrs(r,Q):void 0,le=h?k(s.has("title"),()=>n.resolveFieldProp(r,"foorm.fn.title","foorm.title",R.value)??n.getFieldMeta(r,"meta.label")??t.field.name,n.getFieldMeta(r,"foorm.title")??n.getFieldMeta(r,"meta.label")??t.field.name):void 0,de=s.has("classes")||typeof S!="boolean"?e.computed(()=>E(s.has("classes")?n.resolveFieldProp(r,"foorm.fn.classes",void 0,R.value):n.getFieldMeta(r,"foorm.classes"),u(S),j)):E(n.getFieldMeta(r,"foorm.classes"),S,j),ce=t.field.phantom?k(s.has("value"),()=>n.resolveFieldProp(r,"foorm.fn.value","foorm.value",R.value),n.getFieldMeta(r,"foorm.value")):void 0,s.has("value")&&!t.field.phantom){const J=e.computed(()=>{if(u(M))return n.resolveFieldProp(r,"foorm.fn.value","foorm.value",R.value)});e.watch(J,Be=>{Be!==void 0&&u(M)&&B(p.value,Be)},{immediate:!0})}}function Me(s){return g(s,Y?{data:m(),context:v.value}:void 0)}const Ne=t.field.prop.optional??!1,{model:G,error:Pe,onBlur:ye}=ge.useFoormField({getValue:x,setValue:O,rules:[Me],path:()=>p.value,...Ne?{resetValue:void 0}:n.isArrayField(t.field)||n.isTupleField(t.field)?{resetValue:[]}:n.isObjectField(t.field)?{resetValue:{}}:{}});let he=G.value;const Ae=h||C?ye:()=>{ye();const s=G.value;s!==he&&(he=s,c("update",p.value,s))},be=e.computed(()=>{const s=y(t.field.path);return(s?a?.value?.[s]:void 0)??t.error??Pe.value}),Te={onBlur:Ae,model:{get value(){return G.value},set value(s){G.value=s}},type:t.field.type,altAction:ee,name:t.field.name,field:t.field,maxLength:U,autocomplete:V,level:h?$:void 0},Ie=e.computed(()=>({value:u(ce),label:u(X),description:u(oe),hint:u(te),placeholder:u(ne),style:u(ae),optional:u(I),onToggleOptional:u(I)?K:void 0,required:W!==void 0?u(W):void 0,disabled:u(S),hidden:u(z),readonly:u(M),options:u(re),title:u(le),onRemove:t.onRemove,canRemove:t.canRemove,removeLabel:t.removeLabel,arrayIndex:t.arrayIndex,...u(ie)})),je=e.computed(()=>({...Te,...Ie.value,error:be.value,class:{...u(de),error:!!be.value}}));return(s,w)=>pe.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(pe.value),e.mergeProps({key:0},je.value,{onAction:e.unref(d)}),null,16,["onAction"])):(e.openBlock(),e.createElementBlock("div",Ue," ["+e.toDisplayString(u(e.unref(X)))+'] No component for type "'+e.toDisplayString(o.field.type)+'"'+e.toDisplayString(e.unref(L)?` (component "${e.unref(L)}" not supplied)`:""),1))}}),Ke=["disabled"],ze=e.defineComponent({__name:"oo-form",props:{def:{},formData:{},formContext:{},firstValidation:{},components:{},types:{},errors:{}},emits:["submit","error","action","unsupported-action","change"],setup(o,{emit:t}){const l=o,i=e.ref({}),a=e.computed(()=>l.formData||i.value);function d(){return a.value.value}const c=e.computed(()=>n.getFormValidator(l.def)),{clearErrors:m,reset:v,submit:F,setErrors:y}=ge.useFoormForm({formData:a,formContext:e.computed(()=>l.formContext),firstValidation:e.computed(()=>l.firstValidation),submitValidator:()=>c.value({data:d(),context:l.formContext??{}})});e.provide("__foorm_root_data",e.computed(()=>a.value)),e.provide("__foorm_path_prefix",e.computed(()=>"")),e.provide("__foorm_types",e.computed(()=>l.types)),e.provide("__foorm_components",e.computed(()=>l.components)),e.provide("__foorm_errors",e.computed(()=>l.errors));const b=e.computed(()=>({v:void 0,data:d(),context:l.formContext??{},entry:void 0})),B=e.computed(()=>n.resolveFormProp(l.def.type,"foorm.fn.submit.text","foorm.submit.text",b.value)??"Submit"),f=e.computed(()=>n.resolveFormProp(l.def.type,"foorm.fn.submit.disabled","foorm.submit.disabled",b.value)??!1),p=t,h=()=>e.toRaw(d());function C(u){n.supportsAltAction(l.def,u)?p("action",u,h()):p("unsupported-action",u,h())}e.provide("__foorm_action_handler",C);function D(u,k,E){p("change",u,k,E,h())}e.provide("__foorm_change_handler",D);function $(){const u=F();u===!0?p("submit",h()):p("error",u)}return(u,k)=>(e.openBlock(),e.createElementBlock("form",{onSubmit:e.withModifiers($,["prevent"])},[e.renderSlot(u.$slots,"form.header",{clearErrors:e.unref(m),reset:e.unref(v),setErrors:e.unref(y),formContext:o.formContext,disabled:f.value}),e.renderSlot(u.$slots,"form.before",{clearErrors:e.unref(m),reset:e.unref(v),setErrors:e.unref(y)}),e.createVNode(A,{field:o.def.rootField},null,8,["field"]),e.renderSlot(u.$slots,"form.after",{clearErrors:e.unref(m),reset:e.unref(v),setErrors:e.unref(y),disabled:f.value,formContext:o.formContext}),e.renderSlot(u.$slots,"form.submit",{disabled:f.value,text:B.value,clearErrors:e.unref(m),reset:e.unref(v),setErrors:e.unref(y),formContext:o.formContext},()=>[e.createElementVNode("button",{disabled:f.value},e.toDisplayString(B.value),9,Ke)]),e.renderSlot(u.$slots,"form.footer",{disabled:f.value,clearErrors:e.unref(m),reset:e.unref(v),setErrors:e.unref(y),formContext:o.formContext})],32))}}),ke=e.defineComponent({__name:"oo-iterator",props:{def:{},pathPrefix:{},onRemove:{type:Function},canRemove:{type:Boolean},removeLabel:{}},setup(o){const t=o,l=e.inject("__foorm_path_prefix",e.computed(()=>"")),i=e.computed(()=>t.pathPrefix!==void 0?l.value?`${l.value}.${t.pathPrefix}`:t.pathPrefix:l.value);return e.provide("__foorm_path_prefix",i),(a,d)=>(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.def.fields,c=>(e.openBlock(),e.createBlock(A,{key:c.path??c.name,field:c,"on-remove":o.onRemove,"can-remove":o.canRemove,"remove-label":o.removeLabel},null,8,["field","on-remove","can-remove","remove-label"]))),128))}}),We={class:"oo-no-data-text"},P=e.defineComponent({__name:"oo-no-data",props:{onEdit:{type:Function}},setup(o){const t=e.ref(!1);return(l,i)=>(e.openBlock(),e.createElementBlock("div",{class:"oo-no-data",onMouseenter:i[0]||(i[0]=a=>t.value=!0),onMouseleave:i[1]||(i[1]=a=>t.value=!1),onClick:i[2]||(i[2]=(...a)=>o.onEdit&&o.onEdit(...a)),role:"button",tabindex:"0",onKeydown:[i[3]||(i[3]=e.withKeys((...a)=>o.onEdit&&o.onEdit(...a),["enter"])),i[4]||(i[4]=e.withKeys(e.withModifiers((...a)=>o.onEdit&&o.onEdit(...a),["prevent"]),["space"]))]},[e.createElementVNode("span",We,e.toDisplayString(t.value?"Edit":"No Data"),1)],32))}});function ve(o){const t=e.ref(!1);function l(){t.value=!t.value}function i(){t.value=!1}function a(c){c(),i()}function d(c){o.value&&!o.value.contains(c.target)&&i()}return e.watch(t,c=>{c?document.addEventListener("click",d,!0):document.removeEventListener("click",d,!0)}),e.onBeforeUnmount(()=>document.removeEventListener("click",d,!0)),{isOpen:t,toggle:l,close:i,select:a}}const Xe=["disabled","title"],Ye={key:0,class:"oo-dropdown-menu"},Ge=["onClick"],Fe=e.defineComponent({__name:"oo-variant-picker",props:{unionContext:{},disabled:{type:Boolean}},setup(o){const t=e.ref(null),{isOpen:l,toggle:i,select:a}=ve(t);function d(c,m){a(()=>c.changeVariant(m))}return(c,m)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"dropdownRef",ref:t,class:"oo-dropdown"},[e.createElementVNode("button",{type:"button",class:"oo-variant-trigger",disabled:o.disabled,title:o.unionContext.variants[o.unionContext.currentIndex.value]?.label??"Switch variant",onClick:m[0]||(m[0]=(...v)=>e.unref(i)&&e.unref(i)(...v))},[...m[1]||(m[1]=[e.createElementVNode("svg",{width:"14",height:"14",viewBox:"0 0 16 16",fill:"none"},[e.createElementVNode("circle",{cx:"3",cy:"8",r:"1.5",fill:"currentColor"}),e.createElementVNode("circle",{cx:"8",cy:"8",r:"1.5",fill:"currentColor"}),e.createElementVNode("circle",{cx:"13",cy:"8",r:"1.5",fill:"currentColor"})],-1)])],8,Xe),e.unref(l)?(e.openBlock(),e.createElementBlock("div",Ye,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.unionContext.variants,(v,F)=>(e.openBlock(),e.createElementBlock("button",{key:F,type:"button",class:e.normalizeClass(["oo-dropdown-item",{"oo-dropdown-item--active":o.unionContext.currentIndex.value===F}]),onClick:y=>d(o.unionContext,F)},e.toDisplayString(v.label),11,Ge))),128))])):e.createCommentVNode("",!0)],512))}}),He={key:0,class:"oo-field-header-row"},Je={class:"oo-field-header-content"},Qe={key:0,class:"oo-field-header-actions"},Ze=["disabled","aria-label"],_e={class:"oo-field-input-row"},eo=["role"],_=e.defineComponent({__name:"oo-field-shell",props:{onBlur:{type:Function},error:{},model:{},value:{},label:{},description:{},hint:{},placeholder:{},class:{},style:{},optional:{type:Boolean},onToggleOptional:{type:Function},required:{type:Boolean},readonly:{type:Boolean},type:{},altAction:{},name:{},field:{},options:{},maxLength:{},autocomplete:{},title:{},level:{},onRemove:{type:Function},canRemove:{type:Boolean},removeLabel:{},arrayIndex:{},disabled:{type:Boolean},hidden:{type:Boolean},fieldClass:{},idPrefix:{}},setup(o){const t=o,l=e.useId(),i=t.idPrefix??"oo-field",a=`${i}-${l}`,d=`${i}-${l}-err`,c=`${i}-${l}-desc`,m=e.computed(()=>t.model?.value!==void 0),v=q(),F=v!==void 0&&v.variants.length>1,y=e.computed(()=>me(t.label,t.arrayIndex));return(b,B)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["oo-default-field",[o.fieldClass,b.$props.class]])},[y.value||o.onRemove||o.optional&&m.value||e.unref(F)||b.$slots.header?(e.openBlock(),e.createElementBlock("div",He,[e.createElementVNode("div",Je,[b.$slots.header?e.renderSlot(b.$slots,"header",{key:0,inputId:a,descId:c,optionalEnabled:m.value}):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[y.value?(e.openBlock(),e.createElementBlock("label",{key:0,for:a},e.toDisplayString(y.value),1)):e.createCommentVNode("",!0),o.description?(e.openBlock(),e.createElementBlock("span",{key:1,id:c},e.toDisplayString(o.description),1)):e.createCommentVNode("",!0)],64)),e.unref(F)?(e.openBlock(),e.createBlock(Fe,{key:2,"union-context":e.unref(v),disabled:o.disabled},null,8,["union-context","disabled"])):e.createCommentVNode("",!0)]),o.optional&&m.value||o.onRemove?(e.openBlock(),e.createElementBlock("div",Qe,[o.optional&&m.value?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"oo-optional-clear",onClick:B[0]||(B[0]=f=>o.onToggleOptional?.(!1))}," × ")):e.createCommentVNode("",!0),o.onRemove?(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:"oo-field-remove-btn",disabled:!o.canRemove,"aria-label":o.removeLabel||"Remove item",onClick:B[1]||(B[1]=(...f)=>o.onRemove&&o.onRemove(...f))},e.toDisplayString(o.removeLabel||"Remove"),9,Ze)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),o.optional&&!m.value?(e.openBlock(),e.createBlock(P,{key:1,"on-edit":()=>o.onToggleOptional?.(!0)},null,8,["on-edit"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[e.createElementVNode("div",_e,[e.renderSlot(b.$slots,"default",{inputId:a,errorId:d,descId:c})]),e.renderSlot(b.$slots,"after-input",{descId:c}),e.createElementVNode("div",{id:d,class:"oo-error-slot",role:o.error?"alert":void 0},e.toDisplayString(o.error||o.hint),9,eo)],64))],2)),[[e.vShow,!o.hidden]])}}),oo=["id","placeholder","autocomplete","name","type","disabled","readonly","aria-required","aria-invalid","aria-describedby","aria-label"],Z=e.defineComponent({__name:"oo-input",props:{onBlur:{type:Function},error:{},model:{},value:{},label:{},description:{},hint:{},placeholder:{},class:{},style:{},optional:{type:Boolean},onToggleOptional:{type:Function},required:{type:Boolean},readonly:{type:Boolean},type:{},altAction:{},name:{},field:{},options:{},maxLength:{},autocomplete:{},title:{},level:{},onRemove:{type:Function},canRemove:{type:Boolean},removeLabel:{},arrayIndex:{},disabled:{type:Boolean},hidden:{type:Boolean}},setup(o){return(t,l)=>(e.openBlock(),e.createBlock(_,e.mergeProps(t.$props,{"id-prefix":"oo-input"}),{default:e.withCtx(({inputId:i,errorId:a,descId:d})=>[e.withDirectives(e.createElementVNode("input",{id:i,"onUpdate:modelValue":l[0]||(l[0]=c=>o.model.value=c),onBlur:l[1]||(l[1]=(...c)=>o.onBlur&&o.onBlur(...c)),placeholder:o.placeholder,autocomplete:o.autocomplete,name:o.name,type:o.type,disabled:o.disabled,readonly:o.readonly,"aria-required":o.required||void 0,"aria-invalid":!!o.error||void 0,"aria-describedby":o.error||o.hint?a:o.description?d:void 0,"aria-label":o.label?void 0:o.name},null,40,oo),[[e.vModelDynamic,o.model.value]])]),_:1},16))}}),to=["id","name","disabled","readonly","aria-required","aria-invalid","aria-describedby","aria-label"],no={key:0,value:"",disabled:""},lo=["value"],xe=e.defineComponent({__name:"oo-select",props:{onBlur:{type:Function},error:{},model:{},value:{},label:{},description:{},hint:{},placeholder:{},class:{},style:{},optional:{type:Boolean},onToggleOptional:{type:Function},required:{type:Boolean},readonly:{type:Boolean},type:{},altAction:{},name:{},field:{},options:{},maxLength:{},autocomplete:{},title:{},level:{},onRemove:{type:Function},canRemove:{type:Boolean},removeLabel:{},arrayIndex:{},disabled:{type:Boolean},hidden:{type:Boolean}},setup(o){return(t,l)=>(e.openBlock(),e.createBlock(_,e.mergeProps(t.$props,{"id-prefix":"oo-select"}),{default:e.withCtx(({inputId:i,errorId:a,descId:d})=>[e.withDirectives(e.createElementVNode("select",{id:i,"onUpdate:modelValue":l[0]||(l[0]=c=>o.model.value=c),onChange:l[1]||(l[1]=(...c)=>o.onBlur&&o.onBlur(...c)),onBlur:l[2]||(l[2]=(...c)=>o.onBlur&&o.onBlur(...c)),name:o.name,disabled:o.disabled,readonly:o.readonly,"aria-required":o.required||void 0,"aria-invalid":!!o.error||void 0,"aria-describedby":o.error||o.hint?a:o.description?d:void 0,"aria-label":o.label?void 0:o.name},[o.placeholder?(e.openBlock(),e.createElementBlock("option",no,e.toDisplayString(o.placeholder),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.options,c=>(e.openBlock(),e.createElementBlock("option",{key:e.unref(n.optKey)(c),value:e.unref(n.optKey)(c)},e.toDisplayString(e.unref(n.optLabel)(c)),9,lo))),128))],40,to),[[e.vModelSelect,o.model.value]])]),_:1},16))}}),ao=["id"],ro=["id"],io=["aria-labelledby","aria-required","aria-invalid","aria-describedby"],co=["value","name","disabled","readonly"],Ce=e.defineComponent({__name:"oo-radio",props:{onBlur:{type:Function},error:{},model:{},value:{},label:{},description:{},hint:{},placeholder:{},class:{},style:{},optional:{type:Boolean},onToggleOptional:{type:Function},required:{type:Boolean},readonly:{type:Boolean},type:{},altAction:{},name:{},field:{},options:{},maxLength:{},autocomplete:{},title:{},level:{},onRemove:{type:Function},canRemove:{type:Boolean},removeLabel:{},arrayIndex:{},disabled:{type:Boolean},hidden:{type:Boolean}},setup(o){return(t,l)=>(e.openBlock(),e.createBlock(_,e.mergeProps(t.$props,{"field-class":"oo-radio-field","id-prefix":"oo-radio"}),{header:e.withCtx(({inputId:i,descId:a})=>[e.createElementVNode("span",{id:i,class:"oo-field-label"},e.toDisplayString(o.label),9,ao),o.description?(e.openBlock(),e.createElementBlock("span",{key:0,id:a},e.toDisplayString(o.description),9,ro)):e.createCommentVNode("",!0)]),default:e.withCtx(({inputId:i,errorId:a,descId:d})=>[e.createElementVNode("div",{class:"oo-radio-group",role:"radiogroup","aria-labelledby":i,"aria-required":o.required||void 0,"aria-invalid":!!o.error||void 0,"aria-describedby":o.error||o.hint?a:o.description?d:void 0},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.options,c=>(e.openBlock(),e.createElementBlock("label",{key:e.unref(n.optKey)(c)},[e.withDirectives(e.createElementVNode("input",{type:"radio",value:e.unref(n.optKey)(c),"onUpdate:modelValue":l[0]||(l[0]=m=>o.model.value=m),onChange:l[1]||(l[1]=(...m)=>o.onBlur&&o.onBlur(...m)),onBlur:l[2]||(l[2]=(...m)=>o.onBlur&&o.onBlur(...m)),name:o.name,disabled:o.disabled,readonly:o.readonly},null,40,co),[[e.vModelRadio,o.model.value]]),e.createTextVNode(" "+e.toDisplayString(e.unref(n.optLabel)(c)),1)]))),128))],8,io)]),_:1},16))}}),uo={key:0,class:"oo-field-label"},so=["for"],mo=["id","checked","name","disabled","readonly","aria-invalid","aria-describedby"],vo=["id"],Ee=e.defineComponent({__name:"oo-checkbox",props:{onBlur:{type:Function},error:{},model:{},value:{},label:{},description:{},hint:{},placeholder:{},class:{},style:{},optional:{type:Boolean},onToggleOptional:{type:Function},required:{type:Boolean},readonly:{type:Boolean},type:{},altAction:{},name:{},field:{},options:{},maxLength:{},autocomplete:{},title:{},level:{},onRemove:{type:Function},canRemove:{type:Boolean},removeLabel:{},arrayIndex:{},disabled:{type:Boolean},hidden:{type:Boolean}},setup(o){return(t,l)=>(e.openBlock(),e.createBlock(_,e.mergeProps(t.$props,{"field-class":"oo-checkbox-field","id-prefix":"oo-checkbox"}),{header:e.withCtx(({optionalEnabled:i})=>[o.optional&&!i?(e.openBlock(),e.createElementBlock("span",uo,e.toDisplayString(o.label),1)):e.createCommentVNode("",!0)]),default:e.withCtx(({inputId:i,errorId:a,descId:d})=>[e.createElementVNode("label",{for:i},[e.createElementVNode("input",{id:i,type:"checkbox",checked:!!o.model.value,onChange:l[0]||(l[0]=c=>{o.model.value=c.target.checked,o.onBlur()}),onBlur:l[1]||(l[1]=(...c)=>o.onBlur&&o.onBlur(...c)),name:o.name,disabled:o.disabled,readonly:o.readonly,"aria-invalid":!!o.error||void 0,"aria-describedby":o.error||o.hint?a:o.description?d:void 0},null,40,mo),e.createTextVNode(" "+e.toDisplayString(o.label),1)],8,so)]),"after-input":e.withCtx(({descId:i})=>[o.description?(e.openBlock(),e.createElementBlock("span",{key:0,id:i},e.toDisplayString(o.description),9,vo)):e.createCommentVNode("",!0)]),_:1},16))}}),Ve=e.defineComponent({__name:"oo-paragraph",props:{onBlur:{type:Function},error:{},model:{},value:{},label:{},description:{},hint:{},placeholder:{},class:{},style:{},optional:{type:Boolean},onToggleOptional:{type:Function},required:{type:Boolean},readonly:{type:Boolean},type:{},altAction:{},name:{},field:{},options:{},maxLength:{},autocomplete:{},title:{},level:{},onRemove:{type:Function},canRemove:{type:Boolean},removeLabel:{},arrayIndex:{},disabled:{type:Boolean},hidden:{type:Boolean}},setup(o){return(t,l)=>e.withDirectives((e.openBlock(),e.createElementBlock("p",{"aria-live":"polite"},e.toDisplayString(o.value),513)),[[e.vShow,!o.hidden]])}}),$e=e.defineComponent({__name:"oo-action",props:{onBlur:{type:Function},error:{},model:{},value:{},label:{},description:{},hint:{},placeholder:{},class:{},style:{},optional:{type:Boolean},onToggleOptional:{type:Function},required:{type:Boolean},readonly:{type:Boolean},type:{},altAction:{},name:{},field:{},options:{},maxLength:{},autocomplete:{},title:{},level:{},onRemove:{type:Function},canRemove:{type:Boolean},removeLabel:{},arrayIndex:{},disabled:{type:Boolean},hidden:{type:Boolean}},emits:["action"],setup(o,{emit:t}){const l=t;return(i,a)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["oo-default-field oo-action-field",i.$props.class])},[e.createElementVNode("button",{type:"button",onClick:a[0]||(a[0]=d=>o.altAction&&l("action",o.altAction.id))},e.toDisplayString(o.altAction?.label),1)],2)),[[e.vShow,!o.hidden]])}}),fo={key:0,class:"oo-structured-header"},po={class:"oo-structured-header-content"},yo={key:0,class:"oo-structured-title oo-form-title"},ho={key:1,class:"oo-structured-title"},bo=["disabled","aria-label"],fe=e.defineComponent({__name:"oo-structured-header",props:{title:{},level:{},onRemove:{type:Function},canRemove:{type:Boolean},removeLabel:{},optional:{type:Boolean},optionalEnabled:{type:Boolean},onToggleOptional:{type:Function},disabled:{type:Boolean},unionContext:{}},setup(o){const t=o,l=t.unionContext!==void 0&&t.unionContext.variants.length>1;return(i,a)=>o.title||o.onRemove||o.optional||e.unref(l)?(e.openBlock(),e.createElementBlock("div",fo,[e.createElementVNode("div",po,[o.title&&o.level===0?(e.openBlock(),e.createElementBlock("h2",yo,e.toDisplayString(o.title),1)):o.title?(e.openBlock(),e.createElementBlock("h3",ho,e.toDisplayString(o.title),1)):e.createCommentVNode("",!0),e.unref(l)?(e.openBlock(),e.createBlock(Fe,{key:2,"union-context":o.unionContext,disabled:o.disabled},null,8,["union-context","disabled"])):e.createCommentVNode("",!0)]),o.optional&&o.optionalEnabled?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"oo-optional-clear",onClick:a[0]||(a[0]=d=>o.onToggleOptional?.(!1))}," × ")):e.createCommentVNode("",!0),o.onRemove?(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:"oo-structured-remove-btn",disabled:!o.canRemove,"aria-label":o.removeLabel||"Remove item",onClick:a[1]||(a[1]=(...d)=>o.onRemove&&o.onRemove(...d))},e.toDisplayString(o.removeLabel||"Remove"),9,bo)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)}}),Bo={key:0,class:"oo-object-error",role:"alert"},Re=e.defineComponent({__name:"oo-object",props:{onBlur:{type:Function},error:{},model:{},value:{},label:{},description:{},hint:{},placeholder:{},class:{},style:{},optional:{type:Boolean},onToggleOptional:{type:Function},required:{type:Boolean},readonly:{type:Boolean},type:{},altAction:{},name:{},field:{},options:{},maxLength:{},autocomplete:{},title:{},level:{},onRemove:{type:Function},canRemove:{type:Boolean},removeLabel:{},arrayIndex:{},disabled:{type:Boolean},hidden:{type:Boolean}},setup(o){const t=o,l=n.isObjectField(t.field)?t.field.objectDef:void 0,i=q(),a=e.computed(()=>me(t.title,t.arrayIndex)),d=e.computed(()=>t.model?.value!==void 0);return(c,m)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["oo-object",{"oo-object--root":o.level===0,"oo-object--nested":(o.level??0)>0}])},[e.createVNode(fe,{title:a.value,level:o.level,"on-remove":o.onRemove&&e.unref(l)?o.onRemove:void 0,"can-remove":o.canRemove,"remove-label":o.removeLabel,optional:o.optional,"optional-enabled":d.value,"on-toggle-optional":o.onToggleOptional,disabled:o.disabled,"union-context":e.unref(i)},null,8,["title","level","on-remove","can-remove","remove-label","optional","optional-enabled","on-toggle-optional","disabled","union-context"]),o.optional&&!d.value?(e.openBlock(),e.createBlock(P,{key:0,"on-edit":()=>o.onToggleOptional?.(!0)},null,8,["on-edit"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[o.error?(e.openBlock(),e.createElementBlock("div",Bo,e.toDisplayString(o.error),1)):e.createCommentVNode("",!0),e.unref(l)?(e.openBlock(),e.createBlock(ke,{key:1,def:e.unref(l)},null,8,["def"])):e.createCommentVNode("",!0)],64))],2)),[[e.vShow,!o.hidden]])}});function De(o,t){const{rootFormData:l,formContext:i,pathPrefix:a,getByPath:d,setByPath:c}=se("useFoormArray"),m=e.inject("__foorm_change_handler",()=>{}),v=e.computed(()=>{const g=d(a.value);return Array.isArray(g)?g:[]});let F=0;const y=e.reactive([]);function b(){return`oo-item-${F++}`}function B(){for(;y.length<v.value.length;)y.push(b());const g=v.value.length;if(y.length>g){for(const x of h.keys())x>=g&&h.delete(x);for(;y.length>g;)y.pop()}}B(),e.watch(()=>v.value.length,()=>B());const f=n.isUnionField(o.itemField),p=f?o.itemField.unionVariants:[],h=new Map;function C(g){let x=h.get(g);return x||(x={...o.itemField,path:String(g),name:""},h.set(g,x)),x}const D=n.getFieldMeta(o.prop,"expect.minLength"),$=n.getFieldMeta(o.prop,"expect.maxLength"),u=D?.length??0,k=$?.length??1/0,E=e.computed(()=>!t?.value&&v.value.length<k),r=e.computed(()=>!t?.value&&v.value.length>u);function V(){let g=d(a.value);return Array.isArray(g)||(g=[],c(a.value,g)),g}function U(g=0){if(!E.value)return;const x=n.createFoormValueResolver(l().value,i.value);let O;if(f){const K=p[g];if(!K)return;O=n.createFormData(K.type,x).value}else O=n.createFormData(o.itemType,x).value;V().push(O),y.push(b()),m("array-add",a.value,v.value)}function L(g){if(r.value){V().splice(g,1),y.splice(g,1);for(const x of h.keys())x>=g&&h.delete(x);m("array-remove",a.value,v.value)}}const T=n.getFieldMeta(o.prop,"foorm.array.add.label")??"Add item",ee=n.getFieldMeta(o.prop,"foorm.array.remove.label")??"Remove";return{arrayValue:v,itemKeys:y,isUnion:f,unionVariants:p,getItemField:C,addItem:U,removeItem:L,canAdd:E,canRemove:r,addLabel:T,removeLabel:ee}}const go={class:"oo-array-add"},ko=["disabled"],Fo=["disabled"],xo={key:0,class:"oo-dropdown-menu"},Co=["onClick"],Eo={key:0,class:"oo-array-error",role:"alert"},Se=e.defineComponent({__name:"oo-array",props:{onBlur:{type:Function},error:{},model:{},value:{},label:{},description:{},hint:{},placeholder:{},class:{},style:{},optional:{type:Boolean},onToggleOptional:{type:Function},required:{type:Boolean},readonly:{type:Boolean},type:{},altAction:{},name:{},field:{},options:{},maxLength:{},autocomplete:{},title:{},level:{},onRemove:{type:Function},canRemove:{type:Boolean},removeLabel:{},arrayIndex:{},disabled:{type:Boolean},hidden:{type:Boolean}},setup(o){const t=o,l=n.isArrayField(t.field)?t.field:void 0,i=q(),a=e.computed(()=>Array.isArray(t.model?.value)),{arrayValue:d,itemKeys:c,getItemField:m,isUnion:v,unionVariants:F,addItem:y,removeItem:b,canAdd:B,canRemove:f,addLabel:p,removeLabel:h}=De(l,e.computed(()=>t.disabled??!1)),C=e.ref(null),{isOpen:D,toggle:$,select:u}=ve(C);return(k,E)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["oo-array",{"oo-array--root":o.level===0,"oo-array--nested":(o.level??0)>0}])},[e.createVNode(fe,{title:o.title,level:o.level,"on-remove":o.onRemove,"can-remove":t.canRemove,"remove-label":t.removeLabel,optional:o.optional,"optional-enabled":a.value,"on-toggle-optional":o.onToggleOptional,disabled:o.disabled,"union-context":e.unref(i)},null,8,["title","level","on-remove","can-remove","remove-label","optional","optional-enabled","on-toggle-optional","disabled","union-context"]),o.optional&&!a.value?(e.openBlock(),e.createBlock(P,{key:0,"on-edit":()=>o.onToggleOptional?.(!0)},null,8,["on-edit"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(d),(r,V)=>(e.openBlock(),e.createBlock(A,{key:e.unref(c)[V],field:e.unref(m)(V),"on-remove":()=>e.unref(b)(V),"can-remove":e.unref(f),"remove-label":e.unref(h),"array-index":V},null,8,["field","on-remove","can-remove","remove-label","array-index"]))),128)),e.createElementVNode("div",go,[e.unref(v)?(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"addDropdownRef",ref:C,class:"oo-dropdown"},[e.createElementVNode("button",{type:"button",class:"oo-array-add-btn",disabled:!e.unref(B),onClick:E[1]||(E[1]=(...r)=>e.unref($)&&e.unref($)(...r))},e.toDisplayString(e.unref(p))+" ▾ ",9,Fo),e.unref(D)?(e.openBlock(),e.createElementBlock("div",xo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(F),(r,V)=>(e.openBlock(),e.createElementBlock("button",{key:V,type:"button",class:"oo-dropdown-item",onClick:U=>e.unref(u)(()=>e.unref(y)(V))},e.toDisplayString(r.label),9,Co))),128))])):e.createCommentVNode("",!0)],512)):(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"oo-array-add-btn",disabled:!e.unref(B),onClick:E[0]||(E[0]=r=>e.unref(y)(0))},e.toDisplayString(e.unref(p)),9,ko))]),o.error?(e.openBlock(),e.createElementBlock("div",Eo,e.toDisplayString(o.error),1)):e.createCommentVNode("",!0)],64))],2)),[[e.vShow,!o.hidden]])}});function we(o){const t=e.inject("__foorm_path_prefix",e.computed(()=>"")),{rootFormData:l,formContext:i}=se("useFoormUnion"),a=e.inject("__foorm_change_handler",()=>{}),d=e.computed(()=>o.field&&n.isUnionField(o.field)?o.field:void 0),c=e.computed(()=>d.value!==void 0&&d.value.unionVariants.length>1),m=e.ref(d.value?n.detectUnionVariant(o.model?.value,d.value.unionVariants):0),v=e.computed(()=>{const u=d.value?.unionVariants;if(u)return u[m.value]??u[0]});function F(){const u=v.value;if(!u)return;const k=d.value?.name??"";if(u.def)return{...u.def.rootField,path:"",name:k};if(u.itemField)return{...u.itemField,path:""}}const y=e.computed(F),b=new Map;function B(u){b.set(m.value,o.model?.value),m.value=u;const k=d.value?.unionVariants[u];if(k&&o.model){const E=b.get(u);o.model.value=E!==void 0?E:n.createFormData(k.type,n.createFoormValueResolver(l().value,i.value)).value}a("union-switch",t.value,o.model?.value)}const f=e.computed(()=>o.model?.value!==void 0);d.value&&e.provide("__foorm_union",{variants:d.value.unionVariants,currentIndex:m,changeVariant:B});const p=e.ref(null),{isOpen:h,toggle:C,select:D}=ve(p);function $(){c.value?C():o.onToggleOptional?.(!0)}return{unionField:d,hasMultipleVariants:c,localUnionIndex:m,currentVariant:v,innerField:y,changeVariant:B,optionalEnabled:f,dropdownRef:p,isOpen:h,toggle:C,select:D,handleNaClick:$}}const Vo={class:"oo-union"},$o={key:0,class:"oo-dropdown-menu"},Ro=["onClick"],Le=e.defineComponent({__name:"oo-union",props:{onBlur:{type:Function},error:{},model:{},value:{},label:{},description:{},hint:{},placeholder:{},class:{},style:{},optional:{type:Boolean},onToggleOptional:{type:Function},required:{type:Boolean},readonly:{type:Boolean},type:{},altAction:{},name:{},field:{},options:{},maxLength:{},autocomplete:{},title:{},level:{},onRemove:{type:Function},canRemove:{type:Boolean},removeLabel:{},arrayIndex:{},disabled:{type:Boolean},hidden:{type:Boolean}},setup(o){const t=o,{unionField:l,hasMultipleVariants:i,localUnionIndex:a,innerField:d,changeVariant:c,optionalEnabled:m,dropdownRef:v,isOpen:F,toggle:y,select:b,handleNaClick:B}=we(t);return(f,p)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",Vo,[o.optional&&!e.unref(m)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.unref(i)?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:v,class:"oo-dropdown-anchor"},[e.createVNode(P,{"on-edit":e.unref(B)},null,8,["on-edit"]),e.unref(F)?(e.openBlock(),e.createElementBlock("div",$o,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l).unionVariants,(h,C)=>(e.openBlock(),e.createElementBlock("button",{key:C,type:"button",class:"oo-dropdown-item",onClick:D=>e.unref(b)(()=>{e.unref(c)(C),o.onToggleOptional?.(!0)})},e.toDisplayString(h.label),9,Ro))),128))])):e.createCommentVNode("",!0)],512)):(e.openBlock(),e.createBlock(P,{key:1,"on-edit":()=>o.onToggleOptional?.(!0)},null,8,["on-edit"]))],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[o.optional?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"oo-optional-clear",onClick:p[0]||(p[0]=h=>o.onToggleOptional?.(!1))}," × ")):e.createCommentVNode("",!0),e.unref(d)?(e.openBlock(),e.createBlock(A,{key:e.unref(a),field:e.unref(d),"array-index":o.arrayIndex,"on-remove":o.onRemove,"can-remove":o.canRemove,"remove-label":o.removeLabel},null,8,["field","array-index","on-remove","can-remove","remove-label"])):e.createCommentVNode("",!0)],64))],512)),[[e.vShow,!o.hidden]])}}),Do={class:"oo-tuple"},So={key:1,class:"oo-tuple-error",role:"alert"},Oe=e.defineComponent({__name:"oo-tuple",props:{onBlur:{type:Function},error:{},model:{},value:{},label:{},description:{},hint:{},placeholder:{},class:{},style:{},optional:{type:Boolean},onToggleOptional:{type:Function},required:{type:Boolean},readonly:{type:Boolean},type:{},altAction:{},name:{},field:{},options:{},maxLength:{},autocomplete:{},title:{},level:{},onRemove:{type:Function},canRemove:{type:Boolean},removeLabel:{},arrayIndex:{},disabled:{type:Boolean},hidden:{type:Boolean}},setup(o){const t=o,l=n.isTupleField(t.field)?t.field:void 0,i=q(),a=e.computed(()=>t.model?.value!==void 0);return(d,c)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",Do,[e.createVNode(fe,{title:o.title,level:o.level,"on-remove":o.onRemove,"can-remove":o.canRemove,"remove-label":o.removeLabel,optional:o.optional,"optional-enabled":a.value,"on-toggle-optional":o.onToggleOptional,disabled:o.disabled,"union-context":e.unref(i)},null,8,["title","level","on-remove","can-remove","remove-label","optional","optional-enabled","on-toggle-optional","disabled","union-context"]),o.optional&&!a.value?(e.openBlock(),e.createBlock(P,{key:0,"on-edit":()=>o.onToggleOptional?.(!0)},null,8,["on-edit"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.unref(l)?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(l).itemFields,(m,v)=>(e.openBlock(),e.createBlock(A,{key:v,field:m},null,8,["field"]))),128)):e.createCommentVNode("",!0),o.error?(e.openBlock(),e.createElementBlock("div",So,e.toDisplayString(o.error),1)):e.createCommentVNode("",!0)],64))],512)),[[e.vShow,!o.hidden]])}});function wo(o,t){const l=n.createFoormDef(o),i=t?n.createFoormValueResolver({},t):void 0,a=e.reactive(n.createFormData(o,i));return{def:l,formData:a}}function Lo(){return{text:Z,password:Z,number:Z,select:xe,radio:Ce,checkbox:Ee,paragraph:Ve,action:$e,object:Re,array:Se,union:Le,tuple:Oe}}exports.OoAction=$e;exports.OoArray=Se;exports.OoCheckbox=Ee;exports.OoField=A;exports.OoForm=ze;exports.OoInput=Z;exports.OoIterator=ke;exports.OoObject=Re;exports.OoParagraph=Ve;exports.OoRadio=Ce;exports.OoSelect=xe;exports.OoTuple=Oe;exports.OoUnion=Le;exports.createDefaultTypes=Lo;exports.formatIndexedLabel=me;exports.useConsumeUnionContext=q;exports.useFoorm=wo;exports.useFoormArray=De;exports.useFoormUnion=we;
|
package/dist/index.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.oo-no-data{position:relative;display:flex;align-items:center;justify-content:center;min-height:32px;border:1px dashed #e5e7eb;border-radius:8px;cursor:pointer;overflow:hidden;background:linear-gradient(to top right,transparent calc(50% - .5px),#e5e7eb,transparent calc(50% + .5px))}.oo-no-data:hover{border-color:#b5c1d9;background:linear-gradient(to top right,transparent calc(50% - .5px),#c7d2fe,transparent calc(50% + .5px))}.oo-no-data-text{font-size:12px;color:#9ca3af;background:#fff;padding:2px 8px;border-radius:3px;-webkit-user-select:none;user-select:none}.oo-no-data:hover .oo-no-data-text{color:#6366f1;font-weight:500}.oo-structured-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.oo-structured-header-content{display:flex;align-items:center;gap:6px;flex:1}.oo-structured-title{margin:0;font-size:15px;font-weight:600;color:#374151}.oo-structured-title.oo-form-title{font-size:20px;font-weight:700;color:#1d1d1f}.oo-structured-remove-btn{padding:4px 10px;border:1px solid #d1d5db;border-radius:4px;background:#fff;font-size:12px;color:#6b7280;cursor:pointer;flex-shrink:0}.oo-structured-remove-btn:hover:not(:disabled){background:#fee2e2;border-color:#fca5a5;color:#dc2626}.oo-structured-remove-btn:disabled{opacity:.4;cursor:not-allowed}.oo-object{margin:12px 0}.oo-object--nested{padding-left:16px;border-left:2px solid #d1d5db}.oo-object-error{font-size:12px;color:#ef4444;margin-bottom:4px}.oo-array{display:flex;flex-direction:column;gap:0;margin:12px 0}.oo-array--nested{padding-left:16px;border-left:2px solid #d1d5db}.oo-array-error{font-size:12px;color:#ef4444}.oo-array-add{margin-top:4px}.oo-array-add-btn{padding:6px 14px;border:1px dashed #d1d5db;border-radius:4px;background:#fff;font-size:13px;color:#6b7280;cursor:pointer}.oo-array-add-btn:hover:not(:disabled){border-color:#6366f1;color:#6366f1}.oo-array-add-btn:disabled{opacity:.4;cursor:not-allowed}.oo-union{margin:0}.oo-tuple{margin:12px 0}.oo-tuple-error{font-size:12px;color:#ef4444}
|