@entrypulse/builder 1.2.4 → 1.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.
@@ -1,187 +1,188 @@
1
- (function(Z,l){typeof exports=="object"&&typeof module<"u"?l(exports,require("react/jsx-runtime"),require("react"),require("react-dom")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","react-dom"],l):(Z=typeof globalThis<"u"?globalThis:Z||self,l(Z.EntryPulse={},Z.jsxRuntime,Z.React,Z.ReactDOM))})(this,(function(Z,l,D,sa){"use strict";var HA=Object.defineProperty;var Zy=Z=>{throw TypeError(Z)};var jA=(Z,l,D)=>l in Z?HA(Z,l,{enumerable:!0,configurable:!0,writable:!0,value:D}):Z[l]=D;var wl=(Z,l,D)=>jA(Z,typeof l!="symbol"?l+"":l,D),Ry=(Z,l,D)=>l.has(Z)||Zy("Cannot "+D);var Mt=(Z,l,D)=>(Ry(Z,l,"read from private field"),D?D.call(Z):l.get(Z)),ev=(Z,l,D)=>l.has(Z)?Zy("Cannot add the same private member more than once"):l instanceof WeakSet?l.add(Z):l.set(Z,D),Cd=(Z,l,D,sa)=>(Ry(Z,l,"write to private field"),sa?sa.call(Z,D):l.set(Z,D),D);var pt,jt;function Sd(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const o=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,o.get?o:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const v=Sd(D),sn=Sd(sa),Nd=e=>{let t;const r=new Set,o=(d,f)=>{const u=typeof d=="function"?d(t):d;if(!Object.is(u,t)){const h=t;t=f??(typeof u!="object"||u===null)?u:Object.assign({},t,u),r.forEach(m=>m(t,h))}},n=()=>t,i={setState:o,getState:n,getInitialState:()=>c,subscribe:d=>(r.add(d),()=>r.delete(d))},c=t=e(o,n,i);return i},tv=(e=>e?Nd(e):Nd),rv=e=>e;function ov(e,t=rv){const r=D.useSyncExternalStore(e.subscribe,D.useCallback(()=>t(e.getState()),[e,t]),D.useCallback(()=>t(e.getInitialState()),[e,t]));return D.useDebugValue(r),r}const Ed=e=>{const t=tv(e),r=o=>ov(t,o);return Object.assign(r,t),r},nv=(e=>e?Ed(e):Ed);var kd=Symbol.for("immer-nothing"),_d=Symbol.for("immer-draftable"),Gt=Symbol.for("immer-state"),av=process.env.NODE_ENV!=="production"?[function(e){return`The plugin for '${e}' has not been loaded into Immer. To enable the plugin, import and call \`enable${e}()\` when initializing your application.`},function(e){return`produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '${e}'`},"This object has been frozen and should not be mutated",function(e){return"Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? "+e},"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.","Immer forbids circular references","The first or second argument to `produce` must be a function","The third argument to `produce` must be a function or undefined","First argument to `createDraft` must be a plain object, an array, or an immerable object","First argument to `finishDraft` must be a draft returned by `createDraft`",function(e){return`'current' expects a draft, got: ${e}`},"Object.defineProperty() cannot be used on an Immer draft","Object.setPrototypeOf() cannot be used on an Immer draft","Immer only supports deleting array indices","Immer only supports setting array indices and the 'length' property",function(e){return`'original' expects a draft, got: ${e}`}]:[];function Ft(e,...t){if(process.env.NODE_ENV!=="production"){const r=av[e],o=typeof r=="function"?r.apply(null,t):r;throw new Error(`[Immer] ${o}`)}throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var ln=Object.getPrototypeOf;function Mo(e){return!!e&&!!e[Gt]}function ao(e){var t;return e?Ad(e)||Array.isArray(e)||!!e[_d]||!!((t=e.constructor)!=null&&t[_d])||cn(e)||ca(e):!1}var sv=Object.prototype.constructor.toString(),Dd=new WeakMap;function Ad(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);if(t===null||t===Object.prototype)return!0;const r=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;if(r===Object)return!0;if(typeof r!="function")return!1;let o=Dd.get(r);return o===void 0&&(o=Function.toString.call(r),Dd.set(r,o)),o===sv}function la(e,t,r=!0){ia(e)===0?(r?Reflect.ownKeys(e):Object.keys(e)).forEach(n=>{t(n,e[n],e)}):e.forEach((o,n)=>t(n,o,e))}function ia(e){const t=e[Gt];return t?t.type_:Array.isArray(e)?1:cn(e)?2:ca(e)?3:0}function Cl(e,t){return ia(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function Td(e,t,r){const o=ia(e);o===2?e.set(t,r):o===3?e.add(r):e[t]=r}function lv(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}function cn(e){return e instanceof Map}function ca(e){return e instanceof Set}function so(e){return e.copy_||e.base_}function Sl(e,t){if(cn(e))return new Map(e);if(ca(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const r=Ad(e);if(t===!0||t==="class_only"&&!r){const o=Object.getOwnPropertyDescriptors(e);delete o[Gt];let n=Reflect.ownKeys(o);for(let a=0;a<n.length;a++){const s=n[a],i=o[s];i.writable===!1&&(i.writable=!0,i.configurable=!0),(i.get||i.set)&&(o[s]={configurable:!0,writable:!0,enumerable:i.enumerable,value:e[s]})}return Object.create(ln(e),o)}else{const o=ln(e);if(o!==null&&r)return{...e};const n=Object.create(o);return Object.assign(n,e)}}function Nl(e,t=!1){return ua(e)||Mo(e)||!ao(e)||(ia(e)>1&&Object.defineProperties(e,{set:da,add:da,clear:da,delete:da}),Object.freeze(e),t&&Object.values(e).forEach(r=>Nl(r,!0))),e}function iv(){Ft(2)}var da={value:iv};function ua(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var cv={};function lo(e){const t=cv[e];return t||Ft(0,e),t}var dn;function Id(){return dn}function dv(e,t){return{drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function Pd(e,t){t&&(lo("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function El(e){kl(e),e.drafts_.forEach(uv),e.drafts_=null}function kl(e){e===dn&&(dn=e.parent_)}function Md(e){return dn=dv(dn,e)}function uv(e){const t=e[Gt];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function Od(e,t){t.unfinalizedDrafts_=t.drafts_.length;const r=t.drafts_[0];return e!==void 0&&e!==r?(r[Gt].modified_&&(El(t),Ft(4)),ao(e)&&(e=pa(t,e),t.parent_||fa(t,e)),t.patches_&&lo("Patches").generateReplacementPatches_(r[Gt].base_,e,t.patches_,t.inversePatches_)):e=pa(t,r,[]),El(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==kd?e:void 0}function pa(e,t,r){if(ua(t))return t;const o=e.immer_.shouldUseStrictIteration(),n=t[Gt];if(!n)return la(t,(a,s)=>Ld(e,n,t,a,s,r),o),t;if(n.scope_!==e)return t;if(!n.modified_)return fa(e,n.base_,!0),n.base_;if(!n.finalized_){n.finalized_=!0,n.scope_.unfinalizedDrafts_--;const a=n.copy_;let s=a,i=!1;n.type_===3&&(s=new Set(a),a.clear(),i=!0),la(s,(c,d)=>Ld(e,n,a,c,d,r,i),o),fa(e,a,!1),r&&e.patches_&&lo("Patches").generatePatches_(n,r,e.patches_,e.inversePatches_)}return n.copy_}function Ld(e,t,r,o,n,a,s){if(n==null||typeof n!="object"&&!s)return;const i=ua(n);if(!(i&&!s)){if(process.env.NODE_ENV!=="production"&&n===r&&Ft(5),Mo(n)){const c=a&&t&&t.type_!==3&&!Cl(t.assigned_,o)?a.concat(o):void 0,d=pa(e,n,c);if(Td(r,o,d),Mo(d))e.canAutoFreeze_=!1;else return}else s&&r.add(n);if(ao(n)&&!i){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||t&&t.base_&&t.base_[o]===n&&i)return;pa(e,n),(!t||!t.scope_.parent_)&&typeof o!="symbol"&&(cn(r)?r.has(o):Object.prototype.propertyIsEnumerable.call(r,o))&&fa(e,n)}}}function fa(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Nl(t,r)}function pv(e,t){const r=Array.isArray(e),o={type_:r?1:0,scope_:t?t.scope_:Id(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let n=o,a=_l;r&&(n=[o],a=un);const{revoke:s,proxy:i}=Proxy.revocable(n,a);return o.draft_=i,o.revoke_=s,i}var _l={get(e,t){if(t===Gt)return e;const r=so(e);if(!Cl(r,t))return fv(e,r,t);const o=r[t];return e.finalized_||!ao(o)?o:o===Dl(e.base_,t)?(Tl(e),e.copy_[t]=Il(o,e)):o},has(e,t){return t in so(e)},ownKeys(e){return Reflect.ownKeys(so(e))},set(e,t,r){const o=Fd(so(e),t);if(o!=null&&o.set)return o.set.call(e.draft_,r),!0;if(!e.modified_){const n=Dl(so(e),t),a=n==null?void 0:n[Gt];if(a&&a.base_===r)return e.copy_[t]=r,e.assigned_[t]=!1,!0;if(lv(r,n)&&(r!==void 0||Cl(e.base_,t)))return!0;Tl(e),Al(e)}return e.copy_[t]===r&&(r!==void 0||t in e.copy_)||Number.isNaN(r)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=r,e.assigned_[t]=!0),!0},deleteProperty(e,t){return Dl(e.base_,t)!==void 0||t in e.base_?(e.assigned_[t]=!1,Tl(e),Al(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const r=so(e),o=Reflect.getOwnPropertyDescriptor(r,t);return o&&{writable:!0,configurable:e.type_!==1||t!=="length",enumerable:o.enumerable,value:r[t]}},defineProperty(){Ft(11)},getPrototypeOf(e){return ln(e.base_)},setPrototypeOf(){Ft(12)}},un={};la(_l,(e,t)=>{un[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}}),un.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&Ft(13),un.set.call(this,e,t,void 0)},un.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&Ft(14),_l.set.call(this,e[0],t,r,e[0])};function Dl(e,t){const r=e[Gt];return(r?so(r):e)[t]}function fv(e,t,r){var n;const o=Fd(t,r);return o?"value"in o?o.value:(n=o.get)==null?void 0:n.call(e.draft_):void 0}function Fd(e,t){if(!(t in e))return;let r=ln(e);for(;r;){const o=Object.getOwnPropertyDescriptor(r,t);if(o)return o;r=ln(r)}}function Al(e){e.modified_||(e.modified_=!0,e.parent_&&Al(e.parent_))}function Tl(e){e.copy_||(e.copy_=Sl(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var hv=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(r,o,n)=>{if(typeof r=="function"&&typeof o!="function"){const s=o;o=r;const i=this;return function(d=s,...f){return i.produce(d,u=>o.call(this,u,...f))}}typeof o!="function"&&Ft(6),n!==void 0&&typeof n!="function"&&Ft(7);let a;if(ao(r)){const s=Md(this),i=Il(r,void 0);let c=!0;try{a=o(i),c=!1}finally{c?El(s):kl(s)}return Pd(s,n),Od(a,s)}else if(!r||typeof r!="object"){if(a=o(r),a===void 0&&(a=r),a===kd&&(a=void 0),this.autoFreeze_&&Nl(a,!0),n){const s=[],i=[];lo("Patches").generateReplacementPatches_(r,a,s,i),n(s,i)}return a}else Ft(1,r)},this.produceWithPatches=(r,o)=>{if(typeof r=="function")return(i,...c)=>this.produceWithPatches(i,d=>r(d,...c));let n,a;return[this.produce(r,o,(i,c)=>{n=i,a=c}),n,a]},typeof(t==null?void 0:t.autoFreeze)=="boolean"&&this.setAutoFreeze(t.autoFreeze),typeof(t==null?void 0:t.useStrictShallowCopy)=="boolean"&&this.setUseStrictShallowCopy(t.useStrictShallowCopy),typeof(t==null?void 0:t.useStrictIteration)=="boolean"&&this.setUseStrictIteration(t.useStrictIteration)}createDraft(t){ao(t)||Ft(8),Mo(t)&&(t=mv(t));const r=Md(this),o=Il(t,void 0);return o[Gt].isManual_=!0,kl(r),o}finishDraft(t,r){const o=t&&t[Gt];(!o||!o.isManual_)&&Ft(9);const{scope_:n}=o;return Pd(n,r),Od(void 0,n)}setAutoFreeze(t){this.autoFreeze_=t}setUseStrictShallowCopy(t){this.useStrictShallowCopy_=t}setUseStrictIteration(t){this.useStrictIteration_=t}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(t,r){let o;for(o=r.length-1;o>=0;o--){const a=r[o];if(a.path.length===0&&a.op==="replace"){t=a.value;break}}o>-1&&(r=r.slice(o+1));const n=lo("Patches").applyPatches_;return Mo(t)?n(t,r):this.produce(t,a=>n(a,r))}};function Il(e,t){const r=cn(e)?lo("MapSet").proxyMap_(e,t):ca(e)?lo("MapSet").proxySet_(e,t):pv(e,t);return(t?t.scope_:Id()).drafts_.push(r),r}function mv(e){return Mo(e)||Ft(10,e),$d(e)}function $d(e){if(!ao(e)||ua(e))return e;const t=e[Gt];let r,o=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=Sl(e,t.scope_.immer_.useStrictShallowCopy_),o=t.scope_.immer_.shouldUseStrictIteration()}else r=Sl(e,!0);return la(r,(n,a)=>{Td(r,n,$d(a))},o),t&&(t.finalized_=!1),r}var gv=new hv,bv=gv.produce;const yv=e=>(t,r,o)=>(o.setState=(n,a,...s)=>{const i=typeof n=="function"?bv(n):n;return t(i,a,...s)},e(o.setState,r,o));function ha(){const e=Date.now().toString(36),t=Math.random().toString(36).substring(2,8);return`${e}-${t}`}function Pl(e){if(!e)return"";const t=e.trim().replace(/[^a-zA-Z0-9\s]/g,"").split(/\s+/).filter(Boolean);return t.length===0?"":t.map((r,o)=>{const n=r.toLowerCase();return o===0?n:n.charAt(0).toUpperCase()+n.slice(1)}).join("")}function Gd(e,t){const r=t instanceof Set?t:new Set(t),o=Pl(e.replace(/([A-Z])/g," $1").trim())||"field";if(!r.has(o))return o;let n=1,a=`${o}${n}`;for(;r.has(a);)n++,a=`${o}${n}`;return a}function Ml(e){return new Set(e.map(t=>t.attributes.name).filter(Boolean))}const vv={shortText:{label:"Short Text",placeholder:"Enter text..."},longText:{label:"Long Text",placeholder:"Enter your text here..."},multiLineInput:{label:"Multi-line Input",placeholder:"Enter your text..."},textEditor:{label:"Text Editor",placeholder:"Start typing..."},number:{label:"Number",placeholder:"Enter a number..."},slider:{label:"Slider",description:"Slide to select a value"},rangeSlider:{label:"Range Slider",description:"Select a range"},email:{label:"Email",placeholder:"Enter your email..."},phone:{label:"Phone",placeholder:"Enter your phone number..."},url:{label:"URL",placeholder:"https://example.com"},location:{label:"Location",placeholder:"Enter address...",description:"Enter your address"},password:{label:"Password",placeholder:"Enter your password..."},signature:{label:"Signature",description:"Draw your signature below"},captcha:{label:"Verification",description:"Please verify you are human"},singleChoice:{label:"Single Choice",description:"Select one option"},multipleChoice:{label:"Multiple Choice",description:"Select all that apply"},dropdown:{label:"Dropdown",placeholder:"Select an option..."},tags:{label:"Tags",placeholder:"Type and press enter...",description:"Add tags"},decisionBox:{label:"I agree to the terms and conditions"},toggleSwitch:{label:"Toggle Switch",description:"Turn on or off"},singleChoiceMatrix:{label:"Single Choice Matrix",description:"Select one option per row"},multipleChoiceMatrix:{label:"Multiple Choice Matrix",description:"Select options per row"},matrixTable:{label:"Matrix Table",description:"Fill in the table"},date:{label:"Date",placeholder:"Select a date..."},time:{label:"Time",placeholder:"Select a time..."},dateTime:{label:"Date & Time",placeholder:"Select date and time..."},multipleDates:{label:"Multiple Dates",placeholder:"Select dates...",description:"Select multiple dates"},dateRange:{label:"Date Range",placeholder:"Select date range...",description:"Select start and end dates"},fileUpload:{label:"File Upload",description:"Upload a file"},imageUpload:{label:"Image Upload",description:"Upload an image"},multiFileUpload:{label:"Multi-File Upload",description:"Upload multiple files"},multiImageUpload:{label:"Multi-Image Upload",description:"Upload multiple images"},paragraph:{label:"Paragraph",content:"Enter your paragraph text here. You can use this to provide instructions or additional information."},image:{label:"Image",alt:"Image description",src:""},link:{label:"Link",href:"https://example.com",content:"Click here",target:"_blank"},formHeading:{label:"Form Title",description:"Form description goes here"},sectionHeading:{label:"Section Title"},subheading:{label:"Subheading"},divider:{},spacer:{},group:{label:"Group",description:"Group description"},grid:{label:"Grid Layout"},table:{label:"Table"},repeatElement:{label:"Repeat Element",description:"Add more items"},repeatGroup:{label:"Repeat Group",description:"Add more groups"},pages:{label:"Form Pages"},submit:{label:"Submit"}},xv={shortText:{labelPosition:"top",size:"default"},longText:{labelPosition:"top",size:"default"},multiLineInput:{labelPosition:"top",size:"default"},textEditor:{labelPosition:"top",size:"large"},number:{labelPosition:"top",size:"default"},slider:{labelPosition:"top",size:"default"},rangeSlider:{labelPosition:"top",size:"default"},email:{labelPosition:"top",size:"default"},phone:{labelPosition:"top",size:"default"},url:{labelPosition:"top",size:"default"},location:{labelPosition:"top",size:"large"},password:{labelPosition:"top",size:"default"},signature:{labelPosition:"top",size:"large"},captcha:{labelPosition:"hidden",size:"default"},singleChoice:{labelPosition:"top",size:"default"},multipleChoice:{labelPosition:"top",size:"default"},dropdown:{labelPosition:"top",size:"default"},tags:{labelPosition:"top",size:"default"},decisionBox:{labelPosition:"hidden",size:"default"},toggleSwitch:{labelPosition:"left",size:"default"},singleChoiceMatrix:{labelPosition:"top",size:"full"},multipleChoiceMatrix:{labelPosition:"top",size:"full"},matrixTable:{labelPosition:"top",size:"full"},date:{labelPosition:"top",size:"default"},time:{labelPosition:"top",size:"small"},dateTime:{labelPosition:"top",size:"default"},multipleDates:{labelPosition:"top",size:"default"},dateRange:{labelPosition:"top",size:"default"},fileUpload:{labelPosition:"top",size:"default"},imageUpload:{labelPosition:"top",size:"default"},multiFileUpload:{labelPosition:"top",size:"large"},multiImageUpload:{labelPosition:"top",size:"large"},paragraph:{labelPosition:"hidden",size:"default"},image:{labelPosition:"hidden",size:"default"},link:{labelPosition:"hidden",size:"default"},formHeading:{size:"large"},sectionHeading:{size:"medium"},subheading:{size:"small"},divider:{size:"default"},spacer:{size:"default",height:24},group:{size:"default"},grid:{size:"full",columns:2,gap:16},table:{size:"full"},repeatElement:{size:"default"},repeatGroup:{size:"full"},pages:{size:"full"},submit:{size:"default"}},Vd={shortText:{maxLength:255},longText:{maxLength:5e3},multiLineInput:{maxLength:5e3},textEditor:{maxLength:5e4},number:{},slider:{},rangeSlider:{},email:{},phone:{},url:{},location:{},password:{minLength:8},singleChoice:{},multipleChoice:{},dropdown:{},tags:{},decisionBox:{},singleChoiceMatrix:{},multipleChoiceMatrix:{},date:{},time:{},dateTime:{},multipleDates:{},dateRange:{},fileUpload:{},imageUpload:{},multiFileUpload:{maxFiles:10},multiImageUpload:{maxFiles:10}},zd={longText:{rows:3,autoResize:!1},multiLineInput:{minRows:2,maxRows:10,autoResize:!0},textEditor:{toolbar:["bold","italic","underline","link"],height:200,allowImages:!1,allowLinks:!0},number:{step:1,decimals:0,thousandsSeparator:!1},slider:{min:0,max:100,step:1,showValue:!0,showMarks:!1},rangeSlider:{min:0,max:100,step:1,showValue:!0,minRange:0},phone:{defaultCountry:"US",format:"international"},location:{enableGeolocation:!1,showMap:!1},password:{showStrengthMeter:!0,showToggle:!0,minStrength:"medium"},signature:{strokeWidth:2,strokeColor:"#000000",backgroundColor:"#ffffff",canvasWidth:400,canvasHeight:200},captcha:{provider:"recaptcha",theme:"light"},singleChoice:{options:[{label:"Option 1",value:"option1"},{label:"Option 2",value:"option2"},{label:"Option 3",value:"option3"}],allowOther:!1},multipleChoice:{options:[{label:"Option 1",value:"option1"},{label:"Option 2",value:"option2"},{label:"Option 3",value:"option3"}],allowOther:!1},dropdown:{options:[{label:"Option 1",value:"option1"},{label:"Option 2",value:"option2"},{label:"Option 3",value:"option3"}],allowOther:!1},tags:{options:[{label:"Tag 1",value:"tag1"},{label:"Tag 2",value:"tag2"},{label:"Tag 3",value:"tag3"}],maxTags:10,allowCustomTags:!0},decisionBox:{checkedLabel:"Yes",uncheckedLabel:"No"},toggleSwitch:{onLabel:"On",offLabel:"Off"},singleChoiceMatrix:{matrixRows:[{id:"row1",label:"Row 1"},{id:"row2",label:"Row 2"},{id:"row3",label:"Row 3"}],matrixColumns:[{id:"col1",label:"Column 1"},{id:"col2",label:"Column 2"},{id:"col3",label:"Column 3"}]},multipleChoiceMatrix:{matrixRows:[{id:"row1",label:"Row 1"},{id:"row2",label:"Row 2"},{id:"row3",label:"Row 3"}],matrixColumns:[{id:"col1",label:"Column 1"},{id:"col2",label:"Column 2"},{id:"col3",label:"Column 3"}],allowMultiplePerRow:!0},matrixTable:{matrixRows:[{id:"row1",label:"Row 1"},{id:"row2",label:"Row 2"}],matrixColumns:[{id:"col1",label:"Text",type:"text"},{id:"col2",label:"Number",type:"number"}]},date:{format:"YYYY-MM-DD",showCalendar:!0},time:{timeFormat:"12h",timeInterval:15},dateTime:{format:"YYYY-MM-DD",timeFormat:"12h",timeInterval:15},multipleDates:{format:"YYYY-MM-DD",showCalendar:!0},dateRange:{format:"YYYY-MM-DD",showCalendar:!0,minDays:1},fileUpload:{accept:"*/*",maxSize:10485760,multiple:!1},imageUpload:{accept:"image/*",maxSize:5242880,multiple:!1,allowCrop:!1},multiFileUpload:{accept:"*/*",maxSize:10485760,multiple:!0,maxFiles:10},multiImageUpload:{accept:"image/*",maxSize:5242880,multiple:!0,maxFiles:10,allowCrop:!1},paragraph:{textAlign:"left",fontSize:"medium",fontWeight:"normal"},image:{imageWidth:"100%",objectFit:"contain",borderRadius:0},link:{linkStyle:"text"},formHeading:{level:1,alignment:"left"},sectionHeading:{level:2,alignment:"left"},subheading:{level:3,alignment:"left"},divider:{style:"solid",thickness:1,color:"#e5e7eb"},spacer:{spacerHeight:24},group:{collapsed:!1,collapsible:!1,showBorder:!0,padding:16},grid:{gridColumns:2,gridGap:16,responsiveColumns:{sm:1,md:2,lg:2}},table:{tableColumns:[{id:"col1",header:"Column 1",align:"left"},{id:"col2",header:"Column 2",align:"left"}],showHeader:!0,striped:!0,bordered:!0},repeatElement:{minItems:1,maxItems:10,addButtonText:"Add Item",removeButtonText:"Remove",showItemNumber:!0},repeatGroup:{minItems:1,maxItems:10,addButtonText:"Add Group",removeButtonText:"Remove",itemLabel:"Item",showItemNumber:!0},pages:{showProgressBar:!0,showStepNumbers:!0,allowSkip:!1,validateOnNext:!0,activeStepId:"step1",steps:[{id:"step1",label:"Step 1",description:""},{id:"step2",label:"Step 2",description:""}]},submit:{buttonText:"Submit",buttonStyle:"primary",buttonSize:"medium",showIcon:!1,loadingText:"Submitting..."}},wv={shortText:"string",longText:"string",multiLineInput:"string",textEditor:"string",number:"number",slider:"number",rangeSlider:"object",email:"string",phone:"string",url:"string",location:"object",password:"string",signature:"string",captcha:"string",singleChoice:"string",multipleChoice:"array",dropdown:"string",tags:"array",decisionBox:"boolean",toggleSwitch:"boolean",singleChoiceMatrix:"object",multipleChoiceMatrix:"object",matrixTable:"object",date:"date",time:"string",dateTime:"date",multipleDates:"array",dateRange:"object",fileUpload:"object",imageUpload:"object",multiFileUpload:"array",multiImageUpload:"array",paragraph:"string",image:"string",link:"string",formHeading:"string",sectionHeading:"string",subheading:"string",divider:"string",spacer:"string",group:"object",grid:"object",table:"object",repeatElement:"array",repeatGroup:"array",pages:"object",submit:"string"};function Bd(e,t,r){const o=Gd(e,t),n={id:ha(),type:e,order:r,properties:{...vv[e]},layout:{...xv[e]},attributes:{name:o,dataType:wv[e]}};return Vd[e]&&(n.validation={...Vd[e]}),zd[e]&&(n.config=JSON.parse(JSON.stringify(zd[e]))),n}function Ud(){return{id:`form-${ha()}`,version:"1.0.0",title:"Untitled Form",description:"",metadata:{createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()},settings:{showProgressBar:!1,allowSaveDraft:!1,submitButtonText:"Submit",successMessage:"Thank you for your submission!",submitAction:"message"},elements:[]}}function Cv(e,t){const r=JSON.parse(JSON.stringify(e));return r.id=ha(),r.attributes.name=Gd(e.type,t),r}function Ol(e){return["paragraph","image","link","formHeading","sectionHeading","subheading","divider","spacer"].includes(e)}function Sv(e){const t=["paragraph","image","link","formHeading","sectionHeading","subheading","divider","spacer","captcha"],r=["singleChoice","dropdown","decisionBox","toggleSwitch","signature","captcha",...t],o=["number","slider","rangeSlider","date","time","dateTime","multipleDates","dateRange","fileUpload","imageUpload","multiFileUpload","multiImageUpload","singleChoice","multipleChoice","dropdown","decisionBox","toggleSwitch","signature","captcha","singleChoiceMatrix","multipleChoiceMatrix","matrixTable",...t];return{supportsRequired:!t.includes(e),supportsMinMax:!r.includes(e),supportsPattern:!o.includes(e)}}const Nv=50;function qt(e,t){const r=e.history.slice(0,e.historyIndex+1);r.push(JSON.parse(JSON.stringify(t))),r.length>Nv&&r.shift(),e.history=r,e.historyIndex=r.length-1,e.schema=t}const Wd=Ud(),Ev={schema:Wd,selectedElementId:null,mode:"design",history:[JSON.parse(JSON.stringify(Wd))],historyIndex:0,hoveredElementId:null,draggedElementType:null},R=nv()(yv((e,t)=>({...Ev,addElement:(r,o)=>{e(n=>{var f;const a=n.schema.elements.some(u=>u.type==="pages");if(r==="pages"&&a){console.warn("Only one wizard can be added to the form");return}if(a&&r!=="pages"){console.warn("When a wizard exists, elements must be added inside wizard steps");return}const s=Ml(n.schema.elements),i=o??n.schema.elements.length,c=Bd(r,s,i);(r==="group"||r==="grid"||r==="repeatGroup"||r==="pages")&&(c.children=[]);const d={...n.schema};o!==void 0?d.elements=[...n.schema.elements.slice(0,o),c,...n.schema.elements.slice(o).map(u=>({...u,order:u.order+1}))]:d.elements=[...n.schema.elements,c],d.metadata={...d.metadata,updatedAt:new Date().toISOString(),createdAt:((f=d.metadata)==null?void 0:f.createdAt)||new Date().toISOString()},qt(n,d),n.selectedElementId=c.id})},addElementToContainer:(r,o,n)=>{e(a=>{var h;if(r==="pages"){console.warn("Wizard cannot be added inside a container");return}if(a.schema.elements.findIndex(m=>m.id===o)===-1)return;const i=Ml(a.schema.elements),d=a.schema.elements.filter(m=>n?m.parentId===`${o}:${n}`:m.parentId===o).length,f=Bd(r,i,d);n?f.parentId=`${o}:${n}`:f.parentId=o,(r==="group"||r==="grid"||r==="repeatGroup")&&(f.children=[]);const u={...a.schema};u.elements=a.schema.elements.map(m=>m.id===o?{...m,children:[...m.children||[],f.id]}:m),u.elements=[...u.elements,f],u.metadata={...u.metadata,updatedAt:new Date().toISOString(),createdAt:((h=u.metadata)==null?void 0:h.createdAt)||new Date().toISOString()},qt(a,u),a.selectedElementId=f.id})},updateElement:(r,o)=>{e(n=>{var i;if(n.schema.elements.findIndex(c=>c.id===r)===-1)return;const s={...n.schema};s.elements=n.schema.elements.map(c=>c.id===r?{...c,...o}:c),s.metadata={...s.metadata,updatedAt:new Date().toISOString(),createdAt:((i=s.metadata)==null?void 0:i.createdAt)||new Date().toISOString()},qt(n,s)})},deleteElement:r=>{e(o=>{var c;const n=o.schema.elements.find(d=>d.id===r);if(!n)return;const a=new Set([r]),s=d=>{o.schema.elements.forEach(f=>{var u;(f.parentId===d||(u=f.parentId)!=null&&u.startsWith(`${d}:`))&&(a.add(f.id),s(f.id))})};s(r);const i={...o.schema};if(n.parentId){const d=n.parentId.split(":")[0];i.elements=o.schema.elements.map(f=>f.id===d&&f.children?{...f,children:f.children.filter(u=>u!==r)}:f)}i.elements=i.elements.filter(d=>!a.has(d.id)).map((d,f)=>d.parentId?d:{...d,order:f}),i.metadata={...i.metadata,updatedAt:new Date().toISOString(),createdAt:((c=i.metadata)==null?void 0:c.createdAt)||new Date().toISOString()},qt(o,i),(o.selectedElementId===r||a.has(o.selectedElementId||""))&&(o.selectedElementId=null)})},duplicateElement:r=>{e(o=>{var d;const n=o.schema.elements.find(f=>f.id===r);if(!n)return;const a=Ml(o.schema.elements),s=Cv(n,a);s.order=n.order+1;const i={...o.schema},c=n.order+1;i.elements=[...o.schema.elements.slice(0,c),s,...o.schema.elements.slice(c).map(f=>({...f,order:f.order+1}))],i.metadata={...i.metadata,updatedAt:new Date().toISOString(),createdAt:((d=i.metadata)==null?void 0:d.createdAt)||new Date().toISOString()},qt(o,i),o.selectedElementId=s.id})},moveElement:(r,o)=>{e(n=>{var d;const a=n.schema.elements.findIndex(f=>f.id===r);if(a===-1||a===o)return;const s=[...n.schema.elements],[i]=s.splice(a,1);s.splice(o,0,i),s.forEach((f,u)=>{f.order=u});const c={...n.schema,elements:s,metadata:{...n.schema.metadata,updatedAt:new Date().toISOString(),createdAt:((d=n.schema.metadata)==null?void 0:d.createdAt)||new Date().toISOString()}};qt(n,c)})},reorderElements:(r,o)=>{e(n=>{var c;if(r===o)return;const a=[...n.schema.elements],[s]=a.splice(r,1);a.splice(o,0,s),a.forEach((d,f)=>{d.order=f});const i={...n.schema,elements:a,metadata:{...n.schema.metadata,updatedAt:new Date().toISOString(),createdAt:((c=n.schema.metadata)==null?void 0:c.createdAt)||new Date().toISOString()}};qt(n,i)})},selectElement:r=>{e(o=>{o.selectedElementId=r})},undo:()=>{e(r=>{r.historyIndex>0&&(r.historyIndex-=1,r.schema=JSON.parse(JSON.stringify(r.history[r.historyIndex])),r.selectedElementId=null)})},redo:()=>{e(r=>{r.historyIndex<r.history.length-1&&(r.historyIndex+=1,r.schema=JSON.parse(JSON.stringify(r.history[r.historyIndex])),r.selectedElementId=null)})},canUndo:()=>t().historyIndex>0,canRedo:()=>{const r=t();return r.historyIndex<r.history.length-1},setMode:r=>{e(o=>{o.mode=r})},loadSchema:r=>{e(o=>{o.schema=r,o.history=[JSON.parse(JSON.stringify(r))],o.historyIndex=0,o.selectedElementId=null})},exportSchema:()=>JSON.parse(JSON.stringify(t().schema)),resetForm:()=>{e(r=>{const o=Ud();r.schema=o,r.history=[JSON.parse(JSON.stringify(o))],r.historyIndex=0,r.selectedElementId=null})},updateFormTitle:r=>{e(o=>{var a;const n={...o.schema,title:r,metadata:{...o.schema.metadata,updatedAt:new Date().toISOString(),createdAt:((a=o.schema.metadata)==null?void 0:a.createdAt)||new Date().toISOString()}};qt(o,n)})},updateFormDescription:r=>{e(o=>{var a;const n={...o.schema,description:r,metadata:{...o.schema.metadata,updatedAt:new Date().toISOString(),createdAt:((a=o.schema.metadata)==null?void 0:a.createdAt)||new Date().toISOString()}};qt(o,n)})},setHoveredElementId:r=>{e(o=>{o.hoveredElementId=r})},setDraggedElementType:r=>{e(o=>{o.draggedElementType=r})},hasWizard:()=>t().schema.elements.some(r=>r.type==="pages"),addWizardStep:(r,o)=>{e(n=>{var s;const a={...n.schema};a.elements=n.schema.elements.map(i=>{var c,d;if(i.id===r&&i.type==="pages"){const f=((c=i.config)==null?void 0:c.steps)||[];return{...i,config:{...i.config,steps:[...f,o],activeStepId:((d=i.config)==null?void 0:d.activeStepId)||o.id}}}return i}),a.metadata={...a.metadata,updatedAt:new Date().toISOString(),createdAt:((s=a.metadata)==null?void 0:s.createdAt)||new Date().toISOString()},qt(n,a)})},updateWizardStep:(r,o,n)=>{e(a=>{var i;const s={...a.schema};s.elements=a.schema.elements.map(c=>{var d;if(c.id===r&&c.type==="pages"){const f=(((d=c.config)==null?void 0:d.steps)||[]).map(u=>u.id===o?{...u,...n}:u);return{...c,config:{...c.config,steps:f}}}return c}),s.metadata={...s.metadata,updatedAt:new Date().toISOString(),createdAt:((i=s.metadata)==null?void 0:i.createdAt)||new Date().toISOString()},qt(a,s)})},removeWizardStep:(r,o)=>{e(n=>{var u,h;const a=n.schema.elements.find(m=>m.id===r);if(!a||a.type!=="pages")return;const s=((u=a.config)==null?void 0:u.steps)||[];if(s.length<=1){console.warn("Wizard must have at least one step");return}const i=`${r}:${o}`,c=new Set,d=m=>{n.schema.elements.forEach(g=>{var y;(g.parentId===m||(y=g.parentId)!=null&&y.startsWith(`${m}:`))&&(c.add(g.id),d(g.id))})};d(i);const f={...n.schema};f.elements=n.schema.elements.map(m=>{var g,y,b;if(m.id===r){const C=s.filter(x=>x.id!==o),w=((g=m.config)==null?void 0:g.activeStepId)===o?(y=C[0])==null?void 0:y.id:(b=m.config)==null?void 0:b.activeStepId;return{...m,config:{...m.config,steps:C,activeStepId:w},children:(m.children||[]).filter(x=>!c.has(x))}}return m}),f.elements=f.elements.filter(m=>!c.has(m.id)),f.metadata={...f.metadata,updatedAt:new Date().toISOString(),createdAt:((h=f.metadata)==null?void 0:h.createdAt)||new Date().toISOString()},qt(n,f)})},setActiveWizardStep:(r,o)=>{e(n=>{const a={...n.schema};a.elements=n.schema.elements.map(s=>s.id===r&&s.type==="pages"?{...s,config:{...s.config,activeStepId:o}}:s),n.schema=a})},getContainerChildren:(r,o)=>{const n=t(),a=o?`${r}:${o}`:r;return n.schema.elements.filter(s=>s.parentId===a).sort((s,i)=>s.order-i.order)},validateSchema:()=>{const r=t(),o=[],n=r.schema.elements.map(s=>s.attributes.name),a=n.filter((s,i)=>n.indexOf(s)!==i);return a.length>0&&a.forEach(s=>{o.push({type:"error",message:`Duplicate field name: "${s}"`})}),r.schema.elements.forEach(s=>{(!s.attributes.name||s.attributes.name.trim()==="")&&o.push({type:"error",elementId:s.id,message:`Element "${s.properties.label||s.type}" has no field name`})}),r.schema.elements.forEach(s=>{var i;(i=s.validation)!=null&&i.required&&(!s.properties.label||s.properties.label.trim()==="")&&o.push({type:"warning",elementId:s.id,message:"Required element has no label"})}),{valid:o.filter(s=>s.type==="error").length===0,errors:o}}})));function kv(){const e=t=>{const o=navigator.platform.toUpperCase().indexOf("MAC")>=0?t.metaKey:t.ctrlKey;o&&t.key==="z"&&!t.shiftKey?(t.preventDefault(),R.getState().undo()):(o&&t.shiftKey&&t.key==="z"||o&&t.key==="y")&&(t.preventDefault(),R.getState().redo())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)}const _v=()=>{const e=R(r=>r.selectedElementId);return R(r=>r.schema.elements).find(r=>r.id===e)};class Dv{constructor(){wl(this,"elements",new Map);wl(this,"customGroups",new Map)}register(t,r={}){const{override:o=!1,group:n}=r;if(this.elements.has(t.type)&&!o){console.warn(`Element type "${t.type}" is already registered. Use { override: true } to replace it.`);return}if(!t.type)throw new Error("Element definition must have a type");if(!t.renderOnCanvas)throw new Error(`Element "${t.type}" must have a renderOnCanvas function`);if(!t.render)throw new Error(`Element "${t.type}" must have a render function`);if(!t.getDefaultValues)throw new Error(`Element "${t.type}" must have a getDefaultValues function`);if(this.elements.set(t.type,t),n){const a=this.customGroups.get(n);a?a.elements.push(t):this.customGroups.set(n,{id:n,label:n,elements:[t]})}}get(t){return this.elements.get(t)}has(t){return this.elements.has(t)}getAll(){return Array.from(this.elements.values())}getByCategory(t){return this.getAll().filter(r=>r.category===t)}getByStructure(t){return this.getAll().filter(r=>r.structure===t)}getByTypeCategory(t){return this.getAll().filter(r=>r.typeCategory===t)}getGroups(){const t=[],r={textInput:{label:"Text Input",order:1},numeric:{label:"Numeric",order:2},contact:{label:"Contact",order:3},security:{label:"Security",order:4},selection:{label:"Selection",order:5},matrix:{label:"Matrix",order:6},dateTime:{label:"Date & Time",order:7},fileUpload:{label:"File Upload",order:8},display:{label:"Display",order:9},product:{label:"Porduct",order:10},payment:{label:"Payment",order:11},orther:{label:"Other",order:12}},o={heading:{label:"Headings",order:10},layout:{label:"Layout",order:11},repeatable:{label:"Repeatable",order:12},special:{label:"Special",order:13}};for(const[n,a]of Object.entries(r)){const s=this.getAll().filter(i=>i.category==="field"&&i.subCategory===n);s.length>0&&t.push({id:n,label:a.label,elements:s,order:a.order})}for(const[n,a]of Object.entries(o)){const s=this.getAll().filter(i=>i.category==="page"&&i.subCategory===n);s.length>0&&t.push({id:n,label:a.label,elements:s,order:a.order})}for(const n of this.customGroups.values())t.push({...n,order:n.order??100});return t.sort((n,a)=>(n.order??0)-(a.order??0))}unregister(t){if(!this.elements.has(t))return!1;this.elements.delete(t);for(const r of this.customGroups.values()){const o=r.elements.findIndex(n=>n.type===t);o!==-1&&r.elements.splice(o,1)}return!0}clear(){this.elements.clear(),this.customGroups.clear()}getIcon(t){const r=this.get(t);return r==null?void 0:r.icon}getLabel(t){const r=this.get(t);return r==null?void 0:r.label}isContainer(t){const r=this.get(t);return(r==null?void 0:r.isContainer)??!1}supportsValidation(t){const r=this.get(t);return(r==null?void 0:r.supportsValidation)??!0}supportsOptions(t){const r=this.get(t);return(r==null?void 0:r.supportsOptions)??!1}getDefaultValues(t){const r=this.get(t);return r?r.getDefaultValues():{properties:{},layout:{},validation:{},config:{}}}}const dt=new Dv;function Av(e,t){dt.register(e,t)}function Tv(e,t){for(const r of e)dt.register(r,t)}function Iv(e){return dt.unregister(e)}function Pv(e){return dt.get(e)}function Mv(e){return dt.has(e)}function Hd(e){var t,r,o="";if(typeof e=="string"||typeof e=="number")o+=e;else if(typeof e=="object")if(Array.isArray(e)){var n=e.length;for(t=0;t<n;t++)e[t]&&(r=Hd(e[t]))&&(o&&(o+=" "),o+=r)}else for(r in e)e[r]&&(o&&(o+=" "),o+=r);return o}function jd(){for(var e,t,r=0,o="",n=arguments.length;r<n;r++)(e=arguments[r])&&(t=Hd(e))&&(o&&(o+=" "),o+=t);return o}const Ov=(e,t)=>{const r=new Array(e.length+t.length);for(let o=0;o<e.length;o++)r[o]=e[o];for(let o=0;o<t.length;o++)r[e.length+o]=t[o];return r},Lv=(e,t)=>({classGroupId:e,validator:t}),Yd=(e=new Map,t=null,r)=>({nextPart:e,validators:t,classGroupId:r}),ma="-",qd=[],Fv="arbitrary..",$v=e=>{const t=Vv(e),{conflictingClassGroups:r,conflictingClassGroupModifiers:o}=e;return{getClassGroupId:s=>{if(s.startsWith("[")&&s.endsWith("]"))return Gv(s);const i=s.split(ma),c=i[0]===""&&i.length>1?1:0;return Qd(i,c,t)},getConflictingClassGroupIds:(s,i)=>{if(i){const c=o[s],d=r[s];return c?d?Ov(d,c):c:d||qd}return r[s]||qd}}},Qd=(e,t,r)=>{if(e.length-t===0)return r.classGroupId;const n=e[t],a=r.nextPart.get(n);if(a){const d=Qd(e,t+1,a);if(d)return d}const s=r.validators;if(s===null)return;const i=t===0?e.join(ma):e.slice(t).join(ma),c=s.length;for(let d=0;d<c;d++){const f=s[d];if(f.validator(i))return f.classGroupId}},Gv=e=>e.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const t=e.slice(1,-1),r=t.indexOf(":"),o=t.slice(0,r);return o?Fv+o:void 0})(),Vv=e=>{const{theme:t,classGroups:r}=e;return zv(r,t)},zv=(e,t)=>{const r=Yd();for(const o in e){const n=e[o];Ll(n,r,o,t)}return r},Ll=(e,t,r,o)=>{const n=e.length;for(let a=0;a<n;a++){const s=e[a];Bv(s,t,r,o)}},Bv=(e,t,r,o)=>{if(typeof e=="string"){Uv(e,t,r);return}if(typeof e=="function"){Wv(e,t,r,o);return}Hv(e,t,r,o)},Uv=(e,t,r)=>{const o=e===""?t:Kd(t,e);o.classGroupId=r},Wv=(e,t,r,o)=>{if(jv(e)){Ll(e(o),t,r,o);return}t.validators===null&&(t.validators=[]),t.validators.push(Lv(r,e))},Hv=(e,t,r,o)=>{const n=Object.entries(e),a=n.length;for(let s=0;s<a;s++){const[i,c]=n[s];Ll(c,Kd(t,i),r,o)}},Kd=(e,t)=>{let r=e;const o=t.split(ma),n=o.length;for(let a=0;a<n;a++){const s=o[a];let i=r.nextPart.get(s);i||(i=Yd(),r.nextPart.set(s,i)),r=i}return r},jv=e=>"isThemeGetter"in e&&e.isThemeGetter===!0,Yv=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,r=Object.create(null),o=Object.create(null);const n=(a,s)=>{r[a]=s,t++,t>e&&(t=0,o=r,r=Object.create(null))};return{get(a){let s=r[a];if(s!==void 0)return s;if((s=o[a])!==void 0)return n(a,s),s},set(a,s){a in r?r[a]=s:n(a,s)}}},Fl="!",Xd=":",qv=[],Jd=(e,t,r,o,n)=>({modifiers:e,hasImportantModifier:t,baseClassName:r,maybePostfixModifierPosition:o,isExternal:n}),Qv=e=>{const{prefix:t,experimentalParseClassName:r}=e;let o=n=>{const a=[];let s=0,i=0,c=0,d;const f=n.length;for(let y=0;y<f;y++){const b=n[y];if(s===0&&i===0){if(b===Xd){a.push(n.slice(c,y)),c=y+1;continue}if(b==="/"){d=y;continue}}b==="["?s++:b==="]"?s--:b==="("?i++:b===")"&&i--}const u=a.length===0?n:n.slice(c);let h=u,m=!1;u.endsWith(Fl)?(h=u.slice(0,-1),m=!0):u.startsWith(Fl)&&(h=u.slice(1),m=!0);const g=d&&d>c?d-c:void 0;return Jd(a,m,h,g)};if(t){const n=t+Xd,a=o;o=s=>s.startsWith(n)?a(s.slice(n.length)):Jd(qv,!1,s,void 0,!0)}if(r){const n=o;o=a=>r({className:a,parseClassName:n})}return o},Kv=e=>{const t=new Map;return e.orderSensitiveModifiers.forEach((r,o)=>{t.set(r,1e6+o)}),r=>{const o=[];let n=[];for(let a=0;a<r.length;a++){const s=r[a],i=s[0]==="[",c=t.has(s);i||c?(n.length>0&&(n.sort(),o.push(...n),n=[]),o.push(s)):n.push(s)}return n.length>0&&(n.sort(),o.push(...n)),o}},Xv=e=>({cache:Yv(e.cacheSize),parseClassName:Qv(e),sortModifiers:Kv(e),postfixLookupClassGroupIds:Jv(e),...$v(e)}),Jv=e=>{const t=Object.create(null),r=e.postfixLookupClassGroups;if(r)for(let o=0;o<r.length;o++)t[r[o]]=!0;return t},Zv=/\s+/,Rv=(e,t)=>{const{parseClassName:r,getClassGroupId:o,getConflictingClassGroupIds:n,sortModifiers:a,postfixLookupClassGroupIds:s}=t,i=[],c=e.trim().split(Zv);let d="";for(let f=c.length-1;f>=0;f-=1){const u=c[f],{isExternal:h,modifiers:m,hasImportantModifier:g,baseClassName:y,maybePostfixModifierPosition:b}=r(u);if(h){d=u+(d.length>0?" "+d:d);continue}let C=!!b,w;if(C){const M=y.substring(0,b);w=o(M);const k=w&&s[w]?o(y):void 0;k&&k!==w&&(w=k,C=!1)}else w=o(y);if(!w){if(!C){d=u+(d.length>0?" "+d:d);continue}if(w=o(y),!w){d=u+(d.length>0?" "+d:d);continue}C=!1}const x=m.length===0?"":m.length===1?m[0]:a(m).join(":"),S=g?x+Fl:x,N=S+w;if(i.indexOf(N)>-1)continue;i.push(N);const E=n(w,C);for(let M=0;M<E.length;++M){const k=E[M];i.push(S+k)}d=u+(d.length>0?" "+d:d)}return d},ex=(...e)=>{let t=0,r,o,n="";for(;t<e.length;)(r=e[t++])&&(o=Zd(r))&&(n&&(n+=" "),n+=o);return n},Zd=e=>{if(typeof e=="string")return e;let t,r="";for(let o=0;o<e.length;o++)e[o]&&(t=Zd(e[o]))&&(r&&(r+=" "),r+=t);return r},Rd=(e,...t)=>{let r,o,n,a;const s=c=>{const d=t.reduce((f,u)=>u(f),e());return r=Xv(d),o=r.cache.get,n=r.cache.set,a=i,i(c)},i=c=>{const d=o(c);if(d)return d;const f=Rv(c,r);return n(c,f),f};return a=s,(...c)=>a(ex(...c))},tx=[],ft=e=>{const t=r=>r[e]||tx;return t.isThemeGetter=!0,t},eu=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,tu=/^\((?:(\w[\w-]*):)?(.+)\)$/i,rx=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,ox=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,nx=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,ax=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,sx=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,lx=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Br=e=>rx.test(e),ke=e=>!!e&&!Number.isNaN(Number(e)),pr=e=>!!e&&Number.isInteger(Number(e)),$l=e=>e.endsWith("%")&&ke(e.slice(0,-1)),Ar=e=>ox.test(e),ru=()=>!0,ix=e=>nx.test(e)&&!ax.test(e),Gl=()=>!1,cx=e=>sx.test(e),dx=e=>lx.test(e),ux=e=>!ae(e)&&!se(e),px=e=>e.startsWith("@container")&&(e[10]==="/"&&e[11]!==void 0||e[11]==="s"&&e[16]!==void 0&&e.startsWith("-size/",10)||e[11]==="n"&&e[18]!==void 0&&e.startsWith("-normal/",10)),fx=e=>Ur(e,iu,Gl),ae=e=>eu.test(e),io=e=>Ur(e,cu,ix),ou=e=>Ur(e,wx,ke),hx=e=>Ur(e,uu,ru),mx=e=>Ur(e,du,Gl),nu=e=>Ur(e,su,Gl),gx=e=>Ur(e,lu,dx),ga=e=>Ur(e,pu,cx),se=e=>tu.test(e),pn=e=>co(e,cu),bx=e=>co(e,du),au=e=>co(e,su),yx=e=>co(e,iu),vx=e=>co(e,lu),ba=e=>co(e,pu,!0),xx=e=>co(e,uu,!0),Ur=(e,t,r)=>{const o=eu.exec(e);return o?o[1]?t(o[1]):r(o[2]):!1},co=(e,t,r=!1)=>{const o=tu.exec(e);return o?o[1]?t(o[1]):r:!1},su=e=>e==="position"||e==="percentage",lu=e=>e==="image"||e==="url",iu=e=>e==="length"||e==="size"||e==="bg-size",cu=e=>e==="length",wx=e=>e==="number",du=e=>e==="family-name",uu=e=>e==="number"||e==="weight",pu=e=>e==="shadow",fu=()=>{const e=ft("color"),t=ft("font"),r=ft("text"),o=ft("font-weight"),n=ft("tracking"),a=ft("leading"),s=ft("breakpoint"),i=ft("container"),c=ft("spacing"),d=ft("radius"),f=ft("shadow"),u=ft("inset-shadow"),h=ft("text-shadow"),m=ft("drop-shadow"),g=ft("blur"),y=ft("perspective"),b=ft("aspect"),C=ft("ease"),w=ft("animate"),x=()=>["auto","avoid","all","avoid-page","page","left","right","column"],S=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],N=()=>[...S(),se,ae],E=()=>["auto","hidden","clip","visible","scroll"],M=()=>["auto","contain","none"],k=()=>[se,ae,c],T=()=>[Br,"full","auto",...k()],A=()=>[pr,"none","subgrid",se,ae],L=()=>["auto",{span:["full",pr,se,ae]},pr,se,ae],O=()=>[pr,"auto",se,ae],F=()=>["auto","min","max","fr",se,ae],V=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],re=()=>["start","end","center","stretch","center-safe","end-safe"],K=()=>["auto",...k()],H=()=>[Br,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...k()],ee=()=>[Br,"screen","full","dvw","lvw","svw","min","max","fit",...k()],G=()=>[Br,"screen","full","lh","dvh","lvh","svh","min","max","fit",...k()],z=()=>[e,se,ae],Ce=()=>[...S(),au,nu,{position:[se,ae]}],$=()=>["no-repeat",{repeat:["","x","y","space","round"]}],q=()=>["auto","cover","contain",yx,fx,{size:[se,ae]}],xe=()=>[$l,pn,io],oe=()=>["","none","full",d,se,ae],he=()=>["",ke,pn,io],Y=()=>["solid","dashed","dotted","double"],ce=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],te=()=>[ke,$l,au,nu],Ne=()=>["","none",g,se,ae],be=()=>["none",ke,se,ae],ue=()=>["none",ke,se,ae],X=()=>[ke,se,ae],ne=()=>[Br,"full",...k()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[Ar],breakpoint:[Ar],color:[ru],container:[Ar],"drop-shadow":[Ar],ease:["in","out","in-out"],font:[ux],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[Ar],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[Ar],shadow:[Ar],spacing:["px",ke],text:[Ar],"text-shadow":[Ar],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",Br,ae,se,b]}],container:["container"],"container-type":[{"@container":["","normal","size",se,ae]}],"container-named":[px],columns:[{columns:[ke,ae,se,i]}],"break-after":[{"break-after":x()}],"break-before":[{"break-before":x()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:N()}],overflow:[{overflow:E()}],"overflow-x":[{"overflow-x":E()}],"overflow-y":[{"overflow-y":E()}],overscroll:[{overscroll:M()}],"overscroll-x":[{"overscroll-x":M()}],"overscroll-y":[{"overscroll-y":M()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{"inset-s":T(),start:T()}],end:[{"inset-e":T(),end:T()}],"inset-bs":[{"inset-bs":T()}],"inset-be":[{"inset-be":T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:["visible","invisible","collapse"],z:[{z:[pr,"auto",se,ae]}],basis:[{basis:[Br,"full","auto",i,...k()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[ke,Br,"auto","initial","none",ae]}],grow:[{grow:["",ke,se,ae]}],shrink:[{shrink:["",ke,se,ae]}],order:[{order:[pr,"first","last","none",se,ae]}],"grid-cols":[{"grid-cols":A()}],"col-start-end":[{col:L()}],"col-start":[{"col-start":O()}],"col-end":[{"col-end":O()}],"grid-rows":[{"grid-rows":A()}],"row-start-end":[{row:L()}],"row-start":[{"row-start":O()}],"row-end":[{"row-end":O()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":F()}],"auto-rows":[{"auto-rows":F()}],gap:[{gap:k()}],"gap-x":[{"gap-x":k()}],"gap-y":[{"gap-y":k()}],"justify-content":[{justify:[...V(),"normal"]}],"justify-items":[{"justify-items":[...re(),"normal"]}],"justify-self":[{"justify-self":["auto",...re()]}],"align-content":[{content:["normal",...V()]}],"align-items":[{items:[...re(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...re(),{baseline:["","last"]}]}],"place-content":[{"place-content":V()}],"place-items":[{"place-items":[...re(),"baseline"]}],"place-self":[{"place-self":["auto",...re()]}],p:[{p:k()}],px:[{px:k()}],py:[{py:k()}],ps:[{ps:k()}],pe:[{pe:k()}],pbs:[{pbs:k()}],pbe:[{pbe:k()}],pt:[{pt:k()}],pr:[{pr:k()}],pb:[{pb:k()}],pl:[{pl:k()}],m:[{m:K()}],mx:[{mx:K()}],my:[{my:K()}],ms:[{ms:K()}],me:[{me:K()}],mbs:[{mbs:K()}],mbe:[{mbe:K()}],mt:[{mt:K()}],mr:[{mr:K()}],mb:[{mb:K()}],ml:[{ml:K()}],"space-x":[{"space-x":k()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":k()}],"space-y-reverse":["space-y-reverse"],size:[{size:H()}],"inline-size":[{inline:["auto",...ee()]}],"min-inline-size":[{"min-inline":["auto",...ee()]}],"max-inline-size":[{"max-inline":["none",...ee()]}],"block-size":[{block:["auto",...G()]}],"min-block-size":[{"min-block":["auto",...G()]}],"max-block-size":[{"max-block":["none",...G()]}],w:[{w:[i,"screen",...H()]}],"min-w":[{"min-w":[i,"screen","none",...H()]}],"max-w":[{"max-w":[i,"screen","none","prose",{screen:[s]},...H()]}],h:[{h:["screen","lh",...H()]}],"min-h":[{"min-h":["screen","lh","none",...H()]}],"max-h":[{"max-h":["screen","lh",...H()]}],"font-size":[{text:["base",r,pn,io]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[o,xx,hx]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",$l,ae]}],"font-family":[{font:[bx,mx,t]}],"font-features":[{"font-features":[ae]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[n,se,ae]}],"line-clamp":[{"line-clamp":[ke,"none",se,ou]}],leading:[{leading:[a,...k()]}],"list-image":[{"list-image":["none",se,ae]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",se,ae]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:z()}],"text-color":[{text:z()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...Y(),"wavy"]}],"text-decoration-thickness":[{decoration:[ke,"from-font","auto",se,io]}],"text-decoration-color":[{decoration:z()}],"underline-offset":[{"underline-offset":[ke,"auto",se,ae]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:k()}],"tab-size":[{tab:[pr,se,ae]}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",se,ae]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",se,ae]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:Ce()}],"bg-repeat":[{bg:$()}],"bg-size":[{bg:q()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},pr,se,ae],radial:["",se,ae],conic:[pr,se,ae]},vx,gx]}],"bg-color":[{bg:z()}],"gradient-from-pos":[{from:xe()}],"gradient-via-pos":[{via:xe()}],"gradient-to-pos":[{to:xe()}],"gradient-from":[{from:z()}],"gradient-via":[{via:z()}],"gradient-to":[{to:z()}],rounded:[{rounded:oe()}],"rounded-s":[{"rounded-s":oe()}],"rounded-e":[{"rounded-e":oe()}],"rounded-t":[{"rounded-t":oe()}],"rounded-r":[{"rounded-r":oe()}],"rounded-b":[{"rounded-b":oe()}],"rounded-l":[{"rounded-l":oe()}],"rounded-ss":[{"rounded-ss":oe()}],"rounded-se":[{"rounded-se":oe()}],"rounded-ee":[{"rounded-ee":oe()}],"rounded-es":[{"rounded-es":oe()}],"rounded-tl":[{"rounded-tl":oe()}],"rounded-tr":[{"rounded-tr":oe()}],"rounded-br":[{"rounded-br":oe()}],"rounded-bl":[{"rounded-bl":oe()}],"border-w":[{border:he()}],"border-w-x":[{"border-x":he()}],"border-w-y":[{"border-y":he()}],"border-w-s":[{"border-s":he()}],"border-w-e":[{"border-e":he()}],"border-w-bs":[{"border-bs":he()}],"border-w-be":[{"border-be":he()}],"border-w-t":[{"border-t":he()}],"border-w-r":[{"border-r":he()}],"border-w-b":[{"border-b":he()}],"border-w-l":[{"border-l":he()}],"divide-x":[{"divide-x":he()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":he()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...Y(),"hidden","none"]}],"divide-style":[{divide:[...Y(),"hidden","none"]}],"border-color":[{border:z()}],"border-color-x":[{"border-x":z()}],"border-color-y":[{"border-y":z()}],"border-color-s":[{"border-s":z()}],"border-color-e":[{"border-e":z()}],"border-color-bs":[{"border-bs":z()}],"border-color-be":[{"border-be":z()}],"border-color-t":[{"border-t":z()}],"border-color-r":[{"border-r":z()}],"border-color-b":[{"border-b":z()}],"border-color-l":[{"border-l":z()}],"divide-color":[{divide:z()}],"outline-style":[{outline:[...Y(),"none","hidden"]}],"outline-offset":[{"outline-offset":[ke,se,ae]}],"outline-w":[{outline:["",ke,pn,io]}],"outline-color":[{outline:z()}],shadow:[{shadow:["","none",f,ba,ga]}],"shadow-color":[{shadow:z()}],"inset-shadow":[{"inset-shadow":["none",u,ba,ga]}],"inset-shadow-color":[{"inset-shadow":z()}],"ring-w":[{ring:he()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:z()}],"ring-offset-w":[{"ring-offset":[ke,io]}],"ring-offset-color":[{"ring-offset":z()}],"inset-ring-w":[{"inset-ring":he()}],"inset-ring-color":[{"inset-ring":z()}],"text-shadow":[{"text-shadow":["none",h,ba,ga]}],"text-shadow-color":[{"text-shadow":z()}],opacity:[{opacity:[ke,se,ae]}],"mix-blend":[{"mix-blend":[...ce(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":ce()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[ke]}],"mask-image-linear-from-pos":[{"mask-linear-from":te()}],"mask-image-linear-to-pos":[{"mask-linear-to":te()}],"mask-image-linear-from-color":[{"mask-linear-from":z()}],"mask-image-linear-to-color":[{"mask-linear-to":z()}],"mask-image-t-from-pos":[{"mask-t-from":te()}],"mask-image-t-to-pos":[{"mask-t-to":te()}],"mask-image-t-from-color":[{"mask-t-from":z()}],"mask-image-t-to-color":[{"mask-t-to":z()}],"mask-image-r-from-pos":[{"mask-r-from":te()}],"mask-image-r-to-pos":[{"mask-r-to":te()}],"mask-image-r-from-color":[{"mask-r-from":z()}],"mask-image-r-to-color":[{"mask-r-to":z()}],"mask-image-b-from-pos":[{"mask-b-from":te()}],"mask-image-b-to-pos":[{"mask-b-to":te()}],"mask-image-b-from-color":[{"mask-b-from":z()}],"mask-image-b-to-color":[{"mask-b-to":z()}],"mask-image-l-from-pos":[{"mask-l-from":te()}],"mask-image-l-to-pos":[{"mask-l-to":te()}],"mask-image-l-from-color":[{"mask-l-from":z()}],"mask-image-l-to-color":[{"mask-l-to":z()}],"mask-image-x-from-pos":[{"mask-x-from":te()}],"mask-image-x-to-pos":[{"mask-x-to":te()}],"mask-image-x-from-color":[{"mask-x-from":z()}],"mask-image-x-to-color":[{"mask-x-to":z()}],"mask-image-y-from-pos":[{"mask-y-from":te()}],"mask-image-y-to-pos":[{"mask-y-to":te()}],"mask-image-y-from-color":[{"mask-y-from":z()}],"mask-image-y-to-color":[{"mask-y-to":z()}],"mask-image-radial":[{"mask-radial":[se,ae]}],"mask-image-radial-from-pos":[{"mask-radial-from":te()}],"mask-image-radial-to-pos":[{"mask-radial-to":te()}],"mask-image-radial-from-color":[{"mask-radial-from":z()}],"mask-image-radial-to-color":[{"mask-radial-to":z()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":S()}],"mask-image-conic-pos":[{"mask-conic":[ke]}],"mask-image-conic-from-pos":[{"mask-conic-from":te()}],"mask-image-conic-to-pos":[{"mask-conic-to":te()}],"mask-image-conic-from-color":[{"mask-conic-from":z()}],"mask-image-conic-to-color":[{"mask-conic-to":z()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:Ce()}],"mask-repeat":[{mask:$()}],"mask-size":[{mask:q()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",se,ae]}],filter:[{filter:["","none",se,ae]}],blur:[{blur:Ne()}],brightness:[{brightness:[ke,se,ae]}],contrast:[{contrast:[ke,se,ae]}],"drop-shadow":[{"drop-shadow":["","none",m,ba,ga]}],"drop-shadow-color":[{"drop-shadow":z()}],grayscale:[{grayscale:["",ke,se,ae]}],"hue-rotate":[{"hue-rotate":[ke,se,ae]}],invert:[{invert:["",ke,se,ae]}],saturate:[{saturate:[ke,se,ae]}],sepia:[{sepia:["",ke,se,ae]}],"backdrop-filter":[{"backdrop-filter":["","none",se,ae]}],"backdrop-blur":[{"backdrop-blur":Ne()}],"backdrop-brightness":[{"backdrop-brightness":[ke,se,ae]}],"backdrop-contrast":[{"backdrop-contrast":[ke,se,ae]}],"backdrop-grayscale":[{"backdrop-grayscale":["",ke,se,ae]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[ke,se,ae]}],"backdrop-invert":[{"backdrop-invert":["",ke,se,ae]}],"backdrop-opacity":[{"backdrop-opacity":[ke,se,ae]}],"backdrop-saturate":[{"backdrop-saturate":[ke,se,ae]}],"backdrop-sepia":[{"backdrop-sepia":["",ke,se,ae]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":k()}],"border-spacing-x":[{"border-spacing-x":k()}],"border-spacing-y":[{"border-spacing-y":k()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",se,ae]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[ke,"initial",se,ae]}],ease:[{ease:["linear","initial",C,se,ae]}],delay:[{delay:[ke,se,ae]}],animate:[{animate:["none",w,se,ae]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[y,se,ae]}],"perspective-origin":[{"perspective-origin":N()}],rotate:[{rotate:be()}],"rotate-x":[{"rotate-x":be()}],"rotate-y":[{"rotate-y":be()}],"rotate-z":[{"rotate-z":be()}],scale:[{scale:ue()}],"scale-x":[{"scale-x":ue()}],"scale-y":[{"scale-y":ue()}],"scale-z":[{"scale-z":ue()}],"scale-3d":["scale-3d"],skew:[{skew:X()}],"skew-x":[{"skew-x":X()}],"skew-y":[{"skew-y":X()}],transform:[{transform:[se,ae,"","none","gpu","cpu"]}],"transform-origin":[{origin:N()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:ne()}],"translate-x":[{"translate-x":ne()}],"translate-y":[{"translate-y":ne()}],"translate-z":[{"translate-z":ne()}],"translate-none":["translate-none"],zoom:[{zoom:[pr,se,ae]}],accent:[{accent:z()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:z()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",se,ae]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scrollbar-thumb-color":[{"scrollbar-thumb":z()}],"scrollbar-track-color":[{"scrollbar-track":z()}],"scrollbar-gutter":[{"scrollbar-gutter":["auto","stable","both"]}],"scrollbar-w":[{scrollbar:["auto","thin","none"]}],"scroll-m":[{"scroll-m":k()}],"scroll-mx":[{"scroll-mx":k()}],"scroll-my":[{"scroll-my":k()}],"scroll-ms":[{"scroll-ms":k()}],"scroll-me":[{"scroll-me":k()}],"scroll-mbs":[{"scroll-mbs":k()}],"scroll-mbe":[{"scroll-mbe":k()}],"scroll-mt":[{"scroll-mt":k()}],"scroll-mr":[{"scroll-mr":k()}],"scroll-mb":[{"scroll-mb":k()}],"scroll-ml":[{"scroll-ml":k()}],"scroll-p":[{"scroll-p":k()}],"scroll-px":[{"scroll-px":k()}],"scroll-py":[{"scroll-py":k()}],"scroll-ps":[{"scroll-ps":k()}],"scroll-pe":[{"scroll-pe":k()}],"scroll-pbs":[{"scroll-pbs":k()}],"scroll-pbe":[{"scroll-pbe":k()}],"scroll-pt":[{"scroll-pt":k()}],"scroll-pr":[{"scroll-pr":k()}],"scroll-pb":[{"scroll-pb":k()}],"scroll-pl":[{"scroll-pl":k()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",se,ae]}],fill:[{fill:["none",...z()]}],"stroke-w":[{stroke:[ke,pn,io,ou]}],stroke:[{stroke:["none",...z()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{"container-named":["container-type"],overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},postfixLookupClassGroups:["container-type"],orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},Cx=(e,{cacheSize:t,prefix:r,experimentalParseClassName:o,extend:n={},override:a={}})=>(Oo(e,"cacheSize",t),Oo(e,"prefix",r),Oo(e,"experimentalParseClassName",o),ya(e.theme,a.theme),ya(e.classGroups,a.classGroups),ya(e.conflictingClassGroups,a.conflictingClassGroups),ya(e.conflictingClassGroupModifiers,a.conflictingClassGroupModifiers),Oo(e,"postfixLookupClassGroups",a.postfixLookupClassGroups),Oo(e,"orderSensitiveModifiers",a.orderSensitiveModifiers),va(e.theme,n.theme),va(e.classGroups,n.classGroups),va(e.conflictingClassGroups,n.conflictingClassGroups),va(e.conflictingClassGroupModifiers,n.conflictingClassGroupModifiers),Vl(e,n,"postfixLookupClassGroups"),Vl(e,n,"orderSensitiveModifiers"),e),Oo=(e,t,r)=>{r!==void 0&&(e[t]=r)},ya=(e,t)=>{if(t)for(const r in t)Oo(e,r,t[r])},va=(e,t)=>{if(t)for(const r in t)Vl(e,t,r)},Vl=(e,t,r)=>{const o=t[r];o!==void 0&&(e[r]=e[r]?e[r].concat(o):o)},Sx=((e,...t)=>typeof e=="function"?Rd(fu,e,...t):Rd(()=>Cx(fu(),e),...t))({prefix:""});function p(...e){const t=jd(e);return Sx(t)}const xa=({label:e,required:t,htmlFor:r,className:o=""})=>e?l.jsxs("label",{htmlFor:r,className:p("block text-sm font-medium text-gray-700",o),children:[e,t&&l.jsx("span",{className:p("text-red-500 ml-1"),children:"*"})]}):null,wa=({description:e,className:t=""})=>e?l.jsx("p",{className:p("text-xs text-gray-500",t),children:e}):null,fn=({errors:e,className:t=""})=>!e||e.length===0?null:l.jsx("div",{className:p("space-y-1",t),children:e.map((r,o)=>l.jsx("p",{className:p("text-xs text-red-500"),children:r},o))}),Nx=({label:e,description:t,required:r,errors:o,children:n})=>l.jsxs("div",{className:p("space-y-1.5"),children:[l.jsx(xa,{label:e,required:r}),l.jsx(wa,{description:t}),n,l.jsx(fn,{errors:o})]}),de=({label:e,description:t,required:r,errors:o,labelPosition:n="top",className:a="",children:s})=>n==="hidden"?l.jsxs("div",{className:p("space-y-1.5",a),children:[s,l.jsx(fn,{errors:o})]}):n==="left"?l.jsxs("div",{className:p("flex items-start gap-4",a),children:[l.jsxs("div",{className:p("w-1/3 pt-2"),children:[l.jsx(xa,{label:e,required:r}),l.jsx(wa,{description:t})]}),l.jsxs("div",{className:p("flex-1 space-y-1.5"),children:[s,l.jsx(fn,{errors:o})]})]}):l.jsxs("div",{className:p("space-y-1.5",a),children:[l.jsx(xa,{label:e,required:r}),l.jsx(wa,{description:t}),s,l.jsx(fn,{errors:o})]}),Ex=({children:e,className:t=""})=>l.jsx("div",{className:p("pointer-events-none",t),children:e}),kx=({icon:e="📋",message:t,subMessage:r})=>l.jsxs("div",{className:p("border-2 border-dashed border-gray-300 rounded-lg p-6 text-center bg-gray-50"),children:[l.jsx("span",{className:p("text-4xl"),children:e}),l.jsx("p",{className:p("mt-2 text-sm text-gray-500"),children:t}),r&&l.jsx("p",{className:p("text-xs text-gray-400"),children:r})]}),uo=({icon:e,children:t,iconPosition:r="left"})=>l.jsxs("div",{className:p("relative"),children:[l.jsx("span",{className:p("absolute top-1/2 -translate-y-1/2 text-gray-400",r==="left"?"left-3":"right-3"),children:e}),t]}),zl=({prefix:e,suffix:t,children:r})=>l.jsxs("div",{className:p("flex"),children:[e&&l.jsx("span",{className:p("inline-flex items-center px-3 border border-r-0 border-gray-300 rounded-l-md bg-gray-100 text-gray-500 text-sm"),children:e}),l.jsx("div",{className:p("flex-1",!e&&"rounded-l-md",!t&&"rounded-r-md"),children:r}),t&&l.jsx("span",{className:p("inline-flex items-center px-3 border border-l-0 border-gray-300 rounded-r-md bg-gray-100 text-gray-500 text-sm"),children:t})]});function Ot(e={}){const{hasError:t=!1,disabled:r=!1,size:o="medium",hasLeftIcon:n=!1,hasRightIcon:a=!1,hasPrefix:s=!1,hasSuffix:i=!1}=e;return p("w-full","border","transition-colors","focus:outline-none","focus:ring-2","focus:ring-offset-0",{small:"px-2 py-1.5 text-sm",medium:"px-3 py-2 text-sm",large:"px-4 py-3 text-base"}[o],!s&&!i&&"rounded-md",s&&!i&&"rounded-r-md",!s&&i&&"rounded-l-md",n&&"pl-10",a&&"pr-10",r&&"bg-gray-50 text-gray-500 cursor-not-allowed border-gray-300",t&&!r&&"border-red-500 focus:ring-red-500 focus:border-red-500",!t&&!r&&"border-gray-300 focus:ring-blue-500 focus:border-blue-500")}function Ct(e="medium"){return p("w-full",{small:"px-2 py-1.5 text-sm",medium:"px-3 py-2 text-sm",large:"px-4 py-3 text-base"}[e],"border","border-gray-300","rounded-md","bg-gray-50","text-gray-500")}function _x(e={}){const{variant:t="primary",size:r="medium",disabled:o=!1}=e,n={small:"px-4 py-1.5 text-sm",medium:"px-6 py-2.5 text-base",large:"px-8 py-3 text-lg"},a={primary:"bg-blue-600 text-white hover:bg-blue-700",secondary:"bg-gray-600 text-white hover:bg-gray-700",outline:"border-2 border-blue-600 text-blue-600 bg-transparent hover:bg-blue-50",ghost:"text-blue-600 hover:bg-blue-50"};return p("rounded-md","font-medium","transition-colors","focus:outline-none","focus:ring-2","focus:ring-offset-2",n[r],o&&"opacity-50 cursor-not-allowed",a[t])}function j(e){const{element:t,properties:r,layout:o,validation:n,config:a,mode:s,value:i,onChange:c,errors:d,readOnly:f,disabled:u}=e;return{label:r.label,description:r.description,placeholder:r.placeholder,prefix:r.prefix,suffix:r.suffix,required:(n==null?void 0:n.required)??!1,labelPosition:o.labelPosition??"top",isCanvas:s==="canvas",isDisabled:u||f||s==="canvas",value:i,onChange:c,errors:d,config:a,element:t}}const Dx=[{type:"shortText",structure:"field",typeCategory:"Text",label:"Short Text",description:"Single line text input",icon:"📝",category:"field",subCategory:"textInput",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0,showPrefix:!0,showSuffix:!0},configSection:{title:"Text Input Settings",icon:"📝"},fields:[{key:"showCharacterCount",label:"Show Character Count",type:"checkbox",section:"config",description:"Display remaining character count"},{key:"autoComplete",label:"Autocomplete",type:"select",section:"config",description:"Browser autofill hint",options:[{value:"off",label:"Off"},{value:"on",label:"On"},{value:"name",label:"Full Name"},{value:"given-name",label:"First Name"},{value:"family-name",label:"Last Name"},{value:"email",label:"Email"},{value:"tel",label:"Phone"},{value:"organization",label:"Organization"},{value:"street-address",label:"Street Address"},{value:"address-level2",label:"City"},{value:"address-level1",label:"State / Province"},{value:"postal-code",label:"Postal / Zip Code"},{value:"country",label:"Country"},{value:"username",label:"Username"},{value:"organization-title",label:"Job Title"}]}]},getDefaultValues:()=>({properties:{label:"Short Text",placeholder:"Enter text..."},layout:{labelPosition:"top",size:"full"},validation:{maxLength:255}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a}=j(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,children:l.jsx("input",{type:"text",placeholder:o,disabled:!0,className:Ct()})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,value:s,onChange:i,errors:c,isDisabled:d}=j(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,errors:c,children:l.jsx("input",{type:"text",placeholder:o,value:s??"",onChange:f=>i==null?void 0:i(f.target.value),disabled:d,className:Ot({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})})})}},{type:"longText",structure:"field",typeCategory:"Text",label:"Long Text",description:"Multi-line text area",icon:"📄",category:"field",subCategory:"textInput",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Text Area Settings",icon:"📄"},fields:[{key:"rows",label:"Visible Rows",type:"number",section:"config",min:1,max:20,placeholder:"3",description:"Number of visible text lines"},{key:"autoResize",label:"Auto-resize",type:"checkbox",section:"config",description:"Automatically adjust height to content"},{key:"showCharacterCount",label:"Show Character Count",type:"checkbox",section:"config",description:"Display remaining character count"}]},getDefaultValues:()=>({properties:{label:"Long Text",placeholder:"Enter text..."},layout:{labelPosition:"top",size:"full"},config:{rows:3,autoResize:!1},validation:{maxLength:5e3}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,config:s}=j(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,children:l.jsx("textarea",{placeholder:o,disabled:!0,rows:(s==null?void 0:s.rows)||3,className:`${Ct()} resize-none`})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,value:s,onChange:i,errors:c,isDisabled:d,config:f}=j(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,errors:c,children:l.jsx("textarea",{placeholder:o,value:s??"",onChange:u=>i==null?void 0:i(u.target.value),disabled:d,rows:(f==null?void 0:f.rows)||3,className:`${Ot({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})} resize-none`})})}},{type:"multiLineInput",structure:"field",typeCategory:"Text",label:"Multi-Line Input",description:"Auto-expanding text area",icon:"📝",category:"field",subCategory:"textInput",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Auto-Resize Settings",icon:"📑"},fields:[{key:"minRows",label:"Min Rows",type:"number",section:"config",min:1,max:20,placeholder:"2",colSpan:1},{key:"maxRows",label:"Max Rows",type:"number",section:"config",min:1,max:50,placeholder:"10",colSpan:1},{key:"autoResize",label:"Auto-resize",type:"checkbox",section:"config",description:"Grow textarea to fit content"},{key:"showCharacterCount",label:"Show Character Count",type:"checkbox",section:"config",description:"Display remaining character count"}]},getDefaultValues:()=>({properties:{label:"Multi-Line Input",placeholder:"Enter text..."},layout:{labelPosition:"top",size:"full"},config:{minRows:2,maxRows:10,autoResize:!0},validation:{maxLength:5e3}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,config:s}=j(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,children:l.jsx("textarea",{placeholder:o,disabled:!0,rows:(s==null?void 0:s.minRows)||2,className:`${Ct()} resize-none`})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,value:s,onChange:i,errors:c,isDisabled:d,config:f}=j(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,errors:c,children:l.jsx("textarea",{placeholder:o,value:s??"",onChange:u=>i==null?void 0:i(u.target.value),disabled:d,rows:(f==null?void 0:f.minRows)||2,className:`${Ot({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})} resize-none`})})}},{type:"textEditor",structure:"field",typeCategory:"Text",label:"Rich Text Editor",description:"WYSIWYG text editor",icon:"✏️",category:"field",subCategory:"textInput",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!1},configSection:{title:"Editor Settings",icon:"✏️"},fields:[{key:"toolbarPreset",label:"Toolbar",type:"select",section:"config",description:"Choose which formatting options appear",options:[{value:"basic",label:"Basic (Bold, Italic, Underline)"},{value:"standard",label:"Standard (+ Links, Lists)"},{value:"advanced",label:"Advanced (+ Headings, Blockquote)"},{value:"full",label:"Full (All options)"}]},{key:"height",label:"Height (px)",type:"number",section:"config",min:100,max:800,placeholder:"200",description:"Editor area height in pixels"},{key:"allowImages",label:"Allow Images",type:"checkbox",section:"config",description:"Let users embed images in content"},{key:"allowLinks",label:"Allow Links",type:"checkbox",section:"config",description:"Let users insert hyperlinks"}]},getDefaultValues:()=>({properties:{label:"Rich Text",placeholder:"Start typing..."},layout:{labelPosition:"top",size:"full"},config:{toolbar:["bold","italic","underline","link"],height:200,allowImages:!1,allowLinks:!0},validation:{maxLength:1e4}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,config:s}=j(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,children:l.jsxs("div",{className:p("border border-gray-300 rounded-md bg-gray-50 overflow-hidden"),children:[l.jsxs("div",{className:p("flex items-center gap-1 p-2 border-b border-gray-200 bg-gray-100"),children:[l.jsx("button",{disabled:!0,className:p("p-1.5 rounded hover:bg-gray-200 text-gray-600"),children:l.jsx("strong",{children:"B"})}),l.jsx("button",{disabled:!0,className:p("p-1.5 rounded hover:bg-gray-200 text-gray-600"),children:l.jsx("em",{children:"I"})}),l.jsx("button",{disabled:!0,className:p("p-1.5 rounded hover:bg-gray-200 text-gray-600"),children:l.jsx("u",{children:"U"})}),l.jsx("span",{className:p("w-px h-4 bg-gray-300 mx-1")}),l.jsx("button",{disabled:!0,className:p("p-1.5 rounded hover:bg-gray-200 text-gray-600 text-xs"),children:"🔗"})]}),l.jsx("div",{className:p("p-3 min-h-[120px] text-gray-400 text-sm"),style:{height:(s==null?void 0:s.height)||200},children:o||"Start typing..."})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c,config:d}=j(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{className:`border rounded-md overflow-hidden ${((i==null?void 0:i.length)??0)>0?"border-red-500":"border-gray-300"}`,children:[l.jsxs("div",{className:p("flex items-center gap-1 p-2 border-b border-gray-200 bg-gray-100"),children:[l.jsx("button",{type:"button",disabled:c,className:p("p-1.5 rounded hover:bg-gray-200 text-gray-600 disabled:opacity-50"),children:l.jsx("strong",{children:"B"})}),l.jsx("button",{type:"button",disabled:c,className:p("p-1.5 rounded hover:bg-gray-200 text-gray-600 disabled:opacity-50"),children:l.jsx("em",{children:"I"})}),l.jsx("button",{type:"button",disabled:c,className:p("p-1.5 rounded hover:bg-gray-200 text-gray-600 disabled:opacity-50"),children:l.jsx("u",{children:"U"})}),l.jsx("span",{className:p("w-px h-4 bg-gray-300 mx-1")}),l.jsx("button",{type:"button",disabled:c,className:p("p-1.5 rounded hover:bg-gray-200 text-gray-600 text-xs disabled:opacity-50"),children:"🔗"})]}),l.jsx("div",{contentEditable:!c,suppressContentEditableWarning:!0,onInput:f=>s==null?void 0:s(f.target.innerHTML),dangerouslySetInnerHTML:{__html:a??""},className:p("p-3 min-h-[120px] text-sm focus:outline-none"),style:{height:(d==null?void 0:d.height)||200}})]})})}}],Ax=[{type:"number",structure:"field",typeCategory:"Numeric",label:"Number",description:"Numeric input field",icon:"🔢",category:"field",subCategory:"numeric",dataType:"number",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0,showPrefix:!0,showSuffix:!0},configSection:{title:"Number Settings",icon:"🔢"},fields:[{key:"step",label:"Step",type:"number",section:"config",min:.01,placeholder:"1",description:"Increment/decrement amount",colSpan:1},{key:"decimals",label:"Decimals",type:"number",section:"config",min:0,max:10,placeholder:"0",description:"Decimal places to allow",colSpan:1},{key:"thousandsSeparator",label:"Thousands Separator",type:"checkbox",section:"config",description:"Format numbers with commas (e.g. 1,000)"},{key:"currencySymbol",label:"Currency Symbol",type:"text",section:"config",placeholder:"$, €, £, ¥…",description:"Leave empty for plain numbers"},{key:"numberFormat",label:"Display Format",type:"select",section:"config",options:[{value:"number",label:"Plain Number"},{value:"currency",label:"Currency"},{value:"percent",label:"Percentage"}]},{key:"showStepper",label:"Show Stepper Buttons",type:"checkbox",section:"config",description:"Display +/- spin buttons"}]},getDefaultValues:()=>({properties:{label:"Number",placeholder:"Enter number..."},layout:{labelPosition:"top",size:"full"},config:{step:1,decimals:0,thousandsSeparator:!1}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,prefix:s,suffix:i}=j(e),c=l.jsx("input",{type:"number",placeholder:o,disabled:!0,className:`${Ct()} ${s?"":"rounded-l-md"} ${i?"":"rounded-r-md"}`});return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,children:s||i?l.jsx(zl,{prefix:s,suffix:i,children:c}):c})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,prefix:s,suffix:i,value:c,onChange:d,errors:f,isDisabled:u,config:h}=j(e),m=y=>{const b=y.target.value===""?void 0:Number(y.target.value);d==null||d(b)},g=l.jsx("input",{type:"number",placeholder:o,value:c??"",onChange:m,disabled:u,step:(h==null?void 0:h.step)||1,className:`${Ot({hasError:((f==null?void 0:f.length)??0)>0,disabled:u})} ${s?"rounded-l-none":""} ${i?"rounded-r-none":""}`});return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,errors:f,children:s||i?l.jsx(zl,{prefix:s,suffix:i,children:g}):g})}},{type:"slider",structure:"field",typeCategory:"Numeric",label:"Slider",description:"Range slider for numeric values",icon:"🎚️",category:"field",subCategory:"numeric",dataType:"number",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Slider Settings",icon:"🎚️"},fields:[{key:"min",label:"Min Value",type:"number",section:"config",placeholder:"0",colSpan:1},{key:"max",label:"Max Value",type:"number",section:"config",placeholder:"100",colSpan:1},{key:"step",label:"Step",type:"number",section:"config",min:1,placeholder:"1",description:"Size of each increment"},{key:"showValue",label:"Show Value Label",type:"checkbox",section:"config",description:"Display the current value beside the slider"},{key:"showMarks",label:"Show Tick Marks",type:"checkbox",section:"config",description:"Display scale marks along the track"},{key:"showTooltip",label:"Show Tooltip on Drag",type:"checkbox",section:"config",description:"Floating tooltip while dragging"},{key:"trackColor",label:"Track Color",type:"select",section:"config",description:"Visual theme of the slider track",options:[{value:"primary",label:"Primary (Blue)"},{value:"success",label:"Success (Green)"},{value:"warning",label:"Warning (Amber)"},{value:"danger",label:"Danger (Red)"},{value:"neutral",label:"Neutral (Gray)"}]}]},getDefaultValues:()=>({properties:{label:"Slider",description:"Drag to select a value"},layout:{labelPosition:"top",size:"full"},config:{min:0,max:100,step:1,showValue:!0,showMarks:!1}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:a}=j(e),s=(a==null?void 0:a.min)??0,i=(a==null?void 0:a.max)??100;return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:p("flex items-center gap-3"),children:[l.jsx("span",{className:p("text-xs text-gray-500"),children:s}),l.jsx("input",{type:"range",min:s,max:i,disabled:!0,className:p("flex-1 h-2 bg-gray-200 rounded-lg appearance-none cursor-not-allowed")}),l.jsx("span",{className:p("text-xs text-gray-500"),children:i}),(a==null?void 0:a.showValue)&&l.jsx("span",{className:p("text-sm font-medium text-gray-600 min-w-[40px] text-center"),children:Math.round((s+i)/2)})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c,config:d}=j(e),f=(d==null?void 0:d.min)??0,u=(d==null?void 0:d.max)??100,h=(d==null?void 0:d.step)??1,m=a??f;return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{className:p("flex items-center gap-3"),children:[l.jsx("span",{className:p("text-xs text-gray-500"),children:f}),l.jsx("input",{type:"range",min:f,max:u,step:h,value:m,onChange:g=>s==null?void 0:s(Number(g.target.value)),disabled:c,className:p("flex-1 h-2 bg-gray-200 rounded-lg appearance-none cursor-pointer disabled:cursor-not-allowed")}),l.jsx("span",{className:p("text-xs text-gray-500"),children:u}),(d==null?void 0:d.showValue)&&l.jsx("span",{className:p("text-sm font-medium text-gray-600 min-w-[40px] text-center"),children:m})]})})}},{type:"rangeSlider",structure:"field",typeCategory:"Numeric",label:"Range Slider",description:"Select a range of values",icon:"↔️",category:"field",subCategory:"numeric",dataType:"object",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Range Slider Settings",icon:"↔️"},fields:[{key:"min",label:"Range Min",type:"number",section:"config",placeholder:"0",colSpan:1},{key:"max",label:"Range Max",type:"number",section:"config",placeholder:"100",colSpan:1},{key:"step",label:"Step",type:"number",section:"config",min:1,placeholder:"1",description:"Size of each increment",colSpan:1},{key:"minRange",label:"Min Gap",type:"number",section:"config",min:0,placeholder:"10",description:"Minimum distance between handles",colSpan:1},{key:"showValue",label:"Show Value Labels",type:"checkbox",section:"config",description:"Display selected range below the slider"},{key:"showTooltip",label:"Show Tooltip on Drag",type:"checkbox",section:"config",description:"Floating tooltip while dragging handles"},{key:"showBarLabels",label:"Show Min/Max Labels",type:"checkbox",section:"config",description:"Show the min/max values at track edges"}]},getDefaultValues:()=>({properties:{label:"Range Slider",description:"Select a range"},layout:{labelPosition:"top",size:"full"},config:{min:0,max:100,step:1,showValue:!0,minRange:10}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:a}=j(e),s=(a==null?void 0:a.min)??0,i=(a==null?void 0:a.max)??100;return l.jsxs(de,{label:t,description:r,required:o,labelPosition:n,children:[l.jsxs("div",{className:p("flex items-center gap-3"),children:[l.jsx("span",{className:p("text-xs text-gray-500"),children:s}),l.jsxs("div",{className:p("flex-1 relative h-2 bg-gray-200 rounded-lg"),children:[l.jsx("div",{className:p("absolute h-full bg-blue-400 rounded-lg left-[20%] right-[30%]")}),l.jsx("div",{className:p("absolute w-4 h-4 bg-white border-2 border-blue-500 rounded-full -top-1 left-[20%] -ml-2")}),l.jsx("div",{className:p("absolute w-4 h-4 bg-white border-2 border-blue-500 rounded-full -top-1 right-[30%] -mr-2")})]}),l.jsx("span",{className:p("text-xs text-gray-500"),children:i})]}),(a==null?void 0:a.showValue)&&l.jsxs("div",{className:p("flex justify-between text-sm text-gray-600 mt-2"),children:[l.jsxs("span",{children:["Min: ",Math.round(s+(i-s)*.2)]}),l.jsxs("span",{children:["Max: ",Math.round(s+(i-s)*.7)]})]})]})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c,config:d}=j(e),f=(d==null?void 0:d.min)??0,u=(d==null?void 0:d.max)??100,h=(d==null?void 0:d.step)??1,m=(a==null?void 0:a.min)??Math.round(f+(u-f)*.2),g=(a==null?void 0:a.max)??Math.round(f+(u-f)*.8),y=x=>{const S=Number(x.target.value),N=Math.min(S,g-((d==null?void 0:d.minRange)??0));s==null||s({min:N,max:g})},b=x=>{const S=Number(x.target.value),N=Math.max(S,m+((d==null?void 0:d.minRange)??0));s==null||s({min:m,max:N})},C=(m-f)/(u-f)*100,w=100-(g-f)/(u-f)*100;return l.jsxs(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:[l.jsxs("div",{className:p("flex items-center gap-3"),children:[l.jsx("span",{className:p("text-xs text-gray-500"),children:f}),l.jsxs("div",{className:p("flex-1 relative h-2 bg-gray-200 rounded-lg"),children:[l.jsx("div",{className:p("absolute h-full bg-blue-400 rounded-lg"),style:{left:`${C}%`,right:`${w}%`}}),l.jsx("input",{type:"range",min:f,max:u,step:h,value:m,onChange:y,disabled:c,className:p("absolute w-full h-full appearance-none bg-transparent pointer-events-auto cursor-pointer disabled:cursor-not-allowed"),style:{zIndex:m>u-10?5:3}}),l.jsx("input",{type:"range",min:f,max:u,step:h,value:g,onChange:b,disabled:c,className:p("absolute w-full h-full appearance-none bg-transparent pointer-events-auto cursor-pointer disabled:cursor-not-allowed"),style:{zIndex:4}})]}),l.jsx("span",{className:p("text-xs text-gray-500"),children:u})]}),(d==null?void 0:d.showValue)&&l.jsxs("div",{className:p("flex justify-between text-sm text-gray-600 mt-2"),children:[l.jsxs("span",{children:["Min: ",m]}),l.jsxs("span",{children:["Max: ",g]})]})]})}}],Tx=[{type:"singleChoice",structure:"field",typeCategory:"Selection",label:"Single Choice",description:"Radio button selection",icon:"⭕",category:"field",subCategory:"selection",dataType:"string",supportsValidation:!0,supportsOptions:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Choice Settings",icon:"⭕"},fields:[{key:"layoutDirection",label:"Layout",type:"select",section:"config",description:"How options are arranged",options:[{value:"vertical",label:"Vertical (stacked)"},{value:"horizontal",label:"Horizontal (inline)"},{value:"grid",label:"Grid (2 columns)"}]},{key:"allowOther",label:'Allow "Other"',type:"checkbox",section:"config",description:'Add a free-text "Other" option at the end'},{key:"randomizeOptions",label:"Randomize Order",type:"checkbox",section:"config",description:"Shuffle options for each respondent (surveys)"},{key:"showAsButtonGroup",label:"Show as Button Group",type:"checkbox",section:"config",description:"Display options as selectable buttons instead of radios"},{key:"otherLabel",label:'"Other" Label',type:"text",section:"config",placeholder:"Other (please specify)",showWhen:{field:"allowOther",value:!0}}]},getDefaultValues:()=>({properties:{label:"Single Choice",description:"Select one option"},layout:{labelPosition:"top",size:"full"},config:{options:[{label:"Option 1",value:"option1"},{label:"Option 2",value:"option2"},{label:"Option 3",value:"option3"}],allowOther:!1}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:a}=j(e),s=(a==null?void 0:a.options)||[];return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:p("space-y-2"),children:[s.map((i,c)=>l.jsxs("label",{className:p("flex items-center gap-2"),children:[l.jsx("input",{type:"radio",disabled:!0,className:p("text-blue-600")}),l.jsx("span",{className:p("text-sm text-gray-700"),children:i.label})]},c)),(a==null?void 0:a.allowOther)&&l.jsxs("label",{className:p("flex items-center gap-2"),children:[l.jsx("input",{type:"radio",disabled:!0,className:p("text-blue-600")}),l.jsx("span",{className:p("text-sm text-gray-700"),children:"Other"})]})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c,config:d}=j(e),f=(d==null?void 0:d.options)||[];return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{className:p("space-y-2"),children:[f.map((u,h)=>l.jsxs("label",{className:p("flex items-center gap-2 cursor-pointer"),children:[l.jsx("input",{type:"radio",checked:a===u.value,onChange:()=>s==null?void 0:s(u.value),disabled:c,className:p("text-blue-600")}),l.jsx("span",{className:p("text-sm text-gray-700"),children:u.label})]},h)),(d==null?void 0:d.allowOther)&&l.jsxs("label",{className:p("flex items-center gap-2 cursor-pointer"),children:[l.jsx("input",{type:"radio",checked:a==="__other__",onChange:()=>s==null?void 0:s("__other__"),disabled:c,className:p("text-blue-600")}),l.jsx("span",{className:p("text-sm text-gray-700"),children:"Other"})]})]})})}},{type:"multipleChoice",structure:"field",typeCategory:"Selection",label:"Multiple Choice",description:"Checkbox multi-select",icon:"☑️",category:"field",subCategory:"selection",dataType:"array",supportsValidation:!0,supportsOptions:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Choice Settings",icon:"☑️"},fields:[{key:"layoutDirection",label:"Layout",type:"select",section:"config",description:"How options are arranged",options:[{value:"vertical",label:"Vertical (stacked)"},{value:"horizontal",label:"Horizontal (inline)"},{value:"grid",label:"Grid (2 columns)"}]},{key:"allowOther",label:'Allow "Other"',type:"checkbox",section:"config",description:'Add a free-text "Other" option at the end'},{key:"randomizeOptions",label:"Randomize Order",type:"checkbox",section:"config",description:"Shuffle options for each respondent (surveys)"},{key:"showSelectAll",label:'Show "Select All"',type:"checkbox",section:"config",description:"Add a shortcut to check all options at once"},{key:"otherLabel",label:'"Other" Label',type:"text",section:"config",placeholder:"Other (please specify)",showWhen:{field:"allowOther",value:!0}}]},getDefaultValues:()=>({properties:{label:"Multiple Choice",description:"Select all that apply"},layout:{labelPosition:"top",size:"full"},config:{options:[{label:"Option 1",value:"option1"},{label:"Option 2",value:"option2"},{label:"Option 3",value:"option3"}],allowOther:!1}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:a}=j(e),s=(a==null?void 0:a.options)||[];return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:p("space-y-2"),children:[s.map((i,c)=>l.jsxs("label",{className:p("flex items-center gap-2"),children:[l.jsx("input",{type:"checkbox",disabled:!0,className:p("text-blue-600 rounded")}),l.jsx("span",{className:p("text-sm text-gray-700"),children:i.label})]},c)),(a==null?void 0:a.allowOther)&&l.jsxs("label",{className:p("flex items-center gap-2"),children:[l.jsx("input",{type:"checkbox",disabled:!0,className:p("text-blue-600 rounded")}),l.jsx("span",{className:p("text-sm text-gray-700"),children:"Other"})]})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c,config:d}=j(e),f=(d==null?void 0:d.options)||[],u=Array.isArray(a)?a:[],h=m=>{const g=u.includes(m)?u.filter(y=>y!==m):[...u,m];s==null||s(g)};return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{className:p("space-y-2"),children:[f.map((m,g)=>l.jsxs("label",{className:p("flex items-center gap-2 cursor-pointer"),children:[l.jsx("input",{type:"checkbox",checked:u.includes(m.value),onChange:()=>h(m.value),disabled:c,className:p("text-blue-600 rounded")}),l.jsx("span",{className:p("text-sm text-gray-700"),children:m.label})]},g)),(d==null?void 0:d.allowOther)&&l.jsxs("label",{className:p("flex items-center gap-2 cursor-pointer"),children:[l.jsx("input",{type:"checkbox",checked:u.includes("__other__"),onChange:()=>h("__other__"),disabled:c,className:p("text-blue-600 rounded")}),l.jsx("span",{className:p("text-sm text-gray-700"),children:"Other"})]})]})})}},{type:"dropdown",structure:"field",typeCategory:"Selection",label:"Dropdown",description:"Select from a dropdown list",icon:"📋",category:"field",subCategory:"selection",dataType:"string",supportsValidation:!0,supportsOptions:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Dropdown Settings",icon:"📋"},fields:[{key:"allowOther",label:'Allow "Other"',type:"checkbox",section:"config",description:"Let users type a custom value"},{key:"searchable",label:"Searchable",type:"checkbox",section:"config",description:"Enable type-to-search filtering"},{key:"clearable",label:"Clearable",type:"checkbox",section:"config",description:"Show a clear button to deselect"},{key:"otherLabel",label:'"Other" Label',type:"text",section:"config",placeholder:"Other (please specify)",showWhen:{field:"allowOther",value:!0}}]},getDefaultValues:()=>({properties:{label:"Dropdown",placeholder:"Select an option..."},layout:{labelPosition:"top",size:"full"},config:{options:[{label:"Option 1",value:"option1"},{label:"Option 2",value:"option2"},{label:"Option 3",value:"option3"}],allowOther:!1}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,config:s}=j(e),i=(s==null?void 0:s.options)||[];return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,children:l.jsxs("select",{disabled:!0,className:Ct(),children:[l.jsx("option",{children:o||"Select an option..."}),i.map((c,d)=>l.jsx("option",{value:c.value,children:c.label},d))]})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,value:s,onChange:i,errors:c,isDisabled:d,config:f}=j(e),u=(f==null?void 0:f.options)||[];return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,errors:c,children:l.jsxs("select",{value:s??"",onChange:h=>i==null?void 0:i(h.target.value||void 0),disabled:d,className:Ot({hasError:((c==null?void 0:c.length)??0)>0,disabled:d}),children:[l.jsx("option",{value:"",children:o||"Select an option..."}),u.map((h,m)=>l.jsx("option",{value:h.value,children:h.label},m))]})})}},{type:"tags",structure:"field",typeCategory:"Selection",label:"Tags",description:"Tag-style multi-select",icon:"🏷️",category:"field",subCategory:"selection",dataType:"array",supportsValidation:!0,supportsOptions:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Tags Settings",icon:"🏷️"},fields:[{key:"maxTags",label:"Max Tags",type:"number",section:"config",min:1,placeholder:"10",description:"Maximum number of tags allowed"},{key:"allowCustomTags",label:"Allow Custom Tags",type:"checkbox",section:"config",description:"Let users type their own tags"},{key:"showSuggestions",label:"Show Suggestions",type:"checkbox",section:"config",description:"Display suggestion dropdown while typing"},{key:"tagColor",label:"Tag Color",type:"select",section:"config",description:"Color theme for selected tags",options:[{value:"primary",label:"Primary (Blue)"},{value:"neutral",label:"Neutral (Gray)"},{value:"success",label:"Success (Green)"},{value:"warning",label:"Warning (Amber)"},{value:"danger",label:"Danger (Red)"}]}]},getDefaultValues:()=>({properties:{label:"Tags",placeholder:"Add tag...",description:"Type and press Enter to add tags"},layout:{labelPosition:"top",size:"full"},config:{options:[{label:"Tag 1",value:"tag1"},{label:"Tag 2",value:"tag2"},{label:"Tag 3",value:"tag3"}],maxTags:10,allowCustomTags:!0}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a}=j(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,children:l.jsxs("div",{className:p("flex flex-wrap gap-2 p-2 border border-gray-300 rounded-md bg-gray-50 min-h-[42px]"),children:[l.jsxs("span",{className:p("inline-flex items-center gap-1 px-2 py-1 bg-blue-100 text-blue-800 text-sm rounded"),children:["Tag 1",l.jsx("button",{disabled:!0,className:p("text-blue-600 hover:text-blue-800"),children:"×"})]}),l.jsxs("span",{className:p("inline-flex items-center gap-1 px-2 py-1 bg-blue-100 text-blue-800 text-sm rounded"),children:["Tag 2",l.jsx("button",{disabled:!0,className:p("text-blue-600 hover:text-blue-800"),children:"×"})]}),l.jsx("input",{type:"text",placeholder:o||"Add tag...",disabled:!0,className:p("flex-1 min-w-[100px] border-none bg-transparent text-sm focus:outline-none")})]})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,value:s,onChange:i,errors:c,isDisabled:d,config:f}=j(e),u=Array.isArray(s)?s:[],[h,m]=D.useState(""),g=b=>{b.key==="Enter"&&h.trim()&&(b.preventDefault(),!u.includes(h.trim())&&(!(f!=null&&f.maxTags)||u.length<f.maxTags)&&(i==null||i([...u,h.trim()])),m(""))},y=b=>{i==null||i(u.filter(C=>C!==b))};return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,errors:c,children:l.jsxs("div",{className:`flex flex-wrap gap-2 p-2 border rounded-md min-h-[42px] ${((c==null?void 0:c.length)??0)>0?"border-red-500":"border-gray-300"} ${d?"bg-gray-50":"bg-white"}`,children:[u.map((b,C)=>l.jsxs("span",{className:p("inline-flex items-center gap-1 px-2 py-1 bg-blue-100 text-blue-800 text-sm rounded"),children:[b,!d&&l.jsx("button",{type:"button",onClick:()=>y(b),className:p("text-blue-600 hover:text-blue-800"),children:"×"})]},C)),!d&&(!(f!=null&&f.maxTags)||u.length<f.maxTags)&&l.jsx("input",{type:"text",placeholder:o||"Add tag...",value:h,onChange:b=>m(b.target.value),onKeyDown:g,disabled:d,className:p("flex-1 min-w-[100px] border-none bg-transparent text-sm focus:outline-none")})]})})}},{type:"decisionBox",structure:"field",typeCategory:"Selection",label:"Decision Box",description:"Yes/No checkbox",icon:"✅",category:"field",subCategory:"selection",dataType:"boolean",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Decision Box Settings",icon:"✅"},fields:[{key:"checkedLabel",label:"Checked Label",type:"text",section:"config",placeholder:"Yes",description:"Label shown when checked",colSpan:1},{key:"uncheckedLabel",label:"Unchecked Label",type:"text",section:"config",placeholder:"No",description:"Label shown when unchecked",colSpan:1},{key:"showAsSwitch",label:"Show as Toggle Switch",type:"checkbox",section:"config",description:"Display as a switch instead of a checkbox"}]},getDefaultValues:()=>({properties:{label:"I agree to the terms and conditions"},layout:{labelPosition:"top",size:"full"},config:{checkedLabel:"Yes",uncheckedLabel:"No"}}),renderOnCanvas:e=>{const{label:t,description:r,required:o}=j(e);return l.jsx("div",{className:p("space-y-1.5"),children:l.jsxs("label",{className:p("flex items-start gap-3 cursor-pointer"),children:[l.jsx("input",{type:"checkbox",disabled:!0,className:p("mt-1 text-blue-600 rounded")}),l.jsxs("div",{children:[l.jsx("span",{className:p("text-sm text-gray-700"),children:t}),o&&l.jsx("span",{className:p("text-red-500 ml-1"),children:"*"}),r&&l.jsx("p",{className:p("text-xs text-gray-500 mt-0.5"),children:r})]})]})})},render:e=>{const{label:t,description:r,required:o,value:n,onChange:a,errors:s,isDisabled:i}=j(e);return l.jsxs("div",{className:p("space-y-1.5"),children:[l.jsxs("label",{className:p("flex items-start gap-3 cursor-pointer"),children:[l.jsx("input",{type:"checkbox",checked:n??!1,onChange:c=>a==null?void 0:a(c.target.checked),disabled:i,className:p("mt-1 text-blue-600 rounded")}),l.jsxs("div",{children:[l.jsx("span",{className:p("text-sm text-gray-700"),children:t}),o&&l.jsx("span",{className:p("text-red-500 ml-1"),children:"*"}),r&&l.jsx("p",{className:p("text-xs text-gray-500 mt-0.5"),children:r})]})]}),s&&s.length>0&&l.jsx("div",{className:p("space-y-1"),children:s.map((c,d)=>l.jsx("p",{className:p("text-xs text-red-500"),children:c},d))})]})}},{type:"toggleSwitch",structure:"field",typeCategory:"Selection",label:"Toggle Switch",description:"On/Off toggle switch",icon:"🔀",category:"field",subCategory:"selection",dataType:"boolean",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Toggle Settings",icon:"🔀"},fields:[{key:"onLabel",label:"On Label",type:"text",section:"config",placeholder:"On",description:"Label for the active state",colSpan:1},{key:"offLabel",label:"Off Label",type:"text",section:"config",placeholder:"Off",description:"Label for the inactive state",colSpan:1},{key:"showLabels",label:"Show State Labels",type:"checkbox",section:"config",description:"Display on/off text next to the switch"},{key:"defaultValue",label:"Default State",type:"select",section:"config",description:"Initial state of the switch",options:[{value:"off",label:"Off (unchecked)"},{value:"on",label:"On (checked)"}]}]},getDefaultValues:()=>({properties:{label:"Toggle Switch",description:"Toggle on or off"},layout:{labelPosition:"top",size:"full"},config:{onLabel:"On",offLabel:"Off"}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:a}=j(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:p("flex items-center gap-2"),children:[l.jsx("span",{className:p("text-sm text-gray-500"),children:(a==null?void 0:a.offLabel)||"Off"}),l.jsx("div",{className:p("relative w-11 h-6 bg-gray-300 rounded-full"),children:l.jsx("div",{className:p("absolute left-1 top-1 w-4 h-4 bg-white rounded-full transition-transform")})}),l.jsx("span",{className:p("text-sm text-gray-500"),children:(a==null?void 0:a.onLabel)||"On"})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c,config:d}=j(e),f=a??!1;return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{className:p("flex items-center gap-2"),children:[l.jsx("span",{className:p("text-sm text-gray-500"),children:(d==null?void 0:d.offLabel)||"Off"}),l.jsx("button",{type:"button",onClick:()=>!c&&(s==null?void 0:s(!f)),disabled:c,className:`relative w-11 h-6 rounded-full transition-colors ${f?"bg-blue-600":"bg-gray-300"} ${c?"opacity-50 cursor-not-allowed":"cursor-pointer"}`,children:l.jsx("div",{className:`absolute top-1 w-4 h-4 bg-white rounded-full transition-transform ${f?"translate-x-6":"translate-x-1"}`})}),l.jsx("span",{className:p("text-sm text-gray-500"),children:(d==null?void 0:d.onLabel)||"On"})]})})}}];var Ix=Object.defineProperty,Px=(e,t)=>Ix(e,"name",{value:t,configurable:!0});function Bl(e,[t,r]){return Math.min(r,Math.max(t,e))}Px(Bl,"clamp");var Mx=Object.defineProperty,Lo=(e,t)=>Mx(e,"name",{value:t,configurable:!0}),hu=!!(typeof window<"u"&&window.document&&window.document.createElement);function we(e,t,{checkForDefaultPrevented:r=!0}={}){return Lo(function(n){if(e==null||e(n),r===!1||!n||!n.defaultPrevented)return t==null?void 0:t(n)},"handleEvent")}Lo(we,"composeEventHandlers");function Ox(e){var t;if(!hu)throw new Error("Cannot access window outside of the DOM");return((t=e==null?void 0:e.ownerDocument)==null?void 0:t.defaultView)??window}Lo(Ox,"getOwnerWindow");function Ul(e){if(!hu)throw new Error("Cannot access document outside of the DOM");return(e==null?void 0:e.ownerDocument)??document}Lo(Ul,"getOwnerDocument");function mu(e,t=!1){const{activeElement:r}=Ul(e);if(!(r!=null&&r.nodeName))return null;if(gu(r)&&r.contentDocument)return mu(r.contentDocument.body,t);if(t){const o=r.getAttribute("aria-activedescendant");if(o){const n=Ul(r).getElementById(o);if(n)return n}}return r}Lo(mu,"getActiveElement");function gu(e){return e.tagName==="IFRAME"}Lo(gu,"isFrame");var Lx=Object.defineProperty,Qt=(e,t)=>Lx(e,"name",{value:t,configurable:!0});function Fx(e,t){const r=v.createContext(t);r.displayName=e+"Context";const o=Qt(a=>{const{children:s,...i}=a,c=v.useMemo(()=>i,Object.values(i));return l.jsx(r.Provider,{value:c,children:s})},"Provider");o.displayName=e+"Provider";function n(a,s={}){const{optional:i=!1}=s,c=v.useContext(r);if(c)return c;if(t!==void 0)return t;if(!i)throw new Error(`\`${a}\` must be used within \`${e}\``)}return Qt(n,"useContext"),[o,n]}Qt(Fx,"createContext");function rr(e,t=[]){let r=[];function o(a,s){const i=v.createContext(s);i.displayName=a+"Context";const c=r.length;r=[...r,s];const d=Qt(u=>{var C;const{scope:h,children:m,...g}=u,y=((C=h==null?void 0:h[e])==null?void 0:C[c])||i,b=v.useMemo(()=>g,Object.values(g));return l.jsx(y.Provider,{value:b,children:m})},"Provider");d.displayName=a+"Provider";function f(u,h,m={}){var C;const{optional:g=!1}=m,y=((C=h==null?void 0:h[e])==null?void 0:C[c])||i,b=v.useContext(y);if(b)return b;if(s!==void 0)return s;if(!g)throw new Error(`\`${u}\` must be used within \`${a}\``)}return Qt(f,"useContext"),[d,f]}Qt(o,"createContext");const n=Qt(()=>{const a=r.map(s=>v.createContext(s));return Qt(function(i){const c=(i==null?void 0:i[e])||a;return v.useMemo(()=>({[`__scope${e}`]:{...i,[e]:c}}),[i,c])},"useScope")},"createScope");return n.scopeName=e,[o,bu(n,...t)]}Qt(rr,"createContextScope");function bu(...e){const t=e[0];if(e.length===1)return t;const r=Qt(()=>{const o=e.map(n=>({useScope:n(),scopeName:n.scopeName}));return Qt(function(a){const s=o.reduce((i,{useScope:c,scopeName:d})=>{const u=c(a)[`__scope${d}`];return{...i,...u}},{});return v.useMemo(()=>({[`__scope${t.scopeName}`]:s}),[s])},"useComposedScopes")},"createScope");return r.scopeName=t.scopeName,r}Qt(bu,"composeContextScopes");var $x=Object.defineProperty,Wl=(e,t)=>$x(e,"name",{value:t,configurable:!0});function Hl(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}Wl(Hl,"setRef");function yu(...e){return t=>{let r=!1;const o=e.map(n=>{const a=Hl(n,t);return!r&&typeof a=="function"&&(r=!0),a});if(r)return()=>{for(let n=0;n<o.length;n++){const a=o[n];typeof a=="function"?a():Hl(e[n],null)}}}}Wl(yu,"composeRefs");function ze(...e){return v.useCallback(yu(...e),e)}Wl(ze,"useComposedRefs");var Gx=Object.defineProperty,or=(e,t)=>Gx(e,"name",{value:t,configurable:!0});function Wr(e){const t=v.forwardRef((r,o)=>{let{children:n,...a}=r,s=null,i=!1;const c=[];jl(n)&&typeof Ca=="function"&&(n=Ca(n._payload)),v.Children.forEach(n,h=>{var m;if(Su(h)){i=!0;const g=h;let y="child"in g.props?g.props.child:g.props.children;jl(y)&&typeof Ca=="function"&&(y=Ca(y._payload)),s=zx(g,y),c.push((m=s==null?void 0:s.props)==null?void 0:m.children)}else c.push(h)}),s?s=v.cloneElement(s,void 0,c):!i&&v.Children.count(n)===1&&v.isValidElement(n)&&(s=n);const d=s?Cu(s):void 0,f=ze(o,d);if(!s){if(n||n===0)throw new Error(i?Wx(e):Ux(e));return n}const u=wu(a,s.props??{});return s.type!==v.Fragment&&(u.ref=o?f:d),v.cloneElement(s,u)});return t.displayName=`${e}.Slot`,t}or(Wr,"createSlot");var Vx=Wr("Slot"),vu=Symbol.for("radix.slottable");function xu(e){const t=or(r=>"child"in r?r.children(r.child):r.children,"Slottable");return t.displayName=`${e}.Slottable`,t.__radixId=vu,t}or(xu,"createSlottable");var zx=or((e,t)=>{if("child"in e.props){const r=e.props.child;return v.isValidElement(r)?v.cloneElement(r,void 0,e.props.children(r.props.children)):null}return v.isValidElement(t)?t:null},"getSlottableElementFromSlottable");function wu(e,t){const r={...t};for(const o in t){const n=e[o],a=t[o];/^on[A-Z]/.test(o)?n&&a?r[o]=(...i)=>{const c=a(...i);return n(...i),c}:n&&(r[o]=n):o==="style"?r[o]={...n,...a}:o==="className"&&(r[o]=[n,a].filter(Boolean).join(" "))}return{...e,...r}}or(wu,"mergeProps");function Cu(e){var o,n;let t=(o=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:o.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=(n=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:n.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}or(Cu,"getElementRef");function Su(e){return v.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===vu}or(Su,"isSlottable");var Bx=Symbol.for("react.lazy");function jl(e){return e!=null&&typeof e=="object"&&"$$typeof"in e&&e.$$typeof===Bx&&"_payload"in e&&Nu(e._payload)}or(jl,"isLazyComponent");function Nu(e){return typeof e=="object"&&e!==null&&"then"in e}or(Nu,"isPromiseLike");var Ux=or(e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,"createSlotError"),Wx=or(e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,"createSlottableError"),Ca=v[" use ".trim().toString()],Hx=Object.defineProperty,gt=(e,t)=>Hx(e,"name",{value:t,configurable:!0});function Sa(e){const t=e+"CollectionProvider",[r,o]=rr(t),[n,a]=r(t,{collectionRef:{current:null},itemMap:new Map}),s=gt(y=>{const{scope:b,children:C}=y,w=v.useRef(null),x=v.useRef(new Map).current;return l.jsx(n,{scope:b,itemMap:x,collectionRef:w,children:C})},"CollectionProvider");s.displayName=t;const i=e+"CollectionSlot",c=Wr(i),d=v.forwardRef((y,b)=>{const{scope:C,children:w}=y,x=a(i,C),S=ze(b,x.collectionRef);return l.jsx(c,{ref:S,children:w})});d.displayName=i;const f=e+"CollectionItemSlot",u="data-radix-collection-item",h=Wr(f),m=v.forwardRef((y,b)=>{const{scope:C,children:w,...x}=y,S=v.useRef(null),N=ze(b,S),E=a(f,C);return v.useEffect(()=>(E.itemMap.set(S,{ref:S,...x}),()=>void E.itemMap.delete(S))),l.jsx(h,{[u]:"",ref:N,children:w})});m.displayName=f;function g(y){const b=a(e+"CollectionConsumer",y);return v.useCallback(()=>{const w=b.collectionRef.current;if(!w)return[];const x=Array.from(w.querySelectorAll(`[${u}]`));return Array.from(b.itemMap.values()).sort((E,M)=>x.indexOf(E.ref.current)-x.indexOf(M.ref.current))},[b.collectionRef,b.itemMap])}return gt(g,"useCollection"),[{Provider:s,Slot:d,ItemSlot:m},g,o]}gt(Sa,"createCollection");var Eu=new WeakMap,Yl=(jt=class extends Map{constructor(r){super(r);ev(this,pt);Cd(this,pt,[...super.keys()]),Eu.set(this,!0)}set(r,o){return Eu.get(this)&&(this.has(r)?Mt(this,pt)[Mt(this,pt).indexOf(r)]=r:Mt(this,pt).push(r)),super.set(r,o),this}insert(r,o,n){const a=this.has(o),s=Mt(this,pt).length,i=ql(r);let c=i>=0?i:s+i;const d=c<0||c>=s?-1:c;if(d===this.size||a&&d===this.size-1||d===-1)return this.set(o,n),this;const f=this.size+(a?0:1);i<0&&c++;const u=[...Mt(this,pt)];let h,m=!1;for(let g=c;g<f;g++)if(c===g){let y=u[g];u[g]===o&&(y=u[g+1]),a&&this.delete(o),h=this.get(y),this.set(o,n)}else{!m&&u[g-1]===o&&(m=!0);const y=u[m?g:g-1],b=h;h=this.get(y),this.delete(y),this.set(y,b)}return this}with(r,o,n){const a=new jt(this);return a.insert(r,o,n),a}before(r){const o=Mt(this,pt).indexOf(r)-1;if(!(o<0))return this.entryAt(o)}setBefore(r,o,n){const a=Mt(this,pt).indexOf(r);return a===-1?this:this.insert(a,o,n)}after(r){let o=Mt(this,pt).indexOf(r);if(o=o===-1||o===this.size-1?-1:o+1,o!==-1)return this.entryAt(o)}setAfter(r,o,n){const a=Mt(this,pt).indexOf(r);return a===-1?this:this.insert(a+1,o,n)}first(){return this.entryAt(0)}last(){return this.entryAt(-1)}clear(){return Cd(this,pt,[]),super.clear()}delete(r){const o=super.delete(r);return o&&Mt(this,pt).splice(Mt(this,pt).indexOf(r),1),o}deleteAt(r){const o=this.keyAt(r);return o!==void 0?this.delete(o):!1}at(r){const o=Na(Mt(this,pt),r);if(o!==void 0)return this.get(o)}entryAt(r){const o=Na(Mt(this,pt),r);if(o!==void 0)return[o,this.get(o)]}indexOf(r){return Mt(this,pt).indexOf(r)}keyAt(r){return Na(Mt(this,pt),r)}from(r,o){const n=this.indexOf(r);if(n===-1)return;let a=n+o;return a<0&&(a=0),a>=this.size&&(a=this.size-1),this.at(a)}keyFrom(r,o){const n=this.indexOf(r);if(n===-1)return;let a=n+o;return a<0&&(a=0),a>=this.size&&(a=this.size-1),this.keyAt(a)}find(r,o){let n=0;for(const a of this){if(Reflect.apply(r,o,[a,n,this]))return a;n++}}findIndex(r,o){let n=0;for(const a of this){if(Reflect.apply(r,o,[a,n,this]))return n;n++}return-1}filter(r,o){const n=[];let a=0;for(const s of this)Reflect.apply(r,o,[s,a,this])&&n.push(s),a++;return new jt(n)}map(r,o){const n=[];let a=0;for(const s of this)n.push([s[0],Reflect.apply(r,o,[s,a,this])]),a++;return new jt(n)}reduce(...r){const[o,n]=r;let a=0,s=n??this.at(0);for(const i of this)a===0&&r.length===1?s=i:s=Reflect.apply(o,this,[s,i,a,this]),a++;return s}reduceRight(...r){const[o,n]=r;let a=n??this.at(-1);for(let s=this.size-1;s>=0;s--){const i=this.at(s);s===this.size-1&&r.length===1?a=i:a=Reflect.apply(o,this,[a,i,s,this])}return a}toSorted(r){const o=[...this.entries()].sort(r);return new jt(o)}toReversed(){const r=new jt;for(let o=this.size-1;o>=0;o--){const n=this.keyAt(o),a=this.get(n);r.set(n,a)}return r}toSpliced(...r){const o=[...this.entries()];return o.splice(...r),new jt(o)}slice(r,o){const n=new jt;let a=this.size-1;if(r===void 0)return n;r<0&&(r=r+this.size),o!==void 0&&o>0&&(a=o-1);for(let s=r;s<=a;s++){const i=this.keyAt(s),c=this.get(i);n.set(i,c)}return n}every(r,o){let n=0;for(const a of this){if(!Reflect.apply(r,o,[a,n,this]))return!1;n++}return!0}some(r,o){let n=0;for(const a of this){if(Reflect.apply(r,o,[a,n,this]))return!0;n++}return!1}},pt=new WeakMap,gt(jt,"OrderedDict"),jt);function Na(e,t){if("at"in Array.prototype)return Array.prototype.at.call(e,t);const r=ku(e,t);return r===-1?void 0:e[r]}gt(Na,"at");function ku(e,t){const r=e.length,o=ql(t),n=o>=0?o:r+o;return n<0||n>=r?-1:n}gt(ku,"toSafeIndex");function ql(e){return e!==e||e===0?0:Math.trunc(e)}gt(ql,"toSafeInteger");function jx(e){const t=e+"CollectionProvider",[r,o]=rr(t),[n,a]=r(t,{collectionElement:null,collectionRef:{current:null},collectionRefObject:{current:null},itemMap:new Yl,setItemMap:gt(()=>{},"setItemMap")}),s=gt(({state:x,...S})=>x?l.jsx(c,{...S,state:x}):l.jsx(i,{...S}),"CollectionProvider");s.displayName=t;const i=gt(x=>{const S=b();return l.jsx(c,{...x,state:S})},"CollectionInit");i.displayName=t+"Init";const c=gt(x=>{const{scope:S,children:N,state:E}=x,M=v.useRef(null),[k,T]=v.useState(null),A=ze(M,T),[L,O]=E;return v.useEffect(()=>{if(!k)return;const F=Au(()=>{});return F.observe(k,{childList:!0,subtree:!0}),()=>{F.disconnect()}},[k]),l.jsx(n,{scope:S,itemMap:L,setItemMap:O,collectionRef:A,collectionRefObject:M,collectionElement:k,children:N})},"CollectionProviderImpl");c.displayName=t+"Impl";const d=e+"CollectionSlot",f=Wr(d),u=v.forwardRef((x,S)=>{const{scope:N,children:E}=x,M=a(d,N),k=ze(S,M.collectionRef);return l.jsx(f,{ref:k,children:E})});u.displayName=d;const h=e+"CollectionItemSlot",m="data-radix-collection-item",g=Wr(h),y=v.forwardRef((x,S)=>{const{scope:N,children:E,...M}=x,k=v.useRef(null),[T,A]=v.useState(null),L=ze(S,k,A),O=a(h,N),{setItemMap:F}=O,V=v.useRef(M);_u(V.current,M)||(V.current=M);const re=V.current;return v.useEffect(()=>{const K=re;return F(H=>T?H.has(T)?H.set(T,{...K,element:T}).toSorted(Ql):(H.set(T,{...K,element:T}),H.toSorted(Ql)):H),()=>{F(H=>!T||!H.has(T)?H:(H.delete(T),new Yl(H)))}},[T,re,F]),l.jsx(g,{[m]:"",ref:L,children:E})});y.displayName=h;function b(){return v.useState(new Yl)}gt(b,"useInitCollection");function C(x){const{itemMap:S}=a(e+"CollectionConsumer",x);return S}return gt(C,"useCollection"),[{Provider:s,Slot:u,ItemSlot:y},{createCollectionScope:o,useCollection:C,useInitCollection:b}]}gt(jx,"createCollection");function _u(e,t){if(e===t)return!0;if(typeof e!="object"||typeof t!="object"||e==null||t==null)return!1;const r=Object.keys(e),o=Object.keys(t);if(r.length!==o.length)return!1;for(const n of r)if(!Object.prototype.hasOwnProperty.call(t,n)||e[n]!==t[n])return!1;return!0}gt(_u,"shallowEqual");function Du(e,t){return!!(t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_PRECEDING)}gt(Du,"isElementPreceding");function Ql(e,t){return!e[1].element||!t[1].element?0:Du(e[1].element,t[1].element)?-1:1}gt(Ql,"sortByDocumentPosition");function Au(e){return new MutationObserver(r=>{for(const o of r)if(o.type==="childList"){e();return}})}gt(Au,"getChildListObserver");var Yx=Object.defineProperty,qx=(e,t)=>Yx(e,"name",{value:t,configurable:!0}),Qx=v.createContext(void 0);function hn(e){const t=v.useContext(Qx);return e||t||"ltr"}qx(hn,"useDirection");var Kx=Object.defineProperty,Xx=(e,t)=>Kx(e,"name",{value:t,configurable:!0}),Jx=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],Ie=Jx.reduce((e,t)=>{const r=Wr(`Primitive.${t}`),o=v.forwardRef((n,a)=>{const{asChild:s,...i}=n,c=s?r:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),l.jsx(c,{...i,ref:a})});return o.displayName=`Primitive.${t}`,{...e,[t]:o}},{});function Tu(e,t){e&&sn.flushSync(()=>e.dispatchEvent(t))}Xx(Tu,"dispatchDiscreteCustomEvent");var Zx=Object.defineProperty,Rx=(e,t)=>Zx(e,"name",{value:t,configurable:!0});function nr(e){const t=v.useRef(e);return v.useEffect(()=>{t.current=e}),v.useMemo(()=>((...r)=>{var o;return(o=t.current)==null?void 0:o.call(t,...r)}),[])}Rx(nr,"useCallbackRef");var ew=Object.defineProperty,bt=(e,t)=>ew(e,"name",{value:t,configurable:!0}),Kl="dismissableLayer.update",tw="dismissableLayer.pointerDownOutside",rw="dismissableLayer.focusOutside",Iu,Pu=v.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),Mu=v.forwardRef(bt(function(t,r){const{disableOutsidePointerEvents:o=!1,deferPointerDownOutside:n=!1,onEscapeKeyDown:a,onPointerDownOutside:s,onFocusOutside:i,onInteractOutside:c,onDismiss:d,...f}=t,u=v.useContext(Pu),[h,m]=v.useState(null),g=(h==null?void 0:h.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,y]=v.useState({}),b=ze(r,m),C=Array.from(u.layers),[w]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),x=w?C.indexOf(w):-1,S=h?C.indexOf(h):-1,N=u.layersWithOutsidePointerEventsDisabled.size>0,E=S>=x,M=v.useRef(!1),k=Ou(O=>{s==null||s(O),c==null||c(O),O.defaultPrevented||d==null||d()},{ownerDocument:g,deferPointerDownOutside:n,isDeferredPointerDownOutsideRef:M,dismissableSurfaces:u.dismissableSurfaces,shouldHandlePointerDownOutside:v.useCallback(O=>{if(!(O instanceof Node))return!1;const F=[...u.branches].some(V=>V.contains(O));return E&&!F},[u.branches,E])}),T=Lu(O=>{if(n&&M.current)return;const F=O.target;[...u.branches].some(re=>re.contains(F))||(i==null||i(O),c==null||c(O),O.defaultPrevented||d==null||d())},g),A=h?S===C.length-1:!1,L=nr(O=>{O.key==="Escape"&&(a==null||a(O),!O.defaultPrevented&&d&&(O.preventDefault(),d()))});return v.useEffect(()=>{if(A)return g.addEventListener("keydown",L,{capture:!0}),()=>g.removeEventListener("keydown",L,{capture:!0})},[g,A,L]),v.useEffect(()=>{if(h)return o&&(u.layersWithOutsidePointerEventsDisabled.size===0&&(Iu=g.body.style.pointerEvents,g.body.style.pointerEvents="none"),u.layersWithOutsidePointerEventsDisabled.add(h)),u.layers.add(h),Xl(),()=>{o&&(u.layersWithOutsidePointerEventsDisabled.delete(h),u.layersWithOutsidePointerEventsDisabled.size===0&&(g.body.style.pointerEvents=Iu))}},[h,g,o,u]),v.useEffect(()=>()=>{h&&(u.layers.delete(h),u.layersWithOutsidePointerEventsDisabled.delete(h),Xl())},[h,u]),v.useEffect(()=>{const O=bt(()=>y({}),"handleUpdate");return document.addEventListener(Kl,O),()=>document.removeEventListener(Kl,O)},[]),l.jsx(Ie.div,{...f,ref:b,style:{pointerEvents:N?E?"auto":"none":void 0,...t.style},onFocusCapture:we(t.onFocusCapture,T.onFocusCapture),onBlurCapture:we(t.onBlurCapture,T.onBlurCapture),onPointerDownCapture:we(t.onPointerDownCapture,k.onPointerDownCapture)})},"DismissableLayer"));function ow(){const e=v.useContext(Pu),[t,r]=v.useState(null);return v.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),r}bt(ow,"useDismissableLayerSurface");var nw=bt(()=>!0,"IS_TRUE");function Ou(e,t){const{ownerDocument:r=globalThis==null?void 0:globalThis.document,deferPointerDownOutside:o=!1,isDeferredPointerDownOutsideRef:n,dismissableSurfaces:a,shouldHandlePointerDownOutside:s=nw}=t,i=nr(e),c=v.useRef(!1),d=v.useRef(!1),f=v.useRef(new Map),u=v.useRef(()=>{});return v.useEffect(()=>{function h(){d.current=!1,n.current=!1,f.current.clear()}bt(h,"resetOutsideInteraction");function m(){return Array.from(f.current.values()).some(Boolean)}bt(m,"isOutsideInteractionIntercepted");function g(x){if(!d.current)return;const S=x.target;S instanceof Node&&[...a].some(E=>E.contains(S))||f.current.set(x.type,!0),x.type==="click"&&window.setTimeout(()=>{d.current&&u.current()},0)}bt(g,"handleInteractionCapture");function y(x){d.current&&f.current.set(x.type,!1)}bt(y,"handleInteractionBubble");const b=bt(x=>{if(x.target&&!c.current){let S=function(){r.removeEventListener("click",u.current);const E=m();h(),E||Jl(tw,i,N,{discrete:!0})};if(bt(S,"handleAndDispatchPointerDownOutsideEvent"),!s(x.target)){r.removeEventListener("click",u.current),h(),c.current=!1;return}const N={originalEvent:x};d.current=!0,n.current=o&&x.button===0,f.current.clear(),!o||x.button!==0?S():(r.removeEventListener("click",u.current),u.current=S,r.addEventListener("click",u.current,{once:!0}))}else r.removeEventListener("click",u.current),h();c.current=!1},"handlePointerDown"),C=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(const x of C)r.addEventListener(x,g,!0),r.addEventListener(x,y);const w=window.setTimeout(()=>{r.addEventListener("pointerdown",b)},0);return()=>{window.clearTimeout(w),r.removeEventListener("pointerdown",b),r.removeEventListener("click",u.current);for(const x of C)r.removeEventListener(x,g,!0),r.removeEventListener(x,y)}},[r,i,o,n,a,s]),{onPointerDownCapture:bt(()=>c.current=!0,"onPointerDownCapture")}}bt(Ou,"usePointerDownOutside");function Lu(e,t=globalThis==null?void 0:globalThis.document){const r=nr(e),o=v.useRef(!1);return v.useEffect(()=>{const n=bt(a=>{a.target&&!o.current&&Jl(rw,r,{originalEvent:a},{discrete:!1})},"handleFocus");return t.addEventListener("focusin",n),()=>t.removeEventListener("focusin",n)},[t,r]),{onFocusCapture:bt(()=>o.current=!0,"onFocusCapture"),onBlurCapture:bt(()=>o.current=!1,"onBlurCapture")}}bt(Lu,"useFocusOutside");function Xl(){const e=new CustomEvent(Kl);document.dispatchEvent(e)}bt(Xl,"dispatchUpdate");function Jl(e,t,r,{discrete:o}){const n=r.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:r});t&&n.addEventListener(e,t,{once:!0}),o?Tu(n,a):n.dispatchEvent(a)}bt(Jl,"handleAndDispatchCustomEvent");var aw=Object.defineProperty,Zl=(e,t)=>aw(e,"name",{value:t,configurable:!0}),Ea=0,fr=null;function sw(e){return Rl(),e.children}Zl(sw,"FocusGuards");function Rl(){v.useEffect(()=>{fr||(fr={start:ei(),end:ei()});const{start:e,end:t}=fr;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement("afterbegin",e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement("beforeend",t),Ea++,()=>{Ea===1&&(fr==null||fr.start.remove(),fr==null||fr.end.remove(),fr=null),Ea=Math.max(0,Ea-1)}},[])}Zl(Rl,"useFocusGuards");function ei(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}Zl(ei,"createFocusGuard");var lw=Object.defineProperty,Lt=(e,t)=>lw(e,"name",{value:t,configurable:!0}),ti="focusScope.autoFocusOnMount",ri="focusScope.autoFocusOnUnmount",Fu={bubbles:!1,cancelable:!0},iw=v.forwardRef(Lt(function(t,r){const{loop:o=!1,trapped:n=!1,onMountAutoFocus:a,onUnmountAutoFocus:s,...i}=t,[c,d]=v.useState(null),f=nr(a),u=nr(s),h=v.useRef(null),m=ze(r,d),g=v.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;v.useEffect(()=>{if(n){let b=function(S){if(g.paused||!c)return;const N=S.target;c.contains(N)?h.current=N:Tr(h.current,{select:!0})},C=function(S){if(g.paused||!c)return;const N=S.relatedTarget;N!==null&&(c.contains(N)||Tr(h.current,{select:!0}))},w=function(S){if(document.activeElement===document.body)for(const E of S)E.removedNodes.length>0&&Tr(c)};Lt(b,"handleFocusIn"),Lt(C,"handleFocusOut"),Lt(w,"handleMutations"),document.addEventListener("focusin",b),document.addEventListener("focusout",C);const x=new MutationObserver(w);return c&&x.observe(c,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",b),document.removeEventListener("focusout",C),x.disconnect()}}},[n,c,g.paused]),v.useEffect(()=>{if(c){Bu.add(g);const b=document.activeElement;if(!c.contains(b)){const w=new CustomEvent(ti,Fu);c.addEventListener(ti,f),c.dispatchEvent(w),w.defaultPrevented||($u(Wu(oi(c)),{select:!0}),document.activeElement===b&&Tr(c))}return()=>{c.removeEventListener(ti,f),setTimeout(()=>{const w=new CustomEvent(ri,Fu);c.addEventListener(ri,u),c.dispatchEvent(w),w.defaultPrevented||Tr(b??document.body,{select:!0}),c.removeEventListener(ri,u),Bu.remove(g)},0)}}},[c,f,u,g]);const y=v.useCallback(b=>{if(!o&&!n||g.paused)return;const C=b.key==="Tab"&&!b.altKey&&!b.ctrlKey&&!b.metaKey,w=document.activeElement;if(C&&w){const x=b.currentTarget,[S,N]=Gu(x);S&&N?!b.shiftKey&&w===N?(b.preventDefault(),o&&Tr(S,{select:!0})):b.shiftKey&&w===S&&(b.preventDefault(),o&&Tr(N,{select:!0})):w===x&&b.preventDefault()}},[o,n,g.paused]);return l.jsx(Ie.div,{tabIndex:-1,...i,ref:m,onKeyDown:y})},"FocusScope"));function $u(e,{select:t=!1}={}){const r=document.activeElement;for(const o of e)if(Tr(o,{select:t}),document.activeElement!==r)return}Lt($u,"focusFirst");function Gu(e){const t=oi(e),r=ni(t,e),o=ni(t.reverse(),e);return[r,o]}Lt(Gu,"getTabbableEdges");function oi(e){const t=[],r=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:Lt(o=>{const n=o.tagName==="INPUT"&&o.type==="hidden";return o.disabled||o.hidden||n?NodeFilter.FILTER_SKIP:o.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},"acceptNode")});for(;r.nextNode();)t.push(r.currentNode);return t}Lt(oi,"getTabbableCandidates");function ni(e,t){const r=typeof t.checkVisibility=="function"&&t.checkVisibility({checkVisibilityCSS:!0});for(const o of e)if(!(r?!o.checkVisibility({checkVisibilityCSS:!0}):Vu(o,{upTo:t})))return o}Lt(ni,"findVisible");function Vu(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}Lt(Vu,"isHidden");function zu(e){return e instanceof HTMLInputElement&&"select"in e}Lt(zu,"isSelectableInput");function Tr(e,{select:t=!1}={}){if(e&&e.focus){const r=document.activeElement;e.focus({preventScroll:!0}),e!==r&&zu(e)&&t&&e.select()}}Lt(Tr,"focus");var Bu=Uu();function Uu(){let e=[];return{add(t){const r=e[0];t!==r&&(r==null||r.pause()),e=ai(e,t),e.unshift(t)},remove(t){var r;e=ai(e,t),(r=e[0])==null||r.resume()}}}Lt(Uu,"createFocusScopesStack");function ai(e,t){const r=[...e],o=r.indexOf(t);return o!==-1&&r.splice(o,1),r}Lt(ai,"arrayRemove");function Wu(e){return e.filter(t=>t.tagName!=="A")}Lt(Wu,"removeLinks");var nt=globalThis!=null&&globalThis.document?v.useLayoutEffect:()=>{},cw=Object.defineProperty,dw=(e,t)=>cw(e,"name",{value:t,configurable:!0}),uw=v[" useId ".trim().toString()]||(()=>{}),pw=0;function Hr(e){const[t,r]=v.useState(uw());return nt(()=>{e||r(o=>o??String(pw++))},[e]),e||(t?`radix-${t}`:"")}dw(Hr,"useId");const fw=["top","right","bottom","left"],jr=Math.min,Ir=Math.max,ka=Math.round,_a=Math.floor,Pr=e=>({x:e,y:e}),hw={left:"right",right:"left",bottom:"top",top:"bottom"};function Hu(e,t,r){return Ir(e,jr(t,r))}function Mr(e,t){return typeof e=="function"?e(t):e}function Yr(e){return e.split("-")[0]}function Fo(e){return e.split("-")[1]}function si(e){return e==="x"?"y":"x"}function li(e){return e==="y"?"height":"width"}function hr(e){const t=e[0];return t==="t"||t==="b"?"y":"x"}function ii(e){return si(hr(e))}function mw(e,t,r){r===void 0&&(r=!1);const o=Fo(e),n=ii(e),a=li(n);let s=n==="x"?o===(r?"end":"start")?"right":"left":o==="start"?"bottom":"top";return t.reference[a]>t.floating[a]&&(s=Da(s)),[s,Da(s)]}function gw(e){const t=Da(e);return[ci(e),t,ci(t)]}function ci(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}const ju=["left","right"],Yu=["right","left"],bw=["top","bottom"],yw=["bottom","top"];function vw(e,t,r){switch(e){case"top":case"bottom":return r?t?Yu:ju:t?ju:Yu;case"left":case"right":return t?bw:yw;default:return[]}}function xw(e,t,r,o){const n=Fo(e);let a=vw(Yr(e),r==="start",o);return n&&(a=a.map(s=>s+"-"+n),t&&(a=a.concat(a.map(ci)))),a}function Da(e){const t=Yr(e);return hw[t]+e.slice(t.length)}function ww(e){var t,r,o,n;return{top:(t=e.top)!=null?t:0,right:(r=e.right)!=null?r:0,bottom:(o=e.bottom)!=null?o:0,left:(n=e.left)!=null?n:0}}function qu(e){return typeof e!="number"?ww(e):{top:e,right:e,bottom:e,left:e}}function Aa(e){const{x:t,y:r,width:o,height:n}=e;return{width:o,height:n,top:r,left:t,right:t+o,bottom:r+n,x:t,y:r}}function Qu(e,t,r){let{reference:o,floating:n}=e;const a=hr(t),s=ii(t),i=li(s),c=Yr(t),d=a==="y",f=o.x+o.width/2-n.width/2,u=o.y+o.height/2-n.height/2,h=o[i]/2-n[i]/2;let m;switch(c){case"top":m={x:f,y:o.y-n.height};break;case"bottom":m={x:f,y:o.y+o.height};break;case"right":m={x:o.x+o.width,y:u};break;case"left":m={x:o.x-n.width,y:u};break;default:m={x:o.x,y:o.y}}const g=Fo(t);return g&&(m[s]+=h*(g==="end"?1:-1)*(r&&d?-1:1)),m}async function Cw(e,t){var r;t===void 0&&(t={});const{x:o,y:n,platform:a,rects:s,elements:i,strategy:c}=e,{boundary:d="clippingAncestors",rootBoundary:f="viewport",elementContext:u="floating",altBoundary:h=!1,padding:m=0}=Mr(t,e),g=qu(m),b=i[h?u==="floating"?"reference":"floating":u],C=Aa(await a.getClippingRect({element:(r=await(a.isElement==null?void 0:a.isElement(b)))==null||r?b:b.contextElement||await(a.getDocumentElement==null?void 0:a.getDocumentElement(i.floating)),boundary:d,rootBoundary:f,strategy:c})),w=u==="floating"?{x:o,y:n,width:s.floating.width,height:s.floating.height}:s.reference,x=await(a.getOffsetParent==null?void 0:a.getOffsetParent(i.floating)),S=await(a.isElement==null?void 0:a.isElement(x))&&await(a.getScale==null?void 0:a.getScale(x))||{x:1,y:1},N=Aa(a.convertOffsetParentRelativeRectToViewportRelativeRect?await a.convertOffsetParentRelativeRectToViewportRelativeRect({elements:i,rect:w,offsetParent:x,strategy:c}):w);return{top:(C.top-N.top+g.top)/S.y,bottom:(N.bottom-C.bottom+g.bottom)/S.y,left:(C.left-N.left+g.left)/S.x,right:(N.right-C.right+g.right)/S.x}}const Sw=50,Nw=async(e,t,r)=>{const{placement:o="bottom",strategy:n="absolute",middleware:a=[],platform:s}=r,i=s.detectOverflow?s:{...s,detectOverflow:Cw},c=await(s.isRTL==null?void 0:s.isRTL(t));let d=await s.getElementRects({reference:e,floating:t,strategy:n}),{x:f,y:u}=Qu(d,o,c),h=o,m=0;const g={};for(let y=0;y<a.length;y++){const b=a[y];if(!b)continue;const{name:C,fn:w}=b,{x,y:S,data:N,reset:E}=await w({x:f,y:u,initialPlacement:o,placement:h,strategy:n,middlewareData:g,rects:d,platform:i,elements:{reference:e,floating:t}});f=x??f,u=S??u,g[C]={...g[C],...N},E&&m<Sw&&(m++,typeof E=="object"&&(E.placement&&(h=E.placement),E.rects&&(d=E.rects===!0?await s.getElementRects({reference:e,floating:t,strategy:n}):E.rects),{x:f,y:u}=Qu(d,h,c)),y=-1)}return{x:f,y:u,placement:h,strategy:n,middlewareData:g}},Ew=e=>({name:"arrow",options:e,async fn(t){const{x:r,y:o,placement:n,rects:a,platform:s,elements:i,middlewareData:c}=t,{element:d,padding:f=0}=Mr(e,t)||{};if(d==null)return{};const u=qu(f),h={x:r,y:o},m=ii(n),g=li(m),y=await s.getDimensions(d),b=m==="y",C=b?"top":"left",w=b?"bottom":"right",x=b?"clientHeight":"clientWidth",S=a.reference[g]+a.reference[m]-h[m]-a.floating[g],N=h[m]-a.reference[m],E=await(s.getOffsetParent==null?void 0:s.getOffsetParent(d));let M=E?E[x]:0;(!M||!await(s.isElement==null?void 0:s.isElement(E)))&&(M=i.floating[x]||a.floating[g]);const k=S/2-N/2,T=M/2-y[g]/2-1,A=jr(u[C],T),L=jr(u[w],T),O=M-y[g]-L,F=M/2-y[g]/2+k,V=Hu(A,F,O),re=!c.arrow&&Fo(n)!=null&&F!==V&&a.reference[g]/2-(F<A?A:L)-y[g]/2<0,K=re?F<A?F-A:F-O:0;return{[m]:h[m]+K,data:{[m]:V,centerOffset:F-V-K,...re&&{alignmentOffset:K}},reset:re}}}),kw=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var r,o;const{placement:n,middlewareData:a,rects:s,initialPlacement:i,platform:c,elements:d}=t,{mainAxis:f=!0,crossAxis:u=!0,fallbackPlacements:h,fallbackStrategy:m="bestFit",fallbackAxisSideDirection:g="none",flipAlignment:y=!0,...b}=Mr(e,t);if((r=a.arrow)!=null&&r.alignmentOffset)return{};const C=Yr(n),w=hr(i),x=Yr(i)===i,S=await(c.isRTL==null?void 0:c.isRTL(d.floating)),N=h||(x||!y?[Da(i)]:gw(i)),E=g!=="none";!h&&E&&N.push(...xw(i,y,g,S));const M=[i,...N],k=await c.detectOverflow(t,b),T=[];let A=((o=a.flip)==null?void 0:o.overflows)||[];if(f&&T.push(k[C]),u){const V=mw(n,s,S);T.push(k[V[0]],k[V[1]])}if(A=[...A,{placement:n,overflows:T}],!T.every(V=>V<=0)){var L,O;const V=(((L=a.flip)==null?void 0:L.index)||0)+1,re=M[V];if(re&&(!(u==="alignment"?w!==hr(re):!1)||A.every(ee=>hr(ee.placement)===w?ee.overflows[0]>0:!0)))return{data:{index:V,overflows:A},reset:{placement:re}};let K=(O=A.filter(H=>H.overflows[0]<=0).sort((H,ee)=>H.overflows[1]-ee.overflows[1])[0])==null?void 0:O.placement;if(!K)switch(m){case"bestFit":{var F;const H=(F=A.filter(ee=>{if(E){const G=hr(ee.placement);return G===w||G==="y"}return!0}).map(ee=>[ee.placement,ee.overflows.filter(G=>G>0).reduce((G,z)=>G+z,0)]).sort((ee,G)=>ee[1]-G[1])[0])==null?void 0:F[0];H&&(K=H);break}case"initialPlacement":K=i;break}if(n!==K)return{reset:{placement:K}}}return{}}}};function Ku(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function Xu(e){return fw.some(t=>e[t]>=0)}const _w=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:r,platform:o}=t,{strategy:n="referenceHidden",...a}=Mr(e,t);switch(n){case"referenceHidden":{const s=await o.detectOverflow(t,{...a,elementContext:"reference"}),i=Ku(s,r.reference);return{data:{referenceHiddenOffsets:i,referenceHidden:Xu(i)}}}case"escaped":{const s=await o.detectOverflow(t,{...a,altBoundary:!0}),i=Ku(s,r.floating);return{data:{escapedOffsets:i,escaped:Xu(i)}}}default:return{}}}}},Ju=new Set(["left","top"]);async function Dw(e,t){const{placement:r,platform:o,elements:n}=e,a=await(o.isRTL==null?void 0:o.isRTL(n.floating)),s=Yr(r),i=Fo(r),c=hr(r)==="y",d=Ju.has(s)?-1:1,f=a&&c?-1:1,u=Mr(t,e);let{mainAxis:h,crossAxis:m,alignmentAxis:g}=typeof u=="number"?{mainAxis:u,crossAxis:0,alignmentAxis:null}:{mainAxis:u.mainAxis||0,crossAxis:u.crossAxis||0,alignmentAxis:u.alignmentAxis};return i&&typeof g=="number"&&(m=i==="end"?g*-1:g),c?{x:m*f,y:h*d}:{x:h*d,y:m*f}}const Aw=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var r,o;const{x:n,y:a,placement:s,middlewareData:i}=t,c=await Dw(t,e);return s===((r=i.offset)==null?void 0:r.placement)&&(o=i.arrow)!=null&&o.alignmentOffset?{}:{x:n+c.x,y:a+c.y,data:{...c,placement:s}}}}},Tw=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:r,y:o,placement:n,platform:a}=t,{mainAxis:s=!0,crossAxis:i=!1,limiter:c={fn:w=>{let{x,y:S}=w;return{x,y:S}}},...d}=Mr(e,t),f={x:r,y:o},u=await a.detectOverflow(t,d),h=hr(n),m=si(h);let g=f[m],y=f[h];const b=(w,x)=>Hu(x+u[w==="y"?"top":"left"],x,x-u[w==="y"?"bottom":"right"]);s&&(g=b(m,g)),i&&(y=b(h,y));const C=c.fn({...t,[m]:g,[h]:y});return{...C,data:{x:C.x-r,y:C.y-o,enabled:{[m]:s,[h]:i}}}}}},Iw=function(e){return e===void 0&&(e={}),{options:e,fn(t){var r,o;const{x:n,y:a,placement:s,rects:i,middlewareData:c}=t,{offset:d=0,mainAxis:f=!0,crossAxis:u=!0}=Mr(e,t),h={x:n,y:a},m=hr(s),g=si(m);let y=h[g],b=h[m];const C=Mr(d,t),w=typeof C=="number"?{mainAxis:C,crossAxis:0}:{mainAxis:(r=C.mainAxis)!=null?r:0,crossAxis:(o=C.crossAxis)!=null?o:0};if(f){const N=g==="y"?"height":"width",E=i.reference[g]-i.floating[N]+w.mainAxis,M=i.reference[g]+i.reference[N]-w.mainAxis;y<E?y=E:y>M&&(y=M)}if(u){var x,S;const N=g==="y"?"width":"height",E=Ju.has(Yr(s)),M=i.reference[m]-i.floating[N]+(E&&((x=c.offset)==null?void 0:x[m])||0)+(E?0:w.crossAxis),k=i.reference[m]+i.reference[N]+(E?0:((S=c.offset)==null?void 0:S[m])||0)-(E?w.crossAxis:0);b<M?b=M:b>k&&(b=k)}return{[g]:y,[m]:b}}}},Pw=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:r,rects:o,platform:n,elements:a}=t,{apply:s=()=>{},...i}=Mr(e,t),c=await n.detectOverflow(t,i),d=Yr(r),f=Fo(r),u=hr(r)==="y",{width:h,height:m}=o.floating;let g,y;d==="top"||d==="bottom"?(g=d,y=f===(await(n.isRTL==null?void 0:n.isRTL(a.floating))?"start":"end")?"left":"right"):(y=d,g=f==="end"?"top":"bottom");const b=m-c.top-c.bottom,C=h-c.left-c.right,w=jr(m-c[g],b),x=jr(h-c[y],C),S=t.middlewareData.shift,N=!S;let E=w,M=x;S!=null&&S.enabled.x&&(M=C),S!=null&&S.enabled.y&&(E=b),N&&!f&&(u?M=h-2*Ir(c.left,c.right):E=m-2*Ir(c.top,c.bottom)),await s({...t,availableWidth:M,availableHeight:E});const k=await n.getDimensions(a.floating);return h!==k.width||m!==k.height?{reset:{rects:!0}}:{}}}};function Ta(){return typeof window<"u"}function $o(e){return Zu(e)?(e.nodeName||"").toLowerCase():"#document"}function $t(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Or(e){var t;return(t=(Zu(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function Zu(e){return Ta()?e instanceof Node||e instanceof $t(e).Node:!1}function mr(e){return Ta()?e instanceof Element||e instanceof $t(e).Element:!1}function qr(e){return Ta()?e instanceof HTMLElement||e instanceof $t(e).HTMLElement:!1}function Ru(e){return!Ta()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof $t(e).ShadowRoot}function Ia(e){const{overflow:t,overflowX:r,overflowY:o,display:n}=gr(e);return/auto|scroll|overlay|hidden|clip/.test(t+o+r)&&n!=="inline"&&n!=="contents"}function Mw(e){return/^(table|td|th)$/.test($o(e))}function Pa(e){try{if(e.matches(":popover-open"))return!0}catch{}try{return e.matches(":modal")}catch{return!1}}const Ow=/transform|translate|scale|rotate|perspective|filter/,Lw=/paint|layout|strict|content/,po=e=>!!e&&e!=="none";let di;function ui(e){const t=mr(e)?gr(e):e;return po(t.transform)||po(t.translate)||po(t.scale)||po(t.rotate)||po(t.perspective)||!pi()&&(po(t.backdropFilter)||po(t.filter))||Ow.test(t.willChange||"")||Lw.test(t.contain||"")}function Fw(e){let t=fo(e);for(;qr(t)&&!mn(t);){if(ui(t))return t;if(Pa(t))return null;t=fo(t)}return null}function pi(){return di==null&&(di=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),di}function mn(e){return/^(html|body|#document)$/.test($o(e))}function gr(e){return $t(e).getComputedStyle(e)}function Ma(e){return mr(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function fo(e){if($o(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Ru(e)&&e.host||Or(e);return Ru(t)?t.host:t}function ep(e){const t=fo(e);return mn(t)?(e.ownerDocument||e).body:qr(t)&&Ia(t)?t:ep(t)}function gn(e,t,r){var o;t===void 0&&(t=[]),r===void 0&&(r=!0);const n=ep(e),a=n===((o=e.ownerDocument)==null?void 0:o.body),s=$t(n);if(a){const i=fi(s);return t.concat(s,s.visualViewport||[],Ia(n)?n:[],i&&r?gn(i):[])}else return t.concat(n,gn(n,[],r))}function fi(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function tp(e){const t=gr(e);let r=parseFloat(t.width)||0,o=parseFloat(t.height)||0;const n=qr(e),a=n?e.offsetWidth:r,s=n?e.offsetHeight:o,i=ka(r)!==a||ka(o)!==s;return i&&(r=a,o=s),{width:r,height:o,$:i}}function hi(e){return mr(e)?e:e.contextElement}function Go(e){const t=hi(e);if(!qr(t))return Pr(1);const r=t.getBoundingClientRect(),{width:o,height:n,$:a}=tp(t);let s=(a?ka(r.width):r.width)/o,i=(a?ka(r.height):r.height)/n;return(!s||!Number.isFinite(s))&&(s=1),(!i||!Number.isFinite(i))&&(i=1),{x:s,y:i}}const $w=Pr(0);function rp(e){const t=$t(e);return!pi()||!t.visualViewport?$w:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function Gw(e,t,r){return t===void 0&&(t=!1),!!r&&t&&r===$t(e)}function ho(e,t,r,o){t===void 0&&(t=!1),r===void 0&&(r=!1);const n=e.getBoundingClientRect(),a=hi(e);let s=Pr(1);t&&(o?mr(o)&&(s=Go(o)):s=Go(e));const i=Gw(a,r,o)?rp(a):Pr(0);let c=(n.left+i.x)/s.x,d=(n.top+i.y)/s.y,f=n.width/s.x,u=n.height/s.y;if(a&&o){const h=$t(a),m=mr(o)?$t(o):o;let g=h,y=fi(g);for(;y&&m!==g;){const b=Go(y),C=y.getBoundingClientRect(),w=gr(y),x=C.left+(y.clientLeft+parseFloat(w.paddingLeft))*b.x,S=C.top+(y.clientTop+parseFloat(w.paddingTop))*b.y;c*=b.x,d*=b.y,f*=b.x,u*=b.y,c+=x,d+=S,g=$t(y),y=fi(g)}}return Aa({width:f,height:u,x:c,y:d})}function Oa(e,t){const r=Ma(e).scrollLeft;return t?t.left+r:ho(Or(e)).left+r}function op(e,t){const r=e.getBoundingClientRect(),o=r.left+t.scrollLeft-Oa(e,r),n=r.top+t.scrollTop;return{x:o,y:n}}function Vw(e){let{elements:t,rect:r,offsetParent:o,strategy:n}=e;const a=n==="fixed",s=Or(o),i=t?Pa(t.floating):!1;if(o===s||i&&a)return r;let c={scrollLeft:0,scrollTop:0},d=Pr(1);const f=Pr(0),u=qr(o);if((u||!a)&&(($o(o)!=="body"||Ia(s))&&(c=Ma(o)),u)){const m=ho(o);d=Go(o),f.x=m.x+o.clientLeft,f.y=m.y+o.clientTop}const h=s&&!u&&!a?op(s,c):Pr(0);return{width:r.width*d.x,height:r.height*d.y,x:r.x*d.x-c.scrollLeft*d.x+f.x+h.x,y:r.y*d.y-c.scrollTop*d.y+f.y+h.y}}function zw(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function Bw(e){const t=Ma(e),r=e.ownerDocument.body,o=Ir(e.scrollWidth,e.clientWidth,r.scrollWidth,r.clientWidth),n=Ir(e.scrollHeight,e.clientHeight,r.scrollHeight,r.clientHeight);let a=-t.scrollLeft+Oa(e);const s=-t.scrollTop;return gr(r).direction==="rtl"&&(a+=Ir(e.clientWidth,r.clientWidth)-o),{width:o,height:n,x:a,y:s}}const Uw=25;function Ww(e,t,r){r===void 0&&(r="viewport");const o=r==="layoutViewport",n=$t(e),a=Or(e),s=n.visualViewport;let i=a.clientWidth,c=a.clientHeight,d=0,f=0;if(s){const h=!pi()||t==="fixed";o?h||(d=-s.offsetLeft,f=-s.offsetTop):(i=s.width,c=s.height,h&&(d=s.offsetLeft,f=s.offsetTop))}if(Oa(a)<=0){const h=a.ownerDocument,m=h.body,g=getComputedStyle(m),y=h.compatMode==="CSS1Compat"&&parseFloat(g.marginLeft)+parseFloat(g.marginRight)||0,b=Math.abs(a.clientWidth-m.clientWidth-y),C=getComputedStyle(a).scrollbarGutter==="stable both-edges"?b/2:b;C<=Uw&&(i-=C)}return{width:i,height:c,x:d,y:f}}function Hw(e,t){const r=ho(e,!0,t==="fixed"),o=r.top+e.clientTop,n=r.left+e.clientLeft,a=Go(e),s=e.clientWidth*a.x,i=e.clientHeight*a.y,c=n*a.x,d=o*a.y;return{width:s,height:i,x:c,y:d}}function np(e,t,r){let o;if(t==="viewport"||t==="layoutViewport")o=Ww(e,r,t);else if(t==="document")o=Bw(Or(e));else if(mr(t))o=Hw(t,r);else{const n=rp(e);o={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return Aa(o)}function jw(e,t){const r=t.get(e);if(r)return r;let o=gn(e,[],!1).filter(i=>mr(i)&&$o(i)!=="body"),n=null;const a=gr(e).position==="fixed";let s=a?fo(e):e;for(;mr(s)&&!mn(s);){const i=gr(s),c=ui(s),d=n?n.position:a?"fixed":"";!c&&(d==="fixed"||d==="absolute"&&i.position==="static")?o=o.filter(u=>u!==s):n=i,s=fo(s)}return t.set(e,o),o}function Yw(e){let{element:t,boundary:r,rootBoundary:o,strategy:n}=e;const s=[...r==="clippingAncestors"?Pa(t)?[]:jw(t,this._c):[].concat(r),o],i=np(t,s[0],n);let c=i.top,d=i.right,f=i.bottom,u=i.left;for(let h=1;h<s.length;h++){const m=np(t,s[h],n);c=Ir(m.top,c),d=jr(m.right,d),f=jr(m.bottom,f),u=Ir(m.left,u)}return{width:d-u,height:f-c,x:u,y:c}}function qw(e){const{width:t,height:r}=tp(e);return{width:t,height:r}}function Qw(e,t,r){const o=qr(t),n=Or(t),a=r==="fixed",s=ho(e,!0,a,t);let i={scrollLeft:0,scrollTop:0};const c=Pr(0);if((o||!a)&&(($o(t)!=="body"||Ia(n))&&(i=Ma(t)),o)){const h=ho(t,!0,a,t);c.x=h.x+t.clientLeft,c.y=h.y+t.clientTop}!o&&n&&(c.x=Oa(n));const d=n&&!o&&!a?op(n,i):Pr(0),f=s.left+i.scrollLeft-c.x-d.x,u=s.top+i.scrollTop-c.y-d.y;return{x:f,y:u,width:s.width,height:s.height}}function mi(e){return gr(e).position==="static"}function ap(e,t){if(!qr(e)||gr(e).position==="fixed")return null;if(t)return t(e);let r=e.offsetParent;return Or(e)===r&&(r=r.ownerDocument.body),r}function sp(e,t){const r=$t(e);if(Pa(e))return r;if(!qr(e)){let n=fo(e);for(;n&&!mn(n);){if(mr(n)&&!mi(n))return n;n=fo(n)}return r}let o=ap(e,t);for(;o&&Mw(o)&&mi(o);)o=ap(o,t);return o&&mn(o)&&mi(o)&&!ui(o)?r:o||Fw(e)||r}const Kw=async function(e){const t=this.getOffsetParent||sp,r=this.getDimensions,o=await r(e.floating);return{reference:Qw(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function Xw(e){return gr(e).direction==="rtl"}const Jw={convertOffsetParentRelativeRectToViewportRelativeRect:Vw,getDocumentElement:Or,getClippingRect:Yw,getOffsetParent:sp,getElementRects:Kw,getClientRects:zw,getDimensions:qw,getScale:Go,isElement:mr,isRTL:Xw};function lp(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function Zw(e,t,r){let o=null,n;const a=Or(e);function s(){var f;clearTimeout(n),(f=o)==null||f.disconnect(),o=null}function i(f,u){f===void 0&&(f=!1),u===void 0&&(u=1),s();const h=e.getBoundingClientRect(),{left:m,top:g,width:y,height:b}=h;if(f||t(),!y||!b)return;const C=_a(g),w=_a(a.clientWidth-(m+y)),x=_a(a.clientHeight-(g+b)),S=_a(m),E={rootMargin:-C+"px "+-w+"px "+-x+"px "+-S+"px",threshold:Ir(0,jr(1,u))||1};let M=!0;function k(T){const A=T[0].intersectionRatio;if(!lp(h,e.getBoundingClientRect()))return i();if(A!==u){if(!M)return i();A?i(!1,A):n=setTimeout(()=>{i(!1,1e-7)},1e3)}M=!1}try{o=new IntersectionObserver(k,{...E,root:a.ownerDocument})}catch{o=new IntersectionObserver(k,E)}o.observe(e)}const c=$t(e),d=()=>i(r);return c.addEventListener("resize",d),i(!0),()=>{c.removeEventListener("resize",d),s()}}function Rw(e,t,r,o){o===void 0&&(o={});const{ancestorScroll:n=!0,ancestorResize:a=!0,elementResize:s=typeof ResizeObserver=="function",layoutShift:i=typeof IntersectionObserver=="function",animationFrame:c=!1}=o,d=hi(e),f=n||a?[...d?gn(d):[],...t?gn(t):[]]:[];f.forEach(C=>{n&&C.addEventListener("scroll",r),a&&C.addEventListener("resize",r)});const u=d&&i?Zw(d,r,a):null;let h=-1,m=null;s&&(m=new ResizeObserver(C=>{let[w]=C;w&&w.target===d&&m&&t&&(m.unobserve(t),cancelAnimationFrame(h),h=requestAnimationFrame(()=>{var x;(x=m)==null||x.observe(t)})),r()}),d&&!c&&m.observe(d),t&&m.observe(t));let g,y=c?ho(e):null;c&&b();function b(){const C=ho(e);y&&!lp(y,C)&&r(),y=C,g=requestAnimationFrame(b)}return r(),()=>{var C;f.forEach(w=>{n&&w.removeEventListener("scroll",r),a&&w.removeEventListener("resize",r)}),u==null||u(),(C=m)==null||C.disconnect(),m=null,c&&cancelAnimationFrame(g)}}const e0=Aw,t0=Tw,r0=kw,o0=Pw,n0=_w,ip=Ew,a0=Iw,s0=(e,t,r)=>{const o=new Map,n=r??{},a={...Jw,...n.platform,_c:o};return Nw(e,t,{...n,platform:a})};var l0=typeof document<"u",i0=function(){},La=l0?D.useLayoutEffect:i0;function Fa(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let r,o,n;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(r=e.length,r!==t.length)return!1;for(o=r;o--!==0;)if(!Fa(e[o],t[o]))return!1;return!0}if(n=Object.keys(e),r=n.length,r!==Object.keys(t).length)return!1;for(o=r;o--!==0;)if(!{}.hasOwnProperty.call(t,n[o]))return!1;for(o=r;o--!==0;){const a=n[o];if(!(a==="_owner"&&e.$$typeof)&&!Fa(e[a],t[a]))return!1}return!0}return e!==e&&t!==t}function cp(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function dp(e,t){const r=cp(e);return Math.round(t*r)/r}function gi(e){const t=v.useRef(e);return La(()=>{t.current=e}),t}function c0(e){e===void 0&&(e={});const{placement:t="bottom",strategy:r="absolute",middleware:o=[],platform:n,elements:{reference:a,floating:s}={},transform:i=!0,whileElementsMounted:c,open:d}=e,[f,u]=v.useState({x:0,y:0,strategy:r,placement:t,middlewareData:{},isPositioned:!1}),[h,m]=v.useState(o);Fa(h,o)||m(o);const[g,y]=v.useState(null),[b,C]=v.useState(null),w=v.useCallback(ee=>{ee!==E.current&&(E.current=ee,y(ee))},[]),x=v.useCallback(ee=>{ee!==M.current&&(M.current=ee,C(ee))},[]),S=a||g,N=s||b,E=v.useRef(null),M=v.useRef(null),k=v.useRef(f),T=c!=null,A=gi(c),L=gi(n),O=gi(d),F=v.useCallback(()=>{if(!E.current||!M.current)return;const ee={placement:t,strategy:r,middleware:h};L.current&&(ee.platform=L.current),s0(E.current,M.current,ee).then(G=>{const z={...G,isPositioned:O.current!==!1};V.current&&!Fa(k.current,z)&&(k.current=z,sn.flushSync(()=>{u(z)}))})},[h,t,r,L,O]);La(()=>{d===!1&&k.current.isPositioned&&(k.current.isPositioned=!1,u(ee=>({...ee,isPositioned:!1})))},[d]);const V=v.useRef(!1);La(()=>(V.current=!0,()=>{V.current=!1}),[]),La(()=>{if(S&&(E.current=S),N&&(M.current=N),S&&N){if(A.current)return A.current(S,N,F);F()}},[S,N,F,A,T]);const re=v.useMemo(()=>({reference:E,floating:M,setReference:w,setFloating:x}),[w,x]),K=v.useMemo(()=>({reference:S,floating:N}),[S,N]),H=v.useMemo(()=>{const ee={position:r,left:0,top:0};if(!K.floating)return ee;const G=dp(K.floating,f.x),z=dp(K.floating,f.y);return i?{...ee,transform:"translate("+G+"px, "+z+"px)",...cp(K.floating)>=1.5&&{willChange:"transform"}}:{position:r,left:G,top:z}},[r,i,K.floating,f.x,f.y]);return v.useMemo(()=>({...f,update:F,refs:re,elements:K,floatingStyles:H}),[f,F,re,K,H])}const d0=e=>{function t(r){return{}.hasOwnProperty.call(r,"current")}return{name:"arrow",options:e,fn(r){const{element:o,padding:n}=typeof e=="function"?e(r):e;return o&&t(o)?o.current!=null?ip({element:o.current,padding:n}).fn(r):{}:o?ip({element:o,padding:n}).fn(r):{}}}},u0=(e,t)=>{const r=e0(e);return{name:r.name,fn:r.fn,options:[e,t]}},p0=(e,t)=>{const r=t0(e);return{name:r.name,fn:r.fn,options:[e,t]}},f0=(e,t)=>({fn:a0(e).fn,options:[e,t]}),h0=(e,t)=>{const r=r0(e);return{name:r.name,fn:r.fn,options:[e,t]}},m0=(e,t)=>{const r=o0(e);return{name:r.name,fn:r.fn,options:[e,t]}},g0=(e,t)=>{const r=n0(e);return{name:r.name,fn:r.fn,options:[e,t]}},b0=(e,t)=>{const r=d0(e);return{name:r.name,fn:r.fn,options:[e,t]}};var y0=Object.defineProperty,v0=(e,t)=>y0(e,"name",{value:t,configurable:!0});function bi(e){const[t,r]=v.useState(void 0);return nt(()=>{if(e){r({width:e.offsetWidth,height:e.offsetHeight});const o=new ResizeObserver(n=>{if(!Array.isArray(n)||!n.length)return;const a=n[0];let s,i;if("borderBoxSize"in a){const c=a.borderBoxSize,d=Array.isArray(c)?c[0]:c;s=d.inlineSize,i=d.blockSize}else s=e.offsetWidth,i=e.offsetHeight;r({width:s,height:i})});return o.observe(e,{box:"border-box"}),()=>o.unobserve(e)}else r(void 0)},[e]),t}v0(bi,"useSize");var x0=Object.defineProperty,Qr=(e,t)=>x0(e,"name",{value:t,configurable:!0}),up="Popper",[pp,$a]=rr(up),[w0,fp]=pp(up),C0=Qr(e=>{const{__scopePopper:t,children:r}=e,[o,n]=v.useState(null),[a,s]=v.useState(void 0);return l.jsx(w0,{scope:t,anchor:o,onAnchorChange:n,placementState:a,setPlacementState:s,children:r})},"Popper"),S0="PopperAnchor",N0=v.forwardRef(Qr(function(t,r){const{__scopePopper:o,virtualRef:n,...a}=t,s=fp(S0,o),i=v.useRef(null),c=s.onAnchorChange,d=v.useCallback(y=>{i.current=y,y&&c(y)},[c]),f=ze(r,d),u=v.useRef(null);v.useEffect(()=>{if(!n)return;const y=u.current;u.current=n.current,y!==u.current&&c(u.current)});const h=s.placementState&&Ga(s.placementState),m=h==null?void 0:h[0],g=h==null?void 0:h[1];return n?null:l.jsx(Ie.div,{"data-radix-popper-side":m,"data-radix-popper-align":g,...a,ref:f})},"PopperAnchor")),hp="PopperContent",[E0,lT]=pp(hp),k0=v.forwardRef(Qr(function(t,r){var te,Ne,be,ue,X,ne,pe;const{__scopePopper:o,side:n="bottom",sideOffset:a=0,align:s="center",alignOffset:i=0,arrowPadding:c=0,avoidCollisions:d=!0,collisionBoundary:f=[],collisionPadding:u=0,sticky:h="partial",hideWhenDetached:m=!1,updatePositionStrategy:g="optimized",onPlaced:y,...b}=t,C=fp(hp,o),[w,x]=v.useState(null),S=ze(r,x),[N,E]=v.useState(null),M=bi(N),k=(M==null?void 0:M.width)??0,T=(M==null?void 0:M.height)??0,A=n+(s!=="center"?"-"+s:""),L=typeof u=="number"?u:{top:0,right:0,bottom:0,left:0,...u},O=Array.isArray(f)?f:[f],F=O.length>0,V={padding:L,boundary:O.filter(mp),altBoundary:F},{refs:re,floatingStyles:K,placement:H,isPositioned:ee,middlewareData:G}=c0({strategy:"fixed",placement:A,whileElementsMounted:Qr((...Se)=>Rw(...Se,{animationFrame:g==="always"}),"whileElementsMounted"),elements:{reference:C.anchor},middleware:[u0({mainAxis:a+T,alignmentAxis:i}),d&&p0({mainAxis:!0,crossAxis:!1,limiter:h==="partial"?f0():void 0,...V}),d&&h0({...V}),m0({...V,apply:Qr(({elements:Se,rects:je,availableWidth:Je,availableHeight:Re})=>{const{width:Ye,height:ye}=je.reference,rt=Se.floating.style;rt.setProperty("--radix-popper-available-width",`${Je}px`),rt.setProperty("--radix-popper-available-height",`${Re}px`),rt.setProperty("--radix-popper-anchor-width",`${Ye}px`),rt.setProperty("--radix-popper-anchor-height",`${ye}px`)},"apply")}),N&&b0({element:N,padding:c}),_0({arrowWidth:k,arrowHeight:T}),m&&g0({strategy:"referenceHidden",...V,boundary:F?V.boundary:void 0})]}),z=C.setPlacementState;nt(()=>(z(H),()=>{z(void 0)}),[H,z]);const[Ce,$]=Ga(H),q=nr(y);nt(()=>{ee&&(q==null||q())},[ee,q]);const xe=(te=G.arrow)==null?void 0:te.x,oe=(Ne=G.arrow)==null?void 0:Ne.y,he=((be=G.arrow)==null?void 0:be.centerOffset)!==0,[Y,ce]=v.useState();return nt(()=>{w&&ce(window.getComputedStyle(w).zIndex)},[w]),l.jsx("div",{ref:re.setFloating,"data-radix-popper-content-wrapper":"",style:{...K,transform:ee?K.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:Y,"--radix-popper-transform-origin":[(ue=G.transformOrigin)==null?void 0:ue.x,(X=G.transformOrigin)==null?void 0:X.y].join(" "),...((ne=G.hide)==null?void 0:ne.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:t.dir,children:l.jsx(E0,{scope:o,placedSide:Ce,placedAlign:$,onArrowChange:E,arrowX:xe,arrowY:oe,shouldHideArrow:he,children:l.jsx(Ie.div,{"data-side":Ce,"data-align":$,...b,ref:S,style:{...b.style,animation:ee?(pe=b.style)==null?void 0:pe.animation:"none"}})})})},"PopperContent"));function mp(e){return e!==null}Qr(mp,"isNotNull");var _0=Qr(e=>({name:"transformOrigin",options:e,fn(t){var b,C,w;const{placement:r,rects:o,middlewareData:n}=t,s=((b=n.arrow)==null?void 0:b.centerOffset)!==0,i=s?0:e.arrowWidth,c=s?0:e.arrowHeight,[d,f]=Ga(r),u={start:"0%",center:"50%",end:"100%"}[f],h=(((C=n.arrow)==null?void 0:C.x)??0)+i/2,m=(((w=n.arrow)==null?void 0:w.y)??0)+c/2;let g="",y="";return d==="bottom"?(g=s?u:`${h}px`,y=`${-c}px`):d==="top"?(g=s?u:`${h}px`,y=`${o.floating.height+c}px`):d==="right"?(g=`${-c}px`,y=s?u:`${m}px`):d==="left"&&(g=`${o.floating.width+c}px`,y=s?u:`${m}px`),{data:{x:g,y}}}}),"transformOrigin");function Ga(e){const[t,r="center"]=e.split("-");return[t,r]}Qr(Ga,"getSideAndAlignFromPlacement");var gp=C0,bp=N0,yp=k0,D0=Object.defineProperty,A0=(e,t)=>D0(e,"name",{value:t,configurable:!0}),vp=v.forwardRef(A0(function(t,r){var c;const{container:o,...n}=t,[a,s]=v.useState(!1);nt(()=>s(!0),[]);const i=o||a&&((c=globalThis==null?void 0:globalThis.document)==null?void 0:c.body);return i?sn.createPortal(l.jsx(Ie.div,{...n,ref:r}),i):null},"Portal")),T0=Object.defineProperty,Lr=(e,t)=>T0(e,"name",{value:t,configurable:!0});function xp(e,t){return v.useReducer((r,o)=>t[r][o]??r,e)}Lr(xp,"useStateMachine");var Vo=Lr(e=>{const{present:t,children:r}=e,o=wp(t),n=typeof r=="function"?r({present:o.isPresent}):v.Children.only(r),a=Cp(o.ref,Sp(n));return typeof r=="function"||o.isPresent?v.cloneElement(n,{ref:a}):null},"Presence");function wp(e){const[t,r]=v.useState(),o=v.useRef(null),n=v.useRef(e),a=v.useRef("none"),s=v.useRef(void 0),i=e?"mounted":"unmounted",[c,d]=xp(i,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return v.useEffect(()=>{c==="mounted"?(a.current=s.current??zo(o.current),s.current=void 0):a.current="none"},[c]),nt(()=>{const f=o.current,u=n.current;if(u!==e){const m=a.current,g=zo(f);e?(s.current=g,d("MOUNT")):g==="none"||(f==null?void 0:f.display)==="none"?d("UNMOUNT"):d(u&&m!==g?"ANIMATION_OUT":"UNMOUNT"),n.current=e}},[e,d]),nt(()=>{if(t){let f;const u=t.ownerDocument.defaultView??window,h=Lr(g=>{const b=zo(o.current).includes(CSS.escape(g.animationName));if(g.target===t&&b&&(d("ANIMATION_END"),!n.current)){const C=t.style.animationFillMode;t.style.animationFillMode="forwards",f=u.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=C)})}},"handleAnimationEnd"),m=Lr(g=>{g.target===t&&(a.current=zo(o.current))},"handleAnimationStart");return t.addEventListener("animationstart",m),t.addEventListener("animationcancel",h),t.addEventListener("animationend",h),()=>{u.clearTimeout(f),t.removeEventListener("animationstart",m),t.removeEventListener("animationcancel",h),t.removeEventListener("animationend",h)}}else d("ANIMATION_END")},[t,d]),{isPresent:["mounted","unmountSuspended"].includes(c),ref:v.useCallback(f=>{if(f){const u=getComputedStyle(f);o.current=u,s.current=zo(u)}else o.current=null;r(f)},[])}}Lr(wp,"usePresence");function yi(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}Lr(yi,"setRef");function Cp(...e){const t=v.useRef(e);return t.current=e,v.useCallback(r=>{const o=t.current;let n=!1;const a=o.map(s=>{const i=yi(s,r);return!n&&typeof i=="function"&&(n=!0),i});if(n)return()=>{for(let s=0;s<a.length;s++){const i=a[s];typeof i=="function"?i():yi(o[s],null)}}},[])}Lr(Cp,"useStableComposedRefs");function zo(e){return(e==null?void 0:e.animationName)||"none"}Lr(zo,"getAnimationName");function Sp(e){var o,n;let t=(o=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:o.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=(n=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:n.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}Lr(Sp,"getElementRef");var I0=Object.defineProperty,P0=(e,t)=>I0(e,"name",{value:t,configurable:!0}),Np=v[" useEffectEvent ".trim().toString()],Ep=v[" useInsertionEffect ".trim().toString()];function kp(e){if(typeof Np=="function")return Np(e);const t=v.useRef(()=>{throw new Error("Cannot call an event handler while rendering.")});return typeof Ep=="function"?Ep(()=>{t.current=e}):nt(()=>{t.current=e}),v.useMemo(()=>((...r)=>{var o;return(o=t.current)==null?void 0:o.call(t,...r)}),[])}P0(kp,"useEffectEvent");var M0=Object.defineProperty,bn=(e,t)=>M0(e,"name",{value:t,configurable:!0}),O0=v[" useInsertionEffect ".trim().toString()]||nt;function br({prop:e,defaultProp:t,onChange:r=bn(()=>{},"onChange"),caller:o}){const[n,a,s]=_p({defaultProp:t,onChange:r}),i=e!==void 0,c=i?e:n,d=v.useCallback(f=>{var u;if(i){const h=Dp(f)?f(e):f;h!==e&&((u=s.current)==null||u.call(s,h))}else a(f)},[i,e,a,s]);return[c,d]}bn(br,"useControllableState");function _p({defaultProp:e,onChange:t}){const[r,o]=v.useState(e),n=v.useRef(r),a=v.useRef(t);return O0(()=>{a.current=t},[t]),v.useEffect(()=>{var s;n.current!==r&&((s=a.current)==null||s.call(a,r),n.current=r)},[r,n]),[r,o,a]}bn(_p,"useUncontrolledState");function Dp(e){return typeof e=="function"}bn(Dp,"isFunction");var Ap=Symbol("RADIX:SYNC_STATE");function L0(e,t,r,o){const{prop:n,defaultProp:a,onChange:s,caller:i}=t,c=n!==void 0,d=kp(s),f=[{...r,state:a}];o&&f.push(o);const[u,h]=v.useReducer((b,C)=>{if(C.type===Ap)return{...b,state:C.state};const w=e(b,C);return c&&!Object.is(w.state,b.state)&&d(w.state),w},...f),m=u.state,g=v.useRef(m);v.useEffect(()=>{g.current!==m&&(g.current=m,c||d(m))},[m,g,c]);const y=v.useMemo(()=>n!==void 0?{...u,state:n}:u,[u,n]);return v.useEffect(()=>{c&&!Object.is(n,u.state)&&h({type:Ap,state:n})},[n,u.state,c]),[y,h]}bn(L0,"useControllableStateReducer");var F0=Object.defineProperty,$0=(e,t)=>F0(e,"name",{value:t,configurable:!0});function Tp(e){const t=v.useRef({value:e,previous:e});return v.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}$0(Tp,"usePrevious");var G0=Object.defineProperty,V0=(e,t)=>G0(e,"name",{value:t,configurable:!0}),Ip=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),z0=v.forwardRef(V0(function(t,r){return l.jsx(Ie.span,{...t,ref:r,style:{...Ip,...t.style}})},"VisuallyHidden")),B0=z0,U0=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},Bo=new WeakMap,Va=new WeakMap,za={},vi=0,Pp=function(e){return e&&(e.host||Pp(e.parentNode))},W0=function(e,t){return t.map(function(r){if(e.contains(r))return r;var o=Pp(r);return o&&e.contains(o)?o:(console.error("aria-hidden",r,"in not contained inside",e,". Doing nothing"),null)}).filter(function(r){return!!r})},H0=function(e,t,r,o){var n=W0(t,Array.isArray(e)?e:[e]);za[r]||(za[r]=new WeakMap);var a=za[r],s=[],i=new Set,c=new Set(n),d=function(u){!u||i.has(u)||(i.add(u),d(u.parentNode))};n.forEach(d);var f=function(u){!u||c.has(u)||Array.prototype.forEach.call(u.children,function(h){if(i.has(h))f(h);else try{var m=h.getAttribute(o),g=m!==null&&m!=="false",y=(Bo.get(h)||0)+1,b=(a.get(h)||0)+1;Bo.set(h,y),a.set(h,b),s.push(h),y===1&&g&&Va.set(h,!0),b===1&&h.setAttribute(r,"true"),g||h.setAttribute(o,"true")}catch(C){console.error("aria-hidden: cannot operate on ",h,C)}})};return f(t),i.clear(),vi++,function(){s.forEach(function(u){var h=Bo.get(u)-1,m=a.get(u)-1;Bo.set(u,h),a.set(u,m),h||(Va.has(u)||u.removeAttribute(o),Va.delete(u)),m||u.removeAttribute(r)}),vi--,vi||(Bo=new WeakMap,Bo=new WeakMap,Va=new WeakMap,za={})}},j0=function(e,t,r){r===void 0&&(r="data-aria-hidden");var o=Array.from(Array.isArray(e)?e:[e]),n=U0(e);return n?(o.push.apply(o,Array.from(n.querySelectorAll("[aria-live], script"))),H0(o,n,r,"aria-hidden")):function(){return null}},yr=function(){return yr=Object.assign||function(t){for(var r,o=1,n=arguments.length;o<n;o++){r=arguments[o];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(t[a]=r[a])}return t},yr.apply(this,arguments)};function Mp(e,t){var r={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,o=Object.getOwnPropertySymbols(e);n<o.length;n++)t.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n])&&(r[o[n]]=e[o[n]]);return r}function Y0(e,t,r){if(r||arguments.length===2)for(var o=0,n=t.length,a;o<n;o++)(a||!(o in t))&&(a||(a=Array.prototype.slice.call(t,0,o)),a[o]=t[o]);return e.concat(a||Array.prototype.slice.call(t))}typeof SuppressedError=="function"&&SuppressedError;var Ba="right-scroll-bar-position",Ua="width-before-scroll-bar",q0="with-scroll-bars-hidden",Q0="--removed-body-scroll-bar-size";function xi(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function K0(e,t){var r=D.useState(function(){return{value:e,callback:t,facade:{get current(){return r.value},set current(o){var n=r.value;n!==o&&(r.value=o,r.callback(o,n))}}}})[0];return r.callback=t,r.facade}var X0=typeof window<"u"?v.useLayoutEffect:v.useEffect,Op=new WeakMap;function J0(e,t){var r=K0(null,function(o){return e.forEach(function(n){return xi(n,o)})});return X0(function(){var o=Op.get(r);if(o){var n=new Set(o),a=new Set(e),s=r.current;n.forEach(function(i){a.has(i)||xi(i,null)}),a.forEach(function(i){n.has(i)||xi(i,s)})}Op.set(r,e)},[e]),r}function Z0(e){return e}function R0(e,t){t===void 0&&(t=Z0);var r=[],o=!1,n={read:function(){if(o)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:e},useMedium:function(a){var s=t(a,o);return r.push(s),function(){r=r.filter(function(i){return i!==s})}},assignSyncMedium:function(a){for(o=!0;r.length;){var s=r;r=[],s.forEach(a)}r={push:function(i){return a(i)},filter:function(){return r}}},assignMedium:function(a){o=!0;var s=[];if(r.length){var i=r;r=[],i.forEach(a),s=r}var c=function(){var f=s;s=[],f.forEach(a)},d=function(){return Promise.resolve().then(c)};d(),r={push:function(f){s.push(f),d()},filter:function(f){return s=s.filter(f),r}}}};return n}function eC(e){e===void 0&&(e={});var t=R0(null);return t.options=yr({async:!0,ssr:!1},e),t}var Lp=function(e){var t=e.sideCar,r=Mp(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var o=t.read();if(!o)throw new Error("Sidecar medium not found");return v.createElement(o,yr({},r))};Lp.isSideCarExport=!0;function tC(e,t){return e.useMedium(t),Lp}var Fp=eC(),wi=function(){},Wa=v.forwardRef(function(e,t){var r=v.useRef(null),o=v.useState({onScrollCapture:wi,onWheelCapture:wi,onTouchMoveCapture:wi}),n=o[0],a=o[1],s=e.forwardProps,i=e.children,c=e.className,d=e.removeScrollBar,f=e.enabled,u=e.shards,h=e.sideCar,m=e.noRelative,g=e.noIsolation,y=e.inert,b=e.allowPinchZoom,C=e.as,w=C===void 0?"div":C,x=e.gapMode,S=Mp(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),N=h,E=J0([r,t]),M=yr(yr({},S),n);return v.createElement(v.Fragment,null,f&&v.createElement(N,{sideCar:Fp,removeScrollBar:d,shards:u,noRelative:m,noIsolation:g,inert:y,setCallbacks:a,allowPinchZoom:!!b,lockRef:r,gapMode:x}),s?v.cloneElement(v.Children.only(i),yr(yr({},M),{ref:E})):v.createElement(w,yr({},M,{className:c,ref:E}),i))});Wa.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},Wa.classNames={fullWidth:Ua,zeroRight:Ba};var rC=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function oC(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=rC();return t&&e.setAttribute("nonce",t),e}function nC(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function aC(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var sC=function(){var e=0,t=null;return{add:function(r){e==0&&(t=oC())&&(nC(t,r),aC(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},lC=function(){var e=sC();return function(t,r){v.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&r])}},$p=function(){var e=lC(),t=function(r){var o=r.styles,n=r.dynamic;return e(o,n),null};return t},iC={left:0,top:0,right:0,gap:0},Ci=function(e){return parseInt(e||"",10)||0},cC=function(e){var t=window.getComputedStyle(document.body),r=t[e==="padding"?"paddingLeft":"marginLeft"],o=t[e==="padding"?"paddingTop":"marginTop"],n=t[e==="padding"?"paddingRight":"marginRight"];return[Ci(r),Ci(o),Ci(n)]},dC=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return iC;var t=cC(e),r=document.documentElement.clientWidth,o=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,o-r+t[2]-t[0])}},uC=$p(),Uo="data-scroll-locked",pC=function(e,t,r,o){var n=e.left,a=e.top,s=e.right,i=e.gap;return r===void 0&&(r="margin"),`
2
- .`.concat(q0,` {
1
+ (function(ee,l){typeof exports=="object"&&typeof module<"u"?l(exports,require("react/jsx-runtime"),require("react"),require("react-dom")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","react-dom"],l):(ee=typeof globalThis<"u"?globalThis:ee||self,l(ee.EntryPulse={},ee.jsxRuntime,ee.React,ee.ReactDOM))})(this,(function(ee,l,P,Bs){"use strict";var rI=Object.defineProperty;var ow=ee=>{throw TypeError(ee)};var oI=(ee,l,P)=>l in ee?rI(ee,l,{enumerable:!0,configurable:!0,writable:!0,value:P}):ee[l]=P;var ni=(ee,l,P)=>oI(ee,typeof l!="symbol"?l+"":l,P),nw=(ee,l,P)=>l.has(ee)||ow("Cannot "+P);var Bt=(ee,l,P)=>(nw(ee,l,"read from private field"),P?P.call(ee):l.get(ee)),sw=(ee,l,P)=>l.has(ee)?ow("Cannot add the same private member more than once"):l instanceof WeakSet?l.add(ee):l.set(ee,P),Eu=(ee,l,P,Bs)=>(nw(ee,l,"write to private field"),Bs?Bs.call(ee,P):l.set(ee,P),P);var mt,tr;function _u(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const o=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,o.get?o:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const S=_u(P),Tn=_u(Bs),ku=e=>{let t;const r=new Set,o=(d,p)=>{const u=typeof d=="function"?d(t):d;if(!Object.is(u,t)){const f=t;t=p??(typeof u!="object"||u===null)?u:Object.assign({},t,u),r.forEach(h=>h(t,f))}},n=()=>t,i={setState:o,getState:n,getInitialState:()=>c,subscribe:d=>(r.add(d),()=>r.delete(d))},c=t=e(o,n,i);return i},aw=(e=>e?ku(e):ku),lw=e=>e;function iw(e,t=lw){const r=P.useSyncExternalStore(e.subscribe,P.useCallback(()=>t(e.getState()),[e,t]),P.useCallback(()=>t(e.getInitialState()),[e,t]));return P.useDebugValue(r),r}const Au=e=>{const t=aw(e),r=o=>iw(t,o);return Object.assign(r,t),r},cw=(e=>e?Au(e):Au);var Du=Symbol.for("immer-nothing"),$u=Symbol.for("immer-draftable"),Qt=Symbol.for("immer-state"),dw=process.env.NODE_ENV!=="production"?[function(e){return`The plugin for '${e}' has not been loaded into Immer. To enable the plugin, import and call \`enable${e}()\` when initializing your application.`},function(e){return`produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '${e}'`},"This object has been frozen and should not be mutated",function(e){return"Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? "+e},"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.","Immer forbids circular references","The first or second argument to `produce` must be a function","The third argument to `produce` must be a function or undefined","First argument to `createDraft` must be a plain object, an array, or an immerable object","First argument to `finishDraft` must be a draft returned by `createDraft`",function(e){return`'current' expects a draft, got: ${e}`},"Object.defineProperty() cannot be used on an Immer draft","Object.setPrototypeOf() cannot be used on an Immer draft","Immer only supports deleting array indices","Immer only supports setting array indices and the 'length' property",function(e){return`'original' expects a draft, got: ${e}`}]:[];function Ht(e,...t){if(process.env.NODE_ENV!=="production"){const r=dw[e],o=typeof r=="function"?r.apply(null,t):r;throw new Error(`[Immer] ${o}`)}throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Pn=Object.getPrototypeOf;function rn(e){return!!e&&!!e[Qt]}function _o(e){var t;return e?Pu(e)||Array.isArray(e)||!!e[$u]||!!((t=e.constructor)!=null&&t[$u])||In(e)||Hs(e):!1}var uw=Object.prototype.constructor.toString(),Tu=new WeakMap;function Pu(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);if(t===null||t===Object.prototype)return!0;const r=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;if(r===Object)return!0;if(typeof r!="function")return!1;let o=Tu.get(r);return o===void 0&&(o=Function.toString.call(r),Tu.set(r,o)),o===uw}function Us(e,t,r=!0){Ws(e)===0?(r?Reflect.ownKeys(e):Object.keys(e)).forEach(n=>{t(n,e[n],e)}):e.forEach((o,n)=>t(n,o,e))}function Ws(e){const t=e[Qt];return t?t.type_:Array.isArray(e)?1:In(e)?2:Hs(e)?3:0}function si(e,t){return Ws(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function Iu(e,t,r){const o=Ws(e);o===2?e.set(t,r):o===3?e.add(r):e[t]=r}function fw(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}function In(e){return e instanceof Map}function Hs(e){return e instanceof Set}function ko(e){return e.copy_||e.base_}function ai(e,t){if(In(e))return new Map(e);if(Hs(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const r=Pu(e);if(t===!0||t==="class_only"&&!r){const o=Object.getOwnPropertyDescriptors(e);delete o[Qt];let n=Reflect.ownKeys(o);for(let s=0;s<n.length;s++){const a=n[s],i=o[a];i.writable===!1&&(i.writable=!0,i.configurable=!0),(i.get||i.set)&&(o[a]={configurable:!0,writable:!0,enumerable:i.enumerable,value:e[a]})}return Object.create(Pn(e),o)}else{const o=Pn(e);if(o!==null&&r)return{...e};const n=Object.create(o);return Object.assign(n,e)}}function li(e,t=!1){return qs(e)||rn(e)||!_o(e)||(Ws(e)>1&&Object.defineProperties(e,{set:js,add:js,clear:js,delete:js}),Object.freeze(e),t&&Object.values(e).forEach(r=>li(r,!0))),e}function pw(){Ht(2)}var js={value:pw};function qs(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var hw={};function Ao(e){const t=hw[e];return t||Ht(0,e),t}var On;function Ou(){return On}function mw(e,t){return{drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function Mu(e,t){t&&(Ao("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function ii(e){ci(e),e.drafts_.forEach(gw),e.drafts_=null}function ci(e){e===On&&(On=e.parent_)}function Lu(e){return On=mw(On,e)}function gw(e){const t=e[Qt];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function Fu(e,t){t.unfinalizedDrafts_=t.drafts_.length;const r=t.drafts_[0];return e!==void 0&&e!==r?(r[Qt].modified_&&(ii(t),Ht(4)),_o(e)&&(e=Ys(t,e),t.parent_||Qs(t,e)),t.patches_&&Ao("Patches").generateReplacementPatches_(r[Qt].base_,e,t.patches_,t.inversePatches_)):e=Ys(t,r,[]),ii(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==Du?e:void 0}function Ys(e,t,r){if(qs(t))return t;const o=e.immer_.shouldUseStrictIteration(),n=t[Qt];if(!n)return Us(t,(s,a)=>Vu(e,n,t,s,a,r),o),t;if(n.scope_!==e)return t;if(!n.modified_)return Qs(e,n.base_,!0),n.base_;if(!n.finalized_){n.finalized_=!0,n.scope_.unfinalizedDrafts_--;const s=n.copy_;let a=s,i=!1;n.type_===3&&(a=new Set(s),s.clear(),i=!0),Us(a,(c,d)=>Vu(e,n,s,c,d,r,i),o),Qs(e,s,!1),r&&e.patches_&&Ao("Patches").generatePatches_(n,r,e.patches_,e.inversePatches_)}return n.copy_}function Vu(e,t,r,o,n,s,a){if(n==null||typeof n!="object"&&!a)return;const i=qs(n);if(!(i&&!a)){if(process.env.NODE_ENV!=="production"&&n===r&&Ht(5),rn(n)){const c=s&&t&&t.type_!==3&&!si(t.assigned_,o)?s.concat(o):void 0,d=Ys(e,n,c);if(Iu(r,o,d),rn(d))e.canAutoFreeze_=!1;else return}else a&&r.add(n);if(_o(n)&&!i){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||t&&t.base_&&t.base_[o]===n&&i)return;Ys(e,n),(!t||!t.scope_.parent_)&&typeof o!="symbol"&&(In(r)?r.has(o):Object.prototype.propertyIsEnumerable.call(r,o))&&Qs(e,n)}}}function Qs(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&li(t,r)}function bw(e,t){const r=Array.isArray(e),o={type_:r?1:0,scope_:t?t.scope_:Ou(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let n=o,s=di;r&&(n=[o],s=Mn);const{revoke:a,proxy:i}=Proxy.revocable(n,s);return o.draft_=i,o.revoke_=a,i}var di={get(e,t){if(t===Qt)return e;const r=ko(e);if(!si(r,t))return yw(e,r,t);const o=r[t];return e.finalized_||!_o(o)?o:o===ui(e.base_,t)?(pi(e),e.copy_[t]=hi(o,e)):o},has(e,t){return t in ko(e)},ownKeys(e){return Reflect.ownKeys(ko(e))},set(e,t,r){const o=Gu(ko(e),t);if(o!=null&&o.set)return o.set.call(e.draft_,r),!0;if(!e.modified_){const n=ui(ko(e),t),s=n==null?void 0:n[Qt];if(s&&s.base_===r)return e.copy_[t]=r,e.assigned_[t]=!1,!0;if(fw(r,n)&&(r!==void 0||si(e.base_,t)))return!0;pi(e),fi(e)}return e.copy_[t]===r&&(r!==void 0||t in e.copy_)||Number.isNaN(r)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=r,e.assigned_[t]=!0),!0},deleteProperty(e,t){return ui(e.base_,t)!==void 0||t in e.base_?(e.assigned_[t]=!1,pi(e),fi(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const r=ko(e),o=Reflect.getOwnPropertyDescriptor(r,t);return o&&{writable:!0,configurable:e.type_!==1||t!=="length",enumerable:o.enumerable,value:r[t]}},defineProperty(){Ht(11)},getPrototypeOf(e){return Pn(e.base_)},setPrototypeOf(){Ht(12)}},Mn={};Us(di,(e,t)=>{Mn[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}}),Mn.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&Ht(13),Mn.set.call(this,e,t,void 0)},Mn.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&Ht(14),di.set.call(this,e[0],t,r,e[0])};function ui(e,t){const r=e[Qt];return(r?ko(r):e)[t]}function yw(e,t,r){var n;const o=Gu(t,r);return o?"value"in o?o.value:(n=o.get)==null?void 0:n.call(e.draft_):void 0}function Gu(e,t){if(!(t in e))return;let r=Pn(e);for(;r;){const o=Object.getOwnPropertyDescriptor(r,t);if(o)return o;r=Pn(r)}}function fi(e){e.modified_||(e.modified_=!0,e.parent_&&fi(e.parent_))}function pi(e){e.copy_||(e.copy_=ai(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var vw=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(r,o,n)=>{if(typeof r=="function"&&typeof o!="function"){const a=o;o=r;const i=this;return function(d=a,...p){return i.produce(d,u=>o.call(this,u,...p))}}typeof o!="function"&&Ht(6),n!==void 0&&typeof n!="function"&&Ht(7);let s;if(_o(r)){const a=Lu(this),i=hi(r,void 0);let c=!0;try{s=o(i),c=!1}finally{c?ii(a):ci(a)}return Mu(a,n),Fu(s,a)}else if(!r||typeof r!="object"){if(s=o(r),s===void 0&&(s=r),s===Du&&(s=void 0),this.autoFreeze_&&li(s,!0),n){const a=[],i=[];Ao("Patches").generateReplacementPatches_(r,s,a,i),n(a,i)}return s}else Ht(1,r)},this.produceWithPatches=(r,o)=>{if(typeof r=="function")return(i,...c)=>this.produceWithPatches(i,d=>r(d,...c));let n,s;return[this.produce(r,o,(i,c)=>{n=i,s=c}),n,s]},typeof(t==null?void 0:t.autoFreeze)=="boolean"&&this.setAutoFreeze(t.autoFreeze),typeof(t==null?void 0:t.useStrictShallowCopy)=="boolean"&&this.setUseStrictShallowCopy(t.useStrictShallowCopy),typeof(t==null?void 0:t.useStrictIteration)=="boolean"&&this.setUseStrictIteration(t.useStrictIteration)}createDraft(t){_o(t)||Ht(8),rn(t)&&(t=xw(t));const r=Lu(this),o=hi(t,void 0);return o[Qt].isManual_=!0,ci(r),o}finishDraft(t,r){const o=t&&t[Qt];(!o||!o.isManual_)&&Ht(9);const{scope_:n}=o;return Mu(n,r),Fu(void 0,n)}setAutoFreeze(t){this.autoFreeze_=t}setUseStrictShallowCopy(t){this.useStrictShallowCopy_=t}setUseStrictIteration(t){this.useStrictIteration_=t}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(t,r){let o;for(o=r.length-1;o>=0;o--){const s=r[o];if(s.path.length===0&&s.op==="replace"){t=s.value;break}}o>-1&&(r=r.slice(o+1));const n=Ao("Patches").applyPatches_;return rn(t)?n(t,r):this.produce(t,s=>n(s,r))}};function hi(e,t){const r=In(e)?Ao("MapSet").proxyMap_(e,t):Hs(e)?Ao("MapSet").proxySet_(e,t):bw(e,t);return(t?t.scope_:Ou()).drafts_.push(r),r}function xw(e){return rn(e)||Ht(10,e),zu(e)}function zu(e){if(!_o(e)||qs(e))return e;const t=e[Qt];let r,o=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=ai(e,t.scope_.immer_.useStrictShallowCopy_),o=t.scope_.immer_.shouldUseStrictIteration()}else r=ai(e,!0);return Us(r,(n,s)=>{Iu(r,n,zu(s))},o),t&&(t.finalized_=!1),r}var ww=new vw,Sw=ww.produce;const Nw=e=>(t,r,o)=>(o.setState=(n,s,...a)=>{const i=typeof n=="function"?Sw(n):n;return t(i,s,...a)},e(o.setState,r,o));function Ks(){const e=Date.now().toString(36),t=Math.random().toString(36).substring(2,8);return`${e}-${t}`}function mi(e){if(!e)return"";const t=e.trim().replace(/[^a-zA-Z0-9\s]/g,"").split(/\s+/).filter(Boolean);return t.length===0?"":t.map((r,o)=>{const n=r.toLowerCase();return o===0?n:n.charAt(0).toUpperCase()+n.slice(1)}).join("")}function Bu(e,t){const r=t instanceof Set?t:new Set(t),o=mi(e.replace(/([A-Z])/g," $1").trim())||"field";if(!r.has(o))return o;let n=1,s=`${o}${n}`;for(;r.has(s);)n++,s=`${o}${n}`;return s}function gi(e){return new Set(e.map(t=>t.attributes.name).filter(Boolean))}const Cw={shortText:{label:"Short Text",placeholder:"Enter text..."},longText:{label:"Long Text",placeholder:"Enter your text here..."},multiLineInput:{label:"Multi-line Input",placeholder:"Enter your text..."},textEditor:{label:"Text Editor",placeholder:"Start typing..."},number:{label:"Number",placeholder:"Enter a number..."},slider:{label:"Slider",description:"Slide to select a value"},rangeSlider:{label:"Range Slider",description:"Select a range"},email:{label:"Email",placeholder:"Enter your email..."},phone:{label:"Phone",placeholder:"Enter your phone number..."},url:{label:"URL",placeholder:"https://example.com"},location:{label:"Location",placeholder:"Enter address...",description:"Enter your address"},password:{label:"Password",placeholder:"Enter your password..."},signature:{label:"Signature",description:"Draw your signature below"},captcha:{label:"Verification",description:"Please verify you are human"},singleChoice:{label:"Single Choice",description:"Select one option"},multipleChoice:{label:"Multiple Choice",description:"Select all that apply"},dropdown:{label:"Dropdown",placeholder:"Select an option..."},tags:{label:"Tags",placeholder:"Type and press enter...",description:"Add tags"},decisionBox:{label:"I agree to the terms and conditions"},toggleSwitch:{label:"Toggle Switch",description:"Turn on or off"},singleChoiceMatrix:{label:"Single Choice Matrix",description:"Select one option per row"},multipleChoiceMatrix:{label:"Multiple Choice Matrix",description:"Select options per row"},matrixTable:{label:"Matrix Table",description:"Fill in the table"},date:{label:"Date",placeholder:"Select a date..."},time:{label:"Time",placeholder:"Select a time..."},dateTime:{label:"Date & Time",placeholder:"Select date and time..."},multipleDates:{label:"Multiple Dates",placeholder:"Select dates...",description:"Select multiple dates"},dateRange:{label:"Date Range",placeholder:"Select date range...",description:"Select start and end dates"},fileUpload:{label:"File Upload",description:"Upload a file"},imageUpload:{label:"Image Upload",description:"Upload an image"},multiFileUpload:{label:"Multi-File Upload",description:"Upload multiple files"},multiImageUpload:{label:"Multi-Image Upload",description:"Upload multiple images"},paragraph:{label:"Paragraph",content:"Enter your paragraph text here. You can use this to provide instructions or additional information."},image:{label:"Image",alt:"Image description",src:""},link:{label:"Link",href:"https://example.com",content:"Click here",target:"_blank"},formHeading:{label:"Form Title",description:"Form description goes here"},sectionHeading:{label:"Section Title"},subheading:{label:"Subheading"},divider:{},spacer:{},group:{label:"Group",description:"Group description"},grid:{label:"Grid Layout"},table:{label:"Table"},repeatElement:{label:"Repeat Element",description:"Add more items"},repeatGroup:{label:"Repeat Group",description:"Add more groups"},pages:{label:"Form Pages"},submit:{label:"Submit"}},Ew={shortText:{labelPosition:"top",size:"default"},longText:{labelPosition:"top",size:"default"},multiLineInput:{labelPosition:"top",size:"default"},textEditor:{labelPosition:"top",size:"large"},number:{labelPosition:"top",size:"default"},slider:{labelPosition:"top",size:"default"},rangeSlider:{labelPosition:"top",size:"default"},email:{labelPosition:"top",size:"default"},phone:{labelPosition:"top",size:"default"},url:{labelPosition:"top",size:"default"},location:{labelPosition:"top",size:"large"},password:{labelPosition:"top",size:"default"},signature:{labelPosition:"top",size:"large"},captcha:{labelPosition:"hidden",size:"default"},singleChoice:{labelPosition:"top",size:"default"},multipleChoice:{labelPosition:"top",size:"default"},dropdown:{labelPosition:"top",size:"default"},tags:{labelPosition:"top",size:"default"},decisionBox:{labelPosition:"hidden",size:"default"},toggleSwitch:{labelPosition:"left",size:"default"},singleChoiceMatrix:{labelPosition:"top",size:"full"},multipleChoiceMatrix:{labelPosition:"top",size:"full"},matrixTable:{labelPosition:"top",size:"full"},date:{labelPosition:"top",size:"default"},time:{labelPosition:"top",size:"small"},dateTime:{labelPosition:"top",size:"default"},multipleDates:{labelPosition:"top",size:"default"},dateRange:{labelPosition:"top",size:"default"},fileUpload:{labelPosition:"top",size:"default"},imageUpload:{labelPosition:"top",size:"default"},multiFileUpload:{labelPosition:"top",size:"large"},multiImageUpload:{labelPosition:"top",size:"large"},paragraph:{labelPosition:"hidden",size:"default"},image:{labelPosition:"hidden",size:"default"},link:{labelPosition:"hidden",size:"default"},formHeading:{size:"large"},sectionHeading:{size:"medium"},subheading:{size:"small"},divider:{size:"default"},spacer:{size:"default",height:24},group:{size:"default"},grid:{size:"full",columns:2,gap:16},table:{size:"full"},repeatElement:{size:"default"},repeatGroup:{size:"full"},pages:{size:"full"},submit:{size:"default"}},Uu={shortText:{maxLength:255},longText:{maxLength:5e3},multiLineInput:{maxLength:5e3},textEditor:{maxLength:5e4},number:{},slider:{},rangeSlider:{},email:{},phone:{},url:{},location:{},password:{minLength:8},singleChoice:{},multipleChoice:{},dropdown:{},tags:{},decisionBox:{},singleChoiceMatrix:{},multipleChoiceMatrix:{},date:{},time:{},dateTime:{},multipleDates:{},dateRange:{},fileUpload:{},imageUpload:{},multiFileUpload:{maxFiles:10},multiImageUpload:{maxFiles:10}},Wu={longText:{rows:3,autoResize:!1},multiLineInput:{minRows:2,maxRows:10,autoResize:!0},textEditor:{toolbar:["bold","italic","underline","link"],height:200,allowImages:!1,allowLinks:!0},number:{step:1,decimals:0,thousandsSeparator:!1},slider:{min:0,max:100,step:1,showValue:!0,showMarks:!1},rangeSlider:{min:0,max:100,step:1,showValue:!0,minRange:0},phone:{defaultCountry:"US",format:"international"},location:{enableGeolocation:!1,showMap:!1},password:{showStrengthMeter:!0,showToggle:!0,minStrength:"medium"},signature:{strokeWidth:2,strokeColor:"#000000",backgroundColor:"#ffffff",canvasWidth:400,canvasHeight:200},captcha:{provider:"recaptcha",theme:"light"},singleChoice:{options:[{label:"Option 1",value:"option1"},{label:"Option 2",value:"option2"},{label:"Option 3",value:"option3"}],allowOther:!1},multipleChoice:{options:[{label:"Option 1",value:"option1"},{label:"Option 2",value:"option2"},{label:"Option 3",value:"option3"}],allowOther:!1},dropdown:{options:[{label:"Option 1",value:"option1"},{label:"Option 2",value:"option2"},{label:"Option 3",value:"option3"}],allowOther:!1},tags:{options:[{label:"Tag 1",value:"tag1"},{label:"Tag 2",value:"tag2"},{label:"Tag 3",value:"tag3"}],maxTags:10,allowCustomTags:!0},decisionBox:{checkedLabel:"Yes",uncheckedLabel:"No"},toggleSwitch:{onLabel:"On",offLabel:"Off"},singleChoiceMatrix:{matrixRows:[{id:"row1",label:"Row 1"},{id:"row2",label:"Row 2"},{id:"row3",label:"Row 3"}],matrixColumns:[{id:"col1",label:"Column 1"},{id:"col2",label:"Column 2"},{id:"col3",label:"Column 3"}]},multipleChoiceMatrix:{matrixRows:[{id:"row1",label:"Row 1"},{id:"row2",label:"Row 2"},{id:"row3",label:"Row 3"}],matrixColumns:[{id:"col1",label:"Column 1"},{id:"col2",label:"Column 2"},{id:"col3",label:"Column 3"}],allowMultiplePerRow:!0},matrixTable:{matrixRows:[{id:"row1",label:"Row 1"},{id:"row2",label:"Row 2"}],matrixColumns:[{id:"col1",label:"Text",type:"text"},{id:"col2",label:"Number",type:"number"}]},date:{format:"YYYY-MM-DD",showCalendar:!0},time:{timeFormat:"12h",timeInterval:15},dateTime:{format:"YYYY-MM-DD",timeFormat:"12h",timeInterval:15},multipleDates:{format:"YYYY-MM-DD",showCalendar:!0},dateRange:{format:"YYYY-MM-DD",showCalendar:!0,minDays:1},fileUpload:{accept:"*/*",maxSize:10485760,multiple:!1},imageUpload:{accept:"image/*",maxSize:5242880,multiple:!1,allowCrop:!1},multiFileUpload:{accept:"*/*",maxSize:10485760,multiple:!0,maxFiles:10},multiImageUpload:{accept:"image/*",maxSize:5242880,multiple:!0,maxFiles:10,allowCrop:!1},paragraph:{textAlign:"left",fontSize:"medium",fontWeight:"normal"},image:{imageWidth:"100%",objectFit:"contain",borderRadius:0},link:{linkStyle:"text"},formHeading:{level:1,alignment:"left"},sectionHeading:{level:2,alignment:"left"},subheading:{level:3,alignment:"left"},divider:{style:"solid",thickness:1,color:"#e5e7eb"},spacer:{spacerHeight:24},group:{collapsed:!1,collapsible:!1,showBorder:!0,padding:16},grid:{gridColumns:2,gridGap:16,responsiveColumns:{sm:1,md:2,lg:2}},table:{tableColumns:[{id:"col1",header:"Column 1",align:"left"},{id:"col2",header:"Column 2",align:"left"}],showHeader:!0,striped:!0,bordered:!0},repeatElement:{minItems:1,maxItems:10,addButtonText:"Add Item",removeButtonText:"Remove",showItemNumber:!0},repeatGroup:{minItems:1,maxItems:10,addButtonText:"Add Group",removeButtonText:"Remove",itemLabel:"Item",showItemNumber:!0},pages:{showProgressBar:!0,showStepNumbers:!0,allowSkip:!1,validateOnNext:!0,nextButtonLabel:"Next",activeStepId:"step1",steps:[{id:"step1",label:"Step 1",description:""},{id:"step2",label:"Step 2",description:""}]},submit:{buttonText:"Submit",buttonStyle:"primary",buttonSize:"medium",showIcon:!1,loadingText:"Submitting..."}},_w={shortText:"string",longText:"string",multiLineInput:"string",textEditor:"string",number:"number",slider:"number",rangeSlider:"object",email:"string",phone:"string",url:"string",location:"object",password:"string",signature:"string",captcha:"string",singleChoice:"string",multipleChoice:"array",dropdown:"string",tags:"array",decisionBox:"boolean",toggleSwitch:"boolean",singleChoiceMatrix:"object",multipleChoiceMatrix:"object",matrixTable:"object",date:"date",time:"string",dateTime:"date",multipleDates:"array",dateRange:"object",fileUpload:"object",imageUpload:"object",multiFileUpload:"array",multiImageUpload:"array",paragraph:"string",image:"string",link:"string",formHeading:"string",sectionHeading:"string",subheading:"string",divider:"string",spacer:"string",group:"object",grid:"object",table:"object",repeatElement:"array",repeatGroup:"array",pages:"object",submit:"string"};function Hu(e,t,r){const o=Bu(e,t),n={id:Ks(),type:e,order:r,properties:{...Cw[e]},layout:{...Ew[e]},attributes:{name:o,dataType:_w[e]}};return Uu[e]&&(n.validation={...Uu[e]}),Wu[e]&&(n.config=JSON.parse(JSON.stringify(Wu[e]))),n}function ju(){return{id:`form-${Ks()}`,version:"1.0.0",title:"Untitled Form",description:"",metadata:{createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()},settings:{showProgressBar:!1,allowSaveDraft:!1,submitButtonText:"Submit",successMessage:"Thank you for your submission!",submitAction:"message"},elements:[]}}function kw(e,t){const r=JSON.parse(JSON.stringify(e));return r.id=Ks(),r.attributes.name=Bu(e.type,t),r}function bi(e){return["paragraph","image","link","formHeading","sectionHeading","subheading","divider","spacer"].includes(e)}function Aw(e){const t=["paragraph","image","link","formHeading","sectionHeading","subheading","divider","spacer","captcha"],r=["singleChoice","dropdown","decisionBox","toggleSwitch","signature","captcha",...t],o=["number","slider","rangeSlider","date","time","dateTime","multipleDates","dateRange","fileUpload","imageUpload","multiFileUpload","multiImageUpload","singleChoice","multipleChoice","dropdown","decisionBox","toggleSwitch","signature","captcha","singleChoiceMatrix","multipleChoiceMatrix","matrixTable",...t];return{supportsRequired:!t.includes(e),supportsMinMax:!r.includes(e),supportsPattern:!o.includes(e)}}const Dw=50;function or(e,t){const r=e.history.slice(0,e.historyIndex+1);r.push(JSON.parse(JSON.stringify(t))),r.length>Dw&&r.shift(),e.history=r,e.historyIndex=r.length-1,e.schema=t}const qu=ju(),$w={schema:qu,selectedElementId:null,mode:"design",history:[JSON.parse(JSON.stringify(qu))],historyIndex:0,hoveredElementId:null,draggedElementType:null},te=cw()(Nw((e,t)=>({...$w,addElement:(r,o)=>{e(n=>{var p;const s=n.schema.elements.some(u=>u.type==="pages");if(r==="pages"&&s){console.warn("Only one wizard can be added to the form");return}if(s&&r!=="pages"){console.warn("When a wizard exists, elements must be added inside wizard steps");return}const a=gi(n.schema.elements),i=o??n.schema.elements.length,c=Hu(r,a,i);(r==="group"||r==="grid"||r==="repeatGroup"||r==="pages")&&(c.children=[]);const d={...n.schema};o!==void 0?d.elements=[...n.schema.elements.slice(0,o),c,...n.schema.elements.slice(o).map(u=>({...u,order:u.order+1}))]:d.elements=[...n.schema.elements,c],d.metadata={...d.metadata,updatedAt:new Date().toISOString(),createdAt:((p=d.metadata)==null?void 0:p.createdAt)||new Date().toISOString()},or(n,d),n.selectedElementId=c.id})},addElementToContainer:(r,o,n)=>{e(s=>{var f;if(r==="pages"){console.warn("Wizard cannot be added inside a container");return}if(s.schema.elements.findIndex(h=>h.id===o)===-1)return;const i=gi(s.schema.elements),d=s.schema.elements.filter(h=>n?h.parentId===`${o}:${n}`:h.parentId===o).length,p=Hu(r,i,d);n?p.parentId=`${o}:${n}`:p.parentId=o,(r==="group"||r==="grid"||r==="repeatGroup")&&(p.children=[]);const u={...s.schema};u.elements=s.schema.elements.map(h=>h.id===o?{...h,children:[...h.children||[],p.id]}:h),u.elements=[...u.elements,p],u.metadata={...u.metadata,updatedAt:new Date().toISOString(),createdAt:((f=u.metadata)==null?void 0:f.createdAt)||new Date().toISOString()},or(s,u),s.selectedElementId=p.id})},updateElement:(r,o)=>{e(n=>{var i;if(n.schema.elements.findIndex(c=>c.id===r)===-1)return;const a={...n.schema};a.elements=n.schema.elements.map(c=>c.id===r?{...c,...o}:c),a.metadata={...a.metadata,updatedAt:new Date().toISOString(),createdAt:((i=a.metadata)==null?void 0:i.createdAt)||new Date().toISOString()},or(n,a)})},deleteElement:r=>{e(o=>{var c;const n=o.schema.elements.find(d=>d.id===r);if(!n)return;const s=new Set([r]),a=d=>{o.schema.elements.forEach(p=>{var u;(p.parentId===d||(u=p.parentId)!=null&&u.startsWith(`${d}:`))&&(s.add(p.id),a(p.id))})};a(r);const i={...o.schema};if(n.parentId){const d=n.parentId.split(":")[0];i.elements=o.schema.elements.map(p=>p.id===d&&p.children?{...p,children:p.children.filter(u=>u!==r)}:p)}i.elements=i.elements.filter(d=>!s.has(d.id)).map((d,p)=>d.parentId?d:{...d,order:p}),i.metadata={...i.metadata,updatedAt:new Date().toISOString(),createdAt:((c=i.metadata)==null?void 0:c.createdAt)||new Date().toISOString()},or(o,i),(o.selectedElementId===r||s.has(o.selectedElementId||""))&&(o.selectedElementId=null)})},duplicateElement:r=>{e(o=>{var d;const n=o.schema.elements.find(p=>p.id===r);if(!n)return;const s=gi(o.schema.elements),a=kw(n,s);a.order=n.order+1;const i={...o.schema},c=n.order+1;i.elements=[...o.schema.elements.slice(0,c),a,...o.schema.elements.slice(c).map(p=>({...p,order:p.order+1}))],i.metadata={...i.metadata,updatedAt:new Date().toISOString(),createdAt:((d=i.metadata)==null?void 0:d.createdAt)||new Date().toISOString()},or(o,i),o.selectedElementId=a.id})},moveElement:(r,o)=>{e(n=>{var d;const s=n.schema.elements.findIndex(p=>p.id===r);if(s===-1||s===o)return;const a=[...n.schema.elements],[i]=a.splice(s,1);a.splice(o,0,i),a.forEach((p,u)=>{p.order=u});const c={...n.schema,elements:a,metadata:{...n.schema.metadata,updatedAt:new Date().toISOString(),createdAt:((d=n.schema.metadata)==null?void 0:d.createdAt)||new Date().toISOString()}};or(n,c)})},reorderElements:(r,o)=>{e(n=>{var c;if(r===o)return;const s=[...n.schema.elements],[a]=s.splice(r,1);s.splice(o,0,a),s.forEach((d,p)=>{d.order=p});const i={...n.schema,elements:s,metadata:{...n.schema.metadata,updatedAt:new Date().toISOString(),createdAt:((c=n.schema.metadata)==null?void 0:c.createdAt)||new Date().toISOString()}};or(n,i)})},selectElement:r=>{e(o=>{o.selectedElementId=r})},undo:()=>{e(r=>{r.historyIndex>0&&(r.historyIndex-=1,r.schema=JSON.parse(JSON.stringify(r.history[r.historyIndex])),r.selectedElementId=null)})},redo:()=>{e(r=>{r.historyIndex<r.history.length-1&&(r.historyIndex+=1,r.schema=JSON.parse(JSON.stringify(r.history[r.historyIndex])),r.selectedElementId=null)})},canUndo:()=>t().historyIndex>0,canRedo:()=>{const r=t();return r.historyIndex<r.history.length-1},setMode:r=>{e(o=>{o.mode=r})},loadSchema:r=>{e(o=>{o.schema=r,o.history=[JSON.parse(JSON.stringify(r))],o.historyIndex=0,o.selectedElementId=null})},exportSchema:()=>JSON.parse(JSON.stringify(t().schema)),resetForm:()=>{e(r=>{const o=ju();r.schema=o,r.history=[JSON.parse(JSON.stringify(o))],r.historyIndex=0,r.selectedElementId=null})},updateFormTitle:r=>{e(o=>{var s;const n={...o.schema,title:r,metadata:{...o.schema.metadata,updatedAt:new Date().toISOString(),createdAt:((s=o.schema.metadata)==null?void 0:s.createdAt)||new Date().toISOString()}};or(o,n)})},updateFormDescription:r=>{e(o=>{var s;const n={...o.schema,description:r,metadata:{...o.schema.metadata,updatedAt:new Date().toISOString(),createdAt:((s=o.schema.metadata)==null?void 0:s.createdAt)||new Date().toISOString()}};or(o,n)})},setHoveredElementId:r=>{e(o=>{o.hoveredElementId=r})},setDraggedElementType:r=>{e(o=>{o.draggedElementType=r})},hasWizard:()=>t().schema.elements.some(r=>r.type==="pages"),addWizardStep:(r,o)=>{e(n=>{var a;const s={...n.schema};s.elements=n.schema.elements.map(i=>{var c,d;if(i.id===r&&i.type==="pages"){const p=((c=i.config)==null?void 0:c.steps)||[];return{...i,config:{...i.config,steps:[...p,o],activeStepId:((d=i.config)==null?void 0:d.activeStepId)||o.id}}}return i}),s.metadata={...s.metadata,updatedAt:new Date().toISOString(),createdAt:((a=s.metadata)==null?void 0:a.createdAt)||new Date().toISOString()},or(n,s)})},updateWizardStep:(r,o,n)=>{e(s=>{var i;const a={...s.schema};a.elements=s.schema.elements.map(c=>{var d;if(c.id===r&&c.type==="pages"){const p=(((d=c.config)==null?void 0:d.steps)||[]).map(u=>u.id===o?{...u,...n}:u);return{...c,config:{...c.config,steps:p}}}return c}),a.metadata={...a.metadata,updatedAt:new Date().toISOString(),createdAt:((i=a.metadata)==null?void 0:i.createdAt)||new Date().toISOString()},or(s,a)})},removeWizardStep:(r,o)=>{e(n=>{var u,f;const s=n.schema.elements.find(h=>h.id===r);if(!s||s.type!=="pages")return;const a=((u=s.config)==null?void 0:u.steps)||[];if(a.length<=1){console.warn("Wizard must have at least one step");return}const i=`${r}:${o}`,c=new Set,d=h=>{n.schema.elements.forEach(g=>{var y;(g.parentId===h||(y=g.parentId)!=null&&y.startsWith(`${h}:`))&&(c.add(g.id),d(g.id))})};d(i);const p={...n.schema};p.elements=n.schema.elements.map(h=>{var g,y,b;if(h.id===r){const v=a.filter(x=>x.id!==o),N=((g=h.config)==null?void 0:g.activeStepId)===o?(y=v[0])==null?void 0:y.id:(b=h.config)==null?void 0:b.activeStepId;return{...h,config:{...h.config,steps:v,activeStepId:N},children:(h.children||[]).filter(x=>!c.has(x))}}return h}),p.elements=p.elements.filter(h=>!c.has(h.id)),p.metadata={...p.metadata,updatedAt:new Date().toISOString(),createdAt:((f=p.metadata)==null?void 0:f.createdAt)||new Date().toISOString()},or(n,p)})},setActiveWizardStep:(r,o)=>{e(n=>{const s={...n.schema};s.elements=n.schema.elements.map(a=>a.id===r&&a.type==="pages"?{...a,config:{...a.config,activeStepId:o}}:a),n.schema=s})},getContainerChildren:(r,o)=>{const n=t(),s=o?`${r}:${o}`:r;return n.schema.elements.filter(a=>a.parentId===s).sort((a,i)=>a.order-i.order)},validateSchema:()=>{const r=t(),o=[],n=r.schema.elements.map(a=>a.attributes.name),s=n.filter((a,i)=>n.indexOf(a)!==i);return s.length>0&&s.forEach(a=>{o.push({type:"error",message:`Duplicate field name: "${a}"`})}),r.schema.elements.forEach(a=>{(!a.attributes.name||a.attributes.name.trim()==="")&&o.push({type:"error",elementId:a.id,message:`Element "${a.properties.label||a.type}" has no field name`})}),r.schema.elements.forEach(a=>{var i;(i=a.validation)!=null&&i.required&&(!a.properties.label||a.properties.label.trim()==="")&&o.push({type:"warning",elementId:a.id,message:"Required element has no label"})}),{valid:o.filter(a=>a.type==="error").length===0,errors:o}}})));function Tw(){const e=t=>{const o=navigator.platform.toUpperCase().indexOf("MAC")>=0?t.metaKey:t.ctrlKey;o&&t.key==="z"&&!t.shiftKey?(t.preventDefault(),te.getState().undo()):(o&&t.shiftKey&&t.key==="z"||o&&t.key==="y")&&(t.preventDefault(),te.getState().redo())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)}const Pw=()=>{const e=te(r=>r.selectedElementId);return te(r=>r.schema.elements).find(r=>r.id===e)};class Iw{constructor(){ni(this,"elements",new Map);ni(this,"customGroups",new Map)}register(t,r={}){const{override:o=!1,group:n}=r;if(this.elements.has(t.type)&&!o){console.warn(`Element type "${t.type}" is already registered. Use { override: true } to replace it.`);return}if(!t.type)throw new Error("Element definition must have a type");if(!t.renderOnCanvas)throw new Error(`Element "${t.type}" must have a renderOnCanvas function`);if(!t.render)throw new Error(`Element "${t.type}" must have a render function`);if(!t.getDefaultValues)throw new Error(`Element "${t.type}" must have a getDefaultValues function`);if(this.elements.set(t.type,t),n){const s=this.customGroups.get(n);s?s.elements.push(t):this.customGroups.set(n,{id:n,label:n,elements:[t]})}}get(t){return this.elements.get(t)}has(t){return this.elements.has(t)}getAll(){return Array.from(this.elements.values())}getByCategory(t){return this.getAll().filter(r=>r.category===t)}getByStructure(t){return this.getAll().filter(r=>r.structure===t)}getByTypeCategory(t){return this.getAll().filter(r=>r.typeCategory===t)}getGroups(){const t=[],r={textInput:{label:"Text Input",order:1},numeric:{label:"Numeric",order:2},contact:{label:"Contact",order:3},security:{label:"Security",order:4},selection:{label:"Selection",order:5},matrix:{label:"Matrix",order:6},dateTime:{label:"Date & Time",order:7},fileUpload:{label:"File Upload",order:8},display:{label:"Display",order:9},product:{label:"Porduct",order:10},payment:{label:"Payment",order:11},orther:{label:"Other",order:12}},o={heading:{label:"Headings",order:10},layout:{label:"Layout",order:11},repeatable:{label:"Repeatable",order:12},special:{label:"Special",order:13}};for(const[n,s]of Object.entries(r)){const a=this.getAll().filter(i=>i.category==="field"&&i.subCategory===n);a.length>0&&t.push({id:n,label:s.label,elements:a,order:s.order})}for(const[n,s]of Object.entries(o)){const a=this.getAll().filter(i=>i.category==="page"&&i.subCategory===n);a.length>0&&t.push({id:n,label:s.label,elements:a,order:s.order})}for(const n of this.customGroups.values())t.push({...n,order:n.order??100});return t.sort((n,s)=>(n.order??0)-(s.order??0))}unregister(t){if(!this.elements.has(t))return!1;this.elements.delete(t);for(const r of this.customGroups.values()){const o=r.elements.findIndex(n=>n.type===t);o!==-1&&r.elements.splice(o,1)}return!0}clear(){this.elements.clear(),this.customGroups.clear()}getIcon(t){const r=this.get(t);return r==null?void 0:r.icon}getLabel(t){const r=this.get(t);return r==null?void 0:r.label}isContainer(t){const r=this.get(t);return(r==null?void 0:r.isContainer)??!1}supportsValidation(t){const r=this.get(t);return(r==null?void 0:r.supportsValidation)??!0}supportsOptions(t){const r=this.get(t);return(r==null?void 0:r.supportsOptions)??!1}getDefaultValues(t){const r=this.get(t);return r?r.getDefaultValues():{properties:{},layout:{},validation:{},config:{}}}}const ut=new Iw;function Ow(e,t){ut.register(e,t)}function Mw(e,t){for(const r of e)ut.register(r,t)}function Lw(e){return ut.unregister(e)}function Fw(e){return ut.get(e)}function Vw(e){return ut.has(e)}function Yu(e){var t,r,o="";if(typeof e=="string"||typeof e=="number")o+=e;else if(typeof e=="object")if(Array.isArray(e)){var n=e.length;for(t=0;t<n;t++)e[t]&&(r=Yu(e[t]))&&(o&&(o+=" "),o+=r)}else for(r in e)e[r]&&(o&&(o+=" "),o+=r);return o}function Qu(){for(var e,t,r=0,o="",n=arguments.length;r<n;r++)(e=arguments[r])&&(t=Yu(e))&&(o&&(o+=" "),o+=t);return o}const Gw=(e,t)=>{const r=new Array(e.length+t.length);for(let o=0;o<e.length;o++)r[o]=e[o];for(let o=0;o<t.length;o++)r[e.length+o]=t[o];return r},zw=(e,t)=>({classGroupId:e,validator:t}),Ku=(e=new Map,t=null,r)=>({nextPart:e,validators:t,classGroupId:r}),Rs="-",Ru=[],Bw="arbitrary..",Uw=e=>{const t=Hw(e),{conflictingClassGroups:r,conflictingClassGroupModifiers:o}=e;return{getClassGroupId:a=>{if(a.startsWith("[")&&a.endsWith("]"))return Ww(a);const i=a.split(Rs),c=i[0]===""&&i.length>1?1:0;return Xu(i,c,t)},getConflictingClassGroupIds:(a,i)=>{if(i){const c=o[a],d=r[a];return c?d?Gw(d,c):c:d||Ru}return r[a]||Ru}}},Xu=(e,t,r)=>{if(e.length-t===0)return r.classGroupId;const n=e[t],s=r.nextPart.get(n);if(s){const d=Xu(e,t+1,s);if(d)return d}const a=r.validators;if(a===null)return;const i=t===0?e.join(Rs):e.slice(t).join(Rs),c=a.length;for(let d=0;d<c;d++){const p=a[d];if(p.validator(i))return p.classGroupId}},Ww=e=>e.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const t=e.slice(1,-1),r=t.indexOf(":"),o=t.slice(0,r);return o?Bw+o:void 0})(),Hw=e=>{const{theme:t,classGroups:r}=e;return jw(r,t)},jw=(e,t)=>{const r=Ku();for(const o in e){const n=e[o];yi(n,r,o,t)}return r},yi=(e,t,r,o)=>{const n=e.length;for(let s=0;s<n;s++){const a=e[s];qw(a,t,r,o)}},qw=(e,t,r,o)=>{if(typeof e=="string"){Yw(e,t,r);return}if(typeof e=="function"){Qw(e,t,r,o);return}Kw(e,t,r,o)},Yw=(e,t,r)=>{const o=e===""?t:Ju(t,e);o.classGroupId=r},Qw=(e,t,r,o)=>{if(Rw(e)){yi(e(o),t,r,o);return}t.validators===null&&(t.validators=[]),t.validators.push(zw(r,e))},Kw=(e,t,r,o)=>{const n=Object.entries(e),s=n.length;for(let a=0;a<s;a++){const[i,c]=n[a];yi(c,Ju(t,i),r,o)}},Ju=(e,t)=>{let r=e;const o=t.split(Rs),n=o.length;for(let s=0;s<n;s++){const a=o[s];let i=r.nextPart.get(a);i||(i=Ku(),r.nextPart.set(a,i)),r=i}return r},Rw=e=>"isThemeGetter"in e&&e.isThemeGetter===!0,Xw=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,r=Object.create(null),o=Object.create(null);const n=(s,a)=>{r[s]=a,t++,t>e&&(t=0,o=r,r=Object.create(null))};return{get(s){let a=r[s];if(a!==void 0)return a;if((a=o[s])!==void 0)return n(s,a),a},set(s,a){s in r?r[s]=a:n(s,a)}}},vi="!",Zu=":",Jw=[],ef=(e,t,r,o,n)=>({modifiers:e,hasImportantModifier:t,baseClassName:r,maybePostfixModifierPosition:o,isExternal:n}),Zw=e=>{const{prefix:t,experimentalParseClassName:r}=e;let o=n=>{const s=[];let a=0,i=0,c=0,d;const p=n.length;for(let y=0;y<p;y++){const b=n[y];if(a===0&&i===0){if(b===Zu){s.push(n.slice(c,y)),c=y+1;continue}if(b==="/"){d=y;continue}}b==="["?a++:b==="]"?a--:b==="("?i++:b===")"&&i--}const u=s.length===0?n:n.slice(c);let f=u,h=!1;u.endsWith(vi)?(f=u.slice(0,-1),h=!0):u.startsWith(vi)&&(f=u.slice(1),h=!0);const g=d&&d>c?d-c:void 0;return ef(s,h,f,g)};if(t){const n=t+Zu,s=o;o=a=>a.startsWith(n)?s(a.slice(n.length)):ef(Jw,!1,a,void 0,!0)}if(r){const n=o;o=s=>r({className:s,parseClassName:n})}return o},e0=e=>{const t=new Map;return e.orderSensitiveModifiers.forEach((r,o)=>{t.set(r,1e6+o)}),r=>{const o=[];let n=[];for(let s=0;s<r.length;s++){const a=r[s],i=a[0]==="[",c=t.has(a);i||c?(n.length>0&&(n.sort(),o.push(...n),n=[]),o.push(a)):n.push(a)}return n.length>0&&(n.sort(),o.push(...n)),o}},t0=e=>({cache:Xw(e.cacheSize),parseClassName:Zw(e),sortModifiers:e0(e),postfixLookupClassGroupIds:r0(e),...Uw(e)}),r0=e=>{const t=Object.create(null),r=e.postfixLookupClassGroups;if(r)for(let o=0;o<r.length;o++)t[r[o]]=!0;return t},o0=/\s+/,n0=(e,t)=>{const{parseClassName:r,getClassGroupId:o,getConflictingClassGroupIds:n,sortModifiers:s,postfixLookupClassGroupIds:a}=t,i=[],c=e.trim().split(o0);let d="";for(let p=c.length-1;p>=0;p-=1){const u=c[p],{isExternal:f,modifiers:h,hasImportantModifier:g,baseClassName:y,maybePostfixModifierPosition:b}=r(u);if(f){d=u+(d.length>0?" "+d:d);continue}let v=!!b,N;if(v){const k=y.substring(0,b);N=o(k);const _=N&&a[N]?o(y):void 0;_&&_!==N&&(N=_,v=!1)}else N=o(y);if(!N){if(!v){d=u+(d.length>0?" "+d:d);continue}if(N=o(y),!N){d=u+(d.length>0?" "+d:d);continue}v=!1}const x=h.length===0?"":h.length===1?h[0]:s(h).join(":"),w=g?x+vi:x,C=w+N;if(i.indexOf(C)>-1)continue;i.push(C);const E=n(N,v);for(let k=0;k<E.length;++k){const _=E[k];i.push(w+_)}d=u+(d.length>0?" "+d:d)}return d},s0=(...e)=>{let t=0,r,o,n="";for(;t<e.length;)(r=e[t++])&&(o=tf(r))&&(n&&(n+=" "),n+=o);return n},tf=e=>{if(typeof e=="string")return e;let t,r="";for(let o=0;o<e.length;o++)e[o]&&(t=tf(e[o]))&&(r&&(r+=" "),r+=t);return r},rf=(e,...t)=>{let r,o,n,s;const a=c=>{const d=t.reduce((p,u)=>u(p),e());return r=t0(d),o=r.cache.get,n=r.cache.set,s=i,i(c)},i=c=>{const d=o(c);if(d)return d;const p=n0(c,r);return n(c,p),p};return s=a,(...c)=>s(s0(...c))},a0=[],gt=e=>{const t=r=>r[e]||a0;return t.isThemeGetter=!0,t},of=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,nf=/^\((?:(\w[\w-]*):)?(.+)\)$/i,l0=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,i0=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,c0=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,d0=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,u0=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,f0=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,uo=e=>l0.test(e),De=e=>!!e&&!Number.isNaN(Number(e)),Ar=e=>!!e&&Number.isInteger(Number(e)),xi=e=>e.endsWith("%")&&De(e.slice(0,-1)),qr=e=>i0.test(e),sf=()=>!0,p0=e=>c0.test(e)&&!d0.test(e),wi=()=>!1,h0=e=>u0.test(e),m0=e=>f0.test(e),g0=e=>!se(e)&&!le(e),b0=e=>e.startsWith("@container")&&(e[10]==="/"&&e[11]!==void 0||e[11]==="s"&&e[16]!==void 0&&e.startsWith("-size/",10)||e[11]==="n"&&e[18]!==void 0&&e.startsWith("-normal/",10)),y0=e=>fo(e,ff,wi),se=e=>of.test(e),Do=e=>fo(e,pf,p0),af=e=>fo(e,_0,De),v0=e=>fo(e,mf,sf),x0=e=>fo(e,hf,wi),lf=e=>fo(e,df,wi),w0=e=>fo(e,uf,m0),Xs=e=>fo(e,gf,h0),le=e=>nf.test(e),Ln=e=>$o(e,pf),S0=e=>$o(e,hf),cf=e=>$o(e,df),N0=e=>$o(e,ff),C0=e=>$o(e,uf),Js=e=>$o(e,gf,!0),E0=e=>$o(e,mf,!0),fo=(e,t,r)=>{const o=of.exec(e);return o?o[1]?t(o[1]):r(o[2]):!1},$o=(e,t,r=!1)=>{const o=nf.exec(e);return o?o[1]?t(o[1]):r:!1},df=e=>e==="position"||e==="percentage",uf=e=>e==="image"||e==="url",ff=e=>e==="length"||e==="size"||e==="bg-size",pf=e=>e==="length",_0=e=>e==="number",hf=e=>e==="family-name",mf=e=>e==="number"||e==="weight",gf=e=>e==="shadow",bf=()=>{const e=gt("color"),t=gt("font"),r=gt("text"),o=gt("font-weight"),n=gt("tracking"),s=gt("leading"),a=gt("breakpoint"),i=gt("container"),c=gt("spacing"),d=gt("radius"),p=gt("shadow"),u=gt("inset-shadow"),f=gt("text-shadow"),h=gt("drop-shadow"),g=gt("blur"),y=gt("perspective"),b=gt("aspect"),v=gt("ease"),N=gt("animate"),x=()=>["auto","avoid","all","avoid-page","page","left","right","column"],w=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],C=()=>[...w(),le,se],E=()=>["auto","hidden","clip","visible","scroll"],k=()=>["auto","contain","none"],_=()=>[le,se,c],D=()=>[uo,"full","auto",..._()],A=()=>[Ar,"none","subgrid",le,se],I=()=>["auto",{span:["full",Ar,le,se]},Ar,le,se],T=()=>[Ar,"auto",le,se],L=()=>["auto","min","max","fr",le,se],F=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],B=()=>["start","end","center","stretch","center-safe","end-safe"],G=()=>["auto",..._()],z=()=>[uo,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",..._()],H=()=>[uo,"screen","full","dvw","lvw","svw","min","max","fit",..._()],V=()=>[uo,"screen","full","lh","dvh","lvh","svh","min","max","fit",..._()],W=()=>[e,le,se],pe=()=>[...w(),cf,lf,{position:[le,se]}],U=()=>["no-repeat",{repeat:["","x","y","space","round"]}],Q=()=>["auto","cover","contain",N0,y0,{size:[le,se]}],Ce=()=>[xi,Ln,Do],oe=()=>["","none","full",d,le,se],ye=()=>["",De,Ln,Do],R=()=>["solid","dashed","dotted","double"],ce=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],re=()=>[De,xi,cf,lf],Ae=()=>["","none",g,le,se],we=()=>["none",De,le,se],ue=()=>["none",De,le,se],J=()=>[De,le,se],ne=()=>[uo,"full",..._()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[qr],breakpoint:[qr],color:[sf],container:[qr],"drop-shadow":[qr],ease:["in","out","in-out"],font:[g0],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[qr],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[qr],shadow:[qr],spacing:["px",De],text:[qr],"text-shadow":[qr],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",uo,se,le,b]}],container:["container"],"container-type":[{"@container":["","normal","size",le,se]}],"container-named":[b0],columns:[{columns:[De,se,le,i]}],"break-after":[{"break-after":x()}],"break-before":[{"break-before":x()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:C()}],overflow:[{overflow:E()}],"overflow-x":[{"overflow-x":E()}],"overflow-y":[{"overflow-y":E()}],overscroll:[{overscroll:k()}],"overscroll-x":[{"overscroll-x":k()}],"overscroll-y":[{"overscroll-y":k()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:D()}],"inset-x":[{"inset-x":D()}],"inset-y":[{"inset-y":D()}],start:[{"inset-s":D(),start:D()}],end:[{"inset-e":D(),end:D()}],"inset-bs":[{"inset-bs":D()}],"inset-be":[{"inset-be":D()}],top:[{top:D()}],right:[{right:D()}],bottom:[{bottom:D()}],left:[{left:D()}],visibility:["visible","invisible","collapse"],z:[{z:[Ar,"auto",le,se]}],basis:[{basis:[uo,"full","auto",i,..._()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[De,uo,"auto","initial","none",se]}],grow:[{grow:["",De,le,se]}],shrink:[{shrink:["",De,le,se]}],order:[{order:[Ar,"first","last","none",le,se]}],"grid-cols":[{"grid-cols":A()}],"col-start-end":[{col:I()}],"col-start":[{"col-start":T()}],"col-end":[{"col-end":T()}],"grid-rows":[{"grid-rows":A()}],"row-start-end":[{row:I()}],"row-start":[{"row-start":T()}],"row-end":[{"row-end":T()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":L()}],"auto-rows":[{"auto-rows":L()}],gap:[{gap:_()}],"gap-x":[{"gap-x":_()}],"gap-y":[{"gap-y":_()}],"justify-content":[{justify:[...F(),"normal"]}],"justify-items":[{"justify-items":[...B(),"normal"]}],"justify-self":[{"justify-self":["auto",...B()]}],"align-content":[{content:["normal",...F()]}],"align-items":[{items:[...B(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...B(),{baseline:["","last"]}]}],"place-content":[{"place-content":F()}],"place-items":[{"place-items":[...B(),"baseline"]}],"place-self":[{"place-self":["auto",...B()]}],p:[{p:_()}],px:[{px:_()}],py:[{py:_()}],ps:[{ps:_()}],pe:[{pe:_()}],pbs:[{pbs:_()}],pbe:[{pbe:_()}],pt:[{pt:_()}],pr:[{pr:_()}],pb:[{pb:_()}],pl:[{pl:_()}],m:[{m:G()}],mx:[{mx:G()}],my:[{my:G()}],ms:[{ms:G()}],me:[{me:G()}],mbs:[{mbs:G()}],mbe:[{mbe:G()}],mt:[{mt:G()}],mr:[{mr:G()}],mb:[{mb:G()}],ml:[{ml:G()}],"space-x":[{"space-x":_()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":_()}],"space-y-reverse":["space-y-reverse"],size:[{size:z()}],"inline-size":[{inline:["auto",...H()]}],"min-inline-size":[{"min-inline":["auto",...H()]}],"max-inline-size":[{"max-inline":["none",...H()]}],"block-size":[{block:["auto",...V()]}],"min-block-size":[{"min-block":["auto",...V()]}],"max-block-size":[{"max-block":["none",...V()]}],w:[{w:[i,"screen",...z()]}],"min-w":[{"min-w":[i,"screen","none",...z()]}],"max-w":[{"max-w":[i,"screen","none","prose",{screen:[a]},...z()]}],h:[{h:["screen","lh",...z()]}],"min-h":[{"min-h":["screen","lh","none",...z()]}],"max-h":[{"max-h":["screen","lh",...z()]}],"font-size":[{text:["base",r,Ln,Do]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[o,E0,v0]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",xi,se]}],"font-family":[{font:[S0,x0,t]}],"font-features":[{"font-features":[se]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[n,le,se]}],"line-clamp":[{"line-clamp":[De,"none",le,af]}],leading:[{leading:[s,..._()]}],"list-image":[{"list-image":["none",le,se]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",le,se]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:W()}],"text-color":[{text:W()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...R(),"wavy"]}],"text-decoration-thickness":[{decoration:[De,"from-font","auto",le,Do]}],"text-decoration-color":[{decoration:W()}],"underline-offset":[{"underline-offset":[De,"auto",le,se]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:_()}],"tab-size":[{tab:[Ar,le,se]}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",le,se]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",le,se]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:pe()}],"bg-repeat":[{bg:U()}],"bg-size":[{bg:Q()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},Ar,le,se],radial:["",le,se],conic:[Ar,le,se]},C0,w0]}],"bg-color":[{bg:W()}],"gradient-from-pos":[{from:Ce()}],"gradient-via-pos":[{via:Ce()}],"gradient-to-pos":[{to:Ce()}],"gradient-from":[{from:W()}],"gradient-via":[{via:W()}],"gradient-to":[{to:W()}],rounded:[{rounded:oe()}],"rounded-s":[{"rounded-s":oe()}],"rounded-e":[{"rounded-e":oe()}],"rounded-t":[{"rounded-t":oe()}],"rounded-r":[{"rounded-r":oe()}],"rounded-b":[{"rounded-b":oe()}],"rounded-l":[{"rounded-l":oe()}],"rounded-ss":[{"rounded-ss":oe()}],"rounded-se":[{"rounded-se":oe()}],"rounded-ee":[{"rounded-ee":oe()}],"rounded-es":[{"rounded-es":oe()}],"rounded-tl":[{"rounded-tl":oe()}],"rounded-tr":[{"rounded-tr":oe()}],"rounded-br":[{"rounded-br":oe()}],"rounded-bl":[{"rounded-bl":oe()}],"border-w":[{border:ye()}],"border-w-x":[{"border-x":ye()}],"border-w-y":[{"border-y":ye()}],"border-w-s":[{"border-s":ye()}],"border-w-e":[{"border-e":ye()}],"border-w-bs":[{"border-bs":ye()}],"border-w-be":[{"border-be":ye()}],"border-w-t":[{"border-t":ye()}],"border-w-r":[{"border-r":ye()}],"border-w-b":[{"border-b":ye()}],"border-w-l":[{"border-l":ye()}],"divide-x":[{"divide-x":ye()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":ye()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...R(),"hidden","none"]}],"divide-style":[{divide:[...R(),"hidden","none"]}],"border-color":[{border:W()}],"border-color-x":[{"border-x":W()}],"border-color-y":[{"border-y":W()}],"border-color-s":[{"border-s":W()}],"border-color-e":[{"border-e":W()}],"border-color-bs":[{"border-bs":W()}],"border-color-be":[{"border-be":W()}],"border-color-t":[{"border-t":W()}],"border-color-r":[{"border-r":W()}],"border-color-b":[{"border-b":W()}],"border-color-l":[{"border-l":W()}],"divide-color":[{divide:W()}],"outline-style":[{outline:[...R(),"none","hidden"]}],"outline-offset":[{"outline-offset":[De,le,se]}],"outline-w":[{outline:["",De,Ln,Do]}],"outline-color":[{outline:W()}],shadow:[{shadow:["","none",p,Js,Xs]}],"shadow-color":[{shadow:W()}],"inset-shadow":[{"inset-shadow":["none",u,Js,Xs]}],"inset-shadow-color":[{"inset-shadow":W()}],"ring-w":[{ring:ye()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:W()}],"ring-offset-w":[{"ring-offset":[De,Do]}],"ring-offset-color":[{"ring-offset":W()}],"inset-ring-w":[{"inset-ring":ye()}],"inset-ring-color":[{"inset-ring":W()}],"text-shadow":[{"text-shadow":["none",f,Js,Xs]}],"text-shadow-color":[{"text-shadow":W()}],opacity:[{opacity:[De,le,se]}],"mix-blend":[{"mix-blend":[...ce(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":ce()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[De]}],"mask-image-linear-from-pos":[{"mask-linear-from":re()}],"mask-image-linear-to-pos":[{"mask-linear-to":re()}],"mask-image-linear-from-color":[{"mask-linear-from":W()}],"mask-image-linear-to-color":[{"mask-linear-to":W()}],"mask-image-t-from-pos":[{"mask-t-from":re()}],"mask-image-t-to-pos":[{"mask-t-to":re()}],"mask-image-t-from-color":[{"mask-t-from":W()}],"mask-image-t-to-color":[{"mask-t-to":W()}],"mask-image-r-from-pos":[{"mask-r-from":re()}],"mask-image-r-to-pos":[{"mask-r-to":re()}],"mask-image-r-from-color":[{"mask-r-from":W()}],"mask-image-r-to-color":[{"mask-r-to":W()}],"mask-image-b-from-pos":[{"mask-b-from":re()}],"mask-image-b-to-pos":[{"mask-b-to":re()}],"mask-image-b-from-color":[{"mask-b-from":W()}],"mask-image-b-to-color":[{"mask-b-to":W()}],"mask-image-l-from-pos":[{"mask-l-from":re()}],"mask-image-l-to-pos":[{"mask-l-to":re()}],"mask-image-l-from-color":[{"mask-l-from":W()}],"mask-image-l-to-color":[{"mask-l-to":W()}],"mask-image-x-from-pos":[{"mask-x-from":re()}],"mask-image-x-to-pos":[{"mask-x-to":re()}],"mask-image-x-from-color":[{"mask-x-from":W()}],"mask-image-x-to-color":[{"mask-x-to":W()}],"mask-image-y-from-pos":[{"mask-y-from":re()}],"mask-image-y-to-pos":[{"mask-y-to":re()}],"mask-image-y-from-color":[{"mask-y-from":W()}],"mask-image-y-to-color":[{"mask-y-to":W()}],"mask-image-radial":[{"mask-radial":[le,se]}],"mask-image-radial-from-pos":[{"mask-radial-from":re()}],"mask-image-radial-to-pos":[{"mask-radial-to":re()}],"mask-image-radial-from-color":[{"mask-radial-from":W()}],"mask-image-radial-to-color":[{"mask-radial-to":W()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":w()}],"mask-image-conic-pos":[{"mask-conic":[De]}],"mask-image-conic-from-pos":[{"mask-conic-from":re()}],"mask-image-conic-to-pos":[{"mask-conic-to":re()}],"mask-image-conic-from-color":[{"mask-conic-from":W()}],"mask-image-conic-to-color":[{"mask-conic-to":W()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:pe()}],"mask-repeat":[{mask:U()}],"mask-size":[{mask:Q()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",le,se]}],filter:[{filter:["","none",le,se]}],blur:[{blur:Ae()}],brightness:[{brightness:[De,le,se]}],contrast:[{contrast:[De,le,se]}],"drop-shadow":[{"drop-shadow":["","none",h,Js,Xs]}],"drop-shadow-color":[{"drop-shadow":W()}],grayscale:[{grayscale:["",De,le,se]}],"hue-rotate":[{"hue-rotate":[De,le,se]}],invert:[{invert:["",De,le,se]}],saturate:[{saturate:[De,le,se]}],sepia:[{sepia:["",De,le,se]}],"backdrop-filter":[{"backdrop-filter":["","none",le,se]}],"backdrop-blur":[{"backdrop-blur":Ae()}],"backdrop-brightness":[{"backdrop-brightness":[De,le,se]}],"backdrop-contrast":[{"backdrop-contrast":[De,le,se]}],"backdrop-grayscale":[{"backdrop-grayscale":["",De,le,se]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[De,le,se]}],"backdrop-invert":[{"backdrop-invert":["",De,le,se]}],"backdrop-opacity":[{"backdrop-opacity":[De,le,se]}],"backdrop-saturate":[{"backdrop-saturate":[De,le,se]}],"backdrop-sepia":[{"backdrop-sepia":["",De,le,se]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":_()}],"border-spacing-x":[{"border-spacing-x":_()}],"border-spacing-y":[{"border-spacing-y":_()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",le,se]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[De,"initial",le,se]}],ease:[{ease:["linear","initial",v,le,se]}],delay:[{delay:[De,le,se]}],animate:[{animate:["none",N,le,se]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[y,le,se]}],"perspective-origin":[{"perspective-origin":C()}],rotate:[{rotate:we()}],"rotate-x":[{"rotate-x":we()}],"rotate-y":[{"rotate-y":we()}],"rotate-z":[{"rotate-z":we()}],scale:[{scale:ue()}],"scale-x":[{"scale-x":ue()}],"scale-y":[{"scale-y":ue()}],"scale-z":[{"scale-z":ue()}],"scale-3d":["scale-3d"],skew:[{skew:J()}],"skew-x":[{"skew-x":J()}],"skew-y":[{"skew-y":J()}],transform:[{transform:[le,se,"","none","gpu","cpu"]}],"transform-origin":[{origin:C()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:ne()}],"translate-x":[{"translate-x":ne()}],"translate-y":[{"translate-y":ne()}],"translate-z":[{"translate-z":ne()}],"translate-none":["translate-none"],zoom:[{zoom:[Ar,le,se]}],accent:[{accent:W()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:W()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",le,se]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scrollbar-thumb-color":[{"scrollbar-thumb":W()}],"scrollbar-track-color":[{"scrollbar-track":W()}],"scrollbar-gutter":[{"scrollbar-gutter":["auto","stable","both"]}],"scrollbar-w":[{scrollbar:["auto","thin","none"]}],"scroll-m":[{"scroll-m":_()}],"scroll-mx":[{"scroll-mx":_()}],"scroll-my":[{"scroll-my":_()}],"scroll-ms":[{"scroll-ms":_()}],"scroll-me":[{"scroll-me":_()}],"scroll-mbs":[{"scroll-mbs":_()}],"scroll-mbe":[{"scroll-mbe":_()}],"scroll-mt":[{"scroll-mt":_()}],"scroll-mr":[{"scroll-mr":_()}],"scroll-mb":[{"scroll-mb":_()}],"scroll-ml":[{"scroll-ml":_()}],"scroll-p":[{"scroll-p":_()}],"scroll-px":[{"scroll-px":_()}],"scroll-py":[{"scroll-py":_()}],"scroll-ps":[{"scroll-ps":_()}],"scroll-pe":[{"scroll-pe":_()}],"scroll-pbs":[{"scroll-pbs":_()}],"scroll-pbe":[{"scroll-pbe":_()}],"scroll-pt":[{"scroll-pt":_()}],"scroll-pr":[{"scroll-pr":_()}],"scroll-pb":[{"scroll-pb":_()}],"scroll-pl":[{"scroll-pl":_()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",le,se]}],fill:[{fill:["none",...W()]}],"stroke-w":[{stroke:[De,Ln,Do,af]}],stroke:[{stroke:["none",...W()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{"container-named":["container-type"],overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},postfixLookupClassGroups:["container-type"],orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},k0=(e,{cacheSize:t,prefix:r,experimentalParseClassName:o,extend:n={},override:s={}})=>(on(e,"cacheSize",t),on(e,"prefix",r),on(e,"experimentalParseClassName",o),Zs(e.theme,s.theme),Zs(e.classGroups,s.classGroups),Zs(e.conflictingClassGroups,s.conflictingClassGroups),Zs(e.conflictingClassGroupModifiers,s.conflictingClassGroupModifiers),on(e,"postfixLookupClassGroups",s.postfixLookupClassGroups),on(e,"orderSensitiveModifiers",s.orderSensitiveModifiers),ea(e.theme,n.theme),ea(e.classGroups,n.classGroups),ea(e.conflictingClassGroups,n.conflictingClassGroups),ea(e.conflictingClassGroupModifiers,n.conflictingClassGroupModifiers),Si(e,n,"postfixLookupClassGroups"),Si(e,n,"orderSensitiveModifiers"),e),on=(e,t,r)=>{r!==void 0&&(e[t]=r)},Zs=(e,t)=>{if(t)for(const r in t)on(e,r,t[r])},ea=(e,t)=>{if(t)for(const r in t)Si(e,t,r)},Si=(e,t,r)=>{const o=t[r];o!==void 0&&(e[r]=e[r]?e[r].concat(o):o)},A0=((e,...t)=>typeof e=="function"?rf(bf,e,...t):rf(()=>k0(bf(),e),...t))({prefix:""});function m(...e){const t=Qu(e);return A0(t)}const ta=({label:e,required:t,htmlFor:r,className:o=""})=>e?l.jsxs("label",{htmlFor:r,className:m("block text-sm font-medium text-gray-700",o),children:[e,t&&l.jsx("span",{className:m("text-red-500 ml-1"),children:"*"})]}):null,ra=({description:e,className:t=""})=>e?l.jsx("p",{className:m("text-xs text-gray-500",t),children:e}):null,Fn=({errors:e,className:t=""})=>!e||e.length===0?null:l.jsx("div",{className:m("space-y-1",t),children:e.map((r,o)=>l.jsx("p",{className:m("text-xs text-red-500"),children:r},o))}),D0=({label:e,description:t,required:r,errors:o,children:n})=>l.jsxs("div",{className:m("space-y-1.5"),children:[l.jsx(ta,{label:e,required:r}),l.jsx(ra,{description:t}),n,l.jsx(Fn,{errors:o})]}),de=({label:e,description:t,required:r,errors:o,labelPosition:n="top",className:s="",children:a})=>n==="hidden"?l.jsxs("div",{className:m("space-y-1.5",s),children:[a,l.jsx(Fn,{errors:o})]}):n==="left"?l.jsxs("div",{className:m("flex items-start gap-4",s),children:[l.jsxs("div",{className:m("w-1/3 pt-2"),children:[l.jsx(ta,{label:e,required:r}),l.jsx(ra,{description:t})]}),l.jsxs("div",{className:m("flex-1 space-y-1.5"),children:[a,l.jsx(Fn,{errors:o})]})]}):l.jsxs("div",{className:m("space-y-1.5",s),children:[l.jsx(ta,{label:e,required:r}),l.jsx(ra,{description:t}),a,l.jsx(Fn,{errors:o})]}),$0=({children:e,className:t=""})=>l.jsx("div",{className:m("pointer-events-none",t),children:e}),T0=({icon:e="📋",message:t,subMessage:r})=>l.jsxs("div",{className:m("border-2 border-dashed border-gray-300 rounded-lg p-6 text-center bg-gray-50"),children:[l.jsx("span",{className:m("text-4xl"),children:e}),l.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:t}),r&&l.jsx("p",{className:m("text-xs text-gray-400"),children:r})]}),To=({icon:e,children:t,iconPosition:r="left"})=>l.jsxs("div",{className:m("relative"),children:[l.jsx("span",{className:m("absolute top-1/2 -translate-y-1/2 text-gray-400",r==="left"?"left-3":"right-3"),children:e}),t]}),Ni=({prefix:e,suffix:t,children:r})=>l.jsxs("div",{className:m("flex"),children:[e&&l.jsx("span",{className:m("inline-flex items-center px-3 border border-r-0 border-gray-300 rounded-l-md bg-gray-100 text-gray-500 text-sm"),children:e}),l.jsx("div",{className:m("flex-1",!e&&"rounded-l-md",!t&&"rounded-r-md"),children:r}),t&&l.jsx("span",{className:m("inline-flex items-center px-3 border border-l-0 border-gray-300 rounded-r-md bg-gray-100 text-gray-500 text-sm"),children:t})]});function Ut(e={}){const{hasError:t=!1,disabled:r=!1,size:o="medium",hasLeftIcon:n=!1,hasRightIcon:s=!1,hasPrefix:a=!1,hasSuffix:i=!1}=e;return m("w-full","border","transition-colors","focus:outline-none","focus:ring-2","focus:ring-offset-0",{small:"px-2 py-1.5 text-sm",medium:"px-3 py-2 text-sm",large:"px-4 py-3 text-base"}[o],!a&&!i&&"rounded-md",a&&!i&&"rounded-r-md",!a&&i&&"rounded-l-md",n&&"pl-10",s&&"pr-10",r&&"bg-gray-50 text-gray-500 cursor-not-allowed border-gray-300",t&&!r&&"border-red-500 focus:ring-red-500 focus:border-red-500",!t&&!r&&"border-gray-300 focus:ring-blue-500 focus:border-blue-500")}function kt(e="medium"){return m("w-full",{small:"px-2 py-1.5 text-sm",medium:"px-3 py-2 text-sm",large:"px-4 py-3 text-base"}[e],"border","border-gray-300","rounded-md","bg-gray-50","text-gray-500")}function P0(e={}){const{variant:t="primary",size:r="medium",disabled:o=!1}=e,n={small:"px-4 py-1.5 text-sm",medium:"px-6 py-2.5 text-base",large:"px-8 py-3 text-lg"},s={primary:"bg-blue-600 text-white hover:bg-blue-700",secondary:"bg-gray-600 text-white hover:bg-gray-700",outline:"border-2 border-blue-600 text-blue-600 bg-transparent hover:bg-blue-50",ghost:"text-blue-600 hover:bg-blue-50"};return m("rounded-md","font-medium","transition-colors","focus:outline-none","focus:ring-2","focus:ring-offset-2",n[r],o&&"opacity-50 cursor-not-allowed",s[t])}function K(e){const{element:t,properties:r,layout:o,validation:n,config:s,mode:a,value:i,onChange:c,errors:d,readOnly:p,disabled:u}=e;return{label:r.label,description:r.description,placeholder:r.placeholder,prefix:r.prefix,suffix:r.suffix,required:(n==null?void 0:n.required)??!1,labelPosition:o.labelPosition??"top",isCanvas:a==="canvas",isDisabled:u||p||a==="canvas",value:i,onChange:c,errors:d,config:s,element:t}}const I0=[{type:"shortText",structure:"field",typeCategory:"Text",label:"Short Text",description:"Single line text input",icon:"📝",category:"field",subCategory:"textInput",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0,showPrefix:!0,showSuffix:!0},configSection:{title:"Text Input Settings",icon:"📝"},fields:[{key:"showCharacterCount",label:"Show Character Count",type:"checkbox",section:"config",description:"Display remaining character count"},{key:"autoComplete",label:"Autocomplete",type:"select",section:"config",description:"Browser autofill hint",options:[{value:"off",label:"Off"},{value:"on",label:"On"},{value:"name",label:"Full Name"},{value:"given-name",label:"First Name"},{value:"family-name",label:"Last Name"},{value:"email",label:"Email"},{value:"tel",label:"Phone"},{value:"organization",label:"Organization"},{value:"street-address",label:"Street Address"},{value:"address-level2",label:"City"},{value:"address-level1",label:"State / Province"},{value:"postal-code",label:"Postal / Zip Code"},{value:"country",label:"Country"},{value:"username",label:"Username"},{value:"organization-title",label:"Job Title"}]}]},getDefaultValues:()=>({properties:{label:"Short Text",placeholder:"Enter text..."},layout:{labelPosition:"top",size:"full"},validation:{maxLength:255}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s}=K(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,children:l.jsx("input",{type:"text",placeholder:o,disabled:!0,className:kt()})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,value:a,onChange:i,errors:c,isDisabled:d}=K(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,errors:c,children:l.jsx("input",{type:"text",placeholder:o,value:a??"",onChange:p=>i==null?void 0:i(p.target.value),disabled:d,className:Ut({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})})})}},{type:"longText",structure:"field",typeCategory:"Text",label:"Long Text",description:"Multi-line text area",icon:"📄",category:"field",subCategory:"textInput",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Text Area Settings",icon:"📄"},fields:[{key:"rows",label:"Visible Rows",type:"number",section:"config",min:1,max:20,placeholder:"3",description:"Number of visible text lines"},{key:"autoResize",label:"Auto-resize",type:"checkbox",section:"config",description:"Automatically adjust height to content"},{key:"showCharacterCount",label:"Show Character Count",type:"checkbox",section:"config",description:"Display remaining character count"}]},getDefaultValues:()=>({properties:{label:"Long Text",placeholder:"Enter text..."},layout:{labelPosition:"top",size:"full"},config:{rows:3,autoResize:!1},validation:{maxLength:5e3}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,config:a}=K(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,children:l.jsx("textarea",{placeholder:o,disabled:!0,rows:(a==null?void 0:a.rows)||3,className:`${kt()} resize-none`})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,value:a,onChange:i,errors:c,isDisabled:d,config:p}=K(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,errors:c,children:l.jsx("textarea",{placeholder:o,value:a??"",onChange:u=>i==null?void 0:i(u.target.value),disabled:d,rows:(p==null?void 0:p.rows)||3,className:`${Ut({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})} resize-none`})})}},{type:"multiLineInput",structure:"field",typeCategory:"Text",label:"Multi-Line Input",description:"Auto-expanding text area",icon:"📝",category:"field",subCategory:"textInput",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Auto-Resize Settings",icon:"📑"},fields:[{key:"minRows",label:"Min Rows",type:"number",section:"config",min:1,max:20,placeholder:"2",colSpan:1},{key:"maxRows",label:"Max Rows",type:"number",section:"config",min:1,max:50,placeholder:"10",colSpan:1},{key:"autoResize",label:"Auto-resize",type:"checkbox",section:"config",description:"Grow textarea to fit content"},{key:"showCharacterCount",label:"Show Character Count",type:"checkbox",section:"config",description:"Display remaining character count"}]},getDefaultValues:()=>({properties:{label:"Multi-Line Input",placeholder:"Enter text..."},layout:{labelPosition:"top",size:"full"},config:{minRows:2,maxRows:10,autoResize:!0},validation:{maxLength:5e3}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,config:a}=K(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,children:l.jsx("textarea",{placeholder:o,disabled:!0,rows:(a==null?void 0:a.minRows)||2,className:`${kt()} resize-none`})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,value:a,onChange:i,errors:c,isDisabled:d,config:p}=K(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,errors:c,children:l.jsx("textarea",{placeholder:o,value:a??"",onChange:u=>i==null?void 0:i(u.target.value),disabled:d,rows:(p==null?void 0:p.minRows)||2,className:`${Ut({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})} resize-none`})})}},{type:"textEditor",structure:"field",typeCategory:"Text",label:"Rich Text Editor",description:"WYSIWYG text editor",icon:"✏️",category:"field",subCategory:"textInput",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!1},configSection:{title:"Editor Settings",icon:"✏️"},fields:[{key:"toolbarPreset",label:"Toolbar",type:"select",section:"config",description:"Choose which formatting options appear",options:[{value:"basic",label:"Basic (Bold, Italic, Underline)"},{value:"standard",label:"Standard (+ Links, Lists)"},{value:"advanced",label:"Advanced (+ Headings, Blockquote)"},{value:"full",label:"Full (All options)"}]},{key:"height",label:"Height (px)",type:"number",section:"config",min:100,max:800,placeholder:"200",description:"Editor area height in pixels"},{key:"allowImages",label:"Allow Images",type:"checkbox",section:"config",description:"Let users embed images in content"},{key:"allowLinks",label:"Allow Links",type:"checkbox",section:"config",description:"Let users insert hyperlinks"}]},getDefaultValues:()=>({properties:{label:"Rich Text",placeholder:"Start typing..."},layout:{labelPosition:"top",size:"full"},config:{toolbar:["bold","italic","underline","link"],height:200,allowImages:!1,allowLinks:!0},validation:{maxLength:1e4}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,config:a}=K(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,children:l.jsxs("div",{className:m("border border-gray-300 rounded-md bg-gray-50 overflow-hidden"),children:[l.jsxs("div",{className:m("flex items-center gap-1 p-2 border-b border-gray-200 bg-gray-100"),children:[l.jsx("button",{disabled:!0,className:m("p-1.5 rounded hover:bg-gray-200 text-gray-600"),children:l.jsx("strong",{children:"B"})}),l.jsx("button",{disabled:!0,className:m("p-1.5 rounded hover:bg-gray-200 text-gray-600"),children:l.jsx("em",{children:"I"})}),l.jsx("button",{disabled:!0,className:m("p-1.5 rounded hover:bg-gray-200 text-gray-600"),children:l.jsx("u",{children:"U"})}),l.jsx("span",{className:m("w-px h-4 bg-gray-300 mx-1")}),l.jsx("button",{disabled:!0,className:m("p-1.5 rounded hover:bg-gray-200 text-gray-600 text-xs"),children:"🔗"})]}),l.jsx("div",{className:m("p-3 min-h-[120px] text-gray-400 text-sm"),style:{height:(a==null?void 0:a.height)||200},children:o||"Start typing..."})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c,config:d}=K(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{className:`border rounded-md overflow-hidden ${((i==null?void 0:i.length)??0)>0?"border-red-500":"border-gray-300"}`,children:[l.jsxs("div",{className:m("flex items-center gap-1 p-2 border-b border-gray-200 bg-gray-100"),children:[l.jsx("button",{type:"button",disabled:c,className:m("p-1.5 rounded hover:bg-gray-200 text-gray-600 disabled:opacity-50"),children:l.jsx("strong",{children:"B"})}),l.jsx("button",{type:"button",disabled:c,className:m("p-1.5 rounded hover:bg-gray-200 text-gray-600 disabled:opacity-50"),children:l.jsx("em",{children:"I"})}),l.jsx("button",{type:"button",disabled:c,className:m("p-1.5 rounded hover:bg-gray-200 text-gray-600 disabled:opacity-50"),children:l.jsx("u",{children:"U"})}),l.jsx("span",{className:m("w-px h-4 bg-gray-300 mx-1")}),l.jsx("button",{type:"button",disabled:c,className:m("p-1.5 rounded hover:bg-gray-200 text-gray-600 text-xs disabled:opacity-50"),children:"🔗"})]}),l.jsx("div",{contentEditable:!c,suppressContentEditableWarning:!0,onInput:p=>a==null?void 0:a(p.target.innerHTML),dangerouslySetInnerHTML:{__html:s??""},className:m("p-3 min-h-[120px] text-sm focus:outline-none"),style:{height:(d==null?void 0:d.height)||200}})]})})}}],O0=[{type:"number",structure:"field",typeCategory:"Numeric",label:"Number",description:"Numeric input field",icon:"🔢",category:"field",subCategory:"numeric",dataType:"number",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0,showPrefix:!0,showSuffix:!0},configSection:{title:"Number Settings",icon:"🔢"},fields:[{key:"step",label:"Step",type:"number",section:"config",min:.01,placeholder:"1",description:"Increment/decrement amount",colSpan:1},{key:"decimals",label:"Decimals",type:"number",section:"config",min:0,max:10,placeholder:"0",description:"Decimal places to allow",colSpan:1},{key:"thousandsSeparator",label:"Thousands Separator",type:"checkbox",section:"config",description:"Format numbers with commas (e.g. 1,000)"},{key:"currencySymbol",label:"Currency Symbol",type:"text",section:"config",placeholder:"$, €, £, ¥…",description:"Leave empty for plain numbers"},{key:"numberFormat",label:"Display Format",type:"select",section:"config",options:[{value:"number",label:"Plain Number"},{value:"currency",label:"Currency"},{value:"percent",label:"Percentage"}]},{key:"showStepper",label:"Show Stepper Buttons",type:"checkbox",section:"config",description:"Display +/- spin buttons"}]},getDefaultValues:()=>({properties:{label:"Number",placeholder:"Enter number..."},layout:{labelPosition:"top",size:"full"},config:{step:1,decimals:0,thousandsSeparator:!1}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,prefix:a,suffix:i}=K(e),c=l.jsx("input",{type:"number",placeholder:o,disabled:!0,className:`${kt()} ${a?"":"rounded-l-md"} ${i?"":"rounded-r-md"}`});return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,children:a||i?l.jsx(Ni,{prefix:a,suffix:i,children:c}):c})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,prefix:a,suffix:i,value:c,onChange:d,errors:p,isDisabled:u,config:f}=K(e),h=y=>{const b=y.target.value===""?void 0:Number(y.target.value);d==null||d(b)},g=l.jsx("input",{type:"number",placeholder:o,value:c??"",onChange:h,disabled:u,step:(f==null?void 0:f.step)||1,className:`${Ut({hasError:((p==null?void 0:p.length)??0)>0,disabled:u})} ${a?"rounded-l-none":""} ${i?"rounded-r-none":""}`});return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,errors:p,children:a||i?l.jsx(Ni,{prefix:a,suffix:i,children:g}):g})}},{type:"slider",structure:"field",typeCategory:"Numeric",label:"Slider",description:"Range slider for numeric values",icon:"🎚️",category:"field",subCategory:"numeric",dataType:"number",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Slider Settings",icon:"🎚️"},fields:[{key:"min",label:"Min Value",type:"number",section:"config",placeholder:"0",colSpan:1},{key:"max",label:"Max Value",type:"number",section:"config",placeholder:"100",colSpan:1},{key:"step",label:"Step",type:"number",section:"config",min:1,placeholder:"1",description:"Size of each increment"},{key:"showValue",label:"Show Value Label",type:"checkbox",section:"config",description:"Display the current value beside the slider"},{key:"showMarks",label:"Show Tick Marks",type:"checkbox",section:"config",description:"Display scale marks along the track"},{key:"showTooltip",label:"Show Tooltip on Drag",type:"checkbox",section:"config",description:"Floating tooltip while dragging"},{key:"trackColor",label:"Track Color",type:"select",section:"config",description:"Visual theme of the slider track",options:[{value:"primary",label:"Primary (Blue)"},{value:"success",label:"Success (Green)"},{value:"warning",label:"Warning (Amber)"},{value:"danger",label:"Danger (Red)"},{value:"neutral",label:"Neutral (Gray)"}]}]},getDefaultValues:()=>({properties:{label:"Slider",description:"Drag to select a value"},layout:{labelPosition:"top",size:"full"},config:{min:0,max:100,step:1,showValue:!0,showMarks:!1}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:s}=K(e),a=(s==null?void 0:s.min)??0,i=(s==null?void 0:s.max)??100;return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:m("flex items-center gap-3"),children:[l.jsx("span",{className:m("text-xs text-gray-500"),children:a}),l.jsx("input",{type:"range",min:a,max:i,disabled:!0,className:m("flex-1 h-2 bg-gray-200 rounded-lg appearance-none cursor-not-allowed")}),l.jsx("span",{className:m("text-xs text-gray-500"),children:i}),(s==null?void 0:s.showValue)&&l.jsx("span",{className:m("text-sm font-medium text-gray-600 min-w-[40px] text-center"),children:Math.round((a+i)/2)})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c,config:d}=K(e),p=(d==null?void 0:d.min)??0,u=(d==null?void 0:d.max)??100,f=(d==null?void 0:d.step)??1,h=s??p;return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{className:m("flex items-center gap-3"),children:[l.jsx("span",{className:m("text-xs text-gray-500"),children:p}),l.jsx("input",{type:"range",min:p,max:u,step:f,value:h,onChange:g=>a==null?void 0:a(Number(g.target.value)),disabled:c,className:m("flex-1 h-2 bg-gray-200 rounded-lg appearance-none cursor-pointer disabled:cursor-not-allowed")}),l.jsx("span",{className:m("text-xs text-gray-500"),children:u}),(d==null?void 0:d.showValue)&&l.jsx("span",{className:m("text-sm font-medium text-gray-600 min-w-[40px] text-center"),children:h})]})})}},{type:"rangeSlider",structure:"field",typeCategory:"Numeric",label:"Range Slider",description:"Select a range of values",icon:"↔️",category:"field",subCategory:"numeric",dataType:"object",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Range Slider Settings",icon:"↔️"},fields:[{key:"min",label:"Range Min",type:"number",section:"config",placeholder:"0",colSpan:1},{key:"max",label:"Range Max",type:"number",section:"config",placeholder:"100",colSpan:1},{key:"step",label:"Step",type:"number",section:"config",min:1,placeholder:"1",description:"Size of each increment",colSpan:1},{key:"minRange",label:"Min Gap",type:"number",section:"config",min:0,placeholder:"10",description:"Minimum distance between handles",colSpan:1},{key:"showValue",label:"Show Value Labels",type:"checkbox",section:"config",description:"Display selected range below the slider"},{key:"showTooltip",label:"Show Tooltip on Drag",type:"checkbox",section:"config",description:"Floating tooltip while dragging handles"},{key:"showBarLabels",label:"Show Min/Max Labels",type:"checkbox",section:"config",description:"Show the min/max values at track edges"}]},getDefaultValues:()=>({properties:{label:"Range Slider",description:"Select a range"},layout:{labelPosition:"top",size:"full"},config:{min:0,max:100,step:1,showValue:!0,minRange:10}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:s}=K(e),a=(s==null?void 0:s.min)??0,i=(s==null?void 0:s.max)??100;return l.jsxs(de,{label:t,description:r,required:o,labelPosition:n,children:[l.jsxs("div",{className:m("flex items-center gap-3"),children:[l.jsx("span",{className:m("text-xs text-gray-500"),children:a}),l.jsxs("div",{className:m("flex-1 relative h-2 bg-gray-200 rounded-lg"),children:[l.jsx("div",{className:m("absolute h-full bg-blue-400 rounded-lg left-[20%] right-[30%]")}),l.jsx("div",{className:m("absolute w-4 h-4 bg-white border-2 border-blue-500 rounded-full -top-1 left-[20%] -ml-2")}),l.jsx("div",{className:m("absolute w-4 h-4 bg-white border-2 border-blue-500 rounded-full -top-1 right-[30%] -mr-2")})]}),l.jsx("span",{className:m("text-xs text-gray-500"),children:i})]}),(s==null?void 0:s.showValue)&&l.jsxs("div",{className:m("flex justify-between text-sm text-gray-600 mt-2"),children:[l.jsxs("span",{children:["Min: ",Math.round(a+(i-a)*.2)]}),l.jsxs("span",{children:["Max: ",Math.round(a+(i-a)*.7)]})]})]})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c,config:d}=K(e),p=(d==null?void 0:d.min)??0,u=(d==null?void 0:d.max)??100,f=(d==null?void 0:d.step)??1,h=(s==null?void 0:s.min)??Math.round(p+(u-p)*.2),g=(s==null?void 0:s.max)??Math.round(p+(u-p)*.8),y=x=>{const w=Number(x.target.value),C=Math.min(w,g-((d==null?void 0:d.minRange)??0));a==null||a({min:C,max:g})},b=x=>{const w=Number(x.target.value),C=Math.max(w,h+((d==null?void 0:d.minRange)??0));a==null||a({min:h,max:C})},v=(h-p)/(u-p)*100,N=100-(g-p)/(u-p)*100;return l.jsxs(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:[l.jsxs("div",{className:m("flex items-center gap-3"),children:[l.jsx("span",{className:m("text-xs text-gray-500"),children:p}),l.jsxs("div",{className:m("flex-1 relative h-2 bg-gray-200 rounded-lg"),children:[l.jsx("div",{className:m("absolute h-full bg-blue-400 rounded-lg"),style:{left:`${v}%`,right:`${N}%`}}),l.jsx("input",{type:"range",min:p,max:u,step:f,value:h,onChange:y,disabled:c,className:m("absolute w-full h-full appearance-none bg-transparent pointer-events-auto cursor-pointer disabled:cursor-not-allowed"),style:{zIndex:h>u-10?5:3}}),l.jsx("input",{type:"range",min:p,max:u,step:f,value:g,onChange:b,disabled:c,className:m("absolute w-full h-full appearance-none bg-transparent pointer-events-auto cursor-pointer disabled:cursor-not-allowed"),style:{zIndex:4}})]}),l.jsx("span",{className:m("text-xs text-gray-500"),children:u})]}),(d==null?void 0:d.showValue)&&l.jsxs("div",{className:m("flex justify-between text-sm text-gray-600 mt-2"),children:[l.jsxs("span",{children:["Min: ",h]}),l.jsxs("span",{children:["Max: ",g]})]})]})}}],M0=[{type:"singleChoice",structure:"field",typeCategory:"Selection",label:"Single Choice",description:"Radio button selection",icon:"⭕",category:"field",subCategory:"selection",dataType:"string",supportsValidation:!0,supportsOptions:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Choice Settings",icon:"⭕"},fields:[{key:"layoutDirection",label:"Layout",type:"select",section:"config",description:"How options are arranged",options:[{value:"vertical",label:"Vertical (stacked)"},{value:"horizontal",label:"Horizontal (inline)"},{value:"grid",label:"Grid (2 columns)"}]},{key:"allowOther",label:'Allow "Other"',type:"checkbox",section:"config",description:'Add a free-text "Other" option at the end'},{key:"randomizeOptions",label:"Randomize Order",type:"checkbox",section:"config",description:"Shuffle options for each respondent (surveys)"},{key:"showAsButtonGroup",label:"Show as Button Group",type:"checkbox",section:"config",description:"Display options as selectable buttons instead of radios"},{key:"otherLabel",label:'"Other" Label',type:"text",section:"config",placeholder:"Other (please specify)",showWhen:{field:"allowOther",value:!0}}]},getDefaultValues:()=>({properties:{label:"Single Choice",description:"Select one option"},layout:{labelPosition:"top",size:"full"},config:{options:[{label:"Option 1",value:"option1"},{label:"Option 2",value:"option2"},{label:"Option 3",value:"option3"}],allowOther:!1}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:s}=K(e),a=(s==null?void 0:s.options)||[];return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:m("space-y-2"),children:[a.map((i,c)=>l.jsxs("label",{className:m("flex items-center gap-2"),children:[l.jsx("input",{type:"radio",disabled:!0,className:m("text-blue-600")}),l.jsx("span",{className:m("text-sm text-gray-700"),children:i.label})]},c)),(s==null?void 0:s.allowOther)&&l.jsxs("label",{className:m("flex items-center gap-2"),children:[l.jsx("input",{type:"radio",disabled:!0,className:m("text-blue-600")}),l.jsx("span",{className:m("text-sm text-gray-700"),children:"Other"})]})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c,config:d}=K(e),p=(d==null?void 0:d.options)||[];return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{className:m("space-y-2"),children:[p.map((u,f)=>l.jsxs("label",{className:m("flex items-center gap-2 cursor-pointer"),children:[l.jsx("input",{type:"radio",checked:s===u.value,onChange:()=>a==null?void 0:a(u.value),disabled:c,className:m("text-blue-600")}),l.jsx("span",{className:m("text-sm text-gray-700"),children:u.label})]},f)),(d==null?void 0:d.allowOther)&&l.jsxs("label",{className:m("flex items-center gap-2 cursor-pointer"),children:[l.jsx("input",{type:"radio",checked:s==="__other__",onChange:()=>a==null?void 0:a("__other__"),disabled:c,className:m("text-blue-600")}),l.jsx("span",{className:m("text-sm text-gray-700"),children:"Other"})]})]})})}},{type:"multipleChoice",structure:"field",typeCategory:"Selection",label:"Multiple Choice",description:"Checkbox multi-select",icon:"☑️",category:"field",subCategory:"selection",dataType:"array",supportsValidation:!0,supportsOptions:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Choice Settings",icon:"☑️"},fields:[{key:"layoutDirection",label:"Layout",type:"select",section:"config",description:"How options are arranged",options:[{value:"vertical",label:"Vertical (stacked)"},{value:"horizontal",label:"Horizontal (inline)"},{value:"grid",label:"Grid (2 columns)"}]},{key:"allowOther",label:'Allow "Other"',type:"checkbox",section:"config",description:'Add a free-text "Other" option at the end'},{key:"randomizeOptions",label:"Randomize Order",type:"checkbox",section:"config",description:"Shuffle options for each respondent (surveys)"},{key:"showSelectAll",label:'Show "Select All"',type:"checkbox",section:"config",description:"Add a shortcut to check all options at once"},{key:"otherLabel",label:'"Other" Label',type:"text",section:"config",placeholder:"Other (please specify)",showWhen:{field:"allowOther",value:!0}}]},getDefaultValues:()=>({properties:{label:"Multiple Choice",description:"Select all that apply"},layout:{labelPosition:"top",size:"full"},config:{options:[{label:"Option 1",value:"option1"},{label:"Option 2",value:"option2"},{label:"Option 3",value:"option3"}],allowOther:!1}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:s}=K(e),a=(s==null?void 0:s.options)||[];return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:m("space-y-2"),children:[a.map((i,c)=>l.jsxs("label",{className:m("flex items-center gap-2"),children:[l.jsx("input",{type:"checkbox",disabled:!0,className:m("text-blue-600 rounded")}),l.jsx("span",{className:m("text-sm text-gray-700"),children:i.label})]},c)),(s==null?void 0:s.allowOther)&&l.jsxs("label",{className:m("flex items-center gap-2"),children:[l.jsx("input",{type:"checkbox",disabled:!0,className:m("text-blue-600 rounded")}),l.jsx("span",{className:m("text-sm text-gray-700"),children:"Other"})]})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c,config:d}=K(e),p=(d==null?void 0:d.options)||[],u=Array.isArray(s)?s:[],f=h=>{const g=u.includes(h)?u.filter(y=>y!==h):[...u,h];a==null||a(g)};return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{className:m("space-y-2"),children:[p.map((h,g)=>l.jsxs("label",{className:m("flex items-center gap-2 cursor-pointer"),children:[l.jsx("input",{type:"checkbox",checked:u.includes(h.value),onChange:()=>f(h.value),disabled:c,className:m("text-blue-600 rounded")}),l.jsx("span",{className:m("text-sm text-gray-700"),children:h.label})]},g)),(d==null?void 0:d.allowOther)&&l.jsxs("label",{className:m("flex items-center gap-2 cursor-pointer"),children:[l.jsx("input",{type:"checkbox",checked:u.includes("__other__"),onChange:()=>f("__other__"),disabled:c,className:m("text-blue-600 rounded")}),l.jsx("span",{className:m("text-sm text-gray-700"),children:"Other"})]})]})})}},{type:"dropdown",structure:"field",typeCategory:"Selection",label:"Dropdown",description:"Select from a dropdown list",icon:"📋",category:"field",subCategory:"selection",dataType:"string",supportsValidation:!0,supportsOptions:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Dropdown Settings",icon:"📋"},fields:[{key:"allowOther",label:'Allow "Other"',type:"checkbox",section:"config",description:"Let users type a custom value"},{key:"searchable",label:"Searchable",type:"checkbox",section:"config",description:"Enable type-to-search filtering"},{key:"clearable",label:"Clearable",type:"checkbox",section:"config",description:"Show a clear button to deselect"},{key:"otherLabel",label:'"Other" Label',type:"text",section:"config",placeholder:"Other (please specify)",showWhen:{field:"allowOther",value:!0}}]},getDefaultValues:()=>({properties:{label:"Dropdown",placeholder:"Select an option..."},layout:{labelPosition:"top",size:"full"},config:{options:[{label:"Option 1",value:"option1"},{label:"Option 2",value:"option2"},{label:"Option 3",value:"option3"}],allowOther:!1}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,config:a}=K(e),i=(a==null?void 0:a.options)||[];return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,children:l.jsxs("select",{disabled:!0,className:kt(),children:[l.jsx("option",{children:o||"Select an option..."}),i.map((c,d)=>l.jsx("option",{value:c.value,children:c.label},d))]})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,value:a,onChange:i,errors:c,isDisabled:d,config:p}=K(e),u=(p==null?void 0:p.options)||[];return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,errors:c,children:l.jsxs("select",{value:a??"",onChange:f=>i==null?void 0:i(f.target.value||void 0),disabled:d,className:Ut({hasError:((c==null?void 0:c.length)??0)>0,disabled:d}),children:[l.jsx("option",{value:"",children:o||"Select an option..."}),u.map((f,h)=>l.jsx("option",{value:f.value,children:f.label},h))]})})}},{type:"tags",structure:"field",typeCategory:"Selection",label:"Tags",description:"Tag-style multi-select",icon:"🏷️",category:"field",subCategory:"selection",dataType:"array",supportsValidation:!0,supportsOptions:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Tags Settings",icon:"🏷️"},fields:[{key:"maxTags",label:"Max Tags",type:"number",section:"config",min:1,placeholder:"10",description:"Maximum number of tags allowed"},{key:"allowCustomTags",label:"Allow Custom Tags",type:"checkbox",section:"config",description:"Let users type their own tags"},{key:"showSuggestions",label:"Show Suggestions",type:"checkbox",section:"config",description:"Display suggestion dropdown while typing"},{key:"tagColor",label:"Tag Color",type:"select",section:"config",description:"Color theme for selected tags",options:[{value:"primary",label:"Primary (Blue)"},{value:"neutral",label:"Neutral (Gray)"},{value:"success",label:"Success (Green)"},{value:"warning",label:"Warning (Amber)"},{value:"danger",label:"Danger (Red)"}]}]},getDefaultValues:()=>({properties:{label:"Tags",placeholder:"Add tag...",description:"Type and press Enter to add tags"},layout:{labelPosition:"top",size:"full"},config:{options:[{label:"Tag 1",value:"tag1"},{label:"Tag 2",value:"tag2"},{label:"Tag 3",value:"tag3"}],maxTags:10,allowCustomTags:!0}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s}=K(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,children:l.jsxs("div",{className:m("flex flex-wrap gap-2 p-2 border border-gray-300 rounded-md bg-gray-50 min-h-[42px]"),children:[l.jsxs("span",{className:m("inline-flex items-center gap-1 px-2 py-1 bg-blue-100 text-blue-800 text-sm rounded"),children:["Tag 1",l.jsx("button",{disabled:!0,className:m("text-blue-600 hover:text-blue-800"),children:"×"})]}),l.jsxs("span",{className:m("inline-flex items-center gap-1 px-2 py-1 bg-blue-100 text-blue-800 text-sm rounded"),children:["Tag 2",l.jsx("button",{disabled:!0,className:m("text-blue-600 hover:text-blue-800"),children:"×"})]}),l.jsx("input",{type:"text",placeholder:o||"Add tag...",disabled:!0,className:m("flex-1 min-w-[100px] border-none bg-transparent text-sm focus:outline-none")})]})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,value:a,onChange:i,errors:c,isDisabled:d,config:p}=K(e),u=Array.isArray(a)?a:[],[f,h]=P.useState(""),g=b=>{b.key==="Enter"&&f.trim()&&(b.preventDefault(),!u.includes(f.trim())&&(!(p!=null&&p.maxTags)||u.length<p.maxTags)&&(i==null||i([...u,f.trim()])),h(""))},y=b=>{i==null||i(u.filter(v=>v!==b))};return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,errors:c,children:l.jsxs("div",{className:`flex flex-wrap gap-2 p-2 border rounded-md min-h-[42px] ${((c==null?void 0:c.length)??0)>0?"border-red-500":"border-gray-300"} ${d?"bg-gray-50":"bg-white"}`,children:[u.map((b,v)=>l.jsxs("span",{className:m("inline-flex items-center gap-1 px-2 py-1 bg-blue-100 text-blue-800 text-sm rounded"),children:[b,!d&&l.jsx("button",{type:"button",onClick:()=>y(b),className:m("text-blue-600 hover:text-blue-800"),children:"×"})]},v)),!d&&(!(p!=null&&p.maxTags)||u.length<p.maxTags)&&l.jsx("input",{type:"text",placeholder:o||"Add tag...",value:f,onChange:b=>h(b.target.value),onKeyDown:g,disabled:d,className:m("flex-1 min-w-[100px] border-none bg-transparent text-sm focus:outline-none")})]})})}},{type:"decisionBox",structure:"field",typeCategory:"Selection",label:"Decision Box",description:"Yes/No checkbox",icon:"✅",category:"field",subCategory:"selection",dataType:"boolean",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Decision Box Settings",icon:"✅"},fields:[{key:"checkedLabel",label:"Checked Label",type:"text",section:"config",placeholder:"Yes",description:"Label shown when checked",colSpan:1},{key:"uncheckedLabel",label:"Unchecked Label",type:"text",section:"config",placeholder:"No",description:"Label shown when unchecked",colSpan:1},{key:"showAsSwitch",label:"Show as Toggle Switch",type:"checkbox",section:"config",description:"Display as a switch instead of a checkbox"}]},getDefaultValues:()=>({properties:{label:"I agree to the terms and conditions"},layout:{labelPosition:"top",size:"full"},config:{checkedLabel:"Yes",uncheckedLabel:"No"}}),renderOnCanvas:e=>{const{label:t,description:r,required:o}=K(e);return l.jsx("div",{className:m("space-y-1.5"),children:l.jsxs("label",{className:m("flex items-start gap-3 cursor-pointer"),children:[l.jsx("input",{type:"checkbox",disabled:!0,className:m("mt-1 text-blue-600 rounded")}),l.jsxs("div",{children:[l.jsx("span",{className:m("text-sm text-gray-700"),children:t}),o&&l.jsx("span",{className:m("text-red-500 ml-1"),children:"*"}),r&&l.jsx("p",{className:m("text-xs text-gray-500 mt-0.5"),children:r})]})]})})},render:e=>{const{label:t,description:r,required:o,value:n,onChange:s,errors:a,isDisabled:i}=K(e);return l.jsxs("div",{className:m("space-y-1.5"),children:[l.jsxs("label",{className:m("flex items-start gap-3 cursor-pointer"),children:[l.jsx("input",{type:"checkbox",checked:n??!1,onChange:c=>s==null?void 0:s(c.target.checked),disabled:i,className:m("mt-1 text-blue-600 rounded")}),l.jsxs("div",{children:[l.jsx("span",{className:m("text-sm text-gray-700"),children:t}),o&&l.jsx("span",{className:m("text-red-500 ml-1"),children:"*"}),r&&l.jsx("p",{className:m("text-xs text-gray-500 mt-0.5"),children:r})]})]}),a&&a.length>0&&l.jsx("div",{className:m("space-y-1"),children:a.map((c,d)=>l.jsx("p",{className:m("text-xs text-red-500"),children:c},d))})]})}},{type:"toggleSwitch",structure:"field",typeCategory:"Selection",label:"Toggle Switch",description:"On/Off toggle switch",icon:"🔀",category:"field",subCategory:"selection",dataType:"boolean",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Toggle Settings",icon:"🔀"},fields:[{key:"onLabel",label:"On Label",type:"text",section:"config",placeholder:"On",description:"Label for the active state",colSpan:1},{key:"offLabel",label:"Off Label",type:"text",section:"config",placeholder:"Off",description:"Label for the inactive state",colSpan:1},{key:"showLabels",label:"Show State Labels",type:"checkbox",section:"config",description:"Display on/off text next to the switch"},{key:"defaultValue",label:"Default State",type:"select",section:"config",description:"Initial state of the switch",options:[{value:"off",label:"Off (unchecked)"},{value:"on",label:"On (checked)"}]}]},getDefaultValues:()=>({properties:{label:"Toggle Switch",description:"Toggle on or off"},layout:{labelPosition:"top",size:"full"},config:{onLabel:"On",offLabel:"Off"}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:s}=K(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:m("flex items-center gap-2"),children:[l.jsx("span",{className:m("text-sm text-gray-500"),children:(s==null?void 0:s.offLabel)||"Off"}),l.jsx("div",{className:m("relative w-11 h-6 bg-gray-300 rounded-full"),children:l.jsx("div",{className:m("absolute left-1 top-1 w-4 h-4 bg-white rounded-full transition-transform")})}),l.jsx("span",{className:m("text-sm text-gray-500"),children:(s==null?void 0:s.onLabel)||"On"})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c,config:d}=K(e),p=s??!1;return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{className:m("flex items-center gap-2"),children:[l.jsx("span",{className:m("text-sm text-gray-500"),children:(d==null?void 0:d.offLabel)||"Off"}),l.jsx("button",{type:"button",onClick:()=>!c&&(a==null?void 0:a(!p)),disabled:c,className:`relative w-11 h-6 rounded-full transition-colors ${p?"bg-blue-600":"bg-gray-300"} ${c?"opacity-50 cursor-not-allowed":"cursor-pointer"}`,children:l.jsx("div",{className:`absolute top-1 w-4 h-4 bg-white rounded-full transition-transform ${p?"translate-x-6":"translate-x-1"}`})}),l.jsx("span",{className:m("text-sm text-gray-500"),children:(d==null?void 0:d.onLabel)||"On"})]})})}}];var L0=Object.defineProperty,F0=(e,t)=>L0(e,"name",{value:t,configurable:!0});function Ci(e,[t,r]){return Math.min(r,Math.max(t,e))}F0(Ci,"clamp");var V0=Object.defineProperty,nn=(e,t)=>V0(e,"name",{value:t,configurable:!0}),yf=!!(typeof window<"u"&&window.document&&window.document.createElement);function Se(e,t,{checkForDefaultPrevented:r=!0}={}){return nn(function(n){if(e==null||e(n),r===!1||!n||!n.defaultPrevented)return t==null?void 0:t(n)},"handleEvent")}nn(Se,"composeEventHandlers");function G0(e){var t;if(!yf)throw new Error("Cannot access window outside of the DOM");return((t=e==null?void 0:e.ownerDocument)==null?void 0:t.defaultView)??window}nn(G0,"getOwnerWindow");function Ei(e){if(!yf)throw new Error("Cannot access document outside of the DOM");return(e==null?void 0:e.ownerDocument)??document}nn(Ei,"getOwnerDocument");function vf(e,t=!1){const{activeElement:r}=Ei(e);if(!(r!=null&&r.nodeName))return null;if(xf(r)&&r.contentDocument)return vf(r.contentDocument.body,t);if(t){const o=r.getAttribute("aria-activedescendant");if(o){const n=Ei(r).getElementById(o);if(n)return n}}return r}nn(vf,"getActiveElement");function xf(e){return e.tagName==="IFRAME"}nn(xf,"isFrame");var z0=Object.defineProperty,nr=(e,t)=>z0(e,"name",{value:t,configurable:!0});function B0(e,t){const r=S.createContext(t);r.displayName=e+"Context";const o=nr(s=>{const{children:a,...i}=s,c=S.useMemo(()=>i,Object.values(i));return l.jsx(r.Provider,{value:c,children:a})},"Provider");o.displayName=e+"Provider";function n(s,a={}){const{optional:i=!1}=a,c=S.useContext(r);if(c)return c;if(t!==void 0)return t;if(!i)throw new Error(`\`${s}\` must be used within \`${e}\``)}return nr(n,"useContext"),[o,n]}nr(B0,"createContext");function sr(e,t=[]){let r=[];function o(s,a){const i=S.createContext(a);i.displayName=s+"Context";const c=r.length;r=[...r,a];const d=nr(u=>{var v;const{scope:f,children:h,...g}=u,y=((v=f==null?void 0:f[e])==null?void 0:v[c])||i,b=S.useMemo(()=>g,Object.values(g));return l.jsx(y.Provider,{value:b,children:h})},"Provider");d.displayName=s+"Provider";function p(u,f,h={}){var v;const{optional:g=!1}=h,y=((v=f==null?void 0:f[e])==null?void 0:v[c])||i,b=S.useContext(y);if(b)return b;if(a!==void 0)return a;if(!g)throw new Error(`\`${u}\` must be used within \`${s}\``)}return nr(p,"useContext"),[d,p]}nr(o,"createContext");const n=nr(()=>{const s=r.map(a=>S.createContext(a));return nr(function(i){const c=(i==null?void 0:i[e])||s;return S.useMemo(()=>({[`__scope${e}`]:{...i,[e]:c}}),[i,c])},"useScope")},"createScope");return n.scopeName=e,[o,wf(n,...t)]}nr(sr,"createContextScope");function wf(...e){const t=e[0];if(e.length===1)return t;const r=nr(()=>{const o=e.map(n=>({useScope:n(),scopeName:n.scopeName}));return nr(function(s){const a=o.reduce((i,{useScope:c,scopeName:d})=>{const u=c(s)[`__scope${d}`];return{...i,...u}},{});return S.useMemo(()=>({[`__scope${t.scopeName}`]:a}),[a])},"useComposedScopes")},"createScope");return r.scopeName=t.scopeName,r}nr(wf,"composeContextScopes");var U0=Object.defineProperty,_i=(e,t)=>U0(e,"name",{value:t,configurable:!0});function ki(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}_i(ki,"setRef");function Sf(...e){return t=>{let r=!1;const o=e.map(n=>{const s=ki(n,t);return!r&&typeof s=="function"&&(r=!0),s});if(r)return()=>{for(let n=0;n<o.length;n++){const s=o[n];typeof s=="function"?s():ki(e[n],null)}}}}_i(Sf,"composeRefs");function Ue(...e){return S.useCallback(Sf(...e),e)}_i(Ue,"useComposedRefs");var W0=Object.defineProperty,mr=(e,t)=>W0(e,"name",{value:t,configurable:!0});function Yr(e){const t=S.forwardRef((r,o)=>{let{children:n,...s}=r,a=null,i=!1;const c=[];Ai(n)&&typeof oa=="function"&&(n=oa(n._payload)),S.Children.forEach(n,f=>{var h;if(kf(f)){i=!0;const g=f;let y="child"in g.props?g.props.child:g.props.children;Ai(y)&&typeof oa=="function"&&(y=oa(y._payload)),a=j0(g,y),c.push((h=a==null?void 0:a.props)==null?void 0:h.children)}else c.push(f)}),a?a=S.cloneElement(a,void 0,c):!i&&S.Children.count(n)===1&&S.isValidElement(n)&&(a=n);const d=a?_f(a):void 0,p=Ue(o,d);if(!a){if(n||n===0)throw new Error(i?Q0(e):Y0(e));return n}const u=Ef(s,a.props??{});return a.type!==S.Fragment&&(u.ref=o?p:d),S.cloneElement(a,u)});return t.displayName=`${e}.Slot`,t}mr(Yr,"createSlot");var H0=Yr("Slot"),Nf=Symbol.for("radix.slottable");function Cf(e){const t=mr(r=>"child"in r?r.children(r.child):r.children,"Slottable");return t.displayName=`${e}.Slottable`,t.__radixId=Nf,t}mr(Cf,"createSlottable");var j0=mr((e,t)=>{if("child"in e.props){const r=e.props.child;return S.isValidElement(r)?S.cloneElement(r,void 0,e.props.children(r.props.children)):null}return S.isValidElement(t)?t:null},"getSlottableElementFromSlottable");function Ef(e,t){const r={...t};for(const o in t){const n=e[o],s=t[o];/^on[A-Z]/.test(o)?n&&s?r[o]=(...i)=>{const c=s(...i);return n(...i),c}:n&&(r[o]=n):o==="style"?r[o]={...n,...s}:o==="className"&&(r[o]=[n,s].filter(Boolean).join(" "))}return{...e,...r}}mr(Ef,"mergeProps");function _f(e){var o,n;let t=(o=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:o.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=(n=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:n.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}mr(_f,"getElementRef");function kf(e){return S.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===Nf}mr(kf,"isSlottable");var q0=Symbol.for("react.lazy");function Ai(e){return e!=null&&typeof e=="object"&&"$$typeof"in e&&e.$$typeof===q0&&"_payload"in e&&Af(e._payload)}mr(Ai,"isLazyComponent");function Af(e){return typeof e=="object"&&e!==null&&"then"in e}mr(Af,"isPromiseLike");var Y0=mr(e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,"createSlotError"),Q0=mr(e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,"createSlottableError"),oa=S[" use ".trim().toString()],K0=Object.defineProperty,xt=(e,t)=>K0(e,"name",{value:t,configurable:!0});function na(e){const t=e+"CollectionProvider",[r,o]=sr(t),[n,s]=r(t,{collectionRef:{current:null},itemMap:new Map}),a=xt(y=>{const{scope:b,children:v}=y,N=S.useRef(null),x=S.useRef(new Map).current;return l.jsx(n,{scope:b,itemMap:x,collectionRef:N,children:v})},"CollectionProvider");a.displayName=t;const i=e+"CollectionSlot",c=Yr(i),d=S.forwardRef((y,b)=>{const{scope:v,children:N}=y,x=s(i,v),w=Ue(b,x.collectionRef);return l.jsx(c,{ref:w,children:N})});d.displayName=i;const p=e+"CollectionItemSlot",u="data-radix-collection-item",f=Yr(p),h=S.forwardRef((y,b)=>{const{scope:v,children:N,...x}=y,w=S.useRef(null),C=Ue(b,w),E=s(p,v);return S.useEffect(()=>(E.itemMap.set(w,{ref:w,...x}),()=>void E.itemMap.delete(w))),l.jsx(f,{[u]:"",ref:C,children:N})});h.displayName=p;function g(y){const b=s(e+"CollectionConsumer",y);return S.useCallback(()=>{const N=b.collectionRef.current;if(!N)return[];const x=Array.from(N.querySelectorAll(`[${u}]`));return Array.from(b.itemMap.values()).sort((E,k)=>x.indexOf(E.ref.current)-x.indexOf(k.ref.current))},[b.collectionRef,b.itemMap])}return xt(g,"useCollection"),[{Provider:a,Slot:d,ItemSlot:h},g,o]}xt(na,"createCollection");var Df=new WeakMap,Di=(tr=class extends Map{constructor(r){super(r);sw(this,mt);Eu(this,mt,[...super.keys()]),Df.set(this,!0)}set(r,o){return Df.get(this)&&(this.has(r)?Bt(this,mt)[Bt(this,mt).indexOf(r)]=r:Bt(this,mt).push(r)),super.set(r,o),this}insert(r,o,n){const s=this.has(o),a=Bt(this,mt).length,i=$i(r);let c=i>=0?i:a+i;const d=c<0||c>=a?-1:c;if(d===this.size||s&&d===this.size-1||d===-1)return this.set(o,n),this;const p=this.size+(s?0:1);i<0&&c++;const u=[...Bt(this,mt)];let f,h=!1;for(let g=c;g<p;g++)if(c===g){let y=u[g];u[g]===o&&(y=u[g+1]),s&&this.delete(o),f=this.get(y),this.set(o,n)}else{!h&&u[g-1]===o&&(h=!0);const y=u[h?g:g-1],b=f;f=this.get(y),this.delete(y),this.set(y,b)}return this}with(r,o,n){const s=new tr(this);return s.insert(r,o,n),s}before(r){const o=Bt(this,mt).indexOf(r)-1;if(!(o<0))return this.entryAt(o)}setBefore(r,o,n){const s=Bt(this,mt).indexOf(r);return s===-1?this:this.insert(s,o,n)}after(r){let o=Bt(this,mt).indexOf(r);if(o=o===-1||o===this.size-1?-1:o+1,o!==-1)return this.entryAt(o)}setAfter(r,o,n){const s=Bt(this,mt).indexOf(r);return s===-1?this:this.insert(s+1,o,n)}first(){return this.entryAt(0)}last(){return this.entryAt(-1)}clear(){return Eu(this,mt,[]),super.clear()}delete(r){const o=super.delete(r);return o&&Bt(this,mt).splice(Bt(this,mt).indexOf(r),1),o}deleteAt(r){const o=this.keyAt(r);return o!==void 0?this.delete(o):!1}at(r){const o=sa(Bt(this,mt),r);if(o!==void 0)return this.get(o)}entryAt(r){const o=sa(Bt(this,mt),r);if(o!==void 0)return[o,this.get(o)]}indexOf(r){return Bt(this,mt).indexOf(r)}keyAt(r){return sa(Bt(this,mt),r)}from(r,o){const n=this.indexOf(r);if(n===-1)return;let s=n+o;return s<0&&(s=0),s>=this.size&&(s=this.size-1),this.at(s)}keyFrom(r,o){const n=this.indexOf(r);if(n===-1)return;let s=n+o;return s<0&&(s=0),s>=this.size&&(s=this.size-1),this.keyAt(s)}find(r,o){let n=0;for(const s of this){if(Reflect.apply(r,o,[s,n,this]))return s;n++}}findIndex(r,o){let n=0;for(const s of this){if(Reflect.apply(r,o,[s,n,this]))return n;n++}return-1}filter(r,o){const n=[];let s=0;for(const a of this)Reflect.apply(r,o,[a,s,this])&&n.push(a),s++;return new tr(n)}map(r,o){const n=[];let s=0;for(const a of this)n.push([a[0],Reflect.apply(r,o,[a,s,this])]),s++;return new tr(n)}reduce(...r){const[o,n]=r;let s=0,a=n??this.at(0);for(const i of this)s===0&&r.length===1?a=i:a=Reflect.apply(o,this,[a,i,s,this]),s++;return a}reduceRight(...r){const[o,n]=r;let s=n??this.at(-1);for(let a=this.size-1;a>=0;a--){const i=this.at(a);a===this.size-1&&r.length===1?s=i:s=Reflect.apply(o,this,[s,i,a,this])}return s}toSorted(r){const o=[...this.entries()].sort(r);return new tr(o)}toReversed(){const r=new tr;for(let o=this.size-1;o>=0;o--){const n=this.keyAt(o),s=this.get(n);r.set(n,s)}return r}toSpliced(...r){const o=[...this.entries()];return o.splice(...r),new tr(o)}slice(r,o){const n=new tr;let s=this.size-1;if(r===void 0)return n;r<0&&(r=r+this.size),o!==void 0&&o>0&&(s=o-1);for(let a=r;a<=s;a++){const i=this.keyAt(a),c=this.get(i);n.set(i,c)}return n}every(r,o){let n=0;for(const s of this){if(!Reflect.apply(r,o,[s,n,this]))return!1;n++}return!0}some(r,o){let n=0;for(const s of this){if(Reflect.apply(r,o,[s,n,this]))return!0;n++}return!1}},mt=new WeakMap,xt(tr,"OrderedDict"),tr);function sa(e,t){if("at"in Array.prototype)return Array.prototype.at.call(e,t);const r=$f(e,t);return r===-1?void 0:e[r]}xt(sa,"at");function $f(e,t){const r=e.length,o=$i(t),n=o>=0?o:r+o;return n<0||n>=r?-1:n}xt($f,"toSafeIndex");function $i(e){return e!==e||e===0?0:Math.trunc(e)}xt($i,"toSafeInteger");function R0(e){const t=e+"CollectionProvider",[r,o]=sr(t),[n,s]=r(t,{collectionElement:null,collectionRef:{current:null},collectionRefObject:{current:null},itemMap:new Di,setItemMap:xt(()=>{},"setItemMap")}),a=xt(({state:x,...w})=>x?l.jsx(c,{...w,state:x}):l.jsx(i,{...w}),"CollectionProvider");a.displayName=t;const i=xt(x=>{const w=b();return l.jsx(c,{...x,state:w})},"CollectionInit");i.displayName=t+"Init";const c=xt(x=>{const{scope:w,children:C,state:E}=x,k=S.useRef(null),[_,D]=S.useState(null),A=Ue(k,D),[I,T]=E;return S.useEffect(()=>{if(!_)return;const L=If(()=>{});return L.observe(_,{childList:!0,subtree:!0}),()=>{L.disconnect()}},[_]),l.jsx(n,{scope:w,itemMap:I,setItemMap:T,collectionRef:A,collectionRefObject:k,collectionElement:_,children:C})},"CollectionProviderImpl");c.displayName=t+"Impl";const d=e+"CollectionSlot",p=Yr(d),u=S.forwardRef((x,w)=>{const{scope:C,children:E}=x,k=s(d,C),_=Ue(w,k.collectionRef);return l.jsx(p,{ref:_,children:E})});u.displayName=d;const f=e+"CollectionItemSlot",h="data-radix-collection-item",g=Yr(f),y=S.forwardRef((x,w)=>{const{scope:C,children:E,...k}=x,_=S.useRef(null),[D,A]=S.useState(null),I=Ue(w,_,A),T=s(f,C),{setItemMap:L}=T,F=S.useRef(k);Tf(F.current,k)||(F.current=k);const B=F.current;return S.useEffect(()=>{const G=B;return L(z=>D?z.has(D)?z.set(D,{...G,element:D}).toSorted(Ti):(z.set(D,{...G,element:D}),z.toSorted(Ti)):z),()=>{L(z=>!D||!z.has(D)?z:(z.delete(D),new Di(z)))}},[D,B,L]),l.jsx(g,{[h]:"",ref:I,children:E})});y.displayName=f;function b(){return S.useState(new Di)}xt(b,"useInitCollection");function v(x){const{itemMap:w}=s(e+"CollectionConsumer",x);return w}return xt(v,"useCollection"),[{Provider:a,Slot:u,ItemSlot:y},{createCollectionScope:o,useCollection:v,useInitCollection:b}]}xt(R0,"createCollection");function Tf(e,t){if(e===t)return!0;if(typeof e!="object"||typeof t!="object"||e==null||t==null)return!1;const r=Object.keys(e),o=Object.keys(t);if(r.length!==o.length)return!1;for(const n of r)if(!Object.prototype.hasOwnProperty.call(t,n)||e[n]!==t[n])return!1;return!0}xt(Tf,"shallowEqual");function Pf(e,t){return!!(t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_PRECEDING)}xt(Pf,"isElementPreceding");function Ti(e,t){return!e[1].element||!t[1].element?0:Pf(e[1].element,t[1].element)?-1:1}xt(Ti,"sortByDocumentPosition");function If(e){return new MutationObserver(r=>{for(const o of r)if(o.type==="childList"){e();return}})}xt(If,"getChildListObserver");var X0=Object.defineProperty,J0=(e,t)=>X0(e,"name",{value:t,configurable:!0}),Z0=S.createContext(void 0);function Vn(e){const t=S.useContext(Z0);return e||t||"ltr"}J0(Vn,"useDirection");var eS=Object.defineProperty,tS=(e,t)=>eS(e,"name",{value:t,configurable:!0}),rS=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],Ie=rS.reduce((e,t)=>{const r=Yr(`Primitive.${t}`),o=S.forwardRef((n,s)=>{const{asChild:a,...i}=n,c=a?r:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),l.jsx(c,{...i,ref:s})});return o.displayName=`Primitive.${t}`,{...e,[t]:o}},{});function Of(e,t){e&&Tn.flushSync(()=>e.dispatchEvent(t))}tS(Of,"dispatchDiscreteCustomEvent");var oS=Object.defineProperty,nS=(e,t)=>oS(e,"name",{value:t,configurable:!0});function gr(e){const t=S.useRef(e);return S.useEffect(()=>{t.current=e}),S.useMemo(()=>((...r)=>{var o;return(o=t.current)==null?void 0:o.call(t,...r)}),[])}nS(gr,"useCallbackRef");var sS=Object.defineProperty,wt=(e,t)=>sS(e,"name",{value:t,configurable:!0}),Pi="dismissableLayer.update",aS="dismissableLayer.pointerDownOutside",lS="dismissableLayer.focusOutside",Mf,Lf=S.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),Ii=S.forwardRef(wt(function(t,r){const{disableOutsidePointerEvents:o=!1,deferPointerDownOutside:n=!1,onEscapeKeyDown:s,onPointerDownOutside:a,onFocusOutside:i,onInteractOutside:c,onDismiss:d,...p}=t,u=S.useContext(Lf),[f,h]=S.useState(null),g=(f==null?void 0:f.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,y]=S.useState({}),b=Ue(r,h),v=Array.from(u.layers),[N]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),x=N?v.indexOf(N):-1,w=f?v.indexOf(f):-1,C=u.layersWithOutsidePointerEventsDisabled.size>0,E=w>=x,k=S.useRef(!1),_=Vf(T=>{a==null||a(T),c==null||c(T),T.defaultPrevented||d==null||d()},{ownerDocument:g,deferPointerDownOutside:n,isDeferredPointerDownOutsideRef:k,dismissableSurfaces:u.dismissableSurfaces,shouldHandlePointerDownOutside:S.useCallback(T=>{if(!(T instanceof Node))return!1;const L=[...u.branches].some(F=>F.contains(T));return E&&!L},[u.branches,E])}),D=Gf(T=>{if(n&&k.current)return;const L=T.target;[...u.branches].some(B=>B.contains(L))||(i==null||i(T),c==null||c(T),T.defaultPrevented||d==null||d())},g),A=f?w===v.length-1:!1,I=gr(T=>{T.key==="Escape"&&(s==null||s(T),!T.defaultPrevented&&d&&(T.preventDefault(),d()))});return S.useEffect(()=>{if(A)return g.addEventListener("keydown",I,{capture:!0}),()=>g.removeEventListener("keydown",I,{capture:!0})},[g,A,I]),S.useEffect(()=>{if(f)return o&&(u.layersWithOutsidePointerEventsDisabled.size===0&&(Mf=g.body.style.pointerEvents,g.body.style.pointerEvents="none"),u.layersWithOutsidePointerEventsDisabled.add(f)),u.layers.add(f),Oi(),()=>{o&&(u.layersWithOutsidePointerEventsDisabled.delete(f),u.layersWithOutsidePointerEventsDisabled.size===0&&(g.body.style.pointerEvents=Mf))}},[f,g,o,u]),S.useEffect(()=>()=>{f&&(u.layers.delete(f),u.layersWithOutsidePointerEventsDisabled.delete(f),Oi())},[f,u]),S.useEffect(()=>{const T=wt(()=>y({}),"handleUpdate");return document.addEventListener(Pi,T),()=>document.removeEventListener(Pi,T)},[]),l.jsx(Ie.div,{...p,ref:b,style:{pointerEvents:C?E?"auto":"none":void 0,...t.style},onFocusCapture:Se(t.onFocusCapture,D.onFocusCapture),onBlurCapture:Se(t.onBlurCapture,D.onBlurCapture),onPointerDownCapture:Se(t.onPointerDownCapture,_.onPointerDownCapture)})},"DismissableLayer"));function Ff(){const e=S.useContext(Lf),[t,r]=S.useState(null);return S.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),r}wt(Ff,"useDismissableLayerSurface");var iS=wt(()=>!0,"IS_TRUE");function Vf(e,t){const{ownerDocument:r=globalThis==null?void 0:globalThis.document,deferPointerDownOutside:o=!1,isDeferredPointerDownOutsideRef:n,dismissableSurfaces:s,shouldHandlePointerDownOutside:a=iS}=t,i=gr(e),c=S.useRef(!1),d=S.useRef(!1),p=S.useRef(new Map),u=S.useRef(()=>{});return S.useEffect(()=>{function f(){d.current=!1,n.current=!1,p.current.clear()}wt(f,"resetOutsideInteraction");function h(){return Array.from(p.current.values()).some(Boolean)}wt(h,"isOutsideInteractionIntercepted");function g(x){if(!d.current)return;const w=x.target;w instanceof Node&&[...s].some(E=>E.contains(w))||p.current.set(x.type,!0),x.type==="click"&&window.setTimeout(()=>{d.current&&u.current()},0)}wt(g,"handleInteractionCapture");function y(x){d.current&&p.current.set(x.type,!1)}wt(y,"handleInteractionBubble");const b=wt(x=>{if(x.target&&!c.current){let w=function(){r.removeEventListener("click",u.current);const E=h();f(),E||Mi(aS,i,C,{discrete:!0})};if(wt(w,"handleAndDispatchPointerDownOutsideEvent"),!a(x.target)){r.removeEventListener("click",u.current),f(),c.current=!1;return}const C={originalEvent:x};d.current=!0,n.current=o&&x.button===0,p.current.clear(),!o||x.button!==0?w():(r.removeEventListener("click",u.current),u.current=w,r.addEventListener("click",u.current,{once:!0}))}else r.removeEventListener("click",u.current),f();c.current=!1},"handlePointerDown"),v=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(const x of v)r.addEventListener(x,g,!0),r.addEventListener(x,y);const N=window.setTimeout(()=>{r.addEventListener("pointerdown",b)},0);return()=>{window.clearTimeout(N),r.removeEventListener("pointerdown",b),r.removeEventListener("click",u.current);for(const x of v)r.removeEventListener(x,g,!0),r.removeEventListener(x,y)}},[r,i,o,n,s,a]),{onPointerDownCapture:wt(()=>c.current=!0,"onPointerDownCapture")}}wt(Vf,"usePointerDownOutside");function Gf(e,t=globalThis==null?void 0:globalThis.document){const r=gr(e),o=S.useRef(!1);return S.useEffect(()=>{const n=wt(s=>{s.target&&!o.current&&Mi(lS,r,{originalEvent:s},{discrete:!1})},"handleFocus");return t.addEventListener("focusin",n),()=>t.removeEventListener("focusin",n)},[t,r]),{onFocusCapture:wt(()=>o.current=!0,"onFocusCapture"),onBlurCapture:wt(()=>o.current=!1,"onBlurCapture")}}wt(Gf,"useFocusOutside");function Oi(){const e=new CustomEvent(Pi);document.dispatchEvent(e)}wt(Oi,"dispatchUpdate");function Mi(e,t,r,{discrete:o}){const n=r.originalEvent.target,s=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:r});t&&n.addEventListener(e,t,{once:!0}),o?Of(n,s):n.dispatchEvent(s)}wt(Mi,"handleAndDispatchCustomEvent");var cS=Object.defineProperty,Li=(e,t)=>cS(e,"name",{value:t,configurable:!0}),aa=0,Dr=null;function dS(e){return la(),e.children}Li(dS,"FocusGuards");function la(){S.useEffect(()=>{Dr||(Dr={start:Fi(),end:Fi()});const{start:e,end:t}=Dr;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement("afterbegin",e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement("beforeend",t),aa++,()=>{aa===1&&(Dr==null||Dr.start.remove(),Dr==null||Dr.end.remove(),Dr=null),aa=Math.max(0,aa-1)}},[])}Li(la,"useFocusGuards");function Fi(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}Li(Fi,"createFocusGuard");var uS=Object.defineProperty,Wt=(e,t)=>uS(e,"name",{value:t,configurable:!0}),Vi="focusScope.autoFocusOnMount",Gi="focusScope.autoFocusOnUnmount",zf={bubbles:!1,cancelable:!0},Bf=S.forwardRef(Wt(function(t,r){const{loop:o=!1,trapped:n=!1,onMountAutoFocus:s,onUnmountAutoFocus:a,...i}=t,[c,d]=S.useState(null),p=gr(s),u=gr(a),f=S.useRef(null),h=Ue(r,d),g=S.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;S.useEffect(()=>{if(n){let b=function(w){if(g.paused||!c)return;const C=w.target;c.contains(C)?f.current=C:Qr(f.current,{select:!0})},v=function(w){if(g.paused||!c)return;const C=w.relatedTarget;C!==null&&(c.contains(C)||Qr(f.current,{select:!0}))},N=function(w){if(document.activeElement===document.body)for(const E of w)E.removedNodes.length>0&&Qr(c)};Wt(b,"handleFocusIn"),Wt(v,"handleFocusOut"),Wt(N,"handleMutations"),document.addEventListener("focusin",b),document.addEventListener("focusout",v);const x=new MutationObserver(N);return c&&x.observe(c,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",b),document.removeEventListener("focusout",v),x.disconnect()}}},[n,c,g.paused]),S.useEffect(()=>{if(c){qf.add(g);const b=document.activeElement;if(!c.contains(b)){const N=new CustomEvent(Vi,zf);c.addEventListener(Vi,p),c.dispatchEvent(N),N.defaultPrevented||(Uf(Qf(zi(c)),{select:!0}),document.activeElement===b&&Qr(c))}return()=>{c.removeEventListener(Vi,p),setTimeout(()=>{const N=new CustomEvent(Gi,zf);c.addEventListener(Gi,u),c.dispatchEvent(N),N.defaultPrevented||Qr(b??document.body,{select:!0}),c.removeEventListener(Gi,u),qf.remove(g)},0)}}},[c,p,u,g]);const y=S.useCallback(b=>{if(!o&&!n||g.paused)return;const v=b.key==="Tab"&&!b.altKey&&!b.ctrlKey&&!b.metaKey,N=document.activeElement;if(v&&N){const x=b.currentTarget,[w,C]=Wf(x);w&&C?!b.shiftKey&&N===C?(b.preventDefault(),o&&Qr(w,{select:!0})):b.shiftKey&&N===w&&(b.preventDefault(),o&&Qr(C,{select:!0})):N===x&&b.preventDefault()}},[o,n,g.paused]);return l.jsx(Ie.div,{tabIndex:-1,...i,ref:h,onKeyDown:y})},"FocusScope"));function Uf(e,{select:t=!1}={}){const r=document.activeElement;for(const o of e)if(Qr(o,{select:t}),document.activeElement!==r)return}Wt(Uf,"focusFirst");function Wf(e){const t=zi(e),r=Bi(t,e),o=Bi(t.reverse(),e);return[r,o]}Wt(Wf,"getTabbableEdges");function zi(e){const t=[],r=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:Wt(o=>{const n=o.tagName==="INPUT"&&o.type==="hidden";return o.disabled||o.hidden||n?NodeFilter.FILTER_SKIP:o.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},"acceptNode")});for(;r.nextNode();)t.push(r.currentNode);return t}Wt(zi,"getTabbableCandidates");function Bi(e,t){const r=typeof t.checkVisibility=="function"&&t.checkVisibility({checkVisibilityCSS:!0});for(const o of e)if(!(r?!o.checkVisibility({checkVisibilityCSS:!0}):Hf(o,{upTo:t})))return o}Wt(Bi,"findVisible");function Hf(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}Wt(Hf,"isHidden");function jf(e){return e instanceof HTMLInputElement&&"select"in e}Wt(jf,"isSelectableInput");function Qr(e,{select:t=!1}={}){if(e&&e.focus){const r=document.activeElement;e.focus({preventScroll:!0}),e!==r&&jf(e)&&t&&e.select()}}Wt(Qr,"focus");var qf=Yf();function Yf(){let e=[];return{add(t){const r=e[0];t!==r&&(r==null||r.pause()),e=Ui(e,t),e.unshift(t)},remove(t){var r;e=Ui(e,t),(r=e[0])==null||r.resume()}}}Wt(Yf,"createFocusScopesStack");function Ui(e,t){const r=[...e],o=r.indexOf(t);return o!==-1&&r.splice(o,1),r}Wt(Ui,"arrayRemove");function Qf(e){return e.filter(t=>t.tagName!=="A")}Wt(Qf,"removeLinks");var ot=globalThis!=null&&globalThis.document?S.useLayoutEffect:()=>{},fS=Object.defineProperty,pS=(e,t)=>fS(e,"name",{value:t,configurable:!0}),hS=S[" useId ".trim().toString()]||(()=>{}),mS=0;function br(e){const[t,r]=S.useState(hS());return ot(()=>{e||r(o=>o??String(mS++))},[e]),e||(t?`radix-${t}`:"")}pS(br,"useId");const gS=["top","right","bottom","left"],po=Math.min,Kr=Math.max,ia=Math.round,ca=Math.floor,Rr=e=>({x:e,y:e}),bS={left:"right",right:"left",bottom:"top",top:"bottom"};function Kf(e,t,r){return Kr(e,po(t,r))}function Xr(e,t){return typeof e=="function"?e(t):e}function ho(e){return e.split("-")[0]}function sn(e){return e.split("-")[1]}function Wi(e){return e==="x"?"y":"x"}function Hi(e){return e==="y"?"height":"width"}function $r(e){const t=e[0];return t==="t"||t==="b"?"y":"x"}function ji(e){return Wi($r(e))}function yS(e,t,r){r===void 0&&(r=!1);const o=sn(e),n=ji(e),s=Hi(n);let a=n==="x"?o===(r?"end":"start")?"right":"left":o==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(a=da(a)),[a,da(a)]}function vS(e){const t=da(e);return[qi(e),t,qi(t)]}function qi(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}const Rf=["left","right"],Xf=["right","left"],xS=["top","bottom"],wS=["bottom","top"];function SS(e,t,r){switch(e){case"top":case"bottom":return r?t?Xf:Rf:t?Rf:Xf;case"left":case"right":return t?xS:wS;default:return[]}}function NS(e,t,r,o){const n=sn(e);let s=SS(ho(e),r==="start",o);return n&&(s=s.map(a=>a+"-"+n),t&&(s=s.concat(s.map(qi)))),s}function da(e){const t=ho(e);return bS[t]+e.slice(t.length)}function CS(e){var t,r,o,n;return{top:(t=e.top)!=null?t:0,right:(r=e.right)!=null?r:0,bottom:(o=e.bottom)!=null?o:0,left:(n=e.left)!=null?n:0}}function Jf(e){return typeof e!="number"?CS(e):{top:e,right:e,bottom:e,left:e}}function ua(e){const{x:t,y:r,width:o,height:n}=e;return{width:o,height:n,top:r,left:t,right:t+o,bottom:r+n,x:t,y:r}}function Zf(e,t,r){let{reference:o,floating:n}=e;const s=$r(t),a=ji(t),i=Hi(a),c=ho(t),d=s==="y",p=o.x+o.width/2-n.width/2,u=o.y+o.height/2-n.height/2,f=o[i]/2-n[i]/2;let h;switch(c){case"top":h={x:p,y:o.y-n.height};break;case"bottom":h={x:p,y:o.y+o.height};break;case"right":h={x:o.x+o.width,y:u};break;case"left":h={x:o.x-n.width,y:u};break;default:h={x:o.x,y:o.y}}const g=sn(t);return g&&(h[a]+=f*(g==="end"?1:-1)*(r&&d?-1:1)),h}async function ES(e,t){var r;t===void 0&&(t={});const{x:o,y:n,platform:s,rects:a,elements:i,strategy:c}=e,{boundary:d="clippingAncestors",rootBoundary:p="viewport",elementContext:u="floating",altBoundary:f=!1,padding:h=0}=Xr(t,e),g=Jf(h),b=i[f?u==="floating"?"reference":"floating":u],v=ua(await s.getClippingRect({element:(r=await(s.isElement==null?void 0:s.isElement(b)))==null||r?b:b.contextElement||await(s.getDocumentElement==null?void 0:s.getDocumentElement(i.floating)),boundary:d,rootBoundary:p,strategy:c})),N=u==="floating"?{x:o,y:n,width:a.floating.width,height:a.floating.height}:a.reference,x=await(s.getOffsetParent==null?void 0:s.getOffsetParent(i.floating)),w=await(s.isElement==null?void 0:s.isElement(x))&&await(s.getScale==null?void 0:s.getScale(x))||{x:1,y:1},C=ua(s.convertOffsetParentRelativeRectToViewportRelativeRect?await s.convertOffsetParentRelativeRectToViewportRelativeRect({elements:i,rect:N,offsetParent:x,strategy:c}):N);return{top:(v.top-C.top+g.top)/w.y,bottom:(C.bottom-v.bottom+g.bottom)/w.y,left:(v.left-C.left+g.left)/w.x,right:(C.right-v.right+g.right)/w.x}}const _S=50,kS=async(e,t,r)=>{const{placement:o="bottom",strategy:n="absolute",middleware:s=[],platform:a}=r,i=a.detectOverflow?a:{...a,detectOverflow:ES},c=await(a.isRTL==null?void 0:a.isRTL(t));let d=await a.getElementRects({reference:e,floating:t,strategy:n}),{x:p,y:u}=Zf(d,o,c),f=o,h=0;const g={};for(let y=0;y<s.length;y++){const b=s[y];if(!b)continue;const{name:v,fn:N}=b,{x,y:w,data:C,reset:E}=await N({x:p,y:u,initialPlacement:o,placement:f,strategy:n,middlewareData:g,rects:d,platform:i,elements:{reference:e,floating:t}});p=x??p,u=w??u,g[v]={...g[v],...C},E&&h<_S&&(h++,typeof E=="object"&&(E.placement&&(f=E.placement),E.rects&&(d=E.rects===!0?await a.getElementRects({reference:e,floating:t,strategy:n}):E.rects),{x:p,y:u}=Zf(d,f,c)),y=-1)}return{x:p,y:u,placement:f,strategy:n,middlewareData:g}},AS=e=>({name:"arrow",options:e,async fn(t){const{x:r,y:o,placement:n,rects:s,platform:a,elements:i,middlewareData:c}=t,{element:d,padding:p=0}=Xr(e,t)||{};if(d==null)return{};const u=Jf(p),f={x:r,y:o},h=ji(n),g=Hi(h),y=await a.getDimensions(d),b=h==="y",v=b?"top":"left",N=b?"bottom":"right",x=b?"clientHeight":"clientWidth",w=s.reference[g]+s.reference[h]-f[h]-s.floating[g],C=f[h]-s.reference[h],E=await(a.getOffsetParent==null?void 0:a.getOffsetParent(d));let k=E?E[x]:0;(!k||!await(a.isElement==null?void 0:a.isElement(E)))&&(k=i.floating[x]||s.floating[g]);const _=w/2-C/2,D=k/2-y[g]/2-1,A=po(u[v],D),I=po(u[N],D),T=k-y[g]-I,L=k/2-y[g]/2+_,F=Kf(A,L,T),B=!c.arrow&&sn(n)!=null&&L!==F&&s.reference[g]/2-(L<A?A:I)-y[g]/2<0,G=B?L<A?L-A:L-T:0;return{[h]:f[h]+G,data:{[h]:F,centerOffset:L-F-G,...B&&{alignmentOffset:G}},reset:B}}}),DS=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var r,o;const{placement:n,middlewareData:s,rects:a,initialPlacement:i,platform:c,elements:d}=t,{mainAxis:p=!0,crossAxis:u=!0,fallbackPlacements:f,fallbackStrategy:h="bestFit",fallbackAxisSideDirection:g="none",flipAlignment:y=!0,...b}=Xr(e,t);if((r=s.arrow)!=null&&r.alignmentOffset)return{};const v=ho(n),N=$r(i),x=ho(i)===i,w=await(c.isRTL==null?void 0:c.isRTL(d.floating)),C=f||(x||!y?[da(i)]:vS(i)),E=g!=="none";!f&&E&&C.push(...NS(i,y,g,w));const k=[i,...C],_=await c.detectOverflow(t,b),D=[];let A=((o=s.flip)==null?void 0:o.overflows)||[];if(p&&D.push(_[v]),u){const F=yS(n,a,w);D.push(_[F[0]],_[F[1]])}if(A=[...A,{placement:n,overflows:D}],!D.every(F=>F<=0)){var I,T;const F=(((I=s.flip)==null?void 0:I.index)||0)+1,B=k[F];if(B&&(!(u==="alignment"?N!==$r(B):!1)||A.every(H=>$r(H.placement)===N?H.overflows[0]>0:!0)))return{data:{index:F,overflows:A},reset:{placement:B}};let G=(T=A.filter(z=>z.overflows[0]<=0).sort((z,H)=>z.overflows[1]-H.overflows[1])[0])==null?void 0:T.placement;if(!G)switch(h){case"bestFit":{var L;const z=(L=A.filter(H=>{if(E){const V=$r(H.placement);return V===N||V==="y"}return!0}).map(H=>[H.placement,H.overflows.filter(V=>V>0).reduce((V,W)=>V+W,0)]).sort((H,V)=>H[1]-V[1])[0])==null?void 0:L[0];z&&(G=z);break}case"initialPlacement":G=i;break}if(n!==G)return{reset:{placement:G}}}return{}}}};function ep(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function tp(e){return gS.some(t=>e[t]>=0)}const $S=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:r,platform:o}=t,{strategy:n="referenceHidden",...s}=Xr(e,t);switch(n){case"referenceHidden":{const a=await o.detectOverflow(t,{...s,elementContext:"reference"}),i=ep(a,r.reference);return{data:{referenceHiddenOffsets:i,referenceHidden:tp(i)}}}case"escaped":{const a=await o.detectOverflow(t,{...s,altBoundary:!0}),i=ep(a,r.floating);return{data:{escapedOffsets:i,escaped:tp(i)}}}default:return{}}}}},rp=new Set(["left","top"]);async function TS(e,t){const{placement:r,platform:o,elements:n}=e,s=await(o.isRTL==null?void 0:o.isRTL(n.floating)),a=ho(r),i=sn(r),c=$r(r)==="y",d=rp.has(a)?-1:1,p=s&&c?-1:1,u=Xr(t,e);let{mainAxis:f,crossAxis:h,alignmentAxis:g}=typeof u=="number"?{mainAxis:u,crossAxis:0,alignmentAxis:null}:{mainAxis:u.mainAxis||0,crossAxis:u.crossAxis||0,alignmentAxis:u.alignmentAxis};return i&&typeof g=="number"&&(h=i==="end"?g*-1:g),c?{x:h*p,y:f*d}:{x:f*d,y:h*p}}const PS=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var r,o;const{x:n,y:s,placement:a,middlewareData:i}=t,c=await TS(t,e);return a===((r=i.offset)==null?void 0:r.placement)&&(o=i.arrow)!=null&&o.alignmentOffset?{}:{x:n+c.x,y:s+c.y,data:{...c,placement:a}}}}},IS=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:r,y:o,placement:n,platform:s}=t,{mainAxis:a=!0,crossAxis:i=!1,limiter:c={fn:N=>{let{x,y:w}=N;return{x,y:w}}},...d}=Xr(e,t),p={x:r,y:o},u=await s.detectOverflow(t,d),f=$r(n),h=Wi(f);let g=p[h],y=p[f];const b=(N,x)=>Kf(x+u[N==="y"?"top":"left"],x,x-u[N==="y"?"bottom":"right"]);a&&(g=b(h,g)),i&&(y=b(f,y));const v=c.fn({...t,[h]:g,[f]:y});return{...v,data:{x:v.x-r,y:v.y-o,enabled:{[h]:a,[f]:i}}}}}},OS=function(e){return e===void 0&&(e={}),{options:e,fn(t){var r,o;const{x:n,y:s,placement:a,rects:i,middlewareData:c}=t,{offset:d=0,mainAxis:p=!0,crossAxis:u=!0}=Xr(e,t),f={x:n,y:s},h=$r(a),g=Wi(h);let y=f[g],b=f[h];const v=Xr(d,t),N=typeof v=="number"?{mainAxis:v,crossAxis:0}:{mainAxis:(r=v.mainAxis)!=null?r:0,crossAxis:(o=v.crossAxis)!=null?o:0};if(p){const C=g==="y"?"height":"width",E=i.reference[g]-i.floating[C]+N.mainAxis,k=i.reference[g]+i.reference[C]-N.mainAxis;y<E?y=E:y>k&&(y=k)}if(u){var x,w;const C=g==="y"?"width":"height",E=rp.has(ho(a)),k=i.reference[h]-i.floating[C]+(E&&((x=c.offset)==null?void 0:x[h])||0)+(E?0:N.crossAxis),_=i.reference[h]+i.reference[C]+(E?0:((w=c.offset)==null?void 0:w[h])||0)-(E?N.crossAxis:0);b<k?b=k:b>_&&(b=_)}return{[g]:y,[h]:b}}}},MS=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:r,rects:o,platform:n,elements:s}=t,{apply:a=()=>{},...i}=Xr(e,t),c=await n.detectOverflow(t,i),d=ho(r),p=sn(r),u=$r(r)==="y",{width:f,height:h}=o.floating;let g,y;d==="top"||d==="bottom"?(g=d,y=p===(await(n.isRTL==null?void 0:n.isRTL(s.floating))?"start":"end")?"left":"right"):(y=d,g=p==="end"?"top":"bottom");const b=h-c.top-c.bottom,v=f-c.left-c.right,N=po(h-c[g],b),x=po(f-c[y],v),w=t.middlewareData.shift,C=!w;let E=N,k=x;w!=null&&w.enabled.x&&(k=v),w!=null&&w.enabled.y&&(E=b),C&&!p&&(u?k=f-2*Kr(c.left,c.right):E=h-2*Kr(c.top,c.bottom)),await a({...t,availableWidth:k,availableHeight:E});const _=await n.getDimensions(s.floating);return f!==_.width||h!==_.height?{reset:{rects:!0}}:{}}}};function fa(){return typeof window<"u"}function an(e){return op(e)?(e.nodeName||"").toLowerCase():"#document"}function jt(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Jr(e){var t;return(t=(op(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function op(e){return fa()?e instanceof Node||e instanceof jt(e).Node:!1}function Tr(e){return fa()?e instanceof Element||e instanceof jt(e).Element:!1}function mo(e){return fa()?e instanceof HTMLElement||e instanceof jt(e).HTMLElement:!1}function np(e){return!fa()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof jt(e).ShadowRoot}function pa(e){const{overflow:t,overflowX:r,overflowY:o,display:n}=Pr(e);return/auto|scroll|overlay|hidden|clip/.test(t+o+r)&&n!=="inline"&&n!=="contents"}function LS(e){return/^(table|td|th)$/.test(an(e))}function ha(e){try{if(e.matches(":popover-open"))return!0}catch{}try{return e.matches(":modal")}catch{return!1}}const FS=/transform|translate|scale|rotate|perspective|filter/,VS=/paint|layout|strict|content/,Po=e=>!!e&&e!=="none";let Yi;function Qi(e){const t=Tr(e)?Pr(e):e;return Po(t.transform)||Po(t.translate)||Po(t.scale)||Po(t.rotate)||Po(t.perspective)||!Ki()&&(Po(t.backdropFilter)||Po(t.filter))||FS.test(t.willChange||"")||VS.test(t.contain||"")}function GS(e){let t=Io(e);for(;mo(t)&&!Gn(t);){if(Qi(t))return t;if(ha(t))return null;t=Io(t)}return null}function Ki(){return Yi==null&&(Yi=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),Yi}function Gn(e){return/^(html|body|#document)$/.test(an(e))}function Pr(e){return jt(e).getComputedStyle(e)}function ma(e){return Tr(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Io(e){if(an(e)==="html")return e;const t=e.assignedSlot||e.parentNode||np(e)&&e.host||Jr(e);return np(t)?t.host:t}function sp(e){const t=Io(e);return Gn(t)?(e.ownerDocument||e).body:mo(t)&&pa(t)?t:sp(t)}function zn(e,t,r){var o;t===void 0&&(t=[]),r===void 0&&(r=!0);const n=sp(e),s=n===((o=e.ownerDocument)==null?void 0:o.body),a=jt(n);if(s){const i=Ri(a);return t.concat(a,a.visualViewport||[],pa(n)?n:[],i&&r?zn(i):[])}else return t.concat(n,zn(n,[],r))}function Ri(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function ap(e){const t=Pr(e);let r=parseFloat(t.width)||0,o=parseFloat(t.height)||0;const n=mo(e),s=n?e.offsetWidth:r,a=n?e.offsetHeight:o,i=ia(r)!==s||ia(o)!==a;return i&&(r=s,o=a),{width:r,height:o,$:i}}function Xi(e){return Tr(e)?e:e.contextElement}function ln(e){const t=Xi(e);if(!mo(t))return Rr(1);const r=t.getBoundingClientRect(),{width:o,height:n,$:s}=ap(t);let a=(s?ia(r.width):r.width)/o,i=(s?ia(r.height):r.height)/n;return(!a||!Number.isFinite(a))&&(a=1),(!i||!Number.isFinite(i))&&(i=1),{x:a,y:i}}const zS=Rr(0);function lp(e){const t=jt(e);return!Ki()||!t.visualViewport?zS:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function BS(e,t,r){return t===void 0&&(t=!1),!!r&&t&&r===jt(e)}function Oo(e,t,r,o){t===void 0&&(t=!1),r===void 0&&(r=!1);const n=e.getBoundingClientRect(),s=Xi(e);let a=Rr(1);t&&(o?Tr(o)&&(a=ln(o)):a=ln(e));const i=BS(s,r,o)?lp(s):Rr(0);let c=(n.left+i.x)/a.x,d=(n.top+i.y)/a.y,p=n.width/a.x,u=n.height/a.y;if(s&&o){const f=jt(s),h=Tr(o)?jt(o):o;let g=f,y=Ri(g);for(;y&&h!==g;){const b=ln(y),v=y.getBoundingClientRect(),N=Pr(y),x=v.left+(y.clientLeft+parseFloat(N.paddingLeft))*b.x,w=v.top+(y.clientTop+parseFloat(N.paddingTop))*b.y;c*=b.x,d*=b.y,p*=b.x,u*=b.y,c+=x,d+=w,g=jt(y),y=Ri(g)}}return ua({width:p,height:u,x:c,y:d})}function ga(e,t){const r=ma(e).scrollLeft;return t?t.left+r:Oo(Jr(e)).left+r}function ip(e,t){const r=e.getBoundingClientRect(),o=r.left+t.scrollLeft-ga(e,r),n=r.top+t.scrollTop;return{x:o,y:n}}function US(e){let{elements:t,rect:r,offsetParent:o,strategy:n}=e;const s=n==="fixed",a=Jr(o),i=t?ha(t.floating):!1;if(o===a||i&&s)return r;let c={scrollLeft:0,scrollTop:0},d=Rr(1);const p=Rr(0),u=mo(o);if((u||!s)&&((an(o)!=="body"||pa(a))&&(c=ma(o)),u)){const h=Oo(o);d=ln(o),p.x=h.x+o.clientLeft,p.y=h.y+o.clientTop}const f=a&&!u&&!s?ip(a,c):Rr(0);return{width:r.width*d.x,height:r.height*d.y,x:r.x*d.x-c.scrollLeft*d.x+p.x+f.x,y:r.y*d.y-c.scrollTop*d.y+p.y+f.y}}function WS(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function HS(e){const t=ma(e),r=e.ownerDocument.body,o=Kr(e.scrollWidth,e.clientWidth,r.scrollWidth,r.clientWidth),n=Kr(e.scrollHeight,e.clientHeight,r.scrollHeight,r.clientHeight);let s=-t.scrollLeft+ga(e);const a=-t.scrollTop;return Pr(r).direction==="rtl"&&(s+=Kr(e.clientWidth,r.clientWidth)-o),{width:o,height:n,x:s,y:a}}const jS=25;function qS(e,t,r){r===void 0&&(r="viewport");const o=r==="layoutViewport",n=jt(e),s=Jr(e),a=n.visualViewport;let i=s.clientWidth,c=s.clientHeight,d=0,p=0;if(a){const f=!Ki()||t==="fixed";o?f||(d=-a.offsetLeft,p=-a.offsetTop):(i=a.width,c=a.height,f&&(d=a.offsetLeft,p=a.offsetTop))}if(ga(s)<=0){const f=s.ownerDocument,h=f.body,g=getComputedStyle(h),y=f.compatMode==="CSS1Compat"&&parseFloat(g.marginLeft)+parseFloat(g.marginRight)||0,b=Math.abs(s.clientWidth-h.clientWidth-y),v=getComputedStyle(s).scrollbarGutter==="stable both-edges"?b/2:b;v<=jS&&(i-=v)}return{width:i,height:c,x:d,y:p}}function YS(e,t){const r=Oo(e,!0,t==="fixed"),o=r.top+e.clientTop,n=r.left+e.clientLeft,s=ln(e),a=e.clientWidth*s.x,i=e.clientHeight*s.y,c=n*s.x,d=o*s.y;return{width:a,height:i,x:c,y:d}}function cp(e,t,r){let o;if(t==="viewport"||t==="layoutViewport")o=qS(e,r,t);else if(t==="document")o=HS(Jr(e));else if(Tr(t))o=YS(t,r);else{const n=lp(e);o={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return ua(o)}function QS(e,t){const r=t.get(e);if(r)return r;let o=zn(e,[],!1).filter(i=>Tr(i)&&an(i)!=="body"),n=null;const s=Pr(e).position==="fixed";let a=s?Io(e):e;for(;Tr(a)&&!Gn(a);){const i=Pr(a),c=Qi(a),d=n?n.position:s?"fixed":"";!c&&(d==="fixed"||d==="absolute"&&i.position==="static")?o=o.filter(u=>u!==a):n=i,a=Io(a)}return t.set(e,o),o}function KS(e){let{element:t,boundary:r,rootBoundary:o,strategy:n}=e;const a=[...r==="clippingAncestors"?ha(t)?[]:QS(t,this._c):[].concat(r),o],i=cp(t,a[0],n);let c=i.top,d=i.right,p=i.bottom,u=i.left;for(let f=1;f<a.length;f++){const h=cp(t,a[f],n);c=Kr(h.top,c),d=po(h.right,d),p=po(h.bottom,p),u=Kr(h.left,u)}return{width:d-u,height:p-c,x:u,y:c}}function RS(e){const{width:t,height:r}=ap(e);return{width:t,height:r}}function XS(e,t,r){const o=mo(t),n=Jr(t),s=r==="fixed",a=Oo(e,!0,s,t);let i={scrollLeft:0,scrollTop:0};const c=Rr(0);if((o||!s)&&((an(t)!=="body"||pa(n))&&(i=ma(t)),o)){const f=Oo(t,!0,s,t);c.x=f.x+t.clientLeft,c.y=f.y+t.clientTop}!o&&n&&(c.x=ga(n));const d=n&&!o&&!s?ip(n,i):Rr(0),p=a.left+i.scrollLeft-c.x-d.x,u=a.top+i.scrollTop-c.y-d.y;return{x:p,y:u,width:a.width,height:a.height}}function Ji(e){return Pr(e).position==="static"}function dp(e,t){if(!mo(e)||Pr(e).position==="fixed")return null;if(t)return t(e);let r=e.offsetParent;return Jr(e)===r&&(r=r.ownerDocument.body),r}function up(e,t){const r=jt(e);if(ha(e))return r;if(!mo(e)){let n=Io(e);for(;n&&!Gn(n);){if(Tr(n)&&!Ji(n))return n;n=Io(n)}return r}let o=dp(e,t);for(;o&&LS(o)&&Ji(o);)o=dp(o,t);return o&&Gn(o)&&Ji(o)&&!Qi(o)?r:o||GS(e)||r}const JS=async function(e){const t=this.getOffsetParent||up,r=this.getDimensions,o=await r(e.floating);return{reference:XS(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function ZS(e){return Pr(e).direction==="rtl"}const eN={convertOffsetParentRelativeRectToViewportRelativeRect:US,getDocumentElement:Jr,getClippingRect:KS,getOffsetParent:up,getElementRects:JS,getClientRects:WS,getDimensions:RS,getScale:ln,isElement:Tr,isRTL:ZS};function fp(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function tN(e,t,r){let o=null,n;const s=Jr(e);function a(){var p;clearTimeout(n),(p=o)==null||p.disconnect(),o=null}function i(p,u){p===void 0&&(p=!1),u===void 0&&(u=1),a();const f=e.getBoundingClientRect(),{left:h,top:g,width:y,height:b}=f;if(p||t(),!y||!b)return;const v=ca(g),N=ca(s.clientWidth-(h+y)),x=ca(s.clientHeight-(g+b)),w=ca(h),E={rootMargin:-v+"px "+-N+"px "+-x+"px "+-w+"px",threshold:Kr(0,po(1,u))||1};let k=!0;function _(D){const A=D[0].intersectionRatio;if(!fp(f,e.getBoundingClientRect()))return i();if(A!==u){if(!k)return i();A?i(!1,A):n=setTimeout(()=>{i(!1,1e-7)},1e3)}k=!1}try{o=new IntersectionObserver(_,{...E,root:s.ownerDocument})}catch{o=new IntersectionObserver(_,E)}o.observe(e)}const c=jt(e),d=()=>i(r);return c.addEventListener("resize",d),i(!0),()=>{c.removeEventListener("resize",d),a()}}function rN(e,t,r,o){o===void 0&&(o={});const{ancestorScroll:n=!0,ancestorResize:s=!0,elementResize:a=typeof ResizeObserver=="function",layoutShift:i=typeof IntersectionObserver=="function",animationFrame:c=!1}=o,d=Xi(e),p=n||s?[...d?zn(d):[],...t?zn(t):[]]:[];p.forEach(v=>{n&&v.addEventListener("scroll",r),s&&v.addEventListener("resize",r)});const u=d&&i?tN(d,r,s):null;let f=-1,h=null;a&&(h=new ResizeObserver(v=>{let[N]=v;N&&N.target===d&&h&&t&&(h.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var x;(x=h)==null||x.observe(t)})),r()}),d&&!c&&h.observe(d),t&&h.observe(t));let g,y=c?Oo(e):null;c&&b();function b(){const v=Oo(e);y&&!fp(y,v)&&r(),y=v,g=requestAnimationFrame(b)}return r(),()=>{var v;p.forEach(N=>{n&&N.removeEventListener("scroll",r),s&&N.removeEventListener("resize",r)}),u==null||u(),(v=h)==null||v.disconnect(),h=null,c&&cancelAnimationFrame(g)}}const oN=PS,nN=IS,sN=DS,aN=MS,lN=$S,pp=AS,iN=OS,cN=(e,t,r)=>{const o=new Map,n=r??{},s={...eN,...n.platform,_c:o};return kS(e,t,{...n,platform:s})};var dN=typeof document<"u",uN=function(){},ba=dN?P.useLayoutEffect:uN;function ya(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let r,o,n;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(r=e.length,r!==t.length)return!1;for(o=r;o--!==0;)if(!ya(e[o],t[o]))return!1;return!0}if(n=Object.keys(e),r=n.length,r!==Object.keys(t).length)return!1;for(o=r;o--!==0;)if(!{}.hasOwnProperty.call(t,n[o]))return!1;for(o=r;o--!==0;){const s=n[o];if(!(s==="_owner"&&e.$$typeof)&&!ya(e[s],t[s]))return!1}return!0}return e!==e&&t!==t}function hp(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function mp(e,t){const r=hp(e);return Math.round(t*r)/r}function Zi(e){const t=S.useRef(e);return ba(()=>{t.current=e}),t}function fN(e){e===void 0&&(e={});const{placement:t="bottom",strategy:r="absolute",middleware:o=[],platform:n,elements:{reference:s,floating:a}={},transform:i=!0,whileElementsMounted:c,open:d}=e,[p,u]=S.useState({x:0,y:0,strategy:r,placement:t,middlewareData:{},isPositioned:!1}),[f,h]=S.useState(o);ya(f,o)||h(o);const[g,y]=S.useState(null),[b,v]=S.useState(null),N=S.useCallback(H=>{H!==E.current&&(E.current=H,y(H))},[]),x=S.useCallback(H=>{H!==k.current&&(k.current=H,v(H))},[]),w=s||g,C=a||b,E=S.useRef(null),k=S.useRef(null),_=S.useRef(p),D=c!=null,A=Zi(c),I=Zi(n),T=Zi(d),L=S.useCallback(()=>{if(!E.current||!k.current)return;const H={placement:t,strategy:r,middleware:f};I.current&&(H.platform=I.current),cN(E.current,k.current,H).then(V=>{const W={...V,isPositioned:T.current!==!1};F.current&&!ya(_.current,W)&&(_.current=W,Tn.flushSync(()=>{u(W)}))})},[f,t,r,I,T]);ba(()=>{d===!1&&_.current.isPositioned&&(_.current.isPositioned=!1,u(H=>({...H,isPositioned:!1})))},[d]);const F=S.useRef(!1);ba(()=>(F.current=!0,()=>{F.current=!1}),[]),ba(()=>{if(w&&(E.current=w),C&&(k.current=C),w&&C){if(A.current)return A.current(w,C,L);L()}},[w,C,L,A,D]);const B=S.useMemo(()=>({reference:E,floating:k,setReference:N,setFloating:x}),[N,x]),G=S.useMemo(()=>({reference:w,floating:C}),[w,C]),z=S.useMemo(()=>{const H={position:r,left:0,top:0};if(!G.floating)return H;const V=mp(G.floating,p.x),W=mp(G.floating,p.y);return i?{...H,transform:"translate("+V+"px, "+W+"px)",...hp(G.floating)>=1.5&&{willChange:"transform"}}:{position:r,left:V,top:W}},[r,i,G.floating,p.x,p.y]);return S.useMemo(()=>({...p,update:L,refs:B,elements:G,floatingStyles:z}),[p,L,B,G,z])}const pN=e=>{function t(r){return{}.hasOwnProperty.call(r,"current")}return{name:"arrow",options:e,fn(r){const{element:o,padding:n}=typeof e=="function"?e(r):e;return o&&t(o)?o.current!=null?pp({element:o.current,padding:n}).fn(r):{}:o?pp({element:o,padding:n}).fn(r):{}}}},hN=(e,t)=>{const r=oN(e);return{name:r.name,fn:r.fn,options:[e,t]}},mN=(e,t)=>{const r=nN(e);return{name:r.name,fn:r.fn,options:[e,t]}},gN=(e,t)=>({fn:iN(e).fn,options:[e,t]}),bN=(e,t)=>{const r=sN(e);return{name:r.name,fn:r.fn,options:[e,t]}},yN=(e,t)=>{const r=aN(e);return{name:r.name,fn:r.fn,options:[e,t]}},vN=(e,t)=>{const r=lN(e);return{name:r.name,fn:r.fn,options:[e,t]}},xN=(e,t)=>{const r=pN(e);return{name:r.name,fn:r.fn,options:[e,t]}};var wN=Object.defineProperty,SN=(e,t)=>wN(e,"name",{value:t,configurable:!0});function ec(e){const[t,r]=S.useState(void 0);return ot(()=>{if(e){r({width:e.offsetWidth,height:e.offsetHeight});const o=new ResizeObserver(n=>{if(!Array.isArray(n)||!n.length)return;const s=n[0];let a,i;if("borderBoxSize"in s){const c=s.borderBoxSize,d=Array.isArray(c)?c[0]:c;a=d.inlineSize,i=d.blockSize}else a=e.offsetWidth,i=e.offsetHeight;r({width:a,height:i})});return o.observe(e,{box:"border-box"}),()=>o.unobserve(e)}else r(void 0)},[e]),t}SN(ec,"useSize");var NN=Object.defineProperty,go=(e,t)=>NN(e,"name",{value:t,configurable:!0}),gp="Popper",[bp,va]=sr(gp),[CN,yp]=bp(gp),EN=go(e=>{const{__scopePopper:t,children:r}=e,[o,n]=S.useState(null),[s,a]=S.useState(void 0);return l.jsx(CN,{scope:t,anchor:o,onAnchorChange:n,placementState:s,setPlacementState:a,children:r})},"Popper"),_N="PopperAnchor",kN=S.forwardRef(go(function(t,r){const{__scopePopper:o,virtualRef:n,...s}=t,a=yp(_N,o),i=S.useRef(null),c=a.onAnchorChange,d=S.useCallback(y=>{i.current=y,y&&c(y)},[c]),p=Ue(r,d),u=S.useRef(null);S.useEffect(()=>{if(!n)return;const y=u.current;u.current=n.current,y!==u.current&&c(u.current)});const f=a.placementState&&xa(a.placementState),h=f==null?void 0:f[0],g=f==null?void 0:f[1];return n?null:l.jsx(Ie.div,{"data-radix-popper-side":h,"data-radix-popper-align":g,...s,ref:p})},"PopperAnchor")),vp="PopperContent",[AN,vI]=bp(vp),DN=S.forwardRef(go(function(t,r){var re,Ae,we,ue,J,ne,fe;const{__scopePopper:o,side:n="bottom",sideOffset:s=0,align:a="center",alignOffset:i=0,arrowPadding:c=0,avoidCollisions:d=!0,collisionBoundary:p=[],collisionPadding:u=0,sticky:f="partial",hideWhenDetached:h=!1,updatePositionStrategy:g="optimized",onPlaced:y,...b}=t,v=yp(vp,o),[N,x]=S.useState(null),w=Ue(r,x),[C,E]=S.useState(null),k=ec(C),_=(k==null?void 0:k.width)??0,D=(k==null?void 0:k.height)??0,A=n+(a!=="center"?"-"+a:""),I=typeof u=="number"?u:{top:0,right:0,bottom:0,left:0,...u},T=Array.isArray(p)?p:[p],L=T.length>0,F={padding:I,boundary:T.filter(xp),altBoundary:L},{refs:B,floatingStyles:G,placement:z,isPositioned:H,middlewareData:V}=fN({strategy:"fixed",placement:A,whileElementsMounted:go((...ke)=>rN(...ke,{animationFrame:g==="always"}),"whileElementsMounted"),elements:{reference:v.anchor},middleware:[hN({mainAxis:s+D,alignmentAxis:i}),d&&mN({mainAxis:!0,crossAxis:!1,limiter:f==="partial"?gN():void 0,...F}),d&&bN({...F}),yN({...F,apply:go(({elements:ke,rects:Re,availableWidth:rt,availableHeight:st})=>{const{width:Xe,height:Ee}=Re.reference,yt=ke.floating.style;yt.setProperty("--radix-popper-available-width",`${rt}px`),yt.setProperty("--radix-popper-available-height",`${st}px`),yt.setProperty("--radix-popper-anchor-width",`${Xe}px`),yt.setProperty("--radix-popper-anchor-height",`${Ee}px`)},"apply")}),C&&xN({element:C,padding:c}),$N({arrowWidth:_,arrowHeight:D}),h&&vN({strategy:"referenceHidden",...F,boundary:L?F.boundary:void 0})]}),W=v.setPlacementState;ot(()=>(W(z),()=>{W(void 0)}),[z,W]);const[pe,U]=xa(z),Q=gr(y);ot(()=>{H&&(Q==null||Q())},[H,Q]);const Ce=(re=V.arrow)==null?void 0:re.x,oe=(Ae=V.arrow)==null?void 0:Ae.y,ye=((we=V.arrow)==null?void 0:we.centerOffset)!==0,[R,ce]=S.useState();return ot(()=>{N&&ce(window.getComputedStyle(N).zIndex)},[N]),l.jsx("div",{ref:B.setFloating,"data-radix-popper-content-wrapper":"",style:{...G,transform:H?G.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:R,"--radix-popper-transform-origin":[(ue=V.transformOrigin)==null?void 0:ue.x,(J=V.transformOrigin)==null?void 0:J.y].join(" "),...((ne=V.hide)==null?void 0:ne.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:t.dir,children:l.jsx(AN,{scope:o,placedSide:pe,placedAlign:U,onArrowChange:E,arrowX:Ce,arrowY:oe,shouldHideArrow:ye,children:l.jsx(Ie.div,{"data-side":pe,"data-align":U,...b,ref:w,style:{...b.style,animation:H?(fe=b.style)==null?void 0:fe.animation:"none"}})})})},"PopperContent"));function xp(e){return e!==null}go(xp,"isNotNull");var $N=go(e=>({name:"transformOrigin",options:e,fn(t){var b,v,N;const{placement:r,rects:o,middlewareData:n}=t,a=((b=n.arrow)==null?void 0:b.centerOffset)!==0,i=a?0:e.arrowWidth,c=a?0:e.arrowHeight,[d,p]=xa(r),u={start:"0%",center:"50%",end:"100%"}[p],f=(((v=n.arrow)==null?void 0:v.x)??0)+i/2,h=(((N=n.arrow)==null?void 0:N.y)??0)+c/2;let g="",y="";return d==="bottom"?(g=a?u:`${f}px`,y=`${-c}px`):d==="top"?(g=a?u:`${f}px`,y=`${o.floating.height+c}px`):d==="right"?(g=`${-c}px`,y=a?u:`${h}px`):d==="left"&&(g=`${o.floating.width+c}px`,y=a?u:`${h}px`),{data:{x:g,y}}}}),"transformOrigin");function xa(e){const[t,r="center"]=e.split("-");return[t,r]}go(xa,"getSideAndAlignFromPlacement");var wp=EN,Sp=kN,Np=DN,TN=Object.defineProperty,PN=(e,t)=>TN(e,"name",{value:t,configurable:!0}),tc=S.forwardRef(PN(function(t,r){var c;const{container:o,...n}=t,[s,a]=S.useState(!1);ot(()=>a(!0),[]);const i=o||s&&((c=globalThis==null?void 0:globalThis.document)==null?void 0:c.body);return i?Tn.createPortal(l.jsx(Ie.div,{...n,ref:r}),i):null},"Portal")),IN=Object.defineProperty,Zr=(e,t)=>IN(e,"name",{value:t,configurable:!0});function Cp(e,t){return S.useReducer((r,o)=>t[r][o]??r,e)}Zr(Cp,"useStateMachine");var eo=Zr(e=>{const{present:t,children:r}=e,o=Ep(t),n=typeof r=="function"?r({present:o.isPresent}):S.Children.only(r),s=_p(o.ref,kp(n));return typeof r=="function"||o.isPresent?S.cloneElement(n,{ref:s}):null},"Presence");function Ep(e){const[t,r]=S.useState(),o=S.useRef(null),n=S.useRef(e),s=S.useRef("none"),a=S.useRef(void 0),i=e?"mounted":"unmounted",[c,d]=Cp(i,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return S.useEffect(()=>{c==="mounted"?(s.current=a.current??cn(o.current),a.current=void 0):s.current="none"},[c]),ot(()=>{const p=o.current,u=n.current;if(u!==e){const h=s.current,g=cn(p);e?(a.current=g,d("MOUNT")):g==="none"||(p==null?void 0:p.display)==="none"?d("UNMOUNT"):d(u&&h!==g?"ANIMATION_OUT":"UNMOUNT"),n.current=e}},[e,d]),ot(()=>{if(t){let p;const u=t.ownerDocument.defaultView??window,f=Zr(g=>{const b=cn(o.current).includes(CSS.escape(g.animationName));if(g.target===t&&b&&(d("ANIMATION_END"),!n.current)){const v=t.style.animationFillMode;t.style.animationFillMode="forwards",p=u.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=v)})}},"handleAnimationEnd"),h=Zr(g=>{g.target===t&&(s.current=cn(o.current))},"handleAnimationStart");return t.addEventListener("animationstart",h),t.addEventListener("animationcancel",f),t.addEventListener("animationend",f),()=>{u.clearTimeout(p),t.removeEventListener("animationstart",h),t.removeEventListener("animationcancel",f),t.removeEventListener("animationend",f)}}else d("ANIMATION_END")},[t,d]),{isPresent:["mounted","unmountSuspended"].includes(c),ref:S.useCallback(p=>{if(p){const u=getComputedStyle(p);o.current=u,a.current=cn(u)}else o.current=null;r(p)},[])}}Zr(Ep,"usePresence");function rc(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}Zr(rc,"setRef");function _p(...e){const t=S.useRef(e);return t.current=e,S.useCallback(r=>{const o=t.current;let n=!1;const s=o.map(a=>{const i=rc(a,r);return!n&&typeof i=="function"&&(n=!0),i});if(n)return()=>{for(let a=0;a<s.length;a++){const i=s[a];typeof i=="function"?i():rc(o[a],null)}}},[])}Zr(_p,"useStableComposedRefs");function cn(e){return(e==null?void 0:e.animationName)||"none"}Zr(cn,"getAnimationName");function kp(e){var o,n;let t=(o=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:o.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=(n=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:n.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}Zr(kp,"getElementRef");var ON=Object.defineProperty,MN=(e,t)=>ON(e,"name",{value:t,configurable:!0}),Ap=S[" useEffectEvent ".trim().toString()],Dp=S[" useInsertionEffect ".trim().toString()];function $p(e){if(typeof Ap=="function")return Ap(e);const t=S.useRef(()=>{throw new Error("Cannot call an event handler while rendering.")});return typeof Dp=="function"?Dp(()=>{t.current=e}):ot(()=>{t.current=e}),S.useMemo(()=>((...r)=>{var o;return(o=t.current)==null?void 0:o.call(t,...r)}),[])}MN($p,"useEffectEvent");var LN=Object.defineProperty,Bn=(e,t)=>LN(e,"name",{value:t,configurable:!0}),FN=S[" useInsertionEffect ".trim().toString()]||ot;function yr({prop:e,defaultProp:t,onChange:r=Bn(()=>{},"onChange"),caller:o}){const[n,s,a]=Tp({defaultProp:t,onChange:r}),i=e!==void 0,c=i?e:n,d=S.useCallback(p=>{var u;if(i){const f=Pp(p)?p(e):p;f!==e&&((u=a.current)==null||u.call(a,f))}else s(p)},[i,e,s,a]);return[c,d]}Bn(yr,"useControllableState");function Tp({defaultProp:e,onChange:t}){const[r,o]=S.useState(e),n=S.useRef(r),s=S.useRef(t);return FN(()=>{s.current=t},[t]),S.useEffect(()=>{var a;n.current!==r&&((a=s.current)==null||a.call(s,r),n.current=r)},[r,n]),[r,o,s]}Bn(Tp,"useUncontrolledState");function Pp(e){return typeof e=="function"}Bn(Pp,"isFunction");var Ip=Symbol("RADIX:SYNC_STATE");function VN(e,t,r,o){const{prop:n,defaultProp:s,onChange:a,caller:i}=t,c=n!==void 0,d=$p(a),p=[{...r,state:s}];o&&p.push(o);const[u,f]=S.useReducer((b,v)=>{if(v.type===Ip)return{...b,state:v.state};const N=e(b,v);return c&&!Object.is(N.state,b.state)&&d(N.state),N},...p),h=u.state,g=S.useRef(h);S.useEffect(()=>{g.current!==h&&(g.current=h,c||d(h))},[h,g,c]);const y=S.useMemo(()=>n!==void 0?{...u,state:n}:u,[u,n]);return S.useEffect(()=>{c&&!Object.is(n,u.state)&&f({type:Ip,state:n})},[n,u.state,c]),[y,f]}Bn(VN,"useControllableStateReducer");var GN=Object.defineProperty,zN=(e,t)=>GN(e,"name",{value:t,configurable:!0});function Op(e){const t=S.useRef({value:e,previous:e});return S.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}zN(Op,"usePrevious");var BN=Object.defineProperty,UN=(e,t)=>BN(e,"name",{value:t,configurable:!0}),Mp=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),WN=S.forwardRef(UN(function(t,r){return l.jsx(Ie.span,{...t,ref:r,style:{...Mp,...t.style}})},"VisuallyHidden")),HN=WN,jN=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},dn=new WeakMap,wa=new WeakMap,Sa={},oc=0,Lp=function(e){return e&&(e.host||Lp(e.parentNode))},qN=function(e,t){return t.map(function(r){if(e.contains(r))return r;var o=Lp(r);return o&&e.contains(o)?o:(console.error("aria-hidden",r,"in not contained inside",e,". Doing nothing"),null)}).filter(function(r){return!!r})},YN=function(e,t,r,o){var n=qN(t,Array.isArray(e)?e:[e]);Sa[r]||(Sa[r]=new WeakMap);var s=Sa[r],a=[],i=new Set,c=new Set(n),d=function(u){!u||i.has(u)||(i.add(u),d(u.parentNode))};n.forEach(d);var p=function(u){!u||c.has(u)||Array.prototype.forEach.call(u.children,function(f){if(i.has(f))p(f);else try{var h=f.getAttribute(o),g=h!==null&&h!=="false",y=(dn.get(f)||0)+1,b=(s.get(f)||0)+1;dn.set(f,y),s.set(f,b),a.push(f),y===1&&g&&wa.set(f,!0),b===1&&f.setAttribute(r,"true"),g||f.setAttribute(o,"true")}catch(v){console.error("aria-hidden: cannot operate on ",f,v)}})};return p(t),i.clear(),oc++,function(){a.forEach(function(u){var f=dn.get(u)-1,h=s.get(u)-1;dn.set(u,f),s.set(u,h),f||(wa.has(u)||u.removeAttribute(o),wa.delete(u)),h||u.removeAttribute(r)}),oc--,oc||(dn=new WeakMap,dn=new WeakMap,wa=new WeakMap,Sa={})}},Fp=function(e,t,r){r===void 0&&(r="data-aria-hidden");var o=Array.from(Array.isArray(e)?e:[e]),n=jN(e);return n?(o.push.apply(o,Array.from(n.querySelectorAll("[aria-live], script"))),YN(o,n,r,"aria-hidden")):function(){return null}},Ir=function(){return Ir=Object.assign||function(t){for(var r,o=1,n=arguments.length;o<n;o++){r=arguments[o];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(t[s]=r[s])}return t},Ir.apply(this,arguments)};function Vp(e,t){var r={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,o=Object.getOwnPropertySymbols(e);n<o.length;n++)t.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n])&&(r[o[n]]=e[o[n]]);return r}function QN(e,t,r){if(r||arguments.length===2)for(var o=0,n=t.length,s;o<n;o++)(s||!(o in t))&&(s||(s=Array.prototype.slice.call(t,0,o)),s[o]=t[o]);return e.concat(s||Array.prototype.slice.call(t))}typeof SuppressedError=="function"&&SuppressedError;var Na="right-scroll-bar-position",Ca="width-before-scroll-bar",KN="with-scroll-bars-hidden",RN="--removed-body-scroll-bar-size";function nc(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function XN(e,t){var r=P.useState(function(){return{value:e,callback:t,facade:{get current(){return r.value},set current(o){var n=r.value;n!==o&&(r.value=o,r.callback(o,n))}}}})[0];return r.callback=t,r.facade}var JN=typeof window<"u"?S.useLayoutEffect:S.useEffect,Gp=new WeakMap;function ZN(e,t){var r=XN(null,function(o){return e.forEach(function(n){return nc(n,o)})});return JN(function(){var o=Gp.get(r);if(o){var n=new Set(o),s=new Set(e),a=r.current;n.forEach(function(i){s.has(i)||nc(i,null)}),s.forEach(function(i){n.has(i)||nc(i,a)})}Gp.set(r,e)},[e]),r}function eC(e){return e}function tC(e,t){t===void 0&&(t=eC);var r=[],o=!1,n={read:function(){if(o)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:e},useMedium:function(s){var a=t(s,o);return r.push(a),function(){r=r.filter(function(i){return i!==a})}},assignSyncMedium:function(s){for(o=!0;r.length;){var a=r;r=[],a.forEach(s)}r={push:function(i){return s(i)},filter:function(){return r}}},assignMedium:function(s){o=!0;var a=[];if(r.length){var i=r;r=[],i.forEach(s),a=r}var c=function(){var p=a;a=[],p.forEach(s)},d=function(){return Promise.resolve().then(c)};d(),r={push:function(p){a.push(p),d()},filter:function(p){return a=a.filter(p),r}}}};return n}function rC(e){e===void 0&&(e={});var t=tC(null);return t.options=Ir({async:!0,ssr:!1},e),t}var zp=function(e){var t=e.sideCar,r=Vp(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var o=t.read();if(!o)throw new Error("Sidecar medium not found");return S.createElement(o,Ir({},r))};zp.isSideCarExport=!0;function oC(e,t){return e.useMedium(t),zp}var Bp=rC(),sc=function(){},Ea=S.forwardRef(function(e,t){var r=S.useRef(null),o=S.useState({onScrollCapture:sc,onWheelCapture:sc,onTouchMoveCapture:sc}),n=o[0],s=o[1],a=e.forwardProps,i=e.children,c=e.className,d=e.removeScrollBar,p=e.enabled,u=e.shards,f=e.sideCar,h=e.noRelative,g=e.noIsolation,y=e.inert,b=e.allowPinchZoom,v=e.as,N=v===void 0?"div":v,x=e.gapMode,w=Vp(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),C=f,E=ZN([r,t]),k=Ir(Ir({},w),n);return S.createElement(S.Fragment,null,p&&S.createElement(C,{sideCar:Bp,removeScrollBar:d,shards:u,noRelative:h,noIsolation:g,inert:y,setCallbacks:s,allowPinchZoom:!!b,lockRef:r,gapMode:x}),a?S.cloneElement(S.Children.only(i),Ir(Ir({},k),{ref:E})):S.createElement(N,Ir({},k,{className:c,ref:E}),i))});Ea.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},Ea.classNames={fullWidth:Ca,zeroRight:Na};var nC=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function sC(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=nC();return t&&e.setAttribute("nonce",t),e}function aC(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function lC(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var iC=function(){var e=0,t=null;return{add:function(r){e==0&&(t=sC())&&(aC(t,r),lC(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},cC=function(){var e=iC();return function(t,r){S.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&r])}},Up=function(){var e=cC(),t=function(r){var o=r.styles,n=r.dynamic;return e(o,n),null};return t},dC={left:0,top:0,right:0,gap:0},ac=function(e){return parseInt(e||"",10)||0},uC=function(e){var t=window.getComputedStyle(document.body),r=t[e==="padding"?"paddingLeft":"marginLeft"],o=t[e==="padding"?"paddingTop":"marginTop"],n=t[e==="padding"?"paddingRight":"marginRight"];return[ac(r),ac(o),ac(n)]},fC=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return dC;var t=uC(e),r=document.documentElement.clientWidth,o=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,o-r+t[2]-t[0])}},pC=Up(),un="data-scroll-locked",hC=function(e,t,r,o){var n=e.left,s=e.top,a=e.right,i=e.gap;return r===void 0&&(r="margin"),`
2
+ .`.concat(KN,` {
3
3
  overflow: hidden `).concat(o,`;
4
4
  padding-right: `).concat(i,"px ").concat(o,`;
5
5
  }
6
- body[`).concat(Uo,`] {
6
+ body[`).concat(un,`] {
7
7
  overflow: hidden `).concat(o,`;
8
8
  overscroll-behavior: contain;
9
9
  `).concat([t&&"position: relative ".concat(o,";"),r==="margin"&&`
10
10
  padding-left: `.concat(n,`px;
11
- padding-top: `).concat(a,`px;
12
- padding-right: `).concat(s,`px;
11
+ padding-top: `).concat(s,`px;
12
+ padding-right: `).concat(a,`px;
13
13
  margin-left:0;
14
14
  margin-top:0;
15
15
  margin-right: `).concat(i,"px ").concat(o,`;
16
16
  `),r==="padding"&&"padding-right: ".concat(i,"px ").concat(o,";")].filter(Boolean).join(""),`
17
17
  }
18
18
 
19
- .`).concat(Ba,` {
19
+ .`).concat(Na,` {
20
20
  right: `).concat(i,"px ").concat(o,`;
21
21
  }
22
22
 
23
- .`).concat(Ua,` {
23
+ .`).concat(Ca,` {
24
24
  margin-right: `).concat(i,"px ").concat(o,`;
25
25
  }
26
26
 
27
- .`).concat(Ba," .").concat(Ba,` {
27
+ .`).concat(Na," .").concat(Na,` {
28
28
  right: 0 `).concat(o,`;
29
29
  }
30
30
 
31
- .`).concat(Ua," .").concat(Ua,` {
31
+ .`).concat(Ca," .").concat(Ca,` {
32
32
  margin-right: 0 `).concat(o,`;
33
33
  }
34
34
 
35
- body[`).concat(Uo,`] {
36
- `).concat(Q0,": ").concat(i,`px;
35
+ body[`).concat(un,`] {
36
+ `).concat(RN,": ").concat(i,`px;
37
37
  }
38
- `)},Gp=function(){var e=parseInt(document.body.getAttribute(Uo)||"0",10);return isFinite(e)?e:0},fC=function(){v.useEffect(function(){return document.body.setAttribute(Uo,(Gp()+1).toString()),function(){var e=Gp()-1;e<=0?document.body.removeAttribute(Uo):document.body.setAttribute(Uo,e.toString())}},[])},hC=function(e){var t=e.noRelative,r=e.noImportant,o=e.gapMode,n=o===void 0?"margin":o;fC();var a=v.useMemo(function(){return dC(n)},[n]);return v.createElement(uC,{styles:pC(a,!t,n,r?"":"!important")})},Si=!1;if(typeof window<"u")try{var Ha=Object.defineProperty({},"passive",{get:function(){return Si=!0,!0}});window.addEventListener("test",Ha,Ha),window.removeEventListener("test",Ha,Ha)}catch{Si=!1}var Wo=Si?{passive:!1}:!1,mC=function(e){return e.tagName==="TEXTAREA"},Vp=function(e,t){if(!(e instanceof Element))return!1;var r=window.getComputedStyle(e);return r[t]!=="hidden"&&!(r.overflowY===r.overflowX&&!mC(e)&&r[t]==="visible")},gC=function(e){return Vp(e,"overflowY")},bC=function(e){return Vp(e,"overflowX")},zp=function(e,t){var r=t.ownerDocument,o=t;do{typeof ShadowRoot<"u"&&o instanceof ShadowRoot&&(o=o.host);var n=Bp(e,o);if(n){var a=Up(e,o),s=a[1],i=a[2];if(s>i)return!0}o=o.parentNode}while(o&&o!==r.body);return!1},yC=function(e){var t=e.scrollTop,r=e.scrollHeight,o=e.clientHeight;return[t,r,o]},vC=function(e){var t=e.scrollLeft,r=e.scrollWidth,o=e.clientWidth;return[t,r,o]},Bp=function(e,t){return e==="v"?gC(t):bC(t)},Up=function(e,t){return e==="v"?yC(t):vC(t)},xC=function(e,t){return e==="h"&&t==="rtl"?-1:1},wC=function(e,t,r,o,n){var a=xC(e,window.getComputedStyle(t).direction),s=a*o,i=r.target,c=t.contains(i),d=!1,f=s>0,u=0,h=0;do{if(!i)break;var m=Up(e,i),g=m[0],y=m[1],b=m[2],C=y-b-a*g;(g||C)&&Bp(e,i)&&(u+=C,h+=g);var w=i.parentNode;i=w&&w.nodeType===Node.DOCUMENT_FRAGMENT_NODE?w.host:w}while(!c&&i!==document.body||c&&(t.contains(i)||t===i));return(f&&Math.abs(u)<1||!f&&Math.abs(h)<1)&&(d=!0),d},ja=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},Wp=function(e){return[e.deltaX,e.deltaY]},Hp=function(e){return e&&"current"in e?e.current:e},CC=function(e,t){return e[0]===t[0]&&e[1]===t[1]},SC=function(e){return`
38
+ `)},Wp=function(){var e=parseInt(document.body.getAttribute(un)||"0",10);return isFinite(e)?e:0},mC=function(){S.useEffect(function(){return document.body.setAttribute(un,(Wp()+1).toString()),function(){var e=Wp()-1;e<=0?document.body.removeAttribute(un):document.body.setAttribute(un,e.toString())}},[])},gC=function(e){var t=e.noRelative,r=e.noImportant,o=e.gapMode,n=o===void 0?"margin":o;mC();var s=S.useMemo(function(){return fC(n)},[n]);return S.createElement(pC,{styles:hC(s,!t,n,r?"":"!important")})},lc=!1;if(typeof window<"u")try{var _a=Object.defineProperty({},"passive",{get:function(){return lc=!0,!0}});window.addEventListener("test",_a,_a),window.removeEventListener("test",_a,_a)}catch{lc=!1}var fn=lc?{passive:!1}:!1,bC=function(e){return e.tagName==="TEXTAREA"},Hp=function(e,t){if(!(e instanceof Element))return!1;var r=window.getComputedStyle(e);return r[t]!=="hidden"&&!(r.overflowY===r.overflowX&&!bC(e)&&r[t]==="visible")},yC=function(e){return Hp(e,"overflowY")},vC=function(e){return Hp(e,"overflowX")},jp=function(e,t){var r=t.ownerDocument,o=t;do{typeof ShadowRoot<"u"&&o instanceof ShadowRoot&&(o=o.host);var n=qp(e,o);if(n){var s=Yp(e,o),a=s[1],i=s[2];if(a>i)return!0}o=o.parentNode}while(o&&o!==r.body);return!1},xC=function(e){var t=e.scrollTop,r=e.scrollHeight,o=e.clientHeight;return[t,r,o]},wC=function(e){var t=e.scrollLeft,r=e.scrollWidth,o=e.clientWidth;return[t,r,o]},qp=function(e,t){return e==="v"?yC(t):vC(t)},Yp=function(e,t){return e==="v"?xC(t):wC(t)},SC=function(e,t){return e==="h"&&t==="rtl"?-1:1},NC=function(e,t,r,o,n){var s=SC(e,window.getComputedStyle(t).direction),a=s*o,i=r.target,c=t.contains(i),d=!1,p=a>0,u=0,f=0;do{if(!i)break;var h=Yp(e,i),g=h[0],y=h[1],b=h[2],v=y-b-s*g;(g||v)&&qp(e,i)&&(u+=v,f+=g);var N=i.parentNode;i=N&&N.nodeType===Node.DOCUMENT_FRAGMENT_NODE?N.host:N}while(!c&&i!==document.body||c&&(t.contains(i)||t===i));return(p&&Math.abs(u)<1||!p&&Math.abs(f)<1)&&(d=!0),d},ka=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},Qp=function(e){return[e.deltaX,e.deltaY]},Kp=function(e){return e&&"current"in e?e.current:e},CC=function(e,t){return e[0]===t[0]&&e[1]===t[1]},EC=function(e){return`
39
39
  .block-interactivity-`.concat(e,` {pointer-events: none;}
40
40
  .allow-interactivity-`).concat(e,` {pointer-events: all;}
41
- `)},NC=0,Ho=[];function EC(e){var t=v.useRef([]),r=v.useRef([0,0]),o=v.useRef(),n=v.useState(NC++)[0],a=v.useState($p)[0],s=v.useRef(e);v.useEffect(function(){s.current=e},[e]),v.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(n));var y=Y0([e.lockRef.current],(e.shards||[]).map(Hp),!0).filter(Boolean);return y.forEach(function(b){return b.classList.add("allow-interactivity-".concat(n))}),function(){document.body.classList.remove("block-interactivity-".concat(n)),y.forEach(function(b){return b.classList.remove("allow-interactivity-".concat(n))})}}},[e.inert,e.lockRef.current,e.shards]);var i=v.useCallback(function(y,b){if("touches"in y&&y.touches.length===2||y.type==="wheel"&&y.ctrlKey)return!s.current.allowPinchZoom;var C=ja(y),w=r.current,x="deltaX"in y?y.deltaX:w[0]-C[0],S="deltaY"in y?y.deltaY:w[1]-C[1],N,E=y.target,M=Math.abs(x)>Math.abs(S)?"h":"v";if("touches"in y&&M==="h"&&E.type==="range")return!1;var k=window.getSelection(),T=k&&k.anchorNode,A=T?T===E||T.contains(E):!1;if(A)return!1;var L=zp(M,E);if(!L)return!0;if(L?N=M:(N=M==="v"?"h":"v",L=zp(M,E)),!L)return!1;if(!o.current&&"changedTouches"in y&&(x||S)&&(o.current=N),!N)return!0;var O=o.current||N;return wC(O,b,y,O==="h"?x:S)},[]),c=v.useCallback(function(y){var b=y;if(!(!Ho.length||Ho[Ho.length-1]!==a)){var C="deltaY"in b?Wp(b):ja(b),w=t.current.filter(function(N){return N.name===b.type&&(N.target===b.target||b.target===N.shadowParent)&&CC(N.delta,C)})[0];if(w&&w.should){b.cancelable&&b.preventDefault();return}if(!w){var x=(s.current.shards||[]).map(Hp).filter(Boolean).filter(function(N){return N.contains(b.target)}),S=x.length>0?i(b,x[0]):!s.current.noIsolation;S&&b.cancelable&&b.preventDefault()}}},[]),d=v.useCallback(function(y,b,C,w){var x={name:y,delta:b,target:C,should:w,shadowParent:kC(C)};t.current.push(x),setTimeout(function(){t.current=t.current.filter(function(S){return S!==x})},1)},[]),f=v.useCallback(function(y){r.current=ja(y),o.current=void 0},[]),u=v.useCallback(function(y){d(y.type,Wp(y),y.target,i(y,e.lockRef.current))},[]),h=v.useCallback(function(y){d(y.type,ja(y),y.target,i(y,e.lockRef.current))},[]);v.useEffect(function(){return Ho.push(a),e.setCallbacks({onScrollCapture:u,onWheelCapture:u,onTouchMoveCapture:h}),document.addEventListener("wheel",c,Wo),document.addEventListener("touchmove",c,Wo),document.addEventListener("touchstart",f,Wo),function(){Ho=Ho.filter(function(y){return y!==a}),document.removeEventListener("wheel",c,Wo),document.removeEventListener("touchmove",c,Wo),document.removeEventListener("touchstart",f,Wo)}},[]);var m=e.removeScrollBar,g=e.inert;return v.createElement(v.Fragment,null,g?v.createElement(a,{styles:SC(n)}):null,m?v.createElement(hC,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function kC(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const _C=tC(Fp,EC);var jp=v.forwardRef(function(e,t){return v.createElement(Wa,yr({},e,{ref:t,sideCar:_C}))});jp.classNames=Wa.classNames;var DC=Object.defineProperty,Ae=(e,t)=>DC(e,"name",{value:t,configurable:!0}),AC=[" ","Enter","ArrowUp","ArrowDown"],TC=[" ","Enter"],jo="Select",[Ya,qa,IC]=Sa(jo),[mo,iT]=rr(jo,[IC,$a]),Ni=$a(),[PC,Kr]=mo(jo),[MC,OC]=mo(jo);function Yp(e){const{__scopeSelect:t,children:r,open:o,defaultOpen:n,onOpenChange:a,value:s,defaultValue:i,onValueChange:c,dir:d,name:f,autoComplete:u,disabled:h,required:m,form:g,internal_do_not_use_render:y}=e,b=Ni(t),[C,w]=v.useState(null),[x,S]=v.useState(null),[N,E]=v.useState(!1),M=hn(d),[k,T]=br({prop:o,defaultProp:n??!1,onChange:a,caller:jo}),[A,L]=br({prop:s,defaultProp:i,onChange:c,caller:jo}),O=v.useRef(null),F=v.useRef(A);v.useEffect(()=>{const $=g?C==null?void 0:C.ownerDocument.getElementById(g):C==null?void 0:C.form;if($ instanceof HTMLFormElement){const q=Ae(()=>L(F.current),"reset");return $.addEventListener("reset",q),()=>$.removeEventListener("reset",q)}},[g,C,L]);const V=C?!!g||!!C.closest("form"):!0,[re,K]=v.useState(new Set),H=Hr(),ee=Array.from(re).map($=>$.props.value).join(";"),G=v.useCallback($=>{K(q=>new Set(q).add($))},[]),z=v.useCallback($=>{K(q=>{const xe=new Set(q);return xe.delete($),xe})},[]),Ce={required:m,trigger:C,onTriggerChange:w,valueNode:x,onValueNodeChange:S,valueNodeHasChildren:N,onValueNodeHasChildrenChange:E,contentId:H,value:A,onValueChange:L,open:k,onOpenChange:T,dir:M,triggerPointerDownPosRef:O,disabled:h,name:f,autoComplete:u,form:g,nativeOptions:re,nativeSelectKey:ee,isFormControl:V};return l.jsx(gp,{...b,children:l.jsx(PC,{scope:t,...Ce,children:l.jsx(Ya.Provider,{scope:t,children:l.jsx(MC,{scope:t,onNativeOptionAdd:G,onNativeOptionRemove:z,children:lf(y)?y(Ce):r})})})})}Ae(Yp,"SelectProvider");var LC=Ae(e=>{const{__scopeSelect:t,children:r,...o}=e;return l.jsx(Yp,{__scopeSelect:t,...o,internal_do_not_use_render:({isFormControl:n})=>l.jsxs(l.Fragment,{children:[r,n?l.jsx(nS,{__scopeSelect:t}):null]})})},"Select"),FC="SelectTrigger",qp=v.forwardRef(Ae(function(t,r){const{__scopeSelect:o,disabled:n=!1,...a}=t,s=Ni(o),i=Kr(FC,o),c=i.disabled||n,d=ze(r,i.onTriggerChange),f=qa(o),u=v.useRef("touch"),[h,m,g]=_i(b=>{const C=f().filter(S=>!S.disabled),w=C.find(S=>S.value===i.value),x=Di(C,b,w);x!==void 0&&i.onValueChange(x.value)}),y=Ae(b=>{c||(i.onOpenChange(!0),g()),b&&(i.triggerPointerDownPosRef.current={x:Math.round(b.pageX),y:Math.round(b.pageY)})},"handleOpen");return l.jsx(bp,{asChild:!0,...s,children:l.jsx(Ie.button,{type:"button",role:"combobox","aria-controls":i.open?i.contentId:void 0,"aria-expanded":i.open,"aria-required":i.required,"aria-autocomplete":"none",dir:i.dir,"data-state":i.open?"open":"closed",disabled:c,"data-disabled":c?"":void 0,"data-placeholder":yn(i.value)?"":void 0,...a,ref:d,onClick:we(a.onClick,b=>{b.currentTarget.focus(),u.current!=="mouse"&&y(b)}),onPointerDown:we(a.onPointerDown,b=>{u.current=b.pointerType;const C=b.target;C.hasPointerCapture(b.pointerId)&&C.releasePointerCapture(b.pointerId),b.button===0&&b.ctrlKey===!1&&b.pointerType==="mouse"&&(y(b),b.preventDefault())}),onKeyDown:we(a.onKeyDown,b=>{const C=h.current!=="";!(b.ctrlKey||b.altKey||b.metaKey)&&b.key.length===1&&m(b.key),!(C&&b.key===" ")&&AC.includes(b.key)&&(y(),b.preventDefault())})})})},"SelectTrigger")),$C="SelectValue",GC=v.forwardRef(Ae(function(t,r){const{__scopeSelect:o,className:n,style:a,children:s,placeholder:i="",...c}=t,d=Kr($C,o),{onValueNodeHasChildrenChange:f}=d,u=s!==void 0,h=ze(r,d.onValueNodeChange);nt(()=>{f(u)},[f,u]);const m=yn(d.value);return l.jsx(Ie.span,{...c,asChild:m?!1:c.asChild,ref:h,style:{pointerEvents:"none"},children:l.jsx(v.Fragment,{children:m?i:s},m?"placeholder":"value")})},"SelectValue")),VC=v.forwardRef(Ae(function(t,r){const{__scopeSelect:o,children:n,...a}=t;return l.jsx(Ie.span,{"aria-hidden":!0,...a,ref:r,children:n||"▼"})},"SelectIcon")),zC="SelectPortal",[BC,UC]=mo(zC,{forceMount:void 0}),WC=Ae(e=>{const{__scopeSelect:t,forceMount:r,...o}=e;return l.jsx(BC,{scope:e.__scopeSelect,forceMount:r,children:l.jsx(vp,{asChild:!0,...o})})},"SelectPortal"),go="SelectContent",Qp=v.forwardRef(Ae(function(t,r){const o=UC(go,t.__scopeSelect),{forceMount:n=o.forceMount,...a}=t,s=Kr(go,t.__scopeSelect),[i,c]=v.useState();return nt(()=>{c(new DocumentFragment)},[]),l.jsx(Vo,{present:n||s.open,children:({present:d})=>d?l.jsx(YC,{...a,ref:r}):l.jsx(HC,{...a,fragment:i})})},"SelectContent")),HC=v.forwardRef(Ae(function(t,r){const{__scopeSelect:o,children:n,fragment:a}=t;return a?sn.createPortal(l.jsx(Kp,{scope:o,children:l.jsx(Ya.Slot,{scope:o,children:l.jsx("div",{ref:r,children:n})})}),a):null},"SelectContentFragment")),ar=10,[Kp,bo]=mo(go),jC=Wr("SelectContent.RemoveScroll"),YC=v.forwardRef(Ae(function(t,r){const{__scopeSelect:o}=t,{position:n="item-aligned",onCloseAutoFocus:a,onEscapeKeyDown:s,onPointerDownOutside:i,side:c,sideOffset:d,align:f,alignOffset:u,arrowPadding:h,collisionBoundary:m,collisionPadding:g,sticky:y,hideWhenDetached:b,avoidCollisions:C,...w}=t,x=Kr(go,o),[S,N]=v.useState(null),[E,M]=v.useState(null),k=ze(r,N),[T,A]=v.useState(null),[L,O]=v.useState(null),F=qa(o),[V,re]=v.useState(!1),K=v.useRef(!1);v.useEffect(()=>{if(S)return j0(S)},[S]),Rl();const H=v.useCallback(ce=>{const[te,...Ne]=F().map(X=>X.ref.current),[be]=Ne.slice(-1),ue=document.activeElement;for(const X of ce)if(X===ue||(X==null||X.scrollIntoView({block:"nearest"}),X===te&&E&&(E.scrollTop=0),X===be&&E&&(E.scrollTop=E.scrollHeight),X==null||X.focus(),document.activeElement!==ue))return},[F,E]),ee=v.useCallback(()=>H([T,S]),[H,T,S]);v.useEffect(()=>{V&&ee()},[V,ee]);const{onOpenChange:G,triggerPointerDownPosRef:z}=x;v.useEffect(()=>{if(S){let ce={x:0,y:0};const te=Ae(be=>{var ue,X;ce={x:Math.abs(Math.round(be.pageX)-(((ue=z.current)==null?void 0:ue.x)??0)),y:Math.abs(Math.round(be.pageY)-(((X=z.current)==null?void 0:X.y)??0))}},"handlePointerMove"),Ne=Ae(be=>{ce.x<=10&&ce.y<=10?be.preventDefault():be.composedPath().includes(S)||G(!1),document.removeEventListener("pointermove",te),z.current=null},"handlePointerUp");return z.current!==null&&(document.addEventListener("pointermove",te),document.addEventListener("pointerup",Ne,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",te),document.removeEventListener("pointerup",Ne,{capture:!0})}}},[S,G,z]),v.useEffect(()=>{const ce=Ae(()=>G(!1),"close");return window.addEventListener("blur",ce),window.addEventListener("resize",ce),()=>{window.removeEventListener("blur",ce),window.removeEventListener("resize",ce)}},[G]);const[Ce,$]=_i(ce=>{const te=F().filter(ue=>!ue.disabled),Ne=te.find(ue=>ue.ref.current===document.activeElement),be=Di(te,ce,Ne);be&&setTimeout(()=>{var ue;return(ue=be.ref.current)==null?void 0:ue.focus()})}),q=v.useCallback((ce,te,Ne)=>{const be=!K.current&&!Ne;(x.value!==void 0&&x.value===te||be)&&(A(ce),be&&(K.current=!0))},[x.value]),xe=v.useCallback(()=>S==null?void 0:S.focus(),[S]),oe=v.useCallback((ce,te,Ne)=>{const be=!K.current&&!Ne;(x.value!==void 0&&x.value===te||be)&&O(ce)},[x.value]),he=n==="popper"?Xp:qC,Y=he===Xp?{side:c,sideOffset:d,align:f,alignOffset:u,arrowPadding:h,collisionBoundary:m,collisionPadding:g,sticky:y,hideWhenDetached:b,avoidCollisions:C}:{};return l.jsx(Kp,{scope:o,content:S,viewport:E,onViewportChange:M,itemRefCallback:q,selectedItem:T,onItemLeave:xe,itemTextRefCallback:oe,focusSelectedItem:ee,selectedItemText:L,position:n,isPositioned:V,searchRef:Ce,children:l.jsx(jp,{as:jC,allowPinchZoom:!0,children:l.jsx(iw,{asChild:!0,trapped:x.open,onMountAutoFocus:ce=>{ce.preventDefault()},onUnmountAutoFocus:we(a,ce=>{var te;(te=x.trigger)==null||te.focus({preventScroll:!0}),ce.preventDefault()}),children:l.jsx(Mu,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:s,onPointerDownOutside:i,onFocusOutside:ce=>ce.preventDefault(),onDismiss:()=>x.onOpenChange(!1),children:l.jsx(he,{role:"listbox",id:x.contentId,"data-state":x.open?"open":"closed",dir:x.dir,onContextMenu:ce=>ce.preventDefault(),...w,...Y,onPlaced:()=>re(!0),ref:k,style:{display:"flex",flexDirection:"column",outline:"none",...w.style},onKeyDown:we(w.onKeyDown,ce=>{const te=ce.ctrlKey||ce.altKey||ce.metaKey;if(ce.key==="Tab"&&ce.preventDefault(),!te&&ce.key.length===1&&$(ce.key),["ArrowUp","ArrowDown","Home","End"].includes(ce.key)){let be=F().filter(ue=>!ue.disabled).map(ue=>ue.ref.current);if(["ArrowUp","End"].includes(ce.key)&&(be=be.slice().reverse()),["ArrowUp","ArrowDown"].includes(ce.key)){const ue=ce.target,X=be.indexOf(ue);be=be.slice(X+1)}setTimeout(()=>H(be)),ce.preventDefault()}})})})})})})},"SelectContentImpl")),qC=v.forwardRef(Ae(function(t,r){const{__scopeSelect:o,onPlaced:n,...a}=t,s=Kr(go,o),i=bo(go,o),[c,d]=v.useState(null),[f,u]=v.useState(null),h=ze(r,u),m=qa(o),g=v.useRef(!1),y=v.useRef(!0),{viewport:b,selectedItem:C,selectedItemText:w,focusSelectedItem:x}=i,S=v.useCallback(()=>{if(s.trigger&&s.valueNode&&c&&f&&b&&C&&w){const k=s.trigger.getBoundingClientRect(),T=f.getBoundingClientRect(),A=s.valueNode.getBoundingClientRect(),L=w.getBoundingClientRect();if(s.dir!=="rtl"){const ue=L.left-T.left,X=A.left-ue,ne=k.left-X,pe=k.width+ne,Se=Math.max(pe,T.width),je=window.innerWidth-ar,Je=Bl(X,[ar,Math.max(ar,je-Se)]);c.style.minWidth=pe+"px",c.style.left=Je+"px"}else{const ue=T.right-L.right,X=window.innerWidth-A.right-ue,ne=window.innerWidth-k.right-X,pe=k.width+ne,Se=Math.max(pe,T.width),je=window.innerWidth-ar,Je=Bl(X,[ar,Math.max(ar,je-Se)]);c.style.minWidth=pe+"px",c.style.right=Je+"px"}const O=m(),F=window.innerHeight-ar*2,V=b.scrollHeight,re=window.getComputedStyle(f),K=parseInt(re.borderTopWidth,10),H=parseInt(re.paddingTop,10),ee=parseInt(re.borderBottomWidth,10),G=parseInt(re.paddingBottom,10),z=K+H+V+G+ee,Ce=Math.min(C.offsetHeight*5,z),$=window.getComputedStyle(b),q=parseInt($.paddingTop,10),xe=parseInt($.paddingBottom,10),oe=k.top+k.height/2-ar,he=F-oe,Y=C.offsetHeight/2,ce=C.offsetTop+Y,te=K+H+ce,Ne=z-te;if(te<=oe){const ue=O.length>0&&C===O[O.length-1].ref.current;c.style.bottom="0px";const X=f.clientHeight-b.offsetTop-b.offsetHeight,ne=Math.max(he,Y+(ue?xe:0)+X+ee),pe=te+ne;c.style.height=pe+"px"}else{const ue=O.length>0&&C===O[0].ref.current;c.style.top="0px";const ne=Math.max(oe,K+b.offsetTop+(ue?q:0)+Y)+Ne;c.style.height=ne+"px",b.scrollTop=te-oe+b.offsetTop}c.style.margin=`${ar}px 0`,c.style.minHeight=Ce+"px",c.style.maxHeight=F+"px",n==null||n(),requestAnimationFrame(()=>g.current=!0)}},[m,s.trigger,s.valueNode,c,f,b,C,w,s.dir,n]);nt(()=>S(),[S]);const[N,E]=v.useState();nt(()=>{f&&E(window.getComputedStyle(f).zIndex)},[f]);const M=v.useCallback(k=>{k&&y.current===!0&&(S(),x==null||x(),y.current=!1)},[S,x]);return l.jsx(QC,{scope:o,contentWrapper:c,shouldExpandOnScrollRef:g,onScrollButtonChange:M,children:l.jsx("div",{ref:d,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:N},children:l.jsx(Ie.div,{...a,ref:h,style:{boxSizing:"border-box",maxHeight:"100%",...a.style}})})})},"SelectItemAlignedPosition")),Xp=v.forwardRef(Ae(function(t,r){const{__scopeSelect:o,align:n="start",collisionPadding:a=ar,...s}=t,i=Ni(o);return l.jsx(yp,{...i,...s,ref:r,align:n,collisionPadding:a,style:{boxSizing:"border-box",...s.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})},"SelectPopperPosition")),[QC,Ei]=mo(go,{}),Jp="SelectViewport",KC=v.forwardRef(Ae(function(t,r){const{__scopeSelect:o,nonce:n,...a}=t,s=bo(Jp,o),i=Ei(Jp,o),c=ze(r,s.onViewportChange),d=v.useRef(0);return l.jsxs(l.Fragment,{children:[l.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:n}),l.jsx(Ya.Slot,{scope:o,children:l.jsx(Ie.div,{"data-radix-select-viewport":"",role:"presentation",...a,ref:c,style:{position:"relative",flex:1,overflow:"hidden auto",...a.style},onScroll:we(a.onScroll,f=>{const u=f.currentTarget,{contentWrapper:h,shouldExpandOnScrollRef:m}=i;if(m!=null&&m.current&&h){const g=Math.abs(d.current-u.scrollTop);if(g>0){const y=window.innerHeight-ar*2,b=parseFloat(h.style.minHeight),C=parseFloat(h.style.height),w=Math.max(b,C);if(w<y){const x=w+g,S=Math.min(y,x),N=x-S;h.style.height=S+"px",h.style.bottom==="0px"&&(u.scrollTop=N>0?N:0,h.style.justifyContent="flex-end")}}}d.current=u.scrollTop})})})]})},"SelectViewport")),XC="SelectGroup",[cT,JC]=mo(XC),ZC="SelectLabel",Zp=v.forwardRef(Ae(function(t,r){const{__scopeSelect:o,...n}=t,a=JC(ZC,o);return l.jsx(Ie.div,{id:a.id,...n,ref:r})},"SelectLabel")),ki="SelectItem",[RC,Rp]=mo(ki),ef=v.forwardRef(Ae(function(t,r){const{__scopeSelect:o,value:n,disabled:a=!1,textValue:s,...i}=t,c=Kr(ki,o),d=bo(ki,o),f=c.value===n,[u,h]=v.useState(s??""),[m,g]=v.useState(!1),y=nr(S=>{var N;return(N=d.itemRefCallback)==null?void 0:N.call(d,S,n,a)}),b=ze(r,y),C=Hr(),w=v.useRef("touch"),x=Ae(()=>{a||(c.onValueChange(n),c.onOpenChange(!1))},"handleSelect");return l.jsx(RC,{scope:o,value:n,disabled:a,textId:C,isSelected:f,onItemTextChange:v.useCallback(S=>{h(N=>N||((S==null?void 0:S.textContent)??"").trim())},[]),children:l.jsx(Ya.ItemSlot,{scope:o,value:n,disabled:a,textValue:u,children:l.jsx(Ie.div,{role:"option","aria-labelledby":C,"data-highlighted":m?"":void 0,"aria-selected":f&&m,"data-state":f?"checked":"unchecked","aria-disabled":a||void 0,"data-disabled":a?"":void 0,tabIndex:a?void 0:-1,...i,ref:b,onFocus:we(i.onFocus,()=>g(!0)),onBlur:we(i.onBlur,()=>g(!1)),onClick:we(i.onClick,()=>{w.current!=="mouse"&&x()}),onPointerUp:we(i.onPointerUp,()=>{w.current==="mouse"&&x()}),onPointerDown:we(i.onPointerDown,S=>{w.current=S.pointerType}),onPointerMove:we(i.onPointerMove,S=>{var N;w.current=S.pointerType,a?(N=d.onItemLeave)==null||N.call(d):w.current==="mouse"&&S.currentTarget.focus({preventScroll:!0})}),onPointerLeave:we(i.onPointerLeave,S=>{var N;S.currentTarget===document.activeElement&&((N=d.onItemLeave)==null||N.call(d))}),onKeyDown:we(i.onKeyDown,S=>{var E;a||S.target!==S.currentTarget||((E=d.searchRef)==null?void 0:E.current)!==""&&S.key===" "||(TC.includes(S.key)&&x(),S.key===" "&&S.preventDefault())})})})})},"SelectItem")),Qa="SelectItemText",eS=v.forwardRef(Ae(function(t,r){const{__scopeSelect:o,className:n,style:a,...s}=t,i=Kr(Qa,o),c=bo(Qa,o),d=Rp(Qa,o),f=OC(Qa,o),[u,h]=v.useState(null),m=nr(x=>{var S;return(S=c.itemTextRefCallback)==null?void 0:S.call(c,x,d.value,d.disabled)}),g=ze(r,h,d.onItemTextChange,m),y=u==null?void 0:u.textContent,b=v.useMemo(()=>l.jsx("option",{value:d.value,disabled:d.disabled,children:y},d.value),[d.disabled,d.value,y]),{onNativeOptionAdd:C,onNativeOptionRemove:w}=f;return nt(()=>(C(b),()=>w(b)),[C,w,b]),l.jsxs(l.Fragment,{children:[l.jsx(Ie.span,{id:d.textId,...s,ref:g}),d.isSelected&&i.valueNode&&!i.valueNodeHasChildren&&!yn(i.value)?sn.createPortal(s.children,i.valueNode):null]})},"SelectItemText")),tS="SelectItemIndicator",rS=v.forwardRef(Ae(function(t,r){const{__scopeSelect:o,...n}=t;return Rp(tS,o).isSelected?l.jsx(Ie.span,{"aria-hidden":!0,...n,ref:r}):null},"SelectItemIndicator")),tf="SelectScrollUpButton",rf=v.forwardRef(Ae(function(t,r){const o=bo(tf,t.__scopeSelect),n=Ei(tf,t.__scopeSelect),[a,s]=v.useState(!1),i=ze(r,n.onScrollButtonChange);return nt(()=>{if(o.viewport&&o.isPositioned){let c=function(){const f=d.scrollTop>0;s(f)};Ae(c,"handleScroll");const d=o.viewport;return c(),d.addEventListener("scroll",c),()=>d.removeEventListener("scroll",c)}},[o.viewport,o.isPositioned]),a?l.jsx(af,{...t,ref:i,onAutoScroll:()=>{const{viewport:c,selectedItem:d}=o;c&&d&&(c.scrollTop=c.scrollTop-d.offsetHeight)}}):null},"SelectScrollUpButton")),of="SelectScrollDownButton",nf=v.forwardRef(Ae(function(t,r){const o=bo(of,t.__scopeSelect),n=Ei(of,t.__scopeSelect),[a,s]=v.useState(!1),i=ze(r,n.onScrollButtonChange);return nt(()=>{if(o.viewport&&o.isPositioned){let c=function(){const f=d.scrollHeight-d.clientHeight,u=Math.ceil(d.scrollTop)<f;s(u)};Ae(c,"handleScroll");const d=o.viewport;return c(),d.addEventListener("scroll",c),()=>d.removeEventListener("scroll",c)}},[o.viewport,o.isPositioned]),a?l.jsx(af,{...t,ref:i,onAutoScroll:()=>{const{viewport:c,selectedItem:d}=o;c&&d&&(c.scrollTop=c.scrollTop+d.offsetHeight)}}):null},"SelectScrollDownButton")),af=v.forwardRef(Ae(function(t,r){const{__scopeSelect:o,onAutoScroll:n,...a}=t,s=bo("SelectScrollButton",o),i=v.useRef(null),c=qa(o),d=v.useCallback(()=>{i.current!==null&&(window.clearInterval(i.current),i.current=null)},[]);return v.useEffect(()=>()=>d(),[d]),nt(()=>{var u;const f=c().find(h=>h.ref.current===document.activeElement);(u=f==null?void 0:f.ref.current)==null||u.scrollIntoView({block:"nearest"})},[c]),l.jsx(Ie.div,{"aria-hidden":!0,...a,ref:r,style:{flexShrink:0,...a.style},onPointerDown:we(a.onPointerDown,()=>{i.current===null&&(i.current=window.setInterval(n,50))}),onPointerMove:we(a.onPointerMove,()=>{var f;(f=s.onItemLeave)==null||f.call(s),i.current===null&&(i.current=window.setInterval(n,50))}),onPointerLeave:we(a.onPointerLeave,()=>{d()})})},"SelectScrollButtonImpl")),sf=v.forwardRef(Ae(function(t,r){const{__scopeSelect:o,...n}=t;return l.jsx(Ie.div,{"aria-hidden":!0,...n,ref:r})},"SelectSeparator")),oS="SelectBubbleInput",nS=v.forwardRef(Ae(function({__scopeSelect:t,...r},o){const n=Kr(oS,t),{value:a,onValueChange:s,required:i,disabled:c,name:d,autoComplete:f,form:u}=n,{nativeOptions:h,nativeSelectKey:m}=n,g=v.useRef(null),y=ze(o,g),b=a??"",C=Tp(b),w=Array.from(h).some(x=>(x.props.value??"")==="");return v.useEffect(()=>{const x=g.current;if(!x)return;const S=window.HTMLSelectElement.prototype,E=Object.getOwnPropertyDescriptor(S,"value").set;if(C!==b&&E){const M=new Event("change",{bubbles:!0});E.call(x,b),x.dispatchEvent(M)}},[C,b]),l.jsxs(Ie.select,{"aria-hidden":!0,required:i,tabIndex:-1,name:d,autoComplete:f,disabled:c,form:u,onChange:x=>s(x.target.value),...r,style:{...Ip,...r.style},ref:y,defaultValue:b,children:[yn(a)&&!w?l.jsx("option",{value:""}):null,Array.from(h)]},m)},"SelectBubbleInput"));function lf(e){return typeof e=="function"}Ae(lf,"isFunction");function yn(e){return e===""||e===void 0}Ae(yn,"shouldShowPlaceholder");function _i(e){const t=nr(e),r=v.useRef(""),o=v.useRef(0),n=v.useCallback(s=>{const i=r.current+s;t(i),Ae((function c(d){r.current=d,window.clearTimeout(o.current),d!==""&&(o.current=window.setTimeout(()=>c(""),1e3))}),"updateSearch")(i)},[t]),a=v.useCallback(()=>{r.current="",window.clearTimeout(o.current)},[]);return v.useEffect(()=>()=>window.clearTimeout(o.current),[]),[r,n,a]}Ae(_i,"useTypeaheadSearch");function Di(e,t,r){const n=t.length>1&&Array.from(t).every(d=>d===t[0])?t[0]:t,a=r?e.indexOf(r):-1;let s=cf(e,Math.max(a,0));n.length===1&&(s=s.filter(d=>d!==r));const c=s.find(d=>d.textValue.toLowerCase().startsWith(n.toLowerCase()));return c!==r?c:void 0}Ae(Di,"findNextItem");function cf(e,t){return e.map((r,o)=>e[(t+o)%e.length])}Ae(cf,"wrapArray");/**
41
+ `)},_C=0,pn=[];function kC(e){var t=S.useRef([]),r=S.useRef([0,0]),o=S.useRef(),n=S.useState(_C++)[0],s=S.useState(Up)[0],a=S.useRef(e);S.useEffect(function(){a.current=e},[e]),S.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(n));var y=QN([e.lockRef.current],(e.shards||[]).map(Kp),!0).filter(Boolean);return y.forEach(function(b){return b.classList.add("allow-interactivity-".concat(n))}),function(){document.body.classList.remove("block-interactivity-".concat(n)),y.forEach(function(b){return b.classList.remove("allow-interactivity-".concat(n))})}}},[e.inert,e.lockRef.current,e.shards]);var i=S.useCallback(function(y,b){if("touches"in y&&y.touches.length===2||y.type==="wheel"&&y.ctrlKey)return!a.current.allowPinchZoom;var v=ka(y),N=r.current,x="deltaX"in y?y.deltaX:N[0]-v[0],w="deltaY"in y?y.deltaY:N[1]-v[1],C,E=y.target,k=Math.abs(x)>Math.abs(w)?"h":"v";if("touches"in y&&k==="h"&&E.type==="range")return!1;var _=window.getSelection(),D=_&&_.anchorNode,A=D?D===E||D.contains(E):!1;if(A)return!1;var I=jp(k,E);if(!I)return!0;if(I?C=k:(C=k==="v"?"h":"v",I=jp(k,E)),!I)return!1;if(!o.current&&"changedTouches"in y&&(x||w)&&(o.current=C),!C)return!0;var T=o.current||C;return NC(T,b,y,T==="h"?x:w)},[]),c=S.useCallback(function(y){var b=y;if(!(!pn.length||pn[pn.length-1]!==s)){var v="deltaY"in b?Qp(b):ka(b),N=t.current.filter(function(C){return C.name===b.type&&(C.target===b.target||b.target===C.shadowParent)&&CC(C.delta,v)})[0];if(N&&N.should){b.cancelable&&b.preventDefault();return}if(!N){var x=(a.current.shards||[]).map(Kp).filter(Boolean).filter(function(C){return C.contains(b.target)}),w=x.length>0?i(b,x[0]):!a.current.noIsolation;w&&b.cancelable&&b.preventDefault()}}},[]),d=S.useCallback(function(y,b,v,N){var x={name:y,delta:b,target:v,should:N,shadowParent:AC(v)};t.current.push(x),setTimeout(function(){t.current=t.current.filter(function(w){return w!==x})},1)},[]),p=S.useCallback(function(y){r.current=ka(y),o.current=void 0},[]),u=S.useCallback(function(y){d(y.type,Qp(y),y.target,i(y,e.lockRef.current))},[]),f=S.useCallback(function(y){d(y.type,ka(y),y.target,i(y,e.lockRef.current))},[]);S.useEffect(function(){return pn.push(s),e.setCallbacks({onScrollCapture:u,onWheelCapture:u,onTouchMoveCapture:f}),document.addEventListener("wheel",c,fn),document.addEventListener("touchmove",c,fn),document.addEventListener("touchstart",p,fn),function(){pn=pn.filter(function(y){return y!==s}),document.removeEventListener("wheel",c,fn),document.removeEventListener("touchmove",c,fn),document.removeEventListener("touchstart",p,fn)}},[]);var h=e.removeScrollBar,g=e.inert;return S.createElement(S.Fragment,null,g?S.createElement(s,{styles:EC(n)}):null,h?S.createElement(gC,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function AC(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const DC=oC(Bp,kC);var ic=S.forwardRef(function(e,t){return S.createElement(Ea,Ir({},e,{ref:t,sideCar:DC}))});ic.classNames=Ea.classNames;var $C=Object.defineProperty,Le=(e,t)=>$C(e,"name",{value:t,configurable:!0}),TC=[" ","Enter","ArrowUp","ArrowDown"],PC=[" ","Enter"],hn="Select",[Aa,Da,IC]=na(hn),[Mo,xI]=sr(hn,[IC,va]),cc=va(),[OC,bo]=Mo(hn),[MC,LC]=Mo(hn);function Rp(e){const{__scopeSelect:t,children:r,open:o,defaultOpen:n,onOpenChange:s,value:a,defaultValue:i,onValueChange:c,dir:d,name:p,autoComplete:u,disabled:f,required:h,form:g,internal_do_not_use_render:y}=e,b=cc(t),[v,N]=S.useState(null),[x,w]=S.useState(null),[C,E]=S.useState(!1),k=Vn(d),[_,D]=yr({prop:o,defaultProp:n??!1,onChange:s,caller:hn}),[A,I]=yr({prop:a,defaultProp:i,onChange:c,caller:hn}),T=S.useRef(null),L=S.useRef(A);S.useEffect(()=>{const U=g?v==null?void 0:v.ownerDocument.getElementById(g):v==null?void 0:v.form;if(U instanceof HTMLFormElement){const Q=Le(()=>I(L.current),"reset");return U.addEventListener("reset",Q),()=>U.removeEventListener("reset",Q)}},[g,v,I]);const F=v?!!g||!!v.closest("form"):!0,[B,G]=S.useState(new Set),z=br(),H=Array.from(B).map(U=>U.props.value).join(";"),V=S.useCallback(U=>{G(Q=>new Set(Q).add(U))},[]),W=S.useCallback(U=>{G(Q=>{const Ce=new Set(Q);return Ce.delete(U),Ce})},[]),pe={required:h,trigger:v,onTriggerChange:N,valueNode:x,onValueNodeChange:w,valueNodeHasChildren:C,onValueNodeHasChildrenChange:E,contentId:z,value:A,onValueChange:I,open:_,onOpenChange:D,dir:k,triggerPointerDownPosRef:T,disabled:f,name:p,autoComplete:u,form:g,nativeOptions:B,nativeSelectKey:H,isFormControl:F};return l.jsx(wp,{...b,children:l.jsx(OC,{scope:t,...pe,children:l.jsx(Aa.Provider,{scope:t,children:l.jsx(MC,{scope:t,onNativeOptionAdd:V,onNativeOptionRemove:W,children:uh(y)?y(pe):r})})})})}Le(Rp,"SelectProvider");var FC=Le(e=>{const{__scopeSelect:t,children:r,...o}=e;return l.jsx(Rp,{__scopeSelect:t,...o,internal_do_not_use_render:({isFormControl:n})=>l.jsxs(l.Fragment,{children:[r,n?l.jsx(aE,{__scopeSelect:t}):null]})})},"Select"),VC="SelectTrigger",Xp=S.forwardRef(Le(function(t,r){const{__scopeSelect:o,disabled:n=!1,...s}=t,a=cc(o),i=bo(VC,o),c=i.disabled||n,d=Ue(r,i.onTriggerChange),p=Da(o),u=S.useRef("touch"),[f,h,g]=fc(b=>{const v=p().filter(w=>!w.disabled),N=v.find(w=>w.value===i.value),x=pc(v,b,N);x!==void 0&&i.onValueChange(x.value)}),y=Le(b=>{c||(i.onOpenChange(!0),g()),b&&(i.triggerPointerDownPosRef.current={x:Math.round(b.pageX),y:Math.round(b.pageY)})},"handleOpen");return l.jsx(Sp,{asChild:!0,...a,children:l.jsx(Ie.button,{type:"button",role:"combobox","aria-controls":i.open?i.contentId:void 0,"aria-expanded":i.open,"aria-required":i.required,"aria-autocomplete":"none",dir:i.dir,"data-state":i.open?"open":"closed",disabled:c,"data-disabled":c?"":void 0,"data-placeholder":Un(i.value)?"":void 0,...s,ref:d,onClick:Se(s.onClick,b=>{b.currentTarget.focus(),u.current!=="mouse"&&y(b)}),onPointerDown:Se(s.onPointerDown,b=>{u.current=b.pointerType;const v=b.target;v.hasPointerCapture(b.pointerId)&&v.releasePointerCapture(b.pointerId),b.button===0&&b.ctrlKey===!1&&b.pointerType==="mouse"&&(y(b),b.preventDefault())}),onKeyDown:Se(s.onKeyDown,b=>{const v=f.current!=="";!(b.ctrlKey||b.altKey||b.metaKey)&&b.key.length===1&&h(b.key),!(v&&b.key===" ")&&TC.includes(b.key)&&(y(),b.preventDefault())})})})},"SelectTrigger")),GC="SelectValue",zC=S.forwardRef(Le(function(t,r){const{__scopeSelect:o,className:n,style:s,children:a,placeholder:i="",...c}=t,d=bo(GC,o),{onValueNodeHasChildrenChange:p}=d,u=a!==void 0,f=Ue(r,d.onValueNodeChange);ot(()=>{p(u)},[p,u]);const h=Un(d.value);return l.jsx(Ie.span,{...c,asChild:h?!1:c.asChild,ref:f,style:{pointerEvents:"none"},children:l.jsx(S.Fragment,{children:h?i:a},h?"placeholder":"value")})},"SelectValue")),BC=S.forwardRef(Le(function(t,r){const{__scopeSelect:o,children:n,...s}=t;return l.jsx(Ie.span,{"aria-hidden":!0,...s,ref:r,children:n||"▼"})},"SelectIcon")),UC="SelectPortal",[WC,HC]=Mo(UC,{forceMount:void 0}),jC=Le(e=>{const{__scopeSelect:t,forceMount:r,...o}=e;return l.jsx(WC,{scope:e.__scopeSelect,forceMount:r,children:l.jsx(tc,{asChild:!0,...o})})},"SelectPortal"),Lo="SelectContent",Jp=S.forwardRef(Le(function(t,r){const o=HC(Lo,t.__scopeSelect),{forceMount:n=o.forceMount,...s}=t,a=bo(Lo,t.__scopeSelect),[i,c]=S.useState();return ot(()=>{c(new DocumentFragment)},[]),l.jsx(eo,{present:n||a.open,children:({present:d})=>d?l.jsx(QC,{...s,ref:r}):l.jsx(qC,{...s,fragment:i})})},"SelectContent")),qC=S.forwardRef(Le(function(t,r){const{__scopeSelect:o,children:n,fragment:s}=t;return s?Tn.createPortal(l.jsx(Zp,{scope:o,children:l.jsx(Aa.Slot,{scope:o,children:l.jsx("div",{ref:r,children:n})})}),s):null},"SelectContentFragment")),vr=10,[Zp,Fo]=Mo(Lo),YC=Yr("SelectContent.RemoveScroll"),QC=S.forwardRef(Le(function(t,r){const{__scopeSelect:o}=t,{position:n="item-aligned",onCloseAutoFocus:s,onEscapeKeyDown:a,onPointerDownOutside:i,side:c,sideOffset:d,align:p,alignOffset:u,arrowPadding:f,collisionBoundary:h,collisionPadding:g,sticky:y,hideWhenDetached:b,avoidCollisions:v,...N}=t,x=bo(Lo,o),[w,C]=S.useState(null),[E,k]=S.useState(null),_=Ue(r,C),[D,A]=S.useState(null),[I,T]=S.useState(null),L=Da(o),[F,B]=S.useState(!1),G=S.useRef(!1);S.useEffect(()=>{if(w)return Fp(w)},[w]),la();const z=S.useCallback(ce=>{const[re,...Ae]=L().map(J=>J.ref.current),[we]=Ae.slice(-1),ue=document.activeElement;for(const J of ce)if(J===ue||(J==null||J.scrollIntoView({block:"nearest"}),J===re&&E&&(E.scrollTop=0),J===we&&E&&(E.scrollTop=E.scrollHeight),J==null||J.focus(),document.activeElement!==ue))return},[L,E]),H=S.useCallback(()=>z([D,w]),[z,D,w]);S.useEffect(()=>{F&&H()},[F,H]);const{onOpenChange:V,triggerPointerDownPosRef:W}=x;S.useEffect(()=>{if(w){let ce={x:0,y:0};const re=Le(we=>{var ue,J;ce={x:Math.abs(Math.round(we.pageX)-(((ue=W.current)==null?void 0:ue.x)??0)),y:Math.abs(Math.round(we.pageY)-(((J=W.current)==null?void 0:J.y)??0))}},"handlePointerMove"),Ae=Le(we=>{ce.x<=10&&ce.y<=10?we.preventDefault():we.composedPath().includes(w)||V(!1),document.removeEventListener("pointermove",re),W.current=null},"handlePointerUp");return W.current!==null&&(document.addEventListener("pointermove",re),document.addEventListener("pointerup",Ae,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",re),document.removeEventListener("pointerup",Ae,{capture:!0})}}},[w,V,W]),S.useEffect(()=>{const ce=Le(()=>V(!1),"close");return window.addEventListener("blur",ce),window.addEventListener("resize",ce),()=>{window.removeEventListener("blur",ce),window.removeEventListener("resize",ce)}},[V]);const[pe,U]=fc(ce=>{const re=L().filter(ue=>!ue.disabled),Ae=re.find(ue=>ue.ref.current===document.activeElement),we=pc(re,ce,Ae);we&&setTimeout(()=>{var ue;return(ue=we.ref.current)==null?void 0:ue.focus()})}),Q=S.useCallback((ce,re,Ae)=>{const we=!G.current&&!Ae;(x.value!==void 0&&x.value===re||we)&&(A(ce),we&&(G.current=!0))},[x.value]),Ce=S.useCallback(()=>w==null?void 0:w.focus(),[w]),oe=S.useCallback((ce,re,Ae)=>{const we=!G.current&&!Ae;(x.value!==void 0&&x.value===re||we)&&T(ce)},[x.value]),ye=n==="popper"?eh:KC,R=ye===eh?{side:c,sideOffset:d,align:p,alignOffset:u,arrowPadding:f,collisionBoundary:h,collisionPadding:g,sticky:y,hideWhenDetached:b,avoidCollisions:v}:{};return l.jsx(Zp,{scope:o,content:w,viewport:E,onViewportChange:k,itemRefCallback:Q,selectedItem:D,onItemLeave:Ce,itemTextRefCallback:oe,focusSelectedItem:H,selectedItemText:I,position:n,isPositioned:F,searchRef:pe,children:l.jsx(ic,{as:YC,allowPinchZoom:!0,children:l.jsx(Bf,{asChild:!0,trapped:x.open,onMountAutoFocus:ce=>{ce.preventDefault()},onUnmountAutoFocus:Se(s,ce=>{var re;(re=x.trigger)==null||re.focus({preventScroll:!0}),ce.preventDefault()}),children:l.jsx(Ii,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:a,onPointerDownOutside:i,onFocusOutside:ce=>ce.preventDefault(),onDismiss:()=>x.onOpenChange(!1),children:l.jsx(ye,{role:"listbox",id:x.contentId,"data-state":x.open?"open":"closed",dir:x.dir,onContextMenu:ce=>ce.preventDefault(),...N,...R,onPlaced:()=>B(!0),ref:_,style:{display:"flex",flexDirection:"column",outline:"none",...N.style},onKeyDown:Se(N.onKeyDown,ce=>{const re=ce.ctrlKey||ce.altKey||ce.metaKey;if(ce.key==="Tab"&&ce.preventDefault(),!re&&ce.key.length===1&&U(ce.key),["ArrowUp","ArrowDown","Home","End"].includes(ce.key)){let we=L().filter(ue=>!ue.disabled).map(ue=>ue.ref.current);if(["ArrowUp","End"].includes(ce.key)&&(we=we.slice().reverse()),["ArrowUp","ArrowDown"].includes(ce.key)){const ue=ce.target,J=we.indexOf(ue);we=we.slice(J+1)}setTimeout(()=>z(we)),ce.preventDefault()}})})})})})})},"SelectContentImpl")),KC=S.forwardRef(Le(function(t,r){const{__scopeSelect:o,onPlaced:n,...s}=t,a=bo(Lo,o),i=Fo(Lo,o),[c,d]=S.useState(null),[p,u]=S.useState(null),f=Ue(r,u),h=Da(o),g=S.useRef(!1),y=S.useRef(!0),{viewport:b,selectedItem:v,selectedItemText:N,focusSelectedItem:x}=i,w=S.useCallback(()=>{if(a.trigger&&a.valueNode&&c&&p&&b&&v&&N){const _=a.trigger.getBoundingClientRect(),D=p.getBoundingClientRect(),A=a.valueNode.getBoundingClientRect(),I=N.getBoundingClientRect();if(a.dir!=="rtl"){const ue=I.left-D.left,J=A.left-ue,ne=_.left-J,fe=_.width+ne,ke=Math.max(fe,D.width),Re=window.innerWidth-vr,rt=Ci(J,[vr,Math.max(vr,Re-ke)]);c.style.minWidth=fe+"px",c.style.left=rt+"px"}else{const ue=D.right-I.right,J=window.innerWidth-A.right-ue,ne=window.innerWidth-_.right-J,fe=_.width+ne,ke=Math.max(fe,D.width),Re=window.innerWidth-vr,rt=Ci(J,[vr,Math.max(vr,Re-ke)]);c.style.minWidth=fe+"px",c.style.right=rt+"px"}const T=h(),L=window.innerHeight-vr*2,F=b.scrollHeight,B=window.getComputedStyle(p),G=parseInt(B.borderTopWidth,10),z=parseInt(B.paddingTop,10),H=parseInt(B.borderBottomWidth,10),V=parseInt(B.paddingBottom,10),W=G+z+F+V+H,pe=Math.min(v.offsetHeight*5,W),U=window.getComputedStyle(b),Q=parseInt(U.paddingTop,10),Ce=parseInt(U.paddingBottom,10),oe=_.top+_.height/2-vr,ye=L-oe,R=v.offsetHeight/2,ce=v.offsetTop+R,re=G+z+ce,Ae=W-re;if(re<=oe){const ue=T.length>0&&v===T[T.length-1].ref.current;c.style.bottom="0px";const J=p.clientHeight-b.offsetTop-b.offsetHeight,ne=Math.max(ye,R+(ue?Ce:0)+J+H),fe=re+ne;c.style.height=fe+"px"}else{const ue=T.length>0&&v===T[0].ref.current;c.style.top="0px";const ne=Math.max(oe,G+b.offsetTop+(ue?Q:0)+R)+Ae;c.style.height=ne+"px",b.scrollTop=re-oe+b.offsetTop}c.style.margin=`${vr}px 0`,c.style.minHeight=pe+"px",c.style.maxHeight=L+"px",n==null||n(),requestAnimationFrame(()=>g.current=!0)}},[h,a.trigger,a.valueNode,c,p,b,v,N,a.dir,n]);ot(()=>w(),[w]);const[C,E]=S.useState();ot(()=>{p&&E(window.getComputedStyle(p).zIndex)},[p]);const k=S.useCallback(_=>{_&&y.current===!0&&(w(),x==null||x(),y.current=!1)},[w,x]);return l.jsx(RC,{scope:o,contentWrapper:c,shouldExpandOnScrollRef:g,onScrollButtonChange:k,children:l.jsx("div",{ref:d,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:C},children:l.jsx(Ie.div,{...s,ref:f,style:{boxSizing:"border-box",maxHeight:"100%",...s.style}})})})},"SelectItemAlignedPosition")),eh=S.forwardRef(Le(function(t,r){const{__scopeSelect:o,align:n="start",collisionPadding:s=vr,...a}=t,i=cc(o);return l.jsx(Np,{...i,...a,ref:r,align:n,collisionPadding:s,style:{boxSizing:"border-box",...a.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})},"SelectPopperPosition")),[RC,dc]=Mo(Lo,{}),th="SelectViewport",XC=S.forwardRef(Le(function(t,r){const{__scopeSelect:o,nonce:n,...s}=t,a=Fo(th,o),i=dc(th,o),c=Ue(r,a.onViewportChange),d=S.useRef(0);return l.jsxs(l.Fragment,{children:[l.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:n}),l.jsx(Aa.Slot,{scope:o,children:l.jsx(Ie.div,{"data-radix-select-viewport":"",role:"presentation",...s,ref:c,style:{position:"relative",flex:1,overflow:"hidden auto",...s.style},onScroll:Se(s.onScroll,p=>{const u=p.currentTarget,{contentWrapper:f,shouldExpandOnScrollRef:h}=i;if(h!=null&&h.current&&f){const g=Math.abs(d.current-u.scrollTop);if(g>0){const y=window.innerHeight-vr*2,b=parseFloat(f.style.minHeight),v=parseFloat(f.style.height),N=Math.max(b,v);if(N<y){const x=N+g,w=Math.min(y,x),C=x-w;f.style.height=w+"px",f.style.bottom==="0px"&&(u.scrollTop=C>0?C:0,f.style.justifyContent="flex-end")}}}d.current=u.scrollTop})})})]})},"SelectViewport")),JC="SelectGroup",[wI,ZC]=Mo(JC),eE="SelectLabel",rh=S.forwardRef(Le(function(t,r){const{__scopeSelect:o,...n}=t,s=ZC(eE,o);return l.jsx(Ie.div,{id:s.id,...n,ref:r})},"SelectLabel")),uc="SelectItem",[tE,oh]=Mo(uc),nh=S.forwardRef(Le(function(t,r){const{__scopeSelect:o,value:n,disabled:s=!1,textValue:a,...i}=t,c=bo(uc,o),d=Fo(uc,o),p=c.value===n,[u,f]=S.useState(a??""),[h,g]=S.useState(!1),y=gr(w=>{var C;return(C=d.itemRefCallback)==null?void 0:C.call(d,w,n,s)}),b=Ue(r,y),v=br(),N=S.useRef("touch"),x=Le(()=>{s||(c.onValueChange(n),c.onOpenChange(!1))},"handleSelect");return l.jsx(tE,{scope:o,value:n,disabled:s,textId:v,isSelected:p,onItemTextChange:S.useCallback(w=>{f(C=>C||((w==null?void 0:w.textContent)??"").trim())},[]),children:l.jsx(Aa.ItemSlot,{scope:o,value:n,disabled:s,textValue:u,children:l.jsx(Ie.div,{role:"option","aria-labelledby":v,"data-highlighted":h?"":void 0,"aria-selected":p&&h,"data-state":p?"checked":"unchecked","aria-disabled":s||void 0,"data-disabled":s?"":void 0,tabIndex:s?void 0:-1,...i,ref:b,onFocus:Se(i.onFocus,()=>g(!0)),onBlur:Se(i.onBlur,()=>g(!1)),onClick:Se(i.onClick,()=>{N.current!=="mouse"&&x()}),onPointerUp:Se(i.onPointerUp,()=>{N.current==="mouse"&&x()}),onPointerDown:Se(i.onPointerDown,w=>{N.current=w.pointerType}),onPointerMove:Se(i.onPointerMove,w=>{var C;N.current=w.pointerType,s?(C=d.onItemLeave)==null||C.call(d):N.current==="mouse"&&w.currentTarget.focus({preventScroll:!0})}),onPointerLeave:Se(i.onPointerLeave,w=>{var C;w.currentTarget===document.activeElement&&((C=d.onItemLeave)==null||C.call(d))}),onKeyDown:Se(i.onKeyDown,w=>{var E;s||w.target!==w.currentTarget||((E=d.searchRef)==null?void 0:E.current)!==""&&w.key===" "||(PC.includes(w.key)&&x(),w.key===" "&&w.preventDefault())})})})})},"SelectItem")),$a="SelectItemText",rE=S.forwardRef(Le(function(t,r){const{__scopeSelect:o,className:n,style:s,...a}=t,i=bo($a,o),c=Fo($a,o),d=oh($a,o),p=LC($a,o),[u,f]=S.useState(null),h=gr(x=>{var w;return(w=c.itemTextRefCallback)==null?void 0:w.call(c,x,d.value,d.disabled)}),g=Ue(r,f,d.onItemTextChange,h),y=u==null?void 0:u.textContent,b=S.useMemo(()=>l.jsx("option",{value:d.value,disabled:d.disabled,children:y},d.value),[d.disabled,d.value,y]),{onNativeOptionAdd:v,onNativeOptionRemove:N}=p;return ot(()=>(v(b),()=>N(b)),[v,N,b]),l.jsxs(l.Fragment,{children:[l.jsx(Ie.span,{id:d.textId,...a,ref:g}),d.isSelected&&i.valueNode&&!i.valueNodeHasChildren&&!Un(i.value)?Tn.createPortal(a.children,i.valueNode):null]})},"SelectItemText")),oE="SelectItemIndicator",nE=S.forwardRef(Le(function(t,r){const{__scopeSelect:o,...n}=t;return oh(oE,o).isSelected?l.jsx(Ie.span,{"aria-hidden":!0,...n,ref:r}):null},"SelectItemIndicator")),sh="SelectScrollUpButton",ah=S.forwardRef(Le(function(t,r){const o=Fo(sh,t.__scopeSelect),n=dc(sh,t.__scopeSelect),[s,a]=S.useState(!1),i=Ue(r,n.onScrollButtonChange);return ot(()=>{if(o.viewport&&o.isPositioned){let c=function(){const p=d.scrollTop>0;a(p)};Le(c,"handleScroll");const d=o.viewport;return c(),d.addEventListener("scroll",c),()=>d.removeEventListener("scroll",c)}},[o.viewport,o.isPositioned]),s?l.jsx(ch,{...t,ref:i,onAutoScroll:()=>{const{viewport:c,selectedItem:d}=o;c&&d&&(c.scrollTop=c.scrollTop-d.offsetHeight)}}):null},"SelectScrollUpButton")),lh="SelectScrollDownButton",ih=S.forwardRef(Le(function(t,r){const o=Fo(lh,t.__scopeSelect),n=dc(lh,t.__scopeSelect),[s,a]=S.useState(!1),i=Ue(r,n.onScrollButtonChange);return ot(()=>{if(o.viewport&&o.isPositioned){let c=function(){const p=d.scrollHeight-d.clientHeight,u=Math.ceil(d.scrollTop)<p;a(u)};Le(c,"handleScroll");const d=o.viewport;return c(),d.addEventListener("scroll",c),()=>d.removeEventListener("scroll",c)}},[o.viewport,o.isPositioned]),s?l.jsx(ch,{...t,ref:i,onAutoScroll:()=>{const{viewport:c,selectedItem:d}=o;c&&d&&(c.scrollTop=c.scrollTop+d.offsetHeight)}}):null},"SelectScrollDownButton")),ch=S.forwardRef(Le(function(t,r){const{__scopeSelect:o,onAutoScroll:n,...s}=t,a=Fo("SelectScrollButton",o),i=S.useRef(null),c=Da(o),d=S.useCallback(()=>{i.current!==null&&(window.clearInterval(i.current),i.current=null)},[]);return S.useEffect(()=>()=>d(),[d]),ot(()=>{var u;const p=c().find(f=>f.ref.current===document.activeElement);(u=p==null?void 0:p.ref.current)==null||u.scrollIntoView({block:"nearest"})},[c]),l.jsx(Ie.div,{"aria-hidden":!0,...s,ref:r,style:{flexShrink:0,...s.style},onPointerDown:Se(s.onPointerDown,()=>{i.current===null&&(i.current=window.setInterval(n,50))}),onPointerMove:Se(s.onPointerMove,()=>{var p;(p=a.onItemLeave)==null||p.call(a),i.current===null&&(i.current=window.setInterval(n,50))}),onPointerLeave:Se(s.onPointerLeave,()=>{d()})})},"SelectScrollButtonImpl")),dh=S.forwardRef(Le(function(t,r){const{__scopeSelect:o,...n}=t;return l.jsx(Ie.div,{"aria-hidden":!0,...n,ref:r})},"SelectSeparator")),sE="SelectBubbleInput",aE=S.forwardRef(Le(function({__scopeSelect:t,...r},o){const n=bo(sE,t),{value:s,onValueChange:a,required:i,disabled:c,name:d,autoComplete:p,form:u}=n,{nativeOptions:f,nativeSelectKey:h}=n,g=S.useRef(null),y=Ue(o,g),b=s??"",v=Op(b),N=Array.from(f).some(x=>(x.props.value??"")==="");return S.useEffect(()=>{const x=g.current;if(!x)return;const w=window.HTMLSelectElement.prototype,E=Object.getOwnPropertyDescriptor(w,"value").set;if(v!==b&&E){const k=new Event("change",{bubbles:!0});E.call(x,b),x.dispatchEvent(k)}},[v,b]),l.jsxs(Ie.select,{"aria-hidden":!0,required:i,tabIndex:-1,name:d,autoComplete:p,disabled:c,form:u,onChange:x=>a(x.target.value),...r,style:{...Mp,...r.style},ref:y,defaultValue:b,children:[Un(s)&&!N?l.jsx("option",{value:""}):null,Array.from(f)]},h)},"SelectBubbleInput"));function uh(e){return typeof e=="function"}Le(uh,"isFunction");function Un(e){return e===""||e===void 0}Le(Un,"shouldShowPlaceholder");function fc(e){const t=gr(e),r=S.useRef(""),o=S.useRef(0),n=S.useCallback(a=>{const i=r.current+a;t(i),Le((function c(d){r.current=d,window.clearTimeout(o.current),d!==""&&(o.current=window.setTimeout(()=>c(""),1e3))}),"updateSearch")(i)},[t]),s=S.useCallback(()=>{r.current="",window.clearTimeout(o.current)},[]);return S.useEffect(()=>()=>window.clearTimeout(o.current),[]),[r,n,s]}Le(fc,"useTypeaheadSearch");function pc(e,t,r){const n=t.length>1&&Array.from(t).every(d=>d===t[0])?t[0]:t,s=r?e.indexOf(r):-1;let a=fh(e,Math.max(s,0));n.length===1&&(a=a.filter(d=>d!==r));const c=a.find(d=>d.textValue.toLowerCase().startsWith(n.toLowerCase()));return c!==r?c:void 0}Le(pc,"findNextItem");function fh(e,t){return e.map((r,o)=>e[(t+o)%e.length])}Le(fh,"wrapArray");/**
42
42
  * @license lucide-react v0.563.0 - ISC
43
43
  *
44
44
  * This source code is licensed under the ISC license.
45
45
  * See the LICENSE file in the root directory of this source tree.
46
- */const df=(...e)=>e.filter((t,r,o)=>!!t&&t.trim()!==""&&o.indexOf(t)===r).join(" ").trim();/**
46
+ */const ph=(...e)=>e.filter((t,r,o)=>!!t&&t.trim()!==""&&o.indexOf(t)===r).join(" ").trim();/**
47
47
  * @license lucide-react v0.563.0 - ISC
48
48
  *
49
49
  * This source code is licensed under the ISC license.
50
50
  * See the LICENSE file in the root directory of this source tree.
51
- */const aS=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();/**
51
+ */const lE=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();/**
52
52
  * @license lucide-react v0.563.0 - ISC
53
53
  *
54
54
  * This source code is licensed under the ISC license.
55
55
  * See the LICENSE file in the root directory of this source tree.
56
- */const sS=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,r,o)=>o?o.toUpperCase():r.toLowerCase());/**
56
+ */const iE=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,r,o)=>o?o.toUpperCase():r.toLowerCase());/**
57
57
  * @license lucide-react v0.563.0 - ISC
58
58
  *
59
59
  * This source code is licensed under the ISC license.
60
60
  * See the LICENSE file in the root directory of this source tree.
61
- */const uf=e=>{const t=sS(e);return t.charAt(0).toUpperCase()+t.slice(1)};/**
61
+ */const hh=e=>{const t=iE(e);return t.charAt(0).toUpperCase()+t.slice(1)};/**
62
62
  * @license lucide-react v0.563.0 - ISC
63
63
  *
64
64
  * This source code is licensed under the ISC license.
65
65
  * See the LICENSE file in the root directory of this source tree.
66
- */var lS={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/**
66
+ */var cE={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/**
67
67
  * @license lucide-react v0.563.0 - ISC
68
68
  *
69
69
  * This source code is licensed under the ISC license.
70
70
  * See the LICENSE file in the root directory of this source tree.
71
- */const iS=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};/**
71
+ */const dE=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};/**
72
72
  * @license lucide-react v0.563.0 - ISC
73
73
  *
74
74
  * This source code is licensed under the ISC license.
75
75
  * See the LICENSE file in the root directory of this source tree.
76
- */const cS=D.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:r=2,absoluteStrokeWidth:o,className:n="",children:a,iconNode:s,...i},c)=>D.createElement("svg",{ref:c,...lS,width:t,height:t,stroke:e,strokeWidth:o?Number(r)*24/Number(t):r,className:df("lucide",n),...!a&&!iS(i)&&{"aria-hidden":"true"},...i},[...s.map(([d,f])=>D.createElement(d,f)),...Array.isArray(a)?a:[a]]));/**
76
+ */const uE=P.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:r=2,absoluteStrokeWidth:o,className:n="",children:s,iconNode:a,...i},c)=>P.createElement("svg",{ref:c,...cE,width:t,height:t,stroke:e,strokeWidth:o?Number(r)*24/Number(t):r,className:ph("lucide",n),...!s&&!dE(i)&&{"aria-hidden":"true"},...i},[...a.map(([d,p])=>P.createElement(d,p)),...Array.isArray(s)?s:[s]]));/**
77
77
  * @license lucide-react v0.563.0 - ISC
78
78
  *
79
79
  * This source code is licensed under the ISC license.
80
80
  * See the LICENSE file in the root directory of this source tree.
81
- */const yt=(e,t)=>{const r=D.forwardRef(({className:o,...n},a)=>D.createElement(cS,{ref:a,iconNode:t,className:df(`lucide-${aS(uf(e))}`,`lucide-${e}`,o),...n}));return r.displayName=uf(e),r};/**
81
+ */const St=(e,t)=>{const r=P.forwardRef(({className:o,...n},s)=>P.createElement(uE,{ref:s,iconNode:t,className:ph(`lucide-${lE(hh(e))}`,`lucide-${e}`,o),...n}));return r.displayName=hh(e),r};/**
82
82
  * @license lucide-react v0.563.0 - ISC
83
83
  *
84
84
  * This source code is licensed under the ISC license.
85
85
  * See the LICENSE file in the root directory of this source tree.
86
- */const dS=yt("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);/**
86
+ */const fE=St("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);/**
87
87
  * @license lucide-react v0.563.0 - ISC
88
88
  *
89
89
  * This source code is licensed under the ISC license.
90
90
  * See the LICENSE file in the root directory of this source tree.
91
- */const pf=yt("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);/**
91
+ */const mh=St("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);/**
92
92
  * @license lucide-react v0.563.0 - ISC
93
93
  *
94
94
  * This source code is licensed under the ISC license.
95
95
  * See the LICENSE file in the root directory of this source tree.
96
- */const Yo=yt("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);/**
96
+ */const mn=St("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);/**
97
97
  * @license lucide-react v0.563.0 - ISC
98
98
  *
99
99
  * This source code is licensed under the ISC license.
100
100
  * See the LICENSE file in the root directory of this source tree.
101
- */const ff=yt("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]);/**
101
+ */const gh=St("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]);/**
102
102
  * @license lucide-react v0.563.0 - ISC
103
103
  *
104
104
  * This source code is licensed under the ISC license.
105
105
  * See the LICENSE file in the root directory of this source tree.
106
- */const uS=yt("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);/**
106
+ */const pE=St("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);/**
107
107
  * @license lucide-react v0.563.0 - ISC
108
108
  *
109
109
  * This source code is licensed under the ISC license.
110
110
  * See the LICENSE file in the root directory of this source tree.
111
- */const pS=yt("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);/**
111
+ */const hE=St("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);/**
112
112
  * @license lucide-react v0.563.0 - ISC
113
113
  *
114
114
  * This source code is licensed under the ISC license.
115
115
  * See the LICENSE file in the root directory of this source tree.
116
- */const hf=yt("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/**
116
+ */const bh=St("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/**
117
117
  * @license lucide-react v0.563.0 - ISC
118
118
  *
119
119
  * This source code is licensed under the ISC license.
120
120
  * See the LICENSE file in the root directory of this source tree.
121
- */const fS=yt("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);/**
121
+ */const mE=St("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);/**
122
122
  * @license lucide-react v0.563.0 - ISC
123
123
  *
124
124
  * This source code is licensed under the ISC license.
125
125
  * See the LICENSE file in the root directory of this source tree.
126
- */const mf=yt("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);/**
126
+ */const yh=St("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);/**
127
127
  * @license lucide-react v0.563.0 - ISC
128
128
  *
129
129
  * This source code is licensed under the ISC license.
130
130
  * See the LICENSE file in the root directory of this source tree.
131
- */const hS=yt("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);/**
131
+ */const gE=St("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);/**
132
132
  * @license lucide-react v0.563.0 - ISC
133
133
  *
134
134
  * This source code is licensed under the ISC license.
135
135
  * See the LICENSE file in the root directory of this source tree.
136
- */const Ai=yt("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);/**
136
+ */const hc=St("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);/**
137
137
  * @license lucide-react v0.563.0 - ISC
138
138
  *
139
139
  * This source code is licensed under the ISC license.
140
140
  * See the LICENSE file in the root directory of this source tree.
141
- */const mS=yt("redo-2",[["path",{d:"m15 14 5-5-5-5",key:"12vg1m"}],["path",{d:"M20 9H9.5A5.5 5.5 0 0 0 4 14.5A5.5 5.5 0 0 0 9.5 20H13",key:"6uklza"}]]);/**
141
+ */const bE=St("redo-2",[["path",{d:"m15 14 5-5-5-5",key:"12vg1m"}],["path",{d:"M20 9H9.5A5.5 5.5 0 0 0 4 14.5A5.5 5.5 0 0 0 9.5 20H13",key:"6uklza"}]]);/**
142
142
  * @license lucide-react v0.563.0 - ISC
143
143
  *
144
144
  * This source code is licensed under the ISC license.
145
145
  * See the LICENSE file in the root directory of this source tree.
146
- */const gS=yt("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);/**
146
+ */const yE=St("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);/**
147
147
  * @license lucide-react v0.563.0 - ISC
148
148
  *
149
149
  * This source code is licensed under the ISC license.
150
150
  * See the LICENSE file in the root directory of this source tree.
151
- */const bS=yt("settings-2",[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]);/**
151
+ */const vh=St("settings-2",[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]);/**
152
152
  * @license lucide-react v0.563.0 - ISC
153
153
  *
154
154
  * This source code is licensed under the ISC license.
155
155
  * See the LICENSE file in the root directory of this source tree.
156
- */const Ti=yt("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);/**
156
+ */const mc=St("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);/**
157
157
  * @license lucide-react v0.563.0 - ISC
158
158
  *
159
159
  * This source code is licensed under the ISC license.
160
160
  * See the LICENSE file in the root directory of this source tree.
161
- */const yS=yt("undo-2",[["path",{d:"M9 14 4 9l5-5",key:"102s5s"}],["path",{d:"M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11",key:"f3b9sd"}]]);/**
161
+ */const vE=St("undo-2",[["path",{d:"M9 14 4 9l5-5",key:"102s5s"}],["path",{d:"M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11",key:"f3b9sd"}]]);/**
162
162
  * @license lucide-react v0.563.0 - ISC
163
163
  *
164
164
  * This source code is licensed under the ISC license.
165
165
  * See the LICENSE file in the root directory of this source tree.
166
- */const vS=yt("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]]);/**
166
+ */const xE=St("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]]);/**
167
167
  * @license lucide-react v0.563.0 - ISC
168
168
  *
169
169
  * This source code is licensed under the ISC license.
170
170
  * See the LICENSE file in the root directory of this source tree.
171
- */const Ka=yt("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),Xa=LC,Ja=GC,vn=v.forwardRef(({className:e,children:t,...r},o)=>l.jsxs(qp,{ref:o,className:p("flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm ring-offset-background data-[placeholder]:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",e),...r,children:[t,l.jsx(VC,{asChild:!0,children:l.jsx(Yo,{className:p("h-4 w-4 opacity-50")})})]}));vn.displayName=qp.displayName;const gf=v.forwardRef(({className:e,...t},r)=>l.jsx(rf,{ref:r,className:p("flex cursor-default items-center justify-center py-1",e),...t,children:l.jsx(ff,{className:p("h-4 w-4")})}));gf.displayName=rf.displayName;const bf=v.forwardRef(({className:e,...t},r)=>l.jsx(nf,{ref:r,className:p("flex cursor-default items-center justify-center py-1",e),...t,children:l.jsx(Yo,{className:p("h-4 w-4")})}));bf.displayName=nf.displayName;const xn=v.forwardRef(({className:e,children:t,position:r="popper",...o},n)=>l.jsx(WC,{children:l.jsxs(Qp,{ref:n,className:p("relative z-50 max-h-[--radix-select-content-available-height] min-w-[8rem] overflow-y-auto overflow-x-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-select-content-transform-origin]",r==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:r,...o,children:[l.jsx(gf,{}),l.jsx(KC,{className:p("p-1",r==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:t}),l.jsx(bf,{})]})}));xn.displayName=Qp.displayName;const xS=v.forwardRef(({className:e,...t},r)=>l.jsx(Zp,{ref:r,className:p("px-2 py-1.5 text-sm font-semibold",e),...t}));xS.displayName=Zp.displayName;const yo=v.forwardRef(({className:e,children:t,...r},o)=>l.jsxs(ef,{ref:o,className:p("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...r,children:[l.jsx("span",{className:p("absolute right-2 flex h-3.5 w-3.5 items-center justify-center"),children:l.jsx(rS,{children:l.jsx(pf,{className:p("h-4 w-4")})})}),l.jsx(eS,{children:t})]}));yo.displayName=ef.displayName;const wS=v.forwardRef(({className:e,...t},r)=>l.jsx(sf,{ref:r,className:p("-mx-1 my-1 h-px bg-muted",e),...t}));wS.displayName=sf.displayName;const vo=[{code:"US",name:"United States",dialCode:"+1",flag:"🇺🇸"},{code:"GB",name:"United Kingdom",dialCode:"+44",flag:"🇬🇧"},{code:"CA",name:"Canada",dialCode:"+1",flag:"🇨🇦"},{code:"AU",name:"Australia",dialCode:"+61",flag:"🇦🇺"},{code:"DE",name:"Germany",dialCode:"+49",flag:"🇩🇪"},{code:"FR",name:"France",dialCode:"+33",flag:"🇫🇷"},{code:"IT",name:"Italy",dialCode:"+39",flag:"🇮🇹"},{code:"ES",name:"Spain",dialCode:"+34",flag:"🇪🇸"},{code:"NL",name:"Netherlands",dialCode:"+31",flag:"🇳🇱"},{code:"BE",name:"Belgium",dialCode:"+32",flag:"🇧🇪"},{code:"CH",name:"Switzerland",dialCode:"+41",flag:"🇨🇭"},{code:"AT",name:"Austria",dialCode:"+43",flag:"🇦🇹"},{code:"SE",name:"Sweden",dialCode:"+46",flag:"🇸🇪"},{code:"NO",name:"Norway",dialCode:"+47",flag:"🇳🇴"},{code:"DK",name:"Denmark",dialCode:"+45",flag:"🇩🇰"},{code:"FI",name:"Finland",dialCode:"+358",flag:"🇫🇮"},{code:"IE",name:"Ireland",dialCode:"+353",flag:"🇮🇪"},{code:"PT",name:"Portugal",dialCode:"+351",flag:"🇵🇹"},{code:"GR",name:"Greece",dialCode:"+30",flag:"🇬🇷"},{code:"PL",name:"Poland",dialCode:"+48",flag:"🇵🇱"},{code:"CZ",name:"Czech Republic",dialCode:"+420",flag:"🇨🇿"},{code:"HU",name:"Hungary",dialCode:"+36",flag:"🇭🇺"},{code:"RO",name:"Romania",dialCode:"+40",flag:"🇷🇴"},{code:"BG",name:"Bulgaria",dialCode:"+359",flag:"🇧🇬"},{code:"HR",name:"Croatia",dialCode:"+385",flag:"🇭🇷"},{code:"SK",name:"Slovakia",dialCode:"+421",flag:"🇸🇰"},{code:"SI",name:"Slovenia",dialCode:"+386",flag:"🇸🇮"},{code:"RS",name:"Serbia",dialCode:"+381",flag:"🇷🇸"},{code:"UA",name:"Ukraine",dialCode:"+380",flag:"🇺🇦"},{code:"RU",name:"Russia",dialCode:"+7",flag:"🇷🇺"},{code:"TR",name:"Turkey",dialCode:"+90",flag:"🇹🇷"},{code:"IL",name:"Israel",dialCode:"+972",flag:"🇮🇱"},{code:"SA",name:"Saudi Arabia",dialCode:"+966",flag:"🇸🇦"},{code:"AE",name:"United Arab Emirates",dialCode:"+971",flag:"🇦🇪"},{code:"QA",name:"Qatar",dialCode:"+974",flag:"🇶🇦"},{code:"KW",name:"Kuwait",dialCode:"+965",flag:"🇰🇼"},{code:"BH",name:"Bahrain",dialCode:"+973",flag:"🇧🇭"},{code:"OM",name:"Oman",dialCode:"+968",flag:"🇴🇲"},{code:"EG",name:"Egypt",dialCode:"+20",flag:"🇪🇬"},{code:"MA",name:"Morocco",dialCode:"+212",flag:"🇲🇦"},{code:"ZA",name:"South Africa",dialCode:"+27",flag:"🇿🇦"},{code:"NG",name:"Nigeria",dialCode:"+234",flag:"🇳🇬"},{code:"KE",name:"Kenya",dialCode:"+254",flag:"🇰🇪"},{code:"GH",name:"Ghana",dialCode:"+233",flag:"🇬🇭"},{code:"IN",name:"India",dialCode:"+91",flag:"🇮🇳"},{code:"PK",name:"Pakistan",dialCode:"+92",flag:"🇵🇰"},{code:"BD",name:"Bangladesh",dialCode:"+880",flag:"🇧🇩"},{code:"CN",name:"China",dialCode:"+86",flag:"🇨🇳"},{code:"JP",name:"Japan",dialCode:"+81",flag:"🇯🇵"},{code:"KR",name:"South Korea",dialCode:"+82",flag:"🇰🇷"},{code:"TW",name:"Taiwan",dialCode:"+886",flag:"🇹🇼"},{code:"HK",name:"Hong Kong",dialCode:"+852",flag:"🇭🇰"},{code:"SG",name:"Singapore",dialCode:"+65",flag:"🇸🇬"},{code:"MY",name:"Malaysia",dialCode:"+60",flag:"🇲🇾"},{code:"TH",name:"Thailand",dialCode:"+66",flag:"🇹🇭"},{code:"VN",name:"Vietnam",dialCode:"+84",flag:"🇻🇳"},{code:"ID",name:"Indonesia",dialCode:"+62",flag:"🇮🇩"},{code:"PH",name:"Philippines",dialCode:"+63",flag:"🇵🇭"},{code:"NZ",name:"New Zealand",dialCode:"+64",flag:"🇳🇿"},{code:"MX",name:"Mexico",dialCode:"+52",flag:"🇲🇽"},{code:"BR",name:"Brazil",dialCode:"+55",flag:"🇧🇷"},{code:"AR",name:"Argentina",dialCode:"+54",flag:"🇦🇷"},{code:"CL",name:"Chile",dialCode:"+56",flag:"🇨🇱"},{code:"CO",name:"Colombia",dialCode:"+57",flag:"🇨🇴"},{code:"PE",name:"Peru",dialCode:"+51",flag:"🇵🇪"},{code:"VE",name:"Venezuela",dialCode:"+58",flag:"🇻🇪"},{code:"EC",name:"Ecuador",dialCode:"+593",flag:"🇪🇨"},{code:"UY",name:"Uruguay",dialCode:"+598",flag:"🇺🇾"},{code:"PY",name:"Paraguay",dialCode:"+595",flag:"🇵🇾"},{code:"BO",name:"Bolivia",dialCode:"+591",flag:"🇧🇴"},{code:"CR",name:"Costa Rica",dialCode:"+506",flag:"🇨🇷"},{code:"PA",name:"Panama",dialCode:"+507",flag:"🇵🇦"},{code:"DO",name:"Dominican Republic",dialCode:"+1",flag:"🇩🇴"},{code:"PR",name:"Puerto Rico",dialCode:"+1",flag:"🇵🇷"},{code:"JM",name:"Jamaica",dialCode:"+1",flag:"🇯🇲"},{code:"TT",name:"Trinidad and Tobago",dialCode:"+1",flag:"🇹🇹"},{code:"IS",name:"Iceland",dialCode:"+354",flag:"🇮🇸"},{code:"LU",name:"Luxembourg",dialCode:"+352",flag:"🇱🇺"},{code:"MT",name:"Malta",dialCode:"+356",flag:"🇲🇹"},{code:"CY",name:"Cyprus",dialCode:"+357",flag:"🇨🇾"},{code:"EE",name:"Estonia",dialCode:"+372",flag:"🇪🇪"},{code:"LV",name:"Latvia",dialCode:"+371",flag:"🇱🇻"},{code:"LT",name:"Lithuania",dialCode:"+370",flag:"🇱🇹"}],CS=[...vo].sort((e,t)=>e.name.localeCompare(t.name)),wn=e=>vo.find(t=>t.code===e),SS=(e,t="US")=>{const r=wn(t)||vo[0];if(!e)return{countryCode:r.code,dialCode:r.dialCode,number:""};if(e.startsWith("+")){for(const o of vo)if(e.startsWith(o.dialCode))return{countryCode:o.code,dialCode:o.dialCode,number:e.slice(o.dialCode.length).trim()}}return{countryCode:r.code,dialCode:r.dialCode,number:e.replace(/^\+/,"")}},NS=({value:e,onChange:t,onBlur:r,defaultCountry:o="US",disabled:n=!1,placeholder:a="Phone number",hasError:s=!1,className:i,inputClassName:c})=>{const d=D.useMemo(()=>{if(!e){const w=wn(o)||vo[0];return{countryCode:w.code,dialCode:w.dialCode,number:""}}return typeof e=="string"?SS(e,o):e},[e,o]),[f,u]=D.useState(d.countryCode),[h,m]=D.useState(d.number),g=D.useRef(null);D.useEffect(()=>{u(d.countryCode),m(d.number)},[d.countryCode,d.number]);const y=D.useMemo(()=>wn(f)||vo[0],[f]),b=w=>{const x=wn(w);if(x){u(w);const S={countryCode:x.code,dialCode:x.dialCode,number:h};t==null||t(S)}},C=w=>{const x=w.target.value.replace(/[^\d\s\-()]/g,"");m(x),t==null||t({countryCode:y.code,dialCode:y.dialCode,number:x})};return l.jsxs("div",{className:p("flex",i),children:[l.jsxs(Xa,{value:f,onValueChange:b,disabled:n,children:[l.jsx(vn,{className:p("w-[110px] rounded-r-none border-r-0 focus:z-10",s&&"border-red-500",n&&"opacity-50 cursor-not-allowed"),children:l.jsx(Ja,{children:l.jsxs("span",{className:p("flex items-center gap-1.5"),children:[l.jsx("span",{className:p("text-base"),children:y.flag}),l.jsx("span",{className:p("text-sm text-muted-foreground"),children:y.dialCode})]})})}),l.jsx(xn,{className:p("max-h-[300px]"),children:CS.map(w=>l.jsx(yo,{value:w.code,className:p("cursor-pointer"),children:l.jsxs("span",{className:p("flex items-center gap-2"),children:[l.jsx("span",{className:p("text-base"),children:w.flag}),l.jsx("span",{className:p("flex-1"),children:w.name}),l.jsx("span",{className:p("text-muted-foreground text-sm"),children:w.dialCode})]})},w.code))})]}),l.jsx("input",{ref:g,type:"tel",value:h,onChange:C,onBlur:r,disabled:n,placeholder:a,className:p("flex-1 h-9 rounded-l-none rounded-r-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm transition-colors","placeholder:text-muted-foreground","focus:outline-none focus:ring-1 focus:ring-ring","disabled:cursor-not-allowed disabled:opacity-50",s&&"border-red-500 focus:ring-red-500",c)})]})},ES=({defaultCountry:e="US",placeholder:t="Phone number",className:r})=>{const o=wn(e)||vo[0];return l.jsxs("div",{className:p("flex",r),children:[l.jsxs("div",{className:p("flex items-center gap-1.5 h-9 px-3 rounded-l-md border border-r-0 border-input bg-muted/50 text-sm"),children:[l.jsx("span",{className:p("text-base"),children:o.flag}),l.jsx("span",{className:p("text-muted-foreground"),children:o.dialCode}),l.jsx("svg",{className:p("h-4 w-4 opacity-50"),xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:l.jsx("path",{d:"m6 9 6 6 6-6"})})]}),l.jsx("input",{type:"tel",placeholder:t,disabled:!0,className:p("flex-1 h-9 rounded-l-none rounded-r-md border border-input bg-muted/50 px-3 py-2 text-sm","placeholder:text-muted-foreground","disabled:cursor-not-allowed disabled:opacity-50")})]})},kS=[{type:"email",structure:"field",typeCategory:"Contact",label:"Email",description:"Email address input",icon:"✉️",category:"field",subCategory:"contact",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0,showPrefix:!1,showSuffix:!1},fields:[]},getDefaultValues:()=>({properties:{label:"Email",placeholder:"email@example.com"},layout:{labelPosition:"top",size:"full"},validation:{}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a}=j(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,children:l.jsx(uo,{icon:"✉️",children:l.jsx("input",{type:"email",placeholder:o||"email@example.com",disabled:!0,className:p(`${Ct()} pl-10`)})})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,value:s,onChange:i,errors:c,isDisabled:d}=j(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,errors:c,children:l.jsx(uo,{icon:"✉️",children:l.jsx("input",{type:"email",placeholder:o||"email@example.com",value:s??"",onChange:f=>i==null?void 0:i(f.target.value),disabled:d,className:p(`${Ot({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})} pl-10`)})})})}},{type:"phone",structure:"field",typeCategory:"Contact",label:"Phone",description:"Phone number input with country code",icon:"📱",category:"field",subCategory:"contact",dataType:"object",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0,showPrefix:!1,showSuffix:!1},configSection:{title:"Phone Settings",icon:"📱"},fields:[{key:"defaultCountry",label:"Default Country",type:"select",section:"config",options:[{value:"US",label:"🇺🇸 United States (+1)"},{value:"GB",label:"🇬🇧 United Kingdom (+44)"},{value:"CA",label:"🇨🇦 Canada (+1)"},{value:"AU",label:"🇦🇺 Australia (+61)"},{value:"DE",label:"🇩🇪 Germany (+49)"},{value:"FR",label:"🇫🇷 France (+33)"},{value:"IT",label:"🇮🇹 Italy (+39)"},{value:"ES",label:"🇪🇸 Spain (+34)"},{value:"NL",label:"🇳🇱 Netherlands (+31)"},{value:"BE",label:"🇧🇪 Belgium (+32)"},{value:"CH",label:"🇨🇭 Switzerland (+41)"},{value:"AT",label:"🇦🇹 Austria (+43)"},{value:"SE",label:"🇸🇪 Sweden (+46)"},{value:"NO",label:"🇳🇴 Norway (+47)"},{value:"DK",label:"🇩🇰 Denmark (+45)"},{value:"FI",label:"🇫🇮 Finland (+358)"},{value:"IE",label:"🇮🇪 Ireland (+353)"},{value:"PT",label:"🇵🇹 Portugal (+351)"},{value:"PL",label:"🇵🇱 Poland (+48)"},{value:"TR",label:"🇹🇷 Turkey (+90)"},{value:"IN",label:"🇮🇳 India (+91)"},{value:"JP",label:"🇯🇵 Japan (+81)"},{value:"KR",label:"🇰🇷 South Korea (+82)"},{value:"BR",label:"🇧🇷 Brazil (+55)"},{value:"MX",label:"🇲🇽 Mexico (+52)"}]},{key:"format",label:"Number Format",type:"select",section:"config",options:[{value:"international",label:"International (+1 555 123 4567)"},{value:"national",label:"National ((555) 123-4567)"}]}]},getDefaultValues:()=>({properties:{label:"Phone",placeholder:"Phone number"},layout:{labelPosition:"top",size:"full"},config:{defaultCountry:"US",format:"international"}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,config:s}=j(e),i=(s==null?void 0:s.defaultCountry)||"US";return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,children:l.jsx(ES,{defaultCountry:i,placeholder:o||"Phone number"})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,value:s,onChange:i,errors:c,isDisabled:d,config:f}=j(e),u=(f==null?void 0:f.defaultCountry)||"US",h=m=>{i==null||i(m)};return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,errors:c,children:l.jsx(NS,{value:s,onChange:h,defaultCountry:u,disabled:d,placeholder:o||"Phone number",hasError:((c==null?void 0:c.length)??0)>0})})}},{type:"url",structure:"field",typeCategory:"Contact",label:"URL",description:"Website URL input",icon:"🔗",category:"field",subCategory:"contact",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0,showPrefix:!1,showSuffix:!1},fields:[]},getDefaultValues:()=>({properties:{label:"Website",placeholder:"https://example.com"},layout:{labelPosition:"top",size:"full"}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a}=j(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,children:l.jsx(uo,{icon:"🔗",children:l.jsx("input",{type:"url",placeholder:o||"https://example.com",disabled:!0,className:p(`${Ct()} pl-10`)})})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,value:s,onChange:i,errors:c,isDisabled:d}=j(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,errors:c,children:l.jsx(uo,{icon:"🔗",children:l.jsx("input",{type:"url",placeholder:o||"https://example.com",value:s??"",onChange:f=>i==null?void 0:i(f.target.value),disabled:d,className:p(`${Ot({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})} pl-10`)})})})}},{type:"location",structure:"field",typeCategory:"Contact",label:"Location",description:"Address/location input",icon:"📍",category:"field",subCategory:"contact",dataType:"object",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0,showPrefix:!1,showSuffix:!1},configSection:{title:"Location Settings",icon:"📍"},fields:[{key:"enableGeolocation",label:"Enable Geolocation",type:"checkbox",section:"config",description:"Allow auto-detect location"},{key:"showMap",label:"Show Map",type:"checkbox",section:"config",description:"Display map preview"},{key:"mapProvider",label:"Map Provider",type:"select",section:"config",showWhen:{field:"showMap",value:!0},options:[{value:"google",label:"Google Maps"},{value:"openstreetmap",label:"OpenStreetMap"}]}]},getDefaultValues:()=>({properties:{label:"Location",placeholder:"Enter address...",description:"Enter your address"},layout:{labelPosition:"top",size:"full"},config:{enableGeolocation:!1,showMap:!1,mapProvider:"openstreetmap"}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,config:s}=j(e);return l.jsxs(de,{label:t,description:r,required:n,labelPosition:a,children:[l.jsx(uo,{icon:"📍",children:l.jsx("input",{type:"text",placeholder:o||"Enter address...",disabled:!0,className:p(`${Ct()} pl-10`)})}),(s==null?void 0:s.showMap)&&l.jsx("div",{className:p("h-32 bg-gray-200 rounded-md flex items-center justify-center text-gray-400 text-sm mt-2"),children:"🗺️ Map Preview"})]})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,value:s,onChange:i,errors:c,isDisabled:d,config:f}=j(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:a,errors:c,children:l.jsxs("div",{className:p("space-y-2"),children:[l.jsx(uo,{icon:"📍",children:l.jsx("input",{type:"text",placeholder:o||"Enter address...",value:typeof s=="string"?s:(s==null?void 0:s.address)??"",onChange:u=>i==null?void 0:i(u.target.value),disabled:d,className:p(`${Ot({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})} pl-10`)})}),(f==null?void 0:f.enableGeolocation)&&!d&&l.jsx("button",{type:"button",className:p("text-sm text-blue-600 hover:text-blue-700 flex items-center gap-1"),children:"📍 Use current location"}),(f==null?void 0:f.showMap)&&l.jsx("div",{className:p("h-32 bg-gray-200 rounded-md flex items-center justify-center text-gray-400 text-sm"),children:"🗺️ Map Preview"})]})})}}],_S=[{type:"date",structure:"field",typeCategory:"DateTime",label:"Date",description:"Date picker input",icon:"📅",category:"field",subCategory:"dateTime",dataType:"date",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Date Settings",icon:"📅"},fields:[{key:"format",label:"Display Format",type:"select",section:"config",options:[{value:"YYYY-MM-DD",label:"YYYY-MM-DD (2025-01-15)"},{value:"DD/MM/YYYY",label:"DD/MM/YYYY (15/01/2025)"},{value:"MM/DD/YYYY",label:"MM/DD/YYYY (01/15/2025)"},{value:"MMMM D, YYYY",label:"MMMM D, YYYY (January 15, 2025)"}]},{key:"showCalendar",label:"Show Calendar Picker",type:"checkbox",section:"config",description:"Display a calendar dropdown for date selection"},{key:"minDate",label:"Min Date",type:"text",section:"config",placeholder:"YYYY-MM-DD",description:"Earliest selectable date"},{key:"maxDate",label:"Max Date",type:"text",section:"config",placeholder:"YYYY-MM-DD",description:"Latest selectable date"},{key:"disableWeekends",label:"Disable Weekends",type:"checkbox",section:"config",description:"Prevent selecting Saturday and Sunday"}]},getDefaultValues:()=>({properties:{label:"Date",placeholder:"Select a date"},layout:{labelPosition:"top",size:"full"},config:{format:"YYYY-MM-DD",showCalendar:!0}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n}=j(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsx("input",{type:"date",disabled:!0,className:Ct()})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c}=j(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsx("input",{type:"date",value:a??"",onChange:d=>s==null?void 0:s(d.target.value),disabled:c,className:Ot({hasError:((i==null?void 0:i.length)??0)>0,disabled:c})})})}},{type:"time",structure:"field",typeCategory:"DateTime",label:"Time",description:"Time picker input",icon:"🕐",category:"field",subCategory:"dateTime",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Time Settings",icon:"⏰"},fields:[{key:"timeFormat",label:"Time Format",type:"select",section:"config",options:[{value:"12h",label:"12-hour (AM / PM)"},{value:"24h",label:"24-hour"}]},{key:"timeInterval",label:"Minute Interval",type:"select",section:"config",description:"Granularity for the time dropdown",options:[{value:5,label:"5 minutes"},{value:10,label:"10 minutes"},{value:15,label:"15 minutes"},{value:30,label:"30 minutes"},{value:60,label:"1 hour"}]},{key:"minTime",label:"Earliest Time",type:"text",section:"config",placeholder:"09:00",description:"Minimum selectable time",colSpan:1},{key:"maxTime",label:"Latest Time",type:"text",section:"config",placeholder:"17:00",description:"Maximum selectable time",colSpan:1},{key:"showNowButton",label:'Show "Now" Button',type:"checkbox",section:"config",description:"Quick-fill with the current time"}]},getDefaultValues:()=>({properties:{label:"Time",placeholder:"Select a time"},layout:{labelPosition:"top",size:"full"},config:{timeFormat:"24h",timeInterval:15}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n}=j(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsx("input",{type:"time",disabled:!0,className:Ct()})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c}=j(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsx("input",{type:"time",value:a??"",onChange:d=>s==null?void 0:s(d.target.value),disabled:c,className:Ot({hasError:((i==null?void 0:i.length)??0)>0,disabled:c})})})}},{type:"dateTime",structure:"field",typeCategory:"DateTime",label:"Date & Time",description:"Combined date and time picker",icon:"📆",category:"field",subCategory:"dateTime",dataType:"date",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Date & Time Settings",icon:"📅"},fields:[{key:"format",label:"Date Format",type:"select",section:"config",options:[{value:"YYYY-MM-DD",label:"YYYY-MM-DD"},{value:"DD/MM/YYYY",label:"DD/MM/YYYY"},{value:"MM/DD/YYYY",label:"MM/DD/YYYY"},{value:"MMMM D, YYYY",label:"MMMM D, YYYY"}]},{key:"timeFormat",label:"Time Format",type:"select",section:"config",options:[{value:"12h",label:"12-hour (AM / PM)"},{value:"24h",label:"24-hour"}]},{key:"timeInterval",label:"Minute Interval",type:"select",section:"config",options:[{value:5,label:"5 minutes"},{value:10,label:"10 minutes"},{value:15,label:"15 minutes"},{value:30,label:"30 minutes"},{value:60,label:"1 hour"}]},{key:"minDate",label:"Min Date",type:"text",section:"config",placeholder:"YYYY-MM-DD",colSpan:1},{key:"maxDate",label:"Max Date",type:"text",section:"config",placeholder:"YYYY-MM-DD",colSpan:1},{key:"showSeconds",label:"Show Seconds",type:"checkbox",section:"config",description:"Include seconds in the time picker"}]},getDefaultValues:()=>({properties:{label:"Date & Time",placeholder:"Select date and time"},layout:{labelPosition:"top",size:"full"},config:{format:"YYYY-MM-DD",timeFormat:"24h",timeInterval:15}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n}=j(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:p("flex gap-2"),children:[l.jsx("input",{type:"date",disabled:!0,className:`flex-1 ${Ct()}`}),l.jsx("input",{type:"time",disabled:!0,className:`w-32 ${Ct()}`})]})})},render:e=>{var g;const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c}=j(e),d=typeof a=="object"?a==null?void 0:a.date:(a==null?void 0:a.split("T")[0])??"",f=typeof a=="object"?a==null?void 0:a.time:((g=a==null?void 0:a.split("T")[1])==null?void 0:g.substring(0,5))??"",u=y=>{typeof a=="object"?s==null||s({...a,date:y}):s==null||s(`${y}T${f||"00:00"}`)},h=y=>{typeof a=="object"?s==null||s({...a,time:y}):s==null||s(`${d||""}T${y}`)},m=Ot({hasError:((i==null?void 0:i.length)??0)>0,disabled:c});return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{className:p("flex gap-2"),children:[l.jsx("input",{type:"date",value:d,onChange:y=>u(y.target.value),disabled:c,className:`flex-1 ${m}`}),l.jsx("input",{type:"time",value:f,onChange:y=>h(y.target.value),disabled:c,className:`w-32 ${m}`})]})})}},{type:"multipleDates",structure:"field",typeCategory:"DateTime",label:"Multiple Dates",description:"Select multiple dates",icon:"📅",category:"field",subCategory:"dateTime",dataType:"array",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Multiple Dates Settings",icon:"📆"},fields:[{key:"format",label:"Display Format",type:"select",section:"config",options:[{value:"YYYY-MM-DD",label:"YYYY-MM-DD"},{value:"DD/MM/YYYY",label:"DD/MM/YYYY"},{value:"MM/DD/YYYY",label:"MM/DD/YYYY"},{value:"MMMM D, YYYY",label:"MMMM D, YYYY"}]},{key:"showCalendar",label:"Show Calendar Picker",type:"checkbox",section:"config",description:"Display a calendar for multi-date selection"},{key:"minDates",label:"Min Dates",type:"number",section:"validation",min:1,placeholder:"1",description:"Minimum number of dates to select",colSpan:1},{key:"maxDates",label:"Max Dates",type:"number",section:"validation",min:1,placeholder:"10",description:"Maximum number of dates allowed",colSpan:1},{key:"allowPastDates",label:"Allow Past Dates",type:"checkbox",section:"config",description:"Let users select dates in the past"},{key:"disableWeekends",label:"Disable Weekends",type:"checkbox",section:"config",description:"Prevent selecting Saturday and Sunday"}]},getDefaultValues:()=>({properties:{label:"Multiple Dates",placeholder:"Add dates",description:"Select one or more dates"},layout:{labelPosition:"top",size:"full"},config:{format:"YYYY-MM-DD",showCalendar:!0}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n}=j(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:p("space-y-2"),children:[l.jsxs("div",{className:p("flex flex-wrap gap-2"),children:[l.jsxs("span",{className:p("inline-flex items-center gap-1 px-2 py-1 bg-blue-100 text-blue-800 text-sm rounded"),children:["2024-01-15",l.jsx("button",{disabled:!0,className:p("text-blue-600"),children:"×"})]}),l.jsxs("span",{className:p("inline-flex items-center gap-1 px-2 py-1 bg-blue-100 text-blue-800 text-sm rounded"),children:["2024-01-20",l.jsx("button",{disabled:!0,className:p("text-blue-600"),children:"×"})]})]}),l.jsx("input",{type:"date",disabled:!0,className:Ct()})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c}=j(e),d=Array.isArray(a)?a:[],f=h=>{h&&!d.includes(h)&&(s==null||s([...d,h]))},u=h=>{s==null||s(d.filter(m=>m!==h))};return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{className:p("space-y-2"),children:[d.length>0&&l.jsx("div",{className:p("flex flex-wrap gap-2"),children:d.map((h,m)=>l.jsxs("span",{className:p("inline-flex items-center gap-1 px-2 py-1 bg-blue-100 text-blue-800 text-sm rounded"),children:[h,!c&&l.jsx("button",{type:"button",onClick:()=>u(h),className:p("text-blue-600 hover:text-blue-800"),children:"×"})]},m))}),l.jsx("input",{type:"date",onChange:h=>{f(h.target.value),h.target.value=""},disabled:c,className:Ot({hasError:((i==null?void 0:i.length)??0)>0,disabled:c})})]})})}},{type:"dateRange",structure:"field",typeCategory:"DateTime",label:"Date Range",description:"Select a date range",icon:"📆",category:"field",subCategory:"dateTime",dataType:"object",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Date Range Settings",icon:"📊"},fields:[{key:"format",label:"Display Format",type:"select",section:"config",options:[{value:"YYYY-MM-DD",label:"YYYY-MM-DD"},{value:"DD/MM/YYYY",label:"DD/MM/YYYY"},{value:"MM/DD/YYYY",label:"MM/DD/YYYY"},{value:"MMMM D, YYYY",label:"MMMM D, YYYY"}]},{key:"showCalendar",label:"Show Calendar Picker",type:"checkbox",section:"config",description:"Display a calendar range selector"},{key:"minDays",label:"Min Days",type:"number",section:"config",min:1,placeholder:"1",description:"Minimum length of the selected range",colSpan:1},{key:"maxDays",label:"Max Days",type:"number",section:"config",min:1,placeholder:"30",description:"Maximum length of the selected range",colSpan:1},{key:"allowSameDayRange",label:"Allow Same-Day Range",type:"checkbox",section:"config",description:"Start and end date can be the same day"},{key:"disableWeekends",label:"Disable Weekends",type:"checkbox",section:"config",description:"Exclude Saturday and Sunday from selection"},{key:"minDate",label:"Earliest Start Date",type:"text",section:"config",placeholder:"YYYY-MM-DD",description:"First selectable date in the range"},{key:"maxDate",label:"Latest End Date",type:"text",section:"config",placeholder:"YYYY-MM-DD",description:"Last selectable date in the range"}]},getDefaultValues:()=>({properties:{label:"Date Range",placeholder:"Select date range",description:"Select start and end dates"},layout:{labelPosition:"top",size:"full"},config:{format:"YYYY-MM-DD",showCalendar:!0,minDays:1}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n}=j(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:p("flex items-center gap-2"),children:[l.jsx("input",{type:"date",disabled:!0,placeholder:"Start date",className:`flex-1 ${Ct()}`}),l.jsx("span",{className:p("text-gray-400"),children:"→"}),l.jsx("input",{type:"date",disabled:!0,placeholder:"End date",className:`flex-1 ${Ct()}`})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c}=j(e),d=(a==null?void 0:a.start)??"",f=(a==null?void 0:a.end)??"",u=g=>{s==null||s({start:g,end:f})},h=g=>{s==null||s({start:d,end:g})},m=Ot({hasError:((i==null?void 0:i.length)??0)>0,disabled:c});return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{className:p("flex items-center gap-2"),children:[l.jsx("input",{type:"date",value:d,onChange:g=>u(g.target.value),disabled:c,placeholder:"Start date",className:`flex-1 ${m}`}),l.jsx("span",{className:p("text-gray-400"),children:"→"}),l.jsx("input",{type:"date",value:f,onChange:g=>h(g.target.value),disabled:c,min:d,placeholder:"End date",className:`flex-1 ${m}`})]})})}}],DS=[{type:"paragraph",structure:"field",typeCategory:"Display",label:"Paragraph",description:"Static text content",icon:"📜",category:"field",subCategory:"display",dataType:"string",supportsValidation:!1,getDefaultValues:()=>({properties:{label:"Paragraph",content:"Enter your paragraph text here. This is a static text element that displays information to users."},layout:{labelPosition:"hidden",size:"full"},config:{textAlign:"left",fontSize:"medium",fontWeight:"normal"}}),renderOnCanvas:e=>{const{element:t,config:r}=j(e),o=t.properties.content||"Enter your paragraph text here.",n={small:"text-sm",medium:"text-base",large:"text-lg"}[(r==null?void 0:r.fontSize)||"medium"],a={normal:"font-normal",medium:"font-medium",bold:"font-bold"}[(r==null?void 0:r.fontWeight)||"normal"];return l.jsx("div",{className:p("prose prose-sm max-w-none"),style:{textAlign:(r==null?void 0:r.textAlign)||"left"},children:l.jsx("p",{className:p("text-gray-700",n,a),children:o})})},render:e=>{const{element:t,config:r}=j(e),o=t.properties.content||"",n={small:"text-sm",medium:"text-base",large:"text-lg"}[(r==null?void 0:r.fontSize)||"medium"],a={normal:"font-normal",medium:"font-medium",bold:"font-bold"}[(r==null?void 0:r.fontWeight)||"normal"];return l.jsx("div",{className:p("prose prose-sm max-w-none"),style:{textAlign:(r==null?void 0:r.textAlign)||"left"},children:l.jsx("p",{className:p("text-gray-700",n,a),children:o})})}},{type:"image",structure:"field",typeCategory:"Display",label:"Image",description:"Display an image",icon:"🖼️",category:"field",subCategory:"display",dataType:"string",supportsValidation:!1,getDefaultValues:()=>({properties:{label:"Image",alt:"Image description",src:""},layout:{labelPosition:"hidden",size:"full"},config:{imageWidth:"100%",objectFit:"contain",borderRadius:0}}),renderOnCanvas:e=>{const{element:t,config:r}=j(e),o=t.properties.src,n=t.properties.alt||"Image";return o?l.jsx("div",{className:p("space-y-1.5"),children:l.jsx("img",{src:o,alt:n,className:p("max-w-full rounded"),style:{width:(r==null?void 0:r.imageWidth)||"100%",objectFit:(r==null?void 0:r.objectFit)||"contain",borderRadius:(r==null?void 0:r.borderRadius)||0}})}):l.jsxs("div",{className:p("border-2 border-dashed border-gray-300 rounded-lg p-8 text-center bg-gray-50"),children:[l.jsx("span",{className:p("text-4xl"),children:"🏞️"}),l.jsx("p",{className:p("mt-2 text-sm text-gray-500"),children:"No image selected"}),l.jsx("p",{className:p("text-xs text-gray-400"),children:"Set image URL in properties"})]})},render:e=>{const{element:t,config:r}=j(e),o=t.properties.src,n=t.properties.alt||"Image";return o?l.jsx("div",{className:p("space-y-1.5"),children:l.jsx("img",{src:o,alt:n,className:p("max-w-full"),style:{width:(r==null?void 0:r.imageWidth)||"100%",objectFit:(r==null?void 0:r.objectFit)||"contain",borderRadius:(r==null?void 0:r.borderRadius)||0}})}):null}},{type:"link",structure:"field",typeCategory:"Display",label:"Link",description:"Clickable link or button",icon:"🔗",category:"field",subCategory:"display",dataType:"string",supportsValidation:!1,getDefaultValues:()=>({properties:{label:"Link",href:"https://example.com",content:"Click here",target:"_blank"},layout:{labelPosition:"hidden",size:"default"},config:{linkStyle:"text"}}),renderOnCanvas:e=>{const{element:t,config:r}=j(e),o=t.properties.content||(r==null?void 0:r.linkText)||"Click here",n=t.properties.href||"https://example.com";return(r==null?void 0:r.linkStyle)==="button"?l.jsxs("div",{className:p("space-y-1"),children:[l.jsx("a",{href:"#",onClick:a=>a.preventDefault(),className:p("inline-block px-4 py-2 bg-blue-600 text-white rounded-md text-sm hover:bg-blue-700"),children:o}),l.jsx("p",{className:p("text-xs text-gray-400"),children:n})]}):l.jsxs("div",{className:p("space-y-1"),children:[l.jsx("a",{href:"#",onClick:a=>a.preventDefault(),className:p("text-blue-600 hover:text-blue-800 underline text-sm"),children:o}),l.jsx("p",{className:p("text-xs text-gray-400"),children:n})]})},render:e=>{const{element:t,config:r}=j(e),o=t.properties.content||(r==null?void 0:r.linkText)||"Click here",n=t.properties.href||"#",a=t.properties.target||"_blank";return(r==null?void 0:r.linkStyle)==="button"?l.jsx("a",{href:n,target:a,rel:a==="_blank"?"noopener noreferrer":void 0,className:p("inline-block px-4 py-2 bg-blue-600 text-white rounded-md text-sm hover:bg-blue-700 transition-colors"),children:o}):l.jsx("a",{href:n,target:a,rel:a==="_blank"?"noopener noreferrer":void 0,className:p("text-blue-600 hover:text-blue-800 underline text-sm transition-colors"),children:o})}}],AS=[{type:"divider",structure:"page",typeCategory:"Layout",label:"Divider",description:"Horizontal line separator",icon:"➖",category:"page",subCategory:"layout",supportsValidation:!1,getDefaultValues:()=>({properties:{},layout:{size:"full"},config:{style:"solid",thickness:1,color:"rgb(209, 213, 219)"}}),renderOnCanvas:e=>{const{config:t}=j(e);return l.jsx("hr",{style:{borderStyle:(t==null?void 0:t.style)||"solid",borderWidth:`${(t==null?void 0:t.thickness)||1}px 0 0 0`,borderColor:(t==null?void 0:t.color)||"rgb(209, 213, 219)"}})},render:e=>{const{config:t}=j(e);return l.jsx("hr",{style:{borderStyle:(t==null?void 0:t.style)||"solid",borderWidth:`${(t==null?void 0:t.thickness)||1}px 0 0 0`,borderColor:(t==null?void 0:t.color)||"rgb(209, 213, 219)"}})}},{type:"spacer",structure:"page",typeCategory:"Layout",label:"Spacer",description:"Vertical spacing element",icon:"↕️",category:"page",subCategory:"layout",supportsValidation:!1,getDefaultValues:()=>({properties:{},layout:{size:"full",height:24},config:{spacerHeight:24}}),renderOnCanvas:e=>{const{config:t}=j(e),r=(t==null?void 0:t.spacerHeight)||24;return l.jsx("div",{className:p("bg-gray-100/50 border border-dashed border-gray-300 rounded flex items-center justify-center"),style:{height:r},children:l.jsxs("span",{className:p("text-xs text-gray-400"),children:["↕️ Spacer (",r,"px)"]})})},render:e=>{const{config:t}=j(e),r=(t==null?void 0:t.spacerHeight)||24;return l.jsx("div",{style:{height:r}})}},{type:"formHeading",structure:"page",typeCategory:"Heading",label:"Form Heading",description:"Main form title",icon:"📋",category:"page",subCategory:"heading",supportsValidation:!1,getDefaultValues:()=>({properties:{label:"Form Title",description:"Form description goes here"},layout:{size:"full"},config:{level:1,alignment:"left"}}),renderOnCanvas:e=>{const{label:t,description:r,config:o}=j(e);return l.jsxs("div",{className:p(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[l.jsx("h1",{className:p("text-2xl font-bold text-gray-900"),children:t}),r&&l.jsx("p",{className:p("text-gray-600 mt-1"),children:r})]})},render:e=>{const{label:t,description:r,config:o}=j(e);return l.jsxs("div",{className:p(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[l.jsx("h1",{className:p("text-2xl font-bold text-gray-900"),children:t}),r&&l.jsx("p",{className:p("text-gray-600 mt-1"),children:r})]})}},{type:"sectionHeading",structure:"page",typeCategory:"Heading",label:"Section Heading",description:"Section title",icon:"📑",category:"page",subCategory:"heading",supportsValidation:!1,getDefaultValues:()=>({properties:{label:"Section Title"},layout:{size:"full"},config:{level:2,alignment:"left"}}),renderOnCanvas:e=>{const{label:t,description:r,config:o}=j(e);return l.jsxs("div",{className:p(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[l.jsx("h2",{className:p("text-xl font-semibold text-gray-800"),children:t}),r&&l.jsx("p",{className:p("text-gray-500 text-sm mt-1"),children:r})]})},render:e=>{const{label:t,description:r,config:o}=j(e);return l.jsxs("div",{className:p(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[l.jsx("h2",{className:p("text-xl font-semibold text-gray-800"),children:t}),r&&l.jsx("p",{className:p("text-gray-500 text-sm mt-1"),children:r})]})}},{type:"subheading",structure:"page",typeCategory:"Heading",label:"Subheading",description:"Smaller heading",icon:"📝",category:"page",subCategory:"heading",supportsValidation:!1,getDefaultValues:()=>({properties:{label:"Subheading"},layout:{size:"full"},config:{level:3,alignment:"left"}}),renderOnCanvas:e=>{const{label:t,description:r,config:o}=j(e);return l.jsxs("div",{className:p(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[l.jsx("h3",{className:p("text-lg font-medium text-gray-700"),children:t}),r&&l.jsx("p",{className:p("text-gray-500 text-sm mt-0.5"),children:r})]})},render:e=>{const{label:t,description:r,config:o}=j(e);return l.jsxs("div",{className:p(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[l.jsx("h3",{className:p("text-lg font-medium text-gray-700"),children:t}),r&&l.jsx("p",{className:p("text-gray-500 text-sm mt-0.5"),children:r})]})}},{type:"submit",structure:"page",typeCategory:"Special",label:"Submit Button",description:"Form submission button",icon:"🚀",category:"page",subCategory:"special",supportsValidation:!1,getDefaultValues:()=>({properties:{label:"Submit"},layout:{size:"default"},config:{buttonText:"Submit",buttonStyle:"primary",buttonSize:"medium",showIcon:!1,loadingText:"Submitting..."}}),renderOnCanvas:e=>{const{label:t,config:r}=j(e),o=(r==null?void 0:r.buttonText)||t||"Submit",n=(r==null?void 0:r.buttonStyle)||"primary",a=(r==null?void 0:r.buttonSize)||"medium",s={primary:"bg-blue-600 text-white hover:bg-blue-700",secondary:"bg-gray-600 text-white hover:bg-gray-700",outline:"border-2 border-blue-600 text-blue-600 bg-transparent hover:bg-blue-50",ghost:"text-blue-600 hover:bg-blue-50"},i={small:"px-4 py-1.5 text-sm",medium:"px-6 py-2.5 text-base",large:"px-8 py-3 text-lg"};return l.jsxs("button",{type:"button",disabled:!0,className:p("rounded-md font-medium transition-colors",s[n],i[a]),children:[(r==null?void 0:r.showIcon)&&(r==null?void 0:r.iconPosition)==="left"&&l.jsx("span",{className:p("mr-2"),children:"🚀"}),o,(r==null?void 0:r.showIcon)&&(r==null?void 0:r.iconPosition)==="right"&&l.jsx("span",{className:p("ml-2"),children:"🚀"})]})},render:e=>{const{label:t,config:r,isDisabled:o}=j(e),n=(r==null?void 0:r.buttonText)||t||"Submit",a=(r==null?void 0:r.buttonStyle)||"primary",s=(r==null?void 0:r.buttonSize)||"medium",i={primary:"bg-blue-600 text-white hover:bg-blue-700 focus:ring-blue-500",secondary:"bg-gray-600 text-white hover:bg-gray-700 focus:ring-gray-500",outline:"border-2 border-blue-600 text-blue-600 bg-transparent hover:bg-blue-50 focus:ring-blue-500",ghost:"text-blue-600 hover:bg-blue-50 focus:ring-blue-500"},c={small:"px-4 py-1.5 text-sm",medium:"px-6 py-2.5 text-base",large:"px-8 py-3 text-lg"};return l.jsxs("button",{type:"submit",disabled:o,className:p("rounded-md font-medium transition-colors focus:outline-none focus:ring-2 focus:ring-offset-2",i[a],c[s],o&&"opacity-50 cursor-not-allowed"),children:[(r==null?void 0:r.showIcon)&&(r==null?void 0:r.iconPosition)==="left"&&l.jsx("span",{className:p("mr-2"),children:"🚀"}),n,(r==null?void 0:r.showIcon)&&(r==null?void 0:r.iconPosition)==="right"&&l.jsx("span",{className:p("ml-2"),children:"🚀"})]})}}],TS=[{type:"singleChoiceMatrix",structure:"field",typeCategory:"Matrix",label:"Single Choice Matrix",description:"Matrix with radio button selections",icon:"📊",category:"field",subCategory:"matrix",dataType:"object",supportsValidation:!0,supportsMatrix:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Matrix Settings",icon:"📊"},fields:[{key:"randomizeRows",label:"Randomize Row Order",type:"checkbox",section:"config",description:"Shuffle rows for each respondent (surveys)"},{key:"randomizeColumns",label:"Randomize Column Order",type:"checkbox",section:"config",description:"Shuffle columns for each respondent"},{key:"showRowNumbers",label:"Show Row Numbers",type:"checkbox",section:"config",description:"Number each row for easy reference"},{key:"requiredPerRow",label:"Require Every Row",type:"checkbox",section:"config",description:"Each row must have a selection before submit"},{key:"layoutStyle",label:"Layout Style",type:"select",section:"config",description:"Visual presentation of the matrix",options:[{value:"table",label:"Table (grid)"},{value:"card",label:"Card per row"},{value:"inline",label:"Inline (compact)"}]}]},getDefaultValues:()=>({properties:{label:"Single Choice Matrix",description:"Select one option per row"},layout:{labelPosition:"top",size:"full"},config:{matrixRows:[{id:"row1",label:"Row 1"},{id:"row2",label:"Row 2"},{id:"row3",label:"Row 3"}],matrixColumns:[{id:"col1",label:"Option 1"},{id:"col2",label:"Option 2"},{id:"col3",label:"Option 3"}]}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:a}=j(e),s=(a==null?void 0:a.matrixRows)||[],i=(a==null?void 0:a.matrixColumns)||[];return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsx("div",{className:p("overflow-x-auto"),children:l.jsxs("table",{className:p("w-full border-collapse text-sm"),children:[l.jsx("thead",{children:l.jsxs("tr",{children:[l.jsx("th",{className:p("p-2 text-left")}),i.map(c=>l.jsx("th",{className:p("p-2 text-center font-medium text-gray-700"),children:c.label},c.id))]})}),l.jsx("tbody",{children:s.map(c=>l.jsxs("tr",{className:p("border-t border-gray-200"),children:[l.jsx("td",{className:p("p-2 text-gray-700"),children:c.label}),i.map(d=>l.jsx("td",{className:p("p-2 text-center"),children:l.jsx("input",{type:"radio",disabled:!0,name:c.id,className:p("text-blue-600")})},d.id))]},c.id))})]})})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c,config:d}=j(e),f=(d==null?void 0:d.matrixRows)||[],u=(d==null?void 0:d.matrixColumns)||[],h=a||{},m=(g,y)=>{c||s==null||s({...h,[g]:y})};return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsx("div",{className:p("overflow-x-auto"),children:l.jsxs("table",{className:p("w-full border-collapse text-sm"),children:[l.jsx("thead",{children:l.jsxs("tr",{children:[l.jsx("th",{className:p("p-2 text-left")}),u.map(g=>l.jsx("th",{className:p("p-2 text-center font-medium text-gray-700"),children:g.label},g.id))]})}),l.jsx("tbody",{children:f.map(g=>l.jsxs("tr",{className:p("border-t border-gray-200"),children:[l.jsx("td",{className:p("p-2 text-gray-700"),children:g.label}),u.map(y=>l.jsx("td",{className:p("p-2 text-center"),children:l.jsx("input",{type:"radio",name:`${e.element.id}-${g.id}`,checked:h[g.id]===y.id,onChange:()=>m(g.id,y.id),disabled:c,className:p("text-blue-600 cursor-pointer disabled:cursor-not-allowed")})},y.id))]},g.id))})]})})})}},{type:"multipleChoiceMatrix",structure:"field",typeCategory:"Matrix",label:"Multiple Choice Matrix",description:"Matrix with checkbox selections",icon:"📋",category:"field",subCategory:"matrix",dataType:"object",supportsValidation:!0,supportsMatrix:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Matrix Settings",icon:"📋"},fields:[{key:"allowMultiplePerRow",label:"Allow Multiple Per Row",type:"checkbox",section:"config",description:"Let users select more than one column per row"},{key:"maxSelectionsPerRow",label:"Max Selections Per Row",type:"number",section:"config",min:1,placeholder:"e.g. 3",description:"Limit how many columns can be checked per row",showWhen:{field:"allowMultiplePerRow",value:!0}},{key:"randomizeRows",label:"Randomize Row Order",type:"checkbox",section:"config",description:"Shuffle rows for each respondent (surveys)"},{key:"randomizeColumns",label:"Randomize Column Order",type:"checkbox",section:"config",description:"Shuffle columns for each respondent"},{key:"showRowNumbers",label:"Show Row Numbers",type:"checkbox",section:"config",description:"Number each row for easy reference"},{key:"showSelectAll",label:'Show "Select All" Column',type:"checkbox",section:"config",description:"Add a column header to check all rows at once"}]},getDefaultValues:()=>({properties:{label:"Multiple Choice Matrix",description:"Select multiple options per row"},layout:{labelPosition:"top",size:"full"},config:{matrixRows:[{id:"row1",label:"Row 1"},{id:"row2",label:"Row 2"},{id:"row3",label:"Row 3"}],matrixColumns:[{id:"col1",label:"Option 1"},{id:"col2",label:"Option 2"},{id:"col3",label:"Option 3"}],allowMultiplePerRow:!0}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:a}=j(e),s=(a==null?void 0:a.matrixRows)||[],i=(a==null?void 0:a.matrixColumns)||[];return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsx("div",{className:p("overflow-x-auto"),children:l.jsxs("table",{className:p("w-full border-collapse text-sm"),children:[l.jsx("thead",{children:l.jsxs("tr",{children:[l.jsx("th",{className:p("p-2 text-left")}),i.map(c=>l.jsx("th",{className:p("p-2 text-center font-medium text-gray-700"),children:c.label},c.id))]})}),l.jsx("tbody",{children:s.map(c=>l.jsxs("tr",{className:p("border-t border-gray-200"),children:[l.jsx("td",{className:p("p-2 text-gray-700"),children:c.label}),i.map(d=>l.jsx("td",{className:p("p-2 text-center"),children:l.jsx("input",{type:"checkbox",disabled:!0,className:p("text-blue-600 rounded")})},d.id))]},c.id))})]})})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c,config:d}=j(e),f=(d==null?void 0:d.matrixRows)||[],u=(d==null?void 0:d.matrixColumns)||[],h=a||{},m=(g,y)=>{if(c)return;const b=h[g]||[],C=b.includes(y)?b.filter(w=>w!==y):[...b,y];s==null||s({...h,[g]:C})};return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsx("div",{className:p("overflow-x-auto"),children:l.jsxs("table",{className:p("w-full border-collapse text-sm"),children:[l.jsx("thead",{children:l.jsxs("tr",{children:[l.jsx("th",{className:p("p-2 text-left")}),u.map(g=>l.jsx("th",{className:p("p-2 text-center font-medium text-gray-700"),children:g.label},g.id))]})}),l.jsx("tbody",{children:f.map(g=>l.jsxs("tr",{className:p("border-t border-gray-200"),children:[l.jsx("td",{className:p("p-2 text-gray-700"),children:g.label}),u.map(y=>l.jsx("td",{className:p("p-2 text-center"),children:l.jsx("input",{type:"checkbox",checked:(h[g.id]||[]).includes(y.id),onChange:()=>m(g.id,y.id),disabled:c,className:p("text-blue-600 rounded cursor-pointer disabled:cursor-not-allowed")})},y.id))]},g.id))})]})})})}},{type:"matrixTable",structure:"field",typeCategory:"Matrix",label:"Matrix Table",description:"Table with text/number inputs",icon:"📑",category:"field",subCategory:"matrix",dataType:"object",supportsValidation:!0,supportsMatrix:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Table Settings",icon:"📑"},fields:[{key:"showRowNumbers",label:"Show Row Numbers",type:"checkbox",section:"config",description:"Number each row for easy reference"},{key:"showColumnTotals",label:"Show Column Totals",type:"checkbox",section:"config",description:"Display sum at the bottom of numeric columns"},{key:"allowAddRows",label:"Allow Adding Rows",type:"checkbox",section:"config",description:"Let users add extra rows beyond the defaults"},{key:"allowDeleteRows",label:"Allow Deleting Rows",type:"checkbox",section:"config",description:"Let users remove rows they added",showWhen:{field:"allowAddRows",value:!0}},{key:"stickyHeader",label:"Sticky Header",type:"checkbox",section:"config",description:"Keep column headers visible while scrolling"},{key:"cellPlaceholder",label:"Cell Placeholder",type:"text",section:"config",placeholder:"Enter value...",description:"Placeholder text shown inside empty cells"}]},getDefaultValues:()=>({properties:{label:"Matrix Table",description:"Enter values in each cell"},layout:{labelPosition:"top",size:"full"},config:{matrixRows:[{id:"row1",label:"Row 1"},{id:"row2",label:"Row 2"}],matrixColumns:[{id:"col1",label:"Column 1",type:"text"},{id:"col2",label:"Column 2",type:"number"}]}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:a}=j(e),s=(a==null?void 0:a.matrixRows)||[],i=(a==null?void 0:a.matrixColumns)||[];return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsx("div",{className:p("overflow-x-auto"),children:l.jsxs("table",{className:p("w-full border-collapse text-sm border border-gray-200"),children:[l.jsx("thead",{children:l.jsxs("tr",{className:p("bg-gray-50"),children:[l.jsx("th",{className:p("p-2 text-left border border-gray-200")}),i.map(c=>l.jsx("th",{className:p("p-2 text-center font-medium text-gray-700 border border-gray-200"),children:c.label},c.id))]})}),l.jsx("tbody",{children:s.map(c=>l.jsxs("tr",{children:[l.jsx("td",{className:p("p-2 text-gray-700 border border-gray-200 bg-gray-50"),children:c.label}),i.map(d=>l.jsx("td",{className:p("p-2 border border-gray-200"),children:l.jsx("input",{type:d.type==="number"?"number":"text",disabled:!0,className:p("w-full px-2 py-1 border border-gray-300 rounded text-sm bg-gray-50")})},d.id))]},c.id))})]})})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c,config:d}=j(e),f=(d==null?void 0:d.matrixRows)||[],u=(d==null?void 0:d.matrixColumns)||[],h=a||{},m=(g,y,b)=>{const C={...h,[g]:{...h[g]||{},[y]:b}};s==null||s(C)};return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsx("div",{className:p("overflow-x-auto"),children:l.jsxs("table",{className:p("w-full border-collapse text-sm border border-gray-200"),children:[l.jsx("thead",{children:l.jsxs("tr",{className:p("bg-gray-50"),children:[l.jsx("th",{className:p("p-2 text-left border border-gray-200")}),u.map(g=>l.jsx("th",{className:p("p-2 text-center font-medium text-gray-700 border border-gray-200"),children:g.label},g.id))]})}),l.jsx("tbody",{children:f.map(g=>l.jsxs("tr",{children:[l.jsx("td",{className:p("p-2 text-gray-700 border border-gray-200 bg-gray-50"),children:g.label}),u.map(y=>{var b;return l.jsx("td",{className:p("p-2 border border-gray-200"),children:l.jsx("input",{type:y.type==="number"?"number":"text",value:((b=h[g.id])==null?void 0:b[y.id])??"",onChange:C=>m(g.id,y.id,y.type==="number"?Number(C.target.value):C.target.value),disabled:c,className:`w-full px-2 py-1 border rounded text-sm ${c?"bg-gray-50 border-gray-300":"bg-white border-gray-300 focus:border-blue-500 focus:ring-1 focus:ring-blue-500"}`})},y.id)})]},g.id))})]})})})}}],IS=[{type:"fileUpload",structure:"field",typeCategory:"FileUpload",label:"File Upload",description:"Single file upload",icon:"📎",category:"field",subCategory:"fileUpload",dataType:"file",supportsValidation:!0,getDefaultValues:()=>({properties:{label:"File Upload",description:"Upload a file"},layout:{labelPosition:"top",size:"full"},config:{accept:"*/*",maxSize:10485760,multiple:!1}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:a}=j(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:p("border-2 border-dashed border-gray-300 rounded-lg p-6 text-center bg-gray-50"),children:[l.jsx("svg",{className:p("mx-auto h-8 w-8 text-gray-400"),stroke:"currentColor",fill:"none",viewBox:"0 0 48 48",children:l.jsx("path",{d:"M28 8H12a4 4 0 00-4 4v20m32-12v8m0 0v8a4 4 0 01-4 4H12a4 4 0 01-4-4v-4m32-4l-3.172-3.172a4 4 0 00-5.656 0L28 28M8 32l9.172-9.172a4 4 0 015.656 0L28 28m0 0l4 4m4-24h8m-4-4v8m-12 4h.02",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"})}),l.jsx("p",{className:p("mt-2 text-sm text-gray-500"),children:"Click or drag to upload"}),l.jsxs("p",{className:p("text-xs text-gray-400"),children:[(a==null?void 0:a.accept)||"All files"," (Max:"," ",Math.round(((a==null?void 0:a.maxSize)||10485760)/1024/1024),"MB)"]})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c,config:d}=j(e),f=g=>{var b;const y=(b=g.target.files)==null?void 0:b[0];y&&(s==null||s(y))},u=g=>{var b;g.preventDefault();const y=(b=g.dataTransfer.files)==null?void 0:b[0];y&&(s==null||s(y))},h=g=>{g.preventDefault()},m=a instanceof File?a.name:a==null?void 0:a.name;return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{onDrop:c?void 0:u,onDragOver:c?void 0:h,className:`border-2 border-dashed rounded-lg p-6 text-center transition-colors ${((i==null?void 0:i.length)??0)>0?"border-red-300 bg-red-50":"border-gray-300 bg-gray-50 hover:border-gray-400"} ${c?"opacity-50 cursor-not-allowed":"cursor-pointer"}`,children:[l.jsx("input",{type:"file",accept:d==null?void 0:d.accept,onChange:f,disabled:c,className:p("hidden"),id:`file-upload-${e.element.id}`}),l.jsx("label",{htmlFor:`file-upload-${e.element.id}`,className:c?"cursor-not-allowed":"cursor-pointer",children:m?l.jsxs("div",{className:p("flex items-center justify-center gap-2"),children:[l.jsx("span",{className:p("text-2xl"),children:"📄"}),l.jsx("span",{className:p("text-sm text-gray-700"),children:m}),!c&&l.jsx("button",{type:"button",onClick:g=>{g.preventDefault(),s==null||s(null)},className:p("text-red-500 hover:text-red-700"),children:"×"})]}):l.jsxs(l.Fragment,{children:[l.jsx("svg",{className:p("mx-auto h-8 w-8 text-gray-400"),stroke:"currentColor",fill:"none",viewBox:"0 0 48 48",children:l.jsx("path",{d:"M28 8H12a4 4 0 00-4 4v20m32-12v8m0 0v8a4 4 0 01-4 4H12a4 4 0 01-4-4v-4m32-4l-3.172-3.172a4 4 0 00-5.656 0L28 28M8 32l9.172-9.172a4 4 0 015.656 0L28 28m0 0l4 4m4-24h8m-4-4v8m-12 4h.02",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"})}),l.jsx("p",{className:p("mt-2 text-sm text-gray-500"),children:"Click or drag to upload"}),l.jsxs("p",{className:p("text-xs text-gray-400"),children:[(d==null?void 0:d.accept)||"All files"," (Max:"," ",Math.round(((d==null?void 0:d.maxSize)||10485760)/1024/1024),"MB)"]})]})})]})})}},{type:"imageUpload",structure:"field",typeCategory:"FileUpload",label:"Image Upload",description:"Single image upload with preview",icon:"🖼️",category:"field",subCategory:"fileUpload",dataType:"file",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Image Upload Settings",icon:"🖼️"},fields:[{key:"maxSize",label:"Max Size (MB)",type:"number",section:"config",min:1,max:100,placeholder:"5",description:"Maximum image file size"},{key:"allowCrop",label:"Allow Cropping",type:"checkbox",section:"config",description:"Let users crop the image after upload"},{key:"aspectRatio",label:"Aspect Ratio",type:"select",section:"config",description:"Constrain crop to a specific ratio",showWhen:{field:"allowCrop",value:!0},options:[{value:"free",label:"Free (no constraint)"},{value:"1:1",label:"1:1 (Square)"},{value:"4:3",label:"4:3 (Standard)"},{value:"16:9",label:"16:9 (Widescreen)"},{value:"3:2",label:"3:2 (Portrait)"},{value:"2:3",label:"2:3 (Landscape)"}]},{key:"minWidth",label:"Min Width (px)",type:"number",section:"config",min:1,placeholder:"e.g. 200",description:"Minimum allowed image width",colSpan:1},{key:"minHeight",label:"Min Height (px)",type:"number",section:"config",min:1,placeholder:"e.g. 200",description:"Minimum allowed image height",colSpan:1},{key:"showPreview",label:"Show Preview",type:"checkbox",section:"config",description:"Display a thumbnail preview of the uploaded image"},{key:"compressOnUpload",label:"Auto-compress",type:"checkbox",section:"config",description:"Automatically compress large images on upload"}]},getDefaultValues:()=>({properties:{label:"Image Upload",description:"Upload an image"},layout:{labelPosition:"top",size:"full"},config:{accept:"image/*",maxSize:5242880,multiple:!1,allowCrop:!1}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:a}=j(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:p("border-2 border-dashed border-gray-300 rounded-lg p-6 text-center bg-gray-50"),children:[l.jsx("span",{className:p("text-4xl"),children:"🖼️"}),l.jsx("p",{className:p("mt-2 text-sm text-gray-500"),children:"Click or drag to upload image"}),l.jsxs("p",{className:p("text-xs text-gray-400"),children:["Images only (Max:"," ",Math.round(((a==null?void 0:a.maxSize)||5242880)/1024/1024),"MB)"]})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c,config:d}=j(e),[f,u]=D.useState(null);D.useEffect(()=>{if(a instanceof File){const g=new FileReader;g.onloadend=()=>{u(g.result)},g.readAsDataURL(a)}else u(typeof a=="string"?a:null)},[a]);const h=g=>{var b;const y=(b=g.target.files)==null?void 0:b[0];y&&(s==null||s(y))},m=()=>{s==null||s(null),u(null)};return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:f?l.jsxs("div",{className:p("relative inline-block"),children:[l.jsx("img",{src:f,alt:"Preview",className:p("max-w-full max-h-48 rounded-lg border border-gray-200")}),!c&&l.jsx("button",{type:"button",onClick:m,className:p("absolute -top-2 -right-2 w-6 h-6 bg-red-500 text-white rounded-full flex items-center justify-center text-sm hover:bg-red-600"),children:"×"})]}):l.jsxs("div",{className:`border-2 border-dashed rounded-lg p-6 text-center transition-colors ${((i==null?void 0:i.length)??0)>0?"border-red-300 bg-red-50":"border-gray-300 bg-gray-50 hover:border-gray-400"} ${c?"opacity-50 cursor-not-allowed":"cursor-pointer"}`,children:[l.jsx("input",{type:"file",accept:(d==null?void 0:d.accept)||"image/*",onChange:h,disabled:c,className:p("hidden"),id:`image-upload-${e.element.id}`}),l.jsxs("label",{htmlFor:`image-upload-${e.element.id}`,className:c?"cursor-not-allowed":"cursor-pointer",children:[l.jsx("span",{className:p("text-4xl"),children:"🖼️"}),l.jsx("p",{className:p("mt-2 text-sm text-gray-500"),children:"Click or drag to upload image"}),l.jsxs("p",{className:p("text-xs text-gray-400"),children:["Images only (Max:"," ",Math.round(((d==null?void 0:d.maxSize)||5242880)/1024/1024),"MB)"]})]})]})})}},{type:"multiFileUpload",structure:"field",typeCategory:"FileUpload",label:"Multi File Upload",description:"Upload multiple files",icon:"📁",category:"field",subCategory:"fileUpload",dataType:"array",supportsValidation:!0,getDefaultValues:()=>({properties:{label:"Multi File Upload",description:"Upload multiple files"},layout:{labelPosition:"top",size:"full"},config:{accept:"*/*",maxSize:10485760,multiple:!0,maxFiles:10}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:a}=j(e);return l.jsxs(de,{label:t,description:r,required:o,labelPosition:n,children:[l.jsxs("div",{className:p("border-2 border-dashed border-gray-300 rounded-lg p-6 text-center bg-gray-50"),children:[l.jsx("span",{className:p("text-4xl"),children:"📁"}),l.jsx("p",{className:p("mt-2 text-sm text-gray-500"),children:"Click or drag to upload files"}),l.jsxs("p",{className:p("text-xs text-gray-400"),children:["Up to ",(a==null?void 0:a.maxFiles)||10," files"]})]}),l.jsx("div",{className:p("space-y-2 mt-2"),children:l.jsxs("div",{className:p("flex items-center gap-2 p-2 bg-gray-100 rounded text-sm"),children:[l.jsx("span",{children:"📄"}),l.jsx("span",{className:p("flex-1 truncate"),children:"document.pdf"}),l.jsx("button",{disabled:!0,className:p("text-gray-400 hover:text-red-500"),children:"×"})]})})]})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c,config:d}=j(e),f=Array.isArray(a)?a:[],u=(d==null?void 0:d.maxFiles)||10,h=g=>{const y=Array.from(g.target.files||[]),b=[...f,...y].slice(0,u);s==null||s(b)},m=g=>{const y=f.filter((b,C)=>C!==g);s==null||s(y)};return l.jsxs(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:[l.jsxs("div",{className:`border-2 border-dashed rounded-lg p-6 text-center transition-colors ${((i==null?void 0:i.length)??0)>0?"border-red-300 bg-red-50":"border-gray-300 bg-gray-50 hover:border-gray-400"} ${c||f.length>=u?"opacity-50 cursor-not-allowed":"cursor-pointer"}`,children:[l.jsx("input",{type:"file",accept:d==null?void 0:d.accept,multiple:!0,onChange:h,disabled:c||f.length>=u,className:p("hidden"),id:`multi-file-upload-${e.element.id}`}),l.jsxs("label",{htmlFor:`multi-file-upload-${e.element.id}`,className:c||f.length>=u?"cursor-not-allowed":"cursor-pointer",children:[l.jsx("span",{className:p("text-4xl"),children:"📁"}),l.jsx("p",{className:p("mt-2 text-sm text-gray-500"),children:"Click or drag to upload files"}),l.jsxs("p",{className:p("text-xs text-gray-400"),children:[f.length," / ",u," files"]})]})]}),f.length>0&&l.jsx("div",{className:p("space-y-2 mt-2"),children:f.map((g,y)=>l.jsxs("div",{className:p("flex items-center gap-2 p-2 bg-gray-100 rounded text-sm"),children:[l.jsx("span",{children:"📄"}),l.jsx("span",{className:p("flex-1 truncate"),children:g.name}),l.jsxs("span",{className:p("text-xs text-gray-500"),children:[(g.size/1024).toFixed(1)," KB"]}),!c&&l.jsx("button",{type:"button",onClick:()=>m(y),className:p("text-gray-400 hover:text-red-500"),children:"×"})]},y))})]})}},{type:"multiImageUpload",structure:"field",typeCategory:"FileUpload",label:"Multi Image Upload",description:"Upload multiple images with preview",icon:"🖼️",category:"field",subCategory:"fileUpload",dataType:"array",supportsValidation:!0,getDefaultValues:()=>({properties:{label:"Multi Image Upload",description:"Upload multiple images"},layout:{labelPosition:"top",size:"full"},config:{accept:"image/*",maxSize:5242880,multiple:!0,maxFiles:10,allowCrop:!1}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:a}=j(e);return l.jsxs(de,{label:t,description:r,required:o,labelPosition:n,children:[l.jsxs("div",{className:p("border-2 border-dashed border-gray-300 rounded-lg p-6 text-center bg-gray-50"),children:[l.jsx("span",{className:p("text-4xl"),children:"🖼️"}),l.jsx("p",{className:p("mt-2 text-sm text-gray-500"),children:"Click or drag to upload images"}),l.jsxs("p",{className:p("text-xs text-gray-400"),children:["Up to ",(a==null?void 0:a.maxFiles)||10," images"]})]}),l.jsx("div",{className:p("flex gap-2 flex-wrap mt-2"),children:l.jsxs("div",{className:p("w-20 h-20 bg-gray-200 rounded-lg flex items-center justify-center relative"),children:[l.jsx("span",{className:p("text-2xl"),children:"🖼️"}),l.jsx("button",{disabled:!0,className:p("absolute -top-1 -right-1 w-5 h-5 bg-red-500 text-white rounded-full text-xs"),children:"×"})]})})]})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c,config:d}=j(e),[f,u]=D.useState([]),h=Array.isArray(a)?a:[],m=(d==null?void 0:d.maxFiles)||10;D.useEffect(()=>{(async()=>{const C=[];for(const w of h)if(w instanceof File){const x=new FileReader,S=await new Promise(N=>{x.onloadend=()=>N(x.result),x.readAsDataURL(w)});C.push(S)}u(C)})()},[h]);const g=b=>{const C=Array.from(b.target.files||[]),w=[...h,...C].slice(0,m);s==null||s(w)},y=b=>{const C=h.filter((w,x)=>x!==b);s==null||s(C)};return l.jsxs(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:[l.jsxs("div",{className:`border-2 border-dashed rounded-lg p-6 text-center transition-colors ${((i==null?void 0:i.length)??0)>0?"border-red-300 bg-red-50":"border-gray-300 bg-gray-50 hover:border-gray-400"} ${c||h.length>=m?"opacity-50 cursor-not-allowed":"cursor-pointer"}`,children:[l.jsx("input",{type:"file",accept:(d==null?void 0:d.accept)||"image/*",multiple:!0,onChange:g,disabled:c||h.length>=m,className:p("hidden"),id:`multi-image-upload-${e.element.id}`}),l.jsxs("label",{htmlFor:`multi-image-upload-${e.element.id}`,className:c||h.length>=m?"cursor-not-allowed":"cursor-pointer",children:[l.jsx("span",{className:p("text-4xl"),children:"🖼️"}),l.jsx("p",{className:p("mt-2 text-sm text-gray-500"),children:"Click or drag to upload images"}),l.jsxs("p",{className:p("text-xs text-gray-400"),children:[h.length," / ",m," images"]})]})]}),f.length>0&&l.jsx("div",{className:p("flex gap-2 flex-wrap mt-2"),children:f.map((b,C)=>l.jsxs("div",{className:p("w-20 h-20 rounded-lg overflow-hidden relative border border-gray-200"),children:[l.jsx("img",{src:b,alt:`Preview ${C+1}`,className:p("w-full h-full object-cover")}),!c&&l.jsx("button",{type:"button",onClick:()=>y(C),className:p("absolute -top-1 -right-1 w-5 h-5 bg-red-500 text-white rounded-full text-xs hover:bg-red-600 flex items-center justify-center"),children:"×"})]},C))})]})}}],PS=[{type:"password",structure:"field",typeCategory:"Security",label:"Password",description:"Secure password input",icon:"🔒",category:"field",subCategory:"security",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Password Settings",icon:"🔒"},fields:[{key:"showStrengthMeter",label:"Show Strength Meter",type:"checkbox",section:"config",description:"Visual indicator of password strength"},{key:"showToggle",label:"Show / Hide Toggle",type:"checkbox",section:"config",description:"Let users reveal their password"},{key:"minStrength",label:"Minimum Strength",type:"select",section:"config",description:"Lowest accepted password strength level",options:[{value:"weak",label:"Weak"},{value:"medium",label:"Medium"},{value:"strong",label:"Strong"}]},{key:"strengthLabels",label:"Show Requirements Hint",type:"checkbox",section:"config",description:"Display password rules (length, special chars, etc.)"}]},getDefaultValues:()=>({properties:{label:"Password",placeholder:"••••••••"},layout:{labelPosition:"top",size:"full"},config:{showStrengthMeter:!1,showToggle:!0,minStrength:"medium"},validation:{minLength:8}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,config:s}=j(e);return l.jsxs(de,{label:t,description:r,required:n,labelPosition:a,children:[l.jsxs("div",{className:p("relative"),children:[l.jsx("input",{type:"password",placeholder:o||"••••••••",disabled:!0,className:`${Ct()} pr-10`}),(s==null?void 0:s.showToggle)&&l.jsx("button",{disabled:!0,className:p("absolute right-3 top-1/2 -translate-y-1/2 text-gray-400"),children:"👁️"})]}),(s==null?void 0:s.showStrengthMeter)&&l.jsxs("div",{className:p("flex gap-1 mt-2"),children:[l.jsx("div",{className:p("h-1 flex-1 bg-gray-300 rounded")}),l.jsx("div",{className:p("h-1 flex-1 bg-gray-300 rounded")}),l.jsx("div",{className:p("h-1 flex-1 bg-gray-300 rounded")}),l.jsx("div",{className:p("h-1 flex-1 bg-gray-300 rounded")})]})]})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,value:s,onChange:i,errors:c,isDisabled:d,config:f}=j(e),[u,h]=D.useState(!1),g=(b=>{if(!b)return 0;let C=0;return b.length>=8&&C++,/[a-z]/.test(b)&&/[A-Z]/.test(b)&&C++,/\d/.test(b)&&C++,/[^a-zA-Z0-9]/.test(b)&&C++,C})(s||""),y=["bg-red-500","bg-orange-500","bg-yellow-500","bg-green-500"];return l.jsxs(de,{label:t,description:r,required:n,labelPosition:a,errors:c,children:[l.jsxs("div",{className:p("relative"),children:[l.jsx("input",{type:u?"text":"password",placeholder:o||"••••••••",value:s??"",onChange:b=>i==null?void 0:i(b.target.value),disabled:d,className:`${Ot({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})} pr-10`}),(f==null?void 0:f.showToggle)&&!d&&l.jsx("button",{type:"button",onClick:()=>h(!u),className:p("absolute right-3 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600"),children:u?"🙈":"👁️"})]}),(f==null?void 0:f.showStrengthMeter)&&s&&l.jsx("div",{className:p("flex gap-1 mt-2"),children:[0,1,2,3].map(b=>l.jsx("div",{className:`h-1 flex-1 rounded ${b<g?y[g-1]:"bg-gray-300"}`},b))})]})}},{type:"signature",structure:"field",typeCategory:"Security",label:"Signature",description:"Handwritten signature pad",icon:"✍️",category:"field",subCategory:"security",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Signature Pad Settings",icon:"✍️"},fields:[{key:"canvasWidth",label:"Width (px)",type:"number",section:"config",min:100,max:1200,placeholder:"400",description:"Drawing area width",colSpan:1},{key:"canvasHeight",label:"Height (px)",type:"number",section:"config",min:50,max:600,placeholder:"200",description:"Drawing area height",colSpan:1},{key:"strokeWidth",label:"Stroke Width",type:"number",section:"config",min:1,max:10,placeholder:"2",description:"Pen thickness",colSpan:1},{key:"strokeColor",label:"Stroke Color",type:"color",section:"config",placeholder:"#000000",description:"Pen color",colSpan:1},{key:"backgroundColor",label:"Background Color",type:"color",section:"config",placeholder:"#ffffff",description:"Pad background color"},{key:"requireFullName",label:"Require Full Name",type:"checkbox",section:"config",description:"Ask for a printed name below the signature"},{key:"showTimestamp",label:"Show Timestamp",type:"checkbox",section:"config",description:"Auto-record date and time of signing"}]},getDefaultValues:()=>({properties:{label:"Signature",description:"Please sign below"},layout:{labelPosition:"top",size:"full"},config:{strokeWidth:2,strokeColor:"#000000",backgroundColor:"#ffffff",canvasWidth:400,canvasHeight:200}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:a}=j(e);return l.jsxs(de,{label:t,description:r,required:o,labelPosition:n,children:[l.jsx("div",{className:p("border-2 border-dashed border-gray-300 rounded-lg bg-gray-50 flex items-center justify-center"),style:{height:(a==null?void 0:a.canvasHeight)||200,backgroundColor:(a==null?void 0:a.backgroundColor)||"#ffffff"},children:l.jsxs("div",{className:p("text-center text-gray-400"),children:[l.jsx("span",{className:p("text-3xl"),children:"✍️"}),l.jsx("p",{className:p("text-sm mt-2"),children:"Draw your signature here"})]})}),l.jsx("button",{disabled:!0,className:p("text-sm text-blue-600 hover:text-blue-700 mt-2"),children:"Clear signature"})]})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:i,isDisabled:c,config:d}=j(e),f=D.useRef(null),[u,h]=D.useState(!1),m=C=>{if(c)return;h(!0);const w=f.current;if(!w)return;const x=w.getContext("2d");if(!x)return;const S=w.getBoundingClientRect();x.beginPath(),x.moveTo(C.clientX-S.left,C.clientY-S.top)},g=C=>{if(!u||c)return;const w=f.current;if(!w)return;const x=w.getContext("2d");if(!x)return;const S=w.getBoundingClientRect();x.lineWidth=(d==null?void 0:d.strokeWidth)||2,x.strokeStyle=(d==null?void 0:d.strokeColor)||"#000000",x.lineCap="round",x.lineTo(C.clientX-S.left,C.clientY-S.top),x.stroke()},y=()=>{u&&f.current&&(h(!1),s==null||s(f.current.toDataURL()))},b=()=>{const C=f.current;if(!C)return;const w=C.getContext("2d");w&&(w.fillStyle=(d==null?void 0:d.backgroundColor)||"#ffffff",w.fillRect(0,0,C.width,C.height),s==null||s(""))};return l.jsxs(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:[l.jsx("div",{className:`border-2 rounded-lg overflow-hidden ${((i==null?void 0:i.length)??0)>0?"border-red-500":"border-gray-300"} ${c?"opacity-50":""}`,style:{backgroundColor:(d==null?void 0:d.backgroundColor)||"#ffffff"},children:l.jsx("canvas",{ref:f,width:(d==null?void 0:d.canvasWidth)||400,height:(d==null?void 0:d.canvasHeight)||200,onMouseDown:m,onMouseMove:g,onMouseUp:y,onMouseLeave:y,className:c?"cursor-not-allowed":"cursor-crosshair",style:{display:"block",width:"100%"}})}),!c&&l.jsx("button",{type:"button",onClick:b,className:p("text-sm text-blue-600 hover:text-blue-700 mt-2"),children:"Clear signature"})]})}},{type:"captcha",structure:"field",typeCategory:"Security",label:"Captcha",description:"Bot protection verification",icon:"🤖",category:"field",subCategory:"security",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!1,showPlaceholder:!1,showDescription:!0},configSection:{title:"Captcha Settings",icon:"🤖"},fields:[{key:"provider",label:"Provider",type:"select",section:"config",description:"Which CAPTCHA service to use",options:[{value:"recaptcha",label:"Google reCAPTCHA v3"},{value:"recaptcha-v2",label:"Google reCAPTCHA v2"},{value:"hcaptcha",label:"hCaptcha"},{value:"turnstile",label:"Cloudflare Turnstile"},{value:"friendly",label:"Friendly Captcha"}]},{key:"siteKey",label:"Site Key",type:"text",section:"config",placeholder:"Your site key from provider",description:"Public key provided by the CAPTCHA service"},{key:"theme",label:"Widget Theme",type:"select",section:"config",options:[{value:"light",label:"Light"},{value:"dark",label:"Dark"},{value:"auto",label:"Auto (match page)"}]},{key:"size",label:"Widget Size",type:"select",section:"config",options:[{value:"normal",label:"Normal"},{value:"compact",label:"Compact"},{value:"invisible",label:"Invisible"}]}]},getDefaultValues:()=>({properties:{label:"CAPTCHA",description:"Please verify you are human"},layout:{labelPosition:"hidden",size:"default"},config:{provider:"recaptcha",siteKey:"",theme:"light"}}),renderOnCanvas:e=>{const{description:t}=j(e);return l.jsxs("div",{className:p("space-y-1.5"),children:[t&&l.jsx("p",{className:p("text-xs text-gray-500"),children:t}),l.jsx("div",{className:p("border border-gray-300 rounded-md p-4 bg-gray-50 max-w-[300px]"),children:l.jsxs("div",{className:p("flex items-center gap-3"),children:[l.jsx("div",{className:p("w-7 h-7 border-2 border-gray-300 rounded flex items-center justify-center"),children:"☐"}),l.jsx("span",{className:p("text-sm text-gray-700"),children:"I'm not a robot"}),l.jsx("div",{className:p("ml-auto"),children:l.jsxs("div",{className:p("text-xs text-gray-400 text-center"),children:[l.jsx("div",{className:p("text-lg"),children:"🔄"}),l.jsx("span",{children:"reCAPTCHA"})]})})]})})]})},render:e=>{const{description:t,value:r,onChange:o,errors:n,isDisabled:a,config:s}=j(e),i=r===!0,c=()=>{a||o==null||o(!0)};return l.jsxs("div",{className:p("space-y-1.5"),children:[t&&l.jsx("p",{className:p("text-xs text-gray-500"),children:t}),l.jsx("div",{className:`border rounded-md p-4 max-w-[300px] ${((n==null?void 0:n.length)??0)>0?"border-red-500 bg-red-50":i?"border-green-500 bg-green-50":"border-gray-300 bg-gray-50"}`,children:l.jsxs("div",{className:p("flex items-center gap-3"),children:[l.jsx("button",{type:"button",onClick:c,disabled:a||i,className:`w-7 h-7 border-2 rounded flex items-center justify-center transition-colors ${i?"border-green-500 bg-green-500 text-white":"border-gray-300 hover:border-gray-400"} ${a?"cursor-not-allowed opacity-50":"cursor-pointer"}`,children:i?"✓":""}),l.jsx("span",{className:p("text-sm text-gray-700"),children:i?"Verified!":"I'm not a robot"}),l.jsx("div",{className:p("ml-auto"),children:l.jsxs("div",{className:p("text-xs text-gray-400 text-center"),children:[l.jsx("div",{className:p("text-lg"),children:(s==null?void 0:s.provider)==="hcaptcha"?"🛡️":"🔄"}),l.jsx("span",{children:(s==null?void 0:s.provider)==="hcaptcha"?"hCaptcha":(s==null?void 0:s.provider)==="turnstile"?"Turnstile":"reCAPTCHA"})]})})]})}),n&&n.length>0&&l.jsx("div",{className:p("space-y-1"),children:n.map((d,f)=>l.jsx("p",{className:p("text-xs text-red-500"),children:d},f))})]})}}],MS=[{type:"group",structure:"page",typeCategory:"Layout",label:"Group",description:"Container to group related elements together",icon:"📦",category:"page",subCategory:"layout",supportsValidation:!1,isContainer:!0,dataType:"object",getDefaultValues:()=>({properties:{label:"Group",description:""},layout:{size:"full"},config:{collapsed:!1,collapsible:!1,showBorder:!0,padding:16}}),renderOnCanvas:e=>{const{label:t,description:r,config:o}=j(e),n=(o==null?void 0:o.showBorder)??!0,a=(o==null?void 0:o.collapsible)??!1;return l.jsxs("div",{className:p("rounded-lg",n?"border border-gray-200":""),style:{padding:(o==null?void 0:o.padding)||16},children:[l.jsx("div",{className:p("flex items-center justify-between mb-2"),children:l.jsxs("div",{children:[l.jsxs("h3",{className:p("font-medium text-gray-800 flex items-center gap-2"),children:[a&&l.jsx("span",{className:p("text-gray-400 text-sm"),children:"▼"}),t||"Group"]}),r&&l.jsx("p",{className:p("text-sm text-gray-500 mt-0.5"),children:r})]})}),l.jsx("div",{className:p("border-2 border-dashed border-gray-200 rounded-md p-4 min-h-[80px] flex items-center justify-center"),children:l.jsx("span",{className:p("text-sm text-gray-400"),children:"Drop elements here"})})]})},render:e=>{const{label:t,description:r,config:o,element:n}=j(e),{renderChildren:a}=e,s=(o==null?void 0:o.showBorder)??!0,i=(o==null?void 0:o.collapsible)??!1,[c,d]=D.useState((o==null?void 0:o.collapsed)??!1);return l.jsxs("div",{className:`rounded-lg ${s?"border border-gray-200":""}`,style:{padding:(o==null?void 0:o.padding)||16},children:[l.jsx("div",{className:`flex items-center justify-between ${i?"cursor-pointer":""}`,onClick:()=>i&&d(!c),children:l.jsxs("div",{children:[l.jsxs("h3",{className:p("font-medium text-gray-800 flex items-center gap-2"),children:[i&&l.jsx("span",{className:p("text-gray-400 text-sm transition-transform",c?"-rotate-90":""),children:"▼"}),t||"Group"]}),r&&!c&&l.jsx("p",{className:p("text-sm text-gray-500 mt-0.5"),children:r})]})}),!c&&l.jsx("div",{className:p("mt-3"),children:a?a(n.id):l.jsx("div",{"data-container-id":n.id,className:p("space-y-4")})})]})}},{type:"grid",structure:"page",typeCategory:"Layout",label:"Grid",description:"Arrange elements in a responsive grid layout",icon:"⊞",category:"page",subCategory:"layout",supportsValidation:!1,isContainer:!0,dataType:"object",getDefaultValues:()=>({properties:{label:""},layout:{size:"full"},config:{gridColumns:2,gridGap:16,responsiveColumns:{sm:1,md:2,lg:2}}}),renderOnCanvas:e=>{const{label:t,config:r}=j(e),o=(r==null?void 0:r.gridColumns)||2,n=(r==null?void 0:r.gridGap)||16;return l.jsxs("div",{className:p("border border-gray-200 rounded-lg p-4"),children:[t&&l.jsx("div",{className:p("mb-3"),children:l.jsx("h3",{className:p("font-medium text-gray-800"),children:t})}),l.jsx("div",{className:p("grid"),style:{gridTemplateColumns:`repeat(${o}, 1fr)`,gap:n},children:Array.from({length:o}).map((a,s)=>l.jsx("div",{className:p("border-2 border-dashed border-gray-200 rounded-md p-4 min-h-[60px] flex items-center justify-center"),children:l.jsxs("span",{className:p("text-xs text-gray-400"),children:["Column ",s+1]})},s))})]})},render:e=>{const{label:t,config:r,element:o}=j(e),{renderChildren:n}=e,a=(r==null?void 0:r.gridColumns)||2,s=(r==null?void 0:r.gridGap)||16;return l.jsxs("div",{children:[t&&l.jsx("div",{className:p("mb-3"),children:l.jsx("h3",{className:p("font-medium text-gray-800"),children:t})}),l.jsx("div",{className:p("grid"),style:{gridTemplateColumns:`repeat(${a}, 1fr)`,gap:s},children:n?n(o.id):l.jsx("div",{"data-container-id":o.id,className:p("space-y-4")})})]})}},{type:"table",structure:"page",typeCategory:"Layout",label:"Table",description:"Display data in a table format",icon:"📊",category:"page",subCategory:"layout",supportsValidation:!1,isContainer:!0,dataType:"array",getDefaultValues:()=>({properties:{label:"Table",description:""},layout:{size:"full"},config:{tableColumns:[{id:"col1",header:"Column 1",width:"auto",align:"left"},{id:"col2",header:"Column 2",width:"auto",align:"left"},{id:"col3",header:"Column 3",width:"auto",align:"left"}],showHeader:!0,striped:!0,bordered:!0}}),renderOnCanvas:e=>{const{label:t,description:r,config:o}=j(e),n=(o==null?void 0:o.tableColumns)||[{id:"col1",header:"Column 1"},{id:"col2",header:"Column 2"}],a=(o==null?void 0:o.showHeader)??!0,s=(o==null?void 0:o.striped)??!0,i=(o==null?void 0:o.bordered)??!0;return l.jsxs("div",{className:p("space-y-2"),children:[t&&l.jsxs("div",{children:[l.jsx("h3",{className:p("font-medium text-gray-800"),children:t}),r&&l.jsx("p",{className:p("text-sm text-gray-500"),children:r})]}),l.jsx("div",{className:`overflow-hidden rounded-lg ${i?"border border-gray-200":""}`,children:l.jsxs("table",{className:p("min-w-full divide-y divide-gray-200"),children:[a&&l.jsx("thead",{className:p("bg-gray-50"),children:l.jsx("tr",{children:n.map(c=>l.jsx("th",{className:`px-4 py-3 text-xs font-medium text-gray-500 uppercase tracking-wider text-${c.align||"left"}`,children:c.header},c.id))})}),l.jsx("tbody",{className:`bg-white ${s?"divide-y divide-gray-200":""}`,children:[1,2].map((c,d)=>l.jsx("tr",{className:s&&d%2===1?"bg-gray-50":"",children:n.map(f=>l.jsx("td",{className:`px-4 py-3 text-sm text-gray-500 text-${f.align||"left"}`,children:l.jsx("span",{className:p("text-gray-300"),children:"Sample data"})},f.id))},c))})]})}),l.jsx("p",{className:p("text-xs text-gray-400 text-center"),children:"Table preview - drop elements to define row structure"})]})},render:e=>{const{label:t,description:r,config:o,value:n=[]}=j(e),a=(o==null?void 0:o.tableColumns)||[],s=(o==null?void 0:o.showHeader)??!0,i=(o==null?void 0:o.striped)??!0,c=(o==null?void 0:o.bordered)??!0,d=Array.isArray(n)?n:[];return l.jsxs("div",{className:p("space-y-2"),children:[t&&l.jsxs("div",{children:[l.jsx("h3",{className:p("font-medium text-gray-800"),children:t}),r&&l.jsx("p",{className:p("text-sm text-gray-500"),children:r})]}),l.jsx("div",{className:`overflow-x-auto rounded-lg ${c?"border border-gray-200":""}`,children:l.jsxs("table",{className:p("min-w-full divide-y divide-gray-200"),children:[s&&l.jsx("thead",{className:p("bg-gray-50"),children:l.jsx("tr",{children:a.map(f=>l.jsx("th",{style:{width:f.width||"auto"},className:`px-4 py-3 text-xs font-medium text-gray-500 uppercase tracking-wider text-${f.align||"left"}`,children:f.header},f.id))})}),l.jsx("tbody",{className:`bg-white ${i?"divide-y divide-gray-200":""}`,children:d.length===0?l.jsx("tr",{children:l.jsx("td",{colSpan:a.length,className:p("px-4 py-8 text-sm text-gray-400 text-center"),children:"No data available"})}):d.map((f,u)=>l.jsx("tr",{className:i&&u%2===1?"bg-gray-50":"",children:a.map(h=>l.jsx("td",{className:`px-4 py-3 text-sm text-gray-700 text-${h.align||"left"}`,children:f[h.id]??"-"},h.id))},u))})]})})]})}},{type:"pages",structure:"page",typeCategory:"Special",label:"Wizard / Pages",description:"Multi-step form wizard with progress tracking",icon:"📑",category:"page",subCategory:"special",supportsValidation:!1,isContainer:!0,dataType:"object",getDefaultValues:()=>({properties:{label:"Form Wizard"},layout:{size:"full"},config:{showProgressBar:!0,showStepNumbers:!0,allowSkip:!1,validateOnNext:!0,steps:[{id:"step-1",label:"Step 1",description:"First step"},{id:"step-2",label:"Step 2",description:"Second step"}],activeStepId:"step-1"}}),renderOnCanvas:e=>{var i,c;const{config:t}=j(e),r=(t==null?void 0:t.steps)||[{id:"step-1",label:"Step 1"},{id:"step-2",label:"Step 2"}],o=(t==null?void 0:t.activeStepId)||((i=r[0])==null?void 0:i.id),n=r.findIndex(d=>d.id===o),a=(t==null?void 0:t.showProgressBar)??!0,s=(t==null?void 0:t.showStepNumbers)??!0;return l.jsxs("div",{className:p("border border-gray-200 rounded-lg p-4 bg-white"),children:[a&&l.jsxs("div",{className:p("mb-6"),children:[l.jsx("div",{className:p("h-2 bg-gray-200 rounded-full overflow-hidden"),children:l.jsx("div",{className:p("h-full bg-blue-600 transition-all duration-300"),style:{width:`${(n+1)/r.length*100}%`}})}),s&&l.jsx("div",{className:p("flex justify-between mt-3"),children:r.map((d,f)=>{const u=f<n,h=f===n;return l.jsxs("div",{className:p("flex flex-col items-center"),children:[l.jsx("div",{className:`w-8 h-8 rounded-full flex items-center justify-center text-sm font-medium transition-colors ${u?"bg-green-500 text-white":h?"bg-blue-600 text-white":"bg-gray-200 text-gray-500"}`,children:u?"✓":f+1}),l.jsx("span",{className:`text-xs mt-1 ${h?"text-blue-600 font-medium":"text-gray-500"}`,children:d.label})]},d.id)})})]}),l.jsx("div",{className:p("border-2 border-dashed border-gray-200 rounded-lg p-6 min-h-[150px] flex items-center justify-center"),children:l.jsxs("div",{className:p("text-center"),children:[l.jsxs("span",{className:p("text-gray-400 text-sm"),children:["Step ",n+1,":"," ",(c=r[n])==null?void 0:c.label]}),l.jsx("p",{className:p("text-gray-300 text-xs mt-1"),children:"Drop elements here for this step"})]})}),l.jsxs("div",{className:p("flex justify-between mt-4 pt-4 border-t border-gray-200"),children:[l.jsx("button",{type:"button",disabled:n===0,className:`px-4 py-2 text-sm rounded-md ${n===0?"bg-gray-100 text-gray-400 cursor-not-allowed":"bg-gray-200 text-gray-700 hover:bg-gray-300"}`,children:"← Previous"}),l.jsx("button",{type:"button",className:p("px-4 py-2 text-sm rounded-md bg-blue-600 text-white hover:bg-blue-700"),children:n===r.length-1?"Submit":"Next →"})]})]})},render:e=>{const{config:t,element:r}=j(e),o=(t==null?void 0:t.steps)||[];return l.jsx("div",{"data-wizard-id":r.id,"data-wizard-steps":o.length})}}],OS=[{type:"repeatElement",structure:"page",typeCategory:"Repeatable",label:"Repeat Element",description:"Allow users to add multiple values of a single field",icon:"🔄",category:"page",subCategory:"repeatable",supportsValidation:!0,isContainer:!1,dataType:"array",getDefaultValues:()=>({properties:{label:"Repeatable Field",description:"Add multiple values",placeholder:"Enter value"},layout:{labelPosition:"top",size:"full"},validation:{required:!1},config:{minItems:1,maxItems:10,addButtonText:"Add Item",removeButtonText:"Remove",showItemNumber:!0}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,config:a}=j(e),s=(a==null?void 0:a.minItems)||1,i=(a==null?void 0:a.maxItems)||10,c=(a==null?void 0:a.addButtonText)||"Add Item",d=(a==null?void 0:a.showItemNumber)??!0;return l.jsxs("div",{className:p("space-y-3"),children:[l.jsxs("div",{children:[l.jsxs("label",{className:p("block text-sm font-medium text-gray-700"),children:[t||"Repeatable Field",n&&l.jsx("span",{className:p("text-red-500 ml-1"),children:"*"})]}),r&&l.jsx("p",{className:p("text-xs text-gray-500 mt-0.5"),children:r})]}),l.jsx("div",{className:p("space-y-2"),children:Array.from({length:Math.min(2,s)}).map((f,u)=>l.jsxs("div",{className:p("flex items-center gap-2"),children:[d&&l.jsxs("span",{className:p("text-xs text-gray-400 w-4"),children:[u+1,"."]}),l.jsx("input",{type:"text",placeholder:o||"Enter value",disabled:!0,className:p("flex-1 px-3 py-2 text-sm border border-gray-300 rounded-md bg-gray-50 text-gray-500")}),l.jsx("button",{type:"button",disabled:!0,className:p("p-2 text-gray-400 hover:text-red-500 disabled:opacity-50"),children:"✕"})]},u))}),l.jsxs("button",{type:"button",disabled:!0,className:p("flex items-center gap-1 text-sm text-blue-600 hover:text-blue-700 disabled:opacity-50"),children:[l.jsx("span",{children:"+"}),l.jsx("span",{children:c})]}),l.jsxs("p",{className:p("text-xs text-gray-400"),children:["Min: ",s," | Max: ",i," items"]})]})},render:e=>{const{label:t,description:r,placeholder:o,required:n,config:a,value:s=[],onChange:i,errors:c,isDisabled:d}=j(e),f=(a==null?void 0:a.minItems)||1,u=(a==null?void 0:a.maxItems)||10,h=(a==null?void 0:a.addButtonText)||"Add Item",m=(a==null?void 0:a.showItemNumber)??!0,g=Array.isArray(s)?s:[""],y=g.length<u,b=g.length>f,C=()=>{y&&i&&i([...g,""])},w=N=>{if(b&&i){const E=g.filter((M,k)=>k!==N);i(E)}},x=(N,E)=>{if(i){const M=[...g];M[N]=E,i(M)}},S=c&&c.length>0;return l.jsxs("div",{className:p("space-y-3"),children:[l.jsxs("div",{children:[l.jsxs("label",{className:p("block text-sm font-medium text-gray-700"),children:[t||"Repeatable Field",n&&l.jsx("span",{className:p("text-red-500 ml-1"),children:"*"})]}),r&&l.jsx("p",{className:p("text-xs text-gray-500 mt-0.5"),children:r})]}),l.jsx("div",{className:p("space-y-2"),children:g.map((N,E)=>l.jsxs("div",{className:p("flex items-center gap-2"),children:[m&&l.jsxs("span",{className:p("text-xs text-gray-400 w-4"),children:[E+1,"."]}),l.jsx("input",{type:"text",value:N,onChange:M=>x(E,M.target.value),placeholder:o||"Enter value",disabled:d,className:`flex-1 px-3 py-2 text-sm border rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-offset-0 ${S?"border-red-500 focus:ring-red-500":"border-gray-300 focus:ring-blue-500 focus:border-blue-500"} ${d?"bg-gray-50 text-gray-500 cursor-not-allowed":""}`}),l.jsx("button",{type:"button",onClick:()=>w(E),disabled:!b||d,className:`p-2 transition-colors ${b&&!d?"text-gray-400 hover:text-red-500":"text-gray-300 cursor-not-allowed"}`,children:"✕"})]},E))}),y&&!d&&l.jsxs("button",{type:"button",onClick:C,className:p("flex items-center gap-1 text-sm text-blue-600 hover:text-blue-700"),children:[l.jsx("span",{children:"+"}),l.jsx("span",{children:h})]}),c&&c.length>0&&l.jsx("div",{className:p("space-y-1"),children:c.map((N,E)=>l.jsx("p",{className:p("text-xs text-red-500"),children:N},E))})]})}},{type:"repeatGroup",structure:"page",typeCategory:"Repeatable",label:"Repeat Group",description:"Allow users to add multiple instances of a group of fields",icon:"📚",category:"page",subCategory:"repeatable",supportsValidation:!0,isContainer:!0,dataType:"array",getDefaultValues:()=>({properties:{label:"Repeatable Section",description:"Add multiple entries"},layout:{size:"full"},validation:{required:!1},config:{minItems:1,maxItems:10,addButtonText:"Add Entry",removeButtonText:"Remove",itemLabel:"Entry",showItemNumber:!0}}),renderOnCanvas:e=>{const{label:t,description:r,config:o}=j(e),n=(o==null?void 0:o.minItems)||1,a=(o==null?void 0:o.maxItems)||10,s=(o==null?void 0:o.addButtonText)||"Add Entry",i=(o==null?void 0:o.itemLabel)||"Entry",c=(o==null?void 0:o.showItemNumber)??!0;return l.jsxs("div",{className:p("border border-gray-200 rounded-lg p-4 space-y-4"),children:[l.jsxs("div",{className:p("flex items-center justify-between"),children:[l.jsxs("div",{children:[l.jsxs("h3",{className:p("font-medium text-gray-800 flex items-center gap-2"),children:[l.jsx("span",{className:p("text-lg"),children:"📚"}),t||"Repeatable Section"]}),r&&l.jsx("p",{className:p("text-sm text-gray-500 mt-0.5"),children:r})]}),l.jsxs("span",{className:p("text-xs text-gray-400 bg-gray-100 px-2 py-1 rounded"),children:[n,"-",a," items"]})]}),l.jsxs("div",{className:p("border border-dashed border-gray-300 rounded-lg"),children:[l.jsxs("div",{className:p("flex items-center justify-between px-4 py-2 bg-gray-50 border-b border-dashed border-gray-300 rounded-t-lg"),children:[l.jsxs("span",{className:p("text-sm font-medium text-gray-600"),children:[c&&"1. ",i]}),l.jsxs("div",{className:p("flex items-center gap-2"),children:[l.jsx("button",{type:"button",disabled:!0,className:p("text-gray-400 hover:text-gray-600 text-sm"),children:"▲"}),l.jsx("button",{type:"button",disabled:!0,className:p("text-gray-400 hover:text-gray-600 text-sm"),children:"▼"}),l.jsx("button",{type:"button",disabled:!0,className:p("text-gray-400 hover:text-red-500 text-sm"),children:"✕"})]})]}),l.jsx("div",{className:p("p-4 min-h-[80px] flex items-center justify-center"),children:l.jsx("span",{className:p("text-sm text-gray-400"),children:"Drop elements here to define the repeatable group structure"})})]}),l.jsxs("button",{type:"button",disabled:!0,className:p("w-full flex items-center justify-center gap-2 py-2 border-2 border-dashed border-gray-300 rounded-lg text-sm text-gray-500 hover:border-blue-400 hover:text-blue-600 transition-colors disabled:opacity-50"),children:[l.jsx("span",{children:"+"}),l.jsx("span",{children:s})]})]})},render:e=>{const{label:t,description:r,config:o,element:n,value:a=[],onChange:s,errors:i,isDisabled:c}=j(e),{renderChildren:d}=e,f=(o==null?void 0:o.minItems)||1,u=(o==null?void 0:o.maxItems)||10,h=(o==null?void 0:o.addButtonText)||"Add Entry",m=(o==null?void 0:o.removeButtonText)||"Remove",g=(o==null?void 0:o.itemLabel)||"Entry",y=(o==null?void 0:o.showItemNumber)??!0,b=Array.isArray(a)?a:Array.from({length:f},()=>({})),C=b.length<u,w=b.length>f,x=()=>{C&&s&&s([...b,{}])},S=k=>{if(w&&s){const T=b.filter((A,L)=>L!==k);s(T)}},N=k=>{if(k>0&&s){const T=[...b];[T[k-1],T[k]]=[T[k],T[k-1]],s(T)}},E=k=>{if(k<b.length-1&&s){const T=[...b];[T[k],T[k+1]]=[T[k+1],T[k]],s(T)}},M=i&&i.length>0;return l.jsxs("div",{className:`border rounded-lg p-4 space-y-4 ${M?"border-red-300":"border-gray-200"}`,children:[l.jsxs("div",{className:p("flex items-center justify-between"),children:[l.jsxs("div",{children:[l.jsx("h3",{className:p("font-medium text-gray-800"),children:t||"Repeatable Section"}),r&&l.jsx("p",{className:p("text-sm text-gray-500 mt-0.5"),children:r})]}),l.jsxs("span",{className:p("text-xs text-gray-400"),children:[b.length," of ",u]})]}),l.jsx("div",{className:p("space-y-3"),children:b.map((k,T)=>{var A;return l.jsxs("div",{className:p("border border-gray-200 rounded-lg overflow-hidden"),children:[l.jsxs("div",{className:p("flex items-center justify-between px-4 py-2 bg-gray-50 border-b border-gray-200"),children:[l.jsxs("span",{className:p("text-sm font-medium text-gray-600"),children:[y&&`${T+1}. `,g]}),!c&&l.jsxs("div",{className:p("flex items-center gap-1"),children:[l.jsx("button",{type:"button",onClick:()=>N(T),disabled:T===0,className:`p-1 rounded transition-colors ${T===0?"text-gray-300 cursor-not-allowed":"text-gray-400 hover:text-gray-600 hover:bg-gray-100"}`,title:"Move up",children:"▲"}),l.jsx("button",{type:"button",onClick:()=>E(T),disabled:T===b.length-1,className:`p-1 rounded transition-colors ${T===b.length-1?"text-gray-300 cursor-not-allowed":"text-gray-400 hover:text-gray-600 hover:bg-gray-100"}`,title:"Move down",children:"▼"}),l.jsx("button",{type:"button",onClick:()=>S(T),disabled:!w,className:`p-1 rounded transition-colors ${w?"text-gray-400 hover:text-red-500 hover:bg-red-50":"text-gray-300 cursor-not-allowed"}`,title:m,children:"✕"})]})]}),l.jsx("div",{className:p("p-4"),children:d?d(n.id,`${((A=n.attributes)==null?void 0:A.name)||n.id}[${T}]`):l.jsx("div",{"data-repeat-group-item":n.id,"data-repeat-index":T,className:p("text-sm text-gray-400 text-center py-4"),children:"Group fields render here"})})]},T)})}),C&&!c&&l.jsxs("button",{type:"button",onClick:x,className:p("w-full flex items-center justify-center gap-2 py-2 border-2 border-dashed border-gray-300 rounded-lg text-sm text-gray-500 hover:border-blue-400 hover:text-blue-600 transition-colors"),children:[l.jsx("span",{children:"+"}),l.jsx("span",{children:h})]}),i&&i.length>0&&l.jsx("div",{className:p("space-y-1"),children:i.map((k,T)=>l.jsx("p",{className:p("text-xs text-red-500"),children:k},T))})]})}}],yf=[...Dx,...Ax,...Tx,...kS,..._S,...DS,...AS,...TS,...IS,...PS,...MS,...OS];function LS(){for(const e of yf)dt.register(e)}const FS=["shortText","longText","multiLineInput","textEditor"],$S=["number","slider","rangeSlider"],GS=["email","phone","url","location"],VS=["password","signature","captcha"],zS=["singleChoice","multipleChoice","dropdown","tags","decisionBox","toggleSwitch"],BS=["singleChoiceMatrix","multipleChoiceMatrix","matrixTable"],US=["date","time","dateTime","multipleDates","dateRange"],WS=["fileUpload","imageUpload","multiFileUpload","multiImageUpload"],HS=["paragraph","image","link"],jS=[...FS,...$S,...GS,...VS,...zS,...BS,...US,...WS,...HS],Ii={shortText:"Short Text",longText:"Long Text",multiLineInput:"Multi-line Input",textEditor:"Text Editor",number:"Number",slider:"Slider",rangeSlider:"Range Slider",email:"Email",phone:"Phone",url:"URL",location:"Location",password:"Password",signature:"Signature",captcha:"Captcha",singleChoice:"Single Choice",multipleChoice:"Multiple Choice",dropdown:"Dropdown",tags:"Tags",decisionBox:"Decision Box",toggleSwitch:"Toggle Switch",singleChoiceMatrix:"Single Choice Matrix",multipleChoiceMatrix:"Multiple Choice Matrix",matrixTable:"Matrix Table",date:"Date",time:"Time",dateTime:"Date & Time",multipleDates:"Multiple Dates",dateRange:"Date Range",fileUpload:"File Upload",imageUpload:"Image Upload",multiFileUpload:"Multi-File Upload",multiImageUpload:"Multi-Image Upload",paragraph:"Paragraph",image:"Image",link:"Link",formHeading:"Form Heading",sectionHeading:"Section Heading",subheading:"Subheading",divider:"Divider",spacer:"Spacer",group:"Group",grid:"Grid",table:"Table",repeatElement:"Repeat Element",repeatGroup:"Repeat Group",pages:"Pages (Wizard)",submit:"Submit Button"},Pi={shortText:"📝",longText:"📄",multiLineInput:"📑",textEditor:"✏️",number:"🔢",slider:"🎚️",rangeSlider:"↔️",email:"✉️",phone:"📱",url:"🔗",location:"📍",password:"🔒",signature:"✍️",captcha:"🤖",singleChoice:"🔘",multipleChoice:"☑️",dropdown:"📋",tags:"🏷️",decisionBox:"✅",toggleSwitch:"🔀",singleChoiceMatrix:"📊",multipleChoiceMatrix:"📈",matrixTable:"📉",date:"📅",time:"⏰",dateTime:"📆",multipleDates:"🗓️",dateRange:"↔️",fileUpload:"📎",imageUpload:"🖼️",multiFileUpload:"📁",multiImageUpload:"🖼️",paragraph:"📃",image:"🏞️",link:"🔗",formHeading:"🏷️",sectionHeading:"📌",subheading:"📎",divider:"➖",spacer:"↕️",group:"📦",grid:"⊞",table:"📊",repeatElement:"🔄",repeatGroup:"🔁",pages:"📖",submit:"🚀"};function YS(e){return jS.includes(e)}const qS=["singleChoice","multipleChoice","dropdown","tags"],QS=["shortText","longText","multiLineInput","textEditor","number","slider","rangeSlider","email","phone","url","location","password","singleChoice","multipleChoice","dropdown","tags","decisionBox","date","time","dateTime","multipleDates","dateRange","fileUpload","imageUpload","multiFileUpload","multiImageUpload"],KS=["singleChoiceMatrix","multipleChoiceMatrix","matrixTable"];function XS(e){return qS.includes(e)}function JS(e){return QS.includes(e)}function ZS(e){return KS.includes(e)}const Za=({element:e,isSelected:t=!1})=>{const r=dt.get(e.type),o={element:e,properties:e.properties,layout:e.layout,validation:e.validation,logic:e.logic,config:e.config,isSelected:t,mode:"canvas"};if(r&&r.renderOnCanvas)try{return l.jsx(l.Fragment,{children:r.renderOnCanvas(o)})}catch(n){return console.error(`Error rendering element "${e.type}" on canvas:`,n),l.jsx(Ra,{element:e,error:n})}return l.jsx(Ra,{element:e})},vf=({element:e,value:t,onChange:r,errors:o=[],formValues:n={},readOnly:a=!1,disabled:s=!1})=>{const i=dt.get(e.type),c={element:e,properties:e.properties,layout:e.layout,validation:e.validation,logic:e.logic,config:e.config,mode:"render",value:t,onChange:r,errors:o,formValues:n,readOnly:a,disabled:s};if(i&&i.render)try{return l.jsx(l.Fragment,{children:i.render(c)})}catch(d){return console.error(`Error rendering element "${e.type}":`,d),l.jsx(Ra,{element:e,error:d})}return l.jsx(Ra,{element:e})},Ra=({element:e,error:t})=>{const r=Pi[e.type]||"❓",o=Ii[e.type]||e.type;return t?l.jsxs("div",{className:p("p-4 bg-red-50 border border-red-200 rounded text-red-600 text-sm"),children:[l.jsxs("div",{className:p("flex items-center gap-2"),children:[l.jsx("span",{children:"⚠️"}),l.jsxs("span",{children:["Error rendering: ",o]})]}),l.jsx("p",{className:p("text-xs mt-1 text-red-500"),children:t instanceof Error?t.message:"Unknown error"})]}):l.jsxs("div",{className:p("p-4 bg-gray-100 rounded text-gray-600 text-sm"),children:[l.jsxs("div",{className:p("flex items-center gap-2"),children:[l.jsx("span",{children:r}),l.jsx("span",{children:o})]}),l.jsx("p",{className:p("text-xs mt-1 text-gray-400"),children:"Element type not registered in the element registry"})]})};function RS(e){return dt.has(e)}function xf(e){const t=dt.get(e);return t?t.icon:Pi[e]}function Mi(e){const t=dt.get(e);return t?t.label:Ii[e]||e}function eN(e,t){return l.jsx(Za,{element:e,isSelected:t})}function tN(e,t,r,o,n){return l.jsx(vf,{element:e,value:t,onChange:r,errors:o,formValues:n})}const Kt=v.forwardRef(({className:e,type:t,...r},o)=>l.jsx("input",{type:t,className:p("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e),ref:o,...r}));Kt.displayName="Input";const wf=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,Cf=jd,es=(e,t)=>r=>{var o;if((t==null?void 0:t.variants)==null)return Cf(e,r==null?void 0:r.class,r==null?void 0:r.className);const{variants:n,defaultVariants:a}=t,s=Object.keys(n).map(d=>{const f=r==null?void 0:r[d],u=a==null?void 0:a[d];if(f===null)return null;const h=wf(f)||wf(u);return n[d][h]}),i=r&&Object.entries(r).reduce((d,f)=>{let[u,h]=f;return h===void 0||(d[u]=h),d},{}),c=t==null||(o=t.compoundVariants)===null||o===void 0?void 0:o.reduce((d,f)=>{let{class:u,className:h,...m}=f;return Object.entries(m).every(g=>{let[y,b]=g;return Array.isArray(b)?b.includes({...a,...i}[y]):{...a,...i}[y]===b})?[...d,u,h]:d},[]);return Cf(e,s,c,r==null?void 0:r.class,r==null?void 0:r.className)},rN=es("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function Oi({className:e,variant:t,...r}){return l.jsx("div",{className:p(rN({variant:t}),e),...r})}var oN=Object.defineProperty,Li=(e,t)=>oN(e,"name",{value:t,configurable:!0}),Fi=!1;function Sf(){const[e,t]=v.useState(Fi);return v.useEffect(()=>{Fi||(Fi=!0,t(!0))},[]),e}Li(Sf,"useIsHydrated");var Nf=v[" useSyncExternalStore ".trim().toString()];function Ef(){return()=>{}}Li(Ef,"subscribe");function kf(){return Nf(Ef,()=>!0,()=>!1)}Li(kf,"useIsHydratedModern");var nN=typeof Nf=="function"?kf:Sf,aN=Object.defineProperty,xo=(e,t)=>aN(e,"name",{value:t,configurable:!0}),$i="rovingFocusGroup.onEntryFocus",sN={bubbles:!1,cancelable:!0},ts="RovingFocusGroup",[Gi,_f,lN]=Sa(ts),[iN,Df]=rr(ts,[lN]),[cN,dN]=iN(ts),uN=v.forwardRef(xo(function(t,r){return l.jsx(Gi.Provider,{scope:t.__scopeRovingFocusGroup,children:l.jsx(Gi.Slot,{scope:t.__scopeRovingFocusGroup,children:l.jsx(pN,{...t,ref:r})})})},"RovingFocusGroup")),pN=v.forwardRef(xo(function(t,r){const{__scopeRovingFocusGroup:o,orientation:n,loop:a=!1,dir:s,currentTabStopId:i,defaultCurrentTabStopId:c,onCurrentTabStopIdChange:d,onEntryFocus:f,preventScrollOnEntryFocus:u=!1,...h}=t,m=v.useRef(null),g=ze(r,m),y=hn(s),[b,C]=br({prop:i,defaultProp:c??null,onChange:d,caller:ts}),[w,x]=v.useState(!1),S=nr(f),N=_f(o),E=v.useRef(!1),[M,k]=v.useState(0);return v.useEffect(()=>{const T=m.current;if(T)return T.addEventListener($i,S),()=>T.removeEventListener($i,S)},[S]),l.jsx(cN,{scope:o,orientation:n,dir:y,loop:a,currentTabStopId:b,onItemFocus:v.useCallback(T=>C(T),[C]),onItemShiftTab:v.useCallback(()=>x(!0),[]),onFocusableItemAdd:v.useCallback(()=>k(T=>T+1),[]),onFocusableItemRemove:v.useCallback(()=>k(T=>T-1),[]),children:l.jsx(Ie.div,{tabIndex:w||M===0?-1:0,"data-orientation":n,...h,ref:g,style:{outline:"none",...t.style},onMouseDown:we(t.onMouseDown,()=>{E.current=!0}),onFocus:we(t.onFocus,T=>{const A=!E.current;if(T.target===T.currentTarget&&A&&!w){const L=new CustomEvent($i,sN);if(T.currentTarget.dispatchEvent(L),!L.defaultPrevented){const O=N().filter(H=>H.focusable),F=O.find(H=>H.active),V=O.find(H=>H.id===b),K=[F,V,...O].filter(Boolean).map(H=>H.ref.current);Vi(K,u)}}E.current=!1}),onBlur:we(t.onBlur,()=>x(!1))})})},"RovingFocusGroupImpl")),fN="RovingFocusGroupItem",hN=v.forwardRef(xo(function(t,r){const{__scopeRovingFocusGroup:o,focusable:n=!0,active:a=!1,tabStopId:s,children:i,...c}=t,d=Hr(),f=s||d,u=dN(fN,o),h=u.currentTabStopId===f,m=_f(o),{onFocusableItemAdd:g,onFocusableItemRemove:y,currentTabStopId:b}=u,C=nN();return nt(()=>{if(!(!C||!n))return g(),()=>y()},[C,n,g,y]),v.useEffect(()=>{if(!(C||!n))return g(),()=>y()},[C,n,g,y]),l.jsx(Gi.ItemSlot,{scope:o,id:f,focusable:n,active:a,children:l.jsx(Ie.span,{tabIndex:h?0:-1,"data-orientation":u.orientation,...c,ref:r,onMouseDown:we(t.onMouseDown,w=>{n?u.onItemFocus(f):w.preventDefault()}),onFocus:we(t.onFocus,()=>u.onItemFocus(f)),onKeyDown:we(t.onKeyDown,w=>{if(w.key==="Tab"&&w.shiftKey){u.onItemShiftTab();return}if(w.target!==w.currentTarget)return;const x=Tf(w,u.orientation,u.dir);if(x!==void 0){if(w.metaKey||w.ctrlKey||w.altKey||w.shiftKey)return;w.preventDefault();let N=m().filter(E=>E.focusable).map(E=>E.ref.current);if(x==="last")N.reverse();else if(x==="prev"||x==="next"){x==="prev"&&N.reverse();const E=N.indexOf(w.currentTarget);N=u.loop?If(N,E+1):N.slice(E+1)}setTimeout(()=>Vi(N))}}),children:typeof i=="function"?i({isCurrentTabStop:h,hasTabStop:b!=null}):i})})},"RovingFocusGroupItem")),mN={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function Af(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}xo(Af,"getDirectionAwareKey");function Tf(e,t,r){const o=Af(e.key,r);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(o))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(o)))return mN[o]}xo(Tf,"getFocusIntent");function Vi(e,t=!1){const r=document.activeElement;for(const o of e)if(o===r||(o.focus({preventScroll:t}),document.activeElement!==r))return}xo(Vi,"focusFirst");function If(e,t){return e.map((r,o)=>e[(t+o)%e.length])}xo(If,"wrapArray");var gN=uN,bN=hN,yN=Object.defineProperty,qo=(e,t)=>yN(e,"name",{value:t,configurable:!0}),zi="Tabs",[vN,iI]=rr(zi,[Df]),Pf=Df(),[xN,Bi]=vN(zi),wN=v.forwardRef(qo(function(t,r){const{__scopeTabs:o,value:n,onValueChange:a,defaultValue:s,orientation:i="horizontal",dir:c,activationMode:d="automatic",...f}=t,u=hn(c),[h,m]=br({prop:n,onChange:a,defaultProp:s??"",caller:zi});return l.jsx(xN,{scope:o,baseId:Hr(),value:h,onValueChange:m,orientation:i,dir:u,activationMode:d,children:l.jsx(Ie.div,{dir:u,"data-orientation":i,...f,ref:r})})},"Tabs")),CN="TabsList",SN=v.forwardRef(qo(function(t,r){const{__scopeTabs:o,loop:n=!0,...a}=t,s=Bi(CN,o),i=Pf(o);return l.jsx(gN,{asChild:!0,...i,orientation:s.orientation,dir:s.dir,loop:n,children:l.jsx(Ie.div,{role:"tablist","aria-orientation":s.orientation,...a,ref:r})})},"TabsList")),NN="TabsTrigger",EN=v.forwardRef(qo(function(t,r){const{__scopeTabs:o,value:n,disabled:a=!1,...s}=t,i=Bi(NN,o),c=Pf(o),d=Ui(i.baseId,n),f=Wi(i.baseId,n),u=n===i.value;return l.jsx(bN,{asChild:!0,...c,focusable:!a,active:u,children:l.jsx(Ie.button,{type:"button",role:"tab","aria-selected":u,"aria-controls":f,"data-state":u?"active":"inactive","data-disabled":a?"":void 0,disabled:a,id:d,...s,ref:r,onMouseDown:we(t.onMouseDown,h=>{!a&&h.button===0&&h.ctrlKey===!1?i.onValueChange(n):h.preventDefault()}),onKeyDown:we(t.onKeyDown,h=>{a||h.target!==h.currentTarget||[" ","Enter"].includes(h.key)&&i.onValueChange(n)}),onFocus:we(t.onFocus,()=>{const h=i.activationMode!=="manual";!u&&!a&&h&&i.onValueChange(n)})})})},"TabsTrigger")),kN="TabsContent",_N=v.forwardRef(qo(function(t,r){const{__scopeTabs:o,value:n,forceMount:a,children:s,...i}=t,c=Bi(kN,o),d=Ui(c.baseId,n),f=Wi(c.baseId,n),u=n===c.value,h=v.useRef(u);return v.useEffect(()=>{const m=requestAnimationFrame(()=>h.current=!1);return()=>cancelAnimationFrame(m)},[]),l.jsx(Vo,{present:a||u,children:({present:m})=>l.jsx(Ie.div,{"data-state":u?"active":"inactive","data-orientation":c.orientation,role:"tabpanel","aria-labelledby":d,hidden:!m,id:f,tabIndex:0,...i,ref:r,style:{...t.style,animationDuration:h.current?"0s":void 0},children:m&&s})})},"TabsContent"));function Ui(e,t){return`${e}-trigger-${t}`}qo(Ui,"makeTriggerId");function Wi(e,t){return`${e}-content-${t}`}qo(Wi,"makeContentId");var DN=wN,Mf=SN,Of=EN,Lf=_N;const AN=DN,Ff=v.forwardRef(({className:e,...t},r)=>l.jsx(Mf,{ref:r,className:p("inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",e),...t}));Ff.displayName=Mf.displayName;const rs=v.forwardRef(({className:e,...t},r)=>l.jsx(Of,{ref:r,className:p("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow",e),...t}));rs.displayName=Of.displayName;const os=v.forwardRef(({className:e,...t},r)=>l.jsx(Lf,{ref:r,className:p("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",e),...t}));os.displayName=Lf.displayName;var TN=Object.defineProperty,Cn=(e,t)=>TN(e,"name",{value:t,configurable:!0}),Hi="Collapsible",[IN,$f]=rr(Hi),[PN,ji]=IN(Hi),MN=v.forwardRef(Cn(function(t,r){const{__scopeCollapsible:o,open:n,defaultOpen:a,disabled:s,onOpenChange:i,...c}=t,[d,f]=br({prop:n,defaultProp:a??!1,onChange:i,caller:Hi});return l.jsx(PN,{scope:o,disabled:s,contentId:Hr(),open:d,onOpenToggle:v.useCallback(()=>f(u=>!u),[f]),children:l.jsx(Ie.div,{"data-state":ns(d),"data-disabled":s?"":void 0,...c,ref:r})})},"Collapsible")),ON="CollapsibleTrigger",Gf=v.forwardRef(Cn(function(t,r){const{__scopeCollapsible:o,...n}=t,a=ji(ON,o);return l.jsx(Ie.button,{type:"button","aria-controls":a.open?a.contentId:void 0,"aria-expanded":a.open||!1,"data-state":ns(a.open),"data-disabled":a.disabled?"":void 0,disabled:a.disabled,...n,ref:r,onClick:we(t.onClick,a.onOpenToggle)})},"CollapsibleTrigger")),Vf="CollapsibleContent",zf=v.forwardRef(Cn(function(t,r){const{forceMount:o,...n}=t,a=ji(Vf,t.__scopeCollapsible);return l.jsx(Vo,{present:o||a.open,children:({present:s})=>l.jsx(LN,{...n,ref:r,present:s})})},"CollapsibleContent")),LN=v.forwardRef(Cn(function(t,r){const{__scopeCollapsible:o,present:n,children:a,...s}=t,i=ji(Vf,o),[c,d]=v.useState(n),f=v.useRef(null),u=ze(r,f),h=v.useRef(0),m=h.current,g=v.useRef(0),y=g.current,b=i.open||c,C=v.useRef(b),w=v.useRef(void 0);return v.useEffect(()=>{const x=requestAnimationFrame(()=>C.current=!1);return()=>cancelAnimationFrame(x)},[]),nt(()=>{const x=f.current;if(x){w.current=w.current||{transitionDuration:x.style.transitionDuration,animationName:x.style.animationName},x.style.transitionDuration="0s",x.style.animationName="none";const S=x.getBoundingClientRect();h.current=S.height,g.current=S.width,C.current||(x.style.transitionDuration=w.current.transitionDuration,x.style.animationName=w.current.animationName),d(n)}},[i.open,n]),l.jsx(Ie.div,{"data-state":ns(i.open),"data-disabled":i.disabled?"":void 0,id:i.contentId,hidden:!b,...s,ref:u,style:{"--radix-collapsible-content-height":m?`${m}px`:void 0,"--radix-collapsible-content-width":y?`${y}px`:void 0,...t.style},children:b&&a})},"CollapsibleContentImpl"));function ns(e){return e?"open":"closed"}Cn(ns,"getState");var Bf=MN,FN=Gf,$N=zf;const Uf=Bf,Wf=Gf,Hf=zf,GN=es("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),Ze=v.forwardRef(({className:e,variant:t,size:r,asChild:o=!1,...n},a)=>{const s=o?Vx:"button";return l.jsx(s,{className:p(GN({variant:t,size:r,className:e})),ref:a,...n})});Ze.displayName="Button";var VN=Object.defineProperty,vt=(e,t)=>VN(e,"name",{value:t,configurable:!0}),[Yi,cI]=rr("Tooltip",[$a]),qi=$a(),zN="TooltipProvider",BN=700,Qi="tooltip.open",[UN,Ki]=Yi(zN),WN=vt(e=>{const{__scopeTooltip:t,delayDuration:r=BN,skipDelayDuration:o=300,disableHoverableContent:n=!1,children:a}=e,s=v.useRef(!0),i=v.useRef(!1),c=v.useRef(0);return v.useEffect(()=>{const d=c.current;return()=>window.clearTimeout(d)},[]),l.jsx(UN,{scope:t,isOpenDelayedRef:s,delayDuration:r,onOpen:v.useCallback(()=>{o<=0||(window.clearTimeout(c.current),s.current=!1)},[o]),onClose:v.useCallback(()=>{o<=0||(window.clearTimeout(c.current),c.current=window.setTimeout(()=>s.current=!0,o))},[o]),isPointerInTransitRef:i,onPointerInTransitChange:v.useCallback(d=>{i.current=d},[]),disableHoverableContent:n,children:a})},"TooltipProvider"),Xi="Tooltip",[HN,Sn]=Yi(Xi),jN=vt(e=>{const{__scopeTooltip:t,children:r,open:o,defaultOpen:n,onOpenChange:a,disableHoverableContent:s,delayDuration:i}=e,c=Ki(Xi,e.__scopeTooltip),d=qi(t),[f,u]=v.useState(null),[h,m]=v.useState(void 0),g=Hr(),y=v.useRef(0),b=s??c.disableHoverableContent,C=i??c.delayDuration,w=v.useRef(!1),[x,S]=br({prop:o,defaultProp:n??!1,onChange:vt(A=>{A?(c.onOpen(),document.dispatchEvent(new CustomEvent(Qi))):c.onClose(),a==null||a(A)},"onChange"),caller:Xi}),N=v.useMemo(()=>x?w.current?"delayed-open":"instant-open":"closed",[x]),E=v.useCallback(()=>{window.clearTimeout(y.current),y.current=0,w.current=!1,S(!0)},[S]),M=v.useCallback(()=>{window.clearTimeout(y.current),y.current=0,S(!1)},[S]),k=v.useCallback(()=>{window.clearTimeout(y.current),y.current=window.setTimeout(()=>{w.current=!0,S(!0),y.current=0},C)},[C,S]);v.useEffect(()=>()=>{y.current&&(window.clearTimeout(y.current),y.current=0)},[]);const T=h??g;return l.jsx(gp,{...d,children:l.jsx(HN,{scope:t,contentId:T,setContentId:m,open:x,stateAttribute:N,trigger:f,onTriggerChange:u,onTriggerEnter:v.useCallback(()=>{c.isOpenDelayedRef.current?k():E()},[c.isOpenDelayedRef,k,E]),onTriggerLeave:v.useCallback(()=>{b?M():(window.clearTimeout(y.current),y.current=0)},[M,b]),onOpen:E,onClose:M,disableHoverableContent:b,children:r})})},"Tooltip"),jf="TooltipTrigger",YN=v.forwardRef(vt(function(t,r){const{__scopeTooltip:o,...n}=t,a=Sn(jf,o),s=Ki(jf,o),i=qi(o),c=v.useRef(null),d=ze(r,c,a.onTriggerChange),f=v.useRef(!1),u=v.useRef(!1),h=v.useCallback(()=>f.current=!1,[]);return v.useEffect(()=>()=>document.removeEventListener("pointerup",h),[h]),l.jsx(bp,{asChild:!0,...i,children:l.jsx(Ie.button,{"aria-describedby":a.open?a.contentId:void 0,"data-state":a.stateAttribute,...n,ref:d,onPointerMove:we(t.onPointerMove,m=>{m.pointerType!=="touch"&&!u.current&&!s.isPointerInTransitRef.current&&(a.onTriggerEnter(),u.current=!0)}),onPointerLeave:we(t.onPointerLeave,()=>{a.onTriggerLeave(),u.current=!1}),onPointerDown:we(t.onPointerDown,()=>{a.open&&a.onClose(),f.current=!0,document.addEventListener("pointerup",h,{once:!0})}),onFocus:we(t.onFocus,()=>{f.current||a.onOpen()}),onBlur:we(t.onBlur,a.onClose),onClick:we(t.onClick,a.onClose)})})},"TooltipTrigger")),Yf="TooltipPortal",[qN,QN]=Yi(Yf,{forceMount:void 0}),KN=vt(e=>{const{__scopeTooltip:t,forceMount:r,children:o,container:n}=e,a=Sn(Yf,t);return l.jsx(qN,{scope:t,forceMount:r,children:l.jsx(Vo,{present:r||a.open,children:l.jsx(vp,{asChild:!0,container:n,children:o})})})},"TooltipPortal"),Nn="TooltipContent",XN=v.forwardRef(vt(function(t,r){const o=QN(Nn,t.__scopeTooltip),{forceMount:n=o.forceMount,side:a="top",...s}=t,i=Sn(Nn,t.__scopeTooltip);return l.jsx(Vo,{present:n||i.open,children:i.disableHoverableContent?l.jsx(qf,{side:a,...s,ref:r}):l.jsx(JN,{side:a,...s,ref:r})})},"TooltipContent")),JN=v.forwardRef(vt(function(t,r){const o=Sn(Nn,t.__scopeTooltip),n=Ki(Nn,t.__scopeTooltip),a=v.useRef(null),s=ze(r,a),[i,c]=v.useState(null),{trigger:d,onClose:f}=o,u=a.current,{onPointerInTransitChange:h}=n,m=v.useCallback(()=>{c(null),h(!1)},[h]),g=v.useCallback((y,b)=>{const C=y.currentTarget,w={x:y.clientX,y:y.clientY},x=Qf(w,C.getBoundingClientRect()),S=Kf(w,x),N=Xf(b.getBoundingClientRect()),E=Zf([...S,...N]);c(E),h(!0)},[h]);return v.useEffect(()=>()=>m(),[m]),v.useEffect(()=>{if(d&&u){const y=vt(C=>g(C,u),"handleTriggerLeave"),b=vt(C=>g(C,d),"handleContentLeave");return d.addEventListener("pointerleave",y),u.addEventListener("pointerleave",b),()=>{d.removeEventListener("pointerleave",y),u.removeEventListener("pointerleave",b)}}},[d,u,g,m]),v.useEffect(()=>{if(i){const y=vt(b=>{const C=b.target,w={x:b.clientX,y:b.clientY},x=(d==null?void 0:d.contains(C))||(u==null?void 0:u.contains(C)),S=!Jf(w,i);x?m():S&&(m(),f())},"handleTrackPointerGrace");return document.addEventListener("pointermove",y),()=>document.removeEventListener("pointermove",y)}},[d,u,i,f,m]),l.jsx(qf,{...t,ref:s})},"TooltipContentHoverable")),ZN=xu("TooltipContent"),qf=v.forwardRef(vt(function(t,r){const{__scopeTooltip:o,children:n,"aria-label":a,id:s,onEscapeKeyDown:i,onPointerDownOutside:c,...d}=t,f=Sn(Nn,o),u=qi(o),{onClose:h}=f;v.useEffect(()=>(document.addEventListener(Qi,h),()=>document.removeEventListener(Qi,h)),[h]),v.useEffect(()=>{if(f.trigger){const g=vt(y=>{y.target instanceof Node&&y.target.contains(f.trigger)&&h()},"handleScroll");return window.addEventListener("scroll",g,{capture:!0}),()=>window.removeEventListener("scroll",g,{capture:!0})}},[f.trigger,h]);const{setContentId:m}=f;return nt(()=>(m(s),()=>{m(void 0)}),[s,m]),l.jsx(Mu,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:i,onPointerDownOutside:c,onFocusOutside:g=>g.preventDefault(),onDismiss:h,children:l.jsxs(yp,{"data-state":f.stateAttribute,role:a?void 0:"tooltip",id:a?void 0:f.contentId,...u,...d,ref:r,style:{...d.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[l.jsx(ZN,{children:n}),a?l.jsx(B0,{id:f.contentId,role:"tooltip",children:a}):null]})})},"TooltipContentImpl"));function Qf(e,t){const r=Math.abs(t.top-e.y),o=Math.abs(t.bottom-e.y),n=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(r,o,n,a)){case a:return"left";case n:return"right";case r:return"top";case o:return"bottom";default:throw new Error("unreachable")}}vt(Qf,"getExitSideFromRect");function Kf(e,t,r=5){const o=[];switch(t){case"top":o.push({x:e.x-r,y:e.y+r},{x:e.x+r,y:e.y+r});break;case"bottom":o.push({x:e.x-r,y:e.y-r},{x:e.x+r,y:e.y-r});break;case"left":o.push({x:e.x+r,y:e.y-r},{x:e.x+r,y:e.y+r});break;case"right":o.push({x:e.x-r,y:e.y-r},{x:e.x-r,y:e.y+r});break}return o}vt(Kf,"getPaddedExitPoints");function Xf(e){const{top:t,right:r,bottom:o,left:n}=e;return[{x:n,y:t},{x:r,y:t},{x:r,y:o},{x:n,y:o}]}vt(Xf,"getPointsFromRect");function Jf(e,t){const{x:r,y:o}=e;let n=!1;for(let a=0,s=t.length-1;a<t.length;s=a++){const i=t[a],c=t[s],d=i.x,f=i.y,u=c.x,h=c.y;f>o!=h>o&&r<(u-d)*(o-f)/(h-f)+d&&(n=!n)}return n}vt(Jf,"isPointInPolygon");function Zf(e){const t=e.slice();return t.sort((r,o)=>r.x<o.x?-1:r.x>o.x?1:r.y<o.y?-1:r.y>o.y?1:0),Rf(t)}vt(Zf,"getHull");function Rf(e){if(e.length<=1)return e.slice();const t=[];for(let o=0;o<e.length;o++){const n=e[o];for(;t.length>=2;){const a=t[t.length-1],s=t[t.length-2];if((a.x-s.x)*(n.y-s.y)>=(a.y-s.y)*(n.x-s.x))t.pop();else break}t.push(n)}t.pop();const r=[];for(let o=e.length-1;o>=0;o--){const n=e[o];for(;r.length>=2;){const a=r[r.length-1],s=r[r.length-2];if((a.x-s.x)*(n.y-s.y)>=(a.y-s.y)*(n.x-s.x))r.pop();else break}r.push(n)}return r.pop(),t.length===1&&r.length===1&&t[0].x===r[0].x&&t[0].y===r[0].y?t:t.concat(r)}vt(Rf,"getHullPresorted");var RN=WN,eE=jN,tE=YN,rE=KN,eh=XN;const as=RN,vr=eE,xr=tE,sr=v.forwardRef(({className:e,sideOffset:t=4,...r},o)=>l.jsx(rE,{children:l.jsx(eh,{ref:o,sideOffset:t,className:p("z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-tooltip-content-transform-origin]",e),...r})}));sr.displayName=eh.displayName;const Ji=v.forwardRef(({className:e,children:t,...r},o)=>l.jsx("div",{ref:o,className:p("relative overflow-hidden",e),...r,children:l.jsx("div",{className:p("h-full w-full overflow-auto rounded-[inherit]"),children:t})}));Ji.displayName="ScrollArea";const oE=v.forwardRef(({className:e,orientation:t="vertical",...r},o)=>l.jsx("div",{ref:o,className:p("flex touch-none select-none transition-colors",t==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-[1px]",t==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",e),...r,children:l.jsx("div",{className:p("relative flex-1 rounded-full bg-border")})}));oE.displayName="ScrollBar";function th(e){return{order:99,disabled:!1,hidden:!1,...e}}function nE(e){return e.map((t,r)=>th({...t,order:t.order??100+r}))}function rh(e,t){return typeof e.disabled=="function"?e.disabled(t):e.disabled??!1}function oh(e,t){return typeof e.hidden=="function"?e.hidden(t):e.hidden??!1}const aE=({element:e,onAddElement:t,isDisabled:r=!1,disabledReason:o,wizardExists:n=!1})=>{const a=R(u=>u.setDraggedElementType),s=u=>{if(r){u.preventDefault();return}u.dataTransfer.setData("elementType",e.type),u.dataTransfer.effectAllowed="copy",a(e.type)},i=()=>{a(null)},c=()=>{r||t(e.type)},d=()=>{if(typeof e.icon=="string")return l.jsx("span",{className:p("text-lg flex-shrink-0"),children:e.icon});const u=e.icon;return l.jsx(u,{className:p("w-5 h-5 flex-shrink-0")})},f=l.jsxs("div",{draggable:!r,onDragStart:s,onDragEnd:i,onClick:c,className:p("flex items-center gap-2 p-2 bg-card border border-border rounded-md transition-all duration-150 select-none",r?"opacity-50 cursor-not-allowed":"cursor-grab hover:border-primary hover:shadow-sm active:cursor-grabbing"),children:[d(),l.jsxs("div",{className:p("flex-1 min-w-0"),children:[l.jsx("div",{className:p("text-xs font-medium text-foreground truncate"),children:e.label}),r&&l.jsx("div",{className:p("text-xs text-orange-500 truncate"),children:"Already added"})]})]});return r&&o?l.jsx(as,{children:l.jsxs(vr,{children:[l.jsx(xr,{asChild:!0,children:f}),l.jsx(sr,{children:l.jsx("p",{children:o})})]})}):l.jsx(as,{children:l.jsxs(vr,{children:[l.jsx(xr,{asChild:!0,children:f}),l.jsx(sr,{children:l.jsxs("div",{className:p("max-w-xs"),children:[l.jsx("p",{className:p("font-medium"),children:e.label}),l.jsx("p",{className:p("text-xs text-muted-foreground"),children:e.description}),l.jsx("p",{className:p("text-xs mt-1 text-muted-foreground/70"),children:n?"Drag into wizard step":"Drag or click to add"})]})})]})})},nh=({label:e,elements:t,searchQuery:r,onAddElement:o,defaultExpanded:n=!1,hasWizard:a=!1,wizardExists:s=!1})=>{const[i,c]=D.useState(n),d=D.useMemo(()=>{if(!r.trim())return t;const u=r.toLowerCase();return t.filter(h=>h.label.toLowerCase().includes(u)||h.description.toLowerCase().includes(u)||h.searchKeywords&&h.searchKeywords.some(m=>m.toLowerCase().includes(u)))},[t,r]);if(r&&d.length===0)return null;const f=r?!0:i;return l.jsxs(Uf,{open:f,onOpenChange:c,className:p("mb-2"),children:[l.jsx(Wf,{asChild:!0,children:l.jsxs(Ze,{variant:"ghost",className:p("w-full flex items-center justify-between px-2 py-1.5 h-auto text-xs font-semibold text-muted-foreground uppercase tracking-wider hover:bg-muted"),children:[l.jsx("span",{children:e}),l.jsxs("span",{className:p("flex items-center gap-1"),children:[l.jsx(Oi,{variant:"secondary",className:p("font-normal normal-case text-xs"),children:d.length}),l.jsx(Yo,{className:p("h-4 w-4 transition-transform",f&&"rotate-180")})]})]})}),l.jsx(Hf,{children:l.jsx("div",{className:p("grid grid-cols-2 gap-1.5 mt-1.5"),children:d.map(u=>l.jsx(aE,{element:u,onAddElement:o,isDisabled:u.type==="pages"&&a,disabledReason:"Only one wizard can be added per form",wizardExists:s},u.type))})})]})},ah=({searchQuery:e,elements:t})=>t.some(o=>o.label.toLowerCase().includes(e.toLowerCase())||o.description.toLowerCase().includes(e.toLowerCase())||o.searchKeywords&&o.searchKeywords.some(n=>n.toLowerCase().includes(e.toLowerCase())))?null:l.jsxs("div",{className:p("text-center py-8 text-muted-foreground text-sm"),children:[l.jsx("div",{className:p("text-3xl mb-2"),children:"🔍"}),l.jsxs("p",{children:['No elements found for "',e,'"']}),l.jsx("p",{className:p("text-xs mt-1 text-muted-foreground/70"),children:"Try a different search term"})]}),sE=({sidebarTabs:e=[]})=>{const[t,r]=D.useState("fields"),[o,n]=D.useState(""),a=R(A=>A.addElement),s=R(A=>A.hasWizard),i=R(A=>A.schema),c=R(A=>A.mode),d=R(A=>A.loadSchema),f=R(A=>A.exportSchema),u=R(A=>A.resetForm),h=R(A=>A.updateFormTitle),m=R(A=>A.updateFormDescription),g=R(A=>A.updateElement),y=R(A=>A.deleteElement),b=R(A=>A.selectElement),C=R(A=>A.setMode),w=A=>{x&&A!=="pages"||a(A)},x=s(),S=D.useMemo(()=>{const A=dt.getGroups(),L=A.filter(F=>F.elements.some(V=>V.category==="field")),O=A.filter(F=>F.elements.some(V=>V.category==="page"));return{fieldGroups:L,pageGroups:O}},[]),N=D.useMemo(()=>dt.getByCategory("field"),[]),E=D.useMemo(()=>dt.getByCategory("page"),[]),M=["textInput","selection","heading","layout","special"],k=D.useMemo(()=>({schema:i,mode:c,actions:{addElement:a,loadSchema:d,exportSchema:f,resetForm:u,updateFormTitle:h,updateFormDescription:m,updateElement:g,deleteElement:y,selectElement:b,setMode:C}}),[i,c,a,d,f,u,h,m,g,y,b,C]),T=D.useMemo(()=>e.length?[...e].filter(A=>!oh(A,k)).sort((A,L)=>(A.order??99)-(L.order??99)):[],[e,k]);return l.jsxs("div",{className:p("w-72 bg-muted/50 border-r border-border flex flex-col h-full flex-shrink-0"),children:[x&&l.jsx("div",{className:p("p-2 bg-orange-50 border-b border-orange-200"),children:l.jsxs("div",{className:p("flex items-start gap-2 text-xs text-orange-700"),children:[l.jsx("span",{className:p("text-base"),children:"📑"}),l.jsxs("div",{children:[l.jsx("p",{className:p("font-medium"),children:"Wizard Mode Active"}),l.jsx("p",{className:p("text-orange-600"),children:"Drop elements inside wizard steps, not on the main canvas."})]})]})}),l.jsx("div",{className:p("p-3 border-b border-border bg-card"),children:l.jsxs("div",{className:p("relative"),children:[l.jsx(gS,{className:p("absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground")}),l.jsx(Kt,{type:"text",placeholder:"Search elements...",value:o,onChange:A=>n(A.target.value),className:p("pl-9 pr-8")}),o&&l.jsx(Ze,{variant:"ghost",size:"icon",className:p("absolute right-1 top-1/2 -translate-y-1/2 h-6 w-6"),onClick:()=>n(""),children:l.jsx(Ka,{className:p("h-4 w-4")})})]})}),l.jsxs(AN,{value:t,onValueChange:r,className:p("flex-1 flex flex-col min-h-0 overflow-hidden"),children:[l.jsx(Ji,{"aria-disabled":!0,children:l.jsxs(Ff,{className:p("w-full rounded-none border-b border-border bg-card h-auto p-0 flex-shrink-0"),children:[l.jsxs(rs,{value:"fields",className:p("flex-1 rounded-none border-b-2 border-transparent data-[state=active]:border-primary data-[state=active]:bg-primary/5 py-2.5"),children:["Fields (",N.length,")"]}),l.jsxs(rs,{value:"pages",className:p("flex-1 rounded-none border-b-2 border-transparent data-[state=active]:border-primary data-[state=active]:bg-primary/5 py-2.5"),children:["Page (",E.length,")"]}),T.map(A=>{const L=A.icon;return l.jsxs(rs,{value:A.id,className:p("flex-1 rounded-none border-b-2 border-transparent data-[state=active]:border-primary data-[state=active]:bg-primary/5 py-2.5"),disabled:rh(A,k),children:[L&&l.jsx(L,{className:p("h-3.5 w-3.5 mr-1")}),A.label]},A.id)})]})}),l.jsxs("div",{className:p("flex-1 min-h-0 relative"),children:[l.jsx(os,{value:"fields",className:p("absolute inset-0 mt-0 data-[state=inactive]:hidden overflow-auto"),children:l.jsxs("div",{className:p("p-3"),children:[S.fieldGroups.map(A=>l.jsx(nh,{label:A.label,elements:A.elements.filter(L=>L.category==="field"),searchQuery:o,onAddElement:w,defaultExpanded:M.includes(A.id),wizardExists:x},A.id)),o&&l.jsx(ah,{searchQuery:o,elements:N})]})}),l.jsx(os,{value:"pages",className:p("absolute inset-0 mt-0 data-[state=inactive]:hidden overflow-auto"),children:l.jsxs("div",{className:p("p-3"),children:[S.pageGroups.map(A=>l.jsx(nh,{label:A.label,elements:A.elements.filter(L=>L.category==="page"),searchQuery:o,onAddElement:w,defaultExpanded:M.includes(A.id),hasWizard:x,wizardExists:x},A.id)),o&&l.jsx(ah,{searchQuery:o,elements:E})]})}),T.map(A=>{const L=A.content;return l.jsx(os,{value:A.id,className:p("absolute inset-0 mt-0 data-[state=inactive]:hidden overflow-auto"),children:l.jsx(L,{...k})},A.id)})]})]})]})},lE=["shortText","longText","multiLineInput","textEditor","number","slider","rangeSlider","email","phone","url","location","password","signature","captcha","singleChoice","multipleChoice","dropdown","tags","decisionBox","toggleSwitch","singleChoiceMatrix","multipleChoiceMatrix","matrixTable","date","time","dateTime","multipleDates","dateRange","fileUpload","imageUpload","multiFileUpload","multiImageUpload","paragraph","image","link","formHeading","sectionHeading","subheading","divider","spacer","group","grid","table","repeatElement","repeatGroup","pages","submit"];function iE(e){const t=[];if(!e||typeof e!="object")return t.push({type:"error",message:"Schema must be a valid object"}),{valid:!1,errors:t};const r=e;if((!r.id||typeof r.id!="string")&&t.push({type:"error",message:'Schema must have a valid "id" field (string)'}),(!r.version||typeof r.version!="string")&&t.push({type:"error",message:'Schema must have a valid "version" field (string)'}),(!r.title||typeof r.title!="string")&&t.push({type:"error",message:'Schema must have a valid "title" field (string)'}),!Array.isArray(r.elements))return t.push({type:"error",message:'Schema must have an "elements" array'}),{valid:!1,errors:t};const o=new Set,n=new Map;r.elements.forEach((i,c)=>{const d=cE(i,c,o,n);t.push(...d)}),n.forEach((i,c)=>{i.length>1&&t.push({type:"error",message:`Duplicate field name "${c}" found in elements: ${i.join(", ")}`})});const a=new Set(o);return r.elements.forEach(i=>{if(i&&i.logic){const c=uE(i,a);t.push(...c)}}),r.elements.length===0&&t.push({type:"warning",message:"Schema has no elements"}),!r.elements.some(i=>i&&i.type==="submit")&&r.elements.length>0&&t.push({type:"warning",message:"Schema has no submit button"}),{valid:t.filter(i=>i.type==="error").length===0,errors:t}}function cE(e,t,r,o){const n=[],a=`Element at index ${t}`;if(!e||typeof e!="object")return n.push({type:"error",message:`${a}: Must be a valid object`}),n;const s=e;if(!s.id||typeof s.id!="string"?n.push({type:"error",message:`${a}: Must have a valid "id" field (string)`}):(r.has(s.id)&&n.push({type:"error",message:`${a}: Duplicate element ID "${s.id}"`}),r.add(s.id)),!s.type||typeof s.type!="string"?n.push({type:"error",message:`${a}: Must have a valid "type" field (string)`}):lE.includes(s.type)||n.push({type:"error",message:`${a}: Invalid element type "${s.type}"`}),typeof s.order!="number"&&n.push({type:"warning",elementId:s.id,message:`${a}: Missing or invalid "order" field`}),(!s.properties||typeof s.properties!="object")&&n.push({type:"warning",elementId:s.id,message:`${a}: Missing "properties" object`}),(!s.layout||typeof s.layout!="object")&&n.push({type:"warning",elementId:s.id,message:`${a}: Missing "layout" object`}),!s.attributes||typeof s.attributes!="object")n.push({type:"warning",elementId:s.id,message:`${a}: Missing "attributes" object`});else{const c=s.attributes;if(!c.name||typeof c.name!="string")n.push({type:"error",elementId:s.id,message:`${a}: Missing or invalid "attributes.name" field`});else{const d=o.get(c.name)||[];d.push(s.id),o.set(c.name,d)}}const i=dE(s);return n.push(...i),n}function dE(e){const t=[],r=e.type,o=e.config,n=e.id;return["singleChoice","multipleChoice","dropdown","tags"].includes(r)&&(!(o!=null&&o.options)||!Array.isArray(o.options)?t.push({type:"warning",elementId:n,message:`${r} element should have config.options array`}):o.options.length===0?t.push({type:"warning",elementId:n,message:`${r} element has no options defined`}):o.options.forEach((i,c)=>{if(!i||typeof i!="object")t.push({type:"error",elementId:n,message:`${r} option at index ${c} is invalid`});else{const d=i;(typeof d.label!="string"||typeof d.value!="string")&&t.push({type:"warning",elementId:n,message:`${r} option at index ${c} should have label and value strings`})}})),["singleChoiceMatrix","multipleChoiceMatrix","matrixTable"].includes(r)&&((!(o!=null&&o.matrixRows)||!Array.isArray(o.matrixRows))&&t.push({type:"warning",elementId:n,message:`${r} element should have config.matrixRows array`}),(!(o!=null&&o.matrixColumns)||!Array.isArray(o.matrixColumns))&&t.push({type:"warning",elementId:n,message:`${r} element should have config.matrixColumns array`})),r==="pages"&&(!(o!=null&&o.pagesList)||!Array.isArray(o.pagesList))&&t.push({type:"warning",elementId:n,message:"pages element should have config.pagesList array"}),(r==="slider"||r==="rangeSlider")&&o&&typeof o.min=="number"&&typeof o.max=="number"&&o.min>=o.max&&t.push({type:"error",elementId:n,message:`${r} min value must be less than max value`}),t}function uE(e,t){var a,s,i,c;const r=[],o=e.logic;if(!o)return r;const n=(d,f)=>{d&&d.forEach((u,h)=>{u.field?t.has(u.field)||r.push({type:"warning",elementId:e.id,message:`${f} rule ${h+1}: References unknown field "${u.field}"`}):r.push({type:"warning",elementId:e.id,message:`${f} rule ${h+1}: Missing field reference`}),u.operator||r.push({type:"warning",elementId:e.id,message:`${f} rule ${h+1}: Missing operator`})})};return(a=o.showWhen)!=null&&a.rules&&n(o.showWhen.rules,"showWhen"),(s=o.hideWhen)!=null&&s.rules&&n(o.hideWhen.rules,"hideWhen"),(i=o.requireWhen)!=null&&i.rules&&n(o.requireWhen.rules,"requireWhen"),(c=o.disableWhen)!=null&&c.rules&&n(o.disableWhen.rules,"disableWhen"),r}function pE(e){let t;try{t=JSON.parse(e)}catch(o){return{schema:null,validation:{valid:!1,errors:[{type:"error",message:`Invalid JSON: ${o.message}`}]}}}const r=iE(t);return{schema:r.valid?t:null,validation:r}}function fE(e){var r;const t=JSON.parse(JSON.stringify(e));return t.id||(t.id=((r=crypto.randomUUID)==null?void 0:r.call(crypto))||`form_${Date.now()}`),t.version||(t.version="1.0"),t.title||(t.title="Untitled Form"),Array.isArray(t.elements)||(t.elements=[]),t.metadata||(t.metadata={createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}),t.elements=t.elements.map((o,n)=>{var a;return o.id||(o.id=((a=crypto.randomUUID)==null?void 0:a.call(crypto))||`element_${Date.now()}_${n}`),typeof o.order!="number"&&(o.order=n),o.properties||(o.properties={}),o.layout||(o.layout={}),o.attributes||(o.attributes={name:`field_${n}`}),o.attributes.name||(o.attributes.name=`field_${n}`),o}),t.elements.forEach((o,n)=>{o.order=n}),t}function hE(e){if(e.valid&&e.errors.length===0)return"Schema is valid.";const t=e.errors.filter(n=>n.type==="error").length,r=e.errors.filter(n=>n.type==="warning").length;let o="";return t>0&&(o+=`${t} error${t!==1?"s":""}`),r>0&&(o&&(o+=", "),o+=`${r} warning${r!==1?"s":""}`),o}function sh(e){return{order:0,variant:"ghost",disabled:!1,hidden:!1,...e}}function mE(e){return e.map((t,r)=>sh({...t,order:t.order??r}))}function lh(e,t){return typeof e.disabled=="function"?e.disabled(t):e.disabled??!1}function Zi(e,t){return typeof e.hidden=="function"?e.hidden(t):e.hidden??!1}class gE{constructor(){wl(this,"modes",new Map)}register(t){if(!t.id)throw new Error("Mode definition must have an id");if(!t.label)throw new Error(`Mode "${t.id}" must have a label`);if(!t.icon)throw new Error(`Mode "${t.id}" must have an icon`);if(!t.renderContent)throw new Error(`Mode "${t.id}" must have a renderContent function`);if(this.modes.has(t.id)){console.warn(`Mode "${t.id}" is already registered. Use modeRegistry.unregister("${t.id}") first or manage registration order.`);return}this.modes.set(t.id,t)}get(t){return this.modes.get(t)}has(t){return this.modes.has(t)}getAll(){return Array.from(this.modes.values()).sort((t,r)=>(t.order??50)-(r.order??50))}getVisible(){return this.getAll().filter(t=>!t.hidden)}unregister(t){return this.modes.delete(t)}clear(){this.modes.clear()}}const Vt=new gE;function bE(e){Vt.register(e)}function yE(e){for(const t of e)Vt.register(t)}function vE(e){return Vt.unregister(e)}function xE(e){return Vt.get(e)}function wE(e){return Vt.has(e)}const wo=({action:e,context:t})=>{const r=e.icon,o=lh(e,t),n=async()=>{o||await e.onClick(t)},a=p(e.variant==="destructive"?"text-destructive hover:text-destructive hover:bg-destructive/10":"");return l.jsxs(vr,{children:[l.jsx(xr,{asChild:!0,children:l.jsx(Ze,{variant:"ghost",size:"icon",onClick:n,disabled:o,className:a,children:l.jsx(r,{className:p("h-5 w-5")})})}),l.jsx(sr,{children:l.jsx("p",{children:e.label})})]})},CE=({schema:e,canUndo:t,canRedo:r,onUndo:o,onRedo:n,onExport:a,exportSchema:s,onImport:i,onReset:c,mode:d,onModeChange:f,toolbarConfig:u})=>{const h=D.useRef(null),m=D.useMemo(()=>({schema:e,mode:d,canUndo:t,canRedo:r,actions:{undo:o,redo:n,loadSchema:i,exportSchema:s,setMode:f,resetForm:c}}),[e,d,t,r,o,n,i,s,f,c]),g=()=>{var E;(E=h.current)==null||E.click()},y=E=>{var k;const M=(k=E.target.files)==null?void 0:k[0];if(M){const T=new FileReader;T.onload=A=>{var L;try{const O=(L=A.target)==null?void 0:L.result,{schema:F,validation:V}=pE(O);if(!V.valid){const K=hE(V),H=V.errors.filter(G=>G.type==="error").slice(0,5).map(G=>`• ${G.message}`).join(`
172
- `);if(window.confirm(`Schema validation failed (${K}):
171
+ */const Wn=St("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),Ta=FC,Pa=zC,Hn=S.forwardRef(({className:e,children:t,...r},o)=>l.jsxs(Xp,{ref:o,className:m("flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm ring-offset-background data-[placeholder]:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",e),...r,children:[t,l.jsx(BC,{asChild:!0,children:l.jsx(mn,{className:m("h-4 w-4 opacity-50")})})]}));Hn.displayName=Xp.displayName;const xh=S.forwardRef(({className:e,...t},r)=>l.jsx(ah,{ref:r,className:m("flex cursor-default items-center justify-center py-1",e),...t,children:l.jsx(gh,{className:m("h-4 w-4")})}));xh.displayName=ah.displayName;const wh=S.forwardRef(({className:e,...t},r)=>l.jsx(ih,{ref:r,className:m("flex cursor-default items-center justify-center py-1",e),...t,children:l.jsx(mn,{className:m("h-4 w-4")})}));wh.displayName=ih.displayName;const jn=S.forwardRef(({className:e,children:t,position:r="popper",...o},n)=>l.jsx(jC,{children:l.jsxs(Jp,{ref:n,className:m("relative z-50 max-h-[--radix-select-content-available-height] min-w-[8rem] overflow-y-auto overflow-x-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-select-content-transform-origin]",r==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:r,...o,children:[l.jsx(xh,{}),l.jsx(XC,{className:m("p-1",r==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:t}),l.jsx(wh,{})]})}));jn.displayName=Jp.displayName;const wE=S.forwardRef(({className:e,...t},r)=>l.jsx(rh,{ref:r,className:m("px-2 py-1.5 text-sm font-semibold",e),...t}));wE.displayName=rh.displayName;const Vo=S.forwardRef(({className:e,children:t,...r},o)=>l.jsxs(nh,{ref:o,className:m("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...r,children:[l.jsx("span",{className:m("absolute right-2 flex h-3.5 w-3.5 items-center justify-center"),children:l.jsx(nE,{children:l.jsx(mh,{className:m("h-4 w-4")})})}),l.jsx(rE,{children:t})]}));Vo.displayName=nh.displayName;const SE=S.forwardRef(({className:e,...t},r)=>l.jsx(dh,{ref:r,className:m("-mx-1 my-1 h-px bg-muted",e),...t}));SE.displayName=dh.displayName;const Go=[{code:"US",name:"United States",dialCode:"+1",flag:"🇺🇸"},{code:"GB",name:"United Kingdom",dialCode:"+44",flag:"🇬🇧"},{code:"CA",name:"Canada",dialCode:"+1",flag:"🇨🇦"},{code:"AU",name:"Australia",dialCode:"+61",flag:"🇦🇺"},{code:"DE",name:"Germany",dialCode:"+49",flag:"🇩🇪"},{code:"FR",name:"France",dialCode:"+33",flag:"🇫🇷"},{code:"IT",name:"Italy",dialCode:"+39",flag:"🇮🇹"},{code:"ES",name:"Spain",dialCode:"+34",flag:"🇪🇸"},{code:"NL",name:"Netherlands",dialCode:"+31",flag:"🇳🇱"},{code:"BE",name:"Belgium",dialCode:"+32",flag:"🇧🇪"},{code:"CH",name:"Switzerland",dialCode:"+41",flag:"🇨🇭"},{code:"AT",name:"Austria",dialCode:"+43",flag:"🇦🇹"},{code:"SE",name:"Sweden",dialCode:"+46",flag:"🇸🇪"},{code:"NO",name:"Norway",dialCode:"+47",flag:"🇳🇴"},{code:"DK",name:"Denmark",dialCode:"+45",flag:"🇩🇰"},{code:"FI",name:"Finland",dialCode:"+358",flag:"🇫🇮"},{code:"IE",name:"Ireland",dialCode:"+353",flag:"🇮🇪"},{code:"PT",name:"Portugal",dialCode:"+351",flag:"🇵🇹"},{code:"GR",name:"Greece",dialCode:"+30",flag:"🇬🇷"},{code:"PL",name:"Poland",dialCode:"+48",flag:"🇵🇱"},{code:"CZ",name:"Czech Republic",dialCode:"+420",flag:"🇨🇿"},{code:"HU",name:"Hungary",dialCode:"+36",flag:"🇭🇺"},{code:"RO",name:"Romania",dialCode:"+40",flag:"🇷🇴"},{code:"BG",name:"Bulgaria",dialCode:"+359",flag:"🇧🇬"},{code:"HR",name:"Croatia",dialCode:"+385",flag:"🇭🇷"},{code:"SK",name:"Slovakia",dialCode:"+421",flag:"🇸🇰"},{code:"SI",name:"Slovenia",dialCode:"+386",flag:"🇸🇮"},{code:"RS",name:"Serbia",dialCode:"+381",flag:"🇷🇸"},{code:"UA",name:"Ukraine",dialCode:"+380",flag:"🇺🇦"},{code:"RU",name:"Russia",dialCode:"+7",flag:"🇷🇺"},{code:"TR",name:"Turkey",dialCode:"+90",flag:"🇹🇷"},{code:"IL",name:"Israel",dialCode:"+972",flag:"🇮🇱"},{code:"SA",name:"Saudi Arabia",dialCode:"+966",flag:"🇸🇦"},{code:"AE",name:"United Arab Emirates",dialCode:"+971",flag:"🇦🇪"},{code:"QA",name:"Qatar",dialCode:"+974",flag:"🇶🇦"},{code:"KW",name:"Kuwait",dialCode:"+965",flag:"🇰🇼"},{code:"BH",name:"Bahrain",dialCode:"+973",flag:"🇧🇭"},{code:"OM",name:"Oman",dialCode:"+968",flag:"🇴🇲"},{code:"EG",name:"Egypt",dialCode:"+20",flag:"🇪🇬"},{code:"MA",name:"Morocco",dialCode:"+212",flag:"🇲🇦"},{code:"ZA",name:"South Africa",dialCode:"+27",flag:"🇿🇦"},{code:"NG",name:"Nigeria",dialCode:"+234",flag:"🇳🇬"},{code:"KE",name:"Kenya",dialCode:"+254",flag:"🇰🇪"},{code:"GH",name:"Ghana",dialCode:"+233",flag:"🇬🇭"},{code:"IN",name:"India",dialCode:"+91",flag:"🇮🇳"},{code:"PK",name:"Pakistan",dialCode:"+92",flag:"🇵🇰"},{code:"BD",name:"Bangladesh",dialCode:"+880",flag:"🇧🇩"},{code:"CN",name:"China",dialCode:"+86",flag:"🇨🇳"},{code:"JP",name:"Japan",dialCode:"+81",flag:"🇯🇵"},{code:"KR",name:"South Korea",dialCode:"+82",flag:"🇰🇷"},{code:"TW",name:"Taiwan",dialCode:"+886",flag:"🇹🇼"},{code:"HK",name:"Hong Kong",dialCode:"+852",flag:"🇭🇰"},{code:"SG",name:"Singapore",dialCode:"+65",flag:"🇸🇬"},{code:"MY",name:"Malaysia",dialCode:"+60",flag:"🇲🇾"},{code:"TH",name:"Thailand",dialCode:"+66",flag:"🇹🇭"},{code:"VN",name:"Vietnam",dialCode:"+84",flag:"🇻🇳"},{code:"ID",name:"Indonesia",dialCode:"+62",flag:"🇮🇩"},{code:"PH",name:"Philippines",dialCode:"+63",flag:"🇵🇭"},{code:"NZ",name:"New Zealand",dialCode:"+64",flag:"🇳🇿"},{code:"MX",name:"Mexico",dialCode:"+52",flag:"🇲🇽"},{code:"BR",name:"Brazil",dialCode:"+55",flag:"🇧🇷"},{code:"AR",name:"Argentina",dialCode:"+54",flag:"🇦🇷"},{code:"CL",name:"Chile",dialCode:"+56",flag:"🇨🇱"},{code:"CO",name:"Colombia",dialCode:"+57",flag:"🇨🇴"},{code:"PE",name:"Peru",dialCode:"+51",flag:"🇵🇪"},{code:"VE",name:"Venezuela",dialCode:"+58",flag:"🇻🇪"},{code:"EC",name:"Ecuador",dialCode:"+593",flag:"🇪🇨"},{code:"UY",name:"Uruguay",dialCode:"+598",flag:"🇺🇾"},{code:"PY",name:"Paraguay",dialCode:"+595",flag:"🇵🇾"},{code:"BO",name:"Bolivia",dialCode:"+591",flag:"🇧🇴"},{code:"CR",name:"Costa Rica",dialCode:"+506",flag:"🇨🇷"},{code:"PA",name:"Panama",dialCode:"+507",flag:"🇵🇦"},{code:"DO",name:"Dominican Republic",dialCode:"+1",flag:"🇩🇴"},{code:"PR",name:"Puerto Rico",dialCode:"+1",flag:"🇵🇷"},{code:"JM",name:"Jamaica",dialCode:"+1",flag:"🇯🇲"},{code:"TT",name:"Trinidad and Tobago",dialCode:"+1",flag:"🇹🇹"},{code:"IS",name:"Iceland",dialCode:"+354",flag:"🇮🇸"},{code:"LU",name:"Luxembourg",dialCode:"+352",flag:"🇱🇺"},{code:"MT",name:"Malta",dialCode:"+356",flag:"🇲🇹"},{code:"CY",name:"Cyprus",dialCode:"+357",flag:"🇨🇾"},{code:"EE",name:"Estonia",dialCode:"+372",flag:"🇪🇪"},{code:"LV",name:"Latvia",dialCode:"+371",flag:"🇱🇻"},{code:"LT",name:"Lithuania",dialCode:"+370",flag:"🇱🇹"}],NE=[...Go].sort((e,t)=>e.name.localeCompare(t.name)),qn=e=>Go.find(t=>t.code===e),CE=(e,t="US")=>{const r=qn(t)||Go[0];if(!e)return{countryCode:r.code,dialCode:r.dialCode,number:""};if(e.startsWith("+")){for(const o of Go)if(e.startsWith(o.dialCode))return{countryCode:o.code,dialCode:o.dialCode,number:e.slice(o.dialCode.length).trim()}}return{countryCode:r.code,dialCode:r.dialCode,number:e.replace(/^\+/,"")}},EE=({value:e,onChange:t,onBlur:r,defaultCountry:o="US",disabled:n=!1,placeholder:s="Phone number",hasError:a=!1,className:i,inputClassName:c})=>{const d=P.useMemo(()=>{if(!e){const N=qn(o)||Go[0];return{countryCode:N.code,dialCode:N.dialCode,number:""}}return typeof e=="string"?CE(e,o):e},[e,o]),[p,u]=P.useState(d.countryCode),[f,h]=P.useState(d.number),g=P.useRef(null);P.useEffect(()=>{u(d.countryCode),h(d.number)},[d.countryCode,d.number]);const y=P.useMemo(()=>qn(p)||Go[0],[p]),b=N=>{const x=qn(N);if(x){u(N);const w={countryCode:x.code,dialCode:x.dialCode,number:f};t==null||t(w)}},v=N=>{const x=N.target.value.replace(/[^\d\s\-()]/g,"");h(x),t==null||t({countryCode:y.code,dialCode:y.dialCode,number:x})};return l.jsxs("div",{className:m("flex",i),children:[l.jsxs(Ta,{value:p,onValueChange:b,disabled:n,children:[l.jsx(Hn,{className:m("w-[110px] rounded-r-none border-r-0 focus:z-10",a&&"border-red-500",n&&"opacity-50 cursor-not-allowed"),children:l.jsx(Pa,{children:l.jsxs("span",{className:m("flex items-center gap-1.5"),children:[l.jsx("span",{className:m("text-base"),children:y.flag}),l.jsx("span",{className:m("text-sm text-muted-foreground"),children:y.dialCode})]})})}),l.jsx(jn,{className:m("max-h-[300px]"),children:NE.map(N=>l.jsx(Vo,{value:N.code,className:m("cursor-pointer"),children:l.jsxs("span",{className:m("flex items-center gap-2"),children:[l.jsx("span",{className:m("text-base"),children:N.flag}),l.jsx("span",{className:m("flex-1"),children:N.name}),l.jsx("span",{className:m("text-muted-foreground text-sm"),children:N.dialCode})]})},N.code))})]}),l.jsx("input",{ref:g,type:"tel",value:f,onChange:v,onBlur:r,disabled:n,placeholder:s,className:m("flex-1 h-9 rounded-l-none rounded-r-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm transition-colors","placeholder:text-muted-foreground","focus:outline-none focus:ring-1 focus:ring-ring","disabled:cursor-not-allowed disabled:opacity-50",a&&"border-red-500 focus:ring-red-500",c)})]})},_E=({defaultCountry:e="US",placeholder:t="Phone number",className:r})=>{const o=qn(e)||Go[0];return l.jsxs("div",{className:m("flex",r),children:[l.jsxs("div",{className:m("flex items-center gap-1.5 h-9 px-3 rounded-l-md border border-r-0 border-input bg-muted/50 text-sm"),children:[l.jsx("span",{className:m("text-base"),children:o.flag}),l.jsx("span",{className:m("text-muted-foreground"),children:o.dialCode}),l.jsx("svg",{className:m("h-4 w-4 opacity-50"),xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:l.jsx("path",{d:"m6 9 6 6 6-6"})})]}),l.jsx("input",{type:"tel",placeholder:t,disabled:!0,className:m("flex-1 h-9 rounded-l-none rounded-r-md border border-input bg-muted/50 px-3 py-2 text-sm","placeholder:text-muted-foreground","disabled:cursor-not-allowed disabled:opacity-50")})]})},kE=[{type:"email",structure:"field",typeCategory:"Contact",label:"Email",description:"Email address input",icon:"✉️",category:"field",subCategory:"contact",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0,showPrefix:!1,showSuffix:!1},fields:[]},getDefaultValues:()=>({properties:{label:"Email",placeholder:"email@example.com"},layout:{labelPosition:"top",size:"full"},validation:{}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s}=K(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,children:l.jsx(To,{icon:"✉️",children:l.jsx("input",{type:"email",placeholder:o||"email@example.com",disabled:!0,className:m(`${kt()} pl-10`)})})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,value:a,onChange:i,errors:c,isDisabled:d}=K(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,errors:c,children:l.jsx(To,{icon:"✉️",children:l.jsx("input",{type:"email",placeholder:o||"email@example.com",value:a??"",onChange:p=>i==null?void 0:i(p.target.value),disabled:d,className:m(`${Ut({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})} pl-10`)})})})}},{type:"phone",structure:"field",typeCategory:"Contact",label:"Phone",description:"Phone number input with country code",icon:"📱",category:"field",subCategory:"contact",dataType:"object",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0,showPrefix:!1,showSuffix:!1},configSection:{title:"Phone Settings",icon:"📱"},fields:[{key:"defaultCountry",label:"Default Country",type:"select",section:"config",options:[{value:"US",label:"🇺🇸 United States (+1)"},{value:"GB",label:"🇬🇧 United Kingdom (+44)"},{value:"CA",label:"🇨🇦 Canada (+1)"},{value:"AU",label:"🇦🇺 Australia (+61)"},{value:"DE",label:"🇩🇪 Germany (+49)"},{value:"FR",label:"🇫🇷 France (+33)"},{value:"IT",label:"🇮🇹 Italy (+39)"},{value:"ES",label:"🇪🇸 Spain (+34)"},{value:"NL",label:"🇳🇱 Netherlands (+31)"},{value:"BE",label:"🇧🇪 Belgium (+32)"},{value:"CH",label:"🇨🇭 Switzerland (+41)"},{value:"AT",label:"🇦🇹 Austria (+43)"},{value:"SE",label:"🇸🇪 Sweden (+46)"},{value:"NO",label:"🇳🇴 Norway (+47)"},{value:"DK",label:"🇩🇰 Denmark (+45)"},{value:"FI",label:"🇫🇮 Finland (+358)"},{value:"IE",label:"🇮🇪 Ireland (+353)"},{value:"PT",label:"🇵🇹 Portugal (+351)"},{value:"PL",label:"🇵🇱 Poland (+48)"},{value:"TR",label:"🇹🇷 Turkey (+90)"},{value:"IN",label:"🇮🇳 India (+91)"},{value:"JP",label:"🇯🇵 Japan (+81)"},{value:"KR",label:"🇰🇷 South Korea (+82)"},{value:"BR",label:"🇧🇷 Brazil (+55)"},{value:"MX",label:"🇲🇽 Mexico (+52)"}]},{key:"format",label:"Number Format",type:"select",section:"config",options:[{value:"international",label:"International (+1 555 123 4567)"},{value:"national",label:"National ((555) 123-4567)"}]}]},getDefaultValues:()=>({properties:{label:"Phone",placeholder:"Phone number"},layout:{labelPosition:"top",size:"full"},config:{defaultCountry:"US",format:"international"}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,config:a}=K(e),i=(a==null?void 0:a.defaultCountry)||"US";return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,children:l.jsx(_E,{defaultCountry:i,placeholder:o||"Phone number"})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,value:a,onChange:i,errors:c,isDisabled:d,config:p}=K(e),u=(p==null?void 0:p.defaultCountry)||"US",f=h=>{i==null||i(h)};return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,errors:c,children:l.jsx(EE,{value:a,onChange:f,defaultCountry:u,disabled:d,placeholder:o||"Phone number",hasError:((c==null?void 0:c.length)??0)>0})})}},{type:"url",structure:"field",typeCategory:"Contact",label:"URL",description:"Website URL input",icon:"🔗",category:"field",subCategory:"contact",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0,showPrefix:!1,showSuffix:!1},fields:[]},getDefaultValues:()=>({properties:{label:"Website",placeholder:"https://example.com"},layout:{labelPosition:"top",size:"full"}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s}=K(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,children:l.jsx(To,{icon:"🔗",children:l.jsx("input",{type:"url",placeholder:o||"https://example.com",disabled:!0,className:m(`${kt()} pl-10`)})})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,value:a,onChange:i,errors:c,isDisabled:d}=K(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,errors:c,children:l.jsx(To,{icon:"🔗",children:l.jsx("input",{type:"url",placeholder:o||"https://example.com",value:a??"",onChange:p=>i==null?void 0:i(p.target.value),disabled:d,className:m(`${Ut({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})} pl-10`)})})})}},{type:"location",structure:"field",typeCategory:"Contact",label:"Location",description:"Address/location input",icon:"📍",category:"field",subCategory:"contact",dataType:"object",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0,showPrefix:!1,showSuffix:!1},configSection:{title:"Location Settings",icon:"📍"},fields:[{key:"enableGeolocation",label:"Enable Geolocation",type:"checkbox",section:"config",description:"Allow auto-detect location"},{key:"showMap",label:"Show Map",type:"checkbox",section:"config",description:"Display map preview"},{key:"mapProvider",label:"Map Provider",type:"select",section:"config",showWhen:{field:"showMap",value:!0},options:[{value:"google",label:"Google Maps"},{value:"openstreetmap",label:"OpenStreetMap"}]}]},getDefaultValues:()=>({properties:{label:"Location",placeholder:"Enter address...",description:"Enter your address"},layout:{labelPosition:"top",size:"full"},config:{enableGeolocation:!1,showMap:!1,mapProvider:"openstreetmap"}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,config:a}=K(e);return l.jsxs(de,{label:t,description:r,required:n,labelPosition:s,children:[l.jsx(To,{icon:"📍",children:l.jsx("input",{type:"text",placeholder:o||"Enter address...",disabled:!0,className:m(`${kt()} pl-10`)})}),(a==null?void 0:a.showMap)&&l.jsx("div",{className:m("h-32 bg-gray-200 rounded-md flex items-center justify-center text-gray-400 text-sm mt-2"),children:"🗺️ Map Preview"})]})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,value:a,onChange:i,errors:c,isDisabled:d,config:p}=K(e);return l.jsx(de,{label:t,description:r,required:n,labelPosition:s,errors:c,children:l.jsxs("div",{className:m("space-y-2"),children:[l.jsx(To,{icon:"📍",children:l.jsx("input",{type:"text",placeholder:o||"Enter address...",value:typeof a=="string"?a:(a==null?void 0:a.address)??"",onChange:u=>i==null?void 0:i(u.target.value),disabled:d,className:m(`${Ut({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})} pl-10`)})}),(p==null?void 0:p.enableGeolocation)&&!d&&l.jsx("button",{type:"button",className:m("text-sm text-blue-600 hover:text-blue-700 flex items-center gap-1"),children:"📍 Use current location"}),(p==null?void 0:p.showMap)&&l.jsx("div",{className:m("h-32 bg-gray-200 rounded-md flex items-center justify-center text-gray-400 text-sm"),children:"🗺️ Map Preview"})]})})}}],AE=[{type:"date",structure:"field",typeCategory:"DateTime",label:"Date",description:"Date picker input",icon:"📅",category:"field",subCategory:"dateTime",dataType:"date",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Date Settings",icon:"📅"},fields:[{key:"format",label:"Display Format",type:"select",section:"config",options:[{value:"YYYY-MM-DD",label:"YYYY-MM-DD (2025-01-15)"},{value:"DD/MM/YYYY",label:"DD/MM/YYYY (15/01/2025)"},{value:"MM/DD/YYYY",label:"MM/DD/YYYY (01/15/2025)"},{value:"MMMM D, YYYY",label:"MMMM D, YYYY (January 15, 2025)"}]},{key:"showCalendar",label:"Show Calendar Picker",type:"checkbox",section:"config",description:"Display a calendar dropdown for date selection"},{key:"minDate",label:"Min Date",type:"text",section:"config",placeholder:"YYYY-MM-DD",description:"Earliest selectable date"},{key:"maxDate",label:"Max Date",type:"text",section:"config",placeholder:"YYYY-MM-DD",description:"Latest selectable date"},{key:"disableWeekends",label:"Disable Weekends",type:"checkbox",section:"config",description:"Prevent selecting Saturday and Sunday"}]},getDefaultValues:()=>({properties:{label:"Date",placeholder:"Select a date"},layout:{labelPosition:"top",size:"full"},config:{format:"YYYY-MM-DD",showCalendar:!0}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n}=K(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsx("input",{type:"date",disabled:!0,className:kt()})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c}=K(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsx("input",{type:"date",value:s??"",onChange:d=>a==null?void 0:a(d.target.value),disabled:c,className:Ut({hasError:((i==null?void 0:i.length)??0)>0,disabled:c})})})}},{type:"time",structure:"field",typeCategory:"DateTime",label:"Time",description:"Time picker input",icon:"🕐",category:"field",subCategory:"dateTime",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Time Settings",icon:"⏰"},fields:[{key:"timeFormat",label:"Time Format",type:"select",section:"config",options:[{value:"12h",label:"12-hour (AM / PM)"},{value:"24h",label:"24-hour"}]},{key:"timeInterval",label:"Minute Interval",type:"select",section:"config",description:"Granularity for the time dropdown",options:[{value:5,label:"5 minutes"},{value:10,label:"10 minutes"},{value:15,label:"15 minutes"},{value:30,label:"30 minutes"},{value:60,label:"1 hour"}]},{key:"minTime",label:"Earliest Time",type:"text",section:"config",placeholder:"09:00",description:"Minimum selectable time",colSpan:1},{key:"maxTime",label:"Latest Time",type:"text",section:"config",placeholder:"17:00",description:"Maximum selectable time",colSpan:1},{key:"showNowButton",label:'Show "Now" Button',type:"checkbox",section:"config",description:"Quick-fill with the current time"}]},getDefaultValues:()=>({properties:{label:"Time",placeholder:"Select a time"},layout:{labelPosition:"top",size:"full"},config:{timeFormat:"24h",timeInterval:15}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n}=K(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsx("input",{type:"time",disabled:!0,className:kt()})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c}=K(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsx("input",{type:"time",value:s??"",onChange:d=>a==null?void 0:a(d.target.value),disabled:c,className:Ut({hasError:((i==null?void 0:i.length)??0)>0,disabled:c})})})}},{type:"dateTime",structure:"field",typeCategory:"DateTime",label:"Date & Time",description:"Combined date and time picker",icon:"📆",category:"field",subCategory:"dateTime",dataType:"date",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Date & Time Settings",icon:"📅"},fields:[{key:"format",label:"Date Format",type:"select",section:"config",options:[{value:"YYYY-MM-DD",label:"YYYY-MM-DD"},{value:"DD/MM/YYYY",label:"DD/MM/YYYY"},{value:"MM/DD/YYYY",label:"MM/DD/YYYY"},{value:"MMMM D, YYYY",label:"MMMM D, YYYY"}]},{key:"timeFormat",label:"Time Format",type:"select",section:"config",options:[{value:"12h",label:"12-hour (AM / PM)"},{value:"24h",label:"24-hour"}]},{key:"timeInterval",label:"Minute Interval",type:"select",section:"config",options:[{value:5,label:"5 minutes"},{value:10,label:"10 minutes"},{value:15,label:"15 minutes"},{value:30,label:"30 minutes"},{value:60,label:"1 hour"}]},{key:"minDate",label:"Min Date",type:"text",section:"config",placeholder:"YYYY-MM-DD",colSpan:1},{key:"maxDate",label:"Max Date",type:"text",section:"config",placeholder:"YYYY-MM-DD",colSpan:1},{key:"showSeconds",label:"Show Seconds",type:"checkbox",section:"config",description:"Include seconds in the time picker"}]},getDefaultValues:()=>({properties:{label:"Date & Time",placeholder:"Select date and time"},layout:{labelPosition:"top",size:"full"},config:{format:"YYYY-MM-DD",timeFormat:"24h",timeInterval:15}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n}=K(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:m("flex gap-2"),children:[l.jsx("input",{type:"date",disabled:!0,className:`flex-1 ${kt()}`}),l.jsx("input",{type:"time",disabled:!0,className:`w-32 ${kt()}`})]})})},render:e=>{var g;const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c}=K(e),d=typeof s=="object"?s==null?void 0:s.date:(s==null?void 0:s.split("T")[0])??"",p=typeof s=="object"?s==null?void 0:s.time:((g=s==null?void 0:s.split("T")[1])==null?void 0:g.substring(0,5))??"",u=y=>{typeof s=="object"?a==null||a({...s,date:y}):a==null||a(`${y}T${p||"00:00"}`)},f=y=>{typeof s=="object"?a==null||a({...s,time:y}):a==null||a(`${d||""}T${y}`)},h=Ut({hasError:((i==null?void 0:i.length)??0)>0,disabled:c});return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{className:m("flex gap-2"),children:[l.jsx("input",{type:"date",value:d,onChange:y=>u(y.target.value),disabled:c,className:`flex-1 ${h}`}),l.jsx("input",{type:"time",value:p,onChange:y=>f(y.target.value),disabled:c,className:`w-32 ${h}`})]})})}},{type:"multipleDates",structure:"field",typeCategory:"DateTime",label:"Multiple Dates",description:"Select multiple dates",icon:"📅",category:"field",subCategory:"dateTime",dataType:"array",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Multiple Dates Settings",icon:"📆"},fields:[{key:"format",label:"Display Format",type:"select",section:"config",options:[{value:"YYYY-MM-DD",label:"YYYY-MM-DD"},{value:"DD/MM/YYYY",label:"DD/MM/YYYY"},{value:"MM/DD/YYYY",label:"MM/DD/YYYY"},{value:"MMMM D, YYYY",label:"MMMM D, YYYY"}]},{key:"showCalendar",label:"Show Calendar Picker",type:"checkbox",section:"config",description:"Display a calendar for multi-date selection"},{key:"minDates",label:"Min Dates",type:"number",section:"validation",min:1,placeholder:"1",description:"Minimum number of dates to select",colSpan:1},{key:"maxDates",label:"Max Dates",type:"number",section:"validation",min:1,placeholder:"10",description:"Maximum number of dates allowed",colSpan:1},{key:"allowPastDates",label:"Allow Past Dates",type:"checkbox",section:"config",description:"Let users select dates in the past"},{key:"disableWeekends",label:"Disable Weekends",type:"checkbox",section:"config",description:"Prevent selecting Saturday and Sunday"}]},getDefaultValues:()=>({properties:{label:"Multiple Dates",placeholder:"Add dates",description:"Select one or more dates"},layout:{labelPosition:"top",size:"full"},config:{format:"YYYY-MM-DD",showCalendar:!0}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n}=K(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:m("space-y-2"),children:[l.jsxs("div",{className:m("flex flex-wrap gap-2"),children:[l.jsxs("span",{className:m("inline-flex items-center gap-1 px-2 py-1 bg-blue-100 text-blue-800 text-sm rounded"),children:["2024-01-15",l.jsx("button",{disabled:!0,className:m("text-blue-600"),children:"×"})]}),l.jsxs("span",{className:m("inline-flex items-center gap-1 px-2 py-1 bg-blue-100 text-blue-800 text-sm rounded"),children:["2024-01-20",l.jsx("button",{disabled:!0,className:m("text-blue-600"),children:"×"})]})]}),l.jsx("input",{type:"date",disabled:!0,className:kt()})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c}=K(e),d=Array.isArray(s)?s:[],p=f=>{f&&!d.includes(f)&&(a==null||a([...d,f]))},u=f=>{a==null||a(d.filter(h=>h!==f))};return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{className:m("space-y-2"),children:[d.length>0&&l.jsx("div",{className:m("flex flex-wrap gap-2"),children:d.map((f,h)=>l.jsxs("span",{className:m("inline-flex items-center gap-1 px-2 py-1 bg-blue-100 text-blue-800 text-sm rounded"),children:[f,!c&&l.jsx("button",{type:"button",onClick:()=>u(f),className:m("text-blue-600 hover:text-blue-800"),children:"×"})]},h))}),l.jsx("input",{type:"date",onChange:f=>{p(f.target.value),f.target.value=""},disabled:c,className:Ut({hasError:((i==null?void 0:i.length)??0)>0,disabled:c})})]})})}},{type:"dateRange",structure:"field",typeCategory:"DateTime",label:"Date Range",description:"Select a date range",icon:"📆",category:"field",subCategory:"dateTime",dataType:"object",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Date Range Settings",icon:"📊"},fields:[{key:"format",label:"Display Format",type:"select",section:"config",options:[{value:"YYYY-MM-DD",label:"YYYY-MM-DD"},{value:"DD/MM/YYYY",label:"DD/MM/YYYY"},{value:"MM/DD/YYYY",label:"MM/DD/YYYY"},{value:"MMMM D, YYYY",label:"MMMM D, YYYY"}]},{key:"showCalendar",label:"Show Calendar Picker",type:"checkbox",section:"config",description:"Display a calendar range selector"},{key:"minDays",label:"Min Days",type:"number",section:"config",min:1,placeholder:"1",description:"Minimum length of the selected range",colSpan:1},{key:"maxDays",label:"Max Days",type:"number",section:"config",min:1,placeholder:"30",description:"Maximum length of the selected range",colSpan:1},{key:"allowSameDayRange",label:"Allow Same-Day Range",type:"checkbox",section:"config",description:"Start and end date can be the same day"},{key:"disableWeekends",label:"Disable Weekends",type:"checkbox",section:"config",description:"Exclude Saturday and Sunday from selection"},{key:"minDate",label:"Earliest Start Date",type:"text",section:"config",placeholder:"YYYY-MM-DD",description:"First selectable date in the range"},{key:"maxDate",label:"Latest End Date",type:"text",section:"config",placeholder:"YYYY-MM-DD",description:"Last selectable date in the range"}]},getDefaultValues:()=>({properties:{label:"Date Range",placeholder:"Select date range",description:"Select start and end dates"},layout:{labelPosition:"top",size:"full"},config:{format:"YYYY-MM-DD",showCalendar:!0,minDays:1}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n}=K(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:m("flex items-center gap-2"),children:[l.jsx("input",{type:"date",disabled:!0,placeholder:"Start date",className:`flex-1 ${kt()}`}),l.jsx("span",{className:m("text-gray-400"),children:"→"}),l.jsx("input",{type:"date",disabled:!0,placeholder:"End date",className:`flex-1 ${kt()}`})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c}=K(e),d=(s==null?void 0:s.start)??"",p=(s==null?void 0:s.end)??"",u=g=>{a==null||a({start:g,end:p})},f=g=>{a==null||a({start:d,end:g})},h=Ut({hasError:((i==null?void 0:i.length)??0)>0,disabled:c});return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{className:m("flex items-center gap-2"),children:[l.jsx("input",{type:"date",value:d,onChange:g=>u(g.target.value),disabled:c,placeholder:"Start date",className:`flex-1 ${h}`}),l.jsx("span",{className:m("text-gray-400"),children:"→"}),l.jsx("input",{type:"date",value:p,onChange:g=>f(g.target.value),disabled:c,min:d,placeholder:"End date",className:`flex-1 ${h}`})]})})}}],DE=[{type:"paragraph",structure:"field",typeCategory:"Display",label:"Paragraph",description:"Static text content",icon:"📜",category:"field",subCategory:"display",dataType:"string",supportsValidation:!1,getDefaultValues:()=>({properties:{label:"Paragraph",content:"Enter your paragraph text here. This is a static text element that displays information to users."},layout:{labelPosition:"hidden",size:"full"},config:{textAlign:"left",fontSize:"medium",fontWeight:"normal"}}),renderOnCanvas:e=>{const{element:t,config:r}=K(e),o=t.properties.content||"Enter your paragraph text here.",n={small:"text-sm",medium:"text-base",large:"text-lg"}[(r==null?void 0:r.fontSize)||"medium"],s={normal:"font-normal",medium:"font-medium",bold:"font-bold"}[(r==null?void 0:r.fontWeight)||"normal"];return l.jsx("div",{className:m("prose prose-sm max-w-none"),style:{textAlign:(r==null?void 0:r.textAlign)||"left"},children:l.jsx("p",{className:m("text-gray-700",n,s),children:o})})},render:e=>{const{element:t,config:r}=K(e),o=t.properties.content||"",n={small:"text-sm",medium:"text-base",large:"text-lg"}[(r==null?void 0:r.fontSize)||"medium"],s={normal:"font-normal",medium:"font-medium",bold:"font-bold"}[(r==null?void 0:r.fontWeight)||"normal"];return l.jsx("div",{className:m("prose prose-sm max-w-none"),style:{textAlign:(r==null?void 0:r.textAlign)||"left"},children:l.jsx("p",{className:m("text-gray-700",n,s),children:o})})}},{type:"image",structure:"field",typeCategory:"Display",label:"Image",description:"Display an image",icon:"🖼️",category:"field",subCategory:"display",dataType:"string",supportsValidation:!1,getDefaultValues:()=>({properties:{label:"Image",alt:"Image description",src:""},layout:{labelPosition:"hidden",size:"full"},config:{imageWidth:"100%",objectFit:"contain",borderRadius:0}}),renderOnCanvas:e=>{const{element:t,config:r}=K(e),o=t.properties.src,n=t.properties.alt||"Image";return o?l.jsx("div",{className:m("space-y-1.5"),children:l.jsx("img",{src:o,alt:n,className:m("max-w-full rounded"),style:{width:(r==null?void 0:r.imageWidth)||"100%",objectFit:(r==null?void 0:r.objectFit)||"contain",borderRadius:(r==null?void 0:r.borderRadius)||0}})}):l.jsxs("div",{className:m("border-2 border-dashed border-gray-300 rounded-lg p-8 text-center bg-gray-50"),children:[l.jsx("span",{className:m("text-4xl"),children:"🏞️"}),l.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"No image selected"}),l.jsx("p",{className:m("text-xs text-gray-400"),children:"Set image URL in properties"})]})},render:e=>{const{element:t,config:r}=K(e),o=t.properties.src,n=t.properties.alt||"Image";return o?l.jsx("div",{className:m("space-y-1.5"),children:l.jsx("img",{src:o,alt:n,className:m("max-w-full"),style:{width:(r==null?void 0:r.imageWidth)||"100%",objectFit:(r==null?void 0:r.objectFit)||"contain",borderRadius:(r==null?void 0:r.borderRadius)||0}})}):null}},{type:"link",structure:"field",typeCategory:"Display",label:"Link",description:"Clickable link or button",icon:"🔗",category:"field",subCategory:"display",dataType:"string",supportsValidation:!1,getDefaultValues:()=>({properties:{label:"Link",href:"https://example.com",content:"Click here",target:"_blank"},layout:{labelPosition:"hidden",size:"default"},config:{linkStyle:"text"}}),renderOnCanvas:e=>{const{element:t,config:r}=K(e),o=t.properties.content||(r==null?void 0:r.linkText)||"Click here",n=t.properties.href||"https://example.com";return(r==null?void 0:r.linkStyle)==="button"?l.jsxs("div",{className:m("space-y-1"),children:[l.jsx("a",{href:"#",onClick:s=>s.preventDefault(),className:m("inline-block px-4 py-2 bg-blue-600 text-white rounded-md text-sm hover:bg-blue-700"),children:o}),l.jsx("p",{className:m("text-xs text-gray-400"),children:n})]}):l.jsxs("div",{className:m("space-y-1"),children:[l.jsx("a",{href:"#",onClick:s=>s.preventDefault(),className:m("text-blue-600 hover:text-blue-800 underline text-sm"),children:o}),l.jsx("p",{className:m("text-xs text-gray-400"),children:n})]})},render:e=>{const{element:t,config:r}=K(e),o=t.properties.content||(r==null?void 0:r.linkText)||"Click here",n=t.properties.href||"#",s=t.properties.target||"_blank";return(r==null?void 0:r.linkStyle)==="button"?l.jsx("a",{href:n,target:s,rel:s==="_blank"?"noopener noreferrer":void 0,className:m("inline-block px-4 py-2 bg-blue-600 text-white rounded-md text-sm hover:bg-blue-700 transition-colors"),children:o}):l.jsx("a",{href:n,target:s,rel:s==="_blank"?"noopener noreferrer":void 0,className:m("text-blue-600 hover:text-blue-800 underline text-sm transition-colors"),children:o})}}],$E=[{type:"divider",structure:"page",typeCategory:"Layout",label:"Divider",description:"Horizontal line separator",icon:"➖",category:"page",subCategory:"layout",supportsValidation:!1,getDefaultValues:()=>({properties:{},layout:{size:"full"},config:{style:"solid",thickness:1,color:"rgb(209, 213, 219)"}}),renderOnCanvas:e=>{const{config:t}=K(e);return l.jsx("hr",{style:{borderStyle:(t==null?void 0:t.style)||"solid",borderWidth:`${(t==null?void 0:t.thickness)||1}px 0 0 0`,borderColor:(t==null?void 0:t.color)||"rgb(209, 213, 219)"}})},render:e=>{const{config:t}=K(e);return l.jsx("hr",{style:{borderStyle:(t==null?void 0:t.style)||"solid",borderWidth:`${(t==null?void 0:t.thickness)||1}px 0 0 0`,borderColor:(t==null?void 0:t.color)||"rgb(209, 213, 219)"}})}},{type:"spacer",structure:"page",typeCategory:"Layout",label:"Spacer",description:"Vertical spacing element",icon:"↕️",category:"page",subCategory:"layout",supportsValidation:!1,getDefaultValues:()=>({properties:{},layout:{size:"full",height:24},config:{spacerHeight:24}}),renderOnCanvas:e=>{const{config:t}=K(e),r=(t==null?void 0:t.spacerHeight)||24;return l.jsx("div",{className:m("bg-gray-100/50 border border-dashed border-gray-300 rounded flex items-center justify-center"),style:{height:r},children:l.jsxs("span",{className:m("text-xs text-gray-400"),children:["↕️ Spacer (",r,"px)"]})})},render:e=>{const{config:t}=K(e),r=(t==null?void 0:t.spacerHeight)||24;return l.jsx("div",{style:{height:r}})}},{type:"formHeading",structure:"page",typeCategory:"Heading",label:"Form Heading",description:"Main form title",icon:"📋",category:"page",subCategory:"heading",supportsValidation:!1,getDefaultValues:()=>({properties:{label:"Form Title",description:"Form description goes here"},layout:{size:"full"},config:{level:1,alignment:"left"}}),renderOnCanvas:e=>{const{label:t,description:r,config:o}=K(e);return l.jsxs("div",{className:m(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[l.jsx("h1",{className:m("text-2xl font-bold text-gray-900"),children:t}),r&&l.jsx("p",{className:m("text-gray-600 mt-1"),children:r})]})},render:e=>{const{label:t,description:r,config:o}=K(e);return l.jsxs("div",{className:m(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[l.jsx("h1",{className:m("text-2xl font-bold text-gray-900"),children:t}),r&&l.jsx("p",{className:m("text-gray-600 mt-1"),children:r})]})}},{type:"sectionHeading",structure:"page",typeCategory:"Heading",label:"Section Heading",description:"Section title",icon:"📑",category:"page",subCategory:"heading",supportsValidation:!1,getDefaultValues:()=>({properties:{label:"Section Title"},layout:{size:"full"},config:{level:2,alignment:"left"}}),renderOnCanvas:e=>{const{label:t,description:r,config:o}=K(e);return l.jsxs("div",{className:m(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[l.jsx("h2",{className:m("text-xl font-semibold text-gray-800"),children:t}),r&&l.jsx("p",{className:m("text-gray-500 text-sm mt-1"),children:r})]})},render:e=>{const{label:t,description:r,config:o}=K(e);return l.jsxs("div",{className:m(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[l.jsx("h2",{className:m("text-xl font-semibold text-gray-800"),children:t}),r&&l.jsx("p",{className:m("text-gray-500 text-sm mt-1"),children:r})]})}},{type:"subheading",structure:"page",typeCategory:"Heading",label:"Subheading",description:"Smaller heading",icon:"📝",category:"page",subCategory:"heading",supportsValidation:!1,getDefaultValues:()=>({properties:{label:"Subheading"},layout:{size:"full"},config:{level:3,alignment:"left"}}),renderOnCanvas:e=>{const{label:t,description:r,config:o}=K(e);return l.jsxs("div",{className:m(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[l.jsx("h3",{className:m("text-lg font-medium text-gray-700"),children:t}),r&&l.jsx("p",{className:m("text-gray-500 text-sm mt-0.5"),children:r})]})},render:e=>{const{label:t,description:r,config:o}=K(e);return l.jsxs("div",{className:m(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[l.jsx("h3",{className:m("text-lg font-medium text-gray-700"),children:t}),r&&l.jsx("p",{className:m("text-gray-500 text-sm mt-0.5"),children:r})]})}},{type:"submit",structure:"page",typeCategory:"Special",label:"Submit Button",description:"Form submission button",icon:"🚀",category:"page",subCategory:"special",supportsValidation:!1,getDefaultValues:()=>({properties:{label:"Submit"},layout:{size:"default"},config:{buttonText:"Submit",buttonStyle:"primary",buttonSize:"medium",showIcon:!1,loadingText:"Submitting..."}}),renderOnCanvas:e=>{const{label:t,config:r}=K(e),o=(r==null?void 0:r.buttonText)||t||"Submit",n=(r==null?void 0:r.buttonStyle)||"primary",s=(r==null?void 0:r.buttonSize)||"medium",a={primary:"bg-blue-600 text-white hover:bg-blue-700",secondary:"bg-gray-600 text-white hover:bg-gray-700",outline:"border-2 border-blue-600 text-blue-600 bg-transparent hover:bg-blue-50",ghost:"text-blue-600 hover:bg-blue-50"},i={small:"px-4 py-1.5 text-sm",medium:"px-6 py-2.5 text-base",large:"px-8 py-3 text-lg"};return l.jsxs("button",{type:"button",disabled:!0,className:m("rounded-md font-medium transition-colors",a[n],i[s]),children:[(r==null?void 0:r.showIcon)&&(r==null?void 0:r.iconPosition)==="left"&&l.jsx("span",{className:m("mr-2"),children:"🚀"}),o,(r==null?void 0:r.showIcon)&&(r==null?void 0:r.iconPosition)==="right"&&l.jsx("span",{className:m("ml-2"),children:"🚀"})]})},render:e=>{const{label:t,config:r,isDisabled:o}=K(e),n=(r==null?void 0:r.buttonText)||t||"Submit",s=(r==null?void 0:r.buttonStyle)||"primary",a=(r==null?void 0:r.buttonSize)||"medium",i={primary:"bg-blue-600 text-white hover:bg-blue-700 focus:ring-blue-500",secondary:"bg-gray-600 text-white hover:bg-gray-700 focus:ring-gray-500",outline:"border-2 border-blue-600 text-blue-600 bg-transparent hover:bg-blue-50 focus:ring-blue-500",ghost:"text-blue-600 hover:bg-blue-50 focus:ring-blue-500"},c={small:"px-4 py-1.5 text-sm",medium:"px-6 py-2.5 text-base",large:"px-8 py-3 text-lg"};return l.jsxs("button",{type:"submit",disabled:o,className:m("rounded-md font-medium transition-colors focus:outline-none focus:ring-2 focus:ring-offset-2",i[s],c[a],o&&"opacity-50 cursor-not-allowed"),children:[(r==null?void 0:r.showIcon)&&(r==null?void 0:r.iconPosition)==="left"&&l.jsx("span",{className:m("mr-2"),children:"🚀"}),n,(r==null?void 0:r.showIcon)&&(r==null?void 0:r.iconPosition)==="right"&&l.jsx("span",{className:m("ml-2"),children:"🚀"})]})}}],TE=[{type:"singleChoiceMatrix",structure:"field",typeCategory:"Matrix",label:"Single Choice Matrix",description:"Matrix with radio button selections",icon:"📊",category:"field",subCategory:"matrix",dataType:"object",supportsValidation:!0,supportsMatrix:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Matrix Settings",icon:"📊"},fields:[{key:"randomizeRows",label:"Randomize Row Order",type:"checkbox",section:"config",description:"Shuffle rows for each respondent (surveys)"},{key:"randomizeColumns",label:"Randomize Column Order",type:"checkbox",section:"config",description:"Shuffle columns for each respondent"},{key:"showRowNumbers",label:"Show Row Numbers",type:"checkbox",section:"config",description:"Number each row for easy reference"},{key:"requiredPerRow",label:"Require Every Row",type:"checkbox",section:"config",description:"Each row must have a selection before submit"},{key:"layoutStyle",label:"Layout Style",type:"select",section:"config",description:"Visual presentation of the matrix",options:[{value:"table",label:"Table (grid)"},{value:"card",label:"Card per row"},{value:"inline",label:"Inline (compact)"}]}]},getDefaultValues:()=>({properties:{label:"Single Choice Matrix",description:"Select one option per row"},layout:{labelPosition:"top",size:"full"},config:{matrixRows:[{id:"row1",label:"Row 1"},{id:"row2",label:"Row 2"},{id:"row3",label:"Row 3"}],matrixColumns:[{id:"col1",label:"Option 1"},{id:"col2",label:"Option 2"},{id:"col3",label:"Option 3"}]}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:s}=K(e),a=(s==null?void 0:s.matrixRows)||[],i=(s==null?void 0:s.matrixColumns)||[];return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsx("div",{className:m("overflow-x-auto"),children:l.jsxs("table",{className:m("w-full border-collapse text-sm"),children:[l.jsx("thead",{children:l.jsxs("tr",{children:[l.jsx("th",{className:m("p-2 text-left")}),i.map(c=>l.jsx("th",{className:m("p-2 text-center font-medium text-gray-700"),children:c.label},c.id))]})}),l.jsx("tbody",{children:a.map(c=>l.jsxs("tr",{className:m("border-t border-gray-200"),children:[l.jsx("td",{className:m("p-2 text-gray-700"),children:c.label}),i.map(d=>l.jsx("td",{className:m("p-2 text-center"),children:l.jsx("input",{type:"radio",disabled:!0,name:c.id,className:m("text-blue-600")})},d.id))]},c.id))})]})})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c,config:d}=K(e),p=(d==null?void 0:d.matrixRows)||[],u=(d==null?void 0:d.matrixColumns)||[],f=s||{},h=(g,y)=>{c||a==null||a({...f,[g]:y})};return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsx("div",{className:m("overflow-x-auto"),children:l.jsxs("table",{className:m("w-full border-collapse text-sm"),children:[l.jsx("thead",{children:l.jsxs("tr",{children:[l.jsx("th",{className:m("p-2 text-left")}),u.map(g=>l.jsx("th",{className:m("p-2 text-center font-medium text-gray-700"),children:g.label},g.id))]})}),l.jsx("tbody",{children:p.map(g=>l.jsxs("tr",{className:m("border-t border-gray-200"),children:[l.jsx("td",{className:m("p-2 text-gray-700"),children:g.label}),u.map(y=>l.jsx("td",{className:m("p-2 text-center"),children:l.jsx("input",{type:"radio",name:`${e.element.id}-${g.id}`,checked:f[g.id]===y.id,onChange:()=>h(g.id,y.id),disabled:c,className:m("text-blue-600 cursor-pointer disabled:cursor-not-allowed")})},y.id))]},g.id))})]})})})}},{type:"multipleChoiceMatrix",structure:"field",typeCategory:"Matrix",label:"Multiple Choice Matrix",description:"Matrix with checkbox selections",icon:"📋",category:"field",subCategory:"matrix",dataType:"object",supportsValidation:!0,supportsMatrix:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Matrix Settings",icon:"📋"},fields:[{key:"allowMultiplePerRow",label:"Allow Multiple Per Row",type:"checkbox",section:"config",description:"Let users select more than one column per row"},{key:"maxSelectionsPerRow",label:"Max Selections Per Row",type:"number",section:"config",min:1,placeholder:"e.g. 3",description:"Limit how many columns can be checked per row",showWhen:{field:"allowMultiplePerRow",value:!0}},{key:"randomizeRows",label:"Randomize Row Order",type:"checkbox",section:"config",description:"Shuffle rows for each respondent (surveys)"},{key:"randomizeColumns",label:"Randomize Column Order",type:"checkbox",section:"config",description:"Shuffle columns for each respondent"},{key:"showRowNumbers",label:"Show Row Numbers",type:"checkbox",section:"config",description:"Number each row for easy reference"},{key:"showSelectAll",label:'Show "Select All" Column',type:"checkbox",section:"config",description:"Add a column header to check all rows at once"}]},getDefaultValues:()=>({properties:{label:"Multiple Choice Matrix",description:"Select multiple options per row"},layout:{labelPosition:"top",size:"full"},config:{matrixRows:[{id:"row1",label:"Row 1"},{id:"row2",label:"Row 2"},{id:"row3",label:"Row 3"}],matrixColumns:[{id:"col1",label:"Option 1"},{id:"col2",label:"Option 2"},{id:"col3",label:"Option 3"}],allowMultiplePerRow:!0}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:s}=K(e),a=(s==null?void 0:s.matrixRows)||[],i=(s==null?void 0:s.matrixColumns)||[];return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsx("div",{className:m("overflow-x-auto"),children:l.jsxs("table",{className:m("w-full border-collapse text-sm"),children:[l.jsx("thead",{children:l.jsxs("tr",{children:[l.jsx("th",{className:m("p-2 text-left")}),i.map(c=>l.jsx("th",{className:m("p-2 text-center font-medium text-gray-700"),children:c.label},c.id))]})}),l.jsx("tbody",{children:a.map(c=>l.jsxs("tr",{className:m("border-t border-gray-200"),children:[l.jsx("td",{className:m("p-2 text-gray-700"),children:c.label}),i.map(d=>l.jsx("td",{className:m("p-2 text-center"),children:l.jsx("input",{type:"checkbox",disabled:!0,className:m("text-blue-600 rounded")})},d.id))]},c.id))})]})})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c,config:d}=K(e),p=(d==null?void 0:d.matrixRows)||[],u=(d==null?void 0:d.matrixColumns)||[],f=s||{},h=(g,y)=>{if(c)return;const b=f[g]||[],v=b.includes(y)?b.filter(N=>N!==y):[...b,y];a==null||a({...f,[g]:v})};return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsx("div",{className:m("overflow-x-auto"),children:l.jsxs("table",{className:m("w-full border-collapse text-sm"),children:[l.jsx("thead",{children:l.jsxs("tr",{children:[l.jsx("th",{className:m("p-2 text-left")}),u.map(g=>l.jsx("th",{className:m("p-2 text-center font-medium text-gray-700"),children:g.label},g.id))]})}),l.jsx("tbody",{children:p.map(g=>l.jsxs("tr",{className:m("border-t border-gray-200"),children:[l.jsx("td",{className:m("p-2 text-gray-700"),children:g.label}),u.map(y=>l.jsx("td",{className:m("p-2 text-center"),children:l.jsx("input",{type:"checkbox",checked:(f[g.id]||[]).includes(y.id),onChange:()=>h(g.id,y.id),disabled:c,className:m("text-blue-600 rounded cursor-pointer disabled:cursor-not-allowed")})},y.id))]},g.id))})]})})})}},{type:"matrixTable",structure:"field",typeCategory:"Matrix",label:"Matrix Table",description:"Table with text/number inputs",icon:"📑",category:"field",subCategory:"matrix",dataType:"object",supportsValidation:!0,supportsMatrix:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Table Settings",icon:"📑"},fields:[{key:"showRowNumbers",label:"Show Row Numbers",type:"checkbox",section:"config",description:"Number each row for easy reference"},{key:"showColumnTotals",label:"Show Column Totals",type:"checkbox",section:"config",description:"Display sum at the bottom of numeric columns"},{key:"allowAddRows",label:"Allow Adding Rows",type:"checkbox",section:"config",description:"Let users add extra rows beyond the defaults"},{key:"allowDeleteRows",label:"Allow Deleting Rows",type:"checkbox",section:"config",description:"Let users remove rows they added",showWhen:{field:"allowAddRows",value:!0}},{key:"stickyHeader",label:"Sticky Header",type:"checkbox",section:"config",description:"Keep column headers visible while scrolling"},{key:"cellPlaceholder",label:"Cell Placeholder",type:"text",section:"config",placeholder:"Enter value...",description:"Placeholder text shown inside empty cells"}]},getDefaultValues:()=>({properties:{label:"Matrix Table",description:"Enter values in each cell"},layout:{labelPosition:"top",size:"full"},config:{matrixRows:[{id:"row1",label:"Row 1"},{id:"row2",label:"Row 2"}],matrixColumns:[{id:"col1",label:"Column 1",type:"text"},{id:"col2",label:"Column 2",type:"number"}]}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:s}=K(e),a=(s==null?void 0:s.matrixRows)||[],i=(s==null?void 0:s.matrixColumns)||[];return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsx("div",{className:m("overflow-x-auto"),children:l.jsxs("table",{className:m("w-full border-collapse text-sm border border-gray-200"),children:[l.jsx("thead",{children:l.jsxs("tr",{className:m("bg-gray-50"),children:[l.jsx("th",{className:m("p-2 text-left border border-gray-200")}),i.map(c=>l.jsx("th",{className:m("p-2 text-center font-medium text-gray-700 border border-gray-200"),children:c.label},c.id))]})}),l.jsx("tbody",{children:a.map(c=>l.jsxs("tr",{children:[l.jsx("td",{className:m("p-2 text-gray-700 border border-gray-200 bg-gray-50"),children:c.label}),i.map(d=>l.jsx("td",{className:m("p-2 border border-gray-200"),children:l.jsx("input",{type:d.type==="number"?"number":"text",disabled:!0,className:m("w-full px-2 py-1 border border-gray-300 rounded text-sm bg-gray-50")})},d.id))]},c.id))})]})})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c,config:d}=K(e),p=(d==null?void 0:d.matrixRows)||[],u=(d==null?void 0:d.matrixColumns)||[],f=s||{},h=(g,y,b)=>{const v={...f,[g]:{...f[g]||{},[y]:b}};a==null||a(v)};return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsx("div",{className:m("overflow-x-auto"),children:l.jsxs("table",{className:m("w-full border-collapse text-sm border border-gray-200"),children:[l.jsx("thead",{children:l.jsxs("tr",{className:m("bg-gray-50"),children:[l.jsx("th",{className:m("p-2 text-left border border-gray-200")}),u.map(g=>l.jsx("th",{className:m("p-2 text-center font-medium text-gray-700 border border-gray-200"),children:g.label},g.id))]})}),l.jsx("tbody",{children:p.map(g=>l.jsxs("tr",{children:[l.jsx("td",{className:m("p-2 text-gray-700 border border-gray-200 bg-gray-50"),children:g.label}),u.map(y=>{var b;return l.jsx("td",{className:m("p-2 border border-gray-200"),children:l.jsx("input",{type:y.type==="number"?"number":"text",value:((b=f[g.id])==null?void 0:b[y.id])??"",onChange:v=>h(g.id,y.id,y.type==="number"?Number(v.target.value):v.target.value),disabled:c,className:`w-full px-2 py-1 border rounded text-sm ${c?"bg-gray-50 border-gray-300":"bg-white border-gray-300 focus:border-blue-500 focus:ring-1 focus:ring-blue-500"}`})},y.id)})]},g.id))})]})})})}}],PE=[{type:"fileUpload",structure:"field",typeCategory:"FileUpload",label:"File Upload",description:"Single file upload",icon:"📎",category:"field",subCategory:"fileUpload",dataType:"file",supportsValidation:!0,getDefaultValues:()=>({properties:{label:"File Upload",description:"Upload a file"},layout:{labelPosition:"top",size:"full"},config:{accept:"*/*",maxSize:10485760,multiple:!1}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:s}=K(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:m("border-2 border-dashed border-gray-300 rounded-lg p-6 text-center bg-gray-50"),children:[l.jsx("svg",{className:m("mx-auto h-8 w-8 text-gray-400"),stroke:"currentColor",fill:"none",viewBox:"0 0 48 48",children:l.jsx("path",{d:"M28 8H12a4 4 0 00-4 4v20m32-12v8m0 0v8a4 4 0 01-4 4H12a4 4 0 01-4-4v-4m32-4l-3.172-3.172a4 4 0 00-5.656 0L28 28M8 32l9.172-9.172a4 4 0 015.656 0L28 28m0 0l4 4m4-24h8m-4-4v8m-12 4h.02",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"})}),l.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"Click or drag to upload"}),l.jsxs("p",{className:m("text-xs text-gray-400"),children:[(s==null?void 0:s.accept)||"All files"," (Max:"," ",Math.round(((s==null?void 0:s.maxSize)||10485760)/1024/1024),"MB)"]})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c,config:d}=K(e),p=g=>{var b;const y=(b=g.target.files)==null?void 0:b[0];y&&(a==null||a(y))},u=g=>{var b;g.preventDefault();const y=(b=g.dataTransfer.files)==null?void 0:b[0];y&&(a==null||a(y))},f=g=>{g.preventDefault()},h=s instanceof File?s.name:s==null?void 0:s.name;return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:l.jsxs("div",{onDrop:c?void 0:u,onDragOver:c?void 0:f,className:`border-2 border-dashed rounded-lg p-6 text-center transition-colors ${((i==null?void 0:i.length)??0)>0?"border-red-300 bg-red-50":"border-gray-300 bg-gray-50 hover:border-gray-400"} ${c?"opacity-50 cursor-not-allowed":"cursor-pointer"}`,children:[l.jsx("input",{type:"file",accept:d==null?void 0:d.accept,onChange:p,disabled:c,className:m("hidden"),id:`file-upload-${e.element.id}`}),l.jsx("label",{htmlFor:`file-upload-${e.element.id}`,className:c?"cursor-not-allowed":"cursor-pointer",children:h?l.jsxs("div",{className:m("flex items-center justify-center gap-2"),children:[l.jsx("span",{className:m("text-2xl"),children:"📄"}),l.jsx("span",{className:m("text-sm text-gray-700"),children:h}),!c&&l.jsx("button",{type:"button",onClick:g=>{g.preventDefault(),a==null||a(null)},className:m("text-red-500 hover:text-red-700"),children:"×"})]}):l.jsxs(l.Fragment,{children:[l.jsx("svg",{className:m("mx-auto h-8 w-8 text-gray-400"),stroke:"currentColor",fill:"none",viewBox:"0 0 48 48",children:l.jsx("path",{d:"M28 8H12a4 4 0 00-4 4v20m32-12v8m0 0v8a4 4 0 01-4 4H12a4 4 0 01-4-4v-4m32-4l-3.172-3.172a4 4 0 00-5.656 0L28 28M8 32l9.172-9.172a4 4 0 015.656 0L28 28m0 0l4 4m4-24h8m-4-4v8m-12 4h.02",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"})}),l.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"Click or drag to upload"}),l.jsxs("p",{className:m("text-xs text-gray-400"),children:[(d==null?void 0:d.accept)||"All files"," (Max:"," ",Math.round(((d==null?void 0:d.maxSize)||10485760)/1024/1024),"MB)"]})]})})]})})}},{type:"imageUpload",structure:"field",typeCategory:"FileUpload",label:"Image Upload",description:"Single image upload with preview",icon:"🖼️",category:"field",subCategory:"fileUpload",dataType:"file",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Image Upload Settings",icon:"🖼️"},fields:[{key:"maxSize",label:"Max Size (MB)",type:"number",section:"config",min:1,max:100,placeholder:"5",description:"Maximum image file size"},{key:"allowCrop",label:"Allow Cropping",type:"checkbox",section:"config",description:"Let users crop the image after upload"},{key:"aspectRatio",label:"Aspect Ratio",type:"select",section:"config",description:"Constrain crop to a specific ratio",showWhen:{field:"allowCrop",value:!0},options:[{value:"free",label:"Free (no constraint)"},{value:"1:1",label:"1:1 (Square)"},{value:"4:3",label:"4:3 (Standard)"},{value:"16:9",label:"16:9 (Widescreen)"},{value:"3:2",label:"3:2 (Portrait)"},{value:"2:3",label:"2:3 (Landscape)"}]},{key:"minWidth",label:"Min Width (px)",type:"number",section:"config",min:1,placeholder:"e.g. 200",description:"Minimum allowed image width",colSpan:1},{key:"minHeight",label:"Min Height (px)",type:"number",section:"config",min:1,placeholder:"e.g. 200",description:"Minimum allowed image height",colSpan:1},{key:"showPreview",label:"Show Preview",type:"checkbox",section:"config",description:"Display a thumbnail preview of the uploaded image"},{key:"compressOnUpload",label:"Auto-compress",type:"checkbox",section:"config",description:"Automatically compress large images on upload"}]},getDefaultValues:()=>({properties:{label:"Image Upload",description:"Upload an image"},layout:{labelPosition:"top",size:"full"},config:{accept:"image/*",maxSize:5242880,multiple:!1,allowCrop:!1}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:s}=K(e);return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,children:l.jsxs("div",{className:m("border-2 border-dashed border-gray-300 rounded-lg p-6 text-center bg-gray-50"),children:[l.jsx("span",{className:m("text-4xl"),children:"🖼️"}),l.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"Click or drag to upload image"}),l.jsxs("p",{className:m("text-xs text-gray-400"),children:["Images only (Max:"," ",Math.round(((s==null?void 0:s.maxSize)||5242880)/1024/1024),"MB)"]})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c,config:d}=K(e),[p,u]=P.useState(null);P.useEffect(()=>{if(s instanceof File){const g=new FileReader;g.onloadend=()=>{u(g.result)},g.readAsDataURL(s)}else u(typeof s=="string"?s:null)},[s]);const f=g=>{var b;const y=(b=g.target.files)==null?void 0:b[0];y&&(a==null||a(y))},h=()=>{a==null||a(null),u(null)};return l.jsx(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:p?l.jsxs("div",{className:m("relative inline-block"),children:[l.jsx("img",{src:p,alt:"Preview",className:m("max-w-full max-h-48 rounded-lg border border-gray-200")}),!c&&l.jsx("button",{type:"button",onClick:h,className:m("absolute -top-2 -right-2 w-6 h-6 bg-red-500 text-white rounded-full flex items-center justify-center text-sm hover:bg-red-600"),children:"×"})]}):l.jsxs("div",{className:`border-2 border-dashed rounded-lg p-6 text-center transition-colors ${((i==null?void 0:i.length)??0)>0?"border-red-300 bg-red-50":"border-gray-300 bg-gray-50 hover:border-gray-400"} ${c?"opacity-50 cursor-not-allowed":"cursor-pointer"}`,children:[l.jsx("input",{type:"file",accept:(d==null?void 0:d.accept)||"image/*",onChange:f,disabled:c,className:m("hidden"),id:`image-upload-${e.element.id}`}),l.jsxs("label",{htmlFor:`image-upload-${e.element.id}`,className:c?"cursor-not-allowed":"cursor-pointer",children:[l.jsx("span",{className:m("text-4xl"),children:"🖼️"}),l.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"Click or drag to upload image"}),l.jsxs("p",{className:m("text-xs text-gray-400"),children:["Images only (Max:"," ",Math.round(((d==null?void 0:d.maxSize)||5242880)/1024/1024),"MB)"]})]})]})})}},{type:"multiFileUpload",structure:"field",typeCategory:"FileUpload",label:"Multi File Upload",description:"Upload multiple files",icon:"📁",category:"field",subCategory:"fileUpload",dataType:"array",supportsValidation:!0,getDefaultValues:()=>({properties:{label:"Multi File Upload",description:"Upload multiple files"},layout:{labelPosition:"top",size:"full"},config:{accept:"*/*",maxSize:10485760,multiple:!0,maxFiles:10}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:s}=K(e);return l.jsxs(de,{label:t,description:r,required:o,labelPosition:n,children:[l.jsxs("div",{className:m("border-2 border-dashed border-gray-300 rounded-lg p-6 text-center bg-gray-50"),children:[l.jsx("span",{className:m("text-4xl"),children:"📁"}),l.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"Click or drag to upload files"}),l.jsxs("p",{className:m("text-xs text-gray-400"),children:["Up to ",(s==null?void 0:s.maxFiles)||10," files"]})]}),l.jsx("div",{className:m("space-y-2 mt-2"),children:l.jsxs("div",{className:m("flex items-center gap-2 p-2 bg-gray-100 rounded text-sm"),children:[l.jsx("span",{children:"📄"}),l.jsx("span",{className:m("flex-1 truncate"),children:"document.pdf"}),l.jsx("button",{disabled:!0,className:m("text-gray-400 hover:text-red-500"),children:"×"})]})})]})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c,config:d}=K(e),p=Array.isArray(s)?s:[],u=(d==null?void 0:d.maxFiles)||10,f=g=>{const y=Array.from(g.target.files||[]),b=[...p,...y].slice(0,u);a==null||a(b)},h=g=>{const y=p.filter((b,v)=>v!==g);a==null||a(y)};return l.jsxs(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:[l.jsxs("div",{className:`border-2 border-dashed rounded-lg p-6 text-center transition-colors ${((i==null?void 0:i.length)??0)>0?"border-red-300 bg-red-50":"border-gray-300 bg-gray-50 hover:border-gray-400"} ${c||p.length>=u?"opacity-50 cursor-not-allowed":"cursor-pointer"}`,children:[l.jsx("input",{type:"file",accept:d==null?void 0:d.accept,multiple:!0,onChange:f,disabled:c||p.length>=u,className:m("hidden"),id:`multi-file-upload-${e.element.id}`}),l.jsxs("label",{htmlFor:`multi-file-upload-${e.element.id}`,className:c||p.length>=u?"cursor-not-allowed":"cursor-pointer",children:[l.jsx("span",{className:m("text-4xl"),children:"📁"}),l.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"Click or drag to upload files"}),l.jsxs("p",{className:m("text-xs text-gray-400"),children:[p.length," / ",u," files"]})]})]}),p.length>0&&l.jsx("div",{className:m("space-y-2 mt-2"),children:p.map((g,y)=>l.jsxs("div",{className:m("flex items-center gap-2 p-2 bg-gray-100 rounded text-sm"),children:[l.jsx("span",{children:"📄"}),l.jsx("span",{className:m("flex-1 truncate"),children:g.name}),l.jsxs("span",{className:m("text-xs text-gray-500"),children:[(g.size/1024).toFixed(1)," KB"]}),!c&&l.jsx("button",{type:"button",onClick:()=>h(y),className:m("text-gray-400 hover:text-red-500"),children:"×"})]},y))})]})}},{type:"multiImageUpload",structure:"field",typeCategory:"FileUpload",label:"Multi Image Upload",description:"Upload multiple images with preview",icon:"🖼️",category:"field",subCategory:"fileUpload",dataType:"array",supportsValidation:!0,getDefaultValues:()=>({properties:{label:"Multi Image Upload",description:"Upload multiple images"},layout:{labelPosition:"top",size:"full"},config:{accept:"image/*",maxSize:5242880,multiple:!0,maxFiles:10,allowCrop:!1}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:s}=K(e);return l.jsxs(de,{label:t,description:r,required:o,labelPosition:n,children:[l.jsxs("div",{className:m("border-2 border-dashed border-gray-300 rounded-lg p-6 text-center bg-gray-50"),children:[l.jsx("span",{className:m("text-4xl"),children:"🖼️"}),l.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"Click or drag to upload images"}),l.jsxs("p",{className:m("text-xs text-gray-400"),children:["Up to ",(s==null?void 0:s.maxFiles)||10," images"]})]}),l.jsx("div",{className:m("flex gap-2 flex-wrap mt-2"),children:l.jsxs("div",{className:m("w-20 h-20 bg-gray-200 rounded-lg flex items-center justify-center relative"),children:[l.jsx("span",{className:m("text-2xl"),children:"🖼️"}),l.jsx("button",{disabled:!0,className:m("absolute -top-1 -right-1 w-5 h-5 bg-red-500 text-white rounded-full text-xs"),children:"×"})]})})]})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c,config:d}=K(e),[p,u]=P.useState([]),f=Array.isArray(s)?s:[],h=(d==null?void 0:d.maxFiles)||10;P.useEffect(()=>{(async()=>{const v=[];for(const N of f)if(N instanceof File){const x=new FileReader,w=await new Promise(C=>{x.onloadend=()=>C(x.result),x.readAsDataURL(N)});v.push(w)}u(v)})()},[f]);const g=b=>{const v=Array.from(b.target.files||[]),N=[...f,...v].slice(0,h);a==null||a(N)},y=b=>{const v=f.filter((N,x)=>x!==b);a==null||a(v)};return l.jsxs(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:[l.jsxs("div",{className:`border-2 border-dashed rounded-lg p-6 text-center transition-colors ${((i==null?void 0:i.length)??0)>0?"border-red-300 bg-red-50":"border-gray-300 bg-gray-50 hover:border-gray-400"} ${c||f.length>=h?"opacity-50 cursor-not-allowed":"cursor-pointer"}`,children:[l.jsx("input",{type:"file",accept:(d==null?void 0:d.accept)||"image/*",multiple:!0,onChange:g,disabled:c||f.length>=h,className:m("hidden"),id:`multi-image-upload-${e.element.id}`}),l.jsxs("label",{htmlFor:`multi-image-upload-${e.element.id}`,className:c||f.length>=h?"cursor-not-allowed":"cursor-pointer",children:[l.jsx("span",{className:m("text-4xl"),children:"🖼️"}),l.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"Click or drag to upload images"}),l.jsxs("p",{className:m("text-xs text-gray-400"),children:[f.length," / ",h," images"]})]})]}),p.length>0&&l.jsx("div",{className:m("flex gap-2 flex-wrap mt-2"),children:p.map((b,v)=>l.jsxs("div",{className:m("w-20 h-20 rounded-lg overflow-hidden relative border border-gray-200"),children:[l.jsx("img",{src:b,alt:`Preview ${v+1}`,className:m("w-full h-full object-cover")}),!c&&l.jsx("button",{type:"button",onClick:()=>y(v),className:m("absolute -top-1 -right-1 w-5 h-5 bg-red-500 text-white rounded-full text-xs hover:bg-red-600 flex items-center justify-center"),children:"×"})]},v))})]})}}],IE=[{type:"password",structure:"field",typeCategory:"Security",label:"Password",description:"Secure password input",icon:"🔒",category:"field",subCategory:"security",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!0,showDescription:!0},configSection:{title:"Password Settings",icon:"🔒"},fields:[{key:"showStrengthMeter",label:"Show Strength Meter",type:"checkbox",section:"config",description:"Visual indicator of password strength"},{key:"showToggle",label:"Show / Hide Toggle",type:"checkbox",section:"config",description:"Let users reveal their password"},{key:"minStrength",label:"Minimum Strength",type:"select",section:"config",description:"Lowest accepted password strength level",options:[{value:"weak",label:"Weak"},{value:"medium",label:"Medium"},{value:"strong",label:"Strong"}]},{key:"strengthLabels",label:"Show Requirements Hint",type:"checkbox",section:"config",description:"Display password rules (length, special chars, etc.)"}]},getDefaultValues:()=>({properties:{label:"Password",placeholder:"••••••••"},layout:{labelPosition:"top",size:"full"},config:{showStrengthMeter:!1,showToggle:!0,minStrength:"medium"},validation:{minLength:8}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,config:a}=K(e);return l.jsxs(de,{label:t,description:r,required:n,labelPosition:s,children:[l.jsxs("div",{className:m("relative"),children:[l.jsx("input",{type:"password",placeholder:o||"••••••••",disabled:!0,className:`${kt()} pr-10`}),(a==null?void 0:a.showToggle)&&l.jsx("button",{disabled:!0,className:m("absolute right-3 top-1/2 -translate-y-1/2 text-gray-400"),children:"👁️"})]}),(a==null?void 0:a.showStrengthMeter)&&l.jsxs("div",{className:m("flex gap-1 mt-2"),children:[l.jsx("div",{className:m("h-1 flex-1 bg-gray-300 rounded")}),l.jsx("div",{className:m("h-1 flex-1 bg-gray-300 rounded")}),l.jsx("div",{className:m("h-1 flex-1 bg-gray-300 rounded")}),l.jsx("div",{className:m("h-1 flex-1 bg-gray-300 rounded")})]})]})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:s,value:a,onChange:i,errors:c,isDisabled:d,config:p}=K(e),[u,f]=P.useState(!1),g=(b=>{if(!b)return 0;let v=0;return b.length>=8&&v++,/[a-z]/.test(b)&&/[A-Z]/.test(b)&&v++,/\d/.test(b)&&v++,/[^a-zA-Z0-9]/.test(b)&&v++,v})(a||""),y=["bg-red-500","bg-orange-500","bg-yellow-500","bg-green-500"];return l.jsxs(de,{label:t,description:r,required:n,labelPosition:s,errors:c,children:[l.jsxs("div",{className:m("relative"),children:[l.jsx("input",{type:u?"text":"password",placeholder:o||"••••••••",value:a??"",onChange:b=>i==null?void 0:i(b.target.value),disabled:d,className:`${Ut({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})} pr-10`}),(p==null?void 0:p.showToggle)&&!d&&l.jsx("button",{type:"button",onClick:()=>f(!u),className:m("absolute right-3 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600"),children:u?"🙈":"👁️"})]}),(p==null?void 0:p.showStrengthMeter)&&a&&l.jsx("div",{className:m("flex gap-1 mt-2"),children:[0,1,2,3].map(b=>l.jsx("div",{className:`h-1 flex-1 rounded ${b<g?y[g-1]:"bg-gray-300"}`},b))})]})}},{type:"signature",structure:"field",typeCategory:"Security",label:"Signature",description:"Handwritten signature pad",icon:"✍️",category:"field",subCategory:"security",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!0,showPlaceholder:!1,showDescription:!0},configSection:{title:"Signature Pad Settings",icon:"✍️"},fields:[{key:"canvasWidth",label:"Width (px)",type:"number",section:"config",min:100,max:1200,placeholder:"400",description:"Drawing area width",colSpan:1},{key:"canvasHeight",label:"Height (px)",type:"number",section:"config",min:50,max:600,placeholder:"200",description:"Drawing area height",colSpan:1},{key:"strokeWidth",label:"Stroke Width",type:"number",section:"config",min:1,max:10,placeholder:"2",description:"Pen thickness",colSpan:1},{key:"strokeColor",label:"Stroke Color",type:"color",section:"config",placeholder:"#000000",description:"Pen color",colSpan:1},{key:"backgroundColor",label:"Background Color",type:"color",section:"config",placeholder:"#ffffff",description:"Pad background color"},{key:"requireFullName",label:"Require Full Name",type:"checkbox",section:"config",description:"Ask for a printed name below the signature"},{key:"showTimestamp",label:"Show Timestamp",type:"checkbox",section:"config",description:"Auto-record date and time of signing"}]},getDefaultValues:()=>({properties:{label:"Signature",description:"Please sign below"},layout:{labelPosition:"top",size:"full"},config:{strokeWidth:2,strokeColor:"#000000",backgroundColor:"#ffffff",canvasWidth:400,canvasHeight:200}}),renderOnCanvas:e=>{const{label:t,description:r,required:o,labelPosition:n,config:s}=K(e);return l.jsxs(de,{label:t,description:r,required:o,labelPosition:n,children:[l.jsx("div",{className:m("border-2 border-dashed border-gray-300 rounded-lg bg-gray-50 flex items-center justify-center"),style:{height:(s==null?void 0:s.canvasHeight)||200,backgroundColor:(s==null?void 0:s.backgroundColor)||"#ffffff"},children:l.jsxs("div",{className:m("text-center text-gray-400"),children:[l.jsx("span",{className:m("text-3xl"),children:"✍️"}),l.jsx("p",{className:m("text-sm mt-2"),children:"Draw your signature here"})]})}),l.jsx("button",{disabled:!0,className:m("text-sm text-blue-600 hover:text-blue-700 mt-2"),children:"Clear signature"})]})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:s,onChange:a,errors:i,isDisabled:c,config:d}=K(e),p=P.useRef(null),[u,f]=P.useState(!1),h=v=>{if(c)return;f(!0);const N=p.current;if(!N)return;const x=N.getContext("2d");if(!x)return;const w=N.getBoundingClientRect();x.beginPath(),x.moveTo(v.clientX-w.left,v.clientY-w.top)},g=v=>{if(!u||c)return;const N=p.current;if(!N)return;const x=N.getContext("2d");if(!x)return;const w=N.getBoundingClientRect();x.lineWidth=(d==null?void 0:d.strokeWidth)||2,x.strokeStyle=(d==null?void 0:d.strokeColor)||"#000000",x.lineCap="round",x.lineTo(v.clientX-w.left,v.clientY-w.top),x.stroke()},y=()=>{u&&p.current&&(f(!1),a==null||a(p.current.toDataURL()))},b=()=>{const v=p.current;if(!v)return;const N=v.getContext("2d");N&&(N.fillStyle=(d==null?void 0:d.backgroundColor)||"#ffffff",N.fillRect(0,0,v.width,v.height),a==null||a(""))};return l.jsxs(de,{label:t,description:r,required:o,labelPosition:n,errors:i,children:[l.jsx("div",{className:`border-2 rounded-lg overflow-hidden ${((i==null?void 0:i.length)??0)>0?"border-red-500":"border-gray-300"} ${c?"opacity-50":""}`,style:{backgroundColor:(d==null?void 0:d.backgroundColor)||"#ffffff"},children:l.jsx("canvas",{ref:p,width:(d==null?void 0:d.canvasWidth)||400,height:(d==null?void 0:d.canvasHeight)||200,onMouseDown:h,onMouseMove:g,onMouseUp:y,onMouseLeave:y,className:c?"cursor-not-allowed":"cursor-crosshair",style:{display:"block",width:"100%"}})}),!c&&l.jsx("button",{type:"button",onClick:b,className:m("text-sm text-blue-600 hover:text-blue-700 mt-2"),children:"Clear signature"})]})}},{type:"captcha",structure:"field",typeCategory:"Security",label:"Captcha",description:"Bot protection verification",icon:"🤖",category:"field",subCategory:"security",dataType:"string",supportsValidation:!0,settingsSchema:{properties:{showLabel:!1,showPlaceholder:!1,showDescription:!0},configSection:{title:"Captcha Settings",icon:"🤖"},fields:[{key:"provider",label:"Provider",type:"select",section:"config",description:"Which CAPTCHA service to use",options:[{value:"recaptcha",label:"Google reCAPTCHA v3"},{value:"recaptcha-v2",label:"Google reCAPTCHA v2"},{value:"hcaptcha",label:"hCaptcha"},{value:"turnstile",label:"Cloudflare Turnstile"},{value:"friendly",label:"Friendly Captcha"}]},{key:"siteKey",label:"Site Key",type:"text",section:"config",placeholder:"Your site key from provider",description:"Public key provided by the CAPTCHA service"},{key:"theme",label:"Widget Theme",type:"select",section:"config",options:[{value:"light",label:"Light"},{value:"dark",label:"Dark"},{value:"auto",label:"Auto (match page)"}]},{key:"size",label:"Widget Size",type:"select",section:"config",options:[{value:"normal",label:"Normal"},{value:"compact",label:"Compact"},{value:"invisible",label:"Invisible"}]}]},getDefaultValues:()=>({properties:{label:"CAPTCHA",description:"Please verify you are human"},layout:{labelPosition:"hidden",size:"default"},config:{provider:"recaptcha",siteKey:"",theme:"light"}}),renderOnCanvas:e=>{const{description:t}=K(e);return l.jsxs("div",{className:m("space-y-1.5"),children:[t&&l.jsx("p",{className:m("text-xs text-gray-500"),children:t}),l.jsx("div",{className:m("border border-gray-300 rounded-md p-4 bg-gray-50 max-w-[300px]"),children:l.jsxs("div",{className:m("flex items-center gap-3"),children:[l.jsx("div",{className:m("w-7 h-7 border-2 border-gray-300 rounded flex items-center justify-center"),children:"☐"}),l.jsx("span",{className:m("text-sm text-gray-700"),children:"I'm not a robot"}),l.jsx("div",{className:m("ml-auto"),children:l.jsxs("div",{className:m("text-xs text-gray-400 text-center"),children:[l.jsx("div",{className:m("text-lg"),children:"🔄"}),l.jsx("span",{children:"reCAPTCHA"})]})})]})})]})},render:e=>{const{description:t,value:r,onChange:o,errors:n,isDisabled:s,config:a}=K(e),i=r===!0,c=()=>{s||o==null||o(!0)};return l.jsxs("div",{className:m("space-y-1.5"),children:[t&&l.jsx("p",{className:m("text-xs text-gray-500"),children:t}),l.jsx("div",{className:`border rounded-md p-4 max-w-[300px] ${((n==null?void 0:n.length)??0)>0?"border-red-500 bg-red-50":i?"border-green-500 bg-green-50":"border-gray-300 bg-gray-50"}`,children:l.jsxs("div",{className:m("flex items-center gap-3"),children:[l.jsx("button",{type:"button",onClick:c,disabled:s||i,className:`w-7 h-7 border-2 rounded flex items-center justify-center transition-colors ${i?"border-green-500 bg-green-500 text-white":"border-gray-300 hover:border-gray-400"} ${s?"cursor-not-allowed opacity-50":"cursor-pointer"}`,children:i?"✓":""}),l.jsx("span",{className:m("text-sm text-gray-700"),children:i?"Verified!":"I'm not a robot"}),l.jsx("div",{className:m("ml-auto"),children:l.jsxs("div",{className:m("text-xs text-gray-400 text-center"),children:[l.jsx("div",{className:m("text-lg"),children:(a==null?void 0:a.provider)==="hcaptcha"?"🛡️":"🔄"}),l.jsx("span",{children:(a==null?void 0:a.provider)==="hcaptcha"?"hCaptcha":(a==null?void 0:a.provider)==="turnstile"?"Turnstile":"reCAPTCHA"})]})})]})}),n&&n.length>0&&l.jsx("div",{className:m("space-y-1"),children:n.map((d,p)=>l.jsx("p",{className:m("text-xs text-red-500"),children:d},p))})]})}}],OE=[{type:"group",structure:"page",typeCategory:"Layout",label:"Group",description:"Container to group related elements together",icon:"📦",category:"page",subCategory:"layout",supportsValidation:!1,isContainer:!0,dataType:"object",getDefaultValues:()=>({properties:{label:"Group",description:""},layout:{size:"full"},config:{collapsed:!1,collapsible:!1,showBorder:!0,padding:16}}),renderOnCanvas:e=>{const{label:t,description:r,config:o}=K(e),n=(o==null?void 0:o.showBorder)??!0,s=(o==null?void 0:o.collapsible)??!1;return l.jsxs("div",{className:m("rounded-lg",n?"border border-gray-200":""),style:{padding:(o==null?void 0:o.padding)||16},children:[l.jsx("div",{className:m("flex items-center justify-between mb-2"),children:l.jsxs("div",{children:[l.jsxs("h3",{className:m("font-medium text-gray-800 flex items-center gap-2"),children:[s&&l.jsx("span",{className:m("text-gray-400 text-sm"),children:"▼"}),t||"Group"]}),r&&l.jsx("p",{className:m("text-sm text-gray-500 mt-0.5"),children:r})]})}),l.jsx("div",{className:m("border-2 border-dashed border-gray-200 rounded-md p-4 min-h-[80px] flex items-center justify-center"),children:l.jsx("span",{className:m("text-sm text-gray-400"),children:"Drop elements here"})})]})},render:e=>{const{label:t,description:r,config:o,element:n}=K(e),{renderChildren:s}=e,a=(o==null?void 0:o.showBorder)??!0,i=(o==null?void 0:o.collapsible)??!1,[c,d]=P.useState((o==null?void 0:o.collapsed)??!1);return l.jsxs("div",{className:`rounded-lg ${a?"border border-gray-200":""}`,style:{padding:(o==null?void 0:o.padding)||16},children:[l.jsx("div",{className:`flex items-center justify-between ${i?"cursor-pointer":""}`,onClick:()=>i&&d(!c),children:l.jsxs("div",{children:[l.jsxs("h3",{className:m("font-medium text-gray-800 flex items-center gap-2"),children:[i&&l.jsx("span",{className:m("text-gray-400 text-sm transition-transform",c?"-rotate-90":""),children:"▼"}),t||"Group"]}),r&&!c&&l.jsx("p",{className:m("text-sm text-gray-500 mt-0.5"),children:r})]})}),!c&&l.jsx("div",{className:m("mt-3"),children:s?s(n.id):l.jsx("div",{"data-container-id":n.id,className:m("space-y-4")})})]})}},{type:"grid",structure:"page",typeCategory:"Layout",label:"Grid",description:"Arrange elements in a responsive grid layout",icon:"⊞",category:"page",subCategory:"layout",supportsValidation:!1,isContainer:!0,dataType:"object",getDefaultValues:()=>({properties:{label:""},layout:{size:"full"},config:{gridColumns:2,gridGap:16,responsiveColumns:{sm:1,md:2,lg:2}}}),renderOnCanvas:e=>{const{label:t,config:r}=K(e),o=(r==null?void 0:r.gridColumns)||2,n=(r==null?void 0:r.gridGap)||16;return l.jsxs("div",{className:m("border border-gray-200 rounded-lg p-4"),children:[t&&l.jsx("div",{className:m("mb-3"),children:l.jsx("h3",{className:m("font-medium text-gray-800"),children:t})}),l.jsx("div",{className:m("grid"),style:{gridTemplateColumns:`repeat(${o}, 1fr)`,gap:n},children:Array.from({length:o}).map((s,a)=>l.jsx("div",{className:m("border-2 border-dashed border-gray-200 rounded-md p-4 min-h-[60px] flex items-center justify-center"),children:l.jsxs("span",{className:m("text-xs text-gray-400"),children:["Column ",a+1]})},a))})]})},render:e=>{const{label:t,config:r,element:o}=K(e),{renderChildren:n}=e,s=(r==null?void 0:r.gridColumns)||2,a=(r==null?void 0:r.gridGap)||16;return l.jsxs("div",{children:[t&&l.jsx("div",{className:m("mb-3"),children:l.jsx("h3",{className:m("font-medium text-gray-800"),children:t})}),l.jsx("div",{className:m("grid"),style:{gridTemplateColumns:`repeat(${s}, 1fr)`,gap:a},children:n?n(o.id):l.jsx("div",{"data-container-id":o.id,className:m("space-y-4")})})]})}},{type:"table",structure:"page",typeCategory:"Layout",label:"Table",description:"Display data in a table format",icon:"📊",category:"page",subCategory:"layout",supportsValidation:!1,isContainer:!0,dataType:"array",getDefaultValues:()=>({properties:{label:"Table",description:""},layout:{size:"full"},config:{tableColumns:[{id:"col1",header:"Column 1",width:"auto",align:"left"},{id:"col2",header:"Column 2",width:"auto",align:"left"},{id:"col3",header:"Column 3",width:"auto",align:"left"}],showHeader:!0,striped:!0,bordered:!0}}),renderOnCanvas:e=>{const{label:t,description:r,config:o}=K(e),n=(o==null?void 0:o.tableColumns)||[{id:"col1",header:"Column 1"},{id:"col2",header:"Column 2"}],s=(o==null?void 0:o.showHeader)??!0,a=(o==null?void 0:o.striped)??!0,i=(o==null?void 0:o.bordered)??!0;return l.jsxs("div",{className:m("space-y-2"),children:[t&&l.jsxs("div",{children:[l.jsx("h3",{className:m("font-medium text-gray-800"),children:t}),r&&l.jsx("p",{className:m("text-sm text-gray-500"),children:r})]}),l.jsx("div",{className:`overflow-hidden rounded-lg ${i?"border border-gray-200":""}`,children:l.jsxs("table",{className:m("min-w-full divide-y divide-gray-200"),children:[s&&l.jsx("thead",{className:m("bg-gray-50"),children:l.jsx("tr",{children:n.map(c=>l.jsx("th",{className:`px-4 py-3 text-xs font-medium text-gray-500 uppercase tracking-wider text-${c.align||"left"}`,children:c.header},c.id))})}),l.jsx("tbody",{className:`bg-white ${a?"divide-y divide-gray-200":""}`,children:[1,2].map((c,d)=>l.jsx("tr",{className:a&&d%2===1?"bg-gray-50":"",children:n.map(p=>l.jsx("td",{className:`px-4 py-3 text-sm text-gray-500 text-${p.align||"left"}`,children:l.jsx("span",{className:m("text-gray-300"),children:"Sample data"})},p.id))},c))})]})}),l.jsx("p",{className:m("text-xs text-gray-400 text-center"),children:"Table preview - drop elements to define row structure"})]})},render:e=>{const{label:t,description:r,config:o,value:n=[]}=K(e),s=(o==null?void 0:o.tableColumns)||[],a=(o==null?void 0:o.showHeader)??!0,i=(o==null?void 0:o.striped)??!0,c=(o==null?void 0:o.bordered)??!0,d=Array.isArray(n)?n:[];return l.jsxs("div",{className:m("space-y-2"),children:[t&&l.jsxs("div",{children:[l.jsx("h3",{className:m("font-medium text-gray-800"),children:t}),r&&l.jsx("p",{className:m("text-sm text-gray-500"),children:r})]}),l.jsx("div",{className:`overflow-x-auto rounded-lg ${c?"border border-gray-200":""}`,children:l.jsxs("table",{className:m("min-w-full divide-y divide-gray-200"),children:[a&&l.jsx("thead",{className:m("bg-gray-50"),children:l.jsx("tr",{children:s.map(p=>l.jsx("th",{style:{width:p.width||"auto"},className:`px-4 py-3 text-xs font-medium text-gray-500 uppercase tracking-wider text-${p.align||"left"}`,children:p.header},p.id))})}),l.jsx("tbody",{className:`bg-white ${i?"divide-y divide-gray-200":""}`,children:d.length===0?l.jsx("tr",{children:l.jsx("td",{colSpan:s.length,className:m("px-4 py-8 text-sm text-gray-400 text-center"),children:"No data available"})}):d.map((p,u)=>l.jsx("tr",{className:i&&u%2===1?"bg-gray-50":"",children:s.map(f=>l.jsx("td",{className:`px-4 py-3 text-sm text-gray-700 text-${f.align||"left"}`,children:p[f.id]??"-"},f.id))},u))})]})})]})}},{type:"pages",structure:"page",typeCategory:"Special",label:"Wizard / Pages",description:"Multi-step form wizard with progress tracking",icon:"📑",category:"page",subCategory:"special",supportsValidation:!1,isContainer:!0,dataType:"object",settingsSchema:{configSection:{title:"Wizard Settings",icon:"📑"},fields:[{key:"showProgressBar",label:"Show Progress Bar",type:"checkbox",section:"config",description:"Display the progress bar and step indicators"},{key:"showStepNumbers",label:"Show Step Numbers",type:"checkbox",section:"config",description:"Display step numbers next to each step"},{key:"allowSkip",label:"Allow Skipping Steps",type:"checkbox",section:"config",description:"Let users jump to earlier steps via the progress bar"},{key:"validateOnNext",label:"Validate Before Next",type:"checkbox",section:"config",description:"Validate the current step's fields before advancing"},{key:"nextButtonLabel",label:"Next Button Label",type:"text",section:"config",placeholder:"Next",description:"Label for the button that advances to the next step"}]},getDefaultValues:()=>({properties:{label:"Form Wizard"},layout:{size:"full"},config:{showProgressBar:!0,showStepNumbers:!0,allowSkip:!1,validateOnNext:!0,nextButtonLabel:"Next",steps:[{id:"step-1",label:"Step 1",description:"First step"},{id:"step-2",label:"Step 2",description:"Second step"}],activeStepId:"step-1"}}),renderOnCanvas:e=>{var i,c;const{config:t}=K(e),r=(t==null?void 0:t.steps)||[{id:"step-1",label:"Step 1"},{id:"step-2",label:"Step 2"}],o=(t==null?void 0:t.activeStepId)||((i=r[0])==null?void 0:i.id),n=r.findIndex(d=>d.id===o),s=(t==null?void 0:t.showProgressBar)??!0,a=(t==null?void 0:t.showStepNumbers)??!0;return l.jsxs("div",{className:m("border border-gray-200 rounded-lg p-4 bg-white"),children:[s&&l.jsxs("div",{className:m("mb-6"),children:[l.jsx("div",{className:m("h-2 bg-gray-200 rounded-full overflow-hidden"),children:l.jsx("div",{className:m("h-full bg-blue-600 transition-all duration-300"),style:{width:`${(n+1)/r.length*100}%`}})}),a&&l.jsx("div",{className:m("flex justify-between mt-3"),children:r.map((d,p)=>{const u=p<n,f=p===n;return l.jsxs("div",{className:m("flex flex-col items-center"),children:[l.jsx("div",{className:`w-8 h-8 rounded-full flex items-center justify-center text-sm font-medium transition-colors ${u?"bg-green-500 text-white":f?"bg-blue-600 text-white":"bg-gray-200 text-gray-500"}`,children:u?"✓":p+1}),l.jsx("span",{className:`text-xs mt-1 ${f?"text-blue-600 font-medium":"text-gray-500"}`,children:d.label})]},d.id)})})]}),l.jsx("div",{className:m("border-2 border-dashed border-gray-200 rounded-lg p-6 min-h-[150px] flex items-center justify-center"),children:l.jsxs("div",{className:m("text-center"),children:[l.jsxs("span",{className:m("text-gray-400 text-sm"),children:["Step ",n+1,":"," ",(c=r[n])==null?void 0:c.label]}),l.jsx("p",{className:m("text-gray-300 text-xs mt-1"),children:"Drop elements here for this step"})]})}),l.jsxs("div",{className:m("flex justify-between mt-4 pt-4 border-t border-gray-200"),children:[l.jsx("button",{type:"button",disabled:n===0,className:`px-4 py-2 text-sm rounded-md ${n===0?"bg-gray-100 text-gray-400 cursor-not-allowed":"bg-gray-200 text-gray-700 hover:bg-gray-300"}`,children:"← Previous"}),l.jsx("button",{type:"button",className:m("px-4 py-2 text-sm rounded-md bg-blue-600 text-white hover:bg-blue-700"),children:n===r.length-1?"Submit":"Next →"})]})]})},render:e=>{const{config:t,element:r}=K(e),o=(t==null?void 0:t.steps)||[];return l.jsx("div",{"data-wizard-id":r.id,"data-wizard-steps":o.length})}}],ME=[{type:"repeatElement",structure:"page",typeCategory:"Repeatable",label:"Repeat Element",description:"Allow users to add multiple values of a single field",icon:"🔄",category:"page",subCategory:"repeatable",supportsValidation:!0,isContainer:!1,dataType:"array",getDefaultValues:()=>({properties:{label:"Repeatable Field",description:"Add multiple values",placeholder:"Enter value"},layout:{labelPosition:"top",size:"full"},validation:{required:!1},config:{minItems:1,maxItems:10,addButtonText:"Add Item",removeButtonText:"Remove",showItemNumber:!0}}),renderOnCanvas:e=>{const{label:t,description:r,placeholder:o,required:n,config:s}=K(e),a=(s==null?void 0:s.minItems)||1,i=(s==null?void 0:s.maxItems)||10,c=(s==null?void 0:s.addButtonText)||"Add Item",d=(s==null?void 0:s.showItemNumber)??!0;return l.jsxs("div",{className:m("space-y-3"),children:[l.jsxs("div",{children:[l.jsxs("label",{className:m("block text-sm font-medium text-gray-700"),children:[t||"Repeatable Field",n&&l.jsx("span",{className:m("text-red-500 ml-1"),children:"*"})]}),r&&l.jsx("p",{className:m("text-xs text-gray-500 mt-0.5"),children:r})]}),l.jsx("div",{className:m("space-y-2"),children:Array.from({length:Math.min(2,a)}).map((p,u)=>l.jsxs("div",{className:m("flex items-center gap-2"),children:[d&&l.jsxs("span",{className:m("text-xs text-gray-400 w-4"),children:[u+1,"."]}),l.jsx("input",{type:"text",placeholder:o||"Enter value",disabled:!0,className:m("flex-1 px-3 py-2 text-sm border border-gray-300 rounded-md bg-gray-50 text-gray-500")}),l.jsx("button",{type:"button",disabled:!0,className:m("p-2 text-gray-400 hover:text-red-500 disabled:opacity-50"),children:"✕"})]},u))}),l.jsxs("button",{type:"button",disabled:!0,className:m("flex items-center gap-1 text-sm text-blue-600 hover:text-blue-700 disabled:opacity-50"),children:[l.jsx("span",{children:"+"}),l.jsx("span",{children:c})]}),l.jsxs("p",{className:m("text-xs text-gray-400"),children:["Min: ",a," | Max: ",i," items"]})]})},render:e=>{const{label:t,description:r,placeholder:o,required:n,config:s,value:a=[],onChange:i,errors:c,isDisabled:d}=K(e),p=(s==null?void 0:s.minItems)||1,u=(s==null?void 0:s.maxItems)||10,f=(s==null?void 0:s.addButtonText)||"Add Item",h=(s==null?void 0:s.showItemNumber)??!0,g=Array.isArray(a)?a:[""],y=g.length<u,b=g.length>p,v=()=>{y&&i&&i([...g,""])},N=C=>{if(b&&i){const E=g.filter((k,_)=>_!==C);i(E)}},x=(C,E)=>{if(i){const k=[...g];k[C]=E,i(k)}},w=c&&c.length>0;return l.jsxs("div",{className:m("space-y-3"),children:[l.jsxs("div",{children:[l.jsxs("label",{className:m("block text-sm font-medium text-gray-700"),children:[t||"Repeatable Field",n&&l.jsx("span",{className:m("text-red-500 ml-1"),children:"*"})]}),r&&l.jsx("p",{className:m("text-xs text-gray-500 mt-0.5"),children:r})]}),l.jsx("div",{className:m("space-y-2"),children:g.map((C,E)=>l.jsxs("div",{className:m("flex items-center gap-2"),children:[h&&l.jsxs("span",{className:m("text-xs text-gray-400 w-4"),children:[E+1,"."]}),l.jsx("input",{type:"text",value:C,onChange:k=>x(E,k.target.value),placeholder:o||"Enter value",disabled:d,className:`flex-1 px-3 py-2 text-sm border rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-offset-0 ${w?"border-red-500 focus:ring-red-500":"border-gray-300 focus:ring-blue-500 focus:border-blue-500"} ${d?"bg-gray-50 text-gray-500 cursor-not-allowed":""}`}),l.jsx("button",{type:"button",onClick:()=>N(E),disabled:!b||d,className:`p-2 transition-colors ${b&&!d?"text-gray-400 hover:text-red-500":"text-gray-300 cursor-not-allowed"}`,children:"✕"})]},E))}),y&&!d&&l.jsxs("button",{type:"button",onClick:v,className:m("flex items-center gap-1 text-sm text-blue-600 hover:text-blue-700"),children:[l.jsx("span",{children:"+"}),l.jsx("span",{children:f})]}),c&&c.length>0&&l.jsx("div",{className:m("space-y-1"),children:c.map((C,E)=>l.jsx("p",{className:m("text-xs text-red-500"),children:C},E))})]})}},{type:"repeatGroup",structure:"page",typeCategory:"Repeatable",label:"Repeat Group",description:"Allow users to add multiple instances of a group of fields",icon:"📚",category:"page",subCategory:"repeatable",supportsValidation:!0,isContainer:!0,dataType:"array",getDefaultValues:()=>({properties:{label:"Repeatable Section",description:"Add multiple entries"},layout:{size:"full"},validation:{required:!1},config:{minItems:1,maxItems:10,addButtonText:"Add Entry",removeButtonText:"Remove",itemLabel:"Entry",showItemNumber:!0}}),renderOnCanvas:e=>{const{label:t,description:r,config:o}=K(e),n=(o==null?void 0:o.minItems)||1,s=(o==null?void 0:o.maxItems)||10,a=(o==null?void 0:o.addButtonText)||"Add Entry",i=(o==null?void 0:o.itemLabel)||"Entry",c=(o==null?void 0:o.showItemNumber)??!0;return l.jsxs("div",{className:m("border border-gray-200 rounded-lg p-4 space-y-4"),children:[l.jsxs("div",{className:m("flex items-center justify-between"),children:[l.jsxs("div",{children:[l.jsxs("h3",{className:m("font-medium text-gray-800 flex items-center gap-2"),children:[l.jsx("span",{className:m("text-lg"),children:"📚"}),t||"Repeatable Section"]}),r&&l.jsx("p",{className:m("text-sm text-gray-500 mt-0.5"),children:r})]}),l.jsxs("span",{className:m("text-xs text-gray-400 bg-gray-100 px-2 py-1 rounded"),children:[n,"-",s," items"]})]}),l.jsxs("div",{className:m("border border-dashed border-gray-300 rounded-lg"),children:[l.jsxs("div",{className:m("flex items-center justify-between px-4 py-2 bg-gray-50 border-b border-dashed border-gray-300 rounded-t-lg"),children:[l.jsxs("span",{className:m("text-sm font-medium text-gray-600"),children:[c&&"1. ",i]}),l.jsxs("div",{className:m("flex items-center gap-2"),children:[l.jsx("button",{type:"button",disabled:!0,className:m("text-gray-400 hover:text-gray-600 text-sm"),children:"▲"}),l.jsx("button",{type:"button",disabled:!0,className:m("text-gray-400 hover:text-gray-600 text-sm"),children:"▼"}),l.jsx("button",{type:"button",disabled:!0,className:m("text-gray-400 hover:text-red-500 text-sm"),children:"✕"})]})]}),l.jsx("div",{className:m("p-4 min-h-[80px] flex items-center justify-center"),children:l.jsx("span",{className:m("text-sm text-gray-400"),children:"Drop elements here to define the repeatable group structure"})})]}),l.jsxs("button",{type:"button",disabled:!0,className:m("w-full flex items-center justify-center gap-2 py-2 border-2 border-dashed border-gray-300 rounded-lg text-sm text-gray-500 hover:border-blue-400 hover:text-blue-600 transition-colors disabled:opacity-50"),children:[l.jsx("span",{children:"+"}),l.jsx("span",{children:a})]})]})},render:e=>{const{label:t,description:r,config:o,element:n,value:s=[],onChange:a,errors:i,isDisabled:c}=K(e),{renderChildren:d}=e,p=(o==null?void 0:o.minItems)||1,u=(o==null?void 0:o.maxItems)||10,f=(o==null?void 0:o.addButtonText)||"Add Entry",h=(o==null?void 0:o.removeButtonText)||"Remove",g=(o==null?void 0:o.itemLabel)||"Entry",y=(o==null?void 0:o.showItemNumber)??!0,b=Array.isArray(s)?s:Array.from({length:p},()=>({})),v=b.length<u,N=b.length>p,x=()=>{v&&a&&a([...b,{}])},w=_=>{if(N&&a){const D=b.filter((A,I)=>I!==_);a(D)}},C=_=>{if(_>0&&a){const D=[...b];[D[_-1],D[_]]=[D[_],D[_-1]],a(D)}},E=_=>{if(_<b.length-1&&a){const D=[...b];[D[_],D[_+1]]=[D[_+1],D[_]],a(D)}},k=i&&i.length>0;return l.jsxs("div",{className:`border rounded-lg p-4 space-y-4 ${k?"border-red-300":"border-gray-200"}`,children:[l.jsxs("div",{className:m("flex items-center justify-between"),children:[l.jsxs("div",{children:[l.jsx("h3",{className:m("font-medium text-gray-800"),children:t||"Repeatable Section"}),r&&l.jsx("p",{className:m("text-sm text-gray-500 mt-0.5"),children:r})]}),l.jsxs("span",{className:m("text-xs text-gray-400"),children:[b.length," of ",u]})]}),l.jsx("div",{className:m("space-y-3"),children:b.map((_,D)=>{var A;return l.jsxs("div",{className:m("border border-gray-200 rounded-lg overflow-hidden"),children:[l.jsxs("div",{className:m("flex items-center justify-between px-4 py-2 bg-gray-50 border-b border-gray-200"),children:[l.jsxs("span",{className:m("text-sm font-medium text-gray-600"),children:[y&&`${D+1}. `,g]}),!c&&l.jsxs("div",{className:m("flex items-center gap-1"),children:[l.jsx("button",{type:"button",onClick:()=>C(D),disabled:D===0,className:`p-1 rounded transition-colors ${D===0?"text-gray-300 cursor-not-allowed":"text-gray-400 hover:text-gray-600 hover:bg-gray-100"}`,title:"Move up",children:"▲"}),l.jsx("button",{type:"button",onClick:()=>E(D),disabled:D===b.length-1,className:`p-1 rounded transition-colors ${D===b.length-1?"text-gray-300 cursor-not-allowed":"text-gray-400 hover:text-gray-600 hover:bg-gray-100"}`,title:"Move down",children:"▼"}),l.jsx("button",{type:"button",onClick:()=>w(D),disabled:!N,className:`p-1 rounded transition-colors ${N?"text-gray-400 hover:text-red-500 hover:bg-red-50":"text-gray-300 cursor-not-allowed"}`,title:h,children:"✕"})]})]}),l.jsx("div",{className:m("p-4"),children:d?d(n.id,`${((A=n.attributes)==null?void 0:A.name)||n.id}[${D}]`):l.jsx("div",{"data-repeat-group-item":n.id,"data-repeat-index":D,className:m("text-sm text-gray-400 text-center py-4"),children:"Group fields render here"})})]},D)})}),v&&!c&&l.jsxs("button",{type:"button",onClick:x,className:m("w-full flex items-center justify-center gap-2 py-2 border-2 border-dashed border-gray-300 rounded-lg text-sm text-gray-500 hover:border-blue-400 hover:text-blue-600 transition-colors"),children:[l.jsx("span",{children:"+"}),l.jsx("span",{children:f})]}),i&&i.length>0&&l.jsx("div",{className:m("space-y-1"),children:i.map((_,D)=>l.jsx("p",{className:m("text-xs text-red-500"),children:_},D))})]})}}],Sh=[...I0,...O0,...M0,...kE,...AE,...DE,...$E,...TE,...PE,...IE,...OE,...ME];function LE(){for(const e of Sh)ut.register(e)}const FE=["shortText","longText","multiLineInput","textEditor"],VE=["number","slider","rangeSlider"],GE=["email","phone","url","location"],zE=["password","signature","captcha"],BE=["singleChoice","multipleChoice","dropdown","tags","decisionBox","toggleSwitch"],UE=["singleChoiceMatrix","multipleChoiceMatrix","matrixTable"],WE=["date","time","dateTime","multipleDates","dateRange"],HE=["fileUpload","imageUpload","multiFileUpload","multiImageUpload"],jE=["paragraph","image","link"],qE=[...FE,...VE,...GE,...zE,...BE,...UE,...WE,...HE,...jE],gc={shortText:"Short Text",longText:"Long Text",multiLineInput:"Multi-line Input",textEditor:"Text Editor",number:"Number",slider:"Slider",rangeSlider:"Range Slider",email:"Email",phone:"Phone",url:"URL",location:"Location",password:"Password",signature:"Signature",captcha:"Captcha",singleChoice:"Single Choice",multipleChoice:"Multiple Choice",dropdown:"Dropdown",tags:"Tags",decisionBox:"Decision Box",toggleSwitch:"Toggle Switch",singleChoiceMatrix:"Single Choice Matrix",multipleChoiceMatrix:"Multiple Choice Matrix",matrixTable:"Matrix Table",date:"Date",time:"Time",dateTime:"Date & Time",multipleDates:"Multiple Dates",dateRange:"Date Range",fileUpload:"File Upload",imageUpload:"Image Upload",multiFileUpload:"Multi-File Upload",multiImageUpload:"Multi-Image Upload",paragraph:"Paragraph",image:"Image",link:"Link",formHeading:"Form Heading",sectionHeading:"Section Heading",subheading:"Subheading",divider:"Divider",spacer:"Spacer",group:"Group",grid:"Grid",table:"Table",repeatElement:"Repeat Element",repeatGroup:"Repeat Group",pages:"Pages (Wizard)",submit:"Submit Button"},bc={shortText:"📝",longText:"📄",multiLineInput:"📑",textEditor:"✏️",number:"🔢",slider:"🎚️",rangeSlider:"↔️",email:"✉️",phone:"📱",url:"🔗",location:"📍",password:"🔒",signature:"✍️",captcha:"🤖",singleChoice:"🔘",multipleChoice:"☑️",dropdown:"📋",tags:"🏷️",decisionBox:"✅",toggleSwitch:"🔀",singleChoiceMatrix:"📊",multipleChoiceMatrix:"📈",matrixTable:"📉",date:"📅",time:"⏰",dateTime:"📆",multipleDates:"🗓️",dateRange:"↔️",fileUpload:"📎",imageUpload:"🖼️",multiFileUpload:"📁",multiImageUpload:"🖼️",paragraph:"📃",image:"🏞️",link:"🔗",formHeading:"🏷️",sectionHeading:"📌",subheading:"📎",divider:"➖",spacer:"↕️",group:"📦",grid:"⊞",table:"📊",repeatElement:"🔄",repeatGroup:"🔁",pages:"📖",submit:"🚀"};function YE(e){return qE.includes(e)}const QE=["singleChoice","multipleChoice","dropdown","tags"],KE=["shortText","longText","multiLineInput","textEditor","number","slider","rangeSlider","email","phone","url","location","password","singleChoice","multipleChoice","dropdown","tags","decisionBox","date","time","dateTime","multipleDates","dateRange","fileUpload","imageUpload","multiFileUpload","multiImageUpload"],RE=["singleChoiceMatrix","multipleChoiceMatrix","matrixTable"];function XE(e){return QE.includes(e)}function JE(e){return KE.includes(e)}function ZE(e){return RE.includes(e)}const Ia=({element:e,isSelected:t=!1})=>{const r=ut.get(e.type),o={element:e,properties:e.properties,layout:e.layout,validation:e.validation,logic:e.logic,config:e.config,isSelected:t,mode:"canvas"};if(r&&r.renderOnCanvas)try{return l.jsx(l.Fragment,{children:r.renderOnCanvas(o)})}catch(n){return console.error(`Error rendering element "${e.type}" on canvas:`,n),l.jsx(Oa,{element:e,error:n})}return l.jsx(Oa,{element:e})},Nh=({element:e,value:t,onChange:r,errors:o=[],formValues:n={},readOnly:s=!1,disabled:a=!1})=>{const i=ut.get(e.type),c={element:e,properties:e.properties,layout:e.layout,validation:e.validation,logic:e.logic,config:e.config,mode:"render",value:t,onChange:r,errors:o,formValues:n,readOnly:s,disabled:a};if(i&&i.render)try{return l.jsx(l.Fragment,{children:i.render(c)})}catch(d){return console.error(`Error rendering element "${e.type}":`,d),l.jsx(Oa,{element:e,error:d})}return l.jsx(Oa,{element:e})},Oa=({element:e,error:t})=>{const r=bc[e.type]||"❓",o=gc[e.type]||e.type;return t?l.jsxs("div",{className:m("p-4 bg-red-50 border border-red-200 rounded text-red-600 text-sm"),children:[l.jsxs("div",{className:m("flex items-center gap-2"),children:[l.jsx("span",{children:"⚠️"}),l.jsxs("span",{children:["Error rendering: ",o]})]}),l.jsx("p",{className:m("text-xs mt-1 text-red-500"),children:t instanceof Error?t.message:"Unknown error"})]}):l.jsxs("div",{className:m("p-4 bg-gray-100 rounded text-gray-600 text-sm"),children:[l.jsxs("div",{className:m("flex items-center gap-2"),children:[l.jsx("span",{children:r}),l.jsx("span",{children:o})]}),l.jsx("p",{className:m("text-xs mt-1 text-gray-400"),children:"Element type not registered in the element registry"})]})};function e1(e){return ut.has(e)}function Ch(e){const t=ut.get(e);return t?t.icon:bc[e]}function yc(e){const t=ut.get(e);return t?t.label:gc[e]||e}function t1(e,t){return l.jsx(Ia,{element:e,isSelected:t})}function r1(e,t,r,o,n){return l.jsx(Nh,{element:e,value:t,onChange:r,errors:o,formValues:n})}const ar=S.forwardRef(({className:e,type:t,...r},o)=>l.jsx("input",{type:t,className:m("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e),ref:o,...r}));ar.displayName="Input";const Eh=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,_h=Qu,Ma=(e,t)=>r=>{var o;if((t==null?void 0:t.variants)==null)return _h(e,r==null?void 0:r.class,r==null?void 0:r.className);const{variants:n,defaultVariants:s}=t,a=Object.keys(n).map(d=>{const p=r==null?void 0:r[d],u=s==null?void 0:s[d];if(p===null)return null;const f=Eh(p)||Eh(u);return n[d][f]}),i=r&&Object.entries(r).reduce((d,p)=>{let[u,f]=p;return f===void 0||(d[u]=f),d},{}),c=t==null||(o=t.compoundVariants)===null||o===void 0?void 0:o.reduce((d,p)=>{let{class:u,className:f,...h}=p;return Object.entries(h).every(g=>{let[y,b]=g;return Array.isArray(b)?b.includes({...s,...i}[y]):{...s,...i}[y]===b})?[...d,u,f]:d},[]);return _h(e,a,c,r==null?void 0:r.class,r==null?void 0:r.className)},o1=Ma("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function vc({className:e,variant:t,...r}){return l.jsx("div",{className:m(o1({variant:t}),e),...r})}var n1=Object.defineProperty,xc=(e,t)=>n1(e,"name",{value:t,configurable:!0}),wc=!1;function kh(){const[e,t]=S.useState(wc);return S.useEffect(()=>{wc||(wc=!0,t(!0))},[]),e}xc(kh,"useIsHydrated");var Ah=S[" useSyncExternalStore ".trim().toString()];function Dh(){return()=>{}}xc(Dh,"subscribe");function $h(){return Ah(Dh,()=>!0,()=>!1)}xc($h,"useIsHydratedModern");var s1=typeof Ah=="function"?$h:kh,a1=Object.defineProperty,zo=(e,t)=>a1(e,"name",{value:t,configurable:!0}),Sc="rovingFocusGroup.onEntryFocus",l1={bubbles:!1,cancelable:!0},La="RovingFocusGroup",[Nc,Th,i1]=na(La),[c1,Ph]=sr(La,[i1]),[d1,u1]=c1(La),f1=S.forwardRef(zo(function(t,r){return l.jsx(Nc.Provider,{scope:t.__scopeRovingFocusGroup,children:l.jsx(Nc.Slot,{scope:t.__scopeRovingFocusGroup,children:l.jsx(p1,{...t,ref:r})})})},"RovingFocusGroup")),p1=S.forwardRef(zo(function(t,r){const{__scopeRovingFocusGroup:o,orientation:n,loop:s=!1,dir:a,currentTabStopId:i,defaultCurrentTabStopId:c,onCurrentTabStopIdChange:d,onEntryFocus:p,preventScrollOnEntryFocus:u=!1,...f}=t,h=S.useRef(null),g=Ue(r,h),y=Vn(a),[b,v]=yr({prop:i,defaultProp:c??null,onChange:d,caller:La}),[N,x]=S.useState(!1),w=gr(p),C=Th(o),E=S.useRef(!1),[k,_]=S.useState(0);return S.useEffect(()=>{const D=h.current;if(D)return D.addEventListener(Sc,w),()=>D.removeEventListener(Sc,w)},[w]),l.jsx(d1,{scope:o,orientation:n,dir:y,loop:s,currentTabStopId:b,onItemFocus:S.useCallback(D=>v(D),[v]),onItemShiftTab:S.useCallback(()=>x(!0),[]),onFocusableItemAdd:S.useCallback(()=>_(D=>D+1),[]),onFocusableItemRemove:S.useCallback(()=>_(D=>D-1),[]),children:l.jsx(Ie.div,{tabIndex:N||k===0?-1:0,"data-orientation":n,...f,ref:g,style:{outline:"none",...t.style},onMouseDown:Se(t.onMouseDown,()=>{E.current=!0}),onFocus:Se(t.onFocus,D=>{const A=!E.current;if(D.target===D.currentTarget&&A&&!N){const I=new CustomEvent(Sc,l1);if(D.currentTarget.dispatchEvent(I),!I.defaultPrevented){const T=C().filter(z=>z.focusable),L=T.find(z=>z.active),F=T.find(z=>z.id===b),G=[L,F,...T].filter(Boolean).map(z=>z.ref.current);Cc(G,u)}}E.current=!1}),onBlur:Se(t.onBlur,()=>x(!1))})})},"RovingFocusGroupImpl")),h1="RovingFocusGroupItem",m1=S.forwardRef(zo(function(t,r){const{__scopeRovingFocusGroup:o,focusable:n=!0,active:s=!1,tabStopId:a,children:i,...c}=t,d=br(),p=a||d,u=u1(h1,o),f=u.currentTabStopId===p,h=Th(o),{onFocusableItemAdd:g,onFocusableItemRemove:y,currentTabStopId:b}=u,v=s1();return ot(()=>{if(!(!v||!n))return g(),()=>y()},[v,n,g,y]),S.useEffect(()=>{if(!(v||!n))return g(),()=>y()},[v,n,g,y]),l.jsx(Nc.ItemSlot,{scope:o,id:p,focusable:n,active:s,children:l.jsx(Ie.span,{tabIndex:f?0:-1,"data-orientation":u.orientation,...c,ref:r,onMouseDown:Se(t.onMouseDown,N=>{n?u.onItemFocus(p):N.preventDefault()}),onFocus:Se(t.onFocus,()=>u.onItemFocus(p)),onKeyDown:Se(t.onKeyDown,N=>{if(N.key==="Tab"&&N.shiftKey){u.onItemShiftTab();return}if(N.target!==N.currentTarget)return;const x=Oh(N,u.orientation,u.dir);if(x!==void 0){if(N.metaKey||N.ctrlKey||N.altKey||N.shiftKey)return;N.preventDefault();let C=h().filter(E=>E.focusable).map(E=>E.ref.current);if(x==="last")C.reverse();else if(x==="prev"||x==="next"){x==="prev"&&C.reverse();const E=C.indexOf(N.currentTarget);C=u.loop?Mh(C,E+1):C.slice(E+1)}setTimeout(()=>Cc(C))}}),children:typeof i=="function"?i({isCurrentTabStop:f,hasTabStop:b!=null}):i})})},"RovingFocusGroupItem")),g1={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function Ih(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}zo(Ih,"getDirectionAwareKey");function Oh(e,t,r){const o=Ih(e.key,r);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(o))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(o)))return g1[o]}zo(Oh,"getFocusIntent");function Cc(e,t=!1){const r=document.activeElement;for(const o of e)if(o===r||(o.focus({preventScroll:t}),document.activeElement!==r))return}zo(Cc,"focusFirst");function Mh(e,t){return e.map((r,o)=>e[(t+o)%e.length])}zo(Mh,"wrapArray");var b1=f1,y1=m1,v1=Object.defineProperty,gn=(e,t)=>v1(e,"name",{value:t,configurable:!0}),Ec="Tabs",[x1,xO]=sr(Ec,[Ph]),Lh=Ph(),[w1,_c]=x1(Ec),S1=S.forwardRef(gn(function(t,r){const{__scopeTabs:o,value:n,onValueChange:s,defaultValue:a,orientation:i="horizontal",dir:c,activationMode:d="automatic",...p}=t,u=Vn(c),[f,h]=yr({prop:n,onChange:s,defaultProp:a??"",caller:Ec});return l.jsx(w1,{scope:o,baseId:br(),value:f,onValueChange:h,orientation:i,dir:u,activationMode:d,children:l.jsx(Ie.div,{dir:u,"data-orientation":i,...p,ref:r})})},"Tabs")),N1="TabsList",C1=S.forwardRef(gn(function(t,r){const{__scopeTabs:o,loop:n=!0,...s}=t,a=_c(N1,o),i=Lh(o);return l.jsx(b1,{asChild:!0,...i,orientation:a.orientation,dir:a.dir,loop:n,children:l.jsx(Ie.div,{role:"tablist","aria-orientation":a.orientation,...s,ref:r})})},"TabsList")),E1="TabsTrigger",_1=S.forwardRef(gn(function(t,r){const{__scopeTabs:o,value:n,disabled:s=!1,...a}=t,i=_c(E1,o),c=Lh(o),d=kc(i.baseId,n),p=Ac(i.baseId,n),u=n===i.value;return l.jsx(y1,{asChild:!0,...c,focusable:!s,active:u,children:l.jsx(Ie.button,{type:"button",role:"tab","aria-selected":u,"aria-controls":p,"data-state":u?"active":"inactive","data-disabled":s?"":void 0,disabled:s,id:d,...a,ref:r,onMouseDown:Se(t.onMouseDown,f=>{!s&&f.button===0&&f.ctrlKey===!1?i.onValueChange(n):f.preventDefault()}),onKeyDown:Se(t.onKeyDown,f=>{s||f.target!==f.currentTarget||[" ","Enter"].includes(f.key)&&i.onValueChange(n)}),onFocus:Se(t.onFocus,()=>{const f=i.activationMode!=="manual";!u&&!s&&f&&i.onValueChange(n)})})})},"TabsTrigger")),k1="TabsContent",A1=S.forwardRef(gn(function(t,r){const{__scopeTabs:o,value:n,forceMount:s,children:a,...i}=t,c=_c(k1,o),d=kc(c.baseId,n),p=Ac(c.baseId,n),u=n===c.value,f=S.useRef(u);return S.useEffect(()=>{const h=requestAnimationFrame(()=>f.current=!1);return()=>cancelAnimationFrame(h)},[]),l.jsx(eo,{present:s||u,children:({present:h})=>l.jsx(Ie.div,{"data-state":u?"active":"inactive","data-orientation":c.orientation,role:"tabpanel","aria-labelledby":d,hidden:!h,id:p,tabIndex:0,...i,ref:r,style:{...t.style,animationDuration:f.current?"0s":void 0},children:h&&a})})},"TabsContent"));function kc(e,t){return`${e}-trigger-${t}`}gn(kc,"makeTriggerId");function Ac(e,t){return`${e}-content-${t}`}gn(Ac,"makeContentId");var D1=S1,Fh=C1,Vh=_1,Gh=A1;const zh=D1,Dc=S.forwardRef(({className:e,...t},r)=>l.jsx(Fh,{ref:r,className:m("inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",e),...t}));Dc.displayName=Fh.displayName;const Yn=S.forwardRef(({className:e,...t},r)=>l.jsx(Vh,{ref:r,className:m("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow",e),...t}));Yn.displayName=Vh.displayName;const Qn=S.forwardRef(({className:e,...t},r)=>l.jsx(Gh,{ref:r,className:m("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",e),...t}));Qn.displayName=Gh.displayName;var $1=Object.defineProperty,Kn=(e,t)=>$1(e,"name",{value:t,configurable:!0}),$c="Collapsible",[T1,Bh]=sr($c),[P1,Tc]=T1($c),I1=S.forwardRef(Kn(function(t,r){const{__scopeCollapsible:o,open:n,defaultOpen:s,disabled:a,onOpenChange:i,...c}=t,[d,p]=yr({prop:n,defaultProp:s??!1,onChange:i,caller:$c});return l.jsx(P1,{scope:o,disabled:a,contentId:br(),open:d,onOpenToggle:S.useCallback(()=>p(u=>!u),[p]),children:l.jsx(Ie.div,{"data-state":Fa(d),"data-disabled":a?"":void 0,...c,ref:r})})},"Collapsible")),O1="CollapsibleTrigger",Uh=S.forwardRef(Kn(function(t,r){const{__scopeCollapsible:o,...n}=t,s=Tc(O1,o);return l.jsx(Ie.button,{type:"button","aria-controls":s.open?s.contentId:void 0,"aria-expanded":s.open||!1,"data-state":Fa(s.open),"data-disabled":s.disabled?"":void 0,disabled:s.disabled,...n,ref:r,onClick:Se(t.onClick,s.onOpenToggle)})},"CollapsibleTrigger")),Wh="CollapsibleContent",Hh=S.forwardRef(Kn(function(t,r){const{forceMount:o,...n}=t,s=Tc(Wh,t.__scopeCollapsible);return l.jsx(eo,{present:o||s.open,children:({present:a})=>l.jsx(M1,{...n,ref:r,present:a})})},"CollapsibleContent")),M1=S.forwardRef(Kn(function(t,r){const{__scopeCollapsible:o,present:n,children:s,...a}=t,i=Tc(Wh,o),[c,d]=S.useState(n),p=S.useRef(null),u=Ue(r,p),f=S.useRef(0),h=f.current,g=S.useRef(0),y=g.current,b=i.open||c,v=S.useRef(b),N=S.useRef(void 0);return S.useEffect(()=>{const x=requestAnimationFrame(()=>v.current=!1);return()=>cancelAnimationFrame(x)},[]),ot(()=>{const x=p.current;if(x){N.current=N.current||{transitionDuration:x.style.transitionDuration,animationName:x.style.animationName},x.style.transitionDuration="0s",x.style.animationName="none";const w=x.getBoundingClientRect();f.current=w.height,g.current=w.width,v.current||(x.style.transitionDuration=N.current.transitionDuration,x.style.animationName=N.current.animationName),d(n)}},[i.open,n]),l.jsx(Ie.div,{"data-state":Fa(i.open),"data-disabled":i.disabled?"":void 0,id:i.contentId,hidden:!b,...a,ref:u,style:{"--radix-collapsible-content-height":h?`${h}px`:void 0,"--radix-collapsible-content-width":y?`${y}px`:void 0,...t.style},children:b&&s})},"CollapsibleContentImpl"));function Fa(e){return e?"open":"closed"}Kn(Fa,"getState");var jh=I1,L1=Uh,F1=Hh;const qh=jh,Yh=Uh,Qh=Hh,V1=Ma("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),Je=S.forwardRef(({className:e,variant:t,size:r,asChild:o=!1,...n},s)=>{const a=o?H0:"button";return l.jsx(a,{className:m(V1({variant:t,size:r,className:e})),ref:s,...n})});Je.displayName="Button";var G1=Object.defineProperty,Nt=(e,t)=>G1(e,"name",{value:t,configurable:!0}),[Pc,wO]=sr("Tooltip",[va]),Ic=va(),z1="TooltipProvider",B1=700,Oc="tooltip.open",[U1,Mc]=Pc(z1),W1=Nt(e=>{const{__scopeTooltip:t,delayDuration:r=B1,skipDelayDuration:o=300,disableHoverableContent:n=!1,children:s}=e,a=S.useRef(!0),i=S.useRef(!1),c=S.useRef(0);return S.useEffect(()=>{const d=c.current;return()=>window.clearTimeout(d)},[]),l.jsx(U1,{scope:t,isOpenDelayedRef:a,delayDuration:r,onOpen:S.useCallback(()=>{o<=0||(window.clearTimeout(c.current),a.current=!1)},[o]),onClose:S.useCallback(()=>{o<=0||(window.clearTimeout(c.current),c.current=window.setTimeout(()=>a.current=!0,o))},[o]),isPointerInTransitRef:i,onPointerInTransitChange:S.useCallback(d=>{i.current=d},[]),disableHoverableContent:n,children:s})},"TooltipProvider"),Lc="Tooltip",[H1,Rn]=Pc(Lc),j1=Nt(e=>{const{__scopeTooltip:t,children:r,open:o,defaultOpen:n,onOpenChange:s,disableHoverableContent:a,delayDuration:i}=e,c=Mc(Lc,e.__scopeTooltip),d=Ic(t),[p,u]=S.useState(null),[f,h]=S.useState(void 0),g=br(),y=S.useRef(0),b=a??c.disableHoverableContent,v=i??c.delayDuration,N=S.useRef(!1),[x,w]=yr({prop:o,defaultProp:n??!1,onChange:Nt(A=>{A?(c.onOpen(),document.dispatchEvent(new CustomEvent(Oc))):c.onClose(),s==null||s(A)},"onChange"),caller:Lc}),C=S.useMemo(()=>x?N.current?"delayed-open":"instant-open":"closed",[x]),E=S.useCallback(()=>{window.clearTimeout(y.current),y.current=0,N.current=!1,w(!0)},[w]),k=S.useCallback(()=>{window.clearTimeout(y.current),y.current=0,w(!1)},[w]),_=S.useCallback(()=>{window.clearTimeout(y.current),y.current=window.setTimeout(()=>{N.current=!0,w(!0),y.current=0},v)},[v,w]);S.useEffect(()=>()=>{y.current&&(window.clearTimeout(y.current),y.current=0)},[]);const D=f??g;return l.jsx(wp,{...d,children:l.jsx(H1,{scope:t,contentId:D,setContentId:h,open:x,stateAttribute:C,trigger:p,onTriggerChange:u,onTriggerEnter:S.useCallback(()=>{c.isOpenDelayedRef.current?_():E()},[c.isOpenDelayedRef,_,E]),onTriggerLeave:S.useCallback(()=>{b?k():(window.clearTimeout(y.current),y.current=0)},[k,b]),onOpen:E,onClose:k,disableHoverableContent:b,children:r})})},"Tooltip"),Kh="TooltipTrigger",q1=S.forwardRef(Nt(function(t,r){const{__scopeTooltip:o,...n}=t,s=Rn(Kh,o),a=Mc(Kh,o),i=Ic(o),c=S.useRef(null),d=Ue(r,c,s.onTriggerChange),p=S.useRef(!1),u=S.useRef(!1),f=S.useCallback(()=>p.current=!1,[]);return S.useEffect(()=>()=>document.removeEventListener("pointerup",f),[f]),l.jsx(Sp,{asChild:!0,...i,children:l.jsx(Ie.button,{"aria-describedby":s.open?s.contentId:void 0,"data-state":s.stateAttribute,...n,ref:d,onPointerMove:Se(t.onPointerMove,h=>{h.pointerType!=="touch"&&!u.current&&!a.isPointerInTransitRef.current&&(s.onTriggerEnter(),u.current=!0)}),onPointerLeave:Se(t.onPointerLeave,()=>{s.onTriggerLeave(),u.current=!1}),onPointerDown:Se(t.onPointerDown,()=>{s.open&&s.onClose(),p.current=!0,document.addEventListener("pointerup",f,{once:!0})}),onFocus:Se(t.onFocus,()=>{p.current||s.onOpen()}),onBlur:Se(t.onBlur,s.onClose),onClick:Se(t.onClick,s.onClose)})})},"TooltipTrigger")),Rh="TooltipPortal",[Y1,Q1]=Pc(Rh,{forceMount:void 0}),K1=Nt(e=>{const{__scopeTooltip:t,forceMount:r,children:o,container:n}=e,s=Rn(Rh,t);return l.jsx(Y1,{scope:t,forceMount:r,children:l.jsx(eo,{present:r||s.open,children:l.jsx(tc,{asChild:!0,container:n,children:o})})})},"TooltipPortal"),Xn="TooltipContent",R1=S.forwardRef(Nt(function(t,r){const o=Q1(Xn,t.__scopeTooltip),{forceMount:n=o.forceMount,side:s="top",...a}=t,i=Rn(Xn,t.__scopeTooltip);return l.jsx(eo,{present:n||i.open,children:i.disableHoverableContent?l.jsx(Xh,{side:s,...a,ref:r}):l.jsx(X1,{side:s,...a,ref:r})})},"TooltipContent")),X1=S.forwardRef(Nt(function(t,r){const o=Rn(Xn,t.__scopeTooltip),n=Mc(Xn,t.__scopeTooltip),s=S.useRef(null),a=Ue(r,s),[i,c]=S.useState(null),{trigger:d,onClose:p}=o,u=s.current,{onPointerInTransitChange:f}=n,h=S.useCallback(()=>{c(null),f(!1)},[f]),g=S.useCallback((y,b)=>{const v=y.currentTarget,N={x:y.clientX,y:y.clientY},x=Jh(N,v.getBoundingClientRect()),w=Zh(N,x),C=em(b.getBoundingClientRect()),E=rm([...w,...C]);c(E),f(!0)},[f]);return S.useEffect(()=>()=>h(),[h]),S.useEffect(()=>{if(d&&u){const y=Nt(v=>g(v,u),"handleTriggerLeave"),b=Nt(v=>g(v,d),"handleContentLeave");return d.addEventListener("pointerleave",y),u.addEventListener("pointerleave",b),()=>{d.removeEventListener("pointerleave",y),u.removeEventListener("pointerleave",b)}}},[d,u,g,h]),S.useEffect(()=>{if(i){const y=Nt(b=>{const v=b.target,N={x:b.clientX,y:b.clientY},x=(d==null?void 0:d.contains(v))||(u==null?void 0:u.contains(v)),w=!tm(N,i);x?h():w&&(h(),p())},"handleTrackPointerGrace");return document.addEventListener("pointermove",y),()=>document.removeEventListener("pointermove",y)}},[d,u,i,p,h]),l.jsx(Xh,{...t,ref:a})},"TooltipContentHoverable")),J1=Cf("TooltipContent"),Xh=S.forwardRef(Nt(function(t,r){const{__scopeTooltip:o,children:n,"aria-label":s,id:a,onEscapeKeyDown:i,onPointerDownOutside:c,...d}=t,p=Rn(Xn,o),u=Ic(o),{onClose:f}=p;S.useEffect(()=>(document.addEventListener(Oc,f),()=>document.removeEventListener(Oc,f)),[f]),S.useEffect(()=>{if(p.trigger){const g=Nt(y=>{y.target instanceof Node&&y.target.contains(p.trigger)&&f()},"handleScroll");return window.addEventListener("scroll",g,{capture:!0}),()=>window.removeEventListener("scroll",g,{capture:!0})}},[p.trigger,f]);const{setContentId:h}=p;return ot(()=>(h(a),()=>{h(void 0)}),[a,h]),l.jsx(Ii,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:i,onPointerDownOutside:c,onFocusOutside:g=>g.preventDefault(),onDismiss:f,children:l.jsxs(Np,{"data-state":p.stateAttribute,role:s?void 0:"tooltip",id:s?void 0:p.contentId,...u,...d,ref:r,style:{...d.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[l.jsx(J1,{children:n}),s?l.jsx(HN,{id:p.contentId,role:"tooltip",children:s}):null]})})},"TooltipContentImpl"));function Jh(e,t){const r=Math.abs(t.top-e.y),o=Math.abs(t.bottom-e.y),n=Math.abs(t.right-e.x),s=Math.abs(t.left-e.x);switch(Math.min(r,o,n,s)){case s:return"left";case n:return"right";case r:return"top";case o:return"bottom";default:throw new Error("unreachable")}}Nt(Jh,"getExitSideFromRect");function Zh(e,t,r=5){const o=[];switch(t){case"top":o.push({x:e.x-r,y:e.y+r},{x:e.x+r,y:e.y+r});break;case"bottom":o.push({x:e.x-r,y:e.y-r},{x:e.x+r,y:e.y-r});break;case"left":o.push({x:e.x+r,y:e.y-r},{x:e.x+r,y:e.y+r});break;case"right":o.push({x:e.x-r,y:e.y-r},{x:e.x-r,y:e.y+r});break}return o}Nt(Zh,"getPaddedExitPoints");function em(e){const{top:t,right:r,bottom:o,left:n}=e;return[{x:n,y:t},{x:r,y:t},{x:r,y:o},{x:n,y:o}]}Nt(em,"getPointsFromRect");function tm(e,t){const{x:r,y:o}=e;let n=!1;for(let s=0,a=t.length-1;s<t.length;a=s++){const i=t[s],c=t[a],d=i.x,p=i.y,u=c.x,f=c.y;p>o!=f>o&&r<(u-d)*(o-p)/(f-p)+d&&(n=!n)}return n}Nt(tm,"isPointInPolygon");function rm(e){const t=e.slice();return t.sort((r,o)=>r.x<o.x?-1:r.x>o.x?1:r.y<o.y?-1:r.y>o.y?1:0),om(t)}Nt(rm,"getHull");function om(e){if(e.length<=1)return e.slice();const t=[];for(let o=0;o<e.length;o++){const n=e[o];for(;t.length>=2;){const s=t[t.length-1],a=t[t.length-2];if((s.x-a.x)*(n.y-a.y)>=(s.y-a.y)*(n.x-a.x))t.pop();else break}t.push(n)}t.pop();const r=[];for(let o=e.length-1;o>=0;o--){const n=e[o];for(;r.length>=2;){const s=r[r.length-1],a=r[r.length-2];if((s.x-a.x)*(n.y-a.y)>=(s.y-a.y)*(n.x-a.x))r.pop();else break}r.push(n)}return r.pop(),t.length===1&&r.length===1&&t[0].x===r[0].x&&t[0].y===r[0].y?t:t.concat(r)}Nt(om,"getHullPresorted");var Z1=W1,e_=j1,t_=q1,r_=K1,nm=R1;const Va=Z1,Or=e_,Mr=t_,xr=S.forwardRef(({className:e,sideOffset:t=4,...r},o)=>l.jsx(r_,{children:l.jsx(nm,{ref:o,sideOffset:t,className:m("z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-tooltip-content-transform-origin]",e),...r})}));xr.displayName=nm.displayName;const Fc=S.forwardRef(({className:e,children:t,...r},o)=>l.jsx("div",{ref:o,className:m("relative overflow-hidden",e),...r,children:l.jsx("div",{className:m("h-full w-full overflow-auto rounded-[inherit]"),children:t})}));Fc.displayName="ScrollArea";const o_=S.forwardRef(({className:e,orientation:t="vertical",...r},o)=>l.jsx("div",{ref:o,className:m("flex touch-none select-none transition-colors",t==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-[1px]",t==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",e),...r,children:l.jsx("div",{className:m("relative flex-1 rounded-full bg-border")})}));o_.displayName="ScrollBar";function sm(e){return{order:99,disabled:!1,hidden:!1,...e}}function n_(e){return e.map((t,r)=>sm({...t,order:t.order??100+r}))}function am(e,t){return typeof e.disabled=="function"?e.disabled(t):e.disabled??!1}function lm(e,t){return typeof e.hidden=="function"?e.hidden(t):e.hidden??!1}const s_=({element:e,onAddElement:t,isDisabled:r=!1,disabledReason:o,wizardExists:n=!1})=>{const s=te(u=>u.setDraggedElementType),a=u=>{if(r){u.preventDefault();return}u.dataTransfer.setData("elementType",e.type),u.dataTransfer.effectAllowed="copy",s(e.type)},i=()=>{s(null)},c=()=>{r||t(e.type)},d=()=>{if(typeof e.icon=="string")return l.jsx("span",{className:m("text-lg flex-shrink-0"),children:e.icon});const u=e.icon;return l.jsx(u,{className:m("w-5 h-5 flex-shrink-0")})},p=l.jsxs("div",{draggable:!r,onDragStart:a,onDragEnd:i,onClick:c,className:m("flex items-center gap-2 p-2 bg-card border border-border rounded-md transition-all duration-150 select-none",r?"opacity-50 cursor-not-allowed":"cursor-grab hover:border-primary hover:shadow-sm active:cursor-grabbing"),children:[d(),l.jsxs("div",{className:m("flex-1 min-w-0"),children:[l.jsx("div",{className:m("text-xs font-medium text-foreground truncate"),children:e.label}),r&&l.jsx("div",{className:m("text-xs text-orange-500 truncate"),children:"Already added"})]})]});return r&&o?l.jsx(Va,{children:l.jsxs(Or,{children:[l.jsx(Mr,{asChild:!0,children:p}),l.jsx(xr,{children:l.jsx("p",{children:o})})]})}):l.jsx(Va,{children:l.jsxs(Or,{children:[l.jsx(Mr,{asChild:!0,children:p}),l.jsx(xr,{children:l.jsxs("div",{className:m("max-w-xs"),children:[l.jsx("p",{className:m("font-medium"),children:e.label}),l.jsx("p",{className:m("text-xs text-muted-foreground"),children:e.description}),l.jsx("p",{className:m("text-xs mt-1 text-muted-foreground/70"),children:n?"Drag into wizard step":"Drag or click to add"})]})})]})})},im=({label:e,elements:t,searchQuery:r,onAddElement:o,defaultExpanded:n=!1,hasWizard:s=!1,wizardExists:a=!1})=>{const[i,c]=P.useState(n),d=P.useMemo(()=>{if(!r.trim())return t;const u=r.toLowerCase();return t.filter(f=>f.label.toLowerCase().includes(u)||f.description.toLowerCase().includes(u)||f.searchKeywords&&f.searchKeywords.some(h=>h.toLowerCase().includes(u)))},[t,r]);if(r&&d.length===0)return null;const p=r?!0:i;return l.jsxs(qh,{open:p,onOpenChange:c,className:m("mb-2"),children:[l.jsx(Yh,{asChild:!0,children:l.jsxs(Je,{variant:"ghost",className:m("w-full flex items-center justify-between px-2 py-1.5 h-auto text-xs font-semibold text-muted-foreground uppercase tracking-wider hover:bg-muted"),children:[l.jsx("span",{children:e}),l.jsxs("span",{className:m("flex items-center gap-1"),children:[l.jsx(vc,{variant:"secondary",className:m("font-normal normal-case text-xs"),children:d.length}),l.jsx(mn,{className:m("h-4 w-4 transition-transform",p&&"rotate-180")})]})]})}),l.jsx(Qh,{children:l.jsx("div",{className:m("grid grid-cols-2 gap-1.5 mt-1.5"),children:d.map(u=>l.jsx(s_,{element:u,onAddElement:o,isDisabled:u.type==="pages"&&s,disabledReason:"Only one wizard can be added per form",wizardExists:a},u.type))})})]})},cm=({searchQuery:e,elements:t})=>t.some(o=>o.label.toLowerCase().includes(e.toLowerCase())||o.description.toLowerCase().includes(e.toLowerCase())||o.searchKeywords&&o.searchKeywords.some(n=>n.toLowerCase().includes(e.toLowerCase())))?null:l.jsxs("div",{className:m("text-center py-8 text-muted-foreground text-sm"),children:[l.jsx("div",{className:m("text-3xl mb-2"),children:"🔍"}),l.jsxs("p",{children:['No elements found for "',e,'"']}),l.jsx("p",{className:m("text-xs mt-1 text-muted-foreground/70"),children:"Try a different search term"})]}),a_=({sidebarTabs:e=[]})=>{const[t,r]=P.useState("fields"),[o,n]=P.useState(""),s=te(A=>A.addElement),a=te(A=>A.hasWizard),i=te(A=>A.schema),c=te(A=>A.mode),d=te(A=>A.loadSchema),p=te(A=>A.exportSchema),u=te(A=>A.resetForm),f=te(A=>A.updateFormTitle),h=te(A=>A.updateFormDescription),g=te(A=>A.updateElement),y=te(A=>A.deleteElement),b=te(A=>A.selectElement),v=te(A=>A.setMode),N=A=>{x&&A!=="pages"||s(A)},x=a(),w=P.useMemo(()=>{const A=ut.getGroups(),I=A.filter(L=>L.elements.some(F=>F.category==="field")),T=A.filter(L=>L.elements.some(F=>F.category==="page"));return{fieldGroups:I,pageGroups:T}},[]),C=P.useMemo(()=>ut.getByCategory("field"),[]),E=P.useMemo(()=>ut.getByCategory("page"),[]),k=["textInput","selection","heading","layout","special"],_=P.useMemo(()=>({schema:i,mode:c,actions:{addElement:s,loadSchema:d,exportSchema:p,resetForm:u,updateFormTitle:f,updateFormDescription:h,updateElement:g,deleteElement:y,selectElement:b,setMode:v}}),[i,c,s,d,p,u,f,h,g,y,b,v]),D=P.useMemo(()=>e.length?[...e].filter(A=>!lm(A,_)).sort((A,I)=>(A.order??99)-(I.order??99)):[],[e,_]);return l.jsxs("div",{className:m("w-72 bg-muted/50 border-r border-border flex flex-col h-full flex-shrink-0"),children:[x&&l.jsx("div",{className:m("p-2 bg-orange-50 border-b border-orange-200"),children:l.jsxs("div",{className:m("flex items-start gap-2 text-xs text-orange-700"),children:[l.jsx("span",{className:m("text-base"),children:"📑"}),l.jsxs("div",{children:[l.jsx("p",{className:m("font-medium"),children:"Wizard Mode Active"}),l.jsx("p",{className:m("text-orange-600"),children:"Drop elements inside wizard steps, not on the main canvas."})]})]})}),l.jsx("div",{className:m("p-3 border-b border-border bg-card"),children:l.jsxs("div",{className:m("relative"),children:[l.jsx(yE,{className:m("absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground")}),l.jsx(ar,{type:"text",placeholder:"Search elements...",value:o,onChange:A=>n(A.target.value),className:m("pl-9 pr-8")}),o&&l.jsx(Je,{variant:"ghost",size:"icon",className:m("absolute right-1 top-1/2 -translate-y-1/2 h-6 w-6"),onClick:()=>n(""),children:l.jsx(Wn,{className:m("h-4 w-4")})})]})}),l.jsxs(zh,{value:t,onValueChange:r,className:m("flex-1 flex flex-col min-h-0 overflow-hidden"),children:[l.jsx(Fc,{"aria-disabled":!0,children:l.jsxs(Dc,{className:m("w-full rounded-none border-b border-border bg-card h-auto p-0 flex-shrink-0"),children:[l.jsxs(Yn,{value:"fields",className:m("flex-1 rounded-none border-b-2 border-transparent data-[state=active]:border-primary data-[state=active]:bg-primary/5 py-2.5"),children:["Fields (",C.length,")"]}),l.jsxs(Yn,{value:"pages",className:m("flex-1 rounded-none border-b-2 border-transparent data-[state=active]:border-primary data-[state=active]:bg-primary/5 py-2.5"),children:["Page (",E.length,")"]}),D.map(A=>{const I=A.icon;return l.jsxs(Yn,{value:A.id,className:m("flex-1 rounded-none border-b-2 border-transparent data-[state=active]:border-primary data-[state=active]:bg-primary/5 py-2.5"),disabled:am(A,_),children:[I&&l.jsx(I,{className:m("h-3.5 w-3.5 mr-1")}),A.label]},A.id)})]})}),l.jsxs("div",{className:m("flex-1 min-h-0 relative"),children:[l.jsx(Qn,{value:"fields",className:m("absolute inset-0 mt-0 data-[state=inactive]:hidden overflow-auto"),children:l.jsxs("div",{className:m("p-3"),children:[w.fieldGroups.map(A=>l.jsx(im,{label:A.label,elements:A.elements.filter(I=>I.category==="field"),searchQuery:o,onAddElement:N,defaultExpanded:k.includes(A.id),wizardExists:x},A.id)),o&&l.jsx(cm,{searchQuery:o,elements:C})]})}),l.jsx(Qn,{value:"pages",className:m("absolute inset-0 mt-0 data-[state=inactive]:hidden overflow-auto"),children:l.jsxs("div",{className:m("p-3"),children:[w.pageGroups.map(A=>l.jsx(im,{label:A.label,elements:A.elements.filter(I=>I.category==="page"),searchQuery:o,onAddElement:N,defaultExpanded:k.includes(A.id),hasWizard:x,wizardExists:x},A.id)),o&&l.jsx(cm,{searchQuery:o,elements:E})]})}),D.map(A=>{const I=A.content;return l.jsx(Qn,{value:A.id,className:m("absolute inset-0 mt-0 data-[state=inactive]:hidden overflow-auto"),children:l.jsx(I,{..._})},A.id)})]})]})]})},l_=["shortText","longText","multiLineInput","textEditor","number","slider","rangeSlider","email","phone","url","location","password","signature","captcha","singleChoice","multipleChoice","dropdown","tags","decisionBox","toggleSwitch","singleChoiceMatrix","multipleChoiceMatrix","matrixTable","date","time","dateTime","multipleDates","dateRange","fileUpload","imageUpload","multiFileUpload","multiImageUpload","paragraph","image","link","formHeading","sectionHeading","subheading","divider","spacer","group","grid","table","repeatElement","repeatGroup","pages","submit"];function i_(e){const t=[];if(!e||typeof e!="object")return t.push({type:"error",message:"Schema must be a valid object"}),{valid:!1,errors:t};const r=e;if((!r.id||typeof r.id!="string")&&t.push({type:"error",message:'Schema must have a valid "id" field (string)'}),(!r.version||typeof r.version!="string")&&t.push({type:"error",message:'Schema must have a valid "version" field (string)'}),(!r.title||typeof r.title!="string")&&t.push({type:"error",message:'Schema must have a valid "title" field (string)'}),!Array.isArray(r.elements))return t.push({type:"error",message:'Schema must have an "elements" array'}),{valid:!1,errors:t};const o=new Set,n=new Map;r.elements.forEach((i,c)=>{const d=c_(i,c,o,n);t.push(...d)}),n.forEach((i,c)=>{i.length>1&&t.push({type:"error",message:`Duplicate field name "${c}" found in elements: ${i.join(", ")}`})});const s=new Set(o);return r.elements.forEach(i=>{if(i&&i.logic){const c=u_(i,s);t.push(...c)}}),r.elements.length===0&&t.push({type:"warning",message:"Schema has no elements"}),!r.elements.some(i=>i&&i.type==="submit")&&r.elements.length>0&&t.push({type:"warning",message:"Schema has no submit button"}),{valid:t.filter(i=>i.type==="error").length===0,errors:t}}function c_(e,t,r,o){const n=[],s=`Element at index ${t}`;if(!e||typeof e!="object")return n.push({type:"error",message:`${s}: Must be a valid object`}),n;const a=e;if(!a.id||typeof a.id!="string"?n.push({type:"error",message:`${s}: Must have a valid "id" field (string)`}):(r.has(a.id)&&n.push({type:"error",message:`${s}: Duplicate element ID "${a.id}"`}),r.add(a.id)),!a.type||typeof a.type!="string"?n.push({type:"error",message:`${s}: Must have a valid "type" field (string)`}):l_.includes(a.type)||n.push({type:"error",message:`${s}: Invalid element type "${a.type}"`}),typeof a.order!="number"&&n.push({type:"warning",elementId:a.id,message:`${s}: Missing or invalid "order" field`}),(!a.properties||typeof a.properties!="object")&&n.push({type:"warning",elementId:a.id,message:`${s}: Missing "properties" object`}),(!a.layout||typeof a.layout!="object")&&n.push({type:"warning",elementId:a.id,message:`${s}: Missing "layout" object`}),!a.attributes||typeof a.attributes!="object")n.push({type:"warning",elementId:a.id,message:`${s}: Missing "attributes" object`});else{const c=a.attributes;if(!c.name||typeof c.name!="string")n.push({type:"error",elementId:a.id,message:`${s}: Missing or invalid "attributes.name" field`});else{const d=o.get(c.name)||[];d.push(a.id),o.set(c.name,d)}}const i=d_(a);return n.push(...i),n}function d_(e){const t=[],r=e.type,o=e.config,n=e.id;return["singleChoice","multipleChoice","dropdown","tags"].includes(r)&&(!(o!=null&&o.options)||!Array.isArray(o.options)?t.push({type:"warning",elementId:n,message:`${r} element should have config.options array`}):o.options.length===0?t.push({type:"warning",elementId:n,message:`${r} element has no options defined`}):o.options.forEach((i,c)=>{if(!i||typeof i!="object")t.push({type:"error",elementId:n,message:`${r} option at index ${c} is invalid`});else{const d=i;(typeof d.label!="string"||typeof d.value!="string")&&t.push({type:"warning",elementId:n,message:`${r} option at index ${c} should have label and value strings`})}})),["singleChoiceMatrix","multipleChoiceMatrix","matrixTable"].includes(r)&&((!(o!=null&&o.matrixRows)||!Array.isArray(o.matrixRows))&&t.push({type:"warning",elementId:n,message:`${r} element should have config.matrixRows array`}),(!(o!=null&&o.matrixColumns)||!Array.isArray(o.matrixColumns))&&t.push({type:"warning",elementId:n,message:`${r} element should have config.matrixColumns array`})),r==="pages"&&(!(o!=null&&o.pagesList)||!Array.isArray(o.pagesList))&&t.push({type:"warning",elementId:n,message:"pages element should have config.pagesList array"}),(r==="slider"||r==="rangeSlider")&&o&&typeof o.min=="number"&&typeof o.max=="number"&&o.min>=o.max&&t.push({type:"error",elementId:n,message:`${r} min value must be less than max value`}),t}function u_(e,t){var s,a,i,c;const r=[],o=e.logic;if(!o)return r;const n=(d,p)=>{d&&d.forEach((u,f)=>{u.field?t.has(u.field)||r.push({type:"warning",elementId:e.id,message:`${p} rule ${f+1}: References unknown field "${u.field}"`}):r.push({type:"warning",elementId:e.id,message:`${p} rule ${f+1}: Missing field reference`}),u.operator||r.push({type:"warning",elementId:e.id,message:`${p} rule ${f+1}: Missing operator`})})};return(s=o.showWhen)!=null&&s.rules&&n(o.showWhen.rules,"showWhen"),(a=o.hideWhen)!=null&&a.rules&&n(o.hideWhen.rules,"hideWhen"),(i=o.requireWhen)!=null&&i.rules&&n(o.requireWhen.rules,"requireWhen"),(c=o.disableWhen)!=null&&c.rules&&n(o.disableWhen.rules,"disableWhen"),r}function f_(e){let t;try{t=JSON.parse(e)}catch(o){return{schema:null,validation:{valid:!1,errors:[{type:"error",message:`Invalid JSON: ${o.message}`}]}}}const r=i_(t);return{schema:r.valid?t:null,validation:r}}function p_(e){var r;const t=JSON.parse(JSON.stringify(e));return t.id||(t.id=((r=crypto.randomUUID)==null?void 0:r.call(crypto))||`form_${Date.now()}`),t.version||(t.version="1.0"),t.title||(t.title="Untitled Form"),Array.isArray(t.elements)||(t.elements=[]),t.metadata||(t.metadata={createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}),t.elements=t.elements.map((o,n)=>{var s;return o.id||(o.id=((s=crypto.randomUUID)==null?void 0:s.call(crypto))||`element_${Date.now()}_${n}`),typeof o.order!="number"&&(o.order=n),o.properties||(o.properties={}),o.layout||(o.layout={}),o.attributes||(o.attributes={name:`field_${n}`}),o.attributes.name||(o.attributes.name=`field_${n}`),o}),t.elements.forEach((o,n)=>{o.order=n}),t}function h_(e){if(e.valid&&e.errors.length===0)return"Schema is valid.";const t=e.errors.filter(n=>n.type==="error").length,r=e.errors.filter(n=>n.type==="warning").length;let o="";return t>0&&(o+=`${t} error${t!==1?"s":""}`),r>0&&(o&&(o+=", "),o+=`${r} warning${r!==1?"s":""}`),o}function dm(e){return{order:0,variant:"ghost",disabled:!1,hidden:!1,...e}}function m_(e){return e.map((t,r)=>dm({...t,order:t.order??r}))}function um(e,t){return typeof e.disabled=="function"?e.disabled(t):e.disabled??!1}function Vc(e,t){return typeof e.hidden=="function"?e.hidden(t):e.hidden??!1}class g_{constructor(){ni(this,"modes",new Map)}register(t){if(!t.id)throw new Error("Mode definition must have an id");if(!t.label)throw new Error(`Mode "${t.id}" must have a label`);if(!t.icon)throw new Error(`Mode "${t.id}" must have an icon`);if(!t.renderContent)throw new Error(`Mode "${t.id}" must have a renderContent function`);if(this.modes.has(t.id)){console.warn(`Mode "${t.id}" is already registered. Use modeRegistry.unregister("${t.id}") first or manage registration order.`);return}this.modes.set(t.id,t)}get(t){return this.modes.get(t)}has(t){return this.modes.has(t)}getAll(){return Array.from(this.modes.values()).sort((t,r)=>(t.order??50)-(r.order??50))}getVisible(){return this.getAll().filter(t=>!t.hidden)}unregister(t){return this.modes.delete(t)}clear(){this.modes.clear()}}const Kt=new g_;function b_(e){Kt.register(e)}function y_(e){for(const t of e)Kt.register(t)}function v_(e){return Kt.unregister(e)}function x_(e){return Kt.get(e)}function w_(e){return Kt.has(e)}const Bo=({action:e,context:t})=>{const r=e.icon,o=um(e,t),n=async()=>{o||await e.onClick(t)},s=m(e.variant==="destructive"?"text-destructive hover:text-destructive hover:bg-destructive/10":"");return l.jsxs(Or,{children:[l.jsx(Mr,{asChild:!0,children:l.jsx(Je,{variant:"ghost",size:"icon",onClick:n,disabled:o,className:s,children:l.jsx(r,{className:m("h-5 w-5")})})}),l.jsx(xr,{children:l.jsx("p",{children:e.label})})]})},S_=({schema:e,canUndo:t,canRedo:r,onUndo:o,onRedo:n,onExport:s,exportSchema:a,onImport:i,onReset:c,mode:d,onModeChange:p,toolbarConfig:u})=>{const f=P.useRef(null),h=P.useMemo(()=>({schema:e,mode:d,canUndo:t,canRedo:r,actions:{undo:o,redo:n,loadSchema:i,exportSchema:a,setMode:p,resetForm:c}}),[e,d,t,r,o,n,i,a,p,c]),g=()=>{var E;(E=f.current)==null||E.click()},y=E=>{var _;const k=(_=E.target.files)==null?void 0:_[0];if(k){const D=new FileReader;D.onload=A=>{var I;try{const T=(I=A.target)==null?void 0:I.result,{schema:L,validation:F}=f_(T);if(!F.valid){const G=h_(F),z=F.errors.filter(V=>V.type==="error").slice(0,5).map(V=>`• ${V.message}`).join(`
172
+ `);if(window.confirm(`Schema validation failed (${G}):
173
173
 
174
- ${H}
174
+ ${z}
175
175
 
176
- Would you like to attempt to import anyway? The schema will be sanitized.`)){const G=JSON.parse(O),z=fE(G);i(z)}return}const re=V.errors.filter(K=>K.type==="warning");re.length>0&&console.warn("Schema import warnings:",re),i(F)}catch(O){console.error("Failed to import schema:",O),alert("Invalid JSON file. Please select a valid form schema.")}},T.readAsText(M)}h.current&&(h.current.value="")},b=new Set((u==null?void 0:u.hideBuiltinActions)??[]);(u==null?void 0:u.showUndoRedo)===!1&&(b.add("undo"),b.add("redo")),(u==null?void 0:u.showModeToggle)===!1&&(b.add("design-mode"),b.add("preview-mode")),(u==null?void 0:u.showImportExport)===!1&&(b.add("import"),b.add("export")),(u==null?void 0:u.showReset)===!1&&b.add("reset");const C=new Map,w=(u==null?void 0:u.actions)??[];w.forEach(E=>{E.override&&C.set(E.override,E)});const x=D.useMemo(()=>{const E={left:[],center:[],right:[]};return w.filter(M=>!M.override&&!Zi(M,m)).forEach(M=>{E[M.position].push(M)}),Object.values(E).forEach(M=>{M.sort((k,T)=>(k.order??0)-(T.order??0))}),E},[w,m]),S=E=>!(b.has(E)||C.has(E)),N=(E,M)=>{if(b.has(E))return null;const k=C.get(E);return k&&!Zi(k,m)?l.jsx(wo,{action:k,context:m},E):M()};return l.jsx(as,{children:l.jsxs("div",{className:p("flex items-center justify-between px-4 py-2 bg-card border-b border-border"),children:[l.jsxs("div",{className:p("flex items-center gap-1"),children:[x.left.filter(E=>(E.order??0)<0).map(E=>l.jsx(wo,{action:E,context:m},E.id)),N("undo",()=>S("undo")?l.jsxs(vr,{children:[l.jsx(xr,{asChild:!0,children:l.jsx(Ze,{variant:"ghost",size:"icon",onClick:o,disabled:!t,children:l.jsx(yS,{className:p("h-5 w-5")})})}),l.jsx(sr,{children:l.jsx("p",{children:"Undo (⌘Z)"})})]},"undo"):null),N("redo",()=>S("redo")?l.jsxs(vr,{children:[l.jsx(xr,{asChild:!0,children:l.jsx(Ze,{variant:"ghost",size:"icon",onClick:n,disabled:!r,children:l.jsx(mS,{className:p("h-5 w-5")})})}),l.jsx(sr,{children:l.jsx("p",{children:"Redo (⌘⇧Z)"})})]},"redo"):null),x.left.filter(E=>(E.order??0)>=0).map(E=>l.jsx(wo,{action:E,context:m},E.id))]}),l.jsxs("div",{className:p("flex items-center gap-2"),children:[x.center.filter(E=>(E.order??0)<0).map(E=>l.jsx(wo,{action:E,context:m},E.id)),(u==null?void 0:u.showModeToggle)!==!1&&Vt.getVisible().length>0&&l.jsx("div",{className:p("flex items-center bg-muted rounded-lg p-1"),children:Vt.getVisible().map(E=>{const M=`${E.id}-mode`;if(b.has(M))return null;const k=E.icon,T=d===E.id;return l.jsxs(vr,{children:[l.jsx(xr,{asChild:!0,children:l.jsx(Ze,{variant:T?"secondary":"ghost",size:"icon",onClick:()=>f(E.id),className:p(T&&"bg-background shadow-sm"),children:l.jsx(k,{className:p("h-5 w-5")})})}),l.jsx(sr,{children:l.jsx("p",{children:E.description??E.label})})]},E.id)})}),x.center.filter(E=>(E.order??0)>=0).map(E=>l.jsx(wo,{action:E,context:m},E.id))]}),l.jsxs("div",{className:p("flex items-center gap-1"),children:[x.right.filter(E=>(E.order??0)<0).map(E=>l.jsx(wo,{action:E,context:m},E.id)),l.jsx("input",{ref:h,type:"file",accept:".json",onChange:y,className:p("hidden")}),N("import",()=>S("import")?l.jsxs(vr,{children:[l.jsx(xr,{asChild:!0,children:l.jsx(Ze,{variant:"ghost",size:"icon",onClick:g,children:l.jsx(vS,{className:p("h-5 w-5")})})}),l.jsx(sr,{children:l.jsx("p",{children:"Import"})})]},"import"):null),N("export",()=>S("export")?l.jsxs(vr,{children:[l.jsx(xr,{asChild:!0,children:l.jsx(Ze,{variant:"ghost",size:"icon",onClick:a,children:l.jsx(pS,{className:p("h-5 w-5")})})}),l.jsx(sr,{children:l.jsx("p",{children:"Export"})})]},"export"):null),N("reset",()=>S("reset")?l.jsxs(vr,{children:[l.jsx(xr,{asChild:!0,children:l.jsx(Ze,{variant:"ghost",size:"icon",className:p("text-destructive hover:text-destructive hover:bg-destructive/10"),onClick:c,children:l.jsx(Ti,{className:p("h-5 w-5")})})}),l.jsx(sr,{children:l.jsx("p",{children:"Reset"})})]},"reset"):null),x.right.filter(E=>(E.order??0)>=0).map(E=>l.jsx(wo,{action:E,context:m},E.id))]})]})})},En=({containerId:e,stepId:t,label:r="Drop elements here",children:o,isEmpty:n=!0})=>{const[a,s]=D.useState(!1),i=D.useRef(null),c=R(m=>m.addElementToContainer),d=R(m=>m.setDraggedElementType),f=m=>{m.preventDefault();const y=m.currentTarget.querySelectorAll("[data-drop-zone]");for(const b of y){const C=b.getBoundingClientRect();if(m.clientX>=C.left&&m.clientX<=C.right&&m.clientY>=C.top&&m.clientY<=C.bottom){s(!1);return}}m.stopPropagation(),s(!0)},u=m=>{m.preventDefault();const g=m.relatedTarget,y=m.currentTarget;if(g&&y.contains(g)){const b=g.closest("[data-drop-zone]");b&&b!==y&&s(!1);return}m.stopPropagation(),s(!1)},h=m=>{m.preventDefault();const y=m.currentTarget.querySelectorAll("[data-drop-zone]");for(const C of y){const w=C.getBoundingClientRect();if(m.clientX>=w.left&&m.clientX<=w.right&&m.clientY>=w.top&&m.clientY<=w.bottom){s(!1);return}}m.stopPropagation(),s(!1);const b=m.dataTransfer.getData("elementType");b&&(c(b,e,t),d(null))};return l.jsx("div",{ref:i,"data-drop-zone":e,"data-step-id":t,onDragOver:f,onDragLeave:u,onDrop:h,className:p("min-h-[60px] rounded transition-all",a?"border-2 border-blue-400 border-dashed bg-blue-50":n?"border-2 border-dashed border-gray-300 bg-gray-50/50":"border border-dashed border-gray-200"),style:{pointerEvents:"auto"},children:n?l.jsx("div",{className:p("flex items-center justify-center h-full min-h-[60px] text-gray-400 text-sm pointer-events-none"),children:a?"Release to drop":r}):l.jsx("div",{className:p("space-y-2 p-2"),children:o})})},ih=e=>{const t=xf(e);if(!t)return"📋";if(typeof t=="string")return t;const r=t;return l.jsx(r,{className:p("w-4 h-4 inline-block")})},ss=({element:e,isSelected:t,isHovered:r,onSelect:o,onHover:n,onDelete:a})=>{const s=()=>e.type==="group"?l.jsx(ch,{element:e}):e.type==="grid"?l.jsx(dh,{element:e}):e.type==="repeatGroup"?l.jsx(uh,{element:e}):l.jsx(Za,{element:e,isSelected:t}),i=e.type==="group"||e.type==="grid"||e.type==="repeatGroup";return l.jsxs("div",{onClick:c=>{c.stopPropagation(),o()},onMouseEnter:()=>n(!0),onMouseLeave:()=>n(!1),className:p("relative p-3 rounded-lg border transition-all",i?"cursor-default":"cursor-pointer",t?"border-blue-500 bg-blue-50/50 shadow-sm":r?"border-blue-300 bg-gray-50":"border-gray-200 hover:border-gray-300"),children:[(t||r)&&l.jsxs("div",{className:p("absolute -top-2 left-2 px-1.5 py-0.5 bg-blue-500 text-white text-xs rounded-full shadow-sm flex items-center gap-1"),children:[ih(e.type)," ",Mi(e.type)]}),(t||r)&&l.jsx("button",{onClick:c=>{c.stopPropagation(),a()},className:p("absolute -top-2 right-2 w-5 h-5 bg-red-500 text-white rounded-full flex items-center justify-center text-xs hover:bg-red-600 shadow-sm"),children:"×"}),s()]})},SE=({element:e,index:t,isSelected:r,isHovered:o,onSelect:n,onHover:a,onDelete:s,onDuplicate:i,onDragStart:c,onDragOver:d,onDragEnd:f,isDragTarget:u})=>{const h=()=>e.type==="group"?l.jsx(ch,{element:e}):e.type==="grid"?l.jsx(dh,{element:e}):e.type==="repeatGroup"?l.jsx(uh,{element:e}):e.type==="pages"?l.jsx(NE,{element:e}):l.jsx(Za,{element:e,isSelected:r}),m=b=>{b.dataTransfer.effectAllowed="move",b.dataTransfer.setData("elementId",e.id),c(t)},g=b=>{b.preventDefault(),b.dataTransfer.dropEffect="move",d(t)},y=()=>{f()};return l.jsxs("div",{draggable:!0,onDragStart:m,onDragOver:g,onDragEnd:y,onClick:n,onMouseEnter:()=>a(!0),onMouseLeave:()=>a(!1),className:p("relative p-4 rounded-lg border-2 transition-all cursor-grab active:cursor-grabbing",u?"border-blue-500 border-dashed bg-blue-50":r?"border-blue-500 bg-blue-50/30 shadow-sm":o?"border-blue-300 bg-gray-50/50":"border-gray-200 bg-white hover:border-gray-300"),children:[u&&l.jsx("div",{className:p("absolute -top-1 left-0 right-0 h-0.5 bg-blue-500 rounded")}),(r||o)&&l.jsxs("div",{className:p("absolute -top-3 left-3 px-2 py-0.5 bg-blue-500 text-white text-xs rounded-full shadow-sm flex items-center gap-1"),children:[ih(e.type)," ",Mi(e.type)]}),(r||o)&&l.jsxs("div",{className:p("absolute -top-3 right-3 flex gap-1"),children:[l.jsx("button",{onClick:b=>{b.stopPropagation(),i()},className:p("p-1 bg-white border border-gray-200 rounded shadow-sm hover:bg-gray-50 text-xs"),title:"Duplicate",children:"📋"}),l.jsx("button",{onClick:b=>{b.stopPropagation(),s()},className:p("p-1 bg-white border border-gray-200 rounded shadow-sm hover:bg-red-50 hover:border-red-200 text-xs"),title:"Delete",children:"🗑️"})]}),h(),(r||o)&&l.jsxs("div",{className:p("absolute left-1 top-1/2 -translate-y-1/2 flex flex-col gap-0.5 cursor-grab"),title:"Drag to reorder",children:[l.jsx("div",{className:p("w-4 h-0.5 bg-gray-400 rounded")}),l.jsx("div",{className:p("w-4 h-0.5 bg-gray-400 rounded")}),l.jsx("div",{className:p("w-4 h-0.5 bg-gray-400 rounded")})]})]})},ch=({element:e})=>{var f;const t=e.properties.label||"Group",r=e.properties.description,o=R(u=>u.schema.elements),n=R(u=>u.selectedElementId),a=R(u=>u.hoveredElementId),s=R(u=>u.selectElement),i=R(u=>u.setHoveredElementId),c=R(u=>u.deleteElement),d=o.filter(u=>u.parentId===e.id).sort((u,h)=>u.order-h.order);return l.jsxs("div",{className:p("border border-gray-200 rounded-lg overflow-hidden"),style:{padding:((f=e.config)==null?void 0:f.padding)||16},children:[l.jsxs("div",{className:p("mb-3"),children:[l.jsx("h3",{className:p("font-medium text-gray-800"),children:t}),r&&l.jsx("p",{className:p("text-sm text-gray-500"),children:r})]}),l.jsx(En,{containerId:e.id,label:"Drop elements into this group",isEmpty:d.length===0,children:d.map(u=>l.jsx(ss,{element:u,isSelected:n===u.id,isHovered:a===u.id,onSelect:()=>s(u.id),onHover:h=>i(h?u.id:null),onDelete:()=>c(u.id)},u.id))})]})},dh=({element:e})=>{var f,u;const t=e.properties.label,r=((f=e.config)==null?void 0:f.gridColumns)||2,o=R(h=>h.schema.elements),n=R(h=>h.selectedElementId),a=R(h=>h.hoveredElementId),s=R(h=>h.selectElement),i=R(h=>h.setHoveredElementId),c=R(h=>h.deleteElement),d=o.filter(h=>h.parentId===e.id).sort((h,m)=>h.order-m.order);return l.jsxs("div",{className:p("border border-gray-200 rounded-lg p-4"),children:[t&&l.jsx("div",{className:p("mb-3"),children:l.jsx("h3",{className:p("font-medium text-gray-800"),children:t})}),l.jsx("div",{className:p("grid"),style:{gridTemplateColumns:`repeat(${r}, 1fr)`,gap:((u=e.config)==null?void 0:u.gridGap)||16},children:d.length===0?Array.from({length:r}).map((h,m)=>l.jsx(En,{containerId:e.id,label:`Column ${m+1}`},m)):d.map(h=>l.jsx(ss,{element:h,isSelected:n===h.id,isHovered:a===h.id,onSelect:()=>s(h.id),onHover:m=>i(m?h.id:null),onDelete:()=>c(h.id)},h.id))}),d.length>0&&d.length<r*3&&l.jsx("div",{className:p("mt-3"),children:l.jsx(En,{containerId:e.id,label:"Add more elements"})})]})},uh=({element:e})=>{var f,u,h;const t=e.properties.label||"Repeat Group",r=e.properties.description,o=R(m=>m.schema.elements),n=R(m=>m.selectedElementId),a=R(m=>m.hoveredElementId),s=R(m=>m.selectElement),i=R(m=>m.setHoveredElementId),c=R(m=>m.deleteElement),d=o.filter(m=>m.parentId===e.id).sort((m,g)=>m.order-g.order);return l.jsxs("div",{className:p("border border-gray-200 rounded-lg p-4"),children:[l.jsxs("div",{className:p("mb-3"),children:[l.jsxs("div",{className:p("flex items-center gap-2"),children:[l.jsx("span",{className:p("text-lg"),children:"🔄"}),l.jsx("h3",{className:p("font-medium text-gray-800"),children:t})]}),r&&l.jsx("p",{className:p("text-sm text-gray-500"),children:r})]}),l.jsxs("div",{className:p("border border-dashed border-gray-300 rounded-lg p-3 bg-gray-50/50"),children:[l.jsx("div",{className:p("text-xs text-gray-500 mb-2 font-medium"),children:"📋 Item Template (will repeat)"}),l.jsx(En,{containerId:e.id,label:"Drop elements to create the repeatable template",isEmpty:d.length===0,children:d.map(m=>l.jsx(ss,{element:m,isSelected:n===m.id,isHovered:a===m.id,onSelect:()=>s(m.id),onHover:g=>i(g?m.id:null),onDelete:()=>c(m.id)},m.id))})]}),l.jsx("div",{className:p("mt-3"),children:l.jsxs("button",{disabled:!0,className:p("text-sm text-blue-600 hover:text-blue-700 flex items-center gap-1 opacity-70"),children:["➕ ",((f=e.config)==null?void 0:f.addButtonText)||"Add Item"]})}),l.jsxs("div",{className:p("mt-3 text-xs text-gray-500 bg-gray-100 rounded p-2"),children:["ℹ️ Min: ",((u=e.config)==null?void 0:u.minItems)||1,", Max:"," ",((h=e.config)==null?void 0:h.maxItems)||10," items"]})]})},NE=({element:e})=>{var S,N,E,M;const t=R(k=>k.schema.elements),r=R(k=>k.selectedElementId),o=R(k=>k.hoveredElementId),n=R(k=>k.selectElement),a=R(k=>k.setHoveredElementId),s=R(k=>k.deleteElement),i=R(k=>k.addWizardStep),c=R(k=>k.updateWizardStep),d=R(k=>k.removeWizardStep),f=R(k=>k.setActiveWizardStep),u=((S=e.config)==null?void 0:S.steps)||[],h=((N=e.config)==null?void 0:N.activeStepId)||((E=u[0])==null?void 0:E.id),m=u.findIndex(k=>k.id===h),g=u[m],y=m===u.length-1,b=t.filter(k=>{var T;return k.parentId?k.parentId===`${e.id}:${h}`||k.parentId===e.id&&((T=k.config)==null?void 0:T.wizardStepId)===h:!1}).sort((k,T)=>k.order-T.order),C=()=>{const k={id:ha(),label:`Step ${u.length+1}`,description:""};i(e.id,k)},w=()=>{m>0&&f(e.id,u[m-1].id)},x=()=>{m<u.length-1&&f(e.id,u[m+1].id)};return l.jsxs("div",{className:p("border border-gray-200 rounded-lg overflow-hidden"),children:[l.jsxs("div",{className:p("bg-gray-50 border-b border-gray-200 p-3"),children:[l.jsxs("div",{className:p("flex items-center gap-2 mb-2"),children:[l.jsx("span",{className:p("text-lg"),children:"📑"}),l.jsx("h3",{className:p("font-medium text-gray-800"),children:e.properties.label||"Multi-Step Form"})]}),l.jsxs("div",{className:p("flex gap-1 flex-wrap"),children:[u.map((k,T)=>l.jsxs("button",{onClick:()=>f(e.id,k.id),className:p("px-3 py-1.5 text-sm rounded transition-colors",k.id===h?"bg-blue-500 text-white":"bg-white border border-gray-200 hover:bg-gray-100"),children:[T+1,". ",k.label]},k.id)),l.jsx("button",{onClick:C,className:p("px-3 py-1.5 text-sm border border-dashed border-gray-300 rounded hover:bg-gray-100 text-gray-500"),children:"+ Add Step"})]}),((M=e.config)==null?void 0:M.showProgressBar)&&l.jsxs("div",{className:p("mt-3"),children:[l.jsx("div",{className:p("h-2 bg-gray-200 rounded-full overflow-hidden"),children:l.jsx("div",{className:p("h-full bg-blue-500 transition-all"),style:{width:`${(m+1)/u.length*100}%`}})}),l.jsxs("div",{className:p("text-xs text-gray-500 mt-1"),children:["Step ",m+1," of ",u.length]})]})]}),l.jsx("div",{className:p("p-4"),children:g&&l.jsxs(l.Fragment,{children:[l.jsxs("div",{className:p("mb-4"),children:[l.jsx("input",{type:"text",value:g.label,onChange:k=>c(e.id,h,{label:k.target.value}),className:p("text-lg font-semibold text-gray-800 border-none bg-transparent w-full focus:outline-none focus:ring-0"),placeholder:"Step title"}),l.jsx("input",{type:"text",value:g.description||"",onChange:k=>c(e.id,h,{description:k.target.value}),className:p("text-sm text-gray-500 border-none bg-transparent w-full focus:outline-none focus:ring-0"),placeholder:"Step description (optional)"})]}),l.jsx(En,{containerId:e.id,stepId:h,label:"Drop elements for this step",isEmpty:b.length===0,children:b.map(k=>l.jsx(ss,{element:k,isSelected:r===k.id,isHovered:o===k.id,onSelect:()=>n(k.id),onHover:T=>a(T?k.id:null),onDelete:()=>s(k.id)},k.id))}),l.jsxs("div",{className:p("flex justify-between mt-4 pt-4 border-t border-gray-200"),children:[l.jsx("button",{disabled:m===0,onClick:w,className:p("px-4 py-2 text-sm border border-gray-300 rounded hover:bg-gray-50 disabled:opacity-50 disabled:cursor-not-allowed"),children:"← Previous"}),l.jsxs("div",{className:p("flex gap-2"),children:[u.length>1&&l.jsx("button",{onClick:()=>d(e.id,h),className:p("px-3 py-2 text-sm text-red-600 hover:bg-red-50 rounded"),children:"🗑️ Delete Step"}),l.jsx("button",{disabled:y,onClick:x,className:p("px-4 py-2 text-sm bg-blue-500 text-white rounded hover:bg-blue-600 disabled:opacity-50 disabled:cursor-not-allowed"),children:"Next →"})]})]})]})}),l.jsx("div",{className:p("px-4 pb-4"),children:l.jsxs("div",{className:p("text-xs text-gray-500 bg-gray-50 rounded p-2"),children:["ℹ️ This wizard has ",u.length," step(s). Click on step tabs to switch between them and add elements. The Submit button will only appear on the last step during form submission."]})})]})},EE=()=>l.jsxs("div",{className:p("flex flex-col items-center justify-center h-full text-muted-foreground"),children:[l.jsx("div",{className:p("text-6xl mb-4"),children:"📝"}),l.jsx("h3",{className:p("text-lg font-medium text-foreground/70 mb-2"),children:"Start Building Your Form"}),l.jsx("p",{className:p("text-sm text-center max-w-md"),children:"Drag elements from the left sidebar or click them to add to your form. Click on any element to configure its properties."})]}),kE=({toolbarConfig:e})=>{const t=R($=>$.schema),r=R($=>$.selectedElementId),o=R($=>$.hoveredElementId),n=R($=>$.addElement),a=R($=>$.selectElement),s=R($=>$.deleteElement),i=R($=>$.duplicateElement),c=R($=>$.reorderElements),d=R($=>$.setHoveredElementId),f=R($=>$.undo),u=R($=>$.redo),h=R($=>$.canUndo),m=R($=>$.canRedo),g=R($=>$.exportSchema),y=R($=>$.loadSchema),b=R($=>$.resetForm),C=R($=>$.mode),w=R($=>$.setMode),x=R($=>$.hasWizard),[S,N]=D.useState(!1),[E,M]=D.useState(null),[k,T]=D.useState(null),A=x(),L=$=>{if($.preventDefault(),A){$.dataTransfer.dropEffect="none";return}$.dataTransfer.dropEffect="copy",N(!0)},O=$=>{$.currentTarget.contains($.relatedTarget)||N(!1)},F=$=>{if($.preventDefault(),N(!1),A)return;const q=$.dataTransfer.getData("elementType");q&&n(q)},V=()=>{const $=g(),q=new Blob([JSON.stringify($,null,2)],{type:"application/json"}),xe=URL.createObjectURL(q),oe=document.createElement("a");oe.href=xe,oe.download=`${t.title.replace(/\s+/g,"-").toLowerCase()}-schema.json`,document.body.appendChild(oe),oe.click(),document.body.removeChild(oe),URL.revokeObjectURL(xe)},re=$=>{y($)},K=()=>{(t.elements.length===0||window.confirm("Are you sure you want to reset the form? This will delete all elements."))&&b()},H=$=>{$.target===$.currentTarget&&a(null)},ee=[...t.elements].filter($=>!$.parentId).sort(($,q)=>$.order-q.order),G=$=>{M($)},z=$=>{E!==null&&E!==$&&T($)},Ce=()=>{E!==null&&k!==null&&E!==k&&c(E,k),M(null),T(null)};return l.jsxs("div",{className:p("flex-1 flex flex-col bg-gray-100 overflow-hidden"),children:[l.jsx(CE,{schema:t,canUndo:h(),canRedo:m(),onUndo:f,onRedo:u,onExport:V,exportSchema:g,onImport:re,onReset:K,mode:C,onModeChange:w,toolbarConfig:e}),l.jsx("div",{className:p("flex-1 overflow-auto p-4",S&&!A?"bg-blue-50":""),onDragOver:L,onDragLeave:O,onDrop:F,onClick:H,children:l.jsxs("div",{className:p("max-w-4xl mx-auto p-2"),children:[l.jsx("div",{className:p("mb-0 text-center"),children:t.description&&l.jsx("p",{className:p("text-gray-500"),children:t.description})}),l.jsx("div",{className:p("bg-white rounded-xl shadow-sm border-2 transition-colors",S&&!A?"border-blue-400 border-dashed":"border-gray-200"),children:ee.length===0?l.jsx("div",{className:p("p-2"),children:l.jsx(EE,{})}):l.jsx("div",{className:p("p-4 space-y-2"),children:ee.map(($,q)=>l.jsx(SE,{element:$,index:q,isSelected:r===$.id,isHovered:o===$.id,onSelect:()=>a($.id),onHover:xe=>d(xe?$.id:null),onDelete:()=>s($.id),onDuplicate:()=>i($.id),onDragStart:G,onDragOver:z,onDragEnd:Ce,isDragTarget:k===q},$.id))})}),S&&!A&&l.jsx("div",{className:p("mt-4 p-4 border-2 border-dashed border-blue-400 rounded-lg text-center text-blue-500 bg-blue-50/50"),children:"Drop element here"}),A&&S&&l.jsx("div",{className:p("mt-4 p-4 border-2 border-dashed border-orange-400 rounded-lg text-center text-orange-600 bg-orange-50/50"),children:"⚠️ Drop elements inside wizard steps, not here"})]})})]})},Ri=[48,1632,1776,1984,2406,2534,2662,2790,2918,3046,3174,3302,3430,3558,3664,3792,3872,4160,4240,6112,6160,6470,6608,6784,6800,6992,7088,7232,7248,42528,43216,43264,43472,43504,43600,44016,65296,66720,68912,68928,69734,69872,69942,70096,70384,70736,70864,71248,71360,71376,71386,71472,71904,72016,72688,72784,73040,73120,73184,73552,90416,92768,92864,93008,93552,118e3,120782,120792,120802,120812,120822,123200,123632,124144,124401,125264,130032],_E=e=>e.replace(new RegExp("\\p{Nd}","gu"),t=>{const r=t.codePointAt(0);if(r<=57)return t;let o=0,n=Ri.length-1;for(;o<n;){const a=o+n+1>>>1;Ri[a]<=r?o=a:n=a-1}return String(r-Ri[o])}),DE={"⁰":"0","¹":"1","²":"2","³":"3","⁴":"4","⁵":"5","⁶":"6","⁷":"7","⁸":"8","⁹":"9","₀":"0","₁":"1","₂":"2","₃":"3","₄":"4","₅":"5","₆":"6","₇":"7","₈":"8","₉":"9"},AE=/[⁰¹²³⁴⁵⁶⁷⁸⁹₀₁₂₃₄₅₆₇₈₉]/g,TE={"¼":"1/4","½":"1/2","¾":"3/4","⅐":"1/7","⅑":"1/9","⅒":"1/10","⅓":"1/3","⅔":"2/3","⅕":"1/5","⅖":"2/5","⅗":"3/5","⅘":"4/5","⅙":"1/6","⅚":"5/6","⅛":"1/8","⅜":"3/8","⅝":"5/8","⅞":"7/8","⅟":"1/"},IE=/^(?=[-+]?\s*\.\d|[-+]?\s*\d)([-+])?\s*((?:\d(?:[,_]\d|\d)*)*)(([eE][+-]?\d(?:[,_]\d|\d)*)?|\.\d(?:[,_]\d|\d)*([eE][+-]?\d(?:[,_]\d|\d)*)?|(\s+\d(?:[,_]\d|\d)*\s*)?\s*\/\s*\d(?:[,_]\d|\d)*)?$/,PE=/^(?=[-+]?\s*\.\d|[-+]?\s*\d)([-+])?\s*((?:\d(?:[,_]\d|\d)*)*)(([eE][+-]?\d(?:[,_]\d|\d)*)?|\.\d(?:[,_]\d|\d)*([eE][+-]?\d(?:[,_]\d|\d)*)?|(\s+\d(?:[,_]\d|\d)*\s*)?\s*\/\s*\d(?:[,_]\d|\d)*)?(\s*[^.\d/].*)?/,ME=/([¼½¾⅐⅑⅒⅓⅔⅕⅖⅗⅘⅙⅚⅛⅜⅝⅞⅟}])/g,ls={MMM:3e3,MM:2e3,M:1e3,CM:900,DCCC:800,DCC:700,DC:600,D:500,CD:400,CCC:300,CC:200,C:100,XC:90,LXXX:80,LXX:70,LX:60,L:50,XL:40,XXX:30,XX:20,XII:12,XI:11,X:10,IX:9,VIII:8,VII:7,VI:6,V:5,IV:4,III:3,II:2,I:1},OE={"Ⅰ":"I","Ⅱ":"II","Ⅲ":"III","Ⅳ":"IV","Ⅴ":"V","Ⅵ":"VI","Ⅶ":"VII","Ⅷ":"VIII","Ⅸ":"IX","Ⅹ":"X","Ⅺ":"XI","Ⅻ":"XII","Ⅼ":"L","Ⅽ":"C","Ⅾ":"D","Ⅿ":"M","ⅰ":"I","ⅱ":"II","ⅲ":"III","ⅳ":"IV","ⅴ":"V","ⅵ":"VI","ⅶ":"VII","ⅷ":"VIII","ⅸ":"IX","ⅹ":"X","ⅺ":"XI","ⅻ":"XII","ⅼ":"L","ⅽ":"C","ⅾ":"D","ⅿ":"M"},LE=/([ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫⅬⅭⅮⅯⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹⅺⅻⅼⅽⅾⅿ])/gi,FE=/^(?=[MDCLXVI])(M{0,3})(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})$/i,ph={round:3,allowTrailingInvalid:!1,romanNumerals:!1,bigIntOnOverflow:!1,decimalSeparator:".",allowCurrency:!1,percentage:!1,verbose:!1},$E=e=>{const t=`${e}`.replace(LE,(i,c)=>OE[c]).toUpperCase(),r=FE.exec(t);if(!r)return NaN;const[,o,n,a,s]=r;return(ls[o]??0)+(ls[n]??0)+(ls[a]??0)+(ls[s]??0)},GE=/^\s*\//,VE=new RegExp("^([-+]?)\\s*(\\p{Sc}+)\\s*","u"),zE=new RegExp("\\s*(\\p{Sc}+)$","u"),BE=/%$/;function UE(e,t=ph){const r={...ph,...t},o=typeof e=="string"?e:`${e}`;let n,a,s,i,c,d,f,u;const h=A=>{const L={value:A,input:o};return n&&(L.currencyPrefix=n),a&&(L.currencySuffix=a),s&&(L.percentageSuffix=s),i&&(L.trailingInvalid=i),c&&(L.sign=c),d!==void 0&&(L.whole=d),f!==void 0&&(L.numerator=f),u!==void 0&&(L.denominator=u),L},m=A=>r.verbose?h(A):A;if(typeof e=="number"||typeof e=="bigint")return m(e);let g=NaN,y=o;if(r.allowCurrency){const A=VE.exec(y);A&&A[2]&&(n=A[2],y=(A[1]||"")+y.slice(A[0].length))}if(r.allowCurrency){const A=zE.exec(y);A&&(a=A[1],y=y.slice(0,-A[0].length))}r.percentage&&BE.test(y)&&(s=!0,y=y.slice(0,-1));const b=_E(y.replace(ME,(A,L)=>` ${TE[L]}`).replace(AE,A=>DE[A]).replace("⁄","/").trim());if(b.length===0)return m(NaN);let C=b;if(r.decimalSeparator===","){const A=(b.match(/,/g)||[]).length;if(A===1)C=b.replaceAll(".","_").replace(",",".");else if(A>1){if(!r.allowTrailingInvalid)return m(NaN);const L=b.indexOf(","),O=b.indexOf(",",L+1),F=b.substring(0,O).replaceAll(".","_").replace(",","."),V=b.substring(O+1);C=r.allowTrailingInvalid?F+"&"+V:F}else C=b.replaceAll(".","_")}const w=PE.exec(C);if(!w)return m(r.romanNumerals?$E(b):NaN);const x=(w[7]||C.slice(w[0].length)).trim();if(x&&(i=x,!r.allowTrailingInvalid))return m(NaN);const[,S,N,E]=w;(S==="-"||S==="+")&&(c=S);const M=N.replaceAll(",","").replaceAll("_",""),k=E==null?void 0:E.replaceAll(",","").replaceAll("_","");if(!M&&k&&k.startsWith("."))g=0;else{if(r.bigIntOnOverflow){const A=BigInt(S==="-"?`-${M}`:M);if(A>BigInt(Number.MAX_SAFE_INTEGER)||A<BigInt(Number.MIN_SAFE_INTEGER))return m(A)}g=parseInt(M)}if(!k)return g=S==="-"?g*-1:g,s&&r.percentage!=="number"&&(g=g/100),m(g);const T=r.round===!1?NaN:parseFloat(`1e${Math.floor(Math.max(0,r.round))}`);if(k.startsWith(".")||k.startsWith("e")||k.startsWith("E")){const A=parseFloat(`${g}${k}`);g=isNaN(T)?A:Math.round(A*T)/T}else if(GE.test(k)){const A=parseInt(M),L=parseInt(k.replace("/",""));f=A,u=L,g=isNaN(T)?A/L:Math.round(A*T/L)/T}else{const[A,L]=k.split("/").map(O=>parseInt(O));d=g,f=A,u=L,g+=isNaN(T)?A/L:Math.round(A*T/L)/T}return g=S==="-"?g*-1:g,s&&r.percentage!=="number"&&(g=isNaN(T)?g/100:Math.round(g/100*T)/T),m(g)}var fh=Symbol.for("immer-nothing"),hh=Symbol.for("immer-draftable"),Tt=Symbol.for("immer-state"),WE=process.env.NODE_ENV!=="production"?[function(e){return`The plugin for '${e}' has not been loaded into Immer. To enable the plugin, import and call \`enable${e}()\` when initializing your application.`},function(e){return`produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '${e}'`},"This object has been frozen and should not be mutated",function(e){return"Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? "+e},"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.","Immer forbids circular references","The first or second argument to `produce` must be a function","The third argument to `produce` must be a function or undefined","First argument to `createDraft` must be a plain object, an array, or an immerable object","First argument to `finishDraft` must be a draft returned by `createDraft`",function(e){return`'current' expects a draft, got: ${e}`},"Object.defineProperty() cannot be used on an Immer draft","Object.setPrototypeOf() cannot be used on an Immer draft","Immer only supports deleting array indices","Immer only supports setting array indices and the 'length' property",function(e){return`'original' expects a draft, got: ${e}`}]:[];function zt(e,...t){if(process.env.NODE_ENV!=="production"){const r=WE[e],o=Co(r)?r.apply(null,t):r;throw new Error(`[Immer] ${o}`)}throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Bt=Object,Qo=Bt.getPrototypeOf,is="constructor",cs="prototype",ec="configurable",ds="enumerable",us="writable",kn="value",wr=e=>!!e&&!!e[Tt];function Cr(e){var t;return e?gh(e)||hs(e)||!!e[hh]||!!((t=e[is])!=null&&t[hh])||ms(e)||gs(e):!1}var HE=Bt[cs][is].toString(),mh=new WeakMap;function gh(e){if(!e||!oc(e))return!1;const t=Qo(e);if(t===null||t===Bt[cs])return!0;const r=Bt.hasOwnProperty.call(t,is)&&t[is];if(r===Object)return!0;if(!Co(r))return!1;let o=mh.get(r);return o===void 0&&(o=Function.toString.call(r),mh.set(r,o)),o===HE}function ps(e,t,r=!0){_n(e)===0?(r?Reflect.ownKeys(e):Bt.keys(e)).forEach(n=>{t(n,e[n],e)}):e.forEach((o,n)=>t(n,o,e))}function _n(e){const t=e[Tt];return t?t.type_:hs(e)?1:ms(e)?2:gs(e)?3:0}var tc=(e,t,r=_n(e))=>r===2?e.has(t):Bt[cs].hasOwnProperty.call(e,t),rc=(e,t,r=_n(e))=>r===2?e.get(t):e[t],fs=(e,t,r,o=_n(e))=>{o===2?e.set(t,r):o===3?e.add(r):e[t]=r};function jE(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var hs=Array.isArray,ms=e=>e instanceof Map,gs=e=>e instanceof Set,oc=e=>typeof e=="object",Co=e=>typeof e=="function",nc=e=>typeof e=="boolean";function YE(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var Fr=e=>e.copy_||e.base_,ac=e=>e.modified_?e.copy_:e.base_;function sc(e,t){if(ms(e))return new Map(e);if(gs(e))return new Set(e);if(hs(e))return Array[cs].slice.call(e);const r=gh(e);if(t===!0||t==="class_only"&&!r){const o=Bt.getOwnPropertyDescriptors(e);delete o[Tt];let n=Reflect.ownKeys(o);for(let a=0;a<n.length;a++){const s=n[a],i=o[s];i[us]===!1&&(i[us]=!0,i[ec]=!0),(i.get||i.set)&&(o[s]={[ec]:!0,[us]:!0,[ds]:i[ds],[kn]:e[s]})}return Bt.create(Qo(e),o)}else{const o=Qo(e);if(o!==null&&r)return{...e};const n=Bt.create(o);return Bt.assign(n,e)}}function lc(e,t=!1){return ys(e)||wr(e)||!Cr(e)||(_n(e)>1&&Bt.defineProperties(e,{set:bs,add:bs,clear:bs,delete:bs}),Bt.freeze(e),t&&ps(e,(r,o)=>{lc(o,!0)},!1)),e}function qE(){zt(2)}var bs={[kn]:qE};function ys(e){return e===null||!oc(e)?!0:Bt.isFrozen(e)}var vs="MapSet",ic="Patches",bh="ArrayMethods",yh={};function So(e){const t=yh[e];return t||zt(0,e),t}var vh=e=>!!yh[e],Dn,xh=()=>Dn,QE=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:vh(vs)?So(vs):void 0,arrayMethodsPlugin_:vh(bh)?So(bh):void 0});function wh(e,t){t&&(e.patchPlugin_=So(ic),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function cc(e){dc(e),e.drafts_.forEach(KE),e.drafts_=null}function dc(e){e===Dn&&(Dn=e.parent_)}var Ch=e=>Dn=QE(Dn,e);function KE(e){const t=e[Tt];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function Sh(e,t){t.unfinalizedDrafts_=t.drafts_.length;const r=t.drafts_[0];if(e!==void 0&&e!==r){r[Tt].modified_&&(cc(t),zt(4)),Cr(e)&&(e=Nh(t,e));const{patchPlugin_:n}=t;n&&n.generateReplacementPatches_(r[Tt].base_,e,t)}else e=Nh(t,r);return XE(t,e,!0),cc(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==fh?e:void 0}function Nh(e,t){if(ys(t))return t;const r=t[Tt];if(!r)return ws(t,e.handledSet_,e);if(!xs(r,e))return t;if(!r.modified_)return r.base_;if(!r.finalized_){const{callbacks_:o}=r;if(o)for(;o.length>0;)o.pop()(e);_h(r,e)}return r.copy_}function XE(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&lc(t,r)}function Eh(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var xs=(e,t)=>e.scope_===t,JE=[];function kh(e,t,r,o){const n=Fr(e),a=e.type_;if(o!==void 0&&rc(n,o,a)===t){fs(n,o,r,a);return}if(!e.draftLocations_){const i=e.draftLocations_=new Map;ps(n,(c,d)=>{if(wr(d)){const f=i.get(d)||[];f.push(c),i.set(d,f)}})}const s=e.draftLocations_.get(t)??JE;for(const i of s)fs(n,i,r,a)}function ZE(e,t,r){e.callbacks_.push(function(n){var i;const a=t;if(!a||!xs(a,n))return;(i=n.mapSetPlugin_)==null||i.fixSetContents(a);const s=ac(a);kh(e,a.draft_??a,s,r),_h(a,n)})}function _h(e,t){var o;if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(((o=e.assigned_)==null?void 0:o.size)??0)>0)){const{patchPlugin_:n}=t;if(n){const a=n.getPath(e);a&&n.generatePatches_(e,a,t)}Eh(e)}}function RE(e,t,r){const{scope_:o}=e;if(wr(r)){const n=r[Tt];xs(n,o)&&n.callbacks_.push(function(){Ss(e);const s=ac(n);kh(e,r,s,t)})}else Cr(r)&&e.callbacks_.push(function(){const a=Fr(e);e.type_===3?a.has(r)&&ws(r,o.handledSet_,o):rc(a,t,e.type_)===r&&o.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&ws(rc(e.copy_,t,e.type_),o.handledSet_,o)})}function ws(e,t,r){return!r.immer_.autoFreeze_&&r.unfinalizedDrafts_<1||wr(e)||t.has(e)||!Cr(e)||ys(e)||(t.add(e),ps(e,(o,n)=>{if(wr(n)){const a=n[Tt];if(xs(a,r)){const s=ac(a);fs(e,o,s,e.type_),Eh(a)}}else Cr(n)&&ws(n,t,r)})),e}function ek(e,t){const r=hs(e),o={type_:r?1:0,scope_:t?t.scope_:xh(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let n=o,a=Cs;r&&(n=[o],a=An);const{revoke:s,proxy:i}=Proxy.revocable(n,a);return o.draft_=i,o.revoke_=s,[i,o]}var Cs={get(e,t){if(t===Tt)return e;let r=e.scope_.arrayMethodsPlugin_;const o=e.type_===1&&typeof t=="string";if(o&&r!=null&&r.isArrayOperationMethod(t))return r.createMethodInterceptor(e,t);const n=Fr(e);if(!tc(n,t,e.type_))return rk(e,n,t);const a=n[t];if(e.finalized_||!Cr(a)||o&&e.operationMethod&&(r!=null&&r.isMutatingArrayMethod(e.operationMethod))&&YE(t))return a;if(a===uc(e.base_,t)||tk(e,t,a)){Ss(e);const s=e.type_===1?+t:t,i=fc(e.scope_,a,e,s);return e.copy_[s]=i}return a},has(e,t){return t in Fr(e)},ownKeys(e){return Reflect.ownKeys(Fr(e))},set(e,t,r){const o=Dh(Fr(e),t);if(o!=null&&o.set)return o.set.call(e.draft_,r),!0;if(!e.modified_){const n=uc(Fr(e),t),a=n==null?void 0:n[Tt];if(a&&a.base_===r)return e.copy_[t]=r,e.assigned_.set(t,!1),!0;if(jE(r,n)&&(r!==void 0||tc(e.base_,t,e.type_)))return!0;Ss(e),pc(e)}return e.copy_[t]===r&&(r!==void 0||tc(e.copy_,t,e.type_))||Number.isNaN(r)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=r,e.assigned_.set(t,!0),RE(e,t,r)),!0},deleteProperty(e,t){return Ss(e),uc(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),pc(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const r=Fr(e),o=Reflect.getOwnPropertyDescriptor(r,t);return o&&{[us]:!0,[ec]:e.type_!==1||t!=="length",[ds]:o[ds],[kn]:r[t]}},defineProperty(){zt(11)},getPrototypeOf(e){return Qo(e.base_)},setPrototypeOf(){zt(12)}},An={};for(let e in Cs){let t=Cs[e];An[e]=function(){const r=arguments;return r[0]=r[0][0],t.apply(this,r)}}An.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&zt(13),An.set.call(this,e,t,void 0)},An.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&zt(14),Cs.set.call(this,e[0],t,r,e[0])};function uc(e,t){const r=e[Tt];return(r?Fr(r):e)[t]}function tk(e,t,r){var o;return e.type_!==1||!e.allIndicesReassigned_||(o=e.assigned_)!=null&&o.get(t)||!Cr(r)||r[Tt]?!1:e.baseRefs_.has(r)}function rk(e,t,r){var n;const o=Dh(t,r);return o?kn in o?o[kn]:(n=o.get)==null?void 0:n.call(e.draft_):void 0}function Dh(e,t){if(!(t in e))return;let r=Qo(e);for(;r;){const o=Object.getOwnPropertyDescriptor(r,t);if(o)return o;r=Qo(r)}}function pc(e){e.modified_||(e.modified_=!0,e.parent_&&pc(e.parent_))}function Ss(e){e.copy_||(e.assigned_=new Map,e.copy_=sc(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var ok=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(r,o,n)=>{if(Co(r)&&!Co(o)){const s=o;o=r;const i=this;return function(d=s,...f){return i.produce(d,u=>o.call(this,u,...f))}}Co(o)||zt(6),n!==void 0&&!Co(n)&&zt(7);let a;if(Cr(r)){const s=Ch(this),i=fc(s,r,void 0);let c=!0;try{a=o(i),c=!1}finally{c?cc(s):dc(s)}return wh(s,n),Sh(a,s)}else if(!r||!oc(r)){if(a=o(r),a===void 0&&(a=r),a===fh&&(a=void 0),this.autoFreeze_&&lc(a,!0),n){const s=[],i=[];So(ic).generateReplacementPatches_(r,a,{patches_:s,inversePatches_:i}),n(s,i)}return a}else zt(1,r)},this.produceWithPatches=(r,o)=>{if(Co(r))return(i,...c)=>this.produceWithPatches(i,d=>r(d,...c));let n,a;return[this.produce(r,o,(i,c)=>{n=i,a=c}),n,a]},nc(t==null?void 0:t.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),nc(t==null?void 0:t.useStrictShallowCopy)&&this.setUseStrictShallowCopy(t.useStrictShallowCopy),nc(t==null?void 0:t.useStrictIteration)&&this.setUseStrictIteration(t.useStrictIteration)}createDraft(t){Cr(t)||zt(8),wr(t)&&(t=hc(t));const r=Ch(this),o=fc(r,t,void 0);return o[Tt].isManual_=!0,dc(r),o}finishDraft(t,r){const o=t&&t[Tt];(!o||!o.isManual_)&&zt(9);const{scope_:n}=o;return wh(n,r),Sh(void 0,n)}setAutoFreeze(t){this.autoFreeze_=t}setUseStrictShallowCopy(t){this.useStrictShallowCopy_=t}setUseStrictIteration(t){this.useStrictIteration_=t}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(t,r){let o;for(o=r.length-1;o>=0;o--){const a=r[o];if(a.path.length===0&&a.op==="replace"){t=a.value;break}}o>-1&&(r=r.slice(o+1));const n=So(ic).applyPatches_;return wr(t)?n(t,r):this.produce(t,a=>n(a,r))}};function fc(e,t,r,o){const[n,a]=ms(t)?So(vs).proxyMap_(t,r):gs(t)?So(vs).proxySet_(t,r):ek(t,r);return((r==null?void 0:r.scope_)??xh()).drafts_.push(n),a.callbacks_=(r==null?void 0:r.callbacks_)??[],a.key_=o,r&&o!==void 0?ZE(r,a,o):a.callbacks_.push(function(c){var f;(f=c.mapSetPlugin_)==null||f.fixSetContents(a);const{patchPlugin_:d}=c;a.modified_&&d&&d.generatePatches_(a,[],c)}),n}function hc(e){return wr(e)||zt(10,e),Ah(e)}function Ah(e){if(!Cr(e)||ys(e))return e;const t=e[Tt];let r,o=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=sc(e,t.scope_.immer_.useStrictShallowCopy_),o=t.scope_.immer_.shouldUseStrictIteration()}else r=sc(e,!0);return ps(r,(n,a)=>{fs(r,n,Ah(a))},o),t&&(t.finalized_=!1),r}var nk=new ok,Tn=nk.produce;const Xr="------",We={fields:{title:"Field",placeholderName:"~",placeholderLabel:Xr,placeholderGroupLabel:Xr},operators:{title:"Operator",placeholderName:"~",placeholderLabel:Xr,placeholderGroupLabel:Xr},values:{title:"Values",placeholderName:"~",placeholderLabel:Xr,placeholderGroupLabel:Xr},matchMode:{title:"Match mode"},matchThreshold:{title:"Match threshold",placeholderName:"#"},value:{title:"Value"},removeRule:{label:"⨯",title:"Remove rule"},removeGroup:{label:"⨯",title:"Remove group"},addRule:{label:"+ Rule",title:"Add rule"},addGroup:{label:"+ Group",title:"Add group"},combinators:{title:"Combinator"},notToggle:{label:"Not",title:"Invert this group"},cloneRule:{label:"⧉",title:"Clone rule"},cloneRuleGroup:{label:"⧉",title:"Clone group"},shiftActionUp:{label:"˄",title:"Shift up"},shiftActionDown:{label:"˅",title:"Shift down"},dragHandle:{label:"⁞⁞",title:"Drag handle"},lockRule:{label:"🔓",title:"Lock rule"},lockGroup:{label:"🔓",title:"Lock group"},lockRuleDisabled:{label:"🔒",title:"Unlock rule"},lockGroupDisabled:{label:"🔒",title:"Unlock group"},muteRule:{label:"🔊",title:"Mute rule"},muteGroup:{label:"🔊",title:"Mute group"},unmuteRule:{label:"🔇",title:"Unmute rule"},unmuteGroup:{label:"🔇",title:"Unmute group"},valueSourceSelector:{title:"Value source"}},Th={"=":"=","!=":"!=","<":"<",">":">","<=":"<=",">=":">=",contains:"contains",beginsWith:"begins with",endsWith:"ends with",doesNotContain:"does not contain",doesNotBeginWith:"does not begin with",doesNotEndWith:"does not end with",null:"is null",notNull:"is not null",in:"in",notIn:"not in",between:"between",notBetween:"not between"},ak={and:"AND",or:"OR",xor:"XOR"},sk=[{name:"=",value:"=",label:"="},{name:"!=",value:"!=",label:"!="},{name:"<",value:"<",label:"<"},{name:">",value:">",label:">"},{name:"<=",value:"<=",label:"<="},{name:">=",value:">=",label:">="},{name:"contains",value:"contains",label:"contains"},{name:"beginsWith",value:"beginsWith",label:"begins with"},{name:"endsWith",value:"endsWith",label:"ends with"},{name:"doesNotContain",value:"doesNotContain",label:"does not contain"},{name:"doesNotBeginWith",value:"doesNotBeginWith",label:"does not begin with"},{name:"doesNotEndWith",value:"doesNotEndWith",label:"does not end with"},{name:"null",value:"null",label:"is null"},{name:"notNull",value:"notNull",label:"is not null"},{name:"in",value:"in",label:"in"},{name:"notIn",value:"notIn",label:"not in"},{name:"between",value:"between",label:"between"},{name:"notBetween",value:"notBetween",label:"not between"}],In=[{name:"and",value:"and",label:"AND"},{name:"or",value:"or",label:"OR"}];[...In];const Ih=[{name:"all",value:"all",label:"all"},{name:"some",value:"some",label:"some"},{name:"none",value:"none",label:"none"},{name:"atLeast",value:"atLeast",label:"at least"},{name:"atMost",value:"atMost",label:"at most"},{name:"exactly",value:"exactly",label:"exactly"}],me={queryBuilder:"queryBuilder",ruleGroup:"ruleGroup",header:"ruleGroup-header",body:"ruleGroup-body",combinators:"ruleGroup-combinators",addRule:"ruleGroup-addRule",addGroup:"ruleGroup-addGroup",cloneRule:"rule-cloneRule",cloneGroup:"ruleGroup-cloneGroup",removeGroup:"ruleGroup-remove",notToggle:"ruleGroup-notToggle",rule:"rule",fields:"rule-fields",matchMode:"rule-matchMode",matchThreshold:"rule-matchThreshold",operators:"rule-operators",value:"rule-value",removeRule:"rule-remove",betweenRules:"betweenRules",valid:"queryBuilder-valid",invalid:"queryBuilder-invalid",shiftActions:"shiftActions",dndDragging:"dndDragging",dndOver:"dndOver",dndCopy:"dndCopy",dndGroup:"dndGroup",dndDropNotAllowed:"dndDropNotAllowed",dragHandle:"queryBuilder-dragHandle",disabled:"queryBuilder-disabled",muted:"queryBuilder-muted",lockRule:"rule-lock",lockGroup:"ruleGroup-lock",muteRule:"rule-mute",muteGroup:"ruleGroup-mute",valueSource:"rule-valueSource",valueListItem:"rule-value-list-item",hasSubQuery:"rule-hasSubQuery"},ge={rule:"rule",ruleGroup:"rule-group",inlineCombinator:"inline-combinator",addGroup:"add-group",removeGroup:"remove-group",cloneGroup:"clone-group",cloneRule:"clone-rule",addRule:"add-rule",removeRule:"remove-rule",combinators:"combinators",fields:"fields",operators:"operators",valueEditor:"value-editor",notToggle:"not-toggle",shiftActions:"shift-actions",dragHandle:"drag-handle",lockRule:"lock-rule",lockGroup:"lock-group",muteRule:"mute-rule",muteGroup:"mute-group",valueSourceSelector:"value-source-selector",matchModeEditor:"match-mode-editor"},ht={parentPathDisabled:"action aborted: parent path disabled",pathDisabled:"action aborted: path is disabled",onAddRuleFalse:"onAddRule callback returned false",onAddGroupFalse:"onAddGroup callback returned false",onGroupRuleFalse:"onGroupRule callback returned false",onGroupGroupFalse:"onGroupGroup callback returned false",onMoveRuleFalse:"onMoveRule callback returned false",onMoveGroupFalse:"onMoveGroup callback returned false",onRemoveFalse:"onRemove callback returned false",add:"rule or group added",remove:"rule or group removed",update:"rule or group updated",move:"rule or group moved",group:"rule or group grouped with another"},Ph=[],lk={addRuleToNewGroups:!1,autoSelectField:!0,autoSelectOperator:!0,autoSelectValue:!1,debugMode:!1,enableDragAndDrop:!1,enableMountQueryChange:!0,listsAsArrays:!1,resetOnFieldChange:!0,resetOnOperatorChange:!1,showCloneButtons:!1,showCombinatorsBetweenRules:!1,showLockButtons:!1,showMuteButtons:!1,showNotToggle:!1,showShiftActions:!1,suppressStandardClassnames:!1},ik=(e,t=",")=>typeof e=="string"?e.split(`\\${t}`).map(r=>r.split(t)).reduce((r,o,n)=>n===0?o:[...r.slice(0,-1),`${r.at(-1)}${t}${o[0]}`,...o.slice(1)],[]):[],Ns=(e,t=",")=>e.map(r=>`${r??""}`.replaceAll(t[0],`\\${t[0]}`)).join(t),ck=e=>typeof e=="string"?e.trim():e,Es=(e,{retainEmptyStrings:t}={})=>Array.isArray(e)?e.map(ck):typeof e=="string"?ik(e,",").filter(t?()=>!0:r=>!/^\s*$/.test(r)).map(r=>r.trim()):typeof e=="number"?[e]:[];function Mh(e){var t,r,o="";if(typeof e=="string"||typeof e=="number")o+=e;else if(typeof e=="object")if(Array.isArray(e)){var n=e.length;for(t=0;t<n;t++)e[t]&&(r=Mh(e[t]))&&(o&&(o+=" "),o+=r)}else for(r in e)e[r]&&(o&&(o+=" "),o+=r);return o}function Oe(){for(var e,t,r=0,o="",n=arguments.length;r<n;r++)(e=arguments[r])&&(t=Mh(e))&&(o&&(o+=" "),o+=t);return o}const No=e=>typeof e=="string"?e.toLowerCase():e;new RegExp(IE.source.replace(/^\^/,String.raw`^\s*`).replace(/\$$/,String.raw`\s*$`));const Jr=e=>e!==null&&typeof e=="object"&&Object.getPrototypeOf(e)===Object.prototype,Xe=e=>Jr(e)&&Array.isArray(e.rules),Pn=e=>Xe(e)&&typeof e.combinator=="string",Mn=e=>Xe(e)&&e.combinator===void 0,dk=Object.keys,Oh=Object.entries,Lh=e=>e==="__proto__"||e==="constructor"||e==="prototype",mc=e=>Jr(e)&&"name"in e&&typeof e.name=="string",gc=e=>Jr(e)&&"value"in e&&typeof e.value=="string";function Sr(e,t,r){if(typeof e=="string")return{...t,name:e,value:e,label:(r==null?void 0:r[e])??e};const o={};let n=!!t;return mc(e)&&!gc(e)?(o.value=e.name,n=!0):!mc(e)&&gc(e)&&(o.name=e.value,n=!0),n?Object.assign({},t,e,o):e}function ks(e,t,r){if(!Array.isArray(e))return[];const o=e;return Zr(o)?o.map(n=>({...n,options:n.options.map(a=>Sr(a,t,r))})):o.map(n=>Sr(n,t,r))}function Fh(e,t){return Object.fromEntries(Object.entries(e).map(([r,o])=>[r,Sr(o,t)]))}const $h=e=>{const t=new Set,r=[];for(const o of e)t.has(o.value??o.name)||(t.add(o.value??o.name),r.push(o));return e.length===r.length?e:r},uk=e=>Array.isArray(e)&&e.length>0&&Jr(e[0])&&"options"in e[0]&&Array.isArray(e[0].options),_s=e=>{let t=!1;if(Array.isArray(e))for(const r of e)if(mc(r)||gc(r))t=!0;else return!1;return t},Zr=(e,{allowEmpty:t=!1}={})=>{let r=!1;if(Array.isArray(e))for(const o of e)if(Jr(o)&&"options"in o&&(_s(o.options)||t&&Array.isArray(o.options)&&o.options.length===0))r=!0;else return!1;return r};function Ko(e,t){return(Zr(e,{allowEmpty:!0})?e.flatMap(r=>r.options):e).find(r=>r.value===t||r.name===t)}function xt(e){if(!Array.isArray(e)||e.length===0)return null;if(Zr(e,{allowEmpty:!0})){for(const t of e)if(t.options.length>0)return t.options[0].value??t.options[0].name;return null}return e[0].value??e[0].name}const Gh=e=>{const t=new Set,r=new Set,o=[];for(const n of e)if(!t.has(n.label)){t.add(n.label);const a=[];for(const s of n.options)r.has(s.value??s.name)||(r.add(s.value??s.name),a.push(Sr(s)));o.push({...n,options:a})}return o},Xo=e=>{const{optionList:t,baseOption:r={},labelMap:o={},placeholder:{placeholderName:n="~",placeholderLabel:a=Xr,placeholderGroupLabel:s=Xr}={},autoSelectOption:i=!0}=e,c={id:n,name:n,value:n,label:a},d=t??[c];let f;const u=Array.isArray(d)?ks(d,r,o):dk(Fh(d,r)).map(m=>({...d[m],name:m,value:m})).sort((m,g)=>m.label.localeCompare(g.label));Zr(u)?f=Gh(i?u:[{label:s,options:[c]},...u]):f=$h(i?u:[c,...u]);let h={};if(Array.isArray(d))if(Zr(f))for(const m of f)for(const g of m.options)h[g.value??g.name]=Sr(g,r);else for(const m of f)h[m.value??m.name]=Sr(m,r);else{const m=Fh(d,r);h=i?m:{...m,[n]:c}}return{defaultOption:c,optionList:f,optionsMap:h}},Vh=(e,t,r)=>{var a;const o=Sr(e),n=Sr(r);return o.value===n.value?!1:typeof o.comparator=="string"?o[o.comparator]===n[o.comparator]:((a=o.comparator)==null?void 0:a.call(o,n,t))??!1},zh=(e,t,r)=>{if(!e.comparator){const o=n=>(n.value??n.name)!==(e.value??e.name);return Zr(t)?t.map(n=>({...n,options:n.options.filter(a=>o(a))})):t.filter(n=>o(n))}return Zr(t)?t.map(o=>({...o,options:o.options.filter(n=>Vh(e,r,n))})).filter(o=>o.options.length>0):t.filter(o=>Vh(e,r,o))},Ds=(e,{parseNumbers:t,bigIntOnOverflow:r}={})=>{if(!t||typeof e=="bigint"||typeof e=="number")return e;if(t==="native")return Number.parseFloat(e);const o=UE(e,{allowTrailingInvalid:t==="enhanced",bigIntOnOverflow:r,romanNumerals:!1,round:!1});return typeof o=="bigint"||!Number.isNaN(o)?o:e},pk=({parseNumbers:e,inputType:t})=>{if(typeof e=="string"){const[r,o]=e.split("-");return o==="limited"?t==="number"?r:!1:r}return e?"strict":!1},fk=e=>{const{mode:t,threshold:r}=e.match??{};if(!t)return null;if(!Xe(e.value))return!1;const o=No(t),n=o==="atleast"&&r===1?"some":o==="atmost"&&r===0?"none":o;return(n==="atleast"||n==="atmost"||n==="exactly")&&(typeof r!="number"||r<0)?!1:{mode:n,threshold:r}},ut=(e,t)=>{let r=t,o=0;for(;o<e.length&&r&&Xe(r);){const n=r.rules[e[o]];r=typeof n=="string"?null:n,o++}return o<e.length?null:r},Bh=(e,t)=>{if(t.id===e)return t;for(const r of t.rules)if(typeof r!="string"){if(r.id===e)return r;if(Xe(r)){const o=Bh(e,r);if(o)return o}}return null},Jo=(e,t)=>{if(t.id===e)return[];const r=t.rules.findIndex(o=>typeof o!="string"&&o.id===e);if(r>=0)return[r];for(const[o,n]of Object.entries(t.rules))if(Xe(n)){const a=Jo(e,n);if(Array.isArray(a))return[Number.parseInt(o),...a]}return null},at=e=>e.slice(0,-1),Eo=(e,t)=>e.length===t.length&&e.every((r,o)=>r===t[o]),Uh=(e,t)=>{const r=[],o=at(e),n=at(t);let a=0;for(;a<o.length&&a<n.length&&o[a]===n[a];)r.push(n[a]),a++;return r},Zo=(e,t)=>{let r=!!t.disabled,o=t,n=0;for(;n<e.length&&!r&&Xe(o);){const a=o.rules[e[n]];Jr(a)&&(Xe(a)||"field"in a&&a.field)&&(r=!!a.disabled,o=a),n++}return r},hk=e=>Eo([],e.path)?"Query builder":`Rule group at path ${e.path.join("-")}`,On=globalThis.crypto;let Xt=()=>"00-0-4-2-000".replaceAll(/[^-]/g,e=>((Math.random()+Math.trunc(e))*65536>>Number.parseInt(e)).toString(16).padStart(4,"0"));if(On){if(typeof On.randomUUID=="function")Xt=()=>On.randomUUID();else if(typeof On.getRandomValues=="function"){const e="89ab",t=new Uint32Array(32);Xt=()=>{On.getRandomValues(t);let r=(t[0]%16).toString(16);for(let o=1;o<32;o++)o===12?r=`${r}4`:o===16?r=`${r}${e[t[17]%4]}`:r=`${r}${(t[o]%16).toString(16)}`,(o===7||o===11||o===15||o===19)&&(r=`${r}-`);return r}}}const mk={name:"name",value:"name",matchModes:null,label:"label"},gk=(e,t)=>{const r=e?Sr(e):mk;let o=r.matchModes??!1;return!o&&t&&(o=t(r.value,{fieldData:r})),o===!0?Ih:o===!1?[]:_s(o)?ks(o):(o==null?void 0:o.map(n=>Ih.find(a=>a.value===No(n))??{name:n,value:n,label:n}))??[]},Wh=(e,t,r)=>{const o=xt(e);if(t.operator==="between"||t.operator==="notBetween"){const n=[o,o];return r?n:Ns(n.map(a=>a??""),",")}return o},bk=(e,t)=>{const{fieldData:r,fields:o,getValueEditorType:n,getValues:a,getDefaultValue:s,getParameters:i,listsAsArrays:c}=t;if((r==null?void 0:r.defaultValue)!==void 0&&r.defaultValue!==null)return r.defaultValue;if(s)return s(e,{fieldData:r});let d="";const f=a(e.field,e.operator,{fieldData:r});if(e.valueSource==="field"){const u=zh(r,o,e.operator);d=u.length>0?Wh(u,e,c):""}else if(e.valueSource==="parameter"){const u=i?i(e.field,e.operator,{fieldData:r}):null;d=u&&u.length>0?xt(u):""}else if(f.length>0){const u=n(e.field,e.operator,{fieldData:r});u==="multiselect"?d=c?[]:"":(u==="select"||u==="radio")&&(d=Wh(f,e,c))}else n(e.field,e.operator,{fieldData:r})==="checkbox"&&(d=!1);return d},Hh=e=>{const t=typeof e=="boolean"?e:typeof e=="object"&&e!==null?e.valid:null;return typeof t=="boolean"?t?me.valid:me.invalid:""},jh=[{name:"value",value:"value",label:"value"}],yk={name:"name",value:"name",valueSources:null,label:"label"},Yh=(e,t,r)=>{const o=e?Sr(e):yk;let n=o.valueSources??!1;return typeof n=="function"&&(n=n(t)),!n&&r&&(n=r(o.value,t,{fieldData:o})),n?_s(n)?ks(n):n.map(a=>jh.find(s=>s.value===No(a))??{name:a,value:a,label:a}):jh},He=(e,t,r)=>{if(Lh(e))return;const o=Oh(t).map(([n,[a,s]])=>{var i;return[n,a??s??((i=r==null?void 0:r[e])==null?void 0:i[n])]}).filter(n=>!Lh(n[0])&&!!n[1]);if(o.length>0||r){const n=(r==null?void 0:r[e])??{},a=Object.assign({},n,Object.fromEntries(o));return{[e]:a}}},ve=(e,t)=>{var o;let r="";for(let n=0;n<t.length;n++){const a=(o=t[n])==null?void 0:o[e];if(!a)continue;const s=typeof a=="string"?a:Oe(a);s&&(r=r?`${r} ${s}`:s)}return r},vk=(...e)=>({queryBuilder:ve("queryBuilder",e),ruleGroup:ve("ruleGroup",e),header:ve("header",e),body:ve("body",e),combinators:ve("combinators",e),addRule:ve("addRule",e),addGroup:ve("addGroup",e),cloneRule:ve("cloneRule",e),cloneGroup:ve("cloneGroup",e),removeGroup:ve("removeGroup",e),rule:ve("rule",e),fields:ve("fields",e),operators:ve("operators",e),value:ve("value",e),removeRule:ve("removeRule",e),notToggle:ve("notToggle",e),shiftActions:ve("shiftActions",e),dragHandle:ve("dragHandle",e),lockRule:ve("lockRule",e),lockGroup:ve("lockGroup",e),muteRule:ve("muteRule",e),muteGroup:ve("muteGroup",e),muted:ve("muted",e),valueSource:ve("valueSource",e),actionElement:ve("actionElement",e),valueSelector:ve("valueSelector",e),betweenRules:ve("betweenRules",e),valid:ve("valid",e),invalid:ve("invalid",e),dndDragging:ve("dndDragging",e),dndOver:ve("dndOver",e),dndCopy:ve("dndCopy",e),dndGroup:ve("dndGroup",e),dndDropNotAllowed:ve("dndDropNotAllowed",e),dndPreviewPosition:ve("dndPreviewPosition",e),dndHidden:ve("dndHidden",e),disabled:ve("disabled",e),valueListItem:ve("valueListItem",e),matchMode:ve("matchMode",e),matchThreshold:ve("matchThreshold",e),branches:ve("branches",e),hasSubQuery:ve("hasSubQuery",e),loading:ve("loading",e),valueDateTimeRelative:ve("valueDateTimeRelative",e)}),xk=(e,t)=>e===!1?!1:e?!0:t!==!1,wk=(e,t)=>e?!0:e===!1?!1:!!t,qh=(e,t,r,o)=>o?t??r:e?xk(t,r):wk(t,r),Ck=(e={},t={},r)=>Oh(lk).reduce((o,[n,a])=>(o[n]=qh(a,e[n],t[n],!1),o),{}),Qh=(e,{idGenerator:t=Xt}={})=>{const r=!e.id,o=fk(e);return!r&&!o?e:{...e,...r&&{id:t()},...o&&{value:As(e.value,{idGenerator:t})}}},As=(e,{idGenerator:t=Xt}={})=>{const r=!e.id;let o=!1;const n=[];for(let a=0;a<e.rules.length;a++){const s=e.rules[a];if(typeof s=="string")n.push(s);else{const i=Xe(s)?As(s,{idGenerator:t}):Qh(s,{idGenerator:t});n.push(i),i!==s&&(o=!0)}}return!r&&!o?e:{...e,...r&&{id:t()},rules:n}},Kh=(e,{idGenerator:t=Xt}={})=>Xe(e)?As(e,{idGenerator:t}):Qh(e,{idGenerator:t}),Sk=(e,{idGenerator:t=Xt}={})=>structuredClone({...e,id:t()}),bc=(e,{idGenerator:t=Xt}={})=>{if(!Jr(e))return e;if(!Xe(e))return structuredClone({...e,id:t()});const r={...e,id:t()};return Array.isArray(r.rules)&&(r.rules=e.rules.map(o=>typeof o=="string"?o:Xe(o)?bc(o,{idGenerator:t}):Sk(o,{idGenerator:t}))),r},Xh=(e,t,r,o={})=>Tn(e,n=>Nk(n,t,r,o)),Nk=(e,t,r,o={})=>{const{combinators:n=In,combinatorPreceding:a,idGenerator:s=Xt}=o,i=Array.isArray(r)?ut(r,e):Bh(r,e);if(!i||!Xe(i))return e;if(Mn(i)&&i.rules.length>0){const c=i.rules.at(-2);i.rules.push(a??(typeof c=="string"?c:xt(n)))}return i.rules.push(Kh(t,{idGenerator:s})),e},Jh={field:0,operator:1,valueSource:2,value:4},Zh=e=>e.sort((t,r)=>(Jh[t[0]]??3)-(Jh[r[0]]??3)),Ek=(e,t,r,o)=>{if(typeof e=="string")return{entries:[[e,t]],pathOrID:r,options:o??{}};if(Array.isArray(e)){const n=t;return{entries:Zh(e.map((a,s)=>[a,n[s]])),pathOrID:r,options:o??{}}}return{entries:Zh(Object.entries(e)),pathOrID:t,options:r??{}}},kk=(e,t,r,o,n)=>{const{entries:a,pathOrID:s,options:i}=Ek(t,r,o,n);for(const[c,d]of a)Dk(e,c,d,s,i);return e},_k=((e,t,r,o,n)=>Tn(e,a=>{kk(a,t,r,o,n)})),Dk=(e,t,r,o,n={})=>{var w;const{resetOnFieldChange:a=!0,resetOnOperatorChange:s=!1,getRuleDefaultOperator:i=()=>"=",getValueSources:c=()=>["value"],getRuleDefaultValue:d=()=>"",getMatchModes:f=()=>[]}=n;let u=a;const h=Array.isArray(o)?o:Jo(o,e);if(!h)return e;if(t==="combinator"&&!Pn(e)){const x=ut(at(h),e).rules;return h.at(-1)%2===1&&(x[h.at(-1)]=r),e}const m=ut(h,e);if(!m)return e;const g=Xe(m);if(m[t]===r||(t!=="valueSource"&&(m[t]=r),g))return e;let y=!1,b=!1;if(t==="field"){const x=f(m.field),S=f(r);if(S.length===0)delete m.match;else{const N=(w=m.match)!=null&&w.mode&&Ko(S,m.match.mode)?null:xt(S);N&&(m.match={mode:N,threshold:1})}(x.length>0||S.length>0)&&(u=!0)}u&&t==="field"&&(m.operator=i(r),y=!0,b=!0),s&&t==="operator"&&(y=!0,b=!0);const C=xt(Yh({name:m.field,value:m.field,label:""},m.operator,c));return(y&&m.valueSource&&C!==m.valueSource||t==="valueSource"&&r!==m.valueSource)&&(b=!!m.valueSource||!m.valueSource&&r!==C,m.valueSource=y?C:r),b&&(m.value=d(m)),e},Ak=(e,t)=>Tn(e,r=>Tk(r,t)),Tk=(e,t)=>{const r=Array.isArray(t)?t:Jo(t,e);if(!r||r.length===0||!Pn(e)&&!ut(r,e))return e;const o=r.at(-1),n=ut(at(r),e);if(n&&Xe(n))if(!Pn(n)&&n.rules.length>1){const a=o===0?0:o-1;n.rules.splice(a,2)}else n.rules.splice(o,1);return e},Rh=(e,t,r)=>{if(Array.isArray(r))return r;const o=Mn(e);if(r==="up"){if(Eo(t,[0]))return t;if(t.at(-1)===0){const n=at(t);return[...at(n),Math.max(0,n.at(-1)-(o?1:0))]}else{const n=[...at(t),Math.max(0,t.at(-1)-(o?2:1))],a=ut(n,e);return Xe(a)?[...n,a.rules.length]:[...at(t),Math.max(0,t.at(-1)-(o?3:1))]}}else if(r==="down"){if(Eo([e.rules.length-1],t))return t;if(t.at(-1)===ut(at(t),e).rules.length-1){const n=at(t);return[...at(n),n.at(-1)+1]}else{const n=[...at(t),t.at(-1)+(o?2:1)];return Xe(ut(n,e))?[...n,0]:[...at(t),t.at(-1)+(o?3:2)]}}return t},Ik=(e,t,r,o={})=>Tn(e,n=>Pk(n,t,r,o)),Pk=(e,t,r,o={})=>{const{clone:n=!1,combinators:a=In,idGenerator:s=Xt}=o,i=Array.isArray(t)?t:Jo(t,e);if(!i)return e;const c=Rh(e,i,r);if(i.length===0||Eo(i,c)||!ut(at(c),e))return e;const d=ut(i,e);if(!d)return e;const f=n?bc(wr(d)?hc(d):d,{idGenerator:s}):d,u=Mn(e),h=ut(at(i),e),m=i.at(-1),g=u&&m>0?h.rules[m-1]:null,y=u&&m<h.rules.length-1?h.rules[m+1]:null;if(!n){const N=u?Math.max(0,m-1):m,E=u?2:1;h.rules.splice(N,E)}const b=[...c],C=Uh(i,c);!n&&i.length===C.length+1&&c[C.length]>i[C.length]&&(b[C.length]-=u?2:1);const w=ut(at(b),e),x=b.at(-1),S=(...N)=>w.rules.splice(x,0,...N);return w.rules.length===0||!u?S(f):x===0?m===0&&y?S(f,y):S(f,w.rules[1]??g??xt(a)):S(g||(w.rules[x-2]??y??xt(a)),f),e},Mk=(e,t,r,o={})=>Tn(e,n=>Ok(n,t,r,o)),Ok=(e,t,r,o={})=>{const{clone:n=!1,combinators:a=In,idGenerator:s=Xt}=o,i=Array.isArray(t)?t:Jo(t,e),c=Array.isArray(r)?r:Jo(r,e);if(!i||!c)return e;const d=Rh(e,i,c);if(i.length===0||Eo(i,d)||!ut(at(d),e))return e;const f=ut(i,e),u=ut(c,e);if(!f||!u)return e;const h=n?bc(wr(f)?hc(f):f,{idGenerator:s}):f,m=Mn(e),g=ut(at(i),e),y=i.at(-1);if(!n){const S=m?Math.max(0,y-1):y,N=m?2:1;g.rules.splice(S,N)}const b=[...d],C=Uh(i,d);!n&&i.length===C.length+1&&d[C.length]>i[C.length]&&(b[C.length]-=m?2:1);const w=ut(at(b),e),x=b.at(-1);return w.rules.splice(x,1,Kh(m?{rules:[u,xt(a),h]}:{combinator:xt(a),rules:[u,h]},{idGenerator:s})),e};function St(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var Lk=typeof Symbol=="function"&&Symbol.observable||"@@observable",em=Lk,yc=()=>Math.random().toString(36).substring(7).split("").join("."),Fk={INIT:`@@redux/INIT${yc()}`,REPLACE:`@@redux/REPLACE${yc()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${yc()}`},ko=Fk;function Ln(e){if(typeof e!="object"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function $k(e){if(e===void 0)return"undefined";if(e===null)return"null";const t=typeof e;switch(t){case"boolean":case"string":case"number":case"symbol":case"function":return t}if(Array.isArray(e))return"array";if(zk(e))return"date";if(Vk(e))return"error";const r=Gk(e);switch(r){case"Symbol":case"Promise":case"WeakMap":case"WeakSet":case"Map":case"Set":return r}return Object.prototype.toString.call(e).slice(8,-1).toLowerCase().replace(/\s/g,"")}function Gk(e){return typeof e.constructor=="function"?e.constructor.name:null}function Vk(e){return e instanceof Error||typeof e.message=="string"&&e.constructor&&typeof e.constructor.stackTraceLimit=="number"}function zk(e){return e instanceof Date?!0:typeof e.toDateString=="function"&&typeof e.getDate=="function"&&typeof e.setDate=="function"}function Rr(e){let t=typeof e;return process.env.NODE_ENV!=="production"&&(t=$k(e)),t}function tm(e,t,r){if(typeof e!="function")throw new Error(process.env.NODE_ENV==="production"?St(2):`Expected the root reducer to be a function. Instead, received: '${Rr(e)}'`);if(typeof t=="function"&&typeof r=="function"||typeof r=="function"&&typeof arguments[3]=="function")throw new Error(process.env.NODE_ENV==="production"?St(0):"It looks like you are passing several store enhancers to createStore(). This is not supported. Instead, compose them together to a single function. See https://redux.js.org/tutorials/fundamentals/part-4-store#creating-a-store-with-enhancers for an example.");if(typeof t=="function"&&typeof r>"u"&&(r=t,t=void 0),typeof r<"u"){if(typeof r!="function")throw new Error(process.env.NODE_ENV==="production"?St(1):`Expected the enhancer to be a function. Instead, received: '${Rr(r)}'`);return r(tm)(e,t)}let o=e,n=t,a=new Map,s=a,i=0,c=!1;function d(){s===a&&(s=new Map,a.forEach((b,C)=>{s.set(C,b)}))}function f(){if(c)throw new Error(process.env.NODE_ENV==="production"?St(3):"You may not call store.getState() while the reducer is executing. The reducer has already received the state as an argument. Pass it down from the top reducer instead of reading it from the store.");return n}function u(b){if(typeof b!="function")throw new Error(process.env.NODE_ENV==="production"?St(4):`Expected the listener to be a function. Instead, received: '${Rr(b)}'`);if(c)throw new Error(process.env.NODE_ENV==="production"?St(5):"You may not call store.subscribe() while the reducer is executing. If you would like to be notified after the store has been updated, subscribe from a component and invoke store.getState() in the callback to access the latest state. See https://redux.js.org/api/store#subscribelistener for more details.");let C=!0;d();const w=i++;return s.set(w,b),function(){if(C){if(c)throw new Error(process.env.NODE_ENV==="production"?St(6):"You may not unsubscribe from a store listener while the reducer is executing. See https://redux.js.org/api/store#subscribelistener for more details.");C=!1,d(),s.delete(w),a=null}}}function h(b){if(!Ln(b))throw new Error(process.env.NODE_ENV==="production"?St(7):`Actions must be plain objects. Instead, the actual type was: '${Rr(b)}'. You may need to add middleware to your store setup to handle dispatching other values, such as 'redux-thunk' to handle dispatching functions. See https://redux.js.org/tutorials/fundamentals/part-4-store#middleware and https://redux.js.org/tutorials/fundamentals/part-6-async-logic#using-the-redux-thunk-middleware for examples.`);if(typeof b.type>"u")throw new Error(process.env.NODE_ENV==="production"?St(8):'Actions may not have an undefined "type" property. You may have misspelled an action type string constant.');if(typeof b.type!="string")throw new Error(process.env.NODE_ENV==="production"?St(17):`Action "type" property must be a string. Instead, the actual type was: '${Rr(b.type)}'. Value was: '${b.type}' (stringified)`);if(c)throw new Error(process.env.NODE_ENV==="production"?St(9):"Reducers may not dispatch actions.");try{c=!0,n=o(n,b)}finally{c=!1}return(a=s).forEach(w=>{w()}),b}function m(b){if(typeof b!="function")throw new Error(process.env.NODE_ENV==="production"?St(10):`Expected the nextReducer to be a function. Instead, received: '${Rr(b)}`);o=b,h({type:ko.REPLACE})}function g(){const b=u;return{subscribe(C){if(typeof C!="object"||C===null)throw new Error(process.env.NODE_ENV==="production"?St(11):`Expected the observer to be an object. Instead, received: '${Rr(C)}'`);function w(){const S=C;S.next&&S.next(f())}return w(),{unsubscribe:b(w)}},[em](){return this}}}return h({type:ko.INIT}),{dispatch:h,subscribe:u,getState:f,replaceReducer:m,[em]:g}}function rm(e){typeof console<"u"&&typeof console.error=="function"&&console.error(e);try{throw new Error(e)}catch{}}function Bk(e,t,r,o){const n=Object.keys(t),a=r&&r.type===ko.INIT?"preloadedState argument passed to createStore":"previous state received by the reducer";if(n.length===0)return"Store does not have a valid reducer. Make sure the argument passed to combineReducers is an object whose values are reducers.";if(!Ln(e))return`The ${a} has unexpected type of "${Rr(e)}". Expected argument to be an object with the following keys: "${n.join('", "')}"`;const s=Object.keys(e).filter(i=>!t.hasOwnProperty(i)&&!o[i]);if(s.forEach(i=>{o[i]=!0}),!(r&&r.type===ko.REPLACE)&&s.length>0)return`Unexpected ${s.length>1?"keys":"key"} "${s.join('", "')}" found in ${a}. Expected to find one of the known reducer keys instead: "${n.join('", "')}". Unexpected keys will be ignored.`}function Uk(e){Object.keys(e).forEach(t=>{const r=e[t];if(typeof r(void 0,{type:ko.INIT})>"u")throw new Error(process.env.NODE_ENV==="production"?St(12):`The slice reducer for key "${t}" returned undefined during initialization. If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined. If you don't want to set a value for this reducer, you can use null instead of undefined.`);if(typeof r(void 0,{type:ko.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(process.env.NODE_ENV==="production"?St(13):`The slice reducer for key "${t}" returned undefined when probed with a random type. Don't try to handle '${ko.INIT}' or other actions in "redux/*" namespace. They are considered private. Instead, you must return the current state for any unknown actions, unless it is undefined, in which case you must return the initial state, regardless of the action type. The initial state may not be undefined, but can be null.`)})}function om(e){const t=Object.keys(e),r={};for(let s=0;s<t.length;s++){const i=t[s];process.env.NODE_ENV!=="production"&&typeof e[i]>"u"&&rm(`No reducer provided for key "${i}"`),typeof e[i]=="function"&&(r[i]=e[i])}const o=Object.keys(r);let n;process.env.NODE_ENV!=="production"&&(n={});let a;try{Uk(r)}catch(s){a=s}return function(i={},c){if(a)throw a;if(process.env.NODE_ENV!=="production"){const u=Bk(i,r,c,n);u&&rm(u)}let d=!1;const f={};for(let u=0;u<o.length;u++){const h=o[u],m=r[h],g=i[h],y=m(g,c);if(typeof y>"u"){const b=c&&c.type;throw new Error(process.env.NODE_ENV==="production"?St(14):`When called with an action of type ${b?`"${String(b)}"`:"(unknown type)"}, the slice reducer for key "${h}" returned undefined. To ignore an action, you must explicitly return the previous state. If you want this reducer to hold no value, you can return null instead of undefined.`)}f[h]=y,d=d||y!==g}return d=d||o.length!==Object.keys(i).length,d?f:i}}function Ts(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,r)=>(...o)=>t(r(...o)))}function Wk(...e){return t=>(r,o)=>{const n=t(r,o);let a=()=>{throw new Error(process.env.NODE_ENV==="production"?St(15):"Dispatching while constructing your middleware is not allowed. Other middleware would not be applied to this dispatch.")};const s={getState:n.getState,dispatch:(c,...d)=>a(c,...d)},i=e.map(c=>c(s));return a=Ts(...i)(n.dispatch),{...n,dispatch:a}}}function nm(e){return Ln(e)&&"type"in e&&typeof e.type=="string"}var am=Symbol.for("immer-nothing"),sm=Symbol.for("immer-draftable"),It=Symbol.for("immer-state"),Hk=process.env.NODE_ENV!=="production"?[function(e){return`The plugin for '${e}' has not been loaded into Immer. To enable the plugin, import and call \`enable${e}()\` when initializing your application.`},function(e){return`produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '${e}'`},"This object has been frozen and should not be mutated",function(e){return"Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? "+e},"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.","Immer forbids circular references","The first or second argument to `produce` must be a function","The third argument to `produce` must be a function or undefined","First argument to `createDraft` must be a plain object, an array, or an immerable object","First argument to `finishDraft` must be a draft returned by `createDraft`",function(e){return`'current' expects a draft, got: ${e}`},"Object.defineProperty() cannot be used on an Immer draft","Object.setPrototypeOf() cannot be used on an Immer draft","Immer only supports deleting array indices","Immer only supports setting array indices and the 'length' property",function(e){return`'original' expects a draft, got: ${e}`}]:[];function Ut(e,...t){if(process.env.NODE_ENV!=="production"){const r=Hk[e],o=_o(r)?r.apply(null,t):r;throw new Error(`[Immer] ${o}`)}throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Wt=Object,Ro=Wt.getPrototypeOf,Is="constructor",Ps="prototype",vc="configurable",Ms="enumerable",Os="writable",Fn="value",$r=e=>!!e&&!!e[It];function Jt(e){var t;return e?im(e)||$s(e)||!!e[sm]||!!((t=e[Is])!=null&&t[sm])||Gs(e)||Vs(e):!1}var jk=Wt[Ps][Is].toString(),lm=new WeakMap;function im(e){if(!e||!Cc(e))return!1;const t=Ro(e);if(t===null||t===Wt[Ps])return!0;const r=Wt.hasOwnProperty.call(t,Is)&&t[Is];if(r===Object)return!0;if(!_o(r))return!1;let o=lm.get(r);return o===void 0&&(o=Function.toString.call(r),lm.set(r,o)),o===jk}function Ls(e,t,r=!0){$n(e)===0?(r?Reflect.ownKeys(e):Wt.keys(e)).forEach(n=>{t(n,e[n],e)}):e.forEach((o,n)=>t(n,o,e))}function $n(e){const t=e[It];return t?t.type_:$s(e)?1:Gs(e)?2:Vs(e)?3:0}var xc=(e,t,r=$n(e))=>r===2?e.has(t):Wt[Ps].hasOwnProperty.call(e,t),wc=(e,t,r=$n(e))=>r===2?e.get(t):e[t],Fs=(e,t,r,o=$n(e))=>{o===2?e.set(t,r):o===3?e.add(r):e[t]=r};function Yk(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var $s=Array.isArray,Gs=e=>e instanceof Map,Vs=e=>e instanceof Set,Cc=e=>typeof e=="object",_o=e=>typeof e=="function",Sc=e=>typeof e=="boolean";function qk(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var Gr=e=>e.copy_||e.base_,Nc=e=>e.modified_?e.copy_:e.base_;function Ec(e,t){if(Gs(e))return new Map(e);if(Vs(e))return new Set(e);if($s(e))return Array[Ps].slice.call(e);const r=im(e);if(t===!0||t==="class_only"&&!r){const o=Wt.getOwnPropertyDescriptors(e);delete o[It];let n=Reflect.ownKeys(o);for(let a=0;a<n.length;a++){const s=n[a],i=o[s];i[Os]===!1&&(i[Os]=!0,i[vc]=!0),(i.get||i.set)&&(o[s]={[vc]:!0,[Os]:!0,[Ms]:i[Ms],[Fn]:e[s]})}return Wt.create(Ro(e),o)}else{const o=Ro(e);if(o!==null&&r)return{...e};const n=Wt.create(o);return Wt.assign(n,e)}}function kc(e,t=!1){return Bs(e)||$r(e)||!Jt(e)||($n(e)>1&&Wt.defineProperties(e,{set:zs,add:zs,clear:zs,delete:zs}),Wt.freeze(e),t&&Ls(e,(r,o)=>{kc(o,!0)},!1)),e}function Qk(){Ut(2)}var zs={[Fn]:Qk};function Bs(e){return e===null||!Cc(e)?!0:Wt.isFrozen(e)}var Us="MapSet",_c="Patches",cm="ArrayMethods",dm={};function Do(e){const t=dm[e];return t||Ut(0,e),t}var um=e=>!!dm[e],Gn,pm=()=>Gn,Kk=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:um(Us)?Do(Us):void 0,arrayMethodsPlugin_:um(cm)?Do(cm):void 0});function fm(e,t){t&&(e.patchPlugin_=Do(_c),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Dc(e){Ac(e),e.drafts_.forEach(Xk),e.drafts_=null}function Ac(e){e===Gn&&(Gn=e.parent_)}var hm=e=>Gn=Kk(Gn,e);function Xk(e){const t=e[It];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function mm(e,t){t.unfinalizedDrafts_=t.drafts_.length;const r=t.drafts_[0];if(e!==void 0&&e!==r){r[It].modified_&&(Dc(t),Ut(4)),Jt(e)&&(e=gm(t,e));const{patchPlugin_:n}=t;n&&n.generateReplacementPatches_(r[It].base_,e,t)}else e=gm(t,r);return Jk(t,e,!0),Dc(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==am?e:void 0}function gm(e,t){if(Bs(t))return t;const r=t[It];if(!r)return Hs(t,e.handledSet_,e);if(!Ws(r,e))return t;if(!r.modified_)return r.base_;if(!r.finalized_){const{callbacks_:o}=r;if(o)for(;o.length>0;)o.pop()(e);vm(r,e)}return r.copy_}function Jk(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&kc(t,r)}function bm(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var Ws=(e,t)=>e.scope_===t,Zk=[];function ym(e,t,r,o){const n=Gr(e),a=e.type_;if(o!==void 0&&wc(n,o,a)===t){Fs(n,o,r,a);return}if(!e.draftLocations_){const i=e.draftLocations_=new Map;Ls(n,(c,d)=>{if($r(d)){const f=i.get(d)||[];f.push(c),i.set(d,f)}})}const s=e.draftLocations_.get(t)??Zk;for(const i of s)Fs(n,i,r,a)}function Rk(e,t,r){e.callbacks_.push(function(n){var i;const a=t;if(!a||!Ws(a,n))return;(i=n.mapSetPlugin_)==null||i.fixSetContents(a);const s=Nc(a);ym(e,a.draft_??a,s,r),vm(a,n)})}function vm(e,t){var o;if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(((o=e.assigned_)==null?void 0:o.size)??0)>0)){const{patchPlugin_:n}=t;if(n){const a=n.getPath(e);a&&n.generatePatches_(e,a,t)}bm(e)}}function e1(e,t,r){const{scope_:o}=e;if($r(r)){const n=r[It];Ws(n,o)&&n.callbacks_.push(function(){Ys(e);const s=Nc(n);ym(e,r,s,t)})}else Jt(r)&&e.callbacks_.push(function(){const a=Gr(e);e.type_===3?a.has(r)&&Hs(r,o.handledSet_,o):wc(a,t,e.type_)===r&&o.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&Hs(wc(e.copy_,t,e.type_),o.handledSet_,o)})}function Hs(e,t,r){return!r.immer_.autoFreeze_&&r.unfinalizedDrafts_<1||$r(e)||t.has(e)||!Jt(e)||Bs(e)||(t.add(e),Ls(e,(o,n)=>{if($r(n)){const a=n[It];if(Ws(a,r)){const s=Nc(a);Fs(e,o,s,e.type_),bm(a)}}else Jt(n)&&Hs(n,t,r)})),e}function t1(e,t){const r=$s(e),o={type_:r?1:0,scope_:t?t.scope_:pm(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let n=o,a=js;r&&(n=[o],a=Vn);const{revoke:s,proxy:i}=Proxy.revocable(n,a);return o.draft_=i,o.revoke_=s,[i,o]}var js={get(e,t){if(t===It)return e;let r=e.scope_.arrayMethodsPlugin_;const o=e.type_===1&&typeof t=="string";if(o&&r!=null&&r.isArrayOperationMethod(t))return r.createMethodInterceptor(e,t);const n=Gr(e);if(!xc(n,t,e.type_))return o1(e,n,t);const a=n[t];if(e.finalized_||!Jt(a)||o&&e.operationMethod&&(r!=null&&r.isMutatingArrayMethod(e.operationMethod))&&qk(t))return a;if(a===Tc(e.base_,t)||r1(e,t,a)){Ys(e);const s=e.type_===1?+t:t,i=Pc(e.scope_,a,e,s);return e.copy_[s]=i}return a},has(e,t){return t in Gr(e)},ownKeys(e){return Reflect.ownKeys(Gr(e))},set(e,t,r){const o=xm(Gr(e),t);if(o!=null&&o.set)return o.set.call(e.draft_,r),!0;if(!e.modified_){const n=Tc(Gr(e),t),a=n==null?void 0:n[It];if(a&&a.base_===r)return e.copy_[t]=r,e.assigned_.set(t,!1),!0;if(Yk(r,n)&&(r!==void 0||xc(e.base_,t,e.type_)))return!0;Ys(e),Ic(e)}return e.copy_[t]===r&&(r!==void 0||xc(e.copy_,t,e.type_))||Number.isNaN(r)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=r,e.assigned_.set(t,!0),e1(e,t,r)),!0},deleteProperty(e,t){return Ys(e),Tc(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),Ic(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const r=Gr(e),o=Reflect.getOwnPropertyDescriptor(r,t);return o&&{[Os]:!0,[vc]:e.type_!==1||t!=="length",[Ms]:o[Ms],[Fn]:r[t]}},defineProperty(){Ut(11)},getPrototypeOf(e){return Ro(e.base_)},setPrototypeOf(){Ut(12)}},Vn={};for(let e in js){let t=js[e];Vn[e]=function(){const r=arguments;return r[0]=r[0][0],t.apply(this,r)}}Vn.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&Ut(13),Vn.set.call(this,e,t,void 0)},Vn.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&Ut(14),js.set.call(this,e[0],t,r,e[0])};function Tc(e,t){const r=e[It];return(r?Gr(r):e)[t]}function r1(e,t,r){var o;return e.type_!==1||!e.allIndicesReassigned_||(o=e.assigned_)!=null&&o.get(t)||!Jt(r)||r[It]?!1:e.baseRefs_.has(r)}function o1(e,t,r){var n;const o=xm(t,r);return o?Fn in o?o[Fn]:(n=o.get)==null?void 0:n.call(e.draft_):void 0}function xm(e,t){if(!(t in e))return;let r=Ro(e);for(;r;){const o=Object.getOwnPropertyDescriptor(r,t);if(o)return o;r=Ro(r)}}function Ic(e){e.modified_||(e.modified_=!0,e.parent_&&Ic(e.parent_))}function Ys(e){e.copy_||(e.assigned_=new Map,e.copy_=Ec(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var n1=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(t,r,o)=>{if(_o(t)&&!_o(r)){const a=r;r=t;const s=this;return function(c=a,...d){return s.produce(c,f=>r.call(this,f,...d))}}_o(r)||Ut(6),o!==void 0&&!_o(o)&&Ut(7);let n;if(Jt(t)){const a=hm(this),s=Pc(a,t,void 0);let i=!0;try{n=r(s),i=!1}finally{i?Dc(a):Ac(a)}return fm(a,o),mm(n,a)}else if(!t||!Cc(t)){if(n=r(t),n===void 0&&(n=t),n===am&&(n=void 0),this.autoFreeze_&&kc(n,!0),o){const a=[],s=[];Do(_c).generateReplacementPatches_(t,n,{patches_:a,inversePatches_:s}),o(a,s)}return n}else Ut(1,t)},this.produceWithPatches=(t,r)=>{if(_o(t))return(s,...i)=>this.produceWithPatches(s,c=>t(c,...i));let o,n;return[this.produce(t,r,(s,i)=>{o=s,n=i}),o,n]},Sc(e==null?void 0:e.autoFreeze)&&this.setAutoFreeze(e.autoFreeze),Sc(e==null?void 0:e.useStrictShallowCopy)&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),Sc(e==null?void 0:e.useStrictIteration)&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Jt(e)||Ut(8),$r(e)&&(e=a1(e));const t=hm(this),r=Pc(t,e,void 0);return r[It].isManual_=!0,Ac(t),r}finishDraft(e,t){const r=e&&e[It];(!r||!r.isManual_)&&Ut(9);const{scope_:o}=r;return fm(o,t),mm(void 0,o)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let r;for(r=t.length-1;r>=0;r--){const n=t[r];if(n.path.length===0&&n.op==="replace"){e=n.value;break}}r>-1&&(t=t.slice(r+1));const o=Do(_c).applyPatches_;return $r(e)?o(e,t):this.produce(e,n=>o(n,t))}};function Pc(e,t,r,o){const[n,a]=Gs(t)?Do(Us).proxyMap_(t,r):Vs(t)?Do(Us).proxySet_(t,r):t1(t,r);return((r==null?void 0:r.scope_)??pm()).drafts_.push(n),a.callbacks_=(r==null?void 0:r.callbacks_)??[],a.key_=o,r&&o!==void 0?Rk(r,a,o):a.callbacks_.push(function(c){var f;(f=c.mapSetPlugin_)==null||f.fixSetContents(a);const{patchPlugin_:d}=c;a.modified_&&d&&d.generatePatches_(a,[],c)}),n}function a1(e){return $r(e)||Ut(10,e),wm(e)}function wm(e){if(!Jt(e)||Bs(e))return e;const t=e[It];let r,o=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=Ec(e,t.scope_.immer_.useStrictShallowCopy_),o=t.scope_.immer_.shouldUseStrictIteration()}else r=Ec(e,!0);return Ls(r,(n,a)=>{Fs(r,n,wm(a))},o),t&&(t.finalized_=!1),r}var s1=new n1,Cm=s1.produce;function Sm(e){return({dispatch:r,getState:o})=>n=>a=>typeof a=="function"?a(r,o,e):n(a)}var l1=Sm(),i1=Sm,c1=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?Ts:Ts.apply(null,arguments)},d1=e=>e&&typeof e.match=="function";function Nm(e,t){function r(...o){if(t){let n=t(...o);if(!n)throw new Error(process.env.NODE_ENV==="production"?$e(0):"prepareAction did not return an object");return{type:e,payload:n.payload,..."meta"in n&&{meta:n.meta},..."error"in n&&{error:n.error}}}return{type:e,payload:o[0]}}return r.toString=()=>`${e}`,r.type=e,r.match=o=>nm(o)&&o.type===e,r}function u1(e){return typeof e=="function"&&"type"in e&&d1(e)}function p1(e){const t=e?`${e}`.split("/"):[],r=t[t.length-1]||"actionCreator";return`Detected an action creator with type "${e||"unknown"}" being dispatched.
177
- Make sure you're calling the action creator before dispatching, i.e. \`dispatch(${r}())\` instead of \`dispatch(${r})\`. This is necessary even if the action has no payload.`}function f1(e={}){if(process.env.NODE_ENV==="production")return()=>r=>o=>r(o);const{isActionCreator:t=u1}=e;return()=>r=>o=>(t(o)&&console.warn(p1(o.type)),r(o))}function Em(e,t){let r=0;return{measureTime(o){const n=Date.now();try{return o()}finally{const a=Date.now();r+=a-n}},warnIfExceeded(){r>e&&console.warn(`${t} took ${r}ms, which is more than the warning threshold of ${e}ms.
176
+ Would you like to attempt to import anyway? The schema will be sanitized.`)){const V=JSON.parse(T),W=p_(V);i(W)}return}const B=F.errors.filter(G=>G.type==="warning");B.length>0&&console.warn("Schema import warnings:",B),i(L)}catch(T){console.error("Failed to import schema:",T),alert("Invalid JSON file. Please select a valid form schema.")}},D.readAsText(k)}f.current&&(f.current.value="")},b=new Set((u==null?void 0:u.hideBuiltinActions)??[]);(u==null?void 0:u.showUndoRedo)===!1&&(b.add("undo"),b.add("redo")),(u==null?void 0:u.showModeToggle)===!1&&(b.add("design-mode"),b.add("preview-mode")),(u==null?void 0:u.showImportExport)===!1&&(b.add("import"),b.add("export")),(u==null?void 0:u.showReset)===!1&&b.add("reset");const v=new Map,N=(u==null?void 0:u.actions)??[];N.forEach(E=>{E.override&&v.set(E.override,E)});const x=P.useMemo(()=>{const E={left:[],center:[],right:[]};return N.filter(k=>!k.override&&!Vc(k,h)).forEach(k=>{E[k.position].push(k)}),Object.values(E).forEach(k=>{k.sort((_,D)=>(_.order??0)-(D.order??0))}),E},[N,h]),w=E=>!(b.has(E)||v.has(E)),C=(E,k)=>{if(b.has(E))return null;const _=v.get(E);return _&&!Vc(_,h)?l.jsx(Bo,{action:_,context:h},E):k()};return l.jsx(Va,{children:l.jsxs("div",{className:m("flex items-center justify-between px-4 py-2 bg-card border-b border-border"),children:[l.jsxs("div",{className:m("flex items-center gap-1"),children:[x.left.filter(E=>(E.order??0)<0).map(E=>l.jsx(Bo,{action:E,context:h},E.id)),C("undo",()=>w("undo")?l.jsxs(Or,{children:[l.jsx(Mr,{asChild:!0,children:l.jsx(Je,{variant:"ghost",size:"icon",onClick:o,disabled:!t,children:l.jsx(vE,{className:m("h-5 w-5")})})}),l.jsx(xr,{children:l.jsx("p",{children:"Undo (⌘Z)"})})]},"undo"):null),C("redo",()=>w("redo")?l.jsxs(Or,{children:[l.jsx(Mr,{asChild:!0,children:l.jsx(Je,{variant:"ghost",size:"icon",onClick:n,disabled:!r,children:l.jsx(bE,{className:m("h-5 w-5")})})}),l.jsx(xr,{children:l.jsx("p",{children:"Redo (⌘⇧Z)"})})]},"redo"):null),x.left.filter(E=>(E.order??0)>=0).map(E=>l.jsx(Bo,{action:E,context:h},E.id))]}),l.jsxs("div",{className:m("flex items-center gap-2"),children:[x.center.filter(E=>(E.order??0)<0).map(E=>l.jsx(Bo,{action:E,context:h},E.id)),(u==null?void 0:u.showModeToggle)!==!1&&Kt.getVisible().length>0&&l.jsx("div",{className:m("flex items-center bg-muted rounded-lg p-1"),children:Kt.getVisible().map(E=>{const k=`${E.id}-mode`;if(b.has(k))return null;const _=E.icon,D=d===E.id;return l.jsxs(Or,{children:[l.jsx(Mr,{asChild:!0,children:l.jsx(Je,{variant:D?"secondary":"ghost",size:"icon",onClick:()=>p(E.id),className:m(D&&"bg-background shadow-sm"),children:l.jsx(_,{className:m("h-5 w-5")})})}),l.jsx(xr,{children:l.jsx("p",{children:E.description??E.label})})]},E.id)})}),x.center.filter(E=>(E.order??0)>=0).map(E=>l.jsx(Bo,{action:E,context:h},E.id))]}),l.jsxs("div",{className:m("flex items-center gap-1"),children:[x.right.filter(E=>(E.order??0)<0).map(E=>l.jsx(Bo,{action:E,context:h},E.id)),l.jsx("input",{ref:f,type:"file",accept:".json",onChange:y,className:m("hidden")}),C("import",()=>w("import")?l.jsxs(Or,{children:[l.jsx(Mr,{asChild:!0,children:l.jsx(Je,{variant:"ghost",size:"icon",onClick:g,children:l.jsx(xE,{className:m("h-5 w-5")})})}),l.jsx(xr,{children:l.jsx("p",{children:"Import"})})]},"import"):null),C("export",()=>w("export")?l.jsxs(Or,{children:[l.jsx(Mr,{asChild:!0,children:l.jsx(Je,{variant:"ghost",size:"icon",onClick:s,children:l.jsx(hE,{className:m("h-5 w-5")})})}),l.jsx(xr,{children:l.jsx("p",{children:"Export"})})]},"export"):null),C("reset",()=>w("reset")?l.jsxs(Or,{children:[l.jsx(Mr,{asChild:!0,children:l.jsx(Je,{variant:"ghost",size:"icon",className:m("text-destructive hover:text-destructive hover:bg-destructive/10"),onClick:c,children:l.jsx(mc,{className:m("h-5 w-5")})})}),l.jsx(xr,{children:l.jsx("p",{children:"Reset"})})]},"reset"):null),x.right.filter(E=>(E.order??0)>=0).map(E=>l.jsx(Bo,{action:E,context:h},E.id))]})]})})},Jn=({containerId:e,stepId:t,label:r="Drop elements here",children:o,isEmpty:n=!0})=>{const[s,a]=P.useState(!1),i=P.useRef(null),c=te(h=>h.addElementToContainer),d=te(h=>h.setDraggedElementType),p=h=>{h.preventDefault();const y=h.currentTarget.querySelectorAll("[data-drop-zone]");for(const b of y){const v=b.getBoundingClientRect();if(h.clientX>=v.left&&h.clientX<=v.right&&h.clientY>=v.top&&h.clientY<=v.bottom){a(!1);return}}h.stopPropagation(),a(!0)},u=h=>{h.preventDefault();const g=h.relatedTarget,y=h.currentTarget;if(g&&y.contains(g)){const b=g.closest("[data-drop-zone]");b&&b!==y&&a(!1);return}h.stopPropagation(),a(!1)},f=h=>{h.preventDefault();const y=h.currentTarget.querySelectorAll("[data-drop-zone]");for(const v of y){const N=v.getBoundingClientRect();if(h.clientX>=N.left&&h.clientX<=N.right&&h.clientY>=N.top&&h.clientY<=N.bottom){a(!1);return}}h.stopPropagation(),a(!1);const b=h.dataTransfer.getData("elementType");b&&(c(b,e,t),d(null))};return l.jsx("div",{ref:i,"data-drop-zone":e,"data-step-id":t,onDragOver:p,onDragLeave:u,onDrop:f,className:m("min-h-[60px] rounded transition-all",s?"border-2 border-blue-400 border-dashed bg-blue-50":n?"border-2 border-dashed border-gray-300 bg-gray-50/50":"border border-dashed border-gray-200"),style:{pointerEvents:"auto"},children:n?l.jsx("div",{className:m("flex items-center justify-center h-full min-h-[60px] text-gray-400 text-sm pointer-events-none"),children:s?"Release to drop":r}):l.jsx("div",{className:m("space-y-2 p-2"),children:o})})},fm=e=>{const t=Ch(e);if(!t)return"📋";if(typeof t=="string")return t;const r=t;return l.jsx(r,{className:m("w-4 h-4 inline-block")})},Ga=({element:e,isSelected:t,isHovered:r,onSelect:o,onHover:n,onDelete:s})=>{const a=()=>e.type==="group"?l.jsx(pm,{element:e}):e.type==="grid"?l.jsx(hm,{element:e}):e.type==="repeatGroup"?l.jsx(mm,{element:e}):l.jsx(Ia,{element:e,isSelected:t}),i=e.type==="group"||e.type==="grid"||e.type==="repeatGroup";return l.jsxs("div",{onClick:c=>{c.stopPropagation(),o()},onMouseEnter:()=>n(!0),onMouseLeave:()=>n(!1),className:m("relative p-3 rounded-lg border transition-all",i?"cursor-default":"cursor-pointer",t?"border-blue-500 bg-blue-50/50 shadow-sm":r?"border-blue-300 bg-gray-50":"border-gray-200 hover:border-gray-300"),children:[(t||r)&&l.jsxs("div",{className:m("absolute -top-2 left-2 px-1.5 py-0.5 bg-blue-500 text-white text-xs rounded-full shadow-sm flex items-center gap-1"),children:[fm(e.type)," ",yc(e.type)]}),(t||r)&&l.jsx("button",{onClick:c=>{c.stopPropagation(),s()},className:m("absolute -top-2 right-2 w-5 h-5 bg-red-500 text-white rounded-full flex items-center justify-center text-xs hover:bg-red-600 shadow-sm"),children:"×"}),a()]})},N_=({element:e,index:t,isSelected:r,isHovered:o,onSelect:n,onHover:s,onDelete:a,onDuplicate:i,onDragStart:c,onDragOver:d,onDragEnd:p,isDragTarget:u})=>{const f=()=>e.type==="group"?l.jsx(pm,{element:e}):e.type==="grid"?l.jsx(hm,{element:e}):e.type==="repeatGroup"?l.jsx(mm,{element:e}):e.type==="pages"?l.jsx(C_,{element:e}):l.jsx(Ia,{element:e,isSelected:r}),h=b=>{b.dataTransfer.effectAllowed="move",b.dataTransfer.setData("elementId",e.id),c(t)},g=b=>{b.preventDefault(),b.dataTransfer.dropEffect="move",d(t)},y=()=>{p()};return l.jsxs("div",{draggable:!0,onDragStart:h,onDragOver:g,onDragEnd:y,onClick:n,onMouseEnter:()=>s(!0),onMouseLeave:()=>s(!1),className:m("relative p-4 rounded-lg border-2 transition-all cursor-grab active:cursor-grabbing",u?"border-blue-500 border-dashed bg-blue-50":r?"border-blue-500 bg-blue-50/30 shadow-sm":o?"border-blue-300 bg-gray-50/50":"border-gray-200 bg-white hover:border-gray-300"),children:[u&&l.jsx("div",{className:m("absolute -top-1 left-0 right-0 h-0.5 bg-blue-500 rounded")}),(r||o)&&l.jsxs("div",{className:m("absolute -top-3 left-3 px-2 py-0.5 bg-blue-500 text-white text-xs rounded-full shadow-sm flex items-center gap-1"),children:[fm(e.type)," ",yc(e.type)]}),(r||o)&&l.jsxs("div",{className:m("absolute -top-3 right-3 flex gap-1"),children:[l.jsx("button",{onClick:b=>{b.stopPropagation(),i()},className:m("p-1 bg-white border border-gray-200 rounded shadow-sm hover:bg-gray-50 text-xs"),title:"Duplicate",children:"📋"}),l.jsx("button",{onClick:b=>{b.stopPropagation(),a()},className:m("p-1 bg-white border border-gray-200 rounded shadow-sm hover:bg-red-50 hover:border-red-200 text-xs"),title:"Delete",children:"🗑️"})]}),f(),(r||o)&&l.jsxs("div",{className:m("absolute left-1 top-1/2 -translate-y-1/2 flex flex-col gap-0.5 cursor-grab"),title:"Drag to reorder",children:[l.jsx("div",{className:m("w-4 h-0.5 bg-gray-400 rounded")}),l.jsx("div",{className:m("w-4 h-0.5 bg-gray-400 rounded")}),l.jsx("div",{className:m("w-4 h-0.5 bg-gray-400 rounded")})]})]})},pm=({element:e})=>{var p;const t=e.properties.label||"Group",r=e.properties.description,o=te(u=>u.schema.elements),n=te(u=>u.selectedElementId),s=te(u=>u.hoveredElementId),a=te(u=>u.selectElement),i=te(u=>u.setHoveredElementId),c=te(u=>u.deleteElement),d=o.filter(u=>u.parentId===e.id).sort((u,f)=>u.order-f.order);return l.jsxs("div",{className:m("border border-gray-200 rounded-lg overflow-hidden"),style:{padding:((p=e.config)==null?void 0:p.padding)||16},children:[l.jsxs("div",{className:m("mb-3"),children:[l.jsx("h3",{className:m("font-medium text-gray-800"),children:t}),r&&l.jsx("p",{className:m("text-sm text-gray-500"),children:r})]}),l.jsx(Jn,{containerId:e.id,label:"Drop elements into this group",isEmpty:d.length===0,children:d.map(u=>l.jsx(Ga,{element:u,isSelected:n===u.id,isHovered:s===u.id,onSelect:()=>a(u.id),onHover:f=>i(f?u.id:null),onDelete:()=>c(u.id)},u.id))})]})},hm=({element:e})=>{var p,u;const t=e.properties.label,r=((p=e.config)==null?void 0:p.gridColumns)||2,o=te(f=>f.schema.elements),n=te(f=>f.selectedElementId),s=te(f=>f.hoveredElementId),a=te(f=>f.selectElement),i=te(f=>f.setHoveredElementId),c=te(f=>f.deleteElement),d=o.filter(f=>f.parentId===e.id).sort((f,h)=>f.order-h.order);return l.jsxs("div",{className:m("border border-gray-200 rounded-lg p-4"),children:[t&&l.jsx("div",{className:m("mb-3"),children:l.jsx("h3",{className:m("font-medium text-gray-800"),children:t})}),l.jsx("div",{className:m("grid"),style:{gridTemplateColumns:`repeat(${r}, 1fr)`,gap:((u=e.config)==null?void 0:u.gridGap)||16},children:d.length===0?Array.from({length:r}).map((f,h)=>l.jsx(Jn,{containerId:e.id,label:`Column ${h+1}`},h)):d.map(f=>l.jsx(Ga,{element:f,isSelected:n===f.id,isHovered:s===f.id,onSelect:()=>a(f.id),onHover:h=>i(h?f.id:null),onDelete:()=>c(f.id)},f.id))}),d.length>0&&d.length<r*3&&l.jsx("div",{className:m("mt-3"),children:l.jsx(Jn,{containerId:e.id,label:"Add more elements"})})]})},mm=({element:e})=>{var p,u,f;const t=e.properties.label||"Repeat Group",r=e.properties.description,o=te(h=>h.schema.elements),n=te(h=>h.selectedElementId),s=te(h=>h.hoveredElementId),a=te(h=>h.selectElement),i=te(h=>h.setHoveredElementId),c=te(h=>h.deleteElement),d=o.filter(h=>h.parentId===e.id).sort((h,g)=>h.order-g.order);return l.jsxs("div",{className:m("border border-gray-200 rounded-lg p-4"),children:[l.jsxs("div",{className:m("mb-3"),children:[l.jsxs("div",{className:m("flex items-center gap-2"),children:[l.jsx("span",{className:m("text-lg"),children:"🔄"}),l.jsx("h3",{className:m("font-medium text-gray-800"),children:t})]}),r&&l.jsx("p",{className:m("text-sm text-gray-500"),children:r})]}),l.jsxs("div",{className:m("border border-dashed border-gray-300 rounded-lg p-3 bg-gray-50/50"),children:[l.jsx("div",{className:m("text-xs text-gray-500 mb-2 font-medium"),children:"📋 Item Template (will repeat)"}),l.jsx(Jn,{containerId:e.id,label:"Drop elements to create the repeatable template",isEmpty:d.length===0,children:d.map(h=>l.jsx(Ga,{element:h,isSelected:n===h.id,isHovered:s===h.id,onSelect:()=>a(h.id),onHover:g=>i(g?h.id:null),onDelete:()=>c(h.id)},h.id))})]}),l.jsx("div",{className:m("mt-3"),children:l.jsxs("button",{disabled:!0,className:m("text-sm text-blue-600 hover:text-blue-700 flex items-center gap-1 opacity-70"),children:["➕ ",((p=e.config)==null?void 0:p.addButtonText)||"Add Item"]})}),l.jsxs("div",{className:m("mt-3 text-xs text-gray-500 bg-gray-100 rounded p-2"),children:["ℹ️ Min: ",((u=e.config)==null?void 0:u.minItems)||1,", Max:"," ",((f=e.config)==null?void 0:f.maxItems)||10," items"]})]})},C_=({element:e})=>{var w,C,E,k;const t=te(_=>_.schema.elements),r=te(_=>_.selectedElementId),o=te(_=>_.hoveredElementId),n=te(_=>_.selectElement),s=te(_=>_.setHoveredElementId),a=te(_=>_.deleteElement),i=te(_=>_.addWizardStep),c=te(_=>_.updateWizardStep),d=te(_=>_.removeWizardStep),p=te(_=>_.setActiveWizardStep),u=((w=e.config)==null?void 0:w.steps)||[],f=((C=e.config)==null?void 0:C.activeStepId)||((E=u[0])==null?void 0:E.id),h=u.findIndex(_=>_.id===f),g=u[h],y=h===u.length-1,b=t.filter(_=>{var D;return _.parentId?_.parentId===`${e.id}:${f}`||_.parentId===e.id&&((D=_.config)==null?void 0:D.wizardStepId)===f:!1}).sort((_,D)=>_.order-D.order),v=()=>{const _={id:Ks(),label:`Step ${u.length+1}`,description:""};i(e.id,_)},N=()=>{h>0&&p(e.id,u[h-1].id)},x=()=>{h<u.length-1&&p(e.id,u[h+1].id)};return l.jsxs("div",{className:m("border border-gray-200 rounded-lg overflow-hidden"),children:[l.jsxs("div",{className:m("bg-gray-50 border-b border-gray-200 p-3"),children:[l.jsxs("div",{className:m("flex items-center gap-2 mb-2"),children:[l.jsx("span",{className:m("text-lg"),children:"📑"}),l.jsx("h3",{className:m("font-medium text-gray-800"),children:e.properties.label||"Multi-Step Form"})]}),l.jsxs("div",{className:m("flex gap-1 flex-wrap"),children:[u.map((_,D)=>l.jsxs("button",{onClick:()=>p(e.id,_.id),className:m("px-3 py-1.5 text-sm rounded transition-colors",_.id===f?"bg-blue-500 text-white":"bg-white border border-gray-200 hover:bg-gray-100"),children:[D+1,". ",_.label]},_.id)),l.jsx("button",{onClick:v,className:m("px-3 py-1.5 text-sm border border-dashed border-gray-300 rounded hover:bg-gray-100 text-gray-500"),children:"+ Add Step"})]}),((k=e.config)==null?void 0:k.showProgressBar)&&l.jsxs("div",{className:m("mt-3"),children:[l.jsx("div",{className:m("h-2 bg-gray-200 rounded-full overflow-hidden"),children:l.jsx("div",{className:m("h-full bg-blue-500 transition-all"),style:{width:`${(h+1)/u.length*100}%`}})}),l.jsxs("div",{className:m("text-xs text-gray-500 mt-1"),children:["Step ",h+1," of ",u.length]})]})]}),l.jsx("div",{className:m("p-4"),children:g&&l.jsxs(l.Fragment,{children:[l.jsxs("div",{className:m("mb-4"),children:[l.jsx("input",{type:"text",value:g.label,onChange:_=>c(e.id,f,{label:_.target.value}),className:m("text-lg font-semibold text-gray-800 border-none bg-transparent w-full focus:outline-none focus:ring-0"),placeholder:"Step title"}),l.jsx("input",{type:"text",value:g.description||"",onChange:_=>c(e.id,f,{description:_.target.value}),className:m("text-sm text-gray-500 border-none bg-transparent w-full focus:outline-none focus:ring-0"),placeholder:"Step description (optional)"})]}),l.jsx(Jn,{containerId:e.id,stepId:f,label:"Drop elements for this step",isEmpty:b.length===0,children:b.map(_=>l.jsx(Ga,{element:_,isSelected:r===_.id,isHovered:o===_.id,onSelect:()=>n(_.id),onHover:D=>s(D?_.id:null),onDelete:()=>a(_.id)},_.id))}),l.jsxs("div",{className:m("flex justify-between mt-4 pt-4 border-t border-gray-200"),children:[l.jsx("button",{disabled:h===0,onClick:N,className:m("px-4 py-2 text-sm border border-gray-300 rounded hover:bg-gray-50 disabled:opacity-50 disabled:cursor-not-allowed"),children:"← Previous"}),l.jsxs("div",{className:m("flex gap-2"),children:[u.length>1&&l.jsx("button",{onClick:()=>d(e.id,f),className:m("px-3 py-2 text-sm text-red-600 hover:bg-red-50 rounded"),children:"🗑️ Delete Step"}),l.jsx("button",{disabled:y,onClick:x,className:m("px-4 py-2 text-sm bg-blue-500 text-white rounded hover:bg-blue-600 disabled:opacity-50 disabled:cursor-not-allowed"),children:"Next →"})]})]})]})}),l.jsx("div",{className:m("px-4 pb-4"),children:l.jsxs("div",{className:m("text-xs text-gray-500 bg-gray-50 rounded p-2"),children:["ℹ️ This wizard has ",u.length," step(s). Click on step tabs to switch between them and add elements. The Submit button will only appear on the last step during form submission."]})})]})},E_=()=>l.jsxs("div",{className:m("flex flex-col items-center justify-center h-full text-muted-foreground"),children:[l.jsx("div",{className:m("text-6xl mb-4"),children:"📝"}),l.jsx("h3",{className:m("text-lg font-medium text-foreground/70 mb-2"),children:"Start Building Your Form"}),l.jsx("p",{className:m("text-sm text-center max-w-md"),children:"Drag elements from the left sidebar or click them to add to your form. Click on any element to configure its properties."})]}),__=({toolbarConfig:e})=>{const t=te(U=>U.schema),r=te(U=>U.selectedElementId),o=te(U=>U.hoveredElementId),n=te(U=>U.addElement),s=te(U=>U.selectElement),a=te(U=>U.deleteElement),i=te(U=>U.duplicateElement),c=te(U=>U.reorderElements),d=te(U=>U.setHoveredElementId),p=te(U=>U.undo),u=te(U=>U.redo),f=te(U=>U.canUndo),h=te(U=>U.canRedo),g=te(U=>U.exportSchema),y=te(U=>U.loadSchema),b=te(U=>U.resetForm),v=te(U=>U.mode),N=te(U=>U.setMode),x=te(U=>U.hasWizard),[w,C]=P.useState(!1),[E,k]=P.useState(null),[_,D]=P.useState(null),A=x(),I=U=>{if(U.preventDefault(),A){U.dataTransfer.dropEffect="none";return}U.dataTransfer.dropEffect="copy",C(!0)},T=U=>{U.currentTarget.contains(U.relatedTarget)||C(!1)},L=U=>{if(U.preventDefault(),C(!1),A)return;const Q=U.dataTransfer.getData("elementType");Q&&n(Q)},F=()=>{const U=g(),Q=new Blob([JSON.stringify(U,null,2)],{type:"application/json"}),Ce=URL.createObjectURL(Q),oe=document.createElement("a");oe.href=Ce,oe.download=`${t.title.replace(/\s+/g,"-").toLowerCase()}-schema.json`,document.body.appendChild(oe),oe.click(),document.body.removeChild(oe),URL.revokeObjectURL(Ce)},B=U=>{y(U)},G=()=>{(t.elements.length===0||window.confirm("Are you sure you want to reset the form? This will delete all elements."))&&b()},z=U=>{U.target===U.currentTarget&&s(null)},H=[...t.elements].filter(U=>!U.parentId).sort((U,Q)=>U.order-Q.order),V=U=>{k(U)},W=U=>{E!==null&&E!==U&&D(U)},pe=()=>{E!==null&&_!==null&&E!==_&&c(E,_),k(null),D(null)};return l.jsxs("div",{className:m("flex-1 flex flex-col bg-gray-100 overflow-hidden"),children:[l.jsx(S_,{schema:t,canUndo:f(),canRedo:h(),onUndo:p,onRedo:u,onExport:F,exportSchema:g,onImport:B,onReset:G,mode:v,onModeChange:N,toolbarConfig:e}),l.jsx("div",{className:m("flex-1 overflow-auto p-4",w&&!A?"bg-blue-50":""),onDragOver:I,onDragLeave:T,onDrop:L,onClick:z,children:l.jsxs("div",{className:m("max-w-4xl mx-auto p-2"),children:[l.jsx("div",{className:m("mb-0 text-center"),children:t.description&&l.jsx("p",{className:m("text-gray-500"),children:t.description})}),l.jsx("div",{className:m("bg-white rounded-xl shadow-sm border-2 transition-colors",w&&!A?"border-blue-400 border-dashed":"border-gray-200"),children:H.length===0?l.jsx("div",{className:m("p-2"),children:l.jsx(E_,{})}):l.jsx("div",{className:m("p-4 space-y-2"),children:H.map((U,Q)=>l.jsx(N_,{element:U,index:Q,isSelected:r===U.id,isHovered:o===U.id,onSelect:()=>s(U.id),onHover:Ce=>d(Ce?U.id:null),onDelete:()=>a(U.id),onDuplicate:()=>i(U.id),onDragStart:V,onDragOver:W,onDragEnd:pe,isDragTarget:_===Q},U.id))})}),w&&!A&&l.jsx("div",{className:m("mt-4 p-4 border-2 border-dashed border-blue-400 rounded-lg text-center text-blue-500 bg-blue-50/50"),children:"Drop element here"}),A&&w&&l.jsx("div",{className:m("mt-4 p-4 border-2 border-dashed border-orange-400 rounded-lg text-center text-orange-600 bg-orange-50/50"),children:"⚠️ Drop elements inside wizard steps, not here"})]})})]})},Gc=[48,1632,1776,1984,2406,2534,2662,2790,2918,3046,3174,3302,3430,3558,3664,3792,3872,4160,4240,6112,6160,6470,6608,6784,6800,6992,7088,7232,7248,42528,43216,43264,43472,43504,43600,44016,65296,66720,68912,68928,69734,69872,69942,70096,70384,70736,70864,71248,71360,71376,71386,71472,71904,72016,72688,72784,73040,73120,73184,73552,90416,92768,92864,93008,93552,118e3,120782,120792,120802,120812,120822,123200,123632,124144,124401,125264,130032],k_=e=>e.replace(new RegExp("\\p{Nd}","gu"),t=>{const r=t.codePointAt(0);if(r<=57)return t;let o=0,n=Gc.length-1;for(;o<n;){const s=o+n+1>>>1;Gc[s]<=r?o=s:n=s-1}return String(r-Gc[o])}),A_={"⁰":"0","¹":"1","²":"2","³":"3","⁴":"4","⁵":"5","⁶":"6","⁷":"7","⁸":"8","⁹":"9","₀":"0","₁":"1","₂":"2","₃":"3","₄":"4","₅":"5","₆":"6","₇":"7","₈":"8","₉":"9"},D_=/[⁰¹²³⁴⁵⁶⁷⁸⁹₀₁₂₃₄₅₆₇₈₉]/g,$_={"¼":"1/4","½":"1/2","¾":"3/4","⅐":"1/7","⅑":"1/9","⅒":"1/10","⅓":"1/3","⅔":"2/3","⅕":"1/5","⅖":"2/5","⅗":"3/5","⅘":"4/5","⅙":"1/6","⅚":"5/6","⅛":"1/8","⅜":"3/8","⅝":"5/8","⅞":"7/8","⅟":"1/"},T_=/^(?=[-+]?\s*\.\d|[-+]?\s*\d)([-+])?\s*((?:\d(?:[,_]\d|\d)*)*)(([eE][+-]?\d(?:[,_]\d|\d)*)?|\.\d(?:[,_]\d|\d)*([eE][+-]?\d(?:[,_]\d|\d)*)?|(\s+\d(?:[,_]\d|\d)*\s*)?\s*\/\s*\d(?:[,_]\d|\d)*)?$/,P_=/^(?=[-+]?\s*\.\d|[-+]?\s*\d)([-+])?\s*((?:\d(?:[,_]\d|\d)*)*)(([eE][+-]?\d(?:[,_]\d|\d)*)?|\.\d(?:[,_]\d|\d)*([eE][+-]?\d(?:[,_]\d|\d)*)?|(\s+\d(?:[,_]\d|\d)*\s*)?\s*\/\s*\d(?:[,_]\d|\d)*)?(\s*[^.\d/].*)?/,I_=/([¼½¾⅐⅑⅒⅓⅔⅕⅖⅗⅘⅙⅚⅛⅜⅝⅞⅟}])/g,za={MMM:3e3,MM:2e3,M:1e3,CM:900,DCCC:800,DCC:700,DC:600,D:500,CD:400,CCC:300,CC:200,C:100,XC:90,LXXX:80,LXX:70,LX:60,L:50,XL:40,XXX:30,XX:20,XII:12,XI:11,X:10,IX:9,VIII:8,VII:7,VI:6,V:5,IV:4,III:3,II:2,I:1},O_={"Ⅰ":"I","Ⅱ":"II","Ⅲ":"III","Ⅳ":"IV","Ⅴ":"V","Ⅵ":"VI","Ⅶ":"VII","Ⅷ":"VIII","Ⅸ":"IX","Ⅹ":"X","Ⅺ":"XI","Ⅻ":"XII","Ⅼ":"L","Ⅽ":"C","Ⅾ":"D","Ⅿ":"M","ⅰ":"I","ⅱ":"II","ⅲ":"III","ⅳ":"IV","ⅴ":"V","ⅵ":"VI","ⅶ":"VII","ⅷ":"VIII","ⅸ":"IX","ⅹ":"X","ⅺ":"XI","ⅻ":"XII","ⅼ":"L","ⅽ":"C","ⅾ":"D","ⅿ":"M"},M_=/([ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫⅬⅭⅮⅯⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹⅺⅻⅼⅽⅾⅿ])/gi,L_=/^(?=[MDCLXVI])(M{0,3})(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})$/i,gm={round:3,allowTrailingInvalid:!1,romanNumerals:!1,bigIntOnOverflow:!1,decimalSeparator:".",allowCurrency:!1,percentage:!1,verbose:!1},F_=e=>{const t=`${e}`.replace(M_,(i,c)=>O_[c]).toUpperCase(),r=L_.exec(t);if(!r)return NaN;const[,o,n,s,a]=r;return(za[o]??0)+(za[n]??0)+(za[s]??0)+(za[a]??0)},V_=/^\s*\//,G_=new RegExp("^([-+]?)\\s*(\\p{Sc}+)\\s*","u"),z_=new RegExp("\\s*(\\p{Sc}+)$","u"),B_=/%$/;function U_(e,t=gm){const r={...gm,...t},o=typeof e=="string"?e:`${e}`;let n,s,a,i,c,d,p,u;const f=A=>{const I={value:A,input:o};return n&&(I.currencyPrefix=n),s&&(I.currencySuffix=s),a&&(I.percentageSuffix=a),i&&(I.trailingInvalid=i),c&&(I.sign=c),d!==void 0&&(I.whole=d),p!==void 0&&(I.numerator=p),u!==void 0&&(I.denominator=u),I},h=A=>r.verbose?f(A):A;if(typeof e=="number"||typeof e=="bigint")return h(e);let g=NaN,y=o;if(r.allowCurrency){const A=G_.exec(y);A&&A[2]&&(n=A[2],y=(A[1]||"")+y.slice(A[0].length))}if(r.allowCurrency){const A=z_.exec(y);A&&(s=A[1],y=y.slice(0,-A[0].length))}r.percentage&&B_.test(y)&&(a=!0,y=y.slice(0,-1));const b=k_(y.replace(I_,(A,I)=>` ${$_[I]}`).replace(D_,A=>A_[A]).replace("⁄","/").trim());if(b.length===0)return h(NaN);let v=b;if(r.decimalSeparator===","){const A=(b.match(/,/g)||[]).length;if(A===1)v=b.replaceAll(".","_").replace(",",".");else if(A>1){if(!r.allowTrailingInvalid)return h(NaN);const I=b.indexOf(","),T=b.indexOf(",",I+1),L=b.substring(0,T).replaceAll(".","_").replace(",","."),F=b.substring(T+1);v=r.allowTrailingInvalid?L+"&"+F:L}else v=b.replaceAll(".","_")}const N=P_.exec(v);if(!N)return h(r.romanNumerals?F_(b):NaN);const x=(N[7]||v.slice(N[0].length)).trim();if(x&&(i=x,!r.allowTrailingInvalid))return h(NaN);const[,w,C,E]=N;(w==="-"||w==="+")&&(c=w);const k=C.replaceAll(",","").replaceAll("_",""),_=E==null?void 0:E.replaceAll(",","").replaceAll("_","");if(!k&&_&&_.startsWith("."))g=0;else{if(r.bigIntOnOverflow){const A=BigInt(w==="-"?`-${k}`:k);if(A>BigInt(Number.MAX_SAFE_INTEGER)||A<BigInt(Number.MIN_SAFE_INTEGER))return h(A)}g=parseInt(k)}if(!_)return g=w==="-"?g*-1:g,a&&r.percentage!=="number"&&(g=g/100),h(g);const D=r.round===!1?NaN:parseFloat(`1e${Math.floor(Math.max(0,r.round))}`);if(_.startsWith(".")||_.startsWith("e")||_.startsWith("E")){const A=parseFloat(`${g}${_}`);g=isNaN(D)?A:Math.round(A*D)/D}else if(V_.test(_)){const A=parseInt(k),I=parseInt(_.replace("/",""));p=A,u=I,g=isNaN(D)?A/I:Math.round(A*D/I)/D}else{const[A,I]=_.split("/").map(T=>parseInt(T));d=g,p=A,u=I,g+=isNaN(D)?A/I:Math.round(A*D/I)/D}return g=w==="-"?g*-1:g,a&&r.percentage!=="number"&&(g=isNaN(D)?g/100:Math.round(g/100*D)/D),h(g)}var bm=Symbol.for("immer-nothing"),ym=Symbol.for("immer-draftable"),Ft=Symbol.for("immer-state"),W_=process.env.NODE_ENV!=="production"?[function(e){return`The plugin for '${e}' has not been loaded into Immer. To enable the plugin, import and call \`enable${e}()\` when initializing your application.`},function(e){return`produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '${e}'`},"This object has been frozen and should not be mutated",function(e){return"Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? "+e},"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.","Immer forbids circular references","The first or second argument to `produce` must be a function","The third argument to `produce` must be a function or undefined","First argument to `createDraft` must be a plain object, an array, or an immerable object","First argument to `finishDraft` must be a draft returned by `createDraft`",function(e){return`'current' expects a draft, got: ${e}`},"Object.defineProperty() cannot be used on an Immer draft","Object.setPrototypeOf() cannot be used on an Immer draft","Immer only supports deleting array indices","Immer only supports setting array indices and the 'length' property",function(e){return`'original' expects a draft, got: ${e}`}]:[];function Rt(e,...t){if(process.env.NODE_ENV!=="production"){const r=W_[e],o=Uo(r)?r.apply(null,t):r;throw new Error(`[Immer] ${o}`)}throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Xt=Object,bn=Xt.getPrototypeOf,Ba="constructor",Ua="prototype",zc="configurable",Wa="enumerable",Ha="writable",Zn="value",Lr=e=>!!e&&!!e[Ft];function Fr(e){var t;return e?xm(e)||Ya(e)||!!e[ym]||!!((t=e[Ba])!=null&&t[ym])||Qa(e)||Ka(e):!1}var H_=Xt[Ua][Ba].toString(),vm=new WeakMap;function xm(e){if(!e||!Wc(e))return!1;const t=bn(e);if(t===null||t===Xt[Ua])return!0;const r=Xt.hasOwnProperty.call(t,Ba)&&t[Ba];if(r===Object)return!0;if(!Uo(r))return!1;let o=vm.get(r);return o===void 0&&(o=Function.toString.call(r),vm.set(r,o)),o===H_}function ja(e,t,r=!0){es(e)===0?(r?Reflect.ownKeys(e):Xt.keys(e)).forEach(n=>{t(n,e[n],e)}):e.forEach((o,n)=>t(n,o,e))}function es(e){const t=e[Ft];return t?t.type_:Ya(e)?1:Qa(e)?2:Ka(e)?3:0}var Bc=(e,t,r=es(e))=>r===2?e.has(t):Xt[Ua].hasOwnProperty.call(e,t),Uc=(e,t,r=es(e))=>r===2?e.get(t):e[t],qa=(e,t,r,o=es(e))=>{o===2?e.set(t,r):o===3?e.add(r):e[t]=r};function j_(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var Ya=Array.isArray,Qa=e=>e instanceof Map,Ka=e=>e instanceof Set,Wc=e=>typeof e=="object",Uo=e=>typeof e=="function",Hc=e=>typeof e=="boolean";function q_(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var to=e=>e.copy_||e.base_,jc=e=>e.modified_?e.copy_:e.base_;function qc(e,t){if(Qa(e))return new Map(e);if(Ka(e))return new Set(e);if(Ya(e))return Array[Ua].slice.call(e);const r=xm(e);if(t===!0||t==="class_only"&&!r){const o=Xt.getOwnPropertyDescriptors(e);delete o[Ft];let n=Reflect.ownKeys(o);for(let s=0;s<n.length;s++){const a=n[s],i=o[a];i[Ha]===!1&&(i[Ha]=!0,i[zc]=!0),(i.get||i.set)&&(o[a]={[zc]:!0,[Ha]:!0,[Wa]:i[Wa],[Zn]:e[a]})}return Xt.create(bn(e),o)}else{const o=bn(e);if(o!==null&&r)return{...e};const n=Xt.create(o);return Xt.assign(n,e)}}function Yc(e,t=!1){return Xa(e)||Lr(e)||!Fr(e)||(es(e)>1&&Xt.defineProperties(e,{set:Ra,add:Ra,clear:Ra,delete:Ra}),Xt.freeze(e),t&&ja(e,(r,o)=>{Yc(o,!0)},!1)),e}function Y_(){Rt(2)}var Ra={[Zn]:Y_};function Xa(e){return e===null||!Wc(e)?!0:Xt.isFrozen(e)}var Ja="MapSet",Qc="Patches",wm="ArrayMethods",Sm={};function Wo(e){const t=Sm[e];return t||Rt(0,e),t}var Nm=e=>!!Sm[e],ts,Cm=()=>ts,Q_=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:Nm(Ja)?Wo(Ja):void 0,arrayMethodsPlugin_:Nm(wm)?Wo(wm):void 0});function Em(e,t){t&&(e.patchPlugin_=Wo(Qc),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Kc(e){Rc(e),e.drafts_.forEach(K_),e.drafts_=null}function Rc(e){e===ts&&(ts=e.parent_)}var _m=e=>ts=Q_(ts,e);function K_(e){const t=e[Ft];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function km(e,t){t.unfinalizedDrafts_=t.drafts_.length;const r=t.drafts_[0];if(e!==void 0&&e!==r){r[Ft].modified_&&(Kc(t),Rt(4)),Fr(e)&&(e=Am(t,e));const{patchPlugin_:n}=t;n&&n.generateReplacementPatches_(r[Ft].base_,e,t)}else e=Am(t,r);return R_(t,e,!0),Kc(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==bm?e:void 0}function Am(e,t){if(Xa(t))return t;const r=t[Ft];if(!r)return el(t,e.handledSet_,e);if(!Za(r,e))return t;if(!r.modified_)return r.base_;if(!r.finalized_){const{callbacks_:o}=r;if(o)for(;o.length>0;)o.pop()(e);Tm(r,e)}return r.copy_}function R_(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Yc(t,r)}function Dm(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var Za=(e,t)=>e.scope_===t,X_=[];function $m(e,t,r,o){const n=to(e),s=e.type_;if(o!==void 0&&Uc(n,o,s)===t){qa(n,o,r,s);return}if(!e.draftLocations_){const i=e.draftLocations_=new Map;ja(n,(c,d)=>{if(Lr(d)){const p=i.get(d)||[];p.push(c),i.set(d,p)}})}const a=e.draftLocations_.get(t)??X_;for(const i of a)qa(n,i,r,s)}function J_(e,t,r){e.callbacks_.push(function(n){var i;const s=t;if(!s||!Za(s,n))return;(i=n.mapSetPlugin_)==null||i.fixSetContents(s);const a=jc(s);$m(e,s.draft_??s,a,r),Tm(s,n)})}function Tm(e,t){var o;if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(((o=e.assigned_)==null?void 0:o.size)??0)>0)){const{patchPlugin_:n}=t;if(n){const s=n.getPath(e);s&&n.generatePatches_(e,s,t)}Dm(e)}}function Z_(e,t,r){const{scope_:o}=e;if(Lr(r)){const n=r[Ft];Za(n,o)&&n.callbacks_.push(function(){rl(e);const a=jc(n);$m(e,r,a,t)})}else Fr(r)&&e.callbacks_.push(function(){const s=to(e);e.type_===3?s.has(r)&&el(r,o.handledSet_,o):Uc(s,t,e.type_)===r&&o.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&el(Uc(e.copy_,t,e.type_),o.handledSet_,o)})}function el(e,t,r){return!r.immer_.autoFreeze_&&r.unfinalizedDrafts_<1||Lr(e)||t.has(e)||!Fr(e)||Xa(e)||(t.add(e),ja(e,(o,n)=>{if(Lr(n)){const s=n[Ft];if(Za(s,r)){const a=jc(s);qa(e,o,a,e.type_),Dm(s)}}else Fr(n)&&el(n,t,r)})),e}function ek(e,t){const r=Ya(e),o={type_:r?1:0,scope_:t?t.scope_:Cm(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let n=o,s=tl;r&&(n=[o],s=rs);const{revoke:a,proxy:i}=Proxy.revocable(n,s);return o.draft_=i,o.revoke_=a,[i,o]}var tl={get(e,t){if(t===Ft)return e;let r=e.scope_.arrayMethodsPlugin_;const o=e.type_===1&&typeof t=="string";if(o&&r!=null&&r.isArrayOperationMethod(t))return r.createMethodInterceptor(e,t);const n=to(e);if(!Bc(n,t,e.type_))return rk(e,n,t);const s=n[t];if(e.finalized_||!Fr(s)||o&&e.operationMethod&&(r!=null&&r.isMutatingArrayMethod(e.operationMethod))&&q_(t))return s;if(s===Xc(e.base_,t)||tk(e,t,s)){rl(e);const a=e.type_===1?+t:t,i=Zc(e.scope_,s,e,a);return e.copy_[a]=i}return s},has(e,t){return t in to(e)},ownKeys(e){return Reflect.ownKeys(to(e))},set(e,t,r){const o=Pm(to(e),t);if(o!=null&&o.set)return o.set.call(e.draft_,r),!0;if(!e.modified_){const n=Xc(to(e),t),s=n==null?void 0:n[Ft];if(s&&s.base_===r)return e.copy_[t]=r,e.assigned_.set(t,!1),!0;if(j_(r,n)&&(r!==void 0||Bc(e.base_,t,e.type_)))return!0;rl(e),Jc(e)}return e.copy_[t]===r&&(r!==void 0||Bc(e.copy_,t,e.type_))||Number.isNaN(r)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=r,e.assigned_.set(t,!0),Z_(e,t,r)),!0},deleteProperty(e,t){return rl(e),Xc(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),Jc(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const r=to(e),o=Reflect.getOwnPropertyDescriptor(r,t);return o&&{[Ha]:!0,[zc]:e.type_!==1||t!=="length",[Wa]:o[Wa],[Zn]:r[t]}},defineProperty(){Rt(11)},getPrototypeOf(e){return bn(e.base_)},setPrototypeOf(){Rt(12)}},rs={};for(let e in tl){let t=tl[e];rs[e]=function(){const r=arguments;return r[0]=r[0][0],t.apply(this,r)}}rs.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&Rt(13),rs.set.call(this,e,t,void 0)},rs.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&Rt(14),tl.set.call(this,e[0],t,r,e[0])};function Xc(e,t){const r=e[Ft];return(r?to(r):e)[t]}function tk(e,t,r){var o;return e.type_!==1||!e.allIndicesReassigned_||(o=e.assigned_)!=null&&o.get(t)||!Fr(r)||r[Ft]?!1:e.baseRefs_.has(r)}function rk(e,t,r){var n;const o=Pm(t,r);return o?Zn in o?o[Zn]:(n=o.get)==null?void 0:n.call(e.draft_):void 0}function Pm(e,t){if(!(t in e))return;let r=bn(e);for(;r;){const o=Object.getOwnPropertyDescriptor(r,t);if(o)return o;r=bn(r)}}function Jc(e){e.modified_||(e.modified_=!0,e.parent_&&Jc(e.parent_))}function rl(e){e.copy_||(e.assigned_=new Map,e.copy_=qc(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var ok=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(r,o,n)=>{if(Uo(r)&&!Uo(o)){const a=o;o=r;const i=this;return function(d=a,...p){return i.produce(d,u=>o.call(this,u,...p))}}Uo(o)||Rt(6),n!==void 0&&!Uo(n)&&Rt(7);let s;if(Fr(r)){const a=_m(this),i=Zc(a,r,void 0);let c=!0;try{s=o(i),c=!1}finally{c?Kc(a):Rc(a)}return Em(a,n),km(s,a)}else if(!r||!Wc(r)){if(s=o(r),s===void 0&&(s=r),s===bm&&(s=void 0),this.autoFreeze_&&Yc(s,!0),n){const a=[],i=[];Wo(Qc).generateReplacementPatches_(r,s,{patches_:a,inversePatches_:i}),n(a,i)}return s}else Rt(1,r)},this.produceWithPatches=(r,o)=>{if(Uo(r))return(i,...c)=>this.produceWithPatches(i,d=>r(d,...c));let n,s;return[this.produce(r,o,(i,c)=>{n=i,s=c}),n,s]},Hc(t==null?void 0:t.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),Hc(t==null?void 0:t.useStrictShallowCopy)&&this.setUseStrictShallowCopy(t.useStrictShallowCopy),Hc(t==null?void 0:t.useStrictIteration)&&this.setUseStrictIteration(t.useStrictIteration)}createDraft(t){Fr(t)||Rt(8),Lr(t)&&(t=ed(t));const r=_m(this),o=Zc(r,t,void 0);return o[Ft].isManual_=!0,Rc(r),o}finishDraft(t,r){const o=t&&t[Ft];(!o||!o.isManual_)&&Rt(9);const{scope_:n}=o;return Em(n,r),km(void 0,n)}setAutoFreeze(t){this.autoFreeze_=t}setUseStrictShallowCopy(t){this.useStrictShallowCopy_=t}setUseStrictIteration(t){this.useStrictIteration_=t}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(t,r){let o;for(o=r.length-1;o>=0;o--){const s=r[o];if(s.path.length===0&&s.op==="replace"){t=s.value;break}}o>-1&&(r=r.slice(o+1));const n=Wo(Qc).applyPatches_;return Lr(t)?n(t,r):this.produce(t,s=>n(s,r))}};function Zc(e,t,r,o){const[n,s]=Qa(t)?Wo(Ja).proxyMap_(t,r):Ka(t)?Wo(Ja).proxySet_(t,r):ek(t,r);return((r==null?void 0:r.scope_)??Cm()).drafts_.push(n),s.callbacks_=(r==null?void 0:r.callbacks_)??[],s.key_=o,r&&o!==void 0?J_(r,s,o):s.callbacks_.push(function(c){var p;(p=c.mapSetPlugin_)==null||p.fixSetContents(s);const{patchPlugin_:d}=c;s.modified_&&d&&d.generatePatches_(s,[],c)}),n}function ed(e){return Lr(e)||Rt(10,e),Im(e)}function Im(e){if(!Fr(e)||Xa(e))return e;const t=e[Ft];let r,o=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=qc(e,t.scope_.immer_.useStrictShallowCopy_),o=t.scope_.immer_.shouldUseStrictIteration()}else r=qc(e,!0);return ja(r,(n,s)=>{qa(r,n,Im(s))},o),t&&(t.finalized_=!1),r}var nk=new ok,os=nk.produce;const yo="------",Qe={fields:{title:"Field",placeholderName:"~",placeholderLabel:yo,placeholderGroupLabel:yo},operators:{title:"Operator",placeholderName:"~",placeholderLabel:yo,placeholderGroupLabel:yo},values:{title:"Values",placeholderName:"~",placeholderLabel:yo,placeholderGroupLabel:yo},matchMode:{title:"Match mode"},matchThreshold:{title:"Match threshold",placeholderName:"#"},value:{title:"Value"},removeRule:{label:"⨯",title:"Remove rule"},removeGroup:{label:"⨯",title:"Remove group"},addRule:{label:"+ Rule",title:"Add rule"},addGroup:{label:"+ Group",title:"Add group"},combinators:{title:"Combinator"},notToggle:{label:"Not",title:"Invert this group"},cloneRule:{label:"⧉",title:"Clone rule"},cloneRuleGroup:{label:"⧉",title:"Clone group"},shiftActionUp:{label:"˄",title:"Shift up"},shiftActionDown:{label:"˅",title:"Shift down"},dragHandle:{label:"⁞⁞",title:"Drag handle"},lockRule:{label:"🔓",title:"Lock rule"},lockGroup:{label:"🔓",title:"Lock group"},lockRuleDisabled:{label:"🔒",title:"Unlock rule"},lockGroupDisabled:{label:"🔒",title:"Unlock group"},muteRule:{label:"🔊",title:"Mute rule"},muteGroup:{label:"🔊",title:"Mute group"},unmuteRule:{label:"🔇",title:"Unmute rule"},unmuteGroup:{label:"🔇",title:"Unmute group"},valueSourceSelector:{title:"Value source"}},Om={"=":"=","!=":"!=","<":"<",">":">","<=":"<=",">=":">=",contains:"contains",beginsWith:"begins with",endsWith:"ends with",doesNotContain:"does not contain",doesNotBeginWith:"does not begin with",doesNotEndWith:"does not end with",null:"is null",notNull:"is not null",in:"in",notIn:"not in",between:"between",notBetween:"not between"},sk={and:"AND",or:"OR",xor:"XOR"},ak=[{name:"=",value:"=",label:"="},{name:"!=",value:"!=",label:"!="},{name:"<",value:"<",label:"<"},{name:">",value:">",label:">"},{name:"<=",value:"<=",label:"<="},{name:">=",value:">=",label:">="},{name:"contains",value:"contains",label:"contains"},{name:"beginsWith",value:"beginsWith",label:"begins with"},{name:"endsWith",value:"endsWith",label:"ends with"},{name:"doesNotContain",value:"doesNotContain",label:"does not contain"},{name:"doesNotBeginWith",value:"doesNotBeginWith",label:"does not begin with"},{name:"doesNotEndWith",value:"doesNotEndWith",label:"does not end with"},{name:"null",value:"null",label:"is null"},{name:"notNull",value:"notNull",label:"is not null"},{name:"in",value:"in",label:"in"},{name:"notIn",value:"notIn",label:"not in"},{name:"between",value:"between",label:"between"},{name:"notBetween",value:"notBetween",label:"not between"}],ns=[{name:"and",value:"and",label:"AND"},{name:"or",value:"or",label:"OR"}];[...ns];const Mm=[{name:"all",value:"all",label:"all"},{name:"some",value:"some",label:"some"},{name:"none",value:"none",label:"none"},{name:"atLeast",value:"atLeast",label:"at least"},{name:"atMost",value:"atMost",label:"at most"},{name:"exactly",value:"exactly",label:"exactly"}],ve={queryBuilder:"queryBuilder",ruleGroup:"ruleGroup",header:"ruleGroup-header",body:"ruleGroup-body",combinators:"ruleGroup-combinators",addRule:"ruleGroup-addRule",addGroup:"ruleGroup-addGroup",cloneRule:"rule-cloneRule",cloneGroup:"ruleGroup-cloneGroup",removeGroup:"ruleGroup-remove",notToggle:"ruleGroup-notToggle",rule:"rule",fields:"rule-fields",matchMode:"rule-matchMode",matchThreshold:"rule-matchThreshold",operators:"rule-operators",value:"rule-value",removeRule:"rule-remove",betweenRules:"betweenRules",valid:"queryBuilder-valid",invalid:"queryBuilder-invalid",shiftActions:"shiftActions",dndDragging:"dndDragging",dndOver:"dndOver",dndCopy:"dndCopy",dndGroup:"dndGroup",dndDropNotAllowed:"dndDropNotAllowed",dragHandle:"queryBuilder-dragHandle",disabled:"queryBuilder-disabled",muted:"queryBuilder-muted",lockRule:"rule-lock",lockGroup:"ruleGroup-lock",muteRule:"rule-mute",muteGroup:"ruleGroup-mute",valueSource:"rule-valueSource",valueListItem:"rule-value-list-item",hasSubQuery:"rule-hasSubQuery"},xe={rule:"rule",ruleGroup:"rule-group",inlineCombinator:"inline-combinator",addGroup:"add-group",removeGroup:"remove-group",cloneGroup:"clone-group",cloneRule:"clone-rule",addRule:"add-rule",removeRule:"remove-rule",combinators:"combinators",fields:"fields",operators:"operators",valueEditor:"value-editor",notToggle:"not-toggle",shiftActions:"shift-actions",dragHandle:"drag-handle",lockRule:"lock-rule",lockGroup:"lock-group",muteRule:"mute-rule",muteGroup:"mute-group",valueSourceSelector:"value-source-selector",matchModeEditor:"match-mode-editor"},bt={parentPathDisabled:"action aborted: parent path disabled",pathDisabled:"action aborted: path is disabled",onAddRuleFalse:"onAddRule callback returned false",onAddGroupFalse:"onAddGroup callback returned false",onGroupRuleFalse:"onGroupRule callback returned false",onGroupGroupFalse:"onGroupGroup callback returned false",onMoveRuleFalse:"onMoveRule callback returned false",onMoveGroupFalse:"onMoveGroup callback returned false",onRemoveFalse:"onRemove callback returned false",add:"rule or group added",remove:"rule or group removed",update:"rule or group updated",move:"rule or group moved",group:"rule or group grouped with another"},Lm=[],lk={addRuleToNewGroups:!1,autoSelectField:!0,autoSelectOperator:!0,autoSelectValue:!1,debugMode:!1,enableDragAndDrop:!1,enableMountQueryChange:!0,listsAsArrays:!1,resetOnFieldChange:!0,resetOnOperatorChange:!1,showCloneButtons:!1,showCombinatorsBetweenRules:!1,showLockButtons:!1,showMuteButtons:!1,showNotToggle:!1,showShiftActions:!1,suppressStandardClassnames:!1},Fm=(e,t=",")=>typeof e=="string"?e.split(`\\${t}`).map(r=>r.split(t)).reduce((r,o,n)=>n===0?o:[...r.slice(0,-1),`${r.at(-1)}${t}${o[0]}`,...o.slice(1)],[]):[],ss=(e,t=",")=>e.map(r=>`${r??""}`.replaceAll(t[0],`\\${t[0]}`)).join(t),Be=e=>typeof e=="string"?e.trim():e,me=(e,{retainEmptyStrings:t}={})=>Array.isArray(e)?e.map(Be):typeof e=="string"?Fm(e,",").filter(t?()=>!0:r=>!/^\s*$/.test(r)).map(r=>r.trim()):typeof e=="number"?[e]:[];function Vm(e){var t,r,o="";if(typeof e=="string"||typeof e=="number")o+=e;else if(typeof e=="object")if(Array.isArray(e)){var n=e.length;for(t=0;t<n;t++)e[t]&&(r=Vm(e[t]))&&(o&&(o+=" "),o+=r)}else for(r in e)e[r]&&(o&&(o+=" "),o+=r);return o}function ze(){for(var e,t,r=0,o="",n=arguments.length;r<n;r++)(e=arguments[r])&&(t=Vm(e))&&(o&&(o+=" "),o+=t);return o}const $e=e=>typeof e=="string"?e.toLowerCase():e,Gm=new RegExp(T_.source.replace(/^\^/,String.raw`^\s*`).replace(/\$$/,String.raw`\s*$`)),wr=e=>e!==null&&typeof e=="object"&&Object.getPrototypeOf(e)===Object.prototype,ro=e=>e==null||e==="",ge=e=>wr(e)&&Array.isArray(e.rules),Vt=e=>ge(e)&&typeof e.combinator=="string",yn=e=>ge(e)&&e.combinator===void 0,zm=["or","xor","and"],ik=(e,t)=>$e(e)===t,ol=(e,t=0)=>{const r=zm[t];if(!e.rules.includes(r))return t<zm.length-2?ol(e,t+1):e;const o=[...e.rules];let n=0;for(;n<o.length-2;){if(ik(o[n+1],r)){n+=2;continue}let s=-1;for(let a=n+2;a<o.length;a++)if(typeof o[a]=="string"&&$e(o[a])===r){s=a;break}if(s===-1){o.splice(n,o.length,ol({rules:o.slice(n)},t+1));break}else o.splice(n,s-n,ol({rules:o.slice(n,s)},t+1))}return{...e,rules:o}},Sr=e=>{if(Vt(e))return e;const t=ol(e),r=[];let o="and";for(const[n,s]of t.rules.entries())typeof s=="string"?n===1&&(o=s):r.push(ge(s)?Sr(s):s);return{...t,combinator:o,rules:r}},ck=Object.keys,Bm=Object.entries,nl=e=>e==="__proto__"||e==="constructor"||e==="prototype",td=e=>wr(e)&&"name"in e&&typeof e.name=="string",rd=e=>wr(e)&&"value"in e&&typeof e.value=="string";function Vr(e,t,r){if(typeof e=="string")return{...t,name:e,value:e,label:(r==null?void 0:r[e])??e};const o={};let n=!!t;return td(e)&&!rd(e)?(o.value=e.name,n=!0):!td(e)&&rd(e)&&(o.name=e.value,n=!0),n?Object.assign({},t,e,o):e}function Gr(e,t,r){if(!Array.isArray(e))return[];const o=e;return vo(o)?o.map(n=>({...n,options:n.options.map(s=>Vr(s,t,r))})):o.map(n=>Vr(n,t,r))}function Um(e,t){return Object.fromEntries(Object.entries(e).map(([r,o])=>[r,Vr(o,t)]))}const od=e=>{const t=new Set,r=[];for(const o of e)t.has(o.value??o.name)||(t.add(o.value??o.name),r.push(o));return e.length===r.length?e:r},Wm=e=>Array.isArray(e)&&e.length>0&&wr(e[0])&&"options"in e[0]&&Array.isArray(e[0].options),sl=e=>{let t=!1;if(Array.isArray(e))for(const r of e)if(td(r)||rd(r))t=!0;else return!1;return t},vo=(e,{allowEmpty:t=!1}={})=>{let r=!1;if(Array.isArray(e))for(const o of e)if(wr(o)&&"options"in o&&(sl(o.options)||t&&Array.isArray(o.options)&&o.options.length===0))r=!0;else return!1;return r};function We(e,t){return(vo(e,{allowEmpty:!0})?e.flatMap(r=>r.options):e).find(r=>r.value===t||r.name===t)}function Ct(e){if(!Array.isArray(e)||e.length===0)return null;if(vo(e,{allowEmpty:!0})){for(const t of e)if(t.options.length>0)return t.options[0].value??t.options[0].name;return null}return e[0].value??e[0].name}const nd=e=>od(Wm(e)?e.flatMap(t=>t.options):e),Hm=e=>{const t=new Set,r=new Set,o=[];for(const n of e)if(!t.has(n.label)){t.add(n.label);const s=[];for(const a of n.options)r.has(a.value??a.name)||(r.add(a.value??a.name),s.push(Vr(a)));o.push({...n,options:s})}return o},vn=e=>{const{optionList:t,baseOption:r={},labelMap:o={},placeholder:{placeholderName:n="~",placeholderLabel:s=yo,placeholderGroupLabel:a=yo}={},autoSelectOption:i=!0}=e,c={id:n,name:n,value:n,label:s},d=t??[c];let p;const u=Array.isArray(d)?Gr(d,r,o):ck(Um(d,r)).map(h=>({...d[h],name:h,value:h})).sort((h,g)=>h.label.localeCompare(g.label));vo(u)?p=Hm(i?u:[{label:a,options:[c]},...u]):p=od(i?u:[c,...u]);let f={};if(Array.isArray(d))if(vo(p))for(const h of p)for(const g of h.options)f[g.value??g.name]=Vr(g,r);else for(const h of p)f[h.value??h.name]=Vr(h,r);else{const h=Um(d,r);f=i?h:{...h,[n]:c}}return{defaultOption:c,optionList:p,optionsMap:f}},jm=(e,t,r)=>{var s;const o=Vr(e),n=Vr(r);return o.value===n.value?!1:typeof o.comparator=="string"?o[o.comparator]===n[o.comparator]:((s=o.comparator)==null?void 0:s.call(o,n,t))??!1},qm=(e,t,r)=>{if(!e.comparator){const o=n=>(n.value??n.name)!==(e.value??e.name);return vo(t)?t.map(n=>({...n,options:n.options.filter(s=>o(s))})):t.filter(n=>o(n))}return vo(t)?t.map(o=>({...o,options:o.options.filter(n=>jm(e,r,n))})).filter(o=>o.options.length>0):t.filter(o=>jm(e,r,o))},_e=(e,{parseNumbers:t,bigIntOnOverflow:r}={})=>{if(!t||typeof e=="bigint"||typeof e=="number")return e;if(t==="native")return Number.parseFloat(e);const o=U_(e,{allowTrailingInvalid:t==="enhanced",bigIntOnOverflow:r,romanNumerals:!1,round:!1});return typeof o=="bigint"||!Number.isNaN(o)?o:e},Ym=(e,t,r)=>{const o={};for(const n in e){if(nl(n))continue;const s=t[n];s!==!1&&(s&&n!==s?(nl(s)||(o[s]=e[n]),r||(o[n]=e[n])):o[n]=e[n])}return o};function oo(e,t={}){const{ruleProcessor:r=p=>p,ruleGroupProcessor:o=p=>p,propertyMap:n={},combinatorMap:s={},operatorMap:a={},omitPath:i=!1,deleteRemappedProperties:c=!0}=t,d=p=>({...o(Ym({...p,...Vt(p)?{combinator:s[p.combinator]??p.combinator}:{}},n,c)),...n.rules===!1?null:{[n.rules??"rules"]:p.rules.map((u,f)=>{const h=i?null:{path:[...p.path,f]};return typeof u=="string"?s[u]??u:ge(u)?d({...u,...h}):r(Ym({...u,...h,..."operator"in u?{operator:a[u.operator]??u.operator}:{}},n,c))})}});return d({...e,...i?null:{path:[]}})}const xn=e=>wr(e)&&typeof e.valid=="boolean",Te=(e,t,r)=>{if(e.muted)return!1;if(typeof t=="boolean")return t;if(xn(t))return t.valid;if(typeof r=="function"&&!ge(e)){const o=r(e);if(typeof o=="boolean")return o;if(xn(o))return o.valid}return!0},sd=({parseNumbers:e,inputType:t})=>{if(typeof e=="string"){const[r,o]=e.split("-");return o==="limited"?t==="number"?r:!1:r}return e?"strict":!1},dk=e=>{switch($e(e)){case"null":return"is null";case"notnull":return"is not null";case"notin":return"not in";case"notbetween":return"not between";case"contains":case"beginswith":case"endswith":return"like";case"doesnotcontain":case"doesnotbeginwith":case"doesnotendwith":return"not like";default:return e}},uk=(e="||")=>(...t)=>e.toUpperCase()==="CONCAT"?`CONCAT(${t.join(", ")})`:t.join(` ${e} `),fk=e=>{switch(e){case"contains":case"doesnotcontain":return["%","%"];case"beginswith":case"doesnotbeginwith":return["","%"];case"endswith":case"doesnotendwith":return["%",""];default:return["",""]}},as=(e,t,{concatOperator:r="||",quoteValuesWith:o,wrapValueWith:n=["",""]}={})=>{const[s,a]=fk(t),i=o||"'",c=p=>`${n[0]}${i}${p}${i}${n[1]}`,d=[s&&c(s),e,a&&c(a)].filter(Boolean);return d.length>1?uk(r)(...d):e},Ho={"=":"$eq","!=":"$ne","<":"$lt","<=":"$lte",">":"$gt",">=":"$gte",in:"$in",notin:"$nin",notIn:"$nin"},Qm={"=":"equals","!=":"not","<":"lt","<=":"lte",">":"gt",">=":"gte",in:"in",notin:"notIn"},al={and:"&&",or:"||"},Km=(e,t)=>({...e,rules:e.rules.map(r=>{if(typeof r=="string")return r;if(ge(r))return Km(r,t);const o=We(t.fields,r.field),n=sd({parseNumbers:t.parseNumbers,inputType:o==null?void 0:o.inputType});if(Array.isArray(r.value))return{...r,value:r.value.map(a=>_e(a,{parseNumbers:n}))};const s=me(r.value,{retainEmptyStrings:!0}).map(a=>_e(a,{parseNumbers:n}));if(s.every(a=>typeof a=="number")){if(s.length>1)return{...r,value:s};if(s.length===1)return{...r,value:s[0]}}return r})}),ft=e=>typeof e=="string"&&e.length>0||typeof e=="number"&&!Number.isNaN(e)||typeof e!="string"&&typeof e!="number",be=(e,t)=>!!t&&(typeof e=="number"||typeof e=="bigint"||typeof e=="string"&&Gm.test(e)),pk=e=>e.length>=3,Rm=(e=["",""])=>Array.isArray(e)?e:typeof e=="string"?[e,e]:e??["",""],wn=(e,{quoteFieldNamesWith:t,fieldIdentifierSeparator:r})=>{const[o,n]=Rm(t);return typeof r=="string"&&r.length>0?ss(Fm(e,r).map(s=>`${o}${s}${n}`),r):`${o}${e}${n}`},Xm=["S","V","O"],hk=e=>{const t=[],r=new Set(Xm);for(const o of e.toUpperCase())if(r.has(o)&&(t.push(o),r.delete(o),r.size===0))break;for(const o of Xm)r.has(o)&&t.push(o);return t},ls=(e,t=":")=>{const r=`${e??""}`;return t&&r.startsWith(t)?r:`${t}${r}`},ad=(e,t=":")=>{const r=`${e??""}`;return t&&r.startsWith(t)?r.slice(t.length):r},ld={groupPrefix:"",groupPrefix_not_xor:"either zero or more than one of",groupPrefix_xor:"exactly one of",groupSuffix:"is true",groupSuffix_not:"is not true"},Jm=(e,t,r)=>t.startsWith(e)&&r.every(o=>{var n;return t.includes(`_${o}`)&&((n=t.match(/_/g))==null?void 0:n.length)===r.length}),ll=(e,t,r=[])=>{var o,n;return r.length===0?t[e]??ld[e]??"":((o=Object.entries(t).find(([s])=>Jm(e,s,r)))==null?void 0:o[1])??((n=Object.entries(ld).find(([s])=>Jm(e,s,r)))==null?void 0:n[1])??ld[e]??""},qt=e=>{const{mode:t,threshold:r}=e.match??{};if(!t)return null;if(!ge(e.value))return!1;const o=$e(t),n=o==="atleast"&&r===1?"some":o==="atmost"&&r===0?"none":o;return(n==="atleast"||n==="atmost"||n==="exactly")&&(typeof r!="number"||r<0)?!1:{mode:n,threshold:r}},Zm="elem_alias",il=(e=0)=>e>0?`${Zm}_${e}`:Zm,eg=(e,t)=>typeof t=="bigint"?{$bigint:t.toString()}:t,tg=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:s,placeholderOperatorName:a,placeholderValueName:i,ruleProcessor:c,validateRule:d,validationMap:p}=t,u=(f,h)=>{if(!Te(f,p[f.id??""]))return h?o:"";const g=[];let y="",b=!0;for(const w of f.rules){if(typeof w=="string"){y=al[w];continue}if(ge(w)){const D=u(w);D&&(!b&&y&&(g.push(y),y=""),b=!1,g.push(D));continue}const[C,E]=d(w);if(!Te(w,C,E)||w.field===s||w.operator===a||i!==void 0&&w.value===i)continue;const k=We(r,w.field),_=c(w,{...t,parseNumbers:n(k==null?void 0:k.inputType),escapeQuotes:(w.valueSource??"value")==="value",fieldData:k});_&&(!b&&y&&(g.push(y),y=""),b=!1,g.push(_))}const v=g.join(Vt(f)?` ${al[f.combinator]} `:" "),[N,x]=f.not||!h?[`${f.not?"!":""}(`,")"]:["",""];return v?`${N}${v}${x}`:o};return u(e,!0)},cl=e=>e.startsWith("not")||e.startsWith("doesnot"),jo=(e,t)=>typeof e!="string"||!t?`${e}`:e.replaceAll('"','\\"'),mk=(e,t={})=>{const{escapeQuotes:r,parseNumbers:o,preserveValueOrder:n}=t,{field:s,operator:a,value:i,valueSource:c}=e,d=c==="field"||c==="parameter",p=$e(a==="="?"==":a),u=typeof i=="number"||typeof i=="boolean"||typeof i=="bigint"||be(i,o),f=qt(e);if(f===!1)return"";if(f){const{mode:h,threshold:g}=f,y=t.subqueryDepth??0,b=il(y),v=tg(oo(e.value,{ruleProcessor:N=>({...N,field:`${b}${N.field?`.${N.field}`:""}`})}),{...t,subqueryDepth:y+1});switch(h){case"all":return`${s}.all(${b}, ${v})`;case"none":case"some":return`${h==="none"?"!":""}${s}.exists(${b}, ${v})`;case"atleast":case"atmost":case"exactly":{const N=`double(${s}.size())`,x=`${s}.filter(${b}, ${v}).size()`,w=h==="atleast"?">=":h==="atmost"?"<=":"==";return g>0&&g<1?`double(${x}) ${w} (${N} * ${g})`:`${x} ${w} ${g}`}}}switch(p){case"<":case"<=":case"==":case"!=":case">":case">=":return`${s} ${p} ${d||u?Be(i):`"${jo(i,r)}"`}`;case"contains":case"doesnotcontain":return`${cl(p)?"!":""}${s}.contains(${d?Be(i):`"${jo(i,r)}"`})`;case"beginswith":case"doesnotbeginwith":return`${cl(p)?"!":""}${s}.startsWith(${d?Be(i):`"${jo(i,r)}"`})`;case"endswith":case"doesnotendwith":return`${cl(p)?"!":""}${s}.endsWith(${d?Be(i):`"${jo(i,r)}"`})`;case"null":return`${s} == null`;case"notnull":return`${s} != null`;case"in":case"notin":{const[h,g]=cl(p)?["!(",")"]:["",""];return`${h}${s} in [${me(i).map(y=>d||be(y,o)?`${Be(y)}`:`"${jo(y,r)}"`).join(", ")}]${g}`}case"between":case"notbetween":{const h=me(i);if(h.length>=2&&!ro(h[0])&&!ro(h[1])){const[g,y]=h,b=o!==!1,v=be(g,b)?_e(g,{parseNumbers:b}):NaN,N=be(y,b)?_e(y,{parseNumbers:b}):NaN;let x=Number.isNaN(v)?d?`${g}`:`"${jo(g,r)}"`:v,w=Number.isNaN(N)?d?`${y}`:`"${jo(y,r)}"`:N;if(!n&&x===v&&w===N&&N<v){const C=N;w=v,x=C}return p==="between"?`(${s} >= ${x} && ${s} <= ${w})`:`(${s} < ${x} || ${s} > ${w})`}else return""}}return""},id={$and:[{$expr:!0}]},cd=(e,t,r)=>{const{context:o,fields:n,getParseNumberBoolean:s,placeholderFieldName:a,placeholderOperatorName:i,placeholderValueName:c,ruleProcessor:d,validateRule:p,validationMap:u}=t,{inExpressionContext:f}=o??{},h=(g,y)=>{if(!Te(g,u[g.id??""]))return y?id:!1;const b=`$${$e(g.combinator)}`;let v=!1;const N=g.rules.map(w=>{if(ge(w)){const _=h(w);return _?(v=!0,_):!1}const[C,E]=p(w);if(!Te(w,C,E)||w.field===a||w.operator===i||c!==void 0&&w.value===c)return!1;const k=We(n,w.field);return d(w,{...t,parseNumbers:s(k==null?void 0:k.inputType),fieldData:k},r)}).filter(Boolean),x=N.length>0?N.length===1&&!v?N[0]:{[b]:N}:id;return g.not?f?{$not:x}:{$nor:[x]}:x};return h(Sr(e),!0)},no=(e,t,r=!1)=>be(e,r||typeof e=="bigint")?Number(_e(e,{parseNumbers:"strict"})):t,dl=(e,t={})=>{const{field:r,operator:o,value:n,valueSource:s}=e,{parseNumbers:a,preserveValueOrder:i,context:c}=t,d=s==="field",{avoidFieldsAsKeys:p}=c??{},u=qt(e);if(u===!1)return;if(u){const{mode:h,threshold:g}=u,y={$size:{$ifNull:[`$${r}`,[]]}},b=cd(oo(n,{ruleProcessor:x=>({...x,field:x.field?`${r}.${x.field}`:r})}),{...t,ruleProcessor:dl,context:{...t.context,avoidFieldsAsKeys:!1}}),v=cd(oo(n,{ruleProcessor:x=>({...x,field:x.field?`$item.${x.field}`:"$item"})}),{...t,ruleProcessor:dl,context:{...t.context,avoidFieldsAsKeys:!0,inExpressionContext:!0}}),N={$size:{$ifNull:[{$filter:{input:`$${r}`,as:"item",cond:{$and:[v]}}},[]]}};switch(h){case"all":return{$expr:{$eq:[N,y]}};case"none":return{$nor:[b]};case"some":return b;case"atleast":case"atmost":case"exactly":{const x=h==="atleast"?Ho[">="]:h==="atmost"?Ho["<="]:Ho["="];return g>0&&g<1?{$expr:{[x]:[N,{$multiply:[y,g]}]}}:{$expr:{[x]:[N,g]}}}}}if(o==="="&&!d)return p?{$eq:[`$${r}`,no(n,n,a)]}:{[r]:no(n,n,a)};const f=$e(o);switch(f){case"<":case"<=":case"=":case"!=":case">":case">=":{const h=Ho[f];return d?{[h]:[`$${r}`,`$${n}`]}:p?{$and:[{$ne:[`$${r}`,null]},{[h]:[`$${r}`,no(n,n,a)]}]}:{[r]:{[h]:no(n,n,a)}}}case"contains":return d?{$where:`this.${r}.includes(this.${n})`}:p?{$regexMatch:{input:`$${r}`,regex:n}}:{[r]:{$regex:n}};case"beginswith":return d?{$where:`this.${r}.startsWith(this.${n})`}:p?{$regexMatch:{input:`$${r}`,regex:`^${n}`}}:{[r]:{$regex:`^${n}`}};case"endswith":return d?{$where:`this.${r}.endsWith(this.${n})`}:p?{$regexMatch:{input:`$${r}`,regex:`${n}$`}}:{[r]:{$regex:`${n}$`}};case"doesnotcontain":return d?{$where:`!this.${r}.includes(this.${n})`}:p?{$not:{$regexMatch:{input:`$${r}`,regex:n}}}:{[r]:{$not:{$regex:n}}};case"doesnotbeginwith":return d?{$where:`!this.${r}.startsWith(this.${n})`}:p?{$not:{$regexMatch:{input:`$${r}`,regex:`^${n}`}}}:{[r]:{$not:{$regex:`^${n}`}}};case"doesnotendwith":return d?{$where:`!this.${r}.endsWith(this.${n})`}:p?{$not:{$regexMatch:{input:`$${r}`,regex:`${n}$`}}}:{[r]:{$not:{$regex:`${n}$`}}};case"null":return p?{$eq:[`$${r}`,null]}:{[r]:null};case"notnull":return p?{$ne:[`$${r}`,null]}:{[r]:{$ne:null}};case"in":case"notin":{const h=me(n);return d?{$where:`${f==="notin"?"!":""}[${h.map(g=>`this.${g}`).join(",")}].includes(this.${r})`}:p?f==="notin"?{$not:{[Ho.in]:[`$${r}`,h.map(g=>no(g,g,a))]}}:{[Ho[f]]:[`$${r}`,h.map(g=>no(g,g,a))]}:{[r]:{[Ho[f]]:h.map(g=>no(g,g,a))}}}case"between":case"notbetween":{const h=me(n);if(h.length>=2&&ft(h[0])&&ft(h[1])){const[g,y]=h,b=no(g,NaN,!0),v=no(y,NaN,!0);let N=d||Number.isNaN(b)?g:b,x=d||Number.isNaN(v)?y:v;if(!i&&N===b&&x===v&&v<b){const w=v;x=b,N=w}return f==="between"?d?{$gte:[`$${r}`,`$${N}`],$lte:[`$${r}`,`$${x}`]}:p?{$and:[{$gte:[`$${r}`,N]},{$lte:[`$${r}`,x]}]}:{[r]:{$gte:N,$lte:x}}:d?{$or:[{$lt:[`$${r}`,`$${N}`]},{$gt:[`$${r}`,`$${x}`]}]}:p?{$or:[{$lt:[`$${r}`,N]},{$gt:[`$${r}`,x]}]}:{$or:[{[r]:{$lt:N}},{[r]:{$gt:x}}]}}else return""}}return""},gk=(e,t)=>{const r=dl(e,t);return r?JSON.stringify(r):""},rg=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:s,placeholderOperatorName:a,placeholderValueName:i,ruleProcessor:c,validateRule:d,validationMap:p}=t,u=(f,h)=>{if(!Te(f,p[f.id??""]))return h?o:"";const g=[];let y="",b=!0;for(const w of f.rules){if(typeof w=="string"){y=w;continue}if(ge(w)){const D=u(w);D&&(!b&&y&&(g.push(y),y=""),b=!1,g.push(D));continue}const[C,E]=d(w);if(!Te(w,C,E)||w.field===s||w.operator===a||i!==void 0&&w.value===i)continue;const k=We(r,w.field),_=c(w,{...t,parseNumbers:n(k==null?void 0:k.inputType),escapeQuotes:(w.valueSource??"value")==="value",fieldData:k});_&&(!b&&y&&(g.push(y),y=""),b=!1,g.push(_))}const v=g.join(Vt(f)?` ${f.combinator} `:" "),[N,x]=f.not||!h?[`${f.not?"!":""}(`,")"]:["",""];return v?`${N}${v}${x}`:o};return u(e,!0)},ul=e=>e.startsWith("not")||e.startsWith("doesnot"),dd=(e,t)=>t?`!(${e})`:e,qo=(e,t)=>typeof e!="string"||!t?`${e}`:e.replaceAll("'","\\'"),bk=(e,t={})=>{const{field:r,operator:o,value:n,valueSource:s}=e,{escapeQuotes:a,parseNumbers:i,preserveValueOrder:c}=t,d=s==="field"||s==="parameter",p=$e(o==="="?"==":o),u=typeof n=="number"||typeof n=="boolean"||typeof n=="bigint"||be(n,i),f=qt(e);if(f===!1)return"";if(f){const{mode:h,threshold:g}=f,y=rg(oo(e.value,{ruleProcessor:N=>({...N,field:N.field||"#this"})}),t),b=`${r}.size()`,v=`${r}.?[${y}].size()`;switch(h){case"all":return`${v} == ${b}`;case"none":return`${v} == 0`;case"some":return`${v} >= 1`;case"atleast":case"atmost":case"exactly":{const N=h==="atleast"?">=":h==="atmost"?"<=":"==";return g>0&&g<1?`${v} ${N} (${b} * ${g})`:`${v} ${N} ${g}`}}}switch(p){case"<":case"<=":case"==":case"!=":case">":case">=":return`${r} ${p} ${d||u?Be(n):`'${qo(n,a)}'`}`;case"contains":case"doesnotcontain":{const h=d?`'.*'.concat(${Be(n)}).concat('.*')`:`'.*${qo(n,a)}.*'`;return dd(`${r} matches ${h}`,ul(p))}case"beginswith":case"doesnotbeginwith":{const h=d?`'^'.concat(${Be(n)}).concat('.*')`:`'${typeof n=="string"&&!n.startsWith("^")||u?"^":""}${qo(n,a)}.*'`;return dd(`${r} matches ${h}`,ul(p))}case"endswith":case"doesnotendwith":{const h=d?`'.*'.concat(${Be(n)}).concat('$')`:`'.*${qo(n,a)}${typeof n=="string"&&!n.endsWith("$")||u?"$":""}'`;return dd(`${r} matches ${h}`,ul(p))}case"null":return`${r} == null`;case"notnull":return`${r} != null`;case"in":case"notin":{const h=ul(p)?"!":"",g=me(n);return g.length>0?`${h}(${g.map(y=>`${r} == ${d||be(y,i)?`${Be(y)}`:`'${qo(y,a)}'`}`).join(" or ")})`:""}case"between":case"notbetween":{const h=me(n);if(h.length>=2&&!ro(h[0])&&!ro(h[1])){const[g,y]=h,b=i!==!1,v=be(g,b)?_e(g,{parseNumbers:b}):NaN,N=be(y,b)?_e(y,{parseNumbers:b}):NaN;let x=Number.isNaN(v)?d?`${g}`:`'${qo(g,a)}'`:v,w=Number.isNaN(N)?d?`${y}`:`'${qo(y,a)}'`:N;if(!c&&x===v&&w===N&&N<v){const C=N;w=v,x=C}return p==="between"?`(${r} >= ${x} and ${r} <= ${w})`:`(${r} < ${x} or ${r} > ${w})`}else return""}}return""},yk=(e,t,r)=>r&&typeof e=="string"?e.replaceAll(`${t}`,`${t}${t}`):e,is=({operator:e,value:t,valueSource:r},{escapeQuotes:o,parseNumbers:n,preserveValueOrder:s,quoteFieldNamesWith:a,quoteValuesWith:i,concatOperator:c="||",fieldIdentifierSeparator:d,paramPrefix:p,wrapValueWith:u=["",""],translations:f}={})=>{if(r==="parameter"){const C=$e(e);if(C==="between"||C==="notbetween"){const k=me(t,{retainEmptyStrings:!0});if(k.length<2||!ft(k[0])||!ft(k[1]))return"";const[_,D]=k;return[ls(_,p),ls(D,p)].join(` ${(f==null?void 0:f.betweenAnd)??(f==null?void 0:f.and)??"and"} `)}if(C==="in"||C==="notin"){const k=me(t);return k.length===0?"":`(${k.map(_=>ls(_,p)).join(", ")})`}const E=ls(t,p);switch(C){case"contains":case"doesnotcontain":case"beginswith":case"doesnotbeginwith":case"endswith":case"doesnotendwith":return as(E,C,{concatOperator:c,quoteValuesWith:i,wrapValueWith:u})}return E}const h=r==="field",g=$e(e),y=i||"'",b=C=>`${u[0]}${y}${C}${y}${u[1]}`,v=C=>yk(C,y,o),N=C=>b(v(C)),x=C=>wn(C,{quoteFieldNamesWith:a,fieldIdentifierSeparator:d}),w={concatOperator:c,quoteValuesWith:i,wrapValueWith:u};switch(g){case"null":case"notnull":return"";case"in":case"notin":{const C=me(t);return C.length>0?`(${C.map(E=>h?x(E):be(E,n)?`${Be(E)}`:`${N(E)}`).join(", ")})`:""}case"between":case"notbetween":{const C=me(t,{retainEmptyStrings:!0});if(C.length<2||!ft(C[0])||!ft(C[1]))return"";const[E,k]=C,_=be(E,n)?_e(E,{parseNumbers:"strict"}):NaN,D=be(k,n)?_e(k,{parseNumbers:"strict"}):NaN,A=Number.isNaN(_)?h?`${E}`:E:_,I=Number.isNaN(D)?h?`${k}`:k:D,T=[A,I];return!s&&A===_&&I===D&&D<_&&(T[0]=D,T[1]=_),(h?T.map(L=>x(L)):T.every(L=>be(L,n))?T.map(L=>_e(L,{parseNumbers:"strict"})):T.map(L=>N(L))).join(` ${(f==null?void 0:f.betweenAnd)??(f==null?void 0:f.and)??"and"} `)}case"contains":case"doesnotcontain":return h?as(x(t),g,w):b(`%${v(t)}%`);case"beginswith":case"doesnotbeginwith":return h?as(x(t),g,w):b(`${v(t)}%`);case"endswith":case"doesnotendwith":return h?as(x(t),g,w):b(`%${v(t)}`)}return typeof t=="boolean"?t?"TRUE":"FALSE":h?x(t):be(t,n)?`${Be(t)}`:`${N(t)}`},og={and:"AND",or:"OR"},vk=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:s,placeholderOperatorName:a,placeholderValueName:i,ruleProcessor:c,validateRule:d,validationMap:p}=t,u=(f,h)=>{if(!Te(f,p[f.id??""]))return h?o:"";const g=[];let y="",b=!0;for(const w of f.rules){if(typeof w=="string"){y=og[w];continue}if(ge(w)){const D=u(w);D&&(!b&&y&&(g.push(y),y=""),b=!1,g.push(D));continue}const[C,E]=d(w);if(!Te(w,C,E)||w.field===s||w.operator===a||i!==void 0&&w.value===i)continue;const k=We(r,w.field),_=c(w,{...t,parseNumbers:n(k==null?void 0:k.inputType),escapeQuotes:(w.valueSource??"value")==="value",fieldData:k});_&&(!b&&y&&(g.push(y),y=""),b=!1,g.push(_))}const v=g.join(Vt(f)?` ${og[f.combinator]} `:" "),[N,x]=f.not||!h?[`${f.not?"NOT ":""}(`,")"]:["",""];return v?`${N}${v}${x}`:o};return u(e,!0)},ng=(e,t,r)=>(o,n)=>{const{fields:s,getParseNumberBoolean:a,placeholderFieldName:i,placeholderOperatorName:c,placeholderValueName:d,validateRule:p,validationMap:u,ruleProcessor:f}=t;if(!o||!n)return;const{and:h,not:g,or:y}=n,b=(v,N)=>{if(!Te(v,u[v.id??""]))return;const x=v.rules.map(C=>{if(ge(C))return b(C);const[E,k]=p(C);if(!Te(C,E,k)||C.field===i||C.operator===c||d!==void 0&&C.value===d)return;const _=We(s,C.field);return f(C,{...t,parseNumbers:a(_==null?void 0:_.inputType),fieldData:_,context:{...t.context,columns:o,drizzleOperators:n}})}).filter(Boolean);if(x.length===0)return;const w=v.combinator==="or"?y(...x):h(...x);return v.not?g(w):w};return b(Sr(e))},sg=(e,t)=>{const{fields:r,getParseNumberBoolean:o,placeholderFieldName:n,placeholderOperatorName:s,placeholderValueName:a,ruleProcessor:i,validateRule:c,validationMap:d}=t,p=f=>{if(!Te(f,d[f.id??""]))return!1;const h=f.rules.map(g=>{if(ge(g))return p(g);const[y,b]=c(g);if(!Te(g,y,b)||g.field===n||g.operator===s||a!==void 0&&g.value===a)return!1;const v=We(r,g.field);return i(g,{...t,parseNumbers:o(v==null?void 0:v.inputType),fieldData:v})}).filter(Boolean);return h.length===0?!1:{bool:f.not?{must_not:/^or$/i.test(f.combinator)?{bool:{should:h}}:h}:{[/^or$/i.test(f.combinator)?"should":"must"]:h}}},u=p(Sr(e));return u===!1?{}:u},xk=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:s,placeholderOperatorName:a,placeholderValueName:i,ruleProcessor:c,validateRule:d,validationMap:p}=t,u=g=>{// v8 ignore next -- @preserve
177
+ if(typeof g=="string"||ge(g))return;const[y,b]=d(g);if(!Te(g,y,b)||g.field===s||g.operator===a||i!==void 0&&g.value===i)return;const v=We(r,g.field);return c(g,{...t,parseNumbers:n(v==null?void 0:v.inputType),escapeQuotes:(g.valueSource??"value")==="value",fieldData:v})},f=g=>{if(!Te(g,p[g.id??""]))return"";const y=[];for(const N of g.rules){if(typeof N=="string")continue;if(ge(N)){const w=f(N);w&&y.push(w);continue}const x=u(N);x&&y.push(x)}if(y.length===0)return"";const b=g.combinator??"and",v=g.not?"not":b;return y.length===1&&!g.not?y[0]:`.${v}(${y.map(N=>N.startsWith(".")?`__${N}`:N).join(", ")})`};if(!Te(e,p[e.id??""]))return o;const h=[];for(const g of e.rules){if(typeof g=="string")continue;if(ge(g)){const b=f(g);b&&h.push(b);continue}const y=u(g);y&&h.push(y)}return h.length===0?o:h.join("")},ag=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:s,placeholderOperatorName:a,placeholderValueName:i,ruleProcessor:c,validateRule:d,validationMap:p}=t,u=(f,h)=>{if(!Te(f,p[f.id??""]))return h?o:"";const g=[];let y="",b=!0;for(const w of f.rules){if(typeof w=="string"){y=w;continue}if(ge(w)){const D=u(w);D&&(!b&&y&&(g.push(y),y=""),b=!1,g.push(D));continue}const[C,E]=d(w);if(!Te(w,C,E)||w.field===s||w.operator===a||i!==void 0&&w.value===i)continue;const k=We(r,w.field),_=c(w,{...t,parseNumbers:n(k==null?void 0:k.inputType),escapeQuotes:(w.valueSource??"value")==="value",fieldData:k});_&&(!b&&y&&(g.push(y),y=""),b=!1,g.push(_))}const v=g.join(Vt(f)?` ${f.combinator} `:" "),[N,x]=f.not||!h?[`${f.not?"$not":""}(`,")"]:["",""];return v?`${N}${v}${x}`:o};return u(e,!0)},ud=(e,t)=>{const{fields:r,getParseNumberBoolean:o,placeholderFieldName:n,placeholderOperatorName:s,placeholderValueName:a,ruleProcessor:i,validateRule:c,validationMap:d}=t,p=Sr(e),u=(f,h)=>{if(!Te(f,d[f.id??""]))return!1;const g=f.rules.map(b=>{if(ge(b))return u(b);const[v,N]=c(b);if(!Te(b,v,N)||b.field===n||b.operator===s||a!==void 0&&b.value===a)return!1;const x=We(r,b.field);return i(b,{...t,parseNumbers:o(x==null?void 0:x.inputType),fieldData:x})}).filter(Boolean);if(g.length===0)return!1;const y={[f.combinator]:g};return f.not?{"!":y}:y};return u(p)},wk=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:s,placeholderOperatorName:a,placeholderValueName:i,ruleProcessor:c,validateRule:d,validationMap:p}=t,u=(f,h)=>{if(!Te(f,p[f.id??""]))return h?o:"";const g=f.rules.map(w=>{if(ge(w))return u(w);const[C,E]=d(w);if(!Te(w,C,E)||w.field===s||w.operator===a||i!==void 0&&w.value===i)return"";const k=We(r,w.field);return c(w,{...t,parseNumbers:n(k==null?void 0:k.inputType),escapeQuotes:(w.valueSource??"value")==="value",fieldData:k})}).filter(Boolean),y=g.join(""),[b,v]=f.not?["(!",")"]:["",""],[N,x]=g.length>1?[`${b}(${f.combinator==="or"?"|":"&"}`,`)${v}`]:[b,v];return y?`${N}${y}${x}`:o};return u(Sr(e),!0)},fd=e=>e.startsWith("{")&&e.endsWith("}"),Sk=(e,t,r)=>{const{fields:o,fallbackExpression:n,getParseNumberBoolean:s,placeholderFieldName:a,placeholderOperatorName:i,placeholderValueName:c,ruleProcessor:d,validateRule:p,validationMap:u}=t,f=(g,y)=>{if(!Te(g,u[g.id??""]))return y?n:"";const b=`"$${$e(g.combinator)}"`;let v=!1;const N=g.rules.map(w=>{if(ge(w)){const _=f(w);return _?(v=!0,fd(_)?_:`{${_}}`):""}const[C,E]=p(w);if(!Te(w,C,E)||w.field===a||w.operator===i||c!==void 0&&w.value===c)return"";const k=We(o,w.field);return d(w,{...t,parseNumbers:s(k==null?void 0:k.inputType),fieldData:k},r)}).filter(Boolean),x=N.length>0?N.length===1&&!v?N[0]:`${b}:[${N.join(",")}]`:n;return g.not?`"$nor":[${fd(x)?x:`{${x}}`}]`:x},h=f(Sr(e),!0);return fd(h)?h:`{${h}}`},lg=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:s,placeholderOperatorName:a,placeholderValueName:i,ruleProcessor:c,translations:d,validateRule:p,validationMap:u}=t,f=(h,g)=>{if(!Te(h,u[h.id??""]))return g?o:"";const y=yn(h)&&h.rules.some(I=>typeof I=="string"&&$e(I)==="xor")?Sr(h):h,b=[];let v="",N=!0;for(const I of y.rules){if(typeof I=="string"){v=`${d.ruleSeparator??", "}${d[I]??I} `;continue}if(ge(I)){const z=f(I,y.rules.length===1&&!(y.not||/^xor$/i.test(y.combinator??"")));z&&(!N&&v&&(b.push(v),v=""),N=!1,b.push(z));continue}const[T,L]=p(I);if(!Te(I,T,L)||I.field===s||I.operator===a||i!==void 0&&I.value===i)continue;const F=(I.valueSource??"value")==="value",B=We(r,I.field),G=c(I,{...t,parseNumbers:n(B==null?void 0:B.inputType),escapeQuotes:F,fieldData:B});G&&(!N&&v&&(b.push(v),v=""),N=!1,b.push(G))}if(b.length===0)return o;const x=$e(y.combinator??"")==="xor",w=x?y.combinator.slice(1):y.combinator,C=y.not||!g||x&&b.length>1,[E,k]=["groupPrefix","groupSuffix"].map(I=>y.not?x?ll(I,d,["not","xor"]):ll(I,d,["not"]):x?ll(I,d,["xor"]):ll(I,d)),_=C?`${E} (`.trim():"",D=C?`) ${k}`.trim():"",A=d.ruleSeparator??", ";return`${_}${b.join(Vt(y)?`${A}${d[w]??w} `:"")}${D}`};return f(e,!0)},ig=(e,t)=>{const{format:r,fields:o,fallbackExpression:n,getParseNumberBoolean:s,placeholderFieldName:a,placeholderOperatorName:i,placeholderValueName:c,ruleProcessor:d,validateRule:p,validationMap:u}=t,f=r==="parameterized",h=[],g={},y=new Map,b=x=>{y.has(x)||y.set(x,new Set);const w=`${x}_${y.get(x).size+1}`;return y.get(x).add(w),w},v=x=>{var I;const[w,C]=p(x);if(!Te(x,w,C)||x.field===a||x.operator===i||c!==void 0&&x.value===c)return"";const E=We(o,x.field),k=Object.fromEntries([...y.entries()].map(([T,L])=>[T,[...L]])),_=d(x,{...t,parseNumbers:s(E==null?void 0:E.inputType),getNextNamedParam:b,fieldParamNames:k,fieldData:E},{processedParams:h});if(!wr(_))return"";const{sql:D,params:A}=_;if(typeof D!="string"||!D)return"";if(r==="parameterized"&&Array.isArray(A))h.push(...A);else if(r==="parameterized_named"&&wr(A)){Object.assign(g,A);for(const T of Object.keys(A))(I=y.get(x.field))==null||I.add(T)}return D},N=(x,w)=>{if(!Te(x,u[x.id??""]))return w?n:"";const C=[];let E="",k=!0;for(const _ of x.rules){if(typeof _=="string"){E=_;continue}if(ge(_)){const A=N(_,x.rules.length===1);A&&(!k&&E&&(C.push(E),E=""),k=!1,C.push(A));continue}const D=v(_);D&&(!k&&E&&(C.push(E),E=""),k=!1,C.push(D))}return C.length===0?n:`${x.not?"NOT ":""}(${C.join(Vt(x)?` ${x.combinator} `:" ")})`};return f?{sql:N(e,!0),params:h}:{sql:N(e,!0),params:g}},pd={},Nk=(e,t)=>{const{fields:r,getParseNumberBoolean:o,placeholderFieldName:n,placeholderOperatorName:s,placeholderValueName:a,ruleProcessor:i,validateRule:c,validationMap:d}=t,p=(f,h)=>{if(!Te(f,d[f.id??""]))return h?pd:void 0;const g=f.combinator.toUpperCase();let y=!1;const b=f.rules.map(v=>{if(ge(v)){const C=p(v);return C?(y=!0,C):void 0}const[N,x]=c(v);if(!Te(v,N,x)||v.field===n||v.operator===s||a!==void 0&&v.value===a)return;const w=We(r,v.field);return i(v,{...t,parseNumbers:o(w==null?void 0:w.inputType),fieldData:w})}).filter(Boolean);return b.length>0?b.length===1&&!y?b[0]:{[g]:b}:pd},u=p(Sr(e),!0);return e.not?{NOT:u}:u},Ck=(e,t)=>{const{fields:r,getParseNumberBoolean:o,placeholderFieldName:n,placeholderOperatorName:s,placeholderValueName:a,ruleProcessor:i,validateRule:c,validationMap:d,context:p={}}=t,{sequelizeOperators:u}=p;if(!u)return;const f=(h,g)=>{if(!Te(h,d[h.id??""]))return;const y=h.combinator.toUpperCase();let b=!1;const v=h.rules.map(x=>{if(ge(x)){const k=f(x);return k?(b=!0,k):void 0}const[w,C]=c(x);if(!Te(x,w,C)||x.field===n||x.operator===s||a!==void 0&&x.value===a)return;const E=We(r,x.field);return i(x,{...t,parseNumbers:o(E==null?void 0:E.inputType),fieldData:E})}).filter(Boolean);if(v.length===0)return;const N=v.length===1&&!b?v[0]:{[$e(y)==="or"?u.or:u.and]:v};return h.not?{[u.not]:N}:N};return f(Sr(e))},Ek=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:s,placeholderOperatorName:a,placeholderValueName:i,ruleProcessor:c,validateRule:d,validationMap:p}=t,u=(f,h)=>{if(!Te(f,p[f.id??""]))return h?o:"";const g=[];let y="",b=!0;for(const w of f.rules){if(typeof w=="string"){y=al[w];continue}if(ge(w)){const D=u(w);D&&(!b&&y&&(g.push(y),y=""),b=!1,g.push(D));continue}const[C,E]=d(w);if(!Te(w,C,E)||w.field===s||w.operator===a||i!==void 0&&w.value===i)continue;const k=We(r,w.field),_=c(w,{...t,parseNumbers:n(k==null?void 0:k.inputType),escapeQuotes:(w.valueSource??"value")==="value",fieldData:k});_&&(!b&&y&&(g.push(y),y=""),b=!1,g.push(_))}const v=g.join(Vt(f)?` ${al[f.combinator]} `:" "),[N,x]=f.not||!h?[`${f.not?"!":""}(`,")"]:["",""];return v?`${N}${v}${x}`:o};return u(e,!0)},cg=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:s,placeholderOperatorName:a,placeholderValueName:i,ruleProcessor:c,validateRule:d,validationMap:p}=t,u=(f,h)=>{if(!Te(f,p[f.id??""]))return h?o:"";const g=[];let y="",b=!0;for(const v of f.rules){if(typeof v=="string"){y=v;continue}if(ge(v)){const k=u(v,f.rules.length===1);k&&(!b&&y&&(g.push(y),y=""),b=!1,g.push(k));continue}const[N,x]=d(v);if(!Te(v,N,x)||v.field===s||v.operator===a||i!==void 0&&v.value===i)continue;const w=(v.valueSource??"value")==="value",C=We(r,v.field),E=c(v,{...t,parseNumbers:n(C==null?void 0:C.inputType),escapeQuotes:w,fieldData:C});E&&(!b&&y&&(g.push(y),y=""),b=!1,g.push(E))}return g.length===0?o:`${f.not?"NOT ":""}(${g.join(Vt(f)?` ${f.combinator} `:" ")})`};return u(e,!0)},_k=(e,t)=>r=>{const{fields:o,getParseNumberBoolean:n,placeholderFieldName:s,placeholderOperatorName:a,placeholderValueName:i,validateRule:c,validationMap:d,context:p={},ruleProcessor:u}=t,f=p.tanStackDbOperators;if(!f)return;const{and:h,eq:g,not:y,or:b}=f,v=g(1,1),N=Object.keys(r);/* v8 ignore next -- @preserve */if(N.length===0)return v;const x=w=>{if(!Te(w,d[w.id??""]))return;const C=w.rules.map(k=>{if(ge(k))return x(k);const[_,D]=c(k);if(!Te(k,_,D)||k.field===s||k.operator===a||i!==void 0&&k.value===i)return;const A=We(o,k.field);return u(k,{...t,parseNumbers:n(A==null?void 0:A.inputType),fieldData:A,context:{...p,_tanstackDbRefs:r,_tanstackDbPrimaryRef:N[0]}})}).filter(Boolean);if(C.length===0)return v;const E=C.length===1?C[0]:w.combinator==="or"?b(...C):h(...C);return w.not?y(E):E};return x(Sr(e))??v},kk=new Set(["number","range","bigint"]),dg=/^\d{4}-\d{2}-\d{2}$/,ug=/^\d{2}:\d{2}(:\d{2}(\.\d+)?)?$/,Ak=/^\d{4}-\d{2}$/,Dk=/^\d{4}-W\d{2}$/,$k=/^#([0-9a-f]{3}|[0-9a-f]{6})$/i,Tk=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,fg=(e,t,r)=>{const o=new Date(Date.UTC(e,t-1,r));return o.getUTCFullYear()===e&&o.getUTCMonth()===t-1&&o.getUTCDate()===r},pg=e=>{const t=e.split(":"),r=Number(t[0]),o=Number(t[1]),n=t[2]?Number.parseFloat(t[2]):0;return r>=0&&r<=23&&o>=0&&o<=59&&n>=0&&n<60},Pk=(e,t)=>{if(!(e==null||e==="")){if(kk.has(t)){const r=typeof e=="string"?e.trim():e;return typeof r=="number"||typeof r=="bigint"||typeof r=="string"&&Gm.test(r)?void 0:"VALUE_TYPE_MISMATCH"}if(t==="date"){if(typeof e!="string")return"VALUE_TYPE_MISMATCH";const r=e.trim();if(!dg.test(r))return"VALUE_TYPE_MISMATCH";const[o,n,s]=r.split("-").map(Number);return fg(o,n,s)?void 0:"VALUE_TYPE_MISMATCH"}if(t==="datetime-local"){if(typeof e!="string")return"VALUE_TYPE_MISMATCH";const r=e.trim().replace(/(Z|[+-]\d{2}:?\d{2}|[+-]\d{2})$/,""),o=r.indexOf("T");if(o===-1)return"VALUE_TYPE_MISMATCH";const n=r.slice(0,o),s=r.slice(o+1);if(!dg.test(n)||!ug.test(s))return"VALUE_TYPE_MISMATCH";const[a,i,c]=n.split("-").map(Number);return fg(a,i,c)&&pg(s)?void 0:"VALUE_TYPE_MISMATCH"}if(t==="time"){if(typeof e!="string")return"VALUE_TYPE_MISMATCH";const r=e.trim();return ug.test(r)&&pg(r)?void 0:"VALUE_TYPE_MISMATCH"}if(t==="month"){if(typeof e!="string")return"VALUE_TYPE_MISMATCH";const r=e.trim();if(!Ak.test(r))return"VALUE_TYPE_MISMATCH";const o=Number(r.slice(5));return o>=1&&o<=12?void 0:"VALUE_TYPE_MISMATCH"}if(t==="week"){if(typeof e!="string")return"VALUE_TYPE_MISMATCH";const r=e.trim();if(!Dk.test(r))return"VALUE_TYPE_MISMATCH";const o=Number(r.slice(6));return o>=1&&o<=53?void 0:"VALUE_TYPE_MISMATCH"}if(t==="color")return typeof e!="string"?"VALUE_TYPE_MISMATCH":$k.test(e.trim())?void 0:"VALUE_TYPE_MISMATCH";if(t==="url"){if(typeof e!="string")return"VALUE_TYPE_MISMATCH";try{new URL(e.trim());return}catch{return"VALUE_TYPE_MISMATCH"}}if(t==="email")return typeof e!="string"?"VALUE_TYPE_MISMATCH":Tk.test(e.trim())?void 0:"VALUE_TYPE_MISMATCH"}},Ik=(e,t)=>{const{fields:r,placeholderFieldName:o,placeholderOperatorName:n,placeholderValueName:s,validateRule:a,validationMap:i}=t,c=[],d={totalRules:0,totalGroups:0,validRules:0,invalidRules:0,validGroups:0,invalidGroups:0},p={},u=nd(r),f=new Map;for(const b of u)f.set(b.name,b);const h=f.size>0,g=(b,v)=>{d.totalGroups++;const N=v.length,x=i[b.id??""],w=Te(b,x),C=hg(x);b.muted?c.push({id:b.id??"",path:v,code:"MUTED",message:"Group is muted",source:"muted"}):!w&&x!==void 0&&c.push({id:b.id??"",path:v,code:"CUSTOM_VALIDATOR",message:C?`Invalid: ${C.join(", ")}`:"Group failed validation",source:"query-validator"});let E=!0,k=0;const _=[];for(const A of b.rules){if(typeof A=="string"){_.push(A),k++;continue}const I=[...v,k];if(ge(A)){const V=g(A,I);V.valid||(E=!1),_.push(V),k++;continue}d.totalRules++;const T=I.length,[L,F]=a(A),B=Te(A,L,F)&&A.field!==o&&A.operator!==n&&!(s!==void 0&&A.value===s);Ok(A,I,L,F,B,c,o,n,s,h,f),B?d.validRules++:(E=!1,d.invalidRules++);const G=A.field;p[G]||(p[G]={ruleCount:0,invalidCount:0}),p[G].ruleCount++,B||p[G].invalidCount++;const z=hg(L)??Mk(A,F),H={...A,valid:B,...z?{reasons:z}:null,path:I,level:T};_.push(H),k++}const D=w&&E;return D?d.validGroups++:d.invalidGroups++,Vt(b)?{...b,valid:D,...C?{reasons:C}:null,path:v,level:N,rules:_}:{...b,valid:D,...C?{reasons:C}:null,path:v,level:N,rules:_}},y=g(e,[]);if(h){const b=new Set(Object.keys(p));for(const[v]of f)b.has(v)||c.push({id:"",path:[],code:"UNREFERENCED_FIELD",message:`Field "${v}" is defined in the fields config but not used in the query`,source:"field-check"})}return{query:y,diagnostics:c,stats:d,fieldSummary:p}},Ok=(e,t,r,o,n,s,a,i,c,d,p)=>{const u=e.id??"";if(e.muted&&s.push({id:u,path:t,code:"MUTED",message:"Rule is muted",source:"muted"}),e.field===a&&s.push({id:u,path:t,code:"PLACEHOLDER_FIELD",message:"Rule has a placeholder field",source:"placeholder"}),e.operator===i&&s.push({id:u,path:t,code:"PLACEHOLDER_OPERATOR",message:"Rule has a placeholder operator",source:"placeholder"}),c!==void 0&&e.value===c&&s.push({id:u,path:t,code:"PLACEHOLDER_VALUE",message:"Rule has a placeholder value",source:"placeholder"}),!e.muted&&e.field!==a&&e.operator!==i&&!(c!==void 0&&e.value===c)){if(typeof r=="boolean"&&!r)s.push({id:u,path:t,code:"CUSTOM_VALIDATOR",message:"Rule failed validation",source:"query-validator"});else if(typeof r!="boolean"&&xn(r)&&!r.valid){const f=r.reasons;s.push({id:u,path:t,code:"CUSTOM_VALIDATOR",message:f?`Invalid: ${f.join(", ")}`:"Rule failed validation",source:"query-validator"})}else if(!n&&typeof o=="function"){const f=o(e),h=typeof f!="boolean"&&xn(f)&&!f.valid?f.reasons:void 0;s.push({id:u,path:t,code:"CUSTOM_VALIDATOR",message:h?`Invalid: ${h.join(", ")}`:"Rule failed field validation",source:"field-validator"})}}if(d&&!p.has(e.field)&&e.field!==a&&s.push({id:u,path:t,code:"UNDEFINED_FIELD",message:`Field "${e.field}" is not defined in the fields config`,source:"field-check"}),d){const f=p.get(e.field);if(f!=null&&f.inputType){const h=Pk(e.value,f.inputType);h&&s.push({id:u,path:t,code:h,message:`Value "${e.value}" is not compatible with input type "${f.inputType}"`,source:"type-check"})}}},hg=e=>{if(typeof e!="boolean"&&xn(e)&&!e.valid&&e.reasons)return e.reasons},Mk=(e,t)=>{if(typeof t=="function"){const r=t(e);if(typeof r!="boolean"&&xn(r)&&!r.valid&&r.reasons)return r.reasons}},Lk=(e,t)=>typeof e!="string"||!t?`${e}`:e.replaceAll("'","\\'"),mg=(e,t={})=>{const{escapeQuotes:r,parseNumbers:o}=t,{field:n,operator:s,value:a,valueSource:i}=e,c=i==="field",d=s.toLowerCase(),p=u=>u==null?"null":typeof u=="boolean"||typeof u=="bigint"?String(u):c||typeof u=="number"||be(u,o)?Be(u):`'${Lk(u,r)}'`;switch(d){case"=":return`${n} = ${p(a)}`;case"!=":case"<>":return`${n} <> ${p(a)}`;case"<":case">":case"<=":case">=":return`${n} ${d} ${p(a)}`;case"contains":return`${n} CONTAINS ${p(a)}`;case"doesnotcontain":return`NOT ${n} CONTAINS ${p(a)}`;case"beginswith":return`${n} STARTS WITH ${p(a)}`;case"doesnotbeginwith":return`NOT ${n} STARTS WITH ${p(a)}`;case"endswith":return`${n} ENDS WITH ${p(a)}`;case"doesnotendwith":return`NOT ${n} ENDS WITH ${p(a)}`;case"null":return`${n} IS NULL`;case"notnull":return`${n} IS NOT NULL`;case"in":case"notin":{const u=me(a).map(p);return u.length?`${d==="notin"?"NOT ":""}${n} IN [${u.join(", ")}]`:""}case"between":case"notbetween":{const u=me(a);if(u.length<2)return"";const[f,h]=[p(u[0]),p(u[1])],g=`${f} <= ${n} AND ${n} <= ${h}`;return d==="notbetween"?`NOT (${g})`:g}default:return`${n} ${s} ${p(a)}`}},Fk=(e,t)=>{const r=t??{},{parseNumbers:o,preserveValueOrder:n,context:s={}}=r,{columns:a,drizzleOperators:i,useRawFields:c}=s;if(!a||!i)return;const{between:d,eq:p,gt:u,gte:f,inArray:h,isNotNull:g,isNull:y,like:b,lt:v,lte:N,ne:x,notBetween:w,notInArray:C,notLike:E,sql:k}=i,{field:_,operator:D,value:A,valueSource:I}=e,T=c&&/^[a-z_][a-z0-9_.]*$/i.test(_)?k.raw(_):a[_],L=$e(D),F=I==="field",B=H=>F?a[H]:H,G=H=>F||!o?B(H):be(H,!0)?_e(H,{parseNumbers:!0}):H;if(!T)return;const z=qt(e);if(z!==!1){if(z){if(r.preset!=="postgresql")return;const{mode:H,threshold:V}=z,W=r.subqueryDepth??0,pe=il(W),U=ng(oo(e.value,{ruleProcessor:Q=>({...Q,field:pe})}),{...r,context:{...r.context,useRawFields:!0},subqueryDepth:W+1});switch(H){case"all":return k`(select count(*) from unnest(${T}) as ${k.raw(pe)} where ${U({},i)}) = array_length(${T}, 1)`;case"none":return k`not exists (select 1 from unnest(${T}) as ${k.raw(pe)} where ${U({},i)})`;case"some":return k`exists (select 1 from unnest(${T}) as ${k.raw(pe)} where ${U({},i)})`;case"atleast":case"atmost":case"exactly":{const Q=H==="atleast"?">=":H==="atmost"?"<=":"=";return V>0&&V<1?k`(select count(*)::float / array_length(${T}, 1) from unnest(${T}) as ${k.raw(pe)} where ${U({},i)}) ${k.raw(`${Q} ${V}`)}`:k`(select count(*) from unnest(${T}) as ${k.raw(pe)} where ${U({},i)}) ${k.raw(`${Q} ${V}`)}`}}}switch(L){case"=":return p(T,G(A));case"!=":return x(T,G(A));case">":return u(T,G(A));case"<":return v(T,G(A));case">=":return f(T,G(A));case"<=":return N(T,G(A));case"beginswith":case"doesnotbeginwith":return(L==="doesnotbeginwith"?E:b)(T,F?k`${B(A)} || '%'`:`${A}%`);case"contains":case"doesnotcontain":return(L==="doesnotcontain"?E:b)(T,F?k`'%' || ${B(A)} || '%'`:`%${A}%`);case"endswith":case"doesnotendwith":return(L==="doesnotendwith"?E:b)(T,F?k`'%' || ${B(A)}`:`%${A}`);case"null":return y(T);case"notnull":return g(T);case"in":case"notin":{const H=me(A).map(V=>G(V));return L==="notin"?C(T,H):h(T,H)}case"between":case"notbetween":{const H=me(A);if(H.length>=2&&ft(H[0])&&ft(H[1])){let[V,W]=H;const pe=o!==!1;if(!F&&be(V,pe)&&be(W,pe)){const U=_e(V,{parseNumbers:pe}),Q=_e(W,{parseNumbers:pe});if(!n&&Q<U){const Ce=Q;W=U,V=Ce}else V=U,W=Q}else F&&(V=B(V),W=B(W));return L==="notbetween"?w(T,V,W):d(T,V,W)}return}default:return}}},Vk={"<":"lt","<=":"lte",">":"gt",">=":"gte"},fl=(e,t)=>e.startsWith("not")||e.startsWith("doesnot")?{bool:{must_not:t}}:t,hd=e=>e==null?void 0:e.replace(/('|\\)/g,"\\$1"),Gk={beginswith:"startsWith",doesnotbeginwith:"startsWith",doesnotcontain:"contains",doesnotendwith:"endsWith",endswith:"endsWith"},zk=(e,t,r)=>{const o=`doc['${e}'].value.${Gk[t]??t}(doc['${r}'].value)`;return t.startsWith("d")?`!${o}`:o},cs=(e,t)=>typeof e=="boolean"?e:be(e,t)?_e(e,{parseNumbers:t}):e,Bk=(e,t={})=>{const{field:r,operator:o,value:n,valueSource:s}=e,{parseNumbers:a,preserveValueOrder:i}=t,c=$e(o),d=qt(e);if(d===!1)return!1;if(d){const{mode:p}=d,u=sg(oo(e.value,{ruleProcessor:f=>({...f,field:f.field?`${r}.${f.field}`:r})}),t);if(Object.keys(u).length===0)return!1;switch(p){case"some":return{nested:{path:r,query:u}};case"none":return{bool:{must_not:{nested:{path:r,query:u}}}};case"all":case"atleast":case"atmost":case"exactly":return!1}}if(s==="field"){if(me(n).some(u=>typeof u!="string"))return!1;const p=hd(r);switch(c){case"=":case"!=":case">":case">=":case"<":case"<=":{const u=c==="="?"==":c,f=hd(n);return f?{bool:{filter:{script:{script:`doc['${p}'].value ${u} doc['${f}'].value`}}}}:!1}case"in":case"notin":{const u=me(n);if(u.length>0){const f=u.map(h=>({bool:{filter:{script:{script:`doc['${p}'].value == doc['${h}'].value`}}}}));return{bool:c==="in"?{should:f}:{must_not:f}}}return!1}case"between":case"notbetween":{const u=me(n);if(u.length>=2&&u[0]&&u[1]){const f=`doc['${p}'].value >= doc['${u[0]}'].value && doc['${p}'].value <= doc['${u[1]}'].value`;return{bool:{filter:{script:{script:c==="notbetween"?`!(${f})`:f}}}}}return!1}case"contains":case"doesnotcontain":case"beginswith":case"doesnotbeginwith":case"endswith":case"doesnotendwith":{const u=hd(n);return u?{bool:{filter:{script:{script:zk(p,c,u)}}}}:!1}}}switch(c){case"<":case"<=":case">":case">=":return{range:{[r]:{[Vk[c]]:cs(n,a)}}};case"=":return{term:{[r]:cs(n,a)}};case"!=":return{bool:{must_not:{term:{[r]:cs(n,a)}}}};case"null":return{bool:{must_not:{exists:{field:r}}}};case"notnull":return{exists:{field:r}};case"in":case"notin":{const p=me(n).map(u=>cs(u,a));if(p.length>0){const u=p.map(f=>({term:{[r]:cs(f,a)}}));return{bool:c==="in"?{should:u}:{must_not:u}}}return!1}case"between":case"notbetween":{const p=me(n);if(p.length>=2&&ft(p[0])&&ft(p[1])){let[u,f]=p;const h=a!==!1;if(be(u,h)&&be(f,h)){const g=_e(u,{parseNumbers:h}),y=_e(f,{parseNumbers:h});if(!i&&y<g){const b=y;f=g,u=b}else u=g,f=y}return fl(c,{range:{[r]:{gte:u,lte:f}}})}return!1}case"contains":case"doesnotcontain":return fl(c,{regexp:{[r]:{value:`.*${n}.*`}}});case"beginswith":case"doesnotbeginwith":return fl(c,{regexp:{[r]:{value:`${n}.*`}}});case"endswith":case"doesnotendwith":return fl(c,{regexp:{[r]:{value:`.*${n}`}}})}return!1},Uk=(e,t)=>typeof e!="string"||!t?`${e}`:e.replaceAll("'","\\'"),Wk=(e,t={})=>{const{escapeQuotes:r,parseNumbers:o}=t,{field:n,operator:s,value:a,valueSource:i}=e,c=i==="field",d=s.toLowerCase(),p=n.includes(".")?n.split(".").pop():n,u=f=>f==null?"null":typeof f=="boolean"||typeof f=="bigint"?String(f):c||typeof f=="number"||be(f,o)?Be(f):`'${Uk(f,r)}'`;switch(d){case"=":return`.has('${p}', ${u(a)})`;case"!=":case"<>":return`.has('${p}', neq(${u(a)}))`;case"<":return`.has('${p}', lt(${u(a)}))`;case">":return`.has('${p}', gt(${u(a)}))`;case"<=":return`.has('${p}', lte(${u(a)}))`;case">=":return`.has('${p}', gte(${u(a)}))`;case"contains":return`.has('${p}', containing(${u(a)}))`;case"doesnotcontain":return`.has('${p}', notContaining(${u(a)}))`;case"beginswith":return`.has('${p}', startingWith(${u(a)}))`;case"doesnotbeginwith":return`.has('${p}', notStartingWith(${u(a)}))`;case"endswith":return`.has('${p}', endingWith(${u(a)}))`;case"doesnotendwith":return`.has('${p}', notEndingWith(${u(a)}))`;case"null":return`.hasNot('${p}')`;case"notnull":return`.has('${p}')`;case"in":{const f=me(a).map(u);return f.length?`.has('${p}', within(${f.join(", ")}))`:""}case"notin":{const f=me(a).map(u);return f.length?`.has('${p}', without(${f.join(", ")}))`:""}case"between":{const f=me(a);return f.length<2?"":`.has('${p}', between(${u(f[0])}, ${u(f[1])}))`}case"notbetween":{const f=me(a);return f.length<2?"":`.has('${p}', outside(${u(f[0])}, ${u(f[1])}))`}default:return`.has('${p}', ${u(a)})`}},pl=e=>e.startsWith("not")||e.startsWith("doesnot"),hl=(e,t)=>`"${typeof e!="string"||!t?`${e}`:e.replaceAll('"','\\"')}"`,ds=(e,t)=>t?`$not(${e})`:e,gg=e=>`${e}`.replaceAll(/[/$()*+.?[\\\]^{|}]/g,String.raw`\$&`).replaceAll("-",String.raw`\x2d`),Hk=(e,t={})=>{const{field:r,operator:o,value:n,valueSource:s}=e,{escapeQuotes:a,parseNumbers:i,preserveValueOrder:c,quoteFieldNamesWith:d=["",""],fieldIdentifierSeparator:p=""}=t,u=s==="field",f=typeof n=="number"||typeof n=="boolean"||typeof n=="bigint"||be(n,i),h=b=>wn(b,{quoteFieldNamesWith:d,fieldIdentifierSeparator:p}),g=qt(e);if(g===!1)return;if(g){const{mode:b,threshold:v}=g,N=`$count(${h(r)})`,x=`$count($filter(${h(r)}, function($v) {${ag(oo(n,{ruleProcessor:w=>({...w,field:w.field?`$v.${w.field}`:"$v"})}),t)}}))`;switch(b){case"all":return`${x} = ${N}`;case"none":return`${x} = 0`;case"some":return`${x} > 0`;case"atleast":case"atmost":case"exactly":{const w=b==="atleast"?">=":b==="atmost"?"<=":"=";return v>0&&v<1?`${x} ${w} (${N} * ${v})`:`${x} ${w} ${v}`}}}const y=$e(o);switch(y){case"<":case"<=":case"=":case"!=":case">":case">=":return`${h(r)} ${y} ${u?h(Be(n)):f?Be(n):hl(n,a)}`;case"contains":case"doesnotcontain":return ds(`$contains(${h(r)}, ${u?h(Be(n)):hl(n,a)})`,pl(y));case"beginswith":case"doesnotbeginwith":return ds(u?`$substring(${h(r)}, 0, $length(${h(Be(n))})) = ${h(Be(n))}`:`$contains(${h(r)}, /^${gg(n)}/)`,pl(y));case"endswith":case"doesnotendwith":return ds(u?`$substring(${h(r)}, $length(${h(r)}) - $length(${h(Be(n))})) = ${h(Be(n))}`:`$contains(${h(r)}, /${gg(n)}$/)`,pl(y));case"null":return`${h(r)} = null`;case"notnull":return`${h(r)} != null`;case"in":case"notin":{const b=me(n);return ds(`${h(r)} in [${b.map(v=>u?`${h(Be(v))}`:be(v,i)?`${Be(v)}`:hl(v,a)).join(", ")}]`,pl(y))}case"between":case"notbetween":{const b=me(n);if(b.length<2||ro(b[0])||ro(b[1]))return"";const[v,N]=b,x=i!==!1,w=be(v,x)?_e(v,{parseNumbers:x}):NaN,C=be(N,x)?_e(N,{parseNumbers:x}):NaN;let E=Number.isNaN(w)?u?`${v}`:v:w,k=Number.isNaN(C)?u?`${N}`:N:C;if(!c&&E===w&&k===C&&C<w){const I=C;k=w,E=I}const _=be(v,i)&&be(N,i),D=(I,T)=>u?h(I):_?T:hl(T,a),A=`${h(r)} >= ${D(v,E)} and ${h(r)} <= ${D(N,k)}`;return y==="between"?`(${A})`:ds(A,!0)}}return""},jk=e=>e.replace(/^(=)$/,"$1=").replace(/^notnull$/i,"!=").replace(/^null$/i,"=="),us=(e,t)=>e.startsWith("not")||e.startsWith("doesnot")?{"!":t}:t,md=(e,t={})=>{const{field:r,operator:o,value:n,valueSource:s}=e,{parseNumbers:a,preserveValueOrder:i}=t,c=s==="field",d={var:r},p=h=>c?{var:`${h}`}:be(h,a)?_e(h,{parseNumbers:a}):h,u=qt(e);if(u===!1)return!1;if(u){const{mode:h,threshold:g}=u;switch(h){case"all":case"none":case"some":return{[h]:[{var:r},n.rules.length===1&&!ge(n.rules[0])?md(n.rules[0],t):ud(n,t)]};case"atleast":case"atmost":case"exactly":{const y=h==="atleast"?">=":h==="atmost"?"<=":"==",b={reduce:[{filter:[{var:r},n.rules.length===1&&!ge(n.rules[0])?md(n.rules[0],t):ud(n,t)]},{"+":[1,{var:"accumulator"}]},0]};if(g>0&&g<1){const v={reduce:[{var:r},{"+":[1,{var:"accumulator"}]},0]};return{[y]:[b,{"*":[v,g]}]}}return{[y]:[b,g]}}}}const f=$e(o);switch(f){case"<":case"<=":case"=":case"!=":case">":case">=":return{[jk(f)]:[d,p(n)]};case"null":case"notnull":return{[`${f==="notnull"?"!":"="}=`]:[d,null]};case"in":case"notin":{const h=me(n).map(g=>p(g));return us(f,{in:[d,h]})}case"between":case"notbetween":{const h=me(n);if(h.length>=2&&ft(h[0])&&ft(h[1])){let[g,y]=h;const b=a!==!1;if(!c&&be(g,b)&&be(y,b)){const v=_e(g,{parseNumbers:b}),N=_e(y,{parseNumbers:b});if(!i&&N<v){const x=N;y=v,g=x}else g=v,y=N}else c&&(g={var:g},y={var:y});return us(f,{"<=":[g,d,y]})}return!1}case"contains":case"doesnotcontain":{const h={in:[p(n),d]};return us(f,h)}case"beginswith":case"doesnotbeginwith":{const h={startsWith:[d,p(n)]};return us(f,h)}case"endswith":case"doesnotendwith":{const h={endsWith:[d,p(n)]};return us(f,h)}}return!1},Yo=(e,t)=>t?`(!${e})`:`${e}`,so=e=>`${Be(e)}`.replaceAll(/[()&|=<>~*\\/]/g,t=>`\\${t.codePointAt(0).toString(16)}`),qk=(e,t={})=>{const{field:r,operator:o,value:n,valueSource:s}=e,{preserveValueOrder:a}=t,i=$e(o);if(s==="field"||ro(n)&&i!=="null"&&i!=="notnull"||qt(e))return"";switch(i){case"=":case"!=":return Yo(`(${r}=${so(n)})`,i==="!=");case">":case">=":return`(${r}>=${so(n)})`;case"<":case"<=":return`(${r}<=${so(n)})`;case"contains":case"doesnotcontain":return Yo(`(${r}=*${so(n)}*)`,i==="doesnotcontain");case"beginswith":case"doesnotbeginwith":return Yo(`(${r}=${so(n)}*)`,i==="doesnotbeginwith");case"endswith":case"doesnotendwith":return Yo(`(${r}=*${so(n)})`,i==="doesnotendwith");case"null":case"notnull":return Yo(`(${r}=*)`,i==="notnull");case"in":case"notin":{const c=me(n);return Yo(`(|${c.map(d=>`(${r}=${so(d)})`).join("")})`,i==="notin")}case"between":case"notbetween":{const c=me(n);if(c.length<2||ro(c[0])||ro(c[1]))return"";const[d,p]=c,u=be(d,!0)?_e(d,{parseNumbers:!0}):NaN,f=be(p,!0)?_e(p,{parseNumbers:!0}):NaN;let h=Number.isNaN(u)?d:u,g=Number.isNaN(f)?p:f;if(!a&&h===u&&g===f&&f<u){const y=f;g=u,h=y}return Yo(`(&(${r}>=${so(h)})(${r}<=${so(g)}))`,i==="notbetween")}}return""},Yk=(e,t,r)=>r&&typeof e=="string"?e.replaceAll(`${t}`,`${t}${t}`):e,bg=(e,t={})=>{var E;const{escapeQuotes:r,fields:o,parseNumbers:n,quoteFieldNamesWith:s,quoteValuesWith:a,fieldIdentifierSeparator:i,translations:c}=t,d=e.valueSource==="field",p=$e(e.operator),u=a||"'",f=k=>`${u}${k}${u}`,h=k=>Yk(k,u,r),g=k=>f(h(k)),y=k=>wn(k,{quoteFieldNamesWith:s,fieldIdentifierSeparator:i}),b=c??{},v=b.or??"or",N=b.true??"true",x=b.false??"false",w=b.listSeparator??", ",C=!b.listSeparator;switch(p){case"null":case"notnull":return"";case"between":case"notbetween":{if(!d)return is(e,t);const k=me(e.value,{retainEmptyStrings:!0}).slice(0,2).map(_=>{var D;return y(((D=We(o??[],_))==null?void 0:D.label)??_)});return k.length<2||!ft(k[0])||!ft(k[1])?"":is({...e,value:k},t)}case"in":case"notin":{const k=me(e.value);if(k.length===0)return"";const _=k.map(A=>{var I;return d?y(((I=We(o??[],A))==null?void 0:I.label)??A):be(A,n)?`${Be(A)}`:`${g(A)}`});if(_.length===1)return _[0];const D=C&&_.length>2?",":"";return`(${`${_.slice(0,-1).join(w)}${D} ${v} ${_.at(-1)}`})`}}return typeof e.value=="boolean"?e.value?N:x:d?y(((E=We(o??[],e.value))==null?void 0:E.label)??e.value):be(e.value,n)?`${Be(e.value)}`:`${g(e.value)}`},yg={"=":["is","is the same as the value in"],"!=":["is not","is not the same as the value in"],"<":["is less than","is less than the value in"],">":["is greater than","is greater than the value in"],"<=":["is less than or equal to","is less than or equal to the value in"],">=":["is greater than or equal to","is greater than or equal to the value in"],contains:["contains","contains the value in"],beginswith:["starts with","starts with the value in"],endswith:["ends with","ends with the value in"],doesnotcontain:["does not contain","does not contain the value in"],doesnotbeginwith:["does not start with","does not start with the value in"],doesnotendwith:["does not end with","does not end with the value in"],null:"is null",notnull:"is not null",in:["is one of the values","is the same as a value in"],notin:["is not one of the values","is not the same as any value in"],between:["is between","is between the values in"],notbetween:["is not between","is not between the values in"]};/* v8 ignore next -- @preserve */const Qk=()=>[],vg=(e,t={})=>{const{field:r,operator:o,valueSource:n="value"}=e,{getOperators:s=Qk,operatorMap:a=yg}=t,i=new Map(Object.entries(yg));for(const[y,b]of Object.entries(a))i.set($e(y),b);const c=Object.fromEntries(i),d=$e(o);var p=o;const u=me(e.value).length===1;d==="in"&&u?p="=":d==="notin"&&u&&(p="!=");const{value:f,label:h}=We(Gr(s(r,{fieldData:t.fieldData??{name:r,value:r,label:r}})??[]),p)??{value:p,label:p},g=c[f]??c[$e(f)]??[h,h];return typeof g=="string"?g:g[n==="field"?1:0]},Kk=(e,t)=>{var w;const{field:r,operator:o}=e,{fieldData:n,quoteFieldNamesWith:s=["",""],fieldIdentifierSeparator:a="",quoteValuesWith:i="'",operatorProcessor:c=vg,valueProcessor:d=bg,concatOperator:p="||",wordOrder:u="SVO"}=t??{},f=wn((n==null?void 0:n.label)??r,{quoteFieldNamesWith:s,fieldIdentifierSeparator:a}),h=qt(e);if(h===!1)return"";if(h){const{mode:C,threshold:E}=h,k=lg(e.value,{...t,fields:Gr((n==null?void 0:n.subproperties)??[])}),_=(((w=n==null?void 0:n.subproperties)==null?void 0:w.length)??0)>0;switch(C){case"all":return`(${_?"for ":""}every item in ${f}${_?",":""} ${k})`;case"none":return`(${_?"for ":""}no item in ${f}${_?",":""} ${k})`;case"some":return`(${_?"for ":""}at least one item in ${f}${_?",":""} ${k})`;case"atleast":case"atmost":case"exactly":{const D=C.replace("at","at ");return E>0&&E<1?`(${_?"for ":""}${D} ${E*100}% of the items in ${f}${_?",":""} ${k})`:`(${_?"for ":""}${D} ${E} of the items in ${f}${_?",":""} ${k})`}}}const g=d(e,{...t,quoteFieldNamesWith:s,fieldIdentifierSeparator:a,quoteValuesWith:i,concatOperator:p}),y=$e(o);if((y==="in"||y==="notin"||y==="between"||y==="notbetween")&&!g)return"";const b={S:f,V:c(e,t),O:g},v=(t==null?void 0:t.translations)??{},N={S:v.afterSubject??" ",V:v.afterVerb??" ",O:v.afterObject??" "},x=hk(u).filter(C=>b[C]!=="");return x.map((C,E)=>`${b[C]}${E<x.length-1?N[C]:""}`).join("").trim()},fs=e=>$e(dk(e.operator)),ps=(e,t={})=>{const{quoteFieldNamesWith:r=["",""],fieldIdentifierSeparator:o="",quoteValuesWith:n="'",operatorProcessor:s=fs,valueProcessor:a=is,concatOperator:i="||"}=t,c=g=>wn(g,{quoteFieldNamesWith:r,fieldIdentifierSeparator:o}),d=c(e.field),p=qt(e);if(p===!1)return;if(p){if((t==null?void 0:t.preset)!=="postgresql")return"";const{mode:g,threshold:y}=p,b=t.subqueryDepth??0,v=il(b),N=cg(oo(e.value,{ruleProcessor:x=>({...x,field:v})}),{...t,subqueryDepth:b+1});switch(g){case"all":return`(select count(*) from unnest(${d}) as ${c(v)} where ${N}) = array_length(${d}, 1)`;case"none":return`not exists (select 1 from unnest(${d}) as ${c(v)} where ${N})`;case"some":return`exists (select 1 from unnest(${d}) as ${c(v)} where ${N})`;case"atleast":case"atmost":case"exactly":{const x=g==="atleast"?">=":g==="atmost"?"<=":"=";return`(select count(*)${y>0&&y<1?`::float / array_length(${d}, 1)`:""} from unnest(${d}) as ${c(v)} where ${N}) ${x} ${y}`}}}const u=a(e,{...t,quoteFieldNamesWith:r,fieldIdentifierSeparator:o,quoteValuesWith:n,concatOperator:i}),f=s(e,t),h=$e(f);return(h==="in"||h==="not in"||h==="between"||h==="not between")&&!u?"":`${d} ${f} ${u}`.trim()},xg=(e,t,r)=>{const{fieldData:o,format:n,getNextNamedParam:s,parseNumbers:a,paramPrefix:i,paramsKeepPrefix:c,numberedParams:d,quoteFieldNamesWith:p=["",""],fieldIdentifierSeparator:u,concatOperator:f,operatorProcessor:h=fs,valueProcessor:g=is}=t??{},{processedParams:y=[]}=r??{},b=n==="parameterized",v=[],N={},x=F=>b?{sql:F,params:v}:{sql:F,params:N},w=F=>wn(F,{quoteFieldNamesWith:p,fieldIdentifierSeparator:u}),C=w(e.field),E=qt(e);/* v8 ignore start -- @preserve */if(E===!1)return;if(E){if((t==null?void 0:t.preset)!=="postgresql")return x("");const{mode:F,threshold:B}=E,G=t.subqueryDepth??0,z=il(G),{sql:H,params:V}=ig(oo(e.value,{ruleProcessor:W=>({...W,field:z})}),{...t,fields:[],subqueryDepth:G+1});switch(Array.isArray(V)?v.push(...V):Object.assign(N,V),F){case"all":return x(`(select count(*) from unnest(${C}) as ${w(z)} where ${H}) = array_length(${C}, 1)`);case"none":return x(`not exists (select 1 from unnest(${C}) as ${w(z)} where ${H})`);case"some":return x(`exists (select 1 from unnest(${C}) as ${w(z)} where ${H})`);case"atleast":case"atmost":case"exactly":{const W=F==="atleast"?">=":F==="atmost"?"<=":"=";return x(`(select count(*)${B>0&&B<1?`::float / array_length(${C}, 1)`:""} from unnest(${C}) as ${w(z)} where ${H}) ${W} ${B}`)}}}/* v8 ignore stop -- @preserve */const k=g(e,{parseNumbers:a,quoteFieldNamesWith:p,concatOperator:f,fieldData:o,format:n}),_=h(e,t),D=$e(_),[A,I]=p;if((D==="in"||D==="not in"||D==="between"||D==="not between")&&!k)return x("");if(D==="is null"||D==="is not null")return x(`${A}${e.field}${I} ${_}`);if(e.valueSource==="parameter"){const F=B=>{const G=ls(B,i);return b||(N[c?G:ad(B,i)]=null),G};if(D==="between"||D==="not between"){const[B,G]=me(e.value,{retainEmptyStrings:!0}).slice(0,2);return x(`${A}${e.field}${I} ${_} ${F(B)} and ${F(G)}`.trim())}if(D==="in"||D==="not in"){const B=me(e.value);return x(`${A}${e.field}${I} ${_} (${B.map(G=>F(G)).join(", ")})`)}return x(`${A}${e.field}${I} ${_} ${as(F(e.value),$e(e.operator),{concatOperator:f})}`.trim())}else{if(e.valueSource==="field")return x(`${A}${e.field}${I} ${_} ${k}`.trim());if(D==="in"||D==="not in"){const F=me(e.value);if(b){for(const G of F)v.push(be(G,a)?_e(G,{parseNumbers:a}):G);return x(`${A}${e.field}${I} ${_} (${F.map((G,z)=>d?`${i}${y.length+1+F.length-(F.length-z)}`:"?").join(", ")})`)}const B=[];for(const G of F){const z=s(e.field);B.push(`${i}${z}`),N[`${c?i:""}${z}`]=be(G,a)?_e(G,{parseNumbers:a}):G}return x(`${A}${e.field}${I} ${_} (${B.join(", ")})`)}else if(D==="between"||D==="not between"){const[F,B]=me(e.value,{retainEmptyStrings:!0}).slice(0,2).map(H=>be(H,a)?_e(H,{parseNumbers:a}):H);if(b)return v.push(F,B),x(`${A}${e.field}${I} ${_} ${d?`${i}${y.length+1}`:"?"} and ${d?`${i}${y.length+2}`:"?"}`);const G=s(e.field),z=s(e.field);return N[`${c?i:""}${G}`]=F,N[`${c?i:""}${z}`]=B,x(`${A}${e.field}${I} ${_} ${i}${G} and ${i}${z}`)}}let T=e.value;typeof e.value=="string"&&(be(e.value,a)?T=_e(e.value,{parseNumbers:a}):T=/^'.*'$/g.test(k)?k.replaceAll(/(^'|'$)/g,""):k);let L="";return b?v.push(T):(L=s(e.field),N[`${c?i:""}${L}`]=T),x(`${A}${e.field}${I} ${_} ${b?d?`${i}${y.length+1}`:"?":`${i}${L}`}`.trim())},gd=(e,t,r)=>be(e,!!r||typeof e=="bigint")?Number(_e(e,{parseNumbers:!!r})):t,Rk=(e,t={})=>{const{field:r,operator:o,value:n,valueSource:s}=e,{parseNumbers:a,preserveValueOrder:i}=t;if(s==="field"||qt(e))return;const c=$e(o);switch(c){case"=":return{[r]:gd(n,n,a)};case"!=":case"<":case"<=":case">":case">=":{const d=Qm[c];return{[r]:{[d]:gd(n,n,a)}}}case"contains":return{[r]:{contains:n}};case"beginswith":return{[r]:{startsWith:n}};case"endswith":return{[r]:{endsWith:n}};case"doesnotcontain":return{NOT:{[r]:{contains:n}}};case"doesnotbeginwith":return{NOT:{[r]:{startsWith:n}}};case"doesnotendwith":return{NOT:{[r]:{endsWith:n}}};case"null":return{[r]:null};case"notnull":return{[r]:{not:null}};case"in":case"notin":{const d=me(n);return{[r]:{[Qm[c]]:d.map(p=>gd(p,p,a))}}}case"between":case"notbetween":{const d=me(n);if(d.length>=2&&ft(d[0])&&ft(d[1])){const[p,u]=d,f=a!==!1,h=be(p,f)?_e(p,{parseNumbers:a}):NaN,g=be(u,f)?_e(u,{parseNumbers:a}):NaN;let y=Number.isNaN(h)?p:h,b=Number.isNaN(g)?u:g;if(!i&&y===h&&b===g&&g<h){const v=g;b=h,y=v}return c==="between"?{[r]:{gte:y,lte:b}}:{OR:[{[r]:{lt:y}},{[r]:{gt:b}}]}}else return""}}return""},Xk=(e,{parseNumbers:t,preserveValueOrder:r,context:o={}}={})=>{const{sequelizeOperators:n,sequelizeCol:s,sequelizeFn:a}=o;if(qt(e))return;const{field:i,operator:c,value:d,valueSource:p}=e,u=p==="field",f=$e(c);if(!(!n||u&&(!s||!a&&["contains","doesnotcontain","beginswith","doesnotbeginwith","endswith","doesnotendwith"].includes(f))))switch(f){case"=":case"!=":case"<":case"<=":case">":case">=":{const h={"=":n.eq,"!=":n.ne,"<":n.lt,"<=":n.lte,">":n.gt,">=":n.gte}[f];return{[i]:u&&f==="="?{[n.col]:d}:{[h]:u?s(d):be(d,t)?_e(d,{parseNumbers:"strict"}):d}}}case"contains":return{[i]:{[u?n.like:n.substring]:u?a("CONCAT","%",s(d),"%"):`${d}`}};case"beginswith":return{[i]:{[u?n.like:n.startsWith]:u?a("CONCAT",s(d),"%"):`${d}`}};case"endswith":return{[i]:{[u?n.like:n.endsWith]:u?a("CONCAT","%",s(d)):`${d}`}};case"doesnotcontain":return{[i]:{[n.notLike]:u?a("CONCAT","%",s(d),"%"):`%${d}%`}};case"doesnotbeginwith":return{[i]:{[n.notLike]:u?a("CONCAT",s(d),"%"):`${d}%`}};case"doesnotendwith":return{[i]:{[n.notLike]:u?a("CONCAT","%",s(d)):`%${d}`}};case"null":return{[i]:{[n.is]:null}};case"notnull":return{[i]:{[n.not]:null}};case"in":case"notin":{const h=me(d);return{[i]:{[f==="in"?n.in:n.notIn]:h.map(g=>u?s(g):be(g,t)?_e(g,{parseNumbers:"strict"}):g)}}}case"between":case"notbetween":{const h=me(d,{retainEmptyStrings:!0});if(h.length<2||!ft(h[0])||!ft(h[1]))return;const[g,y]=h,b=be(g,t)?_e(g,{parseNumbers:"strict"}):NaN,v=be(y,t)?_e(y,{parseNumbers:"strict"}):NaN,N=Number.isNaN(b)?g:b,x=Number.isNaN(v)?y:v,w=[N,x];return!r&&N===b&&x===v&&v<b&&(w[0]=v,w[1]=b),{[i]:{[f==="between"?n.between:n.notBetween]:u?w.map(C=>s(C)):w.every(C=>be(C,t))?w.map(C=>_e(C,{parseNumbers:"strict"})):w}}}}},Jk=(e,t)=>typeof e!="string"||!t?`${e}`:e.replaceAll('"','\\"'),wg=e=>/^[?<]/.test(e)||e.includes(":")?e:`?${e}`,Zk=(e,t={})=>{const{escapeQuotes:r,parseNumbers:o}=t,{field:n,operator:s,value:a,valueSource:i}=e,c=i==="field",d=s.toLowerCase(),p=wg(n),u=f=>{if(f==null)return'""';if(typeof f=="boolean")return`"${f}"^^xsd:boolean`;if(typeof f=="bigint")return String(f);if(c)return wg(Be(f));if(typeof f=="number"||be(f,o))return Be(f);/* v8 ignore start -- @preserve */const h=typeof f=="string"?f:JSON.stringify(f)??"";/* v8 ignore stop -- @preserve */return h.startsWith("?")||h.startsWith("<")||h.includes(":")?h:`"${Jk(h,r)}"`};switch(d){case"=":case"!=":case"<":case">":case"<=":case">=":return`${p} ${d} ${u(a)}`;case"<>":return`${p} != ${u(a)}`;case"contains":return`CONTAINS(${p}, ${u(a)})`;case"doesnotcontain":return`!CONTAINS(${p}, ${u(a)})`;case"beginswith":return`STRSTARTS(${p}, ${u(a)})`;case"doesnotbeginwith":return`!STRSTARTS(${p}, ${u(a)})`;case"endswith":return`STRENDS(${p}, ${u(a)})`;case"doesnotendwith":return`!STRENDS(${p}, ${u(a)})`;case"null":return`!BOUND(${p})`;case"notnull":return`BOUND(${p})`;case"in":{const f=me(a).map(u);return f.length?`${p} IN (${f.join(", ")})`:""}case"notin":{const f=me(a).map(u);return f.length?`${p} NOT IN (${f.join(", ")})`:""}case"between":{const f=me(a);return f.length<2?"":`${p} >= ${u(f[0])} && ${p} <= ${u(f[1])}`}case"notbetween":{const f=me(a);return f.length<2?"":`(${p} < ${u(f[0])} || ${p} > ${u(f[1])})`}default:return`${p} ${s} ${u(a)}`}},eA=(e,t)=>{const{parseNumbers:r,preserveValueOrder:o,context:n={}}=t??{},s=n.tanStackDbOperators,a=n._tanstackDbRefs,i=n._tanstackDbPrimaryRef;if(!s||!a||!i)return;const{and:c,eq:d,gt:p,gte:u,inArray:f,isNull:h,like:g,lt:y,lte:b,not:v}=s,N=T=>{const L=T.indexOf(".");if(L>0){const F=T.slice(0,L),B=T.slice(L+1);if(a[F])return a[F][B]}return a[i][T]},{field:x,operator:w,value:C,valueSource:E}=e,k=N(x),_=$e(w),D=E==="field",A=T=>D?N(T):T,I=T=>D||!r?A(T):be(T,!0)?_e(T,{parseNumbers:!0}):T;switch(_){case"=":return d(k,I(C));case"!=":return v(d(k,I(C)));case">":return p(k,I(C));case"<":return y(k,I(C));case">=":return u(k,I(C));case"<=":return b(k,I(C));case"beginswith":case"doesnotbeginwith":{const T=g(k,D?void 0:`${C}%`);return _==="doesnotbeginwith"?v(T):T}case"contains":case"doesnotcontain":{const T=g(k,D?void 0:`%${C}%`);return _==="doesnotcontain"?v(T):T}case"endswith":case"doesnotendwith":{const T=g(k,D?void 0:`%${C}`);return _==="doesnotendwith"?v(T):T}case"null":return h(k);case"notnull":return v(h(k));case"in":case"notin":{const T=f(k,me(C).map(L=>I(L)));return _==="notin"?v(T):T}case"between":case"notbetween":{const T=me(C);if(T.length>=2&&ft(T[0])&&ft(T[1])){let[L,F]=T;const B=r!==!1;if(!D&&be(L,B)&&be(F,B)){const z=_e(L,{parseNumbers:B}),H=_e(F,{parseNumbers:B});if(!o&&H<z){const V=H;F=z,L=V}else L=z,F=H}else D&&(L=A(L),F=A(F));const G=c(u(k,L),b(k,F));return _==="notbetween"?v(G):G}return}default:return}},Sg={ansi:{},sqlite:{paramsKeepPrefix:!0},oracle:{},mssql:{concatOperator:"+",quoteFieldNamesWith:["[","]"],fieldIdentifierSeparator:".",paramPrefix:"@"},mysql:{concatOperator:"CONCAT"},postgresql:{quoteFieldNamesWith:'"',numberedParams:!0,paramPrefix:"$"}},Ng={cel:mk,drizzle:Fk,elasticsearch:Bk,json_without_ids:ps,json:ps,jsonata:Hk,jsonlogic:md,ldap:qk,mongodb_query:dl,mongodb:gk,natural_language:Kk,parameterized_named:xg,parameterized:xg,prisma:Rk,sequelize:Xk,spel:bk,sql:ps,tanstack_db:eA,cypher:mg,gql:mg,sparql:Zk,gremlin:Wk,diagnostics:ps};/* v8 ignore next -- @preserve */const pt=e=>e.operator,tA={cel:pt,drizzle:pt,elasticsearch:pt,json_without_ids:pt,json:pt,jsonata:pt,jsonlogic:pt,ldap:pt,mongodb_query:pt,mongodb:pt,natural_language:vg,parameterized_named:fs,parameterized:fs,prisma:pt,sequelize:pt,spel:pt,sql:fs,tanstack_db:pt,cypher:pt,gql:pt,sparql:pt,gremlin:pt,diagnostics:pt},Cg={cel:"1 == 1",ldap:"",mongodb:'"$and":[{"$expr":true}]',natural_language:"1 is 1",sparql:"1 = 1",gremlin:"",spel:"1 == 1",sql:"(1 = 1)"},rA={format:"json",fields:[],quoteFieldNamesWith:["",""],fieldIdentifierSeparator:"",getOperators:()=>[],paramPrefix:":",paramsKeepPrefix:!1,numberedParams:!1,preserveValueOrder:!1,placeholderFieldName:"~",placeholderOperatorName:"~",quoteValuesWith:"'",concatOperator:"||",preset:"ansi",wordOrder:"SVO",translations:{},operatorMap:{}},Eg=new Set(["cel","drizzle","elasticsearch","jsonata","jsonlogic","ldap","mongodb_query","mongodb","prisma","sequelize","spel","tanstack_db"]),oA=new Set(["sql","parameterized","parameterized_named","drizzle","prisma","sequelize"]);function nA(e,t={}){const r=typeof t=="string"?{format:$e(t)}:t,o={...rA,...!r.format||oA.has(r.format)?Sg[r.preset??"ansi"]??null:null,...r,...!r.format&&(Object.keys(Sg).includes(r.preset??"")?{format:"sql"}:null)},n=$e(o.format),{fallbackExpression:s,getOperators:a,operatorProcessor:i,parseNumbers:c,quoteFieldNamesWith:d,ruleGroupProcessor:p,ruleProcessor:u,validator:f,valueProcessor:h,context:g}=o,y=T=>typeof sd({parseNumbers:c,inputType:T})=="string"?!0:typeof c=="boolean"?c:void 0,b=typeof i=="function"?i:tA[n]??pt,v=typeof h=="function"?pk(h)?T=>h(T.field,T.operator,T.value,T.valueSource):h:n==="natural_language"?bg:Eg.has(n)?u??Ng[n]:is,N=(typeof u=="function"?u:null)??(Eg.has(n)&&typeof u!="function"&&h?v:null)??Ng[n]??ps,x=Rm(d),w=Gr(o.fields),C=(T,L)=>Gr(a(T,L)??[]),E=s??Cg[n]??Cg.sql;let k={};if(typeof f=="function"){const T=f(e);if(typeof T=="boolean"){if(!T&&n!=="diagnostics")return n==="parameterized"?{sql:E,params:[]}:n==="parameterized_named"?{sql:E,params:{}}:n==="mongodb"?`{${E}}`:n==="mongodb_query"?id:n==="prisma"?pd:n==="jsonlogic"?!1:n==="elasticsearch"?{}:n==="drizzle"||n==="sequelize"||n==="tanstack_db"?void 0:E}else k=T}const _={},D=nd(w);for(const T of D)typeof T.validator=="function"&&(_[T.value??T.name]=T.validator);const I={...o,fallbackExpression:E,fields:w,format:n,getOperators:C,getParseNumberBoolean:y,quoteFieldNamesWith:x,operatorProcessor:b,ruleProcessor:N,valueProcessor:v,validateRule:T=>{let L,F;if(T.id&&(L=k[T.id]),D.length>0){const B=D.filter(G=>G.name===T.field);if(B.length>0){const G=B[0];typeof G.validator=="function"&&(F=G.validator)}}if(T.valueSource==="parameter"&&typeof o.getParameters=="function"){const B=We(w,T.field);new Set(nd(Gr(o.getParameters(T.field,T.operator,{fieldData:B}))).map(G=>ad(G.value,o.paramPrefix))).has(ad(T.value,o.paramPrefix))||(L=!1)}return[L,F]},validationMap:k,context:g};if(typeof p=="function")return p(e,I);switch(n){case"json":case"json_without_ids":{const T=c?Km(e,I):e;return n==="json_without_ids"?JSON.stringify(T,(L,F)=>L==="id"||L==="path"?void 0:eg(L,F)):JSON.stringify(T,eg,2)}case"sql":return cg(e,I);case"parameterized":case"parameterized_named":return ig(e,I);case"mongodb":return Sk(e,I);case"mongodb_query":return cd(e,I);case"cel":return tg(e,I);case"spel":return rg(e,I);case"jsonata":return ag(e,I);case"jsonlogic":return ud(e,I);case"elasticsearch":return sg(e,I);case"natural_language":return lg(e,I);case"ldap":return wk(e,I);case"prisma":return Nk(e,I);case"drizzle":return ng(e,I);case"tanstack_db":return _k(e,I);case"sequelize":return Ck(e,I);case"cypher":case"gql":return vk(e,I);case"sparql":return Ek(e,I);case"gremlin":return xk(e,I);case"diagnostics":return Ik(e,I);default:return""}}const ht=(e,t)=>{let r=t,o=0;for(;o<e.length&&r&&ge(r);){const n=r.rules[e[o]];r=typeof n=="string"?null:n,o++}return o<e.length?null:r},_g=(e,t)=>{if(t.id===e)return t;for(const r of t.rules)if(typeof r!="string"){if(r.id===e)return r;if(ge(r)){const o=_g(e,r);if(o)return o}}return null},Sn=(e,t)=>{if(t.id===e)return[];const r=t.rules.findIndex(o=>typeof o!="string"&&o.id===e);if(r>=0)return[r];for(const[o,n]of Object.entries(t.rules))if(ge(n)){const s=Sn(e,n);if(Array.isArray(s))return[Number.parseInt(o),...s]}return null},it=e=>e.slice(0,-1),Qo=(e,t)=>e.length===t.length&&e.every((r,o)=>r===t[o]),kg=(e,t)=>{const r=[],o=it(e),n=it(t);let s=0;for(;s<o.length&&s<n.length&&o[s]===n[s];)r.push(n[s]),s++;return r},Nn=(e,t)=>{let r=!!t.disabled,o=t,n=0;for(;n<e.length&&!r&&ge(o);){const s=o.rules[e[n]];wr(s)&&(ge(s)||"field"in s&&s.field)&&(r=!!s.disabled,o=s),n++}return r},sA=e=>Qo([],e.path)?"Query builder":`Rule group at path ${e.path.join("-")}`,hs=globalThis.crypto;let lr=()=>"00-0-4-2-000".replaceAll(/[^-]/g,e=>((Math.random()+Math.trunc(e))*65536>>Number.parseInt(e)).toString(16).padStart(4,"0"));if(hs){if(typeof hs.randomUUID=="function")lr=()=>hs.randomUUID();else if(typeof hs.getRandomValues=="function"){const e="89ab",t=new Uint32Array(32);lr=()=>{hs.getRandomValues(t);let r=(t[0]%16).toString(16);for(let o=1;o<32;o++)o===12?r=`${r}4`:o===16?r=`${r}${e[t[17]%4]}`:r=`${r}${(t[o]%16).toString(16)}`,(o===7||o===11||o===15||o===19)&&(r=`${r}-`);return r}}}const aA={name:"name",value:"name",matchModes:null,label:"label"},lA=(e,t)=>{const r=e?Vr(e):aA;let o=r.matchModes??!1;return!o&&t&&(o=t(r.value,{fieldData:r})),o===!0?Mm:o===!1?[]:sl(o)?Gr(o):(o==null?void 0:o.map(n=>Mm.find(s=>s.value===$e(n))??{name:n,value:n,label:n}))??[]},Ag=(e,t,r)=>{const o=Ct(e);if(t.operator==="between"||t.operator==="notBetween"){const n=[o,o];return r?n:ss(n.map(s=>s??""),",")}return o},iA=(e,t)=>{const{fieldData:r,fields:o,getValueEditorType:n,getValues:s,getDefaultValue:a,getParameters:i,listsAsArrays:c}=t;if((r==null?void 0:r.defaultValue)!==void 0&&r.defaultValue!==null)return r.defaultValue;if(a)return a(e,{fieldData:r});let d="";const p=s(e.field,e.operator,{fieldData:r});if(e.valueSource==="field"){const u=qm(r,o,e.operator);d=u.length>0?Ag(u,e,c):""}else if(e.valueSource==="parameter"){const u=i?i(e.field,e.operator,{fieldData:r}):null;d=u&&u.length>0?Ct(u):""}else if(p.length>0){const u=n(e.field,e.operator,{fieldData:r});u==="multiselect"?d=c?[]:"":(u==="select"||u==="radio")&&(d=Ag(p,e,c))}else n(e.field,e.operator,{fieldData:r})==="checkbox"&&(d=!1);return d},Dg=e=>{const t=typeof e=="boolean"?e:typeof e=="object"&&e!==null?e.valid:null;return typeof t=="boolean"?t?ve.valid:ve.invalid:""},$g=[{name:"value",value:"value",label:"value"}],cA={name:"name",value:"name",valueSources:null,label:"label"},Tg=(e,t,r)=>{const o=e?Vr(e):cA;let n=o.valueSources??!1;return typeof n=="function"&&(n=n(t)),!n&&r&&(n=r(o.value,t,{fieldData:o})),n?sl(n)?Gr(n):n.map(s=>$g.find(a=>a.value===$e(s))??{name:s,value:s,label:s}):$g},Ke=(e,t,r)=>{if(nl(e))return;const o=Bm(t).map(([n,[s,a]])=>{var i;return[n,s??a??((i=r==null?void 0:r[e])==null?void 0:i[n])]}).filter(n=>!nl(n[0])&&!!n[1]);if(o.length>0||r){const n=(r==null?void 0:r[e])??{},s=Object.assign({},n,Object.fromEntries(o));return{[e]:s}}},Ne=(e,t)=>{var o;let r="";for(let n=0;n<t.length;n++){const s=(o=t[n])==null?void 0:o[e];if(!s)continue;const a=typeof s=="string"?s:ze(s);a&&(r=r?`${r} ${a}`:a)}return r},dA=(...e)=>({queryBuilder:Ne("queryBuilder",e),ruleGroup:Ne("ruleGroup",e),header:Ne("header",e),body:Ne("body",e),combinators:Ne("combinators",e),addRule:Ne("addRule",e),addGroup:Ne("addGroup",e),cloneRule:Ne("cloneRule",e),cloneGroup:Ne("cloneGroup",e),removeGroup:Ne("removeGroup",e),rule:Ne("rule",e),fields:Ne("fields",e),operators:Ne("operators",e),value:Ne("value",e),removeRule:Ne("removeRule",e),notToggle:Ne("notToggle",e),shiftActions:Ne("shiftActions",e),dragHandle:Ne("dragHandle",e),lockRule:Ne("lockRule",e),lockGroup:Ne("lockGroup",e),muteRule:Ne("muteRule",e),muteGroup:Ne("muteGroup",e),muted:Ne("muted",e),valueSource:Ne("valueSource",e),actionElement:Ne("actionElement",e),valueSelector:Ne("valueSelector",e),betweenRules:Ne("betweenRules",e),valid:Ne("valid",e),invalid:Ne("invalid",e),dndDragging:Ne("dndDragging",e),dndOver:Ne("dndOver",e),dndCopy:Ne("dndCopy",e),dndGroup:Ne("dndGroup",e),dndDropNotAllowed:Ne("dndDropNotAllowed",e),dndPreviewPosition:Ne("dndPreviewPosition",e),dndHidden:Ne("dndHidden",e),disabled:Ne("disabled",e),valueListItem:Ne("valueListItem",e),matchMode:Ne("matchMode",e),matchThreshold:Ne("matchThreshold",e),branches:Ne("branches",e),hasSubQuery:Ne("hasSubQuery",e),loading:Ne("loading",e),valueDateTimeRelative:Ne("valueDateTimeRelative",e)}),uA=(e,t)=>e===!1?!1:e?!0:t!==!1,fA=(e,t)=>e?!0:e===!1?!1:!!t,Pg=(e,t,r,o)=>o?t??r:e?uA(t,r):fA(t,r),pA=(e={},t={},r)=>Bm(lk).reduce((o,[n,s])=>(o[n]=Pg(s,e[n],t[n],!1),o),{}),Ig=(e,{idGenerator:t=lr}={})=>{const r=!e.id,o=qt(e);return!r&&!o?e:{...e,...r&&{id:t()},...o&&{value:ml(e.value,{idGenerator:t})}}},ml=(e,{idGenerator:t=lr}={})=>{const r=!e.id;let o=!1;const n=[];for(let s=0;s<e.rules.length;s++){const a=e.rules[s];if(typeof a=="string")n.push(a);else{const i=ge(a)?ml(a,{idGenerator:t}):Ig(a,{idGenerator:t});n.push(i),i!==a&&(o=!0)}}return!r&&!o?e:{...e,...r&&{id:t()},rules:n}},Og=(e,{idGenerator:t=lr}={})=>ge(e)?ml(e,{idGenerator:t}):Ig(e,{idGenerator:t}),hA=(e,{idGenerator:t=lr}={})=>structuredClone({...e,id:t()}),bd=(e,{idGenerator:t=lr}={})=>{if(!wr(e))return e;if(!ge(e))return structuredClone({...e,id:t()});const r={...e,id:t()};return Array.isArray(r.rules)&&(r.rules=e.rules.map(o=>typeof o=="string"?o:ge(o)?bd(o,{idGenerator:t}):hA(o,{idGenerator:t}))),r},Mg=(e,t,r,o={})=>os(e,n=>mA(n,t,r,o)),mA=(e,t,r,o={})=>{const{combinators:n=ns,combinatorPreceding:s,idGenerator:a=lr}=o,i=Array.isArray(r)?ht(r,e):_g(r,e);if(!i||!ge(i))return e;if(yn(i)&&i.rules.length>0){const c=i.rules.at(-2);i.rules.push(s??(typeof c=="string"?c:Ct(n)))}return i.rules.push(Og(t,{idGenerator:a})),e},Lg={field:0,operator:1,valueSource:2,value:4},Fg=e=>e.sort((t,r)=>(Lg[t[0]]??3)-(Lg[r[0]]??3)),gA=(e,t,r,o)=>{if(typeof e=="string")return{entries:[[e,t]],pathOrID:r,options:o??{}};if(Array.isArray(e)){const n=t;return{entries:Fg(e.map((s,a)=>[s,n[a]])),pathOrID:r,options:o??{}}}return{entries:Fg(Object.entries(e)),pathOrID:t,options:r??{}}},bA=(e,t,r,o,n)=>{const{entries:s,pathOrID:a,options:i}=gA(t,r,o,n);for(const[c,d]of s)vA(e,c,d,a,i);return e},yA=((e,t,r,o,n)=>os(e,s=>{bA(s,t,r,o,n)})),vA=(e,t,r,o,n={})=>{var N;const{resetOnFieldChange:s=!0,resetOnOperatorChange:a=!1,getRuleDefaultOperator:i=()=>"=",getValueSources:c=()=>["value"],getRuleDefaultValue:d=()=>"",getMatchModes:p=()=>[]}=n;let u=s;const f=Array.isArray(o)?o:Sn(o,e);if(!f)return e;if(t==="combinator"&&!Vt(e)){const x=ht(it(f),e).rules;return f.at(-1)%2===1&&(x[f.at(-1)]=r),e}const h=ht(f,e);if(!h)return e;const g=ge(h);if(h[t]===r||(t!=="valueSource"&&(h[t]=r),g))return e;let y=!1,b=!1;if(t==="field"){const x=p(h.field),w=p(r);if(w.length===0)delete h.match;else{const C=(N=h.match)!=null&&N.mode&&We(w,h.match.mode)?null:Ct(w);C&&(h.match={mode:C,threshold:1})}(x.length>0||w.length>0)&&(u=!0)}u&&t==="field"&&(h.operator=i(r),y=!0,b=!0),a&&t==="operator"&&(y=!0,b=!0);const v=Ct(Tg({name:h.field,value:h.field,label:""},h.operator,c));return(y&&h.valueSource&&v!==h.valueSource||t==="valueSource"&&r!==h.valueSource)&&(b=!!h.valueSource||!h.valueSource&&r!==v,h.valueSource=y?v:r),b&&(h.value=d(h)),e},xA=(e,t)=>os(e,r=>wA(r,t)),wA=(e,t)=>{const r=Array.isArray(t)?t:Sn(t,e);if(!r||r.length===0||!Vt(e)&&!ht(r,e))return e;const o=r.at(-1),n=ht(it(r),e);if(n&&ge(n))if(!Vt(n)&&n.rules.length>1){const s=o===0?0:o-1;n.rules.splice(s,2)}else n.rules.splice(o,1);return e},Vg=(e,t,r)=>{if(Array.isArray(r))return r;const o=yn(e);if(r==="up"){if(Qo(t,[0]))return t;if(t.at(-1)===0){const n=it(t);return[...it(n),Math.max(0,n.at(-1)-(o?1:0))]}else{const n=[...it(t),Math.max(0,t.at(-1)-(o?2:1))],s=ht(n,e);return ge(s)?[...n,s.rules.length]:[...it(t),Math.max(0,t.at(-1)-(o?3:1))]}}else if(r==="down"){if(Qo([e.rules.length-1],t))return t;if(t.at(-1)===ht(it(t),e).rules.length-1){const n=it(t);return[...it(n),n.at(-1)+1]}else{const n=[...it(t),t.at(-1)+(o?2:1)];return ge(ht(n,e))?[...n,0]:[...it(t),t.at(-1)+(o?3:2)]}}return t},SA=(e,t,r,o={})=>os(e,n=>NA(n,t,r,o)),NA=(e,t,r,o={})=>{const{clone:n=!1,combinators:s=ns,idGenerator:a=lr}=o,i=Array.isArray(t)?t:Sn(t,e);if(!i)return e;const c=Vg(e,i,r);if(i.length===0||Qo(i,c)||!ht(it(c),e))return e;const d=ht(i,e);if(!d)return e;const p=n?bd(Lr(d)?ed(d):d,{idGenerator:a}):d,u=yn(e),f=ht(it(i),e),h=i.at(-1),g=u&&h>0?f.rules[h-1]:null,y=u&&h<f.rules.length-1?f.rules[h+1]:null;if(!n){const C=u?Math.max(0,h-1):h,E=u?2:1;f.rules.splice(C,E)}const b=[...c],v=kg(i,c);!n&&i.length===v.length+1&&c[v.length]>i[v.length]&&(b[v.length]-=u?2:1);const N=ht(it(b),e),x=b.at(-1),w=(...C)=>N.rules.splice(x,0,...C);return N.rules.length===0||!u?w(p):x===0?h===0&&y?w(p,y):w(p,N.rules[1]??g??Ct(s)):w(g||(N.rules[x-2]??y??Ct(s)),p),e},CA=(e,t,r,o={})=>os(e,n=>EA(n,t,r,o)),EA=(e,t,r,o={})=>{const{clone:n=!1,combinators:s=ns,idGenerator:a=lr}=o,i=Array.isArray(t)?t:Sn(t,e),c=Array.isArray(r)?r:Sn(r,e);if(!i||!c)return e;const d=Vg(e,i,c);if(i.length===0||Qo(i,d)||!ht(it(d),e))return e;const p=ht(i,e),u=ht(c,e);if(!p||!u)return e;const f=n?bd(Lr(p)?ed(p):p,{idGenerator:a}):p,h=yn(e),g=ht(it(i),e),y=i.at(-1);if(!n){const w=h?Math.max(0,y-1):y,C=h?2:1;g.rules.splice(w,C)}const b=[...d],v=kg(i,d);!n&&i.length===v.length+1&&d[v.length]>i[v.length]&&(b[v.length]-=h?2:1);const N=ht(it(b),e),x=b.at(-1);return N.rules.splice(x,1,Og(h?{rules:[u,Ct(s),f]}:{combinator:Ct(s),rules:[u,f]},{idGenerator:a})),e};function At(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var _A=typeof Symbol=="function"&&Symbol.observable||"@@observable",Gg=_A,yd=()=>Math.random().toString(36).substring(7).split("").join("."),kA={INIT:`@@redux/INIT${yd()}`,REPLACE:`@@redux/REPLACE${yd()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${yd()}`},Ko=kA;function ms(e){if(typeof e!="object"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function AA(e){if(e===void 0)return"undefined";if(e===null)return"null";const t=typeof e;switch(t){case"boolean":case"string":case"number":case"symbol":case"function":return t}if(Array.isArray(e))return"array";if(TA(e))return"date";if($A(e))return"error";const r=DA(e);switch(r){case"Symbol":case"Promise":case"WeakMap":case"WeakSet":case"Map":case"Set":return r}return Object.prototype.toString.call(e).slice(8,-1).toLowerCase().replace(/\s/g,"")}function DA(e){return typeof e.constructor=="function"?e.constructor.name:null}function $A(e){return e instanceof Error||typeof e.message=="string"&&e.constructor&&typeof e.constructor.stackTraceLimit=="number"}function TA(e){return e instanceof Date?!0:typeof e.toDateString=="function"&&typeof e.getDate=="function"&&typeof e.setDate=="function"}function xo(e){let t=typeof e;return process.env.NODE_ENV!=="production"&&(t=AA(e)),t}function zg(e,t,r){if(typeof e!="function")throw new Error(process.env.NODE_ENV==="production"?At(2):`Expected the root reducer to be a function. Instead, received: '${xo(e)}'`);if(typeof t=="function"&&typeof r=="function"||typeof r=="function"&&typeof arguments[3]=="function")throw new Error(process.env.NODE_ENV==="production"?At(0):"It looks like you are passing several store enhancers to createStore(). This is not supported. Instead, compose them together to a single function. See https://redux.js.org/tutorials/fundamentals/part-4-store#creating-a-store-with-enhancers for an example.");if(typeof t=="function"&&typeof r>"u"&&(r=t,t=void 0),typeof r<"u"){if(typeof r!="function")throw new Error(process.env.NODE_ENV==="production"?At(1):`Expected the enhancer to be a function. Instead, received: '${xo(r)}'`);return r(zg)(e,t)}let o=e,n=t,s=new Map,a=s,i=0,c=!1;function d(){a===s&&(a=new Map,s.forEach((b,v)=>{a.set(v,b)}))}function p(){if(c)throw new Error(process.env.NODE_ENV==="production"?At(3):"You may not call store.getState() while the reducer is executing. The reducer has already received the state as an argument. Pass it down from the top reducer instead of reading it from the store.");return n}function u(b){if(typeof b!="function")throw new Error(process.env.NODE_ENV==="production"?At(4):`Expected the listener to be a function. Instead, received: '${xo(b)}'`);if(c)throw new Error(process.env.NODE_ENV==="production"?At(5):"You may not call store.subscribe() while the reducer is executing. If you would like to be notified after the store has been updated, subscribe from a component and invoke store.getState() in the callback to access the latest state. See https://redux.js.org/api/store#subscribelistener for more details.");let v=!0;d();const N=i++;return a.set(N,b),function(){if(v){if(c)throw new Error(process.env.NODE_ENV==="production"?At(6):"You may not unsubscribe from a store listener while the reducer is executing. See https://redux.js.org/api/store#subscribelistener for more details.");v=!1,d(),a.delete(N),s=null}}}function f(b){if(!ms(b))throw new Error(process.env.NODE_ENV==="production"?At(7):`Actions must be plain objects. Instead, the actual type was: '${xo(b)}'. You may need to add middleware to your store setup to handle dispatching other values, such as 'redux-thunk' to handle dispatching functions. See https://redux.js.org/tutorials/fundamentals/part-4-store#middleware and https://redux.js.org/tutorials/fundamentals/part-6-async-logic#using-the-redux-thunk-middleware for examples.`);if(typeof b.type>"u")throw new Error(process.env.NODE_ENV==="production"?At(8):'Actions may not have an undefined "type" property. You may have misspelled an action type string constant.');if(typeof b.type!="string")throw new Error(process.env.NODE_ENV==="production"?At(17):`Action "type" property must be a string. Instead, the actual type was: '${xo(b.type)}'. Value was: '${b.type}' (stringified)`);if(c)throw new Error(process.env.NODE_ENV==="production"?At(9):"Reducers may not dispatch actions.");try{c=!0,n=o(n,b)}finally{c=!1}return(s=a).forEach(N=>{N()}),b}function h(b){if(typeof b!="function")throw new Error(process.env.NODE_ENV==="production"?At(10):`Expected the nextReducer to be a function. Instead, received: '${xo(b)}`);o=b,f({type:Ko.REPLACE})}function g(){const b=u;return{subscribe(v){if(typeof v!="object"||v===null)throw new Error(process.env.NODE_ENV==="production"?At(11):`Expected the observer to be an object. Instead, received: '${xo(v)}'`);function N(){const w=v;w.next&&w.next(p())}return N(),{unsubscribe:b(N)}},[Gg](){return this}}}return f({type:Ko.INIT}),{dispatch:f,subscribe:u,getState:p,replaceReducer:h,[Gg]:g}}function Bg(e){typeof console<"u"&&typeof console.error=="function"&&console.error(e);try{throw new Error(e)}catch{}}function PA(e,t,r,o){const n=Object.keys(t),s=r&&r.type===Ko.INIT?"preloadedState argument passed to createStore":"previous state received by the reducer";if(n.length===0)return"Store does not have a valid reducer. Make sure the argument passed to combineReducers is an object whose values are reducers.";if(!ms(e))return`The ${s} has unexpected type of "${xo(e)}". Expected argument to be an object with the following keys: "${n.join('", "')}"`;const a=Object.keys(e).filter(i=>!t.hasOwnProperty(i)&&!o[i]);if(a.forEach(i=>{o[i]=!0}),!(r&&r.type===Ko.REPLACE)&&a.length>0)return`Unexpected ${a.length>1?"keys":"key"} "${a.join('", "')}" found in ${s}. Expected to find one of the known reducer keys instead: "${n.join('", "')}". Unexpected keys will be ignored.`}function IA(e){Object.keys(e).forEach(t=>{const r=e[t];if(typeof r(void 0,{type:Ko.INIT})>"u")throw new Error(process.env.NODE_ENV==="production"?At(12):`The slice reducer for key "${t}" returned undefined during initialization. If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined. If you don't want to set a value for this reducer, you can use null instead of undefined.`);if(typeof r(void 0,{type:Ko.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(process.env.NODE_ENV==="production"?At(13):`The slice reducer for key "${t}" returned undefined when probed with a random type. Don't try to handle '${Ko.INIT}' or other actions in "redux/*" namespace. They are considered private. Instead, you must return the current state for any unknown actions, unless it is undefined, in which case you must return the initial state, regardless of the action type. The initial state may not be undefined, but can be null.`)})}function Ug(e){const t=Object.keys(e),r={};for(let a=0;a<t.length;a++){const i=t[a];process.env.NODE_ENV!=="production"&&typeof e[i]>"u"&&Bg(`No reducer provided for key "${i}"`),typeof e[i]=="function"&&(r[i]=e[i])}const o=Object.keys(r);let n;process.env.NODE_ENV!=="production"&&(n={});let s;try{IA(r)}catch(a){s=a}return function(i={},c){if(s)throw s;if(process.env.NODE_ENV!=="production"){const u=PA(i,r,c,n);u&&Bg(u)}let d=!1;const p={};for(let u=0;u<o.length;u++){const f=o[u],h=r[f],g=i[f],y=h(g,c);if(typeof y>"u"){const b=c&&c.type;throw new Error(process.env.NODE_ENV==="production"?At(14):`When called with an action of type ${b?`"${String(b)}"`:"(unknown type)"}, the slice reducer for key "${f}" returned undefined. To ignore an action, you must explicitly return the previous state. If you want this reducer to hold no value, you can return null instead of undefined.`)}p[f]=y,d=d||y!==g}return d=d||o.length!==Object.keys(i).length,d?p:i}}function gl(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,r)=>(...o)=>t(r(...o)))}function OA(...e){return t=>(r,o)=>{const n=t(r,o);let s=()=>{throw new Error(process.env.NODE_ENV==="production"?At(15):"Dispatching while constructing your middleware is not allowed. Other middleware would not be applied to this dispatch.")};const a={getState:n.getState,dispatch:(c,...d)=>s(c,...d)},i=e.map(c=>c(a));return s=gl(...i)(n.dispatch),{...n,dispatch:s}}}function Wg(e){return ms(e)&&"type"in e&&typeof e.type=="string"}var Hg=Symbol.for("immer-nothing"),jg=Symbol.for("immer-draftable"),Gt=Symbol.for("immer-state"),MA=process.env.NODE_ENV!=="production"?[function(e){return`The plugin for '${e}' has not been loaded into Immer. To enable the plugin, import and call \`enable${e}()\` when initializing your application.`},function(e){return`produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '${e}'`},"This object has been frozen and should not be mutated",function(e){return"Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? "+e},"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.","Immer forbids circular references","The first or second argument to `produce` must be a function","The third argument to `produce` must be a function or undefined","First argument to `createDraft` must be a plain object, an array, or an immerable object","First argument to `finishDraft` must be a draft returned by `createDraft`",function(e){return`'current' expects a draft, got: ${e}`},"Object.defineProperty() cannot be used on an Immer draft","Object.setPrototypeOf() cannot be used on an Immer draft","Immer only supports deleting array indices","Immer only supports setting array indices and the 'length' property",function(e){return`'original' expects a draft, got: ${e}`}]:[];function Jt(e,...t){if(process.env.NODE_ENV!=="production"){const r=MA[e],o=Ro(r)?r.apply(null,t):r;throw new Error(`[Immer] ${o}`)}throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Zt=Object,Cn=Zt.getPrototypeOf,bl="constructor",yl="prototype",vd="configurable",vl="enumerable",xl="writable",gs="value",ao=e=>!!e&&!!e[Gt];function ir(e){var t;return e?Yg(e)||Nl(e)||!!e[jg]||!!((t=e[bl])!=null&&t[jg])||Cl(e)||El(e):!1}var LA=Zt[yl][bl].toString(),qg=new WeakMap;function Yg(e){if(!e||!Sd(e))return!1;const t=Cn(e);if(t===null||t===Zt[yl])return!0;const r=Zt.hasOwnProperty.call(t,bl)&&t[bl];if(r===Object)return!0;if(!Ro(r))return!1;let o=qg.get(r);return o===void 0&&(o=Function.toString.call(r),qg.set(r,o)),o===LA}function wl(e,t,r=!0){bs(e)===0?(r?Reflect.ownKeys(e):Zt.keys(e)).forEach(n=>{t(n,e[n],e)}):e.forEach((o,n)=>t(n,o,e))}function bs(e){const t=e[Gt];return t?t.type_:Nl(e)?1:Cl(e)?2:El(e)?3:0}var xd=(e,t,r=bs(e))=>r===2?e.has(t):Zt[yl].hasOwnProperty.call(e,t),wd=(e,t,r=bs(e))=>r===2?e.get(t):e[t],Sl=(e,t,r,o=bs(e))=>{o===2?e.set(t,r):o===3?e.add(r):e[t]=r};function FA(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var Nl=Array.isArray,Cl=e=>e instanceof Map,El=e=>e instanceof Set,Sd=e=>typeof e=="object",Ro=e=>typeof e=="function",Nd=e=>typeof e=="boolean";function VA(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var lo=e=>e.copy_||e.base_,Cd=e=>e.modified_?e.copy_:e.base_;function Ed(e,t){if(Cl(e))return new Map(e);if(El(e))return new Set(e);if(Nl(e))return Array[yl].slice.call(e);const r=Yg(e);if(t===!0||t==="class_only"&&!r){const o=Zt.getOwnPropertyDescriptors(e);delete o[Gt];let n=Reflect.ownKeys(o);for(let s=0;s<n.length;s++){const a=n[s],i=o[a];i[xl]===!1&&(i[xl]=!0,i[vd]=!0),(i.get||i.set)&&(o[a]={[vd]:!0,[xl]:!0,[vl]:i[vl],[gs]:e[a]})}return Zt.create(Cn(e),o)}else{const o=Cn(e);if(o!==null&&r)return{...e};const n=Zt.create(o);return Zt.assign(n,e)}}function _d(e,t=!1){return kl(e)||ao(e)||!ir(e)||(bs(e)>1&&Zt.defineProperties(e,{set:_l,add:_l,clear:_l,delete:_l}),Zt.freeze(e),t&&wl(e,(r,o)=>{_d(o,!0)},!1)),e}function GA(){Jt(2)}var _l={[gs]:GA};function kl(e){return e===null||!Sd(e)?!0:Zt.isFrozen(e)}var Al="MapSet",kd="Patches",Qg="ArrayMethods",Kg={};function Xo(e){const t=Kg[e];return t||Jt(0,e),t}var Rg=e=>!!Kg[e],ys,Xg=()=>ys,zA=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:Rg(Al)?Xo(Al):void 0,arrayMethodsPlugin_:Rg(Qg)?Xo(Qg):void 0});function Jg(e,t){t&&(e.patchPlugin_=Xo(kd),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Ad(e){Dd(e),e.drafts_.forEach(BA),e.drafts_=null}function Dd(e){e===ys&&(ys=e.parent_)}var Zg=e=>ys=zA(ys,e);function BA(e){const t=e[Gt];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function eb(e,t){t.unfinalizedDrafts_=t.drafts_.length;const r=t.drafts_[0];if(e!==void 0&&e!==r){r[Gt].modified_&&(Ad(t),Jt(4)),ir(e)&&(e=tb(t,e));const{patchPlugin_:n}=t;n&&n.generateReplacementPatches_(r[Gt].base_,e,t)}else e=tb(t,r);return UA(t,e,!0),Ad(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==Hg?e:void 0}function tb(e,t){if(kl(t))return t;const r=t[Gt];if(!r)return $l(t,e.handledSet_,e);if(!Dl(r,e))return t;if(!r.modified_)return r.base_;if(!r.finalized_){const{callbacks_:o}=r;if(o)for(;o.length>0;)o.pop()(e);nb(r,e)}return r.copy_}function UA(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&_d(t,r)}function rb(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var Dl=(e,t)=>e.scope_===t,WA=[];function ob(e,t,r,o){const n=lo(e),s=e.type_;if(o!==void 0&&wd(n,o,s)===t){Sl(n,o,r,s);return}if(!e.draftLocations_){const i=e.draftLocations_=new Map;wl(n,(c,d)=>{if(ao(d)){const p=i.get(d)||[];p.push(c),i.set(d,p)}})}const a=e.draftLocations_.get(t)??WA;for(const i of a)Sl(n,i,r,s)}function HA(e,t,r){e.callbacks_.push(function(n){var i;const s=t;if(!s||!Dl(s,n))return;(i=n.mapSetPlugin_)==null||i.fixSetContents(s);const a=Cd(s);ob(e,s.draft_??s,a,r),nb(s,n)})}function nb(e,t){var o;if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(((o=e.assigned_)==null?void 0:o.size)??0)>0)){const{patchPlugin_:n}=t;if(n){const s=n.getPath(e);s&&n.generatePatches_(e,s,t)}rb(e)}}function jA(e,t,r){const{scope_:o}=e;if(ao(r)){const n=r[Gt];Dl(n,o)&&n.callbacks_.push(function(){Pl(e);const a=Cd(n);ob(e,r,a,t)})}else ir(r)&&e.callbacks_.push(function(){const s=lo(e);e.type_===3?s.has(r)&&$l(r,o.handledSet_,o):wd(s,t,e.type_)===r&&o.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&$l(wd(e.copy_,t,e.type_),o.handledSet_,o)})}function $l(e,t,r){return!r.immer_.autoFreeze_&&r.unfinalizedDrafts_<1||ao(e)||t.has(e)||!ir(e)||kl(e)||(t.add(e),wl(e,(o,n)=>{if(ao(n)){const s=n[Gt];if(Dl(s,r)){const a=Cd(s);Sl(e,o,a,e.type_),rb(s)}}else ir(n)&&$l(n,t,r)})),e}function qA(e,t){const r=Nl(e),o={type_:r?1:0,scope_:t?t.scope_:Xg(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let n=o,s=Tl;r&&(n=[o],s=vs);const{revoke:a,proxy:i}=Proxy.revocable(n,s);return o.draft_=i,o.revoke_=a,[i,o]}var Tl={get(e,t){if(t===Gt)return e;let r=e.scope_.arrayMethodsPlugin_;const o=e.type_===1&&typeof t=="string";if(o&&r!=null&&r.isArrayOperationMethod(t))return r.createMethodInterceptor(e,t);const n=lo(e);if(!xd(n,t,e.type_))return QA(e,n,t);const s=n[t];if(e.finalized_||!ir(s)||o&&e.operationMethod&&(r!=null&&r.isMutatingArrayMethod(e.operationMethod))&&VA(t))return s;if(s===$d(e.base_,t)||YA(e,t,s)){Pl(e);const a=e.type_===1?+t:t,i=Pd(e.scope_,s,e,a);return e.copy_[a]=i}return s},has(e,t){return t in lo(e)},ownKeys(e){return Reflect.ownKeys(lo(e))},set(e,t,r){const o=sb(lo(e),t);if(o!=null&&o.set)return o.set.call(e.draft_,r),!0;if(!e.modified_){const n=$d(lo(e),t),s=n==null?void 0:n[Gt];if(s&&s.base_===r)return e.copy_[t]=r,e.assigned_.set(t,!1),!0;if(FA(r,n)&&(r!==void 0||xd(e.base_,t,e.type_)))return!0;Pl(e),Td(e)}return e.copy_[t]===r&&(r!==void 0||xd(e.copy_,t,e.type_))||Number.isNaN(r)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=r,e.assigned_.set(t,!0),jA(e,t,r)),!0},deleteProperty(e,t){return Pl(e),$d(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),Td(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const r=lo(e),o=Reflect.getOwnPropertyDescriptor(r,t);return o&&{[xl]:!0,[vd]:e.type_!==1||t!=="length",[vl]:o[vl],[gs]:r[t]}},defineProperty(){Jt(11)},getPrototypeOf(e){return Cn(e.base_)},setPrototypeOf(){Jt(12)}},vs={};for(let e in Tl){let t=Tl[e];vs[e]=function(){const r=arguments;return r[0]=r[0][0],t.apply(this,r)}}vs.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&Jt(13),vs.set.call(this,e,t,void 0)},vs.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&Jt(14),Tl.set.call(this,e[0],t,r,e[0])};function $d(e,t){const r=e[Gt];return(r?lo(r):e)[t]}function YA(e,t,r){var o;return e.type_!==1||!e.allIndicesReassigned_||(o=e.assigned_)!=null&&o.get(t)||!ir(r)||r[Gt]?!1:e.baseRefs_.has(r)}function QA(e,t,r){var n;const o=sb(t,r);return o?gs in o?o[gs]:(n=o.get)==null?void 0:n.call(e.draft_):void 0}function sb(e,t){if(!(t in e))return;let r=Cn(e);for(;r;){const o=Object.getOwnPropertyDescriptor(r,t);if(o)return o;r=Cn(r)}}function Td(e){e.modified_||(e.modified_=!0,e.parent_&&Td(e.parent_))}function Pl(e){e.copy_||(e.assigned_=new Map,e.copy_=Ed(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var KA=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(t,r,o)=>{if(Ro(t)&&!Ro(r)){const s=r;r=t;const a=this;return function(c=s,...d){return a.produce(c,p=>r.call(this,p,...d))}}Ro(r)||Jt(6),o!==void 0&&!Ro(o)&&Jt(7);let n;if(ir(t)){const s=Zg(this),a=Pd(s,t,void 0);let i=!0;try{n=r(a),i=!1}finally{i?Ad(s):Dd(s)}return Jg(s,o),eb(n,s)}else if(!t||!Sd(t)){if(n=r(t),n===void 0&&(n=t),n===Hg&&(n=void 0),this.autoFreeze_&&_d(n,!0),o){const s=[],a=[];Xo(kd).generateReplacementPatches_(t,n,{patches_:s,inversePatches_:a}),o(s,a)}return n}else Jt(1,t)},this.produceWithPatches=(t,r)=>{if(Ro(t))return(a,...i)=>this.produceWithPatches(a,c=>t(c,...i));let o,n;return[this.produce(t,r,(a,i)=>{o=a,n=i}),o,n]},Nd(e==null?void 0:e.autoFreeze)&&this.setAutoFreeze(e.autoFreeze),Nd(e==null?void 0:e.useStrictShallowCopy)&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),Nd(e==null?void 0:e.useStrictIteration)&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){ir(e)||Jt(8),ao(e)&&(e=RA(e));const t=Zg(this),r=Pd(t,e,void 0);return r[Gt].isManual_=!0,Dd(t),r}finishDraft(e,t){const r=e&&e[Gt];(!r||!r.isManual_)&&Jt(9);const{scope_:o}=r;return Jg(o,t),eb(void 0,o)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let r;for(r=t.length-1;r>=0;r--){const n=t[r];if(n.path.length===0&&n.op==="replace"){e=n.value;break}}r>-1&&(t=t.slice(r+1));const o=Xo(kd).applyPatches_;return ao(e)?o(e,t):this.produce(e,n=>o(n,t))}};function Pd(e,t,r,o){const[n,s]=Cl(t)?Xo(Al).proxyMap_(t,r):El(t)?Xo(Al).proxySet_(t,r):qA(t,r);return((r==null?void 0:r.scope_)??Xg()).drafts_.push(n),s.callbacks_=(r==null?void 0:r.callbacks_)??[],s.key_=o,r&&o!==void 0?HA(r,s,o):s.callbacks_.push(function(c){var p;(p=c.mapSetPlugin_)==null||p.fixSetContents(s);const{patchPlugin_:d}=c;s.modified_&&d&&d.generatePatches_(s,[],c)}),n}function RA(e){return ao(e)||Jt(10,e),ab(e)}function ab(e){if(!ir(e)||kl(e))return e;const t=e[Gt];let r,o=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=Ed(e,t.scope_.immer_.useStrictShallowCopy_),o=t.scope_.immer_.shouldUseStrictIteration()}else r=Ed(e,!0);return wl(r,(n,s)=>{Sl(r,n,ab(s))},o),t&&(t.finalized_=!1),r}var XA=new KA,lb=XA.produce;function ib(e){return({dispatch:r,getState:o})=>n=>s=>typeof s=="function"?s(r,o,e):n(s)}var JA=ib(),ZA=ib,eD=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?gl:gl.apply(null,arguments)},tD=e=>e&&typeof e.match=="function";function cb(e,t){function r(...o){if(t){let n=t(...o);if(!n)throw new Error(process.env.NODE_ENV==="production"?je(0):"prepareAction did not return an object");return{type:e,payload:n.payload,..."meta"in n&&{meta:n.meta},..."error"in n&&{error:n.error}}}return{type:e,payload:o[0]}}return r.toString=()=>`${e}`,r.type=e,r.match=o=>Wg(o)&&o.type===e,r}function rD(e){return typeof e=="function"&&"type"in e&&tD(e)}function oD(e){const t=e?`${e}`.split("/"):[],r=t[t.length-1]||"actionCreator";return`Detected an action creator with type "${e||"unknown"}" being dispatched.
178
+ Make sure you're calling the action creator before dispatching, i.e. \`dispatch(${r}())\` instead of \`dispatch(${r})\`. This is necessary even if the action has no payload.`}function nD(e={}){if(process.env.NODE_ENV==="production")return()=>r=>o=>r(o);const{isActionCreator:t=rD}=e;return()=>r=>o=>(t(o)&&console.warn(oD(o.type)),r(o))}function db(e,t){let r=0;return{measureTime(o){const n=Date.now();try{return o()}finally{const s=Date.now();r+=s-n}},warnIfExceeded(){r>e&&console.warn(`${t} took ${r}ms, which is more than the warning threshold of ${e}ms.
178
179
  If your state or actions are very large, you may want to disable the middleware as it might cause too much of a slowdown in development mode. See https://redux-toolkit.js.org/api/getDefaultMiddleware for instructions.
179
- It is disabled in production builds, so you don't need to worry about that.`)}}}var km=class aa extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,aa.prototype)}static get[Symbol.species](){return aa}concat(...t){return super.concat.apply(this,t)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new aa(...t[0].concat(this)):new aa(...t.concat(this))}};function _m(e){return Jt(e)?Cm(e,()=>{}):e}function zn(e,t,r){return e.has(t)?e.get(t):e.set(t,r(t)).get(t)}function h1(e){return typeof e!="object"||e==null||Object.isFrozen(e)}function m1(e,t,r){const o=Dm(e,t,r);return{detectMutations(){return Am(e,t,o,r)}}}function Dm(e,t=[],r,o="",n=new Set){const a={value:r};if(!e(r)&&!n.has(r)){n.add(r),a.children={};const s=t.length>0;for(const i in r){const c=o?o+"."+i:i;s&&t.some(f=>f instanceof RegExp?f.test(c):c===f)||(a.children[i]=Dm(e,t,r[i],c))}}return a}function Am(e,t=[],r,o,n=!1,a=""){const s=r?r.value:void 0,i=s===o;if(n&&!i&&!Number.isNaN(o))return{wasMutated:!0,path:a};if(e(s)||e(o))return{wasMutated:!1};const c={};for(let f in r.children)c[f]=!0;for(let f in o)c[f]=!0;const d=t.length>0;for(let f in c){const u=a?a+"."+f:f;if(d&&t.some(g=>g instanceof RegExp?g.test(u):u===g))continue;const h=Am(e,t,r.children[f],o[f],i,u);if(h.wasMutated)return h}return{wasMutated:!1}}function g1(e={}){if(process.env.NODE_ENV==="production")return()=>t=>r=>t(r);{let t=function(i,c,d,f){return JSON.stringify(i,r(c,f),d)},r=function(i,c){let d=[],f=[];return c||(c=function(u,h){return d[0]===h?"[Circular ~]":"[Circular ~."+f.slice(0,d.indexOf(h)).join(".")+"]"}),function(u,h){if(d.length>0){var m=d.indexOf(this);~m?d.splice(m+1):d.push(this),~m?f.splice(m,1/0,u):f.push(u),~d.indexOf(h)&&(h=c.call(this,u,h))}else d.push(h);return i==null?h:i.call(this,u,h)}},{isImmutable:o=h1,ignoredPaths:n,warnAfter:a=32}=e;const s=m1.bind(null,o,n);return({getState:i})=>{let c=i(),d=s(c),f;return u=>h=>{const m=Em(a,"ImmutableStateInvariantMiddleware");m.measureTime(()=>{if(c=i(),f=d.detectMutations(),d=s(c),f.wasMutated)throw new Error(process.env.NODE_ENV==="production"?$e(19):`A state mutation was detected between dispatches, in the path '${f.path||""}'. This may cause incorrect behavior. (https://redux.js.org/style-guide/style-guide#do-not-mutate-state)`)});const g=u(h);return m.measureTime(()=>{if(c=i(),f=d.detectMutations(),d=s(c),f.wasMutated)throw new Error(process.env.NODE_ENV==="production"?$e(20):`A state mutation was detected inside a dispatch, in the path: ${f.path||""}. Take a look at the reducer(s) handling the action ${t(h)}. (https://redux.js.org/style-guide/style-guide#do-not-mutate-state)`)}),m.warnIfExceeded(),g}}}}function Tm(e){const t=typeof e;return e==null||t==="string"||t==="boolean"||t==="number"||Array.isArray(e)||Ln(e)}function Mc(e,t="",r=Tm,o,n=[],a){let s;if(!r(e))return{keyPath:t||"<root>",value:e};if(typeof e!="object"||e===null||a!=null&&a.has(e))return!1;const i=o!=null?o(e):Object.entries(e),c=n.length>0;for(const[d,f]of i){const u=t?t+"."+d:d;if(!(c&&n.some(m=>m instanceof RegExp?m.test(u):u===m))){if(!r(f))return{keyPath:u,value:f};if(typeof f=="object"&&(s=Mc(f,u,r,o,n,a),s))return s}}return a&&Im(e)&&a.add(e),!1}function Im(e){if(!Object.isFrozen(e))return!1;for(const t of Object.values(e))if(!(typeof t!="object"||t===null)&&!Im(t))return!1;return!0}function b1(e={}){if(process.env.NODE_ENV==="production")return()=>t=>r=>t(r);{const{isSerializable:t=Tm,getEntries:r,ignoredActions:o=[],ignoredActionPaths:n=["meta.arg","meta.baseQueryMeta"],ignoredPaths:a=[],warnAfter:s=32,ignoreState:i=!1,ignoreActions:c=!1,disableCache:d=!1}=e,f=!d&&WeakSet?new WeakSet:void 0;return u=>h=>m=>{if(!nm(m))return h(m);const g=h(m),y=Em(s,"SerializableStateInvariantMiddleware");return!c&&!(o.length&&o.indexOf(m.type)!==-1)&&y.measureTime(()=>{const b=Mc(m,"",t,r,n,f);if(b){const{keyPath:C,value:w}=b;console.error(`A non-serializable value was detected in an action, in the path: \`${C}\`. Value:`,w,`
180
- Take a look at the logic that dispatched this action: `,m,`
180
+ It is disabled in production builds, so you don't need to worry about that.`)}}}var ub=class zs extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,zs.prototype)}static get[Symbol.species](){return zs}concat(...t){return super.concat.apply(this,t)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new zs(...t[0].concat(this)):new zs(...t.concat(this))}};function fb(e){return ir(e)?lb(e,()=>{}):e}function xs(e,t,r){return e.has(t)?e.get(t):e.set(t,r(t)).get(t)}function sD(e){return typeof e!="object"||e==null||Object.isFrozen(e)}function aD(e,t,r){const o=pb(e,t,r);return{detectMutations(){return hb(e,t,o,r)}}}function pb(e,t=[],r,o="",n=new Set){const s={value:r};if(!e(r)&&!n.has(r)){n.add(r),s.children={};const a=t.length>0;for(const i in r){const c=o?o+"."+i:i;a&&t.some(p=>p instanceof RegExp?p.test(c):c===p)||(s.children[i]=pb(e,t,r[i],c))}}return s}function hb(e,t=[],r,o,n=!1,s=""){const a=r?r.value:void 0,i=a===o;if(n&&!i&&!Number.isNaN(o))return{wasMutated:!0,path:s};if(e(a)||e(o))return{wasMutated:!1};const c={};for(let p in r.children)c[p]=!0;for(let p in o)c[p]=!0;const d=t.length>0;for(let p in c){const u=s?s+"."+p:p;if(d&&t.some(g=>g instanceof RegExp?g.test(u):u===g))continue;const f=hb(e,t,r.children[p],o[p],i,u);if(f.wasMutated)return f}return{wasMutated:!1}}function lD(e={}){if(process.env.NODE_ENV==="production")return()=>t=>r=>t(r);{let t=function(i,c,d,p){return JSON.stringify(i,r(c,p),d)},r=function(i,c){let d=[],p=[];return c||(c=function(u,f){return d[0]===f?"[Circular ~]":"[Circular ~."+p.slice(0,d.indexOf(f)).join(".")+"]"}),function(u,f){if(d.length>0){var h=d.indexOf(this);~h?d.splice(h+1):d.push(this),~h?p.splice(h,1/0,u):p.push(u),~d.indexOf(f)&&(f=c.call(this,u,f))}else d.push(f);return i==null?f:i.call(this,u,f)}},{isImmutable:o=sD,ignoredPaths:n,warnAfter:s=32}=e;const a=aD.bind(null,o,n);return({getState:i})=>{let c=i(),d=a(c),p;return u=>f=>{const h=db(s,"ImmutableStateInvariantMiddleware");h.measureTime(()=>{if(c=i(),p=d.detectMutations(),d=a(c),p.wasMutated)throw new Error(process.env.NODE_ENV==="production"?je(19):`A state mutation was detected between dispatches, in the path '${p.path||""}'. This may cause incorrect behavior. (https://redux.js.org/style-guide/style-guide#do-not-mutate-state)`)});const g=u(f);return h.measureTime(()=>{if(c=i(),p=d.detectMutations(),d=a(c),p.wasMutated)throw new Error(process.env.NODE_ENV==="production"?je(20):`A state mutation was detected inside a dispatch, in the path: ${p.path||""}. Take a look at the reducer(s) handling the action ${t(f)}. (https://redux.js.org/style-guide/style-guide#do-not-mutate-state)`)}),h.warnIfExceeded(),g}}}}function mb(e){const t=typeof e;return e==null||t==="string"||t==="boolean"||t==="number"||Array.isArray(e)||ms(e)}function Id(e,t="",r=mb,o,n=[],s){let a;if(!r(e))return{keyPath:t||"<root>",value:e};if(typeof e!="object"||e===null||s!=null&&s.has(e))return!1;const i=o!=null?o(e):Object.entries(e),c=n.length>0;for(const[d,p]of i){const u=t?t+"."+d:d;if(!(c&&n.some(h=>h instanceof RegExp?h.test(u):u===h))){if(!r(p))return{keyPath:u,value:p};if(typeof p=="object"&&(a=Id(p,u,r,o,n,s),a))return a}}return s&&gb(e)&&s.add(e),!1}function gb(e){if(!Object.isFrozen(e))return!1;for(const t of Object.values(e))if(!(typeof t!="object"||t===null)&&!gb(t))return!1;return!0}function iD(e={}){if(process.env.NODE_ENV==="production")return()=>t=>r=>t(r);{const{isSerializable:t=mb,getEntries:r,ignoredActions:o=[],ignoredActionPaths:n=["meta.arg","meta.baseQueryMeta"],ignoredPaths:s=[],warnAfter:a=32,ignoreState:i=!1,ignoreActions:c=!1,disableCache:d=!1}=e,p=!d&&WeakSet?new WeakSet:void 0;return u=>f=>h=>{if(!Wg(h))return f(h);const g=f(h),y=db(a,"SerializableStateInvariantMiddleware");return!c&&!(o.length&&o.indexOf(h.type)!==-1)&&y.measureTime(()=>{const b=Id(h,"",t,r,n,p);if(b){const{keyPath:v,value:N}=b;console.error(`A non-serializable value was detected in an action, in the path: \`${v}\`. Value:`,N,`
181
+ Take a look at the logic that dispatched this action: `,h,`
181
182
  (See https://redux.js.org/faq/actions#why-should-type-be-a-string-or-at-least-serializable-why-should-my-action-types-be-constants)`,`
182
- (To allow non-serializable values see: https://redux-toolkit.js.org/usage/usage-guide#working-with-non-serializable-data)`)}}),i||(y.measureTime(()=>{const b=u.getState(),C=Mc(b,"",t,r,a,f);if(C){const{keyPath:w,value:x}=C;console.error(`A non-serializable value was detected in the state, in the path: \`${w}\`. Value:`,x,`
183
- Take a look at the reducer(s) handling this action type: ${m.type}.
184
- (See https://redux.js.org/faq/organizing-state#can-i-put-functions-promises-or-other-non-serializable-items-in-my-store-state)`)}}),y.warnIfExceeded()),g}}}function qs(e){return typeof e=="boolean"}var y1=()=>function(t){const{thunk:r=!0,immutableCheck:o=!0,serializableCheck:n=!0,actionCreatorCheck:a=!0}=t??{};let s=new km;if(r&&(qs(r)?s.push(l1):s.push(i1(r.extraArgument))),process.env.NODE_ENV!=="production"){if(o){let i={};qs(o)||(i=o),s.unshift(g1(i))}if(n){let i={};qs(n)||(i=n),s.push(b1(i))}if(a){let i={};qs(a)||(i=a),s.unshift(f1(i))}}return s},v1="RTK_autoBatch",Pm=e=>t=>{setTimeout(t,e)},x1=(e,t)=>r=>{let o=!1;const n=()=>{o||(o=!0,cancelAnimationFrame(a),clearTimeout(s),r())},a=e(n),s=setTimeout(n,t)},w1=(e={type:"raf"})=>t=>(...r)=>{const o=t(...r);let n=!0,a=!1,s=!1;const i=new Set,c=e.type==="tick"?queueMicrotask:e.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?x1(window.requestAnimationFrame,100):Pm(10):e.type==="callback"?e.queueNotification:Pm(e.timeout),d=()=>{s=!1,a&&(a=!1,i.forEach(f=>f()))};return Object.assign({},o,{subscribe(f){const u=()=>n&&f(),h=o.subscribe(u);return i.add(f),()=>{h(),i.delete(f)}},dispatch(f){var u;try{return n=!((u=f==null?void 0:f.meta)!=null&&u[v1]),a=!n,a&&(s||(s=!0,c(d))),o.dispatch(f)}finally{n=!0}}})},C1=e=>function(r){const{autoBatch:o=!0}=r??{};let n=new km(e);return o&&n.push(w1(typeof o=="object"?o:void 0)),n};function S1(e){const t=y1(),{reducer:r=void 0,middleware:o,devTools:n=!0,duplicateMiddlewareCheck:a=!0,preloadedState:s=void 0,enhancers:i=void 0}=e||{};let c;if(typeof r=="function")c=r;else if(Ln(r))c=om(r);else throw new Error(process.env.NODE_ENV==="production"?$e(1):"`reducer` is a required argument, and must be a function or an object of functions that can be passed to combineReducers");if(process.env.NODE_ENV!=="production"&&o&&typeof o!="function")throw new Error(process.env.NODE_ENV==="production"?$e(2):"`middleware` field must be a callback");let d;if(typeof o=="function"){if(d=o(t),process.env.NODE_ENV!=="production"&&!Array.isArray(d))throw new Error(process.env.NODE_ENV==="production"?$e(3):"when using a middleware builder function, an array of middleware must be returned")}else d=t();if(process.env.NODE_ENV!=="production"&&d.some(y=>typeof y!="function"))throw new Error(process.env.NODE_ENV==="production"?$e(4):"each middleware provided to configureStore must be a function");if(process.env.NODE_ENV!=="production"&&a){let y=new Set;d.forEach(b=>{if(y.has(b))throw new Error(process.env.NODE_ENV==="production"?$e(42):"Duplicate middleware references found when creating the store. Ensure that each middleware is only included once.");y.add(b)})}let f=Ts;n&&(f=c1({trace:process.env.NODE_ENV!=="production",...typeof n=="object"&&n}));const u=Wk(...d),h=C1(u);if(process.env.NODE_ENV!=="production"&&i&&typeof i!="function")throw new Error(process.env.NODE_ENV==="production"?$e(5):"`enhancers` field must be a callback");let m=typeof i=="function"?i(h):h();if(process.env.NODE_ENV!=="production"&&!Array.isArray(m))throw new Error(process.env.NODE_ENV==="production"?$e(6):"`enhancers` callback must return an array");if(process.env.NODE_ENV!=="production"&&m.some(y=>typeof y!="function"))throw new Error(process.env.NODE_ENV==="production"?$e(7):"each enhancer provided to configureStore must be a function");process.env.NODE_ENV!=="production"&&d.length&&!m.includes(u)&&console.error("middlewares were provided, but middleware enhancer was not included in final enhancers - make sure to call `getDefaultEnhancers`");const g=f(...m);return tm(c,s,g)}function Mm(e){const t={},r=[];let o;const n={addCase(a,s){if(process.env.NODE_ENV!=="production"){if(r.length>0)throw new Error(process.env.NODE_ENV==="production"?$e(26):"`builder.addCase` should only be called before calling `builder.addMatcher`");if(o)throw new Error(process.env.NODE_ENV==="production"?$e(27):"`builder.addCase` should only be called before calling `builder.addDefaultCase`")}const i=typeof a=="string"?a:a.type;if(!i)throw new Error(process.env.NODE_ENV==="production"?$e(28):"`builder.addCase` cannot be called with an empty action type");if(i in t)throw new Error(process.env.NODE_ENV==="production"?$e(29):`\`builder.addCase\` cannot be called with two reducers for the same action type '${i}'`);return t[i]=s,n},addAsyncThunk(a,s){if(process.env.NODE_ENV!=="production"&&o)throw new Error(process.env.NODE_ENV==="production"?$e(43):"`builder.addAsyncThunk` should only be called before calling `builder.addDefaultCase`");return s.pending&&(t[a.pending.type]=s.pending),s.rejected&&(t[a.rejected.type]=s.rejected),s.fulfilled&&(t[a.fulfilled.type]=s.fulfilled),s.settled&&r.push({matcher:a.settled,reducer:s.settled}),n},addMatcher(a,s){if(process.env.NODE_ENV!=="production"&&o)throw new Error(process.env.NODE_ENV==="production"?$e(30):"`builder.addMatcher` should only be called before calling `builder.addDefaultCase`");return r.push({matcher:a,reducer:s}),n},addDefaultCase(a){if(process.env.NODE_ENV!=="production"&&o)throw new Error(process.env.NODE_ENV==="production"?$e(31):"`builder.addDefaultCase` can only be called once");return o=a,n}};return e(n),[t,r,o]}function N1(e){return typeof e=="function"}function E1(e,t){if(process.env.NODE_ENV!=="production"&&typeof t=="object")throw new Error(process.env.NODE_ENV==="production"?$e(8):"The object notation for `createReducer` has been removed. Please use the 'builder callback' notation instead: https://redux-toolkit.js.org/api/createReducer");let[r,o,n]=Mm(t),a;if(N1(e))a=()=>_m(e());else{const i=_m(e);a=()=>i}function s(i=a(),c){let d=[r[c.type],...o.filter(({matcher:f})=>f(c)).map(({reducer:f})=>f)];return d.filter(f=>!!f).length===0&&(d=[n]),d.reduce((f,u)=>{if(u)if($r(f)){const m=u(f,c);return m===void 0?f:m}else{if(Jt(f))return Cm(f,h=>u(h,c));{const h=u(f,c);if(h===void 0){if(f===null)return f;throw Error("A case reducer on a non-draftable value must not return undefined")}return h}}return f},i)}return s.getInitialState=a,s}var k1="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",_1=(e=21)=>{let t="",r=e;for(;r--;)t+=k1[Math.random()*64|0];return t},D1=Symbol.for("rtk-slice-createasyncthunk");function A1(e,t){return`${e}/${t}`}function T1({creators:e}={}){var r;const t=(r=e==null?void 0:e.asyncThunk)==null?void 0:r[D1];return function(n){const{name:a,reducerPath:s=a}=n;if(!a)throw new Error(process.env.NODE_ENV==="production"?$e(11):"`name` is a required option for createSlice");typeof process<"u"&&process.env.NODE_ENV==="development"&&n.initialState===void 0&&console.error("You must provide an `initialState` value that is not `undefined`. You may have misspelled `initialState`");const i=(typeof n.reducers=="function"?n.reducers(P1()):n.reducers)||{},c=Object.keys(i),d={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},f={addCase(S,N){const E=typeof S=="string"?S:S.type;if(!E)throw new Error(process.env.NODE_ENV==="production"?$e(12):"`context.addCase` cannot be called with an empty action type");if(E in d.sliceCaseReducersByType)throw new Error(process.env.NODE_ENV==="production"?$e(13):"`context.addCase` cannot be called with two reducers for the same action type: "+E);return d.sliceCaseReducersByType[E]=N,f},addMatcher(S,N){return d.sliceMatchers.push({matcher:S,reducer:N}),f},exposeAction(S,N){return d.actionCreators[S]=N,f},exposeCaseReducer(S,N){return d.sliceCaseReducersByName[S]=N,f}};c.forEach(S=>{const N=i[S],E={reducerName:S,type:A1(a,S),createNotation:typeof n.reducers=="function"};O1(N)?F1(E,N,f,t):M1(E,N,f)});function u(){if(process.env.NODE_ENV!=="production"&&typeof n.extraReducers=="object")throw new Error(process.env.NODE_ENV==="production"?$e(14):"The object notation for `createSlice.extraReducers` has been removed. Please use the 'builder callback' notation instead: https://redux-toolkit.js.org/api/createSlice");const[S={},N=[],E=void 0]=typeof n.extraReducers=="function"?Mm(n.extraReducers):[n.extraReducers],M={...S,...d.sliceCaseReducersByType};return E1(n.initialState,k=>{for(let T in M)k.addCase(T,M[T]);for(let T of d.sliceMatchers)k.addMatcher(T.matcher,T.reducer);for(let T of N)k.addMatcher(T.matcher,T.reducer);E&&k.addDefaultCase(E)})}const h=S=>S,m=new Map,g=new WeakMap;let y;function b(S,N){return y||(y=u()),y(S,N)}function C(){return y||(y=u()),y.getInitialState()}function w(S,N=!1){function E(k){let T=k[S];if(typeof T>"u"){if(N)T=zn(g,E,C);else if(process.env.NODE_ENV!=="production")throw new Error(process.env.NODE_ENV==="production"?$e(15):"selectSlice returned undefined for an uninjected slice reducer")}return T}function M(k=h){const T=zn(m,N,()=>new WeakMap);return zn(T,k,()=>{const A={};for(const[L,O]of Object.entries(n.selectors??{}))A[L]=I1(O,k,()=>zn(g,k,C),N);return A})}return{reducerPath:S,getSelectors:M,get selectors(){return M(E)},selectSlice:E}}const x={name:a,reducer:b,actions:d.actionCreators,caseReducers:d.sliceCaseReducersByName,getInitialState:C,...w(s),injectInto(S,{reducerPath:N,...E}={}){const M=N??s;return S.inject({reducerPath:M,reducer:b},E),{...x,...w(M,!0)}}};return x}}function I1(e,t,r,o){function n(a,...s){let i=t(a);if(typeof i>"u"){if(o)i=r();else if(process.env.NODE_ENV!=="production")throw new Error(process.env.NODE_ENV==="production"?$e(16):"selectState returned undefined for an uninjected slice reducer")}return e(i,...s)}return n.unwrapped=e,n}var Om=T1();function P1(){function e(t,r){return{_reducerDefinitionType:"asyncThunk",payloadCreator:t,...r}}return e.withTypes=()=>e,{reducer(t){return Object.assign({[t.name](...r){return t(...r)}}[t.name],{_reducerDefinitionType:"reducer"})},preparedReducer(t,r){return{_reducerDefinitionType:"reducerWithPrepare",prepare:t,reducer:r}},asyncThunk:e}}function M1({type:e,reducerName:t,createNotation:r},o,n){let a,s;if("reducer"in o){if(r&&!L1(o))throw new Error(process.env.NODE_ENV==="production"?$e(17):"Please use the `create.preparedReducer` notation for prepared action creators with the `create` notation.");a=o.reducer,s=o.prepare}else a=o;n.addCase(e,a).exposeCaseReducer(t,a).exposeAction(t,s?Nm(e,s):Nm(e))}function O1(e){return e._reducerDefinitionType==="asyncThunk"}function L1(e){return e._reducerDefinitionType==="reducerWithPrepare"}function F1({type:e,reducerName:t},r,o,n){if(!n)throw new Error(process.env.NODE_ENV==="production"?$e(18):"Cannot use `create.asyncThunk` in the built-in `createSlice`. Use `buildCreateSlice({ creators: { asyncThunk: asyncThunkCreator } })` to create a customised version of `createSlice`.");const{payloadCreator:a,fulfilled:s,pending:i,rejected:c,settled:d,options:f}=r,u=n(e,a,f);o.exposeAction(t,u),s&&o.addCase(u.fulfilled,s),i&&o.addCase(u.pending,i),c&&o.addCase(u.rejected,c),d&&o.addMatcher(u.settled,d),o.exposeCaseReducer(t,{fulfilled:s||Qs,pending:i||Qs,rejected:c||Qs,settled:d||Qs})}function Qs(){}var $1=e=>"reducerPath"in e&&typeof e.reducerPath=="string",G1=e=>e.flatMap(t=>$1(t)?[[t.reducerPath,t.reducer]]:Object.entries(t)),Oc=Symbol.for("rtk-state-proxy-original"),V1=e=>!!e&&!!e[Oc],z1=new WeakMap,B1=(e,t,r)=>zn(z1,e,()=>new Proxy(e,{get:(o,n,a)=>{if(n===Oc)return o;const s=Reflect.get(o,n,a);if(typeof s>"u"){const i=r[n];if(typeof i<"u")return i;const c=t[n];if(c){const d=c(void 0,{type:_1()});if(typeof d>"u")throw new Error(process.env.NODE_ENV==="production"?$e(24):`The slice reducer for key "${n.toString()}" returned undefined when called for selector(). If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined. If you don't want to set a value for this reducer, you can use null instead of undefined.`);return r[n]=d,d}}return s}})),U1=e=>{if(!V1(e))throw new Error(process.env.NODE_ENV==="production"?$e(25):"original must be used on state Proxy");return e[Oc]},W1={},H1=(e=W1)=>e;function j1(...e){const t=Object.fromEntries(G1(e)),r=()=>Object.keys(t).length?om(t):H1;let o=r();function n(c,d){return o(c,d)}n.withLazyLoadedSlices=()=>n;const a={},s=(c,d={})=>{const{reducerPath:f,reducer:u}=c,h=t[f];return!d.overrideExisting&&h&&h!==u?(typeof process<"u"&&process.env.NODE_ENV==="development"&&console.error(`called \`inject\` to override already-existing reducer ${f} without specifying \`overrideExisting: true\``),n):(d.overrideExisting&&h!==u&&delete a[f],t[f]=u,o=r(),n)},i=Object.assign(function(d,f){return function(h,...m){return d(B1(f?f(h,...m):h,t,a),...m)}},{original:U1});return Object.assign(n,{inject:s,selector:i})}function $e(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var Ks={exports:{}},Lc={};/**
183
+ (To allow non-serializable values see: https://redux-toolkit.js.org/usage/usage-guide#working-with-non-serializable-data)`)}}),i||(y.measureTime(()=>{const b=u.getState(),v=Id(b,"",t,r,s,p);if(v){const{keyPath:N,value:x}=v;console.error(`A non-serializable value was detected in the state, in the path: \`${N}\`. Value:`,x,`
184
+ Take a look at the reducer(s) handling this action type: ${h.type}.
185
+ (See https://redux.js.org/faq/organizing-state#can-i-put-functions-promises-or-other-non-serializable-items-in-my-store-state)`)}}),y.warnIfExceeded()),g}}}function Il(e){return typeof e=="boolean"}var cD=()=>function(t){const{thunk:r=!0,immutableCheck:o=!0,serializableCheck:n=!0,actionCreatorCheck:s=!0}=t??{};let a=new ub;if(r&&(Il(r)?a.push(JA):a.push(ZA(r.extraArgument))),process.env.NODE_ENV!=="production"){if(o){let i={};Il(o)||(i=o),a.unshift(lD(i))}if(n){let i={};Il(n)||(i=n),a.push(iD(i))}if(s){let i={};Il(s)||(i=s),a.unshift(nD(i))}}return a},dD="RTK_autoBatch",bb=e=>t=>{setTimeout(t,e)},uD=(e,t)=>r=>{let o=!1;const n=()=>{o||(o=!0,cancelAnimationFrame(s),clearTimeout(a),r())},s=e(n),a=setTimeout(n,t)},fD=(e={type:"raf"})=>t=>(...r)=>{const o=t(...r);let n=!0,s=!1,a=!1;const i=new Set,c=e.type==="tick"?queueMicrotask:e.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?uD(window.requestAnimationFrame,100):bb(10):e.type==="callback"?e.queueNotification:bb(e.timeout),d=()=>{a=!1,s&&(s=!1,i.forEach(p=>p()))};return Object.assign({},o,{subscribe(p){const u=()=>n&&p(),f=o.subscribe(u);return i.add(p),()=>{f(),i.delete(p)}},dispatch(p){var u;try{return n=!((u=p==null?void 0:p.meta)!=null&&u[dD]),s=!n,s&&(a||(a=!0,c(d))),o.dispatch(p)}finally{n=!0}}})},pD=e=>function(r){const{autoBatch:o=!0}=r??{};let n=new ub(e);return o&&n.push(fD(typeof o=="object"?o:void 0)),n};function hD(e){const t=cD(),{reducer:r=void 0,middleware:o,devTools:n=!0,duplicateMiddlewareCheck:s=!0,preloadedState:a=void 0,enhancers:i=void 0}=e||{};let c;if(typeof r=="function")c=r;else if(ms(r))c=Ug(r);else throw new Error(process.env.NODE_ENV==="production"?je(1):"`reducer` is a required argument, and must be a function or an object of functions that can be passed to combineReducers");if(process.env.NODE_ENV!=="production"&&o&&typeof o!="function")throw new Error(process.env.NODE_ENV==="production"?je(2):"`middleware` field must be a callback");let d;if(typeof o=="function"){if(d=o(t),process.env.NODE_ENV!=="production"&&!Array.isArray(d))throw new Error(process.env.NODE_ENV==="production"?je(3):"when using a middleware builder function, an array of middleware must be returned")}else d=t();if(process.env.NODE_ENV!=="production"&&d.some(y=>typeof y!="function"))throw new Error(process.env.NODE_ENV==="production"?je(4):"each middleware provided to configureStore must be a function");if(process.env.NODE_ENV!=="production"&&s){let y=new Set;d.forEach(b=>{if(y.has(b))throw new Error(process.env.NODE_ENV==="production"?je(42):"Duplicate middleware references found when creating the store. Ensure that each middleware is only included once.");y.add(b)})}let p=gl;n&&(p=eD({trace:process.env.NODE_ENV!=="production",...typeof n=="object"&&n}));const u=OA(...d),f=pD(u);if(process.env.NODE_ENV!=="production"&&i&&typeof i!="function")throw new Error(process.env.NODE_ENV==="production"?je(5):"`enhancers` field must be a callback");let h=typeof i=="function"?i(f):f();if(process.env.NODE_ENV!=="production"&&!Array.isArray(h))throw new Error(process.env.NODE_ENV==="production"?je(6):"`enhancers` callback must return an array");if(process.env.NODE_ENV!=="production"&&h.some(y=>typeof y!="function"))throw new Error(process.env.NODE_ENV==="production"?je(7):"each enhancer provided to configureStore must be a function");process.env.NODE_ENV!=="production"&&d.length&&!h.includes(u)&&console.error("middlewares were provided, but middleware enhancer was not included in final enhancers - make sure to call `getDefaultEnhancers`");const g=p(...h);return zg(c,a,g)}function yb(e){const t={},r=[];let o;const n={addCase(s,a){if(process.env.NODE_ENV!=="production"){if(r.length>0)throw new Error(process.env.NODE_ENV==="production"?je(26):"`builder.addCase` should only be called before calling `builder.addMatcher`");if(o)throw new Error(process.env.NODE_ENV==="production"?je(27):"`builder.addCase` should only be called before calling `builder.addDefaultCase`")}const i=typeof s=="string"?s:s.type;if(!i)throw new Error(process.env.NODE_ENV==="production"?je(28):"`builder.addCase` cannot be called with an empty action type");if(i in t)throw new Error(process.env.NODE_ENV==="production"?je(29):`\`builder.addCase\` cannot be called with two reducers for the same action type '${i}'`);return t[i]=a,n},addAsyncThunk(s,a){if(process.env.NODE_ENV!=="production"&&o)throw new Error(process.env.NODE_ENV==="production"?je(43):"`builder.addAsyncThunk` should only be called before calling `builder.addDefaultCase`");return a.pending&&(t[s.pending.type]=a.pending),a.rejected&&(t[s.rejected.type]=a.rejected),a.fulfilled&&(t[s.fulfilled.type]=a.fulfilled),a.settled&&r.push({matcher:s.settled,reducer:a.settled}),n},addMatcher(s,a){if(process.env.NODE_ENV!=="production"&&o)throw new Error(process.env.NODE_ENV==="production"?je(30):"`builder.addMatcher` should only be called before calling `builder.addDefaultCase`");return r.push({matcher:s,reducer:a}),n},addDefaultCase(s){if(process.env.NODE_ENV!=="production"&&o)throw new Error(process.env.NODE_ENV==="production"?je(31):"`builder.addDefaultCase` can only be called once");return o=s,n}};return e(n),[t,r,o]}function mD(e){return typeof e=="function"}function gD(e,t){if(process.env.NODE_ENV!=="production"&&typeof t=="object")throw new Error(process.env.NODE_ENV==="production"?je(8):"The object notation for `createReducer` has been removed. Please use the 'builder callback' notation instead: https://redux-toolkit.js.org/api/createReducer");let[r,o,n]=yb(t),s;if(mD(e))s=()=>fb(e());else{const i=fb(e);s=()=>i}function a(i=s(),c){let d=[r[c.type],...o.filter(({matcher:p})=>p(c)).map(({reducer:p})=>p)];return d.filter(p=>!!p).length===0&&(d=[n]),d.reduce((p,u)=>{if(u)if(ao(p)){const h=u(p,c);return h===void 0?p:h}else{if(ir(p))return lb(p,f=>u(f,c));{const f=u(p,c);if(f===void 0){if(p===null)return p;throw Error("A case reducer on a non-draftable value must not return undefined")}return f}}return p},i)}return a.getInitialState=s,a}var bD="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",yD=(e=21)=>{let t="",r=e;for(;r--;)t+=bD[Math.random()*64|0];return t},vD=Symbol.for("rtk-slice-createasyncthunk");function xD(e,t){return`${e}/${t}`}function wD({creators:e}={}){var r;const t=(r=e==null?void 0:e.asyncThunk)==null?void 0:r[vD];return function(n){const{name:s,reducerPath:a=s}=n;if(!s)throw new Error(process.env.NODE_ENV==="production"?je(11):"`name` is a required option for createSlice");typeof process<"u"&&process.env.NODE_ENV==="development"&&n.initialState===void 0&&console.error("You must provide an `initialState` value that is not `undefined`. You may have misspelled `initialState`");const i=(typeof n.reducers=="function"?n.reducers(ND()):n.reducers)||{},c=Object.keys(i),d={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},p={addCase(w,C){const E=typeof w=="string"?w:w.type;if(!E)throw new Error(process.env.NODE_ENV==="production"?je(12):"`context.addCase` cannot be called with an empty action type");if(E in d.sliceCaseReducersByType)throw new Error(process.env.NODE_ENV==="production"?je(13):"`context.addCase` cannot be called with two reducers for the same action type: "+E);return d.sliceCaseReducersByType[E]=C,p},addMatcher(w,C){return d.sliceMatchers.push({matcher:w,reducer:C}),p},exposeAction(w,C){return d.actionCreators[w]=C,p},exposeCaseReducer(w,C){return d.sliceCaseReducersByName[w]=C,p}};c.forEach(w=>{const C=i[w],E={reducerName:w,type:xD(s,w),createNotation:typeof n.reducers=="function"};ED(C)?kD(E,C,p,t):CD(E,C,p)});function u(){if(process.env.NODE_ENV!=="production"&&typeof n.extraReducers=="object")throw new Error(process.env.NODE_ENV==="production"?je(14):"The object notation for `createSlice.extraReducers` has been removed. Please use the 'builder callback' notation instead: https://redux-toolkit.js.org/api/createSlice");const[w={},C=[],E=void 0]=typeof n.extraReducers=="function"?yb(n.extraReducers):[n.extraReducers],k={...w,...d.sliceCaseReducersByType};return gD(n.initialState,_=>{for(let D in k)_.addCase(D,k[D]);for(let D of d.sliceMatchers)_.addMatcher(D.matcher,D.reducer);for(let D of C)_.addMatcher(D.matcher,D.reducer);E&&_.addDefaultCase(E)})}const f=w=>w,h=new Map,g=new WeakMap;let y;function b(w,C){return y||(y=u()),y(w,C)}function v(){return y||(y=u()),y.getInitialState()}function N(w,C=!1){function E(_){let D=_[w];if(typeof D>"u"){if(C)D=xs(g,E,v);else if(process.env.NODE_ENV!=="production")throw new Error(process.env.NODE_ENV==="production"?je(15):"selectSlice returned undefined for an uninjected slice reducer")}return D}function k(_=f){const D=xs(h,C,()=>new WeakMap);return xs(D,_,()=>{const A={};for(const[I,T]of Object.entries(n.selectors??{}))A[I]=SD(T,_,()=>xs(g,_,v),C);return A})}return{reducerPath:w,getSelectors:k,get selectors(){return k(E)},selectSlice:E}}const x={name:s,reducer:b,actions:d.actionCreators,caseReducers:d.sliceCaseReducersByName,getInitialState:v,...N(a),injectInto(w,{reducerPath:C,...E}={}){const k=C??a;return w.inject({reducerPath:k,reducer:b},E),{...x,...N(k,!0)}}};return x}}function SD(e,t,r,o){function n(s,...a){let i=t(s);if(typeof i>"u"){if(o)i=r();else if(process.env.NODE_ENV!=="production")throw new Error(process.env.NODE_ENV==="production"?je(16):"selectState returned undefined for an uninjected slice reducer")}return e(i,...a)}return n.unwrapped=e,n}var vb=wD();function ND(){function e(t,r){return{_reducerDefinitionType:"asyncThunk",payloadCreator:t,...r}}return e.withTypes=()=>e,{reducer(t){return Object.assign({[t.name](...r){return t(...r)}}[t.name],{_reducerDefinitionType:"reducer"})},preparedReducer(t,r){return{_reducerDefinitionType:"reducerWithPrepare",prepare:t,reducer:r}},asyncThunk:e}}function CD({type:e,reducerName:t,createNotation:r},o,n){let s,a;if("reducer"in o){if(r&&!_D(o))throw new Error(process.env.NODE_ENV==="production"?je(17):"Please use the `create.preparedReducer` notation for prepared action creators with the `create` notation.");s=o.reducer,a=o.prepare}else s=o;n.addCase(e,s).exposeCaseReducer(t,s).exposeAction(t,a?cb(e,a):cb(e))}function ED(e){return e._reducerDefinitionType==="asyncThunk"}function _D(e){return e._reducerDefinitionType==="reducerWithPrepare"}function kD({type:e,reducerName:t},r,o,n){if(!n)throw new Error(process.env.NODE_ENV==="production"?je(18):"Cannot use `create.asyncThunk` in the built-in `createSlice`. Use `buildCreateSlice({ creators: { asyncThunk: asyncThunkCreator } })` to create a customised version of `createSlice`.");const{payloadCreator:s,fulfilled:a,pending:i,rejected:c,settled:d,options:p}=r,u=n(e,s,p);o.exposeAction(t,u),a&&o.addCase(u.fulfilled,a),i&&o.addCase(u.pending,i),c&&o.addCase(u.rejected,c),d&&o.addMatcher(u.settled,d),o.exposeCaseReducer(t,{fulfilled:a||Ol,pending:i||Ol,rejected:c||Ol,settled:d||Ol})}function Ol(){}var AD=e=>"reducerPath"in e&&typeof e.reducerPath=="string",DD=e=>e.flatMap(t=>AD(t)?[[t.reducerPath,t.reducer]]:Object.entries(t)),Od=Symbol.for("rtk-state-proxy-original"),$D=e=>!!e&&!!e[Od],TD=new WeakMap,PD=(e,t,r)=>xs(TD,e,()=>new Proxy(e,{get:(o,n,s)=>{if(n===Od)return o;const a=Reflect.get(o,n,s);if(typeof a>"u"){const i=r[n];if(typeof i<"u")return i;const c=t[n];if(c){const d=c(void 0,{type:yD()});if(typeof d>"u")throw new Error(process.env.NODE_ENV==="production"?je(24):`The slice reducer for key "${n.toString()}" returned undefined when called for selector(). If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined. If you don't want to set a value for this reducer, you can use null instead of undefined.`);return r[n]=d,d}}return a}})),ID=e=>{if(!$D(e))throw new Error(process.env.NODE_ENV==="production"?je(25):"original must be used on state Proxy");return e[Od]},OD={},MD=(e=OD)=>e;function LD(...e){const t=Object.fromEntries(DD(e)),r=()=>Object.keys(t).length?Ug(t):MD;let o=r();function n(c,d){return o(c,d)}n.withLazyLoadedSlices=()=>n;const s={},a=(c,d={})=>{const{reducerPath:p,reducer:u}=c,f=t[p];return!d.overrideExisting&&f&&f!==u?(typeof process<"u"&&process.env.NODE_ENV==="development"&&console.error(`called \`inject\` to override already-existing reducer ${p} without specifying \`overrideExisting: true\``),n):(d.overrideExisting&&f!==u&&delete s[p],t[p]=u,o=r(),n)},i=Object.assign(function(d,p){return function(f,...h){return d(PD(p?p(f,...h):f,t,s),...h)}},{original:ID});return Object.assign(n,{inject:a,selector:i})}function je(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var Ml={exports:{}},Md={};/**
185
186
  * @license React
186
187
  * use-sync-external-store-with-selector.production.js
187
188
  *
@@ -189,7 +190,7 @@ Take a look at the reducer(s) handling this action type: ${m.type}.
189
190
  *
190
191
  * This source code is licensed under the MIT license found in the
191
192
  * LICENSE file in the root directory of this source tree.
192
- */var Lm;function Y1(){if(Lm)return Lc;Lm=1;var e=D;function t(c,d){return c===d&&(c!==0||1/c===1/d)||c!==c&&d!==d}var r=typeof Object.is=="function"?Object.is:t,o=e.useSyncExternalStore,n=e.useRef,a=e.useEffect,s=e.useMemo,i=e.useDebugValue;return Lc.useSyncExternalStoreWithSelector=function(c,d,f,u,h){var m=n(null);if(m.current===null){var g={hasValue:!1,value:null};m.current=g}else g=m.current;m=s(function(){function b(N){if(!C){if(C=!0,w=N,N=u(N),h!==void 0&&g.hasValue){var E=g.value;if(h(E,N))return x=E}return x=N}if(E=x,r(w,N))return E;var M=u(N);return h!==void 0&&h(E,M)?(w=N,E):(w=N,x=M)}var C=!1,w,x,S=f===void 0?null:f;return[function(){return b(d())},S===null?void 0:function(){return b(S())}]},[d,f,u,h]);var y=o(c,m[0],m[1]);return a(function(){g.hasValue=!0,g.value=y},[y]),i(y),y},Lc}var Fc={};/**
193
+ */var xb;function FD(){if(xb)return Md;xb=1;var e=P;function t(c,d){return c===d&&(c!==0||1/c===1/d)||c!==c&&d!==d}var r=typeof Object.is=="function"?Object.is:t,o=e.useSyncExternalStore,n=e.useRef,s=e.useEffect,a=e.useMemo,i=e.useDebugValue;return Md.useSyncExternalStoreWithSelector=function(c,d,p,u,f){var h=n(null);if(h.current===null){var g={hasValue:!1,value:null};h.current=g}else g=h.current;h=a(function(){function b(C){if(!v){if(v=!0,N=C,C=u(C),f!==void 0&&g.hasValue){var E=g.value;if(f(E,C))return x=E}return x=C}if(E=x,r(N,C))return E;var k=u(C);return f!==void 0&&f(E,k)?(N=C,E):(N=C,x=k)}var v=!1,N,x,w=p===void 0?null:p;return[function(){return b(d())},w===null?void 0:function(){return b(w())}]},[d,p,u,f]);var y=o(c,h[0],h[1]);return s(function(){g.hasValue=!0,g.value=y},[y]),i(y),y},Md}var Ld={};/**
193
194
  * @license React
194
195
  * use-sync-external-store-with-selector.development.js
195
196
  *
@@ -197,7 +198,7 @@ Take a look at the reducer(s) handling this action type: ${m.type}.
197
198
  *
198
199
  * This source code is licensed under the MIT license found in the
199
200
  * LICENSE file in the root directory of this source tree.
200
- */var Fm;function q1(){return Fm||(Fm=1,process.env.NODE_ENV!=="production"&&(function(){function e(c,d){return c===d&&(c!==0||1/c===1/d)||c!==c&&d!==d}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var t=D,r=typeof Object.is=="function"?Object.is:e,o=t.useSyncExternalStore,n=t.useRef,a=t.useEffect,s=t.useMemo,i=t.useDebugValue;Fc.useSyncExternalStoreWithSelector=function(c,d,f,u,h){var m=n(null);if(m.current===null){var g={hasValue:!1,value:null};m.current=g}else g=m.current;m=s(function(){function b(N){if(!C){if(C=!0,w=N,N=u(N),h!==void 0&&g.hasValue){var E=g.value;if(h(E,N))return x=E}return x=N}if(E=x,r(w,N))return E;var M=u(N);return h!==void 0&&h(E,M)?(w=N,E):(w=N,x=M)}var C=!1,w,x,S=f===void 0?null:f;return[function(){return b(d())},S===null?void 0:function(){return b(S())}]},[d,f,u,h]);var y=o(c,m[0],m[1]);return a(function(){g.hasValue=!0,g.value=y},[y]),i(y),y},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()),Fc}var $m;function Q1(){return $m||($m=1,process.env.NODE_ENV==="production"?Ks.exports=Y1():Ks.exports=q1()),Ks.exports}var K1=Q1();function X1(e){e()}function J1(){let e=null,t=null;return{clear(){e=null,t=null},notify(){X1(()=>{let r=e;for(;r;)r.callback(),r=r.next})},get(){const r=[];let o=e;for(;o;)r.push(o),o=o.next;return r},subscribe(r){let o=!0;const n=t={callback:r,next:null,prev:t};return n.prev?n.prev.next=n:e=n,function(){!o||e===null||(o=!1,n.next?n.next.prev=n.prev:t=n.prev,n.prev?n.prev.next=n.next:e=n.next)}}}}var Gm={notify(){},get:()=>[]};function Z1(e,t){let r,o=Gm,n=0,a=!1;function s(y){f();const b=o.subscribe(y);let C=!1;return()=>{C||(C=!0,b(),u())}}function i(){o.notify()}function c(){g.onStateChange&&g.onStateChange()}function d(){return a}function f(){n++,r||(r=e.subscribe(c),o=J1())}function u(){n--,r&&n===0&&(r(),r=void 0,o.clear(),o=Gm)}function h(){a||(a=!0,f())}function m(){a&&(a=!1,u())}const g={addNestedSub:s,notifyNestedSubs:i,handleChangeWrapper:c,isSubscribed:d,trySubscribe:h,tryUnsubscribe:m,getListeners:()=>o};return g}var R1=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",e_=R1(),t_=()=>typeof navigator<"u"&&navigator.product==="ReactNative",r_=t_(),o_=()=>e_||r_?v.useLayoutEffect:v.useEffect,n_=o_(),$c=Symbol.for("react-redux-context"),Gc=typeof globalThis<"u"?globalThis:{};function a_(){if(!v.createContext)return{};const e=Gc[$c]??(Gc[$c]=new Map);let t=e.get(v.createContext);return t||(t=v.createContext(null),process.env.NODE_ENV!=="production"&&(t.displayName="ReactRedux"),e.set(v.createContext,t)),t}var eo=a_();function s_(e){const{children:t,context:r,serverState:o,store:n}=e,a=v.useMemo(()=>{const c=Z1(n),d={store:n,subscription:c,getServerState:o?()=>o:void 0};if(process.env.NODE_ENV==="production")return d;{const{identityFunctionCheck:f="once",stabilityCheck:u="once"}=e;return Object.assign(d,{stabilityCheck:u,identityFunctionCheck:f})}},[n,o]),s=v.useMemo(()=>n.getState(),[n]);n_(()=>{const{subscription:c}=a;return c.onStateChange=c.notifyNestedSubs,c.trySubscribe(),s!==n.getState()&&c.notifyNestedSubs(),()=>{c.tryUnsubscribe(),c.onStateChange=void 0}},[a,s]);const i=r||eo;return v.createElement(i.Provider,{value:a},t)}var l_=s_;function Vc(e=eo){return function(){const r=v.useContext(e);if(process.env.NODE_ENV!=="production"&&!r)throw new Error("could not find react-redux context value; please ensure the component is wrapped in a <Provider>");return r}}var Vm=Vc();function zc(e=eo){const t=e===eo?Vm:Vc(e),r=()=>{const{store:o}=t();return o};return Object.assign(r,{withTypes:()=>r}),r}var i_=zc();function c_(e=eo){const t=e===eo?i_:zc(e),r=()=>t().dispatch;return Object.assign(r,{withTypes:()=>r}),r}var d_=(e,t)=>e===t;function u_(e=eo){const t=e===eo?Vm:Vc(e),r=(o,n={})=>{const{equalityFn:a=d_}=typeof n=="function"?{equalityFn:n}:n;if(process.env.NODE_ENV!=="production"){if(!o)throw new Error("You must pass a selector to useSelector");if(typeof o!="function")throw new Error("You must pass a function as a selector to useSelector");if(typeof a!="function")throw new Error("You must pass a function as an equality function to useSelector")}const s=t(),{store:i,subscription:c,getServerState:d}=s,f=v.useRef(!0),u=v.useCallback({[o.name](m){const g=o(m);if(process.env.NODE_ENV!=="production"){const{devModeChecks:y={}}=typeof n=="function"?{}:n,{identityFunctionCheck:b,stabilityCheck:C}=s,{identityFunctionCheck:w,stabilityCheck:x}={stabilityCheck:C,identityFunctionCheck:b,...y};if(x==="always"||x==="once"&&f.current){const S=o(m);if(!a(g,S)){let N;try{throw new Error}catch(E){({stack:N}=E)}console.warn("Selector "+(o.name||"unknown")+` returned a different result when called with the same parameters. This can lead to unnecessary rerenders.
201
- Selectors that return a new reference (such as an object or an array) should be memoized: https://redux.js.org/usage/deriving-data-selectors#optimizing-selectors-with-memoization`,{state:m,selected:g,selected2:S,stack:N})}}if((w==="always"||w==="once"&&f.current)&&g===m){let S;try{throw new Error}catch(N){({stack:S}=N)}console.warn("Selector "+(o.name||"unknown")+` returned the root state when called. This can lead to unnecessary rerenders.
202
- Selectors that return the entire state are almost certainly a mistake, as they will cause a rerender whenever *anything* in state changes.`,{stack:S})}f.current&&(f.current=!1)}return g}}[o.name],[o]),h=K1.useSyncExternalStoreWithSelector(c.addNestedSub,i.getState,d||i.getState,u,a);return v.useDebugValue(h),h};return Object.assign(r,{withTypes:()=>r}),r}const lr=e=>v.createElement("button",{type:"button","data-testid":e.testID,disabled:e.disabled&&!e.disabledTranslation,className:e.className,title:e.disabledTranslation&&e.disabled?e.disabledTranslation.title:e.title,onClick:t=>e.handleOnClick(t)},e.disabledTranslation&&e.disabled?e.disabledTranslation.label:e.label),p_=D.forwardRef((e,t)=>v.createElement("span",{...e.dragHandleAttributes,"data-testid":e.testID,ref:t,className:e.className,title:e.title},e.label)),f_=e=>{const{component:t,...r}=e,o=Oe(r.schema.suppressStandardClassnames||me.betweenRules,r.schema.classNames.betweenRules);return v.createElement("div",{className:o,"data-testid":ge.inlineCombinator},v.createElement(t,{...r,testID:ge.combinators}))},zm={name:"",value:"",label:""},Bm=e=>["atleast","atmost","exactly"].includes(No(e)??""),Um=[],h_=e=>{const{match:t,options:r,title:o,className:n,disabled:a,testID:s,schema:i,thresholdPlaceholder:c,selectorComponent:d=e.schema.controls.valueSelector,numericEditorComponent:f=e.schema.controls.valueEditor}=e,{thresholdNum:u,thresholdRule:h,thresholdSchema:m,handleChangeMode:g,handleChangeThreshold:y}=m_(e),b=D.useMemo(()=>c?{...zm,placeholder:c}:zm,[c]);return v.createElement(v.Fragment,null,v.createElement(d,{schema:i,testID:s,className:n,title:o,handleOnChange:g,disabled:a,value:t.mode,options:r,multiple:!1,listsAsArrays:!1,path:Um,level:0}),Bm(t.mode)&&v.createElement(f,{skipHook:!0,testID:s,inputType:"number",title:o,className:n,disabled:a,handleOnChange:y,field:"",operator:"",value:u,valueSource:"value",fieldData:b,schema:m,path:Um,level:0,rule:h}))},m_=e=>{const{match:t,handleOnChange:r}=e,o=v.useMemo(()=>typeof t.threshold=="number"?Math.max(0,t.threshold):1,[t.threshold]);return{thresholdNum:o,thresholdRule:v.useMemo(()=>({field:"",operator:"=",value:o}),[o]),thresholdSchema:v.useMemo(()=>({...e.schema,parseNumbers:!0}),[e.schema]),handleChangeMode:D.useCallback(n=>{Bm(n)&&typeof t.threshold!="number"?r({...t,mode:n,threshold:1}):r({...t,mode:n})},[r,t]),handleChangeThreshold:D.useCallback(n=>{r({...t,threshold:Ds(n,{parseNumbers:!0})})},[r,t])}},g_=e=>{const t=v.useId();return v.createElement("label",{"data-testid":e.testID,className:e.className,title:e.title,htmlFor:t},v.createElement("input",{id:t,type:"checkbox",onChange:r=>e.handleOnChange(r.target.checked),checked:!!e.checked,disabled:e.disabled}),e.label)},Nt={errorInvalidIndependentCombinatorsProp:"QueryBuilder was rendered with a truthy independentCombinators prop. This prop is deprecated and unnecessary. Furthermore, the initial query/defaultQuery prop was of type RuleGroupType instead of type RuleGroupIC. More info: https://react-querybuilder.js.org/docs/components/querybuilder#independent-combinators",errorUnnecessaryIndependentCombinatorsProp:"QueryBuilder was rendered with the deprecated and unnecessary independentCombinators prop. To use independent combinators, make sure the query/defaultQuery prop is of type RuleGroupIC when the component mounts. More info: https://react-querybuilder.js.org/docs/components/querybuilder#independent-combinators",errorDeprecatedRuleGroupProps:"A custom RuleGroup component has rendered a standard RuleGroup component with deprecated props. The combinator, not, and rules props should not be used. Instead, the full group object should be passed as the ruleGroup prop.",errorDeprecatedRuleProps:"A custom RuleGroup component has rendered a standard Rule component with deprecated props. The field, operator, value, and valueSource props should not be used. Instead, the full rule object should be passed as the rule prop.",errorBothQueryDefaultQuery:"QueryBuilder was rendered with both query and defaultQuery props. QueryBuilder must be either controlled or uncontrolled (specify either the query prop, or the defaultQuery prop, but not both). Decide between using a controlled or uncontrolled query builder and remove one of these props. More info: https://reactjs.org/link/controlled-components",errorUncontrolledToControlled:"QueryBuilder is changing from an uncontrolled component to be controlled. This is likely caused by the query changing from undefined to a defined value, which should not happen. Decide between using a controlled or uncontrolled query builder for the lifetime of the component. More info: https://reactjs.org/link/controlled-components",errorControlledToUncontrolled:"QueryBuilder is changing from a controlled component to be uncontrolled. This is likely caused by the query changing from defined to undefined, which should not happen. Decide between using a controlled or uncontrolled query builder for the lifetime of the component. More info: https://reactjs.org/link/controlled-components",errorEnabledDndWithoutReactDnD:"QueryBuilder was rendered with the enableDragAndDrop prop set to true, but either react-dnd was not detected or one of react-dnd-html5-backend or react-dnd-touch-backend was not detected. To enable drag-and-drop functionality, install react-dnd and one of the backend packages and wrap QueryBuilder in QueryBuilderDnD from @react-querybuilder/dnd.",errorDeprecatedDebugImport:"Importing from react-querybuilder/debug is deprecated. To enable Redux DevTools for React Query Builder's internal store, set globalThis.__RQB_DEVTOOLS__ = true."},Bn=Om({name:"queries",initialState:{},reducers:{setQueryState:(e,{payload:{qbId:t,query:r}})=>{e[t]=r}},selectors:{getQuerySelectorById:(e,t)=>e[t]}}),Wm=v.createContext(null),Bc=Om({name:"warnings",initialState:{[Nt.errorInvalidIndependentCombinatorsProp]:!1,[Nt.errorUnnecessaryIndependentCombinatorsProp]:!1,[Nt.errorDeprecatedRuleGroupProps]:!1,[Nt.errorDeprecatedRuleProps]:!1,[Nt.errorBothQueryDefaultQuery]:!1,[Nt.errorUncontrolledToControlled]:!1,[Nt.errorControlledToUncontrolled]:!1,[Nt.errorEnabledDndWithoutReactDnD]:!1,[Nt.errorDeprecatedDebugImport]:!1},reducers:{rqbWarn:(e,{payload:t})=>{e[t]||(console.error(t),e[t]=!0)}}}),Hm=j1(Bn,Bc).withLazyLoadedSlices(),b_=e=>c_(e),y_=e=>zc(e),v_=e=>u_(e),x_=e=>({useRQB_INTERNAL_QueryBuilderDispatch:b_(e),useRQB_INTERNAL_QueryBuilderStore:y_(e),useRQB_INTERNAL_QueryBuilderSelector:v_(e)}),Uc=({payload:e,onQueryChange:t})=>r=>{r(Bn.actions.setQueryState(e)),typeof t=="function"&&t(e.query)},Wc=x_(Wm),Hc=Wc.useRQB_INTERNAL_QueryBuilderDispatch,w_=Wc.useRQB_INTERNAL_QueryBuilderStore,C_=Wc.useRQB_INTERNAL_QueryBuilderSelector,{rqbWarn:S_}=Bc.actions,Ao=e=>t=>{setTimeout(()=>t(S_(e)))},N_={reducer:Hm,preloadedState:{queries:Bn.getInitialState(),warnings:Bc.getInitialState()},middleware:e=>e({serializableCheck:{ignoredActions:[Bn.actions.setQueryState.type],ignoredPaths:[/^queries\b.*\.rules\.\d+\.value$/]}})},E_=e=>{const[t,r]=D.useState(e),[o,n]=D.useState(null);return e!==t&&(n(t),r(e)),o},k_=e=>{const t=Hc(),{defaultQuery:r,queryProp:o}=e,n=E_(!!o);process.env.NODE_ENV!=="production"&&(o&&r?t(Ao(Nt.errorBothQueryDefaultQuery)):n===!0&&!o&&r?t(Ao(Nt.errorControlledToUncontrolled)):n===!1&&o&&!r&&t(Ao(Nt.errorUncontrolledToControlled)))};function jc(e,t,r){const o=Hc();process.env.NODE_ENV!=="production"&&t&&(e==="independentCombinators"&&(r==="invalid"&&o(Ao(Nt.errorInvalidIndependentCombinatorsProp)),r==="unnecessary"&&o(Ao(Nt.errorUnnecessaryIndependentCombinatorsProp))),e==="rule"&&o(Ao(Nt.errorDeprecatedRuleProps)),e==="ruleGroup"&&o(Ao(Nt.errorDeprecatedRuleGroupProps)))}const jm=e=>{const{optionList:t,optionsMap:r,defaultOption:o}=D.useMemo(()=>Xo({placeholder:e.translations.fields,optionList:e.fields,autoSelectOption:e.autoSelectField,baseOption:e.baseField}),[e.autoSelectField,e.baseField,e.fields,e.translations.fields]);return{fields:t,fieldMap:r,defaultField:o}},__=e=>{const t=S1({...N_,devTools:e?{name:"React Query Builder"}:!1});return t.addSlice=r=>{Hm.inject(r),t.dispatch({type:crypto.randomUUID().slice(0,8),meta:`Initializing state for slice "${r.name}"`})},t};let Yc=null;function Ym(e){return Yc||(Yc=__(globalThis==null?void 0:globalThis.__RQB_DEVTOOLS__)),Yc}const To=e=>t=>Bn.selectors.getQuerySelectorById({queries:t.queries},e),D_=(e,t)=>{const r=v.useContext(qc);return C_(e,t)??(r==null?void 0:r.initialQuery)},A_={},T_={},I_=[],P_={},M_=()=>null,qm=()=>"",Io=()=>!0,O_=(...e)=>{console.log(...e)};function L_(e,t){const{query:r,defaultQuery:o,getValueEditorSeparator:n=M_,getRuleClassname:a=qm,getRuleGroupClassname:s=qm,onAddRule:i=Io,onAddGroup:c=Io,onMoveRule:d=Io,onMoveGroup:f=Io,onGroupRule:u=Io,onGroupGroup:h=Io,onRemove:m=Io,onQueryChange:g,showCombinatorsBetweenRules:y=!1,showNotToggle:b=!1,showShiftActions:C=!1,showCloneButtons:w=!1,showLockButtons:x=!1,showMuteButtons:S=!1,suppressStandardClassnames:N=!1,resetOnFieldChange:E=!0,resetOnOperatorChange:M=!1,autoSelectField:k=!0,autoSelectOperator:T=!0,autoSelectValue:A=!0,addRuleToNewGroups:L=!1,listsAsArrays:O=!1,parseNumbers:F=!1,disabled:V=!1,validator:re,onLog:K=O_,idGenerator:H,accessibleDescriptionGenerator:ee=hk}=e,{qbId:G,rqbContext:z,fields:Ce,fieldMap:$,combinators:q,getParameters:xe,getOperatorsMain:oe,getMatchModesMain:he,getRuleDefaultOperator:Y,getSubQueryBuilderPropsMain:ce,getValueEditorTypeMain:te,getValueSourcesMain:Ne,getValuesMain:be,getRuleDefaultValue:ue,getInputTypeMain:X,createRule:ne,createRuleGroup:pe}=t,{controlClassnames:Se,controlElements:je,debugMode:Je,enableDragAndDrop:Re,enableMountQueryChange:Ye,translations:ye}=z,rt=!!y,Le=!!b,Ge=!!C,Ue=!!w,Ee=!!x,ct=!!S,et=!!E,_r=!!M,Yt=!!k,_=!!T,I=!!A,P=!!L,W=!!O,U=!!N,J=(e.maxLevels??0)>0?Number(e.maxLevels):1/0,B=D.useCallback((...fe)=>{Je&&K(...fe)},[Je,K]);k_({defaultQuery:o,queryProp:r});const Q=w_(),ie=Hc(),De=D.useMemo(()=>To(G),[G]),Ve=D_(De),Dt=D.useCallback(()=>De(Q.getState()),[Q,De]),_e=D.useMemo(()=>pe(),[pe]),Ke=r??Ve??o??_e,ot=Ke.id?Ke:As(Ke,{idGenerator:H}),[dr]=D.useState(ot),rn=D.useMemo(()=>({...z,initialQuery:dr}),[z,dr]);D.useEffect(()=>{r&&!Object.is(r,Ve)&&ie(Uc({payload:{qbId:G,query:r},onQueryChange:void 0}))},[r,G,Ve,ie]);const er=D.useMemo(()=>Mn(ot),[ot]),on=!!e.independentCombinators&&!er;jc("independentCombinators",on||!on&&(e.independentCombinators??"not present")!=="not present",on?"invalid":"unnecessary");const qn=D.useRef(!1);D.useEffect(()=>{qn.current||(qn.current=!0,ie(Uc({payload:{qbId:G,query:ot},onQueryChange:Ye&&typeof g=="function"?g:void 0})))},[Ye,g,G,ie,ot]);const At=D.useCallback(fe=>{ie(Uc({payload:{qbId:G,query:fe},onQueryChange:g}))},[g,G,ie]),nn=Array.isArray(V)&&V||I_,mt=V===!0,fl=ot.disabled||nn.some(fe=>fe.length===0),Qn=D.useCallback((fe,Te,Fe)=>{const Me=To(G)(Q.getState());if(!Me)return;if(Zo(Te,Me)||mt){B({qbId:G,type:ht.parentPathDisabled,rule:fe,parentPath:Te,query:Me});return}const Pe=i(fe,Te,Me,Fe);if(!Pe){B({qbId:G,type:ht.onAddRuleFalse,rule:fe,parentPath:Te,query:Me});return}const wt=Pe===!0?fe:Pe,Pt=Xh(Me,wt,Te,{combinators:q,combinatorPreceding:wt.combinatorPreceding??void 0,idGenerator:H});B({qbId:G,type:ht.add,query:Me,newQuery:Pt,newRule:wt,parentPath:Te}),At(Pt)},[q,At,H,B,i,G,Q,mt]),Kn=D.useCallback((fe,Te,Fe)=>{if(Te.length>=J)return;const Me=To(G)(Q.getState());if(!Me)return;if(Zo(Te,Me)||mt){B({qbId:G,type:ht.parentPathDisabled,ruleGroup:fe,parentPath:Te,query:Me});return}const Pe=c(fe,Te,Me,Fe);if(!Pe){B({qbId:G,type:ht.onAddGroupFalse,ruleGroup:fe,parentPath:Te,query:Me});return}const wt=Pe===!0?fe:Pe,Pt=Xh(Me,wt,Te,{combinators:q,combinatorPreceding:wt.combinatorPreceding??void 0,idGenerator:H});B({qbId:G,type:ht.add,query:Me,newQuery:Pt,newGroup:wt,parentPath:Te}),At(Pt)},[q,At,H,B,J,c,G,Q,mt]),Xn=D.useCallback((fe,Te,Fe)=>{const Me=To(G)(Q.getState());if(!Me)return;if(Zo(Fe,Me)&&fe!=="disabled"||mt){B({qbId:G,type:ht.pathDisabled,path:Fe,prop:fe,value:Te,query:Me});return}const Pe=_k(Me,fe,Te,Fe,{resetOnFieldChange:et,resetOnOperatorChange:_r,getRuleDefaultOperator:Y,getValueSources:Ne,getRuleDefaultValue:ue,getMatchModes:he});B({qbId:G,type:ht.update,query:Me,newQuery:Pe,prop:fe,value:Te,path:Fe}),At(Pe)},[At,he,Y,ue,Ne,B,G,Q,mt,et,_r]),an=D.useCallback((fe,Te)=>{const Fe=To(G)(Q.getState());if(!Fe)return;if(Zo(fe,Fe)||mt){B({qbId:G,type:ht.pathDisabled,path:fe,query:Fe});return}const Me=ut(fe,Fe);if(Me)if(m(Me,fe,Fe,Te)){const Pe=Ak(Fe,fe);B({qbId:G,type:ht.remove,query:Fe,newQuery:Pe,path:fe,ruleOrGroup:Me}),At(Pe)}else B({qbId:G,type:ht.onRemoveFalse,ruleOrGroup:Me,path:fe,query:Fe})},[At,B,m,G,Q,mt]),Jn=D.useCallback((fe,Te,Fe,Me)=>{const Pe=To(G)(Q.getState());if(!Pe)return;if(Zo(fe,Pe)||mt){B({qbId:G,type:ht.pathDisabled,oldPath:fe,newPath:Te,query:Pe});return}const wt=Ik(Pe,fe,Te,{clone:Fe,combinators:q,idGenerator:H}),Pt=ut(fe,Pe),oo=Xe(Pt),Dr=(oo?f:d)(Pt,fe,Te,Pe,wt,{clone:Fe,combinators:q},Me);if(!Dr){B({qbId:G,type:oo?ht.onMoveGroupFalse:ht.onMoveRuleFalse,ruleOrGroup:Pt,oldPath:fe,newPath:Te,clone:Fe,query:Pe,nextQuery:wt});return}const no=Xe(Dr)?Dr:wt;B({qbId:G,type:ht.move,query:Pe,newQuery:no,oldPath:fe,newPath:Te,clone:Fe}),At(no)},[q,At,H,B,f,d,G,Q,mt]),Zn=D.useCallback((fe,Te,Fe,Me)=>{const Pe=To(G)(Q.getState());if(!Pe)return;if(Zo(fe,Pe)||mt){B({qbId:G,type:ht.pathDisabled,sourcePath:fe,targetPath:Te,query:Pe});return}const wt=Mk(Pe,fe,Te,{clone:Fe,combinators:q,idGenerator:H}),Pt=ut(fe,Pe),oo=Xe(Pt),Dr=(oo?h:u)(Pt,fe,Te,Pe,wt,{clone:Fe,combinators:q},Me);if(!Dr){B({qbId:G,type:oo?ht.onGroupGroupFalse:ht.onGroupRuleFalse,ruleOrGroup:Pt,sourcePath:fe,targetPath:Te,clone:Fe,query:Pe,nextQuery:wt});return}const no=Xe(Dr)?Dr:wt;B({qbId:G,type:ht.group,query:Pe,newQuery:no,sourcePath:fe,targetPath:Te,clone:Fe}),At(no)},[q,At,H,B,h,u,G,Q,mt]),{validationResult:tr,validationMap:Rn}=D.useMemo(()=>{const fe=typeof re=="function"&&ot?re(ot):A_;return{validationResult:fe,validationMap:typeof fe=="boolean"?T_:fe}},[ot,re]),hl=Re?"enabled":"disabled",ml=er||rt?"enabled":"disabled",gl=D.useMemo(()=>typeof ot.combinator=="string"?{combinator:ot.combinator}:P_,[ot.combinator]),bl=D.useMemo(()=>Oe(U||me.queryBuilder,Oe(Se.queryBuilder),mt&&Se.disabled,typeof tr=="boolean"&&tr&&Se.valid,typeof tr=="boolean"&&!tr&&Se.invalid,U||{[me.disabled]:mt,[me.valid]:typeof tr=="boolean"&&tr,[me.invalid]:typeof tr=="boolean"&&!tr}),[Se.disabled,Se.invalid,Se.queryBuilder,Se.valid,mt,U,tr]),ea=D.useCallback(fe=>pe(fe??er),[pe,er]),yl=D.useMemo(()=>({addRuleToNewGroups:P,accessibleDescriptionGenerator:ee,autoSelectField:Yt,autoSelectOperator:_,autoSelectValue:I,classNames:Se,combinators:q,getParameters:xe,controls:je,createRule:ne,createRuleGroup:ea,disabledPaths:nn,enableDragAndDrop:Re,fieldMap:$,fields:Ce,dispatchQuery:At,getQuery:Dt,getInputType:X,getOperators:oe,getMatchModes:he,getRuleClassname:a,getRuleDefaultOperator:Y,getRuleDefaultValue:ue,getRuleGroupClassname:s,getSubQueryBuilderProps:ce,getValueEditorSeparator:n,getValueEditorType:te,getValues:be,getValueSources:Ne,independentCombinators:er,listsAsArrays:W,maxLevels:J,parseNumbers:F,qbId:G,resetOnFieldChange:et,resetOnOperatorChange:_r,showCloneButtons:Ue,showCombinatorsBetweenRules:rt,showLockButtons:Ee,showMuteButtons:ct,showNotToggle:Le,showShiftActions:Ge,suppressStandardClassnames:U,validationMap:Rn}),[ee,P,Yt,_,I,q,Se,je,ne,ea,nn,At,Re,$,Ce,X,oe,he,Dt,a,Y,ue,s,ce,n,te,be,Ne,xe,er,W,J,F,G,et,_r,Ue,rt,Ee,ct,Le,Ge,U,Rn]);return{actions:D.useMemo(()=>({moveRule:Jn,onGroupAdd:Kn,onGroupRemove:an,onPropChange:Xn,onRuleAdd:Qn,onRuleRemove:an,groupRule:Zn}),[Zn,Jn,Kn,Xn,Qn,an]),rootGroup:ot,rootGroupDisabled:fl,queryDisabled:mt,rqbContext:rn,schema:yl,translations:ye,wrapperClassName:bl,dndEnabledAttr:hl,inlineCombinatorsAttr:ml,combinatorPropObject:gl}}const F_=e=>{const[t]=D.useState(Xt),{fields:r,baseField:o,operators:n,baseOperator:a,combinators:s,baseCombinator:i,getParameters:c,translations:d,enableMountQueryChange:f=!0,controlClassnames:u,controlElements:h,getDefaultField:m,getDefaultOperator:g,getDefaultValue:y,getMatchModes:b,getOperators:C,getSubQueryBuilderProps:w,getValueEditorType:x,getValueSources:S,getInputType:N,getValues:E,autoSelectField:M=!0,autoSelectOperator:k=!0,autoSelectValue:T=!0,addRuleToNewGroups:A=!1,enableDragAndDrop:L,listsAsArrays:O=!1,debugMode:F=!1,idGenerator:V=Xt}=e,[re]=D.useState(e.query??e.defaultQuery),K=K_({controlClassnames:u,controlElements:h,debugMode:F,enableDragAndDrop:L,enableMountQueryChange:f,translations:d,initialQuery:re,qbId:t,finalize:!0}),{translations:H}=K,{fields:ee,fieldMap:G}=jm({fields:r,baseField:o,autoSelectField:M,translations:H}),{optionList:z}=D.useMemo(()=>Xo({optionList:s??In,labelMap:ak,baseOption:i,autoSelectOption:!0}),[i,s]),Ce=D.useCallback((X,ne,pe)=>Xo({optionList:(c==null?void 0:c(X,ne,pe))??[],autoSelectOption:!0}).optionList,[c]),{optionList:$}=D.useMemo(()=>Xo({optionList:n??sk,placeholder:H.operators,labelMap:Th,baseOption:a,autoSelectOption:k}),[k,a,n,H.operators]),q=D.useCallback((X,{fieldData:ne})=>Xo({optionList:(ne==null?void 0:ne.operators)??(C==null?void 0:C(X,{fieldData:ne}))??$,placeholder:H.operators,baseOption:a,labelMap:Th,autoSelectOption:k}).optionList,[k,a,C,$,H.operators]),xe=D.useCallback(X=>{const ne=G[X];return ne!=null&&ne.defaultOperator?ne.defaultOperator:g?typeof g=="function"?g(X,{fieldData:ne}):g:xt(q(X,{fieldData:ne})??[])??""},[G,g,q]),oe=D.useCallback((X,ne,{fieldData:pe})=>pe.valueEditorType?typeof pe.valueEditorType=="function"?pe.valueEditorType(ne):pe.valueEditorType:(x==null?void 0:x(X,ne,{fieldData:pe}))??"text",[x]),he=D.useCallback((X,ne,pe)=>Yh(G[X],ne,S),[G,S]),Y=D.useCallback((X,ne)=>gk(G[X],b),[G,b]),ce=D.useCallback((X,ne)=>(w==null?void 0:w(X,ne))??{},[w]),te=D.useCallback((X,ne,{fieldData:pe})=>Xo({optionList:(pe==null?void 0:pe.values)??(E==null?void 0:E(X,ne,{fieldData:pe}))??[],placeholder:H.values,autoSelectOption:T}).optionList,[T,E,H.values]),Ne=D.useCallback(X=>bk(X,{fieldData:G[X.field]??{},fields:ee,getParameters:(ne,pe,Se)=>Ce(ne,pe,Se),listsAsArrays:O,getValueEditorType:(ne,pe,Se)=>oe(ne,pe,Se),getValues:(ne,pe,Se)=>te(ne,pe,Se),getDefaultValue:y&&((ne,pe)=>y(ne,pe))}),[G,ee,y,oe,te,O,Ce]),be=D.useCallback((X,ne,{fieldData:pe})=>{if(N){const Se=N(X,ne,{fieldData:pe});if(Se)return Se}return"text"},[N]),ue=D.useCallback(()=>{let X="";const ne=ee;/* v8 ignore else -- @preserve */if((ne==null?void 0:ne.length)>0&&ne[0]){const Ye=xt(ne);/* v8 ignore else -- @preserve */Ye&&(X=Ye)}if(m)if(typeof m=="function"){const Ye=m(ne);/* v8 ignore else -- @preserve */Ye&&(X=Ye)}else X=m;const pe=xe(X),Se=xt(he(X,pe,{fieldData:Ko(ne,X)}))??"value",je=xt(Y(X,{fieldData:Ko(ne,X)})),Je={id:V(),field:X,operator:pe,valueSource:Se,value:"",...je?{match:{mode:je,threshold:1}}:null},Re=Ne(Je);return{...Je,value:Re}},[ee,m,Y,xe,Ne,he,V]);return{qbId:t,rqbContext:K,fields:ee,fieldMap:G,combinators:z,getParameters:Ce,getMatchModesMain:Y,getOperatorsMain:q,getRuleDefaultOperator:xe,getSubQueryBuilderPropsMain:ce,getValueEditorTypeMain:oe,getValueSourcesMain:he,getValuesMain:te,getRuleDefaultValue:Ne,getInputTypeMain:be,createRule:ue,createRuleGroup:D.useCallback(X=>X?{id:V(),rules:A?[ue()]:[],not:!1}:{id:V(),rules:A?[ue()]:[],combinator:xt(z)??"",not:!1},[A,z,ue,V])}},Qm=e=>L_(e,F_(e)),qc=D.createContext({}),$_=v.memo(function(t){const r=Km(t),{previewRef:o,dropRef:n,schema:{controls:{ruleGroupBodyElements:a,ruleGroupHeaderElements:s}}}=r,i=st(r.addRule),c=st(r.addGroup),d=st(r.cloneGroup),f=st(r.toggleLockGroup),u=st(r.toggleMuteGroup),h=st(r.removeGroup),m=st(r.shiftGroupUp),g=st(r.shiftGroupDown),y=D.useMemo(()=>({addRule:i,addGroup:c,cloneGroup:d,toggleLockGroup:f,toggleMuteGroup:u,removeGroup:h,shiftGroupUp:m,shiftGroupDown:g}),[i,c,d,f,u,h,m,g]);return v.createElement("div",{ref:o,title:r.accessibleDescription,className:r.outerClassName,"data-testid":ge.ruleGroup,"data-not":r.ruleGroup.not?"true":void 0,"data-dragmonitorid":r.dragMonitorId,"data-dropmonitorid":r.dropMonitorId,"data-rule-group-id":r.id,"data-level":r.path.length,"data-path":JSON.stringify(r.path)},v.createElement("div",{ref:n,className:r.classNames.header},v.createElement(s,{...r,...y})),v.createElement("div",{className:r.classNames.body},v.createElement(a,{...r,...y})))}),G_=v.memo(function(t){const{dragRef:r,schema:{controls:{shiftActions:o,dragHandle:n,combinatorSelector:a,notToggle:s,addRuleAction:i,addGroupAction:c,cloneGroupAction:d,lockGroupAction:f,muteGroupAction:u,removeGroupAction:h}}}=t,m=D.useMemo(()=>({level:t.path.length,path:t.path,disabled:t.disabled,context:t.context,validation:t.validationResult,schema:t.schema}),[t.path,t.disabled,t.context,t.validationResult,t.schema]),g=D.useMemo(()=>t.schema.showShiftActions?{shiftUp:t.translations.shiftActionUp.title,shiftDown:t.translations.shiftActionDown.title}:void 0,[t.schema.showShiftActions,t.translations]),y=D.useMemo(()=>t.schema.showShiftActions?{shiftUp:t.translations.shiftActionUp.label,shiftDown:t.translations.shiftActionDown.label}:void 0,[t.schema.showShiftActions,t.translations]);return v.createElement(D.Fragment,null,t.schema.showShiftActions&&t.path.length>0&&v.createElement(o,{key:ge.shiftActions,...m,testID:ge.shiftActions,titles:g,labels:y,className:t.classNames.shiftActions,shiftUp:t.shiftGroupUp,shiftDown:t.shiftGroupDown,shiftUpDisabled:t.shiftUpDisabled,shiftDownDisabled:t.shiftDownDisabled,ruleOrGroup:t.ruleGroup}),t.path.length>0&&t.schema.enableDragAndDrop&&v.createElement(n,{key:ge.dragHandle,...m,testID:ge.dragHandle,ref:r,title:t.translations.dragHandle.title,label:t.translations.dragHandle.label,className:t.classNames.dragHandle,dragHandleAttributes:t.dragHandleAttributes,ruleOrGroup:t.ruleGroup}),!t.schema.showCombinatorsBetweenRules&&!t.schema.independentCombinators&&v.createElement(a,{key:ge.combinators,...m,testID:ge.combinators,options:t.schema.combinators,value:t.combinator,title:t.translations.combinators.title,className:t.classNames.combinators,handleOnChange:t.onCombinatorChange,rules:t.ruleGroup.rules,ruleGroup:t.ruleGroup}),t.schema.showNotToggle&&v.createElement(s,{key:ge.notToggle,...m,testID:ge.notToggle,className:t.classNames.notToggle,title:t.translations.notToggle.title,label:t.translations.notToggle.label,checked:t.ruleGroup.not,handleOnChange:t.onNotToggleChange,ruleGroup:t.ruleGroup}),v.createElement(i,{key:ge.addRule,...m,testID:ge.addRule,label:t.translations.addRule.label,title:t.translations.addRule.title,className:t.classNames.addRule,handleOnClick:t.addRule,rules:t.ruleGroup.rules,ruleOrGroup:t.ruleGroup}),t.schema.maxLevels>t.path.length&&v.createElement(c,{key:ge.addGroup,...m,testID:ge.addGroup,label:t.translations.addGroup.label,title:t.translations.addGroup.title,className:t.classNames.addGroup,handleOnClick:t.addGroup,rules:t.ruleGroup.rules,ruleOrGroup:t.ruleGroup}),t.schema.showCloneButtons&&t.path.length>0&&v.createElement(d,{key:ge.cloneGroup,...m,testID:ge.cloneGroup,label:t.translations.cloneRuleGroup.label,title:t.translations.cloneRuleGroup.title,className:t.classNames.cloneGroup,handleOnClick:t.cloneGroup,rules:t.ruleGroup.rules,ruleOrGroup:t.ruleGroup}),t.schema.showLockButtons&&v.createElement(f,{key:ge.lockGroup,...m,testID:ge.lockGroup,label:t.translations.lockGroup.label,title:t.translations.lockGroup.title,className:t.classNames.lockGroup,handleOnClick:t.toggleLockGroup,rules:t.ruleGroup.rules,disabledTranslation:t.parentDisabled?void 0:t.translations.lockGroupDisabled,ruleOrGroup:t.ruleGroup}),t.schema.showMuteButtons&&v.createElement(u,{key:ge.muteGroup,...m,testID:ge.muteGroup,label:t.ruleGroup.muted?t.translations.unmuteGroup.label:t.translations.muteGroup.label,title:t.ruleGroup.muted?t.translations.unmuteGroup.title:t.translations.muteGroup.title,className:t.classNames.muteGroup,handleOnClick:t.toggleMuteGroup,rules:t.ruleGroup.rules,ruleOrGroup:t.ruleGroup}),t.path.length>0&&v.createElement(h,{key:ge.removeGroup,...m,testID:ge.removeGroup,label:t.translations.removeGroup.label,title:t.translations.removeGroup.title,className:t.classNames.removeGroup,handleOnClick:t.removeGroup,rules:t.ruleGroup.rules,ruleOrGroup:t.ruleGroup}))}),V_=v.memo(function(t){const{schema:{controls:{combinatorSelector:r,inlineCombinator:o,ruleGroup:n,rule:a}}}=t;return v.createElement(D.Fragment,null,t.ruleGroup.rules.map((s,i,{length:c})=>{const d=t.pathsMemo[i],f=d.path,u=d.disabled||typeof s!="string"&&s.disabled,h=Eo([0],f),m=t.path.length===0&&i===c-1,g=typeof s=="string"?[...f,s].join("-"):s.id;return v.createElement(D.Fragment,{key:g},i>0&&!t.schema.independentCombinators&&t.schema.showCombinatorsBetweenRules&&v.createElement(o,{key:ge.inlineCombinator,options:t.schema.combinators,value:t.combinator,title:t.translations.combinators.title,className:t.classNames.combinators,handleOnChange:t.onCombinatorChange,rules:t.ruleGroup.rules,level:t.path.length,context:t.context,validation:t.validationResult,component:r,path:f,disabled:t.disabled,schema:t.schema,ruleGroup:t.ruleGroup}),typeof s=="string"?v.createElement(o,{key:`${ge.inlineCombinator}-independent`,options:t.schema.combinators,value:s,title:t.translations.combinators.title,className:t.classNames.combinators,handleOnChange:y=>t.onIndependentCombinatorChange(y,i),rules:t.ruleGroup.rules,level:t.path.length,context:t.context,validation:t.validationResult,component:r,path:f,disabled:u,schema:t.schema,ruleGroup:t.ruleGroup}):Xe(s)?v.createElement(n,{key:ge.ruleGroup,id:s.id,schema:t.schema,actions:t.actions,path:f,translations:t.translations,ruleGroup:s,rules:s.rules,combinator:Pn(s)?s.combinator:void 0,not:!!s.not,disabled:u,parentDisabled:t.parentDisabled||t.disabled,parentMuted:t.parentMuted||t.muted,shiftUpDisabled:h,shiftDownDisabled:m,context:t.context}):v.createElement(a,{key:ge.rule,id:s.id,rule:s,field:s.field,operator:s.operator,value:s.value,valueSource:s.valueSource,schema:t.schema,actions:t.actions,path:f,disabled:u,parentDisabled:t.parentDisabled||t.disabled,parentMuted:t.parentMuted||t.muted,translations:t.translations,shiftUpDisabled:h,shiftDownDisabled:m,context:t.context}))}))}),Km=e=>{const{id:t,path:r,ruleGroup:o,schema:{qbId:n,accessibleDescriptionGenerator:a,classNames:s,combinators:i,createRule:c,createRuleGroup:d,disabledPaths:f,independentCombinators:u,validationMap:h,enableDragAndDrop:m,getRuleGroupClassname:g,suppressStandardClassnames:y},actions:{onGroupAdd:b,onGroupRemove:C,onPropChange:w,onRuleAdd:x,moveRule:S},disabled:N,parentDisabled:E,parentMuted:M,shiftUpDisabled:k,shiftDownDisabled:T,combinator:A,rules:L,not:O,dropEffect:F="move",groupItems:V=!1,dragMonitorId:re="",dropMonitorId:K="",previewRef:H=null,dragRef:ee=null,dropRef:G=null,isDragging:z=!1,isOver:Ce=!1,dropNotAllowed:$=!1}=e;jc("ruleGroup",!o),Jm(m,!!(re||K||H||ee||G));const q=!!E||!!N,xe=!!M||!!(o!=null&&o.muted),oe=D.useMemo(()=>o&&Pn(o)?o.combinator:o?xt(i):A??xt(i),[A,i,o]),he=D.useMemo(()=>{if(o){if(o.combinator===oe||u)return o;const Ee=structuredClone(o);return Ee.combinator=oe,Ee}return{rules:L,not:O}},[oe,u,O,o,L]),Y=D.useMemo(()=>({header:Oe(y||me.header,s.header,Ce&&F==="copy"&&s.dndCopy,$&&s.dndDropNotAllowed,y||{[me.dndOver]:Ce,[me.dndCopy]:Ce&&F==="copy",[me.dndDropNotAllowed]:$}),shiftActions:Oe(y||me.shiftActions,s.shiftActions),dragHandle:Oe(y||me.dragHandle,s.dragHandle),combinators:Oe(y||me.combinators,s.valueSelector,s.combinators),notToggle:Oe(y||me.notToggle,s.notToggle),addRule:Oe(y||me.addRule,s.actionElement,s.addRule),addGroup:Oe(y||me.addGroup,s.actionElement,s.addGroup),cloneGroup:Oe(y||me.cloneGroup,s.actionElement,s.cloneGroup),lockGroup:Oe(y||me.lockGroup,s.actionElement,s.lockGroup),muteGroup:Oe(y||me.muteGroup,s.actionElement,s.muteGroup),removeGroup:Oe(y||me.removeGroup,s.actionElement,s.removeGroup),body:Oe(y||me.body,s.body)}),[s.actionElement,s.addGroup,s.addRule,s.body,s.cloneGroup,s.combinators,s.dndCopy,s.dndDropNotAllowed,s.dragHandle,s.header,s.lockGroup,s.muteGroup,s.notToggle,s.removeGroup,s.shiftActions,s.valueSelector,F,$,Ce,y]),ce=D.useCallback(Ee=>{q||w("combinator",Ee,r)},[q,w,r]),te=D.useCallback((Ee,ct,et)=>{q||w("combinator",Ee,[...r,ct])},[q,w,r]),Ne=D.useCallback((Ee,ct)=>{q||w("not",Ee,r)},[q,w,r]),be=D.useCallback((Ee,ct)=>{if(!q){const et=c();x(et,r,ct)}},[c,q,x,r]),ue=D.useCallback((Ee,ct)=>{if(!q){const et=d();b(et,r,ct)}},[d,q,b,r]),X=D.useCallback(()=>{if(!q){const Ee=[...at(r),r.at(-1)+1];S(r,Ee,!0)}},[q,S,r]),ne=D.useCallback((Ee,ct)=>{!q&&!k&&S(r,"up",Ee==null?void 0:Ee.altKey)},[q,S,r,k]),pe=D.useCallback((Ee,ct)=>{!q&&!T&&S(r,"down",Ee==null?void 0:Ee.altKey)},[q,S,r,T]),Se=D.useCallback(()=>{w("disabled",!q,r)},[q,w,r]),je=D.useCallback(()=>{w("muted",!he.muted,r)},[he.muted,w,r]),Je=D.useCallback(()=>{q||C(r)},[q,C,r]),Re=h[t??""],Ye=D.useMemo(()=>Hh(Re),[Re]),ye=D.useMemo(()=>{var Ee;return u?null:((Ee=Ko(i,oe))==null?void 0:Ee.className)??""},[oe,i,u]),rt=D.useMemo(()=>g(he),[g,he]),Le=D.useMemo(()=>Oe(rt,ye,y||me.ruleGroup,s.ruleGroup,q&&s.disabled,xe&&s.muted,z&&s.dndDragging,Ce&&V&&s.dndGroup,y||{[me.disabled]:q,[me.muted]:xe,[me.dndDragging]:z,[me.dndGroup]:Ce&&V},Ye),[s.disabled,s.muted,s.dndDragging,s.dndGroup,s.ruleGroup,ye,q,xe,V,z,Ce,rt,y,Ye]),Ge=X_({disabled:q,disabledPaths:f,path:r,nestedArray:he.rules}),Ue=D.useMemo(()=>a({path:r,qbId:n}),[a,r,n]);return{...e,addGroup:ue,addRule:be,accessibleDescription:Ue,classNames:Y,cloneGroup:X,combinator:oe,disabled:q,dragMonitorId:re,dragRef:ee,dropMonitorId:K,dropRef:G,isDragging:z,isOver:Ce,muted:xe,onCombinatorChange:ce,onGroupAdd:b,onIndependentCombinatorChange:te,onNotToggleChange:Ne,outerClassName:Le,parentDisabled:E,pathsMemo:Ge,previewRef:H,removeGroup:Je,ruleGroup:he,shiftGroupUp:ne,shiftGroupDown:pe,toggleLockGroup:Se,toggleMuteGroup:je,validationClassName:Ye,validationResult:Re}},z_=e=>{var t,r,o,n;return v.createElement("div",{"data-testid":e.testID,className:e.className},v.createElement("button",{type:"button",disabled:e.disabled||e.shiftUpDisabled,onClick:e.shiftUp,title:(t=e.titles)==null?void 0:t.shiftUp},(r=e.labels)==null?void 0:r.shiftUp),v.createElement("button",{type:"button",disabled:e.disabled||e.shiftDownDisabled,onClick:e.shiftDown,title:(o=e.titles)==null?void 0:o.shiftDown},(n=e.labels)==null?void 0:n.shiftDown))},B_=({name:e,disabled:t,checked:r,label:o,handleOnChange:n})=>{const a=v.useId();return v.createElement("label",{htmlFor:a},v.createElement("input",{id:a,type:"radio",value:e,disabled:t,checked:r,onChange:s=>n(s.target.value)}),o)},U_=e=>{const{operator:t,value:r,handleOnChange:o,title:n,className:a,type:s="text",inputType:i,values:c=[],listsAsArrays:d,fieldData:f,disabled:u,separator:h=null,testID:m,selectorComponent:g=e.schema.controls.valueSelector,parseNumbers:y,skipHook:b,valueSource:C,...w}=e,{valueAsArray:x,multiValueHandler:S,bigIntValueHandler:N,parseNumberMethod:E,valueListItemClassName:M,inputTypeCoerced:k}=W_(e);if(t==="null"||t==="notNull")return null;const T=(f==null?void 0:f.placeholder)??"";if((t==="between"||t==="notBetween")&&(s==="select"||s==="text")){const A=["from","to"].map((L,O)=>s==="text"?v.createElement("input",{key:L,type:k,placeholder:T,value:x[O]??"",className:M,disabled:u,onChange:F=>S(F.target.value,O)}):v.createElement(g,{key:L,...w,schema:e.schema,className:M,handleOnChange:F=>S(F,O),disabled:u,value:x[O]??xt(c),options:c,listsAsArrays:d}));return v.createElement("span",{"data-testid":m,className:a,title:n},A[0],h,A[1])}switch(s){case"select":case"multiselect":return v.createElement(g,{...w,schema:e.schema,testID:m,className:a,title:n,handleOnChange:o,disabled:u,value:r,options:c,multiple:s==="multiselect",listsAsArrays:d});case"textarea":return v.createElement("textarea",{"data-testid":m,placeholder:T,value:r,title:n,className:a,disabled:u,onChange:A=>o(A.target.value)});case"switch":case"checkbox":return v.createElement("input",{"data-testid":m,type:"checkbox",className:a,title:n,onChange:A=>o(A.target.checked),checked:!!r,disabled:u});case"radio":return v.createElement("span",{"data-testid":m,className:a,title:n},c.map(A=>v.createElement(B_,{key:A.name,name:A.name,disabled:u,checked:r===A.name,handleOnChange:o,label:A.label})))}return i==="bigint"?v.createElement("input",{"data-testid":m,type:k,placeholder:T,value:`${r}`,title:n,className:a,disabled:u,onChange:A=>N(A.target.value)}):v.createElement("input",{"data-testid":m,type:k,placeholder:T,value:r,title:n,className:a,disabled:u,onChange:A=>o(Ds(A.target.value,{parseNumbers:E}))})},W_=e=>{const{handleOnChange:t,inputType:r,operator:o,value:n,listsAsArrays:a,parseNumbers:s,values:i,type:c,skipHook:d,schema:{classNames:f,suppressStandardClassnames:u}}=e;D.useEffect(()=>{!d&&c!=="multiselect"&&!["between","notBetween","in","notIn"].includes(o)&&(Array.isArray(n)||r==="number"&&typeof n=="string"&&n.includes(","))&&t(Es(n,{retainEmptyStrings:!0})[0]??"")},[t,r,o,d,c,n]);const h=D.useMemo(()=>Es(n,{retainEmptyStrings:!0}),[n]),m=D.useMemo(()=>pk({parseNumbers:s,inputType:r}),[r,s]);return{valueAsArray:h,multiValueHandler:D.useCallback((g,y)=>{const b=Ds(g,{parseNumbers:m}),C=y===0&&(o==="between"||o==="notBetween")&&(h.length<2||h[1]===void 0);if(h[y]===b&&!C){t(a?h:Ns(h,","));return}const w=[...h];w[y]=b,C&&(w[1]=xt(i)),t(a?w:Ns(w,","))},[t,a,o,m,h,i]),bigIntValueHandler:D.useCallback(g=>{const y=Ds(g,{parseNumbers:m,bigIntOnOverflow:!0});let b;try{b=BigInt(y)}catch{t(y);return}t(b)},[t,m]),parseNumberMethod:m,valueListItemClassName:Oe(u||me.valueListItem,f==null?void 0:f.valueListItem),inputTypeCoerced:r==="bigint"||o==="in"||o==="notIn"?"text":r||"text"}},H_=e=>{const{multiple:t,onChange:r}=e;return D.useMemo(()=>t?o=>r(Array.from(o.target.selectedOptions).map(n=>n.value)):o=>r(o.target.value),[t,r])},j_=e=>uk(e)?e.map(t=>v.createElement("optgroup",{key:t.label,label:t.label},t.options.map(r=>v.createElement("option",{key:r.name,value:r.name,disabled:r.disabled},r.label)))):Array.isArray(e)?e.map(t=>v.createElement("option",{key:t.name,value:t.name,disabled:t.disabled},t.label)):null,Un=e=>{const{onChange:t,val:r}=Y_(e),o=H_({multiple:e.multiple,onChange:t});return v.createElement("select",{"data-testid":e.testID,className:e.className,value:r,title:e.title,disabled:e.disabled,multiple:!!e.multiple,onChange:o},j_(e.options))},Y_=e=>{const{handleOnChange:t,listsAsArrays:r=!1,multiple:o=!1,value:n}=e;return{onChange:D.useCallback(a=>{if(o){const s=Es(a);t(r?s:Ns(s,","))}else t(a)},[t,r,o]),val:D.useMemo(()=>o?Es(n).map(String):n,[o,n])}},q_=({props:e})=>{const t=Qm(e),r=t.schema.controls.ruleGroup,o=qc;return v.createElement(o.Provider,{key:t.dndEnabledAttr,value:t.rqbContext},v.createElement("div",{role:"form",className:t.wrapperClassName,"data-dnd":t.dndEnabledAttr,"data-inlinecombinators":t.inlineCombinatorsAttr},v.createElement(r,{translations:t.translations,ruleGroup:t.rootGroup,rules:t.rootGroup.rules,...t.combinatorPropObject,not:!!t.rootGroup.not,schema:t.schema,actions:t.actions,id:t.rootGroup.id,path:Ph,disabled:t.rootGroupDisabled,shiftUpDisabled:!0,shiftDownDisabled:!0,parentDisabled:t.queryDisabled,context:e.context})))},Xs=()=>null,Q_=D.forwardRef(Xs),Js={},K_=({finalize:e,...t})=>{var g,y,b,C,w,x,S,N,E,M,k,T,A,L,O,F,V,re,K,H,ee,G,z,Ce,$,q,xe,oe,he,Y,ce,te,Ne,be,ue,X,ne,pe,Se,je,Je,Re,Ye,ye,rt,Le,Ge,Ue,Ee,ct,et,_r,Yt,_,I,P,W,U,J,B,Q,ie,De,Ve,Dt,_e,Ke,ot,dr,rn,er,on,qn,At,nn,mt,fl,Qn,Kn,Xn,an,Jn,Zn,tr,Rn,hl,ml,gl,bl,ea,yl,fe,Te,Fe,Me,Pe,wt,Pt,oo,Dr,no,Zg,Rg,eb,tb,rb,ob,nb;const r=D.useContext(qc),o=D.useMemo(()=>Ck(t,r),[t,r,e]),n=e?r.enableDragAndDrop!==!1&&qh(!1,t.enableDragAndDrop,r.enableDragAndDrop):t.enableDragAndDrop??r.enableDragAndDrop,a=D.useMemo(()=>vk(r.controlClassnames,t.controlClassnames),[r.controlClassnames,t.controlClassnames]),s=D.useMemo(()=>({actionElement:a.actionElement,addGroup:a.addGroup,addRule:a.addRule,body:a.body,cloneGroup:a.cloneGroup,cloneRule:a.cloneRule,combinators:a.combinators,dragHandle:a.dragHandle,fields:a.fields,header:a.header,lockGroup:a.lockGroup,lockRule:a.lockRule,muteGroup:a.muteGroup,muteRule:a.muteRule,muted:a.muted,notToggle:a.notToggle,operators:a.operators,queryBuilder:a.queryBuilder,removeGroup:a.removeGroup,removeRule:a.removeRule,rule:a.rule,ruleGroup:a.ruleGroup,shiftActions:a.shiftActions,value:a.value,valueSelector:a.valueSelector,valueSource:a.valueSource,betweenRules:a.betweenRules,valid:a.valid,invalid:a.invalid,dndDragging:a.dndDragging,dndOver:a.dndOver,dndCopy:a.dndCopy,dndGroup:a.dndGroup,dndDropNotAllowed:a.dndDropNotAllowed,dndPreviewPosition:a.dndPreviewPosition,dndHidden:a.dndHidden,disabled:a.disabled,valueListItem:a.valueListItem,matchMode:a.matchMode,matchThreshold:a.matchThreshold,branches:a.branches,hasSubQuery:a.hasSubQuery,loading:a.loading,valueDateTimeRelative:a.valueDateTimeRelative}),[a.actionElement,a.addGroup,a.addRule,a.betweenRules,a.body,a.branches,a.cloneGroup,a.cloneRule,a.combinators,a.disabled,a.dndCopy,a.dndDropNotAllowed,a.dndPreviewPosition,a.dndHidden,a.dndGroup,a.dndDragging,a.dndOver,a.dragHandle,a.fields,a.hasSubQuery,a.header,a.invalid,a.loading,a.lockGroup,a.lockRule,a.muteGroup,a.muteRule,a.muted,a.matchMode,a.matchThreshold,a.notToggle,a.operators,a.queryBuilder,a.removeGroup,a.removeRule,a.rule,a.ruleGroup,a.shiftActions,a.valid,a.value,a.valueDateTimeRelative,a.valueListItem,a.valueSelector,a.valueSource]),i=r.controlElements??Js,c=t.controlElements??Js,d=D.useCallback((ur,ta,ra)=>{const oa=ur==="dragHandle"?Q_:Xs,vl=(ur.endsWith("Action")&&c.actionElement?c.actionElement:void 0)??(ur.endsWith("Selector")&&c.valueSelector?c.valueSelector:void 0),xl=(ur.endsWith("Action")&&i.actionElement?i.actionElement:void 0)??(ur.endsWith("Selector")&&i.valueSelector?i.valueSelector:void 0),na=ta===null?oa:ta??vl??(ra===null?oa:ra??xl);return na?{[ur]:na}:{[ur]:Zs[ur]}},[i.actionElement,i.valueSelector,e,c.actionElement,c.valueSelector]),f=D.useMemo(()=>Object.assign({},d("addGroupAction",c.addGroupAction,i.addGroupAction),d("addRuleAction",c.addRuleAction,i.addRuleAction),d("cloneGroupAction",c.cloneGroupAction,i.cloneGroupAction),d("cloneRuleAction",c.cloneRuleAction,i.cloneRuleAction),d("combinatorSelector",c.combinatorSelector,i.combinatorSelector),d("dragHandle",c.dragHandle,i.dragHandle),d("fieldSelector",c.fieldSelector,i.fieldSelector),d("inlineCombinator",c.inlineCombinator,i.inlineCombinator),d("lockGroupAction",c.lockGroupAction,i.lockGroupAction),d("lockRuleAction",c.lockRuleAction,i.lockRuleAction),d("muteGroupAction",c.muteGroupAction,i.muteGroupAction),d("muteRuleAction",c.muteRuleAction,i.muteRuleAction),d("notToggle",c.notToggle,i.notToggle),d("operatorSelector",c.operatorSelector,i.operatorSelector),d("removeGroupAction",c.removeGroupAction,i.removeGroupAction),d("removeRuleAction",c.removeRuleAction,i.removeRuleAction),d("shiftActions",c.shiftActions,i.shiftActions),{valueEditor:c.valueEditor===null?Xs:c.valueEditor??(i.valueEditor===null?Xs:i.valueEditor)??Zs.valueEditor},d("valueSourceSelector",c.valueSourceSelector,i.valueSourceSelector),d("matchModeEditor",c.matchModeEditor,i.matchModeEditor),d("rule",c.rule,i.rule),d("ruleGroup",c.ruleGroup,i.ruleGroup),d("ruleGroupBodyElements",c.ruleGroupBodyElements,i.ruleGroupBodyElements),d("ruleGroupHeaderElements",c.ruleGroupHeaderElements,i.ruleGroupHeaderElements),{actionElement:c.actionElement??i.actionElement??Zs.actionElement},{valueSelector:c.valueSelector??i.valueSelector??Zs.valueSelector}),[i.actionElement,i.addGroupAction,i.addRuleAction,i.cloneGroupAction,i.cloneRuleAction,i.combinatorSelector,i.dragHandle,i.fieldSelector,i.inlineCombinator,i.lockGroupAction,i.lockRuleAction,i.muteGroupAction,i.muteRuleAction,i.matchModeEditor,i.notToggle,i.operatorSelector,i.removeGroupAction,i.removeRuleAction,i.rule,i.ruleGroup,i.ruleGroupBodyElements,i.ruleGroupHeaderElements,i.shiftActions,i.valueEditor,i.valueSelector,i.valueSourceSelector,d,e,c.actionElement,c.addGroupAction,c.addRuleAction,c.cloneGroupAction,c.cloneRuleAction,c.combinatorSelector,c.dragHandle,c.fieldSelector,c.inlineCombinator,c.lockGroupAction,c.lockRuleAction,c.muteGroupAction,c.muteRuleAction,c.matchModeEditor,c.notToggle,c.operatorSelector,c.removeGroupAction,c.removeRuleAction,c.rule,c.ruleGroup,c.ruleGroupBodyElements,c.ruleGroupHeaderElements,c.shiftActions,c.valueEditor,c.valueSelector,c.valueSourceSelector]),u=t.translations??Js,h=r.translations??Js,m=D.useMemo(()=>{var ur,ta,ra,oa,vl,xl,na,ab,sb,lb,ib,cb,db,ub,pb,fb,hb,mb,gb,bb,yb,vb,xb,wb,Cb,Sb,Nb,Eb,kb,_b,Db,Ab,Tb,Ib,Pb,Mb,Ob,Lb,Fb,$b,Gb,Vb,zb,Bb,Ub,Wb,Hb,jb,Yb,qb,Qb,Kb,Xb,Jb,Zb,Rb,ey,ty,ry,oy,ny,ay,sy,ly,iy,cy,dy,uy,py,fy,hy,my,gy,by,yy,vy,xy,wy,Cy,Sy,Ny,Ey,ky,_y,Dy,Ay,Ty,Iy,Py,My,Oy,Ly,Fy,$y,Gy,Vy,zy,By,Uy,Wy,Hy,jy,Yy,qy,Qy,Ky,Xy,Jy;return Object.assign({},He("addGroup",{label:[(ur=u.addGroup)==null?void 0:ur.label,(ta=h.addGroup)==null?void 0:ta.label],title:[(ra=u.addGroup)==null?void 0:ra.title,(oa=h.addGroup)==null?void 0:oa.title]},We),He("addRule",{label:[(vl=u.addRule)==null?void 0:vl.label,(xl=h.addRule)==null?void 0:xl.label],title:[(na=u.addRule)==null?void 0:na.title,(ab=h.addRule)==null?void 0:ab.title]},We),He("cloneRule",{label:[(sb=u.cloneRule)==null?void 0:sb.label,(lb=h.cloneRule)==null?void 0:lb.label],title:[(ib=u.cloneRule)==null?void 0:ib.title,(cb=h.cloneRule)==null?void 0:cb.title]},We),He("cloneRuleGroup",{label:[(db=u.cloneRuleGroup)==null?void 0:db.label,(ub=h.cloneRuleGroup)==null?void 0:ub.label],title:[(pb=u.cloneRuleGroup)==null?void 0:pb.title,(fb=h.cloneRuleGroup)==null?void 0:fb.title]},We),He("combinators",{title:[(hb=u.combinators)==null?void 0:hb.title,(mb=h.combinators)==null?void 0:mb.title]},We),He("dragHandle",{label:[(gb=u.dragHandle)==null?void 0:gb.label,(bb=h.dragHandle)==null?void 0:bb.label],title:[(yb=u.dragHandle)==null?void 0:yb.title,(vb=h.dragHandle)==null?void 0:vb.title]},We),He("fields",{placeholderGroupLabel:[(xb=u.fields)==null?void 0:xb.placeholderGroupLabel,(wb=h.fields)==null?void 0:wb.placeholderGroupLabel],placeholderLabel:[(Cb=u.fields)==null?void 0:Cb.placeholderLabel,(Sb=h.fields)==null?void 0:Sb.placeholderLabel],placeholderName:[(Nb=u.fields)==null?void 0:Nb.placeholderName,(Eb=h.fields)==null?void 0:Eb.placeholderName],title:[(kb=u.fields)==null?void 0:kb.title,(_b=h.fields)==null?void 0:_b.title]},We),He("lockGroup",{label:[(Db=u.lockGroup)==null?void 0:Db.label,(Ab=h.lockGroup)==null?void 0:Ab.label],title:[(Tb=u.lockGroup)==null?void 0:Tb.title,(Ib=h.lockGroup)==null?void 0:Ib.title]},We),He("lockGroupDisabled",{label:[(Pb=u.lockGroupDisabled)==null?void 0:Pb.label,(Mb=h.lockGroupDisabled)==null?void 0:Mb.label],title:[(Ob=u.lockGroupDisabled)==null?void 0:Ob.title,(Lb=h.lockGroupDisabled)==null?void 0:Lb.title]},We),He("lockRule",{label:[(Fb=u.lockRule)==null?void 0:Fb.label,($b=h.lockRule)==null?void 0:$b.label],title:[(Gb=u.lockRule)==null?void 0:Gb.title,(Vb=h.lockRule)==null?void 0:Vb.title]},We),He("lockRuleDisabled",{label:[(zb=u.lockRuleDisabled)==null?void 0:zb.label,(Bb=h.lockRuleDisabled)==null?void 0:Bb.label],title:[(Ub=u.lockRuleDisabled)==null?void 0:Ub.title,(Wb=h.lockRuleDisabled)==null?void 0:Wb.title]},We),He("muteGroup",{label:[(Hb=u.muteGroup)==null?void 0:Hb.label,(jb=h.muteGroup)==null?void 0:jb.label],title:[(Yb=u.muteGroup)==null?void 0:Yb.title,(qb=h.muteGroup)==null?void 0:qb.title]},We),He("unmuteGroup",{label:[(Qb=u.unmuteGroup)==null?void 0:Qb.label,(Kb=h.unmuteGroup)==null?void 0:Kb.label],title:[(Xb=u.unmuteGroup)==null?void 0:Xb.title,(Jb=h.unmuteGroup)==null?void 0:Jb.title]},We),He("muteRule",{label:[(Zb=u.muteRule)==null?void 0:Zb.label,(Rb=h.muteRule)==null?void 0:Rb.label],title:[(ey=u.muteRule)==null?void 0:ey.title,(ty=h.muteRule)==null?void 0:ty.title]},We),He("unmuteRule",{label:[(ry=u.unmuteRule)==null?void 0:ry.label,(oy=h.unmuteRule)==null?void 0:oy.label],title:[(ny=u.unmuteRule)==null?void 0:ny.title,(ay=h.unmuteRule)==null?void 0:ay.title]},We),He("notToggle",{label:[(sy=u.notToggle)==null?void 0:sy.label,(ly=h.notToggle)==null?void 0:ly.label],title:[(iy=u.notToggle)==null?void 0:iy.title,(cy=h.notToggle)==null?void 0:cy.title]},We),He("operators",{placeholderGroupLabel:[(dy=u.operators)==null?void 0:dy.placeholderGroupLabel,(uy=h.operators)==null?void 0:uy.placeholderGroupLabel],placeholderLabel:[(py=u.operators)==null?void 0:py.placeholderLabel,(fy=h.operators)==null?void 0:fy.placeholderLabel],placeholderName:[(hy=u.operators)==null?void 0:hy.placeholderName,(my=h.operators)==null?void 0:my.placeholderName],title:[(gy=u.operators)==null?void 0:gy.title,(by=h.operators)==null?void 0:by.title]},We),He("values",{placeholderGroupLabel:[(yy=u.values)==null?void 0:yy.placeholderGroupLabel,(vy=h.values)==null?void 0:vy.placeholderGroupLabel],placeholderLabel:[(xy=u.values)==null?void 0:xy.placeholderLabel,(wy=h.values)==null?void 0:wy.placeholderLabel],placeholderName:[(Cy=u.values)==null?void 0:Cy.placeholderName,(Sy=h.values)==null?void 0:Sy.placeholderName],title:[(Ny=u.values)==null?void 0:Ny.title,(Ey=h.values)==null?void 0:Ey.title]},We),He("removeGroup",{label:[(ky=u.removeGroup)==null?void 0:ky.label,(_y=h.removeGroup)==null?void 0:_y.label],title:[(Dy=u.removeGroup)==null?void 0:Dy.title,(Ay=h.removeGroup)==null?void 0:Ay.title]},We),He("removeRule",{label:[(Ty=u.removeRule)==null?void 0:Ty.label,(Iy=h.removeRule)==null?void 0:Iy.label],title:[(Py=u.removeRule)==null?void 0:Py.title,(My=h.removeRule)==null?void 0:My.title]},We),He("shiftActionDown",{label:[(Oy=u.shiftActionDown)==null?void 0:Oy.label,(Ly=h.shiftActionDown)==null?void 0:Ly.label],title:[(Fy=u.shiftActionDown)==null?void 0:Fy.title,($y=h.shiftActionDown)==null?void 0:$y.title]},We),He("shiftActionUp",{label:[(Gy=u.shiftActionUp)==null?void 0:Gy.label,(Vy=h.shiftActionUp)==null?void 0:Vy.label],title:[(zy=u.shiftActionUp)==null?void 0:zy.title,(By=h.shiftActionUp)==null?void 0:By.title]},We),He("matchMode",{title:[(Uy=u.matchMode)==null?void 0:Uy.title,(Wy=h.matchMode)==null?void 0:Wy.title]},We),He("matchThreshold",{title:[(Hy=u.matchThreshold)==null?void 0:Hy.title,(jy=h.matchThreshold)==null?void 0:jy.title],placeholderName:[(Yy=u.matchThreshold)==null?void 0:Yy.placeholderName,(qy=h.matchThreshold)==null?void 0:qy.placeholderName]},We),He("value",{title:[(Qy=u.value)==null?void 0:Qy.title,(Ky=h.value)==null?void 0:Ky.title]},We),He("valueSourceSelector",{title:[(Xy=u.valueSourceSelector)==null?void 0:Xy.title,(Jy=h.valueSourceSelector)==null?void 0:Jy.title]},We))},[(g=h.addGroup)==null?void 0:g.label,(y=h.addGroup)==null?void 0:y.title,(b=h.addRule)==null?void 0:b.label,(C=h.addRule)==null?void 0:C.title,(w=h.cloneRule)==null?void 0:w.label,(x=h.cloneRule)==null?void 0:x.title,(S=h.cloneRuleGroup)==null?void 0:S.label,(N=h.cloneRuleGroup)==null?void 0:N.title,(E=h.combinators)==null?void 0:E.title,(M=h.dragHandle)==null?void 0:M.label,(k=h.dragHandle)==null?void 0:k.title,(T=h.fields)==null?void 0:T.placeholderGroupLabel,(A=h.fields)==null?void 0:A.placeholderLabel,(L=h.fields)==null?void 0:L.placeholderName,(O=h.fields)==null?void 0:O.title,(F=h.lockGroup)==null?void 0:F.label,(V=h.lockGroup)==null?void 0:V.title,(re=h.lockGroupDisabled)==null?void 0:re.label,(K=h.lockGroupDisabled)==null?void 0:K.title,(H=h.lockRule)==null?void 0:H.label,(ee=h.lockRule)==null?void 0:ee.title,(G=h.lockRuleDisabled)==null?void 0:G.label,(z=h.lockRuleDisabled)==null?void 0:z.title,(Ce=h.muteGroup)==null?void 0:Ce.label,($=h.muteGroup)==null?void 0:$.title,(q=h.unmuteGroup)==null?void 0:q.label,(xe=h.unmuteGroup)==null?void 0:xe.title,(oe=h.muteRule)==null?void 0:oe.label,(he=h.muteRule)==null?void 0:he.title,(Y=h.unmuteRule)==null?void 0:Y.label,(ce=h.unmuteRule)==null?void 0:ce.title,(te=h.matchMode)==null?void 0:te.title,(Ne=h.matchThreshold)==null?void 0:Ne.title,(be=h.matchThreshold)==null?void 0:be.placeholderName,(ue=h.notToggle)==null?void 0:ue.label,(X=h.notToggle)==null?void 0:X.title,(ne=h.operators)==null?void 0:ne.placeholderGroupLabel,(pe=h.operators)==null?void 0:pe.placeholderLabel,(Se=h.operators)==null?void 0:Se.placeholderName,(je=h.operators)==null?void 0:je.title,(Je=h.removeGroup)==null?void 0:Je.label,(Re=h.removeGroup)==null?void 0:Re.title,(Ye=h.removeRule)==null?void 0:Ye.label,(ye=h.removeRule)==null?void 0:ye.title,(rt=h.shiftActionDown)==null?void 0:rt.label,(Le=h.shiftActionDown)==null?void 0:Le.title,(Ge=h.shiftActionUp)==null?void 0:Ge.label,(Ue=h.shiftActionUp)==null?void 0:Ue.title,(Ee=h.value)==null?void 0:Ee.title,(ct=h.values)==null?void 0:ct.placeholderGroupLabel,(et=h.values)==null?void 0:et.placeholderLabel,(_r=h.values)==null?void 0:_r.placeholderName,(Yt=h.values)==null?void 0:Yt.title,(_=h.valueSourceSelector)==null?void 0:_.title,e,(I=u.addGroup)==null?void 0:I.label,(P=u.addGroup)==null?void 0:P.title,(W=u.addRule)==null?void 0:W.label,(U=u.addRule)==null?void 0:U.title,(J=u.cloneRule)==null?void 0:J.label,(B=u.cloneRule)==null?void 0:B.title,(Q=u.cloneRuleGroup)==null?void 0:Q.label,(ie=u.cloneRuleGroup)==null?void 0:ie.title,(De=u.combinators)==null?void 0:De.title,(Ve=u.dragHandle)==null?void 0:Ve.label,(Dt=u.dragHandle)==null?void 0:Dt.title,(_e=u.fields)==null?void 0:_e.placeholderGroupLabel,(Ke=u.fields)==null?void 0:Ke.placeholderLabel,(ot=u.fields)==null?void 0:ot.placeholderName,(dr=u.fields)==null?void 0:dr.title,(rn=u.lockGroup)==null?void 0:rn.label,(er=u.lockGroup)==null?void 0:er.title,(on=u.lockGroupDisabled)==null?void 0:on.label,(qn=u.lockGroupDisabled)==null?void 0:qn.title,(At=u.lockRule)==null?void 0:At.label,(nn=u.lockRule)==null?void 0:nn.title,(mt=u.lockRuleDisabled)==null?void 0:mt.label,(fl=u.lockRuleDisabled)==null?void 0:fl.title,(Qn=u.muteGroup)==null?void 0:Qn.label,(Kn=u.muteGroup)==null?void 0:Kn.title,(Xn=u.unmuteGroup)==null?void 0:Xn.label,(an=u.unmuteGroup)==null?void 0:an.title,(Jn=u.muteRule)==null?void 0:Jn.label,(Zn=u.muteRule)==null?void 0:Zn.title,(tr=u.unmuteRule)==null?void 0:tr.label,(Rn=u.unmuteRule)==null?void 0:Rn.title,(hl=u.matchMode)==null?void 0:hl.title,(ml=u.matchThreshold)==null?void 0:ml.title,(gl=u.matchThreshold)==null?void 0:gl.placeholderName,(bl=u.notToggle)==null?void 0:bl.label,(ea=u.notToggle)==null?void 0:ea.title,(yl=u.operators)==null?void 0:yl.placeholderGroupLabel,(fe=u.operators)==null?void 0:fe.placeholderLabel,(Te=u.operators)==null?void 0:Te.placeholderName,(Fe=u.operators)==null?void 0:Fe.title,(Me=u.removeGroup)==null?void 0:Me.label,(Pe=u.removeGroup)==null?void 0:Pe.title,(wt=u.removeRule)==null?void 0:wt.label,(Pt=u.removeRule)==null?void 0:Pt.title,(oo=u.shiftActionDown)==null?void 0:oo.label,(Dr=u.shiftActionDown)==null?void 0:Dr.title,(no=u.shiftActionUp)==null?void 0:no.label,(Zg=u.shiftActionUp)==null?void 0:Zg.title,(Rg=u.value)==null?void 0:Rg.title,(eb=u.values)==null?void 0:eb.placeholderGroupLabel,(tb=u.values)==null?void 0:tb.placeholderLabel,(rb=u.values)==null?void 0:rb.placeholderName,(ob=u.values)==null?void 0:ob.title,(nb=u.valueSourceSelector)==null?void 0:nb.title]);return{...o,controlClassnames:s,controlElements:f,enableDragAndDrop:n,translations:m,initialQuery:t.initialQuery,qbId:t.qbId}},X_=({disabled:e,path:t,nestedArray:r,disabledPaths:o})=>{const n=r.length;return D.useMemo(()=>{const a=[];for(let s=0;s<n;s++){const i=[...t,s];a[s]={path:i,disabled:e||o.some(c=>Eo(i,c))}}return a},[e,t,n,o])};let Xm=!1;const Jm=(e,t)=>{process.env.NODE_ENV!=="production"&&!Xm&&e&&!t&&(console.error(Nt.errorEnabledDndWithoutReactDnD),Xm=!0)},st=e=>D.useCallback((t,r)=>{t==null||t.preventDefault(),t==null||t.stopPropagation(),e(t,r)},[e]),J_={mode:"all"},Z_=[{name:"",value:"",label:""}],R_=v.memo(function(t){const r=rD(t),{dndRef:o}=r,n=st(r.cloneRule),a=st(r.toggleLockRule),s=st(r.toggleMuteRule),i=st(r.removeRule),c=st(r.shiftRuleUp),d=st(r.shiftRuleDown),f=D.useMemo(()=>({cloneRule:n,toggleLockRule:a,toggleMuteRule:s,removeRule:i,shiftRuleUp:c,shiftRuleDown:d}),[n,i,d,c,a,s]);return v.createElement("div",{ref:o,"data-testid":ge.rule,"data-dragmonitorid":r.dragMonitorId,"data-dropmonitorid":r.dropMonitorId,className:r.outerClassName,"data-rule-id":r.id,"data-level":r.path.length,"data-path":JSON.stringify(r.path)},r.matchModes.length>0?v.createElement(tD,{...r,...f}):v.createElement(Zm,{...r,...f}))}),Zm=v.memo(function(t){const{dragRef:r,schema:{controls:{shiftActions:o,dragHandle:n,fieldSelector:a,matchModeEditor:s,operatorSelector:i,valueSourceSelector:c,valueEditor:d,cloneRuleAction:f,lockRuleAction:u,muteRuleAction:h,removeRuleAction:m,ruleGroupBodyElements:g,ruleGroupHeaderElements:y}},groupComponentsWrapper:b=v.Fragment}=t,C=D.useMemo(()=>({level:t.path.length,path:t.path,disabled:t.disabled,context:t.context,validation:t.validationResult,schema:t.schema,rule:t.rule}),[t.path,t.disabled,t.context,t.validationResult,t.schema,t.rule]),w=D.useMemo(()=>!(t.schema.fields.length===1&&Jr(t.schema.fields[0])&&"value"in t.schema.fields[0]&&t.schema.fields[0].value===""),[t.schema.fields]),x=D.useMemo(()=>t.schema.showShiftActions?{shiftUp:t.translations.shiftActionUp.title,shiftDown:t.translations.shiftActionDown.title}:void 0,[t.schema.showShiftActions,t.translations]),S=D.useMemo(()=>t.schema.showShiftActions?{shiftUp:t.translations.shiftActionUp.label,shiftDown:t.translations.shiftActionDown.label}:void 0,[t.schema.showShiftActions,t.translations]);return v.createElement(v.Fragment,null,t.schema.showShiftActions&&v.createElement(o,{key:ge.shiftActions,...C,testID:ge.shiftActions,titles:x,labels:S,className:t.classNames.shiftActions,ruleOrGroup:t.rule,shiftUp:t.shiftRuleUp,shiftDown:t.shiftRuleDown,shiftUpDisabled:t.shiftUpDisabled,shiftDownDisabled:t.shiftDownDisabled}),t.schema.enableDragAndDrop&&v.createElement(n,{key:ge.dragHandle,...C,testID:ge.dragHandle,ref:r,title:t.translations.dragHandle.title,label:t.translations.dragHandle.label,className:t.classNames.dragHandle,dragHandleAttributes:t.dragHandleAttributes,ruleOrGroup:t.rule}),w&&v.createElement(a,{key:ge.fields,...C,testID:ge.fields,options:t.schema.fields,title:t.translations.fields.title,value:t.rule.field,operator:t.rule.operator,className:t.classNames.fields,handleOnChange:t.onChangeField}),(t.schema.autoSelectField||t.rule.field!==t.translations.fields.placeholderName)&&(t.subQuery?v.createElement(s,{key:ge.matchModeEditor,...C,testID:ge.matchModeEditor,field:t.rule.field,fieldData:t.fieldData,title:t.translations.matchMode.title,options:t.matchModes,thresholdPlaceholder:t.translations.matchThreshold.placeholderName,match:t.rule.match??J_,className:t.classNames.matchMode,classNames:t.classNames,handleOnChange:t.onChangeMatchMode}):v.createElement(v.Fragment,null,v.createElement(i,{key:ge.operators,...C,testID:ge.operators,field:t.rule.field,fieldData:t.fieldData,title:t.translations.operators.title,options:t.operators,value:t.rule.operator,className:t.classNames.operators,handleOnChange:t.onChangeOperator}),(t.schema.autoSelectOperator||t.rule.operator!==t.translations.operators.placeholderName)&&!t.hideValueControls&&v.createElement(v.Fragment,null,!["null","notnull"].includes(No(`${t.rule.operator}`))&&t.valueSources.length>1&&v.createElement(c,{key:ge.valueSourceSelector,...C,testID:ge.valueSourceSelector,field:t.rule.field,fieldData:t.fieldData,title:t.translations.valueSourceSelector.title,options:t.valueSourceOptions,value:t.rule.valueSource??"value",className:t.classNames.valueSource,handleOnChange:t.onChangeValueSource}),v.createElement(d,{key:ge.valueEditor,...C,testID:ge.valueEditor,field:t.rule.field,fieldData:t.fieldData,title:t.translations.value.title,operator:t.rule.operator,value:t.rule.value,valueSource:t.rule.valueSource??"value",type:t.valueEditorType,inputType:t.inputType,values:t.values,listsAsArrays:t.schema.listsAsArrays,parseNumbers:t.schema.parseNumbers,separator:t.valueEditorSeparator,className:t.classNames.value,handleOnChange:t.onChangeValue})))),t.subQuery&&v.createElement(b,{className:t.subQuery.classNames.header},v.createElement(y,t.subQuery)),t.schema.showCloneButtons&&v.createElement(f,{key:ge.cloneRule,...C,testID:ge.cloneRule,label:t.translations.cloneRule.label,title:t.translations.cloneRule.title,className:t.classNames.cloneRule,ruleOrGroup:t.rule,handleOnClick:t.cloneRule}),t.schema.showLockButtons&&v.createElement(u,{key:ge.lockRule,...C,testID:ge.lockRule,label:t.translations.lockRule.label,title:t.translations.lockRule.title,className:t.classNames.lockRule,ruleOrGroup:t.rule,handleOnClick:t.toggleLockRule,disabledTranslation:t.parentDisabled?void 0:t.translations.lockRuleDisabled}),t.schema.showMuteButtons&&v.createElement(h,{key:ge.muteRule,...C,testID:ge.muteRule,label:t.rule.muted?t.translations.unmuteRule.label:t.translations.muteRule.label,title:t.rule.muted?t.translations.unmuteRule.title:t.translations.muteRule.title,className:t.classNames.muteRule,ruleOrGroup:t.rule,handleOnClick:t.toggleMuteRule}),v.createElement(m,{key:ge.removeRule,...C,testID:ge.removeRule,label:t.translations.removeRule.label,title:t.translations.removeRule.title,className:t.classNames.removeRule,ruleOrGroup:t.rule,handleOnClick:t.removeRule}),t.subQuery&&v.createElement(b,{className:t.subQuery.classNames.body},v.createElement(g,t.subQuery)))}),eD=e=>v.createElement("div",e),tD=v.memo(function(t){const r=D.useMemo(()=>t.schema.createRuleGroup(),[t.schema]),o=Qm({...t.subQueryBuilderProps,enableDragAndDrop:!1,disabled:t.disabled,fields:t.subproperties.fields,enableMountQueryChange:!Xe(t.rule.value)||!t.rule.value.id,query:Xe(t.rule.value)?t.rule.value:r,onQueryChange:t.onChangeValue}),n=Km({...o,ruleGroup:o.rootGroup,path:Ph,disabled:t.disabled,parentDisabled:o.queryDisabled,id:o.rootGroup.id,shiftUpDisabled:!0,shiftDownDisabled:!0}),a=st(n.addRule),s=st(n.addGroup),i=st(n.cloneGroup),c=st(n.toggleLockGroup),d=st(n.removeGroup),f=st(n.shiftGroupUp),u=st(n.shiftGroupDown),h=D.useMemo(()=>({...n,addGroup:s,addRule:a,cloneGroup:i,removeGroup:d,shiftGroupDown:u,shiftGroupUp:f,toggleLockGroup:c}),[s,a,i,d,u,f,n,c]);return v.createElement(Zm,{...t,groupComponentsWrapper:t.groupComponentsWrapper??eD,subQuery:h})}),rD=e=>{const{id:t,path:r,rule:o,schema:{classNames:n,fields:a,fieldMap:s,getParameters:i,getInputType:c,getMatchModes:d,getOperators:f,getSubQueryBuilderProps:u,getValueEditorType:h,getValueEditorSeparator:m,getValueSources:g,getValues:y,validationMap:b,enableDragAndDrop:C,getRuleClassname:w,suppressStandardClassnames:x},actions:{moveRule:S,onPropChange:N,onRuleRemove:E},disabled:M,parentDisabled:k,parentMuted:T,shiftUpDisabled:A,shiftDownDisabled:L,field:O,operator:F,value:V,valueSource:re,dropEffect:K="move",groupItems:H=!1,dragMonitorId:ee="",dropMonitorId:G="",dndRef:z=null,dragRef:Ce=null,isDragging:$=!1,isOver:q=!1,dropNotAllowed:xe=!1}=e;jc("rule",!o),Jm(C,!!(ee||G||z||Ce));const oe=!!k||!!M,he=!!T||!!(o!=null&&o.muted),Y=D.useMemo(()=>o??{id:t,field:O??"",operator:F??"",value:V,valueSource:re},[O,t,F,o,V,re]),ce=D.useMemo(()=>({shiftActions:Oe(x||me.shiftActions,n.shiftActions),dragHandle:Oe(x||me.dragHandle,n.dragHandle),fields:Oe(x||me.fields,n.valueSelector,n.fields),matchMode:Oe(x||me.matchMode,n.valueSelector,n.matchMode),matchThreshold:Oe(x||me.matchThreshold,n.valueSelector,n.matchThreshold),operators:Oe(x||me.operators,n.valueSelector,n.operators),valueSource:Oe(x||me.valueSource,n.valueSelector,n.valueSource),value:Oe(x||me.value,n.value),cloneRule:Oe(x||me.cloneRule,n.actionElement,n.cloneRule),lockRule:Oe(x||me.lockRule,n.actionElement,n.lockRule),muteRule:Oe(x||me.muteRule,n.actionElement,n.muteRule),removeRule:Oe(x||me.removeRule,n.actionElement,n.removeRule),valueListItem:Oe(x||me.valueListItem,n.valueListItem)}),[n.shiftActions,n.dragHandle,n.valueSelector,n.fields,n.matchMode,n.matchThreshold,n.operators,n.valueSource,n.value,n.actionElement,n.cloneRule,n.lockRule,n.muteRule,n.removeRule,n.valueListItem,x]),te=D.useCallback(_e=>(Ke,ot)=>{oe||N(_e,Ke,r,ot)},[oe,N,r]),Ne=D.useMemo(()=>te("field"),[te]),be=D.useMemo(()=>te("operator"),[te]),ue=D.useMemo(()=>te("match"),[te]),X=D.useMemo(()=>te("valueSource"),[te]),ne=D.useMemo(()=>te("value"),[te]),pe=D.useCallback((_e,Ke)=>{if(!oe){const ot=[...at(r),r.at(-1)+1];S(r,ot,!0,Ke)}},[oe,S,r]),Se=D.useCallback((_e,Ke)=>N("disabled",!oe,r,Ke),[oe,N,r]),je=D.useCallback((_e,Ke)=>N("muted",!Y.muted,r,Ke),[Y.muted,N,r]),Je=D.useCallback((_e,Ke)=>{oe||E(r)},[oe,E,r]),Re=D.useCallback((_e,Ke)=>{!oe&&!A&&S(r,"up",_e==null?void 0:_e.altKey,Ke)},[oe,S,r,A]),Ye=D.useCallback((_e,Ke)=>{!oe&&!L&&S(r,"down",_e==null?void 0:_e.altKey,Ke)},[oe,S,r,L]),ye=D.useMemo(()=>(s==null?void 0:s[Y.field])??{name:Y.field,value:Y.field,label:Y.field},[s,Y.field]),rt=D.useMemo(()=>ye.inputType??c(Y.field,Y.operator,{fieldData:ye}),[ye,c,Y.field,Y.operator]),Le=D.useMemo(()=>d(Y.field,{fieldData:ye}),[ye,d,Y.field]),Ge=D.useMemo(()=>f(Y.field,{fieldData:ye}),[ye,f,Y.field]),Ue=D.useMemo(()=>Ko(Ge,Y.operator),[Ge,Y.operator]),Ee=Ue==null?void 0:Ue.arity,ct=typeof Ee=="string"&&Ee==="unary"||typeof Ee=="number"&&Ee<2,et=D.useMemo(()=>{const _e=g(Y.field,Y.operator,{fieldData:ye});return Y.valueSource&&!Ko(_e,Y.valueSource)?[..._e,{name:Y.valueSource,value:Y.valueSource,label:Y.valueSource}]:_e},[ye,g,Y.field,Y.operator,Y.valueSource]),_r=D.useMemo(()=>et.map(({value:_e})=>_e),[et]),Yt=D.useMemo(()=>i(Y.field,Y.operator,{fieldData:ye}),[ye,i,Y.field,Y.operator]),_=D.useMemo(()=>Yt&&Yt.length>0?Yt:null,[Yt]),I=D.useMemo(()=>Y.valueSource==="field"?"select":Y.valueSource==="parameter"?_?No(Y.operator)==="in"||No(Y.operator)==="notin"?"multiselect":"select":"text":h(Y.field,Y.operator,{fieldData:ye}),[ye,h,_,Y.field,Y.operator,Y.valueSource]),P=D.useMemo(()=>m(Y.field,Y.operator,{fieldData:ye}),[ye,m,Y.field,Y.operator]),W=D.useMemo(()=>{const _e=Y.valueSource==="field"?zh(ye,a,Y.operator):Y.valueSource==="parameter"?_??[]:y(Y.field,Y.operator,{fieldData:ye});return _s(_e)||Zr(_e)?ks(_e):_e},[ye,a,y,_,Y.field,Y.operator,Y.valueSource]),U=D.useMemo(()=>u(Y.field,{fieldData:ye}),[ye,u,Y.field]),J=jm({translations:e.translations,fields:ye.subproperties??U.fields??Z_,autoSelectField:e.schema.autoSelectField||!!ye.subproperties}),B=D.useMemo(()=>b[t??""]??(typeof ye.validator=="function"?ye.validator(Y):null),[ye,t,Y,b]),Q=D.useMemo(()=>Hh(B),[B]),ie=(ye==null?void 0:ye.className)??"",De=(Ue==null?void 0:Ue.className)??"",Ve=Le.length>0,Dt=D.useMemo(()=>Oe(w(Y,{fieldData:ye}),ie,De,x||me.rule,n.rule,oe&&n.disabled,he&&n.muted,$&&n.dndDragging,q&&n.dndOver,q&&K==="copy"&&n.dndCopy,q&&H&&n.dndGroup,xe&&n.dndDropNotAllowed,Ve&&n.hasSubQuery,x||{[me.disabled]:oe,[me.muted]:he,[me.dndDragging]:$,[me.dndOver]:q,[me.dndCopy]:q&&K==="copy",[me.dndGroup]:q&&H,[me.dndDropNotAllowed]:xe,[me.hasSubQuery]:Ve},Q),[n.disabled,n.muted,n.dndCopy,n.dndDragging,n.dndGroup,n.dndOver,n.dndDropNotAllowed,n.hasSubQuery,n.rule,oe,K,xe,he,ie,ye,w,H,Ve,$,q,De,Y,x,Q]);return{...e,classNames:ce,cloneRule:pe,disabled:oe,dndRef:z,dragMonitorId:ee,dragRef:Ce,dropMonitorId:G,fieldData:ye,generateOnChangeHandler:te,onChangeField:Ne,onChangeMatchMode:ue,onChangeOperator:be,onChangeValueSource:X,onChangeValue:ne,hideValueControls:ct,inputType:rt,matchModes:Le,muted:he,operators:Ge,outerClassName:Dt,removeRule:Je,rule:Y,shiftRuleUp:Re,shiftRuleDown:Ye,subproperties:J,subQueryBuilderProps:U,toggleLockRule:Se,toggleMuteRule:je,validationResult:B,valueEditorSeparator:P,valueEditorType:I,values:W,valueSourceOptions:et,valueSources:_r}},Zs={actionElement:lr,addGroupAction:lr,addRuleAction:lr,cloneGroupAction:lr,cloneRuleAction:lr,combinatorSelector:Un,dragHandle:p_,fieldSelector:Un,inlineCombinator:f_,lockGroupAction:lr,lockRuleAction:lr,matchModeEditor:h_,muteGroupAction:lr,muteRuleAction:lr,notToggle:g_,operatorSelector:Un,removeGroupAction:lr,removeRuleAction:lr,rule:R_,ruleGroup:$_,ruleGroupBodyElements:V_,ruleGroupHeaderElements:G_,shiftActions:z_,valueEditor:U_,valueSelector:Un,valueSourceSelector:Un};Ym();const oD=e=>v.createElement(l_,{context:Wm,store:Ym()},e.children),Rs=e=>v.createElement(oD,null,v.createElement(q_,{props:e}));function Rm(e,t,r){var n,a;const o={visible:!0,required:((n=e.validation)==null?void 0:n.required)??!1,disabled:((a=e.properties)==null?void 0:a.disabled)??!1};return e.logic&&(o.visible=nD(e.logic,t,r),e.logic.requireWhen&&(o.required=el(e.logic.requireWhen,t,r)),e.logic.disableWhen&&(o.disabled=el(e.logic.disableWhen,t,r))),o}function nD(e,t,r){const{showWhen:o,hideWhen:n}=e;let a=!0;if(o&&o.rules&&o.rules.length>0&&(a=el(o,t,r)),n&&n.rules&&n.rules.length>0){const s=el(n,t,r);a=a&&!s}return a}function el(e,t,r){if(!e||!e.rules||e.rules.length===0)return!0;const{combinator:o,rules:n}=e,a=n.map(s=>{const i=r.find(f=>f.id===s.field||f.attributes.name===s.field),c=(i==null?void 0:i.attributes.name)||s.field,d=t[c];return aD(d,s.operator,s.value)});return o==="and"?a.every(s=>s):a.some(s=>s)}function aD(e,t,r){const o=e??"";switch(t){case"equals":case"=":case"==":return o===r;case"notEquals":case"!=":case"<>":return o!==r;case"contains":return String(o).toLowerCase().includes(String(r).toLowerCase());case"notContains":case"doesNotContain":return!String(o).toLowerCase().includes(String(r).toLowerCase());case"startsWith":case"beginsWith":return String(o).toLowerCase().startsWith(String(r).toLowerCase());case"endsWith":return String(o).toLowerCase().endsWith(String(r).toLowerCase());case"matches":try{return new RegExp(r,"i").test(String(o))}catch{return!1}case"isEmpty":case"null":return o===""||o===null||o===void 0||Array.isArray(o)&&o.length===0;case"isNotEmpty":case"notNull":return o!==""&&o!==null&&o!==void 0&&!(Array.isArray(o)&&o.length===0);case"greaterThan":case">":return Number(o)>Number(r);case"greaterThanOrEquals":case">=":return Number(o)>=Number(r);case"lessThan":case"<":return Number(o)<Number(r);case"lessThanOrEquals":case"<=":return Number(o)<=Number(r);case"between":if(Array.isArray(r)&&r.length===2){const n=Number(o);return n>=Number(r[0])&&n<=Number(r[1])}return!1;case"notBetween":if(Array.isArray(r)&&r.length===2){const n=Number(o);return n<Number(r[0])||n>Number(r[1])}return!0;case"in":return Array.isArray(r)?r.includes(o):!1;case"notIn":return Array.isArray(r)?!r.includes(o):!0;case"isTrue":return o===!0||o==="true"||o===1;case"isFalse":return o===!1||o==="false"||o===0;case"hasLength":return Array.isArray(o)&&o.length===Number(r);case"hasMinLength":return Array.isArray(o)&&o.length>=Number(r);case"hasMaxLength":return Array.isArray(o)&&o.length<=Number(r);case"includes":case"arrayContains":return Array.isArray(o)&&o.includes(r);case"notIncludes":case"arrayNotContains":return!Array.isArray(o)||!o.includes(r);default:return console.warn(`Unknown operator: ${t}`),!0}}function sD(e){const t=[{name:"isEmpty",label:"is empty"},{name:"isNotEmpty",label:"is not empty"}],r=[{name:"equals",label:"equals"},{name:"notEquals",label:"does not equal"}],o=[...r,{name:"contains",label:"contains"},{name:"notContains",label:"does not contain"},{name:"startsWith",label:"starts with"},{name:"endsWith",label:"ends with"},...t],n=[...r,{name:"greaterThan",label:"is greater than"},{name:"greaterThanOrEquals",label:"is greater than or equal to"},{name:"lessThan",label:"is less than"},{name:"lessThanOrEquals",label:"is less than or equal to"},{name:"between",label:"is between"},...t],a=[{name:"isTrue",label:"is checked"},{name:"isFalse",label:"is not checked"}],s=[...r,{name:"in",label:"is one of"},{name:"notIn",label:"is not one of"},...t],i=[{name:"includes",label:"includes"},{name:"notIncludes",label:"does not include"},{name:"hasLength",label:"has exactly"},{name:"hasMinLength",label:"has at least"},{name:"hasMaxLength",label:"has at most"},...t];switch(e){case"shortText":case"longText":case"multiLineInput":case"textEditor":case"email":case"phone":case"url":case"password":case"location":return o;case"number":case"slider":case"rangeSlider":return n;case"decisionBox":case"toggleSwitch":return a;case"singleChoice":case"dropdown":return s;case"multipleChoice":case"tags":return i;case"date":case"time":case"dateTime":case"dateRange":case"multipleDates":return[...r,{name:"greaterThan",label:"is after"},{name:"lessThan",label:"is before"},{name:"between",label:"is between"},...t];case"fileUpload":case"imageUpload":case"multiFileUpload":case"multiImageUpload":return t;case"singleChoiceMatrix":case"multipleChoiceMatrix":case"matrixTable":return t;default:return[...r,...t]}}function lD(e){switch(e){case"number":case"slider":case"rangeSlider":return"number";case"decisionBox":case"toggleSwitch":return"checkbox";case"date":case"dateRange":case"multipleDates":return"date";case"time":return"time";case"dateTime":return"datetime-local";case"singleChoice":case"dropdown":case"multipleChoice":case"tags":return"select";case"email":return"email";default:return"text"}}function iD(e){var t;if((t=e.config)!=null&&t.options&&Array.isArray(e.config.options))return e.config.options.map(r=>({name:r.value,label:r.label}))}function tl(e){return!e||!e.rules||e.rules.length===0?{combinator:"and",rules:[]}:{combinator:e.combinator,rules:e.rules.map(t=>({field:t.field,operator:t.operator,value:t.value}))}}function rl(e){return{combinator:e.combinator,rules:e.rules.filter(t=>"field"in t).map(t=>"field"in t?{field:t.field,operator:t.operator,value:t.value}:null).filter(Boolean)}}const ol=({title:e,children:t,defaultOpen:r=!1,badge:o})=>{const[n,a]=D.useState(r);return l.jsxs(Uf,{open:n,onOpenChange:a,className:p("border border-border rounded-lg overflow-hidden"),children:[l.jsx(Wf,{asChild:!0,children:l.jsxs(Ze,{variant:"ghost",className:p("w-full flex items-center justify-between px-3 py-2 h-auto bg-muted/50 hover:bg-muted rounded-none"),children:[l.jsxs("span",{className:p("flex items-center gap-2 text-sm font-medium text-foreground"),children:[e,o&&l.jsx(Oi,{variant:"secondary",className:p("text-xs"),children:o})]}),l.jsx(Yo,{className:p("h-4 w-4 transition-transform",n&&"rotate-180")})]})}),l.jsx(Hf,{children:l.jsx("div",{className:p("p-3 bg-card"),children:t})})]})},cD=({element:e,elements:t,onUpdate:r})=>{var u,h,m,g,y,b,C,w,x,S,N,E,M,k,T,A,L,O,F,V,re,K,H,ee,G,z,Ce,$,q,xe,oe,he,Y,ce,te,Ne,be,ue,X,ne,pe,Se,je,Je,Re,Ye,ye,rt;const o=D.useMemo(()=>t.filter(Le=>Le.id!==e.id).filter(Le=>!["divider","spacer","paragraph","image","link","formHeading","sectionHeading","subheading","submit"].includes(Le.type)).map(Le=>{var ct;const Ge=sD(Le.type),Ue=lD(Le.type),Ee=iD(Le);return{name:Le.id,label:Le.properties.label||Le.attributes.name||`Field ${Le.order+1}`,inputType:Ue,operators:Ge.map(et=>({name:et.name,label:et.label})),values:Ee==null?void 0:Ee.map(et=>({name:et.name,label:et.label})),defaultOperator:((ct=Ge[0])==null?void 0:ct.name)||"equals"}}),[t,e.id]),n=D.useCallback(Le=>{const Ge=rl(Le),Ue={...e.logic,showWhen:Ge.rules.length>0?Ge:void 0};r({logic:Ue})},[e.logic,r]),a=D.useCallback(Le=>{const Ge=rl(Le),Ue={...e.logic,hideWhen:Ge.rules.length>0?Ge:void 0};r({logic:Ue})},[e.logic,r]),s=D.useCallback(Le=>{const Ge=rl(Le),Ue={...e.logic,requireWhen:Ge.rules.length>0?Ge:void 0};r({logic:Ue})},[e.logic,r]),i=D.useCallback(Le=>{const Ge=rl(Le),Ue={...e.logic,disableWhen:Ge.rules.length>0?Ge:void 0};r({logic:Ue})},[e.logic,r]),c=D.useCallback(()=>{r({logic:void 0})},[r]),d=e.logic&&((((h=(u=e.logic.showWhen)==null?void 0:u.rules)==null?void 0:h.length)??0)>0||(((g=(m=e.logic.hideWhen)==null?void 0:m.rules)==null?void 0:g.length)??0)>0||(((b=(y=e.logic.requireWhen)==null?void 0:y.rules)==null?void 0:b.length)??0)>0||(((w=(C=e.logic.disableWhen)==null?void 0:C.rules)==null?void 0:w.length)??0)>0),f=(((N=(S=(x=e.logic)==null?void 0:x.showWhen)==null?void 0:S.rules)==null?void 0:N.length)??0)+(((k=(M=(E=e.logic)==null?void 0:E.hideWhen)==null?void 0:M.rules)==null?void 0:k.length)??0)+(((L=(A=(T=e.logic)==null?void 0:T.requireWhen)==null?void 0:A.rules)==null?void 0:L.length)??0)+(((V=(F=(O=e.logic)==null?void 0:O.disableWhen)==null?void 0:F.rules)==null?void 0:V.length)??0);return o.length===0?l.jsxs("div",{className:p("text-sm text-muted-foreground p-4 text-center bg-muted/50 rounded-lg"),children:[l.jsx(mf,{className:p("w-8 h-8 mx-auto mb-2 text-muted-foreground/50")}),l.jsx("p",{children:"Add more fields to enable conditional logic."}),l.jsx("p",{className:p("text-xs mt-1"),children:"Logic rules require other fields to reference."})]}):l.jsxs("div",{className:p("space-y-3"),children:[l.jsxs("div",{className:p("flex items-center justify-between"),children:[l.jsx("div",{className:p("text-sm text-muted-foreground"),children:d?l.jsxs("span",{className:p("flex items-center gap-2"),children:[l.jsx("span",{className:p("w-2 h-2 bg-primary rounded-full")}),f," rule",f!==1?"s":""," ","configured"]}):l.jsx("span",{className:p("text-muted-foreground/70"),children:"No logic configured"})}),d&&l.jsxs(Ze,{variant:"ghost",size:"sm",className:p("text-destructive hover:text-destructive hover:bg-destructive/10"),onClick:c,children:[l.jsx(Ti,{className:p("h-3 w-3 mr-1")}),"Clear all"]})]}),l.jsxs(ol,{title:"Show When",defaultOpen:!!((H=(K=(re=e.logic)==null?void 0:re.showWhen)==null?void 0:K.rules)!=null&&H.length),badge:(z=(G=(ee=e.logic)==null?void 0:ee.showWhen)==null?void 0:G.rules)!=null&&z.length?String(e.logic.showWhen.rules.length):void 0,children:[l.jsx("p",{className:p("text-xs text-muted-foreground mb-2"),children:"This element will only be visible when these conditions are met."}),l.jsx("div",{className:p("query-builder-wrapper"),children:l.jsx(Rs,{fields:o,query:tl((Ce=e.logic)==null?void 0:Ce.showWhen),onQueryChange:n,controlClassnames:{queryBuilder:"qb-lite",ruleGroup:"bg-muted/50 p-2 rounded border border-border",combinators:"px-2 py-1 border border-input rounded text-sm bg-background",addRule:"px-2 py-1 bg-primary text-primary-foreground rounded text-xs hover:bg-primary/90",addGroup:"px-2 py-1 bg-secondary text-secondary-foreground rounded text-xs hover:bg-secondary/80 ml-1",removeGroup:"px-2 py-1 bg-destructive/10 text-destructive rounded text-xs hover:bg-destructive/20",removeRule:"px-1 py-1 text-destructive hover:text-destructive/80",fields:"px-2 py-1 border border-input rounded text-sm min-w-[120px] bg-background",operators:"px-2 py-1 border border-input rounded text-sm mx-1 bg-background",value:"px-2 py-1 border border-input rounded text-sm bg-background"}})})]}),l.jsxs(ol,{title:"Hide When",defaultOpen:!!((xe=(q=($=e.logic)==null?void 0:$.hideWhen)==null?void 0:q.rules)!=null&&xe.length),badge:(Y=(he=(oe=e.logic)==null?void 0:oe.hideWhen)==null?void 0:he.rules)!=null&&Y.length?String(e.logic.hideWhen.rules.length):void 0,children:[l.jsx("p",{className:p("text-xs text-muted-foreground mb-2"),children:"This element will be hidden when these conditions are met."}),l.jsx("div",{className:p("query-builder-wrapper"),children:l.jsx(Rs,{fields:o,query:tl((ce=e.logic)==null?void 0:ce.hideWhen),onQueryChange:a,controlClassnames:{queryBuilder:"qb-lite",ruleGroup:"bg-muted/50 p-2 rounded border border-border",combinators:"px-2 py-1 border border-input rounded text-sm bg-background",addRule:"px-2 py-1 bg-primary text-primary-foreground rounded text-xs hover:bg-primary/90",addGroup:"px-2 py-1 bg-secondary text-secondary-foreground rounded text-xs hover:bg-secondary/80 ml-1",removeGroup:"px-2 py-1 bg-destructive/10 text-destructive rounded text-xs hover:bg-destructive/20",removeRule:"px-1 py-1 text-destructive hover:text-destructive/80",fields:"px-2 py-1 border border-input rounded text-sm min-w-[120px] bg-background",operators:"px-2 py-1 border border-input rounded text-sm mx-1 bg-background",value:"px-2 py-1 border border-input rounded text-sm bg-background"}})})]}),l.jsxs(ol,{title:"Required When",defaultOpen:!!((be=(Ne=(te=e.logic)==null?void 0:te.requireWhen)==null?void 0:Ne.rules)!=null&&be.length),badge:(ne=(X=(ue=e.logic)==null?void 0:ue.requireWhen)==null?void 0:X.rules)!=null&&ne.length?String(e.logic.requireWhen.rules.length):void 0,children:[l.jsx("p",{className:p("text-xs text-muted-foreground mb-2"),children:"This element will be required when these conditions are met."}),l.jsx("div",{className:p("query-builder-wrapper"),children:l.jsx(Rs,{fields:o,query:tl((pe=e.logic)==null?void 0:pe.requireWhen),onQueryChange:s,controlClassnames:{queryBuilder:"qb-lite",ruleGroup:"bg-muted/50 p-2 rounded border border-border",combinators:"px-2 py-1 border border-input rounded text-sm bg-background",addRule:"px-2 py-1 bg-primary text-primary-foreground rounded text-xs hover:bg-primary/90",addGroup:"px-2 py-1 bg-secondary text-secondary-foreground rounded text-xs hover:bg-secondary/80 ml-1",removeGroup:"px-2 py-1 bg-destructive/10 text-destructive rounded text-xs hover:bg-destructive/20",removeRule:"px-1 py-1 text-destructive hover:text-destructive/80",fields:"px-2 py-1 border border-input rounded text-sm min-w-[120px] bg-background",operators:"px-2 py-1 border border-input rounded text-sm mx-1 bg-background",value:"px-2 py-1 border border-input rounded text-sm bg-background"}})})]}),l.jsxs(ol,{title:"Disabled When",defaultOpen:!!((Je=(je=(Se=e.logic)==null?void 0:Se.disableWhen)==null?void 0:je.rules)!=null&&Je.length),badge:(ye=(Ye=(Re=e.logic)==null?void 0:Re.disableWhen)==null?void 0:Ye.rules)!=null&&ye.length?String(e.logic.disableWhen.rules.length):void 0,children:[l.jsx("p",{className:p("text-xs text-muted-foreground mb-2"),children:"This element will be disabled when these conditions are met."}),l.jsx("div",{className:p("query-builder-wrapper"),children:l.jsx(Rs,{fields:o,query:tl((rt=e.logic)==null?void 0:rt.disableWhen),onQueryChange:i,controlClassnames:{queryBuilder:"qb-lite",ruleGroup:"bg-muted/50 p-2 rounded border border-border",combinators:"px-2 py-1 border border-input rounded text-sm bg-background",addRule:"px-2 py-1 bg-primary text-primary-foreground rounded text-xs hover:bg-primary/90",addGroup:"px-2 py-1 bg-secondary text-secondary-foreground rounded text-xs hover:bg-secondary/80 ml-1",removeGroup:"px-2 py-1 bg-destructive/10 text-destructive rounded text-xs hover:bg-destructive/20",removeRule:"px-1 py-1 text-destructive hover:text-destructive/80",fields:"px-2 py-1 border border-input rounded text-sm min-w-[120px] bg-background",operators:"px-2 py-1 border border-input rounded text-sm mx-1 bg-background",value:"px-2 py-1 border border-input rounded text-sm bg-background"}})})]})]})};var dD=Object.defineProperty,uD=(e,t)=>dD(e,"name",{value:t,configurable:!0}),pD=v.forwardRef(uD(function(t,r){return l.jsx(Ie.label,{...t,ref:r,onMouseDown:o=>{var a;o.target.closest("button, input, select, textarea")||((a=t.onMouseDown)==null||a.call(t,o),!o.defaultPrevented&&o.detail>1&&o.preventDefault())}})},"Label")),eg=pD;const fD=es("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),Zt=v.forwardRef(({className:e,...t},r)=>l.jsx(eg,{ref:r,className:p(fD(),e),...t}));Zt.displayName=eg.displayName;const Qc=v.forwardRef(({className:e,...t},r)=>l.jsx("textarea",{className:p("flex min-h-[60px] w-full rounded-md border border-input bg-transparent px-3 py-2 text-base shadow-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e),ref:r,...t}));Qc.displayName="Textarea";var hD=Object.defineProperty,Vr=(e,t)=>hD(e,"name",{value:t,configurable:!0}),Kc="Checkbox",[mD,gI]=rr(Kc),[gD,Xc]=mD(Kc);function tg(e){const{__scopeCheckbox:t,checked:r,children:o,defaultChecked:n,disabled:a,form:s,name:i,onCheckedChange:c,required:d,value:f="on",internal_do_not_use_render:u}=e,[h,m]=br({prop:r,defaultProp:n??!1,onChange:c,caller:Kc}),[g,y]=v.useState(null),[b,C]=v.useState(null),w=v.useRef(!1),[x,S]=v.useReducer(M=>M+1,0),N=g?!!s||!!g.closest("form"):!0,E={checked:h,disabled:a,setChecked:m,control:g,setControl:y,name:i,form:s,value:f,hasConsumerStoppedPropagationRef:w,userInteractionCount:x,onUserInteraction:S,required:d,defaultChecked:zr(n)?!1:n,isFormControl:N,bubbleInput:b,setBubbleInput:C};return l.jsx(gD,{scope:t,...E,children:og(u)?u(E):o})}Vr(tg,"CheckboxProvider");var bD="CheckboxTrigger",yD=v.forwardRef(Vr(function({__scopeCheckbox:t,onKeyDown:r,onClick:o,...n},a){const{control:s,value:i,disabled:c,checked:d,required:f,setControl:u,setChecked:h,hasConsumerStoppedPropagationRef:m,onUserInteraction:g,isFormControl:y,bubbleInput:b}=Xc(bD,t),C=ze(a,u),w=v.useRef(d);return v.useEffect(()=>{const x=s==null?void 0:s.form;if(x){const S=Vr(()=>h(w.current),"reset");return x.addEventListener("reset",S),()=>x.removeEventListener("reset",S)}},[s,h]),l.jsx(Ie.button,{type:"button",role:"checkbox","aria-checked":zr(d)?"mixed":d,"aria-required":f,"data-state":Jc(d),"data-disabled":c?"":void 0,disabled:c,value:i,...n,ref:C,onKeyDown:we(r,x=>{x.key==="Enter"&&x.preventDefault()}),onClick:we(o,x=>{g(),h(S=>zr(S)?!0:!S),b&&y&&(m.current=x.isPropagationStopped(),m.current||x.stopPropagation())})})},"CheckboxTrigger")),rg=v.forwardRef(Vr(function(t,r){const{__scopeCheckbox:o,name:n,checked:a,defaultChecked:s,required:i,disabled:c,value:d,onCheckedChange:f,form:u,...h}=t;return l.jsx(tg,{__scopeCheckbox:o,checked:a,defaultChecked:s,disabled:c,required:i,onCheckedChange:f,name:n,form:u,value:d,internal_do_not_use_render:({isFormControl:m})=>l.jsxs(l.Fragment,{children:[l.jsx(yD,{...h,ref:r,__scopeCheckbox:o}),m&&l.jsx(CD,{__scopeCheckbox:o})]})})},"Checkbox")),vD="CheckboxIndicator",xD=v.forwardRef(Vr(function(t,r){const{__scopeCheckbox:o,forceMount:n,...a}=t,s=Xc(vD,o);return l.jsx(Vo,{present:n||zr(s.checked)||s.checked===!0,children:l.jsx(Ie.span,{"data-state":Jc(s.checked),"data-disabled":s.disabled?"":void 0,...a,ref:r,style:{pointerEvents:"none",...t.style}})})},"CheckboxIndicator")),wD="CheckboxBubbleInput",CD=v.forwardRef(Vr(function({__scopeCheckbox:t,onClick:r,...o},n){const{control:a,hasConsumerStoppedPropagationRef:s,userInteractionCount:i,checked:c,defaultChecked:d,required:f,disabled:u,name:h,value:m,form:g,bubbleInput:y,setBubbleInput:b}=Xc(wD,t),C=ze(n,b),w=bi(a),x=v.useRef(!1),S=v.useRef(c),N=v.useRef(i);v.useEffect(()=>{const M=y;if(!M)return;const k=window.HTMLInputElement.prototype,A=Object.getOwnPropertyDescriptor(k,"checked").set,L=i!==N.current;N.current=i;const O=S.current!==c;S.current=c;const F=!(L&&s.current);if(O&&A){x.current=!L;const V=new Event("click",{bubbles:F});M.indeterminate=zr(c),A.call(M,zr(c)?!1:c),M.dispatchEvent(V),x.current=!1}},[y,c,s,i]);const E=v.useRef(zr(c)?!1:c);return l.jsx(Ie.input,{type:"checkbox","aria-hidden":!0,defaultChecked:d??E.current,required:f,disabled:u,name:h,value:m,form:g,...o,tabIndex:-1,ref:C,onClick:we(r,M=>{x.current&&M.stopPropagation()}),style:{...o.style,...w,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})},"CheckboxBubbleInput"));function og(e){return typeof e=="function"}Vr(og,"isFunction");function zr(e){return e==="indeterminate"}Vr(zr,"isIndeterminate");function Jc(e){return zr(e)?"indeterminate":e?"checked":"unchecked"}Vr(Jc,"getState");const Zc=v.forwardRef(({className:e,...t},r)=>l.jsx(rg,{ref:r,className:p("grid place-content-center peer h-4 w-4 shrink-0 rounded-sm border border-primary shadow focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground",e),...t,children:l.jsx(xD,{className:p("grid place-content-center text-current"),children:l.jsx(pf,{className:p("h-4 w-4")})})}));Zc.displayName=rg.displayName;var SD=Object.defineProperty,Ht=(e,t)=>SD(e,"name",{value:t,configurable:!0}),Nr="Accordion",ND=["Home","End","ArrowDown","ArrowUp","ArrowLeft","ArrowRight"],[Rc,ED,kD]=Sa(Nr),[nl,bI]=rr(Nr,[kD,$f]),ed=$f(),_D=v.forwardRef(Ht(function(t,r){const{type:o,...n}=t,a=n,s=n;return l.jsx(Rc.Provider,{scope:t.__scopeAccordion,children:o==="multiple"?l.jsx(ID,{...s,ref:r}):l.jsx(TD,{...a,ref:r})})},"Accordion")),[ng,DD]=nl(Nr),[ag,AD]=nl(Nr,{collapsible:!1}),TD=v.forwardRef(Ht(function(t,r){const{value:o,defaultValue:n,onValueChange:a=Ht(()=>{},"onValueChange"),collapsible:s=!1,...i}=t,[c,d]=br({prop:o,defaultProp:n??"",onChange:a,caller:Nr});return l.jsx(ng,{scope:t.__scopeAccordion,value:v.useMemo(()=>c?[c]:[],[c]),onItemOpen:d,onItemClose:v.useCallback(()=>s&&d(""),[s,d]),children:l.jsx(ag,{scope:t.__scopeAccordion,collapsible:s,children:l.jsx(sg,{...i,ref:r})})})},"AccordionImplSingle")),ID=v.forwardRef(Ht(function(t,r){const{value:o,defaultValue:n,onValueChange:a=Ht(()=>{},"onValueChange"),...s}=t,[i,c]=br({prop:o,defaultProp:n??[],onChange:a,caller:Nr}),d=v.useCallback(u=>c((h=[])=>[...h,u]),[c]),f=v.useCallback(u=>c((h=[])=>h.filter(m=>m!==u)),[c]);return l.jsx(ng,{scope:t.__scopeAccordion,value:i,onItemOpen:d,onItemClose:f,children:l.jsx(ag,{scope:t.__scopeAccordion,collapsible:!0,children:l.jsx(sg,{...s,ref:r})})})},"AccordionImplMultiple")),[PD,al]=nl(Nr),sg=v.forwardRef(Ht(function(t,r){const{__scopeAccordion:o,disabled:n,dir:a,orientation:s="vertical",...i}=t,c=v.useRef(null),d=ze(c,r),f=ED(o),h=hn(a)==="ltr",m=we(t.onKeyDown,g=>{var T;if(!ND.includes(g.key))return;const y=g.target,b=f().filter(A=>{var L;return!((L=A.ref.current)!=null&&L.disabled)}),C=b.findIndex(A=>A.ref.current===y),w=b.length;if(C===-1)return;g.preventDefault();let x=C;const S=0,N=w-1,E=Ht(()=>{x=C+1,x>N&&(x=S)},"moveNext"),M=Ht(()=>{x=C-1,x<S&&(x=N)},"movePrev");switch(g.key){case"Home":x=S;break;case"End":x=N;break;case"ArrowRight":s==="horizontal"&&(h?E():M());break;case"ArrowDown":s==="vertical"&&E();break;case"ArrowLeft":s==="horizontal"&&(h?M():E());break;case"ArrowUp":s==="vertical"&&M();break}const k=x%w;(T=b[k].ref.current)==null||T.focus()});return l.jsx(PD,{scope:o,disabled:n,direction:a,orientation:s,children:l.jsx(Rc.Slot,{scope:o,children:l.jsx(Ie.div,{...i,"data-orientation":s,ref:d,onKeyDown:n?void 0:m})})})},"AccordionImpl")),td="AccordionItem",[MD,rd]=nl(td),OD=v.forwardRef(Ht(function(t,r){const{__scopeAccordion:o,value:n,...a}=t,s=al(td,o),i=DD(td,o),c=ed(o),d=Hr(),f=n&&i.value.includes(n)||!1,u=s.disabled||t.disabled;return l.jsx(MD,{scope:o,open:f,disabled:u,triggerId:d,children:l.jsx(Bf,{"data-orientation":s.orientation,"data-state":od(f),...c,...a,ref:r,disabled:u,open:f,onOpenChange:h=>{h?i.onItemOpen(n):i.onItemClose(n)}})})},"AccordionItem")),LD="AccordionHeader",FD=v.forwardRef(Ht(function(t,r){const{__scopeAccordion:o,...n}=t,a=al(Nr,o),s=rd(LD,o);return l.jsx(Ie.h3,{"data-orientation":a.orientation,"data-state":od(s.open),"data-disabled":s.disabled?"":void 0,...n,ref:r})},"AccordionHeader")),lg="AccordionTrigger",$D=v.forwardRef(Ht(function(t,r){const{__scopeAccordion:o,...n}=t,a=al(Nr,o),s=rd(lg,o),i=AD(lg,o),c=ed(o);return l.jsx(Rc.ItemSlot,{scope:o,children:l.jsx(FN,{"aria-disabled":s.open&&!i.collapsible||void 0,"data-orientation":a.orientation,id:s.triggerId,...c,...n,ref:r})})},"AccordionTrigger")),GD="AccordionContent",VD=v.forwardRef(Ht(function(t,r){const{__scopeAccordion:o,...n}=t,a=al(Nr,o),s=rd(GD,o),i=ed(o);return l.jsx($N,{role:"region","aria-labelledby":s.triggerId,"data-orientation":a.orientation,...i,...n,ref:r,style:{"--radix-accordion-content-height":"var(--radix-collapsible-content-height)","--radix-accordion-content-width":"var(--radix-collapsible-content-width)",...t.style}})},"AccordionContent"));function od(e){return e?"open":"closed"}Ht(od,"getState");var zD=_D,BD=OD,UD=FD,ig=$D,cg=VD;const dg=zD,nd=v.forwardRef(({className:e,...t},r)=>l.jsx(BD,{ref:r,className:p("border-b",e),...t}));nd.displayName="AccordionItem";const ad=v.forwardRef(({className:e,children:t,...r},o)=>l.jsx(UD,{className:p("flex"),children:l.jsxs(ig,{ref:o,className:p("flex flex-1 items-center justify-between py-4 text-sm font-medium transition-all hover:underline text-left [&[data-state=open]>svg]:rotate-180",e),...r,children:[t,l.jsx(Yo,{className:p("h-4 w-4 shrink-0 text-muted-foreground transition-transform duration-200")})]})}));ad.displayName=ig.displayName;const sd=v.forwardRef(({className:e,children:t,...r},o)=>l.jsx(cg,{ref:o,className:p("overflow-hidden text-sm data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down"),...r,children:l.jsx("div",{className:p("pb-4 pt-0",e),children:t})}));sd.displayName=cg.displayName;function ld(e,t,r){var o,n,a,s;switch(t){case"properties":return(o=e.properties)==null?void 0:o[r];case"config":return(n=e.config)==null?void 0:n[r];case"layout":return(a=e.layout)==null?void 0:a[r];case"validation":return(s=e.validation)==null?void 0:s[r];default:return}}function WD(e,t,r,o){switch(e){case"properties":return{properties:{...t.properties,[r]:o}};case"config":return{config:{...t.config,[r]:o}};case"layout":return{layout:{...t.layout,[r]:o}};case"validation":return{validation:{...t.validation,[r]:o}};default:return{}}}function HD(e,t,r){const{field:o,value:n}=r;if(o.includes(".")){const[s,...i]=o.split("."),c=i.join(".");return ld(e,s,c)===n}return ld(e,t.section,o)===n}const ug=({field:e,element:t,onUpdate:r})=>{var a;const o=ld(t,e.section,e.key)??e.defaultValue,n=s=>{r(WD(e.section,t,e.key,s))};switch(e.type){case"text":case"url":case"color":return l.jsxs("div",{className:p("space-y-1.5"),children:[l.jsx(Zt,{className:p("text-xs font-medium text-muted-foreground"),children:e.label}),l.jsx(Kt,{type:e.type==="color"?"color":e.type==="url"?"url":"text",value:o??"",onChange:s=>n(s.target.value),placeholder:e.placeholder}),e.description&&l.jsx("p",{className:p("text-[11px] text-muted-foreground"),children:e.description})]});case"textarea":return l.jsxs("div",{className:p("space-y-1.5"),children:[l.jsx(Zt,{className:p("text-xs font-medium text-muted-foreground"),children:e.label}),l.jsx(Qc,{value:o??"",onChange:s=>n(s.target.value),placeholder:e.placeholder,rows:e.rows??3}),e.description&&l.jsx("p",{className:p("text-[11px] text-muted-foreground"),children:e.description})]});case"number":return l.jsxs("div",{className:p("space-y-1.5"),children:[l.jsx(Zt,{className:p("text-xs font-medium text-muted-foreground"),children:e.label}),l.jsx(Kt,{type:"number",value:o??"",onChange:s=>{const i=s.target.value;n(i?Number.isInteger(e.min)||Number.isInteger(e.max)?parseInt(i,10):parseFloat(i):void 0)},placeholder:e.placeholder,min:e.min,max:e.max}),e.description&&l.jsx("p",{className:p("text-[11px] text-muted-foreground"),children:e.description})]});case"checkbox":return l.jsxs("div",{className:p("flex items-start space-x-2"),children:[l.jsx(Zc,{id:`ds-${e.section}-${e.key}`,checked:!!o,onCheckedChange:s=>n(!!s)}),l.jsxs("div",{className:p("space-y-0.5 leading-none"),children:[l.jsx(Zt,{htmlFor:`ds-${e.section}-${e.key}`,className:p("text-xs font-medium text-foreground cursor-pointer"),children:e.label}),e.description&&l.jsx("p",{className:p("text-[11px] text-muted-foreground"),children:e.description})]})]});case"select":return l.jsxs("div",{className:p("space-y-1.5"),children:[l.jsx(Zt,{className:p("text-xs font-medium text-muted-foreground"),children:e.label}),l.jsxs(Xa,{value:o!=null?String(o):"",onValueChange:s=>{var c;const i=(c=e.options)==null?void 0:c.find(d=>typeof d.value=="number"&&String(d.value)===s);n(i?i.value:s)},children:[l.jsx(vn,{children:l.jsx(Ja,{placeholder:e.placeholder||"Select..."})}),l.jsx(xn,{children:(a=e.options)==null?void 0:a.map(s=>l.jsx(yo,{value:String(s.value),children:s.label},String(s.value)))})]}),e.description&&l.jsx("p",{className:p("text-[11px] text-muted-foreground"),children:e.description})]});default:return null}},jD=({title:e,icon:t,defaultOpen:r=!0,children:o})=>l.jsx(dg,{type:"single",collapsible:!0,defaultValue:r?"item":void 0,children:l.jsxs(nd,{value:"item",className:p("border-b border-border"),children:[l.jsx(ad,{className:p("px-4 py-3 hover:bg-muted/50 hover:no-underline"),children:l.jsxs("span",{className:p("text-sm font-medium text-foreground flex items-center gap-2"),children:[t&&l.jsx("span",{children:t}),e]})}),l.jsx(sd,{className:p("px-4 pb-4 mb-4"),children:l.jsx("div",{className:p("space-y-4"),children:o})})]})}),YD=({element:e,schema:t,onUpdate:r})=>{const o=t.fields.filter(c=>c.showWhen?HD(e,c,c.showWhen):!0),n=[];let a=[];const s=()=>{a.length>0&&(n.push(a),a=[])};for(const c of o)c.colSpan===1?(a.push(c),a.length===2&&s()):(s(),n.push([c]));s();const{configSection:i}=t;return l.jsx(jD,{title:(i==null?void 0:i.title)??"Settings",icon:i==null?void 0:i.icon,defaultOpen:!1,children:n.map((c,d)=>{if(!c.every(u=>u.colSpan===1)){const u=c[0];return l.jsx(ug,{field:u,element:e,onUpdate:r},`${u.section}.${u.key}`)}return l.jsx("div",{className:p("grid grid-cols-2 gap-2"),children:c.map(u=>l.jsx(ug,{field:u,element:e,onUpdate:r},`${u.section}.${u.key}`))},`row-${d}`)})})},to=({title:e,children:t,defaultOpen:r=!0,icon:o})=>l.jsx(dg,{type:"single",collapsible:!0,defaultValue:r?"item":void 0,children:l.jsxs(nd,{value:"item",className:p("border-b border-border"),children:[l.jsx(ad,{className:p("px-4 py-3 hover:bg-muted/50 hover:no-underline"),children:l.jsxs("span",{className:p("text-sm font-medium text-foreground flex items-center gap-2"),children:[o&&l.jsx("span",{children:o}),e]})}),l.jsx(sd,{className:p("px-4 pb-4 mb-4"),children:l.jsx("div",{className:p("space-y-4"),children:t})})]})}),Be=({label:e,value:t,onChange:r,type:o="text",placeholder:n,rows:a=3,min:s,max:i,step:c,helpText:d})=>l.jsxs("div",{className:p("space-y-1.5"),children:[l.jsx(Zt,{className:p("text-sm font-medium"),children:e}),o==="textarea"?l.jsx(Qc,{value:t??"",onChange:f=>r(f.target.value),placeholder:n,rows:a,className:p("resize-none")}):o==="color"?l.jsxs("div",{className:p("flex gap-2"),children:[l.jsx("input",{type:"color",value:(t==null?void 0:t.toString())||"#000000",onChange:f=>r(f.target.value),className:p("w-10 h-9 border border-input rounded-md cursor-pointer")}),l.jsx(Kt,{type:"text",value:t??"",onChange:f=>r(f.target.value),placeholder:n||"#000000",className:p("flex-1")})]}):l.jsx(Kt,{type:o,value:t??"",onChange:f=>r(f.target.value),placeholder:n,min:s,max:i,step:c}),d&&l.jsx("p",{className:p("text-xs text-muted-foreground"),children:d})]}),pg=({label:e,checked:t,onChange:r,description:o})=>l.jsxs("div",{className:p("flex items-start gap-3"),children:[l.jsx(Zc,{id:e,checked:t||!1,onCheckedChange:n=>r(n===!0),className:p("mt-0.5")}),l.jsxs("div",{className:p("grid gap-0.5 leading-none"),children:[l.jsx(Zt,{htmlFor:e,className:p("text-sm font-medium cursor-pointer"),children:e}),o&&l.jsx("p",{className:p("text-xs text-muted-foreground"),children:o})]})]}),id=({label:e,value:t,onChange:r,options:o,helpText:n})=>l.jsxs("div",{className:p("space-y-1.5"),children:[l.jsx(Zt,{className:p("text-sm font-medium"),children:e}),l.jsxs(Xa,{value:(t==null?void 0:t.toString())??"",onValueChange:r,children:[l.jsx(vn,{className:p("w-full"),children:l.jsx(Ja,{placeholder:"Select..."})}),l.jsx(xn,{children:o.map(a=>l.jsx(yo,{value:a.value,children:a.label},a.value))})]}),n&&l.jsx("p",{className:p("text-xs text-muted-foreground"),children:n})]}),qD=({options:e,onChange:t})=>{const r=(s,i,c)=>{const d=[...e];if(d[s]={...d[s],[i]:c},i==="label"){const f=d[s].value,u=e[s].label;(!f||f===Pl(u))&&(d[s].value=Pl(c))}t(d)},o=()=>{const s=e.length+1;t([...e,{label:`Option ${s}`,value:`option${s}`}])},n=s=>{e.length>1&&t(e.filter((i,c)=>c!==s))},a=(s,i)=>{const c=i==="up"?s-1:s+1;if(c<0||c>=e.length)return;const d=[...e];[d[s],d[c]]=[d[c],d[s]],t(d)};return l.jsxs("div",{className:p("space-y-2"),children:[l.jsx(Zt,{className:p("text-sm font-medium"),children:"Options"}),l.jsx("div",{className:p("space-y-2"),children:e.map((s,i)=>l.jsxs("div",{className:p("flex items-center gap-1"),children:[l.jsxs("div",{className:p("flex flex-col gap-0.5"),children:[l.jsx(Ze,{variant:"ghost",size:"icon",className:p("h-5 w-5"),onClick:()=>a(i,"up"),disabled:i===0,children:l.jsx(ff,{className:p("h-3 w-3")})}),l.jsx(Ze,{variant:"ghost",size:"icon",className:p("h-5 w-5"),onClick:()=>a(i,"down"),disabled:i===e.length-1,children:l.jsx(Yo,{className:p("h-3 w-3")})})]}),l.jsx(Kt,{type:"text",value:s.label,onChange:c=>r(i,"label",c.target.value),placeholder:"Label",className:p("flex-1 h-8")}),l.jsx(Kt,{type:"text",value:s.value,onChange:c=>r(i,"value",c.target.value),placeholder:"Value",className:p("w-20 h-8 text-muted-foreground")}),l.jsx(as,{children:l.jsxs(vr,{children:[l.jsx(xr,{asChild:!0,children:l.jsx(Ze,{variant:"ghost",size:"icon",className:p("h-8 w-8"),onClick:()=>n(i),disabled:e.length<=1,children:l.jsx(Ka,{className:p("h-4 w-4")})})}),l.jsx(sr,{children:"Remove option"})]})})]},i))}),l.jsxs(Ze,{variant:"ghost",size:"sm",className:p("text-primary"),onClick:o,children:[l.jsx(Ai,{className:p("h-4 w-4 mr-1")}),"Add option"]})]})},QD=({rows:e,columns:t,onRowsChange:r,onColumnsChange:o,showColumnType:n=!1})=>{const a=()=>{const u=`row${e.length+1}`;r([...e,{id:u,label:`Row ${e.length+1}`}])},s=u=>{e.length>1&&r(e.filter((h,m)=>m!==u))},i=(u,h,m)=>{const g=[...e];g[u]={...g[u],[h]:m},r(g)},c=()=>{const u=`col${t.length+1}`;o([...t,{id:u,label:`Column ${t.length+1}`,type:"text"}])},d=u=>{t.length>1&&o(t.filter((h,m)=>m!==u))},f=(u,h,m)=>{const g=[...t];g[u]={...g[u],[h]:m},o(g)};return l.jsxs("div",{className:p("space-y-4"),children:[l.jsxs("div",{className:p("space-y-2"),children:[l.jsx(Zt,{className:p("text-sm font-medium"),children:"Rows"}),l.jsx("div",{className:p("space-y-2"),children:e.map((u,h)=>l.jsxs("div",{className:p("flex items-center gap-2"),children:[l.jsx(Kt,{type:"text",value:u.id,onChange:m=>i(h,"id",m.target.value),placeholder:"Row ID",className:p("w-24 h-8 font-mono text-xs")}),l.jsx(Kt,{type:"text",value:u.label,onChange:m=>i(h,"label",m.target.value),placeholder:"Row label",className:p("flex-1 h-8")}),l.jsx(Ze,{variant:"ghost",size:"icon",className:p("h-8 w-8"),onClick:()=>s(h),disabled:e.length<=1,children:l.jsx(Ka,{className:p("h-4 w-4")})})]},h))}),l.jsxs(Ze,{variant:"ghost",size:"sm",className:p("text-primary"),onClick:a,children:[l.jsx(Ai,{className:p("h-4 w-4 mr-1")}),"Add row"]})]}),l.jsxs("div",{className:p("space-y-2"),children:[l.jsx(Zt,{className:p("text-sm font-medium"),children:"Columns"}),l.jsx("div",{className:p("space-y-2"),children:t.map((u,h)=>l.jsxs("div",{className:p("flex items-center gap-2"),children:[l.jsx(Kt,{type:"text",value:u.id,onChange:m=>f(h,"id",m.target.value),placeholder:"Column ID",className:p("w-24 h-8 font-mono text-xs")}),l.jsx(Kt,{type:"text",value:u.label,onChange:m=>f(h,"label",m.target.value),placeholder:"Column label",className:p("flex-1 h-8")}),n&&l.jsxs(Xa,{value:u.type||"text",onValueChange:m=>f(h,"type",m),children:[l.jsx(vn,{className:p("w-24 h-8"),children:l.jsx(Ja,{})}),l.jsxs(xn,{children:[l.jsx(yo,{value:"text",children:"Text"}),l.jsx(yo,{value:"number",children:"Number"}),l.jsx(yo,{value:"dropdown",children:"Dropdown"})]})]}),l.jsx(Ze,{variant:"ghost",size:"icon",className:p("h-8 w-8"),onClick:()=>d(h),disabled:t.length<=1,children:l.jsx(Ka,{className:p("h-4 w-4")})})]},h))}),l.jsxs(Ze,{variant:"ghost",size:"sm",className:p("text-primary"),onClick:c,children:[l.jsx(Ai,{className:p("h-4 w-4 mr-1")}),"Add column"]})]})]})},KD=({element:e,onUpdate:t})=>{const r=(c,d)=>{t({properties:{...e.properties,[c]:d}})},o=["shortText","longText","multiLineInput","textEditor","number","email","phone","url","location","password","dropdown","tags","date","time","dateTime","multipleDates","dateRange"].includes(e.type),n=!["divider","spacer","paragraph","image","link"].includes(e.type),a=["paragraph"].includes(e.type),s=["link"].includes(e.type),i=["image"].includes(e.type);return l.jsxs(to,{title:"Properties",icon:"📝",children:[!["divider","spacer"].includes(e.type)&&l.jsx(Be,{label:"Label",value:e.properties.label,onChange:c=>r("label",c),placeholder:"Enter label..."}),o&&l.jsx(Be,{label:"Placeholder",value:e.properties.placeholder,onChange:c=>r("placeholder",c),placeholder:"Enter placeholder..."}),n&&l.jsx(Be,{label:"Description",value:e.properties.description,onChange:c=>r("description",c),type:"textarea",placeholder:"Enter description...",rows:2}),a&&l.jsx(Be,{label:"Content",value:e.properties.content,onChange:c=>r("content",c),type:"textarea",placeholder:"Enter paragraph text...",rows:4}),s&&l.jsxs(l.Fragment,{children:[l.jsx(Be,{label:"Link Text",value:e.properties.content,onChange:c=>r("content",c),placeholder:"Click here"}),l.jsx(Be,{label:"URL",value:e.properties.href,onChange:c=>r("href",c),type:"url",placeholder:"https://example.com"}),l.jsx(id,{label:"Target",value:e.properties.target,onChange:c=>r("target",c),options:[{value:"_blank",label:"New Tab"},{value:"_self",label:"Same Tab"}]})]}),i&&l.jsxs(l.Fragment,{children:[l.jsx(Be,{label:"Image URL",value:e.properties.src,onChange:c=>r("src",c),type:"url",placeholder:"https://example.com/image.jpg"}),l.jsx(Be,{label:"Alt Text",value:e.properties.alt,onChange:c=>r("alt",c),placeholder:"Image description"})]}),["shortText","number"].includes(e.type)&&l.jsxs("div",{className:p("grid grid-cols-2 gap-2"),children:[l.jsx(Be,{label:"Prefix",value:e.properties.prefix,onChange:c=>r("prefix",c),placeholder:"$"}),l.jsx(Be,{label:"Suffix",value:e.properties.suffix,onChange:c=>r("suffix",c),placeholder:".00"})]})]})},XD=({element:e,onUpdate:t})=>{const r=(n,a)=>{t({layout:{...e.layout,[n]:a}})},o=!["divider","spacer","formHeading","sectionHeading","subheading","paragraph","image","link","captcha","decisionBox"].includes(e.type);return l.jsxs(to,{title:"Layout",icon:"📐",defaultOpen:!1,children:[o&&l.jsx(id,{label:"Label Position",value:e.layout.labelPosition,onChange:n=>r("labelPosition",n),options:[{value:"top",label:"Top"},{value:"left",label:"Left"},{value:"hidden",label:"Hidden"}]}),l.jsx(id,{label:"Size",value:e.layout.size,onChange:n=>r("size",n),options:[{value:"small",label:"Small"},{value:"default",label:"Default"},{value:"medium",label:"Medium"},{value:"large",label:"Large"},{value:"full",label:"Full Width"}]}),l.jsx(Be,{label:"Custom Width",value:e.layout.width,onChange:n=>r("width",n),placeholder:"e.g., 50%, 300px"}),l.jsx(Be,{label:"CSS Class",value:e.layout.className,onChange:n=>r("className",n),placeholder:"custom-class",helpText:"Additional CSS classes"})]})},JD=({element:e,onUpdate:t})=>{var c,d,f,u,h,m,g,y,b,C,w;const r=(x,S)=>{t({validation:{...e.validation,[x]:S}})},o=Sv(e.type),n=["shortText","longText","multiLineInput","textEditor","password"].includes(e.type),a=["number","slider","rangeSlider"].includes(e.type),s=["multiFileUpload","multiImageUpload"].includes(e.type),i=["multipleDates"].includes(e.type);return l.jsxs(to,{title:"Validation",icon:"✅",defaultOpen:!1,children:[o.supportsRequired&&l.jsx(pg,{label:"Required",checked:(c=e.validation)==null?void 0:c.required,onChange:x=>r("required",x),description:"Field must be filled"}),n&&l.jsxs("div",{className:p("grid grid-cols-2 gap-2"),children:[l.jsx(Be,{label:"Min Length",value:(d=e.validation)==null?void 0:d.minLength,onChange:x=>r("minLength",x?parseInt(x):void 0),type:"number",placeholder:"0",min:0}),l.jsx(Be,{label:"Max Length",value:(f=e.validation)==null?void 0:f.maxLength,onChange:x=>r("maxLength",x?parseInt(x):void 0),type:"number",placeholder:"255",min:0})]}),a&&l.jsxs("div",{className:p("grid grid-cols-2 gap-2"),children:[l.jsx(Be,{label:"Min Value",value:(u=e.validation)==null?void 0:u.min,onChange:x=>r("min",x?parseFloat(x):void 0),type:"number"}),l.jsx(Be,{label:"Max Value",value:(h=e.validation)==null?void 0:h.max,onChange:x=>r("max",x?parseFloat(x):void 0),type:"number"})]}),o.supportsPattern&&l.jsx(Be,{label:"Pattern (Regex)",value:(m=e.validation)==null?void 0:m.pattern,onChange:x=>r("pattern",x),placeholder:"^[a-zA-Z]+$",helpText:"Regular expression for validation"}),s&&l.jsxs("div",{className:p("grid grid-cols-2 gap-2"),children:[l.jsx(Be,{label:"Min Files",value:(g=e.validation)==null?void 0:g.minFiles,onChange:x=>r("minFiles",x?parseInt(x):void 0),type:"number",min:0}),l.jsx(Be,{label:"Max Files",value:(y=e.validation)==null?void 0:y.maxFiles,onChange:x=>r("maxFiles",x?parseInt(x):void 0),type:"number",min:1})]}),i&&l.jsxs("div",{className:p("grid grid-cols-2 gap-2"),children:[l.jsx(Be,{label:"Min Dates",value:(b=e.validation)==null?void 0:b.minDates,onChange:x=>r("minDates",x?parseInt(x):void 0),type:"number",min:0}),l.jsx(Be,{label:"Max Dates",value:(C=e.validation)==null?void 0:C.maxDates,onChange:x=>r("maxDates",x?parseInt(x):void 0),type:"number",min:1})]}),l.jsx(Be,{label:"Error Message",value:(w=e.validation)==null?void 0:w.errorMessage,onChange:x=>r("errorMessage",x),placeholder:"Custom error message..."})]})},ZD=({element:e,onUpdate:t,existingNames:r})=>{const[o,n]=D.useState(null),a=(s,i)=>{{const c=new Set(r);c.delete(e.attributes.name),c.has(i)?n("This field name already exists"):!i||i.trim()===""?n("Field name is required"):/^[a-zA-Z][a-zA-Z0-9_]*$/.test(i)?n(null):n("Must start with letter, only letters/numbers/underscores")}t({attributes:{...e.attributes,[s]:i}})};return l.jsx(to,{title:"Attributes",icon:"🏷️",defaultOpen:!1,children:l.jsxs("div",{children:[l.jsx("label",{className:p("block text-sm font-medium text-gray-700 mb-1"),children:"Field Name"}),l.jsx("input",{type:"text",value:e.attributes.name||"",onChange:s=>a("name",s.target.value),placeholder:"fieldName",className:p("w-full px-3 py-2 border rounded-md text-sm focus:outline-none focus:ring-2 focus:border-transparent",o?"border-red-500 focus:ring-red-500":"border-gray-300 focus:ring-blue-500")}),o&&l.jsx("p",{className:p("mt-1 text-xs text-red-600"),children:o}),l.jsx("p",{className:p("mt-1 text-xs text-gray-500"),children:"Used as the key in JSON output"})]})})},RD=({element:e,onUpdate:t})=>{var n,a,s,i;const r=c=>{t({config:{...e.config,options:c}})},o=(c,d)=>{t({config:{...e.config,[c]:d}})};return l.jsxs(to,{title:"Options",icon:"📋",children:[l.jsx(qD,{options:((n=e.config)==null?void 0:n.options)||[],onChange:r}),l.jsx(pg,{label:"Allow 'Other' option",checked:(a=e.config)==null?void 0:a.allowOther,onChange:c=>o("allowOther",c),description:"Let users enter custom value"}),((s=e.config)==null?void 0:s.allowOther)&&l.jsx(Be,{label:"Other Label",value:(i=e.config)==null?void 0:i.otherLabel,onChange:c=>o("otherLabel",c),placeholder:"Other..."})]})},eA=({element:e,onUpdate:t})=>{var o,n;const r=(a,s)=>{t({config:{...e.config,[a]:s}})};return l.jsx(to,{title:"Matrix Configuration",icon:"📊",children:l.jsx(QD,{rows:((o=e.config)==null?void 0:o.matrixRows)||[],columns:((n=e.config)==null?void 0:n.matrixColumns)||[],onRowsChange:a=>r("matrixRows",a),onColumnsChange:a=>r("matrixColumns",a),showColumnType:e.type==="matrixTable"})})},tA=()=>l.jsxs("div",{className:p("flex flex-col items-center justify-center h-full text-center px-6 py-12"),children:[l.jsx("div",{className:p("w-12 h-12 bg-muted rounded-full flex items-center justify-center mb-4"),children:l.jsx(bS,{className:p("w-6 h-6 text-muted-foreground")})}),l.jsx("h3",{className:p("text-sm font-medium text-foreground mb-1"),children:"No element selected"}),l.jsx("p",{className:p("text-xs text-muted-foreground"),children:"Click on an element in the canvas to edit its properties"})]}),rA=({element:e,onUpdate:t,propertyConfig:r})=>{const o=(f,u)=>{t({properties:{...e.properties,[f]:u}})},n=r??{showLabel:!0,showPlaceholder:!0,showDescription:!0,showPrefix:!1,showSuffix:!1},a=n.showLabel!==!1,s=n.showPlaceholder===!0,i=n.showDescription!==!1,c=n.showPrefix===!0,d=n.showSuffix===!0;return!a&&!s&&!i&&!c&&!d?null:l.jsxs(to,{title:"Properties",icon:"📝",children:[a&&l.jsx(Be,{label:"Label",value:e.properties.label,onChange:f=>o("label",f),placeholder:"Enter label..."}),s&&l.jsx(Be,{label:"Placeholder",value:e.properties.placeholder,onChange:f=>o("placeholder",f),placeholder:"Enter placeholder..."}),i&&l.jsx(Be,{label:"Description",value:e.properties.description,onChange:f=>o("description",f),type:"textarea",placeholder:"Enter description...",rows:2}),(c||d)&&l.jsxs("div",{className:p("grid grid-cols-2 gap-2"),children:[c&&l.jsx(Be,{label:"Prefix",value:e.properties.prefix,onChange:f=>o("prefix",f),placeholder:"$"}),d&&l.jsx(Be,{label:"Suffix",value:e.properties.suffix,onChange:f=>o("suffix",f),placeholder:".00"})]})]})},oA=()=>{const e=_v(),t=R(g=>g.updateElement),r=R(g=>g.deleteElement),o=R(g=>g.duplicateElement),n=R(g=>g.schema.elements),a=D.useMemo(()=>new Set(n.map(g=>g.attributes.name).filter(Boolean)),[n]);if(!e)return l.jsx("div",{className:p("w-72 bg-card border-l border-border flex-col h-full hidden"),children:l.jsx(tA,{})});const s=g=>{t(e.id,g)},i=dt.get(e.type),c=!!(i!=null&&i.renderSettings),d=i==null?void 0:i.settingsSchema,f=c||!!d,u=i!=null&&i.icon&&typeof i.icon=="string"?i.icon:Pi[e.type],h=(i==null?void 0:i.label)??Ii[e.type],m=d==null?void 0:d.showSections;return l.jsxs("div",{className:p("w-72 bg-card border-l border-border flex flex-col h-full flex-shrink-0"),children:[l.jsxs("div",{className:p("p-4 border-b border-border"),children:[l.jsxs("div",{className:p("flex items-center gap-2 mb-1"),children:[l.jsx("span",{className:p("text-xl"),children:u}),l.jsx("h2",{className:p("text-lg font-semibold text-foreground"),children:h})]}),l.jsxs("div",{className:p("flex gap-2 mt-3"),children:[l.jsxs(Ze,{variant:"secondary",size:"sm",className:p("flex-1"),onClick:()=>o(e.id),children:[l.jsx(uS,{className:p("h-3 w-3 mr-1")}),"Duplicate"]}),l.jsxs(Ze,{variant:"destructive",size:"sm",className:p("flex-1"),onClick:()=>{window.confirm("Are you sure you want to delete this element?")&&r(e.id)},children:[l.jsx(Ti,{className:p("h-3 w-3 mr-1")}),"Delete"]})]})]}),l.jsxs(Ji,{className:p("flex-1"),children:[c&&i.renderSettings({element:e,onUpdate:s}),!c&&l.jsxs(l.Fragment,{children:[(m==null?void 0:m.properties)!==!1&&(f?l.jsx(rA,{element:e,onUpdate:s,propertyConfig:d==null?void 0:d.properties}):l.jsx(KD,{element:e,onUpdate:s})),(m==null?void 0:m.options)!==!1&&XS(e.type)&&l.jsx(RD,{element:e,onUpdate:s}),(m==null?void 0:m.matrix)!==!1&&ZS(e.type)&&l.jsx(eA,{element:e,onUpdate:s}),d&&l.jsx(YD,{element:e,schema:d,onUpdate:s}),(m==null?void 0:m.layout)!==!1&&l.jsx(XD,{element:e,onUpdate:s}),(m==null?void 0:m.validation)!==!1&&((i==null?void 0:i.supportsValidation)??JS(e.type))&&!Ol(e.type)&&l.jsx(JD,{element:e,onUpdate:s}),(m==null?void 0:m.attributes)!==!1&&((i==null?void 0:i.structure)==="field"||YS(e.type))&&!Ol(e.type)&&l.jsx(ZD,{element:e,onUpdate:s,existingNames:a}),(m==null?void 0:m.logic)!==!1&&!Ol(e.type)&&l.jsx(to,{title:"Conditional Logic",icon:"⚡",children:l.jsx(cD,{element:e,elements:n,onUpdate:s})})]})]})]})};var Wn=e=>e.type==="checkbox",sl=e=>e.type==="file",ro=e=>e instanceof Date,Et=e=>e==null;const cd=e=>typeof e=="object";var tt=e=>!Et(e)&&!Array.isArray(e)&&cd(e)&&!ro(e),nA=e=>tt(e)&&e.target?Wn(e.target)?e.target.checked:sl(e.target)?e.target.files:e.target.value:e,aA=(e,t)=>t.split(".").some((r,o,n)=>!isNaN(Number(r))&&e.has(n.slice(0,o).join("."))),fg=e=>{const t=e.constructor&&e.constructor.prototype;return tt(t)&&t.hasOwnProperty("isPrototypeOf")},ll=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function lt(e){if(e instanceof Date)return new Date(e);const t=typeof FileList<"u"&&e instanceof FileList;if(ll&&(e instanceof Blob||t))return e;const r=Array.isArray(e);if(!r&&!(tt(e)&&fg(e)))return e;const o=r?[]:Object.create(Object.getPrototypeOf(e));for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(o[n]=lt(e[n]));return o}const en={BLUR:"blur",FOCUS_OUT:"focusout",SUBMIT:"submit",TRIGGER:"trigger",VALID:"valid"},ir={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},cr={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},hg="root",dd=["__proto__","constructor","prototype"],sA=/^\w*$/;var Hn=e=>sA.test(e),qe=e=>e===void 0;const lA=/[.[\]'"]/;var il=e=>e.split(lA).filter(Boolean),le=(e,t,r)=>{if(!t||!tt(e))return r;const o=Hn(t)?[t]:il(t);if(o.some(a=>dd.includes(a)))return r;const n=o.reduce((a,s)=>Et(a)?void 0:a[s],e);return qe(n)||n===e?qe(e[t])?r:e[t]:n},Er=e=>typeof e=="boolean",Rt=e=>typeof e=="function",Qe=(e,t,r)=>{let o=-1;const n=Hn(t)?[t]:il(t),a=n.length,s=a-1;for(;++o<a;){const i=n[o];let c=r;if(o!==s){const d=e[i];c=tt(d)||Array.isArray(d)?d:isNaN(+n[o+1])?{}:[]}if(dd.includes(i))return;e[i]=c,e=e[i]}};const mg=D.createContext(null);mg.displayName="HookFormControlContext";var iA=(e,t,r,o=!0)=>{const n={};for(const a in e)Object.defineProperty(n,a,{get:()=>{const s=a;return t._proxyFormState[s]!==ir.all&&(t._proxyFormState[s]=!o||ir.all),e[s]}});return n};const cA=ll?D.useLayoutEffect:D.useEffect;var kt=e=>typeof e=="string",dA=(e,t,r,o,n)=>kt(e)?(o&&t.watch.add(e),le(r,e,n)):Array.isArray(e)?e.map(a=>(o&&t.watch.add(a),le(r,a))):(o&&(t.watchAll=!0),r),ud=e=>Et(e)||!cd(e);const gg=(e,t)=>t.length===0&&!Array.isArray(e)&&!fg(e);function kr(e,t,r=new WeakMap){if(e===t)return!0;if(ud(e)||ud(t))return Object.is(e,t);if(ro(e)&&ro(t))return Object.is(e.getTime(),t.getTime());const o=Object.keys(e),n=Object.keys(t);if(o.length!==n.length)return!1;if(gg(e,o)||gg(t,n))return Object.is(e,t);if(!o.length&&Array.isArray(e)!==Array.isArray(t))return!1;const a=r.get(e);if(a&&a.has(t))return!0;if(a)a.add(t);else{const s=new WeakSet;s.add(t),r.set(e,s)}for(const s of o){const i=e[s];if(!(s in t))return!1;if(s!=="ref"){const c=t[s];if(ro(i)&&ro(c)||(tt(i)||Array.isArray(i))&&(tt(c)||Array.isArray(c))?!kr(i,c,r):!Object.is(i,c))return!1}}return!0}var cl=e=>({isOnSubmit:!e||e===ir.onSubmit,isOnBlur:e===ir.onBlur,isOnChange:e===ir.onChange,isOnAll:e===ir.all,isOnTouch:e===ir.onTouched}),pd=(e,t,r)=>{if(r)return!1;if(t.watchAll||t.watch.has(e))return!0;for(const o of t.watch)if(e.startsWith(o)&&e.charAt(o.length)===".")return!0;return!1};const jn=(e,t,r,o)=>{for(const n of r||Object.keys(e)){const a=le(e,n);if(a){const{_f:s,...i}=a;if(s){if(s.refs&&s.refs[0]&&t(s.refs[0],n)&&!o)return!0;if(s.ref&&t(s.ref,s.name)&&!o)return!0;if(jn(i,t))break}else if(tt(i)&&jn(i,t))break}}};var bg=(e,t,r)=>{const o=le(e,r),n=Array.isArray(o)?o:[];return Qe(n,hg,t[r]),Qe(e,r,n),e},_t=e=>tt(e)&&!Object.keys(e).length,dl=e=>{if(!ll)return!1;const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},fd=e=>e.type==="radio",ul=e=>e instanceof RegExp,uA=(e,t,r,o,n)=>t?{...r[e],types:{...r[e]&&r[e].types?r[e].types:{},[o]:n||!0}}:{};const yg={value:!1,isValid:!1},vg={value:!0,isValid:!0};var xg=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter(r=>r&&r.checked&&!r.disabled).map(r=>r.value);return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!qe(e[0].attributes.value)?qe(e[0].value)||e[0].value===""?vg:{value:e[0].value,isValid:!0}:vg:yg}return yg};const wg={isValid:!1,value:null};var Cg=e=>Array.isArray(e)?e.reduce((t,r)=>r&&r.checked&&!r.disabled?{isValid:!0,value:r.value}:t,wg):wg;function Sg(e,t,r="validate"){if(kt(e)||Array.isArray(e)&&e.every(kt)||Er(e)&&!e)return{type:r,message:kt(e)?e:"",ref:t}}var tn=e=>tt(e)&&!ul(e)?e:{value:e,message:""},Ng=async(e,t,r,o,n,a)=>{const{ref:s,refs:i,required:c,maxLength:d,minLength:f,min:u,max:h,pattern:m,validate:g,name:y,valueAsNumber:b,mount:C}=e._f,w=le(r,y);if(!C||t.has(y))return{};const x=i?i[0]:s,S=O=>{if(n&&x.reportValidity){const F=Er(O)?"":O||"";i?i.forEach(V=>V.setCustomValidity(F)):x.setCustomValidity(F),x.reportValidity()}},N={},E=fd(s),M=Wn(s),k=E||M,T=(b||sl(s))&&qe(s.value)&&qe(w)||dl(s)&&s.value===""||w===""||Array.isArray(w)&&!w.length,A=uA.bind(null,y,o,N),L=(O,F,V,re=cr.maxLength,K=cr.minLength)=>{const H=O?F:V;N[y]={type:O?re:K,message:H,ref:s,...A(O?re:K,H)}};if(a?!Array.isArray(w)||!w.length:c&&(!k&&(T||Et(w))||Er(w)&&!w||M&&!xg(i).isValid||E&&!Cg(i).isValid)){const{value:O,message:F}=kt(c)?{value:!!c,message:c}:tn(c);if(O&&(N[y]={type:cr.required,message:F,ref:x,...A(cr.required,F)},!o))return S(F),N}if(!T&&(!Et(u)||!Et(h))){let O,F;const V=tn(h),re=tn(u);if(!Et(w)&&!isNaN(w)){const K=s.valueAsNumber||w&&+w;Et(V.value)||(O=K>V.value),Et(re.value)||(F=K<re.value)}else{const K=s.valueAsDate||new Date(w),H=z=>new Date(new Date().toDateString()+" "+z),ee=s.type=="time",G=s.type=="week";kt(V.value)&&w&&(O=ee?H(w)>H(V.value):G?w>V.value:K>new Date(V.value)),kt(re.value)&&w&&(F=ee?H(w)<H(re.value):G?w<re.value:K<new Date(re.value))}if((O||F)&&(L(!!O,V.message,re.message,cr.max,cr.min),!o))return S(N[y].message),N}if((d||f)&&!T&&(kt(w)||a&&Array.isArray(w))){const O=tn(d),F=tn(f),V=!Et(O.value)&&w.length>+O.value,re=!Et(F.value)&&w.length<+F.value;if((V||re)&&(L(V,O.message,F.message),!o))return S(N[y].message),N}if(m&&!T&&kt(w)){const{value:O,message:F}=tn(m);if(ul(O)&&!w.match(O)&&(N[y]={type:cr.pattern,message:F,ref:s,...A(cr.pattern,F)},!o))return S(F),N}if(g){if(Rt(g)){const O=await g(w,r),F=Sg(O,x);if(F&&(N[y]={...F,...A(cr.validate,F.message)},!o))return S(F.message),N}else if(tt(g)){let O={};for(const F in g){if(!_t(O)&&!o)break;const V=Sg(await g[F](w,r),x,F);V&&(O={...V,...A(F,V.message)},S(V.message),o&&(N[y]=O))}if(!_t(O)&&(N[y]={ref:x,...O},!o))return N}}return S(!0),N},pl=e=>Array.isArray(e)?e:[e],Eg=e=>Array.isArray(e)?e.filter(Boolean):[];function pA(e,t){const r=t.slice(0,-1).length;let o=0;for(;o<r;){if(Et(e)){e=void 0;break}e=e[t[o]],o++}return e}function fA(e){for(const t in e)if(e.hasOwnProperty(t)&&!qe(e[t]))return!1;return!0}function it(e,t){if(kt(t)&&Object.prototype.hasOwnProperty.call(e,t))return delete e[t],e;const r=Array.isArray(t)?t:Hn(t)?[t]:il(t);if(r.some(s=>dd.includes(String(s))))return e;const o=r.length===1?e:pA(e,r),n=r.length-1,a=r[n];return o&&delete o[a],n!==0&&(tt(o)&&_t(o)||Array.isArray(o)&&fA(o))&&it(e,r.slice(0,-1)),e}const kg=e=>{const t={};for(const r of Object.keys(e))if(cd(e[r])&&e[r]!==null&&!ro(e[r])){const o=kg(e[r]);for(const n of Object.keys(o))t[`${r}.${n}`]=o[n]}else t[r]=e[r];return t},hd=D.createContext(null);hd.displayName="HookFormContext";const md=()=>D.useContext(hd),_g=({children:e,watch:t,getValues:r,getFieldState:o,setError:n,clearErrors:a,setValue:s,setValues:i,trigger:c,formState:d,resetField:f,reset:u,resetDefaultValues:h,handleSubmit:m,unregister:g,control:y,register:b,setFocus:C,subscribe:w})=>{const x=D.useMemo(()=>({watch:t,getValues:r,getFieldState:o,setError:n,clearErrors:a,setValue:s,setValues:i,trigger:c,formState:d,resetField:f,reset:u,resetDefaultValues:h,handleSubmit:m,unregister:g,control:y,register:b,setFocus:C,subscribe:w}),[a,y,d,o,r,m,b,u,h,f,n,C,s,i,w,c,g,t]);return D.createElement(hd.Provider,{value:x},D.createElement(mg.Provider,{value:x.control},e))};var Dg=()=>{let e=[];return{get observers(){return e},next:n=>{for(const a of e)a.next&&a.next(n)},subscribe:n=>(e.push(n),{unsubscribe:()=>{e=e.filter(a=>a!==n)}}),unsubscribe:()=>{e=[]}}};function Ag(e,t){const r={};for(const o in e)if(e.hasOwnProperty(o)){const n=e[o],a=t[o];if(n&&tt(n)&&a){const s=Ag(n,a);tt(s)&&(r[o]=s)}else e[o]&&(r[o]=a)}return r}var Tg=e=>e.type==="select-multiple",hA=e=>fd(e)||Wn(e),gd=e=>dl(e)&&e.isConnected,mA=e=>{for(const t in e)if(Rt(e[t]))return!0;return!1};function Ig(e){return Array.isArray(e)||tt(e)&&!mA(e)}function Pg(e){return!!(e&&"_f"in e)}function Mg(e){return Array.isArray(e)?!e.some(t=>!qe(t)):!Object.keys(e).length}function bd(e,t){Array.isArray(e)?e[t]=void 0:delete e[t]}function yd(e,t={},r){for(const o in e){const n=e[o],a=r&&r[o];Ig(n)&&(!Array.isArray(n)||!Pg(a))?(t[o]=Array.isArray(n)?[]:{},yd(n,t[o],a),Mg(t[o])&&bd(t,o)):qe(n)||(t[o]=!0)}return t}function Po(e,t,r,o){r||(r=yd(t,{},o));for(const n in e){const a=e[n],s=o&&o[n];Ig(a)&&(!Array.isArray(a)||!Pg(s))?(qe(t)||ud(r[n])?r[n]=yd(a,Array.isArray(a)?[]:{},s):Po(a,Et(t)?{}:t[n],r[n],s),Mg(r[n])&&bd(r,n)):kr(a,t[n])?bd(r,n):r[n]=!0}return r}var Og=(e,{valueAsNumber:t,valueAsDate:r,setValueAs:o})=>qe(e)?e:t?e===""?NaN:e&&+e:r&&kt(e)?new Date(e):o?o(e):e;function Lg(e){const t=e.ref;return sl(t)?t.files:fd(t)?Cg(e.refs).value:Tg(t)?[...t.selectedOptions].map(({value:r})=>r):Wn(t)?xg(e.refs).value:Og(qe(t.value)?e.ref.value:t.value,e)}var gA=(e,t,r,o)=>{const n={};for(const a of e){const s=le(t,a);s&&Qe(n,a,s._f)}return{criteriaMode:r,names:[...e],fields:n,shouldUseNativeValidation:o}},Yn=e=>qe(e)?e:ul(e)?e.source:tt(e)?ul(e.value)?e.value.source:e.value:e;const Fg="AsyncFunction";var bA=e=>{if(!e||!e.validate)return!1;if(Rt(e.validate))return e.validate.constructor.name===Fg;if(tt(e.validate)){for(const t in e.validate)if(e.validate[t].constructor.name===Fg)return!0}return!1},yA=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate);function $g(e,t,r){const o=le(e,r);if(o||Hn(r))return{error:o,name:r};const n=r.split(".");for(;n.length;){const a=n.join("."),s=le(t,a),i=le(e,a);if(s&&!Array.isArray(s)&&r!==a)return{name:r};if(i&&i.type)return{name:a,error:i};if(i&&i.root&&i.root.type)return{name:`${a}.root`,error:i.root};n.pop()}return{name:r}}var vA=(e,t,r,o)=>{r(e);const{name:n,...a}=e,s=Object.keys(a);return!s.length||o&&s.length>=Object.keys(t).length||s.find(i=>t[i]===(!o||ir.all))},xA=(e,t,r)=>!e||!t||e===t||pl(e).some(o=>o&&(r?o===t||o.startsWith(t+"."):o.startsWith(t)||t.startsWith(o))),wA=(e,t,r,o,n)=>n.isOnAll?!1:!r&&n.isOnTouch?!(t||e):(r?o.isOnBlur:n.isOnBlur)?!e:(r?o.isOnChange:n.isOnChange)?e:!0,CA=(e,t)=>!Eg(le(e,t)).length&&it(e,t);const SA={mode:ir.onSubmit,reValidateMode:ir.onChange,shouldFocusError:!0},vd="form",NA=(e,t)=>{for(const r in e)r in t||delete e[r];Object.assign(e,t)},Gg={submitCount:0,isDirty:!1,isReady:!1,isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{}};function EA(e={}){let t={...SA,...e},r={...lt(Gg),isLoading:Rt(t.defaultValues),errors:t.errors||{},disabled:t.disabled||!1},o={},n=tt(t.defaultValues)||tt(t.values)?lt(t.defaultValues||t.values)||{}:{},a=t.shouldUnregister?{}:lt(n),s={action:!1,mount:!1,watch:!1,keepIsValid:!1},i={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set,registerName:new Set};const c={},d={};let f=0,u=cl(t.mode),h=cl(t.reValidateMode);const m={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},g={...m};let y={...g};const b={array:Dg(),state:Dg()};let C=0;const w=t.criteriaMode===ir.all,x=(_,I)=>P=>{clearTimeout(d[_]),d[_]=setTimeout(I,P)},S=async _=>{if(!s.keepIsValid&&!t.disabled&&(g.isValid||y.isValid||_)){const I=++C;let P;t.resolver?(P=_t((await V()).errors),I===C&&N()):P=await H({fields:o,onlyCheckValid:!0,eventType:en.VALID}),I===C&&P!==r.isValid&&b.state.next({isValid:P})}},N=(_,I)=>{!t.disabled&&(g.isValidating||g.validatingFields||y.isValidating||y.validatingFields)&&((_||Array.from(i.mount)).forEach(P=>{P&&(I?Qe(r.validatingFields,P,I):it(r.validatingFields,P))}),b.state.next({validatingFields:r.validatingFields,isValidating:!_t(r.validatingFields)}))},E=()=>{r.dirtyFields=Po(n,a,void 0,o)},M=(_,I=[],P,W,U=!0,J=!0)=>{if(W&&P&&!t.disabled){if(s.action=!0,J&&Array.isArray(le(o,_))){const B=P(le(o,_),W.argA,W.argB);U&&Qe(o,_,B)}if(J&&Array.isArray(le(r.errors,_))){const B=P(le(r.errors,_),W.argA,W.argB);U&&Qe(r.errors,_,B),CA(r.errors,_)}if((g.touchedFields||y.touchedFields)&&J&&Array.isArray(le(r.touchedFields,_))){const B=P(le(r.touchedFields,_),W.argA,W.argB);U&&Qe(r.touchedFields,_,B)}(g.dirtyFields||y.dirtyFields)&&E(),b.state.next({name:_,isDirty:G(_,I),dirtyFields:r.dirtyFields,errors:r.errors,isValid:r.isValid})}else Qe(a,_,I)},k=(_,I)=>{Qe(r.errors,_,I),r.errors={...r.errors},b.state.next({errors:r.errors})},T=_=>{r.errors=_,b.state.next({errors:r.errors,isValid:!1})},A=_=>{const I=Hn(_)?[_]:il(_);let P=a,W=n;for(let U=0;U<I.length-1;U++){const J=I[U];if(P=Et(P)?P:P[J],W=Et(W)?W:W[J],P===null&&W!==null)return!0}return!1},L=(_,I,P,W)=>{const U=le(o,_);if(U){if(A(_))return;const J=qe(le(a,_)),B=le(a,_,qe(P)?le(n,_):P);qe(B)||W&&W.defaultChecked||I?Qe(a,_,I?B:Lg(U._f)):$(_,B),s.mount&&!s.action&&(S(),J&&r.isDirty&&(g.isDirty||y.isDirty)&&(G()||(r.isDirty=!1,b.state.next({...r}))),e.shouldUnregister&&J&&!qe(le(a,_))&&pd(_,i)&&(s.watch=!0))}},O=(_,I,P,W,U)=>{let J=!1,B=!1;const Q={name:_};if(!t.disabled||W===!0){if(!P||W){const ie=kr(le(n,_),I);(g.isDirty||y.isDirty)&&(B=r.isDirty,r.isDirty=Q.isDirty=!ie||G(),J=B!==Q.isDirty),B=!!le(r.dirtyFields,_),ie!==r.isDirty?NA(r.dirtyFields,Po(n,a,void 0,o)):ie?it(r.dirtyFields,_):Qe(r.dirtyFields,_,!0),Q.dirtyFields=r.dirtyFields,J=J||(g.dirtyFields||y.dirtyFields)&&B!==!ie}if(P){const ie=le(r.touchedFields,_);ie||(Qe(r.touchedFields,_,P),Q.touchedFields=r.touchedFields,J=J||(g.touchedFields||y.touchedFields)&&ie!==P)}J&&U&&b.state.next(Q)}return J?Q:{}},F=(_,I,P,W)=>{const U=le(r.errors,_),J=(g.isValid||y.isValid)&&Er(I)&&r.isValid!==I;if(t.delayError&&P?(c[_]=x(_,()=>k(_,P)),c[_](t.delayError)):(clearTimeout(d[_]),delete c[_],P?Qe(r.errors,_,P):it(r.errors,_),r.errors={...r.errors}),(P?!kr(U,P):U)||!_t(W)||J){const B={...W,...J&&Er(I)?{isValid:I}:{},errors:r.errors,name:_};r={...r,...B},b.state.next(B)}},V=async _=>(N(_,!0),await t.resolver(a,t.context,gA(_||i.mount,o,t.criteriaMode,t.shouldUseNativeValidation))),re=async _=>{const{errors:I}=await V(_);if(N(_),_){for(const P of _){const W=le(I,P);W?i.array.has(P)&&tt(W)&&!Object.keys(W).some(U=>!Number.isNaN(Number(U)))?bg(r.errors,{[P]:W},P):Qe(r.errors,P,W):it(r.errors,P)}r.errors={...r.errors}}else r.errors=I;return I},K=async({name:_,eventType:I})=>{if(e.validate){const P=await e.validate({formValues:a,formState:r,name:_,eventType:I});if(tt(P))for(const W in P){const U=P[W];U&&X(`${vd}.${W}`,{message:kt(U.message)?U.message:"",type:U.type||cr.validate})}else kt(P)||!P?X(vd,{message:P||"",type:cr.validate}):ue(vd);return P}return!0},H=async({fields:_,onlyCheckValid:I,name:P,eventType:W,context:U={valid:!0,runRootValidation:!1}})=>{if(e.validate&&(U.runRootValidation=!0,!await K({name:P,eventType:W})&&(U.valid=!1,I)))return U.valid;for(const J in _){const B=_[J];if(B){const{_f:Q,...ie}=B;if(Q){const De=i.array.has(Q.name),Ve=B._f&&bA(B._f),Dt=g.validatingFields||g.isValidating||y.validatingFields||y.isValidating;Ve&&Dt&&N([Q.name],!0);const _e=await Ng(B,i.disabled,a,w,t.shouldUseNativeValidation&&!I,De);if(Ve&&Dt&&N([Q.name]),_e[Q.name]&&(U.valid=!1,I)||(!I&&(le(_e,Q.name)?De?bg(r.errors,_e,Q.name):Qe(r.errors,Q.name,_e[Q.name]):it(r.errors,Q.name)),e.shouldUseNativeValidation&&_e[Q.name]))break}!_t(ie)&&await H({context:U,onlyCheckValid:I,fields:ie,name:J,eventType:W})}}return U.valid},ee=()=>{for(const _ of i.unMount){const I=le(o,_);I&&(I._f.refs?I._f.refs.every(P=>!gd(P)):!gd(I._f.ref))&&je(_)}i.unMount=new Set},G=(_,I)=>(_&&I&&Qe(a,_,I),!kr(s.mount?a:n,n)),z=(_,I,P)=>dA(_,i,{...s.mount?a:qe(I)?n:kt(_)?{[_]:I}:I},P,I),Ce=_=>Eg(le(s.mount?a:n,_,t.shouldUnregister?le(n,_,[]):[])),$=(_,I,P={},W=!1,U=!1)=>{const J=le(o,_);let B=I;if(J){const Q=J._f;Q&&(!Q.disabled&&Qe(a,_,Og(I,Q)),B=dl(Q.ref)&&Et(I)?"":I,Tg(Q.ref)?[...Q.ref.options].forEach(ie=>ie.selected=B.includes(ie.value)):Q.refs?Wn(Q.ref)?Q.refs.forEach(ie=>{(!ie.defaultChecked||!ie.disabled)&&(Array.isArray(B)?ie.checked=!!B.find(De=>De===ie.value):ie.checked=B===ie.value||!!B)}):Q.refs.forEach(ie=>ie.checked=ie.value===B):sl(Q.ref)?Q.ref.value="":(Q.ref.value=B,!Q.ref.type&&!U&&b.state.next({name:_,values:W?a:lt(a)})))}(P.shouldDirty||P.shouldTouch)&&O(_,B,P.shouldTouch,P.shouldDirty,!U),P.shouldValidate&&te(_,{delayError:P.delayError})},q=(_,I,P,W=!1,U=!1)=>{for(const J in I){if(!I.hasOwnProperty(J))return;const B=I[J],Q=_+"."+J,ie=le(o,Q);(i.array.has(_)||tt(B)||ie&&!ie._f)&&!ro(B)?q(Q,B,P,W,U):$(Q,B,P,W,U)}},xe=(_,I,P,W,U=!1)=>{const J=le(o,_),B=i.array.has(_),Q=W?I:lt(I),ie=le(a,_),De=kr(ie,Q);if(De||Qe(a,_,Q),B)b.array.next({name:_,values:W?a:lt(a)}),(g.isDirty||g.dirtyFields||y.isDirty||y.dirtyFields)&&P.shouldDirty&&(E(),U||b.state.next({name:_,dirtyFields:r.dirtyFields,isDirty:G(_,Q)}));else{const Ve=Array.isArray(Q)&&!Q.length||_t(Q);!J||J._f||Et(Q)||Ve?$(_,Q,P,W,U):q(_,Q,P,W,U)}if(!De&&!U){const Ve=pd(_,i),Dt=W?a:lt(a);b.state.next({...Ve&&r,name:s.mount||Ve?_:void 0,values:Dt})}},oe=(_,I,P={})=>xe(_,I,P,!1),he=(_,I={})=>{const P=Rt(_)?_(a):_;if(!kr(a,P)){a={...a,...P};const W=kg(P);for(const U of i.mount)U in W&&xe(U,W[U],I,!0,!0);b.state.next({...r,name:void 0,type:void 0,...f?{values:a}:{}}),I.shouldValidate&&S()}},Y=async _=>{s.mount=!0;const I=_.target;let P=I.name,W=!0;const U=le(o,P),J=B=>{W=Number.isNaN(B)||ro(B)&&isNaN(B.getTime())||kr(B,le(a,P,B))};if(U){let B,Q;const ie=I.type?Lg(U._f):nA(_),De=_.type===en.BLUR||_.type===en.FOCUS_OUT,Ve=!yA(U._f)&&!e.validate&&!t.resolver&&!le(r.errors,P)&&!U._f.deps,Dt=Ve||wA(De,le(r.touchedFields,P),r.isSubmitted,h,u),_e=pd(P,i,De);if(Qe(a,P,ie),De){if(!I||!I.readOnly){U._f.onBlur&&U._f.onBlur(_);const dr=c[P];dr&&dr(0)}}else U._f.onChange&&U._f.onChange(_);const Ke=O(P,ie,De),ot=!_t(Ke)||_e;if(!De&&b.state.next({name:P,type:_.type,...f?{values:lt(a)}:{}}),Dt)return(!Ve||!r.isValid)&&(g.isValid||y.isValid)&&(t.mode==="onBlur"?De&&S():De||S()),ot&&b.state.next({name:P,..._e?{}:Ke});if(!t.resolver&&e.validate&&await K({name:P,eventType:_.type}),!De&&_e&&b.state.next({...r}),t.resolver){const{errors:dr}=await V([P]);if(N([P]),J(ie),!W){!_t(Ke)&&b.state.next(Ke);return}const rn=$g(r.errors,o,P),er=$g(dr,o,rn.name||P);B=er.error,P=er.name,Q=_t(dr)}else N([P],!0),B=(await Ng(U,i.disabled,a,w,t.shouldUseNativeValidation))[P],N([P]),J(ie),W&&(B?Q=!1:(g.isValid||y.isValid)&&(Q=await H({fields:o,onlyCheckValid:!0,name:P,eventType:_.type})));W&&(U._f.deps&&(!Array.isArray(U._f.deps)||U._f.deps.length>0)&&te(U._f.deps),F(P,Q,B,Ke))}},ce=(_,I)=>{if(le(r.errors,I)&&_.focus)return _.focus(),1},te=async(_,I={})=>{let P,W;const U=pl(_);if(t.resolver){const J=await re(qe(_)?_:U);P=_t(J),W=_?!U.some(B=>le(J,B)):P}else _?(W=(await Promise.all(U.map(async J=>{const B=le(o,J);return await H({fields:B&&B._f?{[J]:B}:B,eventType:en.TRIGGER})}))).every(Boolean),!(!W&&!r.isValid)&&S()):W=P=await H({fields:o,name:_,eventType:en.TRIGGER});if(I.delayError&&t.delayError&&kt(_)){const J=le(r.errors,_);J?(it(r.errors,_),c[_]=x(_,()=>k(_,J)),c[_](t.delayError)):(clearTimeout(d[_]),delete c[_])}return b.state.next({...!kt(_)||(g.isValid||y.isValid)&&P!==r.isValid?{}:{name:_},...t.resolver||!_?{isValid:P}:{},errors:r.errors}),I.shouldFocus&&!W&&jn(o,ce,_?U:i.mount),W},Ne=(_,I)=>{let P={...s.mount?a:n};return I&&(P=Ag(I.dirtyFields?r.dirtyFields:r.touchedFields,P)),qe(_)?P:kt(_)?le(P,_):_.map(W=>le(P,W))},be=(_,I)=>({invalid:!!le((I||r).errors,_),isDirty:!!le((I||r).dirtyFields,_),error:le((I||r).errors,_),isValidating:!!le(r.validatingFields,_),isTouched:!!le((I||r).touchedFields,_)}),ue=_=>{const I=_?pl(_):void 0;I==null||I.forEach(P=>it(r.errors,P)),I?I.forEach(P=>{b.state.next({name:P,errors:r.errors})}):(r.errors={},b.state.next({errors:r.errors}))},X=(_,I,P)=>{const W=(le(o,_,{_f:{}})._f||{}).ref,U=le(r.errors,_)||{},{ref:J,message:B,type:Q,...ie}=U;Qe(r.errors,_,{...ie,...I,ref:W}),b.state.next({name:_,errors:r.errors,isValid:!1}),P&&P.shouldFocus&&W&&W.focus&&W.focus()},ne=(_,I)=>{if(Rt(_)){f++;const{unsubscribe:P}=b.state.subscribe({next:U=>"values"in U&&_(U.values||z(void 0,I),U)});let W=!1;return{unsubscribe:()=>{W||(W=!0,f--,P())}}}return z(_,I,!0)},pe=_=>{var I;const P=!!(!((I=_.formState)===null||I===void 0)&&I.values);P&&f++;const{unsubscribe:W}=b.state.subscribe({next:J=>{if(xA(_.name,J.name,_.exact)&&vA(J,_.formState||g,ct,_.reRenderRoot)){const B={...a};_.callback({values:B,...r,...J,defaultValues:n})}}});if(!P)return W;let U=!1;return()=>{U||(U=!0,f--,W())}},Se=_=>(s.mount=!0,y={...y,..._.formState},pe({..._,formState:{...m,..._.formState}})),je=(_,I={})=>{for(const P of _?pl(_):i.mount)i.mount.delete(P),i.array.delete(P),I.keepValue||(it(o,P),it(a,P)),!I.keepError&&it(r.errors,P),!I.keepDirty&&it(r.dirtyFields,P),!I.keepTouched&&it(r.touchedFields,P),!I.keepIsValidating&&it(r.validatingFields,P),!t.shouldUnregister&&!I.keepDefaultValue&&it(n,P);b.state.next({values:lt(a)}),b.state.next({...r,...I.keepDirty?{isDirty:G()}:{}}),!I.keepIsValid&&S()},Je=({disabled:_,name:I})=>{if(Er(_)&&s.mount||_||i.disabled.has(I)){const U=i.disabled.has(I)!==!!_;_?i.disabled.add(I):i.disabled.delete(I),U&&s.mount&&!s.action&&S()}},Re=(_,I={})=>{let P=le(o,_);const W=Er(I.disabled)||Er(t.disabled),U=!i.registerName.has(_)&&P&&P._f&&!P._f.mount;return Qe(o,_,{...P||{},_f:{...P&&P._f?P._f:{ref:{name:_}},name:_,mount:!0,...I}}),i.mount.add(_),P&&!U?Je({disabled:Er(I.disabled)?I.disabled:t.disabled,name:_}):L(_,!0,I.value),{...W?{disabled:I.disabled||t.disabled}:{},...t.progressive?{required:!!I.required,min:Yn(I.min),max:Yn(I.max),minLength:Yn(I.minLength),maxLength:Yn(I.maxLength),pattern:Yn(I.pattern)}:{},name:_,onChange:Y,onBlur:Y,ref:J=>{if(J){i.registerName.add(_),Re(_,I),i.registerName.delete(_),P=le(o,_);const B=qe(J.value)&&J.querySelectorAll&&J.querySelectorAll("input,select,textarea")[0]||J,Q=hA(B),ie=P._f.refs||[];if(Q?ie.find(Ve=>Ve===B):B===P._f.ref)return;const De={...P._f};Q?(De.refs=[...ie.filter(gd),B,...Array.isArray(le(n,_))?[{}]:[]],De.ref={type:B.type,name:_}):(De.ref=B,delete De.refs),Qe(o,_,{_f:De}),L(_,!1,void 0,B)}else P=le(o,_,{}),P._f&&(P._f.mount=!1),(t.shouldUnregister||I.shouldUnregister)&&!(aA(i.array,_)&&s.action)&&i.unMount.add(_)}}},Ye=()=>t.shouldFocusError&&!t.shouldUseNativeValidation&&jn(o,ce,i.mount),ye=_=>{Er(_)&&(b.state.next({disabled:_}),jn(o,(I,P)=>{const W=le(o,P);W&&(I.disabled=W._f.disabled||_,Array.isArray(W._f.refs)&&W._f.refs.forEach(U=>{U.disabled=W._f.disabled||_}))},0,!1))},rt=(_,I)=>async P=>{let W;P&&(P.preventDefault&&P.preventDefault(),P.persist&&P.persist());let U=lt(a);if(b.state.next({isSubmitting:!0}),t.resolver){const{errors:J,values:B}=await V();N(),r.errors=J,U=lt(B)}else await H({fields:o,eventType:en.SUBMIT});if(i.disabled.size)for(const J of i.disabled)it(U,J);if(it(r.errors,hg),_t(r.errors)){b.state.next({errors:{}});try{await _(U,P)}catch(J){W=J}}else I&&await I({...r.errors},P),Ye(),setTimeout(Ye);if(b.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:_t(r.errors)&&!W,submitCount:r.submitCount+1,errors:r.errors}),W)throw W},Le=(_,I={})=>{le(o,_)&&(qe(I.defaultValue)?oe(_,lt(le(n,_))):(oe(_,I.defaultValue),Qe(n,_,lt(I.defaultValue))),I.keepTouched||it(r.touchedFields,_),I.keepDirty||(it(r.dirtyFields,_),r.isDirty=I.defaultValue?G(_,lt(le(n,_))):G()),I.keepError||(it(r.errors,_),g.isValid&&S()),b.state.next({...r}))},Ge=(_,I={})=>{const P=_?lt(_):n,W=lt(P),U=_t(_),J=W,B=o;if(I.keepDefaultValues||(n=P),!I.keepValues){if(I.keepDirtyValues){const Q=new Set([...i.mount,...Object.keys(Po(n,a,void 0,B))]);for(const ie of Array.from(Q)){const De=le(r.dirtyFields,ie),Ve=le(a,ie),Dt=le(J,ie);De&&!qe(Ve)?Qe(J,ie,Ve):!De&&!qe(Dt)&&oe(ie,Dt)}}else{if(ll&&qe(_))for(const Q of i.mount){const ie=le(o,Q);if(ie&&ie._f){const De=Array.isArray(ie._f.refs)?ie._f.refs[0]:ie._f.ref;if(dl(De)){const Ve=De.closest("form");if(Ve){Ve.reset();break}}}}if(I.keepFieldsRef)for(const Q of i.mount)oe(Q,le(J,Q));else o={}}if(t.shouldUnregister){if(a=I.keepDefaultValues?lt(n):{},I.keepFieldsRef)for(const Q of i.mount)Qe(a,Q,le(J,Q))}else a=lt(J);b.array.next({values:{...J}}),b.state.next({name:void 0,type:void 0,values:{...J}})}i={mount:I.keepDirtyValues?i.mount:new Set,unMount:new Set,array:new Set,registerName:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},s.mount=!g.isValid||!!I.keepIsValid||!!I.keepDirtyValues||!t.shouldUnregister&&!_t(J),s.watch=!!t.shouldUnregister,s.keepIsValid=!!I.keepIsValid,s.action=!1,I.keepErrors||(r.errors={}),b.state.next({submitCount:I.keepSubmitCount?r.submitCount:0,isDirty:U?!1:I.keepDirty?r.isDirty:I.keepValues?G():!!(I.keepDefaultValues&&!kr(_,n)),isSubmitted:I.keepIsSubmitted?r.isSubmitted:!1,dirtyFields:U?{}:I.keepDirtyValues?I.keepDefaultValues&&a?Po(n,a,void 0,B):r.dirtyFields:I.keepDefaultValues&&_?Po(n,_,void 0,B):I.keepDirty?r.dirtyFields:{},touchedFields:I.keepTouched?r.touchedFields:{},errors:I.keepErrors?r.errors:{},isSubmitSuccessful:I.keepIsSubmitSuccessful?r.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:n})},Ue=(_,I)=>Ge(Rt(_)?_(a):_,{...t.resetOptions,...I}),Ee=(_,I={})=>{const P=le(o,_),W=P&&P._f;if(W){const U=W.refs?W.refs[0]:W.ref;U.focus&&setTimeout(()=>{U.focus(),I.shouldSelect&&Rt(U.select)&&U.select()})}},ct=_=>{const{name:I,type:P,values:W,...U}=_;r={...r,...U}},Yt={control:{register:Re,unregister:je,getFieldState:be,handleSubmit:rt,setError:X,_subscribe:pe,_runSchema:V,_updateIsValidating:N,_focusError:Ye,_getWatch:z,_getDirty:G,_setValid:S,_setFieldArray:M,_setDisabledField:Je,_setErrors:T,_getFieldArray:Ce,_reset:Ge,_resetDefaultValues:()=>Rt(t.defaultValues)&&t.defaultValues().then(_=>{Ue(_,t.resetOptions),b.state.next({isLoading:!1})}),_removeUnmounted:ee,_disableForm:ye,_subjects:b,_proxyFormState:g,get _fields(){return o},get _formValues(){return a},get _state(){return s},set _state(_){s=_},get _defaultValues(){return n},get _names(){return i},set _names(_){i=_},get _formState(){return r},get _options(){return t},set _options(_){t={...t,..._},u=cl(t.mode),h=cl(t.reValidateMode)}},subscribe:Se,trigger:te,register:Re,handleSubmit:rt,watch:ne,setValue:oe,setValues:he,getValues:Ne,reset:Ue,resetField:Le,resetDefaultValues:(_,I={})=>{if(n=lt(_),!I.keepDirty){const P=Po(n,a,void 0,o);r.dirtyFields=P,r.isDirty=!_t(P)}I.keepIsValid||S(),b.state.next({...r,defaultValues:n})},clearErrors:ue,unregister:je,setError:X,setFocus:Ee,getFieldState:be};return{...Yt,formControl:Yt}}function Vg(e={}){const t=D.useRef(void 0),r=D.useRef(void 0),o=D.useRef(e.formControl),[n,a]=D.useState(()=>({...lt(Gg),isLoading:Rt(e.defaultValues),errors:e.errors||{},disabled:e.disabled||!1,defaultValues:Rt(e.defaultValues)?void 0:e.defaultValues}));if(!t.current||e.formControl&&o.current!==e.formControl)if(o.current=e.formControl,e.formControl)t.current={...e.formControl,formState:n},e.defaultValues&&!Rt(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{const{formControl:i,...c}=EA(e);t.current={...c,formState:n}}const s=t.current.control;return s._options=e,cA(()=>{const i=s._subscribe({formState:s._proxyFormState,callback:()=>a({...s._formState,defaultValues:s._defaultValues}),reRenderRoot:!0});return a(c=>({...c,isReady:!0})),s._formState.isReady=!0,i},[s]),D.useEffect(()=>s._disableForm(e.disabled),[s,e.disabled]),D.useEffect(()=>{e.mode&&(s._options.mode=e.mode),e.reValidateMode&&(s._options.reValidateMode=e.reValidateMode)},[s,e.mode,e.reValidateMode]),D.useEffect(()=>{e.errors&&(s._setErrors(e.errors),s._focusError())},[s,e.errors]),D.useEffect(()=>{e.shouldUnregister&&s._subjects.state.next({values:s._getWatch()})},[s,e.shouldUnregister]),D.useEffect(()=>{if(s._proxyFormState.isDirty){const i=s._getDirty();i!==n.isDirty&&s._subjects.state.next({isDirty:i})}},[s,n.isDirty]),D.useEffect(()=>{var i;e.values&&!kr(e.values,r.current)?(s._reset(e.values,{keepFieldsRef:!0,...s._options.resetOptions}),!((i=s._options.resetOptions)===null||i===void 0)&&i.keepIsValid||s._setValid(),r.current=e.values,a(c=>({...c}))):s._resetDefaultValues()},[s,e.values]),D.useEffect(()=>{s._state.mount||(s._setValid(),s._state.mount=!0),s._state.watch&&(s._state.watch=!1,s._subjects.state.next({...s._formState})),s._removeUnmounted()}),t.current.formState=D.useMemo(()=>iA(n,s),[s,n]),t.current}function zg(e){return["divider","paragraph","heading","link","image"].includes(e.type)?"layout":["submit","button"].includes(e.type)?"action":["pages","group","repeatGroup"].includes(e.type)?"container":"field"}function Bg(e,t){var a,s;const r=[],o=new Map,n=new Map;for(const i of t){const c=((a=i.attributes)==null?void 0:a.name)||i.id;o.set(c,i),n.set(i.id,i)}for(const[i,c]of Object.entries(e)){const d=o.get(i);if(d){if(d.parentId){const u=n.get(d.parentId);if(u&&(u.type==="repeatGroup"||u.type==="repeatElement")&&e[((s=u.attributes)==null?void 0:s.name)||u.id]!==void 0)continue}const f=zg(d);if(f==="layout"||f==="action")continue;r.push({id:i,value:c,type:d.type,category:f})}else r.push({id:i,value:c,type:"unknown",category:"field"})}return r}function xd(e,t,r="keyValue"){return r==="array"?Bg(e,t):e}function kA(e,t){var a,s;const r={},o=new Map,n=new Map;for(const i of t){const c=((a=i.attributes)==null?void 0:a.name)||i.id;o.set(c,i),n.set(i.id,i)}for(const[i,c]of Object.entries(e)){const d=o.get(i);if(d){if(d.parentId){const u=n.get(d.parentId);if(u&&(u.type==="repeatGroup"||u.type==="repeatElement")&&e[((s=u.attributes)==null?void 0:s.name)||u.id]!==void 0)continue}const f=zg(d);(f==="field"||f==="container")&&(r[i]=c)}else r[i]=c}return r}const _A=({currentPage:e,totalPages:t,pages:r,showStepNumbers:o,onPageClick:n})=>{const a=(e+1)/t*100;return l.jsxs("div",{className:p("mb-8"),children:[l.jsx("div",{className:p("h-2 bg-gray-200 rounded-full overflow-hidden"),children:l.jsx("div",{className:p("h-full bg-blue-600 transition-all duration-300 ease-out"),style:{width:`${a}%`}})}),o&&l.jsx("div",{className:p("flex justify-between mt-4"),children:r.map((s,i)=>{const c=i<e,d=i===e;return l.jsxs("button",{type:"button",onClick:()=>n==null?void 0:n(i),disabled:i>e,className:p(`flex flex-col items-center ${n&&i<=e?"cursor-pointer":"cursor-default"}`),children:[l.jsx("div",{className:p(`w-8 h-8 rounded-full flex items-center justify-center text-sm font-medium transition-colors ${c?"bg-blue-600 text-white":d?"bg-blue-600 text-white ring-4 ring-blue-100":"bg-gray-200 text-gray-500"}`),children:c?l.jsx("svg",{className:p("w-4 h-4"),fill:"currentColor",viewBox:"0 0 20 20",children:l.jsx("path",{fillRule:"evenodd",d:"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z",clipRule:"evenodd"})}):i+1}),l.jsx("span",{className:p(`mt-2 text-xs font-medium ${d?"text-blue-600":"text-gray-500"}`),children:s.title})]},s.id)})})]})},DA=({page:e,pageIndex:t,totalPages:r})=>l.jsxs("div",{className:p("mb-6"),children:[l.jsxs("div",{className:p("flex items-center justify-between mb-2"),children:[l.jsx("h2",{className:p("text-xl font-semibold text-gray-900"),children:e.title}),l.jsxs("span",{className:p("text-sm text-gray-500"),children:["Step ",t+1," of ",r]})]}),e.description&&l.jsx("p",{className:p("text-gray-600"),children:e.description})]}),AA=({currentPage:e,totalPages:t,allowSkip:r,isSubmitting:o,onPrevious:n,onNext:a,onSkip:s})=>{const i=e===0,c=e===t-1;return l.jsxs("div",{className:p("flex items-center justify-between mt-8 pt-6 border-t border-gray-200"),children:[l.jsx("div",{children:!i&&l.jsx("button",{type:"button",onClick:n,className:p("px-4 py-2 text-sm font-medium text-gray-700 bg-white border border-gray-300 rounded-md hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-blue-500"),children:"← Previous"})}),l.jsxs("div",{className:p("flex gap-3"),children:[r&&!c&&l.jsx("button",{type:"button",onClick:s,className:p("px-4 py-2 text-sm font-medium text-gray-500 hover:text-gray-700"),children:"Skip"}),c?l.jsx("button",{type:"submit",disabled:o,className:p("px-6 py-2 text-sm font-medium text-white bg-blue-600 rounded-md hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 disabled:opacity-50 disabled:cursor-not-allowed"),children:o?"Submitting...":"Submit"}):l.jsx("button",{type:"button",onClick:a,className:p("px-6 py-2 text-sm font-medium text-white bg-blue-600 rounded-md hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500"),children:"Next →"})]})]})},Ug=({element:e,elements:t})=>{const{setValue:r,watch:o,register:n,unregister:a}=md(),s=o(),{visible:i,required:c,disabled:d}=D.useMemo(()=>Rm(e,s,t),[e,s,t]),f=e.attributes.name;if(D.useEffect(()=>{var N,E,M,k,T,A;if(f){if(!i){a(f,{keepValue:!0});return}return n(f,{required:c?((N=e.validation)==null?void 0:N.errorMessage)||"This field is required":void 0,minLength:(E=e.validation)==null?void 0:E.minLength,maxLength:(M=e.validation)==null?void 0:M.maxLength,min:(k=e.validation)==null?void 0:k.min,max:(T=e.validation)==null?void 0:T.max,pattern:IA((A=e.validation)==null?void 0:A.pattern),disabled:d||e.properties.disabled||void 0}),()=>a(f,{keepValue:!0})}},[f,i,c,d,e.validation,e.properties.disabled,n,a]),!i)return null;const u=o(f),h=d||e.properties.disabled||!1,m={small:"max-w-xs",medium:"max-w-md",large:"max-w-lg",full:"w-full",default:"max-w-md"},g=m[e.layout.size||"default"]||m.default,y=dt.get(e.type),b=(N,E)=>{const M=t.filter(k=>k.parentId===N).sort((k,T)=>k.order-T.order);return l.jsx("div",{className:p("space-y-4"),children:M.map(k=>l.jsx(Ug,{element:{...k,attributes:{...k.attributes,name:E?`${E}.${k.attributes.name}`:k.attributes.name}},elements:t},k.id))})},C={element:e,properties:e.properties,layout:e.layout,validation:{...e.validation,required:c},logic:e.logic,config:e.config,mode:"render",value:u,onChange:N=>r(f,N),errors:[],formValues:s,readOnly:!1,disabled:h,allElements:t,renderChildren:b},w=()=>y!=null&&y.render?y.render(C):l.jsxs("div",{className:p("p-3 bg-yellow-50 border border-yellow-200 rounded-md text-sm text-yellow-700"),children:[l.jsxs("p",{className:p("font-medium"),children:["Unknown element type: ",e.type]}),l.jsxs("p",{className:p("text-xs mt-1"),children:["This element is not registered in the element registry. Please register it using ",l.jsx("code",{children:"registerElement()"}),"."]})]});return(y==null?void 0:y.structure)==="page"&&["heading","layout","special"].includes(y.subCategory||"")||["paragraph","image","link","formHeading","sectionHeading","subheading","divider","spacer","captcha","submit"].includes(e.type)?l.jsx("div",{className:p(g,"mb-4"),children:w()}):l.jsx("div",{className:p(g,"mb-4"),children:w()})};function TA(e){var o,n,a;if(e.attributes.defaultValue!==void 0)return e.attributes.defaultValue;const t=dt.get(e.type);switch(t==null?void 0:t.dataType){case"array":return[];case"boolean":return!1;case"number":return((o=e.config)==null?void 0:o.min)??0;case"object":return e.type==="rangeSlider"?[((n=e.config)==null?void 0:n.min)??0,((a=e.config)==null?void 0:a.max)??100]:e.type==="dateRange"?{start:"",end:""}:{};default:return""}}function IA(e){if(e)try{return new RegExp(e)}catch{return}}function PA(e){const t={};return e.forEach(r=>{var o;(o=r.attributes)!=null&&o.name&&(t[r.attributes.name]=TA(r))}),t}function MA(e,t){const r=[],o=n=>{var a;for(const s of n)(a=s.attributes)!=null&&a.name&&r.push(s.attributes.name),o(t.filter(i=>i.parentId===s.id))};return o(e),r}const wd=({schema:e,onSubmit:t,initialValues:r,onPageChange:o,submissionFormat:n="keyValue"})=>{const[a,s]=D.useState(0),[i,c]=D.useState(!1),[d,f]=D.useState(null),u=D.useMemo(()=>e.elements.find(A=>A.type==="pages"),[e.elements]),h=D.useMemo(()=>{var A,L,O,F,V;return{showProgressBar:((A=u==null?void 0:u.config)==null?void 0:A.showProgressBar)??!0,showStepNumbers:((L=u==null?void 0:u.config)==null?void 0:L.showStepNumbers)??!0,allowSkip:((O=u==null?void 0:u.config)==null?void 0:O.allowSkip)??!1,validateOnNext:((F=u==null?void 0:u.config)==null?void 0:F.validateOnNext)??!0,steps:((V=u==null?void 0:u.config)==null?void 0:V.steps)||[{id:"step1",label:"Step 1"}]}},[u]),m=D.useMemo(()=>u?h.steps.map(L=>{const O=e.elements.filter(F=>{var V;return F.parentId===`${u.id}:${L.id}`||F.parentId===u.id&&((V=F.config)==null?void 0:V.wizardStepId)===L.id});return{id:L.id,title:L.label,description:L.description,elements:O.sort((F,V)=>F.order-V.order)}}):[],[u,h.steps,e.elements]),g=D.useMemo(()=>e.elements.filter(A=>A.type!=="pages"),[e.elements]),y=D.useMemo(()=>r||PA(g),[r,g]),b=Vg({defaultValues:y,mode:"onChange"}),{handleSubmit:C,trigger:w}=b,x=D.useCallback(A=>{A>=0&&A<m.length&&(s(A),o==null||o(A))},[m.length,o]),S=D.useCallback(()=>{x(a-1)},[a,x]),N=D.useCallback(async()=>{if(h.validateOnNext){const A=MA(m[a].elements,e.elements);if(!await w(A))return}x(a+1)},[a,h.validateOnNext,m,e.elements,w,x]),E=D.useCallback(()=>{x(a+1)},[a,x]),M=D.useCallback(async A=>{c(!0);try{const L=xd(A,e.elements,n);console.log("Wizard form submitted:",L),f(L),await(t==null?void 0:t(L))}catch(L){console.error("Form submission error:",L)}finally{c(!1)}},[t,e.elements,n]),k=D.useCallback(A=>{if(a<m.length-1){A.preventDefault(),N();return}C(M)(A)},[a,m.length,N,C,M]),T=m[a];return T?l.jsxs("div",{className:p("max-w-3xl mx-auto"),children:[l.jsx(_g,{...b,children:l.jsxs("form",{onSubmit:k,className:p("space-y-1"),children:[h.showProgressBar&&l.jsx(_A,{currentPage:a,totalPages:m.length,pages:m,showStepNumbers:h.showStepNumbers,onPageClick:h.allowSkip?x:void 0}),l.jsx(DA,{page:T,pageIndex:a,totalPages:m.length}),l.jsx("div",{className:p("space-y-4"),children:T.elements.map(A=>l.jsx(Ug,{element:A,elements:e.elements},A.id))}),l.jsx(AA,{currentPage:a,totalPages:m.length,allowSkip:h.allowSkip,isSubmitting:i,onPrevious:S,onNext:N,onSkip:E})]})}),d&&l.jsxs("div",{className:p("mt-8 p-4 bg-green-50 border border-green-200 rounded-lg"),children:[l.jsx("h3",{className:p("text-lg font-medium text-green-800 mb-2"),children:"Form Submitted Successfully!"}),l.jsx("pre",{className:p("text-sm text-green-700 overflow-x-auto"),children:JSON.stringify(d,null,2)})]})]}):l.jsxs("div",{className:p("p-8 text-center text-gray-500"),children:[l.jsx("p",{children:"No wizard steps configured."}),l.jsx("p",{className:p("text-sm mt-2"),children:"Add steps to the wizard element to create a multi-page form."})]})};function OA(e){var o,n,a;if(e.attributes.defaultValue!==void 0)return e.attributes.defaultValue;const t=dt.get(e.type);switch(t==null?void 0:t.dataType){case"array":return[];case"boolean":return!1;case"number":return((o=e.config)==null?void 0:o.min)??0;case"object":return e.type==="rangeSlider"?[((n=e.config)==null?void 0:n.min)??0,((a=e.config)==null?void 0:a.max)??100]:e.type==="dateRange"?{start:"",end:""}:{};default:return""}}function LA(e){const t={};return e.forEach(r=>{var o;(o=r.attributes)!=null&&o.name&&(t[r.attributes.name]=OA(r))}),t}const Wg=({element:e,elements:t})=>{const{watch:r}=md(),o=r(),{visible:n,required:a,disabled:s}=D.useMemo(()=>Rm(e,o,t),[e,o,t]);return n?l.jsx(FA,{element:e,elements:t,dynamicRequired:a,dynamicDisabled:s}):null},FA=({element:e,elements:t,dynamicRequired:r,dynamicDisabled:o})=>{const{setValue:n,watch:a}=md(),s=e.attributes.name,i=a(s),c=o||e.properties.disabled||!1,d=r,f={small:"max-w-xs",medium:"max-w-md",large:"max-w-lg",full:"w-full",default:"max-w-md"},u=f[e.layout.size||"default"]||f.default,h=dt.get(e.type),m=(w,x)=>{const S=t.filter(N=>N.parentId===w).sort((N,E)=>N.order-E.order);return l.jsx("div",{className:p("space-y-4"),children:S.map(N=>l.jsx(Wg,{element:{...N,attributes:{...N.attributes,name:x?`${x}.${N.attributes.name}`:N.attributes.name}},elements:t},N.id))})},g={element:e,properties:e.properties,layout:e.layout,validation:{...e.validation,required:d},logic:e.logic,config:e.config,mode:"render",value:i,onChange:w=>n(s,w),errors:[],formValues:a(),readOnly:!1,disabled:c,allElements:t,renderChildren:m},y=()=>h!=null&&h.render?h.render(g):l.jsxs("div",{className:p("p-3 bg-yellow-50 border border-yellow-200 rounded-md text-sm text-yellow-700"),children:[l.jsxs("p",{className:p("font-medium"),children:["Unknown element type: ",e.type]}),l.jsxs("p",{className:p("text-xs mt-1"),children:["This element is not registered in the element registry. Please register it using ",l.jsx("code",{children:"registerElement()"}),"."]})]});return(h==null?void 0:h.structure)==="page"&&["heading","layout","special"].includes(h.subCategory||"")||["paragraph","image","link","formHeading","sectionHeading","subheading","divider","spacer","captcha","submit"].includes(e.type)?l.jsx("div",{className:p(u,"mb-4"),children:y()}):l.jsx("div",{className:p(u,"mb-4"),children:y()})},Hg=({schema:e,onSubmit:t,initialValues:r,submissionFormat:o="keyValue"})=>{const[n,a]=D.useState(null);if(D.useMemo(()=>e.elements.some(h=>h.type==="pages"),[e.elements]))return l.jsx(wd,{schema:e,onSubmit:t,initialValues:r,submissionFormat:o});const i=D.useMemo(()=>e.elements.filter(h=>!h.parentId),[e.elements]),c=D.useMemo(()=>r||LA(i),[r,i]),d=Vg({defaultValues:c,mode:"onChange"}),f=D.useCallback(h=>{const m=xd(h,e.elements,o);console.log("Form submitted:",m),a(m),t==null||t(m)},[t,e.elements,o]),u=D.useMemo(()=>[...i].sort((h,m)=>h.order-m.order),[i]);return l.jsxs("div",{className:p("max-w-3xl mx-auto"),children:[l.jsx(_g,{...d,children:l.jsxs("form",{onSubmit:d.handleSubmit(f),className:p("space-y-1"),children:[l.jsx("div",{className:p(""),children:e.description&&l.jsx("p",{className:p("mt-2 text-gray-600"),children:e.description})}),l.jsx("div",{className:p("space-y-4"),children:u.map(h=>l.jsx(Wg,{element:h,elements:e.elements},h.id))})]})}),n&&l.jsxs("div",{className:p("mt-8 p-4 bg-green-50 border border-green-200 rounded-lg"),children:[l.jsx("h3",{className:p("text-lg font-medium text-green-800 mb-2"),children:"Submitted Data:"}),l.jsx("pre",{className:p("text-sm text-green-700 overflow-x-auto"),children:JSON.stringify(n,null,2)})]})]})},jg=v.forwardRef(({className:e,...t},r)=>l.jsx("div",{ref:r,className:p("rounded-xl border bg-card text-card-foreground shadow",e),...t}));jg.displayName="Card";const $A=v.forwardRef(({className:e,...t},r)=>l.jsx("div",{ref:r,className:p("flex flex-col space-y-1.5 p-6",e),...t}));$A.displayName="CardHeader";const GA=v.forwardRef(({className:e,...t},r)=>l.jsx("div",{ref:r,className:p("font-semibold leading-none tracking-tight",e),...t}));GA.displayName="CardTitle";const VA=v.forwardRef(({className:e,...t},r)=>l.jsx("div",{ref:r,className:p("text-sm text-muted-foreground",e),...t}));VA.displayName="CardDescription";const Yg=v.forwardRef(({className:e,...t},r)=>l.jsx("div",{ref:r,className:p("p-6 pt-0",e),...t}));Yg.displayName="CardContent";const zA=v.forwardRef(({className:e,...t},r)=>l.jsx("div",{ref:r,className:p("flex items-center p-6 pt-0",e),...t}));zA.displayName="CardFooter";const BA=es("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),qg=v.forwardRef(({className:e,variant:t,...r},o)=>l.jsx("div",{ref:o,role:"alert",className:p(BA({variant:t}),e),...r}));qg.displayName="Alert";const Qg=v.forwardRef(({className:e,...t},r)=>l.jsx("h5",{ref:r,className:p("mb-1 font-medium leading-none tracking-tight",e),...t}));Qg.displayName="AlertTitle";const Kg=v.forwardRef(({className:e,...t},r)=>l.jsx("div",{ref:r,className:p("text-sm [&_p]:leading-relaxed",e),...t}));Kg.displayName="AlertDescription";const UA={id:"design",label:"Design Mode",icon:hS,order:0,keyboardShortcut:"d",description:"Edit your form layout and properties",renderContent:(e,t)=>l.jsxs(l.Fragment,{children:[t==null?void 0:t.ElementSidebar,t==null?void 0:t.Canvas,t==null?void 0:t.PropertyPanel]})},WA={id:"preview",label:"Preview Mode",icon:hf,order:10,keyboardShortcut:"p",description:"Preview your form as an end user",renderContent:(e,t)=>{const{schema:r,setMode:o,submissionFormat:n,onSubmit:a}=e,s=r.elements.some(c=>c.type==="pages"),i=c=>{console.log("Form submitted:",c),a==null||a(c)};return l.jsx("div",{className:p("flex-1 overflow-y-auto bg-muted/30"),children:l.jsxs("div",{className:p("py-8 px-4"),children:[l.jsx("div",{className:p("max-w-3xl mx-auto mb-6"),children:l.jsxs("div",{className:p("flex items-center justify-between"),children:[l.jsxs("div",{className:p("flex items-center gap-2 text-sm text-muted-foreground"),children:[l.jsx(hf,{className:p("h-4","w-4")}),l.jsx("span",{children:"Preview Mode"}),s&&l.jsx(Oi,{variant:"secondary",children:"Wizard Form"})]}),l.jsxs(Ze,{variant:"ghost",size:"sm",onClick:()=>o("design"),children:[l.jsx(dS,{className:p("h-4","w-4","mr-1")}),"Back to Editor"]})]})}),l.jsx(jg,{className:p("max-w-3xl mx-auto"),children:l.jsx(Yg,{className:p("p-8"),children:r.elements.length===0?l.jsxs("div",{className:p("text-center py-12 text-muted-foreground"),children:[l.jsx(fS,{className:p("h-12","w-12","mx-auto","mb-4","text-muted-foreground/50")}),l.jsx("p",{className:p("text-lg font-medium mb-2"),children:"No elements to preview"}),l.jsx("p",{className:p("text-sm"),children:"Switch to Design mode and add some elements to your form."})]}):s?l.jsx(wd,{schema:r,onSubmit:i,submissionFormat:n}):l.jsx(Hg,{schema:r,onSubmit:i,submissionFormat:n})})}),r.elements.some(c=>c.logic)&&l.jsx("div",{className:p("max-w-3xl mx-auto mt-6"),children:l.jsxs(qg,{children:[l.jsx(mf,{className:p("h-4","w-4")}),l.jsx(Qg,{children:"Conditional Logic Active"}),l.jsx(Kg,{children:"This form has conditional logic rules. Some fields may show/hide based on your input."})]})})]})})}};function Xg(){Vt.has("design")||Vt.register(UA),Vt.has("preview")||Vt.register(WA)}Xg();const Jg=({initialSchema:e,onSchemaChange:t,toolbarActions:r,toolbarConfig:o,sidebarTabs:n,sidebarConfig:a,onPreviewSubmit:s,showElementSidebar:i=!0,showPropertyPanel:c=!0,submissionFormat:d="array",className:f})=>{const u=R(S=>S.mode),h=R(S=>S.setMode),m=R(S=>S.schema),g=R(S=>S.loadSchema);D.useEffect(()=>kv(),[]),D.useEffect(()=>{e&&g(e)},[e,g]),D.useEffect(()=>{t&&t(m)},[m,t]);const y=r||o?{...o,actions:[...(o==null?void 0:o.actions)??[],...r??[]]}:void 0,b=n||a!=null&&a.tabs?[...(a==null?void 0:a.tabs)??[],...n??[]]:void 0,C=Vt.get(u),w=D.useMemo(()=>({schema:m,currentMode:u,setMode:h,submissionFormat:d,onSubmit:s,showElementSidebar:i,showPropertyPanel:c,loadSchema:g}),[m,u,h,d,s,i,c,g]),x=D.useMemo(()=>({ElementSidebar:i?l.jsx(sE,{sidebarTabs:b}):void 0,Canvas:l.jsx(kE,{toolbarConfig:y}),PropertyPanel:c?l.jsx(oA,{}):void 0}),[i,b,y,c]);return l.jsx("div",{className:p("ep-main-layout h-screen flex flex-col bg-muted/50",f),children:l.jsx("div",{className:p("flex-1 flex overflow-hidden"),children:C?C.renderContent(w,x):null})})};Z.AffixInput=zl,Z.CanvasElementRenderer=Za,Z.CanvasPreviewWrapper=Ex,Z.ElementDescription=wa,Z.ElementLabel=xa,Z.EmptyState=kx,Z.EntryPulse=Jg,Z.ErrorMessages=fn,Z.FieldWrapper=Nx,Z.FormElementRenderer=vf,Z.FormPreview=Hg,Z.IconInput=uo,Z.InputWrapper=de,Z.WizardForm=wd,Z.builtInElements=yf,Z.createSidebarTab=th,Z.createSidebarTabs=nE,Z.createToolbarAction=sh,Z.createToolbarActions=mE,Z.default=Jg,Z.elementRegistry=dt,Z.extractContextValues=j,Z.filterFieldData=kA,Z.getButtonClassName=_x,Z.getCanvasInputClassName=Ct,Z.getElementDefinition=Pv,Z.getElementIcon=xf,Z.getElementLabel=Mi,Z.getInputClassName=Ot,Z.getModeDefinition=xE,Z.hasElement=Mv,Z.hasMode=wE,Z.isActionDisabled=lh,Z.isActionHidden=Zi,Z.isElementRegistered=RS,Z.isSidebarTabDisabled=rh,Z.isSidebarTabHidden=oh,Z.modeRegistry=Vt,Z.registerBuiltInElements=LS,Z.registerBuiltinModes=Xg,Z.registerElement=Av,Z.registerElements=Tv,Z.registerMode=bE,Z.registerModes=yE,Z.renderElement=tN,Z.renderElementOnCanvas=eN,Z.transformSubmissionData=xd,Z.transformToArrayFormat=Bg,Z.unregisterElement=Iv,Z.unregisterMode=vE,Z.useFormStore=R,Object.defineProperties(Z,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
201
+ */var wb;function VD(){return wb||(wb=1,process.env.NODE_ENV!=="production"&&(function(){function e(c,d){return c===d&&(c!==0||1/c===1/d)||c!==c&&d!==d}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var t=P,r=typeof Object.is=="function"?Object.is:e,o=t.useSyncExternalStore,n=t.useRef,s=t.useEffect,a=t.useMemo,i=t.useDebugValue;Ld.useSyncExternalStoreWithSelector=function(c,d,p,u,f){var h=n(null);if(h.current===null){var g={hasValue:!1,value:null};h.current=g}else g=h.current;h=a(function(){function b(C){if(!v){if(v=!0,N=C,C=u(C),f!==void 0&&g.hasValue){var E=g.value;if(f(E,C))return x=E}return x=C}if(E=x,r(N,C))return E;var k=u(C);return f!==void 0&&f(E,k)?(N=C,E):(N=C,x=k)}var v=!1,N,x,w=p===void 0?null:p;return[function(){return b(d())},w===null?void 0:function(){return b(w())}]},[d,p,u,f]);var y=o(c,h[0],h[1]);return s(function(){g.hasValue=!0,g.value=y},[y]),i(y),y},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()),Ld}var Sb;function GD(){return Sb||(Sb=1,process.env.NODE_ENV==="production"?Ml.exports=FD():Ml.exports=VD()),Ml.exports}var zD=GD();function BD(e){e()}function UD(){let e=null,t=null;return{clear(){e=null,t=null},notify(){BD(()=>{let r=e;for(;r;)r.callback(),r=r.next})},get(){const r=[];let o=e;for(;o;)r.push(o),o=o.next;return r},subscribe(r){let o=!0;const n=t={callback:r,next:null,prev:t};return n.prev?n.prev.next=n:e=n,function(){!o||e===null||(o=!1,n.next?n.next.prev=n.prev:t=n.prev,n.prev?n.prev.next=n.next:e=n.next)}}}}var Nb={notify(){},get:()=>[]};function WD(e,t){let r,o=Nb,n=0,s=!1;function a(y){p();const b=o.subscribe(y);let v=!1;return()=>{v||(v=!0,b(),u())}}function i(){o.notify()}function c(){g.onStateChange&&g.onStateChange()}function d(){return s}function p(){n++,r||(r=e.subscribe(c),o=UD())}function u(){n--,r&&n===0&&(r(),r=void 0,o.clear(),o=Nb)}function f(){s||(s=!0,p())}function h(){s&&(s=!1,u())}const g={addNestedSub:a,notifyNestedSubs:i,handleChangeWrapper:c,isSubscribed:d,trySubscribe:f,tryUnsubscribe:h,getListeners:()=>o};return g}var HD=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",jD=HD(),qD=()=>typeof navigator<"u"&&navigator.product==="ReactNative",YD=qD(),QD=()=>jD||YD?S.useLayoutEffect:S.useEffect,KD=QD(),Fd=Symbol.for("react-redux-context"),Vd=typeof globalThis<"u"?globalThis:{};function RD(){if(!S.createContext)return{};const e=Vd[Fd]??(Vd[Fd]=new Map);let t=e.get(S.createContext);return t||(t=S.createContext(null),process.env.NODE_ENV!=="production"&&(t.displayName="ReactRedux"),e.set(S.createContext,t)),t}var wo=RD();function XD(e){const{children:t,context:r,serverState:o,store:n}=e,s=S.useMemo(()=>{const c=WD(n),d={store:n,subscription:c,getServerState:o?()=>o:void 0};if(process.env.NODE_ENV==="production")return d;{const{identityFunctionCheck:p="once",stabilityCheck:u="once"}=e;return Object.assign(d,{stabilityCheck:u,identityFunctionCheck:p})}},[n,o]),a=S.useMemo(()=>n.getState(),[n]);KD(()=>{const{subscription:c}=s;return c.onStateChange=c.notifyNestedSubs,c.trySubscribe(),a!==n.getState()&&c.notifyNestedSubs(),()=>{c.tryUnsubscribe(),c.onStateChange=void 0}},[s,a]);const i=r||wo;return S.createElement(i.Provider,{value:s},t)}var JD=XD;function Gd(e=wo){return function(){const r=S.useContext(e);if(process.env.NODE_ENV!=="production"&&!r)throw new Error("could not find react-redux context value; please ensure the component is wrapped in a <Provider>");return r}}var Cb=Gd();function zd(e=wo){const t=e===wo?Cb:Gd(e),r=()=>{const{store:o}=t();return o};return Object.assign(r,{withTypes:()=>r}),r}var ZD=zd();function e$(e=wo){const t=e===wo?ZD:zd(e),r=()=>t().dispatch;return Object.assign(r,{withTypes:()=>r}),r}var t$=(e,t)=>e===t;function r$(e=wo){const t=e===wo?Cb:Gd(e),r=(o,n={})=>{const{equalityFn:s=t$}=typeof n=="function"?{equalityFn:n}:n;if(process.env.NODE_ENV!=="production"){if(!o)throw new Error("You must pass a selector to useSelector");if(typeof o!="function")throw new Error("You must pass a function as a selector to useSelector");if(typeof s!="function")throw new Error("You must pass a function as an equality function to useSelector")}const a=t(),{store:i,subscription:c,getServerState:d}=a,p=S.useRef(!0),u=S.useCallback({[o.name](h){const g=o(h);if(process.env.NODE_ENV!=="production"){const{devModeChecks:y={}}=typeof n=="function"?{}:n,{identityFunctionCheck:b,stabilityCheck:v}=a,{identityFunctionCheck:N,stabilityCheck:x}={stabilityCheck:v,identityFunctionCheck:b,...y};if(x==="always"||x==="once"&&p.current){const w=o(h);if(!s(g,w)){let C;try{throw new Error}catch(E){({stack:C}=E)}console.warn("Selector "+(o.name||"unknown")+` returned a different result when called with the same parameters. This can lead to unnecessary rerenders.
202
+ Selectors that return a new reference (such as an object or an array) should be memoized: https://redux.js.org/usage/deriving-data-selectors#optimizing-selectors-with-memoization`,{state:h,selected:g,selected2:w,stack:C})}}if((N==="always"||N==="once"&&p.current)&&g===h){let w;try{throw new Error}catch(C){({stack:w}=C)}console.warn("Selector "+(o.name||"unknown")+` returned the root state when called. This can lead to unnecessary rerenders.
203
+ Selectors that return the entire state are almost certainly a mistake, as they will cause a rerender whenever *anything* in state changes.`,{stack:w})}p.current&&(p.current=!1)}return g}}[o.name],[o]),f=zD.useSyncExternalStoreWithSelector(c.addNestedSub,i.getState,d||i.getState,u,s);return S.useDebugValue(f),f};return Object.assign(r,{withTypes:()=>r}),r}const Nr=e=>S.createElement("button",{type:"button","data-testid":e.testID,disabled:e.disabled&&!e.disabledTranslation,className:e.className,title:e.disabledTranslation&&e.disabled?e.disabledTranslation.title:e.title,onClick:t=>e.handleOnClick(t)},e.disabledTranslation&&e.disabled?e.disabledTranslation.label:e.label),o$=P.forwardRef((e,t)=>S.createElement("span",{...e.dragHandleAttributes,"data-testid":e.testID,ref:t,className:e.className,title:e.title},e.label)),n$=e=>{const{component:t,...r}=e,o=ze(r.schema.suppressStandardClassnames||ve.betweenRules,r.schema.classNames.betweenRules);return S.createElement("div",{className:o,"data-testid":xe.inlineCombinator},S.createElement(t,{...r,testID:xe.combinators}))},Eb={name:"",value:"",label:""},_b=e=>["atleast","atmost","exactly"].includes($e(e)??""),kb=[],s$=e=>{const{match:t,options:r,title:o,className:n,disabled:s,testID:a,schema:i,thresholdPlaceholder:c,selectorComponent:d=e.schema.controls.valueSelector,numericEditorComponent:p=e.schema.controls.valueEditor}=e,{thresholdNum:u,thresholdRule:f,thresholdSchema:h,handleChangeMode:g,handleChangeThreshold:y}=a$(e),b=P.useMemo(()=>c?{...Eb,placeholder:c}:Eb,[c]);return S.createElement(S.Fragment,null,S.createElement(d,{schema:i,testID:a,className:n,title:o,handleOnChange:g,disabled:s,value:t.mode,options:r,multiple:!1,listsAsArrays:!1,path:kb,level:0}),_b(t.mode)&&S.createElement(p,{skipHook:!0,testID:a,inputType:"number",title:o,className:n,disabled:s,handleOnChange:y,field:"",operator:"",value:u,valueSource:"value",fieldData:b,schema:h,path:kb,level:0,rule:f}))},a$=e=>{const{match:t,handleOnChange:r}=e,o=S.useMemo(()=>typeof t.threshold=="number"?Math.max(0,t.threshold):1,[t.threshold]);return{thresholdNum:o,thresholdRule:S.useMemo(()=>({field:"",operator:"=",value:o}),[o]),thresholdSchema:S.useMemo(()=>({...e.schema,parseNumbers:!0}),[e.schema]),handleChangeMode:P.useCallback(n=>{_b(n)&&typeof t.threshold!="number"?r({...t,mode:n,threshold:1}):r({...t,mode:n})},[r,t]),handleChangeThreshold:P.useCallback(n=>{r({...t,threshold:_e(n,{parseNumbers:!0})})},[r,t])}},l$=e=>{const t=S.useId();return S.createElement("label",{"data-testid":e.testID,className:e.className,title:e.title,htmlFor:t},S.createElement("input",{id:t,type:"checkbox",onChange:r=>e.handleOnChange(r.target.checked),checked:!!e.checked,disabled:e.disabled}),e.label)},Dt={errorInvalidIndependentCombinatorsProp:"QueryBuilder was rendered with a truthy independentCombinators prop. This prop is deprecated and unnecessary. Furthermore, the initial query/defaultQuery prop was of type RuleGroupType instead of type RuleGroupIC. More info: https://react-querybuilder.js.org/docs/components/querybuilder#independent-combinators",errorUnnecessaryIndependentCombinatorsProp:"QueryBuilder was rendered with the deprecated and unnecessary independentCombinators prop. To use independent combinators, make sure the query/defaultQuery prop is of type RuleGroupIC when the component mounts. More info: https://react-querybuilder.js.org/docs/components/querybuilder#independent-combinators",errorDeprecatedRuleGroupProps:"A custom RuleGroup component has rendered a standard RuleGroup component with deprecated props. The combinator, not, and rules props should not be used. Instead, the full group object should be passed as the ruleGroup prop.",errorDeprecatedRuleProps:"A custom RuleGroup component has rendered a standard Rule component with deprecated props. The field, operator, value, and valueSource props should not be used. Instead, the full rule object should be passed as the rule prop.",errorBothQueryDefaultQuery:"QueryBuilder was rendered with both query and defaultQuery props. QueryBuilder must be either controlled or uncontrolled (specify either the query prop, or the defaultQuery prop, but not both). Decide between using a controlled or uncontrolled query builder and remove one of these props. More info: https://reactjs.org/link/controlled-components",errorUncontrolledToControlled:"QueryBuilder is changing from an uncontrolled component to be controlled. This is likely caused by the query changing from undefined to a defined value, which should not happen. Decide between using a controlled or uncontrolled query builder for the lifetime of the component. More info: https://reactjs.org/link/controlled-components",errorControlledToUncontrolled:"QueryBuilder is changing from a controlled component to be uncontrolled. This is likely caused by the query changing from defined to undefined, which should not happen. Decide between using a controlled or uncontrolled query builder for the lifetime of the component. More info: https://reactjs.org/link/controlled-components",errorEnabledDndWithoutReactDnD:"QueryBuilder was rendered with the enableDragAndDrop prop set to true, but either react-dnd was not detected or one of react-dnd-html5-backend or react-dnd-touch-backend was not detected. To enable drag-and-drop functionality, install react-dnd and one of the backend packages and wrap QueryBuilder in QueryBuilderDnD from @react-querybuilder/dnd.",errorDeprecatedDebugImport:"Importing from react-querybuilder/debug is deprecated. To enable Redux DevTools for React Query Builder's internal store, set globalThis.__RQB_DEVTOOLS__ = true."},ws=vb({name:"queries",initialState:{},reducers:{setQueryState:(e,{payload:{qbId:t,query:r}})=>{e[t]=r}},selectors:{getQuerySelectorById:(e,t)=>e[t]}}),Ab=S.createContext(null),Bd=vb({name:"warnings",initialState:{[Dt.errorInvalidIndependentCombinatorsProp]:!1,[Dt.errorUnnecessaryIndependentCombinatorsProp]:!1,[Dt.errorDeprecatedRuleGroupProps]:!1,[Dt.errorDeprecatedRuleProps]:!1,[Dt.errorBothQueryDefaultQuery]:!1,[Dt.errorUncontrolledToControlled]:!1,[Dt.errorControlledToUncontrolled]:!1,[Dt.errorEnabledDndWithoutReactDnD]:!1,[Dt.errorDeprecatedDebugImport]:!1},reducers:{rqbWarn:(e,{payload:t})=>{e[t]||(console.error(t),e[t]=!0)}}}),Db=LD(ws,Bd).withLazyLoadedSlices(),i$=e=>e$(e),c$=e=>zd(e),d$=e=>r$(e),u$=e=>({useRQB_INTERNAL_QueryBuilderDispatch:i$(e),useRQB_INTERNAL_QueryBuilderStore:c$(e),useRQB_INTERNAL_QueryBuilderSelector:d$(e)}),Ud=({payload:e,onQueryChange:t})=>r=>{r(ws.actions.setQueryState(e)),typeof t=="function"&&t(e.query)},Wd=u$(Ab),Hd=Wd.useRQB_INTERNAL_QueryBuilderDispatch,f$=Wd.useRQB_INTERNAL_QueryBuilderStore,p$=Wd.useRQB_INTERNAL_QueryBuilderSelector,{rqbWarn:h$}=Bd.actions,Jo=e=>t=>{setTimeout(()=>t(h$(e)))},m$={reducer:Db,preloadedState:{queries:ws.getInitialState(),warnings:Bd.getInitialState()},middleware:e=>e({serializableCheck:{ignoredActions:[ws.actions.setQueryState.type],ignoredPaths:[/^queries\b.*\.rules\.\d+\.value$/]}})},g$=e=>{const[t,r]=P.useState(e),[o,n]=P.useState(null);return e!==t&&(n(t),r(e)),o},b$=e=>{const t=Hd(),{defaultQuery:r,queryProp:o}=e,n=g$(!!o);process.env.NODE_ENV!=="production"&&(o&&r?t(Jo(Dt.errorBothQueryDefaultQuery)):n===!0&&!o&&r?t(Jo(Dt.errorControlledToUncontrolled)):n===!1&&o&&!r&&t(Jo(Dt.errorUncontrolledToControlled)))};function jd(e,t,r){const o=Hd();process.env.NODE_ENV!=="production"&&t&&(e==="independentCombinators"&&(r==="invalid"&&o(Jo(Dt.errorInvalidIndependentCombinatorsProp)),r==="unnecessary"&&o(Jo(Dt.errorUnnecessaryIndependentCombinatorsProp))),e==="rule"&&o(Jo(Dt.errorDeprecatedRuleProps)),e==="ruleGroup"&&o(Jo(Dt.errorDeprecatedRuleGroupProps)))}const $b=e=>{const{optionList:t,optionsMap:r,defaultOption:o}=P.useMemo(()=>vn({placeholder:e.translations.fields,optionList:e.fields,autoSelectOption:e.autoSelectField,baseOption:e.baseField}),[e.autoSelectField,e.baseField,e.fields,e.translations.fields]);return{fields:t,fieldMap:r,defaultField:o}},y$=e=>{const t=hD({...m$,devTools:e?{name:"React Query Builder"}:!1});return t.addSlice=r=>{Db.inject(r),t.dispatch({type:crypto.randomUUID().slice(0,8),meta:`Initializing state for slice "${r.name}"`})},t};let qd=null;function Tb(e){return qd||(qd=y$(globalThis==null?void 0:globalThis.__RQB_DEVTOOLS__)),qd}const Zo=e=>t=>ws.selectors.getQuerySelectorById({queries:t.queries},e),v$=(e,t)=>{const r=S.useContext(Yd);return p$(e,t)??(r==null?void 0:r.initialQuery)},x$={},w$={},S$=[],N$={},C$=()=>null,Pb=()=>"",en=()=>!0,E$=(...e)=>{console.log(...e)};function _$(e,t){const{query:r,defaultQuery:o,getValueEditorSeparator:n=C$,getRuleClassname:s=Pb,getRuleGroupClassname:a=Pb,onAddRule:i=en,onAddGroup:c=en,onMoveRule:d=en,onMoveGroup:p=en,onGroupRule:u=en,onGroupGroup:f=en,onRemove:h=en,onQueryChange:g,showCombinatorsBetweenRules:y=!1,showNotToggle:b=!1,showShiftActions:v=!1,showCloneButtons:N=!1,showLockButtons:x=!1,showMuteButtons:w=!1,suppressStandardClassnames:C=!1,resetOnFieldChange:E=!0,resetOnOperatorChange:k=!1,autoSelectField:_=!0,autoSelectOperator:D=!0,autoSelectValue:A=!0,addRuleToNewGroups:I=!1,listsAsArrays:T=!1,parseNumbers:L=!1,disabled:F=!1,validator:B,onLog:G=E$,idGenerator:z,accessibleDescriptionGenerator:H=sA}=e,{qbId:V,rqbContext:W,fields:pe,fieldMap:U,combinators:Q,getParameters:Ce,getOperatorsMain:oe,getMatchModesMain:ye,getRuleDefaultOperator:R,getSubQueryBuilderPropsMain:ce,getValueEditorTypeMain:re,getValueSourcesMain:Ae,getValuesMain:we,getRuleDefaultValue:ue,getInputTypeMain:J,createRule:ne,createRuleGroup:fe}=t,{controlClassnames:ke,controlElements:Re,debugMode:rt,enableDragAndDrop:st,enableMountQueryChange:Xe,translations:Ee}=W,yt=!!y,fr=!!b,Yt=!!v,It=!!N,Me=!!x,Et=!!w,Ot=!!E,Hr=!!k,rr=!!_,$=!!D,O=!!A,M=!!I,Y=!!T,q=!!C,Z=(e.maxLevels??0)>0?Number(e.maxLevels):1/0,j=P.useCallback((...he)=>{rt&&G(...he)},[rt,G]);b$({defaultQuery:o,queryProp:r});const X=f$(),ie=Hd(),Oe=P.useMemo(()=>Zo(V),[V]),qe=v$(Oe),Mt=P.useCallback(()=>Oe(X.getState()),[X,Oe]),Pe=P.useMemo(()=>fe(),[fe]),et=r??qe??o??Pe,lt=et.id?et:ml(et,{idGenerator:z}),[_r]=P.useState(lt),kn=P.useMemo(()=>({...W,initialQuery:_r}),[W,_r]);P.useEffect(()=>{r&&!Object.is(r,qe)&&ie(Ud({payload:{qbId:V,query:r},onQueryChange:void 0}))},[r,V,qe,ie]);const pr=P.useMemo(()=>yn(lt),[lt]),An=!!e.independentCombinators&&!pr;jd("independentCombinators",An||!An&&(e.independentCombinators??"not present")!=="not present",An?"invalid":"unnecessary");const As=P.useRef(!1);P.useEffect(()=>{As.current||(As.current=!0,ie(Ud({payload:{qbId:V,query:lt},onQueryChange:Xe&&typeof g=="function"?g:void 0})))},[Xe,g,V,ie,lt]);const Lt=P.useCallback(he=>{ie(Ud({payload:{qbId:V,query:he},onQueryChange:g}))},[g,V,ie]),Dn=Array.isArray(F)&&F||S$,vt=F===!0,Rl=lt.disabled||Dn.some(he=>he.length===0),Ds=P.useCallback((he,Fe,He)=>{const Ge=Zo(V)(X.getState());if(!Ge)return;if(Nn(Fe,Ge)||vt){j({qbId:V,type:bt.parentPathDisabled,rule:he,parentPath:Fe,query:Ge});return}const Ve=i(he,Fe,Ge,He);if(!Ve){j({qbId:V,type:bt.onAddRuleFalse,rule:he,parentPath:Fe,query:Ge});return}const _t=Ve===!0?he:Ve,zt=Mg(Ge,_t,Fe,{combinators:Q,combinatorPreceding:_t.combinatorPreceding??void 0,idGenerator:z});j({qbId:V,type:bt.add,query:Ge,newQuery:zt,newRule:_t,parentPath:Fe}),Lt(zt)},[Q,Lt,z,j,i,V,X,vt]),$s=P.useCallback((he,Fe,He)=>{if(Fe.length>=Z)return;const Ge=Zo(V)(X.getState());if(!Ge)return;if(Nn(Fe,Ge)||vt){j({qbId:V,type:bt.parentPathDisabled,ruleGroup:he,parentPath:Fe,query:Ge});return}const Ve=c(he,Fe,Ge,He);if(!Ve){j({qbId:V,type:bt.onAddGroupFalse,ruleGroup:he,parentPath:Fe,query:Ge});return}const _t=Ve===!0?he:Ve,zt=Mg(Ge,_t,Fe,{combinators:Q,combinatorPreceding:_t.combinatorPreceding??void 0,idGenerator:z});j({qbId:V,type:bt.add,query:Ge,newQuery:zt,newGroup:_t,parentPath:Fe}),Lt(zt)},[Q,Lt,z,j,Z,c,V,X,vt]),Ts=P.useCallback((he,Fe,He)=>{const Ge=Zo(V)(X.getState());if(!Ge)return;if(Nn(He,Ge)&&he!=="disabled"||vt){j({qbId:V,type:bt.pathDisabled,path:He,prop:he,value:Fe,query:Ge});return}const Ve=yA(Ge,he,Fe,He,{resetOnFieldChange:Ot,resetOnOperatorChange:Hr,getRuleDefaultOperator:R,getValueSources:Ae,getRuleDefaultValue:ue,getMatchModes:ye});j({qbId:V,type:bt.update,query:Ge,newQuery:Ve,prop:he,value:Fe,path:He}),Lt(Ve)},[Lt,ye,R,ue,Ae,j,V,X,vt,Ot,Hr]),$n=P.useCallback((he,Fe)=>{const He=Zo(V)(X.getState());if(!He)return;if(Nn(he,He)||vt){j({qbId:V,type:bt.pathDisabled,path:he,query:He});return}const Ge=ht(he,He);if(Ge)if(h(Ge,he,He,Fe)){const Ve=xA(He,he);j({qbId:V,type:bt.remove,query:He,newQuery:Ve,path:he,ruleOrGroup:Ge}),Lt(Ve)}else j({qbId:V,type:bt.onRemoveFalse,ruleOrGroup:Ge,path:he,query:He})},[Lt,j,h,V,X,vt]),Ps=P.useCallback((he,Fe,He,Ge)=>{const Ve=Zo(V)(X.getState());if(!Ve)return;if(Nn(he,Ve)||vt){j({qbId:V,type:bt.pathDisabled,oldPath:he,newPath:Fe,query:Ve});return}const _t=SA(Ve,he,Fe,{clone:He,combinators:Q,idGenerator:z}),zt=ht(he,Ve),Co=ge(zt),jr=(Co?p:d)(zt,he,Fe,Ve,_t,{clone:He,combinators:Q},Ge);if(!jr){j({qbId:V,type:Co?bt.onMoveGroupFalse:bt.onMoveRuleFalse,ruleOrGroup:zt,oldPath:he,newPath:Fe,clone:He,query:Ve,nextQuery:_t});return}const Eo=ge(jr)?jr:_t;j({qbId:V,type:bt.move,query:Ve,newQuery:Eo,oldPath:he,newPath:Fe,clone:He}),Lt(Eo)},[Q,Lt,z,j,p,d,V,X,vt]),Is=P.useCallback((he,Fe,He,Ge)=>{const Ve=Zo(V)(X.getState());if(!Ve)return;if(Nn(he,Ve)||vt){j({qbId:V,type:bt.pathDisabled,sourcePath:he,targetPath:Fe,query:Ve});return}const _t=CA(Ve,he,Fe,{clone:He,combinators:Q,idGenerator:z}),zt=ht(he,Ve),Co=ge(zt),jr=(Co?f:u)(zt,he,Fe,Ve,_t,{clone:He,combinators:Q},Ge);if(!jr){j({qbId:V,type:Co?bt.onGroupGroupFalse:bt.onGroupRuleFalse,ruleOrGroup:zt,sourcePath:he,targetPath:Fe,clone:He,query:Ve,nextQuery:_t});return}const Eo=ge(jr)?jr:_t;j({qbId:V,type:bt.group,query:Ve,newQuery:Eo,sourcePath:he,targetPath:Fe,clone:He}),Lt(Eo)},[Q,Lt,z,j,f,u,V,X,vt]),{validationResult:hr,validationMap:Os}=P.useMemo(()=>{const he=typeof B=="function"&&lt?B(lt):x$;return{validationResult:he,validationMap:typeof he=="boolean"?w$:he}},[lt,B]),Xl=st?"enabled":"disabled",Jl=pr||yt?"enabled":"disabled",Zl=P.useMemo(()=>typeof lt.combinator=="string"?{combinator:lt.combinator}:N$,[lt.combinator]),ei=P.useMemo(()=>ze(q||ve.queryBuilder,ze(ke.queryBuilder),vt&&ke.disabled,typeof hr=="boolean"&&hr&&ke.valid,typeof hr=="boolean"&&!hr&&ke.invalid,q||{[ve.disabled]:vt,[ve.valid]:typeof hr=="boolean"&&hr,[ve.invalid]:typeof hr=="boolean"&&!hr}),[ke.disabled,ke.invalid,ke.queryBuilder,ke.valid,vt,q,hr]),Ms=P.useCallback(he=>fe(he??pr),[fe,pr]),ti=P.useMemo(()=>({addRuleToNewGroups:M,accessibleDescriptionGenerator:H,autoSelectField:rr,autoSelectOperator:$,autoSelectValue:O,classNames:ke,combinators:Q,getParameters:Ce,controls:Re,createRule:ne,createRuleGroup:Ms,disabledPaths:Dn,enableDragAndDrop:st,fieldMap:U,fields:pe,dispatchQuery:Lt,getQuery:Mt,getInputType:J,getOperators:oe,getMatchModes:ye,getRuleClassname:s,getRuleDefaultOperator:R,getRuleDefaultValue:ue,getRuleGroupClassname:a,getSubQueryBuilderProps:ce,getValueEditorSeparator:n,getValueEditorType:re,getValues:we,getValueSources:Ae,independentCombinators:pr,listsAsArrays:Y,maxLevels:Z,parseNumbers:L,qbId:V,resetOnFieldChange:Ot,resetOnOperatorChange:Hr,showCloneButtons:It,showCombinatorsBetweenRules:yt,showLockButtons:Me,showMuteButtons:Et,showNotToggle:fr,showShiftActions:Yt,suppressStandardClassnames:q,validationMap:Os}),[H,M,rr,$,O,Q,ke,Re,ne,Ms,Dn,Lt,st,U,pe,J,oe,ye,Mt,s,R,ue,a,ce,n,re,we,Ae,Ce,pr,Y,Z,L,V,Ot,Hr,It,yt,Me,Et,fr,Yt,q,Os]);return{actions:P.useMemo(()=>({moveRule:Ps,onGroupAdd:$s,onGroupRemove:$n,onPropChange:Ts,onRuleAdd:Ds,onRuleRemove:$n,groupRule:Is}),[Is,Ps,$s,Ts,Ds,$n]),rootGroup:lt,rootGroupDisabled:Rl,queryDisabled:vt,rqbContext:kn,schema:ti,translations:Ee,wrapperClassName:ei,dndEnabledAttr:Xl,inlineCombinatorsAttr:Jl,combinatorPropObject:Zl}}const k$=e=>{const[t]=P.useState(lr),{fields:r,baseField:o,operators:n,baseOperator:s,combinators:a,baseCombinator:i,getParameters:c,translations:d,enableMountQueryChange:p=!0,controlClassnames:u,controlElements:f,getDefaultField:h,getDefaultOperator:g,getDefaultValue:y,getMatchModes:b,getOperators:v,getSubQueryBuilderProps:N,getValueEditorType:x,getValueSources:w,getInputType:C,getValues:E,autoSelectField:k=!0,autoSelectOperator:_=!0,autoSelectValue:D=!0,addRuleToNewGroups:A=!1,enableDragAndDrop:I,listsAsArrays:T=!1,debugMode:L=!1,idGenerator:F=lr}=e,[B]=P.useState(e.query??e.defaultQuery),G=z$({controlClassnames:u,controlElements:f,debugMode:L,enableDragAndDrop:I,enableMountQueryChange:p,translations:d,initialQuery:B,qbId:t,finalize:!0}),{translations:z}=G,{fields:H,fieldMap:V}=$b({fields:r,baseField:o,autoSelectField:k,translations:z}),{optionList:W}=P.useMemo(()=>vn({optionList:a??ns,labelMap:sk,baseOption:i,autoSelectOption:!0}),[i,a]),pe=P.useCallback((J,ne,fe)=>vn({optionList:(c==null?void 0:c(J,ne,fe))??[],autoSelectOption:!0}).optionList,[c]),{optionList:U}=P.useMemo(()=>vn({optionList:n??ak,placeholder:z.operators,labelMap:Om,baseOption:s,autoSelectOption:_}),[_,s,n,z.operators]),Q=P.useCallback((J,{fieldData:ne})=>vn({optionList:(ne==null?void 0:ne.operators)??(v==null?void 0:v(J,{fieldData:ne}))??U,placeholder:z.operators,baseOption:s,labelMap:Om,autoSelectOption:_}).optionList,[_,s,v,U,z.operators]),Ce=P.useCallback(J=>{const ne=V[J];return ne!=null&&ne.defaultOperator?ne.defaultOperator:g?typeof g=="function"?g(J,{fieldData:ne}):g:Ct(Q(J,{fieldData:ne})??[])??""},[V,g,Q]),oe=P.useCallback((J,ne,{fieldData:fe})=>fe.valueEditorType?typeof fe.valueEditorType=="function"?fe.valueEditorType(ne):fe.valueEditorType:(x==null?void 0:x(J,ne,{fieldData:fe}))??"text",[x]),ye=P.useCallback((J,ne,fe)=>Tg(V[J],ne,w),[V,w]),R=P.useCallback((J,ne)=>lA(V[J],b),[V,b]),ce=P.useCallback((J,ne)=>(N==null?void 0:N(J,ne))??{},[N]),re=P.useCallback((J,ne,{fieldData:fe})=>vn({optionList:(fe==null?void 0:fe.values)??(E==null?void 0:E(J,ne,{fieldData:fe}))??[],placeholder:z.values,autoSelectOption:D}).optionList,[D,E,z.values]),Ae=P.useCallback(J=>iA(J,{fieldData:V[J.field]??{},fields:H,getParameters:(ne,fe,ke)=>pe(ne,fe,ke),listsAsArrays:T,getValueEditorType:(ne,fe,ke)=>oe(ne,fe,ke),getValues:(ne,fe,ke)=>re(ne,fe,ke),getDefaultValue:y&&((ne,fe)=>y(ne,fe))}),[V,H,y,oe,re,T,pe]),we=P.useCallback((J,ne,{fieldData:fe})=>{if(C){const ke=C(J,ne,{fieldData:fe});if(ke)return ke}return"text"},[C]),ue=P.useCallback(()=>{let J="";const ne=H;/* v8 ignore else -- @preserve */if((ne==null?void 0:ne.length)>0&&ne[0]){const Xe=Ct(ne);/* v8 ignore else -- @preserve */Xe&&(J=Xe)}if(h)if(typeof h=="function"){const Xe=h(ne);/* v8 ignore else -- @preserve */Xe&&(J=Xe)}else J=h;const fe=Ce(J),ke=Ct(ye(J,fe,{fieldData:We(ne,J)}))??"value",Re=Ct(R(J,{fieldData:We(ne,J)})),rt={id:F(),field:J,operator:fe,valueSource:ke,value:"",...Re?{match:{mode:Re,threshold:1}}:null},st=Ae(rt);return{...rt,value:st}},[H,h,R,Ce,Ae,ye,F]);return{qbId:t,rqbContext:G,fields:H,fieldMap:V,combinators:W,getParameters:pe,getMatchModesMain:R,getOperatorsMain:Q,getRuleDefaultOperator:Ce,getSubQueryBuilderPropsMain:ce,getValueEditorTypeMain:oe,getValueSourcesMain:ye,getValuesMain:re,getRuleDefaultValue:Ae,getInputTypeMain:we,createRule:ue,createRuleGroup:P.useCallback(J=>J?{id:F(),rules:A?[ue()]:[],not:!1}:{id:F(),rules:A?[ue()]:[],combinator:Ct(W)??"",not:!1},[A,W,ue,F])}},Ib=e=>_$(e,k$(e)),Yd=P.createContext({}),A$=S.memo(function(t){const r=Ob(t),{previewRef:o,dropRef:n,schema:{controls:{ruleGroupBodyElements:s,ruleGroupHeaderElements:a}}}=r,i=ct(r.addRule),c=ct(r.addGroup),d=ct(r.cloneGroup),p=ct(r.toggleLockGroup),u=ct(r.toggleMuteGroup),f=ct(r.removeGroup),h=ct(r.shiftGroupUp),g=ct(r.shiftGroupDown),y=P.useMemo(()=>({addRule:i,addGroup:c,cloneGroup:d,toggleLockGroup:p,toggleMuteGroup:u,removeGroup:f,shiftGroupUp:h,shiftGroupDown:g}),[i,c,d,p,u,f,h,g]);return S.createElement("div",{ref:o,title:r.accessibleDescription,className:r.outerClassName,"data-testid":xe.ruleGroup,"data-not":r.ruleGroup.not?"true":void 0,"data-dragmonitorid":r.dragMonitorId,"data-dropmonitorid":r.dropMonitorId,"data-rule-group-id":r.id,"data-level":r.path.length,"data-path":JSON.stringify(r.path)},S.createElement("div",{ref:n,className:r.classNames.header},S.createElement(a,{...r,...y})),S.createElement("div",{className:r.classNames.body},S.createElement(s,{...r,...y})))}),D$=S.memo(function(t){const{dragRef:r,schema:{controls:{shiftActions:o,dragHandle:n,combinatorSelector:s,notToggle:a,addRuleAction:i,addGroupAction:c,cloneGroupAction:d,lockGroupAction:p,muteGroupAction:u,removeGroupAction:f}}}=t,h=P.useMemo(()=>({level:t.path.length,path:t.path,disabled:t.disabled,context:t.context,validation:t.validationResult,schema:t.schema}),[t.path,t.disabled,t.context,t.validationResult,t.schema]),g=P.useMemo(()=>t.schema.showShiftActions?{shiftUp:t.translations.shiftActionUp.title,shiftDown:t.translations.shiftActionDown.title}:void 0,[t.schema.showShiftActions,t.translations]),y=P.useMemo(()=>t.schema.showShiftActions?{shiftUp:t.translations.shiftActionUp.label,shiftDown:t.translations.shiftActionDown.label}:void 0,[t.schema.showShiftActions,t.translations]);return S.createElement(P.Fragment,null,t.schema.showShiftActions&&t.path.length>0&&S.createElement(o,{key:xe.shiftActions,...h,testID:xe.shiftActions,titles:g,labels:y,className:t.classNames.shiftActions,shiftUp:t.shiftGroupUp,shiftDown:t.shiftGroupDown,shiftUpDisabled:t.shiftUpDisabled,shiftDownDisabled:t.shiftDownDisabled,ruleOrGroup:t.ruleGroup}),t.path.length>0&&t.schema.enableDragAndDrop&&S.createElement(n,{key:xe.dragHandle,...h,testID:xe.dragHandle,ref:r,title:t.translations.dragHandle.title,label:t.translations.dragHandle.label,className:t.classNames.dragHandle,dragHandleAttributes:t.dragHandleAttributes,ruleOrGroup:t.ruleGroup}),!t.schema.showCombinatorsBetweenRules&&!t.schema.independentCombinators&&S.createElement(s,{key:xe.combinators,...h,testID:xe.combinators,options:t.schema.combinators,value:t.combinator,title:t.translations.combinators.title,className:t.classNames.combinators,handleOnChange:t.onCombinatorChange,rules:t.ruleGroup.rules,ruleGroup:t.ruleGroup}),t.schema.showNotToggle&&S.createElement(a,{key:xe.notToggle,...h,testID:xe.notToggle,className:t.classNames.notToggle,title:t.translations.notToggle.title,label:t.translations.notToggle.label,checked:t.ruleGroup.not,handleOnChange:t.onNotToggleChange,ruleGroup:t.ruleGroup}),S.createElement(i,{key:xe.addRule,...h,testID:xe.addRule,label:t.translations.addRule.label,title:t.translations.addRule.title,className:t.classNames.addRule,handleOnClick:t.addRule,rules:t.ruleGroup.rules,ruleOrGroup:t.ruleGroup}),t.schema.maxLevels>t.path.length&&S.createElement(c,{key:xe.addGroup,...h,testID:xe.addGroup,label:t.translations.addGroup.label,title:t.translations.addGroup.title,className:t.classNames.addGroup,handleOnClick:t.addGroup,rules:t.ruleGroup.rules,ruleOrGroup:t.ruleGroup}),t.schema.showCloneButtons&&t.path.length>0&&S.createElement(d,{key:xe.cloneGroup,...h,testID:xe.cloneGroup,label:t.translations.cloneRuleGroup.label,title:t.translations.cloneRuleGroup.title,className:t.classNames.cloneGroup,handleOnClick:t.cloneGroup,rules:t.ruleGroup.rules,ruleOrGroup:t.ruleGroup}),t.schema.showLockButtons&&S.createElement(p,{key:xe.lockGroup,...h,testID:xe.lockGroup,label:t.translations.lockGroup.label,title:t.translations.lockGroup.title,className:t.classNames.lockGroup,handleOnClick:t.toggleLockGroup,rules:t.ruleGroup.rules,disabledTranslation:t.parentDisabled?void 0:t.translations.lockGroupDisabled,ruleOrGroup:t.ruleGroup}),t.schema.showMuteButtons&&S.createElement(u,{key:xe.muteGroup,...h,testID:xe.muteGroup,label:t.ruleGroup.muted?t.translations.unmuteGroup.label:t.translations.muteGroup.label,title:t.ruleGroup.muted?t.translations.unmuteGroup.title:t.translations.muteGroup.title,className:t.classNames.muteGroup,handleOnClick:t.toggleMuteGroup,rules:t.ruleGroup.rules,ruleOrGroup:t.ruleGroup}),t.path.length>0&&S.createElement(f,{key:xe.removeGroup,...h,testID:xe.removeGroup,label:t.translations.removeGroup.label,title:t.translations.removeGroup.title,className:t.classNames.removeGroup,handleOnClick:t.removeGroup,rules:t.ruleGroup.rules,ruleOrGroup:t.ruleGroup}))}),$$=S.memo(function(t){const{schema:{controls:{combinatorSelector:r,inlineCombinator:o,ruleGroup:n,rule:s}}}=t;return S.createElement(P.Fragment,null,t.ruleGroup.rules.map((a,i,{length:c})=>{const d=t.pathsMemo[i],p=d.path,u=d.disabled||typeof a!="string"&&a.disabled,f=Qo([0],p),h=t.path.length===0&&i===c-1,g=typeof a=="string"?[...p,a].join("-"):a.id;return S.createElement(P.Fragment,{key:g},i>0&&!t.schema.independentCombinators&&t.schema.showCombinatorsBetweenRules&&S.createElement(o,{key:xe.inlineCombinator,options:t.schema.combinators,value:t.combinator,title:t.translations.combinators.title,className:t.classNames.combinators,handleOnChange:t.onCombinatorChange,rules:t.ruleGroup.rules,level:t.path.length,context:t.context,validation:t.validationResult,component:r,path:p,disabled:t.disabled,schema:t.schema,ruleGroup:t.ruleGroup}),typeof a=="string"?S.createElement(o,{key:`${xe.inlineCombinator}-independent`,options:t.schema.combinators,value:a,title:t.translations.combinators.title,className:t.classNames.combinators,handleOnChange:y=>t.onIndependentCombinatorChange(y,i),rules:t.ruleGroup.rules,level:t.path.length,context:t.context,validation:t.validationResult,component:r,path:p,disabled:u,schema:t.schema,ruleGroup:t.ruleGroup}):ge(a)?S.createElement(n,{key:xe.ruleGroup,id:a.id,schema:t.schema,actions:t.actions,path:p,translations:t.translations,ruleGroup:a,rules:a.rules,combinator:Vt(a)?a.combinator:void 0,not:!!a.not,disabled:u,parentDisabled:t.parentDisabled||t.disabled,parentMuted:t.parentMuted||t.muted,shiftUpDisabled:f,shiftDownDisabled:h,context:t.context}):S.createElement(s,{key:xe.rule,id:a.id,rule:a,field:a.field,operator:a.operator,value:a.value,valueSource:a.valueSource,schema:t.schema,actions:t.actions,path:p,disabled:u,parentDisabled:t.parentDisabled||t.disabled,parentMuted:t.parentMuted||t.muted,translations:t.translations,shiftUpDisabled:f,shiftDownDisabled:h,context:t.context}))}))}),Ob=e=>{const{id:t,path:r,ruleGroup:o,schema:{qbId:n,accessibleDescriptionGenerator:s,classNames:a,combinators:i,createRule:c,createRuleGroup:d,disabledPaths:p,independentCombinators:u,validationMap:f,enableDragAndDrop:h,getRuleGroupClassname:g,suppressStandardClassnames:y},actions:{onGroupAdd:b,onGroupRemove:v,onPropChange:N,onRuleAdd:x,moveRule:w},disabled:C,parentDisabled:E,parentMuted:k,shiftUpDisabled:_,shiftDownDisabled:D,combinator:A,rules:I,not:T,dropEffect:L="move",groupItems:F=!1,dragMonitorId:B="",dropMonitorId:G="",previewRef:z=null,dragRef:H=null,dropRef:V=null,isDragging:W=!1,isOver:pe=!1,dropNotAllowed:U=!1}=e;jd("ruleGroup",!o),Lb(h,!!(B||G||z||H||V));const Q=!!E||!!C,Ce=!!k||!!(o!=null&&o.muted),oe=P.useMemo(()=>o&&Vt(o)?o.combinator:o?Ct(i):A??Ct(i),[A,i,o]),ye=P.useMemo(()=>{if(o){if(o.combinator===oe||u)return o;const Me=structuredClone(o);return Me.combinator=oe,Me}return{rules:I,not:T}},[oe,u,T,o,I]),R=P.useMemo(()=>({header:ze(y||ve.header,a.header,pe&&L==="copy"&&a.dndCopy,U&&a.dndDropNotAllowed,y||{[ve.dndOver]:pe,[ve.dndCopy]:pe&&L==="copy",[ve.dndDropNotAllowed]:U}),shiftActions:ze(y||ve.shiftActions,a.shiftActions),dragHandle:ze(y||ve.dragHandle,a.dragHandle),combinators:ze(y||ve.combinators,a.valueSelector,a.combinators),notToggle:ze(y||ve.notToggle,a.notToggle),addRule:ze(y||ve.addRule,a.actionElement,a.addRule),addGroup:ze(y||ve.addGroup,a.actionElement,a.addGroup),cloneGroup:ze(y||ve.cloneGroup,a.actionElement,a.cloneGroup),lockGroup:ze(y||ve.lockGroup,a.actionElement,a.lockGroup),muteGroup:ze(y||ve.muteGroup,a.actionElement,a.muteGroup),removeGroup:ze(y||ve.removeGroup,a.actionElement,a.removeGroup),body:ze(y||ve.body,a.body)}),[a.actionElement,a.addGroup,a.addRule,a.body,a.cloneGroup,a.combinators,a.dndCopy,a.dndDropNotAllowed,a.dragHandle,a.header,a.lockGroup,a.muteGroup,a.notToggle,a.removeGroup,a.shiftActions,a.valueSelector,L,U,pe,y]),ce=P.useCallback(Me=>{Q||N("combinator",Me,r)},[Q,N,r]),re=P.useCallback((Me,Et,Ot)=>{Q||N("combinator",Me,[...r,Et])},[Q,N,r]),Ae=P.useCallback((Me,Et)=>{Q||N("not",Me,r)},[Q,N,r]),we=P.useCallback((Me,Et)=>{if(!Q){const Ot=c();x(Ot,r,Et)}},[c,Q,x,r]),ue=P.useCallback((Me,Et)=>{if(!Q){const Ot=d();b(Ot,r,Et)}},[d,Q,b,r]),J=P.useCallback(()=>{if(!Q){const Me=[...it(r),r.at(-1)+1];w(r,Me,!0)}},[Q,w,r]),ne=P.useCallback((Me,Et)=>{!Q&&!_&&w(r,"up",Me==null?void 0:Me.altKey)},[Q,w,r,_]),fe=P.useCallback((Me,Et)=>{!Q&&!D&&w(r,"down",Me==null?void 0:Me.altKey)},[Q,w,r,D]),ke=P.useCallback(()=>{N("disabled",!Q,r)},[Q,N,r]),Re=P.useCallback(()=>{N("muted",!ye.muted,r)},[ye.muted,N,r]),rt=P.useCallback(()=>{Q||v(r)},[Q,v,r]),st=f[t??""],Xe=P.useMemo(()=>Dg(st),[st]),Ee=P.useMemo(()=>{var Me;return u?null:((Me=We(i,oe))==null?void 0:Me.className)??""},[oe,i,u]),yt=P.useMemo(()=>g(ye),[g,ye]),fr=P.useMemo(()=>ze(yt,Ee,y||ve.ruleGroup,a.ruleGroup,Q&&a.disabled,Ce&&a.muted,W&&a.dndDragging,pe&&F&&a.dndGroup,y||{[ve.disabled]:Q,[ve.muted]:Ce,[ve.dndDragging]:W,[ve.dndGroup]:pe&&F},Xe),[a.disabled,a.muted,a.dndDragging,a.dndGroup,a.ruleGroup,Ee,Q,Ce,F,W,pe,yt,y,Xe]),Yt=B$({disabled:Q,disabledPaths:p,path:r,nestedArray:ye.rules}),It=P.useMemo(()=>s({path:r,qbId:n}),[s,r,n]);return{...e,addGroup:ue,addRule:we,accessibleDescription:It,classNames:R,cloneGroup:J,combinator:oe,disabled:Q,dragMonitorId:B,dragRef:H,dropMonitorId:G,dropRef:V,isDragging:W,isOver:pe,muted:Ce,onCombinatorChange:ce,onGroupAdd:b,onIndependentCombinatorChange:re,onNotToggleChange:Ae,outerClassName:fr,parentDisabled:E,pathsMemo:Yt,previewRef:z,removeGroup:rt,ruleGroup:ye,shiftGroupUp:ne,shiftGroupDown:fe,toggleLockGroup:ke,toggleMuteGroup:Re,validationClassName:Xe,validationResult:st}},T$=e=>{var t,r,o,n;return S.createElement("div",{"data-testid":e.testID,className:e.className},S.createElement("button",{type:"button",disabled:e.disabled||e.shiftUpDisabled,onClick:e.shiftUp,title:(t=e.titles)==null?void 0:t.shiftUp},(r=e.labels)==null?void 0:r.shiftUp),S.createElement("button",{type:"button",disabled:e.disabled||e.shiftDownDisabled,onClick:e.shiftDown,title:(o=e.titles)==null?void 0:o.shiftDown},(n=e.labels)==null?void 0:n.shiftDown))},P$=({name:e,disabled:t,checked:r,label:o,handleOnChange:n})=>{const s=S.useId();return S.createElement("label",{htmlFor:s},S.createElement("input",{id:s,type:"radio",value:e,disabled:t,checked:r,onChange:a=>n(a.target.value)}),o)},I$=e=>{const{operator:t,value:r,handleOnChange:o,title:n,className:s,type:a="text",inputType:i,values:c=[],listsAsArrays:d,fieldData:p,disabled:u,separator:f=null,testID:h,selectorComponent:g=e.schema.controls.valueSelector,parseNumbers:y,skipHook:b,valueSource:v,...N}=e,{valueAsArray:x,multiValueHandler:w,bigIntValueHandler:C,parseNumberMethod:E,valueListItemClassName:k,inputTypeCoerced:_}=O$(e);if(t==="null"||t==="notNull")return null;const D=(p==null?void 0:p.placeholder)??"";if((t==="between"||t==="notBetween")&&(a==="select"||a==="text")){const A=["from","to"].map((I,T)=>a==="text"?S.createElement("input",{key:I,type:_,placeholder:D,value:x[T]??"",className:k,disabled:u,onChange:L=>w(L.target.value,T)}):S.createElement(g,{key:I,...N,schema:e.schema,className:k,handleOnChange:L=>w(L,T),disabled:u,value:x[T]??Ct(c),options:c,listsAsArrays:d}));return S.createElement("span",{"data-testid":h,className:s,title:n},A[0],f,A[1])}switch(a){case"select":case"multiselect":return S.createElement(g,{...N,schema:e.schema,testID:h,className:s,title:n,handleOnChange:o,disabled:u,value:r,options:c,multiple:a==="multiselect",listsAsArrays:d});case"textarea":return S.createElement("textarea",{"data-testid":h,placeholder:D,value:r,title:n,className:s,disabled:u,onChange:A=>o(A.target.value)});case"switch":case"checkbox":return S.createElement("input",{"data-testid":h,type:"checkbox",className:s,title:n,onChange:A=>o(A.target.checked),checked:!!r,disabled:u});case"radio":return S.createElement("span",{"data-testid":h,className:s,title:n},c.map(A=>S.createElement(P$,{key:A.name,name:A.name,disabled:u,checked:r===A.name,handleOnChange:o,label:A.label})))}return i==="bigint"?S.createElement("input",{"data-testid":h,type:_,placeholder:D,value:`${r}`,title:n,className:s,disabled:u,onChange:A=>C(A.target.value)}):S.createElement("input",{"data-testid":h,type:_,placeholder:D,value:r,title:n,className:s,disabled:u,onChange:A=>o(_e(A.target.value,{parseNumbers:E}))})},O$=e=>{const{handleOnChange:t,inputType:r,operator:o,value:n,listsAsArrays:s,parseNumbers:a,values:i,type:c,skipHook:d,schema:{classNames:p,suppressStandardClassnames:u}}=e;P.useEffect(()=>{!d&&c!=="multiselect"&&!["between","notBetween","in","notIn"].includes(o)&&(Array.isArray(n)||r==="number"&&typeof n=="string"&&n.includes(","))&&t(me(n,{retainEmptyStrings:!0})[0]??"")},[t,r,o,d,c,n]);const f=P.useMemo(()=>me(n,{retainEmptyStrings:!0}),[n]),h=P.useMemo(()=>sd({parseNumbers:a,inputType:r}),[r,a]);return{valueAsArray:f,multiValueHandler:P.useCallback((g,y)=>{const b=_e(g,{parseNumbers:h}),v=y===0&&(o==="between"||o==="notBetween")&&(f.length<2||f[1]===void 0);if(f[y]===b&&!v){t(s?f:ss(f,","));return}const N=[...f];N[y]=b,v&&(N[1]=Ct(i)),t(s?N:ss(N,","))},[t,s,o,h,f,i]),bigIntValueHandler:P.useCallback(g=>{const y=_e(g,{parseNumbers:h,bigIntOnOverflow:!0});let b;try{b=BigInt(y)}catch{t(y);return}t(b)},[t,h]),parseNumberMethod:h,valueListItemClassName:ze(u||ve.valueListItem,p==null?void 0:p.valueListItem),inputTypeCoerced:r==="bigint"||o==="in"||o==="notIn"?"text":r||"text"}},M$=e=>{const{multiple:t,onChange:r}=e;return P.useMemo(()=>t?o=>r(Array.from(o.target.selectedOptions).map(n=>n.value)):o=>r(o.target.value),[t,r])},L$=e=>Wm(e)?e.map(t=>S.createElement("optgroup",{key:t.label,label:t.label},t.options.map(r=>S.createElement("option",{key:r.name,value:r.name,disabled:r.disabled},r.label)))):Array.isArray(e)?e.map(t=>S.createElement("option",{key:t.name,value:t.name,disabled:t.disabled},t.label)):null,Ss=e=>{const{onChange:t,val:r}=F$(e),o=M$({multiple:e.multiple,onChange:t});return S.createElement("select",{"data-testid":e.testID,className:e.className,value:r,title:e.title,disabled:e.disabled,multiple:!!e.multiple,onChange:o},L$(e.options))},F$=e=>{const{handleOnChange:t,listsAsArrays:r=!1,multiple:o=!1,value:n}=e;return{onChange:P.useCallback(s=>{if(o){const a=me(s);t(r?a:ss(a,","))}else t(s)},[t,r,o]),val:P.useMemo(()=>o?me(n).map(String):n,[o,n])}},V$=({props:e})=>{const t=Ib(e),r=t.schema.controls.ruleGroup,o=Yd;return S.createElement(o.Provider,{key:t.dndEnabledAttr,value:t.rqbContext},S.createElement("div",{role:"form",className:t.wrapperClassName,"data-dnd":t.dndEnabledAttr,"data-inlinecombinators":t.inlineCombinatorsAttr},S.createElement(r,{translations:t.translations,ruleGroup:t.rootGroup,rules:t.rootGroup.rules,...t.combinatorPropObject,not:!!t.rootGroup.not,schema:t.schema,actions:t.actions,id:t.rootGroup.id,path:Lm,disabled:t.rootGroupDisabled,shiftUpDisabled:!0,shiftDownDisabled:!0,parentDisabled:t.queryDisabled,context:e.context})))},Ll=()=>null,G$=P.forwardRef(Ll),Fl={},z$=({finalize:e,...t})=>{var g,y,b,v,N,x,w,C,E,k,_,D,A,I,T,L,F,B,G,z,H,V,W,pe,U,Q,Ce,oe,ye,R,ce,re,Ae,we,ue,J,ne,fe,ke,Re,rt,st,Xe,Ee,yt,fr,Yt,It,Me,Et,Ot,Hr,rr,$,O,M,Y,q,Z,j,X,ie,Oe,qe,Mt,Pe,et,lt,_r,kn,pr,An,As,Lt,Dn,vt,Rl,Ds,$s,Ts,$n,Ps,Is,hr,Os,Xl,Jl,Zl,ei,Ms,ti,he,Fe,He,Ge,Ve,_t,zt,Co,jr,Eo,ov,nv,sv,av,lv,iv,cv;const r=P.useContext(Yd),o=P.useMemo(()=>pA(t,r),[t,r,e]),n=e?r.enableDragAndDrop!==!1&&Pg(!1,t.enableDragAndDrop,r.enableDragAndDrop):t.enableDragAndDrop??r.enableDragAndDrop,s=P.useMemo(()=>dA(r.controlClassnames,t.controlClassnames),[r.controlClassnames,t.controlClassnames]),a=P.useMemo(()=>({actionElement:s.actionElement,addGroup:s.addGroup,addRule:s.addRule,body:s.body,cloneGroup:s.cloneGroup,cloneRule:s.cloneRule,combinators:s.combinators,dragHandle:s.dragHandle,fields:s.fields,header:s.header,lockGroup:s.lockGroup,lockRule:s.lockRule,muteGroup:s.muteGroup,muteRule:s.muteRule,muted:s.muted,notToggle:s.notToggle,operators:s.operators,queryBuilder:s.queryBuilder,removeGroup:s.removeGroup,removeRule:s.removeRule,rule:s.rule,ruleGroup:s.ruleGroup,shiftActions:s.shiftActions,value:s.value,valueSelector:s.valueSelector,valueSource:s.valueSource,betweenRules:s.betweenRules,valid:s.valid,invalid:s.invalid,dndDragging:s.dndDragging,dndOver:s.dndOver,dndCopy:s.dndCopy,dndGroup:s.dndGroup,dndDropNotAllowed:s.dndDropNotAllowed,dndPreviewPosition:s.dndPreviewPosition,dndHidden:s.dndHidden,disabled:s.disabled,valueListItem:s.valueListItem,matchMode:s.matchMode,matchThreshold:s.matchThreshold,branches:s.branches,hasSubQuery:s.hasSubQuery,loading:s.loading,valueDateTimeRelative:s.valueDateTimeRelative}),[s.actionElement,s.addGroup,s.addRule,s.betweenRules,s.body,s.branches,s.cloneGroup,s.cloneRule,s.combinators,s.disabled,s.dndCopy,s.dndDropNotAllowed,s.dndPreviewPosition,s.dndHidden,s.dndGroup,s.dndDragging,s.dndOver,s.dragHandle,s.fields,s.hasSubQuery,s.header,s.invalid,s.loading,s.lockGroup,s.lockRule,s.muteGroup,s.muteRule,s.muted,s.matchMode,s.matchThreshold,s.notToggle,s.operators,s.queryBuilder,s.removeGroup,s.removeRule,s.rule,s.ruleGroup,s.shiftActions,s.valid,s.value,s.valueDateTimeRelative,s.valueListItem,s.valueSelector,s.valueSource]),i=r.controlElements??Fl,c=t.controlElements??Fl,d=P.useCallback((kr,Ls,Fs)=>{const Vs=kr==="dragHandle"?G$:Ll,ri=(kr.endsWith("Action")&&c.actionElement?c.actionElement:void 0)??(kr.endsWith("Selector")&&c.valueSelector?c.valueSelector:void 0),oi=(kr.endsWith("Action")&&i.actionElement?i.actionElement:void 0)??(kr.endsWith("Selector")&&i.valueSelector?i.valueSelector:void 0),Gs=Ls===null?Vs:Ls??ri??(Fs===null?Vs:Fs??oi);return Gs?{[kr]:Gs}:{[kr]:Vl[kr]}},[i.actionElement,i.valueSelector,e,c.actionElement,c.valueSelector]),p=P.useMemo(()=>Object.assign({},d("addGroupAction",c.addGroupAction,i.addGroupAction),d("addRuleAction",c.addRuleAction,i.addRuleAction),d("cloneGroupAction",c.cloneGroupAction,i.cloneGroupAction),d("cloneRuleAction",c.cloneRuleAction,i.cloneRuleAction),d("combinatorSelector",c.combinatorSelector,i.combinatorSelector),d("dragHandle",c.dragHandle,i.dragHandle),d("fieldSelector",c.fieldSelector,i.fieldSelector),d("inlineCombinator",c.inlineCombinator,i.inlineCombinator),d("lockGroupAction",c.lockGroupAction,i.lockGroupAction),d("lockRuleAction",c.lockRuleAction,i.lockRuleAction),d("muteGroupAction",c.muteGroupAction,i.muteGroupAction),d("muteRuleAction",c.muteRuleAction,i.muteRuleAction),d("notToggle",c.notToggle,i.notToggle),d("operatorSelector",c.operatorSelector,i.operatorSelector),d("removeGroupAction",c.removeGroupAction,i.removeGroupAction),d("removeRuleAction",c.removeRuleAction,i.removeRuleAction),d("shiftActions",c.shiftActions,i.shiftActions),{valueEditor:c.valueEditor===null?Ll:c.valueEditor??(i.valueEditor===null?Ll:i.valueEditor)??Vl.valueEditor},d("valueSourceSelector",c.valueSourceSelector,i.valueSourceSelector),d("matchModeEditor",c.matchModeEditor,i.matchModeEditor),d("rule",c.rule,i.rule),d("ruleGroup",c.ruleGroup,i.ruleGroup),d("ruleGroupBodyElements",c.ruleGroupBodyElements,i.ruleGroupBodyElements),d("ruleGroupHeaderElements",c.ruleGroupHeaderElements,i.ruleGroupHeaderElements),{actionElement:c.actionElement??i.actionElement??Vl.actionElement},{valueSelector:c.valueSelector??i.valueSelector??Vl.valueSelector}),[i.actionElement,i.addGroupAction,i.addRuleAction,i.cloneGroupAction,i.cloneRuleAction,i.combinatorSelector,i.dragHandle,i.fieldSelector,i.inlineCombinator,i.lockGroupAction,i.lockRuleAction,i.muteGroupAction,i.muteRuleAction,i.matchModeEditor,i.notToggle,i.operatorSelector,i.removeGroupAction,i.removeRuleAction,i.rule,i.ruleGroup,i.ruleGroupBodyElements,i.ruleGroupHeaderElements,i.shiftActions,i.valueEditor,i.valueSelector,i.valueSourceSelector,d,e,c.actionElement,c.addGroupAction,c.addRuleAction,c.cloneGroupAction,c.cloneRuleAction,c.combinatorSelector,c.dragHandle,c.fieldSelector,c.inlineCombinator,c.lockGroupAction,c.lockRuleAction,c.muteGroupAction,c.muteRuleAction,c.matchModeEditor,c.notToggle,c.operatorSelector,c.removeGroupAction,c.removeRuleAction,c.rule,c.ruleGroup,c.ruleGroupBodyElements,c.ruleGroupHeaderElements,c.shiftActions,c.valueEditor,c.valueSelector,c.valueSourceSelector]),u=t.translations??Fl,f=r.translations??Fl,h=P.useMemo(()=>{var kr,Ls,Fs,Vs,ri,oi,Gs,dv,uv,fv,pv,hv,mv,gv,bv,yv,vv,xv,wv,Sv,Nv,Cv,Ev,_v,kv,Av,Dv,$v,Tv,Pv,Iv,Ov,Mv,Lv,Fv,Vv,Gv,zv,Bv,Uv,Wv,Hv,jv,qv,Yv,Qv,Kv,Rv,Xv,Jv,Zv,ex,tx,rx,ox,nx,sx,ax,lx,ix,cx,dx,ux,fx,px,hx,mx,gx,bx,yx,vx,xx,wx,Sx,Nx,Cx,Ex,_x,kx,Ax,Dx,$x,Tx,Px,Ix,Ox,Mx,Lx,Fx,Vx,Gx,zx,Bx,Ux,Wx,Hx,jx,qx,Yx,Qx,Kx,Rx,Xx,Jx,Zx,ew,tw,rw;return Object.assign({},Ke("addGroup",{label:[(kr=u.addGroup)==null?void 0:kr.label,(Ls=f.addGroup)==null?void 0:Ls.label],title:[(Fs=u.addGroup)==null?void 0:Fs.title,(Vs=f.addGroup)==null?void 0:Vs.title]},Qe),Ke("addRule",{label:[(ri=u.addRule)==null?void 0:ri.label,(oi=f.addRule)==null?void 0:oi.label],title:[(Gs=u.addRule)==null?void 0:Gs.title,(dv=f.addRule)==null?void 0:dv.title]},Qe),Ke("cloneRule",{label:[(uv=u.cloneRule)==null?void 0:uv.label,(fv=f.cloneRule)==null?void 0:fv.label],title:[(pv=u.cloneRule)==null?void 0:pv.title,(hv=f.cloneRule)==null?void 0:hv.title]},Qe),Ke("cloneRuleGroup",{label:[(mv=u.cloneRuleGroup)==null?void 0:mv.label,(gv=f.cloneRuleGroup)==null?void 0:gv.label],title:[(bv=u.cloneRuleGroup)==null?void 0:bv.title,(yv=f.cloneRuleGroup)==null?void 0:yv.title]},Qe),Ke("combinators",{title:[(vv=u.combinators)==null?void 0:vv.title,(xv=f.combinators)==null?void 0:xv.title]},Qe),Ke("dragHandle",{label:[(wv=u.dragHandle)==null?void 0:wv.label,(Sv=f.dragHandle)==null?void 0:Sv.label],title:[(Nv=u.dragHandle)==null?void 0:Nv.title,(Cv=f.dragHandle)==null?void 0:Cv.title]},Qe),Ke("fields",{placeholderGroupLabel:[(Ev=u.fields)==null?void 0:Ev.placeholderGroupLabel,(_v=f.fields)==null?void 0:_v.placeholderGroupLabel],placeholderLabel:[(kv=u.fields)==null?void 0:kv.placeholderLabel,(Av=f.fields)==null?void 0:Av.placeholderLabel],placeholderName:[(Dv=u.fields)==null?void 0:Dv.placeholderName,($v=f.fields)==null?void 0:$v.placeholderName],title:[(Tv=u.fields)==null?void 0:Tv.title,(Pv=f.fields)==null?void 0:Pv.title]},Qe),Ke("lockGroup",{label:[(Iv=u.lockGroup)==null?void 0:Iv.label,(Ov=f.lockGroup)==null?void 0:Ov.label],title:[(Mv=u.lockGroup)==null?void 0:Mv.title,(Lv=f.lockGroup)==null?void 0:Lv.title]},Qe),Ke("lockGroupDisabled",{label:[(Fv=u.lockGroupDisabled)==null?void 0:Fv.label,(Vv=f.lockGroupDisabled)==null?void 0:Vv.label],title:[(Gv=u.lockGroupDisabled)==null?void 0:Gv.title,(zv=f.lockGroupDisabled)==null?void 0:zv.title]},Qe),Ke("lockRule",{label:[(Bv=u.lockRule)==null?void 0:Bv.label,(Uv=f.lockRule)==null?void 0:Uv.label],title:[(Wv=u.lockRule)==null?void 0:Wv.title,(Hv=f.lockRule)==null?void 0:Hv.title]},Qe),Ke("lockRuleDisabled",{label:[(jv=u.lockRuleDisabled)==null?void 0:jv.label,(qv=f.lockRuleDisabled)==null?void 0:qv.label],title:[(Yv=u.lockRuleDisabled)==null?void 0:Yv.title,(Qv=f.lockRuleDisabled)==null?void 0:Qv.title]},Qe),Ke("muteGroup",{label:[(Kv=u.muteGroup)==null?void 0:Kv.label,(Rv=f.muteGroup)==null?void 0:Rv.label],title:[(Xv=u.muteGroup)==null?void 0:Xv.title,(Jv=f.muteGroup)==null?void 0:Jv.title]},Qe),Ke("unmuteGroup",{label:[(Zv=u.unmuteGroup)==null?void 0:Zv.label,(ex=f.unmuteGroup)==null?void 0:ex.label],title:[(tx=u.unmuteGroup)==null?void 0:tx.title,(rx=f.unmuteGroup)==null?void 0:rx.title]},Qe),Ke("muteRule",{label:[(ox=u.muteRule)==null?void 0:ox.label,(nx=f.muteRule)==null?void 0:nx.label],title:[(sx=u.muteRule)==null?void 0:sx.title,(ax=f.muteRule)==null?void 0:ax.title]},Qe),Ke("unmuteRule",{label:[(lx=u.unmuteRule)==null?void 0:lx.label,(ix=f.unmuteRule)==null?void 0:ix.label],title:[(cx=u.unmuteRule)==null?void 0:cx.title,(dx=f.unmuteRule)==null?void 0:dx.title]},Qe),Ke("notToggle",{label:[(ux=u.notToggle)==null?void 0:ux.label,(fx=f.notToggle)==null?void 0:fx.label],title:[(px=u.notToggle)==null?void 0:px.title,(hx=f.notToggle)==null?void 0:hx.title]},Qe),Ke("operators",{placeholderGroupLabel:[(mx=u.operators)==null?void 0:mx.placeholderGroupLabel,(gx=f.operators)==null?void 0:gx.placeholderGroupLabel],placeholderLabel:[(bx=u.operators)==null?void 0:bx.placeholderLabel,(yx=f.operators)==null?void 0:yx.placeholderLabel],placeholderName:[(vx=u.operators)==null?void 0:vx.placeholderName,(xx=f.operators)==null?void 0:xx.placeholderName],title:[(wx=u.operators)==null?void 0:wx.title,(Sx=f.operators)==null?void 0:Sx.title]},Qe),Ke("values",{placeholderGroupLabel:[(Nx=u.values)==null?void 0:Nx.placeholderGroupLabel,(Cx=f.values)==null?void 0:Cx.placeholderGroupLabel],placeholderLabel:[(Ex=u.values)==null?void 0:Ex.placeholderLabel,(_x=f.values)==null?void 0:_x.placeholderLabel],placeholderName:[(kx=u.values)==null?void 0:kx.placeholderName,(Ax=f.values)==null?void 0:Ax.placeholderName],title:[(Dx=u.values)==null?void 0:Dx.title,($x=f.values)==null?void 0:$x.title]},Qe),Ke("removeGroup",{label:[(Tx=u.removeGroup)==null?void 0:Tx.label,(Px=f.removeGroup)==null?void 0:Px.label],title:[(Ix=u.removeGroup)==null?void 0:Ix.title,(Ox=f.removeGroup)==null?void 0:Ox.title]},Qe),Ke("removeRule",{label:[(Mx=u.removeRule)==null?void 0:Mx.label,(Lx=f.removeRule)==null?void 0:Lx.label],title:[(Fx=u.removeRule)==null?void 0:Fx.title,(Vx=f.removeRule)==null?void 0:Vx.title]},Qe),Ke("shiftActionDown",{label:[(Gx=u.shiftActionDown)==null?void 0:Gx.label,(zx=f.shiftActionDown)==null?void 0:zx.label],title:[(Bx=u.shiftActionDown)==null?void 0:Bx.title,(Ux=f.shiftActionDown)==null?void 0:Ux.title]},Qe),Ke("shiftActionUp",{label:[(Wx=u.shiftActionUp)==null?void 0:Wx.label,(Hx=f.shiftActionUp)==null?void 0:Hx.label],title:[(jx=u.shiftActionUp)==null?void 0:jx.title,(qx=f.shiftActionUp)==null?void 0:qx.title]},Qe),Ke("matchMode",{title:[(Yx=u.matchMode)==null?void 0:Yx.title,(Qx=f.matchMode)==null?void 0:Qx.title]},Qe),Ke("matchThreshold",{title:[(Kx=u.matchThreshold)==null?void 0:Kx.title,(Rx=f.matchThreshold)==null?void 0:Rx.title],placeholderName:[(Xx=u.matchThreshold)==null?void 0:Xx.placeholderName,(Jx=f.matchThreshold)==null?void 0:Jx.placeholderName]},Qe),Ke("value",{title:[(Zx=u.value)==null?void 0:Zx.title,(ew=f.value)==null?void 0:ew.title]},Qe),Ke("valueSourceSelector",{title:[(tw=u.valueSourceSelector)==null?void 0:tw.title,(rw=f.valueSourceSelector)==null?void 0:rw.title]},Qe))},[(g=f.addGroup)==null?void 0:g.label,(y=f.addGroup)==null?void 0:y.title,(b=f.addRule)==null?void 0:b.label,(v=f.addRule)==null?void 0:v.title,(N=f.cloneRule)==null?void 0:N.label,(x=f.cloneRule)==null?void 0:x.title,(w=f.cloneRuleGroup)==null?void 0:w.label,(C=f.cloneRuleGroup)==null?void 0:C.title,(E=f.combinators)==null?void 0:E.title,(k=f.dragHandle)==null?void 0:k.label,(_=f.dragHandle)==null?void 0:_.title,(D=f.fields)==null?void 0:D.placeholderGroupLabel,(A=f.fields)==null?void 0:A.placeholderLabel,(I=f.fields)==null?void 0:I.placeholderName,(T=f.fields)==null?void 0:T.title,(L=f.lockGroup)==null?void 0:L.label,(F=f.lockGroup)==null?void 0:F.title,(B=f.lockGroupDisabled)==null?void 0:B.label,(G=f.lockGroupDisabled)==null?void 0:G.title,(z=f.lockRule)==null?void 0:z.label,(H=f.lockRule)==null?void 0:H.title,(V=f.lockRuleDisabled)==null?void 0:V.label,(W=f.lockRuleDisabled)==null?void 0:W.title,(pe=f.muteGroup)==null?void 0:pe.label,(U=f.muteGroup)==null?void 0:U.title,(Q=f.unmuteGroup)==null?void 0:Q.label,(Ce=f.unmuteGroup)==null?void 0:Ce.title,(oe=f.muteRule)==null?void 0:oe.label,(ye=f.muteRule)==null?void 0:ye.title,(R=f.unmuteRule)==null?void 0:R.label,(ce=f.unmuteRule)==null?void 0:ce.title,(re=f.matchMode)==null?void 0:re.title,(Ae=f.matchThreshold)==null?void 0:Ae.title,(we=f.matchThreshold)==null?void 0:we.placeholderName,(ue=f.notToggle)==null?void 0:ue.label,(J=f.notToggle)==null?void 0:J.title,(ne=f.operators)==null?void 0:ne.placeholderGroupLabel,(fe=f.operators)==null?void 0:fe.placeholderLabel,(ke=f.operators)==null?void 0:ke.placeholderName,(Re=f.operators)==null?void 0:Re.title,(rt=f.removeGroup)==null?void 0:rt.label,(st=f.removeGroup)==null?void 0:st.title,(Xe=f.removeRule)==null?void 0:Xe.label,(Ee=f.removeRule)==null?void 0:Ee.title,(yt=f.shiftActionDown)==null?void 0:yt.label,(fr=f.shiftActionDown)==null?void 0:fr.title,(Yt=f.shiftActionUp)==null?void 0:Yt.label,(It=f.shiftActionUp)==null?void 0:It.title,(Me=f.value)==null?void 0:Me.title,(Et=f.values)==null?void 0:Et.placeholderGroupLabel,(Ot=f.values)==null?void 0:Ot.placeholderLabel,(Hr=f.values)==null?void 0:Hr.placeholderName,(rr=f.values)==null?void 0:rr.title,($=f.valueSourceSelector)==null?void 0:$.title,e,(O=u.addGroup)==null?void 0:O.label,(M=u.addGroup)==null?void 0:M.title,(Y=u.addRule)==null?void 0:Y.label,(q=u.addRule)==null?void 0:q.title,(Z=u.cloneRule)==null?void 0:Z.label,(j=u.cloneRule)==null?void 0:j.title,(X=u.cloneRuleGroup)==null?void 0:X.label,(ie=u.cloneRuleGroup)==null?void 0:ie.title,(Oe=u.combinators)==null?void 0:Oe.title,(qe=u.dragHandle)==null?void 0:qe.label,(Mt=u.dragHandle)==null?void 0:Mt.title,(Pe=u.fields)==null?void 0:Pe.placeholderGroupLabel,(et=u.fields)==null?void 0:et.placeholderLabel,(lt=u.fields)==null?void 0:lt.placeholderName,(_r=u.fields)==null?void 0:_r.title,(kn=u.lockGroup)==null?void 0:kn.label,(pr=u.lockGroup)==null?void 0:pr.title,(An=u.lockGroupDisabled)==null?void 0:An.label,(As=u.lockGroupDisabled)==null?void 0:As.title,(Lt=u.lockRule)==null?void 0:Lt.label,(Dn=u.lockRule)==null?void 0:Dn.title,(vt=u.lockRuleDisabled)==null?void 0:vt.label,(Rl=u.lockRuleDisabled)==null?void 0:Rl.title,(Ds=u.muteGroup)==null?void 0:Ds.label,($s=u.muteGroup)==null?void 0:$s.title,(Ts=u.unmuteGroup)==null?void 0:Ts.label,($n=u.unmuteGroup)==null?void 0:$n.title,(Ps=u.muteRule)==null?void 0:Ps.label,(Is=u.muteRule)==null?void 0:Is.title,(hr=u.unmuteRule)==null?void 0:hr.label,(Os=u.unmuteRule)==null?void 0:Os.title,(Xl=u.matchMode)==null?void 0:Xl.title,(Jl=u.matchThreshold)==null?void 0:Jl.title,(Zl=u.matchThreshold)==null?void 0:Zl.placeholderName,(ei=u.notToggle)==null?void 0:ei.label,(Ms=u.notToggle)==null?void 0:Ms.title,(ti=u.operators)==null?void 0:ti.placeholderGroupLabel,(he=u.operators)==null?void 0:he.placeholderLabel,(Fe=u.operators)==null?void 0:Fe.placeholderName,(He=u.operators)==null?void 0:He.title,(Ge=u.removeGroup)==null?void 0:Ge.label,(Ve=u.removeGroup)==null?void 0:Ve.title,(_t=u.removeRule)==null?void 0:_t.label,(zt=u.removeRule)==null?void 0:zt.title,(Co=u.shiftActionDown)==null?void 0:Co.label,(jr=u.shiftActionDown)==null?void 0:jr.title,(Eo=u.shiftActionUp)==null?void 0:Eo.label,(ov=u.shiftActionUp)==null?void 0:ov.title,(nv=u.value)==null?void 0:nv.title,(sv=u.values)==null?void 0:sv.placeholderGroupLabel,(av=u.values)==null?void 0:av.placeholderLabel,(lv=u.values)==null?void 0:lv.placeholderName,(iv=u.values)==null?void 0:iv.title,(cv=u.valueSourceSelector)==null?void 0:cv.title]);return{...o,controlClassnames:a,controlElements:p,enableDragAndDrop:n,translations:h,initialQuery:t.initialQuery,qbId:t.qbId}},B$=({disabled:e,path:t,nestedArray:r,disabledPaths:o})=>{const n=r.length;return P.useMemo(()=>{const s=[];for(let a=0;a<n;a++){const i=[...t,a];s[a]={path:i,disabled:e||o.some(c=>Qo(i,c))}}return s},[e,t,n,o])};let Mb=!1;const Lb=(e,t)=>{process.env.NODE_ENV!=="production"&&!Mb&&e&&!t&&(console.error(Dt.errorEnabledDndWithoutReactDnD),Mb=!0)},ct=e=>P.useCallback((t,r)=>{t==null||t.preventDefault(),t==null||t.stopPropagation(),e(t,r)},[e]),U$={mode:"all"},W$=[{name:"",value:"",label:""}],H$=S.memo(function(t){const r=Y$(t),{dndRef:o}=r,n=ct(r.cloneRule),s=ct(r.toggleLockRule),a=ct(r.toggleMuteRule),i=ct(r.removeRule),c=ct(r.shiftRuleUp),d=ct(r.shiftRuleDown),p=P.useMemo(()=>({cloneRule:n,toggleLockRule:s,toggleMuteRule:a,removeRule:i,shiftRuleUp:c,shiftRuleDown:d}),[n,i,d,c,s,a]);return S.createElement("div",{ref:o,"data-testid":xe.rule,"data-dragmonitorid":r.dragMonitorId,"data-dropmonitorid":r.dropMonitorId,className:r.outerClassName,"data-rule-id":r.id,"data-level":r.path.length,"data-path":JSON.stringify(r.path)},r.matchModes.length>0?S.createElement(q$,{...r,...p}):S.createElement(Fb,{...r,...p}))}),Fb=S.memo(function(t){const{dragRef:r,schema:{controls:{shiftActions:o,dragHandle:n,fieldSelector:s,matchModeEditor:a,operatorSelector:i,valueSourceSelector:c,valueEditor:d,cloneRuleAction:p,lockRuleAction:u,muteRuleAction:f,removeRuleAction:h,ruleGroupBodyElements:g,ruleGroupHeaderElements:y}},groupComponentsWrapper:b=S.Fragment}=t,v=P.useMemo(()=>({level:t.path.length,path:t.path,disabled:t.disabled,context:t.context,validation:t.validationResult,schema:t.schema,rule:t.rule}),[t.path,t.disabled,t.context,t.validationResult,t.schema,t.rule]),N=P.useMemo(()=>!(t.schema.fields.length===1&&wr(t.schema.fields[0])&&"value"in t.schema.fields[0]&&t.schema.fields[0].value===""),[t.schema.fields]),x=P.useMemo(()=>t.schema.showShiftActions?{shiftUp:t.translations.shiftActionUp.title,shiftDown:t.translations.shiftActionDown.title}:void 0,[t.schema.showShiftActions,t.translations]),w=P.useMemo(()=>t.schema.showShiftActions?{shiftUp:t.translations.shiftActionUp.label,shiftDown:t.translations.shiftActionDown.label}:void 0,[t.schema.showShiftActions,t.translations]);return S.createElement(S.Fragment,null,t.schema.showShiftActions&&S.createElement(o,{key:xe.shiftActions,...v,testID:xe.shiftActions,titles:x,labels:w,className:t.classNames.shiftActions,ruleOrGroup:t.rule,shiftUp:t.shiftRuleUp,shiftDown:t.shiftRuleDown,shiftUpDisabled:t.shiftUpDisabled,shiftDownDisabled:t.shiftDownDisabled}),t.schema.enableDragAndDrop&&S.createElement(n,{key:xe.dragHandle,...v,testID:xe.dragHandle,ref:r,title:t.translations.dragHandle.title,label:t.translations.dragHandle.label,className:t.classNames.dragHandle,dragHandleAttributes:t.dragHandleAttributes,ruleOrGroup:t.rule}),N&&S.createElement(s,{key:xe.fields,...v,testID:xe.fields,options:t.schema.fields,title:t.translations.fields.title,value:t.rule.field,operator:t.rule.operator,className:t.classNames.fields,handleOnChange:t.onChangeField}),(t.schema.autoSelectField||t.rule.field!==t.translations.fields.placeholderName)&&(t.subQuery?S.createElement(a,{key:xe.matchModeEditor,...v,testID:xe.matchModeEditor,field:t.rule.field,fieldData:t.fieldData,title:t.translations.matchMode.title,options:t.matchModes,thresholdPlaceholder:t.translations.matchThreshold.placeholderName,match:t.rule.match??U$,className:t.classNames.matchMode,classNames:t.classNames,handleOnChange:t.onChangeMatchMode}):S.createElement(S.Fragment,null,S.createElement(i,{key:xe.operators,...v,testID:xe.operators,field:t.rule.field,fieldData:t.fieldData,title:t.translations.operators.title,options:t.operators,value:t.rule.operator,className:t.classNames.operators,handleOnChange:t.onChangeOperator}),(t.schema.autoSelectOperator||t.rule.operator!==t.translations.operators.placeholderName)&&!t.hideValueControls&&S.createElement(S.Fragment,null,!["null","notnull"].includes($e(`${t.rule.operator}`))&&t.valueSources.length>1&&S.createElement(c,{key:xe.valueSourceSelector,...v,testID:xe.valueSourceSelector,field:t.rule.field,fieldData:t.fieldData,title:t.translations.valueSourceSelector.title,options:t.valueSourceOptions,value:t.rule.valueSource??"value",className:t.classNames.valueSource,handleOnChange:t.onChangeValueSource}),S.createElement(d,{key:xe.valueEditor,...v,testID:xe.valueEditor,field:t.rule.field,fieldData:t.fieldData,title:t.translations.value.title,operator:t.rule.operator,value:t.rule.value,valueSource:t.rule.valueSource??"value",type:t.valueEditorType,inputType:t.inputType,values:t.values,listsAsArrays:t.schema.listsAsArrays,parseNumbers:t.schema.parseNumbers,separator:t.valueEditorSeparator,className:t.classNames.value,handleOnChange:t.onChangeValue})))),t.subQuery&&S.createElement(b,{className:t.subQuery.classNames.header},S.createElement(y,t.subQuery)),t.schema.showCloneButtons&&S.createElement(p,{key:xe.cloneRule,...v,testID:xe.cloneRule,label:t.translations.cloneRule.label,title:t.translations.cloneRule.title,className:t.classNames.cloneRule,ruleOrGroup:t.rule,handleOnClick:t.cloneRule}),t.schema.showLockButtons&&S.createElement(u,{key:xe.lockRule,...v,testID:xe.lockRule,label:t.translations.lockRule.label,title:t.translations.lockRule.title,className:t.classNames.lockRule,ruleOrGroup:t.rule,handleOnClick:t.toggleLockRule,disabledTranslation:t.parentDisabled?void 0:t.translations.lockRuleDisabled}),t.schema.showMuteButtons&&S.createElement(f,{key:xe.muteRule,...v,testID:xe.muteRule,label:t.rule.muted?t.translations.unmuteRule.label:t.translations.muteRule.label,title:t.rule.muted?t.translations.unmuteRule.title:t.translations.muteRule.title,className:t.classNames.muteRule,ruleOrGroup:t.rule,handleOnClick:t.toggleMuteRule}),S.createElement(h,{key:xe.removeRule,...v,testID:xe.removeRule,label:t.translations.removeRule.label,title:t.translations.removeRule.title,className:t.classNames.removeRule,ruleOrGroup:t.rule,handleOnClick:t.removeRule}),t.subQuery&&S.createElement(b,{className:t.subQuery.classNames.body},S.createElement(g,t.subQuery)))}),j$=e=>S.createElement("div",e),q$=S.memo(function(t){const r=P.useMemo(()=>t.schema.createRuleGroup(),[t.schema]),o=Ib({...t.subQueryBuilderProps,enableDragAndDrop:!1,disabled:t.disabled,fields:t.subproperties.fields,enableMountQueryChange:!ge(t.rule.value)||!t.rule.value.id,query:ge(t.rule.value)?t.rule.value:r,onQueryChange:t.onChangeValue}),n=Ob({...o,ruleGroup:o.rootGroup,path:Lm,disabled:t.disabled,parentDisabled:o.queryDisabled,id:o.rootGroup.id,shiftUpDisabled:!0,shiftDownDisabled:!0}),s=ct(n.addRule),a=ct(n.addGroup),i=ct(n.cloneGroup),c=ct(n.toggleLockGroup),d=ct(n.removeGroup),p=ct(n.shiftGroupUp),u=ct(n.shiftGroupDown),f=P.useMemo(()=>({...n,addGroup:a,addRule:s,cloneGroup:i,removeGroup:d,shiftGroupDown:u,shiftGroupUp:p,toggleLockGroup:c}),[a,s,i,d,u,p,n,c]);return S.createElement(Fb,{...t,groupComponentsWrapper:t.groupComponentsWrapper??j$,subQuery:f})}),Y$=e=>{const{id:t,path:r,rule:o,schema:{classNames:n,fields:s,fieldMap:a,getParameters:i,getInputType:c,getMatchModes:d,getOperators:p,getSubQueryBuilderProps:u,getValueEditorType:f,getValueEditorSeparator:h,getValueSources:g,getValues:y,validationMap:b,enableDragAndDrop:v,getRuleClassname:N,suppressStandardClassnames:x},actions:{moveRule:w,onPropChange:C,onRuleRemove:E},disabled:k,parentDisabled:_,parentMuted:D,shiftUpDisabled:A,shiftDownDisabled:I,field:T,operator:L,value:F,valueSource:B,dropEffect:G="move",groupItems:z=!1,dragMonitorId:H="",dropMonitorId:V="",dndRef:W=null,dragRef:pe=null,isDragging:U=!1,isOver:Q=!1,dropNotAllowed:Ce=!1}=e;jd("rule",!o),Lb(v,!!(H||V||W||pe));const oe=!!_||!!k,ye=!!D||!!(o!=null&&o.muted),R=P.useMemo(()=>o??{id:t,field:T??"",operator:L??"",value:F,valueSource:B},[T,t,L,o,F,B]),ce=P.useMemo(()=>({shiftActions:ze(x||ve.shiftActions,n.shiftActions),dragHandle:ze(x||ve.dragHandle,n.dragHandle),fields:ze(x||ve.fields,n.valueSelector,n.fields),matchMode:ze(x||ve.matchMode,n.valueSelector,n.matchMode),matchThreshold:ze(x||ve.matchThreshold,n.valueSelector,n.matchThreshold),operators:ze(x||ve.operators,n.valueSelector,n.operators),valueSource:ze(x||ve.valueSource,n.valueSelector,n.valueSource),value:ze(x||ve.value,n.value),cloneRule:ze(x||ve.cloneRule,n.actionElement,n.cloneRule),lockRule:ze(x||ve.lockRule,n.actionElement,n.lockRule),muteRule:ze(x||ve.muteRule,n.actionElement,n.muteRule),removeRule:ze(x||ve.removeRule,n.actionElement,n.removeRule),valueListItem:ze(x||ve.valueListItem,n.valueListItem)}),[n.shiftActions,n.dragHandle,n.valueSelector,n.fields,n.matchMode,n.matchThreshold,n.operators,n.valueSource,n.value,n.actionElement,n.cloneRule,n.lockRule,n.muteRule,n.removeRule,n.valueListItem,x]),re=P.useCallback(Pe=>(et,lt)=>{oe||C(Pe,et,r,lt)},[oe,C,r]),Ae=P.useMemo(()=>re("field"),[re]),we=P.useMemo(()=>re("operator"),[re]),ue=P.useMemo(()=>re("match"),[re]),J=P.useMemo(()=>re("valueSource"),[re]),ne=P.useMemo(()=>re("value"),[re]),fe=P.useCallback((Pe,et)=>{if(!oe){const lt=[...it(r),r.at(-1)+1];w(r,lt,!0,et)}},[oe,w,r]),ke=P.useCallback((Pe,et)=>C("disabled",!oe,r,et),[oe,C,r]),Re=P.useCallback((Pe,et)=>C("muted",!R.muted,r,et),[R.muted,C,r]),rt=P.useCallback((Pe,et)=>{oe||E(r)},[oe,E,r]),st=P.useCallback((Pe,et)=>{!oe&&!A&&w(r,"up",Pe==null?void 0:Pe.altKey,et)},[oe,w,r,A]),Xe=P.useCallback((Pe,et)=>{!oe&&!I&&w(r,"down",Pe==null?void 0:Pe.altKey,et)},[oe,w,r,I]),Ee=P.useMemo(()=>(a==null?void 0:a[R.field])??{name:R.field,value:R.field,label:R.field},[a,R.field]),yt=P.useMemo(()=>Ee.inputType??c(R.field,R.operator,{fieldData:Ee}),[Ee,c,R.field,R.operator]),fr=P.useMemo(()=>d(R.field,{fieldData:Ee}),[Ee,d,R.field]),Yt=P.useMemo(()=>p(R.field,{fieldData:Ee}),[Ee,p,R.field]),It=P.useMemo(()=>We(Yt,R.operator),[Yt,R.operator]),Me=It==null?void 0:It.arity,Et=typeof Me=="string"&&Me==="unary"||typeof Me=="number"&&Me<2,Ot=P.useMemo(()=>{const Pe=g(R.field,R.operator,{fieldData:Ee});return R.valueSource&&!We(Pe,R.valueSource)?[...Pe,{name:R.valueSource,value:R.valueSource,label:R.valueSource}]:Pe},[Ee,g,R.field,R.operator,R.valueSource]),Hr=P.useMemo(()=>Ot.map(({value:Pe})=>Pe),[Ot]),rr=P.useMemo(()=>i(R.field,R.operator,{fieldData:Ee}),[Ee,i,R.field,R.operator]),$=P.useMemo(()=>rr&&rr.length>0?rr:null,[rr]),O=P.useMemo(()=>R.valueSource==="field"?"select":R.valueSource==="parameter"?$?$e(R.operator)==="in"||$e(R.operator)==="notin"?"multiselect":"select":"text":f(R.field,R.operator,{fieldData:Ee}),[Ee,f,$,R.field,R.operator,R.valueSource]),M=P.useMemo(()=>h(R.field,R.operator,{fieldData:Ee}),[Ee,h,R.field,R.operator]),Y=P.useMemo(()=>{const Pe=R.valueSource==="field"?qm(Ee,s,R.operator):R.valueSource==="parameter"?$??[]:y(R.field,R.operator,{fieldData:Ee});return sl(Pe)||vo(Pe)?Gr(Pe):Pe},[Ee,s,y,$,R.field,R.operator,R.valueSource]),q=P.useMemo(()=>u(R.field,{fieldData:Ee}),[Ee,u,R.field]),Z=$b({translations:e.translations,fields:Ee.subproperties??q.fields??W$,autoSelectField:e.schema.autoSelectField||!!Ee.subproperties}),j=P.useMemo(()=>b[t??""]??(typeof Ee.validator=="function"?Ee.validator(R):null),[Ee,t,R,b]),X=P.useMemo(()=>Dg(j),[j]),ie=(Ee==null?void 0:Ee.className)??"",Oe=(It==null?void 0:It.className)??"",qe=fr.length>0,Mt=P.useMemo(()=>ze(N(R,{fieldData:Ee}),ie,Oe,x||ve.rule,n.rule,oe&&n.disabled,ye&&n.muted,U&&n.dndDragging,Q&&n.dndOver,Q&&G==="copy"&&n.dndCopy,Q&&z&&n.dndGroup,Ce&&n.dndDropNotAllowed,qe&&n.hasSubQuery,x||{[ve.disabled]:oe,[ve.muted]:ye,[ve.dndDragging]:U,[ve.dndOver]:Q,[ve.dndCopy]:Q&&G==="copy",[ve.dndGroup]:Q&&z,[ve.dndDropNotAllowed]:Ce,[ve.hasSubQuery]:qe},X),[n.disabled,n.muted,n.dndCopy,n.dndDragging,n.dndGroup,n.dndOver,n.dndDropNotAllowed,n.hasSubQuery,n.rule,oe,G,Ce,ye,ie,Ee,N,z,qe,U,Q,Oe,R,x,X]);return{...e,classNames:ce,cloneRule:fe,disabled:oe,dndRef:W,dragMonitorId:H,dragRef:pe,dropMonitorId:V,fieldData:Ee,generateOnChangeHandler:re,onChangeField:Ae,onChangeMatchMode:ue,onChangeOperator:we,onChangeValueSource:J,onChangeValue:ne,hideValueControls:Et,inputType:yt,matchModes:fr,muted:ye,operators:Yt,outerClassName:Mt,removeRule:rt,rule:R,shiftRuleUp:st,shiftRuleDown:Xe,subproperties:Z,subQueryBuilderProps:q,toggleLockRule:ke,toggleMuteRule:Re,validationResult:j,valueEditorSeparator:M,valueEditorType:O,values:Y,valueSourceOptions:Ot,valueSources:Hr}},Vl={actionElement:Nr,addGroupAction:Nr,addRuleAction:Nr,cloneGroupAction:Nr,cloneRuleAction:Nr,combinatorSelector:Ss,dragHandle:o$,fieldSelector:Ss,inlineCombinator:n$,lockGroupAction:Nr,lockRuleAction:Nr,matchModeEditor:s$,muteGroupAction:Nr,muteRuleAction:Nr,notToggle:l$,operatorSelector:Ss,removeGroupAction:Nr,removeRuleAction:Nr,rule:H$,ruleGroup:A$,ruleGroupBodyElements:$$,ruleGroupHeaderElements:D$,shiftActions:T$,valueEditor:I$,valueSelector:Ss,valueSourceSelector:Ss};Tb();const Q$=e=>S.createElement(JD,{context:Ab,store:Tb()},e.children),K$=e=>S.createElement(Q$,null,S.createElement(V$,{props:e}));function Vb(e,t,r){var n,s;const o={visible:!0,required:((n=e.validation)==null?void 0:n.required)??!1,disabled:((s=e.properties)==null?void 0:s.disabled)??!1};return e.logic&&(o.visible=R$(e.logic,t,r),e.logic.requireWhen&&(o.required=Gl(e.logic.requireWhen,t,r)),e.logic.disableWhen&&(o.disabled=Gl(e.logic.disableWhen,t,r))),o}function R$(e,t,r){const{showWhen:o,hideWhen:n}=e;let s=!0;if(o&&o.rules&&o.rules.length>0&&(s=Gl(o,t,r)),n&&n.rules&&n.rules.length>0){const a=Gl(n,t,r);s=s&&!a}return s}function Gl(e,t,r){if(!e||!e.rules||e.rules.length===0)return!0;const{combinator:o,rules:n}=e,s=n.map(a=>{const i=r.find(p=>p.id===a.field||p.attributes.name===a.field),c=(i==null?void 0:i.attributes.name)||a.field,d=t[c];return X$(d,a.operator,a.value)});return o==="and"?s.every(a=>a):s.some(a=>a)}function X$(e,t,r){const o=e??"";switch(t){case"equals":case"=":case"==":return o===r;case"notEquals":case"!=":case"<>":return o!==r;case"contains":return String(o).toLowerCase().includes(String(r).toLowerCase());case"notContains":case"doesNotContain":return!String(o).toLowerCase().includes(String(r).toLowerCase());case"startsWith":case"beginsWith":return String(o).toLowerCase().startsWith(String(r).toLowerCase());case"endsWith":return String(o).toLowerCase().endsWith(String(r).toLowerCase());case"matches":try{return new RegExp(r,"i").test(String(o))}catch{return!1}case"isEmpty":case"null":return o===""||o===null||o===void 0||Array.isArray(o)&&o.length===0;case"isNotEmpty":case"notNull":return o!==""&&o!==null&&o!==void 0&&!(Array.isArray(o)&&o.length===0);case"greaterThan":case">":return Number(o)>Number(r);case"greaterThanOrEquals":case">=":return Number(o)>=Number(r);case"lessThan":case"<":return Number(o)<Number(r);case"lessThanOrEquals":case"<=":return Number(o)<=Number(r);case"between":if(Array.isArray(r)&&r.length===2){const n=Number(o);return n>=Number(r[0])&&n<=Number(r[1])}return!1;case"notBetween":if(Array.isArray(r)&&r.length===2){const n=Number(o);return n<Number(r[0])||n>Number(r[1])}return!0;case"in":return Array.isArray(r)?r.includes(o):!1;case"notIn":return Array.isArray(r)?!r.includes(o):!0;case"isTrue":return o===!0||o==="true"||o===1;case"isFalse":return o===!1||o==="false"||o===0;case"hasLength":return Array.isArray(o)&&o.length===Number(r);case"hasMinLength":return Array.isArray(o)&&o.length>=Number(r);case"hasMaxLength":return Array.isArray(o)&&o.length<=Number(r);case"includes":case"arrayContains":return Array.isArray(o)&&o.includes(r);case"notIncludes":case"arrayNotContains":return!Array.isArray(o)||!o.includes(r);default:return console.warn(`Unknown operator: ${t}`),!0}}function J$(e){const t=[{name:"isEmpty",label:"is empty"},{name:"isNotEmpty",label:"is not empty"}],r=[{name:"equals",label:"equals"},{name:"notEquals",label:"does not equal"}],o=[...r,{name:"contains",label:"contains"},{name:"notContains",label:"does not contain"},{name:"startsWith",label:"starts with"},{name:"endsWith",label:"ends with"},...t],n=[...r,{name:"greaterThan",label:"is greater than"},{name:"greaterThanOrEquals",label:"is greater than or equal to"},{name:"lessThan",label:"is less than"},{name:"lessThanOrEquals",label:"is less than or equal to"},{name:"between",label:"is between"},...t],s=[{name:"isTrue",label:"is checked"},{name:"isFalse",label:"is not checked"}],a=[...r,{name:"in",label:"is one of"},{name:"notIn",label:"is not one of"},...t],i=[{name:"includes",label:"includes"},{name:"notIncludes",label:"does not include"},{name:"hasLength",label:"has exactly"},{name:"hasMinLength",label:"has at least"},{name:"hasMaxLength",label:"has at most"},...t];switch(e){case"shortText":case"longText":case"multiLineInput":case"textEditor":case"email":case"phone":case"url":case"password":case"location":return o;case"number":case"slider":case"rangeSlider":return n;case"decisionBox":case"toggleSwitch":return s;case"singleChoice":case"dropdown":return a;case"multipleChoice":case"tags":return i;case"date":case"time":case"dateTime":case"dateRange":case"multipleDates":return[...r,{name:"greaterThan",label:"is after"},{name:"lessThan",label:"is before"},{name:"between",label:"is between"},...t];case"fileUpload":case"imageUpload":case"multiFileUpload":case"multiImageUpload":return t;case"singleChoiceMatrix":case"multipleChoiceMatrix":case"matrixTable":return t;default:return[...r,...t]}}function Z$(e){switch(e){case"number":case"slider":case"rangeSlider":return"number";case"decisionBox":case"toggleSwitch":return"checkbox";case"date":case"dateRange":case"multipleDates":return"date";case"time":return"time";case"dateTime":return"datetime-local";case"singleChoice":case"dropdown":case"multipleChoice":case"tags":return"select";case"email":return"email";default:return"text"}}function eT(e){var t;if((t=e.config)!=null&&t.options&&Array.isArray(e.config.options))return e.config.options.map(r=>({name:r.value,label:r.label}))}function Gb(e){return!e||!e.rules||e.rules.length===0?{combinator:"and",rules:[]}:{combinator:e.combinator,rules:e.rules.map(t=>({field:t.field,operator:t.operator,value:t.value}))}}function tT(e){return{combinator:e.combinator,rules:e.rules.filter(t=>"field"in t).map(t=>"field"in t?{field:t.field,operator:t.operator,value:t.value}:null).filter(Boolean)}}function zb(e,t){return e.filter(r=>r.id!==t).filter(r=>!["divider","spacer","paragraph","image","link","formHeading","sectionHeading","subheading","submit"].includes(r.type)).map(r=>{var a;const o=J$(r.type),n=Z$(r.type),s=eT(r);return{name:r.id,label:r.properties.label||r.attributes.name||`Field ${r.order+1}`,inputType:n,operators:o.map(i=>({name:i.name,label:i.label})),values:s==null?void 0:s.map(i=>({name:i.name,label:i.label})),defaultOperator:((a=o[0])==null?void 0:a.name)||"equals"}})}const rT={queryBuilder:"qb-lite",ruleGroup:"p-2 rounded border border-border",combinators:"px-2 py-1 border border-input rounded text-sm bg-background",addRule:"px-2 py-1 bg-primary text-primary-foreground rounded text-xs hover:bg-primary/90",addGroup:"px-2 py-1 bg-secondary text-secondary-foreground rounded text-xs hover:bg-secondary/80 ml-1",removeGroup:"px-2 py-1 bg-destructive/10 text-destructive rounded text-xs hover:bg-destructive/20",removeRule:"px-1 py-1 text-destructive hover:text-destructive/80",fields:"px-2 py-1 border border-input rounded text-sm min-w-[120px] bg-background",operators:"px-2 py-1 border border-input rounded text-sm mx-1 bg-background",value:"px-2 py-1 border border-input rounded text-sm bg-background"};function oT(e,t){const r=Gb(e);if(r.rules.length===0)return"";const o={};for(const n of t)for(const s of Gr(n.operators??[]))if("options"in s)for(const a of s.options)o[a.name]=a.label;else o[s.name]=s.label;return nA(r,{format:"natural_language",fields:t,operatorMap:o,valueProcessor:n=>{const s=n.value;return s==null||s===""?"":Array.isArray(s)?s.join(", "):String(s)}})}var nT=Object.defineProperty,cr=(e,t)=>nT(e,"name",{value:t,configurable:!0}),Qd="Dialog",[Bb,AO]=sr(Qd),[sT,zr]=Bb(Qd),aT=cr(e=>{const{__scopeDialog:t,children:r,open:o,defaultOpen:n,onOpenChange:s,modal:a=!0}=e,i=S.useRef(null),c=S.useRef(null),[d,p]=yr({prop:o,defaultProp:n??!1,onChange:s,caller:Qd}),[u,f]=S.useState(0),[h,g]=S.useState(0);return l.jsx(sT,{scope:t,triggerRef:i,contentRef:c,contentId:br(),titleId:br(),descriptionId:br(),titlePresent:u>0,descriptionPresent:h>0,setTitleCount:f,setDescriptionCount:g,open:d,onOpenChange:p,onOpenToggle:S.useCallback(()=>p(y=>!y),[p]),modal:a,children:r})},"Dialog"),Ub="DialogPortal",[lT,Wb]=Bb(Ub,{forceMount:void 0}),iT=cr(e=>{const{__scopeDialog:t,forceMount:r,children:o,container:n}=e,s=zr(Ub,t);return l.jsx(lT,{scope:t,forceMount:r,children:S.Children.map(o,a=>l.jsx(eo,{present:r||s.open,children:l.jsx(tc,{asChild:!0,container:n,children:a})}))})},"DialogPortal"),Kd="DialogOverlay",Hb=S.forwardRef(cr(function(t,r){const o=Wb(Kd,t.__scopeDialog),{forceMount:n=o.forceMount,...s}=t,a=zr(Kd,t.__scopeDialog);return a.modal?l.jsx(eo,{present:n||a.open,children:l.jsx(dT,{...s,ref:r})}):null},"DialogOverlay")),cT=Yr("DialogOverlay.RemoveScroll"),dT=S.forwardRef(cr(function(t,r){const{__scopeDialog:o,...n}=t,s=zr(Kd,o),a=Ff(),i=Ue(r,a);return l.jsx(ic,{as:cT,allowPinchZoom:!0,shards:[s.contentRef],children:l.jsx(Ie.div,{"data-state":Rd(s.open),...n,ref:i,style:{pointerEvents:"auto",...n.style}})})},"DialogOverlayImpl")),Ns="DialogContent",jb=S.forwardRef(cr(function(t,r){const o=Wb(Ns,t.__scopeDialog),{forceMount:n=o.forceMount,...s}=t,a=zr(Ns,t.__scopeDialog);return l.jsx(eo,{present:n||a.open,children:a.modal?l.jsx(uT,{...s,ref:r}):l.jsx(fT,{...s,ref:r})})},"DialogContent")),uT=S.forwardRef(cr(function(t,r){const o=zr(Ns,t.__scopeDialog),n=S.useRef(null),s=Ue(r,o.contentRef,n);return S.useEffect(()=>{const a=n.current;if(a)return Fp(a)},[]),l.jsx(qb,{...t,ref:s,trapFocus:o.open,disableOutsidePointerEvents:o.open,onCloseAutoFocus:Se(t.onCloseAutoFocus,a=>{var i;a.preventDefault(),(i=o.triggerRef.current)==null||i.focus()}),onPointerDownOutside:Se(t.onPointerDownOutside,a=>{const i=a.detail.originalEvent,c=i.button===0&&i.ctrlKey===!0;(i.button===2||c)&&a.preventDefault()}),onFocusOutside:Se(t.onFocusOutside,a=>a.preventDefault())})},"DialogContentModal")),fT=S.forwardRef(cr(function(t,r){const o=zr(Ns,t.__scopeDialog),n=S.useRef(!1),s=S.useRef(!1);return l.jsx(qb,{...t,ref:r,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:a=>{var i,c;(i=t.onCloseAutoFocus)==null||i.call(t,a),a.defaultPrevented||(n.current||(c=o.triggerRef.current)==null||c.focus(),a.preventDefault()),n.current=!1,s.current=!1},onInteractOutside:a=>{var d,p;(d=t.onInteractOutside)==null||d.call(t,a),a.defaultPrevented||(n.current=!0,a.detail.originalEvent.type==="pointerdown"&&(s.current=!0));const i=a.target;((p=o.triggerRef.current)==null?void 0:p.contains(i))&&a.preventDefault(),a.detail.originalEvent.type==="focusin"&&s.current&&a.preventDefault()}})},"DialogContentNonModal")),qb=S.forwardRef(cr(function(t,r){const{__scopeDialog:o,trapFocus:n,onOpenAutoFocus:s,onCloseAutoFocus:a,...i}=t,c=zr(Ns,o);return la(),l.jsx(l.Fragment,{children:l.jsx(Bf,{asChild:!0,loop:!0,trapped:n,onMountAutoFocus:s,onUnmountAutoFocus:a,children:l.jsx(Ii,{role:"dialog",id:c.contentId,"aria-describedby":c.descriptionPresent?c.descriptionId:void 0,"aria-labelledby":c.titlePresent?c.titleId:void 0,"data-state":Rd(c.open),...i,ref:r,deferPointerDownOutside:!0,onDismiss:()=>c.onOpenChange(!1)})})})},"DialogContentImpl")),pT="DialogTitle",Yb=S.forwardRef(cr(function(t,r){const{__scopeDialog:o,...n}=t,s=zr(pT,o),{setTitleCount:a}=s;return ot(()=>(a(i=>i+1),()=>a(i=>i-1)),[a]),l.jsx(Ie.h2,{id:s.titleId,...n,ref:r})},"DialogTitle")),hT="DialogDescription",Qb=S.forwardRef(cr(function(t,r){const{__scopeDialog:o,...n}=t,s=zr(hT,o),{setDescriptionCount:a}=s;return ot(()=>(a(i=>i+1),()=>a(i=>i-1)),[a]),l.jsx(Ie.p,{id:s.descriptionId,...n,ref:r})},"DialogDescription")),mT="DialogClose",Kb=S.forwardRef(cr(function(t,r){const{__scopeDialog:o,...n}=t,s=zr(mT,o);return l.jsx(Ie.button,{type:"button",...n,ref:r,onClick:Se(t.onClick,()=>s.onOpenChange(!1))})},"DialogClose"));function Rd(e){return e?"open":"closed"}cr(Rd,"getState");const gT=aT,bT=iT,yT=Kb,Rb=S.forwardRef(({className:e,...t},r)=>l.jsx(Hb,{ref:r,className:m("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t}));Rb.displayName=Hb.displayName;const Xb=S.forwardRef(({className:e,children:t,...r},o)=>l.jsxs(bT,{children:[l.jsx(Rb,{}),l.jsxs(jb,{ref:o,className:m("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",e),...r,children:[t,l.jsxs(Kb,{className:m("absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground"),children:[l.jsx(Wn,{className:m("h-4 w-4")}),l.jsx("span",{className:m("sr-only"),children:"Close"})]})]})]}));Xb.displayName=jb.displayName;const Jb=({className:e,...t})=>l.jsx("div",{className:m("flex flex-col space-y-1.5 text-center sm:text-left",e),...t});Jb.displayName="DialogHeader";const Zb=({className:e,...t})=>l.jsx("div",{className:m("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...t});Zb.displayName="DialogFooter";const ey=S.forwardRef(({className:e,...t},r)=>l.jsx(Yb,{ref:r,className:m("text-lg font-semibold leading-none tracking-tight",e),...t}));ey.displayName=Yb.displayName;const ty=S.forwardRef(({className:e,...t},r)=>l.jsx(Qb,{ref:r,className:m("text-sm text-muted-foreground",e),...t}));ty.displayName=Qb.displayName;const ry=[{key:"showWhen",label:"Show When",description:"This element will only be visible when these conditions are met."},{key:"hideWhen",label:"Hide When",description:"This element will be hidden when these conditions are met."},{key:"requireWhen",label:"Require When",description:"This element will be required when these conditions are met."},{key:"disableWhen",label:"Disable When",description:"This element will be disabled when these conditions are met."}],vT=({open:e,onOpenChange:t,element:r,elements:o,onUpdate:n})=>{const s=P.useMemo(()=>zb(o,r.id),[o,r.id]),a=P.useCallback((i,c)=>{const d=tT(c),p={...r.logic,[i]:d.rules.length>0?d:void 0};n({logic:p})},[r.logic,n]);return l.jsx(gT,{open:e,onOpenChange:t,children:l.jsxs(Xb,{className:"max-w-3xl max-h-[85vh] flex flex-col gap-4",children:[l.jsxs(Jb,{children:[l.jsx(ey,{children:"Conditional Logic"}),l.jsx(ty,{children:"Configure when this element is shown, hidden, required, or disabled based on other fields in the form."})]}),l.jsxs(zh,{defaultValue:"showWhen",className:"flex flex-col flex-1 min-h-0",children:[l.jsx(Dc,{className:"grid w-full grid-cols-4",children:ry.map(i=>{var d,p,u;const c=((u=(p=(d=r.logic)==null?void 0:d[i.key])==null?void 0:p.rules)==null?void 0:u.length)??0;return l.jsxs(Yn,{value:i.key,className:"text-xs",children:[i.label,c>0&&` (${c})`]},i.key)})}),ry.map(i=>{var c;return l.jsxs(Qn,{value:i.key,className:"flex-1 min-h-0 overflow-y-auto",children:[l.jsx("p",{className:m("text-xs text-muted-foreground mb-2"),children:i.description}),l.jsx("div",{className:m("query-builder-wrapper"),style:{"--rqb-background-color":"transparent"},children:l.jsx(K$,{fields:s,query:Gb((c=r.logic)==null?void 0:c[i.key]),onQueryChange:d=>a(i.key,d),controlClassnames:rT})})]},i.key)})]}),l.jsx(Zb,{children:l.jsx(yT,{asChild:!0,children:l.jsx(Je,{children:"Done"})})})]})})},xT=({title:e,children:t,defaultOpen:r=!1,badge:o})=>{const[n,s]=P.useState(r);return l.jsxs(qh,{open:n,onOpenChange:s,className:m("border border-border rounded-lg overflow-hidden"),children:[l.jsx(Yh,{asChild:!0,children:l.jsxs(Je,{variant:"ghost",className:m("w-full flex items-center justify-between px-3 py-2 h-auto bg-muted/50 hover:bg-muted rounded-none"),children:[l.jsxs("span",{className:m("flex items-center gap-2 text-sm font-medium text-foreground"),children:[e,o&&l.jsx(vc,{variant:"secondary",className:m("text-xs"),children:o})]}),l.jsx(mn,{className:m("h-4 w-4 transition-transform",n&&"rotate-180")})]})}),l.jsx(Qh,{children:l.jsx("div",{className:m("p-3 bg-card"),children:t})})]})},zl=({title:e,description:t,rule:r,fields:o,defaultOpen:n=!1,badge:s})=>{const a=oT(r,o);return l.jsxs(xT,{title:e,defaultOpen:n,badge:s,children:[l.jsx("p",{className:m("text-xs text-muted-foreground mb-2"),children:t}),a?l.jsx("div",{className:m("rounded-md border border-border bg-muted/40 px-3 py-2 text-sm text-foreground"),children:a}):l.jsx("p",{className:m("text-sm text-muted-foreground/70"),children:"No conditions set"})]})},wT=({element:e,elements:t,onUpdate:r})=>{var d,p,u,f,h,g,y,b,v,N,x,w,C,E,k,_,D,A,I,T,L,F,B,G,z,H,V,W,pe,U,Q,Ce,oe,ye,R,ce,re,Ae,we,ue,J,ne,fe,ke,Re,rt,st,Xe;const[o,n]=P.useState(!1),s=P.useMemo(()=>zb(t,e.id),[t,e.id]),a=P.useCallback(()=>{r({logic:void 0})},[r]),i=e.logic&&((((p=(d=e.logic.showWhen)==null?void 0:d.rules)==null?void 0:p.length)??0)>0||(((f=(u=e.logic.hideWhen)==null?void 0:u.rules)==null?void 0:f.length)??0)>0||(((g=(h=e.logic.requireWhen)==null?void 0:h.rules)==null?void 0:g.length)??0)>0||(((b=(y=e.logic.disableWhen)==null?void 0:y.rules)==null?void 0:b.length)??0)>0),c=(((x=(N=(v=e.logic)==null?void 0:v.showWhen)==null?void 0:N.rules)==null?void 0:x.length)??0)+(((E=(C=(w=e.logic)==null?void 0:w.hideWhen)==null?void 0:C.rules)==null?void 0:E.length)??0)+(((D=(_=(k=e.logic)==null?void 0:k.requireWhen)==null?void 0:_.rules)==null?void 0:D.length)??0)+(((T=(I=(A=e.logic)==null?void 0:A.disableWhen)==null?void 0:I.rules)==null?void 0:T.length)??0);return s.length===0?l.jsxs("div",{className:m("text-sm text-muted-foreground p-4 text-center bg-muted/50 rounded-lg"),children:[l.jsx(yh,{className:m("w-8 h-8 mx-auto mb-2 text-muted-foreground/50")}),l.jsx("p",{children:"Add more fields to enable conditional logic."}),l.jsx("p",{className:m("text-xs mt-1"),children:"Logic rules require other fields to reference."})]}):l.jsxs("div",{className:m("space-y-3"),children:[l.jsxs("div",{className:m("space-y-1"),children:[l.jsxs("div",{className:m("flex items-center gap-1"),children:[i&&l.jsxs(Je,{variant:"ghost",size:"sm",className:m("text-destructive hover:text-destructive hover:bg-destructive/10"),onClick:a,children:[l.jsx(mc,{className:m("h-3 w-3 mr-1")}),"Clear all"]}),l.jsxs(Je,{variant:"outline",size:"sm",onClick:()=>n(!0),children:[l.jsx(vh,{className:m("h-3 w-3 mr-1")}),"Configure"]})]}),l.jsx("div",{className:m("text-sm text-muted-foreground"),children:i?l.jsxs("span",{className:m("flex items-center gap-2"),children:[l.jsx("span",{className:m("w-2 h-2 bg-primary rounded-full")}),c," rule",c!==1?"s":""," ","configured"]}):l.jsx("span",{className:m("text-muted-foreground/70"),children:"No logic configured"})})]}),l.jsx(zl,{title:"Show When",description:"This element will only be visible when these conditions are met.",rule:(L=e.logic)==null?void 0:L.showWhen,fields:s,defaultOpen:!!((G=(B=(F=e.logic)==null?void 0:F.showWhen)==null?void 0:B.rules)!=null&&G.length),badge:(V=(H=(z=e.logic)==null?void 0:z.showWhen)==null?void 0:H.rules)!=null&&V.length?String(e.logic.showWhen.rules.length):void 0}),l.jsx(zl,{title:"Hide When",description:"This element will be hidden when these conditions are met.",rule:(W=e.logic)==null?void 0:W.hideWhen,fields:s,defaultOpen:!!((Q=(U=(pe=e.logic)==null?void 0:pe.hideWhen)==null?void 0:U.rules)!=null&&Q.length),badge:(ye=(oe=(Ce=e.logic)==null?void 0:Ce.hideWhen)==null?void 0:oe.rules)!=null&&ye.length?String(e.logic.hideWhen.rules.length):void 0}),l.jsx(zl,{title:"Required When",description:"This element will be required when these conditions are met.",rule:(R=e.logic)==null?void 0:R.requireWhen,fields:s,defaultOpen:!!((Ae=(re=(ce=e.logic)==null?void 0:ce.requireWhen)==null?void 0:re.rules)!=null&&Ae.length),badge:(J=(ue=(we=e.logic)==null?void 0:we.requireWhen)==null?void 0:ue.rules)!=null&&J.length?String(e.logic.requireWhen.rules.length):void 0}),l.jsx(zl,{title:"Disabled When",description:"This element will be disabled when these conditions are met.",rule:(ne=e.logic)==null?void 0:ne.disableWhen,fields:s,defaultOpen:!!((Re=(ke=(fe=e.logic)==null?void 0:fe.disableWhen)==null?void 0:ke.rules)!=null&&Re.length),badge:(Xe=(st=(rt=e.logic)==null?void 0:rt.disableWhen)==null?void 0:st.rules)!=null&&Xe.length?String(e.logic.disableWhen.rules.length):void 0}),l.jsx(vT,{open:o,onOpenChange:n,element:e,elements:t,onUpdate:r})]})};var ST=Object.defineProperty,NT=(e,t)=>ST(e,"name",{value:t,configurable:!0}),CT=S.forwardRef(NT(function(t,r){return l.jsx(Ie.label,{...t,ref:r,onMouseDown:o=>{var s;o.target.closest("button, input, select, textarea")||((s=t.onMouseDown)==null||s.call(t,o),!o.defaultPrevented&&o.detail>1&&o.preventDefault())}})},"Label")),oy=CT;const ET=Ma("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),dr=S.forwardRef(({className:e,...t},r)=>l.jsx(oy,{ref:r,className:m(ET(),e),...t}));dr.displayName=oy.displayName;const Xd=S.forwardRef(({className:e,...t},r)=>l.jsx("textarea",{className:m("flex min-h-[60px] w-full rounded-md border border-input bg-transparent px-3 py-2 text-base shadow-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e),ref:r,...t}));Xd.displayName="Textarea";var _T=Object.defineProperty,io=(e,t)=>_T(e,"name",{value:t,configurable:!0}),Jd="Checkbox",[kT,DO]=sr(Jd),[AT,Zd]=kT(Jd);function ny(e){const{__scopeCheckbox:t,checked:r,children:o,defaultChecked:n,disabled:s,form:a,name:i,onCheckedChange:c,required:d,value:p="on",internal_do_not_use_render:u}=e,[f,h]=yr({prop:r,defaultProp:n??!1,onChange:c,caller:Jd}),[g,y]=S.useState(null),[b,v]=S.useState(null),N=S.useRef(!1),[x,w]=S.useReducer(k=>k+1,0),C=g?!!a||!!g.closest("form"):!0,E={checked:f,disabled:s,setChecked:h,control:g,setControl:y,name:i,form:a,value:p,hasConsumerStoppedPropagationRef:N,userInteractionCount:x,onUserInteraction:w,required:d,defaultChecked:co(n)?!1:n,isFormControl:C,bubbleInput:b,setBubbleInput:v};return l.jsx(AT,{scope:t,...E,children:ay(u)?u(E):o})}io(ny,"CheckboxProvider");var DT="CheckboxTrigger",$T=S.forwardRef(io(function({__scopeCheckbox:t,onKeyDown:r,onClick:o,...n},s){const{control:a,value:i,disabled:c,checked:d,required:p,setControl:u,setChecked:f,hasConsumerStoppedPropagationRef:h,onUserInteraction:g,isFormControl:y,bubbleInput:b}=Zd(DT,t),v=Ue(s,u),N=S.useRef(d);return S.useEffect(()=>{const x=a==null?void 0:a.form;if(x){const w=io(()=>f(N.current),"reset");return x.addEventListener("reset",w),()=>x.removeEventListener("reset",w)}},[a,f]),l.jsx(Ie.button,{type:"button",role:"checkbox","aria-checked":co(d)?"mixed":d,"aria-required":p,"data-state":eu(d),"data-disabled":c?"":void 0,disabled:c,value:i,...n,ref:v,onKeyDown:Se(r,x=>{x.key==="Enter"&&x.preventDefault()}),onClick:Se(o,x=>{g(),f(w=>co(w)?!0:!w),b&&y&&(h.current=x.isPropagationStopped(),h.current||x.stopPropagation())})})},"CheckboxTrigger")),sy=S.forwardRef(io(function(t,r){const{__scopeCheckbox:o,name:n,checked:s,defaultChecked:a,required:i,disabled:c,value:d,onCheckedChange:p,form:u,...f}=t;return l.jsx(ny,{__scopeCheckbox:o,checked:s,defaultChecked:a,disabled:c,required:i,onCheckedChange:p,name:n,form:u,value:d,internal_do_not_use_render:({isFormControl:h})=>l.jsxs(l.Fragment,{children:[l.jsx($T,{...f,ref:r,__scopeCheckbox:o}),h&&l.jsx(OT,{__scopeCheckbox:o})]})})},"Checkbox")),TT="CheckboxIndicator",PT=S.forwardRef(io(function(t,r){const{__scopeCheckbox:o,forceMount:n,...s}=t,a=Zd(TT,o);return l.jsx(eo,{present:n||co(a.checked)||a.checked===!0,children:l.jsx(Ie.span,{"data-state":eu(a.checked),"data-disabled":a.disabled?"":void 0,...s,ref:r,style:{pointerEvents:"none",...t.style}})})},"CheckboxIndicator")),IT="CheckboxBubbleInput",OT=S.forwardRef(io(function({__scopeCheckbox:t,onClick:r,...o},n){const{control:s,hasConsumerStoppedPropagationRef:a,userInteractionCount:i,checked:c,defaultChecked:d,required:p,disabled:u,name:f,value:h,form:g,bubbleInput:y,setBubbleInput:b}=Zd(IT,t),v=Ue(n,b),N=ec(s),x=S.useRef(!1),w=S.useRef(c),C=S.useRef(i);S.useEffect(()=>{const k=y;if(!k)return;const _=window.HTMLInputElement.prototype,A=Object.getOwnPropertyDescriptor(_,"checked").set,I=i!==C.current;C.current=i;const T=w.current!==c;w.current=c;const L=!(I&&a.current);if(T&&A){x.current=!I;const F=new Event("click",{bubbles:L});k.indeterminate=co(c),A.call(k,co(c)?!1:c),k.dispatchEvent(F),x.current=!1}},[y,c,a,i]);const E=S.useRef(co(c)?!1:c);return l.jsx(Ie.input,{type:"checkbox","aria-hidden":!0,defaultChecked:d??E.current,required:p,disabled:u,name:f,value:h,form:g,...o,tabIndex:-1,ref:v,onClick:Se(r,k=>{x.current&&k.stopPropagation()}),style:{...o.style,...N,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})},"CheckboxBubbleInput"));function ay(e){return typeof e=="function"}io(ay,"isFunction");function co(e){return e==="indeterminate"}io(co,"isIndeterminate");function eu(e){return co(e)?"indeterminate":e?"checked":"unchecked"}io(eu,"getState");const tu=S.forwardRef(({className:e,...t},r)=>l.jsx(sy,{ref:r,className:m("grid place-content-center peer h-4 w-4 shrink-0 rounded-sm border border-primary shadow focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground",e),...t,children:l.jsx(PT,{className:m("grid place-content-center text-current"),children:l.jsx(mh,{className:m("h-4 w-4")})})}));tu.displayName=sy.displayName;var MT=Object.defineProperty,er=(e,t)=>MT(e,"name",{value:t,configurable:!0}),Br="Accordion",LT=["Home","End","ArrowDown","ArrowUp","ArrowLeft","ArrowRight"],[ru,FT,VT]=na(Br),[Bl,$O]=sr(Br,[VT,Bh]),ou=Bh(),GT=S.forwardRef(er(function(t,r){const{type:o,...n}=t,s=n,a=n;return l.jsx(ru.Provider,{scope:t.__scopeAccordion,children:o==="multiple"?l.jsx(WT,{...a,ref:r}):l.jsx(UT,{...s,ref:r})})},"Accordion")),[ly,zT]=Bl(Br),[iy,BT]=Bl(Br,{collapsible:!1}),UT=S.forwardRef(er(function(t,r){const{value:o,defaultValue:n,onValueChange:s=er(()=>{},"onValueChange"),collapsible:a=!1,...i}=t,[c,d]=yr({prop:o,defaultProp:n??"",onChange:s,caller:Br});return l.jsx(ly,{scope:t.__scopeAccordion,value:S.useMemo(()=>c?[c]:[],[c]),onItemOpen:d,onItemClose:S.useCallback(()=>a&&d(""),[a,d]),children:l.jsx(iy,{scope:t.__scopeAccordion,collapsible:a,children:l.jsx(cy,{...i,ref:r})})})},"AccordionImplSingle")),WT=S.forwardRef(er(function(t,r){const{value:o,defaultValue:n,onValueChange:s=er(()=>{},"onValueChange"),...a}=t,[i,c]=yr({prop:o,defaultProp:n??[],onChange:s,caller:Br}),d=S.useCallback(u=>c((f=[])=>[...f,u]),[c]),p=S.useCallback(u=>c((f=[])=>f.filter(h=>h!==u)),[c]);return l.jsx(ly,{scope:t.__scopeAccordion,value:i,onItemOpen:d,onItemClose:p,children:l.jsx(iy,{scope:t.__scopeAccordion,collapsible:!0,children:l.jsx(cy,{...a,ref:r})})})},"AccordionImplMultiple")),[HT,Ul]=Bl(Br),cy=S.forwardRef(er(function(t,r){const{__scopeAccordion:o,disabled:n,dir:s,orientation:a="vertical",...i}=t,c=S.useRef(null),d=Ue(c,r),p=FT(o),f=Vn(s)==="ltr",h=Se(t.onKeyDown,g=>{var D;if(!LT.includes(g.key))return;const y=g.target,b=p().filter(A=>{var I;return!((I=A.ref.current)!=null&&I.disabled)}),v=b.findIndex(A=>A.ref.current===y),N=b.length;if(v===-1)return;g.preventDefault();let x=v;const w=0,C=N-1,E=er(()=>{x=v+1,x>C&&(x=w)},"moveNext"),k=er(()=>{x=v-1,x<w&&(x=C)},"movePrev");switch(g.key){case"Home":x=w;break;case"End":x=C;break;case"ArrowRight":a==="horizontal"&&(f?E():k());break;case"ArrowDown":a==="vertical"&&E();break;case"ArrowLeft":a==="horizontal"&&(f?k():E());break;case"ArrowUp":a==="vertical"&&k();break}const _=x%N;(D=b[_].ref.current)==null||D.focus()});return l.jsx(HT,{scope:o,disabled:n,direction:s,orientation:a,children:l.jsx(ru.Slot,{scope:o,children:l.jsx(Ie.div,{...i,"data-orientation":a,ref:d,onKeyDown:n?void 0:h})})})},"AccordionImpl")),nu="AccordionItem",[jT,su]=Bl(nu),qT=S.forwardRef(er(function(t,r){const{__scopeAccordion:o,value:n,...s}=t,a=Ul(nu,o),i=zT(nu,o),c=ou(o),d=br(),p=n&&i.value.includes(n)||!1,u=a.disabled||t.disabled;return l.jsx(jT,{scope:o,open:p,disabled:u,triggerId:d,children:l.jsx(jh,{"data-orientation":a.orientation,"data-state":au(p),...c,...s,ref:r,disabled:u,open:p,onOpenChange:f=>{f?i.onItemOpen(n):i.onItemClose(n)}})})},"AccordionItem")),YT="AccordionHeader",QT=S.forwardRef(er(function(t,r){const{__scopeAccordion:o,...n}=t,s=Ul(Br,o),a=su(YT,o);return l.jsx(Ie.h3,{"data-orientation":s.orientation,"data-state":au(a.open),"data-disabled":a.disabled?"":void 0,...n,ref:r})},"AccordionHeader")),dy="AccordionTrigger",KT=S.forwardRef(er(function(t,r){const{__scopeAccordion:o,...n}=t,s=Ul(Br,o),a=su(dy,o),i=BT(dy,o),c=ou(o);return l.jsx(ru.ItemSlot,{scope:o,children:l.jsx(L1,{"aria-disabled":a.open&&!i.collapsible||void 0,"data-orientation":s.orientation,id:a.triggerId,...c,...n,ref:r})})},"AccordionTrigger")),RT="AccordionContent",XT=S.forwardRef(er(function(t,r){const{__scopeAccordion:o,...n}=t,s=Ul(Br,o),a=su(RT,o),i=ou(o);return l.jsx(F1,{role:"region","aria-labelledby":a.triggerId,"data-orientation":s.orientation,...i,...n,ref:r,style:{"--radix-accordion-content-height":"var(--radix-collapsible-content-height)","--radix-accordion-content-width":"var(--radix-collapsible-content-width)",...t.style}})},"AccordionContent"));function au(e){return e?"open":"closed"}er(au,"getState");var JT=GT,ZT=qT,eP=QT,uy=KT,fy=XT;const py=JT,lu=S.forwardRef(({className:e,...t},r)=>l.jsx(ZT,{ref:r,className:m("border-b",e),...t}));lu.displayName="AccordionItem";const iu=S.forwardRef(({className:e,children:t,...r},o)=>l.jsx(eP,{className:m("flex"),children:l.jsxs(uy,{ref:o,className:m("flex flex-1 items-center justify-between py-4 text-sm font-medium transition-all hover:underline text-left [&[data-state=open]>svg]:rotate-180",e),...r,children:[t,l.jsx(mn,{className:m("h-4 w-4 shrink-0 text-muted-foreground transition-transform duration-200")})]})}));iu.displayName=uy.displayName;const cu=S.forwardRef(({className:e,children:t,...r},o)=>l.jsx(fy,{ref:o,className:m("overflow-hidden text-sm data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down"),...r,children:l.jsx("div",{className:m("pb-4 pt-0",e),children:t})}));cu.displayName=fy.displayName;function du(e,t,r){var o,n,s,a;switch(t){case"properties":return(o=e.properties)==null?void 0:o[r];case"config":return(n=e.config)==null?void 0:n[r];case"layout":return(s=e.layout)==null?void 0:s[r];case"validation":return(a=e.validation)==null?void 0:a[r];default:return}}function tP(e,t,r,o){switch(e){case"properties":return{properties:{...t.properties,[r]:o}};case"config":return{config:{...t.config,[r]:o}};case"layout":return{layout:{...t.layout,[r]:o}};case"validation":return{validation:{...t.validation,[r]:o}};default:return{}}}function rP(e,t,r){const{field:o,value:n}=r;if(o.includes(".")){const[a,...i]=o.split("."),c=i.join(".");return du(e,a,c)===n}return du(e,t.section,o)===n}const hy=({field:e,element:t,onUpdate:r})=>{var s;const o=du(t,e.section,e.key)??e.defaultValue,n=a=>{r(tP(e.section,t,e.key,a))};switch(e.type){case"text":case"url":case"color":return l.jsxs("div",{className:m("space-y-1.5"),children:[l.jsx(dr,{className:m("text-xs font-medium text-muted-foreground"),children:e.label}),l.jsx(ar,{type:e.type==="color"?"color":e.type==="url"?"url":"text",value:o??"",onChange:a=>n(a.target.value),placeholder:e.placeholder}),e.description&&l.jsx("p",{className:m("text-[11px] text-muted-foreground"),children:e.description})]});case"textarea":return l.jsxs("div",{className:m("space-y-1.5"),children:[l.jsx(dr,{className:m("text-xs font-medium text-muted-foreground"),children:e.label}),l.jsx(Xd,{value:o??"",onChange:a=>n(a.target.value),placeholder:e.placeholder,rows:e.rows??3}),e.description&&l.jsx("p",{className:m("text-[11px] text-muted-foreground"),children:e.description})]});case"number":return l.jsxs("div",{className:m("space-y-1.5"),children:[l.jsx(dr,{className:m("text-xs font-medium text-muted-foreground"),children:e.label}),l.jsx(ar,{type:"number",value:o??"",onChange:a=>{const i=a.target.value;n(i?Number.isInteger(e.min)||Number.isInteger(e.max)?parseInt(i,10):parseFloat(i):void 0)},placeholder:e.placeholder,min:e.min,max:e.max}),e.description&&l.jsx("p",{className:m("text-[11px] text-muted-foreground"),children:e.description})]});case"checkbox":return l.jsxs("div",{className:m("flex items-start space-x-2"),children:[l.jsx(tu,{id:`ds-${e.section}-${e.key}`,checked:!!o,onCheckedChange:a=>n(!!a)}),l.jsxs("div",{className:m("space-y-0.5 leading-none"),children:[l.jsx(dr,{htmlFor:`ds-${e.section}-${e.key}`,className:m("text-xs font-medium text-foreground cursor-pointer"),children:e.label}),e.description&&l.jsx("p",{className:m("text-[11px] text-muted-foreground"),children:e.description})]})]});case"select":return l.jsxs("div",{className:m("space-y-1.5"),children:[l.jsx(dr,{className:m("text-xs font-medium text-muted-foreground"),children:e.label}),l.jsxs(Ta,{value:o!=null?String(o):"",onValueChange:a=>{var c;const i=(c=e.options)==null?void 0:c.find(d=>typeof d.value=="number"&&String(d.value)===a);n(i?i.value:a)},children:[l.jsx(Hn,{children:l.jsx(Pa,{placeholder:e.placeholder||"Select..."})}),l.jsx(jn,{children:(s=e.options)==null?void 0:s.map(a=>l.jsx(Vo,{value:String(a.value),children:a.label},String(a.value)))})]}),e.description&&l.jsx("p",{className:m("text-[11px] text-muted-foreground"),children:e.description})]});default:return null}},oP=({title:e,icon:t,defaultOpen:r=!0,children:o})=>l.jsx(py,{type:"single",collapsible:!0,defaultValue:r?"item":void 0,children:l.jsxs(lu,{value:"item",className:m("border-b border-border"),children:[l.jsx(iu,{className:m("px-4 py-3 hover:bg-muted/50 hover:no-underline"),children:l.jsxs("span",{className:m("text-sm font-medium text-foreground flex items-center gap-2"),children:[t&&l.jsx("span",{children:t}),e]})}),l.jsx(cu,{className:m("px-4 pb-4 mb-4"),children:l.jsx("div",{className:m("space-y-4"),children:o})})]})}),nP=({element:e,schema:t,onUpdate:r})=>{const o=t.fields.filter(c=>c.showWhen?rP(e,c,c.showWhen):!0),n=[];let s=[];const a=()=>{s.length>0&&(n.push(s),s=[])};for(const c of o)c.colSpan===1?(s.push(c),s.length===2&&a()):(a(),n.push([c]));a();const{configSection:i}=t;return l.jsx(oP,{title:(i==null?void 0:i.title)??"Settings",icon:i==null?void 0:i.icon,defaultOpen:!1,children:n.map((c,d)=>{if(!c.every(u=>u.colSpan===1)){const u=c[0];return l.jsx(hy,{field:u,element:e,onUpdate:r},`${u.section}.${u.key}`)}return l.jsx("div",{className:m("grid grid-cols-2 gap-2"),children:c.map(u=>l.jsx(hy,{field:u,element:e,onUpdate:r},`${u.section}.${u.key}`))},`row-${d}`)})})},So=({title:e,children:t,defaultOpen:r=!0,icon:o})=>l.jsx(py,{type:"single",collapsible:!0,defaultValue:r?"item":void 0,children:l.jsxs(lu,{value:"item",className:m("border-b border-border"),children:[l.jsx(iu,{className:m("px-4 py-3 hover:bg-muted/50 hover:no-underline"),children:l.jsxs("span",{className:m("text-sm font-medium text-foreground flex items-center gap-2"),children:[o&&l.jsx("span",{children:o}),e]})}),l.jsx(cu,{className:m("px-4 pb-4 mb-4"),children:l.jsx("div",{className:m("space-y-4"),children:t})})]})}),Ye=({label:e,value:t,onChange:r,type:o="text",placeholder:n,rows:s=3,min:a,max:i,step:c,helpText:d})=>l.jsxs("div",{className:m("space-y-1.5"),children:[l.jsx(dr,{className:m("text-sm font-medium"),children:e}),o==="textarea"?l.jsx(Xd,{value:t??"",onChange:p=>r(p.target.value),placeholder:n,rows:s,className:m("resize-none")}):o==="color"?l.jsxs("div",{className:m("flex gap-2"),children:[l.jsx("input",{type:"color",value:(t==null?void 0:t.toString())||"#000000",onChange:p=>r(p.target.value),className:m("w-10 h-9 border border-input rounded-md cursor-pointer")}),l.jsx(ar,{type:"text",value:t??"",onChange:p=>r(p.target.value),placeholder:n||"#000000",className:m("flex-1")})]}):l.jsx(ar,{type:o,value:t??"",onChange:p=>r(p.target.value),placeholder:n,min:a,max:i,step:c}),d&&l.jsx("p",{className:m("text-xs text-muted-foreground"),children:d})]}),my=({label:e,checked:t,onChange:r,description:o})=>l.jsxs("div",{className:m("flex items-start gap-3"),children:[l.jsx(tu,{id:e,checked:t||!1,onCheckedChange:n=>r(n===!0),className:m("mt-0.5")}),l.jsxs("div",{className:m("grid gap-0.5 leading-none"),children:[l.jsx(dr,{htmlFor:e,className:m("text-sm font-medium cursor-pointer"),children:e}),o&&l.jsx("p",{className:m("text-xs text-muted-foreground"),children:o})]})]}),uu=({label:e,value:t,onChange:r,options:o,helpText:n})=>l.jsxs("div",{className:m("space-y-1.5"),children:[l.jsx(dr,{className:m("text-sm font-medium"),children:e}),l.jsxs(Ta,{value:(t==null?void 0:t.toString())??"",onValueChange:r,children:[l.jsx(Hn,{className:m("w-full"),children:l.jsx(Pa,{placeholder:"Select..."})}),l.jsx(jn,{children:o.map(s=>l.jsx(Vo,{value:s.value,children:s.label},s.value))})]}),n&&l.jsx("p",{className:m("text-xs text-muted-foreground"),children:n})]}),sP=({options:e,onChange:t})=>{const r=(a,i,c)=>{const d=[...e];if(d[a]={...d[a],[i]:c},i==="label"){const p=d[a].value,u=e[a].label;(!p||p===mi(u))&&(d[a].value=mi(c))}t(d)},o=()=>{const a=e.length+1;t([...e,{label:`Option ${a}`,value:`option${a}`}])},n=a=>{e.length>1&&t(e.filter((i,c)=>c!==a))},s=(a,i)=>{const c=i==="up"?a-1:a+1;if(c<0||c>=e.length)return;const d=[...e];[d[a],d[c]]=[d[c],d[a]],t(d)};return l.jsxs("div",{className:m("space-y-2"),children:[l.jsx(dr,{className:m("text-sm font-medium"),children:"Options"}),l.jsx("div",{className:m("space-y-2"),children:e.map((a,i)=>l.jsxs("div",{className:m("flex items-center gap-1"),children:[l.jsxs("div",{className:m("flex flex-col gap-0.5"),children:[l.jsx(Je,{variant:"ghost",size:"icon",className:m("h-5 w-5"),onClick:()=>s(i,"up"),disabled:i===0,children:l.jsx(gh,{className:m("h-3 w-3")})}),l.jsx(Je,{variant:"ghost",size:"icon",className:m("h-5 w-5"),onClick:()=>s(i,"down"),disabled:i===e.length-1,children:l.jsx(mn,{className:m("h-3 w-3")})})]}),l.jsx(ar,{type:"text",value:a.label,onChange:c=>r(i,"label",c.target.value),placeholder:"Label",className:m("flex-1 h-8")}),l.jsx(ar,{type:"text",value:a.value,onChange:c=>r(i,"value",c.target.value),placeholder:"Value",className:m("w-20 h-8 text-muted-foreground")}),l.jsx(Va,{children:l.jsxs(Or,{children:[l.jsx(Mr,{asChild:!0,children:l.jsx(Je,{variant:"ghost",size:"icon",className:m("h-8 w-8"),onClick:()=>n(i),disabled:e.length<=1,children:l.jsx(Wn,{className:m("h-4 w-4")})})}),l.jsx(xr,{children:"Remove option"})]})})]},i))}),l.jsxs(Je,{variant:"ghost",size:"sm",className:m("text-primary"),onClick:o,children:[l.jsx(hc,{className:m("h-4 w-4 mr-1")}),"Add option"]})]})},aP=({rows:e,columns:t,onRowsChange:r,onColumnsChange:o,showColumnType:n=!1})=>{const s=()=>{const u=`row${e.length+1}`;r([...e,{id:u,label:`Row ${e.length+1}`}])},a=u=>{e.length>1&&r(e.filter((f,h)=>h!==u))},i=(u,f,h)=>{const g=[...e];g[u]={...g[u],[f]:h},r(g)},c=()=>{const u=`col${t.length+1}`;o([...t,{id:u,label:`Column ${t.length+1}`,type:"text"}])},d=u=>{t.length>1&&o(t.filter((f,h)=>h!==u))},p=(u,f,h)=>{const g=[...t];g[u]={...g[u],[f]:h},o(g)};return l.jsxs("div",{className:m("space-y-4"),children:[l.jsxs("div",{className:m("space-y-2"),children:[l.jsx(dr,{className:m("text-sm font-medium"),children:"Rows"}),l.jsx("div",{className:m("space-y-2"),children:e.map((u,f)=>l.jsxs("div",{className:m("flex items-center gap-2"),children:[l.jsx(ar,{type:"text",value:u.id,onChange:h=>i(f,"id",h.target.value),placeholder:"Row ID",className:m("w-24 h-8 font-mono text-xs")}),l.jsx(ar,{type:"text",value:u.label,onChange:h=>i(f,"label",h.target.value),placeholder:"Row label",className:m("flex-1 h-8")}),l.jsx(Je,{variant:"ghost",size:"icon",className:m("h-8 w-8"),onClick:()=>a(f),disabled:e.length<=1,children:l.jsx(Wn,{className:m("h-4 w-4")})})]},f))}),l.jsxs(Je,{variant:"ghost",size:"sm",className:m("text-primary"),onClick:s,children:[l.jsx(hc,{className:m("h-4 w-4 mr-1")}),"Add row"]})]}),l.jsxs("div",{className:m("space-y-2"),children:[l.jsx(dr,{className:m("text-sm font-medium"),children:"Columns"}),l.jsx("div",{className:m("space-y-2"),children:t.map((u,f)=>l.jsxs("div",{className:m("flex items-center gap-2"),children:[l.jsx(ar,{type:"text",value:u.id,onChange:h=>p(f,"id",h.target.value),placeholder:"Column ID",className:m("w-24 h-8 font-mono text-xs")}),l.jsx(ar,{type:"text",value:u.label,onChange:h=>p(f,"label",h.target.value),placeholder:"Column label",className:m("flex-1 h-8")}),n&&l.jsxs(Ta,{value:u.type||"text",onValueChange:h=>p(f,"type",h),children:[l.jsx(Hn,{className:m("w-24 h-8"),children:l.jsx(Pa,{})}),l.jsxs(jn,{children:[l.jsx(Vo,{value:"text",children:"Text"}),l.jsx(Vo,{value:"number",children:"Number"}),l.jsx(Vo,{value:"dropdown",children:"Dropdown"})]})]}),l.jsx(Je,{variant:"ghost",size:"icon",className:m("h-8 w-8"),onClick:()=>d(f),disabled:t.length<=1,children:l.jsx(Wn,{className:m("h-4 w-4")})})]},f))}),l.jsxs(Je,{variant:"ghost",size:"sm",className:m("text-primary"),onClick:c,children:[l.jsx(hc,{className:m("h-4 w-4 mr-1")}),"Add column"]})]})]})},lP=({element:e,onUpdate:t})=>{const r=(c,d)=>{t({properties:{...e.properties,[c]:d}})},o=["shortText","longText","multiLineInput","textEditor","number","email","phone","url","location","password","dropdown","tags","date","time","dateTime","multipleDates","dateRange"].includes(e.type),n=!["divider","spacer","paragraph","image","link"].includes(e.type),s=["paragraph"].includes(e.type),a=["link"].includes(e.type),i=["image"].includes(e.type);return l.jsxs(So,{title:"Properties",icon:"📝",children:[!["divider","spacer"].includes(e.type)&&l.jsx(Ye,{label:"Label",value:e.properties.label,onChange:c=>r("label",c),placeholder:"Enter label..."}),o&&l.jsx(Ye,{label:"Placeholder",value:e.properties.placeholder,onChange:c=>r("placeholder",c),placeholder:"Enter placeholder..."}),n&&l.jsx(Ye,{label:"Description",value:e.properties.description,onChange:c=>r("description",c),type:"textarea",placeholder:"Enter description...",rows:2}),s&&l.jsx(Ye,{label:"Content",value:e.properties.content,onChange:c=>r("content",c),type:"textarea",placeholder:"Enter paragraph text...",rows:4}),a&&l.jsxs(l.Fragment,{children:[l.jsx(Ye,{label:"Link Text",value:e.properties.content,onChange:c=>r("content",c),placeholder:"Click here"}),l.jsx(Ye,{label:"URL",value:e.properties.href,onChange:c=>r("href",c),type:"url",placeholder:"https://example.com"}),l.jsx(uu,{label:"Target",value:e.properties.target,onChange:c=>r("target",c),options:[{value:"_blank",label:"New Tab"},{value:"_self",label:"Same Tab"}]})]}),i&&l.jsxs(l.Fragment,{children:[l.jsx(Ye,{label:"Image URL",value:e.properties.src,onChange:c=>r("src",c),type:"url",placeholder:"https://example.com/image.jpg"}),l.jsx(Ye,{label:"Alt Text",value:e.properties.alt,onChange:c=>r("alt",c),placeholder:"Image description"})]}),["shortText","number"].includes(e.type)&&l.jsxs("div",{className:m("grid grid-cols-2 gap-2"),children:[l.jsx(Ye,{label:"Prefix",value:e.properties.prefix,onChange:c=>r("prefix",c),placeholder:"$"}),l.jsx(Ye,{label:"Suffix",value:e.properties.suffix,onChange:c=>r("suffix",c),placeholder:".00"})]})]})},iP=({element:e,onUpdate:t})=>{const r=(n,s)=>{t({layout:{...e.layout,[n]:s}})},o=!["divider","spacer","formHeading","sectionHeading","subheading","paragraph","image","link","captcha","decisionBox"].includes(e.type);return l.jsxs(So,{title:"Layout",icon:"📐",defaultOpen:!1,children:[o&&l.jsx(uu,{label:"Label Position",value:e.layout.labelPosition,onChange:n=>r("labelPosition",n),options:[{value:"top",label:"Top"},{value:"left",label:"Left"},{value:"hidden",label:"Hidden"}]}),l.jsx(uu,{label:"Size",value:e.layout.size,onChange:n=>r("size",n),options:[{value:"small",label:"Small"},{value:"default",label:"Default"},{value:"medium",label:"Medium"},{value:"large",label:"Large"},{value:"full",label:"Full Width"}]}),l.jsx(Ye,{label:"Custom Width",value:e.layout.width,onChange:n=>r("width",n),placeholder:"e.g., 50%, 300px"}),l.jsx(Ye,{label:"CSS Class",value:e.layout.className,onChange:n=>r("className",n),placeholder:"custom-class",helpText:"Additional CSS classes"})]})},cP=({element:e,onUpdate:t})=>{var c,d,p,u,f,h,g,y,b,v,N;const r=(x,w)=>{t({validation:{...e.validation,[x]:w}})},o=Aw(e.type),n=["shortText","longText","multiLineInput","textEditor","password"].includes(e.type),s=["number","slider","rangeSlider"].includes(e.type),a=["multiFileUpload","multiImageUpload"].includes(e.type),i=["multipleDates"].includes(e.type);return l.jsxs(So,{title:"Validation",icon:"✅",defaultOpen:!1,children:[o.supportsRequired&&l.jsx(my,{label:"Required",checked:(c=e.validation)==null?void 0:c.required,onChange:x=>r("required",x),description:"Field must be filled"}),n&&l.jsxs("div",{className:m("grid grid-cols-2 gap-2"),children:[l.jsx(Ye,{label:"Min Length",value:(d=e.validation)==null?void 0:d.minLength,onChange:x=>r("minLength",x?parseInt(x):void 0),type:"number",placeholder:"0",min:0}),l.jsx(Ye,{label:"Max Length",value:(p=e.validation)==null?void 0:p.maxLength,onChange:x=>r("maxLength",x?parseInt(x):void 0),type:"number",placeholder:"255",min:0})]}),s&&l.jsxs("div",{className:m("grid grid-cols-2 gap-2"),children:[l.jsx(Ye,{label:"Min Value",value:(u=e.validation)==null?void 0:u.min,onChange:x=>r("min",x?parseFloat(x):void 0),type:"number"}),l.jsx(Ye,{label:"Max Value",value:(f=e.validation)==null?void 0:f.max,onChange:x=>r("max",x?parseFloat(x):void 0),type:"number"})]}),o.supportsPattern&&l.jsx(Ye,{label:"Pattern (Regex)",value:(h=e.validation)==null?void 0:h.pattern,onChange:x=>r("pattern",x),placeholder:"^[a-zA-Z]+$",helpText:"Regular expression for validation"}),a&&l.jsxs("div",{className:m("grid grid-cols-2 gap-2"),children:[l.jsx(Ye,{label:"Min Files",value:(g=e.validation)==null?void 0:g.minFiles,onChange:x=>r("minFiles",x?parseInt(x):void 0),type:"number",min:0}),l.jsx(Ye,{label:"Max Files",value:(y=e.validation)==null?void 0:y.maxFiles,onChange:x=>r("maxFiles",x?parseInt(x):void 0),type:"number",min:1})]}),i&&l.jsxs("div",{className:m("grid grid-cols-2 gap-2"),children:[l.jsx(Ye,{label:"Min Dates",value:(b=e.validation)==null?void 0:b.minDates,onChange:x=>r("minDates",x?parseInt(x):void 0),type:"number",min:0}),l.jsx(Ye,{label:"Max Dates",value:(v=e.validation)==null?void 0:v.maxDates,onChange:x=>r("maxDates",x?parseInt(x):void 0),type:"number",min:1})]}),l.jsx(Ye,{label:"Error Message",value:(N=e.validation)==null?void 0:N.errorMessage,onChange:x=>r("errorMessage",x),placeholder:"Custom error message..."})]})},dP=({element:e,onUpdate:t,existingNames:r})=>{const[o,n]=P.useState(null),s=(a,i)=>{{const c=new Set(r);c.delete(e.attributes.name),c.has(i)?n("This field name already exists"):!i||i.trim()===""?n("Field name is required"):/^[a-zA-Z][a-zA-Z0-9_]*$/.test(i)?n(null):n("Must start with letter, only letters/numbers/underscores")}t({attributes:{...e.attributes,[a]:i}})};return l.jsx(So,{title:"Attributes",icon:"🏷️",defaultOpen:!1,children:l.jsxs("div",{children:[l.jsx("label",{className:m("block text-sm font-medium text-gray-700 mb-1"),children:"Field Name"}),l.jsx("input",{type:"text",value:e.attributes.name||"",onChange:a=>s("name",a.target.value),placeholder:"fieldName",className:m("w-full px-3 py-2 border rounded-md text-sm focus:outline-none focus:ring-2 focus:border-transparent",o?"border-red-500 focus:ring-red-500":"border-gray-300 focus:ring-blue-500")}),o&&l.jsx("p",{className:m("mt-1 text-xs text-red-600"),children:o}),l.jsx("p",{className:m("mt-1 text-xs text-gray-500"),children:"Used as the key in JSON output"})]})})},uP=({element:e,onUpdate:t})=>{var n,s,a,i;const r=c=>{t({config:{...e.config,options:c}})},o=(c,d)=>{t({config:{...e.config,[c]:d}})};return l.jsxs(So,{title:"Options",icon:"📋",children:[l.jsx(sP,{options:((n=e.config)==null?void 0:n.options)||[],onChange:r}),l.jsx(my,{label:"Allow 'Other' option",checked:(s=e.config)==null?void 0:s.allowOther,onChange:c=>o("allowOther",c),description:"Let users enter custom value"}),((a=e.config)==null?void 0:a.allowOther)&&l.jsx(Ye,{label:"Other Label",value:(i=e.config)==null?void 0:i.otherLabel,onChange:c=>o("otherLabel",c),placeholder:"Other..."})]})},fP=({element:e,onUpdate:t})=>{var o,n;const r=(s,a)=>{t({config:{...e.config,[s]:a}})};return l.jsx(So,{title:"Matrix Configuration",icon:"📊",children:l.jsx(aP,{rows:((o=e.config)==null?void 0:o.matrixRows)||[],columns:((n=e.config)==null?void 0:n.matrixColumns)||[],onRowsChange:s=>r("matrixRows",s),onColumnsChange:s=>r("matrixColumns",s),showColumnType:e.type==="matrixTable"})})},pP=()=>l.jsxs("div",{className:m("flex flex-col items-center justify-center h-full text-center px-6 py-12"),children:[l.jsx("div",{className:m("w-12 h-12 bg-muted rounded-full flex items-center justify-center mb-4"),children:l.jsx(vh,{className:m("w-6 h-6 text-muted-foreground")})}),l.jsx("h3",{className:m("text-sm font-medium text-foreground mb-1"),children:"No element selected"}),l.jsx("p",{className:m("text-xs text-muted-foreground"),children:"Click on an element in the canvas to edit its properties"})]}),hP=({element:e,onUpdate:t,propertyConfig:r})=>{const o=(p,u)=>{t({properties:{...e.properties,[p]:u}})},n=r??{showLabel:!0,showPlaceholder:!0,showDescription:!0,showPrefix:!1,showSuffix:!1},s=n.showLabel!==!1,a=n.showPlaceholder===!0,i=n.showDescription!==!1,c=n.showPrefix===!0,d=n.showSuffix===!0;return!s&&!a&&!i&&!c&&!d?null:l.jsxs(So,{title:"Properties",icon:"📝",children:[s&&l.jsx(Ye,{label:"Label",value:e.properties.label,onChange:p=>o("label",p),placeholder:"Enter label..."}),a&&l.jsx(Ye,{label:"Placeholder",value:e.properties.placeholder,onChange:p=>o("placeholder",p),placeholder:"Enter placeholder..."}),i&&l.jsx(Ye,{label:"Description",value:e.properties.description,onChange:p=>o("description",p),type:"textarea",placeholder:"Enter description...",rows:2}),(c||d)&&l.jsxs("div",{className:m("grid grid-cols-2 gap-2"),children:[c&&l.jsx(Ye,{label:"Prefix",value:e.properties.prefix,onChange:p=>o("prefix",p),placeholder:"$"}),d&&l.jsx(Ye,{label:"Suffix",value:e.properties.suffix,onChange:p=>o("suffix",p),placeholder:".00"})]})]})},mP=()=>{const e=Pw(),t=te(g=>g.updateElement),r=te(g=>g.deleteElement),o=te(g=>g.duplicateElement),n=te(g=>g.schema.elements),s=P.useMemo(()=>new Set(n.map(g=>g.attributes.name).filter(Boolean)),[n]);if(!e)return l.jsx("div",{className:m("w-72 bg-card border-l border-border flex-col h-full hidden"),children:l.jsx(pP,{})});const a=g=>{t(e.id,g)},i=ut.get(e.type),c=!!(i!=null&&i.renderSettings),d=i==null?void 0:i.settingsSchema,p=c||!!d,u=i!=null&&i.icon&&typeof i.icon=="string"?i.icon:bc[e.type],f=(i==null?void 0:i.label)??gc[e.type],h=d==null?void 0:d.showSections;return l.jsxs("div",{className:m("w-72 bg-card border-l border-border flex flex-col h-full flex-shrink-0"),children:[l.jsxs("div",{className:m("p-4 border-b border-border"),children:[l.jsxs("div",{className:m("flex items-center gap-2 mb-1"),children:[l.jsx("span",{className:m("text-xl"),children:u}),l.jsx("h2",{className:m("text-lg font-semibold text-foreground"),children:f})]}),l.jsxs("div",{className:m("flex gap-2 mt-3"),children:[l.jsxs(Je,{variant:"secondary",size:"sm",className:m("flex-1"),onClick:()=>o(e.id),children:[l.jsx(pE,{className:m("h-3 w-3 mr-1")}),"Duplicate"]}),l.jsxs(Je,{variant:"destructive",size:"sm",className:m("flex-1"),onClick:()=>{window.confirm("Are you sure you want to delete this element?")&&r(e.id)},children:[l.jsx(mc,{className:m("h-3 w-3 mr-1")}),"Delete"]})]})]}),l.jsxs(Fc,{className:m("flex-1"),children:[c&&i.renderSettings({element:e,onUpdate:a}),!c&&l.jsxs(l.Fragment,{children:[(h==null?void 0:h.properties)!==!1&&(p?l.jsx(hP,{element:e,onUpdate:a,propertyConfig:d==null?void 0:d.properties}):l.jsx(lP,{element:e,onUpdate:a})),(h==null?void 0:h.options)!==!1&&XE(e.type)&&l.jsx(uP,{element:e,onUpdate:a}),(h==null?void 0:h.matrix)!==!1&&ZE(e.type)&&l.jsx(fP,{element:e,onUpdate:a}),d&&l.jsx(nP,{element:e,schema:d,onUpdate:a}),(h==null?void 0:h.layout)!==!1&&l.jsx(iP,{element:e,onUpdate:a}),(h==null?void 0:h.validation)!==!1&&((i==null?void 0:i.supportsValidation)??JE(e.type))&&!bi(e.type)&&l.jsx(cP,{element:e,onUpdate:a}),(h==null?void 0:h.attributes)!==!1&&((i==null?void 0:i.structure)==="field"||YE(e.type))&&!bi(e.type)&&l.jsx(dP,{element:e,onUpdate:a,existingNames:s}),(h==null?void 0:h.logic)!==!1&&!bi(e.type)&&l.jsx(So,{title:"Conditional Logic",icon:"⚡",children:l.jsx(wT,{element:e,elements:n,onUpdate:a})})]})]})]})};var Cs=e=>e.type==="checkbox",Wl=e=>e.type==="file",No=e=>e instanceof Date,$t=e=>e==null;const fu=e=>typeof e=="object";var nt=e=>!$t(e)&&!Array.isArray(e)&&fu(e)&&!No(e),gP=e=>nt(e)&&e.target?Cs(e.target)?e.target.checked:Wl(e.target)?e.target.files:e.target.value:e,bP=(e,t)=>t.split(".").some((r,o,n)=>!isNaN(Number(r))&&e.has(n.slice(0,o).join("."))),gy=e=>{const t=e.constructor&&e.constructor.prototype;return nt(t)&&t.hasOwnProperty("isPrototypeOf")},Hl=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function at(e){if(e instanceof Date)return new Date(e);const t=typeof FileList<"u"&&e instanceof FileList;if(Hl&&(e instanceof Blob||t))return e;const r=Array.isArray(e);if(!r&&!(nt(e)&&gy(e)))return e;const o=r?[]:Object.create(Object.getPrototypeOf(e));for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(o[n]=at(e[n]));return o}const En={BLUR:"blur",FOCUS_OUT:"focusout",SUBMIT:"submit",TRIGGER:"trigger",VALID:"valid"},Cr={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},Er={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},by="root",pu=["__proto__","constructor","prototype"],yP=/^\w*$/;var Es=e=>yP.test(e),tt=e=>e===void 0;const vP=/[.[\]'"]/;var jl=e=>e.split(vP).filter(Boolean),ae=(e,t,r)=>{if(!t||!nt(e))return r;const o=Es(t)?[t]:jl(t);if(o.some(s=>pu.includes(s)))return r;const n=o.reduce((s,a)=>$t(s)?void 0:s[a],e);return tt(n)||n===e?tt(e[t])?r:e[t]:n},Ur=e=>typeof e=="boolean",ur=e=>typeof e=="function",Ze=(e,t,r)=>{let o=-1;const n=Es(t)?[t]:jl(t),s=n.length,a=s-1;for(;++o<s;){const i=n[o];let c=r;if(o!==a){const d=e[i];c=nt(d)||Array.isArray(d)?d:isNaN(+n[o+1])?{}:[]}if(pu.includes(i))return;e[i]=c,e=e[i]}};const yy=P.createContext(null);yy.displayName="HookFormControlContext";var xP=(e,t,r,o=!0)=>{const n={};for(const s in e)Object.defineProperty(n,s,{get:()=>{const a=s;return t._proxyFormState[a]!==Cr.all&&(t._proxyFormState[a]=!o||Cr.all),e[a]}});return n};const wP=Hl?P.useLayoutEffect:P.useEffect;var Tt=e=>typeof e=="string",SP=(e,t,r,o,n)=>Tt(e)?(o&&t.watch.add(e),ae(r,e,n)):Array.isArray(e)?e.map(s=>(o&&t.watch.add(s),ae(r,s))):(o&&(t.watchAll=!0),r),hu=e=>$t(e)||!fu(e);const vy=(e,t)=>t.length===0&&!Array.isArray(e)&&!gy(e);function Wr(e,t,r=new WeakMap){if(e===t)return!0;if(hu(e)||hu(t))return Object.is(e,t);if(No(e)&&No(t))return Object.is(e.getTime(),t.getTime());const o=Object.keys(e),n=Object.keys(t);if(o.length!==n.length)return!1;if(vy(e,o)||vy(t,n))return Object.is(e,t);if(!o.length&&Array.isArray(e)!==Array.isArray(t))return!1;const s=r.get(e);if(s&&s.has(t))return!0;if(s)s.add(t);else{const a=new WeakSet;a.add(t),r.set(e,a)}for(const a of o){const i=e[a];if(!(a in t))return!1;if(a!=="ref"){const c=t[a];if(No(i)&&No(c)||(nt(i)||Array.isArray(i))&&(nt(c)||Array.isArray(c))?!Wr(i,c,r):!Object.is(i,c))return!1}}return!0}var ql=e=>({isOnSubmit:!e||e===Cr.onSubmit,isOnBlur:e===Cr.onBlur,isOnChange:e===Cr.onChange,isOnAll:e===Cr.all,isOnTouch:e===Cr.onTouched}),mu=(e,t,r)=>{if(r)return!1;if(t.watchAll||t.watch.has(e))return!0;for(const o of t.watch)if(e.startsWith(o)&&e.charAt(o.length)===".")return!0;return!1};const _s=(e,t,r,o)=>{for(const n of r||Object.keys(e)){if(n==="_f")continue;const s=r?ae(e,n):e[n];if(s){const{_f:a}=s;if(a){if(a.refs&&a.refs[0]&&t(a.refs[0],n)&&!o)return!0;if(a.ref&&t(a.ref,a.name)&&!o)return!0;if(_s(s,t))break}else if((nt(s)||Array.isArray(s))&&_s(s,t))break}}};var xy=(e,t,r)=>{const o=ae(e,r),n=Array.isArray(o)?o:[];return Ze(n,by,t[r]),Ze(e,r,n),e},Pt=e=>nt(e)&&!Object.keys(e).length,Yl=e=>{if(!Hl)return!1;const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},gu=e=>e.type==="radio",Ql=e=>e instanceof RegExp,NP=(e,t,r,o,n)=>t?{...r[e],types:{...r[e]&&r[e].types?r[e].types:{},[o]:n||!0}}:{};const wy={value:!1,isValid:!1},Sy={value:!0,isValid:!0};var Ny=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter(r=>r&&r.checked&&!r.disabled).map(r=>r.value);return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!tt(e[0].attributes.value)?tt(e[0].value)||e[0].value===""?Sy:{value:e[0].value,isValid:!0}:Sy:wy}return wy};const Cy={isValid:!1,value:null};var Ey=e=>Array.isArray(e)?e.reduce((t,r)=>r&&r.checked&&!r.disabled?{isValid:!0,value:r.value}:t,Cy):Cy;function _y(e,t,r="validate"){if(Tt(e)||Array.isArray(e)&&e.every(Tt)||Ur(e)&&!e)return{type:r,message:Tt(e)?e:"",ref:t}}var _n=e=>nt(e)&&!Ql(e)?e:{value:e,message:""},ky=async(e,t,r,o,n,s)=>{const{ref:a,refs:i,required:c,maxLength:d,minLength:p,min:u,max:f,pattern:h,validate:g,name:y,valueAsNumber:b,mount:v}=e._f,N=ae(r,y);if(!v||t.has(y))return{};const x=i?i[0]:a,w=T=>{if(n&&x.reportValidity){const L=Ur(T)?"":T||"";i?i.forEach(F=>F.setCustomValidity(L)):x.setCustomValidity(L),x.reportValidity()}},C={},E=gu(a),k=Cs(a),_=E||k,D=(b||Wl(a))&&tt(a.value)&&tt(N)||Yl(a)&&a.value===""||N===""||Array.isArray(N)&&!N.length,A=NP.bind(null,y,o,C),I=(T,L,F,B=Er.maxLength,G=Er.minLength)=>{const z=T?L:F;C[y]={type:T?B:G,message:z,ref:a,...A(T?B:G,z)}};if(s?!Array.isArray(N)||!N.length:c&&(!_&&(D||$t(N))||Ur(N)&&!N||k&&!Ny(i).isValid||E&&!Ey(i).isValid)){const{value:T,message:L}=Tt(c)?{value:!!c,message:c}:_n(c);if(T&&(C[y]={type:Er.required,message:L,ref:x,...A(Er.required,L)},!o))return w(L),C}if(!D&&(!$t(u)||!$t(f))){let T,L;const F=_n(f),B=_n(u);if(!$t(N)&&!isNaN(N)){const G=a.valueAsNumber||N&&+N;$t(F.value)||(T=G>F.value),$t(B.value)||(L=G<B.value)}else{const G=a.valueAsDate||new Date(N),z=W=>new Date(new Date().toDateString()+" "+W),H=a.type=="time",V=a.type=="week";Tt(F.value)&&N&&(T=H?z(N)>z(F.value):V?N>F.value:G>new Date(F.value)),Tt(B.value)&&N&&(L=H?z(N)<z(B.value):V?N<B.value:G<new Date(B.value))}if((T||L)&&(I(!!T,F.message,B.message,Er.max,Er.min),!o))return w(C[y].message),C}if((d||p)&&!D&&(Tt(N)||s&&Array.isArray(N))){const T=_n(d),L=_n(p),F=!$t(T.value)&&N.length>+T.value,B=!$t(L.value)&&N.length<+L.value;if((F||B)&&(I(F,T.message,L.message),!o))return w(C[y].message),C}if(h&&!D&&Tt(N)){const{value:T,message:L}=_n(h);if(Ql(T)&&!N.match(T)&&(C[y]={type:Er.pattern,message:L,ref:a,...A(Er.pattern,L)},!o))return w(L),C}if(g){if(ur(g)){const T=await g(N,r),L=_y(T,x);if(L&&(C[y]={...L,...A(Er.validate,L.message)},!o))return w(L.message),C}else if(nt(g)){let T={};for(const L in g){if(!Pt(T)&&!o)break;const F=_y(await g[L](N,r),x,L);F&&(T={...F,...A(L,F.message)},w(F.message),o&&(C[y]=T))}if(!Pt(T)&&(C[y]={ref:x,...T},!o))return C}}return w(!0),C},Kl=e=>Array.isArray(e)?e:[e],Ay=e=>Array.isArray(e)?e.filter(Boolean):[];function CP(e,t){const r=t.length-1;let o=0;for(;o<r;){if($t(e)){e=void 0;break}e=e[t[o]],o++}return e}function EP(e){for(const t in e)if(e.hasOwnProperty(t)&&!tt(e[t]))return!1;return!0}function dt(e,t){if(Tt(t)&&Object.prototype.hasOwnProperty.call(e,t))return delete e[t],e;const r=Array.isArray(t)?t:Es(t)?[t]:jl(t);if(r.some(a=>pu.includes(String(a))))return e;const o=r.length===1?e:CP(e,r),n=r.length-1,s=r[n];return o&&delete o[s],n!==0&&(nt(o)&&Pt(o)||Array.isArray(o)&&EP(o))&&dt(e,r.slice(0,-1)),e}const Dy=e=>{const t={};for(const r of Object.keys(e))if(fu(e[r])&&e[r]!==null&&!No(e[r])){const o=Dy(e[r]);for(const n of Object.keys(o))t[`${r}.${n}`]=o[n]}else t[r]=e[r];return t},bu=P.createContext(null);bu.displayName="HookFormContext";const yu=()=>P.useContext(bu),$y=({children:e,watch:t,getValues:r,getFieldState:o,setError:n,clearErrors:s,setValue:a,setValues:i,trigger:c,formState:d,resetField:p,reset:u,resetDefaultValues:f,handleSubmit:h,unregister:g,control:y,register:b,setFocus:v,subscribe:N})=>{const x=P.useMemo(()=>({watch:t,getValues:r,getFieldState:o,setError:n,clearErrors:s,setValue:a,setValues:i,trigger:c,formState:d,resetField:p,reset:u,resetDefaultValues:f,handleSubmit:h,unregister:g,control:y,register:b,setFocus:v,subscribe:N}),[s,y,d,o,r,h,b,u,f,p,n,v,a,i,N,c,g,t]);return P.createElement(bu.Provider,{value:x},P.createElement(yy.Provider,{value:x.control},e))};var Ty=()=>{let e=[];return{get observers(){return e},next:n=>{for(const s of e)s.next&&s.next(n)},subscribe:n=>(e.push(n),{unsubscribe:()=>{e=e.filter(s=>s!==n)}}),unsubscribe:()=>{e=[]}}};function Py(e,t){const r={};for(const o in e)if(e.hasOwnProperty(o)){const n=e[o],s=t[o];if(n&&nt(n)&&s){const a=Py(n,s);nt(a)&&(r[o]=a)}else e[o]&&(r[o]=s)}return r}var Iy=e=>e.type==="select-multiple",_P=e=>gu(e)||Cs(e),vu=e=>Yl(e)&&e.isConnected;function Oy(e){return Array.isArray(e)||nt(e)}function My(e,t,r="",o=[]){for(const n in e){const s=r?`${r}.${n}`:n,a=e[n];Oy(a)&&Oy(ae(t,s))?My(a,t,s,o):o.push(s)}return o}var kP=e=>{for(const t in e)if(ur(e[t]))return!0;return!1};function Ly(e){return Array.isArray(e)||nt(e)&&!kP(e)}function Fy(e){return!!(e&&"_f"in e)}function Vy(e){return Array.isArray(e)?!e.some(t=>!tt(t)):!Object.keys(e).length}function xu(e,t){Array.isArray(e)?e[t]=void 0:delete e[t]}function wu(e,t={},r){for(const o in e){const n=e[o],s=r&&r[o];Ly(n)&&(!Array.isArray(n)||!Fy(s))?(t[o]=Array.isArray(n)?[]:{},wu(n,t[o],s),Vy(t[o])&&xu(t,o)):tt(n)||(t[o]=!0)}return t}function tn(e,t,r,o){r||(r=wu(t,{},o));for(const n in e){const s=e[n],a=o&&o[n];Ly(s)&&(!Array.isArray(s)||!Fy(a))?(tt(t)||hu(r[n])?r[n]=wu(s,Array.isArray(s)?[]:{},a):tn(s,$t(t)?{}:t[n],r[n],a),Vy(r[n])&&xu(r,n)):Wr(s,t[n])?xu(r,n):r[n]=!0}return r}var Gy=(e,{valueAsNumber:t,valueAsDate:r,setValueAs:o})=>tt(e)?e:t?e===""?NaN:e&&+e:r&&Tt(e)?new Date(e):o?o(e):e;function zy(e){const t=e.ref;return Wl(t)?t.files:gu(t)?Ey(e.refs).value:Iy(t)?[...t.selectedOptions].map(({value:r})=>r):Cs(t)?Ny(e.refs).value:Gy(t.value,e)}var AP=(e,t,r,o)=>{const n={};for(const s of e){const a=ae(t,s);a&&Ze(n,s,a._f)}return{criteriaMode:r,names:[...e],fields:n,shouldUseNativeValidation:o}},ks=e=>tt(e)?e:Ql(e)?e.source:nt(e)?Ql(e.value)?e.value.source:e.value:e;const By="AsyncFunction";var DP=e=>{if(!e||!e.validate)return!1;if(ur(e.validate))return e.validate.constructor.name===By;if(nt(e.validate)){for(const t in e.validate)if(e.validate[t].constructor.name===By)return!0}return!1},$P=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate);function Uy(e,t,r){const o=ae(e,r);if(o||Es(r))return{error:o,name:r};const n=r.split(".");for(;n.length;){const s=n.join("."),a=ae(t,s),i=ae(e,s);if(a&&!Array.isArray(a)&&r!==s)return{name:r};if(i&&i.type)return{name:s,error:i};if(i&&i.root&&i.root.type)return{name:`${s}.root`,error:i.root};n.pop()}return{name:r}}var TP=(e,t,r,o)=>{r(e);const n=Object.keys(e).filter(s=>s!=="name");return!n.length||o&&n.length>=Object.keys(t).length||n.find(s=>t[s]===(!o||Cr.all))},PP=(e,t,r)=>!e||!t||e===t||Kl(e).some(o=>o&&(r?o===t||o.startsWith(t+"."):o.startsWith(t)||t.startsWith(o))),IP=(e,t,r,o,n)=>n.isOnAll?!1:!r&&n.isOnTouch?!(t||e):(r?o.isOnBlur:n.isOnBlur)?!e:(r?o.isOnChange:n.isOnChange)?e:!0,OP=(e,t)=>!Ay(ae(e,t)).length&&dt(e,t);const MP={mode:Cr.onSubmit,reValidateMode:Cr.onChange,shouldFocusError:!0},Su="form",LP=(e,t)=>{for(const r in e)r in t||delete e[r];Object.assign(e,t)},Wy={submitCount:0,isDirty:!1,isReady:!1,isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{}};function FP(e={}){let t={...MP,...e},r={...at(Wy),isLoading:ur(t.defaultValues),errors:t.errors||{},disabled:t.disabled||!1},o={},n=nt(t.defaultValues)||nt(t.values)?at(t.defaultValues||t.values)||{}:{},s=t.shouldUnregister?{}:at(n),a={action:!1,mount:!1,watch:!1,keepIsValid:!1},i={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set,registerName:new Set};const c={},d={};let p=0,u=ql(t.mode),f=ql(t.reValidateMode);const h={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},g={...h};let y={...g};const b={array:Ty(),state:Ty()};let v=0;const N=t.criteriaMode===Cr.all,x=($,O)=>M=>{clearTimeout(d[$]),d[$]=setTimeout(O,M)},w=async $=>{if(!a.keepIsValid&&!t.disabled&&(g.isValid||y.isValid||$)){const O=++v;let M;t.resolver?(M=Pt((await F()).errors),O===v&&C()):M=await z({fields:o,onlyCheckValid:!0,eventType:En.VALID}),O===v&&M!==r.isValid&&b.state.next({isValid:M})}},C=($,O)=>{!t.disabled&&(g.isValidating||g.validatingFields||y.isValidating||y.validatingFields)&&(($||Array.from(i.mount)).forEach(M=>{M&&(O?Ze(r.validatingFields,M,O):dt(r.validatingFields,M))}),b.state.next({validatingFields:r.validatingFields,isValidating:!Pt(r.validatingFields)}))},E=()=>{r.dirtyFields=tn(n,s,void 0,o)},k=($,O=[],M,Y,q=!0,Z=!0)=>{if(Y&&M&&!t.disabled){if(a.action=!0,Z&&Array.isArray(ae(o,$))){const j=M(ae(o,$),Y.argA,Y.argB);q&&Ze(o,$,j)}if(Z&&Array.isArray(ae(r.errors,$))){const j=M(ae(r.errors,$),Y.argA,Y.argB);q&&Ze(r.errors,$,j),OP(r.errors,$)}if((g.touchedFields||y.touchedFields)&&Z&&Array.isArray(ae(r.touchedFields,$))){const j=M(ae(r.touchedFields,$),Y.argA,Y.argB);q&&Ze(r.touchedFields,$,j)}(g.dirtyFields||y.dirtyFields)&&E(),b.state.next({name:$,isDirty:V($,O),dirtyFields:r.dirtyFields,errors:r.errors,isValid:r.isValid})}else Ze(s,$,O)},_=($,O)=>{Ze(r.errors,$,O),r.errors={...r.errors},b.state.next({errors:r.errors})},D=$=>{r.errors=$,b.state.next({errors:r.errors,isValid:!1})},A=$=>{const O=Es($)?[$]:jl($);let M=s,Y=n;for(let q=0;q<O.length-1;q++){const Z=O[q];if(M=$t(M)?M:M[Z],Y=$t(Y)?Y:Y[Z],M===null&&Y!==null)return!0}return!1},I=($,O,M,Y)=>{const q=ae(o,$);if(q){if(A($))return;const Z=tt(ae(s,$)),j=ae(s,$,tt(M)?ae(n,$):M);tt(j)||Y&&Y.defaultChecked||O?Ze(s,$,O?j:zy(q._f)):U($,j),a.mount&&!a.action&&(w(),Z&&r.isDirty&&(g.isDirty||y.isDirty)&&(V()||(r.isDirty=!1,b.state.next({...r}))),e.shouldUnregister&&Z&&!tt(ae(s,$))&&mu($,i)&&(a.watch=!0))}},T=($,O,M,Y,q)=>{let Z=!1,j=!1;const X={name:$};if(!t.disabled||Y===!0){if(!M||Y){const ie=Wr(ae(n,$),O);(g.isDirty||y.isDirty)&&(j=r.isDirty,r.isDirty=X.isDirty=!ie||V(),Z=j!==X.isDirty),j=!!ae(r.dirtyFields,$),ie!==r.isDirty?LP(r.dirtyFields,tn(n,s,void 0,o)):ie?dt(r.dirtyFields,$):Ze(r.dirtyFields,$,!0),X.dirtyFields=r.dirtyFields,Z=Z||(g.dirtyFields||y.dirtyFields)&&j!==!ie}if(M){const ie=ae(r.touchedFields,$);ie||(Ze(r.touchedFields,$,M),X.touchedFields=r.touchedFields,Z=Z||(g.touchedFields||y.touchedFields)&&ie!==M)}Z&&q&&b.state.next(X)}return Z?X:{}},L=($,O,M,Y)=>{const q=ae(r.errors,$),Z=(g.isValid||y.isValid)&&Ur(O)&&r.isValid!==O;if(t.delayError&&M?(c[$]=x($,()=>_($,M)),c[$](t.delayError)):(clearTimeout(d[$]),delete c[$],M?Ze(r.errors,$,M):dt(r.errors,$),r.errors={...r.errors}),(M?!Wr(q,M):q)||!Pt(Y)||Z){const j={...Y,...Z&&Ur(O)?{isValid:O}:{},errors:r.errors,name:$};r={...r,...j},b.state.next(j)}},F=async $=>(C($,!0),await t.resolver(s,t.context,AP($||i.mount,o,t.criteriaMode,t.shouldUseNativeValidation))),B=async $=>{const{errors:O}=await F($);if(C($),$){for(const M of $){const Y=ae(O,M);Y?i.array.has(M)&&nt(Y)&&!Object.keys(Y).some(q=>!Number.isNaN(Number(q)))?xy(r.errors,{[M]:Y},M):Ze(r.errors,M,Y):dt(r.errors,M)}r.errors={...r.errors}}else r.errors=O;return O},G=async({name:$,eventType:O})=>{if(e.validate){const M=await e.validate({formValues:s,formState:r,name:$,eventType:O});if(nt(M))for(const Y in M){const q=M[Y];q&&J(`${Su}.${Y}`,{message:Tt(q.message)?q.message:"",type:q.type||Er.validate})}else Tt(M)||!M?J(Su,{message:M||"",type:Er.validate}):ue(Su);return M}return!0},z=async({fields:$,onlyCheckValid:O,name:M,eventType:Y,context:q={valid:!0,runRootValidation:!1}})=>{if(e.validate&&(q.runRootValidation=!0,!await G({name:M,eventType:Y})&&(q.valid=!1,O)))return q.valid;for(const Z in $){const j=$[Z];if(j){const{_f:X,...ie}=j;if(X){const Oe=i.array.has(X.name),qe=j._f&&DP(j._f),Mt=g.validatingFields||g.isValidating||y.validatingFields||y.isValidating;qe&&Mt&&C([X.name],!0);const Pe=await ky(j,i.disabled,s,N,t.shouldUseNativeValidation&&!O,Oe);if(qe&&Mt&&C([X.name]),Pe[X.name]&&(q.valid=!1,O)||(!O&&(ae(Pe,X.name)?Oe?xy(r.errors,Pe,X.name):Ze(r.errors,X.name,Pe[X.name]):dt(r.errors,X.name)),e.shouldUseNativeValidation&&Pe[X.name]))break}!Pt(ie)&&await z({context:q,onlyCheckValid:O,fields:ie,name:Z,eventType:Y})}}return q.valid},H=()=>{for(const $ of i.unMount){const O=ae(o,$);O&&(O._f.refs?O._f.refs.every(M=>!vu(M)):!vu(O._f.ref))&&Re($)}i.unMount=new Set},V=($,O)=>($&&O&&Ze(s,$,O),!Wr(a.mount?s:n,n)),W=($,O,M)=>SP($,i,{...a.mount?s:tt(O)?n:Tt($)?{[$]:O}:O},M,O),pe=$=>Ay(ae(a.mount?s:n,$,t.shouldUnregister?ae(n,$,[]):[])),U=($,O,M={},Y=!1,q=!1)=>{const Z=ae(o,$);let j=O;if(Z){const X=Z._f;X&&(!X.disabled&&Ze(s,$,Gy(O,X)),j=Yl(X.ref)&&$t(O)?"":O,Iy(X.ref)?[...X.ref.options].forEach(ie=>ie.selected=j.includes(ie.value)):X.refs?Cs(X.ref)?X.refs.forEach(ie=>{(!ie.defaultChecked||!ie.disabled)&&(Array.isArray(j)?ie.checked=!!j.find(Oe=>Oe===ie.value):ie.checked=j===ie.value||!!j)}):X.refs.forEach(ie=>ie.checked=ie.value===j):Wl(X.ref)?X.ref.value="":(X.ref.value=j,!X.ref.type&&!q&&b.state.next({name:$,values:Y?s:at(s)})))}(M.shouldDirty||M.shouldTouch)&&T($,j,M.shouldTouch,M.shouldDirty,!q),M.shouldValidate&&re($,{delayError:M.delayError})},Q=($,O,M,Y=!1,q=!1)=>{i.array.has($)&&b.array.next({name:$,values:Y?s:at(s)});for(const Z in O){if(!O.hasOwnProperty(Z))return;const j=O[Z],X=$+"."+Z,ie=ae(o,X);(i.array.has($)||nt(j)||ie&&!ie._f)&&!No(j)?Q(X,j,M,Y,q):U(X,j,M,Y,q)}},Ce=($,O,M,Y,q=!1)=>{const Z=ae(o,$),j=i.array.has($),X=Y?O:at(O),ie=ae(s,$),Oe=Wr(ie,X);if(Oe||Ze(s,$,X),j)b.array.next({name:$,values:Y?s:at(s)}),(g.isDirty||g.dirtyFields||y.isDirty||y.dirtyFields)&&M.shouldDirty&&(E(),q||b.state.next({name:$,dirtyFields:r.dirtyFields,isDirty:V($,X)}));else{const qe=Array.isArray(X)&&!X.length||Pt(X);!Z||Z._f||$t(X)||qe?U($,X,M,Y,q):Q($,X,M,Y,q)}if(!Oe&&!q){const qe=mu($,i),Mt=Y?s:at(s);b.state.next({...qe&&r,name:a.mount||qe?$:void 0,values:Mt})}},oe=($,O,M={})=>Ce($,O,M,!1),ye=($,O={})=>{const M=ur($)?$(s):$;if(!Wr(s,M)){s={...s,...M};const Y=Dy(M);for(const q of i.mount)q in Y&&Ce(q,Y[q],O,!0,!0);b.state.next({...r,name:void 0,type:void 0,...p?{values:s}:{}}),O.shouldValidate&&w()}},R=async $=>{a.mount=!0;const O=$.target;let M=O.name,Y=!0;const q=ae(o,M),Z=j=>{Y=Number.isNaN(j)||No(j)&&isNaN(j.getTime())||Wr(j,ae(s,M,j))};if(q){let j,X;const ie=O.type?zy(q._f):gP($),Oe=$.type===En.BLUR||$.type===En.FOCUS_OUT,qe=!$P(q._f)&&!e.validate&&!t.resolver&&!ae(r.errors,M)&&!q._f.deps,Mt=qe||IP(Oe,ae(r.touchedFields,M),r.isSubmitted,f,u),Pe=mu(M,i,Oe);if(Ze(s,M,ie),Oe){if(!O||!O.readOnly){q._f.onBlur&&q._f.onBlur($);const _r=c[M];_r&&_r(0)}}else q._f.onChange&&q._f.onChange($);const et=T(M,ie,Oe),lt=!Pt(et)||Pe;if(!Oe&&b.state.next({name:M,type:$.type,...p?{values:at(s)}:{}}),Mt)return(!qe||!r.isValid)&&(g.isValid||y.isValid)&&(t.mode==="onBlur"?Oe&&w():Oe||w()),lt&&b.state.next({name:M,...Pe?{}:et});if(!t.resolver&&e.validate&&await G({name:M,eventType:$.type}),!Oe&&Pe&&b.state.next({...r}),t.resolver){const{errors:_r}=await F([M]);if(C([M]),Z(ie),!Y){!Pt(et)&&b.state.next(et);return}const kn=Uy(r.errors,o,M),pr=Uy(_r,o,kn.name||M);j=pr.error,M=pr.name,X=Pt(_r)}else C([M],!0),j=(await ky(q,i.disabled,s,N,t.shouldUseNativeValidation))[M],C([M]),Z(ie),Y&&(j?X=!1:(g.isValid||y.isValid)&&(X=await z({fields:o,onlyCheckValid:!0,name:M,eventType:$.type})));Y&&(q._f.deps&&(!Array.isArray(q._f.deps)||q._f.deps.length>0)&&re(q._f.deps),L(M,X,j,et))}},ce=($,O)=>{if(ae(r.errors,O)&&$.focus)return $.focus(),1},re=async($,O={})=>{let M,Y;const q=Kl($);if(t.resolver){const Z=await B(tt($)?$:q);M=Pt(Z),Y=$?!q.some(j=>ae(Z,j)):M}else $?(Y=(await Promise.all(q.map(async Z=>{const j=ae(o,Z);return await z({fields:j&&j._f?{[Z]:j}:j,eventType:En.TRIGGER})}))).every(Boolean),!(!Y&&!r.isValid)&&w()):Y=M=await z({fields:o,name:$,eventType:En.TRIGGER});if(O.delayError&&t.delayError&&Tt($)){const Z=ae(r.errors,$);Z?(dt(r.errors,$),c[$]=x($,()=>_($,Z)),c[$](t.delayError)):(clearTimeout(d[$]),delete c[$])}return b.state.next({...!Tt($)||(g.isValid||y.isValid)&&M!==r.isValid?{}:{name:$},...t.resolver||!$?{isValid:M}:{},errors:r.errors}),O.shouldFocus&&!Y&&_s(o,ce,$?q:i.mount),Y},Ae=($,O)=>{let M={...a.mount?s:n};return O&&(M=Py(O.dirtyFields?r.dirtyFields:r.touchedFields,M)),tt($)?M:Tt($)?ae(M,$):$.map(Y=>ae(M,Y))},we=($,O)=>({invalid:!!ae((O||r).errors,$),isDirty:!!ae((O||r).dirtyFields,$),error:ae((O||r).errors,$),isValidating:!!ae(r.validatingFields,$),isTouched:!!ae((O||r).touchedFields,$)}),ue=$=>{const O=$?Kl($):void 0;O==null||O.forEach(M=>dt(r.errors,M)),O?O.forEach(M=>{b.state.next({name:M,errors:r.errors})}):(r.errors={},b.state.next({errors:r.errors}))},J=($,O,M)=>{const Y=(ae(o,$,{_f:{}})._f||{}).ref,q=ae(r.errors,$)||{},{ref:Z,message:j,type:X,...ie}=q;Ze(r.errors,$,{...ie,...O,ref:Y}),b.state.next({name:$,errors:r.errors,isValid:!1}),M&&M.shouldFocus&&Y&&Y.focus&&Y.focus()},ne=($,O)=>{if(ur($)){p++;const{unsubscribe:M}=b.state.subscribe({next:q=>"values"in q&&$(q.values||W(void 0,O),q)});let Y=!1;return{unsubscribe:()=>{Y||(Y=!0,p--,M())}}}return W($,O,!0)},fe=$=>{var O;const M=!!(!((O=$.formState)===null||O===void 0)&&O.values);M&&p++;const{unsubscribe:Y}=b.state.subscribe({next:Z=>{if(PP($.name,Z.name,$.exact)&&TP(Z,$.formState||g,Et,$.reRenderRoot)){const j={...s};$.callback({values:j,...r,...Z,defaultValues:n})}}});if(!M)return Y;let q=!1;return()=>{q||(q=!0,p--,Y())}},ke=$=>(a.mount=!0,y={...y,...$.formState},fe({...$,formState:{...h,...$.formState}})),Re=($,O={})=>{for(const M of $?Kl($):i.mount)i.mount.delete(M),i.array.delete(M),O.keepValue||(dt(o,M),dt(s,M)),!O.keepError&&dt(r.errors,M),!O.keepDirty&&dt(r.dirtyFields,M),!O.keepTouched&&dt(r.touchedFields,M),!O.keepIsValidating&&dt(r.validatingFields,M),!t.shouldUnregister&&!O.keepDefaultValue&&dt(n,M);b.state.next({values:at(s)}),b.state.next({...r,...O.keepDirty?{isDirty:V()}:{}}),!O.keepIsValid&&w()},rt=({disabled:$,name:O})=>{if(Ur($)&&a.mount||$||i.disabled.has(O)){const q=i.disabled.has(O)!==!!$;$?i.disabled.add(O):i.disabled.delete(O),q&&a.mount&&!a.action&&w()}},st=($,O={})=>{let M=ae(o,$);const Y=Ur(O.disabled)||Ur(t.disabled),q=!i.registerName.has($)&&M&&M._f&&!M._f.mount;return Ze(o,$,{...M||{},_f:{...M&&M._f?M._f:{ref:{name:$}},name:$,mount:!0,...O}}),i.mount.add($),M&&!q?rt({disabled:Ur(O.disabled)?O.disabled:t.disabled,name:$}):I($,!0,O.value),{...Y?{disabled:O.disabled||t.disabled}:{},...t.progressive?{required:!!O.required,min:ks(O.min),max:ks(O.max),minLength:ks(O.minLength),maxLength:ks(O.maxLength),pattern:ks(O.pattern)}:{},name:$,onChange:R,onBlur:R,ref:Z=>{if(Z){i.registerName.add($),st($,O),i.registerName.delete($),M=ae(o,$);const j=tt(Z.value)&&Z.querySelectorAll&&Z.querySelectorAll("input,select,textarea")[0]||Z,X=_P(j),ie=M._f.refs||[];if(X?ie.find(qe=>qe===j):j===M._f.ref)return;const Oe={...M._f};X?(Oe.refs=[...ie.filter(vu),j,...Array.isArray(ae(n,$))?[{}]:[]],Oe.ref={type:j.type,name:$}):(Oe.ref=j,delete Oe.refs),Ze(o,$,{_f:Oe}),I($,!1,void 0,j)}else M=ae(o,$,{}),M._f&&(M._f.mount=!1),(t.shouldUnregister||O.shouldUnregister)&&!(bP(i.array,$)&&a.action)&&i.unMount.add($)}}},Xe=()=>t.shouldFocusError&&!t.shouldUseNativeValidation&&_s(o,ce,i.mount),Ee=$=>{Ur($)&&(b.state.next({disabled:$}),_s(o,(O,M)=>{const Y=ae(o,M);Y&&(O.disabled=Y._f.disabled||$,Array.isArray(Y._f.refs)&&Y._f.refs.forEach(q=>{q.disabled=Y._f.disabled||$}))},0,!1))},yt=($,O)=>async M=>{let Y,q;M&&(M.preventDefault&&M.preventDefault(),M.persist&&M.persist());let Z=at(s);if(b.state.next({isSubmitting:!0}),t.resolver){const{errors:j,values:X}=await F();C(),r.errors=j,Z=at(X)}else await z({fields:o,eventType:En.SUBMIT});if(i.disabled.size)for(const j of i.disabled)dt(Z,j);if(dt(r.errors,by),Pt(r.errors)){b.state.next({errors:{}});try{Y=await $(Z,M)}catch(j){q=j}}else O&&await O({...r.errors},M),Xe(),setTimeout(Xe);if(b.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:Pt(r.errors)&&!q,submitCount:r.submitCount+1,errors:r.errors}),q)throw q;return Y},fr=($,O={})=>{ae(o,$)&&(tt(O.defaultValue)?oe($,at(ae(n,$))):(oe($,O.defaultValue),Ze(n,$,at(O.defaultValue))),O.keepTouched||dt(r.touchedFields,$),O.keepDirty||(dt(r.dirtyFields,$),r.isDirty=O.defaultValue?V($,at(ae(n,$))):V()),O.keepError||(dt(r.errors,$),g.isValid&&w()),b.state.next({...r}))},Yt=($,O={})=>{const M=$?at($):n,Y=at(M),q=Pt($),Z=Y,j=o;if(O.keepDefaultValues||(n=M),!O.keepValues){if(O.keepDirtyValues){const X=new Set([...i.mount,...My(tn(n,s,void 0,j),r.dirtyFields)]);for(const ie of Array.from(X)){const Oe=ae(r.dirtyFields,ie),qe=ae(s,ie),Mt=ae(Z,ie);Oe&&!tt(qe)?Ze(Z,ie,qe):!Oe&&!tt(Mt)&&oe(ie,Mt)}}else{if(Hl&&tt($))for(const X of i.mount){const ie=ae(o,X);if(ie&&ie._f){const Oe=Array.isArray(ie._f.refs)?ie._f.refs[0]:ie._f.ref;if(Yl(Oe)){const qe=Oe.closest("form");if(qe){qe.reset();break}}}}if(O.keepFieldsRef)for(const X of i.mount)oe(X,ae(Z,X));else o={}}if(t.shouldUnregister){if(s=O.keepDefaultValues?at(n):{},O.keepFieldsRef)for(const X of i.mount)Ze(s,X,ae(Z,X))}else s=at(Z);b.array.next({values:{...Z}}),b.state.next({name:void 0,type:void 0,values:{...Z}})}i={mount:O.keepDirtyValues?i.mount:new Set,unMount:new Set,array:new Set,registerName:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},a.mount=!g.isValid||!!O.keepIsValid||!!O.keepDirtyValues||!t.shouldUnregister&&!Pt(Z),a.watch=!!t.shouldUnregister,a.keepIsValid=!!O.keepIsValid,a.action=!1,O.keepErrors||(r.errors={}),b.state.next({submitCount:O.keepSubmitCount?r.submitCount:0,isDirty:q?!1:O.keepDirty?r.isDirty:O.keepValues?V():!!(O.keepDefaultValues&&!Wr($,n)),isSubmitted:O.keepIsSubmitted?r.isSubmitted:!1,dirtyFields:q?{}:O.keepDirtyValues?O.keepDefaultValues&&s?tn(n,s,void 0,j):r.dirtyFields:O.keepDefaultValues&&$?tn(n,$,void 0,j):O.keepDirty?r.dirtyFields:{},touchedFields:O.keepTouched?r.touchedFields:{},errors:O.keepErrors?r.errors:{},isSubmitSuccessful:O.keepIsSubmitSuccessful?r.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:n})},It=($,O)=>Yt(ur($)?$(s):$,{...t.resetOptions,...O}),Me=($,O={})=>{const M=ae(o,$),Y=M&&M._f;if(Y){const q=Y.refs?Y.refs[0]:Y.ref;q.focus&&setTimeout(()=>{q.focus(),O.shouldSelect&&ur(q.select)&&q.select()})}},Et=$=>{const{name:O,type:M,values:Y,...q}=$;r={...r,...q}},rr={control:{register:st,unregister:Re,getFieldState:we,handleSubmit:yt,setError:J,_subscribe:fe,_runSchema:F,_updateIsValidating:C,_focusError:Xe,_getWatch:W,_getDirty:V,_setValid:w,_setFieldArray:k,_setDisabledField:rt,_setErrors:D,_getFieldArray:pe,_reset:Yt,_resetDefaultValues:()=>ur(t.defaultValues)&&t.defaultValues().then($=>{It($,t.resetOptions),b.state.next({isLoading:!1})}),_removeUnmounted:H,_disableForm:Ee,_subjects:b,_proxyFormState:g,get _fields(){return o},get _formValues(){return s},get _state(){return a},set _state($){a=$},get _defaultValues(){return n},get _names(){return i},set _names($){i=$},get _formState(){return r},get _options(){return t},set _options($){t={...t,...$},u=ql(t.mode),f=ql(t.reValidateMode)}},subscribe:ke,trigger:re,register:st,handleSubmit:yt,watch:ne,setValue:oe,setValues:ye,getValues:Ae,reset:It,resetField:fr,resetDefaultValues:($,O={})=>{if(n=at($),!O.keepDirty){const M=tn(n,s,void 0,o);r.dirtyFields=M,r.isDirty=!Pt(M)}O.keepIsValid||w(),b.state.next({...r,defaultValues:n})},clearErrors:ue,unregister:Re,setError:J,setFocus:Me,getFieldState:we};return{...rr,formControl:rr}}function Hy(e={}){const t=P.useRef(void 0),r=P.useRef(void 0),o=P.useRef(e.formControl),[n,s]=P.useState(()=>({...at(Wy),isLoading:ur(e.defaultValues),errors:e.errors||{},disabled:e.disabled||!1,defaultValues:ur(e.defaultValues)?void 0:e.defaultValues}));if(!t.current||e.formControl&&o.current!==e.formControl)if(o.current=e.formControl,e.formControl)t.current={...e.formControl,formState:n},e.defaultValues&&!ur(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{const{formControl:i,...c}=FP(e);t.current={...c,formState:n}}const a=t.current.control;return a._options=e,wP(()=>{const i=a._subscribe({formState:a._proxyFormState,callback:()=>s({...a._formState,defaultValues:a._defaultValues}),reRenderRoot:!0});return s(c=>({...c,isReady:!0})),a._formState.isReady=!0,i},[a]),P.useEffect(()=>a._disableForm(e.disabled),[a,e.disabled]),P.useEffect(()=>{e.mode&&(a._options.mode=e.mode),e.reValidateMode&&(a._options.reValidateMode=e.reValidateMode)},[a,e.mode,e.reValidateMode]),P.useEffect(()=>{e.errors&&(a._setErrors(e.errors),a._focusError())},[a,e.errors]),P.useEffect(()=>{e.shouldUnregister&&a._subjects.state.next({values:a._getWatch()})},[a,e.shouldUnregister]),P.useEffect(()=>{if(a._proxyFormState.isDirty){const i=a._getDirty();i!==n.isDirty&&a._subjects.state.next({isDirty:i})}},[a,n.isDirty]),P.useEffect(()=>{var i;e.values&&!Wr(e.values,r.current)?(a._reset(e.values,{keepFieldsRef:!0,...a._options.resetOptions}),!((i=a._options.resetOptions)===null||i===void 0)&&i.keepIsValid||a._setValid(),r.current=e.values,s(c=>({...c}))):a._resetDefaultValues()},[a,e.values]),P.useEffect(()=>{a._state.mount||(a._setValid(),a._state.mount=!0),a._state.watch&&(a._state.watch=!1,a._subjects.state.next({...a._formState})),a._removeUnmounted()}),t.current.formState=P.useMemo(()=>xP(n,a),[a,n]),t.current}function jy(e){return["divider","paragraph","heading","link","image"].includes(e.type)?"layout":["submit","button"].includes(e.type)?"action":["pages","group","repeatGroup"].includes(e.type)?"container":"field"}function qy(e,t){var s,a;const r=[],o=new Map,n=new Map;for(const i of t){const c=((s=i.attributes)==null?void 0:s.name)||i.id;o.set(c,i),n.set(i.id,i)}for(const[i,c]of Object.entries(e)){const d=o.get(i);if(d){if(d.parentId){const u=n.get(d.parentId);if(u&&(u.type==="repeatGroup"||u.type==="repeatElement")&&e[((a=u.attributes)==null?void 0:a.name)||u.id]!==void 0)continue}const p=jy(d);if(p==="layout"||p==="action")continue;r.push({id:i,value:c,type:d.type,category:p})}else r.push({id:i,value:c,type:"unknown",category:"field"})}return r}function Nu(e,t,r="keyValue"){return r==="array"?qy(e,t):e}function VP(e,t){var s,a;const r={},o=new Map,n=new Map;for(const i of t){const c=((s=i.attributes)==null?void 0:s.name)||i.id;o.set(c,i),n.set(i.id,i)}for(const[i,c]of Object.entries(e)){const d=o.get(i);if(d){if(d.parentId){const u=n.get(d.parentId);if(u&&(u.type==="repeatGroup"||u.type==="repeatElement")&&e[((a=u.attributes)==null?void 0:a.name)||u.id]!==void 0)continue}const p=jy(d);(p==="field"||p==="container")&&(r[i]=c)}else r[i]=c}return r}const GP=({currentPage:e,totalPages:t,pages:r,showStepNumbers:o,onPageClick:n})=>{const s=(e+1)/t*100;return l.jsxs("div",{className:m("mb-8"),children:[l.jsx("div",{className:m("h-2 bg-gray-200 rounded-full overflow-hidden"),children:l.jsx("div",{className:m("h-full bg-blue-600 transition-all duration-300 ease-out"),style:{width:`${s}%`}})}),o&&l.jsx("div",{className:m("flex justify-between mt-4"),children:r.map((a,i)=>{const c=i<e,d=i===e;return l.jsxs("button",{type:"button",onClick:()=>n==null?void 0:n(i),disabled:i>e,className:m(`flex flex-col items-center ${n&&i<=e?"cursor-pointer":"cursor-default"}`),children:[l.jsx("div",{className:m(`w-8 h-8 rounded-full flex items-center justify-center text-sm font-medium transition-colors ${c?"bg-blue-600 text-white":d?"bg-blue-600 text-white ring-4 ring-blue-100":"bg-gray-200 text-gray-500"}`),children:c?l.jsx("svg",{className:m("w-4 h-4"),fill:"currentColor",viewBox:"0 0 20 20",children:l.jsx("path",{fillRule:"evenodd",d:"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z",clipRule:"evenodd"})}):i+1}),l.jsx("span",{className:m(`mt-2 text-xs font-medium ${d?"text-blue-600":"text-gray-500"}`),children:a.title})]},a.id)})})]})},zP=({page:e,pageIndex:t,totalPages:r})=>l.jsxs("div",{className:m("mb-6"),children:[l.jsxs("div",{className:m("flex items-center justify-between mb-2"),children:[l.jsx("h2",{className:m("text-xl font-semibold text-gray-900"),children:e.title}),l.jsxs("span",{className:m("text-sm text-gray-500"),children:["Step ",t+1," of ",r]})]}),e.description&&l.jsx("p",{className:m("text-gray-600"),children:e.description})]}),BP=({currentPage:e,totalPages:t,allowSkip:r,isSubmitting:o,nextButtonLabel:n,onPrevious:s,onNext:a,onSkip:i})=>{const c=e===0,d=e===t-1;return l.jsxs("div",{className:m("flex items-center justify-between mt-8 pt-6 border-t border-gray-200"),children:[l.jsx("div",{children:!c&&l.jsx("button",{type:"button",onClick:s,className:m("px-4 py-2 text-sm font-medium text-gray-700 bg-white border border-gray-300 rounded-md hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-blue-500"),children:"← Previous"})}),l.jsxs("div",{className:m("flex gap-3"),children:[r&&!d&&l.jsx("button",{type:"button",onClick:i,className:m("px-4 py-2 text-sm font-medium text-gray-500 hover:text-gray-700"),children:"Skip"}),d?l.jsx("button",{type:"submit",disabled:o,className:m("px-6 py-2 text-sm font-medium text-white bg-blue-600 rounded-md hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 disabled:opacity-50 disabled:cursor-not-allowed"),children:o?"Submitting...":"Submit"}):l.jsxs("button",{type:"button",onClick:a,className:m("px-6 py-2 text-sm font-medium text-white bg-blue-600 rounded-md hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500"),children:[n," →"]})]})]})},Yy=({element:e,elements:t})=>{const{setValue:r,watch:o,register:n,unregister:s}=yu(),a=o(),{visible:i,required:c,disabled:d}=P.useMemo(()=>Vb(e,a,t),[e,a,t]),p=e.attributes.name;if(P.useEffect(()=>{var C,E,k,_,D,A;if(p){if(!i){s(p,{keepValue:!0});return}return n(p,{required:c?((C=e.validation)==null?void 0:C.errorMessage)||"This field is required":void 0,minLength:(E=e.validation)==null?void 0:E.minLength,maxLength:(k=e.validation)==null?void 0:k.maxLength,min:(_=e.validation)==null?void 0:_.min,max:(D=e.validation)==null?void 0:D.max,pattern:WP((A=e.validation)==null?void 0:A.pattern),disabled:d||e.properties.disabled||void 0}),()=>s(p,{keepValue:!0})}},[p,i,c,d,e.validation,e.properties.disabled,n,s]),!i)return null;const u=o(p),f=d||e.properties.disabled||!1,h={small:"max-w-xs",medium:"max-w-md",large:"max-w-lg",full:"w-full",default:"max-w-md"},g=h[e.layout.size||"default"]||h.default,y=ut.get(e.type),b=(C,E)=>{const k=t.filter(_=>_.parentId===C).sort((_,D)=>_.order-D.order);return l.jsx("div",{className:m("space-y-4"),children:k.map(_=>l.jsx(Yy,{element:{..._,attributes:{..._.attributes,name:E?`${E}.${_.attributes.name}`:_.attributes.name}},elements:t},_.id))})},v={element:e,properties:e.properties,layout:e.layout,validation:{...e.validation,required:c},logic:e.logic,config:e.config,mode:"render",value:u,onChange:C=>r(p,C),errors:[],formValues:a,readOnly:!1,disabled:f,allElements:t,renderChildren:b},N=()=>y!=null&&y.render?y.render(v):l.jsxs("div",{className:m("p-3 bg-yellow-50 border border-yellow-200 rounded-md text-sm text-yellow-700"),children:[l.jsxs("p",{className:m("font-medium"),children:["Unknown element type: ",e.type]}),l.jsxs("p",{className:m("text-xs mt-1"),children:["This element is not registered in the element registry. Please register it using ",l.jsx("code",{children:"registerElement()"}),"."]})]});return(y==null?void 0:y.structure)==="page"&&["heading","layout","special"].includes(y.subCategory||"")||["paragraph","image","link","formHeading","sectionHeading","subheading","divider","spacer","captcha","submit"].includes(e.type)?l.jsx("div",{className:m(g,"mb-4"),children:N()}):l.jsx("div",{className:m(g,"mb-4"),children:N()})};function UP(e){var o,n,s;if(e.attributes.defaultValue!==void 0)return e.attributes.defaultValue;const t=ut.get(e.type);switch(t==null?void 0:t.dataType){case"array":return[];case"boolean":return!1;case"number":return((o=e.config)==null?void 0:o.min)??0;case"object":return e.type==="rangeSlider"?[((n=e.config)==null?void 0:n.min)??0,((s=e.config)==null?void 0:s.max)??100]:e.type==="dateRange"?{start:"",end:""}:{};default:return""}}function WP(e){if(e)try{return new RegExp(e)}catch{return}}function HP(e){const t={};return e.forEach(r=>{var o;(o=r.attributes)!=null&&o.name&&(t[r.attributes.name]=UP(r))}),t}function jP(e,t){const r=[],o=n=>{var s;for(const a of n)(s=a.attributes)!=null&&s.name&&r.push(a.attributes.name),o(t.filter(i=>i.parentId===a.id))};return o(e),r}const Cu=({schema:e,onSubmit:t,initialValues:r,onPageChange:o,submissionFormat:n="keyValue",debug:s=!1})=>{const[a,i]=P.useState(0),[c,d]=P.useState(!1),[p,u]=P.useState(null),f=P.useMemo(()=>e.elements.find(I=>I.type==="pages"),[e.elements]),h=P.useMemo(()=>{var I,T,L,F,B,G;return{showProgressBar:((I=f==null?void 0:f.config)==null?void 0:I.showProgressBar)??!0,showStepNumbers:((T=f==null?void 0:f.config)==null?void 0:T.showStepNumbers)??!0,allowSkip:((L=f==null?void 0:f.config)==null?void 0:L.allowSkip)??!1,validateOnNext:((F=f==null?void 0:f.config)==null?void 0:F.validateOnNext)??!0,nextButtonLabel:((B=f==null?void 0:f.config)==null?void 0:B.nextButtonLabel)??"Next",steps:((G=f==null?void 0:f.config)==null?void 0:G.steps)||[{id:"step1",label:"Step 1"}]}},[f]),g=P.useMemo(()=>f?h.steps.map(T=>{const L=e.elements.filter(F=>{var B;return F.parentId===`${f.id}:${T.id}`||F.parentId===f.id&&((B=F.config)==null?void 0:B.wizardStepId)===T.id});return{id:T.id,title:T.label,description:T.description,elements:L.sort((F,B)=>F.order-B.order)}}):[],[f,h.steps,e.elements]),y=P.useMemo(()=>e.elements.filter(I=>I.type!=="pages"),[e.elements]),b=P.useMemo(()=>r||HP(y),[r,y]),v=Hy({defaultValues:b,mode:"onChange"}),{handleSubmit:N,trigger:x}=v,w=P.useCallback(I=>{I>=0&&I<g.length&&(i(I),o==null||o(I))},[g.length,o]),C=P.useCallback(()=>{w(a-1)},[a,w]),E=P.useCallback(async()=>{if(h.validateOnNext){const I=jP(g[a].elements,e.elements);if(!await x(I))return}w(a+1)},[a,h.validateOnNext,g,e.elements,x,w]),k=P.useCallback(()=>{w(a+1)},[a,w]),_=P.useCallback(async I=>{d(!0);try{const T=Nu(I,e.elements,n);console.log("Wizard form submitted:",T),s?u(T):await(t==null?void 0:t(T))}catch(T){console.error("Form submission error:",T)}finally{d(!1)}},[t,e.elements,n,s]),D=P.useCallback(I=>{if(a<g.length-1){I.preventDefault(),E();return}N(_)(I)},[a,g.length,E,N,_]),A=g[a];return A?l.jsxs("div",{className:m("max-w-3xl mx-auto"),children:[l.jsx($y,{...v,children:l.jsxs("form",{onSubmit:D,className:m("space-y-1"),children:[h.showProgressBar&&l.jsx(GP,{currentPage:a,totalPages:g.length,pages:g,showStepNumbers:h.showStepNumbers,onPageClick:h.allowSkip?w:void 0}),l.jsx(zP,{page:A,pageIndex:a,totalPages:g.length}),l.jsx("div",{className:m("space-y-4"),children:A.elements.map(I=>l.jsx(Yy,{element:I,elements:e.elements},I.id))}),l.jsx(BP,{currentPage:a,totalPages:g.length,allowSkip:h.allowSkip,isSubmitting:c,nextButtonLabel:h.nextButtonLabel,onPrevious:C,onNext:E,onSkip:k})]})}),s&&p&&l.jsxs("div",{className:m("mt-8 p-4 bg-green-50 border border-green-200 rounded-lg"),children:[l.jsx("h3",{className:m("text-lg font-medium text-green-800 mb-2"),children:"Submitted Data:"}),l.jsx("pre",{className:m("text-sm text-green-700 overflow-x-auto"),children:JSON.stringify(p,null,2)})]})]}):l.jsxs("div",{className:m("p-8 text-center text-gray-500"),children:[l.jsx("p",{children:"No wizard steps configured."}),l.jsx("p",{className:m("text-sm mt-2"),children:"Add steps to the wizard element to create a multi-page form."})]})};function qP(e){var o,n,s;if(e.attributes.defaultValue!==void 0)return e.attributes.defaultValue;const t=ut.get(e.type);switch(t==null?void 0:t.dataType){case"array":return[];case"boolean":return!1;case"number":return((o=e.config)==null?void 0:o.min)??0;case"object":return e.type==="rangeSlider"?[((n=e.config)==null?void 0:n.min)??0,((s=e.config)==null?void 0:s.max)??100]:e.type==="dateRange"?{start:"",end:""}:{};default:return""}}function YP(e){const t={};return e.forEach(r=>{var o;(o=r.attributes)!=null&&o.name&&(t[r.attributes.name]=qP(r))}),t}const Qy=({element:e,elements:t})=>{const{watch:r}=yu(),o=r(),{visible:n,required:s,disabled:a}=P.useMemo(()=>Vb(e,o,t),[e,o,t]);return n?l.jsx(QP,{element:e,elements:t,dynamicRequired:s,dynamicDisabled:a}):null},QP=({element:e,elements:t,dynamicRequired:r,dynamicDisabled:o})=>{const{setValue:n,watch:s}=yu(),a=e.attributes.name,i=s(a),c=o||e.properties.disabled||!1,d=r,p={small:"max-w-xs",medium:"max-w-md",large:"max-w-lg",full:"w-full",default:"max-w-md"},u=p[e.layout.size||"default"]||p.default,f=ut.get(e.type),h=(N,x)=>{const w=t.filter(C=>C.parentId===N).sort((C,E)=>C.order-E.order);return l.jsx("div",{className:m("space-y-4"),children:w.map(C=>l.jsx(Qy,{element:{...C,attributes:{...C.attributes,name:x?`${x}.${C.attributes.name}`:C.attributes.name}},elements:t},C.id))})},g={element:e,properties:e.properties,layout:e.layout,validation:{...e.validation,required:d},logic:e.logic,config:e.config,mode:"render",value:i,onChange:N=>n(a,N),errors:[],formValues:s(),readOnly:!1,disabled:c,allElements:t,renderChildren:h},y=()=>f!=null&&f.render?f.render(g):l.jsxs("div",{className:m("p-3 bg-yellow-50 border border-yellow-200 rounded-md text-sm text-yellow-700"),children:[l.jsxs("p",{className:m("font-medium"),children:["Unknown element type: ",e.type]}),l.jsxs("p",{className:m("text-xs mt-1"),children:["This element is not registered in the element registry. Please register it using ",l.jsx("code",{children:"registerElement()"}),"."]})]});return(f==null?void 0:f.structure)==="page"&&["heading","layout","special"].includes(f.subCategory||"")||["paragraph","image","link","formHeading","sectionHeading","subheading","divider","spacer","captcha","submit"].includes(e.type)?l.jsx("div",{className:m(u,"mb-4"),children:y()}):l.jsx("div",{className:m(u,"mb-4"),children:y()})},Ky=({schema:e,onSubmit:t,initialValues:r,submissionFormat:o="keyValue",debug:n=!1})=>{const[s,a]=P.useState(null);if(P.useMemo(()=>e.elements.some(h=>h.type==="pages"),[e.elements]))return l.jsx(Cu,{schema:e,onSubmit:t,initialValues:r,submissionFormat:o,debug:n});const c=P.useMemo(()=>e.elements.filter(h=>!h.parentId),[e.elements]),d=P.useMemo(()=>r||YP(c),[r,c]),p=Hy({defaultValues:d,mode:"onChange"}),u=P.useCallback(h=>{const g=Nu(h,e.elements,o);console.log("Form submitted:",g),n?a(g):t==null||t(g)},[t,e.elements,o,n]),f=P.useMemo(()=>[...c].sort((h,g)=>h.order-g.order),[c]);return l.jsxs("div",{className:m("max-w-3xl mx-auto"),children:[l.jsx($y,{...p,children:l.jsxs("form",{onSubmit:p.handleSubmit(u),className:m("space-y-1"),children:[l.jsx("div",{className:m(""),children:e.description&&l.jsx("p",{className:m("mt-2 text-gray-600"),children:e.description})}),l.jsx("div",{className:m("space-y-4"),children:f.map(h=>l.jsx(Qy,{element:h,elements:e.elements},h.id))})]})}),n&&s&&l.jsxs("div",{className:m("mt-8 p-4 bg-green-50 border border-green-200 rounded-lg"),children:[l.jsx("h3",{className:m("text-lg font-medium text-green-800 mb-2"),children:"Submitted Data:"}),l.jsx("pre",{className:m("text-sm text-green-700 overflow-x-auto"),children:JSON.stringify(s,null,2)})]})]})},Ry=S.forwardRef(({className:e,...t},r)=>l.jsx("div",{ref:r,className:m("rounded-xl border bg-card text-card-foreground shadow",e),...t}));Ry.displayName="Card";const KP=S.forwardRef(({className:e,...t},r)=>l.jsx("div",{ref:r,className:m("flex flex-col space-y-1.5 p-6",e),...t}));KP.displayName="CardHeader";const RP=S.forwardRef(({className:e,...t},r)=>l.jsx("div",{ref:r,className:m("font-semibold leading-none tracking-tight",e),...t}));RP.displayName="CardTitle";const XP=S.forwardRef(({className:e,...t},r)=>l.jsx("div",{ref:r,className:m("text-sm text-muted-foreground",e),...t}));XP.displayName="CardDescription";const Xy=S.forwardRef(({className:e,...t},r)=>l.jsx("div",{ref:r,className:m("p-6 pt-0",e),...t}));Xy.displayName="CardContent";const JP=S.forwardRef(({className:e,...t},r)=>l.jsx("div",{ref:r,className:m("flex items-center p-6 pt-0",e),...t}));JP.displayName="CardFooter";const ZP=Ma("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),Jy=S.forwardRef(({className:e,variant:t,...r},o)=>l.jsx("div",{ref:o,role:"alert",className:m(ZP({variant:t}),e),...r}));Jy.displayName="Alert";const Zy=S.forwardRef(({className:e,...t},r)=>l.jsx("h5",{ref:r,className:m("mb-1 font-medium leading-none tracking-tight",e),...t}));Zy.displayName="AlertTitle";const ev=S.forwardRef(({className:e,...t},r)=>l.jsx("div",{ref:r,className:m("text-sm [&_p]:leading-relaxed",e),...t}));ev.displayName="AlertDescription";const eI={id:"design",label:"Design Mode",icon:gE,order:0,keyboardShortcut:"d",description:"Edit your form layout and properties",renderContent:(e,t)=>l.jsxs(l.Fragment,{children:[t==null?void 0:t.ElementSidebar,t==null?void 0:t.Canvas,t==null?void 0:t.PropertyPanel]})},tI={id:"preview",label:"Preview Mode",icon:bh,order:10,keyboardShortcut:"p",description:"Preview your form as an end user",renderContent:(e,t)=>{const{schema:r,setMode:o,submissionFormat:n,onSubmit:s}=e,a=r.elements.some(c=>c.type==="pages"),i=c=>{console.log("Form submitted:",c),s==null||s(c)};return l.jsx("div",{className:m("flex-1 overflow-y-auto bg-muted/30"),children:l.jsxs("div",{className:m("py-8 px-4"),children:[l.jsx("div",{className:m("max-w-3xl mx-auto mb-6"),children:l.jsxs("div",{className:m("flex items-center justify-between"),children:[l.jsxs("div",{className:m("flex items-center gap-2 text-sm text-muted-foreground"),children:[l.jsx(bh,{className:m("h-4","w-4")}),l.jsx("span",{children:"Preview Mode"}),a&&l.jsx(vc,{variant:"secondary",children:"Wizard Form"})]}),l.jsxs(Je,{variant:"ghost",size:"sm",onClick:()=>o("design"),children:[l.jsx(fE,{className:m("h-4","w-4","mr-1")}),"Back to Editor"]})]})}),l.jsx(Ry,{className:m("max-w-3xl mx-auto"),children:l.jsx(Xy,{className:m("p-8"),children:r.elements.length===0?l.jsxs("div",{className:m("text-center py-12 text-muted-foreground"),children:[l.jsx(mE,{className:m("h-12","w-12","mx-auto","mb-4","text-muted-foreground/50")}),l.jsx("p",{className:m("text-lg font-medium mb-2"),children:"No elements to preview"}),l.jsx("p",{className:m("text-sm"),children:"Switch to Design mode and add some elements to your form."})]}):a?l.jsx(Cu,{schema:r,onSubmit:i,submissionFormat:n}):l.jsx(Ky,{schema:r,onSubmit:i,submissionFormat:n})})}),r.elements.some(c=>c.logic)&&l.jsx("div",{className:m("max-w-3xl mx-auto mt-6"),children:l.jsxs(Jy,{children:[l.jsx(yh,{className:m("h-4","w-4")}),l.jsx(Zy,{children:"Conditional Logic Active"}),l.jsx(ev,{children:"This form has conditional logic rules. Some fields may show/hide based on your input."})]})})]})})}};function tv(){Kt.has("design")||Kt.register(eI),Kt.has("preview")||Kt.register(tI)}tv();const rv=({initialSchema:e,onSchemaChange:t,toolbarActions:r,toolbarConfig:o,sidebarTabs:n,sidebarConfig:s,onPreviewSubmit:a,showElementSidebar:i=!0,showPropertyPanel:c=!0,submissionFormat:d="array",className:p})=>{const u=te(w=>w.mode),f=te(w=>w.setMode),h=te(w=>w.schema),g=te(w=>w.loadSchema);P.useEffect(()=>Tw(),[]),P.useEffect(()=>{e&&g(e)},[e,g]),P.useEffect(()=>{t&&t(h)},[h,t]);const y=r||o?{...o,actions:[...(o==null?void 0:o.actions)??[],...r??[]]}:void 0,b=n||s!=null&&s.tabs?[...(s==null?void 0:s.tabs)??[],...n??[]]:void 0,v=Kt.get(u),N=P.useMemo(()=>({schema:h,currentMode:u,setMode:f,submissionFormat:d,onSubmit:a,showElementSidebar:i,showPropertyPanel:c,loadSchema:g}),[h,u,f,d,a,i,c,g]),x=P.useMemo(()=>({ElementSidebar:i?l.jsx(a_,{sidebarTabs:b}):void 0,Canvas:l.jsx(__,{toolbarConfig:y}),PropertyPanel:c?l.jsx(mP,{}):void 0}),[i,b,y,c]);return l.jsx("div",{className:m("ep-main-layout h-screen flex flex-col bg-muted/50",p),children:l.jsx("div",{className:m("flex-1 flex overflow-hidden"),children:v?v.renderContent(N,x):null})})};ee.AffixInput=Ni,ee.CanvasElementRenderer=Ia,ee.CanvasPreviewWrapper=$0,ee.ElementDescription=ra,ee.ElementLabel=ta,ee.EmptyState=T0,ee.EntryPulse=rv,ee.ErrorMessages=Fn,ee.FieldWrapper=D0,ee.FormElementRenderer=Nh,ee.FormPreview=Ky,ee.IconInput=To,ee.InputWrapper=de,ee.WizardForm=Cu,ee.builtInElements=Sh,ee.createSidebarTab=sm,ee.createSidebarTabs=n_,ee.createToolbarAction=dm,ee.createToolbarActions=m_,ee.default=rv,ee.elementRegistry=ut,ee.extractContextValues=K,ee.filterFieldData=VP,ee.getButtonClassName=P0,ee.getCanvasInputClassName=kt,ee.getElementDefinition=Fw,ee.getElementIcon=Ch,ee.getElementLabel=yc,ee.getInputClassName=Ut,ee.getModeDefinition=x_,ee.hasElement=Vw,ee.hasMode=w_,ee.isActionDisabled=um,ee.isActionHidden=Vc,ee.isElementRegistered=e1,ee.isSidebarTabDisabled=am,ee.isSidebarTabHidden=lm,ee.modeRegistry=Kt,ee.registerBuiltInElements=LE,ee.registerBuiltinModes=tv,ee.registerElement=Ow,ee.registerElements=Mw,ee.registerMode=b_,ee.registerModes=y_,ee.renderElement=r1,ee.renderElementOnCanvas=t1,ee.transformSubmissionData=Nu,ee.transformToArrayFormat=qy,ee.unregisterElement=Lw,ee.unregisterMode=v_,ee.useFormStore=te,Object.defineProperties(ee,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
203
204
  //# sourceMappingURL=entry-pulse.umd.cjs.map