@entrypulse/builder 1.2.4 → 1.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/entry-pulse.js +14994 -11352
- package/dist/entry-pulse.js.map +1 -1
- package/dist/entry-pulse.umd.cjs +61 -55
- package/dist/entry-pulse.umd.cjs.map +1 -1
- package/dist/index.d.ts +14 -0
- package/dist/style.css +1 -1
- package/package.json +3 -2
package/dist/entry-pulse.umd.cjs
CHANGED
|
@@ -1,9 +1,14 @@
|
|
|
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
|
-
|
|
1
|
+
(function(le,i){typeof exports=="object"&&typeof module<"u"?i(exports,require("react/jsx-runtime"),require("react"),require("react-dom")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","react-dom"],i):(le=typeof globalThis<"u"?globalThis:le||self,i(le.EntryPulse={},le.jsxRuntime,le.React,le.ReactDOM))})(this,(function(le,i,P,Ba){"use strict";var d2=Object.defineProperty;var nw=le=>{throw TypeError(le)};var u2=(le,i,P)=>i in le?d2(le,i,{enumerable:!0,configurable:!0,writable:!0,value:P}):le[i]=P;var ni=(le,i,P)=>u2(le,typeof i!="symbol"?i+"":i,P),aw=(le,i,P)=>i.has(le)||nw("Cannot "+P);var jt=(le,i,P)=>(aw(le,i,"read from private field"),P?P.call(le):i.get(le)),sw=(le,i,P)=>i.has(le)?nw("Cannot add the same private member more than once"):i instanceof WeakSet?i.add(le):i.set(le,P),Eu=(le,i,P,Ba)=>(aw(le,i,"write to private field"),Ba?Ba.call(le,P):i.set(le,P),P);var St,lr;function ku(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 C=ku(P),Pn=ku(Ba),Au=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,l={setState:o,getState:n,getInitialState:()=>c,subscribe:d=>(r.add(d),()=>r.delete(d))},c=t=e(o,n,l);return l},lw=(e=>e?Au(e):Au),iw=e=>e;function cw(e,t=iw){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 _u=e=>{const t=lw(e),r=o=>cw(t,o);return Object.assign(r,t),r},dw=(e=>e?_u(e):_u);var Tu=Symbol.for("immer-nothing"),Du=Symbol.for("immer-draftable"),er=Symbol.for("immer-state"),uw=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 Qt(e,...t){if(process.env.NODE_ENV!=="production"){const r=uw[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 Mn=Object.getPrototypeOf;function sn(e){return!!e&&!!e[er]}function Do(e){var t;return e?Pu(e)||Array.isArray(e)||!!e[Du]||!!((t=e.constructor)!=null&&t[Du])||On(e)||Ha(e):!1}var fw=Object.prototype.constructor.toString(),$u=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=$u.get(r);return o===void 0&&(o=Function.toString.call(r),$u.set(r,o)),o===fw}function Ua(e,t,r=!0){Wa(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 Wa(e){const t=e[er];return t?t.type_:Array.isArray(e)?1:On(e)?2:Ha(e)?3:0}function ai(e,t){return Wa(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function Mu(e,t,r){const o=Wa(e);o===2?e.set(t,r):o===3?e.add(r):e[t]=r}function pw(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}function On(e){return e instanceof Map}function Ha(e){return e instanceof Set}function $o(e){return e.copy_||e.base_}function si(e,t){if(On(e))return new Map(e);if(Ha(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[er];let n=Reflect.ownKeys(o);for(let a=0;a<n.length;a++){const s=n[a],l=o[s];l.writable===!1&&(l.writable=!0,l.configurable=!0),(l.get||l.set)&&(o[s]={configurable:!0,writable:!0,enumerable:l.enumerable,value:e[s]})}return Object.create(Mn(e),o)}else{const o=Mn(e);if(o!==null&&r)return{...e};const n=Object.create(o);return Object.assign(n,e)}}function li(e,t=!1){return qa(e)||sn(e)||!Do(e)||(Wa(e)>1&&Object.defineProperties(e,{set:ja,add:ja,clear:ja,delete:ja}),Object.freeze(e),t&&Object.values(e).forEach(r=>li(r,!0))),e}function hw(){Qt(2)}var ja={value:hw};function qa(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var mw={};function Po(e){const t=mw[e];return t||Qt(0,e),t}var In;function Ou(){return In}function bw(e,t){return{drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function Iu(e,t){t&&(Po("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function ii(e){ci(e),e.drafts_.forEach(gw),e.drafts_=null}function ci(e){e===In&&(In=e.parent_)}function Lu(e){return In=bw(In,e)}function gw(e){const t=e[er];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[er].modified_&&(ii(t),Qt(4)),Do(e)&&(e=Ya(t,e),t.parent_||Qa(t,e)),t.patches_&&Po("Patches").generateReplacementPatches_(r[er].base_,e,t.patches_,t.inversePatches_)):e=Ya(t,r,[]),ii(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==Tu?e:void 0}function Ya(e,t,r){if(qa(t))return t;const o=e.immer_.shouldUseStrictIteration(),n=t[er];if(!n)return Ua(t,(a,s)=>Vu(e,n,t,a,s,r),o),t;if(n.scope_!==e)return t;if(!n.modified_)return Qa(e,n.base_,!0),n.base_;if(!n.finalized_){n.finalized_=!0,n.scope_.unfinalizedDrafts_--;const a=n.copy_;let s=a,l=!1;n.type_===3&&(s=new Set(a),a.clear(),l=!0),Ua(s,(c,d)=>Vu(e,n,a,c,d,r,l),o),Qa(e,a,!1),r&&e.patches_&&Po("Patches").generatePatches_(n,r,e.patches_,e.inversePatches_)}return n.copy_}function Vu(e,t,r,o,n,a,s){if(n==null||typeof n!="object"&&!s)return;const l=qa(n);if(!(l&&!s)){if(process.env.NODE_ENV!=="production"&&n===r&&Qt(5),sn(n)){const c=a&&t&&t.type_!==3&&!ai(t.assigned_,o)?a.concat(o):void 0,d=Ya(e,n,c);if(Mu(r,o,d),sn(d))e.canAutoFreeze_=!1;else return}else s&&r.add(n);if(Do(n)&&!l){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||t&&t.base_&&t.base_[o]===n&&l)return;Ya(e,n),(!t||!t.scope_.parent_)&&typeof o!="symbol"&&(On(r)?r.has(o):Object.prototype.propertyIsEnumerable.call(r,o))&&Qa(e,n)}}}function Qa(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&li(t,r)}function yw(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,a=di;r&&(n=[o],a=Ln);const{revoke:s,proxy:l}=Proxy.revocable(n,a);return o.draft_=l,o.revoke_=s,l}var di={get(e,t){if(t===er)return e;const r=$o(e);if(!ai(r,t))return vw(e,r,t);const o=r[t];return e.finalized_||!Do(o)?o:o===ui(e.base_,t)?(pi(e),e.copy_[t]=hi(o,e)):o},has(e,t){return t in $o(e)},ownKeys(e){return Reflect.ownKeys($o(e))},set(e,t,r){const o=Gu($o(e),t);if(o!=null&&o.set)return o.set.call(e.draft_,r),!0;if(!e.modified_){const n=ui($o(e),t),a=n==null?void 0:n[er];if(a&&a.base_===r)return e.copy_[t]=r,e.assigned_[t]=!1,!0;if(pw(r,n)&&(r!==void 0||ai(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=$o(e),o=Reflect.getOwnPropertyDescriptor(r,t);return o&&{writable:!0,configurable:e.type_!==1||t!=="length",enumerable:o.enumerable,value:r[t]}},defineProperty(){Qt(11)},getPrototypeOf(e){return Mn(e.base_)},setPrototypeOf(){Qt(12)}},Ln={};Ua(di,(e,t)=>{Ln[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}}),Ln.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&Qt(13),Ln.set.call(this,e,t,void 0)},Ln.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&Qt(14),di.set.call(this,e[0],t,r,e[0])};function ui(e,t){const r=e[er];return(r?$o(r):e)[t]}function vw(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=Mn(e);for(;r;){const o=Object.getOwnPropertyDescriptor(r,t);if(o)return o;r=Mn(r)}}function fi(e){e.modified_||(e.modified_=!0,e.parent_&&fi(e.parent_))}function pi(e){e.copy_||(e.copy_=si(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var ww=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 l=this;return function(d=s,...p){return l.produce(d,u=>o.call(this,u,...p))}}typeof o!="function"&&Qt(6),n!==void 0&&typeof n!="function"&&Qt(7);let a;if(Do(r)){const s=Lu(this),l=hi(r,void 0);let c=!0;try{a=o(l),c=!1}finally{c?ii(s):ci(s)}return Iu(s,n),Fu(a,s)}else if(!r||typeof r!="object"){if(a=o(r),a===void 0&&(a=r),a===Tu&&(a=void 0),this.autoFreeze_&&li(a,!0),n){const s=[],l=[];Po("Patches").generateReplacementPatches_(r,a,s,l),n(s,l)}return a}else Qt(1,r)},this.produceWithPatches=(r,o)=>{if(typeof r=="function")return(l,...c)=>this.produceWithPatches(l,d=>r(d,...c));let n,a;return[this.produce(r,o,(l,c)=>{n=l,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){Do(t)||Qt(8),sn(t)&&(t=xw(t));const r=Lu(this),o=hi(t,void 0);return o[er].isManual_=!0,ci(r),o}finishDraft(t,r){const o=t&&t[er];(!o||!o.isManual_)&&Qt(9);const{scope_:n}=o;return Iu(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 a=r[o];if(a.path.length===0&&a.op==="replace"){t=a.value;break}}o>-1&&(r=r.slice(o+1));const n=Po("Patches").applyPatches_;return sn(t)?n(t,r):this.produce(t,a=>n(a,r))}};function hi(e,t){const r=On(e)?Po("MapSet").proxyMap_(e,t):Ha(e)?Po("MapSet").proxySet_(e,t):yw(e,t);return(t?t.scope_:Ou()).drafts_.push(r),r}function xw(e){return sn(e)||Qt(10,e),zu(e)}function zu(e){if(!Do(e)||qa(e))return e;const t=e[er];let r,o=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=si(e,t.scope_.immer_.useStrictShallowCopy_),o=t.scope_.immer_.shouldUseStrictIteration()}else r=si(e,!0);return Ua(r,(n,a)=>{Mu(r,n,zu(a))},o),t&&(t.finalized_=!1),r}var Cw=new ww,Sw=Cw.produce;const Nw=e=>(t,r,o)=>(o.setState=(n,a,...s)=>{const l=typeof n=="function"?Sw(n):n;return t(l,a,...s)},e(o.setState,r,o));function Ka(){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,a=`${o}${n}`;for(;r.has(a);)n++,a=`${o}${n}`;return a}function bi(e){return new Set(e.map(t=>t.attributes.name).filter(Boolean))}const Ew={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"}},kw={shortText:{labelPosition:"top",size:"full"},longText:{labelPosition:"top",size:"full"},multiLineInput:{labelPosition:"top",size:"full"},textEditor:{labelPosition:"top",size:"full"},number:{labelPosition:"top",size:"full"},slider:{labelPosition:"top",size:"full"},rangeSlider:{labelPosition:"top",size:"full"},email:{labelPosition:"top",size:"full"},phone:{labelPosition:"top",size:"full"},url:{labelPosition:"top",size:"full"},location:{labelPosition:"top",size:"full"},password:{labelPosition:"top",size:"full"},signature:{labelPosition:"top",size:"full"},captcha:{labelPosition:"hidden",size:"full"},singleChoice:{labelPosition:"top",size:"full"},multipleChoice:{labelPosition:"top",size:"full"},dropdown:{labelPosition:"top",size:"full"},tags:{labelPosition:"top",size:"full"},decisionBox:{labelPosition:"hidden",size:"full"},toggleSwitch:{labelPosition:"left",size:"full"},singleChoiceMatrix:{labelPosition:"top",size:"full"},multipleChoiceMatrix:{labelPosition:"top",size:"full"},matrixTable:{labelPosition:"top",size:"full"},date:{labelPosition:"top",size:"full"},time:{labelPosition:"top",size:"full"},dateTime:{labelPosition:"top",size:"full"},multipleDates:{labelPosition:"top",size:"full"},dateRange:{labelPosition:"top",size:"full"},fileUpload:{labelPosition:"top",size:"full"},imageUpload:{labelPosition:"top",size:"full"},multiFileUpload:{labelPosition:"top",size:"full"},multiImageUpload:{labelPosition:"top",size:"full"},paragraph:{labelPosition:"hidden",size:"full"},image:{labelPosition:"hidden",size:"full"},link:{labelPosition:"hidden",size:"full"},formHeading:{size:"full"},sectionHeading:{size:"full"},subheading:{size:"full"},divider:{size:"full"},spacer:{size:"full",height:24},group:{size:"full"},grid:{size:"full",columns:2,gap:16},table:{size:"full"},repeatElement:{size:"full"},repeatGroup:{size:"full"},pages:{size:"full"},submit:{size:"full"}},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..."}},Aw={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:Ka(),type:e,order:r,properties:{...Ew[e]},layout:{...kw[e]},attributes:{name:o,dataType:Aw[e]}};return Uu[e]&&(n.validation={...Uu[e]}),Wu[e]&&(n.config=JSON.parse(JSON.stringify(Wu[e]))),n}function ju(){return{id:`form-${Ka()}`,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 _w(e,t){const r=JSON.parse(JSON.stringify(e));return r.id=Ka(),r.attributes.name=Bu(e.type,t),r}function gi(e){return["paragraph","image","link","formHeading","sectionHeading","subheading","divider","spacer"].includes(e)}function Tw(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 cr(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},ie=dw()(Nw((e,t)=>({...$w,addElement:(r,o)=>{e(n=>{var p;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=bi(n.schema.elements),l=o??n.schema.elements.length,c=Hu(r,s,l);(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()},cr(n,d),n.selectedElementId=c.id})},addElementToContainer:(r,o,n)=>{e(a=>{var f;if(r==="pages"){console.warn("Wizard cannot be added inside a container");return}if(a.schema.elements.findIndex(h=>h.id===o)===-1)return;const l=bi(a.schema.elements),d=a.schema.elements.filter(h=>n?h.parentId===`${o}:${n}`:h.parentId===o).length,p=Hu(r,l,d);n?p.parentId=`${o}:${n}`:p.parentId=o,(r==="group"||r==="grid"||r==="repeatGroup")&&(p.children=[]);const u={...a.schema};u.elements=a.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()},cr(a,u),a.selectedElementId=p.id})},updateElement:(r,o)=>{e(n=>{var l;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:((l=s.metadata)==null?void 0:l.createdAt)||new Date().toISOString()},cr(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(p=>{var u;(p.parentId===d||(u=p.parentId)!=null&&u.startsWith(`${d}:`))&&(a.add(p.id),s(p.id))})};s(r);const l={...o.schema};if(n.parentId){const d=n.parentId.split(":")[0];l.elements=o.schema.elements.map(p=>p.id===d&&p.children?{...p,children:p.children.filter(u=>u!==r)}:p)}l.elements=l.elements.filter(d=>!a.has(d.id)).map((d,p)=>d.parentId?d:{...d,order:p}),l.metadata={...l.metadata,updatedAt:new Date().toISOString(),createdAt:((c=l.metadata)==null?void 0:c.createdAt)||new Date().toISOString()},cr(o,l),(o.selectedElementId===r||a.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 a=bi(o.schema.elements),s=_w(n,a);s.order=n.order+1;const l={...o.schema},c=n.order+1;l.elements=[...o.schema.elements.slice(0,c),s,...o.schema.elements.slice(c).map(p=>({...p,order:p.order+1}))],l.metadata={...l.metadata,updatedAt:new Date().toISOString(),createdAt:((d=l.metadata)==null?void 0:d.createdAt)||new Date().toISOString()},cr(o,l),o.selectedElementId=s.id})},moveElement:(r,o)=>{e(n=>{var d;const a=n.schema.elements.findIndex(p=>p.id===r);if(a===-1||a===o)return;const s=[...n.schema.elements],[l]=s.splice(a,1);s.splice(o,0,l),s.forEach((p,u)=>{p.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()}};cr(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,p)=>{d.order=p});const l={...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()}};cr(n,l)})},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 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()}};cr(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()}};cr(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(l=>{var c,d;if(l.id===r&&l.type==="pages"){const p=((c=l.config)==null?void 0:c.steps)||[];return{...l,config:{...l.config,steps:[...p,o],activeStepId:((d=l.config)==null?void 0:d.activeStepId)||o.id}}}return l}),a.metadata={...a.metadata,updatedAt:new Date().toISOString(),createdAt:((s=a.metadata)==null?void 0:s.createdAt)||new Date().toISOString()},cr(n,a)})},updateWizardStep:(r,o,n)=>{e(a=>{var l;const s={...a.schema};s.elements=a.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}),s.metadata={...s.metadata,updatedAt:new Date().toISOString(),createdAt:((l=s.metadata)==null?void 0:l.createdAt)||new Date().toISOString()},cr(a,s)})},removeWizardStep:(r,o)=>{e(n=>{var u,f;const a=n.schema.elements.find(h=>h.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 l=`${r}:${o}`,c=new Set,d=h=>{n.schema.elements.forEach(b=>{var g;(b.parentId===h||(g=b.parentId)!=null&&g.startsWith(`${h}:`))&&(c.add(b.id),d(b.id))})};d(l);const p={...n.schema};p.elements=n.schema.elements.map(h=>{var b,g,y;if(h.id===r){const v=s.filter(x=>x.id!==o),S=((b=h.config)==null?void 0:b.activeStepId)===o?(g=v[0])==null?void 0:g.id:(y=h.config)==null?void 0:y.activeStepId;return{...h,config:{...h.config,steps:v,activeStepId:S},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()},cr(n,p)})},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,l)=>s.order-l.order)},validateSchema:()=>{const r=t(),o=[],n=r.schema.elements.map(s=>s.attributes.name),a=n.filter((s,l)=>n.indexOf(s)!==l);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 l;(l=s.validation)!=null&&l.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 Pw(){const e=t=>{const o=navigator.platform.toUpperCase().indexOf("MAC")>=0?t.metaKey:t.ctrlKey;o&&t.key==="z"&&!t.shiftKey?(t.preventDefault(),ie.getState().undo()):(o&&t.shiftKey&&t.key==="z"||o&&t.key==="y")&&(t.preventDefault(),ie.getState().redo())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)}const Mw=()=>{const e=ie(r=>r.selectedElementId);return ie(r=>r.schema.elements).find(r=>r.id===e)};class Ow{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 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(l=>l.category==="field"&&l.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(l=>l.category==="page"&&l.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 vt=new Ow;function Iw(e,t){vt.register(e,t)}function Lw(e,t){for(const r of e)vt.register(r,t)}function Fw(e){return vt.unregister(e)}function Vw(e){return vt.get(e)}function Gw(e){return vt.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 zw=(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},Bw=(e,t)=>({classGroupId:e,validator:t}),Ku=(e=new Map,t=null,r)=>({nextPart:e,validators:t,classGroupId:r}),Ra="-",Ru=[],Uw="arbitrary..",Ww=e=>{const t=jw(e),{conflictingClassGroups:r,conflictingClassGroupModifiers:o}=e;return{getClassGroupId:s=>{if(s.startsWith("[")&&s.endsWith("]"))return Hw(s);const l=s.split(Ra),c=l[0]===""&&l.length>1?1:0;return Xu(l,c,t)},getConflictingClassGroupIds:(s,l)=>{if(l){const c=o[s],d=r[s];return c?d?zw(d,c):c:d||Ru}return r[s]||Ru}}},Xu=(e,t,r)=>{if(e.length-t===0)return r.classGroupId;const n=e[t],a=r.nextPart.get(n);if(a){const d=Xu(e,t+1,a);if(d)return d}const s=r.validators;if(s===null)return;const l=t===0?e.join(Ra):e.slice(t).join(Ra),c=s.length;for(let d=0;d<c;d++){const p=s[d];if(p.validator(l))return p.classGroupId}},Hw=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?Uw+o:void 0})(),jw=e=>{const{theme:t,classGroups:r}=e;return qw(r,t)},qw=(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 a=0;a<n;a++){const s=e[a];Yw(s,t,r,o)}},Yw=(e,t,r,o)=>{if(typeof e=="string"){Qw(e,t,r);return}if(typeof e=="function"){Kw(e,t,r,o);return}Rw(e,t,r,o)},Qw=(e,t,r)=>{const o=e===""?t:Ju(t,e);o.classGroupId=r},Kw=(e,t,r,o)=>{if(Xw(e)){yi(e(o),t,r,o);return}t.validators===null&&(t.validators=[]),t.validators.push(Bw(r,e))},Rw=(e,t,r,o)=>{const n=Object.entries(e),a=n.length;for(let s=0;s<a;s++){const[l,c]=n[s];yi(c,Ju(t,l),r,o)}},Ju=(e,t)=>{let r=e;const o=t.split(Ra),n=o.length;for(let a=0;a<n;a++){const s=o[a];let l=r.nextPart.get(s);l||(l=Ku(),r.nextPart.set(s,l)),r=l}return r},Xw=e=>"isThemeGetter"in e&&e.isThemeGetter===!0,Jw=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)}}},vi="!",Zu=":",Zw=[],ef=(e,t,r,o,n)=>({modifiers:e,hasImportantModifier:t,baseClassName:r,maybePostfixModifierPosition:o,isExternal:n}),ex=e=>{const{prefix:t,experimentalParseClassName:r}=e;let o=n=>{const a=[];let s=0,l=0,c=0,d;const p=n.length;for(let g=0;g<p;g++){const y=n[g];if(s===0&&l===0){if(y===Zu){a.push(n.slice(c,g)),c=g+1;continue}if(y==="/"){d=g;continue}}y==="["?s++:y==="]"?s--:y==="("?l++:y===")"&&l--}const u=a.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 b=d&&d>c?d-c:void 0;return ef(a,h,f,b)};if(t){const n=t+Zu,a=o;o=s=>s.startsWith(n)?a(s.slice(n.length)):ef(Zw,!1,s,void 0,!0)}if(r){const n=o;o=a=>r({className:a,parseClassName:n})}return o},tx=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],l=s[0]==="[",c=t.has(s);l||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}},rx=e=>({cache:Jw(e.cacheSize),parseClassName:ex(e),sortModifiers:tx(e),postfixLookupClassGroupIds:ox(e),...Ww(e)}),ox=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},nx=/\s+/,ax=(e,t)=>{const{parseClassName:r,getClassGroupId:o,getConflictingClassGroupIds:n,sortModifiers:a,postfixLookupClassGroupIds:s}=t,l=[],c=e.trim().split(nx);let d="";for(let p=c.length-1;p>=0;p-=1){const u=c[p],{isExternal:f,modifiers:h,hasImportantModifier:b,baseClassName:g,maybePostfixModifierPosition:y}=r(u);if(f){d=u+(d.length>0?" "+d:d);continue}let v=!!y,S;if(v){const _=g.substring(0,y);S=o(_);const E=S&&s[S]?o(g):void 0;E&&E!==S&&(S=E,v=!1)}else S=o(g);if(!S){if(!v){d=u+(d.length>0?" "+d:d);continue}if(S=o(g),!S){d=u+(d.length>0?" "+d:d);continue}v=!1}const x=h.length===0?"":h.length===1?h[0]:a(h).join(":"),w=b?x+vi:x,N=w+S;if(l.indexOf(N)>-1)continue;l.push(N);const k=n(S,v);for(let _=0;_<k.length;++_){const E=k[_];l.push(w+E)}d=u+(d.length>0?" "+d:d)}return d},sx=(...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,a;const s=c=>{const d=t.reduce((p,u)=>u(p),e());return r=rx(d),o=r.cache.get,n=r.cache.set,a=l,l(c)},l=c=>{const d=o(c);if(d)return d;const p=ax(c,r);return n(c,p),p};return a=s,(...c)=>a(sx(...c))},lx=[],Nt=e=>{const t=r=>r[e]||lx;return t.isThemeGetter=!0,t},of=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,nf=/^\((?:(\w[\w-]*):)?(.+)\)$/i,ix=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,cx=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,dx=/\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$/,ux=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,fx=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,px=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,po=e=>ix.test(e),Ve=e=>!!e&&!Number.isNaN(Number(e)),$r=e=>!!e&&Number.isInteger(Number(e)),wi=e=>e.endsWith("%")&&Ve(e.slice(0,-1)),Qr=e=>cx.test(e),af=()=>!0,hx=e=>dx.test(e)&&!ux.test(e),xi=()=>!1,mx=e=>fx.test(e),bx=e=>px.test(e),gx=e=>!fe(e)&&!he(e),yx=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)),vx=e=>ho(e,ff,xi),fe=e=>of.test(e),Mo=e=>ho(e,pf,hx),sf=e=>ho(e,Ax,Ve),wx=e=>ho(e,mf,af),xx=e=>ho(e,hf,xi),lf=e=>ho(e,df,xi),Cx=e=>ho(e,uf,bx),Xa=e=>ho(e,bf,mx),he=e=>nf.test(e),Fn=e=>Oo(e,pf),Sx=e=>Oo(e,hf),cf=e=>Oo(e,df),Nx=e=>Oo(e,ff),Ex=e=>Oo(e,uf),Ja=e=>Oo(e,bf,!0),kx=e=>Oo(e,mf,!0),ho=(e,t,r)=>{const o=of.exec(e);return o?o[1]?t(o[1]):r(o[2]):!1},Oo=(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",Ax=e=>e==="number",hf=e=>e==="family-name",mf=e=>e==="number"||e==="weight",bf=e=>e==="shadow",gf=()=>{const e=Nt("color"),t=Nt("font"),r=Nt("text"),o=Nt("font-weight"),n=Nt("tracking"),a=Nt("leading"),s=Nt("breakpoint"),l=Nt("container"),c=Nt("spacing"),d=Nt("radius"),p=Nt("shadow"),u=Nt("inset-shadow"),f=Nt("text-shadow"),h=Nt("drop-shadow"),b=Nt("blur"),g=Nt("perspective"),y=Nt("aspect"),v=Nt("ease"),S=Nt("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"],N=()=>[...w(),he,fe],k=()=>["auto","hidden","clip","visible","scroll"],_=()=>["auto","contain","none"],E=()=>[he,fe,c],D=()=>[po,"full","auto",...E()],T=()=>[$r,"none","subgrid",he,fe],O=()=>["auto",{span:["full",$r,he,fe]},$r,he,fe],$=()=>[$r,"auto",he,fe],V=()=>["auto","min","max","fr",he,fe],G=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],q=()=>["start","end","center","stretch","center-safe","end-safe"],H=()=>["auto",...E()],Y=()=>[po,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...E()],J=()=>[po,"screen","full","dvw","lvw","svw","min","max","fit",...E()],W=()=>[po,"screen","full","lh","dvh","lvh","svh","min","max","fit",...E()],R=()=>[e,he,fe],we=()=>[...w(),cf,lf,{position:[he,fe]}],Q=()=>["no-repeat",{repeat:["","x","y","space","round"]}],te=()=>["auto","cover","contain",Nx,vx,{size:[he,fe]}],De=()=>[wi,Fn,Mo],de=()=>["","none","full",d,he,fe],Se=()=>["",Ve,Fn,Mo],re=()=>["solid","dashed","dotted","double"],me=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],ce=()=>[Ve,wi,cf,lf],Ie=()=>["","none",b,he,fe],xe=()=>["none",Ve,he,fe],be=()=>["none",Ve,he,fe],ae=()=>[Ve,he,fe],ue=()=>[po,"full",...E()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[Qr],breakpoint:[Qr],color:[af],container:[Qr],"drop-shadow":[Qr],ease:["in","out","in-out"],font:[gx],"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",Ve],text:[Qr],"text-shadow":[Qr],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",po,fe,he,y]}],container:["container"],"container-type":[{"@container":["","normal","size",he,fe]}],"container-named":[yx],columns:[{columns:[Ve,fe,he,l]}],"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:k()}],"overflow-x":[{"overflow-x":k()}],"overflow-y":[{"overflow-y":k()}],overscroll:[{overscroll:_()}],"overscroll-x":[{"overscroll-x":_()}],"overscroll-y":[{"overscroll-y":_()}],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:[$r,"auto",he,fe]}],basis:[{basis:[po,"full","auto",l,...E()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[Ve,po,"auto","initial","none",fe]}],grow:[{grow:["",Ve,he,fe]}],shrink:[{shrink:["",Ve,he,fe]}],order:[{order:[$r,"first","last","none",he,fe]}],"grid-cols":[{"grid-cols":T()}],"col-start-end":[{col:O()}],"col-start":[{"col-start":$()}],"col-end":[{"col-end":$()}],"grid-rows":[{"grid-rows":T()}],"row-start-end":[{row:O()}],"row-start":[{"row-start":$()}],"row-end":[{"row-end":$()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":V()}],"auto-rows":[{"auto-rows":V()}],gap:[{gap:E()}],"gap-x":[{"gap-x":E()}],"gap-y":[{"gap-y":E()}],"justify-content":[{justify:[...G(),"normal"]}],"justify-items":[{"justify-items":[...q(),"normal"]}],"justify-self":[{"justify-self":["auto",...q()]}],"align-content":[{content:["normal",...G()]}],"align-items":[{items:[...q(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...q(),{baseline:["","last"]}]}],"place-content":[{"place-content":G()}],"place-items":[{"place-items":[...q(),"baseline"]}],"place-self":[{"place-self":["auto",...q()]}],p:[{p:E()}],px:[{px:E()}],py:[{py:E()}],ps:[{ps:E()}],pe:[{pe:E()}],pbs:[{pbs:E()}],pbe:[{pbe:E()}],pt:[{pt:E()}],pr:[{pr:E()}],pb:[{pb:E()}],pl:[{pl:E()}],m:[{m:H()}],mx:[{mx:H()}],my:[{my:H()}],ms:[{ms:H()}],me:[{me:H()}],mbs:[{mbs:H()}],mbe:[{mbe:H()}],mt:[{mt:H()}],mr:[{mr:H()}],mb:[{mb:H()}],ml:[{ml:H()}],"space-x":[{"space-x":E()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":E()}],"space-y-reverse":["space-y-reverse"],size:[{size:Y()}],"inline-size":[{inline:["auto",...J()]}],"min-inline-size":[{"min-inline":["auto",...J()]}],"max-inline-size":[{"max-inline":["none",...J()]}],"block-size":[{block:["auto",...W()]}],"min-block-size":[{"min-block":["auto",...W()]}],"max-block-size":[{"max-block":["none",...W()]}],w:[{w:[l,"screen",...Y()]}],"min-w":[{"min-w":[l,"screen","none",...Y()]}],"max-w":[{"max-w":[l,"screen","none","prose",{screen:[s]},...Y()]}],h:[{h:["screen","lh",...Y()]}],"min-h":[{"min-h":["screen","lh","none",...Y()]}],"max-h":[{"max-h":["screen","lh",...Y()]}],"font-size":[{text:["base",r,Fn,Mo]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[o,kx,wx]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",wi,fe]}],"font-family":[{font:[Sx,xx,t]}],"font-features":[{"font-features":[fe]}],"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,he,fe]}],"line-clamp":[{"line-clamp":[Ve,"none",he,sf]}],leading:[{leading:[a,...E()]}],"list-image":[{"list-image":["none",he,fe]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",he,fe]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:R()}],"text-color":[{text:R()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...re(),"wavy"]}],"text-decoration-thickness":[{decoration:[Ve,"from-font","auto",he,Mo]}],"text-decoration-color":[{decoration:R()}],"underline-offset":[{"underline-offset":[Ve,"auto",he,fe]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:E()}],"tab-size":[{tab:[$r,he,fe]}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",he,fe]}],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",he,fe]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:we()}],"bg-repeat":[{bg:Q()}],"bg-size":[{bg:te()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},$r,he,fe],radial:["",he,fe],conic:[$r,he,fe]},Ex,Cx]}],"bg-color":[{bg:R()}],"gradient-from-pos":[{from:De()}],"gradient-via-pos":[{via:De()}],"gradient-to-pos":[{to:De()}],"gradient-from":[{from:R()}],"gradient-via":[{via:R()}],"gradient-to":[{to:R()}],rounded:[{rounded:de()}],"rounded-s":[{"rounded-s":de()}],"rounded-e":[{"rounded-e":de()}],"rounded-t":[{"rounded-t":de()}],"rounded-r":[{"rounded-r":de()}],"rounded-b":[{"rounded-b":de()}],"rounded-l":[{"rounded-l":de()}],"rounded-ss":[{"rounded-ss":de()}],"rounded-se":[{"rounded-se":de()}],"rounded-ee":[{"rounded-ee":de()}],"rounded-es":[{"rounded-es":de()}],"rounded-tl":[{"rounded-tl":de()}],"rounded-tr":[{"rounded-tr":de()}],"rounded-br":[{"rounded-br":de()}],"rounded-bl":[{"rounded-bl":de()}],"border-w":[{border:Se()}],"border-w-x":[{"border-x":Se()}],"border-w-y":[{"border-y":Se()}],"border-w-s":[{"border-s":Se()}],"border-w-e":[{"border-e":Se()}],"border-w-bs":[{"border-bs":Se()}],"border-w-be":[{"border-be":Se()}],"border-w-t":[{"border-t":Se()}],"border-w-r":[{"border-r":Se()}],"border-w-b":[{"border-b":Se()}],"border-w-l":[{"border-l":Se()}],"divide-x":[{"divide-x":Se()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":Se()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...re(),"hidden","none"]}],"divide-style":[{divide:[...re(),"hidden","none"]}],"border-color":[{border:R()}],"border-color-x":[{"border-x":R()}],"border-color-y":[{"border-y":R()}],"border-color-s":[{"border-s":R()}],"border-color-e":[{"border-e":R()}],"border-color-bs":[{"border-bs":R()}],"border-color-be":[{"border-be":R()}],"border-color-t":[{"border-t":R()}],"border-color-r":[{"border-r":R()}],"border-color-b":[{"border-b":R()}],"border-color-l":[{"border-l":R()}],"divide-color":[{divide:R()}],"outline-style":[{outline:[...re(),"none","hidden"]}],"outline-offset":[{"outline-offset":[Ve,he,fe]}],"outline-w":[{outline:["",Ve,Fn,Mo]}],"outline-color":[{outline:R()}],shadow:[{shadow:["","none",p,Ja,Xa]}],"shadow-color":[{shadow:R()}],"inset-shadow":[{"inset-shadow":["none",u,Ja,Xa]}],"inset-shadow-color":[{"inset-shadow":R()}],"ring-w":[{ring:Se()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:R()}],"ring-offset-w":[{"ring-offset":[Ve,Mo]}],"ring-offset-color":[{"ring-offset":R()}],"inset-ring-w":[{"inset-ring":Se()}],"inset-ring-color":[{"inset-ring":R()}],"text-shadow":[{"text-shadow":["none",f,Ja,Xa]}],"text-shadow-color":[{"text-shadow":R()}],opacity:[{opacity:[Ve,he,fe]}],"mix-blend":[{"mix-blend":[...me(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":me()}],"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":[Ve]}],"mask-image-linear-from-pos":[{"mask-linear-from":ce()}],"mask-image-linear-to-pos":[{"mask-linear-to":ce()}],"mask-image-linear-from-color":[{"mask-linear-from":R()}],"mask-image-linear-to-color":[{"mask-linear-to":R()}],"mask-image-t-from-pos":[{"mask-t-from":ce()}],"mask-image-t-to-pos":[{"mask-t-to":ce()}],"mask-image-t-from-color":[{"mask-t-from":R()}],"mask-image-t-to-color":[{"mask-t-to":R()}],"mask-image-r-from-pos":[{"mask-r-from":ce()}],"mask-image-r-to-pos":[{"mask-r-to":ce()}],"mask-image-r-from-color":[{"mask-r-from":R()}],"mask-image-r-to-color":[{"mask-r-to":R()}],"mask-image-b-from-pos":[{"mask-b-from":ce()}],"mask-image-b-to-pos":[{"mask-b-to":ce()}],"mask-image-b-from-color":[{"mask-b-from":R()}],"mask-image-b-to-color":[{"mask-b-to":R()}],"mask-image-l-from-pos":[{"mask-l-from":ce()}],"mask-image-l-to-pos":[{"mask-l-to":ce()}],"mask-image-l-from-color":[{"mask-l-from":R()}],"mask-image-l-to-color":[{"mask-l-to":R()}],"mask-image-x-from-pos":[{"mask-x-from":ce()}],"mask-image-x-to-pos":[{"mask-x-to":ce()}],"mask-image-x-from-color":[{"mask-x-from":R()}],"mask-image-x-to-color":[{"mask-x-to":R()}],"mask-image-y-from-pos":[{"mask-y-from":ce()}],"mask-image-y-to-pos":[{"mask-y-to":ce()}],"mask-image-y-from-color":[{"mask-y-from":R()}],"mask-image-y-to-color":[{"mask-y-to":R()}],"mask-image-radial":[{"mask-radial":[he,fe]}],"mask-image-radial-from-pos":[{"mask-radial-from":ce()}],"mask-image-radial-to-pos":[{"mask-radial-to":ce()}],"mask-image-radial-from-color":[{"mask-radial-from":R()}],"mask-image-radial-to-color":[{"mask-radial-to":R()}],"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":[Ve]}],"mask-image-conic-from-pos":[{"mask-conic-from":ce()}],"mask-image-conic-to-pos":[{"mask-conic-to":ce()}],"mask-image-conic-from-color":[{"mask-conic-from":R()}],"mask-image-conic-to-color":[{"mask-conic-to":R()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:we()}],"mask-repeat":[{mask:Q()}],"mask-size":[{mask:te()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",he,fe]}],filter:[{filter:["","none",he,fe]}],blur:[{blur:Ie()}],brightness:[{brightness:[Ve,he,fe]}],contrast:[{contrast:[Ve,he,fe]}],"drop-shadow":[{"drop-shadow":["","none",h,Ja,Xa]}],"drop-shadow-color":[{"drop-shadow":R()}],grayscale:[{grayscale:["",Ve,he,fe]}],"hue-rotate":[{"hue-rotate":[Ve,he,fe]}],invert:[{invert:["",Ve,he,fe]}],saturate:[{saturate:[Ve,he,fe]}],sepia:[{sepia:["",Ve,he,fe]}],"backdrop-filter":[{"backdrop-filter":["","none",he,fe]}],"backdrop-blur":[{"backdrop-blur":Ie()}],"backdrop-brightness":[{"backdrop-brightness":[Ve,he,fe]}],"backdrop-contrast":[{"backdrop-contrast":[Ve,he,fe]}],"backdrop-grayscale":[{"backdrop-grayscale":["",Ve,he,fe]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Ve,he,fe]}],"backdrop-invert":[{"backdrop-invert":["",Ve,he,fe]}],"backdrop-opacity":[{"backdrop-opacity":[Ve,he,fe]}],"backdrop-saturate":[{"backdrop-saturate":[Ve,he,fe]}],"backdrop-sepia":[{"backdrop-sepia":["",Ve,he,fe]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":E()}],"border-spacing-x":[{"border-spacing-x":E()}],"border-spacing-y":[{"border-spacing-y":E()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",he,fe]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[Ve,"initial",he,fe]}],ease:[{ease:["linear","initial",v,he,fe]}],delay:[{delay:[Ve,he,fe]}],animate:[{animate:["none",S,he,fe]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[g,he,fe]}],"perspective-origin":[{"perspective-origin":N()}],rotate:[{rotate:xe()}],"rotate-x":[{"rotate-x":xe()}],"rotate-y":[{"rotate-y":xe()}],"rotate-z":[{"rotate-z":xe()}],scale:[{scale:be()}],"scale-x":[{"scale-x":be()}],"scale-y":[{"scale-y":be()}],"scale-z":[{"scale-z":be()}],"scale-3d":["scale-3d"],skew:[{skew:ae()}],"skew-x":[{"skew-x":ae()}],"skew-y":[{"skew-y":ae()}],transform:[{transform:[he,fe,"","none","gpu","cpu"]}],"transform-origin":[{origin:N()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:ue()}],"translate-x":[{"translate-x":ue()}],"translate-y":[{"translate-y":ue()}],"translate-z":[{"translate-z":ue()}],"translate-none":["translate-none"],zoom:[{zoom:[$r,he,fe]}],accent:[{accent:R()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:R()}],"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",he,fe]}],"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":R()}],"scrollbar-track-color":[{"scrollbar-track":R()}],"scrollbar-gutter":[{"scrollbar-gutter":["auto","stable","both"]}],"scrollbar-w":[{scrollbar:["auto","thin","none"]}],"scroll-m":[{"scroll-m":E()}],"scroll-mx":[{"scroll-mx":E()}],"scroll-my":[{"scroll-my":E()}],"scroll-ms":[{"scroll-ms":E()}],"scroll-me":[{"scroll-me":E()}],"scroll-mbs":[{"scroll-mbs":E()}],"scroll-mbe":[{"scroll-mbe":E()}],"scroll-mt":[{"scroll-mt":E()}],"scroll-mr":[{"scroll-mr":E()}],"scroll-mb":[{"scroll-mb":E()}],"scroll-ml":[{"scroll-ml":E()}],"scroll-p":[{"scroll-p":E()}],"scroll-px":[{"scroll-px":E()}],"scroll-py":[{"scroll-py":E()}],"scroll-ps":[{"scroll-ps":E()}],"scroll-pe":[{"scroll-pe":E()}],"scroll-pbs":[{"scroll-pbs":E()}],"scroll-pbe":[{"scroll-pbe":E()}],"scroll-pt":[{"scroll-pt":E()}],"scroll-pr":[{"scroll-pr":E()}],"scroll-pb":[{"scroll-pb":E()}],"scroll-pl":[{"scroll-pl":E()}],"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",he,fe]}],fill:[{fill:["none",...R()]}],"stroke-w":[{stroke:[Ve,Fn,Mo,sf]}],stroke:[{stroke:["none",...R()]}],"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"]}},_x=(e,{cacheSize:t,prefix:r,experimentalParseClassName:o,extend:n={},override:a={}})=>(ln(e,"cacheSize",t),ln(e,"prefix",r),ln(e,"experimentalParseClassName",o),Za(e.theme,a.theme),Za(e.classGroups,a.classGroups),Za(e.conflictingClassGroups,a.conflictingClassGroups),Za(e.conflictingClassGroupModifiers,a.conflictingClassGroupModifiers),ln(e,"postfixLookupClassGroups",a.postfixLookupClassGroups),ln(e,"orderSensitiveModifiers",a.orderSensitiveModifiers),es(e.theme,n.theme),es(e.classGroups,n.classGroups),es(e.conflictingClassGroups,n.conflictingClassGroups),es(e.conflictingClassGroupModifiers,n.conflictingClassGroupModifiers),Ci(e,n,"postfixLookupClassGroups"),Ci(e,n,"orderSensitiveModifiers"),e),ln=(e,t,r)=>{r!==void 0&&(e[t]=r)},Za=(e,t)=>{if(t)for(const r in t)ln(e,r,t[r])},es=(e,t)=>{if(t)for(const r in t)Ci(e,t,r)},Ci=(e,t,r)=>{const o=t[r];o!==void 0&&(e[r]=e[r]?e[r].concat(o):o)},Tx=((e,...t)=>typeof e=="function"?rf(gf,e,...t):rf(()=>_x(gf(),e),...t))({prefix:""});function m(...e){const t=Qu(e);return Tx(t)}const ts=({label:e,required:t,htmlFor:r,className:o=""})=>e?i.jsxs("label",{htmlFor:r,className:m("block text-sm font-medium text-gray-700",o),children:[e,t&&i.jsx("span",{className:m("text-red-500 ml-1"),children:"*"})]}):null,rs=({description:e,className:t=""})=>e?i.jsx("p",{className:m("text-xs text-gray-500",t),children:e}):null,Vn=({errors:e,className:t=""})=>!e||e.length===0?null:i.jsx("div",{className:m("space-y-1",t),children:e.map((r,o)=>i.jsx("p",{className:m("text-xs text-red-500"),children:r},o))}),Dx=({label:e,description:t,required:r,errors:o,children:n})=>i.jsxs("div",{className:m("space-y-1.5"),children:[i.jsx(ts,{label:e,required:r}),i.jsx(rs,{description:t}),n,i.jsx(Vn,{errors:o})]}),ge=({label:e,description:t,required:r,errors:o,labelPosition:n="top",className:a="",children:s})=>n==="hidden"?i.jsxs("div",{className:m("space-y-1.5",a),children:[s,i.jsx(Vn,{errors:o})]}):n==="left"?i.jsxs("div",{className:m("flex items-start gap-4",a),children:[i.jsxs("div",{className:m("w-1/3 pt-2"),children:[i.jsx(ts,{label:e,required:r}),i.jsx(rs,{description:t})]}),i.jsxs("div",{className:m("flex-1 space-y-1.5"),children:[s,i.jsx(Vn,{errors:o})]})]}):i.jsxs("div",{className:m("space-y-1.5",a),children:[i.jsx(ts,{label:e,required:r}),i.jsx(rs,{description:t}),s,i.jsx(Vn,{errors:o})]}),$x=({children:e,className:t=""})=>i.jsx("div",{className:m("pointer-events-none",t),children:e}),Px=({icon:e="📋",message:t,subMessage:r})=>i.jsxs("div",{className:m("border-2 border-dashed border-gray-300 rounded-lg p-6 text-center bg-gray-50"),children:[i.jsx("span",{className:m("text-4xl"),children:e}),i.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:t}),r&&i.jsx("p",{className:m("text-xs text-gray-400"),children:r})]}),Io=({icon:e,children:t,iconPosition:r="left"})=>i.jsxs("div",{className:m("relative"),children:[i.jsx("span",{className:m("absolute top-1/2 -translate-y-1/2 text-gray-400",r==="left"?"left-3":"right-3"),children:e}),t]}),Si=({prefix:e,suffix:t,children:r})=>i.jsxs("div",{className:m("flex"),children:[e&&i.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}),i.jsx("div",{className:m("flex-1",!e&&"rounded-l-md",!t&&"rounded-r-md"),children:r}),t&&i.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 qt(e={}){const{hasError:t=!1,disabled:r=!1,size:o="medium",hasLeftIcon:n=!1,hasRightIcon:a=!1,hasPrefix:s=!1,hasSuffix:l=!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],!s&&!l&&"rounded-md",s&&!l&&"rounded-r-md",!s&&l&&"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 Ot(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 Mx(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 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",a[t])}function oe(e){const{element:t,properties:r,layout:o,validation:n,config:a,mode:s,value:l,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:s==="canvas",isDisabled:u||p||s==="canvas",value:l,onChange:c,errors:d,config:a,element:t}}/*!
|
|
2
|
+
* Copyright (c) 2023 Momo Bassit.
|
|
3
|
+
* Licensed under the MIT License (MIT)
|
|
4
|
+
* https://github.com/mdbassit/Wysi
|
|
5
|
+
*/(function(e,t){function r(I,F){(F==null||F>I.length)&&(F=I.length);for(var K=0,j=new Array(F);K<F;K++)j[K]=I[K];return j}function o(I,F){var K=typeof Symbol<"u"&&I[Symbol.iterator]||I["@@iterator"];if(K)return(K=K.call(I)).next.bind(K);if(Array.isArray(I)||(K=(function(Z,se){if(Z){if(typeof Z=="string")return r(Z,se);var A=Object.prototype.toString.call(Z).slice(8,-1);return A==="Object"&&Z.constructor&&(A=Z.constructor.name),A==="Map"||A==="Set"?Array.from(Z):A==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(A)?r(Z,se):void 0}})(I))||F){K&&(I=K);var j=0;return function(){return j>=I.length?{done:!0}:{done:!1,value:I[j++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
6
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var n,a,s={el:"[data-wysi], .wysi-field",tools:["format","|","bold","italic","|",{label:"Text alignment",items:["alignLeft","alignCenter","alignRight","alignJustify"]},"|","ul","ol","|","indent","outdent","|","link","image"],allowedTags:{br:{attributes:[],styles:[],isEmpty:!0},p:{attributes:[],styles:[],isEmpty:!1}}},l={format:{tags:["p","h1","h2","h3","h4"],styles:["text-align"],label:"Select block format",paragraph:"Paragraph",heading:"Heading"},quote:{tags:["blockquote"],label:"Quote"},bold:{tags:["strong"],alias:["b"],label:"Bold"},italic:{tags:["em"],alias:["i"],label:"Italic"},underline:{tags:["u"],label:"Underline"},strike:{tags:["s"],alias:["del","strike"],label:"Strike-through",command:"strikeThrough"},alignLeft:{label:"Align left",command:"justifyLeft"},alignCenter:{label:"Align center",command:"justifyCenter"},alignRight:{label:"Align right",command:"justifyRight"},alignJustify:{label:"Justify",command:"justifyFull"},ul:{tags:["ul"],extraTags:["li"],styles:["text-align"],label:"Bulleted list",command:"insertUnorderedList"},ol:{tags:["ol"],extraTags:["li"],styles:["text-align"],label:"Numbered list",command:"insertOrderedList"},indent:{label:"Increase indent"},outdent:{label:"Decrease indent"},link:{tags:["a"],attributes:["href","target"],attributeLabels:["URL","Open link in"],hasForm:!0,formOptions:{target:[{label:"Current tab",value:""},{label:"New tab",value:"_blank"}]},label:"Link"},image:{tags:["img"],attributes:["src","alt"],attributeLabels:["URL","Alternative text"],extraSettings:["size","position"],extraSettingLabels:["Image size","Image position"],styles:["width","display","margin","float"],isEmpty:!0,hasForm:!0,formOptions:{size:[{label:"None",value:"",criterion:null},{label:"100%",value:"100%",criterion:{width:"100%"}},{label:"50%",value:"50%",criterion:{width:"50%"}},{label:"25%",value:"25%",criterion:{width:"25%"}}],position:[{label:"None",value:"",criterion:null},{label:"Left",value:"left",criterion:{float:"left"}},{label:"Center",value:"center",criterion:{margin:"auto"}},{label:"Right",value:"right",criterion:{float:"right"}}]},label:"Image"},hr:{tags:["hr"],isEmpty:!0,label:"Horizontal line",command:"insertHorizontalRule"},removeFormat:{label:"Remove format"},unlink:{label:"Remove link"}},c={},d="wysi-selected",p="wysi-fragment-placeholder",u=["H1","H2","H3","H4"],f=["BLOCKQUOTE","HR","P","OL","UL"].concat(u),h=navigator.userAgent.search(/Gecko\//)>-1,b=function(I,F){return I.dispatchEvent(new Event(F,{bubbles:!0}))},g=function(I,F){return F===void 0&&(F=null),t.execCommand(I,!1,F)},y=function(I,F){return I.classList&&I.classList.contains(F)};function v(I,F,K,j){typeof K=="string"?I.addEventListener(F,(function(Z){var se=Z.target;se.matches(K)&&j.call(se,Z)})):(j=K,I.addEventListener(F,j))}function S(I){var F=w("template");return F.innerHTML=I.trim(),F.content}function x(I){return I&&JSON.parse(JSON.stringify(I))}function w(I,F){var K=t.createElement(I);if(F)for(var j in F)j[0]==="_"?K[j.substring(1)]=F[j]:K.setAttribute(j,F[j]);return K}function N(I,F){F=F!==void 0?F:[],t.readyState!=="loading"?I.apply(void 0,F):v(t,"DOMContentLoaded",(function(){I.apply(void 0,F)}))}function k(I){var F=[];return D(I).forEach((function(K){var j=K.previousElementSibling;if(j&&y(j,"wysi-wrapper")){var Z=j.children,se=Z[0],A=Z[1],M=E(A);F.push({textarea:K,wrapper:j,toolbar:se,editor:A,instanceId:M})}})),F}function _(I){for(var F,K,j,Z=[];I&&I!==t.body;){if(I.tagName){if(y(I,"wysi-wrapper")){F=I;break}Z.push(I)}I=I.parentNode}if(F){var se=F.children;K=se[0],j=se[1]}return{toolbar:K,editor:j,nodes:Z}}function E(I){return I.dataset.wid}function D(I){return typeof I=="string"?Array.from(t.querySelectorAll(I)):I instanceof Node?[I]:I instanceof NodeList||I instanceof HTMLCollection?Array.from(I):Array.isArray(I)?I.filter((function(F){return F instanceof Node})):[]}function T(I){var F,K=I.parentNode,j=I.id;if(K.nodeName==="LABEL"?F=K:j!==void 0&&(F=t.querySelector('label[for="'+j+'"]')),F){var Z=[].filter.call(F.childNodes,(function(se){return se.nodeType===3})).map((function(se){return se.textContent.replace(/\s+/g," ").trim()})).filter((function(se){return se!==""}))[0];if(Z)return Z}return""}function O(I,F){return a[I]&&a[I][F]?a[I][F]:F}function $(){n&&(G(n),n=void 0)}function V(I){n=I}function G(I){var F=t.getSelection();F.removeAllRanges(),F.addRange(I)}function q(I,F){I.setAttribute("aria-expanded",F)}function H(I,F,K){K===void 0&&(K=[]);var j=l[I];if(j){var Z=j.command||I;$(),(function(se,A){switch(se){case"quote":A[0]="blockquote";case"format":g("formatBlock","<"+A[0]+">");break;case"link":var M=A[0],L=A[1],B=L===void 0?"":L,U=A[2];U&&g("insertHTML",'<a href="'+M+'"'+(B!==""?' target="'+B+'"':"")+">"+U+"</a>");break;case"image":var X=[],z=A[0],ee=A[1],ne=ee===void 0?"":ee,Ce=A[2],Fe=A[3],Ue=A[4];Ce!==""&&X.push("width: "+Ce+";"),Fe!==""&&(Fe==="center"?X.push("display: block; margin: auto;"):X.push("float: "+Fe+";"));var ye='<img src="'+z+'" alt="'+ne+'" class="wysi-selected"'+(X.length>0?' style="'+X.join(" ")+'"':"")+">",We=Ue?Ue.replace(/<img[^>]+>/i,ye):ye;g("insertHTML",We);break;default:g(se)}})(Z,K),F.focus()}}function Y(I){var F=I.label,K=I.items,j=K[0],Z=w("div",{class:["wysi-listbox"].concat(I.classes||[]).join(" ")}),se=w("button",{type:"button",title:F,"aria-label":F+" "+j.label,"aria-haspopup":"listbox","aria-expanded":!1,_innerHTML:J(j)}),A=w("div",{role:"listbox",tabindex:-1,"aria-label":F});return K.forEach((function(M){var L=w("button",{type:"button",role:"option",tabindex:-1,"aria-label":M.label,"aria-selected":!1,"data-action":M.action,"data-option":M.name||"",_innerHTML:J(M)});A.appendChild(L)})),Z.appendChild(se),Z.appendChild(A),Z}function J(I){return I.icon?'<svg><use href="#wysi-'+I.icon+'"></use></svg>':I.label}function W(I){var F=I.getAttribute("aria-expanded")==="true",K=I.nextElementSibling,j=K.querySelector('[aria-selected="true"]');j||(j=K.firstElementChild),q(I,!F),j.focus()}function R(I){var F=I.parentNode,K=F.previousElementSibling,j=F.querySelector('[aria-selected="true"]');j&&j.setAttribute("aria-selected","false"),I.setAttribute("aria-selected","true"),K.innerHTML=I.innerHTML}function we(){var I=t.querySelector('.wysi-listbox [aria-expanded="true"]');I&&q(I,!1)}NodeList!==void 0&&NodeList.prototype&&!NodeList.prototype.forEach&&(NodeList.prototype.forEach=Array.prototype.forEach),v(t,"click",".wysi-listbox > button",(function(I){we(),W(I.target)})),v(t,"keydown",".wysi-listbox > button",(function(I){switch(I.key){case"ArrowUp":case"ArrowDown":case"Enter":case" ":W(I.target),I.preventDefault()}})),v(t.documentElement,"mousemove",".wysi-listbox > div > button",(function(I){I.target.focus()})),v(t,"click",".wysi-listbox > div > button",(function(I){var F=I.target,K=F.dataset.action,j=F.dataset.option,Z=_(F).editor,se=t.getSelection();se&&Z.contains(se.anchorNode)&&H(K,Z,[j]),R(F)})),v(t,"keydown",".wysi-listbox > div > button",(function(I){var F=I.target,K=F.parentNode,j=K.previousElementSibling,Z=!0;switch(I.key){case"ArrowUp":var se=F.previousElementSibling;se&&se.focus();break;case"ArrowDown":var A=F.nextElementSibling;A&&A.focus();break;case"Home":K.firstElementChild.focus();break;case"End":K.lastElementChild.focus();break;case"Tab":F.click();break;case"Escape":q(j,!1);break;default:Z=!1}Z&&(I.preventDefault(),I.stopImmediatePropagation())}));var Q=!1;v(t,"click",(function(I){Q||we()})),v(t,"mousedown",".wysi-listbox > button",(function(I){return Q=!0})),v(t,"mouseup",(function(I){return setTimeout((function(){Q=!1}))}));var te=0;function De(I){var F=te++,K=w("fieldset",{class:"wysi-segmented"});return K.appendChild(w("legend",{_textContent:I.label})),I.options.forEach((function(j){var Z=te++;K.appendChild(w("input",{id:"wysi-seg-"+Z,name:"wysi-"+I.toolName+"-"+I.name+"-"+F,type:"radio","data-attribute":I.name,value:j.value})),K.appendChild(w("label",{for:"wysi-seg-"+Z,_textContent:O(I.toolName,j.label)}))})),K}function de(I){var F=I.nextElementSibling.querySelectorAll('input[type="text"]'),K=I.nextElementSibling.querySelectorAll('input[type="radio"]'),j=t.getSelection(),Z=j.anchorNode,se=_(Z),A=se.editor,M=se.nodes,L={};if(A){var B=I.dataset.action,U=l[B],X=A.querySelector("."+d),z=!1;if(X||(X=M.filter((function(ne){return U.tags.includes(ne.tagName.toLowerCase())}))[0],z=!0),X){var ee=t.createRange();z?ee.selectNodeContents(X):ee.selectNode(X),V(ee),U.attributes.forEach((function(ne){L[ne]=X.getAttribute(ne)})),U.extraSettings&&U.extraSettings.forEach((function(ne){for(var Ce,Fe=o(U.formOptions[ne]);!(Ce=Fe()).done;){var Ue=Ce.value;if(Ue.criterion){var ye=Object.keys(Ue.criterion)[0],We=Ue.criterion[ye];if(X.style[ye]&&X.style[ye]===We){L[ne]=Ue.value;break}}}}))}else j&&A.contains(Z)&&j.rangeCount&&V(j.getRangeAt(0))}F.forEach((function(ne){ne.value=L[ne.dataset.attribute]||""})),K.forEach((function(ne){var Ce=L[ne.dataset.attribute]||"";ne.value===Ce&&(ne.checked=!0)})),q(I,!0),F[0].focus()}function Se(I){var F,K,j=I.dataset.action,Z=n,se=I.parentNode.querySelectorAll('input[type="text"]'),A=I.parentNode.querySelectorAll('input[type="radio"]'),M=_(I).editor,L=[];if(se.forEach((function(X){L.push(X.value)})),A.forEach((function(X){X.checked&&L.push(X.value)})),j==="image"){var B=M.querySelector("."+d),U=B?B.parentNode:{};B&&U.tagName==="A"&&L.push(U.outerHTML)}else j==="link"&&Z&&L.push((F=Z.cloneContents(),(K=w("div")).appendChild(F),K.innerHTML));H(j,M,L)}function re(I){var F=t.querySelector('.wysi-popover [aria-expanded="true"]');F&&q(F,!1),I||$()}v(t,"click",".wysi-popover > button",(function(I){re(),de(I.target)})),v(t,"keydown",".wysi-popover > button",(function(I){switch(I.key){case"ArrowUp":case"ArrowDown":case"Enter":case" ":de(I.target),I.preventDefault()}})),v(t,"click",".wysi-popover > div > button[data-action]",(function(I){Se(I.target),re(!0)})),v(t,"click",".wysi-popover > div > button:not([data-action])",(function(I){re()})),v(t,"click",".wysi-popover *:not(button)",(function(I){I.stopImmediatePropagation()})),v(t,"keydown",".wysi-popover *",(function(I){var F=I.target,K=F.parentNode,j=K.tagName==="DIV"?K:K.parentNode;switch(I.key){case"Tab":var Z=j.querySelector("input");I.shiftKey?F===Z&&(j.lastElementChild.focus(),I.preventDefault()):F.nextElementSibling||F.parentNode.nextElementSibling||(Z.focus(),I.preventDefault());break;case"Enter":F.tagName==="INPUT"&&(j.querySelector("[data-action]:last-of-type").click(),I.preventDefault());break;case"Escape":re(),I.stopImmediatePropagation()}}));var me=!1;function ce(I){var F=w("div",{class:"wysi-toolbar"});return I.forEach((function(K){switch(K){case"|":F.appendChild(w("div",{class:"wysi-separator"}));break;case"-":F.appendChild(w("div",{class:"wysi-newline"}));break;case"format":F.appendChild((function(){var A="format",M=O(A,l.format.label),L=O(A,l.format.paragraph),B=O(A,l.format.heading),U="wysi-format",X=l.format.tags.map((function(z){return{name:z,label:z==="p"?L:B+" "+z.substring(1),action:"format"}}));return Y({label:M,items:X,classes:U})})());break;default:typeof K=="object"?K.items&&F.appendChild((Z=(j=K).label||O("toolbar","Select an item"),se=j.items.map((function(A){return{label:O(A,l[A].label),icon:A,action:A}})),Y({label:Z,items:se}))):(function(A,M){var L=l[A],B=O(A,L.label),U=w("button",{type:"button",title:B,"aria-label":B,"aria-pressed":!1,"data-action":A,_innerHTML:'<svg><use href="#wysi-'+A+'"></use></svg>'});if(L.hasForm){var X=(function(z,ee){var ne=l[z],Ce=ne.attributeLabels,Fe=ne.attributes.map((function(pt,ir){return{name:pt,label:O(z,Ce[ir])}})),Ue=w("div",{class:"wysi-popover"}),ye=w("div",{tabindex:-1});if(ee.setAttribute("aria-haspopup",!0),ee.setAttribute("aria-expanded",!1),Ue.appendChild(ee),Ue.appendChild(ye),Fe.forEach((function(pt){if(z!=="link"||pt.name!=="target"){var ir=w("label"),kt=w("span",{_textContent:pt.label}),Ao=w("input",{type:"text",name:"wysi-"+pt.name,"data-attribute":pt.name});ir.appendChild(kt),ir.appendChild(Ao),ye.appendChild(ir)}})),z==="link"){var We=Fe.find((function(pt){return pt.name==="target"}));We&&(We.toolName=z,We.options=ne.formOptions&&ne.formOptions.target||[],ye.appendChild(w("span",{_textContent:We.label})),ye.appendChild(De(We)));var ct="unlink",Jt=O(z,l[ct].label);ye.appendChild(w("button",{type:"button",title:Jt,"aria-label":Jt,"data-action":ct,_innerHTML:'<svg><use href="#wysi-delete"></use></svg>'}))}z==="image"&&ne.extraSettings.map((function(pt,ir){return{name:pt,label:O(z,ne.extraSettingLabels[ir])}})).forEach((function(pt){pt.toolName=z,pt.options=ne.formOptions&&ne.formOptions[pt.name]||[],ye.appendChild(w("span",{_textContent:pt.label})),ye.appendChild(De(pt))}));var ko=w("button",{type:"button",_textContent:O("popover","Cancel")}),Zt=w("button",{type:"button","data-action":z,_textContent:O("popover","Save")});return ye.appendChild(ko),ye.appendChild(Zt),Ue})(A,U);M.appendChild(X)}else M.appendChild(U)})(K,F)}var j,Z,se})),F}function Ie(){var I=t.getSelection(),F=I.anchorNode;if(F){var K=I.getRangeAt(0),j=(function(z){for(;z.firstChild!==null;)z=z.firstChild;return z})(K.startContainer.nextElementSibling||K.startContainer),Z=_(K.intersectsNode(j)?j:F),se=Z.toolbar,A=Z.editor,M=Z.nodes,L=M.map((function(z){return z.tagName.toLowerCase()}));if(A){var B=A.querySelector("."+d);B&&L.push(B.tagName.toLowerCase());var U=E(A),X=c[U].allowedTags;se.querySelectorAll('[aria-pressed="true"]').forEach((function(z){return z.setAttribute("aria-pressed","false")})),se.querySelectorAll(".wysi-listbox > div > button:first-of-type").forEach((function(z){return R(z)})),L.forEach((function(z,ee){switch(z){case"p":case"h1":case"h2":case"h3":case"h4":case"li":var ne=se.querySelector('[data-action="format"][data-option="'+z+'"]'),Ce=M[ee].style.textAlign||M[ee].getAttribute("align");if(ne&&R(ne),Ce){var Fe="align"+Ce.charAt(0).toUpperCase()+Ce.slice(1),Ue=se.querySelector('[data-action="'+Fe+'"]');Ue&&(Ue.parentNode.getAttribute("role")==="listbox"?R(Ue):Ue.setAttribute("aria-pressed","true"))}break;default:var ye=X[z],We=ye?ye.toolName:void 0;We&&se.querySelector('[data-action="'+We+'"]').setAttribute("aria-pressed","true")}}))}}}v(t,"click",(function(I){me||re()})),v(t,"mousedown",".wysi-popover, .wysi-popover *",(function(I){me=!0})),v(t,"mouseup",(function(I){setTimeout((function(){me=!1}))})),v(t,"mousedown",".wysi-editor, .wysi-editor *",(function(I){var F=t.querySelector("."+d);F&&F!==I.target&&F.classList.remove(d)})),v(t,"mousedown",".wysi-editor img",(function(I){var F=I.target,K=t.createRange();F.classList.add(d),K.selectNode(F),G(K)})),v(t,"click",".wysi-toolbar > button",(function(I){var F=I.target,K=F.dataset.action,j=_(F).editor,Z=t.getSelection();Z&&j.contains(Z.anchorNode)&&H(K,j)})),v(t,"selectionchange",Ie),v(t,"input",".wysi-editor",Ie),N((function(){var I=S('<svg id="wysi-svg-icons" xmlns="http://www.w3.org/2000/svg"><defs><symbol id="wysi-bold" viewBox="0 0 24 24"><path d="M16.5,9.5A3.5,3.5,0,0,0,13,6H8.5a1,1,0,0,0-1,1V17a1,1,0,0,0,1,1H13a3.49,3.49,0,0,0,2.44-6A3.5,3.5,0,0,0,16.5,9.5ZM13,16H9.5V13H13a1.5,1.5,0,0,1,0,3Zm0-5H9.5V8H13a1.5,1.5,0,0,1,0,3Z"></path></symbol><symbol id="wysi-italic" viewBox="0 0 24 24"><path d="M17,6H11a1,1,0,0,0,0,2h1.52l-3.2,8H7a1,1,0,0,0,0,2h6a1,1,0,0,0,0-2H11.48l3.2-8H17a1,1,0,0,0,0-2Z"></path></symbol><symbol id="wysi-underline" viewBox="0 0 24 24"><path d="M12,15.5a5,5,0,0,0,5-5v-5a1,1,0,0,0-2,0v5a3,3,0,0,1-6,0v-5a1,1,0,0,0-2,0v5A5,5,0,0,0,12,15.5Zm5,2H7a1,1,0,0,0,0,2H17a1,1,0,0,0,0-2Z"></path></symbol><symbol id="wysi-strike" viewBox="0 0 24 24"><path d="M12 6C9.33 6 7.5 7.34 7.5 9.5c0 .58.12 1.07.35 1.5H13c-1.49-.34-3.49-.48-3.5-1.5 0-1.03 1.08-1.75 2.5-1.75s2.5.83 2.5 1.75h2C16.5 7.4 14.67 6 12 6zm-5.5 6c-.67 0-.67 1 0 1h4.35c.5.17 1.04.34 1.65.5.58.15 1.75.23 1.75 1s-.66 1.75-2.25 1.75-2.5-1.01-2.5-1.75h-2c0 1.64 1.33 3.5 4.5 3.5s4.5-2.08 4.5-3.5c0-.58-.05-1.07-.2-1.5h1.2c.67 0 .67-1 0-1z"></path></symbol><symbol id="wysi-alignLeft" viewBox="0 0 24 24"><path d="m4 8h16c1.33 0 1.33-2 0-2h-16c-1.33 0-1.33 2 0 2zm0 5h12c1.33 0 1.33-2 0-2h-12c-1.33 0-1.33 2 0 2zm16 3h-16c-1.33 0-1.33 2 0 2h16c1.34 0 1.29-2 0-2z"></path></symbol><symbol id="wysi-alignCenter" viewBox="0 0 24 24"><path d="m20 8h-16c-1.33 0-1.33-2 0-2h16c1.33 0 1.33 2 0 2zm-4 5h-8c-1.33 0-1.33-2 0-2h8c1.33 0 1.33 2 0 2zm-12 3h16c1.33 0 1.33 2 0 2h-16c-1.34 0-1.29-2 0-2z"></path></symbol><symbol id="wysi-alignRight" viewBox="0 0 24 24"><path d="m20 8h-16c-1.33 0-1.33-2 0-2h16c1.33 0 1.33 2 0 2zm0 5h-12c-1.33 0-1.33-2 0-2h12c1.33 0 1.33 2 0 2zm-16 3h16c1.33 0 1.33 2 0 2h-16c-1.34 0-1.29-2 0-2z"></path></symbol><symbol id="wysi-alignJustify" viewBox="0 0 24 24"><path d="m20 8h-16c-1.33 0-1.33-2 0-2h16c1.33 0 1.33 2 0 2zm0 5h-16c-1.33 0-1.33-2 0-2h16c1.33 0 1.33 2 0 2zm-16 3h16c1.33 0 1.33 2 0 2h-16c-1.34 0-1.29-2 0-2z"></path></symbol><symbol id="wysi-ul" viewBox="0 0 24 24"><path d="M3 6a1 1 0 0 0-1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0-1-1zm4 0a1 1 0 0 0 0 2h14a1 1 0 0 0 0-2H7zm-4 5a1 1 0 0 0-1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0-1-1zm4 0a1 1 0 0 0 0 2h14a1 1 0 0 0 0-2H7zm-4 5a1 1 0 0 0-1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0-1-1zm4 0a1 1 0 0 0 0 2h14a1 1 0 0 0 0-2H7z"></path></symbol><symbol id="wysi-ol" viewBox="0 0 24 24"><path d="M4 5c-.25 0-.5.17-.5.5v3c0 .67 1 .67 1 0v-3c0-.33-.25-.5-.5-.5zm4.5 1c-1.33 0-1.33 2 0 2h12c1.33 0 1.33-2 0-2zm-6 5.5h.75c0-.43.34-.75.75-.75.4 0 .75.28.75.75L2.5 13.25V14h3v-.75H3.75L5.5 12v-.5c0-.9-.73-1.49-1.5-1.5-.77 0-1.5.59-1.5 1.5zm6-.5c-1.33 0-1.33 2 0 2h12c1.33 0 1.33-2 0-2zM4 15c-.83 0-1.5.63-1.5 1.25h.75c0-.28.34-.5.75-.5s.75.22.75.5-.34.5-.75.5v.5c.41 0 .75.22.75.5s-.34.5-.75.5-.75-.22-.75-.5H2.5c0 .62.67 1.25 1.5 1.25s1.5-.5 1.5-1.12c0-.34-.2-.66-.56-.88.35-.2.56-.53.56-.87 0-.62-.67-1.12-1.5-1.12zm4.5 1c-1.33 0-1.33 2 0 2h12c1.33 0 1.33-2 0-2z"></path></symbol><symbol id="wysi-indent" viewBox="0 0 24 24"><path d="m20 8h-15.9c-1.33 0-1.33-2 0-2h15.9c1.33 0 1.33 2 0 2zm2.86e-4 5h-9.08c-1.33 0-1.33-2 0-2h9.08c1.33 0 1.33 2 0 2zm-16.7-3.31c0.356-0.423 0.988-0.477 1.41-0.12l2 1.66c0.483 0.4 0.483 1.14 0 1.54l-2 1.66c-0.179 0.153-0.405 0.238-0.64 0.24-0.297 4.83e-4 -0.58-0.131-0.77-0.36-0.354-0.425-0.296-1.06 0.13-1.41l1.08-0.9-1.08-0.9c-0.426-0.353-0.484-0.985-0.13-1.41zm0.77 6.31h15.9c1.33 0 1.33 2 0 2h-15.9c-1.33 0-1.33-2 0-2z"></path></symbol><symbol id="wysi-outdent" viewBox="0 0 24 24"><path d="m4.1 6c-1.33 0-1.33 2 0 2h15.9c1.33 0 1.33-2 0-2h-15.9zm1.96 3.33c-0.224 0.00238-0.448 0.0803-0.633 0.236l-2 1.66c-0.483 0.4-0.483 1.14 0 1.54l2 1.66c0.179 0.153 0.404 0.238 0.639 0.24 0.297 4.83e-4 0.581-0.131 0.771-0.359 0.354-0.425 0.295-1.06-0.131-1.41l-1.08-0.9 1.08-0.9c0.426-0.353 0.485-0.985 0.131-1.41-0.2-0.238-0.489-0.359-0.777-0.355zm4.88 1.67c-1.33 0-1.33 2 0 2h9.08c1.33 0 1.33-2 0-2h-9.08zm-6.87 5c-1.33 0-1.33 2 0 2h15.9c1.33 0 1.33-2 0-2h-15.9z"></path></symbol><symbol id="wysi-link" viewBox="0 0 24 24"><path d="M8,12a1,1,0,0,0,1,1h6a1,1,0,0,0,0-2H9A1,1,0,0,0,8,12Zm2,3H7A3,3,0,0,1,7,9h3a1,1,0,0,0,0-2H7A5,5,0,0,0,7,17h3a1,1,0,0,0,0-2Zm7-8H14a1,1,0,0,0,0,2h3a3,3,0,0,1,0,6H14a1,1,0,0,0,0,2h3A5,5,0,0,0,17,7Z"></path></symbol><symbol id="wysi-image" viewBox="0 0 24 24"><path d="M6 5a3 3 0 0 0-3 3v8a3 3 0 0 0 3 3h12a3 3 0 0 0 3-3V8a3 3 0 0 0-3-3H6zm0 2h12a1 1 0 0 1 1 1v5.73l-.88-.88a3.06 3.06 0 0 0-4.24 0l-.88.88-2.88-2.88A3.06 3.06 0 0 0 8 10a3.06 3.06 0 0 0-2.12.85l-.88.88V8a1 1 0 0 1 1-1zm1.85 4.98a1 1 0 0 1 .85.27L13.45 17H6a1 1 0 0 1-.98-.92H5v-1.53l2.3-2.3a1 1 0 0 1 .55-.26zm8 2a1 1 0 0 1 .85.27l2.17 2.16c-.19.33-.55.59-.86.59h-1.72l-1.86-1.87.88-.88a1 1 0 0 1 .54-.28z"></path></symbol><symbol id="wysi-quote" viewBox="0 0 24 24"><path d="m9 6c-2.2 0-4 1.96-4 4.36v6c0 0.903 0.672 1.64 1.5 1.64h3c0.828 0 1.5-0.733 1.5-1.64v-3.27c0-0.903-0.672-1.64-1.5-1.64h-1.75c-0.414 0-0.75-0.367-0.75-0.818v-0.273c0-1.2 0.899-2.18 2-2.18h0.5c0.274 0 0.5-0.246 0.5-0.545v-1.09c0-0.298-0.226-0.545-0.5-0.545zm8 0c-2.2 0-4 1.96-4 4.36v6c0 0.903 0.672 1.64 1.5 1.64h3c0.828 0 1.5-0.733 1.5-1.64v-3.27c0-0.903-0.672-1.64-1.5-1.64h-1.75c-0.414 0-0.75-0.367-0.75-0.818v-0.273c0-1.2 0.899-2.18 2-2.18h0.5c0.274 0 0.5-0.246 0.5-0.545v-1.09c0-0.298-0.226-0.545-0.5-0.545z"></path></symbol><symbol id="wysi-hr" viewBox="0 0 24 24"><path d="m20 11h-16c-1.33 0-1.33 2 0 2 0 0 16-0.018 16 0 1.33 0 1.33-2 0-2z"></path></symbol><symbol id="wysi-removeFormat" viewBox="0 0 24 24"><path d="M7 6C5.67 6 5.67 8 7 8h3l-2 7c0 .02 2 0 2 0l2-7h3c1.33 0 1.33-2 0-2H7zm7.06 7c-.79-.04-1.49.98-.75 1.72l.78.78-.78.79c-.94.93.47 2.35 1.4 1.4l.79-.78.78.79c.94.93 2.35-.47 1.41-1.41l-.78-.79.78-.78c.94-.94-.47-2.35-1.4-1.41l-.8.79-.77-.79a.99.99 0 0 0-.66-.3zM7 16c-1.33 0-1.33 2 0 2 .02-.02 4 0 4 0 1.33 0 1.33-2 0-2H7z"></path></symbol><symbol id="wysi-delete" viewBox="0 0 24 24"><path d="M10,18a1,1,0,0,0,1-1V11a1,1,0,0,0-2,0v6A1,1,0,0,0,10,18ZM20,6H16V5a3,3,0,0,0-3-3H11A3,3,0,0,0,8,5V6H4A1,1,0,0,0,4,8H5V19a3,3,0,0,0,3,3h8a3,3,0,0,0,3-3V8h1a1,1,0,0,0,0-2ZM10,5a1,1,0,0,1,1-1h2a1,1,0,0,1,1,1V6H10Zm7,14a1,1,0,0,1-1,1H8a1,1,0,0,1-1-1V8H17Zm-3-1a1,1,0,0,0,1-1V11a1,1,0,0,0-2,0v6A1,1,0,0,0,14,18Z"></path></symbol></defs></svg>');t.body.appendChild(I)}));var xe="style",be="align";function ae(I,F,K){var j=w("div"),Z=S(I);return Oe(Z,F),(function(se){var A=Array.from(se.childNodes);if(!(!A||!A.length)){var M=!1;A.forEach((function(L){if(L.nodeType!==3&&f.includes(L.tagName))M=!1;else if(M){var B=L.previousElementSibling;B&&B.appendChild(L)}else ue(L,"p"),M=!0}))}})(Z),et(Z,F),j.appendChild(Z),j.innerHTML}function ue(I,F,K){var j=w(F),Z=I.parentNode,se=I.attributes;if(j.innerHTML=I.innerHTML||I.textContent||I.outerHTML,K&&se)for(var A=0;A<se.length;A++)j.setAttribute(se[A].name,se[A].value);Z.replaceChild(j,I)}function ve(I,F){var K=I.getAttribute(xe);if(K){var j=K.split(";").map((function(Z){var se=Z.split(":");return{name:se[0].trim(),value:se[1]}})).filter((function(Z){return F.includes(Z.name)})).filter((function(Z){return Z.name!=="text-align"||Z.value.trim()!=="left"})).map((function(Z){return Z.name+": "+Z.value.trim()+";"})).join("");j!==""?I.setAttribute(xe,j):I.removeAttribute(xe)}}function Oe(I,F){var K=Array.from(I.childNodes);K&&K.length&&K.forEach((function(j){if(j.nodeType===1){Oe(j,F);var Z=j.tagName.toLowerCase(),se=F[Z],A=Array.from(j.attributes),M=j.getAttribute(be);if(se){for(var L=se.attributes||[],B=se.styles||[],U=0;U<A.length;U++){var X=A[U].name;L.includes(A[U].name)||(X===be&&M!=="left"&&(j.style.textAlign=M),X===xe&&B.length?ve(j,B):j.removeAttribute(A[U].name))}se.alias&&ue(j,se.alias,!0)}else if(Z==="style")I.removeChild(j);else{if(M!==null)if(j.parentNode&&j.parentNode.tagName==="LI")j.parentNode.style.textAlign=M;else for(var z,ee=o(j.childNodes);!(z=ee()).done;)z.value.style.textAlign=M;j.replaceWith.apply(j,j.childNodes)}}else j.nodeType===8&&I.removeChild(j)}))}function et(I,F){var K=Array.from(I.childNodes);K&&K.length&&K.forEach((function(j){if(j.nodeType===1){et(j,F);var Z=j.tagName.toLowerCase(),se=F[Z];se&&!se.isEmpty&&j.innerHTML.replace(/^\s+|\s+$/g,"").trim()===""&&I.removeChild(j)}}))}var at=0;function it(I){var F=e.wysiGlobalTranslations||{};(function(A){a=A})(Object.assign({},F,I.translations||{}));var K=I.tools||s.tools,j=D(I.el||s.el),Z=ce(K),se=(function(A){var M=x(s.allowedTags);return A.forEach((function(L){var B=x(l[L]);if(B&&B.tags){var U=!!B.isEmpty,X=B.extraTags||[],z=B.alias||[],ee=z.length?B.tags[0]:void 0,ne=[].concat(B.tags,X,z),Ce=B.attributes||[],Fe=B.styles||[];ne.forEach((function(Ue){M[Ue]={attributes:Ce,styles:Fe,alias:ee,isEmpty:U},X.includes(Ue)||(M[Ue].toolName=L)}))}})),M})(K);(I.customTags||[]).forEach((function(A){if(A.tags){var M=A.attributes||[],L=A.styles||[],B=!!A.isEmpty;A.tags.forEach((function(U){se[U]={attributes:M,styles:L,isEmpty:B}}))}})),j.forEach((function(A){var M=A.previousElementSibling;if(M&&y(M,"wysi-wrapper"))tt(M,I);else{var L=at++;c[L]=I,c[L].allowedTags=x(se);var B=w("div",{class:"wysi-wrapper"}),U=w("div",{class:"wysi-editor",contenteditable:!0,role:"textbox","aria-multiline":!0,"aria-label":T(A),"data-wid":L,_innerHTML:ae(A.value,se)});B.appendChild(Z.cloneNode(!0)),B.appendChild(U),A.before(B),tt(B,I)}}))}function tt(I,F){if(typeof F=="object")for(var K in F)switch(K){case"darkMode":case"autoGrow":case"autoHide":I.classList.toggle("wysi-"+K.toLowerCase(),!!F[K]);break;case"height":var j=F.height;if(!isNaN(j)){var Z=I.lastChild;Z.style.minHeight=j+"px",Z.style.maxHeight=j+"px"}}}function $e(I,F,K,j,Z){var se=c[K],A=ae(j,se.allowedTags),M=se.onChange;Z===!0&&(F.innerHTML=A),I.value=A,b(I,"change"),M&&M(A)}function yt(I){for(var F,K=o(k(I));!(F=K()).done;){var j=F.value,Z=j.instanceId,se=j.wrapper;delete c[Z],se.remove()}}function Xt(I,F){for(var K,j=o(k(I));!(K=j()).done;){var Z=K.value;$e(Z.textarea,Z.editor,Z.instanceId,F,!0)}}function Wt(I){var F=_(I.target),K=F.editor,j=F.nodes,Z=I.clipboardData;if(K&&Z.types.includes("text/html")){var se=Z.getData("text/html"),A=E(K),M=ae(se,c[A].allowedTags),L=j.filter((function(U){return u.includes(U.tagName)})).length>0;if(L&&!h){var B='<h1 class="'+p+'"><br></h1><p class="'+p+'"><br></p>';M=B+M+B}g("insertHTML",M),L&&!h&&(K.querySelectorAll("."+p).forEach((function(U){U.remove()})),K.querySelectorAll(u.join()).forEach((function(U){var X=U.firstElementChild;X&&f.includes(X.tagName)&&U.replaceWith.apply(U,U.childNodes)}))),I.preventDefault()}}e.Wysi=(function(){var I={destroy:yt,setContent:Xt};function F(Z){N((function(){it(Z||{})}))}var K=function(Z){F[Z]=function(){for(var se=arguments.length,A=new Array(se),M=0;M<se;M++)A[M]=arguments[M];N(I[Z],A)}};for(var j in I)K(j);return F})(),N((function(){g("styleWithCSS",!1),g("enableObjectResizing",!1),g("enableInlineTableEditing",!1),g("defaultParagraphSeparator","p"),v(t,"input",".wysi-editor",(function(I){var F=I.target;$e(F.parentNode.nextElementSibling,F,E(F),F.innerHTML)})),v(t,"paste",Wt)}))})(window,document);const Ox={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}=oe(e);return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,children:i.jsx("input",{type:"text",placeholder:o,disabled:!0,className:Ot()})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,value:s,onChange:l,errors:c,isDisabled:d}=oe(e);return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,errors:c,children:i.jsx("input",{type:"text",placeholder:o,value:s??"",onChange:p=>l==null?void 0:l(p.target.value),disabled:d,className:qt({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})})})}},Ix={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}=oe(e);return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,children:i.jsx("textarea",{placeholder:o,disabled:!0,rows:(s==null?void 0:s.rows)||3,className:`${Ot()} resize-none`})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,value:s,onChange:l,errors:c,isDisabled:d,config:p}=oe(e);return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,errors:c,children:i.jsx("textarea",{placeholder:o,value:s??"",onChange:u=>l==null?void 0:l(u.target.value),disabled:d,rows:(p==null?void 0:p.rows)||3,className:`${qt({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})} resize-none`})})}},Lx={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}=oe(e);return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,children:i.jsx("textarea",{placeholder:o,disabled:!0,rows:(s==null?void 0:s.minRows)||2,className:`${Ot()} resize-none`})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,value:s,onChange:l,errors:c,isDisabled:d,config:p}=oe(e);return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,errors:c,children:i.jsx("textarea",{placeholder:o,value:s??"",onChange:u=>l==null?void 0:l(u.target.value),disabled:d,rows:(p==null?void 0:p.minRows)||2,className:`${qt({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})} resize-none`})})}},yf={basic:["bold","italic","underline"],standard:["bold","italic","underline","strike","|","ul","ol","|","link"],advanced:["format","|","bold","italic","underline","strike","|","ul","ol","|","alignLeft","alignCenter","alignRight","|","link","quote","|","removeFormat"],full:["format","|","bold","italic","underline","strike","|","alignLeft","alignCenter","alignRight","alignJustify","|","ul","ol","|","indent","outdent","|","link","image","hr","quote","|","removeFormat"]},Fx=new Set(["format","quote","bold","italic","underline","strike","alignLeft","alignCenter","alignRight","alignJustify","ul","ol","indent","outdent","link","image","hr","removeFormat","unlink"]);function Vx(e){return e.filter((t,r,o)=>t!=="|"?!0:r>0&&r<o.length-1&&o[r-1]!=="|"&&o[r+1]!=="|")}function Gx(e){const t=e!=null&&e.toolbarPreset?yf[e.toolbarPreset]:void 0;let r;return t?r=[...t]:Array.isArray(e==null?void 0:e.toolbar)&&e.toolbar.length>0?r=e.toolbar.filter(o=>Fx.has(o)):r=[...yf.standard],(e==null?void 0:e.allowImages)===!1&&(r=r.filter(o=>o!=="image")),(e==null?void 0:e.allowLinks)===!1&&(r=r.filter(o=>o!=="link")),Vx(r)}const zx=({value:e,onChange:t,isDisabled:r,height:o,config:n})=>{const a=P.useRef(null),s=P.useRef(null),l=P.useRef(t);l.current=t;const c=P.useRef(e),d=P.useMemo(()=>Gx(n),[n]);return P.useEffect(()=>{if(r)return;const p=a.current;if(p)return window.Wysi({el:p,height:o,tools:d,onChange:u=>{var f;c.current=u,(f=l.current)==null||f.call(l,u)}}),s.current=p.previousElementSibling,()=>{s.current&&(s.current.remove(),s.current=null),window.Wysi.destroy(p)}},[r,o,d]),P.useEffect(()=>{r||!a.current||e!==c.current&&(c.current=e,window.Wysi.setContent(a.current,e??""))},[e,r]),r?i.jsx("div",{className:m("p-3 min-h-[120px] text-sm"),style:{height:o},dangerouslySetInnerHTML:{__html:e??""}}):i.jsx("textarea",{ref:a,value:e??"",onChange:()=>{},tabIndex:-1,"aria-hidden":"true",className:m("hidden")})},Bx=[Ox,Ix,Lx,{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:{toolbarPreset:"standard",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}=oe(e);return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,children:i.jsxs("div",{className:m("border border-gray-300 rounded-md bg-gray-50 overflow-hidden"),children:[i.jsxs("div",{className:m("flex items-center gap-1 p-2 border-b border-gray-200 bg-gray-100"),children:[i.jsx("button",{disabled:!0,className:m("p-1.5 rounded hover:bg-gray-200 text-gray-600"),children:i.jsx("strong",{children:"B"})}),i.jsx("button",{disabled:!0,className:m("p-1.5 rounded hover:bg-gray-200 text-gray-600"),children:i.jsx("em",{children:"I"})}),i.jsx("button",{disabled:!0,className:m("p-1.5 rounded hover:bg-gray-200 text-gray-600"),children:i.jsx("u",{children:"U"})}),i.jsx("span",{className:m("w-px h-4 bg-gray-300 mx-1")}),i.jsx("button",{disabled:!0,className:m("p-1.5 rounded hover:bg-gray-200 text-gray-600 text-xs"),children:"🔗"})]}),i.jsx("div",{className:m("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:l,isDisabled:c,config:d}=oe(e);return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:i.jsx("div",{className:`border rounded-md overflow-hidden ${((l==null?void 0:l.length)??0)>0?"border-red-500":"border-gray-300"}`,children:i.jsx(zx,{value:a,onChange:s,isDisabled:c,height:(d==null?void 0:d.height)||200,config:d})})})}}],Ux=[{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:l}=oe(e),c=i.jsx("input",{type:"number",placeholder:o,disabled:!0,className:`${Ot()} ${s?"":"rounded-l-md"} ${l?"":"rounded-r-md"}`});return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,children:s||l?i.jsx(Si,{prefix:s,suffix:l,children:c}):c})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,prefix:s,suffix:l,value:c,onChange:d,errors:p,isDisabled:u,config:f}=oe(e),h=g=>{const y=g.target.value===""?void 0:Number(g.target.value);d==null||d(y)},b=i.jsx("input",{type:"number",placeholder:o,value:c??"",onChange:h,disabled:u,step:(f==null?void 0:f.step)||1,className:`${qt({hasError:((p==null?void 0:p.length)??0)>0,disabled:u})} ${s?"rounded-l-none":""} ${l?"rounded-r-none":""}`});return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,errors:p,children:s||l?i.jsx(Si,{prefix:s,suffix:l,children:b}):b})}},{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}=oe(e),s=(a==null?void 0:a.min)??0,l=(a==null?void 0:a.max)??100;return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,children:i.jsxs("div",{className:m("flex items-center gap-3"),children:[i.jsx("span",{className:m("text-xs text-gray-500"),children:s}),i.jsx("input",{type:"range",min:s,max:l,disabled:!0,className:m("flex-1 h-2 bg-gray-200 rounded-lg appearance-none cursor-not-allowed")}),i.jsx("span",{className:m("text-xs text-gray-500"),children:l}),(a==null?void 0:a.showValue)&&i.jsx("span",{className:m("text-sm font-medium text-gray-600 min-w-[40px] text-center"),children:Math.round((s+l)/2)})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:l,isDisabled:c,config:d}=oe(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=a??p;return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:i.jsxs("div",{className:m("flex items-center gap-3"),children:[i.jsx("span",{className:m("text-xs text-gray-500"),children:p}),i.jsx("input",{type:"range",min:p,max:u,step:f,value:h,onChange:b=>s==null?void 0:s(Number(b.target.value)),disabled:c,className:m("flex-1 h-2 bg-gray-200 rounded-lg appearance-none cursor-pointer disabled:cursor-not-allowed")}),i.jsx("span",{className:m("text-xs text-gray-500"),children:u}),(d==null?void 0:d.showValue)&&i.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:a}=oe(e),s=(a==null?void 0:a.min)??0,l=(a==null?void 0:a.max)??100;return i.jsxs(ge,{label:t,description:r,required:o,labelPosition:n,children:[i.jsxs("div",{className:m("flex items-center gap-3"),children:[i.jsx("span",{className:m("text-xs text-gray-500"),children:s}),i.jsxs("div",{className:m("flex-1 relative h-2 bg-gray-200 rounded-lg"),children:[i.jsx("div",{className:m("absolute h-full bg-blue-400 rounded-lg left-[20%] right-[30%]")}),i.jsx("div",{className:m("absolute w-4 h-4 bg-white border-2 border-blue-500 rounded-full -top-1 left-[20%] -ml-2")}),i.jsx("div",{className:m("absolute w-4 h-4 bg-white border-2 border-blue-500 rounded-full -top-1 right-[30%] -mr-2")})]}),i.jsx("span",{className:m("text-xs text-gray-500"),children:l})]}),(a==null?void 0:a.showValue)&&i.jsxs("div",{className:m("flex justify-between text-sm text-gray-600 mt-2"),children:[i.jsxs("span",{children:["Min: ",Math.round(s+(l-s)*.2)]}),i.jsxs("span",{children:["Max: ",Math.round(s+(l-s)*.7)]})]})]})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:l,isDisabled:c,config:d}=oe(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=(a==null?void 0:a.min)??Math.round(p+(u-p)*.2),b=(a==null?void 0:a.max)??Math.round(p+(u-p)*.8),g=x=>{const w=Number(x.target.value),N=Math.min(w,b-((d==null?void 0:d.minRange)??0));s==null||s({min:N,max:b})},y=x=>{const w=Number(x.target.value),N=Math.max(w,h+((d==null?void 0:d.minRange)??0));s==null||s({min:h,max:N})},v=(h-p)/(u-p)*100,S=100-(b-p)/(u-p)*100;return i.jsxs(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:[i.jsxs("div",{className:m("flex items-center gap-3"),children:[i.jsx("span",{className:m("text-xs text-gray-500"),children:p}),i.jsxs("div",{className:m("flex-1 relative h-2 bg-gray-200 rounded-lg"),children:[i.jsx("div",{className:m("absolute h-full bg-blue-400 rounded-lg"),style:{left:`${v}%`,right:`${S}%`}}),i.jsx("input",{type:"range",min:p,max:u,step:f,value:h,onChange:g,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}}),i.jsx("input",{type:"range",min:p,max:u,step:f,value:b,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:4}})]}),i.jsx("span",{className:m("text-xs text-gray-500"),children:u})]}),(d==null?void 0:d.showValue)&&i.jsxs("div",{className:m("flex justify-between text-sm text-gray-600 mt-2"),children:[i.jsxs("span",{children:["Min: ",h]}),i.jsxs("span",{children:["Max: ",b]})]})]})}}],Wx=[{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}=oe(e),s=(a==null?void 0:a.options)||[];return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,children:i.jsxs("div",{className:m("space-y-2"),children:[s.map((l,c)=>i.jsxs("label",{className:m("flex items-center gap-2"),children:[i.jsx("input",{type:"radio",disabled:!0,className:m("text-blue-600")}),i.jsx("span",{className:m("text-sm text-gray-700"),children:l.label})]},c)),(a==null?void 0:a.allowOther)&&i.jsxs("label",{className:m("flex items-center gap-2"),children:[i.jsx("input",{type:"radio",disabled:!0,className:m("text-blue-600")}),i.jsx("span",{className:m("text-sm text-gray-700"),children:"Other"})]})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:l,isDisabled:c,config:d}=oe(e),p=(d==null?void 0:d.options)||[];return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:i.jsxs("div",{className:m("space-y-2"),children:[p.map((u,f)=>i.jsxs("label",{className:m("flex items-center gap-2 cursor-pointer"),children:[i.jsx("input",{type:"radio",checked:a===u.value,onChange:()=>s==null?void 0:s(u.value),disabled:c,className:m("text-blue-600")}),i.jsx("span",{className:m("text-sm text-gray-700"),children:u.label})]},f)),(d==null?void 0:d.allowOther)&&i.jsxs("label",{className:m("flex items-center gap-2 cursor-pointer"),children:[i.jsx("input",{type:"radio",checked:a==="__other__",onChange:()=>s==null?void 0:s("__other__"),disabled:c,className:m("text-blue-600")}),i.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:a}=oe(e),s=(a==null?void 0:a.options)||[];return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,children:i.jsxs("div",{className:m("space-y-2"),children:[s.map((l,c)=>i.jsxs("label",{className:m("flex items-center gap-2"),children:[i.jsx("input",{type:"checkbox",disabled:!0,className:m("text-blue-600 rounded")}),i.jsx("span",{className:m("text-sm text-gray-700"),children:l.label})]},c)),(a==null?void 0:a.allowOther)&&i.jsxs("label",{className:m("flex items-center gap-2"),children:[i.jsx("input",{type:"checkbox",disabled:!0,className:m("text-blue-600 rounded")}),i.jsx("span",{className:m("text-sm text-gray-700"),children:"Other"})]})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:l,isDisabled:c,config:d}=oe(e),p=(d==null?void 0:d.options)||[],u=Array.isArray(a)?a:[],f=h=>{const b=u.includes(h)?u.filter(g=>g!==h):[...u,h];s==null||s(b)};return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:i.jsxs("div",{className:m("space-y-2"),children:[p.map((h,b)=>i.jsxs("label",{className:m("flex items-center gap-2 cursor-pointer"),children:[i.jsx("input",{type:"checkbox",checked:u.includes(h.value),onChange:()=>f(h.value),disabled:c,className:m("text-blue-600 rounded")}),i.jsx("span",{className:m("text-sm text-gray-700"),children:h.label})]},b)),(d==null?void 0:d.allowOther)&&i.jsxs("label",{className:m("flex items-center gap-2 cursor-pointer"),children:[i.jsx("input",{type:"checkbox",checked:u.includes("__other__"),onChange:()=>f("__other__"),disabled:c,className:m("text-blue-600 rounded")}),i.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:a,config:s}=oe(e),l=(s==null?void 0:s.options)||[];return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,children:i.jsxs("select",{disabled:!0,className:Ot(),children:[i.jsx("option",{children:o||"Select an option..."}),l.map((c,d)=>i.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:l,errors:c,isDisabled:d,config:p}=oe(e),u=(p==null?void 0:p.options)||[];return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,errors:c,children:i.jsxs("select",{value:s??"",onChange:f=>l==null?void 0:l(f.target.value||void 0),disabled:d,className:qt({hasError:((c==null?void 0:c.length)??0)>0,disabled:d}),children:[i.jsx("option",{value:"",children:o||"Select an option..."}),u.map((f,h)=>i.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:a}=oe(e);return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,children:i.jsxs("div",{className:m("flex flex-wrap gap-2 p-2 border border-gray-300 rounded-md bg-gray-50 min-h-[42px]"),children:[i.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",i.jsx("button",{disabled:!0,className:m("text-blue-600 hover:text-blue-800"),children:"×"})]}),i.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",i.jsx("button",{disabled:!0,className:m("text-blue-600 hover:text-blue-800"),children:"×"})]}),i.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:a,value:s,onChange:l,errors:c,isDisabled:d,config:p}=oe(e),u=Array.isArray(s)?s:[],[f,h]=P.useState(""),b=y=>{y.key==="Enter"&&f.trim()&&(y.preventDefault(),!u.includes(f.trim())&&(!(p!=null&&p.maxTags)||u.length<p.maxTags)&&(l==null||l([...u,f.trim()])),h(""))},g=y=>{l==null||l(u.filter(v=>v!==y))};return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,errors:c,children:i.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((y,v)=>i.jsxs("span",{className:m("inline-flex items-center gap-1 px-2 py-1 bg-blue-100 text-blue-800 text-sm rounded"),children:[y,!d&&i.jsx("button",{type:"button",onClick:()=>g(y),className:m("text-blue-600 hover:text-blue-800"),children:"×"})]},v)),!d&&(!(p!=null&&p.maxTags)||u.length<p.maxTags)&&i.jsx("input",{type:"text",placeholder:o||"Add tag...",value:f,onChange:y=>h(y.target.value),onKeyDown:b,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}=oe(e);return i.jsx("div",{className:m("space-y-1.5"),children:i.jsxs("label",{className:m("flex items-start gap-3 cursor-pointer"),children:[i.jsx("input",{type:"checkbox",disabled:!0,className:m("mt-1 text-blue-600 rounded")}),i.jsxs("div",{children:[i.jsx("span",{className:m("text-sm text-gray-700"),children:t}),o&&i.jsx("span",{className:m("text-red-500 ml-1"),children:"*"}),r&&i.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:a,errors:s,isDisabled:l}=oe(e);return i.jsxs("div",{className:m("space-y-1.5"),children:[i.jsxs("label",{className:m("flex items-start gap-3 cursor-pointer"),children:[i.jsx("input",{type:"checkbox",checked:n??!1,onChange:c=>a==null?void 0:a(c.target.checked),disabled:l,className:m("mt-1 text-blue-600 rounded")}),i.jsxs("div",{children:[i.jsx("span",{className:m("text-sm text-gray-700"),children:t}),o&&i.jsx("span",{className:m("text-red-500 ml-1"),children:"*"}),r&&i.jsx("p",{className:m("text-xs text-gray-500 mt-0.5"),children:r})]})]}),s&&s.length>0&&i.jsx("div",{className:m("space-y-1"),children:s.map((c,d)=>i.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:a}=oe(e);return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,children:i.jsxs("div",{className:m("flex items-center gap-2"),children:[i.jsx("span",{className:m("text-sm text-gray-500"),children:(a==null?void 0:a.offLabel)||"Off"}),i.jsx("div",{className:m("relative w-11 h-6 bg-gray-300 rounded-full"),children:i.jsx("div",{className:m("absolute left-1 top-1 w-4 h-4 bg-white rounded-full transition-transform")})}),i.jsx("span",{className:m("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:l,isDisabled:c,config:d}=oe(e),p=a??!1;return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:i.jsxs("div",{className:m("flex items-center gap-2"),children:[i.jsx("span",{className:m("text-sm text-gray-500"),children:(d==null?void 0:d.offLabel)||"Off"}),i.jsx("button",{type:"button",onClick:()=>!c&&(s==null?void 0:s(!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:i.jsx("div",{className:`absolute top-1 w-4 h-4 bg-white rounded-full transition-transform ${p?"translate-x-6":"translate-x-1"}`})}),i.jsx("span",{className:m("text-sm text-gray-500"),children:(d==null?void 0:d.onLabel)||"On"})]})})}}];var Hx=Object.defineProperty,jx=(e,t)=>Hx(e,"name",{value:t,configurable:!0});function Ni(e,[t,r]){return Math.min(r,Math.max(t,e))}jx(Ni,"clamp");var qx=Object.defineProperty,cn=(e,t)=>qx(e,"name",{value:t,configurable:!0}),vf=!!(typeof window<"u"&&window.document&&window.document.createElement);function Pe(e,t,{checkForDefaultPrevented:r=!0}={}){return cn(function(n){if(e==null||e(n),r===!1||!n||!n.defaultPrevented)return t==null?void 0:t(n)},"handleEvent")}cn(Pe,"composeEventHandlers");function Yx(e){var t;if(!vf)throw new Error("Cannot access window outside of the DOM");return((t=e==null?void 0:e.ownerDocument)==null?void 0:t.defaultView)??window}cn(Yx,"getOwnerWindow");function Ei(e){if(!vf)throw new Error("Cannot access document outside of the DOM");return(e==null?void 0:e.ownerDocument)??document}cn(Ei,"getOwnerDocument");function wf(e,t=!1){const{activeElement:r}=Ei(e);if(!(r!=null&&r.nodeName))return null;if(xf(r)&&r.contentDocument)return wf(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}cn(wf,"getActiveElement");function xf(e){return e.tagName==="IFRAME"}cn(xf,"isFrame");var Qx=Object.defineProperty,dr=(e,t)=>Qx(e,"name",{value:t,configurable:!0});function Kx(e,t){const r=C.createContext(t);r.displayName=e+"Context";const o=dr(a=>{const{children:s,...l}=a,c=C.useMemo(()=>l,Object.values(l));return i.jsx(r.Provider,{value:c,children:s})},"Provider");o.displayName=e+"Provider";function n(a,s={}){const{optional:l=!1}=s,c=C.useContext(r);if(c)return c;if(t!==void 0)return t;if(!l)throw new Error(`\`${a}\` must be used within \`${e}\``)}return dr(n,"useContext"),[o,n]}dr(Kx,"createContext");function ur(e,t=[]){let r=[];function o(a,s){const l=C.createContext(s);l.displayName=a+"Context";const c=r.length;r=[...r,s];const d=dr(u=>{var v;const{scope:f,children:h,...b}=u,g=((v=f==null?void 0:f[e])==null?void 0:v[c])||l,y=C.useMemo(()=>b,Object.values(b));return i.jsx(g.Provider,{value:y,children:h})},"Provider");d.displayName=a+"Provider";function p(u,f,h={}){var v;const{optional:b=!1}=h,g=((v=f==null?void 0:f[e])==null?void 0:v[c])||l,y=C.useContext(g);if(y)return y;if(s!==void 0)return s;if(!b)throw new Error(`\`${u}\` must be used within \`${a}\``)}return dr(p,"useContext"),[d,p]}dr(o,"createContext");const n=dr(()=>{const a=r.map(s=>C.createContext(s));return dr(function(l){const c=(l==null?void 0:l[e])||a;return C.useMemo(()=>({[`__scope${e}`]:{...l,[e]:c}}),[l,c])},"useScope")},"createScope");return n.scopeName=e,[o,Cf(n,...t)]}dr(ur,"createContextScope");function Cf(...e){const t=e[0];if(e.length===1)return t;const r=dr(()=>{const o=e.map(n=>({useScope:n(),scopeName:n.scopeName}));return dr(function(a){const s=o.reduce((l,{useScope:c,scopeName:d})=>{const u=c(a)[`__scope${d}`];return{...l,...u}},{});return C.useMemo(()=>({[`__scope${t.scopeName}`]:s}),[s])},"useComposedScopes")},"createScope");return r.scopeName=t.scopeName,r}dr(Cf,"composeContextScopes");var Rx=Object.defineProperty,ki=(e,t)=>Rx(e,"name",{value:t,configurable:!0});function Ai(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}ki(Ai,"setRef");function Sf(...e){return t=>{let r=!1;const o=e.map(n=>{const a=Ai(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():Ai(e[n],null)}}}}ki(Sf,"composeRefs");function Re(...e){return C.useCallback(Sf(...e),e)}ki(Re,"useComposedRefs");var Xx=Object.defineProperty,vr=(e,t)=>Xx(e,"name",{value:t,configurable:!0});function Kr(e){const t=C.forwardRef((r,o)=>{let{children:n,...a}=r,s=null,l=!1;const c=[];_i(n)&&typeof os=="function"&&(n=os(n._payload)),C.Children.forEach(n,f=>{var h;if(_f(f)){l=!0;const b=f;let g="child"in b.props?b.props.child:b.props.children;_i(g)&&typeof os=="function"&&(g=os(g._payload)),s=Zx(b,g),c.push((h=s==null?void 0:s.props)==null?void 0:h.children)}else c.push(f)}),s?s=C.cloneElement(s,void 0,c):!l&&C.Children.count(n)===1&&C.isValidElement(n)&&(s=n);const d=s?Af(s):void 0,p=Re(o,d);if(!s){if(n||n===0)throw new Error(l?rC(e):tC(e));return n}const u=kf(a,s.props??{});return s.type!==C.Fragment&&(u.ref=o?p:d),C.cloneElement(s,u)});return t.displayName=`${e}.Slot`,t}vr(Kr,"createSlot");var Jx=Kr("Slot"),Nf=Symbol.for("radix.slottable");function Ef(e){const t=vr(r=>"child"in r?r.children(r.child):r.children,"Slottable");return t.displayName=`${e}.Slottable`,t.__radixId=Nf,t}vr(Ef,"createSlottable");var Zx=vr((e,t)=>{if("child"in e.props){const r=e.props.child;return C.isValidElement(r)?C.cloneElement(r,void 0,e.props.children(r.props.children)):null}return C.isValidElement(t)?t:null},"getSlottableElementFromSlottable");function kf(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]=(...l)=>{const c=a(...l);return n(...l),c}:n&&(r[o]=n):o==="style"?r[o]={...n,...a}:o==="className"&&(r[o]=[n,a].filter(Boolean).join(" "))}return{...e,...r}}vr(kf,"mergeProps");function Af(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)}vr(Af,"getElementRef");function _f(e){return C.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===Nf}vr(_f,"isSlottable");var eC=Symbol.for("react.lazy");function _i(e){return e!=null&&typeof e=="object"&&"$$typeof"in e&&e.$$typeof===eC&&"_payload"in e&&Tf(e._payload)}vr(_i,"isLazyComponent");function Tf(e){return typeof e=="object"&&e!==null&&"then"in e}vr(Tf,"isPromiseLike");var tC=vr(e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,"createSlotError"),rC=vr(e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,"createSlottableError"),os=C[" use ".trim().toString()],oC=Object.defineProperty,_t=(e,t)=>oC(e,"name",{value:t,configurable:!0});function ns(e){const t=e+"CollectionProvider",[r,o]=ur(t),[n,a]=r(t,{collectionRef:{current:null},itemMap:new Map}),s=_t(g=>{const{scope:y,children:v}=g,S=C.useRef(null),x=C.useRef(new Map).current;return i.jsx(n,{scope:y,itemMap:x,collectionRef:S,children:v})},"CollectionProvider");s.displayName=t;const l=e+"CollectionSlot",c=Kr(l),d=C.forwardRef((g,y)=>{const{scope:v,children:S}=g,x=a(l,v),w=Re(y,x.collectionRef);return i.jsx(c,{ref:w,children:S})});d.displayName=l;const p=e+"CollectionItemSlot",u="data-radix-collection-item",f=Kr(p),h=C.forwardRef((g,y)=>{const{scope:v,children:S,...x}=g,w=C.useRef(null),N=Re(y,w),k=a(p,v);return C.useEffect(()=>(k.itemMap.set(w,{ref:w,...x}),()=>void k.itemMap.delete(w))),i.jsx(f,{[u]:"",ref:N,children:S})});h.displayName=p;function b(g){const y=a(e+"CollectionConsumer",g);return C.useCallback(()=>{const S=y.collectionRef.current;if(!S)return[];const x=Array.from(S.querySelectorAll(`[${u}]`));return Array.from(y.itemMap.values()).sort((k,_)=>x.indexOf(k.ref.current)-x.indexOf(_.ref.current))},[y.collectionRef,y.itemMap])}return _t(b,"useCollection"),[{Provider:s,Slot:d,ItemSlot:h},b,o]}_t(ns,"createCollection");var Df=new WeakMap,Ti=(lr=class extends Map{constructor(r){super(r);sw(this,St);Eu(this,St,[...super.keys()]),Df.set(this,!0)}set(r,o){return Df.get(this)&&(this.has(r)?jt(this,St)[jt(this,St).indexOf(r)]=r:jt(this,St).push(r)),super.set(r,o),this}insert(r,o,n){const a=this.has(o),s=jt(this,St).length,l=Di(r);let c=l>=0?l:s+l;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 p=this.size+(a?0:1);l<0&&c++;const u=[...jt(this,St)];let f,h=!1;for(let b=c;b<p;b++)if(c===b){let g=u[b];u[b]===o&&(g=u[b+1]),a&&this.delete(o),f=this.get(g),this.set(o,n)}else{!h&&u[b-1]===o&&(h=!0);const g=u[h?b:b-1],y=f;f=this.get(g),this.delete(g),this.set(g,y)}return this}with(r,o,n){const a=new lr(this);return a.insert(r,o,n),a}before(r){const o=jt(this,St).indexOf(r)-1;if(!(o<0))return this.entryAt(o)}setBefore(r,o,n){const a=jt(this,St).indexOf(r);return a===-1?this:this.insert(a,o,n)}after(r){let o=jt(this,St).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=jt(this,St).indexOf(r);return a===-1?this:this.insert(a+1,o,n)}first(){return this.entryAt(0)}last(){return this.entryAt(-1)}clear(){return Eu(this,St,[]),super.clear()}delete(r){const o=super.delete(r);return o&&jt(this,St).splice(jt(this,St).indexOf(r),1),o}deleteAt(r){const o=this.keyAt(r);return o!==void 0?this.delete(o):!1}at(r){const o=as(jt(this,St),r);if(o!==void 0)return this.get(o)}entryAt(r){const o=as(jt(this,St),r);if(o!==void 0)return[o,this.get(o)]}indexOf(r){return jt(this,St).indexOf(r)}keyAt(r){return as(jt(this,St),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 lr(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 lr(n)}reduce(...r){const[o,n]=r;let a=0,s=n??this.at(0);for(const l of this)a===0&&r.length===1?s=l:s=Reflect.apply(o,this,[s,l,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 l=this.at(s);s===this.size-1&&r.length===1?a=l:a=Reflect.apply(o,this,[a,l,s,this])}return a}toSorted(r){const o=[...this.entries()].sort(r);return new lr(o)}toReversed(){const r=new lr;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 lr(o)}slice(r,o){const n=new lr;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 l=this.keyAt(s),c=this.get(l);n.set(l,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}},St=new WeakMap,_t(lr,"OrderedDict"),lr);function as(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]}_t(as,"at");function $f(e,t){const r=e.length,o=Di(t),n=o>=0?o:r+o;return n<0||n>=r?-1:n}_t($f,"toSafeIndex");function Di(e){return e!==e||e===0?0:Math.trunc(e)}_t(Di,"toSafeInteger");function nC(e){const t=e+"CollectionProvider",[r,o]=ur(t),[n,a]=r(t,{collectionElement:null,collectionRef:{current:null},collectionRefObject:{current:null},itemMap:new Ti,setItemMap:_t(()=>{},"setItemMap")}),s=_t(({state:x,...w})=>x?i.jsx(c,{...w,state:x}):i.jsx(l,{...w}),"CollectionProvider");s.displayName=t;const l=_t(x=>{const w=y();return i.jsx(c,{...x,state:w})},"CollectionInit");l.displayName=t+"Init";const c=_t(x=>{const{scope:w,children:N,state:k}=x,_=C.useRef(null),[E,D]=C.useState(null),T=Re(_,D),[O,$]=k;return C.useEffect(()=>{if(!E)return;const V=Of(()=>{});return V.observe(E,{childList:!0,subtree:!0}),()=>{V.disconnect()}},[E]),i.jsx(n,{scope:w,itemMap:O,setItemMap:$,collectionRef:T,collectionRefObject:_,collectionElement:E,children:N})},"CollectionProviderImpl");c.displayName=t+"Impl";const d=e+"CollectionSlot",p=Kr(d),u=C.forwardRef((x,w)=>{const{scope:N,children:k}=x,_=a(d,N),E=Re(w,_.collectionRef);return i.jsx(p,{ref:E,children:k})});u.displayName=d;const f=e+"CollectionItemSlot",h="data-radix-collection-item",b=Kr(f),g=C.forwardRef((x,w)=>{const{scope:N,children:k,..._}=x,E=C.useRef(null),[D,T]=C.useState(null),O=Re(w,E,T),$=a(f,N),{setItemMap:V}=$,G=C.useRef(_);Pf(G.current,_)||(G.current=_);const q=G.current;return C.useEffect(()=>{const H=q;return V(Y=>D?Y.has(D)?Y.set(D,{...H,element:D}).toSorted($i):(Y.set(D,{...H,element:D}),Y.toSorted($i)):Y),()=>{V(Y=>!D||!Y.has(D)?Y:(Y.delete(D),new Ti(Y)))}},[D,q,V]),i.jsx(b,{[h]:"",ref:O,children:k})});g.displayName=f;function y(){return C.useState(new Ti)}_t(y,"useInitCollection");function v(x){const{itemMap:w}=a(e+"CollectionConsumer",x);return w}return _t(v,"useCollection"),[{Provider:s,Slot:u,ItemSlot:g},{createCollectionScope:o,useCollection:v,useInitCollection:y}]}_t(nC,"createCollection");function Pf(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}_t(Pf,"shallowEqual");function Mf(e,t){return!!(t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_PRECEDING)}_t(Mf,"isElementPreceding");function $i(e,t){return!e[1].element||!t[1].element?0:Mf(e[1].element,t[1].element)?-1:1}_t($i,"sortByDocumentPosition");function Of(e){return new MutationObserver(r=>{for(const o of r)if(o.type==="childList"){e();return}})}_t(Of,"getChildListObserver");var aC=Object.defineProperty,sC=(e,t)=>aC(e,"name",{value:t,configurable:!0}),lC=C.createContext(void 0);function Gn(e){const t=C.useContext(lC);return e||t||"ltr"}sC(Gn,"useDirection");var iC=Object.defineProperty,cC=(e,t)=>iC(e,"name",{value:t,configurable:!0}),dC=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],Be=dC.reduce((e,t)=>{const r=Kr(`Primitive.${t}`),o=C.forwardRef((n,a)=>{const{asChild:s,...l}=n,c=s?r:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),i.jsx(c,{...l,ref:a})});return o.displayName=`Primitive.${t}`,{...e,[t]:o}},{});function If(e,t){e&&Pn.flushSync(()=>e.dispatchEvent(t))}cC(If,"dispatchDiscreteCustomEvent");var uC=Object.defineProperty,fC=(e,t)=>uC(e,"name",{value:t,configurable:!0});function wr(e){const t=C.useRef(e);return C.useEffect(()=>{t.current=e}),C.useMemo(()=>((...r)=>{var o;return(o=t.current)==null?void 0:o.call(t,...r)}),[])}fC(wr,"useCallbackRef");var pC=Object.defineProperty,Tt=(e,t)=>pC(e,"name",{value:t,configurable:!0}),Pi="dismissableLayer.update",hC="dismissableLayer.pointerDownOutside",mC="dismissableLayer.focusOutside",Lf,Ff=C.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),Mi=C.forwardRef(Tt(function(t,r){const{disableOutsidePointerEvents:o=!1,deferPointerDownOutside:n=!1,onEscapeKeyDown:a,onPointerDownOutside:s,onFocusOutside:l,onInteractOutside:c,onDismiss:d,...p}=t,u=C.useContext(Ff),[f,h]=C.useState(null),b=(f==null?void 0:f.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,g]=C.useState({}),y=Re(r,h),v=Array.from(u.layers),[S]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),x=S?v.indexOf(S):-1,w=f?v.indexOf(f):-1,N=u.layersWithOutsidePointerEventsDisabled.size>0,k=w>=x,_=C.useRef(!1),E=Gf($=>{s==null||s($),c==null||c($),$.defaultPrevented||d==null||d()},{ownerDocument:b,deferPointerDownOutside:n,isDeferredPointerDownOutsideRef:_,dismissableSurfaces:u.dismissableSurfaces,shouldHandlePointerDownOutside:C.useCallback($=>{if(!($ instanceof Node))return!1;const V=[...u.branches].some(G=>G.contains($));return k&&!V},[u.branches,k])}),D=zf($=>{if(n&&_.current)return;const V=$.target;[...u.branches].some(q=>q.contains(V))||(l==null||l($),c==null||c($),$.defaultPrevented||d==null||d())},b),T=f?w===v.length-1:!1,O=wr($=>{$.key==="Escape"&&(a==null||a($),!$.defaultPrevented&&d&&($.preventDefault(),d()))});return C.useEffect(()=>{if(T)return b.addEventListener("keydown",O,{capture:!0}),()=>b.removeEventListener("keydown",O,{capture:!0})},[b,T,O]),C.useEffect(()=>{if(f)return o&&(u.layersWithOutsidePointerEventsDisabled.size===0&&(Lf=b.body.style.pointerEvents,b.body.style.pointerEvents="none"),u.layersWithOutsidePointerEventsDisabled.add(f)),u.layers.add(f),Oi(),()=>{o&&(u.layersWithOutsidePointerEventsDisabled.delete(f),u.layersWithOutsidePointerEventsDisabled.size===0&&(b.body.style.pointerEvents=Lf))}},[f,b,o,u]),C.useEffect(()=>()=>{f&&(u.layers.delete(f),u.layersWithOutsidePointerEventsDisabled.delete(f),Oi())},[f,u]),C.useEffect(()=>{const $=Tt(()=>g({}),"handleUpdate");return document.addEventListener(Pi,$),()=>document.removeEventListener(Pi,$)},[]),i.jsx(Be.div,{...p,ref:y,style:{pointerEvents:N?k?"auto":"none":void 0,...t.style},onFocusCapture:Pe(t.onFocusCapture,D.onFocusCapture),onBlurCapture:Pe(t.onBlurCapture,D.onBlurCapture),onPointerDownCapture:Pe(t.onPointerDownCapture,E.onPointerDownCapture)})},"DismissableLayer"));function Vf(){const e=C.useContext(Ff),[t,r]=C.useState(null);return C.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),r}Tt(Vf,"useDismissableLayerSurface");var bC=Tt(()=>!0,"IS_TRUE");function Gf(e,t){const{ownerDocument:r=globalThis==null?void 0:globalThis.document,deferPointerDownOutside:o=!1,isDeferredPointerDownOutsideRef:n,dismissableSurfaces:a,shouldHandlePointerDownOutside:s=bC}=t,l=wr(e),c=C.useRef(!1),d=C.useRef(!1),p=C.useRef(new Map),u=C.useRef(()=>{});return C.useEffect(()=>{function f(){d.current=!1,n.current=!1,p.current.clear()}Tt(f,"resetOutsideInteraction");function h(){return Array.from(p.current.values()).some(Boolean)}Tt(h,"isOutsideInteractionIntercepted");function b(x){if(!d.current)return;const w=x.target;w instanceof Node&&[...a].some(k=>k.contains(w))||p.current.set(x.type,!0),x.type==="click"&&window.setTimeout(()=>{d.current&&u.current()},0)}Tt(b,"handleInteractionCapture");function g(x){d.current&&p.current.set(x.type,!1)}Tt(g,"handleInteractionBubble");const y=Tt(x=>{if(x.target&&!c.current){let w=function(){r.removeEventListener("click",u.current);const k=h();f(),k||Ii(hC,l,N,{discrete:!0})};if(Tt(w,"handleAndDispatchPointerDownOutsideEvent"),!s(x.target)){r.removeEventListener("click",u.current),f(),c.current=!1;return}const N={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,b,!0),r.addEventListener(x,g);const S=window.setTimeout(()=>{r.addEventListener("pointerdown",y)},0);return()=>{window.clearTimeout(S),r.removeEventListener("pointerdown",y),r.removeEventListener("click",u.current);for(const x of v)r.removeEventListener(x,b,!0),r.removeEventListener(x,g)}},[r,l,o,n,a,s]),{onPointerDownCapture:Tt(()=>c.current=!0,"onPointerDownCapture")}}Tt(Gf,"usePointerDownOutside");function zf(e,t=globalThis==null?void 0:globalThis.document){const r=wr(e),o=C.useRef(!1);return C.useEffect(()=>{const n=Tt(a=>{a.target&&!o.current&&Ii(mC,r,{originalEvent:a},{discrete:!1})},"handleFocus");return t.addEventListener("focusin",n),()=>t.removeEventListener("focusin",n)},[t,r]),{onFocusCapture:Tt(()=>o.current=!0,"onFocusCapture"),onBlurCapture:Tt(()=>o.current=!1,"onBlurCapture")}}Tt(zf,"useFocusOutside");function Oi(){const e=new CustomEvent(Pi);document.dispatchEvent(e)}Tt(Oi,"dispatchUpdate");function Ii(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?If(n,a):n.dispatchEvent(a)}Tt(Ii,"handleAndDispatchCustomEvent");var gC=Object.defineProperty,Li=(e,t)=>gC(e,"name",{value:t,configurable:!0}),ss=0,Pr=null;function yC(e){return ls(),e.children}Li(yC,"FocusGuards");function ls(){C.useEffect(()=>{Pr||(Pr={start:Fi(),end:Fi()});const{start:e,end:t}=Pr;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement("afterbegin",e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement("beforeend",t),ss++,()=>{ss===1&&(Pr==null||Pr.start.remove(),Pr==null||Pr.end.remove(),Pr=null),ss=Math.max(0,ss-1)}},[])}Li(ls,"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 vC=Object.defineProperty,Yt=(e,t)=>vC(e,"name",{value:t,configurable:!0}),Vi="focusScope.autoFocusOnMount",Gi="focusScope.autoFocusOnUnmount",Bf={bubbles:!1,cancelable:!0},Uf=C.forwardRef(Yt(function(t,r){const{loop:o=!1,trapped:n=!1,onMountAutoFocus:a,onUnmountAutoFocus:s,...l}=t,[c,d]=C.useState(null),p=wr(a),u=wr(s),f=C.useRef(null),h=Re(r,d),b=C.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;C.useEffect(()=>{if(n){let y=function(w){if(b.paused||!c)return;const N=w.target;c.contains(N)?f.current=N:Rr(f.current,{select:!0})},v=function(w){if(b.paused||!c)return;const N=w.relatedTarget;N!==null&&(c.contains(N)||Rr(f.current,{select:!0}))},S=function(w){if(document.activeElement===document.body)for(const k of w)k.removedNodes.length>0&&Rr(c)};Yt(y,"handleFocusIn"),Yt(v,"handleFocusOut"),Yt(S,"handleMutations"),document.addEventListener("focusin",y),document.addEventListener("focusout",v);const x=new MutationObserver(S);return c&&x.observe(c,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",y),document.removeEventListener("focusout",v),x.disconnect()}}},[n,c,b.paused]),C.useEffect(()=>{if(c){Yf.add(b);const y=document.activeElement;if(!c.contains(y)){const S=new CustomEvent(Vi,Bf);c.addEventListener(Vi,p),c.dispatchEvent(S),S.defaultPrevented||(Wf(Kf(zi(c)),{select:!0}),document.activeElement===y&&Rr(c))}return()=>{c.removeEventListener(Vi,p),setTimeout(()=>{const S=new CustomEvent(Gi,Bf);c.addEventListener(Gi,u),c.dispatchEvent(S),S.defaultPrevented||Rr(y??document.body,{select:!0}),c.removeEventListener(Gi,u),Yf.remove(b)},0)}}},[c,p,u,b]);const g=C.useCallback(y=>{if(!o&&!n||b.paused)return;const v=y.key==="Tab"&&!y.altKey&&!y.ctrlKey&&!y.metaKey,S=document.activeElement;if(v&&S){const x=y.currentTarget,[w,N]=Hf(x);w&&N?!y.shiftKey&&S===N?(y.preventDefault(),o&&Rr(w,{select:!0})):y.shiftKey&&S===w&&(y.preventDefault(),o&&Rr(N,{select:!0})):S===x&&y.preventDefault()}},[o,n,b.paused]);return i.jsx(Be.div,{tabIndex:-1,...l,ref:h,onKeyDown:g})},"FocusScope"));function Wf(e,{select:t=!1}={}){const r=document.activeElement;for(const o of e)if(Rr(o,{select:t}),document.activeElement!==r)return}Yt(Wf,"focusFirst");function Hf(e){const t=zi(e),r=Bi(t,e),o=Bi(t.reverse(),e);return[r,o]}Yt(Hf,"getTabbableEdges");function zi(e){const t=[],r=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:Yt(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}Yt(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}):jf(o,{upTo:t})))return o}Yt(Bi,"findVisible");function jf(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}Yt(jf,"isHidden");function qf(e){return e instanceof HTMLInputElement&&"select"in e}Yt(qf,"isSelectableInput");function Rr(e,{select:t=!1}={}){if(e&&e.focus){const r=document.activeElement;e.focus({preventScroll:!0}),e!==r&&qf(e)&&t&&e.select()}}Yt(Rr,"focus");var Yf=Qf();function Qf(){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()}}}Yt(Qf,"createFocusScopesStack");function Ui(e,t){const r=[...e],o=r.indexOf(t);return o!==-1&&r.splice(o,1),r}Yt(Ui,"arrayRemove");function Kf(e){return e.filter(t=>t.tagName!=="A")}Yt(Kf,"removeLinks");var ut=globalThis!=null&&globalThis.document?C.useLayoutEffect:()=>{},wC=Object.defineProperty,xC=(e,t)=>wC(e,"name",{value:t,configurable:!0}),CC=C[" useId ".trim().toString()]||(()=>{}),SC=0;function xr(e){const[t,r]=C.useState(CC());return ut(()=>{e||r(o=>o??String(SC++))},[e]),e||(t?`radix-${t}`:"")}xC(xr,"useId");const NC=["top","right","bottom","left"],mo=Math.min,Xr=Math.max,is=Math.round,cs=Math.floor,Jr=e=>({x:e,y:e}),EC={left:"right",right:"left",bottom:"top",top:"bottom"};function Rf(e,t,r){return Xr(e,mo(t,r))}function Zr(e,t){return typeof e=="function"?e(t):e}function bo(e){return e.split("-")[0]}function dn(e){return e.split("-")[1]}function Wi(e){return e==="x"?"y":"x"}function Hi(e){return e==="y"?"height":"width"}function Mr(e){const t=e[0];return t==="t"||t==="b"?"y":"x"}function ji(e){return Wi(Mr(e))}function kC(e,t,r){r===void 0&&(r=!1);const o=dn(e),n=ji(e),a=Hi(n);let s=n==="x"?o===(r?"end":"start")?"right":"left":o==="start"?"bottom":"top";return t.reference[a]>t.floating[a]&&(s=ds(s)),[s,ds(s)]}function AC(e){const t=ds(e);return[qi(e),t,qi(t)]}function qi(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}const Xf=["left","right"],Jf=["right","left"],_C=["top","bottom"],TC=["bottom","top"];function DC(e,t,r){switch(e){case"top":case"bottom":return r?t?Jf:Xf:t?Xf:Jf;case"left":case"right":return t?_C:TC;default:return[]}}function $C(e,t,r,o){const n=dn(e);let a=DC(bo(e),r==="start",o);return n&&(a=a.map(s=>s+"-"+n),t&&(a=a.concat(a.map(qi)))),a}function ds(e){const t=bo(e);return EC[t]+e.slice(t.length)}function PC(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 Zf(e){return typeof e!="number"?PC(e):{top:e,right:e,bottom:e,left:e}}function us(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 ep(e,t,r){let{reference:o,floating:n}=e;const a=Mr(t),s=ji(t),l=Hi(s),c=bo(t),d=a==="y",p=o.x+o.width/2-n.width/2,u=o.y+o.height/2-n.height/2,f=o[l]/2-n[l]/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 b=dn(t);return b&&(h[s]+=f*(b==="end"?1:-1)*(r&&d?-1:1)),h}async function MC(e,t){var r;t===void 0&&(t={});const{x:o,y:n,platform:a,rects:s,elements:l,strategy:c}=e,{boundary:d="clippingAncestors",rootBoundary:p="viewport",elementContext:u="floating",altBoundary:f=!1,padding:h=0}=Zr(t,e),b=Zf(h),y=l[f?u==="floating"?"reference":"floating":u],v=us(await a.getClippingRect({element:(r=await(a.isElement==null?void 0:a.isElement(y)))==null||r?y:y.contextElement||await(a.getDocumentElement==null?void 0:a.getDocumentElement(l.floating)),boundary:d,rootBoundary:p,strategy:c})),S=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(l.floating)),w=await(a.isElement==null?void 0:a.isElement(x))&&await(a.getScale==null?void 0:a.getScale(x))||{x:1,y:1},N=us(a.convertOffsetParentRelativeRectToViewportRelativeRect?await a.convertOffsetParentRelativeRectToViewportRelativeRect({elements:l,rect:S,offsetParent:x,strategy:c}):S);return{top:(v.top-N.top+b.top)/w.y,bottom:(N.bottom-v.bottom+b.bottom)/w.y,left:(v.left-N.left+b.left)/w.x,right:(N.right-v.right+b.right)/w.x}}const OC=50,IC=async(e,t,r)=>{const{placement:o="bottom",strategy:n="absolute",middleware:a=[],platform:s}=r,l=s.detectOverflow?s:{...s,detectOverflow:MC},c=await(s.isRTL==null?void 0:s.isRTL(t));let d=await s.getElementRects({reference:e,floating:t,strategy:n}),{x:p,y:u}=ep(d,o,c),f=o,h=0;const b={};for(let g=0;g<a.length;g++){const y=a[g];if(!y)continue;const{name:v,fn:S}=y,{x,y:w,data:N,reset:k}=await S({x:p,y:u,initialPlacement:o,placement:f,strategy:n,middlewareData:b,rects:d,platform:l,elements:{reference:e,floating:t}});p=x??p,u=w??u,b[v]={...b[v],...N},k&&h<OC&&(h++,typeof k=="object"&&(k.placement&&(f=k.placement),k.rects&&(d=k.rects===!0?await s.getElementRects({reference:e,floating:t,strategy:n}):k.rects),{x:p,y:u}=ep(d,f,c)),g=-1)}return{x:p,y:u,placement:f,strategy:n,middlewareData:b}},LC=e=>({name:"arrow",options:e,async fn(t){const{x:r,y:o,placement:n,rects:a,platform:s,elements:l,middlewareData:c}=t,{element:d,padding:p=0}=Zr(e,t)||{};if(d==null)return{};const u=Zf(p),f={x:r,y:o},h=ji(n),b=Hi(h),g=await s.getDimensions(d),y=h==="y",v=y?"top":"left",S=y?"bottom":"right",x=y?"clientHeight":"clientWidth",w=a.reference[b]+a.reference[h]-f[h]-a.floating[b],N=f[h]-a.reference[h],k=await(s.getOffsetParent==null?void 0:s.getOffsetParent(d));let _=k?k[x]:0;(!_||!await(s.isElement==null?void 0:s.isElement(k)))&&(_=l.floating[x]||a.floating[b]);const E=w/2-N/2,D=_/2-g[b]/2-1,T=mo(u[v],D),O=mo(u[S],D),$=_-g[b]-O,V=_/2-g[b]/2+E,G=Rf(T,V,$),q=!c.arrow&&dn(n)!=null&&V!==G&&a.reference[b]/2-(V<T?T:O)-g[b]/2<0,H=q?V<T?V-T:V-$:0;return{[h]:f[h]+H,data:{[h]:G,centerOffset:V-G-H,...q&&{alignmentOffset:H}},reset:q}}}),FC=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:l,platform:c,elements:d}=t,{mainAxis:p=!0,crossAxis:u=!0,fallbackPlacements:f,fallbackStrategy:h="bestFit",fallbackAxisSideDirection:b="none",flipAlignment:g=!0,...y}=Zr(e,t);if((r=a.arrow)!=null&&r.alignmentOffset)return{};const v=bo(n),S=Mr(l),x=bo(l)===l,w=await(c.isRTL==null?void 0:c.isRTL(d.floating)),N=f||(x||!g?[ds(l)]:AC(l)),k=b!=="none";!f&&k&&N.push(...$C(l,g,b,w));const _=[l,...N],E=await c.detectOverflow(t,y),D=[];let T=((o=a.flip)==null?void 0:o.overflows)||[];if(p&&D.push(E[v]),u){const G=kC(n,s,w);D.push(E[G[0]],E[G[1]])}if(T=[...T,{placement:n,overflows:D}],!D.every(G=>G<=0)){var O,$;const G=(((O=a.flip)==null?void 0:O.index)||0)+1,q=_[G];if(q&&(!(u==="alignment"?S!==Mr(q):!1)||T.every(J=>Mr(J.placement)===S?J.overflows[0]>0:!0)))return{data:{index:G,overflows:T},reset:{placement:q}};let H=($=T.filter(Y=>Y.overflows[0]<=0).sort((Y,J)=>Y.overflows[1]-J.overflows[1])[0])==null?void 0:$.placement;if(!H)switch(h){case"bestFit":{var V;const Y=(V=T.filter(J=>{if(k){const W=Mr(J.placement);return W===S||W==="y"}return!0}).map(J=>[J.placement,J.overflows.filter(W=>W>0).reduce((W,R)=>W+R,0)]).sort((J,W)=>J[1]-W[1])[0])==null?void 0:V[0];Y&&(H=Y);break}case"initialPlacement":H=l;break}if(n!==H)return{reset:{placement:H}}}return{}}}};function tp(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function rp(e){return NC.some(t=>e[t]>=0)}const VC=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:r,platform:o}=t,{strategy:n="referenceHidden",...a}=Zr(e,t);switch(n){case"referenceHidden":{const s=await o.detectOverflow(t,{...a,elementContext:"reference"}),l=tp(s,r.reference);return{data:{referenceHiddenOffsets:l,referenceHidden:rp(l)}}}case"escaped":{const s=await o.detectOverflow(t,{...a,altBoundary:!0}),l=tp(s,r.floating);return{data:{escapedOffsets:l,escaped:rp(l)}}}default:return{}}}}},op=new Set(["left","top"]);async function GC(e,t){const{placement:r,platform:o,elements:n}=e,a=await(o.isRTL==null?void 0:o.isRTL(n.floating)),s=bo(r),l=dn(r),c=Mr(r)==="y",d=op.has(s)?-1:1,p=a&&c?-1:1,u=Zr(t,e);let{mainAxis:f,crossAxis:h,alignmentAxis:b}=typeof u=="number"?{mainAxis:u,crossAxis:0,alignmentAxis:null}:{mainAxis:u.mainAxis||0,crossAxis:u.crossAxis||0,alignmentAxis:u.alignmentAxis};return l&&typeof b=="number"&&(h=l==="end"?b*-1:b),c?{x:h*p,y:f*d}:{x:f*d,y:h*p}}const zC=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:l}=t,c=await GC(t,e);return s===((r=l.offset)==null?void 0:r.placement)&&(o=l.arrow)!=null&&o.alignmentOffset?{}:{x:n+c.x,y:a+c.y,data:{...c,placement:s}}}}},BC=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:l=!1,limiter:c={fn:S=>{let{x,y:w}=S;return{x,y:w}}},...d}=Zr(e,t),p={x:r,y:o},u=await a.detectOverflow(t,d),f=Mr(n),h=Wi(f);let b=p[h],g=p[f];const y=(S,x)=>Rf(x+u[S==="y"?"top":"left"],x,x-u[S==="y"?"bottom":"right"]);s&&(b=y(h,b)),l&&(g=y(f,g));const v=c.fn({...t,[h]:b,[f]:g});return{...v,data:{x:v.x-r,y:v.y-o,enabled:{[h]:s,[f]:l}}}}}},UC=function(e){return e===void 0&&(e={}),{options:e,fn(t){var r,o;const{x:n,y:a,placement:s,rects:l,middlewareData:c}=t,{offset:d=0,mainAxis:p=!0,crossAxis:u=!0}=Zr(e,t),f={x:n,y:a},h=Mr(s),b=Wi(h);let g=f[b],y=f[h];const v=Zr(d,t),S=typeof v=="number"?{mainAxis:v,crossAxis:0}:{mainAxis:(r=v.mainAxis)!=null?r:0,crossAxis:(o=v.crossAxis)!=null?o:0};if(p){const N=b==="y"?"height":"width",k=l.reference[b]-l.floating[N]+S.mainAxis,_=l.reference[b]+l.reference[N]-S.mainAxis;g<k?g=k:g>_&&(g=_)}if(u){var x,w;const N=b==="y"?"width":"height",k=op.has(bo(s)),_=l.reference[h]-l.floating[N]+(k&&((x=c.offset)==null?void 0:x[h])||0)+(k?0:S.crossAxis),E=l.reference[h]+l.reference[N]+(k?0:((w=c.offset)==null?void 0:w[h])||0)-(k?S.crossAxis:0);y<_?y=_:y>E&&(y=E)}return{[b]:g,[h]:y}}}},WC=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=()=>{},...l}=Zr(e,t),c=await n.detectOverflow(t,l),d=bo(r),p=dn(r),u=Mr(r)==="y",{width:f,height:h}=o.floating;let b,g;d==="top"||d==="bottom"?(b=d,g=p===(await(n.isRTL==null?void 0:n.isRTL(a.floating))?"start":"end")?"left":"right"):(g=d,b=p==="end"?"top":"bottom");const y=h-c.top-c.bottom,v=f-c.left-c.right,S=mo(h-c[b],y),x=mo(f-c[g],v),w=t.middlewareData.shift,N=!w;let k=S,_=x;w!=null&&w.enabled.x&&(_=v),w!=null&&w.enabled.y&&(k=y),N&&!p&&(u?_=f-2*Xr(c.left,c.right):k=h-2*Xr(c.top,c.bottom)),await s({...t,availableWidth:_,availableHeight:k});const E=await n.getDimensions(a.floating);return f!==E.width||h!==E.height?{reset:{rects:!0}}:{}}}};function fs(){return typeof window<"u"}function un(e){return np(e)?(e.nodeName||"").toLowerCase():"#document"}function Kt(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function eo(e){var t;return(t=(np(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function np(e){return fs()?e instanceof Node||e instanceof Kt(e).Node:!1}function Or(e){return fs()?e instanceof Element||e instanceof Kt(e).Element:!1}function go(e){return fs()?e instanceof HTMLElement||e instanceof Kt(e).HTMLElement:!1}function ap(e){return!fs()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof Kt(e).ShadowRoot}function ps(e){const{overflow:t,overflowX:r,overflowY:o,display:n}=Ir(e);return/auto|scroll|overlay|hidden|clip/.test(t+o+r)&&n!=="inline"&&n!=="contents"}function HC(e){return/^(table|td|th)$/.test(un(e))}function hs(e){try{if(e.matches(":popover-open"))return!0}catch{}try{return e.matches(":modal")}catch{return!1}}const jC=/transform|translate|scale|rotate|perspective|filter/,qC=/paint|layout|strict|content/,Lo=e=>!!e&&e!=="none";let Yi;function Qi(e){const t=Or(e)?Ir(e):e;return Lo(t.transform)||Lo(t.translate)||Lo(t.scale)||Lo(t.rotate)||Lo(t.perspective)||!Ki()&&(Lo(t.backdropFilter)||Lo(t.filter))||jC.test(t.willChange||"")||qC.test(t.contain||"")}function YC(e){let t=Fo(e);for(;go(t)&&!zn(t);){if(Qi(t))return t;if(hs(t))return null;t=Fo(t)}return null}function Ki(){return Yi==null&&(Yi=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),Yi}function zn(e){return/^(html|body|#document)$/.test(un(e))}function Ir(e){return Kt(e).getComputedStyle(e)}function ms(e){return Or(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Fo(e){if(un(e)==="html")return e;const t=e.assignedSlot||e.parentNode||ap(e)&&e.host||eo(e);return ap(t)?t.host:t}function sp(e){const t=Fo(e);return zn(t)?(e.ownerDocument||e).body:go(t)&&ps(t)?t:sp(t)}function Bn(e,t,r){var o;t===void 0&&(t=[]),r===void 0&&(r=!0);const n=sp(e),a=n===((o=e.ownerDocument)==null?void 0:o.body),s=Kt(n);if(a){const l=Ri(s);return t.concat(s,s.visualViewport||[],ps(n)?n:[],l&&r?Bn(l):[])}else return t.concat(n,Bn(n,[],r))}function Ri(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function lp(e){const t=Ir(e);let r=parseFloat(t.width)||0,o=parseFloat(t.height)||0;const n=go(e),a=n?e.offsetWidth:r,s=n?e.offsetHeight:o,l=is(r)!==a||is(o)!==s;return l&&(r=a,o=s),{width:r,height:o,$:l}}function Xi(e){return Or(e)?e:e.contextElement}function fn(e){const t=Xi(e);if(!go(t))return Jr(1);const r=t.getBoundingClientRect(),{width:o,height:n,$:a}=lp(t);let s=(a?is(r.width):r.width)/o,l=(a?is(r.height):r.height)/n;return(!s||!Number.isFinite(s))&&(s=1),(!l||!Number.isFinite(l))&&(l=1),{x:s,y:l}}const QC=Jr(0);function ip(e){const t=Kt(e);return!Ki()||!t.visualViewport?QC:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function KC(e,t,r){return t===void 0&&(t=!1),!!r&&t&&r===Kt(e)}function Vo(e,t,r,o){t===void 0&&(t=!1),r===void 0&&(r=!1);const n=e.getBoundingClientRect(),a=Xi(e);let s=Jr(1);t&&(o?Or(o)&&(s=fn(o)):s=fn(e));const l=KC(a,r,o)?ip(a):Jr(0);let c=(n.left+l.x)/s.x,d=(n.top+l.y)/s.y,p=n.width/s.x,u=n.height/s.y;if(a&&o){const f=Kt(a),h=Or(o)?Kt(o):o;let b=f,g=Ri(b);for(;g&&h!==b;){const y=fn(g),v=g.getBoundingClientRect(),S=Ir(g),x=v.left+(g.clientLeft+parseFloat(S.paddingLeft))*y.x,w=v.top+(g.clientTop+parseFloat(S.paddingTop))*y.y;c*=y.x,d*=y.y,p*=y.x,u*=y.y,c+=x,d+=w,b=Kt(g),g=Ri(b)}}return us({width:p,height:u,x:c,y:d})}function bs(e,t){const r=ms(e).scrollLeft;return t?t.left+r:Vo(eo(e)).left+r}function cp(e,t){const r=e.getBoundingClientRect(),o=r.left+t.scrollLeft-bs(e,r),n=r.top+t.scrollTop;return{x:o,y:n}}function RC(e){let{elements:t,rect:r,offsetParent:o,strategy:n}=e;const a=n==="fixed",s=eo(o),l=t?hs(t.floating):!1;if(o===s||l&&a)return r;let c={scrollLeft:0,scrollTop:0},d=Jr(1);const p=Jr(0),u=go(o);if((u||!a)&&((un(o)!=="body"||ps(s))&&(c=ms(o)),u)){const h=Vo(o);d=fn(o),p.x=h.x+o.clientLeft,p.y=h.y+o.clientTop}const f=s&&!u&&!a?cp(s,c):Jr(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 XC(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function JC(e){const t=ms(e),r=e.ownerDocument.body,o=Xr(e.scrollWidth,e.clientWidth,r.scrollWidth,r.clientWidth),n=Xr(e.scrollHeight,e.clientHeight,r.scrollHeight,r.clientHeight);let a=-t.scrollLeft+bs(e);const s=-t.scrollTop;return Ir(r).direction==="rtl"&&(a+=Xr(e.clientWidth,r.clientWidth)-o),{width:o,height:n,x:a,y:s}}const ZC=25;function eS(e,t,r){r===void 0&&(r="viewport");const o=r==="layoutViewport",n=Kt(e),a=eo(e),s=n.visualViewport;let l=a.clientWidth,c=a.clientHeight,d=0,p=0;if(s){const f=!Ki()||t==="fixed";o?f||(d=-s.offsetLeft,p=-s.offsetTop):(l=s.width,c=s.height,f&&(d=s.offsetLeft,p=s.offsetTop))}if(bs(a)<=0){const f=a.ownerDocument,h=f.body,b=getComputedStyle(h),g=f.compatMode==="CSS1Compat"&&parseFloat(b.marginLeft)+parseFloat(b.marginRight)||0,y=Math.abs(a.clientWidth-h.clientWidth-g),v=getComputedStyle(a).scrollbarGutter==="stable both-edges"?y/2:y;v<=ZC&&(l-=v)}return{width:l,height:c,x:d,y:p}}function tS(e,t){const r=Vo(e,!0,t==="fixed"),o=r.top+e.clientTop,n=r.left+e.clientLeft,a=fn(e),s=e.clientWidth*a.x,l=e.clientHeight*a.y,c=n*a.x,d=o*a.y;return{width:s,height:l,x:c,y:d}}function dp(e,t,r){let o;if(t==="viewport"||t==="layoutViewport")o=eS(e,r,t);else if(t==="document")o=JC(eo(e));else if(Or(t))o=tS(t,r);else{const n=ip(e);o={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return us(o)}function rS(e,t){const r=t.get(e);if(r)return r;let o=Bn(e,[],!1).filter(l=>Or(l)&&un(l)!=="body"),n=null;const a=Ir(e).position==="fixed";let s=a?Fo(e):e;for(;Or(s)&&!zn(s);){const l=Ir(s),c=Qi(s),d=n?n.position:a?"fixed":"";!c&&(d==="fixed"||d==="absolute"&&l.position==="static")?o=o.filter(u=>u!==s):n=l,s=Fo(s)}return t.set(e,o),o}function oS(e){let{element:t,boundary:r,rootBoundary:o,strategy:n}=e;const s=[...r==="clippingAncestors"?hs(t)?[]:rS(t,this._c):[].concat(r),o],l=dp(t,s[0],n);let c=l.top,d=l.right,p=l.bottom,u=l.left;for(let f=1;f<s.length;f++){const h=dp(t,s[f],n);c=Xr(h.top,c),d=mo(h.right,d),p=mo(h.bottom,p),u=Xr(h.left,u)}return{width:d-u,height:p-c,x:u,y:c}}function nS(e){const{width:t,height:r}=lp(e);return{width:t,height:r}}function aS(e,t,r){const o=go(t),n=eo(t),a=r==="fixed",s=Vo(e,!0,a,t);let l={scrollLeft:0,scrollTop:0};const c=Jr(0);if((o||!a)&&((un(t)!=="body"||ps(n))&&(l=ms(t)),o)){const f=Vo(t,!0,a,t);c.x=f.x+t.clientLeft,c.y=f.y+t.clientTop}!o&&n&&(c.x=bs(n));const d=n&&!o&&!a?cp(n,l):Jr(0),p=s.left+l.scrollLeft-c.x-d.x,u=s.top+l.scrollTop-c.y-d.y;return{x:p,y:u,width:s.width,height:s.height}}function Ji(e){return Ir(e).position==="static"}function up(e,t){if(!go(e)||Ir(e).position==="fixed")return null;if(t)return t(e);let r=e.offsetParent;return eo(e)===r&&(r=r.ownerDocument.body),r}function fp(e,t){const r=Kt(e);if(hs(e))return r;if(!go(e)){let n=Fo(e);for(;n&&!zn(n);){if(Or(n)&&!Ji(n))return n;n=Fo(n)}return r}let o=up(e,t);for(;o&&HC(o)&&Ji(o);)o=up(o,t);return o&&zn(o)&&Ji(o)&&!Qi(o)?r:o||YC(e)||r}const sS=async function(e){const t=this.getOffsetParent||fp,r=this.getDimensions,o=await r(e.floating);return{reference:aS(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function lS(e){return Ir(e).direction==="rtl"}const iS={convertOffsetParentRelativeRectToViewportRelativeRect:RC,getDocumentElement:eo,getClippingRect:oS,getOffsetParent:fp,getElementRects:sS,getClientRects:XC,getDimensions:nS,getScale:fn,isElement:Or,isRTL:lS};function pp(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function cS(e,t,r){let o=null,n;const a=eo(e);function s(){var p;clearTimeout(n),(p=o)==null||p.disconnect(),o=null}function l(p,u){p===void 0&&(p=!1),u===void 0&&(u=1),s();const f=e.getBoundingClientRect(),{left:h,top:b,width:g,height:y}=f;if(p||t(),!g||!y)return;const v=cs(b),S=cs(a.clientWidth-(h+g)),x=cs(a.clientHeight-(b+y)),w=cs(h),k={rootMargin:-v+"px "+-S+"px "+-x+"px "+-w+"px",threshold:Xr(0,mo(1,u))||1};let _=!0;function E(D){const T=D[0].intersectionRatio;if(!pp(f,e.getBoundingClientRect()))return l();if(T!==u){if(!_)return l();T?l(!1,T):n=setTimeout(()=>{l(!1,1e-7)},1e3)}_=!1}try{o=new IntersectionObserver(E,{...k,root:a.ownerDocument})}catch{o=new IntersectionObserver(E,k)}o.observe(e)}const c=Kt(e),d=()=>l(r);return c.addEventListener("resize",d),l(!0),()=>{c.removeEventListener("resize",d),s()}}function dS(e,t,r,o){o===void 0&&(o={});const{ancestorScroll:n=!0,ancestorResize:a=!0,elementResize:s=typeof ResizeObserver=="function",layoutShift:l=typeof IntersectionObserver=="function",animationFrame:c=!1}=o,d=Xi(e),p=n||a?[...d?Bn(d):[],...t?Bn(t):[]]:[];p.forEach(v=>{n&&v.addEventListener("scroll",r),a&&v.addEventListener("resize",r)});const u=d&&l?cS(d,r,a):null;let f=-1,h=null;s&&(h=new ResizeObserver(v=>{let[S]=v;S&&S.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 b,g=c?Vo(e):null;c&&y();function y(){const v=Vo(e);g&&!pp(g,v)&&r(),g=v,b=requestAnimationFrame(y)}return r(),()=>{var v;p.forEach(S=>{n&&S.removeEventListener("scroll",r),a&&S.removeEventListener("resize",r)}),u==null||u(),(v=h)==null||v.disconnect(),h=null,c&&cancelAnimationFrame(b)}}const uS=zC,fS=BC,pS=FC,hS=WC,mS=VC,hp=LC,bS=UC,gS=(e,t,r)=>{const o=new Map,n=r??{},a={...iS,...n.platform,_c:o};return IC(e,t,{...n,platform:a})};var yS=typeof document<"u",vS=function(){},gs=yS?P.useLayoutEffect:vS;function ys(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(!ys(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)&&!ys(e[a],t[a]))return!1}return!0}return e!==e&&t!==t}function mp(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function bp(e,t){const r=mp(e);return Math.round(t*r)/r}function Zi(e){const t=C.useRef(e);return gs(()=>{t.current=e}),t}function wS(e){e===void 0&&(e={});const{placement:t="bottom",strategy:r="absolute",middleware:o=[],platform:n,elements:{reference:a,floating:s}={},transform:l=!0,whileElementsMounted:c,open:d}=e,[p,u]=C.useState({x:0,y:0,strategy:r,placement:t,middlewareData:{},isPositioned:!1}),[f,h]=C.useState(o);ys(f,o)||h(o);const[b,g]=C.useState(null),[y,v]=C.useState(null),S=C.useCallback(J=>{J!==k.current&&(k.current=J,g(J))},[]),x=C.useCallback(J=>{J!==_.current&&(_.current=J,v(J))},[]),w=a||b,N=s||y,k=C.useRef(null),_=C.useRef(null),E=C.useRef(p),D=c!=null,T=Zi(c),O=Zi(n),$=Zi(d),V=C.useCallback(()=>{if(!k.current||!_.current)return;const J={placement:t,strategy:r,middleware:f};O.current&&(J.platform=O.current),gS(k.current,_.current,J).then(W=>{const R={...W,isPositioned:$.current!==!1};G.current&&!ys(E.current,R)&&(E.current=R,Pn.flushSync(()=>{u(R)}))})},[f,t,r,O,$]);gs(()=>{d===!1&&E.current.isPositioned&&(E.current.isPositioned=!1,u(J=>({...J,isPositioned:!1})))},[d]);const G=C.useRef(!1);gs(()=>(G.current=!0,()=>{G.current=!1}),[]),gs(()=>{if(w&&(k.current=w),N&&(_.current=N),w&&N){if(T.current)return T.current(w,N,V);V()}},[w,N,V,T,D]);const q=C.useMemo(()=>({reference:k,floating:_,setReference:S,setFloating:x}),[S,x]),H=C.useMemo(()=>({reference:w,floating:N}),[w,N]),Y=C.useMemo(()=>{const J={position:r,left:0,top:0};if(!H.floating)return J;const W=bp(H.floating,p.x),R=bp(H.floating,p.y);return l?{...J,transform:"translate("+W+"px, "+R+"px)",...mp(H.floating)>=1.5&&{willChange:"transform"}}:{position:r,left:W,top:R}},[r,l,H.floating,p.x,p.y]);return C.useMemo(()=>({...p,update:V,refs:q,elements:H,floatingStyles:Y}),[p,V,q,H,Y])}const xS=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?hp({element:o.current,padding:n}).fn(r):{}:o?hp({element:o,padding:n}).fn(r):{}}}},CS=(e,t)=>{const r=uS(e);return{name:r.name,fn:r.fn,options:[e,t]}},SS=(e,t)=>{const r=fS(e);return{name:r.name,fn:r.fn,options:[e,t]}},NS=(e,t)=>({fn:bS(e).fn,options:[e,t]}),ES=(e,t)=>{const r=pS(e);return{name:r.name,fn:r.fn,options:[e,t]}},kS=(e,t)=>{const r=hS(e);return{name:r.name,fn:r.fn,options:[e,t]}},AS=(e,t)=>{const r=mS(e);return{name:r.name,fn:r.fn,options:[e,t]}},_S=(e,t)=>{const r=xS(e);return{name:r.name,fn:r.fn,options:[e,t]}};var TS=Object.defineProperty,DS=(e,t)=>TS(e,"name",{value:t,configurable:!0});function ec(e){const[t,r]=C.useState(void 0);return ut(()=>{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,l;if("borderBoxSize"in a){const c=a.borderBoxSize,d=Array.isArray(c)?c[0]:c;s=d.inlineSize,l=d.blockSize}else s=e.offsetWidth,l=e.offsetHeight;r({width:s,height:l})});return o.observe(e,{box:"border-box"}),()=>o.unobserve(e)}else r(void 0)},[e]),t}DS(ec,"useSize");var $S=Object.defineProperty,yo=(e,t)=>$S(e,"name",{value:t,configurable:!0}),gp="Popper",[yp,vs]=ur(gp),[PS,vp]=yp(gp),MS=yo(e=>{const{__scopePopper:t,children:r}=e,[o,n]=C.useState(null),[a,s]=C.useState(void 0);return i.jsx(PS,{scope:t,anchor:o,onAnchorChange:n,placementState:a,setPlacementState:s,children:r})},"Popper"),OS="PopperAnchor",IS=C.forwardRef(yo(function(t,r){const{__scopePopper:o,virtualRef:n,...a}=t,s=vp(OS,o),l=C.useRef(null),c=s.onAnchorChange,d=C.useCallback(g=>{l.current=g,g&&c(g)},[c]),p=Re(r,d),u=C.useRef(null);C.useEffect(()=>{if(!n)return;const g=u.current;u.current=n.current,g!==u.current&&c(u.current)});const f=s.placementState&&ws(s.placementState),h=f==null?void 0:f[0],b=f==null?void 0:f[1];return n?null:i.jsx(Be.div,{"data-radix-popper-side":h,"data-radix-popper-align":b,...a,ref:p})},"PopperAnchor")),wp="PopperContent",[LS,N2]=yp(wp),FS=C.forwardRef(yo(function(t,r){var ce,Ie,xe,be,ae,ue,ve;const{__scopePopper:o,side:n="bottom",sideOffset:a=0,align:s="center",alignOffset:l=0,arrowPadding:c=0,avoidCollisions:d=!0,collisionBoundary:p=[],collisionPadding:u=0,sticky:f="partial",hideWhenDetached:h=!1,updatePositionStrategy:b="optimized",onPlaced:g,...y}=t,v=vp(wp,o),[S,x]=C.useState(null),w=Re(r,x),[N,k]=C.useState(null),_=ec(N),E=(_==null?void 0:_.width)??0,D=(_==null?void 0:_.height)??0,T=n+(s!=="center"?"-"+s:""),O=typeof u=="number"?u:{top:0,right:0,bottom:0,left:0,...u},$=Array.isArray(p)?p:[p],V=$.length>0,G={padding:O,boundary:$.filter(xp),altBoundary:V},{refs:q,floatingStyles:H,placement:Y,isPositioned:J,middlewareData:W}=wS({strategy:"fixed",placement:T,whileElementsMounted:yo((...Oe)=>dS(...Oe,{animationFrame:b==="always"}),"whileElementsMounted"),elements:{reference:v.anchor},middleware:[CS({mainAxis:a+D,alignmentAxis:l}),d&&SS({mainAxis:!0,crossAxis:!1,limiter:f==="partial"?NS():void 0,...G}),d&&ES({...G}),kS({...G,apply:yo(({elements:Oe,rects:et,availableWidth:at,availableHeight:it})=>{const{width:tt,height:$e}=et.reference,yt=Oe.floating.style;yt.setProperty("--radix-popper-available-width",`${at}px`),yt.setProperty("--radix-popper-available-height",`${it}px`),yt.setProperty("--radix-popper-anchor-width",`${tt}px`),yt.setProperty("--radix-popper-anchor-height",`${$e}px`)},"apply")}),N&&_S({element:N,padding:c}),VS({arrowWidth:E,arrowHeight:D}),h&&AS({strategy:"referenceHidden",...G,boundary:V?G.boundary:void 0})]}),R=v.setPlacementState;ut(()=>(R(Y),()=>{R(void 0)}),[Y,R]);const[we,Q]=ws(Y),te=wr(g);ut(()=>{J&&(te==null||te())},[J,te]);const De=(ce=W.arrow)==null?void 0:ce.x,de=(Ie=W.arrow)==null?void 0:Ie.y,Se=((xe=W.arrow)==null?void 0:xe.centerOffset)!==0,[re,me]=C.useState();return ut(()=>{S&&me(window.getComputedStyle(S).zIndex)},[S]),i.jsx("div",{ref:q.setFloating,"data-radix-popper-content-wrapper":"",style:{...H,transform:J?H.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:re,"--radix-popper-transform-origin":[(be=W.transformOrigin)==null?void 0:be.x,(ae=W.transformOrigin)==null?void 0:ae.y].join(" "),...((ue=W.hide)==null?void 0:ue.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:t.dir,children:i.jsx(LS,{scope:o,placedSide:we,placedAlign:Q,onArrowChange:k,arrowX:De,arrowY:de,shouldHideArrow:Se,children:i.jsx(Be.div,{"data-side":we,"data-align":Q,...y,ref:w,style:{...y.style,animation:J?(ve=y.style)==null?void 0:ve.animation:"none"}})})})},"PopperContent"));function xp(e){return e!==null}yo(xp,"isNotNull");var VS=yo(e=>({name:"transformOrigin",options:e,fn(t){var y,v,S;const{placement:r,rects:o,middlewareData:n}=t,s=((y=n.arrow)==null?void 0:y.centerOffset)!==0,l=s?0:e.arrowWidth,c=s?0:e.arrowHeight,[d,p]=ws(r),u={start:"0%",center:"50%",end:"100%"}[p],f=(((v=n.arrow)==null?void 0:v.x)??0)+l/2,h=(((S=n.arrow)==null?void 0:S.y)??0)+c/2;let b="",g="";return d==="bottom"?(b=s?u:`${f}px`,g=`${-c}px`):d==="top"?(b=s?u:`${f}px`,g=`${o.floating.height+c}px`):d==="right"?(b=`${-c}px`,g=s?u:`${h}px`):d==="left"&&(b=`${o.floating.width+c}px`,g=s?u:`${h}px`),{data:{x:b,y:g}}}}),"transformOrigin");function ws(e){const[t,r="center"]=e.split("-");return[t,r]}yo(ws,"getSideAndAlignFromPlacement");var Cp=MS,Sp=IS,Np=FS,GS=Object.defineProperty,zS=(e,t)=>GS(e,"name",{value:t,configurable:!0}),tc=C.forwardRef(zS(function(t,r){var c;const{container:o,...n}=t,[a,s]=C.useState(!1);ut(()=>s(!0),[]);const l=o||a&&((c=globalThis==null?void 0:globalThis.document)==null?void 0:c.body);return l?Pn.createPortal(i.jsx(Be.div,{...n,ref:r}),l):null},"Portal")),BS=Object.defineProperty,to=(e,t)=>BS(e,"name",{value:t,configurable:!0});function Ep(e,t){return C.useReducer((r,o)=>t[r][o]??r,e)}to(Ep,"useStateMachine");var ro=to(e=>{const{present:t,children:r}=e,o=kp(t),n=typeof r=="function"?r({present:o.isPresent}):C.Children.only(r),a=Ap(o.ref,_p(n));return typeof r=="function"||o.isPresent?C.cloneElement(n,{ref:a}):null},"Presence");function kp(e){const[t,r]=C.useState(),o=C.useRef(null),n=C.useRef(e),a=C.useRef("none"),s=C.useRef(void 0),l=e?"mounted":"unmounted",[c,d]=Ep(l,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return C.useEffect(()=>{c==="mounted"?(a.current=s.current??pn(o.current),s.current=void 0):a.current="none"},[c]),ut(()=>{const p=o.current,u=n.current;if(u!==e){const h=a.current,b=pn(p);e?(s.current=b,d("MOUNT")):b==="none"||(p==null?void 0:p.display)==="none"?d("UNMOUNT"):d(u&&h!==b?"ANIMATION_OUT":"UNMOUNT"),n.current=e}},[e,d]),ut(()=>{if(t){let p;const u=t.ownerDocument.defaultView??window,f=to(b=>{const y=pn(o.current).includes(CSS.escape(b.animationName));if(b.target===t&&y&&(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=to(b=>{b.target===t&&(a.current=pn(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:C.useCallback(p=>{if(p){const u=getComputedStyle(p);o.current=u,s.current=pn(u)}else o.current=null;r(p)},[])}}to(kp,"usePresence");function rc(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}to(rc,"setRef");function Ap(...e){const t=C.useRef(e);return t.current=e,C.useCallback(r=>{const o=t.current;let n=!1;const a=o.map(s=>{const l=rc(s,r);return!n&&typeof l=="function"&&(n=!0),l});if(n)return()=>{for(let s=0;s<a.length;s++){const l=a[s];typeof l=="function"?l():rc(o[s],null)}}},[])}to(Ap,"useStableComposedRefs");function pn(e){return(e==null?void 0:e.animationName)||"none"}to(pn,"getAnimationName");function _p(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)}to(_p,"getElementRef");var US=Object.defineProperty,WS=(e,t)=>US(e,"name",{value:t,configurable:!0}),Tp=C[" useEffectEvent ".trim().toString()],Dp=C[" useInsertionEffect ".trim().toString()];function $p(e){if(typeof Tp=="function")return Tp(e);const t=C.useRef(()=>{throw new Error("Cannot call an event handler while rendering.")});return typeof Dp=="function"?Dp(()=>{t.current=e}):ut(()=>{t.current=e}),C.useMemo(()=>((...r)=>{var o;return(o=t.current)==null?void 0:o.call(t,...r)}),[])}WS($p,"useEffectEvent");var HS=Object.defineProperty,Un=(e,t)=>HS(e,"name",{value:t,configurable:!0}),jS=C[" useInsertionEffect ".trim().toString()]||ut;function Cr({prop:e,defaultProp:t,onChange:r=Un(()=>{},"onChange"),caller:o}){const[n,a,s]=Pp({defaultProp:t,onChange:r}),l=e!==void 0,c=l?e:n,d=C.useCallback(p=>{var u;if(l){const f=Mp(p)?p(e):p;f!==e&&((u=s.current)==null||u.call(s,f))}else a(p)},[l,e,a,s]);return[c,d]}Un(Cr,"useControllableState");function Pp({defaultProp:e,onChange:t}){const[r,o]=C.useState(e),n=C.useRef(r),a=C.useRef(t);return jS(()=>{a.current=t},[t]),C.useEffect(()=>{var s;n.current!==r&&((s=a.current)==null||s.call(a,r),n.current=r)},[r,n]),[r,o,a]}Un(Pp,"useUncontrolledState");function Mp(e){return typeof e=="function"}Un(Mp,"isFunction");var Op=Symbol("RADIX:SYNC_STATE");function qS(e,t,r,o){const{prop:n,defaultProp:a,onChange:s,caller:l}=t,c=n!==void 0,d=$p(s),p=[{...r,state:a}];o&&p.push(o);const[u,f]=C.useReducer((y,v)=>{if(v.type===Op)return{...y,state:v.state};const S=e(y,v);return c&&!Object.is(S.state,y.state)&&d(S.state),S},...p),h=u.state,b=C.useRef(h);C.useEffect(()=>{b.current!==h&&(b.current=h,c||d(h))},[h,b,c]);const g=C.useMemo(()=>n!==void 0?{...u,state:n}:u,[u,n]);return C.useEffect(()=>{c&&!Object.is(n,u.state)&&f({type:Op,state:n})},[n,u.state,c]),[g,f]}Un(qS,"useControllableStateReducer");var YS=Object.defineProperty,QS=(e,t)=>YS(e,"name",{value:t,configurable:!0});function Ip(e){const t=C.useRef({value:e,previous:e});return C.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}QS(Ip,"usePrevious");var KS=Object.defineProperty,RS=(e,t)=>KS(e,"name",{value:t,configurable:!0}),Lp=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"}),XS=C.forwardRef(RS(function(t,r){return i.jsx(Be.span,{...t,ref:r,style:{...Lp,...t.style}})},"VisuallyHidden")),JS=XS,ZS=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},hn=new WeakMap,xs=new WeakMap,Cs={},oc=0,Fp=function(e){return e&&(e.host||Fp(e.parentNode))},eN=function(e,t){return t.map(function(r){if(e.contains(r))return r;var o=Fp(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})},tN=function(e,t,r,o){var n=eN(t,Array.isArray(e)?e:[e]);Cs[r]||(Cs[r]=new WeakMap);var a=Cs[r],s=[],l=new Set,c=new Set(n),d=function(u){!u||l.has(u)||(l.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(l.has(f))p(f);else try{var h=f.getAttribute(o),b=h!==null&&h!=="false",g=(hn.get(f)||0)+1,y=(a.get(f)||0)+1;hn.set(f,g),a.set(f,y),s.push(f),g===1&&b&&xs.set(f,!0),y===1&&f.setAttribute(r,"true"),b||f.setAttribute(o,"true")}catch(v){console.error("aria-hidden: cannot operate on ",f,v)}})};return p(t),l.clear(),oc++,function(){s.forEach(function(u){var f=hn.get(u)-1,h=a.get(u)-1;hn.set(u,f),a.set(u,h),f||(xs.has(u)||u.removeAttribute(o),xs.delete(u)),h||u.removeAttribute(r)}),oc--,oc||(hn=new WeakMap,hn=new WeakMap,xs=new WeakMap,Cs={})}},Vp=function(e,t,r){r===void 0&&(r="data-aria-hidden");var o=Array.from(Array.isArray(e)?e:[e]),n=ZS(e);return n?(o.push.apply(o,Array.from(n.querySelectorAll("[aria-live], script"))),tN(o,n,r,"aria-hidden")):function(){return null}},Lr=function(){return Lr=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},Lr.apply(this,arguments)};function Gp(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 rN(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 Ss="right-scroll-bar-position",Ns="width-before-scroll-bar",oN="with-scroll-bars-hidden",nN="--removed-body-scroll-bar-size";function nc(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function aN(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 sN=typeof window<"u"?C.useLayoutEffect:C.useEffect,zp=new WeakMap;function lN(e,t){var r=aN(null,function(o){return e.forEach(function(n){return nc(n,o)})});return sN(function(){var o=zp.get(r);if(o){var n=new Set(o),a=new Set(e),s=r.current;n.forEach(function(l){a.has(l)||nc(l,null)}),a.forEach(function(l){n.has(l)||nc(l,s)})}zp.set(r,e)},[e]),r}function iN(e){return e}function cN(e,t){t===void 0&&(t=iN);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(l){return l!==s})}},assignSyncMedium:function(a){for(o=!0;r.length;){var s=r;r=[],s.forEach(a)}r={push:function(l){return a(l)},filter:function(){return r}}},assignMedium:function(a){o=!0;var s=[];if(r.length){var l=r;r=[],l.forEach(a),s=r}var c=function(){var p=s;s=[],p.forEach(a)},d=function(){return Promise.resolve().then(c)};d(),r={push:function(p){s.push(p),d()},filter:function(p){return s=s.filter(p),r}}}};return n}function dN(e){e===void 0&&(e={});var t=cN(null);return t.options=Lr({async:!0,ssr:!1},e),t}var Bp=function(e){var t=e.sideCar,r=Gp(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 C.createElement(o,Lr({},r))};Bp.isSideCarExport=!0;function uN(e,t){return e.useMedium(t),Bp}var Up=dN(),ac=function(){},Es=C.forwardRef(function(e,t){var r=C.useRef(null),o=C.useState({onScrollCapture:ac,onWheelCapture:ac,onTouchMoveCapture:ac}),n=o[0],a=o[1],s=e.forwardProps,l=e.children,c=e.className,d=e.removeScrollBar,p=e.enabled,u=e.shards,f=e.sideCar,h=e.noRelative,b=e.noIsolation,g=e.inert,y=e.allowPinchZoom,v=e.as,S=v===void 0?"div":v,x=e.gapMode,w=Gp(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),N=f,k=lN([r,t]),_=Lr(Lr({},w),n);return C.createElement(C.Fragment,null,p&&C.createElement(N,{sideCar:Up,removeScrollBar:d,shards:u,noRelative:h,noIsolation:b,inert:g,setCallbacks:a,allowPinchZoom:!!y,lockRef:r,gapMode:x}),s?C.cloneElement(C.Children.only(l),Lr(Lr({},_),{ref:k})):C.createElement(S,Lr({},_,{className:c,ref:k}),l))});Es.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},Es.classNames={fullWidth:Ns,zeroRight:Ss};var fN=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function pN(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=fN();return t&&e.setAttribute("nonce",t),e}function hN(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function mN(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var bN=function(){var e=0,t=null;return{add:function(r){e==0&&(t=pN())&&(hN(t,r),mN(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},gN=function(){var e=bN();return function(t,r){C.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&r])}},Wp=function(){var e=gN(),t=function(r){var o=r.styles,n=r.dynamic;return e(o,n),null};return t},yN={left:0,top:0,right:0,gap:0},sc=function(e){return parseInt(e||"",10)||0},vN=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[sc(r),sc(o),sc(n)]},wN=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return yN;var t=vN(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])}},xN=Wp(),mn="data-scroll-locked",CN=function(e,t,r,o){var n=e.left,a=e.top,s=e.right,l=e.gap;return r===void 0&&(r="margin"),`
|
|
7
|
+
.`.concat(oN,` {
|
|
3
8
|
overflow: hidden `).concat(o,`;
|
|
4
|
-
padding-right: `).concat(
|
|
9
|
+
padding-right: `).concat(l,"px ").concat(o,`;
|
|
5
10
|
}
|
|
6
|
-
body[`).concat(
|
|
11
|
+
body[`).concat(mn,`] {
|
|
7
12
|
overflow: hidden `).concat(o,`;
|
|
8
13
|
overscroll-behavior: contain;
|
|
9
14
|
`).concat([t&&"position: relative ".concat(o,";"),r==="margin"&&`
|
|
@@ -12,176 +17,177 @@
|
|
|
12
17
|
padding-right: `).concat(s,`px;
|
|
13
18
|
margin-left:0;
|
|
14
19
|
margin-top:0;
|
|
15
|
-
margin-right: `).concat(
|
|
16
|
-
`),r==="padding"&&"padding-right: ".concat(
|
|
20
|
+
margin-right: `).concat(l,"px ").concat(o,`;
|
|
21
|
+
`),r==="padding"&&"padding-right: ".concat(l,"px ").concat(o,";")].filter(Boolean).join(""),`
|
|
17
22
|
}
|
|
18
23
|
|
|
19
|
-
.`).concat(
|
|
20
|
-
right: `).concat(
|
|
24
|
+
.`).concat(Ss,` {
|
|
25
|
+
right: `).concat(l,"px ").concat(o,`;
|
|
21
26
|
}
|
|
22
27
|
|
|
23
|
-
.`).concat(
|
|
24
|
-
margin-right: `).concat(
|
|
28
|
+
.`).concat(Ns,` {
|
|
29
|
+
margin-right: `).concat(l,"px ").concat(o,`;
|
|
25
30
|
}
|
|
26
31
|
|
|
27
|
-
.`).concat(
|
|
32
|
+
.`).concat(Ss," .").concat(Ss,` {
|
|
28
33
|
right: 0 `).concat(o,`;
|
|
29
34
|
}
|
|
30
35
|
|
|
31
|
-
.`).concat(
|
|
36
|
+
.`).concat(Ns," .").concat(Ns,` {
|
|
32
37
|
margin-right: 0 `).concat(o,`;
|
|
33
38
|
}
|
|
34
39
|
|
|
35
|
-
body[`).concat(
|
|
36
|
-
`).concat(
|
|
40
|
+
body[`).concat(mn,`] {
|
|
41
|
+
`).concat(nN,": ").concat(l,`px;
|
|
37
42
|
}
|
|
38
|
-
`)},
|
|
43
|
+
`)},Hp=function(){var e=parseInt(document.body.getAttribute(mn)||"0",10);return isFinite(e)?e:0},SN=function(){C.useEffect(function(){return document.body.setAttribute(mn,(Hp()+1).toString()),function(){var e=Hp()-1;e<=0?document.body.removeAttribute(mn):document.body.setAttribute(mn,e.toString())}},[])},NN=function(e){var t=e.noRelative,r=e.noImportant,o=e.gapMode,n=o===void 0?"margin":o;SN();var a=C.useMemo(function(){return wN(n)},[n]);return C.createElement(xN,{styles:CN(a,!t,n,r?"":"!important")})},lc=!1;if(typeof window<"u")try{var ks=Object.defineProperty({},"passive",{get:function(){return lc=!0,!0}});window.addEventListener("test",ks,ks),window.removeEventListener("test",ks,ks)}catch{lc=!1}var bn=lc?{passive:!1}:!1,EN=function(e){return e.tagName==="TEXTAREA"},jp=function(e,t){if(!(e instanceof Element))return!1;var r=window.getComputedStyle(e);return r[t]!=="hidden"&&!(r.overflowY===r.overflowX&&!EN(e)&&r[t]==="visible")},kN=function(e){return jp(e,"overflowY")},AN=function(e){return jp(e,"overflowX")},qp=function(e,t){var r=t.ownerDocument,o=t;do{typeof ShadowRoot<"u"&&o instanceof ShadowRoot&&(o=o.host);var n=Yp(e,o);if(n){var a=Qp(e,o),s=a[1],l=a[2];if(s>l)return!0}o=o.parentNode}while(o&&o!==r.body);return!1},_N=function(e){var t=e.scrollTop,r=e.scrollHeight,o=e.clientHeight;return[t,r,o]},TN=function(e){var t=e.scrollLeft,r=e.scrollWidth,o=e.clientWidth;return[t,r,o]},Yp=function(e,t){return e==="v"?kN(t):AN(t)},Qp=function(e,t){return e==="v"?_N(t):TN(t)},DN=function(e,t){return e==="h"&&t==="rtl"?-1:1},$N=function(e,t,r,o,n){var a=DN(e,window.getComputedStyle(t).direction),s=a*o,l=r.target,c=t.contains(l),d=!1,p=s>0,u=0,f=0;do{if(!l)break;var h=Qp(e,l),b=h[0],g=h[1],y=h[2],v=g-y-a*b;(b||v)&&Yp(e,l)&&(u+=v,f+=b);var S=l.parentNode;l=S&&S.nodeType===Node.DOCUMENT_FRAGMENT_NODE?S.host:S}while(!c&&l!==document.body||c&&(t.contains(l)||t===l));return(p&&Math.abs(u)<1||!p&&Math.abs(f)<1)&&(d=!0),d},As=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},Kp=function(e){return[e.deltaX,e.deltaY]},Rp=function(e){return e&&"current"in e?e.current:e},PN=function(e,t){return e[0]===t[0]&&e[1]===t[1]},MN=function(e){return`
|
|
39
44
|
.block-interactivity-`.concat(e,` {pointer-events: none;}
|
|
40
45
|
.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");/**
|
|
46
|
+
`)},ON=0,gn=[];function IN(e){var t=C.useRef([]),r=C.useRef([0,0]),o=C.useRef(),n=C.useState(ON++)[0],a=C.useState(Wp)[0],s=C.useRef(e);C.useEffect(function(){s.current=e},[e]),C.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(n));var g=rN([e.lockRef.current],(e.shards||[]).map(Rp),!0).filter(Boolean);return g.forEach(function(y){return y.classList.add("allow-interactivity-".concat(n))}),function(){document.body.classList.remove("block-interactivity-".concat(n)),g.forEach(function(y){return y.classList.remove("allow-interactivity-".concat(n))})}}},[e.inert,e.lockRef.current,e.shards]);var l=C.useCallback(function(g,y){if("touches"in g&&g.touches.length===2||g.type==="wheel"&&g.ctrlKey)return!s.current.allowPinchZoom;var v=As(g),S=r.current,x="deltaX"in g?g.deltaX:S[0]-v[0],w="deltaY"in g?g.deltaY:S[1]-v[1],N,k=g.target,_=Math.abs(x)>Math.abs(w)?"h":"v";if("touches"in g&&_==="h"&&k.type==="range")return!1;var E=window.getSelection(),D=E&&E.anchorNode,T=D?D===k||D.contains(k):!1;if(T)return!1;var O=qp(_,k);if(!O)return!0;if(O?N=_:(N=_==="v"?"h":"v",O=qp(_,k)),!O)return!1;if(!o.current&&"changedTouches"in g&&(x||w)&&(o.current=N),!N)return!0;var $=o.current||N;return $N($,y,g,$==="h"?x:w)},[]),c=C.useCallback(function(g){var y=g;if(!(!gn.length||gn[gn.length-1]!==a)){var v="deltaY"in y?Kp(y):As(y),S=t.current.filter(function(N){return N.name===y.type&&(N.target===y.target||y.target===N.shadowParent)&&PN(N.delta,v)})[0];if(S&&S.should){y.cancelable&&y.preventDefault();return}if(!S){var x=(s.current.shards||[]).map(Rp).filter(Boolean).filter(function(N){return N.contains(y.target)}),w=x.length>0?l(y,x[0]):!s.current.noIsolation;w&&y.cancelable&&y.preventDefault()}}},[]),d=C.useCallback(function(g,y,v,S){var x={name:g,delta:y,target:v,should:S,shadowParent:LN(v)};t.current.push(x),setTimeout(function(){t.current=t.current.filter(function(w){return w!==x})},1)},[]),p=C.useCallback(function(g){r.current=As(g),o.current=void 0},[]),u=C.useCallback(function(g){d(g.type,Kp(g),g.target,l(g,e.lockRef.current))},[]),f=C.useCallback(function(g){d(g.type,As(g),g.target,l(g,e.lockRef.current))},[]);C.useEffect(function(){return gn.push(a),e.setCallbacks({onScrollCapture:u,onWheelCapture:u,onTouchMoveCapture:f}),document.addEventListener("wheel",c,bn),document.addEventListener("touchmove",c,bn),document.addEventListener("touchstart",p,bn),function(){gn=gn.filter(function(g){return g!==a}),document.removeEventListener("wheel",c,bn),document.removeEventListener("touchmove",c,bn),document.removeEventListener("touchstart",p,bn)}},[]);var h=e.removeScrollBar,b=e.inert;return C.createElement(C.Fragment,null,b?C.createElement(a,{styles:MN(n)}):null,h?C.createElement(NN,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function LN(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const FN=uN(Up,IN);var ic=C.forwardRef(function(e,t){return C.createElement(Es,Lr({},e,{ref:t,sideCar:FN}))});ic.classNames=Es.classNames;var VN=Object.defineProperty,He=(e,t)=>VN(e,"name",{value:t,configurable:!0}),GN=[" ","Enter","ArrowUp","ArrowDown"],zN=[" ","Enter"],yn="Select",[_s,Ts,BN]=ns(yn),[Go,E2]=ur(yn,[BN,vs]),cc=vs(),[UN,vo]=Go(yn),[WN,HN]=Go(yn);function Xp(e){const{__scopeSelect:t,children:r,open:o,defaultOpen:n,onOpenChange:a,value:s,defaultValue:l,onValueChange:c,dir:d,name:p,autoComplete:u,disabled:f,required:h,form:b,internal_do_not_use_render:g}=e,y=cc(t),[v,S]=C.useState(null),[x,w]=C.useState(null),[N,k]=C.useState(!1),_=Gn(d),[E,D]=Cr({prop:o,defaultProp:n??!1,onChange:a,caller:yn}),[T,O]=Cr({prop:s,defaultProp:l,onChange:c,caller:yn}),$=C.useRef(null),V=C.useRef(T);C.useEffect(()=>{const Q=b?v==null?void 0:v.ownerDocument.getElementById(b):v==null?void 0:v.form;if(Q instanceof HTMLFormElement){const te=He(()=>O(V.current),"reset");return Q.addEventListener("reset",te),()=>Q.removeEventListener("reset",te)}},[b,v,O]);const G=v?!!b||!!v.closest("form"):!0,[q,H]=C.useState(new Set),Y=xr(),J=Array.from(q).map(Q=>Q.props.value).join(";"),W=C.useCallback(Q=>{H(te=>new Set(te).add(Q))},[]),R=C.useCallback(Q=>{H(te=>{const De=new Set(te);return De.delete(Q),De})},[]),we={required:h,trigger:v,onTriggerChange:S,valueNode:x,onValueNodeChange:w,valueNodeHasChildren:N,onValueNodeHasChildrenChange:k,contentId:Y,value:T,onValueChange:O,open:E,onOpenChange:D,dir:_,triggerPointerDownPosRef:$,disabled:f,name:p,autoComplete:u,form:b,nativeOptions:q,nativeSelectKey:J,isFormControl:G};return i.jsx(Cp,{...y,children:i.jsx(UN,{scope:t,...we,children:i.jsx(_s.Provider,{scope:t,children:i.jsx(WN,{scope:t,onNativeOptionAdd:W,onNativeOptionRemove:R,children:fh(g)?g(we):r})})})})}He(Xp,"SelectProvider");var jN=He(e=>{const{__scopeSelect:t,children:r,...o}=e;return i.jsx(Xp,{__scopeSelect:t,...o,internal_do_not_use_render:({isFormControl:n})=>i.jsxs(i.Fragment,{children:[r,n?i.jsx(h1,{__scopeSelect:t}):null]})})},"Select"),qN="SelectTrigger",Jp=C.forwardRef(He(function(t,r){const{__scopeSelect:o,disabled:n=!1,...a}=t,s=cc(o),l=vo(qN,o),c=l.disabled||n,d=Re(r,l.onTriggerChange),p=Ts(o),u=C.useRef("touch"),[f,h,b]=fc(y=>{const v=p().filter(w=>!w.disabled),S=v.find(w=>w.value===l.value),x=pc(v,y,S);x!==void 0&&l.onValueChange(x.value)}),g=He(y=>{c||(l.onOpenChange(!0),b()),y&&(l.triggerPointerDownPosRef.current={x:Math.round(y.pageX),y:Math.round(y.pageY)})},"handleOpen");return i.jsx(Sp,{asChild:!0,...s,children:i.jsx(Be.button,{type:"button",role:"combobox","aria-controls":l.open?l.contentId:void 0,"aria-expanded":l.open,"aria-required":l.required,"aria-autocomplete":"none",dir:l.dir,"data-state":l.open?"open":"closed",disabled:c,"data-disabled":c?"":void 0,"data-placeholder":Wn(l.value)?"":void 0,...a,ref:d,onClick:Pe(a.onClick,y=>{y.currentTarget.focus(),u.current!=="mouse"&&g(y)}),onPointerDown:Pe(a.onPointerDown,y=>{u.current=y.pointerType;const v=y.target;v.hasPointerCapture(y.pointerId)&&v.releasePointerCapture(y.pointerId),y.button===0&&y.ctrlKey===!1&&y.pointerType==="mouse"&&(g(y),y.preventDefault())}),onKeyDown:Pe(a.onKeyDown,y=>{const v=f.current!=="";!(y.ctrlKey||y.altKey||y.metaKey)&&y.key.length===1&&h(y.key),!(v&&y.key===" ")&&GN.includes(y.key)&&(g(),y.preventDefault())})})})},"SelectTrigger")),YN="SelectValue",QN=C.forwardRef(He(function(t,r){const{__scopeSelect:o,className:n,style:a,children:s,placeholder:l="",...c}=t,d=vo(YN,o),{onValueNodeHasChildrenChange:p}=d,u=s!==void 0,f=Re(r,d.onValueNodeChange);ut(()=>{p(u)},[p,u]);const h=Wn(d.value);return i.jsx(Be.span,{...c,asChild:h?!1:c.asChild,ref:f,style:{pointerEvents:"none"},children:i.jsx(C.Fragment,{children:h?l:s},h?"placeholder":"value")})},"SelectValue")),KN=C.forwardRef(He(function(t,r){const{__scopeSelect:o,children:n,...a}=t;return i.jsx(Be.span,{"aria-hidden":!0,...a,ref:r,children:n||"▼"})},"SelectIcon")),RN="SelectPortal",[XN,JN]=Go(RN,{forceMount:void 0}),ZN=He(e=>{const{__scopeSelect:t,forceMount:r,...o}=e;return i.jsx(XN,{scope:e.__scopeSelect,forceMount:r,children:i.jsx(tc,{asChild:!0,...o})})},"SelectPortal"),zo="SelectContent",Zp=C.forwardRef(He(function(t,r){const o=JN(zo,t.__scopeSelect),{forceMount:n=o.forceMount,...a}=t,s=vo(zo,t.__scopeSelect),[l,c]=C.useState();return ut(()=>{c(new DocumentFragment)},[]),i.jsx(ro,{present:n||s.open,children:({present:d})=>d?i.jsx(r1,{...a,ref:r}):i.jsx(e1,{...a,fragment:l})})},"SelectContent")),e1=C.forwardRef(He(function(t,r){const{__scopeSelect:o,children:n,fragment:a}=t;return a?Pn.createPortal(i.jsx(eh,{scope:o,children:i.jsx(_s.Slot,{scope:o,children:i.jsx("div",{ref:r,children:n})})}),a):null},"SelectContentFragment")),Sr=10,[eh,Bo]=Go(zo),t1=Kr("SelectContent.RemoveScroll"),r1=C.forwardRef(He(function(t,r){const{__scopeSelect:o}=t,{position:n="item-aligned",onCloseAutoFocus:a,onEscapeKeyDown:s,onPointerDownOutside:l,side:c,sideOffset:d,align:p,alignOffset:u,arrowPadding:f,collisionBoundary:h,collisionPadding:b,sticky:g,hideWhenDetached:y,avoidCollisions:v,...S}=t,x=vo(zo,o),[w,N]=C.useState(null),[k,_]=C.useState(null),E=Re(r,N),[D,T]=C.useState(null),[O,$]=C.useState(null),V=Ts(o),[G,q]=C.useState(!1),H=C.useRef(!1);C.useEffect(()=>{if(w)return Vp(w)},[w]),ls();const Y=C.useCallback(me=>{const[ce,...Ie]=V().map(ae=>ae.ref.current),[xe]=Ie.slice(-1),be=document.activeElement;for(const ae of me)if(ae===be||(ae==null||ae.scrollIntoView({block:"nearest"}),ae===ce&&k&&(k.scrollTop=0),ae===xe&&k&&(k.scrollTop=k.scrollHeight),ae==null||ae.focus(),document.activeElement!==be))return},[V,k]),J=C.useCallback(()=>Y([D,w]),[Y,D,w]);C.useEffect(()=>{G&&J()},[G,J]);const{onOpenChange:W,triggerPointerDownPosRef:R}=x;C.useEffect(()=>{if(w){let me={x:0,y:0};const ce=He(xe=>{var be,ae;me={x:Math.abs(Math.round(xe.pageX)-(((be=R.current)==null?void 0:be.x)??0)),y:Math.abs(Math.round(xe.pageY)-(((ae=R.current)==null?void 0:ae.y)??0))}},"handlePointerMove"),Ie=He(xe=>{me.x<=10&&me.y<=10?xe.preventDefault():xe.composedPath().includes(w)||W(!1),document.removeEventListener("pointermove",ce),R.current=null},"handlePointerUp");return R.current!==null&&(document.addEventListener("pointermove",ce),document.addEventListener("pointerup",Ie,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",ce),document.removeEventListener("pointerup",Ie,{capture:!0})}}},[w,W,R]),C.useEffect(()=>{const me=He(()=>W(!1),"close");return window.addEventListener("blur",me),window.addEventListener("resize",me),()=>{window.removeEventListener("blur",me),window.removeEventListener("resize",me)}},[W]);const[we,Q]=fc(me=>{const ce=V().filter(be=>!be.disabled),Ie=ce.find(be=>be.ref.current===document.activeElement),xe=pc(ce,me,Ie);xe&&setTimeout(()=>{var be;return(be=xe.ref.current)==null?void 0:be.focus()})}),te=C.useCallback((me,ce,Ie)=>{const xe=!H.current&&!Ie;(x.value!==void 0&&x.value===ce||xe)&&(T(me),xe&&(H.current=!0))},[x.value]),De=C.useCallback(()=>w==null?void 0:w.focus(),[w]),de=C.useCallback((me,ce,Ie)=>{const xe=!H.current&&!Ie;(x.value!==void 0&&x.value===ce||xe)&&$(me)},[x.value]),Se=n==="popper"?th:o1,re=Se===th?{side:c,sideOffset:d,align:p,alignOffset:u,arrowPadding:f,collisionBoundary:h,collisionPadding:b,sticky:g,hideWhenDetached:y,avoidCollisions:v}:{};return i.jsx(eh,{scope:o,content:w,viewport:k,onViewportChange:_,itemRefCallback:te,selectedItem:D,onItemLeave:De,itemTextRefCallback:de,focusSelectedItem:J,selectedItemText:O,position:n,isPositioned:G,searchRef:we,children:i.jsx(ic,{as:t1,allowPinchZoom:!0,children:i.jsx(Uf,{asChild:!0,trapped:x.open,onMountAutoFocus:me=>{me.preventDefault()},onUnmountAutoFocus:Pe(a,me=>{var ce;(ce=x.trigger)==null||ce.focus({preventScroll:!0}),me.preventDefault()}),children:i.jsx(Mi,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:s,onPointerDownOutside:l,onFocusOutside:me=>me.preventDefault(),onDismiss:()=>x.onOpenChange(!1),children:i.jsx(Se,{role:"listbox",id:x.contentId,"data-state":x.open?"open":"closed",dir:x.dir,onContextMenu:me=>me.preventDefault(),...S,...re,onPlaced:()=>q(!0),ref:E,style:{display:"flex",flexDirection:"column",outline:"none",...S.style},onKeyDown:Pe(S.onKeyDown,me=>{const ce=me.ctrlKey||me.altKey||me.metaKey;if(me.key==="Tab"&&me.preventDefault(),!ce&&me.key.length===1&&Q(me.key),["ArrowUp","ArrowDown","Home","End"].includes(me.key)){let xe=V().filter(be=>!be.disabled).map(be=>be.ref.current);if(["ArrowUp","End"].includes(me.key)&&(xe=xe.slice().reverse()),["ArrowUp","ArrowDown"].includes(me.key)){const be=me.target,ae=xe.indexOf(be);xe=xe.slice(ae+1)}setTimeout(()=>Y(xe)),me.preventDefault()}})})})})})})},"SelectContentImpl")),o1=C.forwardRef(He(function(t,r){const{__scopeSelect:o,onPlaced:n,...a}=t,s=vo(zo,o),l=Bo(zo,o),[c,d]=C.useState(null),[p,u]=C.useState(null),f=Re(r,u),h=Ts(o),b=C.useRef(!1),g=C.useRef(!0),{viewport:y,selectedItem:v,selectedItemText:S,focusSelectedItem:x}=l,w=C.useCallback(()=>{if(s.trigger&&s.valueNode&&c&&p&&y&&v&&S){const E=s.trigger.getBoundingClientRect(),D=p.getBoundingClientRect(),T=s.valueNode.getBoundingClientRect(),O=S.getBoundingClientRect();if(s.dir!=="rtl"){const be=O.left-D.left,ae=T.left-be,ue=E.left-ae,ve=E.width+ue,Oe=Math.max(ve,D.width),et=window.innerWidth-Sr,at=Ni(ae,[Sr,Math.max(Sr,et-Oe)]);c.style.minWidth=ve+"px",c.style.left=at+"px"}else{const be=D.right-O.right,ae=window.innerWidth-T.right-be,ue=window.innerWidth-E.right-ae,ve=E.width+ue,Oe=Math.max(ve,D.width),et=window.innerWidth-Sr,at=Ni(ae,[Sr,Math.max(Sr,et-Oe)]);c.style.minWidth=ve+"px",c.style.right=at+"px"}const $=h(),V=window.innerHeight-Sr*2,G=y.scrollHeight,q=window.getComputedStyle(p),H=parseInt(q.borderTopWidth,10),Y=parseInt(q.paddingTop,10),J=parseInt(q.borderBottomWidth,10),W=parseInt(q.paddingBottom,10),R=H+Y+G+W+J,we=Math.min(v.offsetHeight*5,R),Q=window.getComputedStyle(y),te=parseInt(Q.paddingTop,10),De=parseInt(Q.paddingBottom,10),de=E.top+E.height/2-Sr,Se=V-de,re=v.offsetHeight/2,me=v.offsetTop+re,ce=H+Y+me,Ie=R-ce;if(ce<=de){const be=$.length>0&&v===$[$.length-1].ref.current;c.style.bottom="0px";const ae=p.clientHeight-y.offsetTop-y.offsetHeight,ue=Math.max(Se,re+(be?De:0)+ae+J),ve=ce+ue;c.style.height=ve+"px"}else{const be=$.length>0&&v===$[0].ref.current;c.style.top="0px";const ue=Math.max(de,H+y.offsetTop+(be?te:0)+re)+Ie;c.style.height=ue+"px",y.scrollTop=ce-de+y.offsetTop}c.style.margin=`${Sr}px 0`,c.style.minHeight=we+"px",c.style.maxHeight=V+"px",n==null||n(),requestAnimationFrame(()=>b.current=!0)}},[h,s.trigger,s.valueNode,c,p,y,v,S,s.dir,n]);ut(()=>w(),[w]);const[N,k]=C.useState();ut(()=>{p&&k(window.getComputedStyle(p).zIndex)},[p]);const _=C.useCallback(E=>{E&&g.current===!0&&(w(),x==null||x(),g.current=!1)},[w,x]);return i.jsx(n1,{scope:o,contentWrapper:c,shouldExpandOnScrollRef:b,onScrollButtonChange:_,children:i.jsx("div",{ref:d,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:N},children:i.jsx(Be.div,{...a,ref:f,style:{boxSizing:"border-box",maxHeight:"100%",...a.style}})})})},"SelectItemAlignedPosition")),th=C.forwardRef(He(function(t,r){const{__scopeSelect:o,align:n="start",collisionPadding:a=Sr,...s}=t,l=cc(o);return i.jsx(Np,{...l,...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")),[n1,dc]=Go(zo,{}),rh="SelectViewport",a1=C.forwardRef(He(function(t,r){const{__scopeSelect:o,nonce:n,...a}=t,s=Bo(rh,o),l=dc(rh,o),c=Re(r,s.onViewportChange),d=C.useRef(0);return i.jsxs(i.Fragment,{children:[i.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}),i.jsx(_s.Slot,{scope:o,children:i.jsx(Be.div,{"data-radix-select-viewport":"",role:"presentation",...a,ref:c,style:{position:"relative",flex:1,overflow:"hidden auto",...a.style},onScroll:Pe(a.onScroll,p=>{const u=p.currentTarget,{contentWrapper:f,shouldExpandOnScrollRef:h}=l;if(h!=null&&h.current&&f){const b=Math.abs(d.current-u.scrollTop);if(b>0){const g=window.innerHeight-Sr*2,y=parseFloat(f.style.minHeight),v=parseFloat(f.style.height),S=Math.max(y,v);if(S<g){const x=S+b,w=Math.min(g,x),N=x-w;f.style.height=w+"px",f.style.bottom==="0px"&&(u.scrollTop=N>0?N:0,f.style.justifyContent="flex-end")}}}d.current=u.scrollTop})})})]})},"SelectViewport")),s1="SelectGroup",[k2,l1]=Go(s1),i1="SelectLabel",oh=C.forwardRef(He(function(t,r){const{__scopeSelect:o,...n}=t,a=l1(i1,o);return i.jsx(Be.div,{id:a.id,...n,ref:r})},"SelectLabel")),uc="SelectItem",[c1,nh]=Go(uc),ah=C.forwardRef(He(function(t,r){const{__scopeSelect:o,value:n,disabled:a=!1,textValue:s,...l}=t,c=vo(uc,o),d=Bo(uc,o),p=c.value===n,[u,f]=C.useState(s??""),[h,b]=C.useState(!1),g=wr(w=>{var N;return(N=d.itemRefCallback)==null?void 0:N.call(d,w,n,a)}),y=Re(r,g),v=xr(),S=C.useRef("touch"),x=He(()=>{a||(c.onValueChange(n),c.onOpenChange(!1))},"handleSelect");return i.jsx(c1,{scope:o,value:n,disabled:a,textId:v,isSelected:p,onItemTextChange:C.useCallback(w=>{f(N=>N||((w==null?void 0:w.textContent)??"").trim())},[]),children:i.jsx(_s.ItemSlot,{scope:o,value:n,disabled:a,textValue:u,children:i.jsx(Be.div,{role:"option","aria-labelledby":v,"data-highlighted":h?"":void 0,"aria-selected":p&&h,"data-state":p?"checked":"unchecked","aria-disabled":a||void 0,"data-disabled":a?"":void 0,tabIndex:a?void 0:-1,...l,ref:y,onFocus:Pe(l.onFocus,()=>b(!0)),onBlur:Pe(l.onBlur,()=>b(!1)),onClick:Pe(l.onClick,()=>{S.current!=="mouse"&&x()}),onPointerUp:Pe(l.onPointerUp,()=>{S.current==="mouse"&&x()}),onPointerDown:Pe(l.onPointerDown,w=>{S.current=w.pointerType}),onPointerMove:Pe(l.onPointerMove,w=>{var N;S.current=w.pointerType,a?(N=d.onItemLeave)==null||N.call(d):S.current==="mouse"&&w.currentTarget.focus({preventScroll:!0})}),onPointerLeave:Pe(l.onPointerLeave,w=>{var N;w.currentTarget===document.activeElement&&((N=d.onItemLeave)==null||N.call(d))}),onKeyDown:Pe(l.onKeyDown,w=>{var k;a||w.target!==w.currentTarget||((k=d.searchRef)==null?void 0:k.current)!==""&&w.key===" "||(zN.includes(w.key)&&x(),w.key===" "&&w.preventDefault())})})})})},"SelectItem")),Ds="SelectItemText",d1=C.forwardRef(He(function(t,r){const{__scopeSelect:o,className:n,style:a,...s}=t,l=vo(Ds,o),c=Bo(Ds,o),d=nh(Ds,o),p=HN(Ds,o),[u,f]=C.useState(null),h=wr(x=>{var w;return(w=c.itemTextRefCallback)==null?void 0:w.call(c,x,d.value,d.disabled)}),b=Re(r,f,d.onItemTextChange,h),g=u==null?void 0:u.textContent,y=C.useMemo(()=>i.jsx("option",{value:d.value,disabled:d.disabled,children:g},d.value),[d.disabled,d.value,g]),{onNativeOptionAdd:v,onNativeOptionRemove:S}=p;return ut(()=>(v(y),()=>S(y)),[v,S,y]),i.jsxs(i.Fragment,{children:[i.jsx(Be.span,{id:d.textId,...s,ref:b}),d.isSelected&&l.valueNode&&!l.valueNodeHasChildren&&!Wn(l.value)?Pn.createPortal(s.children,l.valueNode):null]})},"SelectItemText")),u1="SelectItemIndicator",f1=C.forwardRef(He(function(t,r){const{__scopeSelect:o,...n}=t;return nh(u1,o).isSelected?i.jsx(Be.span,{"aria-hidden":!0,...n,ref:r}):null},"SelectItemIndicator")),sh="SelectScrollUpButton",lh=C.forwardRef(He(function(t,r){const o=Bo(sh,t.__scopeSelect),n=dc(sh,t.__scopeSelect),[a,s]=C.useState(!1),l=Re(r,n.onScrollButtonChange);return ut(()=>{if(o.viewport&&o.isPositioned){let c=function(){const p=d.scrollTop>0;s(p)};He(c,"handleScroll");const d=o.viewport;return c(),d.addEventListener("scroll",c),()=>d.removeEventListener("scroll",c)}},[o.viewport,o.isPositioned]),a?i.jsx(dh,{...t,ref:l,onAutoScroll:()=>{const{viewport:c,selectedItem:d}=o;c&&d&&(c.scrollTop=c.scrollTop-d.offsetHeight)}}):null},"SelectScrollUpButton")),ih="SelectScrollDownButton",ch=C.forwardRef(He(function(t,r){const o=Bo(ih,t.__scopeSelect),n=dc(ih,t.__scopeSelect),[a,s]=C.useState(!1),l=Re(r,n.onScrollButtonChange);return ut(()=>{if(o.viewport&&o.isPositioned){let c=function(){const p=d.scrollHeight-d.clientHeight,u=Math.ceil(d.scrollTop)<p;s(u)};He(c,"handleScroll");const d=o.viewport;return c(),d.addEventListener("scroll",c),()=>d.removeEventListener("scroll",c)}},[o.viewport,o.isPositioned]),a?i.jsx(dh,{...t,ref:l,onAutoScroll:()=>{const{viewport:c,selectedItem:d}=o;c&&d&&(c.scrollTop=c.scrollTop+d.offsetHeight)}}):null},"SelectScrollDownButton")),dh=C.forwardRef(He(function(t,r){const{__scopeSelect:o,onAutoScroll:n,...a}=t,s=Bo("SelectScrollButton",o),l=C.useRef(null),c=Ts(o),d=C.useCallback(()=>{l.current!==null&&(window.clearInterval(l.current),l.current=null)},[]);return C.useEffect(()=>()=>d(),[d]),ut(()=>{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]),i.jsx(Be.div,{"aria-hidden":!0,...a,ref:r,style:{flexShrink:0,...a.style},onPointerDown:Pe(a.onPointerDown,()=>{l.current===null&&(l.current=window.setInterval(n,50))}),onPointerMove:Pe(a.onPointerMove,()=>{var p;(p=s.onItemLeave)==null||p.call(s),l.current===null&&(l.current=window.setInterval(n,50))}),onPointerLeave:Pe(a.onPointerLeave,()=>{d()})})},"SelectScrollButtonImpl")),uh=C.forwardRef(He(function(t,r){const{__scopeSelect:o,...n}=t;return i.jsx(Be.div,{"aria-hidden":!0,...n,ref:r})},"SelectSeparator")),p1="SelectBubbleInput",h1=C.forwardRef(He(function({__scopeSelect:t,...r},o){const n=vo(p1,t),{value:a,onValueChange:s,required:l,disabled:c,name:d,autoComplete:p,form:u}=n,{nativeOptions:f,nativeSelectKey:h}=n,b=C.useRef(null),g=Re(o,b),y=a??"",v=Ip(y),S=Array.from(f).some(x=>(x.props.value??"")==="");return C.useEffect(()=>{const x=b.current;if(!x)return;const w=window.HTMLSelectElement.prototype,k=Object.getOwnPropertyDescriptor(w,"value").set;if(v!==y&&k){const _=new Event("change",{bubbles:!0});k.call(x,y),x.dispatchEvent(_)}},[v,y]),i.jsxs(Be.select,{"aria-hidden":!0,required:l,tabIndex:-1,name:d,autoComplete:p,disabled:c,form:u,onChange:x=>s(x.target.value),...r,style:{...Lp,...r.style},ref:g,defaultValue:y,children:[Wn(a)&&!S?i.jsx("option",{value:""}):null,Array.from(f)]},h)},"SelectBubbleInput"));function fh(e){return typeof e=="function"}He(fh,"isFunction");function Wn(e){return e===""||e===void 0}He(Wn,"shouldShowPlaceholder");function fc(e){const t=wr(e),r=C.useRef(""),o=C.useRef(0),n=C.useCallback(s=>{const l=r.current+s;t(l),He((function c(d){r.current=d,window.clearTimeout(o.current),d!==""&&(o.current=window.setTimeout(()=>c(""),1e3))}),"updateSearch")(l)},[t]),a=C.useCallback(()=>{r.current="",window.clearTimeout(o.current)},[]);return C.useEffect(()=>()=>window.clearTimeout(o.current),[]),[r,n,a]}He(fc,"useTypeaheadSearch");function pc(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=ph(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}He(pc,"findNextItem");function ph(e,t){return e.map((r,o)=>e[(t+o)%e.length])}He(ph,"wrapArray");/**
|
|
42
47
|
* @license lucide-react v0.563.0 - ISC
|
|
43
48
|
*
|
|
44
49
|
* This source code is licensed under the ISC license.
|
|
45
50
|
* See the LICENSE file in the root directory of this source tree.
|
|
46
|
-
*/const
|
|
51
|
+
*/const hh=(...e)=>e.filter((t,r,o)=>!!t&&t.trim()!==""&&o.indexOf(t)===r).join(" ").trim();/**
|
|
47
52
|
* @license lucide-react v0.563.0 - ISC
|
|
48
53
|
*
|
|
49
54
|
* This source code is licensed under the ISC license.
|
|
50
55
|
* See the LICENSE file in the root directory of this source tree.
|
|
51
|
-
*/const
|
|
56
|
+
*/const m1=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();/**
|
|
52
57
|
* @license lucide-react v0.563.0 - ISC
|
|
53
58
|
*
|
|
54
59
|
* This source code is licensed under the ISC license.
|
|
55
60
|
* See the LICENSE file in the root directory of this source tree.
|
|
56
|
-
*/const
|
|
61
|
+
*/const b1=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,r,o)=>o?o.toUpperCase():r.toLowerCase());/**
|
|
57
62
|
* @license lucide-react v0.563.0 - ISC
|
|
58
63
|
*
|
|
59
64
|
* This source code is licensed under the ISC license.
|
|
60
65
|
* See the LICENSE file in the root directory of this source tree.
|
|
61
|
-
*/const
|
|
66
|
+
*/const mh=e=>{const t=b1(e);return t.charAt(0).toUpperCase()+t.slice(1)};/**
|
|
62
67
|
* @license lucide-react v0.563.0 - ISC
|
|
63
68
|
*
|
|
64
69
|
* This source code is licensed under the ISC license.
|
|
65
70
|
* See the LICENSE file in the root directory of this source tree.
|
|
66
|
-
*/var
|
|
71
|
+
*/var g1={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
72
|
* @license lucide-react v0.563.0 - ISC
|
|
68
73
|
*
|
|
69
74
|
* This source code is licensed under the ISC license.
|
|
70
75
|
* See the LICENSE file in the root directory of this source tree.
|
|
71
|
-
*/const
|
|
76
|
+
*/const y1=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};/**
|
|
72
77
|
* @license lucide-react v0.563.0 - ISC
|
|
73
78
|
*
|
|
74
79
|
* This source code is licensed under the ISC license.
|
|
75
80
|
* See the LICENSE file in the root directory of this source tree.
|
|
76
|
-
*/const
|
|
81
|
+
*/const v1=P.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:r=2,absoluteStrokeWidth:o,className:n="",children:a,iconNode:s,...l},c)=>P.createElement("svg",{ref:c,...g1,width:t,height:t,stroke:e,strokeWidth:o?Number(r)*24/Number(t):r,className:hh("lucide",n),...!a&&!y1(l)&&{"aria-hidden":"true"},...l},[...s.map(([d,p])=>P.createElement(d,p)),...Array.isArray(a)?a:[a]]));/**
|
|
77
82
|
* @license lucide-react v0.563.0 - ISC
|
|
78
83
|
*
|
|
79
84
|
* This source code is licensed under the ISC license.
|
|
80
85
|
* See the LICENSE file in the root directory of this source tree.
|
|
81
|
-
*/const
|
|
86
|
+
*/const Dt=(e,t)=>{const r=P.forwardRef(({className:o,...n},a)=>P.createElement(v1,{ref:a,iconNode:t,className:hh(`lucide-${m1(mh(e))}`,`lucide-${e}`,o),...n}));return r.displayName=mh(e),r};/**
|
|
82
87
|
* @license lucide-react v0.563.0 - ISC
|
|
83
88
|
*
|
|
84
89
|
* This source code is licensed under the ISC license.
|
|
85
90
|
* See the LICENSE file in the root directory of this source tree.
|
|
86
|
-
*/const
|
|
91
|
+
*/const w1=Dt("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);/**
|
|
87
92
|
* @license lucide-react v0.563.0 - ISC
|
|
88
93
|
*
|
|
89
94
|
* This source code is licensed under the ISC license.
|
|
90
95
|
* See the LICENSE file in the root directory of this source tree.
|
|
91
|
-
*/const
|
|
96
|
+
*/const bh=Dt("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);/**
|
|
92
97
|
* @license lucide-react v0.563.0 - ISC
|
|
93
98
|
*
|
|
94
99
|
* This source code is licensed under the ISC license.
|
|
95
100
|
* See the LICENSE file in the root directory of this source tree.
|
|
96
|
-
*/const
|
|
101
|
+
*/const vn=Dt("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);/**
|
|
97
102
|
* @license lucide-react v0.563.0 - ISC
|
|
98
103
|
*
|
|
99
104
|
* This source code is licensed under the ISC license.
|
|
100
105
|
* See the LICENSE file in the root directory of this source tree.
|
|
101
|
-
*/const
|
|
106
|
+
*/const gh=Dt("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]);/**
|
|
102
107
|
* @license lucide-react v0.563.0 - ISC
|
|
103
108
|
*
|
|
104
109
|
* This source code is licensed under the ISC license.
|
|
105
110
|
* See the LICENSE file in the root directory of this source tree.
|
|
106
|
-
*/const
|
|
111
|
+
*/const x1=Dt("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
112
|
* @license lucide-react v0.563.0 - ISC
|
|
108
113
|
*
|
|
109
114
|
* This source code is licensed under the ISC license.
|
|
110
115
|
* See the LICENSE file in the root directory of this source tree.
|
|
111
|
-
*/const
|
|
116
|
+
*/const C1=Dt("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
117
|
* @license lucide-react v0.563.0 - ISC
|
|
113
118
|
*
|
|
114
119
|
* This source code is licensed under the ISC license.
|
|
115
120
|
* See the LICENSE file in the root directory of this source tree.
|
|
116
|
-
*/const
|
|
121
|
+
*/const yh=Dt("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
122
|
* @license lucide-react v0.563.0 - ISC
|
|
118
123
|
*
|
|
119
124
|
* This source code is licensed under the ISC license.
|
|
120
125
|
* See the LICENSE file in the root directory of this source tree.
|
|
121
|
-
*/const
|
|
126
|
+
*/const S1=Dt("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
127
|
* @license lucide-react v0.563.0 - ISC
|
|
123
128
|
*
|
|
124
129
|
* This source code is licensed under the ISC license.
|
|
125
130
|
* See the LICENSE file in the root directory of this source tree.
|
|
126
|
-
*/const
|
|
131
|
+
*/const vh=Dt("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
132
|
* @license lucide-react v0.563.0 - ISC
|
|
128
133
|
*
|
|
129
134
|
* This source code is licensed under the ISC license.
|
|
130
135
|
* See the LICENSE file in the root directory of this source tree.
|
|
131
|
-
*/const
|
|
136
|
+
*/const N1=Dt("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
137
|
* @license lucide-react v0.563.0 - ISC
|
|
133
138
|
*
|
|
134
139
|
* This source code is licensed under the ISC license.
|
|
135
140
|
* See the LICENSE file in the root directory of this source tree.
|
|
136
|
-
*/const
|
|
141
|
+
*/const hc=Dt("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);/**
|
|
137
142
|
* @license lucide-react v0.563.0 - ISC
|
|
138
143
|
*
|
|
139
144
|
* This source code is licensed under the ISC license.
|
|
140
145
|
* See the LICENSE file in the root directory of this source tree.
|
|
141
|
-
*/const
|
|
146
|
+
*/const E1=Dt("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
147
|
* @license lucide-react v0.563.0 - ISC
|
|
143
148
|
*
|
|
144
149
|
* This source code is licensed under the ISC license.
|
|
145
150
|
* See the LICENSE file in the root directory of this source tree.
|
|
146
|
-
*/const
|
|
151
|
+
*/const k1=Dt("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);/**
|
|
147
152
|
* @license lucide-react v0.563.0 - ISC
|
|
148
153
|
*
|
|
149
154
|
* This source code is licensed under the ISC license.
|
|
150
155
|
* See the LICENSE file in the root directory of this source tree.
|
|
151
|
-
*/const
|
|
156
|
+
*/const wh=Dt("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
157
|
* @license lucide-react v0.563.0 - ISC
|
|
153
158
|
*
|
|
154
159
|
* This source code is licensed under the ISC license.
|
|
155
160
|
* See the LICENSE file in the root directory of this source tree.
|
|
156
|
-
*/const
|
|
161
|
+
*/const mc=Dt("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
162
|
* @license lucide-react v0.563.0 - ISC
|
|
158
163
|
*
|
|
159
164
|
* This source code is licensed under the ISC license.
|
|
160
165
|
* See the LICENSE file in the root directory of this source tree.
|
|
161
|
-
*/const
|
|
166
|
+
*/const A1=Dt("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
167
|
* @license lucide-react v0.563.0 - ISC
|
|
163
168
|
*
|
|
164
169
|
* This source code is licensed under the ISC license.
|
|
165
170
|
* See the LICENSE file in the root directory of this source tree.
|
|
166
|
-
*/const
|
|
171
|
+
*/const _1=Dt("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
172
|
* @license lucide-react v0.563.0 - ISC
|
|
168
173
|
*
|
|
169
174
|
* This source code is licensed under the ISC license.
|
|
170
175
|
* 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 (${
|
|
176
|
+
*/const Hn=Dt("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),$s=jN,Ps=QN,jn=C.forwardRef(({className:e,children:t,...r},o)=>i.jsxs(Jp,{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,i.jsx(KN,{asChild:!0,children:i.jsx(vn,{className:m("h-4 w-4 opacity-50")})})]}));jn.displayName=Jp.displayName;const xh=C.forwardRef(({className:e,...t},r)=>i.jsx(lh,{ref:r,className:m("flex cursor-default items-center justify-center py-1",e),...t,children:i.jsx(gh,{className:m("h-4 w-4")})}));xh.displayName=lh.displayName;const Ch=C.forwardRef(({className:e,...t},r)=>i.jsx(ch,{ref:r,className:m("flex cursor-default items-center justify-center py-1",e),...t,children:i.jsx(vn,{className:m("h-4 w-4")})}));Ch.displayName=ch.displayName;const qn=C.forwardRef(({className:e,children:t,position:r="popper",...o},n)=>i.jsx(ZN,{children:i.jsxs(Zp,{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:[i.jsx(xh,{}),i.jsx(a1,{className:m("p-1",r==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:t}),i.jsx(Ch,{})]})}));qn.displayName=Zp.displayName;const T1=C.forwardRef(({className:e,...t},r)=>i.jsx(oh,{ref:r,className:m("px-2 py-1.5 text-sm font-semibold",e),...t}));T1.displayName=oh.displayName;const Uo=C.forwardRef(({className:e,children:t,...r},o)=>i.jsxs(ah,{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:[i.jsx("span",{className:m("absolute right-2 flex h-3.5 w-3.5 items-center justify-center"),children:i.jsx(f1,{children:i.jsx(bh,{className:m("h-4 w-4")})})}),i.jsx(d1,{children:t})]}));Uo.displayName=ah.displayName;const D1=C.forwardRef(({className:e,...t},r)=>i.jsx(uh,{ref:r,className:m("-mx-1 my-1 h-px bg-muted",e),...t}));D1.displayName=uh.displayName;const Wo=[{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:"🇱🇹"}],$1=[...Wo].sort((e,t)=>e.name.localeCompare(t.name)),Yn=e=>Wo.find(t=>t.code===e),P1=(e,t="US")=>{const r=Yn(t)||Wo[0];if(!e)return{countryCode:r.code,dialCode:r.dialCode,number:""};if(e.startsWith("+")){for(const o of Wo)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(/^\+/,"")}},M1=({value:e,onChange:t,onBlur:r,defaultCountry:o="US",disabled:n=!1,placeholder:a="Phone number",hasError:s=!1,className:l,inputClassName:c})=>{const d=P.useMemo(()=>{if(!e){const S=Yn(o)||Wo[0];return{countryCode:S.code,dialCode:S.dialCode,number:""}}return typeof e=="string"?P1(e,o):e},[e,o]),[p,u]=P.useState(d.countryCode),[f,h]=P.useState(d.number),b=P.useRef(null);P.useEffect(()=>{u(d.countryCode),h(d.number)},[d.countryCode,d.number]);const g=P.useMemo(()=>Yn(p)||Wo[0],[p]),y=S=>{const x=Yn(S);if(x){u(S);const w={countryCode:x.code,dialCode:x.dialCode,number:f};t==null||t(w)}},v=S=>{const x=S.target.value.replace(/[^\d\s\-()]/g,"");h(x),t==null||t({countryCode:g.code,dialCode:g.dialCode,number:x})};return i.jsxs("div",{className:m("flex",l),children:[i.jsxs($s,{value:p,onValueChange:y,disabled:n,children:[i.jsx(jn,{className:m("w-[110px] rounded-r-none border-r-0 focus:z-10",s&&"border-red-500",n&&"opacity-50 cursor-not-allowed"),children:i.jsx(Ps,{children:i.jsxs("span",{className:m("flex items-center gap-1.5"),children:[i.jsx("span",{className:m("text-base"),children:g.flag}),i.jsx("span",{className:m("text-sm text-muted-foreground"),children:g.dialCode})]})})}),i.jsx(qn,{className:m("max-h-[300px]"),children:$1.map(S=>i.jsx(Uo,{value:S.code,className:m("cursor-pointer"),children:i.jsxs("span",{className:m("flex items-center gap-2"),children:[i.jsx("span",{className:m("text-base"),children:S.flag}),i.jsx("span",{className:m("flex-1"),children:S.name}),i.jsx("span",{className:m("text-muted-foreground text-sm"),children:S.dialCode})]})},S.code))})]}),i.jsx("input",{ref:b,type:"tel",value:f,onChange:v,onBlur:r,disabled:n,placeholder:a,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",s&&"border-red-500 focus:ring-red-500",c)})]})},O1=({defaultCountry:e="US",placeholder:t="Phone number",className:r})=>{const o=Yn(e)||Wo[0];return i.jsxs("div",{className:m("flex",r),children:[i.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:[i.jsx("span",{className:m("text-base"),children:o.flag}),i.jsx("span",{className:m("text-muted-foreground"),children:o.dialCode}),i.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:i.jsx("path",{d:"m6 9 6 6 6-6"})})]}),i.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")})]})},I1=[{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}=oe(e);return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,children:i.jsx(Io,{icon:"✉️",children:i.jsx("input",{type:"email",placeholder:o||"email@example.com",disabled:!0,className:m(`${Ot()} pl-10`)})})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,value:s,onChange:l,errors:c,isDisabled:d}=oe(e);return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,errors:c,children:i.jsx(Io,{icon:"✉️",children:i.jsx("input",{type:"email",placeholder:o||"email@example.com",value:s??"",onChange:p=>l==null?void 0:l(p.target.value),disabled:d,className:m(`${qt({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}=oe(e),l=(s==null?void 0:s.defaultCountry)||"US";return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,children:i.jsx(O1,{defaultCountry:l,placeholder:o||"Phone number"})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,value:s,onChange:l,errors:c,isDisabled:d,config:p}=oe(e),u=(p==null?void 0:p.defaultCountry)||"US",f=h=>{l==null||l(h)};return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,errors:c,children:i.jsx(M1,{value:s,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:a}=oe(e);return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,children:i.jsx(Io,{icon:"🔗",children:i.jsx("input",{type:"url",placeholder:o||"https://example.com",disabled:!0,className:m(`${Ot()} pl-10`)})})})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,value:s,onChange:l,errors:c,isDisabled:d}=oe(e);return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,errors:c,children:i.jsx(Io,{icon:"🔗",children:i.jsx("input",{type:"url",placeholder:o||"https://example.com",value:s??"",onChange:p=>l==null?void 0:l(p.target.value),disabled:d,className:m(`${qt({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}=oe(e);return i.jsxs(ge,{label:t,description:r,required:n,labelPosition:a,children:[i.jsx(Io,{icon:"📍",children:i.jsx("input",{type:"text",placeholder:o||"Enter address...",disabled:!0,className:m(`${Ot()} pl-10`)})}),(s==null?void 0:s.showMap)&&i.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:a,value:s,onChange:l,errors:c,isDisabled:d,config:p}=oe(e);return i.jsx(ge,{label:t,description:r,required:n,labelPosition:a,errors:c,children:i.jsxs("div",{className:m("space-y-2"),children:[i.jsx(Io,{icon:"📍",children:i.jsx("input",{type:"text",placeholder:o||"Enter address...",value:typeof s=="string"?s:(s==null?void 0:s.address)??"",onChange:u=>l==null?void 0:l(u.target.value),disabled:d,className:m(`${qt({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})} pl-10`)})}),(p==null?void 0:p.enableGeolocation)&&!d&&i.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)&&i.jsx("div",{className:m("h-32 bg-gray-200 rounded-md flex items-center justify-center text-gray-400 text-sm"),children:"🗺️ Map Preview"})]})})}}],L1=[{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}=oe(e);return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,children:i.jsx("input",{type:"date",disabled:!0,className:Ot()})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:l,isDisabled:c}=oe(e);return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:i.jsx("input",{type:"date",value:a??"",onChange:d=>s==null?void 0:s(d.target.value),disabled:c,className:qt({hasError:((l==null?void 0:l.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}=oe(e);return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,children:i.jsx("input",{type:"time",disabled:!0,className:Ot()})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:l,isDisabled:c}=oe(e);return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:i.jsx("input",{type:"time",value:a??"",onChange:d=>s==null?void 0:s(d.target.value),disabled:c,className:qt({hasError:((l==null?void 0:l.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}=oe(e);return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,children:i.jsxs("div",{className:m("flex gap-2"),children:[i.jsx("input",{type:"date",disabled:!0,className:`flex-1 ${Ot()}`}),i.jsx("input",{type:"time",disabled:!0,className:`w-32 ${Ot()}`})]})})},render:e=>{var b;const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:l,isDisabled:c}=oe(e),d=typeof a=="object"?a==null?void 0:a.date:(a==null?void 0:a.split("T")[0])??"",p=typeof a=="object"?a==null?void 0:a.time:((b=a==null?void 0:a.split("T")[1])==null?void 0:b.substring(0,5))??"",u=g=>{typeof a=="object"?s==null||s({...a,date:g}):s==null||s(`${g}T${p||"00:00"}`)},f=g=>{typeof a=="object"?s==null||s({...a,time:g}):s==null||s(`${d||""}T${g}`)},h=qt({hasError:((l==null?void 0:l.length)??0)>0,disabled:c});return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:i.jsxs("div",{className:m("flex gap-2"),children:[i.jsx("input",{type:"date",value:d,onChange:g=>u(g.target.value),disabled:c,className:`flex-1 ${h}`}),i.jsx("input",{type:"time",value:p,onChange:g=>f(g.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}=oe(e);return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,children:i.jsxs("div",{className:m("space-y-2"),children:[i.jsxs("div",{className:m("flex flex-wrap gap-2"),children:[i.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",i.jsx("button",{disabled:!0,className:m("text-blue-600"),children:"×"})]}),i.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",i.jsx("button",{disabled:!0,className:m("text-blue-600"),children:"×"})]})]}),i.jsx("input",{type:"date",disabled:!0,className:Ot()})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:l,isDisabled:c}=oe(e),d=Array.isArray(a)?a:[],p=f=>{f&&!d.includes(f)&&(s==null||s([...d,f]))},u=f=>{s==null||s(d.filter(h=>h!==f))};return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:i.jsxs("div",{className:m("space-y-2"),children:[d.length>0&&i.jsx("div",{className:m("flex flex-wrap gap-2"),children:d.map((f,h)=>i.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&&i.jsx("button",{type:"button",onClick:()=>u(f),className:m("text-blue-600 hover:text-blue-800"),children:"×"})]},h))}),i.jsx("input",{type:"date",onChange:f=>{p(f.target.value),f.target.value=""},disabled:c,className:qt({hasError:((l==null?void 0:l.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}=oe(e);return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,children:i.jsxs("div",{className:m("flex items-center gap-2"),children:[i.jsx("input",{type:"date",disabled:!0,placeholder:"Start date",className:`flex-1 ${Ot()}`}),i.jsx("span",{className:m("text-gray-400"),children:"→"}),i.jsx("input",{type:"date",disabled:!0,placeholder:"End date",className:`flex-1 ${Ot()}`})]})})},render:e=>{const{label:t,description:r,required:o,labelPosition:n,value:a,onChange:s,errors:l,isDisabled:c}=oe(e),d=(a==null?void 0:a.start)??"",p=(a==null?void 0:a.end)??"",u=b=>{s==null||s({start:b,end:p})},f=b=>{s==null||s({start:d,end:b})},h=qt({hasError:((l==null?void 0:l.length)??0)>0,disabled:c});return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:i.jsxs("div",{className:m("flex items-center gap-2"),children:[i.jsx("input",{type:"date",value:d,onChange:b=>u(b.target.value),disabled:c,placeholder:"Start date",className:`flex-1 ${h}`}),i.jsx("span",{className:m("text-gray-400"),children:"→"}),i.jsx("input",{type:"date",value:p,onChange:b=>f(b.target.value),disabled:c,min:d,placeholder:"End date",className:`flex-1 ${h}`})]})})}}],F1=[{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}=oe(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 i.jsx("div",{className:m("prose prose-sm max-w-none"),style:{textAlign:(r==null?void 0:r.textAlign)||"left"},children:i.jsx("p",{className:m("text-gray-700",n,a),children:o})})},render:e=>{const{element:t,config:r}=oe(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 i.jsx("div",{className:m("prose prose-sm max-w-none"),style:{textAlign:(r==null?void 0:r.textAlign)||"left"},children:i.jsx("p",{className:m("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}=oe(e),o=t.properties.src,n=t.properties.alt||"Image";return o?i.jsx("div",{className:m("space-y-1.5"),children:i.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}})}):i.jsxs("div",{className:m("border-2 border-dashed border-gray-300 rounded-lg p-8 text-center bg-gray-50"),children:[i.jsx("span",{className:m("text-4xl"),children:"🏞️"}),i.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"No image selected"}),i.jsx("p",{className:m("text-xs text-gray-400"),children:"Set image URL in properties"})]})},render:e=>{const{element:t,config:r}=oe(e),o=t.properties.src,n=t.properties.alt||"Image";return o?i.jsx("div",{className:m("space-y-1.5"),children:i.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:"full"},config:{linkStyle:"text"}}),renderOnCanvas:e=>{const{element:t,config:r}=oe(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"?i.jsxs("div",{className:m("space-y-1"),children:[i.jsx("a",{href:"#",onClick:a=>a.preventDefault(),className:m("inline-block px-4 py-2 bg-blue-600 text-white rounded-md text-sm hover:bg-blue-700"),children:o}),i.jsx("p",{className:m("text-xs text-gray-400"),children:n})]}):i.jsxs("div",{className:m("space-y-1"),children:[i.jsx("a",{href:"#",onClick:a=>a.preventDefault(),className:m("text-blue-600 hover:text-blue-800 underline text-sm"),children:o}),i.jsx("p",{className:m("text-xs text-gray-400"),children:n})]})},render:e=>{const{element:t,config:r}=oe(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"?i.jsx("a",{href:n,target:a,rel:a==="_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}):i.jsx("a",{href:n,target:a,rel:a==="_blank"?"noopener noreferrer":void 0,className:m("text-blue-600 hover:text-blue-800 underline text-sm transition-colors"),children:o})}}],V1=[{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}=oe(e);return i.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}=oe(e);return i.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}=oe(e),r=(t==null?void 0:t.spacerHeight)||24;return i.jsx("div",{className:m("bg-gray-100/50 border border-dashed border-gray-300 rounded flex items-center justify-center"),style:{height:r},children:i.jsxs("span",{className:m("text-xs text-gray-400"),children:["↕️ Spacer (",r,"px)"]})})},render:e=>{const{config:t}=oe(e),r=(t==null?void 0:t.spacerHeight)||24;return i.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}=oe(e);return i.jsxs("div",{className:m(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[i.jsx("h1",{className:m("text-2xl font-bold text-gray-900"),children:t}),r&&i.jsx("p",{className:m("text-gray-600 mt-1"),children:r})]})},render:e=>{const{label:t,description:r,config:o}=oe(e);return i.jsxs("div",{className:m(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[i.jsx("h1",{className:m("text-2xl font-bold text-gray-900"),children:t}),r&&i.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}=oe(e);return i.jsxs("div",{className:m(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[i.jsx("h2",{className:m("text-xl font-semibold text-gray-800"),children:t}),r&&i.jsx("p",{className:m("text-gray-500 text-sm mt-1"),children:r})]})},render:e=>{const{label:t,description:r,config:o}=oe(e);return i.jsxs("div",{className:m(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[i.jsx("h2",{className:m("text-xl font-semibold text-gray-800"),children:t}),r&&i.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}=oe(e);return i.jsxs("div",{className:m(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[i.jsx("h3",{className:m("text-lg font-medium text-gray-700"),children:t}),r&&i.jsx("p",{className:m("text-gray-500 text-sm mt-0.5"),children:r})]})},render:e=>{const{label:t,description:r,config:o}=oe(e);return i.jsxs("div",{className:m(`text-${(o==null?void 0:o.alignment)||"left"}`),children:[i.jsx("h3",{className:m("text-lg font-medium text-gray-700"),children:t}),r&&i.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:"full"},config:{buttonText:"Submit",buttonStyle:"primary",buttonSize:"medium",showIcon:!1,loadingText:"Submitting..."}}),renderOnCanvas:e=>{const{label:t,config:r}=oe(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"},l={small:"px-4 py-1.5 text-sm",medium:"px-6 py-2.5 text-base",large:"px-8 py-3 text-lg"};return i.jsxs("button",{type:"button",disabled:!0,className:m("rounded-md font-medium transition-colors",s[n],l[a]),children:[(r==null?void 0:r.showIcon)&&(r==null?void 0:r.iconPosition)==="left"&&i.jsx("span",{className:m("mr-2"),children:"🚀"}),o,(r==null?void 0:r.showIcon)&&(r==null?void 0:r.iconPosition)==="right"&&i.jsx("span",{className:m("ml-2"),children:"🚀"})]})},render:e=>{const{label:t,config:r,isDisabled:o}=oe(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",l={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 i.jsxs("button",{type:"submit",disabled:o,className:m("rounded-md font-medium transition-colors focus:outline-none focus:ring-2 focus:ring-offset-2",l[a],c[s],o&&"opacity-50 cursor-not-allowed"),children:[(r==null?void 0:r.showIcon)&&(r==null?void 0:r.iconPosition)==="left"&&i.jsx("span",{className:m("mr-2"),children:"🚀"}),n,(r==null?void 0:r.showIcon)&&(r==null?void 0:r.iconPosition)==="right"&&i.jsx("span",{className:m("ml-2"),children:"🚀"})]})}}],G1=[{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}=oe(e),s=(a==null?void 0:a.matrixRows)||[],l=(a==null?void 0:a.matrixColumns)||[];return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,children:i.jsx("div",{className:m("overflow-x-auto"),children:i.jsxs("table",{className:m("w-full border-collapse text-sm"),children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{className:m("p-2 text-left")}),l.map(c=>i.jsx("th",{className:m("p-2 text-center font-medium text-gray-700"),children:c.label},c.id))]})}),i.jsx("tbody",{children:s.map(c=>i.jsxs("tr",{className:m("border-t border-gray-200"),children:[i.jsx("td",{className:m("p-2 text-gray-700"),children:c.label}),l.map(d=>i.jsx("td",{className:m("p-2 text-center"),children:i.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:a,onChange:s,errors:l,isDisabled:c,config:d}=oe(e),p=(d==null?void 0:d.matrixRows)||[],u=(d==null?void 0:d.matrixColumns)||[],f=a||{},h=(b,g)=>{c||s==null||s({...f,[b]:g})};return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:i.jsx("div",{className:m("overflow-x-auto"),children:i.jsxs("table",{className:m("w-full border-collapse text-sm"),children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{className:m("p-2 text-left")}),u.map(b=>i.jsx("th",{className:m("p-2 text-center font-medium text-gray-700"),children:b.label},b.id))]})}),i.jsx("tbody",{children:p.map(b=>i.jsxs("tr",{className:m("border-t border-gray-200"),children:[i.jsx("td",{className:m("p-2 text-gray-700"),children:b.label}),u.map(g=>i.jsx("td",{className:m("p-2 text-center"),children:i.jsx("input",{type:"radio",name:`${e.element.id}-${b.id}`,checked:f[b.id]===g.id,onChange:()=>h(b.id,g.id),disabled:c,className:m("text-blue-600 cursor-pointer disabled:cursor-not-allowed")})},g.id))]},b.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}=oe(e),s=(a==null?void 0:a.matrixRows)||[],l=(a==null?void 0:a.matrixColumns)||[];return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,children:i.jsx("div",{className:m("overflow-x-auto"),children:i.jsxs("table",{className:m("w-full border-collapse text-sm"),children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{className:m("p-2 text-left")}),l.map(c=>i.jsx("th",{className:m("p-2 text-center font-medium text-gray-700"),children:c.label},c.id))]})}),i.jsx("tbody",{children:s.map(c=>i.jsxs("tr",{className:m("border-t border-gray-200"),children:[i.jsx("td",{className:m("p-2 text-gray-700"),children:c.label}),l.map(d=>i.jsx("td",{className:m("p-2 text-center"),children:i.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:a,onChange:s,errors:l,isDisabled:c,config:d}=oe(e),p=(d==null?void 0:d.matrixRows)||[],u=(d==null?void 0:d.matrixColumns)||[],f=a||{},h=(b,g)=>{if(c)return;const y=f[b]||[],v=y.includes(g)?y.filter(S=>S!==g):[...y,g];s==null||s({...f,[b]:v})};return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:i.jsx("div",{className:m("overflow-x-auto"),children:i.jsxs("table",{className:m("w-full border-collapse text-sm"),children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{className:m("p-2 text-left")}),u.map(b=>i.jsx("th",{className:m("p-2 text-center font-medium text-gray-700"),children:b.label},b.id))]})}),i.jsx("tbody",{children:p.map(b=>i.jsxs("tr",{className:m("border-t border-gray-200"),children:[i.jsx("td",{className:m("p-2 text-gray-700"),children:b.label}),u.map(g=>i.jsx("td",{className:m("p-2 text-center"),children:i.jsx("input",{type:"checkbox",checked:(f[b.id]||[]).includes(g.id),onChange:()=>h(b.id,g.id),disabled:c,className:m("text-blue-600 rounded cursor-pointer disabled:cursor-not-allowed")})},g.id))]},b.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}=oe(e),s=(a==null?void 0:a.matrixRows)||[],l=(a==null?void 0:a.matrixColumns)||[];return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,children:i.jsx("div",{className:m("overflow-x-auto"),children:i.jsxs("table",{className:m("w-full border-collapse text-sm border border-gray-200"),children:[i.jsx("thead",{children:i.jsxs("tr",{className:m("bg-gray-50"),children:[i.jsx("th",{className:m("p-2 text-left border border-gray-200")}),l.map(c=>i.jsx("th",{className:m("p-2 text-center font-medium text-gray-700 border border-gray-200"),children:c.label},c.id))]})}),i.jsx("tbody",{children:s.map(c=>i.jsxs("tr",{children:[i.jsx("td",{className:m("p-2 text-gray-700 border border-gray-200 bg-gray-50"),children:c.label}),l.map(d=>i.jsx("td",{className:m("p-2 border border-gray-200"),children:i.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:a,onChange:s,errors:l,isDisabled:c,config:d}=oe(e),p=(d==null?void 0:d.matrixRows)||[],u=(d==null?void 0:d.matrixColumns)||[],f=a||{},h=(b,g,y)=>{const v={...f,[b]:{...f[b]||{},[g]:y}};s==null||s(v)};return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:i.jsx("div",{className:m("overflow-x-auto"),children:i.jsxs("table",{className:m("w-full border-collapse text-sm border border-gray-200"),children:[i.jsx("thead",{children:i.jsxs("tr",{className:m("bg-gray-50"),children:[i.jsx("th",{className:m("p-2 text-left border border-gray-200")}),u.map(b=>i.jsx("th",{className:m("p-2 text-center font-medium text-gray-700 border border-gray-200"),children:b.label},b.id))]})}),i.jsx("tbody",{children:p.map(b=>i.jsxs("tr",{children:[i.jsx("td",{className:m("p-2 text-gray-700 border border-gray-200 bg-gray-50"),children:b.label}),u.map(g=>{var y;return i.jsx("td",{className:m("p-2 border border-gray-200"),children:i.jsx("input",{type:g.type==="number"?"number":"text",value:((y=f[b.id])==null?void 0:y[g.id])??"",onChange:v=>h(b.id,g.id,g.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"}`})},g.id)})]},b.id))})]})})})}}],z1=[{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}=oe(e);return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,children:i.jsxs("div",{className:m("border-2 border-dashed border-gray-300 rounded-lg p-6 text-center bg-gray-50"),children:[i.jsx("svg",{className:m("mx-auto h-8 w-8 text-gray-400"),stroke:"currentColor",fill:"none",viewBox:"0 0 48 48",children:i.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"})}),i.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"Click or drag to upload"}),i.jsxs("p",{className:m("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:l,isDisabled:c,config:d}=oe(e),p=b=>{var y;const g=(y=b.target.files)==null?void 0:y[0];g&&(s==null||s(g))},u=b=>{var y;b.preventDefault();const g=(y=b.dataTransfer.files)==null?void 0:y[0];g&&(s==null||s(g))},f=b=>{b.preventDefault()},h=a instanceof File?a.name:a==null?void 0:a.name;return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:i.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 ${((l==null?void 0:l.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:[i.jsx("input",{type:"file",accept:d==null?void 0:d.accept,onChange:p,disabled:c,className:m("hidden"),id:`file-upload-${e.element.id}`}),i.jsx("label",{htmlFor:`file-upload-${e.element.id}`,className:c?"cursor-not-allowed":"cursor-pointer",children:h?i.jsxs("div",{className:m("flex items-center justify-center gap-2"),children:[i.jsx("span",{className:m("text-2xl"),children:"📄"}),i.jsx("span",{className:m("text-sm text-gray-700"),children:h}),!c&&i.jsx("button",{type:"button",onClick:b=>{b.preventDefault(),s==null||s(null)},className:m("text-red-500 hover:text-red-700"),children:"×"})]}):i.jsxs(i.Fragment,{children:[i.jsx("svg",{className:m("mx-auto h-8 w-8 text-gray-400"),stroke:"currentColor",fill:"none",viewBox:"0 0 48 48",children:i.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"})}),i.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"Click or drag to upload"}),i.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:a}=oe(e);return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,children:i.jsxs("div",{className:m("border-2 border-dashed border-gray-300 rounded-lg p-6 text-center bg-gray-50"),children:[i.jsx("span",{className:m("text-4xl"),children:"🖼️"}),i.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"Click or drag to upload image"}),i.jsxs("p",{className:m("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:l,isDisabled:c,config:d}=oe(e),[p,u]=P.useState(null);P.useEffect(()=>{if(a instanceof File){const b=new FileReader;b.onloadend=()=>{u(b.result)},b.readAsDataURL(a)}else u(typeof a=="string"?a:null)},[a]);const f=b=>{var y;const g=(y=b.target.files)==null?void 0:y[0];g&&(s==null||s(g))},h=()=>{s==null||s(null),u(null)};return i.jsx(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:p?i.jsxs("div",{className:m("relative inline-block"),children:[i.jsx("img",{src:p,alt:"Preview",className:m("max-w-full max-h-48 rounded-lg border border-gray-200")}),!c&&i.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:"×"})]}):i.jsxs("div",{className:`border-2 border-dashed rounded-lg p-6 text-center transition-colors ${((l==null?void 0:l.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:[i.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}`}),i.jsxs("label",{htmlFor:`image-upload-${e.element.id}`,className:c?"cursor-not-allowed":"cursor-pointer",children:[i.jsx("span",{className:m("text-4xl"),children:"🖼️"}),i.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"Click or drag to upload image"}),i.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:a}=oe(e);return i.jsxs(ge,{label:t,description:r,required:o,labelPosition:n,children:[i.jsxs("div",{className:m("border-2 border-dashed border-gray-300 rounded-lg p-6 text-center bg-gray-50"),children:[i.jsx("span",{className:m("text-4xl"),children:"📁"}),i.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"Click or drag to upload files"}),i.jsxs("p",{className:m("text-xs text-gray-400"),children:["Up to ",(a==null?void 0:a.maxFiles)||10," files"]})]}),i.jsx("div",{className:m("space-y-2 mt-2"),children:i.jsxs("div",{className:m("flex items-center gap-2 p-2 bg-gray-100 rounded text-sm"),children:[i.jsx("span",{children:"📄"}),i.jsx("span",{className:m("flex-1 truncate"),children:"document.pdf"}),i.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:a,onChange:s,errors:l,isDisabled:c,config:d}=oe(e),p=Array.isArray(a)?a:[],u=(d==null?void 0:d.maxFiles)||10,f=b=>{const g=Array.from(b.target.files||[]),y=[...p,...g].slice(0,u);s==null||s(y)},h=b=>{const g=p.filter((y,v)=>v!==b);s==null||s(g)};return i.jsxs(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:[i.jsxs("div",{className:`border-2 border-dashed rounded-lg p-6 text-center transition-colors ${((l==null?void 0:l.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:[i.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}`}),i.jsxs("label",{htmlFor:`multi-file-upload-${e.element.id}`,className:c||p.length>=u?"cursor-not-allowed":"cursor-pointer",children:[i.jsx("span",{className:m("text-4xl"),children:"📁"}),i.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"Click or drag to upload files"}),i.jsxs("p",{className:m("text-xs text-gray-400"),children:[p.length," / ",u," files"]})]})]}),p.length>0&&i.jsx("div",{className:m("space-y-2 mt-2"),children:p.map((b,g)=>i.jsxs("div",{className:m("flex items-center gap-2 p-2 bg-gray-100 rounded text-sm"),children:[i.jsx("span",{children:"📄"}),i.jsx("span",{className:m("flex-1 truncate"),children:b.name}),i.jsxs("span",{className:m("text-xs text-gray-500"),children:[(b.size/1024).toFixed(1)," KB"]}),!c&&i.jsx("button",{type:"button",onClick:()=>h(g),className:m("text-gray-400 hover:text-red-500"),children:"×"})]},g))})]})}},{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}=oe(e);return i.jsxs(ge,{label:t,description:r,required:o,labelPosition:n,children:[i.jsxs("div",{className:m("border-2 border-dashed border-gray-300 rounded-lg p-6 text-center bg-gray-50"),children:[i.jsx("span",{className:m("text-4xl"),children:"🖼️"}),i.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"Click or drag to upload images"}),i.jsxs("p",{className:m("text-xs text-gray-400"),children:["Up to ",(a==null?void 0:a.maxFiles)||10," images"]})]}),i.jsx("div",{className:m("flex gap-2 flex-wrap mt-2"),children:i.jsxs("div",{className:m("w-20 h-20 bg-gray-200 rounded-lg flex items-center justify-center relative"),children:[i.jsx("span",{className:m("text-2xl"),children:"🖼️"}),i.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:a,onChange:s,errors:l,isDisabled:c,config:d}=oe(e),[p,u]=P.useState([]),f=Array.isArray(a)?a:[],h=(d==null?void 0:d.maxFiles)||10;P.useEffect(()=>{(async()=>{const v=[];for(const S of f)if(S instanceof File){const x=new FileReader,w=await new Promise(N=>{x.onloadend=()=>N(x.result),x.readAsDataURL(S)});v.push(w)}u(v)})()},[f]);const b=y=>{const v=Array.from(y.target.files||[]),S=[...f,...v].slice(0,h);s==null||s(S)},g=y=>{const v=f.filter((S,x)=>x!==y);s==null||s(v)};return i.jsxs(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:[i.jsxs("div",{className:`border-2 border-dashed rounded-lg p-6 text-center transition-colors ${((l==null?void 0:l.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:[i.jsx("input",{type:"file",accept:(d==null?void 0:d.accept)||"image/*",multiple:!0,onChange:b,disabled:c||f.length>=h,className:m("hidden"),id:`multi-image-upload-${e.element.id}`}),i.jsxs("label",{htmlFor:`multi-image-upload-${e.element.id}`,className:c||f.length>=h?"cursor-not-allowed":"cursor-pointer",children:[i.jsx("span",{className:m("text-4xl"),children:"🖼️"}),i.jsx("p",{className:m("mt-2 text-sm text-gray-500"),children:"Click or drag to upload images"}),i.jsxs("p",{className:m("text-xs text-gray-400"),children:[f.length," / ",h," images"]})]})]}),p.length>0&&i.jsx("div",{className:m("flex gap-2 flex-wrap mt-2"),children:p.map((y,v)=>i.jsxs("div",{className:m("w-20 h-20 rounded-lg overflow-hidden relative border border-gray-200"),children:[i.jsx("img",{src:y,alt:`Preview ${v+1}`,className:m("w-full h-full object-cover")}),!c&&i.jsx("button",{type:"button",onClick:()=>g(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))})]})}}],B1=[{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}=oe(e);return i.jsxs(ge,{label:t,description:r,required:n,labelPosition:a,children:[i.jsxs("div",{className:m("relative"),children:[i.jsx("input",{type:"password",placeholder:o||"••••••••",disabled:!0,className:`${Ot()} pr-10`}),(s==null?void 0:s.showToggle)&&i.jsx("button",{disabled:!0,className:m("absolute right-3 top-1/2 -translate-y-1/2 text-gray-400"),children:"👁️"})]}),(s==null?void 0:s.showStrengthMeter)&&i.jsxs("div",{className:m("flex gap-1 mt-2"),children:[i.jsx("div",{className:m("h-1 flex-1 bg-gray-300 rounded")}),i.jsx("div",{className:m("h-1 flex-1 bg-gray-300 rounded")}),i.jsx("div",{className:m("h-1 flex-1 bg-gray-300 rounded")}),i.jsx("div",{className:m("h-1 flex-1 bg-gray-300 rounded")})]})]})},render:e=>{const{label:t,description:r,placeholder:o,required:n,labelPosition:a,value:s,onChange:l,errors:c,isDisabled:d,config:p}=oe(e),[u,f]=P.useState(!1),b=(y=>{if(!y)return 0;let v=0;return y.length>=8&&v++,/[a-z]/.test(y)&&/[A-Z]/.test(y)&&v++,/\d/.test(y)&&v++,/[^a-zA-Z0-9]/.test(y)&&v++,v})(s||""),g=["bg-red-500","bg-orange-500","bg-yellow-500","bg-green-500"];return i.jsxs(ge,{label:t,description:r,required:n,labelPosition:a,errors:c,children:[i.jsxs("div",{className:m("relative"),children:[i.jsx("input",{type:u?"text":"password",placeholder:o||"••••••••",value:s??"",onChange:y=>l==null?void 0:l(y.target.value),disabled:d,className:`${qt({hasError:((c==null?void 0:c.length)??0)>0,disabled:d})} pr-10`}),(p==null?void 0:p.showToggle)&&!d&&i.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)&&s&&i.jsx("div",{className:m("flex gap-1 mt-2"),children:[0,1,2,3].map(y=>i.jsx("div",{className:`h-1 flex-1 rounded ${y<b?g[b-1]:"bg-gray-300"}`},y))})]})}},{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}=oe(e);return i.jsxs(ge,{label:t,description:r,required:o,labelPosition:n,children:[i.jsx("div",{className:m("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:i.jsxs("div",{className:m("text-center text-gray-400"),children:[i.jsx("span",{className:m("text-3xl"),children:"✍️"}),i.jsx("p",{className:m("text-sm mt-2"),children:"Draw your signature here"})]})}),i.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:a,onChange:s,errors:l,isDisabled:c,config:d}=oe(e),p=P.useRef(null),[u,f]=P.useState(!1),h=v=>{if(c)return;f(!0);const S=p.current;if(!S)return;const x=S.getContext("2d");if(!x)return;const w=S.getBoundingClientRect();x.beginPath(),x.moveTo(v.clientX-w.left,v.clientY-w.top)},b=v=>{if(!u||c)return;const S=p.current;if(!S)return;const x=S.getContext("2d");if(!x)return;const w=S.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()},g=()=>{u&&p.current&&(f(!1),s==null||s(p.current.toDataURL()))},y=()=>{const v=p.current;if(!v)return;const S=v.getContext("2d");S&&(S.fillStyle=(d==null?void 0:d.backgroundColor)||"#ffffff",S.fillRect(0,0,v.width,v.height),s==null||s(""))};return i.jsxs(ge,{label:t,description:r,required:o,labelPosition:n,errors:l,children:[i.jsx("div",{className:`border-2 rounded-lg overflow-hidden ${((l==null?void 0:l.length)??0)>0?"border-red-500":"border-gray-300"} ${c?"opacity-50":""}`,style:{backgroundColor:(d==null?void 0:d.backgroundColor)||"#ffffff"},children:i.jsx("canvas",{ref:p,width:(d==null?void 0:d.canvasWidth)||400,height:(d==null?void 0:d.canvasHeight)||200,onMouseDown:h,onMouseMove:b,onMouseUp:g,onMouseLeave:g,className:c?"cursor-not-allowed":"cursor-crosshair",style:{display:"block",width:"100%"}})}),!c&&i.jsx("button",{type:"button",onClick:y,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:"full"},config:{provider:"recaptcha",siteKey:"",theme:"light"}}),renderOnCanvas:e=>{const{description:t}=oe(e);return i.jsxs("div",{className:m("space-y-1.5"),children:[t&&i.jsx("p",{className:m("text-xs text-gray-500"),children:t}),i.jsx("div",{className:m("border border-gray-300 rounded-md p-4 bg-gray-50 max-w-[300px]"),children:i.jsxs("div",{className:m("flex items-center gap-3"),children:[i.jsx("div",{className:m("w-7 h-7 border-2 border-gray-300 rounded flex items-center justify-center"),children:"☐"}),i.jsx("span",{className:m("text-sm text-gray-700"),children:"I'm not a robot"}),i.jsx("div",{className:m("ml-auto"),children:i.jsxs("div",{className:m("text-xs text-gray-400 text-center"),children:[i.jsx("div",{className:m("text-lg"),children:"🔄"}),i.jsx("span",{children:"reCAPTCHA"})]})})]})})]})},render:e=>{const{description:t,value:r,onChange:o,errors:n,isDisabled:a,config:s}=oe(e),l=r===!0,c=()=>{a||o==null||o(!0)};return i.jsxs("div",{className:m("space-y-1.5"),children:[t&&i.jsx("p",{className:m("text-xs text-gray-500"),children:t}),i.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":l?"border-green-500 bg-green-50":"border-gray-300 bg-gray-50"}`,children:i.jsxs("div",{className:m("flex items-center gap-3"),children:[i.jsx("button",{type:"button",onClick:c,disabled:a||l,className:`w-7 h-7 border-2 rounded flex items-center justify-center transition-colors ${l?"border-green-500 bg-green-500 text-white":"border-gray-300 hover:border-gray-400"} ${a?"cursor-not-allowed opacity-50":"cursor-pointer"}`,children:l?"✓":""}),i.jsx("span",{className:m("text-sm text-gray-700"),children:l?"Verified!":"I'm not a robot"}),i.jsx("div",{className:m("ml-auto"),children:i.jsxs("div",{className:m("text-xs text-gray-400 text-center"),children:[i.jsx("div",{className:m("text-lg"),children:(s==null?void 0:s.provider)==="hcaptcha"?"🛡️":"🔄"}),i.jsx("span",{children:(s==null?void 0:s.provider)==="hcaptcha"?"hCaptcha":(s==null?void 0:s.provider)==="turnstile"?"Turnstile":"reCAPTCHA"})]})})]})}),n&&n.length>0&&i.jsx("div",{className:m("space-y-1"),children:n.map((d,p)=>i.jsx("p",{className:m("text-xs text-red-500"),children:d},p))})]})}}],U1=[{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}=oe(e),n=(o==null?void 0:o.showBorder)??!0,a=(o==null?void 0:o.collapsible)??!1;return i.jsxs("div",{className:m("rounded-lg",n?"border border-gray-200":""),style:{padding:(o==null?void 0:o.padding)||16},children:[i.jsx("div",{className:m("flex items-center justify-between mb-2"),children:i.jsxs("div",{children:[i.jsxs("h3",{className:m("font-medium text-gray-800 flex items-center gap-2"),children:[a&&i.jsx("span",{className:m("text-gray-400 text-sm"),children:"▼"}),t||"Group"]}),r&&i.jsx("p",{className:m("text-sm text-gray-500 mt-0.5"),children:r})]})}),i.jsx("div",{className:m("border-2 border-dashed border-gray-200 rounded-md p-4 min-h-[80px] flex items-center justify-center"),children:i.jsx("span",{className:m("text-sm text-gray-400"),children:"Drop elements here"})})]})},render:e=>{const{label:t,description:r,config:o,element:n}=oe(e),{renderChildren:a}=e,s=(o==null?void 0:o.showBorder)??!0,l=(o==null?void 0:o.collapsible)??!1,[c,d]=P.useState((o==null?void 0:o.collapsed)??!1);return i.jsxs("div",{className:`rounded-lg ${s?"border border-gray-200":""}`,style:{padding:(o==null?void 0:o.padding)||16},children:[i.jsx("div",{className:`flex items-center justify-between ${l?"cursor-pointer":""}`,onClick:()=>l&&d(!c),children:i.jsxs("div",{children:[i.jsxs("h3",{className:m("font-medium text-gray-800 flex items-center gap-2"),children:[l&&i.jsx("span",{className:m("text-gray-400 text-sm transition-transform",c?"-rotate-90":""),children:"▼"}),t||"Group"]}),r&&!c&&i.jsx("p",{className:m("text-sm text-gray-500 mt-0.5"),children:r})]})}),!c&&i.jsx("div",{className:m("mt-3"),children:a?a(n.id):i.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}=oe(e),o=(r==null?void 0:r.gridColumns)||2,n=(r==null?void 0:r.gridGap)||16;return i.jsxs("div",{className:m("border border-gray-200 rounded-lg p-4"),children:[t&&i.jsx("div",{className:m("mb-3"),children:i.jsx("h3",{className:m("font-medium text-gray-800"),children:t})}),i.jsx("div",{className:m("grid"),style:{gridTemplateColumns:`repeat(${o}, 1fr)`,gap:n},children:Array.from({length:o}).map((a,s)=>i.jsx("div",{className:m("border-2 border-dashed border-gray-200 rounded-md p-4 min-h-[60px] flex items-center justify-center"),children:i.jsxs("span",{className:m("text-xs text-gray-400"),children:["Column ",s+1]})},s))})]})},render:e=>{const{label:t,config:r,element:o}=oe(e),{renderChildren:n}=e,a=(r==null?void 0:r.gridColumns)||2,s=(r==null?void 0:r.gridGap)||16;return i.jsxs("div",{children:[t&&i.jsx("div",{className:m("mb-3"),children:i.jsx("h3",{className:m("font-medium text-gray-800"),children:t})}),i.jsx("div",{className:m("grid"),style:{gridTemplateColumns:`repeat(${a}, 1fr)`,gap:s},children:n?n(o.id):i.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}=oe(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,l=(o==null?void 0:o.bordered)??!0;return i.jsxs("div",{className:m("space-y-2"),children:[t&&i.jsxs("div",{children:[i.jsx("h3",{className:m("font-medium text-gray-800"),children:t}),r&&i.jsx("p",{className:m("text-sm text-gray-500"),children:r})]}),i.jsx("div",{className:`overflow-hidden rounded-lg ${l?"border border-gray-200":""}`,children:i.jsxs("table",{className:m("min-w-full divide-y divide-gray-200"),children:[a&&i.jsx("thead",{className:m("bg-gray-50"),children:i.jsx("tr",{children:n.map(c=>i.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))})}),i.jsx("tbody",{className:`bg-white ${s?"divide-y divide-gray-200":""}`,children:[1,2].map((c,d)=>i.jsx("tr",{className:s&&d%2===1?"bg-gray-50":"",children:n.map(p=>i.jsx("td",{className:`px-4 py-3 text-sm text-gray-500 text-${p.align||"left"}`,children:i.jsx("span",{className:m("text-gray-300"),children:"Sample data"})},p.id))},c))})]})}),i.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=[]}=oe(e),a=(o==null?void 0:o.tableColumns)||[],s=(o==null?void 0:o.showHeader)??!0,l=(o==null?void 0:o.striped)??!0,c=(o==null?void 0:o.bordered)??!0,d=Array.isArray(n)?n:[];return i.jsxs("div",{className:m("space-y-2"),children:[t&&i.jsxs("div",{children:[i.jsx("h3",{className:m("font-medium text-gray-800"),children:t}),r&&i.jsx("p",{className:m("text-sm text-gray-500"),children:r})]}),i.jsx("div",{className:`overflow-x-auto rounded-lg ${c?"border border-gray-200":""}`,children:i.jsxs("table",{className:m("min-w-full divide-y divide-gray-200"),children:[s&&i.jsx("thead",{className:m("bg-gray-50"),children:i.jsx("tr",{children:a.map(p=>i.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))})}),i.jsx("tbody",{className:`bg-white ${l?"divide-y divide-gray-200":""}`,children:d.length===0?i.jsx("tr",{children:i.jsx("td",{colSpan:a.length,className:m("px-4 py-8 text-sm text-gray-400 text-center"),children:"No data available"})}):d.map((p,u)=>i.jsx("tr",{className:l&&u%2===1?"bg-gray-50":"",children:a.map(f=>i.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 l,c;const{config:t}=oe(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)||((l=r[0])==null?void 0:l.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 i.jsxs("div",{className:m("border border-gray-200 rounded-lg p-4 bg-white"),children:[a&&i.jsxs("div",{className:m("mb-6"),children:[i.jsx("div",{className:m("h-2 bg-gray-200 rounded-full overflow-hidden"),children:i.jsx("div",{className:m("h-full bg-blue-600 transition-all duration-300"),style:{width:`${(n+1)/r.length*100}%`}})}),s&&i.jsx("div",{className:m("flex justify-between mt-3"),children:r.map((d,p)=>{const u=p<n,f=p===n;return i.jsxs("div",{className:m("flex flex-col items-center"),children:[i.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}),i.jsx("span",{className:`text-xs mt-1 ${f?"text-blue-600 font-medium":"text-gray-500"}`,children:d.label})]},d.id)})})]}),i.jsx("div",{className:m("border-2 border-dashed border-gray-200 rounded-lg p-6 min-h-[150px] flex items-center justify-center"),children:i.jsxs("div",{className:m("text-center"),children:[i.jsxs("span",{className:m("text-gray-400 text-sm"),children:["Step ",n+1,":"," ",(c=r[n])==null?void 0:c.label]}),i.jsx("p",{className:m("text-gray-300 text-xs mt-1"),children:"Drop elements here for this step"})]})}),i.jsxs("div",{className:m("flex justify-between mt-4 pt-4 border-t border-gray-200"),children:[i.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"}),i.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}=oe(e),o=(t==null?void 0:t.steps)||[];return i.jsx("div",{"data-wizard-id":r.id,"data-wizard-steps":o.length})}}],W1=[{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}=oe(e),s=(a==null?void 0:a.minItems)||1,l=(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 i.jsxs("div",{className:m("space-y-3"),children:[i.jsxs("div",{children:[i.jsxs("label",{className:m("block text-sm font-medium text-gray-700"),children:[t||"Repeatable Field",n&&i.jsx("span",{className:m("text-red-500 ml-1"),children:"*"})]}),r&&i.jsx("p",{className:m("text-xs text-gray-500 mt-0.5"),children:r})]}),i.jsx("div",{className:m("space-y-2"),children:Array.from({length:Math.min(2,s)}).map((p,u)=>i.jsxs("div",{className:m("flex items-center gap-2"),children:[d&&i.jsxs("span",{className:m("text-xs text-gray-400 w-4"),children:[u+1,"."]}),i.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")}),i.jsx("button",{type:"button",disabled:!0,className:m("p-2 text-gray-400 hover:text-red-500 disabled:opacity-50"),children:"✕"})]},u))}),i.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:[i.jsx("span",{children:"+"}),i.jsx("span",{children:c})]}),i.jsxs("p",{className:m("text-xs text-gray-400"),children:["Min: ",s," | Max: ",l," items"]})]})},render:e=>{const{label:t,description:r,placeholder:o,required:n,config:a,value:s=[],onChange:l,errors:c,isDisabled:d}=oe(e),p=(a==null?void 0:a.minItems)||1,u=(a==null?void 0:a.maxItems)||10,f=(a==null?void 0:a.addButtonText)||"Add Item",h=(a==null?void 0:a.showItemNumber)??!0,b=Array.isArray(s)?s:[""],g=b.length<u,y=b.length>p,v=()=>{g&&l&&l([...b,""])},S=N=>{if(y&&l){const k=b.filter((_,E)=>E!==N);l(k)}},x=(N,k)=>{if(l){const _=[...b];_[N]=k,l(_)}},w=c&&c.length>0;return i.jsxs("div",{className:m("space-y-3"),children:[i.jsxs("div",{children:[i.jsxs("label",{className:m("block text-sm font-medium text-gray-700"),children:[t||"Repeatable Field",n&&i.jsx("span",{className:m("text-red-500 ml-1"),children:"*"})]}),r&&i.jsx("p",{className:m("text-xs text-gray-500 mt-0.5"),children:r})]}),i.jsx("div",{className:m("space-y-2"),children:b.map((N,k)=>i.jsxs("div",{className:m("flex items-center gap-2"),children:[h&&i.jsxs("span",{className:m("text-xs text-gray-400 w-4"),children:[k+1,"."]}),i.jsx("input",{type:"text",value:N,onChange:_=>x(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":""}`}),i.jsx("button",{type:"button",onClick:()=>S(k),disabled:!y||d,className:`p-2 transition-colors ${y&&!d?"text-gray-400 hover:text-red-500":"text-gray-300 cursor-not-allowed"}`,children:"✕"})]},k))}),g&&!d&&i.jsxs("button",{type:"button",onClick:v,className:m("flex items-center gap-1 text-sm text-blue-600 hover:text-blue-700"),children:[i.jsx("span",{children:"+"}),i.jsx("span",{children:f})]}),c&&c.length>0&&i.jsx("div",{className:m("space-y-1"),children:c.map((N,k)=>i.jsx("p",{className:m("text-xs text-red-500"),children:N},k))})]})}},{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}=oe(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",l=(o==null?void 0:o.itemLabel)||"Entry",c=(o==null?void 0:o.showItemNumber)??!0;return i.jsxs("div",{className:m("border border-gray-200 rounded-lg p-4 space-y-4"),children:[i.jsxs("div",{className:m("flex items-center justify-between"),children:[i.jsxs("div",{children:[i.jsxs("h3",{className:m("font-medium text-gray-800 flex items-center gap-2"),children:[i.jsx("span",{className:m("text-lg"),children:"📚"}),t||"Repeatable Section"]}),r&&i.jsx("p",{className:m("text-sm text-gray-500 mt-0.5"),children:r})]}),i.jsxs("span",{className:m("text-xs text-gray-400 bg-gray-100 px-2 py-1 rounded"),children:[n,"-",a," items"]})]}),i.jsxs("div",{className:m("border border-dashed border-gray-300 rounded-lg"),children:[i.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:[i.jsxs("span",{className:m("text-sm font-medium text-gray-600"),children:[c&&"1. ",l]}),i.jsxs("div",{className:m("flex items-center gap-2"),children:[i.jsx("button",{type:"button",disabled:!0,className:m("text-gray-400 hover:text-gray-600 text-sm"),children:"▲"}),i.jsx("button",{type:"button",disabled:!0,className:m("text-gray-400 hover:text-gray-600 text-sm"),children:"▼"}),i.jsx("button",{type:"button",disabled:!0,className:m("text-gray-400 hover:text-red-500 text-sm"),children:"✕"})]})]}),i.jsx("div",{className:m("p-4 min-h-[80px] flex items-center justify-center"),children:i.jsx("span",{className:m("text-sm text-gray-400"),children:"Drop elements here to define the repeatable group structure"})})]}),i.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:[i.jsx("span",{children:"+"}),i.jsx("span",{children:s})]})]})},render:e=>{const{label:t,description:r,config:o,element:n,value:a=[],onChange:s,errors:l,isDisabled:c}=oe(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",b=(o==null?void 0:o.itemLabel)||"Entry",g=(o==null?void 0:o.showItemNumber)??!0,y=Array.isArray(a)?a:Array.from({length:p},()=>({})),v=y.length<u,S=y.length>p,x=()=>{v&&s&&s([...y,{}])},w=E=>{if(S&&s){const D=y.filter((T,O)=>O!==E);s(D)}},N=E=>{if(E>0&&s){const D=[...y];[D[E-1],D[E]]=[D[E],D[E-1]],s(D)}},k=E=>{if(E<y.length-1&&s){const D=[...y];[D[E],D[E+1]]=[D[E+1],D[E]],s(D)}},_=l&&l.length>0;return i.jsxs("div",{className:`border rounded-lg p-4 space-y-4 ${_?"border-red-300":"border-gray-200"}`,children:[i.jsxs("div",{className:m("flex items-center justify-between"),children:[i.jsxs("div",{children:[i.jsx("h3",{className:m("font-medium text-gray-800"),children:t||"Repeatable Section"}),r&&i.jsx("p",{className:m("text-sm text-gray-500 mt-0.5"),children:r})]}),i.jsxs("span",{className:m("text-xs text-gray-400"),children:[y.length," of ",u]})]}),i.jsx("div",{className:m("space-y-3"),children:y.map((E,D)=>{var T;return i.jsxs("div",{className:m("border border-gray-200 rounded-lg overflow-hidden"),children:[i.jsxs("div",{className:m("flex items-center justify-between px-4 py-2 bg-gray-50 border-b border-gray-200"),children:[i.jsxs("span",{className:m("text-sm font-medium text-gray-600"),children:[g&&`${D+1}. `,b]}),!c&&i.jsxs("div",{className:m("flex items-center gap-1"),children:[i.jsx("button",{type:"button",onClick:()=>N(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:"▲"}),i.jsx("button",{type:"button",onClick:()=>k(D),disabled:D===y.length-1,className:`p-1 rounded transition-colors ${D===y.length-1?"text-gray-300 cursor-not-allowed":"text-gray-400 hover:text-gray-600 hover:bg-gray-100"}`,title:"Move down",children:"▼"}),i.jsx("button",{type:"button",onClick:()=>w(D),disabled:!S,className:`p-1 rounded transition-colors ${S?"text-gray-400 hover:text-red-500 hover:bg-red-50":"text-gray-300 cursor-not-allowed"}`,title:h,children:"✕"})]})]}),i.jsx("div",{className:m("p-4"),children:d?d(n.id,`${((T=n.attributes)==null?void 0:T.name)||n.id}[${D}]`):i.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&&i.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:[i.jsx("span",{children:"+"}),i.jsx("span",{children:f})]}),l&&l.length>0&&i.jsx("div",{className:m("space-y-1"),children:l.map((E,D)=>i.jsx("p",{className:m("text-xs text-red-500"),children:E},D))})]})}}],Sh=[...Bx,...Ux,...Wx,...I1,...L1,...F1,...V1,...G1,...z1,...B1,...U1,...W1];function H1(){for(const e of Sh)vt.register(e)}const j1=["shortText","longText","multiLineInput","textEditor"],q1=["number","slider","rangeSlider"],Y1=["email","phone","url","location"],Q1=["password","signature","captcha"],K1=["singleChoice","multipleChoice","dropdown","tags","decisionBox","toggleSwitch"],R1=["singleChoiceMatrix","multipleChoiceMatrix","matrixTable"],X1=["date","time","dateTime","multipleDates","dateRange"],J1=["fileUpload","imageUpload","multiFileUpload","multiImageUpload"],Z1=["paragraph","image","link"],eE=[...j1,...q1,...Y1,...Q1,...K1,...R1,...X1,...J1,...Z1],bc={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"},gc={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 tE(e){return eE.includes(e)}const rE=["singleChoice","multipleChoice","dropdown","tags"],oE=["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"],nE=["singleChoiceMatrix","multipleChoiceMatrix","matrixTable"];function aE(e){return rE.includes(e)}function sE(e){return oE.includes(e)}function lE(e){return nE.includes(e)}const Ms=({element:e,isSelected:t=!1})=>{const r=vt.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 i.jsx(i.Fragment,{children:r.renderOnCanvas(o)})}catch(n){return console.error(`Error rendering element "${e.type}" on canvas:`,n),i.jsx(Os,{element:e,error:n})}return i.jsx(Os,{element:e})},Nh=({element:e,value:t,onChange:r,errors:o=[],formValues:n={},readOnly:a=!1,disabled:s=!1})=>{const l=vt.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(l&&l.render)try{return i.jsx(i.Fragment,{children:l.render(c)})}catch(d){return console.error(`Error rendering element "${e.type}":`,d),i.jsx(Os,{element:e,error:d})}return i.jsx(Os,{element:e})},Os=({element:e,error:t})=>{const r=gc[e.type]||"❓",o=bc[e.type]||e.type;return t?i.jsxs("div",{className:m("p-4 bg-red-50 border border-red-200 rounded text-red-600 text-sm"),children:[i.jsxs("div",{className:m("flex items-center gap-2"),children:[i.jsx("span",{children:"⚠️"}),i.jsxs("span",{children:["Error rendering: ",o]})]}),i.jsx("p",{className:m("text-xs mt-1 text-red-500"),children:t instanceof Error?t.message:"Unknown error"})]}):i.jsxs("div",{className:m("p-4 bg-gray-100 rounded text-gray-600 text-sm"),children:[i.jsxs("div",{className:m("flex items-center gap-2"),children:[i.jsx("span",{children:r}),i.jsx("span",{children:o})]}),i.jsx("p",{className:m("text-xs mt-1 text-gray-400"),children:"Element type not registered in the element registry"})]})};function iE(e){return vt.has(e)}function Eh(e){const t=vt.get(e);return t?t.icon:gc[e]}function yc(e){const t=vt.get(e);return t?t.label:bc[e]||e}function cE(e,t){return i.jsx(Ms,{element:e,isSelected:t})}function dE(e,t,r,o,n){return i.jsx(Nh,{element:e,value:t,onChange:r,errors:o,formValues:n})}const fr=C.forwardRef(({className:e,type:t,...r},o)=>i.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}));fr.displayName="Input";const kh=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,Ah=Qu,Is=(e,t)=>r=>{var o;if((t==null?void 0:t.variants)==null)return Ah(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 p=r==null?void 0:r[d],u=a==null?void 0:a[d];if(p===null)return null;const f=kh(p)||kh(u);return n[d][f]}),l=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(b=>{let[g,y]=b;return Array.isArray(y)?y.includes({...a,...l}[g]):{...a,...l}[g]===y})?[...d,u,f]:d},[]);return Ah(e,s,c,r==null?void 0:r.class,r==null?void 0:r.className)},uE=Is("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 i.jsx("div",{className:m(uE({variant:t}),e),...r})}var fE=Object.defineProperty,wc=(e,t)=>fE(e,"name",{value:t,configurable:!0}),xc=!1;function _h(){const[e,t]=C.useState(xc);return C.useEffect(()=>{xc||(xc=!0,t(!0))},[]),e}wc(_h,"useIsHydrated");var Th=C[" useSyncExternalStore ".trim().toString()];function Dh(){return()=>{}}wc(Dh,"subscribe");function $h(){return Th(Dh,()=>!0,()=>!1)}wc($h,"useIsHydratedModern");var pE=typeof Th=="function"?$h:_h,hE=Object.defineProperty,Ho=(e,t)=>hE(e,"name",{value:t,configurable:!0}),Cc="rovingFocusGroup.onEntryFocus",mE={bubbles:!1,cancelable:!0},Ls="RovingFocusGroup",[Sc,Ph,bE]=ns(Ls),[gE,Mh]=ur(Ls,[bE]),[yE,vE]=gE(Ls),wE=C.forwardRef(Ho(function(t,r){return i.jsx(Sc.Provider,{scope:t.__scopeRovingFocusGroup,children:i.jsx(Sc.Slot,{scope:t.__scopeRovingFocusGroup,children:i.jsx(xE,{...t,ref:r})})})},"RovingFocusGroup")),xE=C.forwardRef(Ho(function(t,r){const{__scopeRovingFocusGroup:o,orientation:n,loop:a=!1,dir:s,currentTabStopId:l,defaultCurrentTabStopId:c,onCurrentTabStopIdChange:d,onEntryFocus:p,preventScrollOnEntryFocus:u=!1,...f}=t,h=C.useRef(null),b=Re(r,h),g=Gn(s),[y,v]=Cr({prop:l,defaultProp:c??null,onChange:d,caller:Ls}),[S,x]=C.useState(!1),w=wr(p),N=Ph(o),k=C.useRef(!1),[_,E]=C.useState(0);return C.useEffect(()=>{const D=h.current;if(D)return D.addEventListener(Cc,w),()=>D.removeEventListener(Cc,w)},[w]),i.jsx(yE,{scope:o,orientation:n,dir:g,loop:a,currentTabStopId:y,onItemFocus:C.useCallback(D=>v(D),[v]),onItemShiftTab:C.useCallback(()=>x(!0),[]),onFocusableItemAdd:C.useCallback(()=>E(D=>D+1),[]),onFocusableItemRemove:C.useCallback(()=>E(D=>D-1),[]),children:i.jsx(Be.div,{tabIndex:S||_===0?-1:0,"data-orientation":n,...f,ref:b,style:{outline:"none",...t.style},onMouseDown:Pe(t.onMouseDown,()=>{k.current=!0}),onFocus:Pe(t.onFocus,D=>{const T=!k.current;if(D.target===D.currentTarget&&T&&!S){const O=new CustomEvent(Cc,mE);if(D.currentTarget.dispatchEvent(O),!O.defaultPrevented){const $=N().filter(Y=>Y.focusable),V=$.find(Y=>Y.active),G=$.find(Y=>Y.id===y),H=[V,G,...$].filter(Boolean).map(Y=>Y.ref.current);Nc(H,u)}}k.current=!1}),onBlur:Pe(t.onBlur,()=>x(!1))})})},"RovingFocusGroupImpl")),CE="RovingFocusGroupItem",SE=C.forwardRef(Ho(function(t,r){const{__scopeRovingFocusGroup:o,focusable:n=!0,active:a=!1,tabStopId:s,children:l,...c}=t,d=xr(),p=s||d,u=vE(CE,o),f=u.currentTabStopId===p,h=Ph(o),{onFocusableItemAdd:b,onFocusableItemRemove:g,currentTabStopId:y}=u,v=pE();return ut(()=>{if(!(!v||!n))return b(),()=>g()},[v,n,b,g]),C.useEffect(()=>{if(!(v||!n))return b(),()=>g()},[v,n,b,g]),i.jsx(Sc.ItemSlot,{scope:o,id:p,focusable:n,active:a,children:i.jsx(Be.span,{tabIndex:f?0:-1,"data-orientation":u.orientation,...c,ref:r,onMouseDown:Pe(t.onMouseDown,S=>{n?u.onItemFocus(p):S.preventDefault()}),onFocus:Pe(t.onFocus,()=>u.onItemFocus(p)),onKeyDown:Pe(t.onKeyDown,S=>{if(S.key==="Tab"&&S.shiftKey){u.onItemShiftTab();return}if(S.target!==S.currentTarget)return;const x=Ih(S,u.orientation,u.dir);if(x!==void 0){if(S.metaKey||S.ctrlKey||S.altKey||S.shiftKey)return;S.preventDefault();let N=h().filter(k=>k.focusable).map(k=>k.ref.current);if(x==="last")N.reverse();else if(x==="prev"||x==="next"){x==="prev"&&N.reverse();const k=N.indexOf(S.currentTarget);N=u.loop?Lh(N,k+1):N.slice(k+1)}setTimeout(()=>Nc(N))}}),children:typeof l=="function"?l({isCurrentTabStop:f,hasTabStop:y!=null}):l})})},"RovingFocusGroupItem")),NE={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function Oh(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}Ho(Oh,"getDirectionAwareKey");function Ih(e,t,r){const o=Oh(e.key,r);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(o))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(o)))return NE[o]}Ho(Ih,"getFocusIntent");function Nc(e,t=!1){const r=document.activeElement;for(const o of e)if(o===r||(o.focus({preventScroll:t}),document.activeElement!==r))return}Ho(Nc,"focusFirst");function Lh(e,t){return e.map((r,o)=>e[(t+o)%e.length])}Ho(Lh,"wrapArray");var EE=wE,kE=SE,AE=Object.defineProperty,wn=(e,t)=>AE(e,"name",{value:t,configurable:!0}),Ec="Tabs",[_E,EM]=ur(Ec,[Mh]),Fh=Mh(),[TE,kc]=_E(Ec),DE=C.forwardRef(wn(function(t,r){const{__scopeTabs:o,value:n,onValueChange:a,defaultValue:s,orientation:l="horizontal",dir:c,activationMode:d="automatic",...p}=t,u=Gn(c),[f,h]=Cr({prop:n,onChange:a,defaultProp:s??"",caller:Ec});return i.jsx(TE,{scope:o,baseId:xr(),value:f,onValueChange:h,orientation:l,dir:u,activationMode:d,children:i.jsx(Be.div,{dir:u,"data-orientation":l,...p,ref:r})})},"Tabs")),$E="TabsList",PE=C.forwardRef(wn(function(t,r){const{__scopeTabs:o,loop:n=!0,...a}=t,s=kc($E,o),l=Fh(o);return i.jsx(EE,{asChild:!0,...l,orientation:s.orientation,dir:s.dir,loop:n,children:i.jsx(Be.div,{role:"tablist","aria-orientation":s.orientation,...a,ref:r})})},"TabsList")),ME="TabsTrigger",OE=C.forwardRef(wn(function(t,r){const{__scopeTabs:o,value:n,disabled:a=!1,...s}=t,l=kc(ME,o),c=Fh(o),d=Ac(l.baseId,n),p=_c(l.baseId,n),u=n===l.value;return i.jsx(kE,{asChild:!0,...c,focusable:!a,active:u,children:i.jsx(Be.button,{type:"button",role:"tab","aria-selected":u,"aria-controls":p,"data-state":u?"active":"inactive","data-disabled":a?"":void 0,disabled:a,id:d,...s,ref:r,onMouseDown:Pe(t.onMouseDown,f=>{!a&&f.button===0&&f.ctrlKey===!1?l.onValueChange(n):f.preventDefault()}),onKeyDown:Pe(t.onKeyDown,f=>{a||f.target!==f.currentTarget||[" ","Enter"].includes(f.key)&&l.onValueChange(n)}),onFocus:Pe(t.onFocus,()=>{const f=l.activationMode!=="manual";!u&&!a&&f&&l.onValueChange(n)})})})},"TabsTrigger")),IE="TabsContent",LE=C.forwardRef(wn(function(t,r){const{__scopeTabs:o,value:n,forceMount:a,children:s,...l}=t,c=kc(IE,o),d=Ac(c.baseId,n),p=_c(c.baseId,n),u=n===c.value,f=C.useRef(u);return C.useEffect(()=>{const h=requestAnimationFrame(()=>f.current=!1);return()=>cancelAnimationFrame(h)},[]),i.jsx(ro,{present:a||u,children:({present:h})=>i.jsx(Be.div,{"data-state":u?"active":"inactive","data-orientation":c.orientation,role:"tabpanel","aria-labelledby":d,hidden:!h,id:p,tabIndex:0,...l,ref:r,style:{...t.style,animationDuration:f.current?"0s":void 0},children:h&&s})})},"TabsContent"));function Ac(e,t){return`${e}-trigger-${t}`}wn(Ac,"makeTriggerId");function _c(e,t){return`${e}-content-${t}`}wn(_c,"makeContentId");var FE=DE,Vh=PE,Gh=OE,zh=LE;const Bh=FE,Tc=C.forwardRef(({className:e,...t},r)=>i.jsx(Vh,{ref:r,className:m("inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",e),...t}));Tc.displayName=Vh.displayName;const Qn=C.forwardRef(({className:e,...t},r)=>i.jsx(Gh,{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}));Qn.displayName=Gh.displayName;const Kn=C.forwardRef(({className:e,...t},r)=>i.jsx(zh,{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}));Kn.displayName=zh.displayName;var VE=Object.defineProperty,Rn=(e,t)=>VE(e,"name",{value:t,configurable:!0}),Dc="Collapsible",[GE,Uh]=ur(Dc),[zE,$c]=GE(Dc),BE=C.forwardRef(Rn(function(t,r){const{__scopeCollapsible:o,open:n,defaultOpen:a,disabled:s,onOpenChange:l,...c}=t,[d,p]=Cr({prop:n,defaultProp:a??!1,onChange:l,caller:Dc});return i.jsx(zE,{scope:o,disabled:s,contentId:xr(),open:d,onOpenToggle:C.useCallback(()=>p(u=>!u),[p]),children:i.jsx(Be.div,{"data-state":Fs(d),"data-disabled":s?"":void 0,...c,ref:r})})},"Collapsible")),UE="CollapsibleTrigger",Wh=C.forwardRef(Rn(function(t,r){const{__scopeCollapsible:o,...n}=t,a=$c(UE,o);return i.jsx(Be.button,{type:"button","aria-controls":a.open?a.contentId:void 0,"aria-expanded":a.open||!1,"data-state":Fs(a.open),"data-disabled":a.disabled?"":void 0,disabled:a.disabled,...n,ref:r,onClick:Pe(t.onClick,a.onOpenToggle)})},"CollapsibleTrigger")),Hh="CollapsibleContent",jh=C.forwardRef(Rn(function(t,r){const{forceMount:o,...n}=t,a=$c(Hh,t.__scopeCollapsible);return i.jsx(ro,{present:o||a.open,children:({present:s})=>i.jsx(WE,{...n,ref:r,present:s})})},"CollapsibleContent")),WE=C.forwardRef(Rn(function(t,r){const{__scopeCollapsible:o,present:n,children:a,...s}=t,l=$c(Hh,o),[c,d]=C.useState(n),p=C.useRef(null),u=Re(r,p),f=C.useRef(0),h=f.current,b=C.useRef(0),g=b.current,y=l.open||c,v=C.useRef(y),S=C.useRef(void 0);return C.useEffect(()=>{const x=requestAnimationFrame(()=>v.current=!1);return()=>cancelAnimationFrame(x)},[]),ut(()=>{const x=p.current;if(x){S.current=S.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,b.current=w.width,v.current||(x.style.transitionDuration=S.current.transitionDuration,x.style.animationName=S.current.animationName),d(n)}},[l.open,n]),i.jsx(Be.div,{"data-state":Fs(l.open),"data-disabled":l.disabled?"":void 0,id:l.contentId,hidden:!y,...s,ref:u,style:{"--radix-collapsible-content-height":h?`${h}px`:void 0,"--radix-collapsible-content-width":g?`${g}px`:void 0,...t.style},children:y&&a})},"CollapsibleContentImpl"));function Fs(e){return e?"open":"closed"}Rn(Fs,"getState");var qh=BE,HE=Wh,jE=jh;const Yh=qh,Qh=Wh,Kh=jh,qE=Is("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"}}),st=C.forwardRef(({className:e,variant:t,size:r,asChild:o=!1,...n},a)=>{const s=o?Jx:"button";return i.jsx(s,{className:m(qE({variant:t,size:r,className:e})),ref:a,...n})});st.displayName="Button";var YE=Object.defineProperty,$t=(e,t)=>YE(e,"name",{value:t,configurable:!0}),[Pc,kM]=ur("Tooltip",[vs]),Mc=vs(),QE="TooltipProvider",KE=700,Oc="tooltip.open",[RE,Ic]=Pc(QE),XE=$t(e=>{const{__scopeTooltip:t,delayDuration:r=KE,skipDelayDuration:o=300,disableHoverableContent:n=!1,children:a}=e,s=C.useRef(!0),l=C.useRef(!1),c=C.useRef(0);return C.useEffect(()=>{const d=c.current;return()=>window.clearTimeout(d)},[]),i.jsx(RE,{scope:t,isOpenDelayedRef:s,delayDuration:r,onOpen:C.useCallback(()=>{o<=0||(window.clearTimeout(c.current),s.current=!1)},[o]),onClose:C.useCallback(()=>{o<=0||(window.clearTimeout(c.current),c.current=window.setTimeout(()=>s.current=!0,o))},[o]),isPointerInTransitRef:l,onPointerInTransitChange:C.useCallback(d=>{l.current=d},[]),disableHoverableContent:n,children:a})},"TooltipProvider"),Lc="Tooltip",[JE,Xn]=Pc(Lc),ZE=$t(e=>{const{__scopeTooltip:t,children:r,open:o,defaultOpen:n,onOpenChange:a,disableHoverableContent:s,delayDuration:l}=e,c=Ic(Lc,e.__scopeTooltip),d=Mc(t),[p,u]=C.useState(null),[f,h]=C.useState(void 0),b=xr(),g=C.useRef(0),y=s??c.disableHoverableContent,v=l??c.delayDuration,S=C.useRef(!1),[x,w]=Cr({prop:o,defaultProp:n??!1,onChange:$t(T=>{T?(c.onOpen(),document.dispatchEvent(new CustomEvent(Oc))):c.onClose(),a==null||a(T)},"onChange"),caller:Lc}),N=C.useMemo(()=>x?S.current?"delayed-open":"instant-open":"closed",[x]),k=C.useCallback(()=>{window.clearTimeout(g.current),g.current=0,S.current=!1,w(!0)},[w]),_=C.useCallback(()=>{window.clearTimeout(g.current),g.current=0,w(!1)},[w]),E=C.useCallback(()=>{window.clearTimeout(g.current),g.current=window.setTimeout(()=>{S.current=!0,w(!0),g.current=0},v)},[v,w]);C.useEffect(()=>()=>{g.current&&(window.clearTimeout(g.current),g.current=0)},[]);const D=f??b;return i.jsx(Cp,{...d,children:i.jsx(JE,{scope:t,contentId:D,setContentId:h,open:x,stateAttribute:N,trigger:p,onTriggerChange:u,onTriggerEnter:C.useCallback(()=>{c.isOpenDelayedRef.current?E():k()},[c.isOpenDelayedRef,E,k]),onTriggerLeave:C.useCallback(()=>{y?_():(window.clearTimeout(g.current),g.current=0)},[_,y]),onOpen:k,onClose:_,disableHoverableContent:y,children:r})})},"Tooltip"),Rh="TooltipTrigger",ek=C.forwardRef($t(function(t,r){const{__scopeTooltip:o,...n}=t,a=Xn(Rh,o),s=Ic(Rh,o),l=Mc(o),c=C.useRef(null),d=Re(r,c,a.onTriggerChange),p=C.useRef(!1),u=C.useRef(!1),f=C.useCallback(()=>p.current=!1,[]);return C.useEffect(()=>()=>document.removeEventListener("pointerup",f),[f]),i.jsx(Sp,{asChild:!0,...l,children:i.jsx(Be.button,{"aria-describedby":a.open?a.contentId:void 0,"data-state":a.stateAttribute,...n,ref:d,onPointerMove:Pe(t.onPointerMove,h=>{h.pointerType!=="touch"&&!u.current&&!s.isPointerInTransitRef.current&&(a.onTriggerEnter(),u.current=!0)}),onPointerLeave:Pe(t.onPointerLeave,()=>{a.onTriggerLeave(),u.current=!1}),onPointerDown:Pe(t.onPointerDown,()=>{a.open&&a.onClose(),p.current=!0,document.addEventListener("pointerup",f,{once:!0})}),onFocus:Pe(t.onFocus,()=>{p.current||a.onOpen()}),onBlur:Pe(t.onBlur,a.onClose),onClick:Pe(t.onClick,a.onClose)})})},"TooltipTrigger")),Xh="TooltipPortal",[tk,rk]=Pc(Xh,{forceMount:void 0}),ok=$t(e=>{const{__scopeTooltip:t,forceMount:r,children:o,container:n}=e,a=Xn(Xh,t);return i.jsx(tk,{scope:t,forceMount:r,children:i.jsx(ro,{present:r||a.open,children:i.jsx(tc,{asChild:!0,container:n,children:o})})})},"TooltipPortal"),Jn="TooltipContent",nk=C.forwardRef($t(function(t,r){const o=rk(Jn,t.__scopeTooltip),{forceMount:n=o.forceMount,side:a="top",...s}=t,l=Xn(Jn,t.__scopeTooltip);return i.jsx(ro,{present:n||l.open,children:l.disableHoverableContent?i.jsx(Jh,{side:a,...s,ref:r}):i.jsx(ak,{side:a,...s,ref:r})})},"TooltipContent")),ak=C.forwardRef($t(function(t,r){const o=Xn(Jn,t.__scopeTooltip),n=Ic(Jn,t.__scopeTooltip),a=C.useRef(null),s=Re(r,a),[l,c]=C.useState(null),{trigger:d,onClose:p}=o,u=a.current,{onPointerInTransitChange:f}=n,h=C.useCallback(()=>{c(null),f(!1)},[f]),b=C.useCallback((g,y)=>{const v=g.currentTarget,S={x:g.clientX,y:g.clientY},x=Zh(S,v.getBoundingClientRect()),w=em(S,x),N=tm(y.getBoundingClientRect()),k=om([...w,...N]);c(k),f(!0)},[f]);return C.useEffect(()=>()=>h(),[h]),C.useEffect(()=>{if(d&&u){const g=$t(v=>b(v,u),"handleTriggerLeave"),y=$t(v=>b(v,d),"handleContentLeave");return d.addEventListener("pointerleave",g),u.addEventListener("pointerleave",y),()=>{d.removeEventListener("pointerleave",g),u.removeEventListener("pointerleave",y)}}},[d,u,b,h]),C.useEffect(()=>{if(l){const g=$t(y=>{const v=y.target,S={x:y.clientX,y:y.clientY},x=(d==null?void 0:d.contains(v))||(u==null?void 0:u.contains(v)),w=!rm(S,l);x?h():w&&(h(),p())},"handleTrackPointerGrace");return document.addEventListener("pointermove",g),()=>document.removeEventListener("pointermove",g)}},[d,u,l,p,h]),i.jsx(Jh,{...t,ref:s})},"TooltipContentHoverable")),sk=Ef("TooltipContent"),Jh=C.forwardRef($t(function(t,r){const{__scopeTooltip:o,children:n,"aria-label":a,id:s,onEscapeKeyDown:l,onPointerDownOutside:c,...d}=t,p=Xn(Jn,o),u=Mc(o),{onClose:f}=p;C.useEffect(()=>(document.addEventListener(Oc,f),()=>document.removeEventListener(Oc,f)),[f]),C.useEffect(()=>{if(p.trigger){const b=$t(g=>{g.target instanceof Node&&g.target.contains(p.trigger)&&f()},"handleScroll");return window.addEventListener("scroll",b,{capture:!0}),()=>window.removeEventListener("scroll",b,{capture:!0})}},[p.trigger,f]);const{setContentId:h}=p;return ut(()=>(h(s),()=>{h(void 0)}),[s,h]),i.jsx(Mi,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:l,onPointerDownOutside:c,onFocusOutside:b=>b.preventDefault(),onDismiss:f,children:i.jsxs(Np,{"data-state":p.stateAttribute,role:a?void 0:"tooltip",id:a?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:[i.jsx(sk,{children:n}),a?i.jsx(JS,{id:p.contentId,role:"tooltip",children:a}):null]})})},"TooltipContentImpl"));function Zh(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")}}$t(Zh,"getExitSideFromRect");function em(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}$t(em,"getPaddedExitPoints");function tm(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}]}$t(tm,"getPointsFromRect");function rm(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 l=t[a],c=t[s],d=l.x,p=l.y,u=c.x,f=c.y;p>o!=f>o&&r<(u-d)*(o-p)/(f-p)+d&&(n=!n)}return n}$t(rm,"isPointInPolygon");function om(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),nm(t)}$t(om,"getHull");function nm(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)}$t(nm,"getHullPresorted");var lk=XE,ik=ZE,ck=ek,dk=ok,am=nk;const Vs=lk,Fr=ik,Vr=ck,Nr=C.forwardRef(({className:e,sideOffset:t=4,...r},o)=>i.jsx(dk,{children:i.jsx(am,{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})}));Nr.displayName=am.displayName;const Fc=C.forwardRef(({className:e,children:t,...r},o)=>i.jsx("div",{ref:o,className:m("relative overflow-hidden",e),...r,children:i.jsx("div",{className:m("h-full w-full overflow-auto rounded-[inherit]"),children:t})}));Fc.displayName="ScrollArea";const uk=C.forwardRef(({className:e,orientation:t="vertical",...r},o)=>i.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:i.jsx("div",{className:m("relative flex-1 rounded-full bg-border")})}));uk.displayName="ScrollBar";function sm(e){return{order:99,disabled:!1,hidden:!1,...e}}function fk(e){return e.map((t,r)=>sm({...t,order:t.order??100+r}))}function lm(e,t){return typeof e.disabled=="function"?e.disabled(t):e.disabled??!1}function im(e,t){return typeof e.hidden=="function"?e.hidden(t):e.hidden??!1}const pk=({element:e,onAddElement:t,isDisabled:r=!1,disabledReason:o,wizardExists:n=!1})=>{const a=ie(u=>u.setDraggedElementType),s=u=>{if(r){u.preventDefault();return}u.dataTransfer.setData("elementType",e.type),u.dataTransfer.effectAllowed="copy",a(e.type)},l=()=>{a(null)},c=()=>{r||t(e.type)},d=()=>{if(typeof e.icon=="string")return i.jsx("span",{className:m("text-lg flex-shrink-0"),children:e.icon});const u=e.icon;return i.jsx(u,{className:m("w-5 h-5 flex-shrink-0")})},p=i.jsxs("div",{draggable:!r,onDragStart:s,onDragEnd:l,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(),i.jsxs("div",{className:m("flex-1 min-w-0"),children:[i.jsx("div",{className:m("text-xs font-medium text-foreground truncate"),children:e.label}),r&&i.jsx("div",{className:m("text-xs text-orange-500 truncate"),children:"Already added"})]})]});return r&&o?i.jsx(Vs,{children:i.jsxs(Fr,{children:[i.jsx(Vr,{asChild:!0,children:p}),i.jsx(Nr,{children:i.jsx("p",{children:o})})]})}):i.jsx(Vs,{children:i.jsxs(Fr,{children:[i.jsx(Vr,{asChild:!0,children:p}),i.jsx(Nr,{children:i.jsxs("div",{className:m("max-w-xs"),children:[i.jsx("p",{className:m("font-medium"),children:e.label}),i.jsx("p",{className:m("text-xs text-muted-foreground"),children:e.description}),i.jsx("p",{className:m("text-xs mt-1 text-muted-foreground/70"),children:n?"Drag into wizard step":"Drag or click to add"})]})})]})})},cm=({label:e,elements:t,searchQuery:r,onAddElement:o,defaultExpanded:n=!1,hasWizard:a=!1,wizardExists:s=!1})=>{const[l,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:l;return i.jsxs(Yh,{open:p,onOpenChange:c,className:m("mb-2"),children:[i.jsx(Qh,{asChild:!0,children:i.jsxs(st,{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:[i.jsx("span",{children:e}),i.jsxs("span",{className:m("flex items-center gap-1"),children:[i.jsx(vc,{variant:"secondary",className:m("font-normal normal-case text-xs"),children:d.length}),i.jsx(vn,{className:m("h-4 w-4 transition-transform",p&&"rotate-180")})]})]})}),i.jsx(Kh,{children:i.jsx("div",{className:m("grid grid-cols-2 gap-1.5 mt-1.5"),children:d.map(u=>i.jsx(pk,{element:u,onAddElement:o,isDisabled:u.type==="pages"&&a,disabledReason:"Only one wizard can be added per form",wizardExists:s},u.type))})})]})},dm=({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:i.jsxs("div",{className:m("text-center py-8 text-muted-foreground text-sm"),children:[i.jsx("div",{className:m("text-3xl mb-2"),children:"🔍"}),i.jsxs("p",{children:['No elements found for "',e,'"']}),i.jsx("p",{className:m("text-xs mt-1 text-muted-foreground/70"),children:"Try a different search term"})]}),hk=({sidebarTabs:e=[]})=>{const[t,r]=P.useState("fields"),[o,n]=P.useState(""),a=ie(T=>T.addElement),s=ie(T=>T.hasWizard),l=ie(T=>T.schema),c=ie(T=>T.mode),d=ie(T=>T.loadSchema),p=ie(T=>T.exportSchema),u=ie(T=>T.resetForm),f=ie(T=>T.updateFormTitle),h=ie(T=>T.updateFormDescription),b=ie(T=>T.updateElement),g=ie(T=>T.deleteElement),y=ie(T=>T.selectElement),v=ie(T=>T.setMode),S=T=>{x&&T!=="pages"||a(T)},x=s(),w=P.useMemo(()=>{const T=vt.getGroups(),O=T.filter(V=>V.elements.some(G=>G.category==="field")),$=T.filter(V=>V.elements.some(G=>G.category==="page"));return{fieldGroups:O,pageGroups:$}},[]),N=P.useMemo(()=>vt.getByCategory("field"),[]),k=P.useMemo(()=>vt.getByCategory("page"),[]),_=["textInput","selection","heading","layout","special"],E=P.useMemo(()=>({schema:l,mode:c,actions:{addElement:a,loadSchema:d,exportSchema:p,resetForm:u,updateFormTitle:f,updateFormDescription:h,updateElement:b,deleteElement:g,selectElement:y,setMode:v}}),[l,c,a,d,p,u,f,h,b,g,y,v]),D=P.useMemo(()=>e.length?[...e].filter(T=>!im(T,E)).sort((T,O)=>(T.order??99)-(O.order??99)):[],[e,E]);return i.jsxs("div",{className:m("w-72 bg-muted/50 border-r border-border flex flex-col h-full flex-shrink-0"),children:[x&&i.jsx("div",{className:m("p-2 bg-orange-50 border-b border-orange-200"),children:i.jsxs("div",{className:m("flex items-start gap-2 text-xs text-orange-700"),children:[i.jsx("span",{className:m("text-base"),children:"📑"}),i.jsxs("div",{children:[i.jsx("p",{className:m("font-medium"),children:"Wizard Mode Active"}),i.jsx("p",{className:m("text-orange-600"),children:"Drop elements inside wizard steps, not on the main canvas."})]})]})}),i.jsx("div",{className:m("p-3 border-b border-border bg-card"),children:i.jsxs("div",{className:m("relative"),children:[i.jsx(k1,{className:m("absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground")}),i.jsx(fr,{type:"text",placeholder:"Search elements...",value:o,onChange:T=>n(T.target.value),className:m("pl-9 pr-8")}),o&&i.jsx(st,{variant:"ghost",size:"icon",className:m("absolute right-1 top-1/2 -translate-y-1/2 h-6 w-6"),onClick:()=>n(""),children:i.jsx(Hn,{className:m("h-4 w-4")})})]})}),i.jsxs(Bh,{value:t,onValueChange:r,className:m("flex-1 flex flex-col min-h-0 overflow-hidden"),children:[i.jsx(Fc,{"aria-disabled":!0,children:i.jsxs(Tc,{className:m("w-full rounded-none border-b border-border bg-card h-auto p-0 flex-shrink-0"),children:[i.jsxs(Qn,{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 (",N.length,")"]}),i.jsxs(Qn,{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 (",k.length,")"]}),D.map(T=>{const O=T.icon;return i.jsxs(Qn,{value:T.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:lm(T,E),children:[O&&i.jsx(O,{className:m("h-3.5 w-3.5 mr-1")}),T.label]},T.id)})]})}),i.jsxs("div",{className:m("flex-1 min-h-0 relative"),children:[i.jsx(Kn,{value:"fields",className:m("absolute inset-0 mt-0 data-[state=inactive]:hidden overflow-auto"),children:i.jsxs("div",{className:m("p-3"),children:[w.fieldGroups.map(T=>i.jsx(cm,{label:T.label,elements:T.elements.filter(O=>O.category==="field"),searchQuery:o,onAddElement:S,defaultExpanded:_.includes(T.id),wizardExists:x},T.id)),o&&i.jsx(dm,{searchQuery:o,elements:N})]})}),i.jsx(Kn,{value:"pages",className:m("absolute inset-0 mt-0 data-[state=inactive]:hidden overflow-auto"),children:i.jsxs("div",{className:m("p-3"),children:[w.pageGroups.map(T=>i.jsx(cm,{label:T.label,elements:T.elements.filter(O=>O.category==="page"),searchQuery:o,onAddElement:S,defaultExpanded:_.includes(T.id),hasWizard:x,wizardExists:x},T.id)),o&&i.jsx(dm,{searchQuery:o,elements:k})]})}),D.map(T=>{const O=T.content;return i.jsx(Kn,{value:T.id,className:m("absolute inset-0 mt-0 data-[state=inactive]:hidden overflow-auto"),children:i.jsx(O,{...E})},T.id)})]})]})]})},mk=["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 bk(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((l,c)=>{const d=gk(l,c,o,n);t.push(...d)}),n.forEach((l,c)=>{l.length>1&&t.push({type:"error",message:`Duplicate field name "${c}" found in elements: ${l.join(", ")}`})});const a=new Set(o);return r.elements.forEach(l=>{if(l&&l.logic){const c=vk(l,a);t.push(...c)}}),r.elements.length===0&&t.push({type:"warning",message:"Schema has no elements"}),!r.elements.some(l=>l&&l.type==="submit")&&r.elements.length>0&&t.push({type:"warning",message:"Schema has no submit button"}),{valid:t.filter(l=>l.type==="error").length===0,errors:t}}function gk(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)`}):mk.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 l=yk(s);return n.push(...l),n}function yk(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((l,c)=>{if(!l||typeof l!="object")t.push({type:"error",elementId:n,message:`${r} option at index ${c} is invalid`});else{const d=l;(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 vk(e,t){var a,s,l,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(a=o.showWhen)!=null&&a.rules&&n(o.showWhen.rules,"showWhen"),(s=o.hideWhen)!=null&&s.rules&&n(o.hideWhen.rules,"hideWhen"),(l=o.requireWhen)!=null&&l.rules&&n(o.requireWhen.rules,"requireWhen"),(c=o.disableWhen)!=null&&c.rules&&n(o.disableWhen.rules,"disableWhen"),r}function wk(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=bk(t);return{schema:r.valid?t:null,validation:r}}function xk(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 Ck(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 um(e){return{order:0,variant:"ghost",disabled:!1,hidden:!1,...e}}function Sk(e){return e.map((t,r)=>um({...t,order:t.order??r}))}function fm(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 Nk{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 tr=new Nk;function Ek(e){tr.register(e)}function kk(e){for(const t of e)tr.register(t)}function Ak(e){return tr.unregister(e)}function _k(e){return tr.get(e)}function Tk(e){return tr.has(e)}const jo=({action:e,context:t})=>{const r=e.icon,o=fm(e,t),n=async()=>{o||await e.onClick(t)},a=m(e.variant==="destructive"?"text-destructive hover:text-destructive hover:bg-destructive/10":"");return i.jsxs(Fr,{children:[i.jsx(Vr,{asChild:!0,children:i.jsx(st,{variant:"ghost",size:"icon",onClick:n,disabled:o,className:a,children:i.jsx(r,{className:m("h-5 w-5")})})}),i.jsx(Nr,{children:i.jsx("p",{children:e.label})})]})},Dk=({schema:e,canUndo:t,canRedo:r,onUndo:o,onRedo:n,onExport:a,exportSchema:s,onImport:l,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:l,exportSchema:s,setMode:p,resetForm:c}}),[e,d,t,r,o,n,l,s,p,c]),b=()=>{var k;(k=f.current)==null||k.click()},g=k=>{var E;const _=(E=k.target.files)==null?void 0:E[0];if(_){const D=new FileReader;D.onload=T=>{var O;try{const $=(O=T.target)==null?void 0:O.result,{schema:V,validation:G}=wk($);if(!G.valid){const H=Ck(G),Y=G.errors.filter(W=>W.type==="error").slice(0,5).map(W=>`• ${W.message}`).join(`
|
|
177
|
+
`);if(window.confirm(`Schema validation failed (${H}):
|
|
173
178
|
|
|
174
|
-
${
|
|
179
|
+
${Y}
|
|
175
180
|
|
|
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.
|
|
181
|
+
Would you like to attempt to import anyway? The schema will be sanitized.`)){const W=JSON.parse($),R=xk(W);l(R)}return}const q=G.errors.filter(H=>H.type==="warning");q.length>0&&console.warn("Schema import warnings:",q),l(V)}catch($){console.error("Failed to import schema:",$),alert("Invalid JSON file. Please select a valid form schema.")}},D.readAsText(_)}f.current&&(f.current.value="")},y=new Set((u==null?void 0:u.hideBuiltinActions)??[]);(u==null?void 0:u.showUndoRedo)===!1&&(y.add("undo"),y.add("redo")),(u==null?void 0:u.showModeToggle)===!1&&(y.add("design-mode"),y.add("preview-mode")),(u==null?void 0:u.showImportExport)===!1&&(y.add("import"),y.add("export")),(u==null?void 0:u.showReset)===!1&&y.add("reset");const v=new Map,S=(u==null?void 0:u.actions)??[];S.forEach(k=>{k.override&&v.set(k.override,k)});const x=P.useMemo(()=>{const k={left:[],center:[],right:[]};return S.filter(_=>!_.override&&!Vc(_,h)).forEach(_=>{k[_.position].push(_)}),Object.values(k).forEach(_=>{_.sort((E,D)=>(E.order??0)-(D.order??0))}),k},[S,h]),w=k=>!(y.has(k)||v.has(k)),N=(k,_)=>{if(y.has(k))return null;const E=v.get(k);return E&&!Vc(E,h)?i.jsx(jo,{action:E,context:h},k):_()};return i.jsx(Vs,{children:i.jsxs("div",{className:m("flex items-center justify-between px-4 py-2 bg-card border-b border-border"),children:[i.jsxs("div",{className:m("flex items-center gap-1"),children:[x.left.filter(k=>(k.order??0)<0).map(k=>i.jsx(jo,{action:k,context:h},k.id)),N("undo",()=>w("undo")?i.jsxs(Fr,{children:[i.jsx(Vr,{asChild:!0,children:i.jsx(st,{variant:"ghost",size:"icon",onClick:o,disabled:!t,children:i.jsx(A1,{className:m("h-5 w-5")})})}),i.jsx(Nr,{children:i.jsx("p",{children:"Undo (⌘Z)"})})]},"undo"):null),N("redo",()=>w("redo")?i.jsxs(Fr,{children:[i.jsx(Vr,{asChild:!0,children:i.jsx(st,{variant:"ghost",size:"icon",onClick:n,disabled:!r,children:i.jsx(E1,{className:m("h-5 w-5")})})}),i.jsx(Nr,{children:i.jsx("p",{children:"Redo (⌘⇧Z)"})})]},"redo"):null),x.left.filter(k=>(k.order??0)>=0).map(k=>i.jsx(jo,{action:k,context:h},k.id))]}),i.jsxs("div",{className:m("flex items-center gap-2"),children:[x.center.filter(k=>(k.order??0)<0).map(k=>i.jsx(jo,{action:k,context:h},k.id)),(u==null?void 0:u.showModeToggle)!==!1&&tr.getVisible().length>0&&i.jsx("div",{className:m("flex items-center bg-muted rounded-lg p-1"),children:tr.getVisible().map(k=>{const _=`${k.id}-mode`;if(y.has(_))return null;const E=k.icon,D=d===k.id;return i.jsxs(Fr,{children:[i.jsx(Vr,{asChild:!0,children:i.jsx(st,{variant:D?"secondary":"ghost",size:"icon",onClick:()=>p(k.id),className:m(D&&"bg-background shadow-sm"),children:i.jsx(E,{className:m("h-5 w-5")})})}),i.jsx(Nr,{children:i.jsx("p",{children:k.description??k.label})})]},k.id)})}),x.center.filter(k=>(k.order??0)>=0).map(k=>i.jsx(jo,{action:k,context:h},k.id))]}),i.jsxs("div",{className:m("flex items-center gap-1"),children:[x.right.filter(k=>(k.order??0)<0).map(k=>i.jsx(jo,{action:k,context:h},k.id)),i.jsx("input",{ref:f,type:"file",accept:".json",onChange:g,className:m("hidden")}),N("import",()=>w("import")?i.jsxs(Fr,{children:[i.jsx(Vr,{asChild:!0,children:i.jsx(st,{variant:"ghost",size:"icon",onClick:b,children:i.jsx(_1,{className:m("h-5 w-5")})})}),i.jsx(Nr,{children:i.jsx("p",{children:"Import"})})]},"import"):null),N("export",()=>w("export")?i.jsxs(Fr,{children:[i.jsx(Vr,{asChild:!0,children:i.jsx(st,{variant:"ghost",size:"icon",onClick:a,children:i.jsx(C1,{className:m("h-5 w-5")})})}),i.jsx(Nr,{children:i.jsx("p",{children:"Export"})})]},"export"):null),N("reset",()=>w("reset")?i.jsxs(Fr,{children:[i.jsx(Vr,{asChild:!0,children:i.jsx(st,{variant:"ghost",size:"icon",className:m("text-destructive hover:text-destructive hover:bg-destructive/10"),onClick:c,children:i.jsx(mc,{className:m("h-5 w-5")})})}),i.jsx(Nr,{children:i.jsx("p",{children:"Reset"})})]},"reset"):null),x.right.filter(k=>(k.order??0)>=0).map(k=>i.jsx(jo,{action:k,context:h},k.id))]})]})})},Zn=({containerId:e,stepId:t,label:r="Drop elements here",children:o,isEmpty:n=!0})=>{const[a,s]=P.useState(!1),l=P.useRef(null),c=ie(h=>h.addElementToContainer),d=ie(h=>h.setDraggedElementType),p=h=>{h.preventDefault();const g=h.currentTarget.querySelectorAll("[data-drop-zone]");for(const y of g){const v=y.getBoundingClientRect();if(h.clientX>=v.left&&h.clientX<=v.right&&h.clientY>=v.top&&h.clientY<=v.bottom){s(!1);return}}h.stopPropagation(),s(!0)},u=h=>{h.preventDefault();const b=h.relatedTarget,g=h.currentTarget;if(b&&g.contains(b)){const y=b.closest("[data-drop-zone]");y&&y!==g&&s(!1);return}h.stopPropagation(),s(!1)},f=h=>{h.preventDefault();const g=h.currentTarget.querySelectorAll("[data-drop-zone]");for(const v of g){const S=v.getBoundingClientRect();if(h.clientX>=S.left&&h.clientX<=S.right&&h.clientY>=S.top&&h.clientY<=S.bottom){s(!1);return}}h.stopPropagation(),s(!1);const y=h.dataTransfer.getData("elementType");y&&(c(y,e,t),d(null))};return i.jsx("div",{ref:l,"data-drop-zone":e,"data-step-id":t,onDragOver:p,onDragLeave:u,onDrop:f,className:m("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?i.jsx("div",{className:m("flex items-center justify-center h-full min-h-[60px] text-gray-400 text-sm pointer-events-none"),children:a?"Release to drop":r}):i.jsx("div",{className:m("space-y-2 p-2"),children:o})})},pm=e=>{const t=Eh(e);if(!t)return"📋";if(typeof t=="string")return t;const r=t;return i.jsx(r,{className:m("w-4 h-4 inline-block")})},Gs=({element:e,isSelected:t,isHovered:r,onSelect:o,onHover:n,onDelete:a})=>{const s=()=>e.type==="group"?i.jsx(hm,{element:e}):e.type==="grid"?i.jsx(mm,{element:e}):e.type==="repeatGroup"?i.jsx(bm,{element:e}):i.jsx(Ms,{element:e,isSelected:t}),l=e.type==="group"||e.type==="grid"||e.type==="repeatGroup";return i.jsxs("div",{onClick:c=>{c.stopPropagation(),o()},onMouseEnter:()=>n(!0),onMouseLeave:()=>n(!1),className:m("relative p-3 rounded-lg border transition-all",l?"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)&&i.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:[pm(e.type)," ",yc(e.type)]}),(t||r)&&i.jsx("button",{onClick:c=>{c.stopPropagation(),a()},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:"×"}),s()]})},$k=({element:e,index:t,isSelected:r,isHovered:o,onSelect:n,onHover:a,onDelete:s,onDuplicate:l,onDragStart:c,onDragOver:d,onDragEnd:p,isDragTarget:u})=>{const f=()=>e.type==="group"?i.jsx(hm,{element:e}):e.type==="grid"?i.jsx(mm,{element:e}):e.type==="repeatGroup"?i.jsx(bm,{element:e}):e.type==="pages"?i.jsx(Pk,{element:e}):i.jsx(Ms,{element:e,isSelected:r}),h=y=>{y.dataTransfer.effectAllowed="move",y.dataTransfer.setData("elementId",e.id),c(t)},b=y=>{y.preventDefault(),y.dataTransfer.dropEffect="move",d(t)},g=()=>{p()};return i.jsxs("div",{draggable:!0,onDragStart:h,onDragOver:b,onDragEnd:g,onClick:n,onMouseEnter:()=>a(!0),onMouseLeave:()=>a(!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&&i.jsx("div",{className:m("absolute -top-1 left-0 right-0 h-0.5 bg-blue-500 rounded")}),(r||o)&&i.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:[pm(e.type)," ",yc(e.type)]}),(r||o)&&i.jsxs("div",{className:m("absolute -top-3 right-3 flex gap-1"),children:[i.jsx("button",{onClick:y=>{y.stopPropagation(),l()},className:m("p-1 bg-white border border-gray-200 rounded shadow-sm hover:bg-gray-50 text-xs"),title:"Duplicate",children:"📋"}),i.jsx("button",{onClick:y=>{y.stopPropagation(),s()},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)&&i.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:[i.jsx("div",{className:m("w-4 h-0.5 bg-gray-400 rounded")}),i.jsx("div",{className:m("w-4 h-0.5 bg-gray-400 rounded")}),i.jsx("div",{className:m("w-4 h-0.5 bg-gray-400 rounded")})]})]})},hm=({element:e})=>{var p;const t=e.properties.label||"Group",r=e.properties.description,o=ie(u=>u.schema.elements),n=ie(u=>u.selectedElementId),a=ie(u=>u.hoveredElementId),s=ie(u=>u.selectElement),l=ie(u=>u.setHoveredElementId),c=ie(u=>u.deleteElement),d=o.filter(u=>u.parentId===e.id).sort((u,f)=>u.order-f.order);return i.jsxs("div",{className:m("border border-gray-200 rounded-lg overflow-hidden"),style:{padding:((p=e.config)==null?void 0:p.padding)||16},children:[i.jsxs("div",{className:m("mb-3"),children:[i.jsx("h3",{className:m("font-medium text-gray-800"),children:t}),r&&i.jsx("p",{className:m("text-sm text-gray-500"),children:r})]}),i.jsx(Zn,{containerId:e.id,label:"Drop elements into this group",isEmpty:d.length===0,children:d.map(u=>i.jsx(Gs,{element:u,isSelected:n===u.id,isHovered:a===u.id,onSelect:()=>s(u.id),onHover:f=>l(f?u.id:null),onDelete:()=>c(u.id)},u.id))})]})},mm=({element:e})=>{var p,u;const t=e.properties.label,r=((p=e.config)==null?void 0:p.gridColumns)||2,o=ie(f=>f.schema.elements),n=ie(f=>f.selectedElementId),a=ie(f=>f.hoveredElementId),s=ie(f=>f.selectElement),l=ie(f=>f.setHoveredElementId),c=ie(f=>f.deleteElement),d=o.filter(f=>f.parentId===e.id).sort((f,h)=>f.order-h.order);return i.jsxs("div",{className:m("border border-gray-200 rounded-lg p-4"),children:[t&&i.jsx("div",{className:m("mb-3"),children:i.jsx("h3",{className:m("font-medium text-gray-800"),children:t})}),i.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)=>i.jsx(Zn,{containerId:e.id,label:`Column ${h+1}`},h)):d.map(f=>i.jsx(Gs,{element:f,isSelected:n===f.id,isHovered:a===f.id,onSelect:()=>s(f.id),onHover:h=>l(h?f.id:null),onDelete:()=>c(f.id)},f.id))}),d.length>0&&d.length<r*3&&i.jsx("div",{className:m("mt-3"),children:i.jsx(Zn,{containerId:e.id,label:"Add more elements"})})]})},bm=({element:e})=>{var p,u,f;const t=e.properties.label||"Repeat Group",r=e.properties.description,o=ie(h=>h.schema.elements),n=ie(h=>h.selectedElementId),a=ie(h=>h.hoveredElementId),s=ie(h=>h.selectElement),l=ie(h=>h.setHoveredElementId),c=ie(h=>h.deleteElement),d=o.filter(h=>h.parentId===e.id).sort((h,b)=>h.order-b.order);return i.jsxs("div",{className:m("border border-gray-200 rounded-lg p-4"),children:[i.jsxs("div",{className:m("mb-3"),children:[i.jsxs("div",{className:m("flex items-center gap-2"),children:[i.jsx("span",{className:m("text-lg"),children:"🔄"}),i.jsx("h3",{className:m("font-medium text-gray-800"),children:t})]}),r&&i.jsx("p",{className:m("text-sm text-gray-500"),children:r})]}),i.jsxs("div",{className:m("border border-dashed border-gray-300 rounded-lg p-3 bg-gray-50/50"),children:[i.jsx("div",{className:m("text-xs text-gray-500 mb-2 font-medium"),children:"📋 Item Template (will repeat)"}),i.jsx(Zn,{containerId:e.id,label:"Drop elements to create the repeatable template",isEmpty:d.length===0,children:d.map(h=>i.jsx(Gs,{element:h,isSelected:n===h.id,isHovered:a===h.id,onSelect:()=>s(h.id),onHover:b=>l(b?h.id:null),onDelete:()=>c(h.id)},h.id))})]}),i.jsx("div",{className:m("mt-3"),children:i.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"]})}),i.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"]})]})},Pk=({element:e})=>{var w,N,k,_;const t=ie(E=>E.schema.elements),r=ie(E=>E.selectedElementId),o=ie(E=>E.hoveredElementId),n=ie(E=>E.selectElement),a=ie(E=>E.setHoveredElementId),s=ie(E=>E.deleteElement),l=ie(E=>E.addWizardStep),c=ie(E=>E.updateWizardStep),d=ie(E=>E.removeWizardStep),p=ie(E=>E.setActiveWizardStep),u=((w=e.config)==null?void 0:w.steps)||[],f=((N=e.config)==null?void 0:N.activeStepId)||((k=u[0])==null?void 0:k.id),h=u.findIndex(E=>E.id===f),b=u[h],g=h===u.length-1,y=t.filter(E=>{var D;return E.parentId?E.parentId===`${e.id}:${f}`||E.parentId===e.id&&((D=E.config)==null?void 0:D.wizardStepId)===f:!1}).sort((E,D)=>E.order-D.order),v=()=>{const E={id:Ka(),label:`Step ${u.length+1}`,description:""};l(e.id,E)},S=()=>{h>0&&p(e.id,u[h-1].id)},x=()=>{h<u.length-1&&p(e.id,u[h+1].id)};return i.jsxs("div",{className:m("border border-gray-200 rounded-lg overflow-hidden"),children:[i.jsxs("div",{className:m("bg-gray-50 border-b border-gray-200 p-3"),children:[i.jsxs("div",{className:m("flex items-center gap-2 mb-2"),children:[i.jsx("span",{className:m("text-lg"),children:"📑"}),i.jsx("h3",{className:m("font-medium text-gray-800"),children:e.properties.label||"Multi-Step Form"})]}),i.jsxs("div",{className:m("flex gap-1 flex-wrap"),children:[u.map((E,D)=>i.jsxs("button",{onClick:()=>p(e.id,E.id),className:m("px-3 py-1.5 text-sm rounded transition-colors",E.id===f?"bg-blue-500 text-white":"bg-white border border-gray-200 hover:bg-gray-100"),children:[D+1,". ",E.label]},E.id)),i.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"})]}),((_=e.config)==null?void 0:_.showProgressBar)&&i.jsxs("div",{className:m("mt-3"),children:[i.jsx("div",{className:m("h-2 bg-gray-200 rounded-full overflow-hidden"),children:i.jsx("div",{className:m("h-full bg-blue-500 transition-all"),style:{width:`${(h+1)/u.length*100}%`}})}),i.jsxs("div",{className:m("text-xs text-gray-500 mt-1"),children:["Step ",h+1," of ",u.length]})]})]}),i.jsx("div",{className:m("p-4"),children:b&&i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:m("mb-4"),children:[i.jsx("input",{type:"text",value:b.label,onChange:E=>c(e.id,f,{label:E.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"}),i.jsx("input",{type:"text",value:b.description||"",onChange:E=>c(e.id,f,{description:E.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)"})]}),i.jsx(Zn,{containerId:e.id,stepId:f,label:"Drop elements for this step",isEmpty:y.length===0,children:y.map(E=>i.jsx(Gs,{element:E,isSelected:r===E.id,isHovered:o===E.id,onSelect:()=>n(E.id),onHover:D=>a(D?E.id:null),onDelete:()=>s(E.id)},E.id))}),i.jsxs("div",{className:m("flex justify-between mt-4 pt-4 border-t border-gray-200"),children:[i.jsx("button",{disabled:h===0,onClick:S,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"}),i.jsxs("div",{className:m("flex gap-2"),children:[u.length>1&&i.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"}),i.jsx("button",{disabled:g,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 →"})]})]})]})}),i.jsx("div",{className:m("px-4 pb-4"),children:i.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."]})})]})},Mk=()=>i.jsxs("div",{className:m("flex flex-col items-center justify-center h-full text-muted-foreground"),children:[i.jsx("div",{className:m("text-6xl mb-4"),children:"📝"}),i.jsx("h3",{className:m("text-lg font-medium text-foreground/70 mb-2"),children:"Start Building Your Form"}),i.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."})]}),Ok=({toolbarConfig:e})=>{const t=ie(Q=>Q.schema),r=ie(Q=>Q.selectedElementId),o=ie(Q=>Q.hoveredElementId),n=ie(Q=>Q.addElement),a=ie(Q=>Q.selectElement),s=ie(Q=>Q.deleteElement),l=ie(Q=>Q.duplicateElement),c=ie(Q=>Q.reorderElements),d=ie(Q=>Q.setHoveredElementId),p=ie(Q=>Q.undo),u=ie(Q=>Q.redo),f=ie(Q=>Q.canUndo),h=ie(Q=>Q.canRedo),b=ie(Q=>Q.exportSchema),g=ie(Q=>Q.loadSchema),y=ie(Q=>Q.resetForm),v=ie(Q=>Q.mode),S=ie(Q=>Q.setMode),x=ie(Q=>Q.hasWizard),[w,N]=P.useState(!1),[k,_]=P.useState(null),[E,D]=P.useState(null),T=x(),O=Q=>{if(Q.preventDefault(),T){Q.dataTransfer.dropEffect="none";return}Q.dataTransfer.dropEffect="copy",N(!0)},$=Q=>{Q.currentTarget.contains(Q.relatedTarget)||N(!1)},V=Q=>{if(Q.preventDefault(),N(!1),T)return;const te=Q.dataTransfer.getData("elementType");te&&n(te)},G=()=>{const Q=b(),te=new Blob([JSON.stringify(Q,null,2)],{type:"application/json"}),De=URL.createObjectURL(te),de=document.createElement("a");de.href=De,de.download=`${t.title.replace(/\s+/g,"-").toLowerCase()}-schema.json`,document.body.appendChild(de),de.click(),document.body.removeChild(de),URL.revokeObjectURL(De)},q=Q=>{g(Q)},H=()=>{(t.elements.length===0||window.confirm("Are you sure you want to reset the form? This will delete all elements."))&&y()},Y=Q=>{Q.target===Q.currentTarget&&a(null)},J=[...t.elements].filter(Q=>!Q.parentId).sort((Q,te)=>Q.order-te.order),W=Q=>{_(Q)},R=Q=>{k!==null&&k!==Q&&D(Q)},we=()=>{k!==null&&E!==null&&k!==E&&c(k,E),_(null),D(null)};return i.jsxs("div",{className:m("flex-1 flex flex-col bg-gray-100 overflow-hidden"),children:[i.jsx(Dk,{schema:t,canUndo:f(),canRedo:h(),onUndo:p,onRedo:u,onExport:G,exportSchema:b,onImport:q,onReset:H,mode:v,onModeChange:S,toolbarConfig:e}),i.jsx("div",{className:m("flex-1 overflow-auto p-4",w&&!T?"bg-blue-50":""),onDragOver:O,onDragLeave:$,onDrop:V,onClick:Y,children:i.jsxs("div",{className:m("max-w-4xl mx-auto p-2"),children:[i.jsx("div",{className:m("mb-0 text-center"),children:t.description&&i.jsx("p",{className:m("text-gray-500"),children:t.description})}),i.jsx("div",{className:m("bg-white rounded-xl shadow-sm border-2 transition-colors",w&&!T?"border-blue-400 border-dashed":"border-gray-200"),children:J.length===0?i.jsx("div",{className:m("p-2"),children:i.jsx(Mk,{})}):i.jsx("div",{className:m("p-4 space-y-2"),children:J.map((Q,te)=>i.jsx($k,{element:Q,index:te,isSelected:r===Q.id,isHovered:o===Q.id,onSelect:()=>a(Q.id),onHover:De=>d(De?Q.id:null),onDelete:()=>s(Q.id),onDuplicate:()=>l(Q.id),onDragStart:W,onDragOver:R,onDragEnd:we,isDragTarget:E===te},Q.id))})}),w&&!T&&i.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"}),T&&w&&i.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],Ik=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 a=o+n+1>>>1;Gc[a]<=r?o=a:n=a-1}return String(r-Gc[o])}),Lk={"⁰":"0","¹":"1","²":"2","³":"3","⁴":"4","⁵":"5","⁶":"6","⁷":"7","⁸":"8","⁹":"9","₀":"0","₁":"1","₂":"2","₃":"3","₄":"4","₅":"5","₆":"6","₇":"7","₈":"8","₉":"9"},Fk=/[⁰¹²³⁴⁵⁶⁷⁸⁹₀₁₂₃₄₅₆₇₈₉]/g,Vk={"¼":"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/"},Gk=/^(?=[-+]?\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)*)?$/,zk=/^(?=[-+]?\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/].*)?/,Bk=/([¼½¾⅐⅑⅒⅓⅔⅕⅖⅗⅘⅙⅚⅛⅜⅝⅞⅟}])/g,zs={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},Uk={"Ⅰ":"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"},Wk=/([ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫⅬⅭⅮⅯⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹⅺⅻⅼⅽⅾⅿ])/gi,Hk=/^(?=[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},jk=e=>{const t=`${e}`.replace(Wk,(l,c)=>Uk[c]).toUpperCase(),r=Hk.exec(t);if(!r)return NaN;const[,o,n,a,s]=r;return(zs[o]??0)+(zs[n]??0)+(zs[a]??0)+(zs[s]??0)},qk=/^\s*\//,Yk=new RegExp("^([-+]?)\\s*(\\p{Sc}+)\\s*","u"),Qk=new RegExp("\\s*(\\p{Sc}+)$","u"),Kk=/%$/;function Rk(e,t=gm){const r={...gm,...t},o=typeof e=="string"?e:`${e}`;let n,a,s,l,c,d,p,u;const f=T=>{const O={value:T,input:o};return n&&(O.currencyPrefix=n),a&&(O.currencySuffix=a),s&&(O.percentageSuffix=s),l&&(O.trailingInvalid=l),c&&(O.sign=c),d!==void 0&&(O.whole=d),p!==void 0&&(O.numerator=p),u!==void 0&&(O.denominator=u),O},h=T=>r.verbose?f(T):T;if(typeof e=="number"||typeof e=="bigint")return h(e);let b=NaN,g=o;if(r.allowCurrency){const T=Yk.exec(g);T&&T[2]&&(n=T[2],g=(T[1]||"")+g.slice(T[0].length))}if(r.allowCurrency){const T=Qk.exec(g);T&&(a=T[1],g=g.slice(0,-T[0].length))}r.percentage&&Kk.test(g)&&(s=!0,g=g.slice(0,-1));const y=Ik(g.replace(Bk,(T,O)=>` ${Vk[O]}`).replace(Fk,T=>Lk[T]).replace("⁄","/").trim());if(y.length===0)return h(NaN);let v=y;if(r.decimalSeparator===","){const T=(y.match(/,/g)||[]).length;if(T===1)v=y.replaceAll(".","_").replace(",",".");else if(T>1){if(!r.allowTrailingInvalid)return h(NaN);const O=y.indexOf(","),$=y.indexOf(",",O+1),V=y.substring(0,$).replaceAll(".","_").replace(",","."),G=y.substring($+1);v=r.allowTrailingInvalid?V+"&"+G:V}else v=y.replaceAll(".","_")}const S=zk.exec(v);if(!S)return h(r.romanNumerals?jk(y):NaN);const x=(S[7]||v.slice(S[0].length)).trim();if(x&&(l=x,!r.allowTrailingInvalid))return h(NaN);const[,w,N,k]=S;(w==="-"||w==="+")&&(c=w);const _=N.replaceAll(",","").replaceAll("_",""),E=k==null?void 0:k.replaceAll(",","").replaceAll("_","");if(!_&&E&&E.startsWith("."))b=0;else{if(r.bigIntOnOverflow){const T=BigInt(w==="-"?`-${_}`:_);if(T>BigInt(Number.MAX_SAFE_INTEGER)||T<BigInt(Number.MIN_SAFE_INTEGER))return h(T)}b=parseInt(_)}if(!E)return b=w==="-"?b*-1:b,s&&r.percentage!=="number"&&(b=b/100),h(b);const D=r.round===!1?NaN:parseFloat(`1e${Math.floor(Math.max(0,r.round))}`);if(E.startsWith(".")||E.startsWith("e")||E.startsWith("E")){const T=parseFloat(`${b}${E}`);b=isNaN(D)?T:Math.round(T*D)/D}else if(qk.test(E)){const T=parseInt(_),O=parseInt(E.replace("/",""));p=T,u=O,b=isNaN(D)?T/O:Math.round(T*D/O)/D}else{const[T,O]=E.split("/").map($=>parseInt($));d=b,p=T,u=O,b+=isNaN(D)?T/O:Math.round(T*D/O)/D}return b=w==="-"?b*-1:b,s&&r.percentage!=="number"&&(b=isNaN(D)?b/100:Math.round(b/100*D)/D),h(b)}var ym=Symbol.for("immer-nothing"),vm=Symbol.for("immer-draftable"),zt=Symbol.for("immer-state"),Xk=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 rr(e,...t){if(process.env.NODE_ENV!=="production"){const r=Xk[e],o=qo(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 or=Object,xn=or.getPrototypeOf,Bs="constructor",Us="prototype",zc="configurable",Ws="enumerable",Hs="writable",ea="value",Gr=e=>!!e&&!!e[zt];function zr(e){var t;return e?xm(e)||Ys(e)||!!e[vm]||!!((t=e[Bs])!=null&&t[vm])||Qs(e)||Ks(e):!1}var Jk=or[Us][Bs].toString(),wm=new WeakMap;function xm(e){if(!e||!Wc(e))return!1;const t=xn(e);if(t===null||t===or[Us])return!0;const r=or.hasOwnProperty.call(t,Bs)&&t[Bs];if(r===Object)return!0;if(!qo(r))return!1;let o=wm.get(r);return o===void 0&&(o=Function.toString.call(r),wm.set(r,o)),o===Jk}function js(e,t,r=!0){ta(e)===0?(r?Reflect.ownKeys(e):or.keys(e)).forEach(n=>{t(n,e[n],e)}):e.forEach((o,n)=>t(n,o,e))}function ta(e){const t=e[zt];return t?t.type_:Ys(e)?1:Qs(e)?2:Ks(e)?3:0}var Bc=(e,t,r=ta(e))=>r===2?e.has(t):or[Us].hasOwnProperty.call(e,t),Uc=(e,t,r=ta(e))=>r===2?e.get(t):e[t],qs=(e,t,r,o=ta(e))=>{o===2?e.set(t,r):o===3?e.add(r):e[t]=r};function Zk(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var Ys=Array.isArray,Qs=e=>e instanceof Map,Ks=e=>e instanceof Set,Wc=e=>typeof e=="object",qo=e=>typeof e=="function",Hc=e=>typeof e=="boolean";function eA(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var oo=e=>e.copy_||e.base_,jc=e=>e.modified_?e.copy_:e.base_;function qc(e,t){if(Qs(e))return new Map(e);if(Ks(e))return new Set(e);if(Ys(e))return Array[Us].slice.call(e);const r=xm(e);if(t===!0||t==="class_only"&&!r){const o=or.getOwnPropertyDescriptors(e);delete o[zt];let n=Reflect.ownKeys(o);for(let a=0;a<n.length;a++){const s=n[a],l=o[s];l[Hs]===!1&&(l[Hs]=!0,l[zc]=!0),(l.get||l.set)&&(o[s]={[zc]:!0,[Hs]:!0,[Ws]:l[Ws],[ea]:e[s]})}return or.create(xn(e),o)}else{const o=xn(e);if(o!==null&&r)return{...e};const n=or.create(o);return or.assign(n,e)}}function Yc(e,t=!1){return Xs(e)||Gr(e)||!zr(e)||(ta(e)>1&&or.defineProperties(e,{set:Rs,add:Rs,clear:Rs,delete:Rs}),or.freeze(e),t&&js(e,(r,o)=>{Yc(o,!0)},!1)),e}function tA(){rr(2)}var Rs={[ea]:tA};function Xs(e){return e===null||!Wc(e)?!0:or.isFrozen(e)}var Js="MapSet",Qc="Patches",Cm="ArrayMethods",Sm={};function Yo(e){const t=Sm[e];return t||rr(0,e),t}var Nm=e=>!!Sm[e],ra,Em=()=>ra,rA=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:Nm(Js)?Yo(Js):void 0,arrayMethodsPlugin_:Nm(Cm)?Yo(Cm):void 0});function km(e,t){t&&(e.patchPlugin_=Yo(Qc),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Kc(e){Rc(e),e.drafts_.forEach(oA),e.drafts_=null}function Rc(e){e===ra&&(ra=e.parent_)}var Am=e=>ra=rA(ra,e);function oA(e){const t=e[zt];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function _m(e,t){t.unfinalizedDrafts_=t.drafts_.length;const r=t.drafts_[0];if(e!==void 0&&e!==r){r[zt].modified_&&(Kc(t),rr(4)),zr(e)&&(e=Tm(t,e));const{patchPlugin_:n}=t;n&&n.generateReplacementPatches_(r[zt].base_,e,t)}else e=Tm(t,r);return nA(t,e,!0),Kc(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==ym?e:void 0}function Tm(e,t){if(Xs(t))return t;const r=t[zt];if(!r)return el(t,e.handledSet_,e);if(!Zs(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);Pm(r,e)}return r.copy_}function nA(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Yc(t,r)}function Dm(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var Zs=(e,t)=>e.scope_===t,aA=[];function $m(e,t,r,o){const n=oo(e),a=e.type_;if(o!==void 0&&Uc(n,o,a)===t){qs(n,o,r,a);return}if(!e.draftLocations_){const l=e.draftLocations_=new Map;js(n,(c,d)=>{if(Gr(d)){const p=l.get(d)||[];p.push(c),l.set(d,p)}})}const s=e.draftLocations_.get(t)??aA;for(const l of s)qs(n,l,r,a)}function sA(e,t,r){e.callbacks_.push(function(n){var l;const a=t;if(!a||!Zs(a,n))return;(l=n.mapSetPlugin_)==null||l.fixSetContents(a);const s=jc(a);$m(e,a.draft_??a,s,r),Pm(a,n)})}function Pm(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)}Dm(e)}}function lA(e,t,r){const{scope_:o}=e;if(Gr(r)){const n=r[zt];Zs(n,o)&&n.callbacks_.push(function(){rl(e);const s=jc(n);$m(e,r,s,t)})}else zr(r)&&e.callbacks_.push(function(){const a=oo(e);e.type_===3?a.has(r)&&el(r,o.handledSet_,o):Uc(a,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||Gr(e)||t.has(e)||!zr(e)||Xs(e)||(t.add(e),js(e,(o,n)=>{if(Gr(n)){const a=n[zt];if(Zs(a,r)){const s=jc(a);qs(e,o,s,e.type_),Dm(a)}}else zr(n)&&el(n,t,r)})),e}function iA(e,t){const r=Ys(e),o={type_:r?1:0,scope_:t?t.scope_:Em(),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=tl;r&&(n=[o],a=oa);const{revoke:s,proxy:l}=Proxy.revocable(n,a);return o.draft_=l,o.revoke_=s,[l,o]}var tl={get(e,t){if(t===zt)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=oo(e);if(!Bc(n,t,e.type_))return dA(e,n,t);const a=n[t];if(e.finalized_||!zr(a)||o&&e.operationMethod&&(r!=null&&r.isMutatingArrayMethod(e.operationMethod))&&eA(t))return a;if(a===Xc(e.base_,t)||cA(e,t,a)){rl(e);const s=e.type_===1?+t:t,l=Zc(e.scope_,a,e,s);return e.copy_[s]=l}return a},has(e,t){return t in oo(e)},ownKeys(e){return Reflect.ownKeys(oo(e))},set(e,t,r){const o=Mm(oo(e),t);if(o!=null&&o.set)return o.set.call(e.draft_,r),!0;if(!e.modified_){const n=Xc(oo(e),t),a=n==null?void 0:n[zt];if(a&&a.base_===r)return e.copy_[t]=r,e.assigned_.set(t,!1),!0;if(Zk(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),lA(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=oo(e),o=Reflect.getOwnPropertyDescriptor(r,t);return o&&{[Hs]:!0,[zc]:e.type_!==1||t!=="length",[Ws]:o[Ws],[ea]:r[t]}},defineProperty(){rr(11)},getPrototypeOf(e){return xn(e.base_)},setPrototypeOf(){rr(12)}},oa={};for(let e in tl){let t=tl[e];oa[e]=function(){const r=arguments;return r[0]=r[0][0],t.apply(this,r)}}oa.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&rr(13),oa.set.call(this,e,t,void 0)},oa.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&rr(14),tl.set.call(this,e[0],t,r,e[0])};function Xc(e,t){const r=e[zt];return(r?oo(r):e)[t]}function cA(e,t,r){var o;return e.type_!==1||!e.allIndicesReassigned_||(o=e.assigned_)!=null&&o.get(t)||!zr(r)||r[zt]?!1:e.baseRefs_.has(r)}function dA(e,t,r){var n;const o=Mm(t,r);return o?ea in o?o[ea]:(n=o.get)==null?void 0:n.call(e.draft_):void 0}function Mm(e,t){if(!(t in e))return;let r=xn(e);for(;r;){const o=Object.getOwnPropertyDescriptor(r,t);if(o)return o;r=xn(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 uA=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(r,o,n)=>{if(qo(r)&&!qo(o)){const s=o;o=r;const l=this;return function(d=s,...p){return l.produce(d,u=>o.call(this,u,...p))}}qo(o)||rr(6),n!==void 0&&!qo(n)&&rr(7);let a;if(zr(r)){const s=Am(this),l=Zc(s,r,void 0);let c=!0;try{a=o(l),c=!1}finally{c?Kc(s):Rc(s)}return km(s,n),_m(a,s)}else if(!r||!Wc(r)){if(a=o(r),a===void 0&&(a=r),a===ym&&(a=void 0),this.autoFreeze_&&Yc(a,!0),n){const s=[],l=[];Yo(Qc).generateReplacementPatches_(r,a,{patches_:s,inversePatches_:l}),n(s,l)}return a}else rr(1,r)},this.produceWithPatches=(r,o)=>{if(qo(r))return(l,...c)=>this.produceWithPatches(l,d=>r(d,...c));let n,a;return[this.produce(r,o,(l,c)=>{n=l,a=c}),n,a]},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){zr(t)||rr(8),Gr(t)&&(t=ed(t));const r=Am(this),o=Zc(r,t,void 0);return o[zt].isManual_=!0,Rc(r),o}finishDraft(t,r){const o=t&&t[zt];(!o||!o.isManual_)&&rr(9);const{scope_:n}=o;return km(n,r),_m(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=Yo(Qc).applyPatches_;return Gr(t)?n(t,r):this.produce(t,a=>n(a,r))}};function Zc(e,t,r,o){const[n,a]=Qs(t)?Yo(Js).proxyMap_(t,r):Ks(t)?Yo(Js).proxySet_(t,r):iA(t,r);return((r==null?void 0:r.scope_)??Em()).drafts_.push(n),a.callbacks_=(r==null?void 0:r.callbacks_)??[],a.key_=o,r&&o!==void 0?sA(r,a,o):a.callbacks_.push(function(c){var p;(p=c.mapSetPlugin_)==null||p.fixSetContents(a);const{patchPlugin_:d}=c;a.modified_&&d&&d.generatePatches_(a,[],c)}),n}function ed(e){return Gr(e)||rr(10,e),Om(e)}function Om(e){if(!zr(e)||Xs(e))return e;const t=e[zt];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 js(r,(n,a)=>{qs(r,n,Om(a))},o),t&&(t.finalized_=!1),r}var fA=new uA,na=fA.produce;const wo="------",ot={fields:{title:"Field",placeholderName:"~",placeholderLabel:wo,placeholderGroupLabel:wo},operators:{title:"Operator",placeholderName:"~",placeholderLabel:wo,placeholderGroupLabel:wo},values:{title:"Values",placeholderName:"~",placeholderLabel:wo,placeholderGroupLabel:wo},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"}},Im={"=":"=","!=":"!=","<":"<",">":">","<=":"<=",">=":">=",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"},pA={and:"AND",or:"OR",xor:"XOR"},hA=[{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"}],aa=[{name:"and",value:"and",label:"AND"},{name:"or",value:"or",label:"OR"}];[...aa];const Lm=[{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"}],_e={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"},Te={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"},Et={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"},Fm=[],mA={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},Vm=(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)],[]):[],sa=(e,t=",")=>e.map(r=>`${r??""}`.replaceAll(t[0],`\\${t[0]}`)).join(t),Ke=e=>typeof e=="string"?e.trim():e,Ee=(e,{retainEmptyStrings:t}={})=>Array.isArray(e)?e.map(Ke):typeof e=="string"?Vm(e,",").filter(t?()=>!0:r=>!/^\s*$/.test(r)).map(r=>r.trim()):typeof e=="number"?[e]:[];function Gm(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=Gm(e[t]))&&(o&&(o+=" "),o+=r)}else for(r in e)e[r]&&(o&&(o+=" "),o+=r);return o}function Qe(){for(var e,t,r=0,o="",n=arguments.length;r<n;r++)(e=arguments[r])&&(t=Gm(e))&&(o&&(o+=" "),o+=t);return o}const Ge=e=>typeof e=="string"?e.toLowerCase():e,zm=new RegExp(Gk.source.replace(/^\^/,String.raw`^\s*`).replace(/\$$/,String.raw`\s*$`)),Er=e=>e!==null&&typeof e=="object"&&Object.getPrototypeOf(e)===Object.prototype,no=e=>e==null||e==="",ke=e=>Er(e)&&Array.isArray(e.rules),Bt=e=>ke(e)&&typeof e.combinator=="string",Cn=e=>ke(e)&&e.combinator===void 0,Bm=["or","xor","and"],bA=(e,t)=>Ge(e)===t,ol=(e,t=0)=>{const r=Bm[t];if(!e.rules.includes(r))return t<Bm.length-2?ol(e,t+1):e;const o=[...e.rules];let n=0;for(;n<o.length-2;){if(bA(o[n+1],r)){n+=2;continue}let a=-1;for(let s=n+2;s<o.length;s++)if(typeof o[s]=="string"&&Ge(o[s])===r){a=s;break}if(a===-1){o.splice(n,o.length,ol({rules:o.slice(n)},t+1));break}else o.splice(n,a-n,ol({rules:o.slice(n,a)},t+1))}return{...e,rules:o}},kr=e=>{if(Bt(e))return e;const t=ol(e),r=[];let o="and";for(const[n,a]of t.rules.entries())typeof a=="string"?n===1&&(o=a):r.push(ke(a)?kr(a):a);return{...t,combinator:o,rules:r}},gA=Object.keys,Um=Object.entries,nl=e=>e==="__proto__"||e==="constructor"||e==="prototype",td=e=>Er(e)&&"name"in e&&typeof e.name=="string",rd=e=>Er(e)&&"value"in e&&typeof e.value=="string";function Br(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 Ur(e,t,r){if(!Array.isArray(e))return[];const o=e;return xo(o)?o.map(n=>({...n,options:n.options.map(a=>Br(a,t,r))})):o.map(n=>Br(n,t,r))}function Wm(e,t){return Object.fromEntries(Object.entries(e).map(([r,o])=>[r,Br(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},Hm=e=>Array.isArray(e)&&e.length>0&&Er(e[0])&&"options"in e[0]&&Array.isArray(e[0].options),al=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},xo=(e,{allowEmpty:t=!1}={})=>{let r=!1;if(Array.isArray(e))for(const o of e)if(Er(o)&&"options"in o&&(al(o.options)||t&&Array.isArray(o.options)&&o.options.length===0))r=!0;else return!1;return r};function Xe(e,t){return(xo(e,{allowEmpty:!0})?e.flatMap(r=>r.options):e).find(r=>r.value===t||r.name===t)}function Pt(e){if(!Array.isArray(e)||e.length===0)return null;if(xo(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(Hm(e)?e.flatMap(t=>t.options):e),jm=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(Br(s)));o.push({...n,options:a})}return o},Sn=e=>{const{optionList:t,baseOption:r={},labelMap:o={},placeholder:{placeholderName:n="~",placeholderLabel:a=wo,placeholderGroupLabel:s=wo}={},autoSelectOption:l=!0}=e,c={id:n,name:n,value:n,label:a},d=t??[c];let p;const u=Array.isArray(d)?Ur(d,r,o):gA(Wm(d,r)).map(h=>({...d[h],name:h,value:h})).sort((h,b)=>h.label.localeCompare(b.label));xo(u)?p=jm(l?u:[{label:s,options:[c]},...u]):p=od(l?u:[c,...u]);let f={};if(Array.isArray(d))if(xo(p))for(const h of p)for(const b of h.options)f[b.value??b.name]=Br(b,r);else for(const h of p)f[h.value??h.name]=Br(h,r);else{const h=Wm(d,r);f=l?h:{...h,[n]:c}}return{defaultOption:c,optionList:p,optionsMap:f}},qm=(e,t,r)=>{var a;const o=Br(e),n=Br(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},Ym=(e,t,r)=>{if(!e.comparator){const o=n=>(n.value??n.name)!==(e.value??e.name);return xo(t)?t.map(n=>({...n,options:n.options.filter(a=>o(a))})):t.filter(n=>o(n))}return xo(t)?t.map(o=>({...o,options:o.options.filter(n=>qm(e,r,n))})).filter(o=>o.options.length>0):t.filter(o=>qm(e,r,o))},Le=(e,{parseNumbers:t,bigIntOnOverflow:r}={})=>{if(!t||typeof e=="bigint"||typeof e=="number")return e;if(t==="native")return Number.parseFloat(e);const o=Rk(e,{allowTrailingInvalid:t==="enhanced",bigIntOnOverflow:r,romanNumerals:!1,round:!1});return typeof o=="bigint"||!Number.isNaN(o)?o:e},Qm=(e,t,r)=>{const o={};for(const n in e){if(nl(n))continue;const a=t[n];a!==!1&&(a&&n!==a?(nl(a)||(o[a]=e[n]),r||(o[n]=e[n])):o[n]=e[n])}return o};function ao(e,t={}){const{ruleProcessor:r=p=>p,ruleGroupProcessor:o=p=>p,propertyMap:n={},combinatorMap:a={},operatorMap:s={},omitPath:l=!1,deleteRemappedProperties:c=!0}=t,d=p=>({...o(Qm({...p,...Bt(p)?{combinator:a[p.combinator]??p.combinator}:{}},n,c)),...n.rules===!1?null:{[n.rules??"rules"]:p.rules.map((u,f)=>{const h=l?null:{path:[...p.path,f]};return typeof u=="string"?a[u]??u:ke(u)?d({...u,...h}):r(Qm({...u,...h,..."operator"in u?{operator:s[u.operator]??u.operator}:{}},n,c))})}});return d({...e,...l?null:{path:[]}})}const Nn=e=>Er(e)&&typeof e.valid=="boolean",ze=(e,t,r)=>{if(e.muted)return!1;if(typeof t=="boolean")return t;if(Nn(t))return t.valid;if(typeof r=="function"&&!ke(e)){const o=r(e);if(typeof o=="boolean")return o;if(Nn(o))return o.valid}return!0},ad=({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},yA=e=>{switch(Ge(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}},vA=(e="||")=>(...t)=>e.toUpperCase()==="CONCAT"?`CONCAT(${t.join(", ")})`:t.join(` ${e} `),wA=e=>{switch(e){case"contains":case"doesnotcontain":return["%","%"];case"beginswith":case"doesnotbeginwith":return["","%"];case"endswith":case"doesnotendwith":return["%",""];default:return["",""]}},la=(e,t,{concatOperator:r="||",quoteValuesWith:o,wrapValueWith:n=["",""]}={})=>{const[a,s]=wA(t),l=o||"'",c=p=>`${n[0]}${l}${p}${l}${n[1]}`,d=[a&&c(a),e,s&&c(s)].filter(Boolean);return d.length>1?vA(r)(...d):e},Qo={"=":"$eq","!=":"$ne","<":"$lt","<=":"$lte",">":"$gt",">=":"$gte",in:"$in",notin:"$nin",notIn:"$nin"},Km={"=":"equals","!=":"not","<":"lt","<=":"lte",">":"gt",">=":"gte",in:"in",notin:"notIn"},sl={and:"&&",or:"||"},Rm=(e,t)=>({...e,rules:e.rules.map(r=>{if(typeof r=="string")return r;if(ke(r))return Rm(r,t);const o=Xe(t.fields,r.field),n=ad({parseNumbers:t.parseNumbers,inputType:o==null?void 0:o.inputType});if(Array.isArray(r.value))return{...r,value:r.value.map(s=>Le(s,{parseNumbers:n}))};const a=Ee(r.value,{retainEmptyStrings:!0}).map(s=>Le(s,{parseNumbers:n}));if(a.every(s=>typeof s=="number")){if(a.length>1)return{...r,value:a};if(a.length===1)return{...r,value:a[0]}}return r})}),wt=e=>typeof e=="string"&&e.length>0||typeof e=="number"&&!Number.isNaN(e)||typeof e!="string"&&typeof e!="number",Ae=(e,t)=>!!t&&(typeof e=="number"||typeof e=="bigint"||typeof e=="string"&&zm.test(e)),xA=e=>e.length>=3,Xm=(e=["",""])=>Array.isArray(e)?e:typeof e=="string"?[e,e]:e??["",""],En=(e,{quoteFieldNamesWith:t,fieldIdentifierSeparator:r})=>{const[o,n]=Xm(t);return typeof r=="string"&&r.length>0?sa(Vm(e,r).map(a=>`${o}${a}${n}`),r):`${o}${e}${n}`},Jm=["S","V","O"],CA=e=>{const t=[],r=new Set(Jm);for(const o of e.toUpperCase())if(r.has(o)&&(t.push(o),r.delete(o),r.size===0))break;for(const o of Jm)r.has(o)&&t.push(o);return t},ia=(e,t=":")=>{const r=`${e??""}`;return t&&r.startsWith(t)?r:`${t}${r}`},sd=(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"},Zm=(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(([a])=>Zm(e,a,r)))==null?void 0:o[1])??((n=Object.entries(ld).find(([a])=>Zm(e,a,r)))==null?void 0:n[1])??ld[e]??""},Rt=e=>{const{mode:t,threshold:r}=e.match??{};if(!t)return null;if(!ke(e.value))return!1;const o=Ge(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}},eb="elem_alias",il=(e=0)=>e>0?`${eb}_${e}`:eb,tb=(e,t)=>typeof t=="bigint"?{$bigint:t.toString()}:t,rb=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:a,placeholderOperatorName:s,placeholderValueName:l,ruleProcessor:c,validateRule:d,validationMap:p}=t,u=(f,h)=>{if(!ze(f,p[f.id??""]))return h?o:"";const b=[];let g="",y=!0;for(const w of f.rules){if(typeof w=="string"){g=sl[w];continue}if(ke(w)){const D=u(w);D&&(!y&&g&&(b.push(g),g=""),y=!1,b.push(D));continue}const[N,k]=d(w);if(!ze(w,N,k)||w.field===a||w.operator===s||l!==void 0&&w.value===l)continue;const _=Xe(r,w.field),E=c(w,{...t,parseNumbers:n(_==null?void 0:_.inputType),escapeQuotes:(w.valueSource??"value")==="value",fieldData:_});E&&(!y&&g&&(b.push(g),g=""),y=!1,b.push(E))}const v=b.join(Bt(f)?` ${sl[f.combinator]} `:" "),[S,x]=f.not||!h?[`${f.not?"!":""}(`,")"]:["",""];return v?`${S}${v}${x}`:o};return u(e,!0)},cl=e=>e.startsWith("not")||e.startsWith("doesnot"),Ko=(e,t)=>typeof e!="string"||!t?`${e}`:e.replaceAll('"','\\"'),SA=(e,t={})=>{const{escapeQuotes:r,parseNumbers:o,preserveValueOrder:n}=t,{field:a,operator:s,value:l,valueSource:c}=e,d=c==="field"||c==="parameter",p=Ge(s==="="?"==":s),u=typeof l=="number"||typeof l=="boolean"||typeof l=="bigint"||Ae(l,o),f=Rt(e);if(f===!1)return"";if(f){const{mode:h,threshold:b}=f,g=t.subqueryDepth??0,y=il(g),v=rb(ao(e.value,{ruleProcessor:S=>({...S,field:`${y}${S.field?`.${S.field}`:""}`})}),{...t,subqueryDepth:g+1});switch(h){case"all":return`${a}.all(${y}, ${v})`;case"none":case"some":return`${h==="none"?"!":""}${a}.exists(${y}, ${v})`;case"atleast":case"atmost":case"exactly":{const S=`double(${a}.size())`,x=`${a}.filter(${y}, ${v}).size()`,w=h==="atleast"?">=":h==="atmost"?"<=":"==";return b>0&&b<1?`double(${x}) ${w} (${S} * ${b})`:`${x} ${w} ${b}`}}}switch(p){case"<":case"<=":case"==":case"!=":case">":case">=":return`${a} ${p} ${d||u?Ke(l):`"${Ko(l,r)}"`}`;case"contains":case"doesnotcontain":return`${cl(p)?"!":""}${a}.contains(${d?Ke(l):`"${Ko(l,r)}"`})`;case"beginswith":case"doesnotbeginwith":return`${cl(p)?"!":""}${a}.startsWith(${d?Ke(l):`"${Ko(l,r)}"`})`;case"endswith":case"doesnotendwith":return`${cl(p)?"!":""}${a}.endsWith(${d?Ke(l):`"${Ko(l,r)}"`})`;case"null":return`${a} == null`;case"notnull":return`${a} != null`;case"in":case"notin":{const[h,b]=cl(p)?["!(",")"]:["",""];return`${h}${a} in [${Ee(l).map(g=>d||Ae(g,o)?`${Ke(g)}`:`"${Ko(g,r)}"`).join(", ")}]${b}`}case"between":case"notbetween":{const h=Ee(l);if(h.length>=2&&!no(h[0])&&!no(h[1])){const[b,g]=h,y=o!==!1,v=Ae(b,y)?Le(b,{parseNumbers:y}):NaN,S=Ae(g,y)?Le(g,{parseNumbers:y}):NaN;let x=Number.isNaN(v)?d?`${b}`:`"${Ko(b,r)}"`:v,w=Number.isNaN(S)?d?`${g}`:`"${Ko(g,r)}"`:S;if(!n&&x===v&&w===S&&S<v){const N=S;w=v,x=N}return p==="between"?`(${a} >= ${x} && ${a} <= ${w})`:`(${a} < ${x} || ${a} > ${w})`}else return""}}return""},id={$and:[{$expr:!0}]},cd=(e,t,r)=>{const{context:o,fields:n,getParseNumberBoolean:a,placeholderFieldName:s,placeholderOperatorName:l,placeholderValueName:c,ruleProcessor:d,validateRule:p,validationMap:u}=t,{inExpressionContext:f}=o??{},h=(b,g)=>{if(!ze(b,u[b.id??""]))return g?id:!1;const y=`$${Ge(b.combinator)}`;let v=!1;const S=b.rules.map(w=>{if(ke(w)){const E=h(w);return E?(v=!0,E):!1}const[N,k]=p(w);if(!ze(w,N,k)||w.field===s||w.operator===l||c!==void 0&&w.value===c)return!1;const _=Xe(n,w.field);return d(w,{...t,parseNumbers:a(_==null?void 0:_.inputType),fieldData:_},r)}).filter(Boolean),x=S.length>0?S.length===1&&!v?S[0]:{[y]:S}:id;return b.not?f?{$not:x}:{$nor:[x]}:x};return h(kr(e),!0)},so=(e,t,r=!1)=>Ae(e,r||typeof e=="bigint")?Number(Le(e,{parseNumbers:"strict"})):t,dl=(e,t={})=>{const{field:r,operator:o,value:n,valueSource:a}=e,{parseNumbers:s,preserveValueOrder:l,context:c}=t,d=a==="field",{avoidFieldsAsKeys:p}=c??{},u=Rt(e);if(u===!1)return;if(u){const{mode:h,threshold:b}=u,g={$size:{$ifNull:[`$${r}`,[]]}},y=cd(ao(n,{ruleProcessor:x=>({...x,field:x.field?`${r}.${x.field}`:r})}),{...t,ruleProcessor:dl,context:{...t.context,avoidFieldsAsKeys:!1}}),v=cd(ao(n,{ruleProcessor:x=>({...x,field:x.field?`$item.${x.field}`:"$item"})}),{...t,ruleProcessor:dl,context:{...t.context,avoidFieldsAsKeys:!0,inExpressionContext:!0}}),S={$size:{$ifNull:[{$filter:{input:`$${r}`,as:"item",cond:{$and:[v]}}},[]]}};switch(h){case"all":return{$expr:{$eq:[S,g]}};case"none":return{$nor:[y]};case"some":return y;case"atleast":case"atmost":case"exactly":{const x=h==="atleast"?Qo[">="]:h==="atmost"?Qo["<="]:Qo["="];return b>0&&b<1?{$expr:{[x]:[S,{$multiply:[g,b]}]}}:{$expr:{[x]:[S,b]}}}}}if(o==="="&&!d)return p?{$eq:[`$${r}`,so(n,n,s)]}:{[r]:so(n,n,s)};const f=Ge(o);switch(f){case"<":case"<=":case"=":case"!=":case">":case">=":{const h=Qo[f];return d?{[h]:[`$${r}`,`$${n}`]}:p?{$and:[{$ne:[`$${r}`,null]},{[h]:[`$${r}`,so(n,n,s)]}]}:{[r]:{[h]:so(n,n,s)}}}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=Ee(n);return d?{$where:`${f==="notin"?"!":""}[${h.map(b=>`this.${b}`).join(",")}].includes(this.${r})`}:p?f==="notin"?{$not:{[Qo.in]:[`$${r}`,h.map(b=>so(b,b,s))]}}:{[Qo[f]]:[`$${r}`,h.map(b=>so(b,b,s))]}:{[r]:{[Qo[f]]:h.map(b=>so(b,b,s))}}}case"between":case"notbetween":{const h=Ee(n);if(h.length>=2&&wt(h[0])&&wt(h[1])){const[b,g]=h,y=so(b,NaN,!0),v=so(g,NaN,!0);let S=d||Number.isNaN(y)?b:y,x=d||Number.isNaN(v)?g:v;if(!l&&S===y&&x===v&&v<y){const w=v;x=y,S=w}return f==="between"?d?{$gte:[`$${r}`,`$${S}`],$lte:[`$${r}`,`$${x}`]}:p?{$and:[{$gte:[`$${r}`,S]},{$lte:[`$${r}`,x]}]}:{[r]:{$gte:S,$lte:x}}:d?{$or:[{$lt:[`$${r}`,`$${S}`]},{$gt:[`$${r}`,`$${x}`]}]}:p?{$or:[{$lt:[`$${r}`,S]},{$gt:[`$${r}`,x]}]}:{$or:[{[r]:{$lt:S}},{[r]:{$gt:x}}]}}else return""}}return""},NA=(e,t)=>{const r=dl(e,t);return r?JSON.stringify(r):""},ob=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:a,placeholderOperatorName:s,placeholderValueName:l,ruleProcessor:c,validateRule:d,validationMap:p}=t,u=(f,h)=>{if(!ze(f,p[f.id??""]))return h?o:"";const b=[];let g="",y=!0;for(const w of f.rules){if(typeof w=="string"){g=w;continue}if(ke(w)){const D=u(w);D&&(!y&&g&&(b.push(g),g=""),y=!1,b.push(D));continue}const[N,k]=d(w);if(!ze(w,N,k)||w.field===a||w.operator===s||l!==void 0&&w.value===l)continue;const _=Xe(r,w.field),E=c(w,{...t,parseNumbers:n(_==null?void 0:_.inputType),escapeQuotes:(w.valueSource??"value")==="value",fieldData:_});E&&(!y&&g&&(b.push(g),g=""),y=!1,b.push(E))}const v=b.join(Bt(f)?` ${f.combinator} `:" "),[S,x]=f.not||!h?[`${f.not?"!":""}(`,")"]:["",""];return v?`${S}${v}${x}`:o};return u(e,!0)},ul=e=>e.startsWith("not")||e.startsWith("doesnot"),dd=(e,t)=>t?`!(${e})`:e,Ro=(e,t)=>typeof e!="string"||!t?`${e}`:e.replaceAll("'","\\'"),EA=(e,t={})=>{const{field:r,operator:o,value:n,valueSource:a}=e,{escapeQuotes:s,parseNumbers:l,preserveValueOrder:c}=t,d=a==="field"||a==="parameter",p=Ge(o==="="?"==":o),u=typeof n=="number"||typeof n=="boolean"||typeof n=="bigint"||Ae(n,l),f=Rt(e);if(f===!1)return"";if(f){const{mode:h,threshold:b}=f,g=ob(ao(e.value,{ruleProcessor:S=>({...S,field:S.field||"#this"})}),t),y=`${r}.size()`,v=`${r}.?[${g}].size()`;switch(h){case"all":return`${v} == ${y}`;case"none":return`${v} == 0`;case"some":return`${v} >= 1`;case"atleast":case"atmost":case"exactly":{const S=h==="atleast"?">=":h==="atmost"?"<=":"==";return b>0&&b<1?`${v} ${S} (${y} * ${b})`:`${v} ${S} ${b}`}}}switch(p){case"<":case"<=":case"==":case"!=":case">":case">=":return`${r} ${p} ${d||u?Ke(n):`'${Ro(n,s)}'`}`;case"contains":case"doesnotcontain":{const h=d?`'.*'.concat(${Ke(n)}).concat('.*')`:`'.*${Ro(n,s)}.*'`;return dd(`${r} matches ${h}`,ul(p))}case"beginswith":case"doesnotbeginwith":{const h=d?`'^'.concat(${Ke(n)}).concat('.*')`:`'${typeof n=="string"&&!n.startsWith("^")||u?"^":""}${Ro(n,s)}.*'`;return dd(`${r} matches ${h}`,ul(p))}case"endswith":case"doesnotendwith":{const h=d?`'.*'.concat(${Ke(n)}).concat('$')`:`'.*${Ro(n,s)}${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)?"!":"",b=Ee(n);return b.length>0?`${h}(${b.map(g=>`${r} == ${d||Ae(g,l)?`${Ke(g)}`:`'${Ro(g,s)}'`}`).join(" or ")})`:""}case"between":case"notbetween":{const h=Ee(n);if(h.length>=2&&!no(h[0])&&!no(h[1])){const[b,g]=h,y=l!==!1,v=Ae(b,y)?Le(b,{parseNumbers:y}):NaN,S=Ae(g,y)?Le(g,{parseNumbers:y}):NaN;let x=Number.isNaN(v)?d?`${b}`:`'${Ro(b,s)}'`:v,w=Number.isNaN(S)?d?`${g}`:`'${Ro(g,s)}'`:S;if(!c&&x===v&&w===S&&S<v){const N=S;w=v,x=N}return p==="between"?`(${r} >= ${x} and ${r} <= ${w})`:`(${r} < ${x} or ${r} > ${w})`}else return""}}return""},kA=(e,t,r)=>r&&typeof e=="string"?e.replaceAll(`${t}`,`${t}${t}`):e,ca=({operator:e,value:t,valueSource:r},{escapeQuotes:o,parseNumbers:n,preserveValueOrder:a,quoteFieldNamesWith:s,quoteValuesWith:l,concatOperator:c="||",fieldIdentifierSeparator:d,paramPrefix:p,wrapValueWith:u=["",""],translations:f}={})=>{if(r==="parameter"){const N=Ge(e);if(N==="between"||N==="notbetween"){const _=Ee(t,{retainEmptyStrings:!0});if(_.length<2||!wt(_[0])||!wt(_[1]))return"";const[E,D]=_;return[ia(E,p),ia(D,p)].join(` ${(f==null?void 0:f.betweenAnd)??(f==null?void 0:f.and)??"and"} `)}if(N==="in"||N==="notin"){const _=Ee(t);return _.length===0?"":`(${_.map(E=>ia(E,p)).join(", ")})`}const k=ia(t,p);switch(N){case"contains":case"doesnotcontain":case"beginswith":case"doesnotbeginwith":case"endswith":case"doesnotendwith":return la(k,N,{concatOperator:c,quoteValuesWith:l,wrapValueWith:u})}return k}const h=r==="field",b=Ge(e),g=l||"'",y=N=>`${u[0]}${g}${N}${g}${u[1]}`,v=N=>kA(N,g,o),S=N=>y(v(N)),x=N=>En(N,{quoteFieldNamesWith:s,fieldIdentifierSeparator:d}),w={concatOperator:c,quoteValuesWith:l,wrapValueWith:u};switch(b){case"null":case"notnull":return"";case"in":case"notin":{const N=Ee(t);return N.length>0?`(${N.map(k=>h?x(k):Ae(k,n)?`${Ke(k)}`:`${S(k)}`).join(", ")})`:""}case"between":case"notbetween":{const N=Ee(t,{retainEmptyStrings:!0});if(N.length<2||!wt(N[0])||!wt(N[1]))return"";const[k,_]=N,E=Ae(k,n)?Le(k,{parseNumbers:"strict"}):NaN,D=Ae(_,n)?Le(_,{parseNumbers:"strict"}):NaN,T=Number.isNaN(E)?h?`${k}`:k:E,O=Number.isNaN(D)?h?`${_}`:_:D,$=[T,O];return!a&&T===E&&O===D&&D<E&&($[0]=D,$[1]=E),(h?$.map(V=>x(V)):$.every(V=>Ae(V,n))?$.map(V=>Le(V,{parseNumbers:"strict"})):$.map(V=>S(V))).join(` ${(f==null?void 0:f.betweenAnd)??(f==null?void 0:f.and)??"and"} `)}case"contains":case"doesnotcontain":return h?la(x(t),b,w):y(`%${v(t)}%`);case"beginswith":case"doesnotbeginwith":return h?la(x(t),b,w):y(`${v(t)}%`);case"endswith":case"doesnotendwith":return h?la(x(t),b,w):y(`%${v(t)}`)}return typeof t=="boolean"?t?"TRUE":"FALSE":h?x(t):Ae(t,n)?`${Ke(t)}`:`${S(t)}`},nb={and:"AND",or:"OR"},AA=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:a,placeholderOperatorName:s,placeholderValueName:l,ruleProcessor:c,validateRule:d,validationMap:p}=t,u=(f,h)=>{if(!ze(f,p[f.id??""]))return h?o:"";const b=[];let g="",y=!0;for(const w of f.rules){if(typeof w=="string"){g=nb[w];continue}if(ke(w)){const D=u(w);D&&(!y&&g&&(b.push(g),g=""),y=!1,b.push(D));continue}const[N,k]=d(w);if(!ze(w,N,k)||w.field===a||w.operator===s||l!==void 0&&w.value===l)continue;const _=Xe(r,w.field),E=c(w,{...t,parseNumbers:n(_==null?void 0:_.inputType),escapeQuotes:(w.valueSource??"value")==="value",fieldData:_});E&&(!y&&g&&(b.push(g),g=""),y=!1,b.push(E))}const v=b.join(Bt(f)?` ${nb[f.combinator]} `:" "),[S,x]=f.not||!h?[`${f.not?"NOT ":""}(`,")"]:["",""];return v?`${S}${v}${x}`:o};return u(e,!0)},ab=(e,t,r)=>(o,n)=>{const{fields:a,getParseNumberBoolean:s,placeholderFieldName:l,placeholderOperatorName:c,placeholderValueName:d,validateRule:p,validationMap:u,ruleProcessor:f}=t;if(!o||!n)return;const{and:h,not:b,or:g}=n,y=(v,S)=>{if(!ze(v,u[v.id??""]))return;const x=v.rules.map(N=>{if(ke(N))return y(N);const[k,_]=p(N);if(!ze(N,k,_)||N.field===l||N.operator===c||d!==void 0&&N.value===d)return;const E=Xe(a,N.field);return f(N,{...t,parseNumbers:s(E==null?void 0:E.inputType),fieldData:E,context:{...t.context,columns:o,drizzleOperators:n}})}).filter(Boolean);if(x.length===0)return;const w=v.combinator==="or"?g(...x):h(...x);return v.not?b(w):w};return y(kr(e))},sb=(e,t)=>{const{fields:r,getParseNumberBoolean:o,placeholderFieldName:n,placeholderOperatorName:a,placeholderValueName:s,ruleProcessor:l,validateRule:c,validationMap:d}=t,p=f=>{if(!ze(f,d[f.id??""]))return!1;const h=f.rules.map(b=>{if(ke(b))return p(b);const[g,y]=c(b);if(!ze(b,g,y)||b.field===n||b.operator===a||s!==void 0&&b.value===s)return!1;const v=Xe(r,b.field);return l(b,{...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(kr(e));return u===!1?{}:u},_A=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:a,placeholderOperatorName:s,placeholderValueName:l,ruleProcessor:c,validateRule:d,validationMap:p}=t,u=b=>{// v8 ignore next -- @preserve
|
|
182
|
+
if(typeof b=="string"||ke(b))return;const[g,y]=d(b);if(!ze(b,g,y)||b.field===a||b.operator===s||l!==void 0&&b.value===l)return;const v=Xe(r,b.field);return c(b,{...t,parseNumbers:n(v==null?void 0:v.inputType),escapeQuotes:(b.valueSource??"value")==="value",fieldData:v})},f=b=>{if(!ze(b,p[b.id??""]))return"";const g=[];for(const S of b.rules){if(typeof S=="string")continue;if(ke(S)){const w=f(S);w&&g.push(w);continue}const x=u(S);x&&g.push(x)}if(g.length===0)return"";const y=b.combinator??"and",v=b.not?"not":y;return g.length===1&&!b.not?g[0]:`.${v}(${g.map(S=>S.startsWith(".")?`__${S}`:S).join(", ")})`};if(!ze(e,p[e.id??""]))return o;const h=[];for(const b of e.rules){if(typeof b=="string")continue;if(ke(b)){const y=f(b);y&&h.push(y);continue}const g=u(b);g&&h.push(g)}return h.length===0?o:h.join("")},lb=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:a,placeholderOperatorName:s,placeholderValueName:l,ruleProcessor:c,validateRule:d,validationMap:p}=t,u=(f,h)=>{if(!ze(f,p[f.id??""]))return h?o:"";const b=[];let g="",y=!0;for(const w of f.rules){if(typeof w=="string"){g=w;continue}if(ke(w)){const D=u(w);D&&(!y&&g&&(b.push(g),g=""),y=!1,b.push(D));continue}const[N,k]=d(w);if(!ze(w,N,k)||w.field===a||w.operator===s||l!==void 0&&w.value===l)continue;const _=Xe(r,w.field),E=c(w,{...t,parseNumbers:n(_==null?void 0:_.inputType),escapeQuotes:(w.valueSource??"value")==="value",fieldData:_});E&&(!y&&g&&(b.push(g),g=""),y=!1,b.push(E))}const v=b.join(Bt(f)?` ${f.combinator} `:" "),[S,x]=f.not||!h?[`${f.not?"$not":""}(`,")"]:["",""];return v?`${S}${v}${x}`:o};return u(e,!0)},ud=(e,t)=>{const{fields:r,getParseNumberBoolean:o,placeholderFieldName:n,placeholderOperatorName:a,placeholderValueName:s,ruleProcessor:l,validateRule:c,validationMap:d}=t,p=kr(e),u=(f,h)=>{if(!ze(f,d[f.id??""]))return!1;const b=f.rules.map(y=>{if(ke(y))return u(y);const[v,S]=c(y);if(!ze(y,v,S)||y.field===n||y.operator===a||s!==void 0&&y.value===s)return!1;const x=Xe(r,y.field);return l(y,{...t,parseNumbers:o(x==null?void 0:x.inputType),fieldData:x})}).filter(Boolean);if(b.length===0)return!1;const g={[f.combinator]:b};return f.not?{"!":g}:g};return u(p)},TA=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:a,placeholderOperatorName:s,placeholderValueName:l,ruleProcessor:c,validateRule:d,validationMap:p}=t,u=(f,h)=>{if(!ze(f,p[f.id??""]))return h?o:"";const b=f.rules.map(w=>{if(ke(w))return u(w);const[N,k]=d(w);if(!ze(w,N,k)||w.field===a||w.operator===s||l!==void 0&&w.value===l)return"";const _=Xe(r,w.field);return c(w,{...t,parseNumbers:n(_==null?void 0:_.inputType),escapeQuotes:(w.valueSource??"value")==="value",fieldData:_})}).filter(Boolean),g=b.join(""),[y,v]=f.not?["(!",")"]:["",""],[S,x]=b.length>1?[`${y}(${f.combinator==="or"?"|":"&"}`,`)${v}`]:[y,v];return g?`${S}${g}${x}`:o};return u(kr(e),!0)},fd=e=>e.startsWith("{")&&e.endsWith("}"),DA=(e,t,r)=>{const{fields:o,fallbackExpression:n,getParseNumberBoolean:a,placeholderFieldName:s,placeholderOperatorName:l,placeholderValueName:c,ruleProcessor:d,validateRule:p,validationMap:u}=t,f=(b,g)=>{if(!ze(b,u[b.id??""]))return g?n:"";const y=`"$${Ge(b.combinator)}"`;let v=!1;const S=b.rules.map(w=>{if(ke(w)){const E=f(w);return E?(v=!0,fd(E)?E:`{${E}}`):""}const[N,k]=p(w);if(!ze(w,N,k)||w.field===s||w.operator===l||c!==void 0&&w.value===c)return"";const _=Xe(o,w.field);return d(w,{...t,parseNumbers:a(_==null?void 0:_.inputType),fieldData:_},r)}).filter(Boolean),x=S.length>0?S.length===1&&!v?S[0]:`${y}:[${S.join(",")}]`:n;return b.not?`"$nor":[${fd(x)?x:`{${x}}`}]`:x},h=f(kr(e),!0);return fd(h)?h:`{${h}}`},ib=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:a,placeholderOperatorName:s,placeholderValueName:l,ruleProcessor:c,translations:d,validateRule:p,validationMap:u}=t,f=(h,b)=>{if(!ze(h,u[h.id??""]))return b?o:"";const g=Cn(h)&&h.rules.some(O=>typeof O=="string"&&Ge(O)==="xor")?kr(h):h,y=[];let v="",S=!0;for(const O of g.rules){if(typeof O=="string"){v=`${d.ruleSeparator??", "}${d[O]??O} `;continue}if(ke(O)){const Y=f(O,g.rules.length===1&&!(g.not||/^xor$/i.test(g.combinator??"")));Y&&(!S&&v&&(y.push(v),v=""),S=!1,y.push(Y));continue}const[$,V]=p(O);if(!ze(O,$,V)||O.field===a||O.operator===s||l!==void 0&&O.value===l)continue;const G=(O.valueSource??"value")==="value",q=Xe(r,O.field),H=c(O,{...t,parseNumbers:n(q==null?void 0:q.inputType),escapeQuotes:G,fieldData:q});H&&(!S&&v&&(y.push(v),v=""),S=!1,y.push(H))}if(y.length===0)return o;const x=Ge(g.combinator??"")==="xor",w=x?g.combinator.slice(1):g.combinator,N=g.not||!b||x&&y.length>1,[k,_]=["groupPrefix","groupSuffix"].map(O=>g.not?x?ll(O,d,["not","xor"]):ll(O,d,["not"]):x?ll(O,d,["xor"]):ll(O,d)),E=N?`${k} (`.trim():"",D=N?`) ${_}`.trim():"",T=d.ruleSeparator??", ";return`${E}${y.join(Bt(g)?`${T}${d[w]??w} `:"")}${D}`};return f(e,!0)},cb=(e,t)=>{const{format:r,fields:o,fallbackExpression:n,getParseNumberBoolean:a,placeholderFieldName:s,placeholderOperatorName:l,placeholderValueName:c,ruleProcessor:d,validateRule:p,validationMap:u}=t,f=r==="parameterized",h=[],b={},g=new Map,y=x=>{g.has(x)||g.set(x,new Set);const w=`${x}_${g.get(x).size+1}`;return g.get(x).add(w),w},v=x=>{var O;const[w,N]=p(x);if(!ze(x,w,N)||x.field===s||x.operator===l||c!==void 0&&x.value===c)return"";const k=Xe(o,x.field),_=Object.fromEntries([...g.entries()].map(([$,V])=>[$,[...V]])),E=d(x,{...t,parseNumbers:a(k==null?void 0:k.inputType),getNextNamedParam:y,fieldParamNames:_,fieldData:k},{processedParams:h});if(!Er(E))return"";const{sql:D,params:T}=E;if(typeof D!="string"||!D)return"";if(r==="parameterized"&&Array.isArray(T))h.push(...T);else if(r==="parameterized_named"&&Er(T)){Object.assign(b,T);for(const $ of Object.keys(T))(O=g.get(x.field))==null||O.add($)}return D},S=(x,w)=>{if(!ze(x,u[x.id??""]))return w?n:"";const N=[];let k="",_=!0;for(const E of x.rules){if(typeof E=="string"){k=E;continue}if(ke(E)){const T=S(E,x.rules.length===1);T&&(!_&&k&&(N.push(k),k=""),_=!1,N.push(T));continue}const D=v(E);D&&(!_&&k&&(N.push(k),k=""),_=!1,N.push(D))}return N.length===0?n:`${x.not?"NOT ":""}(${N.join(Bt(x)?` ${x.combinator} `:" ")})`};return f?{sql:S(e,!0),params:h}:{sql:S(e,!0),params:b}},pd={},$A=(e,t)=>{const{fields:r,getParseNumberBoolean:o,placeholderFieldName:n,placeholderOperatorName:a,placeholderValueName:s,ruleProcessor:l,validateRule:c,validationMap:d}=t,p=(f,h)=>{if(!ze(f,d[f.id??""]))return h?pd:void 0;const b=f.combinator.toUpperCase();let g=!1;const y=f.rules.map(v=>{if(ke(v)){const N=p(v);return N?(g=!0,N):void 0}const[S,x]=c(v);if(!ze(v,S,x)||v.field===n||v.operator===a||s!==void 0&&v.value===s)return;const w=Xe(r,v.field);return l(v,{...t,parseNumbers:o(w==null?void 0:w.inputType),fieldData:w})}).filter(Boolean);return y.length>0?y.length===1&&!g?y[0]:{[b]:y}:pd},u=p(kr(e),!0);return e.not?{NOT:u}:u},PA=(e,t)=>{const{fields:r,getParseNumberBoolean:o,placeholderFieldName:n,placeholderOperatorName:a,placeholderValueName:s,ruleProcessor:l,validateRule:c,validationMap:d,context:p={}}=t,{sequelizeOperators:u}=p;if(!u)return;const f=(h,b)=>{if(!ze(h,d[h.id??""]))return;const g=h.combinator.toUpperCase();let y=!1;const v=h.rules.map(x=>{if(ke(x)){const _=f(x);return _?(y=!0,_):void 0}const[w,N]=c(x);if(!ze(x,w,N)||x.field===n||x.operator===a||s!==void 0&&x.value===s)return;const k=Xe(r,x.field);return l(x,{...t,parseNumbers:o(k==null?void 0:k.inputType),fieldData:k})}).filter(Boolean);if(v.length===0)return;const S=v.length===1&&!y?v[0]:{[Ge(g)==="or"?u.or:u.and]:v};return h.not?{[u.not]:S}:S};return f(kr(e))},MA=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:a,placeholderOperatorName:s,placeholderValueName:l,ruleProcessor:c,validateRule:d,validationMap:p}=t,u=(f,h)=>{if(!ze(f,p[f.id??""]))return h?o:"";const b=[];let g="",y=!0;for(const w of f.rules){if(typeof w=="string"){g=sl[w];continue}if(ke(w)){const D=u(w);D&&(!y&&g&&(b.push(g),g=""),y=!1,b.push(D));continue}const[N,k]=d(w);if(!ze(w,N,k)||w.field===a||w.operator===s||l!==void 0&&w.value===l)continue;const _=Xe(r,w.field),E=c(w,{...t,parseNumbers:n(_==null?void 0:_.inputType),escapeQuotes:(w.valueSource??"value")==="value",fieldData:_});E&&(!y&&g&&(b.push(g),g=""),y=!1,b.push(E))}const v=b.join(Bt(f)?` ${sl[f.combinator]} `:" "),[S,x]=f.not||!h?[`${f.not?"!":""}(`,")"]:["",""];return v?`${S}${v}${x}`:o};return u(e,!0)},db=(e,t)=>{const{fields:r,fallbackExpression:o,getParseNumberBoolean:n,placeholderFieldName:a,placeholderOperatorName:s,placeholderValueName:l,ruleProcessor:c,validateRule:d,validationMap:p}=t,u=(f,h)=>{if(!ze(f,p[f.id??""]))return h?o:"";const b=[];let g="",y=!0;for(const v of f.rules){if(typeof v=="string"){g=v;continue}if(ke(v)){const _=u(v,f.rules.length===1);_&&(!y&&g&&(b.push(g),g=""),y=!1,b.push(_));continue}const[S,x]=d(v);if(!ze(v,S,x)||v.field===a||v.operator===s||l!==void 0&&v.value===l)continue;const w=(v.valueSource??"value")==="value",N=Xe(r,v.field),k=c(v,{...t,parseNumbers:n(N==null?void 0:N.inputType),escapeQuotes:w,fieldData:N});k&&(!y&&g&&(b.push(g),g=""),y=!1,b.push(k))}return b.length===0?o:`${f.not?"NOT ":""}(${b.join(Bt(f)?` ${f.combinator} `:" ")})`};return u(e,!0)},OA=(e,t)=>r=>{const{fields:o,getParseNumberBoolean:n,placeholderFieldName:a,placeholderOperatorName:s,placeholderValueName:l,validateRule:c,validationMap:d,context:p={},ruleProcessor:u}=t,f=p.tanStackDbOperators;if(!f)return;const{and:h,eq:b,not:g,or:y}=f,v=b(1,1),S=Object.keys(r);/* v8 ignore next -- @preserve */if(S.length===0)return v;const x=w=>{if(!ze(w,d[w.id??""]))return;const N=w.rules.map(_=>{if(ke(_))return x(_);const[E,D]=c(_);if(!ze(_,E,D)||_.field===a||_.operator===s||l!==void 0&&_.value===l)return;const T=Xe(o,_.field);return u(_,{...t,parseNumbers:n(T==null?void 0:T.inputType),fieldData:T,context:{...p,_tanstackDbRefs:r,_tanstackDbPrimaryRef:S[0]}})}).filter(Boolean);if(N.length===0)return v;const k=N.length===1?N[0]:w.combinator==="or"?y(...N):h(...N);return w.not?g(k):k};return x(kr(e))??v},IA=new Set(["number","range","bigint"]),ub=/^\d{4}-\d{2}-\d{2}$/,fb=/^\d{2}:\d{2}(:\d{2}(\.\d+)?)?$/,LA=/^\d{4}-\d{2}$/,FA=/^\d{4}-W\d{2}$/,VA=/^#([0-9a-f]{3}|[0-9a-f]{6})$/i,GA=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,pb=(e,t,r)=>{const o=new Date(Date.UTC(e,t-1,r));return o.getUTCFullYear()===e&&o.getUTCMonth()===t-1&&o.getUTCDate()===r},hb=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},zA=(e,t)=>{if(!(e==null||e==="")){if(IA.has(t)){const r=typeof e=="string"?e.trim():e;return typeof r=="number"||typeof r=="bigint"||typeof r=="string"&&zm.test(r)?void 0:"VALUE_TYPE_MISMATCH"}if(t==="date"){if(typeof e!="string")return"VALUE_TYPE_MISMATCH";const r=e.trim();if(!ub.test(r))return"VALUE_TYPE_MISMATCH";const[o,n,a]=r.split("-").map(Number);return pb(o,n,a)?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),a=r.slice(o+1);if(!ub.test(n)||!fb.test(a))return"VALUE_TYPE_MISMATCH";const[s,l,c]=n.split("-").map(Number);return pb(s,l,c)&&hb(a)?void 0:"VALUE_TYPE_MISMATCH"}if(t==="time"){if(typeof e!="string")return"VALUE_TYPE_MISMATCH";const r=e.trim();return fb.test(r)&&hb(r)?void 0:"VALUE_TYPE_MISMATCH"}if(t==="month"){if(typeof e!="string")return"VALUE_TYPE_MISMATCH";const r=e.trim();if(!LA.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(!FA.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":VA.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":GA.test(e.trim())?void 0:"VALUE_TYPE_MISMATCH"}},BA=(e,t)=>{const{fields:r,placeholderFieldName:o,placeholderOperatorName:n,placeholderValueName:a,validateRule:s,validationMap:l}=t,c=[],d={totalRules:0,totalGroups:0,validRules:0,invalidRules:0,validGroups:0,invalidGroups:0},p={},u=nd(r),f=new Map;for(const y of u)f.set(y.name,y);const h=f.size>0,b=(y,v)=>{d.totalGroups++;const S=v.length,x=l[y.id??""],w=ze(y,x),N=mb(x);y.muted?c.push({id:y.id??"",path:v,code:"MUTED",message:"Group is muted",source:"muted"}):!w&&x!==void 0&&c.push({id:y.id??"",path:v,code:"CUSTOM_VALIDATOR",message:N?`Invalid: ${N.join(", ")}`:"Group failed validation",source:"query-validator"});let k=!0,_=0;const E=[];for(const T of y.rules){if(typeof T=="string"){E.push(T),_++;continue}const O=[...v,_];if(ke(T)){const W=b(T,O);W.valid||(k=!1),E.push(W),_++;continue}d.totalRules++;const $=O.length,[V,G]=s(T),q=ze(T,V,G)&&T.field!==o&&T.operator!==n&&!(a!==void 0&&T.value===a);UA(T,O,V,G,q,c,o,n,a,h,f),q?d.validRules++:(k=!1,d.invalidRules++);const H=T.field;p[H]||(p[H]={ruleCount:0,invalidCount:0}),p[H].ruleCount++,q||p[H].invalidCount++;const Y=mb(V)??WA(T,G),J={...T,valid:q,...Y?{reasons:Y}:null,path:O,level:$};E.push(J),_++}const D=w&&k;return D?d.validGroups++:d.invalidGroups++,Bt(y)?{...y,valid:D,...N?{reasons:N}:null,path:v,level:S,rules:E}:{...y,valid:D,...N?{reasons:N}:null,path:v,level:S,rules:E}},g=b(e,[]);if(h){const y=new Set(Object.keys(p));for(const[v]of f)y.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:g,diagnostics:c,stats:d,fieldSummary:p}},UA=(e,t,r,o,n,a,s,l,c,d,p)=>{const u=e.id??"";if(e.muted&&a.push({id:u,path:t,code:"MUTED",message:"Rule is muted",source:"muted"}),e.field===s&&a.push({id:u,path:t,code:"PLACEHOLDER_FIELD",message:"Rule has a placeholder field",source:"placeholder"}),e.operator===l&&a.push({id:u,path:t,code:"PLACEHOLDER_OPERATOR",message:"Rule has a placeholder operator",source:"placeholder"}),c!==void 0&&e.value===c&&a.push({id:u,path:t,code:"PLACEHOLDER_VALUE",message:"Rule has a placeholder value",source:"placeholder"}),!e.muted&&e.field!==s&&e.operator!==l&&!(c!==void 0&&e.value===c)){if(typeof r=="boolean"&&!r)a.push({id:u,path:t,code:"CUSTOM_VALIDATOR",message:"Rule failed validation",source:"query-validator"});else if(typeof r!="boolean"&&Nn(r)&&!r.valid){const f=r.reasons;a.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"&&Nn(f)&&!f.valid?f.reasons:void 0;a.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!==s&&a.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=zA(e.value,f.inputType);h&&a.push({id:u,path:t,code:h,message:`Value "${e.value}" is not compatible with input type "${f.inputType}"`,source:"type-check"})}}},mb=e=>{if(typeof e!="boolean"&&Nn(e)&&!e.valid&&e.reasons)return e.reasons},WA=(e,t)=>{if(typeof t=="function"){const r=t(e);if(typeof r!="boolean"&&Nn(r)&&!r.valid&&r.reasons)return r.reasons}},HA=(e,t)=>typeof e!="string"||!t?`${e}`:e.replaceAll("'","\\'"),bb=(e,t={})=>{const{escapeQuotes:r,parseNumbers:o}=t,{field:n,operator:a,value:s,valueSource:l}=e,c=l==="field",d=a.toLowerCase(),p=u=>u==null?"null":typeof u=="boolean"||typeof u=="bigint"?String(u):c||typeof u=="number"||Ae(u,o)?Ke(u):`'${HA(u,r)}'`;switch(d){case"=":return`${n} = ${p(s)}`;case"!=":case"<>":return`${n} <> ${p(s)}`;case"<":case">":case"<=":case">=":return`${n} ${d} ${p(s)}`;case"contains":return`${n} CONTAINS ${p(s)}`;case"doesnotcontain":return`NOT ${n} CONTAINS ${p(s)}`;case"beginswith":return`${n} STARTS WITH ${p(s)}`;case"doesnotbeginwith":return`NOT ${n} STARTS WITH ${p(s)}`;case"endswith":return`${n} ENDS WITH ${p(s)}`;case"doesnotendwith":return`NOT ${n} ENDS WITH ${p(s)}`;case"null":return`${n} IS NULL`;case"notnull":return`${n} IS NOT NULL`;case"in":case"notin":{const u=Ee(s).map(p);return u.length?`${d==="notin"?"NOT ":""}${n} IN [${u.join(", ")}]`:""}case"between":case"notbetween":{const u=Ee(s);if(u.length<2)return"";const[f,h]=[p(u[0]),p(u[1])],b=`${f} <= ${n} AND ${n} <= ${h}`;return d==="notbetween"?`NOT (${b})`:b}default:return`${n} ${a} ${p(s)}`}},jA=(e,t)=>{const r=t??{},{parseNumbers:o,preserveValueOrder:n,context:a={}}=r,{columns:s,drizzleOperators:l,useRawFields:c}=a;if(!s||!l)return;const{between:d,eq:p,gt:u,gte:f,inArray:h,isNotNull:b,isNull:g,like:y,lt:v,lte:S,ne:x,notBetween:w,notInArray:N,notLike:k,sql:_}=l,{field:E,operator:D,value:T,valueSource:O}=e,$=c&&/^[a-z_][a-z0-9_.]*$/i.test(E)?_.raw(E):s[E],V=Ge(D),G=O==="field",q=J=>G?s[J]:J,H=J=>G||!o?q(J):Ae(J,!0)?Le(J,{parseNumbers:!0}):J;if(!$)return;const Y=Rt(e);if(Y!==!1){if(Y){if(r.preset!=="postgresql")return;const{mode:J,threshold:W}=Y,R=r.subqueryDepth??0,we=il(R),Q=ab(ao(e.value,{ruleProcessor:te=>({...te,field:we})}),{...r,context:{...r.context,useRawFields:!0},subqueryDepth:R+1});switch(J){case"all":return _`(select count(*) from unnest(${$}) as ${_.raw(we)} where ${Q({},l)}) = array_length(${$}, 1)`;case"none":return _`not exists (select 1 from unnest(${$}) as ${_.raw(we)} where ${Q({},l)})`;case"some":return _`exists (select 1 from unnest(${$}) as ${_.raw(we)} where ${Q({},l)})`;case"atleast":case"atmost":case"exactly":{const te=J==="atleast"?">=":J==="atmost"?"<=":"=";return W>0&&W<1?_`(select count(*)::float / array_length(${$}, 1) from unnest(${$}) as ${_.raw(we)} where ${Q({},l)}) ${_.raw(`${te} ${W}`)}`:_`(select count(*) from unnest(${$}) as ${_.raw(we)} where ${Q({},l)}) ${_.raw(`${te} ${W}`)}`}}}switch(V){case"=":return p($,H(T));case"!=":return x($,H(T));case">":return u($,H(T));case"<":return v($,H(T));case">=":return f($,H(T));case"<=":return S($,H(T));case"beginswith":case"doesnotbeginwith":return(V==="doesnotbeginwith"?k:y)($,G?_`${q(T)} || '%'`:`${T}%`);case"contains":case"doesnotcontain":return(V==="doesnotcontain"?k:y)($,G?_`'%' || ${q(T)} || '%'`:`%${T}%`);case"endswith":case"doesnotendwith":return(V==="doesnotendwith"?k:y)($,G?_`'%' || ${q(T)}`:`%${T}`);case"null":return g($);case"notnull":return b($);case"in":case"notin":{const J=Ee(T).map(W=>H(W));return V==="notin"?N($,J):h($,J)}case"between":case"notbetween":{const J=Ee(T);if(J.length>=2&&wt(J[0])&&wt(J[1])){let[W,R]=J;const we=o!==!1;if(!G&&Ae(W,we)&&Ae(R,we)){const Q=Le(W,{parseNumbers:we}),te=Le(R,{parseNumbers:we});if(!n&&te<Q){const De=te;R=Q,W=De}else W=Q,R=te}else G&&(W=q(W),R=q(R));return V==="notbetween"?w($,W,R):d($,W,R)}return}default:return}}},qA={"<":"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"),YA={beginswith:"startsWith",doesnotbeginwith:"startsWith",doesnotcontain:"contains",doesnotendwith:"endsWith",endswith:"endsWith"},QA=(e,t,r)=>{const o=`doc['${e}'].value.${YA[t]??t}(doc['${r}'].value)`;return t.startsWith("d")?`!${o}`:o},da=(e,t)=>typeof e=="boolean"?e:Ae(e,t)?Le(e,{parseNumbers:t}):e,KA=(e,t={})=>{const{field:r,operator:o,value:n,valueSource:a}=e,{parseNumbers:s,preserveValueOrder:l}=t,c=Ge(o),d=Rt(e);if(d===!1)return!1;if(d){const{mode:p}=d,u=sb(ao(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(a==="field"){if(Ee(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=Ee(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=Ee(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:QA(p,c,u)}}}}:!1}}}switch(c){case"<":case"<=":case">":case">=":return{range:{[r]:{[qA[c]]:da(n,s)}}};case"=":return{term:{[r]:da(n,s)}};case"!=":return{bool:{must_not:{term:{[r]:da(n,s)}}}};case"null":return{bool:{must_not:{exists:{field:r}}}};case"notnull":return{exists:{field:r}};case"in":case"notin":{const p=Ee(n).map(u=>da(u,s));if(p.length>0){const u=p.map(f=>({term:{[r]:da(f,s)}}));return{bool:c==="in"?{should:u}:{must_not:u}}}return!1}case"between":case"notbetween":{const p=Ee(n);if(p.length>=2&&wt(p[0])&&wt(p[1])){let[u,f]=p;const h=s!==!1;if(Ae(u,h)&&Ae(f,h)){const b=Le(u,{parseNumbers:h}),g=Le(f,{parseNumbers:h});if(!l&&g<b){const y=g;f=b,u=y}else u=b,f=g}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},RA=(e,t)=>typeof e!="string"||!t?`${e}`:e.replaceAll("'","\\'"),XA=(e,t={})=>{const{escapeQuotes:r,parseNumbers:o}=t,{field:n,operator:a,value:s,valueSource:l}=e,c=l==="field",d=a.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"||Ae(f,o)?Ke(f):`'${RA(f,r)}'`;switch(d){case"=":return`.has('${p}', ${u(s)})`;case"!=":case"<>":return`.has('${p}', neq(${u(s)}))`;case"<":return`.has('${p}', lt(${u(s)}))`;case">":return`.has('${p}', gt(${u(s)}))`;case"<=":return`.has('${p}', lte(${u(s)}))`;case">=":return`.has('${p}', gte(${u(s)}))`;case"contains":return`.has('${p}', containing(${u(s)}))`;case"doesnotcontain":return`.has('${p}', notContaining(${u(s)}))`;case"beginswith":return`.has('${p}', startingWith(${u(s)}))`;case"doesnotbeginwith":return`.has('${p}', notStartingWith(${u(s)}))`;case"endswith":return`.has('${p}', endingWith(${u(s)}))`;case"doesnotendwith":return`.has('${p}', notEndingWith(${u(s)}))`;case"null":return`.hasNot('${p}')`;case"notnull":return`.has('${p}')`;case"in":{const f=Ee(s).map(u);return f.length?`.has('${p}', within(${f.join(", ")}))`:""}case"notin":{const f=Ee(s).map(u);return f.length?`.has('${p}', without(${f.join(", ")}))`:""}case"between":{const f=Ee(s);return f.length<2?"":`.has('${p}', between(${u(f[0])}, ${u(f[1])}))`}case"notbetween":{const f=Ee(s);return f.length<2?"":`.has('${p}', outside(${u(f[0])}, ${u(f[1])}))`}default:return`.has('${p}', ${u(s)})`}},pl=e=>e.startsWith("not")||e.startsWith("doesnot"),hl=(e,t)=>`"${typeof e!="string"||!t?`${e}`:e.replaceAll('"','\\"')}"`,ua=(e,t)=>t?`$not(${e})`:e,gb=e=>`${e}`.replaceAll(/[/$()*+.?[\\\]^{|}]/g,String.raw`\$&`).replaceAll("-",String.raw`\x2d`),JA=(e,t={})=>{const{field:r,operator:o,value:n,valueSource:a}=e,{escapeQuotes:s,parseNumbers:l,preserveValueOrder:c,quoteFieldNamesWith:d=["",""],fieldIdentifierSeparator:p=""}=t,u=a==="field",f=typeof n=="number"||typeof n=="boolean"||typeof n=="bigint"||Ae(n,l),h=y=>En(y,{quoteFieldNamesWith:d,fieldIdentifierSeparator:p}),b=Rt(e);if(b===!1)return;if(b){const{mode:y,threshold:v}=b,S=`$count(${h(r)})`,x=`$count($filter(${h(r)}, function($v) {${lb(ao(n,{ruleProcessor:w=>({...w,field:w.field?`$v.${w.field}`:"$v"})}),t)}}))`;switch(y){case"all":return`${x} = ${S}`;case"none":return`${x} = 0`;case"some":return`${x} > 0`;case"atleast":case"atmost":case"exactly":{const w=y==="atleast"?">=":y==="atmost"?"<=":"=";return v>0&&v<1?`${x} ${w} (${S} * ${v})`:`${x} ${w} ${v}`}}}const g=Ge(o);switch(g){case"<":case"<=":case"=":case"!=":case">":case">=":return`${h(r)} ${g} ${u?h(Ke(n)):f?Ke(n):hl(n,s)}`;case"contains":case"doesnotcontain":return ua(`$contains(${h(r)}, ${u?h(Ke(n)):hl(n,s)})`,pl(g));case"beginswith":case"doesnotbeginwith":return ua(u?`$substring(${h(r)}, 0, $length(${h(Ke(n))})) = ${h(Ke(n))}`:`$contains(${h(r)}, /^${gb(n)}/)`,pl(g));case"endswith":case"doesnotendwith":return ua(u?`$substring(${h(r)}, $length(${h(r)}) - $length(${h(Ke(n))})) = ${h(Ke(n))}`:`$contains(${h(r)}, /${gb(n)}$/)`,pl(g));case"null":return`${h(r)} = null`;case"notnull":return`${h(r)} != null`;case"in":case"notin":{const y=Ee(n);return ua(`${h(r)} in [${y.map(v=>u?`${h(Ke(v))}`:Ae(v,l)?`${Ke(v)}`:hl(v,s)).join(", ")}]`,pl(g))}case"between":case"notbetween":{const y=Ee(n);if(y.length<2||no(y[0])||no(y[1]))return"";const[v,S]=y,x=l!==!1,w=Ae(v,x)?Le(v,{parseNumbers:x}):NaN,N=Ae(S,x)?Le(S,{parseNumbers:x}):NaN;let k=Number.isNaN(w)?u?`${v}`:v:w,_=Number.isNaN(N)?u?`${S}`:S:N;if(!c&&k===w&&_===N&&N<w){const O=N;_=w,k=O}const E=Ae(v,l)&&Ae(S,l),D=(O,$)=>u?h(O):E?$:hl($,s),T=`${h(r)} >= ${D(v,k)} and ${h(r)} <= ${D(S,_)}`;return g==="between"?`(${T})`:ua(T,!0)}}return""},ZA=e=>e.replace(/^(=)$/,"$1=").replace(/^notnull$/i,"!=").replace(/^null$/i,"=="),fa=(e,t)=>e.startsWith("not")||e.startsWith("doesnot")?{"!":t}:t,md=(e,t={})=>{const{field:r,operator:o,value:n,valueSource:a}=e,{parseNumbers:s,preserveValueOrder:l}=t,c=a==="field",d={var:r},p=h=>c?{var:`${h}`}:Ae(h,s)?Le(h,{parseNumbers:s}):h,u=Rt(e);if(u===!1)return!1;if(u){const{mode:h,threshold:b}=u;switch(h){case"all":case"none":case"some":return{[h]:[{var:r},n.rules.length===1&&!ke(n.rules[0])?md(n.rules[0],t):ud(n,t)]};case"atleast":case"atmost":case"exactly":{const g=h==="atleast"?">=":h==="atmost"?"<=":"==",y={reduce:[{filter:[{var:r},n.rules.length===1&&!ke(n.rules[0])?md(n.rules[0],t):ud(n,t)]},{"+":[1,{var:"accumulator"}]},0]};if(b>0&&b<1){const v={reduce:[{var:r},{"+":[1,{var:"accumulator"}]},0]};return{[g]:[y,{"*":[v,b]}]}}return{[g]:[y,b]}}}}const f=Ge(o);switch(f){case"<":case"<=":case"=":case"!=":case">":case">=":return{[ZA(f)]:[d,p(n)]};case"null":case"notnull":return{[`${f==="notnull"?"!":"="}=`]:[d,null]};case"in":case"notin":{const h=Ee(n).map(b=>p(b));return fa(f,{in:[d,h]})}case"between":case"notbetween":{const h=Ee(n);if(h.length>=2&&wt(h[0])&&wt(h[1])){let[b,g]=h;const y=s!==!1;if(!c&&Ae(b,y)&&Ae(g,y)){const v=Le(b,{parseNumbers:y}),S=Le(g,{parseNumbers:y});if(!l&&S<v){const x=S;g=v,b=x}else b=v,g=S}else c&&(b={var:b},g={var:g});return fa(f,{"<=":[b,d,g]})}return!1}case"contains":case"doesnotcontain":{const h={in:[p(n),d]};return fa(f,h)}case"beginswith":case"doesnotbeginwith":{const h={startsWith:[d,p(n)]};return fa(f,h)}case"endswith":case"doesnotendwith":{const h={endsWith:[d,p(n)]};return fa(f,h)}}return!1},Xo=(e,t)=>t?`(!${e})`:`${e}`,lo=e=>`${Ke(e)}`.replaceAll(/[()&|=<>~*\\/]/g,t=>`\\${t.codePointAt(0).toString(16)}`),e_=(e,t={})=>{const{field:r,operator:o,value:n,valueSource:a}=e,{preserveValueOrder:s}=t,l=Ge(o);if(a==="field"||no(n)&&l!=="null"&&l!=="notnull"||Rt(e))return"";switch(l){case"=":case"!=":return Xo(`(${r}=${lo(n)})`,l==="!=");case">":case">=":return`(${r}>=${lo(n)})`;case"<":case"<=":return`(${r}<=${lo(n)})`;case"contains":case"doesnotcontain":return Xo(`(${r}=*${lo(n)}*)`,l==="doesnotcontain");case"beginswith":case"doesnotbeginwith":return Xo(`(${r}=${lo(n)}*)`,l==="doesnotbeginwith");case"endswith":case"doesnotendwith":return Xo(`(${r}=*${lo(n)})`,l==="doesnotendwith");case"null":case"notnull":return Xo(`(${r}=*)`,l==="notnull");case"in":case"notin":{const c=Ee(n);return Xo(`(|${c.map(d=>`(${r}=${lo(d)})`).join("")})`,l==="notin")}case"between":case"notbetween":{const c=Ee(n);if(c.length<2||no(c[0])||no(c[1]))return"";const[d,p]=c,u=Ae(d,!0)?Le(d,{parseNumbers:!0}):NaN,f=Ae(p,!0)?Le(p,{parseNumbers:!0}):NaN;let h=Number.isNaN(u)?d:u,b=Number.isNaN(f)?p:f;if(!s&&h===u&&b===f&&f<u){const g=f;b=u,h=g}return Xo(`(&(${r}>=${lo(h)})(${r}<=${lo(b)}))`,l==="notbetween")}}return""},t_=(e,t,r)=>r&&typeof e=="string"?e.replaceAll(`${t}`,`${t}${t}`):e,yb=(e,t={})=>{var k;const{escapeQuotes:r,fields:o,parseNumbers:n,quoteFieldNamesWith:a,quoteValuesWith:s,fieldIdentifierSeparator:l,translations:c}=t,d=e.valueSource==="field",p=Ge(e.operator),u=s||"'",f=_=>`${u}${_}${u}`,h=_=>t_(_,u,r),b=_=>f(h(_)),g=_=>En(_,{quoteFieldNamesWith:a,fieldIdentifierSeparator:l}),y=c??{},v=y.or??"or",S=y.true??"true",x=y.false??"false",w=y.listSeparator??", ",N=!y.listSeparator;switch(p){case"null":case"notnull":return"";case"between":case"notbetween":{if(!d)return ca(e,t);const _=Ee(e.value,{retainEmptyStrings:!0}).slice(0,2).map(E=>{var D;return g(((D=Xe(o??[],E))==null?void 0:D.label)??E)});return _.length<2||!wt(_[0])||!wt(_[1])?"":ca({...e,value:_},t)}case"in":case"notin":{const _=Ee(e.value);if(_.length===0)return"";const E=_.map(T=>{var O;return d?g(((O=Xe(o??[],T))==null?void 0:O.label)??T):Ae(T,n)?`${Ke(T)}`:`${b(T)}`});if(E.length===1)return E[0];const D=N&&E.length>2?",":"";return`(${`${E.slice(0,-1).join(w)}${D} ${v} ${E.at(-1)}`})`}}return typeof e.value=="boolean"?e.value?S:x:d?g(((k=Xe(o??[],e.value))==null?void 0:k.label)??e.value):Ae(e.value,n)?`${Ke(e.value)}`:`${b(e.value)}`},vb={"=":["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 r_=()=>[],wb=(e,t={})=>{const{field:r,operator:o,valueSource:n="value"}=e,{getOperators:a=r_,operatorMap:s=vb}=t,l=new Map(Object.entries(vb));for(const[g,y]of Object.entries(s))l.set(Ge(g),y);const c=Object.fromEntries(l),d=Ge(o);var p=o;const u=Ee(e.value).length===1;d==="in"&&u?p="=":d==="notin"&&u&&(p="!=");const{value:f,label:h}=Xe(Ur(a(r,{fieldData:t.fieldData??{name:r,value:r,label:r}})??[]),p)??{value:p,label:p},b=c[f]??c[Ge(f)]??[h,h];return typeof b=="string"?b:b[n==="field"?1:0]},o_=(e,t)=>{var w;const{field:r,operator:o}=e,{fieldData:n,quoteFieldNamesWith:a=["",""],fieldIdentifierSeparator:s="",quoteValuesWith:l="'",operatorProcessor:c=wb,valueProcessor:d=yb,concatOperator:p="||",wordOrder:u="SVO"}=t??{},f=En((n==null?void 0:n.label)??r,{quoteFieldNamesWith:a,fieldIdentifierSeparator:s}),h=Rt(e);if(h===!1)return"";if(h){const{mode:N,threshold:k}=h,_=ib(e.value,{...t,fields:Ur((n==null?void 0:n.subproperties)??[])}),E=(((w=n==null?void 0:n.subproperties)==null?void 0:w.length)??0)>0;switch(N){case"all":return`(${E?"for ":""}every item in ${f}${E?",":""} ${_})`;case"none":return`(${E?"for ":""}no item in ${f}${E?",":""} ${_})`;case"some":return`(${E?"for ":""}at least one item in ${f}${E?",":""} ${_})`;case"atleast":case"atmost":case"exactly":{const D=N.replace("at","at ");return k>0&&k<1?`(${E?"for ":""}${D} ${k*100}% of the items in ${f}${E?",":""} ${_})`:`(${E?"for ":""}${D} ${k} of the items in ${f}${E?",":""} ${_})`}}}const b=d(e,{...t,quoteFieldNamesWith:a,fieldIdentifierSeparator:s,quoteValuesWith:l,concatOperator:p}),g=Ge(o);if((g==="in"||g==="notin"||g==="between"||g==="notbetween")&&!b)return"";const y={S:f,V:c(e,t),O:b},v=(t==null?void 0:t.translations)??{},S={S:v.afterSubject??" ",V:v.afterVerb??" ",O:v.afterObject??" "},x=CA(u).filter(N=>y[N]!=="");return x.map((N,k)=>`${y[N]}${k<x.length-1?S[N]:""}`).join("").trim()},pa=e=>Ge(yA(e.operator)),ha=(e,t={})=>{const{quoteFieldNamesWith:r=["",""],fieldIdentifierSeparator:o="",quoteValuesWith:n="'",operatorProcessor:a=pa,valueProcessor:s=ca,concatOperator:l="||"}=t,c=b=>En(b,{quoteFieldNamesWith:r,fieldIdentifierSeparator:o}),d=c(e.field),p=Rt(e);if(p===!1)return;if(p){if((t==null?void 0:t.preset)!=="postgresql")return"";const{mode:b,threshold:g}=p,y=t.subqueryDepth??0,v=il(y),S=db(ao(e.value,{ruleProcessor:x=>({...x,field:v})}),{...t,subqueryDepth:y+1});switch(b){case"all":return`(select count(*) from unnest(${d}) as ${c(v)} where ${S}) = array_length(${d}, 1)`;case"none":return`not exists (select 1 from unnest(${d}) as ${c(v)} where ${S})`;case"some":return`exists (select 1 from unnest(${d}) as ${c(v)} where ${S})`;case"atleast":case"atmost":case"exactly":{const x=b==="atleast"?">=":b==="atmost"?"<=":"=";return`(select count(*)${g>0&&g<1?`::float / array_length(${d}, 1)`:""} from unnest(${d}) as ${c(v)} where ${S}) ${x} ${g}`}}}const u=s(e,{...t,quoteFieldNamesWith:r,fieldIdentifierSeparator:o,quoteValuesWith:n,concatOperator:l}),f=a(e,t),h=Ge(f);return(h==="in"||h==="not in"||h==="between"||h==="not between")&&!u?"":`${d} ${f} ${u}`.trim()},xb=(e,t,r)=>{const{fieldData:o,format:n,getNextNamedParam:a,parseNumbers:s,paramPrefix:l,paramsKeepPrefix:c,numberedParams:d,quoteFieldNamesWith:p=["",""],fieldIdentifierSeparator:u,concatOperator:f,operatorProcessor:h=pa,valueProcessor:b=ca}=t??{},{processedParams:g=[]}=r??{},y=n==="parameterized",v=[],S={},x=G=>y?{sql:G,params:v}:{sql:G,params:S},w=G=>En(G,{quoteFieldNamesWith:p,fieldIdentifierSeparator:u}),N=w(e.field),k=Rt(e);/* v8 ignore start -- @preserve */if(k===!1)return;if(k){if((t==null?void 0:t.preset)!=="postgresql")return x("");const{mode:G,threshold:q}=k,H=t.subqueryDepth??0,Y=il(H),{sql:J,params:W}=cb(ao(e.value,{ruleProcessor:R=>({...R,field:Y})}),{...t,fields:[],subqueryDepth:H+1});switch(Array.isArray(W)?v.push(...W):Object.assign(S,W),G){case"all":return x(`(select count(*) from unnest(${N}) as ${w(Y)} where ${J}) = array_length(${N}, 1)`);case"none":return x(`not exists (select 1 from unnest(${N}) as ${w(Y)} where ${J})`);case"some":return x(`exists (select 1 from unnest(${N}) as ${w(Y)} where ${J})`);case"atleast":case"atmost":case"exactly":{const R=G==="atleast"?">=":G==="atmost"?"<=":"=";return x(`(select count(*)${q>0&&q<1?`::float / array_length(${N}, 1)`:""} from unnest(${N}) as ${w(Y)} where ${J}) ${R} ${q}`)}}}/* v8 ignore stop -- @preserve */const _=b(e,{parseNumbers:s,quoteFieldNamesWith:p,concatOperator:f,fieldData:o,format:n}),E=h(e,t),D=Ge(E),[T,O]=p;if((D==="in"||D==="not in"||D==="between"||D==="not between")&&!_)return x("");if(D==="is null"||D==="is not null")return x(`${T}${e.field}${O} ${E}`);if(e.valueSource==="parameter"){const G=q=>{const H=ia(q,l);return y||(S[c?H:sd(q,l)]=null),H};if(D==="between"||D==="not between"){const[q,H]=Ee(e.value,{retainEmptyStrings:!0}).slice(0,2);return x(`${T}${e.field}${O} ${E} ${G(q)} and ${G(H)}`.trim())}if(D==="in"||D==="not in"){const q=Ee(e.value);return x(`${T}${e.field}${O} ${E} (${q.map(H=>G(H)).join(", ")})`)}return x(`${T}${e.field}${O} ${E} ${la(G(e.value),Ge(e.operator),{concatOperator:f})}`.trim())}else{if(e.valueSource==="field")return x(`${T}${e.field}${O} ${E} ${_}`.trim());if(D==="in"||D==="not in"){const G=Ee(e.value);if(y){for(const H of G)v.push(Ae(H,s)?Le(H,{parseNumbers:s}):H);return x(`${T}${e.field}${O} ${E} (${G.map((H,Y)=>d?`${l}${g.length+1+G.length-(G.length-Y)}`:"?").join(", ")})`)}const q=[];for(const H of G){const Y=a(e.field);q.push(`${l}${Y}`),S[`${c?l:""}${Y}`]=Ae(H,s)?Le(H,{parseNumbers:s}):H}return x(`${T}${e.field}${O} ${E} (${q.join(", ")})`)}else if(D==="between"||D==="not between"){const[G,q]=Ee(e.value,{retainEmptyStrings:!0}).slice(0,2).map(J=>Ae(J,s)?Le(J,{parseNumbers:s}):J);if(y)return v.push(G,q),x(`${T}${e.field}${O} ${E} ${d?`${l}${g.length+1}`:"?"} and ${d?`${l}${g.length+2}`:"?"}`);const H=a(e.field),Y=a(e.field);return S[`${c?l:""}${H}`]=G,S[`${c?l:""}${Y}`]=q,x(`${T}${e.field}${O} ${E} ${l}${H} and ${l}${Y}`)}}let $=e.value;typeof e.value=="string"&&(Ae(e.value,s)?$=Le(e.value,{parseNumbers:s}):$=/^'.*'$/g.test(_)?_.replaceAll(/(^'|'$)/g,""):_);let V="";return y?v.push($):(V=a(e.field),S[`${c?l:""}${V}`]=$),x(`${T}${e.field}${O} ${E} ${y?d?`${l}${g.length+1}`:"?":`${l}${V}`}`.trim())},bd=(e,t,r)=>Ae(e,!!r||typeof e=="bigint")?Number(Le(e,{parseNumbers:!!r})):t,n_=(e,t={})=>{const{field:r,operator:o,value:n,valueSource:a}=e,{parseNumbers:s,preserveValueOrder:l}=t;if(a==="field"||Rt(e))return;const c=Ge(o);switch(c){case"=":return{[r]:bd(n,n,s)};case"!=":case"<":case"<=":case">":case">=":{const d=Km[c];return{[r]:{[d]:bd(n,n,s)}}}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=Ee(n);return{[r]:{[Km[c]]:d.map(p=>bd(p,p,s))}}}case"between":case"notbetween":{const d=Ee(n);if(d.length>=2&&wt(d[0])&&wt(d[1])){const[p,u]=d,f=s!==!1,h=Ae(p,f)?Le(p,{parseNumbers:s}):NaN,b=Ae(u,f)?Le(u,{parseNumbers:s}):NaN;let g=Number.isNaN(h)?p:h,y=Number.isNaN(b)?u:b;if(!l&&g===h&&y===b&&b<h){const v=b;y=h,g=v}return c==="between"?{[r]:{gte:g,lte:y}}:{OR:[{[r]:{lt:g}},{[r]:{gt:y}}]}}else return""}}return""},a_=(e,{parseNumbers:t,preserveValueOrder:r,context:o={}}={})=>{const{sequelizeOperators:n,sequelizeCol:a,sequelizeFn:s}=o;if(Rt(e))return;const{field:l,operator:c,value:d,valueSource:p}=e,u=p==="field",f=Ge(c);if(!(!n||u&&(!a||!s&&["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{[l]:u&&f==="="?{[n.col]:d}:{[h]:u?a(d):Ae(d,t)?Le(d,{parseNumbers:"strict"}):d}}}case"contains":return{[l]:{[u?n.like:n.substring]:u?s("CONCAT","%",a(d),"%"):`${d}`}};case"beginswith":return{[l]:{[u?n.like:n.startsWith]:u?s("CONCAT",a(d),"%"):`${d}`}};case"endswith":return{[l]:{[u?n.like:n.endsWith]:u?s("CONCAT","%",a(d)):`${d}`}};case"doesnotcontain":return{[l]:{[n.notLike]:u?s("CONCAT","%",a(d),"%"):`%${d}%`}};case"doesnotbeginwith":return{[l]:{[n.notLike]:u?s("CONCAT",a(d),"%"):`${d}%`}};case"doesnotendwith":return{[l]:{[n.notLike]:u?s("CONCAT","%",a(d)):`%${d}`}};case"null":return{[l]:{[n.is]:null}};case"notnull":return{[l]:{[n.not]:null}};case"in":case"notin":{const h=Ee(d);return{[l]:{[f==="in"?n.in:n.notIn]:h.map(b=>u?a(b):Ae(b,t)?Le(b,{parseNumbers:"strict"}):b)}}}case"between":case"notbetween":{const h=Ee(d,{retainEmptyStrings:!0});if(h.length<2||!wt(h[0])||!wt(h[1]))return;const[b,g]=h,y=Ae(b,t)?Le(b,{parseNumbers:"strict"}):NaN,v=Ae(g,t)?Le(g,{parseNumbers:"strict"}):NaN,S=Number.isNaN(y)?b:y,x=Number.isNaN(v)?g:v,w=[S,x];return!r&&S===y&&x===v&&v<y&&(w[0]=v,w[1]=y),{[l]:{[f==="between"?n.between:n.notBetween]:u?w.map(N=>a(N)):w.every(N=>Ae(N,t))?w.map(N=>Le(N,{parseNumbers:"strict"})):w}}}}},s_=(e,t)=>typeof e!="string"||!t?`${e}`:e.replaceAll('"','\\"'),Cb=e=>/^[?<]/.test(e)||e.includes(":")?e:`?${e}`,l_=(e,t={})=>{const{escapeQuotes:r,parseNumbers:o}=t,{field:n,operator:a,value:s,valueSource:l}=e,c=l==="field",d=a.toLowerCase(),p=Cb(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 Cb(Ke(f));if(typeof f=="number"||Ae(f,o))return Ke(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:`"${s_(h,r)}"`};switch(d){case"=":case"!=":case"<":case">":case"<=":case">=":return`${p} ${d} ${u(s)}`;case"<>":return`${p} != ${u(s)}`;case"contains":return`CONTAINS(${p}, ${u(s)})`;case"doesnotcontain":return`!CONTAINS(${p}, ${u(s)})`;case"beginswith":return`STRSTARTS(${p}, ${u(s)})`;case"doesnotbeginwith":return`!STRSTARTS(${p}, ${u(s)})`;case"endswith":return`STRENDS(${p}, ${u(s)})`;case"doesnotendwith":return`!STRENDS(${p}, ${u(s)})`;case"null":return`!BOUND(${p})`;case"notnull":return`BOUND(${p})`;case"in":{const f=Ee(s).map(u);return f.length?`${p} IN (${f.join(", ")})`:""}case"notin":{const f=Ee(s).map(u);return f.length?`${p} NOT IN (${f.join(", ")})`:""}case"between":{const f=Ee(s);return f.length<2?"":`${p} >= ${u(f[0])} && ${p} <= ${u(f[1])}`}case"notbetween":{const f=Ee(s);return f.length<2?"":`(${p} < ${u(f[0])} || ${p} > ${u(f[1])})`}default:return`${p} ${a} ${u(s)}`}},i_=(e,t)=>{const{parseNumbers:r,preserveValueOrder:o,context:n={}}=t??{},a=n.tanStackDbOperators,s=n._tanstackDbRefs,l=n._tanstackDbPrimaryRef;if(!a||!s||!l)return;const{and:c,eq:d,gt:p,gte:u,inArray:f,isNull:h,like:b,lt:g,lte:y,not:v}=a,S=$=>{const V=$.indexOf(".");if(V>0){const G=$.slice(0,V),q=$.slice(V+1);if(s[G])return s[G][q]}return s[l][$]},{field:x,operator:w,value:N,valueSource:k}=e,_=S(x),E=Ge(w),D=k==="field",T=$=>D?S($):$,O=$=>D||!r?T($):Ae($,!0)?Le($,{parseNumbers:!0}):$;switch(E){case"=":return d(_,O(N));case"!=":return v(d(_,O(N)));case">":return p(_,O(N));case"<":return g(_,O(N));case">=":return u(_,O(N));case"<=":return y(_,O(N));case"beginswith":case"doesnotbeginwith":{const $=b(_,D?void 0:`${N}%`);return E==="doesnotbeginwith"?v($):$}case"contains":case"doesnotcontain":{const $=b(_,D?void 0:`%${N}%`);return E==="doesnotcontain"?v($):$}case"endswith":case"doesnotendwith":{const $=b(_,D?void 0:`%${N}`);return E==="doesnotendwith"?v($):$}case"null":return h(_);case"notnull":return v(h(_));case"in":case"notin":{const $=f(_,Ee(N).map(V=>O(V)));return E==="notin"?v($):$}case"between":case"notbetween":{const $=Ee(N);if($.length>=2&&wt($[0])&&wt($[1])){let[V,G]=$;const q=r!==!1;if(!D&&Ae(V,q)&&Ae(G,q)){const Y=Le(V,{parseNumbers:q}),J=Le(G,{parseNumbers:q});if(!o&&J<Y){const W=J;G=Y,V=W}else V=Y,G=J}else D&&(V=T(V),G=T(G));const H=c(u(_,V),y(_,G));return E==="notbetween"?v(H):H}return}default:return}},Sb={ansi:{},sqlite:{paramsKeepPrefix:!0},oracle:{},mssql:{concatOperator:"+",quoteFieldNamesWith:["[","]"],fieldIdentifierSeparator:".",paramPrefix:"@"},mysql:{concatOperator:"CONCAT"},postgresql:{quoteFieldNamesWith:'"',numberedParams:!0,paramPrefix:"$"}},Nb={cel:SA,drizzle:jA,elasticsearch:KA,json_without_ids:ha,json:ha,jsonata:JA,jsonlogic:md,ldap:e_,mongodb_query:dl,mongodb:NA,natural_language:o_,parameterized_named:xb,parameterized:xb,prisma:n_,sequelize:a_,spel:EA,sql:ha,tanstack_db:i_,cypher:bb,gql:bb,sparql:l_,gremlin:XA,diagnostics:ha};/* v8 ignore next -- @preserve */const xt=e=>e.operator,c_={cel:xt,drizzle:xt,elasticsearch:xt,json_without_ids:xt,json:xt,jsonata:xt,jsonlogic:xt,ldap:xt,mongodb_query:xt,mongodb:xt,natural_language:wb,parameterized_named:pa,parameterized:pa,prisma:xt,sequelize:xt,spel:xt,sql:pa,tanstack_db:xt,cypher:xt,gql:xt,sparql:xt,gremlin:xt,diagnostics:xt},Eb={cel:"1 == 1",ldap:"",mongodb:'"$and":[{"$expr":true}]',natural_language:"1 is 1",sparql:"1 = 1",gremlin:"",spel:"1 == 1",sql:"(1 = 1)"},d_={format:"json",fields:[],quoteFieldNamesWith:["",""],fieldIdentifierSeparator:"",getOperators:()=>[],paramPrefix:":",paramsKeepPrefix:!1,numberedParams:!1,preserveValueOrder:!1,placeholderFieldName:"~",placeholderOperatorName:"~",quoteValuesWith:"'",concatOperator:"||",preset:"ansi",wordOrder:"SVO",translations:{},operatorMap:{}},kb=new Set(["cel","drizzle","elasticsearch","jsonata","jsonlogic","ldap","mongodb_query","mongodb","prisma","sequelize","spel","tanstack_db"]),u_=new Set(["sql","parameterized","parameterized_named","drizzle","prisma","sequelize"]);function f_(e,t={}){const r=typeof t=="string"?{format:Ge(t)}:t,o={...d_,...!r.format||u_.has(r.format)?Sb[r.preset??"ansi"]??null:null,...r,...!r.format&&(Object.keys(Sb).includes(r.preset??"")?{format:"sql"}:null)},n=Ge(o.format),{fallbackExpression:a,getOperators:s,operatorProcessor:l,parseNumbers:c,quoteFieldNamesWith:d,ruleGroupProcessor:p,ruleProcessor:u,validator:f,valueProcessor:h,context:b}=o,g=$=>typeof ad({parseNumbers:c,inputType:$})=="string"?!0:typeof c=="boolean"?c:void 0,y=typeof l=="function"?l:c_[n]??xt,v=typeof h=="function"?xA(h)?$=>h($.field,$.operator,$.value,$.valueSource):h:n==="natural_language"?yb:kb.has(n)?u??Nb[n]:ca,S=(typeof u=="function"?u:null)??(kb.has(n)&&typeof u!="function"&&h?v:null)??Nb[n]??ha,x=Xm(d),w=Ur(o.fields),N=($,V)=>Ur(s($,V)??[]),k=a??Eb[n]??Eb.sql;let _={};if(typeof f=="function"){const $=f(e);if(typeof $=="boolean"){if(!$&&n!=="diagnostics")return n==="parameterized"?{sql:k,params:[]}:n==="parameterized_named"?{sql:k,params:{}}:n==="mongodb"?`{${k}}`:n==="mongodb_query"?id:n==="prisma"?pd:n==="jsonlogic"?!1:n==="elasticsearch"?{}:n==="drizzle"||n==="sequelize"||n==="tanstack_db"?void 0:k}else _=$}const E={},D=nd(w);for(const $ of D)typeof $.validator=="function"&&(E[$.value??$.name]=$.validator);const O={...o,fallbackExpression:k,fields:w,format:n,getOperators:N,getParseNumberBoolean:g,quoteFieldNamesWith:x,operatorProcessor:y,ruleProcessor:S,valueProcessor:v,validateRule:$=>{let V,G;if($.id&&(V=_[$.id]),D.length>0){const q=D.filter(H=>H.name===$.field);if(q.length>0){const H=q[0];typeof H.validator=="function"&&(G=H.validator)}}if($.valueSource==="parameter"&&typeof o.getParameters=="function"){const q=Xe(w,$.field);new Set(nd(Ur(o.getParameters($.field,$.operator,{fieldData:q}))).map(H=>sd(H.value,o.paramPrefix))).has(sd($.value,o.paramPrefix))||(V=!1)}return[V,G]},validationMap:_,context:b};if(typeof p=="function")return p(e,O);switch(n){case"json":case"json_without_ids":{const $=c?Rm(e,O):e;return n==="json_without_ids"?JSON.stringify($,(V,G)=>V==="id"||V==="path"?void 0:tb(V,G)):JSON.stringify($,tb,2)}case"sql":return db(e,O);case"parameterized":case"parameterized_named":return cb(e,O);case"mongodb":return DA(e,O);case"mongodb_query":return cd(e,O);case"cel":return rb(e,O);case"spel":return ob(e,O);case"jsonata":return lb(e,O);case"jsonlogic":return ud(e,O);case"elasticsearch":return sb(e,O);case"natural_language":return ib(e,O);case"ldap":return TA(e,O);case"prisma":return $A(e,O);case"drizzle":return ab(e,O);case"tanstack_db":return OA(e,O);case"sequelize":return PA(e,O);case"cypher":case"gql":return AA(e,O);case"sparql":return MA(e,O);case"gremlin":return _A(e,O);case"diagnostics":return BA(e,O);default:return""}}const Ct=(e,t)=>{let r=t,o=0;for(;o<e.length&&r&&ke(r);){const n=r.rules[e[o]];r=typeof n=="string"?null:n,o++}return o<e.length?null:r},Ab=(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(ke(r)){const o=Ab(e,r);if(o)return o}}return null},kn=(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(ke(n)){const a=kn(e,n);if(Array.isArray(a))return[Number.parseInt(o),...a]}return null},mt=e=>e.slice(0,-1),Jo=(e,t)=>e.length===t.length&&e.every((r,o)=>r===t[o]),_b=(e,t)=>{const r=[],o=mt(e),n=mt(t);let a=0;for(;a<o.length&&a<n.length&&o[a]===n[a];)r.push(n[a]),a++;return r},An=(e,t)=>{let r=!!t.disabled,o=t,n=0;for(;n<e.length&&!r&&ke(o);){const a=o.rules[e[n]];Er(a)&&(ke(a)||"field"in a&&a.field)&&(r=!!a.disabled,o=a),n++}return r},p_=e=>Jo([],e.path)?"Query builder":`Rule group at path ${e.path.join("-")}`,ma=globalThis.crypto;let pr=()=>"00-0-4-2-000".replaceAll(/[^-]/g,e=>((Math.random()+Math.trunc(e))*65536>>Number.parseInt(e)).toString(16).padStart(4,"0"));if(ma){if(typeof ma.randomUUID=="function")pr=()=>ma.randomUUID();else if(typeof ma.getRandomValues=="function"){const e="89ab",t=new Uint32Array(32);pr=()=>{ma.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 h_={name:"name",value:"name",matchModes:null,label:"label"},m_=(e,t)=>{const r=e?Br(e):h_;let o=r.matchModes??!1;return!o&&t&&(o=t(r.value,{fieldData:r})),o===!0?Lm:o===!1?[]:al(o)?Ur(o):(o==null?void 0:o.map(n=>Lm.find(a=>a.value===Ge(n))??{name:n,value:n,label:n}))??[]},Tb=(e,t,r)=>{const o=Pt(e);if(t.operator==="between"||t.operator==="notBetween"){const n=[o,o];return r?n:sa(n.map(a=>a??""),",")}return o},b_=(e,t)=>{const{fieldData:r,fields:o,getValueEditorType:n,getValues:a,getDefaultValue:s,getParameters:l,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 p=a(e.field,e.operator,{fieldData:r});if(e.valueSource==="field"){const u=Ym(r,o,e.operator);d=u.length>0?Tb(u,e,c):""}else if(e.valueSource==="parameter"){const u=l?l(e.field,e.operator,{fieldData:r}):null;d=u&&u.length>0?Pt(u):""}else if(p.length>0){const u=n(e.field,e.operator,{fieldData:r});u==="multiselect"?d=c?[]:"":(u==="select"||u==="radio")&&(d=Tb(p,e,c))}else n(e.field,e.operator,{fieldData:r})==="checkbox"&&(d=!1);return d},Db=e=>{const t=typeof e=="boolean"?e:typeof e=="object"&&e!==null?e.valid:null;return typeof t=="boolean"?t?_e.valid:_e.invalid:""},$b=[{name:"value",value:"value",label:"value"}],g_={name:"name",value:"name",valueSources:null,label:"label"},Pb=(e,t,r)=>{const o=e?Br(e):g_;let n=o.valueSources??!1;return typeof n=="function"&&(n=n(t)),!n&&r&&(n=r(o.value,t,{fieldData:o})),n?al(n)?Ur(n):n.map(a=>$b.find(s=>s.value===Ge(a))??{name:a,value:a,label:a}):$b},nt=(e,t,r)=>{if(nl(e))return;const o=Um(t).map(([n,[a,s]])=>{var l;return[n,a??s??((l=r==null?void 0:r[e])==null?void 0:l[n])]}).filter(n=>!nl(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}}},Me=(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:Qe(a);s&&(r=r?`${r} ${s}`:s)}return r},y_=(...e)=>({queryBuilder:Me("queryBuilder",e),ruleGroup:Me("ruleGroup",e),header:Me("header",e),body:Me("body",e),combinators:Me("combinators",e),addRule:Me("addRule",e),addGroup:Me("addGroup",e),cloneRule:Me("cloneRule",e),cloneGroup:Me("cloneGroup",e),removeGroup:Me("removeGroup",e),rule:Me("rule",e),fields:Me("fields",e),operators:Me("operators",e),value:Me("value",e),removeRule:Me("removeRule",e),notToggle:Me("notToggle",e),shiftActions:Me("shiftActions",e),dragHandle:Me("dragHandle",e),lockRule:Me("lockRule",e),lockGroup:Me("lockGroup",e),muteRule:Me("muteRule",e),muteGroup:Me("muteGroup",e),muted:Me("muted",e),valueSource:Me("valueSource",e),actionElement:Me("actionElement",e),valueSelector:Me("valueSelector",e),betweenRules:Me("betweenRules",e),valid:Me("valid",e),invalid:Me("invalid",e),dndDragging:Me("dndDragging",e),dndOver:Me("dndOver",e),dndCopy:Me("dndCopy",e),dndGroup:Me("dndGroup",e),dndDropNotAllowed:Me("dndDropNotAllowed",e),dndPreviewPosition:Me("dndPreviewPosition",e),dndHidden:Me("dndHidden",e),disabled:Me("disabled",e),valueListItem:Me("valueListItem",e),matchMode:Me("matchMode",e),matchThreshold:Me("matchThreshold",e),branches:Me("branches",e),hasSubQuery:Me("hasSubQuery",e),loading:Me("loading",e),valueDateTimeRelative:Me("valueDateTimeRelative",e)}),v_=(e,t)=>e===!1?!1:e?!0:t!==!1,w_=(e,t)=>e?!0:e===!1?!1:!!t,Mb=(e,t,r,o)=>o?t??r:e?v_(t,r):w_(t,r),x_=(e={},t={},r)=>Um(mA).reduce((o,[n,a])=>(o[n]=Mb(a,e[n],t[n],!1),o),{}),Ob=(e,{idGenerator:t=pr}={})=>{const r=!e.id,o=Rt(e);return!r&&!o?e:{...e,...r&&{id:t()},...o&&{value:ml(e.value,{idGenerator:t})}}},ml=(e,{idGenerator:t=pr}={})=>{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 l=ke(s)?ml(s,{idGenerator:t}):Ob(s,{idGenerator:t});n.push(l),l!==s&&(o=!0)}}return!r&&!o?e:{...e,...r&&{id:t()},rules:n}},Ib=(e,{idGenerator:t=pr}={})=>ke(e)?ml(e,{idGenerator:t}):Ob(e,{idGenerator:t}),C_=(e,{idGenerator:t=pr}={})=>structuredClone({...e,id:t()}),gd=(e,{idGenerator:t=pr}={})=>{if(!Er(e))return e;if(!ke(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:ke(o)?gd(o,{idGenerator:t}):C_(o,{idGenerator:t}))),r},Lb=(e,t,r,o={})=>na(e,n=>S_(n,t,r,o)),S_=(e,t,r,o={})=>{const{combinators:n=aa,combinatorPreceding:a,idGenerator:s=pr}=o,l=Array.isArray(r)?Ct(r,e):Ab(r,e);if(!l||!ke(l))return e;if(Cn(l)&&l.rules.length>0){const c=l.rules.at(-2);l.rules.push(a??(typeof c=="string"?c:Pt(n)))}return l.rules.push(Ib(t,{idGenerator:s})),e},Fb={field:0,operator:1,valueSource:2,value:4},Vb=e=>e.sort((t,r)=>(Fb[t[0]]??3)-(Fb[r[0]]??3)),N_=(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:Vb(e.map((a,s)=>[a,n[s]])),pathOrID:r,options:o??{}}}return{entries:Vb(Object.entries(e)),pathOrID:t,options:r??{}}},E_=(e,t,r,o,n)=>{const{entries:a,pathOrID:s,options:l}=N_(t,r,o,n);for(const[c,d]of a)A_(e,c,d,s,l);return e},k_=((e,t,r,o,n)=>na(e,a=>{E_(a,t,r,o,n)})),A_=(e,t,r,o,n={})=>{var S;const{resetOnFieldChange:a=!0,resetOnOperatorChange:s=!1,getRuleDefaultOperator:l=()=>"=",getValueSources:c=()=>["value"],getRuleDefaultValue:d=()=>"",getMatchModes:p=()=>[]}=n;let u=a;const f=Array.isArray(o)?o:kn(o,e);if(!f)return e;if(t==="combinator"&&!Bt(e)){const x=Ct(mt(f),e).rules;return f.at(-1)%2===1&&(x[f.at(-1)]=r),e}const h=Ct(f,e);if(!h)return e;const b=ke(h);if(h[t]===r||(t!=="valueSource"&&(h[t]=r),b))return e;let g=!1,y=!1;if(t==="field"){const x=p(h.field),w=p(r);if(w.length===0)delete h.match;else{const N=(S=h.match)!=null&&S.mode&&Xe(w,h.match.mode)?null:Pt(w);N&&(h.match={mode:N,threshold:1})}(x.length>0||w.length>0)&&(u=!0)}u&&t==="field"&&(h.operator=l(r),g=!0,y=!0),s&&t==="operator"&&(g=!0,y=!0);const v=Pt(Pb({name:h.field,value:h.field,label:""},h.operator,c));return(g&&h.valueSource&&v!==h.valueSource||t==="valueSource"&&r!==h.valueSource)&&(y=!!h.valueSource||!h.valueSource&&r!==v,h.valueSource=g?v:r),y&&(h.value=d(h)),e},__=(e,t)=>na(e,r=>T_(r,t)),T_=(e,t)=>{const r=Array.isArray(t)?t:kn(t,e);if(!r||r.length===0||!Bt(e)&&!Ct(r,e))return e;const o=r.at(-1),n=Ct(mt(r),e);if(n&&ke(n))if(!Bt(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},Gb=(e,t,r)=>{if(Array.isArray(r))return r;const o=Cn(e);if(r==="up"){if(Jo(t,[0]))return t;if(t.at(-1)===0){const n=mt(t);return[...mt(n),Math.max(0,n.at(-1)-(o?1:0))]}else{const n=[...mt(t),Math.max(0,t.at(-1)-(o?2:1))],a=Ct(n,e);return ke(a)?[...n,a.rules.length]:[...mt(t),Math.max(0,t.at(-1)-(o?3:1))]}}else if(r==="down"){if(Jo([e.rules.length-1],t))return t;if(t.at(-1)===Ct(mt(t),e).rules.length-1){const n=mt(t);return[...mt(n),n.at(-1)+1]}else{const n=[...mt(t),t.at(-1)+(o?2:1)];return ke(Ct(n,e))?[...n,0]:[...mt(t),t.at(-1)+(o?3:2)]}}return t},D_=(e,t,r,o={})=>na(e,n=>$_(n,t,r,o)),$_=(e,t,r,o={})=>{const{clone:n=!1,combinators:a=aa,idGenerator:s=pr}=o,l=Array.isArray(t)?t:kn(t,e);if(!l)return e;const c=Gb(e,l,r);if(l.length===0||Jo(l,c)||!Ct(mt(c),e))return e;const d=Ct(l,e);if(!d)return e;const p=n?gd(Gr(d)?ed(d):d,{idGenerator:s}):d,u=Cn(e),f=Ct(mt(l),e),h=l.at(-1),b=u&&h>0?f.rules[h-1]:null,g=u&&h<f.rules.length-1?f.rules[h+1]:null;if(!n){const N=u?Math.max(0,h-1):h,k=u?2:1;f.rules.splice(N,k)}const y=[...c],v=_b(l,c);!n&&l.length===v.length+1&&c[v.length]>l[v.length]&&(y[v.length]-=u?2:1);const S=Ct(mt(y),e),x=y.at(-1),w=(...N)=>S.rules.splice(x,0,...N);return S.rules.length===0||!u?w(p):x===0?h===0&&g?w(p,g):w(p,S.rules[1]??b??Pt(a)):w(b||(S.rules[x-2]??g??Pt(a)),p),e},P_=(e,t,r,o={})=>na(e,n=>M_(n,t,r,o)),M_=(e,t,r,o={})=>{const{clone:n=!1,combinators:a=aa,idGenerator:s=pr}=o,l=Array.isArray(t)?t:kn(t,e),c=Array.isArray(r)?r:kn(r,e);if(!l||!c)return e;const d=Gb(e,l,c);if(l.length===0||Jo(l,d)||!Ct(mt(d),e))return e;const p=Ct(l,e),u=Ct(c,e);if(!p||!u)return e;const f=n?gd(Gr(p)?ed(p):p,{idGenerator:s}):p,h=Cn(e),b=Ct(mt(l),e),g=l.at(-1);if(!n){const w=h?Math.max(0,g-1):g,N=h?2:1;b.rules.splice(w,N)}const y=[...d],v=_b(l,d);!n&&l.length===v.length+1&&d[v.length]>l[v.length]&&(y[v.length]-=h?2:1);const S=Ct(mt(y),e),x=y.at(-1);return S.rules.splice(x,1,Ib(h?{rules:[u,Pt(a),f]}:{combinator:Pt(a),rules:[u,f]},{idGenerator:s})),e};function It(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 O_=typeof Symbol=="function"&&Symbol.observable||"@@observable",zb=O_,yd=()=>Math.random().toString(36).substring(7).split("").join("."),I_={INIT:`@@redux/INIT${yd()}`,REPLACE:`@@redux/REPLACE${yd()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${yd()}`},Zo=I_;function ba(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 L_(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(G_(e))return"date";if(V_(e))return"error";const r=F_(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 F_(e){return typeof e.constructor=="function"?e.constructor.name:null}function V_(e){return e instanceof Error||typeof e.message=="string"&&e.constructor&&typeof e.constructor.stackTraceLimit=="number"}function G_(e){return e instanceof Date?!0:typeof e.toDateString=="function"&&typeof e.getDate=="function"&&typeof e.setDate=="function"}function Co(e){let t=typeof e;return process.env.NODE_ENV!=="production"&&(t=L_(e)),t}function Bb(e,t,r){if(typeof e!="function")throw new Error(process.env.NODE_ENV==="production"?It(2):`Expected the root reducer to be a function. Instead, received: '${Co(e)}'`);if(typeof t=="function"&&typeof r=="function"||typeof r=="function"&&typeof arguments[3]=="function")throw new Error(process.env.NODE_ENV==="production"?It(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"?It(1):`Expected the enhancer to be a function. Instead, received: '${Co(r)}'`);return r(Bb)(e,t)}let o=e,n=t,a=new Map,s=a,l=0,c=!1;function d(){s===a&&(s=new Map,a.forEach((y,v)=>{s.set(v,y)}))}function p(){if(c)throw new Error(process.env.NODE_ENV==="production"?It(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(y){if(typeof y!="function")throw new Error(process.env.NODE_ENV==="production"?It(4):`Expected the listener to be a function. Instead, received: '${Co(y)}'`);if(c)throw new Error(process.env.NODE_ENV==="production"?It(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 S=l++;return s.set(S,y),function(){if(v){if(c)throw new Error(process.env.NODE_ENV==="production"?It(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(),s.delete(S),a=null}}}function f(y){if(!ba(y))throw new Error(process.env.NODE_ENV==="production"?It(7):`Actions must be plain objects. Instead, the actual type was: '${Co(y)}'. 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 y.type>"u")throw new Error(process.env.NODE_ENV==="production"?It(8):'Actions may not have an undefined "type" property. You may have misspelled an action type string constant.');if(typeof y.type!="string")throw new Error(process.env.NODE_ENV==="production"?It(17):`Action "type" property must be a string. Instead, the actual type was: '${Co(y.type)}'. Value was: '${y.type}' (stringified)`);if(c)throw new Error(process.env.NODE_ENV==="production"?It(9):"Reducers may not dispatch actions.");try{c=!0,n=o(n,y)}finally{c=!1}return(a=s).forEach(S=>{S()}),y}function h(y){if(typeof y!="function")throw new Error(process.env.NODE_ENV==="production"?It(10):`Expected the nextReducer to be a function. Instead, received: '${Co(y)}`);o=y,f({type:Zo.REPLACE})}function b(){const y=u;return{subscribe(v){if(typeof v!="object"||v===null)throw new Error(process.env.NODE_ENV==="production"?It(11):`Expected the observer to be an object. Instead, received: '${Co(v)}'`);function S(){const w=v;w.next&&w.next(p())}return S(),{unsubscribe:y(S)}},[zb](){return this}}}return f({type:Zo.INIT}),{dispatch:f,subscribe:u,getState:p,replaceReducer:h,[zb]:b}}function Ub(e){typeof console<"u"&&typeof console.error=="function"&&console.error(e);try{throw new Error(e)}catch{}}function z_(e,t,r,o){const n=Object.keys(t),a=r&&r.type===Zo.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(!ba(e))return`The ${a} has unexpected type of "${Co(e)}". Expected argument to be an object with the following keys: "${n.join('", "')}"`;const s=Object.keys(e).filter(l=>!t.hasOwnProperty(l)&&!o[l]);if(s.forEach(l=>{o[l]=!0}),!(r&&r.type===Zo.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 B_(e){Object.keys(e).forEach(t=>{const r=e[t];if(typeof r(void 0,{type:Zo.INIT})>"u")throw new Error(process.env.NODE_ENV==="production"?It(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:Zo.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(process.env.NODE_ENV==="production"?It(13):`The slice reducer for key "${t}" returned undefined when probed with a random type. Don't try to handle '${Zo.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 Wb(e){const t=Object.keys(e),r={};for(let s=0;s<t.length;s++){const l=t[s];process.env.NODE_ENV!=="production"&&typeof e[l]>"u"&&Ub(`No reducer provided for key "${l}"`),typeof e[l]=="function"&&(r[l]=e[l])}const o=Object.keys(r);let n;process.env.NODE_ENV!=="production"&&(n={});let a;try{B_(r)}catch(s){a=s}return function(l={},c){if(a)throw a;if(process.env.NODE_ENV!=="production"){const u=z_(l,r,c,n);u&&Ub(u)}let d=!1;const p={};for(let u=0;u<o.length;u++){const f=o[u],h=r[f],b=l[f],g=h(b,c);if(typeof g>"u"){const y=c&&c.type;throw new Error(process.env.NODE_ENV==="production"?It(14):`When called with an action of type ${y?`"${String(y)}"`:"(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]=g,d=d||g!==b}return d=d||o.length!==Object.keys(l).length,d?p:l}}function bl(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,r)=>(...o)=>t(r(...o)))}function U_(...e){return t=>(r,o)=>{const n=t(r,o);let a=()=>{throw new Error(process.env.NODE_ENV==="production"?It(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)},l=e.map(c=>c(s));return a=bl(...l)(n.dispatch),{...n,dispatch:a}}}function Hb(e){return ba(e)&&"type"in e&&typeof e.type=="string"}var jb=Symbol.for("immer-nothing"),qb=Symbol.for("immer-draftable"),Ut=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 nr(e,...t){if(process.env.NODE_ENV!=="production"){const r=W_[e],o=en(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 ar=Object,_n=ar.getPrototypeOf,gl="constructor",yl="prototype",vd="configurable",vl="enumerable",wl="writable",ga="value",io=e=>!!e&&!!e[Ut];function hr(e){var t;return e?Qb(e)||Sl(e)||!!e[qb]||!!((t=e[gl])!=null&&t[qb])||Nl(e)||El(e):!1}var H_=ar[yl][gl].toString(),Yb=new WeakMap;function Qb(e){if(!e||!Cd(e))return!1;const t=_n(e);if(t===null||t===ar[yl])return!0;const r=ar.hasOwnProperty.call(t,gl)&&t[gl];if(r===Object)return!0;if(!en(r))return!1;let o=Yb.get(r);return o===void 0&&(o=Function.toString.call(r),Yb.set(r,o)),o===H_}function xl(e,t,r=!0){ya(e)===0?(r?Reflect.ownKeys(e):ar.keys(e)).forEach(n=>{t(n,e[n],e)}):e.forEach((o,n)=>t(n,o,e))}function ya(e){const t=e[Ut];return t?t.type_:Sl(e)?1:Nl(e)?2:El(e)?3:0}var wd=(e,t,r=ya(e))=>r===2?e.has(t):ar[yl].hasOwnProperty.call(e,t),xd=(e,t,r=ya(e))=>r===2?e.get(t):e[t],Cl=(e,t,r,o=ya(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 Sl=Array.isArray,Nl=e=>e instanceof Map,El=e=>e instanceof Set,Cd=e=>typeof e=="object",en=e=>typeof e=="function",Sd=e=>typeof e=="boolean";function q_(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var co=e=>e.copy_||e.base_,Nd=e=>e.modified_?e.copy_:e.base_;function Ed(e,t){if(Nl(e))return new Map(e);if(El(e))return new Set(e);if(Sl(e))return Array[yl].slice.call(e);const r=Qb(e);if(t===!0||t==="class_only"&&!r){const o=ar.getOwnPropertyDescriptors(e);delete o[Ut];let n=Reflect.ownKeys(o);for(let a=0;a<n.length;a++){const s=n[a],l=o[s];l[wl]===!1&&(l[wl]=!0,l[vd]=!0),(l.get||l.set)&&(o[s]={[vd]:!0,[wl]:!0,[vl]:l[vl],[ga]:e[s]})}return ar.create(_n(e),o)}else{const o=_n(e);if(o!==null&&r)return{...e};const n=ar.create(o);return ar.assign(n,e)}}function kd(e,t=!1){return Al(e)||io(e)||!hr(e)||(ya(e)>1&&ar.defineProperties(e,{set:kl,add:kl,clear:kl,delete:kl}),ar.freeze(e),t&&xl(e,(r,o)=>{kd(o,!0)},!1)),e}function Y_(){nr(2)}var kl={[ga]:Y_};function Al(e){return e===null||!Cd(e)?!0:ar.isFrozen(e)}var _l="MapSet",Ad="Patches",Kb="ArrayMethods",Rb={};function tn(e){const t=Rb[e];return t||nr(0,e),t}var Xb=e=>!!Rb[e],va,Jb=()=>va,Q_=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:Xb(_l)?tn(_l):void 0,arrayMethodsPlugin_:Xb(Kb)?tn(Kb):void 0});function Zb(e,t){t&&(e.patchPlugin_=tn(Ad),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function _d(e){Td(e),e.drafts_.forEach(K_),e.drafts_=null}function Td(e){e===va&&(va=e.parent_)}var eg=e=>va=Q_(va,e);function K_(e){const t=e[Ut];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function tg(e,t){t.unfinalizedDrafts_=t.drafts_.length;const r=t.drafts_[0];if(e!==void 0&&e!==r){r[Ut].modified_&&(_d(t),nr(4)),hr(e)&&(e=rg(t,e));const{patchPlugin_:n}=t;n&&n.generateReplacementPatches_(r[Ut].base_,e,t)}else e=rg(t,r);return R_(t,e,!0),_d(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==jb?e:void 0}function rg(e,t){if(Al(t))return t;const r=t[Ut];if(!r)return Dl(t,e.handledSet_,e);if(!Tl(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);ag(r,e)}return r.copy_}function R_(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&kd(t,r)}function og(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var Tl=(e,t)=>e.scope_===t,X_=[];function ng(e,t,r,o){const n=co(e),a=e.type_;if(o!==void 0&&xd(n,o,a)===t){Cl(n,o,r,a);return}if(!e.draftLocations_){const l=e.draftLocations_=new Map;xl(n,(c,d)=>{if(io(d)){const p=l.get(d)||[];p.push(c),l.set(d,p)}})}const s=e.draftLocations_.get(t)??X_;for(const l of s)Cl(n,l,r,a)}function J_(e,t,r){e.callbacks_.push(function(n){var l;const a=t;if(!a||!Tl(a,n))return;(l=n.mapSetPlugin_)==null||l.fixSetContents(a);const s=Nd(a);ng(e,a.draft_??a,s,r),ag(a,n)})}function ag(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)}og(e)}}function Z_(e,t,r){const{scope_:o}=e;if(io(r)){const n=r[Ut];Tl(n,o)&&n.callbacks_.push(function(){Pl(e);const s=Nd(n);ng(e,r,s,t)})}else hr(r)&&e.callbacks_.push(function(){const a=co(e);e.type_===3?a.has(r)&&Dl(r,o.handledSet_,o):xd(a,t,e.type_)===r&&o.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&Dl(xd(e.copy_,t,e.type_),o.handledSet_,o)})}function Dl(e,t,r){return!r.immer_.autoFreeze_&&r.unfinalizedDrafts_<1||io(e)||t.has(e)||!hr(e)||Al(e)||(t.add(e),xl(e,(o,n)=>{if(io(n)){const a=n[Ut];if(Tl(a,r)){const s=Nd(a);Cl(e,o,s,e.type_),og(a)}}else hr(n)&&Dl(n,t,r)})),e}function eT(e,t){const r=Sl(e),o={type_:r?1:0,scope_:t?t.scope_:Jb(),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=$l;r&&(n=[o],a=wa);const{revoke:s,proxy:l}=Proxy.revocable(n,a);return o.draft_=l,o.revoke_=s,[l,o]}var $l={get(e,t){if(t===Ut)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=co(e);if(!wd(n,t,e.type_))return rT(e,n,t);const a=n[t];if(e.finalized_||!hr(a)||o&&e.operationMethod&&(r!=null&&r.isMutatingArrayMethod(e.operationMethod))&&q_(t))return a;if(a===Dd(e.base_,t)||tT(e,t,a)){Pl(e);const s=e.type_===1?+t:t,l=Pd(e.scope_,a,e,s);return e.copy_[s]=l}return a},has(e,t){return t in co(e)},ownKeys(e){return Reflect.ownKeys(co(e))},set(e,t,r){const o=sg(co(e),t);if(o!=null&&o.set)return o.set.call(e.draft_,r),!0;if(!e.modified_){const n=Dd(co(e),t),a=n==null?void 0:n[Ut];if(a&&a.base_===r)return e.copy_[t]=r,e.assigned_.set(t,!1),!0;if(j_(r,n)&&(r!==void 0||wd(e.base_,t,e.type_)))return!0;Pl(e),$d(e)}return e.copy_[t]===r&&(r!==void 0||wd(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 Pl(e),Dd(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),$d(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const r=co(e),o=Reflect.getOwnPropertyDescriptor(r,t);return o&&{[wl]:!0,[vd]:e.type_!==1||t!=="length",[vl]:o[vl],[ga]:r[t]}},defineProperty(){nr(11)},getPrototypeOf(e){return _n(e.base_)},setPrototypeOf(){nr(12)}},wa={};for(let e in $l){let t=$l[e];wa[e]=function(){const r=arguments;return r[0]=r[0][0],t.apply(this,r)}}wa.deleteProperty=function(e,t){return process.env.NODE_ENV!=="production"&&isNaN(parseInt(t))&&nr(13),wa.set.call(this,e,t,void 0)},wa.set=function(e,t,r){return process.env.NODE_ENV!=="production"&&t!=="length"&&isNaN(parseInt(t))&&nr(14),$l.set.call(this,e[0],t,r,e[0])};function Dd(e,t){const r=e[Ut];return(r?co(r):e)[t]}function tT(e,t,r){var o;return e.type_!==1||!e.allIndicesReassigned_||(o=e.assigned_)!=null&&o.get(t)||!hr(r)||r[Ut]?!1:e.baseRefs_.has(r)}function rT(e,t,r){var n;const o=sg(t,r);return o?ga in o?o[ga]:(n=o.get)==null?void 0:n.call(e.draft_):void 0}function sg(e,t){if(!(t in e))return;let r=_n(e);for(;r;){const o=Object.getOwnPropertyDescriptor(r,t);if(o)return o;r=_n(r)}}function $d(e){e.modified_||(e.modified_=!0,e.parent_&&$d(e.parent_))}function Pl(e){e.copy_||(e.assigned_=new Map,e.copy_=Ed(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var oT=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(t,r,o)=>{if(en(t)&&!en(r)){const a=r;r=t;const s=this;return function(c=a,...d){return s.produce(c,p=>r.call(this,p,...d))}}en(r)||nr(6),o!==void 0&&!en(o)&&nr(7);let n;if(hr(t)){const a=eg(this),s=Pd(a,t,void 0);let l=!0;try{n=r(s),l=!1}finally{l?_d(a):Td(a)}return Zb(a,o),tg(n,a)}else if(!t||!Cd(t)){if(n=r(t),n===void 0&&(n=t),n===jb&&(n=void 0),this.autoFreeze_&&kd(n,!0),o){const a=[],s=[];tn(Ad).generateReplacementPatches_(t,n,{patches_:a,inversePatches_:s}),o(a,s)}return n}else nr(1,t)},this.produceWithPatches=(t,r)=>{if(en(t))return(s,...l)=>this.produceWithPatches(s,c=>t(c,...l));let o,n;return[this.produce(t,r,(s,l)=>{o=s,n=l}),o,n]},Sd(e==null?void 0:e.autoFreeze)&&this.setAutoFreeze(e.autoFreeze),Sd(e==null?void 0:e.useStrictShallowCopy)&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),Sd(e==null?void 0:e.useStrictIteration)&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){hr(e)||nr(8),io(e)&&(e=nT(e));const t=eg(this),r=Pd(t,e,void 0);return r[Ut].isManual_=!0,Td(t),r}finishDraft(e,t){const r=e&&e[Ut];(!r||!r.isManual_)&&nr(9);const{scope_:o}=r;return Zb(o,t),tg(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=tn(Ad).applyPatches_;return io(e)?o(e,t):this.produce(e,n=>o(n,t))}};function Pd(e,t,r,o){const[n,a]=Nl(t)?tn(_l).proxyMap_(t,r):El(t)?tn(_l).proxySet_(t,r):eT(t,r);return((r==null?void 0:r.scope_)??Jb()).drafts_.push(n),a.callbacks_=(r==null?void 0:r.callbacks_)??[],a.key_=o,r&&o!==void 0?J_(r,a,o):a.callbacks_.push(function(c){var p;(p=c.mapSetPlugin_)==null||p.fixSetContents(a);const{patchPlugin_:d}=c;a.modified_&&d&&d.generatePatches_(a,[],c)}),n}function nT(e){return io(e)||nr(10,e),lg(e)}function lg(e){if(!hr(e)||Al(e))return e;const t=e[Ut];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 xl(r,(n,a)=>{Cl(r,n,lg(a))},o),t&&(t.finalized_=!1),r}var aT=new oT,ig=aT.produce;function cg(e){return({dispatch:r,getState:o})=>n=>a=>typeof a=="function"?a(r,o,e):n(a)}var sT=cg(),lT=cg,iT=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?bl:bl.apply(null,arguments)},cT=e=>e&&typeof e.match=="function";function dg(e,t){function r(...o){if(t){let n=t(...o);if(!n)throw new Error(process.env.NODE_ENV==="production"?Ze(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=>Hb(o)&&o.type===e,r}function dT(e){return typeof e=="function"&&"type"in e&&cT(e)}function uT(e){const t=e?`${e}`.split("/"):[],r=t[t.length-1]||"actionCreator";return`Detected an action creator with type "${e||"unknown"}" being dispatched.
|
|
183
|
+
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 fT(e={}){if(process.env.NODE_ENV==="production")return()=>r=>o=>r(o);const{isActionCreator:t=dT}=e;return()=>r=>o=>(t(o)&&console.warn(uT(o.type)),r(o))}function ug(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.
|
|
178
184
|
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
|
|
180
|
-
Take a look at the logic that dispatched this action: `,
|
|
185
|
+
It is disabled in production builds, so you don't need to worry about that.`)}}}var fg=class za extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,za.prototype)}static get[Symbol.species](){return za}concat(...t){return super.concat.apply(this,t)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new za(...t[0].concat(this)):new za(...t.concat(this))}};function pg(e){return hr(e)?ig(e,()=>{}):e}function xa(e,t,r){return e.has(t)?e.get(t):e.set(t,r(t)).get(t)}function pT(e){return typeof e!="object"||e==null||Object.isFrozen(e)}function hT(e,t,r){const o=hg(e,t,r);return{detectMutations(){return mg(e,t,o,r)}}}function hg(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 l in r){const c=o?o+"."+l:l;s&&t.some(p=>p instanceof RegExp?p.test(c):c===p)||(a.children[l]=hg(e,t,r[l],c))}}return a}function mg(e,t=[],r,o,n=!1,a=""){const s=r?r.value:void 0,l=s===o;if(n&&!l&&!Number.isNaN(o))return{wasMutated:!0,path:a};if(e(s)||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=a?a+"."+p:p;if(d&&t.some(b=>b instanceof RegExp?b.test(u):u===b))continue;const f=mg(e,t,r.children[p],o[p],l,u);if(f.wasMutated)return f}return{wasMutated:!1}}function mT(e={}){if(process.env.NODE_ENV==="production")return()=>t=>r=>t(r);{let t=function(l,c,d,p){return JSON.stringify(l,r(c,p),d)},r=function(l,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 l==null?f:l.call(this,u,f)}},{isImmutable:o=pT,ignoredPaths:n,warnAfter:a=32}=e;const s=hT.bind(null,o,n);return({getState:l})=>{let c=l(),d=s(c),p;return u=>f=>{const h=ug(a,"ImmutableStateInvariantMiddleware");h.measureTime(()=>{if(c=l(),p=d.detectMutations(),d=s(c),p.wasMutated)throw new Error(process.env.NODE_ENV==="production"?Ze(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 b=u(f);return h.measureTime(()=>{if(c=l(),p=d.detectMutations(),d=s(c),p.wasMutated)throw new Error(process.env.NODE_ENV==="production"?Ze(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(),b}}}}function bg(e){const t=typeof e;return e==null||t==="string"||t==="boolean"||t==="number"||Array.isArray(e)||ba(e)}function Md(e,t="",r=bg,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 l=o!=null?o(e):Object.entries(e),c=n.length>0;for(const[d,p]of l){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"&&(s=Md(p,u,r,o,n,a),s))return s}}return a&&gg(e)&&a.add(e),!1}function gg(e){if(!Object.isFrozen(e))return!1;for(const t of Object.values(e))if(!(typeof t!="object"||t===null)&&!gg(t))return!1;return!0}function bT(e={}){if(process.env.NODE_ENV==="production")return()=>t=>r=>t(r);{const{isSerializable:t=bg,getEntries:r,ignoredActions:o=[],ignoredActionPaths:n=["meta.arg","meta.baseQueryMeta"],ignoredPaths:a=[],warnAfter:s=32,ignoreState:l=!1,ignoreActions:c=!1,disableCache:d=!1}=e,p=!d&&WeakSet?new WeakSet:void 0;return u=>f=>h=>{if(!Hb(h))return f(h);const b=f(h),g=ug(s,"SerializableStateInvariantMiddleware");return!c&&!(o.length&&o.indexOf(h.type)!==-1)&&g.measureTime(()=>{const y=Md(h,"",t,r,n,p);if(y){const{keyPath:v,value:S}=y;console.error(`A non-serializable value was detected in an action, in the path: \`${v}\`. Value:`,S,`
|
|
186
|
+
Take a look at the logic that dispatched this action: `,h,`
|
|
181
187
|
(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)`)}}),
|
|
183
|
-
Take a look at the reducer(s) handling this action 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={};/**
|
|
188
|
+
(To allow non-serializable values see: https://redux-toolkit.js.org/usage/usage-guide#working-with-non-serializable-data)`)}}),l||(g.measureTime(()=>{const y=u.getState(),v=Md(y,"",t,r,a,p);if(v){const{keyPath:S,value:x}=v;console.error(`A non-serializable value was detected in the state, in the path: \`${S}\`. Value:`,x,`
|
|
189
|
+
Take a look at the reducer(s) handling this action type: ${h.type}.
|
|
190
|
+
(See https://redux.js.org/faq/organizing-state#can-i-put-functions-promises-or-other-non-serializable-items-in-my-store-state)`)}}),g.warnIfExceeded()),b}}}function Ml(e){return typeof e=="boolean"}var gT=()=>function(t){const{thunk:r=!0,immutableCheck:o=!0,serializableCheck:n=!0,actionCreatorCheck:a=!0}=t??{};let s=new fg;if(r&&(Ml(r)?s.push(sT):s.push(lT(r.extraArgument))),process.env.NODE_ENV!=="production"){if(o){let l={};Ml(o)||(l=o),s.unshift(mT(l))}if(n){let l={};Ml(n)||(l=n),s.push(bT(l))}if(a){let l={};Ml(a)||(l=a),s.unshift(fT(l))}}return s},yT="RTK_autoBatch",yg=e=>t=>{setTimeout(t,e)},vT=(e,t)=>r=>{let o=!1;const n=()=>{o||(o=!0,cancelAnimationFrame(a),clearTimeout(s),r())},a=e(n),s=setTimeout(n,t)},wT=(e={type:"raf"})=>t=>(...r)=>{const o=t(...r);let n=!0,a=!1,s=!1;const l=new Set,c=e.type==="tick"?queueMicrotask:e.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?vT(window.requestAnimationFrame,100):yg(10):e.type==="callback"?e.queueNotification:yg(e.timeout),d=()=>{s=!1,a&&(a=!1,l.forEach(p=>p()))};return Object.assign({},o,{subscribe(p){const u=()=>n&&p(),f=o.subscribe(u);return l.add(p),()=>{f(),l.delete(p)}},dispatch(p){var u;try{return n=!((u=p==null?void 0:p.meta)!=null&&u[yT]),a=!n,a&&(s||(s=!0,c(d))),o.dispatch(p)}finally{n=!0}}})},xT=e=>function(r){const{autoBatch:o=!0}=r??{};let n=new fg(e);return o&&n.push(wT(typeof o=="object"?o:void 0)),n};function CT(e){const t=gT(),{reducer:r=void 0,middleware:o,devTools:n=!0,duplicateMiddlewareCheck:a=!0,preloadedState:s=void 0,enhancers:l=void 0}=e||{};let c;if(typeof r=="function")c=r;else if(ba(r))c=Wb(r);else throw new Error(process.env.NODE_ENV==="production"?Ze(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"?Ze(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"?Ze(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(g=>typeof g!="function"))throw new Error(process.env.NODE_ENV==="production"?Ze(4):"each middleware provided to configureStore must be a function");if(process.env.NODE_ENV!=="production"&&a){let g=new Set;d.forEach(y=>{if(g.has(y))throw new Error(process.env.NODE_ENV==="production"?Ze(42):"Duplicate middleware references found when creating the store. Ensure that each middleware is only included once.");g.add(y)})}let p=bl;n&&(p=iT({trace:process.env.NODE_ENV!=="production",...typeof n=="object"&&n}));const u=U_(...d),f=xT(u);if(process.env.NODE_ENV!=="production"&&l&&typeof l!="function")throw new Error(process.env.NODE_ENV==="production"?Ze(5):"`enhancers` field must be a callback");let h=typeof l=="function"?l(f):f();if(process.env.NODE_ENV!=="production"&&!Array.isArray(h))throw new Error(process.env.NODE_ENV==="production"?Ze(6):"`enhancers` callback must return an array");if(process.env.NODE_ENV!=="production"&&h.some(g=>typeof g!="function"))throw new Error(process.env.NODE_ENV==="production"?Ze(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 b=p(...h);return Bb(c,s,b)}function vg(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"?Ze(26):"`builder.addCase` should only be called before calling `builder.addMatcher`");if(o)throw new Error(process.env.NODE_ENV==="production"?Ze(27):"`builder.addCase` should only be called before calling `builder.addDefaultCase`")}const l=typeof a=="string"?a:a.type;if(!l)throw new Error(process.env.NODE_ENV==="production"?Ze(28):"`builder.addCase` cannot be called with an empty action type");if(l in t)throw new Error(process.env.NODE_ENV==="production"?Ze(29):`\`builder.addCase\` cannot be called with two reducers for the same action type '${l}'`);return t[l]=s,n},addAsyncThunk(a,s){if(process.env.NODE_ENV!=="production"&&o)throw new Error(process.env.NODE_ENV==="production"?Ze(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"?Ze(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"?Ze(31):"`builder.addDefaultCase` can only be called once");return o=a,n}};return e(n),[t,r,o]}function ST(e){return typeof e=="function"}function NT(e,t){if(process.env.NODE_ENV!=="production"&&typeof t=="object")throw new Error(process.env.NODE_ENV==="production"?Ze(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]=vg(t),a;if(ST(e))a=()=>pg(e());else{const l=pg(e);a=()=>l}function s(l=a(),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(io(p)){const h=u(p,c);return h===void 0?p:h}else{if(hr(p))return ig(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},l)}return s.getInitialState=a,s}var ET="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",kT=(e=21)=>{let t="",r=e;for(;r--;)t+=ET[Math.random()*64|0];return t},AT=Symbol.for("rtk-slice-createasyncthunk");function _T(e,t){return`${e}/${t}`}function TT({creators:e}={}){var r;const t=(r=e==null?void 0:e.asyncThunk)==null?void 0:r[AT];return function(n){const{name:a,reducerPath:s=a}=n;if(!a)throw new Error(process.env.NODE_ENV==="production"?Ze(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 l=(typeof n.reducers=="function"?n.reducers($T()):n.reducers)||{},c=Object.keys(l),d={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},p={addCase(w,N){const k=typeof w=="string"?w:w.type;if(!k)throw new Error(process.env.NODE_ENV==="production"?Ze(12):"`context.addCase` cannot be called with an empty action type");if(k in d.sliceCaseReducersByType)throw new Error(process.env.NODE_ENV==="production"?Ze(13):"`context.addCase` cannot be called with two reducers for the same action type: "+k);return d.sliceCaseReducersByType[k]=N,p},addMatcher(w,N){return d.sliceMatchers.push({matcher:w,reducer:N}),p},exposeAction(w,N){return d.actionCreators[w]=N,p},exposeCaseReducer(w,N){return d.sliceCaseReducersByName[w]=N,p}};c.forEach(w=>{const N=l[w],k={reducerName:w,type:_T(a,w),createNotation:typeof n.reducers=="function"};MT(N)?IT(k,N,p,t):PT(k,N,p)});function u(){if(process.env.NODE_ENV!=="production"&&typeof n.extraReducers=="object")throw new Error(process.env.NODE_ENV==="production"?Ze(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={},N=[],k=void 0]=typeof n.extraReducers=="function"?vg(n.extraReducers):[n.extraReducers],_={...w,...d.sliceCaseReducersByType};return NT(n.initialState,E=>{for(let D in _)E.addCase(D,_[D]);for(let D of d.sliceMatchers)E.addMatcher(D.matcher,D.reducer);for(let D of N)E.addMatcher(D.matcher,D.reducer);k&&E.addDefaultCase(k)})}const f=w=>w,h=new Map,b=new WeakMap;let g;function y(w,N){return g||(g=u()),g(w,N)}function v(){return g||(g=u()),g.getInitialState()}function S(w,N=!1){function k(E){let D=E[w];if(typeof D>"u"){if(N)D=xa(b,k,v);else if(process.env.NODE_ENV!=="production")throw new Error(process.env.NODE_ENV==="production"?Ze(15):"selectSlice returned undefined for an uninjected slice reducer")}return D}function _(E=f){const D=xa(h,N,()=>new WeakMap);return xa(D,E,()=>{const T={};for(const[O,$]of Object.entries(n.selectors??{}))T[O]=DT($,E,()=>xa(b,E,v),N);return T})}return{reducerPath:w,getSelectors:_,get selectors(){return _(k)},selectSlice:k}}const x={name:a,reducer:y,actions:d.actionCreators,caseReducers:d.sliceCaseReducersByName,getInitialState:v,...S(s),injectInto(w,{reducerPath:N,...k}={}){const _=N??s;return w.inject({reducerPath:_,reducer:y},k),{...x,...S(_,!0)}}};return x}}function DT(e,t,r,o){function n(a,...s){let l=t(a);if(typeof l>"u"){if(o)l=r();else if(process.env.NODE_ENV!=="production")throw new Error(process.env.NODE_ENV==="production"?Ze(16):"selectState returned undefined for an uninjected slice reducer")}return e(l,...s)}return n.unwrapped=e,n}var wg=TT();function $T(){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 PT({type:e,reducerName:t,createNotation:r},o,n){let a,s;if("reducer"in o){if(r&&!OT(o))throw new Error(process.env.NODE_ENV==="production"?Ze(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?dg(e,s):dg(e))}function MT(e){return e._reducerDefinitionType==="asyncThunk"}function OT(e){return e._reducerDefinitionType==="reducerWithPrepare"}function IT({type:e,reducerName:t},r,o,n){if(!n)throw new Error(process.env.NODE_ENV==="production"?Ze(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:l,rejected:c,settled:d,options:p}=r,u=n(e,a,p);o.exposeAction(t,u),s&&o.addCase(u.fulfilled,s),l&&o.addCase(u.pending,l),c&&o.addCase(u.rejected,c),d&&o.addMatcher(u.settled,d),o.exposeCaseReducer(t,{fulfilled:s||Ol,pending:l||Ol,rejected:c||Ol,settled:d||Ol})}function Ol(){}var LT=e=>"reducerPath"in e&&typeof e.reducerPath=="string",FT=e=>e.flatMap(t=>LT(t)?[[t.reducerPath,t.reducer]]:Object.entries(t)),Od=Symbol.for("rtk-state-proxy-original"),VT=e=>!!e&&!!e[Od],GT=new WeakMap,zT=(e,t,r)=>xa(GT,e,()=>new Proxy(e,{get:(o,n,a)=>{if(n===Od)return o;const s=Reflect.get(o,n,a);if(typeof s>"u"){const l=r[n];if(typeof l<"u")return l;const c=t[n];if(c){const d=c(void 0,{type:kT()});if(typeof d>"u")throw new Error(process.env.NODE_ENV==="production"?Ze(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}})),BT=e=>{if(!VT(e))throw new Error(process.env.NODE_ENV==="production"?Ze(25):"original must be used on state Proxy");return e[Od]},UT={},WT=(e=UT)=>e;function HT(...e){const t=Object.fromEntries(FT(e)),r=()=>Object.keys(t).length?Wb(t):WT;let o=r();function n(c,d){return o(c,d)}n.withLazyLoadedSlices=()=>n;const a={},s=(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 a[p],t[p]=u,o=r(),n)},l=Object.assign(function(d,p){return function(f,...h){return d(zT(p?p(f,...h):f,t,a),...h)}},{original:BT});return Object.assign(n,{inject:s,selector:l})}function Ze(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 Il={exports:{}},Id={};/**
|
|
185
191
|
* @license React
|
|
186
192
|
* use-sync-external-store-with-selector.production.js
|
|
187
193
|
*
|
|
@@ -189,7 +195,7 @@ Take a look at the reducer(s) handling this action type: ${m.type}.
|
|
|
189
195
|
*
|
|
190
196
|
* This source code is licensed under the MIT license found in the
|
|
191
197
|
* LICENSE file in the root directory of this source tree.
|
|
192
|
-
*/var
|
|
198
|
+
*/var xg;function jT(){if(xg)return Id;xg=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,a=e.useEffect,s=e.useMemo,l=e.useDebugValue;return Id.useSyncExternalStoreWithSelector=function(c,d,p,u,f){var h=n(null);if(h.current===null){var b={hasValue:!1,value:null};h.current=b}else b=h.current;h=s(function(){function y(N){if(!v){if(v=!0,S=N,N=u(N),f!==void 0&&b.hasValue){var k=b.value;if(f(k,N))return x=k}return x=N}if(k=x,r(S,N))return k;var _=u(N);return f!==void 0&&f(k,_)?(S=N,k):(S=N,x=_)}var v=!1,S,x,w=p===void 0?null:p;return[function(){return y(d())},w===null?void 0:function(){return y(w())}]},[d,p,u,f]);var g=o(c,h[0],h[1]);return a(function(){b.hasValue=!0,b.value=g},[g]),l(g),g},Id}var Ld={};/**
|
|
193
199
|
* @license React
|
|
194
200
|
* use-sync-external-store-with-selector.development.js
|
|
195
201
|
*
|
|
@@ -197,7 +203,7 @@ Take a look at the reducer(s) handling this action type: ${m.type}.
|
|
|
197
203
|
*
|
|
198
204
|
* This source code is licensed under the MIT license found in the
|
|
199
205
|
* LICENSE file in the root directory of this source tree.
|
|
200
|
-
*/var
|
|
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:
|
|
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"}})}));
|
|
206
|
+
*/var Cg;function qT(){return Cg||(Cg=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,a=t.useEffect,s=t.useMemo,l=t.useDebugValue;Ld.useSyncExternalStoreWithSelector=function(c,d,p,u,f){var h=n(null);if(h.current===null){var b={hasValue:!1,value:null};h.current=b}else b=h.current;h=s(function(){function y(N){if(!v){if(v=!0,S=N,N=u(N),f!==void 0&&b.hasValue){var k=b.value;if(f(k,N))return x=k}return x=N}if(k=x,r(S,N))return k;var _=u(N);return f!==void 0&&f(k,_)?(S=N,k):(S=N,x=_)}var v=!1,S,x,w=p===void 0?null:p;return[function(){return y(d())},w===null?void 0:function(){return y(w())}]},[d,p,u,f]);var g=o(c,h[0],h[1]);return a(function(){b.hasValue=!0,b.value=g},[g]),l(g),g},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()),Ld}var Sg;function YT(){return Sg||(Sg=1,process.env.NODE_ENV==="production"?Il.exports=jT():Il.exports=qT()),Il.exports}var QT=YT();function KT(e){e()}function RT(){let e=null,t=null;return{clear(){e=null,t=null},notify(){KT(()=>{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 Ng={notify(){},get:()=>[]};function XT(e,t){let r,o=Ng,n=0,a=!1;function s(g){p();const y=o.subscribe(g);let v=!1;return()=>{v||(v=!0,y(),u())}}function l(){o.notify()}function c(){b.onStateChange&&b.onStateChange()}function d(){return a}function p(){n++,r||(r=e.subscribe(c),o=RT())}function u(){n--,r&&n===0&&(r(),r=void 0,o.clear(),o=Ng)}function f(){a||(a=!0,p())}function h(){a&&(a=!1,u())}const b={addNestedSub:s,notifyNestedSubs:l,handleChangeWrapper:c,isSubscribed:d,trySubscribe:f,tryUnsubscribe:h,getListeners:()=>o};return b}var JT=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",ZT=JT(),eD=()=>typeof navigator<"u"&&navigator.product==="ReactNative",tD=eD(),rD=()=>ZT||tD?C.useLayoutEffect:C.useEffect,oD=rD(),Fd=Symbol.for("react-redux-context"),Vd=typeof globalThis<"u"?globalThis:{};function nD(){if(!C.createContext)return{};const e=Vd[Fd]??(Vd[Fd]=new Map);let t=e.get(C.createContext);return t||(t=C.createContext(null),process.env.NODE_ENV!=="production"&&(t.displayName="ReactRedux"),e.set(C.createContext,t)),t}var So=nD();function aD(e){const{children:t,context:r,serverState:o,store:n}=e,a=C.useMemo(()=>{const c=XT(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]),s=C.useMemo(()=>n.getState(),[n]);oD(()=>{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 l=r||So;return C.createElement(l.Provider,{value:a},t)}var sD=aD;function Gd(e=So){return function(){const r=C.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 Eg=Gd();function zd(e=So){const t=e===So?Eg:Gd(e),r=()=>{const{store:o}=t();return o};return Object.assign(r,{withTypes:()=>r}),r}var lD=zd();function iD(e=So){const t=e===So?lD:zd(e),r=()=>t().dispatch;return Object.assign(r,{withTypes:()=>r}),r}var cD=(e,t)=>e===t;function dD(e=So){const t=e===So?Eg:Gd(e),r=(o,n={})=>{const{equalityFn:a=cD}=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:l,subscription:c,getServerState:d}=s,p=C.useRef(!0),u=C.useCallback({[o.name](h){const b=o(h);if(process.env.NODE_ENV!=="production"){const{devModeChecks:g={}}=typeof n=="function"?{}:n,{identityFunctionCheck:y,stabilityCheck:v}=s,{identityFunctionCheck:S,stabilityCheck:x}={stabilityCheck:v,identityFunctionCheck:y,...g};if(x==="always"||x==="once"&&p.current){const w=o(h);if(!a(b,w)){let N;try{throw new Error}catch(k){({stack:N}=k)}console.warn("Selector "+(o.name||"unknown")+` returned a different result when called with the same parameters. This can lead to unnecessary rerenders.
|
|
207
|
+
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:b,selected2:w,stack:N})}}if((S==="always"||S==="once"&&p.current)&&b===h){let w;try{throw new Error}catch(N){({stack:w}=N)}console.warn("Selector "+(o.name||"unknown")+` returned the root state when called. This can lead to unnecessary rerenders.
|
|
208
|
+
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 b}}[o.name],[o]),f=QT.useSyncExternalStoreWithSelector(c.addNestedSub,l.getState,d||l.getState,u,a);return C.useDebugValue(f),f};return Object.assign(r,{withTypes:()=>r}),r}const Ar=e=>C.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),uD=P.forwardRef((e,t)=>C.createElement("span",{...e.dragHandleAttributes,"data-testid":e.testID,ref:t,className:e.className,title:e.title},e.label)),fD=e=>{const{component:t,...r}=e,o=Qe(r.schema.suppressStandardClassnames||_e.betweenRules,r.schema.classNames.betweenRules);return C.createElement("div",{className:o,"data-testid":Te.inlineCombinator},C.createElement(t,{...r,testID:Te.combinators}))},kg={name:"",value:"",label:""},Ag=e=>["atleast","atmost","exactly"].includes(Ge(e)??""),_g=[],pD=e=>{const{match:t,options:r,title:o,className:n,disabled:a,testID:s,schema:l,thresholdPlaceholder:c,selectorComponent:d=e.schema.controls.valueSelector,numericEditorComponent:p=e.schema.controls.valueEditor}=e,{thresholdNum:u,thresholdRule:f,thresholdSchema:h,handleChangeMode:b,handleChangeThreshold:g}=hD(e),y=P.useMemo(()=>c?{...kg,placeholder:c}:kg,[c]);return C.createElement(C.Fragment,null,C.createElement(d,{schema:l,testID:s,className:n,title:o,handleOnChange:b,disabled:a,value:t.mode,options:r,multiple:!1,listsAsArrays:!1,path:_g,level:0}),Ag(t.mode)&&C.createElement(p,{skipHook:!0,testID:s,inputType:"number",title:o,className:n,disabled:a,handleOnChange:g,field:"",operator:"",value:u,valueSource:"value",fieldData:y,schema:h,path:_g,level:0,rule:f}))},hD=e=>{const{match:t,handleOnChange:r}=e,o=C.useMemo(()=>typeof t.threshold=="number"?Math.max(0,t.threshold):1,[t.threshold]);return{thresholdNum:o,thresholdRule:C.useMemo(()=>({field:"",operator:"=",value:o}),[o]),thresholdSchema:C.useMemo(()=>({...e.schema,parseNumbers:!0}),[e.schema]),handleChangeMode:P.useCallback(n=>{Ag(n)&&typeof t.threshold!="number"?r({...t,mode:n,threshold:1}):r({...t,mode:n})},[r,t]),handleChangeThreshold:P.useCallback(n=>{r({...t,threshold:Le(n,{parseNumbers:!0})})},[r,t])}},mD=e=>{const t=C.useId();return C.createElement("label",{"data-testid":e.testID,className:e.className,title:e.title,htmlFor:t},C.createElement("input",{id:t,type:"checkbox",onChange:r=>e.handleOnChange(r.target.checked),checked:!!e.checked,disabled:e.disabled}),e.label)},Lt={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."},Ca=wg({name:"queries",initialState:{},reducers:{setQueryState:(e,{payload:{qbId:t,query:r}})=>{e[t]=r}},selectors:{getQuerySelectorById:(e,t)=>e[t]}}),Tg=C.createContext(null),Bd=wg({name:"warnings",initialState:{[Lt.errorInvalidIndependentCombinatorsProp]:!1,[Lt.errorUnnecessaryIndependentCombinatorsProp]:!1,[Lt.errorDeprecatedRuleGroupProps]:!1,[Lt.errorDeprecatedRuleProps]:!1,[Lt.errorBothQueryDefaultQuery]:!1,[Lt.errorUncontrolledToControlled]:!1,[Lt.errorControlledToUncontrolled]:!1,[Lt.errorEnabledDndWithoutReactDnD]:!1,[Lt.errorDeprecatedDebugImport]:!1},reducers:{rqbWarn:(e,{payload:t})=>{e[t]||(console.error(t),e[t]=!0)}}}),Dg=HT(Ca,Bd).withLazyLoadedSlices(),bD=e=>iD(e),gD=e=>zd(e),yD=e=>dD(e),vD=e=>({useRQB_INTERNAL_QueryBuilderDispatch:bD(e),useRQB_INTERNAL_QueryBuilderStore:gD(e),useRQB_INTERNAL_QueryBuilderSelector:yD(e)}),Ud=({payload:e,onQueryChange:t})=>r=>{r(Ca.actions.setQueryState(e)),typeof t=="function"&&t(e.query)},Wd=vD(Tg),Hd=Wd.useRQB_INTERNAL_QueryBuilderDispatch,wD=Wd.useRQB_INTERNAL_QueryBuilderStore,xD=Wd.useRQB_INTERNAL_QueryBuilderSelector,{rqbWarn:CD}=Bd.actions,rn=e=>t=>{setTimeout(()=>t(CD(e)))},SD={reducer:Dg,preloadedState:{queries:Ca.getInitialState(),warnings:Bd.getInitialState()},middleware:e=>e({serializableCheck:{ignoredActions:[Ca.actions.setQueryState.type],ignoredPaths:[/^queries\b.*\.rules\.\d+\.value$/]}})},ND=e=>{const[t,r]=P.useState(e),[o,n]=P.useState(null);return e!==t&&(n(t),r(e)),o},ED=e=>{const t=Hd(),{defaultQuery:r,queryProp:o}=e,n=ND(!!o);process.env.NODE_ENV!=="production"&&(o&&r?t(rn(Lt.errorBothQueryDefaultQuery)):n===!0&&!o&&r?t(rn(Lt.errorControlledToUncontrolled)):n===!1&&o&&!r&&t(rn(Lt.errorUncontrolledToControlled)))};function jd(e,t,r){const o=Hd();process.env.NODE_ENV!=="production"&&t&&(e==="independentCombinators"&&(r==="invalid"&&o(rn(Lt.errorInvalidIndependentCombinatorsProp)),r==="unnecessary"&&o(rn(Lt.errorUnnecessaryIndependentCombinatorsProp))),e==="rule"&&o(rn(Lt.errorDeprecatedRuleProps)),e==="ruleGroup"&&o(rn(Lt.errorDeprecatedRuleGroupProps)))}const $g=e=>{const{optionList:t,optionsMap:r,defaultOption:o}=P.useMemo(()=>Sn({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}},kD=e=>{const t=CT({...SD,devTools:e?{name:"React Query Builder"}:!1});return t.addSlice=r=>{Dg.inject(r),t.dispatch({type:crypto.randomUUID().slice(0,8),meta:`Initializing state for slice "${r.name}"`})},t};let qd=null;function Pg(e){return qd||(qd=kD(globalThis==null?void 0:globalThis.__RQB_DEVTOOLS__)),qd}const on=e=>t=>Ca.selectors.getQuerySelectorById({queries:t.queries},e),AD=(e,t)=>{const r=C.useContext(Yd);return xD(e,t)??(r==null?void 0:r.initialQuery)},_D={},TD={},DD=[],$D={},PD=()=>null,Mg=()=>"",nn=()=>!0,MD=(...e)=>{console.log(...e)};function OD(e,t){const{query:r,defaultQuery:o,getValueEditorSeparator:n=PD,getRuleClassname:a=Mg,getRuleGroupClassname:s=Mg,onAddRule:l=nn,onAddGroup:c=nn,onMoveRule:d=nn,onMoveGroup:p=nn,onGroupRule:u=nn,onGroupGroup:f=nn,onRemove:h=nn,onQueryChange:b,showCombinatorsBetweenRules:g=!1,showNotToggle:y=!1,showShiftActions:v=!1,showCloneButtons:S=!1,showLockButtons:x=!1,showMuteButtons:w=!1,suppressStandardClassnames:N=!1,resetOnFieldChange:k=!0,resetOnOperatorChange:_=!1,autoSelectField:E=!0,autoSelectOperator:D=!0,autoSelectValue:T=!0,addRuleToNewGroups:O=!1,listsAsArrays:$=!1,parseNumbers:V=!1,disabled:G=!1,validator:q,onLog:H=MD,idGenerator:Y,accessibleDescriptionGenerator:J=p_}=e,{qbId:W,rqbContext:R,fields:we,fieldMap:Q,combinators:te,getParameters:De,getOperatorsMain:de,getMatchModesMain:Se,getRuleDefaultOperator:re,getSubQueryBuilderPropsMain:me,getValueEditorTypeMain:ce,getValueSourcesMain:Ie,getValuesMain:xe,getRuleDefaultValue:be,getInputTypeMain:ae,createRule:ue,createRuleGroup:ve}=t,{controlClassnames:Oe,controlElements:et,debugMode:at,enableDragAndDrop:it,enableMountQueryChange:tt,translations:$e}=R,yt=!!g,Xt=!!y,Wt=!!v,I=!!S,F=!!x,K=!!w,j=!!k,Z=!!_,se=!!E,A=!!D,M=!!T,L=!!O,B=!!$,U=!!N,X=(e.maxLevels??0)>0?Number(e.maxLevels):1/0,z=P.useCallback((...Ne)=>{at&&H(...Ne)},[at,H]);ED({defaultQuery:o,queryProp:r});const ee=wD(),ne=Hd(),Ce=P.useMemo(()=>on(W),[W]),Fe=AD(Ce),Ue=P.useCallback(()=>Ce(ee.getState()),[ee,Ce]),ye=P.useMemo(()=>ve(),[ve]),We=r??Fe??o??ye,ct=We.id?We:ml(We,{idGenerator:Y}),[Jt]=P.useState(ct),ko=P.useMemo(()=>({...R,initialQuery:Jt}),[R,Jt]);P.useEffect(()=>{r&&!Object.is(r,Fe)&&ne(Ud({payload:{qbId:W,query:r},onQueryChange:void 0}))},[r,W,Fe,ne]);const Zt=P.useMemo(()=>Cn(ct),[ct]),pt=!!e.independentCombinators&&!Zt;jd("independentCombinators",pt||!pt&&(e.independentCombinators??"not present")!=="not present",pt?"invalid":"unnecessary");const ir=P.useRef(!1);P.useEffect(()=>{ir.current||(ir.current=!0,ne(Ud({payload:{qbId:W,query:ct},onQueryChange:tt&&typeof b=="function"?b:void 0})))},[tt,b,W,ne,ct]);const kt=P.useCallback(Ne=>{ne(Ud({payload:{qbId:W,query:Ne},onQueryChange:b}))},[b,W,ne]),Ao=Array.isArray(G)&&G||DD,At=G===!0,Rl=ct.disabled||Ao.some(Ne=>Ne.length===0),Ta=P.useCallback((Ne,je,Je)=>{const Ye=on(W)(ee.getState());if(!Ye)return;if(An(je,Ye)||At){z({qbId:W,type:Et.parentPathDisabled,rule:Ne,parentPath:je,query:Ye});return}const qe=l(Ne,je,Ye,Je);if(!qe){z({qbId:W,type:Et.onAddRuleFalse,rule:Ne,parentPath:je,query:Ye});return}const Mt=qe===!0?Ne:qe,Ht=Lb(Ye,Mt,je,{combinators:te,combinatorPreceding:Mt.combinatorPreceding??void 0,idGenerator:Y});z({qbId:W,type:Et.add,query:Ye,newQuery:Ht,newRule:Mt,parentPath:je}),kt(Ht)},[te,kt,Y,z,l,W,ee,At]),Da=P.useCallback((Ne,je,Je)=>{if(je.length>=X)return;const Ye=on(W)(ee.getState());if(!Ye)return;if(An(je,Ye)||At){z({qbId:W,type:Et.parentPathDisabled,ruleGroup:Ne,parentPath:je,query:Ye});return}const qe=c(Ne,je,Ye,Je);if(!qe){z({qbId:W,type:Et.onAddGroupFalse,ruleGroup:Ne,parentPath:je,query:Ye});return}const Mt=qe===!0?Ne:qe,Ht=Lb(Ye,Mt,je,{combinators:te,combinatorPreceding:Mt.combinatorPreceding??void 0,idGenerator:Y});z({qbId:W,type:Et.add,query:Ye,newQuery:Ht,newGroup:Mt,parentPath:je}),kt(Ht)},[te,kt,Y,z,X,c,W,ee,At]),$a=P.useCallback((Ne,je,Je)=>{const Ye=on(W)(ee.getState());if(!Ye)return;if(An(Je,Ye)&&Ne!=="disabled"||At){z({qbId:W,type:Et.pathDisabled,path:Je,prop:Ne,value:je,query:Ye});return}const qe=k_(Ye,Ne,je,Je,{resetOnFieldChange:j,resetOnOperatorChange:Z,getRuleDefaultOperator:re,getValueSources:Ie,getRuleDefaultValue:be,getMatchModes:Se});z({qbId:W,type:Et.update,query:Ye,newQuery:qe,prop:Ne,value:je,path:Je}),kt(qe)},[kt,Se,re,be,Ie,z,W,ee,At,j,Z]),$n=P.useCallback((Ne,je)=>{const Je=on(W)(ee.getState());if(!Je)return;if(An(Ne,Je)||At){z({qbId:W,type:Et.pathDisabled,path:Ne,query:Je});return}const Ye=Ct(Ne,Je);if(Ye)if(h(Ye,Ne,Je,je)){const qe=__(Je,Ne);z({qbId:W,type:Et.remove,query:Je,newQuery:qe,path:Ne,ruleOrGroup:Ye}),kt(qe)}else z({qbId:W,type:Et.onRemoveFalse,ruleOrGroup:Ye,path:Ne,query:Je})},[kt,z,h,W,ee,At]),Pa=P.useCallback((Ne,je,Je,Ye)=>{const qe=on(W)(ee.getState());if(!qe)return;if(An(Ne,qe)||At){z({qbId:W,type:Et.pathDisabled,oldPath:Ne,newPath:je,query:qe});return}const Mt=D_(qe,Ne,je,{clone:Je,combinators:te,idGenerator:Y}),Ht=Ct(Ne,qe),_o=ke(Ht),Yr=(_o?p:d)(Ht,Ne,je,qe,Mt,{clone:Je,combinators:te},Ye);if(!Yr){z({qbId:W,type:_o?Et.onMoveGroupFalse:Et.onMoveRuleFalse,ruleOrGroup:Ht,oldPath:Ne,newPath:je,clone:Je,query:qe,nextQuery:Mt});return}const To=ke(Yr)?Yr:Mt;z({qbId:W,type:Et.move,query:qe,newQuery:To,oldPath:Ne,newPath:je,clone:Je}),kt(To)},[te,kt,Y,z,p,d,W,ee,At]),Ma=P.useCallback((Ne,je,Je,Ye)=>{const qe=on(W)(ee.getState());if(!qe)return;if(An(Ne,qe)||At){z({qbId:W,type:Et.pathDisabled,sourcePath:Ne,targetPath:je,query:qe});return}const Mt=P_(qe,Ne,je,{clone:Je,combinators:te,idGenerator:Y}),Ht=Ct(Ne,qe),_o=ke(Ht),Yr=(_o?f:u)(Ht,Ne,je,qe,Mt,{clone:Je,combinators:te},Ye);if(!Yr){z({qbId:W,type:_o?Et.onGroupGroupFalse:Et.onGroupRuleFalse,ruleOrGroup:Ht,sourcePath:Ne,targetPath:je,clone:Je,query:qe,nextQuery:Mt});return}const To=ke(Yr)?Yr:Mt;z({qbId:W,type:Et.group,query:qe,newQuery:To,sourcePath:Ne,targetPath:je,clone:Je}),kt(To)},[te,kt,Y,z,f,u,W,ee,At]),{validationResult:yr,validationMap:Oa}=P.useMemo(()=>{const Ne=typeof q=="function"&&ct?q(ct):_D;return{validationResult:Ne,validationMap:typeof Ne=="boolean"?TD:Ne}},[ct,q]),Xl=it?"enabled":"disabled",Jl=Zt||yt?"enabled":"disabled",Zl=P.useMemo(()=>typeof ct.combinator=="string"?{combinator:ct.combinator}:$D,[ct.combinator]),ei=P.useMemo(()=>Qe(U||_e.queryBuilder,Qe(Oe.queryBuilder),At&&Oe.disabled,typeof yr=="boolean"&&yr&&Oe.valid,typeof yr=="boolean"&&!yr&&Oe.invalid,U||{[_e.disabled]:At,[_e.valid]:typeof yr=="boolean"&&yr,[_e.invalid]:typeof yr=="boolean"&&!yr}),[Oe.disabled,Oe.invalid,Oe.queryBuilder,Oe.valid,At,U,yr]),Ia=P.useCallback(Ne=>ve(Ne??Zt),[ve,Zt]),ti=P.useMemo(()=>({addRuleToNewGroups:L,accessibleDescriptionGenerator:J,autoSelectField:se,autoSelectOperator:A,autoSelectValue:M,classNames:Oe,combinators:te,getParameters:De,controls:et,createRule:ue,createRuleGroup:Ia,disabledPaths:Ao,enableDragAndDrop:it,fieldMap:Q,fields:we,dispatchQuery:kt,getQuery:Ue,getInputType:ae,getOperators:de,getMatchModes:Se,getRuleClassname:a,getRuleDefaultOperator:re,getRuleDefaultValue:be,getRuleGroupClassname:s,getSubQueryBuilderProps:me,getValueEditorSeparator:n,getValueEditorType:ce,getValues:xe,getValueSources:Ie,independentCombinators:Zt,listsAsArrays:B,maxLevels:X,parseNumbers:V,qbId:W,resetOnFieldChange:j,resetOnOperatorChange:Z,showCloneButtons:I,showCombinatorsBetweenRules:yt,showLockButtons:F,showMuteButtons:K,showNotToggle:Xt,showShiftActions:Wt,suppressStandardClassnames:U,validationMap:Oa}),[J,L,se,A,M,te,Oe,et,ue,Ia,Ao,kt,it,Q,we,ae,de,Se,Ue,a,re,be,s,me,n,ce,xe,Ie,De,Zt,B,X,V,W,j,Z,I,yt,F,K,Xt,Wt,U,Oa]);return{actions:P.useMemo(()=>({moveRule:Pa,onGroupAdd:Da,onGroupRemove:$n,onPropChange:$a,onRuleAdd:Ta,onRuleRemove:$n,groupRule:Ma}),[Ma,Pa,Da,$a,Ta,$n]),rootGroup:ct,rootGroupDisabled:Rl,queryDisabled:At,rqbContext:ko,schema:ti,translations:$e,wrapperClassName:ei,dndEnabledAttr:Xl,inlineCombinatorsAttr:Jl,combinatorPropObject:Zl}}const ID=e=>{const[t]=P.useState(pr),{fields:r,baseField:o,operators:n,baseOperator:a,combinators:s,baseCombinator:l,getParameters:c,translations:d,enableMountQueryChange:p=!0,controlClassnames:u,controlElements:f,getDefaultField:h,getDefaultOperator:b,getDefaultValue:g,getMatchModes:y,getOperators:v,getSubQueryBuilderProps:S,getValueEditorType:x,getValueSources:w,getInputType:N,getValues:k,autoSelectField:_=!0,autoSelectOperator:E=!0,autoSelectValue:D=!0,addRuleToNewGroups:T=!1,enableDragAndDrop:O,listsAsArrays:$=!1,debugMode:V=!1,idGenerator:G=pr}=e,[q]=P.useState(e.query??e.defaultQuery),H=QD({controlClassnames:u,controlElements:f,debugMode:V,enableDragAndDrop:O,enableMountQueryChange:p,translations:d,initialQuery:q,qbId:t,finalize:!0}),{translations:Y}=H,{fields:J,fieldMap:W}=$g({fields:r,baseField:o,autoSelectField:_,translations:Y}),{optionList:R}=P.useMemo(()=>Sn({optionList:s??aa,labelMap:pA,baseOption:l,autoSelectOption:!0}),[l,s]),we=P.useCallback((ae,ue,ve)=>Sn({optionList:(c==null?void 0:c(ae,ue,ve))??[],autoSelectOption:!0}).optionList,[c]),{optionList:Q}=P.useMemo(()=>Sn({optionList:n??hA,placeholder:Y.operators,labelMap:Im,baseOption:a,autoSelectOption:E}),[E,a,n,Y.operators]),te=P.useCallback((ae,{fieldData:ue})=>Sn({optionList:(ue==null?void 0:ue.operators)??(v==null?void 0:v(ae,{fieldData:ue}))??Q,placeholder:Y.operators,baseOption:a,labelMap:Im,autoSelectOption:E}).optionList,[E,a,v,Q,Y.operators]),De=P.useCallback(ae=>{const ue=W[ae];return ue!=null&&ue.defaultOperator?ue.defaultOperator:b?typeof b=="function"?b(ae,{fieldData:ue}):b:Pt(te(ae,{fieldData:ue})??[])??""},[W,b,te]),de=P.useCallback((ae,ue,{fieldData:ve})=>ve.valueEditorType?typeof ve.valueEditorType=="function"?ve.valueEditorType(ue):ve.valueEditorType:(x==null?void 0:x(ae,ue,{fieldData:ve}))??"text",[x]),Se=P.useCallback((ae,ue,ve)=>Pb(W[ae],ue,w),[W,w]),re=P.useCallback((ae,ue)=>m_(W[ae],y),[W,y]),me=P.useCallback((ae,ue)=>(S==null?void 0:S(ae,ue))??{},[S]),ce=P.useCallback((ae,ue,{fieldData:ve})=>Sn({optionList:(ve==null?void 0:ve.values)??(k==null?void 0:k(ae,ue,{fieldData:ve}))??[],placeholder:Y.values,autoSelectOption:D}).optionList,[D,k,Y.values]),Ie=P.useCallback(ae=>b_(ae,{fieldData:W[ae.field]??{},fields:J,getParameters:(ue,ve,Oe)=>we(ue,ve,Oe),listsAsArrays:$,getValueEditorType:(ue,ve,Oe)=>de(ue,ve,Oe),getValues:(ue,ve,Oe)=>ce(ue,ve,Oe),getDefaultValue:g&&((ue,ve)=>g(ue,ve))}),[W,J,g,de,ce,$,we]),xe=P.useCallback((ae,ue,{fieldData:ve})=>{if(N){const Oe=N(ae,ue,{fieldData:ve});if(Oe)return Oe}return"text"},[N]),be=P.useCallback(()=>{let ae="";const ue=J;/* v8 ignore else -- @preserve */if((ue==null?void 0:ue.length)>0&&ue[0]){const tt=Pt(ue);/* v8 ignore else -- @preserve */tt&&(ae=tt)}if(h)if(typeof h=="function"){const tt=h(ue);/* v8 ignore else -- @preserve */tt&&(ae=tt)}else ae=h;const ve=De(ae),Oe=Pt(Se(ae,ve,{fieldData:Xe(ue,ae)}))??"value",et=Pt(re(ae,{fieldData:Xe(ue,ae)})),at={id:G(),field:ae,operator:ve,valueSource:Oe,value:"",...et?{match:{mode:et,threshold:1}}:null},it=Ie(at);return{...at,value:it}},[J,h,re,De,Ie,Se,G]);return{qbId:t,rqbContext:H,fields:J,fieldMap:W,combinators:R,getParameters:we,getMatchModesMain:re,getOperatorsMain:te,getRuleDefaultOperator:De,getSubQueryBuilderPropsMain:me,getValueEditorTypeMain:de,getValueSourcesMain:Se,getValuesMain:ce,getRuleDefaultValue:Ie,getInputTypeMain:xe,createRule:be,createRuleGroup:P.useCallback(ae=>ae?{id:G(),rules:T?[be()]:[],not:!1}:{id:G(),rules:T?[be()]:[],combinator:Pt(R)??"",not:!1},[T,R,be,G])}},Og=e=>OD(e,ID(e)),Yd=P.createContext({}),LD=C.memo(function(t){const r=Ig(t),{previewRef:o,dropRef:n,schema:{controls:{ruleGroupBodyElements:a,ruleGroupHeaderElements:s}}}=r,l=bt(r.addRule),c=bt(r.addGroup),d=bt(r.cloneGroup),p=bt(r.toggleLockGroup),u=bt(r.toggleMuteGroup),f=bt(r.removeGroup),h=bt(r.shiftGroupUp),b=bt(r.shiftGroupDown),g=P.useMemo(()=>({addRule:l,addGroup:c,cloneGroup:d,toggleLockGroup:p,toggleMuteGroup:u,removeGroup:f,shiftGroupUp:h,shiftGroupDown:b}),[l,c,d,p,u,f,h,b]);return C.createElement("div",{ref:o,title:r.accessibleDescription,className:r.outerClassName,"data-testid":Te.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)},C.createElement("div",{ref:n,className:r.classNames.header},C.createElement(s,{...r,...g})),C.createElement("div",{className:r.classNames.body},C.createElement(a,{...r,...g})))}),FD=C.memo(function(t){const{dragRef:r,schema:{controls:{shiftActions:o,dragHandle:n,combinatorSelector:a,notToggle:s,addRuleAction:l,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]),b=P.useMemo(()=>t.schema.showShiftActions?{shiftUp:t.translations.shiftActionUp.title,shiftDown:t.translations.shiftActionDown.title}:void 0,[t.schema.showShiftActions,t.translations]),g=P.useMemo(()=>t.schema.showShiftActions?{shiftUp:t.translations.shiftActionUp.label,shiftDown:t.translations.shiftActionDown.label}:void 0,[t.schema.showShiftActions,t.translations]);return C.createElement(P.Fragment,null,t.schema.showShiftActions&&t.path.length>0&&C.createElement(o,{key:Te.shiftActions,...h,testID:Te.shiftActions,titles:b,labels:g,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&&C.createElement(n,{key:Te.dragHandle,...h,testID:Te.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&&C.createElement(a,{key:Te.combinators,...h,testID:Te.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&&C.createElement(s,{key:Te.notToggle,...h,testID:Te.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}),C.createElement(l,{key:Te.addRule,...h,testID:Te.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&&C.createElement(c,{key:Te.addGroup,...h,testID:Te.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&&C.createElement(d,{key:Te.cloneGroup,...h,testID:Te.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&&C.createElement(p,{key:Te.lockGroup,...h,testID:Te.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&&C.createElement(u,{key:Te.muteGroup,...h,testID:Te.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&&C.createElement(f,{key:Te.removeGroup,...h,testID:Te.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}))}),VD=C.memo(function(t){const{schema:{controls:{combinatorSelector:r,inlineCombinator:o,ruleGroup:n,rule:a}}}=t;return C.createElement(P.Fragment,null,t.ruleGroup.rules.map((s,l,{length:c})=>{const d=t.pathsMemo[l],p=d.path,u=d.disabled||typeof s!="string"&&s.disabled,f=Jo([0],p),h=t.path.length===0&&l===c-1,b=typeof s=="string"?[...p,s].join("-"):s.id;return C.createElement(P.Fragment,{key:b},l>0&&!t.schema.independentCombinators&&t.schema.showCombinatorsBetweenRules&&C.createElement(o,{key:Te.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 s=="string"?C.createElement(o,{key:`${Te.inlineCombinator}-independent`,options:t.schema.combinators,value:s,title:t.translations.combinators.title,className:t.classNames.combinators,handleOnChange:g=>t.onIndependentCombinatorChange(g,l),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}):ke(s)?C.createElement(n,{key:Te.ruleGroup,id:s.id,schema:t.schema,actions:t.actions,path:p,translations:t.translations,ruleGroup:s,rules:s.rules,combinator:Bt(s)?s.combinator:void 0,not:!!s.not,disabled:u,parentDisabled:t.parentDisabled||t.disabled,parentMuted:t.parentMuted||t.muted,shiftUpDisabled:f,shiftDownDisabled:h,context:t.context}):C.createElement(a,{key:Te.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:p,disabled:u,parentDisabled:t.parentDisabled||t.disabled,parentMuted:t.parentMuted||t.muted,translations:t.translations,shiftUpDisabled:f,shiftDownDisabled:h,context:t.context}))}))}),Ig=e=>{const{id:t,path:r,ruleGroup:o,schema:{qbId:n,accessibleDescriptionGenerator:a,classNames:s,combinators:l,createRule:c,createRuleGroup:d,disabledPaths:p,independentCombinators:u,validationMap:f,enableDragAndDrop:h,getRuleGroupClassname:b,suppressStandardClassnames:g},actions:{onGroupAdd:y,onGroupRemove:v,onPropChange:S,onRuleAdd:x,moveRule:w},disabled:N,parentDisabled:k,parentMuted:_,shiftUpDisabled:E,shiftDownDisabled:D,combinator:T,rules:O,not:$,dropEffect:V="move",groupItems:G=!1,dragMonitorId:q="",dropMonitorId:H="",previewRef:Y=null,dragRef:J=null,dropRef:W=null,isDragging:R=!1,isOver:we=!1,dropNotAllowed:Q=!1}=e;jd("ruleGroup",!o),Fg(h,!!(q||H||Y||J||W));const te=!!k||!!N,De=!!_||!!(o!=null&&o.muted),de=P.useMemo(()=>o&&Bt(o)?o.combinator:o?Pt(l):T??Pt(l),[T,l,o]),Se=P.useMemo(()=>{if(o){if(o.combinator===de||u)return o;const F=structuredClone(o);return F.combinator=de,F}return{rules:O,not:$}},[de,u,$,o,O]),re=P.useMemo(()=>({header:Qe(g||_e.header,s.header,we&&V==="copy"&&s.dndCopy,Q&&s.dndDropNotAllowed,g||{[_e.dndOver]:we,[_e.dndCopy]:we&&V==="copy",[_e.dndDropNotAllowed]:Q}),shiftActions:Qe(g||_e.shiftActions,s.shiftActions),dragHandle:Qe(g||_e.dragHandle,s.dragHandle),combinators:Qe(g||_e.combinators,s.valueSelector,s.combinators),notToggle:Qe(g||_e.notToggle,s.notToggle),addRule:Qe(g||_e.addRule,s.actionElement,s.addRule),addGroup:Qe(g||_e.addGroup,s.actionElement,s.addGroup),cloneGroup:Qe(g||_e.cloneGroup,s.actionElement,s.cloneGroup),lockGroup:Qe(g||_e.lockGroup,s.actionElement,s.lockGroup),muteGroup:Qe(g||_e.muteGroup,s.actionElement,s.muteGroup),removeGroup:Qe(g||_e.removeGroup,s.actionElement,s.removeGroup),body:Qe(g||_e.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,V,Q,we,g]),me=P.useCallback(F=>{te||S("combinator",F,r)},[te,S,r]),ce=P.useCallback((F,K,j)=>{te||S("combinator",F,[...r,K])},[te,S,r]),Ie=P.useCallback((F,K)=>{te||S("not",F,r)},[te,S,r]),xe=P.useCallback((F,K)=>{if(!te){const j=c();x(j,r,K)}},[c,te,x,r]),be=P.useCallback((F,K)=>{if(!te){const j=d();y(j,r,K)}},[d,te,y,r]),ae=P.useCallback(()=>{if(!te){const F=[...mt(r),r.at(-1)+1];w(r,F,!0)}},[te,w,r]),ue=P.useCallback((F,K)=>{!te&&!E&&w(r,"up",F==null?void 0:F.altKey)},[te,w,r,E]),ve=P.useCallback((F,K)=>{!te&&!D&&w(r,"down",F==null?void 0:F.altKey)},[te,w,r,D]),Oe=P.useCallback(()=>{S("disabled",!te,r)},[te,S,r]),et=P.useCallback(()=>{S("muted",!Se.muted,r)},[Se.muted,S,r]),at=P.useCallback(()=>{te||v(r)},[te,v,r]),it=f[t??""],tt=P.useMemo(()=>Db(it),[it]),$e=P.useMemo(()=>{var F;return u?null:((F=Xe(l,de))==null?void 0:F.className)??""},[de,l,u]),yt=P.useMemo(()=>b(Se),[b,Se]),Xt=P.useMemo(()=>Qe(yt,$e,g||_e.ruleGroup,s.ruleGroup,te&&s.disabled,De&&s.muted,R&&s.dndDragging,we&&G&&s.dndGroup,g||{[_e.disabled]:te,[_e.muted]:De,[_e.dndDragging]:R,[_e.dndGroup]:we&&G},tt),[s.disabled,s.muted,s.dndDragging,s.dndGroup,s.ruleGroup,$e,te,De,G,R,we,yt,g,tt]),Wt=KD({disabled:te,disabledPaths:p,path:r,nestedArray:Se.rules}),I=P.useMemo(()=>a({path:r,qbId:n}),[a,r,n]);return{...e,addGroup:be,addRule:xe,accessibleDescription:I,classNames:re,cloneGroup:ae,combinator:de,disabled:te,dragMonitorId:q,dragRef:J,dropMonitorId:H,dropRef:W,isDragging:R,isOver:we,muted:De,onCombinatorChange:me,onGroupAdd:y,onIndependentCombinatorChange:ce,onNotToggleChange:Ie,outerClassName:Xt,parentDisabled:k,pathsMemo:Wt,previewRef:Y,removeGroup:at,ruleGroup:Se,shiftGroupUp:ue,shiftGroupDown:ve,toggleLockGroup:Oe,toggleMuteGroup:et,validationClassName:tt,validationResult:it}},GD=e=>{var t,r,o,n;return C.createElement("div",{"data-testid":e.testID,className:e.className},C.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),C.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))},zD=({name:e,disabled:t,checked:r,label:o,handleOnChange:n})=>{const a=C.useId();return C.createElement("label",{htmlFor:a},C.createElement("input",{id:a,type:"radio",value:e,disabled:t,checked:r,onChange:s=>n(s.target.value)}),o)},BD=e=>{const{operator:t,value:r,handleOnChange:o,title:n,className:a,type:s="text",inputType:l,values:c=[],listsAsArrays:d,fieldData:p,disabled:u,separator:f=null,testID:h,selectorComponent:b=e.schema.controls.valueSelector,parseNumbers:g,skipHook:y,valueSource:v,...S}=e,{valueAsArray:x,multiValueHandler:w,bigIntValueHandler:N,parseNumberMethod:k,valueListItemClassName:_,inputTypeCoerced:E}=UD(e);if(t==="null"||t==="notNull")return null;const D=(p==null?void 0:p.placeholder)??"";if((t==="between"||t==="notBetween")&&(s==="select"||s==="text")){const T=["from","to"].map((O,$)=>s==="text"?C.createElement("input",{key:O,type:E,placeholder:D,value:x[$]??"",className:_,disabled:u,onChange:V=>w(V.target.value,$)}):C.createElement(b,{key:O,...S,schema:e.schema,className:_,handleOnChange:V=>w(V,$),disabled:u,value:x[$]??Pt(c),options:c,listsAsArrays:d}));return C.createElement("span",{"data-testid":h,className:a,title:n},T[0],f,T[1])}switch(s){case"select":case"multiselect":return C.createElement(b,{...S,schema:e.schema,testID:h,className:a,title:n,handleOnChange:o,disabled:u,value:r,options:c,multiple:s==="multiselect",listsAsArrays:d});case"textarea":return C.createElement("textarea",{"data-testid":h,placeholder:D,value:r,title:n,className:a,disabled:u,onChange:T=>o(T.target.value)});case"switch":case"checkbox":return C.createElement("input",{"data-testid":h,type:"checkbox",className:a,title:n,onChange:T=>o(T.target.checked),checked:!!r,disabled:u});case"radio":return C.createElement("span",{"data-testid":h,className:a,title:n},c.map(T=>C.createElement(zD,{key:T.name,name:T.name,disabled:u,checked:r===T.name,handleOnChange:o,label:T.label})))}return l==="bigint"?C.createElement("input",{"data-testid":h,type:E,placeholder:D,value:`${r}`,title:n,className:a,disabled:u,onChange:T=>N(T.target.value)}):C.createElement("input",{"data-testid":h,type:E,placeholder:D,value:r,title:n,className:a,disabled:u,onChange:T=>o(Le(T.target.value,{parseNumbers:k}))})},UD=e=>{const{handleOnChange:t,inputType:r,operator:o,value:n,listsAsArrays:a,parseNumbers:s,values:l,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(Ee(n,{retainEmptyStrings:!0})[0]??"")},[t,r,o,d,c,n]);const f=P.useMemo(()=>Ee(n,{retainEmptyStrings:!0}),[n]),h=P.useMemo(()=>ad({parseNumbers:s,inputType:r}),[r,s]);return{valueAsArray:f,multiValueHandler:P.useCallback((b,g)=>{const y=Le(b,{parseNumbers:h}),v=g===0&&(o==="between"||o==="notBetween")&&(f.length<2||f[1]===void 0);if(f[g]===y&&!v){t(a?f:sa(f,","));return}const S=[...f];S[g]=y,v&&(S[1]=Pt(l)),t(a?S:sa(S,","))},[t,a,o,h,f,l]),bigIntValueHandler:P.useCallback(b=>{const g=Le(b,{parseNumbers:h,bigIntOnOverflow:!0});let y;try{y=BigInt(g)}catch{t(g);return}t(y)},[t,h]),parseNumberMethod:h,valueListItemClassName:Qe(u||_e.valueListItem,p==null?void 0:p.valueListItem),inputTypeCoerced:r==="bigint"||o==="in"||o==="notIn"?"text":r||"text"}},WD=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])},HD=e=>Hm(e)?e.map(t=>C.createElement("optgroup",{key:t.label,label:t.label},t.options.map(r=>C.createElement("option",{key:r.name,value:r.name,disabled:r.disabled},r.label)))):Array.isArray(e)?e.map(t=>C.createElement("option",{key:t.name,value:t.name,disabled:t.disabled},t.label)):null,Sa=e=>{const{onChange:t,val:r}=jD(e),o=WD({multiple:e.multiple,onChange:t});return C.createElement("select",{"data-testid":e.testID,className:e.className,value:r,title:e.title,disabled:e.disabled,multiple:!!e.multiple,onChange:o},HD(e.options))},jD=e=>{const{handleOnChange:t,listsAsArrays:r=!1,multiple:o=!1,value:n}=e;return{onChange:P.useCallback(a=>{if(o){const s=Ee(a);t(r?s:sa(s,","))}else t(a)},[t,r,o]),val:P.useMemo(()=>o?Ee(n).map(String):n,[o,n])}},qD=({props:e})=>{const t=Og(e),r=t.schema.controls.ruleGroup,o=Yd;return C.createElement(o.Provider,{key:t.dndEnabledAttr,value:t.rqbContext},C.createElement("div",{role:"form",className:t.wrapperClassName,"data-dnd":t.dndEnabledAttr,"data-inlinecombinators":t.inlineCombinatorsAttr},C.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:Fm,disabled:t.rootGroupDisabled,shiftUpDisabled:!0,shiftDownDisabled:!0,parentDisabled:t.queryDisabled,context:e.context})))},Ll=()=>null,YD=P.forwardRef(Ll),Fl={},QD=({finalize:e,...t})=>{var b,g,y,v,S,x,w,N,k,_,E,D,T,O,$,V,G,q,H,Y,J,W,R,we,Q,te,De,de,Se,re,me,ce,Ie,xe,be,ae,ue,ve,Oe,et,at,it,tt,$e,yt,Xt,Wt,I,F,K,j,Z,se,A,M,L,B,U,X,z,ee,ne,Ce,Fe,Ue,ye,We,ct,Jt,ko,Zt,pt,ir,kt,Ao,At,Rl,Ta,Da,$a,$n,Pa,Ma,yr,Oa,Xl,Jl,Zl,ei,Ia,ti,Ne,je,Je,Ye,qe,Mt,Ht,_o,Yr,To,nv,av,sv,lv,iv,cv,dv;const r=P.useContext(Yd),o=P.useMemo(()=>x_(t,r),[t,r,e]),n=e?r.enableDragAndDrop!==!1&&Mb(!1,t.enableDragAndDrop,r.enableDragAndDrop):t.enableDragAndDrop??r.enableDragAndDrop,a=P.useMemo(()=>y_(r.controlClassnames,t.controlClassnames),[r.controlClassnames,t.controlClassnames]),s=P.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]),l=r.controlElements??Fl,c=t.controlElements??Fl,d=P.useCallback((Dr,La,Fa)=>{const Va=Dr==="dragHandle"?YD:Ll,ri=(Dr.endsWith("Action")&&c.actionElement?c.actionElement:void 0)??(Dr.endsWith("Selector")&&c.valueSelector?c.valueSelector:void 0),oi=(Dr.endsWith("Action")&&l.actionElement?l.actionElement:void 0)??(Dr.endsWith("Selector")&&l.valueSelector?l.valueSelector:void 0),Ga=La===null?Va:La??ri??(Fa===null?Va:Fa??oi);return Ga?{[Dr]:Ga}:{[Dr]:Vl[Dr]}},[l.actionElement,l.valueSelector,e,c.actionElement,c.valueSelector]),p=P.useMemo(()=>Object.assign({},d("addGroupAction",c.addGroupAction,l.addGroupAction),d("addRuleAction",c.addRuleAction,l.addRuleAction),d("cloneGroupAction",c.cloneGroupAction,l.cloneGroupAction),d("cloneRuleAction",c.cloneRuleAction,l.cloneRuleAction),d("combinatorSelector",c.combinatorSelector,l.combinatorSelector),d("dragHandle",c.dragHandle,l.dragHandle),d("fieldSelector",c.fieldSelector,l.fieldSelector),d("inlineCombinator",c.inlineCombinator,l.inlineCombinator),d("lockGroupAction",c.lockGroupAction,l.lockGroupAction),d("lockRuleAction",c.lockRuleAction,l.lockRuleAction),d("muteGroupAction",c.muteGroupAction,l.muteGroupAction),d("muteRuleAction",c.muteRuleAction,l.muteRuleAction),d("notToggle",c.notToggle,l.notToggle),d("operatorSelector",c.operatorSelector,l.operatorSelector),d("removeGroupAction",c.removeGroupAction,l.removeGroupAction),d("removeRuleAction",c.removeRuleAction,l.removeRuleAction),d("shiftActions",c.shiftActions,l.shiftActions),{valueEditor:c.valueEditor===null?Ll:c.valueEditor??(l.valueEditor===null?Ll:l.valueEditor)??Vl.valueEditor},d("valueSourceSelector",c.valueSourceSelector,l.valueSourceSelector),d("matchModeEditor",c.matchModeEditor,l.matchModeEditor),d("rule",c.rule,l.rule),d("ruleGroup",c.ruleGroup,l.ruleGroup),d("ruleGroupBodyElements",c.ruleGroupBodyElements,l.ruleGroupBodyElements),d("ruleGroupHeaderElements",c.ruleGroupHeaderElements,l.ruleGroupHeaderElements),{actionElement:c.actionElement??l.actionElement??Vl.actionElement},{valueSelector:c.valueSelector??l.valueSelector??Vl.valueSelector}),[l.actionElement,l.addGroupAction,l.addRuleAction,l.cloneGroupAction,l.cloneRuleAction,l.combinatorSelector,l.dragHandle,l.fieldSelector,l.inlineCombinator,l.lockGroupAction,l.lockRuleAction,l.muteGroupAction,l.muteRuleAction,l.matchModeEditor,l.notToggle,l.operatorSelector,l.removeGroupAction,l.removeRuleAction,l.rule,l.ruleGroup,l.ruleGroupBodyElements,l.ruleGroupHeaderElements,l.shiftActions,l.valueEditor,l.valueSelector,l.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 Dr,La,Fa,Va,ri,oi,Ga,uv,fv,pv,hv,mv,bv,gv,yv,vv,wv,xv,Cv,Sv,Nv,Ev,kv,Av,_v,Tv,Dv,$v,Pv,Mv,Ov,Iv,Lv,Fv,Vv,Gv,zv,Bv,Uv,Wv,Hv,jv,qv,Yv,Qv,Kv,Rv,Xv,Jv,Zv,e0,t0,r0,o0,n0,a0,s0,l0,i0,c0,d0,u0,f0,p0,h0,m0,b0,g0,y0,v0,w0,x0,C0,S0,N0,E0,k0,A0,_0,T0,D0,$0,P0,M0,O0,I0,L0,F0,V0,G0,z0,B0,U0,W0,H0,j0,q0,Y0,Q0,K0,R0,X0,J0,Z0,ew,tw,rw,ow;return Object.assign({},nt("addGroup",{label:[(Dr=u.addGroup)==null?void 0:Dr.label,(La=f.addGroup)==null?void 0:La.label],title:[(Fa=u.addGroup)==null?void 0:Fa.title,(Va=f.addGroup)==null?void 0:Va.title]},ot),nt("addRule",{label:[(ri=u.addRule)==null?void 0:ri.label,(oi=f.addRule)==null?void 0:oi.label],title:[(Ga=u.addRule)==null?void 0:Ga.title,(uv=f.addRule)==null?void 0:uv.title]},ot),nt("cloneRule",{label:[(fv=u.cloneRule)==null?void 0:fv.label,(pv=f.cloneRule)==null?void 0:pv.label],title:[(hv=u.cloneRule)==null?void 0:hv.title,(mv=f.cloneRule)==null?void 0:mv.title]},ot),nt("cloneRuleGroup",{label:[(bv=u.cloneRuleGroup)==null?void 0:bv.label,(gv=f.cloneRuleGroup)==null?void 0:gv.label],title:[(yv=u.cloneRuleGroup)==null?void 0:yv.title,(vv=f.cloneRuleGroup)==null?void 0:vv.title]},ot),nt("combinators",{title:[(wv=u.combinators)==null?void 0:wv.title,(xv=f.combinators)==null?void 0:xv.title]},ot),nt("dragHandle",{label:[(Cv=u.dragHandle)==null?void 0:Cv.label,(Sv=f.dragHandle)==null?void 0:Sv.label],title:[(Nv=u.dragHandle)==null?void 0:Nv.title,(Ev=f.dragHandle)==null?void 0:Ev.title]},ot),nt("fields",{placeholderGroupLabel:[(kv=u.fields)==null?void 0:kv.placeholderGroupLabel,(Av=f.fields)==null?void 0:Av.placeholderGroupLabel],placeholderLabel:[(_v=u.fields)==null?void 0:_v.placeholderLabel,(Tv=f.fields)==null?void 0:Tv.placeholderLabel],placeholderName:[(Dv=u.fields)==null?void 0:Dv.placeholderName,($v=f.fields)==null?void 0:$v.placeholderName],title:[(Pv=u.fields)==null?void 0:Pv.title,(Mv=f.fields)==null?void 0:Mv.title]},ot),nt("lockGroup",{label:[(Ov=u.lockGroup)==null?void 0:Ov.label,(Iv=f.lockGroup)==null?void 0:Iv.label],title:[(Lv=u.lockGroup)==null?void 0:Lv.title,(Fv=f.lockGroup)==null?void 0:Fv.title]},ot),nt("lockGroupDisabled",{label:[(Vv=u.lockGroupDisabled)==null?void 0:Vv.label,(Gv=f.lockGroupDisabled)==null?void 0:Gv.label],title:[(zv=u.lockGroupDisabled)==null?void 0:zv.title,(Bv=f.lockGroupDisabled)==null?void 0:Bv.title]},ot),nt("lockRule",{label:[(Uv=u.lockRule)==null?void 0:Uv.label,(Wv=f.lockRule)==null?void 0:Wv.label],title:[(Hv=u.lockRule)==null?void 0:Hv.title,(jv=f.lockRule)==null?void 0:jv.title]},ot),nt("lockRuleDisabled",{label:[(qv=u.lockRuleDisabled)==null?void 0:qv.label,(Yv=f.lockRuleDisabled)==null?void 0:Yv.label],title:[(Qv=u.lockRuleDisabled)==null?void 0:Qv.title,(Kv=f.lockRuleDisabled)==null?void 0:Kv.title]},ot),nt("muteGroup",{label:[(Rv=u.muteGroup)==null?void 0:Rv.label,(Xv=f.muteGroup)==null?void 0:Xv.label],title:[(Jv=u.muteGroup)==null?void 0:Jv.title,(Zv=f.muteGroup)==null?void 0:Zv.title]},ot),nt("unmuteGroup",{label:[(e0=u.unmuteGroup)==null?void 0:e0.label,(t0=f.unmuteGroup)==null?void 0:t0.label],title:[(r0=u.unmuteGroup)==null?void 0:r0.title,(o0=f.unmuteGroup)==null?void 0:o0.title]},ot),nt("muteRule",{label:[(n0=u.muteRule)==null?void 0:n0.label,(a0=f.muteRule)==null?void 0:a0.label],title:[(s0=u.muteRule)==null?void 0:s0.title,(l0=f.muteRule)==null?void 0:l0.title]},ot),nt("unmuteRule",{label:[(i0=u.unmuteRule)==null?void 0:i0.label,(c0=f.unmuteRule)==null?void 0:c0.label],title:[(d0=u.unmuteRule)==null?void 0:d0.title,(u0=f.unmuteRule)==null?void 0:u0.title]},ot),nt("notToggle",{label:[(f0=u.notToggle)==null?void 0:f0.label,(p0=f.notToggle)==null?void 0:p0.label],title:[(h0=u.notToggle)==null?void 0:h0.title,(m0=f.notToggle)==null?void 0:m0.title]},ot),nt("operators",{placeholderGroupLabel:[(b0=u.operators)==null?void 0:b0.placeholderGroupLabel,(g0=f.operators)==null?void 0:g0.placeholderGroupLabel],placeholderLabel:[(y0=u.operators)==null?void 0:y0.placeholderLabel,(v0=f.operators)==null?void 0:v0.placeholderLabel],placeholderName:[(w0=u.operators)==null?void 0:w0.placeholderName,(x0=f.operators)==null?void 0:x0.placeholderName],title:[(C0=u.operators)==null?void 0:C0.title,(S0=f.operators)==null?void 0:S0.title]},ot),nt("values",{placeholderGroupLabel:[(N0=u.values)==null?void 0:N0.placeholderGroupLabel,(E0=f.values)==null?void 0:E0.placeholderGroupLabel],placeholderLabel:[(k0=u.values)==null?void 0:k0.placeholderLabel,(A0=f.values)==null?void 0:A0.placeholderLabel],placeholderName:[(_0=u.values)==null?void 0:_0.placeholderName,(T0=f.values)==null?void 0:T0.placeholderName],title:[(D0=u.values)==null?void 0:D0.title,($0=f.values)==null?void 0:$0.title]},ot),nt("removeGroup",{label:[(P0=u.removeGroup)==null?void 0:P0.label,(M0=f.removeGroup)==null?void 0:M0.label],title:[(O0=u.removeGroup)==null?void 0:O0.title,(I0=f.removeGroup)==null?void 0:I0.title]},ot),nt("removeRule",{label:[(L0=u.removeRule)==null?void 0:L0.label,(F0=f.removeRule)==null?void 0:F0.label],title:[(V0=u.removeRule)==null?void 0:V0.title,(G0=f.removeRule)==null?void 0:G0.title]},ot),nt("shiftActionDown",{label:[(z0=u.shiftActionDown)==null?void 0:z0.label,(B0=f.shiftActionDown)==null?void 0:B0.label],title:[(U0=u.shiftActionDown)==null?void 0:U0.title,(W0=f.shiftActionDown)==null?void 0:W0.title]},ot),nt("shiftActionUp",{label:[(H0=u.shiftActionUp)==null?void 0:H0.label,(j0=f.shiftActionUp)==null?void 0:j0.label],title:[(q0=u.shiftActionUp)==null?void 0:q0.title,(Y0=f.shiftActionUp)==null?void 0:Y0.title]},ot),nt("matchMode",{title:[(Q0=u.matchMode)==null?void 0:Q0.title,(K0=f.matchMode)==null?void 0:K0.title]},ot),nt("matchThreshold",{title:[(R0=u.matchThreshold)==null?void 0:R0.title,(X0=f.matchThreshold)==null?void 0:X0.title],placeholderName:[(J0=u.matchThreshold)==null?void 0:J0.placeholderName,(Z0=f.matchThreshold)==null?void 0:Z0.placeholderName]},ot),nt("value",{title:[(ew=u.value)==null?void 0:ew.title,(tw=f.value)==null?void 0:tw.title]},ot),nt("valueSourceSelector",{title:[(rw=u.valueSourceSelector)==null?void 0:rw.title,(ow=f.valueSourceSelector)==null?void 0:ow.title]},ot))},[(b=f.addGroup)==null?void 0:b.label,(g=f.addGroup)==null?void 0:g.title,(y=f.addRule)==null?void 0:y.label,(v=f.addRule)==null?void 0:v.title,(S=f.cloneRule)==null?void 0:S.label,(x=f.cloneRule)==null?void 0:x.title,(w=f.cloneRuleGroup)==null?void 0:w.label,(N=f.cloneRuleGroup)==null?void 0:N.title,(k=f.combinators)==null?void 0:k.title,(_=f.dragHandle)==null?void 0:_.label,(E=f.dragHandle)==null?void 0:E.title,(D=f.fields)==null?void 0:D.placeholderGroupLabel,(T=f.fields)==null?void 0:T.placeholderLabel,(O=f.fields)==null?void 0:O.placeholderName,($=f.fields)==null?void 0:$.title,(V=f.lockGroup)==null?void 0:V.label,(G=f.lockGroup)==null?void 0:G.title,(q=f.lockGroupDisabled)==null?void 0:q.label,(H=f.lockGroupDisabled)==null?void 0:H.title,(Y=f.lockRule)==null?void 0:Y.label,(J=f.lockRule)==null?void 0:J.title,(W=f.lockRuleDisabled)==null?void 0:W.label,(R=f.lockRuleDisabled)==null?void 0:R.title,(we=f.muteGroup)==null?void 0:we.label,(Q=f.muteGroup)==null?void 0:Q.title,(te=f.unmuteGroup)==null?void 0:te.label,(De=f.unmuteGroup)==null?void 0:De.title,(de=f.muteRule)==null?void 0:de.label,(Se=f.muteRule)==null?void 0:Se.title,(re=f.unmuteRule)==null?void 0:re.label,(me=f.unmuteRule)==null?void 0:me.title,(ce=f.matchMode)==null?void 0:ce.title,(Ie=f.matchThreshold)==null?void 0:Ie.title,(xe=f.matchThreshold)==null?void 0:xe.placeholderName,(be=f.notToggle)==null?void 0:be.label,(ae=f.notToggle)==null?void 0:ae.title,(ue=f.operators)==null?void 0:ue.placeholderGroupLabel,(ve=f.operators)==null?void 0:ve.placeholderLabel,(Oe=f.operators)==null?void 0:Oe.placeholderName,(et=f.operators)==null?void 0:et.title,(at=f.removeGroup)==null?void 0:at.label,(it=f.removeGroup)==null?void 0:it.title,(tt=f.removeRule)==null?void 0:tt.label,($e=f.removeRule)==null?void 0:$e.title,(yt=f.shiftActionDown)==null?void 0:yt.label,(Xt=f.shiftActionDown)==null?void 0:Xt.title,(Wt=f.shiftActionUp)==null?void 0:Wt.label,(I=f.shiftActionUp)==null?void 0:I.title,(F=f.value)==null?void 0:F.title,(K=f.values)==null?void 0:K.placeholderGroupLabel,(j=f.values)==null?void 0:j.placeholderLabel,(Z=f.values)==null?void 0:Z.placeholderName,(se=f.values)==null?void 0:se.title,(A=f.valueSourceSelector)==null?void 0:A.title,e,(M=u.addGroup)==null?void 0:M.label,(L=u.addGroup)==null?void 0:L.title,(B=u.addRule)==null?void 0:B.label,(U=u.addRule)==null?void 0:U.title,(X=u.cloneRule)==null?void 0:X.label,(z=u.cloneRule)==null?void 0:z.title,(ee=u.cloneRuleGroup)==null?void 0:ee.label,(ne=u.cloneRuleGroup)==null?void 0:ne.title,(Ce=u.combinators)==null?void 0:Ce.title,(Fe=u.dragHandle)==null?void 0:Fe.label,(Ue=u.dragHandle)==null?void 0:Ue.title,(ye=u.fields)==null?void 0:ye.placeholderGroupLabel,(We=u.fields)==null?void 0:We.placeholderLabel,(ct=u.fields)==null?void 0:ct.placeholderName,(Jt=u.fields)==null?void 0:Jt.title,(ko=u.lockGroup)==null?void 0:ko.label,(Zt=u.lockGroup)==null?void 0:Zt.title,(pt=u.lockGroupDisabled)==null?void 0:pt.label,(ir=u.lockGroupDisabled)==null?void 0:ir.title,(kt=u.lockRule)==null?void 0:kt.label,(Ao=u.lockRule)==null?void 0:Ao.title,(At=u.lockRuleDisabled)==null?void 0:At.label,(Rl=u.lockRuleDisabled)==null?void 0:Rl.title,(Ta=u.muteGroup)==null?void 0:Ta.label,(Da=u.muteGroup)==null?void 0:Da.title,($a=u.unmuteGroup)==null?void 0:$a.label,($n=u.unmuteGroup)==null?void 0:$n.title,(Pa=u.muteRule)==null?void 0:Pa.label,(Ma=u.muteRule)==null?void 0:Ma.title,(yr=u.unmuteRule)==null?void 0:yr.label,(Oa=u.unmuteRule)==null?void 0:Oa.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,(Ia=u.notToggle)==null?void 0:Ia.title,(ti=u.operators)==null?void 0:ti.placeholderGroupLabel,(Ne=u.operators)==null?void 0:Ne.placeholderLabel,(je=u.operators)==null?void 0:je.placeholderName,(Je=u.operators)==null?void 0:Je.title,(Ye=u.removeGroup)==null?void 0:Ye.label,(qe=u.removeGroup)==null?void 0:qe.title,(Mt=u.removeRule)==null?void 0:Mt.label,(Ht=u.removeRule)==null?void 0:Ht.title,(_o=u.shiftActionDown)==null?void 0:_o.label,(Yr=u.shiftActionDown)==null?void 0:Yr.title,(To=u.shiftActionUp)==null?void 0:To.label,(nv=u.shiftActionUp)==null?void 0:nv.title,(av=u.value)==null?void 0:av.title,(sv=u.values)==null?void 0:sv.placeholderGroupLabel,(lv=u.values)==null?void 0:lv.placeholderLabel,(iv=u.values)==null?void 0:iv.placeholderName,(cv=u.values)==null?void 0:cv.title,(dv=u.valueSourceSelector)==null?void 0:dv.title]);return{...o,controlClassnames:s,controlElements:p,enableDragAndDrop:n,translations:h,initialQuery:t.initialQuery,qbId:t.qbId}},KD=({disabled:e,path:t,nestedArray:r,disabledPaths:o})=>{const n=r.length;return P.useMemo(()=>{const a=[];for(let s=0;s<n;s++){const l=[...t,s];a[s]={path:l,disabled:e||o.some(c=>Jo(l,c))}}return a},[e,t,n,o])};let Lg=!1;const Fg=(e,t)=>{process.env.NODE_ENV!=="production"&&!Lg&&e&&!t&&(console.error(Lt.errorEnabledDndWithoutReactDnD),Lg=!0)},bt=e=>P.useCallback((t,r)=>{t==null||t.preventDefault(),t==null||t.stopPropagation(),e(t,r)},[e]),RD={mode:"all"},XD=[{name:"",value:"",label:""}],JD=C.memo(function(t){const r=t$(t),{dndRef:o}=r,n=bt(r.cloneRule),a=bt(r.toggleLockRule),s=bt(r.toggleMuteRule),l=bt(r.removeRule),c=bt(r.shiftRuleUp),d=bt(r.shiftRuleDown),p=P.useMemo(()=>({cloneRule:n,toggleLockRule:a,toggleMuteRule:s,removeRule:l,shiftRuleUp:c,shiftRuleDown:d}),[n,l,d,c,a,s]);return C.createElement("div",{ref:o,"data-testid":Te.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?C.createElement(e$,{...r,...p}):C.createElement(Vg,{...r,...p}))}),Vg=C.memo(function(t){const{dragRef:r,schema:{controls:{shiftActions:o,dragHandle:n,fieldSelector:a,matchModeEditor:s,operatorSelector:l,valueSourceSelector:c,valueEditor:d,cloneRuleAction:p,lockRuleAction:u,muteRuleAction:f,removeRuleAction:h,ruleGroupBodyElements:b,ruleGroupHeaderElements:g}},groupComponentsWrapper:y=C.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]),S=P.useMemo(()=>!(t.schema.fields.length===1&&Er(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 C.createElement(C.Fragment,null,t.schema.showShiftActions&&C.createElement(o,{key:Te.shiftActions,...v,testID:Te.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&&C.createElement(n,{key:Te.dragHandle,...v,testID:Te.dragHandle,ref:r,title:t.translations.dragHandle.title,label:t.translations.dragHandle.label,className:t.classNames.dragHandle,dragHandleAttributes:t.dragHandleAttributes,ruleOrGroup:t.rule}),S&&C.createElement(a,{key:Te.fields,...v,testID:Te.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?C.createElement(s,{key:Te.matchModeEditor,...v,testID:Te.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??RD,className:t.classNames.matchMode,classNames:t.classNames,handleOnChange:t.onChangeMatchMode}):C.createElement(C.Fragment,null,C.createElement(l,{key:Te.operators,...v,testID:Te.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&&C.createElement(C.Fragment,null,!["null","notnull"].includes(Ge(`${t.rule.operator}`))&&t.valueSources.length>1&&C.createElement(c,{key:Te.valueSourceSelector,...v,testID:Te.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}),C.createElement(d,{key:Te.valueEditor,...v,testID:Te.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&&C.createElement(y,{className:t.subQuery.classNames.header},C.createElement(g,t.subQuery)),t.schema.showCloneButtons&&C.createElement(p,{key:Te.cloneRule,...v,testID:Te.cloneRule,label:t.translations.cloneRule.label,title:t.translations.cloneRule.title,className:t.classNames.cloneRule,ruleOrGroup:t.rule,handleOnClick:t.cloneRule}),t.schema.showLockButtons&&C.createElement(u,{key:Te.lockRule,...v,testID:Te.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&&C.createElement(f,{key:Te.muteRule,...v,testID:Te.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}),C.createElement(h,{key:Te.removeRule,...v,testID:Te.removeRule,label:t.translations.removeRule.label,title:t.translations.removeRule.title,className:t.classNames.removeRule,ruleOrGroup:t.rule,handleOnClick:t.removeRule}),t.subQuery&&C.createElement(y,{className:t.subQuery.classNames.body},C.createElement(b,t.subQuery)))}),ZD=e=>C.createElement("div",e),e$=C.memo(function(t){const r=P.useMemo(()=>t.schema.createRuleGroup(),[t.schema]),o=Og({...t.subQueryBuilderProps,enableDragAndDrop:!1,disabled:t.disabled,fields:t.subproperties.fields,enableMountQueryChange:!ke(t.rule.value)||!t.rule.value.id,query:ke(t.rule.value)?t.rule.value:r,onQueryChange:t.onChangeValue}),n=Ig({...o,ruleGroup:o.rootGroup,path:Fm,disabled:t.disabled,parentDisabled:o.queryDisabled,id:o.rootGroup.id,shiftUpDisabled:!0,shiftDownDisabled:!0}),a=bt(n.addRule),s=bt(n.addGroup),l=bt(n.cloneGroup),c=bt(n.toggleLockGroup),d=bt(n.removeGroup),p=bt(n.shiftGroupUp),u=bt(n.shiftGroupDown),f=P.useMemo(()=>({...n,addGroup:s,addRule:a,cloneGroup:l,removeGroup:d,shiftGroupDown:u,shiftGroupUp:p,toggleLockGroup:c}),[s,a,l,d,u,p,n,c]);return C.createElement(Vg,{...t,groupComponentsWrapper:t.groupComponentsWrapper??ZD,subQuery:f})}),t$=e=>{const{id:t,path:r,rule:o,schema:{classNames:n,fields:a,fieldMap:s,getParameters:l,getInputType:c,getMatchModes:d,getOperators:p,getSubQueryBuilderProps:u,getValueEditorType:f,getValueEditorSeparator:h,getValueSources:b,getValues:g,validationMap:y,enableDragAndDrop:v,getRuleClassname:S,suppressStandardClassnames:x},actions:{moveRule:w,onPropChange:N,onRuleRemove:k},disabled:_,parentDisabled:E,parentMuted:D,shiftUpDisabled:T,shiftDownDisabled:O,field:$,operator:V,value:G,valueSource:q,dropEffect:H="move",groupItems:Y=!1,dragMonitorId:J="",dropMonitorId:W="",dndRef:R=null,dragRef:we=null,isDragging:Q=!1,isOver:te=!1,dropNotAllowed:De=!1}=e;jd("rule",!o),Fg(v,!!(J||W||R||we));const de=!!E||!!_,Se=!!D||!!(o!=null&&o.muted),re=P.useMemo(()=>o??{id:t,field:$??"",operator:V??"",value:G,valueSource:q},[$,t,V,o,G,q]),me=P.useMemo(()=>({shiftActions:Qe(x||_e.shiftActions,n.shiftActions),dragHandle:Qe(x||_e.dragHandle,n.dragHandle),fields:Qe(x||_e.fields,n.valueSelector,n.fields),matchMode:Qe(x||_e.matchMode,n.valueSelector,n.matchMode),matchThreshold:Qe(x||_e.matchThreshold,n.valueSelector,n.matchThreshold),operators:Qe(x||_e.operators,n.valueSelector,n.operators),valueSource:Qe(x||_e.valueSource,n.valueSelector,n.valueSource),value:Qe(x||_e.value,n.value),cloneRule:Qe(x||_e.cloneRule,n.actionElement,n.cloneRule),lockRule:Qe(x||_e.lockRule,n.actionElement,n.lockRule),muteRule:Qe(x||_e.muteRule,n.actionElement,n.muteRule),removeRule:Qe(x||_e.removeRule,n.actionElement,n.removeRule),valueListItem:Qe(x||_e.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]),ce=P.useCallback(ye=>(We,ct)=>{de||N(ye,We,r,ct)},[de,N,r]),Ie=P.useMemo(()=>ce("field"),[ce]),xe=P.useMemo(()=>ce("operator"),[ce]),be=P.useMemo(()=>ce("match"),[ce]),ae=P.useMemo(()=>ce("valueSource"),[ce]),ue=P.useMemo(()=>ce("value"),[ce]),ve=P.useCallback((ye,We)=>{if(!de){const ct=[...mt(r),r.at(-1)+1];w(r,ct,!0,We)}},[de,w,r]),Oe=P.useCallback((ye,We)=>N("disabled",!de,r,We),[de,N,r]),et=P.useCallback((ye,We)=>N("muted",!re.muted,r,We),[re.muted,N,r]),at=P.useCallback((ye,We)=>{de||k(r)},[de,k,r]),it=P.useCallback((ye,We)=>{!de&&!T&&w(r,"up",ye==null?void 0:ye.altKey,We)},[de,w,r,T]),tt=P.useCallback((ye,We)=>{!de&&!O&&w(r,"down",ye==null?void 0:ye.altKey,We)},[de,w,r,O]),$e=P.useMemo(()=>(s==null?void 0:s[re.field])??{name:re.field,value:re.field,label:re.field},[s,re.field]),yt=P.useMemo(()=>$e.inputType??c(re.field,re.operator,{fieldData:$e}),[$e,c,re.field,re.operator]),Xt=P.useMemo(()=>d(re.field,{fieldData:$e}),[$e,d,re.field]),Wt=P.useMemo(()=>p(re.field,{fieldData:$e}),[$e,p,re.field]),I=P.useMemo(()=>Xe(Wt,re.operator),[Wt,re.operator]),F=I==null?void 0:I.arity,K=typeof F=="string"&&F==="unary"||typeof F=="number"&&F<2,j=P.useMemo(()=>{const ye=b(re.field,re.operator,{fieldData:$e});return re.valueSource&&!Xe(ye,re.valueSource)?[...ye,{name:re.valueSource,value:re.valueSource,label:re.valueSource}]:ye},[$e,b,re.field,re.operator,re.valueSource]),Z=P.useMemo(()=>j.map(({value:ye})=>ye),[j]),se=P.useMemo(()=>l(re.field,re.operator,{fieldData:$e}),[$e,l,re.field,re.operator]),A=P.useMemo(()=>se&&se.length>0?se:null,[se]),M=P.useMemo(()=>re.valueSource==="field"?"select":re.valueSource==="parameter"?A?Ge(re.operator)==="in"||Ge(re.operator)==="notin"?"multiselect":"select":"text":f(re.field,re.operator,{fieldData:$e}),[$e,f,A,re.field,re.operator,re.valueSource]),L=P.useMemo(()=>h(re.field,re.operator,{fieldData:$e}),[$e,h,re.field,re.operator]),B=P.useMemo(()=>{const ye=re.valueSource==="field"?Ym($e,a,re.operator):re.valueSource==="parameter"?A??[]:g(re.field,re.operator,{fieldData:$e});return al(ye)||xo(ye)?Ur(ye):ye},[$e,a,g,A,re.field,re.operator,re.valueSource]),U=P.useMemo(()=>u(re.field,{fieldData:$e}),[$e,u,re.field]),X=$g({translations:e.translations,fields:$e.subproperties??U.fields??XD,autoSelectField:e.schema.autoSelectField||!!$e.subproperties}),z=P.useMemo(()=>y[t??""]??(typeof $e.validator=="function"?$e.validator(re):null),[$e,t,re,y]),ee=P.useMemo(()=>Db(z),[z]),ne=($e==null?void 0:$e.className)??"",Ce=(I==null?void 0:I.className)??"",Fe=Xt.length>0,Ue=P.useMemo(()=>Qe(S(re,{fieldData:$e}),ne,Ce,x||_e.rule,n.rule,de&&n.disabled,Se&&n.muted,Q&&n.dndDragging,te&&n.dndOver,te&&H==="copy"&&n.dndCopy,te&&Y&&n.dndGroup,De&&n.dndDropNotAllowed,Fe&&n.hasSubQuery,x||{[_e.disabled]:de,[_e.muted]:Se,[_e.dndDragging]:Q,[_e.dndOver]:te,[_e.dndCopy]:te&&H==="copy",[_e.dndGroup]:te&&Y,[_e.dndDropNotAllowed]:De,[_e.hasSubQuery]:Fe},ee),[n.disabled,n.muted,n.dndCopy,n.dndDragging,n.dndGroup,n.dndOver,n.dndDropNotAllowed,n.hasSubQuery,n.rule,de,H,De,Se,ne,$e,S,Y,Fe,Q,te,Ce,re,x,ee]);return{...e,classNames:me,cloneRule:ve,disabled:de,dndRef:R,dragMonitorId:J,dragRef:we,dropMonitorId:W,fieldData:$e,generateOnChangeHandler:ce,onChangeField:Ie,onChangeMatchMode:be,onChangeOperator:xe,onChangeValueSource:ae,onChangeValue:ue,hideValueControls:K,inputType:yt,matchModes:Xt,muted:Se,operators:Wt,outerClassName:Ue,removeRule:at,rule:re,shiftRuleUp:it,shiftRuleDown:tt,subproperties:X,subQueryBuilderProps:U,toggleLockRule:Oe,toggleMuteRule:et,validationResult:z,valueEditorSeparator:L,valueEditorType:M,values:B,valueSourceOptions:j,valueSources:Z}},Vl={actionElement:Ar,addGroupAction:Ar,addRuleAction:Ar,cloneGroupAction:Ar,cloneRuleAction:Ar,combinatorSelector:Sa,dragHandle:uD,fieldSelector:Sa,inlineCombinator:fD,lockGroupAction:Ar,lockRuleAction:Ar,matchModeEditor:pD,muteGroupAction:Ar,muteRuleAction:Ar,notToggle:mD,operatorSelector:Sa,removeGroupAction:Ar,removeRuleAction:Ar,rule:JD,ruleGroup:LD,ruleGroupBodyElements:VD,ruleGroupHeaderElements:FD,shiftActions:GD,valueEditor:BD,valueSelector:Sa,valueSourceSelector:Sa};Pg();const r$=e=>C.createElement(sD,{context:Tg,store:Pg()},e.children),o$=e=>C.createElement(r$,null,C.createElement(qD,{props:e}));function Gg(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=n$(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 n$(e,t,r){const{showWhen:o,hideWhen:n}=e;let a=!0;if(o&&o.rules&&o.rules.length>0&&(a=Gl(o,t,r)),n&&n.rules&&n.rules.length>0){const s=Gl(n,t,r);a=a&&!s}return a}function Gl(e,t,r){if(!e||!e.rules||e.rules.length===0)return!0;const{combinator:o,rules:n}=e,a=n.map(s=>{const l=r.find(p=>p.id===s.field||p.attributes.name===s.field),c=(l==null?void 0:l.attributes.name)||s.field,d=t[c];return a$(d,s.operator,s.value)});return o==="and"?a.every(s=>s):a.some(s=>s)}function a$(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 s$(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],l=[{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 l;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 l$(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 i$(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 zg(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 c$(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 Bg(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 s;const o=s$(r.type),n=l$(r.type),a=i$(r);return{name:r.id,label:r.properties.label||r.attributes.name||`Field ${r.order+1}`,inputType:n,operators:o.map(l=>({name:l.name,label:l.label})),values:a==null?void 0:a.map(l=>({name:l.name,label:l.label})),defaultOperator:((s=o[0])==null?void 0:s.name)||"equals"}})}const d$={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 u$(e,t){const r=zg(e);if(r.rules.length===0)return"";const o={};for(const n of t)for(const a of Ur(n.operators??[]))if("options"in a)for(const s of a.options)o[s.name]=s.label;else o[a.name]=a.label;return f_(r,{format:"natural_language",fields:t,operatorMap:o,valueProcessor:n=>{const a=n.value;return a==null||a===""?"":Array.isArray(a)?a.join(", "):String(a)}})}var f$=Object.defineProperty,mr=(e,t)=>f$(e,"name",{value:t,configurable:!0}),Qd="Dialog",[Ug,MM]=ur(Qd),[p$,Wr]=Ug(Qd),h$=mr(e=>{const{__scopeDialog:t,children:r,open:o,defaultOpen:n,onOpenChange:a,modal:s=!0}=e,l=C.useRef(null),c=C.useRef(null),[d,p]=Cr({prop:o,defaultProp:n??!1,onChange:a,caller:Qd}),[u,f]=C.useState(0),[h,b]=C.useState(0);return i.jsx(p$,{scope:t,triggerRef:l,contentRef:c,contentId:xr(),titleId:xr(),descriptionId:xr(),titlePresent:u>0,descriptionPresent:h>0,setTitleCount:f,setDescriptionCount:b,open:d,onOpenChange:p,onOpenToggle:C.useCallback(()=>p(g=>!g),[p]),modal:s,children:r})},"Dialog"),Wg="DialogPortal",[m$,Hg]=Ug(Wg,{forceMount:void 0}),b$=mr(e=>{const{__scopeDialog:t,forceMount:r,children:o,container:n}=e,a=Wr(Wg,t);return i.jsx(m$,{scope:t,forceMount:r,children:C.Children.map(o,s=>i.jsx(ro,{present:r||a.open,children:i.jsx(tc,{asChild:!0,container:n,children:s})}))})},"DialogPortal"),Kd="DialogOverlay",jg=C.forwardRef(mr(function(t,r){const o=Hg(Kd,t.__scopeDialog),{forceMount:n=o.forceMount,...a}=t,s=Wr(Kd,t.__scopeDialog);return s.modal?i.jsx(ro,{present:n||s.open,children:i.jsx(y$,{...a,ref:r})}):null},"DialogOverlay")),g$=Kr("DialogOverlay.RemoveScroll"),y$=C.forwardRef(mr(function(t,r){const{__scopeDialog:o,...n}=t,a=Wr(Kd,o),s=Vf(),l=Re(r,s);return i.jsx(ic,{as:g$,allowPinchZoom:!0,shards:[a.contentRef],children:i.jsx(Be.div,{"data-state":Rd(a.open),...n,ref:l,style:{pointerEvents:"auto",...n.style}})})},"DialogOverlayImpl")),Na="DialogContent",qg=C.forwardRef(mr(function(t,r){const o=Hg(Na,t.__scopeDialog),{forceMount:n=o.forceMount,...a}=t,s=Wr(Na,t.__scopeDialog);return i.jsx(ro,{present:n||s.open,children:s.modal?i.jsx(v$,{...a,ref:r}):i.jsx(w$,{...a,ref:r})})},"DialogContent")),v$=C.forwardRef(mr(function(t,r){const o=Wr(Na,t.__scopeDialog),n=C.useRef(null),a=Re(r,o.contentRef,n);return C.useEffect(()=>{const s=n.current;if(s)return Vp(s)},[]),i.jsx(Yg,{...t,ref:a,trapFocus:o.open,disableOutsidePointerEvents:o.open,onCloseAutoFocus:Pe(t.onCloseAutoFocus,s=>{var l;s.preventDefault(),(l=o.triggerRef.current)==null||l.focus()}),onPointerDownOutside:Pe(t.onPointerDownOutside,s=>{const l=s.detail.originalEvent,c=l.button===0&&l.ctrlKey===!0;(l.button===2||c)&&s.preventDefault()}),onFocusOutside:Pe(t.onFocusOutside,s=>s.preventDefault())})},"DialogContentModal")),w$=C.forwardRef(mr(function(t,r){const o=Wr(Na,t.__scopeDialog),n=C.useRef(!1),a=C.useRef(!1);return i.jsx(Yg,{...t,ref:r,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:s=>{var l,c;(l=t.onCloseAutoFocus)==null||l.call(t,s),s.defaultPrevented||(n.current||(c=o.triggerRef.current)==null||c.focus(),s.preventDefault()),n.current=!1,a.current=!1},onInteractOutside:s=>{var d,p;(d=t.onInteractOutside)==null||d.call(t,s),s.defaultPrevented||(n.current=!0,s.detail.originalEvent.type==="pointerdown"&&(a.current=!0));const l=s.target;((p=o.triggerRef.current)==null?void 0:p.contains(l))&&s.preventDefault(),s.detail.originalEvent.type==="focusin"&&a.current&&s.preventDefault()}})},"DialogContentNonModal")),Yg=C.forwardRef(mr(function(t,r){const{__scopeDialog:o,trapFocus:n,onOpenAutoFocus:a,onCloseAutoFocus:s,...l}=t,c=Wr(Na,o);return ls(),i.jsx(i.Fragment,{children:i.jsx(Uf,{asChild:!0,loop:!0,trapped:n,onMountAutoFocus:a,onUnmountAutoFocus:s,children:i.jsx(Mi,{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),...l,ref:r,deferPointerDownOutside:!0,onDismiss:()=>c.onOpenChange(!1)})})})},"DialogContentImpl")),x$="DialogTitle",Qg=C.forwardRef(mr(function(t,r){const{__scopeDialog:o,...n}=t,a=Wr(x$,o),{setTitleCount:s}=a;return ut(()=>(s(l=>l+1),()=>s(l=>l-1)),[s]),i.jsx(Be.h2,{id:a.titleId,...n,ref:r})},"DialogTitle")),C$="DialogDescription",Kg=C.forwardRef(mr(function(t,r){const{__scopeDialog:o,...n}=t,a=Wr(C$,o),{setDescriptionCount:s}=a;return ut(()=>(s(l=>l+1),()=>s(l=>l-1)),[s]),i.jsx(Be.p,{id:a.descriptionId,...n,ref:r})},"DialogDescription")),S$="DialogClose",Rg=C.forwardRef(mr(function(t,r){const{__scopeDialog:o,...n}=t,a=Wr(S$,o);return i.jsx(Be.button,{type:"button",...n,ref:r,onClick:Pe(t.onClick,()=>a.onOpenChange(!1))})},"DialogClose"));function Rd(e){return e?"open":"closed"}mr(Rd,"getState");const N$=h$,E$=b$,k$=Rg,Xg=C.forwardRef(({className:e,...t},r)=>i.jsx(jg,{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}));Xg.displayName=jg.displayName;const Jg=C.forwardRef(({className:e,children:t,...r},o)=>i.jsxs(E$,{children:[i.jsx(Xg,{}),i.jsxs(qg,{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,i.jsxs(Rg,{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:[i.jsx(Hn,{className:m("h-4 w-4")}),i.jsx("span",{className:m("sr-only"),children:"Close"})]})]})]}));Jg.displayName=qg.displayName;const Zg=({className:e,...t})=>i.jsx("div",{className:m("flex flex-col space-y-1.5 text-center sm:text-left",e),...t});Zg.displayName="DialogHeader";const ey=({className:e,...t})=>i.jsx("div",{className:m("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...t});ey.displayName="DialogFooter";const ty=C.forwardRef(({className:e,...t},r)=>i.jsx(Qg,{ref:r,className:m("text-lg font-semibold leading-none tracking-tight",e),...t}));ty.displayName=Qg.displayName;const ry=C.forwardRef(({className:e,...t},r)=>i.jsx(Kg,{ref:r,className:m("text-sm text-muted-foreground",e),...t}));ry.displayName=Kg.displayName;const oy=[{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."}],A$=({open:e,onOpenChange:t,element:r,elements:o,onUpdate:n})=>{const a=P.useMemo(()=>Bg(o,r.id),[o,r.id]),s=P.useCallback((l,c)=>{const d=c$(c),p={...r.logic,[l]:d.rules.length>0?d:void 0};n({logic:p})},[r.logic,n]);return i.jsx(N$,{open:e,onOpenChange:t,children:i.jsxs(Jg,{className:"max-w-3xl max-h-[85vh] flex flex-col gap-4",children:[i.jsxs(Zg,{children:[i.jsx(ty,{children:"Conditional Logic"}),i.jsx(ry,{children:"Configure when this element is shown, hidden, required, or disabled based on other fields in the form."})]}),i.jsxs(Bh,{defaultValue:"showWhen",className:"flex flex-col flex-1 min-h-0",children:[i.jsx(Tc,{className:"grid w-full grid-cols-4",children:oy.map(l=>{var d,p,u;const c=((u=(p=(d=r.logic)==null?void 0:d[l.key])==null?void 0:p.rules)==null?void 0:u.length)??0;return i.jsxs(Qn,{value:l.key,className:"text-xs",children:[l.label,c>0&&` (${c})`]},l.key)})}),oy.map(l=>{var c;return i.jsxs(Kn,{value:l.key,className:"flex-1 min-h-0 overflow-y-auto",children:[i.jsx("p",{className:m("text-xs text-muted-foreground mb-2"),children:l.description}),i.jsx("div",{className:m("query-builder-wrapper"),style:{"--rqb-background-color":"transparent"},children:i.jsx(o$,{fields:a,query:zg((c=r.logic)==null?void 0:c[l.key]),onQueryChange:d=>s(l.key,d),controlClassnames:d$})})]},l.key)})]}),i.jsx(ey,{children:i.jsx(k$,{asChild:!0,children:i.jsx(st,{children:"Done"})})})]})})},_$=({title:e,children:t,defaultOpen:r=!1,badge:o})=>{const[n,a]=P.useState(r);return i.jsxs(Yh,{open:n,onOpenChange:a,className:m("border border-border rounded-lg overflow-hidden"),children:[i.jsx(Qh,{asChild:!0,children:i.jsxs(st,{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:[i.jsxs("span",{className:m("flex items-center gap-2 text-sm font-medium text-foreground"),children:[e,o&&i.jsx(vc,{variant:"secondary",className:m("text-xs"),children:o})]}),i.jsx(vn,{className:m("h-4 w-4 transition-transform",n&&"rotate-180")})]})}),i.jsx(Kh,{children:i.jsx("div",{className:m("p-3 bg-card"),children:t})})]})},zl=({title:e,description:t,rule:r,fields:o,defaultOpen:n=!1,badge:a})=>{const s=u$(r,o);return i.jsxs(_$,{title:e,defaultOpen:n,badge:a,children:[i.jsx("p",{className:m("text-xs text-muted-foreground mb-2"),children:t}),s?i.jsx("div",{className:m("rounded-md border border-border bg-muted/40 px-3 py-2 text-sm text-foreground"),children:s}):i.jsx("p",{className:m("text-sm text-muted-foreground/70"),children:"No conditions set"})]})},T$=({element:e,elements:t,onUpdate:r})=>{var d,p,u,f,h,b,g,y,v,S,x,w,N,k,_,E,D,T,O,$,V,G,q,H,Y,J,W,R,we,Q,te,De,de,Se,re,me,ce,Ie,xe,be,ae,ue,ve,Oe,et,at,it,tt;const[o,n]=P.useState(!1),a=P.useMemo(()=>Bg(t,e.id),[t,e.id]),s=P.useCallback(()=>{r({logic:void 0})},[r]),l=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||(((b=(h=e.logic.requireWhen)==null?void 0:h.rules)==null?void 0:b.length)??0)>0||(((y=(g=e.logic.disableWhen)==null?void 0:g.rules)==null?void 0:y.length)??0)>0),c=(((x=(S=(v=e.logic)==null?void 0:v.showWhen)==null?void 0:S.rules)==null?void 0:x.length)??0)+(((k=(N=(w=e.logic)==null?void 0:w.hideWhen)==null?void 0:N.rules)==null?void 0:k.length)??0)+(((D=(E=(_=e.logic)==null?void 0:_.requireWhen)==null?void 0:E.rules)==null?void 0:D.length)??0)+((($=(O=(T=e.logic)==null?void 0:T.disableWhen)==null?void 0:O.rules)==null?void 0:$.length)??0);return a.length===0?i.jsxs("div",{className:m("text-sm text-muted-foreground p-4 text-center bg-muted/50 rounded-lg"),children:[i.jsx(vh,{className:m("w-8 h-8 mx-auto mb-2 text-muted-foreground/50")}),i.jsx("p",{children:"Add more fields to enable conditional logic."}),i.jsx("p",{className:m("text-xs mt-1"),children:"Logic rules require other fields to reference."})]}):i.jsxs("div",{className:m("space-y-3"),children:[i.jsxs("div",{className:m("space-y-1"),children:[i.jsxs("div",{className:m("flex items-center gap-1"),children:[l&&i.jsxs(st,{variant:"ghost",size:"sm",className:m("text-destructive hover:text-destructive hover:bg-destructive/10"),onClick:s,children:[i.jsx(mc,{className:m("h-3 w-3 mr-1")}),"Clear all"]}),i.jsxs(st,{variant:"outline",size:"sm",onClick:()=>n(!0),children:[i.jsx(wh,{className:m("h-3 w-3 mr-1")}),"Configure"]})]}),i.jsx("div",{className:m("text-sm text-muted-foreground"),children:l?i.jsxs("span",{className:m("flex items-center gap-2"),children:[i.jsx("span",{className:m("w-2 h-2 bg-primary rounded-full")}),c," rule",c!==1?"s":""," ","configured"]}):i.jsx("span",{className:m("text-muted-foreground/70"),children:"No logic configured"})})]}),i.jsx(zl,{title:"Show When",description:"This element will only be visible when these conditions are met.",rule:(V=e.logic)==null?void 0:V.showWhen,fields:a,defaultOpen:!!((H=(q=(G=e.logic)==null?void 0:G.showWhen)==null?void 0:q.rules)!=null&&H.length),badge:(W=(J=(Y=e.logic)==null?void 0:Y.showWhen)==null?void 0:J.rules)!=null&&W.length?String(e.logic.showWhen.rules.length):void 0}),i.jsx(zl,{title:"Hide When",description:"This element will be hidden when these conditions are met.",rule:(R=e.logic)==null?void 0:R.hideWhen,fields:a,defaultOpen:!!((te=(Q=(we=e.logic)==null?void 0:we.hideWhen)==null?void 0:Q.rules)!=null&&te.length),badge:(Se=(de=(De=e.logic)==null?void 0:De.hideWhen)==null?void 0:de.rules)!=null&&Se.length?String(e.logic.hideWhen.rules.length):void 0}),i.jsx(zl,{title:"Required When",description:"This element will be required when these conditions are met.",rule:(re=e.logic)==null?void 0:re.requireWhen,fields:a,defaultOpen:!!((Ie=(ce=(me=e.logic)==null?void 0:me.requireWhen)==null?void 0:ce.rules)!=null&&Ie.length),badge:(ae=(be=(xe=e.logic)==null?void 0:xe.requireWhen)==null?void 0:be.rules)!=null&&ae.length?String(e.logic.requireWhen.rules.length):void 0}),i.jsx(zl,{title:"Disabled When",description:"This element will be disabled when these conditions are met.",rule:(ue=e.logic)==null?void 0:ue.disableWhen,fields:a,defaultOpen:!!((et=(Oe=(ve=e.logic)==null?void 0:ve.disableWhen)==null?void 0:Oe.rules)!=null&&et.length),badge:(tt=(it=(at=e.logic)==null?void 0:at.disableWhen)==null?void 0:it.rules)!=null&&tt.length?String(e.logic.disableWhen.rules.length):void 0}),i.jsx(A$,{open:o,onOpenChange:n,element:e,elements:t,onUpdate:r})]})};var D$=Object.defineProperty,$$=(e,t)=>D$(e,"name",{value:t,configurable:!0}),P$=C.forwardRef($$(function(t,r){return i.jsx(Be.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")),ny=P$;const M$=Is("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),br=C.forwardRef(({className:e,...t},r)=>i.jsx(ny,{ref:r,className:m(M$(),e),...t}));br.displayName=ny.displayName;const Xd=C.forwardRef(({className:e,...t},r)=>i.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 O$=Object.defineProperty,uo=(e,t)=>O$(e,"name",{value:t,configurable:!0}),Jd="Checkbox",[I$,OM]=ur(Jd),[L$,Zd]=I$(Jd);function ay(e){const{__scopeCheckbox:t,checked:r,children:o,defaultChecked:n,disabled:a,form:s,name:l,onCheckedChange:c,required:d,value:p="on",internal_do_not_use_render:u}=e,[f,h]=Cr({prop:r,defaultProp:n??!1,onChange:c,caller:Jd}),[b,g]=C.useState(null),[y,v]=C.useState(null),S=C.useRef(!1),[x,w]=C.useReducer(_=>_+1,0),N=b?!!s||!!b.closest("form"):!0,k={checked:f,disabled:a,setChecked:h,control:b,setControl:g,name:l,form:s,value:p,hasConsumerStoppedPropagationRef:S,userInteractionCount:x,onUserInteraction:w,required:d,defaultChecked:fo(n)?!1:n,isFormControl:N,bubbleInput:y,setBubbleInput:v};return i.jsx(L$,{scope:t,...k,children:ly(u)?u(k):o})}uo(ay,"CheckboxProvider");var F$="CheckboxTrigger",V$=C.forwardRef(uo(function({__scopeCheckbox:t,onKeyDown:r,onClick:o,...n},a){const{control:s,value:l,disabled:c,checked:d,required:p,setControl:u,setChecked:f,hasConsumerStoppedPropagationRef:h,onUserInteraction:b,isFormControl:g,bubbleInput:y}=Zd(F$,t),v=Re(a,u),S=C.useRef(d);return C.useEffect(()=>{const x=s==null?void 0:s.form;if(x){const w=uo(()=>f(S.current),"reset");return x.addEventListener("reset",w),()=>x.removeEventListener("reset",w)}},[s,f]),i.jsx(Be.button,{type:"button",role:"checkbox","aria-checked":fo(d)?"mixed":d,"aria-required":p,"data-state":eu(d),"data-disabled":c?"":void 0,disabled:c,value:l,...n,ref:v,onKeyDown:Pe(r,x=>{x.key==="Enter"&&x.preventDefault()}),onClick:Pe(o,x=>{b(),f(w=>fo(w)?!0:!w),y&&g&&(h.current=x.isPropagationStopped(),h.current||x.stopPropagation())})})},"CheckboxTrigger")),sy=C.forwardRef(uo(function(t,r){const{__scopeCheckbox:o,name:n,checked:a,defaultChecked:s,required:l,disabled:c,value:d,onCheckedChange:p,form:u,...f}=t;return i.jsx(ay,{__scopeCheckbox:o,checked:a,defaultChecked:s,disabled:c,required:l,onCheckedChange:p,name:n,form:u,value:d,internal_do_not_use_render:({isFormControl:h})=>i.jsxs(i.Fragment,{children:[i.jsx(V$,{...f,ref:r,__scopeCheckbox:o}),h&&i.jsx(U$,{__scopeCheckbox:o})]})})},"Checkbox")),G$="CheckboxIndicator",z$=C.forwardRef(uo(function(t,r){const{__scopeCheckbox:o,forceMount:n,...a}=t,s=Zd(G$,o);return i.jsx(ro,{present:n||fo(s.checked)||s.checked===!0,children:i.jsx(Be.span,{"data-state":eu(s.checked),"data-disabled":s.disabled?"":void 0,...a,ref:r,style:{pointerEvents:"none",...t.style}})})},"CheckboxIndicator")),B$="CheckboxBubbleInput",U$=C.forwardRef(uo(function({__scopeCheckbox:t,onClick:r,...o},n){const{control:a,hasConsumerStoppedPropagationRef:s,userInteractionCount:l,checked:c,defaultChecked:d,required:p,disabled:u,name:f,value:h,form:b,bubbleInput:g,setBubbleInput:y}=Zd(B$,t),v=Re(n,y),S=ec(a),x=C.useRef(!1),w=C.useRef(c),N=C.useRef(l);C.useEffect(()=>{const _=g;if(!_)return;const E=window.HTMLInputElement.prototype,T=Object.getOwnPropertyDescriptor(E,"checked").set,O=l!==N.current;N.current=l;const $=w.current!==c;w.current=c;const V=!(O&&s.current);if($&&T){x.current=!O;const G=new Event("click",{bubbles:V});_.indeterminate=fo(c),T.call(_,fo(c)?!1:c),_.dispatchEvent(G),x.current=!1}},[g,c,s,l]);const k=C.useRef(fo(c)?!1:c);return i.jsx(Be.input,{type:"checkbox","aria-hidden":!0,defaultChecked:d??k.current,required:p,disabled:u,name:f,value:h,form:b,...o,tabIndex:-1,ref:v,onClick:Pe(r,_=>{x.current&&_.stopPropagation()}),style:{...o.style,...S,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})},"CheckboxBubbleInput"));function ly(e){return typeof e=="function"}uo(ly,"isFunction");function fo(e){return e==="indeterminate"}uo(fo,"isIndeterminate");function eu(e){return fo(e)?"indeterminate":e?"checked":"unchecked"}uo(eu,"getState");const tu=C.forwardRef(({className:e,...t},r)=>i.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:i.jsx(z$,{className:m("grid place-content-center text-current"),children:i.jsx(bh,{className:m("h-4 w-4")})})}));tu.displayName=sy.displayName;var W$=Object.defineProperty,sr=(e,t)=>W$(e,"name",{value:t,configurable:!0}),Hr="Accordion",H$=["Home","End","ArrowDown","ArrowUp","ArrowLeft","ArrowRight"],[ru,j$,q$]=ns(Hr),[Bl,IM]=ur(Hr,[q$,Uh]),ou=Uh(),Y$=C.forwardRef(sr(function(t,r){const{type:o,...n}=t,a=n,s=n;return i.jsx(ru.Provider,{scope:t.__scopeAccordion,children:o==="multiple"?i.jsx(X$,{...s,ref:r}):i.jsx(R$,{...a,ref:r})})},"Accordion")),[iy,Q$]=Bl(Hr),[cy,K$]=Bl(Hr,{collapsible:!1}),R$=C.forwardRef(sr(function(t,r){const{value:o,defaultValue:n,onValueChange:a=sr(()=>{},"onValueChange"),collapsible:s=!1,...l}=t,[c,d]=Cr({prop:o,defaultProp:n??"",onChange:a,caller:Hr});return i.jsx(iy,{scope:t.__scopeAccordion,value:C.useMemo(()=>c?[c]:[],[c]),onItemOpen:d,onItemClose:C.useCallback(()=>s&&d(""),[s,d]),children:i.jsx(cy,{scope:t.__scopeAccordion,collapsible:s,children:i.jsx(dy,{...l,ref:r})})})},"AccordionImplSingle")),X$=C.forwardRef(sr(function(t,r){const{value:o,defaultValue:n,onValueChange:a=sr(()=>{},"onValueChange"),...s}=t,[l,c]=Cr({prop:o,defaultProp:n??[],onChange:a,caller:Hr}),d=C.useCallback(u=>c((f=[])=>[...f,u]),[c]),p=C.useCallback(u=>c((f=[])=>f.filter(h=>h!==u)),[c]);return i.jsx(iy,{scope:t.__scopeAccordion,value:l,onItemOpen:d,onItemClose:p,children:i.jsx(cy,{scope:t.__scopeAccordion,collapsible:!0,children:i.jsx(dy,{...s,ref:r})})})},"AccordionImplMultiple")),[J$,Ul]=Bl(Hr),dy=C.forwardRef(sr(function(t,r){const{__scopeAccordion:o,disabled:n,dir:a,orientation:s="vertical",...l}=t,c=C.useRef(null),d=Re(c,r),p=j$(o),f=Gn(a)==="ltr",h=Pe(t.onKeyDown,b=>{var D;if(!H$.includes(b.key))return;const g=b.target,y=p().filter(T=>{var O;return!((O=T.ref.current)!=null&&O.disabled)}),v=y.findIndex(T=>T.ref.current===g),S=y.length;if(v===-1)return;b.preventDefault();let x=v;const w=0,N=S-1,k=sr(()=>{x=v+1,x>N&&(x=w)},"moveNext"),_=sr(()=>{x=v-1,x<w&&(x=N)},"movePrev");switch(b.key){case"Home":x=w;break;case"End":x=N;break;case"ArrowRight":s==="horizontal"&&(f?k():_());break;case"ArrowDown":s==="vertical"&&k();break;case"ArrowLeft":s==="horizontal"&&(f?_():k());break;case"ArrowUp":s==="vertical"&&_();break}const E=x%S;(D=y[E].ref.current)==null||D.focus()});return i.jsx(J$,{scope:o,disabled:n,direction:a,orientation:s,children:i.jsx(ru.Slot,{scope:o,children:i.jsx(Be.div,{...l,"data-orientation":s,ref:d,onKeyDown:n?void 0:h})})})},"AccordionImpl")),nu="AccordionItem",[Z$,au]=Bl(nu),eP=C.forwardRef(sr(function(t,r){const{__scopeAccordion:o,value:n,...a}=t,s=Ul(nu,o),l=Q$(nu,o),c=ou(o),d=xr(),p=n&&l.value.includes(n)||!1,u=s.disabled||t.disabled;return i.jsx(Z$,{scope:o,open:p,disabled:u,triggerId:d,children:i.jsx(qh,{"data-orientation":s.orientation,"data-state":su(p),...c,...a,ref:r,disabled:u,open:p,onOpenChange:f=>{f?l.onItemOpen(n):l.onItemClose(n)}})})},"AccordionItem")),tP="AccordionHeader",rP=C.forwardRef(sr(function(t,r){const{__scopeAccordion:o,...n}=t,a=Ul(Hr,o),s=au(tP,o);return i.jsx(Be.h3,{"data-orientation":a.orientation,"data-state":su(s.open),"data-disabled":s.disabled?"":void 0,...n,ref:r})},"AccordionHeader")),uy="AccordionTrigger",oP=C.forwardRef(sr(function(t,r){const{__scopeAccordion:o,...n}=t,a=Ul(Hr,o),s=au(uy,o),l=K$(uy,o),c=ou(o);return i.jsx(ru.ItemSlot,{scope:o,children:i.jsx(HE,{"aria-disabled":s.open&&!l.collapsible||void 0,"data-orientation":a.orientation,id:s.triggerId,...c,...n,ref:r})})},"AccordionTrigger")),nP="AccordionContent",aP=C.forwardRef(sr(function(t,r){const{__scopeAccordion:o,...n}=t,a=Ul(Hr,o),s=au(nP,o),l=ou(o);return i.jsx(jE,{role:"region","aria-labelledby":s.triggerId,"data-orientation":a.orientation,...l,...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 su(e){return e?"open":"closed"}sr(su,"getState");var sP=Y$,lP=eP,iP=rP,fy=oP,py=aP;const hy=sP,lu=C.forwardRef(({className:e,...t},r)=>i.jsx(lP,{ref:r,className:m("border-b",e),...t}));lu.displayName="AccordionItem";const iu=C.forwardRef(({className:e,children:t,...r},o)=>i.jsx(iP,{className:m("flex"),children:i.jsxs(fy,{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,i.jsx(vn,{className:m("h-4 w-4 shrink-0 text-muted-foreground transition-transform duration-200")})]})}));iu.displayName=fy.displayName;const cu=C.forwardRef(({className:e,children:t,...r},o)=>i.jsx(py,{ref:o,className:m("overflow-hidden text-sm data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down"),...r,children:i.jsx("div",{className:m("pb-4 pt-0",e),children:t})}));cu.displayName=py.displayName;function du(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 cP(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 dP(e,t,r){const{field:o,value:n}=r;if(o.includes(".")){const[s,...l]=o.split("."),c=l.join(".");return du(e,s,c)===n}return du(e,t.section,o)===n}const my=({field:e,element:t,onUpdate:r})=>{var a;const o=du(t,e.section,e.key)??e.defaultValue,n=s=>{r(cP(e.section,t,e.key,s))};switch(e.type){case"text":case"url":case"color":return i.jsxs("div",{className:m("space-y-1.5"),children:[i.jsx(br,{className:m("text-xs font-medium text-muted-foreground"),children:e.label}),i.jsx(fr,{type:e.type==="color"?"color":e.type==="url"?"url":"text",value:o??"",onChange:s=>n(s.target.value),placeholder:e.placeholder}),e.description&&i.jsx("p",{className:m("text-[11px] text-muted-foreground"),children:e.description})]});case"textarea":return i.jsxs("div",{className:m("space-y-1.5"),children:[i.jsx(br,{className:m("text-xs font-medium text-muted-foreground"),children:e.label}),i.jsx(Xd,{value:o??"",onChange:s=>n(s.target.value),placeholder:e.placeholder,rows:e.rows??3}),e.description&&i.jsx("p",{className:m("text-[11px] text-muted-foreground"),children:e.description})]});case"number":return i.jsxs("div",{className:m("space-y-1.5"),children:[i.jsx(br,{className:m("text-xs font-medium text-muted-foreground"),children:e.label}),i.jsx(fr,{type:"number",value:o??"",onChange:s=>{const l=s.target.value;n(l?Number.isInteger(e.min)||Number.isInteger(e.max)?parseInt(l,10):parseFloat(l):void 0)},placeholder:e.placeholder,min:e.min,max:e.max}),e.description&&i.jsx("p",{className:m("text-[11px] text-muted-foreground"),children:e.description})]});case"checkbox":return i.jsxs("div",{className:m("flex items-start space-x-2"),children:[i.jsx(tu,{id:`ds-${e.section}-${e.key}`,checked:!!o,onCheckedChange:s=>n(!!s)}),i.jsxs("div",{className:m("space-y-0.5 leading-none"),children:[i.jsx(br,{htmlFor:`ds-${e.section}-${e.key}`,className:m("text-xs font-medium text-foreground cursor-pointer"),children:e.label}),e.description&&i.jsx("p",{className:m("text-[11px] text-muted-foreground"),children:e.description})]})]});case"select":return i.jsxs("div",{className:m("space-y-1.5"),children:[i.jsx(br,{className:m("text-xs font-medium text-muted-foreground"),children:e.label}),i.jsxs($s,{value:o!=null?String(o):"",onValueChange:s=>{var c;const l=(c=e.options)==null?void 0:c.find(d=>typeof d.value=="number"&&String(d.value)===s);n(l?l.value:s)},children:[i.jsx(jn,{children:i.jsx(Ps,{placeholder:e.placeholder||"Select..."})}),i.jsx(qn,{children:(a=e.options)==null?void 0:a.map(s=>i.jsx(Uo,{value:String(s.value),children:s.label},String(s.value)))})]}),e.description&&i.jsx("p",{className:m("text-[11px] text-muted-foreground"),children:e.description})]});default:return null}},uP=({title:e,icon:t,defaultOpen:r=!0,children:o})=>i.jsx(hy,{type:"single",collapsible:!0,defaultValue:r?"item":void 0,children:i.jsxs(lu,{value:"item",className:m("border-b border-border"),children:[i.jsx(iu,{className:m("px-4 py-3 hover:bg-muted/50 hover:no-underline"),children:i.jsxs("span",{className:m("text-sm font-medium text-foreground flex items-center gap-2"),children:[t&&i.jsx("span",{children:t}),e]})}),i.jsx(cu,{className:m("px-4 pb-4 mb-4"),children:i.jsx("div",{className:m("space-y-4"),children:o})})]})}),fP=({element:e,schema:t,onUpdate:r})=>{const o=t.fields.filter(c=>c.showWhen?dP(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:l}=t;return i.jsx(uP,{title:(l==null?void 0:l.title)??"Settings",icon:l==null?void 0:l.icon,defaultOpen:!1,children:n.map((c,d)=>{if(!c.every(u=>u.colSpan===1)){const u=c[0];return i.jsx(my,{field:u,element:e,onUpdate:r},`${u.section}.${u.key}`)}return i.jsx("div",{className:m("grid grid-cols-2 gap-2"),children:c.map(u=>i.jsx(my,{field:u,element:e,onUpdate:r},`${u.section}.${u.key}`))},`row-${d}`)})})},No=({title:e,children:t,defaultOpen:r=!0,icon:o})=>i.jsx(hy,{type:"single",collapsible:!0,defaultValue:r?"item":void 0,children:i.jsxs(lu,{value:"item",className:m("border-b border-border"),children:[i.jsx(iu,{className:m("px-4 py-3 hover:bg-muted/50 hover:no-underline"),children:i.jsxs("span",{className:m("text-sm font-medium text-foreground flex items-center gap-2"),children:[o&&i.jsx("span",{children:o}),e]})}),i.jsx(cu,{className:m("px-4 pb-4 mb-4"),children:i.jsx("div",{className:m("space-y-4"),children:t})})]})}),rt=({label:e,value:t,onChange:r,type:o="text",placeholder:n,rows:a=3,min:s,max:l,step:c,helpText:d})=>i.jsxs("div",{className:m("space-y-1.5"),children:[i.jsx(br,{className:m("text-sm font-medium"),children:e}),o==="textarea"?i.jsx(Xd,{value:t??"",onChange:p=>r(p.target.value),placeholder:n,rows:a,className:m("resize-none")}):o==="color"?i.jsxs("div",{className:m("flex gap-2"),children:[i.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")}),i.jsx(fr,{type:"text",value:t??"",onChange:p=>r(p.target.value),placeholder:n||"#000000",className:m("flex-1")})]}):i.jsx(fr,{type:o,value:t??"",onChange:p=>r(p.target.value),placeholder:n,min:s,max:l,step:c}),d&&i.jsx("p",{className:m("text-xs text-muted-foreground"),children:d})]}),by=({label:e,checked:t,onChange:r,description:o})=>i.jsxs("div",{className:m("flex items-start gap-3"),children:[i.jsx(tu,{id:e,checked:t||!1,onCheckedChange:n=>r(n===!0),className:m("mt-0.5")}),i.jsxs("div",{className:m("grid gap-0.5 leading-none"),children:[i.jsx(br,{htmlFor:e,className:m("text-sm font-medium cursor-pointer"),children:e}),o&&i.jsx("p",{className:m("text-xs text-muted-foreground"),children:o})]})]}),uu=({label:e,value:t,onChange:r,options:o,helpText:n})=>i.jsxs("div",{className:m("space-y-1.5"),children:[i.jsx(br,{className:m("text-sm font-medium"),children:e}),i.jsxs($s,{value:(t==null?void 0:t.toString())??"",onValueChange:r,children:[i.jsx(jn,{className:m("w-full"),children:i.jsx(Ps,{placeholder:"Select..."})}),i.jsx(qn,{children:o.map(a=>i.jsx(Uo,{value:a.value,children:a.label},a.value))})]}),n&&i.jsx("p",{className:m("text-xs text-muted-foreground"),children:n})]}),pP=({options:e,onChange:t})=>{const r=(s,l,c)=>{const d=[...e];if(d[s]={...d[s],[l]:c},l==="label"){const p=d[s].value,u=e[s].label;(!p||p===mi(u))&&(d[s].value=mi(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((l,c)=>c!==s))},a=(s,l)=>{const c=l==="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 i.jsxs("div",{className:m("space-y-2"),children:[i.jsx(br,{className:m("text-sm font-medium"),children:"Options"}),i.jsx("div",{className:m("space-y-2"),children:e.map((s,l)=>i.jsxs("div",{className:m("flex items-center gap-1"),children:[i.jsxs("div",{className:m("flex flex-col gap-0.5"),children:[i.jsx(st,{variant:"ghost",size:"icon",className:m("h-5 w-5"),onClick:()=>a(l,"up"),disabled:l===0,children:i.jsx(gh,{className:m("h-3 w-3")})}),i.jsx(st,{variant:"ghost",size:"icon",className:m("h-5 w-5"),onClick:()=>a(l,"down"),disabled:l===e.length-1,children:i.jsx(vn,{className:m("h-3 w-3")})})]}),i.jsx(fr,{type:"text",value:s.label,onChange:c=>r(l,"label",c.target.value),placeholder:"Label",className:m("flex-1 h-8")}),i.jsx(fr,{type:"text",value:s.value,onChange:c=>r(l,"value",c.target.value),placeholder:"Value",className:m("w-20 h-8 text-muted-foreground")}),i.jsx(Vs,{children:i.jsxs(Fr,{children:[i.jsx(Vr,{asChild:!0,children:i.jsx(st,{variant:"ghost",size:"icon",className:m("h-8 w-8"),onClick:()=>n(l),disabled:e.length<=1,children:i.jsx(Hn,{className:m("h-4 w-4")})})}),i.jsx(Nr,{children:"Remove option"})]})})]},l))}),i.jsxs(st,{variant:"ghost",size:"sm",className:m("text-primary"),onClick:o,children:[i.jsx(hc,{className:m("h-4 w-4 mr-1")}),"Add option"]})]})},hP=({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((f,h)=>h!==u))},l=(u,f,h)=>{const b=[...e];b[u]={...b[u],[f]:h},r(b)},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 b=[...t];b[u]={...b[u],[f]:h},o(b)};return i.jsxs("div",{className:m("space-y-4"),children:[i.jsxs("div",{className:m("space-y-2"),children:[i.jsx(br,{className:m("text-sm font-medium"),children:"Rows"}),i.jsx("div",{className:m("space-y-2"),children:e.map((u,f)=>i.jsxs("div",{className:m("flex items-center gap-2"),children:[i.jsx(fr,{type:"text",value:u.id,onChange:h=>l(f,"id",h.target.value),placeholder:"Row ID",className:m("w-24 h-8 font-mono text-xs")}),i.jsx(fr,{type:"text",value:u.label,onChange:h=>l(f,"label",h.target.value),placeholder:"Row label",className:m("flex-1 h-8")}),i.jsx(st,{variant:"ghost",size:"icon",className:m("h-8 w-8"),onClick:()=>s(f),disabled:e.length<=1,children:i.jsx(Hn,{className:m("h-4 w-4")})})]},f))}),i.jsxs(st,{variant:"ghost",size:"sm",className:m("text-primary"),onClick:a,children:[i.jsx(hc,{className:m("h-4 w-4 mr-1")}),"Add row"]})]}),i.jsxs("div",{className:m("space-y-2"),children:[i.jsx(br,{className:m("text-sm font-medium"),children:"Columns"}),i.jsx("div",{className:m("space-y-2"),children:t.map((u,f)=>i.jsxs("div",{className:m("flex items-center gap-2"),children:[i.jsx(fr,{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")}),i.jsx(fr,{type:"text",value:u.label,onChange:h=>p(f,"label",h.target.value),placeholder:"Column label",className:m("flex-1 h-8")}),n&&i.jsxs($s,{value:u.type||"text",onValueChange:h=>p(f,"type",h),children:[i.jsx(jn,{className:m("w-24 h-8"),children:i.jsx(Ps,{})}),i.jsxs(qn,{children:[i.jsx(Uo,{value:"text",children:"Text"}),i.jsx(Uo,{value:"number",children:"Number"}),i.jsx(Uo,{value:"dropdown",children:"Dropdown"})]})]}),i.jsx(st,{variant:"ghost",size:"icon",className:m("h-8 w-8"),onClick:()=>d(f),disabled:t.length<=1,children:i.jsx(Hn,{className:m("h-4 w-4")})})]},f))}),i.jsxs(st,{variant:"ghost",size:"sm",className:m("text-primary"),onClick:c,children:[i.jsx(hc,{className:m("h-4 w-4 mr-1")}),"Add column"]})]})]})},mP=({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),l=["image"].includes(e.type);return i.jsxs(No,{title:"Properties",icon:"📝",children:[!["divider","spacer"].includes(e.type)&&i.jsx(rt,{label:"Label",value:e.properties.label,onChange:c=>r("label",c),placeholder:"Enter label..."}),o&&i.jsx(rt,{label:"Placeholder",value:e.properties.placeholder,onChange:c=>r("placeholder",c),placeholder:"Enter placeholder..."}),n&&i.jsx(rt,{label:"Description",value:e.properties.description,onChange:c=>r("description",c),type:"textarea",placeholder:"Enter description...",rows:2}),a&&i.jsx(rt,{label:"Content",value:e.properties.content,onChange:c=>r("content",c),type:"textarea",placeholder:"Enter paragraph text...",rows:4}),s&&i.jsxs(i.Fragment,{children:[i.jsx(rt,{label:"Link Text",value:e.properties.content,onChange:c=>r("content",c),placeholder:"Click here"}),i.jsx(rt,{label:"URL",value:e.properties.href,onChange:c=>r("href",c),type:"url",placeholder:"https://example.com"}),i.jsx(uu,{label:"Target",value:e.properties.target,onChange:c=>r("target",c),options:[{value:"_blank",label:"New Tab"},{value:"_self",label:"Same Tab"}]})]}),l&&i.jsxs(i.Fragment,{children:[i.jsx(rt,{label:"Image URL",value:e.properties.src,onChange:c=>r("src",c),type:"url",placeholder:"https://example.com/image.jpg"}),i.jsx(rt,{label:"Alt Text",value:e.properties.alt,onChange:c=>r("alt",c),placeholder:"Image description"})]}),["shortText","number"].includes(e.type)&&i.jsxs("div",{className:m("grid grid-cols-2 gap-2"),children:[i.jsx(rt,{label:"Prefix",value:e.properties.prefix,onChange:c=>r("prefix",c),placeholder:"$"}),i.jsx(rt,{label:"Suffix",value:e.properties.suffix,onChange:c=>r("suffix",c),placeholder:".00"})]})]})},bP=({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 i.jsxs(No,{title:"Layout",icon:"📐",defaultOpen:!1,children:[o&&i.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"}]}),i.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"}]}),i.jsx(rt,{label:"Custom Width",value:e.layout.width,onChange:n=>r("width",n),placeholder:"e.g., 50%, 300px"}),i.jsx(rt,{label:"CSS Class",value:e.layout.className,onChange:n=>r("className",n),placeholder:"custom-class",helpText:"Additional CSS classes"})]})},gP=({element:e,onUpdate:t})=>{var c,d,p,u,f,h,b,g,y,v,S;const r=(x,w)=>{t({validation:{...e.validation,[x]:w}})},o=Tw(e.type),n=["shortText","longText","multiLineInput","textEditor","password"].includes(e.type),a=["number","slider","rangeSlider"].includes(e.type),s=["multiFileUpload","multiImageUpload"].includes(e.type),l=["multipleDates"].includes(e.type);return i.jsxs(No,{title:"Validation",icon:"✅",defaultOpen:!1,children:[o.supportsRequired&&i.jsx(by,{label:"Required",checked:(c=e.validation)==null?void 0:c.required,onChange:x=>r("required",x),description:"Field must be filled"}),n&&i.jsxs("div",{className:m("grid grid-cols-2 gap-2"),children:[i.jsx(rt,{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}),i.jsx(rt,{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})]}),a&&i.jsxs("div",{className:m("grid grid-cols-2 gap-2"),children:[i.jsx(rt,{label:"Min Value",value:(u=e.validation)==null?void 0:u.min,onChange:x=>r("min",x?parseFloat(x):void 0),type:"number"}),i.jsx(rt,{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&&i.jsx(rt,{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"}),s&&i.jsxs("div",{className:m("grid grid-cols-2 gap-2"),children:[i.jsx(rt,{label:"Min Files",value:(b=e.validation)==null?void 0:b.minFiles,onChange:x=>r("minFiles",x?parseInt(x):void 0),type:"number",min:0}),i.jsx(rt,{label:"Max Files",value:(g=e.validation)==null?void 0:g.maxFiles,onChange:x=>r("maxFiles",x?parseInt(x):void 0),type:"number",min:1})]}),l&&i.jsxs("div",{className:m("grid grid-cols-2 gap-2"),children:[i.jsx(rt,{label:"Min Dates",value:(y=e.validation)==null?void 0:y.minDates,onChange:x=>r("minDates",x?parseInt(x):void 0),type:"number",min:0}),i.jsx(rt,{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})]}),i.jsx(rt,{label:"Error Message",value:(S=e.validation)==null?void 0:S.errorMessage,onChange:x=>r("errorMessage",x),placeholder:"Custom error message..."})]})},yP=({element:e,onUpdate:t,existingNames:r})=>{const[o,n]=P.useState(null),a=(s,l)=>{{const c=new Set(r);c.delete(e.attributes.name),c.has(l)?n("This field name already exists"):!l||l.trim()===""?n("Field name is required"):/^[a-zA-Z][a-zA-Z0-9_]*$/.test(l)?n(null):n("Must start with letter, only letters/numbers/underscores")}t({attributes:{...e.attributes,[s]:l}})};return i.jsx(No,{title:"Attributes",icon:"🏷️",defaultOpen:!1,children:i.jsxs("div",{children:[i.jsx("label",{className:m("block text-sm font-medium text-gray-700 mb-1"),children:"Field Name"}),i.jsx("input",{type:"text",value:e.attributes.name||"",onChange:s=>a("name",s.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&&i.jsx("p",{className:m("mt-1 text-xs text-red-600"),children:o}),i.jsx("p",{className:m("mt-1 text-xs text-gray-500"),children:"Used as the key in JSON output"})]})})},vP=({element:e,onUpdate:t})=>{var n,a,s,l;const r=c=>{t({config:{...e.config,options:c}})},o=(c,d)=>{t({config:{...e.config,[c]:d}})};return i.jsxs(No,{title:"Options",icon:"📋",children:[i.jsx(pP,{options:((n=e.config)==null?void 0:n.options)||[],onChange:r}),i.jsx(by,{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)&&i.jsx(rt,{label:"Other Label",value:(l=e.config)==null?void 0:l.otherLabel,onChange:c=>o("otherLabel",c),placeholder:"Other..."})]})},wP=({element:e,onUpdate:t})=>{var o,n;const r=(a,s)=>{t({config:{...e.config,[a]:s}})};return i.jsx(No,{title:"Matrix Configuration",icon:"📊",children:i.jsx(hP,{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"})})},xP=()=>i.jsxs("div",{className:m("flex flex-col items-center justify-center h-full text-center px-6 py-12"),children:[i.jsx("div",{className:m("w-12 h-12 bg-muted rounded-full flex items-center justify-center mb-4"),children:i.jsx(wh,{className:m("w-6 h-6 text-muted-foreground")})}),i.jsx("h3",{className:m("text-sm font-medium text-foreground mb-1"),children:"No element selected"}),i.jsx("p",{className:m("text-xs text-muted-foreground"),children:"Click on an element in the canvas to edit its properties"})]}),CP=({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},a=n.showLabel!==!1,s=n.showPlaceholder===!0,l=n.showDescription!==!1,c=n.showPrefix===!0,d=n.showSuffix===!0;return!a&&!s&&!l&&!c&&!d?null:i.jsxs(No,{title:"Properties",icon:"📝",children:[a&&i.jsx(rt,{label:"Label",value:e.properties.label,onChange:p=>o("label",p),placeholder:"Enter label..."}),s&&i.jsx(rt,{label:"Placeholder",value:e.properties.placeholder,onChange:p=>o("placeholder",p),placeholder:"Enter placeholder..."}),l&&i.jsx(rt,{label:"Description",value:e.properties.description,onChange:p=>o("description",p),type:"textarea",placeholder:"Enter description...",rows:2}),(c||d)&&i.jsxs("div",{className:m("grid grid-cols-2 gap-2"),children:[c&&i.jsx(rt,{label:"Prefix",value:e.properties.prefix,onChange:p=>o("prefix",p),placeholder:"$"}),d&&i.jsx(rt,{label:"Suffix",value:e.properties.suffix,onChange:p=>o("suffix",p),placeholder:".00"})]})]})},SP=()=>{const e=Mw(),t=ie(b=>b.updateElement),r=ie(b=>b.deleteElement),o=ie(b=>b.duplicateElement),n=ie(b=>b.schema.elements),a=P.useMemo(()=>new Set(n.map(b=>b.attributes.name).filter(Boolean)),[n]);if(!e)return i.jsx("div",{className:m("w-72 bg-card border-l border-border flex-col h-full hidden"),children:i.jsx(xP,{})});const s=b=>{t(e.id,b)},l=vt.get(e.type),c=!!(l!=null&&l.renderSettings),d=l==null?void 0:l.settingsSchema,p=c||!!d,u=l!=null&&l.icon&&typeof l.icon=="string"?l.icon:gc[e.type],f=(l==null?void 0:l.label)??bc[e.type],h=d==null?void 0:d.showSections;return i.jsxs("div",{className:m("w-72 bg-card border-l border-border flex flex-col h-full flex-shrink-0"),children:[i.jsxs("div",{className:m("p-4 border-b border-border"),children:[i.jsxs("div",{className:m("flex items-center gap-2 mb-1"),children:[i.jsx("span",{className:m("text-xl"),children:u}),i.jsx("h2",{className:m("text-lg font-semibold text-foreground"),children:f})]}),i.jsxs("div",{className:m("flex gap-2 mt-3"),children:[i.jsxs(st,{variant:"secondary",size:"sm",className:m("flex-1"),onClick:()=>o(e.id),children:[i.jsx(x1,{className:m("h-3 w-3 mr-1")}),"Duplicate"]}),i.jsxs(st,{variant:"destructive",size:"sm",className:m("flex-1"),onClick:()=>{window.confirm("Are you sure you want to delete this element?")&&r(e.id)},children:[i.jsx(mc,{className:m("h-3 w-3 mr-1")}),"Delete"]})]})]}),i.jsxs(Fc,{className:m("flex-1"),children:[c&&l.renderSettings({element:e,onUpdate:s}),!c&&i.jsxs(i.Fragment,{children:[(h==null?void 0:h.properties)!==!1&&(p?i.jsx(CP,{element:e,onUpdate:s,propertyConfig:d==null?void 0:d.properties}):i.jsx(mP,{element:e,onUpdate:s})),(h==null?void 0:h.options)!==!1&&aE(e.type)&&i.jsx(vP,{element:e,onUpdate:s}),(h==null?void 0:h.matrix)!==!1&&lE(e.type)&&i.jsx(wP,{element:e,onUpdate:s}),d&&i.jsx(fP,{element:e,schema:d,onUpdate:s}),(h==null?void 0:h.layout)!==!1&&i.jsx(bP,{element:e,onUpdate:s}),(h==null?void 0:h.validation)!==!1&&((l==null?void 0:l.supportsValidation)??sE(e.type))&&!gi(e.type)&&i.jsx(gP,{element:e,onUpdate:s}),(h==null?void 0:h.attributes)!==!1&&((l==null?void 0:l.structure)==="field"||tE(e.type))&&!gi(e.type)&&i.jsx(yP,{element:e,onUpdate:s,existingNames:a}),(h==null?void 0:h.logic)!==!1&&!gi(e.type)&&i.jsx(No,{title:"Conditional Logic",icon:"⚡",children:i.jsx(T$,{element:e,elements:n,onUpdate:s})})]})]})]})};var Ea=e=>e.type==="checkbox",Wl=e=>e.type==="file",Eo=e=>e instanceof Date,Ft=e=>e==null;const fu=e=>typeof e=="object";var ft=e=>!Ft(e)&&!Array.isArray(e)&&fu(e)&&!Eo(e),NP=e=>ft(e)&&e.target?Ea(e.target)?e.target.checked:Wl(e.target)?e.target.files:e.target.value:e,EP=(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 ft(t)&&t.hasOwnProperty("isPrototypeOf")},Hl=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function ht(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&&!(ft(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]=ht(e[n]));return o}const Tn={BLUR:"blur",FOCUS_OUT:"focusout",SUBMIT:"submit",TRIGGER:"trigger",VALID:"valid"},_r={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},Tr={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},yy="root",pu=["__proto__","constructor","prototype"],kP=/^\w*$/;var ka=e=>kP.test(e),dt=e=>e===void 0;const AP=/[.[\]'"]/;var jl=e=>e.split(AP).filter(Boolean),pe=(e,t,r)=>{if(!t||!ft(e))return r;const o=ka(t)?[t]:jl(t);if(o.some(a=>pu.includes(a)))return r;const n=o.reduce((a,s)=>Ft(a)?void 0:a[s],e);return dt(n)||n===e?dt(e[t])?r:e[t]:n},jr=e=>typeof e=="boolean",gr=e=>typeof e=="function",lt=(e,t,r)=>{let o=-1;const n=ka(t)?[t]:jl(t),a=n.length,s=a-1;for(;++o<a;){const l=n[o];let c=r;if(o!==s){const d=e[l];c=ft(d)||Array.isArray(d)?d:isNaN(+n[o+1])?{}:[]}if(pu.includes(l))return;e[l]=c,e=e[l]}};const vy=P.createContext(null);vy.displayName="HookFormControlContext";var _P=(e,t,r,o=!0)=>{const n={};for(const a in e)Object.defineProperty(n,a,{get:()=>{const s=a;return t._proxyFormState[s]!==_r.all&&(t._proxyFormState[s]=!o||_r.all),e[s]}});return n};const TP=Hl?P.useLayoutEffect:P.useEffect;var Vt=e=>typeof e=="string",DP=(e,t,r,o,n)=>Vt(e)?(o&&t.watch.add(e),pe(r,e,n)):Array.isArray(e)?e.map(a=>(o&&t.watch.add(a),pe(r,a))):(o&&(t.watchAll=!0),r),hu=e=>Ft(e)||!fu(e);const wy=(e,t)=>t.length===0&&!Array.isArray(e)&&!gy(e);function qr(e,t,r=new WeakMap){if(e===t)return!0;if(hu(e)||hu(t))return Object.is(e,t);if(Eo(e)&&Eo(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(wy(e,o)||wy(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 l=e[s];if(!(s in t))return!1;if(s!=="ref"){const c=t[s];if(Eo(l)&&Eo(c)||(ft(l)||Array.isArray(l))&&(ft(c)||Array.isArray(c))?!qr(l,c,r):!Object.is(l,c))return!1}}return!0}var ql=e=>({isOnSubmit:!e||e===_r.onSubmit,isOnBlur:e===_r.onBlur,isOnChange:e===_r.onChange,isOnAll:e===_r.all,isOnTouch:e===_r.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 Aa=(e,t,r,o)=>{for(const n of r||Object.keys(e)){if(n==="_f")continue;const a=r?pe(e,n):e[n];if(a){const{_f:s}=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(Aa(a,t))break}else if((ft(a)||Array.isArray(a))&&Aa(a,t))break}}};var xy=(e,t,r)=>{const o=pe(e,r),n=Array.isArray(o)?o:[];return lt(n,yy,t[r]),lt(e,r,n),e},Gt=e=>ft(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)},bu=e=>e.type==="radio",Ql=e=>e instanceof RegExp,$P=(e,t,r,o,n)=>t?{...r[e],types:{...r[e]&&r[e].types?r[e].types:{},[o]:n||!0}}:{};const Cy={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&&!dt(e[0].attributes.value)?dt(e[0].value)||e[0].value===""?Sy:{value:e[0].value,isValid:!0}:Sy:Cy}return Cy};const Ey={isValid:!1,value:null};var ky=e=>Array.isArray(e)?e.reduce((t,r)=>r&&r.checked&&!r.disabled?{isValid:!0,value:r.value}:t,Ey):Ey;function Ay(e,t,r="validate"){if(Vt(e)||Array.isArray(e)&&e.every(Vt)||jr(e)&&!e)return{type:r,message:Vt(e)?e:"",ref:t}}var Dn=e=>ft(e)&&!Ql(e)?e:{value:e,message:""},_y=async(e,t,r,o,n,a)=>{const{ref:s,refs:l,required:c,maxLength:d,minLength:p,min:u,max:f,pattern:h,validate:b,name:g,valueAsNumber:y,mount:v}=e._f,S=pe(r,g);if(!v||t.has(g))return{};const x=l?l[0]:s,w=$=>{if(n&&x.reportValidity){const V=jr($)?"":$||"";l?l.forEach(G=>G.setCustomValidity(V)):x.setCustomValidity(V),x.reportValidity()}},N={},k=bu(s),_=Ea(s),E=k||_,D=(y||Wl(s))&&dt(s.value)&&dt(S)||Yl(s)&&s.value===""||S===""||Array.isArray(S)&&!S.length,T=$P.bind(null,g,o,N),O=($,V,G,q=Tr.maxLength,H=Tr.minLength)=>{const Y=$?V:G;N[g]={type:$?q:H,message:Y,ref:s,...T($?q:H,Y)}};if(a?!Array.isArray(S)||!S.length:c&&(!E&&(D||Ft(S))||jr(S)&&!S||_&&!Ny(l).isValid||k&&!ky(l).isValid)){const{value:$,message:V}=Vt(c)?{value:!!c,message:c}:Dn(c);if($&&(N[g]={type:Tr.required,message:V,ref:x,...T(Tr.required,V)},!o))return w(V),N}if(!D&&(!Ft(u)||!Ft(f))){let $,V;const G=Dn(f),q=Dn(u);if(!Ft(S)&&!isNaN(S)){const H=s.valueAsNumber||S&&+S;Ft(G.value)||($=H>G.value),Ft(q.value)||(V=H<q.value)}else{const H=s.valueAsDate||new Date(S),Y=R=>new Date(new Date().toDateString()+" "+R),J=s.type=="time",W=s.type=="week";Vt(G.value)&&S&&($=J?Y(S)>Y(G.value):W?S>G.value:H>new Date(G.value)),Vt(q.value)&&S&&(V=J?Y(S)<Y(q.value):W?S<q.value:H<new Date(q.value))}if(($||V)&&(O(!!$,G.message,q.message,Tr.max,Tr.min),!o))return w(N[g].message),N}if((d||p)&&!D&&(Vt(S)||a&&Array.isArray(S))){const $=Dn(d),V=Dn(p),G=!Ft($.value)&&S.length>+$.value,q=!Ft(V.value)&&S.length<+V.value;if((G||q)&&(O(G,$.message,V.message),!o))return w(N[g].message),N}if(h&&!D&&Vt(S)){const{value:$,message:V}=Dn(h);if(Ql($)&&!S.match($)&&(N[g]={type:Tr.pattern,message:V,ref:s,...T(Tr.pattern,V)},!o))return w(V),N}if(b){if(gr(b)){const $=await b(S,r),V=Ay($,x);if(V&&(N[g]={...V,...T(Tr.validate,V.message)},!o))return w(V.message),N}else if(ft(b)){let $={};for(const V in b){if(!Gt($)&&!o)break;const G=Ay(await b[V](S,r),x,V);G&&($={...G,...T(V,G.message)},w(G.message),o&&(N[g]=$))}if(!Gt($)&&(N[g]={ref:x,...$},!o))return N}}return w(!0),N},Kl=e=>Array.isArray(e)?e:[e],Ty=e=>Array.isArray(e)?e.filter(Boolean):[];function PP(e,t){const r=t.length-1;let o=0;for(;o<r;){if(Ft(e)){e=void 0;break}e=e[t[o]],o++}return e}function MP(e){for(const t in e)if(e.hasOwnProperty(t)&&!dt(e[t]))return!1;return!0}function gt(e,t){if(Vt(t)&&Object.prototype.hasOwnProperty.call(e,t))return delete e[t],e;const r=Array.isArray(t)?t:ka(t)?[t]:jl(t);if(r.some(s=>pu.includes(String(s))))return e;const o=r.length===1?e:PP(e,r),n=r.length-1,a=r[n];return o&&delete o[a],n!==0&&(ft(o)&&Gt(o)||Array.isArray(o)&&MP(o))&>(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&&!Eo(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},gu=P.createContext(null);gu.displayName="HookFormContext";const yu=()=>P.useContext(gu),$y=({children:e,watch:t,getValues:r,getFieldState:o,setError:n,clearErrors:a,setValue:s,setValues:l,trigger:c,formState:d,resetField:p,reset:u,resetDefaultValues:f,handleSubmit:h,unregister:b,control:g,register:y,setFocus:v,subscribe:S})=>{const x=P.useMemo(()=>({watch:t,getValues:r,getFieldState:o,setError:n,clearErrors:a,setValue:s,setValues:l,trigger:c,formState:d,resetField:p,reset:u,resetDefaultValues:f,handleSubmit:h,unregister:b,control:g,register:y,setFocus:v,subscribe:S}),[a,g,d,o,r,h,y,u,f,p,n,v,s,l,S,c,b,t]);return P.createElement(gu.Provider,{value:x},P.createElement(vy.Provider,{value:x.control},e))};var Py=()=>{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 My(e,t){const r={};for(const o in e)if(e.hasOwnProperty(o)){const n=e[o],a=t[o];if(n&&ft(n)&&a){const s=My(n,a);ft(s)&&(r[o]=s)}else e[o]&&(r[o]=a)}return r}var Oy=e=>e.type==="select-multiple",OP=e=>bu(e)||Ea(e),vu=e=>Yl(e)&&e.isConnected;function Iy(e){return Array.isArray(e)||ft(e)}function Ly(e,t,r="",o=[]){for(const n in e){const a=r?`${r}.${n}`:n,s=e[n];Iy(s)&&Iy(pe(t,a))?Ly(s,t,a,o):o.push(a)}return o}var IP=e=>{for(const t in e)if(gr(e[t]))return!0;return!1};function Fy(e){return Array.isArray(e)||ft(e)&&!IP(e)}function Vy(e){return!!(e&&"_f"in e)}function Gy(e){return Array.isArray(e)?!e.some(t=>!dt(t)):!Object.keys(e).length}function wu(e,t){Array.isArray(e)?e[t]=void 0:delete e[t]}function xu(e,t={},r){for(const o in e){const n=e[o],a=r&&r[o];Fy(n)&&(!Array.isArray(n)||!Vy(a))?(t[o]=Array.isArray(n)?[]:{},xu(n,t[o],a),Gy(t[o])&&wu(t,o)):dt(n)||(t[o]=!0)}return t}function an(e,t,r,o){r||(r=xu(t,{},o));for(const n in e){const a=e[n],s=o&&o[n];Fy(a)&&(!Array.isArray(a)||!Vy(s))?(dt(t)||hu(r[n])?r[n]=xu(a,Array.isArray(a)?[]:{},s):an(a,Ft(t)?{}:t[n],r[n],s),Gy(r[n])&&wu(r,n)):qr(a,t[n])?wu(r,n):r[n]=!0}return r}var zy=(e,{valueAsNumber:t,valueAsDate:r,setValueAs:o})=>dt(e)?e:t?e===""?NaN:e&&+e:r&&Vt(e)?new Date(e):o?o(e):e;function By(e){const t=e.ref;return Wl(t)?t.files:bu(t)?ky(e.refs).value:Oy(t)?[...t.selectedOptions].map(({value:r})=>r):Ea(t)?Ny(e.refs).value:zy(t.value,e)}var LP=(e,t,r,o)=>{const n={};for(const a of e){const s=pe(t,a);s&<(n,a,s._f)}return{criteriaMode:r,names:[...e],fields:n,shouldUseNativeValidation:o}},_a=e=>dt(e)?e:Ql(e)?e.source:ft(e)?Ql(e.value)?e.value.source:e.value:e;const Uy="AsyncFunction";var FP=e=>{if(!e||!e.validate)return!1;if(gr(e.validate))return e.validate.constructor.name===Uy;if(ft(e.validate)){for(const t in e.validate)if(e.validate[t].constructor.name===Uy)return!0}return!1},VP=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate);function Wy(e,t,r){const o=pe(e,r);if(o||ka(r))return{error:o,name:r};const n=r.split(".");for(;n.length;){const a=n.join("."),s=pe(t,a),l=pe(e,a);if(s&&!Array.isArray(s)&&r!==a)return{name:r};if(l&&l.type)return{name:a,error:l};if(l&&l.root&&l.root.type)return{name:`${a}.root`,error:l.root};n.pop()}return{name:r}}var GP=(e,t,r,o)=>{r(e);const n=Object.keys(e).filter(a=>a!=="name");return!n.length||o&&n.length>=Object.keys(t).length||n.find(a=>t[a]===(!o||_r.all))},zP=(e,t,r)=>!e||!t||e===t||Kl(e).some(o=>o&&(r?o===t||o.startsWith(t+"."):o.startsWith(t)||t.startsWith(o))),BP=(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,UP=(e,t)=>!Ty(pe(e,t)).length&>(e,t);const WP={mode:_r.onSubmit,reValidateMode:_r.onChange,shouldFocusError:!0},Cu="form",HP=(e,t)=>{for(const r in e)r in t||delete e[r];Object.assign(e,t)},Hy={submitCount:0,isDirty:!1,isReady:!1,isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{}};function jP(e={}){let t={...WP,...e},r={...ht(Hy),isLoading:gr(t.defaultValues),errors:t.errors||{},disabled:t.disabled||!1},o={},n=ft(t.defaultValues)||ft(t.values)?ht(t.defaultValues||t.values)||{}:{},a=t.shouldUnregister?{}:ht(n),s={action:!1,mount:!1,watch:!1,keepIsValid:!1},l={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},b={...h};let g={...b};const y={array:Py(),state:Py()};let v=0;const S=t.criteriaMode===_r.all,x=(A,M)=>L=>{clearTimeout(d[A]),d[A]=setTimeout(M,L)},w=async A=>{if(!s.keepIsValid&&!t.disabled&&(b.isValid||g.isValid||A)){const M=++v;let L;t.resolver?(L=Gt((await G()).errors),M===v&&N()):L=await Y({fields:o,onlyCheckValid:!0,eventType:Tn.VALID}),M===v&&L!==r.isValid&&y.state.next({isValid:L})}},N=(A,M)=>{!t.disabled&&(b.isValidating||b.validatingFields||g.isValidating||g.validatingFields)&&((A||Array.from(l.mount)).forEach(L=>{L&&(M?lt(r.validatingFields,L,M):gt(r.validatingFields,L))}),y.state.next({validatingFields:r.validatingFields,isValidating:!Gt(r.validatingFields)}))},k=()=>{r.dirtyFields=an(n,a,void 0,o)},_=(A,M=[],L,B,U=!0,X=!0)=>{if(B&&L&&!t.disabled){if(s.action=!0,X&&Array.isArray(pe(o,A))){const z=L(pe(o,A),B.argA,B.argB);U&<(o,A,z)}if(X&&Array.isArray(pe(r.errors,A))){const z=L(pe(r.errors,A),B.argA,B.argB);U&<(r.errors,A,z),UP(r.errors,A)}if((b.touchedFields||g.touchedFields)&&X&&Array.isArray(pe(r.touchedFields,A))){const z=L(pe(r.touchedFields,A),B.argA,B.argB);U&<(r.touchedFields,A,z)}(b.dirtyFields||g.dirtyFields)&&k(),y.state.next({name:A,isDirty:W(A,M),dirtyFields:r.dirtyFields,errors:r.errors,isValid:r.isValid})}else lt(a,A,M)},E=(A,M)=>{lt(r.errors,A,M),r.errors={...r.errors},y.state.next({errors:r.errors})},D=A=>{r.errors=A,y.state.next({errors:r.errors,isValid:!1})},T=A=>{const M=ka(A)?[A]:jl(A);let L=a,B=n;for(let U=0;U<M.length-1;U++){const X=M[U];if(L=Ft(L)?L:L[X],B=Ft(B)?B:B[X],L===null&&B!==null)return!0}return!1},O=(A,M,L,B)=>{const U=pe(o,A);if(U){if(T(A))return;const X=dt(pe(a,A)),z=pe(a,A,dt(L)?pe(n,A):L);dt(z)||B&&B.defaultChecked||M?lt(a,A,M?z:By(U._f)):Q(A,z),s.mount&&!s.action&&(w(),X&&r.isDirty&&(b.isDirty||g.isDirty)&&(W()||(r.isDirty=!1,y.state.next({...r}))),e.shouldUnregister&&X&&!dt(pe(a,A))&&mu(A,l)&&(s.watch=!0))}},$=(A,M,L,B,U)=>{let X=!1,z=!1;const ee={name:A};if(!t.disabled||B===!0){if(!L||B){const ne=qr(pe(n,A),M);(b.isDirty||g.isDirty)&&(z=r.isDirty,r.isDirty=ee.isDirty=!ne||W(),X=z!==ee.isDirty),z=!!pe(r.dirtyFields,A),ne!==r.isDirty?HP(r.dirtyFields,an(n,a,void 0,o)):ne?gt(r.dirtyFields,A):lt(r.dirtyFields,A,!0),ee.dirtyFields=r.dirtyFields,X=X||(b.dirtyFields||g.dirtyFields)&&z!==!ne}if(L){const ne=pe(r.touchedFields,A);ne||(lt(r.touchedFields,A,L),ee.touchedFields=r.touchedFields,X=X||(b.touchedFields||g.touchedFields)&&ne!==L)}X&&U&&y.state.next(ee)}return X?ee:{}},V=(A,M,L,B)=>{const U=pe(r.errors,A),X=(b.isValid||g.isValid)&&jr(M)&&r.isValid!==M;if(t.delayError&&L?(c[A]=x(A,()=>E(A,L)),c[A](t.delayError)):(clearTimeout(d[A]),delete c[A],L?lt(r.errors,A,L):gt(r.errors,A),r.errors={...r.errors}),(L?!qr(U,L):U)||!Gt(B)||X){const z={...B,...X&&jr(M)?{isValid:M}:{},errors:r.errors,name:A};r={...r,...z},y.state.next(z)}},G=async A=>(N(A,!0),await t.resolver(a,t.context,LP(A||l.mount,o,t.criteriaMode,t.shouldUseNativeValidation))),q=async A=>{const{errors:M}=await G(A);if(N(A),A){for(const L of A){const B=pe(M,L);B?l.array.has(L)&&ft(B)&&!Object.keys(B).some(U=>!Number.isNaN(Number(U)))?xy(r.errors,{[L]:B},L):lt(r.errors,L,B):gt(r.errors,L)}r.errors={...r.errors}}else r.errors=M;return M},H=async({name:A,eventType:M})=>{if(e.validate){const L=await e.validate({formValues:a,formState:r,name:A,eventType:M});if(ft(L))for(const B in L){const U=L[B];U&&ae(`${Cu}.${B}`,{message:Vt(U.message)?U.message:"",type:U.type||Tr.validate})}else Vt(L)||!L?ae(Cu,{message:L||"",type:Tr.validate}):be(Cu);return L}return!0},Y=async({fields:A,onlyCheckValid:M,name:L,eventType:B,context:U={valid:!0,runRootValidation:!1}})=>{if(e.validate&&(U.runRootValidation=!0,!await H({name:L,eventType:B})&&(U.valid=!1,M)))return U.valid;for(const X in A){const z=A[X];if(z){const{_f:ee,...ne}=z;if(ee){const Ce=l.array.has(ee.name),Fe=z._f&&FP(z._f),Ue=b.validatingFields||b.isValidating||g.validatingFields||g.isValidating;Fe&&Ue&&N([ee.name],!0);const ye=await _y(z,l.disabled,a,S,t.shouldUseNativeValidation&&!M,Ce);if(Fe&&Ue&&N([ee.name]),ye[ee.name]&&(U.valid=!1,M)||(!M&&(pe(ye,ee.name)?Ce?xy(r.errors,ye,ee.name):lt(r.errors,ee.name,ye[ee.name]):gt(r.errors,ee.name)),e.shouldUseNativeValidation&&ye[ee.name]))break}!Gt(ne)&&await Y({context:U,onlyCheckValid:M,fields:ne,name:X,eventType:B})}}return U.valid},J=()=>{for(const A of l.unMount){const M=pe(o,A);M&&(M._f.refs?M._f.refs.every(L=>!vu(L)):!vu(M._f.ref))&&et(A)}l.unMount=new Set},W=(A,M)=>(A&&M&<(a,A,M),!qr(s.mount?a:n,n)),R=(A,M,L)=>DP(A,l,{...s.mount?a:dt(M)?n:Vt(A)?{[A]:M}:M},L,M),we=A=>Ty(pe(s.mount?a:n,A,t.shouldUnregister?pe(n,A,[]):[])),Q=(A,M,L={},B=!1,U=!1)=>{const X=pe(o,A);let z=M;if(X){const ee=X._f;ee&&(!ee.disabled&<(a,A,zy(M,ee)),z=Yl(ee.ref)&&Ft(M)?"":M,Oy(ee.ref)?[...ee.ref.options].forEach(ne=>ne.selected=z.includes(ne.value)):ee.refs?Ea(ee.ref)?ee.refs.forEach(ne=>{(!ne.defaultChecked||!ne.disabled)&&(Array.isArray(z)?ne.checked=!!z.find(Ce=>Ce===ne.value):ne.checked=z===ne.value||!!z)}):ee.refs.forEach(ne=>ne.checked=ne.value===z):Wl(ee.ref)?ee.ref.value="":(ee.ref.value=z,!ee.ref.type&&!U&&y.state.next({name:A,values:B?a:ht(a)})))}(L.shouldDirty||L.shouldTouch)&&$(A,z,L.shouldTouch,L.shouldDirty,!U),L.shouldValidate&&ce(A,{delayError:L.delayError})},te=(A,M,L,B=!1,U=!1)=>{l.array.has(A)&&y.array.next({name:A,values:B?a:ht(a)});for(const X in M){if(!M.hasOwnProperty(X))return;const z=M[X],ee=A+"."+X,ne=pe(o,ee);(l.array.has(A)||ft(z)||ne&&!ne._f)&&!Eo(z)?te(ee,z,L,B,U):Q(ee,z,L,B,U)}},De=(A,M,L,B,U=!1)=>{const X=pe(o,A),z=l.array.has(A),ee=B?M:ht(M),ne=pe(a,A),Ce=qr(ne,ee);if(Ce||lt(a,A,ee),z)y.array.next({name:A,values:B?a:ht(a)}),(b.isDirty||b.dirtyFields||g.isDirty||g.dirtyFields)&&L.shouldDirty&&(k(),U||y.state.next({name:A,dirtyFields:r.dirtyFields,isDirty:W(A,ee)}));else{const Fe=Array.isArray(ee)&&!ee.length||Gt(ee);!X||X._f||Ft(ee)||Fe?Q(A,ee,L,B,U):te(A,ee,L,B,U)}if(!Ce&&!U){const Fe=mu(A,l),Ue=B?a:ht(a);y.state.next({...Fe&&r,name:s.mount||Fe?A:void 0,values:Ue})}},de=(A,M,L={})=>De(A,M,L,!1),Se=(A,M={})=>{const L=gr(A)?A(a):A;if(!qr(a,L)){a={...a,...L};const B=Dy(L);for(const U of l.mount)U in B&&De(U,B[U],M,!0,!0);y.state.next({...r,name:void 0,type:void 0,...p?{values:a}:{}}),M.shouldValidate&&w()}},re=async A=>{s.mount=!0;const M=A.target;let L=M.name,B=!0;const U=pe(o,L),X=z=>{B=Number.isNaN(z)||Eo(z)&&isNaN(z.getTime())||qr(z,pe(a,L,z))};if(U){let z,ee;const ne=M.type?By(U._f):NP(A),Ce=A.type===Tn.BLUR||A.type===Tn.FOCUS_OUT,Fe=!VP(U._f)&&!e.validate&&!t.resolver&&!pe(r.errors,L)&&!U._f.deps,Ue=Fe||BP(Ce,pe(r.touchedFields,L),r.isSubmitted,f,u),ye=mu(L,l,Ce);if(lt(a,L,ne),Ce){if(!M||!M.readOnly){U._f.onBlur&&U._f.onBlur(A);const Jt=c[L];Jt&&Jt(0)}}else U._f.onChange&&U._f.onChange(A);const We=$(L,ne,Ce),ct=!Gt(We)||ye;if(!Ce&&y.state.next({name:L,type:A.type,...p?{values:ht(a)}:{}}),Ue)return(!Fe||!r.isValid)&&(b.isValid||g.isValid)&&(t.mode==="onBlur"?Ce&&w():Ce||w()),ct&&y.state.next({name:L,...ye?{}:We});if(!t.resolver&&e.validate&&await H({name:L,eventType:A.type}),!Ce&&ye&&y.state.next({...r}),t.resolver){const{errors:Jt}=await G([L]);if(N([L]),X(ne),!B){!Gt(We)&&y.state.next(We);return}const ko=Wy(r.errors,o,L),Zt=Wy(Jt,o,ko.name||L);z=Zt.error,L=Zt.name,ee=Gt(Jt)}else N([L],!0),z=(await _y(U,l.disabled,a,S,t.shouldUseNativeValidation))[L],N([L]),X(ne),B&&(z?ee=!1:(b.isValid||g.isValid)&&(ee=await Y({fields:o,onlyCheckValid:!0,name:L,eventType:A.type})));B&&(U._f.deps&&(!Array.isArray(U._f.deps)||U._f.deps.length>0)&&ce(U._f.deps),V(L,ee,z,We))}},me=(A,M)=>{if(pe(r.errors,M)&&A.focus)return A.focus(),1},ce=async(A,M={})=>{let L,B;const U=Kl(A);if(t.resolver){const X=await q(dt(A)?A:U);L=Gt(X),B=A?!U.some(z=>pe(X,z)):L}else A?(B=(await Promise.all(U.map(async X=>{const z=pe(o,X);return await Y({fields:z&&z._f?{[X]:z}:z,eventType:Tn.TRIGGER})}))).every(Boolean),!(!B&&!r.isValid)&&w()):B=L=await Y({fields:o,name:A,eventType:Tn.TRIGGER});if(M.delayError&&t.delayError&&Vt(A)){const X=pe(r.errors,A);X?(gt(r.errors,A),c[A]=x(A,()=>E(A,X)),c[A](t.delayError)):(clearTimeout(d[A]),delete c[A])}return y.state.next({...!Vt(A)||(b.isValid||g.isValid)&&L!==r.isValid?{}:{name:A},...t.resolver||!A?{isValid:L}:{},errors:r.errors}),M.shouldFocus&&!B&&Aa(o,me,A?U:l.mount),B},Ie=(A,M)=>{let L={...s.mount?a:n};return M&&(L=My(M.dirtyFields?r.dirtyFields:r.touchedFields,L)),dt(A)?L:Vt(A)?pe(L,A):A.map(B=>pe(L,B))},xe=(A,M)=>({invalid:!!pe((M||r).errors,A),isDirty:!!pe((M||r).dirtyFields,A),error:pe((M||r).errors,A),isValidating:!!pe(r.validatingFields,A),isTouched:!!pe((M||r).touchedFields,A)}),be=A=>{const M=A?Kl(A):void 0;M==null||M.forEach(L=>gt(r.errors,L)),M?M.forEach(L=>{y.state.next({name:L,errors:r.errors})}):(r.errors={},y.state.next({errors:r.errors}))},ae=(A,M,L)=>{const B=(pe(o,A,{_f:{}})._f||{}).ref,U=pe(r.errors,A)||{},{ref:X,message:z,type:ee,...ne}=U;lt(r.errors,A,{...ne,...M,ref:B}),y.state.next({name:A,errors:r.errors,isValid:!1}),L&&L.shouldFocus&&B&&B.focus&&B.focus()},ue=(A,M)=>{if(gr(A)){p++;const{unsubscribe:L}=y.state.subscribe({next:U=>"values"in U&&A(U.values||R(void 0,M),U)});let B=!1;return{unsubscribe:()=>{B||(B=!0,p--,L())}}}return R(A,M,!0)},ve=A=>{var M;const L=!!(!((M=A.formState)===null||M===void 0)&&M.values);L&&p++;const{unsubscribe:B}=y.state.subscribe({next:X=>{if(zP(A.name,X.name,A.exact)&&GP(X,A.formState||b,K,A.reRenderRoot)){const z={...a};A.callback({values:z,...r,...X,defaultValues:n})}}});if(!L)return B;let U=!1;return()=>{U||(U=!0,p--,B())}},Oe=A=>(s.mount=!0,g={...g,...A.formState},ve({...A,formState:{...h,...A.formState}})),et=(A,M={})=>{for(const L of A?Kl(A):l.mount)l.mount.delete(L),l.array.delete(L),M.keepValue||(gt(o,L),gt(a,L)),!M.keepError&>(r.errors,L),!M.keepDirty&>(r.dirtyFields,L),!M.keepTouched&>(r.touchedFields,L),!M.keepIsValidating&>(r.validatingFields,L),!t.shouldUnregister&&!M.keepDefaultValue&>(n,L);y.state.next({values:ht(a)}),y.state.next({...r,...M.keepDirty?{isDirty:W()}:{}}),!M.keepIsValid&&w()},at=({disabled:A,name:M})=>{if(jr(A)&&s.mount||A||l.disabled.has(M)){const U=l.disabled.has(M)!==!!A;A?l.disabled.add(M):l.disabled.delete(M),U&&s.mount&&!s.action&&w()}},it=(A,M={})=>{let L=pe(o,A);const B=jr(M.disabled)||jr(t.disabled),U=!l.registerName.has(A)&&L&&L._f&&!L._f.mount;return lt(o,A,{...L||{},_f:{...L&&L._f?L._f:{ref:{name:A}},name:A,mount:!0,...M}}),l.mount.add(A),L&&!U?at({disabled:jr(M.disabled)?M.disabled:t.disabled,name:A}):O(A,!0,M.value),{...B?{disabled:M.disabled||t.disabled}:{},...t.progressive?{required:!!M.required,min:_a(M.min),max:_a(M.max),minLength:_a(M.minLength),maxLength:_a(M.maxLength),pattern:_a(M.pattern)}:{},name:A,onChange:re,onBlur:re,ref:X=>{if(X){l.registerName.add(A),it(A,M),l.registerName.delete(A),L=pe(o,A);const z=dt(X.value)&&X.querySelectorAll&&X.querySelectorAll("input,select,textarea")[0]||X,ee=OP(z),ne=L._f.refs||[];if(ee?ne.find(Fe=>Fe===z):z===L._f.ref)return;const Ce={...L._f};ee?(Ce.refs=[...ne.filter(vu),z,...Array.isArray(pe(n,A))?[{}]:[]],Ce.ref={type:z.type,name:A}):(Ce.ref=z,delete Ce.refs),lt(o,A,{_f:Ce}),O(A,!1,void 0,z)}else L=pe(o,A,{}),L._f&&(L._f.mount=!1),(t.shouldUnregister||M.shouldUnregister)&&!(EP(l.array,A)&&s.action)&&l.unMount.add(A)}}},tt=()=>t.shouldFocusError&&!t.shouldUseNativeValidation&&Aa(o,me,l.mount),$e=A=>{jr(A)&&(y.state.next({disabled:A}),Aa(o,(M,L)=>{const B=pe(o,L);B&&(M.disabled=B._f.disabled||A,Array.isArray(B._f.refs)&&B._f.refs.forEach(U=>{U.disabled=B._f.disabled||A}))},0,!1))},yt=(A,M)=>async L=>{let B,U;L&&(L.preventDefault&&L.preventDefault(),L.persist&&L.persist());let X=ht(a);if(y.state.next({isSubmitting:!0}),t.resolver){const{errors:z,values:ee}=await G();N(),r.errors=z,X=ht(ee)}else await Y({fields:o,eventType:Tn.SUBMIT});if(l.disabled.size)for(const z of l.disabled)gt(X,z);if(gt(r.errors,yy),Gt(r.errors)){y.state.next({errors:{}});try{B=await A(X,L)}catch(z){U=z}}else M&&await M({...r.errors},L),tt(),setTimeout(tt);if(y.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:Gt(r.errors)&&!U,submitCount:r.submitCount+1,errors:r.errors}),U)throw U;return B},Xt=(A,M={})=>{pe(o,A)&&(dt(M.defaultValue)?de(A,ht(pe(n,A))):(de(A,M.defaultValue),lt(n,A,ht(M.defaultValue))),M.keepTouched||gt(r.touchedFields,A),M.keepDirty||(gt(r.dirtyFields,A),r.isDirty=M.defaultValue?W(A,ht(pe(n,A))):W()),M.keepError||(gt(r.errors,A),b.isValid&&w()),y.state.next({...r}))},Wt=(A,M={})=>{const L=A?ht(A):n,B=ht(L),U=Gt(A),X=B,z=o;if(M.keepDefaultValues||(n=L),!M.keepValues){if(M.keepDirtyValues){const ee=new Set([...l.mount,...Ly(an(n,a,void 0,z),r.dirtyFields)]);for(const ne of Array.from(ee)){const Ce=pe(r.dirtyFields,ne),Fe=pe(a,ne),Ue=pe(X,ne);Ce&&!dt(Fe)?lt(X,ne,Fe):!Ce&&!dt(Ue)&&de(ne,Ue)}}else{if(Hl&&dt(A))for(const ee of l.mount){const ne=pe(o,ee);if(ne&&ne._f){const Ce=Array.isArray(ne._f.refs)?ne._f.refs[0]:ne._f.ref;if(Yl(Ce)){const Fe=Ce.closest("form");if(Fe){Fe.reset();break}}}}if(M.keepFieldsRef)for(const ee of l.mount)de(ee,pe(X,ee));else o={}}if(t.shouldUnregister){if(a=M.keepDefaultValues?ht(n):{},M.keepFieldsRef)for(const ee of l.mount)lt(a,ee,pe(X,ee))}else a=ht(X);y.array.next({values:{...X}}),y.state.next({name:void 0,type:void 0,values:{...X}})}l={mount:M.keepDirtyValues?l.mount:new Set,unMount:new Set,array:new Set,registerName:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},s.mount=!b.isValid||!!M.keepIsValid||!!M.keepDirtyValues||!t.shouldUnregister&&!Gt(X),s.watch=!!t.shouldUnregister,s.keepIsValid=!!M.keepIsValid,s.action=!1,M.keepErrors||(r.errors={}),y.state.next({submitCount:M.keepSubmitCount?r.submitCount:0,isDirty:U?!1:M.keepDirty?r.isDirty:M.keepValues?W():!!(M.keepDefaultValues&&!qr(A,n)),isSubmitted:M.keepIsSubmitted?r.isSubmitted:!1,dirtyFields:U?{}:M.keepDirtyValues?M.keepDefaultValues&&a?an(n,a,void 0,z):r.dirtyFields:M.keepDefaultValues&&A?an(n,A,void 0,z):M.keepDirty?r.dirtyFields:{},touchedFields:M.keepTouched?r.touchedFields:{},errors:M.keepErrors?r.errors:{},isSubmitSuccessful:M.keepIsSubmitSuccessful?r.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:n})},I=(A,M)=>Wt(gr(A)?A(a):A,{...t.resetOptions,...M}),F=(A,M={})=>{const L=pe(o,A),B=L&&L._f;if(B){const U=B.refs?B.refs[0]:B.ref;U.focus&&setTimeout(()=>{U.focus(),M.shouldSelect&&gr(U.select)&&U.select()})}},K=A=>{const{name:M,type:L,values:B,...U}=A;r={...r,...U}},se={control:{register:it,unregister:et,getFieldState:xe,handleSubmit:yt,setError:ae,_subscribe:ve,_runSchema:G,_updateIsValidating:N,_focusError:tt,_getWatch:R,_getDirty:W,_setValid:w,_setFieldArray:_,_setDisabledField:at,_setErrors:D,_getFieldArray:we,_reset:Wt,_resetDefaultValues:()=>gr(t.defaultValues)&&t.defaultValues().then(A=>{I(A,t.resetOptions),y.state.next({isLoading:!1})}),_removeUnmounted:J,_disableForm:$e,_subjects:y,_proxyFormState:b,get _fields(){return o},get _formValues(){return a},get _state(){return s},set _state(A){s=A},get _defaultValues(){return n},get _names(){return l},set _names(A){l=A},get _formState(){return r},get _options(){return t},set _options(A){t={...t,...A},u=ql(t.mode),f=ql(t.reValidateMode)}},subscribe:Oe,trigger:ce,register:it,handleSubmit:yt,watch:ue,setValue:de,setValues:Se,getValues:Ie,reset:I,resetField:Xt,resetDefaultValues:(A,M={})=>{if(n=ht(A),!M.keepDirty){const L=an(n,a,void 0,o);r.dirtyFields=L,r.isDirty=!Gt(L)}M.keepIsValid||w(),y.state.next({...r,defaultValues:n})},clearErrors:be,unregister:et,setError:ae,setFocus:F,getFieldState:xe};return{...se,formControl:se}}function jy(e={}){const t=P.useRef(void 0),r=P.useRef(void 0),o=P.useRef(e.formControl),[n,a]=P.useState(()=>({...ht(Hy),isLoading:gr(e.defaultValues),errors:e.errors||{},disabled:e.disabled||!1,defaultValues:gr(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&&!gr(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{const{formControl:l,...c}=jP(e);t.current={...c,formState:n}}const s=t.current.control;return s._options=e,TP(()=>{const l=s._subscribe({formState:s._proxyFormState,callback:()=>a({...s._formState,defaultValues:s._defaultValues}),reRenderRoot:!0});return a(c=>({...c,isReady:!0})),s._formState.isReady=!0,l},[s]),P.useEffect(()=>s._disableForm(e.disabled),[s,e.disabled]),P.useEffect(()=>{e.mode&&(s._options.mode=e.mode),e.reValidateMode&&(s._options.reValidateMode=e.reValidateMode)},[s,e.mode,e.reValidateMode]),P.useEffect(()=>{e.errors&&(s._setErrors(e.errors),s._focusError())},[s,e.errors]),P.useEffect(()=>{e.shouldUnregister&&s._subjects.state.next({values:s._getWatch()})},[s,e.shouldUnregister]),P.useEffect(()=>{if(s._proxyFormState.isDirty){const l=s._getDirty();l!==n.isDirty&&s._subjects.state.next({isDirty:l})}},[s,n.isDirty]),P.useEffect(()=>{var l;e.values&&!qr(e.values,r.current)?(s._reset(e.values,{keepFieldsRef:!0,...s._options.resetOptions}),!((l=s._options.resetOptions)===null||l===void 0)&&l.keepIsValid||s._setValid(),r.current=e.values,a(c=>({...c}))):s._resetDefaultValues()},[s,e.values]),P.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=P.useMemo(()=>_P(n,s),[s,n]),t.current}function qy(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 Yy(e,t){var a,s;const r=[],o=new Map,n=new Map;for(const l of t){const c=((a=l.attributes)==null?void 0:a.name)||l.id;o.set(c,l),n.set(l.id,l)}for(const[l,c]of Object.entries(e)){const d=o.get(l);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 p=qy(d);if(p==="layout"||p==="action")continue;r.push({id:l,value:c,type:d.type,category:p})}else r.push({id:l,value:c,type:"unknown",category:"field"})}return r}function Su(e,t,r="keyValue"){return r==="array"?Yy(e,t):e}function qP(e,t){var a,s;const r={},o=new Map,n=new Map;for(const l of t){const c=((a=l.attributes)==null?void 0:a.name)||l.id;o.set(c,l),n.set(l.id,l)}for(const[l,c]of Object.entries(e)){const d=o.get(l);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 p=qy(d);(p==="field"||p==="container")&&(r[l]=c)}else r[l]=c}return r}const YP=({currentPage:e,totalPages:t,pages:r,showStepNumbers:o,onPageClick:n})=>{const a=(e+1)/t*100;return i.jsxs("div",{className:m("mb-8"),children:[i.jsx("div",{className:m("h-2 bg-gray-200 rounded-full overflow-hidden"),children:i.jsx("div",{className:m("h-full bg-blue-600 transition-all duration-300 ease-out"),style:{width:`${a}%`}})}),o&&i.jsx("div",{className:m("flex justify-between mt-4"),children:r.map((s,l)=>{const c=l<e,d=l===e;return i.jsxs("button",{type:"button",onClick:()=>n==null?void 0:n(l),disabled:l>e,className:m(`flex flex-col items-center ${n&&l<=e?"cursor-pointer":"cursor-default"}`),children:[i.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?i.jsx("svg",{className:m("w-4 h-4"),fill:"currentColor",viewBox:"0 0 20 20",children:i.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"})}):l+1}),i.jsx("span",{className:m(`mt-2 text-xs font-medium ${d?"text-blue-600":"text-gray-500"}`),children:s.title})]},s.id)})})]})},QP=({page:e,pageIndex:t,totalPages:r})=>i.jsxs("div",{className:m("mb-6"),children:[i.jsxs("div",{className:m("flex items-center justify-between mb-2"),children:[i.jsx("h2",{className:m("text-xl font-semibold text-gray-900"),children:e.title}),i.jsxs("span",{className:m("text-sm text-gray-500"),children:["Step ",t+1," of ",r]})]}),e.description&&i.jsx("p",{className:m("text-gray-600"),children:e.description})]}),KP=({currentPage:e,totalPages:t,allowSkip:r,isSubmitting:o,nextButtonLabel:n,onPrevious:a,onNext:s,onSkip:l})=>{const c=e===0,d=e===t-1;return i.jsxs("div",{className:m("flex items-center justify-between mt-8 pt-6 border-t border-gray-200"),children:[i.jsx("div",{children:!c&&i.jsx("button",{type:"button",onClick:a,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"})}),i.jsxs("div",{className:m("flex gap-3"),children:[r&&!d&&i.jsx("button",{type:"button",onClick:l,className:m("px-4 py-2 text-sm font-medium text-gray-500 hover:text-gray-700"),children:"Skip"}),d?i.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"}):i.jsxs("button",{type:"button",onClick:s,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," →"]})]})]})},Qy=({element:e,elements:t})=>{const{setValue:r,watch:o,register:n,unregister:a}=yu(),s=o(),{visible:l,required:c,disabled:d}=P.useMemo(()=>Gg(e,s,t),[e,s,t]),p=e.attributes.name;if(P.useEffect(()=>{var N,k,_,E,D,T;if(p){if(!l){a(p,{keepValue:!0});return}return n(p,{required:c?((N=e.validation)==null?void 0:N.errorMessage)||"This field is required":void 0,minLength:(k=e.validation)==null?void 0:k.minLength,maxLength:(_=e.validation)==null?void 0:_.maxLength,min:(E=e.validation)==null?void 0:E.min,max:(D=e.validation)==null?void 0:D.max,pattern:XP((T=e.validation)==null?void 0:T.pattern),disabled:d||e.properties.disabled||void 0}),()=>a(p,{keepValue:!0})}},[p,l,c,d,e.validation,e.properties.disabled,n,a]),!l)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"},b=h[e.layout.size||"default"]||h.default,g=vt.get(e.type),y=(N,k)=>{const _=t.filter(E=>E.parentId===N).sort((E,D)=>E.order-D.order);return i.jsx("div",{className:m("space-y-4"),children:_.map(E=>i.jsx(Qy,{element:{...E,attributes:{...E.attributes,name:k?`${k}.${E.attributes.name}`:E.attributes.name}},elements:t},E.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:N=>r(p,N),errors:[],formValues:s,readOnly:!1,disabled:f,allElements:t,renderChildren:y},S=()=>g!=null&&g.render?g.render(v):i.jsxs("div",{className:m("p-3 bg-yellow-50 border border-yellow-200 rounded-md text-sm text-yellow-700"),children:[i.jsxs("p",{className:m("font-medium"),children:["Unknown element type: ",e.type]}),i.jsxs("p",{className:m("text-xs mt-1"),children:["This element is not registered in the element registry. Please register it using ",i.jsx("code",{children:"registerElement()"}),"."]})]});return(g==null?void 0:g.structure)==="page"&&["heading","layout","special"].includes(g.subCategory||"")||["paragraph","image","link","formHeading","sectionHeading","subheading","divider","spacer","captcha","submit"].includes(e.type)?i.jsx("div",{className:m(b,"mb-4"),children:S()}):i.jsx("div",{className:m(b,"mb-4"),children:S()})};function RP(e){var o,n,a;if(e.attributes.defaultValue!==void 0)return e.attributes.defaultValue;const t=vt.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 XP(e){if(e)try{return new RegExp(e)}catch{return}}function JP(e){const t={};return e.forEach(r=>{var o;(o=r.attributes)!=null&&o.name&&(t[r.attributes.name]=RP(r))}),t}function ZP(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(l=>l.parentId===s.id))};return o(e),r}const Nu=({schema:e,onSubmit:t,initialValues:r,onPageChange:o,submissionFormat:n="keyValue",debug:a=!1})=>{const[s,l]=P.useState(0),[c,d]=P.useState(!1),[p,u]=P.useState(null),f=P.useMemo(()=>e.elements.find(O=>O.type==="pages"),[e.elements]),h=P.useMemo(()=>{var O,$,V,G,q,H;return{showProgressBar:((O=f==null?void 0:f.config)==null?void 0:O.showProgressBar)??!0,showStepNumbers:(($=f==null?void 0:f.config)==null?void 0:$.showStepNumbers)??!0,allowSkip:((V=f==null?void 0:f.config)==null?void 0:V.allowSkip)??!1,validateOnNext:((G=f==null?void 0:f.config)==null?void 0:G.validateOnNext)??!0,nextButtonLabel:((q=f==null?void 0:f.config)==null?void 0:q.nextButtonLabel)??"Next",steps:((H=f==null?void 0:f.config)==null?void 0:H.steps)||[{id:"step1",label:"Step 1"}]}},[f]),b=P.useMemo(()=>f?h.steps.map($=>{const V=e.elements.filter(G=>{var q;return G.parentId===`${f.id}:${$.id}`||G.parentId===f.id&&((q=G.config)==null?void 0:q.wizardStepId)===$.id});return{id:$.id,title:$.label,description:$.description,elements:V.sort((G,q)=>G.order-q.order)}}):[],[f,h.steps,e.elements]),g=P.useMemo(()=>e.elements.filter(O=>O.type!=="pages"),[e.elements]),y=P.useMemo(()=>r||JP(g),[r,g]),v=jy({defaultValues:y,mode:"onChange"}),{handleSubmit:S,trigger:x}=v,w=P.useCallback(O=>{O>=0&&O<b.length&&(l(O),o==null||o(O))},[b.length,o]),N=P.useCallback(()=>{w(s-1)},[s,w]),k=P.useCallback(async()=>{if(h.validateOnNext){const O=ZP(b[s].elements,e.elements);if(!await x(O))return}w(s+1)},[s,h.validateOnNext,b,e.elements,x,w]),_=P.useCallback(()=>{w(s+1)},[s,w]),E=P.useCallback(async O=>{d(!0);try{const $=Su(O,e.elements,n);console.log("Wizard form submitted:",$),a?u($):await(t==null?void 0:t($))}catch($){console.error("Form submission error:",$)}finally{d(!1)}},[t,e.elements,n,a]),D=P.useCallback(O=>{if(s<b.length-1){O.preventDefault(),k();return}S(E)(O)},[s,b.length,k,S,E]),T=b[s];return T?i.jsxs("div",{className:m("max-w-3xl mx-auto"),children:[i.jsx($y,{...v,children:i.jsxs("form",{onSubmit:D,className:m("space-y-1"),children:[h.showProgressBar&&i.jsx(YP,{currentPage:s,totalPages:b.length,pages:b,showStepNumbers:h.showStepNumbers,onPageClick:h.allowSkip?w:void 0}),i.jsx(QP,{page:T,pageIndex:s,totalPages:b.length}),i.jsx("div",{className:m("space-y-4"),children:T.elements.map(O=>i.jsx(Qy,{element:O,elements:e.elements},O.id))}),i.jsx(KP,{currentPage:s,totalPages:b.length,allowSkip:h.allowSkip,isSubmitting:c,nextButtonLabel:h.nextButtonLabel,onPrevious:N,onNext:k,onSkip:_})]})}),a&&p&&i.jsxs("div",{className:m("mt-8 p-4 bg-green-50 border border-green-200 rounded-lg"),children:[i.jsx("h3",{className:m("text-lg font-medium text-green-800 mb-2"),children:"Submitted Data:"}),i.jsx("pre",{className:m("text-sm text-green-700 overflow-x-auto"),children:JSON.stringify(p,null,2)})]})]}):i.jsxs("div",{className:m("p-8 text-center text-gray-500"),children:[i.jsx("p",{children:"No wizard steps configured."}),i.jsx("p",{className:m("text-sm mt-2"),children:"Add steps to the wizard element to create a multi-page form."})]})};function e2(e){var o,n,a;if(e.attributes.defaultValue!==void 0)return e.attributes.defaultValue;const t=vt.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 t2(e){const t={};return e.forEach(r=>{var o;(o=r.attributes)!=null&&o.name&&(t[r.attributes.name]=e2(r))}),t}const Ky=({element:e,elements:t})=>{const{watch:r}=yu(),o=r(),{visible:n,required:a,disabled:s}=P.useMemo(()=>Gg(e,o,t),[e,o,t]);return n?i.jsx(r2,{element:e,elements:t,dynamicRequired:a,dynamicDisabled:s}):null},r2=({element:e,elements:t,dynamicRequired:r,dynamicDisabled:o})=>{const{setValue:n,watch:a}=yu(),s=e.attributes.name,l=a(s),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=vt.get(e.type),h=(S,x)=>{const w=t.filter(N=>N.parentId===S).sort((N,k)=>N.order-k.order);return i.jsx("div",{className:m("space-y-4"),children:w.map(N=>i.jsx(Ky,{element:{...N,attributes:{...N.attributes,name:x?`${x}.${N.attributes.name}`:N.attributes.name}},elements:t},N.id))})},b={element:e,properties:e.properties,layout:e.layout,validation:{...e.validation,required:d},logic:e.logic,config:e.config,mode:"render",value:l,onChange:S=>n(s,S),errors:[],formValues:a(),readOnly:!1,disabled:c,allElements:t,renderChildren:h},g=()=>f!=null&&f.render?f.render(b):i.jsxs("div",{className:m("p-3 bg-yellow-50 border border-yellow-200 rounded-md text-sm text-yellow-700"),children:[i.jsxs("p",{className:m("font-medium"),children:["Unknown element type: ",e.type]}),i.jsxs("p",{className:m("text-xs mt-1"),children:["This element is not registered in the element registry. Please register it using ",i.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)?i.jsx("div",{className:m(u,"mb-4"),children:g()}):i.jsx("div",{className:m(u,"mb-4"),children:g()})},Ry=({schema:e,onSubmit:t,initialValues:r,submissionFormat:o="keyValue",debug:n=!1})=>{const[a,s]=P.useState(null);if(P.useMemo(()=>e.elements.some(h=>h.type==="pages"),[e.elements]))return i.jsx(Nu,{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||t2(c),[r,c]),p=jy({defaultValues:d,mode:"onChange"}),u=P.useCallback(h=>{const b=Su(h,e.elements,o);console.log("Form submitted:",b),n?s(b):t==null||t(b)},[t,e.elements,o,n]),f=P.useMemo(()=>[...c].sort((h,b)=>h.order-b.order),[c]);return i.jsxs("div",{className:m("max-w-3xl mx-auto"),children:[i.jsx($y,{...p,children:i.jsxs("form",{onSubmit:p.handleSubmit(u),className:m("space-y-1"),children:[i.jsx("div",{className:m(""),children:e.description&&i.jsx("p",{className:m("mt-2 text-gray-600"),children:e.description})}),i.jsx("div",{className:m("space-y-4"),children:f.map(h=>i.jsx(Ky,{element:h,elements:e.elements},h.id))})]})}),n&&a&&i.jsxs("div",{className:m("mt-8 p-4 bg-green-50 border border-green-200 rounded-lg"),children:[i.jsx("h3",{className:m("text-lg font-medium text-green-800 mb-2"),children:"Submitted Data:"}),i.jsx("pre",{className:m("text-sm text-green-700 overflow-x-auto"),children:JSON.stringify(a,null,2)})]})]})},Xy=C.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,className:m("rounded-xl border bg-card text-card-foreground shadow",e),...t}));Xy.displayName="Card";const o2=C.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,className:m("flex flex-col space-y-1.5 p-6",e),...t}));o2.displayName="CardHeader";const n2=C.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,className:m("font-semibold leading-none tracking-tight",e),...t}));n2.displayName="CardTitle";const a2=C.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,className:m("text-sm text-muted-foreground",e),...t}));a2.displayName="CardDescription";const Jy=C.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,className:m("p-6 pt-0",e),...t}));Jy.displayName="CardContent";const s2=C.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,className:m("flex items-center p-6 pt-0",e),...t}));s2.displayName="CardFooter";const l2=Is("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"}}),Zy=C.forwardRef(({className:e,variant:t,...r},o)=>i.jsx("div",{ref:o,role:"alert",className:m(l2({variant:t}),e),...r}));Zy.displayName="Alert";const ev=C.forwardRef(({className:e,...t},r)=>i.jsx("h5",{ref:r,className:m("mb-1 font-medium leading-none tracking-tight",e),...t}));ev.displayName="AlertTitle";const tv=C.forwardRef(({className:e,...t},r)=>i.jsx("div",{ref:r,className:m("text-sm [&_p]:leading-relaxed",e),...t}));tv.displayName="AlertDescription";const i2={id:"design",label:"Design Mode",icon:N1,order:0,keyboardShortcut:"d",description:"Edit your form layout and properties",renderContent:(e,t)=>i.jsxs(i.Fragment,{children:[t==null?void 0:t.ElementSidebar,t==null?void 0:t.Canvas,t==null?void 0:t.PropertyPanel]})},c2={id:"preview",label:"Preview Mode",icon:yh,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"),l=c=>{console.log("Form submitted:",c),a==null||a(c)};return i.jsx("div",{className:m("flex-1 overflow-y-auto bg-muted/30"),children:i.jsxs("div",{className:m("py-8 px-4"),children:[i.jsx("div",{className:m("max-w-3xl mx-auto mb-6"),children:i.jsxs("div",{className:m("flex items-center justify-between"),children:[i.jsxs("div",{className:m("flex items-center gap-2 text-sm text-muted-foreground"),children:[i.jsx(yh,{className:m("h-4","w-4")}),i.jsx("span",{children:"Preview Mode"}),s&&i.jsx(vc,{variant:"secondary",children:"Wizard Form"})]}),i.jsxs(st,{variant:"ghost",size:"sm",onClick:()=>o("design"),children:[i.jsx(w1,{className:m("h-4","w-4","mr-1")}),"Back to Editor"]})]})}),i.jsx(Xy,{className:m("max-w-3xl mx-auto"),children:i.jsx(Jy,{className:m("p-8"),children:r.elements.length===0?i.jsxs("div",{className:m("text-center py-12 text-muted-foreground"),children:[i.jsx(S1,{className:m("h-12","w-12","mx-auto","mb-4","text-muted-foreground/50")}),i.jsx("p",{className:m("text-lg font-medium mb-2"),children:"No elements to preview"}),i.jsx("p",{className:m("text-sm"),children:"Switch to Design mode and add some elements to your form."})]}):s?i.jsx(Nu,{schema:r,onSubmit:l,submissionFormat:n}):i.jsx(Ry,{schema:r,onSubmit:l,submissionFormat:n})})}),r.elements.some(c=>c.logic)&&i.jsx("div",{className:m("max-w-3xl mx-auto mt-6"),children:i.jsxs(Zy,{children:[i.jsx(vh,{className:m("h-4","w-4")}),i.jsx(ev,{children:"Conditional Logic Active"}),i.jsx(tv,{children:"This form has conditional logic rules. Some fields may show/hide based on your input."})]})})]})})}};function rv(){tr.has("design")||tr.register(i2),tr.has("preview")||tr.register(c2)}rv();const ov=({initialSchema:e,onSchemaChange:t,toolbarActions:r,toolbarConfig:o,sidebarTabs:n,sidebarConfig:a,onPreviewSubmit:s,showElementSidebar:l=!0,showPropertyPanel:c=!0,submissionFormat:d="array",className:p})=>{const u=ie(w=>w.mode),f=ie(w=>w.setMode),h=ie(w=>w.schema),b=ie(w=>w.loadSchema);P.useEffect(()=>Pw(),[]),P.useEffect(()=>{e&&b(e)},[e,b]),P.useEffect(()=>{t&&t(h)},[h,t]);const g=r||o?{...o,actions:[...(o==null?void 0:o.actions)??[],...r??[]]}:void 0,y=n||a!=null&&a.tabs?[...(a==null?void 0:a.tabs)??[],...n??[]]:void 0,v=tr.get(u),S=P.useMemo(()=>({schema:h,currentMode:u,setMode:f,submissionFormat:d,onSubmit:s,showElementSidebar:l,showPropertyPanel:c,loadSchema:b}),[h,u,f,d,s,l,c,b]),x=P.useMemo(()=>({ElementSidebar:l?i.jsx(hk,{sidebarTabs:y}):void 0,Canvas:i.jsx(Ok,{toolbarConfig:g}),PropertyPanel:c?i.jsx(SP,{}):void 0}),[l,y,g,c]);return i.jsx("div",{className:m("ep-main-layout h-screen flex flex-col bg-muted/50",p),children:i.jsx("div",{className:m("flex-1 flex overflow-hidden"),children:v?v.renderContent(S,x):null})})};le.AffixInput=Si,le.CanvasElementRenderer=Ms,le.CanvasPreviewWrapper=$x,le.ElementDescription=rs,le.ElementLabel=ts,le.EmptyState=Px,le.EntryPulse=ov,le.ErrorMessages=Vn,le.FieldWrapper=Dx,le.FormElementRenderer=Nh,le.FormPreview=Ry,le.IconInput=Io,le.InputWrapper=ge,le.WizardForm=Nu,le.builtInElements=Sh,le.createSidebarTab=sm,le.createSidebarTabs=fk,le.createToolbarAction=um,le.createToolbarActions=Sk,le.default=ov,le.elementRegistry=vt,le.extractContextValues=oe,le.filterFieldData=qP,le.getButtonClassName=Mx,le.getCanvasInputClassName=Ot,le.getElementDefinition=Vw,le.getElementIcon=Eh,le.getElementLabel=yc,le.getInputClassName=qt,le.getModeDefinition=_k,le.hasElement=Gw,le.hasMode=Tk,le.isActionDisabled=fm,le.isActionHidden=Vc,le.isElementRegistered=iE,le.isSidebarTabDisabled=lm,le.isSidebarTabHidden=im,le.modeRegistry=tr,le.registerBuiltInElements=H1,le.registerBuiltinModes=rv,le.registerElement=Iw,le.registerElements=Lw,le.registerMode=Ek,le.registerModes=kk,le.renderElement=dE,le.renderElementOnCanvas=cE,le.transformSubmissionData=Su,le.transformToArrayFormat=Yy,le.unregisterElement=Fw,le.unregisterMode=Ak,le.useFormStore=ie,Object.defineProperties(le,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
|
|
203
209
|
//# sourceMappingURL=entry-pulse.umd.cjs.map
|