UNPKG

@opencitylabs/bootstrap-italia

Version:

Bootstrap Italia templates for Form.io forms

1 lines 83.6 kB
!function(n,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.bootstrapItalia=e():n.bootstrapItalia=e()}(self,()=>(()=>{"use strict";var n={d:(e,l)=>{for(var t in l)n.o(l,t)&&!n.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:l[t]})},o:(n,e)=>Object.prototype.hasOwnProperty.call(n,e)},e={};n.d(e,{default:()=>V});const l={form:function(n){var e,l="";if(Array.prototype.join,n.mode.autocomplete){for(var t in l+='\n <div class="address-autocomplete-container">\n <input\n ref="'+(null==(e=n.ref.searchInput)?"":e)+'"\n ',n.inputAttributes)l+="\n "+(null==(e=t)?"":e)+'="'+(null==(e=n.inputAttributes[t])?"":e)+'"\n ';l+='\n value="'+(null==(e=n.displayValue)?"":e)+'"\n autocomplete="off"\n aria-label="'+(null==(e=n.t("autocomplete"))?"":e)+'"\n >\n ',n.component.disableClearIcon||(l+='\n <i\n class="address-autocomplete-remove-value-icon fa fa-times"\n tabindex="'+(null==(e=n.inputAttributes.tabindex)?"":e)+'"\n ref="'+(null==(e=n.ref.removeValueIcon)?"":e)+'"\n ></i>\n '),l+="\n </div>\n"}return l+="\n",n.self.manualModeEnabled&&(l+='\n <div class="form-check checkbox">\n <label class="form-check-label">\n <input\n ref="'+(null==(e=n.ref.modeSwitcher)?"":e)+'"\n type="checkbox"\n class="form-check-input"\n tabindex="'+(null==(e=n.inputAttributes.tabindex)?"":e)+'"\n ',n.mode.manual&&(l+="checked=true"),l+="\n ",n.disabled&&(l+="disabled=true"),l+="\n >\n <span>"+(null==(e=n.component.switchToManualModeLabel)?"":e)+"</span>\n </label>\n </div>\n"),l+="\n",n.self.manualMode&&(l+='\n <div ref="'+(null==(e=n.nestedKey)?"":e)+'">\n '+(null==(e=n.children)?"":e)+"\n </div>\n"),l+"\n"},html:function(n){var e,l="";return Array.prototype.join,l+='<div ref="value">',n.displayValue?l+=null==(e=n.displayValue)?"":e:l+="-",l+"</div>\n"}},t={form:function(n){var e,l="";return Array.prototype.join,l+='<div class="builder-component" ref="dragComponent" tabindex="-1">\n ',n.disableBuilderActions||(l+='\n <div class="component-btn-group" data-noattach="true">\n <div\n role="button"\n aria-label="Remove button. Click to remove component from the form"\n tabindex="-1"\n class="btn btn-xxs btn-danger component-settings-button component-settings-button-remove"\n ref="removeComponent"\n >\n <i class="'+(null==(e=n.iconClass("remove"))?"":e)+'"></i>\n </div>\n ',n.design||(l+='\n <div\n role="button"\n aria-label="Copy button. Click to copy component"\n tabindex="-1"\n class="btn btn-xxs btn-default component-settings-button component-settings-button-copy"\n ref="copyComponent"\n >\n <i class="'+(null==(e=n.iconClass("copy"))?"":e)+'"></i>\n </div>\n <div\n role="button"\n aria-label="Paste below button. Click to paste component below the current component"\n tabindex="-1"\n class="btn btn-xxs btn-default component-settings-button component-settings-button-paste"\n ref="pasteComponent"\n >\n <i class="'+(null==(e=n.iconClass("save"))?"":e)+'"></i>\n </div>\n <div\n role="button"\n aria-label="Edit json button. Click to edit json of the current component"\n tabindex="-1"\n class="btn btn-xxs btn-default component-settings-button component-settings-button-edit-json"\n ref="editJson"\n >\n <i class="'+(null==(e=n.iconClass("wrench"))?"":e)+'"></i>\n </div>\n '),l+='\n <div\n role="button"\n aria-label="Move button"\n tabindex="-1"\n class="btn btn-xxs btn-default component-settings-button component-settings-button-move"\n ref="moveComponent"\n >\n <i class="'+(null==(e=n.iconClass("move"))?"":e)+'"></i>\n </div>\n ',n.design&&"reviewpage"===n.childComponent.type||(l+='\n <div\n role="button"\n aria-label="Edit button. Click to open component settings modal window"\n tabindex="-1"\n class="btn btn-xxs btn-secondary component-settings-button component-settings-button-edit"\n ref="editComponent"\n >\n <i class="'+(null==(e=n.iconClass("cog"))?"":e)+'"></i>\n </div>\n '),l+="\n </div>\n "),l+"\n "+(null==(e=n.html)?"":e)+"\n</div>\n"}},o={form:function(n){var e,l="";return Array.prototype.join,l+='<div class="row">\n <div class="col col-sm-6">\n <p class="lead">'+(null==(e=n.t(n.componentInfo.title,{_userInput:!0}))?"":e)+" "+(null==(e=n.t("Component"))?"":e)+"</p>\n </div>\n ",n.helplinks&&(l+='\n <div class="col col-sm-6">\n <div class="float-end" style="margin-right: 20px; margin-top: 10px">\n <a href="'+(null==(e=n.t(n.helplinks+n.componentInfo.documentation))?"":e)+'" target="_blank" rel="noopener noreferrer">\n <i class="'+(null==(e=n.iconClass("new-window"))?"":e)+'"></i> '+(null==(e=n.t("Help"))?"":e)+"\n </a>\n </div>\n </div>\n "),l+='\n</div>\n<div class="row">\n <div class="col component-edit-tabs '+(null==(e=n.preview&&n.showPreview?"col-sm-6":"col-sm-12")?"":e)+'">\n <div ref="editForm">\n '+(null==(e=n.editForm)?"":e)+"\n </div>\n ",n.showPreview||(l+='\n <div style="margin-top: 10px;">\n <button type="button" class="btn btn-success" style="margin-right: 10px;" ref="saveButton">'+(null==(e=n.t("Save"))?"":e)+'</button>\n <button type="button" class="btn btn-secondary" style="margin-right: 10px;" ref="cancelButton">'+(null==(e=n.t("Cancel"))?"":e)+'</button>\n <button type="button" class="btn btn-danger" ref="removeButton">'+(null==(e=n.t("Remove"))?"":e)+"</button>\n ",n.preview&&(l+='\n <button type="button" class="btn btn-primary float-right" ref="previewButton">'+(null==(e=n.t("Show preview"))?"":e)+"</button>\n "),l+="\n </div>\n "),l+="\n </div>\n ",n.showPreview&&n.preview&&(l+='\n <div class="col col-sm-6">\n <div class="card panel preview-panel">\n <div class="card-header">\n <h4 class="card-title mb-0">'+(null==(e=n.t("Preview"))?"":e)+'</h4>\n </div>\n <div class="card-body">\n <div class="component-preview" ref="preview">\n '+(null==(e=n.preview)?"":e)+"\n </div>\n </div>\n </div>\n ",n.componentInfo.help&&(l+='\n <div class="card card-body bg-light formio-settings-help">\n '+(null==(e=n.t(n.componentInfo.help))?"":e)+"\n </div>\n "),l+='\n <div style="margin-top: 10px;">\n <button type="button" class="btn btn-success" style="margin-right: 10px;" ref="saveButton">'+(null==(e=n.t("Save"))?"":e)+'</button>\n <button type="button" class="btn btn-secondary" style="margin-right: 10px;" ref="cancelButton">'+(null==(e=n.t("Cancel"))?"":e)+'</button>\n <button type="button" class="btn btn-danger" ref="removeButton">'+(null==(e=n.t("Remove"))?"":e)+'</button>\n <button type="button" class="btn btn-primary float-right" ref="previewButton">'+(null==(e=n.t("Hide preview"))?"":e)+"</button>\n </div>\n </div>\n "),l+"\n</div>\n"}},a={form:function(n){var e,l="";return Array.prototype.join,l+='<div id="'+(null==(e=n.groupId)?"":e)+'" class="accordion builder-sidebar'+(null==(e=n.scrollEnabled?" builder-sidebar_scroll":"")?"":e)+'" ref="sidebar" role="tablist">\n <input class="form-control builder-sidebar_search" type="search" ref="sidebar-search" placeholder="'+(null==(e=n.t("Search field(s)"))?"":e)+'" />\n <div ref="sidebar-groups">\n ',n.groups.forEach(function(n){l+="\n "+(null==(e=n)?"":e)+"\n "}),l+="\n </div>\n</div>\n"}},r={form:function(n){var e,l="";return Array.prototype.join,l+='<div class="card form-builder-panel accordion-item" ref="group-panel-'+(null==(e=n.groupKey)?"":e)+'">\n <div class="card-header form-builder-group-header p-0" id="heading-'+(null==(e=n.groupKey)?"":e)+'">\n <h5 class="mb-0 mt-0 d-grid accordion-header">\n <button\n class="btn builder-group-button"\n type="button"\n data-bs-toggle="collapse"\n data-toggle="collapse"\n data-bs-target="#group-'+(null==(e=n.groupKey)?"":e)+'"\n data-target="#group-'+(null==(e=n.groupKey)?"":e)+'"\n data-parent="#'+(null==(e=n.groupId)?"":e)+'"\n data-bs-parent="#'+(null==(e=n.groupId)?"":e)+'"\n aria-expanded="'+(null==(e=n.group.default)?"":e)+'"\n aria-controls="group-'+(null==(e=n.groupKey)?"":e)+'"\n ref="sidebar-anchor"\n >\n '+(null==(e=n.t(n.group.title,{_userInput:!0}))?"":e)+'\n </button>\n </h5>\n </div>\n <div\n id="group-'+(null==(e=n.groupKey)?"":e)+'"\n class="accordion-collapse collapse '+(null==(e=n.group.default?" show":"")?"":e)+'"\n data-bs-parent="#'+(null==(e=n.groupId)?"":e)+'"\n data-parent="#'+(null==(e=n.groupId)?"":e)+'"\n data-default="'+(null==(e=n.group.default)?"":e)+'"\n aria-labelledby="heading-'+(null==(e=n.groupKey)?"":e)+'"\n ref="sidebar-group"\n >\n <div id="group-container-'+(null==(e=n.groupKey)?"":e)+'" class="d-grid gap-1 no-drop p-2 w-100" ref="sidebar-container">\n ',n.group.componentOrder.length||n.subgroups.length?(l+="\n ",!n.group.componentOrder||n.group.componentOrder.forEach(function(t){l+='\n <span\n ref="sidebar-component"\n data-group="'+(null==(e=n.groupKey)?"":e)+'"\n data-key="'+(null==(e=n.group.components[t].key)?"":e)+'"\n data-type="'+(null==(e=n.group.components[t].schema.type)?"":e)+'"\n class="btn btn-outline-primary btn-sm formcomponent drag-copy m-0"\n tabindex="'+(null==(e=n.keyboardActionsEnabled?-1:0)?"":e)+'"\n >\n ',n.group.components[t].icon&&(l+='\n <i class="'+(null==(e=n.iconClass(n.group.components[t].icon))?"":e)+'" style="margin-right: 5px;"></i>\n '),l+="\n "+(null==(e=n.t(n.group.components[t].title,{_userInput:!0}))?"":e)+"\n </span>\n "}),l+="\n "+(null==(e=n.subgroups.join(""))?"":e)+"\n "):l+="\n <div>"+(null==(e=n.t("No Matches Found"))?"":e)+"</div>\n ",l+="\n </div>\n </div>\n</div>\n"}},i={form:function(n){var e,l="";return Array.prototype.join,l+='<div class="formio builder row formbuilder">\n <div class="col-xs-4 col-sm-3 col-md-2 formcomponents">\n '+(null==(e=n.sidebar)?"":e)+'\n </div>\n <div class="col-xs-8 col-sm-9 col-md-10 formarea">\n <ol class="breadcrumb wizard-pages">\n ',n.pages.forEach(function(t,o){l+='\n <li>\n <span title="'+(null==(e=t.title)?"":e)+'" class="me-2 badge ',o===n.self.page?l+="bg-primary":l+="bg-info",l+=' wizard-page-label" ref="gotoPage">'+(null==(e=t.title)?"":e)+"</span>\n </li>\n "}),l+='\n <li class="wizard-add-page">\n <span title="'+(null==(e=n.t("Create Page"))?"":e)+'" class="me-2 badge bg-success wizard-page-label" ref="addPage">\n <i class="'+(null==(e=n.iconClass("plus"))?"":e)+'"></i> '+(null==(e=n.t("Page"))?"":e)+'\n </span>\n </li>\n </ol>\n <div ref="form">\n '+(null==(e=n.form)?"":e)+"\n </div>\n </div>\n</div>\n"}},s={form:function(n){var e,l="";for(var t in Array.prototype.join,l+="<"+(null==(e=n.input.type)?"":e)+'\n ref="button"\n ',n.input.attr)l+="\n "+(null==(e=t)?"":e)+'="'+(null==(e=n.input.attr[t])?"":e)+'"\n ';return l+="\n ",n.component.description&&(l+='\n aria-describedby="d-'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'"\n '),l+="\n>\n",n.component.leftIcon&&(l+='<span class="'+(null==(e=n.component.leftIcon)?"":e)+'"></span>&nbsp;'),l+="\n"+(null==(e=n.input.content)?"":e)+"\n",n.component.tooltip&&(l+='\n <i ref="tooltip" class="'+(null==(e=n.iconClass("question-sign"))?"":e)+' text-muted" data-tooltip="'+(null==(e=n.component.tooltip)?"":e)+'"></i>\n'),l+="\n",n.component.rightIcon&&(l+='&nbsp;<span class="'+(null==(e=n.component.rightIcon)?"":e)+'"></span>'),l+"\n</"+(null==(e=n.input.type)?"":e)+'>\n<div ref="buttonMessageContainer">\n <span class="help-block" ref="buttonMessage"></span>\n</div>\n'},html:function(n){return"\n"}},u={form:function(n){var e,l="";for(var t in Array.prototype.join,l+='<div class="form-check">\n <'+(null==(e=n.input.type)?"":e)+'\n ref="input"\n id="'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'"\n aria-labelledby="l-'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+"\n ",n.input.attr)l+="\n "+(null==(e=t)?"":e)+'="'+(null==(e=n.input.attr[t])?"":e)+'"\n ';return l+="\n ",n.checked&&(l+="checked=true"),l+='\n aria-required="'+(null==(e=n.component.validate.required)?"":e)+'"\n ',n.component.description&&(l+='\n aria-describedby="d-'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'"\n '),l+="\n >\n ",n.self.labelIsHidden()||(l+='\n <label for="'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'" class="'+(null==(e=n.input.labelClass)?"":e)+' form-check-label" id="l-'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'">'+(null==(e=n.input.label)?"":e)+"</label>\n "),l+="\n ",n.component.tooltip&&(l+='\n <i ref="tooltip" tabindex="0" class="'+(null==(e=n.iconClass("question-sign"))?"":e)+' text-muted" data-tooltip="'+(null==(e=n.component.tooltip)?"":e)+'"></i>\n '),l+"\n</div>\n"},html:function(n){var e,l="";return Array.prototype.join,l+='<label class="'+(null==(e=n.input.labelClass)?"":e)+'">\n '+(null==(e=n.input.content)?"":e)+"\n ",n.self.labelIsHidden()||(l+="<span>"+(null==(e=n.input.label)?"":e)+"</span>"),l+='\n</label>\n<div ref="value">',n.checked?l+="True":l+="False",l+"</div>\n"}},d={form:function(n){var e,l="";return Array.prototype.join,n.component.columns.forEach(function(t,o){l+='\n<div class="col-'+(null==(e=t.size)?"":e)+"-"+(null==(e=t.currentWidth)?"":e)+"\n offset-"+(null==(e=t.size)?"":e)+"-"+(null==(e=t.offset)?"":e)+'"\n ref="'+(null==(e=n.columnKey)?"":e)+'">\n '+(null==(e=n.columnComponents[o])?"":e)+"\n</div>\n"}),l}},c={form:function(n){var e,l="";return Array.prototype.join,l+='<div id="'+(null==(e=n.id)?"":e)+'" class="'+(null==(e=n.classes)?"":e)+" "+(null==(e="select"===n.component.type?"select-wrapper":"")?"":e)+'"',n.styles&&(l+=' style="'+(null==(e=n.styles)?"":e)+'"'),l+=' ref="component">\n ',n.visible&&(l+="\n "+(null==(e=n.children)?"":e)+'\n <div ref="messageContainer" class="formio-errors invalid-feedback"></div>\n '),l+"\n</div>\n"}},p={form:function(n){var e,l="";return Array.prototype.join,l+='<div class="formio-component-modal-wrapper formio-component-modal-wrapper-'+(null==(e=n.component.type)?"":e)+'" ref="componentModalWrapper">\n <div ref="openModalWrapper"></div>\n <div class="formio-dialog formio-dialog-theme-default component-rendering-hidden" ref="modalWrapper">\n <div class="formio-dialog-overlay" ref="modalOverlay"></div>\n <div class="formio-dialog-content" aria-labelledby="ml-'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'" ',n.self.isIE()||(l+=' role="dialog" '),l+=' ref="modalContents">\n <label class="visually-hidden" id="ml-'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'">'+(null==(e=n.t(n.component.label))?"":e)+(null==(e=n.self.isIE()?", dialog":"")?"":e)+"</label>\n ",n.options.vpat?l+='\n <button type="button" class="formio-dialog-close float-end" title="Close" aria-label="Close button. Click to get back to the form" ref="modalCloseButton"></button>\n ':l+='\n <button type="button" class="formio-dialog-close float-end btn btn-secondary btn-sm" aria-label="Close button. Click to get back to the form" ref="modalClose"></button>\n ',l+='\n <div ref="modalContents">\n ',n.visible&&(l+="\n "+(null==(e=n.children)?"":e)+"\n "),l+='\n <div class="formio-dialog-buttons">\n ',n.options.vpat&&(l+='\n <button type="button" class="btn btn-secondary formio-dialog-button" aria-label="Cancel button. Click to cancel the changes and get back to the form." ref="modalClose">'+(null==(e=n.t("Cancel"))?"":e)+"</button>\n "),l+'\n <button type="button" class="btn btn-success formio-dialog-button" ref="modalSave" aria-label="Save button. Click to save the changes and get back to the form.">'+(null==(e=n.t("Save"))?"":e)+'</button>\n </div>\n </div>\n </div>\n <span class="visually-hidden" ref="modalLiveRegion" aria-live="assertive"></span>\n </div>\n</div>\n'}},b={form:function(n){var e,l="";return Array.prototype.join,n.children.forEach(function(n){l+='\n <td class="editgrid-table-column">\n '+(null==(e=n)?"":e)+"\n </td>\n"}),l+="\n"}},m={form:function(n){var e,l="";return Array.prototype.join,l+='<table class="table datagrid-table table-bordered\n '+(null==(e=n.component.striped?"table-striped":"")?"":e)+"\n "+(null==(e=n.component.hover?"table-hover":"")?"":e)+"\n "+(null==(e=n.component.condensed?"table-sm":"")?"":e)+'\n " ',(n.component.layoutFixed||n.readOnly)&&(l+='style="table-layout: fixed;"'),l+=">\n ",n.hasHeader&&(l+="\n <thead>\n <tr>\n ",n.component.reorder&&(l+="<th></th>"),l+="\n ",n.columns.forEach(function(t){l+='\n <th class="'+(null==(e=t.validate&&t.validate.required?"field-required":"")?"":e)+'">\n '+(null==(e=t.hideLabel?"":n.t(t.label||t.title,{_userInput:!0}))?"":e)+"\n ",t.tooltip&&(l+=' <i ref="tooltip" tabindex="0" data-title="'+(null==(e=t.tooltip)?"":e)+'" class="'+(null==(e=n.iconClass("question-sign"))?"":e)+' text-muted" data-tooltip="'+(null==(e=t.tooltip)?"":e)+'"></i>'),l+="\n </th>\n "}),l+="\n ",n.hasExtraColumn&&(l+='\n <th>\n <span class="visually-hidden">'+(null==(e=n.t("Add/Remove"))?"":e)+"</span>\n ",!n.builder&&n.hasAddButton&&n.hasTopSubmit&&(l+='\n <button type="button" class="btn btn-primary formio-button-add-row" ref="'+(null==(e=n.datagridKey)?"":e)+'-addRow" tabindex="'+(null==(e=n.tabIndex)?"":e)+'">\n <i class="'+(null==(e=n.iconClass("plus"))?"":e)+'"></i>'+(null==(e=n.t(n.component.addAnother||"Add Another",{_userInput:!0}))?"":e)+"\n </button>\n "),l+="\n </th>\n "),l+="\n </tr>\n </thead>\n "),l+='\n <tbody ref="'+(null==(e=n.datagridKey)?"":e)+'-tbody" data-key="'+(null==(e=n.datagridKey)?"":e)+'">\n ',n.rows.forEach(function(t,o){l+="\n ",n.hasGroups&&n.groups[o]&&(l+='\n <tr ref="'+(null==(e=n.datagridKey)?"":e)+'-group-header" class="datagrid-group-header'+(null==(e=n.hasToggle?" clickable":"")?"":e)+'">\n <td\n ref="'+(null==(e=n.datagridKey)?"":e)+'-group-label"\n colspan="'+(null==(e=n.numColumns)?"":e)+'"\n class="datagrid-group-label">'+(null==(e=n.groups[o].label)?"":e)+"</td>\n </tr>\n "),l+='\n <tr ref="'+(null==(e=n.datagridKey)?"":e)+'-row">\n ',n.component.reorder&&(l+='\n <td class="col-1">\n <button type="button" class="formio-drag-button btn btn-default bi bi-list" data-key="'+(null==(e=n.datagridKey)?"":e)+'"></button>\n </td>\n '),l+="\n ",n.columns.forEach(function(o){l+='\n <td ref="'+(null==(e=n.datagridKey)?"":e)+'" ',o.key&&o.overlay&&o.overlay.width&&(l+=' style="width: '+(null==(e=o.overlay.width+"px")?"":e)+'"'),l+=" >\n "+(null==(e=t[o.key])?"":e)+"\n </td>\n "}),l+="\n ",n.hasExtraColumn&&(l+="\n ",n.hasRemoveButtons&&(l+='\n <td class="col-1">\n <button type="button" class="btn btn-secondary formio-button-remove-row" ref="'+(null==(e=n.datagridKey)?"":e)+'-removeRow" tabindex="'+(null==(e=n.tabIndex)?"":e)+'" aria-label="'+(null==(e=n.t("remove"))?"":e)+'">\n <i class="'+(null==(e=n.iconClass("remove-circle"))?"":e)+'"></i>\n </button>\n </td>\n '),l+="\n ",n.canAddColumn&&(l+='\n <td ref="'+(null==(e=n.key)?"":e)+'-container" class="col-md-3">\n '+(null==(e=n.placeholder)?"":e)+"\n </td>\n "),l+="\n "),l+="\n </tr>\n "}),l+="\n </tbody>\n ",!n.builder&&n.hasAddButton&&n.hasBottomSubmit&&(l+='\n <tfoot>\n <tr>\n <td colspan="'+(null==(e=n.component.layoutFixed?n.numColumns:n.numColumns+1)?"":e)+'">\n <button type="button" class="btn btn-primary formio-button-add-row" ref="'+(null==(e=n.datagridKey)?"":e)+'-addRow" tabindex="'+(null==(e=n.tabIndex)?"":e)+'">\n <i class="'+(null==(e=n.iconClass("plus"))?"":e)+'"></i> '+(null==(e=n.t(n.component.addAnother||"Add Another",{_userInput:!0}))?"":e)+"\n </button>\n </td>\n </tr>\n </tfoot>\n "),l+="\n</table>\n"},html:function(n){var e,l="";return Array.prototype.join,l+='<table class="table datagrid-table table-bordered\n '+(null==(e=n.component.striped?"table-striped":"")?"":e)+"\n "+(null==(e=n.component.hover?"table-hover":"")?"":e)+"\n "+(null==(e=n.component.condensed?"table-sm":"")?"":e)+'\n ">\n ',n.hasHeader&&(l+="\n <thead>\n <tr>\n ",n.columns.forEach(function(t){l+='\n <th class="'+(null==(e=t.validate&&t.validate.required?"field-required":"")?"":e)+'">\n '+(null==(e=t.hideLabel?"":n.t(t.label||t.title,{_userInput:!0}))?"":e)+"\n ",t.tooltip&&(l+=' <i ref="tooltip" tabindex="0" data-title="'+(null==(e=t.tooltip)?"":e)+'" class="'+(null==(e=n.iconClass("question-sign"))?"":e)+' text-muted" data-tooltip="'+(null==(e=t.tooltip)?"":e)+'"></i>'),l+="\n </th>\n "}),l+="\n </tr>\n </thead>\n "),l+="\n <tbody>\n ",n.rows.forEach(function(t){l+="\n <tr>\n ",n.columns.forEach(function(o){l+='\n <td ref="'+(null==(e=n.datagridKey)?"":e)+'">\n '+(null==(e=t[o.key])?"":e)+"\n </td>\n "}),l+="\n </tr>\n "}),l+="\n </tbody>\n</table>\n"}},f={form:function(n){var e,l="";return Array.prototype.join,l+='<div class="row" role="group"\n ',n.component.hideLabel?l+='\n aria-label="'+(null==(e=n.component.label)?"":e)+'"\n ':l+='\n aria-labelledby="l-'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'"\n ',l+="\n ",n.component.description&&(l+='\n aria-describedby="d-'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'"\n '),l+="\n >\n ",n.dayFirst&&n.showDay&&(l+='\n <div class="col col-xs-3">\n ',n.component.hideInputLabels||(l+='\n <label for="'+(null==(e=n.component.key)?"":e)+'-day" class="',n.component.fields.day.required&&(l+="field-required"),l+='">'+(null==(e=n.t("Day"))?"":e)+"</label>\n "),l+="\n <div>"+(null==(e=n.day)?"":e)+"</div>\n </div>\n "),l+="\n ",n.showMonth&&(l+='\n <div class="col col-xs-4">\n ',n.component.hideInputLabels||(l+='\n <label for="'+(null==(e=n.component.key)?"":e)+'-month" class="',n.component.fields.month.required&&(l+="field-required"),l+='">'+(null==(e=n.t("Month"))?"":e)+"</label>\n "),l+="\n <div>"+(null==(e=n.month)?"":e)+"</div>\n </div>\n "),l+="\n ",!n.dayFirst&&n.showDay&&(l+='\n <div class="col col-xs-3">\n ',n.component.hideInputLabels||(l+='\n <label for="'+(null==(e=n.component.key)?"":e)+'-day" class="',n.component.fields.day.required&&(l+="field-required"),l+='">'+(null==(e=n.t("Day"))?"":e)+"</label>\n "),l+="\n <div>"+(null==(e=n.day)?"":e)+"</div>\n </div>\n "),l+="\n ",n.showYear&&(l+='\n <div class="col col-xs-5">\n ',n.component.hideInputLabels||(l+='\n <label for="'+(null==(e=n.component.key)?"":e)+'-year" class="',n.component.fields.year.required&&(l+="field-required"),l+='">'+(null==(e=n.t("Year"))?"":e)+"</label>\n "),l+="\n <div>"+(null==(e=n.year)?"":e)+"</div>\n </div>\n "),l+'\n</div>\n<input name="ctx.data[day]" type="hidden" class="form-control" lang="en" value="" ref="input">\n'}},v={form:function(n){var e,l="";return Array.prototype.join,l+='<ul class="editgrid-listgroup list-group\n '+(null==(e=n.component.striped?"table-striped":"")?"":e)+"\n "+(null==(e=n.component.bordered?"table-bordered":"")?"":e)+"\n "+(null==(e=n.component.hover?"table-hover":"")?"":e)+"\n "+(null==(e=n.component.condensed?"table-sm":"")?"":e)+'\n ">\n ',n.header&&(l+='\n <li class="list-group-item list-group-header">\n '+(null==(e=n.header)?"":e)+"\n </li>\n "),l+="\n ",n.rows.forEach(function(t,o){l+='\n <li class="list-group-item" ref="'+(null==(e=n.ref.row)?"":e)+'">\n '+(null==(e=t)?"":e)+"\n ",n.openRows[o]&&!n.readOnly&&(l+='\n <div class="editgrid-actions">\n <button type="button" class="btn btn-primary" ref="'+(null==(e=n.ref.saveRow)?"":e)+'">'+(null==(e=n.t(n.component.saveRow||"Save",{_userInput:!0}))?"":e)+"</button>\n ",n.component.removeRow&&(l+='\n <button type="button" class="btn btn-danger" ref="'+(null==(e=n.ref.cancelRow)?"":e)+'">'+(null==(e=n.t(n.component.removeRow||"Cancel",{_userInput:!0}))?"":e)+"</button>\n "),l+="\n </div>\n "),l+='\n <div class="has-error">\n <div class="editgrid-row-error">\n '+(null==(e=n.errors[o])?"":e)+"\n </div>\n </div>\n </li>\n "}),l+="\n ",n.footer&&(l+='\n <li class="list-group-item list-group-footer">\n '+(null==(e=n.footer)?"":e)+"\n </li>\n "),l+="\n</ul>\n",!n.readOnly&&n.hasAddButton&&(l+='\n<button type="button" class="btn btn-primary" ref="'+(null==(e=n.ref.addRow)?"":e)+'">\n <i class="'+(null==(e=n.iconClass("plus"))?"":e)+'"></i> '+(null==(e=n.t(n.component.addAnother||"Add Another",{_userInput:!0}))?"":e)+"\n</button>\n"),l+="\n"},html:function(n){var e,l="";return Array.prototype.join,l+='<ul class="editgrid-listgroup list-group\n '+(null==(e=n.component.striped?"table-striped":"")?"":e)+"\n "+(null==(e=n.component.bordered?"table-bordered":"")?"":e)+"\n "+(null==(e=n.component.hover?"table-hover":"")?"":e)+"\n "+(null==(e=n.component.condensed?"table-sm":"")?"":e)+'\n ">\n ',n.header&&(l+='\n <li class="list-group-item list-group-header">\n '+(null==(e=n.header)?"":e)+"\n </li>\n "),l+="\n ",n.rows.forEach(function(t,o){l+='\n <li class="list-group-item" ref="'+(null==(e=n.ref.row)?"":e)+'">\n '+(null==(e=t)?"":e)+"\n ",n.openRows[o]&&!n.readOnly&&(l+='\n <div class="editgrid-actions">\n <button type="button" class="btn btn-primary" ref="'+(null==(e=n.ref.saveRow)?"":e)+'">'+(null==(e=n.t(n.component.saveRow||"Save",{_userInput:!0}))?"":e)+"</button>\n ",n.component.removeRow&&(l+='\n <button type="button" class="btn btn-danger" ref="'+(null==(e=n.ref.cancelRow)?"":e)+'">'+(null==(e=n.t(n.component.removeRow||"Cancel",{_userInput:!0}))?"":e)+"</button>\n "),l+="\n </div>\n "),l+='\n <div class="has-error">\n <div class="editgrid-row-error help-block">\n '+(null==(e=n.errors[o])?"":e)+"\n </div>\n </div>\n </li>\n "}),l+="\n ",n.footer&&(l+='\n <li class="list-group-item list-group-footer">\n '+(null==(e=n.footer)?"":e)+"\n </li>\n "),l+="\n</ul>\n"}},y={form:function(n){var e,l="";return Array.prototype.join,l+='<div class="editgrid-table-container">\n <div class="table-responsive">\n <table class="table\n '+(null==(e=n.component.striped?"table-striped":"")?"":e)+"\n "+(null==(e=n.component.bordered?"table-bordered":"")?"":e)+"\n "+(null==(e=n.component.hover?"table-hover":"")?"":e)+"\n "+(null==(e=n.component.condensed?"table-sm":"")?"":e)+'\n ">\n ',n.header&&(l+='\n <thead class="editgrid-table-head">\n '+(null==(e=n.header)?"":e)+"\n </thead>\n "),l+='\n <tbody class="editgrid-table-body">\n ',n.rows.forEach(function(t,o){l+='\n <tr ref="'+(null==(e=n.ref.row)?"":e)+'">\n '+(null==(e=t)?"":e)+"\n ",n.openRows[o]&&!n.readOnly&&(l+='\n <td class="editgrid-table-column">\n <div class="editgrid-actions">\n <button type="button" class="btn btn-primary" ref="'+(null==(e=n.ref.saveRow)?"":e)+'">'+(null==(e=n.t(n.component.saveRow||"Save",{_userInput:!0}))?"":e)+"</button>\n ",n.component.removeRow&&(l+='\n <button type="button" class="btn btn-danger" ref="'+(null==(e=n.ref.cancelRow)?"":e)+'">'+(null==(e=n.t(n.component.removeRow||"Cancel",{_userInput:!0}))?"":e)+"</button>\n "),l+="\n </div>\n </td>\n "),l+="\n ",n.errors[o]&&(l+='\n <td class="editgrid-table-column">\n <div class="has-error">\n <div class="editgrid-row-error help-block">\n '+(null==(e=n.errors[o])?"":e)+"\n </div>\n </div>\n </td>\n "),l+="\n </tr>\n "}),l+="\n </tbody>\n ",n.footer&&(l+="\n <tfoot>\n <tr>\n "+(null==(e=n.footer)?"":e)+"\n </tr>\n <tfoot>\n "),l+="\n </table>\n </div>\n</div>\n",!n.readOnly&&n.hasAddButton&&(l+='\n<button type="button" class="btn btn-primary" ref="'+(null==(e=n.ref.addRow)?"":e)+'">\n <i class="'+(null==(e=n.iconClass("plus"))?"":e)+'"></i>\n '+(null==(e=n.t(n.component.addAnother||"Add Another",{_userInput:!0}))?"":e)+"\n</button>\n"),l+="\n"},html:function(n){var e,l="";return Array.prototype.join,l+='<div class="editgrid-table-container">\n <div class="table-responsive">\n <table class="table\n '+(null==(e=n.component.striped?"table-striped":"")?"":e)+"\n "+(null==(e=n.component.bordered?"table-bordered":"")?"":e)+"\n "+(null==(e=n.component.hover?"table-hover":"")?"":e)+"\n "+(null==(e=n.component.condensed?"table-sm":"")?"":e)+'\n ">\n ',n.header&&(l+='\n <thead class="editgrid-table-head">\n '+(null==(e=n.header)?"":e)+"\n </thead>\n "),l+='\n <tbody class="editgrid-table-body">\n ',n.rows.forEach(function(t,o){l+='\n <tr ref="'+(null==(e=n.ref.row)?"":e)+'">\n '+(null==(e=t)?"":e)+"\n ",n.openRows[o]&&!n.readOnly&&(l+='\n <td class="editgrid-table-column">\n <div class="editgrid-actions">\n <button type="button" class="btn btn-primary" ref="'+(null==(e=n.ref.saveRow)?"":e)+'">'+(null==(e=n.t(n.component.saveRow||"Save",{_userInput:!0}))?"":e)+"</button>\n ",n.component.removeRow&&(l+='\n <button type="button" class="btn btn-danger" ref="'+(null==(e=n.ref.cancelRow)?"":e)+'">'+(null==(e=n.t(n.component.removeRow||"Cancel",{_userInput:!0}))?"":e)+"</button>\n "),l+="\n </div>\n </td>\n "),l+="\n ",n.errors[o]&&(l+='\n <td class="editgrid-table-column">\n <div class="has-error">\n <div class="editgrid-row-error help-block">\n '+(null==(e=n.errors[o])?"":e)+"\n </div>\n </div>\n </td>\n "),l+="\n </tr>\n "}),l+="\n </tbody>\n ",n.footer&&(l+="\n <tfoot>\n <tr>\n "+(null==(e=n.footer)?"":e)+"\n </tr>\n <tfoot>\n "),l+="\n </table>\n </div>\n</div>\n"}},g={form:function(n){var e,l="";return Array.prototype.join,n.label.hidden||"bottom"===n.label.labelPosition||(l+="\n "+(null==(e=n.labelMarkup)?"":e)+"\n"),l+="\n\n",n.label.hidden&&n.label.className&&n.component.validate.required&&(l+='\n <label class="'+(null==(e=n.label.className)?"":e)+'"></label>\n'),l+="\n\n"+(null==(e=n.element)?"":e)+"\n\n",n.label.hidden||"bottom"!==n.label.labelPosition||(l+="\n "+(null==(e=n.labelMarkup)?"":e)+"\n"),l+="\n",n.component.description&&(l+='\n <div id="d-'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'" class="form-text text-muted">'+(null==(e=n.t(n.component.description,{_userInput:!0}))?"":e)+"</div>\n"),l+"\n"},align:function(n){var e,l="";return Array.prototype.join,l+='<div class="field-wrapper flex-fill\n '+(null==(e=n.isRightPosition?"field-wrapper--reverse":"")?"":e)+'">\n ',n.label.hidden||(l+='\n <div class="field-label\n '+(null==(e=n.isRightAlign?"field-label--right":"")?"":e)+'"\n style="'+(null==(e=n.labelStyles)?"":e)+'">\n '+(null==(e=n.labelMarkup)?"":e)+"\n </div>\n "),l+="\n\n ",n.label.hidden&&n.label.className&&n.component.validate.required&&(l+='\n <div class="field-label\n '+(null==(e=n.isRightAlign?"field-label--right":"")?"":e)+'"\n style="'+(null==(e=n.labelStyles)?"":e)+'">\n <label class="'+(null==(e=n.label.className)?"":e)+'"></label>\n </div>\n '),l+='\n\n <div class="field-content" style="'+(null==(e=n.contentStyles)?"":e)+'">\n '+(null==(e=n.element)?"":e)+"\n </div>\n</div>\n\n",n.component.description&&(l+='\n <div class="form-text text-muted">'+(null==(e=n.t(n.component.description,{_userInput:!0}))?"":e)+"</div>\n"),l+"\n"}},h={form:function(n){var e,l="";return Array.prototype.join,l+='<fieldset class="it-page-section" id="section-'+(null==(e=n.key)?"":e)+'">\n <div class="cmp-card mt-2">\n <div class="card has-bkg-grey shadow-sm p-big">\n ',n.component.legend&&(l+='\n <div ref="header" class="'+(null==(e=n.component.collapsible?"formio-clickable card-header border-0 p-0 mb-lg-30":"card-header border-0 p-0 mb-lg-30")?"":e)+'">\n <div class="d-flex">\n <h2 class="title-xxlarge mb-1">\n '+(null==(e=n.t(n.component.legend,{_userInput:!0}))?"":e)+"\n </h2>\n </div>\n ",(n.component.tooltip||n.tooltip)&&(l+='\n <p class="subtitle-small mb-0">'+(null==(e=n.t(n.component.tooltip||n.tooltip))?"":e)+"</p>\n "),l+="\n </div>\n "),l+="\n ",n.collapsed||(l+='\n <div class="card p-3 p-lg-4 fieldset-body" ref="'+(null==(e=n.nestedKey)?"":e)+'">\n '+(null==(e=n.children)?"":e)+"\n </div>\n "),l+"\n </div>\n </div>\n</fieldset>\n"}},w={form:function(n){var e,l="";return Array.prototype.join,n.options.vpat&&(l+='\n <span tabindex="-1" class="visually-hidden" id="invisible-'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'"></span>\n'),l+="\n",n.self.imageUpload?(l+="\n <div>\n ",n.files.forEach(function(t){l+='\n <div>\n <span>\n <img ref="fileImage" src="" alt="'+(null==(e=t.originalName||t.name)?"":e)+'" style="width:'+(null==(e=n.component.imageSize)?"":e)+'px">\n ',n.disabled||(l+='\n <i tabindex="0" class="'+(null==(e=n.iconClass("remove"))?"":e)+'" ref="removeLink"></i>\n '),l+="\n </span>\n </div>\n "}),l+="\n </div>\n"):(l+="\n ",n.options.vpat&&(l+="\n <div>"+(null==(e=n.component.filePattern&&"*"!==n.component.filePattern?n.t("Allowed file types: ")+n.component.filePattern:"Any file types are allowed")?"":e)+"</div>\n "),l+='\n <ul class="list-group list-group-striped">\n <li class="list-group-item list-group-header hidden-xs hidden-sm">\n <div class="row">\n <div class="col-md-'+(null==(e=n.columns.name)?"":e)+'"><strong>'+(null==(e=n.t("File Name"))?"":e)+'</strong></div>\n <div class="col-md-'+(null==(e=n.columns.size)?"":e)+'"><strong>'+(null==(e=n.t("Size"))?"":e)+"</strong></div>\n ",n.self.hasTypes&&(l+='\n <div class="col-md-'+(null==(e=n.columns.type)?"":e)+'"><strong>'+(null==(e=n.t("Type"))?"":e)+"</strong></div>\n "),l+='\n <div class="col-md-'+(null==(e=n.columns.actions)?"":e)+' justify-center">\n ',n.showSyncButton&&(l+='\n <button type="button"\n class="btn btn-primary btn-sm"\n ref="syncNow"\n ',(n.disabled||n.isSyncing)&&(l+="disabled=true"),l+="\n >"+(null==(e=n.isSyncing?n.t("Syncing..."):n.t("Sync Now"))?"":e)+"</button>\n "),l+="\n </div>\n </div>\n </li>\n ",n.files.forEach(function(t){l+='\n <li class="list-group-item">\n <div class="row">\n <div class="col-md-'+(null==(e=n.columns.name)?"":e)+'">\n ',n.component.uploadOnly?l+="\n "+(null==(e=t.originalName||t.name)?"":e)+"\n ":l+='\n <a href="'+(null==(e=t.url||"#")?"":e)+'" target="_blank" ref="fileLink">\n <span class="visually-hidden">'+(null==(e=n.t("Press to open "))?"":e)+"</span>"+(null==(e=t.originalName||t.name)?"":e)+"\n </a>\n ",l+='\n </div>\n <div class="col-md-'+(null==(e=n.columns.size)?"":e)+'">'+(null==(e=n.fileSize(t.size))?"":e)+"</div>\n ",n.self.hasTypes&&!n.disabled&&(l+='\n <div class="col-md-'+(null==(e=n.columns.type)?"":e)+'">\n <select class="file-type" ref="fileType">\n ',n.component.fileTypes.map(function(o){l+='\n <option class="test" value="'+(null==(e=o.value)?"":e)+'" ',o.label===t.fileType&&(l+='selected="selected"'),l+=">"+(null==(e=n.t(o.label))?"":e)+"</option>\n "}),l+="\n </select>\n </div>\n "),l+="\n ",n.self.hasTypes&&n.disabled&&(l+='\n <div class="col-md-'+(null==(e=n.columns.type)?"":e)+'">'+(null==(e=t.fileType)?"":e)+"</div>\n "),l+="\n ",n.disabled||(l+='\n <div class="col-md-'+(null==(e=n.columns.actions)?"":e)+' justify-center"><i tabindex="0" class="'+(null==(e=n.iconClass("remove"))?"":e)+'" ref="removeLink"></i></div>\n '),l+="\n </div>\n </li>\n "}),l+="\n ",n.filesToDelete.forEach(function(t){l+='\n <li class="list-group-item">\n <div class="row align-center">\n <div class="col-md-'+(null==(e=n.columns.name)?"":e)+'">\n <div>'+(null==(e=t.originalName||t.name)?"":e)+'</div>\n <div class="status text-'+(null==(e="error"===t.status?"danger":t.status)?"":e)+'">'+(null==(e=n.t(t.message))?"":e)+'</div>\n </div>\n <div class="col-md-'+(null==(e=n.columns.size)?"":e)+'">'+(null==(e=n.fileSize(t.size))?"":e)+"</div>\n ",n.self.hasTypes&&(l+='\n <div class="col-md-'+(null==(e=n.columns.type)?"":e)+'">\n <select class="file-type" ref="fileType">\n ',n.component.fileTypes.map(function(o){l+='\n <option class="test" value="'+(null==(e=o.value)?"":e)+'" ',o.label===t.fileType&&(l+='selected="selected"'),l+=">"+(null==(e=n.t(o.label))?"":e)+"</option>\n "}),l+="\n </select>\n </div>\n "),l+="\n ",n.isSyncing||"success"===t.status||(l+='\n <div class="col-md-'+(null==(e=n.columns.actions)?"":e)+' justify-center"><i tabindex="0" class="'+(null==(e=n.iconClass("arrow-counterclockwise"))?"":e)+'" ref="restoreFile"></i></div>\n '),l+="\n </div>\n </li>\n "}),l+="\n ",n.filesToUpload.forEach(function(t){l+='\n <li class="list-group-item">\n <div class="row align-center">\n <div class="col-md-'+(null==(e=n.columns.name)?"":e)+'">\n <div>'+(null==(e=t.originalName||t.name)?"":e)+"</div>\n ","progress"===t.status?l+='\n <div class="status progress">\n <div id="'+(null==(e=t.id)?"":e)+'" class="progress-bar" role="progressbar" aria-valuenow="'+(null==(e=t.progress)?"":e)+'" aria-valuemin="0" aria-valuemax="100" style="width: '+(null==(e=t.progress)?"":e)+'%" ref="progress">\n <span class="visually-hidden">'+(null==(e=t.progress)?"":e)+"% "+(null==(e=n.t("Complete"))?"":e)+"</span>\n </div>\n </div>\n ":l+='\n <div class="status text-'+(null==(e="error"===t.status?"danger":t.status)?"":e)+'">'+(null==(e=n.t(t.message))?"":e)+"</div>\n ",l+='\n </div>\n <div class="col-md-'+(null==(e=n.columns.size)?"":e)+'">'+(null==(e=n.fileSize(t.size))?"":e)+"</div>\n ",n.self.hasTypes&&(l+='\n <div class="col-md-'+(null==(e=n.columns.type)?"":e)+'">\n <select class="file-type" ref="fileType">\n ',n.component.fileTypes.map(function(o){l+='\n <option class="test" value="'+(null==(e=o.value)?"":e)+'" ',o.label===t.fileType&&(l+='selected="selected"'),l+=">"+(null==(e=n.t(o.label))?"":e)+"</option>\n "}),l+="\n </select>\n </div>\n "),l+="\n ","progress"===t.status?l+='\n <div class="col-md-'+(null==(e=n.columns.actions)?"":e)+' justify-center"><i id="abort-'+(null==(e=t.id)?"":e)+'" tabindex="0" class="'+(null==(e=n.iconClass("ban"))?"":e)+'"></i></div>\n ':n.isSyncing||"success"===t.status||(l+='\n <div class="col-md-'+(null==(e=n.columns.actions)?"":e)+' justify-center"><i tabindex="0" class="'+(null==(e=n.iconClass("remove"))?"":e)+'" ref="fileToSyncRemove"></i></div>\n '),l+="\n </div>\n </li>\n "}),l+="\n </ul>\n"),l+="\n",n.disabled||!n.component.multiple&&n.files.length||(l+="\n ",n.self.useWebViewCamera?l+='\n <div class="fileSelector">\n <button type="button" class="btn btn-primary" ref="galleryButton"><i class="'+(null==(e=n.iconClass("book"))?"":e)+'"></i> '+(null==(e=n.t("Gallery"))?"":e)+'</button>\n <button type="button" class="btn btn-primary" ref="cameraButton"><i class="'+(null==(e=n.iconClass("camera"))?"":e)+'"></i> '+(null==(e=n.t("Camera"))?"":e)+"</button>\n </div>\n ":n.self.cameraMode?l+='\n <div class="video-container">\n <video class="video" autoplay="true" ref="videoPlayer" tabindex="-1"></video>\n </div>\n <button type="button" class="btn btn-primary" ref="takePictureButton"><i class="'+(null==(e=n.iconClass("camera"))?"":e)+'"></i> '+(null==(e=n.t("Take Picture"))?"":e)+'</button>\n <button type="button" class="btn btn-primary" ref="toggleCameraMode">'+(null==(e=n.t("Switch to file upload"))?"":e)+"</button>\n ":(l+='\n <div class="fileSelector" ref="fileDrop" '+(null==(e=n.fileDropHidden?"hidden":"")?"":e)+">\n ",n.self.isMobile.any||(l+='\n <i class="'+(null==(e=n.iconClass("cloud-upload"))?"":e)+'"></i> '+(null==(e=n.t("Drop files to attach,"))?"":e)+"\n "),l+="\n ",n.self.imageUpload&&n.component.webcam&&(l+='\n <a href="#" ref="toggleCameraMode"><i class="'+(null==(e=n.iconClass("camera"))?"":e)+'"></i>'+(null==(e=n.t("Use Camera"))?"":e)+"</a>\n "+(null==(e=n.t("or"))?"":e)+"\n "),l+='\n <a href="#" ref="fileBrowse" class="browse">\n ',n.self.isMobile.any&&n.component.capture?(l+="\n ",n.component.filePattern&&n.component.filePattern.includes("video")?l+='\n <i class="'+(null==(e=n.iconClass("video"))?"":e)+'"></i>'+(null==(e=n.t("Capture Video"))?"":e)+"\n ":n.component.filePattern&&n.component.filePattern.includes("audio")?l+='\n <i class="'+(null==(e=n.iconClass("microphone"))?"":e)+'"></i>'+(null==(e=n.t("Capture Audio"))?"":e)+"\n ":l+='\n <i class="'+(null==(e=n.iconClass("camera"))?"":e)+'"></i>'+(null==(e=n.t("Capture Image"))?"":e)+"\n ",l+="\n "):l+='\n <i class="'+(null==(e=n.iconClass("folder-open"))?"":e)+'"></i>'+(null==(e=n.t("Browse Files"))?"":e)+"\n ",l+='\n <span class="visually-hidden">\n '+(null==(e=n.t("Browse to attach file for "+n.component.label+". "+(n.component.description?n.component.description+". ":"")+(n.component.filePattern&&"*"!==n.component.filePattern?n.t("Allowed file types: ")+n.component.filePattern:"Any file types are allowed")))?"":e)+'\n </span>\n </a>\n <div ref="fileProcessingLoader" class="loader-wrapper">\n <div class="loader text-center"></div>\n </div>\n </div>\n '),l+="\n"),l+="\n",n.component.storage&&!n.support.hasWarning||(l+='\n <div class="alert alert-warning">\n ',n.component.storage||(l+="\n <p>"+(null==(e=n.t("No storage has been set for this field. File uploads are disabled until storage is set up."))?"":e)+"</p>\n "),l+="\n ",n.support.filereader||(l+="\n <p>"+(null==(e=n.t("File API & FileReader API not supported."))?"":e)+"</p>\n "),l+="\n ",n.support.formdata||(l+="\n <p>"+(null==(e=n.t("XHR2's FormData is not supported."))?"":e)+"</p>\n "),l+="\n ",n.support.progress||(l+="\n <p>"+(null==(e=n.t("XHR2's upload progress isn't supported."))?"":e)+"</p>\n "),l+="\n </div>\n"),l+="\n"}},k={form:function(n){var e,l="";return Array.prototype.join,l+="<"+(null==(e=n.tag)?"":e)+' class="formio-component-htmlelement '+(null==(e=n.component.className)?"":e)+'" ref="html"\n ',n.attrs.forEach(function(n){l+="\n "+(null==(e=n.attr)?"":e)+'="'+(null==(e=n.value)?"":e)+'"\n '}),l+="\n>"+(null==(e=n.t(n.content))?"":e),n.singleTags&&-1!==n.singleTags.indexOf(n.tag)||(l+="</"+(null==(e=n.tag)?"":e)+">"),l+="\n"}},x={form:function(n){var e,l="";if(Array.prototype.join,l+='<div class="field">\n',(n.prefix||n.suffix)&&(l+='\n<div class="input-group">\n '),l+="\n ",n.prefix&&(l+='\n <div class="input-group-text" ref="prefix">\n ',n.prefix instanceof HTMLElement?l+="\n "+(null==(e=n.t(n.prefix.outerHTML,{_userInput:!0}))?"":e)+"\n ":l+="\n "+(null==(e=n.t(n.prefix,{_userInput:!0}))?"":e)+"\n ",l+="\n </div>\n "),l+="\n ",n.options.floatingLabels&&(l+='\n <div class="form-floating">\n '),l+="\n ",!n.component.editor&&!n.component.wysiwyg){for(var t in l+="\n <"+(null==(e=n.input.type)?"":e)+'\n ref="'+(null==(e=n.input.ref?n.input.ref:"input")?"":e)+'"\n ',n.input.attr)l+="\n "+(null==(e=t)?"":e)+'="'+(null==(e=n.input.attr[t])?"":e)+'"\n ';l+='\n id="'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'" placeholder="'+(null==(e=n.input.attr.placeholder)?"":e)+'"\n aria-labelledby="l-'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+" ",n.component.description&&(l+="d-"+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)),l+='"\n aria-required="'+(null==(e="input"!==n.input.ref&&n.input.ref?n.component.fields&&n.component.fields[n.input.ref]&&n.component.fields[n.input.ref].required||!1:n.component.validate.required)?"":e)+'"\n >'+(null==(e=n.input.content)?"":e)+"</"+(null==(e=n.input.type)?"":e)+">\n ",n.component.hideLabel||(l+='\n <label class="floating-label" for="'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'"\n id="l-'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'">'+(null==(e=n.t(n.component.label,{_userInput:!0}))?"":e)+"\n ",n.component.tooltip&&(l+='\n <i ref="tooltip" tabindex="0" class="'+(null==(e=n.iconClass("question-sign"))?"":e)+' text-muted" data-tooltip="'+(null==(e=n.component.tooltip)?"":e)+'"></i>\n '),l+="</label> \n "),l+="\n ",n.options.floatingLabels&&(l+='\n <label ref="label" class="col-form-label '+(null==(e=n.label.className)?"":e)+'"\n for="'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'"\n id="l-'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'"\n >'+(null==(e=n.t(n.component.label,{_userInput:!0}))?"":e)+"</label>\n "),l+="\n ",n.hasValueMaskInput&&(l+='\n <input ref="valueMaskInput" />\n '),l+="\n"}return l+="\n",(n.component.editor||n.component.wysiwyg)&&(l+='\n <div ref="input"></div>\n <label class="floating-label" for="'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'"\n id="l-'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'">'+(null==(e=n.t(n.component.label,{_userInput:!0}))?"":e)+"\n ",n.component.tooltip&&(l+='\n <i ref="tooltip" tabindex="0" class="'+(null==(e=n.iconClass("question-sign"))?"":e)+' text-muted" data-tooltip="'+(null==(e=n.component.tooltip)?"":e)+'"></i>\n '),l+="</label>\n"),l+="\n","datetime"===n.component.type&&(l+='\n<span aria-live="assertive" id="'+(null==(e=n.instance.id)?"":e)+'-liveRegion" class="visually-hidden" ref="liveRegion"></span>\n'),l+="\n",n.suffix&&(l+='\n <div class="input-group-text" ref="suffix">\n ',n.suffix instanceof HTMLElement?l+="\n "+(null==(e=n.t(n.suffix.outerHTML,{_userInput:!0}))?"":e)+"\n ":l+="\n "+(null==(e=n.t(n.suffix,{_userInput:!0}))?"":e)+"\n ",l+="\n </div>\n"),l+="\n",(n.prefix||n.suffix||n.options.floatingLabels)&&(l+="\n </div>\n"),l+="\n",(n.component.showCharCount||n.component.showWordCount)&&(l+='\n<div class="form-text {{ctx.component.description ? float-end : text-end">\n ',n.component.showCharCount&&(l+='\n <span class="text-muted" ref="charcount" aria-live="polite"></span>\n '),l+="\n ",n.component.showWordCount&&(l+='\n <span class="text-muted" ref="wordcount" aria-live="polite"></span>\n '),l+="\n</div>\n"),l+"\n</div>\n"},html:function(n){var e,l="";return Array.prototype.join,l+='<div ref="value">',n.value?l+=null==(e=n.value)?"":e:l+="-",l+"</div>\n"}},C={form:function(n){var e,l="";return Array.prototype.join,"email"===n.component.type||"textfield"===n.component.type||"number"===n.component.type||"phoneNumber"===n.component.type||"currency"===n.component.type||"textarea"===n.component.type||"dynamic_calendar"===n.component.type||"password"===n.component.type||"time"===n.component.type||"calendar"===n.component.type||"pagebreak"===n.component.type?l+="\n\n":(l+='\n\n<label\n ref="label"\n class="col-form-label '+(null==(e=n.label.className)?"":e)+'"\n for="'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'"\n id="l-'+(null==(e=n.instance.id)?"":e)+"-"+(null==(e=n.component.key)?"":e)+'"\n>\n '+(null==(e=n.t(n.component.label,{_userInput:!0}))?"":e)+"\n ","number"!==n.component.type&&"phoneNumber"!==n.component.type&&"currency"!==n.component.type||(l+='\n <span class="visually-hidden">, '+(null==(e=n.t("numeric