{"version":3,"file":"js/application-33c60eef5b46e3577971.js","mappings":"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","sources":["webpack://docuseal/webpack/runtime/chunk loaded","webpack://docuseal/webpack/runtime/load script","webpack://docuseal/./app/javascript/template_builder/builder.vue","webpack://docuseal/./app/javascript/template_builder/upload.vue","webpack://docuseal/./app/javascript/template_builder/upload.vue?75d8","webpack://docuseal/./app/javascript/template_builder/dropzone.vue","webpack://docuseal/./app/javascript/template_builder/dropzone.vue?96b1","webpack://docuseal/./app/javascript/template_builder/fields.vue","webpack://docuseal/./app/javascript/template_builder/field.vue","webpack://docuseal/./app/javascript/template_builder/contenteditable.vue","webpack://docuseal/./app/javascript/template_builder/contenteditable.vue?6b06","webpack://docuseal/./app/javascript/template_builder/field_type.vue","webpack://docuseal/./app/javascript/template_builder/field_type.vue?e2f2","webpack://docuseal/./app/javascript/template_builder/payment_settings.vue","webpack://docuseal/./app/javascript/template_builder/payment_settings.vue?9e29","webpack://docuseal/./app/javascript/template_builder/field_settings.vue","webpack://docuseal/./app/javascript/template_builder/field_settings.vue?83ad","webpack://docuseal/./app/javascript/template_builder/formula_modal.vue","webpack://docuseal/./app/javascript/template_builder/formula_modal.vue?a616","webpack://docuseal/./app/javascript/template_builder/conditions_modal.vue","webpack://docuseal/./app/javascript/template_builder/conditions_modal.vue?4e5d","webpack://docuseal/./app/javascript/template_builder/description_modal.vue","webpack://docuseal/./app/javascript/template_builder/description_modal.vue?ed0d","webpack://docuseal/./app/javascript/template_builder/field.vue?f61f","webpack://docuseal/./app/javascript/template_builder/field_submitter.vue","webpack://docuseal/./app/javascript/template_builder/field_submitter.vue?56f9","webpack://docuseal/./app/javascript/template_builder/icon_drag.vue","webpack://docuseal/./app/javascript/template_builder/icon_drag.vue?ffa4","webpack://docuseal/./app/javascript/template_builder/fields.vue?3589","webpack://docuseal/./app/javascript/template_builder/mobile_draw_field.vue","webpack://docuseal/./app/javascript/template_builder/mobile_draw_field.vue?c42d","webpack://docuseal/./app/javascript/template_builder/page.vue","webpack://docuseal/./app/javascript/template_builder/area.vue","webpack://docuseal/./app/javascript/template_builder/area.vue?d55d","webpack://docuseal/./app/javascript/template_builder/document.vue","webpack://docuseal/./app/javascript/template_builder/page.vue?bb6c","webpack://docuseal/./app/javascript/template_builder/document.vue?57ce","webpack://docuseal/./app/javascript/template_builder/logo.vue","webpack://docuseal/./app/javascript/template_builder/logo.vue?b1f3","webpack://docuseal/./app/javascript/template_builder/preview.vue","webpack://docuseal/./app/javascript/template_builder/replace.vue","webpack://docuseal/./app/javascript/template_builder/replace.vue?5372","webpack://docuseal/./app/javascript/template_builder/preview.vue?4d48","webpack://docuseal/./app/javascript/template_builder/controls.vue","webpack://docuseal/./app/javascript/template_builder/controls.vue?fc65","webpack://docuseal/./app/javascript/template_builder/mobile_fields.vue","webpack://docuseal/./app/javascript/template_builder/mobile_fields.vue?1326","webpack://docuseal/./app/javascript/template_builder/i18n.js","webpack://docuseal/./app/javascript/template_builder/builder.vue?9b53","webpack://docuseal/./app/javascript/template_builder/import_list.vue","webpack://docuseal/./app/javascript/template_builder/import_list.vue?74f3","webpack://docuseal/./app/javascript/elements/toggle_visible.js","webpack://docuseal/./app/javascript/elements/toggle_cookies.js","webpack://docuseal/./app/javascript/elements/disable_hidden.js","webpack://docuseal/./app/javascript/elements/turbo_modal.js","webpack://docuseal/./app/javascript/elements/file_dropzone.js","webpack://docuseal/./app/javascript/elements/menu_active.js","webpack://docuseal/./app/javascript/elements/apply_discount_code.js","webpack://docuseal/./app/javascript/elements/purchase_plan.js","webpack://docuseal/./app/javascript/elements/clipboard_copy.js","webpack://docuseal/./app/javascript/elements/dynamic_list.js","webpack://docuseal/./app/javascript/elements/download_button.js","webpack://docuseal/./app/javascript/elements/set_origin_url.js","webpack://docuseal/./app/javascript/elements/set_timezone.js","webpack://docuseal/./app/javascript/elements/autoresize_textarea.js","webpack://docuseal/./app/javascript/elements/submitter_autocomplete.js","webpack://docuseal/./app/javascript/elements/folder_autocomplete.js","webpack://docuseal/./app/javascript/elements/signature_form.js","webpack://docuseal/./app/javascript/submission_form/crop_canvas.js","webpack://docuseal/./app/javascript/elements/submit_form.js","webpack://docuseal/./app/javascript/elements/prompt_password.js","webpack://docuseal/./app/javascript/elements/emails_textarea.js","webpack://docuseal/./app/javascript/elements/toggle_on_submit.js","webpack://docuseal/./app/javascript/elements/password_input.js","webpack://docuseal/./app/javascript/elements/search_input.js","webpack://docuseal/./app/javascript/elements/toggle_attribute.js","webpack://docuseal/./app/javascript/elements/linked_input.js","webpack://docuseal/./app/javascript/elements/checkbox_group.js","webpack://docuseal/./app/javascript/elements/masked_input.js","webpack://docuseal/./app/javascript/elements/set_date_button.js","webpack://docuseal/./app/javascript/elements/email_form.js","webpack://docuseal/./app/javascript/lib/turbo_instant_click.js","webpack://docuseal/./app/javascript/lib/clarity.js","webpack://docuseal/./app/javascript/application.js","webpack://docuseal/webpack/bootstrap","webpack://docuseal/webpack/runtime/define property getters","webpack://docuseal/webpack/runtime/ensure chunk","webpack://docuseal/webpack/runtime/get javascript chunk filename","webpack://docuseal/webpack/runtime/get mini-css chunk filename","webpack://docuseal/webpack/runtime/global","webpack://docuseal/webpack/runtime/hasOwnProperty shorthand","webpack://docuseal/webpack/runtime/make namespace object","webpack://docuseal/webpack/runtime/publicPath","webpack://docuseal/webpack/runtime/jsonp chunk loading","webpack://docuseal/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var inProgress = {};\nvar dataWebpackPrefix = \"docuseal:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","<template>\n  <div\n    style=\"max-width: 1600px\"\n    class=\"mx-auto pl-3 h-full\"\n    :class=\"isMobile ? 'pl-4' : 'md:pl-4'\"\n  >\n    <div\n      v-if=\"pendingFieldAttachmentUuids.length && editable\"\n      class=\"top-1.5 sticky h-0 z-20 max-w-2xl mx-auto\"\n    >\n      <div class=\"alert border-base-content/30 py-2 px-2.5\">\n        <IconInfoCircle class=\"stroke-info shrink-0 w-6 h-6\" />\n        <span>{{\n          t(\"uploaded_pdf_contains_form_fields_keep_or_remove_them\")\n        }}</span>\n        <div>\n          <button class=\"btn btn-sm\" @click.prevent=\"removePendingFields\">\n            {{ t(\"remove\") }}\n          </button>\n          <button\n            class=\"btn btn-sm btn-neutral text-white\"\n            @click.prevent=\"save\"\n          >\n            {{ t(\"keep\") }}\n          </button>\n        </div>\n      </div>\n    </div>\n    <div\n      v-if=\"$slots.buttons || withTitle\"\n      id=\"title_container\"\n      class=\"flex justify-between py-1.5 items-center pr-4 top-0 z-10 rounded-lg bg-white\"\n      :class=\"{ sticky: withStickySubmitters || isBreakpointLg }\"\n    >\n      <div class=\"flex items-center space-x-3\">\n        <a v-if=\"withLogo\" href=\"/\">\n          <Logo />\n        </a>\n        <div class=\"flex flex-col items-start space-x-2\">\n          <div class=\"flex items-center space-x-2\">\n            <IconFolder width=\"22\" class=\"inline\" />\n            <div v-if=\"template.folder_name\">\n              <span class=\"text-md font-semibold md:inline\">\n                <span class=\"text-sm text-gray-500 font-normal\"> In </span>\n                {{ template.folder_name }}\n                <span class=\"text-sm text-gray-500 font-normal\"> folder </span>\n              </span>\n            </div>\n          </div>\n          <Contenteditable\n            v-if=\"withTitle\"\n            :model-value=\"template.name\"\n            :editable=\"editable\"\n            class=\"text-xl md:text-3xl font-semibold focus:text-clip\"\n            :icon-stroke-width=\"2.3\"\n            @update:model-value=\"updateName\"\n          />\n        </div>\n      </div>\n      <div class=\"space-x-3 flex items-center flex-shrink-0\">\n        <slot v-if=\"$slots.buttons\" name=\"buttons\" />\n        <template v-else>\n          <a\n            v-if=\"withSignYourselfButton\"\n            :href=\"\n              template.submitters.length > 1\n                ? `/templates/${template.id}/submissions/new?selfsign=true`\n                : `/d/${template.slug}`\n            \"\n            class=\"btn btn-primary btn-ghost text-base hidden md:flex\"\n            :target=\"template.submitters.length > 1 ? '' : '_blank'\"\n            :data-turbo-frame=\"template.submitters.length > 1 ? 'modal' : ''\"\n            @click=\"maybeShowErrorTemplateAlert\"\n          >\n            <IconSignature width=\"22\" class=\"inline\" />\n            <span class=\"hidden md:inline\">\n              {{ t(\"sign_yourself\") }}\n            </span>\n          </a>\n          <a\n            v-if=\"withSendButton\"\n            :href=\"`/templates/${template.id}/submissions/new?with_link=true`\"\n            data-turbo-frame=\"modal\"\n            class=\"white-button md:!px-6\"\n            @click=\"maybeShowErrorTemplateAlert\"\n          >\n            <IconUsersPlus width=\"20\" class=\"inline\" />\n            <span class=\"hidden md:inline\">\n              {{ t(\"send\") }}\n            </span>\n          </a>\n          <span v-if=\"editable\" class=\"flex\">\n            <button\n              class=\"base-button\"\n              :class=\"{ disabled: isSaving }\"\n              v-bind=\"isSaving ? { disabled: true } : {}\"\n              @click.prevent=\"onSaveClick\"\n            >\n              <IconInnerShadowTop\n                v-if=\"isSaving\"\n                width=\"22\"\n                class=\"animate-spin\"\n              />\n              <!-- <IconDeviceFloppy v-else width=\"22\" /> -->\n              <span class=\"hidden md:inline\">\n                {{ t(\"save document\") }}\n              </span>\n            </button>\n            <div v-if=\"false\" class=\"dropdown dropdown-end\">\n              <label\n                tabindex=\"0\"\n                class=\"base-button !rounded-l-none !pl-1 !pr-2 !border-l-neutral-500\"\n              >\n                <span class=\"text-sm align-text-top\">\n                  <IconChevronDown class=\"w-5 h-5 flex-shrink-0\" />\n                </span>\n              </label>\n              <ul\n                tabindex=\"0\"\n                class=\"dropdown-content p-2 mt-2 shadow menu text-base bg-base-100 rounded-box text-right\"\n              >\n                <li>\n                  <a\n                    :href=\"`/templates/${template.id}/form`\"\n                    data-turbo=\"false\"\n                    class=\"flex items-center justify-center space-x-2\"\n                  >\n                    <IconEye class=\"w-6 h-6 flex-shrink-0\" />\n                    <span class=\"whitespace-nowrap\">{{\n                      t(\"save_and_preview\")\n                    }}</span>\n                  </a>\n                </li>\n                <li>\n                  <a\n                    :href=\"`/templates/${template.id}/preferences`\"\n                    data-turbo-frame=\"modal\"\n                    class=\"flex space-x-2\"\n                    @click=\"closeDropdown\"\n                  >\n                    <IconAdjustments class=\"w-6 h-6 flex-shrink-0\" />\n                    <span class=\"whitespace-nowrap\">{{\n                      t(\"preferences\")\n                    }}</span>\n                  </a>\n                </li>\n              </ul>\n            </div>\n          </span>\n          <a v-else :href=\"`/templates/${template.id}`\" class=\"base-button\">\n            <span class=\"hidden md:inline\">\n              {{ t(\"back\") }}\n            </span>\n          </a>\n        </template>\n      </div>\n    </div>\n    <div class=\"back-button flex items-start align-center space-x-2 my-2\">\n      <a\n        href=\"/\"\n        class=\"border-base-300 rounded-lg p-2 flex hover:bg-[#2d3748] hover:text-white transition-all duration-300\"\n      >\n        <IconArrowLeft class=\"w-6 h-6\" />\n        <span class=\"capitalize pl-1\">\n          {{ t(\"back\") }}\n        </span>\n      </a>\n    </div>\n    <div\n      id=\"main_container\"\n      class=\"flex\"\n      :class=\"\n        $slots.buttons || withTitle\n          ? isMobile\n            ? 'max-h-[calc(100%_-_60px)]'\n            : 'md:max-h-[calc(100%_-_60px)]'\n          : isMobile\n            ? 'max-h-[100%]'\n            : 'md:max-h-[100%]'\n      \"\n    >\n      <div\n        v-if=\"withDocumentsList\"\n        id=\"documents_container\"\n        ref=\"previews\"\n        :style=\"{ display: isBreakpointLg ? 'none' : 'initial' }\"\n        class=\"overflow-y-auto overflow-x-hidden w-52 flex-none pr-3 mt-0.5 pt-0.5 hidden lg:block\"\n      >\n        <DocumentPreview\n          v-for=\"(item, index) in template.schema\"\n          :key=\"index\"\n          :with-arrows=\"template.schema.length > 1\"\n          :item=\"item\"\n          :document=\"sortedDocuments[index]\"\n          :accept-file-types=\"acceptFileTypes\"\n          :with-replace-button=\"withUploadButton\"\n          :editable=\"editable\"\n          :template=\"template\"\n          @scroll-to=\"scrollIntoDocument(item)\"\n          @remove=\"onDocumentRemove\"\n          @replace=\"onDocumentReplace\"\n          @up=\"moveDocument(item, -1)\"\n          @down=\"moveDocument(item, 1)\"\n          @change=\"save\"\n        />\n        <div\n          v-if=\"false\"\n          class=\"sticky bottom-0 py-2 space-y-2\"\n          :style=\"{ backgroundColor }\"\n        >\n          <Upload\n            v-if=\"sortedDocuments.length && editable && withUploadButton\"\n            :accept-file-types=\"acceptFileTypes\"\n            :template-id=\"template.id\"\n            @success=\"updateFromUpload\"\n          />\n          <button\n            v-if=\"sortedDocuments.length && editable && withAddPageButton\"\n            id=\"add_blank_page_button\"\n            class=\"btn btn-outline w-full\"\n            @click.prevent=\"addBlankPage\"\n          >\n            <IconInnerShadowTop\n              v-if=\"isLoadingBlankPage\"\n              class=\"animate-spin w-5 h-5\"\n            />\n            <IconPlus v-else class=\"w-5 h-5\" />\n            {{ t(\"add_blank_page\") }}\n          </button>\n        </div>\n      </div>\n      <div\n        id=\"pages_container\"\n        class=\"w-full overflow-y-hidden overflow-x-hidden mt-0.5 pt-0.5\"\n        :class=\"isMobile ? 'overflow-y-auto' : 'md:overflow-y-auto'\"\n      >\n        <div ref=\"documents\" class=\"pr-3.5 pl-0.5\">\n          <template\n            v-if=\"\n              !sortedDocuments.length && (withUploadButton || withAddPageButton)\n            \"\n          >\n            <Dropzone\n              v-if=\"withUploadButton\"\n              :template-id=\"template.id\"\n              :accept-file-types=\"acceptFileTypes\"\n              @success=\"updateFromUpload\"\n            />\n            <button\n              v-if=\"withAddPageButton\"\n              id=\"add_blank_page_button\"\n              class=\"btn btn-outline w-full mt-4\"\n              @click.prevent=\"addBlankPage\"\n            >\n              <IconInnerShadowTop\n                v-if=\"isLoadingBlankPage\"\n                class=\"animate-spin w-5 h-5\"\n              />\n              <IconPlus v-else class=\"w-5 h-5\" />\n              {{ t(\"add_blank_page\") }}\n            </button>\n          </template>\n          <template v-else>\n            <template v-for=\"document in sortedDocuments\" :key=\"document.uuid\">\n              <Document\n                :ref=\"setDocumentRefs\"\n                :areas-index=\"fieldAreasIndex[document.uuid]\"\n                :selected-submitter=\"selectedSubmitter\"\n                :document=\"document\"\n                :is-drag=\"!!dragField\"\n                :input-mode=\"inputMode\"\n                :default-fields=\"[...defaultRequiredFields, ...defaultFields]\"\n                :allow-draw=\"!onlyDefinedFields\"\n                :default-submitters=\"defaultSubmitters\"\n                :with-field-placeholder=\"withFieldPlaceholder\"\n                :draw-field=\"drawField\"\n                :draw-field-type=\"drawFieldType\"\n                :editable=\"editable\"\n                :base-url=\"baseUrl\"\n                @draw=\"[\n                  onDraw($event),\n                  withSelectedFieldType ? '' : (drawFieldType = ''),\n                  (showDrawField = false),\n                ]\"\n                @drop-field=\"onDropfield\"\n                @remove-area=\"removeArea\"\n              />\n              <DocumentControls\n                v-if=\"isBreakpointLg && editable\"\n                :with-arrows=\"template.schema.length > 1\"\n                :item=\"\n                  template.schema.find(\n                    (item) => item.attachment_uuid === document.uuid,\n                  )\n                \"\n                :with-replace-button=\"withUploadButton\"\n                :accept-file-types=\"acceptFileTypes\"\n                :document=\"document\"\n                :template=\"template\"\n                class=\"pb-2 mb-2 border-b border-base-300 border-dashed\"\n                @remove=\"onDocumentRemove\"\n                @replace=\"onDocumentReplace\"\n                @up=\"\n                  moveDocument(\n                    template.schema.find(\n                      (item) => item.attachment_uuid === document.uuid,\n                    ),\n                    -1,\n                  )\n                \"\n                @down=\"\n                  moveDocument(\n                    template.schema.find(\n                      (item) => item.attachment_uuid === document.uuid,\n                    ),\n                    1,\n                  )\n                \"\n                @change=\"save\"\n              />\n            </template>\n            <div\n              v-if=\"sortedDocuments.length && isBreakpointLg && editable\"\n              class=\"pb-4 space-y-2\"\n            >\n              <Upload\n                v-if=\"withUploadButton\"\n                :template-id=\"template.id\"\n                :accept-file-types=\"acceptFileTypes\"\n                @success=\"updateFromUpload\"\n              />\n              <button\n                v-if=\"withAddPageButton\"\n                id=\"add_blank_page_button\"\n                class=\"btn btn-outline w-full mt-4\"\n                @click.prevent=\"addBlankPage\"\n              >\n                <IconInnerShadowTop\n                  v-if=\"isLoadingBlankPage\"\n                  class=\"animate-spin w-5 h-5\"\n                />\n                <IconPlus v-else class=\"w-5 h-5\" />\n                {{ t(\"add_blank_page\") }}\n              </button>\n            </div>\n          </template>\n        </div>\n      </div>\n      <div\n        v-if=\"withFieldsList && !isMobile\"\n        id=\"fields_list_container\"\n        class=\"relative w-80 flex-none mt-1 pr-4 pl-0.5 hidden md:block\"\n        :class=\"\n          drawField ? 'overflow-hidden' : 'overflow-y-auto overflow-x-hidden'\n        \"\n      >\n        <div\n          v-if=\"showDrawField || drawField\"\n          class=\"sticky inset-0 h-full z-20\"\n        >\n          <div class=\"bg-base-200 rounded-lg p-5 text-center space-y-4\">\n            <p>\n              {{ t(\"draw_field_on_the_document\") }}\n            </p>\n            <div>\n              <button class=\"base-button\" @click=\"clearDrawField\">\n                {{ t(\"cancel\") }}\n              </button>\n              <a\n                v-if=\"\n                  !drawField &&\n                  !drawOption &&\n                  !['stamp', 'signature', 'initials', 'heading'].includes(\n                    drawField?.type || drawFieldType,\n                  )\n                \"\n                href=\"#\"\n                class=\"link block mt-3 text-sm\"\n                @click.prevent=\"[\n                  addField(drawFieldType),\n                  (drawField = null),\n                  (drawOption = null),\n                  withSelectedFieldType ? '' : (drawFieldType = ''),\n                  (showDrawField = false),\n                ]\"\n              >\n                {{ t(\"or_add_field_without_drawing\") }}\n              </a>\n            </div>\n          </div>\n        </div>\n        <div>\n          <Fields\n            ref=\"fields\"\n            :fields=\"template.fields\"\n            :submitters=\"template.submitters\"\n            :selected-submitter=\"selectedSubmitter\"\n            :with-help=\"withHelp\"\n            :default-submitters=\"defaultSubmitters\"\n            :draw-field-type=\"drawFieldType\"\n            :default-fields=\"[...defaultRequiredFields, ...defaultFields]\"\n            :template=\"template\"\n            :default-required-fields=\"defaultRequiredFields\"\n            :field-types=\"fieldTypes\"\n            :with-sticky-submitters=\"withStickySubmitters\"\n            :only-defined-fields=\"onlyDefinedFields\"\n            :editable=\"editable\"\n            @add-field=\"addField\"\n            @set-draw=\"[\n              (drawField = $event.field),\n              (drawOption = $event.option),\n            ]\"\n            @set-draw-type=\"[(drawFieldType = $event), (showDrawField = true)]\"\n            @set-drag=\"dragField = $event\"\n            @change-submitter=\"selectedSubmitter = $event\"\n            @drag-end=\"dragField = null\"\n            @scroll-to-area=\"scrollToArea\"\n          />\n        </div>\n      </div>\n    </div>\n    <div class=\"sticky bottom-0 z-10\">\n      <MobileDrawField\n        v-if=\"drawField && (isBreakpointLg || isMobile)\"\n        :draw-field=\"drawField\"\n        :fields=\"template.fields\"\n        :submitters=\"template.submitters\"\n        :selected-submitter=\"selectedSubmitter\"\n        :class=\"{ 'md:hidden': !isMobile }\"\n        :editable=\"editable\"\n        @cancel=\"[(drawField = null), (drawOption = null)]\"\n        @change-submitter=\"[\n          (selectedSubmitter = $event),\n          (drawField.submitter_uuid = $event.uuid),\n        ]\"\n      />\n      <MobileFields\n        v-if=\"sortedDocuments.length && !drawField && editable\"\n        :fields=\"template.fields\"\n        :default-fields=\"[...defaultRequiredFields, ...defaultFields]\"\n        :default-required-fields=\"defaultRequiredFields\"\n        :field-types=\"fieldTypes\"\n        :class=\"{ 'md:hidden': !isMobile }\"\n        :selected-submitter=\"selectedSubmitter\"\n        @select=\"startFieldDraw($event)\"\n      />\n    </div>\n    <div id=\"docuseal_modal_container\" />\n  </div>\n</template>\n\n<script>\nimport Upload from \"./upload\";\nimport Dropzone from \"./dropzone\";\nimport Fields from \"./fields\";\nimport MobileDrawField from \"./mobile_draw_field\";\nimport Document from \"./document\";\nimport Logo from \"./logo\";\nimport Contenteditable from \"./contenteditable\";\nimport DocumentPreview from \"./preview\";\nimport DocumentControls from \"./controls\";\nimport MobileFields from \"./mobile_fields\";\nimport FieldSubmitter from \"./field_submitter\";\nimport {\n  IconPlus,\n  IconUsersPlus,\n  IconDeviceFloppy,\n  IconChevronDown,\n  IconEye,\n  IconSignature,\n  IconInnerShadowTop,\n  IconInfoCircle,\n  IconAdjustments,\n  IconArrowLeft,\n} from \"@tabler/icons-vue\";\nimport { v4 } from \"uuid\";\nimport { ref, computed } from \"vue\";\nimport * as i18n from \"./i18n\";\n\nexport default {\n  name: \"TemplateBuilder\",\n  components: {\n    Upload,\n    Document,\n    Fields,\n    IconInfoCircle,\n    MobileDrawField,\n    IconPlus,\n    IconSignature,\n    MobileFields,\n    Logo,\n    Dropzone,\n    DocumentPreview,\n    DocumentControls,\n    IconInnerShadowTop,\n    Contenteditable,\n    IconUsersPlus,\n    IconChevronDown,\n    IconAdjustments,\n    IconEye,\n    IconDeviceFloppy,\n    IconArrowLeft,\n  },\n  provide() {\n    return {\n      template: this.template,\n      save: this.save,\n      t: this.t,\n      currencies: this.currencies,\n      locale: this.locale,\n      baseFetch: this.baseFetch,\n      fieldTypes: this.fieldTypes,\n      backgroundColor: this.backgroundColor,\n      withPhone: this.withPhone,\n      withVerification: this.withVerification,\n      withPayment: this.withPayment,\n      isPaymentConnected: this.isPaymentConnected,\n      withFormula: this.withFormula,\n      withConditions: this.withConditions,\n      defaultDrawFieldType: this.defaultDrawFieldType,\n      selectedAreaRef: computed(() => this.selectedAreaRef),\n      fieldsDragFieldRef: computed(() => this.fieldsDragFieldRef),\n    };\n  },\n  props: {\n    template: {\n      type: Object,\n      required: true,\n    },\n    i18n: {\n      type: Object,\n      required: false,\n      default: () => ({}),\n    },\n    withFieldPlaceholder: {\n      type: Boolean,\n      required: false,\n      default: false,\n    },\n    backgroundColor: {\n      type: String,\n      required: false,\n      default: \"\",\n    },\n    locale: {\n      type: String,\n      required: false,\n      default: \"\",\n    },\n    editable: {\n      type: Boolean,\n      required: false,\n      default: true,\n    },\n    withSendButton: {\n      type: Boolean,\n      required: false,\n      default: true,\n    },\n    withSignYourselfButton: {\n      type: Boolean,\n      required: false,\n      default: true,\n    },\n    inputMode: {\n      type: Boolean,\n      required: false,\n      default: false,\n    },\n    withHelp: {\n      type: Boolean,\n      required: false,\n      default: true,\n    },\n    withAddPageButton: {\n      type: Boolean,\n      required: false,\n      default: false,\n    },\n    autosave: {\n      type: Boolean,\n      required: false,\n      default: true,\n    },\n    defaultFields: {\n      type: Array,\n      required: false,\n      default: () => [],\n    },\n    defaultRequiredFields: {\n      type: Array,\n      required: false,\n      default: () => [],\n    },\n    withSelectedFieldType: {\n      type: Boolean,\n      required: false,\n      default: false,\n    },\n    defaultDrawFieldType: {\n      type: String,\n      required: false,\n      default: \"signature\",\n    },\n    currencies: {\n      type: Array,\n      required: false,\n      default: () => [],\n    },\n    fieldTypes: {\n      type: Array,\n      required: false,\n      default: () => [],\n    },\n    defaultSubmitters: {\n      type: Array,\n      required: false,\n      default: () => [],\n    },\n    defineSubmitters: {\n      type: Array,\n      required: false,\n      default: () => [],\n    },\n    acceptFileTypes: {\n      type: String,\n      required: false,\n      default: \"image/*, application/pdf\",\n    },\n    baseUrl: {\n      type: String,\n      required: false,\n      default: \"\",\n    },\n    withLogo: {\n      type: Boolean,\n      required: false,\n      default: true,\n    },\n    onUpload: {\n      type: Function,\n      required: false,\n      default() {\n        return () => {};\n      },\n    },\n    onSave: {\n      type: Function,\n      required: false,\n      default() {\n        return () => {};\n      },\n    },\n    onChange: {\n      type: Function,\n      required: false,\n      default() {\n        return () => {};\n      },\n    },\n    withStickySubmitters: {\n      type: Boolean,\n      required: false,\n      default: true,\n    },\n    withUploadButton: {\n      type: Boolean,\n      required: false,\n      default: true,\n    },\n    withTitle: {\n      type: Boolean,\n      required: false,\n      default: true,\n    },\n    withFieldsList: {\n      type: Boolean,\n      required: false,\n      default: true,\n    },\n    authenticityToken: {\n      type: String,\n      required: false,\n      default: \"\",\n    },\n    withDocumentsList: {\n      type: Boolean,\n      required: false,\n      default: true,\n    },\n    withPhone: {\n      type: Boolean,\n      required: false,\n      default: false,\n    },\n    withVerification: {\n      type: Boolean,\n      required: false,\n      default: null,\n    },\n    withPayment: {\n      type: Boolean,\n      required: false,\n      default: false,\n    },\n    isPaymentConnected: {\n      type: Boolean,\n      required: false,\n      default: false,\n    },\n    withFormula: {\n      type: Boolean,\n      required: false,\n      default: false,\n    },\n    withConditions: {\n      type: Boolean,\n      required: false,\n      default: false,\n    },\n    onlyDefinedFields: {\n      type: Boolean,\n      required: false,\n      default: false,\n    },\n    fetchOptions: {\n      type: Object,\n      required: false,\n      default: () => ({ headers: {} }),\n    },\n  },\n  data() {\n    return {\n      documentRefs: [],\n      isBreakpointLg: false,\n      isLoadingBlankPage: false,\n      isSaving: false,\n      selectedSubmitter: null,\n      showDrawField: false,\n      pendingFieldAttachmentUuids: [],\n      drawField: null,\n      copiedArea: null,\n      drawFieldType: null,\n      drawOption: null,\n      dragField: null,\n    };\n  },\n  computed: {\n    submitterDefaultNames: FieldSubmitter.computed.names,\n    selectedAreaRef: () => ref(),\n    fieldsDragFieldRef: () => ref(),\n    language() {\n      return this.locale.split(\"-\")[0].toLowerCase();\n    },\n    isMobile() {\n      return /android|iphone|ipad/i.test(navigator.userAgent);\n    },\n    defaultDateFormat() {\n      const isUsBrowser = Intl.DateTimeFormat()\n        .resolvedOptions()\n        .locale.endsWith(\"-US\");\n      const isUsTimezone = new Intl.DateTimeFormat(\"en-US\", {\n        timeZoneName: \"short\",\n      })\n        .format(new Date())\n        .match(/\\s(?:CST|CDT|PST|PDT|EST|EDT)$/);\n\n      return (\n        this.localeDateFormats[this.locale] ||\n        (isUsBrowser || isUsTimezone ? \"MM/DD/YYYY\" : \"DD/MM/YYYY\")\n      );\n    },\n    localeDateFormats() {\n      return {\n        \"de-DE\": \"DD.MM.YYYY\",\n        \"fr-FR\": \"DD/MM/YYYY\",\n        \"it-IT\": \"DD/MM/YYYY\",\n        \"en-GB\": \"DD/MM/YYYY\",\n        \"es-ES\": \"DD/MM/YYYY\",\n      };\n    },\n    fieldAreasIndex() {\n      const areas = {};\n\n      this.template.fields.forEach((f) => {\n        (f.areas || []).forEach((a) => {\n          areas[a.attachment_uuid] ||= {};\n\n          const acc = (areas[a.attachment_uuid][a.page] ||= []);\n\n          acc.push({ area: a, field: f });\n        });\n      });\n\n      return areas;\n    },\n    isAllRequiredFieldsAdded() {\n      return !this.defaultRequiredFields?.some((f) => {\n        return !this.template.fields?.some((field) => field.name === f.name);\n      });\n    },\n    selectedField() {\n      return this.template.fields.find((f) =>\n        f.areas?.includes(this.selectedAreaRef.value),\n      );\n    },\n    sortedDocuments() {\n      return this.template.schema.map((item) => {\n        return this.template.documents.find(\n          (doc) => doc.uuid === item.attachment_uuid,\n        );\n      });\n    },\n  },\n  created() {\n    if (\n      !this.template.fields?.length &&\n      this.template.submitters?.length === 1\n    ) {\n      if (this.template.submitters[0]?.name === \"First Party\") {\n        this.template.submitters[0].name = this.t(\"first_party\");\n      }\n    }\n\n    const existingSubmittersUuids = this.defaultSubmitters.map((name) => {\n      return this.template.submitters.find((e) => e.name === name)?.uuid;\n    });\n\n    this.defaultSubmitters.forEach((name, index) => {\n      const submitter = (this.template.submitters[index] ||= {});\n\n      submitter.name = name;\n\n      if (existingSubmittersUuids.filter(Boolean).length) {\n        submitter.uuid =\n          existingSubmittersUuids[index] || submitter.uuid || v4();\n      } else {\n        submitter.uuid ||= v4();\n      }\n    });\n\n    this.defineSubmitters.forEach((name, index) => {\n      const submitter = (this.template.submitters[index] ||= {});\n\n      submitter.name = name || this.submitterDefaultNames[index];\n\n      if (existingSubmittersUuids.filter(Boolean).length) {\n        submitter.uuid =\n          existingSubmittersUuids[index] || submitter.uuid || v4();\n      } else {\n        submitter.uuid ||= v4();\n      }\n    });\n\n    this.selectedSubmitter = this.template.submitters[0];\n  },\n  mounted() {\n    this.undoStack = [JSON.stringify(this.template)];\n    this.redoStack = [];\n\n    this.$nextTick(() => {\n      this.onWindowResize();\n    });\n\n    document.addEventListener(\"keyup\", this.onKeyUp);\n    window.addEventListener(\"keydown\", this.onKeyDown);\n\n    window.addEventListener(\"resize\", this.onWindowResize);\n\n    this.$nextTick(() => {\n      if (document.location.search?.includes(\"stripe_connect_success\")) {\n        document\n          .querySelector('form[action=\"/auth/stripe_connect\"]')\n          ?.closest(\".dropdown\")\n          ?.querySelector(\"label\")\n          ?.focus();\n      }\n    });\n\n    this.template.schema.forEach((item) => {\n      if (item.pending_fields) {\n        this.pendingFieldAttachmentUuids.push(item.attachment_uuid);\n      }\n    });\n  },\n  unmounted() {\n    document.removeEventListener(\"keyup\", this.onKeyUp);\n    window.removeEventListener(\"keydown\", this.onKeyDown);\n\n    window.removeEventListener(\"resize\", this.onWindowResize);\n  },\n  beforeUpdate() {\n    this.documentRefs = [];\n  },\n  methods: {\n    closeDropdown() {\n      document.activeElement.blur();\n    },\n    t(key) {\n      return (\n        this.i18n[key] || i18n[this.language]?.[key] || i18n.en[key] || key\n      );\n    },\n    removePendingFields() {\n      this.template.fields = this.template.fields.filter((f) => {\n        return this.template.schema.find(\n          (item) =>\n            item.attachment_uuid === f.attachment_uuid && item.pending_fields,\n        );\n      });\n\n      this.save();\n    },\n    addField(type, area = null) {\n      const field = {\n        name: \"\",\n        uuid: v4(),\n        required: type !== \"checkbox\",\n        areas: area ? [area] : [],\n        submitter_uuid: this.selectedSubmitter.uuid,\n        type,\n      };\n\n      if ([\"select\", \"multiple\", \"radio\"].includes(type)) {\n        field.options = [{ value: \"\", uuid: v4() }];\n      }\n\n      if (type === \"stamp\") {\n        field.readonly = true;\n      }\n\n      if (type === \"date\") {\n        field.preferences = {\n          format: this.defaultDateFormat,\n        };\n      }\n\n      this.template.fields.push(field);\n\n      this.save();\n    },\n    startFieldDraw({ name, type }) {\n      const existingField = this.template.fields?.find(\n        (f) =>\n          f.submitter_uuid === this.selectedSubmitter.uuid &&\n          name &&\n          name === f.name,\n      );\n\n      if (existingField) {\n        this.drawField = existingField;\n      } else {\n        const field = {\n          name: name || \"\",\n          uuid: v4(),\n          required: type !== \"checkbox\",\n          areas: [],\n          submitter_uuid: this.selectedSubmitter.uuid,\n          type,\n        };\n\n        if ([\"select\", \"multiple\", \"radio\"].includes(type)) {\n          field.options = [{ value: \"\", uuid: v4() }];\n        }\n\n        if (type === \"stamp\") {\n          field.readonly = true;\n        }\n\n        if (type === \"date\") {\n          field.preferences = {\n            format: this.defaultDateFormat,\n          };\n        }\n\n        this.drawField = field;\n      }\n\n      this.drawOption = null;\n    },\n    undo() {\n      if (this.undoStack.length > 1) {\n        this.undoStack.pop();\n        const stringData = this.undoStack[this.undoStack.length - 1];\n        const currentStringData = JSON.stringify(this.template);\n\n        if (stringData && stringData !== currentStringData) {\n          this.redoStack.push(currentStringData);\n\n          Object.assign(this.template, JSON.parse(stringData));\n\n          this.save();\n        }\n      }\n    },\n    redo() {\n      const stringData = this.redoStack.pop();\n      this.lastRedoData = stringData;\n      const currentStringData = JSON.stringify(this.template);\n\n      if (stringData && stringData !== currentStringData) {\n        if (this.undoStack[this.undoStack.length - 1] !== currentStringData) {\n          this.undoStack.push(currentStringData);\n        }\n\n        Object.assign(this.template, JSON.parse(stringData));\n\n        this.save();\n      }\n    },\n    onWindowResize(e) {\n      const breakpointLg = 1024;\n\n      this.isBreakpointLg =\n        this.$el.getRootNode().querySelector(\"div[data-v-app]\").offsetWidth <\n        breakpointLg;\n    },\n    setDocumentRefs(el) {\n      if (el) {\n        this.documentRefs.push(el);\n      }\n    },\n    scrollIntoDocument(item) {\n      const ref = this.documentRefs.find(\n        (e) => e.document.uuid === item.attachment_uuid,\n      );\n\n      ref.$el.scrollIntoView({ behavior: \"smooth\", block: \"start\" });\n    },\n    clearDrawField() {\n      this.drawField = null;\n      this.drawOption = null;\n      this.showDrawField = false;\n\n      if (!this.withSelectedFieldType) {\n        this.drawFieldType = \"\";\n      }\n    },\n    onKeyUp(e) {\n      if (e.code === \"Escape\") {\n        this.clearDrawField();\n\n        this.selectedAreaRef.value = null;\n      }\n\n      if (\n        this.editable &&\n        [\"Backspace\", \"Delete\"].includes(e.key) &&\n        this.selectedAreaRef.value &&\n        document.activeElement === document.body\n      ) {\n        this.removeArea(this.selectedAreaRef.value);\n\n        this.selectedAreaRef.value = null;\n      }\n    },\n    onKeyDown(event) {\n      if (\n        (event.metaKey && event.shiftKey && event.key === \"z\") ||\n        (event.ctrlKey && event.key === \"Z\")\n      ) {\n        event.stopImmediatePropagation();\n        event.preventDefault();\n\n        this.redo();\n      } else if ((event.ctrlKey || event.metaKey) && event.key === \"z\") {\n        event.stopImmediatePropagation();\n        event.preventDefault();\n\n        this.undo();\n      } else if (\n        (event.ctrlKey || event.metaKey) &&\n        event.key === \"c\" &&\n        document.activeElement === document.body\n      ) {\n        event.preventDefault();\n\n        this.copiedArea = this.selectedAreaRef?.value;\n      } else if (\n        (event.ctrlKey || event.metaKey) &&\n        event.key === \"v\" &&\n        this.copiedArea &&\n        document.activeElement === document.body\n      ) {\n        event.preventDefault();\n\n        this.pasteField();\n      } else if (\n        this.selectedAreaRef.value &&\n        [\"ArrowLeft\", \"ArrowUp\", \"ArrowRight\", \"ArrowDown\"].includes(\n          event.key,\n        ) &&\n        document.activeElement === document.body\n      ) {\n        event.preventDefault();\n\n        this.handleAreaArrows(event);\n      }\n    },\n    handleAreaArrows(event) {\n      if (!this.editable) {\n        return;\n      }\n\n      const area = this.selectedAreaRef.value;\n      const documentRef = this.documentRefs.find(\n        (e) => e.document.uuid === area.attachment_uuid,\n      );\n      const page = documentRef.pageRefs[area.page].$refs.image;\n      const rect = page.getBoundingClientRect();\n      const diff = event.shiftKey ? 5.0 : 1.0;\n\n      if (event.key === \"ArrowRight\" && event.altKey) {\n        area.w = Math.min(Math.max(area.w + diff / rect.width, 0), 1 - area.x);\n      } else if (event.key === \"ArrowLeft\" && event.altKey) {\n        area.w = Math.min(Math.max(area.w - diff / rect.width, 0), 1 - area.x);\n      } else if (event.key === \"ArrowUp\" && event.altKey) {\n        area.h = Math.min(Math.max(area.h - diff / rect.height, 0), 1 - area.y);\n      } else if (event.key === \"ArrowDown\" && event.altKey) {\n        area.h = Math.min(Math.max(area.h + diff / rect.height, 0), 1 - area.y);\n      } else if (event.key === \"ArrowRight\") {\n        area.x = Math.min(Math.max(area.x + diff / rect.width, 0), 1 - area.w);\n      } else if (event.key === \"ArrowLeft\") {\n        area.x = Math.min(Math.max(area.x - diff / rect.width, 0), 1 - area.w);\n      } else if (event.key === \"ArrowUp\") {\n        area.y = Math.min(Math.max(area.y - diff / rect.height, 0), 1 - area.h);\n      } else if (event.key === \"ArrowDown\") {\n        area.y = Math.min(Math.max(area.y + diff / rect.height, 0), 1 - area.h);\n      }\n\n      this.debouncedSave();\n    },\n    debouncedSave() {\n      clearTimeout(this._saveTimeout);\n\n      this._saveTimeout = setTimeout(() => {\n        this.save();\n      }, 700);\n    },\n    removeArea(area) {\n      const field = this.template.fields.find((f) => f.areas?.includes(area));\n\n      field.areas.splice(field.areas.indexOf(area), 1);\n\n      if (!field.areas.length) {\n        this.template.fields.splice(this.template.fields.indexOf(field), 1);\n\n        this.template.fields.forEach((f) => {\n          (f.conditions || []).forEach((c) => {\n            if (c.field_uuid === field.uuid) {\n              f.conditions.splice(f.conditions.indexOf(c), 1);\n            }\n          });\n        });\n\n        this.template.schema.forEach((item) => {\n          (item.conditions || []).forEach((c) => {\n            if (c.field_uuid === field.uuid) {\n              item.conditions.splice(item.conditions.indexOf(c), 1);\n            }\n          });\n        });\n      }\n\n      this.save();\n    },\n    pasteField() {\n      const field = this.template.fields.find((f) =>\n        f.areas?.includes(this.copiedArea),\n      );\n      const currentArea = this.selectedAreaRef?.value || this.copiedArea;\n\n      if (field && currentArea) {\n        const area = {\n          ...JSON.parse(JSON.stringify(this.copiedArea)),\n          attachment_uuid: currentArea.attachment_uuid,\n          page: currentArea.page,\n          x: currentArea.x,\n          y: currentArea.y + currentArea.h * 1.3,\n        };\n\n        if ([\"radio\", \"multiple\"].includes(field.type)) {\n          this.copiedArea.option_uuid ||= field.options[0].uuid;\n          area.option_uuid = v4();\n\n          field.options.push({ uuid: area.option_uuid });\n\n          field.areas.push(area);\n        } else {\n          this.template.fields.push({\n            ...JSON.parse(JSON.stringify(field)),\n            uuid: v4(),\n            areas: [area],\n          });\n        }\n\n        this.selectedAreaRef.value = area;\n\n        this.save();\n      }\n    },\n    pushUndo() {\n      const stringData = JSON.stringify(this.template);\n\n      if (this.undoStack[this.undoStack.length - 1] !== stringData) {\n        this.undoStack.push(stringData);\n\n        if (this.lastRedoData !== stringData) {\n          this.redoStack = [];\n        }\n      }\n    },\n    setDefaultAreaSize(area, type) {\n      const documentRef = this.documentRefs.find(\n        (e) => e.document.uuid === area.attachment_uuid,\n      );\n      const pageMask = documentRef.pageRefs[area.page].$refs.mask;\n\n      if (type === \"checkbox\") {\n        area.w = pageMask.clientWidth / 30 / pageMask.clientWidth;\n        area.h =\n          (pageMask.clientWidth / 30 / pageMask.clientWidth) *\n          (pageMask.clientWidth / pageMask.clientHeight);\n      } else if (type === \"image\") {\n        area.w = pageMask.clientWidth / 5 / pageMask.clientWidth;\n        area.h =\n          (pageMask.clientWidth / 5 / pageMask.clientWidth) *\n          (pageMask.clientWidth / pageMask.clientHeight);\n      } else if (\n        type === \"signature\" ||\n        type === \"stamp\" ||\n        type === \"verification\"\n      ) {\n        area.w = pageMask.clientWidth / 5 / pageMask.clientWidth;\n        area.h =\n          ((pageMask.clientWidth / 5 / pageMask.clientWidth) *\n            (pageMask.clientWidth / pageMask.clientHeight)) /\n          2;\n      } else if (type === \"initials\") {\n        area.w = pageMask.clientWidth / 10 / pageMask.clientWidth;\n        area.h = pageMask.clientWidth / 35 / pageMask.clientWidth;\n      } else {\n        area.w = pageMask.clientWidth / 5 / pageMask.clientWidth;\n        area.h = pageMask.clientWidth / 35 / pageMask.clientWidth;\n      }\n    },\n    onDraw(area) {\n      if (this.drawField) {\n        if (this.drawOption) {\n          const areaWithoutOption = this.drawField.areas?.find(\n            (a) => !a.option_uuid,\n          );\n\n          if (\n            areaWithoutOption &&\n            !this.drawField.areas.find(\n              (a) => a.option_uuid === this.drawField.options[0].uuid,\n            )\n          ) {\n            areaWithoutOption.option_uuid = this.drawField.options[0].uuid;\n          }\n\n          area.option_uuid = this.drawOption.uuid;\n        }\n\n        if (area.w === 0 || area.h === 0) {\n          const previousArea =\n            this.drawField.areas?.[this.drawField.areas.length - 1];\n\n          if (this.selectedField?.type === this.drawField.type) {\n            area.w = this.selectedAreaRef.value.w;\n            area.h = this.selectedAreaRef.value.h;\n          } else if (previousArea) {\n            area.w = previousArea.w;\n            area.h = previousArea.h;\n          } else {\n            this.setDefaultAreaSize(\n              area,\n              this.drawOption ? \"checkbox\" : this.drawField?.type,\n            );\n          }\n\n          area.x -= area.w / 2;\n          area.y -= area.h / 2;\n        }\n\n        this.drawField.areas ||= [];\n\n        const insertBeforeAreaIndex = this.drawField.areas.findIndex((a) => {\n          return (\n            a.attachment_uuid === area.attachment_uuid && a.page > area.page\n          );\n        });\n\n        if (insertBeforeAreaIndex !== -1) {\n          this.drawField.areas.splice(insertBeforeAreaIndex, 0, area);\n        } else {\n          this.drawField.areas.push(area);\n        }\n\n        if (this.template.fields.indexOf(this.drawField) === -1) {\n          this.template.fields.push(this.drawField);\n        }\n\n        this.drawField = null;\n        this.drawOption = null;\n\n        this.selectedAreaRef.value = area;\n\n        this.save();\n      } else {\n        const documentRef = this.documentRefs.find(\n          (e) => e.document.uuid === area.attachment_uuid,\n        );\n        const pageMask = documentRef.pageRefs[area.page].$refs.mask;\n\n        let type = pageMask.clientWidth * area.w < 35 ? \"checkbox\" : \"text\";\n\n        if (this.drawFieldType) {\n          type = this.drawFieldType;\n        } else if (\n          this.defaultDrawFieldType &&\n          this.defaultDrawFieldType !== \"text\"\n        ) {\n          type = this.defaultDrawFieldType;\n        } else if (\n          this.fieldTypes.length !== 0 &&\n          !this.fieldTypes.includes(type)\n        ) {\n          type = this.fieldTypes[0];\n        }\n\n        if (\n          type === \"checkbox\" &&\n          !this.drawFieldType &&\n          (this.template.fields[this.template.fields.length - 1]?.type ===\n            \"checkbox\" ||\n            area.w)\n        ) {\n          const previousField = [...this.template.fields]\n            .reverse()\n            .find((f) => f.type === type);\n          const previousArea =\n            previousField?.areas?.[previousField.areas.length - 1];\n\n          if (previousArea || area.w) {\n            const areaW = previousArea?.w || 30 / pageMask.clientWidth;\n            const areaH = previousArea?.h || 30 / pageMask.clientHeight;\n\n            if (pageMask.clientWidth * area.w < 5) {\n              area.x = area.x - areaW / 2;\n              area.y = area.y - areaH / 2;\n            }\n\n            area.w = areaW;\n            area.h = areaH;\n          }\n        }\n\n        if (this.drawFieldType && (area.w === 0 || area.h === 0)) {\n          if (this.selectedField?.type === this.drawFieldType) {\n            area.w = this.selectedAreaRef.value.w;\n            area.h = this.selectedAreaRef.value.h;\n          } else {\n            this.setDefaultAreaSize(area, this.drawFieldType);\n          }\n\n          area.x -= area.w / 2;\n          area.y -= area.h / 2;\n        }\n\n        if (area.w) {\n          this.addField(type, area);\n\n          this.selectedAreaRef.value = area;\n        }\n      }\n    },\n    onDropfield(area) {\n      const field = this.fieldsDragFieldRef.value || {\n        name: \"\",\n        uuid: v4(),\n        submitter_uuid: this.selectedSubmitter.uuid,\n        required: this.dragField.type !== \"checkbox\",\n        ...this.dragField,\n      };\n\n      if (!this.fieldsDragFieldRef.value) {\n        if ([\"select\", \"multiple\", \"radio\"].includes(field.type)) {\n          field.options = [{ value: \"\", uuid: v4() }];\n        }\n\n        if ([\"stamp\", \"heading\"].includes(field.type)) {\n          field.readonly = true;\n        }\n\n        if (field.type === \"date\") {\n          field.preferences = {\n            format: this.defaultDateFormat,\n          };\n        }\n      }\n\n      const fieldArea = {\n        x: (area.x - 6) / area.maskW,\n        y: area.y / area.maskH,\n        page: area.page,\n        attachment_uuid: area.attachment_uuid,\n      };\n\n      const previousField = [...this.template.fields]\n        .reverse()\n        .find((f) => f.type === field.type);\n\n      let baseArea;\n\n      if (this.selectedField?.type === field.type) {\n        baseArea = this.selectedAreaRef.value;\n      } else if (previousField?.areas?.length) {\n        baseArea = previousField.areas[previousField.areas.length - 1];\n      } else {\n        if ([\"checkbox\"].includes(field.type)) {\n          baseArea = {\n            w: area.maskW / 30 / area.maskW,\n            h: (area.maskW / 30 / area.maskW) * (area.maskW / area.maskH),\n          };\n        } else if (field.type === \"image\") {\n          baseArea = {\n            w: area.maskW / 5 / area.maskW,\n            h: (area.maskW / 5 / area.maskW) * (area.maskW / area.maskH),\n          };\n        } else if (\n          field.type === \"signature\" ||\n          field.type === \"stamp\" ||\n          field.type === \"verification\"\n        ) {\n          baseArea = {\n            w: area.maskW / 5 / area.maskW,\n            h: ((area.maskW / 5 / area.maskW) * (area.maskW / area.maskH)) / 2,\n          };\n        } else if (field.type === \"initials\") {\n          baseArea = {\n            w: area.maskW / 10 / area.maskW,\n            h: area.maskW / 35 / area.maskW,\n          };\n        } else {\n          baseArea = {\n            w: area.maskW / 5 / area.maskW,\n            h: area.maskW / 35 / area.maskW,\n          };\n        }\n      }\n\n      fieldArea.w = baseArea.w;\n      fieldArea.h = baseArea.h;\n      fieldArea.y = fieldArea.y - baseArea.h / 2;\n\n      if (field.type === \"cells\") {\n        fieldArea.cell_w = baseArea.cell_w || baseArea.w / 5;\n      }\n\n      field.areas ||= [];\n\n      const lastArea = field.areas[field.areas.length - 1];\n\n      if (lastArea) {\n        fieldArea.x -= lastArea.w / 2;\n        fieldArea.w = lastArea.w;\n        fieldArea.h = lastArea.h;\n      }\n\n      field.areas.push(fieldArea);\n\n      this.selectedAreaRef.value = fieldArea;\n\n      if (this.template.fields.indexOf(field) === -1) {\n        this.template.fields.push(field);\n      }\n\n      this.save();\n\n      document.activeElement?.blur();\n\n      if (field.type === \"heading\") {\n        this.$nextTick(() => {\n          const documentRef = this.documentRefs.find(\n            (e) => e.document.uuid === area.attachment_uuid,\n          );\n          const areaRef = documentRef.pageRefs[area.page].areaRefs.find(\n            (ref) => ref.area === this.selectedAreaRef.value,\n          );\n\n          areaRef.focusValueInput();\n        });\n      }\n    },\n    addBlankPage() {\n      this.isLoadingBlankPage = true;\n\n      const canvas = document.createElement(\"canvas\");\n\n      canvas.width = 816;\n      canvas.height = 1056;\n\n      const ctx = canvas.getContext(\"2d\");\n\n      ctx.fillStyle = \"white\";\n      ctx.fillRect(0, 0, canvas.width, canvas.height);\n\n      canvas.toBlob((blob) => {\n        const file = new File(\n          [blob],\n          `Page ${this.template.schema.length + 1}.png`,\n          { type: blob.type, lastModified: Date.now() },\n        );\n\n        const formData = new FormData();\n        formData.append(\"files[]\", file);\n\n        this.baseFetch(`/templates/${this.template.id}/documents`, {\n          method: \"POST\",\n          body: formData,\n        })\n          .then(async (resp) => {\n            this.updateFromUpload(await resp.json());\n          })\n          .finally(() => {\n            this.isLoadingBlankPage = false;\n          });\n      }, \"image/png\");\n    },\n    updateFromUpload(data) {\n      this.template.schema.push(...data.schema);\n      this.template.documents.push(...data.documents);\n\n      if (data.fields) {\n        this.template.fields = data.fields;\n      }\n\n      if (data.submitters) {\n        this.template.submitters = data.submitters;\n\n        if (\n          !this.template.submitters.find(\n            (s) => s.uuid === this.selectedSubmitter?.uuid,\n          )\n        ) {\n          this.selectedSubmitter = this.template.submitters[0];\n        }\n      }\n\n      this.$nextTick(() => {\n        if (this.$refs.previews) {\n          this.$refs.previews.scrollTop = this.$refs.previews.scrollHeight;\n        }\n\n        this.scrollIntoDocument(data.schema[0]);\n      });\n\n      if (this.template.name === \"New Document\") {\n        this.template.name = this.template.schema[0].name;\n      }\n\n      if (this.onUpload) {\n        this.onUpload(this.template);\n      }\n\n      this.save();\n\n      data.documents.forEach((attachment) => {\n        if (attachment.metadata?.pdf?.fields?.length) {\n          this.pendingFieldAttachmentUuids.push(attachment.uuid);\n\n          attachment.metadata.pdf.fields.forEach((field) => {\n            field.submitter_uuid = this.selectedSubmitter.uuid;\n\n            this.template.fields.push(field);\n          });\n        }\n      });\n    },\n    updateName(value) {\n      this.template.name = value;\n\n      this.save();\n    },\n    onDocumentRemove(item) {\n      if (window.confirm(this.t(\"are_you_sure_\"))) {\n        this.template.schema.splice(this.template.schema.indexOf(item), 1);\n      }\n\n      const removedFieldUuids = [];\n\n      this.template.fields.forEach((field) => {\n        [...(field.areas || [])].forEach((area) => {\n          if (area.attachment_uuid === item.attachment_uuid) {\n            field.areas.splice(field.areas.indexOf(area), 1);\n\n            removedFieldUuids.push(field.uuid);\n          }\n        });\n      });\n\n      this.template.fields = this.template.fields.filter(\n        (f) => !removedFieldUuids.includes(f.uuid) || f.areas?.length,\n      );\n\n      this.save();\n    },\n    onDocumentReplace(data) {\n      const { replaceSchemaItem, schema, documents } = data;\n\n      this.template.schema.splice(\n        this.template.schema.indexOf(replaceSchemaItem),\n        1,\n        schema[0],\n      );\n      this.template.documents.push(...documents);\n\n      if (data.fields) {\n        this.template.fields = data.fields;\n\n        const removedFieldUuids = [];\n\n        this.template.fields.forEach((field) => {\n          [...(field.areas || [])].forEach((area) => {\n            if (area.attachment_uuid === replaceSchemaItem.attachment_uuid) {\n              field.areas.splice(field.areas.indexOf(area), 1);\n\n              removedFieldUuids.push(field.uuid);\n            }\n          });\n        });\n\n        this.template.fields = this.template.fields.filter(\n          (f) => !removedFieldUuids.includes(f.uuid) || f.areas?.length,\n        );\n      }\n\n      if (data.submitters) {\n        this.template.submitters = data.submitters;\n\n        if (\n          !this.template.submitters.find(\n            (s) => s.uuid === this.selectedSubmitter?.uuid,\n          )\n        ) {\n          this.selectedSubmitter = this.template.submitters[0];\n        }\n      }\n\n      this.template.fields.forEach((field) => {\n        (field.areas || []).forEach((area) => {\n          if (area.attachment_uuid === replaceSchemaItem.attachment_uuid) {\n            area.attachment_uuid = schema[0].attachment_uuid;\n          }\n        });\n      });\n\n      if (this.onUpload) {\n        this.onUpload(this.template);\n      }\n\n      this.save();\n    },\n    moveDocument(item, direction) {\n      const currentIndex = this.template.schema.indexOf(item);\n\n      this.template.schema.splice(currentIndex, 1);\n\n      if (currentIndex + direction > this.template.schema.length) {\n        this.template.schema.unshift(item);\n      } else if (currentIndex + direction < 0) {\n        this.template.schema.push(item);\n      } else {\n        this.template.schema.splice(currentIndex + direction, 0, item);\n      }\n\n      this.save();\n    },\n    maybeShowErrorTemplateAlert(e) {\n      if (!this.isAllRequiredFieldsAdded) {\n        e.preventDefault();\n\n        const fields = this.defaultRequiredFields?.filter((f) => {\n          return !this.template.fields?.some((field) => field.name === f.name);\n        });\n\n        if (fields?.length) {\n          return alert(\n            this.t(\"add_all_required_fields_to_continue\") +\n              \": \" +\n              fields.map((f) => f.name).join(\", \"),\n          );\n        }\n      }\n\n      if (!this.template.fields.length) {\n        e.preventDefault();\n\n        alert(this.t(\"please_draw_fields_to_prepare_the_document\"));\n      } else {\n        const submitterWithoutFields = this.template.submitters.find(\n          (submitter) =>\n            !this.template.fields.some(\n              (f) => f.submitter_uuid === submitter.uuid,\n            ),\n        );\n\n        if (submitterWithoutFields) {\n          e.preventDefault();\n\n          alert(\n            this.t(\n              \"please_add_fields_for_the_submitter_name_or_remove_the_submitter_name_if_not_needed\",\n            ).replaceAll(\"{submitter_name}\", submitterWithoutFields.name),\n          );\n        }\n      }\n    },\n    onSaveClick() {\n      if (!this.isAllRequiredFieldsAdded) {\n        const fields = this.defaultRequiredFields?.filter((f) => {\n          return !this.template.fields?.some((field) => field.name === f.name);\n        });\n\n        if (fields?.length) {\n          return alert(\n            this.t(\"add_all_required_fields_to_continue\") +\n              \": \" +\n              fields.map((f) => f.name).join(\", \"),\n          );\n        }\n      }\n\n      if (!this.template.fields.length) {\n        alert(this.t(\"please_draw_fields_to_prepare_the_document\"));\n      } else {\n        const submitterWithoutFields = this.template.submitters.find(\n          (submitter) =>\n            !this.template.fields.some(\n              (f) => f.submitter_uuid === submitter.uuid,\n            ),\n        );\n\n        if (submitterWithoutFields) {\n          alert(\n            this.t(\n              \"please_add_fields_for_the_submitter_name_or_remove_the_submitter_name_if_not_needed\",\n            ).replaceAll(\"{submitter_name}\", submitterWithoutFields.name),\n          );\n        } else {\n          this.isSaving = true;\n\n          this.save()\n            .then(() => {\n              window.Turbo.visit(`/templates/${this.template.id}`);\n            })\n            .finally(() => {\n              this.isSaving = false;\n            });\n        }\n      }\n    },\n    scrollToArea(area) {\n      const documentRef = this.documentRefs.find(\n        (a) => a.document.uuid === area.attachment_uuid,\n      );\n\n      documentRef.scrollToArea(area);\n\n      this.selectedAreaRef.value = area;\n    },\n    baseFetch(path, options = {}) {\n      return fetch(this.baseUrl + path, {\n        ...options,\n        headers: {\n          \"X-CSRF-Token\": this.authenticityToken,\n          ...this.fetchOptions.headers,\n          ...options.headers,\n        },\n      });\n    },\n    save({ force } = { force: false }) {\n      this.pendingFieldAttachmentUuids = [];\n\n      if (this.onChange) {\n        this.onChange(this.template);\n      }\n\n      if (!this.autosave && !force) {\n        return Promise.resolve({});\n      }\n\n      this.$nextTick(() => {\n        if (this.$el.closest(\"template-builder\")) {\n          this.$el.closest(\"template-builder\").dataset.template =\n            JSON.stringify(this.template);\n        }\n      });\n\n      this.pushUndo();\n\n      return this.baseFetch(`/templates/${this.template.id}`, {\n        method: \"PUT\",\n        body: JSON.stringify({\n          template: {\n            name: this.template.name,\n            schema: this.template.schema,\n            submitters: this.template.submitters,\n            fields: this.template.fields,\n          },\n        }),\n        headers: { \"Content-Type\": \"application/json\" },\n      }).then(() => {\n        if (this.onSave) {\n          this.onSave(this.template);\n        }\n      });\n    },\n  },\n};\n</script>\n","<template>\n  <div>\n  <div v-if=false >\n    <label\n      id=\"add_document_button\"\n      :for=\"inputId\"\n      class=\"btn btn-outline w-full\"\n      :class=\"{ 'btn-disabled': isLoading || isProcessing }\"\n    >\n      <IconInnerShadowTop\n        v-if=\"isLoading || isProcessing\"\n        width=\"20\"\n        class=\"animate-spin\"\n      />\n      <IconUpload\n        v-else\n        width=\"20\"\n      />\n      <span v-if=\"isLoading\">\n        {{ t('uploading_') }}\n      </span>\n      <span v-else-if=\"isProcessing\">\n        {{ t('processing_') }}\n      </span>\n      <span v-else>\n        {{ t('add_document') }}\n      </span>\n    </label>\n    <form\n      ref=\"form\"\n      class=\"hidden\"\n    >\n      <input\n        :id=\"inputId\"\n        ref=\"input\"\n        name=\"files[]\"\n        type=\"file\"\n        :accept=\"acceptFileTypes\"\n        multiple\n        @change=\"upload\"\n      >\n    </form>\n  </div>\n  </div>\n</template>\n\n<script>\nimport { IconUpload, IconInnerShadowTop } from '@tabler/icons-vue'\n\nexport default {\n  name: 'DocumentsUpload',\n  components: {\n    IconUpload,\n    IconInnerShadowTop\n  },\n  inject: ['baseFetch', 't'],\n  props: {\n    templateId: {\n      type: [Number, String],\n      required: true\n    },\n    acceptFileTypes: {\n      type: String,\n      required: false,\n      default: 'image/*, application/pdf'\n    }\n  },\n  emits: ['success'],\n  data () {\n    return {\n      isLoading: false,\n      isProcessing: false\n    }\n  },\n  computed: {\n    inputId () {\n      return 'el' + Math.random().toString(32).split('.')[1]\n    }\n  },\n  methods: {\n    async upload () {\n      this.isLoading = true\n\n      this.baseFetch(`/templates/${this.templateId}/documents`, {\n        method: 'POST',\n        body: new FormData(this.$refs.form)\n      }).then((resp) => {\n        if (resp.ok) {\n          resp.json().then((data) => {\n            this.$emit('success', data)\n            this.$refs.input.value = ''\n          })\n        } else if (resp.status === 422) {\n          resp.json().then((data) => {\n            if (data.status === 'pdf_encrypted') {\n              const formData = new FormData(this.$refs.form)\n\n              formData.append('password', prompt(this.t('enter_pdf_password')))\n\n              this.baseFetch(`/templates/${this.templateId}/documents`, {\n                method: 'POST',\n                body: formData\n              }).then(async (resp) => {\n                if (resp.ok) {\n                  this.$emit('success', await resp.json())\n                  this.$refs.input.value = ''\n                } else {\n                  alert(this.t('wrong_password'))\n                }\n              })\n            }\n          })\n        }\n      }).finally(() => {\n        this.isLoading = false\n      })\n    }\n  }\n}\n</script>\n","import { render } from \"./upload.vue?vue&type=template&id=54a714ff\"\nimport script from \"./upload.vue?vue&type=script&lang=js\"\nexport * from \"./upload.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <div\n    class=\"flex h-60 w-full\"\n    @dragover.prevent\n    @drop.prevent=\"onDropFiles\"\n  >\n    <label\n      id=\"document_dropzone\"\n      class=\"w-full relative hover:bg-base-200/30 rounded-md border border-2 border-base-content/10 border-dashed\"\n      :for=\"inputId\"\n      :class=\"{ 'opacity-50': isLoading || isProcessing }\"\n    >\n      <div class=\"absolute top-0 right-0 left-0 bottom-0 flex items-center justify-center\">\n        <div class=\"flex flex-col items-center\">\n          <IconInnerShadowTop\n            v-if=\"isLoading || isProcessing\"\n            class=\"animate-spin\"\n            :width=\"40\"\n            :height=\"40\"\n          />\n          <IconCloudUpload\n            v-else\n            :width=\"40\"\n            :height=\"40\"\n          />\n          <div\n            v-if=\"message\"\n            class=\"font-medium text-lg mb-1\"\n          >\n            {{ message }}\n          </div>\n          <div class=\"text-sm\">\n            <span class=\"font-medium\">{{ t('click_to_upload') }}</span> {{ t('or_drag_and_drop_files') }}\n          </div>\n        </div>\n      </div>\n      <form\n        ref=\"form\"\n        class=\"hidden\"\n      >\n        <input\n          :id=\"inputId\"\n          ref=\"input\"\n          type=\"file\"\n          name=\"files[]\"\n          :accept=\"acceptFileTypes\"\n          multiple\n          @change=\"upload\"\n        >\n      </form>\n    </label>\n  </div>\n</template>\n\n<script>\nimport Upload from './upload'\nimport { IconCloudUpload, IconInnerShadowTop } from '@tabler/icons-vue'\n\nexport default {\n  name: 'FileDropzone',\n  components: {\n    IconCloudUpload,\n    IconInnerShadowTop\n  },\n  inject: ['baseFetch', 't'],\n  props: {\n    templateId: {\n      type: [Number, String],\n      required: true\n    },\n    acceptFileTypes: {\n      type: String,\n      required: false,\n      default: 'image/*, application/pdf'\n    }\n  },\n  emits: ['success'],\n  data () {\n    return {\n      isLoading: false,\n      isProcessing: false\n    }\n  },\n  computed: {\n    inputId () {\n      return 'el' + Math.random().toString(32).split('.')[1]\n    },\n    message () {\n      if (this.isLoading) {\n        return this.t('uploading')\n      } else if (this.isProcessing) {\n        return this.t('processing_')\n      } else if (this.acceptFileTypes === 'image/*, application/pdf') {\n        return this.t('add_pdf_documents_or_images')\n      } else {\n        return this.t('add_documents_or_images')\n      }\n    }\n  },\n  methods: {\n    upload: Upload.methods.upload,\n    onDropFiles (e) {\n      if (this.acceptFileTypes !== 'image/*, application/pdf' || [...e.dataTransfer.files].every((f) => f.type.match(/(?:image\\/)|(?:application\\/pdf)/))) {\n        this.$refs.input.files = e.dataTransfer.files\n\n        this.upload()\n      } else {\n        alert(this.t('only_pdf_and_images_are_supported'))\n      }\n    }\n  }\n}\n</script>\n","import { render } from \"./dropzone.vue?vue&type=template&id=45fbf030\"\nimport script from \"./dropzone.vue?vue&type=script&lang=js\"\nexport * from \"./dropzone.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <div :class=\"withStickySubmitters ? 'sticky top-0 z-[1] bg-white! rounded-lg' : ''\">\n    <FieldSubmitter\n      :model-value=\"selectedSubmitter.uuid\"\n      class=\"roles-dropdown w-full rounded-lg bg-white! border-gray-300! !bg-white hover:border-gray-300! transition-all duration-300\"\n      :style=\"withStickySubmitters ? { backgroundColor } : {}\"\n      :submitters=\"submitters\"\n      :editable=\"editable && !defaultSubmitters.length\"\n      @new-submitter=\"save\"\n      @remove=\"removeSubmitter\"\n      @name-change=\"save\"\n      @update:model-value=\"$emit('change-submitter', submitters.find((s) => s.uuid === $event))\"\n    />\n  </div>\n  <div\n    ref=\"fields\"\n    class=\"fields mb-1 mt-2 bg-white! rounded-lg\"\n    @dragover.prevent=\"onFieldDragover\"\n    @drop=\"reorderFields\"\n  >\n    <Field\n      v-for=\"field in submitterFields\"\n      :key=\"field.uuid\"\n      :data-uuid=\"field.uuid\"\n      :field=\"field\"\n      :type-index=\"fields.filter((f) => f.type === field.type).indexOf(field)\"\n      :editable=\"editable && (!fieldsDragFieldRef.value || fieldsDragFieldRef.value !== field)\"\n      :default-field=\"defaultFields.find((f) => f.name === field.name)\"\n      :draggable=\"editable\"\n      @dragstart=\"fieldsDragFieldRef.value = field\"\n      @dragend=\"fieldsDragFieldRef.value = null\"\n      @remove=\"removeField\"\n      @scroll-to=\"$emit('scroll-to-area', $event)\"\n      @set-draw=\"$emit('set-draw', $event)\"\n    />\n  </div>\n  <div v-if=\"submitterDefaultFields.length && editable\">\n    <hr class=\"mb-2\">\n    <template v-if=\"isShowFieldSearch\">\n      <input\n        v-model=\"defaultFieldsSearch\"\n        :placeholder=\"t('search_field')\"\n        class=\"input input-ghost input-xs px-0 text-base mb-2 !outline-0 !rounded bg-transparent w-full\"\n      >\n      <hr class=\"mb-2\">\n    </template>\n    <div\n      class=\"overflow-auto relative\"\n      :style=\"{\n        maxHeight: isShowFieldSearch ? '210px' : '',\n        minHeight: isShowFieldSearch ? '210px' : ''\n      }\"\n    >\n      <div\n        v-if=\"!filteredSubmitterDefaultFields.length && defaultFieldsSearch\"\n        class=\"top-0 bottom-0 text-center absolute flex items-center justify-center w-full flex-col\"\n      >\n        <div>\n          {{ t('field_not_found') }}\n        </div>\n        <a\n          href=\"#\"\n          class=\"link\"\n          @click.prevent=\"defaultFieldsSearch = ''\"\n        >\n          {{ t('clear') }}\n        </a>\n      </div>\n      <template\n        v-for=\"field in filteredSubmitterDefaultFields\"\n        :key=\"field.name\"\n      >\n        <div\n          :style=\"{ backgroundColor }\"\n          draggable=\"true\"\n          class=\"default-field border border-base-300 rounded rounded-tr-none relative group mb-2\"\n          @dragstart=\"onDragstart({ type: 'text', ...field })\"\n          @dragend=\"$emit('drag-end')\"\n        >\n          <div class=\"flex items-center justify-between relative cursor-grab\">\n            <div class=\"flex items-center p-1 space-x-1\">\n              <IconDrag />\n              <FieldType\n                :model-value=\"field.type || 'text'\"\n                :editable=\"false\"\n                :button-width=\"20\"\n              />\n              <span class=\"block pl-0.5\">\n                {{ field.title || field.name }}\n              </span>\n            </div>\n            <span\n              v-if=\"defaultRequiredFields.includes(field)\"\n              :data-tip=\"t('required')\"\n              class=\"text-red-400 text-3xl pr-1.5 tooltip tooltip-left h-8\"\n            >\n              *\n            </span>\n          </div>\n        </div>\n      </template>\n    </div>\n  </div>\n  <div\n    v-if=\"editable && !onlyDefinedFields\"\n    class=\"grid grid-cols-3 gap-1 pb-2\"\n  >\n    <template\n      v-for=\"(icon, type) in fieldIconsSorted\"\n      :key=\"type\"\n    >\n      <div v-if=\"type === 'initials' || type === 'signature'\">\n      <button\n        v-if=\"(fieldTypes.length === 0 || fieldTypes.includes(type)) && (withPhone || type != 'phone') && (withPayment || type != 'payment') && (withVerification || type != 'verification')\"\n        draggable=\"true\"\n        class=\"field-type-button group flex items-center justify-center border border-dashed w-full rounded relative\"\n        :style=\"white\"\n        :class=\"drawFieldType === type ? 'border-base-content/40' : 'border-base-300 hover:border-base-content/20'\"\n        @dragstart=\"onDragstart({ type: type })\"\n        @dragend=\"$emit('drag-end')\"\n        @click=\"['file', 'payment', 'verification'].includes(type) ? $emit('add-field', type) : $emit('set-draw-type', type)\"\n      >\n        <div\n          class=\"flex items-console transition-all cursor-grab h-full absolute left-0\"\n          :class=\"drawFieldType === type ? 'bg-base-200/50' : 'group-hover:bg-base-200/50'\"\n        >\n          <IconDrag class=\"my-auto\" />\n        </div>\n        <div class=\"flex items-center flex-col px-2 py-2\">\n          <component :is=\"icon\" />\n          <span class=\"text-xs mt-1\">\n            {{ fieldNames[type] }}\n            <!-- this is main list -->\n          </span>\n        </div>\n      </button>\n    </div>\n      <!-- <div\n        v-else-if=\"type == 'phone' && (fieldTypes.length === 0 || fieldTypes.includes(type))\"\n        class=\"tooltip tooltip-bottom flex\"\n        :class=\"{'tooltip-bottom-end': withPayment, 'tooltip-bottom': !withPayment }\"\n        :data-tip=\"t('unlock_sms_verified_phone_number_field_with_paid_plan_use_text_field_for_phone_numbers_without_verification')\"\n      >\n        <a\n          href=\"https://www.docuseal.com/pricing\"\n          target=\"_blank\"\n          class=\"opacity-50 flex items-center justify-center border border-dashed border-base-300 w-full rounded relative\"\n          :style=\"{ backgroundColor }\"\n        >\n          <div class=\"w-0 absolute left-0\">\n            <IconLock\n              width=\"18\"\n              height=\"18\"\n              stroke-width=\"1.5\"\n            />\n          </div>\n          <div class=\"flex items-center flex-col px-2 py-2\">\n            <component :is=\"icon\" />\n            <span class=\"text-xs mt-1\">\n              {{ fieldNames[type] }}\n            </span>\n          </div>\n        </a>\n      </div> -->\n      <!-- <div\n        v-else-if=\"withVerification === false && type == 'verification' && (fieldTypes.length === 0 || fieldTypes.includes(type))\"\n        class=\"tooltip tooltip-bottom flex tooltip-bottom-start\"\n        :data-tip=\"t('obtain_qualified_electronic_signature_with_the_trusted_provider_click_to_learn_more')\"\n      >\n        <a\n          href=\"https://www.docuseal.com/contact\"\n          target=\"_blank\"\n          class=\"opacity-50 flex items-center justify-center border border-dashed border-base-300 w-full rounded relative\"\n          :style=\"{ backgroundColor }\"\n        >\n          <div class=\"w-0 absolute left-0\">\n            <IconLock\n              width=\"18\"\n              height=\"18\"\n              stroke-width=\"1.5\"\n            />\n          </div>\n          <div class=\"flex items-center flex-col px-2 py-2\">\n            <component :is=\"icon\" />\n            <span class=\"text-xs mt-1\">\n              {{ fieldNames[type] }}\n            </span>\n          </div>\n        </a>\n      </div> -->\n    </template>\n  </div>\n  <div\n    v-if=\"fields.length < 4 && editable && withHelp\"\n    class=\"text-xs p-2 border border-base-200 rounded\"\n  >\n    <ul class=\"list-disc list-outside ml-3\">\n      <li>\n        {{ t('draw_a_text_field_on_the_page_with_a_mouse') }}\n      </li>\n      <li>\n        {{ t('drag_and_drop_any_other_field_type_on_the_page') }}\n      </li>\n      <li>\n        {{ t('click_on_the_field_type_above_to_start_drawing_it') }}\n      </li>\n    </ul>\n  </div>\n</template>\n\n<script>\nimport Field from './field'\nimport FieldType from './field_type'\nimport FieldSubmitter from './field_submitter'\nimport { IconLock, IconCirclePlus } from '@tabler/icons-vue'\nimport IconDrag from './icon_drag'\n\nexport default {\n  name: 'TemplateFields',\n  components: {\n    Field,\n    FieldType,\n    IconCirclePlus,\n    FieldSubmitter,\n    IconDrag,\n    IconLock\n  },\n  inject: ['save', 'backgroundColor', 'withPhone', 'withVerification', 'withPayment', 't', 'fieldsDragFieldRef'],\n  props: {\n    fields: {\n      type: Array,\n      required: true\n    },\n    template: {\n      type: Object,\n      required: true\n    },\n    withHelp: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    editable: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    defaultFields: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    defaultRequiredFields: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    onlyDefinedFields: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    drawFieldType: {\n      type: String,\n      required: false,\n      default: ''\n    },\n    defaultSubmitters: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    withStickySubmitters: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    fieldTypes: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    submitters: {\n      type: Array,\n      required: true\n    },\n    selectedSubmitter: {\n      type: Object,\n      required: true\n    }\n  },\n  emits: ['add-field', 'set-draw', 'set-draw-type', 'set-drag', 'drag-end', 'scroll-to-area', 'change-submitter'],\n  data () {\n    return {\n      defaultFieldsSearch: ''\n    }\n  },\n  computed: {\n    fieldNames: FieldType.computed.fieldNames,\n    fieldIcons: FieldType.computed.fieldIcons,\n    isShowFieldSearch () {\n      return this.submitterDefaultFields.length > 15\n    },\n    fieldIconsSorted () {\n      if (this.fieldTypes.length) {\n        return this.fieldTypes.reduce((acc, type) => {\n          acc[type] = this.fieldIcons[type]\n\n          return acc\n        }, {})\n      } else {\n        return Object.fromEntries(Object.entries(this.fieldIcons).filter(([key]) => key !== 'heading'))\n      }\n    },\n    submitterFields () {\n      return this.fields.filter((f) => f.submitter_uuid === this.selectedSubmitter.uuid)\n    },\n    submitterDefaultFields () {\n      return this.defaultFields.filter((f) => {\n        return !this.submitterFields.find((field) => field.name === f.name) && (!f.role || f.role === this.selectedSubmitter.name)\n      })\n    },\n    filteredSubmitterDefaultFields () {\n      if (this.defaultFieldsSearch) {\n        return this.submitterDefaultFields.filter((f) => f.name.toLowerCase().includes(this.defaultFieldsSearch.toLowerCase()))\n      } else {\n        return this.submitterDefaultFields\n      }\n    }\n  },\n  methods: {\n    onDragstart (field) {\n      this.$emit('set-drag', field)\n    },\n    onFieldDragover (e) {\n      const targetField = e.target.closest('[data-uuid]')\n      const dragField = this.$refs.fields.querySelector(`[data-uuid=\"${this.fieldsDragFieldRef.value.uuid}\"]`)\n\n      if (dragField && targetField && targetField !== dragField) {\n        const fields = Array.from(this.$refs.fields.children)\n        const currentIndex = fields.indexOf(dragField)\n        const targetIndex = fields.indexOf(targetField)\n\n        if (currentIndex < targetIndex) {\n          targetField.after(dragField)\n        } else {\n          targetField.before(dragField)\n        }\n      }\n    },\n    reorderFields () {\n      Array.from(this.$refs.fields.children).forEach((el, index) => {\n        if (el.dataset.uuid !== this.fields[index].uuid) {\n          const field = this.fields.find((f) => f.uuid === el.dataset.uuid)\n\n          this.fields.splice(this.fields.indexOf(field), 1)\n          this.fields.splice(index, 0, field)\n        }\n      })\n\n      this.save()\n    },\n    removeSubmitter (submitter) {\n      [...this.fields].forEach((field) => {\n        if (field.submitter_uuid === submitter.uuid) {\n          this.removeField(field)\n        }\n      })\n\n      this.submitters.splice(this.submitters.indexOf(submitter), 1)\n\n      if (this.selectedSubmitter === submitter) {\n        this.$emit('change-submitter', this.submitters[0])\n      }\n\n      this.save()\n    },\n    removeField (field) {\n      this.fields.splice(this.fields.indexOf(field), 1)\n\n      this.fields.forEach((f) => {\n        (f.conditions || []).forEach((c) => {\n          if (c.field_uuid === field.uuid) {\n            f.conditions.splice(f.conditions.indexOf(c), 1)\n          }\n        })\n      })\n\n      this.template.schema.forEach((item) => {\n        (item.conditions || []).forEach((c) => {\n          if (c.field_uuid === field.uuid) {\n            item.conditions.splice(item.conditions.indexOf(c), 1)\n          }\n        })\n      })\n\n      this.save()\n    }\n  }\n}\n</script>\n","<template>\n  <div\n    class=\"list-field group mb-2\"\n  >\n    <div\n      class=\"border border-base-300 rounded rounded-tr-none relative group\"\n      :style=\"{ backgroundColor: 'white' }\"\n    >\n      <div class=\"flex items-center justify-between relative group/contenteditable-container\">\n        <div\n          class=\"absolute top-0 bottom-0 right-0 left-0 cursor-pointer\"\n          @click=\"scrollToFirstArea\"\n        />\n        <div class=\"flex items-center p-1 space-x-1\">\n          <FieldType\n            v-model=\"field.type\"\n            :editable=\"editable && !defaultField && field.type != 'heading'\"\n            :button-width=\"20\"\n            :menu-classes=\"'mt-1.5'\"\n            :menu-style=\"{ backgroundColor: 'blue' }\"\n            @update:model-value=\"[maybeUpdateOptions(), save()]\"\n            @click=\"scrollToFirstArea\"\n          />\n          <Contenteditable\n            ref=\"name\"\n            :model-value=\"(defaultField ? (field.title || field.name) : field.name) || defaultName\"\n            :editable=\"editable && !defaultField && field.type != 'heading'\"\n            :icon-inline=\"true\"\n            :icon-width=\"18\"\n            :icon-stroke-width=\"1.6\"\n            @focus=\"[onNameFocus(), scrollToFirstArea()]\"\n            @blur=\"onNameBlur\"\n          />\n        </div>\n        <div\n          v-if=\"isNameFocus\"\n          class=\"flex items-center relative\"\n        >\n          <template v-if=\"field.type != 'phone'\">\n            <input\n              :id=\"`required-checkbox-${field.uuid}`\"\n              v-model=\"field.required\"\n              type=\"checkbox\"\n              class=\"checkbox checkbox-xs no-animation rounded\"\n              @mousedown.prevent\n            >\n            <label\n              :for=\"`required-checkbox-${field.uuid}`\"\n              class=\"label text-xs\"\n              @click.prevent=\"field.required = !field.required\"\n              @mousedown.prevent\n            >{{ t('required') }}</label>\n          </template>\n        </div>\n        <div\n          v-else-if=\"editable\"\n          class=\"flex items-center space-x-1\"\n        >\n          <button\n            v-if=\"field && !field.areas?.length\"\n            :title=\"t('draw')\"\n            class=\"relative cursor-pointer text-transparent group-hover:text-base-content\"\n            @click=\"$emit('set-draw', { field })\"\n          >\n            <IconNewSection\n              :width=\"18\"\n              :stroke-width=\"1.6\"\n            />\n          </button>\n          <button\n            v-if=\"field.preferences?.formula\"\n            class=\"relative cursor-pointer text-transparent group-hover:text-base-content\"\n            :title=\"t('formula')\"\n            @click=\"isShowFormulaModal = true\"\n          >\n            <IconMathFunction\n              :width=\"18\"\n              :stroke-width=\"1.6\"\n            />\n          </button>\n          <button\n            v-if=\"field.conditions?.length\"\n            class=\"relative cursor-pointer text-transparent group-hover:text-base-content\"\n            :title=\"t('condition')\"\n            @click=\"isShowConditionsModal = true\"\n          >\n            <IconRouteAltLeft\n              :width=\"18\"\n              :stroke-width=\"1.6\"\n            />\n          </button>\n          <PaymentSettings\n            v-if=\"field.type === 'payment'\"\n            :field=\"field\"\n            @click-condition=\"isShowConditionsModal = true\"\n            @click-description=\"isShowDescriptionModal = true\"\n            @click-formula=\"isShowFormulaModal = true\"\n          />\n          <span\n            v-else-if=\"field.type !== 'heading'\"\n            class=\"dropdown dropdown-end\"\n            @mouseenter=\"renderDropdown = true\"\n            @touchstart=\"renderDropdown = true\"\n          >\n            <label\n              tabindex=\"0\"\n              :title=\"t('settings')\"\n              class=\"cursor-pointer text-transparent group-hover:text-base-content\"\n            >\n              <IconSettings\n                :width=\"18\"\n                :stroke-width=\"1.6\"\n              />\n            </label>\n            <ul\n              v-if=\"renderDropdown\"\n              tabindex=\"0\"\n              class=\"mt-1.5 dropdown-content menu menu-xs p-2 shadow rounded-box w-52 z-10\"\n              :style=\"{ backgroundColor: dropdownBgColor }\"\n              draggable=\"true\"\n              @dragstart.prevent.stop\n              @click=\"closeDropdown\"\n            >\n              <FieldSettings\n                :field=\"field\"\n                :default-field=\"defaultField\"\n                :editable=\"editable\"\n                :background-color=\"dropdownBgColor\"\n                @click-formula=\"isShowFormulaModal = true\"\n                @click-description=\"isShowDescriptionModal = true\"\n                @click-condition=\"isShowConditionsModal = true\"\n                @set-draw=\"$emit('set-draw', $event)\"\n                @remove-area=\"removeArea\"\n                @scroll-to=\"$emit('scroll-to', $event)\"\n              />\n            </ul>\n          </span>\n          <button\n            class=\"relative text-transparent group-hover:text-base-content pr-1\"\n            :title=\"t('remove')\"\n            @click=\"$emit('remove', field)\"\n          >\n            <IconTrashX\n              :width=\"18\"\n              :stroke-width=\"1.6\"\n            />\n          </button>\n        </div>\n      </div>\n      <div\n        v-if=\"field.options\"\n        ref=\"options\"\n        class=\"border-t border-base-300 mx-2 pt-2 space-y-1.5\"\n        draggable=\"true\"\n        @dragstart.prevent.stop\n      >\n        <div\n          v-for=\"(option, index) in field.options\"\n          :key=\"option.uuid\"\n          class=\"flex space-x-1.5 items-center\"\n        >\n          <span class=\"text-sm w-3.5\">\n            {{ index + 1 }}.\n          </span>\n          <div\n            v-if=\"editable && ['radio', 'multiple'].includes(field.type) && (index > 0 || field.areas.find((a) => a.option_uuid) || !field.areas.length) && !field.areas.find((a) => a.option_uuid === option.uuid)\"\n            class=\"items-center flex w-full\"\n          >\n            <input\n              v-model=\"option.value\"\n              class=\"w-full input input-primary input-xs text-sm bg-transparent !pr-7 -mr-6\"\n              type=\"text\"\n              dir=\"auto\"\n              required\n              :placeholder=\"`${t('option')} ${index + 1}`\"\n              @blur=\"save\"\n            >\n            <button\n              :title=\"t('draw')\"\n              tabindex=\"-1\"\n              @click.prevent=\"$emit('set-draw', { field, option })\"\n            >\n              <IconNewSection\n                :width=\"18\"\n                :stroke-width=\"1.6\"\n              />\n            </button>\n          </div>\n          <input\n            v-else\n            v-model=\"option.value\"\n            class=\"w-full input input-primary input-xs text-sm bg-transparent\"\n            :placeholder=\"`${t('option')} ${index + 1}`\"\n            type=\"text\"\n            :readonly=\"!editable\"\n            required\n            dir=\"auto\"\n            @focus=\"maybeFocusOnOptionArea(option)\"\n            @blur=\"save\"\n          >\n          <button\n            v-if=\"editable\"\n            class=\"text-sm w-3.5\"\n            tabindex=\"-1\"\n            @click=\"removeOption(option)\"\n          >\n            &times;\n          </button>\n        </div>\n        <div\n          v-if=\"field.options && !editable\"\n          class=\"pb-1\"\n        />\n        <button\n          v-else-if=\"field.options && editable\"\n          class=\"text-center text-sm w-full pb-1\"\n          @click=\"addOption\"\n        >\n          + {{ t('add_option') }}\n        </button>\n      </div>\n    </div>\n    <Teleport\n      v-if=\"isShowFormulaModal\"\n      :to=\"modalContainerEl\"\n    >\n      <FormulaModal\n        :field=\"field\"\n        :editable=\"editable && !defaultField\"\n        :build-default-name=\"buildDefaultName\"\n        @close=\"isShowFormulaModal = false\"\n      />\n    </Teleport>\n    <Teleport\n      v-if=\"isShowConditionsModal\"\n      :to=\"modalContainerEl\"\n    >\n      <ConditionsModal\n        :item=\"field\"\n        :build-default-name=\"buildDefaultName\"\n        @close=\"isShowConditionsModal = false\"\n      />\n    </Teleport>\n    <Teleport\n      v-if=\"isShowDescriptionModal\"\n      :to=\"modalContainerEl\"\n    >\n      <DescriptionModal\n        :field=\"field\"\n        :editable=\"editable && !defaultField\"\n        :build-default-name=\"buildDefaultName\"\n        @close=\"isShowDescriptionModal = false\"\n      />\n    </Teleport>\n  </div>\n</template>\n\n<script>\nimport Contenteditable from './contenteditable'\nimport FieldType from './field_type'\nimport PaymentSettings from './payment_settings'\nimport FieldSettings from './field_settings'\nimport FormulaModal from './formula_modal'\nimport ConditionsModal from './conditions_modal'\nimport DescriptionModal from './description_modal'\nimport { IconRouteAltLeft, IconMathFunction, IconNewSection, IconTrashX, IconSettings } from '@tabler/icons-vue'\nimport { v4 } from 'uuid'\n\nexport default {\n  name: 'TemplateField',\n  components: {\n    Contenteditable,\n    IconSettings,\n    FieldSettings,\n    PaymentSettings,\n    IconNewSection,\n    FormulaModal,\n    DescriptionModal,\n    ConditionsModal,\n    IconRouteAltLeft,\n    IconTrashX,\n    IconMathFunction,\n    FieldType\n  },\n  inject: ['template', 'save', 'backgroundColor', 'selectedAreaRef', 't', 'locale'],\n  props: {\n    field: {\n      type: Object,\n      required: true\n    },\n    defaultField: {\n      type: Object,\n      required: false,\n      default: null\n    },\n    editable: {\n      type: Boolean,\n      required: false,\n      default: true\n    }\n  },\n  emits: ['set-draw', 'remove', 'scroll-to'],\n  data () {\n    return {\n      isNameFocus: false,\n      showPaymentModal: false,\n      isShowFormulaModal: false,\n      isShowConditionsModal: false,\n      isShowDescriptionModal: false,\n      renderDropdown: false\n    }\n  },\n  computed: {\n    fieldNames: FieldType.computed.fieldNames,\n    fieldLabels: FieldType.computed.fieldLabels,\n    dropdownBgColor () {\n      return ['', null, 'transparent'].includes(this.backgroundColor) ? 'white' : this.backgroundColor\n    },\n    schemaAttachmentsIndexes () {\n      return (this.template.schema || []).reduce((acc, item, index) => {\n        acc[item.attachment_uuid] = index\n\n        return acc\n      }, {})\n    },\n    sortedAreas () {\n      return (this.field.areas || []).sort((a, b) => {\n        return this.schemaAttachmentsIndexes[a.attachment_uuid] - this.schemaAttachmentsIndexes[b.attachment_uuid]\n      })\n    },\n    modalContainerEl () {\n      return this.$el.getRootNode().querySelector('#docuseal_modal_container')\n    },\n    defaultName () {\n      return this.buildDefaultName(this.field, this.template.fields)\n    },\n    areas () {\n      return this.field.areas || []\n    }\n  },\n  created () {\n    this.field.preferences ||= {}\n\n    if (this.field.type === 'date') {\n      this.field.preferences.format ||=\n       ({ 'de-DE': 'DD.MM.YYYY' }[this.locale] || ((Intl.DateTimeFormat().resolvedOptions().locale.endsWith('-US') || new Intl.DateTimeFormat('en-US', { timeZoneName: 'short' }).format(new Date()).match(/\\s(?:CST|CDT|PST|PDT|EST|EDT)$/)) ? 'MM/DD/YYYY' : 'DD/MM/YYYY'))\n    }\n  },\n  methods: {\n    removeArea (area) {\n      this.field.areas.splice(this.field.areas.indexOf(area), 1)\n\n      this.save()\n    },\n    buildDefaultName (field, fields) {\n      if (field.type === 'payment' && field.preferences?.price && !field.preferences?.formula) {\n        const { price, currency } = field.preferences || {}\n\n        const formattedPrice = new Intl.NumberFormat([], {\n          style: 'currency',\n          currency\n        }).format(price)\n\n        return `${this.fieldNames[field.type]} ${formattedPrice}`\n      } else {\n        const typeIndex = fields.filter((f) => f.type === field.type).indexOf(field)\n\n        if (field.type === 'heading') {\n          return `${this.fieldNames[field.type]} ${typeIndex + 1}`\n        } else {\n          return `${this.fieldLabels[field.type]} ${typeIndex + 1}`\n        }\n      }\n    },\n    onNameFocus (e) {\n      this.isNameFocus = true\n\n      if (!this.field.name) {\n        setTimeout(() => {\n          this.$refs.name.$refs.contenteditable.innerText = ' '\n        }, 1)\n      }\n    },\n    maybeFocusOnOptionArea (option) {\n      const area = this.field.areas.find((a) => a.option_uuid === option.uuid)\n\n      if (area) {\n        this.selectedAreaRef.value = area\n      }\n    },\n    scrollToFirstArea () {\n      return this.sortedAreas[0] && this.$emit('scroll-to', this.sortedAreas[0])\n    },\n    closeDropdown () {\n      document.activeElement.blur()\n    },\n    addOption () {\n      this.field.options.push({ value: '', uuid: v4() })\n\n      this.$nextTick(() => {\n        const inputs = this.$refs.options.querySelectorAll('input')\n\n        inputs[inputs.length - 1]?.focus()\n      })\n\n      this.save()\n    },\n    removeOption (option) {\n      console.log('removeOption', option)\n      this.field.options.splice(this.field.options.indexOf(option), 1)\n\n      const optionIndex = this.field.areas.findIndex((a) => a.option_uuid === option.uuid)\n\n      if (optionIndex !== -1) {\n        this.field.areas.splice(this.field.areas.findIndex((a) => a.option_uuid === option.uuid), 1)\n      }\n\n      this.save()\n    },\n    maybeUpdateOptions () {\n      delete this.field.default_value\n\n      if (!['radio', 'multiple', 'select'].includes(this.field.type)) {\n        delete this.field.options\n      }\n\n      if (['radio', 'multiple', 'select'].includes(this.field.type)) {\n        this.field.options ||= [{ value: '', uuid: v4() }]\n      }\n\n      if (['heading'].includes(this.field.type)) {\n        this.field.readonly = true\n      }\n\n      (this.field.areas || []).forEach((area) => {\n        if (this.field.type === 'cells') {\n          area.cell_w = area.w * 2 / Math.floor(area.w / area.h)\n        } else {\n          delete area.cell_w\n        }\n      })\n    },\n    onNameBlur (e) {\n      const text = this.$refs.name.$refs.contenteditable.innerText.trim()\n\n      if (text) {\n        this.field.name = text\n      } else {\n        this.field.name = ''\n        this.$refs.name.$refs.contenteditable.innerText = this.defaultName\n      }\n\n      this.isNameFocus = false\n\n      this.save()\n    }\n  }\n}\n</script>\n","<template>\n  <div\n    class=\"group/contenteditable relative overflow-visible\"\n    :class=\"{ 'flex items-center': !iconInline }\"\n  >\n    <span\n      ref=\"contenteditable\"\n      dir=\"auto\"\n      :contenteditable=\"editable\"\n      style=\"min-width: 2px\"\n      :class=\"iconInline ? 'inline' : 'block'\"\n      class=\"peer outline-none focus:block\"\n      @paste.prevent=\"onPaste\"\n      @keydown.enter.prevent=\"blurContenteditable\"\n      @focus=\"$emit('focus', $event)\"\n      @blur=\"onBlur\"\n    >\n      {{ value }}\n    </span>\n    <span\n      v-if=\"withRequired\"\n      title=\"Required\"\n      class=\"text-red-500 peer-focus:hidden\"\n      @click=\"focusContenteditable\"\n    >\n      *\n    </span>\n    <IconPencil\n      class=\"cursor-pointer flex-none opacity-0 group-hover/contenteditable-container:opacity-100 group-hover/contenteditable:opacity-100 align-middle peer-focus:hidden\"\n      :style=\"iconInline ? {} : { right: -(1.1 * iconWidth) + 'px' }\"\n      :title=\"t('edit')\"\n      :class=\"{ invisible: !editable, 'ml-1': !withRequired, 'absolute': !iconInline, 'inline align-bottom': iconInline }\"\n      :width=\"iconWidth\"\n      :stroke-width=\"iconStrokeWidth\"\n      @click=\"[focusContenteditable(), selectOnEditClick && selectContent()]\"\n    />\n  </div>\n</template>\n\n<script>\nimport { IconPencil } from '@tabler/icons-vue'\n\nexport default {\n  name: 'ContenteditableField',\n  components: {\n    IconPencil\n  },\n  inject: ['t'],\n  props: {\n    modelValue: {\n      type: String,\n      required: false,\n      default: ''\n    },\n    iconInline: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    iconWidth: {\n      type: Number,\n      required: false,\n      default: 30\n    },\n    withRequired: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    selectOnEditClick: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    editable: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    iconStrokeWidth: {\n      type: Number,\n      required: false,\n      default: 2\n    }\n  },\n  emits: ['update:model-value', 'focus', 'blur'],\n  data () {\n    return {\n      value: ''\n    }\n  },\n  watch: {\n    modelValue: {\n      handler (value) {\n        this.value = value\n      },\n      immediate: true\n    }\n  },\n  methods: {\n    onPaste (e) {\n      const text = (e.clipboardData || window.clipboardData).getData('text/plain')\n\n      const selection = this.$el.getRootNode().getSelection()\n\n      if (selection.rangeCount) {\n        selection.deleteFromDocument()\n        selection.getRangeAt(0).insertNode(document.createTextNode(text))\n        selection.collapseToEnd()\n      }\n    },\n    selectContent () {\n      const el = this.$refs.contenteditable\n\n      const range = document.createRange()\n\n      range.selectNodeContents(el)\n\n      const sel = window.getSelection()\n\n      sel.removeAllRanges()\n\n      sel.addRange(range)\n    },\n    onBlur (e) {\n      setTimeout(() => {\n        this.value = this.$refs.contenteditable.innerText.trim() || this.modelValue\n        this.$emit('update:model-value', this.value)\n        this.$emit('blur', e)\n      }, 1)\n    },\n    focusContenteditable () {\n      this.$refs.contenteditable.focus()\n    },\n    blurContenteditable () {\n      this.$refs.contenteditable.blur()\n    }\n  }\n}\n</script>\n","import { render } from \"./contenteditable.vue?vue&type=template&id=6d0581d5\"\nimport script from \"./contenteditable.vue?vue&type=script&lang=js\"\nexport * from \"./contenteditable.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <span\n    class=\"dropdown\"\n    @mouseenter=\"renderDropdown = true\"\n    @touchstart=\"renderDropdown = true\"\n  >\n    <slot>\n      <label\n        tabindex=\"0\"\n        :title=\"fieldNames[modelValue]\"\n        class=\"cursor-pointer\"\n      >\n        <component\n          :is=\"fieldIcons[modelValue]\"\n          :width=\"buttonWidth\"\n          :class=\"buttonClasses\"\n          :stroke-width=\"1.6\"\n        />\n      </label>\n    </slot>\n    <ul\n      v-if=\"editable && renderDropdown\"\n      tabindex=\"0\"\n      class=\"dropdown-content menu menu-xs p-2 shadow rounded-box w-52 z-10 mb-3\"\n      :style=\"menuStyle\"\n      :class=\"menuClasses\"\n      @click=\"closeDropdown\"\n    >\n      <template\n        v-for=\"(icon, type) in fieldIconsSorted\"\n        :key=\"type\"\n      >\n        <div v-if=\"type === 'initials' || type === 'signature'\">\n        <li v-if=\"(fieldTypes.length === 0 || fieldTypes.includes(type)) && (withPhone || type != 'phone') && (withPayment || type != 'payment') && (withVerification || type != 'verification')\">\n          <a\n            href=\"#\"\n            class=\"text-sm py-1 px-2\"\n            :class=\"{ 'active': type === modelValue }\"\n            @click.prevent=\"$emit('update:model-value', type)\"\n          >\n            <component\n              :is=\"icon\"\n              :stroke-width=\"1.6\"\n              :width=\"20\"\n            />\n            {{ fieldNames[type] }} \n            <!-- this is the sub menu  -->\n          </a>\n          </li>\n        </div>\n      </template>\n    </ul>\n  </span>\n</template>\n\n<script>\nimport { IconTextSize, IconSignature, IconCalendarEvent, IconPhoto, IconCheckbox, IconPaperclip, IconSelect, IconCircleDot, IconChecks, IconColumns3, IconPhoneCheck, IconLetterCaseLower, IconCreditCard, IconRubberStamp, IconSquareNumber1, IconHeading, IconId } from '@tabler/icons-vue'\n\nexport default {\n  name: 'FiledTypeDropdown',\n  inject: ['withPhone', 'withPayment', 'withVerification', 't', 'fieldTypes'],\n  props: {\n    modelValue: {\n      type: String,\n      required: true\n    },\n    menuClasses: {\n      type: String,\n      required: false,\n      default: 'mt-1.5 bg-base-100'\n    },\n    menuStyle: {\n      type: Object,\n      required: false,\n      default: () => ({})\n    },\n    buttonClasses: {\n      type: String,\n      required: false,\n      default: ''\n    },\n    editable: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    buttonWidth: {\n      type: Number,\n      required: false,\n      default: 18\n    }\n  },\n  emits: ['update:model-value'],\n  data () {\n    return {\n      renderDropdown: false\n    }\n  },\n  computed: {\n    fieldNames () {\n      return {\n        heading: this.t('heading'),\n        text: this.t('text'),\n        signature: this.t('signature'),\n        initials: this.t('initials'),\n        date: this.t('date'),\n        number: this.t('number'),\n        image: this.t('image'),\n        file: this.t('file'),\n        select: this.t('select'),\n        checkbox: this.t('checkbox'),\n        multiple: this.t('multiple'),\n        radio: this.t('radio'),\n        cells: this.t('cells'),\n        stamp: this.t('stamp'),\n        payment: this.t('payment'),\n        phone: this.t('phone'),\n        verification: this.t('verify_id')\n      }\n    },\n    fieldLabels () {\n      return {\n        text: this.t('text_field'),\n        signature: this.t('signature_field'),\n        initials: this.t('initials_field'),\n        date: this.t('date_field'),\n        number: this.t('number_field'),\n        image: this.t('image_field'),\n        file: this.t('file_field'),\n        select: this.t('select_field'),\n        checkbox: this.t('checkbox_field'),\n        multiple: this.t('multiple_field'),\n        radio: this.t('radio_field'),\n        cells: this.t('cells_field'),\n        stamp: this.t('stamp_field'),\n        payment: this.t('payment_field'),\n        phone: this.t('phone_field'),\n        verification: this.t('verify_id')\n      }\n    },\n    fieldIcons () {\n      return {\n        heading: IconHeading,\n        text: IconTextSize,\n        signature: IconSignature,\n        initials: IconLetterCaseLower,\n        date: IconCalendarEvent,\n        number: IconSquareNumber1,\n        image: IconPhoto,\n        checkbox: IconCheckbox,\n        multiple: IconChecks,\n        file: IconPaperclip,\n        radio: IconCircleDot,\n        select: IconSelect,\n        cells: IconColumns3,\n        stamp: IconRubberStamp,\n        payment: IconCreditCard,\n        phone: IconPhoneCheck,\n        verification: IconId\n      }\n    },\n    fieldIconsSorted () {\n      if (this.fieldTypes.length) {\n        return this.fieldTypes.reduce((acc, type) => {\n          acc[type] = this.fieldIcons[type]\n\n          return acc\n        }, {})\n      } else {\n        return Object.fromEntries(Object.entries(this.fieldIcons).filter(([key]) => key !== 'heading'))\n      }\n    }\n  },\n  methods: {\n    closeDropdown () {\n      document.activeElement.blur()\n    }\n  }\n}\n</script>\n","import { render } from \"./field_type.vue?vue&type=template&id=7494f4f5\"\nimport script from \"./field_type.vue?vue&type=script&lang=js\"\nexport * from \"./field_type.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <span\n    class=\"dropdown dropdown-end\"\n    :class=\"{ 'dropdown-open': ((!field.preferences?.price && !field.preferences?.formula) || !isConnected) && !isLoading }\"\n  >\n    <label\n      tabindex=\"0\"\n      :title=\"t('settings')\"\n      class=\"cursor-pointer text-transparent group-hover:text-base-content\"\n    >\n      <IconSettings\n        :width=\"18\"\n        :stroke-width=\"1.6\"\n      />\n    </label>\n    <ul\n      tabindex=\"0\"\n      class=\"mt-1.5 dropdown-content menu menu-xs p-2 shadow bg-base-100 rounded-box w-52 z-10\"\n      draggable=\"true\"\n      @dragstart.prevent.stop\n      @click=\"closeDropdown\"\n    >\n      <div\n        v-if=\"!('price_id' in field.preferences)\"\n        class=\"py-1.5 px-1 relative\"\n        @click.stop\n      >\n        <select\n          v-model=\"field.preferences.currency\"\n          :placeholder=\"t('price')\"\n          class=\"select select-bordered select-xs font-normal w-full max-w-xs !h-7 !outline-0\"\n          @change=\"save\"\n        >\n          <option\n            v-for=\"currency in currenciesList\"\n            :key=\"currency\"\n            :value=\"currency\"\n          >\n            {{ currency }}\n          </option>\n        </select>\n        <label\n          :style=\"{ backgroundColor: backgroundColor }\"\n          class=\"absolute -top-1 left-2.5 px-1 h-4\"\n          style=\"font-size: 8px\"\n        >\n          {{ t('currency') }}\n        </label>\n      </div>\n      <div\n        class=\"py-1.5 px-1 relative\"\n        @click.stop\n      >\n        <input\n          v-if=\"field.preferences.formula\"\n          type=\"number\"\n          :placeholder=\"t('price')\"\n          disabled=\"true\"\n          class=\"input input-bordered input-xs w-full max-w-xs h-7 !outline-0\"\n          @blur=\"save\"\n        >\n        <input\n          v-else-if=\"'price_id' in field.preferences\"\n          v-model=\"field.preferences.price_id\"\n          placeholder=\"Price ID: price_XXXXX\"\n          class=\"input input-bordered input-xs w-full max-w-xs h-7 !outline-0\"\n          @blur=\"save\"\n        >\n        <input\n          v-else\n          v-model=\"field.preferences.price\"\n          type=\"number\"\n          :placeholder=\"t('price')\"\n          class=\"input input-bordered input-xs w-full max-w-xs h-7 !outline-0\"\n          @blur=\"save\"\n        >\n        <label\n          v-if=\"field.preferences.price && !field.preferences.formula\"\n          :style=\"{ backgroundColor: backgroundColor }\"\n          class=\"absolute -top-1 left-2.5 px-1 h-4\"\n          style=\"font-size: 8px\"\n        >\n          {{ t('price') }}\n        </label>\n        <div class=\"flex items-center justify-center\">\n          <a\n            href=\"#\"\n            class=\"hover:underline\"\n            style=\"font-size: 11px\"\n            :class=\"{'underline': !('price_id' in field.preferences)}\"\n            @click=\"delete field.preferences.price_id\"\n          >{{ t('one_off') }}</a>\n          <span class=\"h-2.5 border-l border-base-content mx-1\" />\n          <a\n            href=\"#\"\n            class=\"hover:underline\"\n            style=\"font-size: 11px\"\n            :class=\"{'underline': ('price_id' in field.preferences)}\"\n            @click=\"field.preferences.price_id ??= ''\"\n          >{{ t('recurrent') }}</a>\n        </div>\n      </div>\n      <div\n        v-if=\"!isConnected || isOauthSuccess\"\n        class=\"py-1.5 px-1 relative\"\n        @click.stop\n      >\n        <div\n          v-if=\"isConnected && isOauthSuccess\"\n          class=\"text-sm text-center\"\n        >\n          <IconCircleCheck\n            class=\"inline text-green-600 w-4 h-4\"\n          />\n          Stripe Connected\n        </div>\n        <form\n          v-if=\"!isConnected\"\n          data-turbo=\"false\"\n          action=\"/auth/stripe_connect\"\n          accept-charset=\"UTF-8\"\n          target=\"_blank\"\n          method=\"post\"\n        >\n          <input\n            type=\"hidden\"\n            name=\"state\"\n            :value=\"oauthState\"\n            autocomplete=\"off\"\n          >\n          <input\n            type=\"hidden\"\n            name=\"redirect_uri\"\n            :value=\"redirectUri\"\n            autocomplete=\"off\"\n          >\n          <input\n            type=\"hidden\"\n            name=\"scope\"\n            value=\"read_write\"\n            autocomplete=\"off\"\n          >\n          <input\n            type=\"hidden\"\n            name=\"authenticity_token\"\n            :value=\"authenticityToken\"\n            autocomplete=\"off\"\n          >\n          <button\n            type=\"submit\"\n            :disabled=\"isLoading\"\n            class=\"btn bg-[#7B73FF] hover:bg-[#0A2540] btn-sm text-white w-full\"\n          >\n            <span\n              v-if=\"isLoading\"\n              class=\"flex items-center space-x-1\"\n            >\n              <IconInnerShadowTop\n                class=\"w-4 h-4 animate-spin inline\"\n              />\n              <span>\n                Connect Stripe\n              </span>\n            </span>\n            <span\n              v-else\n              class=\"flex items-center space-x-1\"\n            >\n              <IconBrandStripe\n                class=\"w-4 h-4 inline\"\n              />\n              <span>\n                Connect Stripe\n              </span>\n            </span>\n          </button>\n        </form>\n        <a\n          v-if=\"!isConnected\"\n          class=\"block link text-center mt-1\"\n          href=\"https://www.docuseal.com/blog/accept-payments-and-request-signatures-with-ease\"\n          target=\"_blank\"\n          data-turbo=\"false\"\n        >{{ t('learn_more') }}</a>\n      </div>\n      <li\n        v-if=\"!('price_id' in field.preferences)\"\n        class=\"mb-1\"\n      >\n        <label\n          class=\"label-text cursor-pointer text-center w-full flex items-center\"\n          @click=\"$emit('click-formula')\"\n        >\n          <IconMathFunction\n            width=\"18\"\n          />\n          <span class=\"text-sm\">\n            {{ t('formula') }}\n          </span>\n        </label>\n      </li>\n      <hr>\n      <li>\n        <label\n          class=\"label-text cursor-pointer text-center w-full flex items-center\"\n          @click=\"$emit('click-description')\"\n        >\n          <IconInfoCircle\n            width=\"18\"\n          />\n          <span class=\"text-sm\">\n            {{ t('description') }}\n          </span>\n        </label>\n      </li>\n      <li class=\"mt-1\">\n        <label\n          class=\"label-text cursor-pointer text-center w-full flex items-center\"\n          @click=\"$emit('click-condition')\"\n        >\n          <IconRouteAltLeft\n            width=\"18\"\n          />\n          <span class=\"text-sm\">\n            {{ t('condition') }}\n          </span>\n        </label>\n      </li>\n    </ul>\n  </span>\n</template>\n\n<script>\nimport { IconMathFunction, IconSettings, IconCircleCheck, IconInfoCircle, IconBrandStripe, IconInnerShadowTop, IconRouteAltLeft } from '@tabler/icons-vue'\nimport { ref } from 'vue'\n\nconst isConnected = ref(false)\n\nexport default {\n  name: 'PaymentSettings',\n  components: {\n    IconSettings,\n    IconCircleCheck,\n    IconRouteAltLeft,\n    IconInfoCircle,\n    IconMathFunction,\n    IconInnerShadowTop,\n    IconBrandStripe\n  },\n  inject: ['backgroundColor', 'save', 'currencies', 't', 'isPaymentConnected'],\n  props: {\n    field: {\n      type: Object,\n      required: true\n    }\n  },\n  emits: ['click-condition', 'click-description', 'click-formula'],\n  data () {\n    return {\n      isLoading: false\n    }\n  },\n  computed: {\n    isConnected: () => isConnected.value,\n    isOauthSuccess () {\n      return document.location.search?.includes('stripe_connect_success')\n    },\n    redirectUri () {\n      return document.location.origin + '/auth/stripe_connect/callback'\n    },\n    defaultCurrencies () {\n      return ['USD', 'EUR', 'GBP', 'CAD', 'AUD']\n    },\n    currenciesList () {\n      return this.currencies.length ? this.currencies : this.defaultCurrencies\n    },\n    authenticityToken () {\n      return document.querySelector('meta[name=\"csrf-token\"]')?.content\n    },\n    oauthState () {\n      const params = new URLSearchParams('')\n\n      params.set('redir', document.location.href)\n\n      return params.toString()\n    },\n    defaultCurrency () {\n      const userTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone\n\n      if (userTimezone.startsWith('Europe')) {\n        return 'EUR'\n      } else if (userTimezone.includes('London') || userTimezone.includes('Belfast')) {\n        return 'GBP'\n      } else if (userTimezone.includes('Vancouver') || userTimezone.includes('Toronto') || userTimezone.includes('Halifax') || userTimezone.includes('Edmonton')) {\n        return 'CAD'\n      } else if (userTimezone.startsWith('Australia')) {\n        return 'AUD'\n      } else {\n        return 'USD'\n      }\n    }\n  },\n  created () {\n    this.field.preferences ||= {}\n  },\n  mounted () {\n    this.field.preferences.currency ||= this.defaultCurrency\n\n    isConnected.value ||= this.isPaymentConnected\n\n    if (!this.isConnected) {\n      this.checkStatus()\n    }\n  },\n  methods: {\n    checkStatus () {\n      this.isLoading = true\n\n      fetch('/api/stripe_connect').then(async (resp) => {\n        const { status } = await resp.json()\n\n        if (status === 'connected') {\n          isConnected.value = true\n        }\n      }).finally(() => {\n        this.isLoading = false\n      })\n    },\n    closeDropdown () {\n      document.activeElement.blur()\n    }\n  }\n}\n</script>\n","import { render } from \"./payment_settings.vue?vue&type=template&id=aa22129a\"\nimport script from \"./payment_settings.vue?vue&type=script&lang=js\"\nexport * from \"./payment_settings.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <div\n    v-if=\"field.type === 'number'\"\n    class=\"py-1.5 px-1 relative\"\n    @click.stop\n  >\n    <select\n      :placeholder=\"t('format')\"\n      class=\"select select-bordered select-xs font-normal w-full max-w-xs !h-7 !outline-0 bg-transparent\"\n      @change=\"[field.preferences ||= {}, field.preferences.format = $event.target.value, save()]\"\n    >\n      <option\n        v-for=\"format in numberFormats\"\n        :key=\"format\"\n        :value=\"format\"\n        :selected=\"format === field.preferences?.format || (format === 'none' && !field.preferences?.format)\"\n      >\n        {{ formatNumber(123456789.567, format) }}\n      </option>\n    </select>\n    <label\n      :style=\"{ backgroundColor }\"\n      class=\"absolute -top-1 left-2.5 px-1 h-4\"\n      style=\"font-size: 8px\"\n    >\n      {{ t('format') }}\n    </label>\n  </div>\n  <div\n    v-if=\"['number'].includes(field.type)\"\n    class=\"py-1.5 px-1 relative\"\n    @click.stop\n  >\n    <select\n      class=\"select select-bordered select-xs w-full max-w-xs h-7 !outline-0 font-normal bg-transparent\"\n      @change=\"[field.preferences ||= {}, field.preferences.align = $event.target.value, save()]\"\n    >\n      <option\n        v-for=\"value in ['left', 'right', 'center']\"\n        :key=\"value\"\n        :selected=\"field.preferences?.align ? value === field.preferences.align : value === 'left'\"\n        :value=\"value\"\n      >\n        {{ t(value) }}\n      </option>\n    </select>\n    <label\n      :style=\"{ backgroundColor }\"\n      class=\"absolute -top-1 left-2.5 px-1 h-4\"\n      style=\"font-size: 8px\"\n    >\n      {{ t('align') }}\n    </label>\n  </div>\n  <div\n    v-if=\"['select', 'radio'].includes(field.type) && !defaultField\"\n    class=\"py-1.5 px-1 relative\"\n    @click.stop\n  >\n    <select\n      :placeholder=\"t('default_value')\"\n      dir=\"auto\"\n      class=\"select select-bordered select-xs w-full max-w-xs h-7 !outline-0 font-normal bg-transparent\"\n      @change=\"[field.default_value = $event.target.value, !field.default_value && delete field.default_value, save()]\"\n    >\n      <option\n        value=\"\"\n        :selected=\"!field.default_value\"\n      >\n        {{ t('none') }}\n      </option>\n      <option\n        v-for=\"(option, index) in field.options || []\"\n        :key=\"option.uuid\"\n        :value=\"option.value || `${t('option')} ${index + 1}`\"\n        :selected=\"field.default_value === (option.value || `${t('option')} ${index + 1}`)\"\n      >\n        {{ option.value || `${t('option')} ${index + 1}` }}\n      </option>\n    </select>\n    <label\n      :style=\"{ backgroundColor }\"\n      class=\"absolute -top-1 left-2.5 px-1 h-4\"\n      style=\"font-size: 8px\"\n    >\n      {{ t('default_value') }}\n    </label>\n  </div>\n  <div\n    v-if=\"['text', 'number'].includes(field.type) && !defaultField\"\n    class=\"py-1.5 px-1 relative\"\n    @click.stop\n  >\n    <input\n      v-model=\"field.default_value\"\n      :placeholder=\"t('default_value')\"\n      dir=\"auto\"\n      :type=\"field.type\"\n      class=\"input input-bordered input-xs w-full max-w-xs h-7 !outline-0 bg-transparent\"\n      @blur=\"save\"\n    >\n    <label\n      v-if=\"field.default_value\"\n      :style=\"{ backgroundColor }\"\n      class=\"absolute -top-1 left-2.5 px-1 h-4\"\n      style=\"font-size: 8px\"\n    >\n      {{ t('default_value') }}\n    </label>\n  </div>\n  <div\n    v-if=\"['text', 'cells'].includes(field.type)\"\n    class=\"py-1.5 px-1 relative\"\n    @click.stop\n  >\n    <select\n      class=\"select select-bordered select-xs w-full max-w-xs h-7 !outline-0 font-normal bg-transparent\"\n      @change=\"onChangeValidation\"\n    >\n      <option\n        :selected=\"!field.validation\"\n        value=\"\"\n      >\n        {{ t('none') }}\n      </option>\n      <option\n        v-for=\"(key, value) in validations\"\n        :key=\"key\"\n        :selected=\"field.validation?.pattern ? value === field.validation.pattern : value === 'none'\"\n        :value=\"value\"\n      >\n        {{ t(key) }}\n      </option>\n      <option\n        :selected=\"field.validation && !validations[field.validation.pattern]\"\n        :value=\"validations[field.validation?.pattern] || !field.validation?.pattern ? 'custom' : field.validation?.pattern\"\n      >\n        {{ t('custom') }}\n      </option>\n    </select>\n    <label\n      :style=\"{ backgroundColor }\"\n      class=\"absolute -top-1 left-2.5 px-1 h-4\"\n      style=\"font-size: 8px\"\n    >\n      {{ t('validation') }}\n    </label>\n  </div>\n  <div\n    v-if=\"['text', 'cells'].includes(field.type) && field.validation && !validations[field.validation.pattern]\"\n    class=\"py-1.5 px-1 relative\"\n    @click.stop\n  >\n    <input\n      ref=\"validationCustom\"\n      v-model=\"field.validation.pattern\"\n      :placeholder=\"t('regexp_validation')\"\n      dir=\"auto\"\n      class=\"input input-bordered input-xs w-full max-w-xs h-7 !outline-0 bg-transparent\"\n      @blur=\"save\"\n    >\n    <label\n      v-if=\"field.validation.pattern\"\n      :style=\"{ backgroundColor }\"\n      class=\"absolute -top-1 left-2.5 px-1 h-4\"\n      style=\"font-size: 8px\"\n    >\n      {{ t('regexp_validation') }}\n    </label>\n  </div>\n  <div\n    v-if=\"field.type === 'date'\"\n    class=\"py-1.5 px-1 relative\"\n    @click.stop\n  >\n    <select\n      v-model=\"field.preferences.format\"\n      :placeholder=\"t('format')\"\n      class=\"select select-bordered select-xs font-normal w-full max-w-xs !h-7 !outline-0 bg-transparent\"\n      @change=\"save\"\n    >\n      <option\n        v-for=\"format in dateFormats\"\n        :key=\"format\"\n        :value=\"format\"\n      >\n        {{ formatDate(new Date(), format) }}\n      </option>\n    </select>\n    <label\n      :style=\"{ backgroundColor }\"\n      class=\"absolute -top-1 left-2.5 px-1 h-4\"\n      style=\"font-size: 8px\"\n    >\n      {{ t('format') }}\n    </label>\n  </div>\n  <div\n    v-if=\"field.type === 'signature'\"\n    class=\"py-1.5 px-1 relative\"\n    @click.stop\n  >\n    <select\n      :placeholder=\"t('format')\"\n      class=\"select select-bordered select-xs font-normal w-full max-w-xs !h-7 !outline-0 bg-transparent\"\n      @change=\"[field.preferences.format = $event.target.value, save()]\"\n    >\n      <option\n        value=\"any\"\n        :selected=\"!field.preferences?.format || field.preferences.format === 'any'\"\n      >\n        {{ t('any') }}\n      </option>\n      <option\n        value=\"drawn\"\n        :selected=\"field.preferences?.format === 'drawn'\"\n      >\n        {{ t('drawn') }}\n      </option>\n      <option\n        value=\"typed\"\n        :selected=\"field.preferences?.format === 'typed'\"\n      >\n        {{ t('typed') }}\n      </option>\n    </select>\n    <label\n      :style=\"{ backgroundColor }\"\n      class=\"absolute -top-1 left-2.5 px-1 h-4\"\n      style=\"font-size: 8px\"\n    >\n      {{ t('format') }}\n    </label>\n  </div>\n  <li\n    v-if=\"withRequired && field.type != 'phone' && field.type != 'stamp'\"\n    @click.stop\n  >\n    <label class=\"cursor-pointer py-1.5\">\n      <input\n        v-model=\"field.required\"\n        type=\"checkbox\"\n        :disabled=\"!editable || defaultField\"\n        class=\"toggle toggle-xs\"\n        @update:model-value=\"save\"\n      >\n      <span class=\"label-text\">{{ t('required') }}</span>\n    </label>\n  </li>\n  <li\n    v-if=\"field.type == 'stamp'\"\n    @click.stop\n  >\n    <label class=\"cursor-pointer py-1.5\">\n      <input\n        :checked=\"field.preferences?.with_logo != false\"\n        type=\"checkbox\"\n        class=\"toggle toggle-xs\"\n        @change=\"[field.preferences ||= {}, field.preferences.with_logo = field.preferences.with_logo == false, save()]\"\n      >\n      <span class=\"label-text\">{{ t('with_logo') }}</span>\n    </label>\n  </li>\n  <li\n    v-if=\"field.type == 'checkbox'\"\n    @click.stop\n  >\n    <label class=\"cursor-pointer py-1.5\">\n      <input\n        v-model=\"field.default_value\"\n        type=\"checkbox\"\n        class=\"toggle toggle-xs\"\n        @update:model-value=\"[field.default_value = $event, field.readonly = $event, save()]\"\n      >\n      <span class=\"label-text\">{{ t('checked') }}</span>\n    </label>\n  </li>\n  <li\n    v-if=\"field.type == 'date'\"\n    @click.stop\n  >\n    <label class=\"cursor-pointer py-1.5\">\n      <input\n        v-model=\"field.readonly\"\n        type=\"checkbox\"\n        class=\"toggle toggle-xs\"\n        @update:model-value=\"[field.default_value = $event ? '{{date}}' : null, field.readonly = $event, save()]\"\n      >\n      <span class=\"label-text\">{{ t('set_signing_date') }}</span>\n    </label>\n  </li>\n  <li\n    v-if=\"['text', 'number'].includes(field.type) && !defaultField\"\n    @click.stop\n  >\n    <label class=\"cursor-pointer py-1.5\">\n      <input\n        v-model=\"field.readonly\"\n        type=\"checkbox\"\n        class=\"toggle toggle-xs\"\n        @update:model-value=\"save\"\n      >\n      <span class=\"label-text\">{{ t('read_only') }}</span>\n    </label>\n  </li>\n  <hr\n    v-if=\"field.type != 'stamp'\"\n    class=\"pb-0.5 mt-0.5\"\n  >\n  <li\n    v-if=\"field.type != 'stamp'\"\n  >\n    <label\n      class=\"label-text cursor-pointer text-center w-full flex items-center\"\n      @click=\"$emit('click-description')\"\n    >\n      <IconInfoCircle\n        width=\"18\"\n      />\n      <span class=\"text-sm\">\n        {{ t('description') }}\n      </span>\n    </label>\n  </li>\n  <!-- <li\n    v-if=\"field.type != 'stamp'\"\n  >\n    <label\n      class=\"label-text cursor-pointer text-center w-full flex items-center\"\n      @click=\"$emit('click-condition')\"\n    >\n      <IconRouteAltLeft\n        width=\"18\"\n      />\n      <span class=\"text-sm\">\n        {{ t('condition') }}\n      </span>\n    </label>\n  </li> -->\n  <li v-if=\"field.type == 'number'\">\n    <label\n      class=\"label-text cursor-pointer text-center w-full flex items-center\"\n      @click=\"$emit('click-formula')\"\n    >\n      <IconMathFunction\n        width=\"18\"\n      />\n      <span class=\"text-sm\">\n        {{ t('formula') }}\n      </span>\n    </label>\n  </li>\n  <hr class=\"pb-0.5 mt-0.5\">\n  <template v-if=\"withAreas\">\n    <li\n      v-for=\"(area, index) in sortedAreas\"\n      :key=\"index\"\n    >\n      <a\n        href=\"#\"\n        class=\"text-sm py-1 px-2 group/1\"\n        @click.prevent=\"$emit('scroll-to', area)\"\n      >\n        <IconShape\n          :width=\"20\"\n          :stroke-width=\"1.6\"\n        />\n        {{ t('page') }}\n        <template v-if=\"template.schema.length > 1\">{{ template.schema.findIndex((item) => item.attachment_uuid === area.attachment_uuid) + 1 }}-</template>{{ area.page + 1 }}\n        <IconX\n          :width=\"12\"\n          class=\"group-hover/1:inline hidden\"\n          @click.prevent.stop=\"[$emit('remove-area', area), $event.target.closest('.dropdown').querySelector('label').focus()]\"\n        />\n      </a>\n    </li>\n    <li v-if=\"!field.areas?.length || !['radio', 'multiple'].includes(field.type)\">\n      <a\n        href=\"#\"\n        class=\"text-sm py-1 px-2\"\n        @click.prevent=\"$emit('set-draw', { field })\"\n      >\n        <IconNewSection\n          :width=\"20\"\n          :stroke-width=\"1.6\"\n        />\n        {{ t('draw_new_area') }}\n      </a>\n    </li>\n  </template>\n  <li v-if=\"field.areas?.length === 1 && ['date', 'signature', 'initials', 'text', 'cells'].includes(field.type)\">\n    <a\n      href=\"#\"\n      class=\"text-sm py-1 px-2\"\n      @click.prevent=\"copyToAllPages(field)\"\n    >\n      <IconCopy\n        :width=\"20\"\n        :stroke-width=\"1.6\"\n      />\n      {{ t('copy_to_all_pages') }}\n    </a>\n  </li>\n</template>\n\n<script>\nimport { IconRouteAltLeft, IconShape, IconX, IconMathFunction, IconNewSection, IconInfoCircle, IconCopy } from '@tabler/icons-vue'\n\nexport default {\n  name: 'FieldSettings',\n  components: {\n    IconShape,\n    IconInfoCircle,\n    IconMathFunction,\n    IconRouteAltLeft,\n    IconCopy,\n    IconNewSection,\n    IconX\n  },\n  inject: ['template', 'save', 't'],\n  props: {\n    field: {\n      type: Object,\n      required: true\n    },\n    backgroundColor: {\n      type: String,\n      required: false,\n      default: null\n    },\n    defaultField: {\n      type: Object,\n      required: false,\n      default: null\n    },\n    withRequired: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    withAreas: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    editable: {\n      type: Boolean,\n      required: false,\n      default: true\n    }\n  },\n  emits: ['set-draw', 'scroll-to', 'click-formula', 'click-description', 'click-condition', 'remove-area'],\n  data () {\n    return {\n    }\n  },\n  computed: {\n    schemaAttachmentsIndexes () {\n      return (this.template.schema || []).reduce((acc, item, index) => {\n        acc[item.attachment_uuid] = index\n\n        return acc\n      }, {})\n    },\n    numberFormats () {\n      return [\n        'none',\n        'comma',\n        'dot',\n        'space'\n      ]\n    },\n    dateFormats () {\n      const formats = [\n        'MM/DD/YYYY',\n        'DD/MM/YYYY',\n        'YYYY-MM-DD',\n        'DD-MM-YYYY',\n        'DD.MM.YYYY',\n        'MMM D, YYYY',\n        'MMMM D, YYYY',\n        'D MMM YYYY',\n        'D MMMM YYYY'\n      ]\n\n      if (Intl.DateTimeFormat().resolvedOptions().timeZone?.includes('Seoul') || navigator.language?.startsWith('ko')) {\n        formats.push('YYYY년 MM월 DD일')\n      }\n\n      if (this.field.preferences?.format && !formats.includes(this.field.preferences.format)) {\n        formats.unshift(this.field.preferences.format)\n      }\n\n      return formats\n    },\n    validations () {\n      return {\n        '^[0-9]{3}-[0-9]{2}-[0-9]{4}$': 'ssn',\n        '^[0-9]{2}-[0-9]{7}$': 'ein',\n        '^[^@\\\\s]+@[^@\\\\s]+\\\\.[^@\\\\s]+$': 'email',\n        '^https?://.*': 'url',\n        '^[0-9]{5}(?:-[0-9]{4})?$': 'zip',\n        '^[0-9]+$': 'numbers_only',\n        '^[a-zA-Z]+$': 'letters_only'\n      }\n    },\n    sortedAreas () {\n      return (this.field.areas || []).sort((a, b) => {\n        return this.schemaAttachmentsIndexes[a.attachment_uuid] - this.schemaAttachmentsIndexes[b.attachment_uuid]\n      })\n    }\n  },\n  methods: {\n    onChangeValidation (event) {\n      if (event.target.value === 'custom') {\n        this.field.validation = { pattern: '' }\n\n        this.$nextTick(() => this.$refs.validationCustom.focus())\n      } else if (event.target.value) {\n        this.field.validation ||= {}\n        this.field.validation.pattern = event.target.value\n      } else {\n        delete this.field.validation\n      }\n\n      this.save()\n    },\n    copyToAllPages (field) {\n      const areaString = JSON.stringify(field.areas[0])\n\n      this.template.documents.forEach((attachment) => {\n        const numberOfPages = attachment.metadata?.pdf?.number_of_pages || attachment.preview_images.length\n\n        for (let page = 0; page <= numberOfPages - 1; page++) {\n          if (!field.areas.find((area) => area.attachment_uuid === attachment.uuid && area.page === page)) {\n            field.areas.push({ ...JSON.parse(areaString), attachment_uuid: attachment.uuid, page })\n          }\n        }\n      })\n\n      this.$emit('scroll-to', this.field.areas[this.field.areas.length - 1])\n\n      this.save()\n    },\n    formatNumber (number, format) {\n      if (format === 'comma') {\n        return new Intl.NumberFormat('en-US').format(number)\n      } else if (format === 'dot') {\n        return new Intl.NumberFormat('de-DE').format(number)\n      } else if (format === 'space') {\n        return new Intl.NumberFormat('fr-FR').format(number)\n      } else {\n        return number\n      }\n    },\n    formatDate (date, format) {\n      const monthFormats = {\n        M: 'numeric',\n        MM: '2-digit',\n        MMM: 'short',\n        MMMM: 'long'\n      }\n\n      const dayFormats = {\n        D: 'numeric',\n        DD: '2-digit'\n      }\n\n      const yearFormats = {\n        YYYY: 'numeric',\n        YY: '2-digit'\n      }\n\n      const parts = new Intl.DateTimeFormat([], {\n        day: dayFormats[format.match(/D+/)],\n        month: monthFormats[format.match(/M+/)],\n        year: yearFormats[format.match(/Y+/)]\n      }).formatToParts(date)\n\n      return format\n        .replace(/D+/, parts.find((p) => p.type === 'day').value)\n        .replace(/M+/, parts.find((p) => p.type === 'month').value)\n        .replace(/Y+/, parts.find((p) => p.type === 'year').value)\n    }\n  }\n}\n</script>\n","import { render } from \"./field_settings.vue?vue&type=template&id=bfbbc19e\"\nimport script from \"./field_settings.vue?vue&type=script&lang=js\"\nexport * from \"./field_settings.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <div\n    class=\"modal modal-open items-start !animate-none overflow-y-auto\"\n  >\n    <div\n      class=\"absolute top-0 bottom-0 right-0 left-0\"\n      @click.prevent=\"$emit('close')\"\n    />\n    <div class=\"modal-box pt-4 pb-6 px-6 mt-20 max-h-none w-full max-w-xl\">\n      <div class=\"flex justify-between items-center border-b pb-2 mb-2 font-medium\">\n        <span>\n          {{ t('formula') }} - {{ field.name || buildDefaultName(field, template.fields) }}\n        </span>\n        <a\n          href=\"#\"\n          class=\"text-xl\"\n          @click.prevent=\"$emit('close')\"\n        >&times;</a>\n      </div>\n      <div>\n        <div\n          v-if=\"!withFormula\"\n          class=\"bg-base-300 rounded-xl py-2 px-3 text-center\"\n        >\n          <a\n            href=\"https://www.docuseal.com/pricing\"\n            target=\"_blank\"\n            class=\"link\"\n          >{{ t('available_in_pro') }}</a>\n        </div>\n        <div class=\"flex-inline mb-2 gap-2 space-y-1\">\n          <button\n            v-for=\"f in fields\"\n            :key=\"f.uuid\"\n            class=\"mr-1 btn btn-neutral btn-outline border-base-content/20 btn-sm normal-case font-normal bg-white !rounded-xl\"\n            @click.prevent=\"insertTextUnderCursor(`{{${f.name || buildDefaultName(f, template.fields)}}}`)\"\n          >\n            <IconCodePlus\n              width=\"20\"\n              height=\"20\"\n              stroke-width=\"1.5\"\n            />\n            {{ f.name || buildDefaultName(f, template.fields) }}\n          </button>\n        </div>\n        <div>\n          <div class=\"flex\">\n            <textarea\n              ref=\"textarea\"\n              v-model=\"formula\"\n              class=\"base-textarea !rounded-xl !text-base font-mono w-full !outline-0 !ring-0 !px-3\"\n              :readonly=\"!editable\"\n              required=\"true\"\n              @input=\"resizeTextarea\"\n            />\n          </div>\n          <div class=\"mb-3 mt-1\">\n            <div\n              target=\"blank\"\n              class=\"text-sm mb-2 inline space-x-2\"\n            >\n              <button\n                class=\"bg-base-200 px-2 rounded-xl\"\n                @click=\"insertTextUnderCursor(' + ')\"\n              >\n                +\n              </button>\n              <button\n                class=\"bg-base-200 px-2 rounded-xl\"\n                @click=\"insertTextUnderCursor(' - ')\"\n              >\n                -\n              </button>\n              <button\n                class=\"bg-base-200 px-2 rounded-xl\"\n                @click=\"insertTextUnderCursor(' * ')\"\n              >\n                *\n              </button>\n              <button\n                class=\"bg-base-200 px-2 rounded-xl\"\n                @click=\"insertTextUnderCursor(' / ')\"\n              >\n                /\n              </button>\n              <button\n                class=\"bg-base-200 px-2 rounded-xl\"\n                @click=\"insertTextUnderCursor(' % ')\"\n              >\n                %\n              </button>\n              <button\n                class=\"bg-base-200 px-2 rounded-xl\"\n                @click=\"insertTextUnderCursor('^')\"\n              >\n                ^\n              </button>\n              <button\n                class=\"bg-base-200 px-2 rounded-xl\"\n                @click=\"insertTextUnderCursor('round()')\"\n              >\n                round(n, d)\n              </button>\n              <button\n                class=\"bg-base-200 px-2 rounded-xl\"\n                @click=\"insertTextUnderCursor('abs()')\"\n              >\n                abs(n)\n              </button>\n            </div>\n          </div>\n        </div>\n        <button\n          class=\"base-button w-full\"\n          @click.prevent=\"validateSaveAndClose\"\n        >\n          {{ t('save') }}\n        </button>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { IconCodePlus } from '@tabler/icons-vue'\n\nexport default {\n  name: 'FormulaModal',\n  components: {\n    IconCodePlus\n  },\n  inject: ['t', 'save', 'template', 'withFormula'],\n  props: {\n    field: {\n      type: Object,\n      required: true\n    },\n    editable: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    buildDefaultName: {\n      type: Function,\n      required: true\n    }\n  },\n  emits: ['close'],\n  data () {\n    return {\n      formula: ''\n    }\n  },\n  computed: {\n    fields () {\n      return this.template.fields.reduce((acc, f) => {\n        if (f !== this.field && f.submitter_uuid === this.field.submitter_uuid && ['number'].includes(f.type) && !f.preferences?.formula) {\n          acc.push(f)\n        }\n\n        return acc\n      }, [])\n    }\n  },\n  created () {\n    this.field.preferences ||= {}\n  },\n  mounted () {\n    this.formula = this.humanizeFormula(this.field.preferences.formula || '')\n  },\n  methods: {\n    humanizeFormula (text) {\n      return text.replace(/{{(.*?)}}/g, (match, uuid) => {\n        const foundField = this.fields.find((f) => f.uuid === uuid)\n\n        if (foundField) {\n          return `{{${foundField.name || this.buildDefaultName(foundField, this.template.fields)}}}`\n        } else {\n          return '{{FIELD NOT FOUND}}'\n        }\n      })\n    },\n    normalizeFormula (text) {\n      return text.replace(/{{(.*?)}}/g, (match, name) => {\n        const foundField = this.fields.find((f) => {\n          return (f.name || this.buildDefaultName(f, this.template.fields)).trim() === name.trim()\n        })\n\n        if (foundField) {\n          return `{{${foundField.uuid}}}`\n        } else {\n          return '{{FIELD NOT FOUND}}'\n        }\n      })\n    },\n    validateSaveAndClose () {\n      if (!this.withFormula) {\n        return alert(this.t('available_only_in_pro'))\n      }\n\n      const normalizedFormula = this.normalizeFormula(this.formula)\n\n      if (normalizedFormula.includes('FIELD NOT FOUND')) {\n        alert(this.t('some_fields_are_missing_in_the_formula'))\n      } else {\n        this.field.preferences.formula = normalizedFormula\n\n        if (this.field.type !== 'payment') {\n          this.field.readonly = !!normalizedFormula\n        }\n\n        this.save()\n\n        this.$emit('close')\n      }\n    },\n    insertTextUnderCursor (textToInsert) {\n      const textarea = this.$refs.textarea\n\n      const selectionEnd = textarea.selectionEnd\n      const cursorPos = selectionEnd\n\n      const newText = textarea.value.substring(0, cursorPos) + textToInsert + textarea.value.substring(cursorPos)\n\n      this.formula = newText\n\n      textarea.setSelectionRange(cursorPos + textToInsert.length, cursorPos + textToInsert.length)\n\n      textarea.focus()\n    },\n    resizeTextarea () {\n      const textarea = this.$refs.textarea\n\n      textarea.style.height = 'auto'\n      textarea.style.height = textarea.scrollHeight + 'px'\n    }\n  }\n}\n</script>\n","import { render } from \"./formula_modal.vue?vue&type=template&id=e1e98226\"\nimport script from \"./formula_modal.vue?vue&type=script&lang=js\"\nexport * from \"./formula_modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <div\n    class=\"modal modal-open items-start !animate-none overflow-y-auto\"\n  >\n    <div\n      class=\"absolute top-0 bottom-0 right-0 left-0\"\n      @click.prevent=\"$emit('close')\"\n    />\n    <div class=\"modal-box pt-4 pb-6 px-6 mt-20 max-h-none w-full max-w-xl\">\n      <div class=\"flex justify-between items-center border-b pb-2 mb-2 font-medium\">\n        <span>\n          {{ t('condition') }} - {{ item.name || buildDefaultName(item, template.fields) }}\n        </span>\n        <a\n          href=\"#\"\n          class=\"text-xl\"\n          @click.prevent=\"$emit('close')\"\n        >&times;</a>\n      </div>\n      <div>\n        <div\n          v-if=\"!withConditions\"\n          class=\"bg-base-300 rounded-xl py-2 px-3 text-center\"\n        >\n          <a\n            href=\"https://www.docuseal.com/pricing\"\n            target=\"_blank\"\n            class=\"link\"\n          >{{ t('available_in_pro') }}</a>\n        </div>\n        <form @submit.prevent=\"validateSaveAndClose\">\n          <div class=\"my-4\">\n            <div\n              v-for=\"(condition, cindex) in conditions\"\n              :key=\"cindex\"\n              class=\"space-y-4 relative\"\n            >\n              <div\n                v-if=\"cindex > 0\"\n                class=\"divider -mb-2 mx-1\"\n              >\n                <button\n                  class=\"btn btn-xs btn-primary w-24\"\n                  @click.prevent=\"condition.operation === 'or' ? delete condition.operation : condition.operation = 'or'\"\n                >\n                  {{ condition.operation === 'or' ? t('or') : t('and') }}\n                </button>\n              </div>\n              <div\n                v-if=\"conditions.length > 1\"\n                class=\"flex justify-between mx-1\"\n              >\n                <span class=\"text-sm\">\n                  {{ t('condition') }} {{ cindex + 1 }}\n                </span>\n                <a\n                  href=\"#\"\n                  class=\"link text-sm\"\n                  @click.prevent=\"conditions.splice(cindex, 1)\"\n                > {{ t('remove') }}</a>\n              </div>\n              <select\n                class=\"select select-bordered select-sm w-full bg-white h-11 pl-4 text-base font-normal\"\n                :class=\"{ 'text-gray-300': !condition.field_uuid }\"\n                required\n                @change=\"[\n                  condition.field_uuid = $event.target.value,\n                  delete condition.value,\n                  (conditionActions(condition).includes(condition.action) ? '' : condition.action = conditionActions(condition)[0])\n                ]\"\n              >\n                <option\n                  value=\"\"\n                  disabled\n                  :selected=\"!condition.field_uuid\"\n                >\n                  {{ t('select_field_') }}\n                </option>\n                <option\n                  v-for=\"f in fields\"\n                  :key=\"f.uuid\"\n                  :value=\"f.uuid\"\n                  class=\"text-base-content\"\n                  :selected=\"condition.field_uuid === f.uuid\"\n                >\n                  {{ f.name || buildDefaultName(f, template.fields) }}\n                </option>\n              </select>\n              <select\n                v-model=\"condition.action\"\n                class=\"select select-bordered select-sm w-full h-11 pl-4 text-base font-normal\"\n                :class=\"{ 'bg-white': condition.field_uuid, 'bg-base-300': !condition.field_uuid }\"\n                :required=\"condition.field_uuid\"\n              >\n                <option\n                  v-for=\"action in conditionActions(condition)\"\n                  :key=\"action\"\n                  :value=\"action\"\n                >\n                  {{ t(action) }}\n                </option>\n              </select>\n              <select\n                v-if=\"['radio', 'select', 'multiple'].includes(conditionField(condition)?.type) && conditionField(condition)?.options\"\n                class=\"select select-bordered select-sm w-full bg-white h-11 pl-4 text-base font-normal\"\n                :class=\"{ 'text-gray-300': !condition.value }\"\n                required\n                @change=\"condition.value = $event.target.value\"\n              >\n                <option\n                  value=\"\"\n                  disabled\n                  selected\n                >\n                  {{ t('select_value_') }}\n                </option>\n                <option\n                  v-for=\"(option, index) in conditionField(condition).options\"\n                  :key=\"option.uuid\"\n                  :value=\"option.uuid\"\n                  :selected=\"condition.value === option.uuid\"\n                  class=\"text-base-content\"\n                >\n                  {{ option.value || `${t('option')} ${index + 1}` }}\n                </option>\n              </select>\n            </div>\n          </div>\n          <a\n            href=\"#\"\n            class=\"inline float-right link text-right mb-3 px-2\"\n            @click.prevent=\"conditions.push({})\"\n          > + {{ t('add_condition') }}</a>\n          <button\n            class=\"base-button w-full mt-2\"\n          >\n            {{ t('save') }}\n          </button>\n        </form>\n        <div\n          v-if=\"item.conditions?.[0]?.field_uuid\"\n          class=\"text-center w-full mt-4\"\n        >\n          <button\n            class=\"link\"\n            @click=\"[conditions = [], delete item.conditions, validateSaveAndClose()]\"\n          >\n            {{ t('remove_condition') }}\n          </button>\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nexport default {\n  name: 'ConditionModal',\n  inject: ['t', 'save', 'template', 'withConditions'],\n  props: {\n    item: {\n      type: Object,\n      required: true\n    },\n    buildDefaultName: {\n      type: Function,\n      required: true\n    }\n  },\n  emits: ['close'],\n  data () {\n    return {\n      conditions: this.item.conditions?.[0] ? JSON.parse(JSON.stringify(this.item.conditions)) : [{}]\n    }\n  },\n  computed: {\n    fields () {\n      if (this.item.submitter_uuid) {\n        return this.template.fields.reduce((acc, f) => {\n          if (f !== this.item && f.submitter_uuid === this.item.submitter_uuid) {\n            acc.push(f)\n          }\n\n          return acc\n        }, [])\n      } else {\n        return this.template.fields\n      }\n    }\n  },\n  created () {\n    this.item.conditions ||= []\n  },\n  methods: {\n    conditionField (condition) {\n      return this.fields.find((f) => f.uuid === condition.field_uuid)\n    },\n    conditionActions (condition) {\n      return this.fieldActions(this.conditionField(condition))\n    },\n    fieldActions (field) {\n      const actions = []\n\n      if (!field) {\n        return actions\n      }\n\n      if (field.type === 'checkbox') {\n        actions.push('checked', 'unchecked')\n      } else if (['radio', 'select'].includes(field.type)) {\n        actions.push('equal', 'not_equal')\n      } else if (['multiple'].includes(field.type)) {\n        actions.push('contains', 'does_not_contain')\n      } else {\n        actions.push('not_empty', 'empty')\n      }\n\n      return actions\n    },\n    validateSaveAndClose () {\n      if (!this.withConditions) {\n        return alert(this.t('available_only_in_pro'))\n      }\n\n      if (this.conditions.find((f) => f.field_uuid)) {\n        this.item.conditions = this.conditions\n      } else {\n        delete this.item.conditions\n      }\n\n      this.save()\n      this.$emit('close')\n    }\n  }\n}\n</script>\n","import { render } from \"./conditions_modal.vue?vue&type=template&id=06509e0c\"\nimport script from \"./conditions_modal.vue?vue&type=script&lang=js\"\nexport * from \"./conditions_modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <div\n    class=\"modal modal-open items-start !animate-none overflow-y-auto\"\n  >\n    <div\n      class=\"absolute top-0 bottom-0 right-0 left-0\"\n      @click.prevent=\"$emit('close')\"\n    />\n    <div class=\"modal-box pt-4 pb-6 px-6 mt-20 max-h-none w-full max-w-xl\">\n      <div class=\"flex justify-between items-center border-b pb-2 mb-2 font-medium\">\n        <span>\n          {{ field.name || buildDefaultName(field, template.fields) }}\n        </span>\n        <a\n          href=\"#\"\n          class=\"text-xl\"\n          @click.prevent=\"$emit('close')\"\n        >&times;</a>\n      </div>\n      <div>\n        <form @submit.prevent=\"saveAndClose\">\n          <div class=\"space-y-1 mb-1\">\n            <div>\n              <label\n                dir=\"auto\"\n                class=\"label text-sm\"\n                for=\"description_field\"\n              >\n                {{ t('description') }}\n              </label>\n              <textarea\n                id=\"description_field\"\n                ref=\"textarea\"\n                v-model=\"description\"\n                dir=\"auto\"\n                class=\"base-textarea !text-base w-full\"\n                :readonly=\"!editable\"\n                @input=\"resizeTextarea\"\n              />\n            </div>\n            <div>\n              <label\n                dir=\"auto\"\n                class=\"label text-sm\"\n                for=\"title_field\"\n              >\n                {{ t('display_title') }} ({{ t('optional') }})\n              </label>\n              <input\n                id=\"title_field\"\n                v-model=\"title\"\n                dir=\"auto\"\n                :readonly=\"!editable\"\n                class=\"base-input !text-base w-full\"\n              >\n            </div>\n          </div>\n          <button\n            class=\"base-button w-full mt-4\"\n          >\n            {{ t('save') }}\n          </button>\n        </form>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nexport default {\n  name: 'DescriptionModal',\n  inject: ['t', 'save', 'template'],\n  props: {\n    field: {\n      type: Object,\n      required: true\n    },\n    editable: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    buildDefaultName: {\n      type: Function,\n      required: true\n    }\n  },\n  emits: ['close'],\n  data () {\n    return {\n      description: this.field.description,\n      title: this.field.title\n    }\n  },\n  mounted () {\n    this.resizeTextarea()\n  },\n  methods: {\n    saveAndClose () {\n      this.field.description = this.description\n      this.field.title = this.title\n\n      this.save()\n      this.$emit('close')\n    },\n    resizeTextarea () {\n      const textarea = this.$refs.textarea\n\n      textarea.style.height = 'auto'\n      textarea.style.height = textarea.scrollHeight + 'px'\n    }\n  }\n}\n</script>\n","import { render } from \"./description_modal.vue?vue&type=template&id=0a8bf786\"\nimport script from \"./description_modal.vue?vue&type=script&lang=js\"\nexport * from \"./description_modal.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./field.vue?vue&type=template&id=7363be5a\"\nimport script from \"./field.vue?vue&type=script&lang=js\"\nexport * from \"./field.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <div\n    v-if=\"mobileView\"\n    @mouseenter=\"renderDropdown = true\"\n    @touchstart=\"renderDropdown = true\"\n  >\n    <div class=\"flex space-x-2 items-end\">\n      <div class=\"group/contenteditable-container bg-base-100 rounded-md p-2 border border-base-300 w-full flex justify-between items-end\">\n        <div class=\"flex items-center space-x-2\">\n          <span\n            class=\"w-3 h-3 flex-shrink-0 rounded-full\"\n            :class=\"colors[submitters.indexOf(selectedSubmitter)]\"\n          />\n          <Contenteditable\n            v-model=\"selectedSubmitter.name\"\n            class=\"cursor-text\"\n            :icon-inline=\"true\"\n            :editable=\"editable\"\n            :select-on-edit-click=\"true\"\n            :icon-width=\"18\"\n            @update:model-value=\"$emit('name-change', selectedSubmitter)\"\n          />\n        </div>\n      </div>\n      <div class=\"dropdown dropdown-top dropdown-end\">\n        <label\n          tabindex=\"0\"\n          class=\"bg-base-100 cursor-pointer rounded-md p-2 border border-base-300 w-full flex justify-center\"\n        >\n          <IconChevronUp\n            width=\"24\"\n            height=\"24\"\n          />\n        </label>\n        <ul\n          v-if=\"editable && renderDropdown\"\n          tabindex=\"0\"\n          class=\"rounded-md min-w-max mb-2\"\n          :class=\"menuClasses\"\n          :style=\"menuStyle\"\n          @click=\"closeDropdown\"\n        >\n          <li\n            v-for=\"(submitter, index) in submitters\"\n            :key=\"submitter.uuid\"\n          >\n            <a\n              href=\"#\"\n              class=\"flex px-2 group justify-between items-center rounded-lg\"\n              :class=\"{ 'active': submitter === selectedSubmitter }\"\n              @click.prevent=\"selectSubmitter(submitter)\"\n            >\n              <span class=\"py-1 flex items-center\">\n                <span\n                  class=\"rounded-full w-3 h-3 ml-1 mr-3\"\n                  :class=\"colors[index]\"\n                />\n                <span>\n                  {{ submitter.name }}\n                </span>\n              </span>\n              <button\n                v-if=\"submitters.length > 1 && editable\"\n                class=\"px-2\"\n                @click.prevent.stop=\"remove(submitter)\"\n              >\n                <IconTrashX :width=\"18\" />\n              </button>\n            </a>\n          </li>\n          <li v-if=\"submitters.length < names.length && editable\">\n            <a\n              href=\"#\"\n              class=\"flex px-2\"\n              @click.prevent=\"addSubmitter\"\n            >\n              <IconUserPlus\n                :width=\"20\"\n                :stroke-width=\"1.6\"\n              />\n              <span class=\"py-1\">\n                {{ t('add') }} {{ names[lastPartyIndex] }}\n              </span>\n            </a>\n          </li>\n        </ul>\n      </div>\n    </div>\n  </div>\n  <div\n    v-else\n    class=\"dropdown\"\n    @mouseenter=\"renderDropdown = true\"\n    @touchstart=\"renderDropdown = true\"\n  >\n    <label\n      v-if=\"compact\"\n      tabindex=\"0\"\n      :title=\"selectedSubmitter?.name\"\n      class=\"cursor-pointer text-base-100 flex h-full items-center justify-center\"\n    >\n      <button\n        class=\"mx-1 w-3 h-3 rounded-full\"\n        :class=\"colors[submitters.indexOf(selectedSubmitter)]\"\n      />\n    </label>\n    <label\n      v-else\n      ref=\"label\"\n      tabindex=\"0\"\n      class=\"group cursor-pointer group/contenteditable-container rounded-md p-2 border border-base-300 hover:border-content w-full flex justify-between\"\n    >\n      <div class=\"flex items-center space-x-2\">\n        <span\n          class=\"w-3 h-3 rounded-full\"\n          :class=\"colors[submitters.indexOf(selectedSubmitter)]\"\n        />\n        <Contenteditable\n          v-model=\"selectedSubmitter.name\"\n          class=\"cursor-text\"\n          :icon-inline=\"true\"\n          :editable=\"editable\"\n          :select-on-edit-click=\"true\"\n          :icon-width=\"18\"\n          @update:model-value=\"$emit('name-change', selectedSubmitter)\"\n        />\n      </div>\n      <span class=\"flex items-center transition-all duration-75 group-hover:border border-base-content/20 border-dashed w-6 h-6 flex justify-center items-center rounded\">\n        <component\n          :is=\"editable ? 'IconPlus' : 'IconChevronDown'\"\n          width=\"18\"\n          height=\"18\"\n        />\n      </span>\n    </label>\n    <ul\n      v-if=\"(editable || !compact) && renderDropdown\"\n      tabindex=\"0\"\n      :class=\"menuClasses\"\n      :style=\"menuStyle\"\n      @click=\"closeDropdown\"\n    >\n      <li\n        v-for=\"(submitter, index) in submitters\"\n        :key=\"submitter.uuid\"\n      >\n        <a\n          href=\"#\"\n          class=\"flex px-2 group justify-between items-center rounded-lg\"\n          :class=\"{ 'active': submitter === selectedSubmitter, 'py-0.5': submitters.length > 8 }\"\n          @click.prevent=\"selectSubmitter(submitter)\"\n        >\n          <span class=\"py-1 flex items-center\">\n            <span\n              class=\"rounded-full w-3 h-3 ml-1 mr-3\"\n              :class=\"colors[index]\"\n            />\n            <span>\n              {{ submitter.name }}\n            </span>\n          </span>\n          <div\n            v-if=\"!compact && submitters.length > 1 && editable\"\n            class=\"flex\"\n          >\n            <div class=\"flex-col pr-1 hidden group-hover:flex -mt-1 h-0\">\n              <button\n                :title=\"t('up')\"\n                class=\"relative w-2\"\n                style=\"font-size: 10px; margin-bottom: -4px\"\n                @click.prevent.stop=\"[move(submitter, -1), $refs.label.focus()] \"\n              >\n                ▲\n              </button>\n              <button\n                :title=\"t('down')\"\n                class=\"relative w-2\"\n                style=\"font-size: 10px; margin-top: -4px\"\n                @click.prevent.stop=\"[move(submitter, 1), $refs.label.focus()] \"\n              >\n                ▼\n              </button>\n            </div>\n            <button\n              v-if=\"!compact && submitters.length > 1 && editable\"\n              class=\"hidden group-hover:block px-2\"\n              @click.prevent.stop=\"remove(submitter)\"\n            >\n              <IconTrashX :width=\"18\" />\n            </button>\n          </div>\n        </a>\n      </li>\n      <li v-if=\"submitters.length < names.length && editable && allowAddNew\">\n        <a\n          href=\"#\"\n          class=\"flex px-2\"\n          @click.prevent=\"addSubmitter\"\n        >\n          <IconUserPlus\n            :width=\"20\"\n            :stroke-width=\"1.6\"\n          />\n          <span class=\"py-1\">\n            {{ t('add') }} {{ names[lastPartyIndex] }}\n          </span>\n        </a>\n      </li>\n    </ul>\n  </div>\n</template>\n\n<script>\nimport { IconUserPlus, IconTrashX, IconPlus, IconChevronUp, IconChevronDown } from '@tabler/icons-vue'\nimport Contenteditable from './contenteditable'\nimport { v4 } from 'uuid'\n\nexport default {\n  name: 'FieldSubmitter',\n  components: {\n    IconUserPlus,\n    IconChevronDown,\n    Contenteditable,\n    IconPlus,\n    IconTrashX,\n    IconChevronUp\n  },\n  inject: ['t', 'save'],\n  props: {\n    submitters: {\n      type: Array,\n      required: true\n    },\n    editable: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    compact: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    mobileView: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    allowAddNew: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    modelValue: {\n      type: String,\n      required: true\n    },\n    menuStyle: {\n      type: Object,\n      required: false,\n      default: () => ({ backgroundColor: 'white' })\n    },\n    menuClasses: {\n      type: String,\n      required: false,\n      default: 'dropdown-content menu p-2 shadow rounded-box w-full z-10 bg-white!'\n    }\n  },\n  emits: ['update:model-value', 'remove', 'new-submitter', 'name-change'],\n  data () {\n    return {\n      renderDropdown: false\n    }\n  },\n  computed: {\n    colors () {\n      return [\n        'bg-red-500',\n        'bg-sky-500',\n        'bg-emerald-500',\n        'bg-yellow-300',\n        'bg-purple-600',\n        'bg-pink-500',\n        'bg-cyan-500',\n        'bg-orange-500',\n        'bg-lime-500',\n        'bg-indigo-500',\n        'bg-red-500',\n        'bg-sky-500',\n        'bg-emerald-500',\n        'bg-yellow-300',\n        'bg-purple-600',\n        'bg-pink-500',\n        'bg-cyan-500',\n        'bg-orange-500',\n        'bg-lime-500',\n        'bg-indigo-500'\n      ]\n    },\n    names () {\n      return [\n        this.t('first_party'),\n        this.t('second_party'),\n        this.t('third_party'),\n        this.t('fourth_party'),\n        this.t('fifth_party'),\n        this.t('sixth_party'),\n        this.t('seventh_party'),\n        this.t('eighth_party'),\n        this.t('ninth_party'),\n        this.t('tenth_party'),\n        this.t('eleventh_party'),\n        this.t('twelfth_party'),\n        this.t('thirteenth_party'),\n        this.t('fourteenth_party'),\n        this.t('fifteenth_party'),\n        this.t('sixteenth_party'),\n        this.t('seventeenth_party'),\n        this.t('eighteenth_party'),\n        this.t('nineteenth_party'),\n        this.t('twentieth_party')\n      ]\n    },\n    lastPartyIndex () {\n      const index = Math.max(...this.submitters.map((s) => this.names.indexOf(s.name)))\n\n      if (index !== -1) {\n        return index + 1\n      } else {\n        return this.submitters.length\n      }\n    },\n    selectedSubmitter () {\n      return this.submitters.find((e) => e.uuid === this.modelValue)\n    }\n  },\n  methods: {\n    selectSubmitter (submitter) {\n      this.$emit('update:model-value', submitter.uuid)\n    },\n    remove (submitter) {\n      if (window.confirm(this.t('are_you_sure_'))) {\n        this.$emit('remove', submitter)\n      }\n    },\n    move (submitter, direction) {\n      const currentIndex = this.submitters.indexOf(submitter)\n\n      this.submitters.splice(currentIndex, 1)\n\n      if (currentIndex + direction > this.submitters.length) {\n        this.submitters.unshift(submitter)\n      } else if (currentIndex + direction < 0) {\n        this.submitters.push(submitter)\n      } else {\n        this.submitters.splice(currentIndex + direction, 0, submitter)\n      }\n\n      this.selectSubmitter(submitter)\n\n      this.save()\n    },\n    addSubmitter () {\n      const newSubmitter = {\n        name: this.names[this.lastPartyIndex],\n        uuid: v4()\n      }\n\n      this.submitters.push(newSubmitter)\n\n      this.$emit('update:model-value', newSubmitter.uuid)\n      this.$emit('new-submitter', newSubmitter)\n    },\n    closeDropdown () {\n      document.activeElement.blur()\n    }\n  }\n}\n</script>\n","import { render } from \"./field_submitter.vue?vue&type=template&id=60c1031e\"\nimport script from \"./field_submitter.vue?vue&type=script&lang=js\"\nexport * from \"./field_submitter.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <svg\n    xmlns=\"http://www.w3.org/2000/svg\"\n    width=\"18\"\n    height=\"18\"\n    viewBox=\"0 0 24 24\"\n    stroke-width=\"1.5\"\n    stroke=\"currentColor\"\n    fill=\"none\"\n    stroke-linecap=\"round\"\n    stroke-linejoin=\"round\"\n  >\n    <path\n      stroke=\"none\"\n      d=\"M0 0h24v24H0z\"\n      fill=\"none\"\n    />\n    <path d=\"M9 5m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n    <path d=\"M9 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n    <path d=\"M9 19m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n    <path d=\"M15 5m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n    <path d=\"M15 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n    <path d=\"M15 19m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n  </svg>\n</template>\n\n<script>\nexport default {\n  name: 'DragIcon'\n}\n</script>\n","import { render } from \"./icon_drag.vue?vue&type=template&id=48fe12a0\"\nimport script from \"./icon_drag.vue?vue&type=script&lang=js\"\nexport * from \"./icon_drag.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./fields.vue?vue&type=template&id=5224a670\"\nimport script from \"./fields.vue?vue&type=script&lang=js\"\nexport * from \"./fields.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <div class=\"absolute text-center w-full bottom-0 pr-3 mb-4\">\n    <span class=\"w-full bg-base-200 px-4 py-2 rounded-md inline-flex space-x-2 mx-auto items-center justify-between mb-2 z-20\">\n      <div class=\"flex items-center space-x-2\">\n        <component\n          :is=\"fieldIcons[drawField.type]\"\n          :width=\"20\"\n          :height=\"20\"\n          class=\"inline\"\n          :stroke-width=\"1.6\"\n        />\n        <span>{{ t('draw_field').replace('{field}', fieldNames[drawField.type]) }}</span>\n      </div>\n      <a\n        href=\"#\"\n        class=\"link block text-center\"\n        @click.prevent=\"$emit('cancel')\"\n      >\n        {{ t('cancel') }}\n      </a>\n    </span>\n    <FieldSubmitter\n      :model-value=\"selectedSubmitter.uuid\"\n      :submitters=\"submitters\"\n      :editable=\"editable\"\n      :mobile-view=\"true\"\n      :menu-style=\"{ backgroundColor: ['', null, 'transparent'].includes(backgroundColor) ? 'white' : backgroundColor }\"\n      @new-submitter=\"save\"\n      @remove=\"removeSubmitter\"\n      @name-change=\"save\"\n      @update:model-value=\"$emit('change-submitter', submitters.find((s) => s.uuid === $event))\"\n    />\n  </div>\n</template>\n\n<script>\nimport Field from './field'\nimport FieldType from './field_type'\nimport FieldSubmitter from './field_submitter'\n\nexport default {\n  name: 'MobileDrawField',\n  components: {\n    Field,\n    FieldSubmitter\n  },\n  inject: ['save', 't', 'backgroundColor'],\n  props: {\n    drawField: {\n      type: Object,\n      required: true\n    },\n    editable: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    submitters: {\n      type: Array,\n      required: true\n    },\n    fields: {\n      type: Array,\n      required: true\n    },\n    selectedSubmitter: {\n      type: Object,\n      required: true\n    }\n  },\n  emits: ['change-submitter', 'cancel'],\n  computed: {\n    fieldNames: FieldType.computed.fieldNames,\n    fieldIcons: FieldType.computed.fieldIcons\n  },\n  methods: {\n    removeSubmitter (submitter) {\n      [...this.fields].forEach((field) => {\n        if (field.submitter_uuid === submitter.uuid) {\n          this.removeField(field)\n        }\n      })\n\n      this.submitters.splice(this.submitters.indexOf(submitter), 1)\n\n      if (this.selectedSubmitter === submitter) {\n        this.$emit('change-submitter', this.submitters[0])\n      }\n\n      this.save()\n    },\n    removeField (field) {\n      this.fields.splice(this.fields.indexOf(field), 1)\n\n      this.save()\n    }\n  }\n}\n</script>\n","import { render } from \"./mobile_draw_field.vue?vue&type=template&id=3286b800\"\nimport script from \"./mobile_draw_field.vue?vue&type=script&lang=js\"\nexport * from \"./mobile_draw_field.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <div\n    class=\"relative cursor-crosshair select-none\"\n    :style=\"drawField ? 'touch-action: none' : ''\"\n  >\n    <img\n      ref=\"image\"\n      loading=\"lazy\"\n      :src=\"image.url\"\n      :width=\"width\"\n      :height=\"height\"\n      class=\"border rounded mb-4\"\n      @load=\"onImageLoad\"\n    >\n    <div\n      class=\"top-0 bottom-0 left-0 right-0 absolute\"\n      @pointerdown=\"onStartDraw\"\n    >\n      <FieldArea\n        v-for=\"(item, i) in areas\"\n        :key=\"i\"\n        :ref=\"setAreaRefs\"\n        :area=\"item.area\"\n        :input-mode=\"inputMode\"\n        :field=\"item.field\"\n        :editable=\"editable\"\n        :with-field-placeholder=\"withFieldPlaceholder\"\n        :default-field=\"defaultFields.find((f) => f.name === item.field.name)\"\n        :default-submitters=\"defaultSubmitters\"\n        @start-resize=\"resizeDirection = $event\"\n        @stop-resize=\"resizeDirection = null\"\n        @remove=\"$emit('remove-area', item.area)\"\n        @scroll-to=\"$emit('scroll-to', $event)\"\n      />\n      <FieldArea\n        v-if=\"newArea\"\n        :is-draw=\"true\"\n        :field=\"{ submitter_uuid: selectedSubmitter.uuid, type: drawField?.type || defaultFieldType }\"\n        :area=\"newArea\"\n      />\n    </div>\n    <div\n      v-show=\"resizeDirection || isDrag || showMask || (drawField && isMobile) || fieldsDragFieldRef.value\"\n      id=\"mask\"\n      ref=\"mask\"\n      class=\"top-0 bottom-0 left-0 right-0 absolute\"\n      :class=\"{ 'z-10': !isMobile, 'cursor-grab': isDrag, 'cursor-nwse-resize': drawField, [resizeDirectionClasses[resizeDirection]]: !!resizeDirectionClasses }\"\n      @pointermove=\"onPointermove\"\n      @pointerdown=\"onStartDraw\"\n      @dragover.prevent\n      @drop=\"onDrop\"\n      @pointerup=\"onPointerup\"\n    />\n  </div>\n</template>\n\n<script>\nimport FieldArea from './area'\n\nexport default {\n  name: 'TemplatePage',\n  components: {\n    FieldArea\n  },\n  inject: ['fieldTypes', 'defaultDrawFieldType', 'fieldsDragFieldRef'],\n  props: {\n    image: {\n      type: Object,\n      required: true\n    },\n    areas: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    inputMode: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    defaultFields: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    withFieldPlaceholder: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    drawFieldType: {\n      type: String,\n      required: false,\n      default: ''\n    },\n    allowDraw: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    selectedSubmitter: {\n      type: Object,\n      required: true\n    },\n    defaultSubmitters: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    drawField: {\n      type: Object,\n      required: false,\n      default: null\n    },\n    editable: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    isDrag: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    number: {\n      type: Number,\n      required: true\n    }\n  },\n  emits: ['draw', 'drop-field', 'remove-area', 'scroll-to'],\n  data () {\n    return {\n      areaRefs: [],\n      showMask: false,\n      resizeDirection: null,\n      newArea: null\n    }\n  },\n  computed: {\n    defaultFieldType () {\n      if (this.drawFieldType) {\n        return this.drawFieldType\n      } else if (this.defaultDrawFieldType && this.defaultDrawFieldType !== 'text') {\n        return this.defaultDrawFieldType\n      } else if (this.fieldTypes.length !== 0 && !this.fieldTypes.includes('text')) {\n        return this.fieldTypes[0]\n      } else {\n        return 'text'\n      }\n    },\n    isMobile () {\n      return /android|iphone|ipad/i.test(navigator.userAgent)\n    },\n    resizeDirectionClasses () {\n      return {\n        nwse: 'cursor-nwse-resize',\n        ew: 'cursor-ew-resize'\n      }\n    },\n    width () {\n      return this.image.metadata.width\n    },\n    height () {\n      return this.image.metadata.height\n    }\n  },\n  beforeUpdate () {\n    this.areaRefs = []\n  },\n  methods: {\n    onImageLoad (e) {\n      e.target.setAttribute('width', e.target.naturalWidth)\n      e.target.setAttribute('height', e.target.naturalHeight)\n    },\n    setAreaRefs (el) {\n      if (el) {\n        this.areaRefs.push(el)\n      }\n    },\n    onDrop (e) {\n      this.$emit('drop-field', {\n        x: e.offsetX,\n        y: e.offsetY,\n        maskW: this.$refs.mask.clientWidth,\n        maskH: this.$refs.mask.clientHeight,\n        page: this.number\n      })\n    },\n    onStartDraw (e) {\n      if (!this.allowDraw) {\n        return\n      }\n\n      if (this.isMobile && !this.drawField) {\n        return\n      }\n\n      if (!this.editable) {\n        return\n      }\n\n      this.showMask = true\n\n      this.$nextTick(() => {\n        this.newArea = {\n          initialX: e.offsetX / this.$refs.mask.clientWidth,\n          initialY: e.offsetY / this.$refs.mask.clientHeight,\n          x: e.offsetX / this.$refs.mask.clientWidth,\n          y: e.offsetY / this.$refs.mask.clientHeight,\n          w: 0,\n          h: 0\n        }\n      })\n    },\n    onPointermove (e) {\n      if (this.newArea) {\n        const dx = e.offsetX / this.$refs.mask.clientWidth - this.newArea.initialX\n        const dy = e.offsetY / this.$refs.mask.clientHeight - this.newArea.initialY\n\n        if (dx > 0) {\n          this.newArea.x = this.newArea.initialX\n        } else {\n          this.newArea.x = e.offsetX / this.$refs.mask.clientWidth\n        }\n\n        if (dy > 0) {\n          this.newArea.y = this.newArea.initialY\n        } else {\n          this.newArea.y = e.offsetY / this.$refs.mask.clientHeight\n        }\n\n        if ((this.drawField?.type || this.drawFieldType) === 'cells') {\n          this.newArea.cell_w = this.newArea.h * (this.$refs.mask.clientHeight / this.$refs.mask.clientWidth)\n        }\n\n        this.newArea.w = Math.abs(dx)\n        this.newArea.h = Math.abs(dy)\n      }\n    },\n    onPointerup (e) {\n      if (this.newArea) {\n        const area = {\n          x: this.newArea.x,\n          y: this.newArea.y,\n          w: this.newArea.w,\n          h: this.newArea.h,\n          page: this.number\n        }\n\n        if ('cell_w' in this.newArea) {\n          area.cell_w = this.newArea.cell_w\n        }\n\n        this.$emit('draw', area)\n      }\n\n      this.showMask = false\n      this.newArea = null\n    }\n  }\n}\n</script>\n","<template>\n  <div\n    class=\"absolute overflow-visible group\"\n    :style=\"positionStyle\"\n    @pointerdown.stop\n    @mousedown=\"startMouseMove\"\n    @touchstart=\"startTouchDrag\"\n  >\n    <div\n      v-if=\"isSelected || isDraw\"\n      class=\"top-0 bottom-0 right-0 left-0 absolute border border-1.5 pointer-events-none\"\n      :class=\"field.type === 'heading' ? '' : borderColors[submitterIndex]\"\n    />\n    <div\n      v-if=\"field.type === 'cells' && (isSelected || isDraw)\"\n      class=\"top-0 bottom-0 right-0 left-0 absolute\"\n    >\n      <div\n        v-for=\"(cellW, index) in cells\"\n        :key=\"index\"\n        class=\"absolute top-0 bottom-0 border-r\"\n        :class=\"field.type === 'heading' ? '' : borderColors[submitterIndex]\"\n        :style=\"{ left: (cellW / area.w * 100) + '%' }\"\n      >\n        <span\n          v-if=\"index === 0 && editable\"\n          class=\"h-2.5 w-2.5 rounded-full -bottom-1 border-gray-400 bg-white shadow-md border absolute cursor-ew-resize z-10\"\n          style=\"left: -4px\"\n          @mousedown.stop=\"startResizeCell\"\n        />\n      </div>\n    </div>\n    <div\n      v-if=\"field?.type && (isSelected || isNameFocus)\"\n      class=\"absolute bg-white rounded-t border overflow-visible whitespace-nowrap flex z-10\"\n      style=\"top: -25px; height: 25px\"\n      @mousedown.stop\n      @pointerdown.stop\n    >\n      <FieldSubmitter\n        v-if=\"field.type != 'heading'\"\n        v-model=\"field.submitter_uuid\"\n        class=\"border-r\"\n        :compact=\"true\"\n        :editable=\"editable && (!defaultField || defaultField.role !== submitter?.name)\"\n        :allow-add-new=\"!defaultSubmitters.length\"\n        :menu-classes=\"'dropdown-content bg-white menu menu-xs p-2 shadow rounded-box w-52 rounded-t-none -left-[1px] mt-[1px]'\"\n        :submitters=\"template.submitters\"\n        @update:model-value=\"save\"\n        @click=\"selectedAreaRef.value = area\"\n      />\n      <FieldType\n        v-model=\"field.type\"\n        :button-width=\"27\"\n        :editable=\"editable && !defaultField\"\n        :button-classes=\"'px-1'\"\n        :menu-classes=\"'bg-white rounded-t-none'\"\n        @update:model-value=\"[maybeUpdateOptions(), save()]\"\n        @click=\"selectedAreaRef.value = area\"\n      />\n      <span\n        v-if=\"field.type !== 'checkbox' || field.name\"\n        ref=\"name\"\n        :contenteditable=\"editable && !defaultField && field.type !== 'heading'\"\n        dir=\"auto\"\n        class=\"pr-1 cursor-text outline-none block\"\n        style=\"min-width: 2px\"\n        @paste.prevent=\"onPaste\"\n        @keydown.enter.prevent=\"onNameEnter\"\n        @focus=\"onNameFocus\"\n        @blur=\"onNameBlur\"\n      >{{ optionIndexText }} {{ (defaultField ? (field.title || field.name) : field.name) || defaultName }}</span>\n      <div\n        v-if=\"isSettingsFocus || (isValueInput && field.type !== 'heading') || (isNameFocus && !['checkbox', 'phone'].includes(field.type))\"\n        class=\"flex items-center ml-1.5\"\n      >\n        <input\n          v-if=\"!isValueInput\"\n          :id=\"`required-checkbox-${field.uuid}`\"\n          v-model=\"field.required\"\n          type=\"checkbox\"\n          class=\"checkbox checkbox-xs no-animation rounded\"\n          @mousedown.prevent\n        >\n        <label\n          v-if=\"!isValueInput\"\n          :for=\"`required-checkbox-${field.uuid}`\"\n          class=\"label text-xs\"\n          @click.prevent=\"field.required = !field.required\"\n          @mousedown.prevent\n        >{{ t('required') }}</label>\n        <input\n          v-if=\"isValueInput\"\n          :id=\"`readonly-checkbox-${field.uuid}`\"\n          type=\"checkbox\"\n          class=\"checkbox checkbox-xs no-animation rounded\"\n          :checked=\"!(field.readonly ?? true)\"\n          @change=\"field.readonly = !(field.readonly ?? true)\"\n          @mousedown.prevent\n        >\n        <label\n          v-if=\"isValueInput\"\n          :for=\"`readonly-checkbox-${field.uuid}`\"\n          class=\"label text-xs\"\n          @click.prevent=\"field.readonly = !(field.readonly ?? true)\"\n          @mousedown.prevent\n        >{{ t('editable') }}</label>\n        <span\n          v-if=\"field.type !== 'payment' && !isValueInput\"\n          class=\"dropdown dropdown-end\"\n          @mouseenter=\"renderDropdown = true\"\n          @touchstart=\"renderDropdown = true\"\n        >\n          <label\n            ref=\"settingsButton\"\n            tabindex=\"0\"\n            :title=\"t('settings')\"\n            class=\"cursor-pointer flex items-center\"\n            style=\"height: 25px\"\n            @focus=\"isSettingsFocus = true\"\n            @blur=\"maybeBlurSettings\"\n          >\n            <IconDotsVertical class=\"w-5 h-5\" />\n          </label>\n          <ul\n            v-if=\"renderDropdown\"\n            ref=\"settingsDropdown\"\n            tabindex=\"0\"\n            class=\"dropdown-content menu menu-xs px-2 pb-2 pt-1 shadow rounded-box w-52 z-10 rounded-t-none\"\n            :style=\"{ backgroundColor: 'white' }\"\n            @dragstart.prevent.stop\n            @click=\"closeDropdown\"\n            @focusout=\"maybeBlurSettings\"\n          >\n            <FieldSettings\n              :field=\"field\"\n              :default-field=\"defaultField\"\n              :editable=\"editable\"\n              :background-color=\"'white'\"\n              :with-required=\"false\"\n              :with-areas=\"false\"\n              @click-formula=\"isShowFormulaModal = true\"\n              @click-description=\"isShowDescriptionModal = true\"\n              @click-condition=\"isShowConditionsModal = true\"\n              @scroll-to=\"[selectedAreaRef.value = $event, $emit('scroll-to', $event)]\"\n            />\n          </ul>\n        </span>\n      </div>\n      <button\n        v-else-if=\"editable\"\n        class=\"pr-1\"\n        :title=\"t('remove')\"\n        @click.prevent=\"$emit('remove')\"\n      >\n        <IconX width=\"14\" />\n      </button>\n    </div>\n    <div\n      ref=\"touchValueTarget\"\n      class=\"flex items-center h-full w-full\"\n      dir=\"auto\"\n      :class=\"[isValueInput ? 'bg-opacity-50' : 'bg-opacity-80', field.type === 'heading' ? 'bg-gray-50' : bgColors[submitterIndex], isDefaultValuePresent || isValueInput || (withFieldPlaceholder && field.areas) ? (alignClasses[field.preferences?.align] || '') : 'justify-center']\"\n      @click=\"focusValueInput\"\n    >\n      <span\n        v-if=\"field\"\n        class=\"flex justify-center items-center space-x-1\"\n        :class=\"{ 'w-full': ['cells', 'checkbox'].includes(field.type), 'h-full': !isValueInput }\"\n      >\n        <div\n          v-if=\"isDefaultValuePresent || isValueInput || (withFieldPlaceholder && field.areas && field.type !== 'checkbox')\"\n          :class=\"{ 'w-full h-full': ['cells', 'checkbox'].includes(field.type), 'text-[1.6vw] lg:text-base': !textOverflowChars, 'text-[1.0vw] lg:text-xs': textOverflowChars }\"\n        >\n          <div\n            ref=\"textContainer\"\n            class=\"flex items-center px-0.5\"\n            :style=\"{ color: field.preferences?.color }\"\n            :class=\"{ 'w-full h-full': ['cells', 'checkbox'].includes(field.type) }\"\n          >\n            <IconCheck\n              v-if=\"field.type == 'checkbox'\"\n              class=\"aspect-square mx-auto\"\n              :class=\"{ '!w-auto !h-full': area.w > area.h, '!w-full !h-auto': area.w <= area.h }\"\n            />\n            <span\n              v-else-if=\"field.type === 'number' && !isValueInput && (field.default_value || field.default_value == 0)\"\n              class=\"whitespace-pre-wrap\"\n            >{{ formatNumber(field.default_value, field.preferences?.format) }}</span>\n            <span\n              v-else-if=\"field.default_value === '{{date}}'\"\n            >\n              {{ t('signing_date') }}\n            </span>\n            <div\n              v-else-if=\"field.type === 'cells' && field.default_value\"\n              class=\"w-full flex items-center\"\n            >\n              <div\n                v-for=\"(char, index) in field.default_value\"\n                :key=\"index\"\n                class=\"text-center flex-none\"\n                :style=\"{ width: (area.cell_w / area.w * 100) + '%' }\"\n              >\n                {{ char }}\n              </div>\n            </div>\n            <span\n              v-else\n              ref=\"defaultValue\"\n              :contenteditable=\"isValueInput\"\n              class=\"whitespace-pre-wrap outline-none empty:before:content-[attr(placeholder)] before:text-gray-400\"\n              :class=\"{ 'cursor-text': isValueInput }\"\n              :placeholder=\"withFieldPlaceholder && !isValueInput ? field.name || defaultName : t('type_value')\"\n              @blur=\"onDefaultValueBlur\"\n              @paste.prevent=\"onPaste\"\n              @keydown.enter=\"onDefaultValueEnter\"\n            >{{ field.default_value }}</span>\n          </div>\n        </div>\n        <component\n          :is=\"fieldIcons[field.type]\"\n          v-else\n          width=\"100%\"\n          height=\"100%\"\n          class=\"max-h-10 opacity-50\"\n        />\n      </span>\n    </div>\n    <div\n      v-if=\"!isValueInput\"\n      ref=\"touchTarget\"\n      class=\"absolute top-0 bottom-0 right-0 left-0\"\n      :class=\"isDragged ? 'cursor-grab' : 'cursor-pointer'\"\n      @dblclick=\"maybeToggleDefaultValue\"\n      @click=\"maybeToggleCheckboxValue\"\n    />\n    <span\n      v-if=\"field?.type && editable\"\n      class=\"h-4 w-4 lg:h-2.5 lg:w-2.5 -right-1 rounded-full -bottom-1 border-gray-400 bg-white shadow-md border absolute cursor-nwse-resize\"\n      @mousedown.stop=\"startResize\"\n      @touchstart=\"startTouchResize\"\n    />\n    <Teleport\n      v-if=\"isShowFormulaModal\"\n      :to=\"modalContainerEl\"\n    >\n      <FormulaModal\n        :field=\"field\"\n        :editable=\"editable && !defaultField\"\n        :build-default-name=\"buildDefaultName\"\n        @close=\"isShowFormulaModal = false\"\n      />\n    </Teleport>\n    <Teleport\n      v-if=\"isShowConditionsModal\"\n      :to=\"modalContainerEl\"\n    >\n      <ConditionsModal\n        :item=\"field\"\n        :build-default-name=\"buildDefaultName\"\n        @close=\"isShowConditionsModal = false\"\n      />\n    </Teleport>\n    <Teleport\n      v-if=\"isShowDescriptionModal\"\n      :to=\"modalContainerEl\"\n    >\n      <DescriptionModal\n        :field=\"field\"\n        :editable=\"editable && !defaultField\"\n        :build-default-name=\"buildDefaultName\"\n        @close=\"isShowDescriptionModal = false\"\n      />\n    </Teleport>\n  </div>\n</template>\n\n<script>\nimport FieldSubmitter from './field_submitter'\nimport FieldType from './field_type'\nimport Field from './field'\nimport FieldSettings from './field_settings'\nimport FormulaModal from './formula_modal'\nimport ConditionsModal from './conditions_modal'\nimport DescriptionModal from './description_modal'\nimport { IconX, IconCheck, IconDotsVertical } from '@tabler/icons-vue'\nimport { v4 } from 'uuid'\n\nexport default {\n  name: 'FieldArea',\n  components: {\n    FieldType,\n    IconCheck,\n    FieldSettings,\n    FormulaModal,\n    IconDotsVertical,\n    DescriptionModal,\n    ConditionsModal,\n    FieldSubmitter,\n    IconX\n  },\n  inject: ['template', 'selectedAreaRef', 'save', 't'],\n  props: {\n    area: {\n      type: Object,\n      required: true\n    },\n    inputMode: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    isDraw: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    defaultField: {\n      type: Object,\n      required: false,\n      default: null\n    },\n    withFieldPlaceholder: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    defaultSubmitters: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    editable: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    field: {\n      type: Object,\n      required: false,\n      default: null\n    }\n  },\n  emits: ['start-resize', 'stop-resize', 'start-drag', 'stop-drag', 'remove', 'scroll-to'],\n  data () {\n    return {\n      isShowFormulaModal: false,\n      isShowConditionsModal: false,\n      isContenteditable: false,\n      isSettingsFocus: false,\n      isShowDescriptionModal: false,\n      isResize: false,\n      isDragged: false,\n      isMoved: false,\n      renderDropdown: false,\n      isNameFocus: false,\n      textOverflowChars: 0,\n      dragFrom: { x: 0, y: 0 }\n    }\n  },\n  computed: {\n    fieldNames: FieldType.computed.fieldNames,\n    fieldLabels: FieldType.computed.fieldLabels,\n    fieldIcons: FieldType.computed.fieldIcons,\n    isDefaultValuePresent () {\n      if (this.field?.type === 'radio' && this.field?.areas?.length > 1) {\n        return false\n      } else {\n        return this.field?.default_value || this.field?.default_value === 0\n      }\n    },\n    isValueInput () {\n      return (this.field.type === 'heading' && this.isSelected) || this.isContenteditable || (this.inputMode && ['text', 'number', 'date'].includes(this.field.type))\n    },\n    modalContainerEl () {\n      return this.$el.getRootNode().querySelector('#docuseal_modal_container')\n    },\n    defaultName () {\n      return this.buildDefaultName(this.field, this.template.fields)\n    },\n    alignClasses () {\n      return {\n        center: 'justify-center',\n        left: 'justify-start',\n        right: 'justify-end'\n      }\n    },\n    optionIndexText () {\n      if (this.area.option_uuid && this.field.options) {\n        return `${this.field.options.findIndex((o) => o.uuid === this.area.option_uuid) + 1}.`\n      } else {\n        return ''\n      }\n    },\n    cells () {\n      const cells = []\n\n      let currentWidth = 0\n\n      while (currentWidth + (this.area.cell_w + this.area.cell_w / 4) < this.area.w) {\n        currentWidth += this.area.cell_w || 9999999\n\n        cells.push(currentWidth)\n      }\n\n      return cells\n    },\n    submitter () {\n      return this.template.submitters.find((s) => s.uuid === this.field.submitter_uuid)\n    },\n    submitterIndex () {\n      return this.template.submitters.indexOf(this.submitter)\n    },\n    borderColors () {\n      return [\n        'border-red-500/80',\n        'border-sky-500/80',\n        'border-emerald-500/80',\n        'border-yellow-300/80',\n        'border-purple-600/80',\n        'border-pink-500/80',\n        'border-cyan-500/80',\n        'border-orange-500/80',\n        'border-lime-500/80',\n        'border-indigo-500/80',\n        'border-red-500/80',\n        'border-sky-500/80',\n        'border-emerald-500/80',\n        'border-yellow-300/80',\n        'border-purple-600/80',\n        'border-pink-500/80',\n        'border-cyan-500/80',\n        'border-orange-500/80',\n        'border-lime-500/80',\n        'border-indigo-500/80'\n      ]\n    },\n    bgColors () {\n      return [\n        'bg-red-100',\n        'bg-sky-100',\n        'bg-emerald-100',\n        'bg-yellow-100',\n        'bg-purple-100',\n        'bg-pink-100',\n        'bg-cyan-100',\n        'bg-orange-100',\n        'bg-lime-100',\n        'bg-indigo-100',\n        'bg-red-100',\n        'bg-sky-100',\n        'bg-emerald-100',\n        'bg-yellow-100',\n        'bg-purple-100',\n        'bg-pink-100',\n        'bg-cyan-100',\n        'bg-orange-100',\n        'bg-lime-100',\n        'bg-indigo-100'\n      ]\n    },\n    isSelected () {\n      return this.selectedAreaRef.value === this.area\n    },\n    positionStyle () {\n      const { x, y, w, h } = this.area\n\n      return {\n        top: y * 100 + '%',\n        left: x * 100 + '%',\n        width: w * 100 + '%',\n        height: h * 100 + '%'\n      }\n    }\n  },\n  watch: {\n    'field.default_value' () {\n      this.$nextTick(() => {\n        if (['date', 'text', 'number'].includes(this.field.type) && this.field.default_value && this.$refs.textContainer && (this.textOverflowChars === 0 || (this.textOverflowChars - 4) > `${this.field.default_value}`.length)) {\n          this.textOverflowChars = this.$el.clientHeight < this.$refs.textContainer.clientHeight ? `${this.field.default_value}`.length : 0\n        }\n      })\n    }\n  },\n  mounted () {\n    this.$nextTick(() => {\n      if (['date', 'text', 'number'].includes(this.field.type) && this.field.default_value && this.$refs.textContainer && (this.textOverflowChars === 0 || (this.textOverflowChars - 4) > `${this.field.default_value}`.length)) {\n        this.textOverflowChars = this.$el.clientHeight < this.$refs.textContainer.clientHeight ? `${this.field.default_value}`.length : 0\n      }\n    })\n  },\n  methods: {\n    buildDefaultName: Field.methods.buildDefaultName,\n    closeDropdown () {\n      document.activeElement.blur()\n    },\n    maybeToggleDefaultValue () {\n      if (['text', 'number'].includes(this.field.type)) {\n        this.isContenteditable = true\n\n        this.$nextTick(() => this.focusValueInput())\n      } else if (this.field.type === 'checkbox') {\n        this.field.readonly = !this.field.readonly\n        this.field.default_value === true ? delete this.field.default_value : this.field.default_value = true\n\n        this.save()\n      } else if (this.field.type === 'date') {\n        this.field.readonly = !this.field.readonly\n        this.field.default_value === '{{date}}' ? delete this.field.default_value : this.field.default_value = '{{date}}'\n\n        this.save()\n      }\n    },\n    maybeToggleCheckboxValue () {\n      if (this.inputMode && this.field.type === 'checkbox') {\n        this.field.readonly = !this.field.readonly\n        this.field.default_value === true ? delete this.field.default_value : this.field.default_value = true\n\n        this.save()\n      }\n    },\n    focusValueInput (e) {\n      if (this.$refs.defaultValue !== document.activeElement) {\n        this.$refs.defaultValue.focus()\n\n        if (this.$refs.defaultValue.innerText.length && this.$refs.defaultValue !== e?.target) {\n          window.getSelection().collapse(\n            this.$refs.defaultValue.firstChild,\n            this.$refs.defaultValue.innerText.length\n          )\n        }\n      }\n    },\n    formatNumber (number, format) {\n      if (format === 'comma') {\n        return new Intl.NumberFormat('en-US').format(number)\n      } else if (format === 'dot') {\n        return new Intl.NumberFormat('de-DE').format(number)\n      } else if (format === 'space') {\n        return new Intl.NumberFormat('fr-FR').format(number)\n      } else {\n        return number\n      }\n    },\n    maybeBlurSettings (e) {\n      if (!e.relatedTarget || !this.$refs.settingsDropdown.contains(e.relatedTarget)) {\n        this.isSettingsFocus = false\n      }\n    },\n    onNameFocus (e) {\n      this.selectedAreaRef.value = this.area\n\n      this.isNameFocus = true\n      this.$refs.name.style.minWidth = this.$refs.name.clientWidth + 'px'\n\n      if (!this.field.name) {\n        setTimeout(() => {\n          this.$refs.name.innerText = ' '\n        }, 1)\n      }\n    },\n    startResizeCell (e) {\n      this.$el.getRootNode().addEventListener('mousemove', this.onResizeCell)\n      this.$el.getRootNode().addEventListener('mouseup', this.stopResizeCell)\n\n      this.$emit('start-resize', 'ew')\n    },\n    stopResizeCell (e) {\n      this.$el.getRootNode().removeEventListener('mousemove', this.onResizeCell)\n      this.$el.getRootNode().removeEventListener('mouseup', this.stopResizeCell)\n\n      this.$emit('stop-resize')\n\n      this.save()\n    },\n    onPaste (e) {\n      const text = (e.clipboardData || window.clipboardData).getData('text/plain')\n\n      const selection = this.$el.getRootNode().getSelection()\n\n      if (selection.rangeCount) {\n        selection.deleteFromDocument()\n        selection.getRangeAt(0).insertNode(document.createTextNode(text))\n        selection.collapseToEnd()\n      }\n    },\n    onResizeCell (e) {\n      if (e.target.id === 'mask') {\n        const positionX = e.offsetX / (e.target.clientWidth - 1)\n\n        if (positionX > this.area.x) {\n          this.area.cell_w = positionX - this.area.x\n        }\n      }\n    },\n    maybeUpdateOptions () {\n      delete this.field.default_value\n\n      if (!['radio', 'multiple', 'select'].includes(this.field.type)) {\n        delete this.field.options\n      }\n\n      if (['heading'].includes(this.field.type)) {\n        this.field.readonly = true\n      }\n\n      if (['select', 'multiple', 'radio'].includes(this.field.type)) {\n        this.field.options ||= [{ value: '', uuid: v4() }]\n      }\n\n      (this.field.areas || []).forEach((area) => {\n        if (this.field.type === 'cells') {\n          area.cell_w = area.w * 2 / Math.floor(area.w / area.h)\n        } else {\n          delete area.cell_w\n        }\n      })\n    },\n    onNameBlur (e) {\n      if (e.relatedTarget === this.$refs.settingsButton) {\n        this.isSettingsFocus = true\n      }\n\n      const text = this.$refs.name.innerText.trim()\n\n      this.isNameFocus = false\n      this.$refs.name.style.minWidth = ''\n\n      if (text) {\n        this.field.name = text\n      } else {\n        this.field.name = ''\n        this.$refs.name.innerText = this.defaultName\n      }\n\n      this.save()\n    },\n    onDefaultValueBlur (e) {\n      const text = this.$refs.defaultValue.innerText.trim()\n\n      this.isContenteditable = false\n\n      if (text) {\n        if (this.field.type === 'number') {\n          const number = parseFloat(text)\n\n          if (number || number === 0) {\n            this.field.default_value = parseFloat(text)\n          }\n        } else {\n          this.field.default_value = text\n        }\n\n        if (![true, false].includes(this.field.readonly)) {\n          this.field.readonly = true\n        }\n\n        this.$refs.defaultValue.innerText = text\n      } else {\n        delete this.field.readonly\n        delete this.field.default_value\n        this.$refs.defaultValue.innerText = ''\n      }\n\n      this.save()\n    },\n    onDefaultValueEnter (e) {\n      if (this.field.type !== 'heading') {\n        e.preventDefault()\n\n        this.$refs.defaultValue.blur()\n      }\n    },\n    onNameEnter (e) {\n      this.$refs.name.blur()\n    },\n    resize (e) {\n      if (e.target.id === 'mask') {\n        this.area.w = e.offsetX / e.target.clientWidth - this.area.x\n        this.area.h = e.offsetY / e.target.clientHeight - this.area.y\n      }\n    },\n    drag (e) {\n      if (e.target.id === 'mask') {\n        this.isDragged = true\n\n        this.area.x = (e.offsetX - this.dragFrom.x) / e.target.clientWidth\n        this.area.y = (e.offsetY - this.dragFrom.y) / e.target.clientHeight\n      }\n    },\n    startTouchDrag (e) {\n      if (e.target !== this.$refs.touchTarget && e.target !== this.$refs.touchValueTarget) {\n        return\n      }\n\n      document.activeElement?.blur()\n\n      e.preventDefault()\n\n      this.isDragged = true\n\n      const rect = e.target.getBoundingClientRect()\n\n      this.selectedAreaRef.value = this.area\n\n      this.dragFrom = { x: rect.left - e.touches[0].clientX, y: rect.top - e.touches[0].clientY }\n\n      this.$el.getRootNode().addEventListener('touchmove', this.touchDrag)\n      this.$el.getRootNode().addEventListener('touchend', this.stopTouchDrag)\n\n      this.$emit('start-drag')\n    },\n    touchDrag (e) {\n      if (!this.editable) {\n        return\n      }\n\n      const page = this.$parent.$refs.mask.previousSibling\n      const rect = page.getBoundingClientRect()\n\n      this.area.x = Math.min(Math.max((this.dragFrom.x + e.touches[0].clientX - rect.left) / rect.width, 0), 1 - this.area.w)\n      this.area.y = Math.min(Math.max((this.dragFrom.y + e.touches[0].clientY - rect.top) / rect.height, 0), 1 - this.area.h)\n    },\n    stopTouchDrag () {\n      this.$el.getRootNode().removeEventListener('touchmove', this.touchDrag)\n      this.$el.getRootNode().removeEventListener('touchend', this.stopTouchDrag)\n\n      if (this.isDragged) {\n        this.save()\n      }\n\n      this.isDragged = false\n\n      this.$emit('stop-drag')\n    },\n    startMouseMove (e) {\n      if (e.target !== this.$refs.touchTarget && e.target !== this.$refs.touchValueTarget) {\n        return\n      }\n\n      if (document.activeElement !== this.$refs.defaultValue) {\n        document.activeElement?.blur()\n      }\n\n      e.preventDefault()\n\n      this.isDragged = true\n\n      const rect = e.target.getBoundingClientRect()\n\n      this.selectedAreaRef.value = this.area\n\n      if (this.field.type === 'heading') {\n        this.$nextTick(() => this.focusValueInput())\n      }\n\n      this.dragFrom = { x: rect.left - e.clientX, y: rect.top - e.clientY }\n\n      this.$el.getRootNode().addEventListener('mousemove', this.mouseMove)\n      this.$el.getRootNode().addEventListener('mouseup', this.stopMouseMove)\n\n      this.$emit('start-drag')\n    },\n    mouseMove (e) {\n      if (!this.editable) {\n        return\n      }\n\n      this.isMoved = true\n\n      const page = this.$parent.$refs.mask.previousSibling\n      const rect = page.getBoundingClientRect()\n\n      this.area.x = Math.min(Math.max((this.dragFrom.x + e.clientX - rect.left) / rect.width, 0), 1 - this.area.w)\n      this.area.y = Math.min(Math.max((this.dragFrom.y + e.clientY - rect.top) / rect.height, 0), 1 - this.area.h)\n    },\n    stopMouseMove (e) {\n      this.$el.getRootNode().removeEventListener('mousemove', this.mouseMove)\n      this.$el.getRootNode().removeEventListener('mouseup', this.stopMouseMove)\n\n      if (this.isMoved) {\n        this.save()\n      }\n\n      this.isDragged = false\n      this.isMoved = false\n\n      this.$emit('stop-drag')\n    },\n    stopDrag () {\n      this.$el.getRootNode().removeEventListener('mousemove', this.drag)\n      this.$el.getRootNode().removeEventListener('mouseup', this.stopDrag)\n\n      if (this.isDragged) {\n        this.save()\n      }\n\n      this.isDragged = false\n\n      this.$emit('stop-drag')\n    },\n    startResize () {\n      this.selectedAreaRef.value = this.area\n\n      this.$el.getRootNode().addEventListener('mousemove', this.resize)\n      this.$el.getRootNode().addEventListener('mouseup', this.stopResize)\n\n      this.$emit('start-resize', 'nwse')\n    },\n    stopResize () {\n      this.$el.getRootNode().removeEventListener('mousemove', this.resize)\n      this.$el.getRootNode().removeEventListener('mouseup', this.stopResize)\n\n      this.$emit('stop-resize')\n\n      this.save()\n    },\n    startTouchResize (e) {\n      this.selectedAreaRef.value = this.area\n\n      this.$refs?.name?.blur()\n\n      e.preventDefault()\n\n      this.$el.getRootNode().addEventListener('touchmove', this.touchResize)\n      this.$el.getRootNode().addEventListener('touchend', this.stopTouchResize)\n\n      this.$emit('start-resize', 'nwse')\n    },\n    touchResize (e) {\n      const page = this.$parent.$refs.mask.previousSibling\n      const rect = page.getBoundingClientRect()\n\n      this.area.w = (e.touches[0].clientX - rect.left) / rect.width - this.area.x\n      this.area.h = (e.touches[0].clientY - rect.top) / rect.height - this.area.y\n    },\n    stopTouchResize () {\n      this.$el.getRootNode().removeEventListener('touchmove', this.touchResize)\n      this.$el.getRootNode().removeEventListener('touchend', this.stopTouchResize)\n\n      this.$emit('stop-resize')\n\n      this.save()\n    }\n  }\n}\n</script>\n","import { render } from \"./area.vue?vue&type=template&id=9aeecf26\"\nimport script from \"./area.vue?vue&type=script&lang=js\"\nexport * from \"./area.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <div>\n    <Page\n      v-for=\"(image, index) in sortedPreviewImages\"\n      :key=\"image.id\"\n      :ref=\"setPageRefs\"\n      :input-mode=\"inputMode\"\n      :number=\"index\"\n      :editable=\"editable\"\n      :areas=\"areasIndex[index]\"\n      :allow-draw=\"allowDraw\"\n      :is-drag=\"isDrag\"\n      :with-field-placeholder=\"withFieldPlaceholder\"\n      :default-fields=\"defaultFields\"\n      :default-submitters=\"defaultSubmitters\"\n      :draw-field=\"drawField\"\n      :draw-field-type=\"drawFieldType\"\n      :selected-submitter=\"selectedSubmitter\"\n      :image=\"image\"\n      @drop-field=\"$emit('drop-field', {...$event, attachment_uuid: document.uuid })\"\n      @remove-area=\"$emit('remove-area', $event)\"\n      @scroll-to=\"scrollToArea\"\n      @draw=\"$emit('draw', {...$event, attachment_uuid: document.uuid })\"\n    />\n  </div>\n</template>\n<script>\nimport Page from './page'\n\nexport default {\n  name: 'TemplateDocument',\n  components: {\n    Page\n  },\n  props: {\n    document: {\n      type: Object,\n      required: true\n    },\n    inputMode: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    areasIndex: {\n      type: Object,\n      required: false,\n      default: () => ({})\n    },\n    defaultFields: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    withFieldPlaceholder: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    drawFieldType: {\n      type: String,\n      required: false,\n      default: ''\n    },\n    defaultSubmitters: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    allowDraw: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    selectedSubmitter: {\n      type: Object,\n      required: true\n    },\n    editable: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    drawField: {\n      type: Object,\n      required: false,\n      default: null\n    },\n    baseUrl: {\n      type: String,\n      required: false,\n      default: ''\n    },\n    isDrag: {\n      type: Boolean,\n      required: false,\n      default: false\n    }\n  },\n  emits: ['draw', 'drop-field', 'remove-area'],\n  data () {\n    return {\n      pageRefs: []\n    }\n  },\n  computed: {\n    basePreviewUrl () {\n      if (this.baseUrl) {\n        return new URL(this.baseUrl).origin\n      } else {\n        return ''\n      }\n    },\n    numberOfPages () {\n      return this.document.metadata?.pdf?.number_of_pages || this.document.preview_images.length\n    },\n    sortedPreviewImages () {\n      const lazyloadMetadata = this.document.preview_images[this.document.preview_images.length - 1].metadata\n\n      return [...Array(this.numberOfPages).keys()].map((i) => {\n        return this.previewImagesIndex[i] || {\n          metadata: lazyloadMetadata,\n          id: Math.random().toString(),\n          url: this.basePreviewUrl + `/preview/${this.document.signed_uuid || this.document.uuid}/${i}.jpg`\n        }\n      })\n    },\n    previewImagesIndex () {\n      return this.document.preview_images.reduce((acc, e) => {\n        acc[parseInt(e.filename)] = e\n\n        return acc\n      }, {})\n    }\n  },\n  beforeUpdate () {\n    this.pageRefs = []\n  },\n  methods: {\n    scrollToArea (area) {\n      this.$nextTick(() => {\n        this.pageRefs[area.page].areaRefs.find((e) => e.area === area).$el.scrollIntoView({ behavior: 'smooth', block: 'center' })\n      })\n    },\n    setPageRefs (el) {\n      if (el) {\n        this.pageRefs.push(el)\n      }\n    }\n  }\n}\n</script>\n","import { render } from \"./page.vue?vue&type=template&id=42e85af7\"\nimport script from \"./page.vue?vue&type=script&lang=js\"\nexport * from \"./page.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./document.vue?vue&type=template&id=37dbc67a\"\nimport script from \"./document.vue?vue&type=script&lang=js\"\nexport * from \"./document.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <svg width=\"100\" height=\"100\" viewBox=\"0 0 100 100\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M23.8661 58.2283C23.8235 57.7987 23.6406 57.4648 23.3175 57.2269C22.9943 56.989 22.5558 56.87 22.0018 56.87C21.6254 56.87 21.3075 56.9233 21.0483 57.0298C20.7891 57.1328 20.5902 57.2766 20.4517 57.4613C20.3168 57.646 20.2493 57.8555 20.2493 58.0898C20.2422 58.2852 20.283 58.4556 20.3718 58.6012C20.4641 58.7468 20.5902 58.8729 20.75 58.9794C20.9098 59.0824 21.0945 59.1729 21.304 59.2511C21.5135 59.3256 21.7372 59.3896 21.9751 59.4428L22.9553 59.6772C23.4311 59.7837 23.8679 59.9258 24.2656 60.1033C24.6634 60.2809 25.0078 60.4993 25.299 60.7585C25.5902 61.0178 25.8157 61.3232 25.9755 61.6747C26.1388 62.0263 26.2223 62.4293 26.2259 62.8839C26.2223 63.5515 26.0518 64.1303 25.7145 64.6204C25.3807 65.1069 24.8977 65.4851 24.2656 65.755C23.6371 66.0213 22.8789 66.1545 21.9911 66.1545C21.1104 66.1545 20.3434 66.0195 19.69 65.7496C19.0401 65.4798 18.5323 65.0803 18.1665 64.5511C17.8043 64.0185 17.6143 63.3597 17.5966 62.5749H19.8285C19.8533 62.9407 19.9581 63.2461 20.1428 63.4911C20.331 63.7326 20.5813 63.9155 20.8938 64.0398C21.2099 64.1605 21.5668 64.2209 21.9645 64.2209C22.3551 64.2209 22.6942 64.1641 22.9819 64.0504C23.2731 63.9368 23.4986 63.7788 23.6584 63.5763C23.8182 63.3739 23.8981 63.1413 23.8981 62.8786C23.8981 62.6335 23.8253 62.4276 23.6797 62.2607C23.5376 62.0937 23.3281 61.9517 23.0511 61.8345C22.7777 61.7173 22.4421 61.6108 22.0444 61.5149L20.8565 61.2166C19.9368 60.9929 19.2106 60.6431 18.6779 60.1673C18.1452 59.6914 17.8807 59.0504 17.8842 58.2443C17.8807 57.5838 18.0565 57.0067 18.4116 56.5131C18.7702 56.0195 19.2621 55.6342 19.8871 55.3572C20.5121 55.0803 21.2223 54.9418 22.0178 54.9418C22.8274 54.9418 23.5341 55.0803 24.1378 55.3572C24.745 55.6342 25.2173 56.0195 25.5547 56.5131C25.892 57.0067 26.0661 57.5785 26.0767 58.2283H23.8661ZM27.7346 66V57.8182H30.0038V66H27.7346ZM28.8746 56.7635C28.5372 56.7635 28.2478 56.6516 28.0063 56.4279C27.7684 56.2006 27.6494 55.929 27.6494 55.6129C27.6494 55.3004 27.7684 55.0323 28.0063 54.8086C28.2478 54.5813 28.5372 54.4677 28.8746 54.4677C29.2119 54.4677 29.4996 54.5813 29.7375 54.8086C29.979 55.0323 30.0997 55.3004 30.0997 55.6129C30.0997 55.929 29.979 56.2006 29.7375 56.4279C29.4996 56.6516 29.2119 56.7635 28.8746 56.7635ZM35.5076 69.2386C34.7725 69.2386 34.1422 69.1374 33.6167 68.935C33.0946 68.7362 32.6792 68.4645 32.3702 68.12C32.0613 67.7756 31.8606 67.3885 31.7683 66.9588L33.867 66.6765C33.9309 66.8398 34.0321 66.9925 34.1706 67.1346C34.3091 67.2766 34.492 67.3903 34.7193 67.4755C34.9501 67.5643 35.2306 67.6087 35.5609 67.6087C36.0545 67.6087 36.4611 67.4879 36.7807 67.2464C37.1039 67.0085 37.2654 66.609 37.2654 66.0479V64.5511H37.1696C37.0701 64.7784 36.921 64.9933 36.7221 65.1957C36.5233 65.3981 36.2676 65.5632 35.9551 65.6911C35.6426 65.8189 35.2697 65.8828 34.8365 65.8828C34.2221 65.8828 33.6628 65.7408 33.1586 65.4567C32.6578 65.169 32.2583 64.7305 31.96 64.141C31.6653 63.5479 31.5179 62.7987 31.5179 61.8931C31.5179 60.9663 31.6689 60.1921 31.9707 59.5707C32.2725 58.9492 32.6738 58.484 33.1745 58.1751C33.6788 57.8661 34.231 57.7116 34.8311 57.7116C35.2892 57.7116 35.6728 57.7898 35.9817 57.946C36.2907 58.0987 36.5392 58.2905 36.7275 58.5213C36.9192 58.7486 37.0666 58.9723 37.1696 59.1925H37.2548V57.8182H39.508V66.0799C39.508 66.7759 39.3375 67.3583 38.9966 67.8271C38.6557 68.2958 38.1834 68.6474 37.5797 68.8817C36.9796 69.1197 36.2889 69.2386 35.5076 69.2386ZM35.5556 64.1783C35.9213 64.1783 36.2303 64.0877 36.4824 63.9066C36.7381 63.7219 36.9334 63.4592 37.0684 63.1183C37.2069 62.7738 37.2761 62.3619 37.2761 61.8825C37.2761 61.4031 37.2086 60.9876 37.0737 60.636C36.9387 60.2809 36.7434 60.0057 36.4877 59.8104C36.2321 59.6151 35.9213 59.5174 35.5556 59.5174C35.1827 59.5174 34.8684 59.6186 34.6127 59.821C34.3571 60.0199 34.1635 60.2969 34.0321 60.652C33.9007 61.0071 33.835 61.4173 33.835 61.8825C33.835 62.3548 33.9007 62.7631 34.0321 63.1076C34.1671 63.4485 34.3606 63.7131 34.6127 63.9013C34.8684 64.0859 35.1827 64.1783 35.5556 64.1783ZM43.5829 61.2699V66H41.3137V57.8182H43.4764V59.2617H43.5723C43.7534 58.7859 44.057 58.4094 44.4831 58.1325C44.9093 57.8519 45.426 57.7116 46.0332 57.7116C46.6014 57.7116 47.0968 57.8359 47.5194 58.0845C47.9419 58.3331 48.2704 58.6882 48.5048 59.1499C48.7392 59.608 48.8564 60.1548 48.8564 60.7905V66H46.5872V61.1953C46.5907 60.6946 46.4629 60.304 46.2037 60.0234C45.9444 59.7393 45.5875 59.5973 45.133 59.5973C44.8276 59.5973 44.5577 59.663 44.3233 59.7944C44.0925 59.9258 43.9114 60.1175 43.78 60.3697C43.6522 60.6183 43.5865 60.9183 43.5829 61.2699ZM52.3813 66L49.2599 55.0909H51.7794L53.5851 62.6708H53.6757L55.6679 55.0909H57.8252L59.8121 62.6868H59.9079L61.7137 55.0909H64.2332L61.1118 66H58.8639L56.7865 58.8675H56.7013L54.6292 66H52.3813ZM65.4251 66V57.8182H67.6942V66H65.4251ZM66.565 56.7635C66.2276 56.7635 65.9382 56.6516 65.6967 56.4279C65.4588 56.2006 65.3398 55.929 65.3398 55.6129C65.3398 55.3004 65.4588 55.0323 65.6967 54.8086C65.9382 54.5813 66.2276 54.4677 66.565 54.4677C66.9023 54.4677 67.19 54.5813 67.4279 54.8086C67.6694 55.0323 67.7901 55.3004 67.7901 55.6129C67.7901 55.929 67.6694 56.2006 67.4279 56.4279C67.19 56.6516 66.9023 56.7635 66.565 56.7635ZM73.8639 57.8182V59.5227H68.9367V57.8182H73.8639ZM70.0553 55.858H72.3245V63.4858C72.3245 63.6953 72.3564 63.8587 72.4204 63.9759C72.4843 64.0895 72.5731 64.1694 72.6867 64.2156C72.8039 64.2617 72.9388 64.2848 73.0915 64.2848C73.1981 64.2848 73.3046 64.2759 73.4111 64.2582C73.5177 64.2369 73.5993 64.2209 73.6562 64.2102L74.0131 65.8988C73.8994 65.9343 73.7396 65.9751 73.5336 66.0213C73.3277 66.071 73.0773 66.1012 72.7826 66.1119C72.2357 66.1332 71.7563 66.0604 71.3444 65.8935C70.936 65.7266 70.6182 65.4673 70.3909 65.1158C70.1636 64.7642 70.0518 64.3203 70.0553 63.7841V55.858ZM77.787 61.2699V66H75.5178V55.0909H77.7231V59.2617H77.819C78.0036 58.7788 78.3019 58.4006 78.7139 58.1271C79.1258 57.8501 79.6425 57.7116 80.2639 57.7116C80.8321 57.7116 81.3275 57.8359 81.7501 58.0845C82.1762 58.3295 82.5065 58.6829 82.7409 59.1445C82.9788 59.6026 83.096 60.1513 83.0924 60.7905V66H80.8232V61.1953C80.8268 60.6911 80.699 60.2987 80.4397 60.0181C80.184 59.7376 79.8254 59.5973 79.3637 59.5973C79.0548 59.5973 78.7813 59.663 78.5434 59.7944C78.309 59.9258 78.1244 60.1175 77.9894 60.3697C77.858 60.6183 77.7906 60.9183 77.787 61.2699Z\" fill=\"#252A4A\"/>\n<g filter=\"url(#filter0_d_2989_1129)\">\n<path d=\"M33 44.9992C43 44.9992 48 24.9992 58 34.9992C68 44.9992 63 44.9992 68 34.9992\" stroke=\"#252A4A\" stroke-width=\"3\" stroke-linecap=\"round\" stroke-linejoin=\"round\" shape-rendering=\"crispEdges\"/>\n</g>\n<g filter=\"url(#filter1_d_2989_1129)\">\n<path d=\"M63 28C64.6569 28 66 26.6569 66 25C66 23.3431 64.6569 22 63 22C61.3431 22 60 23.3431 60 25C60 26.6569 61.3431 28 63 28Z\" fill=\"#252A4A\"/>\n</g>\n<defs>\n<filter id=\"filter0_d_2989_1129\" x=\"29.5\" y=\"30.6973\" width=\"42\" height=\"19.8027\" filterUnits=\"userSpaceOnUse\" color-interpolation-filters=\"sRGB\">\n<feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\"/>\n<feColorMatrix in=\"SourceAlpha\" type=\"matrix\" values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\" result=\"hardAlpha\"/>\n<feOffset dy=\"2\"/>\n<feGaussianBlur stdDeviation=\"1\"/>\n<feComposite in2=\"hardAlpha\" operator=\"out\"/>\n<feColorMatrix type=\"matrix\" values=\"0 0 0 0 0.145098 0 0 0 0 0.164706 0 0 0 0 0.290196 0 0 0 0.25 0\"/>\n<feBlend mode=\"normal\" in2=\"BackgroundImageFix\" result=\"effect1_dropShadow_2989_1129\"/>\n<feBlend mode=\"normal\" in=\"SourceGraphic\" in2=\"effect1_dropShadow_2989_1129\" result=\"shape\"/>\n</filter>\n<filter id=\"filter1_d_2989_1129\" x=\"56\" y=\"22\" width=\"14\" height=\"14\" filterUnits=\"userSpaceOnUse\" color-interpolation-filters=\"sRGB\">\n<feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\"/>\n<feColorMatrix in=\"SourceAlpha\" type=\"matrix\" values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\" result=\"hardAlpha\"/>\n<feOffset dy=\"4\"/>\n<feGaussianBlur stdDeviation=\"2\"/>\n<feComposite in2=\"hardAlpha\" operator=\"out\"/>\n<feColorMatrix type=\"matrix\" values=\"0 0 0 0 0.145098 0 0 0 0 0.164706 0 0 0 0 0.290196 0 0 0 0.25 0\"/>\n<feBlend mode=\"normal\" in2=\"BackgroundImageFix\" result=\"effect1_dropShadow_2989_1129\"/>\n<feBlend mode=\"normal\" in=\"SourceGraphic\" in2=\"effect1_dropShadow_2989_1129\" result=\"shape\"/>\n</filter>\n</defs>\n</svg>\n\n</template>\n\n<script>\nexport default {\n  name: 'ProjectLogo'\n}\n</script>\n","import { render } from \"./logo.vue?vue&type=template&id=25859cfd\"\nimport script from \"./logo.vue?vue&type=script&lang=js\"\nexport * from \"./logo.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <div>\n    <div class=\"relative\">\n      <img\n        :src=\"previewImage.url\"\n        :width=\"previewImage.metadata.width\"\n        :height=\"previewImage.metadata.height\"\n        class=\"rounded border\"\n        loading=\"lazy\"\n      >\n      <div\n        class=\"group flex justify-end cursor-pointer top-0 bottom-0 left-0 right-0 absolute p-1 hover:bg-black/10 transition-colors\"\n        @click=\"$emit('scroll-to', item)\"\n      >\n        <div\n          v-if=\"editable\"\n          class=\"flex justify-between w-full\"\n        >\n          <div\n            style=\"width: 26px\"\n            class=\"flex flex-col justify-between group-hover:opacity-100\"\n            :class=\"{'opacity-0': !item.conditions?.length }\"\n          >\n            <div>\n              <button\n                class=\"btn border-base-200 bg-white text-base-content btn-xs rounded hover:text-base-100 hover:bg-base-content hover:border-base-content w-full transition-colors p-0\"\n                @click.stop=\"isShowConditionsModal = true\"\n              >\n                <IconRouteAltLeft\n                  :width=\"14\"\n                  :stroke-width=\"1.6\"\n                />\n              </button>\n            </div>\n          </div>\n          <div class=\"\">\n            <ReplaceButton\n              v-if=\"withReplaceButton\"\n              :template-id=\"template.id\"\n              :accept-file-types=\"acceptFileTypes\"\n              class=\"opacity-0 group-hover:opacity-100\"\n              @click.stop\n              @success=\"$emit('replace', { replaceSchemaItem: item, ...$event })\"\n            />\n          </div>\n          <div\n            class=\"flex flex-col justify-between opacity-0 group-hover:opacity-100\"\n          >\n            <div>\n              <button\n                class=\"btn border-base-200 bg-white text-base-content btn-xs rounded hover:text-base-100 hover:bg-base-content hover:border-base-content w-full transition-colors\"\n                style=\"width: 24px; height: 24px\"\n                @click.stop=\"$emit('remove', item)\"\n              >\n                &times;\n              </button>\n            </div>\n            <div\n              v-if=\"withArrows\"\n              class=\"flex flex-col space-y-1\"\n            >\n              <button\n                class=\"btn border-base-200 bg-white text-base-content btn-xs rounded hover:text-base-100 hover:bg-base-content hover:border-base-content w-full transition-colors\"\n                style=\"width: 24px; height: 24px\"\n                @click.stop=\"$emit('up', item)\"\n              >\n                &uarr;\n              </button>\n              <button\n                class=\"btn border-base-200 bg-white text-base-content btn-xs rounded hover:text-base-100 hover:bg-base-content hover:border-base-content w-full transition-colors\"\n                style=\"width: 24px; height: 24px\"\n                @click.stop=\"$emit('down', item)\"\n              >\n                &darr;\n              </button>\n            </div>\n          </div>\n        </div>\n      </div>\n    </div>\n    <div class=\"flex pb-2 pt-1.5\">\n      <Contenteditable\n        :model-value=\"item.name\"\n        :icon-width=\"16\"\n        :editable=\"editable\"\n        style=\"max-width: 95%\"\n        class=\"mx-auto\"\n        @update:model-value=\"onUpdateName\"\n      />\n    </div>\n  </div>\n  <Teleport\n    v-if=\"isShowConditionsModal\"\n    :to=\"modalContainerEl\"\n  >\n    <ConditionsModal\n      :item=\"item\"\n      :build-default-name=\"buildDefaultName\"\n      @close=\"isShowConditionsModal = false\"\n    />\n  </Teleport>\n</template>\n\n<script>\nimport Contenteditable from './contenteditable'\nimport Upload from './upload'\nimport { IconRouteAltLeft } from '@tabler/icons-vue'\nimport ConditionsModal from './conditions_modal'\nimport ReplaceButton from './replace'\nimport Field from './field'\nimport FieldType from './field_type'\n\nexport default {\n  name: 'DocumentPreview',\n  components: {\n    Contenteditable,\n    IconRouteAltLeft,\n    ConditionsModal,\n    ReplaceButton\n  },\n  inject: ['t'],\n  props: {\n    item: {\n      type: Object,\n      required: true\n    },\n    template: {\n      type: Object,\n      required: true\n    },\n    document: {\n      type: Object,\n      required: true\n    },\n    editable: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    acceptFileTypes: {\n      type: String,\n      required: false,\n      default: 'image/*, application/pdf'\n    },\n    withReplaceButton: {\n      type: Boolean,\n      required: true,\n      default: true\n    },\n    withArrows: {\n      type: Boolean,\n      required: false,\n      default: true\n    }\n  },\n  emits: ['scroll-to', 'change', 'remove', 'up', 'down', 'replace'],\n  data () {\n    return {\n      isShowConditionsModal: false\n    }\n  },\n  computed: {\n    fieldNames: FieldType.computed.fieldNames,\n    fieldLabels: FieldType.computed.fieldLabels,\n    previewImage () {\n      return [...this.document.preview_images].sort((a, b) => parseInt(a.filename) - parseInt(b.filename))[0]\n    },\n    modalContainerEl () {\n      return this.$el.getRootNode().querySelector('#docuseal_modal_container')\n    }\n  },\n  methods: {\n    upload: Upload.methods.upload,\n    buildDefaultName: Field.methods.buildDefaultName,\n    onUpdateName (value) {\n      this.item.name = value\n\n      this.$emit('change')\n    }\n  }\n}\n</script>\n","<template>\n  <label\n    :for=\"inputId\"\n    class=\"btn btn-neutral btn-xs text-white transition-none\"\n    :class=\"{ 'opacity-100': isLoading || isProcessing }\"\n  >\n    {{ message }}\n    <form\n      ref=\"form\"\n      class=\"hidden\"\n    >\n      <input\n        :id=\"inputId\"\n        ref=\"input\"\n        name=\"files[]\"\n        type=\"file\"\n        :accept=\"acceptFileTypes\"\n        @change=\"upload\"\n      >\n    </form>\n  </label>\n</template>\n\n<script>\nimport Upload from './upload'\n\nexport default {\n  name: 'ReplaceDocument',\n  inject: ['baseFetch', 't'],\n  props: {\n    templateId: {\n      type: [Number, String],\n      required: true\n    },\n    acceptFileTypes: {\n      type: String,\n      required: false,\n      default: 'image/*, application/pdf'\n    }\n  },\n  emits: ['success'],\n  data () {\n    return {\n      isLoading: false,\n      isProcessing: false\n    }\n  },\n  computed: {\n    inputId () {\n      return 'el' + Math.random().toString(32).split('.')[1]\n    },\n    message () {\n      if (this.isLoading) {\n        return this.t('uploading_')\n      } else if (this.isProcessing) {\n        return this.t('processing_')\n      } else {\n        return this.t('replace')\n      }\n    }\n  },\n  methods: {\n    upload: Upload.methods.upload\n  }\n}\n</script>\n","import { render } from \"./replace.vue?vue&type=template&id=358afada\"\nimport script from \"./replace.vue?vue&type=script&lang=js\"\nexport * from \"./replace.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./preview.vue?vue&type=template&id=0360aabc\"\nimport script from \"./preview.vue?vue&type=script&lang=js\"\nexport * from \"./preview.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <div class=\"flex space-x-2\">\n    <Contenteditable\n      class=\"w-full block mr-6\"\n      :model-value=\"item.name\"\n      :icon-width=\"16\"\n      @update:model-value=\"onUpdateName\"\n    />\n    <ReplaceButton\n      v-if=\"withReplaceButton\"\n      :template-id=\"template.id\"\n      :accept-file-types=\"acceptFileTypes\"\n      @click.stop\n      @success=\"$emit('replace', { replaceSchemaItem: item, ...$event })\"\n    />\n    <button\n      v-if=\"withArrows\"\n      class=\"btn border-base-200 bg-white text-base-content btn-xs rounded hover:text-base-100 hover:bg-base-content hover:border-base-content w-full transition-colors\"\n      style=\"width: 24px; height: 24px\"\n      @click.stop=\"$emit('up', item)\"\n    >\n      &uarr;\n    </button>\n    <button\n      v-if=\"withArrows\"\n      class=\"btn border-base-200 bg-white text-base-content btn-xs rounded hover:text-base-100 hover:bg-base-content hover:border-base-content w-full transition-colors\"\n      style=\"width: 24px; height: 24px\"\n      @click.stop=\"$emit('down', item)\"\n    >\n      &darr;\n    </button>\n    <button\n      class=\"btn border-base-200 bg-white text-base-content btn-xs rounded hover:text-base-100 hover:bg-base-content hover:border-base-content w-full transition-colors\"\n      style=\"width: 24px; height: 24px\"\n      @click.stop=\"$emit('remove', item)\"\n    >\n      &times;\n    </button>\n  </div>\n</template>\n\n<script>\nimport Contenteditable from './contenteditable'\nimport Upload from './upload'\nimport ReplaceButton from './replace'\n\nexport default {\n  name: 'DocumentControls',\n  components: {\n    Contenteditable,\n    ReplaceButton\n  },\n  props: {\n    item: {\n      type: Object,\n      required: true\n    },\n    template: {\n      type: Object,\n      required: true\n    },\n    document: {\n      type: Object,\n      required: true\n    },\n    acceptFileTypes: {\n      type: String,\n      required: false,\n      default: 'image/*, application/pdf'\n    },\n    withReplaceButton: {\n      type: Boolean,\n      required: true,\n      default: true\n    },\n    withArrows: {\n      type: Boolean,\n      required: false,\n      default: true\n    }\n  },\n  emits: ['change', 'remove', 'up', 'down', 'replace'],\n  methods: {\n    upload: Upload.methods.upload,\n    onUpdateName (value) {\n      this.item.name = value\n\n      this.$emit('change')\n    }\n  }\n}\n</script>\n","import { render } from \"./controls.vue?vue&type=template&id=ae7276d6\"\nimport script from \"./controls.vue?vue&type=script&lang=js\"\nexport * from \"./controls.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <span\n    class=\"dropdown dropdown-top dropdown-end absolute bottom-4 right-4 z-10\"\n  >\n    <label\n      class=\"btn btn-neutral text-white btn-circle btn-lg group\"\n      tabindex=\"0\"\n    >\n      <IconPlus\n        class=\"group-focus:hidden\"\n        width=\"28\"\n        height=\"28\"\n      />\n      <IconX\n        class=\"hidden group-focus:inline p-3\"\n        width=\"64\"\n        height=\"50\"\n        @click=\"closeDropdown\"\n      />\n    </label>\n    <ul\n      tabindex=\"0\"\n      class=\"dropdown-content menu menu-xs p-2 shadow rounded-box w-52 z-10 mb-3 mt-1.5 bg-base-100\"\n      @click=\"closeDropdown\"\n    >\n      <template v-if=\"submitterDefaultFields.length\">\n        <template\n          v-for=\"field in submitterDefaultFields\"\n          :key=\"field.name\"\n        >\n          <li>\n            <a\n              href=\"#\"\n              class=\"text-sm py-1 px-2\"\n              @click.prevent=\"$emit('select', { name: field.name || '', type: field.type || 'text' })\"\n            >\n              <component\n                :is=\"fieldIcons[field.type || 'text']\"\n                :stroke-width=\"1.6\"\n                :width=\"20\"\n              />\n              {{ field.title || field.name }}\n              <span\n                v-if=\"defaultRequiredFields.includes(field)\"\n                :data-tip=\"t('required')\"\n                class=\"text-red-400 text-2xl tooltip tooltip-left h-6\"\n              >\n                *\n              </span>\n            </a>\n          </li>\n        </template>\n      </template>\n      <template v-else>\n        <template\n          v-for=\"(icon, type) in fieldIconsSorted\"\n          :key=\"type\"\n        >\n          <li v-if=\"(fieldTypes.length === 0 || fieldTypes.includes(type)) && (withPhone || type != 'phone') && (withPayment || type != 'payment') && (withVerification || type != 'verification')\">\n            <a\n              href=\"#\"\n              class=\"text-sm py-1 px-2\"\n              :class=\"{ 'active': type === modelValue }\"\n              @click.prevent=\"$emit('select', { type })\"\n            >\n              <component\n                :is=\"icon\"\n                :stroke-width=\"1.6\"\n                :width=\"20\"\n              />\n              {{ fieldNames[type] }}\n            </a>\n          </li>\n        </template>\n      </template>\n    </ul>\n  </span>\n</template>\n<script>\nimport { IconPlus, IconX } from '@tabler/icons-vue'\nimport FieldType from './field_type'\n\nexport default {\n  name: 'MobileFields',\n  components: {\n    IconPlus,\n    IconX\n  },\n  inject: ['withPhone', 'withPayment', 'withVerification', 'backgroundColor', 't'],\n  props: {\n    modelValue: {\n      type: String,\n      required: false,\n      default: ''\n    },\n    fields: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    selectedSubmitter: {\n      type: Object,\n      required: true\n    },\n    fieldTypes: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    defaultRequiredFields: {\n      type: Array,\n      required: false,\n      default: () => []\n    },\n    defaultFields: {\n      type: Array,\n      required: false,\n      default: () => []\n    }\n  },\n  emits: ['select'],\n  computed: {\n    ...FieldType.computed,\n    submitterFields () {\n      return this.fields.filter((f) => f.submitter_uuid === this.selectedSubmitter.uuid)\n    },\n    submitterDefaultFields () {\n      return this.defaultFields.filter((f) => {\n        return (!f.role || f.role === this.selectedSubmitter.name)\n      })\n    }\n  },\n  methods: {\n    closeDropdown () {\n      document.activeElement.blur()\n    }\n  }\n}\n</script>\n","import { render } from \"./mobile_fields.vue?vue&type=template&id=228a85c3\"\nimport script from \"./mobile_fields.vue?vue&type=script&lang=js\"\nexport * from \"./mobile_fields.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","const en = {\n  verify_id: 'Verify ID',\n  obtain_qualified_electronic_signature_with_the_trusted_provider_click_to_learn_more: 'Obtain qualified electronic signature (QeS) with the trusted provider. Click to learn more.',\n  editable: 'Editable',\n  recurrent: 'Recurrent',\n  one_off: 'One-off',\n  search_field: 'Search field',\n  field_not_found: 'Field not found',\n  clear: 'Clear',\n  align: 'Align',\n  add_all_required_fields_to_continue: 'Add all required fields to continue',\n  uploaded_pdf_contains_form_fields_keep_or_remove_them: 'Uploaded PDF contains form fields. Keep or remove them?',\n  keep: 'Keep',\n  left: 'Left',\n  heading: 'Heading',\n  validation: 'Validation',\n  add_blank_page: 'Add blank page',\n  right: 'Right',\n  center: 'Center',\n  description: 'Description',\n  display_title: 'Display title',\n  with_logo: 'With logo',\n  unchecked: 'Unchecked',\n  price: 'Price',\n  type_value: 'Type value',\n  equal: 'Equal',\n  not_equal: 'Not equal',\n  contains: 'Contains',\n  does_not_contain: 'Does not contain',\n  not_empty: 'Not empty',\n  empty: 'Empty',\n  select_field_: 'Select field...',\n  select_value_: 'Select value...',\n  remove_condition: 'Remove condition',\n  add_condition: 'Add condition',\n  are_you_sure_: 'Are you sure?',\n  sign_yourself: 'Sign Yourself',\n  set_signing_date: 'Set signing date',\n  signing_date: 'Signing Date',\n  send: 'Send',\n  remove: 'Remove',\n  edit: 'Edit',\n  settings: 'Settings',\n  up: 'Up',\n  down: 'Down',\n  checked: 'Checked',\n  save: 'Save',\n  cancel: 'Cancel',\n  any: 'Any',\n  drawn: 'Drawn',\n  formula: 'Formula',\n  typed: 'Typed',\n  draw_field_on_the_document: 'Draw a field on the document',\n  click_to_upload: 'Click to upload',\n  or_drag_and_drop_files: 'or drag and drop files',\n  uploading: 'Uploading',\n  processing_: 'Processing...',\n  add_pdf_documents_or_images: 'Add PDF documents or images',\n  add_documents_or_images: 'Add documents or images',\n  required: 'Required',\n  default_value: 'Default value',\n  format: 'Format',\n  read_only: 'Read-only',\n  page: 'Page',\n  draw_new_area: 'Draw New Area',\n  copy_to_all_pages: 'Copy to All Pages',\n  add_option: 'Add option',\n  option: 'Option',\n  condition: 'Condition',\n  first_party: 'First Party',\n  second_party: 'Second Party',\n  third_party: 'Third Party',\n  fourth_party: 'Fourth Party',\n  fifth_party: 'Fifth Party',\n  sixth_party: 'Sixth Party',\n  seventh_party: 'Seventh Party',\n  eighth_party: 'Eighth Party',\n  ninth_party: 'Ninth Party',\n  tenth_party: 'Tenth Party',\n  eleventh_party: 'Eleventh Party',\n  twelfth_party: 'Twelfth Party',\n  thirteenth_party: 'Thirteenth Party',\n  fourteenth_party: 'Fourteenth Party',\n  fifteenth_party: 'Fifteenth Party',\n  sixteenth_party: 'Sixteenth Party',\n  seventeenth_party: 'Seventeenth Party',\n  eighteenth_party: 'Eighteenth Party',\n  nineteenth_party: 'Nineteenth Party',\n  twentieth_party: 'Twentieth Party',\n  draw: 'Draw',\n  add: 'Add',\n  or_add_field_without_drawing: 'Or add field without drawing',\n  text: 'Text',\n  number: 'Number',\n  signature: 'Signature',\n  initials: 'Initials',\n  date: 'Date',\n  image: 'Image',\n  file: 'File',\n  select: 'Select',\n  checkbox: 'Checkbox',\n  multiple: 'Multiple',\n  radio: 'Radio',\n  cells: 'Cells',\n  stamp: 'Stamp',\n  payment: 'Payment',\n  phone: 'Phone',\n  text_field: 'Text Field',\n  signature_field: 'Signature Field',\n  initials_field: 'Initials Field',\n  date_field: 'Date Field',\n  number_field: 'Number Field',\n  image_field: 'Image Field',\n  file_field: 'File Field',\n  select_field: 'Select Field',\n  checkbox_field: 'Checkbox Field',\n  multiple_field: 'Multiple Select Field',\n  radio_field: 'Radio Group Field',\n  cells_field: 'Cells Field',\n  stamp_field: 'Stamp Field',\n  payment_field: 'Payment Field',\n  phone_field: 'Phone Field',\n  draw_a_text_field_on_the_page_with_a_mouse: 'Draw a text field on the page with a mouse',\n  drag_and_drop_any_other_field_type_on_the_page: 'Drag & drop any other field type on the page',\n  click_on_the_field_type_above_to_start_drawing_it: 'Click on the field type above to start drawing it',\n  please_draw_fields_to_prepare_the_document: 'Please add at least one field before signing',\n  only_pdf_and_images_are_supported: 'Only PDF and images are supported.',\n  unlock_sms_verified_phone_number_field_with_paid_plan_use_text_field_for_phone_numbers_without_verification: 'Unlock SMS-verified phone number field with paid plan. Use text field for phone numbers without verification.',\n  available_only_in_pro: 'Available only in Pro',\n  failed_to_download_files: 'Failed to download files',\n  please_add_fields_for_the_submitter_name_or_remove_the_submitter_name_if_not_needed: 'Please add fields for the {submitter_name}. Or, remove the {submitter_name} if not needed.',\n  draw_field: 'Draw {field} Field',\n  replace: 'Replace',\n  uploading_: 'Uploading...',\n  add_document: 'Add Document',\n  none: 'None',\n  ssn: 'SSN',\n  ein: 'EIN',\n  email: 'Email',\n  url: 'URL',\n  zip: 'ZIP',\n  custom: 'Custom',\n  numbers_only: 'Numbers only',\n  letters_only: 'Letters only',\n  regexp_validation: 'Regexp validation',\n  enter_pdf_password: 'Enter PDF password',\n  wrong_password: 'Wrong password',\n  currency: 'Currency',\n  save_and_preview: 'Save and Preview',\n  preferences: 'Preferences',\n  available_in_pro: 'Available in Pro',\n  some_fields_are_missing_in_the_formula: 'Some fields are missing in the formula.',\n  learn_more: 'Learn more',\n  and: 'and',\n  or: 'or'\n}\n\nconst es = {\n  verify_id: 'Verificar ID',\n  obtain_qualified_electronic_signature_with_the_trusted_provider_click_to_learn_more: 'Obtenga una firma electrónica cualificada (QeS) con el proveedor de confianza. Haga clic para obtener más información.',\n  recurrent: 'Recurrente',\n  one_off: 'Único',\n  editable: 'Editable',\n  search_field: 'Campo de búsqueda',\n  field_not_found: 'Campo no encontrado',\n  clear: 'Borrar',\n  type_value: 'Escriba valor',\n  align: 'Alinear',\n  add_all_required_fields_to_continue: 'Agregar todos los campos requeridos para continuar',\n  uploaded_pdf_contains_form_fields_keep_or_remove_them: 'El PDF cargado tiene campos. ¿Mantenerlos o eliminarlos?',\n  keep: 'Mantener',\n  left: 'Izquierda',\n  heading: 'Encabezado',\n  validation: 'Validación',\n  add_blank_page: 'Agregar página en blanco',\n  right: 'Derecha',\n  center: 'Centro',\n  with_logo: 'Con logotipo',\n  description: 'Descripción',\n  signing_date: 'Fecha de Firma',\n  display_title: 'Título de visualización',\n  unchecked: 'No marcado',\n  price: 'Precio',\n  equal: 'Igual',\n  not_equal: 'No es igual',\n  contains: 'Contiene',\n  does_not_contain: 'No contiene',\n  not_empty: 'No vacío',\n  empty: 'Vacío',\n  select_field_: 'Seleccionar campo...',\n  select_value_: 'Seleccionar valor...',\n  remove_condition: 'Eliminar condición',\n  add_condition: 'Agregar condición',\n  condition: 'Condición',\n  formula: 'Fórmula',\n  edit: 'Editar',\n  settings: 'Configuración',\n  up: 'Arriba',\n  down: 'Abajo',\n  set_signing_date: 'Establecer fecha de firma',\n  are_you_sure_: '¿Estás seguro?',\n  sign_yourself: 'Firma tú mismo',\n  checked: 'Seleccionado',\n  send: 'Enviar',\n  remove: 'Eliminar',\n  save: 'Guardar',\n  cancel: 'Cancelar',\n  or_add_field_without_drawing: 'O añadir campo sin dibujar',\n  draw_field_on_the_document: 'Dibujar un campo en el documento',\n  click_to_upload: 'Haz clic para cargar',\n  or_drag_and_drop_files: 'o arrastra y suelta archivos',\n  uploading: 'Subiendo',\n  processing_: 'Procesando...',\n  add_pdf_documents_or_images: 'Agregar documentos PDF o imágenes',\n  add_documents_or_images: 'Agregar documentos o imágenes',\n  required: 'Requerido',\n  default_value: 'Valor predeterminado',\n  format: 'Formato',\n  read_only: 'Solo lectura',\n  page: 'Página',\n  draw_new_area: 'Dibujar nueva área',\n  copy_to_all_pages: 'Copiar a todas las páginas',\n  add_option: 'Agregar opción',\n  option: 'Opción',\n  first_party: 'Primera Parte',\n  second_party: 'Segunda Parte',\n  third_party: 'Tercera Parte',\n  fourth_party: 'Cuarta Parte',\n  fifth_party: 'Quinta Parte',\n  sixth_party: 'Sexta Parte',\n  seventh_party: 'Séptima Parte',\n  eighth_party: 'Octava Parte',\n  ninth_party: 'Novena Parte',\n  tenth_party: 'Décima Parte',\n  eleventh_party: 'Undécimo Partido',\n  twelfth_party: 'Duodécimo Partido',\n  thirteenth_party: 'Decimotercer Partido',\n  fourteenth_party: 'Catorceavo Partido',\n  fifteenth_party: 'Quinceavo Partido',\n  sixteenth_party: 'Dieciséisavo Partido',\n  seventeenth_party: 'Diecisieteavo Partido',\n  eighteenth_party: 'Dieciochoavo Partido',\n  nineteenth_party: 'Decimonovena Fiesta',\n  twentieth_party: 'Vigésima Fiesta',\n  draw: 'Dibujar',\n  add: 'Agregar',\n  text: 'Texto',\n  signature: 'Firma',\n  initials: 'Iniciales',\n  date: 'Fecha',\n  number: 'Número',\n  image: 'Imagen',\n  file: 'Archivo',\n  select: 'Seleccionar',\n  checkbox: 'Casilla',\n  multiple: 'Múltiple',\n  radio: 'Radio',\n  cells: 'Celdas',\n  stamp: 'Sello',\n  payment: 'Pago',\n  phone: 'Teléfono',\n  text_field: 'Campo de Texto',\n  signature_field: 'Campo de Firma',\n  initials_field: 'Campo de Iniciales',\n  date_field: 'Campo de Fecha',\n  number_field: 'Campo de Número',\n  image_field: 'Campo de Imagen',\n  file_field: 'Campo de Archivo',\n  select_field: 'Campo de Selección',\n  checkbox_field: 'Campo de Casilla',\n  multiple_field: 'Campo Múltiple',\n  radio_field: 'Campo de Grupo Radio',\n  cells_field: 'Campo de Celdas',\n  stamp_field: 'Campo de Sello',\n  payment_field: 'Campo de Pago',\n  phone_field: 'Campo de Teléfono',\n  draw_a_text_field_on_the_page_with_a_mouse: 'Dibujar un campo de texto en la página con el mouse',\n  drag_and_drop_any_other_field_type_on_the_page: 'Arrastra y suelta cualquier otro tipo de campo en la página',\n  click_on_the_field_type_above_to_start_drawing_it: 'Haz clic en el tipo de campo de arriba para comenzar a dibujarlo',\n  please_draw_fields_to_prepare_the_document: 'Por favor, dibuja los campos para preparar el documento.',\n  only_pdf_and_images_are_supported: 'Solo se admiten PDF e imágenes.',\n  unlock_sms_verified_phone_number_field_with_paid_plan_use_text_field_for_phone_numbers_without_verification: 'Desbloquea el campo de número de teléfono verificado por SMS con un plan pago. Usa el campo de texto para números de teléfono sin verificación.',\n  available_only_in_pro: 'Disponible solo en Pro',\n  failed_to_download_files: 'Error al descargar los archivos',\n  please_add_fields_for_the_submitter_name_or_remove_the_submitter_name_if_not_needed: 'Por favor, añade campos para {submitter_name} o elimina {submitter_name} si no es necesario.',\n  draw_field: 'Dibujar campo {field}',\n  replace: 'Reemplazar',\n  uploading_: 'Subiendo...',\n  add_document: 'Subir',\n  any: 'Cualquier',\n  drawn: 'Dibujado',\n  typed: 'Escrito',\n  none: 'Ninguno',\n  ssn: 'SSN',\n  ein: 'EIN',\n  email: 'Correo electrónico',\n  url: 'URL',\n  zip: 'ZIP',\n  custom: 'Personalizado',\n  numbers_only: 'Solo números',\n  letters_only: 'Solo letras',\n  regexp_validation: 'Validación de expresión regular',\n  enter_pdf_password: 'Ingrese la contraseña del PDF',\n  wrong_password: 'Contraseña incorrecta',\n  currency: 'Moneda',\n  save_and_preview: 'Guardar y previsualizar',\n  preferences: 'Preferencias',\n  available_in_pro: 'Disponible en Pro',\n  some_fields_are_missing_in_the_formula: 'Faltan algunos campos en la fórmula.',\n  learn_more: 'Aprende más',\n  and: 'y',\n  or: 'o'\n}\n\nconst it = {\n  verify_id: 'Verifica ID',\n  obtain_qualified_electronic_signature_with_the_trusted_provider_click_to_learn_more: 'Ottieni una firma elettronica qualificata (QeS) con il fornitore di fiducia. Clicca per saperne di più.',\n  ricorrente: 'Ricorrente',\n  una_volta: 'Una volta',\n  editable: 'Modificabile',\n  search_field: 'Campo di ricerca',\n  field_not_found: 'Campo non trovato',\n  clear: 'Cancella',\n  align: 'Allinea',\n  add_all_required_fields_to_continue: 'Aggiungi tutti i campi obbligatori per continuare',\n  uploaded_pdf_contains_form_fields_keep_or_remove_them: 'Il PDF caricato contiene campi del modulo. Mantenerli o rimuoverli?',\n  keep: 'Mantieni',\n  left: 'Sinistra',\n  heading: 'Intestazione',\n  validation: 'Validazione',\n  add_blank_page: 'Aggiungi pagina vuota',\n  right: 'Destra',\n  center: 'Centro',\n  description: 'Descrizione',\n  display_title: 'Mostra titolo',\n  with_logo: 'Con logo',\n  unchecked: 'Non selezionato',\n  price: 'Prezzo',\n  type_value: 'Inserisci valore',\n  equal: 'Uguale',\n  not_equal: 'Non uguale',\n  contains: 'Contiene',\n  does_not_contain: 'Non contiene',\n  not_empty: 'Non vuoto',\n  empty: 'Vuoto',\n  select_field_: 'Seleziona campo...',\n  select_value_: 'Seleziona valore...',\n  remove_condition: 'Rimuovi condizione',\n  add_condition: 'Aggiungi condizione',\n  are_you_sure_: 'Sei sicuro?',\n  sign_yourself: 'Firma te stesso',\n  set_signing_date: 'Imposta data di firma',\n  signing_date: 'Data di firma',\n  send: 'Invia',\n  remove: 'Rimuovi',\n  edit: 'Modifica',\n  settings: 'Impostazioni',\n  up: 'Su',\n  down: 'Giù',\n  checked: 'Selezionato',\n  save: 'Salva',\n  cancel: 'Annulla',\n  any: 'Qualsiasi',\n  drawn: 'Disegnato',\n  formula: 'Formula',\n  typed: 'Digitato',\n  draw_field_on_the_document: 'Disegnare un campo sul documento',\n  click_to_upload: 'Clicca per caricare',\n  or_drag_and_drop_files: 'o trascina e rilascia i file',\n  uploading: 'Caricamento in corso',\n  processing_: 'Elaborazione...',\n  add_pdf_documents_or_images: 'Aggiungi documenti PDF o immagini',\n  add_documents_or_images: 'Aggiungi documenti o immagini',\n  required: 'Obbligatorio',\n  default_value: 'Valore predefinito',\n  format: 'Formato',\n  read_only: 'Sola lettura',\n  page: 'Pagina',\n  draw_new_area: 'Disegna nuova area',\n  copy_to_all_pages: 'Copia in tutte le pagine',\n  add_option: 'Aggiungi opzione',\n  option: 'Opzione',\n  condition: 'Condizione',\n  first_party: 'Prima parte',\n  second_party: 'Seconda parte',\n  third_party: 'Terza parte',\n  fourth_party: 'Quarta parte',\n  fifth_party: 'Quinta parte',\n  sixth_party: 'Sesta parte',\n  seventh_party: 'Settima parte',\n  eighth_party: 'Ottava parte',\n  ninth_party: 'Nona parte',\n  tenth_party: 'Decima parte',\n  eleventh_party: 'Undicesima parte',\n  twelfth_party: 'Dodicesima parte',\n  thirteenth_party: 'Tredicesima parte',\n  fourteenth_party: 'Quattordicesima parte',\n  fifteenth_party: 'Quindicesima parte',\n  sixteenth_party: 'Sedicesima parte',\n  seventeenth_party: 'Diciassettesima parte',\n  eighteenth_party: 'Diciottesima parte',\n  nineteenth_party: 'Diciannovesima parte',\n  twentieth_party: 'Ventesima parte',\n  draw: 'Disegna',\n  add: 'Aggiungi',\n  or_add_field_without_drawing: 'Oppure aggiungi campo senza disegno',\n  text: 'Testo',\n  number: 'Numero',\n  signature: 'Firma',\n  initials: 'Iniziali',\n  date: 'Data',\n  image: 'Immagine',\n  file: 'File',\n  select: 'Seleziona',\n  checkbox: 'Checkbox',\n  multiple: 'Multiplo',\n  radio: 'Radio',\n  cells: 'Celle',\n  stamp: 'Timbro',\n  payment: 'Pagamento',\n  phone: 'Telefono',\n  text_field: 'Campo di Testo',\n  signature_field: 'Campo di Firma',\n  initials_field: 'Campo di Iniziali',\n  date_field: 'Campo Data',\n  number_field: 'Campo Numero',\n  image_field: 'Campo Immagine',\n  file_field: 'Campo File',\n  select_field: 'Campo di Selezione',\n  checkbox_field: 'Campo di Checkbox',\n  multiple_field: 'Campo Selezione Multipla',\n  radio_field: 'Campo di Gruppo Radio',\n  cells_field: 'Campo Celle',\n  stamp_field: 'Campo Timbro',\n  payment_field: 'Campo Pagamento',\n  phone_field: 'Campo Telefono',\n  draw_a_text_field_on_the_page_with_a_mouse: 'Disegna un campo di testo sulla pagina con il mouse',\n  drag_and_drop_any_other_field_type_on_the_page: 'Trascina e rilascia qualsiasi altro tipo di campo sulla pagina',\n  click_on_the_field_type_above_to_start_drawing_it: 'Clicca sul tipo di campo sopra per iniziare a disegnarlo',\n  please_draw_fields_to_prepare_the_document: 'Per favore, disegna i campi per preparare il documento.',\n  only_pdf_and_images_are_supported: 'Sono supportati solo PDF e immagini.',\n  unlock_sms_verified_phone_number_field_with_paid_plan_use_text_field_for_phone_numbers_without_verification: 'Sblocca il campo numero di telefono verificato tramite SMS con un piano a pagamento. Usa il campo di testo per numeri di telefono senza verifica.',\n  available_only_in_pro: 'Disponibile solo in Pro',\n  failed_to_download_files: 'Impossibile scaricare i file',\n  please_add_fields_for_the_submitter_name_or_remove_the_submitter_name_if_not_needed: 'Aggiungi campi per {submitter_name} o rimuovi {submitter_name} se non necessario.',\n  draw_field: 'Disegna il campo {field}',\n  replace: 'Sostituisci',\n  uploading_: 'Caricamento in corso...',\n  add_document: 'Aggiungi',\n  none: 'Nessuno',\n  ssn: 'SSN',\n  ein: 'EIN',\n  email: 'Email',\n  url: 'URL',\n  zip: 'CAP',\n  custom: 'Personalizzato',\n  numbers_only: 'Solo numeri',\n  letters_only: 'Solo lettere',\n  regexp_validation: 'Validazione regexp',\n  enter_pdf_password: 'Inserisci password PDF',\n  wrong_password: 'Password errata',\n  currency: 'Valuta',\n  save_and_preview: 'Salva e Anteprima',\n  preferences: 'Preferenze',\n  available_in_pro: 'Disponibile in Pro',\n  some_fields_are_missing_in_the_formula: 'Alcuni campi mancano nella formula.',\n  learn_more: 'Scopri di più',\n  and: 'e',\n  or: 'o'\n}\n\nconst pt = {\n  verify_id: 'Verificar ID',\n  obtain_qualified_electronic_signature_with_the_trusted_provider_click_to_learn_more: 'Obtenha a assinatura eletrônica qualificada (QeS) com o provedor confiável. Clique para saber mais.',\n  recurrent: 'Recurrente',\n  one_off: 'Único',\n  editable: 'Editável',\n  search_field: 'Campo de busca',\n  field_not_found: 'Campo não encontrado',\n  clear: 'Limpar',\n  type_value: 'Digite valor',\n  add_all_required_fields_to_continue: 'Adicione todos os campos obrigatórios para continuar',\n  uploaded_pdf_contains_form_fields_keep_or_remove_them: 'O PDF carregado contém campos. Manter ou removê-los?',\n  keep: 'Manter',\n  align: 'Alinhar',\n  left: 'Esquerda',\n  heading: 'Cabeçalho',\n  validation: 'Validação',\n  add_blank_page: 'Adicionar página em branco',\n  right: 'Direita',\n  center: 'Centro',\n  with_logo: 'Com logotipo',\n  description: 'Descrição',\n  display_title: 'Título de exibição',\n  signing_date: 'Data da Assinatura',\n  unchecked: 'Não marcado',\n  price: 'Preço',\n  equal: 'Igual',\n  not_equal: 'Não é igual',\n  contains: 'Contém',\n  does_not_contain: 'Não contém',\n  not_empty: 'Não vazio',\n  empty: 'Vazio',\n  add_condition: 'Adicionar condição',\n  select_field_: 'Selecionar campo...',\n  select_value_: 'Selecionar valor...',\n  remove_condition: 'Remover condição',\n  condition: 'Condição',\n  formula: 'Fórmula',\n  edit: 'Editar',\n  settings: 'Configurações',\n  up: 'Para cima',\n  down: 'Para baixo',\n  set_signing_date: 'Definir data de assinatura',\n  are_you_sure_: 'Tem certeza?',\n  sign_yourself: 'Assine você mesmo',\n  checked: 'Marcado',\n  send: 'Enviar',\n  remove: 'Remover',\n  save: 'Salvar',\n  cancel: 'Cancelar',\n  or_add_field_without_drawing: 'Ou adicione campo sem desenhar',\n  draw_field_on_the_document: 'Desenhar um campo no documento',\n  click_to_upload: 'Clique para enviar',\n  or_drag_and_drop_files: 'ou arraste e solte arquivos',\n  uploading: 'Carregando',\n  processing_: 'Processando...',\n  add_pdf_documents_or_images: 'Adicionar documentos PDF ou imagens',\n  add_documents_or_images: 'Adicionar documentos ou imagens',\n  required: 'Obrigatório',\n  default_value: 'Valor padrão',\n  format: 'Formato',\n  read_only: 'Somente leitura',\n  page: 'Página',\n  draw_new_area: 'Desenhar nova área',\n  copy_to_all_pages: 'Copiar para todas as páginas',\n  add_option: 'Adicionar opção',\n  option: 'Opção',\n  first_party: 'Primeira Parte',\n  second_party: 'Segunda Parte',\n  third_party: 'Terceira Parte',\n  fourth_party: 'Quarta Parte',\n  fifth_party: 'Quinta Parte',\n  sixth_party: 'Sexta Parte',\n  seventh_party: 'Sétima Parte',\n  eighth_party: 'Oitava Parte',\n  ninth_party: 'Nona Parte',\n  tenth_party: 'Décima Parte',\n  eleventh_party: 'Décima Primeira Parte',\n  twelfth_party: 'Décima Segunda Parte',\n  thirteenth_party: 'Décima Terceira Parte',\n  fourteenth_party: 'Décima Quarta Parte',\n  fifteenth_party: 'Décima Quinta Parte',\n  sixteenth_party: 'Décima Sexta Parte',\n  seventeenth_party: 'Décima Sétima Parte',\n  eighteenth_party: 'Décima Oitava Parte',\n  nineteenth_party: 'Décima Nona Parte',\n  twentieth_party: 'Vigésima Parte',\n  draw: 'Desenhar',\n  add: 'Adicionar',\n  text: 'Texto',\n  signature: 'Assinatura',\n  initials: 'Rúbrica',\n  date: 'Data',\n  number: 'Número',\n  image: 'Imagem',\n  file: 'Arquivo',\n  select: 'Selecionar',\n  checkbox: 'Caixa',\n  multiple: 'Múltiplo',\n  radio: 'Rádio',\n  cells: 'Células',\n  stamp: 'Carimbo',\n  payment: 'Pagamento',\n  phone: 'Telefone',\n  text_field: 'Campo de Texto',\n  signature_field: 'Campo de Assinatura',\n  initials_field: 'Campo de Rúbrica',\n  date_field: 'Campo de Data',\n  number_field: 'Campo de Número',\n  image_field: 'Campo de Imagem',\n  file_field: 'Campo de Arquivo',\n  select_field: 'Campo de Seleção',\n  checkbox_field: 'Campo de Caixa',\n  multiple_field: 'Campo de Opção Múltipla',\n  radio_field: 'Campo de Grupo Rádio',\n  cells_field: 'Campo de Células',\n  stamp_field: 'Campo de Carimbo',\n  payment_field: 'Campo de Pagamento',\n  phone_field: 'Campo de Telefone',\n  draw_a_text_field_on_the_page_with_a_mouse: 'Desenhar um campo de texto na página com o mouse',\n  drag_and_drop_any_other_field_type_on_the_page: 'Arraste e solte qualquer outro tipo de campo na página',\n  click_on_the_field_type_above_to_start_drawing_it: 'Clique no tipo de campo acima para começar a desenhá-lo',\n  please_draw_fields_to_prepare_the_document: 'Por favor, desenhe os campos para preparar o documento.',\n  only_pdf_and_images_are_supported: 'Apenas PDFs e imagens são suportados.',\n  unlock_sms_verified_phone_number_field_with_paid_plan_use_text_field_for_phone_numbers_without_verification: 'Desbloqueie o campo de número de telefone verificado por SMS com um plano pago. Use o campo de texto para números de telefone sem verificação.',\n  available_only_in_pro: 'Disponível apenas no Pro',\n  failed_to_download_files: 'Falha ao baixar arquivos',\n  please_add_fields_for_the_submitter_name_or_remove_the_submitter_name_if_not_needed: 'Adicione campos para {submitter_name} ou remova {submitter_name} se não for necessário.',\n  draw_field: 'Desenhar campo {field}',\n  replace: 'Substituir',\n  uploading_: 'Carregando...',\n  add_document: 'Enviar',\n  any: 'Qualquer',\n  drawn: 'Desenhado',\n  typed: 'Digitado',\n  none: 'Nenhum',\n  ssn: 'SSN',\n  ein: 'EIN',\n  email: 'Email',\n  url: 'URL',\n  zip: 'ZIP',\n  custom: 'Personalizado',\n  numbers_only: 'Somente números',\n  letters_only: 'Somente letras',\n  regexp_validation: 'Validação de expressão regular',\n  enter_pdf_password: 'Digite a senha do PDF',\n  wrong_password: 'Senha incorreta',\n  currency: 'Moeda',\n  save_and_preview: 'Salvar e Pré-visualizar',\n  preferences: 'Preferências',\n  available_in_pro: 'Disponível no Pro',\n  some_fields_are_missing_in_the_formula: 'Faltam alguns campos na fórmula.',\n  learn_more: 'Saiba mais',\n  and: 'e',\n  or: 'ou'\n}\n\nconst fr = {\n  verify_id: \"Vérifier l'ID\",\n  obtain_qualified_electronic_signature_with_the_trusted_provider_click_to_learn_more: 'Obtenez une signature électronique qualifiée (QeS) avec le fournisseur de confiance. Cliquez pour en savoir plus.',\n  recurrent: 'Récurrent',\n  one_off: 'Ponctuel',\n  editable: 'Éditable',\n  search_field: 'Champ de recherche',\n  field_not_found: 'Champ non trouvé',\n  clear: 'Effacer',\n  type_value: 'Tapez la valeur',\n  add_all_required_fields_to_continue: 'Ajoutez tous les champs obligatoires pour continuer',\n  uploaded_pdf_contains_form_fields_keep_or_remove_them: 'Le PDF téléchargé contient des champs. Les conserver ou les supprimer?',\n  keep: 'Conserver',\n  align: 'Aligner',\n  left: 'Gauche',\n  heading: 'En-tête',\n  validation: 'Validation',\n  add_blank_page: 'Ajouter une page blanche',\n  right: 'Droite',\n  add_condition: 'Ajouter une condition',\n  center: 'Centre',\n  with_logo: 'Avec logo',\n  description: 'Description',\n  display_title: \"Titre d'affichage\",\n  unchecked: 'Non coché',\n  price: 'Prix',\n  equal: 'Égal',\n  not_equal: 'Non égal',\n  contains: 'Contient',\n  signing_date: 'Date de signature',\n  does_not_contain: 'Ne contient pas',\n  not_empty: 'Non vide',\n  empty: 'Vide',\n  select_field_: 'Sélectionner un champ...',\n  select_value_: 'Sélectionner une valeur...',\n  remove_condition: 'Supprimer la condition',\n  condition: 'Condition',\n  formula: 'Formule',\n  edit: 'Éditer',\n  settings: 'Paramètres',\n  up: 'Haut',\n  down: 'Bas',\n  set_signing_date: 'Définir la date de signature',\n  are_you_sure_: 'Êtes-vous sûr?',\n  sign_yourself: 'Signez-vous',\n  checked: 'Coché',\n  send: 'Envoyer',\n  remove: 'Supprimer',\n  save: 'Enregistrer',\n  cancel: 'Annuler',\n  draw_field_on_the_document: 'Dessiner un champ sur le document',\n  click_to_upload: 'Cliquez pour télécharger',\n  or_drag_and_drop_files: 'ou faites glisser-déposer des fichiers',\n  uploading: 'Téléchargement en cours',\n  processing_: 'Traitement en cours...',\n  add_pdf_documents_or_images: 'Ajoutez des documents PDF ou des images',\n  add_documents_or_images: 'Ajoutez des documents ou des images',\n  required: 'Requis',\n  default_value: 'Valeur par défaut',\n  format: 'Format',\n  read_only: 'Lecture seule',\n  page: 'Page',\n  draw_new_area: 'Dessiner une nouvelle zone',\n  copy_to_all_pages: 'Copier sur toutes les pages',\n  add_option: 'Ajouter une option',\n  option: 'Option',\n  first_party: 'Première partie',\n  second_party: 'Deuxième partie',\n  third_party: 'Troisième partie',\n  fourth_party: 'Quatrième partie',\n  fifth_party: 'Cinquième partie',\n  sixth_party: 'Sixième partie',\n  seventh_party: 'Septième partie',\n  eighth_party: 'Huitième partie',\n  ninth_party: 'Neuvième partie',\n  tenth_party: 'Dixième partie',\n  eleventh_party: 'Onzième Parti',\n  twelfth_party: 'Douzième Parti',\n  thirteenth_party: 'Treizième Parti',\n  fourteenth_party: 'Quatorzième Parti',\n  fifteenth_party: 'Quinzième Parti',\n  sixteenth_party: 'Seizième Parti',\n  seventeenth_party: 'Dix-septième Parti',\n  eighteenth_party: 'Dix-huitième Parti',\n  nineteenth_party: 'Dix-Neuvième Fête',\n  twentieth_party: 'Vingtième Fête',\n  draw: 'Dessiner',\n  add: 'Ajouter',\n  or_add_field_without_drawing: 'Ou ajoutez un champ sans dessiner',\n  text: 'Texte',\n  signature: 'Signature',\n  initials: 'Initiales',\n  date: 'Date',\n  number: 'Numéro',\n  image: 'Image',\n  file: 'Fichier',\n  select: 'Choisir',\n  checkbox: 'Coche',\n  multiple: 'Multiple',\n  radio: 'Radio',\n  cells: 'Cellules',\n  stamp: 'Tampon',\n  payment: 'Paiement',\n  phone: 'Téléphone',\n  text_field: 'Champ de Texte',\n  signature_field: 'Champ de Signature',\n  initials_field: \"Champ d'Initiales\",\n  date_field: 'Champ de Date',\n  number_field: 'Champ de Numéro',\n  image_field: \"Champ d'Image\",\n  file_field: 'Champ de Fichier',\n  select_field: 'Champ de Choix',\n  checkbox_field: 'Champ de Coche',\n  multiple_field: 'Champ de Choix Multiple',\n  radio_field: 'Champ de Groupe Radio',\n  cells_field: 'Champ de Cellules',\n  stamp_field: 'Champ de Tampon',\n  payment_field: 'Champ de Paiement',\n  phone_field: 'Champ de Téléphone',\n  draw_a_text_field_on_the_page_with_a_mouse: 'Dessinez un champ texte sur la page avec une souris',\n  drag_and_drop_any_other_field_type_on_the_page: 'Glissez et déposez tout autre type de champ sur la page',\n  click_on_the_field_type_above_to_start_drawing_it: 'Cliquez sur le type de champ ci-dessus pour commencer à le dessiner',\n  please_draw_fields_to_prepare_the_document: 'Veuillez dessiner les champs pour préparer le document.',\n  only_pdf_and_images_are_supported: 'Seuls les PDF et les images sont pris en charge.',\n  unlock_sms_verified_phone_number_field_with_paid_plan_use_text_field_for_phone_numbers_without_verification: 'Débloquez le champ de numéro de téléphone vérifié par SMS avec un plan payant. Utilisez un champ texte pour les numéros de téléphone sans vérification.',\n  available_only_in_pro: 'Disponible uniquement en Pro',\n  failed_to_download_files: 'Échec du téléchargement des fichiers',\n  please_add_fields_for_the_submitter_name_or_remove_the_submitter_name_if_not_needed: 'Veuillez ajouter des champs pour {submitter_name} ou retirer {submitter_name} si ce n\\'est pas nécessaire.',\n  draw_field: 'Dessiner le champ {field}',\n  replace: 'Remplacer',\n  uploading_: 'Téléchargement en cours...',\n  add_document: 'Télécharger',\n  any: 'Tout',\n  drawn: 'Dessiné',\n  typed: 'Tapé',\n  none: 'Aucun',\n  ssn: 'SSN',\n  ein: 'EIN',\n  email: 'E-mail',\n  url: 'URL',\n  zip: 'ZIP',\n  custom: 'Personnalisé',\n  numbers_only: 'Chiffres uniquement',\n  letters_only: 'Lettres uniquement',\n  regexp_validation: 'Validation par expression régulière',\n  enter_pdf_password: 'Entrez le mot de passe PDF',\n  wrong_password: 'Mot de passe incorrect',\n  currency: 'Devise',\n  save_and_preview: 'Enregistrer et prévisualiser',\n  preferences: 'Préférences',\n  available_in_pro: 'Disponible en version Pro',\n  some_fields_are_missing_in_the_formula: 'Certains champs manquent dans la formule.',\n  learn_more: 'En savoir plus',\n  and: 'et',\n  or: 'ou'\n}\n\nconst de = {\n  verify_id: 'ID überprüfen',\n  obtain_qualified_electronic_signature_with_the_trusted_provider_click_to_learn_more: 'Erhalten Sie eine qualifizierte elektronische Signatur (QeS) beim vertrauenswürdigen Anbieter. Klicken Sie hier, um mehr zu erfahren.',\n  wiederkehrend: 'Wiederkehrend',\n  einmalig: 'Einmalig',\n  editable: 'Bearbeitbar',\n  search_field: 'Suchfeld',\n  field_not_found: 'Feld nicht gefunden',\n  clear: 'Löschen',\n  type_value: 'Wert eingeben',\n  add_all_required_fields_to_continue: 'Fügen Sie alle erforderlichen Felder hinzu, um fortzufahren',\n  uploaded_pdf_contains_form_fields_keep_or_remove_them: 'Das hochgeladene PDF enthält Formularfelder. Behalten oder entfernen?',\n  keep: 'Behalten',\n  align: 'Ausrichten',\n  left: 'Links',\n  heading: 'Überschrift',\n  validation: 'Validierung',\n  add_blank_page: 'Leere Seite hinzufügen',\n  right: 'Rechts',\n  add_condition: 'Bedingung hinzufügen',\n  center: 'Zentriert',\n  with_logo: 'Mit Logo',\n  description: 'Beschreibung',\n  display_title: 'Anzeigetitel',\n  unchecked: 'Nicht überprüft',\n  price: 'Preis',\n  equal: 'Gleich',\n  not_equal: 'Ungleich',\n  contains: 'Enthält',\n  does_not_contain: 'Enthält nicht',\n  not_empty: 'Nicht leer',\n  empty: 'Leer',\n  signing_date: 'Signaturdatum',\n  select_field_: 'Feld auswählen...',\n  select_value_: 'Wert auswählen...',\n  remove_condition: 'Bedingung entfernen',\n  condition: 'Bedingung',\n  formula: 'Formel',\n  edit: 'Bearbeiten',\n  settings: 'Einstellungen',\n  up: 'Nach oben',\n  down: 'Nach unten',\n  set_signing_date: 'Unterschriftdatum festlegen',\n  are_you_sure_: 'Bist du sicher?',\n  sign_yourself: 'Unterschreiben Sie selbst',\n  checked: 'Ausgewählt',\n  send: 'Senden',\n  remove: 'Entfernen',\n  save: 'Speichern',\n  cancel: 'Abbrechen',\n  draw_field_on_the_document: 'Ein Feld auf dem Dokument zeichnen',\n  click_to_upload: 'Klicken Sie zum Hochladen',\n  or_drag_and_drop_files: 'oder Dateien hierher ziehen',\n  uploading: 'Hochladen',\n  processing_: 'Verarbeitung...',\n  add_pdf_documents_or_images: 'PDF-Dokumente oder Bilder hinzufügen',\n  add_documents_or_images: 'Dokumente oder Bilder hinzufügen',\n  required: 'Erforderlich',\n  default_value: 'Standardwert',\n  format: 'Format',\n  read_only: 'Nur lesen',\n  page: 'Seite',\n  draw_new_area: 'Neuen Bereich zeichnen',\n  copy_to_all_pages: 'Auf alle Seiten kopieren',\n  add_option: 'Option hinzufügen',\n  option: 'Option',\n  first_party: 'Erste Partei',\n  second_party: 'Zweite Partei',\n  third_party: 'Dritte Partei',\n  fourth_party: 'Vierte Partei',\n  fifth_party: 'Fünfte Partei',\n  sixth_party: 'Sechste Partei',\n  seventh_party: 'Siebte Partei',\n  eighth_party: 'Achte Partei',\n  ninth_party: 'Neunte Partei',\n  tenth_party: 'Zehnte Partei',\n  eleventh_party: 'Elfte Partei',\n  twelfth_party: 'Zwölfte Partei',\n  thirteenth_party: 'Dreizehnte Partei',\n  fourteenth_party: 'Vierzehnte Partei',\n  fifteenth_party: 'Fünfzehnte Partei',\n  sixteenth_party: 'Sechzehnte Partei',\n  seventeenth_party: 'Siebzehnte Partei',\n  eighteenth_party: 'Achtzehnte Partei',\n  nineteenth_party: 'Neunzehnte Party',\n  twentieth_party: 'Zwanzigste Party',\n  draw: 'Zeichnen',\n  add: 'Hinzufügen',\n  or_add_field_without_drawing: 'Oder Feld ohne Zeichnung hinzufügen',\n  text: 'Text',\n  signature: 'Unterschrift',\n  initials: 'Initialen',\n  date: 'Datum',\n  number: 'Nummer',\n  image: 'Bild',\n  file: 'Datei',\n  select: 'Auswählen',\n  checkbox: 'Checkbox',\n  multiple: 'Mehrere',\n  radio: 'Radio',\n  cells: 'Zellen',\n  stamp: 'Stempel',\n  payment: 'Zahlung',\n  phone: 'Telefon',\n  text_field: 'Textfeld',\n  signature_field: 'Unterschriftsfeld',\n  initials_field: 'Initialenfeld',\n  date_field: 'Datumsfeld',\n  number_field: 'Zahlenfeld',\n  image_field: 'Bildfeld',\n  file_field: 'Dateifeld',\n  select_field: 'Auswahlfeld',\n  checkbox_field: 'Checkbox-Feld',\n  multiple_field: 'Mehrfach-Auswahlfeld',\n  radio_field: 'Radio-Gruppenfeld',\n  cells_field: 'Zellenfeld',\n  stamp_field: 'Stempelfeld',\n  payment_field: 'Zahlungsfeld',\n  phone_field: 'Telefonfeld',\n  draw_a_text_field_on_the_page_with_a_mouse: 'Textfeld auf der Seite mit der Maus zeichnen',\n  drag_and_drop_any_other_field_type_on_the_page: 'Ziehe und lasse einen anderen Feldtyp auf die Seite fallen',\n  click_on_the_field_type_above_to_start_drawing_it: 'Klicke auf den Feldtyp oben, um mit dem Zeichnen zu beginnen',\n  please_draw_fields_to_prepare_the_document: 'Bitte zeichne Felder, um das Dokument vorzubereiten.',\n  only_pdf_and_images_are_supported: 'Nur PDFs und Bilder werden unterstützt.',\n  unlock_sms_verified_phone_number_field_with_paid_plan_use_text_field_for_phone_numbers_without_verification: 'Schalte das SMS-verifizierte Telefonnummernfeld mit einem kostenpflichtigen Plan frei. Verwende das Textfeld für Telefonnummern ohne Verifizierung.',\n  available_only_in_pro: 'Nur in Pro verfügbar',\n  failed_to_download_files: 'Fehler beim Herunterladen der Dateien',\n  please_add_fields_for_the_submitter_name_or_remove_the_submitter_name_if_not_needed: 'Bitte füge Felder für {submitter_name} hinzu oder entferne {submitter_name}, falls nicht erforderlich.',\n  draw_field: 'Feld {field} zeichnen',\n  replace: 'Ersetzen',\n  uploading_: 'Hochladen...',\n  add_document: 'Hochladen',\n  any: 'Jede',\n  drawn: 'Gezeichnet',\n  typed: 'Getippt',\n  none: 'Keine',\n  ssn: 'SSN',\n  ein: 'EIN',\n  email: 'E-Mail',\n  url: 'URL',\n  zip: 'ZIP',\n  custom: 'Benutzerdefiniert',\n  numbers_only: 'Nur Zahlen',\n  letters_only: 'Nur Buchstaben',\n  regexp_validation: 'Regulärer Ausdruck Überprüfung',\n  enter_pdf_password: 'Geben Sie das PDF-Passwort ein',\n  wrong_password: 'Falsches Passwort',\n  currency: 'Währung',\n  save_and_preview: 'Speichern und Vorschau',\n  preferences: 'Einstellungen',\n  available_in_pro: 'In Pro verfügbar',\n  some_fields_are_missing_in_the_formula: 'Einige Felder fehlen in der Formel.',\n  learn_more: 'Erfahren Sie mehr',\n  and: 'und',\n  or: 'oder'\n}\n\nexport { en, es, it, pt, fr, de }\n","import { render } from \"./builder.vue?vue&type=template&id=327afc5e\"\nimport script from \"./builder.vue?vue&type=script&lang=js\"\nexport * from \"./builder.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <div>\n    <div v-if=\"selectedSheetIndex === null && spreadsheet\">\n      <form @submit.prevent=\"[selectedSheetIndex = $refs.selectWorksheet.value, buildDefaultMappings()]\">\n        <label class=\"label\">\n          {{ t('select_worksheet') }}\n        </label>\n        <select\n          ref=\"selectWorksheet\"\n          class=\"base-select\"\n        >\n          <option\n            v-for=\"(sheet, index) in spreadsheet\"\n            :key=\"index\"\n            :value=\"index\"\n          >\n            {{ sheet[0] || index }}\n          </option>\n        </select>\n        <button class=\"base-button mt-4 w-full\">\n          {{ t('open') }}\n        </button>\n      </form>\n    </div>\n    <div v-else-if=\"selectedSheetIndex !== null\">\n      <div\n        v-for=\"submitter in submitters\"\n        :key=\"submitter.uuid\"\n        class=\"mb-4\"\n      >\n        <div\n          v-if=\"submitters.length > 1\"\n          class=\"px-3 border-y py-2 border-base-300 text-center w-full\"\n        >\n          {{ submitter.name }}\n        </div>\n        <div class=\"flex\">\n          <div class=\"relative w-full py-2 px-2 text-sm\">\n            {{ t('recipient_field') }}\n          </div>\n          <div class=\"relative w-full py-2 pl-4 text-sm\">\n            {{ t('spreadsheet_column') }}\n          </div>\n        </div>\n        <div\n          v-for=\"mapping in mappings.filter((m) => m.submitter_uuid === submitter.uuid)\"\n          :key=\"mapping.uuid\"\n          class=\"mb-2\"\n        >\n          <div class=\"flex\">\n            <select\n              class=\"base-select !select-sm !h-10\"\n              :class=\"{ '!text-gray-300': !mapping.field_name }\"\n              required\n              @change=\"mapping.field_name = $event.target.value\"\n            >\n              <option\n                disabled\n                value=\"\"\n                :selected=\"!mapping.field_name\"\n              >\n                {{ t('select_field') }}\n              </option>\n              <option\n                v-for=\"(field, index) in selectFieldsForSubmitter(submitter)\"\n                :key=\"index\"\n                :value=\"field.name\"\n                :selected=\"mapping.field_name === field.name\"\n                class=\"text-base-content\"\n              >\n                {{ field.name }}\n              </option>\n            </select>\n            <div class=\"flex items-center px-1\">\n              <IconArrowsHorizontal style=\"width: 19px; height: 19px\" />\n            </div>\n            <div class=\"w-full relative\">\n              <select\n                class=\"base-select !select-sm !h-10\"\n                :class=\"{ '!text-gray-300': !mapping.column_index && mapping.column_index != 0 }\"\n                required\n                @change=\"mapping.column_index = parseInt($event.target.value)\"\n              >\n                <option\n                  disabled\n                  value=\"\"\n                  :selected=\"mapping.column_index == null\"\n                >\n                  {{ t('select_column') }}\n                </option>\n                <template\n                  v-for=\"(column, index) in columns\"\n                  :key=\"index\"\n                >\n                  <option\n                    v-if=\"column\"\n                    :value=\"index\"\n                    :selected=\"index === mapping.column_index\"\n                    class=\"text-base-content\"\n                  >\n                    {{ column }}\n                  </option>\n                </template>\n              </select>\n              <div\n                v-if=\"mapping.column_index != null\"\n                class=\"absolute top-0 bottom-0 right-1 flex items-center\"\n              >\n                <span\n                  class=\"tooltip tooltip-bottom-end pr-1 tooltip-pre\"\n                  style=\"padding-top: 2px\"\n                  :data-tip=\"[0, 1, 2].map((i) => rows[i]?.[mapping.column_index] ?? '---').join('\\n')\"\n                >\n                  <button\n                    class=\"btn btn-xs btn-circle bg-white border-0 border-gray-300\"\n                    @click.prevent\n                  >\n                    <IconInfoCircle class=\"h-4 w-4\" />\n                  </button>\n                </span>\n              </div>\n            </div>\n            <div class=\"flex items-center pl-1\">\n              <span\n                class=\"tooltip tooltip-left\"\n                :data-tip=\"t('remove')\"\n              >\n                <button\n                  :disabled=\"mappings.filter((m) => m.submitter_uuid === submitter.uuid).length < 2\"\n                  class=\"btn btn-xs btn-circle\"\n                  @click.prevent=\"mappings.splice(mappings.indexOf(mapping), 1)\"\n                >\n                  <IconX class=\"h-3.5 w-3.5\" />\n                </button>\n              </span>\n            </div>\n          </div>\n        </div>\n        <div>\n          <button\n            class=\"btn btn-sm btn-primary w-full !normal-case font-medium\"\n            @click.prevent=\"addMapping(submitter)\"\n          >\n            <IconPlus class=\"w-4 h-4\" />\n            {{ t('new_field_mapping') }}\n          </button>\n        </div>\n      </div>\n      <div>\n        <input\n          name=\"submissions_json\"\n          hidden\n          :value=\"multitenant ? JSON.stringify(submissionsData.slice(0, 1100)) : JSON.stringify(submissionsData)\"\n        >\n      </div>\n      <div\n        class=\"px-3 border-y py-2 border-base-300 text-center w-full text-sm font-semibold\"\n      >\n        {{ t('total_entries') }}: {{ submissionsData.length }}\n        <template v-if=\"multitenant && submissionsData.length >= 1000\">\n          / 1000\n        </template>\n      </div>\n    </div>\n    <div\n      v-else\n    >\n      <div\n        class=\"flex h-52 w-full\"\n        @dragover.prevent\n        @drop.prevent=\"onDropFiles\"\n      >\n        <label\n          class=\"w-full relative bg-base-200/20  hover:bg-base-200/30 rounded-md border border-2 border-base-content/10 border-dashed\"\n          for=\"import_list_file\"\n          :class=\"{ 'opacity-50': isLoading }\"\n        >\n          <div class=\"absolute top-0 right-0 left-0 bottom-0 flex items-center justify-center\">\n            <div class=\"flex flex-col items-center\">\n              <IconInnerShadowTop\n                v-if=\"isLoading\"\n                class=\"animate-spin\"\n                :width=\"40\"\n                :height=\"40\"\n              />\n              <IconCloudUpload\n                v-else\n                :width=\"40\"\n                :height=\"40\"\n              />\n              <div\n                class=\"font-medium text-lg mb-1\"\n              >\n                {{ t('upload_csv_or_xlsx_spreadsheet') }}\n              </div>\n              <div class=\"text-sm\">\n                <span class=\"font-medium\">{{ t('click_to_upload') }}</span> {{ t('or_drag_and_drop_files') }}\n              </div>\n            </div>\n          </div>\n          <form\n            ref=\"form\"\n            class=\"hidden\"\n          >\n            <input\n              id=\"import_list_file\"\n              ref=\"input\"\n              type=\"file\"\n              name=\"file\"\n              accept=\".xlsx, .xls, .csv\"\n              @change=\"onSelectFile\"\n            >\n          </form>\n        </label>\n      </div>\n      <div class=\"text-center mt-2\">\n        {{ t('or') }} <a\n          :download=\"`${template.name}.csv`\"\n          :href=\"`data:text/csv;base64,${csvBase64}`\"\n          class=\"link font-medium\"\n        >{{ t('download') }}</a> {{ t('a_sample_spreadsheet_to_fill_and_import') }}\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { IconCloudUpload, IconX, IconPlus, IconArrowsHorizontal, IconInfoCircle, IconInnerShadowTop } from '@tabler/icons-vue'\nimport { v4 } from 'uuid'\n\nexport default {\n  name: 'FileDropzone',\n  components: {\n    IconCloudUpload,\n    IconX,\n    IconArrowsHorizontal,\n    IconPlus,\n    IconInfoCircle,\n    IconInnerShadowTop\n  },\n  props: {\n    template: {\n      type: Object,\n      required: true\n    },\n    multitenant: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    authenticityToken: {\n      type: String,\n      required: false,\n      default: ''\n    },\n    i18n: {\n      type: Object,\n      required: false,\n      default: () => ({})\n    }\n  },\n  data () {\n    return {\n      isLoading: false,\n      spreadsheet: null,\n      selectedSheetIndex: null,\n      mappings: []\n    }\n  },\n  computed: {\n    table () {\n      return this.spreadsheet[this.selectedSheetIndex][1]\n    },\n    submissionsData () {\n      const submissions = []\n\n      this.rows.forEach((row) => {\n        const submittersIndex = {}\n\n        this.mappings.forEach((mapping) => {\n          if (mapping.field_name && mapping.column_index != null) {\n            submittersIndex[mapping.submitter_uuid] ||= {\n              uuid: mapping.submitter_uuid,\n              role: this.submitters.find((s) => s.uuid === mapping.submitter_uuid).name,\n              fields: []\n            }\n\n            if (['name', 'email', 'phone', 'external_id'].includes(mapping.field_name.toLowerCase())) {\n              submittersIndex[mapping.submitter_uuid][mapping.field_name.toLowerCase()] = row[mapping.column_index]\n            }\n\n            const fieldType = this.fieldTypesIndex[mapping.submitter_uuid]?.[mapping.field_name]\n\n            if (fieldType && fieldType !== 'phone') {\n              submittersIndex[mapping.submitter_uuid].fields.push({\n                name: mapping.field_name, default_value: row[mapping.column_index], readonly: true\n              })\n            }\n          }\n        })\n\n        if (Object.keys(submittersIndex).length !== 0) {\n          submissions.push({ submitters: this.submitters.map((s) => submittersIndex[s.uuid]).filter(Boolean) })\n        }\n      })\n\n      return submissions\n    },\n    csvBase64 () {\n      const rows = []\n\n      this.submitters.forEach((submitter) => {\n        this.selectFieldsForSubmitter(submitter).forEach((field) => {\n          rows.push(this.submitters.length > 1 ? `${submitter.name} - ${field.name}` : field.name)\n        })\n      })\n\n      const csv = rows.map(item => {\n        if (/[\",\\n]/.test(item)) {\n          return `\"${item.replace(/\"/g, '\"\"')}\"`\n        } else {\n          return item\n        }\n      }).join(',')\n\n      return window.btoa(window.unescape(window.encodeURIComponent(csv + '\\n' + rows.map(() => '').join(',') + '\\n')))\n    },\n    submitters () {\n      return this.template.submitters\n    },\n    fieldTypesIndex () {\n      return this.template.fields.reduce((acc, field) => {\n        acc[field.submitter_uuid] ||= {}\n\n        if (field.name) {\n          acc[field.submitter_uuid][field.name] = field.type\n        }\n\n        return acc\n      }, {})\n    },\n    columns () {\n      return this.table[0]\n    },\n    form () {\n      return this.$el.closest('form')\n    },\n    fieldTypes () {\n      return ['text', 'cells', 'date', 'number', 'radio', 'select', 'checkbox']\n    },\n    defaultFields () {\n      return [\n        { name: 'Name' },\n        { name: 'Email' },\n        { name: 'Phone' }\n      ]\n    },\n    rows () {\n      return this.table.slice(1)\n    }\n  },\n  watch: {\n    selectedSheetIndex (value) {\n      if (value !== null) {\n        document.getElementById('list_form_buttons')?.classList?.remove('hidden')\n      }\n    }\n  },\n  methods: {\n    t (key) {\n      return this.i18n[key] || key\n    },\n    onDropFiles (e) {\n      this.uploadFile(e.dataTransfer.files[0])\n    },\n    onSelectFile (e) {\n      this.uploadFile(e.target.files[0])\n    },\n    addMapping (submitter) {\n      this.mappings.push({ uuid: v4(), field_name: '', column_index: null, submitter_uuid: submitter.uuid })\n    },\n    selectFieldsForSubmitter (submitter) {\n      const templateFields = this.template.fields.filter((field) => {\n        return field.submitter_uuid === submitter.uuid &&\n          field.name &&\n          this.fieldTypes.includes(field.type) &&\n          this.defaultFields.every((f) => field.name?.toLowerCase() !== f.name?.toLowerCase())\n      })\n\n      const fields = [...this.defaultFields, ...templateFields]\n\n      if (this.spreadsheet && this.columns.includes('external_id')) {\n        fields.push({ name: 'external_id' })\n      }\n\n      return fields\n    },\n    buildDefaultMappings () {\n      this.submitters.forEach((submitter) => {\n        const fields = this.selectFieldsForSubmitter(submitter)\n\n        fields.forEach((field) => {\n          const columnIndex = this.columns.findIndex((column, index) => {\n            return column &&\n              column.toString().toLowerCase().includes(field.name?.toLowerCase()) &&\n              this.mappings.every((m) => m.column_index !== index)\n          })\n\n          if (columnIndex !== -1) {\n            this.mappings.push({ uuid: v4(), field_name: field.name, column_index: columnIndex, submitter_uuid: submitter.uuid })\n          }\n        })\n\n        if (!this.mappings.some((m) => m.field_name.toLowerCase() === 'name' && m.submitter_uuid === submitter.uuid)) {\n          this.mappings.unshift({ uuid: v4(), field_name: 'Name', submitter_uuid: submitter.uuid })\n        }\n\n        if (!this.mappings.some((m) => m.field_name.toLowerCase() === 'email' && m.submitter_uuid === submitter.uuid)) {\n          this.mappings.unshift({ uuid: v4(), field_name: 'Email', submitter_uuid: submitter.uuid })\n        }\n      })\n    },\n    uploadFile (file) {\n      this.isLoading = true\n\n      const formData = new FormData()\n\n      formData.append('file', file)\n\n      return fetch('/upload_spreadsheet', {\n        method: 'POST',\n        body: formData,\n        headers: {\n          'X-CSRF-Token': this.authenticityToken\n        }\n      }).then(resp => resp.json()).then((data) => {\n        if (data.error) {\n          return alert(data.error)\n        }\n\n        this.spreadsheet = data\n\n        if (data.length === 1) {\n          this.selectedSheetIndex = 0\n\n          this.buildDefaultMappings()\n        }\n      }).finally(() => {\n        this.isLoading = false\n      })\n    }\n  }\n}\n</script>\n","import { render } from \"./import_list.vue?vue&type=template&id=577c3daf\"\nimport script from \"./import_list.vue?vue&type=script&lang=js\"\nexport * from \"./import_list.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { actionable } from '@github/catalyst/lib/actionable'\n\nexport default actionable(class extends HTMLElement {\n  trigger (event) {\n    const elementIds = JSON.parse(this.dataset.elementIds)\n\n    elementIds.forEach((elementId) => {\n      document.getElementById(elementId).classList.toggle('hidden', event.target.value !== elementId)\n    })\n  }\n})\n","export default class extends HTMLElement {\n  connectedCallback() {\n    this.button.addEventListener('click', this.handleClick.bind(this));\n  }\n\n  handleClick(event) {\n    // Prevent default form submission\n    event.preventDefault();\n    \n    // Show loading indicator\n    const loadingId = this.button.dataset.loadingId;\n    if (loadingId) {\n      const loadingElement = document.getElementById(loadingId);\n      if (loadingElement) {\n        loadingElement.classList.remove('hidden');\n      }\n    }\n    \n    // Set cookie with 10-year expiration\n    const expirationDate = new Date();\n    expirationDate.setFullYear(expirationDate.getFullYear() + 10);\n    const expires = expirationDate.toUTCString();\n    document.cookie = `${this.dataset.key}=${this.dataset.value}; expires=${expires}; path=/`;\n    \n    // Get the form element\n    const form = this.closest('form');\n    \n    // Add a hidden input to the form with the cookie value\n    let input = form.querySelector(`input[name=\"${this.dataset.key}\"]`);\n    if (!input) {\n      input = document.createElement('input');\n      input.type = 'hidden';\n      input.name = this.dataset.key;\n      form.appendChild(input);\n    }\n    input.value = this.dataset.value;\n    \n    // Submit the form after a short delay to show the loading indicator\n    setTimeout(() => {\n      form.submit();\n    }, 100);\n  }\n\n  get button() {\n    return this.querySelector('button');\n  }\n}\n","export default class extends HTMLElement {\n  static observedAttributes = ['class']\n\n  connectedCallback () {\n    this.trigger()\n  }\n\n  attributeChangedCallback (attributeName, oldValue, newValue) {\n    if (attributeName === 'class' && oldValue !== newValue) {\n      this.trigger()\n    }\n  }\n\n  trigger () {\n    const hasHiddenClass = this.classList.contains('hidden')\n    const elements = this.querySelectorAll('input, textarea, select')\n\n    elements.forEach((element) => {\n      if (hasHiddenClass) {\n        element.disabled = true\n\n        if (!element.dataset.wasRequired) {\n          element.dataset.wasRequired = element.required\n        }\n\n        element.required = false\n      } else {\n        element.disabled = false\n\n        if (element.dataset.wasRequired) {\n          element.required = element.dataset.wasRequired === 'true'\n\n          delete element.dataset.wasRequired\n        }\n      }\n    })\n  }\n}\n","import { actionable } from '@github/catalyst/lib/actionable'\n\nexport default actionable(class extends HTMLElement {\n  connectedCallback () {\n    document.body.classList.add('overflow-hidden')\n\n    document.addEventListener('keyup', this.onEscKey)\n\n    document.addEventListener('turbo:before-cache', this.close)\n\n    if (this.dataset.closeAfterSubmit !== 'false') {\n      document.addEventListener('turbo:submit-end', this.onSubmit)\n    }\n  }\n\n  disconnectedCallback () {\n    document.body.classList.remove('overflow-hidden')\n\n    document.removeEventListener('keyup', this.onEscKey)\n    document.removeEventListener('turbo:submit-end', this.onSubmit)\n    document.removeEventListener('turbo:before-cache', this.close)\n  }\n\n  onSubmit = (e) => {\n    if (e.detail.success && e.detail?.formSubmission?.formElement?.dataset?.closeOnSubmit !== 'false') {\n      this.close()\n    }\n  }\n\n  onEscKey = (e) => {\n    if (e.code === 'Escape') {\n      this.close()\n    }\n  }\n\n  close = (e) => {\n    e?.preventDefault()\n\n    this.remove()\n  }\n})\n","import { actionable } from '@github/catalyst/lib/actionable'\nimport { target, targetable } from '@github/catalyst/lib/targetable'\n\nexport default actionable(targetable(class extends HTMLElement {\n  static [target.static] = [\n    'loading',\n    'icon',\n    'input'\n  ]\n\n  connectedCallback () {\n    this.addEventListener('drop', this.onDrop)\n\n    this.addEventListener('dragover', (e) => e.preventDefault())\n\n    document.addEventListener('turbo:submit-end', this.toggleLoading)\n  }\n\n  disconnectedCallback () {\n    document.removeEventListener('turbo:submit-end', this.toggleLoading)\n  }\n\n  onDrop (e) {\n    e.preventDefault()\n\n    this.input.files = e.dataTransfer.files\n\n    this.uploadFiles(e.dataTransfer.files)\n  }\n\n  onSelectFiles (e) {\n    e.preventDefault()\n\n    this.uploadFiles(this.input.files)\n  }\n\n  toggleLoading = (e) => {\n    if (e && e.target && !e.target.contains(this)) {\n      return\n    }\n\n    this.loading.classList.toggle('hidden')\n    this.icon.classList.toggle('hidden')\n    this.classList.toggle('opacity-50')\n  }\n\n  uploadFiles () {\n    this.toggleLoading()\n\n    if (this.dataset.submitOnUpload) {\n      this.closest('form').querySelector('button[type=\"submit\"]').click()\n    }\n  }\n}))\n","export default class extends HTMLElement {\n  connectedCallback () {\n    this.querySelectorAll('a').forEach((link) => {\n      if (document.location.pathname.startsWith(link.pathname) && !link.getAttribute('href').startsWith('http')) {\n        link.classList.add('bg-base-300')\n      }\n    })\n  }\n}\n","import confetti from 'canvas-confetti';\n\nexport default class extends HTMLElement {\n    connectedCallback () {\n        const button = document.getElementById('apply-discount-button');\n        if (button) {\n            button.addEventListener('click', this.applyDiscountCode.bind(this));\n            this.confetti();\n        }\n    }\n    confetti() {\n        confetti({\n            particleCount: 100,\n            spread: 70,\n            origin: { y: 0.6 }\n        });\n    }\n\n    formatPrice(price) {\n        return new Intl.NumberFormat('en-US', {\n            minimumFractionDigits: 2,\n            maximumFractionDigits: 2,\n            style: 'decimal'\n        }).format(price);\n    }\n\n    updatePlanUI(planElement, discountedPlan) {\n        // Calculate price per credit\n        const pricePerCredit = parseFloat(discountedPlan.price) / parseFloat(discountedPlan.credits);\n        \n        // Update the UI\n        planElement.querySelector('.final-price-amount').textContent = this.formatPrice(pricePerCredit);\n        planElement.querySelector('.plan-price').textContent = this.formatPrice(discountedPlan.price);\n        planElement.querySelector('.plan-credits').textContent = discountedPlan.credits;\n        // ... other updates ...\n    }\n\n    applyDiscountCode(event) {\n        event.preventDefault(); // Prevent the default button action\n        const discountCode = document.getElementById('global-discount-code').value;\n\n        fetch(`/credit_plans/check_discount_code`, {\n            method: 'POST',\n            headers: {\n                'Content-Type': 'application/json',\n                'X-CSRF-Token': document.querySelector('meta[name=\"csrf-token\"]').content\n            },\n            body: JSON.stringify({ discount_code: discountCode })\n        })\n        .then(response => response.json())\n        .then(data => {\n            console.log('data');\n            console.log(data);\n            const errorMessage = document.getElementById('error-message');\n            const errorMessageText = document.getElementById('error-message-text');\n            console.log('data.success');\n            console.log(data.success);\n\n            if (data.success) {\n                // Handle successful response\n                \n                const discountedPlan = data.discounted_plan;\n                const originalPlanElement = document.getElementById(`plan-${discountedPlan.relates_to.id}`);\n                console.log('originalPlanElement',originalPlanElement);\n                console.log('discountedPlan',discountedPlan);\n                if (originalPlanElement) {\n                    \n                    originalPlanElement.querySelector('.plan-name').textContent = discountedPlan.name;\n                    originalPlanElement.querySelector('.purchase-button').setAttribute('data-plan-id', discountedPlan.id);\n                    this.updatePlanUI(originalPlanElement, discountedPlan);\n                    \n                    \n                    originalPlanElement.classList.add('bounce-animation'); // Optional: Add animation class\n                    originalPlanElement.classList.add('shadow-lg');\n                    originalPlanElement.classList.add('shadow-[#2C5381]');\n                    originalPlanElement.classList.add('border-2');\n                    originalPlanElement.classList.add('border-[#2C5381]');\n                \n\n                    originalPlanElement.querySelector('.discount-code').value = discountedPlan.discount_code;\n                    this.confetti();\n                }\n                \n                // Hide the error message if it was previously shown\n                errorMessage.classList.add('hidden');\n            } else {\n                // Show error message\n                errorMessageText.textContent = data.error || 'An error occurred';\n                errorMessage.classList.remove('hidden');\n            }\n        })\n        .catch(error => {\n            console.error('Error:', error);\n            const errorMessage = document.getElementById('error-message');\n            const errorMessageText = document.getElementById('error-message-text');\n            errorMessageText.textContent = 'An error occurred while processing your request';\n            errorMessage.classList.remove('hidden');\n        });\n    }\n}\n  ","import { toast } from 'react-toastify'\n\nclass PurchasePlan extends HTMLElement {\n  connectedCallback () {\n    console.log('Purchase plan component connected')\n    this.setupEventListeners()\n  }\n\n  setupEventListeners () {\n    const buttons = this.querySelectorAll('.purchase-button')\n    buttons.forEach(button => {\n      button.addEventListener('click', this.handlePurchase.bind(this))\n    })\n  }\n\n  async handlePurchase (event) {\n    // Prevent the default button action\n    event.preventDefault()\n\n    // Get the button and prevent multiple clicks\n    const button = event.currentTarget\n    if (button.disabled) return\n\n    // Disable the button temporarily\n    button.disabled = true\n\n    try {\n      const planId = button.dataset.planId\n      const discountCode = this.querySelector('.discount-code')?.value || ''\n\n      const response = await fetch(`/credit_plans/${planId}/purchase`, {\n        method: 'POST',\n        headers: {\n          'Content-Type': 'application/json',\n          'X-CSRF-Token': document.querySelector('meta[name=\"csrf-token\"]').content\n        },\n        body: JSON.stringify({\n          discount_code: discountCode\n        })\n      })\n\n      const data = await response.json()\n\n      if (data.success) {\n        // Redirect to the payment link\n        window.location.href = data.payment_link\n      } else {\n        console.error('Error:', data.error)\n        toast.error(data.error)\n      }\n    } catch (error) {\n      console.error('Error:', error)\n      toast.error('An unexpected error occurred')\n    } finally {\n      // Re-enable the button\n      button.disabled = false\n    }\n  }\n\n  disconnectedCallback () {\n    // Clean up any event listeners if needed\n    const buttons = this.querySelectorAll('.purchase-button')\n    buttons.forEach(button => {\n      button.removeEventListener('click', this.handlePurchase.bind(this))\n    })\n  }\n}\n\n// Export the class properly\ncustomElements.define('purchase-plan', PurchasePlan)\nexport default PurchasePlan\n","export default class extends HTMLElement {\n  connectedCallback () {\n    this.clearChecked()\n\n    this.addEventListener('click', (e) => {\n      e.stopPropagation()\n\n      const text = this.dataset.text || this.innerText.trim()\n\n      if (navigator.clipboard) {\n        navigator.clipboard.writeText(text)\n      } else {\n        if (e.target.tagName !== 'INPUT') {\n          alert(`Clipboard not available. Make sure you're using https://\\nCopy text: ${text}`)\n        }\n      }\n    })\n  }\n\n  clearChecked () {\n    this.querySelectorAll('input').forEach((e) => {\n      e.checked = false\n    })\n  }\n}\n","import { actionable } from '@github/catalyst/lib/actionable'\nimport { targets, targetable } from '@github/catalyst/lib/targetable'\n\nexport default actionable(targetable(class extends HTMLElement {\n  static [targets.static] = ['items']\n\n  addItem (e) {\n    e.preventDefault()\n\n    const originalItem = this.items[0]\n    const duplicateItem = originalItem.cloneNode(true)\n    const uniqueId = Math.floor(Math.random() * 10 ** 16)\n\n    duplicateItem.querySelectorAll(\"select, textarea, input:not([type='hidden'])\").forEach((input) => {\n      input.value = ''\n      input.checked = false\n      input.removeAttribute('selected')\n    })\n\n    duplicateItem.querySelectorAll('select, textarea, input').forEach((input) => {\n      input.name = input.name.replace('[1]', `[${uniqueId}]`)\n    })\n\n    duplicateItem.querySelectorAll('a.hidden').forEach((button) => button.classList.toggle('hidden'))\n\n    originalItem.parentNode.append(duplicateItem)\n  }\n\n  removeItem (e) {\n    e.preventDefault()\n\n    this.items.find((item) => item.contains(e.target))?.remove()\n  }\n}))\n","import { target, targetable } from '@github/catalyst/lib/targetable'\n\nexport default targetable(class extends HTMLElement {\n  static [target.static] = ['defaultButton', 'loadingButton']\n\n  connectedCallback () {\n    this.addEventListener('click', () => this.downloadFiles())\n  }\n\n  toggleState () {\n    this.defaultButton?.classList?.toggle('hidden')\n    this.loadingButton?.classList?.toggle('hidden')\n  }\n\n  downloadFiles () {\n    if (!this.dataset.src) return\n\n    this.toggleState()\n\n    fetch(this.dataset.src).then(async (response) => {\n      if (response.ok) {\n        const urls = await response.json()\n        const isSafariIos = /iPhone|iPad|iPod/i.test(navigator.userAgent)\n\n        if (isSafariIos && urls.length > 1) {\n          this.downloadSafariIos(urls)\n        } else {\n          this.downloadUrls(urls)\n        }\n      } else {\n        alert('Failed to download files')\n      }\n    })\n  }\n\n  downloadUrls (urls) {\n    const fileRequests = urls.map((url) => {\n      return () => {\n        return fetch(url).then(async (resp) => {\n          const blobUrl = URL.createObjectURL(await resp.blob())\n          const link = document.createElement('a')\n\n          link.href = blobUrl\n          link.setAttribute('download', decodeURI(url.split('/').pop()))\n\n          link.click()\n\n          URL.revokeObjectURL(blobUrl)\n        })\n      }\n    })\n\n    fileRequests.reduce(\n      (prevPromise, request) => prevPromise.then(() => request()),\n      Promise.resolve()\n    ).finally(() => {\n      this.toggleState()\n    })\n  }\n\n  downloadSafariIos (urls) {\n    const fileRequests = urls.map((url) => {\n      return fetch(url).then(async (resp) => {\n        const blob = await resp.blob()\n        const blobUrl = URL.createObjectURL(blob.slice(0, blob.size, 'application/octet-stream'))\n        const link = document.createElement('a')\n\n        link.href = blobUrl\n        link.setAttribute('download', decodeURI(url.split('/').pop()))\n\n        return link\n      })\n    })\n\n    Promise.all(fileRequests).then((links) => {\n      links.forEach((link, index) => {\n        setTimeout(() => {\n          link.click()\n\n          URL.revokeObjectURL(link.href)\n        }, index * 50)\n      })\n    }).finally(() => {\n      this.toggleState()\n    })\n  }\n})\n","export default class extends HTMLElement {\n  connectedCallback () {\n    if (this.dataset.inputId) {\n      document.getElementById(this.dataset.inputId).value = document.location.origin\n    }\n  }\n}\n","export default class extends HTMLElement {\n  connectedCallback () {\n    if (this.dataset.inputId) {\n      const timezone = Intl.DateTimeFormat().resolvedOptions().timeZone\n\n      if (this.dataset.params === 'true') {\n        const params = new URLSearchParams(this.input.value)\n\n        params.set('timezone', timezone)\n\n        this.input.value = params.toString()\n      } else {\n        this.input.value = timezone\n      }\n    }\n  }\n\n  get input () {\n    return document.getElementById(this.dataset.inputId)\n  }\n}\n","export default class extends HTMLElement {\n  connectedCallback () {\n    this.resize()\n\n    this.textarea.addEventListener('input', () => this.resize())\n  }\n\n  resize () {\n    if (this.textarea.clientHeight < this.textarea.scrollHeight) {\n      this.textarea.style.height = `${this.textarea.scrollHeight + 5}px`\n    }\n  }\n\n  get textarea () {\n    return this.querySelector('textarea')\n  }\n}\n","import autocomplete from 'autocompleter'\n\nexport default class extends HTMLElement {\n  connectedCallback () {\n    autocomplete({\n      input: this.input,\n      preventSubmit: 1,\n      minLength: 1,\n      showOnFocus: true,\n      debounceWaitMs: 200,\n      onSelect: this.onSelect,\n      render: this.render,\n      fetch: this.fetch\n    })\n  }\n\n  onSelect = (item) => {\n    const fields = ['email', 'name', 'phone']\n    const submitterItemEl = this.closest('submitter-item')\n\n    fields.forEach((field) => {\n      const input = submitterItemEl.querySelector(`submitters-autocomplete[data-field=\"${field}\"] input`)\n      const textarea = submitterItemEl.querySelector(`submitters-autocomplete[data-field=\"${field}\"] textarea`)\n\n      if (input && item[field]) {\n        input.value = item[field]\n        input.dispatchEvent(new CustomEvent('linked-input.update', { bubbles: true }))\n      }\n\n      if (textarea && item[field]) {\n        textarea.value = textarea.value.replace(/[^;,\\s]+$/, item[field] + ' ')\n\n        textarea.dispatchEvent(new Event('input', { bubbles: true }))\n      }\n    })\n  }\n\n  fetch = (text, resolve) => {\n    const q = text.split(/[;,\\s]+/).pop().trim()\n\n    if (q) {\n      const queryParams = new URLSearchParams({ q, field: this.dataset.field })\n\n      this.currentFetch ||= fetch('/submitters_autocomplete?' + queryParams)\n\n      this.currentFetch.then(async (resp) => {\n        const items = await resp.json()\n\n        resolve(items)\n      }).catch(() => {\n        resolve([])\n      }).finally(() => {\n        this.currentFetch = null\n      })\n    } else {\n      resolve([])\n    }\n  }\n\n  render = (item) => {\n    const div = document.createElement('div')\n\n    div.setAttribute('dir', 'auto')\n\n    div.textContent = item[this.dataset.field]\n\n    return div\n  }\n\n  get input () {\n    return this.querySelector('input') || this.querySelector('textarea')\n  }\n}\n","import autocomplete from 'autocompleter'\n\nexport default class extends HTMLElement {\n  connectedCallback () {\n    autocomplete({\n      input: this.input,\n      preventSubmit: this.dataset.submitOnSelect === 'true' ? 0 : 1,\n      minLength: 0,\n      showOnFocus: true,\n      onSelect: this.onSelect,\n      render: this.render,\n      fetch: this.fetch\n    })\n  }\n\n  onSelect = (item) => {\n    this.input.value = item.name\n  }\n\n  fetch = (text, resolve) => {\n    const queryParams = new URLSearchParams({ q: text })\n\n    fetch('/template_folders_autocomplete?' + queryParams).then(async (resp) => {\n      const items = await resp.json()\n\n      resolve(items)\n    }).catch(() => {\n      resolve([])\n    })\n  }\n\n  render = (item) => {\n    const div = document.createElement('div')\n\n    div.setAttribute('dir', 'auto')\n\n    div.textContent = item.name\n\n    return div\n  }\n\n  get input () {\n    return this.querySelector('input')\n  }\n}\n","import { target, targetable } from '@github/catalyst/lib/targetable'\nimport { cropCanvasAndExportToPNG } from '../submission_form/crop_canvas'\n\nexport default targetable(class extends HTMLElement {\n  static [target.static] = ['canvas', 'input', 'clear', 'button']\n\n  async connectedCallback () {\n    const scale = 3\n\n    this.canvas.width = this.canvas.parentNode.clientWidth * scale\n    this.canvas.height = this.canvas.parentNode.clientHeight * scale\n\n    this.canvas.getContext('2d').scale(scale, scale)\n\n    const { default: SignaturePad } = await import('signature_pad')\n\n    this.pad = new SignaturePad(this.canvas)\n\n    this.clear.addEventListener('click', (e) => {\n      e.preventDefault()\n\n      this.pad.clear()\n    })\n\n    this.button.addEventListener('click', (e) => {\n      e.preventDefault()\n\n      this.button.disabled = true\n\n      this.submit()\n    })\n  }\n\n  async submit () {\n    const blob = await cropCanvasAndExportToPNG(this.canvas)\n    const file = new File([blob], 'signature.png', { type: 'image/png' })\n\n    const dataTransfer = new DataTransfer()\n\n    dataTransfer.items.add(file)\n\n    this.input.files = dataTransfer.files\n\n    if (this.input.webkitEntries.length) {\n      this.input.dataset.file = `${dataTransfer.files[0].name}`\n    }\n\n    this.closest('form').requestSubmit()\n  }\n})\n","function cropCanvasAndExportToPNG (canvas, { errorOnTooSmall } = { errorOnTooSmall: false }) {\n  const ctx = canvas.getContext('2d')\n\n  const width = canvas.width\n  const height = canvas.height\n\n  let topmost = height\n  let bottommost = 0\n  let leftmost = width\n  let rightmost = 0\n\n  const imageData = ctx.getImageData(0, 0, width, height)\n  const pixels = imageData.data\n\n  for (let y = 0; y < height; y++) {\n    for (let x = 0; x < width; x++) {\n      const pixelIndex = (y * width + x) * 4\n      const alpha = pixels[pixelIndex + 3]\n      if (alpha !== 0) {\n        topmost = Math.min(topmost, y)\n        bottommost = Math.max(bottommost, y)\n        leftmost = Math.min(leftmost, x)\n        rightmost = Math.max(rightmost, x)\n      }\n    }\n  }\n\n  const croppedWidth = rightmost - leftmost + 1\n  const croppedHeight = bottommost - topmost + 1\n\n  const croppedCanvas = document.createElement('canvas')\n  croppedCanvas.width = croppedWidth\n  croppedCanvas.height = croppedHeight\n  const croppedCtx = croppedCanvas.getContext('2d')\n\n  if (errorOnTooSmall && (croppedWidth < 20 || croppedHeight < 20)) {\n    return Promise.reject(new Error('Image too small'))\n  }\n\n  croppedCtx.drawImage(canvas, leftmost, topmost, croppedWidth, croppedHeight, 0, 0, croppedWidth, croppedHeight)\n\n  return new Promise((resolve, reject) => {\n    croppedCanvas.toBlob((blob) => {\n      if (blob) {\n        resolve(blob)\n      } else {\n        reject(new Error('Failed to create a PNG blob.'))\n      }\n    }, 'image/png')\n  })\n}\n\nexport { cropCanvasAndExportToPNG }\n","export default class extends HTMLElement {\n  connectedCallback () {\n    this.querySelector('form').requestSubmit()\n  }\n}\n","export default class extends HTMLElement {\n  connectedCallback () {\n    const input = document.createElement('input')\n\n    input.type = 'hidden'\n    input.name = 'password'\n    input.value = prompt('Enter PDF password')\n\n    this.form.append(input)\n\n    this.form.requestSubmit()\n\n    this.remove()\n  }\n\n  get form () {\n    return this.closest('form')\n  }\n}\n","const emailRegexp = /([^@;,<>\\s]+@[^@;,<>\\s]+)/g\n\nexport default class extends HTMLElement {\n  connectedCallback () {\n    if (this.dataset.limit) {\n      this.textarea.addEventListener('input', () => {\n        const emails = this.textarea.value.match(emailRegexp) || []\n\n        this.updateCounter(emails.length)\n      })\n    }\n  }\n\n  updateCounter (count) {\n    let counter = document.getElementById('emails_counter')\n    let bulkMessage = document.getElementById('bulk_message')\n\n    if (count < 2) {\n      counter?.remove()\n\n      return\n    }\n\n    if ((count + 10) > this.dataset.limit) {\n      if (!counter) {\n        counter = document.createElement('span')\n\n        counter.id = 'emails_counter'\n        counter.classList.add('text-xs', 'right-0', 'absolute')\n        counter.style.bottom = '-15px'\n\n        this.textarea.parentNode.append(counter)\n      }\n\n      counter.innerText = `${count} / ${this.dataset.limit}`\n    }\n\n    if (this.dataset.bulkEnabled !== 'true') {\n      if (!bulkMessage) {\n        bulkMessage = document.createElement('span')\n\n        bulkMessage.id = 'bulk_message'\n        bulkMessage.classList.add('text-xs', 'left-0', 'absolute')\n        bulkMessage.style.bottom = '-15px'\n\n        this.textarea.parentNode.append(bulkMessage)\n      }\n\n      bulkMessage.innerHTML = '<a class=\"link\" data-turbo=\"false\" href=\"/upgrade\">Upgrade</a> to bulk send multiple recipients'\n    }\n  }\n\n  get textarea () {\n    return this.querySelector('textarea')\n  }\n}\n","export default class extends HTMLElement {\n  connectedCallback () {\n    document.addEventListener('turbo:submit-end', this.onSubmitEnd)\n\n    this.form.addEventListener('submit', this.onSubmit)\n  }\n\n  disconnectedCallback () {\n    document.removeEventListener('turbo:submit-end', this.onSubmitEnd)\n\n    this.form.removeEventListener('submit', this.onSubmit)\n  }\n\n  onSubmit = () => {\n    this.element.classList.add('invisible')\n  }\n\n  onSubmitEnd = (event) => {\n    if (event.target === this.form) {\n      const resp = event.detail?.formSubmission?.result?.fetchResponse?.response\n\n      if (resp?.status / 100 === 2) {\n        this.element.classList.remove('invisible')\n      }\n    }\n  }\n\n  get element () {\n    return document.getElementById(this.dataset.elementId)\n  }\n\n  get form () {\n    return this.closest('form')\n  }\n}\n","import { target, targetable } from '@github/catalyst/lib/targetable'\n\nexport default targetable(class extends HTMLElement {\n  static [target.static] = [\n    'visiblePasswordIcon',\n    'hiddenPasswordIcon',\n    'passwordInput',\n    'togglePasswordVisibility'\n  ]\n\n  connectedCallback () {\n    this.togglePasswordVisibility.addEventListener('click', this.handleTogglePasswordVisibility)\n    document.addEventListener('turbo:submit-start', this.setInitialPasswordType)\n  }\n\n  disconnectedCallback () {\n    this.togglePasswordVisibility.removeEventListener('click', this.handleTogglePasswordVisibility)\n    document.removeEventListener('turbo:submit-start', this.setInitialPasswordType)\n  }\n\n  handleTogglePasswordVisibility = () => {\n    this.passwordInput.type = this.passwordInput.type === 'password' ? 'text' : 'password'\n    this.toggleIcon()\n  }\n\n  setInitialPasswordType = () => {\n    this.passwordInput.type = 'password'\n    this.toggleIcon()\n  }\n\n  toggleIcon = () => {\n    this.visiblePasswordIcon.classList.toggle('hidden', this.passwordInput.type === 'password')\n    this.hiddenPasswordIcon.classList.toggle('hidden', this.passwordInput.type === 'text')\n  }\n})\n","export default class extends HTMLElement {\n  connectedCallback() {\n    this.setupEventListeners();\n    this.setupKeyboardShortcuts();\n  }\n\n  setupEventListeners() {\n    // Focus handling\n    this.input.addEventListener(\"focus\", () => {\n      if (this.title) {\n        this.title.classList.add(\"hidden\", \"md:block\");\n      }\n      this.closest(\"form\").classList.add(\"bg-base-200/50\");\n\n      // Show the real placeholder and hide the custom placeholder\n      this.input.placeholder = this.input.dataset.placeholder;\n      if (this.customPlaceholder) {\n        this.customPlaceholder.classList.add(\"opacity-0\");\n      }\n    });\n\n    this.input.addEventListener(\"blur\", (e) => {\n      if (this.title && !e.target.value) {\n        this.title.classList.remove(\"hidden\");\n      }\n\n      // Hide the real placeholder and show the custom placeholder if input is empty\n      if (!e.target.value) {\n        this.input.placeholder = \"\";\n        if (this.customPlaceholder) {\n          this.customPlaceholder.classList.remove(\"opacity-0\");\n        }\n      }\n\n      // Small delay to allow for clicking the search button\n      setTimeout(() => {\n        if (document.activeElement !== this.searchButton) {\n          this.closest(\"form\").classList.remove(\"bg-base-200/50\");\n        }\n      }, 100);\n    });\n\n    // Add clear button functionality when typing\n    this.input.addEventListener(\"input\", () => {\n      this.updateClearButtonVisibility();\n\n      // Hide custom placeholder when typing\n      if (this.customPlaceholder && this.input.value) {\n        this.customPlaceholder.classList.add(\"opacity-0\");\n      } else if (this.customPlaceholder && !this.input.value) {\n        this.customPlaceholder.classList.remove(\"opacity-0\");\n      }\n    });\n  }\n\n  setupKeyboardShortcuts() {\n    // Global keyboard shortcut (Ctrl+K or Cmd+K) to focus search\n    document.addEventListener(\"keydown\", (e) => {\n      // Check if Ctrl+K or Cmd+K is pressed and not in an input field\n      if (\n        (e.ctrlKey || e.metaKey) &&\n        e.key === \"k\" &&\n        ![\"INPUT\", \"TEXTAREA\", \"SELECT\"].includes(\n          document.activeElement.tagName\n        )\n      ) {\n        e.preventDefault();\n        this.input.focus();\n      }\n\n      // Escape key to blur search when focused\n      if (e.key === \"Escape\" && document.activeElement === this.input) {\n        this.input.blur();\n        this.input.value = \"\";\n        this.updateClearButtonVisibility();\n      }\n    });\n  }\n\n  updateClearButtonVisibility() {\n    const clearButton = this.closest(\"form\").querySelector(\n      \"a[title=\\\"<%= t('clear') %>\\\"]\"\n    );\n    if (clearButton && this.input.value) {\n      if (!clearButton.parentElement.classList.contains(\"visible\")) {\n        const buttonContainer = document.createElement(\"div\");\n        buttonContainer.className = \"absolute right-3\";\n        buttonContainer.innerHTML = `\n          <a href=\"${window.location.pathname}\" \n             title=\"Clear\" \n             class=\"flex items-center justify-center w-6 h-6 text-neutral-content/70 hover:text-error hover:bg-base-300 rounded-full transition-colors\">\n            <span aria-hidden=\"true\">&times;</span>\n          </a>\n        `;\n        this.closest(\"form\").appendChild(buttonContainer);\n\n        // Add click event to the new clear button\n        buttonContainer.querySelector(\"a\").addEventListener(\"click\", (e) => {\n          e.preventDefault();\n          this.input.value = \"\";\n          this.input.focus();\n          buttonContainer.remove();\n        });\n      }\n    } else if (clearButton && !this.input.value) {\n      clearButton.parentElement.classList.add(\"hidden\");\n    }\n  }\n\n  get input() {\n    return this.querySelector(\"input\");\n  }\n\n  get title() {\n    return document.querySelector(this.dataset.title);\n  }\n\n  get searchButton() {\n    return this.closest(\"form\").querySelector('button[type=\"submit\"]');\n  }\n\n  get customPlaceholder() {\n    return this.querySelector(\".search-placeholder\");\n  }\n}\n","export default class extends HTMLElement {\n  connectedCallback () {\n    this.input.addEventListener('change', (event) => {\n      if (this.dataset.attribute) {\n        this.target[this.dataset.attribute] = event.target.checked\n      }\n\n      if (this.dataset.className) {\n        this.target.classList.toggle(this.dataset.className, event.target.value !== this.dataset.value)\n        if (this.dataset.className === 'hidden' && this.target.tagName === 'INPUT') {\n          this.target.disabled = event.target.value !== this.dataset.value\n        }\n      }\n\n      if (this.dataset.attribute === 'disabled') {\n        this.target.value = ''\n      }\n    })\n  }\n\n  get input () {\n    return this.querySelector('input[type=\"checkbox\"]') || this.querySelector('select')\n  }\n\n  get target () {\n    return document.getElementById(this.dataset.targetId)\n  }\n}\n","export default class extends HTMLElement {\n  connectedCallback () {\n    if (this.target) {\n      this.input.value = this.target.value\n\n      this.target.addEventListener('input', (e) => {\n        this.input.value = e.target.value\n      })\n\n      this.target.addEventListener('linked-input.update', (e) => {\n        this.input.value = e.target.value\n      })\n    }\n  }\n\n  get input () {\n    return this.querySelector('input')\n  }\n\n  get target () {\n    if (this.dataset.targetId) {\n      const listItem = this.closest('[data-targets=\"dynamic-list.items\"]')\n\n      if (listItem) {\n        return listItem.querySelector(`#${this.dataset.targetId}`)\n      } else {\n        return document.getElementById(this.dataset.targetId)\n      }\n    }\n  }\n}\n","export default class extends HTMLElement {\n  connectedCallback () {\n    this.items.forEach((item) => {\n      item.addEventListener('change', (e) => {\n        this.items.forEach((item) => {\n          item.checked = item === e.target && e.target.checked\n        })\n      })\n    })\n  }\n\n  get items () {\n    return this.querySelectorAll('input[type=\"checkbox\"]')\n  }\n}\n","export default class extends HTMLElement {\n  connectedCallback () {\n    const maskedToken = this.input.value\n\n    this.input.addEventListener('focus', () => {\n      this.input.value = this.dataset.token\n      this.input.select()\n    })\n\n    this.input.addEventListener('focusout', () => {\n      this.input.value = maskedToken\n    })\n  }\n\n  get input () {\n    return this.querySelector('input')\n  }\n}\n","export default class extends HTMLElement {\n  connectedCallback () {\n    this.button.addEventListener('click', () => {\n      this.fromInput.value = this.dataset.fromValue || ''\n      this.toInput.value = this.dataset.toValue || ''\n    })\n  }\n\n  get button () {\n    return this.querySelector('button')\n  }\n\n  get fromInput () {\n    return document.getElementById(this.dataset.fromId)\n  }\n\n  get toInput () {\n    return document.getElementById(this.dataset.toId)\n  }\n}\n","export default class extends HTMLElement {\n  initalRender = true;\n  connectedCallback() {\n    console.log(\"connectedCallback\");\n    console.log(this);\n    const sendEmailCheckbox = this.closest(\"form\").querySelector(\n      \".email-form-checkbox\",\n    );\n    console.log(sendEmailCheckbox);\n    if (sendEmailCheckbox) {\n      sendEmailCheckbox.addEventListener(\n        \"change\",\n        this.toggleEmailOptions.bind(this),\n      );\n      this.toggleEmailOptions({ target: sendEmailCheckbox });\n    }\n  }\n\n  toggleEmailOptions(event) {\n    console.log(\"toggleEmailOptions\");\n    const isChecked = event.target.checked;\n    console.log(isChecked);\n    console.log(this);\n    const editMessage = this.querySelector(\".email-form-edit-message\");\n    const buttonText = this.querySelector(\"[data-email-form-button-text]\");\n    const messageField = this.querySelector(\".email-form-message\");\n\n    console.log(\"editMessage\", editMessage);\n    if (editMessage) {\n      editMessage.style.display = isChecked ? \"block\" : \"none\";\n    }\n\n    if (buttonText) {\n      buttonText.textContent = isChecked ? \"Send\" : \"Add Recipients\";\n    }\n\n\n    if (\n      messageField &&\n      !isChecked &&\n      !messageField.classList.contains(\"hidden\")\n    ) {\n      messageField.classList.add(\"hidden\");\n    }\n\n    if (\n      messageField &&\n      isChecked &&\n      messageField.classList.contains(\"hidden\")\n    ) {\n      if (this.initalRender) {\n        this.initalRender = false;\n        return;\n      }\n      messageField.classList.remove(\"hidden\");\n      editMessage.style.display = \"none\";\n\n    }\n  }\n\n  disconnectedCallback() {\n    const sendEmailCheckbox = this.closest(\"form\").querySelector(\n      'input[name=\"submission[send_email]\"]',\n    );\n    if (sendEmailCheckbox) {\n      sendEmailCheckbox.removeEventListener(\n        \"change\",\n        this.toggleEmailOptions.bind(this),\n      );\n    }\n  }\n}\n","const requestCache = new Map()\nconst cacheTtl = 10 * 1000\n\nfunction isPreloadable (linkElement) {\n  const href = linkElement.getAttribute('href')\n\n  if (!href || href === '#' || linkElement.dataset.turbo === 'false' || linkElement.dataset.prefetch === 'false') {\n    return\n  }\n\n  if (linkElement.origin !== document.location.origin) {\n    return\n  }\n\n  if (!['http:', 'https:'].includes(linkElement.protocol)) {\n    return\n  }\n\n  if (linkElement.pathname + linkElement.search === document.location.pathname + document.location.search) {\n    return\n  }\n\n  if (linkElement.dataset.turboMethod && linkElement.dataset.turboMethod !== 'get') {\n    return\n  }\n\n  return true\n}\n\nfunction mouseoverListener (event) {\n  let linkElement\n\n  if (event.target.tagName === 'A') {\n    linkElement = event.target\n  } else {\n    linkElement = event.target.closest('a')\n  }\n\n  if (!linkElement) {\n    return\n  }\n\n  if (!isPreloadable(linkElement)) {\n    return\n  }\n\n  const url = linkElement.getAttribute('href')\n  const loc = new URL(url, location.protocol + '//' + location.host)\n  const absoluteUrl = loc.toString()\n\n  const cached = requestCache.get(absoluteUrl)\n\n  if (cached && cached.ttl > new Date()) {\n    return\n  }\n\n  const requestOptions = {\n    credentials: 'same-origin',\n    headers: { Accept: 'text/html, application/xhtml+xml', 'VND.PREFETCH': 'true' },\n    method: 'GET',\n    redirect: 'follow'\n  }\n\n  if (linkElement.dataset.turboFrame && linkElement.dataset.turboFrame !== '_top') {\n    requestOptions.headers['Turbo-Frame'] = linkElement.dataset.turboFrame\n  } else if (linkElement.dataset.turboFrame !== '_top') {\n    const turboFrame = linkElement.closest('turbo-frame')\n\n    if (turboFrame) {\n      requestOptions.headers['Turbo-Frame'] = turboFrame.id\n    }\n  }\n\n  requestCache.set(absoluteUrl, { request: fetch(absoluteUrl, requestOptions), ttl: new Date(new Date().getTime() + cacheTtl) })\n}\n\nfunction turboBeforeFetchRequest (event) {\n  if (event.target.tagName !== 'FORM' && event.detail.fetchOptions.method === 'GET') {\n    const cached = requestCache.get(event.detail.url.toString())\n\n    if (cached && cached.ttl > new Date()) {\n      event.detail.response = cached.request\n    }\n  }\n\n  requestCache.clear()\n}\n\nfunction start () {\n  if (!window.turboInstantClickEnabled) {\n    document.addEventListener('turbo:before-fetch-request', turboBeforeFetchRequest)\n    document.addEventListener('mouseover', mouseoverListener, { capture: true, passive: true })\n  }\n\n  window.turboInstantClickEnabled = true\n}\n\nexport { start }\n","import clarity from \"@microsoft/clarity\";\n\nexport const initClarity = (projectId) => {\n  console.log('initClarity')\nclarity.init(\"pxxaer3wi3\");\nconsole.log('clarity', clarity)\n\n}; ","import '@hotwired/turbo'\nimport { encodeMethodIntoRequestBody } from '@hotwired/turbo-rails/app/javascript/turbo/fetch_requests'\nimport { initClarity } from './lib/clarity'\n\n\nimport { createApp, reactive } from 'vue'\nimport TemplateBuilder from './template_builder/builder'\nimport ImportList from './template_builder/import_list'\n\nimport ToggleVisible from './elements/toggle_visible'\nimport ToggleCookies from './elements/toggle_cookies'\nimport DisableHidden from './elements/disable_hidden'\nimport TurboModal from './elements/turbo_modal'\nimport FileDropzone from './elements/file_dropzone'\nimport MenuActive from './elements/menu_active'\nimport ApplyDiscountCode from './elements/apply_discount_code'\nimport PurchasePlan from './elements/purchase_plan'\nimport ClipboardCopy from './elements/clipboard_copy'\nimport DynamicList from './elements/dynamic_list'\nimport DownloadButton from './elements/download_button'\nimport SetOriginUrl from './elements/set_origin_url'\nimport SetTimezone from './elements/set_timezone'\nimport AutoresizeTextarea from './elements/autoresize_textarea'\nimport SubmittersAutocomplete from './elements/submitter_autocomplete'\nimport FolderAutocomplete from './elements/folder_autocomplete'\nimport SignatureForm from './elements/signature_form'\nimport SubmitForm from './elements/submit_form'\nimport PromptPassword from './elements/prompt_password'\nimport EmailsTextarea from './elements/emails_textarea'\nimport ToggleOnSubmit from './elements/toggle_on_submit'\nimport PasswordInput from './elements/password_input'\nimport SearchInput from './elements/search_input'\nimport ToggleAttribute from './elements/toggle_attribute'\nimport LinkedInput from './elements/linked_input'\nimport CheckboxGroup from './elements/checkbox_group'\nimport MaskedInput from './elements/masked_input'\nimport SetDateButton from './elements/set_date_button'\nimport EmailForm from './elements/email_form'\nimport * as TurboInstantClick from './lib/turbo_instant_click'\n\nimport './images/preview.png'\n\nTurboInstantClick.start()\n\ninitClarity()\n\ndocument.addEventListener('turbo:before-cache', () => {\n  window.flash?.remove()\n})\n\ndocument.addEventListener('keyup', (e) => {\n  if (e.code === 'Escape') {\n    document.activeElement?.blur()\n  }\n})\n\ndocument.addEventListener('turbo:before-fetch-request', encodeMethodIntoRequestBody)\ndocument.addEventListener('turbo:submit-end', async (event) => {\n  const resp = event.detail?.formSubmission?.result?.fetchResponse?.response\n\n  if (!resp?.headers?.get('content-disposition')?.includes('attachment')) {\n    return\n  }\n\n  const url = URL.createObjectURL(await resp.blob())\n  const link = document.createElement('a')\n\n  link.href = url\n  link.setAttribute('download', decodeURIComponent(resp.headers.get('content-disposition').split('\"')[1]))\n\n  document.body.appendChild(link)\n\n  link.click()\n\n  document.body.removeChild(link)\n\n  URL.revokeObjectURL(url)\n})\n\nconst safeRegisterElement = (name, element, options = {}) => !window.customElements.get(name) && window.customElements.define(name, element, options)\n\nsafeRegisterElement('toggle-visible', ToggleVisible)\nsafeRegisterElement('disable-hidden', DisableHidden)\nsafeRegisterElement('turbo-modal', TurboModal)\nsafeRegisterElement('file-dropzone', FileDropzone)\nsafeRegisterElement('menu-active', MenuActive)\nsafeRegisterElement('apply-discount-code', ApplyDiscountCode)\nsafeRegisterElement('purchase-plan', PurchasePlan)\nsafeRegisterElement('clipboard-copy', ClipboardCopy)\nsafeRegisterElement('dynamic-list', DynamicList)\nsafeRegisterElement('download-button', DownloadButton)\nsafeRegisterElement('set-origin-url', SetOriginUrl)\nsafeRegisterElement('set-timezone', SetTimezone)\nsafeRegisterElement('autoresize-textarea', AutoresizeTextarea)\nsafeRegisterElement('submitters-autocomplete', SubmittersAutocomplete)\nsafeRegisterElement('folder-autocomplete', FolderAutocomplete)\nsafeRegisterElement('signature-form', SignatureForm)\nsafeRegisterElement('submit-form', SubmitForm)\nsafeRegisterElement('prompt-password', PromptPassword)\nsafeRegisterElement('emails-textarea', EmailsTextarea)\nsafeRegisterElement('toggle-cookies', ToggleCookies)\nsafeRegisterElement('toggle-on-submit', ToggleOnSubmit)\nsafeRegisterElement('password-input', PasswordInput)\nsafeRegisterElement('search-input', SearchInput)\nsafeRegisterElement('toggle-attribute', ToggleAttribute)\nsafeRegisterElement('linked-input', LinkedInput)\nsafeRegisterElement('checkbox-group', CheckboxGroup)\nsafeRegisterElement('masked-input', MaskedInput)\nsafeRegisterElement('set-date-button', SetDateButton)\nsafeRegisterElement('purchase-plan', PurchasePlan)\nsafeRegisterElement('email-form', EmailForm)\nsafeRegisterElement('template-builder', class extends HTMLElement {\n  connectedCallback () {\n    document.addEventListener('turbo:submit-end', this.onSubmit)\n\n    this.appElem = document.createElement('div')\n\n    this.appElem.classList.add('md:h-screen')\n\n    this.app = createApp(TemplateBuilder, {\n      template: reactive(JSON.parse(this.dataset.template)),\n      backgroundColor: '#faf7f5',\n      locale: this.dataset.locale,\n      withPhone: this.dataset.withPhone === 'true',\n      withVerification: ['true', 'false'].includes(this.dataset.withVerification) ? this.dataset.withVerification === 'true' : null,\n      withLogo: this.dataset.withLogo !== 'false',\n      editable: this.dataset.editable !== 'false',\n      authenticityToken: document.querySelector('meta[name=\"csrf-token\"]')?.content,\n      withPayment: this.dataset.withPayment === 'true',\n      isPaymentConnected: this.dataset.isPaymentConnected === 'true',\n      withFormula: this.dataset.withFormula === 'true',\n      withSendButton: this.dataset.withSendButton !== 'false',\n      withSignYourselfButton: this.dataset.withSignYourselfButton !== 'false',\n      withConditions: this.dataset.withConditions === 'true',\n      currencies: (this.dataset.currencies || '').split(',').filter(Boolean),\n      acceptFileTypes: this.dataset.acceptFileTypes\n    })\n\n    this.component = this.app.mount(this.appElem)\n\n    this.appendChild(this.appElem)\n  }\n\n  onSubmit = (e) => {\n    if (e.detail.success && e.detail?.formSubmission?.formElement?.id === 'submitters_form') {\n      e.detail.fetchResponse.response.json().then((data) => {\n        this.component.template.submitters = data.submitters\n      })\n    }\n  }\n\n  disconnectedCallback () {\n    document.removeEventListener('turbo:submit-end', this.onSubmit)\n\n    this.app?.unmount()\n    this.appElem?.remove()\n  }\n})\n\nsafeRegisterElement('import-list', class extends HTMLElement {\n  connectedCallback () {\n    this.appElem = document.createElement('div')\n\n    this.app = createApp(ImportList, {\n      template: JSON.parse(this.dataset.template),\n      multitenant: this.dataset.multitenant === 'true',\n      authenticityToken: document.querySelector('meta[name=\"csrf-token\"]')?.content,\n      i18n: JSON.parse(this.dataset.i18n || '{}')\n    })\n\n    this.app.mount(this.appElem)\n\n    this.appendChild(this.appElem)\n  }\n\n  disconnectedCallback () {\n    this.app?.unmount()\n    this.appElem?.remove()\n  }\n})\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"js/\" + chunkId + \"-\" + \"2fc3e049c5629b353e72\" + \".chunk.js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = (chunkId) => {\n\t// return url for filenames based on template\n\treturn undefined;\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"/packs/\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t543: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkdocuseal\"] = self[\"webpackChunkdocuseal\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\n__webpack_require__.O(undefined, [410], () => (__webpack_require__(4903)))\nvar __webpack_exports__ = __webpack_require__.O(undefined, [410], () => (__webpack_require__(8115)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","key","class","href","ref","name","components","IconUpload","IconInnerShadowTop","inject","props","templateId","type","Number","String","required","acceptFileTypes","default","emits","data","isLoading","isProcessing","computed","inputId","Math","random","toString","split","methods","upload","this","baseFetch","method","body","FormData","$refs","form","then","resp","ok","json","$emit","input","value","status","formData","append","prompt","t","async","alert","finally","_createElementBlock","_createCommentVNode","IconCloudUpload","message","Upload","onDropFiles","e","dataTransfer","files","every","f","match","onDragover","_cache","_withModifiers","onDrop","args","$options","_createElementVNode","id","_normalizeClass","$data","for","_hoisted_2","_hoisted_3","_createBlock","_component_IconInnerShadowTop","width","height","_component_IconCloudUpload","_hoisted_4","_toDisplayString","_hoisted_5","_hoisted_6","_createTextVNode","_hoisted_7","accept","$props","multiple","onChange","_hoisted_8","_hoisted_1","style","backgroundColor","IconPencil","modelValue","iconInline","Boolean","iconWidth","withRequired","selectOnEditClick","editable","iconStrokeWidth","watch","handler","immediate","onPaste","text","clipboardData","window","getData","selection","$el","getRootNode","getSelection","rangeCount","deleteFromDocument","getRangeAt","insertNode","document","createTextNode","collapseToEnd","selectContent","el","contenteditable","range","createRange","selectNodeContents","sel","removeAllRanges","addRange","onBlur","setTimeout","innerText","trim","focusContenteditable","focus","blurContenteditable","blur","dir","onKeydown","_withKeys","onFocus","$event","_ctx","title","onClick","_createVNode","_component_IconPencil","invisible","_normalizeStyle","right","menuClasses","menuStyle","Object","buttonClasses","buttonWidth","renderDropdown","fieldNames","heading","signature","initials","date","number","image","file","select","checkbox","radio","cells","stamp","payment","phone","verification","fieldLabels","fieldIcons","IconHeading","IconTextSize","IconSignature","IconLetterCaseLower","IconCalendarEvent","IconSquareNumber1","IconPhoto","IconCheckbox","IconChecks","IconPaperclip","IconCircleDot","IconSelect","IconColumns3","IconRubberStamp","IconCreditCard","IconPhoneCheck","IconId","fieldIconsSorted","fieldTypes","length","reduce","acc","fromEntries","entries","filter","closeDropdown","activeElement","onMouseenter","onTouchstart","_renderSlot","$slots","tabindex","_resolveDynamicComponent","_Fragment","_renderList","icon","includes","withPhone","withPayment","withVerification","action","target","isConnected","IconSettings","IconCircleCheck","IconRouteAltLeft","IconInfoCircle","IconMathFunction","IconBrandStripe","field","isOauthSuccess","location","search","redirectUri","origin","defaultCurrencies","currenciesList","currencies","authenticityToken","querySelector","content","oauthState","params","URLSearchParams","set","defaultCurrency","userTimezone","Intl","DateTimeFormat","resolvedOptions","timeZone","startsWith","created","preferences","mounted","currency","isPaymentConnected","checkStatus","fetch","price","formula","_component_IconSettings","draggable","onDragstart","placeholder","save","disabled","price_id","_component_IconCircleCheck","autocomplete","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_13","_hoisted_14","_component_IconBrandStripe","_hoisted_12","_hoisted_15","_hoisted_16","_component_IconMathFunction","_hoisted_17","_component_IconInfoCircle","_hoisted_18","_hoisted_19","_component_IconRouteAltLeft","_hoisted_20","IconShape","IconCopy","IconNewSection","IconX","defaultField","withAreas","schemaAttachmentsIndexes","template","schema","item","index","attachment_uuid","numberFormats","dateFormats","formats","navigator","language","push","format","unshift","validations","sortedAreas","areas","sort","a","b","onChangeValidation","event","validation","pattern","$nextTick","validationCustom","copyToAllPages","areaString","JSON","stringify","documents","forEach","attachment","numberOfPages","metadata","pdf","number_of_pages","preview_images","page","find","area","uuid","parse","formatNumber","NumberFormat","formatDate","parts","day","D","DD","month","M","MM","MMM","MMMM","year","YYYY","YY","formatToParts","replace","p","selected","align","default_value","options","option","Date","_hoisted_21","checked","with_logo","_hoisted_22","_hoisted_23","_hoisted_24","readonly","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","_hoisted_33","_hoisted_34","_component_IconShape","findIndex","_component_IconX","closest","_hoisted_35","_hoisted_36","_component_IconNewSection","_hoisted_37","_component_IconCopy","IconCodePlus","buildDefaultName","Function","fields","submitter_uuid","humanizeFormula","foundField","normalizeFormula","validateSaveAndClose","withFormula","normalizedFormula","insertTextUnderCursor","textToInsert","textarea","cursorPos","selectionEnd","newText","substring","setSelectionRange","resizeTextarea","scrollHeight","_component_IconCodePlus","onInput","conditions","conditionField","condition","field_uuid","conditionActions","fieldActions","actions","withConditions","onSubmit","cindex","operation","splice","description","saveAndClose","Contenteditable","FieldSettings","PaymentSettings","FormulaModal","DescriptionModal","ConditionsModal","IconTrashX","FieldType","isNameFocus","showPaymentModal","isShowFormulaModal","isShowConditionsModal","isShowDescriptionModal","dropdownBgColor","modalContainerEl","defaultName","locale","endsWith","timeZoneName","removeArea","indexOf","formattedPrice","typeIndex","onNameFocus","maybeFocusOnOptionArea","option_uuid","selectedAreaRef","scrollToFirstArea","addOption","v4","inputs","querySelectorAll","removeOption","console","log","maybeUpdateOptions","cell_w","w","floor","h","onNameBlur","_component_FieldType","_component_Contenteditable","onMousedown","_component_PaymentSettings","onClickCondition","onClickDescription","onClickFormula","_component_FieldSettings","onSetDraw","onRemoveArea","onScrollTo","_component_IconTrashX","_Teleport","to","_component_FormulaModal","onClose","_component_ConditionsModal","_component_DescriptionModal","IconUserPlus","IconChevronDown","IconPlus","IconChevronUp","submitters","Array","compact","mobileView","allowAddNew","colors","names","lastPartyIndex","max","map","s","selectedSubmitter","selectSubmitter","submitter","remove","confirm","move","direction","currentIndex","addSubmitter","newSubmitter","_component_IconChevronUp","_component_IconUserPlus","label","xmlns","viewBox","stroke","fill","_createStaticVNode","Field","IconCirclePlus","FieldSubmitter","IconDrag","IconLock","withHelp","defaultFields","defaultRequiredFields","onlyDefinedFields","drawFieldType","defaultSubmitters","withStickySubmitters","defaultFieldsSearch","isShowFieldSearch","submitterDefaultFields","submitterFields","role","filteredSubmitterDefaultFields","toLowerCase","onFieldDragover","targetField","dragField","fieldsDragFieldRef","from","children","after","before","reorderFields","dataset","removeSubmitter","removeField","c","_component_FieldSubmitter","onNewSubmitter","onRemove","onNameChange","_component_Field","onDragend","_component_IconDrag","white","drawField","IconCheck","IconDotsVertical","inputMode","isDraw","withFieldPlaceholder","isContenteditable","isSettingsFocus","isResize","isDragged","isMoved","textOverflowChars","dragFrom","x","y","isDefaultValuePresent","isValueInput","isSelected","alignClasses","center","left","optionIndexText","o","currentWidth","submitterIndex","borderColors","bgColors","positionStyle","top","textContainer","clientHeight","maybeToggleDefaultValue","focusValueInput","maybeToggleCheckboxValue","defaultValue","collapse","firstChild","maybeBlurSettings","relatedTarget","settingsDropdown","contains","minWidth","clientWidth","startResizeCell","addEventListener","onResizeCell","stopResizeCell","removeEventListener","positionX","offsetX","settingsButton","onDefaultValueBlur","parseFloat","onDefaultValueEnter","preventDefault","onNameEnter","resize","offsetY","drag","startTouchDrag","touchTarget","touchValueTarget","rect","getBoundingClientRect","touches","clientX","clientY","touchDrag","stopTouchDrag","$parent","mask","previousSibling","min","startMouseMove","mouseMove","stopMouseMove","stopDrag","startResize","stopResize","startTouchResize","touchResize","stopTouchResize","FieldArea","onPointerdown","cellW","_component_IconDotsVertical","onFocusout","color","_component_IconCheck","char","onDblclick","allowDraw","isDrag","areaRefs","showMask","resizeDirection","newArea","defaultFieldType","defaultDrawFieldType","isMobile","test","userAgent","resizeDirectionClasses","nwse","ew","beforeUpdate","onImageLoad","setAttribute","naturalWidth","naturalHeight","setAreaRefs","maskW","maskH","onStartDraw","initialX","initialY","onPointermove","dx","dy","abs","onPointerup","Page","loading","src","url","onLoad","i","_component_FieldArea","ref_for","onStartResize","onStopResize","areasIndex","baseUrl","pageRefs","basePreviewUrl","URL","sortedPreviewImages","lazyloadMetadata","keys","previewImagesIndex","signed_uuid","parseInt","filename","scrollToArea","scrollIntoView","behavior","block","setPageRefs","_component_Page","onDropField","onDraw","ReplaceButton","withReplaceButton","withArrows","previewImage","onUpdateName","_component_ReplaceButton","onSuccess","replaceSchemaItem","_component_IconPlus","en","verify_id","obtain_qualified_electronic_signature_with_the_trusted_provider_click_to_learn_more","recurrent","one_off","search_field","field_not_found","clear","add_all_required_fields_to_continue","uploaded_pdf_contains_form_fields_keep_or_remove_them","keep","add_blank_page","display_title","unchecked","type_value","equal","not_equal","does_not_contain","not_empty","empty","select_field_","select_value_","remove_condition","add_condition","are_you_sure_","sign_yourself","set_signing_date","signing_date","send","edit","settings","up","down","cancel","any","drawn","typed","draw_field_on_the_document","click_to_upload","or_drag_and_drop_files","uploading","processing_","add_pdf_documents_or_images","add_documents_or_images","read_only","draw_new_area","copy_to_all_pages","add_option","first_party","second_party","third_party","fourth_party","fifth_party","sixth_party","seventh_party","eighth_party","ninth_party","tenth_party","eleventh_party","twelfth_party","thirteenth_party","fourteenth_party","fifteenth_party","sixteenth_party","seventeenth_party","eighteenth_party","nineteenth_party","twentieth_party","draw","add","or_add_field_without_drawing","text_field","signature_field","initials_field","date_field","number_field","image_field","file_field","select_field","checkbox_field","multiple_field","radio_field","cells_field","stamp_field","payment_field","phone_field","draw_a_text_field_on_the_page_with_a_mouse","drag_and_drop_any_other_field_type_on_the_page","click_on_the_field_type_above_to_start_drawing_it","please_draw_fields_to_prepare_the_document","only_pdf_and_images_are_supported","unlock_sms_verified_phone_number_field_with_paid_plan_use_text_field_for_phone_numbers_without_verification","available_only_in_pro","failed_to_download_files","please_add_fields_for_the_submitter_name_or_remove_the_submitter_name_if_not_needed","draw_field","uploading_","add_document","none","ssn","ein","email","zip","custom","numbers_only","letters_only","regexp_validation","enter_pdf_password","wrong_password","save_and_preview","available_in_pro","some_fields_are_missing_in_the_formula","learn_more","and","or","es","it","ricorrente","una_volta","pt","fr","de","wiederkehrend","einmalig","Document","Fields","MobileDrawField","MobileFields","Logo","Dropzone","DocumentPreview","DocumentControls","IconUsersPlus","IconAdjustments","IconEye","IconDeviceFloppy","IconArrowLeft","provide","i18n","withSendButton","withSignYourselfButton","withAddPageButton","autosave","withSelectedFieldType","defineSubmitters","withLogo","onUpload","onSave","withUploadButton","withTitle","withFieldsList","withDocumentsList","fetchOptions","headers","documentRefs","isBreakpointLg","isLoadingBlankPage","isSaving","showDrawField","pendingFieldAttachmentUuids","copiedArea","drawOption","submitterDefaultNames","defaultDateFormat","isUsBrowser","isUsTimezone","localeDateFormats","fieldAreasIndex","isAllRequiredFieldsAdded","some","selectedField","sortedDocuments","doc","existingSubmittersUuids","undoStack","redoStack","onWindowResize","onKeyUp","onKeyDown","pending_fields","unmounted","removePendingFields","addField","startFieldDraw","existingField","undo","pop","stringData","currentStringData","assign","redo","lastRedoData","offsetWidth","setDocumentRefs","scrollIntoDocument","clearDrawField","code","metaKey","shiftKey","ctrlKey","stopImmediatePropagation","pasteField","handleAreaArrows","diff","altKey","debouncedSave","clearTimeout","_saveTimeout","currentArea","pushUndo","setDefaultAreaSize","pageMask","areaWithoutOption","previousArea","insertBeforeAreaIndex","previousField","reverse","areaW","areaH","onDropfield","fieldArea","baseArea","lastArea","addBlankPage","canvas","createElement","ctx","getContext","fillStyle","fillRect","toBlob","blob","File","lastModified","now","updateFromUpload","previews","scrollTop","updateName","onDocumentRemove","removedFieldUuids","onDocumentReplace","moveDocument","maybeShowErrorTemplateAlert","join","submitterWithoutFields","replaceAll","onSaveClick","Turbo","visit","path","force","Promise","resolve","buttons","sticky","_component_Logo","_component_IconFolder","folder_name","slug","_component_IconSignature","_component_IconUsersPlus","_mergeProps","_component_IconArrowLeft","display","_component_DocumentPreview","onReplace","onUp","onDown","_component_Document","_component_DocumentControls","_component_Upload","_component_Dropzone","_component_Fields","onAddField","onSetDrawType","onSetDrag","onChangeSubmitter","onDragEnd","onScrollToArea","_component_MobileDrawField","onCancel","_component_MobileFields","onSelect","IconArrowsHorizontal","multitenant","spreadsheet","selectedSheetIndex","mappings","table","submissionsData","submissions","rows","row","submittersIndex","mapping","field_name","column_index","fieldType","fieldTypesIndex","csvBase64","selectFieldsForSubmitter","csv","btoa","unescape","encodeURIComponent","columns","slice","getElementById","classList","uploadFile","onSelectFile","addMapping","templateFields","buildDefaultMappings","columnIndex","column","m","error","selectWorksheet","sheet","_component_IconArrowsHorizontal","hidden","download","actionable","HTMLElement","trigger","elementIds","elementId","toggle","connectedCallback","button","handleClick","bind","loadingId","loadingElement","expirationDate","setFullYear","getFullYear","expires","toUTCString","cookie","appendChild","submit","static","attributeChangedCallback","attributeName","oldValue","newValue","hasHiddenClass","element","wasRequired","onEscKey","close","closeAfterSubmit","disconnectedCallback","detail","success","formSubmission","formElement","closeOnSubmit","targetable","toggleLoading","uploadFiles","onSelectFiles","submitOnUpload","click","link","pathname","getAttribute","applyDiscountCode","confetti","particleCount","spread","formatPrice","minimumFractionDigits","maximumFractionDigits","updatePlanUI","planElement","discountedPlan","pricePerCredit","credits","textContent","discountCode","discount_code","response","errorMessage","errorMessageText","discounted_plan","originalPlanElement","relates_to","catch","PurchasePlan","setupEventListeners","handlePurchase","currentTarget","planId","payment_link","toast","customElements","define","clearChecked","stopPropagation","clipboard","writeText","tagName","targets","addItem","originalItem","items","duplicateItem","cloneNode","uniqueId","removeAttribute","parentNode","removeItem","downloadFiles","toggleState","defaultButton","loadingButton","urls","downloadSafariIos","downloadUrls","blobUrl","createObjectURL","decodeURI","revokeObjectURL","prevPromise","request","fileRequests","size","all","links","timezone","preventSubmit","minLength","showOnFocus","debounceWaitMs","render","submitterItemEl","dispatchEvent","CustomEvent","bubbles","Event","q","queryParams","currentFetch","div","submitOnSelect","scale","SignaturePad","pad","errorOnTooSmall","topmost","bottommost","leftmost","rightmost","pixels","getImageData","croppedWidth","croppedHeight","croppedCanvas","croppedCtx","reject","Error","drawImage","cropCanvasAndExportToPNG","DataTransfer","webkitEntries","requestSubmit","emailRegexp","limit","emails","updateCounter","count","counter","bulkMessage","bottom","bulkEnabled","innerHTML","onSubmitEnd","result","fetchResponse","togglePasswordVisibility","handleTogglePasswordVisibility","setInitialPasswordType","passwordInput","toggleIcon","visiblePasswordIcon","hiddenPasswordIcon","setupKeyboardShortcuts","customPlaceholder","searchButton","updateClearButtonVisibility","clearButton","parentElement","buttonContainer","className","attribute","targetId","listItem","maskedToken","token","fromInput","fromValue","toInput","toValue","fromId","toId","initalRender","sendEmailCheckbox","toggleEmailOptions","isChecked","editMessage","buttonText","messageField","requestCache","Map","mouseoverListener","linkElement","turbo","prefetch","protocol","turboMethod","isPreloadable","absoluteUrl","host","cached","get","ttl","requestOptions","credentials","Accept","redirect","turboFrame","getTime","turboBeforeFetchRequest","turboInstantClickEnabled","capture","passive","clarity","init","flash","encodeMethodIntoRequestBody","decodeURIComponent","removeChild","safeRegisterElement","ToggleVisible","DisableHidden","TurboModal","FileDropzone","MenuActive","ApplyDiscountCode","ClipboardCopy","DynamicList","DownloadButton","SetOriginUrl","SetTimezone","AutoresizeTextarea","SubmittersAutocomplete","FolderAutocomplete","SignatureForm","SubmitForm","PromptPassword","EmailsTextarea","ToggleCookies","ToggleOnSubmit","PasswordInput","SearchInput","ToggleAttribute","LinkedInput","CheckboxGroup","MaskedInput","SetDateButton","EmailForm","appElem","app","createApp","TemplateBuilder","reactive","component","mount","unmount","ImportList","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","r","d","definition","defineProperty","enumerable","chunkId","promises","u","miniCssF","g","globalThis","obj","prop","prototype","hasOwnProperty","call","l","done","script","needAttach","scripts","getElementsByTagName","charset","timeout","nc","onScriptComplete","prev","onerror","onload","doneFns","head","Symbol","toStringTag","installedChunks","installedChunkData","promise","errorType","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""}