@processmaker/screen-builder 2.76.5 → 2.77.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3405,7 +3405,7 @@ module.exports = function () {
3405
3405
 
3406
3406
  "use strict";
3407
3407
 
3408
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/default-value-editor.vue?vue&type=template&id=172d71e1&scoped=true&
3408
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/default-value-editor.vue?vue&type=template&id=172d71e1&scoped=true&
3409
3409
  var cov_1xsmevxuaz = function () {
3410
3410
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/default-value-editor.vue";
3411
3411
  var hash = "71508c0b1f35d8ce38da2aad2b0c95a0e5266e17";
@@ -5236,7 +5236,7 @@ module.exports = function spread(callback) {
5236
5236
 
5237
5237
  "use strict";
5238
5238
 
5239
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-image.vue?vue&type=template&id=61f16f4e&scoped=true&
5239
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-image.vue?vue&type=template&id=61f16f4e&scoped=true&
5240
5240
  var cov_a4nxbjqwi = function () {
5241
5241
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/renderer/form-image.vue";
5242
5242
  var hash = "ba5be155fea2e957c0eb66be20cc070c74d1e960";
@@ -6933,7 +6933,7 @@ module.exports = baseAssignIn;
6933
6933
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es6.function.name.js
6934
6934
  var es6_function_name = __webpack_require__("7f7f");
6935
6935
 
6936
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/form-multiselect.vue?vue&type=template&id=fdbf3d58&
6936
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/form-multiselect.vue?vue&type=template&id=fdbf3d58&
6937
6937
  var cov_ecz9y31od = function () {
6938
6938
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/form-multiselect.vue";
6939
6939
  var hash = "43c2d5ee00fcf7de325c06ba86408dbd38267c0e";
@@ -10708,6 +10708,13 @@ module.exports = __webpack_require__("9e1e") ? Object.defineProperties : functio
10708
10708
  };
10709
10709
 
10710
10710
 
10711
+ /***/ }),
10712
+
10713
+ /***/ "14b1":
10714
+ /***/ (function(module, exports, __webpack_require__) {
10715
+
10716
+ // extracted by mini-css-extract-plugin
10717
+
10711
10718
  /***/ }),
10712
10719
 
10713
10720
  /***/ "1524":
@@ -23211,7 +23218,7 @@ $exports.store = store;
23211
23218
 
23212
23219
  "use strict";
23213
23220
 
23214
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-record-list.vue?vue&type=template&id=773218b4&
23221
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-record-list.vue?vue&type=template&id=773218b4&
23215
23222
  var cov_1dvilc790n = function () {
23216
23223
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/renderer/form-record-list.vue";
23217
23224
  var hash = "8e120ac5b39c30885fd8899d19fd47d60f5a06d5";
@@ -47333,7 +47340,7 @@ module.exports = createAssigner;
47333
47340
 
47334
47341
  "use strict";
47335
47342
 
47336
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/utils/multiple-uploads-checkbox.vue?vue&type=template&id=3ee96741&
47343
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/utils/multiple-uploads-checkbox.vue?vue&type=template&id=3ee96741&
47337
47344
  var cov_289hjb5i1r = function () {
47338
47345
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/utils/multiple-uploads-checkbox.vue";
47339
47346
  var hash = "0482834fabec14601e639d9398c680851d780a25";
@@ -60477,7 +60484,7 @@ module.exports = patchedExec;
60477
60484
  /* harmony import */ var _global_properties__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__("fed1");
60478
60485
  var cov_1kg5ifedfk = function () {
60479
60486
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/vue-form-builder.vue";
60480
- var hash = "5f360a2d29b441bfdfd200c2c859e4ca98b07847";
60487
+ var hash = "a31bac379932818bf62fb23fff9f7834b7d92297";
60481
60488
  var global = new Function("return this")();
60482
60489
  var gcv = "__coverage__";
60483
60490
  var coverageData = {
@@ -67759,10 +67766,10 @@ var cov_1kg5ifedfk = function () {
67759
67766
  mappings: ";AAiYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA",
67760
67767
  file: "vue-form-builder.vue",
67761
67768
  sourceRoot: "src/components",
67762
- sourcesContent: ["<template>\n <b-row class=\"h-100 m-0\">\n <!-- Controls -->\n <b-col class=\"overflow-hidden h-100 p-0 controls-column\">\n <b-card\n no-body\n class=\"h-100 rounded-0 border-top-0 border-bottom-0 border-left-0\"\n >\n <b-input-group size=\"sm\">\n <b-input-group-prepend>\n <b-input-group-text\n class=\"filter-icon border-left-0 border-top-0 rounded-0\"\n >\n <i class=\"fas fa-filter\" />\n </b-input-group-text>\n </b-input-group-prepend>\n\n <b-form-input\n v-model=\"filterQuery\"\n class=\"border-top-0 border-right-0 rounded-0\"\n type=\"text\"\n :placeholder=\"$t('Filter Controls')\"\n />\n </b-input-group>\n\n <b-card-body no-body class=\"p-0 overflow-auto\">\n <draggable\n v-if=\"renderControls\"\n id=\"controls\"\n v-model=\"filteredControls\"\n data-cy=\"controls\"\n v-bind=\"{\n sort: false,\n group: { name: 'controls', pull: 'clone', put: false }\n }\"\n :clone=\"cloneControl\"\n class=\"controls list-group w-auto list-group-flush\"\n >\n <b-list-group-item\n v-for=\"(element, index) in filteredControls\"\n :key=\"index\"\n :data-cy=\"'controls-' + element.component\"\n >\n <i v-if=\"element.config.icon\" :class=\"element.config.icon\" />\n <span v-html=\"element.config.svg\" class=\"svg-icon\"></span>\n {{ $t(element.label) }}\n </b-list-group-item>\n\n <li v-if=\"!filteredControls.length\" class=\"list-group-item\">\n <slot />\n </li>\n </draggable>\n </b-card-body>\n </b-card>\n </b-col>\n\n <!-- Renderer -->\n <b-col\n id=\"screen-container\"\n class=\"overflow-auto mh-100 ml-4 mr-4 p-0 d-flex flex-column position-relative pt-2\"\n >\n <b-input-group size=\"sm\" class=\"bg-white mt-3\">\n <b-form-select\n v-if=\"showToolbar\"\n v-model=\"currentPage\"\n class=\"form-control\"\n data-cy=\"toolbar-page\"\n >\n <option v-for=\"(data, page) in config\" :key=\"page\" :value=\"page\">\n {{ data.name }}\n </option>\n </b-form-select>\n\n <div v-if=\"showToolbar\">\n <b-button\n size=\"sm\"\n variant=\"secondary\"\n class=\"ml-1\"\n :title=\"$t('Edit Page Title')\"\n data-cy=\"toolbar-edit\"\n @click=\"openEditPageModal(currentPage)\"\n >\n <i class=\"far fa-edit\" />\n </b-button>\n\n <b-button\n size=\"sm\"\n variant=\"danger\"\n class=\"ml-1\"\n :title=\"$t('Delete Page')\"\n :disabled=\"!displayDelete\"\n data-cy=\"toolbar-remove\"\n @click=\"confirmDelete()\"\n >\n <i class=\"far fa-trash-alt\" />\n </b-button>\n\n <b-button\n v-b-modal.addPageModal\n size=\"sm\"\n variant=\"secondary\"\n class=\"ml-1 mr-1\"\n :title=\"$t('Add New Page')\"\n data-cy=\"toolbar-add\"\n @click=\"originalPageName = null\"\n >\n <i class=\"fas fa-plus\" />\n </b-button>\n </div>\n\n <b-button-group size=\"sm\" class=\"ml-1 ml-auto\">\n <b-button :disabled=\"!canUndo\" data-cy=\"toolbar-undo\" @click=\"undo\">{{\n $t(\"Undo\")\n }}</b-button>\n <b-button :disabled=\"!canRedo\" data-cy=\"toolbar-redo\" @click=\"redo\">{{\n $t(\"Redo\")\n }}</b-button>\n </b-button-group>\n\n <hr class=\"w-100\" />\n </b-input-group>\n\n <div\n v-if=\"isCurrentPageEmpty\"\n data-cy=\"screen-drop-zone\"\n class=\"w-100 d-flex justify-content-center align-items-center drag-placeholder text-center position-absolute rounded mt-4\"\n >\n {{ $t(\"Drag an element here\") }}\n </div>\n\n <draggable\n v-if=\"renderControls\"\n :key=\"editorContentKey\"\n data-cy=\"editor-content\"\n class=\"h-100\"\n ghost-class=\"form-control-ghost\"\n :value=\"config[currentPage].items\"\n v-bind=\"{\n group: { name: 'controls' },\n swapThreshold: 0.5\n }\"\n @input=\"updateConfig\"\n >\n <div\n v-for=\"(element, index) in config[currentPage].items\"\n :key=\"index\"\n class=\"control-item mt-4 mb-4\"\n :class=\"{\n selected: selected === element,\n hasError: hasError(element)\n }\"\n :selector=\"element.config.customCssSelector\"\n @click=\"inspect(element)\"\n >\n <div\n v-if=\"element.container\"\n class=\"card\"\n data-cy=\"screen-element-container\"\n @click=\"inspect(element)\"\n >\n <div\n v-if=\"selected === element\"\n class=\"card-header form-element-header d-flex align-items-center\"\n >\n <i class=\"fas fa-arrows-alt-v mr-1 text-muted\" />\n <i\n v-if=\"element.config.icon\"\n :class=\"element.config.icon\"\n class=\"mr-2 ml-1\"\n />\n {{ element.config.name || element.label || $t(\"Field Name\") }}\n <div class=\"ml-auto\">\n <button\n class=\"btn btn-sm btn-secondary mr-2\"\n :title=\"$t('Copy Control')\"\n @click=\"duplicateItem(index)\"\n >\n <i class=\"fas fa-copy text-light\" />\n </button>\n <button\n class=\"btn btn-sm btn-danger\"\n :title=\"$t('Delete Control')\"\n @click=\"deleteItem(index)\"\n >\n <i class=\"far fa-trash-alt text-light\" />\n </button>\n </div>\n </div>\n <component\n :is=\"element['editor-component']\"\n v-model=\"element.items\"\n :validation-errors=\"validationErrors\"\n class=\"card-body\"\n :class=\"elementCssClass(element)\"\n :selected=\"selected\"\n :config=\"element.config\"\n @inspect=\"inspect\"\n @update-state=\"updateState\"\n />\n </div>\n\n <div v-else class=\"card\" data-cy=\"screen-element-container\">\n <div\n v-if=\"selected === element\"\n class=\"card-header form-element-header d-flex align-items-center\"\n >\n <i class=\"fas fa-arrows-alt-v mr-1 text-muted\" />\n <i\n v-if=\"element.config.icon\"\n :class=\"element.config.icon\"\n class=\"mr-2 ml-1\"\n />\n {{ element.config.name || $t(\"Variable Name\") }}\n <div class=\"ml-auto\">\n <button\n class=\"btn btn-sm btn-secondary mr-2\"\n :title=\"$t('Copy Control')\"\n @click=\"duplicateItem(index)\"\n >\n <i class=\"fas fa-copy text-light\" />\n </button>\n <button\n class=\"btn btn-sm btn-danger\"\n :title=\"$t('Delete Control')\"\n @click=\"deleteItem(index)\"\n >\n <i class=\"far fa-trash-alt text-light\" />\n </button>\n </div>\n </div>\n <component\n v-bind=\"element.config\"\n :is=\"element['editor-component']\"\n :tabindex=\"element.config.interactive ? 0 : -1\"\n class=\"card-body m-0 pb-4 pt-4\"\n :class=\"[\n elementCssClass(element),\n { 'prevent-interaction': !element.config.interactive }\n ]\"\n @input=\"\n element.config.interactive\n ? (element.config.content = $event)\n : null\n \"\n @focusout.native=\"updateState\"\n />\n </div>\n </div>\n </draggable>\n </b-col>\n\n <!-- Inspector -->\n <b-col\n v-if=\"renderControls\"\n class=\"overflow-hidden h-100 p-0 inspector-column\"\n >\n <b-card\n no-body\n class=\"p-0 h-100 border-top-0 border-bottom-0 border-right-0 rounded-0\"\n >\n <b-card-body class=\"p-0 h-100 overflow-auto\">\n <template v-for=\"accordion in accordions\">\n <b-button\n v-if=\"getInspectorFields(accordion).length > 0\"\n :key=\"`${accordionName(accordion)}-button`\"\n variant=\"outline\"\n class=\"text-left card-header d-flex align-items-center w-100 outline-0 text-capitalize shadow-none\"\n :data-cy=\"`accordion-${accordionName(accordion).replace(\n ' ',\n ''\n )}`\"\n :accordion-name=\"`accordion-${accordionName(accordion).replace(\n ' ',\n ''\n )}`\"\n :is-open=\"accordion.open ? '1' : '0'\"\n @click=\"toggleAccordion(accordion)\"\n >\n <i class=\"fas fa-cog mr-2\" />\n {{ $t(accordionName(accordion)) }}\n <i\n class=\"fas fa-angle-down ml-auto\"\n :class=\"{ 'fas fa-angle-right': !accordion.open }\"\n />\n </b-button>\n <b-collapse\n :id=\"accordionName(accordion)\"\n :key=\"`${accordionName(accordion)}-collapse`\"\n v-model=\"accordion.open\"\n >\n <component\n :is=\"item.type\"\n v-for=\"(item, index) in getInspectorFields(accordion)\"\n :key=\"index\"\n v-model=\"inspection.config[item.field]\"\n :data-cy=\"'inspector-' + (item.field || item.config.name)\"\n v-bind=\"item.config\"\n :field-name=\"item.field\"\n :field-accordion=\"`accordion-${accordionName(accordion).replace(\n ' ',\n ''\n )}`\"\n :builder=\"builder\"\n :form-config=\"config\"\n :screen-type=\"screenType\"\n :current-page=\"currentPage\"\n :selected-control=\"selected\"\n class=\"border-bottom m-0 p-4\"\n @focusout.native=\"updateState\"\n @update-state=\"updateState\"\n @setName=\"inspection.config.name = $event\"\n />\n </b-collapse>\n </template>\n </b-card-body>\n </b-card>\n </b-col>\n\n <!-- Modals -->\n <b-modal\n id=\"addPageModal\"\n :ok-title=\"$t('Save')\"\n :cancel-title=\"$t('Cancel')\"\n cancel-variant=\"btn btn-outline-secondary\"\n ok-variant=\"btn btn-secondary ml-2\"\n :title=\"$t('Add New Page')\"\n header-close-content=\"&times;\"\n data-cy=\"add-page-modal\"\n @ok=\"addPage\"\n >\n <required />\n <form-input\n ref=\"addPageInput\"\n v-model=\"addPageName\"\n :name=\"$t('Page Name')\"\n :label=\"$t('Page Name') + ' *'\"\n :helper=\"$t('The name of the new page to add')\"\n validation=\"unique-page-name|required\"\n data-cy=\"add-page-name\"\n required\n aria-required=\"true\"\n />\n </b-modal>\n\n <b-modal\n ref=\"editPageModal\"\n :title=\"$t('Edit Page Title')\"\n :ok-title=\"$t('Save')\"\n :cancel-title=\"$t('Cancel')\"\n cancel-variant=\"btn btn-outline-secondary\"\n ok-variant=\"btn btn-secondary ml-2\"\n header-close-content=\"&times;\"\n @ok=\"editPage\"\n >\n <required />\n <form-input\n ref=\"editPageInput\"\n v-model=\"editPageName\"\n :name=\"$t('Page Name')\"\n :label=\"$t('Page Name') + ' *'\"\n :helper=\"$t('The new name of the page')\"\n validation=\"unique-page-name|required\"\n required\n aria-required=\"true\"\n />\n </b-modal>\n\n <b-modal\n ref=\"confirm\"\n :title=\"$t('Caution!')\"\n :ok-title=\"$t('Delete')\"\n :cancel-title=\"$t('Cancel')\"\n cancel-variant=\"btn btn-outline-secondary\"\n ok-variant=\"btn btn-secondary ml-2\"\n header-close-content=\"&times;\"\n @ok=\"deletePage\"\n @cancel=\"hideConfirmModal\"\n >\n <p>{{ confirmMessage }}</p>\n <div slot=\"modal-ok\">{{ $t(\"Delete\") }}</div>\n </b-modal>\n </b-row>\n</template>\n\n<script>\nimport draggable from \"vuedraggable\";\nimport _ from \"lodash\";\nimport {\n FormInput,\n FormSelectList,\n FormTextArea,\n FormCheckbox,\n FormDatePicker,\n FormHtmlEditor,\n FormHtmlViewer\n} from \"@processmaker/vue-form-elements\";\nimport HasColorProperty from \"../mixins/HasColorProperty\";\nimport * as renderer from \"./renderer\";\nimport * as inspector from \"./inspector\";\nimport \"@processmaker/vue-form-elements/dist/vue-form-elements.css\";\nimport accordions from \"./accordions\";\nimport { keyNameProperty } from \"../form-control-common-properties\";\nimport VariableNameGenerator from \"@/components/VariableNameGenerator\";\nimport testing from \"@/mixins/testing\";\nimport defaultValueEditor from \"./inspector/default-value-editor\";\nimport RequiredCheckbox from \"./utils/required-checkbox\";\nimport MultipleUploadsCheckbox from \"./utils/multiple-uploads-checkbox\";\nimport { formTypes } from \"@/global-properties\";\n\nconst Validator = require(\"validatorjs\");\n// To include another language in the Validator with variable processmaker\nconst globalObject = typeof window === \"undefined\" ? global : window;\n\nif (\n globalObject.ProcessMaker &&\n globalObject.ProcessMaker.user &&\n globalObject.ProcessMaker.user.lang\n) {\n Validator.useLang(globalObject.ProcessMaker.user.lang);\n}\n\n// Todo: Validation messages are not translated. These will need to be converted\n// to Validator.registerAsync() in order to get the $t translator.\n// Should also probably be converted to a mixin. These changes would then\n// require modifications to to App.vue and PM4 Core implementations\nValidator.register(\n \"columns-adds-to-12\",\n (value) => {\n const sum = value.reduce((total, options) => {\n return total + parseInt(options.content);\n }, 0);\n\n if (sum === 12) {\n return true;\n }\n return false;\n },\n \"Columns must add to 12\"\n);\n\nconst defaultConfig = [\n {\n name: \"Default\",\n items: []\n }\n];\n\nexport default {\n components: {\n draggable,\n FormInput,\n FormSelectList,\n FormCheckbox,\n FormTextArea,\n FormDatePicker,\n FormHtmlEditor,\n FormHtmlViewer,\n RequiredCheckbox,\n MultipleUploadsCheckbox,\n defaultValueEditor,\n ...inspector,\n ...renderer,\n },\n mixins: [HasColorProperty, testing],\n props: {\n renderControls: {\n type: Boolean,\n default: true\n },\n validationErrors: {\n type: Array\n },\n initialConfig: {\n type: Array\n },\n title: {\n type: String\n },\n screenType: {\n type: String,\n default: formTypes.form\n },\n screen: {\n type: Object\n }\n },\n data() {\n const config = this.initialConfig || defaultConfig;\n this.migrateConfig(config);\n const generator = new VariableNameGenerator();\n const variables = generator.GetVariableNames(config);\n\n if (this.title && config[0].name === \"Default\") {\n config[0].name = this.title;\n }\n\n return {\n currentPage: 0,\n selected: null,\n display: \"editor\",\n inspection: {},\n // Blank at start, assume the parent component will call addControl for each control\n controls: [],\n pageAddModal: false,\n addPageName: \"\",\n editPageIndex: null,\n editPageName: \"\",\n originalPageName: null,\n config,\n confirmMessage: \"\",\n pageDelete: 0,\n translated: [],\n showAssignment: false,\n showVariable: false,\n showDesign: false,\n filterQuery: \"\",\n accordions,\n variables,\n generator,\n variablesTree: [],\n language: \"en\",\n collator: null,\n editorContentKey: 0\n };\n },\n computed: {\n builder() {\n return this;\n },\n canUndo() {\n return this.$store.getters[\"undoRedoModule/canUndo\"];\n },\n canRedo() {\n return this.$store.getters[\"undoRedoModule/canRedo\"];\n },\n displayDelete() {\n return this.config.length > 1;\n },\n filteredControls() {\n const excludedLabels = [\"Bootstrap Wrapper\", \"Bootstrap Component\"];\n\n const filtered = this.controls.filter((control) => {\n return control.label.toLowerCase().includes(this.filterQuery.toLowerCase());\n });\n\n const excluded = filtered.filter((control) => {\n return excludedLabels.includes(control.label);\n });\n\n const included = filtered.filter((control) => {\n return !excludedLabels.includes(control.label);\n });\n\n const sorted = included.sort((a, b) => {\n return this.collator.compare(a.label, b.label);\n });\n\n return [...sorted, ...excluded].sort((a, b) => {\n const textA = a.label.toLowerCase();\n const textB = b.label.toLowerCase();\n if (textA < textB) {\n return -1;\n }\n return textA > textB ? 1 : 0;\n });\n },\n isCurrentPageEmpty() {\n return this.config[this.currentPage].items.length === 0;\n },\n showToolbar() {\n return this.screenType === formTypes.form;\n },\n \n },\n watch: {\n config: {\n handler() {\n this.checkForCaptchaInLoops();\n this.$emit(\"change\", this.config);\n },\n deep: true\n },\n currentPage() {\n this.inspect();\n },\n inspection(e) {\n if (this.translated.includes(e)) {\n // already translated, don't translate again!\n return;\n }\n for (const i in e.inspector) {\n e.inspector[i].config.label = this.$t(e.inspector[i].config.label);\n e.inspector[i].config.helper = this.$t(e.inspector[i].config.helper);\n if (e.inspector[i].config.options) {\n for (const io in e.inspector[i].config.options) {\n e.inspector[i].config.options[io].content = this.$t(\n e.inspector[i].config.options[io].content\n );\n }\n }\n }\n this.translated.push(e);\n }\n },\n created() {\n Validator.register(\n \"unique-page-name\",\n (value) => {\n const pageNames = this.config\n .map((config) => config.name)\n .filter((name) => name !== this.originalPageName);\n return !pageNames.includes(value);\n },\n this.$t(\"Must be unique\")\n );\n this.$store.dispatch(\"undoRedoModule/pushState\", {\n config: JSON.stringify(this.config),\n currentPage: this.currentPage\n });\n this.initiateLanguageSupport();\n },\n mounted() {\n this.checkForCaptchaInLoops();\n this.$root.$on(\"nested-screen-updated\", () => {\n this.checkForCaptchaInLoops();\n });\n },\n methods: {\n refreshContent() {\n this.editorContentKey++;\n },\n checkForCaptchaInLoops() {\n this.config.forEach((page) => {\n this.checkForCaptcha(page.items);\n });\n },\n checkForCaptcha(items, insideLoop = false, nestedScreen = null) {\n items.forEach((item) => {\n if (!item.items && item.component == \"Captcha\" && insideLoop) {\n if (nestedScreen && nestedScreen.config.screen) {\n this.$root.$emit(\"remove-nested\", nestedScreen.config.screen);\n nestedScreen.config.screen = null;\n globalObject.ProcessMaker.alert(\n this.$t(\n // eslint-disable-next-line max-len\n \"You are trying to place a nested screen within CAPTCHA elements inside a loop. CAPTCHA controls cannot be placed within a Loop control.\"\n ),\n \"danger\"\n );\n } else {\n items.splice(items.indexOf(item), 1);\n globalObject.ProcessMaker.alert(\n this.$t(\n \"CAPTCHA controls cannot be placed within a Loop control.\"\n ),\n \"danger\"\n );\n }\n }\n if (item.items) {\n this.checkForCaptcha(item.items, true, nestedScreen);\n }\n if (\n item.component === \"FormNestedScreen\" &&\n item.config.screen &&\n window.nestedScreens\n ) {\n const nestedScreenItems =\n window.nestedScreens[`id_${item.config.screen}`];\n if (nestedScreenItems) {\n nestedScreenItems.forEach((nestedScreenPage) => {\n this.checkForCaptcha(nestedScreenPage.items, insideLoop, item);\n });\n }\n }\n });\n },\n loadVariablesTree() {\n const definition = {\n config: this.$parent.config,\n computed: this.$parent.computed,\n customCSS: this.$parent.customCSS,\n watchers: this.$parent.watchers\n };\n this.variablesTree =\n this.$refs.treeOfVariables.getVariablesTree(definition);\n this.$refs.treeOfVariables.getVariablesTree({ config: [] });\n },\n accordionName(accordion) {\n return accordion.name instanceof Function\n ? accordion.name(this.inspection)\n : accordion.name;\n },\n toggleAccordion(accordion) {\n this.accordions.forEach((panel) => {\n if (panel !== accordion) {\n panel.open = false;\n }\n });\n accordion.open = !accordion.open;\n },\n openAccordion(accordion) {\n this.accordions.forEach((panel) => {\n panel.open = false;\n });\n accordion.open = true;\n },\n migrateConfig(config = this.config) {\n config.forEach((page) => this.replaceFormText(page.items));\n config.forEach((page) => this.migrateFormSubmit(page.items));\n config.forEach((page) => this.updateFieldNameValidation(page.items));\n config.forEach((page) =>\n this.removeDataVariableFromNestedScreens(page.items)\n );\n },\n updateFieldNameValidation(items) {\n items.forEach((item) => {\n if (item.inspector) {\n item.inspector.forEach((inspector) => {\n if (\n inspector.field === \"name\" &&\n \"validation\" in inspector.config &&\n inspector.config.name !== \"DataVariable\" &&\n item.component !== \"FileUpload\" &&\n item.component !== \"FormButton\"\n ) {\n inspector.config.validation = keyNameProperty.config.validation;\n }\n });\n }\n if (item.items instanceof Array) {\n this.replaceFormText(item.items);\n }\n });\n },\n removeDataVariableFromNestedScreens(items) {\n items.forEach((item) => {\n if (item.inspector) {\n const hasDataVariable = item.inspector.find(\n (inspector) => inspector.config.name === \"DataVariable\"\n );\n item.inspector = item.inspector.filter(\n (inspector) => inspector.config.name !== \"DataVariable\"\n );\n if (hasDataVariable) {\n delete item.config.name;\n }\n }\n });\n },\n replaceFormText(items) {\n items.forEach((item) => {\n if (item.component === \"FormText\") {\n item.component = \"FormHtmlEditor\";\n item[\"editor-component\"] = \"FormHtmlEditor\";\n const style =\n (item.config.fontSize\n ? `font-size: ${item.config.fontSize};`\n : \"\") +\n (item.config.fontWeight\n ? `font-weight: ${item.config.fontWeight};`\n : \"\") +\n (item.config.textAlign\n ? `text-align: ${item.config.textAlign};`\n : \"\");\n item.config = {\n content:\n \"<div style=\\\"\" + style + \"\\\">\" + item.config.label + \"</div>\",\n interactive: true\n };\n }\n if (item.items instanceof Array) {\n this.replaceFormText(item.items);\n }\n });\n },\n migrateFormSubmit(items) {\n items.forEach((item) => {\n if (item[\"editor-control\"] !== \"FormSubmit\") {\n item[\"editor-control\"] = item[\"editor-component\"];\n }\n\n if (item.config.event === \"submit\") {\n if (item[\"editor-component\"] === \"FormNestedScreen\") {\n // Old nested screens erroneously had an event key. Remove it here\n // and set the editor-control back to FormNestedScreen.\n delete item.config.event;\n item[\"editor-control\"] = \"FormNestedScreen\";\n item.config.name = \"Nested Screen\";\n } else if (item[\"editor-control\"] !== \"FormImage\") {\n item[\"editor-control\"] = \"FormSubmit\";\n }\n }\n if (item.config.event === \"pageNavigate\") {\n item[\"editor-control\"] = \"PageNavigation\";\n }\n if (\n item.items instanceof Array &&\n item.component === \"FormMultiColumn\"\n ) {\n item[\"editor-control\"] = \"FormMultiColumn\";\n item.items.forEach((column) => this.migrateFormSubmit(column));\n }\n });\n },\n getAllAccordionizedFields() {\n if (this._allAccordionizedFields) {\n return this._allAccordionizedFields;\n }\n this._allAccordionizedFields = this.accordions.flatMap((accordion) => {\n return accordion.fields.map((fieldName) => {\n if (typeof fieldName === \"string\") {\n return fieldName;\n }\n return fieldName.name;\n });\n });\n return this._allAccordionizedFields;\n },\n knownField(field) {\n return this.getAllAccordionizedFields().includes(field);\n },\n getInspectorFields(accordion) {\n if (!this.inspection.inspector) {\n return [];\n }\n\n const accordionFields = accordion.fields\n .filter((field) => {\n if (typeof field !== \"string\") {\n const { component } = this.inspection;\n const { showFor, hideFor } = field;\n\n if (showFor) {\n return showFor === component;\n }\n\n if (hideFor) {\n return hideFor !== component;\n }\n }\n\n return true;\n })\n .map((field) => {\n if (typeof field !== \"string\") {\n return field.name;\n }\n\n return field;\n });\n const control = this.controls.find(\n (control) =>\n control[\"editor-control\"] === this.inspection[\"editor-control\"]\n ) ||\n this.controls.find(\n (control) => control.component === this.inspection.component\n ) || { inspector: [] };\n return control.inspector.filter((input) => {\n if (accordionFields.includes(input.field)) {\n return true;\n }\n if (\n !this.knownField(input.field) &&\n accordion.name === \"Configuration\"\n ) {\n // If it's not a known inspector field from accordion.js and this is the\n // configuration accordion, then add it here\n return true;\n }\n return false;\n });\n },\n updateState() {\n this.$store.dispatch(\"undoRedoModule/pushState\", {\n config: JSON.stringify(this.config),\n currentPage: this.currentPage\n });\n },\n undo() {\n this.inspect();\n this.$store.dispatch(\"undoRedoModule/undo\");\n this.config = JSON.parse(\n this.$store.getters[\"undoRedoModule/currentState\"].config\n );\n this.currentPage = JSON.parse(\n this.$store.getters[\"undoRedoModule/currentState\"].currentPage\n );\n },\n redo() {\n this.inspect();\n this.$store.dispatch(\"undoRedoModule/redo\");\n this.config = JSON.parse(\n this.$store.getters[\"undoRedoModule/currentState\"].config\n );\n this.currentPage = JSON.parse(\n this.$store.getters[\"undoRedoModule/currentState\"].currentPage\n );\n },\n updateConfig(items) {\n this.config[this.currentPage].items = items;\n this.updateState();\n },\n hasError(element) {\n return this.validationErrors.some(({ item }) => item === element);\n },\n focusInspector(validation) {\n this.showConfiguration = true;\n this.currentPage = this.config.indexOf(validation.page);\n this.$nextTick(() => {\n this.inspect(validation.item);\n this.$nextTick(() => {\n const field = this.$el.querySelector(\n `[field-name=\"${validation.field}\"]`\n );\n if (field) {\n const accordion = this.$el.querySelector(\n `[accordion-name=\"${field.getAttribute(\"field-accordion\")}\"]`\n );\n accordion &&\n accordion.getAttribute(\"is-open\") === \"0\" &&\n accordion.click();\n field.focus instanceof Function && field.focus();\n }\n });\n });\n },\n confirmDelete() {\n this.confirmMessage = this.$t(\n \"Are you sure you want to delete {{item}}?\",\n { item: this.config[this.currentPage].name }\n );\n this.pageDelete = this.currentPage;\n this.$refs.confirm.show();\n },\n hideConfirmModal() {\n this.$refs.confirm.hide();\n },\n addControl(control) {\n this.controls.push(control);\n },\n deleteItem(index) {\n // Remove the item from the array in currentPage\n this.config[this.currentPage].items.splice(index, 1);\n this.inspection.inspector.splice(0, this.inspection.inspector.length);\n this.updateState();\n },\n duplicateItem(index) {\n const duplicate = _.cloneDeep(this.config[this.currentPage].items[index]);\n this.config[this.currentPage].items.push(duplicate);\n },\n openEditPageModal(index) {\n this.editPageIndex = index;\n const pageName = this.config[index].name;\n this.originalPageName = pageName;\n this.editPageName = pageName;\n this.$refs.editPageModal.show();\n },\n editPage(e) {\n if (this.$refs.editPageInput.validator.errorCount) {\n e.preventDefault();\n return;\n }\n this.config[this.editPageIndex].name = this.editPageName;\n this.updateState();\n },\n addPage(e) {\n if (this.$refs.addPageInput.validator.errorCount) {\n e.preventDefault();\n return;\n }\n this.config.push({ name: this.addPageName, items: [] });\n this.currentPage = this.config.length - 1;\n this.addPageName = \"\";\n this.updateState();\n },\n deletePage() {\n this.config.splice(this.pageDelete, 1);\n this.currentPage = this.pageDelete - 1 >= 0 ? this.pageDelete - 1 : 0;\n this.$store.dispatch(\"undoRedoModule/pushState\", {\n config: JSON.stringify(this.config),\n currentPage: this.currentPage,\n deletedPage: true\n });\n },\n inspect(element = {}) {\n this.inspection = element;\n this.selected = element;\n const defaultAccordion = this.accordions.find(\n (accordion) => this.getInspectorFields(accordion).length > 0\n );\n if (defaultAccordion) {\n this.openAccordion(defaultAccordion);\n }\n },\n // Cloning the control will ensure the config is not a copy of the observable but a plain javascript object\n // This will ensure each control in the editor has it's own config and it's not shared\n cloneControl(control) {\n const copy = {\n config: JSON.parse(JSON.stringify(control.config)),\n inspector: JSON.parse(JSON.stringify(control.inspector)),\n component: control.component,\n \"editor-component\": control[\"editor-component\"],\n \"editor-control\": control[\"editor-control\"],\n label: control.label,\n value: control.value\n };\n if (control.component === \"FormDatePicker\" && copy.config.phrases) {\n copy.config.phrases.ok = this.$t(copy.config.phrases.ok);\n copy.config.phrases.cancel = this.$t(copy.config.phrases.cancel);\n }\n copy.config.label = this.$t(copy.config.label);\n if (Array.isArray(copy.config.options)) {\n for (const io in copy.config.options) {\n copy.config.options[io].content = this.$t(\n copy.config.options[io].content\n );\n }\n }\n\n // If it's a container, let's add an items property, with the default of items in the control\n if (control.container) {\n copy.items = JSON.parse(JSON.stringify(control.items));\n copy.container = true;\n }\n\n // Generate Variable Name\n if (\n _.findIndex(control.inspector, keyNameProperty) !== -1 ||\n control.component === \"FormLoop\") {\n [this.variables, copy.config.name] = this.generator.generate(\n this.config,\n copy[\"editor-control\"] ? copy[\"editor-control\"] : copy.component\n );\n if (_.has(copy, \"config.settings.varname\")) {\n copy.config.settings.varname = copy.config.name;\n }\n }\n\n return copy;\n },\n initiateLanguageSupport() {\n if (document.documentElement.lang) {\n this.language = document.documentElement.lang;\n }\n this.collator = Intl.Collator(this.language);\n },\n }\n};\n</script>\n\n<style>\n.prevent-interaction {\n pointer-events: none;\n}\n\n.svg-icon > svg {\n height: 14px;\n}\n</style>\n\n<style lang=\"scss\" scoped>\n$header-bg: #f7f7f7;\n$side-bar-font-size: 0.875rem;\n\n.control-icon {\n width: 30px;\n font-size: 20px;\n\n img {\n height: 20px;\n }\n}\n\n.control-item {\n .delete {\n position: absolute;\n top: 0px;\n right: 0px;\n display: none;\n }\n\n &:hover {\n cursor: move;\n }\n\n &.selected {\n border-radius: 5px;\n cursor: move;\n }\n\n &:not(.selected) .card {\n border: none;\n }\n}\n\n.hasError {\n border: 1px solid red;\n border-radius: 0.25rem;\n\n .form-element-header {\n border-bottom: 1px solid red;\n color: red;\n }\n}\n\n.inspector-header {\n background: $header-bg;\n}\n\n.validation-panel {\n background: $header-bg;\n height: 10rem;\n width: 21.35rem;\n bottom: 3rem;\n}\n\n.validation__message {\n text-decoration: none;\n\n &:hover {\n background: rgba(51, 151, 225, 0.3);\n }\n}\n\n.controls-header {\n border-bottom: none;\n}\n\n.header-bg {\n background: $header-bg;\n}\n\n.controls {\n cursor: move;\n user-select: none;\n font-size: $side-bar-font-size;\n}\n\n.header-button {\n height: 38px;\n width: 38px;\n}\n\n.filter-icon {\n background-color: #e9ecef;\n}\n\n.controls-column {\n max-width: 185px;\n}\n\n.inspector-column {\n max-width: 265px;\n font-size: $side-bar-font-size;\n}\n\n.form-control-ghost {\n margin-bottom: 0;\n border-radius: 0.25rem;\n}\n\n.drag-placeholder {\n height: 8rem;\n top: 4rem;\n border: 1px dashed rgba(0, 0, 0, 0.125);\n}\n</style>\n"]
67769
+ sourcesContent: ["<template>\n <b-row class=\"h-100 m-0\">\n <!-- Controls -->\n <b-col class=\"overflow-hidden h-100 p-0 controls-column\">\n <b-card\n no-body\n class=\"h-100 rounded-0 border-top-0 border-bottom-0 border-left-0\"\n >\n <b-input-group size=\"sm\">\n <b-input-group-prepend>\n <b-input-group-text\n class=\"filter-icon border-left-0 border-top-0 rounded-0\"\n >\n <i class=\"fas fa-filter\" />\n </b-input-group-text>\n </b-input-group-prepend>\n\n <b-form-input\n v-model=\"filterQuery\"\n class=\"border-top-0 border-right-0 rounded-0\"\n type=\"text\"\n :placeholder=\"$t('Filter Controls')\"\n />\n </b-input-group>\n\n <b-card-body no-body class=\"p-0 overflow-auto\">\n <draggable\n v-if=\"renderControls\"\n id=\"controls\"\n v-model=\"filteredControls\"\n data-cy=\"controls\"\n v-bind=\"{\n sort: false,\n group: { name: 'controls', pull: 'clone', put: false }\n }\"\n :clone=\"cloneControl\"\n class=\"controls list-group w-auto list-group-flush\"\n >\n <b-list-group-item\n v-for=\"(element, index) in filteredControls\"\n :key=\"index\"\n :data-cy=\"'controls-' + element.component\"\n >\n <i v-if=\"element.config.icon\" :class=\"element.config.icon\" />\n <span v-html=\"element.config.svg\" class=\"svg-icon\"></span>\n {{ $t(element.label) }}\n </b-list-group-item>\n\n <li v-if=\"!filteredControls.length\" class=\"list-group-item\">\n <slot />\n </li>\n </draggable>\n </b-card-body>\n </b-card>\n </b-col>\n\n <!-- Renderer -->\n <b-col\n id=\"screen-container\"\n class=\"overflow-auto mh-100 ml-4 mr-4 p-0 d-flex flex-column position-relative pt-2\"\n >\n <b-input-group size=\"sm\" class=\"bg-white mt-3\">\n <b-form-select\n v-if=\"showToolbar\"\n v-model=\"currentPage\"\n class=\"form-control\"\n data-cy=\"toolbar-page\"\n >\n <option v-for=\"(data, page) in config\" :key=\"page\" :value=\"page\">\n {{ data.name }}\n </option>\n </b-form-select>\n\n <div v-if=\"showToolbar\">\n <b-button\n size=\"sm\"\n variant=\"secondary\"\n class=\"ml-1\"\n :title=\"$t('Edit Page Title')\"\n data-cy=\"toolbar-edit\"\n @click=\"openEditPageModal(currentPage)\"\n >\n <i class=\"far fa-edit\" />\n </b-button>\n\n <b-button\n size=\"sm\"\n variant=\"danger\"\n class=\"ml-1\"\n :title=\"$t('Delete Page')\"\n :disabled=\"!displayDelete\"\n data-cy=\"toolbar-remove\"\n @click=\"confirmDelete()\"\n >\n <i class=\"far fa-trash-alt\" />\n </b-button>\n\n <b-button\n v-b-modal.addPageModal\n size=\"sm\"\n variant=\"secondary\"\n class=\"ml-1 mr-1\"\n :title=\"$t('Add New Page')\"\n data-cy=\"toolbar-add\"\n @click=\"originalPageName = null\"\n >\n <i class=\"fas fa-plus\" />\n </b-button>\n </div>\n\n <b-button-group size=\"sm\" class=\"ml-1 ml-auto\">\n <b-button :disabled=\"!canUndo\" data-cy=\"toolbar-undo\" @click=\"undo\">{{\n $t(\"Undo\")\n }}</b-button>\n <b-button :disabled=\"!canRedo\" data-cy=\"toolbar-redo\" @click=\"redo\">{{\n $t(\"Redo\")\n }}</b-button>\n </b-button-group>\n\n <hr class=\"w-100\" />\n </b-input-group>\n\n <div\n v-if=\"isCurrentPageEmpty\"\n data-cy=\"screen-drop-zone\"\n class=\"w-100 d-flex justify-content-center align-items-center drag-placeholder text-center position-absolute rounded mt-4\"\n >\n {{ $t(\"Drag an element here\") }}\n </div>\n\n <draggable\n v-if=\"renderControls\"\n :key=\"editorContentKey\"\n data-cy=\"editor-content\"\n class=\"h-100\"\n ghost-class=\"form-control-ghost\"\n :value=\"config[currentPage].items\"\n v-bind=\"{\n group: { name: 'controls' },\n swapThreshold: 0.5\n }\"\n @input=\"updateConfig\"\n >\n <div\n v-for=\"(element, index) in config[currentPage].items\"\n :key=\"index\"\n class=\"control-item mt-4 mb-4\"\n :class=\"{\n selected: selected === element,\n hasError: hasError(element)\n }\"\n :selector=\"element.config.customCssSelector\"\n @click=\"inspect(element)\"\n >\n <div\n v-if=\"element.container\"\n class=\"card\"\n data-cy=\"screen-element-container\"\n @click=\"inspect(element)\"\n >\n <div\n v-if=\"selected === element\"\n class=\"card-header form-element-header d-flex align-items-center\"\n >\n <i class=\"fas fa-arrows-alt-v mr-1 text-muted\" />\n <i\n v-if=\"element.config.icon\"\n :class=\"element.config.icon\"\n class=\"mr-2 ml-1\"\n />\n {{ element.config.name || element.label || $t(\"Field Name\") }}\n <div class=\"ml-auto\">\n <button\n class=\"btn btn-sm btn-secondary mr-2\"\n :title=\"$t('Copy Control')\"\n @click=\"duplicateItem(index)\"\n >\n <i class=\"fas fa-copy text-light\" />\n </button>\n <button\n class=\"btn btn-sm btn-danger\"\n :title=\"$t('Delete Control')\"\n @click=\"deleteItem(index)\"\n >\n <i class=\"far fa-trash-alt text-light\" />\n </button>\n </div>\n </div>\n <component\n :is=\"element['editor-component']\"\n v-model=\"element.items\"\n :validation-errors=\"validationErrors\"\n class=\"card-body\"\n :class=\"elementCssClass(element)\"\n :selected=\"selected\"\n :config=\"element.config\"\n @inspect=\"inspect\"\n @update-state=\"updateState\"\n />\n </div>\n\n <div v-else class=\"card\" data-cy=\"screen-element-container\">\n <div\n v-if=\"selected === element\"\n class=\"card-header form-element-header d-flex align-items-center\"\n >\n <i class=\"fas fa-arrows-alt-v mr-1 text-muted\" />\n <i\n v-if=\"element.config.icon\"\n :class=\"element.config.icon\"\n class=\"mr-2 ml-1\"\n />\n {{ element.config.name || $t(\"Variable Name\") }}\n <div class=\"ml-auto\">\n <button\n class=\"btn btn-sm btn-secondary mr-2\"\n :title=\"$t('Copy Control')\"\n @click=\"duplicateItem(index)\"\n >\n <i class=\"fas fa-copy text-light\" />\n </button>\n <button\n class=\"btn btn-sm btn-danger\"\n :title=\"$t('Delete Control')\"\n @click=\"deleteItem(index)\"\n >\n <i class=\"far fa-trash-alt text-light\" />\n </button>\n </div>\n </div>\n <component\n v-bind=\"element.config\"\n :is=\"element['editor-component']\"\n :tabindex=\"element.config.interactive ? 0 : -1\"\n class=\"card-body m-0 pb-4 pt-4\"\n :class=\"[\n elementCssClass(element),\n { 'prevent-interaction': !element.config.interactive }\n ]\"\n @input=\"\n element.config.interactive\n ? (element.config.content = $event)\n : null\n \"\n @focusout.native=\"updateState\"\n />\n </div>\n </div>\n </draggable>\n </b-col>\n\n <!-- Inspector -->\n <b-col\n v-if=\"renderControls\"\n class=\"overflow-hidden h-100 p-0 inspector-column\"\n >\n <b-card\n no-body\n class=\"p-0 h-100 border-top-0 border-bottom-0 border-right-0 rounded-0\"\n >\n <b-card-body class=\"p-0 h-100 overflow-auto\">\n <template v-for=\"accordion in accordions\">\n <b-button\n v-if=\"getInspectorFields(accordion).length > 0\"\n :key=\"`${accordionName(accordion)}-button`\"\n variant=\"outline\"\n class=\"text-left card-header d-flex align-items-center w-100 outline-0 text-capitalize shadow-none\"\n :data-cy=\"`accordion-${accordionName(accordion).replace(\n ' ',\n ''\n )}`\"\n :accordion-name=\"`accordion-${accordionName(accordion).replace(\n ' ',\n ''\n )}`\"\n :is-open=\"accordion.open ? '1' : '0'\"\n @click=\"toggleAccordion(accordion)\"\n >\n <i class=\"fas fa-cog mr-2\" />\n {{ $t(accordionName(accordion)) }}\n <i\n class=\"fas fa-angle-down ml-auto\"\n :class=\"{ 'fas fa-angle-right': !accordion.open }\"\n />\n </b-button>\n <b-collapse\n :id=\"accordionName(accordion)\"\n :key=\"`${accordionName(accordion)}-collapse`\"\n v-model=\"accordion.open\"\n >\n <component\n :is=\"item.type\"\n v-for=\"(item, index) in getInspectorFields(accordion)\"\n :key=\"index\"\n v-model=\"inspection.config[item.field]\"\n :data-cy=\"'inspector-' + (item.field || item.config.name)\"\n v-bind=\"item.config\"\n :field-name=\"item.field\"\n :field-accordion=\"`accordion-${accordionName(accordion).replace(\n ' ',\n ''\n )}`\"\n :builder=\"builder\"\n :form-config=\"config\"\n :screen-type=\"screenType\"\n :current-page=\"currentPage\"\n :selected-control=\"selected\"\n class=\"border-bottom m-0 p-4\"\n @focusout.native=\"updateState\"\n @update-state=\"updateState\"\n @setName=\"inspection.config.name = $event\"\n />\n </b-collapse>\n </template>\n </b-card-body>\n </b-card>\n </b-col>\n\n <!-- Modals -->\n <b-modal\n id=\"addPageModal\"\n :ok-title=\"$t('Save')\"\n :cancel-title=\"$t('Cancel')\"\n cancel-variant=\"btn btn-outline-secondary\"\n ok-variant=\"btn btn-secondary ml-2\"\n :title=\"$t('Add New Page')\"\n header-close-content=\"&times;\"\n data-cy=\"add-page-modal\"\n @ok=\"addPage\"\n >\n <required />\n <form-input\n ref=\"addPageInput\"\n v-model=\"addPageName\"\n :name=\"$t('Page Name')\"\n :label=\"$t('Page Name') + ' *'\"\n :helper=\"$t('The name of the new page to add')\"\n validation=\"unique-page-name|required\"\n data-cy=\"add-page-name\"\n required\n aria-required=\"true\"\n />\n </b-modal>\n\n <b-modal\n ref=\"editPageModal\"\n :title=\"$t('Edit Page Title')\"\n :ok-title=\"$t('Save')\"\n :cancel-title=\"$t('Cancel')\"\n cancel-variant=\"btn btn-outline-secondary\"\n ok-variant=\"btn btn-secondary ml-2\"\n header-close-content=\"&times;\"\n @ok=\"editPage\"\n >\n <required />\n <form-input\n ref=\"editPageInput\"\n v-model=\"editPageName\"\n :name=\"$t('Page Name')\"\n :label=\"$t('Page Name') + ' *'\"\n :helper=\"$t('The new name of the page')\"\n validation=\"unique-page-name|required\"\n required\n aria-required=\"true\"\n />\n </b-modal>\n\n <b-modal\n ref=\"confirm\"\n :title=\"$t('Caution!')\"\n :ok-title=\"$t('Delete')\"\n :cancel-title=\"$t('Cancel')\"\n cancel-variant=\"btn btn-outline-secondary\"\n ok-variant=\"btn btn-secondary ml-2\"\n header-close-content=\"&times;\"\n @ok=\"deletePage\"\n @cancel=\"hideConfirmModal\"\n >\n <p>{{ confirmMessage }}</p>\n <div slot=\"modal-ok\">{{ $t(\"Delete\") }}</div>\n </b-modal>\n </b-row>\n</template>\n\n<script>\nimport draggable from \"vuedraggable\";\nimport _ from \"lodash\";\nimport {\n FormInput,\n FormSelectList,\n FormTextArea,\n FormCheckbox,\n FormDatePicker,\n FormHtmlEditor,\n FormHtmlViewer\n} from \"@processmaker/vue-form-elements\";\nimport HasColorProperty from \"../mixins/HasColorProperty\";\nimport * as renderer from \"./renderer\";\nimport * as inspector from \"./inspector\";\nimport \"@processmaker/vue-form-elements/dist/vue-form-elements.css\";\nimport accordions from \"./accordions\";\nimport { keyNameProperty } from \"../form-control-common-properties\";\nimport VariableNameGenerator from \"@/components/VariableNameGenerator\";\nimport testing from \"@/mixins/testing\";\nimport defaultValueEditor from \"./inspector/default-value-editor\";\nimport RequiredCheckbox from \"./utils/required-checkbox\";\nimport MultipleUploadsCheckbox from \"./utils/multiple-uploads-checkbox\";\nimport { formTypes } from \"@/global-properties\";\n\nconst Validator = require(\"validatorjs\");\n// To include another language in the Validator with variable processmaker\nconst globalObject = typeof window === \"undefined\" ? global : window;\n\nif (\n globalObject.ProcessMaker &&\n globalObject.ProcessMaker.user &&\n globalObject.ProcessMaker.user.lang\n) {\n Validator.useLang(globalObject.ProcessMaker.user.lang);\n}\n\n// Todo: Validation messages are not translated. These will need to be converted\n// to Validator.registerAsync() in order to get the $t translator.\n// Should also probably be converted to a mixin. These changes would then\n// require modifications to to App.vue and PM4 Core implementations\nValidator.register(\n \"columns-adds-to-12\",\n (value) => {\n const sum = value.reduce((total, options) => {\n return total + parseInt(options.content);\n }, 0);\n\n if (sum === 12) {\n return true;\n }\n return false;\n },\n \"Columns must add to 12\"\n);\n\nconst defaultConfig = [\n {\n name: \"Default\",\n items: []\n }\n];\n\nexport default {\n components: {\n draggable,\n FormInput,\n FormSelectList,\n FormCheckbox,\n FormTextArea,\n FormDatePicker,\n FormHtmlEditor,\n FormHtmlViewer,\n RequiredCheckbox,\n MultipleUploadsCheckbox,\n defaultValueEditor,\n ...inspector,\n ...renderer,\n },\n mixins: [HasColorProperty, testing],\n props: {\n renderControls: {\n type: Boolean,\n default: true\n },\n validationErrors: {\n type: Array\n },\n initialConfig: {\n type: Array\n },\n title: {\n type: String\n },\n screenType: {\n type: String,\n default: formTypes.form\n },\n screen: {\n type: Object\n }\n },\n data() {\n const config = this.initialConfig || defaultConfig;\n this.migrateConfig(config);\n const generator = new VariableNameGenerator();\n const variables = generator.GetVariableNames(config);\n\n if (this.title && config[0].name === \"Default\") {\n config[0].name = this.title;\n }\n\n return {\n currentPage: 0,\n selected: null,\n display: \"editor\",\n inspection: {},\n // Blank at start, assume the parent component will call addControl for each control\n controls: [],\n pageAddModal: false,\n addPageName: \"\",\n editPageIndex: null,\n editPageName: \"\",\n originalPageName: null,\n config,\n confirmMessage: \"\",\n pageDelete: 0,\n translated: [],\n showAssignment: false,\n showVariable: false,\n showDesign: false,\n filterQuery: \"\",\n accordions,\n variables,\n generator,\n variablesTree: [],\n language: \"en\",\n collator: null,\n editorContentKey: 0\n };\n },\n computed: {\n builder() {\n return this;\n },\n canUndo() {\n return this.$store.getters[\"undoRedoModule/canUndo\"];\n },\n canRedo() {\n return this.$store.getters[\"undoRedoModule/canRedo\"];\n },\n displayDelete() {\n return this.config.length > 1;\n },\n filteredControls() {\n const excludedLabels = [\"Bootstrap Wrapper\", \"Bootstrap Component\"];\n\n const filtered = this.controls.filter((control) => {\n return control.label.toLowerCase().includes(this.filterQuery.toLowerCase());\n });\n\n const excluded = filtered.filter((control) => {\n return excludedLabels.includes(control.label);\n });\n\n const included = filtered.filter((control) => {\n return !excludedLabels.includes(control.label);\n });\n\n const sorted = included.sort((a, b) => {\n return this.collator.compare(a.label, b.label);\n });\n\n return [...sorted, ...excluded].sort((a, b) => {\n const textA = a.label.toLowerCase();\n const textB = b.label.toLowerCase();\n if (textA < textB) {\n return -1;\n }\n return textA > textB ? 1 : 0;\n });\n },\n isCurrentPageEmpty() {\n return this.config[this.currentPage].items.length === 0;\n },\n showToolbar() {\n return this.screenType === formTypes.form;\n },\n \n },\n watch: {\n config: {\n handler() {\n this.checkForCaptchaInLoops();\n this.$emit(\"change\", this.config);\n },\n deep: true\n },\n currentPage() {\n this.inspect();\n },\n inspection(e) {\n if (this.translated.includes(e)) {\n // already translated, don't translate again!\n return;\n }\n for (const i in e.inspector) {\n e.inspector[i].config.label = this.$t(e.inspector[i].config.label);\n e.inspector[i].config.helper = this.$t(e.inspector[i].config.helper);\n if (e.inspector[i].config.options) {\n for (const io in e.inspector[i].config.options) {\n e.inspector[i].config.options[io].content = this.$t(\n e.inspector[i].config.options[io].content\n );\n }\n }\n }\n this.translated.push(e);\n }\n },\n created() {\n Validator.register(\n \"unique-page-name\",\n (value) => {\n const pageNames = this.config\n .map((config) => config.name)\n .filter((name) => name !== this.originalPageName);\n return !pageNames.includes(value);\n },\n this.$t(\"Must be unique\")\n );\n this.$store.dispatch(\"undoRedoModule/pushState\", {\n config: JSON.stringify(this.config),\n currentPage: this.currentPage\n });\n this.initiateLanguageSupport();\n },\n mounted() {\n this.checkForCaptchaInLoops();\n this.$root.$on(\"nested-screen-updated\", () => {\n this.checkForCaptchaInLoops();\n });\n },\n methods: {\n refreshContent() {\n this.editorContentKey++;\n },\n checkForCaptchaInLoops() {\n this.config.forEach((page) => {\n this.checkForCaptcha(page.items);\n });\n },\n checkForCaptcha(items, insideLoop = false, nestedScreen = null) {\n items.forEach((item) => {\n if (!item.items && item.component == \"Captcha\" && insideLoop) {\n if (nestedScreen && nestedScreen.config.screen) {\n this.$root.$emit(\"remove-nested\", nestedScreen.config.screen);\n nestedScreen.config.screen = null;\n globalObject.ProcessMaker.alert(\n this.$t(\n // eslint-disable-next-line max-len\n \"You are trying to place a nested screen within CAPTCHA elements inside a loop. CAPTCHA controls cannot be placed within a Loop control.\"\n ),\n \"danger\"\n );\n } else {\n items.splice(items.indexOf(item), 1);\n globalObject.ProcessMaker.alert(\n this.$t(\n \"CAPTCHA controls cannot be placed within a Loop control.\"\n ),\n \"danger\"\n );\n }\n }\n if (item.items) {\n this.checkForCaptcha(item.items, true, nestedScreen);\n }\n if (\n item.component === \"FormNestedScreen\" &&\n item.config.screen &&\n window.nestedScreens\n ) {\n const nestedScreenItems =\n window.nestedScreens[`id_${item.config.screen}`];\n if (nestedScreenItems) {\n nestedScreenItems.forEach((nestedScreenPage) => {\n this.checkForCaptcha(nestedScreenPage.items, insideLoop, item);\n });\n }\n }\n });\n },\n loadVariablesTree() {\n const definition = {\n config: this.$parent.config,\n computed: this.$parent.computed,\n customCSS: this.$parent.customCSS,\n watchers: this.$parent.watchers\n };\n this.variablesTree =\n this.$refs.treeOfVariables.getVariablesTree(definition);\n this.$refs.treeOfVariables.getVariablesTree({ config: [] });\n },\n accordionName(accordion) {\n return accordion.name instanceof Function\n ? accordion.name(this.inspection)\n : accordion.name;\n },\n toggleAccordion(accordion) {\n this.accordions.forEach((panel) => {\n if (panel !== accordion) {\n panel.open = false;\n }\n });\n accordion.open = !accordion.open;\n },\n openAccordion(accordion) {\n this.accordions.forEach((panel) => {\n panel.open = false;\n });\n accordion.open = true;\n },\n migrateConfig(config = this.config) {\n config.forEach((page) => this.replaceFormText(page.items));\n config.forEach((page) => this.migrateFormSubmit(page.items));\n config.forEach((page) => this.updateFieldNameValidation(page.items));\n config.forEach((page) =>\n this.removeDataVariableFromNestedScreens(page.items)\n );\n },\n updateFieldNameValidation(items) {\n items.forEach((item) => {\n if (item.inspector) {\n item.inspector.forEach((inspector) => {\n if (\n inspector.field === \"name\" &&\n \"validation\" in inspector.config &&\n inspector.config.name !== \"DataVariable\" &&\n item.component !== \"FileUpload\" &&\n item.component !== \"FormButton\"\n ) {\n inspector.config.validation = keyNameProperty.config.validation;\n }\n });\n }\n if (item.items instanceof Array) {\n this.replaceFormText(item.items);\n }\n });\n },\n removeDataVariableFromNestedScreens(items) {\n items.forEach((item) => {\n if (item.inspector) {\n const hasDataVariable = item.inspector.find(\n (inspector) => inspector.config.name === \"DataVariable\"\n );\n item.inspector = item.inspector.filter(\n (inspector) => inspector.config.name !== \"DataVariable\"\n );\n if (hasDataVariable) {\n delete item.config.name;\n }\n }\n });\n },\n replaceFormText(items) {\n items.forEach((item) => {\n if (item.component === \"FormText\") {\n item.component = \"FormHtmlEditor\";\n item[\"editor-component\"] = \"FormHtmlEditor\";\n const style =\n (item.config.fontSize\n ? `font-size: ${item.config.fontSize};`\n : \"\") +\n (item.config.fontWeight\n ? `font-weight: ${item.config.fontWeight};`\n : \"\") +\n (item.config.textAlign\n ? `text-align: ${item.config.textAlign};`\n : \"\");\n item.config = {\n content:\n \"<div style=\\\"\" + style + \"\\\">\" + item.config.label + \"</div>\",\n interactive: true\n };\n }\n if (item.items instanceof Array) {\n this.replaceFormText(item.items);\n }\n });\n },\n migrateFormSubmit(items) {\n items.forEach((item) => {\n if (item[\"editor-control\"] !== \"FormSubmit\") {\n item[\"editor-control\"] = item[\"editor-component\"];\n }\n\n if (item.config.event === \"submit\") {\n if (item[\"editor-component\"] === \"FormNestedScreen\") {\n // Old nested screens erroneously had an event key. Remove it here\n // and set the editor-control back to FormNestedScreen.\n delete item.config.event;\n item[\"editor-control\"] = \"FormNestedScreen\";\n item.config.name = \"Nested Screen\";\n } else if (item[\"editor-control\"] !== \"FormImage\") {\n item[\"editor-control\"] = \"FormSubmit\";\n }\n }\n if (item.config.event === \"pageNavigate\") {\n item[\"editor-control\"] = \"PageNavigation\";\n }\n if (\n item.items instanceof Array &&\n item.component === \"FormMultiColumn\"\n ) {\n item[\"editor-control\"] = \"FormMultiColumn\";\n item.items.forEach((column) => this.migrateFormSubmit(column));\n }\n });\n },\n getAllAccordionizedFields() {\n if (this._allAccordionizedFields) {\n return this._allAccordionizedFields;\n }\n this._allAccordionizedFields = this.accordions.flatMap((accordion) => {\n return accordion.fields.map((fieldName) => {\n if (typeof fieldName === \"string\") {\n return fieldName;\n }\n return fieldName.name;\n });\n });\n return this._allAccordionizedFields;\n },\n knownField(field) {\n return this.getAllAccordionizedFields().includes(field);\n },\n getInspectorFields(accordion) {\n if (!this.inspection.inspector) {\n return [];\n }\n\n const accordionFields = accordion.fields\n .filter((field) => {\n if (typeof field !== \"string\") {\n const { component } = this.inspection;\n const { showFor, hideFor } = field;\n\n if (showFor) {\n return showFor === component;\n }\n\n if (hideFor) {\n return hideFor !== component;\n }\n }\n\n return true;\n })\n .map((field) => {\n if (typeof field !== \"string\") {\n return field.name;\n }\n\n return field;\n });\n const control = this.controls.find(\n (control) =>\n control[\"editor-control\"] === this.inspection[\"editor-control\"]\n ) ||\n this.controls.find(\n (control) => control.component === this.inspection.component\n ) || { inspector: [] };\n return control.inspector.filter((input) => {\n if (accordionFields.includes(input.field)) {\n return true;\n }\n if (\n !this.knownField(input.field) &&\n accordion.name === \"Configuration\"\n ) {\n // If it's not a known inspector field from accordion.js and this is the\n // configuration accordion, then add it here\n return true;\n }\n return false;\n });\n },\n updateState() {\n this.$store.dispatch(\"undoRedoModule/pushState\", {\n config: JSON.stringify(this.config),\n currentPage: this.currentPage\n });\n },\n undo() {\n this.inspect();\n this.$store.dispatch(\"undoRedoModule/undo\");\n this.config = JSON.parse(\n this.$store.getters[\"undoRedoModule/currentState\"].config\n );\n this.currentPage = JSON.parse(\n this.$store.getters[\"undoRedoModule/currentState\"].currentPage\n );\n },\n redo() {\n this.inspect();\n this.$store.dispatch(\"undoRedoModule/redo\");\n this.config = JSON.parse(\n this.$store.getters[\"undoRedoModule/currentState\"].config\n );\n this.currentPage = JSON.parse(\n this.$store.getters[\"undoRedoModule/currentState\"].currentPage\n );\n },\n updateConfig(items) {\n this.config[this.currentPage].items = items;\n this.updateState();\n },\n hasError(element) {\n return this.validationErrors.some(({ item }) => item === element);\n },\n focusInspector(validation) {\n this.showConfiguration = true;\n this.currentPage = this.config.indexOf(validation.page);\n this.$nextTick(() => {\n this.inspect(validation.item);\n this.$nextTick(() => {\n const field = this.$el.querySelector(\n `[field-name=\"${validation.field}\"]`\n );\n if (field) {\n const accordion = this.$el.querySelector(\n `[accordion-name=\"${field.getAttribute(\"field-accordion\")}\"]`\n );\n accordion &&\n accordion.getAttribute(\"is-open\") === \"0\" &&\n accordion.click();\n field.focus instanceof Function && field.focus();\n }\n });\n });\n },\n confirmDelete() {\n this.confirmMessage = this.$t(\n \"Are you sure you want to delete {{item}}?\",\n { item: this.config[this.currentPage].name }\n );\n this.pageDelete = this.currentPage;\n this.$refs.confirm.show();\n },\n hideConfirmModal() {\n this.$refs.confirm.hide();\n },\n addControl(control) {\n this.controls.push(control);\n },\n deleteItem(index) {\n // Remove the item from the array in currentPage\n this.config[this.currentPage].items.splice(index, 1);\n this.inspection.inspector.splice(0, this.inspection.inspector.length);\n this.updateState();\n },\n duplicateItem(index) {\n const duplicate = _.cloneDeep(this.config[this.currentPage].items[index]);\n this.config[this.currentPage].items.push(duplicate);\n },\n openEditPageModal(index) {\n this.editPageIndex = index;\n const pageName = this.config[index].name;\n this.originalPageName = pageName;\n this.editPageName = pageName;\n this.$refs.editPageModal.show();\n },\n editPage(e) {\n if (this.$refs.editPageInput.validator.errorCount) {\n e.preventDefault();\n return;\n }\n this.config[this.editPageIndex].name = this.editPageName;\n this.updateState();\n },\n addPage(e) {\n if (this.$refs.addPageInput.validator.errorCount) {\n e.preventDefault();\n return;\n }\n this.config.push({ name: this.addPageName, items: [] });\n this.currentPage = this.config.length - 1;\n this.addPageName = \"\";\n this.updateState();\n },\n deletePage() {\n this.config.splice(this.pageDelete, 1);\n this.currentPage = this.pageDelete - 1 >= 0 ? this.pageDelete - 1 : 0;\n this.$store.dispatch(\"undoRedoModule/pushState\", {\n config: JSON.stringify(this.config),\n currentPage: this.currentPage,\n deletedPage: true\n });\n },\n inspect(element = {}) {\n this.inspection = element;\n this.selected = element;\n const defaultAccordion = this.accordions.find(\n (accordion) => this.getInspectorFields(accordion).length > 0\n );\n if (defaultAccordion) {\n this.openAccordion(defaultAccordion);\n }\n },\n // Cloning the control will ensure the config is not a copy of the observable but a plain javascript object\n // This will ensure each control in the editor has it's own config and it's not shared\n cloneControl(control) {\n const copy = {\n config: JSON.parse(JSON.stringify(control.config)),\n inspector: JSON.parse(JSON.stringify(control.inspector)),\n component: control.component,\n \"editor-component\": control[\"editor-component\"],\n \"editor-control\": control[\"editor-control\"],\n label: control.label,\n value: control.value\n };\n if (control.component === \"FormDatePicker\" && copy.config.phrases) {\n copy.config.phrases.ok = this.$t(copy.config.phrases.ok);\n copy.config.phrases.cancel = this.$t(copy.config.phrases.cancel);\n }\n copy.config.label = this.$t(copy.config.label);\n if (Array.isArray(copy.config.options)) {\n for (const io in copy.config.options) {\n copy.config.options[io].content = this.$t(\n copy.config.options[io].content\n );\n }\n }\n\n // If it's a container, let's add an items property, with the default of items in the control\n if (control.container) {\n copy.items = JSON.parse(JSON.stringify(control.items));\n copy.container = true;\n }\n\n // Generate Variable Name\n if (\n _.findIndex(control.inspector, keyNameProperty) !== -1 ||\n control.component === \"FormLoop\") {\n [this.variables, copy.config.name] = this.generator.generate(\n this.config,\n copy[\"editor-control\"] ? copy[\"editor-control\"] : copy.component\n );\n if (_.has(copy, \"config.settings.varname\")) {\n copy.config.settings.varname = copy.config.name;\n }\n }\n\n return copy;\n },\n initiateLanguageSupport() {\n if (document.documentElement.lang) {\n this.language = document.documentElement.lang;\n }\n this.collator = Intl.Collator(this.language);\n },\n }\n};\n</script>\n\n<style>\n.prevent-interaction {\n pointer-events: none;\n}\n\n.svg-icon > svg {\n}\n</style>\n\n<style lang=\"scss\" scoped>\n$header-bg: #f7f7f7;\n$side-bar-font-size: 0.875rem;\n\n.control-icon {\n width: 30px;\n font-size: 20px;\n\n img {\n height: 20px;\n }\n}\n\n.control-item {\n .delete {\n position: absolute;\n top: 0px;\n right: 0px;\n display: none;\n }\n\n &:hover {\n cursor: move;\n }\n\n &.selected {\n border-radius: 5px;\n cursor: move;\n }\n\n &:not(.selected) .card {\n border: none;\n }\n}\n\n.hasError {\n border: 1px solid red;\n border-radius: 0.25rem;\n\n .form-element-header {\n border-bottom: 1px solid red;\n color: red;\n }\n}\n\n.inspector-header {\n background: $header-bg;\n}\n\n.validation-panel {\n background: $header-bg;\n height: 10rem;\n width: 21.35rem;\n bottom: 3rem;\n}\n\n.validation__message {\n text-decoration: none;\n\n &:hover {\n background: rgba(51, 151, 225, 0.3);\n }\n}\n\n.controls-header {\n border-bottom: none;\n}\n\n.header-bg {\n background: $header-bg;\n}\n\n.controls {\n cursor: move;\n user-select: none;\n font-size: $side-bar-font-size;\n}\n\n.header-button {\n height: 38px;\n width: 38px;\n}\n\n.filter-icon {\n background-color: #e9ecef;\n}\n\n.controls-column {\n max-width: 185px;\n}\n\n.inspector-column {\n max-width: 265px;\n font-size: $side-bar-font-size;\n}\n\n.form-control-ghost {\n margin-bottom: 0;\n border-radius: 0.25rem;\n}\n\n.drag-placeholder {\n height: 8rem;\n top: 4rem;\n border: 1px dashed rgba(0, 0, 0, 0.125);\n}\n</style>\n"]
67763
67770
  },
67764
67771
  _coverageSchema: "43e27e138ebf9cfc5966b082cf9a028302ed4184",
67765
- hash: "5f360a2d29b441bfdfd200c2c859e4ca98b07847"
67772
+ hash: "a31bac379932818bf62fb23fff9f7834b7d92297"
67766
67773
  };
67767
67774
  var coverage = global[gcv] || (global[gcv] = {});
67768
67775
  if (coverage[path] && coverage[path].hash === hash) {
@@ -69171,13 +69178,6 @@ module.exports = {
69171
69178
  /* unused harmony reexport * */
69172
69179
 
69173
69180
 
69174
- /***/ }),
69175
-
69176
- /***/ "539c":
69177
- /***/ (function(module, exports, __webpack_require__) {
69178
-
69179
- // extracted by mini-css-extract-plugin
69180
-
69181
69181
  /***/ }),
69182
69182
 
69183
69183
  /***/ "53e2":
@@ -72545,6 +72545,17 @@ module.exports = baseAssign;
72545
72545
  })));
72546
72546
 
72547
72547
 
72548
+ /***/ }),
72549
+
72550
+ /***/ "5b3b":
72551
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
72552
+
72553
+ "use strict";
72554
+ /* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_vue_form_builder_vue_vue_type_style_index_0_id_5ddad944_prod_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("e21b");
72555
+ /* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_vue_form_builder_vue_vue_type_style_index_0_id_5ddad944_prod_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_vue_form_builder_vue_vue_type_style_index_0_id_5ddad944_prod_lang_css___WEBPACK_IMPORTED_MODULE_0__);
72556
+ /* unused harmony reexport * */
72557
+
72558
+
72548
72559
  /***/ }),
