{"version":3,"sources":["./wwwroot/app/app.component.html","./wwwroot/app/dynamic-form/containers/dynamic-form/dynamic-form.component.html","./wwwroot/app/dynamic-form/containers/edit-form-fields/edit-form-fields.component.html","./wwwroot/app/dynamic-form/containers/form-checkbox/form-checkbox.component.html","./wwwroot/app/dynamic-form/containers/form-file/form-file.component.html","./wwwroot/app/dynamic-form/containers/form-info-message/form-info-message.component.html","./wwwroot/app/dynamic-form/containers/form-input/form-input.component.html","./wwwroot/app/dynamic-form/containers/form-preview/form-preview.component.html","./wwwroot/app/dynamic-form/containers/form-radio/form-radio.component.html","./wwwroot/app/dynamic-form/containers/form-render/form-render.component.html","./wwwroot/app/dynamic-form/containers/form-select/form-select.component.html","./wwwroot/app/dynamic-form/containers/form-terms/form-terms.component.html","./wwwroot/app/dynamic-form/containers/form-textarea/form-textarea.component.html","./wwwroot/app/render-form.component.html","./node_modules/tslib/tslib.es6.js","./wwwroot/$_lazy_route_resource lazy namespace object","./wwwroot/app/app.component.css","./wwwroot/app/app.component.ts","./wwwroot/app/app.module.ts","./wwwroot/app/constants.ts","./wwwroot/app/dynamic-form/containers/dynamic-field/dynamic-field.directive.ts","./wwwroot/app/dynamic-form/containers/dynamic-form/dynamic-form.component.css","./wwwroot/app/dynamic-form/containers/dynamic-form/dynamic-form.component.ts","./wwwroot/app/dynamic-form/containers/edit-form-fields/edit-form-fields.component.css","./wwwroot/app/dynamic-form/containers/edit-form-fields/edit-form-fields.component.ts","./wwwroot/app/dynamic-form/containers/form-checkbox/form-checkbox.component.css","./wwwroot/app/dynamic-form/containers/form-checkbox/form-checkbox.component.ts","./wwwroot/app/dynamic-form/containers/form-file/form-file.component.css","./wwwroot/app/dynamic-form/containers/form-file/form-file.component.ts","./wwwroot/app/dynamic-form/containers/form-info-message/form-info-message.component.css","./wwwroot/app/dynamic-form/containers/form-info-message/form-info-message.component.ts","./wwwroot/app/dynamic-form/containers/form-input/form-input.component.css","./wwwroot/app/dynamic-form/containers/form-input/form-input.component.ts","./wwwroot/app/dynamic-form/containers/form-preview/form-preview.component.css","./wwwroot/app/dynamic-form/containers/form-preview/form-preview.component.ts","./wwwroot/app/dynamic-form/containers/form-radio/form-radio.component.css","./wwwroot/app/dynamic-form/containers/form-radio/form-radio.component.ts","./wwwroot/app/dynamic-form/containers/form-render/form-render.component.css","./wwwroot/app/dynamic-form/containers/form-render/form-render.component.ts","./wwwroot/app/dynamic-form/containers/form-select/form-select.component.css","./wwwroot/app/dynamic-form/containers/form-select/form-select.component.ts","./wwwroot/app/dynamic-form/containers/form-terms/form-terms.component.css","./wwwroot/app/dynamic-form/containers/form-terms/form-terms.component.ts","./wwwroot/app/dynamic-form/containers/form-textarea/form-textarea.component.css","./wwwroot/app/dynamic-form/containers/form-textarea/form-textarea.component.ts","./wwwroot/app/dynamic-form/dynamic-form.module.ts","./wwwroot/app/render-form.component.css","./wwwroot/app/render-form.component.ts","./wwwroot/app/services/config.service.ts","./wwwroot/app/services/recaptcha.service.ts","./wwwroot/environments/environment.ts","./wwwroot/main.ts"],"names":[],"mappings":";;;;;;;;;;AAAA;AAAe,61DAA8xD,kBAAkB,0LAA0L,kBAAkB,uxB;;;;;;;;;;;;ACA3gE;AAAe,kRAAmN,sCAAsC,+BAA+B,gKAAgK,2TAA2T,6BAA6B,2PAA2P,+HAA+H,qBAAqB,2TAA2T,qBAAqB,09BAA09B,koBAAkoB,kDAAkD,mDAAmD,SAAS,EAAE,c;;;;;;;;;;;;ACA1sG;AAAe,sOAAuK,kDAAkD,4GAA4G,yBAAyB,gGAAgG,sBAAsB,kKAAkK,mBAAmB,sDAAsD,mBAAmB,yFAAyF,qBAAqB,0BAA0B,cAAc,gGAAgG,gDAAgD,0KAA0K,WAAW,+RAA+R,yBAAyB,gdAAgd,yLAAyL,kBAAkB,4KAA4K,gEAAgE,qYAAqY,mjDAAmjD,+O;;;;;;;;;;;;ACAnzI;AAAe,wMAAyI,eAAe,gCAAgC,gBAAgB,4BAA4B,aAAa,kFAAkF,2GAA2G,iBAAiB,wGAAwG,qBAAqB,gD;;;;;;;;;;;;ACA3kB;AAAe,qJAAsF,gBAAgB,+CAA+C,aAAa,6CAA6C,yCAAyC,+N;;;;;;;;;;;;ACAvQ;AAAe,4MAA6I,sBAAsB,kK;;;;;;;;;;;;ACAlL;AAAe,2JAA4F,aAAa,KAAK,gBAAgB,wR;;;;;;;;;;;;ACA7I;AAAe,0PAA2L,mSAAmS,cAAc,6LAA6L,kM;;;;;;;;;;;;ACAxrB;AAAe,2NAA4J,eAAe,WAAW,gBAAgB,+EAA+E,8JAA8J,iBAAiB,oDAAoD,QAAQ,kC;;;;;;;;;;;;ACA/gB;AAAe,gTAAiP,yaAAya,cAAc,kdAAkd,gCAAgC,wIAAwI,kGAAkG,kBAAkB,sHAAsH,mQ;;;;;;;;;;;;ACA3hD;AAAe,6JAA8F,aAAa,KAAK,gBAAgB,qKAAqK,sBAAsB,gGAAgG,UAAU,+C;;;;;;;;;;;;ACApb;AAAe,+LAAgI,sBAAsB,gLAAgL,aAAa,6FAA6F,aAAa,6D;;;;;;;;;;;;ACA5c;AAAe,2JAA4F,aAAa,KAAK,gBAAgB,+PAA+P,cAAc,qC;;;;;;;;;;;;ACA1Z;AAAe,yO;;;;;;;;;;;;ACAf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAU,gBAAgB,sCAAsC,iBAAiB,EAAE;AACnF,yBAAyB,uDAAuD;AAChF;AACA;;AAEO;AACP;AACA,mBAAmB,sBAAsB;AACzC;AACA;;AAEO;AACP;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA,4DAA4D,cAAc;AAC1E;AACA;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA,4CAA4C,QAAQ;AACpD;AACA;;AAEO;AACP,mCAAmC,oCAAoC;AACvE;;AAEO;AACP;AACA;;AAEO;AACP,2BAA2B,+DAA+D,gBAAgB,EAAE,EAAE;AAC9G;AACA,mCAAmC,MAAM,6BAA6B,EAAE,YAAY,WAAW,EAAE;AACjG,kCAAkC,MAAM,iCAAiC,EAAE,YAAY,WAAW,EAAE;AACpG,+BAA+B,qFAAqF;AACpH;AACA,KAAK;AACL;;AAEO;AACP,aAAa,6BAA6B,0BAA0B,aAAa,EAAE,qBAAqB;AACxG,gBAAgB,qDAAqD,oEAAoE,aAAa,EAAE;AACxJ,sBAAsB,sBAAsB,qBAAqB,GAAG;AACpE;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;AACvC,kCAAkC,SAAS;AAC3C,kCAAkC,WAAW,UAAU;AACvD,yCAAyC,cAAc;AACvD;AACA,6GAA6G,OAAO,UAAU;AAC9H,gFAAgF,iBAAiB,OAAO;AACxG,wDAAwD,gBAAgB,QAAQ,OAAO;AACvF,8CAA8C,gBAAgB,gBAAgB,OAAO;AACrF;AACA,iCAAiC;AACjC;AACA;AACA,SAAS,YAAY,aAAa,OAAO,EAAE,UAAU,WAAW;AAChE,mCAAmC,SAAS;AAC5C;AACA;;AAEO;AACP;AACA;AACA;;AAEO;AACP;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,MAAM,gBAAgB;AACzC;AACA;AACA;AACA;AACA,iBAAiB,sBAAsB;AACvC;AACA;AACA;;AAEO;AACP,4BAA4B,sBAAsB;AAClD;AACA;AACA;;AAEO;AACP,iDAAiD,QAAQ;AACzD,wCAAwC,QAAQ;AAChD,wDAAwD,QAAQ;AAChE;AACA;AACA;;AAEO;AACP;AACA;;AAEO;AACP;AACA;AACA,iBAAiB,sFAAsF,aAAa,EAAE;AACtH,sBAAsB,gCAAgC,qCAAqC,0CAA0C,EAAE,EAAE,GAAG;AAC5I,2BAA2B,MAAM,eAAe,EAAE,YAAY,oBAAoB,EAAE;AACpF,sBAAsB,oGAAoG;AAC1H,6BAA6B,uBAAuB;AACpD,4BAA4B,wBAAwB;AACpD,2BAA2B,yDAAyD;AACpF;;AAEO;AACP;AACA,iBAAiB,4CAA4C,SAAS,EAAE,qDAAqD,aAAa,EAAE;AAC5I,yBAAyB,6BAA6B,oBAAoB,gDAAgD,gBAAgB,EAAE,KAAK;AACjJ;;AAEO;AACP;AACA;AACA,2GAA2G,sFAAsF,aAAa,EAAE;AAChN,sBAAsB,8BAA8B,gDAAgD,uDAAuD,EAAE,EAAE,GAAG;AAClK,4CAA4C,sCAAsC,UAAU,oBAAoB,EAAE,EAAE,UAAU;AAC9H;;AAEO;AACP,gCAAgC,uCAAuC,aAAa,EAAE,EAAE,OAAO,kBAAkB;AACjH;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;;AAEO;AACP,4CAA4C;AAC5C;;AAEO;AACP;AACA;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACzNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA,4CAA4C,WAAW;AACvD;AACA;AACA,gF;;;;;;;;;;;;ACZA;AAAe,+FAAgC,uBAAuB,uBAAuB,4BAA4B,KAAK,gCAAgC,uBAAuB,KAAK,0BAA0B,sBAAsB,KAAK,6BAA6B,8BAA8B,gCAAgC,KAAK,+CAA+C,myB;;;;;;;;;;;;;;;;;;;ACAtT;AACH;AACX;AAS1D,IAAa,YAAY,GAAzB,MAAa,YAAY;IAoBrB,YAAoB,aAA4B,EAAU,IAAgB;QAAtD,kBAAa,GAAb,aAAa,CAAe;QAAU,SAAI,GAAJ,IAAI,CAAY;QAnB1E,UAAK,GAAG,iBAAiB,CAAC;QAC1B,gBAAW,GAAG,CAAC,CAAC;QAEhB,WAAM,GAAU,EAAE,CAAC;QACnB,kBAAa,GAAU,EAAE,CAAC;QAC1B,oBAAe,GAAG,EAAE,CAAC;QAErB,qBAAgB,GAAG,MAAM,CAAC;QAE1B,kBAAa,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAClD,aAAQ,GAAW,EAAE,CAAC;QACtB,oBAAe,GAAW,EAAE,CAAC;QAG7B,SAAI,GAAsB,IAAI,0DAAY,EAAO,CAAC;QAGlD,eAAU,GAAsB,IAAI,0DAAY,EAAO,CAAC;QAGpD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC;QAE1D,IAAI,CAAC,aAAa;aACb,iBAAiB,EAAE;aACnB,SAAS,CACV,IAAI,CAAC,EAAE;YACH,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAEhD,IAAI,eAAe,CAAC,QAAQ,IAAI,IAAI,EAAE;gBAClC,0FAA0F;gBAC1F,eAAe,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;gBACtE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC7D,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC,IAAI,IAAI,EAAE,CAAC;gBAC3C,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC,WAAW,IAAI,EAAE,CAAC;gBACzD,IAAI,CAAC,WAAW,GAAG,eAAe,CAAC,WAAW,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAClH;QACL,CAAC,EACD,KAAK,CAAC,EAAE;YACJ,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACtC,CAAC,CACJ,CAAC;IACV,CAAC;IAED,QAAQ;QACJ,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;YACvC,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC;YACzB,IAAI,CAAC,aAAa,GAAG,CAAC,GAAG,MAAM,CAAC;YAChC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBAC/C,IAAI,WAAW,qBAAQ,IAAI,CAAE;gBAC7B,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;oBAAE,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC,IAAI,GAAG,UAAU,CAAC;gBAC1F,WAAW,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC;gBACvC,OAAO,WAAW,CAAC;YACvB,CAAC,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED,aAAa,CAAC,eAAe;QACzB,MAAM,eAAe,qBAAQ,eAAe,CAAE,CAAC;QAE/C,+DAA+D;QAC/D,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC;QAC5D,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAClC,eAAe,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,wEAAwE;QACxE,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC;QACxD,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAC/B,eAAe,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG;YACb,MAAM,EAAE,IAAI,CAAC,QAAQ;YACrB,aAAa,EAAE,IAAI,CAAC,eAAe;YACnC,QAAQ,EAAE,eAAe;SAC5B,CAAC;QACF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;IAED,QAAQ,CAAC,UAAU;QACf,IAAI,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC;QAChC,2FAA2F;QAC3F,2HAA2H;QAC3H,qFAAqF;QACrF,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAEpF,MAAM,MAAM,GAAG;YACX,MAAM,EAAE,UAAU;YAClB,aAAa,EAAE,EAAE;YACjB,aAAa,EAAE,IAAI,CAAC,WAAW;YAC/B,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE;YAC/B,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;SAC5C,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YAC5D,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC,iBAAiB,CAAC,CAAC,GAAG,EAAE,CAAC;QACtD,CAAC,CAAC,CAAC;IACP,CAAC;IAED,eAAe,CAAC,WAAW;QACvB,OAAO,WAAW,CAAC,UAAU,CAAC;QAC9B,OAAO,WAAW,CAAC;IACvB,CAAC;IAED,iBAAiB,CAAC,WAAW;QACzB,OAAO,WAAW,CAAC,WAAW,CAAC;QAC/B,OAAO,WAAW,CAAC;IACvB,CAAC;IAED,yEAAyE;IACzE,+BAA+B;IAC/B,QAAQ,CAAC,SAAiB;QACtB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACxC,MAAM,WAAW,qBAAQ,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,SAAS,CAAC,CAAE,CAAC;QACzE,WAAW,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;QAC7D,WAAW,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QACjD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,yEAAyE;IACzE,eAAe;QACX,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IACtC,CAAC;CACJ;;YA1GsC,sEAAa;YAAgB,+DAAU;;AAL1E;IADC,4DAAM,EAAE;oEACH,0DAAY;0CAAgC;AAGlD;IADC,4DAAM,EAAE;oEACG,0DAAY;gDAAgC;AAlB/C,YAAY;IANxB,+DAAS,CAAC;QACP,8CAA8C;QAC9C,QAAQ,EAAE,YAAY;QACtB,6MAAmC;;KAEtC,CAAC;2EAqBqC,sEAAa,EAAgB,+DAAU;GApBjE,YAAY,CA8HxB;AA9HwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACXiC;AACP;AACK;AACD;AACV;AACW;AAET;AACe;AACS;AACd;AACC;AAsB1D,IAAa,SAAS,GAAtB,MAAa,SAAS;IACpB,YAAY,QAAkB;QAC5B,8EAA8E;QAC9E,MAAM,EAAE,GAAG,6EAAmB,CAAC,2DAAY,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC3D,cAAc,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QAExC,+EAA+E;QAC/E,MAAM,EAAE,GAAG,6EAAmB,CAAC,0EAAmB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QAClE,cAAc,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,aAAa;IACb,CAAC;CACF;;YAZuB,sDAAQ;;AADnB,SAAS;IApBrB,8DAAQ,CAAC;QACR,YAAY,EAAE;YACZ,2DAAY;YACZ,0EAAmB;SACpB;QACD,OAAO,EAAE;YACP,uEAAa;YACb,mFAAiB;YACjB,sEAAc;YACd,oEAAS;YACT,0DAAW;YACX,qEAAgB;SACjB;QACD,SAAS,EAAE,CAAC,uEAAa,CAAC;QAC1B,6BAA6B;QAC7B,eAAe,EAAE;YACf,2DAAY;YACZ,0EAAmB;SACpB;KACF,CAAC;2EAEsB,sDAAQ;GADnB,SAAS,CAarB;AAbqB;;;;;;;;;;;;;;;;;ACjCf,MAAM,YAAY;;AAErB,kFAAkF;AAClF,kEAAkE;AACpD,8BAAiB,GAAG;IAC9B,IAAI,EAAE;QACF,IAAI,EAAE,OAAO;QACb,UAAU,EAAE,MAAM;QAClB,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,eAAe;QAC5B,QAAQ,EAAE,IAAI;QACd,GAAG,EAAE,KAAK;QACV,aAAa,EAAE;YACX,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,KAAK;SACf;KACJ;IACD,IAAI,EAAE;QACF,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,aAAa;QAC1B,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE,IAAI;QACd,GAAG,EAAE,KAAK;QACV,aAAa,EAAE;YACX,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,KAAK;SACf;KACJ;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,gBAAgB;QACvB,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC;QACjC,WAAW,EAAE,kBAAkB;QAC/B,YAAY,EAAE,KAAK;QACnB,QAAQ,EAAE,IAAI;QACd,GAAG,EAAE,KAAK;QACV,aAAa,EAAE;YACX,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,KAAK;SACf;KACJ;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,mBAAmB;QAChC,QAAQ,EAAE,IAAI;QACd,GAAG,EAAE,KAAK;QACV,aAAa,EAAE;YACX,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,KAAK;SACf;KACJ;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,OAAO;QACb,UAAU,EAAE,UAAU;QACtB,KAAK,EAAE,UAAU;QACjB,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,gBAAgB;QAC7B,QAAQ,EAAE,IAAI;QACd,GAAG,EAAE,KAAK;QACV,aAAa,EAAE;YACX,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,KAAK;SACf;KACJ;IACD,IAAI,EAAE;QACF,IAAI,EAAE,OAAO;QACb,UAAU,EAAE,MAAM;QAClB,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE,IAAI;QACd,GAAG,EAAE,KAAK;QACV,aAAa,EAAE;YACX,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,KAAK;SACf;KACJ;IACD,GAAG,EAAE;QACD,IAAI,EAAE,OAAO;QACb,UAAU,EAAE,KAAK;QACjB,KAAK,EAAE,KAAK;QACZ,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,WAAW;QACxB,QAAQ,EAAE,IAAI;QACd,GAAG,EAAE,KAAK;QACV,aAAa,EAAE;YACX,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,KAAK;SACf;KACJ;IACD,GAAG,EAAE;QACD,IAAI,EAAE,OAAO;QACb,UAAU,EAAE,KAAK;QACjB,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,oBAAoB;QACjC,QAAQ,EAAE,IAAI;QACd,GAAG,EAAE,KAAK;QACV,aAAa,EAAE;YACX,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,KAAK;SACf;KACJ;IACD,KAAK,EAAE;QACH,IAAI,EAAE,OAAO;QACb,UAAU,EAAE,OAAO;QACnB,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,qBAAqB;QAClC,QAAQ,EAAE,IAAI;QACd,GAAG,EAAE,KAAK;QACV,aAAa,EAAE;YACX,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,IAAI;SACd;KACJ;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,OAAO;QACb,UAAU,EAAE,QAAQ;QACpB,KAAK,EAAE,QAAQ;QACf,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,cAAc;QAC3B,QAAQ,EAAE,IAAI;QACd,GAAG,EAAE,KAAK;QACV,aAAa,EAAE;YACX,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,KAAK;SACf;KACJ;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,yBAAyB;QAChC,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC;QACjC,QAAQ,EAAE,IAAI;QACd,YAAY,EAAE,KAAK;QACnB,GAAG,EAAE,KAAK;QACV,aAAa,EAAE;YACX,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,KAAK;SACf;KACJ;IACD,KAAK,EAAE;QACH,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,eAAe;QACtB,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC;QACtB,QAAQ,EAAE,IAAI;QACd,YAAY,EAAE,KAAK;QACnB,GAAG,EAAE,KAAK;QACV,aAAa,EAAE;YACX,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,KAAK;SACf;KACJ;IACD,KAAK,EAAE;QACH,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,6CAA6C;QACpD,IAAI,EAAE,iBAAiB;QACvB,QAAQ,EAAE,IAAI;QACd,kBAAkB,EAAE,KAAK;QACzB,YAAY,EAAE,EAAE;QAChB,GAAG,EAAE,KAAK;QACV,aAAa,EAAE;YACX,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,KAAK;SACf;KACJ;IACD,WAAW,EAAE;QACT,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,qEAAqE;QAC5E,kBAAkB,EAAE,KAAK;QACzB,YAAY,EAAE,EAAE;QAChB,IAAI,EAAE,oBAAoB;QAC1B,GAAG,EAAE,KAAK;QACV,aAAa,EAAE;YACX,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,KAAK;SACf;QACD,QAAQ,EAAE,IAAI;KACjB;CACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;ACzL8G;AACzE;AACsC;AACT;AACG;AACM;AACT;AACH;AACG;AACoB;AAE5F,MAAM,UAAU,GAAG;IACf,QAAQ,EAAE,4FAAqB;IAC/B,KAAK,EAAE,mFAAkB;IACzB,MAAM,EAAE,sFAAmB;IAC3B,QAAQ,EAAE,4FAAqB;IAC/B,KAAK,EAAE,mFAAkB;IACzB,IAAI,EAAE,gFAAiB;IACvB,KAAK,EAAE,mFAAkB;IACzB,WAAW,EAAE,wGAAwB;CACxC,CAAC;AAMF,IAAa,qBAAqB,GAAlC,MAAa,qBAAqB;IAO9B,YACY,QAAkC,EAClC,SAA2B;QAD3B,aAAQ,GAAR,QAAQ,CAA0B;QAClC,cAAS,GAAT,SAAS,CAAkB;IACpC,CAAC;IAEJ,QAAQ;QACJ,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAM,SAAS,CAAC,CAAC;QACtE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC7C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAC/C,CAAC;CACJ;;YAXyB,sEAAwB;YACvB,8DAAgB;;AAR9B;IAAR,2DAAK,EAAE;;qDAAQ;AAEP;IAAR,2DAAK,EAAE;oEAAQ,wDAAS;oDAAC;AAHjB,qBAAqB;IAJjC,+DAAS,CAAC;QACT,8CAA8C;QAC9C,QAAQ,EAAE,gBAAgB;KAC3B,CAAC;2EASwB,sEAAwB;QACvB,8DAAgB;GAT9B,qBAAqB,CAmBjC;AAnBiC;;;;;;;;;;;;;AC1BlC;AAAe,2EAAY,mBAAmB,KAAK,+CAA+C,+Y;;;;;;;;;;;;;;;;;;;;ACA9B;AACA;AACE;AACL;AASjE,IAAa,oBAAoB,GAAjC,MAAa,oBAAoB;IAS7B,YAAoB,EAAe,EAAU,aAA4B;QAArD,OAAE,GAAF,EAAE,CAAa;QAAU,kBAAa,GAAb,aAAa,CAAe;QAPzE,WAAM,GAAU,EAAE,CAAC;QAGnB,oBAAe,GAAG,KAAK,CAAC;QACjB,gBAAW,GAAG,IAAI,CAAC;QAC1B,gBAAW,GAAQ,EAAE,CAAC;IAEuD,CAAC;IAE9E,QAAQ;QACJ,0EAA0E;IAC9E,CAAC;IAED,WAAW;QACP,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC3C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC;IAED,qBAAqB;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;YACjC,IAAI,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;gBACxD,OAAO,KAAK,CAAC,KAAK,KAAK,CAAC,WAAW,CAAC,UAAU,IAAI,WAAW,CAAC,IAAI,CAAC;YACvE,CAAC,CAAC,CAAC;YACH,WAAW,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,OAAO,WAAW,CAAC;QACvB,CAAC,CAAC,CAAC;IACP,CAAC;IAED,WAAW;QACP,MAAM,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7G,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3H,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,WAAW,CAAC,KAAK;QACb,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC;IACrC,CAAC;IAED,UAAU,CAAC,KAAK;QACZ,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC;IACrC,CAAC;IAED,oBAAoB,CAAC,YAAY;QAC7B,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YAC1C,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,CAAC,KAA4B;QAC7B,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,8EAAe,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QACtE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACzC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAC;SACnC;QACD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED,iBAAiB,CAAC,KAAK;QACnB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,YAAY,CAAC,KAAK;QACd,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACvD,CAAC;IAED,aAAa;QACT,CAAC,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;IACjC,CAAC;IAGD,WAAW,CAAC,WAAW;QACnB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,MAAM,SAAS,qBAAQ,WAAW,CAAC,SAAS,CAAE,CAAC;QAC/C,MAAM,SAAS,qBAAQ,WAAW,CAAC,SAAS,CAAE,CAAC;QAC/C,MAAM,YAAY,GAAG;YACjB,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,QAAQ,EAAE,SAAS,CAAC,QAAQ;YAC5B,SAAS,EAAE,SAAS,CAAC,SAAS;YAC9B,QAAQ,EAAE,SAAS,CAAC,QAAQ;YAC5B,KAAK,EAAE,SAAS,CAAC,UAAU;YAC3B,IAAI,EAAE,SAAS,CAAC,eAAe;YAC/B,WAAW,EAAE,SAAS,CAAC,gBAAgB;YACvC,aAAa,EAAE;gBACX,QAAQ,EAAE,SAAS,CAAC,aAAa;gBACjC,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,KAAK;aACvC;YACD,kBAAkB,EAAE,SAAS,CAAC,kBAAkB;YAChD,YAAY,EAAE,SAAS,CAAC,YAAY;SACvC,CAAC;QACF,8FAA8F;QAC9F,IAAI,SAAS,CAAC,aAAa,EAAE;YACzB,IAAI,SAAS,CAAC,KAAK,KAAK,OAAO,IAAI,SAAS,CAAC,UAAU,KAAK,OAAO,EAAE;gBACjE,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,EAAE,yDAAU,CAAC,QAAQ,CAAC,CAAC;aAClF;iBAAM;gBACH,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;aACtD;SACJ;QACD,4EAA4E;QAC5E,IAAI,SAAS,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,QAAQ,IAAI,SAAS,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE;YAClG,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;SACzD;aAAM,IAAI,SAAS,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,IAAI,KAAK,UAAU,EAAE;YAC3E,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;SACzD;QAED,IAAI,SAAS,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,QAAQ,IAAI,SAAS,CAAC,IAAI,KAAK,OAAO,IAAI,SAAS,CAAC,IAAI,KAAK,UAAU,CAAC,EAAE;YACxH,YAAY,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC;SACzD;QAED,IAAI,SAAS,CAAC,GAAG,EAAE;YACf,YAAY,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC;SACvC;QAED,2DAA2D;QAC3D,IAAI,SAAS,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,QAAQ,IAAI,SAAS,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE;YACnG,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;SACpD;aAAM,IAAI,SAAS,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,KAAK,UAAU,EAAE;YAC5E,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;SACpD;QACD,yFAAyF;QACzF,IAAI,SAAS,CAAC,UAAU,EAAE;YACtB,YAAY,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC;SACrD;QACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAG,CAAC,CAAC,qBAAQ,YAAY,CAAE,CAAC;QAC1D,mDAAmD;QACnD,gDAAgD;QAChD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,cAAc,CAAC,KAAK;QAChB,KAAK,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC;QAEhC,2DAA2D;QAC3D,uFAAuF;QACvF,8EAA8E;QAC9E,GAAG;QACH,OAAO,KAAK,CAAC;IACjB,CAAC;CAEJ;;YA5I2B,0DAAW;YAAyB,sEAAa;;AAPzE;IADC,2DAAK,EAAE;;oDACW;AAFV,oBAAoB;IANhC,+DAAS,CAAC;QACP,8CAA8C;QAC9C,QAAQ,EAAE,cAAc;QACxB,oQAA4C;;KAE/C,CAAC;2EAU0B,0DAAW,EAAyB,sEAAa;GAThE,oBAAoB,CAqJhC;AArJgC;;;;;;;;;;;;;ACZjC;AAAe,mFAAoB,8BAA8B,6CAA6C,wBAAwB,KAAK,oBAAoB,8BAA8B,KAAK,+CAA+C,uqB;;;;;;;;;;;;;;;;;;;ACA/J;AACH;AACd;AASjE,IAAa,uBAAuB,GAApC,MAAa,uBAAuB;IAmBhC,YAAoB,EAAe,EAAU,aAA4B;QAArD,OAAE,GAAF,EAAE,CAAa;QAAU,kBAAa,GAAb,aAAa,CAAe;QAhBzE,gBAAW,GAAQ,EAAE,CAAC;QAGtB,WAAM,GAAU,EAAE,CAAC;QACnB,eAAU,GAAG,EAAE,CAAC;QAIhB,YAAO,GAAG,EAAE,CAAC;QAEb,cAAS,GAAG,8FAA8F;YACtG,sFAAsF,CAAC;QAG3F,2BAAsB,GAAsB,IAAI,0DAAY,EAAO,CAAC;IAGpE,CAAC;IAED,IAAI,WAAW;QACX,IAAI,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACxD,OAAO,KAAK,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QACjF,CAAC,CAAC,CAAC;QACH,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACnC,CAAC;IAED,WAAW;QACP,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,OAAO,EAAE;YACzE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;SAC3C;QAED,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;QAEnD,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,UAAU,EAAE;YACtC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;SAC3C;QAED,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;YAC1B,UAAU,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YACpC,YAAY,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC;YAC7C,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;YAC3B,gBAAgB,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC;YAChD,eAAe,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,yDAAU,CAAC,QAAQ,CAAC;YAC7D,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;YACzC,aAAa,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC;SAC3D,CAAC,CAAC;IACP,CAAC;IAED,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAc,CAAC;IAC1D,CAAC;IAED,SAAS;QACL,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED,YAAY,CAAC,CAAC;QACV,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC;IAED,aAAa,CAAC,OAAO;QACjB,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE;YAChE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE;gBAC5B,CAAC,CAAC,GAAG,GAAG,OAAO,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;gBAC3C,OAAO,IAAI,CAAC;aACf;SACJ;aAAM;YACH,CAAC,CAAC,GAAG,GAAG,OAAO,CAAC,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;YAC9C,OAAO,KAAK,CAAC;SAChB;IACL,CAAC;IAED,qBAAqB,CAAC,SAAiB;QACnC,OAAO,SAAS,KAAK,OAAO,IAAI,SAAS,KAAK,aAAa,CAAC;IAChE,CAAC;IAED,iBAAiB;QACb,OAAO,IAAI,CAAC,WAAW,CAAC,kBAAkB,IAAI,GAAG,CAAC;IACtD,CAAC;IAED,eAAe;QACX,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,IAAI,CAAC,CAAC;IAC9C,CAAC;CAEJ;;YArE2B,0DAAW;YAAyB,sEAAa;;AAhBzE;IADC,2DAAK,EAAE;;4DACc;AAGtB;IADC,2DAAK,EAAE;;uDACW;AAWnB;IADC,4DAAM,EAAE;oEACe,0DAAY;uEAAgC;AAjB3D,uBAAuB;IANnC,+DAAS,CAAC;QACP,8CAA8C;QAC9C,QAAQ,EAAE,kBAAkB;QAC5B,gRAAgD;;KAEnD,CAAC;2EAoB0B,0DAAW,EAAyB,sEAAa;GAnBhE,uBAAuB,CAwFnC;AAxFmC;;;;;;;;;;;;;ACXpC;AAAe,6GAA8C,mM;;;;;;;;;;;;;;;;;;ACAnB;AAEuB;AAQjE,IAAa,qBAAqB,GAAlC,MAAa,qBAAqB;IAIhC,YAAoB,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;IAAI,CAAC;IAErD,IAAI,YAAY;QACd,OAAkB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;IAED,yBAAyB;QACvB,IAAI,CAAC,aAAa,CAAC,yBAAyB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACxE,CAAC;CAEF;;YAVoC,sEAAa;;AAJrC,qBAAqB;IANjC,+DAAS,CAAC;QACT,8CAA8C;QAC9C,QAAQ,EAAE,eAAe;QACzB,uQAA6C;;KAE9C,CAAC;2EAKmC,sEAAa;GAJrC,qBAAqB,CAcjC;AAdiC;;;;;;;;;;;;;ACVlC;AAAe,6GAA8C,2L;;;;;;;;;;;;;;;;;;ACAnB;AAE0B;AAQpE,IAAa,iBAAiB,GAA9B,MAAa,iBAAiB;IAM5B,YAAoB,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;QAFxC,SAAI,GAAgB,IAAI,CAAC;IAEmB,CAAC;IAErD,YAAY,CAAC,KAAK;QAChB,MAAM,IAAI,GAAG,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACnD,CAAC;CAEF;;YARoC,iFAAa;;AANrC,iBAAiB;IAN7B,+DAAS,CAAC;QACT,8CAA8C;QAC9C,QAAQ,EAAE,WAAW;QACrB,2PAAyC;;KAE1C,CAAC;2EAOmC,iFAAa;GANrC,iBAAiB,CAc7B;AAd6B;;;;;;;;;;;;;ACV9B;AAAe,8GAA+C,yBAAyB,4BAA4B,+BAA+B,+BAA+B,kCAAkC,kCAAkC,8BAA8B,6BAA6B,+BAA+B,gCAAgC,yBAAyB,6CAA6C,8BAA8B,2BAA2B,iDAAiD,usC;;;;;;;;;;;;;;;;;ACA7e;AASlD,IAAa,wBAAwB,GAArC,MAAa,wBAAwB;IAInC,gBAAgB,CAAC;IAEjB,QAAQ;IACR,CAAC;CAEF;AATY,wBAAwB;IANpC,+DAAS,CAAC;QACT,8CAA8C;QAC9C,QAAQ,EAAE,mBAAmB;QAC7B,mRAAiD;;KAElD,CAAC;;GACW,wBAAwB,CASpC;AAToC;;;;;;;;;;;;;ACTrC;AAAe,6GAA8C,2L;;;;;;;;;;;;;;;;;ACAX;AAUlD,IAAa,kBAAkB,GAA/B,MAAa,kBAAkB;IAI7B,gBAAgB,CAAC;IAEjB,QAAQ;IACR,CAAC;CAEF;AATY,kBAAkB;IAN9B,+DAAS,CAAC;QACT,8CAA8C;QAC9C,QAAQ,EAAE,YAAY;QACtB,8PAA0C;;KAE3C,CAAC;;GACW,kBAAkB,CAS9B;AAT8B;;;;;;;;;;;;;ACV/B;AAAe,kFAAmB,wCAAwC,wBAAwB,0BAA0B,KAAK,mPAAmP,uBAAuB,kBAAkB,KAAK,6GAA6G,8BAA8B,KAAK,oFAAoF,mBAAmB,mCAAmC,qCAAqC,yCAAyC,OAAO,2IAA2I,8BAA8B,KAAK,gBAAgB,6BAA6B,KAAK,iDAAiD,m8D;;;;;;;;;;;;;;;;;;;ACAh9B;AACjB;AACT;AASxD,IAAa,oBAAoB,GAAjC,MAAa,oBAAoB;IAa7B,YAAoB,EAAe,EAAU,aAA4B;QAArD,OAAE,GAAF,EAAE,CAAa;QAAU,kBAAa,GAAb,aAAa,CAAe;QAXzE,WAAM,GAAU,EAAE,CAAC;QAGnB,cAAS,GAAsB,IAAI,0DAAY,EAAO,CAAC;QAEvD,gBAAW,GAAQ,EAAE,CAAC;QAEtB,iBAAY,GAAG,yBAAyB,CAAC;QACzC,wBAAmB,GAAG,KAAK,CAAC;QAC5B,YAAO,GAAG,KAAK,CAAC;IAE6D,CAAC;IAE9E,wEAAwE;IACxE,WAAW;QACP,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC;IAED,sFAAsF;IACtF,0FAA0F;IAC1F,WAAW;QACP,MAAM,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACjI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3H,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,WAAW,CAAC,KAAK;QACb,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC;IACrC,CAAC;IAED,UAAU,CAAC,KAAK;QACZ,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC;IACrC,CAAC;IAED,eAAe,CAAC,KAAK;QACjB,OAAO,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC;IAClC,CAAC;IAED,qEAAqE;IACrE,oBAAoB,CAAC,YAAY;QAC7B,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YAC1C,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;IACvD,CAAC;IAED,wEAAwE;IACxE,2BAA2B;IAC3B,wEAAwE;IACxE,qEAAqE;IACrE,aAAa,CAAC,WAAW;QACrB,IAAI,WAAW,CAAC,aAAa,CAAC,QAAQ,EAAE;YACpC,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;SAC5C;QACD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAC/E,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC9F,CAAC;IAED,oEAAoE;IACpE,6DAA6D;IAC7D,iBAAiB,CAAC,OAAO;QACrB,CAAC,CAAC,GAAG,GAAG,OAAO,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC/D,CAAC,CAAC,GAAG,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QAC9C,CAAC,CAAC,GAAG,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;IACnD,CAAC;IAED,sEAAsE;IACtE,mEAAmE;IACnE,mEAAmE;IACnE,mEAAmE;IACnE,uBAAuB;IACvB,WAAW,CAAC,IAAI;QACZ,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC;QACnC,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,IAAI,kBAAkB,GAAG,IAAI,CAAC;QAE9B,wEAAwE;QACxE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;YACxD,IAAI,aAAa,CAAC,aAAa,CAAC,QAAQ,EAAE;gBACtC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE;oBAC1E,aAAa,GAAG,KAAK,CAAC;iBACzB;aACJ;QACL,CAAC,CAAC,CAAC;QAEH,qEAAqE;QACrE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE;YAClE,IAAI,kBAAkB,CAAC,aAAa,CAAC,QAAQ,EAAE;gBAC3C,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE;oBAC3C,kBAAkB,GAAG,KAAK,CAAC;iBAC9B;aACJ;QACL,CAAC,CAAC,CAAC;QAEH,qEAAqE;QACrE,IAAI,IAAI,CAAC,KAAK,EAAE;YACZ,OAAO,KAAI,IAAI,aAAa,IAAI,kBAAkB,CAAC;SACtD;aAAM;YACH,OAAO,KAAK,CAAC;SAChB;IACL,CAAC;CAEJ;;YA5F2B,0DAAW;YAAyB,sEAAa;;AAXzE;IADC,2DAAK,EAAE;;oDACW;AAGnB;IADC,4DAAM,EAAE;oEACE,0DAAY;uDAAgC;AAL9C,oBAAoB;IANhC,+DAAS,CAAC;QACP,8CAA8C;QAC9C,QAAQ,EAAE,cAAc;QACxB,oQAA4C;;KAE/C,CAAC;2EAc0B,0DAAW,EAAyB,sEAAa;GAbhE,oBAAoB,CAyGhC;AAzGgC;;;;;;;;;;;;;ACXjC;AAAe,6GAA8C,2L;;;;;;;;;;;;;;;;;ACAX;AASlD,IAAa,kBAAkB,GAA/B,MAAa,kBAAkB;IAQ7B,gBAAgB,CAAC;IAJjB,UAAU,CAAC,SAAS;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IAID,QAAQ;IACR,CAAC;CAEF;AAbY,kBAAkB;IAN9B,+DAAS,CAAC;QACT,8CAA8C;QAC9C,QAAQ,EAAE,YAAY;QACtB,8PAA0C;;KAE3C,CAAC;;GACW,kBAAkB,CAa9B;AAb8B;;;;;;;;;;;;;ACT/B;AAAe,2SAA4O,uBAAuB,kBAAkB,KAAK,6GAA6G,8BAA8B,KAAK,oFAAoF,mBAAmB,sCAAsC,qCAAqC,yCAAyC,OAAO,2IAA2I,8BAA8B,KAAK,gBAAgB,6BAA6B,KAAK,kCAAkC,oBAAoB,mCAAmC,qCAAqC,sCAAsC,MAAM,+CAA+C,+gE;;;;;;;;;;;;;;;;;;;;ACAlgC;AACjB;AACT;AACe;AAUvE,IAAa,mBAAmB,GAAhC,MAAa,mBAAmB;IAkB5B,YAAoB,EAAe,EACvB,aAA4B,EAC5B,gBAAkC;QAF1B,OAAE,GAAF,EAAE,CAAa;QACvB,kBAAa,GAAb,aAAa,CAAe;QAC5B,qBAAgB,GAAhB,gBAAgB,CAAkB;QAlB9C,WAAM,GAAU,EAAE,CAAC;QAGnB,cAAS,GAAsB,IAAI,0DAAY,EAAO,CAAC;QAEvD,gBAAW,GAAQ,EAAE,CAAC;QAEtB,iBAAY,GAAG,yBAAyB,CAAC;QACzC,wBAAmB,GAAG,KAAK,CAAC;QAC5B,YAAO,GAAG,KAAK,CAAC;QAChB,qBAAgB,GAAG,oBAAoB,CAAC;QACxC,qBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;QACtD,iCAA4B,GAAG,IAAI,CAAC,gBAAgB,CAAC,6BAA6B,EAAE,CAAC;QACrF,sBAAiB,GAAW,EAAE,CAAC;QAC/B,+BAA0B,GAAY,KAAK,CAAC;IAIM,CAAC;IAEnD,wEAAwE;IACxE,WAAW;QACP,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC;IAED,sFAAsF;IACtF,0FAA0F;IAC1F,WAAW;QACP,MAAM,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChC,6DAA6D;QAC7D,gIAAgI;QAChI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAC9F;YACI,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC7B,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACjI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE3H,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QAEzD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,WAAW,CAAC,KAAK;QACb,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC;IACrC,CAAC;IAED,UAAU,CAAC,KAAK;QACZ,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC;IACrC,CAAC;IAED,eAAe,CAAC,KAAK;QACjB,OAAO,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC;IAClC,CAAC;IAED,qEAAqE;IACrE,oBAAoB,CAAC,YAAY;QAC7B,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YAC1C,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;IACvD,CAAC;IAED,wEAAwE;IACxE,2BAA2B;IAC3B,wEAAwE;IACxE,qEAAqE;IACrE,aAAa,CAAC,WAAW;QACrB,IAAI,WAAW,CAAC,aAAa,CAAC,QAAQ,EAAE;YACpC,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;SAC5C;QACD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAC/E,kEAAkE;QAClE,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC9F,CAAC;IAED,oEAAoE;IACpE,6DAA6D;IAC7D,iBAAiB,CAAC,OAAO;QACrB,CAAC,CAAC,GAAG,GAAG,OAAO,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IACnE,CAAC;IAED,uBAAuB,CAAC,iBAAyB;QAC7C,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC/C,CAAC;IAED,kBAAkB;QACd,IAAI,IAAI,CAAC,iBAAiB;YAAE,OAAO,KAAK,CAAC;QACzC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,sEAAsE;IACtE,mEAAmE;IACnE,mEAAmE;IACnE,mEAAmE;IACnE,uBAAuB;IACvB,WAAW,CAAC,IAAI;QACZ,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC;QACnC,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,IAAI,kBAAkB,GAAG,IAAI,CAAC;QAE9B,wEAAwE;QACxE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;YACxD,IAAI,aAAa,CAAC,aAAa,CAAC,QAAQ,EAAE;gBACtC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE;oBAC1E,aAAa,GAAG,KAAK,CAAC;iBACzB;aACJ;QACL,CAAC,CAAC,CAAC;QAEH,qEAAqE;QACrE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE;YAClE,IAAI,kBAAkB,CAAC,aAAa,CAAC,QAAQ,EAAE;gBAC3C,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE;oBAC3C,kBAAkB,GAAG,KAAK,CAAC;iBAC9B;aACJ;QACL,CAAC,CAAC,CAAC;QAEH,qEAAqE;QACrE,IAAI,IAAI,CAAC,KAAK,EAAE;YACZ,OAAO,KAAI,IAAI,aAAa,IAAI,kBAAkB,CAAC;SACtD;aAAM;YACH,OAAO,KAAK,CAAC;SAChB;IACL,CAAC;IAED,iBAAiB,CAAC,QAAQ;QACtB,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,0BAA0B,GAAG,KAAK,CAAC;QAExC,+BAA+B;QAC/B,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC/E,OAAO;SACV;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,gBAAgB,GAAG,2BAA2B,CAAC;QAEpD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED,YAAY;QACR,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC;QACvC,IAAI,CAAC,gBAAgB,GAAG,oBAAoB,CAAC;IACjD,CAAC;IAED,qBAAqB;QACjB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,gBAAgB,GAAG,oBAAoB,CAAC;IACjD,CAAC;CAEJ;;YA1I2B,0DAAW;YACR,sEAAa;YACV,4EAAgB;;AAlB9C;IADC,2DAAK,EAAE;;mDACW;AAGnB;IADC,4DAAM,EAAE;oEACE,0DAAY;sDAAgC;AAL9C,mBAAmB;IAN/B,+DAAS,CAAC;QACP,8CAA8C;QAC9C,QAAQ,EAAE,aAAa;QACvB,iQAA2C;;KAE9C,CAAC;2EAmB0B,0DAAW;QACR,sEAAa;QACV,4EAAgB;GApBrC,mBAAmB,CA4J/B;AA5J+B;;;;;;;;;;;;;ACbhC;AAAe,6GAA8C,+L;;;;;;;;;;;;;;;;;ACAX;AASlD,IAAa,mBAAmB,GAAhC,MAAa,mBAAmB;IAI9B,gBAAgB,CAAC;IAEjB,QAAQ;IACR,CAAC;CAEF;AATY,mBAAmB;IAN/B,+DAAS,CAAC;QACT,8CAA8C;QAC9C,QAAQ,EAAE,aAAa;QACvB,iQAA2C;;KAE5C,CAAC;;GACW,mBAAmB,CAS/B;AAT+B;;;;;;;;;;;;;ACThC;AAAe,6GAA8C,2L;;;;;;;;;;;;;;;;;ACAX;AASlD,IAAa,kBAAkB,GAA/B,MAAa,kBAAkB;IAI7B,gBAAgB,CAAC;IAEjB,QAAQ;IACR,CAAC;CAEF;AATY,kBAAkB;IAN9B,+DAAS,CAAC;QACT,8CAA8C;QAC9C,QAAQ,EAAE,YAAY;QACtB,8PAA0C;;KAE3C,CAAC;;GACW,kBAAkB,CAS9B;AAT8B;;;;;;;;;;;;;ACT/B;AAAe,6GAA8C,mM;;;;;;;;;;;;;;;;;ACAX;AASlD,IAAa,qBAAqB,GAAlC,MAAa,qBAAqB;IAIhC,gBAAgB,CAAC;IAEjB,QAAQ;IACR,CAAC;CAEF;AATY,qBAAqB;IANjC,+DAAS,CAAC;QACT,8CAA8C;QAC9C,QAAQ,EAAE,eAAe;QACzB,uQAA6C;;KAE9C,CAAC;;GACW,qBAAqB,CASjC;AATiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACTO;AACM;AACyC;AACtB;AACgB;AACG;AACM;AACA;AAClC;AACF;AAC4C;AACd;AACG;AACG;AACT;AACH;AACG;AACoB;AACjC;AAuCrE,IAAa,iBAAiB,GAA9B,MAAa,iBAAiB;CAAI;AAArB,iBAAiB;IArC7B,8DAAQ,CAAC;QACR,OAAO,EAAE;YACP,4DAAY;YACZ,kEAAmB;YACnB,qEAAc;YACd,qEAAS;YACT,0DAAW;YACX,6DAAe;YACf,kEAAoB;SACrB;QACD,YAAY,EAAE;YACZ,uGAAqB;YACrB,oGAAoB;YACpB,gHAAuB;YACvB,kGAAmB;YACnB,qGAAoB;YACpB,8FAAkB;YAClB,iGAAmB;YACnB,uGAAqB;YACrB,wGAAqB;YACrB,+FAAkB;YAClB,4FAAiB;YACjB,+FAAkB;YAClB,mHAAwB;SACzB;QACD,OAAO,EAAE,CAAC,oGAAoB,EAAE,qGAAoB,EAAE,kGAAmB,CAAC;QAC1E,eAAe,EAAE;YACf,uGAAqB;YACrB,8FAAkB;YAClB,iGAAmB;YACnB,wGAAqB;YACrB,+FAAkB;YAClB,4FAAiB;YACjB,+FAAkB;YAClB,mHAAwB;SACzB;KACF,CAAC;GACW,iBAAiB,CAAI;AAAJ;;;;;;;;;;;;;ACzD9B;AAAe,2EAAY,0CAA0C,KAAK,wBAAwB,oCAAoC,KAAK,4BAA4B,oCAAoC,KAAK,4BAA4B,oCAAoC,KAAK,yDAAyD,moB;;;;;;;;;;;;;;;;;;;;ACA3P;AACzB;AACW;AAC6B;AAUlG,IAAa,mBAAmB,GAAhC,MAAa,mBAAmB;IAW5B,YAAoB,aAA4B,EAAU,IAAgB;QAAtD,kBAAa,GAAb,aAAa,CAAe;QAAU,SAAI,GAAJ,IAAI,CAAY;QAT1E,WAAM,GAAU,EAAE,CAAC;QAOnB,eAAU,GAAsB,IAAI,0DAAY,EAAO,CAAC;QAGpD,IAAI,CAAC,aAAa;aACb,mBAAmB,EAAE;aACrB,SAAS,CACN,IAAI,CAAC,EAAE;YACH,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAEpD,IAAI,eAAe,CAAC,QAAQ,IAAI,IAAI,EAAE;gBAClC,0FAA0F;gBAC1F,eAAe,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;gBACtE,+DAA+D;gBAC/D,+FAA+F;gBAC/F,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;gBAC7D,IAAI,WAAW,GAAG,CAAC,CAAC,iBAAiB,CAAC,CAAC,GAAG,EAAE,CAAC;gBAE7C,IAAI,WAAW,GAAG,CAAC,EAAE;oBACjB,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,sBAAsB,CAAC;yBAClE,GAAG,CAAC,CAAC,CAAC,EAAE;wBACL,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,wBAAwB,CAAC,CAAC,GAAG,EAAE,CAAC;wBAC5C,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC;oBACvB,CAAC,CAAC,CAAC;oBACP,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,qBAAqB,CAAC;yBACjE,GAAG,CAAC,CAAC,CAAC,EAAE;wBACL,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,uBAAuB,CAAC,CAAC,GAAG,EAAE,CAAC;wBAC3C,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC;oBACvB,CAAC,CAAC,CAAC;oBACP,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,yBAAyB,CAAC;yBACrE,GAAG,CAAC,CAAC,CAAC,EAAE;wBACL,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,2BAA2B,CAAC,CAAC,GAAG,EAAE,CAAC;wBAC/C,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;oBACtB,CAAC,CAAC,CAAC;oBACP,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,wBAAwB,CAAC;yBACpE,GAAG,CAAC,CAAC,CAAC,EAAE;wBACL,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,0BAA0B,CAAC,CAAC,GAAG,EAAE,CAAC;wBAC9C,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC;oBACvB,CAAC,CAAC,CAAC;iBACV;gBACD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC7D,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC,IAAI,IAAI,EAAE,CAAC;gBAC3C,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC,WAAW,IAAI,EAAE,CAAC;aAC5D;QACL,CAAC,EACD,KAAK,CAAC,EAAE;YACJ,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACtC,CAAC,CACJ;IACT,CAAC;IAED,QAAQ;QACJ,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,aAAa,CAAC,eAAe;QAEzB,MAAM,eAAe,qBAAQ,eAAe,CAAE,CAAC;QAE/C,+DAA+D;QAC/D,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC;QAC5D,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAClC,eAAe,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YACnC,IAAG,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,EAAC;gBACnC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;aAC7B;QACL,CAAC,CAAC,CAAC;QACH,wEAAwE;QACxE,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC;QACxD,uCAAuC;QACvC,2CAA2C;QAC3C,IAAI;QAEJ,8HAA8H;QAC9H,0GAA0G;QAC1G,4FAA4F;QAC5F,IAAI,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YACjF,OAAO;gBACH,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC1B,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK;gBAC7D,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK;gBAClC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC;aACpE;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG;YACb,MAAM,EAAE,IAAI,CAAC,QAAQ;YACrB,aAAa,EAAE,IAAI,CAAC,eAAe;YACnC,4BAA4B;YAC5B,UAAU,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC,GAAG,EAAE;YACpC,WAAW,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE;YAClC,UAAU,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE;YAChC,oBAAoB,EAAE,CAAC,CAAC,qBAAqB,CAAC,CAAC,GAAG,EAAE;YACpD,QAAQ,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE;YAC5B,mBAAmB,EAAE,eAAe,CAAC,SAAS;YAC9C,gBAAgB;SACnB,CAAC;QAEF,MAAM,QAAQ,GAAa,IAAI,QAAQ,EAAE,CAAC;QAE1C,IAAI,cAAc,GAAQ,EAAE,CAAC;QAE7B,CAAC,CAAC,IAAI,CAAC,WAAW,EACd,UAAU,KAAK,EAAE,IAAI;YACjB,IAAI,OAAO,GAAG;gBACV,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,UAAU,EAAE,IAAI,CAAC,UAAU;aAC9B;YAED,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAE7B,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEP,QAAQ,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;QAClE,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEtD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YAC3E,IAAI,GAAG,GAAG,CAAC,CAAC,gBAAgB,CAAC,CAAC,GAAG,EAAE,EAC/B,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAE7B,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,EAAE,IAAI,MAAM,KAAK,GAAG,EAAE;gBACtG,IAAI,MAAM,KAAK,IAAI,EAAE;oBACjB,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC;oBACrB,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC;oBACvB,CAAC,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC3B,CAAC,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;oBACzC,CAAC,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;oBAC/C,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBACtB,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,CAAC;oBAE/C,OAAO,IAAI,CAAC;iBACf;qBAAM;oBACH,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;wBAC/C,cAAc,CAAC,OAAO,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;qBACtD;oBAED,GAAG,IAAI,0BAA0B,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;oBAE/D,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,CAAC;iBAC9B;aACJ;iBAAM;gBACH,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;gBACtC,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC;gBACrB,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC;aAC1B;QACL,CAAC,CAAC,CAAC;IACP,CAAC;CAEJ;;YA3JsC,sEAAa;YAAgB,+DAAU;;AALvB;IAAlD,+DAAS,CAAC,8GAAmB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;oEAA4B,8GAAmB;8DAAC;AAGlG;IADC,4DAAM,EAAE;oEACG,0DAAY;uDAAgC;AAT/C,mBAAmB;IAN/B,+DAAS,CAAC;QACP,8CAA8C;QAC9C,QAAQ,EAAE,aAAa;QACvB,6NAA2C;;KAE9C,CAAC;2EAYqC,sEAAa,EAAgB,+DAAU;GAXjE,mBAAmB,CAsK/B;AAtK+B;;;;;;;;;;;;;;;;;;;;;;;;ACbW;AACQ;AACP;AACW;AACc;AAEpC;AACE;AAQnC,IAAa,aAAa,GAA1B,MAAa,aAAa;IAEtB,YAAoB,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;QAEpC,mEAAmE;QAC3D,uBAAkB,GAAW,CAAC,CAAC,iBAAiB,CAAC,CAAC,GAAG,EAAE,GAAG,UAAU,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,GAAG,YAAY,GAAG,CAAC,CAAC,cAAc,CAAC,CAAC,GAAG,EAAE,CAAC;QAE9I,kEAAkE;QAC1D,yBAAoB,GAAW,CAAC,CAAC,iBAAiB,CAAC,CAAC,GAAG,EAAE,GAAG,UAAU,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,GAAG,YAAY,GAAG,CAAC,CAAC,cAAc,CAAC,CAAC,GAAG,EAAE,GAAG,YAAY,GAAG,kBAAkB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QAE9M,mBAAc,GAAU,EAAE,CAAC;QAC3B,qBAAgB,GAAG,EAAE,CAAC;QAEtB,oBAAe,GAAG,uDAAY,CAAC,iBAAiB,CAAC;QAEjD,2BAAsB,GAAQ,EAAE,CAAC;QACjC,kBAAa,GAAQ,EAAE,CAAC;QAEhB,eAAU,GAAG;YACjB,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE;YACrC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE;YACxC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;YACnC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;YACjC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE;YAC/B,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;YACvC,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE;YACxC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE;YACtC,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,OAAO,EAAE;YAC1C,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,aAAa,EAAE;YACvD,mCAAmC;YACnC,2CAA2C;YAC3C,kCAAkC;YAClC,uCAAuC;SAC1C,CAAC;QAOF,yEAAyE;QACzE,mEAAmE;QACnE,+DAA+D;QAC/D,yEAAyE;QACjE,WAAM,GAAG,IAAI,oDAAe,CAAM,IAAI,CAAC,cAAc,CAAC,CAAC;QAC/D,SAAI,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IA3CM,CAAC;IAiCzC,IAAI,eAAe;QACf,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAUD,2FAA2F;IAC3F,UAAU,CAAC,SAAS;QAChB,MAAM,cAAc,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACrC,CAAC;IAED,qEAAqE;IACrE,iBAAiB;QACb,OAAO,IAAI,CAAC,IAAI;aACX,GAAG,CAAc,IAAI,CAAC,kBAAkB,CAAC;aACzC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAClC,CAAC;IAED,qEAAqE;IACrE,mBAAmB;QACf,OAAO,IAAI,CAAC,IAAI;aACX,GAAG,CAAc,IAAI,CAAC,oBAAoB,CAAC;aAC3C,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAClC,CAAC;IAED,YAAY,CAAC,KAAwB;QACjC,OAAO,+CAAU,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,yCAAyC,CAAC,CAAC;IACxF,CAAC;IAED,aAAa,CAAC,WAAW;QACrB,WAAW,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;QAC/B,IAAI,WAAW,CAAC,aAAa,CAAC,QAAQ,IAAI,WAAW,CAAC,IAAI,KAAK,MAAM,EAAE;YACnE,yDAAyD;SAC5D;aAAM,IAAI,WAAW,CAAC,aAAa,CAAC,QAAQ,EAAE;YAC3C,WAAW,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;SACvD;QACD,IAAI,WAAW,CAAC,aAAa,CAAC,KAAK,EAAE;YACjC,WAAW,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,yDAAU,CAAC,KAAK,CAAC,CAAC;SACpD;QACD,OAAO,WAAW,CAAC;IACvB,CAAC;IAED,6EAA6E;IAC7E,sEAAsE;IACtE,oCAAoC;IACpC,yBAAyB,CAAC,IAAI,EAAE,KAAK;QACjC,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,MAAM,aAAa,GAAc,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACtD,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE;YAC1C,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,EAAE;gBACxB,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;aACzC;QACL,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC;IAC7D,CAAC;IAED,wCAAwC;IACxC,IAAI,iBAAiB;QACjB,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACvC,CAAC;IAED,iEAAiE;IACjE,eAAe,CAAC,mBAAmB;QAC/B,IAAI,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YACpC,OAAO,IAAI,CAAC;SACf;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,6DAA6D;IAC7D,4EAA4E;IAC5E,qDAAqD;IACrD,aAAa,CAAC,WAAW,EAAE,IAAI,EAAE,mBAAmB;QAEhD,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC;QACnC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC7C,2BAA2B;QAC3B,oEAAoE;QACpE,kEAAkE;QAClE,QAAQ,WAAW,CAAC,IAAI,EAAE;YAEtB,KAAK,UAAU,CAAC,CAAC;gBACb,IAAG,WAAW,CAAC,aAAa,CAAC,QAAQ,IAAI,KAAK,EAAC;oBAC3C,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;oBAChD,OAAO,KAAK,CAAC;iBAChB;gBACD,MAAM,eAAe,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;gBACrE,IAAI,eAAe,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,OAAO,IAAI,mBAAmB,CAAC,EAAE;oBACtF,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;oBAC7C,OAAO,IAAI,CAAC;iBACf;qBAAM;oBACH,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;oBAChD,OAAO,KAAK,CAAC;iBAChB;aACJ;YACD,KAAK,OAAO,CAAC,CAAC;gBACV,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,OAAO,IAAI,mBAAmB,CAAC,EAAE;oBAC7F,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;oBAC1D,OAAO,IAAI,CAAC;iBACf;qBAAM;oBACH,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;oBAC7D,OAAO,KAAK,CAAC;iBAChB;aACJ;YACD,KAAK,MAAM,CAAC,CAAC;gBACT,IACI,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,mBAAmB,CAAC;uBACtD,WAAW,CAAC,aAAa,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAC7E;oBACE,OAAO,IAAI,CAAC;iBACf;qBAAM;oBACH,OAAO,KAAK,CAAC;iBAChB;aACJ;YAED,OAAO,CAAC,CAAC;gBACL,IAAI,WAAW,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,OAAO,IAAI,mBAAmB,CAAC,EAAE;oBAC1F,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;oBAC7C,OAAO,IAAI,CAAC;iBACf;qBAAM;oBACH,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;oBAChD,OAAO,KAAK,CAAC;iBAChB;aACJ;SACJ;IACL,CAAC;IAED,uBAAuB,CAAC,WAAW;QAC/B,IAAI,qBAAqB,GAAG,IAAI,CAAC;QACjC,MAAM,aAAa,GAAG,WAAW;aAC5B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAE/E,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YAC/B,IAAI,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;gBACzC,qBAAqB,GAAG,qBAAqB,IAAI,IAAI,CAAC;aACzD;iBAAM;gBACH,qBAAqB,GAAG,qBAAqB,IAAI,KAAK,CAAC;aAC1D;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,qBAAqB,CAAC;IACjC,CAAC;IAED,eAAe,CAAC,IAAI,EAAE,WAAW;QAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,YAAY,GAAG,WAAW,CAAC,KAAK,GAAG,eAAe,CAAC;QAEvD,QAAQ,WAAW,CAAC,IAAI,EAAE;YACtB,KAAK,OAAO,CAAC,CAAC;gBACV,YAAY,GAAG,iDAAiD,CAAC;gBACjE,MAAM;aACT;YACD,KAAK,MAAM,CAAC,CAAC;gBACT,YAAY,GAAG,sBAAsB,CAAC;gBACtC,MAAM;aACT;YACD,KAAK,OAAO,CAAC,CAAC;gBACV,IAAI,WAAW,CAAC,UAAU,KAAK,OAAO,IAAI,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE;oBAC1F,YAAY,GAAG,WAAW,CAAC,KAAK,GAAG,eAAe,CAAC;iBACtD;qBAAM,IAAI,WAAW,CAAC,UAAU,KAAK,OAAO,IAAI,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE;oBAC9F,YAAY,GAAG,8BAA8B,CAAC;iBACjD;gBACD,MAAM;aACT;SACJ;QAED,OAAO,YAAY,CAAC;IAExB,CAAC;IAED,UAAU,CAAC,YAAY,EAAE,MAAM;QAC3B,qDAAqD;QACrD,IAAI,IAAI,GAAS,YAAY,CAAC;QAE9B,IAAI,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,IAAI,EAAE,KAAK;YAC7D,OAAO,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC,IAAI,CAAC;QAC1C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEN,IAAI,UAAU,EAAE;YACZ,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YAC5B,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YAC5B,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC;SAC1B;aAAM;YACH,UAAU,GAAG;gBACT,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI;gBACV,SAAS,EAAE,MAAM,CAAC,IAAI;gBACtB,UAAU,EAAE,MAAM,CAAC,KAAK;aAC3B;YAED,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YAC1C,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SACvC;IACL,CAAC;IAED,iBAAiB,CAAC,SAAS;QACvB,IAAI,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;QAE7E,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;CAEJ;;YAtP6B,+DAAU;;AAF3B,aAAa;IAHzB,gEAAU,CAAC;QACR,UAAU,EAAE,MAAM;KACrB,CAAC;2EAG4B,+DAAU;GAF3B,aAAa,CAwPzB;AAxPyB;;;;;;;;;;;;;;;;;;;;ACfiB;AACO;AACkB;AAYpE,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;IAKzB,YAAoB,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;QAHpC,qBAAgB,GAAG,0CAA0C,CAAC;QAC9D,iCAA4B,GAAG,kBAAkB,CAAC;IAEV,CAAC;IAEzC,UAAU;QACN,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAED,kBAAkB,CAAC,KAAgB,EAAE,EAAe;QAChD,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,6BAA6B;QACzB,OAAO,IAAI,CAAC,4BAA4B,CAAC;IAC7C,CAAC;IAED,2DAA2D;IAC3D,2DAA2D;IAC3D,kCAAkC;IAC5B,gBAAgB,CAAC,cAAc;;YACjC,IAAI,CAAC,cAAc;gBAAE,OAAO,KAAK,CAAC;YAElC,IAAI;gBACA,MAAM,GAAG,GAAG,uBAAuB,CAAC;gBACpC,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,IAAI;qBACrC,IAAI,CAAqB,GAAG,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;qBAC3E,SAAS,EAAE,CAAC;gBAEjB,IAAI,CAAC,kBAAkB,IAAI,CAAC,kBAAkB,CAAC,OAAO;oBAAE,OAAO,KAAK,CAAC;gBACrE,OAAO,IAAI,CAAC;aACf;YAAC,OAAO,KAAK,EAAE;gBACZ,2BAA2B;gBAC3B,OAAO,KAAK,CAAC;aAChB;QACL,CAAC;KAAA;CAEJ;;YAlC6B,+DAAU;;AAL3B,gBAAgB;IAJ5B,gEAAU,CAAC;QACR,UAAU,EAAE,MAAM;KACrB,CAAC;2EAO4B,+DAAU;GAL3B,gBAAgB,CAuC5B;AAvC4B;;;;;;;;;;;;;ACd7B;AAAA;AAAA;AAAA,gFAAgF;AAChF,0EAA0E;AAC1E,gEAAgE;;AAEzD,MAAM,WAAW,GAAG;IACzB,UAAU,EAAE,KAAK;CAClB,CAAC;AAEF;;;;;;GAMG;AACH,mEAAmE;;;;;;;;;;;;;;;;;;;;ACfpB;AAC4B;AAE9B;AACY;AAEzD,IAAI,qEAAW,CAAC,UAAU,EAAE;IAC1B,oEAAc,EAAE,CAAC;CAClB;AAED,gGAAsB,EAAE,CAAC,eAAe,CAAC,yDAAS,CAAC;KAChD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC","file":"main-es2015.js","sourcesContent":["export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Form Fields\\r\\n
\\r\\n\\r\\n
0\\\">\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Preview\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Required field\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Edit Options

\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n Name: {{fieldConfig.displayName}}\\r\\n
\\r\\n
\\r\\n Position: {{fieldConfig.position}}\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n

{{ getMaxLabelLength() - fieldLabel.value.length}} character(s) left

\\r\\n
\\r\\n\\r\\n
\\r\\n {{termsNote}}\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\n \\n\\n
\\n \\n
\\n
\"","export default \"
\\n \\n
\\n {{ file ? file.name : config.placeholder }} \\n \\n
\\n
\"","export default \"
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\"","export default \"
\\r\\n
0\\\">\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n {{errorMessage}}\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\"","export default \"
\\n \\n \\n
\"","export default \"
\\r\\n
\\r\\n
0\\\">\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n {{errorMessage}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n {{ reCaptchaMissingErrorMessage }}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Application submission failed due to one or more errors. Please try again!\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\"","export default \"
\\r\\n \\r\\n \\r\\n
\\r\\n\"","export default \"
\\n \\n
\\n \\n \\n
\\n
\"","export default \"
\\r\\n \\r\\n \\r\\n \\r\\n
\"","export default \"
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\"","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./wwwroot/$$_lazy_route_resource lazy recursive\";","export default \".card-body#form-fields button {\\r\\n min-width: 150px;\\r\\n max-width: 180px;\\r\\n margin: 1% !important;\\r\\n}\\r\\n\\r\\n.card-body#form-fields {\\r\\n margin-left: 8px;\\r\\n}\\r\\n\\r\\n#add-form-fields {\\r\\n overflow:hidden;\\r\\n}\\r\\n\\r\\n.dropdown-save-form {\\r\\n width: 275px !important;\\r\\n background-color: #263448;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInd3d3Jvb3QvYXBwL2FwcC5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsdUJBQXVCO0VBQ3ZCLHlCQUF5QjtBQUMzQiIsImZpbGUiOiJ3d3dyb290L2FwcC9hcHAuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5jYXJkLWJvZHkjZm9ybS1maWVsZHMgYnV0dG9uIHtcclxuICBtaW4td2lkdGg6IDE1MHB4O1xyXG4gIG1heC13aWR0aDogMTgwcHg7XHJcbiAgbWFyZ2luOiAxJSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY2FyZC1ib2R5I2Zvcm0tZmllbGRzIHtcclxuICBtYXJnaW4tbGVmdDogOHB4O1xyXG59XHJcblxyXG4jYWRkLWZvcm0tZmllbGRzIHtcclxuICBvdmVyZmxvdzpoaWRkZW47XHJcbn1cclxuXHJcbi5kcm9wZG93bi1zYXZlLWZvcm0ge1xyXG4gIHdpZHRoOiAyNzVweCAhaW1wb3J0YW50O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMyNjM0NDg7XHJcbn0iXX0= */\"","import { Component, OnInit, Output, EventEmitter } from '@angular/core';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { ConfigService } from './services/config.service';\r\nimport { Validators } from '@angular/forms';\r\ndeclare var $: any;\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'build-form',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css']\r\n})\r\nexport class AppComponent implements OnInit {\r\n title = 'Add/Edit a Form';\r\n incrementer = 0;\r\n\r\n config: any[] = [];\r\n previewConfig: any[] = [];\r\n formFieldsToAdd = [];\r\n\r\n defaultFormField = 'text';\r\n\r\n newFormFields = { name: 'MyNewForm', fields: [] };\r\n formName: string = '';\r\n formDescription: string = '';\r\n\r\n @Output()\r\n save: EventEmitter = new EventEmitter();\r\n\r\n @Output()\r\n formSubmit: EventEmitter = new EventEmitter();\r\n\r\n constructor(private configService: ConfigService, private http: HttpClient) {\r\n this.formFieldsToAdd = this.configService.formFieldsToAdd;\r\n\r\n this.configService\r\n .getEditFormFields()\r\n .subscribe(\r\n form => {\r\n const my_current_form = JSON.parse(form.toString());\r\n\r\n if (my_current_form.formJson != null) {\r\n //my_current_form.formJsonString = my_current_form.formJsonString.replace(/"/g, '\"');\r\n my_current_form.formJson = JSON.parse(my_current_form.formJsonString);\r\n this.configService.editConfig([...my_current_form.formJson]);\r\n this.formName = my_current_form.name || '';\r\n this.formDescription = my_current_form.description || '';\r\n this.incrementer = my_current_form.incrementer || (my_current_form.fields ? my_current_form.fields.length : 1);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.configService.editConfig([]);\r\n }\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.configService.cast.subscribe(config => {\r\n this.config = [...config]\r\n this.previewConfig = [...config]\r\n this.previewConfig = this.previewConfig.map(conf => {\r\n let previewConf = { ...conf }\r\n if (conf.name.indexOf('-preview') == -1) previewConf.name = previewConf.name + '-preview';\r\n previewConf[\"controlType\"] = \"preview\";\r\n return previewConf;\r\n })\r\n });\r\n }\r\n\r\n formSubmitted(formFieldValues) {\r\n const submittedValues = { ...formFieldValues };\r\n\r\n // Replace truthy checkbox values with corresponding text value\r\n const checkboxValues = this.configService.allCheckboxValues;\r\n Object.keys(checkboxValues).map(key => {\r\n submittedValues[key] = checkboxValues[key];\r\n });\r\n\r\n // Replace file name with actual File content for all file upload fields\r\n const fileUploads = this.configService.allUploadedFiles;\r\n Object.keys(fileUploads).map(key => {\r\n submittedValues[key] = fileUploads[key];\r\n });\r\n\r\n const userForm = {\r\n 'name': this.formName,\r\n 'description': this.formDescription,\r\n 'values': submittedValues\r\n };\r\n this.formSubmit.emit(userForm);\r\n }\r\n\r\n saveForm(myFormName) {\r\n let newFormFields = this.config;\r\n //05/08/2021 when we save the form from the designer view, we are removing the control type\r\n //There are two controlTypes (design, preview). This is used for not showing the label for infoMessage and Terms checkboxes\r\n //we do not need to store the controlType and also this makes it backwards compatible\r\n newFormFields = newFormFields.map(this.removeValidator).map(this.removeControlType);\r\n\r\n const myForm = {\r\n 'name': myFormName,\r\n 'description': '',\r\n 'incrementer': this.incrementer,\r\n 'formType': 1,\r\n \"formId\": $(\"#hdnFormId\").val(),\r\n 'formJson': JSON.stringify(newFormFields)\r\n };\r\n\r\n this.http.post($(\"#hdnSaveUrl\").val(), myForm).subscribe(resp => {\r\n window.location.href = $(\"#hdnFormListUrl\").val();\r\n });\r\n }\r\n\r\n removeValidator(fieldConfig) {\r\n delete fieldConfig.validators;\r\n return fieldConfig;\r\n }\r\n\r\n removeControlType(fieldConfig) {\r\n delete fieldConfig.controlType;\r\n return fieldConfig;\r\n }\r\n\r\n // function to handle addition of a new form field on clicking the button\r\n // based on the field required.\r\n addField(inputType: string) {\r\n this.incrementer = this.incrementer + 1;\r\n const configField = { ...this.configService.newConfigFields[inputType] };\r\n configField['name'] = configField['name'] + this.incrementer;\r\n configField['position'] = this.config.length + 1;\r\n this.configService.editConfig([...this.config, configField]);\r\n }\r\n\r\n // handles removing all fields by sending in an empty array as new fields\r\n removeAllFields() {\r\n this.configService.editConfig([]);\r\n }\r\n}\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule, Injector } from '@angular/core';\r\nimport { createCustomElement } from '@angular/elements';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { HttpClientModule } from '@angular/common/http';\r\n\r\nimport { AppComponent } from './app.component';\r\nimport { RenderFormComponent } from './render-form.component';\r\nimport { DynamicFormModule } from './dynamic-form/dynamic-form.module';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { ConfigService } from './services/config.service';\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n RenderFormComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n DynamicFormModule,\r\n DragDropModule,\r\n NgbModule,\r\n FormsModule,\r\n HttpClientModule\r\n ],\r\n providers: [ConfigService],\r\n // bootstrap: [AppComponent],\r\n entryComponents: [\r\n AppComponent,\r\n RenderFormComponent\r\n ]\r\n})\r\nexport class AppModule {\r\n constructor(injector: Injector) {\r\n // Using Angular elements - to create a custom element 'build-form' in the DOM\r\n const el = createCustomElement(AppComponent, { injector });\r\n customElements.define('build-form', el);\r\n\r\n // Using Angular elements - to create a custom element 'render-form' in the DOM\r\n const e2 = createCustomElement(RenderFormComponent, { injector });\r\n customElements.define('render-form', e2);\r\n }\r\n\r\n ngDoBootstrap() {\r\n }\r\n}\r\n","export class AppConstants {\r\n\r\n // When a new field is added, we identify the field's properties using this object\r\n // This can be considered more like a template for each form field\r\n public static NEW_CONFIG_FIELDS = {\r\n text: {\r\n type: 'input',\r\n input_type: 'text',\r\n label: 'Caption',\r\n name: 'inputTextField',\r\n placeholder: 'Enter a value',\r\n editable: true,\r\n eeo: false,\r\n validatorInfo: {\r\n required: false,\r\n email: false\r\n }\r\n },\r\n file: {\r\n type: 'file',\r\n label: 'Select file',\r\n placeholder: 'Select file',\r\n name: 'inputFileField',\r\n editable: true,\r\n eeo: false,\r\n validatorInfo: {\r\n required: false,\r\n email: false\r\n }\r\n },\r\n select: {\r\n type: 'select',\r\n label: 'Select Options',\r\n name: 'selectField',\r\n options: ['Option 1', 'Option 2'],\r\n placeholder: 'Select an option',\r\n convertToTag: false,\r\n editable: true,\r\n eeo: false,\r\n validatorInfo: {\r\n required: false,\r\n email: false\r\n }\r\n },\r\n textarea: {\r\n type: 'textarea',\r\n label: 'Paragraph Caption',\r\n name: 'inputTextarea',\r\n placeholder: 'Enter a paragraph',\r\n editable: true,\r\n eeo: false,\r\n validatorInfo: {\r\n required: false,\r\n email: false\r\n }\r\n },\r\n password: {\r\n type: 'input',\r\n input_type: 'password',\r\n label: 'Password',\r\n name: 'inputPasswordField',\r\n placeholder: 'Enter password',\r\n editable: true,\r\n eeo: false,\r\n validatorInfo: {\r\n required: false,\r\n email: false\r\n }\r\n },\r\n date: {\r\n type: 'input',\r\n input_type: 'date',\r\n label: 'Date',\r\n name: 'inputDateField',\r\n editable: true,\r\n eeo: false,\r\n validatorInfo: {\r\n required: false,\r\n email: false\r\n }\r\n },\r\n url: {\r\n type: 'input',\r\n input_type: 'url',\r\n label: 'URL',\r\n name: 'inputUrlField',\r\n placeholder: 'Enter URL',\r\n editable: true,\r\n eeo: false,\r\n validatorInfo: {\r\n required: false,\r\n email: false\r\n }\r\n },\r\n tel: {\r\n type: 'input',\r\n input_type: 'tel',\r\n label: 'Phone',\r\n name: 'inputPhoneField',\r\n placeholder: 'Enter Phone Number',\r\n editable: true,\r\n eeo: false,\r\n validatorInfo: {\r\n required: false,\r\n email: false\r\n }\r\n },\r\n email: {\r\n type: 'input',\r\n input_type: 'email',\r\n label: 'Email',\r\n name: 'inputEmailField',\r\n placeholder: 'Enter email address',\r\n editable: true,\r\n eeo: false,\r\n validatorInfo: {\r\n required: false,\r\n email: true\r\n }\r\n },\r\n number: {\r\n type: 'input',\r\n input_type: 'number',\r\n label: 'Number',\r\n name: 'inputNumberField',\r\n placeholder: 'Enter Number',\r\n editable: true,\r\n eeo: false,\r\n validatorInfo: {\r\n required: false,\r\n email: false\r\n }\r\n },\r\n checkbox: {\r\n type: 'checkbox',\r\n label: 'Select Multiple Options',\r\n name: 'inputCheckboxField',\r\n choices: ['Option 1', 'Option 2'],\r\n editable: true,\r\n convertToTag: false,\r\n eeo: false,\r\n validatorInfo: {\r\n required: false,\r\n email: false\r\n }\r\n },\r\n radio: {\r\n type: 'radio',\r\n label: 'Select Option',\r\n name: 'inputRadioField',\r\n options: ['Yes', 'No'],\r\n editable: true,\r\n convertToTag: false,\r\n eeo: false,\r\n validatorInfo: {\r\n required: false,\r\n email: false\r\n }\r\n },\r\n terms: {\r\n type: 'terms',\r\n label: 'Enter your detailed terms for this checkbox',\r\n name: 'inputTermsField',\r\n editable: true,\r\n labelMaxCharacters: 10000,\r\n labelMaxRows: 12,\r\n eeo: false,\r\n validatorInfo: {\r\n required: true,\r\n email: false\r\n }\r\n },\r\n infoMessage: {\r\n type: 'infoMessage',\r\n label: 'This is an informational message with HTML support',\r\n labelMaxCharacters: 10000,\r\n labelMaxRows: 12,\r\n name: 'displayInfoMessage',\r\n eeo: false,\r\n validatorInfo: {\r\n required: false,\r\n email: false\r\n },\r\n editable: true\r\n },\r\n };\r\n}\r\n","import { Directive, Input, ViewContainerRef, ComponentFactoryResolver, OnInit, AfterViewInit } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { FormTextareaComponent } from '../form-textarea/form-textarea.component';\r\nimport { FormInputComponent } from '../form-input/form-input.component';\r\nimport { FormSelectComponent } from '../form-select/form-select.component';\r\nimport { FormCheckboxComponent } from '../form-checkbox/form-checkbox.component';\r\nimport { FormRadioComponent } from '../form-radio/form-radio.component';\r\nimport { FormFileComponent } from '../form-file/form-file.component';\r\nimport { FormTermsComponent } from '../form-terms/form-terms.component';\r\nimport { FormInfoMessageComponent } from '../form-info-message/form-info-message.component';\r\n\r\nconst components = {\r\n textarea: FormTextareaComponent,\r\n input: FormInputComponent,\r\n select: FormSelectComponent,\r\n checkbox: FormCheckboxComponent,\r\n radio: FormRadioComponent,\r\n file: FormFileComponent,\r\n terms: FormTermsComponent,\r\n infoMessage: FormInfoMessageComponent\r\n};\r\n\r\n@Directive({\r\n // tslint:disable-next-line:directive-selector\r\n selector: '[dynamicField]',\r\n})\r\nexport class DynamicFieldDirective implements OnInit {\r\n @Input() config;\r\n\r\n @Input() group: FormGroup;\r\n\r\n component;\r\n\r\n constructor(\r\n private resolver: ComponentFactoryResolver,\r\n private container: ViewContainerRef\r\n ) {}\r\n\r\n ngOnInit() {\r\n const component = components[this.config.type];\r\n const factory = this.resolver.resolveComponentFactory(component);\r\n this.component = this.container.createComponent(factory);\r\n this.component.instance.config = this.config;\r\n this.component.instance.group = this.group;\r\n }\r\n}\r\n","export default \".required {\\r\\n color: red;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInd3d3Jvb3QvYXBwL2R5bmFtaWMtZm9ybS9jb250YWluZXJzL2R5bmFtaWMtZm9ybS9keW5hbWljLWZvcm0uY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtJQUNJLFVBQVU7QUFDZCIsImZpbGUiOiJ3d3dyb290L2FwcC9keW5hbWljLWZvcm0vY29udGFpbmVycy9keW5hbWljLWZvcm0vZHluYW1pYy1mb3JtLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIucmVxdWlyZWQge1xyXG4gICAgY29sb3I6IHJlZDtcclxufSJdfQ== */\"","import { Component, Input, OnChanges, OnInit } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { ConfigService } from '../../../services/config.service';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'dynamic-form',\r\n templateUrl: './dynamic-form.component.html',\r\n styleUrls: ['./dynamic-form.component.css']\r\n})\r\nexport class DynamicFormComponent implements OnChanges, OnInit {\r\n @Input()\r\n config: any[] = [];\r\n\r\n form: FormGroup;\r\n canViewEditForm = false;\r\n public isCollapsed = true;\r\n fieldConfig: any = {};\r\n\r\n constructor(private fb: FormBuilder, private configService: ConfigService) { }\r\n\r\n ngOnInit() {\r\n // this.configService.cast.subscribe(config => this.config = [...config]);\r\n }\r\n\r\n ngOnChanges() {\r\n this.config = this.configWithDisplayName();\r\n this.form = this.createGroup();\r\n }\r\n\r\n configWithDisplayName() {\r\n return this.config.map(fieldConfig => {\r\n let field = this.configService.formFieldsToAdd.find(field => {\r\n return field.value === (fieldConfig.input_type || fieldConfig.type)\r\n });\r\n fieldConfig['displayName'] = field ? field.name : '';\r\n return fieldConfig;\r\n });\r\n }\r\n\r\n createGroup() {\r\n const group = this.fb.group({});\r\n this.config.filter(this.notCheckBox).forEach(control => group.addControl(control.name, this.fb.control('')));\r\n this.config.filter(this.isCheckBox).forEach(control => group.addControl(control.name, this.buildCheckBoxOptions(control)));\r\n return group;\r\n }\r\n\r\n notCheckBox(field) {\r\n return field.type !== 'checkbox';\r\n }\r\n\r\n isCheckBox(field) {\r\n return field.type === 'checkbox';\r\n }\r\n\r\n buildCheckBoxOptions(fieldControl) {\r\n const arr = fieldControl.choices.map(choice => {\r\n return this.fb.control(false);\r\n });\r\n return this.fb.array(arr);\r\n }\r\n\r\n drop(event: CdkDragDrop) {\r\n this.closeEditForm();\r\n moveItemInArray(this.config, event.previousIndex, event.currentIndex);\r\n for (let i = 0; i < this.config.length; i++) {\r\n this.config[i].position = i + 1;\r\n }\r\n this.configService.editConfig(this.config);\r\n }\r\n\r\n deleteFormElement(index) {\r\n this.closeEditForm();\r\n this.config.splice(index, 1);\r\n this.configService.editConfig([...this.config]);\r\n }\r\n\r\n viewEditForm(index) {\r\n console.log(this.config);\r\n this.canViewEditForm = true;\r\n this.fieldConfig = this.config[index];\r\n $('#editFormModal').appendTo('body').modal('show');\r\n }\r\n\r\n closeEditForm() {\r\n $('#editFormModal').modal('hide');\r\n this.canViewEditForm = false;\r\n }\r\n\r\n\r\n saveChanges(fieldValues) {\r\n this.closeEditForm();\r\n const oldValues = { ...fieldValues.oldValues };\r\n const newValues = { ...fieldValues.newValues };\r\n const editedValues = {\r\n type: oldValues.type,\r\n editable: oldValues.editable,\r\n draggable: oldValues.draggable,\r\n position: oldValues.position,\r\n label: newValues.fieldLabel,\r\n name: newValues.fieldIdentifier,\r\n placeholder: newValues.fieldPlaceholder,\r\n validatorInfo: {\r\n required: newValues.fieldRequired,\r\n email: oldValues.validatorInfo.email\r\n },\r\n labelMaxCharacters: oldValues.labelMaxCharacters,\r\n labelMaxRows: oldValues.labelMaxRows\r\n };\r\n // if the field is made required after editing, then add the \"required\" validator to the field\r\n if (newValues.fieldRequired) {\r\n if (oldValues.input === 'input' && oldValues.input_type === 'email') {\r\n editedValues['validators'] = [...oldValues['validators'], Validators.required];\r\n } else {\r\n editedValues['validators'] = [Validators.required];\r\n }\r\n }\r\n // if it is a select/checkbox/radio field, then add the options to the field\r\n if (newValues.fieldOptions.length > 0 && (oldValues.type === 'select' || oldValues.type === 'radio')) {\r\n editedValues['options'] = [...newValues.fieldOptions];\r\n } else if (newValues.fieldOptions.length > 0 && oldValues.type === 'checkbox') {\r\n editedValues['choices'] = [...newValues.fieldOptions];\r\n }\r\n\r\n if (newValues.convertToTag && (oldValues.type === 'select' || oldValues.type === 'radio' || oldValues.type === 'checkbox')) {\r\n editedValues['convertToTag'] = newValues.convertToTag;\r\n }\r\n\r\n if (newValues.eeo) {\r\n editedValues['eeo'] = newValues.eeo;\r\n }\r\n\r\n // If the choices or options are 0, then dont save changes.\r\n if (newValues.fieldOptions.length <= 0 && (oldValues.type === 'select' || oldValues.type === 'radio')) {\r\n editedValues['options'] = [...oldValues.options];\r\n } else if (newValues.fieldOptions.length <= 0 && oldValues.type === 'checkbox') {\r\n editedValues['choices'] = [...oldValues.choices];\r\n }\r\n // if it is an input field, then decide the type of input. Ex: text, date, password, etc.\r\n if (oldValues.input_type) {\r\n editedValues['input_type'] = oldValues.input_type;\r\n }\r\n this.config[oldValues.position - 1] = { ...editedValues };\r\n // console.log('New field values: ', editedValues);\r\n // console.log('Old field values: ', oldValues);\r\n this.configService.editConfig([...this.config]);\r\n console.log(this.config);\r\n }\r\n\r\n getControlType(field) {\r\n field[\"controlType\"] = \"design\";\r\n\r\n //Added a new property convertToTag, supporting older forms\r\n //if (field.type === 'select' || field.type === 'radio' || field.type === 'checkbox') {\r\n // field['convertToTag'] = field.convertToTag ? field.convertToTag : false;\r\n //}\r\n return field;\r\n }\r\n\r\n}\r\n","export default \".deleteIcon:hover {\\r\\n /* position: relative; */\\r\\n transform: scale(1.20) !important;\\r\\n cursor: pointer;\\r\\n}\\r\\n\\r\\n.termsNote {\\r\\n white-space: pre-line;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInd3d3Jvb3QvYXBwL2R5bmFtaWMtZm9ybS9jb250YWluZXJzL2VkaXQtZm9ybS1maWVsZHMvZWRpdC1mb3JtLWZpZWxkcy5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0ksd0JBQXdCO0lBQ3hCLGlDQUFpQztJQUNqQyxlQUFlO0FBQ25COztBQUVBO0lBQ0kscUJBQXFCO0FBQ3pCIiwiZmlsZSI6Ind3d3Jvb3QvYXBwL2R5bmFtaWMtZm9ybS9jb250YWluZXJzL2VkaXQtZm9ybS1maWVsZHMvZWRpdC1mb3JtLWZpZWxkcy5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmRlbGV0ZUljb246aG92ZXIge1xyXG4gICAgLyogcG9zaXRpb246IHJlbGF0aXZlOyAqL1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIwKSAhaW1wb3J0YW50O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4udGVybXNOb3RlIHtcclxuICAgIHdoaXRlLXNwYWNlOiBwcmUtbGluZTtcclxufSJdfQ== */\"","import { Component, Input, OnChanges, Output, EventEmitter } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators, FormArray } from '@angular/forms';\r\nimport { ConfigService } from '../../../services/config.service';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'edit-form-fields',\r\n templateUrl: './edit-form-fields.component.html',\r\n styleUrls: ['./edit-form-fields.component.css']\r\n})\r\nexport class EditFormFieldsComponent implements OnChanges {\r\n\r\n @Input()\r\n fieldConfig: any = {};\r\n\r\n @Input()\r\n config: any[] = [];\r\n formFields = [];\r\n\r\n EditForm: FormGroup;\r\n\r\n options = [];\r\n\r\n termsNote = 'You can also add a link to an external page in the label field using the HTML anchor tag. \\n' +\r\n 'Ex: Agree Terms & Conditions';\r\n\r\n @Output()\r\n saveChangesToFormField: EventEmitter = new EventEmitter();\r\n\r\n constructor(private fb: FormBuilder, private configService: ConfigService) {\r\n }\r\n\r\n get displayName() {\r\n let field = this.configService.formFieldsToAdd.find(field => {\r\n return field.value === (this.fieldConfig.input_type || this.fieldConfig.type)\r\n });\r\n return field ? field.name : '';\r\n }\r\n\r\n ngOnChanges() {\r\n if (this.fieldConfig.type === 'select' || this.fieldConfig.type === 'radio') {\r\n this.options = this.fieldConfig.options;\r\n }\r\n\r\n this.fieldConfig['displayName'] = this.displayName;\r\n\r\n if (this.fieldConfig.type === 'checkbox') {\r\n this.options = this.fieldConfig.choices;\r\n }\r\n\r\n this.EditForm = this.fb.group({\r\n fieldLabel: [this.fieldConfig.label],\r\n convertToTag: [this.fieldConfig.convertToTag],\r\n eeo: [this.fieldConfig.eeo],\r\n fieldPlaceholder: [this.fieldConfig.placeholder],\r\n fieldIdentifier: [this.fieldConfig.name, Validators.required],\r\n fieldOptions: this.fb.array(this.options),\r\n fieldRequired: [this.fieldConfig.validatorInfo.required]\r\n });\r\n }\r\n\r\n get optionsForm() {\r\n return this.EditForm.get('fieldOptions') as FormArray;\r\n }\r\n\r\n addOption() {\r\n this.optionsForm.push(this.fb.control(''));\r\n }\r\n\r\n deleteOption(i) {\r\n this.optionsForm.removeAt(i);\r\n }\r\n\r\n validateField(fieldID) {\r\n const f = this.EditForm.controls;\r\n if (f[fieldID].invalid && (f[fieldID].dirty || f[fieldID].touched)) {\r\n if (f[fieldID].errors.required) {\r\n $('#' + fieldID).addClass('invalid-error');\r\n return true;\r\n }\r\n } else {\r\n $('#' + fieldID).removeClass('invalid-error');\r\n return false;\r\n }\r\n }\r\n\r\n shouldShowPlaceHolder(fieldType: string): boolean {\r\n return fieldType !== 'terms' && fieldType !== 'infoMessage';\r\n }\r\n\r\n getMaxLabelLength(): Number {\r\n return this.fieldConfig.labelMaxCharacters || 255;\r\n }\r\n\r\n getMaxLabelRows(): Number {\r\n return this.fieldConfig.labelMaxRows || 3;\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJ3d3dyb290L2FwcC9keW5hbWljLWZvcm0vY29udGFpbmVycy9mb3JtLWNoZWNrYm94L2Zvcm0tY2hlY2tib3guY29tcG9uZW50LmNzcyJ9 */\"","import { Component } from '@angular/core';\nimport { FormGroup, FormArray } from '@angular/forms';\nimport { ConfigService } from '../../../services/config.service';\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'form-checkbox',\n templateUrl: './form-checkbox.component.html',\n styleUrls: ['./form-checkbox.component.css']\n})\nexport class FormCheckboxComponent {\n config;\n group: FormGroup;\n\n constructor(private configService: ConfigService) { }\n\n get choicesArray() {\n return this.group.get(this.config.name);\n }\n\n getSelectedCheckboxValues() {\n this.configService.getSelectedCheckboxValues(this.group, this.config);\n }\n\n}\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJ3d3dyb290L2FwcC9keW5hbWljLWZvcm0vY29udGFpbmVycy9mb3JtLWZpbGUvZm9ybS1maWxlLmNvbXBvbmVudC5jc3MifQ== */\"","import { Component } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { ConfigService } from 'wwwroot/app/services/config.service';\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'form-file',\n templateUrl: './form-file.component.html',\n styleUrls: ['./form-file.component.css']\n})\nexport class FormFileComponent {\n config;\n group: FormGroup;\n\n private file: File | null = null;\n\n constructor(private configService: ConfigService) { }\n\n onFileChange(event) {\n const file = event && event.target.files[0];\n this.file = file;\n this.configService.fileUpload(file, this.config);\n }\n\n}\n","export default \"/* Bootstrap callout style */\\r\\n.bd-callout {\\r\\n padding: 1.25rem;\\r\\n margin-top: 1.25rem;\\r\\n margin-bottom: 1.25rem;\\r\\n border: 1px solid #eee;\\r\\n border-left-width: .25rem;\\r\\n border-radius: .25rem\\r\\n}\\r\\n.bd-callout p:last-child {\\r\\n margin-bottom: 0\\r\\n}\\r\\n.bd-callout + .bd-callout {\\r\\n margin-top: -.25rem\\r\\n}\\r\\n.bd-callout-default {\\r\\n /* border-left-color: #6c757d */\\r\\n}\\r\\n/*.bd-callout-default h4 {\\r\\n color: #6c757d\\r\\n}*/\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInd3d3Jvb3QvYXBwL2R5bmFtaWMtZm9ybS9jb250YWluZXJzL2Zvcm0taW5mby1tZXNzYWdlL2Zvcm0taW5mby1tZXNzYWdlLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNEJBQTRCO0FBQzVCO0lBQ0ksZ0JBQWdCO0lBQ2hCLG1CQUFtQjtJQUNuQixzQkFBc0I7SUFDdEIsc0JBQXNCO0lBQ3RCLHlCQUF5QjtJQUN6QjtBQUNKO0FBRUE7SUFDSTtBQUNKO0FBR0E7SUFDSTtBQUNKO0FBQ0E7SUFDSSwrQkFBK0I7QUFDbkM7QUFFQTs7RUFFRSIsImZpbGUiOiJ3d3dyb290L2FwcC9keW5hbWljLWZvcm0vY29udGFpbmVycy9mb3JtLWluZm8tbWVzc2FnZS9mb3JtLWluZm8tbWVzc2FnZS5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogQm9vdHN0cmFwIGNhbGxvdXQgc3R5bGUgKi9cclxuLmJkLWNhbGxvdXQge1xyXG4gICAgcGFkZGluZzogMS4yNXJlbTtcclxuICAgIG1hcmdpbi10b3A6IDEuMjVyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VlZTtcclxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAuMjVyZW07XHJcbiAgICBib3JkZXItcmFkaXVzOiAuMjVyZW1cclxufVxyXG5cclxuLmJkLWNhbGxvdXQgcDpsYXN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDBcclxufVxyXG5cclxuXHJcbi5iZC1jYWxsb3V0ICsgLmJkLWNhbGxvdXQge1xyXG4gICAgbWFyZ2luLXRvcDogLS4yNXJlbVxyXG59XHJcbi5iZC1jYWxsb3V0LWRlZmF1bHQge1xyXG4gICAgLyogYm9yZGVyLWxlZnQtY29sb3I6ICM2Yzc1N2QgKi9cclxufVxyXG5cclxuLyouYmQtY2FsbG91dC1kZWZhdWx0IGg0IHtcclxuICAgIGNvbG9yOiAjNmM3NTdkXHJcbn0qLyJdfQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'form-info-message',\r\n templateUrl: './form-info-message.component.html',\r\n styleUrls: ['./form-info-message.component.css']\r\n})\r\nexport class FormInfoMessageComponent implements OnInit {\r\n config;\r\n group: FormGroup;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJ3d3dyb290L2FwcC9keW5hbWljLWZvcm0vY29udGFpbmVycy9mb3JtLWlucHV0L2Zvcm0taW5wdXQuY29tcG9uZW50LmNzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { ConfigService } from '../../../services/config.service';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'form-input',\r\n templateUrl: './form-input.component.html',\r\n styleUrls: ['./form-input.component.css']\r\n})\r\nexport class FormInputComponent implements OnInit {\r\n config;\r\n group: FormGroup;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \".make-scrollable {\\r\\n max-height: calc(100vh - 170px);\\r\\n overflow-y:auto;\\r\\n overflow-x:hidden;\\r\\n}\\r\\n\\r\\n/* For classes that are created dynamically, we add :host::ng-deep before the class name like below */\\r\\n\\r\\n/* When the form field is required, add a red star before the label */\\r\\n\\r\\n:host::ng-deep .control-label.required:before {\\r\\n content:\\\"* \\\";\\r\\n color:red;\\r\\n}\\r\\n\\r\\n/* Change form input field border to red if validation fails */\\r\\n\\r\\n:host::ng-deep .invalid-error{\\r\\n border: 1px solid red;\\r\\n}\\r\\n\\r\\n/* Display error message in red if validation fails */\\r\\n\\r\\n.err-message {\\r\\n color: red;\\r\\n margin-left: 1% !important;\\r\\n margin-bottom: 1% !important;\\r\\n /*margin-top: -0.8rem !important;*/\\r\\n}\\r\\n\\r\\n/* Change checkbox border to red if it is terms check */\\r\\n\\r\\n:host::ng-deep .custom-checkbox label.invalid-terms-error::before {\\r\\n border: 1px solid red;\\r\\n}\\r\\n\\r\\n/*form {\\r\\n margin:2% !important;\\r\\n}*/\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInd3d3Jvb3QvYXBwL2R5bmFtaWMtZm9ybS9jb250YWluZXJzL2Zvcm0tcHJldmlldy9mb3JtLXByZXZpZXcuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtJQUNJLCtCQUErQjtJQUMvQixlQUFlO0lBQ2YsaUJBQWlCO0FBQ3JCOztBQUVBLHFHQUFxRzs7QUFFckcscUVBQXFFOztBQUNyRTtJQUNJLFlBQVk7SUFDWixTQUFTO0FBQ2I7O0FBRUEsOERBQThEOztBQUM5RDtJQUNJLHFCQUFxQjtBQUN6Qjs7QUFFQSxxREFBcUQ7O0FBQ3JEO0lBQ0ksVUFBVTtJQUNWLDBCQUEwQjtJQUMxQiw0QkFBNEI7SUFDNUIsa0NBQWtDO0FBQ3RDOztBQUVBLHVEQUF1RDs7QUFDdkQ7SUFDSSxxQkFBcUI7QUFDekI7O0FBRUE7O0VBRUUiLCJmaWxlIjoid3d3cm9vdC9hcHAvZHluYW1pYy1mb3JtL2NvbnRhaW5lcnMvZm9ybS1wcmV2aWV3L2Zvcm0tcHJldmlldy5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLm1ha2Utc2Nyb2xsYWJsZSB7XHJcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTcwcHgpO1xyXG4gICAgb3ZlcmZsb3cteTphdXRvO1xyXG4gICAgb3ZlcmZsb3cteDpoaWRkZW47XHJcbn1cclxuXHJcbi8qIEZvciBjbGFzc2VzIHRoYXQgYXJlIGNyZWF0ZWQgZHluYW1pY2FsbHksIHdlIGFkZCA6aG9zdDo6bmctZGVlcCBiZWZvcmUgdGhlIGNsYXNzIG5hbWUgbGlrZSBiZWxvdyAqL1xyXG5cclxuLyogV2hlbiB0aGUgZm9ybSBmaWVsZCBpcyByZXF1aXJlZCwgYWRkIGEgcmVkIHN0YXIgYmVmb3JlIHRoZSBsYWJlbCAqL1xyXG46aG9zdDo6bmctZGVlcCAuY29udHJvbC1sYWJlbC5yZXF1aXJlZDpiZWZvcmUge1xyXG4gICAgY29udGVudDpcIiogXCI7XHJcbiAgICBjb2xvcjpyZWQ7XHJcbn1cclxuXHJcbi8qIENoYW5nZSBmb3JtIGlucHV0IGZpZWxkIGJvcmRlciB0byByZWQgaWYgdmFsaWRhdGlvbiBmYWlscyAqL1xyXG46aG9zdDo6bmctZGVlcCAuaW52YWxpZC1lcnJvcntcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJlZDtcclxufVxyXG5cclxuLyogRGlzcGxheSBlcnJvciBtZXNzYWdlIGluIHJlZCBpZiB2YWxpZGF0aW9uIGZhaWxzICovXHJcbi5lcnItbWVzc2FnZSB7XHJcbiAgICBjb2xvcjogcmVkO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDElICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxJSAhaW1wb3J0YW50O1xyXG4gICAgLyptYXJnaW4tdG9wOiAtMC44cmVtICFpbXBvcnRhbnQ7Ki9cclxufVxyXG5cclxuLyogQ2hhbmdlIGNoZWNrYm94IGJvcmRlciB0byByZWQgaWYgaXQgaXMgdGVybXMgY2hlY2sgKi9cclxuOmhvc3Q6Om5nLWRlZXAgLmN1c3RvbS1jaGVja2JveCBsYWJlbC5pbnZhbGlkLXRlcm1zLWVycm9yOjpiZWZvcmUge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmVkO1xyXG59XHJcblxyXG4vKmZvcm0ge1xyXG4gICAgbWFyZ2luOjIlICFpbXBvcnRhbnQ7XHJcbn0qLyJdfQ== */\"","import { Component, Input, OnChanges, Output, EventEmitter } from '@angular/core';\r\nimport { ConfigService } from '../../../services/config.service';\r\nimport { FormGroup, FormBuilder } from '@angular/forms';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'form-preview',\r\n templateUrl: './form-preview.component.html',\r\n styleUrls: ['./form-preview.component.css']\r\n})\r\nexport class FormPreviewComponent implements OnChanges {\r\n @Input()\r\n config: any[] = [];\r\n\r\n @Output()\r\n submitted: EventEmitter = new EventEmitter();\r\n\r\n fieldConfig: any = {};\r\n form: FormGroup;\r\n errorMessage = 'Please provide a value!';\r\n submitButtonClicked = false;\r\n loading = false;\r\n\r\n constructor(private fb: FormBuilder, private configService: ConfigService) { }\r\n\r\n // every time the form fields are modified, the form group is recreated.\r\n ngOnChanges() {\r\n this.form = this.createGroup();\r\n }\r\n\r\n // function to build the instance of the form (Reactive forms), in simple words, it is\r\n // much like the syntax of the form and is called every time the form fields are modified.\r\n createGroup() {\r\n const group = this.fb.group({});\r\n this.config.filter(this.notCheckBox).forEach(control => group.addControl(control.name, this.fb.control('', control.validators)));\r\n this.config.filter(this.isCheckBox).forEach(control => group.addControl(control.name, this.buildCheckBoxOptions(control)));\r\n return group;\r\n }\r\n\r\n notCheckBox(field) {\r\n return field.type !== 'checkbox';\r\n }\r\n\r\n isCheckBox(field) {\r\n return field.type === 'checkbox';\r\n }\r\n\r\n isTermsCheckbox(field) {\r\n return field.type === 'terms';\r\n }\r\n\r\n // Function to build a formarray for building a multi option checkbox\r\n buildCheckBoxOptions(fieldControl) {\r\n const arr = fieldControl.choices.map(choice => {\r\n return this.fb.control(choice.checked);\r\n });\r\n return this.fb.array(arr, fieldControl.validators);\r\n }\r\n\r\n // Function to call the function to mark field as required (prepend '*')\r\n // and then validate field.\r\n // Example: If a value is not provided for a required field, it displays\r\n // a message like \"Value is required\" right below the field.\r\n validateField(fieldConfig) {\r\n if (fieldConfig.validatorInfo.required) {\r\n this.markRequiredField(fieldConfig.name);\r\n }\r\n this.errorMessage = this.configService.getErrorMessage(this.form, fieldConfig);\r\n return this.configService.validateField(fieldConfig, this.form, this.submitButtonClicked);\r\n }\r\n\r\n // adds a class \"required\" to mark a field as required by adding CSS\r\n // to include a '*' before the label of the respective field.\r\n markRequiredField(fieldID) {\r\n $(\"#\" + fieldID).parent('.dynamic-field').addClass('required');\r\n $(\"#\" + fieldID).attr('aria-invalid', \"true\");\r\n $(\"#\" + fieldID).attr('aria-required', \"true\");\r\n }\r\n\r\n // To check if form is valid. This generally works with a single check\r\n // on \"form.valid\" property, but since we have checkboxes, it would\r\n // work differently with checkboxes. Hence we would have to perform\r\n // a different check for multiple checkbox fields and this function\r\n // serves this purpose.\r\n isFormValid(form) {\r\n const formFieldValues = form.value;\r\n let checkboxValid = true;\r\n let termsCheckboxValid = true;\r\n\r\n // Checking if all checkbox fields are valid if they are required fields\r\n this.config.filter(this.isCheckBox).forEach(checkboxField => {\r\n if (checkboxField.validatorInfo.required) {\r\n if (!this.configService.isCheckBoxValid(formFieldValues[checkboxField.name])) {\r\n checkboxValid = false;\r\n }\r\n }\r\n });\r\n\r\n // Checking if all terms fields are valid if they are required fields\r\n this.config.filter(this.isTermsCheckbox).forEach(termsCheckboxField => {\r\n if (termsCheckboxField.validatorInfo.required) {\r\n if (!formFieldValues[termsCheckboxField.name]) {\r\n termsCheckboxValid = false;\r\n }\r\n }\r\n });\r\n\r\n // Checking if all other fields are valid if they are required fields\r\n if (form.valid) {\r\n return true && checkboxValid && termsCheckboxValid;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJ3d3dyb290L2FwcC9keW5hbWljLWZvcm0vY29udGFpbmVycy9mb3JtLXJhZGlvL2Zvcm0tcmFkaW8uY29tcG9uZW50LmNzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'form-radio',\n templateUrl: './form-radio.component.html',\n styleUrls: ['./form-radio.component.css']\n})\nexport class FormRadioComponent implements OnInit {\n config;\n group: FormGroup;\n\n getChoices(fieldName) {\n return this.group.get(fieldName);\n }\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","export default \"/* For classes that are created dynamically, we add :host::ng-deep before the class name like below */\\r\\n\\r\\n/* When the form field is required, add a red star before the label */\\r\\n\\r\\n:host::ng-deep .control-label.required:before {\\r\\n content:\\\"* \\\";\\r\\n color:red;\\r\\n}\\r\\n\\r\\n/* Change form input field border to red if validation fails */\\r\\n\\r\\n:host::ng-deep .invalid-error{\\r\\n border: 1px solid red;\\r\\n}\\r\\n\\r\\n/* Display error message in red if validation fails */\\r\\n\\r\\n.err-message {\\r\\n color: red;\\r\\n margin-left: 0.75% !important;\\r\\n margin-bottom: 1% !important;\\r\\n /*margin-top: -0.8rem !important;*/\\r\\n}\\r\\n\\r\\n/* Change checkbox border to red if it is terms check */\\r\\n\\r\\n:host::ng-deep .custom-checkbox label.invalid-terms-error::before {\\r\\n border: 1px solid red;\\r\\n}\\r\\n\\r\\n/*form {\\r\\n margin:2% !important;\\r\\n}*/\\r\\n\\r\\n.recaptcha-err-message { \\r\\n color: red;\\r\\n margin-left: 1% !important;\\r\\n margin-bottom: 1% !important;\\r\\n margin-top: 0.2rem !important; \\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInd3d3Jvb3QvYXBwL2R5bmFtaWMtZm9ybS9jb250YWluZXJzL2Zvcm0tcmVuZGVyL2Zvcm0tcmVuZGVyLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEscUdBQXFHOztBQUVyRyxxRUFBcUU7O0FBQ3JFO0lBQ0ksWUFBWTtJQUNaLFNBQVM7QUFDYjs7QUFFQSw4REFBOEQ7O0FBQzlEO0lBQ0kscUJBQXFCO0FBQ3pCOztBQUVBLHFEQUFxRDs7QUFDckQ7SUFDSSxVQUFVO0lBQ1YsNkJBQTZCO0lBQzdCLDRCQUE0QjtJQUM1QixrQ0FBa0M7QUFDdEM7O0FBRUEsdURBQXVEOztBQUN2RDtJQUNJLHFCQUFxQjtBQUN6Qjs7QUFFQTs7RUFFRTs7QUFFRjtJQUNJLFVBQVU7SUFDViwwQkFBMEI7SUFDMUIsNEJBQTRCO0lBQzVCLDZCQUE2QjtBQUNqQyIsImZpbGUiOiJ3d3dyb290L2FwcC9keW5hbWljLWZvcm0vY29udGFpbmVycy9mb3JtLXJlbmRlci9mb3JtLXJlbmRlci5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogRm9yIGNsYXNzZXMgdGhhdCBhcmUgY3JlYXRlZCBkeW5hbWljYWxseSwgd2UgYWRkIDpob3N0OjpuZy1kZWVwIGJlZm9yZSB0aGUgY2xhc3MgbmFtZSBsaWtlIGJlbG93ICovXHJcblxyXG4vKiBXaGVuIHRoZSBmb3JtIGZpZWxkIGlzIHJlcXVpcmVkLCBhZGQgYSByZWQgc3RhciBiZWZvcmUgdGhlIGxhYmVsICovXHJcbjpob3N0OjpuZy1kZWVwIC5jb250cm9sLWxhYmVsLnJlcXVpcmVkOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OlwiKiBcIjtcclxuICAgIGNvbG9yOnJlZDtcclxufVxyXG5cclxuLyogQ2hhbmdlIGZvcm0gaW5wdXQgZmllbGQgYm9yZGVyIHRvIHJlZCBpZiB2YWxpZGF0aW9uIGZhaWxzICovXHJcbjpob3N0OjpuZy1kZWVwIC5pbnZhbGlkLWVycm9ye1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmVkO1xyXG59XHJcblxyXG4vKiBEaXNwbGF5IGVycm9yIG1lc3NhZ2UgaW4gcmVkIGlmIHZhbGlkYXRpb24gZmFpbHMgKi9cclxuLmVyci1tZXNzYWdlIHtcclxuICAgIGNvbG9yOiByZWQ7XHJcbiAgICBtYXJnaW4tbGVmdDogMC43NSUgIWltcG9ydGFudDtcclxuICAgIG1hcmdpbi1ib3R0b206IDElICFpbXBvcnRhbnQ7XHJcbiAgICAvKm1hcmdpbi10b3A6IC0wLjhyZW0gIWltcG9ydGFudDsqL1xyXG59XHJcblxyXG4vKiBDaGFuZ2UgY2hlY2tib3ggYm9yZGVyIHRvIHJlZCBpZiBpdCBpcyB0ZXJtcyBjaGVjayAqL1xyXG46aG9zdDo6bmctZGVlcCAuY3VzdG9tLWNoZWNrYm94IGxhYmVsLmludmFsaWQtdGVybXMtZXJyb3I6OmJlZm9yZSB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZWQ7XHJcbn1cclxuXHJcbi8qZm9ybSB7XHJcbiAgICBtYXJnaW46MiUgIWltcG9ydGFudDtcclxufSovXHJcblxyXG4ucmVjYXB0Y2hhLWVyci1tZXNzYWdlIHsgXHJcbiAgICBjb2xvcjogcmVkO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDElICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxJSAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luLXRvcDogMC4ycmVtICFpbXBvcnRhbnQ7IFxyXG59Il19 */\"","import { Component, Input, OnChanges, Output, EventEmitter } from '@angular/core';\r\nimport { ConfigService } from '../../../services/config.service';\r\nimport { FormGroup, FormBuilder } from '@angular/forms';\r\nimport { ReCaptchaService } from '../../../services/recaptcha.service'; \r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'form-render',\r\n templateUrl: './form-render.component.html',\r\n styleUrls: ['./form-render.component.css']\r\n})\r\nexport class FormRenderComponent implements OnChanges {\r\n @Input()\r\n config: any[] = [];\r\n\r\n @Output()\r\n submitted: EventEmitter = new EventEmitter();\r\n\r\n fieldConfig: any = {};\r\n form: FormGroup;\r\n errorMessage = 'Please provide a value!';\r\n submitButtonClicked = false;\r\n loading = false;\r\n submitButtonText = 'Submit Application';\r\n reCaptchaSiteKey = this.recaptchaService.getSiteKey();\r\n reCaptchaMissingErrorMessage = this.recaptchaService.getCaptchaMissingErrorMessage();\r\n reCaptchaResponse: string = ''; \r\n submitFailedMessageDisplay: boolean = false;\r\n\r\n constructor(private fb: FormBuilder,\r\n private configService: ConfigService,\r\n private recaptchaService: ReCaptchaService) { }\r\n\r\n // every time the form fields are modified, the form group is recreated.\r\n ngOnChanges() {\r\n this.form = this.createGroup();\r\n }\r\n\r\n // function to build the instance of the form (Reactive forms), in simple words, it is\r\n // much like the syntax of the form and is called every time the form fields are modified.\r\n createGroup() {\r\n const group = this.fb.group({});\r\n //07/04/2021 - Added to set the control value if value exists\r\n //Also disable specific controls. This was implemented to set the candidate name, email, phone from the render-form.component.ts\r\n this.config.filter(x => x.value).forEach(control => group.addControl(control.name, this.fb.control(\r\n {\r\n value: control.value,\r\n disabled: control.disabled\r\n }, control.validators)));\r\n this.config.filter(this.notCheckBox).forEach(control => group.addControl(control.name, this.fb.control('', control.validators)));\r\n this.config.filter(this.isCheckBox).forEach(control => group.addControl(control.name, this.buildCheckBoxOptions(control)));\r\n\r\n this.recaptchaService.addRecaptchaToForm(group, this.fb); \r\n \r\n return group;\r\n }\r\n\r\n notCheckBox(field) {\r\n return field.type !== 'checkbox';\r\n }\r\n\r\n isCheckBox(field) {\r\n return field.type === 'checkbox';\r\n }\r\n\r\n isTermsCheckbox(field) {\r\n return field.type === 'terms';\r\n }\r\n\r\n // Function to build a formarray for building a multi option checkbox\r\n buildCheckBoxOptions(fieldControl) {\r\n const arr = fieldControl.choices.map(choice => {\r\n return this.fb.control(choice.checked);\r\n });\r\n return this.fb.array(arr, fieldControl.validators);\r\n }\r\n\r\n // Function to call the function to mark field as required (prepend '*')\r\n // and then validate field.\r\n // Example: If a value is not provided for a required field, it displays\r\n // a message like \"Value is required\" right below the field.\r\n validateField(fieldConfig) {\r\n if (fieldConfig.validatorInfo.required) {\r\n this.markRequiredField(fieldConfig.name);\r\n }\r\n this.errorMessage = this.configService.getErrorMessage(this.form, fieldConfig);\r\n //return this.configService.validateField(fieldConfig, this.form);\r\n return this.configService.validateField(fieldConfig, this.form, this.submitButtonClicked);\r\n }\r\n\r\n // adds a class \"required\" to mark a field as required by adding CSS\r\n // to include a '*' before the label of the respective field.\r\n markRequiredField(fieldID) {\r\n $('#' + fieldID).parent('.dynamic-field').addClass('required');\r\n }\r\n\r\n updateReCaptchaResponse(reCaptchaResponse: string) {\r\n this.reCaptchaResponse = reCaptchaResponse;\r\n }\r\n\r\n isReCaptchaInValid(): boolean {\r\n if (this.reCaptchaResponse) return false;\r\n return true;\r\n }\r\n\r\n // To check if form is valid. This generally works with a single check\r\n // on \"form.valid\" property, but since we have checkboxes, it would\r\n // work differently with checkboxes. Hence we would have to perform\r\n // a different check for multiple checkbox fields and this function\r\n // serves this purpose.\r\n isFormValid(form) {\r\n const formFieldValues = form.value;\r\n let checkboxValid = true;\r\n let termsCheckboxValid = true;\r\n\r\n // Checking if all checkbox fields are valid if they are required fields\r\n this.config.filter(this.isCheckBox).forEach(checkboxField => {\r\n if (checkboxField.validatorInfo.required) {\r\n if (!this.configService.isCheckBoxValid(formFieldValues[checkboxField.name])) {\r\n checkboxValid = false;\r\n }\r\n }\r\n });\r\n\r\n // Checking if all terms fields are valid if they are required fields\r\n this.config.filter(this.isTermsCheckbox).forEach(termsCheckboxField => {\r\n if (termsCheckboxField.validatorInfo.required) {\r\n if (!formFieldValues[termsCheckboxField.name]) {\r\n termsCheckboxValid = false;\r\n }\r\n }\r\n });\r\n\r\n // Checking if all other fields are valid if they are required fields\r\n if (form.valid) {\r\n return true && checkboxValid && termsCheckboxValid;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n validateAndSubmit(formData) {\r\n this.submitButtonClicked = true;\r\n this.submitFailedMessageDisplay = false;\r\n\r\n // stop here if form is invalid\r\n if (this.form.invalid || !this.configService.isAllUploadedFilesValid(this.config)) {\r\n return;\r\n }\r\n\r\n this.loading = true;\r\n this.submitButtonText = 'Submitting. Please wait..';\r\n \r\n this.submitted.emit(formData);\r\n }\r\n\r\n submitFailed() {\r\n this.loading = false;\r\n this.submitFailedMessageDisplay = true;\r\n this.submitButtonText = 'Submit Application';\r\n }\r\n\r\n submitFailedBlacklist() {\r\n this.loading = false;\r\n this.submitButtonText = 'Submit Application';\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJ3d3dyb290L2FwcC9keW5hbWljLWZvcm0vY29udGFpbmVycy9mb3JtLXNlbGVjdC9mb3JtLXNlbGVjdC5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'form-select',\r\n templateUrl: './form-select.component.html',\r\n styleUrls: ['./form-select.component.css']\r\n})\r\nexport class FormSelectComponent implements OnInit {\r\n config;\r\n group: FormGroup;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJ3d3dyb290L2FwcC9keW5hbWljLWZvcm0vY29udGFpbmVycy9mb3JtLXRlcm1zL2Zvcm0tdGVybXMuY29tcG9uZW50LmNzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'form-terms',\n templateUrl: './form-terms.component.html',\n styleUrls: ['./form-terms.component.css']\n})\nexport class FormTermsComponent implements OnInit {\n config;\n group: FormGroup;\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJ3d3dyb290L2FwcC9keW5hbWljLWZvcm0vY29udGFpbmVycy9mb3JtLXRleHRhcmVhL2Zvcm0tdGV4dGFyZWEuY29tcG9uZW50LmNzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'form-textarea',\r\n templateUrl: './form-textarea.component.html',\r\n styleUrls: ['./form-textarea.component.css']\r\n})\r\nexport class FormTextareaComponent implements OnInit {\r\n config;\r\n group: FormGroup;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DynamicFormComponent } from './containers/dynamic-form/dynamic-form.component';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { FormInputComponent } from './containers/form-input/form-input.component';\r\nimport { FormSelectComponent } from './containers/form-select/form-select.component';\r\nimport { FormTextareaComponent } from './containers/form-textarea/form-textarea.component';\r\nimport { DynamicFieldDirective } from './containers/dynamic-field/dynamic-field.directive';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { EditFormFieldsComponent } from './containers/edit-form-fields/edit-form-fields.component';\r\nimport { FormRenderComponent } from './containers/form-render/form-render.component';\r\nimport { FormPreviewComponent } from './containers/form-preview/form-preview.component';\r\nimport { FormCheckboxComponent } from './containers/form-checkbox/form-checkbox.component';\r\nimport { FormRadioComponent } from './containers/form-radio/form-radio.component';\r\nimport { FormFileComponent } from './containers/form-file/form-file.component';\r\nimport { FormTermsComponent } from './containers/form-terms/form-terms.component';\r\nimport { FormInfoMessageComponent } from './containers/form-info-message/form-info-message.component';\r\nimport { RecaptchaModule, RecaptchaFormsModule } from 'ng-recaptcha';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n DragDropModule,\r\n NgbModule,\r\n FormsModule,\r\n RecaptchaModule,\r\n RecaptchaFormsModule\r\n ],\r\n declarations: [\r\n DynamicFieldDirective,\r\n DynamicFormComponent,\r\n EditFormFieldsComponent,\r\n FormRenderComponent,\r\n FormPreviewComponent,\r\n FormInputComponent,\r\n FormSelectComponent,\r\n FormTextareaComponent,\r\n FormCheckboxComponent,\r\n FormRadioComponent,\r\n FormFileComponent,\r\n FormTermsComponent,\r\n FormInfoMessageComponent\r\n ],\r\n exports: [DynamicFormComponent, FormPreviewComponent, FormRenderComponent],\r\n entryComponents: [\r\n FormTextareaComponent,\r\n FormInputComponent,\r\n FormSelectComponent,\r\n FormCheckboxComponent,\r\n FormRadioComponent,\r\n FormFileComponent,\r\n FormTermsComponent,\r\n FormInfoMessageComponent\r\n ]\r\n})\r\nexport class DynamicFormModule { }\r\n","export default \".required {\\r\\n background-image: none !important;\\r\\n}\\r\\n\\r\\n/*.form-control{\\r\\n max-width: 375px !important;\\r\\n}\\r\\n\\r\\n\\r\\n.custom-select {\\r\\n max-width: 375px !important;\\r\\n}\\r\\n\\r\\n.custom-file-input {\\r\\n max-width: 375px !important;\\r\\n}*/\\r\\n\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInd3d3Jvb3QvYXBwL3JlbmRlci1mb3JtLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7SUFDSSxpQ0FBaUM7QUFDckM7O0FBRUE7Ozs7Ozs7Ozs7O0VBV0UiLCJmaWxlIjoid3d3cm9vdC9hcHAvcmVuZGVyLWZvcm0uY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5yZXF1aXJlZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qLmZvcm0tY29udHJvbHtcclxuICAgIG1heC13aWR0aDogMzc1cHggIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbi5jdXN0b20tc2VsZWN0IHtcclxuICAgIG1heC13aWR0aDogMzc1cHggIWltcG9ydGFudDtcclxufVxyXG5cclxuLmN1c3RvbS1maWxlLWlucHV0IHtcclxuICAgIG1heC13aWR0aDogMzc1cHggIWltcG9ydGFudDtcclxufSovXHJcblxyXG4iXX0= */\"","import { Component, OnInit, Output, EventEmitter, ViewChild } from '@angular/core';\r\nimport { ConfigService } from './services/config.service';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { FormRenderComponent } from './dynamic-form/containers/form-render/form-render.component';\r\ndeclare var $: any;\r\ndeclare var ira: any;\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'render-form',\r\n templateUrl: './render-form.component.html',\r\n styleUrls: ['./render-form.component.css']\r\n})\r\nexport class RenderFormComponent implements OnInit {\r\n\r\n config: any[] = [];\r\n\r\n formName: string;\r\n formDescription: string;\r\n @ViewChild(FormRenderComponent, { static: false }) private _childFormPreview: FormRenderComponent;\r\n\r\n @Output()\r\n formSubmit: EventEmitter = new EventEmitter();\r\n\r\n constructor(private configService: ConfigService, private http: HttpClient) {\r\n this.configService\r\n .getRenderFormFields()\r\n .subscribe(\r\n form => {\r\n const my_current_form = JSON.parse(form.toString());\r\n \r\n if (my_current_form.formJson != null) {\r\n //my_current_form.formJsonString = my_current_form.formJsonString.replace(/"/g, '\"');\r\n my_current_form.formJson = JSON.parse(my_current_form.formJsonString);\r\n //05/08/2021 - We have to set this here, since if it is not set\r\n //It will hide the label for infoMessage and Terms checkbox controls in the render/preview view\r\n my_current_form.formJson.map(x => x.controlType = \"preview\");\r\n var candidateId = $(\"#hdnCandidateId\").val();\r\n\r\n if (candidateId > 0) {\r\n my_current_form.formJson.filter(x => x.name === \"applicationFirstName\")\r\n .map(x => {\r\n x.value = $(\"#hdnCandidateFirstName\").val();\r\n x.disabled = false;\r\n });\r\n my_current_form.formJson.filter(x => x.name === \"applicationLastName\")\r\n .map(x => {\r\n x.value = $(\"#hdnCandidateLastName\").val();\r\n x.disabled = false;\r\n });\r\n my_current_form.formJson.filter(x => x.name === \"applicationEmailAddress\")\r\n .map(x => {\r\n x.value = $(\"#hdnCandidateEmailAddress\").val();\r\n x.disabled = true;\r\n });\r\n my_current_form.formJson.filter(x => x.name === \"applicationMobilePhone\")\r\n .map(x => {\r\n x.value = $(\"#hdnCandidateMobilePhone\").val();\r\n x.disabled = false;\r\n });\r\n }\r\n this.configService.editConfig([...my_current_form.formJson]);\r\n this.formName = my_current_form.name || '';\r\n this.formDescription = my_current_form.description || '';\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.configService.editConfig([]);\r\n }\r\n )\r\n }\r\n\r\n ngOnInit() {\r\n this.configService.cast.subscribe(config => this.config = [...config]);\r\n }\r\n\r\n formSubmitted(formFieldValues) {\r\n \r\n const submittedValues = { ...formFieldValues };\r\n\r\n // Replace truthy checkbox values with corresponding text value\r\n const checkboxValues = this.configService.allCheckboxValues;\r\n Object.keys(checkboxValues).map(key => {\r\n submittedValues[key] = checkboxValues[key].join(\", \");\r\n });\r\n\r\n Object.keys(submittedValues).map(key => {\r\n if(Array.isArray(submittedValues[key])){\r\n submittedValues[key] = \"\";\r\n }\r\n });\r\n // Replace file name with actual File content for all file upload fields\r\n const fileUploads = this.configService.allUploadedFiles;\r\n //Object.keys(fileUploads).map(key => {\r\n // submittedValues[key] = fileUploads[key]\r\n //})\r\n\r\n //05/08/2021 - Added support for informational message. We do not need to store this info message along with application form,\r\n //since this is only for display purposes and the user does not enter or select any input for this control\r\n //With the filter we are removing the infomessage control from the stored application values\r\n let fieldsWithValues = this.config.filter(x => x.type !== \"infoMessage\").map(field => {\r\n return {\r\n name: field.name,\r\n position: field.position,\r\n type: field.type,\r\n label: escape(field.label),\r\n convertToTag: field.convertToTag ? field.convertToTag : false,\r\n eeo: field.eeo ? field.eeo : false,\r\n value: field.disabled ? field.value : submittedValues[field.name]\r\n }\r\n });\r\n\r\n const userForm = {\r\n 'name': this.formName,\r\n 'description': this.formDescription,\r\n //'values': submittedValues,\r\n \"cacheKey\": $(\"#hdnCompanyID\").val(),\r\n \"jobListId\": $(\"#jobListId\").val(),\r\n \"jobTitle\": $(\"#jobTitle\").val(),\r\n \"jobApplicationLink\": $(\"#jobApplicationLink\").val(),\r\n \"jobKey\": $(\"#jobKey\").val(),\r\n \"recaptchaResponse\": formFieldValues.recaptcha,\r\n fieldsWithValues\r\n };\r\n\r\n const formData: FormData = new FormData();\r\n\r\n var fileProperties: any = [];\r\n\r\n $.each(fileUploads,\r\n function (index, item) {\r\n var newItem = {\r\n name: item.name,\r\n size: item.size,\r\n fieldName: item.fieldName,\r\n fieldLabel: item.fieldLabel\r\n }\r\n\r\n fileProperties.push(newItem);\r\n\r\n formData.append(\"file\", item.file);\r\n });\r\n\r\n formData.append(\"fileProperties\", JSON.stringify(fileProperties));\r\n formData.append(\"userForm\", JSON.stringify(userForm));\r\n\r\n this.http.post($(\"#hdnSubmitApplicationUrl\").val(), formData).subscribe(resp => {\r\n var url = $(\"#hdnAllJobsUrl\").val(),\r\n result = resp.toString();\r\n\r\n if (result !== null && result !== 'undefined' && result !== undefined && result !== '' && result !== ' ') {\r\n if (result === \"-9\") {\r\n $(\"#dvError\").hide();\r\n $('#dvSuccess').show();\r\n $(\".form-control\").val('');\r\n $('.btn-primary').prop('disabled', true);\r\n $('.custom-file-label').html('Select file...');\r\n window.scrollTo(0, 0);\r\n this._childFormPreview.submitFailedBlacklist();\r\n\r\n return true;\r\n } else {\r\n if (!(window.location !== window.parent.location)) {\r\n sessionStorage.setItem(\"iraApplicationId\", result);\r\n }\r\n\r\n url += '?showMessage=true&appId=' + encodeURIComponent(result);\r\n\r\n window.location.href = url;\r\n }\r\n } else {\r\n this._childFormPreview.submitFailed();\r\n $(\"#dvError\").show();\r\n $('#dvSuccess').hide();\r\n }\r\n });\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { AppConstants } from '../constants';\r\nimport { FormArray, Validators } from '@angular/forms';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { IFormFields } from '../form-fields';\r\nimport 'rxjs/add/operator/catch';\r\nimport 'rxjs/add/observable/throw';\r\nimport { FileValidator } from '../file-input-validator';\r\n\r\ndeclare var $: any;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ConfigService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n // Url to get initial fields (JSON format) to be loaded in the form\r\n private urlToGetEditFields: string = $(\"#hdnFormLoadUrl\").val() + '?formId=' + $(\"#hdnFormId\").val() + '&formType=' + $(\"#hdnFormType\").val();\r\n\r\n // Url to get render fields (JSON format) to be loaded in the form\r\n private urlToGetRenderFields: string = $(\"#hdnFormLoadUrl\").val() + '?formId=' + $(\"#hdnFormId\").val() + '&formType=' + $(\"#hdnFormType\").val() + \"&cacheKey=\" + encodeURIComponent($(\"#hdnCompanyID\").val());\r\n\r\n originalConfig: any[] = [];\r\n fileUploadEvents = {};\r\n\r\n newConfigFields = AppConstants.NEW_CONFIG_FIELDS;\r\n\r\n allCheckboxFieldValues: any = {};\r\n uploadedFiles: any = [];\r\n\r\n private formFields = [\r\n { name: 'Text Input', value: 'text' },\r\n { name: 'Paragraph', value: 'textarea' },\r\n { name: 'Select', value: 'select' },\r\n { name: 'Email', value: 'email' },\r\n { name: 'Phone', value: 'tel' },\r\n { name: 'Checkbox', value: 'checkbox' },\r\n { name: 'Radio Button', value: 'radio' },\r\n { name: 'File Upload', value: 'file' },\r\n { name: 'Terms Checkbox', value: 'terms' },\r\n { name: 'Informational Message', value: 'infoMessage' }\r\n ///{ name: 'Date', value: 'date' },\r\n ///{ name: 'Password', value: 'password' },\r\n ///{ name: 'Link', value: 'url' },\r\n ///{ name: 'Number', value: 'number' },\r\n ];\r\n\r\n get formFieldsToAdd() {\r\n return this.formFields;\r\n }\r\n\r\n\r\n // Configuring fields (in JSON form) as a Behavior subject and casting it\r\n // so that the child components get the latest value of the fields.\r\n // Behavior Subjects: When you subscribe to a behavior subject,\r\n // it will give you the last emitted value right away.\r\n private config = new BehaviorSubject(this.originalConfig);\r\n cast = this.config.asObservable();\r\n\r\n // Every time this function is called, the modified value of \"config\" changes and is casted\r\n editConfig(newConfig) {\r\n const modifiedConfig = newConfig.map(this.addValidators);\r\n this.config.next(modifiedConfig);\r\n }\r\n\r\n // Get your form fields to be edited from your API (as an observable)\r\n getEditFormFields(): Observable {\r\n return this.http\r\n .get(this.urlToGetEditFields)\r\n .catch(this.errorHandler);\r\n }\r\n\r\n // Get your form fields to be edited from your API (as an observable)\r\n getRenderFormFields(): Observable {\r\n return this.http\r\n .get(this.urlToGetRenderFields)\r\n .catch(this.errorHandler);\r\n }\r\n\r\n errorHandler(error: HttpErrorResponse) {\r\n return Observable.throw(error.message || 'Server error when fetching form fields!');\r\n }\r\n\r\n addValidators(fieldConfig) {\r\n fieldConfig['validators'] = [];\r\n if (fieldConfig.validatorInfo.required && fieldConfig.type === 'file') {\r\n //fieldConfig['validators'].push(FileValidator.validate);\r\n } else if (fieldConfig.validatorInfo.required) {\r\n fieldConfig['validators'].push(Validators.required);\r\n }\r\n if (fieldConfig.validatorInfo.email) {\r\n fieldConfig['validators'].push(Validators.email);\r\n }\r\n return fieldConfig;\r\n }\r\n\r\n // function to get the values selected in the checkbox with multiple options.\r\n // This would help us get the actual value when you select the options\r\n // and not 'true' or 'false' values.\r\n getSelectedCheckboxValues(form, field) {\r\n const checkboxValues = [];\r\n const checkboxArray = form.get(field.name);\r\n checkboxArray.controls.forEach((control, i) => {\r\n if (control.value === true) {\r\n checkboxValues.push(field.choices[i]);\r\n }\r\n });\r\n this.allCheckboxFieldValues[field.name] = checkboxValues;\r\n }\r\n\r\n // returns values of all checkbox fields\r\n get allCheckboxValues() {\r\n return this.allCheckboxFieldValues;\r\n }\r\n\r\n // To check if at least one value of the checkbox group is chosen\r\n isCheckBoxValid(checkboxFieldValues) {\r\n if (checkboxFieldValues.includes(true)) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n // Function which adds the validation properties to the field\r\n // Example: Displaying an error below the field when it is a required field,\r\n // and surrounding the field with a red box.\r\n validateField(fieldConfig, form, submitButtonClicked) {\r\n \r\n const fieldName = fieldConfig.name;\r\n const formControl = form.controls[fieldName];\r\n //console.log(formControl);\r\n // We are validating the checkbox & terms fields separately because,\r\n // the validation of these fields are different than other fields.\r\n switch (fieldConfig.type) {\r\n\r\n case 'checkbox': {\r\n if(fieldConfig.validatorInfo.required == false){\r\n $('#' + fieldName).removeClass('invalid-error');\r\n return false;\r\n }\r\n const checkboxInvalid = !this.isCheckBoxValid(form.value[fieldName]);\r\n if (checkboxInvalid && (formControl.dirty || formControl.touched || submitButtonClicked)) {\r\n $('#' + fieldName).addClass('invalid-error');\r\n return true;\r\n } else {\r\n $('#' + fieldName).removeClass('invalid-error');\r\n return false;\r\n }\r\n }\r\n case 'terms': {\r\n if (!form.value[fieldName] && (formControl.dirty || formControl.touched || submitButtonClicked)) {\r\n $('#' + fieldName).next().addClass('invalid-terms-error');\r\n return true;\r\n } else {\r\n $('#' + fieldName).next().removeClass('invalid-terms-error');\r\n return false;\r\n }\r\n }\r\n case 'file': {\r\n if (\r\n (this.fileUploadEvents[fieldName] || submitButtonClicked)\r\n && fieldConfig.validatorInfo.required && !this.checkFileUploaded(fieldName)\r\n ) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n default: {\r\n if (formControl.invalid && (formControl.dirty || formControl.touched || submitButtonClicked)) {\r\n $('#' + fieldName).addClass('invalid-error');\r\n return true;\r\n } else {\r\n $('#' + fieldName).removeClass('invalid-error');\r\n return false;\r\n }\r\n }\r\n }\r\n }\r\n\r\n isAllUploadedFilesValid(fieldConfig) {\r\n let allUploadedFilesValid = true;\r\n const requiredFiles = fieldConfig\r\n .filter(config => config.type === 'file' && config.validatorInfo.required);\r\n\r\n requiredFiles.forEach(fileConfig => {\r\n if (this.checkFileUploaded(fileConfig.name)) {\r\n allUploadedFilesValid = allUploadedFilesValid && true;\r\n } else {\r\n allUploadedFilesValid = allUploadedFilesValid && false;\r\n }\r\n });\r\n\r\n return allUploadedFilesValid;\r\n }\r\n\r\n getErrorMessage(form, fieldConfig) {\r\n const formControl = form.controls[fieldConfig.name];\r\n let errorMessage = fieldConfig.label + ' is required.';\r\n\r\n switch (fieldConfig.type) {\r\n case 'terms': {\r\n errorMessage = 'Please accept terms before submitting the form.';\r\n break;\r\n }\r\n case 'file': {\r\n errorMessage = 'Please select a file';\r\n break;\r\n }\r\n case 'input': {\r\n if (fieldConfig.input_type === 'email' && formControl.invalid && formControl.errors.required) {\r\n errorMessage = fieldConfig.label + ' is required.';\r\n } else if (fieldConfig.input_type === 'email' && formControl.invalid && formControl.errors.email) {\r\n errorMessage = 'Enter a valid email address.';\r\n }\r\n break;\r\n }\r\n }\r\n\r\n return errorMessage;\r\n\r\n }\r\n\r\n fileUpload(uploadedFile, config) {\r\n //this.uploadedFiles[fieldName] = uploadedFile;\r\n var file = uploadedFile;\r\n\r\n var fileObject = $.grep(this.uploadedFiles, function (item, index) {\r\n return item.fieldName === config.name;\r\n })[0];\r\n\r\n if (fileObject) {\r\n fileObject.name = file.name;\r\n fileObject.size = file.size;\r\n fileObject.file = file;\r\n } else {\r\n fileObject = {\r\n name: file.name,\r\n size: file.size,\r\n file: file,\r\n fieldName: config.name,\r\n fieldLabel: config.label\r\n }\r\n\r\n this.fileUploadEvents[config.name] = true;\r\n this.uploadedFiles.push(fileObject);\r\n }\r\n }\r\n\r\n checkFileUploaded(fieldName) {\r\n var uploaded = this.uploadedFiles.some(file => file.fieldName === fieldName);\r\n\r\n return uploaded;\r\n }\r\n\r\n get allUploadedFiles() {\r\n return this.uploadedFiles;\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\n\r\n\r\n// Change interface if we will receive more/different fields in the response\r\ninterface IReCaptchaResponse {\r\n success: boolean\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class ReCaptchaService {\r\n\r\n reCaptchaSiteKey = '6LdbeawZAAAAAEv_kKWEJa68huTOc05uXx5bARTi';\r\n reCaptchaMissingErrorMessage = 'Invalid captcha!';\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n getSiteKey(): string {\r\n return this.reCaptchaSiteKey;\r\n }\r\n\r\n addRecaptchaToForm(group: FormGroup, fb: FormBuilder) {\r\n group.addControl('recaptcha', fb.control('', Validators.required));\r\n }\r\n\r\n getCaptchaMissingErrorMessage(): string {\r\n return this.reCaptchaMissingErrorMessage;\r\n }\r\n\r\n // This method is needed if the captcha validation is to be\r\n // orchestrated in the frontend. Else the server can do the\r\n // validation and submit the form.\r\n async isReCaptchaValid(reCaptchaValue): Promise {\r\n if (!reCaptchaValue) return false;\r\n\r\n try {\r\n const url = '/Home/ValidateCaptcha';\r\n const validationResponse = await this.http\r\n .post(url, { reCaptchaValue }, { responseType: 'json' })\r\n .toPromise();\r\n\r\n if (!validationResponse || !validationResponse.success) return false;\r\n return true;\r\n } catch (error) {\r\n // add log here if required\r\n return false;\r\n }\r\n }\r\n\r\n}","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n\r\n"],"sourceRoot":"webpack:///"}