@kong-ui-public/forms 4.5.11 → 4.6.0
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/forms.es.js +2053 -2282
- package/dist/forms.umd.js +2 -2
- package/dist/style.css +1 -1
- package/dist/types/components/fields/FieldSelect.vue.d.ts +78 -43
- package/dist/types/components/fields/FieldSelect.vue.d.ts.map +1 -1
- package/dist/types/types/form-fields.d.ts +1 -0
- package/dist/types/types/form-fields.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/forms.umd.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
(function(F,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("@kong/icons"),require("@kong-ui-public/i18n")):typeof define=="function"&&define.amd?define(["exports","vue","@kong/icons","@kong-ui-public/i18n"],t):(F=typeof globalThis<"u"?globalThis:F||self,t(F["kong-ui-public-forms"]={},F.Vue,F.KongIcons,F["kong-ui-public-i18n"]))})(this,function(F,t,le,Pe){"use strict";function Mt(e,n){for(var o=-1,r=e==null?0:e.length;++o<r&&n(e[o],o,e)!==!1;);return e}function po(e){return function(n,o,r){for(var i=-1,a=Object(n),d=r(n),l=d.length;l--;){var s=d[++i];if(o(a[s],s,a)===!1)break}return n}}var go=po();function yo(e,n){for(var o=-1,r=Array(e);++o<e;)r[o]=n(o);return r}var Tt=typeof global=="object"&&global&&global.Object===Object&&global,bo=typeof self=="object"&&self&&self.Object===Object&&self,Z=Tt||bo||Function("return this")(),te=Z.Symbol,Vt=Object.prototype,_o=Vt.hasOwnProperty,wo=Vt.toString,Be=te?te.toStringTag:void 0;function Eo(e){var n=_o.call(e,Be),o=e[Be];try{e[Be]=void 0;var r=!0}catch{}var i=wo.call(e);return r&&(n?e[Be]=o:delete e[Be]),i}var Co=Object.prototype,ko=Co.toString;function So(e){return ko.call(e)}var Mo="[object Null]",To="[object Undefined]",Nt=te?te.toStringTag:void 0;function se(e){return e==null?e===void 0?To:Mo:Nt&&Nt in Object(e)?Eo(e):So(e)}function ne(e){return e!=null&&typeof e=="object"}var Vo="[object Arguments]";function Bt(e){return ne(e)&&se(e)==Vo}var It=Object.prototype,No=It.hasOwnProperty,Bo=It.propertyIsEnumerable,At=Bt(function(){return arguments}())?Bt:function(e){return ne(e)&&No.call(e,"callee")&&!Bo.call(e,"callee")},J=Array.isArray;function Io(){return!1}var Ot=typeof F=="object"&&F&&!F.nodeType&&F,Ft=Ot&&typeof module=="object"&&module&&!module.nodeType&&module,Ao=Ft&&Ft.exports===Ot,$t=Ao?Z.Buffer:void 0,Oo=$t?$t.isBuffer:void 0,Re=Oo||Io,Fo=9007199254740991,$o=/^(?:0|[1-9]\d*)$/;function et(e,n){var o=typeof e;return n=n??Fo,!!n&&(o=="number"||o!="symbol"&&$o.test(e))&&e>-1&&e%1==0&&e<n}var Uo=9007199254740991;function tt(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Uo}var Lo="[object Arguments]",Do="[object Array]",vo="[object Boolean]",Po="[object Date]",Ro="[object Error]",jo="[object Function]",qo="[object Map]",Ko="[object Number]",xo="[object Object]",zo="[object RegExp]",Yo="[object Set]",Ho="[object String]",Go="[object WeakMap]",Wo="[object ArrayBuffer]",Zo="[object DataView]",Jo="[object Float32Array]",Xo="[object Float64Array]",Qo="[object Int8Array]",er="[object Int16Array]",tr="[object Int32Array]",nr="[object Uint8Array]",or="[object Uint8ClampedArray]",rr="[object Uint16Array]",ar="[object Uint32Array]",L={};L[Jo]=L[Xo]=L[Qo]=L[er]=L[tr]=L[nr]=L[or]=L[rr]=L[ar]=!0,L[Lo]=L[Do]=L[Wo]=L[vo]=L[Zo]=L[Po]=L[Ro]=L[jo]=L[qo]=L[Ko]=L[xo]=L[zo]=L[Yo]=L[Ho]=L[Go]=!1;function ir(e){return ne(e)&&tt(e.length)&&!!L[se(e)]}function nt(e){return function(n){return e(n)}}var Ut=typeof F=="object"&&F&&!F.nodeType&&F,Ie=Ut&&typeof module=="object"&&module&&!module.nodeType&&module,lr=Ie&&Ie.exports===Ut,ot=lr&&Tt.process,Ce=function(){try{var e=Ie&&Ie.require&&Ie.require("util").types;return e||ot&&ot.binding&&ot.binding("util")}catch{}}(),Lt=Ce&&Ce.isTypedArray,Dt=Lt?nt(Lt):ir,sr=Object.prototype,dr=sr.hasOwnProperty;function vt(e,n){var o=J(e),r=!o&&At(e),i=!o&&!r&&Re(e),a=!o&&!r&&!i&&Dt(e),d=o||r||i||a,l=d?yo(e.length,String):[],s=l.length;for(var c in e)(n||dr.call(e,c))&&!(d&&(c=="length"||i&&(c=="offset"||c=="parent")||a&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||et(c,s)))&&l.push(c);return l}var cr=Object.prototype;function rt(e){var n=e&&e.constructor,o=typeof n=="function"&&n.prototype||cr;return e===o}function Pt(e,n){return function(o){return e(n(o))}}var mr=Pt(Object.keys,Object),fr=Object.prototype,ur=fr.hasOwnProperty;function hr(e){if(!rt(e))return mr(e);var n=[];for(var o in Object(e))ur.call(e,o)&&o!="constructor"&&n.push(o);return n}function x(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}var pr="[object AsyncFunction]",gr="[object Function]",yr="[object GeneratorFunction]",br="[object Proxy]";function D(e){if(!x(e))return!1;var n=se(e);return n==gr||n==yr||n==pr||n==br}function Ae(e){return e!=null&&tt(e.length)&&!D(e)}function ke(e){return Ae(e)?vt(e):hr(e)}function _r(e,n){return e&&go(e,n,ke)}function wr(e,n){return function(o,r){if(o==null)return o;if(!Ae(o))return e(o,r);for(var i=o.length,a=-1,d=Object(o);++a<i&&r(d[a],a,d)!==!1;);return o}}var Er=wr(_r);function je(e){return e}function Cr(e){return typeof e=="function"?e:je}function z(e,n){var o=J(e)?Mt:Er;return o(e,Cr(n))}var kr="[object Symbol]";function qe(e){return typeof e=="symbol"||ne(e)&&se(e)==kr}var Sr=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Mr=/^\w*$/;function at(e,n){if(J(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||qe(e)?!0:Mr.test(e)||!Sr.test(e)||n!=null&&e in Object(n)}var it=Z["__core-js_shared__"],Rt=function(){var e=/[^.]+$/.exec(it&&it.keys&&it.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Tr(e){return!!Rt&&Rt in e}var Vr=Function.prototype,Nr=Vr.toString;function ue(e){if(e!=null){try{return Nr.call(e)}catch{}try{return e+""}catch{}}return""}var Br=/[\\^$.*+?()[\]{}|]/g,Ir=/^\[object .+?Constructor\]$/,Ar=Function.prototype,Or=Object.prototype,Fr=Ar.toString,$r=Or.hasOwnProperty,Ur=RegExp("^"+Fr.call($r).replace(Br,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Lr(e){if(!x(e)||Tr(e))return!1;var n=D(e)?Ur:Ir;return n.test(ue(e))}function Dr(e,n){return e==null?void 0:e[n]}function he(e,n){var o=Dr(e,n);return Lr(o)?o:void 0}var Oe=he(Object,"create");function vr(){this.__data__=Oe?Oe(null):{},this.size=0}function Pr(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var Rr="__lodash_hash_undefined__",jr=Object.prototype,qr=jr.hasOwnProperty;function Kr(e){var n=this.__data__;if(Oe){var o=n[e];return o===Rr?void 0:o}return qr.call(n,e)?n[e]:void 0}var xr=Object.prototype,zr=xr.hasOwnProperty;function Yr(e){var n=this.__data__;return Oe?n[e]!==void 0:zr.call(n,e)}var Hr="__lodash_hash_undefined__";function Gr(e,n){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=Oe&&n===void 0?Hr:n,this}function pe(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}pe.prototype.clear=vr,pe.prototype.delete=Pr,pe.prototype.get=Kr,pe.prototype.has=Yr,pe.prototype.set=Gr;function Wr(){this.__data__=[],this.size=0}function Fe(e,n){return e===n||e!==e&&n!==n}function Ke(e,n){for(var o=e.length;o--;)if(Fe(e[o][0],n))return o;return-1}var Zr=Array.prototype,Jr=Zr.splice;function Xr(e){var n=this.__data__,o=Ke(n,e);if(o<0)return!1;var r=n.length-1;return o==r?n.pop():Jr.call(n,o,1),--this.size,!0}function Qr(e){var n=this.__data__,o=Ke(n,e);return o<0?void 0:n[o][1]}function ea(e){return Ke(this.__data__,e)>-1}function ta(e,n){var o=this.__data__,r=Ke(o,e);return r<0?(++this.size,o.push([e,n])):o[r][1]=n,this}function re(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}re.prototype.clear=Wr,re.prototype.delete=Xr,re.prototype.get=Qr,re.prototype.has=ea,re.prototype.set=ta;var $e=he(Z,"Map");function na(){this.size=0,this.__data__={hash:new pe,map:new($e||re),string:new pe}}function oa(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function xe(e,n){var o=e.__data__;return oa(n)?o[typeof n=="string"?"string":"hash"]:o.map}function ra(e){var n=xe(this,e).delete(e);return this.size-=n?1:0,n}function aa(e){return xe(this,e).get(e)}function ia(e){return xe(this,e).has(e)}function la(e,n){var o=xe(this,e),r=o.size;return o.set(e,n),this.size+=o.size==r?0:1,this}function ae(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}ae.prototype.clear=na,ae.prototype.delete=ra,ae.prototype.get=aa,ae.prototype.has=ia,ae.prototype.set=la;var sa="Expected a function";function lt(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(sa);var o=function(){var r=arguments,i=n?n.apply(this,r):r[0],a=o.cache;if(a.has(i))return a.get(i);var d=e.apply(this,r);return o.cache=a.set(i,d)||a,d};return o.cache=new(lt.Cache||ae),o}lt.Cache=ae;var da=500;function ca(e){var n=lt(e,function(r){return o.size===da&&o.clear(),r}),o=n.cache;return n}var ma=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,fa=/\\(\\)?/g,ua=ca(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(ma,function(o,r,i,a){n.push(i?a.replace(fa,"$1"):r||o)}),n});function ha(e,n){for(var o=-1,r=e==null?0:e.length,i=Array(r);++o<r;)i[o]=n(e[o],o,e);return i}var pa=1/0,jt=te?te.prototype:void 0,qt=jt?jt.toString:void 0;function Kt(e){if(typeof e=="string")return e;if(J(e))return ha(e,Kt)+"";if(qe(e))return qt?qt.call(e):"";var n=e+"";return n=="0"&&1/e==-pa?"-0":n}function xt(e){return e==null?"":Kt(e)}function zt(e,n){return J(e)?e:at(e,n)?[e]:ua(xt(e))}var ga=1/0;function ze(e){if(typeof e=="string"||qe(e))return e;var n=e+"";return n=="0"&&1/e==-ga?"-0":n}function Yt(e,n){n=zt(n,e);for(var o=0,r=n.length;e!=null&&o<r;)e=e[ze(n[o++])];return o&&o==r?e:void 0}function O(e,n,o){var r=e==null?void 0:Yt(e,n);return r===void 0?o:r}function R(e){return e==null}const de="kong-ui-forms-api",ge="autofill",G="autofillSlot";function ya(){this.__data__=new re,this.size=0}function ba(e){var n=this.__data__,o=n.delete(e);return this.size=n.size,o}function _a(e){return this.__data__.get(e)}function wa(e){return this.__data__.has(e)}var Ea=200;function Ca(e,n){var o=this.__data__;if(o instanceof re){var r=o.__data__;if(!$e||r.length<Ea-1)return r.push([e,n]),this.size=++o.size,this;o=this.__data__=new ae(r)}return o.set(e,n),this.size=o.size,this}function oe(e){var n=this.__data__=new re(e);this.size=n.size}oe.prototype.clear=ya,oe.prototype.delete=ba,oe.prototype.get=_a,oe.prototype.has=wa,oe.prototype.set=Ca;var Ye=function(){try{var e=he(Object,"defineProperty");return e({},"",{}),e}catch{}}();function Ht(e,n,o){n=="__proto__"&&Ye?Ye(e,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[n]=o}var ka=Object.prototype,Sa=ka.hasOwnProperty;function Gt(e,n,o){var r=e[n];(!(Sa.call(e,n)&&Fe(r,o))||o===void 0&&!(n in e))&&Ht(e,n,o)}function He(e,n,o,r){var i=!o;o||(o={});for(var a=-1,d=n.length;++a<d;){var l=n[a],s=void 0;s===void 0&&(s=e[l]),i?Ht(o,l,s):Gt(o,l,s)}return o}function Ma(e,n){return e&&He(n,ke(n),e)}function Ta(e){var n=[];if(e!=null)for(var o in Object(e))n.push(o);return n}var Va=Object.prototype,Na=Va.hasOwnProperty;function Ba(e){if(!x(e))return Ta(e);var n=rt(e),o=[];for(var r in e)r=="constructor"&&(n||!Na.call(e,r))||o.push(r);return o}function Ge(e){return Ae(e)?vt(e,!0):Ba(e)}function Ia(e,n){return e&&He(n,Ge(n),e)}var Wt=typeof F=="object"&&F&&!F.nodeType&&F,Zt=Wt&&typeof module=="object"&&module&&!module.nodeType&&module,Aa=Zt&&Zt.exports===Wt,Jt=Aa?Z.Buffer:void 0,Xt=Jt?Jt.allocUnsafe:void 0;function Oa(e,n){if(n)return e.slice();var o=e.length,r=Xt?Xt(o):new e.constructor(o);return e.copy(r),r}function Fa(e,n){var o=-1,r=e.length;for(n||(n=Array(r));++o<r;)n[o]=e[o];return n}function $a(e,n){for(var o=-1,r=e==null?0:e.length,i=0,a=[];++o<r;){var d=e[o];n(d,o,e)&&(a[i++]=d)}return a}function Qt(){return[]}var Ua=Object.prototype,La=Ua.propertyIsEnumerable,en=Object.getOwnPropertySymbols,st=en?function(e){return e==null?[]:(e=Object(e),$a(en(e),function(n){return La.call(e,n)}))}:Qt;function Da(e,n){return He(e,st(e),n)}function tn(e,n){for(var o=-1,r=n.length,i=e.length;++o<r;)e[i+o]=n[o];return e}var nn=Pt(Object.getPrototypeOf,Object),va=Object.getOwnPropertySymbols,on=va?function(e){for(var n=[];e;)tn(n,st(e)),e=nn(e);return n}:Qt;function Pa(e,n){return He(e,on(e),n)}function rn(e,n,o){var r=n(e);return J(e)?r:tn(r,o(e))}function dt(e){return rn(e,ke,st)}function Ra(e){return rn(e,Ge,on)}var ct=he(Z,"DataView"),mt=he(Z,"Promise"),Se=he(Z,"Set"),ft=he(Z,"WeakMap"),an="[object Map]",ja="[object Object]",ln="[object Promise]",sn="[object Set]",dn="[object WeakMap]",cn="[object DataView]",qa=ue(ct),Ka=ue($e),xa=ue(mt),za=ue(Se),Ya=ue(ft),ee=se;(ct&&ee(new ct(new ArrayBuffer(1)))!=cn||$e&&ee(new $e)!=an||mt&&ee(mt.resolve())!=ln||Se&&ee(new Se)!=sn||ft&&ee(new ft)!=dn)&&(ee=function(e){var n=se(e),o=n==ja?e.constructor:void 0,r=o?ue(o):"";if(r)switch(r){case qa:return cn;case Ka:return an;case xa:return ln;case za:return sn;case Ya:return dn}return n});var Ha=Object.prototype,Ga=Ha.hasOwnProperty;function Wa(e){var n=e.length,o=new e.constructor(n);return n&&typeof e[0]=="string"&&Ga.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var We=Z.Uint8Array;function ut(e){var n=new e.constructor(e.byteLength);return new We(n).set(new We(e)),n}function Za(e,n){var o=n?ut(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var Ja=/\w*$/;function Xa(e){var n=new e.constructor(e.source,Ja.exec(e));return n.lastIndex=e.lastIndex,n}var mn=te?te.prototype:void 0,fn=mn?mn.valueOf:void 0;function Qa(e){return fn?Object(fn.call(e)):{}}function ei(e,n){var o=n?ut(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var ti="[object Boolean]",ni="[object Date]",oi="[object Map]",ri="[object Number]",ai="[object RegExp]",ii="[object Set]",li="[object String]",si="[object Symbol]",di="[object ArrayBuffer]",ci="[object DataView]",mi="[object Float32Array]",fi="[object Float64Array]",ui="[object Int8Array]",hi="[object Int16Array]",pi="[object Int32Array]",gi="[object Uint8Array]",yi="[object Uint8ClampedArray]",bi="[object Uint16Array]",_i="[object Uint32Array]";function wi(e,n,o){var r=e.constructor;switch(n){case di:return ut(e);case ti:case ni:return new r(+e);case ci:return Za(e,o);case mi:case fi:case ui:case hi:case pi:case gi:case yi:case bi:case _i:return ei(e,o);case oi:return new r;case ri:case li:return new r(e);case ai:return Xa(e);case ii:return new r;case si:return Qa(e)}}var un=Object.create,Ei=function(){function e(){}return function(n){if(!x(n))return{};if(un)return un(n);e.prototype=n;var o=new e;return e.prototype=void 0,o}}();function Ci(e){return typeof e.constructor=="function"&&!rt(e)?Ei(nn(e)):{}}var ki="[object Map]";function Si(e){return ne(e)&&ee(e)==ki}var hn=Ce&&Ce.isMap,Mi=hn?nt(hn):Si,Ti="[object Set]";function Vi(e){return ne(e)&&ee(e)==Ti}var pn=Ce&&Ce.isSet,Ni=pn?nt(pn):Vi,Bi=1,Ii=2,Ai=4,gn="[object Arguments]",Oi="[object Array]",Fi="[object Boolean]",$i="[object Date]",Ui="[object Error]",yn="[object Function]",Li="[object GeneratorFunction]",Di="[object Map]",vi="[object Number]",bn="[object Object]",Pi="[object RegExp]",Ri="[object Set]",ji="[object String]",qi="[object Symbol]",Ki="[object WeakMap]",xi="[object ArrayBuffer]",zi="[object DataView]",Yi="[object Float32Array]",Hi="[object Float64Array]",Gi="[object Int8Array]",Wi="[object Int16Array]",Zi="[object Int32Array]",Ji="[object Uint8Array]",Xi="[object Uint8ClampedArray]",Qi="[object Uint16Array]",el="[object Uint32Array]",$={};$[gn]=$[Oi]=$[xi]=$[zi]=$[Fi]=$[$i]=$[Yi]=$[Hi]=$[Gi]=$[Wi]=$[Zi]=$[Di]=$[vi]=$[bn]=$[Pi]=$[Ri]=$[ji]=$[qi]=$[Ji]=$[Xi]=$[Qi]=$[el]=!0,$[Ui]=$[yn]=$[Ki]=!1;function Ue(e,n,o,r,i,a){var d,l=n&Bi,s=n&Ii,c=n&Ai;if(d!==void 0)return d;if(!x(e))return e;var m=J(e);if(m){if(d=Wa(e),!l)return Fa(e,d)}else{var f=ee(e),u=f==yn||f==Li;if(Re(e))return Oa(e,l);if(f==bn||f==gn||u&&!i){if(d=s||u?{}:Ci(e),!l)return s?Pa(e,Ia(d,e)):Da(e,Ma(d,e))}else{if(!$[f])return i?e:{};d=wi(e,f,l)}}a||(a=new oe);var C=a.get(e);if(C)return C;a.set(e,d),Ni(e)?e.forEach(function(E){d.add(Ue(E,n,o,E,e,a))}):Mi(e)&&e.forEach(function(E,w){d.set(w,Ue(E,n,o,w,e,a))});var M=c?s?Ra:dt:s?Ge:ke,g=m?void 0:M(e);return Mt(g||e,function(E,w){g&&(w=E,E=e[w]),Gt(d,w,Ue(E,n,o,w,e,a))}),d}var tl=1,nl=4;function ie(e){return Ue(e,tl|nl)}const ht=(e,n="")=>typeof e.id<"u"?n+e.id:n+(e.inputName||e.label||e.model||"").toString().trim().toLowerCase().replace(/ |_/g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"").replace(/([^a-zA-Z0-9-]+)/g,""),_n=(e="")=>e.toString().trim().replace(/ /g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"").replace(/([^a-zA-Z0-9-_/./:]+)/g,"");var ol="[object String]";function ye(e){return typeof e=="string"||!J(e)&&ne(e)&&se(e)==ol}const wn={methods:{getFieldRowClasses(e){const n=this.fieldErrors(e).length>0,o={[O(this.options,"validationErrorClass","error")]:n,[O(this.options,"validationSuccessClass","valid")]:!n,disabled:this.fieldDisabled(e),readonly:this.fieldReadonly(e),featured:this.fieldFeatured(e),required:this.fieldRequired(e)};return Array.isArray(e.styleClasses)?z(e.styleClasses,r=>o[r]=!0):ye(e.styleClasses)&&(o[e.styleClasses]=!0),R(e.type)||(o["field-"+e.type]=!0),o},fieldErrors(e){return this.errors.filter(o=>o.field.fieldName===e.fieldName).map(o=>o.error)},fieldDisabled(e){return D(e.disabled)?e.disabled.call(this,this.model,e,this):R(e.disabled)?!1:e.disabled},fieldReadonly(e){return D(e.readonly)?e.readonly.call(this,this.model,e,this):R(e.readonly)?!1:e.readonly},fieldFeatured(e){return D(e.featured)?e.featured.call(this,this.model,e,this):R(e.featured)?!1:e.featured},fieldRequired(e){return D(e.required)?e.required.call(this,this.model,e,this):R(e.required)?!1:e.required}}};var pt=function(){return Z.Date.now()},rl=/\s/;function al(e){for(var n=e.length;n--&&rl.test(e.charAt(n)););return n}var il=/^\s+/;function ll(e){return e&&e.slice(0,al(e)+1).replace(il,"")}var En=NaN,sl=/^[-+]0x[0-9a-f]+$/i,dl=/^0b[01]+$/i,cl=/^0o[0-7]+$/i,ml=parseInt;function gt(e){if(typeof e=="number")return e;if(qe(e))return En;if(x(e)){var n=typeof e.valueOf=="function"?e.valueOf():e;e=x(n)?n+"":n}if(typeof e!="string")return e===0?e:+e;e=ll(e);var o=dl.test(e);return o||cl.test(e)?ml(e.slice(2),o?2:8):sl.test(e)?En:+e}var fl="Expected a function",ul=Math.max,hl=Math.min;function Le(e,n,o){var r,i,a,d,l,s,c=0,m=!1,f=!1,u=!0;if(typeof e!="function")throw new TypeError(fl);n=gt(n)||0,x(o)&&(m=!!o.leading,f="maxWait"in o,a=f?ul(gt(o.maxWait)||0,n):a,u="trailing"in o?!!o.trailing:u);function C(h){var b=r,V=i;return r=i=void 0,c=h,d=e.apply(V,b),d}function M(h){return c=h,l=setTimeout(w,n),m?C(h):d}function g(h){var b=h-s,V=h-c,I=n-b;return f?hl(I,a-V):I}function E(h){var b=h-s,V=h-c;return s===void 0||b>=n||b<0||f&&V>=a}function w(){var h=pt();if(E(h))return N(h);l=setTimeout(w,g(h))}function N(h){return l=void 0,u&&r?C(h):(r=i=void 0,d)}function _(){l!==void 0&&clearTimeout(l),c=0,r=s=i=l=void 0}function T(){return l===void 0?d:N(pt())}function B(){var h=pt(),b=E(h);if(r=arguments,i=this,s=h,b){if(l===void 0)return M(s);if(f)return clearTimeout(l),l=setTimeout(w,n),C(s)}return l===void 0&&(l=setTimeout(w,n)),d}return B.cancel=_,B.flush=T,B}var pl="__lodash_hash_undefined__";function gl(e){return this.__data__.set(e,pl),this}function yl(e){return this.__data__.has(e)}function De(e){var n=-1,o=e==null?0:e.length;for(this.__data__=new ae;++n<o;)this.add(e[n])}De.prototype.add=De.prototype.push=gl,De.prototype.has=yl;function Cn(e,n,o,r){for(var i=e.length,a=o+-1;++a<i;)if(n(e[a],a,e))return a;return-1}function bl(e){return e!==e}function _l(e,n,o){for(var r=o-1,i=e.length;++r<i;)if(e[r]===n)return r;return-1}function wl(e,n,o){return n===n?_l(e,n,o):Cn(e,bl,o)}function El(e,n){var o=e==null?0:e.length;return!!o&&wl(e,n,0)>-1}function kn(e,n){return e.has(n)}function Cl(){}function yt(e){var n=-1,o=Array(e.size);return e.forEach(function(r){o[++n]=r}),o}var kl=1/0,Sl=Se&&1/yt(new Se([,-0]))[1]==kl?function(e){return new Se(e)}:Cl,Ml=200;function Tl(e,n,o){var r=-1,i=El,a=e.length,d=!0,l=[],s=l;if(a>=Ml){var c=Sl(e);if(c)return yt(c);d=!1,i=kn,s=new De}else s=l;e:for(;++r<a;){var m=e[r],f=m;if(m=m!==0?m:0,d&&f===f){for(var u=s.length;u--;)if(s[u]===f)continue e;l.push(m)}else i(s,f,o)||(s!==l&&s.push(f),l.push(m))}return l}function Sn(e){return e&&e.length?Tl(e):[]}var Vl=0;function Mn(e){var n=++Vl;return xt(e)+n}function Nl(e,n,o){switch(o.length){case 0:return e.call(n);case 1:return e.call(n,o[0]);case 2:return e.call(n,o[0],o[1]);case 3:return e.call(n,o[0],o[1],o[2])}return e.apply(n,o)}var Tn=Math.max;function Bl(e,n,o){return n=Tn(n===void 0?e.length-1:n,0),function(){for(var r=arguments,i=-1,a=Tn(r.length-n,0),d=Array(a);++i<a;)d[i]=r[n+i];i=-1;for(var l=Array(n+1);++i<n;)l[i]=r[i];return l[n]=o(d),Nl(e,this,l)}}function Il(e){return function(){return e}}var Al=Ye?function(e,n){return Ye(e,"toString",{configurable:!0,enumerable:!1,value:Il(n),writable:!0})}:je,Ol=800,Fl=16,$l=Date.now;function Ul(e){var n=0,o=0;return function(){var r=$l(),i=Fl-(r-o);if(o=r,i>0){if(++n>=Ol)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}var Ll=Ul(Al);function Dl(e,n){return Ll(Bl(e,n,je),e+"")}function vl(e,n,o){if(!x(o))return!1;var r=typeof n;return(r=="number"?Ae(o)&&et(n,o.length):r=="string"&&n in o)?Fe(o[n],e):!1}var Vn=Object.prototype,Pl=Vn.hasOwnProperty,Rl=Dl(function(e,n){e=Object(e);var o=-1,r=n.length,i=r>2?n[2]:void 0;for(i&&vl(n[0],n[1],i)&&(r=1);++o<r;)for(var a=n[o],d=Ge(a),l=-1,s=d.length;++l<s;){var c=d[l],m=e[c];(m===void 0||Fe(m,Vn[c])&&!Pl.call(e,c))&&(e[c]=a[c])}return e}),jl=Z.isFinite;function ql(e){return typeof e=="number"&&jl(e)}var Nn=1/0,Kl=17976931348623157e292;function xl(e){if(!e)return e===0?e:0;if(e=gt(e),e===Nn||e===-Nn){var n=e<0?-1:1;return n*Kl}return e===e?e:0}function Bn(e){var n=xl(e),o=n%1;return n===n?o?n-o:n:0}function zl(e){return typeof e=="number"&&e==Bn(e)}var Yl="[object Number]";function bt(e){return typeof e=="number"||ne(e)&&se(e)==Yl}var In=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,ce="\\d\\d?",me="\\d\\d",Hl="\\d{3}",Gl="\\d{4}",ve="[^\\s]+",An=/\[([^]*?)\]/gm;function On(e,n){for(var o=[],r=0,i=e.length;r<i;r++)o.push(e[r].substr(0,n));return o}var Fn=function(e){return function(n,o){var r=o[e].map(function(a){return a.toLowerCase()}),i=r.indexOf(n.toLowerCase());return i>-1?i:null}};function be(e){for(var n=[],o=1;o<arguments.length;o++)n[o-1]=arguments[o];for(var r=0,i=n;r<i.length;r++){var a=i[r];for(var d in a)e[d]=a[d]}return e}var $n=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],Un=["January","February","March","April","May","June","July","August","September","October","November","December"],Wl=On(Un,3),Zl=On($n,3),Ln={dayNamesShort:Zl,dayNames:$n,monthNamesShort:Wl,monthNames:Un,amPm:["am","pm"],DoFn:function(e){return e+["th","st","nd","rd"][e%10>3?0:(e-e%10!==10?1:0)*e%10]}},Ze=be({},Ln),Jl=function(e){return Ze=be(Ze,e)},Dn=function(e){return e.replace(/[|\\{()[^$+*?.-]/g,"\\$&")},H=function(e,n){for(n===void 0&&(n=2),e=String(e);e.length<n;)e="0"+e;return e},Xl={D:function(e){return String(e.getDate())},DD:function(e){return H(e.getDate())},Do:function(e,n){return n.DoFn(e.getDate())},d:function(e){return String(e.getDay())},dd:function(e){return H(e.getDay())},ddd:function(e,n){return n.dayNamesShort[e.getDay()]},dddd:function(e,n){return n.dayNames[e.getDay()]},M:function(e){return String(e.getMonth()+1)},MM:function(e){return H(e.getMonth()+1)},MMM:function(e,n){return n.monthNamesShort[e.getMonth()]},MMMM:function(e,n){return n.monthNames[e.getMonth()]},YY:function(e){return H(String(e.getFullYear()),4).substr(2)},YYYY:function(e){return H(e.getFullYear(),4)},h:function(e){return String(e.getHours()%12||12)},hh:function(e){return H(e.getHours()%12||12)},H:function(e){return String(e.getHours())},HH:function(e){return H(e.getHours())},m:function(e){return String(e.getMinutes())},mm:function(e){return H(e.getMinutes())},s:function(e){return String(e.getSeconds())},ss:function(e){return H(e.getSeconds())},S:function(e){return String(Math.round(e.getMilliseconds()/100))},SS:function(e){return H(Math.round(e.getMilliseconds()/10),2)},SSS:function(e){return H(e.getMilliseconds(),3)},a:function(e,n){return e.getHours()<12?n.amPm[0]:n.amPm[1]},A:function(e,n){return e.getHours()<12?n.amPm[0].toUpperCase():n.amPm[1].toUpperCase()},ZZ:function(e){var n=e.getTimezoneOffset();return(n>0?"-":"+")+H(Math.floor(Math.abs(n)/60)*100+Math.abs(n)%60,4)},Z:function(e){var n=e.getTimezoneOffset();return(n>0?"-":"+")+H(Math.floor(Math.abs(n)/60),2)+":"+H(Math.abs(n)%60,2)}},vn=function(e){return+e-1},Pn=[null,ce],Rn=[null,ve],jn=["isPm",ve,function(e,n){var o=e.toLowerCase();return o===n.amPm[0]?0:o===n.amPm[1]?1:null}],qn=["timezoneOffset","[^\\s]*?[\\+\\-]\\d\\d:?\\d\\d|[^\\s]*?Z?",function(e){var n=(e+"").match(/([+-]|\d\d)/gi);if(n){var o=+n[1]*60+parseInt(n[2],10);return n[0]==="+"?o:-o}return 0}],Ql={D:["day",ce],DD:["day",me],Do:["day",ce+ve,function(e){return parseInt(e,10)}],M:["month",ce,vn],MM:["month",me,vn],YY:["year",me,function(e){var n=new Date,o=+(""+n.getFullYear()).substr(0,2);return+(""+(+e>68?o-1:o)+e)}],h:["hour",ce,void 0,"isPm"],hh:["hour",me,void 0,"isPm"],H:["hour",ce],HH:["hour",me],m:["minute",ce],mm:["minute",me],s:["second",ce],ss:["second",me],YYYY:["year",Gl],S:["millisecond","\\d",function(e){return+e*100}],SS:["millisecond",me,function(e){return+e*10}],SSS:["millisecond",Hl],d:Pn,dd:Pn,ddd:Rn,dddd:Rn,MMM:["month",ve,Fn("monthNamesShort")],MMMM:["month",ve,Fn("monthNames")],a:jn,A:jn,ZZ:qn,Z:qn},Je={default:"ddd MMM DD YYYY HH:mm:ss",shortDate:"M/D/YY",mediumDate:"MMM D, YYYY",longDate:"MMMM D, YYYY",fullDate:"dddd, MMMM D, YYYY",isoDate:"YYYY-MM-DD",isoDateTime:"YYYY-MM-DDTHH:mm:ssZ",shortTime:"HH:mm",mediumTime:"HH:mm:ss",longTime:"HH:mm:ss.SSS"},es=function(e){return be(Je,e)},ts=function(e,n,o){if(n===void 0&&(n=Je.default),o===void 0&&(o={}),typeof e=="number"&&(e=new Date(e)),Object.prototype.toString.call(e)!=="[object Date]"||isNaN(e.getTime()))throw new Error("Invalid Date pass to format");n=Je[n]||n;var r=[];n=n.replace(An,function(a,d){return r.push(d),"@@@"});var i=be(be({},Ze),o);return n=n.replace(In,function(a){return Xl[a](e,i)}),n.replace(/@@@/g,function(){return r.shift()})};function ns(e,n,o){if(o===void 0&&(o={}),typeof n!="string")throw new Error("Invalid format in fecha parse");if(n=Je[n]||n,e.length>1e3)return null;var r=new Date,i={year:r.getFullYear(),month:0,day:1,hour:0,minute:0,second:0,millisecond:0,isPm:null,timezoneOffset:null},a=[],d=[],l=n.replace(An,function(T,B){return d.push(Dn(B)),"@@@"}),s={},c={};l=Dn(l).replace(In,function(T){var B=Ql[T],h=B[0],b=B[1],V=B[3];if(s[h])throw new Error("Invalid format. "+h+" specified twice in format");return s[h]=!0,V&&(c[V]=!0),a.push(B),"("+b+")"}),Object.keys(c).forEach(function(T){if(!s[T])throw new Error("Invalid format. "+T+" is required in specified format")}),l=l.replace(/@@@/g,function(){return d.shift()});var m=e.match(new RegExp(l,"i"));if(!m)return null;for(var f=be(be({},Ze),o),u=1;u<m.length;u++){var C=a[u-1],M=C[0],g=C[2],E=g?g(m[u],f):+m[u];if(E==null)return null;i[M]=E}i.isPm===1&&i.hour!=null&&+i.hour!=12?i.hour=+i.hour+12:i.isPm===0&&+i.hour==12&&(i.hour=0);var w;if(i.timezoneOffset==null){w=new Date(i.year,i.month,i.day,i.hour,i.minute,i.second,i.millisecond);for(var N=[["month","getMonth"],["day","getDate"],["hour","getHours"],["minute","getMinutes"],["second","getSeconds"]],u=0,_=N.length;u<_;u++)if(s[N[u][0]]&&i[N[u][0]]!==w[N[u][1]]())return null}else if(w=new Date(Date.UTC(i.year,i.month,i.day,i.hour,i.minute-i.timezoneOffset,i.second,i.millisecond)),i.month>11||i.month<0||i.day>31||i.day<1||i.hour>23||i.hour<0||i.minute>59||i.minute<0||i.second>59||i.second<0)return null;return w}var Me={format:ts,parse:ns,defaultI18n:Ln,setGlobalDateI18n:Jl,setGlobalDateMasks:es};const K={fieldIsRequired:"This field is required!",invalidFormat:"Invalid format!",numberTooSmall:"The number is too small! Minimum: {0}",numberTooBig:"The number is too big! Maximum: {0}",invalidNumber:"Invalid number",invalidInteger:"The value is not an integer",textTooSmall:"The length of text is too small! Current: {0}, Minimum: {1}",textTooBig:"The length of text is too big! Current: {0}, Maximum: {1}",thisNotText:"This is not a text!",thisNotArray:"This is not an array!",selectMinItems:"Select minimum {0} items!",selectMaxItems:"Select maximum {0} items!",invalidDate:"Invalid date!",dateIsEarly:"The date is too early! Current: {0}, Minimum: {1}",dateIsLate:"The date is too late! Current: {0}, Maximum: {1}",invalidEmail:"Invalid e-mail address!",invalidURL:"Invalid URL!",invalidCard:"Invalid card format!",invalidCardNumber:"Invalid card number!",invalidTextContainNumber:"Invalid text! Cannot contains numbers or special characters",invalidTextContainSpec:"Invalid text! Cannot contains special characters"};function X(e,n,o=K){return R(e)||e===""?n?[P(o.fieldIsRequired)]:[]:null}function P(e,...n){if(e!=null&&n.length>0)for(let o=0;o<n.length;o++)e=e.replace("{"+(o-1)+"}",n[o]);return e}const _e={resources:K,required(e,n,o,r=K){return X(e,n.required,r)},number(e,n,o,r=K){const i=X(e,n.required,r);if(i!=null)return i;const a=[];return ql(e)?(!R(n.min)&&e<n.min&&a.push(P(r.numberTooSmall,n.min)),!R(n.max)&&e>n.max&&a.push(P(r.numberTooBig,n.max))):a.push(P(r.invalidNumber)),a},integer(e,n,o,r=K){const i=X(e,n.required,r);if(i!=null)return i;const a=_e.number(e,n,o,r);return zl(e)||a.push(P(r.invalidInteger)),a},double(e,n,o,r=K){const i=X(e,n.required,r);if(i!=null)return i;if(!bt(e)||isNaN(e))return[P(r.invalidNumber)]},string(e,n,o,r=K){const i=X(e,n.required,r);if(i!=null)return i;const a=[];return ye(e)?(!R(n.min)&&e.length<n.min&&a.push(P(r.textTooSmall,e.length,n.min)),!R(n.max)&&e.length>n.max&&a.push(P(r.textTooBig,e.length,n.max))):a.push(P(r.thisNotText)),a},array(e,n,o,r=K){if(n.required){if(!Array.isArray(e))return[P(r.thisNotArray)];if(e.length===0)return[P(r.fieldIsRequired)]}if(!R(e)){if(!R(n.min)&&e.length<n.min)return[P(r.selectMinItems,n.min)];if(!R(n.max)&&e.length>n.max)return[P(r.selectMaxItems,n.max)]}},date(e,n,o,r=K){const i=X(e,n.required,r);if(i!=null)return i;const a=new Date(e);if(isNaN(a.getDate()))return[P(r.invalidDate)];const d=[];if(!R(n.min)){const l=new Date(n.min);a.valueOf()<l.valueOf()&&d.push(P(r.dateIsEarly,Me.format(a),Me.format(l)))}if(!R(n.max)){const l=new Date(n.max);a.valueOf()>l.valueOf()&&d.push(P(r.dateIsLate,Me.format(a),Me.format(l)))}return d},regexp(e,n,o,r=K){const i=X(e,n.required,r);if(i!=null)return i;if(!R(n.pattern)&&!new RegExp(n.pattern).test(e))return[P(r.invalidFormat)]},email(e,n,o,r=K){const i=X(e,n.required,r);if(i!=null)return i;if(!/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e))return[P(r.invalidEmail)]},url(e,n,o,r=K){const i=X(e,n.required,r);if(i!=null)return i;if(!/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,4}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g.test(e))return[P(r.invalidURL)]},creditCard(e,n,o,r=K){const i=X(e,n.required,r);if(i!=null)return i;const a=/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})$/,d=e.replace(/[^0-9]+/g,"");if(!a.test(d))return[P(r.invalidCard)];let l=0,s,c,m;for(let f=d.length-1;f>=0;f--)s=d.substring(f,f+1),c=parseInt(s,10),m?(c*=2,c>=10?l+=c%10+1:l+=c):l+=c,m=!m;if(!(l%10===0&&d))return[P(r.invalidCardNumber)]},alpha(e,n,o,r=K){const i=X(e,n.required,r);if(i!=null)return i;if(!/^[a-zA-Z]*$/.test(e))return[P(r.invalidTextContainNumber)]},alphaNumeric(e,n,o,r=K){const i=X(e,n.required,r);if(i!=null)return i;if(!/^[a-zA-Z0-9]*$/.test(e))return[P(r.invalidTextContainSpec)]}};Object.keys(_e).forEach(e=>{const n=_e[e];D(n)&&(n.locale=o=>(r,i,a)=>n(r,i,a,Rl(o,K)))});function Kn(e){return ye(e)?_e[e]!=null?_e[e]:(console.warn(`'${e}' is not a validator function!`),null):e}function _t(e,n,o){let r=O(o.context,"schema.attributes",{});const i=n.value||"input";ye(i)&&(r=O(r,i)||r),z(r,(a,d)=>{e.setAttribute(d,a)})}const Q={name:"abstractField",props:["vfg","model","schema","formOptions","disabled"],emits:["validated","modelUpdated"],data(){return{errors:[],debouncedValidateFunc:null,debouncedFormatFunc:null}},directives:{attributes:{beforeMount:_t,updated:_t,componentUpdated:_t}},computed:{value:{cache:!1,get(){let e;return D(O(this.schema,"get"))?e=this.schema.get(this.model):e=O(this.model,this.schema.model),this.formatValueToField(e)},set(e){const n=this.value;e=this.formatValueToModel(e),D(e)?e(e,n):this.updateModelValue(e,n)}}},methods:{validate(e){this.clearValidationErrors();const n=O(this.formOptions,"validateAsync",!1);let o=[];if(this.schema.validator&&this.schema.readonly!==!0&&this.disabled!==!0){const i=[];Array.isArray(this.schema.validator)?z(this.schema.validator,a=>{i.push(Kn(a).bind(this))}):i.push(Kn(this.schema.validator).bind(this)),z(i,a=>{if(n)o.push(a(this.value,this.schema,this.model));else{const d=a(this.value,this.schema,this.model);d&&D(d.then)?d.then(l=>{l&&(this.errors=this.errors.concat(l));const s=this.errors.length===0;this.$emit("validated",s,this.errors,this)}):d&&(o=o.concat(d))}})}const r=i=>{let a=[];z(Sn(i),l=>{Array.isArray(l)&&l.length>0?a=a.concat(l):ye(l)&&a.push(l)}),D(this.schema.onValidated)&&this.schema.onValidated.call(this,this.model,a,this.schema);const d=a.length===0;return e||this.$emit("validated",d,a,this),this.errors=a,a};return n?Promise.all(o).then(r):r(o)},debouncedValidate(){D(this.debouncedValidateFunc)||(this.debouncedValidateFunc=Le(this.validate.bind(this),O(this.schema,"validateDebounceTime",O(this.formOptions,"validateDebounceTime",500)))),this.debouncedValidateFunc()},updateModelValue(e,n){let o=!1;D(this.schema.set)?(this.schema.set(this.model,e),o=!0):this.schema.model&&(this.setModelValueByPath(this.schema.model,e),o=!0),o&&(this.$emit("modelUpdated",e,this.schema.model),D(this.schema.onChanged)&&this.schema.onChanged.call(this,this.model,e,n,this.schema),O(this.formOptions,"validateAfterChanged",!1)===!0&&(O(this.schema,"validateDebounceTime",O(this.formOptions,"validateDebounceTime",0))>0?this.debouncedValidate():this.validate()))},clearValidationErrors(){this.errors.splice(0)},setModelValueByPath(e,n){let o=e.replace(/\[(\w+)\]/g,".$1");o=o.replace(/^\./,"");let r=this.model;const i=o.split(".");let a=0;const d=i.length;for(;a<d;){const l=i[a];if(a<d-1)r[l]!==void 0||(r[l]={}),r=r[l];else{r[l]=n;return}++a}},getFieldID(e,n=!1){const o=O(this.formOptions,"fieldIdPrefix","");return ht(e,o)+(n?"-"+Mn():"")},getLabelId(e){return`${this.getFieldID(e)}-label`},getFieldClasses(){return O(this.schema,"fieldClasses",[])},formatValueToField(e){return e},formatValueToModel(e){return e}}},os=Object.freeze(Object.defineProperty({__proto__:null,default:Q},Symbol.toStringTag,{value:"Module"})),U=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},rs={mixins:[Q],emits:["model-updated"],data(){return{isOpen:!1}},computed:{openClass(){return this.isOpen?"open":"closed"},fieldCount(){return this.schema.fields.length},titleText(){return`${this.isOpen?"Hide":"View"} ${this.fieldCount} Advanced Fields`}},methods:{handleOpen(){this.isOpen=!this.isOpen},updateModel(e,n){this.$emit("model-updated",e,n)}}},as={class:"advanced-field-dropdown-wrapper","data-testid":"advanced-field-dropdown-wrapper"},is={class:"material-icons"};function ls(e,n,o,r,i,a){const d=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",as,[t.createElementVNode("button",{class:"advanced-field-title",type:"button",onClick:n[0]||(n[0]=(...l)=>a.handleOpen&&a.handleOpen(...l))},[t.createElementVNode("i",is,t.toDisplayString(i.isOpen?"keyboard_arrow_up":"keyboard_arrow_right"),1),t.createElementVNode("span",null,t.toDisplayString(a.titleText),1)]),t.createElementVNode("div",{class:t.normalizeClass(["advanced-field-dropdown",a.openClass])},[t.createVNode(d,{model:e.model,options:{helpAsHtml:!0},schema:e.schema,onModelUpdated:a.updateModel},null,8,["model","schema","onModelUpdated"])],2)])}const ss=U(rs,[["render",ls],["__scopeId","data-v-6f4089bd"]]),ds={class:"array-card-container"},xn=U(t.defineComponent({__name:"FieldArrayCardContainer",props:{model:{type:Object,default:()=>null},schema:{type:Object,default:()=>null},index:{type:Number,default:void 0}},emits:["remove-item"],setup(e){const n=e;return t.provide("vfg-array-item-index",n.index),(o,r)=>{const i=t.resolveComponent("KCard"),a=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",ds,[t.createVNode(i,{class:"card"},{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default",{},void 0,!0)]),_:3}),t.createVNode(a,{appearance:"tertiary",class:"array-card-remove-button",onClick:r[0]||(r[0]=d=>o.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(t.unref(le.TrashIcon))]),_:1})])}}}),[["__scopeId","data-v-96055692"]]),cs={class:"array-item-wrapper"},ms={class:"array-item"},fs={class:"array-item-after"},zn=U(t.defineComponent({__name:"FieldArrayItem",props:{model:{type:String,default:""}},emits:["remove-item"],setup(e){return(n,o)=>{const r=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",cs,[t.createElementVNode("div",ms,[t.renderSlot(n.$slots,"default",{},void 0,!0),t.createVNode(r,{appearance:"tertiary",class:"delete",onClick:o[0]||(o[0]=i=>n.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(t.unref(le.TrashIcon))]),_:1})]),t.createElementVNode("div",fs,[t.renderSlot(n.$slots,"after",{},void 0,!0)])])}}}),[["__scopeId","data-v-eb9975cc"]]),us=e=>(t.pushScopeId("data-v-37458a0a"),e=e(),t.popScopeId(),e),hs={class:"multi-item-wrapper"},ps=us(()=>t.createElementVNode("hr",null,null,-1)),Yn=U(t.defineComponent({__name:"FieldArrayMultiItem",emits:["remove-item"],setup(e){return(n,o)=>{const r=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",hs,[t.renderSlot(n.$slots,"default",{},void 0,!0),t.createVNode(r,{appearance:"danger",class:"delete",onClick:o[0]||(o[0]=i=>n.$emit("remove-item"))},{default:t.withCtx(()=>[t.createTextVNode(" - Remove Field ")]),_:1}),ps])}}}),[["__scopeId","data-v-37458a0a"]]),gs="[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}";function ys(e){return e?e.length===36&&new RegExp(`^${gs}$`).test(e):!1}const wt=50,we={CREATE_NOT_FROM_ENTITY:"CREATE_NOT_FROM_ENTITY",CREATE_FROM_ENTITY:"CREATE_FROM_ENTITY",UPDATE_ENTITY:"UPDATE_ENTITY",SET_REFERRAL_VALUE:"SET_REFERRAL_VALUE"};function bs(e,n,o){return o?we.SET_REFERRAL_VALUE:e&&!n||!e&&n?we.UPDATE_ENTITY:e&&n?we.CREATE_FROM_ENTITY:we.CREATE_NOT_FROM_ENTITY}const _s={mixins:[Q],inject:[de],emits:["model-updated"],data(){return{suggestions:[],idValue:"",message:"Type something to search",items:[],initialItems:[],loading:!1}},computed:{fieldState(){return bs(this.model[this.schema.model],this.associatedEntity||this.entityId,this.bypassSearch)},associatedEntity(){return this.$route&&this.$route.params[this.entity]},entity(){return this.schema.entity},bypassSearch(){return this.$route&&this.$route.query&&this.$route.query.no_search}},async created(){await this.$nextTick();let e,n;switch(this.fieldState){case we.UPDATE_ENTITY:if(!this[de]){console.warn("[@kong-ui-public/forms] No API service provided");break}n=(await this[de].getOne(this.entity,this.model[this.schema.model])).data,e=this.getItem(this.schema.entityDataKey?n[this.schema.entityDataKey]:n),this.idValue=e.id;break;case we.CREATE_FROM_ENTITY:this.idValue=this.associatedEntity.id;break;case we.SET_REFERRAL_VALUE:this.idValue=this.value}try{e&&(this.initialItems=[{...e,label:this.getSuggestionLabel(e),value:e.id}]),this.items=this.initialItems}catch(o){this.message=`There was an error loading ${this.schema.entity}`,console.error("err!",o)}},methods:{onQueryChange(e){e.trim().length===0&&(this.items=[],this.message="Type something to search"),typeof this.performSearch!="function"&&(this.performSearch=Le(this.search,500)),this.performSearch(e)},async search(e){if(e.trim().length===0)return;this.loading=!0;const n=[],o=[],r=this.getInputFields(),i=new Set;ys(e)&&r.includes("id")?o.push((async()=>{const a=await this.fetchExact(e);n.push({...a,label:this.getSuggestionLabel(a),value:a.id})})()):o.push(...r.filter(a=>a!=="id").map(async a=>{(await this.fetchSuggestions(e,a)).forEach(l=>{i.has(l.id)||(i.add(l.id),n.push({...l,label:this.getSuggestionLabel(l),value:l.id}))})})),await Promise.all(o),this.items=n,this.items.length===0&&(this.message="No results"),this.loading=!1},getItem(e){return e.data?e.data.length>0?e.data[0]:[]:e},async fetchUntilLimit(e){const n=[];let o=null;if(!this[de])return console.warn("[@kong-ui-public/forms] No API service provided"),[];for(;n.length<wt;){const r=await this[de].getAll(this.entity,{size:wt,offset:o,...e});if(n.push(...r.data.data),o=r.data.offset,!o)break}return n.slice(0,wt)},async fetchSuggestions(e,n){return this.fetchUntilLimit({[n]:e})},async fetchExact(e){return this[de]?(await this[de].getOne(this.entity,e)).data:(console.warn("[@kong-ui-public/forms] No API service provided"),{})},getInputFields(){var e,n;return((n=(e=this.schema)==null?void 0:e.inputValues)==null?void 0:n.fields)||[]},getSuggestionLabel(e){const n=this.getInputFields();return n.length&&e?n.map(o=>e[o]).filter(Boolean).join(" - "):""},updateModel(e){this.$emit("model-updated",e!=null&&e.length?e:null,this.schema.model)},onSelected(e){this.idValue=e&&e.id,this.updateModel(this.getReturnValue(e||{}))},getReturnValue(e){var o;const n=(o=this.schema)==null?void 0:o.returnKey;return n?e[n]:e.id}}},ws={class:"field-wrap autosuggest"},Es=["data-testid","data-testlabel"],Cs=["data-testid"],ks={class:"autosuggest__results_message"};function Ss(e,n,o,r,i,a){const d=t.resolveComponent("KSelect");return t.openBlock(),t.createElementBlock("div",ws,[t.createVNode(d,{id:e.schema.model,ref:"suggestion",modelValue:i.idValue,"onUpdate:modelValue":n[0]||(n[0]=l=>i.idValue=l),clearable:"","enable-filtering":"","filter-function":()=>!0,items:i.items,loading:i.loading,placeholder:e.schema.placeholder,width:"100%",onChange:a.onSelected,onQueryChange:a.onQueryChange},{"item-template":t.withCtx(({item:l})=>[t.createElementVNode("span",{class:"first-part","data-testid":l.id&&`${l.id}-0`,"data-testlabel":l.label},t.toDisplayString(a.getSuggestionLabel(l).split(" - ")[0]),9,Es),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.getSuggestionLabel(l).split(" - ").slice(1),(s,c)=>(t.openBlock(),t.createElementBlock("span",{key:c,class:"field-span","data-testid":l.id&&`${l.id}-${c+1}`||c+1},t.toDisplayString(s),9,Cs))),128))]),empty:t.withCtx(()=>[t.createElementVNode("div",ks,[t.createElementVNode("span",null,t.toDisplayString(i.message),1)])]),_:1},8,["id","modelValue","items","loading","placeholder","onChange","onQueryChange"])])}const Hn=U(_s,[["render",Ss],["__scopeId","data-v-dd2fda9e"]]);function Ms(e){const n=t.ref([]),o=t.ref(null),r=g=>ye(g)?_e[g]!=null?_e[g]:(console.warn(`'${g}' is not a validator function!`),null):g,i=t.computed({get(){var E,w;let g;return D(O(e.schema,"get"))?g=e.schema.get((E=e.model)==null?void 0:E.value):g=O((w=e.model)==null?void 0:w.value,e.schema.model),C(g)},set(g){const E=i;g=M(g),D(g)?g(g,E):l(g,E)}}),a=g=>{var T;s();const E=(T=e.schema)==null?void 0:T.validator,w=O(e.formOptions,"validateAsync",!1);let N=[];if(E&&e.schema.readonly!==!0&&e.disabled!==!0){const B=[];Array.isArray(E)?z(E,h=>{B.push(r(h))}):B.push(r(E)),z(B,h=>{var b,V;if(w)N.push(h(i.value,e.schema,(b=e.model)==null?void 0:b.value));else{const I=h(i.value,e.schema,(V=e.model)==null?void 0:V.value);I&&D(I.then)?I.then(p=>{p&&(n.value=n.value.concat(p));const y=n.value.length===0;e.emitValidated&&e.emitValidated({isValid:y,errors:n.value,field:e.schema})}):I&&(N=N.concat(I))}})}const _=B=>{var b,V;let h=[];if(z(Sn(B),I=>{Array.isArray(I)&&I.length>0?h=h.concat(I):ye(I)&&h.push(I)}),D((b=e.schema)==null?void 0:b.onValidated)&&e.schema.onValidated((V=e.model)==null?void 0:V.value,h,e.schema),!g){const I=h.length===0;e.emitValidated&&e.emitValidated({isValid:I,errors:h,field:e.schema})}return B=h,h};return w?Promise.all(N).then(_):_(N)},d=()=>{D(o.value)?o.value():o.value=Le(a,O(e.schema,"validateDebounceTime",O(e.formOptions,"validateDebounceTime",500)))},l=(g,E)=>{var N,_,T;let w=!1;D(e.schema.set)?(e.schema.set((N=e.model)==null?void 0:N.value,g),w=!0):e.schema.model&&(c(e.schema.model,g),w=!0),w&&(e.emitModelUpdated&&((_=e.model)!=null&&_.value)&&e.emitModelUpdated({value:g,model:e.schema.model}),D(e.schema.onChanged)&&e.schema.onChanged((T=e.model)==null?void 0:T.value,g,E,e.schema),O(e.formOptions,"validateAfterChanged",!1)===!0&&(O(e.schema,"validateDebounceTime",O(e.formOptions,"validateDebounceTime",0))>0?d():a()))},s=()=>{n.value.splice(0)},c=(g,E)=>{var h;let w=g.replace(/\[(\w+)\]/g,".$1");w=w.replace(/^\./,"");let N=((h=e.model)==null?void 0:h.value)||{},_=0;const T=w.split("."),B=T.length;for(;_<B;){const b=T[_];if(_<B-1)N[b]!==void 0||(N[b]={}),N=N[b];else{N[b]=E;return}++_}},m=(g,E=!1)=>{const w=O(e.formOptions,"fieldIdPrefix","");return ht(g,w)+(E?"-"+Mn():"")},f=g=>`${m(g)}-label`,u=()=>O(e.schema,"fieldClasses",[]),C=g=>e.formatValueToField&&typeof e.formatValueToField=="function"?e.formatValueToField(g):g,M=g=>e.formatValueToModel&&typeof e.formatValueToModel=="function"?e.formatValueToModel(g):g;return{value:i,clearValidationErrors:s,getFieldID:m,getLabelId:f,getFieldClasses:u,updateModelValue:l}}const Te={useAbstractFields:Ms},Ts={class:"form-field-wrapper"},Gn=U(t.defineComponent({__name:"FieldInput",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:o}){const r=e,i=o,a=t.toRefs(r),d=t.inject(G,void 0),{updateModelValue:l,getFieldID:s,clearValidationErrors:c,value:m}=Te.useAbstractFields({model:a.model,schema:r.schema,formOptions:r.formOptions,emitModelUpdated:_=>{i("modelUpdated",_.value,_.model)}});n({clearValidationErrors:c});const f=t.computed(()=>{var T;const _=(T=r.schema)==null?void 0:T.inputType.toLowerCase();return _==="string"?"text":_==="datetime"?"datetime-local":_||"text"}),u={date:"YYYY-MM-DD",datetime:"YYYY-MM-DD HH:mm:ss","datetime-local":"YYYY-MM-DDTHH:mm:ss"},C=(_,T)=>{var V,I;let B=_;const h=u[f.value]||"",b=Me.parse(_,h);b&&((V=r.schema)!=null&&V.format?B=Me.format(b,(I=r.schema)==null?void 0:I.format):B=b.valueOf()),l(B,T)},M=(_,T)=>{bt(_)||(_=NaN),l(_,T)},g=_=>{let T=_;switch(f.value){case"number":case"range":bt(parseFloat(_))&&(T=parseFloat(_));break}m.value=T,l(T,_)},E=_=>{m.value=_,l(_,_)},w=t.ref(null),N=()=>{var _;D(w.value)&&((_=w.value)==null||_.flush())};return t.onMounted(()=>{switch(f.value){case"number":case"range":w.value=Le((_,T)=>{M(_,T)},parseInt(O(r.schema,"debounceFormatTimeout",1e3)),{trailing:!0,leading:!1});break;case"date":case"datetime":case"datetime-local":w.value=Le((_,T)=>{C(_,T)},parseInt(O(r.schema,"debounceFormatTimeout",1e3)),{trailing:!0,leading:!1});break}}),t.onBeforeMount(()=>{f.value==="checkbox"?console.warn("The use of 'checkbox' inputType with 'input' type fields is deprecated. Use 'checkbox' type instead."):f.value==="radio"?console.warn("The use of 'radio' inputType with 'input' type fields is deprecated. Use 'radio' type instead."):f.value==="file"&&console.warn("The 'file' type in input field is deprecated. Use 'file' field instead.")}),(_,T)=>{const B=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock("div",Ts,[t.createVNode(B,t.mergeProps(_.$attrs,{id:t.unref(s)(e.schema),autocomplete:e.schema.autocomplete,class:e.schema.fieldClasses,disabled:e.disabled||void 0,help:e.hint?e.hint:f.value==="color"||f.value==="range"?t.unref(m):void 0,max:e.schema.max,maxlength:e.schema.maxlength,min:e.schema.min,minlength:e.schema.minlength,"model-value":t.unref(m),name:e.schema.inputName,pattern:e.schema.pattern,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,type:f.value,width:e.schema.width,onBlur:N,"onUpdate:modelValue":g}),null,16,["id","autocomplete","class","disabled","help","max","maxlength","min","minlength","model-value","name","pattern","placeholder","readonly","required","type","width"]),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(d)),{schema:e.schema,update:E,value:t.unref(m)},null,8,["schema","value"]))])}}}),[["__scopeId","data-v-a621f2a9"]]),Vs={name:"FieldMetric",components:{AddIcon:le.AddIcon,TrashIcon:le.TrashIcon},mixins:[Q],emits:["remove-item"],data(){return{contentVisible:!1}}},Ns={key:0,class:"content"};function Bs(e,n,o,r,i,a){const d=t.resolveComponent("AddIcon"),l=t.resolveComponent("TrashIcon"),s=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["field-dropdown",{active:i.contentVisible}])},[t.createElementVNode("div",{class:"title",onClick:n[0]||(n[0]=c=>i.contentVisible=!i.contentVisible)},[t.createTextVNode(t.toDisplayString(e.model.name?e.model.name:"New Item")+" ",1),t.createVNode(d,{class:"metric-add-icon"})]),t.createVNode(t.Transition,{name:"slide-fade"},{default:t.withCtx(()=>[i.contentVisible?(t.openBlock(),t.createElementBlock("div",Ns,[t.renderSlot(e.$slots,"default"),t.createVNode(s,{appearance:"tertiary",class:"metric-remove-button",onClick:n[1]||(n[1]=c=>e.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(l)]),_:1})])):t.createCommentVNode("",!0)]),_:3})],2)}const Wn=U(Vs,[["render",Bs]]),Is={mixins:[Q],emits:["modelUpdated"],data(){return{attributes:this.schema?this.schema.attributes:void 0,newKeyType:"string",newKeyName:"",keyTypes:{}}},created(){this.value||(this.value={})},mounted(){if(!this.value)return;const e=Object.keys(this.value),n={};for(let o=0;o<e.length;o++){const r=e[o];n[r]=typeof this.value[r]}this.keyTypes=n},methods:{removeElement(e){const n=this.value;delete n[e],this.value=JSON.parse(JSON.stringify(n));const o=this.keyTypes;delete o[e],this.keyTypes=JSON.parse(JSON.stringify(o))},addKey(){this.value[this.newKeyName]=void 0,this.value={...this.value},this.keyTypes[this.newKeyName]=this.newKeyType,this.keyTypes={...this.keyTypes},this.newKeyName=""},updateModel(e,n){this.$emit("modelUpdated",e,n)}}},Et=e=>(t.pushScopeId("data-v-b7e3dcd7"),e=e(),t.popScopeId(),e),As={class:"field-object-container"},Os={key:1},Fs=["id"],$s={key:0},Us=["onUpdate:modelValue"],Ls={key:1},Ds=["onUpdate:modelValue"],vs={key:2},Ps=["onUpdate:modelValue"],Rs=["onClick"],js=[Et(()=>t.createElementVNode("option",{value:"string"}," String ",-1)),Et(()=>t.createElementVNode("option",{value:"number"}," Number ",-1)),Et(()=>t.createElementVNode("option",{value:"boolean"}," Boolean ",-1))];function qs(e,n,o,r,i,a){const d=t.resolveComponent("vue-form-generator"),l=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("div",As,[e.schema.schema?(t.openBlock(),t.createBlock(d,{key:0,model:e.value,options:e.formOptions,schema:e.schema.schema,onModelUpdated:a.updateModel},null,8,["model","options","schema","onModelUpdated"])):(t.openBlock(),t.createElementBlock("div",Os,[t.createElementVNode("table",{id:e.getFieldID(e.schema),class:t.normalizeClass(e.schema.fieldClasses)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(s,c)=>(t.openBlock(),t.createElementBlock("tr",{key:c},[t.createElementVNode("td",null,t.toDisplayString(c),1),i.keyTypes[c]==="string"?(t.openBlock(),t.createElementBlock("td",$s,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":m=>e.value[c]=m,type:"text"},null,8,Us),[[t.vModelText,e.value[c]]])])):t.createCommentVNode("",!0),i.keyTypes[c]==="boolean"?(t.openBlock(),t.createElementBlock("td",Ls,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":m=>e.value[c]=m,type:"checkbox"},null,8,Ds),[[t.vModelCheckbox,e.value[c]]])])):t.createCommentVNode("",!0),i.keyTypes[c]==="number"?(t.openBlock(),t.createElementBlock("td",vs,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":m=>e.value[c]=m,type:"number"},null,8,Ps),[[t.vModelText,e.value[c]]])])):t.createCommentVNode("",!0),t.createElementVNode("td",null,[t.createElementVNode("input",{type:"button",value:"x",onClick:m=>a.removeElement(c)},null,8,Rs)])]))),128))],10,Fs),t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":n[0]||(n[0]=s=>i.newKeyType=s)},js,512),[[t.vModelSelect,i.newKeyType]]),t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[1]||(n[1]=s=>i.newKeyName=s),type:"text"},null,512),[[t.vModelText,i.newKeyName]]),t.createElementVNode("input",{type:"button",value:"Add key",onClick:n[2]||(n[2]=(...s)=>a.addKey&&a.addKey(...s))})]))])),[[l,i.attributes]])}const Zn=U(Is,[["render",qs],["__scopeId","data-v-b7e3dcd7"]]),Ks={components:{TrashIcon:le.TrashIcon},mixins:[Q],inject:{autofillSlot:{from:G,default:void 0}},emits:["model-updated"],data(){return{newKeyName:""}},computed:{subSchema(){return this.schema.schema&&this.schema.schema.fields[0].schema},subFields(){return!this.subSchema&&this.schema.fields},hasObjectKeys(){return this.value&&Object.keys(this.value).length>0},transformedModel(){return this.subSchema&&this.subSchema.fields.length>=1&&this.subSchema.fields[0].type==="array"?new Proxy(this.model[this.schema.model],{get:(e,n)=>({[this.schema.model]:e[n]}),set:(e,n,o)=>e[n]=o[this.schema.model]}):this.model[this.schema.model]}},mounted(){this.value||(this.value={});let e=[];this.subSchema?e=this.subSchema.fields:this.subFields&&(e=this.schema.fields[0].schema),this.value=this.transformMapModelValuesToObject(this.model,e,this.schema.model)},methods:{removeElement(e){const n=this.value;delete n[e],this.value={...n}},transformMapModelValuesToObject(e,n,o){const r={};return Object.keys(e).map(i=>{const a=i.indexOf(o+"-");if(a>-1&&Array.isArray(n))if(n.length>0){const l=i.split("-").filter(c=>n.find(m=>m.model===c)),s=i.split(`-${l}`)[0].split(`${o}-`)[1];l.length?r[s]={...r[s],[l]:e[i]}:r[i.substring(a+`${o}-`.length)]=e[i]}else r[i.substring(`${o}-`.length)]=e[i];else{const l=i.split("-").filter(c=>c===this.schema.model),s=i.split(`-${l}`)[0].split(`${o}-`)[1];s&&(r[s]=e[i])}return i}),r},addKey(){const e=this.subSchema&&Array.isArray(this.subSchema.fields)&&this.subSchema.fields.length===1&&this.subSchema.fields[0].type==="array",n=this.subSchema?e?[""]:{}:"";this.value[this.newKeyName]=n,this.newKeyName=""},updateModel(e,n){this.$emit("model-updated",this.model[this.schema.model],n)}}},Jn=e=>(t.pushScopeId("data-v-3a00058c"),e=e(),t.popScopeId(),e),xs=["id"],zs=["data-testid"],Ys={class:"item-wrapper"},Hs={class:"index-wrapper"},Gs=Jn(()=>t.createElementVNode("hr",{class:"divider"},null,-1)),Ws={key:0},Zs={key:1},Js=["onUpdate:modelValue","placeholder","onInput"],Xs={key:0,class:"hint"},Qs=Jn(()=>t.createElementVNode("hr",{class:"wide-divider"},null,-1)),ed={class:"input-item"},td=["placeholder"],nd={key:0,class:"hint"};function od(e,n,o,r,i,a){const d=t.resolveComponent("TrashIcon"),l=t.resolveComponent("KButton"),s=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",{id:e.getFieldID(e.schema),class:t.normalizeClass(["object-advanced-wrapper",e.schema.fieldClasses])},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(c,m)=>(t.openBlock(),t.createElementBlock("div",{key:m,"data-testid":`field-object-key-${m}`},[t.createElementVNode("div",null,[t.createElementVNode("div",Ys,[t.createElementVNode("div",Hs,[t.createElementVNode("strong",null,t.toDisplayString(m),1),t.createElementVNode("div",null,[t.createVNode(l,{appearance:"tertiary",class:"delete",icon:"",type:"button",onClick:f=>a.removeElement(m)},{default:t.withCtx(()=>[t.createVNode(d)]),_:2},1032,["onClick"])])]),Gs,a.subSchema?(t.openBlock(),t.createElementBlock("div",Ws,[t.createVNode(s,{model:a.transformedModel[m],options:{helpAsHtml:!0},schema:a.subSchema,onModelUpdated:a.updateModel},null,8,["model","schema","onModelUpdated"])])):(t.openBlock(),t.createElementBlock("div",Zs,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":f=>e.value[m]=f,class:"form-control",placeholder:e.schema.fields&&e.schema.fields[0].schema.placeholder,type:"text",onInput:f=>a.updateModel(e.value[m],e.model[e.schema.model])},null,40,Js),[[t.vModelText,e.value[m]]]),e.schema.fields&&e.schema.fields[0].schema.hint?(t.openBlock(),t.createElementBlock("p",Xs,t.toDisplayString(e.schema.fields[0].schema.hint),1)):t.createCommentVNode("",!0),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.autofillSlot),{schema:e.schema.fields&&e.schema.fields[0].schema||e.schema.values,update:f=>e.value[m]=f,value:e.value[m]},null,8,["schema","update","value"]))])),Qs])])],8,zs))),128)),t.createElementVNode("div",{class:t.normalizeClass(["input-wrapper",{indent:a.hasObjectKeys}])},[t.createElementVNode("div",ed,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=c=>i.newKeyName=c),class:"form-control","data-testid":"keyname-input",placeholder:e.schema.placeholder,type:"text"},null,8,td),[[t.vModelText,i.newKeyName]]),t.createVNode(l,{appearance:"tertiary","data-testid":"add-key",disabled:!i.newKeyName,onClick:a.addKey},{default:t.withCtx(()=>[t.createTextVNode(" + Add "+t.toDisplayString(e.schema.buttonLabel||e.schema.label),1)]),_:1},8,["disabled","onClick"])]),e.schema.hintText?(t.openBlock(),t.createElementBlock("p",nd,t.toDisplayString(e.schema.hintText),1)):t.createCommentVNode("",!0)],2)],10,xs)}const Xn=U(Ks,[["render",od],["__scopeId","data-v-3a00058c"]]),rd={class:"radio-selection-group"},Qn=U(t.defineComponent({__name:"FieldRadio",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:o}){const r=e,i=o,a=t.toRefs(r),{updateModelValue:d,value:l,clearValidationErrors:s}=Te.useAbstractFields({model:a.model,schema:r.schema,formOptions:r.formOptions,emitModelUpdated:m=>{i("modelUpdated",m.value,m.model)}});n({clearValidationErrors:s});const c=m=>{let f=m;typeof m=="string"&&(f=m.split(","),r.schema.array||(f=f.toString())),d(f,m)};return(m,f)=>{const u=t.resolveComponent("KRadio");return t.openBlock(),t.createElementBlock("div",rd,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.schema.values,(C,M)=>(t.openBlock(),t.createBlock(u,{id:e.schema.name+"-"+M,key:C.value,modelValue:t.unref(l),"onUpdate:modelValue":f[0]||(f[0]=g=>t.isRef(l)?l.value=g:null),label:C.name,name:e.schema.name,"selected-value":C.value,onChange:c},null,8,["id","modelValue","label","name","selected-value"]))),128))])}}}),[["__scopeId","data-v-6340d2ee"]]);function ad(e,n){for(var o=-1,r=e==null?0:e.length;++o<r;)if(n(e[o],o,e))return!0;return!1}var id=1,ld=2;function eo(e,n,o,r,i,a){var d=o&id,l=e.length,s=n.length;if(l!=s&&!(d&&s>l))return!1;var c=a.get(e),m=a.get(n);if(c&&m)return c==n&&m==e;var f=-1,u=!0,C=o&ld?new De:void 0;for(a.set(e,n),a.set(n,e);++f<l;){var M=e[f],g=n[f];if(r)var E=d?r(g,M,f,n,e,a):r(M,g,f,e,n,a);if(E!==void 0){if(E)continue;u=!1;break}if(C){if(!ad(n,function(w,N){if(!kn(C,N)&&(M===w||i(M,w,o,r,a)))return C.push(N)})){u=!1;break}}else if(!(M===g||i(M,g,o,r,a))){u=!1;break}}return a.delete(e),a.delete(n),u}function sd(e){var n=-1,o=Array(e.size);return e.forEach(function(r,i){o[++n]=[i,r]}),o}var dd=1,cd=2,md="[object Boolean]",fd="[object Date]",ud="[object Error]",hd="[object Map]",pd="[object Number]",gd="[object RegExp]",yd="[object Set]",bd="[object String]",_d="[object Symbol]",wd="[object ArrayBuffer]",Ed="[object DataView]",to=te?te.prototype:void 0,Ct=to?to.valueOf:void 0;function Cd(e,n,o,r,i,a,d){switch(o){case Ed:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case wd:return!(e.byteLength!=n.byteLength||!a(new We(e),new We(n)));case md:case fd:case pd:return Fe(+e,+n);case ud:return e.name==n.name&&e.message==n.message;case gd:case bd:return e==n+"";case hd:var l=sd;case yd:var s=rⅆif(l||(l=yt),e.size!=n.size&&!s)return!1;var c=d.get(e);if(c)return c==n;r|=cd,d.set(e,n);var m=eo(l(e),l(n),r,i,a,d);return d.delete(e),m;case _d:if(Ct)return Ct.call(e)==Ct.call(n)}return!1}var kd=1,Sd=Object.prototype,Md=Sd.hasOwnProperty;function Td(e,n,o,r,i,a){var d=o&kd,l=dt(e),s=l.length,c=dt(n),m=c.length;if(s!=m&&!d)return!1;for(var f=s;f--;){var u=l[f];if(!(d?u in n:Md.call(n,u)))return!1}var C=a.get(e),M=a.get(n);if(C&&M)return C==n&&M==e;var g=!0;a.set(e,n),a.set(n,e);for(var E=d;++f<s;){u=l[f];var w=e[u],N=n[u];if(r)var _=d?r(N,w,u,n,e,a):r(w,N,u,e,n,a);if(!(_===void 0?w===N||i(w,N,o,r,a):_)){g=!1;break}E||(E=u=="constructor")}if(g&&!E){var T=e.constructor,B=n.constructor;T!=B&&"constructor"in e&&"constructor"in n&&!(typeof T=="function"&&T instanceof T&&typeof B=="function"&&B instanceof B)&&(g=!1)}return a.delete(e),a.delete(n),g}var Vd=1,no="[object Arguments]",oo="[object Array]",Xe="[object Object]",Nd=Object.prototype,ro=Nd.hasOwnProperty;function Bd(e,n,o,r,i,a){var d=J(e),l=J(n),s=d?oo:ee(e),c=l?oo:ee(n);s=s==no?Xe:s,c=c==no?Xe:c;var m=s==Xe,f=c==Xe,u=s==c;if(u&&Re(e)){if(!Re(n))return!1;d=!0,m=!1}if(u&&!m)return a||(a=new oe),d||Dt(e)?eo(e,n,o,r,i,a):Cd(e,n,s,o,r,i,a);if(!(o&Vd)){var C=m&&ro.call(e,"__wrapped__"),M=f&&ro.call(n,"__wrapped__");if(C||M){var g=C?e.value():e,E=M?n.value():n;return a||(a=new oe),i(g,E,o,r,a)}}return u?(a||(a=new oe),Td(e,n,o,r,i,a)):!1}function kt(e,n,o,r,i){return e===n?!0:e==null||n==null||!ne(e)&&!ne(n)?e!==e&&n!==n:Bd(e,n,o,r,kt,i)}var Id=1,Ad=2;function Od(e,n,o,r){var i=o.length,a=i;if(e==null)return!a;for(e=Object(e);i--;){var d=o[i];if(d[2]?d[1]!==e[d[0]]:!(d[0]in e))return!1}for(;++i<a;){d=o[i];var l=d[0],s=e[l],c=d[1];if(d[2]){if(s===void 0&&!(l in e))return!1}else{var m=new oe,f;if(!(f===void 0?kt(c,s,Id|Ad,r,m):f))return!1}}return!0}function ao(e){return e===e&&!x(e)}function Fd(e){for(var n=ke(e),o=n.length;o--;){var r=n[o],i=e[r];n[o]=[r,i,ao(i)]}return n}function io(e,n){return function(o){return o==null?!1:o[e]===n&&(n!==void 0||e in Object(o))}}function $d(e){var n=Fd(e);return n.length==1&&n[0][2]?io(n[0][0],n[0][1]):function(o){return o===e||Od(o,e,n)}}function Ud(e,n){return e!=null&&n in Object(e)}function Ld(e,n,o){n=zt(n,e);for(var r=-1,i=n.length,a=!1;++r<i;){var d=ze(n[r]);if(!(a=e!=null&&o(e,d)))break;e=e[d]}return a||++r!=i?a:(i=e==null?0:e.length,!!i&&tt(i)&&et(d,i)&&(J(e)||At(e)))}function Dd(e,n){return e!=null&&Ld(e,n,Ud)}var vd=1,Pd=2;function Rd(e,n){return at(e)&&ao(n)?io(ze(e),n):function(o){var r=O(o,e);return r===void 0&&r===n?Dd(o,e):kt(n,r,vd|Pd)}}function jd(e){return function(n){return n==null?void 0:n[e]}}function qd(e){return function(n){return Yt(n,e)}}function Kd(e){return at(e)?jd(ze(e)):qd(e)}function lo(e){return typeof e=="function"?e:e==null?je:typeof e=="object"?J(e)?Rd(e[0],e[1]):$d(e):Kd(e)}function xd(e){return function(n,o,r){var i=Object(n);if(!Ae(n)){var a=lo(o);n=ke(n),o=function(l){return a(i[l],l,i)}}var d=e(n,o,r);return d>-1?i[a?n[d]:d]:void 0}}var zd=Math.max;function Yd(e,n,o){var r=e==null?0:e.length;if(!r)return-1;var i=o==null?0:Bn(o);return i<0&&(i=zd(r+i,0)),Cn(e,lo(n),i)}var Hd=xd(Yd);const Gd=["disabled","name","id"],Wd=["disabled"],Zd=["label"],Jd=["value"],Xd=["value"];function Qd(e,n,o,r,i,a){const d=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("select",{class:t.normalizeClass(["form-control",e.schema.fieldClasses]),"onUpdate:modelValue":n[0]||(n[0]=l=>e.value=l),disabled:e.disabled||null,name:e.schema.inputName,id:e.getFieldID(e.schema)},[a.selectOptions.hideNoneSelectedText?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("option",{key:0,disabled:e.schema.required||null,value:null},t.toDisplayString(a.selectOptions.noneSelectedText||"<Nothing selected>"),9,Wd)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.items,l=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[l.group?(t.openBlock(),t.createElementBlock("optgroup",{key:0,label:a.getGroupName(l)},[l.ops?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(l.ops,s=>(t.openBlock(),t.createElementBlock("option",{value:a.getItemValue(s)},t.toDisplayString(a.getItemName(s)),9,Jd))),256)):t.createCommentVNode("",!0)],8,Zd)):t.createCommentVNode("",!0),l.group?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("option",{key:1,value:a.getItemValue(l)},t.toDisplayString(a.getItemName(l)),9,Xd))],64))),256))],10,Gd)),[[t.vModelSelect,e.value],[d,"input"]])}const so=U({mixins:[Q],computed:{selectOptions(){return this.schema.selectOptions||{}},items(){const e=this.schema.values;return typeof e=="function"?this.groupValues(e.apply(this,[this.model,this.schema])):this.groupValues(e)}},methods:{formatValueToField(e){return R(e)?null:e},groupValues(e){const n=[];let o={};return e.forEach(r=>{o=null,r.group&&x(r)?(o=Hd(n,i=>i.group===r.group),o?o.ops.push({id:r.id,name:r.name}):(o={group:"",ops:[]},o.group=r.group,o.ops.push({id:r.id,name:r.name}),n.push(o))):n.push(r)}),n},getGroupName(e){if(e&&e.group)return e.group;throw new Error("Group name is missing! https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")},getItemValue(e){if(x(e)){if(typeof this.schema.selectOptions<"u"&&typeof this.schema.selectOptions.value<"u")return e[this.schema.selectOptions.value];if(typeof e.id<"u")return e.id;throw new Error("`id` is not defined. If you want to use another key name, add a `value` property under `selectOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")}else return e},getItemName(e){if(x(e)){if(typeof this.schema.selectOptions<"u"&&typeof this.schema.selectOptions.name<"u")return e[this.schema.selectOptions.name];if(typeof e.name<"u")return e.name;throw new Error("`name` is not defined. If you want to use another key name, add a `name` property under `selectOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")}else return e}}},[["render",Qd]]),ec={name:"FieldArray",components:{FieldArrayItem:zn,FieldArrayMultiItem:Yn,FieldSelect:so,FieldMetric:Wn,FieldObject:Zn,FieldObjectAdvanced:Xn,FieldAutoSuggest:Hn,FieldRadio:Qn,FieldArrayCardContainer:xn,FieldInput:Gn},mixins:[Q],inject:{autofillSlot:{from:G,default:void 0}},props:{newElementButtonLabel:{type:String,default:"New Item"},removeElementButtonLabel:{type:String,default:"x"}},emits:["refreshModel"],methods:{generateSchema(e,n,o){var i,a,d;let r;return n&&(r=JSON.parse(JSON.stringify(n)),(d=(a=(i=r.schema)==null?void 0:i.fields)==null?void 0:a.map)==null||d.call(a,l=>(l.id=`${l.id||l.model}-${o}`,l))),{...r,set(l,s){e[o]=s},get(){return e[o]}}},newElement(){let e=this.value,n;(!e||!e.push)&&(e=[]),this.schema.items&&this.schema.items.default&&(typeof this.schema.items.default=="function"?n=this.schema.items.default():n=this.schema.items.default),e.push(n),this.value=[...e]},removeElement(e){this.value=this.value.filter((n,o)=>o!==e)},getFieldType(e){return"field-"+e.type},modelUpdated(){this.$emit("refreshModel")},handleInput(e,n){this.value=this.value.map((o,r)=>r===n?e:o)}}},tc=["id"],nc={key:1},oc=["onUpdate:modelValue","aria-labelledby","type"],rc=["onUpdate:modelValue","aria-labelledby"];function ac(e,n,o,r,i,a){const d=t.resolveComponent("KTextArea"),l=t.resolveComponent("KInput"),s=t.resolveComponent("KButton");return e.schema?(t.openBlock(),t.createElementBlock("div",{key:0,id:e.getFieldID(e.schema),class:t.normalizeClass(e.schema.fieldClasses)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(c,m)=>(t.openBlock(),t.createElementBlock("div",{key:m,class:t.normalizeClass(e.schema.fieldItemsClasses)},[e.schema.items&&e.schema.itemContainerComponent?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.schema.itemContainerComponent),{key:0,index:m,model:c,schema:a.generateSchema(e.value,e.schema.items,m),onRemoveItem:f=>a.removeElement(m)},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.getFieldType(e.schema.items)),{"form-options":e.formOptions,model:c,schema:a.generateSchema(e.value,e.schema.items,m),onModelUpdated:a.modelUpdated},null,40,["form-options","model","schema","onModelUpdated"]))]),_:2},1064,["index","model","schema","onRemoveItem"])):e.schema.items?(t.openBlock(),t.createElementBlock("span",nc,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.getFieldType(e.schema.items)),{"form-options":e.formOptions,model:c,schema:a.generateSchema(e.value,e.schema.items,m),onModelUpdated:a.modelUpdated},null,40,["form-options","model","schema","onModelUpdated"]))])):e.schema.itemContainerComponent?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.schema.itemContainerComponent),{key:2,"data-testid":`${e.getFieldID(e.schema)}-item-${m}`,model:c,schema:a.generateSchema(e.value,e.schema.items,m),onRemoveItem:f=>a.removeElement(m)},{after:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.autofillSlot),{schema:e.schema,update:f=>e.value[m]=f,value:e.value[m]},null,8,["schema","update","value"]))]),default:t.withCtx(()=>{var f;return[e.schema.inputAttributes&&e.schema.inputAttributes.type==="textarea"?(t.openBlock(),t.createBlock(d,t.mergeProps({key:0,ref_for:!0},e.schema.inputAttributes,{id:e.getFieldID(e.schema),modelValue:e.value[m],"onUpdate:modelValue":u=>e.value[m]=u,"aria-labelledby":e.getLabelId(e.schema),class:e.schema.fieldClasses,maxlength:e.schema.max,minlength:e.schema.min,name:e.schema.inputName,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,rows:e.schema.rows||2}),null,16,["id","modelValue","onUpdate:modelValue","aria-labelledby","class","maxlength","minlength","name","placeholder","readonly","required","rows"])):!e.schema.inputAttributes||!e.schema.inputAttributes.type||e.schema.inputAttributes.type==="text"||e.schema.inputAttributes.type==="number"?(t.openBlock(),t.createBlock(l,t.mergeProps({key:1,"aria-labelledby":e.getLabelId(e.schema),ref_for:!0},e.schema.inputAttributes,{"model-value":e.value[m],type:e.schema.inputAttributes&&e.schema.inputAttributes.type||"text",onInput:u=>{a.handleInput(u,m)}}),null,16,["aria-labelledby","model-value","type","onInput"])):t.withDirectives((t.openBlock(),t.createElementBlock("input",t.mergeProps({key:2,"onUpdate:modelValue":u=>e.value[m]=u,"aria-labelledby":e.getLabelId(e.schema),ref_for:!0},e.schema.inputAttributes,{type:((f=e.schema.inputAttributes)==null?void 0:f.type)||"text"}),null,16,oc)),[[t.vModelDynamic,e.value[m]]])]}),_:2},1064,["data-testid","model","schema","onRemoveItem"])):(t.openBlock(),t.createElementBlock(t.Fragment,{key:3},[t.withDirectives(t.createElementVNode("input",t.mergeProps({ref_for:!0},e.schema.inputAttributes,{"onUpdate:modelValue":f=>e.value[m]=f,"aria-labelledby":e.getLabelId(e.schema),type:"text"}),null,16,rc),[[t.vModelText,e.value[m]]]),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.autofillSlot),{schema:e.schema,update:f=>e.value[m]=f,value:e.value[m]},null,8,["schema","update","value"]))],64))],2))),128)),t.createVNode(s,{appearance:"tertiary",class:t.normalizeClass(e.schema.newElementButtonLabelClasses),"data-testid":`add-${e.getFieldID(e.schema)}`,type:"button",onClick:a.newElement},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.schema.newElementButtonLabel||o.newElementButtonLabel),1)]),_:1},8,["class","data-testid","onClick"])],10,tc)):t.createCommentVNode("",!0)}const ic=U(ec,[["render",ac],["__scopeId","data-v-367d2ee8"]]),lc={class:"form-field-wrapper field-checkbox"},sc=U(t.defineComponent({__name:"FieldCheckbox",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:o}){const r=e,i=o,a=t.toRefs(r),{getFieldID:d,value:l,clearValidationErrors:s}=Te.useAbstractFields({model:a.model,schema:r.schema,formOptions:r.formOptions,emitModelUpdated:c=>{i("modelUpdated",c.value,c.model)}});return n({clearValidationErrors:s}),(c,m)=>{const f=t.resolveComponent("KCheckbox");return t.openBlock(),t.createElementBlock("div",lc,[t.createVNode(f,t.mergeProps(c.$attrs,{id:t.unref(d)(e.schema),modelValue:t.unref(l),"onUpdate:modelValue":m[0]||(m[0]=u=>t.isRef(l)?l.value=u:null),autocomplete:e.schema.autocomplete,class:e.schema.fieldClasses,disabled:e.disabled||void 0,help:e.hint?e.hint:void 0,name:e.schema.inputName,readonly:e.schema.readonly,required:e.schema.required,width:e.schema.width}),null,16,["id","modelValue","autocomplete","class","disabled","help","name","readonly","required","width"])])}}}),[["__scopeId","data-v-6b4ee1cd"]]);var dc=4;function co(e){return Ue(e,dc)}const cc={class:"wrapper"},mc=["disabled"],fc=["id","checked","disabled","onChange","name"],uc=["disabled"],hc={class:"info"},pc=t.createElementVNode("div",{class:"arrow"},null,-1),gc={class:"dropList"},yc=["id","checked","disabled","onChange","name"];function bc(e,n,o,r,i,a){const d=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("div",cc,[e.schema.listBox?(t.openBlock(),t.createElementBlock("div",{key:0,class:"listbox form-control",disabled:e.disabled||null},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.items,l=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["list-row",{"is-checked":a.isItemChecked(l)}])},[t.createElementVNode("label",null,[t.withDirectives(t.createElementVNode("input",{id:e.getFieldID(e.schema,!0),type:"checkbox",checked:a.isItemChecked(l)||null,disabled:e.disabled||null,onChange:s=>a.onChanged(s,l),name:a.getInputName(l)},null,40,fc),[[d,"input"]]),t.createTextVNode(t.toDisplayString(a.getItemName(l)),1)])],2))),256))],8,mc)):t.createCommentVNode("",!0),e.schema.listBox?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:1,class:"combobox form-control",disabled:e.disabled||null},[t.createElementVNode("div",{class:t.normalizeClass(["mainRow",{expanded:i.comboExpanded}]),onClick:n[0]||(n[0]=(...l)=>a.onExpandCombo&&a.onExpandCombo(...l))},[t.createElementVNode("div",hc,t.toDisplayString(a.selectedCount)+" selected",1),pc],2),t.createElementVNode("div",gc,[i.comboExpanded?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(a.items,l=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["list-row",{"is-checked":a.isItemChecked(l)}])},[t.createElementVNode("label",null,[t.withDirectives(t.createElementVNode("input",{id:e.getFieldID(e.schema,!0),type:"checkbox",checked:a.isItemChecked(l)||null,disabled:e.disabled||null,onChange:s=>a.onChanged(s,l),name:a.getInputName(l)},null,40,yc),[[d,"input"]]),t.createTextVNode(t.toDisplayString(a.getItemName(l)),1)])],2))),256)):t.createCommentVNode("",!0)])],8,uc))])),[[d,"wrapper"]])}const _c=U({mixins:[Q],data(){return{comboExpanded:!1}},computed:{items(){const e=this.schema.values;return typeof e=="function"?e.apply(this,[this.model,this.schema]):e},selectedCount(){return this.value?this.value.length:0}},methods:{getInputName(e){return this.schema&&this.schema.inputName&&this.schema.inputName.length>0?_n(this.schema.inputName+"_"+this.getItemValue(e)):_n(this.getItemValue(e))},getItemValue(e){if(x(e)){if(typeof this.schema.checklistOptions<"u"&&typeof this.schema.checklistOptions.value<"u")return e[this.schema.checklistOptions.value];if(typeof e.value<"u")return e.value;throw new Error("`value` is not defined. If you want to use another key name, add a `value` property under `checklistOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/checklist.html#checklist-field-with-object-values")}else return e},getItemName(e){if(x(e)){if(typeof this.schema.checklistOptions<"u"&&typeof this.schema.checklistOptions.name<"u")return e[this.schema.checklistOptions.name];if(typeof e.name<"u")return e.name;throw new Error("`name` is not defined. If you want to use another key name, add a `name` property under `checklistOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/checklist.html#checklist-field-with-object-values")}else return e},isItemChecked(e){return this.value&&this.value.indexOf(this.getItemValue(e))!==-1},onChanged(e,n){if((R(this.value)||!Array.isArray(this.value))&&(this.value=[]),e.target.checked){const o=co(this.value);o.push(this.getItemValue(n)),this.value=o}else{const o=co(this.value);o.splice(this.value.indexOf(this.getItemValue(n)),1),this.value=o}},onExpandCombo(){this.comboExpanded=!this.comboExpanded}}},[["render",bc]]),wc={name:"FieldKeyValuePairs",components:{TrashIcon:le.TrashIcon},mixins:[Q],inject:{autofillSlot:{from:G,default:void 0}},data(){return{pairs:[]}},watch:{pairs:{handler(){this.updateValue()},deep:!0}},created(){var n,o;this.value||(this.value={});const e=((o=this.model)==null?void 0:o[(n=this.schema)==null?void 0:n.model])??{};Object.keys(e).forEach(r=>{this.pairs.push({key:r,value:e[r]})})},methods:{onInput(e,n,o){this.pairs[n][o]=e.target.value},updateValue(){this.value=this.pairs.reduce((e,{key:n,value:o})=>({...e,...n&&o?{[n]:o}:null}),{})},addPair(){this.pairs.push({key:"",value:""})},removePair(e){this.pairs.splice(e,1)}}},Ec={class:"key-value-pairs-editor"},Cc={class:"pair-item-cell"},kc=["data-testid","placeholder","value","onInput"],Sc={class:"pair-item-cell"},Mc=["data-testid","placeholder","value","onInput"];function Tc(e,n,o,r,i,a){const d=t.resolveComponent("TrashIcon"),l=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",Ec,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.pairs,(s,c)=>(t.openBlock(),t.createElementBlock("div",{key:c,class:"pair-item"},[t.createElementVNode("div",Cc,[t.createElementVNode("input",{class:"form-control","data-testid":`${e.getFieldID(e.schema)}-pair-key-${c}`,placeholder:e.schema.keyInputPlaceholder??"Key",type:"text",value:s.key,onInput:m=>{a.onInput(m,c,"key")}},null,40,kc),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.autofillSlot),{schema:e.schema,update:m=>a.onInput({target:{value:m}},c,"key"),value:s.key},null,8,["schema","update","value"]))]),t.createElementVNode("div",Sc,[t.createElementVNode("input",{class:"form-control","data-testid":`${e.getFieldID(e.schema)}-pair-value-${c}`,placeholder:e.schema.valueInputPlaceholder??"Value",type:"text",value:s.value,onInput:m=>{a.onInput(m,c,"value")}},null,40,Mc),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.autofillSlot),{schema:e.schema,update:m=>a.onInput({target:{value:m}},c,"value"),value:s.value},null,8,["schema","update","value"]))]),t.createVNode(l,{appearance:"tertiary","data-testid":`${e.getFieldID(e.schema)}-remove-pair-${c}`,onClick:()=>{a.removePair(c)}},{default:t.withCtx(()=>[t.createVNode(d)]),_:2},1032,["data-testid","onClick"])]))),128)),t.createVNode(l,{appearance:"tertiary",class:t.normalizeClass(e.schema.newElementButtonLabelClasses),"data-testid":`${e.getFieldID(e.schema)}-add-pair`,type:"button",onClick:a.addPair},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.schema.newElementButtonLabel??"+ Add Pair"),1)]),_:1},8,["class","data-testid","onClick"])])}const Vc=U(wc,[["render",Tc],["__scopeId","data-v-70998d5b"]]),Nc=U(t.defineComponent({__name:"FieldLabel",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0}},setup(e){const n=e,o=t.toRefs(n),{getFieldID:r,value:i}=Te.useAbstractFields({model:o.model,schema:n.schema,formOptions:n.formOptions});return(a,d)=>{const l=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["field-label",e.schema.fieldClasses])},[t.createVNode(l,{id:t.unref(r)(e.schema)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)),1)]),_:1},8,["id"])],2)}}}),[["__scopeId","data-v-d046a15a"]]),Bc={mixins:[Q],emits:["model-updated"],methods:{onUpdate(e){this.$emit("model-updated",e,this.schema.model)}}};function Ic(e,n,o,r,i,a){const d=t.resolveComponent("KMultiselect");return t.openBlock(),t.createBlock(d,{"aria-labelledby":e.getLabelId(e.schema),"data-testid":"field-multiselect",items:e.schema.values,"label-attributes":{info:e.schema.help},"model-value":e.value,placeholder:e.schema.placeholder,required:e.schema.required||void 0,width:"100%","onUpdate:modelValue":a.onUpdate},null,8,["aria-labelledby","items","label-attributes","model-value","placeholder","required","onUpdate:modelValue"])}const Ac=U(Bc,[["render",Ic]]),Oc={mixins:[Q],emits:["model-updated"],data(){return{checkedGroup:null,fieldModel:{...this.model},fieldSchema:[]}},watch:{checkedGroup:{handler(e,n){if(n===null){this.fieldModel={...this.model};return}const o=this.schema.fields[e].fields,r=this.schema.fields[n].fields;r&&r.forEach(i=>this.updateModel("",i.model)),o&&o.forEach(i=>this.updateModel(this.fieldModel[i.model],i.model))}}},async created(){await this.$nextTick(),this.schema.fields.forEach((e,n)=>{e.fields&&e.fields.forEach(o=>{this.model[o.model]&&(this.checkedGroup=n,this.fieldSchema.push(o.model))})}),this.checkedGroup===null&&(this.checkedGroup=0)},methods:{updateModel(e,n){this.$emit("model-updated",e,n)}}},Fc={class:"selection-group"},$c={class:"form-group horizontal-radios"},Uc={class:"radio-group"},Lc=["value"],Dc={class:"control-help"},vc={class:"option-field"},Pc={class:"option-field-container"};function Rc(e,n,o,r,i,a){const d=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",Fc,[t.createElementVNode("div",$c,[t.createElementVNode("div",Uc,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.schema.fields,(l,s)=>(t.openBlock(),t.createElementBlock("div",{key:s,class:"option-group"},[t.createElementVNode("label",{class:t.normalizeClass(["k-label",`${l.label}-check`])},[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=c=>i.checkedGroup=c),class:"k-input",type:"radio",value:s},null,8,Lc),[[t.vModelRadio,i.checkedGroup]]),t.createTextVNode(" "+t.toDisplayString(l.label)+" ",1),t.createElementVNode("div",Dc,t.toDisplayString(l.description),1)],2)]))),128))])]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.schema.fields,(l,s)=>(t.openBlock(),t.createElementBlock("div",{key:s,class:"option-group"},[t.withDirectives(t.createElementVNode("div",vc,[t.createElementVNode("div",Pc,[t.createVNode(d,{model:e.model,options:{helpAsHtml:!0},schema:{fields:l.fields},onModelUpdated:a.updateModel},null,8,["model","schema","onModelUpdated"])])],512),[[t.vShow,l.fields&&i.checkedGroup===s]])]))),128))])}const jc=U(Oc,[["render",Rc],["__scopeId","data-v-0aaaf597"]]),Qe={general:{packageName:"forms"},"post-function":{tags:{hint:"e.g. tag1, tag2, tag3",newElementButtonLabel:"+ Add"},enabled:{newElementButtonLabel:"+ Add"},selectionGroup:{newElementButtonLabel:"+ Add"},instance_name:{newElementButtonLabel:"+ Add"},name:{newElementButtonLabel:"+ Add"},"config-certificate":{help:"Array of stringified Lua code to be cached and run in sequence during the certificate phase.",newElementButtonLabel:"+ Add"},"config-access":{help:"Array of stringified Lua code to be cached and run in sequence during the access phase.",newElementButtonLabel:"+ Add"},"config-body_filter":{help:"Array of stringified Lua code to be cached and run in sequence during the body_filter phase.",newElementButtonLabel:"+ Add"},"config-header_filter":{help:"Array of stringified Lua code to be cached and run in sequence during the header_filter phase.",newElementButtonLabel:"+ Add"},"config-functions":{newElementButtonLabel:"+ Add"},"config-log":{newElementButtonLabel:"+ Add"},"config-rewrite":{newElementButtonLabel:"+ Add"},"config-ws_client_frame":{newElementButtonLabel:"+ Add"},"config-ws_close":{newElementButtonLabel:"+ Add"},"config-ws_handshake":{newElementButtonLabel:"+ Add"},"config-ws_upstream_frame":{newElementButtonLabel:"+ Add"}},"exit-transformer":{"config-functions":{newElementButtonLabel:"+ Add"}},rla:{view_advanced_fields:"View Advanced Fields",window_type:{label:"Rate Limit Window Type",help:"Sets the time window type to either <code>sliding</code> (default) or <code>fixed</code>.<br><ul><li>Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight.</li><li>Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window's counters.</li></ul>",options:{fixed:"Fixed",sliding:"Sliding"}},request_limits:{title:"Request Limits",subtitle:"Set one or more limits on the number of API requests allowed within a defined timeframe.",label:"Limit",label_index:"Limit {index}",request_number:"Request number",time_interval:"Time interval",interval_determiner:"Every",seconds:"Seconds"},start_with_a_use_case:"Start with a use case:",use_case_index:"Use case {index}",error_message:{label:"Error Message",code_placeholder:"Code Message",message_placeholder:"Error Message",help:"Set a custom error code and message to be returned when the rate limit is exceeded."},identifiers:{label:"Identifiers",options:{ip:"IP",credential:"Credential",consumer:"Consumer",service:"Service",header:"Header",path:"Path","consumer-group":"Consumer Group"}},redis:{title:"Configure your Redis",address_example:"e.g. localhost:6379"}},vfg:{labels:{on:"On",off:"Off"}}},qc={class:"form-field-wrapper"},Kc=t.defineComponent({__name:"FieldSwitch",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:o}){const r=e,i=o,{t:a}=Pe.createI18n("en-us",Qe),d=u=>u!=null&&r.schema.valueOn?u===r.schema.valueOn:u,l=u=>u!=null&&r.schema.valueOn?u?r.schema.valueOn:r.schema.valueOff:u,s=t.toRefs(r),{getFieldID:c,value:m,clearValidationErrors:f}=Te.useAbstractFields({model:s.model,schema:r.schema,formOptions:r.formOptions,formatValueToField:d,formatValueToModel:l,emitModelUpdated:u=>{i("modelUpdated",u.value,u.model)}});return n({clearValidationErrors:f}),(u,C)=>{const M=t.resolveComponent("KInputSwitch");return t.openBlock(),t.createElementBlock("div",qc,[t.createVNode(M,{id:t.unref(c)(e.schema),modelValue:t.unref(m),"onUpdate:modelValue":C[0]||(C[0]=g=>t.isRef(m)?m.value=g:null),autocomplete:e.schema.autocomplete,class:t.normalizeClass(e.schema.fieldClasses),disabled:e.disabled||void 0,label:t.unref(m)?e.schema.textOn||t.unref(a)("vfg.labels.on"):e.schema.textOff||t.unref(a)("vfg.labels.off"),name:e.schema.inputName},null,8,["id","modelValue","autocomplete","class","disabled","label","name"])])}}}),xc={class:"field-textarea"},zc={name:"FormGroup",components:Object.freeze(Object.defineProperty({__proto__:null,FieldAdvanced:ss,FieldArray:ic,FieldArrayCardContainer:xn,FieldArrayItem:zn,FieldArrayMultiItem:Yn,FieldAutoSuggest:Hn,FieldCheckbox:sc,FieldChecklist:_c,FieldInput:Gn,FieldKeyValuePairs:Vc,FieldLabel:Nc,FieldMetric:Wn,FieldMultiselect:Ac,FieldObject:Zn,FieldObjectAdvanced:Xn,FieldRadio:Qn,FieldSelect:so,FieldSelectionGroup:jc,FieldSwitch:Kc,FieldTextArea:U(t.defineComponent({__name:"FieldTextArea",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:o}){const r=e,i=o,a=t.toRefs(r),d=t.inject(G,void 0),{updateModelValue:l,getFieldID:s,clearValidationErrors:c,value:m}=Te.useAbstractFields({model:a.model,schema:r.schema,formOptions:r.formOptions,emitModelUpdated:u=>{i("modelUpdated",u.value,u.model)}});n({clearValidationErrors:c});const f=u=>{m.value=u,l(u,u)};return(u,C)=>{const M=t.resolveComponent("KTextArea");return t.openBlock(),t.createElementBlock("div",xc,[t.createVNode(M,t.mergeProps(u.$attrs,{id:t.unref(s)(e.schema),modelValue:t.unref(m),"onUpdate:modelValue":C[0]||(C[0]=g=>t.isRef(m)?m.value=g:null),class:e.schema.fieldClasses,disabled:e.disabled||void 0,help:e.hint||void 0,maxlength:e.schema.max,minlength:e.schema.min,name:e.schema.inputName,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,rows:e.schema.rows||2}),null,16,["id","modelValue","class","disabled","help","maxlength","minlength","name","placeholder","readonly","required","rows"]),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(d)),{schema:e.schema,update:f,value:t.unref(m)},null,8,["schema","value"]))])}}}),[["__scopeId","data-v-b6cec018"]])},Symbol.toStringTag,{value:"Module"})),mixins:[wn],inject:{"vfg-array-item-index":{default:void 0}},props:{vfg:{type:Object,required:!0},model:{type:Object,default:()=>{}},options:{type:Object,default:()=>{}},field:{type:Object,required:!0},errors:{type:Array,default(){return[]}}},emits:["validated","modelUpdated","refreshModel"],data(){return{child:t.ref()}},computed:{schema(){var n;if(!((n=this.field)!=null&&n.schema)||!Array.isArray(this.field.schema.fields))return this.field;const e=this["vfg-array-item-index"];return typeof e!="number"||Number.isNaN(e)?this.field:{...this.field,schema:{...this.field.schema,fields:this.field.schema.fields.map(o=>({...o,...o.id?{id:`${o.id}-${e}`}:void 0}))}}}},methods:{fieldTypeHasLabel(e){if(R(e.label))return!1;let n="";switch(e.type==="input"?n=e.inputType:n=e.type,n){case"button":case"submit":case"reset":return!1;default:return!0}},getFieldID(e){const n=O(this.options,"fieldIdPrefix","");return ht(e,n)},getTooltipId(e){return`${this.getFieldID(e)}-tooltip`},getFieldType(e){return"field-"+e.type},getButtonType(e){return O(e,"type","button")},onFieldValidated(e,n,o){this.$emit("validated",e,n,o)},buttonVisibility(e){return e.buttons&&e.buttons.length>0},buttonClickHandler(e,n,o){return e.onclick.call(this,this.model,n,o,this)},fieldHint(e){return D(e.hint)?e.hint.call(this,this.model,e,this):e.hint},fieldErrors(e){return this.errors.filter(n=>n.field.fieldName===e.fieldName).map(n=>n.error)},onRefreshModel(){this.$emit("refreshModel")},onModelUpdated(e,n){this.$emit("modelUpdated",e,n)},validate(e){return this.$refs.child.validate(e)},clearValidationErrors(){if(this.$refs.child)return this.$refs.child.clearValidationErrors()},formattedLabel(e){return e?e.replace(/^[cC]onfig\./,""):""}}},Yc=e=>(t.pushScopeId("data-v-49ca89d6"),e=e(),t.popScopeId(),e),Hc=["innerHTML"],Gc={class:"icon-wrapper"},Wc=["innerHTML"],Zc={key:0,class:"link-wrapper"},Jc=Yc(()=>t.createElementVNode("span",{class:"section-header"},"More info",-1)),Xc={class:"field-wrap"},Qc={key:0,class:"buttons"},em=["type","onClick","textContent"],tm=["innerHTML"],nm={key:2,class:"errors help-block"},om=["innerHTML"];function rm(e,n,o,r,i,a){const d=t.resolveComponent("KExternalLink"),l=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["form-group",e.getFieldRowClasses(o.field)])},[a.fieldTypeHasLabel(o.field)?(t.openBlock(),t.createBlock(l,{key:0,"aria-describedby":o.field.help?a.getTooltipId(o.field):void 0,class:t.normalizeClass([o.field.labelClasses,"form-group-label"]),for:a.getFieldID(o.field),info:!o.options.helpAsHtml&&o.field.help?o.field.help:void 0,"tooltip-attributes":o.field.help?{maxWidth:"300",placement:"top",tooltipId:a.getTooltipId(o.field)}:void 0},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",Gc,[t.createElementVNode("span",{innerHTML:a.formattedLabel(o.field.label)},null,8,Wc)]),o.field.link?(t.openBlock(),t.createElementBlock("div",Zc,[t.createVNode(d,{href:o.field.link},{default:t.withCtx(()=>[Jc]),_:1},8,["href"])])):t.createCommentVNode("",!0)]),_:2},[o.options.helpAsHtml&&o.field.help?{name:"tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:o.field.help},null,8,Hc)]),key:"0"}:void 0]),1032,["aria-describedby","class","for","info","tooltip-attributes"])):t.createCommentVNode("",!0),t.createElementVNode("div",Xc,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.getFieldType(o.field)),t.mergeProps(e.$attrs,{ref:"child",disabled:e.fieldDisabled(o.field)||null,"form-options":o.options,hint:o.field.hint&&a.getFieldType(o.field)==="field-input"?a.fieldHint(o.field):void 0,model:o.model,schema:a.schema,vfg:o.vfg,onModelUpdated:a.onModelUpdated,onRefreshModel:a.onRefreshModel,onValidated:a.onFieldValidated}),null,16,["disabled","form-options","hint","model","schema","vfg","onModelUpdated","onRefreshModel","onValidated"])),a.buttonVisibility(o.field)?(t.openBlock(),t.createElementBlock("div",Qc,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.field.buttons,(s,c)=>(t.openBlock(),t.createElementBlock("button",{key:c,class:t.normalizeClass(s.classes),type:a.getButtonType(s),onClick:m=>a.buttonClickHandler(s,o.field,m),textContent:t.toDisplayString(s.label)},null,10,em))),128))])):t.createCommentVNode("",!0)]),o.field.hint&&a.getFieldType(o.field)!=="field-input"?(t.openBlock(),t.createElementBlock("div",{key:1,class:"hint",innerHTML:a.fieldHint(o.field)},null,8,tm)):t.createCommentVNode("",!0),a.fieldErrors(o.field).length>0?(t.openBlock(),t.createElementBlock("div",nm,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.fieldErrors(o.field),(s,c)=>(t.openBlock(),t.createElementBlock("span",{key:c,innerHTML:s},null,8,om))),128))])):t.createCommentVNode("",!0)],2)}const am={name:"FormGenerator",components:{formGroup:U(zc,[["render",rm],["__scopeId","data-v-49ca89d6"]])},mixins:[wn],inject:{autofillSlot:{from:G,default:void 0}},provide(){var e;return{...!this.autofillSlot&&{[G]:(e=this.$slots)==null?void 0:e[ge]}}},props:{schema:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},options:{type:Object,default(){return{validateAfterLoad:!1,validateAfterChanged:!1,child:t.ref([]),fieldIdPrefix:"",validateAsync:!1,validationErrorClass:"error",validationSuccessClass:"",helpAsHtml:!1}}},multiple:{type:Boolean,default:!1},isNewModel:{type:Boolean,default:!1},tag:{type:String,default:"fieldset",validator:function(e){return e.length>0}}},emits:["validated","modelUpdated","refreshModel"],data(){return{vfg:this,errors:[],children:t.ref([]),collapseStates:{}}},computed:{fields(){const e=[];return this.schema&&this.schema.fields&&z(this.schema.fields,n=>{(!this.multiple||n.multi===!0)&&e.push(n)}),e},groups(){const e=[];return this.schema&&this.schema.groups&&z(this.schema.groups.slice(0),n=>{e.push(n)}),e}},watch:{model:{deep:!0,handler(e,n){n!==e&&e!=null&&this.$nextTick(()=>{this.options.validateAfterLoad===!0&&this.isNewModel!==!0?this.validate():this.clearValidationErrors()})}}},mounted(){this.$nextTick(()=>{this.model&&(this.options.validateAfterLoad===!0&&this.isNewModel!==!0?this.validate():this.clearValidationErrors())})},methods:{fieldVisible(e){return D(e.visible)?e.visible.call(this,this.model,e,this):R(e.visible)?!0:e.visible},onFieldValidated(e,n,o){this.errors=this.errors.filter(i=>i.field.fieldName!==o.schema.fieldName),!e&&n&&n.length>0&&z(n,i=>{this.errors.push({field:o.schema,error:i})});const r=this.errors.length===0;this.$emit("validated",r,this.errors,this)},onRefreshModel(){this.$emit("refreshModel")},onModelUpdated(e,n){this.$emit("modelUpdated",e,n)},validate(e=null){e===null&&(e=O(this.options,"validateAsync",!1)),this.clearValidationErrors();const n=[],o=[];z(this.$refs.children,i=>{D(i.validate)&&(n.push(i.$refs.child),o.push(i.$refs.child.validate(!0)))});const r=i=>{const a=[];z(i,(l,s)=>{Array.isArray(l)&&l.length>0&&z(l,c=>{a.push({field:n[s].schema,error:c})})}),this.errors=a;const d=a.length===0;return this.$emit("validated",d,a,this),e?a:d};return e?Promise.all(o).then(r):r(o)},clearValidationErrors(){this.errors.splice(0),z(this.$refs.children,e=>{e.clearValidationErrors()})}}},im={key:0,class:"vue-form-generator"},lm={key:0};function sm(e,n,o,r,i,a){const d=t.resolveComponent("form-group"),l=t.resolveComponent("KCollapse");return o.schema!=null?(t.openBlock(),t.createElementBlock("div",im,[o.schema.fields?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.tag),{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.fields,s=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:s.model},[a.fieldVisible(s)?(t.openBlock(),t.createBlock(d,{key:0,ref_for:!0,ref:"children",errors:i.errors,field:s,model:o.model,options:o.options,vfg:i.vfg,onModelUpdated:a.onModelUpdated,onRefreshModel:a.onRefreshModel,onValidated:a.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:1})):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.groups,(s,c)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:`group-${c}`},[s.collapsible!==void 0&&s.collapsible!==!1?(t.openBlock(),t.createBlock(l,{key:0,class:"root-level-collapse","model-value":!1,title:s.collapsible.title},t.createSlots({default:t.withCtx(()=>{var m,f,u,C;return[(m=s.slots)!=null&&m.beforeContent?t.renderSlot(e.$slots,(f=s.slots)==null?void 0:f.beforeContent,{key:0}):t.createCommentVNode("",!0),s.fields.length===0&&((u=s.slots)!=null&&u.emptyState)?t.renderSlot(e.$slots,(C=s.slots)==null?void 0:C.emptyState,{key:1}):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.tag),{key:2,class:t.normalizeClass(e.getFieldRowClasses(s))},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.fields,M=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:M.model},[a.fieldVisible(M)?(t.openBlock(),t.createBlock(d,{key:0,ref_for:!0,ref:"children",errors:i.errors,field:M,model:o.model,options:o.options,vfg:i.vfg,onModelUpdated:a.onModelUpdated,onRefreshModel:a.onRefreshModel,onValidated:a.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"])),s.collapsible!==!0&&s.collapsible.nestedCollapsible&&s.collapsible.nestedCollapsible.fields.length>0?(t.openBlock(),t.createBlock(l,{key:3,class:"nested-collapse","model-value":i.collapseStates[`group-${c}-nested`]??!0,"trigger-alignment":"leading","trigger-label":i.collapseStates[`group-${c}-nested`]??!0?s.collapsible.nestedCollapsible.triggerLabel.expand:s.collapsible.nestedCollapsible.triggerLabel.collapse,"onUpdate:modelValue":M=>i.collapseStates[`group-${c}-nested`]=M},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.tag),{class:t.normalizeClass(e.getFieldRowClasses(s))},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.collapsible.nestedCollapsible.fields,M=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:M.model},[a.fieldVisible(M)?(t.openBlock(),t.createBlock(d,{key:0,ref_for:!0,ref:"children",errors:i.errors,field:M,model:o.model,options:o.options,vfg:i.vfg,onModelUpdated:a.onModelUpdated,onRefreshModel:a.onRefreshModel,onValidated:a.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"]))]),_:2},1032,["model-value","trigger-label","onUpdate:modelValue"])):t.createCommentVNode("",!0)]}),_:2},[s.collapsible.description?{name:"visible-content",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(s.collapsible.description),1)]),key:"0"}:void 0]),1032,["title"])):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.tag),{key:1,class:t.normalizeClass(e.getFieldRowClasses(s))},{default:t.withCtx(()=>[s.legend?(t.openBlock(),t.createElementBlock("legend",lm,t.toDisplayString(s.legend),1)):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.fields,m=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:m.model},[a.fieldVisible(m)?(t.openBlock(),t.createBlock(d,{key:0,ref_for:!0,ref:"children",errors:i.errors,field:m,model:o.model,options:o.options,vfg:i.vfg,onModelUpdated:a.onModelUpdated,onRefreshModel:a.onRefreshModel,onValidated:a.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"]))],64))),128))])):t.createCommentVNode("",!0)}const Y=U(am,[["render",sm]]),mo=new Set(["config-client_id","config-client_secret","config-issuer"]),fo=new Set(["config-scopes_claim","config-scopes_required","config-audience_claim","config-audience_required","config-roles_claim","config-roles_required","config-groups_claim","config-groups_required","config-authenticated_groups_claim"]),dm={name:"OIDCForm",components:{VueFormGenerator:Y},provide(){var e;return{[G]:(e=this.$slots)==null?void 0:e[ge]}},props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},data(){return{init:!1,authMethods:[],sessionManagement:!1,globalFields:null,commonFieldsSchema:null,authFieldsSchema:null,advancedFieldsSchema:{fields:[]},advancedFields:null,tabs:[{hash:"#common",title:"Common"},{hash:"#authorization",title:"Authorization"},{hash:"#advanced",title:"Advanced"}]}},computed:{displayForm(){return this.formModel.id&&this.isEditing||!this.isEditing}},watch:{formModel:{handler:function(){this.oidcSetup()}}},mounted(){this.oidcSetup()},methods:{oidcSetup(){var e;if(!this.init){this.init=!0,this.globalFields={fields:this.formSchema.fields.filter(o=>!o.model.startsWith("config")&&o.model!=="tags")};const n=this.formSchema.fields.reduce((o,r)=>(o[r.model]=r,o),{});this.commonFieldsSchema={fields:Array.from(mo).reduce((o,r)=>(n[r]&&o.push(n[r]),o),[])},this.authFieldsSchema={fields:Array.from(fo).reduce((o,r)=>(n[r]&&o.push(n[r]),o),[])},this.advancedFieldsSchema={fields:this.formSchema.fields.filter(o=>o.model.startsWith("config")&&o.model!=="config-auth_methods"&&!mo.has(o.model)&&!fo.has(o.model)||o.model==="tags").reduce((o,r)=>{var i,a,d,l;switch(r.model){case"config-client_jwk":{if(Array.isArray((a=(i=r.items)==null?void 0:i.schema)==null?void 0:a.fields))for(const s of r.items.schema.fields)s.label=s.model;o.push({...r,link:"https://docs.konghq.com/hub/kong-inc/openid-connect/#jwk-record",newElementButtonLabel:"+ Add Client JWK",...Array.isArray((l=(d=r.items)==null?void 0:d.schema)==null?void 0:l.fields)&&r.items.schema.fields.map(s=>({...s,label:s.model}))});break}case"config-session_redis_cluster_nodes":{o.push({...r,link:"https://docs.konghq.com/hub/kong-inc/openid-connect/#host-record",newElementButtonLabel:"+ Add Cluster Node"});break}default:o.push(r)}return o},[])},this.sessionManagement=this.isEditing?this.formModel["config-auth_methods"].includes("session"):!1,this.authMethods=[{label:"Authorization Code Flow",value:"authorization_code",hint:"authorization code flow",prop:this.isEditing?this.formModel["config-auth_methods"].includes("authorization_code"):!1},{label:"Bearer Access Token",value:"bearer",hint:"JWT access token verification",prop:this.isEditing?this.formModel["config-auth_methods"].includes("bearer"):!1},{label:"Client Credentials Grant",value:"client_credentials",hint:"OAuth client credentials grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("client_credentials"):!1},{label:"Passwords Grant",value:"password",hint:"OAuth legacy password grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("password"):!1},{label:"Introspection",value:"introspection",hint:"OAuth introspection",prop:this.isEditing?this.formModel["config-auth_methods"].includes("introspection"):!1},{label:"UserInfo",value:"userinfo",hint:"OpenID Connect user info endpoint authentication",prop:this.isEditing?this.formModel["config-auth_methods"].includes("userinfo"):!1},{label:"Kong OAuth",value:"kong_oauth2",hint:"Kong OAuth plugin issued tokens verification",prop:this.isEditing?this.formModel["config-auth_methods"].includes("kong_oauth2"):!1},{label:"Refresh Token",value:"refresh_token",hint:"OAuth refresh token grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("refresh_token"):!1}];for(const o of[this.commonFieldsSchema,this.authFieldsSchema,this.advancedFieldsSchema])for(const r of o.fields){const i=(e=n[r.model])==null?void 0:e.help;r.help===void 0&&typeof i=="string"&&(r.help=i)}}},getAuthMethodsValue(e,n){const o=[];for(let r=0;r<this.authMethods.length;r++)this.authMethods[r].prop&&this.authMethods[r].value!==e&&o.push(this.authMethods[r].value);return this.sessionManagement&&e&&o.push("session"),n&&(e?o.push(e):o.push("session")),o},handleUpdate(e,n){this.formModel["config-auth_methods"]=this.getAuthMethodsValue(n,e),this.onModelUpdated()}}},Ve=e=>(t.pushScopeId("data-v-bb72c68e"),e=e(),t.popScopeId(),e),cm={class:"general-settings"},mm={class:"link-wrapper"},fm=Ve(()=>t.createElementVNode("span",{class:"section-header"},"Common Configuration Settings",-1)),um=Ve(()=>t.createElementVNode("div",{class:"description"}," Parameters for enabling the OpenID Connect plugin. Set these parameters before adding authorization, authentication, or other advanced configuration details. ",-1)),hm={class:"auth-method-container"},pm={class:"general-settings"},gm={class:"link-wrapper"},ym=Ve(()=>t.createElementVNode("span",{class:"section-header"},"Authorization Configuration Settings",-1)),bm=Ve(()=>t.createElementVNode("div",{class:"description"}," Parameters for setting up claims-based authorization. ",-1)),_m={class:"general-settings"},wm={class:"link-wrapper"},Em=Ve(()=>t.createElementVNode("span",{class:"section-header"},"Advanced Configuration Settings",-1)),Cm=Ve(()=>t.createElementVNode("div",{class:"description"}," Advanced parameters for manually configuring the OpenID Connect plugin. ",-1));function km(e,n,o,r,i,a){const d=t.resolveComponent("VueFormGenerator"),l=t.resolveComponent("KExternalLink"),s=t.resolveComponent("KLabel"),c=t.resolveComponent("KCheckbox"),m=t.resolveComponent("KInputSwitch"),f=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",null,[o.formModel.id&&o.isEditing||!o.isEditing?(t.openBlock(),t.createBlock(d,{key:0,class:"global-fields",model:o.formModel,options:o.formOptions,schema:i.globalFields,onModelUpdated:o.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(f,{tabs:i.tabs},{common:t.withCtx(()=>[t.createElementVNode("div",cm,[t.createElementVNode("div",mm,[t.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/#important-configuration-parameters"},{default:t.withCtx(()=>[fm]),_:1})]),um,a.displayForm?(t.openBlock(),t.createBlock(d,{key:0,model:o.formModel,options:o.formOptions,schema:i.commonFieldsSchema,onModelUpdated:o.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(s,null,{default:t.withCtx(()=>[t.createTextVNode("Auth Methods")]),_:1}),t.createElementVNode("div",hm,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.authMethods,u=>(t.openBlock(),t.createElementBlock("div",{key:u.value,class:"auth-method"},[t.createVNode(c,{modelValue:u.prop,"onUpdate:modelValue":C=>u.prop=C,onChange:C=>a.handleUpdate(C,u.value)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(u.label),1)]),_:2},1032,["modelValue","onUpdate:modelValue","onChange"])]))),128))]),t.createVNode(m,{modelValue:i.sessionManagement,"onUpdate:modelValue":n[0]||(n[0]=u=>i.sessionManagement=u),label:"Enable Session Management",onChange:a.handleUpdate},null,8,["modelValue","onChange"])])]),authorization:t.withCtx(()=>[t.createElementVNode("div",pm,[t.createElementVNode("div",gm,[t.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/#authorization"},{default:t.withCtx(()=>[ym]),_:1})]),bm,a.displayForm?(t.openBlock(),t.createBlock(d,{key:0,model:o.formModel,options:o.formOptions,schema:i.authFieldsSchema,onModelUpdated:o.onModelUpdated},{"autofill-provider":t.withCtx(u=>[t.renderSlot(e.$slots,"autofill-provider",t.normalizeProps(t.guardReactiveProps(u)),void 0,!0)]),_:3},8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),advanced:t.withCtx(()=>[t.createElementVNode("div",_m,[t.createElementVNode("div",wm,[t.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/"},{default:t.withCtx(()=>[Em]),_:1})]),Cm,a.displayForm?(t.openBlock(),t.createBlock(d,{key:0,model:o.formModel,options:o.formOptions,schema:i.advancedFieldsSchema,onModelUpdated:o.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),_:3},8,["tabs"])])}const Sm=U(dm,[["render",km],["__scopeId","data-v-bb72c68e"]]),Mm=U(t.defineComponent({__name:"PostFunction",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){var d;t.provide(G,(d=t.useSlots())==null?void 0:d[ge]);const{t:n,te:o}=Pe.createI18n("en-us",Qe),r=e,i=t.computed(()=>r.formModel.id&&r.isEditing||!r.isEditing),a=t.computed(()=>{const l=r.formSchema;return l.fields.map(s=>{const c=`post-function.${s.model}`;return s.hint=o(`${c}.hint`)&&n(`${c}.hint`)||s.hint,s.help=o(`${c}.help`)&&n(`${c}.help`)||s.help,s.newElementButtonLabel=o(`${c}.newElementButtonLabel`)&&n(`${c}.newElementButtonLabel`)||s.newElementButtonLabel,s.model!=="tags"&&(s.valueType==="array"||s.type==="array")&&(s.type="array",s.valueArrayType="array",s.itemContainerComponent="FieldArrayItem",s.fieldClasses="post-function-array-item-container",s.fieldItemsClasses="post-function-array-item",s.inputAttributes={...s.inputAttributes,type:"textarea"}),s}),l});return(l,s)=>i.value?(t.openBlock(),t.createBlock(Y,{key:0,model:e.formModel,options:e.formOptions,schema:a.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-f54f37ae"]]),Tm=U(t.defineComponent({__name:"ExitTransformer",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){var d;t.provide(G,(d=t.useSlots())==null?void 0:d[ge]);const{t:n,te:o}=Pe.createI18n("en-us",Qe),r=e,i=t.computed(()=>r.formModel.id&&r.isEditing||!r.isEditing),a=t.computed(()=>{const l=r.formSchema;return l.fields.map(s=>{const c=`exit-transformer.${s.model}`;return s.hint=o(`${c}.hint`)&&n(`${c}.hint`)||s.hint,s.help=o(`${c}.help`)&&n(`${c}.help`)||s.help,s.newElementButtonLabel=o(`${c}.newElementButtonLabel`)&&n(`${c}.newElementButtonLabel`)||s.newElementButtonLabel,s.model!=="tags"&&(s.valueType==="array"||s.type==="array")&&(s.type="array",s.valueArrayType="array",s.itemContainerComponent="FieldArrayItem",s.fieldClasses="exit-transformer-array-item-container",s.fieldItemsClasses="exit-transformer-array-item",s.inputAttributes={...s.inputAttributes,type:"textarea"}),s}),l});return(l,s)=>i.value?(t.openBlock(),t.createBlock(Y,{key:0,model:e.formModel,options:e.formOptions,schema:a.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-0d5c541f"]]),Vm={fields:[{inputType:"text",label:"Config.Account Email",model:"config-account_email",required:!0,type:"input"},{inputType:"text",label:"Config.Account Key.Key Id",model:"config-account_key-key_id",required:!0,type:"input"},{type:"input",inputType:"text",valueType:"string",label:"Config.Account Key.Key Set",model:"config-account_key-key_set",order:0,disabled:!1},{type:"checkbox",default:!1,valueType:"boolean",label:"Config.Allow Any Domain",model:"config-allow_any_domain",order:0,disabled:!1}]},Nm={fields:[{type:"input",default:"",inputType:"text",valueType:"string",model:"config-api_uri",label:"Config.Api Uri",order:0,disabled:!1},{type:"checkbox",default:!1,valueType:"boolean",model:"config-tos_accepted",label:"Config.Tos Accepted",order:0,disabled:!1}]},Bm={fields:[{type:"input",default:"",inputType:"text",valueType:"string",model:"config-api_uri",label:"Config.Api Uri",order:0,disabled:!1},{type:"input",inputType:"text",valueType:"string",model:"config-eab_hmac_key",label:"Config.Eab Hmac Key",order:0,disabled:!1},{type:"input",inputType:"text",valueType:"string",model:"config-eab_kid",label:"Config.Eab Kid",order:0,disabled:!1}]},Ee=e=>(t.pushScopeId("data-v-bb5a3a33"),e=e(),t.popScopeId(),e),Im={class:"general-settings"},Am=Ee(()=>t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"General Configuration Settings")],-1)),Om=Ee(()=>t.createElementVNode("div",{class:"description"}," Parameters for enabling the ACME plugin. ",-1)),Fm=Ee(()=>t.createElementVNode("hr",null,null,-1)),$m={class:"sub-form"},Um={class:"general-settings"},Lm=Ee(()=>t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"Storage Configuration Settings")],-1)),Dm=Ee(()=>t.createElementVNode("div",{class:"description"}," Parameters for setting up storage. ",-1)),vm={class:"sub-form"},Pm={class:"general-settings"},Rm=Ee(()=>t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"Advanced Configuration Settings")],-1)),jm=Ee(()=>t.createElementVNode("div",{class:"description"}," Advanced parameters for manually configuring the ACME plugin. ",-1)),qm=U(t.defineComponent({__name:"ACMEForm",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){var B;t.provide(G,(B=t.useSlots())==null?void 0:B[ge]);const n=e,o=t.ref("zeroSsl"),r=t.ref("shm"),i=t.computed(()=>{var b;const h={};if((b=n.formSchema)!=null&&b.fields)for(const V of n.formSchema.fields)h[V.model]=V;return h}),a=t.computed(()=>{var b;const h=ie(Vm);for(const V of h.fields){const I=(b=i.value[V.model])==null?void 0:b.help;V.help===void 0&&typeof I=="string"&&(V.help=I)}return h}),d=t.computed(()=>{var b;const h=ie(Nm);for(const V of h.fields){const I=(b=i.value[V.model])==null?void 0:b.help;V.help===void 0&&typeof I=="string"&&(V.help=I)}return h}),l=t.computed(()=>{var b;const h=ie(Bm);for(const V of h.fields){const I=(b=i.value[V.model])==null?void 0:b.help;V.help===void 0&&typeof I=="string"&&(V.help=I)}return h}),s=t.computed(()=>({fields:n.formSchema.fields.filter(h=>!h.model.startsWith("config")&&h.model!=="tags")})),c=t.computed(()=>({fields:a.value.fields.filter(b=>!d.value.fields.some(V=>V.model===b.model)&&!l.value.fields.some(V=>V.model===b.model))})),m=t.computed(()=>({fields:n.formSchema.fields.filter(b=>b.model.startsWith("config-storage")&&!b.model.startsWith("config-storage_config-consul")&&!b.model.startsWith("config-storage_config-redis")&&!b.model.startsWith("config-storage_config-shm")&&!b.model.startsWith("config-storage_config-vault"))})),f=t.computed(()=>({fields:n.formSchema.fields.filter(b=>b.model.startsWith("config-storage_config-consul"))})),u=t.computed(()=>({fields:n.formSchema.fields.filter(b=>b.model.startsWith("config-storage_config-redis"))})),C=t.computed(()=>({fields:n.formSchema.fields.filter(b=>b.model.startsWith("config-storage_config-shm"))})),M=t.computed(()=>({fields:n.formSchema.fields.filter(b=>b.model.startsWith("config-storage_config-vault"))})),g=t.computed(()=>({fields:n.formSchema.fields.filter(h=>h.model.startsWith("config")&&!c.value.fields.filter(b=>b.model===h.model).length&&!m.value.fields.filter(b=>b.model===h.model).length||h.model==="tags")})),E=t.computed(()=>n.formModel.id&&n.isEditing||!n.isEditing),w=[{hash:"#general",title:"General"},{hash:"#storage",title:"Storage"},{hash:"#advanced",title:"Advanced"}],N=[{label:"Lets Encrypt",value:"letsEncrypt"},{label:"Zero SSL",value:"zeroSsl",selected:!0},{label:"Other",value:"other"}];t.onMounted(()=>{o.value==="zeroSsl"&&(n.formModel["config-api_uri"]="https://acme.zerossl.com/v2/DV90")});const _=h=>{o.value=h.value,(h.value==="zeroSsl"||h.value==="other")&&(h.value==="zeroSsl"?n.formModel["config-api_uri"]="https://acme.zerossl.com/v2/DV90":n.formModel["config-api_uri"]="https://acme.example.com/",n.formModel["config-tos_accepted"]=!1),h.value==="letsEncrypt"&&(n.formModel["config-api_uri"]="https://acme-v02.api.letsencrypt.org/directory",n.formModel["config-eab_hmac_key"]="",n.formModel["config-eab_kid"]=""),n.onModelUpdated()},T=(h,b)=>{b==="config-storage"&&(r.value=h),n.onModelUpdated()};return(h,b)=>{const V=t.resolveComponent("KSelect"),I=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",null,[e.formModel.id&&e.isEditing||!e.isEditing?(t.openBlock(),t.createBlock(Y,{key:0,class:"global-fields",model:e.formModel,options:e.formOptions,schema:s.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(I,{tabs:w},{general:t.withCtx(()=>[t.createElementVNode("div",Im,[Am,Om,E.value?(t.openBlock(),t.createBlock(Y,{key:0,model:e.formModel,options:e.formOptions,schema:c.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),Fm,t.createVNode(V,{class:"issuer-select",items:N,label:"Issuer",onChange:_}),t.createElementVNode("div",$m,[o.value==="letsEncrypt"?(t.openBlock(),t.createBlock(Y,{key:0,model:e.formModel,options:e.formOptions,schema:d.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),o.value==="zeroSsl"||o.value==="other"?(t.openBlock(),t.createBlock(Y,{key:1,model:e.formModel,options:e.formOptions,schema:l.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])])]),storage:t.withCtx(()=>[t.createElementVNode("div",Um,[Lm,Dm,E.value?(t.openBlock(),t.createBlock(Y,{key:0,model:e.formModel,options:e.formOptions,schema:m.value,onModelUpdated:T},null,8,["model","options","schema"])):t.createCommentVNode("",!0),t.createElementVNode("div",vm,[r.value==="consul"?(t.openBlock(),t.createBlock(Y,{key:0,model:e.formModel,options:e.formOptions,schema:f.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),r.value==="redis"?(t.openBlock(),t.createBlock(Y,{key:1,model:e.formModel,options:e.formOptions,schema:u.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),r.value==="shm"?(t.openBlock(),t.createBlock(Y,{key:2,model:e.formModel,options:e.formOptions,schema:C.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),r.value==="vault"?(t.openBlock(),t.createBlock(Y,{key:3,model:e.formModel,options:e.formOptions,schema:M.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])])]),advanced:t.withCtx(()=>[t.createElementVNode("div",Pm,[Rm,jm,E.value?(t.openBlock(),t.createBlock(Y,{key:0,model:e.formModel,options:e.formOptions,schema:g.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),_:1})])}}}),[["__scopeId","data-v-bb5a3a33"]]),uo=e=>(t.pushScopeId("data-v-3840f6a9"),e=e(),t.popScopeId(),e),Km={class:"rla-form-basic-fields"},xm={class:"rla-form-request-limits-subtitle"},zm={class:"rla-form-request-limits-content"},Ym={class:"rla-form-window-type"},Hm=["innerHTML"],Gm={class:"rla-form-window-type-radios"},Wm={class:"rla-form-request-limits-items"},Zm={class:"rla-form-request-limits-row"},Jm=["id"],Xm={class:"rla-form-request-limits-actions"},Qm={key:0,class:"rla-form-request-limits-examples"},ef={class:"rla-form-request-limits-examples-badges"},tf=uo(()=>t.createElementVNode("br",null,null,-1)),nf=["innerHTML"],of={id:"rla-form-error-legend",class:"rla-form-error-inputs"},rf=uo(()=>t.createElementVNode("div",null,":",-1)),af=Object.freeze(Object.defineProperty({__proto__:null,ACMEForm:qm,ExitTransformer:Tm,OIDCForm:Sm,PostFunction:Mm,RLAForm:U(t.defineComponent({__name:"RLAForm",props:{formSchema:{},formModel:{},formOptions:{},onModelUpdated:{type:Function},isEditing:{type:Boolean}},setup(e){var I;t.provide(G,(I=t.useSlots())==null?void 0:I[ge]);const n={fixed:[{label:"500 requests every hour",description:"A fixed limit of 500 requests per hour resetting sharply on the hour, ensuring no user can exceed this limit.",config:{limit:500,window_size:3600}},{label:"200 requests every 30 minutes",description:"Users are allowed 200 requests per 30 minutes, resetting exactly on the 30 minute mark with no carryover of unused limits.",config:{limit:200,window_size:1800}},{label:"500 requests every day",description:"A strict limit of 5000 requests per day resetting promptly at midnight, preventing any burst traffic or inconsistent user experiences.",config:{limit:500,window_size:86400}}],sliding:[{label:"100 requests every hour",description:"Maximum of 100 requests every rolling hour, continuously adjusting the count over the course of the hour. No hard limit or known reset.",config:{limit:100,window_size:3600}},{label:"300 requests every 30 minutes",description:"Each user can make up to 300 requests in any rolling 30 minute period, with older requests dropping off as new requests are made.",config:{limit:300,window_size:1800}},{label:"500 requests every hour",description:`Each user is allowed 500 requests per hour.
|
|
1
|
+
(function(O,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("@kong/icons"),require("@kong-ui-public/i18n")):typeof define=="function"&&define.amd?define(["exports","vue","@kong/icons","@kong-ui-public/i18n"],t):(O=typeof globalThis<"u"?globalThis:O||self,t(O["kong-ui-public-forms"]={},O.Vue,O.KongIcons,O["kong-ui-public-i18n"]))})(this,function(O,t,oe,Ue){"use strict";function ft(e,n){for(var o=-1,r=e==null?0:e.length;++o<r&&n(e[o],o,e)!==!1;);return e}function Hn(e){return function(n,o,r){for(var i=-1,a=Object(n),d=r(n),l=d.length;l--;){var s=d[++i];if(o(a[s],s,a)===!1)break}return n}}var Gn=Hn();function Wn(e,n){for(var o=-1,r=Array(e);++o<e;)r[o]=n(o);return r}var pt=typeof global=="object"&&global&&global.Object===Object&&global,Zn=typeof self=="object"&&self&&self.Object===Object&&self,Z=pt||Zn||Function("return this")(),re=Z.Symbol,gt=Object.prototype,Jn=gt.hasOwnProperty,Xn=gt.toString,Ne=re?re.toStringTag:void 0;function Qn(e){var n=Jn.call(e,Ne),o=e[Ne];try{e[Ne]=void 0;var r=!0}catch{}var i=Xn.call(e);return r&&(n?e[Ne]=o:delete e[Ne]),i}var eo=Object.prototype,to=eo.toString;function no(e){return to.call(e)}var oo="[object Null]",ro="[object Undefined]",yt=re?re.toStringTag:void 0;function ae(e){return e==null?e===void 0?ro:oo:yt&&yt in Object(e)?Qn(e):no(e)}function ie(e){return e!=null&&typeof e=="object"}var ao="[object Arguments]";function bt(e){return ie(e)&&ae(e)==ao}var _t=Object.prototype,io=_t.hasOwnProperty,lo=_t.propertyIsEnumerable,so=bt(function(){return arguments}())?bt:function(e){return ie(e)&&io.call(e,"callee")&&!lo.call(e,"callee")},le=Array.isArray;function co(){return!1}var kt=typeof O=="object"&&O&&!O.nodeType&&O,wt=kt&&typeof module=="object"&&module&&!module.nodeType&&module,mo=wt&&wt.exports===kt,Ct=mo?Z.Buffer:void 0,ho=Ct?Ct.isBuffer:void 0,Et=ho||co,uo=9007199254740991,fo=/^(?:0|[1-9]\d*)$/;function St(e,n){var o=typeof e;return n=n??uo,!!n&&(o=="number"||o!="symbol"&&fo.test(e))&&e>-1&&e%1==0&&e<n}var po=9007199254740991;function Mt(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=po}var go="[object Arguments]",yo="[object Array]",bo="[object Boolean]",_o="[object Date]",ko="[object Error]",wo="[object Function]",Co="[object Map]",Eo="[object Number]",So="[object Object]",Mo="[object RegExp]",Vo="[object Set]",To="[object String]",No="[object WeakMap]",Bo="[object ArrayBuffer]",Io="[object DataView]",Ao="[object Float32Array]",Oo="[object Float64Array]",Fo="[object Int8Array]",$o="[object Int16Array]",Uo="[object Int32Array]",Lo="[object Uint8Array]",jo="[object Uint8ClampedArray]",Do="[object Uint16Array]",vo="[object Uint32Array]",U={};U[Ao]=U[Oo]=U[Fo]=U[$o]=U[Uo]=U[Lo]=U[jo]=U[Do]=U[vo]=!0,U[go]=U[yo]=U[Bo]=U[bo]=U[Io]=U[_o]=U[ko]=U[wo]=U[Co]=U[Eo]=U[So]=U[Mo]=U[Vo]=U[To]=U[No]=!1;function qo(e){return ie(e)&&Mt(e.length)&&!!U[ae(e)]}function We(e){return function(n){return e(n)}}var Vt=typeof O=="object"&&O&&!O.nodeType&&O,Be=Vt&&typeof module=="object"&&module&&!module.nodeType&&module,Ro=Be&&Be.exports===Vt,Ze=Ro&&pt.process,Ce=function(){try{var e=Be&&Be.require&&Be.require("util").types;return e||Ze&&Ze.binding&&Ze.binding("util")}catch{}}(),Tt=Ce&&Ce.isTypedArray,Po=Tt?We(Tt):qo,Ko=Object.prototype,xo=Ko.hasOwnProperty;function Nt(e,n){var o=le(e),r=!o&&so(e),i=!o&&!r&&Et(e),a=!o&&!r&&!i&&Po(e),d=o||r||i||a,l=d?Wn(e.length,String):[],s=l.length;for(var c in e)(n||xo.call(e,c))&&!(d&&(c=="length"||i&&(c=="offset"||c=="parent")||a&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||St(c,s)))&&l.push(c);return l}var zo=Object.prototype;function Je(e){var n=e&&e.constructor,o=typeof n=="function"&&n.prototype||zo;return e===o}function Bt(e,n){return function(o){return e(n(o))}}var Yo=Bt(Object.keys,Object),Ho=Object.prototype,Go=Ho.hasOwnProperty;function Wo(e){if(!Je(e))return Yo(e);var n=[];for(var o in Object(e))Go.call(e,o)&&o!="constructor"&&n.push(o);return n}function H(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}var Zo="[object AsyncFunction]",Jo="[object Function]",Xo="[object GeneratorFunction]",Qo="[object Proxy]";function L(e){if(!H(e))return!1;var n=ae(e);return n==Jo||n==Xo||n==Zo||n==Qo}function Le(e){return e!=null&&Mt(e.length)&&!L(e)}function je(e){return Le(e)?Nt(e):Wo(e)}function er(e,n){return e&&Gn(e,n,je)}function tr(e,n){return function(o,r){if(o==null)return o;if(!Le(o))return e(o,r);for(var i=o.length,a=-1,d=Object(o);++a<i&&r(d[a],a,d)!==!1;);return o}}var nr=tr(er);function Xe(e){return e}function or(e){return typeof e=="function"?e:Xe}function x(e,n){var o=le(e)?ft:nr;return o(e,or(n))}var rr="[object Symbol]";function De(e){return typeof e=="symbol"||ie(e)&&ae(e)==rr}var ar=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ir=/^\w*$/;function lr(e,n){if(le(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||De(e)?!0:ir.test(e)||!ar.test(e)||n!=null&&e in Object(n)}var Qe=Z["__core-js_shared__"],It=function(){var e=/[^.]+$/.exec(Qe&&Qe.keys&&Qe.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function sr(e){return!!It&&It in e}var dr=Function.prototype,cr=dr.toString;function he(e){if(e!=null){try{return cr.call(e)}catch{}try{return e+""}catch{}}return""}var mr=/[\\^$.*+?()[\]{}|]/g,hr=/^\[object .+?Constructor\]$/,ur=Function.prototype,fr=Object.prototype,pr=ur.toString,gr=fr.hasOwnProperty,yr=RegExp("^"+pr.call(gr).replace(mr,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function br(e){if(!H(e)||sr(e))return!1;var n=L(e)?yr:hr;return n.test(he(e))}function _r(e,n){return e==null?void 0:e[n]}function ue(e,n){var o=_r(e,n);return br(o)?o:void 0}var Ie=ue(Object,"create");function kr(){this.__data__=Ie?Ie(null):{},this.size=0}function wr(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var Cr="__lodash_hash_undefined__",Er=Object.prototype,Sr=Er.hasOwnProperty;function Mr(e){var n=this.__data__;if(Ie){var o=n[e];return o===Cr?void 0:o}return Sr.call(n,e)?n[e]:void 0}var Vr=Object.prototype,Tr=Vr.hasOwnProperty;function Nr(e){var n=this.__data__;return Ie?n[e]!==void 0:Tr.call(n,e)}var Br="__lodash_hash_undefined__";function Ir(e,n){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=Ie&&n===void 0?Br:n,this}function fe(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}fe.prototype.clear=kr,fe.prototype.delete=wr,fe.prototype.get=Mr,fe.prototype.has=Nr,fe.prototype.set=Ir;function Ar(){this.__data__=[],this.size=0}function ve(e,n){return e===n||e!==e&&n!==n}function qe(e,n){for(var o=e.length;o--;)if(ve(e[o][0],n))return o;return-1}var Or=Array.prototype,Fr=Or.splice;function $r(e){var n=this.__data__,o=qe(n,e);if(o<0)return!1;var r=n.length-1;return o==r?n.pop():Fr.call(n,o,1),--this.size,!0}function Ur(e){var n=this.__data__,o=qe(n,e);return o<0?void 0:n[o][1]}function Lr(e){return qe(this.__data__,e)>-1}function jr(e,n){var o=this.__data__,r=qe(o,e);return r<0?(++this.size,o.push([e,n])):o[r][1]=n,this}function Q(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}Q.prototype.clear=Ar,Q.prototype.delete=$r,Q.prototype.get=Ur,Q.prototype.has=Lr,Q.prototype.set=jr;var Ae=ue(Z,"Map");function Dr(){this.size=0,this.__data__={hash:new fe,map:new(Ae||Q),string:new fe}}function vr(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function Re(e,n){var o=e.__data__;return vr(n)?o[typeof n=="string"?"string":"hash"]:o.map}function qr(e){var n=Re(this,e).delete(e);return this.size-=n?1:0,n}function Rr(e){return Re(this,e).get(e)}function Pr(e){return Re(this,e).has(e)}function Kr(e,n){var o=Re(this,e),r=o.size;return o.set(e,n),this.size+=o.size==r?0:1,this}function ee(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}ee.prototype.clear=Dr,ee.prototype.delete=qr,ee.prototype.get=Rr,ee.prototype.has=Pr,ee.prototype.set=Kr;var xr="Expected a function";function et(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(xr);var o=function(){var r=arguments,i=n?n.apply(this,r):r[0],a=o.cache;if(a.has(i))return a.get(i);var d=e.apply(this,r);return o.cache=a.set(i,d)||a,d};return o.cache=new(et.Cache||ee),o}et.Cache=ee;var zr=500;function Yr(e){var n=et(e,function(r){return o.size===zr&&o.clear(),r}),o=n.cache;return n}var Hr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Gr=/\\(\\)?/g,Wr=Yr(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(Hr,function(o,r,i,a){n.push(i?a.replace(Gr,"$1"):r||o)}),n});function Zr(e,n){for(var o=-1,r=e==null?0:e.length,i=Array(r);++o<r;)i[o]=n(e[o],o,e);return i}var Jr=1/0,At=re?re.prototype:void 0,Ot=At?At.toString:void 0;function Ft(e){if(typeof e=="string")return e;if(le(e))return Zr(e,Ft)+"";if(De(e))return Ot?Ot.call(e):"";var n=e+"";return n=="0"&&1/e==-Jr?"-0":n}function $t(e){return e==null?"":Ft(e)}function Xr(e,n){return le(e)?e:lr(e,n)?[e]:Wr($t(e))}var Qr=1/0;function ea(e){if(typeof e=="string"||De(e))return e;var n=e+"";return n=="0"&&1/e==-Qr?"-0":n}function ta(e,n){n=Xr(n,e);for(var o=0,r=n.length;e!=null&&o<r;)e=e[ea(n[o++])];return o&&o==r?e:void 0}function F(e,n,o){var r=e==null?void 0:ta(e,n);return r===void 0?o:r}function q(e){return e==null}const se="kong-ui-forms-api",pe="autofill",G="autofillSlot";function na(){this.__data__=new Q,this.size=0}function oa(e){var n=this.__data__,o=n.delete(e);return this.size=n.size,o}function ra(e){return this.__data__.get(e)}function aa(e){return this.__data__.has(e)}var ia=200;function la(e,n){var o=this.__data__;if(o instanceof Q){var r=o.__data__;if(!Ae||r.length<ia-1)return r.push([e,n]),this.size=++o.size,this;o=this.__data__=new ee(r)}return o.set(e,n),this.size=o.size,this}function Ee(e){var n=this.__data__=new Q(e);this.size=n.size}Ee.prototype.clear=na,Ee.prototype.delete=oa,Ee.prototype.get=ra,Ee.prototype.has=aa,Ee.prototype.set=la;var Pe=function(){try{var e=ue(Object,"defineProperty");return e({},"",{}),e}catch{}}();function Ut(e,n,o){n=="__proto__"&&Pe?Pe(e,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[n]=o}var sa=Object.prototype,da=sa.hasOwnProperty;function Lt(e,n,o){var r=e[n];(!(da.call(e,n)&&ve(r,o))||o===void 0&&!(n in e))&&Ut(e,n,o)}function Ke(e,n,o,r){var i=!o;o||(o={});for(var a=-1,d=n.length;++a<d;){var l=n[a],s=void 0;s===void 0&&(s=e[l]),i?Ut(o,l,s):Lt(o,l,s)}return o}function ca(e,n){return e&&Ke(n,je(n),e)}function ma(e){var n=[];if(e!=null)for(var o in Object(e))n.push(o);return n}var ha=Object.prototype,ua=ha.hasOwnProperty;function fa(e){if(!H(e))return ma(e);var n=Je(e),o=[];for(var r in e)r=="constructor"&&(n||!ua.call(e,r))||o.push(r);return o}function xe(e){return Le(e)?Nt(e,!0):fa(e)}function pa(e,n){return e&&Ke(n,xe(n),e)}var jt=typeof O=="object"&&O&&!O.nodeType&&O,Dt=jt&&typeof module=="object"&&module&&!module.nodeType&&module,ga=Dt&&Dt.exports===jt,vt=ga?Z.Buffer:void 0,qt=vt?vt.allocUnsafe:void 0;function ya(e,n){if(n)return e.slice();var o=e.length,r=qt?qt(o):new e.constructor(o);return e.copy(r),r}function ba(e,n){var o=-1,r=e.length;for(n||(n=Array(r));++o<r;)n[o]=e[o];return n}function _a(e,n){for(var o=-1,r=e==null?0:e.length,i=0,a=[];++o<r;){var d=e[o];n(d,o,e)&&(a[i++]=d)}return a}function Rt(){return[]}var ka=Object.prototype,wa=ka.propertyIsEnumerable,Pt=Object.getOwnPropertySymbols,tt=Pt?function(e){return e==null?[]:(e=Object(e),_a(Pt(e),function(n){return wa.call(e,n)}))}:Rt;function Ca(e,n){return Ke(e,tt(e),n)}function Kt(e,n){for(var o=-1,r=n.length,i=e.length;++o<r;)e[i+o]=n[o];return e}var xt=Bt(Object.getPrototypeOf,Object),Ea=Object.getOwnPropertySymbols,zt=Ea?function(e){for(var n=[];e;)Kt(n,tt(e)),e=xt(e);return n}:Rt;function Sa(e,n){return Ke(e,zt(e),n)}function Yt(e,n,o){var r=n(e);return le(e)?r:Kt(r,o(e))}function Ma(e){return Yt(e,je,tt)}function Va(e){return Yt(e,xe,zt)}var nt=ue(Z,"DataView"),ot=ue(Z,"Promise"),Se=ue(Z,"Set"),rt=ue(Z,"WeakMap"),Ht="[object Map]",Ta="[object Object]",Gt="[object Promise]",Wt="[object Set]",Zt="[object WeakMap]",Jt="[object DataView]",Na=he(nt),Ba=he(Ae),Ia=he(ot),Aa=he(Se),Oa=he(rt),te=ae;(nt&&te(new nt(new ArrayBuffer(1)))!=Jt||Ae&&te(new Ae)!=Ht||ot&&te(ot.resolve())!=Gt||Se&&te(new Se)!=Wt||rt&&te(new rt)!=Zt)&&(te=function(e){var n=ae(e),o=n==Ta?e.constructor:void 0,r=o?he(o):"";if(r)switch(r){case Na:return Jt;case Ba:return Ht;case Ia:return Gt;case Aa:return Wt;case Oa:return Zt}return n});var Fa=Object.prototype,$a=Fa.hasOwnProperty;function Ua(e){var n=e.length,o=new e.constructor(n);return n&&typeof e[0]=="string"&&$a.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var Xt=Z.Uint8Array;function at(e){var n=new e.constructor(e.byteLength);return new Xt(n).set(new Xt(e)),n}function La(e,n){var o=n?at(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var ja=/\w*$/;function Da(e){var n=new e.constructor(e.source,ja.exec(e));return n.lastIndex=e.lastIndex,n}var Qt=re?re.prototype:void 0,en=Qt?Qt.valueOf:void 0;function va(e){return en?Object(en.call(e)):{}}function qa(e,n){var o=n?at(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var Ra="[object Boolean]",Pa="[object Date]",Ka="[object Map]",xa="[object Number]",za="[object RegExp]",Ya="[object Set]",Ha="[object String]",Ga="[object Symbol]",Wa="[object ArrayBuffer]",Za="[object DataView]",Ja="[object Float32Array]",Xa="[object Float64Array]",Qa="[object Int8Array]",ei="[object Int16Array]",ti="[object Int32Array]",ni="[object Uint8Array]",oi="[object Uint8ClampedArray]",ri="[object Uint16Array]",ai="[object Uint32Array]";function ii(e,n,o){var r=e.constructor;switch(n){case Wa:return at(e);case Ra:case Pa:return new r(+e);case Za:return La(e,o);case Ja:case Xa:case Qa:case ei:case ti:case ni:case oi:case ri:case ai:return qa(e,o);case Ka:return new r;case xa:case Ha:return new r(e);case za:return Da(e);case Ya:return new r;case Ga:return va(e)}}var tn=Object.create,li=function(){function e(){}return function(n){if(!H(n))return{};if(tn)return tn(n);e.prototype=n;var o=new e;return e.prototype=void 0,o}}();function si(e){return typeof e.constructor=="function"&&!Je(e)?li(xt(e)):{}}var di="[object Map]";function ci(e){return ie(e)&&te(e)==di}var nn=Ce&&Ce.isMap,mi=nn?We(nn):ci,hi="[object Set]";function ui(e){return ie(e)&&te(e)==hi}var on=Ce&&Ce.isSet,fi=on?We(on):ui,pi=1,gi=2,yi=4,rn="[object Arguments]",bi="[object Array]",_i="[object Boolean]",ki="[object Date]",wi="[object Error]",an="[object Function]",Ci="[object GeneratorFunction]",Ei="[object Map]",Si="[object Number]",ln="[object Object]",Mi="[object RegExp]",Vi="[object Set]",Ti="[object String]",Ni="[object Symbol]",Bi="[object WeakMap]",Ii="[object ArrayBuffer]",Ai="[object DataView]",Oi="[object Float32Array]",Fi="[object Float64Array]",$i="[object Int8Array]",Ui="[object Int16Array]",Li="[object Int32Array]",ji="[object Uint8Array]",Di="[object Uint8ClampedArray]",vi="[object Uint16Array]",qi="[object Uint32Array]",$={};$[rn]=$[bi]=$[Ii]=$[Ai]=$[_i]=$[ki]=$[Oi]=$[Fi]=$[$i]=$[Ui]=$[Li]=$[Ei]=$[Si]=$[ln]=$[Mi]=$[Vi]=$[Ti]=$[Ni]=$[ji]=$[Di]=$[vi]=$[qi]=!0,$[wi]=$[an]=$[Bi]=!1;function Oe(e,n,o,r,i,a){var d,l=n&pi,s=n&gi,c=n&yi;if(d!==void 0)return d;if(!H(e))return e;var m=le(e);if(m){if(d=Ua(e),!l)return ba(e,d)}else{var h=te(e),p=h==an||h==Ci;if(Et(e))return ya(e,l);if(h==ln||h==rn||p&&!i){if(d=s||p?{}:si(e),!l)return s?Sa(e,pa(d,e)):Ca(e,ca(d,e))}else{if(!$[h])return i?e:{};d=ii(e,h,l)}}a||(a=new Ee);var M=a.get(e);if(M)return M;a.set(e,d),fi(e)?e.forEach(function(w){d.add(Oe(w,n,o,w,e,a))}):mi(e)&&e.forEach(function(w,_){d.set(_,Oe(w,n,o,_,e,a))});var I=c?s?Va:Ma:s?xe:je,u=m?void 0:I(e);return ft(u||e,function(w,_){u&&(_=w,w=e[_]),Lt(d,_,Oe(w,n,o,_,e,a))}),d}var Ri=1,Pi=4;function ne(e){return Oe(e,Ri|Pi)}const it=(e,n="")=>typeof e.id<"u"?n+e.id:n+(e.inputName||e.label||e.model||"").toString().trim().toLowerCase().replace(/ |_/g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"").replace(/([^a-zA-Z0-9-]+)/g,""),sn=(e="")=>e.toString().trim().replace(/ /g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"").replace(/([^a-zA-Z0-9-_/./:]+)/g,"");var Ki="[object String]";function ge(e){return typeof e=="string"||!le(e)&&ie(e)&&ae(e)==Ki}const dn={methods:{getFieldRowClasses(e){const n=this.fieldErrors(e).length>0,o={[F(this.options,"validationErrorClass","error")]:n,[F(this.options,"validationSuccessClass","valid")]:!n,disabled:this.fieldDisabled(e),readonly:this.fieldReadonly(e),featured:this.fieldFeatured(e),required:this.fieldRequired(e)};return Array.isArray(e.styleClasses)?x(e.styleClasses,r=>o[r]=!0):ge(e.styleClasses)&&(o[e.styleClasses]=!0),q(e.type)||(o["field-"+e.type]=!0),o},fieldErrors(e){return this.errors.filter(o=>o.field.fieldName===e.fieldName).map(o=>o.error)},fieldDisabled(e){return L(e.disabled)?e.disabled.call(this,this.model,e,this):q(e.disabled)?!1:e.disabled},fieldReadonly(e){return L(e.readonly)?e.readonly.call(this,this.model,e,this):q(e.readonly)?!1:e.readonly},fieldFeatured(e){return L(e.featured)?e.featured.call(this,this.model,e,this):q(e.featured)?!1:e.featured},fieldRequired(e){return L(e.required)?e.required.call(this,this.model,e,this):q(e.required)?!1:e.required}}};var lt=function(){return Z.Date.now()},xi=/\s/;function zi(e){for(var n=e.length;n--&&xi.test(e.charAt(n)););return n}var Yi=/^\s+/;function Hi(e){return e&&e.slice(0,zi(e)+1).replace(Yi,"")}var cn=NaN,Gi=/^[-+]0x[0-9a-f]+$/i,Wi=/^0b[01]+$/i,Zi=/^0o[0-7]+$/i,Ji=parseInt;function st(e){if(typeof e=="number")return e;if(De(e))return cn;if(H(e)){var n=typeof e.valueOf=="function"?e.valueOf():e;e=H(n)?n+"":n}if(typeof e!="string")return e===0?e:+e;e=Hi(e);var o=Wi.test(e);return o||Zi.test(e)?Ji(e.slice(2),o?2:8):Gi.test(e)?cn:+e}var Xi="Expected a function",Qi=Math.max,el=Math.min;function Fe(e,n,o){var r,i,a,d,l,s,c=0,m=!1,h=!1,p=!0;if(typeof e!="function")throw new TypeError(Xi);n=st(n)||0,H(o)&&(m=!!o.leading,h="maxWait"in o,a=h?Qi(st(o.maxWait)||0,n):a,p="trailing"in o?!!o.trailing:p);function M(f){var b=r,S=i;return r=i=void 0,c=f,d=e.apply(S,b),d}function I(f){return c=f,l=setTimeout(_,n),m?M(f):d}function u(f){var b=f-s,S=f-c,T=n-b;return h?el(T,a-S):T}function w(f){var b=f-s,S=f-c;return s===void 0||b>=n||b<0||h&&S>=a}function _(){var f=lt();if(w(f))return B(f);l=setTimeout(_,u(f))}function B(f){return l=void 0,p&&r?M(f):(r=i=void 0,d)}function k(){l!==void 0&&clearTimeout(l),c=0,r=s=i=l=void 0}function V(){return l===void 0?d:B(lt())}function A(){var f=lt(),b=w(f);if(r=arguments,i=this,s=f,b){if(l===void 0)return I(s);if(h)return clearTimeout(l),l=setTimeout(_,n),M(s)}return l===void 0&&(l=setTimeout(_,n)),d}return A.cancel=k,A.flush=V,A}var tl="__lodash_hash_undefined__";function nl(e){return this.__data__.set(e,tl),this}function ol(e){return this.__data__.has(e)}function ze(e){var n=-1,o=e==null?0:e.length;for(this.__data__=new ee;++n<o;)this.add(e[n])}ze.prototype.add=ze.prototype.push=nl,ze.prototype.has=ol;function rl(e,n,o,r){for(var i=e.length,a=o+-1;++a<i;)if(n(e[a],a,e))return a;return-1}function al(e){return e!==e}function il(e,n,o){for(var r=o-1,i=e.length;++r<i;)if(e[r]===n)return r;return-1}function ll(e,n,o){return n===n?il(e,n,o):rl(e,al,o)}function sl(e,n){var o=e==null?0:e.length;return!!o&&ll(e,n,0)>-1}function dl(e,n){return e.has(n)}function cl(){}function mn(e){var n=-1,o=Array(e.size);return e.forEach(function(r){o[++n]=r}),o}var ml=1/0,hl=Se&&1/mn(new Se([,-0]))[1]==ml?function(e){return new Se(e)}:cl,ul=200;function fl(e,n,o){var r=-1,i=sl,a=e.length,d=!0,l=[],s=l;if(a>=ul){var c=hl(e);if(c)return mn(c);d=!1,i=dl,s=new ze}else s=l;e:for(;++r<a;){var m=e[r],h=m;if(m=m!==0?m:0,d&&h===h){for(var p=s.length;p--;)if(s[p]===h)continue e;l.push(m)}else i(s,h,o)||(s!==l&&s.push(h),l.push(m))}return l}function hn(e){return e&&e.length?fl(e):[]}var pl=0;function un(e){var n=++pl;return $t(e)+n}function gl(e,n,o){switch(o.length){case 0:return e.call(n);case 1:return e.call(n,o[0]);case 2:return e.call(n,o[0],o[1]);case 3:return e.call(n,o[0],o[1],o[2])}return e.apply(n,o)}var fn=Math.max;function yl(e,n,o){return n=fn(n===void 0?e.length-1:n,0),function(){for(var r=arguments,i=-1,a=fn(r.length-n,0),d=Array(a);++i<a;)d[i]=r[n+i];i=-1;for(var l=Array(n+1);++i<n;)l[i]=r[i];return l[n]=o(d),gl(e,this,l)}}function bl(e){return function(){return e}}var _l=Pe?function(e,n){return Pe(e,"toString",{configurable:!0,enumerable:!1,value:bl(n),writable:!0})}:Xe,kl=800,wl=16,Cl=Date.now;function El(e){var n=0,o=0;return function(){var r=Cl(),i=wl-(r-o);if(o=r,i>0){if(++n>=kl)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}var Sl=El(_l);function Ml(e,n){return Sl(yl(e,n,Xe),e+"")}function Vl(e,n,o){if(!H(o))return!1;var r=typeof n;return(r=="number"?Le(o)&&St(n,o.length):r=="string"&&n in o)?ve(o[n],e):!1}var pn=Object.prototype,Tl=pn.hasOwnProperty,Nl=Ml(function(e,n){e=Object(e);var o=-1,r=n.length,i=r>2?n[2]:void 0;for(i&&Vl(n[0],n[1],i)&&(r=1);++o<r;)for(var a=n[o],d=xe(a),l=-1,s=d.length;++l<s;){var c=d[l],m=e[c];(m===void 0||ve(m,pn[c])&&!Tl.call(e,c))&&(e[c]=a[c])}return e}),Bl=Z.isFinite;function Il(e){return typeof e=="number"&&Bl(e)}var gn=1/0,Al=17976931348623157e292;function Ol(e){if(!e)return e===0?e:0;if(e=st(e),e===gn||e===-gn){var n=e<0?-1:1;return n*Al}return e===e?e:0}function Fl(e){var n=Ol(e),o=n%1;return n===n?o?n-o:n:0}function $l(e){return typeof e=="number"&&e==Fl(e)}var Ul="[object Number]";function dt(e){return typeof e=="number"||ie(e)&&ae(e)==Ul}var yn=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,de="\\d\\d?",ce="\\d\\d",Ll="\\d{3}",jl="\\d{4}",$e="[^\\s]+",bn=/\[([^]*?)\]/gm;function _n(e,n){for(var o=[],r=0,i=e.length;r<i;r++)o.push(e[r].substr(0,n));return o}var kn=function(e){return function(n,o){var r=o[e].map(function(a){return a.toLowerCase()}),i=r.indexOf(n.toLowerCase());return i>-1?i:null}};function ye(e){for(var n=[],o=1;o<arguments.length;o++)n[o-1]=arguments[o];for(var r=0,i=n;r<i.length;r++){var a=i[r];for(var d in a)e[d]=a[d]}return e}var wn=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],Cn=["January","February","March","April","May","June","July","August","September","October","November","December"],Dl=_n(Cn,3),vl=_n(wn,3),En={dayNamesShort:vl,dayNames:wn,monthNamesShort:Dl,monthNames:Cn,amPm:["am","pm"],DoFn:function(e){return e+["th","st","nd","rd"][e%10>3?0:(e-e%10!==10?1:0)*e%10]}},Ye=ye({},En),ql=function(e){return Ye=ye(Ye,e)},Sn=function(e){return e.replace(/[|\\{()[^$+*?.-]/g,"\\$&")},Y=function(e,n){for(n===void 0&&(n=2),e=String(e);e.length<n;)e="0"+e;return e},Rl={D:function(e){return String(e.getDate())},DD:function(e){return Y(e.getDate())},Do:function(e,n){return n.DoFn(e.getDate())},d:function(e){return String(e.getDay())},dd:function(e){return Y(e.getDay())},ddd:function(e,n){return n.dayNamesShort[e.getDay()]},dddd:function(e,n){return n.dayNames[e.getDay()]},M:function(e){return String(e.getMonth()+1)},MM:function(e){return Y(e.getMonth()+1)},MMM:function(e,n){return n.monthNamesShort[e.getMonth()]},MMMM:function(e,n){return n.monthNames[e.getMonth()]},YY:function(e){return Y(String(e.getFullYear()),4).substr(2)},YYYY:function(e){return Y(e.getFullYear(),4)},h:function(e){return String(e.getHours()%12||12)},hh:function(e){return Y(e.getHours()%12||12)},H:function(e){return String(e.getHours())},HH:function(e){return Y(e.getHours())},m:function(e){return String(e.getMinutes())},mm:function(e){return Y(e.getMinutes())},s:function(e){return String(e.getSeconds())},ss:function(e){return Y(e.getSeconds())},S:function(e){return String(Math.round(e.getMilliseconds()/100))},SS:function(e){return Y(Math.round(e.getMilliseconds()/10),2)},SSS:function(e){return Y(e.getMilliseconds(),3)},a:function(e,n){return e.getHours()<12?n.amPm[0]:n.amPm[1]},A:function(e,n){return e.getHours()<12?n.amPm[0].toUpperCase():n.amPm[1].toUpperCase()},ZZ:function(e){var n=e.getTimezoneOffset();return(n>0?"-":"+")+Y(Math.floor(Math.abs(n)/60)*100+Math.abs(n)%60,4)},Z:function(e){var n=e.getTimezoneOffset();return(n>0?"-":"+")+Y(Math.floor(Math.abs(n)/60),2)+":"+Y(Math.abs(n)%60,2)}},Mn=function(e){return+e-1},Vn=[null,de],Tn=[null,$e],Nn=["isPm",$e,function(e,n){var o=e.toLowerCase();return o===n.amPm[0]?0:o===n.amPm[1]?1:null}],Bn=["timezoneOffset","[^\\s]*?[\\+\\-]\\d\\d:?\\d\\d|[^\\s]*?Z?",function(e){var n=(e+"").match(/([+-]|\d\d)/gi);if(n){var o=+n[1]*60+parseInt(n[2],10);return n[0]==="+"?o:-o}return 0}],Pl={D:["day",de],DD:["day",ce],Do:["day",de+$e,function(e){return parseInt(e,10)}],M:["month",de,Mn],MM:["month",ce,Mn],YY:["year",ce,function(e){var n=new Date,o=+(""+n.getFullYear()).substr(0,2);return+(""+(+e>68?o-1:o)+e)}],h:["hour",de,void 0,"isPm"],hh:["hour",ce,void 0,"isPm"],H:["hour",de],HH:["hour",ce],m:["minute",de],mm:["minute",ce],s:["second",de],ss:["second",ce],YYYY:["year",jl],S:["millisecond","\\d",function(e){return+e*100}],SS:["millisecond",ce,function(e){return+e*10}],SSS:["millisecond",Ll],d:Vn,dd:Vn,ddd:Tn,dddd:Tn,MMM:["month",$e,kn("monthNamesShort")],MMMM:["month",$e,kn("monthNames")],a:Nn,A:Nn,ZZ:Bn,Z:Bn},He={default:"ddd MMM DD YYYY HH:mm:ss",shortDate:"M/D/YY",mediumDate:"MMM D, YYYY",longDate:"MMMM D, YYYY",fullDate:"dddd, MMMM D, YYYY",isoDate:"YYYY-MM-DD",isoDateTime:"YYYY-MM-DDTHH:mm:ssZ",shortTime:"HH:mm",mediumTime:"HH:mm:ss",longTime:"HH:mm:ss.SSS"},Kl=function(e){return ye(He,e)},xl=function(e,n,o){if(n===void 0&&(n=He.default),o===void 0&&(o={}),typeof e=="number"&&(e=new Date(e)),Object.prototype.toString.call(e)!=="[object Date]"||isNaN(e.getTime()))throw new Error("Invalid Date pass to format");n=He[n]||n;var r=[];n=n.replace(bn,function(a,d){return r.push(d),"@@@"});var i=ye(ye({},Ye),o);return n=n.replace(yn,function(a){return Rl[a](e,i)}),n.replace(/@@@/g,function(){return r.shift()})};function zl(e,n,o){if(o===void 0&&(o={}),typeof n!="string")throw new Error("Invalid format in fecha parse");if(n=He[n]||n,e.length>1e3)return null;var r=new Date,i={year:r.getFullYear(),month:0,day:1,hour:0,minute:0,second:0,millisecond:0,isPm:null,timezoneOffset:null},a=[],d=[],l=n.replace(bn,function(V,A){return d.push(Sn(A)),"@@@"}),s={},c={};l=Sn(l).replace(yn,function(V){var A=Pl[V],f=A[0],b=A[1],S=A[3];if(s[f])throw new Error("Invalid format. "+f+" specified twice in format");return s[f]=!0,S&&(c[S]=!0),a.push(A),"("+b+")"}),Object.keys(c).forEach(function(V){if(!s[V])throw new Error("Invalid format. "+V+" is required in specified format")}),l=l.replace(/@@@/g,function(){return d.shift()});var m=e.match(new RegExp(l,"i"));if(!m)return null;for(var h=ye(ye({},Ye),o),p=1;p<m.length;p++){var M=a[p-1],I=M[0],u=M[2],w=u?u(m[p],h):+m[p];if(w==null)return null;i[I]=w}i.isPm===1&&i.hour!=null&&+i.hour!=12?i.hour=+i.hour+12:i.isPm===0&&+i.hour==12&&(i.hour=0);var _;if(i.timezoneOffset==null){_=new Date(i.year,i.month,i.day,i.hour,i.minute,i.second,i.millisecond);for(var B=[["month","getMonth"],["day","getDate"],["hour","getHours"],["minute","getMinutes"],["second","getSeconds"]],p=0,k=B.length;p<k;p++)if(s[B[p][0]]&&i[B[p][0]]!==_[B[p][1]]())return null}else if(_=new Date(Date.UTC(i.year,i.month,i.day,i.hour,i.minute-i.timezoneOffset,i.second,i.millisecond)),i.month>11||i.month<0||i.day>31||i.day<1||i.hour>23||i.hour<0||i.minute>59||i.minute<0||i.second>59||i.second<0)return null;return _}var Me={format:xl,parse:zl,defaultI18n:En,setGlobalDateI18n:ql,setGlobalDateMasks:Kl};const K={fieldIsRequired:"This field is required!",invalidFormat:"Invalid format!",numberTooSmall:"The number is too small! Minimum: {0}",numberTooBig:"The number is too big! Maximum: {0}",invalidNumber:"Invalid number",invalidInteger:"The value is not an integer",textTooSmall:"The length of text is too small! Current: {0}, Minimum: {1}",textTooBig:"The length of text is too big! Current: {0}, Maximum: {1}",thisNotText:"This is not a text!",thisNotArray:"This is not an array!",selectMinItems:"Select minimum {0} items!",selectMaxItems:"Select maximum {0} items!",invalidDate:"Invalid date!",dateIsEarly:"The date is too early! Current: {0}, Minimum: {1}",dateIsLate:"The date is too late! Current: {0}, Maximum: {1}",invalidEmail:"Invalid e-mail address!",invalidURL:"Invalid URL!",invalidCard:"Invalid card format!",invalidCardNumber:"Invalid card number!",invalidTextContainNumber:"Invalid text! Cannot contains numbers or special characters",invalidTextContainSpec:"Invalid text! Cannot contains special characters"};function J(e,n,o=K){return q(e)||e===""?n?[v(o.fieldIsRequired)]:[]:null}function v(e,...n){if(e!=null&&n.length>0)for(let o=0;o<n.length;o++)e=e.replace("{"+(o-1)+"}",n[o]);return e}const be={resources:K,required(e,n,o,r=K){return J(e,n.required,r)},number(e,n,o,r=K){const i=J(e,n.required,r);if(i!=null)return i;const a=[];return Il(e)?(!q(n.min)&&e<n.min&&a.push(v(r.numberTooSmall,n.min)),!q(n.max)&&e>n.max&&a.push(v(r.numberTooBig,n.max))):a.push(v(r.invalidNumber)),a},integer(e,n,o,r=K){const i=J(e,n.required,r);if(i!=null)return i;const a=be.number(e,n,o,r);return $l(e)||a.push(v(r.invalidInteger)),a},double(e,n,o,r=K){const i=J(e,n.required,r);if(i!=null)return i;if(!dt(e)||isNaN(e))return[v(r.invalidNumber)]},string(e,n,o,r=K){const i=J(e,n.required,r);if(i!=null)return i;const a=[];return ge(e)?(!q(n.min)&&e.length<n.min&&a.push(v(r.textTooSmall,e.length,n.min)),!q(n.max)&&e.length>n.max&&a.push(v(r.textTooBig,e.length,n.max))):a.push(v(r.thisNotText)),a},array(e,n,o,r=K){if(n.required){if(!Array.isArray(e))return[v(r.thisNotArray)];if(e.length===0)return[v(r.fieldIsRequired)]}if(!q(e)){if(!q(n.min)&&e.length<n.min)return[v(r.selectMinItems,n.min)];if(!q(n.max)&&e.length>n.max)return[v(r.selectMaxItems,n.max)]}},date(e,n,o,r=K){const i=J(e,n.required,r);if(i!=null)return i;const a=new Date(e);if(isNaN(a.getDate()))return[v(r.invalidDate)];const d=[];if(!q(n.min)){const l=new Date(n.min);a.valueOf()<l.valueOf()&&d.push(v(r.dateIsEarly,Me.format(a),Me.format(l)))}if(!q(n.max)){const l=new Date(n.max);a.valueOf()>l.valueOf()&&d.push(v(r.dateIsLate,Me.format(a),Me.format(l)))}return d},regexp(e,n,o,r=K){const i=J(e,n.required,r);if(i!=null)return i;if(!q(n.pattern)&&!new RegExp(n.pattern).test(e))return[v(r.invalidFormat)]},email(e,n,o,r=K){const i=J(e,n.required,r);if(i!=null)return i;if(!/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e))return[v(r.invalidEmail)]},url(e,n,o,r=K){const i=J(e,n.required,r);if(i!=null)return i;if(!/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,4}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g.test(e))return[v(r.invalidURL)]},creditCard(e,n,o,r=K){const i=J(e,n.required,r);if(i!=null)return i;const a=/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})$/,d=e.replace(/[^0-9]+/g,"");if(!a.test(d))return[v(r.invalidCard)];let l=0,s,c,m;for(let h=d.length-1;h>=0;h--)s=d.substring(h,h+1),c=parseInt(s,10),m?(c*=2,c>=10?l+=c%10+1:l+=c):l+=c,m=!m;if(!(l%10===0&&d))return[v(r.invalidCardNumber)]},alpha(e,n,o,r=K){const i=J(e,n.required,r);if(i!=null)return i;if(!/^[a-zA-Z]*$/.test(e))return[v(r.invalidTextContainNumber)]},alphaNumeric(e,n,o,r=K){const i=J(e,n.required,r);if(i!=null)return i;if(!/^[a-zA-Z0-9]*$/.test(e))return[v(r.invalidTextContainSpec)]}};Object.keys(be).forEach(e=>{const n=be[e];L(n)&&(n.locale=o=>(r,i,a)=>n(r,i,a,Nl(o,K)))});function In(e){return ge(e)?be[e]!=null?be[e]:(console.warn(`'${e}' is not a validator function!`),null):e}function ct(e,n,o){let r=F(o.context,"schema.attributes",{});const i=n.value||"input";ge(i)&&(r=F(r,i)||r),x(r,(a,d)=>{e.setAttribute(d,a)})}const X={name:"abstractField",props:["vfg","model","schema","formOptions","disabled"],emits:["validated","modelUpdated"],data(){return{errors:[],debouncedValidateFunc:null,debouncedFormatFunc:null}},directives:{attributes:{beforeMount:ct,updated:ct,componentUpdated:ct}},computed:{value:{cache:!1,get(){let e;return L(F(this.schema,"get"))?e=this.schema.get(this.model):e=F(this.model,this.schema.model),this.formatValueToField(e)},set(e){const n=this.value;e=this.formatValueToModel(e),L(e)?e(e,n):this.updateModelValue(e,n)}}},methods:{validate(e){this.clearValidationErrors();const n=F(this.formOptions,"validateAsync",!1);let o=[];if(this.schema.validator&&this.schema.readonly!==!0&&this.disabled!==!0){const i=[];Array.isArray(this.schema.validator)?x(this.schema.validator,a=>{i.push(In(a).bind(this))}):i.push(In(this.schema.validator).bind(this)),x(i,a=>{if(n)o.push(a(this.value,this.schema,this.model));else{const d=a(this.value,this.schema,this.model);d&&L(d.then)?d.then(l=>{l&&(this.errors=this.errors.concat(l));const s=this.errors.length===0;this.$emit("validated",s,this.errors,this)}):d&&(o=o.concat(d))}})}const r=i=>{let a=[];x(hn(i),l=>{Array.isArray(l)&&l.length>0?a=a.concat(l):ge(l)&&a.push(l)}),L(this.schema.onValidated)&&this.schema.onValidated.call(this,this.model,a,this.schema);const d=a.length===0;return e||this.$emit("validated",d,a,this),this.errors=a,a};return n?Promise.all(o).then(r):r(o)},debouncedValidate(){L(this.debouncedValidateFunc)||(this.debouncedValidateFunc=Fe(this.validate.bind(this),F(this.schema,"validateDebounceTime",F(this.formOptions,"validateDebounceTime",500)))),this.debouncedValidateFunc()},updateModelValue(e,n){let o=!1;L(this.schema.set)?(this.schema.set(this.model,e),o=!0):this.schema.model&&(this.setModelValueByPath(this.schema.model,e),o=!0),o&&(this.$emit("modelUpdated",e,this.schema.model),L(this.schema.onChanged)&&this.schema.onChanged.call(this,this.model,e,n,this.schema),F(this.formOptions,"validateAfterChanged",!1)===!0&&(F(this.schema,"validateDebounceTime",F(this.formOptions,"validateDebounceTime",0))>0?this.debouncedValidate():this.validate()))},clearValidationErrors(){this.errors.splice(0)},setModelValueByPath(e,n){let o=e.replace(/\[(\w+)\]/g,".$1");o=o.replace(/^\./,"");let r=this.model;const i=o.split(".");let a=0;const d=i.length;for(;a<d;){const l=i[a];if(a<d-1)r[l]!==void 0||(r[l]={}),r=r[l];else{r[l]=n;return}++a}},getFieldID(e,n=!1){const o=F(this.formOptions,"fieldIdPrefix","");return it(e,o)+(n?"-"+un():"")},getLabelId(e){return`${this.getFieldID(e)}-label`},getFieldClasses(){return F(this.schema,"fieldClasses",[])},formatValueToField(e){return e},formatValueToModel(e){return e}}},Yl=Object.freeze(Object.defineProperty({__proto__:null,default:X},Symbol.toStringTag,{value:"Module"})),j=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},Hl={mixins:[X],emits:["model-updated"],data(){return{isOpen:!1}},computed:{openClass(){return this.isOpen?"open":"closed"},fieldCount(){return this.schema.fields.length},titleText(){return`${this.isOpen?"Hide":"View"} ${this.fieldCount} Advanced Fields`}},methods:{handleOpen(){this.isOpen=!this.isOpen},updateModel(e,n){this.$emit("model-updated",e,n)}}},Gl={class:"advanced-field-dropdown-wrapper","data-testid":"advanced-field-dropdown-wrapper"},Wl={class:"material-icons"};function Zl(e,n,o,r,i,a){const d=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",Gl,[t.createElementVNode("button",{class:"advanced-field-title",type:"button",onClick:n[0]||(n[0]=(...l)=>a.handleOpen&&a.handleOpen(...l))},[t.createElementVNode("i",Wl,t.toDisplayString(i.isOpen?"keyboard_arrow_up":"keyboard_arrow_right"),1),t.createElementVNode("span",null,t.toDisplayString(a.titleText),1)]),t.createElementVNode("div",{class:t.normalizeClass(["advanced-field-dropdown",a.openClass])},[t.createVNode(d,{model:e.model,options:{helpAsHtml:!0},schema:e.schema,onModelUpdated:a.updateModel},null,8,["model","schema","onModelUpdated"])],2)])}const Jl=j(Hl,[["render",Zl],["__scopeId","data-v-6f4089bd"]]),Xl={class:"array-card-container"},An=j(t.defineComponent({__name:"FieldArrayCardContainer",props:{model:{type:Object,default:()=>null},schema:{type:Object,default:()=>null},index:{type:Number,default:void 0}},emits:["remove-item"],setup(e){const n=e;return t.provide("vfg-array-item-index",n.index),(o,r)=>{const i=t.resolveComponent("KCard"),a=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",Xl,[t.createVNode(i,{class:"card"},{default:t.withCtx(()=>[t.renderSlot(o.$slots,"default",{},void 0,!0)]),_:3}),t.createVNode(a,{appearance:"tertiary",class:"array-card-remove-button",onClick:r[0]||(r[0]=d=>o.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(t.unref(oe.TrashIcon))]),_:1})])}}}),[["__scopeId","data-v-96055692"]]),Ql={class:"array-item-wrapper"},es={class:"array-item"},ts={class:"array-item-after"},On=j(t.defineComponent({__name:"FieldArrayItem",props:{model:{type:String,default:""}},emits:["remove-item"],setup(e){return(n,o)=>{const r=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",Ql,[t.createElementVNode("div",es,[t.renderSlot(n.$slots,"default",{},void 0,!0),t.createVNode(r,{appearance:"tertiary",class:"delete",onClick:o[0]||(o[0]=i=>n.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(t.unref(oe.TrashIcon))]),_:1})]),t.createElementVNode("div",ts,[t.renderSlot(n.$slots,"after",{},void 0,!0)])])}}}),[["__scopeId","data-v-eb9975cc"]]),ns=e=>(t.pushScopeId("data-v-37458a0a"),e=e(),t.popScopeId(),e),os={class:"multi-item-wrapper"},rs=ns(()=>t.createElementVNode("hr",null,null,-1)),Fn=j(t.defineComponent({__name:"FieldArrayMultiItem",emits:["remove-item"],setup(e){return(n,o)=>{const r=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",os,[t.renderSlot(n.$slots,"default",{},void 0,!0),t.createVNode(r,{appearance:"danger",class:"delete",onClick:o[0]||(o[0]=i=>n.$emit("remove-item"))},{default:t.withCtx(()=>[t.createTextVNode(" - Remove Field ")]),_:1}),rs])}}}),[["__scopeId","data-v-37458a0a"]]),as="[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}";function is(e){return e?e.length===36&&new RegExp(`^${as}$`).test(e):!1}const mt=50,_e={CREATE_NOT_FROM_ENTITY:"CREATE_NOT_FROM_ENTITY",CREATE_FROM_ENTITY:"CREATE_FROM_ENTITY",UPDATE_ENTITY:"UPDATE_ENTITY",SET_REFERRAL_VALUE:"SET_REFERRAL_VALUE"};function ls(e,n,o){return o?_e.SET_REFERRAL_VALUE:e&&!n||!e&&n?_e.UPDATE_ENTITY:e&&n?_e.CREATE_FROM_ENTITY:_e.CREATE_NOT_FROM_ENTITY}const ss={mixins:[X],inject:[se],emits:["model-updated"],data(){return{suggestions:[],idValue:"",message:"Type something to search",items:[],initialItems:[],loading:!1}},computed:{fieldState(){return ls(this.model[this.schema.model],this.associatedEntity||this.entityId,this.bypassSearch)},associatedEntity(){return this.$route&&this.$route.params[this.entity]},entity(){return this.schema.entity},bypassSearch(){return this.$route&&this.$route.query&&this.$route.query.no_search}},async created(){await this.$nextTick();let e,n;switch(this.fieldState){case _e.UPDATE_ENTITY:if(!this[se]){console.warn("[@kong-ui-public/forms] No API service provided");break}n=(await this[se].getOne(this.entity,this.model[this.schema.model])).data,e=this.getItem(this.schema.entityDataKey?n[this.schema.entityDataKey]:n),this.idValue=e.id;break;case _e.CREATE_FROM_ENTITY:this.idValue=this.associatedEntity.id;break;case _e.SET_REFERRAL_VALUE:this.idValue=this.value}try{e&&(this.initialItems=[{...e,label:this.getSuggestionLabel(e),value:e.id}]),this.items=this.initialItems}catch(o){this.message=`There was an error loading ${this.schema.entity}`,console.error("err!",o)}},methods:{onQueryChange(e){e.trim().length===0&&(this.items=[],this.message="Type something to search"),typeof this.performSearch!="function"&&(this.performSearch=Fe(this.search,500)),this.performSearch(e)},async search(e){if(e.trim().length===0)return;this.loading=!0;const n=[],o=[],r=this.getInputFields(),i=new Set;is(e)&&r.includes("id")?o.push((async()=>{const a=await this.fetchExact(e);n.push({...a,label:this.getSuggestionLabel(a),value:a.id})})()):o.push(...r.filter(a=>a!=="id").map(async a=>{(await this.fetchSuggestions(e,a)).forEach(l=>{i.has(l.id)||(i.add(l.id),n.push({...l,label:this.getSuggestionLabel(l),value:l.id}))})})),await Promise.all(o),this.items=n,this.items.length===0&&(this.message="No results"),this.loading=!1},getItem(e){return e.data?e.data.length>0?e.data[0]:[]:e},async fetchUntilLimit(e){const n=[];let o=null;if(!this[se])return console.warn("[@kong-ui-public/forms] No API service provided"),[];for(;n.length<mt;){const r=await this[se].getAll(this.entity,{size:mt,offset:o,...e});if(n.push(...r.data.data),o=r.data.offset,!o)break}return n.slice(0,mt)},async fetchSuggestions(e,n){return this.fetchUntilLimit({[n]:e})},async fetchExact(e){return this[se]?(await this[se].getOne(this.entity,e)).data:(console.warn("[@kong-ui-public/forms] No API service provided"),{})},getInputFields(){var e,n;return((n=(e=this.schema)==null?void 0:e.inputValues)==null?void 0:n.fields)||[]},getSuggestionLabel(e){const n=this.getInputFields();return n.length&&e?n.map(o=>e[o]).filter(Boolean).join(" - "):""},updateModel(e){this.$emit("model-updated",e!=null&&e.length?e:null,this.schema.model)},onSelected(e){this.idValue=e&&e.id,this.updateModel(this.getReturnValue(e||{}))},getReturnValue(e){var o;const n=(o=this.schema)==null?void 0:o.returnKey;return n?e[n]:e.id}}},ds={class:"field-wrap autosuggest"},cs=["data-testid","data-testlabel"],ms=["data-testid"],hs={class:"autosuggest__results_message"};function us(e,n,o,r,i,a){const d=t.resolveComponent("KSelect");return t.openBlock(),t.createElementBlock("div",ds,[t.createVNode(d,{id:e.schema.model,ref:"suggestion",modelValue:i.idValue,"onUpdate:modelValue":n[0]||(n[0]=l=>i.idValue=l),clearable:"","enable-filtering":"","filter-function":()=>!0,items:i.items,loading:i.loading,placeholder:e.schema.placeholder,width:"100%",onChange:a.onSelected,onQueryChange:a.onQueryChange},{"item-template":t.withCtx(({item:l})=>[t.createElementVNode("span",{class:"first-part","data-testid":l.id&&`${l.id}-0`,"data-testlabel":l.label},t.toDisplayString(a.getSuggestionLabel(l).split(" - ")[0]),9,cs),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.getSuggestionLabel(l).split(" - ").slice(1),(s,c)=>(t.openBlock(),t.createElementBlock("span",{key:c,class:"field-span","data-testid":l.id&&`${l.id}-${c+1}`||c+1},t.toDisplayString(s),9,ms))),128))]),empty:t.withCtx(()=>[t.createElementVNode("div",hs,[t.createElementVNode("span",null,t.toDisplayString(i.message),1)])]),_:1},8,["id","modelValue","items","loading","placeholder","onChange","onQueryChange"])])}const $n=j(ss,[["render",us],["__scopeId","data-v-dd2fda9e"]]);function fs(e){const n=t.ref([]),o=t.ref(null),r=u=>ge(u)?be[u]!=null?be[u]:(console.warn(`'${u}' is not a validator function!`),null):u,i=t.computed({get(){var w,_;let u;return L(F(e.schema,"get"))?u=e.schema.get((w=e.model)==null?void 0:w.value):u=F((_=e.model)==null?void 0:_.value,e.schema.model),M(u)},set(u){const w=i;u=I(u),L(u)?u(u,w):l(u,w)}}),a=u=>{var V;s();const w=(V=e.schema)==null?void 0:V.validator,_=F(e.formOptions,"validateAsync",!1);let B=[];if(w&&e.schema.readonly!==!0&&e.disabled!==!0){const A=[];Array.isArray(w)?x(w,f=>{A.push(r(f))}):A.push(r(w)),x(A,f=>{var b,S;if(_)B.push(f(i.value,e.schema,(b=e.model)==null?void 0:b.value));else{const T=f(i.value,e.schema,(S=e.model)==null?void 0:S.value);T&&L(T.then)?T.then(g=>{g&&(n.value=n.value.concat(g));const y=n.value.length===0;e.emitValidated&&e.emitValidated({isValid:y,errors:n.value,field:e.schema})}):T&&(B=B.concat(T))}})}const k=A=>{var b,S;let f=[];if(x(hn(A),T=>{Array.isArray(T)&&T.length>0?f=f.concat(T):ge(T)&&f.push(T)}),L((b=e.schema)==null?void 0:b.onValidated)&&e.schema.onValidated((S=e.model)==null?void 0:S.value,f,e.schema),!u){const T=f.length===0;e.emitValidated&&e.emitValidated({isValid:T,errors:f,field:e.schema})}return A=f,f};return _?Promise.all(B).then(k):k(B)},d=()=>{L(o.value)?o.value():o.value=Fe(a,F(e.schema,"validateDebounceTime",F(e.formOptions,"validateDebounceTime",500)))},l=(u,w)=>{var B,k,V;let _=!1;L(e.schema.set)?(e.schema.set((B=e.model)==null?void 0:B.value,u),_=!0):e.schema.model&&(c(e.schema.model,u),_=!0),_&&(e.emitModelUpdated&&((k=e.model)!=null&&k.value)&&e.emitModelUpdated({value:u,model:e.schema.model}),L(e.schema.onChanged)&&e.schema.onChanged((V=e.model)==null?void 0:V.value,u,w,e.schema),F(e.formOptions,"validateAfterChanged",!1)===!0&&(F(e.schema,"validateDebounceTime",F(e.formOptions,"validateDebounceTime",0))>0?d():a()))},s=()=>{n.value.splice(0)},c=(u,w)=>{var f;let _=u.replace(/\[(\w+)\]/g,".$1");_=_.replace(/^\./,"");let B=((f=e.model)==null?void 0:f.value)||{},k=0;const V=_.split("."),A=V.length;for(;k<A;){const b=V[k];if(k<A-1)B[b]!==void 0||(B[b]={}),B=B[b];else{B[b]=w;return}++k}},m=(u,w=!1)=>{const _=F(e.formOptions,"fieldIdPrefix","");return it(u,_)+(w?"-"+un():"")},h=u=>`${m(u)}-label`,p=()=>F(e.schema,"fieldClasses",[]),M=u=>e.formatValueToField&&typeof e.formatValueToField=="function"?e.formatValueToField(u):u,I=u=>e.formatValueToModel&&typeof e.formatValueToModel=="function"?e.formatValueToModel(u):u;return{value:i,clearValidationErrors:s,getFieldID:m,getLabelId:h,getFieldClasses:p,updateModelValue:l}}const ke={useAbstractFields:fs},ps={class:"form-field-wrapper"},Un=j(t.defineComponent({__name:"FieldInput",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:o}){const r=e,i=o,a=t.toRefs(r),d=t.inject(G,void 0),{updateModelValue:l,getFieldID:s,clearValidationErrors:c,value:m}=ke.useAbstractFields({model:a.model,schema:r.schema,formOptions:r.formOptions,emitModelUpdated:k=>{i("modelUpdated",k.value,k.model)}});n({clearValidationErrors:c});const h=t.computed(()=>{var V;const k=(V=r.schema)==null?void 0:V.inputType.toLowerCase();return k==="string"?"text":k==="datetime"?"datetime-local":k||"text"}),p={date:"YYYY-MM-DD",datetime:"YYYY-MM-DD HH:mm:ss","datetime-local":"YYYY-MM-DDTHH:mm:ss"},M=(k,V)=>{var S,T;let A=k;const f=p[h.value]||"",b=Me.parse(k,f);b&&((S=r.schema)!=null&&S.format?A=Me.format(b,(T=r.schema)==null?void 0:T.format):A=b.valueOf()),l(A,V)},I=(k,V)=>{dt(k)||(k=NaN),l(k,V)},u=k=>{let V=k;switch(h.value){case"number":case"range":dt(parseFloat(k))&&(V=parseFloat(k));break}m.value=V,l(V,k)},w=k=>{m.value=k,l(k,k)},_=t.ref(null),B=()=>{var k;L(_.value)&&((k=_.value)==null||k.flush())};return t.onMounted(()=>{switch(h.value){case"number":case"range":_.value=Fe((k,V)=>{I(k,V)},parseInt(F(r.schema,"debounceFormatTimeout",1e3)),{trailing:!0,leading:!1});break;case"date":case"datetime":case"datetime-local":_.value=Fe((k,V)=>{M(k,V)},parseInt(F(r.schema,"debounceFormatTimeout",1e3)),{trailing:!0,leading:!1});break}}),t.onBeforeMount(()=>{h.value==="checkbox"?console.warn("The use of 'checkbox' inputType with 'input' type fields is deprecated. Use 'checkbox' type instead."):h.value==="radio"?console.warn("The use of 'radio' inputType with 'input' type fields is deprecated. Use 'radio' type instead."):h.value==="file"&&console.warn("The 'file' type in input field is deprecated. Use 'file' field instead.")}),(k,V)=>{const A=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock("div",ps,[t.createVNode(A,t.mergeProps(k.$attrs,{id:t.unref(s)(e.schema),autocomplete:e.schema.autocomplete,class:e.schema.fieldClasses,disabled:e.disabled||void 0,help:e.hint?e.hint:h.value==="color"||h.value==="range"?t.unref(m):void 0,max:e.schema.max,maxlength:e.schema.maxlength,min:e.schema.min,minlength:e.schema.minlength,"model-value":t.unref(m),name:e.schema.inputName,pattern:e.schema.pattern,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,type:h.value,width:e.schema.width,onBlur:B,"onUpdate:modelValue":u}),null,16,["id","autocomplete","class","disabled","help","max","maxlength","min","minlength","model-value","name","pattern","placeholder","readonly","required","type","width"]),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(d)),{schema:e.schema,update:w,value:t.unref(m)},null,8,["schema","value"]))])}}}),[["__scopeId","data-v-a621f2a9"]]),gs={name:"FieldMetric",components:{AddIcon:oe.AddIcon,TrashIcon:oe.TrashIcon},mixins:[X],emits:["remove-item"],data(){return{contentVisible:!1}}},ys={key:0,class:"content"};function bs(e,n,o,r,i,a){const d=t.resolveComponent("AddIcon"),l=t.resolveComponent("TrashIcon"),s=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["field-dropdown",{active:i.contentVisible}])},[t.createElementVNode("div",{class:"title",onClick:n[0]||(n[0]=c=>i.contentVisible=!i.contentVisible)},[t.createTextVNode(t.toDisplayString(e.model.name?e.model.name:"New Item")+" ",1),t.createVNode(d,{class:"metric-add-icon"})]),t.createVNode(t.Transition,{name:"slide-fade"},{default:t.withCtx(()=>[i.contentVisible?(t.openBlock(),t.createElementBlock("div",ys,[t.renderSlot(e.$slots,"default"),t.createVNode(s,{appearance:"tertiary",class:"metric-remove-button",onClick:n[1]||(n[1]=c=>e.$emit("remove-item"))},{default:t.withCtx(()=>[t.createVNode(l)]),_:1})])):t.createCommentVNode("",!0)]),_:3})],2)}const Ln=j(gs,[["render",bs]]),_s={mixins:[X],emits:["modelUpdated"],data(){return{attributes:this.schema?this.schema.attributes:void 0,newKeyType:"string",newKeyName:"",keyTypes:{}}},created(){this.value||(this.value={})},mounted(){if(!this.value)return;const e=Object.keys(this.value),n={};for(let o=0;o<e.length;o++){const r=e[o];n[r]=typeof this.value[r]}this.keyTypes=n},methods:{removeElement(e){const n=this.value;delete n[e],this.value=JSON.parse(JSON.stringify(n));const o=this.keyTypes;delete o[e],this.keyTypes=JSON.parse(JSON.stringify(o))},addKey(){this.value[this.newKeyName]=void 0,this.value={...this.value},this.keyTypes[this.newKeyName]=this.newKeyType,this.keyTypes={...this.keyTypes},this.newKeyName=""},updateModel(e,n){this.$emit("modelUpdated",e,n)}}},ht=e=>(t.pushScopeId("data-v-b7e3dcd7"),e=e(),t.popScopeId(),e),ks={class:"field-object-container"},ws={key:1},Cs=["id"],Es={key:0},Ss=["onUpdate:modelValue"],Ms={key:1},Vs=["onUpdate:modelValue"],Ts={key:2},Ns=["onUpdate:modelValue"],Bs=["onClick"],Is=[ht(()=>t.createElementVNode("option",{value:"string"}," String ",-1)),ht(()=>t.createElementVNode("option",{value:"number"}," Number ",-1)),ht(()=>t.createElementVNode("option",{value:"boolean"}," Boolean ",-1))];function As(e,n,o,r,i,a){const d=t.resolveComponent("vue-form-generator"),l=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("div",ks,[e.schema.schema?(t.openBlock(),t.createBlock(d,{key:0,model:e.value,options:e.formOptions,schema:e.schema.schema,onModelUpdated:a.updateModel},null,8,["model","options","schema","onModelUpdated"])):(t.openBlock(),t.createElementBlock("div",ws,[t.createElementVNode("table",{id:e.getFieldID(e.schema),class:t.normalizeClass(e.schema.fieldClasses)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(s,c)=>(t.openBlock(),t.createElementBlock("tr",{key:c},[t.createElementVNode("td",null,t.toDisplayString(c),1),i.keyTypes[c]==="string"?(t.openBlock(),t.createElementBlock("td",Es,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":m=>e.value[c]=m,type:"text"},null,8,Ss),[[t.vModelText,e.value[c]]])])):t.createCommentVNode("",!0),i.keyTypes[c]==="boolean"?(t.openBlock(),t.createElementBlock("td",Ms,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":m=>e.value[c]=m,type:"checkbox"},null,8,Vs),[[t.vModelCheckbox,e.value[c]]])])):t.createCommentVNode("",!0),i.keyTypes[c]==="number"?(t.openBlock(),t.createElementBlock("td",Ts,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":m=>e.value[c]=m,type:"number"},null,8,Ns),[[t.vModelText,e.value[c]]])])):t.createCommentVNode("",!0),t.createElementVNode("td",null,[t.createElementVNode("input",{type:"button",value:"x",onClick:m=>a.removeElement(c)},null,8,Bs)])]))),128))],10,Cs),t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":n[0]||(n[0]=s=>i.newKeyType=s)},Is,512),[[t.vModelSelect,i.newKeyType]]),t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[1]||(n[1]=s=>i.newKeyName=s),type:"text"},null,512),[[t.vModelText,i.newKeyName]]),t.createElementVNode("input",{type:"button",value:"Add key",onClick:n[2]||(n[2]=(...s)=>a.addKey&&a.addKey(...s))})]))])),[[l,i.attributes]])}const jn=j(_s,[["render",As],["__scopeId","data-v-b7e3dcd7"]]),Os={components:{TrashIcon:oe.TrashIcon},mixins:[X],inject:{autofillSlot:{from:G,default:void 0}},emits:["model-updated"],data(){return{newKeyName:""}},computed:{subSchema(){return this.schema.schema&&this.schema.schema.fields[0].schema},subFields(){return!this.subSchema&&this.schema.fields},hasObjectKeys(){return this.value&&Object.keys(this.value).length>0},transformedModel(){return this.subSchema&&this.subSchema.fields.length>=1&&this.subSchema.fields[0].type==="array"?new Proxy(this.model[this.schema.model],{get:(e,n)=>({[this.schema.model]:e[n]}),set:(e,n,o)=>e[n]=o[this.schema.model]}):this.model[this.schema.model]}},mounted(){this.value||(this.value={});let e=[];this.subSchema?e=this.subSchema.fields:this.subFields&&(e=this.schema.fields[0].schema),this.value=this.transformMapModelValuesToObject(this.model,e,this.schema.model)},methods:{removeElement(e){const n=this.value;delete n[e],this.value={...n}},transformMapModelValuesToObject(e,n,o){const r={};return Object.keys(e).map(i=>{const a=i.indexOf(o+"-");if(a>-1&&Array.isArray(n))if(n.length>0){const l=i.split("-").filter(c=>n.find(m=>m.model===c)),s=i.split(`-${l}`)[0].split(`${o}-`)[1];l.length?r[s]={...r[s],[l]:e[i]}:r[i.substring(a+`${o}-`.length)]=e[i]}else r[i.substring(`${o}-`.length)]=e[i];else{const l=i.split("-").filter(c=>c===this.schema.model),s=i.split(`-${l}`)[0].split(`${o}-`)[1];s&&(r[s]=e[i])}return i}),r},addKey(){const e=this.subSchema&&Array.isArray(this.subSchema.fields)&&this.subSchema.fields.length===1&&this.subSchema.fields[0].type==="array",n=this.subSchema?e?[""]:{}:"";this.value[this.newKeyName]=n,this.newKeyName=""},updateModel(e,n){this.$emit("model-updated",this.model[this.schema.model],n)}}},Dn=e=>(t.pushScopeId("data-v-3a00058c"),e=e(),t.popScopeId(),e),Fs=["id"],$s=["data-testid"],Us={class:"item-wrapper"},Ls={class:"index-wrapper"},js=Dn(()=>t.createElementVNode("hr",{class:"divider"},null,-1)),Ds={key:0},vs={key:1},qs=["onUpdate:modelValue","placeholder","onInput"],Rs={key:0,class:"hint"},Ps=Dn(()=>t.createElementVNode("hr",{class:"wide-divider"},null,-1)),Ks={class:"input-item"},xs=["placeholder"],zs={key:0,class:"hint"};function Ys(e,n,o,r,i,a){const d=t.resolveComponent("TrashIcon"),l=t.resolveComponent("KButton"),s=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",{id:e.getFieldID(e.schema),class:t.normalizeClass(["object-advanced-wrapper",e.schema.fieldClasses])},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(c,m)=>(t.openBlock(),t.createElementBlock("div",{key:m,"data-testid":`field-object-key-${m}`},[t.createElementVNode("div",null,[t.createElementVNode("div",Us,[t.createElementVNode("div",Ls,[t.createElementVNode("strong",null,t.toDisplayString(m),1),t.createElementVNode("div",null,[t.createVNode(l,{appearance:"tertiary",class:"delete",icon:"",type:"button",onClick:h=>a.removeElement(m)},{default:t.withCtx(()=>[t.createVNode(d)]),_:2},1032,["onClick"])])]),js,a.subSchema?(t.openBlock(),t.createElementBlock("div",Ds,[t.createVNode(s,{model:a.transformedModel[m],options:{helpAsHtml:!0},schema:a.subSchema,onModelUpdated:a.updateModel},null,8,["model","schema","onModelUpdated"])])):(t.openBlock(),t.createElementBlock("div",vs,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":h=>e.value[m]=h,class:"form-control",placeholder:e.schema.fields&&e.schema.fields[0].schema.placeholder,type:"text",onInput:h=>a.updateModel(e.value[m],e.model[e.schema.model])},null,40,qs),[[t.vModelText,e.value[m]]]),e.schema.fields&&e.schema.fields[0].schema.hint?(t.openBlock(),t.createElementBlock("p",Rs,t.toDisplayString(e.schema.fields[0].schema.hint),1)):t.createCommentVNode("",!0),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.autofillSlot),{schema:e.schema.fields&&e.schema.fields[0].schema||e.schema.values,update:h=>e.value[m]=h,value:e.value[m]},null,8,["schema","update","value"]))])),Ps])])],8,$s))),128)),t.createElementVNode("div",{class:t.normalizeClass(["input-wrapper",{indent:a.hasObjectKeys}])},[t.createElementVNode("div",Ks,[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=c=>i.newKeyName=c),class:"form-control","data-testid":"keyname-input",placeholder:e.schema.placeholder,type:"text"},null,8,xs),[[t.vModelText,i.newKeyName]]),t.createVNode(l,{appearance:"tertiary","data-testid":"add-key",disabled:!i.newKeyName,onClick:a.addKey},{default:t.withCtx(()=>[t.createTextVNode(" + Add "+t.toDisplayString(e.schema.buttonLabel||e.schema.label),1)]),_:1},8,["disabled","onClick"])]),e.schema.hintText?(t.openBlock(),t.createElementBlock("p",zs,t.toDisplayString(e.schema.hintText),1)):t.createCommentVNode("",!0)],2)],10,Fs)}const vn=j(Os,[["render",Ys],["__scopeId","data-v-3a00058c"]]),Hs={class:"radio-selection-group"},qn=j(t.defineComponent({__name:"FieldRadio",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:o}){const r=e,i=o,a=t.toRefs(r),{updateModelValue:d,value:l,clearValidationErrors:s}=ke.useAbstractFields({model:a.model,schema:r.schema,formOptions:r.formOptions,emitModelUpdated:m=>{i("modelUpdated",m.value,m.model)}});n({clearValidationErrors:s});const c=m=>{let h=m;typeof m=="string"&&(h=m.split(","),r.schema.array||(h=h.toString())),d(h,m)};return(m,h)=>{const p=t.resolveComponent("KRadio");return t.openBlock(),t.createElementBlock("div",Hs,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.schema.values,(M,I)=>(t.openBlock(),t.createBlock(p,{id:e.schema.name+"-"+I,key:M.value,modelValue:t.unref(l),"onUpdate:modelValue":h[0]||(h[0]=u=>t.isRef(l)?l.value=u:null),label:M.name,"label-attributes":{info:e.schema.help},name:e.schema.name,required:e.schema.required||void 0,"selected-value":M.value,onChange:c},null,8,["id","modelValue","label","label-attributes","name","required","selected-value"]))),128))])}}}),[["__scopeId","data-v-09b8afda"]]),Rn=t.defineComponent({__name:"FieldSelect",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:o}){const r=e,i=o,a=t.computed(()=>r.schema.selectOptions||{}),d=u=>q(u)?null:u,l=t.toRefs(r),{getFieldID:s,clearValidationErrors:c,value:m}=ke.useAbstractFields({model:l.model,schema:r.schema,formOptions:r.formOptions,formatValueToField:d,emitModelUpdated:u=>{i("modelUpdated",u.value,u.model)}});n({clearValidationErrors:c});const h=t.computed(()=>{const u=r.schema.values;return p(typeof u=="function"?u.apply(this,[r.model,r.schema]):u)}),p=u=>{const w=[];return u.forEach(_=>{w.push({label:I(_),value:M(_),disabled:typeof _=="object"&&_.disabled||void 0,group:typeof _=="object"&&String(_.group||"").toUpperCase()||void 0})}),w},M=u=>{if(H(u)){if(a.value&&typeof a.value.value<"u")return u[a.value.value];if(typeof u.id<"u")return String(u.id);throw new Error("`id` is not defined. If you want to use another key name, add a `value` property under `selectOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")}else return u},I=u=>{if(H(u)){if(a.value&&typeof a.value.name<"u")return u[a.value.name];if(typeof u.name<"u")return String(u.name);throw new Error("`name` is not defined. If you want to use another key name, add a `name` property under `selectOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/select.html#select-field-with-object-items")}else return String(u)};return(u,w)=>{const _=t.resolveComponent("KSelect");return t.openBlock(),t.createBlock(_,{id:t.unref(s)(e.schema),modelValue:t.unref(m),"onUpdate:modelValue":w[0]||(w[0]=B=>t.isRef(m)?m.value=B:null),class:t.normalizeClass(e.schema.fieldClasses),clearable:!e.schema.required,disabled:e.disabled||void 0,items:h.value,"kpop-attributes":{"data-testid":`${t.unref(s)(e.schema)}-items`},"label-attributes":{info:e.schema.help},name:e.schema.inputName,placeholder:a.value.hideNoneSelectedText?void 0:a.value.noneSelectedText||"Nothing Selected",required:e.schema.required||void 0,width:"100%"},null,8,["id","modelValue","class","clearable","disabled","items","kpop-attributes","label-attributes","name","placeholder","required"])}}}),Gs={name:"FieldArray",components:{FieldArrayItem:On,FieldArrayMultiItem:Fn,FieldSelect:Rn,FieldMetric:Ln,FieldObject:jn,FieldObjectAdvanced:vn,FieldAutoSuggest:$n,FieldRadio:qn,FieldArrayCardContainer:An,FieldInput:Un},mixins:[X],inject:{autofillSlot:{from:G,default:void 0}},props:{newElementButtonLabel:{type:String,default:"New Item"},removeElementButtonLabel:{type:String,default:"x"}},emits:["refreshModel"],methods:{generateSchema(e,n,o){var i,a,d;let r;return n&&(r=JSON.parse(JSON.stringify(n)),(d=(a=(i=r.schema)==null?void 0:i.fields)==null?void 0:a.map)==null||d.call(a,l=>(l.id=`${l.id||l.model}-${o}`,l))),{...r,set(l,s){e[o]=s},get(){return e[o]}}},newElement(){let e=this.value,n;(!e||!e.push)&&(e=[]),this.schema.items&&this.schema.items.default&&(typeof this.schema.items.default=="function"?n=this.schema.items.default():n=this.schema.items.default),e.push(n),this.value=[...e]},removeElement(e){this.value=this.value.filter((n,o)=>o!==e)},getFieldType(e){return"field-"+e.type},modelUpdated(){this.$emit("refreshModel")},handleInput(e,n){this.value=this.value.map((o,r)=>r===n?e:o)}}},Ws=["id"],Zs={key:1},Js=["onUpdate:modelValue","aria-labelledby","type"],Xs=["onUpdate:modelValue","aria-labelledby"];function Qs(e,n,o,r,i,a){const d=t.resolveComponent("KTextArea"),l=t.resolveComponent("KInput"),s=t.resolveComponent("KButton");return e.schema?(t.openBlock(),t.createElementBlock("div",{key:0,id:e.getFieldID(e.schema),class:t.normalizeClass(e.schema.fieldClasses)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.value,(c,m)=>(t.openBlock(),t.createElementBlock("div",{key:m,class:t.normalizeClass(e.schema.fieldItemsClasses)},[e.schema.items&&e.schema.itemContainerComponent?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.schema.itemContainerComponent),{key:0,index:m,model:c,schema:a.generateSchema(e.value,e.schema.items,m),onRemoveItem:h=>a.removeElement(m)},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.getFieldType(e.schema.items)),{"form-options":e.formOptions,model:c,schema:a.generateSchema(e.value,e.schema.items,m),onModelUpdated:a.modelUpdated},null,40,["form-options","model","schema","onModelUpdated"]))]),_:2},1064,["index","model","schema","onRemoveItem"])):e.schema.items?(t.openBlock(),t.createElementBlock("span",Zs,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.getFieldType(e.schema.items)),{"form-options":e.formOptions,model:c,schema:a.generateSchema(e.value,e.schema.items,m),onModelUpdated:a.modelUpdated},null,40,["form-options","model","schema","onModelUpdated"]))])):e.schema.itemContainerComponent?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.schema.itemContainerComponent),{key:2,"data-testid":`${e.getFieldID(e.schema)}-item-${m}`,model:c,schema:a.generateSchema(e.value,e.schema.items,m),onRemoveItem:h=>a.removeElement(m)},{after:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.autofillSlot),{schema:e.schema,update:h=>e.value[m]=h,value:e.value[m]},null,8,["schema","update","value"]))]),default:t.withCtx(()=>{var h;return[e.schema.inputAttributes&&e.schema.inputAttributes.type==="textarea"?(t.openBlock(),t.createBlock(d,t.mergeProps({key:0,ref_for:!0},e.schema.inputAttributes,{id:e.getFieldID(e.schema),modelValue:e.value[m],"onUpdate:modelValue":p=>e.value[m]=p,"aria-labelledby":e.getLabelId(e.schema),class:e.schema.fieldClasses,maxlength:e.schema.max,minlength:e.schema.min,name:e.schema.inputName,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,rows:e.schema.rows||2}),null,16,["id","modelValue","onUpdate:modelValue","aria-labelledby","class","maxlength","minlength","name","placeholder","readonly","required","rows"])):!e.schema.inputAttributes||!e.schema.inputAttributes.type||e.schema.inputAttributes.type==="text"||e.schema.inputAttributes.type==="number"?(t.openBlock(),t.createBlock(l,t.mergeProps({key:1,"aria-labelledby":e.getLabelId(e.schema),ref_for:!0},e.schema.inputAttributes,{"model-value":e.value[m],type:e.schema.inputAttributes&&e.schema.inputAttributes.type||"text",onInput:p=>{a.handleInput(p,m)}}),null,16,["aria-labelledby","model-value","type","onInput"])):t.withDirectives((t.openBlock(),t.createElementBlock("input",t.mergeProps({key:2,"onUpdate:modelValue":p=>e.value[m]=p,"aria-labelledby":e.getLabelId(e.schema),ref_for:!0},e.schema.inputAttributes,{type:((h=e.schema.inputAttributes)==null?void 0:h.type)||"text"}),null,16,Js)),[[t.vModelDynamic,e.value[m]]])]}),_:2},1064,["data-testid","model","schema","onRemoveItem"])):(t.openBlock(),t.createElementBlock(t.Fragment,{key:3},[t.withDirectives(t.createElementVNode("input",t.mergeProps({ref_for:!0},e.schema.inputAttributes,{"onUpdate:modelValue":h=>e.value[m]=h,"aria-labelledby":e.getLabelId(e.schema),type:"text"}),null,16,Xs),[[t.vModelText,e.value[m]]]),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.autofillSlot),{schema:e.schema,update:h=>e.value[m]=h,value:e.value[m]},null,8,["schema","update","value"]))],64))],2))),128)),t.createVNode(s,{appearance:"tertiary",class:t.normalizeClass(e.schema.newElementButtonLabelClasses),"data-testid":`add-${e.getFieldID(e.schema)}`,type:"button",onClick:a.newElement},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.schema.newElementButtonLabel||o.newElementButtonLabel),1)]),_:1},8,["class","data-testid","onClick"])],10,Ws)):t.createCommentVNode("",!0)}const ed=j(Gs,[["render",Qs],["__scopeId","data-v-367d2ee8"]]),td={class:"form-field-wrapper field-checkbox"},nd=j(t.defineComponent({__name:"FieldCheckbox",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:o}){const r=e,i=o,a=t.toRefs(r),{getFieldID:d,value:l,clearValidationErrors:s}=ke.useAbstractFields({model:a.model,schema:r.schema,formOptions:r.formOptions,emitModelUpdated:c=>{i("modelUpdated",c.value,c.model)}});return n({clearValidationErrors:s}),(c,m)=>{const h=t.resolveComponent("KCheckbox");return t.openBlock(),t.createElementBlock("div",td,[t.createVNode(h,t.mergeProps(c.$attrs,{id:t.unref(d)(e.schema),modelValue:t.unref(l),"onUpdate:modelValue":m[0]||(m[0]=p=>t.isRef(l)?l.value=p:null),autocomplete:e.schema.autocomplete,class:e.schema.fieldClasses,disabled:e.disabled||void 0,help:e.hint?e.hint:void 0,name:e.schema.inputName,readonly:e.schema.readonly,required:e.schema.required,width:e.schema.width}),null,16,["id","modelValue","autocomplete","class","disabled","help","name","readonly","required","width"])])}}}),[["__scopeId","data-v-6b4ee1cd"]]);var od=4;function Pn(e){return Oe(e,od)}const rd={class:"wrapper"},ad=["disabled"],id=["id","checked","disabled","onChange","name"],ld=["disabled"],sd={class:"info"},dd=t.createElementVNode("div",{class:"arrow"},null,-1),cd={class:"dropList"},md=["id","checked","disabled","onChange","name"];function hd(e,n,o,r,i,a){const d=t.resolveDirective("attributes");return t.withDirectives((t.openBlock(),t.createElementBlock("div",rd,[e.schema.listBox?(t.openBlock(),t.createElementBlock("div",{key:0,class:"listbox form-control",disabled:e.disabled||null},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.items,l=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["list-row",{"is-checked":a.isItemChecked(l)}])},[t.createElementVNode("label",null,[t.withDirectives(t.createElementVNode("input",{id:e.getFieldID(e.schema,!0),type:"checkbox",checked:a.isItemChecked(l)||null,disabled:e.disabled||null,onChange:s=>a.onChanged(s,l),name:a.getInputName(l)},null,40,id),[[d,"input"]]),t.createTextVNode(t.toDisplayString(a.getItemName(l)),1)])],2))),256))],8,ad)):t.createCommentVNode("",!0),e.schema.listBox?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:1,class:"combobox form-control",disabled:e.disabled||null},[t.createElementVNode("div",{class:t.normalizeClass(["mainRow",{expanded:i.comboExpanded}]),onClick:n[0]||(n[0]=(...l)=>a.onExpandCombo&&a.onExpandCombo(...l))},[t.createElementVNode("div",sd,t.toDisplayString(a.selectedCount)+" selected",1),dd],2),t.createElementVNode("div",cd,[i.comboExpanded?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(a.items,l=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["list-row",{"is-checked":a.isItemChecked(l)}])},[t.createElementVNode("label",null,[t.withDirectives(t.createElementVNode("input",{id:e.getFieldID(e.schema,!0),type:"checkbox",checked:a.isItemChecked(l)||null,disabled:e.disabled||null,onChange:s=>a.onChanged(s,l),name:a.getInputName(l)},null,40,md),[[d,"input"]]),t.createTextVNode(t.toDisplayString(a.getItemName(l)),1)])],2))),256)):t.createCommentVNode("",!0)])],8,ld))])),[[d,"wrapper"]])}const ud=j({mixins:[X],data(){return{comboExpanded:!1}},computed:{items(){const e=this.schema.values;return typeof e=="function"?e.apply(this,[this.model,this.schema]):e},selectedCount(){return this.value?this.value.length:0}},methods:{getInputName(e){return this.schema&&this.schema.inputName&&this.schema.inputName.length>0?sn(this.schema.inputName+"_"+this.getItemValue(e)):sn(this.getItemValue(e))},getItemValue(e){if(H(e)){if(typeof this.schema.checklistOptions<"u"&&typeof this.schema.checklistOptions.value<"u")return e[this.schema.checklistOptions.value];if(typeof e.value<"u")return e.value;throw new Error("`value` is not defined. If you want to use another key name, add a `value` property under `checklistOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/checklist.html#checklist-field-with-object-values")}else return e},getItemName(e){if(H(e)){if(typeof this.schema.checklistOptions<"u"&&typeof this.schema.checklistOptions.name<"u")return e[this.schema.checklistOptions.name];if(typeof e.name<"u")return e.name;throw new Error("`name` is not defined. If you want to use another key name, add a `name` property under `checklistOptions` in the schema. https://icebob.gitbooks.io/vueformgenerator/content/fields/checklist.html#checklist-field-with-object-values")}else return e},isItemChecked(e){return this.value&&this.value.indexOf(this.getItemValue(e))!==-1},onChanged(e,n){if((q(this.value)||!Array.isArray(this.value))&&(this.value=[]),e.target.checked){const o=Pn(this.value);o.push(this.getItemValue(n)),this.value=o}else{const o=Pn(this.value);o.splice(this.value.indexOf(this.getItemValue(n)),1),this.value=o}},onExpandCombo(){this.comboExpanded=!this.comboExpanded}}},[["render",hd]]),fd={name:"FieldKeyValuePairs",components:{TrashIcon:oe.TrashIcon},mixins:[X],inject:{autofillSlot:{from:G,default:void 0}},data(){return{pairs:[]}},watch:{pairs:{handler(){this.updateValue()},deep:!0}},created(){var n,o;this.value||(this.value={});const e=((o=this.model)==null?void 0:o[(n=this.schema)==null?void 0:n.model])??{};Object.keys(e).forEach(r=>{this.pairs.push({key:r,value:e[r]})})},methods:{onInput(e,n,o){this.pairs[n][o]=e.target.value},updateValue(){this.value=this.pairs.reduce((e,{key:n,value:o})=>({...e,...n&&o?{[n]:o}:null}),{})},addPair(){this.pairs.push({key:"",value:""})},removePair(e){this.pairs.splice(e,1)}}},pd={class:"key-value-pairs-editor"},gd={class:"pair-item-cell"},yd=["data-testid","placeholder","value","onInput"],bd={class:"pair-item-cell"},_d=["data-testid","placeholder","value","onInput"];function kd(e,n,o,r,i,a){const d=t.resolveComponent("TrashIcon"),l=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",pd,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.pairs,(s,c)=>(t.openBlock(),t.createElementBlock("div",{key:c,class:"pair-item"},[t.createElementVNode("div",gd,[t.createElementVNode("input",{class:"form-control","data-testid":`${e.getFieldID(e.schema)}-pair-key-${c}`,placeholder:e.schema.keyInputPlaceholder??"Key",type:"text",value:s.key,onInput:m=>{a.onInput(m,c,"key")}},null,40,yd),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.autofillSlot),{schema:e.schema,update:m=>a.onInput({target:{value:m}},c,"key"),value:s.key},null,8,["schema","update","value"]))]),t.createElementVNode("div",bd,[t.createElementVNode("input",{class:"form-control","data-testid":`${e.getFieldID(e.schema)}-pair-value-${c}`,placeholder:e.schema.valueInputPlaceholder??"Value",type:"text",value:s.value,onInput:m=>{a.onInput(m,c,"value")}},null,40,_d),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.autofillSlot),{schema:e.schema,update:m=>a.onInput({target:{value:m}},c,"value"),value:s.value},null,8,["schema","update","value"]))]),t.createVNode(l,{appearance:"tertiary","data-testid":`${e.getFieldID(e.schema)}-remove-pair-${c}`,onClick:()=>{a.removePair(c)}},{default:t.withCtx(()=>[t.createVNode(d)]),_:2},1032,["data-testid","onClick"])]))),128)),t.createVNode(l,{appearance:"tertiary",class:t.normalizeClass(e.schema.newElementButtonLabelClasses),"data-testid":`${e.getFieldID(e.schema)}-add-pair`,type:"button",onClick:a.addPair},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.schema.newElementButtonLabel??"+ Add Pair"),1)]),_:1},8,["class","data-testid","onClick"])])}const wd=j(fd,[["render",kd],["__scopeId","data-v-70998d5b"]]),Cd=j(t.defineComponent({__name:"FieldLabel",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0}},setup(e){const n=e,o=t.toRefs(n),{getFieldID:r,value:i}=ke.useAbstractFields({model:o.model,schema:n.schema,formOptions:n.formOptions});return(a,d)=>{const l=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["field-label",e.schema.fieldClasses])},[t.createVNode(l,{id:t.unref(r)(e.schema)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)),1)]),_:1},8,["id"])],2)}}}),[["__scopeId","data-v-d046a15a"]]),Ed={mixins:[X],emits:["model-updated"],methods:{onUpdate(e){this.$emit("model-updated",e,this.schema.model)}}};function Sd(e,n,o,r,i,a){const d=t.resolveComponent("KMultiselect");return t.openBlock(),t.createBlock(d,{"aria-labelledby":e.getLabelId(e.schema),"data-testid":"field-multiselect",items:e.schema.values,"label-attributes":{info:e.schema.help},"model-value":e.value,placeholder:e.schema.placeholder,required:e.schema.required||void 0,width:"100%","onUpdate:modelValue":a.onUpdate},null,8,["aria-labelledby","items","label-attributes","model-value","placeholder","required","onUpdate:modelValue"])}const Md=j(Ed,[["render",Sd]]),Vd={mixins:[X],emits:["model-updated"],data(){return{checkedGroup:null,fieldModel:{...this.model},fieldSchema:[]}},watch:{checkedGroup:{handler(e,n){if(n===null){this.fieldModel={...this.model};return}const o=this.schema.fields[e].fields,r=this.schema.fields[n].fields;r&&r.forEach(i=>this.updateModel("",i.model)),o&&o.forEach(i=>this.updateModel(this.fieldModel[i.model],i.model))}}},async created(){await this.$nextTick(),this.schema.fields.forEach((e,n)=>{e.fields&&e.fields.forEach(o=>{this.model[o.model]&&(this.checkedGroup=n,this.fieldSchema.push(o.model))})}),this.checkedGroup===null&&(this.checkedGroup=0)},methods:{updateModel(e,n){this.$emit("model-updated",e,n)}}},Td={class:"selection-group"},Nd={class:"form-group horizontal-radios"},Bd={class:"radio-group"},Id=["value"],Ad={class:"control-help"},Od={class:"option-field"},Fd={class:"option-field-container"};function $d(e,n,o,r,i,a){const d=t.resolveComponent("vue-form-generator");return t.openBlock(),t.createElementBlock("div",Td,[t.createElementVNode("div",Nd,[t.createElementVNode("div",Bd,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.schema.fields,(l,s)=>(t.openBlock(),t.createElementBlock("div",{key:s,class:"option-group"},[t.createElementVNode("label",{class:t.normalizeClass(["k-label",`${l.label}-check`])},[t.withDirectives(t.createElementVNode("input",{"onUpdate:modelValue":n[0]||(n[0]=c=>i.checkedGroup=c),class:"k-input",type:"radio",value:s},null,8,Id),[[t.vModelRadio,i.checkedGroup]]),t.createTextVNode(" "+t.toDisplayString(l.label)+" ",1),t.createElementVNode("div",Ad,t.toDisplayString(l.description),1)],2)]))),128))])]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.schema.fields,(l,s)=>(t.openBlock(),t.createElementBlock("div",{key:s,class:"option-group"},[t.withDirectives(t.createElementVNode("div",Od,[t.createElementVNode("div",Fd,[t.createVNode(d,{model:e.model,options:{helpAsHtml:!0},schema:{fields:l.fields},onModelUpdated:a.updateModel},null,8,["model","schema","onModelUpdated"])])],512),[[t.vShow,l.fields&&i.checkedGroup===s]])]))),128))])}const Ud=j(Vd,[["render",$d],["__scopeId","data-v-0aaaf597"]]),Ge={general:{packageName:"forms"},"post-function":{tags:{hint:"e.g. tag1, tag2, tag3",newElementButtonLabel:"+ Add"},enabled:{newElementButtonLabel:"+ Add"},selectionGroup:{newElementButtonLabel:"+ Add"},instance_name:{newElementButtonLabel:"+ Add"},name:{newElementButtonLabel:"+ Add"},"config-certificate":{help:"Array of stringified Lua code to be cached and run in sequence during the certificate phase.",newElementButtonLabel:"+ Add"},"config-access":{help:"Array of stringified Lua code to be cached and run in sequence during the access phase.",newElementButtonLabel:"+ Add"},"config-body_filter":{help:"Array of stringified Lua code to be cached and run in sequence during the body_filter phase.",newElementButtonLabel:"+ Add"},"config-header_filter":{help:"Array of stringified Lua code to be cached and run in sequence during the header_filter phase.",newElementButtonLabel:"+ Add"},"config-functions":{newElementButtonLabel:"+ Add"},"config-log":{newElementButtonLabel:"+ Add"},"config-rewrite":{newElementButtonLabel:"+ Add"},"config-ws_client_frame":{newElementButtonLabel:"+ Add"},"config-ws_close":{newElementButtonLabel:"+ Add"},"config-ws_handshake":{newElementButtonLabel:"+ Add"},"config-ws_upstream_frame":{newElementButtonLabel:"+ Add"}},"exit-transformer":{"config-functions":{newElementButtonLabel:"+ Add"}},rla:{view_advanced_fields:"View Advanced Fields",window_type:{label:"Rate Limit Window Type",help:"Sets the time window type to either <code>sliding</code> (default) or <code>fixed</code>.<br><ul><li>Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight.</li><li>Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window's counters.</li></ul>",options:{fixed:"Fixed",sliding:"Sliding"}},request_limits:{title:"Request Limits",subtitle:"Set one or more limits on the number of API requests allowed within a defined timeframe.",label:"Limit",label_index:"Limit {index}",request_number:"Request number",time_interval:"Time interval",interval_determiner:"Every",seconds:"Seconds"},start_with_a_use_case:"Start with a use case:",use_case_index:"Use case {index}",error_message:{label:"Error Message",code_placeholder:"Code Message",message_placeholder:"Error Message",help:"Set a custom error code and message to be returned when the rate limit is exceeded."},identifiers:{label:"Identifiers",options:{ip:"IP",credential:"Credential",consumer:"Consumer",service:"Service",header:"Header",path:"Path","consumer-group":"Consumer Group"}},redis:{title:"Configure your Redis",address_example:"e.g. localhost:6379"}},vfg:{labels:{on:"On",off:"Off"}}},Ld={class:"form-field-wrapper"},jd=t.defineComponent({__name:"FieldSwitch",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:o}){const r=e,i=o,{t:a}=Ue.createI18n("en-us",Ge),d=p=>p!=null&&r.schema.valueOn?p===r.schema.valueOn:p,l=p=>p!=null&&r.schema.valueOn?p?r.schema.valueOn:r.schema.valueOff:p,s=t.toRefs(r),{getFieldID:c,value:m,clearValidationErrors:h}=ke.useAbstractFields({model:s.model,schema:r.schema,formOptions:r.formOptions,formatValueToField:d,formatValueToModel:l,emitModelUpdated:p=>{i("modelUpdated",p.value,p.model)}});return n({clearValidationErrors:h}),(p,M)=>{const I=t.resolveComponent("KInputSwitch");return t.openBlock(),t.createElementBlock("div",Ld,[t.createVNode(I,{id:t.unref(c)(e.schema),modelValue:t.unref(m),"onUpdate:modelValue":M[0]||(M[0]=u=>t.isRef(m)?m.value=u:null),autocomplete:e.schema.autocomplete,class:t.normalizeClass(e.schema.fieldClasses),disabled:e.disabled||void 0,label:t.unref(m)?e.schema.textOn||t.unref(a)("vfg.labels.on"):e.schema.textOff||t.unref(a)("vfg.labels.off"),"label-attributes":{info:e.schema.help},name:e.schema.inputName,required:e.schema.required||void 0},null,8,["id","modelValue","autocomplete","class","disabled","label","label-attributes","name","required"])])}}}),Dd={class:"field-textarea"},vd={name:"FormGroup",components:Object.freeze(Object.defineProperty({__proto__:null,FieldAdvanced:Jl,FieldArray:ed,FieldArrayCardContainer:An,FieldArrayItem:On,FieldArrayMultiItem:Fn,FieldAutoSuggest:$n,FieldCheckbox:nd,FieldChecklist:ud,FieldInput:Un,FieldKeyValuePairs:wd,FieldLabel:Cd,FieldMetric:Ln,FieldMultiselect:Md,FieldObject:jn,FieldObjectAdvanced:vn,FieldRadio:qn,FieldSelect:Rn,FieldSelectionGroup:Ud,FieldSwitch:jd,FieldTextArea:j(t.defineComponent({__name:"FieldTextArea",props:{disabled:{type:Boolean,default:!1},formOptions:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},schema:{type:Object,required:!0},vfg:{type:Object,required:!0},errors:{type:Array,default:()=>[]},hint:{type:String,default:""}},emits:["modelUpdated"],setup(e,{expose:n,emit:o}){const r=e,i=o,a=t.toRefs(r),d=t.inject(G,void 0),{updateModelValue:l,getFieldID:s,clearValidationErrors:c,value:m}=ke.useAbstractFields({model:a.model,schema:r.schema,formOptions:r.formOptions,emitModelUpdated:p=>{i("modelUpdated",p.value,p.model)}});n({clearValidationErrors:c});const h=p=>{m.value=p,l(p,p)};return(p,M)=>{const I=t.resolveComponent("KTextArea");return t.openBlock(),t.createElementBlock("div",Dd,[t.createVNode(I,t.mergeProps(p.$attrs,{id:t.unref(s)(e.schema),modelValue:t.unref(m),"onUpdate:modelValue":M[0]||(M[0]=u=>t.isRef(m)?m.value=u:null),class:e.schema.fieldClasses,disabled:e.disabled||void 0,help:e.hint||void 0,maxlength:e.schema.max,minlength:e.schema.min,name:e.schema.inputName,placeholder:e.schema.placeholder,readonly:e.schema.readonly,required:e.schema.required,rows:e.schema.rows||2}),null,16,["id","modelValue","class","disabled","help","maxlength","minlength","name","placeholder","readonly","required","rows"]),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(d)),{schema:e.schema,update:h,value:t.unref(m)},null,8,["schema","value"]))])}}}),[["__scopeId","data-v-b6cec018"]])},Symbol.toStringTag,{value:"Module"})),mixins:[dn],inject:{"vfg-array-item-index":{default:void 0}},props:{vfg:{type:Object,required:!0},model:{type:Object,default:()=>{}},options:{type:Object,default:()=>{}},field:{type:Object,required:!0},errors:{type:Array,default(){return[]}}},emits:["validated","modelUpdated","refreshModel"],data(){return{child:t.ref()}},computed:{schema(){var n;if(!((n=this.field)!=null&&n.schema)||!Array.isArray(this.field.schema.fields))return this.field;const e=this["vfg-array-item-index"];return typeof e!="number"||Number.isNaN(e)?this.field:{...this.field,schema:{...this.field.schema,fields:this.field.schema.fields.map(o=>({...o,...o.id?{id:`${o.id}-${e}`}:void 0}))}}}},methods:{fieldTypeHasLabel(e){if(q(e.label))return!1;let n="";switch(e.type==="input"?n=e.inputType:n=e.type,n){case"button":case"submit":case"reset":return!1;default:return!0}},getFieldID(e){const n=F(this.options,"fieldIdPrefix","");return it(e,n)},getTooltipId(e){return`${this.getFieldID(e)}-tooltip`},getFieldType(e){return"field-"+e.type},getButtonType(e){return F(e,"type","button")},onFieldValidated(e,n,o){this.$emit("validated",e,n,o)},buttonVisibility(e){return e.buttons&&e.buttons.length>0},buttonClickHandler(e,n,o){return e.onclick.call(this,this.model,n,o,this)},fieldHint(e){return L(e.hint)?e.hint.call(this,this.model,e,this):e.hint},fieldErrors(e){return this.errors.filter(n=>n.field.fieldName===e.fieldName).map(n=>n.error)},onRefreshModel(){this.$emit("refreshModel")},onModelUpdated(e,n){this.$emit("modelUpdated",e,n)},validate(e){return this.$refs.child.validate(e)},clearValidationErrors(){if(this.$refs.child)return this.$refs.child.clearValidationErrors()},formattedLabel(e){return e?e.replace(/^[cC]onfig\./,""):""}}},qd=e=>(t.pushScopeId("data-v-49ca89d6"),e=e(),t.popScopeId(),e),Rd=["innerHTML"],Pd={class:"icon-wrapper"},Kd=["innerHTML"],xd={key:0,class:"link-wrapper"},zd=qd(()=>t.createElementVNode("span",{class:"section-header"},"More info",-1)),Yd={class:"field-wrap"},Hd={key:0,class:"buttons"},Gd=["type","onClick","textContent"],Wd=["innerHTML"],Zd={key:2,class:"errors help-block"},Jd=["innerHTML"];function Xd(e,n,o,r,i,a){const d=t.resolveComponent("KExternalLink"),l=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["form-group",e.getFieldRowClasses(o.field)])},[a.fieldTypeHasLabel(o.field)?(t.openBlock(),t.createBlock(l,{key:0,"aria-describedby":o.field.help?a.getTooltipId(o.field):void 0,class:t.normalizeClass([o.field.labelClasses,"form-group-label"]),for:a.getFieldID(o.field),info:!o.options.helpAsHtml&&o.field.help?o.field.help:void 0,"tooltip-attributes":o.field.help?{maxWidth:"300",placement:"top",tooltipId:a.getTooltipId(o.field)}:void 0},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",Pd,[t.createElementVNode("span",{innerHTML:a.formattedLabel(o.field.label)},null,8,Kd)]),o.field.link?(t.openBlock(),t.createElementBlock("div",xd,[t.createVNode(d,{href:o.field.link},{default:t.withCtx(()=>[zd]),_:1},8,["href"])])):t.createCommentVNode("",!0)]),_:2},[o.options.helpAsHtml&&o.field.help?{name:"tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:o.field.help},null,8,Rd)]),key:"0"}:void 0]),1032,["aria-describedby","class","for","info","tooltip-attributes"])):t.createCommentVNode("",!0),t.createElementVNode("div",Yd,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.getFieldType(o.field)),t.mergeProps(e.$attrs,{ref:"child",disabled:e.fieldDisabled(o.field)||null,"form-options":o.options,hint:o.field.hint&&a.getFieldType(o.field)==="field-input"?a.fieldHint(o.field):void 0,model:o.model,schema:a.schema,vfg:o.vfg,onModelUpdated:a.onModelUpdated,onRefreshModel:a.onRefreshModel,onValidated:a.onFieldValidated}),null,16,["disabled","form-options","hint","model","schema","vfg","onModelUpdated","onRefreshModel","onValidated"])),a.buttonVisibility(o.field)?(t.openBlock(),t.createElementBlock("div",Hd,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.field.buttons,(s,c)=>(t.openBlock(),t.createElementBlock("button",{key:c,class:t.normalizeClass(s.classes),type:a.getButtonType(s),onClick:m=>a.buttonClickHandler(s,o.field,m),textContent:t.toDisplayString(s.label)},null,10,Gd))),128))])):t.createCommentVNode("",!0)]),o.field.hint&&a.getFieldType(o.field)!=="field-input"?(t.openBlock(),t.createElementBlock("div",{key:1,class:"hint",innerHTML:a.fieldHint(o.field)},null,8,Wd)):t.createCommentVNode("",!0),a.fieldErrors(o.field).length>0?(t.openBlock(),t.createElementBlock("div",Zd,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.fieldErrors(o.field),(s,c)=>(t.openBlock(),t.createElementBlock("span",{key:c,innerHTML:s},null,8,Jd))),128))])):t.createCommentVNode("",!0)],2)}const Qd={name:"FormGenerator",components:{formGroup:j(vd,[["render",Xd],["__scopeId","data-v-49ca89d6"]])},mixins:[dn],inject:{autofillSlot:{from:G,default:void 0}},provide(){var e;return{...!this.autofillSlot&&{[G]:(e=this.$slots)==null?void 0:e[pe]}}},props:{schema:{type:Object,default:()=>{}},model:{type:Object,default:()=>{}},options:{type:Object,default(){return{validateAfterLoad:!1,validateAfterChanged:!1,child:t.ref([]),fieldIdPrefix:"",validateAsync:!1,validationErrorClass:"error",validationSuccessClass:"",helpAsHtml:!1}}},multiple:{type:Boolean,default:!1},isNewModel:{type:Boolean,default:!1},tag:{type:String,default:"fieldset",validator:function(e){return e.length>0}}},emits:["validated","modelUpdated","refreshModel"],data(){return{vfg:this,errors:[],children:t.ref([]),collapseStates:{}}},computed:{fields(){const e=[];return this.schema&&this.schema.fields&&x(this.schema.fields,n=>{(!this.multiple||n.multi===!0)&&e.push(n)}),e},groups(){const e=[];return this.schema&&this.schema.groups&&x(this.schema.groups.slice(0),n=>{e.push(n)}),e}},watch:{model:{deep:!0,handler(e,n){n!==e&&e!=null&&this.$nextTick(()=>{this.options.validateAfterLoad===!0&&this.isNewModel!==!0?this.validate():this.clearValidationErrors()})}}},mounted(){this.$nextTick(()=>{this.model&&(this.options.validateAfterLoad===!0&&this.isNewModel!==!0?this.validate():this.clearValidationErrors())})},methods:{fieldVisible(e){return L(e.visible)?e.visible.call(this,this.model,e,this):q(e.visible)?!0:e.visible},onFieldValidated(e,n,o){this.errors=this.errors.filter(i=>i.field.fieldName!==o.schema.fieldName),!e&&n&&n.length>0&&x(n,i=>{this.errors.push({field:o.schema,error:i})});const r=this.errors.length===0;this.$emit("validated",r,this.errors,this)},onRefreshModel(){this.$emit("refreshModel")},onModelUpdated(e,n){this.$emit("modelUpdated",e,n)},validate(e=null){e===null&&(e=F(this.options,"validateAsync",!1)),this.clearValidationErrors();const n=[],o=[];x(this.$refs.children,i=>{L(i.validate)&&(n.push(i.$refs.child),o.push(i.$refs.child.validate(!0)))});const r=i=>{const a=[];x(i,(l,s)=>{Array.isArray(l)&&l.length>0&&x(l,c=>{a.push({field:n[s].schema,error:c})})}),this.errors=a;const d=a.length===0;return this.$emit("validated",d,a,this),e?a:d};return e?Promise.all(o).then(r):r(o)},clearValidationErrors(){this.errors.splice(0),x(this.$refs.children,e=>{e.clearValidationErrors()})}}},ec={key:0,class:"vue-form-generator"},tc={key:0};function nc(e,n,o,r,i,a){const d=t.resolveComponent("form-group"),l=t.resolveComponent("KCollapse");return o.schema!=null?(t.openBlock(),t.createElementBlock("div",ec,[o.schema.fields?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.tag),{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.fields,s=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:s.model},[a.fieldVisible(s)?(t.openBlock(),t.createBlock(d,{key:0,ref_for:!0,ref:"children",errors:i.errors,field:s,model:o.model,options:o.options,vfg:i.vfg,onModelUpdated:a.onModelUpdated,onRefreshModel:a.onRefreshModel,onValidated:a.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:1})):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.groups,(s,c)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:`group-${c}`},[s.collapsible!==void 0&&s.collapsible!==!1?(t.openBlock(),t.createBlock(l,{key:0,class:"root-level-collapse","model-value":!1,title:s.collapsible.title},t.createSlots({default:t.withCtx(()=>{var m,h,p,M;return[(m=s.slots)!=null&&m.beforeContent?t.renderSlot(e.$slots,(h=s.slots)==null?void 0:h.beforeContent,{key:0}):t.createCommentVNode("",!0),s.fields.length===0&&((p=s.slots)!=null&&p.emptyState)?t.renderSlot(e.$slots,(M=s.slots)==null?void 0:M.emptyState,{key:1}):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.tag),{key:2,class:t.normalizeClass(e.getFieldRowClasses(s))},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.fields,I=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:I.model},[a.fieldVisible(I)?(t.openBlock(),t.createBlock(d,{key:0,ref_for:!0,ref:"children",errors:i.errors,field:I,model:o.model,options:o.options,vfg:i.vfg,onModelUpdated:a.onModelUpdated,onRefreshModel:a.onRefreshModel,onValidated:a.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"])),s.collapsible!==!0&&s.collapsible.nestedCollapsible&&s.collapsible.nestedCollapsible.fields.length>0?(t.openBlock(),t.createBlock(l,{key:3,class:"nested-collapse","model-value":i.collapseStates[`group-${c}-nested`]??!0,"trigger-alignment":"leading","trigger-label":i.collapseStates[`group-${c}-nested`]??!0?s.collapsible.nestedCollapsible.triggerLabel.expand:s.collapsible.nestedCollapsible.triggerLabel.collapse,"onUpdate:modelValue":I=>i.collapseStates[`group-${c}-nested`]=I},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.tag),{class:t.normalizeClass(e.getFieldRowClasses(s))},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.collapsible.nestedCollapsible.fields,I=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:I.model},[a.fieldVisible(I)?(t.openBlock(),t.createBlock(d,{key:0,ref_for:!0,ref:"children",errors:i.errors,field:I,model:o.model,options:o.options,vfg:i.vfg,onModelUpdated:a.onModelUpdated,onRefreshModel:a.onRefreshModel,onValidated:a.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"]))]),_:2},1032,["model-value","trigger-label","onUpdate:modelValue"])):t.createCommentVNode("",!0)]}),_:2},[s.collapsible.description?{name:"visible-content",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(s.collapsible.description),1)]),key:"0"}:void 0]),1032,["title"])):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.tag),{key:1,class:t.normalizeClass(e.getFieldRowClasses(s))},{default:t.withCtx(()=>[s.legend?(t.openBlock(),t.createElementBlock("legend",tc,t.toDisplayString(s.legend),1)):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.fields,m=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:m.model},[a.fieldVisible(m)?(t.openBlock(),t.createBlock(d,{key:0,ref_for:!0,ref:"children",errors:i.errors,field:m,model:o.model,options:o.options,vfg:i.vfg,onModelUpdated:a.onModelUpdated,onRefreshModel:a.onRefreshModel,onValidated:a.onFieldValidated},null,8,["errors","field","model","options","vfg","onModelUpdated","onRefreshModel","onValidated"])):t.createCommentVNode("",!0)],64))),128))]),_:2},1032,["class"]))],64))),128))])):t.createCommentVNode("",!0)}const z=j(Qd,[["render",nc]]),Kn=new Set(["config-client_id","config-client_secret","config-issuer"]),xn=new Set(["config-scopes_claim","config-scopes_required","config-audience_claim","config-audience_required","config-roles_claim","config-roles_required","config-groups_claim","config-groups_required","config-authenticated_groups_claim"]),oc={name:"OIDCForm",components:{VueFormGenerator:z},provide(){var e;return{[G]:(e=this.$slots)==null?void 0:e[pe]}},props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},data(){return{init:!1,authMethods:[],sessionManagement:!1,globalFields:null,commonFieldsSchema:null,authFieldsSchema:null,advancedFieldsSchema:{fields:[]},advancedFields:null,tabs:[{hash:"#common",title:"Common"},{hash:"#authorization",title:"Authorization"},{hash:"#advanced",title:"Advanced"}]}},computed:{displayForm(){return this.formModel.id&&this.isEditing||!this.isEditing}},watch:{formModel:{handler:function(){this.oidcSetup()}}},mounted(){this.oidcSetup()},methods:{oidcSetup(){var e;if(!this.init){this.init=!0,this.globalFields={fields:this.formSchema.fields.filter(o=>!o.model.startsWith("config")&&o.model!=="tags")};const n=this.formSchema.fields.reduce((o,r)=>(o[r.model]=r,o),{});this.commonFieldsSchema={fields:Array.from(Kn).reduce((o,r)=>(n[r]&&o.push(n[r]),o),[])},this.authFieldsSchema={fields:Array.from(xn).reduce((o,r)=>(n[r]&&o.push(n[r]),o),[])},this.advancedFieldsSchema={fields:this.formSchema.fields.filter(o=>o.model.startsWith("config")&&o.model!=="config-auth_methods"&&!Kn.has(o.model)&&!xn.has(o.model)||o.model==="tags").reduce((o,r)=>{var i,a,d,l;switch(r.model){case"config-client_jwk":{if(Array.isArray((a=(i=r.items)==null?void 0:i.schema)==null?void 0:a.fields))for(const s of r.items.schema.fields)s.label=s.model;o.push({...r,link:"https://docs.konghq.com/hub/kong-inc/openid-connect/#jwk-record",newElementButtonLabel:"+ Add Client JWK",...Array.isArray((l=(d=r.items)==null?void 0:d.schema)==null?void 0:l.fields)&&r.items.schema.fields.map(s=>({...s,label:s.model}))});break}case"config-session_redis_cluster_nodes":{o.push({...r,link:"https://docs.konghq.com/hub/kong-inc/openid-connect/#host-record",newElementButtonLabel:"+ Add Cluster Node"});break}default:o.push(r)}return o},[])},this.sessionManagement=this.isEditing?this.formModel["config-auth_methods"].includes("session"):!1,this.authMethods=[{label:"Authorization Code Flow",value:"authorization_code",hint:"authorization code flow",prop:this.isEditing?this.formModel["config-auth_methods"].includes("authorization_code"):!1},{label:"Bearer Access Token",value:"bearer",hint:"JWT access token verification",prop:this.isEditing?this.formModel["config-auth_methods"].includes("bearer"):!1},{label:"Client Credentials Grant",value:"client_credentials",hint:"OAuth client credentials grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("client_credentials"):!1},{label:"Passwords Grant",value:"password",hint:"OAuth legacy password grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("password"):!1},{label:"Introspection",value:"introspection",hint:"OAuth introspection",prop:this.isEditing?this.formModel["config-auth_methods"].includes("introspection"):!1},{label:"UserInfo",value:"userinfo",hint:"OpenID Connect user info endpoint authentication",prop:this.isEditing?this.formModel["config-auth_methods"].includes("userinfo"):!1},{label:"Kong OAuth",value:"kong_oauth2",hint:"Kong OAuth plugin issued tokens verification",prop:this.isEditing?this.formModel["config-auth_methods"].includes("kong_oauth2"):!1},{label:"Refresh Token",value:"refresh_token",hint:"OAuth refresh token grant",prop:this.isEditing?this.formModel["config-auth_methods"].includes("refresh_token"):!1}];for(const o of[this.commonFieldsSchema,this.authFieldsSchema,this.advancedFieldsSchema])for(const r of o.fields){const i=(e=n[r.model])==null?void 0:e.help;r.help===void 0&&typeof i=="string"&&(r.help=i)}}},getAuthMethodsValue(e,n){const o=[];for(let r=0;r<this.authMethods.length;r++)this.authMethods[r].prop&&this.authMethods[r].value!==e&&o.push(this.authMethods[r].value);return this.sessionManagement&&e&&o.push("session"),n&&(e?o.push(e):o.push("session")),o},handleUpdate(e,n){this.formModel["config-auth_methods"]=this.getAuthMethodsValue(n,e),this.onModelUpdated()}}},Ve=e=>(t.pushScopeId("data-v-bb72c68e"),e=e(),t.popScopeId(),e),rc={class:"general-settings"},ac={class:"link-wrapper"},ic=Ve(()=>t.createElementVNode("span",{class:"section-header"},"Common Configuration Settings",-1)),lc=Ve(()=>t.createElementVNode("div",{class:"description"}," Parameters for enabling the OpenID Connect plugin. Set these parameters before adding authorization, authentication, or other advanced configuration details. ",-1)),sc={class:"auth-method-container"},dc={class:"general-settings"},cc={class:"link-wrapper"},mc=Ve(()=>t.createElementVNode("span",{class:"section-header"},"Authorization Configuration Settings",-1)),hc=Ve(()=>t.createElementVNode("div",{class:"description"}," Parameters for setting up claims-based authorization. ",-1)),uc={class:"general-settings"},fc={class:"link-wrapper"},pc=Ve(()=>t.createElementVNode("span",{class:"section-header"},"Advanced Configuration Settings",-1)),gc=Ve(()=>t.createElementVNode("div",{class:"description"}," Advanced parameters for manually configuring the OpenID Connect plugin. ",-1));function yc(e,n,o,r,i,a){const d=t.resolveComponent("VueFormGenerator"),l=t.resolveComponent("KExternalLink"),s=t.resolveComponent("KLabel"),c=t.resolveComponent("KCheckbox"),m=t.resolveComponent("KInputSwitch"),h=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",null,[o.formModel.id&&o.isEditing||!o.isEditing?(t.openBlock(),t.createBlock(d,{key:0,class:"global-fields",model:o.formModel,options:o.formOptions,schema:i.globalFields,onModelUpdated:o.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(h,{tabs:i.tabs},{common:t.withCtx(()=>[t.createElementVNode("div",rc,[t.createElementVNode("div",ac,[t.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/#important-configuration-parameters"},{default:t.withCtx(()=>[ic]),_:1})]),lc,a.displayForm?(t.openBlock(),t.createBlock(d,{key:0,model:o.formModel,options:o.formOptions,schema:i.commonFieldsSchema,onModelUpdated:o.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(s,null,{default:t.withCtx(()=>[t.createTextVNode("Auth Methods")]),_:1}),t.createElementVNode("div",sc,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.authMethods,p=>(t.openBlock(),t.createElementBlock("div",{key:p.value,class:"auth-method"},[t.createVNode(c,{modelValue:p.prop,"onUpdate:modelValue":M=>p.prop=M,onChange:M=>a.handleUpdate(M,p.value)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(p.label),1)]),_:2},1032,["modelValue","onUpdate:modelValue","onChange"])]))),128))]),t.createVNode(m,{modelValue:i.sessionManagement,"onUpdate:modelValue":n[0]||(n[0]=p=>i.sessionManagement=p),label:"Enable Session Management",onChange:a.handleUpdate},null,8,["modelValue","onChange"])])]),authorization:t.withCtx(()=>[t.createElementVNode("div",dc,[t.createElementVNode("div",cc,[t.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/#authorization"},{default:t.withCtx(()=>[mc]),_:1})]),hc,a.displayForm?(t.openBlock(),t.createBlock(d,{key:0,model:o.formModel,options:o.formOptions,schema:i.authFieldsSchema,onModelUpdated:o.onModelUpdated},{"autofill-provider":t.withCtx(p=>[t.renderSlot(e.$slots,"autofill-provider",t.normalizeProps(t.guardReactiveProps(p)),void 0,!0)]),_:3},8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),advanced:t.withCtx(()=>[t.createElementVNode("div",uc,[t.createElementVNode("div",fc,[t.createVNode(l,{href:"https://docs.konghq.com/hub/kong-inc/openid-connect/"},{default:t.withCtx(()=>[pc]),_:1})]),gc,a.displayForm?(t.openBlock(),t.createBlock(d,{key:0,model:o.formModel,options:o.formOptions,schema:i.advancedFieldsSchema,onModelUpdated:o.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),_:3},8,["tabs"])])}const bc=j(oc,[["render",yc],["__scopeId","data-v-bb72c68e"]]),_c=j(t.defineComponent({__name:"PostFunction",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){var d;t.provide(G,(d=t.useSlots())==null?void 0:d[pe]);const{t:n,te:o}=Ue.createI18n("en-us",Ge),r=e,i=t.computed(()=>r.formModel.id&&r.isEditing||!r.isEditing),a=t.computed(()=>{const l=r.formSchema;return l.fields.map(s=>{const c=`post-function.${s.model}`;return s.hint=o(`${c}.hint`)&&n(`${c}.hint`)||s.hint,s.help=o(`${c}.help`)&&n(`${c}.help`)||s.help,s.newElementButtonLabel=o(`${c}.newElementButtonLabel`)&&n(`${c}.newElementButtonLabel`)||s.newElementButtonLabel,s.model!=="tags"&&(s.valueType==="array"||s.type==="array")&&(s.type="array",s.valueArrayType="array",s.itemContainerComponent="FieldArrayItem",s.fieldClasses="post-function-array-item-container",s.fieldItemsClasses="post-function-array-item",s.inputAttributes={...s.inputAttributes,type:"textarea"}),s}),l});return(l,s)=>i.value?(t.openBlock(),t.createBlock(z,{key:0,model:e.formModel,options:e.formOptions,schema:a.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-f54f37ae"]]),kc=j(t.defineComponent({__name:"ExitTransformer",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){var d;t.provide(G,(d=t.useSlots())==null?void 0:d[pe]);const{t:n,te:o}=Ue.createI18n("en-us",Ge),r=e,i=t.computed(()=>r.formModel.id&&r.isEditing||!r.isEditing),a=t.computed(()=>{const l=r.formSchema;return l.fields.map(s=>{const c=`exit-transformer.${s.model}`;return s.hint=o(`${c}.hint`)&&n(`${c}.hint`)||s.hint,s.help=o(`${c}.help`)&&n(`${c}.help`)||s.help,s.newElementButtonLabel=o(`${c}.newElementButtonLabel`)&&n(`${c}.newElementButtonLabel`)||s.newElementButtonLabel,s.model!=="tags"&&(s.valueType==="array"||s.type==="array")&&(s.type="array",s.valueArrayType="array",s.itemContainerComponent="FieldArrayItem",s.fieldClasses="exit-transformer-array-item-container",s.fieldItemsClasses="exit-transformer-array-item",s.inputAttributes={...s.inputAttributes,type:"textarea"}),s}),l});return(l,s)=>i.value?(t.openBlock(),t.createBlock(z,{key:0,model:e.formModel,options:e.formOptions,schema:a.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-0d5c541f"]]),wc={fields:[{inputType:"text",label:"Config.Account Email",model:"config-account_email",required:!0,type:"input"},{inputType:"text",label:"Config.Account Key.Key Id",model:"config-account_key-key_id",required:!0,type:"input"},{type:"input",inputType:"text",valueType:"string",label:"Config.Account Key.Key Set",model:"config-account_key-key_set",order:0,disabled:!1},{type:"checkbox",default:!1,valueType:"boolean",label:"Config.Allow Any Domain",model:"config-allow_any_domain",order:0,disabled:!1}]},Cc={fields:[{type:"input",default:"",inputType:"text",valueType:"string",model:"config-api_uri",label:"Config.Api Uri",order:0,disabled:!1},{type:"checkbox",default:!1,valueType:"boolean",model:"config-tos_accepted",label:"Config.Tos Accepted",order:0,disabled:!1}]},Ec={fields:[{type:"input",default:"",inputType:"text",valueType:"string",model:"config-api_uri",label:"Config.Api Uri",order:0,disabled:!1},{type:"input",inputType:"text",valueType:"string",model:"config-eab_hmac_key",label:"Config.Eab Hmac Key",order:0,disabled:!1},{type:"input",inputType:"text",valueType:"string",model:"config-eab_kid",label:"Config.Eab Kid",order:0,disabled:!1}]},we=e=>(t.pushScopeId("data-v-bb5a3a33"),e=e(),t.popScopeId(),e),Sc={class:"general-settings"},Mc=we(()=>t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"General Configuration Settings")],-1)),Vc=we(()=>t.createElementVNode("div",{class:"description"}," Parameters for enabling the ACME plugin. ",-1)),Tc=we(()=>t.createElementVNode("hr",null,null,-1)),Nc={class:"sub-form"},Bc={class:"general-settings"},Ic=we(()=>t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"Storage Configuration Settings")],-1)),Ac=we(()=>t.createElementVNode("div",{class:"description"}," Parameters for setting up storage. ",-1)),Oc={class:"sub-form"},Fc={class:"general-settings"},$c=we(()=>t.createElementVNode("div",{class:"header-wrapper"},[t.createElementVNode("span",{class:"section-header"},"Advanced Configuration Settings")],-1)),Uc=we(()=>t.createElementVNode("div",{class:"description"}," Advanced parameters for manually configuring the ACME plugin. ",-1)),Lc=j(t.defineComponent({__name:"ACMEForm",props:{formModel:{type:Object,required:!0},formSchema:{type:Object,required:!0},formOptions:{type:Object,default:()=>{}},onModelUpdated:{type:Function,required:!0},isEditing:{type:Boolean,required:!0}},setup(e){var A;t.provide(G,(A=t.useSlots())==null?void 0:A[pe]);const n=e,o=t.ref("zeroSsl"),r=t.ref("shm"),i=t.computed(()=>{var b;const f={};if((b=n.formSchema)!=null&&b.fields)for(const S of n.formSchema.fields)f[S.model]=S;return f}),a=t.computed(()=>{var b;const f=ne(wc);for(const S of f.fields){const T=(b=i.value[S.model])==null?void 0:b.help;S.help===void 0&&typeof T=="string"&&(S.help=T)}return f}),d=t.computed(()=>{var b;const f=ne(Cc);for(const S of f.fields){const T=(b=i.value[S.model])==null?void 0:b.help;S.help===void 0&&typeof T=="string"&&(S.help=T)}return f}),l=t.computed(()=>{var b;const f=ne(Ec);for(const S of f.fields){const T=(b=i.value[S.model])==null?void 0:b.help;S.help===void 0&&typeof T=="string"&&(S.help=T)}return f}),s=t.computed(()=>({fields:n.formSchema.fields.filter(f=>!f.model.startsWith("config")&&f.model!=="tags")})),c=t.computed(()=>({fields:a.value.fields.filter(b=>!d.value.fields.some(S=>S.model===b.model)&&!l.value.fields.some(S=>S.model===b.model))})),m=t.computed(()=>({fields:n.formSchema.fields.filter(b=>b.model.startsWith("config-storage")&&!b.model.startsWith("config-storage_config-consul")&&!b.model.startsWith("config-storage_config-redis")&&!b.model.startsWith("config-storage_config-shm")&&!b.model.startsWith("config-storage_config-vault"))})),h=t.computed(()=>({fields:n.formSchema.fields.filter(b=>b.model.startsWith("config-storage_config-consul"))})),p=t.computed(()=>({fields:n.formSchema.fields.filter(b=>b.model.startsWith("config-storage_config-redis"))})),M=t.computed(()=>({fields:n.formSchema.fields.filter(b=>b.model.startsWith("config-storage_config-shm"))})),I=t.computed(()=>({fields:n.formSchema.fields.filter(b=>b.model.startsWith("config-storage_config-vault"))})),u=t.computed(()=>({fields:n.formSchema.fields.filter(f=>f.model.startsWith("config")&&!c.value.fields.filter(b=>b.model===f.model).length&&!m.value.fields.filter(b=>b.model===f.model).length||f.model==="tags")})),w=t.computed(()=>n.formModel.id&&n.isEditing||!n.isEditing),_=[{hash:"#general",title:"General"},{hash:"#storage",title:"Storage"},{hash:"#advanced",title:"Advanced"}],B=[{label:"Lets Encrypt",value:"letsEncrypt"},{label:"Zero SSL",value:"zeroSsl",selected:!0},{label:"Other",value:"other"}];t.onMounted(()=>{o.value==="zeroSsl"&&(n.formModel["config-api_uri"]="https://acme.zerossl.com/v2/DV90")});const k=f=>{o.value=f.value,(f.value==="zeroSsl"||f.value==="other")&&(f.value==="zeroSsl"?n.formModel["config-api_uri"]="https://acme.zerossl.com/v2/DV90":n.formModel["config-api_uri"]="https://acme.example.com/",n.formModel["config-tos_accepted"]=!1),f.value==="letsEncrypt"&&(n.formModel["config-api_uri"]="https://acme-v02.api.letsencrypt.org/directory",n.formModel["config-eab_hmac_key"]="",n.formModel["config-eab_kid"]=""),n.onModelUpdated()},V=(f,b)=>{b==="config-storage"&&(r.value=f),n.onModelUpdated()};return(f,b)=>{const S=t.resolveComponent("KSelect"),T=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",null,[e.formModel.id&&e.isEditing||!e.isEditing?(t.openBlock(),t.createBlock(z,{key:0,class:"global-fields",model:e.formModel,options:e.formOptions,schema:s.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),t.createVNode(T,{tabs:_},{general:t.withCtx(()=>[t.createElementVNode("div",Sc,[Mc,Vc,w.value?(t.openBlock(),t.createBlock(z,{key:0,model:e.formModel,options:e.formOptions,schema:c.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),Tc,t.createVNode(S,{class:"issuer-select",items:B,label:"Issuer",onChange:k}),t.createElementVNode("div",Nc,[o.value==="letsEncrypt"?(t.openBlock(),t.createBlock(z,{key:0,model:e.formModel,options:e.formOptions,schema:d.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),o.value==="zeroSsl"||o.value==="other"?(t.openBlock(),t.createBlock(z,{key:1,model:e.formModel,options:e.formOptions,schema:l.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])])]),storage:t.withCtx(()=>[t.createElementVNode("div",Bc,[Ic,Ac,w.value?(t.openBlock(),t.createBlock(z,{key:0,model:e.formModel,options:e.formOptions,schema:m.value,onModelUpdated:V},null,8,["model","options","schema"])):t.createCommentVNode("",!0),t.createElementVNode("div",Oc,[r.value==="consul"?(t.openBlock(),t.createBlock(z,{key:0,model:e.formModel,options:e.formOptions,schema:h.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),r.value==="redis"?(t.openBlock(),t.createBlock(z,{key:1,model:e.formModel,options:e.formOptions,schema:p.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),r.value==="shm"?(t.openBlock(),t.createBlock(z,{key:2,model:e.formModel,options:e.formOptions,schema:M.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0),r.value==="vault"?(t.openBlock(),t.createBlock(z,{key:3,model:e.formModel,options:e.formOptions,schema:I.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])])]),advanced:t.withCtx(()=>[t.createElementVNode("div",Fc,[$c,Uc,w.value?(t.openBlock(),t.createBlock(z,{key:0,model:e.formModel,options:e.formOptions,schema:u.value,onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])):t.createCommentVNode("",!0)])]),_:1})])}}}),[["__scopeId","data-v-bb5a3a33"]]),zn=e=>(t.pushScopeId("data-v-3840f6a9"),e=e(),t.popScopeId(),e),jc={class:"rla-form-basic-fields"},Dc={class:"rla-form-request-limits-subtitle"},vc={class:"rla-form-request-limits-content"},qc={class:"rla-form-window-type"},Rc=["innerHTML"],Pc={class:"rla-form-window-type-radios"},Kc={class:"rla-form-request-limits-items"},xc={class:"rla-form-request-limits-row"},zc=["id"],Yc={class:"rla-form-request-limits-actions"},Hc={key:0,class:"rla-form-request-limits-examples"},Gc={class:"rla-form-request-limits-examples-badges"},Wc=zn(()=>t.createElementVNode("br",null,null,-1)),Zc=["innerHTML"],Jc={id:"rla-form-error-legend",class:"rla-form-error-inputs"},Xc=zn(()=>t.createElementVNode("div",null,":",-1)),Qc=Object.freeze(Object.defineProperty({__proto__:null,ACMEForm:Lc,ExitTransformer:kc,OIDCForm:bc,PostFunction:_c,RLAForm:j(t.defineComponent({__name:"RLAForm",props:{formSchema:{},formModel:{},formOptions:{},onModelUpdated:{type:Function},isEditing:{type:Boolean}},setup(e){var T;t.provide(G,(T=t.useSlots())==null?void 0:T[pe]);const n={fixed:[{label:"500 requests every hour",description:"A fixed limit of 500 requests per hour resetting sharply on the hour, ensuring no user can exceed this limit.",config:{limit:500,window_size:3600}},{label:"200 requests every 30 minutes",description:"Users are allowed 200 requests per 30 minutes, resetting exactly on the 30 minute mark with no carryover of unused limits.",config:{limit:200,window_size:1800}},{label:"500 requests every day",description:"A strict limit of 5000 requests per day resetting promptly at midnight, preventing any burst traffic or inconsistent user experiences.",config:{limit:500,window_size:86400}}],sliding:[{label:"100 requests every hour",description:"Maximum of 100 requests every rolling hour, continuously adjusting the count over the course of the hour. No hard limit or known reset.",config:{limit:100,window_size:3600}},{label:"300 requests every 30 minutes",description:"Each user can make up to 300 requests in any rolling 30 minute period, with older requests dropping off as new requests are made.",config:{limit:300,window_size:1800}},{label:"500 requests every hour",description:`Each user is allowed 500 requests per hour.
|
|
2
2
|
If the limit is exceeded and the user receives a 429 error, each additional request within the sliding window (hour)
|
|
3
|
-
will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`,config:{limit:500,window_size:3600}}]},o=new Set(["selectionGroup",...["identifier","limit","window_size","error_code","error_message"].map(p=>`config-${p}`)]),r=p=>p===void 0?!1:o.has(p),{t:i}=Pe.createI18n("en-us",Qe),a=e,d=t.computed(()=>{var y,k;const p=(k=(y=a.formSchema)==null?void 0:y.fields)==null?void 0:k.find(S=>S.type==="selectionGroup"&&S.model==="selectionGroup");if(p)return{fields:[p]}}),l=t.computed(()=>{var W,fe;const p=((fe=(W=a.formSchema)==null?void 0:W.fields)==null?void 0:fe.filter(q=>!r(q.model)))??[],y=[],k=[],S=[];let v=!1;for(const q of p){const Ne=q.model;if(Ne!==void 0){if(Ne.startsWith("config-redis-")){(q.model==="config-redis-cluster_addresses"||q.model==="config-redis-sentinel_addresses")&&(q.inputAttributes.help=i("rla.redis.address_example")),k.push(q);continue}v?S.push(q):y.push(q),q.model==="config-strategy"&&(v=!0)}}return{endsWithStrategy:{fields:y},redis:{fields:k},afterStrategy:{fields:S}}}),s=t.computed(()=>{const p=a.formModel["config-window_type"];return Object.prototype.hasOwnProperty.call(n,p)?n[p]:[]}),c=t.computed(()=>{var p,y;return(y=(p=a.formSchema)==null?void 0:p.fields)==null?void 0:y.find(k=>k.model==="config-identifier")}),m=t.computed(()=>{var p,y,k;return(((k=(y=(p=a.formSchema)==null?void 0:p.fields)==null?void 0:y.find(S=>S.model==="config-identifier"))==null?void 0:k.values)??[]).map(S=>({label:i(`rla.identifiers.options.${S}`),value:S}))}),f=t.ref(),u=t.ref(!0),C=t.computed(()=>{var p,y,k;return a.formModel["config-window_type"]??((k=(y=(p=a.formSchema)==null?void 0:p.fields)==null?void 0:y.find(S=>S.model==="config-window_type"))==null?void 0:k.default)}),M=t.computed(()=>{var y,k,S,v,W,fe;const p=(S=(k=(y=a.formSchema)==null?void 0:y.fields)==null?void 0:k.find(q=>q.model==="config-window_type"))==null?void 0:S.default;return(((fe=(W=(v=a.formSchema)==null?void 0:v.fields)==null?void 0:W.find(q=>q.model==="config-window_type"))==null?void 0:fe.values)??[]).sort((q,Ne)=>q===p?-1:Ne===p?1:0)}),g=t.computed(()=>{var y;const p=(y=a.formModel["config-limit"])==null?void 0:y.map((k,S)=>{var v,W;return{limit:k,windowSize:(W=(v=a.formModel)==null?void 0:v["config-window_size"])==null?void 0:W[S]}});return!Array.isArray(p)||p.length===0?[{limit:void 0,windowSize:void 0}]:p}),E=t.computed(()=>{var p,y,k,S;return((p=a.formModel)==null?void 0:p["config-identifier"])??((S=(k=(y=a.formSchema)==null?void 0:y.fields)==null?void 0:k.find(v=>v.model==="config-identifier"))==null?void 0:S.default)}),w=t.computed(()=>{var p,y,k,S;return((p=a.formModel)==null?void 0:p["config-error_code"])??((S=(k=(y=a.formSchema)==null?void 0:y.fields)==null?void 0:k.find(v=>v.model==="config-error_code"))==null?void 0:S.default)}),N=t.computed(()=>{var p,y,k,S;return((p=a.formModel)==null?void 0:p["config-error_message"])??((S=(k=(y=a.formSchema)==null?void 0:y.fields)==null?void 0:k.find(v=>v.model==="config-error_message"))==null?void 0:S.default)}),_=(p,y)=>{if(y===f.value){a.onModelUpdated([],"config-limit"),a.onModelUpdated([],"config-window_size"),t.nextTick(()=>{f.value=void 0});return}a.onModelUpdated([p.config.limit],"config-limit"),a.onModelUpdated([p.config.window_size],"config-window_size"),t.nextTick(()=>{f.value=y})},T=p=>{f.value!==void 0&&(f.value=void 0),p!==null&&a.onModelUpdated(p.toString(),"config-window_type")},B=(p,y)=>{var S;f.value!==void 0&&(f.value=void 0);const k=ie(((S=a.formModel)==null?void 0:S["config-limit"])??[]);k[p]=y,a.onModelUpdated(k,"config-limit")},h=(p,y)=>{var S;f.value!==void 0&&(f.value=void 0);const k=ie(((S=a.formModel)==null?void 0:S["config-window_size"])??[]);k[p]=y,a.onModelUpdated(k,"config-window_size")},b=p=>{var S,v;f.value!==void 0&&(f.value=void 0);const y=ie(((S=a.formModel)==null?void 0:S["config-limit"])??[]),k=ie(((v=a.formModel)==null?void 0:v["config-window_size"])??[]);y.length===0&&y.push(void 0),k.length===0&&k.push(void 0),y.splice(p+1,0,void 0),k.splice(p+1,0,void 0),a.onModelUpdated(y,"config-limit"),a.onModelUpdated(k,"config-window_size")},V=p=>{var y,k;if(g.value.length>1){f.value!==void 0&&(f.value=void 0);const S=ie(((y=a.formModel)==null?void 0:y["config-limit"])??[]),v=ie(((k=a.formModel)==null?void 0:k["config-window_size"])??[]);S.length===0&&S.push(void 0),v.length===0&&v.push(void 0),S.splice(p,1),v.splice(p,1),a.onModelUpdated(S,"config-limit"),a.onModelUpdated(v,"config-window_size")}};return(p,y)=>{const k=t.resolveComponent("VueFormGenerator"),S=t.resolveComponent("KLabel"),v=t.resolveComponent("KRadio"),W=t.resolveComponent("KInput"),fe=t.resolveComponent("KButton"),q=t.resolveComponent("KBadge"),Ne=t.resolveComponent("KTooltip"),ho=t.resolveComponent("KCard"),cf=t.resolveComponent("KSelect"),mf=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",Km,[t.createVNode(k,{model:p.formModel,options:p.formOptions,schema:d.value,onModelUpdated:y[0]||(y[0]=(A,j)=>p.onModelUpdated(A,j))},null,8,["model","options","schema"]),t.createVNode(ho,{class:"rla-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(S,{class:"rla-form-request-limits-title",for:"rla-form-request-limits-legend",required:""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("rla.request_limits.title")),1)]),_:1}),t.createElementVNode("div",xm,t.toDisplayString(t.unref(i)("rla.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",zm,[t.createElementVNode("div",Ym,[t.createVNode(S,{class:"rla-form-window-type-label","tooltip-attributes":{maxWidth:"300",placement:"top"}},{tooltip:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:t.unref(i)("rla.window_type.help")},null,8,Hm)]),default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("rla.window_type.label"))+" ",1)]),_:1}),t.createElementVNode("div",Gm,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(M.value,A=>(t.openBlock(),t.createBlock(v,{key:`window-type-${A}`,"model-value":C.value,name:A,"selected-value":A,"onUpdate:modelValue":T},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)(`rla.window_type.options.${A}`)),1)]),_:2},1032,["model-value","name","selected-value"]))),128))])]),t.createElementVNode("div",Wm,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(g.value,(A,j)=>(t.openBlock(),t.createElementBlock("div",{key:j.toString()},[t.createVNode(S,{for:`rla-form-request-limits-item-${j}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("rla.request_limits.label_index",{index:j+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",Zm,[t.createElementVNode("legend",{id:`rla-form-request-limits-item-${j}-legend`,class:"rla-form-request-limits-inputs"},[t.createVNode(W,{"model-value":A.limit&&A.limit.toString(),placeholder:t.unref(i)("rla.request_limits.request_number"),type:"number","onUpdate:modelValue":St=>B(j,Number.parseInt(St))},null,8,["model-value","placeholder","onUpdate:modelValue"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(i)("rla.request_limits.interval_determiner")),1),t.createVNode(W,{"model-value":A.windowSize&&A.windowSize.toString(),placeholder:t.unref(i)("rla.request_limits.time_interval"),type:"number","onUpdate:modelValue":St=>h(j,Number.parseInt(St))},null,8,["model-value","placeholder","onUpdate:modelValue"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(i)("rla.request_limits.seconds")),1)],8,Jm),t.createElementVNode("div",Xm,[t.createVNode(fe,{appearance:"tertiary",disabled:g.value.length<=1,onClick:()=>V(j)},{default:t.withCtx(()=>[t.createVNode(t.unref(le.RemoveIcon))]),_:2},1032,["disabled","onClick"]),t.createVNode(fe,{appearance:"tertiary",onClick:()=>b(j)},{default:t.withCtx(()=>[t.createVNode(t.unref(le.AddIcon))]),_:2},1032,["onClick"])])])]))),128))]),s.value.length>0?(t.openBlock(),t.createElementBlock("div",Qm,[t.createElementVNode("div",null,t.toDisplayString(t.unref(i)("rla.start_with_a_use_case")),1),t.createElementVNode("div",ef,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,(A,j)=>(t.openBlock(),t.createBlock(Ne,{key:`use-case-${j}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(A.description),1),tf,t.createElementVNode("div",null,t.toDisplayString(t.unref(i)("rla.request_limits.label"))+": "+t.toDisplayString(A.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(i)("rla.request_limits.time_interval"))+": "+t.toDisplayString(A.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(q,{appearance:f.value===`${C.value}-${j}`?"info":"decorative",class:"rla-form-request-limits-examples-badge",onClick:()=>_(A,`${C.value}-${j}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(A.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1}),t.createVNode(cf,{modelValue:E.value,"onUpdate:modelValue":y[1]||(y[1]=A=>E.value=A),class:"rla-form-identifiers",items:m.value,label:t.unref(i)("rla.identifiers.label"),"label-attributes":{tooltipAttributes:{maxWidth:"300",placement:"top"}},required:"",onSelected:y[2]||(y[2]=A=>a.onModelUpdated(A.value,"config-identifier"))},{"label-tooltip":t.withCtx(()=>[t.createElementVNode("div",{innerHTML:c.value&&c.value.help},null,8,nf)]),_:1},8,["modelValue","items","label"]),t.createElementVNode("div",null,[t.createVNode(S,{for:"rla-form-error-legend",info:t.unref(i)("rla.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("rla.error_message.label")),1)]),_:1},8,["info"]),t.createElementVNode("legend",of,[t.createVNode(W,{class:"input-error-code","model-value":w.value&&w.value.toString(),placeholder:t.unref(i)("rla.error_message.code_placeholder"),type:"number","onUpdate:modelValue":y[3]||(y[3]=A=>p.onModelUpdated(Number.parseInt(A),"config-error_code"))},null,8,["model-value","placeholder"]),rf,t.createVNode(W,{"model-value":N.value,placeholder:t.unref(i)("rla.error_message.message_placeholder"),"onUpdate:modelValue":y[4]||(y[4]=A=>p.onModelUpdated(A,"config-error_message"))},null,8,["model-value","placeholder"])])])]),t.createVNode(mf,{modelValue:u.value,"onUpdate:modelValue":y[8]||(y[8]=A=>u.value=A),"trigger-label":t.unref(i)("rla.view_advanced_fields")},{default:t.withCtx(()=>[t.createVNode(k,{model:p.formModel,options:p.formOptions,schema:l.value.endsWithStrategy,onModelUpdated:y[5]||(y[5]=(A,j)=>p.onModelUpdated(A,j))},null,8,["model","options","schema"]),p.formModel["config-strategy"]==="redis"?(t.openBlock(),t.createBlock(ho,{key:0,class:"rla-form-redis-card",title:t.unref(i)("rla.redis.title")},{default:t.withCtx(()=>[t.createVNode(k,{model:p.formModel,options:p.formOptions,schema:l.value.redis,onModelUpdated:y[6]||(y[6]=(A,j)=>p.onModelUpdated(A,j))},null,8,["model","options","schema"])]),_:1},8,["title"])):t.createCommentVNode("",!0),t.createVNode(k,{model:p.formModel,options:p.formOptions,schema:l.value.afterStrategy,onModelUpdated:y[7]||(y[7]=(A,j)=>p.onModelUpdated(A,j))},null,8,["model","options","schema"])]),_:1},8,["modelValue","trigger-label"])],64)}}}),[["__scopeId","data-v-3840f6a9"]])},Symbol.toStringTag,{value:"Module"})),lf=["array","metric","advanced","selectionGroup","object-advanced"],sf={install:e=>{e.component("VueFormGenerator",Y)}},df=e=>({"openid-connect":"OIDCForm","post-function":"PostFunction","pre-function":"PostFunction","exit-transformer":"ExitTransformer","rate-limiting-advanced":"RLAForm"})[e];F.AUTOFILL_SLOT=G,F.AUTOFILL_SLOT_NAME=ge,F.FORMS_API_KEY=de,F.VueFormGenerator=Y,F.abstractField=os,F.customFields=lf,F.default=sf,F.getSharedFormName=df,F.sharedForms=af,Object.defineProperties(F,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
3
|
+
will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`,config:{limit:500,window_size:3600}}]},o=new Set(["selectionGroup",...["identifier","limit","window_size","error_code","error_message"].map(g=>`config-${g}`)]),r=g=>g===void 0?!1:o.has(g),{t:i}=Ue.createI18n("en-us",Ge),a=e,d=t.computed(()=>{var y,C;const g=(C=(y=a.formSchema)==null?void 0:y.fields)==null?void 0:C.find(E=>E.type==="selectionGroup"&&E.model==="selectionGroup");if(g)return{fields:[g]}}),l=t.computed(()=>{var W,me;const g=((me=(W=a.formSchema)==null?void 0:W.fields)==null?void 0:me.filter(P=>!r(P.model)))??[],y=[],C=[],E=[];let D=!1;for(const P of g){const Te=P.model;if(Te!==void 0){if(Te.startsWith("config-redis-")){(P.model==="config-redis-cluster_addresses"||P.model==="config-redis-sentinel_addresses")&&(P.inputAttributes.help=i("rla.redis.address_example")),C.push(P);continue}D?E.push(P):y.push(P),P.model==="config-strategy"&&(D=!0)}}return{endsWithStrategy:{fields:y},redis:{fields:C},afterStrategy:{fields:E}}}),s=t.computed(()=>{const g=a.formModel["config-window_type"];return Object.prototype.hasOwnProperty.call(n,g)?n[g]:[]}),c=t.computed(()=>{var g,y;return(y=(g=a.formSchema)==null?void 0:g.fields)==null?void 0:y.find(C=>C.model==="config-identifier")}),m=t.computed(()=>{var g,y,C;return(((C=(y=(g=a.formSchema)==null?void 0:g.fields)==null?void 0:y.find(E=>E.model==="config-identifier"))==null?void 0:C.values)??[]).map(E=>({label:i(`rla.identifiers.options.${E}`),value:E}))}),h=t.ref(),p=t.ref(!0),M=t.computed(()=>{var g,y,C;return a.formModel["config-window_type"]??((C=(y=(g=a.formSchema)==null?void 0:g.fields)==null?void 0:y.find(E=>E.model==="config-window_type"))==null?void 0:C.default)}),I=t.computed(()=>{var y,C,E,D,W,me;const g=(E=(C=(y=a.formSchema)==null?void 0:y.fields)==null?void 0:C.find(P=>P.model==="config-window_type"))==null?void 0:E.default;return(((me=(W=(D=a.formSchema)==null?void 0:D.fields)==null?void 0:W.find(P=>P.model==="config-window_type"))==null?void 0:me.values)??[]).sort((P,Te)=>P===g?-1:Te===g?1:0)}),u=t.computed(()=>{var y;const g=(y=a.formModel["config-limit"])==null?void 0:y.map((C,E)=>{var D,W;return{limit:C,windowSize:(W=(D=a.formModel)==null?void 0:D["config-window_size"])==null?void 0:W[E]}});return!Array.isArray(g)||g.length===0?[{limit:void 0,windowSize:void 0}]:g}),w=t.computed(()=>{var g,y,C,E;return((g=a.formModel)==null?void 0:g["config-identifier"])??((E=(C=(y=a.formSchema)==null?void 0:y.fields)==null?void 0:C.find(D=>D.model==="config-identifier"))==null?void 0:E.default)}),_=t.computed(()=>{var g,y,C,E;return((g=a.formModel)==null?void 0:g["config-error_code"])??((E=(C=(y=a.formSchema)==null?void 0:y.fields)==null?void 0:C.find(D=>D.model==="config-error_code"))==null?void 0:E.default)}),B=t.computed(()=>{var g,y,C,E;return((g=a.formModel)==null?void 0:g["config-error_message"])??((E=(C=(y=a.formSchema)==null?void 0:y.fields)==null?void 0:C.find(D=>D.model==="config-error_message"))==null?void 0:E.default)}),k=(g,y)=>{if(y===h.value){a.onModelUpdated([],"config-limit"),a.onModelUpdated([],"config-window_size"),t.nextTick(()=>{h.value=void 0});return}a.onModelUpdated([g.config.limit],"config-limit"),a.onModelUpdated([g.config.window_size],"config-window_size"),t.nextTick(()=>{h.value=y})},V=g=>{h.value!==void 0&&(h.value=void 0),g!==null&&a.onModelUpdated(g.toString(),"config-window_type")},A=(g,y)=>{var E;h.value!==void 0&&(h.value=void 0);const C=ne(((E=a.formModel)==null?void 0:E["config-limit"])??[]);C[g]=y,a.onModelUpdated(C,"config-limit")},f=(g,y)=>{var E;h.value!==void 0&&(h.value=void 0);const C=ne(((E=a.formModel)==null?void 0:E["config-window_size"])??[]);C[g]=y,a.onModelUpdated(C,"config-window_size")},b=g=>{var E,D;h.value!==void 0&&(h.value=void 0);const y=ne(((E=a.formModel)==null?void 0:E["config-limit"])??[]),C=ne(((D=a.formModel)==null?void 0:D["config-window_size"])??[]);y.length===0&&y.push(void 0),C.length===0&&C.push(void 0),y.splice(g+1,0,void 0),C.splice(g+1,0,void 0),a.onModelUpdated(y,"config-limit"),a.onModelUpdated(C,"config-window_size")},S=g=>{var y,C;if(u.value.length>1){h.value!==void 0&&(h.value=void 0);const E=ne(((y=a.formModel)==null?void 0:y["config-limit"])??[]),D=ne(((C=a.formModel)==null?void 0:C["config-window_size"])??[]);E.length===0&&E.push(void 0),D.length===0&&D.push(void 0),E.splice(g,1),D.splice(g,1),a.onModelUpdated(E,"config-limit"),a.onModelUpdated(D,"config-window_size")}};return(g,y)=>{const C=t.resolveComponent("VueFormGenerator"),E=t.resolveComponent("KLabel"),D=t.resolveComponent("KRadio"),W=t.resolveComponent("KInput"),me=t.resolveComponent("KButton"),P=t.resolveComponent("KBadge"),Te=t.resolveComponent("KTooltip"),Yn=t.resolveComponent("KCard"),om=t.resolveComponent("KSelect"),rm=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",jc,[t.createVNode(C,{model:g.formModel,options:g.formOptions,schema:d.value,onModelUpdated:y[0]||(y[0]=(N,R)=>g.onModelUpdated(N,R))},null,8,["model","options","schema"]),t.createVNode(Yn,{class:"rla-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(E,{class:"rla-form-request-limits-title",for:"rla-form-request-limits-legend",required:""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("rla.request_limits.title")),1)]),_:1}),t.createElementVNode("div",Dc,t.toDisplayString(t.unref(i)("rla.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",vc,[t.createElementVNode("div",qc,[t.createVNode(E,{class:"rla-form-window-type-label","tooltip-attributes":{maxWidth:"300",placement:"top"}},{tooltip:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:t.unref(i)("rla.window_type.help")},null,8,Rc)]),default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("rla.window_type.label"))+" ",1)]),_:1}),t.createElementVNode("div",Pc,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(I.value,N=>(t.openBlock(),t.createBlock(D,{key:`window-type-${N}`,"model-value":M.value,name:N,"selected-value":N,"onUpdate:modelValue":V},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)(`rla.window_type.options.${N}`)),1)]),_:2},1032,["model-value","name","selected-value"]))),128))])]),t.createElementVNode("div",Kc,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u.value,(N,R)=>(t.openBlock(),t.createElementBlock("div",{key:R.toString()},[t.createVNode(E,{for:`rla-form-request-limits-item-${R}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("rla.request_limits.label_index",{index:R+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",xc,[t.createElementVNode("legend",{id:`rla-form-request-limits-item-${R}-legend`,class:"rla-form-request-limits-inputs"},[t.createVNode(W,{"model-value":N.limit&&N.limit.toString(),placeholder:t.unref(i)("rla.request_limits.request_number"),type:"number","onUpdate:modelValue":ut=>A(R,Number.parseInt(ut))},null,8,["model-value","placeholder","onUpdate:modelValue"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(i)("rla.request_limits.interval_determiner")),1),t.createVNode(W,{"model-value":N.windowSize&&N.windowSize.toString(),placeholder:t.unref(i)("rla.request_limits.time_interval"),type:"number","onUpdate:modelValue":ut=>f(R,Number.parseInt(ut))},null,8,["model-value","placeholder","onUpdate:modelValue"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(i)("rla.request_limits.seconds")),1)],8,zc),t.createElementVNode("div",Yc,[t.createVNode(me,{appearance:"tertiary",disabled:u.value.length<=1,onClick:()=>S(R)},{default:t.withCtx(()=>[t.createVNode(t.unref(oe.RemoveIcon))]),_:2},1032,["disabled","onClick"]),t.createVNode(me,{appearance:"tertiary",onClick:()=>b(R)},{default:t.withCtx(()=>[t.createVNode(t.unref(oe.AddIcon))]),_:2},1032,["onClick"])])])]))),128))]),s.value.length>0?(t.openBlock(),t.createElementBlock("div",Hc,[t.createElementVNode("div",null,t.toDisplayString(t.unref(i)("rla.start_with_a_use_case")),1),t.createElementVNode("div",Gc,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,(N,R)=>(t.openBlock(),t.createBlock(Te,{key:`use-case-${R}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(N.description),1),Wc,t.createElementVNode("div",null,t.toDisplayString(t.unref(i)("rla.request_limits.label"))+": "+t.toDisplayString(N.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(i)("rla.request_limits.time_interval"))+": "+t.toDisplayString(N.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(P,{appearance:h.value===`${M.value}-${R}`?"info":"decorative",class:"rla-form-request-limits-examples-badge",onClick:()=>k(N,`${M.value}-${R}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(N.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1}),t.createVNode(om,{modelValue:w.value,"onUpdate:modelValue":y[1]||(y[1]=N=>w.value=N),class:"rla-form-identifiers",items:m.value,label:t.unref(i)("rla.identifiers.label"),"label-attributes":{tooltipAttributes:{maxWidth:"300",placement:"top"}},required:"",onSelected:y[2]||(y[2]=N=>a.onModelUpdated(N.value,"config-identifier"))},{"label-tooltip":t.withCtx(()=>[t.createElementVNode("div",{innerHTML:c.value&&c.value.help},null,8,Zc)]),_:1},8,["modelValue","items","label"]),t.createElementVNode("div",null,[t.createVNode(E,{for:"rla-form-error-legend",info:t.unref(i)("rla.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("rla.error_message.label")),1)]),_:1},8,["info"]),t.createElementVNode("legend",Jc,[t.createVNode(W,{class:"input-error-code","model-value":_.value&&_.value.toString(),placeholder:t.unref(i)("rla.error_message.code_placeholder"),type:"number","onUpdate:modelValue":y[3]||(y[3]=N=>g.onModelUpdated(Number.parseInt(N),"config-error_code"))},null,8,["model-value","placeholder"]),Xc,t.createVNode(W,{"model-value":B.value,placeholder:t.unref(i)("rla.error_message.message_placeholder"),"onUpdate:modelValue":y[4]||(y[4]=N=>g.onModelUpdated(N,"config-error_message"))},null,8,["model-value","placeholder"])])])]),t.createVNode(rm,{modelValue:p.value,"onUpdate:modelValue":y[8]||(y[8]=N=>p.value=N),"trigger-label":t.unref(i)("rla.view_advanced_fields")},{default:t.withCtx(()=>[t.createVNode(C,{model:g.formModel,options:g.formOptions,schema:l.value.endsWithStrategy,onModelUpdated:y[5]||(y[5]=(N,R)=>g.onModelUpdated(N,R))},null,8,["model","options","schema"]),g.formModel["config-strategy"]==="redis"?(t.openBlock(),t.createBlock(Yn,{key:0,class:"rla-form-redis-card",title:t.unref(i)("rla.redis.title")},{default:t.withCtx(()=>[t.createVNode(C,{model:g.formModel,options:g.formOptions,schema:l.value.redis,onModelUpdated:y[6]||(y[6]=(N,R)=>g.onModelUpdated(N,R))},null,8,["model","options","schema"])]),_:1},8,["title"])):t.createCommentVNode("",!0),t.createVNode(C,{model:g.formModel,options:g.formOptions,schema:l.value.afterStrategy,onModelUpdated:y[7]||(y[7]=(N,R)=>g.onModelUpdated(N,R))},null,8,["model","options","schema"])]),_:1},8,["modelValue","trigger-label"])],64)}}}),[["__scopeId","data-v-3840f6a9"]])},Symbol.toStringTag,{value:"Module"})),em=["array","metric","advanced","selectionGroup","object-advanced"],tm={install:e=>{e.component("VueFormGenerator",z)}},nm=e=>({"openid-connect":"OIDCForm","post-function":"PostFunction","pre-function":"PostFunction","exit-transformer":"ExitTransformer","rate-limiting-advanced":"RLAForm"})[e];O.AUTOFILL_SLOT=G,O.AUTOFILL_SLOT_NAME=pe,O.FORMS_API_KEY=se,O.VueFormGenerator=z,O.abstractField=Yl,O.customFields=em,O.default=tm,O.getSharedFormName=nm,O.sharedForms=Qc,Object.defineProperties(O,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|