72549
72560
 
72550
72561
  /***/ "5b4e":
@@ -78109,6 +78120,17 @@ module.exports = {
78109
78120
  };
78110
78121
 
78111
78122
 
78123
+ /***/ }),
78124
+
78125
+ /***/ "7423":
78126
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
78127
+
78128
+ "use strict";
78129
+ /* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_vue_form_builder_vue_vue_type_style_index_1_id_5ddad944_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("14b1");
78130
+ /* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_vue_form_builder_vue_vue_type_style_index_1_id_5ddad944_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_vue_form_builder_vue_vue_type_style_index_1_id_5ddad944_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__);
78131
+ /* unused harmony reexport * */
78132
+
78133
+
78112
78134
  /***/ }),
78113
78135
 
78114
78136
  /***/ "743f":
@@ -78346,7 +78368,7 @@ module.exports = baseCreate;
78346
78368
 
78347
78369
  "use strict";
78348
78370
 
78349
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-text.vue?vue&type=template&id=1d8aa328&
78371
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-text.vue?vue&type=template&id=1d8aa328&
78350
78372
  var cov_18d96hpyis = function () {
78351
78373
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/renderer/form-text.vue";
78352
78374
  var hash = "c0749e14c59b095f2294a787e06ec8db91b2d9a3";
@@ -90309,7 +90331,7 @@ var es7_array_includes = __webpack_require__("6762");
90309
90331
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es6.string.includes.js
90310
90332
  var es6_string_includes = __webpack_require__("2fdb");
90311
90333
 
90312
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-nested-screen.vue?vue&type=template&id=399b8f60&
90334
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-nested-screen.vue?vue&type=template&id=399b8f60&
90313
90335
  var cov_2ar7fxy94c = function () {
90314
90336
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/renderer/form-nested-screen.vue";
90315
90337
  var hash = "e8ced9bb067300cebe98db3c139f5dd2efae8e3d";
@@ -99662,7 +99684,7 @@ __webpack_require__.d(__webpack_exports__, "InputVariable", function() { return
99662
99684
  __webpack_require__.d(__webpack_exports__, "Tooltip", function() { return /* reexport */ tooltip["a" /* default */]; });
99663
99685
  __webpack_require__.d(__webpack_exports__, "DeviceVisibility", function() { return /* reexport */ device_visibility["a" /* default */]; });
99664
99686
 
99665
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/color-select.vue?vue&type=template&id=5d6c5a40&scoped=true&
99687
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/color-select.vue?vue&type=template&id=5d6c5a40&scoped=true&
99666
99688
  var cov_1blyoba3pc = function () {
99667
99689
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/color-select.vue";
99668
99690
  var hash = "f32c27842b3d4ed34bd827f8d8d8cfaa3c57733d";
@@ -100355,7 +100377,7 @@ var component = Object(componentNormalizer["a" /* default */])(
100355
100377
  )
100356
100378
 
100357
100379
  /* harmony default export */ var color_select = (component.exports);
100358
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/container-columns.vue?vue&type=template&id=49e59f53&
100380
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/container-columns.vue?vue&type=template&id=49e59f53&
100359
100381
  var cov_1zvwgpihca = function () {
100360
100382
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/container-columns.vue";
100361
100383
  var hash = "8420555641ddb80d2686b39f20a27b4ed94b51d9";
@@ -102317,7 +102339,7 @@ var container_columns_component = Object(componentNormalizer["a" /* default */])
102317
102339
  // EXTERNAL MODULE: ./src/components/inspector/form-multiselect.vue + 4 modules
102318
102340
  var form_multiselect = __webpack_require__("0f4c");
102319
102341
 
102320
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/image-upload.vue?vue&type=template&id=824a7674&scoped=true&
102342
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/image-upload.vue?vue&type=template&id=824a7674&scoped=true&
102321
102343
  var cov_g0519n5f = function () {
102322
102344
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/image-upload.vue";
102323
102345
  var hash = "1bb00a62ac4b7b87bbbe86497d735765a2b7edef";
@@ -102806,7 +102828,7 @@ var image_upload_component = Object(componentNormalizer["a" /* default */])(
102806
102828
  )
102807
102829
 
102808
102830
  /* harmony default export */ var image_upload = (image_upload_component.exports);
102809
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/options-list.vue?vue&type=template&id=32c37bc3&scoped=true&
102831
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/options-list.vue?vue&type=template&id=32c37bc3&scoped=true&
102810
102832
  var cov_15r34s9d4 = function () {
102811
102833
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/options-list.vue";
102812
102834
  var hash = "c050a6ba8dd35ec67f786f0fb67ebaed8dc73927";
@@ -106279,7 +106301,7 @@ var data_source_types = __webpack_require__("b71d");
106279
106301
  var external_vue_monaco_ = __webpack_require__("68c9");
106280
106302
  var external_vue_monaco_default = /*#__PURE__*/__webpack_require__.n(external_vue_monaco_);
106281
106303
 
106282
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/mustache-helper.vue?vue&type=template&id=960c673a&scoped=true&
106304
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/mustache-helper.vue?vue&type=template&id=960c673a&scoped=true&
106283
106305
  var cov_1ru2xcs6su = function () {
106284
106306
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/mustache-helper.vue";
106285
106307
  var hash = "7f5e6d73a8a8652a0ea5a78def031d27e7215ecb";
@@ -106469,7 +106491,7 @@ var mustache_helper_component = Object(componentNormalizer["a" /* default */])(
106469
106491
  )
106470
106492
 
106471
106493
  /* harmony default export */ var mustache_helper = (mustache_helper_component.exports);
106472
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/collection-select-list.vue?vue&type=template&id=2977afb0&
106494
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/collection-select-list.vue?vue&type=template&id=2977afb0&
106473
106495
  var cov_2b1s1sbp79 = function () {
106474
106496
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/collection-select-list.vue";
106475
106497
  var hash = "e1933ec79ef6b047e33b1cb42f4e960611711a4e";
@@ -107013,7 +107035,7 @@ var collection_select_listvue_type_template_id_2977afb0_staticRenderFns = (cov_2
107013
107035
  // EXTERNAL MODULE: ./node_modules/@babel/runtime-corejs2/helpers/esm/toConsumableArray.js + 3 modules
107014
107036
  var toConsumableArray = __webpack_require__("75fc");
107015
107037
 
107016
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/screen-variable-selector.vue?vue&type=template&id=095906e0&
107038
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/screen-variable-selector.vue?vue&type=template&id=095906e0&
107017
107039
  var cov_1lyxv1g00d = function () {
107018
107040
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/screen-variable-selector.vue";
107019
107041
  var hash = "24f1be9bbf104a91f03f8b957167337f2a924cb4";
@@ -113566,7 +113588,7 @@ var options_list_component = Object(componentNormalizer["a" /* default */])(
113566
113588
  )
113567
113589
 
113568
113590
  /* harmony default export */ var options_list = (options_list_component.exports);
113569
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/column-setup.vue?vue&type=template&id=407e2794&scoped=true&
113591
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/column-setup.vue?vue&type=template&id=407e2794&scoped=true&
113570
113592
  var cov_1n7hgx4goc = function () {
113571
113593
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/column-setup.vue";
113572
113594
  var hash = "5a823b341c091e7f6ccad847af1c2ce6345b6af6";
@@ -119126,7 +119148,7 @@ var column_setup_component = Object(componentNormalizer["a" /* default */])(
119126
119148
  )
119127
119149
 
119128
119150
  /* harmony default export */ var column_setup = (column_setup_component.exports);
119129
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/page-select.vue?vue&type=template&id=d32b03e8&
119151
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/page-select.vue?vue&type=template&id=d32b03e8&
119130
119152
  var cov_1izar51oy0 = function () {
119131
119153
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/page-select.vue";
119132
119154
  var hash = "5d2663220f6e9eecace5cf1bd956071e5cd28af4";
@@ -119661,7 +119683,7 @@ var page_select_component = Object(componentNormalizer["a" /* default */])(
119661
119683
  )
119662
119684
 
119663
119685
  /* harmony default export */ var page_select = (page_select_component.exports);
119664
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/validation-select.vue?vue&type=template&id=4cc49f34&scoped=true&
119686
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/validation-select.vue?vue&type=template&id=4cc49f34&scoped=true&
119665
119687
  var cov_2g1iur38ar = function () {
119666
119688
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/validation-select.vue";
119667
119689
  var hash = "c0ba460b36bb7a9dfcaf6b2f685f30fd769ad05d";
@@ -120774,7 +120796,7 @@ var es6_object_assign = __webpack_require__("f751");
120774
120796
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es6.array.sort.js
120775
120797
  var es6_array_sort = __webpack_require__("55dd");
120776
120798
 
120777
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/input-variable.vue?vue&type=template&id=2589377a&
120799
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/input-variable.vue?vue&type=template&id=2589377a&
120778
120800
  var cov_23oi4754ye = function () {
120779
120801
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/input-variable.vue";
120780
120802
  var hash = "b132a1d1d90a29f53957ea87c9b3f3d13133a8c5";
@@ -125471,7 +125493,7 @@ var validation_select_component = Object(componentNormalizer["a" /* default */])
125471
125493
  )
125472
125494
 
125473
125495
  /* harmony default export */ var validation_select = (validation_select_component.exports);
125474
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/screen-selector.vue?vue&type=template&id=760b85a5&
125496
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/screen-selector.vue?vue&type=template&id=760b85a5&
125475
125497
  var cov_22k6ifgl7l = function () {
125476
125498
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/screen-selector.vue";
125477
125499
  var hash = "c880f3fa699496db6fb312e604cac1227decf2b5";
@@ -125803,7 +125825,7 @@ var screen_selector_component = Object(componentNormalizer["a" /* default */])(
125803
125825
  )
125804
125826
 
125805
125827
  /* harmony default export */ var screen_selector = (screen_selector_component.exports);
125806
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/loop.vue?vue&type=template&id=13aa043a&
125828
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/loop.vue?vue&type=template&id=13aa043a&
125807
125829
  var cov_700qzx3y2 = function () {
125808
125830
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/loop.vue";
125809
125831
  var hash = "86b8cc853467eebc046d54f3214f86bbaf3ff4f9";
@@ -126505,7 +126527,7 @@ var loop_component = Object(componentNormalizer["a" /* default */])(
126505
126527
  )
126506
126528
 
126507
126529
  /* harmony default export */ var loop = (loop_component.exports);
126508
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/image-variable.vue?vue&type=template&id=77e844ce&
126530
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/image-variable.vue?vue&type=template&id=77e844ce&
126509
126531
  var cov_1b1pwi80cp = function () {
126510
126532
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/image-variable.vue";
126511
126533
  var hash = "50e97b1df13568b482cd0aef71355603e93939f0";
@@ -129802,7 +129824,7 @@ module.exports = {
129802
129824
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es6.function.name.js
129803
129825
  var es6_function_name = __webpack_require__("7f7f");
129804
129826
 
129805
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-button.vue?vue&type=template&id=742564af&
129827
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-button.vue?vue&type=template&id=742564af&
129806
129828
  var cov_1w1clmb3te = function () {
129807
129829
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/renderer/form-button.vue";
129808
129830
  var hash = "1283c3a3104b16d55e2e423b0a2026b724d34f9a";
@@ -131155,7 +131177,7 @@ var component = Object(componentNormalizer["a" /* default */])(
131155
131177
 
131156
131178
  "use strict";
131157
131179
 
131158
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/tooltip.vue?vue&type=template&id=58a9b61b&
131180
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/tooltip.vue?vue&type=template&id=58a9b61b&
131159
131181
  var cov_1ty9lodf4r = function () {
131160
131182
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/tooltip.vue";
131161
131183
  var hash = "2e9f51d04b74f488f52321be067deb0f60a9eacd";
@@ -133794,7 +133816,7 @@ module.exports = function xhrAdapter(config) {
133794
133816
 
133795
133817
  "use strict";
133796
133818
 
133797
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/utils/required-checkbox.vue?vue&type=template&id=6f2978d8&
133819
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/utils/required-checkbox.vue?vue&type=template&id=6f2978d8&
133798
133820
  var cov_r3xnrge93 = function () {
133799
133821
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/utils/required-checkbox.vue";
133800
133822
  var hash = "a21e20ba9d7124d8545cc751d6bd05052fd44816";
@@ -135587,17 +135609,6 @@ var dataSourceValues = (cov_2qtbzx29a7.s[1]++, dataSources.reduce(function (valu
135587
135609
  return values;
135588
135610
  }, {}));
135589
135611
 
135590
- /***/ }),
135591
-
135592
- /***/ "b735":
135593
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
135594
-
135595
- "use strict";
135596
- /* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_vue_form_builder_vue_vue_type_style_index_0_id_3b21222a_prod_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("539c");
135597
- /* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_vue_form_builder_vue_vue_type_style_index_0_id_3b21222a_prod_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_vue_form_builder_vue_vue_type_style_index_0_id_3b21222a_prod_lang_css___WEBPACK_IMPORTED_MODULE_0__);
135598
- /* unused harmony reexport * */
135599
-
135600
-
135601
135612
  /***/ }),
135602
135613
 
135603
135614
  /***/ "b755":
@@ -138363,7 +138374,7 @@ if (typeof window !== "undefined" && "Vue" in window) {
138363
138374
 
138364
138375
  "use strict";
138365
138376
 
138366
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/device-visibility.vue?vue&type=template&id=52270dd7&scoped=true&
138377
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/device-visibility.vue?vue&type=template&id=52270dd7&scoped=true&
138367
138378
  var cov_2ou925mp0c = function () {
138368
138379
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/device-visibility.vue";
138369
138380
  var hash = "1fc2bb5afd23ebb91dd94da7793cc0a164597ce9";
@@ -141435,17 +141446,6 @@ exports.f = __webpack_require__("8e60") ? gOPD : function getOwnPropertyDescript
141435
141446
  };
141436
141447
 
141437
141448
 
141438
- /***/ }),
141439
-
141440
- /***/ "bffa":
141441
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
141442
-
141443
- "use strict";
141444
- /* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_vue_form_builder_vue_vue_type_style_index_1_id_3b21222a_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("ee3b");
141445
- /* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_vue_form_builder_vue_vue_type_style_index_1_id_3b21222a_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_vue_form_builder_vue_vue_type_style_index_1_id_3b21222a_prod_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__);
141446
- /* unused harmony reexport * */
141447
-
141448
-
141449
141449
  /***/ }),
141450
141450
 
141451
141451
  /***/ "c035":
@@ -148617,7 +148617,7 @@ var form_image = __webpack_require__("0e4a");
148617
148617
  // EXTERNAL MODULE: ./src/components/renderer/form-record-list.vue + 6 modules
148618
148618
  var form_record_list = __webpack_require__("2b9d");
148619
148619
 
148620
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-record-list-static.vue?vue&type=template&id=2cdacab0&
148620
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-record-list-static.vue?vue&type=template&id=2cdacab0&
148621
148621
  var cov_14stia58ez = function () {
148622
148622
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/renderer/form-record-list-static.vue";
148623
148623
  var hash = "4eba07df273ffe9b21f332d0793b0cbd5d09089a";
@@ -158212,6 +158212,13 @@ module.exports = { "default": __webpack_require__("696e"), __esModule: true };
158212
158212
 
158213
158213
  /***/ }),
158214
158214
 
158215
+ /***/ "e21b":
158216
+ /***/ (function(module, exports, __webpack_require__) {
158217
+
158218
+ // extracted by mini-css-extract-plugin
158219
+
158220
+ /***/ }),
158221
+
158215
158222
  /***/ "e24b":
158216
158223
  /***/ (function(module, exports, __webpack_require__) {
158217
158224
 
@@ -160373,13 +160380,6 @@ $export($export.S, 'Number', {
160373
160380
 
160374
160381
  /***/ }),
160375
160382
 
160376
- /***/ "ee3b":
160377
- /***/ (function(module, exports, __webpack_require__) {
160378
-
160379
- // extracted by mini-css-extract-plugin
160380
-
160381
- /***/ }),
160382
-
160383
160383
  /***/ "eed6":
160384
160384
  /***/ (function(module, exports, __webpack_require__) {
160385
160385
 
@@ -168860,7 +168860,7 @@ var defineProperty = __webpack_require__("bd86");
168860
168860
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es6.regexp.replace.js
168861
168861
  var es6_regexp_replace = __webpack_require__("a481");
168862
168862
 
168863
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/vue-form-builder.vue?vue&type=template&id=3b21222a&scoped=true&
168863
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/vue-form-builder.vue?vue&type=template&id=5ddad944&scoped=true&
168864
168864
  var cov_1kg5ifedfk = function () {
168865
168865
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/vue-form-builder.vue";
168866
168866
  var hash = "1dd8dc7cc53bbde57e8e485c427af68c1ba5e153";
@@ -171190,18 +171190,18 @@ var render = function render() {
171190
171190
  };
171191
171191
  var staticRenderFns = (cov_1kg5ifedfk.s[31]++, []);
171192
171192
 
171193
- // CONCATENATED MODULE: ./src/components/vue-form-builder.vue?vue&type=template&id=3b21222a&scoped=true&
171193
+ // CONCATENATED MODULE: ./src/components/vue-form-builder.vue?vue&type=template&id=5ddad944&scoped=true&
171194
171194
 
171195
171195
  // EXTERNAL MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/vue-form-builder.vue?vue&type=script&lang=js&
171196
171196
  var vue_form_buildervue_type_script_lang_js_ = __webpack_require__("5258");
171197
171197
 
171198
171198
  // CONCATENATED MODULE: ./src/components/vue-form-builder.vue?vue&type=script&lang=js&
171199
171199
  /* harmony default export */ var components_vue_form_buildervue_type_script_lang_js_ = (vue_form_buildervue_type_script_lang_js_["a" /* default */]);
171200
- // EXTERNAL MODULE: ./src/components/vue-form-builder.vue?vue&type=style&index=0&id=3b21222a&prod&lang=css&
171201
- var vue_form_buildervue_type_style_index_0_id_3b21222a_prod_lang_css_ = __webpack_require__("b735");
171200
+ // EXTERNAL MODULE: ./src/components/vue-form-builder.vue?vue&type=style&index=0&id=5ddad944&prod&lang=css&
171201
+ var vue_form_buildervue_type_style_index_0_id_5ddad944_prod_lang_css_ = __webpack_require__("5b3b");
171202
171202
 
171203
- // EXTERNAL MODULE: ./src/components/vue-form-builder.vue?vue&type=style&index=1&id=3b21222a&prod&lang=scss&scoped=true&
171204
- var vue_form_buildervue_type_style_index_1_id_3b21222a_prod_lang_scss_scoped_true_ = __webpack_require__("bffa");
171203
+ // EXTERNAL MODULE: ./src/components/vue-form-builder.vue?vue&type=style&index=1&id=5ddad944&prod&lang=scss&scoped=true&
171204
+ var vue_form_buildervue_type_style_index_1_id_5ddad944_prod_lang_scss_scoped_true_ = __webpack_require__("7423");
171205
171205
 
171206
171206
  // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
171207
171207
  var componentNormalizer = __webpack_require__("2877");
@@ -171222,13 +171222,13 @@ var vue_form_builder_component = Object(componentNormalizer["a" /* default */])(
171222
171222
  staticRenderFns,
171223
171223
  false,
171224
171224
  null,
171225
- "3b21222a",
171225
+ "5ddad944",
171226
171226
  null
171227
171227
 
171228
171228
  )
171229
171229
 
171230
171230
  /* harmony default export */ var vue_form_builder = (vue_form_builder_component.exports);
171231
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/vue-form-renderer.vue?vue&type=template&id=2d6b8b4f&scoped=true&
171231
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/vue-form-renderer.vue?vue&type=template&id=2d6b8b4f&scoped=true&
171232
171232
  var cov_b9a5d1lbc = function () {
171233
171233
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/vue-form-renderer.vue";
171234
171234
  var hash = "6ab593837325efc91e880d70b27a90c2b688e1cb";
@@ -179111,7 +179111,7 @@ var vue_form_renderer_component = Object(componentNormalizer["a" /* default */])
179111
179111
  // EXTERNAL MODULE: ./src/components/renderer/index.js + 5 modules
179112
179112
  var renderer = __webpack_require__("c99c");
179113
179113
 
179114
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-multi-column.vue?vue&type=template&id=3d008927&
179114
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-multi-column.vue?vue&type=template&id=3d008927&
179115
179115
  var cov_xmnyt0fvx = function () {
179116
179116
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/renderer/form-multi-column.vue";
179117
179117
  var hash = "fa19b567e18e5efeb4e9d32f4b00169623136009";
@@ -179591,7 +179591,7 @@ var vuedraggable_umd_default = /*#__PURE__*/__webpack_require__.n(vuedraggable_u
179591
179591
  // EXTERNAL MODULE: ./src/mixins/index.js + 4 modules
179592
179592
  var mixins = __webpack_require__("1b62");
179593
179593
 
179594
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-masked-input.vue?vue&type=template&id=7abccf96&
179594
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-masked-input.vue?vue&type=template&id=7abccf96&
179595
179595
  var cov_nqy41gsfw = function () {
179596
179596
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/renderer/form-masked-input.vue";
179597
179597
  var hash = "0a04c5edf49bba17b076d4150885bbdc51653b88";
@@ -180828,7 +180828,7 @@ const UniqIdsPlugin = {
180828
180828
 
180829
180829
  /* harmony default export */ var vue_uniq_ids = (UniqIdsPlugin);
180830
180830
 
180831
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-input-masked.vue?vue&type=template&id=3d8cba9e&
180831
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-input-masked.vue?vue&type=template&id=3d8cba9e&
180832
180832
  var cov_u01divqgh = function () {
180833
180833
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/renderer/form-input-masked.vue";
180834
180834
  var hash = "7f9f06fcab502c7f6b7a5df57e8f513f6a84519b";
@@ -185485,7 +185485,7 @@ var form_text = __webpack_require__("75ae");
185485
185485
  // EXTERNAL MODULE: ./src/components/renderer/form-button.vue + 4 modules
185486
185486
  var form_button = __webpack_require__("b00f");
185487
185487
 
185488
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-loop.vue?vue&type=template&id=7d05b9ca&
185488
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/form-loop.vue?vue&type=template&id=7d05b9ca&
185489
185489
  var cov_16ubasd4fe = function () {
185490
185490
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/renderer/form-loop.vue";
185491
185491
  var hash = "3e06f4b757dddc4889d87568005b9c5b07842d50";
@@ -188521,7 +188521,7 @@ var form_image = __webpack_require__("0e4a");
188521
188521
  // EXTERNAL MODULE: ./src/components/renderer/form-nested-screen.vue + 3 modules
188522
188522
  var form_nested_screen = __webpack_require__("920a");
188523
188523
 
188524
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/file-upload.vue?vue&type=template&id=f58d7e74&scoped=true&
188524
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/file-upload.vue?vue&type=template&id=f58d7e74&scoped=true&
188525
188525
  var cov_2crjul44f0 = function () {
188526
188526
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/renderer/file-upload.vue";
188527
188527
  var hash = "32f9471307fab205ae1dafef83dcb551efe9ea3c";
@@ -196445,7 +196445,7 @@ var file_upload_component = Object(componentNormalizer["a" /* default */])(
196445
196445
  )
196446
196446
 
196447
196447
  /* harmony default export */ var file_upload = (file_upload_component.exports);
196448
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/file-download.vue?vue&type=template&id=0c29e715&scoped=true&
196448
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/file-download.vue?vue&type=template&id=0c29e715&scoped=true&
196449
196449
  var cov_kg7o16dky = function () {
196450
196450
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/renderer/file-download.vue";
196451
196451
  var hash = "033c869a348f5bafce2ddd560ca4ae6c2837ed23";
@@ -199943,7 +199943,7 @@ var file_download_component = Object(componentNormalizer["a" /* default */])(
199943
199943
  )
199944
199944
 
199945
199945
  /* harmony default export */ var file_download = (file_download_component.exports);
199946
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/select-data-type-mask.vue?vue&type=template&id=6f87c376&
199946
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/inspector/select-data-type-mask.vue?vue&type=template&id=6f87c376&
199947
199947
  var cov_1xvev1oze9 = function () {
199948
199948
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/inspector/select-data-type-mask.vue";
199949
199949
  var hash = "c0beea395e23440c13cb2bec87a0c9c84a110101";
@@ -201712,7 +201712,7 @@ var cov_wyw8u8vzd = function () {
201712
201712
  }]
201713
201713
  }
201714
201714
  }]);
201715
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/task.vue?vue&type=template&id=76c3cab3&
201715
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/task.vue?vue&type=template&id=76c3cab3&
201716
201716
  var cov_14w8s3nayc = function () {
201717
201717
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/task.vue";
201718
201718
  var hash = "b135d6ee4bbe7d2ad50cefade410f416be4b80d6";
@@ -202118,7 +202118,7 @@ var es6_object_assign = __webpack_require__("f751");
202118
202118
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es6.promise.js
202119
202119
  var es6_promise = __webpack_require__("551c");
202120
202120
 
202121
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/SimpleErrorMessage.vue?vue&type=template&id=40c3825f&
202121
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/SimpleErrorMessage.vue?vue&type=template&id=40c3825f&
202122
202122
  var cov_126lytdv8x = function () {
202123
202123
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/SimpleErrorMessage.vue";
202124
202124
  var hash = "84d66bc5e43c36100c58a07d0859f27613542571";
@@ -208790,7 +208790,7 @@ var task_component = Object(componentNormalizer["a" /* default */])(
208790
208790
  )
208791
208791
 
208792
208792
  /* harmony default export */ var task = (task_component.exports);
208793
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/editor/loop.vue?vue&type=template&id=17bd88f7&scoped=true&
208793
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/editor/loop.vue?vue&type=template&id=17bd88f7&scoped=true&
208794
208794
  var cov_27fpew4s8t = function () {
208795
208795
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/editor/loop.vue";
208796
208796
  var hash = "2e4b4bd5c30a2385ab5fece11f0c81716b4efc9a";
@@ -210336,7 +210336,7 @@ var loop_component = Object(componentNormalizer["a" /* default */])(
210336
210336
  )
210337
210337
 
210338
210338
  /* harmony default export */ var loop = (loop_component.exports);
210339
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/editor/multi-column.vue?vue&type=template&id=0cdca220&scoped=true&
210339
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/editor/multi-column.vue?vue&type=template&id=0cdca220&scoped=true&
210340
210340
  var cov_20l2116bm6 = function () {
210341
210341
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/editor/multi-column.vue";
210342
210342
  var hash = "7f0f43568f2270bb0472fae7e5c377465f1c7214";
@@ -212360,7 +212360,7 @@ var multi_column_component = Object(componentNormalizer["a" /* default */])(
212360
212360
  )
212361
212361
 
212362
212362
  /* harmony default export */ var multi_column = (multi_column_component.exports);
212363
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/new-form-multi-column.vue?vue&type=template&id=0ef67567&
212363
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/new-form-multi-column.vue?vue&type=template&id=0ef67567&
212364
212364
  var cov_1c0749k7qh = function () {
212365
212365
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/renderer/new-form-multi-column.vue";
212366
212366
  var hash = "223d98f5b979716e851463ac7d9fa1e145974091";
@@ -212536,7 +212536,7 @@ var new_form_multi_column_component = Object(componentNormalizer["a" /* default
212536
212536
  )
212537
212537
 
212538
212538
  /* harmony default export */ var new_form_multi_column = (new_form_multi_column_component.exports);
212539
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/screen-renderer.vue?vue&type=template&id=d467a6e8&
212539
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/screen-renderer.vue?vue&type=template&id=d467a6e8&
212540
212540
  var cov_11b5a18tmw = function () {
212541
212541
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/screen-renderer.vue";
212542
212542
  var hash = "d0083020b097dc93a29c2d56101493c3e4d5f91e";
@@ -227099,7 +227099,7 @@ var screenRenderer;
227099
227099
  }
227100
227100
  }
227101
227101
  });
227102
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/watchers-synchronous.vue?vue&type=template&id=fb550d68&
227102
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/watchers-synchronous.vue?vue&type=template&id=fb550d68&
227103
227103
  var cov_dzofffl4o = function () {
227104
227104
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/watchers-synchronous.vue";
227105
227105
  var hash = "fcbba5f196edd8893079a478cf1ffebba7fe334a";
@@ -228006,7 +228006,7 @@ var watchers_synchronous_component = Object(componentNormalizer["a" /* default *
228006
228006
  )
228007
228007
 
228008
228008
  /* harmony default export */ var watchers_synchronous = (watchers_synchronous_component.exports);
228009
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/screen-renderer-error.vue?vue&type=template&id=8466b078&
228009
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/screen-renderer-error.vue?vue&type=template&id=8466b078&
228010
228010
  var cov_2pqn9mhr26 = function () {
228011
228011
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/renderer/screen-renderer-error.vue";
228012
228012
  var hash = "3846c3c81cd5b26e220f4c08d89c69065c06359f";
@@ -228842,7 +228842,7 @@ var screen_renderer_component = Object(componentNormalizer["a" /* default */])(
228842
228842
  )
228843
228843
 
228844
228844
  /* harmony default export */ var screen_renderer = (screen_renderer_component.exports);
228845
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/add-loop-row.vue?vue&type=template&id=97108284&
228845
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/renderer/add-loop-row.vue?vue&type=template&id=97108284&
228846
228846
  var cov_177dhggwzt = function () {
228847
228847
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/renderer/add-loop-row.vue";
228848
228848
  var hash = "cde35e8a6b15fe14a6e2decbf783db411e562961";
@@ -229412,7 +229412,7 @@ var add_loop_row_component = Object(componentNormalizer["a" /* default */])(
229412
229412
  )
229413
229413
 
229414
229414
  /* harmony default export */ var add_loop_row = (add_loop_row_component.exports);
229415
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7797880c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/utils/default-loading-spinner.vue?vue&type=template&id=2af62e9c&
229415
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0ad29bd1-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/utils/default-loading-spinner.vue?vue&type=template&id=2af62e9c&
229416
229416
  var cov_a7aa3j8r5 = function () {
229417
229417
  var path = "/Users/ryancooley/Developer/ProcessMaker/screen-builder/src/components/utils/default-loading-spinner.vue";
229418
229418
  var hash = "0f432424461a768a491fa99517384e039d13b802";