{"version":3,"file":"PagePage.3a3b0c316c4d5a4a.module.js","mappings":"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","sources":["webpack:///./cs-ts-bridge/cs/Permissions.ts","webpack:///./cs-ts-bridge/cs/SelectionType.ts","webpack:///./lib/first.ts","webpack:///./public/pages/Page/Files.3.vue?3e68","webpack:///./public/pages/dialogs/LockAction.3.vue?972e","webpack:///./public/pages/dialogs/Sign.3.vue?c215","webpack:///./public/pages/dialogs/SubmitConfirm.3.vue?7759","webpack:///./public/pages/elementTemplates/AddressDef.3.vue?c741","webpack:///./public/pages/elementTemplates/DatePickerDef.3.vue?5148","webpack:///./public/pages/elementTemplates/SectionDef.3.vue?f9dc","webpack:///./public/pages/elementTemplates/ValidationDef.3.vue?2eee","webpack:///./public/pages/Page.3.vue?76c4","webpack:///./public/pages/Page.3.vue?1c19","webpack:///./public/pages/Page/Diff.3.vue?df9a","webpack:///./public/pages/Page/History.3.vue?480c","webpack:///./public/pages/Page/Issues.3.vue?ea40","webpack:///./public/pages/PageSide.3.vue?8397","webpack:///./public/pages/PageSide.3.vue?79ef","webpack:///./public/pages/dialogs/AddressConfirm.3.vue?3803","webpack:///./public/pages/dialogs/SaveFailure.3.vue?ed01","webpack:///./public/pages/dialogs/SubmitErrors.3.vue?4128","webpack:///./public/pages/dialogs/SubmitFailure.3.vue?9105","webpack:///./public/pages/dialogs/SubmitSuccess.3.vue?3cc7","webpack:///./public/pages/dialogs/WorkflowManualOverride.3.vue?27f9","webpack:///./public/pages/dialogs/WorkflowManualOverrideConfirm.3.vue?245e","webpack:///./public/pages/elementTemplates/Comment.3.vue?96f3","webpack:///./public/pages/elementTemplates/Comments.3.vue?059b","webpack:///./public/pages/elementTemplates/DataTableDef.3.vue?8bac","webpack:///./public/pages/elementTemplates/DropDownListDef.3.vue?8751","webpack:///./public/pages/elementTemplates/ErrorList.3.vue?0f91","webpack:///./public/pages/elementTemplates/FileDef.3.vue?d832","webpack:///./public/pages/elementTemplates/IdVerificationDef.3.vue?9eaf","webpack:///../node_modules/text-mask-core/dist/textMaskCore.js","webpack:///./public/pages/FailedPaymentResume.3.vue","webpack:///./public/pages/FailedPaymentResume.3.vue?8730","webpack:///./public/pages/Page.3.vue","webpack:///../node_modules/@vueuse/rxjs/index.mjs","webpack:///./public/pages/PageSide.3.vue","webpack:///./public/pages/elementTemplates/ChildrenList.3.vue","webpack:///./public/pages/elementTemplates/ChildrenList.3.vue?a497","webpack:///./public/pages/elementTemplates/ErrorList.3.vue","webpack:///./public/pages/elementTemplates/ErrorList.3.vue?5174","webpack:///./public/pages/elementTemplates/ErrorList.3.vue?7093","webpack:///./public/pages/elementTemplates/AdminSettingsDifferences.3.vue","webpack:///./public/pages/elementTemplates/AdminSettingsDifferences.3.vue?9d19","webpack:///./public/pages/elementTemplates/Comments.3.vue","webpack:///./public/pages/elementTemplates/Comment.3.vue","webpack:///./public/pages/elementTemplates/Comment.3.vue?87bc","webpack:///./public/pages/elementTemplates/Comment.3.vue?6594","webpack:///./public/pages/Page.3.vue.InjectKeys.ts","webpack:///./public/pages/elementTemplates/Comments.3.vue?1e06","webpack:///./public/pages/elementTemplates/Comments.3.vue?0534","webpack:///./public/pages/elementTemplates/BaseDefMixin.3.ts","webpack:///./public/pages/elementTemplates/PageDef.3.vue","webpack:///./public/pages/elementTemplates/PageDef.3.vue?98fc","webpack:///./public/pages/Page/SegmentSelector.3.vue","webpack:///./public/pages/Page/SegmentSelector.3.vue?9b21","webpack:///./public/pages/dialogs/SaveFailure.3.vue","webpack:///./public/pages/dialogs/SaveFailure.3.vue?1037","webpack:///./public/pages/dialogs/SaveFailure.3.vue?159f","webpack:///../node_modules/rxjs/dist/esm5/internal/operators/mergeMap.js","webpack:///../node_modules/rxjs/dist/esm5/internal/operators/mergeInternals.js","webpack:///../node_modules/rxjs/dist/esm5/internal/operators/concatAll.js","webpack:///../node_modules/rxjs/dist/esm5/internal/operators/mergeAll.js","webpack:///../node_modules/rxjs/dist/esm5/internal/observable/concat.js","webpack:///../node_modules/rxjs/dist/esm5/internal/operators/startWith.js","webpack:///./public/pages/elementTemplates/TextboxDef.3.vue","webpack:///./public/pages/elementTemplates/TextboxDef.3.vue?fc60","webpack:///./public/pages/elementTemplates/FileDef.3.vue","webpack:///./public/pages/elementTemplates/FileDef.3.vue?2792","webpack:///./public/pages/elementTemplates/FileDef.3.vue?c2cb","webpack:///./public/pages/elementTemplates/CheckGroupDef.3.vue","webpack:///./public/pages/elementTemplates/CheckGroupDef.3.vue?4b7b","webpack:///./public/pages/elementTemplates/RadioGroupDef.3.vue","webpack:///./public/pages/elementTemplates/RadioGroupDef.3.vue?389d","webpack:///./public/pages/elementTemplates/CalculatedDef.3.vue","webpack:///./public/pages/elementTemplates/CalculatedDef.3.vue?5796","webpack:///./public/pages/elementTemplates/ValidationDef.3.vue","webpack:///./public/pages/elementTemplates/ValidationDef.3.vue?29fd","webpack:///./public/pages/elementTemplates/ValidationDef.3.vue?abcf","webpack:///./public/pages/elementTemplates/DisplayIfOtherHasValueDef.3.vue","webpack:///./public/pages/elementTemplates/DisplayIfOtherHasValueDef.3.vue?d34b","webpack:///./public/pages/elementTemplates/ForEachDef.3.vue","webpack:///./public/pages/elementTemplates/ForEachDef.3.vue?44d8","webpack:///./public/pages/elementTemplates/ForEachChildIdDef.3.vue?7f9a","webpack:///./public/pages/elementTemplates/ForEachChildIdDef.3.vue","webpack:///./public/pages/elementTemplates/ForEachChildIndexDef.3.vue?ab71","webpack:///./public/pages/elementTemplates/ForEachChildIndexDef.3.vue","webpack:///./public/pages/elementTemplates/RegionDef.3.vue","webpack:///./public/pages/elementTemplates/RegionDef.3.vue?e22f","webpack:///./public/pages/elementTemplates/SectionDef.3.vue","webpack:///./public/pages/elementTemplates/SectionDef.3.vue?b9e3","webpack:///./public/pages/elementTemplates/SectionDef.3.vue?40d8","webpack:///./public/pages/elementTemplates/AddressDef.3.vue","webpack:///./public/pages/dialogs/AddressConfirm.3.vue","webpack:///./public/pages/dialogs/AddressConfirm.3.vue?68b9","webpack:///./public/pages/dialogs/AddressConfirm.3.vue?d1d0","webpack:///./public/pages/elementTemplates/AddressDef.3.vue?c012","webpack:///./public/pages/elementTemplates/AddressDef.3.vue?373e","webpack:///./public/pages/elementTemplates/DatePickerDef.3.vue","webpack:///./public/pages/elementTemplates/DatePickerDef.3.vue?9c95","webpack:///./public/pages/elementTemplates/DatePickerDef.3.vue?9221","webpack:///./public/pages/elementTemplates/ContentDef.3.vue","webpack:///./public/pages/elementTemplates/ContentDef.3.vue?c3b9","webpack:///./public/pages/elementTemplates/DropDownListDef.3.vue","webpack:///./public/pages/elementTemplates/DropDownListDef.3.vue?cec5","webpack:///./public/pages/elementTemplates/DropDownListDef.3.vue?e345","webpack:///./public/pages/elementTemplates/DataTableDef.3.vue","webpack:///./cs-ts-bridge/cs/ColumnDisplayType.ts","webpack:///./lib/observableHelpers.ts","webpack:///./public/pages/elementTemplates/DataTableDef.3.vue?e5ce","webpack:///./public/pages/elementTemplates/DataTableDef.3.vue?0891","webpack:///./public/pages/elementTemplates/LandingPageTemplateDef.3.vue","webpack:///./public/pages/elementTemplates/LandingPageTemplateDef.3.vue?0274","webpack:///./public/pages/elementTemplates/ContentTemplatePageDef.3.vue","webpack:///./public/pages/elementTemplates/ContentTemplatePageDef.3.vue?adff","webpack:///./public/pages/elementTemplates/FormAlternativeDef.3.vue","webpack:///./public/pages/elementTemplates/FormAlternativeDef.3.vue?1b4e","webpack:///./public/pages/elementTemplates/LinkAlternativeDef.3.vue","webpack:///./public/pages/elementTemplates/LinkAlternativeDef.3.vue?d7f6","webpack:///./public/pages/elementTemplates/PdfAlternativeDef.3.vue","webpack:///./public/pages/elementTemplates/PdfAlternativeDef.3.vue?42a3","webpack:///./public/pages/elementTemplates/DisplayElementDef.3.vue","webpack:///./public/pages/elementTemplates/DisplayElementDef.3.vue?46e6","webpack:///./public/pages/elementTemplates/ReviewPageTemplatePageDef.3.vue","webpack:///./public/pages/elementTemplates/ReviewPageTemplatePageDef.3.vue?67ea","webpack:///./public/pages/elementTemplates/IdVerificationDef.3.vue","webpack:///./public/pages/elementTemplates/IdVerificationDef.3.vue?c660","webpack:///./public/pages/elementTemplates/IdVerificationDef.3.vue?3494","webpack:///./public/pages/elementTemplates/ExtraDataShimDef.3.vue","webpack:///./public/pages/elementTemplates/ExtraDataShimDef.3.vue?81c2","webpack:///./public/pages/elementTemplates/elementFactory.3.ts","webpack:///./public/pages/PageSide.3.vue?96a2","webpack:///./public/pages/PageSide.3.vue?ac2d","webpack:///./public/pages/PageSide.3.vue?c80d","webpack:///./public/pages/Page/LoginBanner.3.vue","webpack:///./public/pages/Page/LoginBanner.3.vue?564f","webpack:///./public/pages/Page/OfflineNotice.3.vue","webpack:///./public/pages/Page/OfflineNotice.3.vue?2a98","webpack:///./public/pages/Page/Diff.3.vue","webpack:///./public/pages/Page/Diff.3.vue?92e4","webpack:///./public/pages/Page/Diff.3.vue?df95","webpack:///./public/pages/Page/Issues.3.vue","webpack:///./lib/orderBy.ts","webpack:///./public/pages/Page/Issues.3.vue?a708","webpack:///./public/pages/Page/Issues.3.vue?adf3","webpack:///./public/pages/Page/History.3.vue","webpack:///./public/pages/Page/History.3.vue?27bc","webpack:///./public/pages/Page/History.3.vue?b58c","webpack:///./public/pages/Page/Files.3.vue","webpack:///./public/pages/Page/Files.3.vue?0e2a","webpack:///./public/pages/Page/Files.3.vue?dd06","webpack:///./public/pages/Page/Comments.3.vue","webpack:///./public/pages/Page/Comments.3.vue?9ee0","webpack:///./public/pages/dialogs/DeleteSuccess.3.vue","webpack:///./public/pages/dialogs/DeleteSuccess.3.vue?8142","webpack:///./public/pages/dialogs/ReturnConfirm.3.vue","webpack:///./public/pages/dialogs/ReturnConfirm.3.vue?95ac","webpack:///./public/pages/dialogs/ReturnSuccess.3.vue","webpack:///./public/pages/dialogs/ReturnSuccess.3.vue?1bc3","webpack:///./public/pages/dialogs/ResendConfirm.3.vue","webpack:///./public/pages/dialogs/ResendConfirm.3.vue?37d9","webpack:///./public/pages/dialogs/ResendSuccess.3.vue","webpack:///./public/pages/dialogs/ResendSuccess.3.vue?3a99","webpack:///./public/pages/dialogs/ChangeStatusConfirm.3.vue","webpack:///./public/pages/dialogs/ChangeStatusConfirm.3.vue?f8ac","webpack:///./public/pages/dialogs/ChangeStatusSuccess.3.vue","webpack:///./public/pages/dialogs/ChangeStatusSuccess.3.vue?0daf","webpack:///./public/pages/dialogs/SubmitConfirm.3.vue","webpack:///./public/pages/dialogs/SubmitConfirm.3.vue?165e","webpack:///./public/pages/dialogs/SubmitConfirm.3.vue?ed22","webpack:///./public/pages/dialogs/SubmitSuccess.3.vue","webpack:///./public/pages/dialogs/SubmitSuccess.3.vue?a142","webpack:///./public/pages/dialogs/SubmitSuccess.3.vue?ec8b","webpack:///./public/pages/dialogs/SubmitFailure.3.vue","webpack:///./public/pages/dialogs/SubmitFailure.3.vue?61ad","webpack:///./public/pages/dialogs/SubmitFailure.3.vue?200f","webpack:///./public/pages/dialogs/SubmitErrors.3.vue","webpack:///./public/pages/dialogs/SubmitErrors.3.vue?7594","webpack:///./public/pages/dialogs/SubmitErrors.3.vue?1a6b","webpack:///./public/pages/dialogs/LockAction.3.vue","webpack:///./public/pages/dialogs/LockAction.3.vue?4b34","webpack:///./public/pages/dialogs/LockAction.3.vue?0a26","webpack:///./public/pages/dialogs/Loading.3.vue","webpack:///./public/pages/dialogs/Loading.3.vue?2d46","webpack:///./public/pages/dialogs/Sign.3.vue","webpack:///./public/pages/dialogs/Sign.3.vue?4670","webpack:///./public/pages/dialogs/Sign.3.vue?c83d","webpack:///./public/pages/dialogs/WorkflowManualOverride.3.vue","webpack:///./public/pages/dialogs/WorkflowManualOverrideConfirm.3.vue","webpack:///./public/pages/dialogs/WorkflowManualOverrideConfirm.3.vue?e934","webpack:///./public/pages/dialogs/WorkflowManualOverrideConfirm.3.vue?c803","webpack:///./public/pages/dialogs/WorkflowManualOverride.3.vue?9f91","webpack:///./public/pages/dialogs/WorkflowManualOverride.3.vue?56d3","webpack:///./public/pages/dialogs/WorkflowManualOverrideSuccess.3.vue","webpack:///./public/pages/dialogs/WorkflowManualOverrideSuccess.3.vue?6170","webpack:///./public/pages/Page.3.vue?06ef","webpack:///./public/pages/Page.3.vue?0c49","webpack:///./public/pages/Page.3.vue?b198","webpack:///./public/pages/PageResumeFailure.3.vue","webpack:///./public/pages/PageResumeFailure.3.vue?7dae","webpack:///../node_modules/mitt/dist/mitt.mjs"],"sourcesContent":["//@ts-nocheck\n/**\n * This is a TypeGen auto-generated file.\n * Any changes made to this file can be lost when this file is regenerated.\n */\n\nimport { PermissionData } from \"./PermissionData\";\n\nexport class Permissions {\n static readonly MultiTenantPermissions: string[] = [];\n static readonly PERMISSION_DATA: { [key: string]: PermissionData; } = {\"UserViewHomePage\":{\"Key\":\"UserViewHomePage\",\"Label\":\"UserViewHomePage\",\"Description\":\"Can view user homepage\"},\"UserViewMyForms\":{\"Key\":\"UserViewMyForms\",\"Label\":\"UserViewMyForms\",\"Description\":\"Can view user draft and submissions\"},\"UserViewDirectory\":{\"Key\":\"UserViewDirectory\",\"Label\":\"UserViewDirectory\",\"Description\":\"Can view user page directory\"},\"UserViewPages\":{\"Key\":\"UserViewPages\",\"Label\":\"UserViewPages\",\"Description\":\"Can view user page\"},\"UserSubmitPages\":{\"Key\":\"UserSubmitPages\",\"Label\":\"UserSubmitPages\",\"Description\":\"Can submit user pages\"},\"UserSubmitTestPages\":{\"Key\":\"UserSubmitTestPages\",\"Label\":\"UserSubmitTestPages\",\"Description\":\"Can submit test submissions\"},\"UserSearchPages\":{\"Key\":\"UserSearchPages\",\"Label\":\"UserSearchPages\",\"Description\":\"Can search user pages\"},\"ReviewForms\":{\"Key\":\"ReviewForms\",\"Label\":\"ReviewForms\",\"Description\":\"Can review submissions\"},\"ChangeStatus\":{\"Key\":\"ChangeStatus\",\"Label\":\"ChangeStatus\",\"Description\":\"Can change form status\"},\"BypassWorkflow\":{\"Key\":\"BypassWorkflow\",\"Label\":\"BypassWorkflow\",\"Description\":\"Can bypass workflow\"},\"UpgradeSubmissionDefinition\":{\"Key\":\"UpgradeSubmissionDefinition\",\"Label\":\"UpgradeSubmissionDefinition\",\"Description\":\"Can upgrade submission to latest definition\"},\"AddReviewComment\":{\"Key\":\"AddReviewComment\",\"Label\":\"AddReviewComment\",\"Description\":\"Can add comments to forms\"},\"AdminEditSubmission\":{\"Key\":\"AdminEditSubmission\",\"Label\":\"AdminEditSubmission\",\"Description\":\"Can edit submission data\"},\"SeeAllForms\":{\"Key\":\"SeeAllForms\",\"Label\":\"SeeAllForms\",\"Description\":\"Can see forms not assigned to them\"},\"FormSearch\":{\"Key\":\"FormSearch\",\"Label\":\"FormSearch\",\"Description\":\"Can search submissions\"},\"TestForms\":{\"Key\":\"TestForms\",\"Label\":\"TestForms\",\"Description\":\"Can test submissions\"},\"ImportForms\":{\"Key\":\"ImportForms\",\"Label\":\"ImportForms\",\"Description\":\"Can import forms\"},\"EditForms\":{\"Key\":\"EditForms\",\"Label\":\"EditForms\",\"Description\":\"Can edit form definitions\"},\"PublishForms\":{\"Key\":\"PublishForms\",\"Label\":\"PublishForms\",\"Description\":\"Can publish form definitions\"},\"DiscontinueForms\":{\"Key\":\"DiscontinueForms\",\"Label\":\"DiscontinueForms\",\"Description\":\"Can discontinue form definitions\"},\"TransferForms\":{\"Key\":\"TransferForms\",\"Label\":\"TransferForms\",\"Description\":\"Can transfer form definitions\"},\"PowerEditForms\":{\"Key\":\"PowerEditForms\",\"Label\":\"PowerEditForms\",\"Description\":\"Can see power user features in form definition editor\"},\"EditFormsCode\":{\"Key\":\"EditFormsCode\",\"Label\":\"EditFormsCode\",\"Description\":\"Can edit form definitions' code directly\"},\"ViewGuidedSearch\":{\"Key\":\"ViewGuidedSearch\",\"Label\":\"ViewGuidedSearch\",\"Description\":\"Can view guided search\"},\"EditGuidedSearch\":{\"Key\":\"EditGuidedSearch\",\"Label\":\"EditGuidedSearch\",\"Description\":\"Can edit guided search\"},\"ReferenceInGuidedSearch \":{\"Key\":\"ReferenceInGuidedSearch \",\"Label\":\"ReferenceInGuidedSearch \",\"Description\":\"Can link in guided search\"},\"ViewDataSources\":{\"Key\":\"ViewDataSources\",\"Label\":\"ViewDataSources\",\"Description\":\"Can view data sources\"},\"EditDataSources\":{\"Key\":\"EditDataSources\",\"Label\":\"EditDataSources\",\"Description\":\"Can edit data sources\"},\"EditProtectedDataSources\":{\"Key\":\"EditProtectedDataSources\",\"Label\":\"EditProtectedDataSources\",\"Description\":\"Can edit protected data sources\"},\"ViewTestDataSources\":{\"Key\":\"ViewTestDataSources\",\"Label\":\"ViewTestDataSources\",\"Description\":\"Can view test data sources\"},\"EditTestDataSources\":{\"Key\":\"EditTestDataSources\",\"Label\":\"EditTestDataSources\",\"Description\":\"Can edit test data sources\"},\"ViewAddressBook\":{\"Key\":\"ViewAddressBook\",\"Label\":\"ViewAddressBook\",\"Description\":\"Can view address book\"},\"EditAddressBook\":{\"Key\":\"EditAddressBook\",\"Label\":\"EditAddressBook\",\"Description\":\"Can edit address book\"},\"Manage_Users\":{\"Key\":\"Manage_Users\",\"Label\":\"Manage_Users\",\"Description\":\"Can manage users\"},\"Manage_Containers\":{\"Key\":\"Manage_Containers\",\"Label\":\"Manage_Containers\",\"Description\":\"Can manage containers\"},\"Manage_Permissions\":{\"Key\":\"Manage_Permissions\",\"Label\":\"Manage_Permissions\",\"Description\":\"Can manage permissions\"},\"Manage_Roles\":{\"Key\":\"Manage_Roles\",\"Label\":\"Manage_Roles\",\"Description\":\"Can manage roles\"},\"ManageSystemUsers\":{\"Key\":\"ManageSystemUsers\",\"Label\":\"ManageSystemUsers\",\"Description\":\"Can manage system users\"},\"ManageTenants\":{\"Key\":\"ManageTenants\",\"Label\":\"ManageTenants\",\"Description\":\"Can manage tenants\"},\"ManageLimitedTenantSettings\":{\"Key\":\"ManageLimitedTenantSettings\",\"Label\":\"ManageLimitedTenantSettings\",\"Description\":\"Can manage some tenant settings\"},\"CreateSubTenants\":{\"Key\":\"CreateSubTenants\",\"Label\":\"CreateSubTenants\",\"Description\":\"Can create sub-tenants\"},\"CreateSubContentAreas\":{\"Key\":\"CreateSubContentAreas\",\"Label\":\"CreateSubContentAreas\",\"Description\":\"Can create sub-content areas\"},\"DeleteTenant \":{\"Key\":\"DeleteTenant \",\"Label\":\"DeleteTenant \",\"Description\":\"Can delete tenant\"},\"ViewAllTenantsStats\":{\"Key\":\"ViewAllTenantsStats\",\"Label\":\"ViewAllTenantsStats\",\"Description\":\"Can view stats for all tenants\"},\"ViewTenantStats\":{\"Key\":\"ViewTenantStats\",\"Label\":\"ViewTenantStats\",\"Description\":\"Can view stats for tenant\"},\"ViewAllTenantsBilling\":{\"Key\":\"ViewAllTenantsBilling\",\"Label\":\"ViewAllTenantsBilling\",\"Description\":\"Can view billing for all tenants\"},\"ViewTenantBilling\":{\"Key\":\"ViewTenantBilling\",\"Label\":\"ViewTenantBilling\",\"Description\":\"Can view billing for tenant\"},\"ViewFeatureFlags\":{\"Key\":\"ViewFeatureFlags\",\"Label\":\"ViewFeatureFlags\",\"Description\":\"Can view feature flags\"},\"EditFeatureFlags\":{\"Key\":\"EditFeatureFlags\",\"Label\":\"EditFeatureFlags\",\"Description\":\"Can edit feature flags\"},\"ViewWidgetsEditor\":{\"Key\":\"ViewWidgetsEditor\",\"Label\":\"ViewWidgetsEditor\",\"Description\":\"Can view widget editor\"},\"EditWidgets\":{\"Key\":\"EditWidgets\",\"Label\":\"EditWidgets\",\"Description\":\"Can edit widgets\"},\"AcceptAnyTask\":{\"Key\":\"AcceptAnyTask\",\"Label\":\"AcceptAnyTask\",\"Description\":\"Can accept any tasks\"},\"GrantTenantManager\":{\"Key\":\"GrantTenantManager\",\"Label\":\"GrantTenantManager\",\"Description\":\"Can grant Tenant Manager role\"},\"DeleteSubmissions\":{\"Key\":\"DeleteSubmissions\",\"Label\":\"DeleteSubmissions\",\"Description\":\"Can delete Submissions\"},\"DeleteReviewComments\":{\"Key\":\"DeleteReviewComments\",\"Label\":\"DeleteReviewComments\",\"Description\":\"Can delete review comments and attachments\"}};\n static readonly UserViewHomePage: string = \"UserViewHomePage\";\n static readonly UserViewMyForms: string = \"UserViewMyForms\";\n static readonly UserViewDirectory: string = \"UserViewDirectory\";\n static readonly UserViewPages: string = \"UserViewPages\";\n static readonly UserSubmitPages: string = \"UserSubmitPages\";\n static readonly UserSearchPages: string = \"UserSearchPages\";\n static readonly UserSubmitTestPages: string = \"UserSubmitTestPages\";\n static readonly ReviewForms: string = \"ReviewForms\";\n static readonly TestForms: string = \"TestForms\";\n static readonly ChangeStatus: string = \"ChangeStatus\";\n static readonly BypassWorkflow: string = \"BypassWorkflow\";\n static readonly UpgradeSubmissionDefinition: string = \"UpgradeSubmissionDefinition\";\n static readonly AdminEditSubmission: string = \"AdminEditSubmission\";\n static readonly AddReviewComment: string = \"AddReviewComment\";\n static readonly SeeAllForms: string = \"SeeAllForms\";\n static readonly FormSearch: string = \"FormSearch\";\n static readonly EditForms: string = \"EditForms\";\n static readonly PublishForms: string = \"PublishForms\";\n static readonly DiscontinueForms: string = \"DiscontinueForms\";\n static readonly TransferForms: string = \"TransferForms\";\n static readonly PowerEditForms: string = \"PowerEditForms\";\n static readonly EditFormsCode: string = \"EditFormsCode\";\n static readonly ViewGuidedSearch: string = \"ViewGuidedSearch\";\n static readonly ReferenceInGuidedSearch: string = \"ReferenceInGuidedSearch \";\n static readonly EditGuidedSearch: string = \"EditGuidedSearch\";\n static readonly ViewDataSources: string = \"ViewDataSources\";\n static readonly ViewTestDataSources: string = \"ViewTestDataSources\";\n static readonly EditDataSources: string = \"EditDataSources\";\n static readonly EditProtectedDataSources: string = \"EditProtectedDataSources\";\n static readonly EditTestDataSources: string = \"EditTestDataSources\";\n static readonly ViewAddressBook: string = \"ViewAddressBook\";\n static readonly EditAddressBook: string = \"EditAddressBook\";\n static readonly ImportForms: string = \"ImportForms\";\n static readonly ManageTenants: string = \"ManageTenants\";\n static readonly ManageLimitedTenantSettings: string = \"ManageLimitedTenantSettings\";\n static readonly CreateSubTenants: string = \"CreateSubTenants\";\n static readonly CreateSubContentAreas: string = \"CreateSubContentAreas\";\n static readonly DeleteTenant: string = \"DeleteTenant \";\n static readonly ViewTenantStats: string = \"ViewTenantStats\";\n static readonly ViewAllTenantsStats: string = \"ViewAllTenantsStats\";\n static readonly ViewTenantBilling: string = \"ViewTenantBilling\";\n static readonly ViewAllTenantsBilling: string = \"ViewAllTenantsBilling\";\n static readonly ViewFeatureFlags: string = \"ViewFeatureFlags\";\n static readonly EditFeatureFlags: string = \"EditFeatureFlags\";\n static readonly ViewWidgetsEditor: string = \"ViewWidgetsEditor\";\n static readonly EditWidgets: string = \"EditWidgets\";\n static readonly AcceptAnyTask: string = \"AcceptAnyTask\";\n static readonly DeleteSubmissions: string = \"DeleteSubmissions\";\n static readonly DeleteReviewComments: string = \"DeleteReviewComments\";\n static readonly GrantTenantManager: string = \"GrantTenantManager\";\n static readonly Manage_Users: string = \"Manage_Users\";\n static readonly Manage_Containers: string = \"Manage_Containers\";\n static readonly Manage_Roles: string = \"Manage_Roles\";\n static readonly Manage_Permissions: string = \"Manage_Permissions\";\n static readonly ManageSystemUsers: string = \"ManageSystemUsers\";\n static UserPermissions: string[] = [\"UserViewHomePage\",\"UserViewMyForms\",\"UserViewDirectory\",\"UserViewPages\",\"UserSubmitPages\",\"UserSubmitTestPages\",\"UserSearchPages\"];\n static StaffPermissions: string[] = [\"ManageTenants\",\"ManageSystemUsers\",\"ViewFeatureFlags\",\"EditFeatureFlags\",\"Manage_Containers\",\"Manage_Permissions\",\"UpgradeSubmissionDefinition\",\"GrantTenantManager\",\"EditProtectedDataSources\"];\n static AdminPermissions: string[] = [\"ReviewForms\",\"TestForms\",\"ChangeStatus\",\"BypassWorkflow\",\"AddReviewComment\",\"AdminEditSubmission\",\"SeeAllForms\",\"FormSearch\",\"EditForms\",\"PublishForms\",\"DiscontinueForms\",\"TransferForms\",\"PowerEditForms\",\"EditFormsCode\",\"ViewGuidedSearch\",\"ReferenceInGuidedSearch \",\"EditGuidedSearch\",\"ViewDataSources\",\"EditDataSources\",\"ViewTestDataSources\",\"EditTestDataSources\",\"ViewAddressBook\",\"EditAddressBook\",\"ImportForms\",\"ManageTenants\",\"Manage_Containers\",\"Manage_Roles\",\"Manage_Permissions\",\"ManageLimitedTenantSettings\",\"CreateSubTenants\",\"CreateSubContentAreas\",\"DeleteTenant \",\"ViewAllTenantsStats\",\"ViewTenantStats\",\"ViewAllTenantsBilling\",\"ViewTenantBilling\",\"Manage_Users\",\"ManageSystemUsers\",\"ViewFeatureFlags\",\"EditFeatureFlags\",\"ViewWidgetsEditor\",\"EditWidgets\",\"AcceptAnyTask\",\"DeleteSubmissions\",\"DeleteReviewComments\"];\n static AllPermissions: string[] = [\"UserViewHomePage\",\"UserViewMyForms\",\"UserViewDirectory\",\"UserViewPages\",\"UserSubmitPages\",\"UserSubmitTestPages\",\"UserSearchPages\",\"ReviewForms\",\"TestForms\",\"ChangeStatus\",\"BypassWorkflow\",\"AddReviewComment\",\"AdminEditSubmission\",\"SeeAllForms\",\"FormSearch\",\"EditForms\",\"PublishForms\",\"DiscontinueForms\",\"TransferForms\",\"PowerEditForms\",\"EditFormsCode\",\"ViewGuidedSearch\",\"ReferenceInGuidedSearch \",\"EditGuidedSearch\",\"ViewDataSources\",\"EditDataSources\",\"ViewTestDataSources\",\"EditTestDataSources\",\"ViewAddressBook\",\"EditAddressBook\",\"ImportForms\",\"ManageTenants\",\"Manage_Containers\",\"Manage_Roles\",\"Manage_Permissions\",\"ManageLimitedTenantSettings\",\"CreateSubTenants\",\"CreateSubContentAreas\",\"DeleteTenant \",\"ViewAllTenantsStats\",\"ViewTenantStats\",\"ViewAllTenantsBilling\",\"ViewTenantBilling\",\"Manage_Users\",\"ManageSystemUsers\",\"ViewFeatureFlags\",\"EditFeatureFlags\",\"ViewWidgetsEditor\",\"EditWidgets\",\"AcceptAnyTask\",\"DeleteSubmissions\",\"DeleteReviewComments\",\"UpgradeSubmissionDefinition\",\"GrantTenantManager\",\"EditProtectedDataSources\"];\n}\n","//@ts-nocheck\n/**\n * This is a TypeGen auto-generated file.\n * Any changes made to this file can be lost when this file is regenerated.\n */\n\nexport enum SelectionType {\n No = 0,\n Single = 1,\n Multiple = 2,\n}\n","export default function first<T>(i: Generator<T> | T[]): T | null {\n return \"next\" in i ? i.next().value : i.length > 0 ? i[0] : null;\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `\nul[data-v-1873752c] {\n list-style-type: none;\n padding-left: 5px;\n}\n.icon-download[data-v-1873752c]:before {\n text-decoration: none;\n margin-right: 5px;\n}\n.editor-help-text[data-v-1873752c] {\n cursor: default;\n margin-bottom: 5px;\n}\n.file-header[data-v-1873752c] {\n font-size: 1.2em;\n font-weight: 600;\n}\n.status-icon[data-v-1873752c] {\n position: absolute;\n right: 30px;\n top: 50%;\n transform: translateY(-50%);\n -webkit-transform: translateY(-50%);\n -ms-transform: translateY(-50%);\n}\n.field-validation-error .icon.icon-attention[data-v-1873752c] {\n color: inherit;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/Page/Files.3.vue\"],\"names\":[],\"mappings\":\";AACA;IACI,qBAAqB;IACrB,iBAAiB;AACrB;AACA;IACI,qBAAqB;IACrB,iBAAiB;AACrB;AACA;IACI,eAAe;IACf,kBAAkB;AACtB;AACA;IACI,gBAAgB;IAChB,gBAAgB;AACpB;AACA;IACI,kBAAkB;IAClB,WAAW;IACX,QAAQ;IACR,2BAA2B;IAC3B,mCAAmC;IACnC,+BAA+B;AACnC;AACA;IACI,cAAc;AAClB\",\"sourcesContent\":[\"<style scoped>\\nul {\\n list-style-type: none;\\n padding-left: 5px;\\n}\\n.icon-download:before {\\n text-decoration: none;\\n margin-right: 5px;\\n}\\n.editor-help-text {\\n cursor: default;\\n margin-bottom: 5px;\\n}\\n.file-header {\\n font-size: 1.2em;\\n font-weight: 600;\\n}\\n.status-icon {\\n position: absolute;\\n right: 30px;\\n top: 50%;\\n transform: translateY(-50%);\\n -webkit-transform: translateY(-50%);\\n -ms-transform: translateY(-50%);\\n}\\n.field-validation-error .icon.icon-attention {\\n color: inherit;\\n}\\n</style>\\n<template>\\n <div>\\n <template v-if=\\\"viewTypes.length > 0\\\">\\n <h3 class=\\\"file-header\\\">Generated Files</h3>\\n <ul>\\n <template v-for=\\\"viewType in viewTypes\\\">\\n <Promised :promise=\\\"getViewTypeUrl(viewType)\\\" v-slot=\\\"url\\\">\\n <li>\\n <a class=\\\"icon icon-download\\\" :href=\\\"url\\\" target=\\\"_blank\\\">{{ viewType == \\\"Builtin\\\" || viewType == \\\"Default\\\" ? \\\"Submission\\\" : viewType }}</a>\\n </li>\\n </Promised>\\n </template>\\n </ul>\\n </template>\\n <template v-if=\\\"allFileElementsWithFile != null && allFileElementsWithFile.length > 0\\\">\\n <h3 class=\\\"file-header\\\">Form Attachments</h3>\\n <ul>\\n <li v-for=\\\"fileElement in allFileElementsWithFile\\\">\\n <a class=\\\"icon icon-download\\\" target=\\\"_blank\\\" :href=\\\"fileElement.fileUrl\\\">{{ fileElement.fileName }}</a>\\n <span class=\\\"editor-help-text\\\">{{ fileElement.definition.settings.label || fileElement.definition.settings.shortLabel }}</span>\\n </li>\\n </ul>\\n </template>\\n <h3 class=\\\"file-header\\\">Reviewer Uploads</h3>\\n <template v-if=\\\"allElementsWithFileComments.length > 0\\\">\\n <ul>\\n <template v-for=\\\"element in allElementsWithFileComments\\\">\\n <template v-for=\\\"comment in element.comments.filter(i => i.files != null && i.files.length > 0)\\\">\\n <template v-for=\\\"file in comment.files\\\">\\n <li>\\n <span>\\n <a class=\\\"icon icon-download\\\" target=\\\"_blank\\\" :href=\\\"file.fileUrl\\\">{{ file.filename }}</a>\\n <button v-if=\\\"canDeleteFiles\\\" class=\\\"passthrough icon icon-trash ml-3\\\" title=\\\"Delete\\\" aria-label=\\\"Delete\\\" @click.prevent=\\\"deleteFile(element, comment, file)\\\" />\\n </span>\\n <span class=\\\"editor-help-text\\\">{{ elementLabel(element) }}</span>\\n </li>\\n </template>\\n </template>\\n </template>\\n </ul>\\n </template>\\n <div class=\\\"btn btn-file form-group p-0 m-0\\\">\\n <label for=\\\"FilesUpload\\\" class=\\\"sr-only\\\">Attach Files</label>\\n <input type=\\\"file\\\" id=\\\"FilesUpload\\\" ref=\\\"file\\\" multiple @change=\\\"uploadFiles\\\" />\\n <div class=\\\"status-icon\\\">\\n <AsyncOperationStatus :promise=\\\"uploadPromise\\\" />\\n </div>\\n </div>\\n <div v-if=\\\"anyThreat\\\">\\n <span class=\\\"field-validation-error\\\"><i class=\\\"icon icon-attention align-middle mr-1\\\" title=\\\"Error\\\" role=\\\"img\\\" />Potential virus or malware detected.</span>\\n </div>\\n <div aria-live=\\\"polite\\\" class=\\\"sr-only\\\">\\n <template v-if=\\\"uploadStatus && uploadStatus != 'uploading'\\\">\\n <span v-if=\\\"anyThreat\\\">Error: Potential virus or malware detected.</span>\\n <span v-else>File uploaded successfully</span>\\n </template>\\n </div>\\n </div>\\n</template>\\n<script lang=\\\"ts\\\">\\nimport { defineComponent, ref, computed } from \\\"vue\\\";\\nimport { Promised } from \\\"vue-promised\\\";\\nimport AsyncOperationStatus from \\\"@/lib/AsyncOperationStatus.3.vue\\\";\\nimport { useObservable } from \\\"@vueuse/rxjs\\\";\\nimport { map, switchMap } from \\\"rxjs/operators\\\";\\nimport { combineLatest } from \\\"rxjs\\\";\\nimport { useMainStore } from \\\"@/mainStore\\\";\\nimport { usePageStore } from \\\"../pageState/store\\\";\\nimport { toObserverComputed } from \\\"../pageState/store\\\";\\nimport FileDef from \\\"../elements/FileDef\\\";\\nimport FormDef from \\\"../elements/FormDef\\\";\\n//eslint-disable-next-line @typescript-eslint/no-unused-vars -- used in html\\nimport type { IControlSettings } from \\\"@cs-ts/i-control-settings\\\";\\nimport { BaseElementDefBase } from \\\"../elements/BaseElementDef\\\";\\nimport { throwIfNonSuccessStatus } from \\\"@/lib/fetchHelpers.3\\\";\\nimport { getXsftHeader } from \\\"@/lib/getXsrfToken.3\\\";\\nimport { FormComment } from \\\"@cs-ts/form-comment\\\";\\nimport { asyncComputed } from \\\"@vueuse/core\\\";\\nimport { KnownFeatureFlags } from \\\"@cs/KnownFeatureFlags\\\";\\nimport { isNullOrWhitespace } from \\\"@/lib/whitespaceMethods\\\";\\nimport { FormCommentFile } from \\\"@cs-ts/form-comment-file\\\";\\n\\nexport default defineComponent({\\n components: {\\n Promised,\\n AsyncOperationStatus,\\n },\\n setup() {\\n const uploadPromise = ref(null as null | Promise<boolean>);\\n const uploadStatus = ref(null! as null | \\\"uploading\\\" | \\\"failed\\\" | \\\"ok\\\");\\n const fileRef = ref(null! as HTMLInputElement);\\n const anyThreat = ref(false);\\n const mainStore = useMainStore();\\n const pageStore = usePageStore();\\n\\n const allowDeleteFiles = asyncComputed(() => mainStore.isFeatureFlagActiveAsync(KnownFeatureFlags.DeleteCommentsAttachments.Id));\\n const elementData = computed(() => pageStore.formDataTyped! as FormDef & { isThreat: boolean });\\n const viewTypes = computed(() => pageStore.viewTypes);\\n const allElementsWithFileComments = computed(() => pageStore.allElementsWithFileComments);\\n const canDeleteFiles = computed(() => pageStore.adminReview && allowDeleteFiles.value && pageStore.canDeleteReviewComments);\\n\\n const allFileElementsWithFile = useObservable(\\n toObserverComputed(() => pageStore.allFileElements as FileDef[]).pipe(\\n //tap(i => { debugger; }),\\n switchMap(k => combineLatest(k.map(i => i.hasValue$().pipe(map(j => [i, j] as const))))),\\n //tap(i => { debugger; }),\\n map(i => i.filter(i => i[1]).map(i => i[0])),\\n //tap(i => {\\n // i[0].comments[0].files[0];\\n //}),\\n ),\\n );\\n\\n const getViewTypeUrl = (viewType: string) => {\\n return mainStore.getUrl(pageStore.adminReview ? \\\"adminSearchReviewDocument\\\" : \\\"downloadDocument\\\", {\\n tenantCode: pageStore.formTenantCode,\\n areaCode: pageStore.formTenantCode,\\n formId: pageStore.formId,\\n document: viewType,\\n }) as Promise<string>;\\n };\\n const uploadFiles = () => {\\n uploadStatus.value = \\\"uploading\\\";\\n uploadPromise.value = (async () => {\\n const elementId = pageStore.getElementPathString(elementData.value);\\n try {\\n const htmlFiles = Array.from(fileRef.value.files as unknown as File[]);\\n const filesPromises = htmlFiles.map(async i => (await pageStore.uploadExternalFile({ vmId: elementData.value.vmId, newFile: i, isComment: true }))!);\\n const fileObjects = await Promise.all(filesPromises);\\n const fileIds = fileObjects.map(i => i.valueId);\\n const fileNames = htmlFiles.map(i => i.name);\\n const fileContentTypes = htmlFiles.map(i => i.type);\\n anyThreat.value = fileObjects.some(i => i.isThreat);\\n if (anyThreat.value) {\\n throw new Error(\\\"Potential virus or malware detected.\\\");\\n }\\n /*const response = */ await pageStore.addCommentAndChangeStatus({ elementId, elementData: elementData.value, fileIds, fileNames, fileContentTypes, text: null!, status: null!, visibleToSubmitter: null!, userName: null! }); // TODO?\\n //if (response && !response.accessible) {\\n // alert(\\\"As a result of your change, this submission is no longer accessible.\\\");\\n // this.$emit(\\\"change-page\\\", { page: \\\"AdminSearch\\\" })\\n // return;\\n //}\\n fileRef.value.value = null!; // clear attachments\\n uploadStatus.value = \\\"ok\\\";\\n return true;\\n } catch (e) {\\n uploadStatus.value = \\\"failed\\\";\\n alert(\\\"Saving comment failed\\\");\\n throw e;\\n }\\n })();\\n };\\n const deleteFile = async (element: BaseElementDefBase, comment: FormComment, file: FormCommentFile) => {\\n if (!confirm(\\\"Delete file?\\\")) {\\n return;\\n }\\n const elementId = pageStore.getElementPathString(element);\\n const _formData = {\\n elementId,\\n pageNumber: 1,\\n formId: elementData.value.formId,\\n commentId: comment.id,\\n valueId: file.valueId,\\n };\\n const formData = new FormData();\\n for (const key of Object.keys(_formData)) {\\n //@ts-ignore\\n formData.append(key, _formData[key]);\\n }\\n const deleteUrl = await mainStore.getUrl(\\\"deleteComment\\\", { tenantCode: pageStore.formTenantCode, formId: pageStore.formId });\\n const deleteResponse = await fetch(deleteUrl, {\\n method: \\\"POST\\\",\\n headers: await getXsftHeader(mainStore),\\n credentials: \\\"same-origin\\\",\\n body: formData,\\n });\\n throwIfNonSuccessStatus(deleteResponse);\\n\\n const remove = <T,>(arr: T[], func: (i: T) => boolean) => arr.splice(arr.findIndex(func), 1);\\n remove(comment.files, i => file.valueId == i.valueId);\\n if (isNullOrWhitespace(comment.text) && comment.files.length == 0) {\\n remove(element.comments, i => comment.id == i.id);\\n }\\n };\\n\\n return {\\n file: fileRef,\\n viewTypes,\\n canDeleteFiles,\\n getViewTypeUrl,\\n\\n allFileElementsWithFile,\\n allElementsWithFileComments,\\n\\n uploadFiles,\\n deleteFile,\\n uploadPromise,\\n uploadStatus,\\n elementData,\\n anyThreat,\\n\\n elementLabel: (element: BaseElementDefBase) => (element.definition.settings as IControlSettings).label || (element.definition.settings as IControlSettings).shortLabel || \\\"Unnamed Element\\\",\\n };\\n },\\n});\\n</script>\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `\n.modal-footer[data-v-36e18e91] {\n display: block;\n text-align: center;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/dialogs/LockAction.3.vue\"],\"names\":[],\"mappings\":\";AACA;IACI,cAAc;IACd,kBAAkB;AACtB\",\"sourcesContent\":[\"<style scoped>\\n.modal-footer {\\n display: block;\\n text-align: center;\\n}\\n</style>\\n<template>\\n <div class=\\\"modal-content\\\" ref=\\\"container\\\">\\n <div class=\\\"modal-header\\\">\\n <h2 class=\\\"modal-title\\\">Locked</h2>\\n </div>\\n <div class=\\\"modal-body\\\">\\n <template v-if=\\\"!submitting\\\">\\n <p describedby-text>Please choose an action:</p>\\n <button v-for=\\\"(lockAction, index) in lockActions\\\" class=\\\"btn btn-primary my-2 mr-2\\\" @click=\\\"submit(lockAction)\\\" :disabled=\\\"submitting\\\" :id=\\\"'lockActionBtn' + index\\\">{{ lockAction.label }}</button>\\n </template>\\n <div v-if=\\\"submitting\\\">\\n <LoadingWheel :width=\\\"100\\\" />\\n </div>\\n </div>\\n <div class=\\\"modal-footer\\\"></div>\\n </div>\\n</template>\\n<script lang=\\\"ts\\\">\\nimport { defineComponent, ref, SetupContext } from \\\"vue\\\";\\nimport { LockAction } from \\\"../elements/BaseElementDef\\\";\\nimport LoadingWheel from \\\"@/lib/LoadingWheel.3.vue\\\";\\nimport { dialogSetup } from \\\"@/lib/dialogMixin.3\\\";\\ninterface Props {\\n submitFunction: (triggerKey: LockAction) => Promise<void>;\\n lockActions: LockAction[];\\n}\\nexport default defineComponent({\\n props: [\\\"submitFunction\\\", \\\"lockActions\\\"],\\n components: {\\n LoadingWheel,\\n },\\n setup(props: Props, { emit }: SetupContext) {\\n const containerRef = ref<HTMLElement>(null!);\\n dialogSetup(containerRef);\\n const submitting = ref(false);\\n\\n const submit = async (lockAction: LockAction) => {\\n submitting.value = true;\\n await props.submitFunction(lockAction);\\n submitting.value = false;\\n emit(\\\"close\\\");\\n };\\n\\n return {\\n container: containerRef,\\n submitting,\\n submit,\\n };\\n },\\n});\\n</script>\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `\n.modal-footer[data-v-7f0ee072] {\n display: block;\n text-align: center;\n}\n.pdfPage[data-v-7f0ee072] {\n border: 5px solid #cccccc;\n max-height: 50vh;\n overflow: scroll;\n}\n.secondVerificationSection[data-v-7f0ee072],\n.firstVerificationSection[data-v-7f0ee072],\n.verificationOr[data-v-7f0ee072] {\n border-bottom: 1px solid #999;\n font-size: large;\n}\n.modal-content[data-v-7f0ee072] {\n width: min(90vw, 1800px);\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/dialogs/Sign.3.vue\"],\"names\":[],\"mappings\":\";AACA;IACI,cAAc;IACd,kBAAkB;AACtB;AACA;IACI,yBAAyB;IACzB,gBAAgB;IAChB,gBAAgB;AACpB;AACA;;;IAGI,6BAA6B;IAC7B,gBAAgB;AACpB;AACA;IACI,wBAAwB;AAC5B\",\"sourcesContent\":[\"<style scoped>\\n.modal-footer {\\n display: block;\\n text-align: center;\\n}\\n.pdfPage {\\n border: 5px solid #cccccc;\\n max-height: 50vh;\\n overflow: scroll;\\n}\\n.secondVerificationSection,\\n.firstVerificationSection,\\n.verificationOr {\\n border-bottom: 1px solid #999;\\n font-size: large;\\n}\\n.modal-content {\\n width: min(90vw, 1800px);\\n}\\n</style>\\n<template>\\n <div class=\\\"modal-content\\\" ref=\\\"container\\\">\\n <div class=\\\"modal-header\\\">\\n <h2 class=\\\"modal-title\\\">Confirm Submission</h2>\\n <button type=\\\"button\\\" class=\\\"close icon icon-close\\\" aria-label=\\\"Close\\\" aria-hidden=\\\"true\\\" @click=\\\"$emit('close')\\\" autofocus :disabled=\\\"submitting\\\" />\\n </div>\\n <div class=\\\"modal-body\\\" describedby-text>\\n <div v-show=\\\"!submitting\\\">\\n <p>To finish this submission, you must sign.</p>\\n <div class=\\\"pdfPage\\\">\\n <pdf v-for=\\\"i in numPages\\\" :key=\\\"i\\\" :src=\\\"pdfDataTask\\\" :page=\\\"i\\\" />\\n </div>\\n <p>By submitting this signature, you agree that:</p>\\n <!-- TODO - actual legal term -->\\n <ol>\\n <li>you accept doing business electronically</li>\\n <li>you intend to sign</li>\\n </ol>\\n <div class=\\\"alert alert-dark\\\">To receive a non-electronic version of this document, please contact us.</div>\\n <!-- style=\\\"width: 50%; display: inline-block\\\" -->\\n <div v-if=\\\"messages.length > 0\\\" class=\\\"alert alert-danger\\\">\\n <span>Issues:</span>\\n <ul>\\n <li v-for=\\\"message in messages\\\">{{ message }}</li>\\n </ul>\\n </div>\\n <div class=\\\"row\\\" v-if=\\\"requireUserVerification\\\">\\n <div class=\\\"col-12 text-center mb-2 firstVerificationSection\\\">\\n <strong>First</strong>\\n </div>\\n <div class=\\\"form-group col-md-8\\\">\\n <label class=\\\"control-label\\\">Verify Email</label>\\n <input type=\\\"email\\\" placeholder=\\\"example@example.com\\\" class=\\\"form-control\\\" id=\\\"sendVerifyEmailControl\\\" v-model=\\\"verifyEmail\\\" />\\n </div>\\n <div class=\\\"form-group col-md-4\\\">\\n <br />\\n <button class=\\\"btn btn-primary\\\" id=\\\"sendVerifyEmailBtn\\\" @click=\\\"sendVerify('Email')\\\" :disabled=\\\"submitting\\\">Send Verify Code by Email</button>\\n <AsyncOperationStatus :promise=\\\"sendVerifyPromiseEmail\\\" />\\n </div>\\n <template v-if=\\\"enableSmsMessages\\\">\\n <div class=\\\"col-12 text-center mb-2 verificationOr\\\">\\n <strong>OR</strong>\\n </div>\\n <div class=\\\"form-group col-md-8\\\">\\n <label class=\\\"control-label\\\">Verify Phone Number</label>\\n <input type=\\\"phone\\\" placeholder=\\\"(999) 999-9999\\\" class=\\\"form-control\\\" ref=\\\"verifyPhoneNumber\\\" @input=\\\"handlePhoneInput\\\" id=\\\"sendVerifyPhoneControl\\\" :value=\\\"verifyPhone\\\" />\\n </div>\\n <div class=\\\"form-group col-md-4\\\">\\n <br />\\n <button class=\\\"btn btn-primary\\\" id=\\\"sendVerifyPhoneBtn\\\" @click=\\\"sendVerify('Phone')\\\" :disabled=\\\"submitting\\\">Send Verify Code by SMS</button>\\n <AsyncOperationStatus :promise=\\\"sendVerifyPromisePhone\\\" />\\n </div>\\n </template>\\n </div>\\n <div class=\\\"row\\\">\\n <div class=\\\"col-12 text-center mb-2 secondVerificationSection\\\" v-if=\\\"requireUserVerification\\\">\\n <strong>Second</strong>\\n </div>\\n <div class=\\\"form-group\\\" :class=\\\"[requireUserVerification ? 'col-md-4' : 'col-md-6']\\\">\\n <label class=\\\"control-label\\\">Sign Name</label>\\n <input type=\\\"text\\\" placeholder=\\\"Signer's Full Name\\\" class=\\\"form-control\\\" id=\\\"signNameControl\\\" v-model=\\\"signName\\\" />\\n </div>\\n <div class=\\\"form-group\\\" :class=\\\"[requireUserVerification ? 'col-md-4' : 'col-md-6']\\\">\\n <label class=\\\"control-label\\\">Sign Date</label>\\n <input type=\\\"text\\\" :readonly=\\\"!manuallyEnterSignDate\\\" :placeholder=\\\"signDatePlaceholder\\\" :class=\\\"manuallyEnterSignDate ? ['form-control'] : ['form-control-plaintext']\\\" id=\\\"signDateControl\\\" v-model=\\\"signDate\\\" />\\n </div>\\n <div class=\\\"form-group col-md-4\\\" v-if=\\\"requireUserVerification\\\">\\n <label class=\\\"control-label\\\">Verify Code</label>\\n <input type=\\\"text\\\" inputmode=\\\"numeric\\\" placeholder=\\\"999999\\\" class=\\\"form-control\\\" id=\\\"verifyCodeControl\\\" v-model=\\\"verifyCode\\\" />\\n </div>\\n </div>\\n </div>\\n <div v-if=\\\"submitting\\\">\\n <LoadingWheel :width=\\\"100\\\" />\\n </div>\\n </div>\\n <div class=\\\"modal-footer\\\">\\n <button class=\\\"btn btn-primary\\\" id=\\\"signSubmitBtn\\\" @click=\\\"signAndSubmit\\\" :disabled=\\\"submitting\\\">Sign and Submit</button>\\n <button class=\\\"btn btn-outline-secondary\\\" @click=\\\"$emit('close')\\\" :disabled=\\\"submitting\\\">Cancel</button>\\n </div>\\n </div>\\n</template>\\n<script lang=\\\"ts\\\">\\nimport { defineComponent, defineAsyncComponent, ref, onMounted, computed, SetupContext } from \\\"vue\\\";\\nimport { createTextMaskInputElement } from \\\"text-mask-core\\\";\\nimport LoadingWheel from \\\"@/lib/LoadingWheel.3.vue\\\";\\nimport AsyncOperationStatus from \\\"@/lib/AsyncOperationStatus.3.vue\\\";\\nimport { useMainStore } from \\\"@/mainStore\\\";\\nimport { asyncComputed } from \\\"@vueuse/core\\\";\\nimport { dialogSetup } from \\\"@/lib/dialogMixin.3\\\";\\nimport type pdfJs from \\\"pdfjs-dist\\\";\\ninterface Props {\\n requireUserVerification: boolean;\\n pdfData: typeof pdfJs;\\n sendVerifyFunction: (verifyEmail: string, verifyPhoneNumber: string) => { success: boolean; messages?: string[] };\\n signAndSubmitFunction: (signName: string, signDate: string, verifyCode: string) => { success: boolean; messages?: string[] };\\n}\\nexport default defineComponent({\\n components: {\\n LoadingWheel,\\n AsyncOperationStatus,\\n pdf: defineAsyncComponent({\\n loadingComponent: LoadingWheel,\\n loader: () => import(/* webpackChunkName: \\\"PdfRenderer\\\" */ \\\"@/lib/vue-pdf/src/vuePdfNoSss.3.vue\\\"),\\n }),\\n },\\n props: [\\\"requireUserVerification\\\", \\\"pdfData\\\", \\\"sendVerifyFunction\\\", \\\"signAndSubmitFunction\\\"],\\n setup(props: Props, { emit }: SetupContext) {\\n const mainStore = useMainStore();\\n const containerRef = ref<HTMLElement>(null!);\\n dialogSetup(containerRef);\\n\\n const verifyPhoneNumberRef = ref<HTMLElement>(null!);\\n const manuallyEnterSignDate = ref(false);\\n const submitting = ref(false);\\n const signName = ref<string>(null!);\\n const signDate = ref<string>(null!);\\n const verifyEmail = ref<string>(null!);\\n const verifyPhone = ref<string>(null!);\\n const sendVerifyPromiseEmail = ref<Promise<void>>(null!);\\n const sendVerifyPromisePhone = ref<Promise<void>>(null!);\\n const verifyCode = ref<string>(null!);\\n const pdfDataTask = ref<ReturnType<(typeof pdfJs)[\\\"getDocument\\\"]>>(null!);\\n const numPages = ref<number>(null!);\\n const messages = ref<string[]>([]);\\n const phoneMask = ref<ReturnType<typeof createTextMaskInputElement>>(null!);\\n\\n const enableSmsMessages = asyncComputed(() => {\\n return mainStore.isFeatureFlagActiveAsync(\\\"SmsMessages\\\");\\n });\\n const signDatePlaceholder = computed(() => {\\n const now = new Date();\\n return `${(now.getMonth() + 1).toString().padStart(2, \\\"0\\\")}-${now.getDate().toString().padStart(2, \\\"0\\\")}-${now.getFullYear()}`;\\n });\\n\\n const handlePhoneInput = (event: Event) => {\\n if (phoneMask.value) {\\n phoneMask.value.update((event.target! as HTMLInputElement).value);\\n }\\n verifyPhone.value = (event.target! as HTMLInputElement).value;\\n };\\n const sendVerify = (type: string) => {\\n const isEmail = type == \\\"Email\\\";\\n const promise = (async () => {\\n const result = await (isEmail ? props.sendVerifyFunction(verifyEmail.value, null!) : props.sendVerifyFunction(null!, verifyPhone.value));\\n if (result.success) {\\n messages.value = [];\\n } else {\\n messages.value = result.messages!;\\n throw new Error(\\\"Failed\\\");\\n }\\n })();\\n if (isEmail) {\\n sendVerifyPromiseEmail.value = promise;\\n } else {\\n sendVerifyPromisePhone.value = promise;\\n }\\n };\\n const signAndSubmit = async () => {\\n submitting.value = true;\\n const result = await props.signAndSubmitFunction(signName.value, signDate.value, verifyCode.value);\\n submitting.value = false;\\n if (result.success) {\\n emit(\\\"close\\\");\\n } else {\\n messages.value = result.messages!;\\n }\\n };\\n\\n onMounted(() => {\\n if (!manuallyEnterSignDate.value) {\\n signDate.value = signDatePlaceholder.value;\\n }\\n setTimeout(async () => {\\n // to avoid pdf threading issues on double sign\\n const pdf = (await import(/* webpackChunkName: \\\"PdfRenderer\\\" */ \\\"@/lib/vue-pdf/src/vuePdfNoSss.3.vue\\\")).default;\\n pdfDataTask.value = pdf.createLoadingTask(props.pdfData);\\n pdfDataTask.value.promise.then((pdf: { numPages: number }) => {\\n numPages.value = pdf.numPages;\\n });\\n }, 0);\\n if (props.requireUserVerification) {\\n const createTextMaskFunc = () => {\\n if (verifyPhoneNumberRef.value == null) {\\n setTimeout(createTextMaskFunc, 100);\\n } else {\\n const config = {\\n inputElement: verifyPhoneNumberRef.value,\\n mask: [\\\"(\\\", /\\\\d/, /\\\\d/, /\\\\d/, \\\")\\\", \\\" \\\", /\\\\d/, /\\\\d/, /\\\\d/, \\\"-\\\", /\\\\d/, /\\\\d/, /\\\\d/, /\\\\d/],\\n guide: false,\\n placeholderChar: \\\"\\\\u2000\\\",\\n };\\n phoneMask.value = createTextMaskInputElement(config);\\n }\\n };\\n createTextMaskFunc();\\n }\\n });\\n\\n return {\\n verifyPhoneNumber: verifyPhoneNumberRef,\\n container: containerRef,\\n manuallyEnterSignDate,\\n submitting,\\n signName,\\n signDate,\\n verifyEmail,\\n verifyPhone,\\n sendVerifyPromiseEmail,\\n sendVerifyPromisePhone,\\n verifyCode,\\n pdfDataTask,\\n numPages,\\n messages,\\n\\n enableSmsMessages,\\n signDatePlaceholder,\\n\\n handlePhoneInput,\\n sendVerify,\\n signAndSubmit,\\n };\\n },\\n});\\n</script>\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `\n.modal-footer[data-v-a0ef2fbe] {\n display: block;\n text-align: center;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/dialogs/SubmitConfirm.3.vue\"],\"names\":[],\"mappings\":\";AACA;IACI,cAAc;IACd,kBAAkB;AACtB\",\"sourcesContent\":[\"<style scoped>\\n.modal-footer {\\n display: block;\\n text-align: center;\\n}\\n</style>\\n<template>\\n <div class=\\\"modal-content\\\" ref=\\\"container\\\">\\n <div class=\\\"modal-header\\\">\\n <h2 class=\\\"modal-title\\\">Confirm Submission</h2>\\n <button type=\\\"button\\\" class=\\\"close icon icon-close\\\" aria-hidden=\\\"true\\\" @click=\\\"$emit('close')\\\" autofocus :disabled=\\\"submitting\\\" aria-label=\\\"Close\\\" />\\n </div>\\n <div class=\\\"modal-body\\\">\\n <template v-if=\\\"!submitting\\\">\\n <p describedby-text>Are you sure you want to submit?</p>\\n <template v-if=\\\"confirmComponents.length > 0\\\">\\n <template v-for=\\\"confirmComponent in confirmComponents\\\">\\n <component :is=\\\"confirmComponent.component\\\" :data=\\\"confirmComponent.data\\\"></component>\\n </template>\\n </template>\\n </template>\\n <div v-if=\\\"submitting\\\">\\n <LoadingWheel :width=\\\"100\\\" />\\n </div>\\n </div>\\n <div class=\\\"modal-footer\\\">\\n <button v-for=\\\"submitButton in submitButtons\\\" class=\\\"btn btn-primary my-2\\\" @click=\\\"submit(submitButton.trigger)\\\" :disabled=\\\"submitting || blockSubmit\\\">{{ truncateLongText(submitButton.text) }}</button>\\n <button class=\\\"btn btn-outline-secondary my-2\\\" @click=\\\"$emit('close')\\\" :disabled=\\\"submitting\\\">Cancel</button>\\n </div>\\n </div>\\n</template>\\n<script lang=\\\"ts\\\">\\nimport { defineComponent, ref, SetupContext } from \\\"vue\\\";\\nimport LoadingWheel from \\\"@/lib/LoadingWheel.3.vue\\\";\\nimport type { Observable } from \\\"rxjs\\\";\\nimport { useObservable } from \\\"@vueuse/rxjs\\\";\\nimport { dialogSetup } from \\\"@/lib/dialogMixin.3\\\";\\ninterface Props {\\n submitFunction: (triggerKey: string | null) => Promise<() => Promise<void>>;\\n /* eslint-disable @typescript-eslint/no-explicit-any*/ // TODO\\n confirmComponents: { component: any; data: any }[];\\n submitButtons: any[];\\n blockSubmit$: Observable<any>;\\n}\\nexport default defineComponent({\\n props: [\\\"submitFunction\\\", \\\"confirmComponents\\\", \\\"submitButtons\\\", \\\"blockSubmit$\\\"],\\n components: {\\n LoadingWheel,\\n },\\n setup(props: Props, { emit }: SetupContext) {\\n const containerRef = ref<HTMLElement>(null!);\\n dialogSetup(containerRef);\\n const submitting = ref(false);\\n\\n const submit = async (triggerKey: string | null) => {\\n submitting.value = true;\\n const post = await props.submitFunction(triggerKey);\\n await post();\\n submitting.value = false;\\n emit(\\\"close\\\");\\n };\\n\\n // TODO refactor into utils\\n const truncateLongText = (text: string) => {\\n if (text == null || text.length <= 40) {\\n return text;\\n } else {\\n return text.slice(0, 40) + \\\"...\\\";\\n }\\n };\\n\\n return {\\n container: containerRef,\\n submitting,\\n blockSubmit: useObservable(props.blockSubmit$),\\n submit,\\n truncateLongText,\\n };\\n },\\n});\\n</script>\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `\n.address-form-group[data-v-61fadea4] {\n margin-bottom: 0;\n}\n.address-block-label[data-v-61fadea4] {\n font-size: 1em;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/elementTemplates/AddressDef.3.vue\"],\"names\":[],\"mappings\":\";AACA;IACI,gBAAgB;AACpB;AACA;IACI,cAAc;AAClB\",\"sourcesContent\":[\"<style scoped>\\n.address-form-group {\\n margin-bottom: 0;\\n}\\n.address-block-label {\\n font-size: 1em;\\n}\\n</style>\\n<template>\\n <fieldset class=\\\"form-group address-form-group clearfix\\\" :class=\\\"[colClass]\\\">\\n <div v-if=\\\"effectiveLabel == effectiveLabelText\\\">\\n <legend class=\\\"highlight-on-child-error address-block-label control-label\\\" :class=\\\"settings.required && singleLabel ? 'dfRequired' : ''\\\" :style=\\\"singleLabel ? 'margin-bottom:10px' : ''\\\">\\n {{ effectiveLabelText }}\\n <span class=\\\"sr-only\\\" v-if=\\\"settings.required && singleLabel\\\">Required</span>\\n <HelpIcon :text=\\\"settings.helpText\\\" v-if=\\\"!isViewOnly\\\" />\\n </legend>\\n </div>\\n <ChildrenList :children-ids=\\\"children\\\" :view-only=\\\"isViewOnly\\\" :force-non-live=\\\"settings.verifyAddress != AddressVerificationEnum.Off\\\"></ChildrenList>\\n <div class=\\\"dfCompositControlChildMargin\\\" v-if=\\\"settings.showErrorsLocally\\\">\\n <div v-for=\\\"(child, index) in inputsFields\\\" :key=\\\"child.vmId\\\">\\n <ErrorList :data=\\\"child\\\" :force-non-local=\\\"true\\\" :id=\\\"children[index].vmId + '_Errors'\\\" />\\n </div>\\n </div>\\n <Comments :data=\\\"data\\\" />\\n <AdminSettingsDifferences :data=\\\"data\\\" />\\n <ErrorList :data=\\\"data\\\" />\\n </fieldset>\\n</template>\\n<script lang=\\\"ts\\\">\\nimport { defineComponent, ref, computed, inject, watch } from \\\"vue\\\";\\nimport { combineLatest, from } from \\\"rxjs\\\";\\nimport { useObservable } from \\\"@vueuse/rxjs\\\";\\nimport { map, switchMap } from \\\"rxjs/operators\\\";\\nimport { usePageStore } from \\\"../pageState/store\\\";\\nimport { useMainStore } from \\\"@/mainStore\\\";\\nimport { props, Props, components, setup } from \\\"./BaseDefMixin.3\\\";\\nimport type { BaseControlDefBase, BaseElementDefBase } from \\\"../elements/BaseElementDef\\\";\\nimport type AddressDef from \\\"../elements/AddressDef\\\";\\nimport type { AddressSettings } from \\\"@cs-ts/address-settings\\\";\\nimport type { ObservableReturnType } from \\\"@/lib/observableHelpers\\\";\\nimport AddressConfirmModal from \\\"../dialogs/AddressConfirm.3.vue\\\";\\nimport { showModalInjectKey, type showModal } from \\\"@/AppShell.3.vue.InjectKeys\\\";\\nimport { VerifiedAddress } from \\\"../elements/AddressDef\\\";\\nimport DisplayIfOtherHasValueDef from \\\"../elements/DisplayIfOtherHasValueDef\\\";\\nimport { isNullOrWhitespace } from \\\"@/lib/whitespaceMethods\\\";\\nimport resolvablePromise from \\\"@/lib/resolvablePromise\\\";\\nimport { AddressVerificationEnum } from \\\"@cs-ts/address-verification-enum\\\";\\nimport { asyncComputed } from \\\"@vueuse/core\\\";\\nimport { KnownFeatureFlags } from \\\"@cs/KnownFeatureFlags\\\";\\nexport default defineComponent({\\n props: props,\\n components: {\\n ...components,\\n },\\n //@ts-ignore\\n setup(props: Props<AddressDef, AddressSettings>) {\\n const showModal = inject(showModalInjectKey) as showModal;\\n const base = setup<AddressDef, AddressSettings>(props);\\n const verificationPromise = ref<ReturnType<typeof resolvablePromise<void>>>(resolvablePromise());\\n const pageStore = usePageStore();\\n const mainStore = useMainStore();\\n const isVerifying = ref(false);\\n\\n const addressVerifyEnabled = asyncComputed(() => {\\n return mainStore.isFeatureFlagActiveAsync(KnownFeatureFlags.EnableAddressVerify.Id);\\n });\\n const adminReview = computed(() => pageStore.adminReview);\\n const singleLabel = computed(() => (base.settings.value as AddressSettings).layout == 1);\\n const currentAddressData = computed({\\n get() {\\n return props.data.currentAddressData;\\n },\\n set(value) {\\n //eslint-disable-next-line vue/no-mutating-props\\n props.data.currentAddressData = value;\\n },\\n });\\n\\n const allInputsFields$ = (props.data as BaseElementDefBase)._children$.pipe(\\n switchMap((children: ObservableReturnType<BaseElementDefBase[\\\"_children$\\\"]>) => combineLatest(children.map(child => [from([[child]]), child._children$]).flat())),\\n map(children => children.flat()),\\n );\\n const allInputsFields = useObservable(allInputsFields$);\\n\\n const inputsFields$ = allInputsFields$.pipe(\\n switchMap(input => combineLatest((input as BaseControlDefBase[]).map(child => (child.visible$ ? child.visible$().pipe(map(v => (v ? child : null))) : from([child]))))),\\n map(children => children.filter(i => i != null) as BaseElementDefBase[]),\\n );\\n const inputsFields = useObservable(inputsFields$);\\n\\n if (base.settings.value.verifyAddress != AddressVerificationEnum.Off) {\\n const inputsFieldsEdited$ = inputsFields$.pipe(\\n map(input => input.filter(i => !(i instanceof DisplayIfOtherHasValueDef))),\\n switchMap(input => combineLatest((input as BaseControlDefBase[]).map(i => i.edited$()))),\\n );\\n const inputsFieldsEdited = useObservable(inputsFieldsEdited$);\\n\\n const verifyAddress = async () => {\\n const deletePromise = () => {\\n verificationPromise.value.resolve();\\n pageStore.pendingAddressVerifications.delete(verificationPromise.value!);\\n };\\n const { Address1: address1, Address2: address2, City: city, State: state, Zip: zip, Country: country } = await getAddressData();\\n const userEnteredAddress = { Address1: address1, Address2: address2, City: city, State: state, Zip: zip, Country: country };\\n if (isNullOrWhitespace(address1) || isNullOrWhitespace(city) || isNullOrWhitespace(state) || isNullOrWhitespace(zip) || (base.settings.value.allowInternational ? isNullOrWhitespace(country) : false) || JSON.stringify(userEnteredAddress) == currentAddressData.value || isVerifying.value) {\\n return;\\n }\\n isVerifying.value = true;\\n (async () => {\\n if (!pageStore.pendingAddressVerifications.has(verificationPromise.value)) {\\n pageStore.pendingAddressVerifications.add(verificationPromise.value);\\n }\\n const otherPendingAddressVerifications = Array.from(pageStore.pendingAddressVerifications).filter(p => p !== verificationPromise.value);\\n if (otherPendingAddressVerifications.length > 0) {\\n await Promise.all(otherPendingAddressVerifications);\\n }\\n\\n let suggestionPopulated = false;\\n const populateSuggestedAddress = (suggested: VerifiedAddress) => {\\n const address1Control = getControl(\\\"Address1\\\", true);\\n const address2Control = getControl(\\\"Address2\\\", true);\\n const cityControl = getControl(\\\"City\\\", true);\\n const stateControl = getControl(\\\"State\\\", true);\\n const zipControl = getControl(\\\"Zip\\\", true);\\n const provinceControl = getControl(\\\"Province\\\", true);\\n const regionControl = getControl(\\\"Region\\\", true);\\n const postalCodeControl = getControl(\\\"PostalCode\\\", true);\\n const countryControl = getControl(\\\"Country\\\", true);\\n\\n const address1 = suggested.Address1 ?? \\\"\\\";\\n const address2 = suggested.Address2 ?? \\\"\\\";\\n const city = suggested.City ?? \\\"\\\";\\n const state = suggested.State ?? \\\"\\\";\\n const zip = suggested.ZipCode ?? \\\"\\\";\\n const country = suggested.Country ?? \\\"\\\";\\n\\n address1Control?.setValue(address1);\\n address2Control?.setValue(address2);\\n cityControl?.setValue(city);\\n (stateControl ?? provinceControl ?? regionControl)?.setValue(state);\\n (zipControl ?? postalCodeControl)?.setValue(zip);\\n countryControl?.setValue(country);\\n\\n suggestionPopulated = true;\\n currentAddressData.value = JSON.stringify({ Address1: address1, Address2: address2, City: city, State: state, Zip: zip, Country: country });\\n };\\n\\n const { Success: success, AddressChanged: addressChanged, Result: suggestedAddress } = await props.data.verifyAddress(JSON.stringify(userEnteredAddress));\\n if (success && addressChanged) {\\n showModal(\\n AddressConfirmModal,\\n {\\n data: props.data,\\n userEnteredAddress,\\n suggestedAddress,\\n populateSuggestedAddress,\\n triggerElement: document.activeElement,\\n },\\n {\\n \\\"before-close\\\"() {\\n if (base.settings.value.verifyAddress == AddressVerificationEnum.Verify && !suggestionPopulated) {\\n currentAddressData.value = JSON.stringify(userEnteredAddress);\\n } else if (base.settings.value.verifyAddress == AddressVerificationEnum.VerifyReFormat) {\\n populateSuggestedAddress(suggestedAddress);\\n }\\n deletePromise();\\n },\\n },\\n {\\n ...(base.settings.value.verifyAddress == AddressVerificationEnum.Verify ? { \\\"click-to-close\\\": false } : {}),\\n },\\n );\\n } else {\\n deletePromise();\\n }\\n await verificationPromise.value;\\n })().finally(() => {\\n isVerifying.value = false;\\n deletePromise();\\n verificationPromise.value = resolvablePromise();\\n });\\n };\\n const getAddressData = async () => {\\n const getValue = (name: string) => getControl(name)?.effectiveValueList();\\n const address1 = (await getValue(\\\"Address1\\\"))?.[0] ?? \\\"\\\";\\n const address2 = (await getValue(\\\"Address2\\\"))?.[0] ?? \\\"\\\";\\n const city = (await getValue(\\\"City\\\"))?.[0] ?? \\\"\\\";\\n const state = (await (getValue(\\\"State\\\") ?? getValue(\\\"Province\\\") ?? getValue(\\\"Region\\\")))?.[0] ?? \\\"\\\";\\n const zip = (await (getValue(\\\"Zip\\\") ?? getValue(\\\"PostalCode\\\")))?.[0] ?? \\\"\\\";\\n const country = (await getValue(\\\"Country\\\"))?.[0] ?? \\\"\\\";\\n\\n return { Address1: address1, Address2: address2, City: city, State: state, Zip: zip, Country: country };\\n };\\n const getControl = (name: string, includeAll: boolean = false) => {\\n return ((includeAll ? allInputsFields.value : inputsFields.value) ?? [])?.find(i => i.id?.includes(name)) as BaseControlDefBase | null;\\n };\\n\\n watch(inputsFieldsEdited, () => {\\n if (addressVerifyEnabled.value && !isVerifying.value) {\\n verifyAddress();\\n }\\n });\\n }\\n\\n return {\\n AddressVerificationEnum,\\n singleLabel,\\n inputsFields,\\n effectiveLabel: useObservable(props.data.effectiveLabel$()),\\n effectiveLabelText: useObservable(props.data.effectiveLabelText$()),\\n ...base.expose,\\n adminReview,\\n };\\n },\\n});\\n</script>\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `\n.address-form-group[data-v-7883c014] {\n margin-bottom: 0;\n}\n.address-block-label[data-v-7883c014] {\n font-size: 1em;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/elementTemplates/DatePickerDef.3.vue\"],\"names\":[],\"mappings\":\";AACA;IACI,gBAAgB;AACpB;AACA;IACI,cAAc;AAClB\",\"sourcesContent\":[\"<style scoped>\\n.address-form-group {\\n margin-bottom: 0;\\n}\\n.address-block-label {\\n font-size: 1em;\\n}\\n</style>\\n<template>\\n <fieldset class=\\\"form-group clearfix\\\" :class=\\\"[colClass]\\\">\\n <legend :aria-label=\\\"effectiveLabelText\\\" class=\\\"highlight-on-child-error address-block-label control-label\\\" v-if=\\\"effectiveLabelText == effectiveLabel\\\" :class=\\\"settings.required && singleLabel ? 'dfRequired' : ''\\\" :style=\\\"singleLabel ? 'margin-bottom:10px' : ''\\\">\\n {{ effectiveLabelText }}\\n <HelpIcon :text=\\\"settings.helpText\\\" v-if=\\\"!isViewOnly\\\" />\\n </legend>\\n\\n <ChildrenList :children-ids=\\\"children\\\" :view-only=\\\"isViewOnly\\\"></ChildrenList>\\n\\n <div class=\\\"dfCompositControlChildMargin\\\" data-ng-bind=\\\"settings.showErrorsLocally\\\">\\n <div v-for=\\\"child in children\\\">\\n <ErrorList :data=\\\"child\\\" :force-non-local=\\\"true\\\" :id=\\\"child.vmId + '_Errors'\\\" />\\n </div>\\n </div>\\n <Comments :data=\\\"data\\\" />\\n <AdminSettingsDifferences :data=\\\"data\\\" />\\n </fieldset>\\n</template>\\n<script lang=\\\"ts\\\">\\nimport { defineComponent, computed } from \\\"vue\\\";\\nimport { props, Props, components, setup } from \\\"./BaseDefMixin.3\\\";\\nimport type DatePickerDef from \\\"../elements/DatePickerDef\\\";\\nimport { DatePickerSettings } from \\\"@cs-ts/date-picker-settings\\\";\\nimport { useObservable } from \\\"@vueuse/rxjs\\\";\\nexport default defineComponent({\\n components: {\\n ...components,\\n //DatePicker,\\n },\\n props: props,\\n //@ts-ignore\\n setup(props: Props<DatePickerDef, DatePickerSettings>) {\\n const base = setup<DatePickerDef, DatePickerSettings>(props);\\n\\n const singleLabel = computed(() => base.settings.value.layout == 2 || base.settings.value.datePeriod == 0); // combined or year (which is always one label)\\n\\n const effectiveLabel = useObservable(props.data.effectiveLabel$());\\n const effectiveLabelText = useObservable(props.data.effectiveLabelText$());\\n\\n return {\\n singleLabel,\\n effectiveLabel,\\n effectiveLabelText,\\n\\n ...base.expose,\\n };\\n },\\n});\\n</script>\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `\n.df-section-desc[data-v-013c9e04] {\n padding-left: 5px;\n white-space: pre-line;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/elementTemplates/SectionDef.3.vue\"],\"names\":[],\"mappings\":\";AACA;IACI,iBAAiB;IACjB,qBAAqB;AACzB\",\"sourcesContent\":[\"<style scoped>\\n.df-section-desc {\\n padding-left: 5px;\\n white-space: pre-line;\\n}\\n</style>\\n<template>\\n <div class=\\\"DFSectionHeading\\\" :class=\\\"[colClass]\\\">\\n <h2 class=\\\"df-section-title\\\">{{ effectiveLabel }}</h2>\\n <div v-if=\\\"settings.description\\\">\\n <p class=\\\"df-section-desc\\\">{{ settings.description }}</p>\\n </div>\\n <div class=\\\"DFSectionContents clearfix\\\">\\n <ChildrenList :children-ids=\\\"children\\\" :view-only=\\\"isViewOnly\\\"></ChildrenList>\\n </div>\\n <ErrorList :data=\\\"data\\\" />\\n <AdminSettingsDifferences :data=\\\"data\\\" />\\n </div>\\n</template>\\n<script lang=\\\"ts\\\">\\nimport { useObservable } from \\\"@vueuse/rxjs\\\";\\nimport { defineComponent } from \\\"vue\\\";\\nimport { props, Props, components, setup } from \\\"./BaseDefMixin.3\\\";\\nimport type SectionDef from \\\"../elements/SectionDef\\\";\\nimport type { SectionSettings } from \\\"@cs-ts/section-settings\\\";\\nexport default defineComponent({\\n components: {\\n ...components,\\n //DatePicker,\\n },\\n props: props,\\n //@ts-ignore\\n setup(props: Props<SectionDef, SectionSettings>) {\\n const base = setup<SectionDef, SectionSettings>(props);\\n\\n const effectiveLabel = useObservable(props.data.effectiveLabel$());\\n\\n return {\\n effectiveLabel,\\n\\n ...base.expose,\\n };\\n },\\n});\\n</script>\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `\n.validation-notice[data-v-7bbbd6aa] {\n display: inline-block;\n background: #eeeeee;\n border-radius: 4px;\n padding: 4px 8px;\n margin-bottom: 5px;\n font-size: 0.8em;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/elementTemplates/ValidationDef.3.vue\"],\"names\":[],\"mappings\":\";AACA;IACI,qBAAqB;IACrB,mBAAmB;IACnB,kBAAkB;IAClB,gBAAgB;IAChB,kBAAkB;IAClB,gBAAgB;AACpB\",\"sourcesContent\":[\"<style scoped>\\n.validation-notice {\\n display: inline-block;\\n background: #eeeeee;\\n border-radius: 4px;\\n padding: 4px 8px;\\n margin-bottom: 5px;\\n font-size: 0.8em;\\n}\\n</style>\\n<template>\\n <div class=\\\"form-group clearfix no-focus\\\" :class=\\\"[settings.isChild ? 'form-group-child' : null, colClass]\\\" :style=\\\"adminPreview && settings.serverSide ? 'display:flex' : ''\\\">\\n <ErrorList :data=\\\"data\\\" :id=\\\"errorId\\\" />\\n <AdminSettingsDifferences :data=\\\"data\\\" />\\n <HelpIcon class=\\\"d-inline-flex ml-1\\\" iconClass=\\\"icon-warning\\\" v-if=\\\"adminPreview && settings.serverSide && !valid\\\" text=\\\"Validation on Section Change or Submit setting is ignored in Preview.\\\" />\\n </div>\\n</template>\\n<script lang=\\\"ts\\\">\\nimport { defineComponent, computed } from \\\"vue\\\";\\nimport HelpIcon from \\\"@/lib/HelpIcon.3.vue\\\";\\nimport { usePageStore } from \\\"../pageState/store\\\";\\nimport { props, Props, components, setup } from \\\"./BaseDefMixin.3\\\";\\nimport { useObservable } from \\\"@vueuse/rxjs\\\";\\nimport type ValidationDef from \\\"../elements/ValidationDef\\\";\\nimport type { ValidationSettings } from \\\"@cs-ts/validation-settings\\\";\\nexport default defineComponent({\\n components: {\\n ...components,\\n HelpIcon,\\n },\\n props: props,\\n //@ts-ignore\\n setup(props: Props<ValidationDef, ValidationSettings>) {\\n const base = setup<ValidationDef, ValidationSettings>(props);\\n\\n const pageStore = usePageStore();\\n const adminPreview = computed(() => pageStore.adminPreview);\\n\\n const valid = useObservable(props.data.valid$());\\n\\n return {\\n adminPreview,\\n valid,\\n\\n ...base.expose,\\n };\\n },\\n});\\n</script>\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/*style overrides to accommodate forms with comments*/\n.public-page-body .body-content {\n padding: 0;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./../Page.3.vue\",\"webpack://./public/pages/Page.3.vue\"],\"names\":[],\"mappings\":\"AAAA,qDAAqD;ACErD;EACI,UAAA;ADAJ\",\"sourcesContent\":[\"/*style overrides to accommodate forms with comments*/\\n.public-page-body .body-content {\\n padding: 0;\\n}\\n\",\"\\n/*style overrides to accommodate forms with comments*/\\n.public-page-body .body-content {\\n padding: 0;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/* COLORS */\n/* MEASUREMENTS */\n.testModeBar[data-v-6f55b7d6] {\n margin-bottom: 0;\n text-align: center;\n font-size: 2em;\n border-radius: 0;\n height: 75px;\n}\n.alert-test[data-v-6f55b7d6] {\n background: #111;\n color: #fff;\n font-weight: 600;\n}\n.alert-in-progress[data-v-6f55b7d6],\n.alert-issues[data-v-6f55b7d6] {\n background: #ffc107;\n color: #000;\n font-weight: 600;\n border-radius: 0;\n}\n.notificationBarTop[data-v-6f55b7d6] {\n position: fixed;\n width: 100%;\n z-index: 1029;\n}\n.notificationBarTop a[data-v-6f55b7d6] {\n text-decoration: underline;\n}\n.adminDiffControlContainer[data-v-6f55b7d6] {\n padding: 10px 15px;\n}\n.adminDiffControlContainer .changedKey[data-v-6f55b7d6],\n.adminDiffControlContainer .deletedKey[data-v-6f55b7d6],\n.adminDiffControlContainer .addedKey[data-v-6f55b7d6] {\n color: white;\n}\n.adminDiffControlContainer .changedKey[data-v-6f55b7d6] {\n background: #2568db;\n}\n.adminDiffControlContainer .deletedKey[data-v-6f55b7d6] {\n background: #d70015;\n}\n.adminDiffControlContainer .addedKey[data-v-6f55b7d6] {\n background: #208337;\n}\n.changed[data-v-6f55b7d6],\n.deleted[data-v-6f55b7d6],\n.new[data-v-6f55b7d6] {\n border-style: dashed;\n border-width: 2px;\n}\n.changed[data-v-6f55b7d6] {\n border-color: #2568db !important;\n}\n.deleted[data-v-6f55b7d6] {\n border-color: #d70015 !important;\n}\n.new[data-v-6f55b7d6] {\n border-color: #208337 !important;\n}\n.submissions-left-col[data-v-6f55b7d6] {\n background: #ffffff;\n}\n.submissions-right-col[data-v-6f55b7d6] {\n border-left: 1px solid #cccccc;\n background: whitesmoke;\n}\n.task-divider[data-v-6f55b7d6] {\n display: flex;\n align-items: center;\n flex-wrap: nowrap;\n position: absolute;\n top: 0;\n height: 100%;\n width: 4px;\n z-index: 4;\n}\n.task-divider .icon[data-v-6f55b7d6] {\n display: inline-flex;\n align-items: center;\n height: 50px;\n outline: none;\n box-shadow: none;\n border-radius: 0;\n cursor: pointer;\n}\n.task-divider .icon[data-v-6f55b7d6]:focus {\n outline: auto;\n}\n.task-divider .icon[data-v-6f55b7d6]:hover,\n.task-divider .icon[data-v-6f55b7d6]:focus {\n background: #e7e9ec;\n}\n.task-divider .task-divider-line[data-v-6f55b7d6] {\n display: inline-flex;\n height: 100%;\n background: transparent;\n padding: 1.5px;\n cursor: col-resize;\n -webkit-transition: all ease 0.15s;\n transition: all ease 0.15s;\n}\n.task-divider .task-divider-line[data-v-6f55b7d6]:hover {\n background: dodgerblue;\n}\n.issues .icon-attention-solid[data-v-6f55b7d6]:before {\n color: #ffc107;\n}\n.nav-item.disabled[data-v-6f55b7d6] {\n color: #999;\n}\n.nav-tabs[data-v-6f55b7d6] {\n flex-basis: content;\n}\n@media (max-width: 767px) {\n.left[data-v-6f55b7d6],\n .right[data-v-6f55b7d6] {\n display: inline-block;\n width: 100%;\n padding: 5px;\n}\n.right[data-v-6f55b7d6] {\n text-align: right;\n border-top: 1px solid #ccc;\n}\n.left > .key[data-v-6f55b7d6] {\n border-bottom: 1px solid #ccc;\n width: calc(100% + 10px);\n margin: -5px -5px 5px -5px;\n padding: 5px;\n}\n}\n@media (max-width: 767px) {\n.df-public-nav.df-collapsed .list-group-item[data-v-6f55b7d6]:not(.active) {\n border-width: 0 !important;\n}\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./../Page.3.vue\",\"webpack://./public/pages/Page.3.vue\"],\"names\":[],\"mappings\":\"AAAA,WAAW;AACX,iBAAiB;ACEjB;EACI,gBAAA;EACA,kBAAA;EACA,cAAA;EACA,gBAAA;EACA,YAAA;ADAJ;ACGA;EACI,gBAAA;EACA,WAAA;EACA,gBAAA;ADDJ;ACIA;;EAEI,mBAAA;EACA,WAAA;EACA,gBAAA;EACA,gBAAA;ADFJ;ACKA;EACI,eAAA;EACA,WAAA;EACA,aAAA;ADHJ;ACAA;EAKQ,0BAAA;ADFR;ACQA;EACI,kBAAA;ADNJ;ACKA;;;EAKQ,YAAA;ADLR;ACAA;EAQQ,mBAAA;ADLR;ACHA;EAWQ,mBAAA;ADLR;ACNA;EAcQ,mBAAA;ADLR;ACSA;;;EAGI,oBAAA;EACA,iBAAA;ADPJ;ACSA;EACI,gCAAA;ADPJ;ACSA;EACI,gCAAA;ADPJ;ACSA;EACI,gCAAA;ADPJ;ACSA;EAEI,mBAAA;ADRJ;ACUA;EACI,8BAAA;EACA,sBAAA;ADRJ;ACUA;EACI,aAAA;EACA,mBAAA;EACA,iBAAA;EACA,kBAAA;EACA,MAAA;EACA,YAAA;EACA,UAAA;EACA,UAAA;ADRJ;ACAA;EAWQ,oBAAA;EACA,mBAAA;EACA,YAAA;EACA,aAAA;EACA,gBAAA;EACA,gBAAA;EACA,eAAA;ADRR;ACSQ;EACI,aAAA;ADPZ;ACSQ;;EAEI,mBAAA;ADPZ;AChBA;EA4BQ,oBAAA;EACA,YAAA;EACA,uBAAA;EACA,cAAA;EACA,kBAAA;EACA,kCAAA;EACA,0BAAA;ADTR;ACUQ;EACI,sBAAA;ADRZ;ACaA;EACI,cAAA;ADXJ;ACcA;EACI,WAAA;ADZJ;ACeA;EACI,mBAAA;ADbJ;ACqBA;AACI;;IAEI,qBAAA;IACA,WAAA;IACA,YAAA;ADnBN;ACqBE;IACI,iBAAA;IACA,0BAAA;ADnBN;ACqBE;IACI,6BAAA;IACA,wBAAA;IACA,0BAAA;IACA,YAAA;ADnBN;AACF;ACsBA;AACI;IACI,0BAAA;ADpBN;AACF\",\"sourcesContent\":[\"/* COLORS */\\n/* MEASUREMENTS */\\n.testModeBar {\\n margin-bottom: 0;\\n text-align: center;\\n font-size: 2em;\\n border-radius: 0;\\n height: 75px;\\n}\\n.alert-test {\\n background: #111;\\n color: #fff;\\n font-weight: 600;\\n}\\n.alert-in-progress,\\n.alert-issues {\\n background: #ffc107;\\n color: #000;\\n font-weight: 600;\\n border-radius: 0;\\n}\\n.notificationBarTop {\\n position: fixed;\\n width: 100%;\\n z-index: 1029;\\n}\\n.notificationBarTop a {\\n text-decoration: underline;\\n}\\n.adminDiffControlContainer {\\n padding: 10px 15px;\\n}\\n.adminDiffControlContainer .changedKey,\\n.adminDiffControlContainer .deletedKey,\\n.adminDiffControlContainer .addedKey {\\n color: white;\\n}\\n.adminDiffControlContainer .changedKey {\\n background: #2568db;\\n}\\n.adminDiffControlContainer .deletedKey {\\n background: #d70015;\\n}\\n.adminDiffControlContainer .addedKey {\\n background: #208337;\\n}\\n.changed,\\n.deleted,\\n.new {\\n border-style: dashed;\\n border-width: 2px;\\n}\\n.changed {\\n border-color: #2568db !important;\\n}\\n.deleted {\\n border-color: #d70015 !important;\\n}\\n.new {\\n border-color: #208337 !important;\\n}\\n.submissions-left-col {\\n background: #ffffff;\\n}\\n.submissions-right-col {\\n border-left: 1px solid #cccccc;\\n background: whitesmoke;\\n}\\n.task-divider {\\n display: flex;\\n align-items: center;\\n flex-wrap: nowrap;\\n position: absolute;\\n top: 0;\\n height: 100%;\\n width: 4px;\\n z-index: 4;\\n}\\n.task-divider .icon {\\n display: inline-flex;\\n align-items: center;\\n height: 50px;\\n outline: none;\\n box-shadow: none;\\n border-radius: 0;\\n cursor: pointer;\\n}\\n.task-divider .icon:focus {\\n outline: auto;\\n}\\n.task-divider .icon:hover,\\n.task-divider .icon:focus {\\n background: #e7e9ec;\\n}\\n.task-divider .task-divider-line {\\n display: inline-flex;\\n height: 100%;\\n background: transparent;\\n padding: 1.5px;\\n cursor: col-resize;\\n -webkit-transition: all ease 0.15s;\\n transition: all ease 0.15s;\\n}\\n.task-divider .task-divider-line:hover {\\n background: dodgerblue;\\n}\\n.issues .icon-attention-solid:before {\\n color: #ffc107;\\n}\\n.nav-item.disabled {\\n color: #999;\\n}\\n.nav-tabs {\\n flex-basis: content;\\n}\\n@media (max-width: 767px) {\\n .left,\\n .right {\\n display: inline-block;\\n width: 100%;\\n padding: 5px;\\n }\\n .right {\\n text-align: right;\\n border-top: 1px solid #ccc;\\n }\\n .left > .key {\\n border-bottom: 1px solid #ccc;\\n width: calc(100% + 10px);\\n margin: -5px -5px 5px -5px;\\n padding: 5px;\\n }\\n}\\n@media (max-width: 767px) {\\n .df-public-nav.df-collapsed .list-group-item:not(.active) {\\n border-width: 0 !important;\\n }\\n}\\n\",\"\\n@import \\\"/lib/Colors.less\\\";\\n\\n.testModeBar {\\n margin-bottom: 0;\\n text-align: center;\\n font-size: 2em;\\n border-radius: 0;\\n height: 75px;\\n}\\n\\n.alert-test {\\n background: #111;\\n color: #fff;\\n font-weight: 600;\\n}\\n\\n.alert-in-progress,\\n.alert-issues {\\n background: @warning;\\n color: #000;\\n font-weight: 600;\\n border-radius: 0;\\n}\\n\\n.notificationBarTop {\\n position: fixed;\\n width: 100%;\\n z-index: 1029;\\n a {\\n text-decoration: underline;\\n }\\n}\\n@added: #208337;\\n@changed: #2568db;\\n@deleted: #d70015;\\n.adminDiffControlContainer {\\n padding: 10px 15px;\\n .changedKey,\\n .deletedKey,\\n .addedKey {\\n color: white;\\n }\\n .changedKey {\\n background: @changed;\\n }\\n .deletedKey {\\n background: @deleted;\\n }\\n .addedKey {\\n background: @added;\\n }\\n}\\n\\n.changed,\\n.deleted,\\n.new {\\n border-style: dashed;\\n border-width: 2px;\\n}\\n.changed {\\n border-color: @changed !important;\\n}\\n.deleted {\\n border-color: @deleted !important;\\n}\\n.new {\\n border-color: @added !important;\\n}\\n.submissions-left-col {\\n // container: leftSubmissions / inline-size;\\n background: #ffffff;\\n}\\n.submissions-right-col {\\n border-left: 1px solid #cccccc;\\n background: whitesmoke;\\n}\\n.task-divider {\\n display: flex;\\n align-items: center;\\n flex-wrap: nowrap;\\n position: absolute;\\n top: 0;\\n height: 100%;\\n width: 4px;\\n z-index: 4;\\n\\n .icon {\\n display: inline-flex;\\n align-items: center;\\n height: 50px;\\n outline: none;\\n box-shadow: none;\\n border-radius: 0;\\n cursor: pointer;\\n &:focus {\\n outline: auto;\\n }\\n &:hover,\\n &:focus {\\n background: @light-gray-dark;\\n }\\n }\\n\\n .task-divider-line {\\n display: inline-flex;\\n height: 100%;\\n background: transparent;\\n padding: 1.5px;\\n cursor: col-resize;\\n -webkit-transition: all ease 0.15s;\\n transition: all ease 0.15s;\\n &:hover {\\n background: dodgerblue;\\n }\\n }\\n}\\n\\n.issues .icon-attention-solid:before {\\n color: @warning;\\n}\\n\\n.nav-item.disabled {\\n color: #999;\\n}\\n\\n.nav-tabs {\\n flex-basis: content;\\n}\\n// @container leftSubmissions (max-width: 576px) {\\n// .button-controls {\\n// width: 100%;\\n// }\\n// }\\n\\n@media (max-width: 767px) {\\n .left,\\n .right {\\n display: inline-block;\\n width: 100%;\\n padding: 5px;\\n }\\n .right {\\n text-align: right;\\n border-top: 1px solid #ccc;\\n }\\n .left > .key {\\n border-bottom: 1px solid #ccc;\\n width: calc(100% + 10px);\\n margin: -5px -5px 5px -5px;\\n padding: 5px;\\n }\\n}\\n\\n@media (max-width: 767px) {\\n .df-public-nav.df-collapsed .list-group-item:not(.active) {\\n border-width: 0 !important;\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.adminDiffControlContainer[data-v-68300dfe] {\n padding: 10px 15px;\n}\n.adminDiffControlContainer .changedKey[data-v-68300dfe],\n.adminDiffControlContainer .deletedKey[data-v-68300dfe],\n.adminDiffControlContainer .addedKey[data-v-68300dfe] {\n color: white;\n}\n.adminDiffControlContainer .changedKey[data-v-68300dfe] {\n background: #2568db;\n}\n.adminDiffControlContainer .deletedKey[data-v-68300dfe] {\n background: #d70015;\n}\n.adminDiffControlContainer .addedKey[data-v-68300dfe] {\n background: #208337;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/Page/Diff.3.vue\",\"webpack://./../Diff.3.vue\"],\"names\":[],\"mappings\":\"AAIA;EACI,kBAAA;ACHJ;ADEA;;;EAKQ,YAAA;ACFR;ADHA;EAQQ,mBAAA;ACFR;ADNA;EAWQ,mBAAA;ACFR;ADTA;EAcQ,mBAAA;ACFR\",\"sourcesContent\":[\"\\n@added: #208337;\\n@changed: #2568db;\\n@deleted: #d70015;\\n.adminDiffControlContainer {\\n padding: 10px 15px;\\n .changedKey,\\n .deletedKey,\\n .addedKey {\\n color: white;\\n }\\n .changedKey {\\n background: @changed;\\n }\\n .deletedKey {\\n background: @deleted;\\n }\\n .addedKey {\\n background: @added;\\n }\\n}\\n\",\".adminDiffControlContainer {\\n padding: 10px 15px;\\n}\\n.adminDiffControlContainer .changedKey,\\n.adminDiffControlContainer .deletedKey,\\n.adminDiffControlContainer .addedKey {\\n color: white;\\n}\\n.adminDiffControlContainer .changedKey {\\n background: #2568db;\\n}\\n.adminDiffControlContainer .deletedKey {\\n background: #d70015;\\n}\\n.adminDiffControlContainer .addedKey {\\n background: #208337;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.historyentry-text[data-v-3ef09594] {\n white-space: pre-wrap;\n}\n.commentHeader[data-v-3ef09594] {\n font-size: 1.2em;\n}\n.history-group[data-v-3ef09594] {\n margin-bottom: 20px;\n}\n.elementSchemaLabel[data-v-3ef09594] {\n margin: 0;\n}\n.submissions-comment[data-v-3ef09594] {\n padding: 10px;\n border-bottom: 1px solid #cccccc;\n}\n.submissions-comment .comment-text[data-v-3ef09594] {\n margin: 0;\n}\n.submissions-comment .help-block[data-v-3ef09594] {\n white-space: nowrap;\n display: block;\n}\n.submissions-comment[data-v-3ef09594]:first-of-type {\n margin-top: 0;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/Page/History.3.vue\",\"webpack://./../History.3.vue\"],\"names\":[],\"mappings\":\"AACA;EACI,qBAAA;ACAJ;ADEA;EACI,gBAAA;ACAJ;ADEA;EACI,mBAAA;ACAJ;ADEA;EACI,SAAA;ACAJ;ADEA;EACI,aAAA;EACA,gCAAA;ACAJ;ADFA;EAIQ,SAAA;ACCR;ADLA;EAOQ,mBAAA;EACA,cAAA;ACCR;ADCI;EACI,aAAA;ACCR\",\"sourcesContent\":[\"\\n.historyentry-text {\\n white-space: pre-wrap;\\n}\\n.commentHeader {\\n font-size: 1.2em;\\n}\\n.history-group {\\n margin-bottom: 20px;\\n}\\n.elementSchemaLabel {\\n margin: 0;\\n}\\n.submissions-comment {\\n padding: 10px;\\n border-bottom: 1px solid #cccccc;\\n .comment-text {\\n margin: 0;\\n }\\n .help-block {\\n white-space: nowrap;\\n display: block;\\n }\\n &:first-of-type {\\n margin-top: 0;\\n }\\n}\\n\",\".historyentry-text {\\n white-space: pre-wrap;\\n}\\n.commentHeader {\\n font-size: 1.2em;\\n}\\n.history-group {\\n margin-bottom: 20px;\\n}\\n.elementSchemaLabel {\\n margin: 0;\\n}\\n.submissions-comment {\\n padding: 10px;\\n border-bottom: 1px solid #cccccc;\\n}\\n.submissions-comment .comment-text {\\n margin: 0;\\n}\\n.submissions-comment .help-block {\\n white-space: nowrap;\\n display: block;\\n}\\n.submissions-comment:first-of-type {\\n margin-top: 0;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.issueentry-text[data-v-4f4f2757] {\n white-space: pre-wrap;\n}\n.commentHeader[data-v-4f4f2757] {\n font-size: 1.2em;\n}\n.issue-group[data-v-4f4f2757] {\n margin-bottom: 20px;\n}\n.elementSchemaLabel[data-v-4f4f2757] {\n margin: 0;\n}\n.submissions-comment[data-v-4f4f2757] {\n padding: 10px;\n border-bottom: 1px solid #cccccc;\n}\n.submissions-comment .comment-text[data-v-4f4f2757] {\n margin: 0;\n}\n.submissions-comment .help-block[data-v-4f4f2757] {\n white-space: nowrap;\n display: block;\n}\n.submissions-comment[data-v-4f4f2757]:first-of-type {\n margin-top: 0;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/Page/Issues.3.vue\",\"webpack://./../Issues.3.vue\"],\"names\":[],\"mappings\":\"AACA;EACI,qBAAA;ACAJ;ADEA;EACI,gBAAA;ACAJ;ADEA;EACI,mBAAA;ACAJ;ADEA;EACI,SAAA;ACAJ;ADEA;EACI,aAAA;EACA,gCAAA;ACAJ;ADFA;EAIQ,SAAA;ACCR;ADLA;EAOQ,mBAAA;EACA,cAAA;ACCR;ADCI;EACI,aAAA;ACCR\",\"sourcesContent\":[\"\\n.issueentry-text {\\n white-space: pre-wrap;\\n}\\n.commentHeader {\\n font-size: 1.2em;\\n}\\n.issue-group {\\n margin-bottom: 20px;\\n}\\n.elementSchemaLabel {\\n margin: 0;\\n}\\n.submissions-comment {\\n padding: 10px;\\n border-bottom: 1px solid #cccccc;\\n .comment-text {\\n margin: 0;\\n }\\n .help-block {\\n white-space: nowrap;\\n display: block;\\n }\\n &:first-of-type {\\n margin-top: 0;\\n }\\n}\\n\",\".issueentry-text {\\n white-space: pre-wrap;\\n}\\n.commentHeader {\\n font-size: 1.2em;\\n}\\n.issue-group {\\n margin-bottom: 20px;\\n}\\n.elementSchemaLabel {\\n margin: 0;\\n}\\n.submissions-comment {\\n padding: 10px;\\n border-bottom: 1px solid #cccccc;\\n}\\n.submissions-comment .comment-text {\\n margin: 0;\\n}\\n.submissions-comment .help-block {\\n white-space: nowrap;\\n display: block;\\n}\\n.submissions-comment:first-of-type {\\n margin-top: 0;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/* COLORS */\n/* MEASUREMENTS */\n.overlayContainer[data-v-b0d9497c] {\n position: relative;\n}\n.overlayContainer .overlay[data-v-b0d9497c] {\n display: flex;\n align-items: center;\n margin: auto;\n z-index: 3;\n}\n.overlayContainer .overlay .overlayCenter[data-v-b0d9497c] {\n text-align: center;\n z-index: 5;\n opacity: 1;\n box-shadow: 0 0 50px 50px #ffffff;\n background: #ffffff;\n padding: 15px;\n max-width: 450px;\n}\n.adminDiffControlContainer[data-v-b0d9497c] {\n padding: 10px 15px;\n}\n.adminDiffControlContainer .changedKey[data-v-b0d9497c],\n.adminDiffControlContainer .deletedKey[data-v-b0d9497c],\n.adminDiffControlContainer .addedKey[data-v-b0d9497c] {\n color: white;\n}\n.adminDiffControlContainer .changedKey[data-v-b0d9497c] {\n background: #2568db;\n}\n.adminDiffControlContainer .deletedKey[data-v-b0d9497c] {\n background: #d70015;\n}\n.adminDiffControlContainer .addedKey[data-v-b0d9497c] {\n background: #208337;\n}\n.changed[data-v-b0d9497c],\n.deleted[data-v-b0d9497c],\n.new[data-v-b0d9497c] {\n border-style: dashed;\n border-width: 2px;\n}\n.changed[data-v-b0d9497c] {\n border-color: #2568db !important;\n}\n.deleted[data-v-b0d9497c] {\n border-color: #d70015 !important;\n}\n.new[data-v-b0d9497c] {\n border-color: #208337 !important;\n}\n.df-workflow-title[data-v-b0d9497c] {\n display: block;\n color: #687078;\n font-size: 0.6em;\n}\n.df-form-title[data-v-b0d9497c] {\n font-size: 26px;\n}\n.df-segment-title[data-v-b0d9497c] {\n display: block;\n margin-bottom: 7.5px;\n}\n.save-all-container[data-v-b0d9497c] {\n position: sticky;\n top: -10px;\n margin-top: -40px;\n margin-left: auto;\n padding: 0 15px;\n z-index: 10001;\n}\n.btn-outline-secondary[data-v-b0d9497c]:not(:hover):not(:focus) {\n background-color: #ffffff;\n}\n.alert-issues[data-v-b0d9497c] {\n background: #ffc107;\n color: #000;\n font-weight: 600;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./../PageSide.3.vue\",\"webpack://./public/pages/PageSide.3.vue\"],\"names\":[],\"mappings\":\"AAAA,WAAW;AACX,iBAAiB;ACCjB;EACI,kBAAA;ADCJ;ACFA;EAGQ,aAAA;EACA,mBAAA;EACA,YAAA;EACA,UAAA;ADER;ACRA;EAQY,kBAAA;EACA,UAAA;EACA,UAAA;EACA,iCAAA;EACA,mBAAA;EACA,aAAA;EACA,gBAAA;ADGZ;ACIA;EACI,kBAAA;ADFJ;ACCA;;;EAKQ,YAAA;ADDR;ACJA;EAQQ,mBAAA;ADDR;ACPA;EAWQ,mBAAA;ADDR;ACVA;EAcQ,mBAAA;ADDR;ACKA;;;EAGI,oBAAA;EACA,iBAAA;ADHJ;ACKA;EACI,gCAAA;ADHJ;ACKA;EACI,gCAAA;ADHJ;ACKA;EACI,gCAAA;ADHJ;ACKA;EACI,cAAA;EACA,cAAA;EACA,gBAAA;ADHJ;ACKA;EACI,eAAA;ADHJ;ACKA;EACI,cAAA;EACA,oBAAA;ADHJ;ACKA;EACI,gBAAA;EACA,UAAA;EACA,iBAAA;EACA,iBAAA;EACA,eAAA;EACA,cAAA;ADHJ;ACKA;EACI,yBAAA;ADHJ;ACKA;EACI,mBAAA;EACA,WAAA;EACA,gBAAA;ADHJ\",\"sourcesContent\":[\"/* COLORS */\\n/* MEASUREMENTS */\\n.overlayContainer {\\n position: relative;\\n}\\n.overlayContainer .overlay {\\n display: flex;\\n align-items: center;\\n margin: auto;\\n z-index: 3;\\n}\\n.overlayContainer .overlay .overlayCenter {\\n text-align: center;\\n z-index: 5;\\n opacity: 1;\\n box-shadow: 0 0 50px 50px #ffffff;\\n background: #ffffff;\\n padding: 15px;\\n max-width: 450px;\\n}\\n.adminDiffControlContainer {\\n padding: 10px 15px;\\n}\\n.adminDiffControlContainer .changedKey,\\n.adminDiffControlContainer .deletedKey,\\n.adminDiffControlContainer .addedKey {\\n color: white;\\n}\\n.adminDiffControlContainer .changedKey {\\n background: #2568db;\\n}\\n.adminDiffControlContainer .deletedKey {\\n background: #d70015;\\n}\\n.adminDiffControlContainer .addedKey {\\n background: #208337;\\n}\\n.changed,\\n.deleted,\\n.new {\\n border-style: dashed;\\n border-width: 2px;\\n}\\n.changed {\\n border-color: #2568db !important;\\n}\\n.deleted {\\n border-color: #d70015 !important;\\n}\\n.new {\\n border-color: #208337 !important;\\n}\\n.df-workflow-title {\\n display: block;\\n color: #687078;\\n font-size: 0.6em;\\n}\\n.df-form-title {\\n font-size: 26px;\\n}\\n.df-segment-title {\\n display: block;\\n margin-bottom: 7.5px;\\n}\\n.save-all-container {\\n position: sticky;\\n top: -10px;\\n margin-top: -40px;\\n margin-left: auto;\\n padding: 0 15px;\\n z-index: 10001;\\n}\\n.btn-outline-secondary:not(:hover):not(:focus) {\\n background-color: #ffffff;\\n}\\n.alert-issues {\\n background: #ffc107;\\n color: #000;\\n font-weight: 600;\\n}\\n\",\"\\n@import \\\"/lib/Colors.less\\\";\\n.overlayContainer {\\n position: relative;\\n .overlay {\\n display: flex;\\n align-items: center;\\n margin: auto;\\n z-index: 3;\\n .overlayCenter {\\n text-align: center;\\n z-index: 5;\\n opacity: 1;\\n box-shadow: 0 0 50px 50px #ffffff;\\n background: #ffffff;\\n padding: 15px;\\n max-width: 450px;\\n }\\n }\\n}\\n@added: #208337;\\n@changed: #2568db;\\n@deleted: #d70015;\\n.adminDiffControlContainer {\\n padding: 10px 15px;\\n .changedKey,\\n .deletedKey,\\n .addedKey {\\n color: white;\\n }\\n .changedKey {\\n background: @changed;\\n }\\n .deletedKey {\\n background: @deleted;\\n }\\n .addedKey {\\n background: @added;\\n }\\n}\\n\\n.changed,\\n.deleted,\\n.new {\\n border-style: dashed;\\n border-width: 2px;\\n}\\n.changed {\\n border-color: @changed !important;\\n}\\n.deleted {\\n border-color: @deleted !important;\\n}\\n.new {\\n border-color: @added !important;\\n}\\n.df-workflow-title {\\n display: block;\\n color: #687078;\\n font-size: 0.6em;\\n}\\n.df-form-title {\\n font-size: 26px;\\n}\\n.df-segment-title {\\n display: block;\\n margin-bottom: 7.5px;\\n}\\n.save-all-container {\\n position: sticky;\\n top: -10px;\\n margin-top: -40px;\\n margin-left: auto;\\n padding: 0 15px;\\n z-index: 10001;\\n}\\n.btn-outline-secondary:not(:hover):not(:focus) {\\n background-color: #ffffff;\\n}\\n.alert-issues {\\n background: @warning;\\n color: #000;\\n font-weight: 600;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.df-navigation-btn-container {\n display: grid;\n gap: 0.5em;\n grid-template-columns: repeat(auto-fit, minmax(0, min-content));\n align-items: start;\n justify-content: space-between;\n grid-template-areas: \"previous delete exit submit next\";\n}\n.df-navigation-btn-container button,\n.df-navigation-btn-container a {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n margin-bottom: unset !important;\n}\n.df-navigation-btn-container .df-save-and-exit-btn {\n grid-area: exit;\n}\n.df-navigation-btn-container .df-previous-btn {\n grid-area: previous;\n}\n.df-navigation-btn-container .df-save-and-continue-btn {\n grid-area: next;\n}\n.df-navigation-btn-container .df-delete {\n grid-area: delete;\n}\n.df-navigation-btn-container .df-submit-btn-container {\n grid-area: submit;\n display: flex;\n gap: 0.5em;\n flex-wrap: wrap;\n justify-content: end;\n}\n.button-condensed .df-navigation-btn-container,\n.button-condensed .df-submit-btn-container {\n display: flex;\n gap: 0.5em;\n flex-direction: column;\n justify-content: center;\n}\n.button-condensed .df-navigation-btn-container button,\n.button-condensed .df-submit-btn-container button,\n.button-condensed .df-navigation-btn-container a,\n.button-condensed .df-submit-btn-container a {\n width: 100%;\n margin: 0 !important;\n}\n.button-condensed .df-submit-btn-container {\n width: 100%;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/PageSide.3.vue\",\"webpack://./../PageSide.3.vue\"],\"names\":[],\"mappings\":\"AAEA;EACI,aAAA;EACA,UAAA;EACA,+DAAA;EACA,kBAAA;EACA,8BAAA;EACA,uDAAA;ACDJ;ADLA;;EAUQ,mBAAA;EACA,gBAAA;EACA,uBAAA;EACA,+BAAA;ACDR;ADZA;EAgBQ,eAAA;ACDR;ADfA;EAmBQ,mBAAA;ACDR;ADlBA;EAsBQ,eAAA;ACDR;ADrBA;EAyBQ,iBAAA;ACDR;ADxBA;EA4BQ,iBAAA;EACA,aAAA;EACA,UAAA;EACA,eAAA;EACA,oBAAA;ACDR;ADIA;;EAGQ,aAAA;EACA,UAAA;EACA,sBAAA;EACA,uBAAA;ACHR;ADHA;;;;EAUY,WAAA;EACA,oBAAA;ACDZ;ADVA;EAeQ,WAAA;ACFR\",\"sourcesContent\":[\"\\n@gap: 0.5em;\\n.df-navigation-btn-container {\\n display: grid;\\n gap: @gap;\\n grid-template-columns: repeat(auto-fit, minmax(0, min-content));\\n align-items: start;\\n justify-content: space-between;\\n grid-template-areas: \\\"previous delete exit submit next\\\";\\n\\n button,\\n a {\\n white-space: nowrap;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n margin-bottom: unset !important;\\n }\\n .df-save-and-exit-btn {\\n grid-area: exit;\\n }\\n .df-previous-btn {\\n grid-area: previous;\\n }\\n .df-save-and-continue-btn {\\n grid-area: next;\\n }\\n .df-delete {\\n grid-area: delete;\\n }\\n .df-submit-btn-container {\\n grid-area: submit;\\n display: flex;\\n gap: @gap;\\n flex-wrap: wrap;\\n justify-content: end;\\n }\\n}\\n.button-condensed {\\n .df-navigation-btn-container,\\n .df-submit-btn-container {\\n display: flex;\\n gap: @gap;\\n flex-direction: column;\\n justify-content: center;\\n\\n button,\\n a {\\n width: 100%;\\n margin: 0 !important;\\n }\\n }\\n .df-submit-btn-container {\\n width: 100%;\\n }\\n}\\n\",\".df-navigation-btn-container {\\n display: grid;\\n gap: 0.5em;\\n grid-template-columns: repeat(auto-fit, minmax(0, min-content));\\n align-items: start;\\n justify-content: space-between;\\n grid-template-areas: \\\"previous delete exit submit next\\\";\\n}\\n.df-navigation-btn-container button,\\n.df-navigation-btn-container a {\\n white-space: nowrap;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n margin-bottom: unset !important;\\n}\\n.df-navigation-btn-container .df-save-and-exit-btn {\\n grid-area: exit;\\n}\\n.df-navigation-btn-container .df-previous-btn {\\n grid-area: previous;\\n}\\n.df-navigation-btn-container .df-save-and-continue-btn {\\n grid-area: next;\\n}\\n.df-navigation-btn-container .df-delete {\\n grid-area: delete;\\n}\\n.df-navigation-btn-container .df-submit-btn-container {\\n grid-area: submit;\\n display: flex;\\n gap: 0.5em;\\n flex-wrap: wrap;\\n justify-content: end;\\n}\\n.button-condensed .df-navigation-btn-container,\\n.button-condensed .df-submit-btn-container {\\n display: flex;\\n gap: 0.5em;\\n flex-direction: column;\\n justify-content: center;\\n}\\n.button-condensed .df-navigation-btn-container button,\\n.button-condensed .df-submit-btn-container button,\\n.button-condensed .df-navigation-btn-container a,\\n.button-condensed .df-submit-btn-container a {\\n width: 100%;\\n margin: 0 !important;\\n}\\n.button-condensed .df-submit-btn-container {\\n width: 100%;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/* COLORS */\n/* MEASUREMENTS */\n.modal-content[data-v-37483b26] {\n width: min(90vw, 600px);\n}\n.address-group[data-v-37483b26] {\n gap: 1.25em;\n}\n.address-group .address-options[data-v-37483b26] {\n flex-grow: 1;\n padding: 1em 1em 0.75em;\n border: 1px solid #dee2e6;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./../AddressConfirm.3.vue\",\"webpack://./public/pages/dialogs/AddressConfirm.3.vue\"],\"names\":[],\"mappings\":\"AAAA,WAAW;AACX,iBAAiB;ACCjB;EACI,uBAAA;ADCJ;ACCA;EACI,WAAA;ADCJ;ACFA;EAIQ,YAAA;EACA,uBAAA;EACA,yBAAA;ADCR\",\"sourcesContent\":[\"/* COLORS */\\n/* MEASUREMENTS */\\n.modal-content {\\n width: min(90vw, 600px);\\n}\\n.address-group {\\n gap: 1.25em;\\n}\\n.address-group .address-options {\\n flex-grow: 1;\\n padding: 1em 1em 0.75em;\\n border: 1px solid #dee2e6;\\n}\\n\",\"\\n@import \\\"/lib/Colors.less\\\";\\n.modal-content {\\n width: min(90vw, 600px);\\n}\\n.address-group {\\n gap: 1.25em;\\n\\n .address-options {\\n flex-grow: 1;\\n padding: 1em 1em 0.75em;\\n border: 1px solid @bs-table-border-color;\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.modal-footer[data-v-0268753b] {\n display: block;\n text-align: center;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/dialogs/SaveFailure.3.vue\",\"webpack://./../SaveFailure.3.vue\"],\"names\":[],\"mappings\":\"AACA;EACI,cAAA;EACA,kBAAA;ACAJ\",\"sourcesContent\":[\"\\n.modal-footer {\\n display: block;\\n text-align: center;\\n}\\n\",\".modal-footer {\\n display: block;\\n text-align: center;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `ul[data-v-caf2feea] {\n list-style-type: disc;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/dialogs/SubmitErrors.3.vue\",\"webpack://./../SubmitErrors.3.vue\"],\"names\":[],\"mappings\":\"AACA;EACI,qBAAA;ACAJ\",\"sourcesContent\":[\"\\nul {\\n list-style-type: disc;\\n}\\n\",\"ul {\\n list-style-type: disc;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.modal-footer[data-v-2d2a89b6] {\n display: block;\n text-align: center;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/dialogs/SubmitFailure.3.vue\",\"webpack://./../SubmitFailure.3.vue\"],\"names\":[],\"mappings\":\"AACA;EACI,cAAA;EACA,kBAAA;ACAJ\",\"sourcesContent\":[\"\\n.modal-footer {\\n display: block;\\n text-align: center;\\n}\\n\",\".modal-footer {\\n display: block;\\n text-align: center;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.modal-footer[data-v-1f7f051f] {\n display: block;\n text-align: center;\n}\nul[data-v-1f7f051f] {\n list-style-type: none;\n padding-left: 5px;\n}\n.icon-download[data-v-1f7f051f] {\n text-decoration: none !important;\n}\n.icon-download[data-v-1f7f051f]:before {\n margin-right: 5px;\n vertical-align: middle;\n color: #444444;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/dialogs/SubmitSuccess.3.vue\",\"webpack://./../SubmitSuccess.3.vue\"],\"names\":[],\"mappings\":\"AACA;EACI,cAAA;EACA,kBAAA;ACAJ;ADEA;EACI,qBAAA;EACA,iBAAA;ACAJ;ADEA;EACI,gCAAA;ACAJ;ADCI;EACI,iBAAA;EACA,sBAAA;EACA,cAAA;ACCR\",\"sourcesContent\":[\"\\n.modal-footer {\\n display: block;\\n text-align: center;\\n}\\nul {\\n list-style-type: none;\\n padding-left: 5px;\\n}\\n.icon-download {\\n text-decoration: none !important;\\n &:before {\\n margin-right: 5px;\\n vertical-align: middle;\\n color: #444444;\\n }\\n}\\n\",\".modal-footer {\\n display: block;\\n text-align: center;\\n}\\nul {\\n list-style-type: none;\\n padding-left: 5px;\\n}\\n.icon-download {\\n text-decoration: none !important;\\n}\\n.icon-download:before {\\n margin-right: 5px;\\n vertical-align: middle;\\n color: #444444;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.modal-title[data-v-6117d450] {\n text-transform: uppercase;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/dialogs/WorkflowManualOverride.3.vue\",\"webpack://./../WorkflowManualOverride.3.vue\"],\"names\":[],\"mappings\":\"AACA;EACI,yBAAA;ACAJ\",\"sourcesContent\":[\"\\n.modal-title {\\n text-transform: uppercase;\\n}\\n\",\".modal-title {\\n text-transform: uppercase;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.modal-title[data-v-1fd7b07c] {\n text-transform: uppercase;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/dialogs/WorkflowManualOverrideConfirm.3.vue\",\"webpack://./../WorkflowManualOverrideConfirm.3.vue\"],\"names\":[],\"mappings\":\"AACA;EACI,yBAAA;ACAJ\",\"sourcesContent\":[\"\\n.modal-title {\\n text-transform: uppercase;\\n}\\n\",\".modal-title {\\n text-transform: uppercase;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/* COLORS */\n/* MEASUREMENTS */\n.icon-download[data-v-eab941ce]:before {\n text-decoration: none;\n margin-right: 5px;\n}\n.files-list[data-v-eab941ce] {\n list-style-type: none;\n padding-left: 5px;\n}\n.visibility-input-wrapper[data-v-eab941ce] {\n display: flex;\n align-items: center;\n position: relative;\n width: auto;\n height: auto;\n padding: 0;\n font-size: 0.9em;\n}\n.visibility-input-wrapper .icon[data-v-eab941ce]:before {\n margin-right: 5px;\n}\n.visibility-input-wrapper .btn[data-v-eab941ce] {\n display: flex;\n align-items: center;\n padding: 0 4px;\n}\n.icon-sites[data-v-eab941ce]:before {\n color: #3f51b5;\n}\n.disabled-visibility[data-v-eab941ce] {\n cursor: not-allowed !important;\n}\n.disabled-visibility .visibility-input[data-v-eab941ce] {\n pointer-events: none;\n}\n.dropdown-menu[data-v-eab941ce] {\n right: 0;\n left: auto;\n white-space: nowrap;\n padding: 10px 15px;\n font-size: 0.875rem;\n}\n.dropdown-menu .icon[data-v-eab941ce] {\n display: inline-flex;\n align-items: center;\n}\n.comment-username[data-v-eab941ce] {\n display: block;\n line-height: 100%;\n margin-bottom: 5px;\n}\n[data-v-eab941ce] .help-button {\n margin-right: 5px;\n cursor: not-allowed;\n}\n[data-v-eab941ce] .disabled-help-overlay .help-button .icon {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 30px;\n background: none;\n outline: none !important;\n}\n[data-v-eab941ce] .disabled-help-overlay .help-button .icon:before {\n display: none;\n}\n[data-v-eab941ce] .disabled-help-overlay .popper {\n min-width: 200px;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./../Comment.3.vue\",\"webpack://./public/pages/elementTemplates/Comment.3.vue\"],\"names\":[],\"mappings\":\"AAAA,WAAW;AACX,iBAAiB;ACCjB;EACI,qBAAA;EACA,iBAAA;ADCJ;ACCA;EACI,qBAAA;EACA,iBAAA;ADCJ;ACCA;EACI,aAAA;EACA,mBAAA;EACA,kBAAA;EACA,WAAA;EACA,YAAA;EACA,UAAA;EACA,gBAAA;ADCJ;ACCQ;EACI,iBAAA;ADCZ;ACXA;EAcQ,aAAA;EACA,mBAAA;EACA,cAAA;ADAR;ACGA;EACI,cAAA;ADDJ;ACGA;EACI,8BAAA;ADDJ;ACAA;EAGQ,oBAAA;ADAR;ACGA;EACI,QAAA;EACA,UAAA;EACA,mBAAA;EACA,kBAAA;EACA,mBAAA;ADDJ;ACJA;EAOQ,oBAAA;EACA,mBAAA;ADAR;ACGA;EACI,cAAA;EACA,iBAAA;EACA,kBAAA;ADDJ;ACGA;EACI,iBAAA;EACA,mBAAA;ADDJ;ACGA;EAGQ,kBAAA;EACA,MAAA;EACA,OAAA;EACA,WAAA;EACA,YAAA;EACA,gBAAA;EACA,wBAAA;ADHR;ACIQ;EACI,aAAA;ADFZ;ACTA;EAeQ,gBAAA;ADHR\",\"sourcesContent\":[\"/* COLORS */\\n/* MEASUREMENTS */\\n.icon-download:before {\\n text-decoration: none;\\n margin-right: 5px;\\n}\\n.files-list {\\n list-style-type: none;\\n padding-left: 5px;\\n}\\n.visibility-input-wrapper {\\n display: flex;\\n align-items: center;\\n position: relative;\\n width: auto;\\n height: auto;\\n padding: 0;\\n font-size: 0.9em;\\n}\\n.visibility-input-wrapper .icon:before {\\n margin-right: 5px;\\n}\\n.visibility-input-wrapper .btn {\\n display: flex;\\n align-items: center;\\n padding: 0 4px;\\n}\\n.icon-sites:before {\\n color: #3f51b5;\\n}\\n.disabled-visibility {\\n cursor: not-allowed !important;\\n}\\n.disabled-visibility .visibility-input {\\n pointer-events: none;\\n}\\n.dropdown-menu {\\n right: 0;\\n left: auto;\\n white-space: nowrap;\\n padding: 10px 15px;\\n font-size: 0.875rem;\\n}\\n.dropdown-menu .icon {\\n display: inline-flex;\\n align-items: center;\\n}\\n.comment-username {\\n display: block;\\n line-height: 100%;\\n margin-bottom: 5px;\\n}\\n /deep/ .help-button {\\n margin-right: 5px;\\n cursor: not-allowed;\\n}\\n /deep/ .disabled-help-overlay .help-button .icon {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 30px;\\n background: none;\\n outline: none !important;\\n}\\n /deep/ .disabled-help-overlay .help-button .icon:before {\\n display: none;\\n}\\n /deep/ .disabled-help-overlay .popper {\\n min-width: 200px;\\n}\\n\",\"\\n@import \\\"/lib/Colors.less\\\";\\n.icon-download:before {\\n text-decoration: none;\\n margin-right: 5px;\\n}\\n.files-list {\\n list-style-type: none;\\n padding-left: 5px;\\n}\\n.visibility-input-wrapper {\\n display: flex;\\n align-items: center;\\n position: relative;\\n width: auto;\\n height: auto;\\n padding: 0;\\n font-size: 0.9em;\\n .icon {\\n &:before {\\n margin-right: 5px;\\n }\\n }\\n .btn {\\n display: flex;\\n align-items: center;\\n padding: 0 4px;\\n }\\n}\\n.icon-sites:before {\\n color: @primary-blue-v2;\\n}\\n.disabled-visibility {\\n cursor: not-allowed !important;\\n .visibility-input {\\n pointer-events: none;\\n }\\n}\\n.dropdown-menu {\\n right: 0;\\n left: auto;\\n white-space: nowrap;\\n padding: 10px 15px;\\n font-size: 0.875rem;\\n .icon {\\n display: inline-flex;\\n align-items: center;\\n }\\n}\\n.comment-username {\\n display: block;\\n line-height: 100%;\\n margin-bottom: 5px;\\n}\\n/deep/ .help-button {\\n margin-right: 5px;\\n cursor: not-allowed;\\n}\\n/deep/ .disabled-help-overlay {\\n // overlay help icon on disabled inputs for better reliability on click\\n .help-button .icon {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 30px;\\n background: none;\\n outline: none !important;\\n &:before {\\n display: none;\\n }\\n }\\n .popper {\\n min-width: 200px;\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/* COLORS */\n/* MEASUREMENTS */\n.attachment-group .form-control[data-v-3f73c283] {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.attachment-bar[data-v-3f73c283] {\n display: flex;\n align-items: center;\n background: #f5f5f5;\n padding: 2.5px;\n border: 1px solid #ced4da;\n border-top: none;\n border-radius: 0 0 0.25rem 0.25rem;\n}\n.attachment-bar[data-v-3f73c283]:before {\n position: absolute;\n font-size: 1.1em;\n padding: 7.5px 7.5px 5px 5px;\n pointer-events: none;\n}\n.attachment-bar input[data-v-3f73c283] {\n display: flex;\n padding-left: 30px;\n font-size: 0.85em;\n}\n.visibility-input-wrapper[data-v-3f73c283] {\n display: flex;\n align-items: center;\n position: relative;\n width: auto;\n height: auto;\n padding: 0;\n font-size: 0.9em;\n}\n.visibility-input-wrapper .icon[data-v-3f73c283]:before {\n margin-right: 5px;\n}\n.visibility-input-wrapper .btn[data-v-3f73c283] {\n display: flex;\n align-items: center;\n padding: 0 4px;\n}\n.icon-sites[data-v-3f73c283]:before {\n color: #3f51b5;\n}\n.disabled-visibility[data-v-3f73c283] {\n cursor: not-allowed !important;\n}\n.disabled-visibility .visibility-input[data-v-3f73c283] {\n pointer-events: none;\n}\n.dropdown-menu[data-v-3f73c283] {\n right: 0;\n left: auto;\n white-space: nowrap;\n padding: 10px 15px;\n font-size: 0.875rem;\n}\n.dropdown-menu .icon[data-v-3f73c283] {\n display: inline-flex;\n align-items: center;\n}\n.comment-username[data-v-3f73c283] {\n display: block;\n line-height: 100%;\n margin-bottom: 5px;\n}\n.comment-list[data-v-3f73c283] {\n padding: 0;\n margin: 0 0 5px 0;\n list-style: none;\n}\n.comment-list-heading[data-v-3f73c283] {\n display: block;\n margin-top: 0;\n margin-bottom: 20px;\n}\n.comment-card[data-v-3f73c283] {\n margin-top: 5px;\n display: block;\n padding: 7.5px;\n float: left;\n width: 100%;\n}\n.comment-btn[data-v-3f73c283] {\n margin-top: 7.5px;\n}\n.comment-icon-btn[data-v-3f73c283] {\n display: inline-block;\n margin-top: 5px;\n padding: 0;\n text-decoration: none !important;\n line-height: 0;\n font-size: 1.1em;\n}\n.submissions-comment[data-v-3f73c283] {\n padding: 10px;\n border-bottom: 1px solid #cccccc;\n}\n.submissions-comment .comment-text[data-v-3f73c283] {\n margin: 0;\n}\n.submissions-comment .help-block[data-v-3f73c283] {\n white-space: nowrap;\n display: block;\n}\n.submissions-comment[data-v-3f73c283]:first-of-type {\n margin-top: 0;\n}\n.btn-outline-secondary[data-v-3f73c283]:not(:focus, :hover) {\n background-color: #ffffff;\n}\n.btn-bare[data-v-3f73c283] {\n font-weight: bold;\n font-size: 16px;\n}\n[data-v-3f73c283] .help-button {\n margin-right: 5px;\n cursor: not-allowed;\n}\n[data-v-3f73c283] .disabled-help-overlay .help-button .icon {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 30px;\n background: none;\n outline: none !important;\n}\n[data-v-3f73c283] .disabled-help-overlay .help-button .icon:before {\n display: none;\n}\n[data-v-3f73c283] .disabled-help-overlay .popper {\n min-width: 200px;\n}\n.field-validation-error .icon.icon-attention[data-v-3f73c283] {\n color: inherit;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./../Comments.3.vue\",\"webpack://./public/pages/elementTemplates/Comments.3.vue\"],\"names\":[],\"mappings\":\"AAAA,WAAW;AACX,iBAAiB;ACCjB;EAEQ,6BAAA;EACA,4BAAA;ADAR;ACGA;EACI,aAAA;EACA,mBAAA;EACA,mBAAA;EACA,cAAA;EACA,yBAAA;EACA,gBAAA;EACA,kCAAA;ADDJ;ACEI;EACI,kBAAA;EACA,gBAAA;EACA,4BAAA;EACA,oBAAA;ADAR;ACZA;EAeQ,aAAA;EACA,kBAAA;EACA,iBAAA;ADAR;ACGA;EACI,aAAA;EACA,mBAAA;EACA,kBAAA;EACA,WAAA;EACA,YAAA;EACA,UAAA;EACA,gBAAA;ADDJ;ACGQ;EACI,iBAAA;ADDZ;ACTA;EAcQ,aAAA;EACA,mBAAA;EACA,cAAA;ADFR;ACKA;EACI,cAAA;ADHJ;ACKA;EACI,8BAAA;ADHJ;ACEA;EAGQ,oBAAA;ADFR;ACKA;EACI,QAAA;EACA,UAAA;EACA,mBAAA;EACA,kBAAA;EACA,mBAAA;ADHJ;ACFA;EAOQ,oBAAA;EACA,mBAAA;ADFR;ACKA;EACI,cAAA;EACA,iBAAA;EACA,kBAAA;ADHJ;ACKA;EACI,UAAA;EACA,iBAAA;EACA,gBAAA;ADHJ;ACKA;EACI,cAAA;EACA,aAAA;EACA,mBAAA;ADHJ;ACKA;EACI,eAAA;EACA,cAAA;EACA,cAAA;EACA,WAAA;EACA,WAAA;ADHJ;ACKA;EACI,iBAAA;ADHJ;ACKA;EACI,qBAAA;EACA,eAAA;EACA,UAAA;EACA,gCAAA;EACA,cAAA;EACA,gBAAA;ADHJ;ACKA;EACI,aAAA;EACA,gCAAA;ADHJ;ACCA;EAIQ,SAAA;ADFR;ACFA;EAOQ,mBAAA;EACA,cAAA;ADFR;ACII;EACI,aAAA;ADFR;ACMI;EACI,yBAAA;ADJR;ACOA;EACI,iBAAA;EACA,eAAA;ADLJ;ACOA;EACI,iBAAA;EACA,mBAAA;ADLJ;ACOA;EAGQ,kBAAA;EACA,MAAA;EACA,OAAA;EACA,WAAA;EACA,YAAA;EACA,gBAAA;EACA,wBAAA;ADPR;ACQQ;EACI,aAAA;ADNZ;ACLA;EAeQ,gBAAA;ADPR;ACUA;EAEQ,cAAA;ADTR\",\"sourcesContent\":[\"/* COLORS */\\n/* MEASUREMENTS */\\n.attachment-group .form-control {\\n border-bottom-right-radius: 0;\\n border-bottom-left-radius: 0;\\n}\\n.attachment-bar {\\n display: flex;\\n align-items: center;\\n background: #f5f5f5;\\n padding: 2.5px;\\n border: 1px solid #ced4da;\\n border-top: none;\\n border-radius: 0 0 0.25rem 0.25rem;\\n}\\n.attachment-bar:before {\\n position: absolute;\\n font-size: 1.1em;\\n padding: 7.5px 7.5px 5px 5px;\\n pointer-events: none;\\n}\\n.attachment-bar input {\\n display: flex;\\n padding-left: 30px;\\n font-size: 0.85em;\\n}\\n.visibility-input-wrapper {\\n display: flex;\\n align-items: center;\\n position: relative;\\n width: auto;\\n height: auto;\\n padding: 0;\\n font-size: 0.9em;\\n}\\n.visibility-input-wrapper .icon:before {\\n margin-right: 5px;\\n}\\n.visibility-input-wrapper .btn {\\n display: flex;\\n align-items: center;\\n padding: 0 4px;\\n}\\n.icon-sites:before {\\n color: #3f51b5;\\n}\\n.disabled-visibility {\\n cursor: not-allowed !important;\\n}\\n.disabled-visibility .visibility-input {\\n pointer-events: none;\\n}\\n.dropdown-menu {\\n right: 0;\\n left: auto;\\n white-space: nowrap;\\n padding: 10px 15px;\\n font-size: 0.875rem;\\n}\\n.dropdown-menu .icon {\\n display: inline-flex;\\n align-items: center;\\n}\\n.comment-username {\\n display: block;\\n line-height: 100%;\\n margin-bottom: 5px;\\n}\\n.comment-list {\\n padding: 0;\\n margin: 0 0 5px 0;\\n list-style: none;\\n}\\n.comment-list-heading {\\n display: block;\\n margin-top: 0;\\n margin-bottom: 20px;\\n}\\n.comment-card {\\n margin-top: 5px;\\n display: block;\\n padding: 7.5px;\\n float: left;\\n width: 100%;\\n}\\n.comment-btn {\\n margin-top: 7.5px;\\n}\\n.comment-icon-btn {\\n display: inline-block;\\n margin-top: 5px;\\n padding: 0;\\n text-decoration: none !important;\\n line-height: 0;\\n font-size: 1.1em;\\n}\\n.submissions-comment {\\n padding: 10px;\\n border-bottom: 1px solid #cccccc;\\n}\\n.submissions-comment .comment-text {\\n margin: 0;\\n}\\n.submissions-comment .help-block {\\n white-space: nowrap;\\n display: block;\\n}\\n.submissions-comment:first-of-type {\\n margin-top: 0;\\n}\\n.btn-outline-secondary:not(:focus, :hover) {\\n background-color: #ffffff;\\n}\\n.btn-bare {\\n font-weight: bold;\\n font-size: 16px;\\n}\\n /deep/ .help-button {\\n margin-right: 5px;\\n cursor: not-allowed;\\n}\\n /deep/ .disabled-help-overlay .help-button .icon {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 30px;\\n background: none;\\n outline: none !important;\\n}\\n /deep/ .disabled-help-overlay .help-button .icon:before {\\n display: none;\\n}\\n /deep/ .disabled-help-overlay .popper {\\n min-width: 200px;\\n}\\n.field-validation-error .icon.icon-attention {\\n color: inherit;\\n}\\n\",\"\\n@import \\\"/lib/Colors.less\\\";\\n.attachment-group {\\n .form-control {\\n border-bottom-right-radius: 0;\\n border-bottom-left-radius: 0;\\n }\\n}\\n.attachment-bar {\\n display: flex;\\n align-items: center;\\n background: #f5f5f5;\\n padding: 2.5px;\\n border: 1px solid #ced4da;\\n border-top: none;\\n border-radius: 0 0 0.25rem 0.25rem;\\n &:before {\\n position: absolute;\\n font-size: 1.1em;\\n padding: 7.5px 7.5px 5px 5px;\\n pointer-events: none;\\n }\\n input {\\n display: flex;\\n padding-left: 30px;\\n font-size: 0.85em;\\n }\\n}\\n.visibility-input-wrapper {\\n display: flex;\\n align-items: center;\\n position: relative;\\n width: auto;\\n height: auto;\\n padding: 0;\\n font-size: 0.9em;\\n .icon {\\n &:before {\\n margin-right: 5px;\\n }\\n }\\n .btn {\\n display: flex;\\n align-items: center;\\n padding: 0 4px;\\n }\\n}\\n.icon-sites:before {\\n color: @primary-blue-v2;\\n}\\n.disabled-visibility {\\n cursor: not-allowed !important;\\n .visibility-input {\\n pointer-events: none;\\n }\\n}\\n.dropdown-menu {\\n right: 0;\\n left: auto;\\n white-space: nowrap;\\n padding: 10px 15px;\\n font-size: 0.875rem;\\n .icon {\\n display: inline-flex;\\n align-items: center;\\n }\\n}\\n.comment-username {\\n display: block;\\n line-height: 100%;\\n margin-bottom: 5px;\\n}\\n.comment-list {\\n padding: 0;\\n margin: 0 0 5px 0;\\n list-style: none;\\n}\\n.comment-list-heading {\\n display: block;\\n margin-top: 0;\\n margin-bottom: 20px;\\n}\\n.comment-card {\\n margin-top: 5px;\\n display: block;\\n padding: 7.5px;\\n float: left;\\n width: 100%;\\n}\\n.comment-btn {\\n margin-top: 7.5px;\\n}\\n.comment-icon-btn {\\n display: inline-block;\\n margin-top: 5px;\\n padding: 0;\\n text-decoration: none !important;\\n line-height: 0;\\n font-size: 1.1em;\\n}\\n.submissions-comment {\\n padding: 10px;\\n border-bottom: 1px solid #cccccc;\\n .comment-text {\\n margin: 0;\\n }\\n .help-block {\\n white-space: nowrap;\\n display: block;\\n }\\n &:first-of-type {\\n margin-top: 0;\\n }\\n}\\n.btn-outline-secondary {\\n &:not(:focus, :hover) {\\n background-color: #ffffff;\\n }\\n}\\n.btn-bare {\\n font-weight: bold;\\n font-size: 16px;\\n}\\n/deep/ .help-button {\\n margin-right: 5px;\\n cursor: not-allowed;\\n}\\n/deep/ .disabled-help-overlay {\\n // overlay help icon on disabled inputs for better reliability on click\\n .help-button .icon {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 30px;\\n background: none;\\n outline: none !important;\\n &:before {\\n display: none;\\n }\\n }\\n .popper {\\n min-width: 200px;\\n }\\n}\\n.field-validation-error {\\n .icon.icon-attention {\\n color: inherit;\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.secondary[data-v-32088076]:before {\n color: #bbbbbb;\n}\nth .btn[data-v-32088076] {\n font-weight: inherit;\n}\n.icon-sortable[data-v-32088076]:before {\n color: #bbbbbb;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/elementTemplates/DataTableDef.3.vue\",\"webpack://./../DataTableDef.3.vue\"],\"names\":[],\"mappings\":\"AACA;EACI,cAAA;ACAJ;ADEA;EACI,oBAAA;ACAJ;ADEA;EACI,cAAA;ACAJ\",\"sourcesContent\":[\"\\n.secondary:before {\\n color: #bbbbbb;\\n}\\nth .btn {\\n font-weight: inherit;\\n}\\n.icon-sortable:before {\\n color: #bbbbbb;\\n}\\n\",\".secondary:before {\\n color: #bbbbbb;\\n}\\nth .btn {\\n font-weight: inherit;\\n}\\n.icon-sortable:before {\\n color: #bbbbbb;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `[data-v-d7017ed0] .vs__selected-options {\n flex-wrap: nowrap;\n white-space: nowrap;\n overflow: hidden;\n}\n[data-v-d7017ed0] .vs__selected-options > .vs__selected {\n position: absolute;\n left: 1px;\n}\n[data-v-d7017ed0] .vs__selected-options > .vs__selected,[data-v-d7017ed0] .vs__selected-options > .vs__selected + .vs__search {\n font-size: var(--vs-font-size);\n margin: 0;\n padding: 0.375rem 0.75rem;\n}\n[data-v-d7017ed0] .vs__dropdown-menu {\n position: absolute;\n z-index: 1002;\n}\n[data-v-d7017ed0] .vs__dropdown-menu > .vs__dropdown-option span:before {\n content: \"\\\\200b\";\n /* insert a zero-width space */\n line-height: inherit;\n}\n[data-v-d7017ed0] .vs__dropdown-toggle {\n height: calc(1.5em + 0.75rem + 2px);\n padding: 0;\n background: white;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/elementTemplates/DropDownListDef.3.vue\",\"webpack://./../DropDownListDef.3.vue\"],\"names\":[],\"mappings\":\"AACA;EAEQ,iBAAA;EACA,mBAAA;EACA,gBAAA;ACDR;ADHA;EAMY,kBAAA;EACA,SAAA;ACAZ;ADPA;EAWY,8BAAA;EACA,SAAA;EACA,yBAAA;ACAZ;ADbA;EAiBQ,kBAAA;EACA,aAAA;ACDR;ADjBA;EAqBY,gBAAA;ECDV,8BAA8B;EDEpB,oBAAA;ACAZ;ADtBA;EA0BQ,mCAAA;EACA,UAAA;EACA,iBAAA;ACDR\",\"sourcesContent\":[\"\\n::v-deep {\\n .vs__selected-options {\\n flex-wrap: nowrap;\\n white-space: nowrap;\\n overflow: hidden;\\n > .vs__selected {\\n position: absolute;\\n left: 1px;\\n }\\n > .vs__selected,\\n > .vs__selected + .vs__search {\\n font-size: var(--vs-font-size);\\n margin: 0;\\n padding: 0.375rem 0.75rem;\\n }\\n }\\n .vs__dropdown-menu {\\n position: absolute;\\n z-index: 1002; // To avoid being overlapped by modal\\n // add line-height to possible empty item text/label\\n > .vs__dropdown-option span:before {\\n content: \\\"\\\\200b\\\"; /* insert a zero-width space */\\n line-height: inherit;\\n }\\n }\\n .vs__dropdown-toggle {\\n height: calc(1.5em + 0.75rem + 2px);\\n padding: 0;\\n background: white;\\n }\\n}\\n\",\"::v-deep .vs__selected-options {\\n flex-wrap: nowrap;\\n white-space: nowrap;\\n overflow: hidden;\\n}\\n::v-deep .vs__selected-options > .vs__selected {\\n position: absolute;\\n left: 1px;\\n}\\n::v-deep .vs__selected-options > .vs__selected,\\n::v-deep .vs__selected-options > .vs__selected + .vs__search {\\n font-size: var(--vs-font-size);\\n margin: 0;\\n padding: 0.375rem 0.75rem;\\n}\\n::v-deep .vs__dropdown-menu {\\n position: absolute;\\n z-index: 1002;\\n}\\n::v-deep .vs__dropdown-menu > .vs__dropdown-option span:before {\\n content: \\\"\\\\200b\\\";\\n /* insert a zero-width space */\\n line-height: inherit;\\n}\\n::v-deep .vs__dropdown-toggle {\\n height: calc(1.5em + 0.75rem + 2px);\\n padding: 0;\\n background: white;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.field-validation-error .icon.icon-attention[data-v-096cf26d] {\n color: inherit;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/elementTemplates/ErrorList.3.vue\",\"webpack://./../ErrorList.3.vue\"],\"names\":[],\"mappings\":\"AACA;EAEQ,cAAA;ACDR\",\"sourcesContent\":[\"\\n.field-validation-error {\\n .icon.icon-attention {\\n color: inherit;\\n }\\n}\\n\",\".field-validation-error .icon.icon-attention {\\n color: inherit;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.success[data-v-1b77a10a] {\n color: green;\n}\n.error[data-v-1b77a10a] {\n color: red;\n}\n.warning[data-v-1b77a10a] {\n color: darkorange;\n}\n.upload-status .icon[data-v-1b77a10a] {\n font-size: 30px;\n line-height: 30px;\n vertical-align: middle;\n}\n.upload-status .icon[data-v-1b77a10a]:before {\n vertical-align: unset;\n color: inherit;\n}\n.dfNavButton.btn-file[data-v-1b77a10a] {\n border: 2px dashed #aaaaaa;\n border-radius: 5px;\n}\n.dfNavButton.btn-file input[type=\"file\"][data-v-1b77a10a] {\n border: unset;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./public/pages/elementTemplates/FileDef.3.vue\",\"webpack://./../FileDef.3.vue\"],\"names\":[],\"mappings\":\"AACA;EACI,YAAA;ACAJ;ADEA;EACI,UAAA;ACAJ;ADEA;EACI,iBAAA;ACAJ;ADEA;EAEQ,eAAA;EACA,iBAAA;EACA,sBAAA;ACDR;ADEQ;EACI,qBAAA;EACA,cAAA;ACAZ;ADIA;EACI,0BAAA;EACA,kBAAA;ACFJ;ADAA;EAKQ,aAAA;ACFR\",\"sourcesContent\":[\"\\n.success {\\n color: green;\\n}\\n.error {\\n color: red;\\n}\\n.warning {\\n color: darkorange;\\n}\\n.upload-status {\\n .icon {\\n font-size: 30px;\\n line-height: 30px;\\n vertical-align: middle;\\n &:before {\\n vertical-align: unset;\\n color: inherit;\\n }\\n }\\n}\\n.dfNavButton.btn-file {\\n border: 2px dashed #aaaaaa;\\n border-radius: 5px;\\n\\n input[type=\\\"file\\\"] {\\n border: unset;\\n }\\n}\\n\",\".success {\\n color: green;\\n}\\n.error {\\n color: red;\\n}\\n.warning {\\n color: darkorange;\\n}\\n.upload-status .icon {\\n font-size: 30px;\\n line-height: 30px;\\n vertical-align: middle;\\n}\\n.upload-status .icon:before {\\n vertical-align: unset;\\n color: inherit;\\n}\\n.dfNavButton.btn-file {\\n border: 2px dashed #aaaaaa;\\n border-radius: 5px;\\n}\\n.dfNavButton.btn-file input[type=\\\"file\\\"] {\\n border: unset;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/* COLORS */\n/* MEASUREMENTS */\n.verification-form-group .success[data-v-d9b57cac],\n.verification-form-group .success[data-v-d9b57cac]:before,\n.verification-form-group .success[data-v-d9b57cac] > :before {\n color: #1e7e34;\n}\n.verification-form-group .danger[data-v-d9b57cac],\n.verification-form-group .danger[data-v-d9b57cac]:before,\n.verification-form-group .danger[data-v-d9b57cac] > :before {\n color: #d42435;\n}\n.verification-form-group .warning[data-v-d9b57cac],\n.verification-form-group .warning[data-v-d9b57cac]:before,\n.verification-form-group .warning[data-v-d9b57cac] > :before {\n color: #866500;\n}\n.verification-form-group .card .card-text[data-v-d9b57cac] {\n font-size: 13px;\n}\n.verification-form-group[data-v-d9b57cac] .loader .icon.icon-attention {\n color: #fff !important;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./../IdVerificationDef.3.vue\",\"webpack://./public/pages/elementTemplates/IdVerificationDef.3.vue\"],\"names\":[],\"mappings\":\"AAAA,WAAW;AACX,iBAAiB;ACGT;;;EAGI,cAAA;ADDZ;ACKQ;;;EAGI,cAAA;ADHZ;ACOQ;;;EAGI,cAAA;ADLZ;ACdA;EAwBY,eAAA;ADPZ;ACjBA;EA6BY,sBAAA;ADTZ\",\"sourcesContent\":[\"/* COLORS */\\n/* MEASUREMENTS */\\n.verification-form-group .success,\\n.verification-form-group .success:before,\\n.verification-form-group .success > :before {\\n color: #1e7e34;\\n}\\n.verification-form-group .danger,\\n.verification-form-group .danger:before,\\n.verification-form-group .danger > :before {\\n color: #d42435;\\n}\\n.verification-form-group .warning,\\n.verification-form-group .warning:before,\\n.verification-form-group .warning > :before {\\n color: #866500;\\n}\\n.verification-form-group .card .card-text {\\n font-size: 13px;\\n}\\n.verification-form-group ::v-deep(.loader) .icon.icon-attention {\\n color: #fff !important;\\n}\\n\",\"\\n@import \\\"/lib/Colors.less\\\";\\n.verification-form-group {\\n .success {\\n &,\\n &:before,\\n & > :before {\\n color: @success-dark;\\n }\\n }\\n .danger {\\n &,\\n &:before,\\n & > :before {\\n color: @danger-dark;\\n }\\n }\\n .warning {\\n &,\\n &:before,\\n & > :before {\\n color: darken(@forge-orange, 25%);\\n }\\n }\\n .card {\\n .card-text {\\n font-size: 13px;\\n }\\n }\\n ::v-deep(.loader) {\\n .icon.icon-attention {\\n color: #fff !important;\\n }\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","!function(e,r){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=r():\"function\"==typeof define&&define.amd?define([],r):\"object\"==typeof exports?exports.textMaskCore=r():e.textMaskCore=r()}(this,function(){return function(e){function r(n){if(t[n])return t[n].exports;var o=t[n]={exports:{},id:n,loaded:!1};return e[n].call(o.exports,o,o.exports,r),o.loaded=!0,o.exports}var t={};return r.m=e,r.c=t,r.p=\"\",r(0)}([function(e,r,t){\"use strict\";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(r,\"__esModule\",{value:!0});var o=t(3);Object.defineProperty(r,\"conformToMask\",{enumerable:!0,get:function(){return n(o).default}});var i=t(2);Object.defineProperty(r,\"adjustCaretPosition\",{enumerable:!0,get:function(){return n(i).default}});var a=t(5);Object.defineProperty(r,\"createTextMaskInputElement\",{enumerable:!0,get:function(){return n(a).default}})},function(e,r){\"use strict\";Object.defineProperty(r,\"__esModule\",{value:!0}),r.placeholderChar=\"_\",r.strFunction=\"function\"},function(e,r){\"use strict\";function t(e){var r=e.previousConformedValue,t=void 0===r?o:r,i=e.previousPlaceholder,a=void 0===i?o:i,u=e.currentCaretPosition,l=void 0===u?0:u,s=e.conformedValue,f=e.rawValue,d=e.placeholderChar,c=e.placeholder,p=e.indexesOfPipedChars,v=void 0===p?n:p,h=e.caretTrapIndexes,m=void 0===h?n:h;if(0===l||!f.length)return 0;var y=f.length,g=t.length,b=c.length,C=s.length,P=y-g,k=P>0,x=0===g,O=P>1&&!k&&!x;if(O)return l;var T=k&&(t===s||s===c),w=0,M=void 0,S=void 0;if(T)w=l-P;else{var j=s.toLowerCase(),_=f.toLowerCase(),V=_.substr(0,l).split(o),A=V.filter(function(e){return j.indexOf(e)!==-1});S=A[A.length-1];var N=a.substr(0,A.length).split(o).filter(function(e){return e!==d}).length,E=c.substr(0,A.length).split(o).filter(function(e){return e!==d}).length,F=E!==N,R=void 0!==a[A.length-1]&&void 0!==c[A.length-2]&&a[A.length-1]!==d&&a[A.length-1]!==c[A.length-1]&&a[A.length-1]===c[A.length-2];!k&&(F||R)&&N>0&&c.indexOf(S)>-1&&void 0!==f[l]&&(M=!0,S=f[l]);for(var I=v.map(function(e){return j[e]}),J=I.filter(function(e){return e===S}).length,W=A.filter(function(e){return e===S}).length,q=c.substr(0,c.indexOf(d)).split(o).filter(function(e,r){return e===S&&f[r]!==e}).length,L=q+W+J+(M?1:0),z=0,B=0;B<C;B++){var D=j[B];if(w=B+1,D===S&&z++,z>=L)break}}if(k){for(var G=w,H=w;H<=b;H++)if(c[H]===d&&(G=H),c[H]===d||m.indexOf(H)!==-1||H===b)return G}else if(M){for(var K=w-1;K>=0;K--)if(s[K]===S||m.indexOf(K)!==-1||0===K)return K}else for(var Q=w;Q>=0;Q--)if(c[Q-1]===d||m.indexOf(Q)!==-1||0===Q)return Q}Object.defineProperty(r,\"__esModule\",{value:!0}),r.default=t;var n=[],o=\"\"},function(e,r,t){\"use strict\";function n(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:u,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!(0,i.isArray)(r)){if((\"undefined\"==typeof r?\"undefined\":o(r))!==a.strFunction)throw new Error(\"Text-mask:conformToMask; The mask property must be an array.\");r=r(e,t),r=(0,i.processCaretTraps)(r).maskWithoutCaretTraps}var n=t.guide,s=void 0===n||n,f=t.previousConformedValue,d=void 0===f?l:f,c=t.placeholderChar,p=void 0===c?a.placeholderChar:c,v=t.placeholder,h=void 0===v?(0,i.convertMaskToPlaceholder)(r,p):v,m=t.currentCaretPosition,y=t.keepCharPositions,g=s===!1&&void 0!==d,b=e.length,C=d.length,P=h.length,k=r.length,x=b-C,O=x>0,T=m+(O?-x:0),w=T+Math.abs(x);if(y===!0&&!O){for(var M=l,S=T;S<w;S++)h[S]===p&&(M+=p);e=e.slice(0,T)+M+e.slice(T,b)}for(var j=e.split(l).map(function(e,r){return{char:e,isNew:r>=T&&r<w}}),_=b-1;_>=0;_--){var V=j[_].char;if(V!==p){var A=_>=T&&C===k;V===h[A?_-x:_]&&j.splice(_,1)}}var N=l,E=!1;e:for(var F=0;F<P;F++){var R=h[F];if(R===p){if(j.length>0)for(;j.length>0;){var I=j.shift(),J=I.char,W=I.isNew;if(J===p&&g!==!0){N+=p;continue e}if(r[F].test(J)){if(y===!0&&W!==!1&&d!==l&&s!==!1&&O){for(var q=j.length,L=null,z=0;z<q;z++){var B=j[z];if(B.char!==p&&B.isNew===!1)break;if(B.char===p){L=z;break}}null!==L?(N+=J,j.splice(L,1)):F--}else N+=J;continue e}E=!0}g===!1&&(N+=h.substr(F,P));break}N+=R}if(g&&O===!1){for(var D=null,G=0;G<N.length;G++)h[G]===p&&(D=G);N=null!==D?N.substr(0,D+1):l}return{conformedValue:N,meta:{someCharsRejected:E}}}Object.defineProperty(r,\"__esModule\",{value:!0});var o=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};r.default=n;var i=t(4),a=t(1),u=[],l=\"\"},function(e,r,t){\"use strict\";function n(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:f,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:s.placeholderChar;if(!o(e))throw new Error(\"Text-mask:convertMaskToPlaceholder; The mask property must be an array.\");if(e.indexOf(r)!==-1)throw new Error(\"Placeholder character must not be used as part of the mask. Please specify a character that is not present in your mask as your placeholder character.\\n\\n\"+(\"The placeholder character that was received is: \"+JSON.stringify(r)+\"\\n\\n\")+(\"The mask that was received is: \"+JSON.stringify(e)));return e.map(function(e){return e instanceof RegExp?r:e}).join(\"\")}function o(e){return Array.isArray&&Array.isArray(e)||e instanceof Array}function i(e){return\"string\"==typeof e||e instanceof String}function a(e){return\"number\"==typeof e&&void 0===e.length&&!isNaN(e)}function u(e){return\"undefined\"==typeof e||null===e}function l(e){for(var r=[],t=void 0;t=e.indexOf(d),t!==-1;)r.push(t),e.splice(t,1);return{maskWithoutCaretTraps:e,indexes:r}}Object.defineProperty(r,\"__esModule\",{value:!0}),r.convertMaskToPlaceholder=n,r.isArray=o,r.isString=i,r.isNumber=a,r.isNil=u,r.processCaretTraps=l;var s=t(1),f=[],d=\"[]\"},function(e,r,t){\"use strict\";function n(e){return e&&e.__esModule?e:{default:e}}function o(e){var r={previousConformedValue:void 0,previousPlaceholder:void 0};return{state:r,update:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,o=n.inputElement,s=n.mask,d=n.guide,m=n.pipe,g=n.placeholderChar,b=void 0===g?v.placeholderChar:g,C=n.keepCharPositions,P=void 0!==C&&C,k=n.showMask,x=void 0!==k&&k;if(\"undefined\"==typeof t&&(t=o.value),t!==r.previousConformedValue){(\"undefined\"==typeof s?\"undefined\":l(s))===y&&void 0!==s.pipe&&void 0!==s.mask&&(m=s.pipe,s=s.mask);var O=void 0,T=void 0;if(s instanceof Array&&(O=(0,p.convertMaskToPlaceholder)(s,b)),s!==!1){var w=a(t),M=o.selectionEnd,S=r.previousConformedValue,j=r.previousPlaceholder,_=void 0;if((\"undefined\"==typeof s?\"undefined\":l(s))===v.strFunction){if(T=s(w,{currentCaretPosition:M,previousConformedValue:S,placeholderChar:b}),T===!1)return;var V=(0,p.processCaretTraps)(T),A=V.maskWithoutCaretTraps,N=V.indexes;T=A,_=N,O=(0,p.convertMaskToPlaceholder)(T,b)}else T=s;var E={previousConformedValue:S,guide:d,placeholderChar:b,pipe:m,placeholder:O,currentCaretPosition:M,keepCharPositions:P},F=(0,c.default)(w,T,E),R=F.conformedValue,I=(\"undefined\"==typeof m?\"undefined\":l(m))===v.strFunction,J={};I&&(J=m(R,u({rawValue:w},E)),J===!1?J={value:S,rejected:!0}:(0,p.isString)(J)&&(J={value:J}));var W=I?J.value:R,q=(0,f.default)({previousConformedValue:S,previousPlaceholder:j,conformedValue:W,placeholder:O,rawValue:w,currentCaretPosition:M,placeholderChar:b,indexesOfPipedChars:J.indexesOfPipedChars,caretTrapIndexes:_}),L=W===O&&0===q,z=x?O:h,B=L?z:W;r.previousConformedValue=B,r.previousPlaceholder=O,o.value!==B&&(o.value=B,i(o,q))}}}}}function i(e,r){document.activeElement===e&&(g?b(function(){return e.setSelectionRange(r,r,m)},0):e.setSelectionRange(r,r,m))}function a(e){if((0,p.isString)(e))return e;if((0,p.isNumber)(e))return String(e);if(void 0===e||null===e)return h;throw new Error(\"The 'value' provided to Text Mask needs to be a string or a number. The value received was:\\n\\n \"+JSON.stringify(e))}Object.defineProperty(r,\"__esModule\",{value:!0});var u=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e},l=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};r.default=o;var s=t(2),f=n(s),d=t(3),c=n(d),p=t(4),v=t(1),h=\"\",m=\"none\",y=\"object\",g=\"undefined\"!=typeof navigator&&/Android/i.test(navigator.userAgent),b=\"undefined\"!=typeof requestAnimationFrame?requestAnimationFrame:setTimeout}])});","<template>\n <div class=\"container p-3\">\n <div class=\"row\">\n <div class=\"col-md-8 offset-md-2\">\n <div class=\"alert alert-danger\">\n <h1>Your attempt to make a payment failed.</h1>\n <div v-if=\"actions.length > 0\">\n <div v-for=\"action in actions\">\n <p><a class=\"alert-link\" @click.prevent=\"act(action)\" href=\"#\">Continue to the form</a> if you'd like to try again.</p>\n <AsyncOperationStatus :promise=\"action.promise\" />\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, computed } from \"vue\";\nimport getData from \"../../admin/lib/getData\";\nimport { useMainStore } from \"@/mainStore\";\nimport { ResumeFailure } from \"@cs/ResumeFailure\";\nimport AsyncOperationStatus from \"@/lib/AsyncOperationStatus.3.vue\";\nexport type JsResumeFailure = Omit<ResumeFailure, \"Actions\"> & { Actions?: (NonNullable<ResumeFailure[\"Actions\"]>[0] & { promise?: Promise<void> | null })[] };\nexport default defineComponent({\n components: {\n AsyncOperationStatus,\n },\n setup() {\n const mainStore = useMainStore();\n const extraData = ref(null as null | JsResumeFailure);\n const failureMessages = computed(() => {\n return extraData.value?.FailureMessages ?? [];\n });\n const actions = computed(() => {\n const result = extraData.value?.Actions ?? [];\n for (let act of result) {\n if (!(\"promise\" in act)) {\n act.promise = null; // eslint-disable-line vue/no-side-effects-in-computed-properties\n }\n }\n return result;\n });\n const act = async (action: NonNullable<JsResumeFailure[\"Actions\"]>[0]) => {\n action.promise = (async () => {\n const url = await mainStore.getUrl(action.UrlType, action.UrlData);\n window.location.assign(url);\n })();\n };\n (async () => {\n extraData.value = (await getData(mainStore, \"FailedPaymentResume\", () => {\n throw new Error();\n })) as JsResumeFailure;\n })();\n\n return {\n failureMessages,\n actions,\n act,\n };\n },\n});\n</script>\n","import { render } from \"./FailedPaymentResume.3.vue?vue&type=template&id=1bf14873&ts=true\"\nimport script from \"./FailedPaymentResume.3.vue?vue&type=script&lang=ts\"\nexport * from \"./FailedPaymentResume.3.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<style lang=\"less\">\n/*style overrides to accommodate forms with comments*/\n.public-page-body .body-content {\n padding: 0;\n}\n</style>\n<style lang=\"less\" scoped>\n@import \"/lib/Colors.less\";\n\n.testModeBar {\n margin-bottom: 0;\n text-align: center;\n font-size: 2em;\n border-radius: 0;\n height: 75px;\n}\n\n.alert-test {\n background: #111;\n color: #fff;\n font-weight: 600;\n}\n\n.alert-in-progress,\n.alert-issues {\n background: @warning;\n color: #000;\n font-weight: 600;\n border-radius: 0;\n}\n\n.notificationBarTop {\n position: fixed;\n width: 100%;\n z-index: 1029;\n a {\n text-decoration: underline;\n }\n}\n@added: #208337;\n@changed: #2568db;\n@deleted: #d70015;\n.adminDiffControlContainer {\n padding: 10px 15px;\n .changedKey,\n .deletedKey,\n .addedKey {\n color: white;\n }\n .changedKey {\n background: @changed;\n }\n .deletedKey {\n background: @deleted;\n }\n .addedKey {\n background: @added;\n }\n}\n\n.changed,\n.deleted,\n.new {\n border-style: dashed;\n border-width: 2px;\n}\n.changed {\n border-color: @changed !important;\n}\n.deleted {\n border-color: @deleted !important;\n}\n.new {\n border-color: @added !important;\n}\n.submissions-left-col {\n // container: leftSubmissions / inline-size;\n background: #ffffff;\n}\n.submissions-right-col {\n border-left: 1px solid #cccccc;\n background: whitesmoke;\n}\n.task-divider {\n display: flex;\n align-items: center;\n flex-wrap: nowrap;\n position: absolute;\n top: 0;\n height: 100%;\n width: 4px;\n z-index: 4;\n\n .icon {\n display: inline-flex;\n align-items: center;\n height: 50px;\n outline: none;\n box-shadow: none;\n border-radius: 0;\n cursor: pointer;\n &:focus {\n outline: auto;\n }\n &:hover,\n &:focus {\n background: @light-gray-dark;\n }\n }\n\n .task-divider-line {\n display: inline-flex;\n height: 100%;\n background: transparent;\n padding: 1.5px;\n cursor: col-resize;\n -webkit-transition: all ease 0.15s;\n transition: all ease 0.15s;\n &:hover {\n background: dodgerblue;\n }\n }\n}\n\n.issues .icon-attention-solid:before {\n color: @warning;\n}\n\n.nav-item.disabled {\n color: #999;\n}\n\n.nav-tabs {\n flex-basis: content;\n}\n// @container leftSubmissions (max-width: 576px) {\n// .button-controls {\n// width: 100%;\n// }\n// }\n\n@media (max-width: 767px) {\n .left,\n .right {\n display: inline-block;\n width: 100%;\n padding: 5px;\n }\n .right {\n text-align: right;\n border-top: 1px solid #ccc;\n }\n .left > .key {\n border-bottom: 1px solid #ccc;\n width: calc(100% + 10px);\n margin: -5px -5px 5px -5px;\n padding: 5px;\n }\n}\n\n@media (max-width: 767px) {\n .df-public-nav.df-collapsed .list-group-item:not(.active) {\n border-width: 0 !important;\n }\n}\n</style>\n<template>\n <div>\n <!--\n {{ status }} <br/>\n\n {{ pageGroups.map(i => i.label) }} <br/>\n {{ activeSegments == null }} || {{ activeSegments == null ? 'null' : activeSegments.length }} <br/>\n {{ availableSegments == null }} || {{ availableSegments == null ? 'null' : availableSegments.length }} <br/>\n {{ segment == '' }} || {{ segment == null }} || {{ segment }} <br/>\n {{ enabledPages == null }} || {{ enabledPages != null ? enabledPages.length : 'null' }}\n -->\n <picture id=\"loader\" v-if=\"!initialLoadFinished || formDataLoading || forcingRedirect || (activeSegments == null && enabledPages == null)\">\n <!--\n I[ {{ initialLoadFinished }} ] L[ {{ formDataLoading }} ] R[ {{ forcingRedirect }} ] A[ {{ activeSegments != null }} ] E[ {{ enabledPages != null }} ]\n -->\n <LoadingWheel :width=\"100\" />\n </picture>\n <div v-else>\n <div v-if=\"testMode\" class=\"alert alert-test testModeBar\">TEST MODE <span aria-hidden>></span> NOT A REAL FORM <span aria-hidden><</span> TEST MODE</div>\n <div v-if=\"hasIssues\" class=\"alert alert-issues text-center p-1 m-0\">This submission has issues.</div>\n <OfflineNotice v-if=\"isOffline\" />\n <div v-else>\n <LoginBanner v-if=\"showPageNav && hasMultiplePages && !isViewOnly\" />\n <div class=\"container-fluid\" :class=\"{ 'has-form-comments': showComments, 'no-form-comments': !showComments, testModeContainer: testMode }\">\n <div class=\"row flex-nowrap\" ref=\"ReviewContainer\">\n <!-- <div class=\"submissions-left-col left-nav-sec\" v-if=\"showComments\">\n <h1 style=\"margin-top:5px;\" class=\"admin-content-heading\">Activity</h1>\n <Comments :data=\"formData\" :showAdminFormLevelControls=\"this.adminReview\" />\n </div> -->\n <div :style=\"rightPageGroups.length > 0 && rightPageGroups.some(i => i.pages.length > 0) ? { flex: '0 0 ' + leftWidthPercentage } : {}\" :class=\"rightPageGroups.length > 1 || adminReview ? ['submissions-left-col', 'col', 'admin-content'] : ['tile', 'container']\" v-if=\"leftPageGroups.length > 0 || showComments\">\n <div class=\"row no-gutters justify-content-between align-items-start\">\n <ul class=\"col nav nav-tabs\" v-if=\"adminReview\">\n <li class=\"nav-item\" v-if=\"leftPageGroups.length > 0\" :class=\"{ disabled: hasIssues }\">\n <a tabindex=\"0\" class=\"nav-link\" :class=\"{ active: reviewTab == 'task' }\" @click.prevent=\"changeReviewTab('task')\">Task</a>\n </li>\n <li class=\"nav-item\" v-if=\"showComments\">\n <a tabindex=\"0\" class=\"nav-link\" :class=\"{ active: reviewTab == 'comments' }\" @click.prevent=\"changeReviewTab('comments')\">Comments</a>\n </li>\n <li class=\"nav-item\" v-if=\"showFiles\">\n <a tabindex=\"0\" class=\"nav-link\" :class=\"{ active: reviewTab == 'files' }\" @click.prevent=\"changeReviewTab('files')\">Files</a>\n </li>\n <li class=\"nav-item\" v-if=\"showHistory\">\n <a tabindex=\"0\" class=\"nav-link\" :class=\"{ active: reviewTab == 'history' }\" @click.prevent=\"changeReviewTab('history')\">History</a>\n </li>\n <li class=\"nav-item issues\" v-if=\"hasIssues\">\n <a tabindex=\"0\" class=\"nav-link\" :class=\"{ active: reviewTab == 'issues' }\" @click.prevent=\"changeReviewTab('issues')\">\n <span class=\"icon p-0 m-0 pl-0 icon-attention-solid\"></span>\n Issues\n </a>\n </li>\n </ul>\n <div v-if=\"adminReview\" class=\"button-controls mb-3 align-items-center\" :class=\"{ 'btn-group': isWorkflowManualOverrideVisible || isSubmittableStatusChangeVisible }\">\n <template v-if=\"isWorkflowReturnVisible\">\n <HelpIcon class=\"mr-1\" text=\"No email found for returning or Allow returning is not set\" v-if=\"!isWorkflowReturnEnabled\" />\n <button id=\"returnSubmissionBtn\" class=\"btn btn-sm btn-outline-secondary cancel dfNavButton w-100\" type=\"button\" :disabled=\"!isWorkflowReturnEnabled\" @click.prevent=\"returnSubmission($event)\">Return Submission</button>\n </template>\n <button id=\"dropdownBtn\" type=\"button\" v-if=\"isWorkflowManualOverrideVisible || isSubmittableStatusChangeVisible\" class=\"btn btn-sm btn-outline-secondary dropdown-toggle dropdown-toggle-split\" @click.prevent=\"toggleReturnDropdown\">\n <span class=\"sr-only\">Toggle Dropdown</span>\n </button>\n <div id=\"dropdownMenu\" class=\"dropdown-menu dropdown-menu-right\" :class=\"showReturnDropdown ? ['show'] : []\">\n <button id=\"startWorkflowManualOverride\" class=\"dropdown-item btn-sm cancel dfNavButton\" type=\"button\" :disabled=\"!isWorkflowManualOverrideVisible\" @click.prevent=\"startWorkflowManualOverride\" v-if=\"isWorkflowManualOverrideVisible\">Manual Override</button>\n <button id=\"startSubmittableStatusChange\" class=\"dropdown-item btn-sm cancel dfNavButton\" type=\"button\" :disabled=\"!isSubmittableStatusChangeVisible\" @click.prevent=\"startSubmittableStatusChange\" v-if=\"isSubmittableStatusChangeVisible\">Change Status</button>\n <button id=\"deleteDraft\" class=\"dropdown-item btn-sm cancel dfNavButton text-danger\" type=\"button\" :disabled=\"!isSubmittableDeleteVisible\" @click.prevent=\"deleteDraft(true, $event)\" v-if=\"isSubmittableDeleteVisible\">Delete Submission</button>\n </div>\n </div>\n </div>\n <Diff :inlineAdminPreview=\"settings.inlineAdminPreview\" />\n <PageSide :page-groups=\"leftPageGroups\" :pageI=\"leftPage\" @set-page=\"setLeftPage($event)\" @show-page-nav=\"setShowPagenav($event)\" @current-page=\"setCurrentLeftPage($event)\" v-show=\"reviewTab == 'task'\" v-if=\"leftPageGroups.length > 0 && leftPageGroups.some(i => i.pages.length > 0)\" />\n <CommentsTab class=\"comments-tab\" v-show=\"reviewTab == 'comments'\" />\n <Files v-show=\"reviewTab == 'files'\" />\n <History v-show=\"reviewTab == 'history'\" />\n <Issues v-show=\"reviewTab == 'issues'\" />\n </div>\n <div class=\"submissions-right-col col admin-content flex-grow-1 p-0\" v-if=\"rightPageGroups.length > 0 && rightPageGroups.some(i => i.pages.length > 0)\">\n <div v-if=\"hasPartiallyCompletedForms && adminReview\" class=\"alert alert-in-progress text-center p-1 m-0\">There are partially completed form(s) in this submission.</div>\n <div class=\"container tile p-3\">\n <Diff :inlineAdminPreview=\"settings.inlineAdminPreview\" v-if=\"leftPageGroups.length == 0\" />\n <PageSide :page-groups=\"rightPageGroups\" :pageI=\"rightPage\" @set-page=\"setRightPage($event)\" @show-page-nav=\"setShowPagenav($event)\" @current-segment=\"setCurrentSegment($event)\" />\n </div>\n </div>\n </div>\n <div class=\"task-divider\" v-show=\"rightPageGroups.length > 0 && rightPageGroups.some(i => i.pages.length > 0) && ((leftPageGroups.length > 0 && leftPageGroups.some(i => i.pages.length > 0)) || showComments)\" :style=\"{ left: dividerLeft }\">\n <a tabindex=\"0\" class=\"btn btn-bare p-0 icon icon-caret-left\" :class=\"{ disabled: !resizableLeft }\" @click.prevent=\"decreaseLeftWidth()\" draggable=\"true\"><span class=\"sr-only\">Resize left</span></a>\n <span class=\"task-divider-line\" :draggable=\"resizableLeft || resizableRight\" @dragstart.stop=\"resizeDragStart($event)\" @drag.stop=\"resizeDragMove($event)\" @dragend.stop.prevent=\"resizeDragEnd($event)\"></span>\n <a tabindex=\"0\" class=\"btn btn-bare p-0 icon icon-caret-right\" :class=\"{ disabled: !resizableRight }\" @click.prevent=\"increaseLeftWidth()\" draggable=\"true\"><span class=\"sr-only\">Resize right</span></a>\n </div>\n <div v-show=\"tempLeftWidth != null\" :style=\"{ left: tempLeftWidth }\" class=\"resize-marker\"></div>\n </div>\n </div>\n <div v-if=\"testMode\" class=\"alert alert-test testModeBar\">TEST MODE <span aria-hidden>></span> NOT A REAL FORM <span aria-hidden><</span> TEST MODE</div>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\n//import NonIndexStyles from '@/lib/nonIndexStyles.3.vue'\nimport { defineComponent, ref, watch, onActivated, onMounted, onUnmounted, computed, nextTick, provide, SetupContext, inject, reactive } from \"vue\";\nimport { asyncComputed } from \"@vueuse/core\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport PageSide from \"./PageSide.3.vue\";\nimport { StandardFormStatus } from \"@cs/StandardFormStatus\";\nimport { FormAccessPurpose } from \"@cs/FormAccessPurpose\";\nimport { Permissions } from \"@cs/Permissions\";\nimport { fetchXsrf } from \"@/lib/fetchHelpers.3\";\nimport { map, switchMap, startWith } from \"rxjs/operators\";\nimport { combineLatest, from, Observable, Subscription } from \"rxjs\";\n//import { combineLatestArray } from \"@/lib/combineLatestArray\";\nimport mitt from \"mitt\";\nimport delay from \"@/lib/delayPromise\";\nimport firstOrNull from \"@/lib/first\";\nimport LoginBanner from \"./Page/LoginBanner.3.vue\";\nimport OfflineNotice from \"./Page/OfflineNotice.3.vue\";\nimport Diff from \"./Page/Diff.3.vue\";\nimport Issues from \"./Page/Issues.3.vue\";\nimport History from \"./Page/History.3.vue\";\nimport Files from \"./Page/Files.3.vue\";\nimport CommentsTab from \"./Page/Comments.3.vue\";\nimport DeleteConfirmModal from \"./dialogs/DeleteConfirm.3.vue\";\nimport DeleteSuccessModal from \"./dialogs/DeleteSuccess.3.vue\";\nimport ReturnConfirmModal from \"./dialogs/ReturnConfirm.3.vue\";\nimport ReturnSuccessModal from \"./dialogs/ReturnSuccess.3.vue\";\nimport ResendConfirmModal from \"./dialogs/ResendConfirm.3.vue\";\nimport ResendSuccessModal from \"./dialogs/ResendSuccess.3.vue\";\nimport ChangeStatusConfirmModal from \"./dialogs/ChangeStatusConfirm.3.vue\";\nimport ChangeStatusSuccessModal from \"./dialogs/ChangeStatusSuccess.3.vue\";\nimport SubmitConfirmModal from \"./dialogs/SubmitConfirm.3.vue\";\nimport SubmitSuccessModal from \"./dialogs/SubmitSuccess.3.vue\";\nimport SubmitFailureModal from \"./dialogs/SubmitFailure.3.vue\";\nimport SubmitErrorsModal from \"./dialogs/SubmitErrors.3.vue\";\nimport LockActionModal from \"./dialogs/LockAction.3.vue\";\nimport LoadingModal from \"./dialogs/Loading.3.vue\";\n\nimport SignDialog from \"./dialogs/Sign.3.vue\";\nimport { usePageStore, toObserverComputed } from \"./pageState/store\";\nimport { useMainStore } from \"@/mainStore\";\nimport type PageDef from \"./elements/PageDef\";\nimport type FormDef from \"./elements/FormDef\";\nimport WorkflowManualOverrideModal from \"./dialogs/WorkflowManualOverride.3.vue\";\nimport WorkflowManualOverrideSuccessModal from \"./dialogs/WorkflowManualOverrideSuccess.3.vue\";\nimport { isSignatureDef } from \"./elements/SignatureDef\";\nimport { showModalInjectKey, showModal, ModalEvent, changePage, changePageInjectKey, getLoginUrlInjectKey } from \"@/AppShell.3.vue.InjectKeys\";\nimport { ICustomConfirmElement, isICustomConfirmElement, isIBlockSubmitElement, isICustomReceiptElement, isICustomViewElement, isIShouldSkipConfirmElement, IShouldSkipConfirmElement, isICustomSubmitTextElement, IHasCustomSubmitTextElement, BaseElementDefBase, IPostSubmitRedirectElement, isIPostSubmitRedirectElement, isIShouldSkipCompletionElement, LockAction } from \"./elements/BaseElementDef\";\nimport LoadingWheel from \"@/lib/LoadingWheel.3.vue\";\nimport HelpIcon from \"@/lib/HelpIcon.3.vue\";\nimport { gotoIndexInjectKey, forceLoginInjectKey, submitInjectKey, deleteDraftInjectKey, pageStatusFetcherInjectKey, resendEmailInjectKey, submitButtons$InjectKey, loadingInjectKey } from \"./Page.3.vue.InjectKeys\";\nimport { DirectLinkTemplateSettings } from \"@cs-ts/direct-link-template-settings\";\nimport StateFormDef from \"./elements/StateFormDef\";\nimport SignatureDef from \"./elements/SignatureDef\";\nimport flattenArrays from \"@/lib/flattenArrays\";\nimport { isNullOrWhitespace } from \"@/lib/whitespaceMethods\";\nimport { KnownFeatureFlags } from \"@cs/KnownFeatureFlags\";\nconst DEFAULT_FORM_SUBMIT_TEXT = \"Submit\";\ninterface Props {\n settings: {\n inModal: boolean;\n adminPreview: boolean;\n previewData?: any; // eslint-disable-line @typescript-eslint/no-explicit-any -- TODO?\n adminReview: boolean;\n areaUrlSlug?: string;\n areaCode?: string;\n formId?: string;\n formName?: string;\n formVersion?: string;\n formHash?: string;\n urlSlug?: string;\n page?: string;\n testMode?: string;\n };\n}\n//const debugSub = (a: Observable<any>) => {\n// a.subscribe(b => {\n// debugger;\n// });\n//};\nexport default defineComponent({\n props: [\"settings\"],\n components: {\n LoadingWheel,\n HelpIcon,\n PageSide,\n CommentsTab,\n History,\n Issues,\n Files,\n Diff,\n LoginBanner,\n OfflineNotice,\n },\n setup(props: Props, { emit }: SetupContext) {\n const leftPage = ref(null as null | number);\n const rightPage = ref(null as null | number);\n const verifyData = ref({});\n const verifyFailureMessages = ref([]);\n const isInitialCreate = ref(true);\n const forcingRedirect = ref(false);\n const initialLoadFinished = ref(false);\n const showLoginSlidedown = ref(false);\n //const skipConfirmModal = ref(false);\n const isSubmitting = ref(false);\n const pageStatus = ref({});\n const pageStatusSubscriptions = ref([] as Subscription[]);\n const reviewTab = ref(\"task\");\n const leftWidth = ref(50);\n const tempLeftWidth = ref(undefined as number | undefined);\n const ReviewContainer = ref(null as unknown as HTMLElement);\n const showPageNav = ref(false);\n const currentSegment = ref<StateFormDef>(null!);\n const currentLeftPage = ref<PageDef>(null!);\n\n const pageStore = usePageStore();\n const mainStore = useMainStore();\n\n const showModal = inject(showModalInjectKey) as showModal;\n const changePage = inject(changePageInjectKey) as changePage;\n const eventBus = mitt();\n provide(\"pageEventBus\", eventBus);\n\n const submitButtons$ = combineLatest([toObserverComputed(() => pageStore.formDataTyped), pageStore.segment$]).pipe(\n switchMap(([formData2, segment]) => {\n if (formData2 == null) {\n return from([]);\n }\n const formData = formData2.getSegmentView(segment!, null!);\n const submitButtonCalcId = pageStore.formSettings!.submitButtonTextCalculationId;\n const submitButtonObservable = (submitButtonCalcId == null ? from([null as string[] | null]) : formData.resolveCalculation(submitButtonCalcId)).pipe(map(v => (v ? v.join(\"\") : pageStore.formSettings!.effectiveSubmitButtonText)));\n type Button = { trigger: string; text: string; order: number };\n type BA = BaseElementDefBase & { submitButtons?: () => Button[]; submitButtons$?: () => Observable<Button> };\n const buttonElements = formData.getElementsByFilter(i => !!(i as BA).submitButtons || !!(i as BA).submitButtons$) as BA[];\n let buttons$: Observable<{ trigger: string; text: string; order: number }[]>;\n if (buttonElements.length > 0) {\n buttons$ = combineLatest(buttonElements.map(element => (element.submitButtons$ ? element.submitButtons$() : from([element.submitButtons!()])))).pipe(\n map(customButtons => {\n return customButtons.flat();\n }),\n );\n } else {\n buttons$ = from([[] as Button[]]);\n }\n let buttonText$;\n const buttonTextElements = formData.getElementsByFilter(isICustomSubmitTextElement) as (IHasCustomSubmitTextElement & BaseElementDefBase)[];\n if (buttonTextElements.length > 0) {\n const customSubmitText$ = buttonTextElements.map(element => combineLatest([element.hasCustomSubmitText$ ? element.hasCustomSubmitText$() : element.hasCustomSubmitText ? from([element.hasCustomSubmitText()]) : from([false]), element.submitText$ ? element.submitText$() : from([element.submitText!()])]));\n buttonText$ = combineLatest([submitButtonObservable, combineLatest(customSubmitText$)]).pipe(\n //@ts-expect-error\n map(([effectiveSubmitButtonText, customSubmitTextData]: [string, string[]]) => {\n if (effectiveSubmitButtonText != DEFAULT_FORM_SUBMIT_TEXT) {\n customSubmitTextData = customSubmitTextData.filter(i => i[0]);\n }\n customSubmitTextData = customSubmitTextData.filter(i => i[1]);\n if (customSubmitTextData.length > 0) {\n return customSubmitTextData[0][1];\n } else {\n return effectiveSubmitButtonText;\n }\n }),\n );\n } else {\n buttonText$ = submitButtonObservable;\n }\n return combineLatest([buttons$, buttonText$]).pipe(\n map(([buttons, buttonText]) => {\n if (buttons.length > 0) {\n return [...buttons.map(button => ({ ...button, text: button.text || DEFAULT_FORM_SUBMIT_TEXT }))].sort((a, b) => (a.order || 0) - (b.order || 0));\n } else {\n return [{ trigger: null, text: buttonText || DEFAULT_FORM_SUBMIT_TEXT }];\n }\n }),\n );\n }),\n startWith([{} as { trigger: null; text: null }]),\n );\n\n const submitButtons = useObservable(submitButtons$);\n\n //submitButtons: this.submitButtons$;\n //const segment = useSubject(pageStore.segment$),\n //visiblePages: this.visiblePages$,\n //enabledPages: this.enabledPages$,\n //isSubmittable: this.isSubmittable$,\n\n const formDataLoading = computed(() => pageStore.formDataLoading);\n\n const formId = computed(() => pageStore.formId);\n const testMode = computed(() => pageStore.testMode && !adminPreview.value);\n const adminReview = computed(() => pageStore.adminReview);\n const adminPreview = computed(() => pageStore.adminPreview);\n const activeSegments = computed(() => pageStore.activeSegments);\n const enabledPages = useObservable(pageStore.enabledPages$);\n const status = useObservable(pageStore.status$);\n //const endUserStatuses = computed(() => pageStore.endUserStatuses);\n const canSeeAll = computed(() => pageStore.formData?.can[Permissions.SeeAllForms]);\n const showComments = computed(() => {\n return (pageStore.adminReview && canSeeAll.value) || (pageStore.comments != null && pageStore.comments.length > 1);\n });\n const showHistory = computed(() => canSeeAll.value);\n const showFiles = computed(() => canSeeAll.value);\n const isWorkflow = computed(() => pageStore.isWorkflow);\n const hasPartiallyCompletedForms = asyncComputed(async () => {\n const hasStatus = (status: string) => [\"InProgress\", \"Returned\"].includes(status);\n const pagesWithStatus = (pageStore.segments || []).filter(segment => rightPageGroups.value.some(pageGroup => pageGroup.pages.some(page => page.definition.settings.segment == segment.id)) && hasStatus(segment.status));\n return isWorkflow.value ? pagesWithStatus.length > 0 : hasStatus(status.value!);\n });\n const hasIssues = computed(() => pageStore.hasIssues);\n const isViewOnly = computed(() => pageStore.isViewOnly);\n const isOffline = computed(() => pageStore.isOffline);\n const hasMultiplePages = computed(() => pageStore.visiblePages != null && pageStore.visiblePages.length > 1);\n\n const isWorkflowReturnVisible = computed(() => {\n return !adminPreview.value && adminReview.value && formId.value != null && pageStore.hasCompletedSegmentsToReturnTo && (canSeeAll.value || pageStore.formData?.can[FormAccessPurpose.AdminWorkflowAssign] || pageStore.formData?.can[FormAccessPurpose.AdminWorkflowSubmit]);\n });\n const hasReturnEmails$ = computed(() => {\n return toObserverComputed(() => pageStore.completedSegments).pipe(\n switchMap(completedSegments => {\n const returnEmail$s = (completedSegments ?? []).filter(i => i.definition.settings.returnEmailAddressCalculationId != null).map(i => i.resolveCalculation(i.definition.settings.returnEmailAddressCalculationId!));\n return combineLatest(returnEmail$s).pipe(map(i => flattenArrays(i).length > 0));\n }),\n );\n });\n const hasReturnEmails = useObservable(hasReturnEmails$.value);\n const isWorkflowReturnEnabled = computed(() => {\n return isWorkflowReturnVisible.value && (!pageStore.anonymousUser || hasReturnEmails.value);\n });\n const isWorkflowManualOverrideVisible = computed(() => {\n return !adminPreview.value && adminReview.value && isWorkflow.value && pageStore.canChangeStatus;\n });\n const isSubmittableStatusChangeVisible = computed(() => {\n return !adminPreview.value && adminReview.value && !isWorkflow.value && pageStore.canChangeStatus;\n });\n const isSubmittableDeleteVisible = computed(() => {\n return !adminPreview.value && adminReview.value && !isWorkflow.value && pageStore.canChangeStatus && pageStore.canDeleteSubmissions;\n });\n\n const pageGroups = computed(() => {\n const result = (pageStore.initializedSegments || []).map(i => {\n return {\n id: i.id as string | null,\n label: i.definition.settings.displayLabel,\n pages: (pageStore.visiblePages || []).filter(j => j.definition.settings.segment == i.id),\n };\n });\n const extra = (pageStore.visiblePages || []).filter(i => !(pageStore.uninitializedSegments || []).some(j => j.id == i.definition.settings.segment) && !result.some(j => j.pages.some(k => k == i)));\n if (extra.length > 0) {\n result.push({ id: null, label: \"Unknown\", pages: extra });\n }\n return result.filter(i => i.pages.length > 0);\n });\n const leftPageGroups = computed(() => {\n return pageGroups.value.filter(i => i.pages.some(i => !pageStore.isPageObjViewOnly(i, true)));\n });\n const rightPageGroups = computed(() => {\n return pageGroups.value.filter(i => !i.pages.some(i => !pageStore.isPageObjViewOnly(i, true)));\n });\n const leftWidthPercentage = computed(() => leftWidth.value + \"%\");\n const dividerLeft = computed(() => {\n const dividerWidth = 34;\n return \"calc(\" + leftWidthPercentage.value + \" - \" + dividerWidth / 2 + \"px)\";\n });\n const resizableLeft = computed(() => {\n return leftWidth.value > 30;\n });\n const resizableRight = computed(() => {\n return leftWidth.value < 70;\n });\n\n // Subscriptions have to be watched in created\n watch(enabledPages, () => {\n const pageStatusV = reactive({} as Record<string, string>);\n Object.values(pageStatusSubscriptions.value).forEach(value => {\n value.unsubscribe();\n });\n\n const pageStatusSubscriptionsV = [] as Subscription[];\n (enabledPages.value ?? []).forEach((page: PageDef) => {\n pageStatusSubscriptionsV.push(\n page.clientStatus$().subscribe((status: string) => {\n pageStatusV[page.vmId as string] = status;\n }),\n );\n });\n pageStatusSubscriptions.value = pageStatusSubscriptionsV;\n pageStatus.value = pageStatusV;\n });\n\n const changeReviewTab = (tab: string) => {\n reviewTab.value = tab;\n };\n\n const increaseLeftWidth = () => {\n if (resizableRight.value) {\n leftWidth.value = 75;\n }\n // TODO: local or session storage cols\n };\n const decreaseLeftWidth = () => {\n if (resizableLeft.value) {\n leftWidth.value = 25;\n }\n // TODO: local or session storage cols\n };\n const setLeftPage = (page: number) => {\n leftPage.value = page;\n };\n const setRightPage = (page: number) => {\n rightPage.value = page;\n };\n const resizeDragStart = (event: DragEvent) => {\n event.dataTransfer!.clearData();\n event.dataTransfer!.setDragImage(event.target as Element, event.offsetX, event.offsetY);\n tempLeftWidth.value = leftWidth.value;\n return true;\n };\n const resizeDragMove = (event: DragEvent) => {\n tempLeftWidth.value = _getWidth(event);\n return true;\n };\n const resizeDragEnd = (event: DragEvent) => {\n // TODO: local or session storage cols\n leftWidth.value = _getWidth(event);\n tempLeftWidth.value = undefined;\n return true;\n };\n const _getWidth = (event: DragEvent) => {\n var containerBox = ReviewContainer.value.getBoundingClientRect();\n var width = containerBox.width;\n var offset = event.pageX - containerBox.left;\n var newWidth = Math.round(100 * (offset / width));\n return Math.max(25, Math.min(75, Math.trunc(newWidth)));\n };\n\n const gotoIndex = () => {\n if (props.settings.inModal) {\n emit(\"close\");\n } else if (adminReview.value) {\n emit(\"change-page\", { page: \"Admin\" });\n } else if (adminPreview.value) {\n // ignore\n } else {\n emit(\"change-page\", { page: \"Index\" });\n }\n };\n\n const getLoginUrl = inject(getLoginUrlInjectKey) as (mode: number, returnUrl: string) => Promise<string>;\n\n const forceLogin = async () => {\n forcingRedirect.value = true;\n await nextTick();\n await pageStore.pendingActionPromise;\n //TODO?await this.$root.tenantDataPromise;\n const returnUrl = await mainStore.getUrl(\"draftGoto\", { areaCode: pageStore.formTenantCode, formId: formId.value, page: leftPage.value });\n const url = await getLoginUrl(0, returnUrl);\n window.location.assign(url);\n };\n\n //TODO duplicate of PageSide\n const throwIfViewOnly = () => {\n if (pageStore.isViewOnly) {\n throw new Error(\"Should not be called for view only pages\");\n }\n };\n\n const submit = async (triggerKey: string | null, _event: Event) => {\n if (!triggerKey && (submitButtons.value ?? []).length == 1) {\n triggerKey = submitButtons.value![0].trigger;\n }\n throwIfViewOnly();\n //let submitting = false; // TODO better implementation?\n let skipConfirmA = (await Promise.all((pageStore.formDataTyped!.getSegmentView(pageStore.segment, triggerKey).getElementsByFilter(isIShouldSkipConfirmElement) as IShouldSkipConfirmElement[]).map(i => (i.shouldSkipConfirm ? i.shouldSkipConfirm() : false)))).filter(i => i != null);\n let skipConfirm = skipConfirmA.length > 0 && skipConfirmA.every(i => i);\n if (skipConfirm && !pageStore.adminPreview && (triggerKey || ((submitButtons.value ?? []).length == 1 && !submitButtons.value![0].trigger))) {\n forcingRedirect.value = true;\n await (\n await submitFunction(triggerKey)\n )();\n } else {\n let confirmComponents = await Promise.all(\n pageStore\n .formDataTyped!.getSegmentView(pageStore.segment, triggerKey)\n .getElementsByFilter(i => isICustomConfirmElement(i) && i.hasCustomConfirmComponent(pageStore.adminPreview!))\n .map(item => (item as ICustomConfirmElement).getCustomConfirmComponent(pageStore.adminPreview!)),\n );\n confirmComponents = Array.prototype.concat.apply([], confirmComponents);\n let blockSubmit$s = await Promise.all(\n pageStore\n .formDataTyped!.getSegmentView(pageStore.segment, triggerKey)\n .getElementsByFilter2(isIBlockSubmitElement)\n .map(item => item.blockSubmit$()),\n );\n blockSubmit$s = Array.prototype.concat.apply([], blockSubmit$s);\n const blockSubmit$ = blockSubmit$s.length > 0 ? combineLatest(blockSubmit$s).pipe(map(a => a.some(i => i))) : from([false]);\n\n showModal(\n SubmitConfirmModal,\n {\n submitFunction: submitFunction,\n confirmComponents: confirmComponents,\n blockSubmit$: blockSubmit$,\n //@ts-ignore VUE2 issue?\n submitButtons: (submitButtons.value ?? []).filter((i: NonNullable<(typeof submitButtons)[\"value\"]>[0]) => i.trigger == null || i.trigger == triggerKey || triggerKey == null),\n triggerKey: triggerKey,\n },\n {\n \"before-closed\": function (event: ModalEvent) {\n if (isSubmitting.value) {\n event.stop();\n }\n },\n },\n );\n }\n };\n const submitFunction = async (triggerKey: string | null) => {\n isSubmitting.value = true;\n //submitting = true;\n const segment = pageStore.segment;\n await pageStore.pendingActionPromise; // TODO move into module?\n const submitResultPromise = pageStore.submitForm(triggerKey);\n mainStore.setLiveRegion(submitResultPromise.then(() => \"\"));\n let submitResult = await submitResultPromise;\n if (submitResult == null) {\n submitResult = {\n Result: 4,\n Dialog: \"Error\",\n };\n }\n const resultMap = {\n 0: \"ValidationFailed\",\n 1: \"Redirect\",\n 2: \"Submitted\",\n 3: \"SubmittedWithRedirect\",\n 4: \"Dialog\",\n };\n const segmentView = pageStore.formDataTyped!.getSegmentView(segment, triggerKey);\n let skipCompletion = segmentView.getElementsByFilter(i => isIShouldSkipCompletionElement(i) && (i.shouldSkipCompletion() ?? false)).length > 0;\n let redirectUrl: string | null | undefined = null;\n const resultStr = resultMap[submitResult?.Result as keyof typeof resultMap];\n switch (resultStr) {\n case \"Dialog\":\n return async () => {\n await showDialog(submitResult!.Dialog!, triggerKey);\n forcingRedirect.value = false;\n isSubmitting.value = false;\n };\n case \"Redirect\":\n return async () => {\n if (!pageStore.adminPreview) {\n forcingRedirect.value = true;\n }\n //@ts-ignore\n window.location = submitResult!.RedirectUrl;\n isSubmitting.value = false;\n };\n case \"SubmittedWithRedirect\":\n redirectUrl = submitResult!.RedirectUrl;\n //eslint-ignore no-fallthrough\n case \"Submitted\": {\n const redirectInFrontendEvenWithoutBackendRedirect = await mainStore.isFeatureFlagActiveAsync(KnownFeatureFlags.RedirectInFrontendEvenWithoutBackendRedirect.Id);\n if (redirectInFrontendEvenWithoutBackendRedirect || resultStr == \"SubmittedWithRedirect\") {\n if (redirectInFrontendEvenWithoutBackendRedirect && isNullOrWhitespace(redirectUrl)) {\n const postSubmitRedirectElements = segmentView.getElementsByFilter(i => isIPostSubmitRedirectElement(i));\n redirectUrl = postSubmitRedirectElements.length > 0 ? firstOrNull(await Promise.all(postSubmitRedirectElements.map(item => (item ? (item as IPostSubmitRedirectElement).getPostSubmitRedirect() : null)))) : null;\n }\n if (skipCompletion && !isNullOrWhitespace(redirectUrl)) {\n if (redirectInFrontendEvenWithoutBackendRedirect) {\n if (!pageStore.adminPreview) {\n forcingRedirect.value = true;\n }\n window.location.assign(redirectUrl!);\n isSubmitting.value = false;\n } else {\n window.location.assign(redirectUrl!);\n }\n }\n }\n break;\n }\n case \"ValidationFailed\":\n //skipConfirm = false;\n forcingRedirect.value = false;\n if (!pageStore.adminPreview || !confirm(\"Bypass validation? (only shown in preview mode)\")) {\n let targetPage: null | PageDef = null;\n await showModal(\n SubmitErrorsModal,\n {\n pageGroups: leftPageGroups.value,\n goToPageFirstError: async (page: PageDef | null) => {\n targetPage = page;\n },\n },\n {\n async closed() {\n const page = targetPage ?? currentLeftPage.value;\n const firstInvalidElement = await page.firstInvalidElement(false);\n const setFocus = () => {\n if (firstInvalidElement) {\n eventBus.emit(\"focus\", firstInvalidElement.vmId);\n } else {\n eventBus.emit(\"focus\", page.firstFocusableElement()?.vmId);\n }\n };\n if (targetPage != null && targetPage.id != currentLeftPage.value.id) {\n eventBus.emit(\"change-page\", {\n page: targetPage,\n withError: true,\n callback: setFocus,\n });\n } else {\n setFocus();\n }\n },\n },\n );\n return async () => {\n isSubmitting.value = false;\n };\n }\n break;\n default:\n debugger;\n throw new Error(`Unknown type: ${submitResult?.Result}`);\n }\n return async () => {\n isSubmitting.value = false;\n //submitting = false;\n if (pageStore.adminReview) {\n gotoIndex();\n } else if (!skipCompletion) {\n await showSubmitSuccessModal(redirectUrl, segment);\n } else {\n forcingRedirect.value = false;\n }\n };\n };\n const showDialog = async (type: string, triggerKey: string | null) => {\n switch (type) {\n case \"Sign\":\n return await showSignDialog(triggerKey);\n case \"Error\":\n return await showModal(\n SubmitFailureModal,\n {},\n {\n async closed() {},\n },\n );\n default:\n throw new Error(`Unimplemented dialog: ${type}`);\n }\n };\n type FormDataBase = NonNullable<(typeof pageStore)[\"formData\"]>;\n interface FormData extends FormDataBase {\n getSegmentView(segment: string | null): BaseElementDefBase;\n }\n const showSignDialog = async (triggerKey: string | null) => {\n let executing = false;\n const signTargets = (await Promise.all((pageStore.formData as FormData).getSegmentView(pageStore.segment).getElementsByFilter(i => isSignatureDef(i) && !i.isSigned))) as SignatureDef[];\n const pdfDataModel = await pageStore.invokeForm({ type: \"GenerateSignPreview\", target: signTargets[0].id!, segment: pageStore.segment }); // TODO refactor to elsewhere\n const pdfDataArray = Uint8Array.from(atob(pdfDataModel.PdfBase64), c => c.charCodeAt(0));\n showModal(\n SignDialog,\n {\n pdfData: pdfDataArray,\n requireUserVerification: signTargets[0].requireUserVerification(),\n sendVerifyFunction: async (verifyEmail: string, verifyPhoneNumber: string) => {\n const result = await pageStore.invokeForm({ type: \"SendVerifyMessage\", target: signTargets[0].id!, segment: pageStore.segment, data: { VerifyEmail: verifyEmail, VerifyPhoneNumber: verifyPhoneNumber } }); // TODO refactor to elsewhere\n if (result.Success) {\n return { success: true };\n } else {\n return { success: false, messages: result.FailureMessages };\n }\n },\n signAndSubmitFunction: async (signName: string, signDate: string, verifyCode: string) => {\n executing = true;\n const result = await pageStore.invokeForm({ type: \"Sign\", target: signTargets[0].id!, segment: pageStore.segment, data: { EnteredName: signName, EnteredDate: signDate, VerifyCode: verifyCode, PdfHash: pdfDataModel.PdfHash } }); // TODO refactor to elsewhere\n if (result.Success) {\n await (\n await submitFunction(triggerKey)\n )();\n executing = false;\n return { success: true };\n } else {\n executing = false;\n return { success: false, messages: result.FailureMessages };\n }\n },\n },\n {\n \"before-closed\": function (event: ModalEvent) {\n if (executing) {\n event.stop();\n }\n },\n // 'closed': async () => {\n // if (!this.adminPreview) {\n // if (redirectUrl) {\n // this.forcingRedirect = true;\n // window.location = redirectUrl;\n // } else if (!this.adminReview) {\n // await this.gotoIndex();\n // } else {\n // this.forcingRedirect = false;\n // }\n // }\n // },\n },\n );\n };\n\n const showReturnDropdown = ref(false);\n const toggleReturnDropdown = () => {\n showReturnDropdown.value = !showReturnDropdown.value;\n };\n\n const startWorkflowManualOverride = (_event: Event) => {\n let executing = false; // TODO better implementation?\n showModal(\n WorkflowManualOverrideModal,\n {\n returnFunction: async (type: string, data: object) => {\n executing = true;\n var result = await pageStore.workflowManualOverride({ type, data });\n executing = false;\n if (result.success) {\n await showModal(\n WorkflowManualOverrideSuccessModal,\n {},\n //{\n // height: \"auto\",\n // width: Math.min(0.9 * window.innerWidth, 600),\n // clickToClose: false,\n //},\n {\n closed: async () => {\n if (type == \"DeleteWorkflow\") {\n if (props.settings.inModal) {\n emit(\"close\");\n } else {\n emit(\"change-page\", { page: \"Admin\" });\n }\n } else {\n // Should this do anything?\n }\n },\n },\n );\n await delay(600); // avoid error when closing a modal while another is opening - TODO?\n }\n return result;\n },\n },\n //{\n // height: \"auto\",\n // width: Math.min(0.9 * window.innerWidth, 600),\n // clickToClose: false,\n //},\n {\n \"before-closed\": function (event: ModalEvent) {\n if (executing) {\n event.stop();\n }\n },\n },\n );\n };\n const returnSubmission = async (event: Event) => {\n let returning = false; // TODO better implementation?\n showModal(\n ReturnConfirmModal,\n {\n returnFunction: async (returningSegment: string, comment: string | null) => {\n returning = true;\n var result = isWorkflow.value ? await pageStore.returnDraft({ segment: returningSegment, comment: comment! }) : await pageStore.addCommentAndChangeStatus({ text: comment!, status: \"Returned\", userName: \"Myself\", visibleToSubmitter: showComments.value, elementData: pageStore.formData! as FormDef });\n returning = false;\n if (result!.success) {\n await showModal(\n ReturnSuccessModal,\n { triggerElement: event.target },\n {\n closed: async () => {\n // Should this do anything?\n //if (props.settings.inModal) {\n // emit(\"close\");\n //} else {\n // emit(\"change-page\", { page: \"Admin\" });\n //}\n },\n },\n );\n await delay(600); // avoid error when closing a modal while another is opening - TODO?\n }\n return result;\n },\n triggerElement: event.target,\n },\n {\n \"before-closed\": function (event: ModalEvent) {\n if (returning) {\n event.stop();\n }\n },\n },\n );\n };\n\n const startSubmittableStatusChange = (event: Event) => {\n let executing = false;\n showModal(\n ChangeStatusConfirmModal,\n {\n returnFunction: async (status: string, comment: string | null) => {\n executing = true;\n var result = await pageStore.addCommentAndChangeStatus({ text: comment!, status, userName: \"Myself\", visibleToSubmitter: showComments.value, elementData: pageStore.formData! as FormDef });\n executing = false;\n if (result?.success) {\n showChangeStatusSuccessModal(event);\n }\n return result;\n },\n triggerElement: event.target,\n },\n {\n \"before-closed\": function (event: ModalEvent) {\n if (executing) {\n event.stop();\n }\n },\n },\n );\n };\n\n const showChangeStatusSuccessModal = (event: Event) => {\n showModal(ChangeStatusSuccessModal, { triggerElement: event.target });\n };\n\n const showDeleteSuccessModal = (event?: Event, asAdmin?: boolean) => {\n showModal(\n DeleteSuccessModal,\n { asAdmin: asAdmin, triggerElement: event?.target },\n {\n closed: async () => {\n gotoIndex();\n },\n },\n );\n };\n\n const deleteDraft = async (asAdmin: boolean, _event: Event) => {\n throwIfViewOnly();\n let deleting = false; // TODO better implementation?\n let deleted = false; // TODO better implementation?\n showModal(\n DeleteConfirmModal,\n {\n asAdmin: asAdmin,\n deleteFunction: async () => {\n deleting = true;\n await pageStore.deleteDraft({ asAdmin: asAdmin });\n deleting = false;\n deleted = true;\n },\n },\n //{\n // height: \"auto\",\n // width: Math.min(0.9 * window.innerWidth, 600),\n // clickToClose: false,\n //},\n {\n \"before-closed\": function (event: ModalEvent) {\n if (deleting) {\n event.stop();\n }\n },\n async closed() {\n if (deleted) {\n gotoIndex();\n }\n },\n },\n );\n };\n\n const showSubmitSuccessModal = async (redirectUrl: string | null | undefined, segment: string | null) => {\n if (segment == \"NOMATCH\") {\n const completedSegments = pageStore.visibleSegments!;\n segment = completedSegments.length > 0 ? completedSegments[completedSegments.length - 1].id! : null;\n }\n let receiptContents = await Promise.all(\n pageStore\n .formDataTyped!.getSegmentView(segment, null)\n .getElementsByFilter2(isICustomReceiptElement)\n .map(item => item.visible().then(v => (v ? item.receiptContents() : []))),\n );\n receiptContents = Array.prototype.concat.apply([], receiptContents);\n let viewTypes = (\n await Promise.all(\n pageStore\n .formDataTyped!.getSegmentView(segment, null)\n .getElementsByFilter2(isICustomViewElement)\n .map(async item => {\n if (await item.visible()) {\n return item.viewTypes();\n } else {\n return [];\n }\n }),\n )\n ).flat();\n if ((viewTypes.length == 0 || pageStore.formSettings!.showBuiltinPdf == null || pageStore.formSettings!.showBuiltinPdf) && !viewTypes.includes(\"Builtin\")) {\n viewTypes.unshift(\"Builtin\");\n }\n const hasFileUploads = pageStore.formDataTyped!.getSegmentView(segment, null).getElementsByFilter(i => (i as unknown as { isFileUpload: boolean }).isFileUpload).length > 0;\n const documents = await Promise.all(\n viewTypes\n .filter(i => ![\"Builtin\"].includes(i))\n .map(async view => {\n return {\n url: await mainStore.getUrl(\"downloadDocument\", { areaCode: pageStore.formTenantCode, formId: pageStore.formId, document: view }),\n text: view == \"Builtin\" || view == \"Default\" || view == null ? \"Submission\" : view,\n };\n }),\n );\n if (hasFileUploads) {\n documents.push({\n url: await mainStore.getUrl(\"submissionGotoAttachments\", { areaCode: pageStore.formTenantCode, formId: pageStore.formId }),\n text: \"Attached File(s)\",\n });\n }\n if (hasFileUploads || viewTypes.length > 1) {\n documents.push({\n url: await mainStore.getUrl(\"submissionGotoAllDocuments\", { areaCode: pageStore.formTenantCode, formId: pageStore.formId }),\n text: \"All Documents\",\n });\n }\n\n showModal(\n SubmitSuccessModal,\n {\n redirectUrl,\n documents,\n submissionUrl: await mainStore.getUrl(\"submissionGoto\", { areaCode: pageStore.formTenantCode, formId: pageStore.formId, viewType: \"Builtin\" }),\n receiptContents: receiptContents,\n adminPreview: pageStore.adminPreview,\n },\n {\n closed: async () => {\n if (!pageStore.adminPreview) {\n if (redirectUrl) {\n forcingRedirect.value = true;\n //@ts-ignore\n window.location = redirectUrl;\n } else if (!pageStore.adminReview) {\n if ((pageStore.availableSegments?.length ?? 0) > 0 && (await mainStore.isFeatureFlagActiveAsync(KnownFeatureFlags.ChainForms.Id))) {\n forcingRedirect.value = false;\n } else {\n gotoIndex();\n }\n } else {\n forcingRedirect.value = false;\n }\n }\n },\n },\n );\n };\n\n const resendEmail = async (segment: string, commentRequired: boolean, eventType: string, type: string) => {\n let resend = false;\n showModal(\n ResendConfirmModal,\n {\n commentRequired: commentRequired,\n type: type,\n resendFunction: async (comment: string) => {\n resend = true;\n const result = await pageStore.resendEmail({ segment, comment, eventType });\n resend = false;\n if (result.success) {\n showResendSuccessModal(type);\n }\n return result;\n },\n },\n //{\n // height: \"auto\",\n // width: Math.min(0.9 * window.innerWidth, 600),\n // clickToClose: false,\n //},\n {\n \"before-closed\": function (event: ModalEvent) {\n if (resend) {\n event.stop();\n }\n },\n closed: async () => {\n // Should this do anything?\n },\n },\n );\n };\n\n const showResendSuccessModal = (type: string) => {\n showModal(\n ResendSuccessModal,\n { type: type },\n {\n closed: async () => {\n // Should this do anything?\n },\n },\n );\n };\n\n const showLoadingModal = (title: string, loadingPromise: Promise<void[]>) => {\n showModal(LoadingModal, { title, loadingPromise });\n };\n\n const setShowPagenav = (value: boolean) => {\n showPageNav.value = value;\n };\n\n const setCurrentSegment = (segment: StateFormDef) => {\n currentSegment.value = segment;\n };\n\n const setCurrentLeftPage = (page: PageDef) => {\n currentLeftPage.value = page;\n };\n\n provide(gotoIndexInjectKey, gotoIndex);\n provide(forceLoginInjectKey, forceLogin);\n provide(submitInjectKey, (triggerKey: string | null, event: Event) => submit(triggerKey, event));\n provide(deleteDraftInjectKey, (asAdmin: boolean, event: Event) => deleteDraft(asAdmin, event));\n provide(pageStatusFetcherInjectKey, () => pageStatus.value);\n provide(resendEmailInjectKey, (segment: string, commentRequired: boolean, eventType: string, type: string) => resendEmail(segment, commentRequired, eventType, type));\n provide(loadingInjectKey, (title: string, loadingPromise: Promise<void[]>) => showLoadingModal(title, loadingPromise));\n provide(submitButtons$InjectKey, submitButtons$);\n\n const updateHistory = () => {\n if (adminPreview.value || adminReview.value) {\n return; // TODO?\n }\n if (pageStore.formData != null) {\n const formId = pageStore.formId;\n const page = leftPage.value || 0;\n emit(\"update-page\", { areaCode: pageStore.formTenantCode, areaUrlSlug: null, formId: formId, page: page }, !initialLoadFinished.value);\n }\n };\n //watch(\n // () => formData.value,\n // () => {\n // debugger;\n // formData$.next(formData.value);\n // },\n // { immediate: true },\n //);\n watch(\n () => pageStore.formTenantCode,\n () => {\n updateHistory();\n },\n );\n watch(\n () => pageStore.formId,\n () => {\n updateHistory();\n },\n );\n watch(\n () => leftPage.value,\n () => {\n updateHistory();\n },\n );\n updateHistory();\n\n onMounted(() => {\n //TODO better implementation?\n document.addEventListener(\n \"click\",\n event => {\n const dropdownBtn = document.getElementById(\"dropdownBtn\");\n const dropdownMenu = document.getElementById(\"dropdownMenu\");\n if (!!dropdownMenu && !dropdownMenu.contains(event.target as Node) && !!dropdownBtn && !dropdownBtn.contains(event.target as Node)) {\n dropdownMenu.classList.remove(\"show\");\n }\n },\n { passive: true },\n );\n });\n\n const watchers: ReturnType<typeof watch>[] = [];\n let initedReviewPane = false;\n const initReviewPane = () => {\n if (hasIssues.value) {\n reviewTab.value = \"issues\";\n leftWidth.value = 35;\n } else if (leftPageGroups.value.length > 0) {\n reviewTab.value = \"task\";\n leftWidth.value = 50;\n } else if (showComments.value) {\n reviewTab.value = \"comments\";\n leftWidth.value = 25;\n }\n if (!initedReviewPane) {\n initedReviewPane = true;\n watchers.push(\n watch(\n () => leftPageGroups.value,\n (val, oldVal) => {\n if (val.length > 0 && oldVal.length == 0) {\n initReviewPane();\n }\n },\n ),\n );\n watchers.push(\n watch(\n () => hasIssues.value,\n (val, oldVal) => {\n // TODO - permission/access?\n if ((!val && reviewTab.value == \"issues\") || (val && !oldVal)) {\n initReviewPane();\n }\n },\n ),\n );\n }\n };\n onUnmounted(() => {\n for (const watcher of watchers) {\n watcher();\n }\n });\n\n const init = () => {\n forcingRedirect.value = false;\n initialLoadFinished.value = false;\n showLoginSlidedown.value = false;\n pageStatus.value = {};\n pageStatusSubscriptions.value = [];\n let areaUrlSlug, areaCode, formName, formVersion, formId, formHash, testMode, urlSlug;\n let page = 0 as number | undefined;\n let loadPromise = null;\n if (props.settings.adminPreview) {\n let previewData = props.settings.previewData;\n if (previewData == null) {\n const extraDataString = document.getElementById(\"extraData\")!.innerHTML;\n previewData = JSON.parse(extraDataString);\n }\n ({ areaUrlSlug, areaCode, formName, formVersion, formHash, formId } = previewData.form);\n page = (previewData.page || 0) + 1;\n loadPromise = pageStore.loadAdminPreviewFormData(previewData);\n } else if (props.settings.adminReview) {\n //const reviewData = await getData(this.$store, 'Admin',\n // () => this.$root.getUrl('adminSearchReviewData', { formId: props.settings.formId, pageNumber: null /* TODO remove? */ }),\n // i => true /* TODO i.definition.formId == props.settings.formName && i.definition.formVersion == props.settings.formVersion*/\n //);\n //({ formName, formVersion, formHash, formId } = reviewData.form);\n //page = reviewData.page+1;\n const extraDataString = document.getElementById(\"extraData\")?.innerHTML;\n const preloadedData = extraDataString == null ? null : (JSON.parse(extraDataString) as any); // eslint-disable-line @typescript-eslint/no-explicit-any\n //page = 0;\n testMode = props.settings.testMode?.toString()?.toLowerCase() == \"true\";\n loadPromise = pageStore.loadAdminReviewFormData({ areaUrlSlug: props.settings.areaUrlSlug, areaCode: props.settings.areaCode, formId: props.settings.formId, formName: preloadedData != null && preloadedData.formName != null ? preloadedData.formName : props.settings.formName, formVersion: preloadedData != null && preloadedData.formVersion != null ? preloadedData.formVersion : props.settings.formVersion, testMode, urlSlug: preloadedData != null && preloadedData.urlSlug != null ? preloadedData.urlSlug : urlSlug, preloadedData });\n } else {\n const externalData = {} as Record<string, string[]>;\n const searchParams = new URLSearchParams(window.location.search);\n const agParamKeys = [\"formHash\", \"testMode\"];\n for (const [key, value] of Array.from(searchParams.entries())) {\n if (agParamKeys.includes(key)) continue;\n if (key in externalData) {\n externalData[key].push(value);\n } else {\n externalData[key] = [value];\n }\n }\n ({ areaUrlSlug, areaCode, formName, formVersion, formId, formHash, urlSlug } = props.settings);\n //@ts-ignore\n page = (props.settings.page ?? 0) * 1;\n testMode = props.settings.testMode?.toString()?.toLowerCase() == \"true\";\n loadPromise = pageStore.loadFormData({\n areaUrlSlug,\n areaCode,\n formId,\n formName,\n formVersion,\n formHash,\n testMode,\n urlSlug,\n externalData,\n });\n }\n (async () => {\n pageStore.isSaveDisabledOnSectionChange = await useMainStore().isFeatureFlagActiveAsync(\"DisableSaveOnSectionChange\");\n })();\n\n const load = async () => {\n if (!adminPreview.value) {\n if (pageStore.directLinkTemplates.length > 0) {\n const url = (pageStore.directLinkTemplates[0].definition.settings as DirectLinkTemplateSettings).target;\n window.location.assign(url!);\n }\n if (adminReview.value) {\n initReviewPane();\n } else {\n //const aCount = pageStore.activeSegments?.length??0;\n //console.log(`${aCount} active segments`);\n //const bCount = pageStore.availableSegments?.length??0;\n //console.log(`${bCount} available segments`);\n //const vCount = pageStore.visibleSegments?.length??0;\n //console.log(`${vCount} visible segments`);\n if (pageStore.status == StandardFormStatus.Deleted) {\n showDeleteSuccessModal();\n } else {\n const available = pageStore.isWorkflow ? (pageStore.availableSegments ?? []).length > 0 : pageStore.endUserStatuses.includes(pageStore.status) && pageStore.formData!.locks.length == 0;\n if (!available) {\n let lockActions: LockAction[] = [];\n let lock: string | undefined = undefined;\n let lockSegmentId: string | undefined = undefined;\n if (pageStore.isWorkflow) {\n let lockableSegment = firstOrNull((pageStore.unlockableSegments ?? []).filter(i => i.locks.length > 0));\n if (lockableSegment != null) {\n lockSegmentId = lockableSegment!.id!;\n lock = lockableSegment.locks[0];\n lockActions = lockableSegment.getLockActions(lock);\n }\n } else {\n const locks = pageStore.formData!.locks;\n if (locks.length > 0) {\n lock = locks[0];\n lockActions = pageStore.formData!.getLockActions(lock);\n }\n }\n if (lock != null) {\n const submitFunction = async (lockAction: LockAction | { alreadyUnlocked?: boolean }) => {\n while (\"redirectUrl\" in lockAction && lockAction.redirectUrl != null && lockAction.redirectUrl instanceof Function) {\n lockAction = await lockAction.redirectUrl();\n }\n if (\"alreadyUnlocked\" in lockAction && lockAction.alreadyUnlocked) {\n init();\n } else if (\"unlock\" in lockAction && lockAction.unlock) {\n await pageStore.invokeForm({ type: \"Unlock\", target: lock, segment: lockSegmentId, unlock: true });\n init();\n } else if (\"redirectUrl\" in lockAction && lockAction.redirectUrl != null) {\n window.location.assign(lockAction.redirectUrl as string);\n } else {\n alert(\"You cannot edit this submission at this time\");\n }\n };\n showModal(\n LockActionModal,\n {\n submitFunction: submitFunction,\n lockActions: lockActions,\n },\n {\n \"before-closed\": function (event: ModalEvent) {\n event.stop();\n },\n },\n );\n return;\n }\n if (pageStore.segment == \"NOMATCH\") {\n const completedSegments = pageStore.visibleSegments ?? [];\n pageStore.segment = completedSegments.length > 0 ? completedSegments[completedSegments.length - 1].id! : null;\n }\n const segmentView = pageStore.formDataTyped!.getSegmentView(pageStore.segment, null);\n const skipCompletion = segmentView.getElementsByFilter(i => isIShouldSkipCompletionElement(i) && (i.shouldSkipCompletion() ?? false)).length > 0;\n const postSubmitRedirectElements = segmentView.getElementsByFilter(i => isIPostSubmitRedirectElement(i));\n const redirectUrl = postSubmitRedirectElements.length > 0 ? firstOrNull(await Promise.all(postSubmitRedirectElements.map(item => (item ? (item as IPostSubmitRedirectElement).getPostSubmitRedirect() : \"\")))) : \"\";\n if (!skipCompletion) {\n showSubmitSuccessModal(redirectUrl, null);\n return;\n } else if (redirectUrl != null) {\n window.location.assign(redirectUrl);\n return;\n }\n }\n }\n }\n if (leftPageGroups.value.length > 0) {\n leftPage.value = page!;\n rightPage.value = 0;\n } else {\n leftPage.value = 0;\n rightPage.value = page!;\n }\n }\n nextTick(() => {\n initialLoadFinished.value = true;\n });\n };\n\n loadPromise.then(\n async () => {\n while (pageStore.isWorkflow == null || (pageStore.isWorkflow && pageStore.availableSegments == null)) {\n await delay(10);\n }\n await load();\n },\n (e: unknown) => {\n if (e != null && (e as Error).message == \"NotFound\") {\n changePage({ page: \"PageNotFound\" });\n } else {\n debugger;\n throw e;\n }\n },\n );\n if (formName != null && formVersion != null && !(props.settings.adminPreview || props.settings.adminReview || (props.settings.testMode && props.settings.testMode != \"false\"))) {\n (async () => {\n const url = await mainStore.getUrl(\"addView\", { areaUrlSlug: areaUrlSlug, tenantCode: areaCode });\n const formData = new FormData();\n formData.append(\"formName\", formName);\n formData.append(\"formVersion\", formVersion);\n await fetchXsrf(mainStore, url, {\n method: \"POST\",\n credentials: \"same-origin\",\n body: formData,\n });\n })();\n }\n };\n\n onActivated(() => {\n if (isInitialCreate.value) {\n isInitialCreate.value = false;\n } else {\n init();\n }\n });\n\n init();\n\n const exposed = {\n //refs\n ReviewContainer,\n\n // state\n leftPage,\n leftPageGroups,\n rightPage,\n rightPageGroups,\n verifyData,\n verifyFailureMessages,\n activeSegments,\n enabledPages,\n formId,\n testMode,\n adminReview,\n showComments,\n showHistory,\n showFiles,\n isInitialCreate,\n forcingRedirect,\n initialLoadFinished,\n showLoginSlidedown,\n showPageNav,\n currentSegment,\n //skipConfirmModal,\n isSubmitting,\n hasIssues,\n pageStatus,\n pageStatusSubscriptions,\n reviewTab,\n leftWidth,\n leftWidthPercentage,\n dividerLeft,\n tempLeftWidth,\n resizableLeft,\n resizableRight,\n formDataLoading,\n isWorkflowManualOverrideVisible,\n isSubmittableStatusChangeVisible,\n isSubmittableDeleteVisible,\n isWorkflowReturnVisible,\n isWorkflowReturnEnabled,\n isWorkflow,\n hasPartiallyCompletedForms,\n isViewOnly,\n isOffline,\n hasMultiplePages,\n //method\n startWorkflowManualOverride,\n returnSubmission,\n deleteDraft,\n startSubmittableStatusChange,\n changeReviewTab,\n increaseLeftWidth,\n decreaseLeftWidth,\n resizeDragMove,\n resizeDragEnd,\n resizeDragStart,\n setLeftPage,\n setRightPage,\n setShowPagenav,\n setCurrentSegment,\n setCurrentLeftPage,\n\n showReturnDropdown,\n toggleReturnDropdown,\n };\n\n (\"#if JEST\");\n //@ts-ignore\n exposed.showDialog = showDialog;\n //@ts-ignore\n exposed.forceLogin = forceLogin;\n //@ts-ignore\n exposed.gotoIndex = gotoIndex;\n //@ts-ignore\n exposed.resendEmail = resendEmail;\n //@ts-ignore\n exposed.submit = submit;\n //@ts-ignore\n exposed.submitFunction = submitFunction;\n (\"#endif\");\n\n return exposed;\n },\n});\n</script>\n","import { Observable, from as from$1, fromEvent as fromEvent$1, BehaviorSubject } from 'rxjs';\nimport { isRef, watch, shallowRef, readonly, ref } from 'vue-demi';\nimport { tryOnScopeDispose } from '@vueuse/shared';\n\nfunction from(value, watchOptions) {\n if (isRef(value))\n return new Observable((subscriber) => watch(value, (val) => subscriber.next(val), watchOptions));\n return from$1(value);\n}\nfunction fromEvent(value, event) {\n if (isRef(value)) {\n return new Observable((subscriber) => {\n let innerSub;\n return watch(value, (element) => {\n innerSub == null ? void 0 : innerSub.unsubscribe();\n if (element instanceof HTMLElement) {\n innerSub = fromEvent$1(element, event).subscribe(subscriber);\n subscriber.add(innerSub);\n }\n }, { immediate: true });\n });\n }\n return fromEvent$1(value, event);\n}\n\nfunction toObserver(value) {\n return {\n next: (val) => {\n value.value = val;\n }\n };\n}\n\nfunction useExtractedObservable(source, extractor, options, watchOptions) {\n let subscription;\n tryOnScopeDispose(() => {\n subscription == null ? void 0 : subscription.unsubscribe();\n subscription = void 0;\n });\n const obsRef = shallowRef(options == null ? void 0 : options.initialValue);\n watch(source, (value, oldValue, onCleanup) => {\n subscription == null ? void 0 : subscription.unsubscribe();\n if (typeof value !== \"undefined\" && value !== null) {\n const observable = extractor(value, oldValue, onCleanup);\n subscription = observable.subscribe({\n error: (err) => {\n var _a;\n (_a = options == null ? void 0 : options.onError) == null ? void 0 : _a.call(options, err);\n },\n complete: () => {\n var _a;\n (_a = options == null ? void 0 : options.onComplete) == null ? void 0 : _a.call(options);\n },\n next: (val) => {\n obsRef.value = val;\n }\n });\n } else {\n subscription = void 0;\n }\n }, {\n immediate: true,\n ...watchOptions\n });\n return readonly(obsRef);\n}\n\nfunction useObservable(observable, options) {\n const value = ref(options == null ? void 0 : options.initialValue);\n const subscription = observable.subscribe({\n next: (val) => value.value = val,\n error: options == null ? void 0 : options.onError\n });\n tryOnScopeDispose(() => {\n subscription.unsubscribe();\n });\n return value;\n}\n\nfunction useSubject(subject, options) {\n const value = ref(\n subject instanceof BehaviorSubject ? subject.value : void 0\n );\n const subscription = subject.subscribe({\n next(val) {\n value.value = val;\n },\n error: options == null ? void 0 : options.onError\n });\n watch(value, (nextValue) => {\n subject.next(nextValue);\n });\n tryOnScopeDispose(() => {\n subscription.unsubscribe();\n });\n return value;\n}\n\nfunction useSubscription(subscription) {\n tryOnScopeDispose(() => {\n subscription.unsubscribe();\n });\n}\n\nfunction watchExtractedObservable(source, extractor, callback, subscriptionOptions, watchOptions) {\n let subscription;\n tryOnScopeDispose(() => {\n subscription == null ? void 0 : subscription.unsubscribe();\n subscription = void 0;\n });\n return watch(source, (value, oldValue, onCleanup) => {\n subscription == null ? void 0 : subscription.unsubscribe();\n if (typeof value !== \"undefined\" && value !== null) {\n const observable = extractor(value, oldValue, onCleanup);\n subscription = observable.subscribe({\n next: callback,\n error: subscriptionOptions == null ? void 0 : subscriptionOptions.onError,\n complete: subscriptionOptions == null ? void 0 : subscriptionOptions.onComplete\n });\n } else {\n subscription = void 0;\n }\n }, watchOptions);\n}\n\nexport { from, fromEvent, toObserver, useExtractedObservable, useObservable, useSubject, useSubscription, watchExtractedObservable };\n","<style scoped lang=\"less\">\n@import \"/lib/Colors.less\";\n.overlayContainer {\n position: relative;\n .overlay {\n display: flex;\n align-items: center;\n margin: auto;\n z-index: 3;\n .overlayCenter {\n text-align: center;\n z-index: 5;\n opacity: 1;\n box-shadow: 0 0 50px 50px #ffffff;\n background: #ffffff;\n padding: 15px;\n max-width: 450px;\n }\n }\n}\n@added: #208337;\n@changed: #2568db;\n@deleted: #d70015;\n.adminDiffControlContainer {\n padding: 10px 15px;\n .changedKey,\n .deletedKey,\n .addedKey {\n color: white;\n }\n .changedKey {\n background: @changed;\n }\n .deletedKey {\n background: @deleted;\n }\n .addedKey {\n background: @added;\n }\n}\n\n.changed,\n.deleted,\n.new {\n border-style: dashed;\n border-width: 2px;\n}\n.changed {\n border-color: @changed !important;\n}\n.deleted {\n border-color: @deleted !important;\n}\n.new {\n border-color: @added !important;\n}\n.df-workflow-title {\n display: block;\n color: #687078;\n font-size: 0.6em;\n}\n.df-form-title {\n font-size: 26px;\n}\n.df-segment-title {\n display: block;\n margin-bottom: 7.5px;\n}\n.save-all-container {\n position: sticky;\n top: -10px;\n margin-top: -40px;\n margin-left: auto;\n padding: 0 15px;\n z-index: 10001;\n}\n.btn-outline-secondary:not(:hover):not(:focus) {\n background-color: #ffffff;\n}\n.alert-issues {\n background: @warning;\n color: #000;\n font-weight: 600;\n}\n</style>\n<style lang=\"less\">\n@gap: 0.5em;\n.df-navigation-btn-container {\n display: grid;\n gap: @gap;\n grid-template-columns: repeat(auto-fit, minmax(0, min-content));\n align-items: start;\n justify-content: space-between;\n grid-template-areas: \"previous delete exit submit next\";\n\n button,\n a {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n margin-bottom: unset !important;\n }\n .df-save-and-exit-btn {\n grid-area: exit;\n }\n .df-previous-btn {\n grid-area: previous;\n }\n .df-save-and-continue-btn {\n grid-area: next;\n }\n .df-delete {\n grid-area: delete;\n }\n .df-submit-btn-container {\n grid-area: submit;\n display: flex;\n gap: @gap;\n flex-wrap: wrap;\n justify-content: end;\n }\n}\n.button-condensed {\n .df-navigation-btn-container,\n .df-submit-btn-container {\n display: flex;\n gap: @gap;\n flex-direction: column;\n justify-content: center;\n\n button,\n a {\n width: 100%;\n margin: 0 !important;\n }\n }\n .df-submit-btn-container {\n width: 100%;\n }\n}\n</style>\n<template>\n <form class=\"row overlayContainer\" @submit.prevent=\"advanceForm\" :class=\"{ 'condensed-side': condensed, 'button-condensed': buttonCondensed }\" ref=\"Form\">\n <div v-if=\"hasIssues\" class=\"alert alert-issues text-center p-1 m-0 w-100\">Submission cannot be continued until issues are resolved.</div>\n <input class=\"d-none\" type=\"submit\" value=\"Advance Form\" />\n <div class=\"save-all-container\">\n <button type=\"button\" class=\"btn btn-secondary save-all-button\" @click.prevent=\"saveAllAdminEdits\" v-if=\"hasPendingAdminEdits\">Save All Revisions</button>\n </div>\n <div class=\"col-12\">\n <!--\n {{ segment }}\n {{ activeSegments.map(i => i.id) }}\n {{ availableSegments.map(i => i.id) }}\n {{ isPendingAssignment }}\n -->\n <div>\n <h1 class=\"df-form-title\" ref=\"FormTitle\">\n <span class=\"df-segment-title\">{{ segmentTitle }}</span>\n <span class=\"df-workflow-title\" v-if=\"isWorkflow && adminReview\">{{ title }}</span>\n </h1>\n <h2 class=\"df-page-title\" v-if=\"hasMultiplePages && currentPage\">{{ currentPage.definition.settings.effectiveLinkText }}</h2>\n <p class=\"df-page-sub\" v-if=\"currentPage && currentPage.definition.settings.description\">{{ currentPage.definition.settings.description }}</p>\n </div>\n </div>\n <div class=\"overlay\" v-if=\"isPendingAssignment\">\n <div class=\"overlayCenter\">\n <SegmentSelector />\n </div>\n </div>\n <div class=\"col-md-4 col-lg-3 df-public-nav\" :class=\"pageNavCollapsed ? ['df-collapsed'] : []\" v-if=\"hasMultiplePages && showPageNav && !isPendingAssignment\" @click.capture=\"openNav\">\n <div class=\"df-public-nav-pages\" id=\"PageNavigation\">\n <div class=\"list-group\" role=\"navigation\" aria-label=\"Sections\">\n <template v-for=\"pageGroup in pageGroupCast(pageGroups)\">\n <div class=\"list-group-container mb-3\">\n <!-- <pre>{{pageGroup.pages.map(i => pageStatusFetcher()[i.vmId])}}</pre> -->\n <!-- <pre>{{pageGroupStatus(pageGroup.pages)}}</pre> -->\n <button v-if=\"Object.keys(pageGroups).length > 1 && pageGroup.pages.length >= 1\" type=\"submit\" @click.prevent=\"gotoSubPage(pageGroup.pages[0], true)\" class=\"list-group-item page-header-btn\" :class=\"[{ active: pageGroup.pages.some(i => i == currentPage) }, pageGroupStatus(pageGroup.pages)]\" :aria-description=\"pageGroup.pages.map(p => pageStatus(pageStatusFetcher()[p.vmId])).reduce((a, i) => (a == i ? a : null)) || 'Page has errors.'\" :disabled=\"pageGroup.pages.every(p => !(enabledPages || []).includes(p))\">\n <span class=\"btn-wrapper d-flex justify-content-between align-items-center\">\n <i class=\"page-header-status page-status-icon d-flex\"></i>\n <span class=\"flex-grow-1\">{{ pageGroup.label }}</span>\n <i class=\"icon ml-2\" :class=\"togglePageHeader[pageGroup.id!] ? 'icon-caret-down' : 'icon-caret-right'\"></i>\n </span>\n </button>\n <template v-if=\"(currentPage == null || pageGroup.pages.some(i => i == currentPage) || pageGroup.pages.length <= 1) && togglePageHeader[pageGroup.id!]\">\n <template v-for=\"page in pageGroup.pages\">\n <button class=\"list-group-item\" name=\"editPage\" type=\"submit\" @click.prevent=\"gotoSubPage(page)\" :disabled=\"!enabledPages!.includes(page)\" :class=\"[{ active: currentPage == page }, pageStatusClass(pageStatusFetcher()[page.vmId]), !showChanges ? {} : page.baseChangeRecursive() != null ? page.baseChangeRecursive() : {}]\" :aria-description=\"pageStatus(pageStatusFetcher()[page.vmId])\">\n <span class=\"btn-wrapper d-flex align-items-center\">\n <i class=\"page-status-icon d-flex\"></i>\n <span class=\"flex-grow-1\">{{ page.definition.settings.effectiveLinkText }}</span>\n </span>\n </button>\n </template>\n </template>\n </div>\n </template>\n </div>\n </div>\n <div class=\"mb-3\">\n <div v-if=\"!isCurrentPageViewOnly\" class=\"d-none d-md-block\">\n <template v-if=\"!!submitButtons && submitButtons.length <= 1\">\n <button v-for=\"submitButton in submitButtons\" class=\"btn btn-primary dfNavButton cancel mb-1 mr-1\" name=\"saveType\" :disabled=\"!isSubmittable\" type=\"submit\" value=\"ConfirmSubmitForm\" @click.prevent=\"submit(submitButton.trigger, $event)\" :title=\"submitButton.text ?? undefined\">\n {{ submitButton.text }}\n </button>\n </template>\n <button class=\"btn btn-outline-secondary cancel dfNavButton ml-1 mb-1\" type=\"button\" :disabled=\"!isDeletable\" @click.prevent=\"deleteDraft(false, $event)\">Delete</button>\n </div>\n </div>\n </div>\n <div v-if=\"!isPendingAssignment\" :class=\"hasMultiplePages && showPageNav ? ['col-md-8', 'col-lg-9'] : ['col-md-12']\">\n <div class=\"clearfix\" id=\"jsPageEditor\">\n <div class=\"clearfix\" v-if=\"currentPage\" role=\"main\" aria-label=\"Current Section\">\n <AdminSettingsDifferences :data=\"currentPage\" :pageMode=\"true\" />\n <component :is=\"currentPage.definition.type\" :data=\"currentPage\" :view-only=\"isCurrentPageControlsViewOnly\"></component>\n </div>\n <div class=\"text-center df-navigation-btn-container\" style=\"margin-top: 30px\" v-show=\"currentPage != null && !currentPage.hasCustomPageNav()\">\n <button class=\"btn btn-outline-secondary dfNavButton cancel df-previous-btn\" name=\"editPage\" type=\"submit\" value=\"1\" @click.prevent=\"retreatForm\" v-if=\"hasMultiplePages\" :disabled=\"!canRetreatForm\" aria-label=\"Previous\">< Previous</button>\n <button type=\"button\" class=\"btn btn-outline-secondary cancel dfNavButton mx-auto\" @click.prevent=\"gotoIndex\" v-if=\"isViewOnly\" :disabled=\"adminPreview ?? undefined\">Home</button>\n <a href=\"#\" class=\"btn btn-outline-secondary cancel df-delete dfNavButton\" v-show=\"isDeletable\" :class=\"{ 'visible-xs-inline-block': hasMultiplePages }\" @click.prevent=\"deleteDraft(false, $event)\" :disabled=\"adminPreview\"> Delete </a>\n <button class=\"btn btn-outline-secondary dfNavButton cancel df-save-and-exit-btn\" name=\"saveType\" type=\"submit\" value=\"SaveAndExit\" @click.prevent=\"saveAndExit\" v-if=\"!isViewOnly && !isCurrentPageViewOnly\" :disabled=\"adminPreview ?? undefined\">Save and Exit</button>\n <!-- <div class=\"d-flex flex-wrap flex-grow-1 flex-sm-grow-0 justify-content-end\" v-if=\"!isCurrentPageViewOnly && submittablePages.includes(currentPage)\"> -->\n <div class=\"df-submit-btn-container\" v-if=\"!isCurrentPageViewOnly && submittablePages.includes(currentPage!)\">\n <!-- group buttons together in UX -->\n <template v-if=\"!isCurrentPageViewOnly && submittablePages.includes(currentPage!)\">\n <button v-for=\"submitButton in submitButtons\" class=\"btn dfNavButton cancel df-save-and-continue-btn\" name=\"saveType\" type=\"submit\" value=\"ConfirmSubmitForm\" :class=\"{ 'btn-primary': !isCurrentPageViewOnly, 'btn-outline-secondary': isCurrentPageViewOnly }\" :disabled=\"!canAdvanceForm\" :style=\"{ float: !hasMultiplePages ? 'none' : undefined }\" @click.prevent=\"submit(submitButton.trigger, $event)\" :title=\"submitButton.text ?? undefined\">\n {{ truncateLongText(submitButton.text) }}\n </button>\n </template>\n </div>\n <button class=\"btn dfNavButton cancel df-save-and-continue-btn\" name=\"saveType\" type=\"submit\" value=\"ConfirmSubmitForm\" :class=\"{ 'btn-primary': !isCurrentPageViewOnly, 'btn-outline-secondary': isCurrentPageViewOnly }\" :disabled=\"!canAdvanceForm\" :style=\"!hasMultiplePages ? { float: 'none' } : {}\" v-if=\"(hasMultiplePages || !isCurrentPageViewOnly) && !submittablePages.includes(currentPage!)\" @click.prevent=\"advanceForm\" aria-label=\"Next\">Next ></button>\n </div>\n <div class=\"text-center\" style=\"margin-top: 30px\" v-show=\"currentPage != null && currentPage.hasCustomPageNav()\">\n <button type=\"button\" class=\"btn btn-outline-secondary cancel\" @click.prevent=\"gotoIndex\" :disabled=\"adminPreview || false\">Home</button>\n </div>\n </div>\n </div>\n </form>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, onMounted, computed, watch, nextTick, inject, provide, SetupContext } from \"vue\";\nimport PageDefComponent from \"./elementTemplates/PageDef.3.vue\";\nimport AdminSettingsDifferences from \"./elementTemplates/AdminSettingsDifferences.3.vue\";\nimport SegmentSelector from \"./Page/SegmentSelector.3.vue\";\nimport SaveFailureModal from \"./dialogs/SaveFailure.3.vue\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { computedAsync } from \"@vueuse/core\";\nimport { combineLatest } from \"rxjs\";\nimport { map, first, switchMap, startWith /*tap*/ } from \"rxjs/operators\";\nimport type mitt from \"mitt\";\nimport getElementComponent from \"./elementTemplates/elementFactory.3\";\nimport { usePageStore, toObserverComputed } from \"./pageState/store\";\nimport { useMainStore } from \"@/mainStore\";\nimport type PageDef from \"./elements/PageDef\";\nimport { BaseElementDefBase } from \"./elements/BaseElementDef\";\nimport { BaseFormDefinitionItem } from \"./elements/__DefinitionDataInterface\";\nimport { updatePageInjectKey, updatePage, showModalInjectKey, showModal } from \"@/AppShell.3.vue.InjectKeys\";\nimport { gotoIndexInjectKey, forceLoginInjectKey, submitInjectKey, deleteDraftInjectKey, pageStatusFetcherInjectKey, /*returnSubmissionInjectKey, startWorkflowManualOverrideInjectKey,*/ submitButtons$InjectKey, loadingInjectKey, loading } from \"./Page.3.vue.InjectKeys\";\nimport FormDef from \"./elements/FormDef\";\nimport type { FormJson } from \"@cs/FormJson\";\nimport type { SaveAllAndSubmitResponse } from \"@cs/SaveAllAndSubmitResponse\";\nimport { KnownFeatureFlags } from \"@cs/KnownFeatureFlags\";\n\ntype PageGroup = {\n id: string | null;\n label: string;\n pages: PageDef[];\n};\ninterface Props {\n pageI: number;\n pageGroups: PageGroup[];\n}\nexport default defineComponent({\n props: [\"pageI\", \"pageGroups\"],\n components: {\n PageDef: PageDefComponent,\n AdminSettingsDifferences,\n SegmentSelector,\n },\n emits: [\"set-page\", \"show-page-nav\", \"current-segment\", \"current-page\"],\n //eslint-disable-next-line @typescript-eslint/no-explicit-any -- TODO - figure out why SetupContext gives overload failure\n setup(props: Props, setupContextUntyped: any) {\n const emit = (setupContextUntyped as SetupContext).emit;\n const pageNavCollapsed = ref(false);\n const page = ref(null as null | number);\n const formData$ = ref<FormDef | null>(null!);\n const condensed = ref(false);\n const buttonCondensed = ref(false);\n const mustToggle = ref(false);\n const togglePageHeader = ref({} as Record<string, boolean>);\n\n const Form = ref(null! as HTMLElement);\n const FormTitle = ref(null! as HTMLElement);\n\n const pageStore = usePageStore();\n const mainStore = useMainStore();\n const eventBus = inject(\"pageEventBus\") as ReturnType<typeof mitt>;\n const updatePage = inject(updatePageInjectKey) as updatePage;\n const loading = inject(loadingInjectKey) as loading;\n const showModal = inject(showModalInjectKey) as showModal;\n\n const currentPage$ = computed(() => {\n const page$ = toObserverComputed(() => page.value);\n const pages$ = toObserverComputed(() => pageStore.pages);\n return combineLatest([pages$, page$]).pipe(\n map(([pages, page]) => {\n const currentPage = page == null ? null : pages[page! - 1];\n emit(\"current-page\", currentPage);\n return currentPage;\n }),\n );\n });\n const currentPage = useObservable(currentPage$.value);\n\n const currentSegment$ = computed(() => {\n const segments$ = toObserverComputed(() => pageStore.segments);\n return combineLatest([currentPage$.value, segments$]).pipe(\n map(([currentPage, segments]) => {\n if (currentPage == null) return null;\n const currentSegment = segments!.find(i => i.id == currentPage.definition.settings.segment);\n emit(\"current-segment\", currentSegment);\n return currentSegment;\n }),\n );\n });\n const currentSegment = useObservable(currentSegment$.value);\n const currentSegmentLabel$ = computed(() => {\n return currentSegment$.value.pipe(\n map(currentSegment => {\n if (currentSegment == null) return null;\n return currentSegment.definition.settings.displayLabel;\n }),\n );\n });\n const currentSegmentLabel = useObservable(currentSegmentLabel$.value);\n\n const enabledPages$ = computed(() => {\n const pageGroupsI = toObserverComputed(() => props.pageGroups);\n return combineLatest([pageStore.enabledPages$, pageGroupsI]).pipe(\n //tap(i => { debugger; }),\n map(([enabledPages, pageGroups]) => {\n //debugger;\n return enabledPages.filter(i => pageGroups.some(j => j.pages.includes(i)));\n }),\n //tap(i => { debugger; }),\n );\n });\n const enabledPages = useObservable(enabledPages$.value);\n const pages = computed(() => pageStore.pages);\n const isWorkflow = computed(() => pageStore.isWorkflow);\n const hasIssues = computed(() => pageStore.hasIssues);\n const adminReview = computed(() => pageStore.adminReview);\n const adminPreview = computed(() => pageStore.adminPreview);\n const title = computed(() => pageStore.title);\n const showChanges = computed(() => pageStore.showChanges);\n const visiblePages$ = computed(() => {\n const pageGroups$ = toObserverComputed(() => props.pageGroups);\n return combineLatest([pageStore.visiblePages$, pageGroups$]).pipe(map(([visiblePages, pageGroups]) => visiblePages.filter(i => pageGroups.some(j => j.pages.includes(i)))));\n });\n const visiblePages = useObservable(visiblePages$.value);\n const submittablePages = computed(() => {\n return props.pageGroups.filter(i => i.pages.some(j => !pageStore.isPageObjViewOnly(j, false))).map(i => i.pages[i.pages.length - 1]);\n });\n const hasMultiplePages = computed(() => {\n return visiblePages.value != null && visiblePages.value.length > 1;\n });\n const availableSegments = computed(() => pageStore.availableSegments);\n const activeSegments = computed(() => pageStore.activeSegments);\n const segment = computed(() => pageStore.segment);\n\n const isPendingAssignment = computed(() => {\n const seg = segment.value;\n const avS = availableSegments.value || [];\n const acS = activeSegments.value || [];\n //debugger;\n return avS.filter(i => props.pageGroups.some(j => j.id == i.id)).some(i => i.id == seg || seg == \"NOMATCH\") && !acS.filter(i => props.pageGroups.some(j => j.id == i.id)).some(i => i.id == seg || seg == \"NOMATCH\");\n });\n\n const isCurrentPageViewOnly$ = computed(() => {\n return combineLatest([currentPage$.value.pipe(switchMap(i => pageStore.isPageObjViewOnly$(i!))), toObserverComputed(() => hasIssues.value), toObserverComputed(() => isPendingAssignment.value)]).pipe(map(([pV, hI, pA]) => pV || hI || pA));\n });\n const isCurrentPageViewOnly = useObservable(isCurrentPageViewOnly$.value);\n const isWorkflowManualOverrideVisible = computed(() => {\n return !pageStore.adminPreview && adminReview.value && isWorkflow.value && pageStore.canChangeStatus;\n });\n const isWorkflowManualOverrideEnabled = computed(() => {\n return isWorkflowManualOverrideVisible.value;\n });\n const isWorkflowReturnVisible = computed(() => {\n return !pageStore.adminPreview && pageStore.adminReview && pageStore.isWorkflow && pageStore.formId != null;\n });\n const isWorkflowReturnEnabled = computed(() => {\n return isWorkflowReturnVisible.value && (!pageStore.anonymousUser || (currentSegment.value != null && currentSegment.value.definition.settings.returnEmailAddressCalculationId != null && true)) /*TODO calc returns a value*/;\n });\n\n const isSubmittable$ = computed(() => {\n const pageGroups = toObserverComputed(() => isPendingAssignment.value);\n return combineLatest([pageStore.isSubmittable$, pageGroups]).pipe(\n map(([a, b]) => {\n //debugger;\n return a && !b;\n }),\n );\n });\n const isSubmittable = useObservable(isSubmittable$.value);\n const isDeletable = computed(() => {\n return !pageStore.adminPreview && !adminReview.value && pageStore.formId != null;\n });\n const isViewOnly = computed(() => {\n return pageStore.isViewOnly || isPendingAssignment.value;\n });\n\n const canRetreatForm = computed(() => {\n const pages = props.pageGroups.map(i => i.pages).flat();\n if (pages == null) {\n return true;\n }\n if (currentPage.value == pages[0]) {\n return false;\n }\n return true;\n });\n const canAdvanceForm = computed(() => {\n if (isCurrentPageViewOnly.value) {\n const pages = props.pageGroups.map(i => i.pages).flat();\n if (pages == null) {\n return true;\n }\n if (currentPage.value == pages[pages.length - 1]) {\n return false;\n }\n }\n return true;\n });\n\n const showPageNav = computedAsync(async () => {\n var currentPageI = currentPage.value;\n if (currentPageI == null) {\n return true;\n }\n //@ts-expect-error\n const result = !(pageStore.mustLogin && !(await mainStore.isLoggedInPromise) && currentPageI.children.every((i: { allowAnonymous: boolean }) => i.allowAnonymous));\n emit(\"show-page-nav\", result);\n return result;\n });\n\n const isCurrentPageControlsViewOnly$ = computed(() => {\n return currentPage$.value.pipe(switchMap(i => pageStore.isPageObjControlsViewOnly$(i!) || isPendingAssignment.value));\n });\n const isCurrentPageControlsViewOnly = useObservable(isCurrentPageControlsViewOnly$.value);\n\n const adminEditElementIds = computed(() => {\n return pageStore.adminEditElementIds;\n });\n const hasPendingAdminEdits = computed(() => {\n return adminEditElementIds.value.length > 0;\n });\n const segmentTitle = computed(() => {\n return isWorkflow.value ? currentSegmentLabel.value : title.value;\n });\n\n onMounted(() => {\n const resizeObserver = new ResizeObserver(entries => {\n for (let entry of entries) {\n if (entry.contentBoxSize) {\n const contentBoxSize = Array.isArray(entry.contentBoxSize) ? entry.contentBoxSize[0] : entry.contentBoxSize; // Firefox\n condensed.value = contentBoxSize.inlineSize < 737;\n buttonCondensed.value = contentBoxSize.inlineSize < 576;\n }\n }\n });\n resizeObserver.observe(Form.value.parentElement!);\n });\n\n const saveAllAdminEdits = () => {\n // Delay needed so blur runs to process textboxes value changes\n setTimeout(() => pageStore.saveAllAdminEdits(), 0);\n };\n const adjustPage = async (adjustment: number) => {\n const existingPage = page.value;\n let result = null;\n if (existingPage && !pageStore.formDataLoading) {\n if (pageStore.adminPreview || pageStore.isSaveDisabledOnSectionChange || pageStore.isClientValidationOnly) {\n await pageStore._setPageStatus({ page: existingPage, status: null });\n } else if (!pageStore.isViewOnly && !pageStore.isPageViewOnly(existingPage)) {\n result = alertIfSaveFailed(pageStore.saveFormPage({ page: existingPage })); // Run in the background\n }\n }\n page.value = page.value! + adjustment;\n await result;\n };\n const pageGroupStatus = (pages: PageDef[]) => {\n let status = \"dfPageLink_Disabled\";\n const getSegmentStatusByPage = (page: PageDef) => (pageStore.segments || []).find(segment => page.definition.settings.segment == segment.id)?.status;\n for (const page of pages) {\n const pageStatus = pageStatusFetcher()[page.vmId];\n if (!pageStatus) continue;\n if (pageStatus == \"Invalid\" || [\"InProgress\", \"Returned\"].includes(getSegmentStatusByPage(page) || \"\")) {\n status = pageStatusClass(\"Invalid\")!;\n break;\n }\n status = pageStatusClass(pageStatus)!;\n }\n return status;\n };\n const togglePage = (newPage: PageDef) => {\n if (!currentPage.value) return;\n const newPageGroup = getPageGroup(newPage)!;\n const currentPageGroup = getPageGroup(currentPage.value)!;\n if (mustToggle.value || newPageGroup.id != currentPageGroup?.id) {\n togglePageHeader.value[newPageGroup.id!] = !togglePageHeader.value[newPageGroup.id!];\n if (currentPageGroup != null && newPageGroup.id != currentPageGroup.id) {\n togglePageHeader.value[currentPageGroup.id!] = false;\n }\n }\n mustToggle.value = false;\n };\n const getPageGroup = (page: PageDef) => {\n return props.pageGroups.find(pageGroup => pageGroup.pages.some(p => p.id == page.id));\n };\n const gotoPage = async (newPage: PageDef, withError = false) => {\n if (Array.from(pageStore.pendingAddressVerifications).length > 0) {\n const addressVerificationsPromise = Promise.all(Array.from(pageStore.pendingAddressVerifications));\n loading(\"Address Verification\", addressVerificationsPromise);\n await addressVerificationsPromise;\n }\n let result = null;\n const existingPage = page.value;\n if (existingPage && !pageStore.formDataLoading) {\n // TODO - dup with adjust page\n if (pageStore.adminPreview || pageStore.isSaveDisabledOnSectionChange || pageStore.isClientValidationOnly) {\n await pageStore._setPageStatus({ page: existingPage, status: null });\n } else if (!pageStore.isViewOnly && !pageStore.isPageViewOnly(existingPage) && (!(await mainStore.isFeatureFlagActiveAsync(KnownFeatureFlags.SaveOnlyEditable.Id)) || pageStore.isPageEditable(existingPage))) {\n result = alertIfSaveFailed(pageStore.saveFormPage({ page: existingPage })); // Run in the background\n }\n }\n togglePage(newPage);\n const pagesI = pages.value;\n page.value = pagesI.indexOf(newPage) + 1;\n await result;\n focusFirstElement(withError);\n };\n const gotoSubPage = async (page: PageDef, _mustToggle = false) => {\n const existingPage = currentPage.value;\n if (existingPage != null && pages.value.indexOf(existingPage) < pages.value.indexOf(page)) {\n if (existingPage.permitLaterPages$ && !(await existingPage.permitLaterPages$().pipe(first()).toPromise()) && !isViewOnly.value && !pageStore.isPageObjViewOnly(existingPage, false)) {\n await adjustPage(0);\n if (existingPage.permitLaterPages$ && !(await existingPage.permitLaterPages$().pipe(first()).toPromise()) && !isViewOnly.value && !pageStore.isPageObjViewOnly(existingPage, false)) {\n alert(\"You cannot advance until you correct the issues\");\n return;\n }\n }\n }\n mustToggle.value = _mustToggle;\n gotoPage(page);\n };\n\n //@ts-expect-error\n eventBus.on(\"change-page\", async ({ page, withError, callback }: { page: PageDef; withError?: boolean; callback: () => void }) => {\n await gotoPage(page, withError);\n if (callback != null) {\n callback();\n }\n });\n\n const gotoIndex = inject(gotoIndexInjectKey)!;\n const forceLogin = inject(forceLoginInjectKey)!;\n const submit = inject(submitInjectKey)!;\n const pageStatusFetcher = inject(pageStatusFetcherInjectKey)!;\n const submitButtons$ = inject(submitButtons$InjectKey)!;\n const submitButtons = useObservable(submitButtons$.pipe(startWith([])));\n const deleteDraft = inject(deleteDraftInjectKey)!;\n\n provide(\"getElementComponent\", (type: BaseElementDefBase, viewOnly: boolean) => getElementComponent(type, viewOnly));\n provide(\"advanceForm\", (event: Event) => advanceForm(event));\n provide(\"retreatForm\", () => retreatForm());\n provide(\"gotoSubPage\", (page: PageDef) => gotoSubPage(page));\n\n const throwIfViewOnly = () => {\n if (isViewOnly.value) {\n throw new Error(\"Should not be called for view only pages\");\n }\n };\n\n const alertIfSaveFailed = async (resultPromise: Promise<null | FormJson | SaveAllAndSubmitResponse>) => {\n try {\n const result = await resultPromise;\n if (result == null) {\n throw new Error(\"Null result\");\n }\n return result;\n } catch (e) {\n await showModal(SaveFailureModal, {}, {});\n throw e;\n }\n };\n\n const saveAndExit = async () => {\n throwIfViewOnly();\n const saveFormPromise = pageStore.saveFormPage({ page: page.value, isSaveAndExit: true });\n mainStore.setLiveRegion(saveFormPromise.then(() => \"Details have been saved successfully\"));\n await alertIfSaveFailed(saveFormPromise);\n gotoIndex();\n };\n\n const pageStatusClass = (clientStatus: string) => {\n return clientStatus == null ? null : clientStatus == \"Complete\" ? \"dfPageLink_Complete\" : clientStatus == \"Invalid\" ? \"dfPageLink_Invalid\" : clientStatus == \"InProcess\" ? \"dfPageLink_InProcess\" : clientStatus == \"NotStarted\" ? \"dfPageLink_NotStarted\" : clientStatus == \"Saving\" ? \"dfPageLink_Saving\" : \"dfPageLink_Disabled\";\n };\n\n const advanceForm = async (event: Event) => {\n const pages = props.pageGroups.map(i => i.pages).flat();\n if (pages == null) {\n return;\n }\n if (currentPage.value == pages[pages.length - 1]) {\n return submit(null, event);\n } else {\n const existingPage = currentPage.value;\n if (existingPage?.permitLaterPages$ && !(await existingPage.permitLaterPages$().pipe(first()).toPromise())) {\n await adjustPage(0);\n if (existingPage.permitLaterPages$ && !(await existingPage.permitLaterPages$().pipe(first()).toPromise())) {\n alert(\"You cannot advance until you correct the issues\");\n return;\n }\n }\n let visiblePageIndex = pages.indexOf(currentPage.value!);\n let newVisiblePage = pages[++visiblePageIndex];\n while (!(enabledPages.value ?? []).includes(newVisiblePage) && newVisiblePage != null) {\n newVisiblePage = pages[++visiblePageIndex];\n }\n if (newVisiblePage == null) {\n await submit(null, event);\n } else {\n await gotoPage(newVisiblePage);\n }\n }\n };\n const retreatForm = async () => {\n const pages = props.pageGroups.map(i => i.pages).flat();\n if (pages == null) {\n return;\n }\n let visiblePageIndex = pages.indexOf(currentPage.value!);\n let newVisiblePage = pages[--visiblePageIndex];\n while (!(enabledPages.value ?? []).includes(newVisiblePage) && newVisiblePage != null) {\n newVisiblePage = pages[--visiblePageIndex];\n }\n if (newVisiblePage == null) {\n // Retreat not possible?\n } else {\n await gotoPage(newVisiblePage);\n }\n };\n\n const gotoAvailablePage = (page: number) => {\n return new Promise(resolve => {\n const doF = async (index: number, timeout: number) => {\n const enabledPagesI = enabledPages.value;\n const pagesI = pages.value;\n if (index == 0) {\n debugger;\n throw new Error(\"Index 0\");\n }\n if (enabledPagesI == null || pagesI == null || enabledPagesI.length == 0 || pagesI.length == 0) {\n setTimeout(() => doF(index - 1, Math.max(timeout - 100, 100)), timeout);\n //this.$nextTick(doF);\n return;\n }\n if (page == null || page <= 0 || page > pagesI.length) {\n page =\n Math.max(\n pagesI.findIndex(i => !pageStore.isPageObjViewOnly(i, false) && (enabledPages.value ?? []).includes(i)),\n 0,\n ) + 1;\n }\n let pageObj = pagesI[page - 1];\n while (!enabledPagesI.includes(pageObj) && page - 2 < pagesI.length) {\n page++;\n pageObj = pagesI[page - 1];\n }\n while (!enabledPagesI.includes(pageObj) && page > 1) {\n page--;\n pageObj = pagesI[page - 1];\n }\n if (adminReview.value) {\n const firstPageGroupPage = pagesI.find(page => page == props.pageGroups[0].pages[0]);\n pageObj = firstPageGroupPage == null || !enabledPagesI.includes(firstPageGroupPage) ? pageObj : firstPageGroupPage;\n }\n if ((enabledPages.value ?? []).includes(pageObj)) {\n await gotoSubPage(pageObj);\n resolve(null);\n } else if ((enabledPages.value ?? []).some(i => i.id == pageObj.id)) {\n nextTick(() => doF(index - 1, 100));\n } else {\n throw new Error(\"No possible pages\");\n }\n };\n doF(10, 1000);\n });\n };\n\n const pageStatus = (clientStatus: string) => {\n return clientStatus == \"Complete\" ? \"Page is completed.\" : clientStatus == \"Invalid\" ? \"Page has errors.\" : null;\n };\n\n const openNav = (event: Event) => {\n if (window.matchMedia(\"(max-width: 767px)\").matches) {\n pageNavCollapsed.value = !pageNavCollapsed.value;\n if (!pageNavCollapsed.value) {\n event.stopPropagation();\n event.preventDefault();\n }\n }\n };\n\n const truncateLongText = (text: string | null) => {\n if (text == null || text.length <= 40) {\n return text;\n } else {\n return text.slice(0, 40) + \"...\";\n }\n };\n\n const focusFirstElement = async (withError: boolean) => {\n const firstElement = withError ? await currentPage.value!.firstInvalidElement(false) : currentPage.value?.firstFocusableElement();\n eventBus.emit(\"focus\", firstElement?.vmId);\n };\n\n const initPageHeaderToggler = () => {\n if (Object.keys(togglePageHeader.value).length == 0) {\n togglePageHeader.value = props.pageGroups.reduce(\n (acc, pageGroup) => {\n acc[pageGroup.id!] = Object.keys(props.pageGroups).length > 1 ? pageGroup.pages.some(i => i == currentPage.value) : true;\n return acc;\n },\n {} as Record<string, boolean>,\n );\n }\n };\n\n /*await*/ gotoAvailablePage(props.pageI);\n\n watch(\n () => page.value,\n newPage => {\n emit(\"set-page\", newPage);\n },\n );\n\n watch(\n () => currentPage.value,\n async () => {\n if (adminPreview.value && currentPage.value?.definition.settings.segment) {\n pageStore.setSegment(currentPage.value.definition.settings.segment);\n }\n //@ts-expect-error\n if (pageStore.mustLogin && currentPage.value != null && !currentPage.value.children.every((i: BaseFormDefinitionItem) => (i as { allowAnonymous: boolean }).allowAnonymous as boolean) && !(await mainStore.isLoggedInPromise)) {\n forceLogin();\n }\n //TODO updateHistory();\n if (FormTitle.value) {\n FormTitle.value.scrollIntoView(false);\n }\n initPageHeaderToggler();\n updatePage({ title: segmentTitle.value }, true);\n },\n );\n\n watch(\n () => segment.value,\n async () => {\n if (adminPreview.value) {\n return;\n }\n await gotoAvailablePage(0);\n },\n );\n\n //TODOthis.$watch(\"segment\", async () => {\n //TODO});\n\n return {\n //refs\n Form,\n FormTitle,\n\n //state\n pageNavCollapsed,\n page,\n formData$,\n segment,\n condensed,\n buttonCondensed,\n togglePageHeader,\n\n //computed\n hasPendingAdminEdits,\n segmentTitle,\n isWorkflow,\n hasIssues,\n isPendingAssignment,\n currentSegmentLabel,\n title,\n adminReview,\n adminPreview,\n hasMultiplePages,\n currentPage,\n currentSegment,\n showPageNav,\n enabledPages,\n showChanges,\n isViewOnly,\n isCurrentPageViewOnly,\n isCurrentPageControlsViewOnly,\n isWorkflowManualOverrideEnabled,\n isWorkflowManualOverrideVisible,\n isWorkflowReturnVisible,\n isWorkflowReturnEnabled,\n isSubmittable,\n isDeletable,\n canAdvanceForm,\n canRetreatForm,\n submittablePages,\n\n //\"computed\"\n pageStatusClass,\n pageStatusFetcher,\n submitButtons,\n pageStatus,\n\n //actions\n advanceForm,\n retreatForm,\n saveAllAdminEdits,\n openNav,\n gotoSubPage,\n submit,\n deleteDraft,\n saveAndExit,\n gotoIndex,\n truncateLongText,\n pageGroupStatus,\n\n // Vue-tsc workarounds\n //eslint-disable-next-line @typescript-eslint/no-explicit-any\n pageGroupCast: (i: any[]) => i as PageGroup[],\n };\n },\n});\n</script>\n","<!-- eslint-disable vue/no-v-for-template-key --->\n<template>\n <div class=\"row\">\n <!-- style => class -->\n <template v-for=\"child in children\" :key=\"child.vmId\">\n <component :is=\"getElementComponent(child)\" :data=\"child\" :name=\"(child ?? {}).vmId\" :style=\"childStyle(child)\" :view-only=\"viewOnly\" />\n </template>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, computed, inject } from \"vue\";\nimport { usePageStore } from \"../pageState/store\";\ninterface Props {\n childrenIds: string[];\n viewOnly: boolean;\n forceNonLive: boolean;\n}\nexport default defineComponent({\n props: [\"childrenIds\", \"viewOnly\", \"forceNonLive\"],\n setup(props: Props) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const getElementComponent = inject(\"getElementComponent\") as (s: any) => any;\n const pageStore = usePageStore();\n\n const children = computed(() => {\n return props.childrenIds\n .map(id => {\n const element = pageStore.getElementByVmId(id);\n if (element) {\n element.forceNonLive = props.forceNonLive;\n }\n return element;\n })\n .filter(i => (showChanges.value ? true : i?.isBase !== true));\n });\n const showChanges = computed(() => {\n return pageStore.showChanges;\n });\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const childStyle = (child: any) => {\n if (!showChanges.value) {\n return {};\n }\n const baseChangeType = child.baseChangeType();\n if (baseChangeType == null) {\n return {};\n }\n if (baseChangeType == \"new\" || baseChangeType == \"deleted\") {\n const parentChangeType = \"\"; // TODO this.$parent != null && this.$parent.data != null && this.$parent.data.baseChangeType != null ? this.$parent.data.baseChangeType() : null;\n if (parentChangeType == baseChangeType) {\n return {};\n }\n }\n return {\n \"min-height\": \"5px\",\n \"border-style\": \"dashed\",\n \"border-width\": \"2px\",\n \"border-color\": baseChangeType == \"changed\" ? \"blue\" : baseChangeType == \"deleted\" ? \"red\" : baseChangeType == \"new\" ? \"green\" : \"black\",\n };\n };\n\n return {\n children,\n getElementComponent,\n childStyle,\n };\n },\n});\n</script>\n","import { render } from \"./ChildrenList.3.vue?vue&type=template&id=e0295586&ts=true\"\nimport script from \"./ChildrenList.3.vue?vue&type=script&lang=ts\"\nexport * from \"./ChildrenList.3.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<style lang=\"less\" scoped>\n.field-validation-error {\n .icon.icon-attention {\n color: inherit;\n }\n}\n</style>\n<template>\n <div v-if=\"forceNonLocal || data.definition.settings.showErrorsLocally\" v-show=\"!valid\">\n <span class=\"field-validation-error\" v-for=\"error in errors || []\"><i class=\"icon icon-attention align-middle mr-1\" title=\"Error\" aria-label=\"Error: \" role=\"img\" />{{ error }}<i class=\"sr-only\">,</i></span>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent } from \"vue\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { BaseControlDefBase } from \"../elements/BaseElementDef\";\ninterface Props {\n data: BaseControlDefBase; // TODO\n forceNonLocal: boolean;\n}\nexport default defineComponent({\n props: [\"data\", \"forceNonLocal\"],\n // @ts-ignore\n setup(props: Props) {\n const errors = useObservable(props.data.errors$());\n const valid = useObservable(props.data.valid$());\n\n return {\n errors,\n valid,\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./ErrorList.3.vue?vue&type=style&index=0&id=096cf26d&lang=less&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./ErrorList.3.vue?vue&type=style&index=0&id=096cf26d&lang=less&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./ErrorList.3.vue?vue&type=template&id=096cf26d&scoped=true&ts=true\"\nimport script from \"./ErrorList.3.vue?vue&type=script&lang=ts\"\nexport * from \"./ErrorList.3.vue?vue&type=script&lang=ts\"\n\nimport \"./ErrorList.3.vue?vue&type=style&index=0&id=096cf26d&lang=less&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-096cf26d\"]])\n\nexport default __exports__","<template>\n <div v-if=\"showChanges && changes != null && changes.length > 0\" class=\"row\" :style=\"pageMode ? { border: '2px dashed #aaaaaa' } : { 'border-top': '2px dashed #aaaaaa' }\" style=\"margin-top: 5px; display: flex; justify-content: center\">\n <!--\n - {{ JSON.stringify(changes) }} -- {{ changes.length }} - {{ showChanges && changes != null && changes.length > 0 }} - {{ showChanges }} - {{ changes != null }} - {{ changes.length > 0 }} -\n -->\n <button v-show=\"!show\" class=\"btn btn-link btn-sm col-12\" @click.prevent=\"show = true\">Show {{ pageMode ? \"Page \" : \"\" }} Changes</button>\n <div class=\"col-12\" style=\"padding: 0.75rem 1.25rem; margin-bottom: 0\" v-show=\"show\">\n <div style=\"display: flex; justify-content: space-between; align-items: flex-start\">\n <h3 class=\"h5\">{{ pageMode ? \"Page \" : \"\" }}Settings Changes</h3>\n <button style=\"padding-top: 0\" class=\"btn btn-link btn-sm\" @click.prevent=\"show = false\">Hide</button>\n </div>\n <ul class=\"list-group list-group-flush\">\n <li v-for=\"change in changes\" class=\"list-group-item\">\n <h4 class=\"h6\">{{ change.key }}</h4>\n <div><strong>Prior:</strong> {{ change.baseSetting }}</div>\n <div><strong>Now:</strong> {{ change.currentSetting }}</div>\n </li>\n </ul>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, computed } from \"vue\";\nimport { usePageStore } from \"../pageState/store\";\nimport type { BaseElementDefBase } from \"../elements/BaseElementDef\";\ninterface Props {\n data: BaseElementDefBase; // TODO\n pageMode: boolean; // TODO\n}\nexport default defineComponent({\n props: [\"data\", \"pageMode\"],\n setup(props: Props) {\n const show = ref(false);\n\n const pageStore = usePageStore();\n\n const showChanges = computed(() => {\n return pageStore.showChanges;\n });\n const changes = computed(() => {\n return props.data.baseChanges;\n });\n\n return {\n show,\n showChanges,\n changes,\n };\n },\n});\n</script>\n","import { render } from \"./AdminSettingsDifferences.3.vue?vue&type=template&id=08a6e37c&ts=true\"\nimport script from \"./AdminSettingsDifferences.3.vue?vue&type=script&lang=ts\"\nexport * from \"./AdminSettingsDifferences.3.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<style scoped lang=\"less\">\n@import \"/lib/Colors.less\";\n.attachment-group {\n .form-control {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n }\n}\n.attachment-bar {\n display: flex;\n align-items: center;\n background: #f5f5f5;\n padding: 2.5px;\n border: 1px solid #ced4da;\n border-top: none;\n border-radius: 0 0 0.25rem 0.25rem;\n &:before {\n position: absolute;\n font-size: 1.1em;\n padding: 7.5px 7.5px 5px 5px;\n pointer-events: none;\n }\n input {\n display: flex;\n padding-left: 30px;\n font-size: 0.85em;\n }\n}\n.visibility-input-wrapper {\n display: flex;\n align-items: center;\n position: relative;\n width: auto;\n height: auto;\n padding: 0;\n font-size: 0.9em;\n .icon {\n &:before {\n margin-right: 5px;\n }\n }\n .btn {\n display: flex;\n align-items: center;\n padding: 0 4px;\n }\n}\n.icon-sites:before {\n color: @primary-blue-v2;\n}\n.disabled-visibility {\n cursor: not-allowed !important;\n .visibility-input {\n pointer-events: none;\n }\n}\n.dropdown-menu {\n right: 0;\n left: auto;\n white-space: nowrap;\n padding: 10px 15px;\n font-size: 0.875rem;\n .icon {\n display: inline-flex;\n align-items: center;\n }\n}\n.comment-username {\n display: block;\n line-height: 100%;\n margin-bottom: 5px;\n}\n.comment-list {\n padding: 0;\n margin: 0 0 5px 0;\n list-style: none;\n}\n.comment-list-heading {\n display: block;\n margin-top: 0;\n margin-bottom: 20px;\n}\n.comment-card {\n margin-top: 5px;\n display: block;\n padding: 7.5px;\n float: left;\n width: 100%;\n}\n.comment-btn {\n margin-top: 7.5px;\n}\n.comment-icon-btn {\n display: inline-block;\n margin-top: 5px;\n padding: 0;\n text-decoration: none !important;\n line-height: 0;\n font-size: 1.1em;\n}\n.submissions-comment {\n padding: 10px;\n border-bottom: 1px solid #cccccc;\n .comment-text {\n margin: 0;\n }\n .help-block {\n white-space: nowrap;\n display: block;\n }\n &:first-of-type {\n margin-top: 0;\n }\n}\n.btn-outline-secondary {\n &:not(:focus, :hover) {\n background-color: #ffffff;\n }\n}\n.btn-bare {\n font-weight: bold;\n font-size: 16px;\n}\n/deep/ .help-button {\n margin-right: 5px;\n cursor: not-allowed;\n}\n/deep/ .disabled-help-overlay {\n // overlay help icon on disabled inputs for better reliability on click\n .help-button .icon {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 30px;\n background: none;\n outline: none !important;\n &:before {\n display: none;\n }\n }\n .popper {\n min-width: 200px;\n }\n}\n.field-validation-error {\n .icon.icon-attention {\n color: inherit;\n }\n}\n</style>\n<template>\n <div v-if=\"showComponent\" :class=\"hasComments || hasHistory ? ['card', 'card-body', 'comment-card'] : []\">\n <!-- TODO move? -->\n <template v-if=\"data.history.length > 0 && !hideHistory\">\n <div @click=\"toggleHistoryVisibility\">\n <button @click.prevent.stop=\"toggleHistoryVisibility\" class=\"btn btn-bare p-0\" :aria-expanded=\"historyVisibility\" :aria-controls=\"id + '-history-list'\" :id=\"id + 'history-header'\">\n History\n <span class=\"icon\" :class=\"[historyVisibility ? 'icon-caret-up' : 'icon-caret-down']\"></span>\n </button>\n </div>\n <ul class=\"comment-list\" v-show=\"historyVisibility\" role=\"region\" :id=\"id + '-history-list'\" :aria-labelledby=\"id + 'history-header'\">\n <li class=\"submissions-comment p-relative\" v-for=\"comment in data.history\">\n <strong class=\"fw-600 comment-username\">{{ comment.userName || \"Anonymous\" }}</strong>\n <span class=\"help-block p-0\">{{ new Date(comment.date).toLocaleString() }}</span>\n <div class=\"comment-text\">{{ comment.text }}</div>\n </li>\n </ul>\n </template>\n <template v-if=\"data.comments.length > 0\">\n <div @click=\"toggleCommentsVisibility\" v-if=\"!hideHistory\">\n <button @click.prevent.stop=\"toggleCommentsVisibility\" class=\"btn btn-bare p-0\" :aria-expanded=\"commentsVisibility\" :aria-controls=\"id + '-comment-list'\" :id=\"id + 'comment-header'\">\n Comments\n <span class=\"icon\" :class=\"[commentsVisibility ? 'icon-caret-up' : 'icon-caret-down']\"></span>\n </button>\n </div>\n <ul class=\"comment-list\" v-show=\"commentsVisibility || hideHistory\" role=\"region\" :id=\"id + '-comment-list'\" :aria-labelledby=\"id + 'comment-header'\">\n <Comment :id=\"id\" :comment=\"comment\" :hide-history=\"hideHistory\" @set-comment-visibility=\"toggleCommentVisibility(comment, $event as boolean)\" @delete-comment=\"deleteComment(comment)\" :key=\"comment.id != '00000000-0000-0000-0000-000000000000' ? comment.id : generateGuid()\" v-for=\"comment in data.comments\" />\n </ul>\n </template>\n <template v-if=\"showAddComments || showChangeStatus\">\n <div :class=\"(hideHistory || commentsVisibility || !hasComments) && !showReply ? 'd-inline' : 'd-none'\" @click.prevent=\"showComments\">\n <!-- <button :id=\"id + '_ShowAddCommentBtn'\" type=\"button\" class=\"btn btn-outline-secondary comment-btn btn-sm mb-3 mt-1\" v-if=\"showAdminFormLevelControls\">\n {{ showAdminFormLevelControls && showChangeStatus ? \"Update\" : \"Add Comment\" }}\n </button> -->\n <button :id=\"id + '_ShowAddCommentBtn'\" type=\"button\" class=\"btn btn-outline-secondary comment-btn btn-sm mt-1\" v-if=\"!showAdminFormLevelControls && hasComments\">Reply</button>\n <button :id=\"id + '_ShowAddCommentBtn'\" type=\"button\" class=\"passthrough icon icon-comment comment-icon-btn\" v-else-if=\"!showAdminFormLevelControls && !hasComments\">\n <span class=\"sr-only\">Add Comment</span>\n </button>\n </div>\n <div class=\"mt-1\" :class=\"!adminReview ? null : newVisibleToSubmitter ? 'submitter-visible-comment' : 'reviewer-visible-comment'\" v-show=\"(hideHistory || commentsVisibility || !hasComments) && (showAdminFormLevelControls || showReply)\">\n <div class=\"attachment-group mb-1\" v-if=\"showAddComments\">\n <label :for=\"id + '_ReplyText'\" class=\"sr-only\">Comment</label>\n <textarea class=\"form-control\" :id=\"id + '_ReplyText'\" ref=\"replyText\" v-model=\"newText\" placeholder=\"Add a comment...\"></textarea>\n <div class=\"attachment-bar icon icon-attach\">\n <label :for=\"id + '_File'\" class=\"sr-only\">Attach Files</label>\n <input type=\"file\" :id=\"id + '_File'\" ref=\"file\" multiple />\n <div v-if=\"adminReview\" class=\"d-inline-flex ml-auto\">\n <div class=\"visibility-input-wrapper dropdown\" :class=\"hideHistory ? 'disabled-visibility' : ''\" v-if=\"adminReview\">\n <button type=\"button\" class=\"btn btn-outline-secondary btn-sm dropdown-toggle\" :class=\"{ show: newVisibleToSubmitterVisibilityEditing }\" @click.prevent.stop=\"newVisibleToSubmitterVisibilityEditing = !newVisibleToSubmitterVisibilityEditing\" :disabled=\"hideHistory\"><span class=\"icon\" :class=\"newVisibleToSubmitter && !hideHistory ? 'icon-sites' : 'icon-users'\"></span>{{ (hideHistory ? isReturned : newVisibleToSubmitter) ? \"Everyone\" : \"Reviewers only\" }}</button>\n <fieldset class=\"dropdown-menu\" @click.stop>\n <legend class=\"sr-only\">Comment Visibility</legend>\n <div class=\"form-check\">\n <input type=\"radio\" class=\"form-check-input\" :name=\"'CommentVisibility_' + id\" v-model=\"newVisibleToSubmitter\" :value=\"true\" :id=\"id + '_Everyone'\" @change=\"newVisibleToSubmitterVisibilityEditing = false\" />\n <label class=\"form-check-label\" :for=\"id + '_Everyone'\"><span class=\"icon icon-sites\"></span>Everyone</label>\n </div>\n <div class=\"form-check\">\n <input type=\"radio\" class=\"form-check-input\" :name=\"'CommentVisibility_' + id\" v-model=\"newVisibleToSubmitter\" :value=\"false\" :id=\"id + '_Reviewers'\" @change=\"newVisibleToSubmitterVisibilityEditing = false\" />\n <label class=\"form-check-label\" :for=\"id + '_Reviewers'\"><span class=\"icon icon-users\"></span>Reviewers only</label>\n </div>\n </fieldset>\n <HelpIcon v-if=\"hideHistory\" class=\"disabled-help-overlay\" :text=\"(isReturned ? 'Comments added for returns will only be included in the notification to the Submitter.' : 'Comments in this tab are only visible to Reviewers.') + ' Add comments to specific fields to inform the Submitter.'\" :hover=\"false\" />\n </div>\n </div>\n </div>\n <div v-if=\"anyThreat\">\n <span class=\"field-validation-error\"><i class=\"icon icon-attention align-middle mr-1\" title=\"Error\" role=\"img\" />Potential virus or malware detected.</span>\n </div>\n </div>\n <!--<div class=\"form-group\" v-if=\"showChangeStatus\">\n <label :for=\"id + '_Status'\">Change status to</label>\n <select name=\"status\" :id=\"id + '_Status'\" class=\"form-control\" v-model=\"newStatus\">\n <option :value=\"null\">No Change ({{ currentStatusLabel }})</option>\n <option :value=\"status.value\" :disabled=\"isStatusDisabled(status)\" :title=\"getStatusDisabledReason(status)\" v-for=\"status in possibleStatusesExcludingIgnored\">{{ status.text || status.value }}{{ isStatusDisabled(status) ? \" (Unavailable)\" : \"\" }}</option>\n </select>\n </div>-->\n <button :id=\"id + '_SendReplyBtn'\" type=\"button\" class=\"btn btn-primary btn-sm\" @click.prevent=\"sendReply\">Add</button>\n <button type=\"button\" class=\"btn btn-link btn-sm\" style=\"color: inherit\" @click.prevent=\"cancel\">Cancel</button>\n <LoadingWheel v-if=\"commentStatus == 'sending'\" :width=\"16\" style=\"display: inline-block\" />\n </div>\n <div aria-live=\"polite\" class=\"sr-only\">\n <template v-if=\"commentStatus && commentStatus != 'sending'\">\n <span v-if=\"anyThreat\">Error: Potential virus or malware detected.</span>\n <span v-else>File uploaded successfully</span>\n </template>\n </div>\n </template>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, inject, computed, ref, watch, /*onActivated, onMounted,*/ nextTick, SetupContext } from \"vue\";\nimport { usePageStore } from \"../pageState/store\";\n//import { useObservable } from \"@vueuse/rxjs\";\n//import { computedAsync } from \"@vueuse/core\";\n//import { map } from \"rxjs/operators\";\n//import { Status as FormDefStatus } from \"@cs-ts/status\";\nimport LoadingWheel from \"@/lib/LoadingWheel.3.vue\";\nimport CommentComponent from \"./Comment.3.vue\";\nimport { Comment } from \"@cs-ts/comment\";\nimport HelpIcon from \"@/lib/HelpIcon.3.vue\";\nimport generateGuid from \"../.././../lib/generateGuid\";\nimport { BaseElementDefBase } from \"../elements/BaseElementDef\";\nimport { gotoIndexInjectKey } from \"../Page.3.vue.InjectKeys\";\nimport { throwIfNonSuccessStatus } from \"@/lib/fetchHelpers.3\";\nimport { getXsftHeader } from \"@/lib/getXsrfToken.3\";\nimport { useMainStore } from \"@/mainStore\";\nimport { FormComment } from \"@/cs-ts-bridge/ts/form-comment\";\ninterface EditingComment extends Comment {\n visibleToSubmitterEditing: boolean;\n}\ninterface Props {\n data: BaseElementDefBase & { isThreat: boolean };\n // {\n // isThreat: boolean,\n // history: HistoryBase[];\n // comments: EditingComment[];\n //};\n showAdminFormLevelControls: boolean;\n hideHistory: boolean;\n}\nexport default defineComponent({\n props: [\"data\", \"showAdminFormLevelControls\", \"hideHistory\"],\n components: {\n Comment: CommentComponent,\n LoadingWheel,\n HelpIcon,\n },\n setup(props: Props, { emit }: SetupContext) {\n const pageStore = usePageStore();\n const mainStore = useMainStore();\n const id = ref(generateGuid());\n const showReply = ref(false);\n const newVisibleToSubmitter = ref(!pageStore.adminReview);\n const newVisibleToSubmitterVisibilityEditing = ref(false);\n const newText = ref(undefined as undefined | string);\n const newStatus = ref(null as null | string);\n const commentStatus = ref(null as null | \"sending\" | \"ok\" | \"failed\");\n const historyVisibility = ref(false);\n const commentsVisibility = ref(false);\n const anyThreat = ref(false);\n const fileRef = ref(null! as HTMLInputElement);\n const replyTextRef = ref(null! as HTMLInputElement);\n\n const gotoIndex = inject(gotoIndexInjectKey)!;\n\n watch(\n () => props.data,\n //eslint-disable-next-line @typescript-eslint/no-explicit-any\n (newData: any, _oldData: any) => {\n for (let comment of (newData.comments || []) as EditingComment[]) {\n if (comment.visibleToSubmitterEditing == null) {\n comment.visibleToSubmitterEditing = comment.visibleToSubmitterEditing || false;\n }\n }\n },\n );\n\n const adminReview = computed(() => pageStore.adminReview);\n //const possibleStatusesExcludingIgnored = computed(() => {\n // return pageStore.possibleStatuses.filter(i => !ignoredStatuses.some(j => j == i.value));\n //});\n const showComponent = computed(() => {\n return hasComments.value || pageStore.canAddComments || pageStore.canChangeStatus || hasHistory.value;\n });\n const showAddComments = computed(() => {\n return (hasComments.value && pageStore.canReplyToComments) || pageStore.canAddComments || pageStore.canChangeStatus;\n });\n const showChangeStatus = computed(() => {\n return pageStore.canChangeStatus && props.showAdminFormLevelControls && !pageStore.isWorkflow;\n });\n const hasComments = computed(() => {\n return props.data.comments != null && props.data.comments.length > 0;\n });\n const hasHistory = computed(() => {\n return props.hideHistory ? false : props.data.history != null && props.data.history.length > 0;\n });\n const isReturned = computed(() => {\n return newStatus.value == \"Returned\";\n });\n const formDataTyped = computed(() => pageStore.formDataTyped!);\n const toggleCommentsVisibility = () => {\n commentsVisibility.value = !commentsVisibility.value;\n };\n const toggleHistoryVisibility = () => {\n historyVisibility.value = !historyVisibility.value;\n };\n //const isStatusDisabled = (status: FormDefStatus) => {\n // if (status.value == returnedStatus && pageStore.anonymousUser) {\n // return true;\n // }\n // return false;\n //};\n //const getStatusDisabledReason = (status: FormDefStatus) => {\n // if (status.value == returnedStatus && pageStore.anonymousUser) {\n // return \"Cannot return submission.value because the submitter wasn't logged in\";\n // }\n // return null;\n //};\n const showComments = () => {\n showReply.value = true;\n nextTick(() => {\n replyTextRef.value.focus();\n });\n };\n const toggleCommentVisibility = async (comment: EditingComment, val: boolean) => {\n comment.visibleToSubmitterEditing = false;\n const newVisibleToSubmitter = val;\n const elementId = pageStore.getElementPathString(props.data);\n await pageStore.setCommentVisibility({ visibleToSubmitter: newVisibleToSubmitter, elementId, commentId: comment.id, elementData: props.data });\n };\n const cancel = () => {\n if (props.showAdminFormLevelControls) {\n newText.value = undefined;\n fileRef.value.value = null!;\n } else {\n showReply.value = false;\n }\n };\n const sendReply = async () => {\n commentStatus.value = \"sending\";\n const elementId = pageStore.getElementPathString(props.data);\n try {\n const htmlFiles = Array.from(fileRef.value.files as unknown as File[]);\n const filesPromises = htmlFiles.map(async i => (await pageStore.uploadExternalFile({ vmId: props.data.vmId, newFile: i, isComment: true }))!);\n const fileObjects = await Promise.all(filesPromises);\n const fileIds = fileObjects.map(i => i.valueId);\n anyThreat.value = fileObjects.some(i => i.isThreat);\n if (anyThreat.value) {\n throw new Error(\"Potential virus or malware detected.\");\n }\n const fileNames = htmlFiles.map(i => i.name);\n const fileContentTypes = htmlFiles.map(i => i.type);\n const visibleToSubmitter = props.hideHistory ? (isReturned.value ? true : false) : adminReview.value ? newVisibleToSubmitter.value : true;\n const response = await pageStore.addCommentAndChangeStatus({ text: newText.value!, visibleToSubmitter, elementId, elementData: props.data, status: newStatus.value!, fileIds, fileNames, fileContentTypes, userName: \"Myself\" });\n if (response && !response.accessible) {\n alert(\"As a result of your change, this submission is no longer accessible.\");\n if (gotoIndex != null) {\n gotoIndex();\n } else {\n emit(\"change-page\", { page: \"AdminSearch\" });\n }\n return;\n }\n //@ts-expect-error\n fileRef.value.value = null; // clear attachments\n showReply.value = false;\n newText.value = undefined;\n newStatus.value = null;\n commentStatus.value = \"ok\";\n } catch (e) {\n commentStatus.value = \"failed\";\n alert(\"Saving comment failed\");\n throw e;\n }\n };\n const deleteComment = async (comment: FormComment) => {\n if (!confirm(\"Delete comment?\")) {\n return;\n }\n const elementId = pageStore.getElementPathString(props.data);\n const _formData = {\n elementId,\n pageNumber: 1,\n formId: formDataTyped.value.formId,\n commentId: comment.id,\n };\n const formData = new FormData();\n for (const key of Object.keys(_formData)) {\n //@ts-ignore\n formData.append(key, _formData[key]);\n }\n const deleteCommentUrl = await mainStore.getUrl(\"deleteComment\", { tenantCode: pageStore.formTenantCode, formId: pageStore.formId });\n const deleteResponse = await fetch(deleteCommentUrl, {\n method: \"POST\",\n headers: await getXsftHeader(mainStore),\n credentials: \"same-origin\",\n body: formData,\n });\n throwIfNonSuccessStatus(deleteResponse);\n //eslint-disable-next-line vue/no-mutating-props\n props.data.comments.splice(\n props.data.comments.findIndex(c => comment.id == c.id),\n 1,\n );\n };\n\n return {\n replyText: replyTextRef,\n file: fileRef,\n showComponent,\n hasComments,\n hasHistory,\n toggleHistoryVisibility,\n id,\n historyVisibility,\n toggleCommentsVisibility,\n toggleCommentVisibility,\n commentsVisibility,\n showAddComments,\n showChangeStatus,\n generateGuid,\n showReply,\n showComments,\n adminReview,\n newVisibleToSubmitterVisibilityEditing,\n newVisibleToSubmitter,\n newText,\n isReturned,\n commentStatus,\n sendReply,\n anyThreat,\n cancel,\n deleteComment,\n };\n },\n});\n</script>\n","<style scoped lang=\"less\">\n@import \"/lib/Colors.less\";\n.icon-download:before {\n text-decoration: none;\n margin-right: 5px;\n}\n.files-list {\n list-style-type: none;\n padding-left: 5px;\n}\n.visibility-input-wrapper {\n display: flex;\n align-items: center;\n position: relative;\n width: auto;\n height: auto;\n padding: 0;\n font-size: 0.9em;\n .icon {\n &:before {\n margin-right: 5px;\n }\n }\n .btn {\n display: flex;\n align-items: center;\n padding: 0 4px;\n }\n}\n.icon-sites:before {\n color: @primary-blue-v2;\n}\n.disabled-visibility {\n cursor: not-allowed !important;\n .visibility-input {\n pointer-events: none;\n }\n}\n.dropdown-menu {\n right: 0;\n left: auto;\n white-space: nowrap;\n padding: 10px 15px;\n font-size: 0.875rem;\n .icon {\n display: inline-flex;\n align-items: center;\n }\n}\n.comment-username {\n display: block;\n line-height: 100%;\n margin-bottom: 5px;\n}\n/deep/ .help-button {\n margin-right: 5px;\n cursor: not-allowed;\n}\n/deep/ .disabled-help-overlay {\n // overlay help icon on disabled inputs for better reliability on click\n .help-button .icon {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 30px;\n background: none;\n outline: none !important;\n &:before {\n display: none;\n }\n }\n .popper {\n min-width: 200px;\n }\n}\n</style>\n<template>\n <li class=\"submissions-comment p-relative\" :class=\"!adminReview ? null : comment.visibleToSubmitter ? 'submitter-visible-comment' : 'reviewer-visible-comment'\">\n <div v-if=\"adminReview\" class=\"d-inline-flex ml-auto p-relative float-right\">\n <div class=\"visibility-input-wrapper dropdown\" :class=\"hideHistory ? 'disabled-visibility' : ''\" v-if=\"adminReview && comment.id != '00000000-0000-0000-0000-000000000000'\">\n <button v-if=\"!hideHistory\" type=\"button\" :id=\"id + '_VisibleToggle_' + comment.id\" class=\"existing-visibility btn btn-outline-secondary btn-sm dropdown-toggle icon\" :class=\"{ show: visibleToSubmitterEditing }\" @click.prevent.stop=\"toggleVisibleToSubmitterEditing(comment)\" :disabled=\"hideHistory\"><span class=\"icon\" :class=\"comment.visibleToSubmitter && !hideHistory ? 'icon-sites' : 'icon-users'\"></span>{{ comment.visibleToSubmitter ? \"Everyone\" : \"Reviewers only\" }}</button>\n <span v-else class=\"existing-visibility icon icon-users btn btn-bare btn-sm p-0\">Reviewers only</span>\n <fieldset class=\"dropdown-menu\" @click.stop>\n <legend class=\"sr-only\">Comment Visibility</legend>\n <div class=\"form-check\">\n <input type=\"radio\" class=\"form-check-input\" :id=\"id + '_Everyone_' + comment.id\" :name=\"'CommentVisibility_' + comment.id\" @change=\"toggleCommentVisibility(comment, true)\" :checked=\"comment.visibleToSubmitter\" />\n <label class=\"form-check-label icon\" :for=\"id + '_Everyone_' + comment.id\"><span class=\"icon icon-sites\"></span>Everyone</label>\n </div>\n <div class=\"form-check\">\n <input type=\"radio\" class=\"form-check-input\" :id=\"id + '_Reviewers_' + comment.id\" :name=\"'CommentVisibility_' + comment.id\" @change=\"toggleCommentVisibility(comment, false)\" :checked=\"!comment.visibleToSubmitter\" />\n <label class=\"form-check-label\" :for=\"id + '_Reviewers_' + comment.id\"><span class=\"icon icon-users\"></span>Reviewers only</label>\n </div>\n </fieldset>\n <HelpIcon v-if=\"hideHistory\" class=\"disabled-help-overlay\" :text=\"'Comments in this tab are only visible to Reviewers. Comments added for returns will only be included in the notification to the Submitter. Add comments to specific fields to inform the Submitter.'\" :hover=\"false\" />\n </div>\n </div>\n <strong class=\"fw-600 comment-username\">{{ comment.userName || \"Anonymous\" }}</strong>\n <span class=\"help-block p-0\">{{ new Date(comment.date).toLocaleString() }}</span>\n <div class=\"d-flex justify-content-between align-items-end\">\n <div>\n <div class=\"comment-text\">{{ comment.text }}</div>\n <template v-if=\"comment.files != null && comment.files.length > 0\">\n <strong class=\"sr-only\">Attached Files:</strong>\n <ul class=\"files-list\">\n <li v-for=\"file in comment.files\">\n <a class=\"icon icon-download\" target=\"_blank\" :href=\"file.fileUrl\">{{ file.filename }}</a>\n </li>\n </ul>\n </template>\n </div>\n <button v-if=\"canDeleteComments\" class=\"passthrough icon icon-trash\" title=\"Delete\" aria-label=\"Delete\" @click.prevent=\"$emit('delete-comment')\" />\n </div>\n </li>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, computed, SetupContext } from \"vue\";\nimport HelpIcon from \"@/lib/HelpIcon.3.vue\";\nimport { useMainStore } from \"@/mainStore\";\nimport { usePageStore } from \"../pageState/store\";\nimport { Comment } from \"@cs-ts/comment\";\nimport { asyncComputed } from \"@vueuse/core\";\nimport { KnownFeatureFlags } from \"@cs/KnownFeatureFlags\";\ninterface EditingComment extends Comment {\n visibleToSubmitterEditing: boolean;\n}\ninterface Props {\n id: string;\n hideHistory: boolean;\n comment: EditingComment;\n}\nexport default defineComponent({\n props: [\"id\", \"comment\", \"hideHistory\"],\n emits: [\"delete-comment\"],\n components: {\n HelpIcon,\n },\n setup(_props: Props, { emit }: SetupContext) {\n const mainStore = useMainStore();\n const pageStore = usePageStore();\n\n const visibleToSubmitterEditing = ref(false);\n\n const allowDeleteComments = asyncComputed(() => mainStore.isFeatureFlagActiveAsync(KnownFeatureFlags.DeleteCommentsAttachments.Id));\n const adminReview = computed(() => pageStore.adminReview);\n const canDeleteComments = computed(() => adminReview.value && allowDeleteComments.value && pageStore.canDeleteReviewComments);\n\n const toggleVisibleToSubmitterEditing = (_comment: EditingComment) => {\n visibleToSubmitterEditing.value = !visibleToSubmitterEditing.value;\n };\n const toggleCommentVisibility = async (_comment: EditingComment, val: boolean) => {\n visibleToSubmitterEditing.value = false;\n emit(\"set-comment-visibility\", val);\n };\n\n return {\n toggleVisibleToSubmitterEditing,\n toggleCommentVisibility,\n visibleToSubmitterEditing,\n adminReview,\n canDeleteComments,\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./Comment.3.vue?vue&type=style&index=0&id=eab941ce&scoped=true&lang=less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./Comment.3.vue?vue&type=style&index=0&id=eab941ce&scoped=true&lang=less\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./Comment.3.vue?vue&type=template&id=eab941ce&scoped=true&ts=true\"\nimport script from \"./Comment.3.vue?vue&type=script&lang=ts\"\nexport * from \"./Comment.3.vue?vue&type=script&lang=ts\"\n\nimport \"./Comment.3.vue?vue&type=style&index=0&id=eab941ce&scoped=true&lang=less\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-eab941ce\"]])\n\nexport default __exports__","import { Observable } from \"rxjs\";\nimport { InjectionKey } from \"vue\";\n\nexport type gotoIndex = () => void;\nexport const gotoIndexInjectKey = Symbol() as InjectionKey<gotoIndex>;\nexport type forceLogin = () => Promise<void>;\nexport const forceLoginInjectKey = Symbol() as InjectionKey<forceLogin>;\nexport type submit = (triggerKey: string | null, event: Event) => Promise<void>;\nexport const submitInjectKey = Symbol() as InjectionKey<submit>;\nexport type deleteDraft = (asAdmin: boolean, event: Event) => Promise<void>;\nexport const deleteDraftInjectKey = Symbol() as InjectionKey<deleteDraft>;\nexport type pageStatusFetcher = () => Record<string, string>;\nexport const pageStatusFetcherInjectKey = Symbol() as InjectionKey<pageStatusFetcher>;\nexport type resendEmail = (segment: string, commentRequired: boolean, eventType: string, type: string) => Promise<void>;\nexport const resendEmailInjectKey = Symbol() as InjectionKey<resendEmail>;\nexport type loading = (title: string, loadingPromise: Promise<void[]>) => void;\nexport const loadingInjectKey = Symbol() as InjectionKey<loading>;\nexport type submitButtons$ = Observable<{ text: string | null; trigger: string | null; order?: number }[]>;\nexport const submitButtons$InjectKey = Symbol() as InjectionKey<submitButtons$>;\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./Comments.3.vue?vue&type=style&index=0&id=3f73c283&scoped=true&lang=less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./Comments.3.vue?vue&type=style&index=0&id=3f73c283&scoped=true&lang=less\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./Comments.3.vue?vue&type=template&id=3f73c283&scoped=true&ts=true\"\nimport script from \"./Comments.3.vue?vue&type=script&lang=ts\"\nexport * from \"./Comments.3.vue?vue&type=script&lang=ts\"\n\nimport \"./Comments.3.vue?vue&type=style&index=0&id=3f73c283&scoped=true&lang=less\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-3f73c283\"]])\n\nexport default __exports__","/* eslint-disable @typescript-eslint/no-explicit-any*/ // TODO\nimport { ref, inject, computed } from \"vue\";\nimport { usePageStore } from \"../pageState/store\";\nimport ChildrenList from \"./ChildrenList.3.vue\";\nimport ErrorList from \"./ErrorList.3.vue\";\nimport HelpIcon from \"@/lib/HelpIcon.3.vue\";\nimport AdminSettingsDifferences from \"./AdminSettingsDifferences.3.vue\";\nimport Comments from \"./Comments.3.vue\";\nimport { BaseElementDef } from \"../elements/BaseElementDef\";\nimport { FormDefinitionItem } from \"../elements/__DefinitionDataInterface\";\nimport { IElementSettings } from \"@cs-ts/i-element-settings\";\nimport type mitt from \"mitt\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { isNullOrWhitespace } from \"@/lib/whitespaceMethods\";\nimport { FormItem } from \"@/cs-ts-bridge/ts/form-item\";\n//import Comments from \"./Comments.3.vue\";\nexport const props = [\"data\", \"viewOnly\"];\nexport const components = {\n ChildrenList,\n AdminSettingsDifferences,\n ErrorList,\n HelpIcon,\n Comments,\n};\n\nexport interface Props<T extends BaseElementDef<T2, FormDefinitionItem<T2>, FormItem>, T2 extends IElementSettings> {\n data: T; // TODO\n viewOnly: boolean;\n}\nexport function setup<T extends BaseElementDef<T2, FormDefinitionItem<T2>, FormItem>, T2 extends IElementSettings>(props: Props<T, T2>) {\n const elementFilter = inject(\"elementFilter\", (el: any) => true);\n const pageStore = usePageStore();\n const oldValue = ref<any>(null);\n\n const customErrorIds = useObservable(props.data.customErrorIds$());\n\n const showAdminEditControls = computed(() => {\n return pageStore.canAdminEditData;\n });\n const isAdminEditing = computed({\n get() {\n return pageStore.isAdminEditingById(vmId.value);\n },\n set(newValue) {\n pageStore.setAdminEditing({ vmId: vmId.value, enabled: newValue });\n },\n });\n const isViewOnly = computed(() => {\n return props.viewOnly && !isAdminEditing.value;\n });\n const definition = computed(() => {\n return props.data.definition;\n });\n const settings = computed<T2>(() => {\n return props.data.definition.settings as T2;\n });\n const colClass = computed(() => {\n return \"col-md-\" + (settings.value.columns || 12);\n });\n const vmId = computed(() => {\n return props.data.vmId || props.data.id!;\n });\n const children = computed(() => {\n return pageStore.getChildrenByVmId(vmId.value)!.filter(elementFilter);\n });\n const value = computed({\n get() {\n const r = pageStore.getValueByVmId(vmId.value);\n //console.log(\"Get value: \"+JSON.stringify({ id: this.vmId, value: r }));\n return r;\n },\n set(newValue) {\n //console.log(\"Set value: \"+JSON.stringify({ id: vmId.value, value: newValue }));\n pageStore.setValueByVmId({ id: vmId.value, value: newValue! });\n },\n });\n const errorId = computed(() => {\n return vmId.value + \"_Errors\";\n });\n const errorIds = computed(() => {\n return `${errorId.value} ${customErrorIds.value}`.trimEnd();\n });\n const hasCustomErrors = computed(() => {\n return !isNullOrWhitespace(customErrorIds.value);\n });\n const customErrorClass = computed(() => {\n return hasCustomErrors.value ? \"has-custom-errors\" : null;\n });\n\n //async saveAdminEdit() {\n // await this.$store.dispatch('page/invokeForm', { type: 'AdminEdit', target: /* TODO not unique - ForEach */ this.data.id, data: [this.value] });\n // this.isAdminEditing = false;\n //},\n const toggleAdminEdit = () => {\n if (isAdminEditing.value) {\n cancelAdminEdit();\n } else {\n startAdminEdit();\n }\n };\n const startAdminEdit = () => {\n oldValue.value = value.value;\n isAdminEditing.value = true;\n };\n const cancelAdminEdit = () => {\n value.value = oldValue.value;\n isAdminEditing.value = false;\n };\n const childStyle = (child: any) => {\n const hasBaseChanges = child.baseChanges != null && child.baseChanges.length > 0;\n const hasNoBaseLink = false; //TODO (this.$parent?.data || this.$parent?.$parent?.data)?.baseLink != null && child.baseLink == null;\n return hasNoBaseLink || hasBaseChanges\n ? {\n \"min-height\": \"5px\",\n \"border-style\": \"dashed\",\n \"border-width\": \"2px\",\n \"border-color\": hasBaseChanges ? \"blue\" : hasNoBaseLink ? \"red\" : \"green\",\n }\n : {};\n };\n\n const a = {\n elementFilter,\n showAdminEditControls,\n isAdminEditing,\n isViewOnly,\n definition,\n settings,\n colClass,\n vmId,\n children,\n value,\n errorId,\n hasCustomErrors,\n customErrorClass,\n errorIds,\n\n //oldValue,\n\n toggleAdminEdit,\n startAdminEdit,\n cancelAdminEdit,\n childStyle,\n };\n const b = {\n ...a,\n focus: null as (() => void) | null | undefined,\n pageStore,\n expose: a,\n };\n\n const eventBus = inject(\"pageEventBus\") as ReturnType<typeof mitt>;\n //@ts-ignore\n eventBus.on(\"focus\", (eventArgs: string) => {\n if (b.vmId.value == eventArgs) {\n if (b.focus != null) {\n b.focus();\n } else {\n setTimeout(() => {\n (document.querySelector(\"#PageNavigation .list-group-item.active\") as HTMLElement)?.focus();\n }, 0);\n }\n }\n });\n\n return b;\n}\n","<template>\n <div>\n <div v-show=\"status == 'Saving'\">\n <LoadingWheel :width=\"100\" />\n </div>\n <div v-show=\"status != 'Saving'\">\n <ChildrenList :children-ids=\"children\" :view-only=\"isViewOnly\"></ChildrenList>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, computed } from \"vue\";\nimport LoadingWheel from \"@/lib/LoadingWheel.3.vue\";\nimport type PageDef from \"../elements/PageDef\";\nimport type { PageSettings } from \"@cs-ts/page-settings\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nexport default defineComponent({\n props,\n components: {\n LoadingWheel,\n ...components,\n },\n //@ts-ignore\n setup(props: Props<PageDef, PageSettings>) {\n const base = setup<PageDef, PageSettings>(props);\n\n const status = computed(() => props.data.status);\n\n return {\n status,\n ...base.expose,\n };\n },\n});\n</script>\n","import { render } from \"./PageDef.3.vue?vue&type=template&id=3dfb9c65&ts=true\"\nimport script from \"./PageDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./PageDef.3.vue?vue&type=script&lang=ts\"\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=\"availableSegments.length != 1\">\n <h1>Select a form</h1>\n <div>\n <button type=\"button\" class=\"btn btn-outline-secondary cancel dfNavButton mx-auto\" @click.prevent=\"setSegment(segment)\" v-for=\"segment in availableSegments\">\n {{ segment.definition.settings.displayLabel }}\n <!-- TODO -->\n </button>\n </div>\n </div>\n <div v-else>\n <template v-if=\"mustLoginAndNotLoggedIn\">\n <p>This cannot be started until you log in.</p>\n <button class=\"btn btn-primary cancel dfNavButton mx-auto\" @click=\"forceLogin\">Log In</button>\n </template>\n <form @submit.prevent=\"selfAssignSegmentAuto\" v-else>\n <template v-if=\"adminReview\">\n <p v-if=\"activeSegment.isAssignedToOtherUser\">This is currently assigned to another user. You must steal it by reassigning it to yourself if you wish to complete it.</p>\n <p v-else>This cannot be started until it is assigned to yourself.</p>\n </template>\n <p v-else-if=\"verifyItems.length > 0\">This cannot be started until you verify your identity.</p>\n <p v-else><!-- TODO when does this case happen? -->You must start this before you can continue.</p>\n <div v-if=\"verifyFailureMessages.length > 0\">\n <ul>\n <li v-for=\"message in verifyFailureMessages\">{{ message }}</li>\n </ul>\n </div>\n <div class=\"form-group\" v-for=\"(verifyItem, index) in verifyItems\">\n <label :for=\"'verify' + index\">{{ verifyItem.prompt }}</label>\n <input class=\"form-control\" type=\"text\" :id=\"'verify' + index\" v-model=\"verifyData[verifyItem.prompt || '']\" />\n </div>\n <button type=\"button\" class=\"btn btn-primary cancel dfNavButton mx-auto\" @click.prevent=\"selfAssignSegment(segment)\" v-for=\"segment in availableSegments\">\n <template v-if=\"adminReview\">{{ activeSegment.isAssignedToOtherUser ? \"Reassign\" : \"Assign\" }} to myself</template>\n <template v-else>Continue</template>\n </button>\n </form>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, computed, inject } from \"vue\";\nimport { usePageStore } from \"../pageState/store\";\nimport { useMainStore } from \"@/mainStore\";\nimport { forceLoginInjectKey } from \"../Page.3.vue.InjectKeys\";\nimport { computedAsync } from \"@vueuse/core\";\nimport StateFormDef from \"../elements/StateFormDef\";\nexport default defineComponent({\n setup() {\n const mainStore = useMainStore();\n const pageStore = usePageStore();\n const verifyData = ref({} as Record<string, string | undefined>);\n const verifyFailureMessages = ref([] as string[]);\n\n const forceLogin = inject(forceLoginInjectKey)!;\n\n const availableSegments = computed(() => pageStore.availableSegments!);\n const adminReview = computed(() => pageStore.adminReview);\n const mustLoginAndNotLoggedIn = computedAsync(async () => {\n return activeSegment.value.definition.settings.mustLogin && !(await mainStore.isLoggedInPromise);\n });\n const activeSegment = computed(() => {\n return availableSegments.value![0];\n });\n const verifyItems = computed(() => {\n return activeSegment.value.definition.settings.verifyItems ?? [];\n });\n const selfAssignSegmentAuto = async () => {\n const availableSegmentsV = availableSegments.value!;\n if (availableSegmentsV.length == 1) {\n await selfAssignSegment(availableSegmentsV[0]);\n }\n };\n const setSegment = (segment: StateFormDef) => {\n pageStore.segment = segment.id!;\n };\n const selfAssignSegment = async (segment: StateFormDef) => {\n verifyFailureMessages.value = await pageStore.selfAssignSegment({ segment: segment.id!, verifyData: verifyData.value });\n };\n\n return {\n availableSegments,\n adminReview,\n forceLogin,\n selfAssignSegment,\n setSegment,\n mustLoginAndNotLoggedIn,\n selfAssignSegmentAuto,\n activeSegment,\n verifyItems,\n verifyData,\n verifyFailureMessages,\n };\n },\n});\n</script>\n","import { render } from \"./SegmentSelector.3.vue?vue&type=template&id=0e2bc3e0&ts=true\"\nimport script from \"./SegmentSelector.3.vue?vue&type=script&lang=ts\"\nexport * from \"./SegmentSelector.3.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<style scoped lang=\"less\">\n.modal-footer {\n display: block;\n text-align: center;\n}\n</style>\n<template>\n <div class=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">Error Occurred</h2>\n <button type=\"button\" class=\"close icon icon-close\" @click=\"$emit('close')\" autofocus aria-label=\"Close\" />\n </div>\n <div class=\"modal-body\">\n <p describedby-text class=\"action-failure-text\">An error occurred while saving. Please try again later.</p>\n </div>\n <div class=\"modal-footer\">\n <a class=\"btn btn-outline-secondary\" tabindex=\"0\" @click.prevent=\"$emit('close')\">Ok</a>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref } from \"vue\";\nimport { dialogSetup, DialogProps } from \"@/lib/dialogMixin.3\";\ninterface Props extends DialogProps {}\nexport default defineComponent({\n props: [\"triggerElement\"],\n setup(props: Props) {\n const containerRef = ref<HTMLElement>(null!);\n dialogSetup(containerRef, props);\n return {\n container: containerRef,\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./SaveFailure.3.vue?vue&type=style&index=0&id=0268753b&scoped=true&lang=less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./SaveFailure.3.vue?vue&type=style&index=0&id=0268753b&scoped=true&lang=less\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./SaveFailure.3.vue?vue&type=template&id=0268753b&scoped=true&ts=true\"\nimport script from \"./SaveFailure.3.vue?vue&type=script&lang=ts\"\nexport * from \"./SaveFailure.3.vue?vue&type=script&lang=ts\"\n\nimport \"./SaveFailure.3.vue?vue&type=style&index=0&id=0268753b&scoped=true&lang=less\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-0268753b\"]])\n\nexport default __exports__","import { map } from './map';\nimport { innerFrom } from '../observable/innerFrom';\nimport { operate } from '../util/lift';\nimport { mergeInternals } from './mergeInternals';\nimport { isFunction } from '../util/isFunction';\nexport function mergeMap(project, resultSelector, concurrent) {\n if (concurrent === void 0) { concurrent = Infinity; }\n if (isFunction(resultSelector)) {\n return mergeMap(function (a, i) { return map(function (b, ii) { return resultSelector(a, b, i, ii); })(innerFrom(project(a, i))); }, concurrent);\n }\n else if (typeof resultSelector === 'number') {\n concurrent = resultSelector;\n }\n return operate(function (source, subscriber) { return mergeInternals(source, subscriber, project, concurrent); });\n}\n//# sourceMappingURL=mergeMap.js.map","import { innerFrom } from '../observable/innerFrom';\nimport { executeSchedule } from '../util/executeSchedule';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nexport function mergeInternals(source, subscriber, project, concurrent, onBeforeNext, expand, innerSubScheduler, additionalFinalizer) {\n var buffer = [];\n var active = 0;\n var index = 0;\n var isComplete = false;\n var checkComplete = function () {\n if (isComplete && !buffer.length && !active) {\n subscriber.complete();\n }\n };\n var outerNext = function (value) { return (active < concurrent ? doInnerSub(value) : buffer.push(value)); };\n var doInnerSub = function (value) {\n expand && subscriber.next(value);\n active++;\n var innerComplete = false;\n innerFrom(project(value, index++)).subscribe(createOperatorSubscriber(subscriber, function (innerValue) {\n onBeforeNext === null || onBeforeNext === void 0 ? void 0 : onBeforeNext(innerValue);\n if (expand) {\n outerNext(innerValue);\n }\n else {\n subscriber.next(innerValue);\n }\n }, function () {\n innerComplete = true;\n }, undefined, function () {\n if (innerComplete) {\n try {\n active--;\n var _loop_1 = function () {\n var bufferedValue = buffer.shift();\n if (innerSubScheduler) {\n executeSchedule(subscriber, innerSubScheduler, function () { return doInnerSub(bufferedValue); });\n }\n else {\n doInnerSub(bufferedValue);\n }\n };\n while (buffer.length && active < concurrent) {\n _loop_1();\n }\n checkComplete();\n }\n catch (err) {\n subscriber.error(err);\n }\n }\n }));\n };\n source.subscribe(createOperatorSubscriber(subscriber, outerNext, function () {\n isComplete = true;\n checkComplete();\n }));\n return function () {\n additionalFinalizer === null || additionalFinalizer === void 0 ? void 0 : additionalFinalizer();\n };\n}\n//# sourceMappingURL=mergeInternals.js.map","import { mergeAll } from './mergeAll';\nexport function concatAll() {\n return mergeAll(1);\n}\n//# sourceMappingURL=concatAll.js.map","import { mergeMap } from './mergeMap';\nimport { identity } from '../util/identity';\nexport function mergeAll(concurrent) {\n if (concurrent === void 0) { concurrent = Infinity; }\n return mergeMap(identity, concurrent);\n}\n//# sourceMappingURL=mergeAll.js.map","import { concatAll } from '../operators/concatAll';\nimport { popScheduler } from '../util/args';\nimport { from } from './from';\nexport function concat() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return concatAll()(from(args, popScheduler(args)));\n}\n//# sourceMappingURL=concat.js.map","import { concat } from '../observable/concat';\nimport { popScheduler } from '../util/args';\nimport { operate } from '../util/lift';\nexport function startWith() {\n var values = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n values[_i] = arguments[_i];\n }\n var scheduler = popScheduler(values);\n return operate(function (source, subscriber) {\n (scheduler ? concat(values, source, scheduler) : concat(values, source)).subscribe(subscriber);\n });\n}\n//# sourceMappingURL=startWith.js.map","<template>\n <div class=\"form-group text-form-group focus-form-group clearfix\" :class=\"[colClass, customErrorClass]\">\n <p class=\"pdf-inline\" v-if=\"isViewOnly\">\n <strong class=\"display-label\">{{ effectiveLabel || effectiveLabelText }}:</strong>\n <span class=\"display-value\" v-show=\"settings.effectivePrefixAddon\">{{ settings.effectivePrefixAddon }}</span>\n <span class=\"display-value\" v-show=\"effectiveMaskedValue\">{{ effectiveMaskedValue }}</span>\n <span class=\"display-value\" v-show=\"settings.suffixAddon\">{{ settings.suffixAddon }}</span>\n <!-- <button class=\"btn btn-outline-secondary btn-sm\" type=\"button\" @click=\"isAdminEditing = true\">Edit</button> -->\n <button class=\"passthrough icon icon-edit mr-1\" type=\"button\" v-if=\"showAdminEditControls\" @click.prevent=\"startAdminEdit\"><span class=\"sr-only\">Edit</span></button>\n </p>\n <template v-else>\n <label class=\"control-label\" :for=\"vmId\" :aria-label=\"effectiveLabelText\" :id=\"vmId + '_Label'\" :class=\"{ dfRequired: settings.required, dfOptional: !settings.required, 'sr-only': effectiveLabel != effectiveLabelText }\">\n {{ effectiveLabelText }}\n <HelpIcon :label=\"effectiveLabelText\" :text=\"settings.helpText\" />\n <button class=\"passthrough icon icon-close mr-1\" type=\"button\" v-if=\"isAdminEditing\" @click.prevent=\"cancelAdminEdit\" aria-label=\"Stop Edit\" />\n </label>\n <!--\n <pre>HV: {{ JSON.stringify(hasValue) }}\nTV: {{ JSON.stringify(tempValue) }}\nV: {{ JSON.stringify(value) }}\nEV: {{ JSON.stringify(effectiveValue) }}\nDV: {{ JSON.stringify(defaultValue) }}</pre>\n -->\n <div :class=\"{ 'input-group': settings.effectivePrefixAddon || settings.suffixAddon }\">\n <span class=\"input-group-prepend\" v-if=\"settings.effectivePrefixAddon\">\n <span class=\"input-group-text\">{{ settings.effectivePrefixAddon }}</span>\n </span>\n <template v-if=\"settings.layout == 1\">\n <!-- TODO constants -->\n <textarea ref=\"inputElementRef\" class=\"form-control\" v-model=\"tempValue\" @blur=\"markEdited\" :placeholder=\"effectivePlaceholderText\" :id=\"vmId\" :aria-required=\"settings.required ? 'true' : 'false'\" :mask=\"settings.effectiveInputMask\" :mask-reverse=\"settings.effectiveReverseMask\" :class=\"{ dfRequired: settings.required }\" :rows=\"settings.rows\" :maxlength=\"settings.maxLength || null\" :aria-describedby=\"errorIds\" />\n </template>\n <template v-else>\n <template v-if=\"settings.useDatePicker\">\n <DatePicker\n ref=\"inputElementRef\"\n v-model=\"tempValue\"\n :config=\"datepickerConfig\"\n :placeholder=\"settings.effectivePlaceholderText\"\n :ariaLabelledBy=\"vmId + '_Label'\"\n :ariaRequired=\"settings.required\"\n :ariaDescribedBy=\"errorIds\"\n :id=\"vmId\"\n @html-input=\"\n handleInput($event);\n markEdited();\n \"\n />\n </template>\n <template v-else>\n <input ref=\"inputElementRef\" @blur=\"markEdited\" @input=\"handleInput($event)\" class=\"form-control\" :value=\"tempValue\" :type=\"settings.effectiveHtmlType || 'text'\" :placeholder=\"effectivePlaceholderText\" :id=\"vmId\" :aria-required=\"settings.required ? 'true' : 'false'\" :mask=\"settings.effectiveInputMask\" :mask-reverse=\"settings.effectiveReverseMask\" :class=\"{ dfRequired: settings.required }\" :maxlength=\"settings.maxLength || null\" :step=\"settings.effectiveHtmlStep || null\" :min=\"settings.effectiveHtmlMin || null\" :aria-describedby=\"errorIds\" />\n </template>\n </template>\n <span class=\"input-group-append\" v-if=\"settings.suffixAddon\">\n <span class=\"input-group-text\">{{ settings.suffixAddon }}</span>\n </span>\n <!--\n <button class=\"btn btn-outline-primary btn-sm mt-1\" type=\"button\" v-if=\"isAdminEditing\" @click.prevent=\"saveAdminEdit\">Save</button>\n -->\n </div>\n </template>\n <ErrorList :data=\"data\" :id=\"errorId\" />\n <Comments :data=\"data\" />\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, watch, computed, inject } from \"vue\";\nimport { createTextMaskInputElement } from \"text-mask-core\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { map } from \"rxjs/operators\";\nimport TextboxDef from \"../elements/TextboxDef\";\nimport { TextboxSettings } from \"@cs-ts/textbox-settings\";\nimport DatePicker from \"@/lib/DatePicker.3.vue\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport { useMainStore } from \"@/mainStore\";\nimport FlatPickr from \"vue-flatpickr-component\";\nexport default defineComponent({\n components: {\n ...components,\n DatePicker,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<TextboxDef, TextboxSettings>) {\n const mainStore = useMainStore();\n const base = setup<TextboxDef, TextboxSettings>(props);\n\n const mustMask = inject(\"mustMask\", () => false);\n const hiddenElementsInjection = inject(\"hiddenElements\", () => null as string[] | null);\n\n const textMaskInputElement = ref(null as null | ReturnType<typeof createTextMaskInputElement>);\n const inputElementRef = ref(null as null | HTMLInputElement | HTMLTextAreaElement | typeof FlatPickr);\n const tempValue = ref<string | null>(null);\n\n const defaultValue = useObservable(props.data.defaultValue$().pipe(map(i => (i.length ? i[0] : null))));\n const hasValue = useObservable(props.data.hasValue$());\n const effectiveLabel = useObservable(props.data.effectiveLabel$());\n const effectiveLabelText = useObservable(props.data.effectiveLabelText$());\n const maskedValue = useObservable(props.data.maskedValue$().pipe(map(i => (i.length ? i[0] : null))));\n\n const effectiveValue = computed(() => {\n return hasValue.value ? base.value.value : defaultValue.value;\n });\n const effectivePlaceholderText = computed(() => {\n return base.settings.value.effectivePlaceholderText;\n });\n const inputElement = computed(() => {\n return base.settings.value.useDatePicker ? (inputElementRef.value as typeof FlatPickr)?.flatPickr._input : inputElementRef.value;\n });\n const hiddenElements = computed(() => hiddenElementsInjection());\n const isMasked = computed(() => {\n const extraDataShimDef = props.data.children.find(i => i.definition.type == \"ExtraDataShimDef\");\n return hiddenElements.value != null && hiddenElements.value.length > 0 && extraDataShimDef != null ? !hiddenElements.value.includes(extraDataShimDef.id!) : null;\n });\n const effectiveMaskedValue = computed(() => (isMasked.value ?? mustMask() ? maskedValue : effectiveValue));\n\n base.focus = () => {\n const doFocus = () => {\n if (inputElement.value == null) {\n setTimeout(doFocus, 100);\n } else {\n inputElement.value.focus();\n }\n };\n doFocus();\n };\n\n const markEdited = () => {\n setValue(tempValue.value);\n props.data.markEdited();\n };\n const handleInput = (event: InputEvent) => {\n if (textMaskInputElement.value) {\n textMaskInputElement.value.update((event.target! as HTMLInputElement).value);\n }\n tempValue.value = (event.target! as HTMLInputElement).value;\n };\n const createTextMaskElement = () => {\n if ((base.settings.value.effectiveHtmlType == null || [\"text\", \"tel\", \"url\", \"search\", \"password\"].includes(base.settings.value.effectiveHtmlType)) && base.settings.value.effectiveInputMask != null && !/^\\s*$/.test(base.settings.value.effectiveInputMask) && inputElement.value != null) {\n const config = {\n inputElement: inputElement.value,\n mask: maskArray.bind(this),\n guide: false,\n placeholderChar: \"\\u2000\",\n };\n textMaskInputElement.value = createTextMaskInputElement(config);\n } else {\n textMaskInputElement.value = null;\n }\n };\n\n const datepickerConfig = {\n allowInput: true,\n altInput: true,\n dateFormat: \"m-d-Y\",\n altFormat: \"m-d-Y\",\n disableMobile: true,\n defaultDate: \"\",\n wrap: true,\n clickOpens: false,\n onOpen: () => {\n mainStore.toggleFocusTrapActiveModals(false);\n },\n onClose: () => {\n mainStore.toggleFocusTrapActiveModals(true);\n },\n };\n\n const maskArray = (value: string | null) => {\n let maskStr = base.settings.value.effectiveInputMask;\n if (maskStr == null || /^\\s*$/.test(maskStr)) {\n return null;\n }\n value = value || \"\";\n const result = [];\n const optionalMask = [];\n // Extend the recursive mask to the length of value if needed\n const recurseIndex = maskStr.indexOf(\"#\");\n if (recurseIndex >= 0) {\n const repeatedPart = maskStr.substring(recurseIndex);\n while (maskStr.length <= value.length && repeatedPart.length > 0) {\n maskStr += repeatedPart;\n }\n }\n\n // Walk the mask backwards so can skip optional characters at the end\n let optional = false;\n for (let i = maskStr.length - 1; i >= 0; i--) {\n const maskChar = maskStr[i];\n let maskPattern;\n if (maskChar == \"A\") {\n maskPattern = /[A-Za-z0-9]/;\n optional = false;\n } else if (maskChar == \"S\") {\n maskPattern = /[A-Za-z]/;\n optional = false;\n } else if (maskChar == \"0\" || maskChar == \"9\" || maskChar == \"#\") {\n maskPattern = /[0-9]/;\n optional = maskChar != \"0\" && i >= value.length;\n } else {\n maskPattern = maskChar;\n // Include optional suffix only if there is extra characters\n // This allows the extra typed character to be matched to the optional mask\n // Without this, the extra typed character will be silently dropped if they aren't the constant\n if (optional && i < value.length) {\n result.unshift.apply(result, optionalMask);\n maskPattern = maskChar;\n optional = false;\n }\n }\n if (optional) {\n optionalMask.unshift(maskPattern);\n } else {\n result.unshift(maskPattern);\n }\n }\n return base.settings.value.effectiveReverseMask ? result.reverse() : result;\n };\n\n const setValue = (newValue: string | null) => {\n if (newValue != effectiveValue.value) {\n //if (isNullOrWhitespace(newValue)) {\n // base.value.value = null;\n // tempValue.value = defaultValue.value;\n //} else {\n //TODO generic parameter for value type\n //@ts-ignore\n base.value.value = newValue;\n //}\n }\n };\n\n watch(inputElement, () => createTextMaskElement());\n watch(tempValue, (newValue, _) => {\n if (!(props.data.calculationContext.nonLiveTextboxes || props.data.forceNonLive)) {\n setValue(newValue);\n }\n });\n\n tempValue.value = effectiveValue.value as string | null;\n watch(\n () => effectiveValue.value,\n newValue => {\n tempValue.value = newValue as string | null;\n },\n );\n if (props.data.forceNonLive) {\n watch(defaultValue, () => props.data.markEdited());\n }\n\n return {\n inputElementRef,\n textMaskInputElement,\n inputElement,\n tempValue,\n effectiveLabel,\n effectiveLabelText,\n maskedValue,\n effectivePlaceholderText,\n effectiveValue,\n effectiveMaskedValue,\n datepickerConfig,\n\n markEdited,\n handleInput,\n\n ...base.expose,\n };\n },\n});\n</script>\n","import { render } from \"./TextboxDef.3.vue?vue&type=template&id=65d4f188&ts=true\"\nimport script from \"./TextboxDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./TextboxDef.3.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<style lang=\"less\" scoped>\n.success {\n color: green;\n}\n.error {\n color: red;\n}\n.warning {\n color: darkorange;\n}\n.upload-status {\n .icon {\n font-size: 30px;\n line-height: 30px;\n vertical-align: middle;\n &:before {\n vertical-align: unset;\n color: inherit;\n }\n }\n}\n.dfNavButton.btn-file {\n border: 2px dashed #aaaaaa;\n border-radius: 5px;\n\n input[type=\"file\"] {\n border: unset;\n }\n}\n</style>\n<template>\n <div class=\"form-group focus-form-group file-form-group clearfix\" :class=\"[settings.isChild ? 'form-group-child' : null, colClass, customErrorClass]\">\n <p class=\"pdf-inline\" v-if=\"isViewOnly\">\n <strong class=\"display-label\">{{ effectiveLabel }}:</strong>\n <span class=\"display-value\" v-if=\"hasValue\">\n <a target=\"_blank\" :href=\"data.fileUrl\">\n <span class=\"icon icon-download\"></span>\n {{ data.fileName }}\n </a>\n </span>\n <button class=\"passthrough icon icon-edit mr-1\" type=\"button\" v-if=\"showAdminEditControls\" @click.prevent=\"startAdminEdit\"><span class=\"sr-only\">Edit</span></button>\n </p>\n <template v-else>\n <label :aria-label=\"effectiveLabelText\" :id=\"vmId + '_Label'\" class=\"control-label\" :for=\"vmId\" :class=\"{ dfRequired: settings.required, dfOptional: !settings.required, 'sr-only': effectiveLabelText != effectiveLabel }\">\n {{ effectiveLabelText }}\n <HelpIcon :label=\"effectiveLabelText\" :text=\"settings.helpText\" />\n <button class=\"passthrough icon icon-close mr-1\" type=\"button\" v-if=\"isAdminEditing\" @click.prevent=\"cancelAdminEdit\" aria-label=\"Stop Edit\" />\n </label>\n <div v-show=\"hasValue\">\n <div class=\"btn-group\">\n <span :id=\"vmId + '_HasValueDesc'\" class=\"sr-only\">You have selected the file: {{ filename }}.</span>\n <a ref=\"uploadedFileRef\" :tabindex=\"url == null ? undefined : 0\" :aria-labelledby=\"vmId + '_Label'\" :aria-describedby=\"vmId + '_HasValueDesc ' + errorIds\" class=\"btn btn-outline-secondary rounded-left ml-0\" target=\"_blank\" :href=\"url\" style=\"flex: auto; border-right: 0\">{{ filename }}</a>\n <button ref=\"removeFileRef\" type=\"button\" @click=\"removeFile\" tabindex=\"0\" role=\"button\" class=\"btn btn-outline-danger input-group-append d-flex align-items-center\" aria-label=\"Remove File\" :aria-describedby=\"url == null ? vmId + '_Label ' + vmId + '_HasValueDesc ' + errorIds : undefined\">×</button>\n </div>\n </div>\n <div :class=\"{ 'sr-only': hasValue }\">\n <div class=\"btn dfNavButton btn-file d-flex flex-wrap justify-content-between align-items-center px-3 py-2\">\n <div class=\"d-flex py-2 flex-grow-1\">\n <input type=\"file\" class=\"p-0\" data-test-id=\"upload\" :id=\"vmId\" :aria-required=\"settings.required ? 'true' : 'false'\" :aria-describedby=\"errorIds\" ref=\"fileRef\" @change=\"uploadFile\" @abort=\"uploadFile\" :tabindex=\"hasValue ? -1 : 0\" />\n <LoadingWheel :width=\"30\" v-show=\"uploadStatus == 'in-progress'\"></LoadingWheel>\n </div>\n <div class=\"upload-status\" aria-live=\"polite\">\n <template v-if=\"uploadStatus != null\">\n <span v-if=\"uploadStatus == 'ok' && valid\">\n <span class=\"icon icon-check success\" aria-hidden=\"true\"></span>\n <span class=\"sr-only\">File uploaded successfully</span>\n </span>\n <span v-else-if=\"uploadStatus == 'too-large'\" class=\"error\">\n <span class=\"icon icon-attention\" role=\"img\" aria-label=\"Error:\"></span>\n File must not be larger than {{ maxFileSizeForDisplay }}\n </span>\n <span v-else-if=\"uploadStatus == 'avScanFail'\" class=\"error\">\n <span class=\"icon icon-attention\" role=\"img\" aria-label=\"Error:\"></span>\n Potential virus or malware detected.\n </span>\n <span v-else-if=\"uploadStatus == 'fail'\" class=\"error\">\n <span class=\"icon icon-attention\" role=\"img\" aria-label=\"Error:\"></span>\n Unknown error\n </span>\n </template>\n </div>\n </div>\n </div>\n </template>\n <ErrorList :data=\"data\" :id=\"errorId\" />\n <Comments :data=\"data\" />\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, watch, computed } from \"vue\";\nimport { useMainStore } from \"@/mainStore\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport FileDef from \"../elements/FileDef\";\nimport { FileSettings } from \"@cs-ts/file-settings\";\n\nimport LoadingWheel from \"@/lib/LoadingWheel.3.vue\";\n\nexport default defineComponent({\n components: {\n LoadingWheel,\n ...components,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<FileDef, FileSettings>) {\n const base = setup<FileDef, FileSettings>(props);\n const fileRef = ref<HTMLInputElement>(null!);\n const uploadedFileRef = ref<HTMLElement>(null!);\n const removeFileRef = ref<HTMLElement>(null!);\n\n const mainStore = useMainStore();\n\n const hasValue2 = useObservable(props.data.hasValue$());\n const effectiveLabel = useObservable(props.data.effectiveLabel$());\n const effectiveLabelText = useObservable(props.data.effectiveLabelText$());\n const valid = useObservable(props.data.valid$());\n\n const hasValue = computed(() => {\n return hasValue2.value || props.data.valueId || props.data._hasValue;\n });\n const filename = computed(() => {\n return props.data.fileName;\n });\n const url = computed(() => {\n return props.data.fileUrl;\n });\n type UploadStatusType = \"ok\" | \"fail\" | \"too-large\" | \"in-progress\" | null;\n const uploadStatus = computed({\n get() {\n return props.data.uploadStatus as UploadStatusType;\n },\n set(value) {\n //eslint-disable-next-line vue/no-mutating-props\n props.data.uploadStatus = value;\n },\n });\n const maxFileSize = computed(() => {\n const globalSizeInMb = mainStore.globalConfigData.MaxUploadFileSizeInMb;\n const inputSize = base.settings.value.maxFileSize;\n if (globalSizeInMb != null && globalSizeInMb > 0) {\n const globalSize = globalSizeInMb * 1024 * 1024;\n if (inputSize != null && inputSize > 0) {\n return Math.min(globalSize, inputSize);\n } else {\n return globalSize;\n }\n } else {\n if (inputSize != null && inputSize > 0) {\n return inputSize;\n } else {\n return 1024 * 1024 * 1024;\n }\n }\n });\n const maxFileSizeForDisplay = computed(() => {\n const maxFileSizeV = maxFileSize.value;\n if (maxFileSizeV >= 1024 * 1024) {\n const inMb = Math.floor(maxFileSizeV / 1024 / 102.4) / 10;\n return `${inMb} MB`;\n } else if (maxFileSizeV >= 1024) {\n const inKb = Math.floor(maxFileSizeV / 1024);\n return `${inKb} KB`;\n } else {\n return `${maxFileSizeV} bytes`;\n }\n });\n\n const removeFile = () => {\n fileRef.value.value = null!;\n uploadStatus.value = null;\n base.pageStore.setFileInfoByVmId({\n id: base.vmId.value,\n valueId: undefined,\n contentType: undefined,\n fileName: undefined,\n fileUrl: undefined,\n hasValue: false,\n });\n fileRef.value.focus();\n mainStore.setLiveRegion(Promise.resolve(\"File has been removed successfully\"));\n };\n // TODO - store action?\n const uploadFile = async () => {\n uploadStatus.value = \"in-progress\";\n const files = fileRef.value.files ?? [];\n if (files.length == 0) {\n removeFile();\n return;\n }\n const newFile = files[0];\n if (newFile.size > maxFileSize.value) {\n // Add delay on updating too-large status to properly announce the error on aria-live\n setTimeout(() => {\n uploadStatus.value = \"too-large\";\n }, 100);\n } else {\n const filePromise = await base.pageStore.uploadExternalFile({ vmId: base.vmId.value, newFile });\n uploadStatus.value = (filePromise?.status as UploadStatusType) ?? \"fail\";\n }\n if (uploadStatus.value == \"ok\") {\n const elementToFocus = url.value == null ? removeFileRef.value : uploadedFileRef.value;\n elementToFocus.focus();\n } else {\n fileRef.value.focus();\n }\n };\n\n watch(uploadStatus, value => {\n if (value == null) {\n removeFile();\n }\n });\n\n base.focus = () => {\n if (hasValue.value) {\n uploadedFileRef.value.focus();\n } else {\n fileRef.value.focus();\n }\n };\n\n return {\n effectiveLabel,\n effectiveLabelText,\n hasValue,\n valid,\n filename,\n url,\n uploadStatus,\n maxFileSizeForDisplay,\n\n removeFile,\n uploadFile,\n\n fileRef,\n uploadedFileRef,\n removeFileRef,\n\n ...base.expose,\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./FileDef.3.vue?vue&type=style&index=0&id=1b77a10a&lang=less&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./FileDef.3.vue?vue&type=style&index=0&id=1b77a10a&lang=less&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./FileDef.3.vue?vue&type=template&id=1b77a10a&scoped=true&ts=true\"\nimport script from \"./FileDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./FileDef.3.vue?vue&type=script&lang=ts\"\n\nimport \"./FileDef.3.vue?vue&type=style&index=0&id=1b77a10a&lang=less&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1b77a10a\"]])\n\nexport default __exports__","<template>\n <div class=\"form-group checkbox-form-group clearfix no-focus\" :class=\"[colClass, customErrorClass]\">\n <fieldset role=\"group\" :aria-labelledby=\"`${vmId} ${errorIds}`\">\n <legend :class=\"{ dfRequired: settings.required, dfOptional: !settings.required, 'sr-only': effectiveLabelText != effectiveLabel }\">\n <span :id=\"vmId\">{{ effectiveLabelText }}</span>\n <HelpIcon :text=\"settings.helpText\" v-if=\"!isViewOnly\" />\n <button class=\"passthrough icon mr-1\" type=\"button\" v-if=\"showAdminEditControls\" @click.prevent=\"toggleAdminEdit\" :class=\"isAdminEditing ? ['icon-close'] : ['icon-edit']\">\n <span class=\"sr-only\">{{ isAdminEditing ? \"Stop Edit\" : \"Edit\" }}</span>\n </button>\n </legend>\n <!--\n </label>I: <input type=\"checkbox\" v-model=\"useIndeterminate\"></label>\n <pre>HV: {{ JSON.stringify(hasValue) }}\nEC: {{ JSON.stringify(effectiveCheckboxValue) }}\nTV: {{ JSON.stringify(tempValue) }}\nV: {{ JSON.stringify(value) }}\nEV: {{ JSON.stringify(effectiveValue) }}\nDV: {{ JSON.stringify(defaultValue) }}</pre>\n -->\n <div v-if=\"settings.layout == 3\">\n <div>\n <div class=\"col-sm-12 clearfix\" v-for=\"[index, item] in (children || []).entries()\" :style=\"childStyle(item)\">\n <!-- data-bind=\"visible: $data.isCheckGroupItem, if: $data.isCheckGroupItem\" -->\n <div class=\"checkbox-withchild\">\n <!-- :class=\"[item.settings.layout == 2 ? 'radio' : 'checkbox']\"> -->\n <label class=\"form-check-label\" :for=\"vmId + '_Id_' + index\">\n <template v-if=\"item.definition.settings.layout == 2\">\n <input ref=\"checkRef\" type=\"radio\" v-model=\"effectiveCheckboxValue\" :value=\"item.definition.settings.effectiveValue\" class=\"radio\" :disabled=\"isViewOnly\" :indeterminate.prop=\"indeterminateValue(item.definition.settings.effectiveValue)\" :id=\"vmId + '_Id_' + index\" />\n </template>\n <template v-else>\n <input ref=\"checkRef\" type=\"checkbox\" v-model=\"effectiveCheckboxValue\" :value=\"item.definition.settings.effectiveValue\" class=\"checkbox\" :disabled=\"isViewOnly\" :indeterminate.prop=\"indeterminateValue(item.definition.settings.effectiveValue)\" :id=\"vmId + '_Id_' + index\" />\n </template>\n {{ item.definition.settings.label }}\n </label>\n </div>\n <div id=\"children\" class=\"col-sm-11 col-sm-offset-1\" v-show=\"effectiveValue.indexOf(item.definition.settings.effectiveValue) >= 0\">\n <ChildrenList :children-ids=\"item.children\" :view-only=\"isViewOnly\"></ChildrenList>\n </div>\n </div>\n </div>\n </div>\n <div v-if=\"settings.layout != 3\">\n <!--TODO real stacked int -->\n <div v-if=\"settings.layout == 1\">\n <div class=\"checkbox\" v-for=\"[index, item] in (effectiveItems || []).entries()\">\n <!--\n <label class=\"form-check-label\" @click.prevent=\"toggle(item.value, $event);\">\n <input type=\"checkbox\" @click.prevent :disabled=\"isViewOnly\" :checked.prop=\"(value == null || value.length == 0) ? defaultValue != null && defaultValue.includes(item.value) : value.includes(item.value)\" />\n -->\n <label class=\"form-check-label\" :for=\"vmId + '_Id_' + index\">\n <input ref=\"checkRef\" type=\"checkbox\" v-model=\"effectiveCheckboxValue\" :value=\"item.value\" :disabled=\"isViewOnly\" :indeterminate.prop=\"indeterminateValue(item.value)\" :id=\"vmId + '_Id_' + index\" />\n {{ item.label }}\n </label>\n </div>\n </div>\n <div v-if=\"settings.layout != 1\">\n <label class=\"checkbox-inline form-check-label\" v-for=\"[index, item] in (effectiveItems || []).entries()\" :for=\"vmId + '_Id_' + index\">\n <!--\n {{ defaultValue }} - {{ effectiveCheckboxValue }} - {{ item.value }} -- {{ effectiveValue }}\n -->\n <input ref=\"checkRef\" type=\"checkbox\" v-model=\"effectiveCheckboxValue\" :value=\"item.value\" :disabled=\"isViewOnly\" :indeterminate.prop=\"indeterminateValue(item.value)\" :id=\"vmId + '_Id_' + index\" />\n {{ item.label }}\n </label>\n </div>\n </div>\n\n <ErrorList :data=\"data\" :id=\"errorId\" />\n <Comments :data=\"data\" />\n <AdminSettingsDifferences :data=\"data\" />\n </fieldset>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, watch, computed, nextTick } from \"vue\";\nimport arrayEqual from \"@/lib/arrayEquals\";\nimport { map, tap } from \"rxjs/operators\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport type { CheckGroupSettings } from \"@cs-ts/check-group-settings\";\nimport type CheckGroupDef from \"../elements/CheckGroupDef\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { ObservableReturnType } from \"@/lib/observableHelpers\";\nexport default defineComponent({\n components: {\n ...components,\n //DatePicker,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<CheckGroupDef, CheckGroupSettings>) {\n const base = setup<CheckGroupDef, CheckGroupSettings>(props);\n\n const checkRef = ref([] as HTMLInputElement[]);\n base.focus = () => {\n if (checkRef.value.length > 0) {\n checkRef.value[0].focus();\n }\n };\n\n const useIndeterminate = ref(false);\n const tempValue = ref([] as string[]);\n\n const effectiveCheckboxValue = computed({\n get() {\n return useIndeterminate.value ? (base.value.value as unknown as string[]) : tempValue.value;\n },\n set(value) {\n if (useIndeterminate.value) {\n base.value.value = value;\n tempValue.value = value!;\n } else {\n if (base.value.value?.length == 0 && value?.length == 0) {\n //console.log(`A - Clear value`);\n base.value.value = [];\n }\n //console.log(`A - Set temp value to ${JSON.stringify(value ?? [])}`);\n tempValue.value = value!;\n }\n },\n });\n const effectiveValue = computed(() => {\n return effectiveValueM();\n });\n\n const checkForInvalidValues = () => {\n nextTick(() => {\n nextTick(() => {\n const clientValidateRules = props.data.clientValidateRules$?.getValue() || {};\n const findEffectiveItems = (value: string) => ((effectiveItems.value ?? []) as effectiveItemsType).find(item => item.value == value);\n if (\"data-val-serveronlyerror-values\" in clientValidateRules) {\n clientValidateRules[\"data-val-serveronlyerror-values\"] = clientValidateRules[\"data-val-serveronlyerror-values\"]\n .split(\"`\")\n .filter((errorValue: string) => !findEffectiveItems(errorValue))\n .join(\"`\");\n props.data.clientValidateRules$.next(clientValidateRules);\n }\n tempValue.value = tempValue.value.filter(value => findEffectiveItems(value));\n });\n });\n };\n const effectiveItems = useObservable(props.data.effectiveItems$().pipe(tap(() => checkForInvalidValues())));\n type effectiveItemsType = ObservableReturnType<ReturnType<typeof props.data.effectiveItems$>>;\n const defaultValue = useObservable(props.data.defaultValue$().pipe(map(i => i.filter(j => j != null) as string[])));\n const hasValue = useObservable(props.data.hasValue$());\n const effectiveLabel = useObservable(props.data.effectiveLabel$());\n const effectiveLabelText = useObservable(props.data.effectiveLabelText$());\n\n const effectiveValueM = () => {\n //console.log(`ZZ - Effective Value is ${JSON.stringify(hasValue.value)} ? ${JSON.stringify(value.value ?? [])} : ${JSON.stringify(defaultValue.value ?? [])}`);\n return (hasValue.value ? (base.value.value as string[] | null) : (defaultValue.value as string[])) ?? [];\n };\n const indeterminateValue = (itemValue: string) => {\n if (useIndeterminate.value && !hasValue.value) {\n return (base.value.value == null || base.value.value.length == 0) && defaultValue.value != null && defaultValue.value.includes(itemValue);\n } else {\n return false;\n }\n };\n //toggle(val, event) {\n // event.preventDefault();\n // $nextTick.value(() => {\n // if (value.value.includes(val)) {\n // for(let i = value.value.length -1; i >= 0; i--) {\n // if (value.value[i] == val) {\n // value.value.splice(i, 1);\n // }\n // }\n // } else {\n // value.value.push(val);\n // }\n // });\n //},\n //const saveAdminEdit = async () => {\n // throw new Error();\n // //await $store.value.dispatch(\"page/invokeForm\", { type: \"AdminEdit\", target: /* TODO not unique - ForEach */ props.data.id, data: value.value });\n // //isAdminEditing.value = false;\n //};\n\n watch(\n () => useIndeterminate.value,\n newValue => {\n if (base.value.value?.length == 0 && newValue) {\n tempValue.value = effectiveValueM();\n }\n },\n );\n watch(\n () => tempValue.value,\n (newValue, _) => {\n nextTick(() => {\n if (!arrayEqual(newValue, effectiveValue.value)) {\n if (!hasValue.value && (newValue.length == 0 || arrayEqual(newValue, defaultValue.value ?? []))) {\n //console.log(`C - Set temp value to ${JSON.stringify(defaultValue.value ?? [])}`);\n tempValue.value = defaultValue.value ?? [];\n if (useIndeterminate.value) return;\n //value.value = [];\n } else {\n //console.log(`D - Set value to ${JSON.stringify(tempValue.value ?? [])}`);\n if (useIndeterminate.value) return;\n base.value.value = tempValue.value ?? [];\n }\n } else {\n //console.log(`F - Skip temp value to ${JSON.stringify(newValue)} - ${JSON.stringify(effectiveValue.value)}`);\n }\n });\n },\n );\n\n nextTick(() => {\n //console.log(`A - Set temp value to ${JSON.stringify(effectiveValueM.value())}`);\n tempValue.value = effectiveValueM();\n watch(\n () => defaultValue.value,\n (newValue, oldValue) => {\n nextTick(() => {\n if (!hasValue.value && arrayEqual(oldValue ?? [], tempValue.value ?? [])) {\n //console.log(`B - Set temp value to ${JSON.stringify(newValue ?? [])}`);\n tempValue.value = newValue ?? [];\n } else {\n //console.log(`E - Skip temp value to ${JSON.stringify(newValue)} - ${JSON.stringify(oldValue)} - ${JSON.stringify(tempValue.value)}`);\n }\n });\n },\n { deep: true },\n );\n });\n\n return {\n effectiveCheckboxValue,\n effectiveItems,\n effectiveLabel,\n effectiveLabelText,\n effectiveValue,\n\n checkRef,\n\n indeterminateValue,\n\n ...base.expose,\n };\n },\n});\n</script>\n","import { render } from \"./CheckGroupDef.3.vue?vue&type=template&id=2459f92c&ts=true\"\nimport script from \"./CheckGroupDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./CheckGroupDef.3.vue?vue&type=script&lang=ts\"\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=\"form-group radio-form-group clearfix no-focus\" :class=\"[colClass, customErrorClass]\">\n <fieldset role=\"radiogroup\" :aria-labelledby=\"`${vmId} ${errorIds}`\" :aria-required=\"settings.required ? 'true' : 'false'\">\n <legend :class=\"{ dfRequired: settings.required, dfOptional: !settings.required, 'sr-only': effectiveLabelText != effectiveLabel }\">\n <span :id=\"vmId\">{{ effectiveLabelText }}</span>\n <HelpIcon :text=\"settings.helpText\" v-if=\"!isViewOnly\" />\n <button class=\"passthrough icon mr-1\" type=\"button\" v-if=\"showAdminEditControls\" @click.prevent=\"toggleAdminEdit\" :class=\"isAdminEditing ? ['icon-close'] : ['icon-edit']\" :aria-label=\"isAdminEditing ? 'Stop Edit' : 'Edit'\" />\n </legend>\n <div v-if=\"settings.layout == 1\">\n <!-- TODO magic numbers -->\n <div class=\"radio\" v-for=\"[index, item] in (effectiveItems || []).entries()\">\n <label class=\"form-check-label\" :for=\"vmId + '_Id_' + index\">\n <input type=\"radio\" ref=\"radioRef\" :value=\"item.value || item.label\" :checked.prop=\"value == null ? defaultValue != null && defaultValue == item.value : value == item.value\" v-model=\"effectiveValue\" :name=\"vmId\" :disabled=\"isViewOnly\" :id=\"vmId + '_Id_' + index\" />\n {{ item.label }}\n </label>\n </div>\n </div>\n <div v-if=\"settings.layout != 1\">\n <!-- TODO magic numbers -->\n <label class=\"radio-inline\" v-for=\"[index, item] in (effectiveItems || []).entries()\" :for=\"vmId + '_Id_' + index\">\n <input type=\"radio\" ref=\"radioRef\" :value=\"item.value || item.label\" :checked.prop=\"value == null ? defaultValue != null && defaultValue == item.value : value == item.value\" v-model=\"effectiveValue\" :name=\"vmId\" :disabled=\"isViewOnly\" :id=\"vmId + '_Id_' + index\" />\n {{ item.label }}\n </label>\n </div>\n\n <ErrorList :data=\"data\" :id=\"errorId\" />\n <Comments :data=\"data\" />\n <AdminSettingsDifferences :data=\"data\" />\n </fieldset>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, computed, watch, ref } from \"vue\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { map } from \"rxjs/operators\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport type RadioGroupDef from \"../elements/RadioGroupDef\";\nimport type { RadioGroupSettings } from \"@cs-ts/radio-group-settings\";\nexport default defineComponent({\n components: {\n ...components,\n //DatePicker,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<RadioGroupDef, RadioGroupSettings>) {\n const base = setup<RadioGroupDef, RadioGroupSettings>(props);\n\n const radioRef = ref([] as HTMLInputElement[]);\n base.focus = () => {\n if (radioRef.value.length > 0) {\n radioRef.value[0].focus();\n }\n };\n\n const effectiveItems = useObservable(props.data.effectiveItems$());\n const defaultValue = useObservable(props.data.defaultValue$().pipe(map(i => (i.length ? i[0] : undefined))));\n const effectiveLabel = useObservable(props.data.effectiveLabel$());\n const effectiveLabelText = useObservable(props.data.effectiveLabelText$());\n\n const effectiveValue = computed<string | null>({\n get() {\n return (base.value.value ?? defaultValue.value) as string | null;\n },\n set(value) {\n base.value.value = value;\n },\n });\n watch(\n () => effectiveItems.value,\n (newValue, oldValue) => {\n if (newValue != null && newValue?.length > 0 && newValue?.filter(x => x.value == effectiveValue.value).length == 0) {\n base.value.value = null;\n }\n },\n );\n\n const saveAdminEdit = async () => {\n throw new Error(\"TODO\");\n //await this.$store.dispatch(\"page/invokeForm\", { type: \"AdminEdit\", target: /* TODO not unique - ForEach */ this.data.id, data: [this.value] });\n //this.isAdminEditing = false;\n };\n\n return {\n radioRef,\n\n effectiveItems,\n defaultValue,\n effectiveLabel,\n effectiveLabelText,\n effectiveValue,\n\n saveAdminEdit,\n\n ...base.expose,\n };\n },\n});\n</script>\n","import { render } from \"./RadioGroupDef.3.vue?vue&type=template&id=252a5f4a&ts=true\"\nimport script from \"./RadioGroupDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./RadioGroupDef.3.vue?vue&type=script&lang=ts\"\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=\"form-group clearfix no-focus\" :class=\"[settingsAA.isChild ? 'form-group-child' : null, colClass]\" :style=\"settingsAA.layout == 2 ? 'margin:0' : ''\">\n <!-- TODO proper hidden layout number -->\n <div v-if=\"settingsAA.layout != 2\">\n <div v-if=\"effectiveLabel == effectiveLabelText\">\n <strong class=\"control-label\">\n {{ effectiveLabelText }}\n <HelpIcon :text=\"settingsAA.helpText\" />\n </strong>\n </div>\n <output data-df-type=\"calculated\">\n <p class=\"form-control-static\" v-for=\"line in lines\">\n <span v-if=\"settingsAA.layout == 3\" v-html=\"line\"></span>\n <span v-else>{{ line }}</span>\n </p>\n </output>\n </div>\n\n <ErrorList :data=\"data\" />\n <Comments :data=\"data\" v-if=\"settingsAA.layout != 2\" />\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent } from \"vue\";\nimport { map } from \"rxjs/operators\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport type CalculatedDef from \"../elements/CalculatedDef\";\nimport { CalculatedSettings } from \"@cs-ts/calculated-settings\";\nexport default defineComponent({\n components: {\n ...components,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<CalculatedDef, CalculatedSettings>) {\n const base = setup<CalculatedDef, CalculatedSettings>(props);\n\n const lines = useObservable(\n props.data.effectiveValueList$().pipe(\n map((value: string[]) => {\n if (value) {\n return value.reduce((a, c) => {\n return a.concat((c || \"\").split(\"\\n\"));\n }, [] as string[]);\n } else {\n return [\"\"];\n }\n }),\n ),\n );\n const effectiveLabel = useObservable(props.data.effectiveLabel$());\n const effectiveLabelText = useObservable(props.data.effectiveLabelText$());\n const settings = base.expose.settings;\n\n return {\n lines,\n effectiveLabel,\n effectiveLabelText,\n\n settingsAA: settings,\n\n ...base.expose,\n };\n },\n //subscriptions() {\n // return {\n // lines: this.data.effectiveValueList$().pipe(\n // map(value => {\n // if (value) {\n // return value.reduce((a, c) => {\n // return a.concat((c || \"\").split(\"\\n\"));\n // }, []);\n // } else {\n // return [\"\"];\n // }\n // }),\n // ),\n // effectiveLabel: this.data.effectiveLabel$(),\n // effectiveLabelText: this.data.effectiveLabelText$(),\n // };\n //},\n});\n</script>\n","import { render } from \"./CalculatedDef.3.vue?vue&type=template&id=fb1c7786&ts=true\"\nimport script from \"./CalculatedDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./CalculatedDef.3.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<style scoped>\n.validation-notice {\n display: inline-block;\n background: #eeeeee;\n border-radius: 4px;\n padding: 4px 8px;\n margin-bottom: 5px;\n font-size: 0.8em;\n}\n</style>\n<template>\n <div class=\"form-group clearfix no-focus\" :class=\"[settings.isChild ? 'form-group-child' : null, colClass]\" :style=\"adminPreview && settings.serverSide ? 'display:flex' : ''\">\n <ErrorList :data=\"data\" :id=\"errorId\" />\n <AdminSettingsDifferences :data=\"data\" />\n <HelpIcon class=\"d-inline-flex ml-1\" iconClass=\"icon-warning\" v-if=\"adminPreview && settings.serverSide && !valid\" text=\"Validation on Section Change or Submit setting is ignored in Preview.\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, computed } from \"vue\";\nimport HelpIcon from \"@/lib/HelpIcon.3.vue\";\nimport { usePageStore } from \"../pageState/store\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport type ValidationDef from \"../elements/ValidationDef\";\nimport type { ValidationSettings } from \"@cs-ts/validation-settings\";\nexport default defineComponent({\n components: {\n ...components,\n HelpIcon,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<ValidationDef, ValidationSettings>) {\n const base = setup<ValidationDef, ValidationSettings>(props);\n\n const pageStore = usePageStore();\n const adminPreview = computed(() => pageStore.adminPreview);\n\n const valid = useObservable(props.data.valid$());\n\n return {\n adminPreview,\n valid,\n\n ...base.expose,\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./ValidationDef.3.vue?vue&type=style&index=0&id=7bbbd6aa&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./ValidationDef.3.vue?vue&type=style&index=0&id=7bbbd6aa&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./ValidationDef.3.vue?vue&type=template&id=7bbbd6aa&scoped=true&ts=true\"\nimport script from \"./ValidationDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./ValidationDef.3.vue?vue&type=script&lang=ts\"\n\nimport \"./ValidationDef.3.vue?vue&type=style&index=0&id=7bbbd6aa&scoped=true&lang=css\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7bbbd6aa\"]])\n\nexport default __exports__","<template>\n <div v-show=\"visible\" :class=\"[colClass]\">\n <ChildrenList :children-ids=\"children\" :view-only=\"isViewOnly\"></ChildrenList>\n <ErrorList :data=\"data\" />\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { defineComponent } from \"vue\";\nimport type DisplayIfOtherHasValueDef from \"../elements/DisplayIfOtherHasValueDef\";\nimport { DisplayIfOtherHasValueSettings } from \"@cs-ts/display-if-other-has-value-settings\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nexport default defineComponent({\n components: {\n ...components,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<DisplayIfOtherHasValueDef, DisplayIfOtherHasValueSettings>) {\n const base = setup<DisplayIfOtherHasValueDef, DisplayIfOtherHasValueSettings>(props);\n\n const visible = useObservable(props.data.visible$());\n\n return {\n visible,\n\n ...base.expose,\n };\n },\n});\n</script>\n","import { render } from \"./DisplayIfOtherHasValueDef.3.vue?vue&type=template&id=0656edc2&ts=true\"\nimport script from \"./DisplayIfOtherHasValueDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./DisplayIfOtherHasValueDef.3.vue?vue&type=script&lang=ts\"\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=\"[colClass]\">\n <div class=\"DFRRegionHeading\" v-if=\"effectiveLabel\">\n <h2 class=\"df-section-title\">\n {{ effectiveLabel }}\n <LoadingWheel :width=\"20\" v-if=\"loading\" class=\"d-inline-block\" />\n </h2>\n </div>\n <div class=\"clearfix\" style=\"margin-bottom: 10px\">\n <div>\n <div class=\"dfForEachItem clearfix\" v-for=\"childObj in childrenObj\" :key=\"childObj.child.vmId\">\n <div class=\"form-group col-md-12\">\n <ChildrenList :children-ids=\"childObj.childChildren\" :view-only=\"isViewOnly\"></ChildrenList>\n <button type=\"button\" class=\"btn btn-link dfNavButton dfNavRemoveButton\" @click=\"removeItem(childObj.child)\" v-if=\"(!isComputed || canAddRemoveItems) && !isViewOnly\" :disabled=\"(settings.min != null && settings.min >= childrenObj.length) || (settings.minCalculationId != null && calculatedMin >= childrenObj.length)\">\n <span aria-hidden=\"true\">×</span>\n <span class=\"sr-only\">{{ settings.removeText }}</span>\n </button>\n </div>\n </div>\n </div>\n <div class=\"form-group\" v-if=\"(!isComputed || canAddRemoveItems) && !isViewOnly\">\n <button type=\"button\" class=\"btn btn-outline-secondary dfNavButton\" @click=\"addItem\" :disabled=\"(settings.max != null && settings.max <= childrenObj.length) || (settings.maxCalculationId != null && calculatedMax <= childrenObj.length)\">\n <span class=\"plus-sign\" aria-hidden=\"true\">+</span>\n {{ settings.addText }}\n </button>\n </div>\n </div>\n <ErrorList :data=\"data\" />\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, onUnmounted, watch, computed } from \"vue\";\n//import { useMainStore } from \"@/mainStore\";\nimport { Observable } from \"rxjs\";\nimport ForEachDef, { ForEachDefItem } from \"../elements/ForEachDef\";\nimport { ForEachSettings } from \"@cs-ts/for-each-settings\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport LoadingWheel from \"@/lib/LoadingWheel.3.vue\";\nimport arrayEquals from \"@/lib/arrayEquals\";\nimport { useMainStore } from \"@/mainStore\";\n\nexport default defineComponent({\n components: {\n LoadingWheel,\n ...components,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<ForEachDef, ForEachSettings>) {\n const mainStore = useMainStore();\n const base = setup<ForEachDef, ForEachSettings>(props);\n\n const loading = ref(false);\n const computedSubscription = ref();\n const computedMinSubscription = ref();\n const computedMaxSubscription = ref();\n const oldIds = ref();\n const calculatedIds = ref<string[]>([]);\n const calculatedMin = ref<number>();\n const calculatedMax = ref<number>();\n const effectiveLabel = useObservable(props.data.effectiveLabel$());\n\n const isComputed = computed(() => {\n return props.data.definition.settings.calculationId != null;\n });\n const canAddRemoveItems = computed(() => {\n return props.data.definition.settings.addRemoveItems;\n });\n const childrenObj = computed(() => {\n return (props.data.children as ForEachDefItem[])\n .filter(x => x.removedChild == undefined || x.removedChild == false)\n .map(id => base.pageStore.getElementByVmId(id))\n .map(child => ({\n child,\n childChildren: base.pageStore.getChildrenByVmId(child!.vmId)!.filter(el => base.elementFilter(el)),\n }));\n });\n const computedItems = computed(() => {\n if (!isComputed.value) {\n return null;\n }\n return props.data.resolveCalculation(props.data.definition.settings.calculationId!);\n });\n const computedMinItems = computed(() => {\n if (props.data.definition.settings.minCalculationId == null) {\n return null;\n }\n return props.data.resolveCalculation(props.data.definition.settings.minCalculationId);\n });\n const computedMaxItems = computed(() => {\n if (props.data.definition.settings.maxCalculationId == null) {\n return null;\n }\n return props.data.resolveCalculation(props.data.definition.settings.maxCalculationId);\n });\n\n const subscribeToComputedItems = (computedItems$: Observable<string[]>) => {\n if (computedSubscription.value != null) {\n computedSubscription.value.unsubscribe();\n }\n computedSubscription.value = computedItems$.subscribe(items => {\n //debugger;\n calculatedIds.value = items;\n setCalculatedItems(items);\n });\n };\n const subscribeToComputedMinItems = (computedMinItems$: Observable<string[]>) => {\n if (computedMinSubscription.value != null) {\n computedMinSubscription.value.unsubscribe();\n }\n computedMinSubscription.value = computedMinItems$.subscribe(items => {\n //debugger;\n if (items.length > 0) {\n calculatedMin.value = parseInt(items[0]);\n }\n });\n };\n const subscribeToComputedMaxItems = (computedMaxItems$: Observable<string[]>) => {\n if (computedMaxSubscription.value != null) {\n computedMaxSubscription.value.unsubscribe();\n }\n computedMaxSubscription.value = computedMaxItems$.subscribe(items => {\n //debugger;\n if (items.length > 0) {\n calculatedMax.value = parseInt(items[0]);\n }\n });\n };\n const addItem = () => {\n base.pageStore.addForEachItem(base.vmId.value);\n mainStore.setLiveRegion(Promise.resolve(\"Item has been added successfully.\"));\n };\n const removeItem = (item: ForEachDefItem) => {\n base.pageStore.removeForEachItem({ forEachVmId: base.vmId.value, item: item, calculatedItems: calculatedIds.value });\n mainStore.setLiveRegion(Promise.resolve(\"Item has been deleted successfully.\"));\n };\n const setCalculatedItems = async (newIds: string[]) => {\n if (newIds == null || arrayEquals(newIds, oldIds.value)) {\n return;\n }\n if (oldIds.value != null) {\n // Don't show loading on first load\n // Fake loading for UX since we don't know when real loading started\n loading.value = true;\n setTimeout(() => {\n loading.value = false;\n }, 400);\n }\n oldIds.value = newIds;\n //if (base.pageStore.getValueByVmId.value == null) {\n // // Is this a typo?\n // return null;\n //}\n base.pageStore.setForEachChildren({ forEachVmId: base.vmId.value, ids: newIds });\n };\n\n const computedItemsV = computedItems.value;\n const computedMinItemsV = computedMinItems.value;\n const computedMaxItemsV = computedMaxItems.value;\n if (computedItemsV != null) {\n subscribeToComputedItems(computedItemsV);\n }\n if (computedMinItemsV != null) {\n subscribeToComputedMinItems(computedMinItemsV);\n }\n if (computedMaxItemsV != null) {\n subscribeToComputedMaxItems(computedMaxItemsV);\n }\n\n watch(computedItems, newComputedItems$ => {\n subscribeToComputedItems(newComputedItems$!);\n });\n watch(computedMinItems, newComputedMinItems$ => {\n subscribeToComputedMinItems(newComputedMinItems$!);\n });\n watch(computedMaxItems, newComputedMaxItems$ => {\n subscribeToComputedMaxItems(newComputedMaxItems$!);\n });\n\n onUnmounted(() => {\n if (computedSubscription.value != null) {\n computedSubscription.value.unsubscribe();\n }\n if (computedMinSubscription.value != null) {\n computedMinSubscription.value.unsubscribe();\n }\n if (computedMaxSubscription.value != null) {\n computedMaxSubscription.value.unsubscribe();\n }\n });\n\n return {\n loading,\n effectiveLabel,\n isComputed,\n childrenObj,\n canAddRemoveItems,\n calculatedMin,\n calculatedMax,\n addItem,\n removeItem,\n\n ...base.expose,\n };\n },\n});\n</script>\n","import { render } from \"./ForEachDef.3.vue?vue&type=template&id=13f16c3a&ts=true\"\nimport script from \"./ForEachDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./ForEachDef.3.vue?vue&type=script&lang=ts\"\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 \"./ForEachChildIdDef.3.vue?vue&type=template&id=40493b68\"\nconst script = {}\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 v-if=\"false\"></span>\n</template>\n<!--\n<script lang=\"ts\">\nimport BaseDefMixin from \"./BaseDefMixin.js\";\nexport default {\n mixins: [BaseDefMixin],\n props: [\"childId\"],\n};\n</script>\n-->\n","import { render } from \"./ForEachChildIndexDef.3.vue?vue&type=template&id=ee0ebb58\"\nconst script = {}\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 v-if=\"false\"></span>\n</template>\n<!--\n<script lang=\"ts\">\nimport BaseDefMixin from \"./BaseDefMixin.js\";\nexport default {\n mixins: [BaseDefMixin],\n props: [\"childIndex\"],\n};\n</script>\n-->\n","<template>\n <div class=\"dfRegion clearfix\" :class=\"[settings.cssClass, colClass]\" :style=\"{ 'padding-left': settings.indent ? settings.indent : null }\">\n <span v-html=\"settings.htmlContent\" v-show=\"settings.htmlContent\"></span>\n <ChildrenList :children-ids=\"children\" :view-only=\"isViewOnly\"></ChildrenList>\n <ErrorList :data=\"data\" />\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent } from \"vue\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport type { RegionSettings } from \"@/cs-ts-bridge/ts/region-settings\";\nimport type RegionDef from \"../elements/RegionDef\";\nexport default defineComponent({\n components: {\n ...components,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<RegionDef, RegionSettings>) {\n const base = setup<RegionDef, RegionSettings>(props);\n return { ...base.expose };\n },\n});\n</script>\n","import { render } from \"./RegionDef.3.vue?vue&type=template&id=c52701ac&ts=true\"\nimport script from \"./RegionDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./RegionDef.3.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<style scoped>\n.df-section-desc {\n padding-left: 5px;\n white-space: pre-line;\n}\n</style>\n<template>\n <div class=\"DFSectionHeading\" :class=\"[colClass]\">\n <h2 class=\"df-section-title\">{{ effectiveLabel }}</h2>\n <div v-if=\"settings.description\">\n <p class=\"df-section-desc\">{{ settings.description }}</p>\n </div>\n <div class=\"DFSectionContents clearfix\">\n <ChildrenList :children-ids=\"children\" :view-only=\"isViewOnly\"></ChildrenList>\n </div>\n <ErrorList :data=\"data\" />\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { defineComponent } from \"vue\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport type SectionDef from \"../elements/SectionDef\";\nimport type { SectionSettings } from \"@cs-ts/section-settings\";\nexport default defineComponent({\n components: {\n ...components,\n //DatePicker,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<SectionDef, SectionSettings>) {\n const base = setup<SectionDef, SectionSettings>(props);\n\n const effectiveLabel = useObservable(props.data.effectiveLabel$());\n\n return {\n effectiveLabel,\n\n ...base.expose,\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./SectionDef.3.vue?vue&type=style&index=0&id=013c9e04&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./SectionDef.3.vue?vue&type=style&index=0&id=013c9e04&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./SectionDef.3.vue?vue&type=template&id=013c9e04&scoped=true&ts=true\"\nimport script from \"./SectionDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./SectionDef.3.vue?vue&type=script&lang=ts\"\n\nimport \"./SectionDef.3.vue?vue&type=style&index=0&id=013c9e04&scoped=true&lang=css\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-013c9e04\"]])\n\nexport default __exports__","<style scoped>\n.address-form-group {\n margin-bottom: 0;\n}\n.address-block-label {\n font-size: 1em;\n}\n</style>\n<template>\n <fieldset class=\"form-group address-form-group clearfix\" :class=\"[colClass]\">\n <div v-if=\"effectiveLabel == effectiveLabelText\">\n <legend class=\"highlight-on-child-error address-block-label control-label\" :class=\"settings.required && singleLabel ? 'dfRequired' : ''\" :style=\"singleLabel ? 'margin-bottom:10px' : ''\">\n {{ effectiveLabelText }}\n <span class=\"sr-only\" v-if=\"settings.required && singleLabel\">Required</span>\n <HelpIcon :text=\"settings.helpText\" v-if=\"!isViewOnly\" />\n </legend>\n </div>\n <ChildrenList :children-ids=\"children\" :view-only=\"isViewOnly\" :force-non-live=\"settings.verifyAddress != AddressVerificationEnum.Off\"></ChildrenList>\n <div class=\"dfCompositControlChildMargin\" v-if=\"settings.showErrorsLocally\">\n <div v-for=\"(child, index) in inputsFields\" :key=\"child.vmId\">\n <ErrorList :data=\"child\" :force-non-local=\"true\" :id=\"children[index].vmId + '_Errors'\" />\n </div>\n </div>\n <Comments :data=\"data\" />\n <AdminSettingsDifferences :data=\"data\" />\n <ErrorList :data=\"data\" />\n </fieldset>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, computed, inject, watch } from \"vue\";\nimport { combineLatest, from } from \"rxjs\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { map, switchMap } from \"rxjs/operators\";\nimport { usePageStore } from \"../pageState/store\";\nimport { useMainStore } from \"@/mainStore\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport type { BaseControlDefBase, BaseElementDefBase } from \"../elements/BaseElementDef\";\nimport type AddressDef from \"../elements/AddressDef\";\nimport type { AddressSettings } from \"@cs-ts/address-settings\";\nimport type { ObservableReturnType } from \"@/lib/observableHelpers\";\nimport AddressConfirmModal from \"../dialogs/AddressConfirm.3.vue\";\nimport { showModalInjectKey, type showModal } from \"@/AppShell.3.vue.InjectKeys\";\nimport { VerifiedAddress } from \"../elements/AddressDef\";\nimport DisplayIfOtherHasValueDef from \"../elements/DisplayIfOtherHasValueDef\";\nimport { isNullOrWhitespace } from \"@/lib/whitespaceMethods\";\nimport resolvablePromise from \"@/lib/resolvablePromise\";\nimport { AddressVerificationEnum } from \"@cs-ts/address-verification-enum\";\nimport { asyncComputed } from \"@vueuse/core\";\nimport { KnownFeatureFlags } from \"@cs/KnownFeatureFlags\";\nexport default defineComponent({\n props: props,\n components: {\n ...components,\n },\n //@ts-ignore\n setup(props: Props<AddressDef, AddressSettings>) {\n const showModal = inject(showModalInjectKey) as showModal;\n const base = setup<AddressDef, AddressSettings>(props);\n const verificationPromise = ref<ReturnType<typeof resolvablePromise<void>>>(resolvablePromise());\n const pageStore = usePageStore();\n const mainStore = useMainStore();\n const isVerifying = ref(false);\n\n const addressVerifyEnabled = asyncComputed(() => {\n return mainStore.isFeatureFlagActiveAsync(KnownFeatureFlags.EnableAddressVerify.Id);\n });\n const adminReview = computed(() => pageStore.adminReview);\n const singleLabel = computed(() => (base.settings.value as AddressSettings).layout == 1);\n const currentAddressData = computed({\n get() {\n return props.data.currentAddressData;\n },\n set(value) {\n //eslint-disable-next-line vue/no-mutating-props\n props.data.currentAddressData = value;\n },\n });\n\n const allInputsFields$ = (props.data as BaseElementDefBase)._children$.pipe(\n switchMap((children: ObservableReturnType<BaseElementDefBase[\"_children$\"]>) => combineLatest(children.map(child => [from([[child]]), child._children$]).flat())),\n map(children => children.flat()),\n );\n const allInputsFields = useObservable(allInputsFields$);\n\n const inputsFields$ = allInputsFields$.pipe(\n switchMap(input => combineLatest((input as BaseControlDefBase[]).map(child => (child.visible$ ? child.visible$().pipe(map(v => (v ? child : null))) : from([child]))))),\n map(children => children.filter(i => i != null) as BaseElementDefBase[]),\n );\n const inputsFields = useObservable(inputsFields$);\n\n if (base.settings.value.verifyAddress != AddressVerificationEnum.Off) {\n const inputsFieldsEdited$ = inputsFields$.pipe(\n map(input => input.filter(i => !(i instanceof DisplayIfOtherHasValueDef))),\n switchMap(input => combineLatest((input as BaseControlDefBase[]).map(i => i.edited$()))),\n );\n const inputsFieldsEdited = useObservable(inputsFieldsEdited$);\n\n const verifyAddress = async () => {\n const deletePromise = () => {\n verificationPromise.value.resolve();\n pageStore.pendingAddressVerifications.delete(verificationPromise.value!);\n };\n const { Address1: address1, Address2: address2, City: city, State: state, Zip: zip, Country: country } = await getAddressData();\n const userEnteredAddress = { Address1: address1, Address2: address2, City: city, State: state, Zip: zip, Country: country };\n if (isNullOrWhitespace(address1) || isNullOrWhitespace(city) || isNullOrWhitespace(state) || isNullOrWhitespace(zip) || (base.settings.value.allowInternational ? isNullOrWhitespace(country) : false) || JSON.stringify(userEnteredAddress) == currentAddressData.value || isVerifying.value) {\n return;\n }\n isVerifying.value = true;\n (async () => {\n if (!pageStore.pendingAddressVerifications.has(verificationPromise.value)) {\n pageStore.pendingAddressVerifications.add(verificationPromise.value);\n }\n const otherPendingAddressVerifications = Array.from(pageStore.pendingAddressVerifications).filter(p => p !== verificationPromise.value);\n if (otherPendingAddressVerifications.length > 0) {\n await Promise.all(otherPendingAddressVerifications);\n }\n\n let suggestionPopulated = false;\n const populateSuggestedAddress = (suggested: VerifiedAddress) => {\n const address1Control = getControl(\"Address1\", true);\n const address2Control = getControl(\"Address2\", true);\n const cityControl = getControl(\"City\", true);\n const stateControl = getControl(\"State\", true);\n const zipControl = getControl(\"Zip\", true);\n const provinceControl = getControl(\"Province\", true);\n const regionControl = getControl(\"Region\", true);\n const postalCodeControl = getControl(\"PostalCode\", true);\n const countryControl = getControl(\"Country\", true);\n\n const address1 = suggested.Address1 ?? \"\";\n const address2 = suggested.Address2 ?? \"\";\n const city = suggested.City ?? \"\";\n const state = suggested.State ?? \"\";\n const zip = suggested.ZipCode ?? \"\";\n const country = suggested.Country ?? \"\";\n\n address1Control?.setValue(address1);\n address2Control?.setValue(address2);\n cityControl?.setValue(city);\n (stateControl ?? provinceControl ?? regionControl)?.setValue(state);\n (zipControl ?? postalCodeControl)?.setValue(zip);\n countryControl?.setValue(country);\n\n suggestionPopulated = true;\n currentAddressData.value = JSON.stringify({ Address1: address1, Address2: address2, City: city, State: state, Zip: zip, Country: country });\n };\n\n const { Success: success, AddressChanged: addressChanged, Result: suggestedAddress } = await props.data.verifyAddress(JSON.stringify(userEnteredAddress));\n if (success && addressChanged) {\n showModal(\n AddressConfirmModal,\n {\n data: props.data,\n userEnteredAddress,\n suggestedAddress,\n populateSuggestedAddress,\n triggerElement: document.activeElement,\n },\n {\n \"before-close\"() {\n if (base.settings.value.verifyAddress == AddressVerificationEnum.Verify && !suggestionPopulated) {\n currentAddressData.value = JSON.stringify(userEnteredAddress);\n } else if (base.settings.value.verifyAddress == AddressVerificationEnum.VerifyReFormat) {\n populateSuggestedAddress(suggestedAddress);\n }\n deletePromise();\n },\n },\n {\n ...(base.settings.value.verifyAddress == AddressVerificationEnum.Verify ? { \"click-to-close\": false } : {}),\n },\n );\n } else {\n deletePromise();\n }\n await verificationPromise.value;\n })().finally(() => {\n isVerifying.value = false;\n deletePromise();\n verificationPromise.value = resolvablePromise();\n });\n };\n const getAddressData = async () => {\n const getValue = (name: string) => getControl(name)?.effectiveValueList();\n const address1 = (await getValue(\"Address1\"))?.[0] ?? \"\";\n const address2 = (await getValue(\"Address2\"))?.[0] ?? \"\";\n const city = (await getValue(\"City\"))?.[0] ?? \"\";\n const state = (await (getValue(\"State\") ?? getValue(\"Province\") ?? getValue(\"Region\")))?.[0] ?? \"\";\n const zip = (await (getValue(\"Zip\") ?? getValue(\"PostalCode\")))?.[0] ?? \"\";\n const country = (await getValue(\"Country\"))?.[0] ?? \"\";\n\n return { Address1: address1, Address2: address2, City: city, State: state, Zip: zip, Country: country };\n };\n const getControl = (name: string, includeAll: boolean = false) => {\n return ((includeAll ? allInputsFields.value : inputsFields.value) ?? [])?.find(i => i.id?.includes(name)) as BaseControlDefBase | null;\n };\n\n watch(inputsFieldsEdited, () => {\n if (addressVerifyEnabled.value && !isVerifying.value) {\n verifyAddress();\n }\n });\n }\n\n return {\n AddressVerificationEnum,\n singleLabel,\n inputsFields,\n effectiveLabel: useObservable(props.data.effectiveLabel$()),\n effectiveLabelText: useObservable(props.data.effectiveLabelText$()),\n ...base.expose,\n adminReview,\n };\n },\n});\n</script>\n","<style lang=\"less\" scoped>\n@import \"/lib/Colors.less\";\n.modal-content {\n width: min(90vw, 600px);\n}\n.address-group {\n gap: 1.25em;\n\n .address-options {\n flex-grow: 1;\n padding: 1em 1em 0.75em;\n border: 1px solid @bs-table-border-color;\n }\n}\n</style>\n<template>\n <div class=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">Address Verification</h2>\n <button v-if=\"type == AddressVerificationEnum.VerifyReFormat\" type=\"button\" class=\"close icon icon-close\" aria-hidden=\"true\" @click=\"$emit('close')\" autofocus aria-label=\"Close\" />\n </div>\n <div class=\"modal-body\">\n <p describedby-text v-if=\"type == 1\">We are not able to verify your address, but found a close match.</p>\n <p describedby-text v-else-if=\"type == 2\">Address entered has been verified and updated.</p>\n <div class=\"row no-gutters address-group\">\n <div class=\"address-options\">\n <p class=\"mb-0\">{{ userEnteredAddress.Address1 }}</p>\n <p class=\"mb-0\" v-if=\"userEnteredAddress.Address2\">{{ userEnteredAddress.Address2 }}</p>\n <p class=\"mb-0\">\n <span>{{ userEnteredAddress.City }}</span>\n <span>, </span>\n <span>{{ userEnteredAddress.State }}</span>\n <span> </span>\n <span>{{ userEnteredAddress.Zip }}</span>\n </p>\n <p class=\"mb-0\" v-if=\"userEnteredAddress.Country\">{{ userEnteredAddress.Country }}</p>\n <button type=\"button\" id=\"useAsEntered\" class=\"btn btn-outline-secondary mt-3 w-100\" v-if=\"type == 1\" @click.prevent=\"$emit('close')\">Use as entered</button>\n </div>\n <div class=\"address-options\">\n <p class=\"mb-0\" :class=\"{ 'font-weight-bold': !isEqual(suggestedAddress.Address1, 'Address1') }\">{{ suggestedAddress.Address1 }}</p>\n <p class=\"mb-0\" :class=\"{ 'font-weight-bold': !isEqual(suggestedAddress.Address2, 'Address2') }\" v-if=\"suggestedAddress.Address2\">{{ suggestedAddress.Address2 }}</p>\n <p class=\"mb-0\">\n <span :class=\"{ 'font-weight-bold': !isEqual(suggestedAddress.City, 'City') }\">\n {{ suggestedAddress.City }}\n </span>\n <span>, </span>\n <span :class=\"{ 'font-weight-bold': !isEqual(suggestedAddress.State, 'State') }\">\n {{ suggestedAddress.State }}\n </span>\n <span> </span>\n <span :class=\"{ 'font-weight-bold': !isEqual(suggestedAddress.ZipCode, 'Zip') }\">\n {{ suggestedAddress.ZipCode }}\n </span>\n </p>\n <p class=\"mb-0\" :class=\"{ 'font-weight-bold': !isEqual(suggestedAddress.Country, 'Country') }\" v-if=\"suggestedAddress.Country\">{{ suggestedAddress.Country }}</p>\n <button type=\"button\" id=\"useSuggested\" class=\"btn btn-primary mt-3 w-100\" v-if=\"type == 1\" @click.prevent=\"populateSuggested\">Use suggested</button>\n </div>\n </div>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { computed, defineComponent, ref, SetupContext } from \"vue\";\nimport { dialogSetup, DialogProps } from \"@/lib/dialogMixin.3\";\nimport AddressDef, { VerifiedAddress } from \"../elements/AddressDef\";\nimport { AddressVerificationEnum } from \"@cs-ts/address-verification-enum\";\ntype VerifiedAddressExtended = VerifiedAddress & { Zip?: string };\ntype Props = {\n data: AddressDef;\n userEnteredAddress: VerifiedAddressExtended;\n suggestedAddress: VerifiedAddressExtended;\n populateSuggestedAddress: (suggested: VerifiedAddressExtended) => void;\n} & DialogProps;\nexport default defineComponent({\n props: [\"data\", \"userEnteredAddress\", \"suggestedAddress\", \"populateSuggestedAddress\", \"triggerElement\"],\n setup(props: Props, { emit }: SetupContext) {\n const containerRef = ref<HTMLElement>(null!);\n dialogSetup(containerRef);\n\n const type = computed(() => props.data.definition.settings.verifyAddress);\n\n const populateSuggested = async () => {\n props.populateSuggestedAddress(props.suggestedAddress);\n emit(\"close\");\n };\n const isEqual = (suggestedData: \"string\", prop: keyof VerifiedAddressExtended) => {\n return suggestedData == props.userEnteredAddress[prop];\n };\n\n return {\n AddressVerificationEnum,\n container: containerRef,\n type,\n isEqual,\n populateSuggested,\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./AddressConfirm.3.vue?vue&type=style&index=0&id=37483b26&lang=less&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./AddressConfirm.3.vue?vue&type=style&index=0&id=37483b26&lang=less&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./AddressConfirm.3.vue?vue&type=template&id=37483b26&scoped=true&ts=true\"\nimport script from \"./AddressConfirm.3.vue?vue&type=script&lang=ts\"\nexport * from \"./AddressConfirm.3.vue?vue&type=script&lang=ts\"\n\nimport \"./AddressConfirm.3.vue?vue&type=style&index=0&id=37483b26&lang=less&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-37483b26\"]])\n\nexport default __exports__","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./AddressDef.3.vue?vue&type=style&index=0&id=61fadea4&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./AddressDef.3.vue?vue&type=style&index=0&id=61fadea4&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./AddressDef.3.vue?vue&type=template&id=61fadea4&scoped=true&ts=true\"\nimport script from \"./AddressDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./AddressDef.3.vue?vue&type=script&lang=ts\"\n\nimport \"./AddressDef.3.vue?vue&type=style&index=0&id=61fadea4&scoped=true&lang=css\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-61fadea4\"]])\n\nexport default __exports__","<style scoped>\n.address-form-group {\n margin-bottom: 0;\n}\n.address-block-label {\n font-size: 1em;\n}\n</style>\n<template>\n <fieldset class=\"form-group clearfix\" :class=\"[colClass]\">\n <legend :aria-label=\"effectiveLabelText\" class=\"highlight-on-child-error address-block-label control-label\" v-if=\"effectiveLabelText == effectiveLabel\" :class=\"settings.required && singleLabel ? 'dfRequired' : ''\" :style=\"singleLabel ? 'margin-bottom:10px' : ''\">\n {{ effectiveLabelText }}\n <HelpIcon :text=\"settings.helpText\" v-if=\"!isViewOnly\" />\n </legend>\n\n <ChildrenList :children-ids=\"children\" :view-only=\"isViewOnly\"></ChildrenList>\n\n <div class=\"dfCompositControlChildMargin\" data-ng-bind=\"settings.showErrorsLocally\">\n <div v-for=\"child in children\">\n <ErrorList :data=\"child\" :force-non-local=\"true\" :id=\"child.vmId + '_Errors'\" />\n </div>\n </div>\n <Comments :data=\"data\" />\n <AdminSettingsDifferences :data=\"data\" />\n </fieldset>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, computed } from \"vue\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport type DatePickerDef from \"../elements/DatePickerDef\";\nimport { DatePickerSettings } from \"@cs-ts/date-picker-settings\";\nimport { useObservable } from \"@vueuse/rxjs\";\nexport default defineComponent({\n components: {\n ...components,\n //DatePicker,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<DatePickerDef, DatePickerSettings>) {\n const base = setup<DatePickerDef, DatePickerSettings>(props);\n\n const singleLabel = computed(() => base.settings.value.layout == 2 || base.settings.value.datePeriod == 0); // combined or year (which is always one label)\n\n const effectiveLabel = useObservable(props.data.effectiveLabel$());\n const effectiveLabelText = useObservable(props.data.effectiveLabelText$());\n\n return {\n singleLabel,\n effectiveLabel,\n effectiveLabelText,\n\n ...base.expose,\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./DatePickerDef.3.vue?vue&type=style&index=0&id=7883c014&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./DatePickerDef.3.vue?vue&type=style&index=0&id=7883c014&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./DatePickerDef.3.vue?vue&type=template&id=7883c014&scoped=true&ts=true\"\nimport script from \"./DatePickerDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./DatePickerDef.3.vue?vue&type=script&lang=ts\"\n\nimport \"./DatePickerDef.3.vue?vue&type=style&index=0&id=7883c014&scoped=true&lang=css\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7883c014\"]])\n\nexport default __exports__","<template>\n <div class=\"clearfix\" :class=\"[settings.cssClass, colClass]\" :style=\"{ 'padding-left': settings.indent ? settings.indent : null }\">\n <span v-html=\"effectiveHtmlContent\" v-show=\"effectiveHtmlContent\"></span>\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent } from \"vue\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport type ContentDef from \"../elements/ContentDef\";\nimport type { ContentSettings } from \"@cs-ts/content-settings\";\nexport default defineComponent({\n components: {\n ...components,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<ContentDef, ContentSettings>) {\n const base = setup<ContentDef, ContentSettings>(props);\n const effectiveHtmlContent = useObservable(props.data.effectiveHtmlContent$());\n\n return {\n effectiveHtmlContent,\n ...base.expose,\n };\n },\n});\n</script>\n","import { render } from \"./ContentDef.3.vue?vue&type=template&id=e9faed04&ts=true\"\nimport script from \"./ContentDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./ContentDef.3.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<style scoped lang=\"less\">\n::v-deep {\n .vs__selected-options {\n flex-wrap: nowrap;\n white-space: nowrap;\n overflow: hidden;\n > .vs__selected {\n position: absolute;\n left: 1px;\n }\n > .vs__selected,\n > .vs__selected + .vs__search {\n font-size: var(--vs-font-size);\n margin: 0;\n padding: 0.375rem 0.75rem;\n }\n }\n .vs__dropdown-menu {\n position: absolute;\n z-index: 1002; // To avoid being overlapped by modal\n // add line-height to possible empty item text/label\n > .vs__dropdown-option span:before {\n content: \"\\200b\"; /* insert a zero-width space */\n line-height: inherit;\n }\n }\n .vs__dropdown-toggle {\n height: calc(1.5em + 0.75rem + 2px);\n padding: 0;\n background: white;\n }\n}\n</style>\n<template>\n <div class=\"form-group focus-form-group dropdown-form-group clearfix\" :class=\"[settings.isChild ? 'form-group-child' : null, colClass, customErrorClass]\">\n <p class=\"pdf-inline\" v-if=\"isViewOnly\">\n <strong class=\"display-label\">{{ effectiveLabel || effectiveLabelText }}:</strong>\n <span class=\"display-value\" v-show=\"effectiveValue\">{{ effectiveValue }}</span>\n <button class=\"passthrough icon icon-edit mr-1\" type=\"button\" v-if=\"showAdminEditControls\" @click.prevent=\"startAdminEdit\"><span class=\"sr-only\">Edit</span></button>\n </p>\n <template v-else>\n <div :class=\"[settings.isChild ? 'form-group-child' : null]\">\n <label :aria-label=\"effectiveLabelText\" class=\"control-label\" :for=\"vmId\" :class=\"{ dfRequired: settings.required, dfOptional: !settings.required, 'sr-only': effectiveLabelText != effectiveLabel }\">\n {{ effectiveLabelText }}\n <HelpIcon :label=\"effectiveLabelText\" :text=\"settings.helpText\" />\n <button class=\"passthrough icon icon-close mr-1\" type=\"button\" v-if=\"isAdminEditing\" @click.prevent=\"cancelAdminEdit\" aria-label=\"Stop Edit\" />\n </label>\n <div v-if=\"isDropdownSearchable\">\n <v-select\n ref=\"dropdown\"\n v-model=\"searchableDropdownValue\"\n @search=\"\n () => {\n dropdown.open = true;\n }\n \"\n @search:focus=\"openDropdown\"\n @search:blur=\"onBlur\"\n @option:selected=\"onOptionSelect\"\n :map-keydown=\"keydownHandlers\"\n :options=\"getAllItems\"\n :get-option-key=\"(option: any) => option.id\"\n :inputId=\"vmId\"\n :selectable=\"(option: any) => !option.hasOwnProperty('isGroupLabel')\"\n label=\"text\"\n :clearable=\"false\"\n :class=\"[settings.required ? 'dfRequired' : null, settings.placeholderText ? 'dfHasPlaceholder dfGhosted' : null]\"\n >\n <template #option=\"{ text, groupName, isGroupLabel }\">\n <span v-if=\"isGroupLabel\" class=\"font-weight-bold\">\n {{ groupName }}\n </span>\n <span v-else>\n {{ text }}\n </span>\n </template>\n </v-select>\n </div>\n <div v-else>\n <select ref=\"dropdown\" class=\"form-control\" v-model=\"effectiveValue\" @blur=\"data.markEdited()\" :id=\"vmId\" :aria-required=\"settings.required ? 'true' : 'false'\" :aria-describedby=\"errorIds\" :class=\"[settings.required ? 'dfRequired' : null, settings.placeholderText ? 'dfHasPlaceholder dfGhosted' : null]\">\n <option :value=\"item.effectiveValue\" v-for=\"item in ungroupedItems\">{{ item.text }}</option>\n <optgroup :label=\"group.key\" v-for=\"group in groupedItems\">\n <option :value=\"item.effectiveValue\" v-for=\"item in group.items\">{{ item.text }}</option>\n </optgroup>\n </select>\n </div>\n </div>\n </template>\n <ErrorList :data=\"data\" :id=\"errorId\" />\n <Comments :data=\"data\" />\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, computed, nextTick } from \"vue\";\nimport { useMainStore } from \"@/mainStore\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { map } from \"rxjs/operators\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport { isNullOrWhitespace, stringCoalesce } from \"@/lib/whitespaceMethods\";\nimport type DropDownListDef from \"../elements/DropDownListDef\";\nimport type { DropDownListSettings } from \"@cs-ts/drop-down-list-settings\";\nimport vSelect from \"vue-select\";\nimport \"vue-select/dist/vue-select.css\";\nimport { ObservableReturnType } from \"@/lib/observableHelpers\";\nimport { computedAsync } from \"@vueuse/core\";\nimport delayPromise from \"@/lib/delayPromise\";\n\nexport default defineComponent({\n components: {\n ...components,\n \"v-select\": vSelect,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<DropDownListDef, DropDownListSettings>) {\n const base = setup<DropDownListDef, DropDownListSettings>(props);\n\n const dropdown = ref<InstanceType<typeof vSelect>>(null!);\n\n const defaultValue = useObservable(props.data.defaultValue$().pipe(map(i => (i.length > 0 ? i[0] : null))));\n const hasValue = useObservable(props.data.hasValue$(), { initialValue: false });\n const groupedItems = useObservable(props.data.groupedItems$());\n const ungroupedItems = useObservable(props.data.ungroupedItems$());\n const effectiveLabel = useObservable(props.data.effectiveLabel$());\n const effectiveLabelText = useObservable(props.data.effectiveLabelText$());\n type groupedItemsType = ObservableReturnType<ReturnType<typeof props.data.groupedItems$>>;\n type itemType = groupedItemsType[0][\"items\"][0];\n\n const hasDefaultValue = computed(() => {\n return !isNullOrWhitespace(defaultValue.value);\n });\n const effectiveValue = computed({\n get() {\n return hasValue.value ? base.value.value : defaultValue.value;\n },\n set(value) {\n base.value.value = value as string | null;\n },\n });\n const effectivePlaceholderText = computed(() => {\n return stringCoalesce(defaultValue.value, base.settings.value.placeholderText);\n });\n\n type groupedItem = itemType | ({ groupName: string; isGroupLabel?: boolean } & Partial<itemType>);\n let cache = null as null | groupedItem[];\n const arraysEqual = (a: object[], b: object[]) => {\n return Array.isArray(a) && Array.isArray(b) && a.length === b.length && a.every((val, index) => JSON.stringify(val) === JSON.stringify(b[index]));\n };\n const getAllItems = computed(() => {\n const groupedItemsI = (groupedItems.value || []).reduce((acc: groupedItem[], value: groupedItemsType[0]) => {\n acc.push({ groupName: value.key, isGroupLabel: true, text: null! });\n acc.push(...value.items);\n return acc;\n }, [] as groupedItem[]);\n\n const result = [...(ungroupedItems.value || []), ...groupedItemsI].map((item: groupedItem, id) => ({ ...item, id })) as groupedItem[];\n // TODO is this needed?\n if (cache == null || !arraysEqual(result, cache)) {\n cache = result;\n }\n return cache;\n });\n\n const searchableDropdownValue = computed({\n get() {\n return getAllItems.value?.find(item => item.effectiveValue == effectiveValue.value);\n },\n set(option) {\n effectiveValue.value = option!.effectiveValue;\n },\n });\n\n const mainStore = useMainStore();\n const isDropdownSearchable = computedAsync(() => {\n return mainStore.isFeatureFlagActiveAsync(\"SearchableDropdown\");\n }, null);\n\n const openDropdown = async () => {\n // Set search input's own aria label and required data if no selected option\n dropdown.value.searchEl.closest(\"[role='combobox']\").setAttribute(\"aria-label\", effectiveLabelText.value);\n dropdown.value.searchEl.closest(\"[role='combobox']\").setAttribute(\"aria-describedby\", base.errorIds.value);\n dropdown.value.searchEl.setAttribute(\"required\", base.settings.value.required.toString());\n\n // To handle first change event emitted from search element if ever user autofilled dropdown value\n dropdown.value.searchEl.addEventListener(\"change\", searchOnChange, { once: true, passive: true });\n\n await nextTick();\n dropdown.value.$el.querySelectorAll(\"ul\").forEach((elem: HTMLElement) => {\n elem.setAttribute(\"aria-label\", effectiveLabelText.value!);\n elem.setAttribute(\"aria-required\", base.settings.value.required.toString());\n elem.setAttribute(\"aria-describedby\", base.errorIds.value);\n });\n };\n const onBlur = async () => {\n // Remove event listener if autocomplete didn't trigger search element's change event\n dropdown.value.searchEl.removeEventListener(\"change\", searchOnChange);\n await delayPromise(0);\n dropdown.value.open = false;\n props.data.markEdited();\n };\n const searchOnChange = (event: Event) => {\n const selectedOption = (cache ?? []).find(item => item.text == (event.target as HTMLInputElement).value);\n if (selectedOption) {\n dropdown.value.updateValue(selectedOption);\n }\n };\n // TODO: Remove if vue-select beta version is updated to support default searchEl focus on after option select\n const onOptionSelect = async () => {\n await openDropdown();\n focusSearchableDropdown();\n };\n const keydownHandlers = (keydownMap: Record<string, (event?: Event) => void>, dropdownVm: InstanceType<typeof vSelect>) => {\n return {\n ...keydownMap,\n // Tab\n 9: () => {\n dropdownVm.open = false;\n keydownMap[\"9\"]();\n },\n // Enter\n 13: (event: Event) => {\n if (dropdownVm.open) {\n keydownMap[\"13\"](event);\n focusSearchableDropdown();\n } else {\n event.preventDefault();\n dropdownVm.open = true;\n }\n },\n // Spacebar\n // TODO: Remove if vue-select beta version is updated to support dropdown open on spacebar\n 32: (event: Event) => {\n if (!dropdownVm.open) {\n event.preventDefault();\n dropdownVm.open = true;\n }\n },\n // Arrow Up\n // TODO: Remove if vue-select beta version is updated to support dropdown open on arrow up\n 38: (event: Event) => {\n keydownMap[\"38\"](event);\n dropdownVm.open = true;\n },\n // Arrow Down\n // TODO: Remove if vue-select beta version is updated to support dropdown open on arrow down\n 40: (event: Event) => {\n keydownMap[\"40\"](event);\n dropdownVm.open = true;\n },\n };\n };\n const doFocus = () => {\n if (dropdown.value == null) return;\n if (isDropdownSearchable.value == null) {\n setTimeout(doFocus, 100);\n } else {\n if (isDropdownSearchable.value) {\n focusSearchableDropdown();\n } else {\n dropdown.value.focus();\n }\n }\n };\n const focusSearchableDropdown = async () => {\n dropdown.value.searchEl.focus();\n await delayPromise(0);\n dropdown.value.open = false;\n };\n\n base.focus = doFocus;\n\n window.addEventListener(\n \"focus\",\n () => {\n if (document.activeElement == dropdown.value?.searchEl) {\n doFocus();\n }\n },\n { passive: true },\n );\n\n return {\n dropdown,\n\n defaultValue,\n hasValue,\n groupedItems,\n ungroupedItems,\n effectiveLabel,\n effectiveLabelText,\n hasDefaultValue,\n effectiveValue,\n effectivePlaceholderText,\n getAllItems,\n searchableDropdownValue,\n isDropdownSearchable,\n keydownHandlers,\n openDropdown,\n onOptionSelect,\n onBlur,\n\n ...base.expose,\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./DropDownListDef.3.vue?vue&type=style&index=0&id=d7017ed0&scoped=true&lang=less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./DropDownListDef.3.vue?vue&type=style&index=0&id=d7017ed0&scoped=true&lang=less\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./DropDownListDef.3.vue?vue&type=template&id=d7017ed0&scoped=true&ts=true\"\nimport script from \"./DropDownListDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./DropDownListDef.3.vue?vue&type=script&lang=ts\"\n\nimport \"./DropDownListDef.3.vue?vue&type=style&index=0&id=d7017ed0&scoped=true&lang=less\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-d7017ed0\"]])\n\nexport default __exports__","<style scoped lang=\"less\">\n.secondary:before {\n color: #bbbbbb;\n}\nth .btn {\n font-weight: inherit;\n}\n.icon-sortable:before {\n color: #bbbbbb;\n}\n</style>\n<template>\n <div class=\"form-group focus-form-group dropdown-form-group clearfix\" :class=\"[settings.isChild ? 'form-group-child' : null, colClass]\">\n <div v-if=\"allowExportTableData && !allowSelectedExport\" class=\"float-right mb-2\"><button class=\"export-btn btn btn-outline-secondary btn-sm mb-1\" @click.prevent=\"startExport('CSV', 'Export All')\">Export to CSV</button></div>\n <div v-if=\"allowExportTableData && allowSelectedExport\" class=\"float-right mb-2\">\n <div class=\"dropdown btn-group btn-group-sm\">\n <button type=\"button\" data-toggle=\"dropdown\" data-trigger=\"hover\" class=\"export-btn btn btn-outline-secondary btn-sm dropdown-toggle\" @click.prevent.stop=\"toggleDropdown($event)\">Export to CSV</button>\n <ul class=\"dropdown-menu\">\n <li class=\"nav-item\" v-for=\"(value, key) of exportSchemas\">\n <input type=\"submit\" class=\"btn btn-bare\" @click.prevent=\"startExport(value.type, value.schema)\" name=\"Action\" :value=\"key\" />\n </li>\n </ul>\n </div>\n </div>\n <table class=\"table table-responsive-md\" v-if=\"!isViewOnly || showSelectColumn\">\n <thead>\n <tr>\n <th v-if=\"showSelectColumn\"><span class=\"sr-only\">Select</span></th>\n <th v-if=\"showIndexColumn && !isViewOnly\"><span aria-hidden=\"true\">#</span><span class=\"sr-only\">Column Index</span></th>\n <th :id=\"vmId + 'S' + columnIndex\" v-for=\"(column, columnIndex) in settings.tableColumns\">\n <button type=\"button\" role=\"button\" class=\"btn btn-bare p-0\" @click.prevent=\"toggleSort(column.datasourceColumn)\">\n {{ stringCoalesce(column.displayLabel, column.datasourceColumn) }}\n <span class=\"icon\" :class=\"sortIcon[sortDir(column.datasourceColumn)]\"></span>\n <!--\n {{ sortDirDisplay(column.datasourceColumn) }}\n --></button>\n </th>\n </tr>\n </thead>\n <tbody>\n <template v-if=\"isViewOnly\">\n <tr v-for=\"row in data.selectedRows\">\n <td>\n <input :type=\"selectMultiple ? 'checkbox' : 'radio'\" checked disabled />\n </td>\n <!--\n <td v-if=\"showIndexColumn\">{{ rowIndex + 1 }}</td>\n -->\n <td v-for=\"(cell, cellIndex) in row\">\n <template v-if=\"settings.tableColumns[cellIndex].displayType == ColumnDisplayType.Html\">\n <div v-html=\"cell\"></div>\n </template>\n <template v-else>\n {{ cell }}\n </template>\n </td>\n </tr>\n </template>\n <tr v-else-if=\"rows == null || (rows.length == 0 && inputEffectiveDiffer)\">\n <td :colspan=\"(showSelectColumn ? 1 : 0) + (showIndexColumn ? 1 : 0) + settings.tableColumns.length\" class=\"text-center\">\n <LoadingWheel width=\"64\" />\n </td>\n </tr>\n <template v-else>\n <tr v-for=\"(row, rowIndex) in rows\" :class=\"{ 'table-active': selectMultiple ? selected.includes(rowIndex) : selected == rowIndex }\">\n <td v-if=\"inputEffectiveDiffer\" :colspan=\"(showSelectColumn ? 1 : 0) + (showIndexColumn ? 1 : 0) + settings.tableColumns.length\" class=\"text-center\"><LoadingWheel width=\"16\" class=\"d-inline-block\" /> Loading...</td>\n <template v-else>\n <td v-if=\"showSelectColumn\">\n <label class=\"sr-only\" :for=\"vmId + 'selector' + rowIndex\">Select Row</label>\n <input :type=\"selectMultiple ? 'checkbox' : 'radio'\" v-model=\"selected\" :id=\"vmId + 'selector' + rowIndex\" :name=\"vmId + 'selector'\" :value=\"rowIndex\" />\n </td>\n <td v-if=\"showIndexColumn\">{{ effectiveSkip + rowIndex + 1 }}</td>\n <td v-for=\"key in settings.tableColumns\">\n <template v-if=\"key.displayType == ColumnDisplayType.Html\">\n <div v-html=\"row[key.datasourceColumn]\"></div>\n </template>\n <template v-else>\n {{ row[key.datasourceColumn] }}\n </template>\n </td>\n </template>\n </tr>\n </template>\n </tbody>\n <tfoot v-if=\"!isViewOnly && rows != null\">\n <tr v-if=\"rowsCount > (settings.defaultPageSize || 5)\">\n <td :colspan=\"(showSelectColumn ? 1 : 0) + (showIndexColumn ? 1 : 0) + settings.tableColumns.length\">\n <div class=\"d-flex\">\n <div class=\"d-flex align-items-center\">\n <button class=\"btn btn-sm btn-outline-secondary\" type=\"button\" :id=\"vmId + 'B'\" @click.prevent=\"back\" :disabled=\"skip <= 0\">Back</button>\n \n <label :for=\"vmId + 'P'\" class=\"mb-0 ml-1\">Page:</label>\n \n <select :id=\"vmId + 'P'\" v-model=\"skip\" class=\"form-control form-control-sm w-auto d-inline px-0 mx-1 text-center\">\n <option v-for=\"i of pageOptions\" :value=\"i.value\">{{ i.label }}</option>\n </select>\n / {{ pages }}\n \n <button class=\"btn btn-sm btn-outline-secondary\" type=\"button\" :id=\"vmId + 'N'\" @click.prevent=\"next\" :disabled=\"skip + top >= rowsCount\">Next</button>\n </div>\n <div class=\"d-flex align-items-center ml-auto pl-5\">\n <label :for=\"vmId + 'PS'\" class=\"mb-0\">Page Size:</label>\n <select :id=\"vmId + 'PS'\" v-model=\"top\" class=\"form-control form-control-sm w-auto d-inline px-0 ml-2 text-center\">\n <option :value=\"5\">5</option>\n <option :value=\"25\">25</option>\n <option :value=\"50\">50</option>\n <option :value=\"100\">100</option>\n </select>\n </div>\n </div>\n </td>\n </tr>\n </tfoot>\n </table>\n <ErrorList :data=\"data\" />\n <Comments :data=\"data\" />\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nconst MULTIPLE_COLUMN_SORT = false;\nimport { defineComponent, ref, watch, computed, nextTick } from \"vue\";\nimport { SelectionType } from \"@cs/SelectionType\";\nimport { ColumnDisplayType } from \"@cs/ColumnDisplayType\";\nimport { isNullOrWhitespace, stringCoalesce } from \"@/lib/whitespaceMethods\";\nimport { switchMap, map } from \"rxjs/operators\";\nimport { useMainStore } from \"@/mainStore\";\nimport { useObservable, from } from \"@vueuse/rxjs\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport LoadingWheel from \"@/lib/LoadingWheel.3.vue\";\nimport type DataTableDef from \"../elements/DataTableDef\";\nimport type { DataTableSettings } from \"@cs-ts/data-table-settings\";\nimport { fromWithCurrent } from \"@/lib/observableHelpers\";\nimport { BuiltinExportSchemas } from \"@cs/BuiltinExportSchemas\";\nimport { throwIfNonSuccessStatus } from \"@/lib/fetchHelpers.3\";\nimport { KeyValue } from \"@cs/KeyValue\";\nimport { toggleDropdown } from \"@/lib/toggleDropdown.3\";\n\nconst sortIcon = {\n null: \"icon-sortable\",\n \"asc primary\": \"icon-ascend\",\n \"desc primary\": \"icon-descend\",\n \"asc secondary\": \"icon-ascend secondary\",\n \"desc secondary\": \"icon-descend secondary\",\n};\nconst exportSchemas = Object.entries(BuiltinExportSchemas.MAP).reduce(\n (a, [k, v]) => {\n const l = v == \"\" ? \"Export All\" : \"Export Selected\";\n a[l] = { type: \"CSV\", schema: l };\n return a;\n },\n {} as Record<string, { type: string; schema: string }>,\n);\ninterface NavigatorWithMsSaveOrOpenBlob extends Navigator {\n msSaveOrOpenBlob?: (blob: Blob, filename?: string) => boolean;\n}\nexport default defineComponent({\n components: {\n LoadingWheel,\n ...components,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<DataTableDef, DataTableSettings>) {\n const base = setup<DataTableDef, DataTableSettings>(props);\n const skip = ref(0);\n const top = ref(5);\n const sort = ref([] as [string, string][]);\n const inited = ref(false);\n const updating = ref(false);\n const exportRowData = ref([] as KeyValue[][]);\n const mainStore = useMainStore();\n\n const rowsData = useObservable(\n //@ts-ignore VUE2 issue?\n from<boolean>(inited).pipe(\n switchMap(i => {\n if (!i) return from([{ data: {}, dataCount: 0 }]) as ReturnType<typeof props.data.rows$>;\n return props.data.rows$(fromWithCurrent(skip), fromWithCurrent(top), fromWithCurrent(sort));\n }),\n map(i => {\n return {\n ...i,\n skip: skip.value,\n top: top.value,\n sort: sort.value,\n };\n }),\n ),\n );\n if (props.data.definition.settings.dataSourceCalculationId != null) {\n const filterData = useObservable(props.data.resolveCalculation(props.data.definition.settings.dataSourceCalculationId));\n watch(\n () => filterData.value,\n () => {\n const skipCeil = Math.ceil((skip.value ?? 0) / top.value);\n if (pages.value <= skipCeil && pages.value > 0) {\n skip.value = (pages.value - 1) * top.value;\n }\n },\n );\n }\n\n const allowExportTableData = computed(() => {\n return props.data.definition.settings.allowExport ?? true;\n });\n\n const selected = computed({\n get() {\n const result = [];\n const keys = props.data.definition.settings.tableColumns.map(i => i.datasourceColumn!);\n const dataRows = rows.value ?? [];\n const selectedRows = props.data.selectedRows;\n for (const selectedRow of selectedRows ?? []) {\n for (let r = 0; r < dataRows.length; r++) {\n if (keys.every((k, i) => selectedRow[i] == dataRows[r][k])) {\n result.push((effectiveSkip.value ?? 0) + r);\n }\n }\n }\n const boundResult = result.filter(i => i < (effectiveSkip.value ?? 0) + (effectiveTop.value ?? 0) && i >= (effectiveSkip.value ?? 0)).map(i => i - (effectiveSkip.value ?? 0));\n if (selectMultiple.value) {\n return boundResult;\n } else {\n return boundResult.length ? boundResult[0] : null;\n }\n },\n set(newValue) {\n if (updating.value) return;\n const keys = props.data.definition.settings.tableColumns.map(i => i.datasourceColumn!);\n const dataRows = rows.value ?? [];\n if (selectMultiple.value) {\n const match = (dataRow: Record<string, string>, selectedRow: string[]) => keys.every((k, i) => dataRow[k] == selectedRow[i]);\n const selectedRows = props.data.selectedRows as string[][];\n const add = (newValue as number[]).map(i => dataRows[i]);\n const remove = dataRows.filter(i => !add.some(j => i == j));\n const consider = selectedRows.slice();\n const add2 = add.filter(d => selectedRows.every(s => !match(d, s))).map(i => keys.map(k => i[k]));\n const result = consider.filter(s => !remove.some(d => match(d, s))).concat(add2);\n props.data.setSelectedRows(result);\n\n const filterExportData = (row: KeyValue[]) => row.filter(i => keys.includes(i.Key)).map(i => i.Value);\n const considerExport = exportRowData.value.slice();\n const exportAdd2 = add.filter(d => selectedRows.every(s => !match(d, s))).map(i => Object.keys(i).map(j => ({ Key: j, Value: i[j] })));\n exportRowData.value = considerExport.filter(s => !remove.some(d => match(d, filterExportData(s)))).concat(exportAdd2);\n //debugger;\n } else {\n const singleSelectedRow = dataRows[newValue as number];\n props.data.setSelectedRows([keys.map(k => singleSelectedRow[k])]);\n exportRowData.value = [Object.keys(singleSelectedRow).map(j => ({ Key: j, Value: singleSelectedRow[j] }))];\n }\n nextTick(() => {\n updating.value = false;\n });\n },\n });\n const showSelectColumn = computed(() => {\n return props.data.definition.settings.selectable != null && props.data.definition.settings.selectable != SelectionType.No;\n });\n const selectMultiple = computed(() => {\n return props.data.definition.settings.selectable != null && props.data.definition.settings.selectable == SelectionType.Multiple;\n });\n const allowSelectedExport = computed(() => {\n return props.data.definition.settings.selectable != null && (props.data.definition.settings.selectable == SelectionType.Multiple || props.data.definition.settings.selectable == SelectionType.Single);\n });\n const showIndexColumn = computed(() => {\n return props.data.definition.settings.showIndexColumn ?? true;\n });\n const rows = computed(() => {\n return rowsData.value?.data;\n });\n const rowsCount = computed(() => {\n return rowsData.value?.dataCount;\n });\n const effectiveSkip = computed(() => {\n return rowsData.value?.skip;\n });\n const effectiveTop = computed(() => {\n return rowsData.value?.top;\n });\n const effectiveSort = computed(() => {\n return rowsData.value?.sort;\n });\n const inputEffectiveDiffer = computed(() => {\n return skip.value != effectiveSkip.value || top.value != effectiveTop.value || sort.value != effectiveSort.value;\n });\n const pages = computed(() => {\n return Math.ceil((rowsCount.value ?? 0) / top.value);\n });\n const pageOptions = computed(() => {\n const result = [];\n for (let i = 0; i < (rowsCount.value ?? 0); i += top.value) {\n result.push({ value: i, label: i / top.value + 1 });\n }\n return result;\n });\n const next = () => {\n skip.value += top.value;\n };\n const back = () => {\n skip.value = skip.value > top.value ? skip.value - top.value : 0;\n };\n const toggleSort = (column: string) => {\n let match = sort.value.find(i => i[0] == column);\n if (match == null) {\n match = [column, \"asc\"];\n } else {\n match[1] = match[1] == \"asc\" ? \"desc\" : \"asc\";\n }\n if (MULTIPLE_COLUMN_SORT) {\n sort.value = [match, ...sort.value.filter(i => i != match)];\n } else {\n sort.value = [match];\n }\n };\n //const sortDirDisplay = (column: string) => {\n // const sortDirI = sortDir(column);\n // return sortDirI == null ? \"\" : `<${sortDirI}>`;\n //};\n const sortDir = (column: string) => {\n let match = sort.value.find(i => i[0] == column);\n if (match == null) {\n return null;\n } else {\n const mode = match == sort.value[0] ? \"primary\" : \"secondary\";\n return `${match[1]} ${mode}`;\n }\n };\n const startExport = async (exportFormat: string, exportType: string) => {\n return _runExport(\"ExportDataTable\", exportFormat, exportType);\n };\n const _runExport = async (action: string, exportFormat: string, exportType: string) => {\n const handleFileResponse = async (fileResponse: Response) => {\n let filename = \"dataTable.csv\";\n const disposition = fileResponse.headers.get(\"content-disposition\");\n const blob = await fileResponse.blob();\n // https://stackoverflow.com/a/40940790\n if (disposition && disposition.indexOf(\"attachment\") !== -1) {\n const filenameRegex = /filename[^;=\\n]*=((['\"]).*?\\2|[^;\\n]*)/;\n const matches = filenameRegex.exec(disposition);\n if (matches != null && matches[1]) {\n filename = matches[1].replace(/['\"]/g, \"\");\n }\n }\n // https://stackoverflow.com/a/48968694\n const windowNavigator: NavigatorWithMsSaveOrOpenBlob = window.navigator;\n if (windowNavigator.msSaveOrOpenBlob) {\n windowNavigator.msSaveOrOpenBlob(blob, filename);\n } else {\n const a = document.createElement(\"a\");\n document.body.appendChild(a);\n const url = window.URL.createObjectURL(blob);\n a.href = url;\n a.download = filename;\n a.click();\n setTimeout(() => {\n window.URL.revokeObjectURL(url);\n document.body.removeChild(a);\n }, 0);\n }\n };\n\n const result = await props.data.exportRows(exportRowData.value, exportType);\n if (result?.Success == true) {\n const fetchUrl = await mainStore.getUrl(\"dataTableExportFetch\", { token: result.Token });\n const fetchResponse = await fetch(fetchUrl, {\n method: \"GET\",\n credentials: \"same-origin\",\n });\n throwIfNonSuccessStatus(fetchResponse);\n handleFileResponse(fetchResponse);\n }\n };\n if (!isNullOrWhitespace(props.data.definition.settings.defaultSort)) {\n sort.value = [[props.data.definition.settings.defaultSort!, \"asc\"]];\n }\n if (!isNullOrWhitespace(props.data.definition.settings.defaultPageSize?.toString())) {\n // eslint-disable-next-line vue/no-setup-props-destructure\n top.value = props.data.definition.settings.defaultPageSize!;\n }\n inited.value = true;\n\n watch(\n () => sort.value,\n () => {\n skip.value = 0;\n },\n );\n\n watch(\n () => top.value,\n newTop => {\n skip.value -= skip.value % newTop; // adjust skip to an skip option that exists\n },\n );\n\n return {\n // \"constants\"\n ColumnDisplayType,\n stringCoalesce,\n sortIcon,\n exportSchemas,\n skip,\n top,\n\n rows,\n rowsCount,\n selected,\n showSelectColumn,\n showIndexColumn,\n selectMultiple,\n allowSelectedExport,\n effectiveSkip,\n inputEffectiveDiffer,\n pages,\n pageOptions,\n\n next,\n back,\n toggleSort,\n //sortDirDisplay,\n sortDir,\n startExport,\n allowExportTableData,\n toggleDropdown,\n\n ...base.expose,\n };\n },\n});\n</script>\n","//@ts-nocheck\n/**\n * This is a TypeGen auto-generated file.\n * Any changes made to this file can be lost when this file is regenerated.\n */\n\nexport enum ColumnDisplayType {\n Text = 0,\n Html = 1,\n}\n","import { from } from \"@vueuse/rxjs\";\nimport { Ref } from \"vue\";\nimport { Observable, concat } from \"rxjs\";\n\nexport type ObservableReturnType<Type> = Type extends Observable<infer X> ? X : never;\n\nexport function fromWithCurrent<T>(a: Ref<T>): Observable<T> {\n return concat(from<T>([a.value]), from<T>(a));\n}\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./DataTableDef.3.vue?vue&type=style&index=0&id=32088076&scoped=true&lang=less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./DataTableDef.3.vue?vue&type=style&index=0&id=32088076&scoped=true&lang=less\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./DataTableDef.3.vue?vue&type=template&id=32088076&scoped=true&ts=true\"\nimport script from \"./DataTableDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./DataTableDef.3.vue?vue&type=script&lang=ts\"\n\nimport \"./DataTableDef.3.vue?vue&type=style&index=0&id=32088076&scoped=true&lang=less\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-32088076\"]])\n\nexport default __exports__","<template>\n <LoadingContainer :promise=\"directoryData\">\n <div :class=\"[settings.cssClass, colClass]\">\n <div class=\"row\">\n <div :class=\"hasRelatedPages || hasOtherVersions ? 'col-md-8' : 'col-12'\">\n <ChildrenList :children-ids=\"children\" :view-only=\"isViewOnly\"></ChildrenList>\n </div>\n <div class=\"col-md-4\" v-if=\"hasRelatedPages || hasOtherVersions\">\n <!-- eslint-disable-next-line vue/no-unused-vars -->\n <LoadingContainer :promise=\"otherVersions\" v-slot=\"{ key, ...data }\" v-if=\"hasOtherVersions\">\n <strong class=\"d-block mb-1\">Other Versions</strong>\n <ul class=\"text-smaller\">\n <li v-for=\"item in data\">\n <a :href=\"item.url\" @click.prevent=\"gotoOtherPage(item)\">{{ item.displayLabel }}</a>\n </li>\n </ul>\n </LoadingContainer>\n <!-- eslint-disable-next-line vue/no-unused-vars -->\n <LoadingContainer :promise=\"relatedPages\" v-slot=\"{ key, ...data }\" v-if=\"hasRelatedPages\">\n <strong class=\"d-block mb-1\">Related</strong>\n <ul class=\"text-smaller\">\n <li v-for=\"item in data\">\n <a :href=\"item.url\" @click.prevent=\"gotoOtherPage(item)\">{{ item.displayLabel }}</a>\n </li>\n </ul>\n </LoadingContainer>\n </div>\n </div>\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n </LoadingContainer>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, computed, inject } from \"vue\";\nimport { useMainStore } from \"@/mainStore\";\nimport { usePageStore } from \"../pageState/store\";\nimport { computedAsync } from \"@vueuse/core\";\nimport { FormListItem } from \"@cs/FormListItem\";\nimport { LandingPageTemplateSettings } from \"@cs-ts/landing-page-template-settings\";\nimport type LandingPageTemplateDef from \"../elements/LandingPageTemplateDef\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport LoadingContainer from \"@/lib/LoadingContainer.3.vue\";\nimport { changePageInjectKey } from \"@/AppShell.3.vue.InjectKeys\";\nexport default defineComponent({\n components: {\n ...components,\n LoadingContainer,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<LandingPageTemplateDef, LandingPageTemplateSettings>) {\n const base = setup<LandingPageTemplateDef, LandingPageTemplateSettings>(props);\n\n const mainStore = useMainStore();\n\n const directoryData = computed(() => {\n return mainStore\n .getUrl(\"getDirectoryData\")\n .then(url => fetch(url))\n .then(i => i.json() as Promise<{ Pages: FormListItem[]; Tag: string[] }>);\n });\n const pageStore = usePageStore();\n type newPage = {\n areaCode: string;\n formName: string;\n formVersion: string;\n formHash: string;\n };\n const otherVersions = computed(async () => {\n const directoryDataV = await directoryData.value;\n const { formName, formVersion } = pageStore.formData!;\n const cmp = (a: number | string | null | undefined, b: number | string | null | undefined) => (b == null ? (a == null ? 0 : -1) : a == null ? 1 : a < b ? 1 : a > b ? -1 : 0);\n const versionOrderCmp = (a: FormListItem, b: FormListItem) => (a.FormVersionOrder != null || b.FormVersionOrder != null ? cmp(a.FormVersionOrder, b.FormVersionOrder) * -1 : a.FormVersionLabel != null || b.FormVersionLabel != null ? cmp(a.FormVersionLabel, b.FormVersionLabel) * -1 : cmp(a.FormVersion, b.FormVersion) * -1);\n const otherVersions = directoryDataV.Pages.filter((i: FormListItem) => i.FormName == formName && i.FormVersion != formVersion).sort(versionOrderCmp);\n return await Promise.all(\n otherVersions.map(async (pageData: (typeof otherVersions)[0]) => {\n return {\n displayLabel: pageData.FormVersionLabel || pageData.FormTitle,\n url: await mainStore.getUrl(\"formGoto\", {\n areaCode: pageData.Tenant,\n formName: pageData.FormName,\n formVersion: pageData.FormVersion,\n formHash: pageData.FormHash,\n page: 0,\n }),\n formName: pageData.FormName,\n formVersion: pageData.FormVersion,\n formHash: pageData.FormHash,\n areaCode: pageData.Tenant,\n } as newPage;\n }),\n );\n });\n const relatedPages = computed(async () => {\n const directoryDataV = await directoryData.value;\n const formSettings = pageStore.formSettings;\n const relatedPageData = (formSettings!.relatedPages || [])\n .map(v => {\n let match = null as FormListItem | null;\n directoryDataV.Pages.some((i: FormListItem) => {\n if (i.FormName == v.formName && i.FormVersion == v.formVersion && (i.Tenant == v.formTenant || v.formTenant == null)) {\n match = i;\n }\n return !!match;\n });\n return match ? { pageData: match, relatedData: v } : null!;\n })\n .filter(i => i != null);\n\n return await Promise.all(\n relatedPageData.map(async ({ pageData, relatedData }) => {\n return {\n displayLabel: pageData.FormTitle,\n url: await mainStore.getUrl(\"formGoto\", {\n areaCode: pageData.Tenant,\n formName: pageData.FormName,\n formVersion: pageData.FormVersion,\n formHash: pageData.FormHash,\n page: 0,\n }),\n formName: relatedData.formName,\n formVersion: relatedData.formVersion,\n areaCode: relatedData.formTenant,\n formHash: pageData.FormHash,\n };\n }),\n );\n });\n const hasRelatedPages = computedAsync(async () => {\n return (await relatedPages.value).length > 0;\n });\n const hasOtherVersions = computedAsync(async () => {\n return (await otherVersions.value).length > 0;\n });\n\n const changePage = inject(changePageInjectKey)!;\n\n const gotoOtherPage = async (page: newPage) => {\n // TODO duplication of logic?\n //if (page.tenant == (await this.$root.tenantDataPromise).tenantCode) {\n changePage({\n page: \"Page\",\n settings: {\n areaCode: page.areaCode,\n formName: page.formName,\n formVersion: page.formVersion,\n formHash: page.formHash,\n page: 0,\n },\n });\n //} else {\n // window.location = page.url;\n //}\n };\n\n return {\n hasRelatedPages,\n hasOtherVersions,\n otherVersions,\n relatedPages,\n gotoOtherPage,\n directoryData,\n\n ...base.expose,\n };\n },\n //asyncComputed: {\n //},\n //computed: {\n //},\n //methods: {\n //},\n});\n</script>\n","import { render } from \"./LandingPageTemplateDef.3.vue?vue&type=template&id=6b2b9db8&ts=true\"\nimport script from \"./LandingPageTemplateDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./LandingPageTemplateDef.3.vue?vue&type=script&lang=ts\"\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=\"[settings.cssClass, colClass]\">\n <ChildrenList :children-ids=\"children\" :view-only=\"isViewOnly\"></ChildrenList>\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent } from \"vue\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport ContentTemplatePageDef from \"../elements/ContentTemplatePageDef\";\nimport { ContentTemplatePageSettings } from \"@cs-ts/content-template-page-settings\";\nexport default defineComponent({\n components: {\n ...components,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<ContentTemplatePageDef, ContentTemplatePageSettings>) {\n const base = setup<ContentTemplatePageDef, ContentTemplatePageSettings>(props);\n\n return base.expose;\n },\n});\n</script>\n","import { render } from \"./ContentTemplatePageDef.3.vue?vue&type=template&id=f93fdfdc&ts=true\"\nimport script from \"./ContentTemplatePageDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./ContentTemplatePageDef.3.vue?vue&type=script&lang=ts\"\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=\"df-inline-btn\" v-if=\"!isViewOnly\">\n <button class=\"btn btn-primary dfNavButton cancel df-save-and-continue-btn\" name=\"saveType\" type=\"button\" value=\"ConfirmSubmitForm\" @click.prevent=\"advanceForm\">{{ buttonText }} ></button>\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, inject } from \"vue\";\nimport { useMainStore } from \"@/mainStore\";\nimport { computedAsync } from \"@vueuse/core\";\nimport { FormAlternativeSettings } from \"@cs-ts/form-alternative-settings\";\nimport type FormAlternativeDef from \"../elements/FormAlternativeDef\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nexport default defineComponent({\n components: {\n ...components,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<FormAlternativeDef, FormAlternativeSettings>) {\n const base = setup<FormAlternativeDef, FormAlternativeSettings>(props);\n\n const advanceForm = inject(\"advanceForm\")!;\n const mainStore = useMainStore();\n\n const buttonText = computedAsync(async () => {\n if (base.pageStore.mustLogin && !(await mainStore.isLoggedInPromise)) {\n return base.settings.value.buttonTextWhenLoginRequired || \"Log in to Start Form\";\n } else {\n return base.settings.value.buttonText || \"Start Form\";\n }\n });\n\n return {\n buttonText,\n advanceForm,\n ...base.expose,\n };\n },\n});\n</script>\n","import { render } from \"./FormAlternativeDef.3.vue?vue&type=template&id=50219c1f&ts=true\"\nimport script from \"./FormAlternativeDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./FormAlternativeDef.3.vue?vue&type=script&lang=ts\"\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=\"df-inline-btn\">\n <!-- TODO disable in preview mode -->\n <a class=\"btn btn-outline-secondary\" :href=\"settings.linkUrl\" target=\"_blank\" rel=\"noopener\">{{ settings.linkText || \"Goto\" }}</a>\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent } from \"vue\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport type LinkAlternativeDef from \"../elements/LinkAlternativeDef\";\nimport type { LinkAlternativeSettings } from \"@cs-ts/link-alternative-settings\";\nexport default defineComponent({\n components: {\n ...components,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<LinkAlternativeDef, LinkAlternativeSettings>) {\n const base = setup<LinkAlternativeDef, LinkAlternativeSettings>(props);\n return {\n ...base.expose,\n };\n },\n});\n</script>\n","import { render } from \"./LinkAlternativeDef.3.vue?vue&type=template&id=3764ff5f&ts=true\"\nimport script from \"./LinkAlternativeDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./LinkAlternativeDef.3.vue?vue&type=script&lang=ts\"\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=\"df-inline-btn\">\n <!-- TODO disable in preview mode -->\n <a class=\"btn btn-outline-secondary dfNavButton\" target=\"_blank\" :href=\"url\">{{ settings.linkText || \"Download form as a PDF\" }}</a>\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, computed } from \"vue\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport type PdfAlternativeDef from \"../elements/PdfAlternativeDef\";\nimport type { PdfAlternativeSettings } from \"@cs-ts/pdf-alternative-settings\";\nexport default defineComponent({\n components: {\n ...components,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<PdfAlternativeDef, PdfAlternativeSettings>) {\n const base = setup<PdfAlternativeDef, PdfAlternativeSettings>(props);\n\n const url = computed(() => {\n return props.data.fileUrl;\n });\n\n return {\n url,\n\n ...base.expose,\n };\n },\n});\n</script>\n","import { render } from \"./PdfAlternativeDef.3.vue?vue&type=template&id=e01db272&ts=true\"\nimport script from \"./PdfAlternativeDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./PdfAlternativeDef.3.vue?vue&type=script&lang=ts\"\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=\"[colClass]\">\n <ChildrenList :children-ids=\"displayElementVmId\" :view-only=\"true\"></ChildrenList>\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, computed, provide, inject } from \"vue\";\nimport { usePageStore } from \"../pageState/store\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport type DisplayElementDef from \"../elements/DisplayElementDef\";\nimport { DisplayElementSetting } from \"@cs-ts/display-element-setting\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { map } from \"rxjs/operators\";\nimport { BaseElementDefBase } from \"../elements/BaseElementDef\";\nexport default defineComponent({\n components: {\n ...components,\n //DatePicker,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<DisplayElementDef, DisplayElementSetting>) {\n const base = setup<DisplayElementDef, DisplayElementSetting>(props);\n const pageStore = usePageStore();\n\n const mustMask = inject(\"mustMask\", () => false);\n const reviewHiddenElements = inject(\"reviewHiddenElements\", () => ({ elements: [], shouldProvide: true }));\n\n const displayElementVmId = useObservable(pageStore.getElementsById$(base.settings.value.elementId!, base.vmId.value).pipe(map(i => i!.map(j => j.vmId))));\n\n const maskedOutput = computed(() => mustMask() || base.settings.value.maskedOutput);\n const hiddenElements = computed(() => (reviewHiddenElements().shouldProvide ? reviewHiddenElements().elements : null!));\n\n provide(\"elementFilter\", (el: BaseElementDefBase) => {\n return el.id != props.data.id && base.elementFilter(el);\n });\n provide(\"reviewHiddenElements\", () => {\n return { elements: hiddenElements.value, shouldProvide: false };\n });\n provide(\"hiddenElements\", () => hiddenElements.value);\n provide(\"mustMask\", () => maskedOutput.value);\n\n return {\n displayElementVmId,\n\n ...base.expose,\n };\n },\n});\n</script>\n","import { render } from \"./DisplayElementDef.3.vue?vue&type=template&id=e24d0d38&ts=true\"\nimport script from \"./DisplayElementDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./DisplayElementDef.3.vue?vue&type=script&lang=ts\"\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=\"[settings.cssClass, colClass]\">\n <div v-for=\"page in children\" v-show=\"visible[page.vmId]\">\n <h2 class=\"df-section-title\">\n {{ pageTitle(page) }}\n </h2>\n <div style=\"padding: 0 15px\">\n <ChildrenList :children-ids=\"[page]\" :view-only=\"true\"></ChildrenList>\n </div>\n </div>\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, provide, reactive } from \"vue\";\nimport { combineLatest } from \"rxjs\";\nimport { map } from \"rxjs/operators\";\nimport { BaseElementDefBase, BaseElementDefSimple } from \"../elements/BaseElementDef\";\nimport type PageDef from \"../elements/PageDef\";\nimport { ReviewPageTemplatePageSettings } from \"@cs-ts/review-page-template-page-settings\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport DisplayElementDef from \"../elements/DisplayElementDef\";\nexport default defineComponent({\n components: {\n ...components,\n //DatePicker,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<BaseElementDefSimple<ReviewPageTemplatePageSettings>, ReviewPageTemplatePageSettings>) {\n const base = setup<BaseElementDefSimple<ReviewPageTemplatePageSettings>, ReviewPageTemplatePageSettings>(props);\n\n const hiddenElements = reactive({ elements: base.settings.value.hiddenElements, shouldProvide: true });\n\n const page = (input: DisplayElementDef) => {\n return props.data.calculationContext.rootElement!.getElementsByFilter(i => i.definition.id == input.definition.settings.elementId)[0] as PageDef;\n };\n const pageTitle = (input: DisplayElementDef) => {\n return page(input).definition.settings.title;\n };\n\n provide(\"elementFilter\", (el: BaseElementDefBase) => {\n return !(base.settings.value.hiddenElements || []).includes(el.id!);\n });\n provide(\"reviewHiddenElements\", () => hiddenElements);\n\n const visible = useObservable(\n combineLatest(\n base.children.value.map(i =>\n page(i as unknown as DisplayElementDef)\n .isEnabled$(null)\n .pipe(map(j => ({ id: i.vmId, enabled: j }))),\n ),\n ).pipe(\n map(a => {\n const r = {} as Record<string, boolean>;\n for (var i of a) {\n r[i.id] = i.enabled;\n }\n return r;\n }),\n ),\n );\n\n return {\n page,\n pageTitle,\n visible,\n\n ...base.expose,\n };\n },\n});\n</script>\n","import { render } from \"./ReviewPageTemplatePageDef.3.vue?vue&type=template&id=19a915a6&ts=true\"\nimport script from \"./ReviewPageTemplatePageDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./ReviewPageTemplatePageDef.3.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<style scoped lang=\"less\">\n@import \"/lib/Colors.less\";\n.verification-form-group {\n .success {\n &,\n &:before,\n & > :before {\n color: @success-dark;\n }\n }\n .danger {\n &,\n &:before,\n & > :before {\n color: @danger-dark;\n }\n }\n .warning {\n &,\n &:before,\n & > :before {\n color: darken(@forge-orange, 25%);\n }\n }\n .card {\n .card-text {\n font-size: 13px;\n }\n }\n ::v-deep(.loader) {\n .icon.icon-attention {\n color: #fff !important;\n }\n }\n}\n</style>\n<template>\n <div class=\"verification-form-group form-group clearfix\" :class=\"[settings.isChild ? 'form-group-child' : null, colClass]\">\n <div v-if=\"adminReview\">\n <table class=\"table table-bordered mb-0\">\n <thead>\n <th colspan=\"2\" class=\"p-2 border-0\">\n <button @click.prevent.stop=\"toggleVisibility\" class=\"btn btn-bare text-left w-100 p-0\">\n <strong class=\"display-label d-flex justify-content-between align-items-center\">\n Verification Summary\n <span class=\"icon\" :class=\"[visibility ? 'icon-caret-up' : 'icon-caret-down']\"></span>\n </strong>\n </button>\n </th>\n </thead>\n <tbody v-if=\"visibility\">\n <template v-if=\"data.isPersonalIdVerification\">\n <tr>\n <td>\n <strong>CVI Score</strong>\n <HelpIcon text=\"Comprehensive Verification Index. Combines the NAP & NAS score to assess.\" />\n </td>\n <td>{{ verificationResponse?.PersonalVerificationSummary.CviScore }}</td>\n </tr>\n <tr>\n <td>\n <strong>NAP Score</strong>\n <HelpIcon text=\"Score based on name, address and phone.\" />\n </td>\n <td>{{ verificationResponse?.PersonalVerificationSummary.NapScore }}</td>\n </tr>\n <tr>\n <td>\n <strong>NAS Score</strong>\n <HelpIcon text=\"Score based on name, address and SSN.\" />\n </td>\n <td>{{ verificationResponse?.PersonalVerificationSummary.NasScore }}</td>\n </tr>\n <tr v-if=\"(verificationResponse?.PersonalVerificationSummary.RiskIndicators ?? []).length > 0\">\n <td><strong>Risk Indicators</strong></td>\n <td>\n <ul class=\"list-unstyled mb-0\">\n <li v-for=\"data of verificationResponse?.PersonalVerificationSummary.RiskIndicators\" :class=\"[index === verificationResponse?.PersonalVerificationSummary.RiskIndicators.length - 1 ? 'mb-0' : 'mb-2']\">\n <span class=\"icon icon-info warning align-text-bottom\" role=\"img\"></span>\n {{ data }}\n </li>\n </ul>\n </td>\n </tr>\n </template>\n <template v-else>\n <tr v-if=\"verificationResponse?.DocumentVerificationSummary.PersonData != null\">\n <td><strong>Person Data</strong></td>\n <td>\n <dl class=\"row mb-0\">\n <div class=\"d-flex w-100\" v-for=\"(data, key) of verificationResponse?.DocumentVerificationSummary.PersonData\">\n <dt class=\"col-auto\">{{ key }}:</dt>\n <dd class=\"flex-grow-1\">{{ data ?? \"—\" }}</dd>\n </div>\n </dl>\n </td>\n </tr>\n <tr>\n <td><strong>Document Type</strong></td>\n <td>{{ documentType(verificationResponse?.DocumentVerificationSummary.DocumentType) }}</td>\n </tr>\n <tr v-if=\"(verificationResponse?.DocumentVerificationSummary.VerificationAlerts ?? []).length > 0\">\n <td><strong>Verification Alerts</strong></td>\n <td>\n <ul class=\"list-unstyled mb-0\">\n <li v-for=\"(data, index) of verificationResponse?.DocumentVerificationSummary.VerificationAlerts\" :class=\"[index === verificationResponse?.DocumentVerificationSummary.VerificationAlerts.length - 1 ? 'mb-0' : 'mb-2']\">\n <span class=\"icon align-text-bottom\" :class=\"[styles(data.Value)['icon'], styles(data.Value)['color']]\" role=\"img\"></span>\n {{ data.Detail }}\n </li>\n </ul>\n </td>\n </tr>\n </template>\n </tbody>\n </table>\n <!-- <button class=\"passthrough icon icon-edit mr-1\" type=\"button\" v-if=\"showAdminEditControls\" @click.prevent=\"startAdminEdit\"><span class=\"sr-only\">Edit</span></button> -->\n </div>\n <template v-else>\n <div class=\"card\">\n <div class=\"card-header\">ID Verification</div>\n <div class=\"card-body\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <em :id=\"errorId\" class=\"card-text\">\n <div class=\"status ml-1\" :class=\"styles(status)['color']\" v-if=\"calculatedElementsValid && edited\">\n <span class=\"icon align-middle\" :class=\"styles(status)['icon']\" role=\"img\" aria-hidden=\"true\"></span>\n {{ message }}\n </div>\n <ErrorList v-else :data=\"data\" />\n </em>\n <button type=\"button\" class=\"btn btn-primary\" @click.prevent=\"verifyIdentity\" :disabled=\"hasVerified\" :aria-describedby=\"errorIds\">\n Verify\n <AsyncOperationStatus class=\"loader\" :promise=\"loadingPromise\" hide-check-icon />\n </button>\n </div>\n </div>\n </div>\n </template>\n <Comments :data=\"data\" />\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, computed } from \"vue\";\nimport { usePageStore } from \"../pageState/store\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport type IdVerificationDef from \"../elements/IdVerificationDef\";\nimport type { IdVerificationSettings } from \"@cs-ts/id-verification-settings\";\nimport AsyncOperationStatus from \"@/lib/AsyncOperationStatus.3.vue\";\nimport { VerificationStatus } from \"@cs/VerificationStatus\";\nimport { DocumentTypeEnum } from \"@cs/DocumentTypeEnum\";\n\n// TODO: Set customizable message mapped to every statuses\n// Index 0 = InstantID, Index 1 = TrueID\nconst statusesMapping: Record<number, string[]> = {\n [VerificationStatus.Passed]: [\"ID validated.\", \"ID document validated.\"],\n [VerificationStatus.Failed]: [\"Unable to validate ID.\", \"Unable to validate ID document.\"],\n [VerificationStatus.Unknown]: [\"Unknown\", \"A validation was prevented, reason not provided.\"],\n [VerificationStatus.Attention]: [\"Attention\", \"Document appears Authentic, but some values may have been incorrectly interpreted.\"],\n [VerificationStatus.Skipped]: [\"Skipped\", \"ID documentation validation skipped.\"],\n [VerificationStatus.Paused]: [\"Paused\", \"Paused\"],\n [VerificationStatus.Pending]: [\"Pending\", \"Pending\"],\n [VerificationStatus.Error]: [\"Error\", \"Error\"],\n};\nconst documentMapping: Record<number, string> = {\n [DocumentTypeEnum.DriversLicense]: \"Driver's License\",\n [DocumentTypeEnum.Passport]: \"Passport\",\n};\nexport default defineComponent({\n components: {\n ...components,\n AsyncOperationStatus,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<IdVerificationDef, IdVerificationSettings>) {\n const base = setup<IdVerificationDef, IdVerificationSettings>(props);\n\n const pageStore = usePageStore();\n\n const valid = useObservable(props.data.valid$());\n const calculatedElementsValid = useObservable(props.data.calculatedElementsValid$());\n const hasVerified = useObservable(props.data.verified$());\n const edited = useObservable(props.data.edited$());\n\n const loadingPromise = ref<Promise<void> | null>(null);\n const visibility = ref<boolean>(true);\n\n const adminReview = computed(() => pageStore.adminReview);\n const verificationResponse = computed(() => props.data.verificationResponseRaw?.Result);\n const status = computed(() => verificationResponse.value?.VerificationStatus);\n const message = computed(() => statusesMapping[status.value ?? 0][base.settings.value.type!] ?? \"\");\n\n const verifyIdentity = () => {\n if (hasVerified.value) return;\n loadingPromise.value = (async () => {\n await props.data.verifyIdentity();\n })();\n };\n const documentType = (type: number) => documentMapping[type];\n const styles = (status: number | string) => {\n let icon, color, alert: string;\n switch (status) {\n case VerificationStatus.Passed:\n case \"Passed\":\n icon = \"icon-check\";\n color = \"success\";\n alert = \"alert-success\";\n break;\n case VerificationStatus.Attention:\n case \"Attention\":\n icon = \"icon-attention\";\n color = \"warning\";\n alert = \"alert-warning\";\n break;\n case VerificationStatus.Unknown:\n case VerificationStatus.Error:\n case VerificationStatus.Failed:\n case VerificationStatus.Paused:\n case VerificationStatus.Pending:\n case VerificationStatus.Skipped:\n case \"Unknown\":\n case \"Error\":\n case \"Failed\":\n case \"Paused\":\n case \"Pending\":\n case \"Skipped\":\n icon = \"icon-attention\";\n color = \"danger\";\n alert = \"alert-danger\";\n break;\n default:\n icon = \"\";\n color = \"\";\n alert = \"\";\n break;\n }\n return { icon, color, alert };\n };\n const toggleVisibility = () => {\n visibility.value = !visibility.value;\n };\n\n return {\n valid,\n calculatedElementsValid,\n hasVerified,\n edited,\n\n loadingPromise,\n visibility,\n\n adminReview,\n status,\n message,\n verificationResponse,\n\n verifyIdentity,\n documentType,\n styles,\n toggleVisibility,\n\n ...base.expose,\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./IdVerificationDef.3.vue?vue&type=style&index=0&id=d9b57cac&scoped=true&lang=less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./IdVerificationDef.3.vue?vue&type=style&index=0&id=d9b57cac&scoped=true&lang=less\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./IdVerificationDef.3.vue?vue&type=template&id=d9b57cac&scoped=true&ts=true\"\nimport script from \"./IdVerificationDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./IdVerificationDef.3.vue?vue&type=script&lang=ts\"\n\nimport \"./IdVerificationDef.3.vue?vue&type=style&index=0&id=d9b57cac&scoped=true&lang=less\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-d9b57cac\"]])\n\nexport default __exports__","<template>\n <div class=\"form-group text-form-group focus-form-group clearfix\" :class=\"[colClass, customErrorClass]\">\n <p class=\"pdf-inline\">\n <strong class=\"display-label\">{{ effectiveLabelText }}:</strong>\n <span class=\"display-value\">{{ extraShimValue }}</span>\n </p>\n <Comments :data=\"data\" />\n <AdminSettingsDifferences :data=\"data\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent } from \"vue\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { map } from \"rxjs/operators\";\nimport { props, Props, components, setup } from \"./BaseDefMixin.3\";\nimport ExtraDataShimDef from \"../elements/ExtraDataShimDef\";\nimport { ExtraDataShimSettings } from \"@cs-ts/extra-data-shim-settings\";\nexport default defineComponent({\n components: {\n ...components,\n },\n props: props,\n //@ts-ignore\n setup(props: Props<ExtraDataShimDef, ExtraDataShimSettings>) {\n const base = setup<ExtraDataShimDef, ExtraDataShimSettings>(props);\n const extraShimValue = useObservable(props.data.extraShimValue$().pipe(map(i => (i.length ? i[0] : null))));\n const effectiveLabelText = useObservable(props.data.effectiveLabelText$());\n\n return {\n extraShimValue,\n effectiveLabelText,\n\n ...base.expose,\n };\n },\n});\n</script>\n","import { render } from \"./ExtraDataShimDef.3.vue?vue&type=template&id=2c6b2907&ts=true\"\nimport script from \"./ExtraDataShimDef.3.vue?vue&type=script&lang=ts\"\nexport * from \"./ExtraDataShimDef.3.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import type { BaseElementDefBase } from \"../elements/BaseElementDef\";\nimport TextboxDef from \"./TextboxDef.3.vue\";\nimport FileDef from \"./FileDef.3.vue\";\nimport CheckGroupDef from \"./CheckGroupDef.3.vue\";\nimport RadioGroupDef from \"./RadioGroupDef.3.vue\";\nimport CalculatedDef from \"./CalculatedDef.3.vue\";\nimport ValidationDef from \"./ValidationDef.3.vue\";\nimport DisplayIfOtherHasValueDef from \"./DisplayIfOtherHasValueDef.3.vue\";\nimport ForEachDef from \"./ForEachDef.3.vue\";\nimport ForEachChildIdDef from \"./ForEachChildIdDef.3.vue\";\nimport ForEachChildIndexDef from \"./ForEachChildIndexDef.3.vue\";\nimport RegionDef from \"./RegionDef.3.vue\";\nimport SectionDef from \"./SectionDef.3.vue\";\nimport AddressDef from \"./AddressDef.3.vue\";\nimport DatePickerDef from \"./DatePickerDef.3.vue\";\nimport ContentDef from \"./ContentDef.3.vue\";\nimport DropDownListDef from \"./DropDownListDef.3.vue\";\nimport DataTableDef from \"./DataTableDef.3.vue\";\nimport LandingPageTemplateDef from \"./LandingPageTemplateDef.3.vue\";\nimport ContentTemplatePageDef from \"./ContentTemplatePageDef.3.vue\";\n//import ContactPageTemplateDef from \"./ContactPageTemplateDef.3.vue\";\nimport FormAlternativeDef from \"./FormAlternativeDef.3.vue\";\nimport LinkAlternativeDef from \"./LinkAlternativeDef.3.vue\";\nimport PdfAlternativeDef from \"./PdfAlternativeDef.3.vue\";\nimport DisplayElementDef from \"./DisplayElementDef.3.vue\";\nimport ReviewPageTemplatePageDef from \"./ReviewPageTemplatePageDef.3.vue\";\nimport PageDef from \"./PageDef.3.vue\";\nimport IdVerificationDef from \"./IdVerificationDef.3.vue\";\nimport ExtraDataShimDef from \"./ExtraDataShimDef.3.vue\";\n\nexport default function getComponent(element: BaseElementDefBase, display: boolean) {\n const elementType = element.definition.type;\n switch (elementType) {\n case \"TextboxDef\":\n return TextboxDef;\n case \"FileDef\":\n return FileDef;\n case \"CheckGroupDef\":\n return CheckGroupDef;\n case \"RadioGroupDef\":\n return RadioGroupDef;\n case \"CalculatedDef\":\n return CalculatedDef;\n case \"ValidationDef\":\n return ValidationDef;\n case \"DisplayIfOtherHasValueDef\":\n return DisplayIfOtherHasValueDef;\n case \"ForEachDef\":\n return ForEachDef;\n case \"ForEachChildIdDef\":\n return ForEachChildIdDef;\n case \"ForEachChildIndexDef\":\n return ForEachChildIndexDef;\n case \"RegionDef\":\n return RegionDef;\n case \"SectionDef\":\n return SectionDef;\n case \"AddressDef\":\n return AddressDef;\n case \"DatePickerDef\":\n return DatePickerDef;\n case \"ContentDef\":\n return ContentDef;\n case \"DropDownListDef\":\n return DropDownListDef;\n case \"DataTableDef\":\n return DataTableDef;\n case \"LandingPageTemplateDef\":\n return LandingPageTemplateDef;\n case \"ContentTemplatePageDef\":\n return ContentTemplatePageDef;\n //case \"ContactPageTemplateDef\":\n // return ContactPageTemplateDef;\n case \"FormAlternativeDef\":\n return FormAlternativeDef;\n case \"LinkAlternativeDef\":\n return LinkAlternativeDef;\n case \"PdfAlternativeDef\":\n return PdfAlternativeDef;\n case \"DisplayElementDef\":\n return DisplayElementDef;\n case \"ReviewPageTemplatePageDef\":\n return ReviewPageTemplatePageDef;\n case \"PageDef\":\n return PageDef;\n case \"IdVerificationDef\":\n return IdVerificationDef;\n case \"CaptchaControlDef\":\n return null;\n case \"ExtraDataShimDef\":\n return ExtraDataShimDef;\n }\n throw new Error(`Unknown element type: ${elementType}`);\n console.log(`Unknown element type: ${elementType}`);\n debugger;\n return null;\n}\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./PageSide.3.vue?vue&type=style&index=0&id=b0d9497c&scoped=true&lang=less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./PageSide.3.vue?vue&type=style&index=0&id=b0d9497c&scoped=true&lang=less\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./PageSide.3.vue?vue&type=style&index=1&id=b0d9497c&lang=less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./PageSide.3.vue?vue&type=style&index=1&id=b0d9497c&lang=less\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./PageSide.3.vue?vue&type=template&id=b0d9497c&scoped=true&ts=true\"\nimport script from \"./PageSide.3.vue?vue&type=script&lang=ts\"\nexport * from \"./PageSide.3.vue?vue&type=script&lang=ts\"\n\nimport \"./PageSide.3.vue?vue&type=style&index=0&id=b0d9497c&scoped=true&lang=less\"\nimport \"./PageSide.3.vue?vue&type=style&index=1&id=b0d9497c&lang=less\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-b0d9497c\"]])\n\nexport default __exports__","<template>\n <div class=\"notificationBarTop\" v-show=\"showLoginSlidedown\" style=\"display: none\" :aria-hidden=\"!showLoginSlidedown\" role=\"alert\">\n <a :href=\"loginUrl\">Log in</a> to store your form.\n <button type=\"button\" class=\"close icon icon-close\" @click.prevent=\"showLoginSlidedown = false\"><span class=\"sr-only\">Close</span></button>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, inject } from \"vue\";\nimport { useMainStore } from \"@/mainStore\";\nimport { getLoginUrlInjectKey } from \"@/AppShell.3.vue.InjectKeys\";\nimport { computedAsync } from \"@vueuse/core\";\nexport default defineComponent({\n setup() {\n const mainStore = useMainStore();\n const getLoginUrl = inject(getLoginUrlInjectKey)!;\n const showLoginSlidedown = ref(false);\n const loginUrl = computedAsync(() => {\n return getLoginUrl();\n });\n\n mainStore.isLoggedInPromise.then(async isLoggedIn => {\n showLoginSlidedown.value = !isLoggedIn && !(await mainStore.isFeatureFlagActiveAsync(\"DisableUserLogin\"));\n });\n\n return {\n loginUrl,\n showLoginSlidedown,\n };\n },\n});\n</script>\n","import { render } from \"./LoginBanner.3.vue?vue&type=template&id=11346836&ts=true\"\nimport script from \"./LoginBanner.3.vue?vue&type=script&lang=ts\"\nexport * from \"./LoginBanner.3.vue?vue&type=script&lang=ts\"\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=\"container tile\">\n <div v-if=\"offlineContent\" v-html=\"offlineContent\" />\n <div class=\"col-sm-10 offset-sm-1 col-lg-8 offset-lg-2 p-4\" v-else>\n <div class=\"alert alert-secondary text-center\">This page is unavailable at this time.</div>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, computed } from \"vue\";\nimport { usePageStore } from \"../pageState/store\";\nexport default defineComponent({\n setup() {\n const pageStore = usePageStore();\n return {\n isOffline: computed(() => pageStore.isOffline),\n offlineContent: computed(() => pageStore.offlineContent),\n };\n },\n});\n</script>\n","import { render } from \"./OfflineNotice.3.vue?vue&type=template&id=0cb5610c&ts=true\"\nimport script from \"./OfflineNotice.3.vue?vue&type=script&lang=ts\"\nexport * from \"./OfflineNotice.3.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<style lang=\"less\" scoped>\n@added: #208337;\n@changed: #2568db;\n@deleted: #d70015;\n.adminDiffControlContainer {\n padding: 10px 15px;\n .changedKey,\n .deletedKey,\n .addedKey {\n color: white;\n }\n .changedKey {\n background: @changed;\n }\n .deletedKey {\n background: @deleted;\n }\n .addedKey {\n background: @added;\n }\n}\n</style>\n<template>\n <div class=\"alert alert-dark adminDiffControlContainer\" v-if=\"adminPreview && (!inlineAdminPreview || hasChanges)\">\n <template v-if=\"!inlineAdminPreview\">\n <button type=\"button\" class=\"btn btn-sm btn-outline-secondary float-right mt-1\" @click=\"closeWindow\">Close Preview</button>\n <h1 style=\"font-size: 20px\" class=\"mb-2\">Admin Preview</h1>\n </template>\n <div class=\"left\" v-if=\"hasChanges\">\n <div class=\"form-check form-check-inline mr-2\">\n <input class=\"form-check-input\" type=\"checkbox\" id=\"ChangesCheckbox\" :checked=\"showAdminDiff\" @change=\"toggleAdminDiff\" />\n <label class=\"form-check-label\" for=\"ChangesCheckbox\">Show changes</label>\n </div>\n <span v-show=\"showAdminDiff\" style=\"vertical-align: top\">\n <span class=\"addedKey badge\">Added</span>\n <span class=\"changedKey badge\">Changed</span>\n <span class=\"deletedKey badge\">Deleted</span>\n </span>\n </div>\n <AdminSettingsDifferences :data=\"formData\" />\n <!--\n <template v-for=\"child in unenabledPages\">\n <AdminSettingsDifferences :data=\"child\" />\n </template>\n -->\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, computed } from \"vue\";\nimport AdminSettingsDifferences from \"../elementTemplates/AdminSettingsDifferences.3.vue\";\nimport { usePageStore } from \"../pageState/store\";\ninterface Props {\n inlineAdminPreview: boolean;\n}\nexport default defineComponent({\n components: {\n AdminSettingsDifferences,\n },\n props: [\"inlineAdminPreview\"],\n setup(_props: Props) {\n const pageStore = usePageStore();\n //...mapState(\"page\", {\n // formData: state => state.formData,\n // showAdminDiff: state => state.showAdminDiff,\n //}),\n //...mapGetters(\"page\", [\"adminPreview\", \"hasChanges\"]),\n const toggleAdminDiff = () => {\n pageStore.toggleAdminDiff();\n };\n const closeWindow = () => {\n window.close();\n };\n return {\n toggleAdminDiff,\n closeWindow,\n adminPreview: computed(() => pageStore.adminPreview),\n showAdminDiff: computed(() => pageStore.showAdminDiff),\n hasChanges: computed(() => pageStore.hasChanges),\n formData: computed(() => pageStore.formData),\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./Diff.3.vue?vue&type=style&index=0&id=68300dfe&lang=less&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./Diff.3.vue?vue&type=style&index=0&id=68300dfe&lang=less&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./Diff.3.vue?vue&type=template&id=68300dfe&scoped=true&ts=true\"\nimport script from \"./Diff.3.vue?vue&type=script&lang=ts\"\nexport * from \"./Diff.3.vue?vue&type=script&lang=ts\"\n\nimport \"./Diff.3.vue?vue&type=style&index=0&id=68300dfe&lang=less&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-68300dfe\"]])\n\nexport default __exports__","<style scoped lang=\"less\">\n.issueentry-text {\n white-space: pre-wrap;\n}\n.commentHeader {\n font-size: 1.2em;\n}\n.issue-group {\n margin-bottom: 20px;\n}\n.elementSchemaLabel {\n margin: 0;\n}\n.submissions-comment {\n padding: 10px;\n border-bottom: 1px solid #cccccc;\n .comment-text {\n margin: 0;\n }\n .help-block {\n white-space: nowrap;\n display: block;\n }\n &:first-of-type {\n margin-top: 0;\n }\n}\n</style>\n<template>\n <div>\n <ul class=\"comment-list\">\n <li class=\"issue-group\" v-for=\"(element, elementIndex) in allElementsWithIssues\">\n <h3 class=\"d-block commentHeader\">\n <div class=\"fw-600\">{{ element.getLabel() || \"Unlabeled\" }}</div>\n <Promised :promise=\"getSchemaLabel(element)\" v-slot=\"data\">\n <div v-show=\"data != 'Page Set'\" class=\"elementSchemaLabel editor-help-text\">\n {{ data }}\n </div>\n </Promised>\n </h3>\n <ol reversed class=\"comment-list\">\n <li class=\"submissions-comment\" v-for=\"(issueEntry, issueIndex) in orderByDateDesc(element.issues)\">\n <!--\n <strong class=\"fw-600\">{{ issueEntry.userName || \"Anonymous\" }}</strong>\n -->\n <span class=\"help-block p-0\">{{ new Date(issueEntry.activatedDate).toLocaleString() }}</span>\n <!-- TODO only if reviewer? -->\n <div class=\"issueentry-text\">{{ issueEntry.adminDisplayLabel }}</div>\n <div class=\"issueentry-text\">{{ issueEntry.description }}</div>\n\n <div class=\"mt-2\">\n <button class=\"btn btn-sm btn-outline-secondary cancel dfNavButton mb-1 mr-2\" :id=\"`retry_${elementIndex}_${issueIndex}`\" type=\"button\" @click=\"retry(element, issueEntry)\">\n Retry\n <AsyncOperationStatus :promise=\"retryPromise\" v-if=\"retryPromise != null\" />\n </button>\n <button class=\"btn btn-sm btn-outline-secondary cancel dfNavButton mb-1\" :id=\"`skip_${elementIndex}_${issueIndex}`\" type=\"button\" @click=\"skip(element, issueEntry)\">\n Skip\n <AsyncOperationStatus :promise=\"skipPromise\" v-if=\"skipPromise != null\" />\n </button>\n </div>\n </li>\n </ol>\n </li>\n </ul>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, computed, ref /*, inject*/ } from \"vue\";\nimport { Promised } from \"vue-promised\";\nimport { usePageStore } from \"../pageState/store\";\nimport { BaseElementDefBase } from \"../elements/BaseElementDef\";\n//import StateFormDef from \"../elements/StateFormDef\";\nimport orderBy from \"@/lib/orderBy\";\nimport { FormIssue } from \"@cs-ts/form-issue\";\nimport AsyncOperationStatus from \"@/lib/AsyncOperationStatus.3.vue\";\n//import { resendEmailInjectKey } from \"../Page.3.vue.InjectKeys\";\nexport default defineComponent({\n components: { Promised, AsyncOperationStatus },\n setup() {\n const pageStore = usePageStore();\n //const resendEmail = inject(resendEmailInjectKey)!;\n\n const allElementsWithIssues = computed(() => pageStore.allElementsWithIssues);\n\n const orderByDateDesc = (a: FormIssue[]): FormIssue[] => {\n return orderBy(a, (a: FormIssue, b: FormIssue) => {\n return a.activatedDate < b.activatedDate ? 1 : a.activatedDate > b.activatedDate ? -1 : 0;\n });\n };\n const getSchemaLabel = async (element: BaseElementDefBase) => {\n const schemaLabels = (await pageStore.getSchemaLabelMapping())!;\n return schemaLabels[element.definition.type!] || element.definition.type;\n };\n\n const retryPromise = ref<undefined | Promise<void>>(undefined);\n const retry = (element: BaseElementDefBase, _issue: FormIssue) => {\n // TODO invoke type should be from TS-CS map\n // TODO targetPath\n retryPromise.value = pageStore.invokeForm({ segment: null, type: \"RetryBehavior\", target: element.id!, targetPath: null!, targetPathArray: null!, data: null, assign: false, noWrite: false });\n };\n\n const skipPromise = ref<undefined | Promise<void>>(undefined);\n const skip = (element: BaseElementDefBase, _issue: FormIssue) => {\n // TODO invoke type should be from TS-CS map\n // TODO targetPath\n skipPromise.value = pageStore.invokeForm({ segment: null, type: \"SkipBehavior\", target: element.id!, targetPath: null!, targetPathArray: null!, data: null, assign: false, noWrite: false });\n };\n\n return {\n allElementsWithIssues,\n getSchemaLabel,\n orderByDateDesc,\n retry,\n retryPromise,\n skip,\n skipPromise,\n };\n },\n});\n</script>\n","export default function <T>(a: T[], sortFun: (a: T, b: T) => number) {\n return a.slice().sort(sortFun);\n}\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./Issues.3.vue?vue&type=style&index=0&id=4f4f2757&scoped=true&lang=less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./Issues.3.vue?vue&type=style&index=0&id=4f4f2757&scoped=true&lang=less\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./Issues.3.vue?vue&type=template&id=4f4f2757&scoped=true&ts=true\"\nimport script from \"./Issues.3.vue?vue&type=script&lang=ts\"\nexport * from \"./Issues.3.vue?vue&type=script&lang=ts\"\n\nimport \"./Issues.3.vue?vue&type=style&index=0&id=4f4f2757&scoped=true&lang=less\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4f4f2757\"]])\n\nexport default __exports__","<style scoped lang=\"less\">\n.historyentry-text {\n white-space: pre-wrap;\n}\n.commentHeader {\n font-size: 1.2em;\n}\n.history-group {\n margin-bottom: 20px;\n}\n.elementSchemaLabel {\n margin: 0;\n}\n.submissions-comment {\n padding: 10px;\n border-bottom: 1px solid #cccccc;\n .comment-text {\n margin: 0;\n }\n .help-block {\n white-space: nowrap;\n display: block;\n }\n &:first-of-type {\n margin-top: 0;\n }\n}\n</style>\n<template>\n <div>\n <ul class=\"comment-list\">\n <li class=\"history-group\" v-for=\"element in allElementsWithHistory\">\n <h3 class=\"d-block commentHeader\">\n <div class=\"fw-600\">{{ element.getLabel() || \"Unlabeled\" }}</div>\n <Promised :promise=\"getSchemaLabel(element)\" v-slot=\"data\">\n <div v-show=\"data != 'Page Set'\" class=\"elementSchemaLabel editor-help-text\">\n {{ data }}\n </div>\n </Promised>\n </h3>\n <ol reversed class=\"comment-list\" v-for=\"recentEvents in [mostRecentEvents(element)]\">\n <li class=\"submissions-comment\" v-for=\"historyEntry in orderByDateDesc(element.history)\">\n <strong class=\"fw-600\">{{ historyEntry.userName || \"Anonymous\" }}</strong>\n <span class=\"help-block p-0\">{{ new Date(historyEntry.date).toLocaleString() }}</span>\n <div class=\"historyentry-text\">{{ historyEntry.text }}</div>\n\n <div v-for=\"recentEvent in recentEvents.filter(x => x.date == historyEntry.date)\">\n <button class=\"btn btn-outline-secondary cancel dfNavButton mb-1\" type=\"button\" :value=\"recentEvent.eventType\" @click.prevent=\"resendEmail(element.id!, recentEvent.commentRequired, recentEvent.eventType, recentEvent.type)\">Resend {{ recentEvent.eventType }}</button>\n </div>\n </li>\n </ol>\n </li>\n </ul>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, computed, inject } from \"vue\";\nimport { Promised } from \"vue-promised\";\nimport { usePageStore } from \"../pageState/store\";\nimport { BaseElementDefBase } from \"../elements/BaseElementDef\";\nimport StateFormDef from \"../elements/StateFormDef\";\nimport orderBy from \"@/lib/orderBy\";\nimport { FormHistory } from \"@cs-ts/form-history\";\nimport { resendEmailInjectKey } from \"../Page.3.vue.InjectKeys\";\nexport default defineComponent({\n components: { Promised },\n setup() {\n const pageStore = usePageStore();\n const resendEmail = inject(resendEmailInjectKey)!;\n\n const allElementsWithHistory = computed(() => pageStore.allElementsWithHistory);\n\n const orderByDateDesc = (a: FormHistory[]): FormHistory[] => {\n return orderBy(a, (a: FormHistory, b: FormHistory) => {\n return a.date < b.date ? 1 : a.date > b.date ? -1 : 0;\n });\n };\n const mostRecentEvents = (a: BaseElementDefBase) => {\n const e = [];\n if (a.definition.type == \"CompletionEmailerDef\") {\n e.push(\n orderByDateDesc(a.history)\n .slice(0, 1)\n .map(x => ({ date: x.date, commentRequired: false, eventType: \"Notification\", type: x.text.toUpperCase().includes(\"TEXT MESSAGE\") || x.text.toUpperCase().includes(\"SMS\") ? \"sms\" : \"email\" })),\n );\n } else if (a.definition.type == \"StateFormDef\" && (a as StateFormDef).definition.settings.preStatus == pageStore.status) {\n e.push(\n orderByDateDesc(a.history.filter(x => (x.historyEmailType != null ? x.historyEmailType == 2 : x.text.toUpperCase().includes(\"INVITE\"))))\n .slice(0, 1)\n .map(x => ({ date: x.date, commentRequired: false, eventType: \"Invite\", type: x.text.toUpperCase().includes(\"TEXT MESSAGE\") || x.text.toUpperCase().includes(\"SMS\") ? \"sms\" : \"email\" })),\n );\n e.push(\n orderByDateDesc(a.history.filter(x => (x.historyEmailType != null ? x.historyEmailType == 1 : x.text.toUpperCase().includes(\"RETURNED\"))))\n .slice(0, 1)\n .map(x => ({ date: x.date, commentRequired: true, eventType: \"Return\", type: x.text.toUpperCase().includes(\"TEXT MESSAGE\") || x.text.toUpperCase().includes(\"SMS\") ? \"sms\" : \"email\" })),\n );\n }\n return e.flatMap(x => x);\n };\n const getSchemaLabel = async (element: BaseElementDefBase) => {\n const schemaLabels = (await pageStore.getSchemaLabelMapping())!;\n return schemaLabels[element.definition.type!] || element.definition.type;\n };\n\n return {\n allElementsWithHistory,\n getSchemaLabel,\n mostRecentEvents,\n orderByDateDesc,\n resendEmail,\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./History.3.vue?vue&type=style&index=0&id=3ef09594&scoped=true&lang=less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./History.3.vue?vue&type=style&index=0&id=3ef09594&scoped=true&lang=less\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./History.3.vue?vue&type=template&id=3ef09594&scoped=true&ts=true\"\nimport script from \"./History.3.vue?vue&type=script&lang=ts\"\nexport * from \"./History.3.vue?vue&type=script&lang=ts\"\n\nimport \"./History.3.vue?vue&type=style&index=0&id=3ef09594&scoped=true&lang=less\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-3ef09594\"]])\n\nexport default __exports__","<style scoped>\nul {\n list-style-type: none;\n padding-left: 5px;\n}\n.icon-download:before {\n text-decoration: none;\n margin-right: 5px;\n}\n.editor-help-text {\n cursor: default;\n margin-bottom: 5px;\n}\n.file-header {\n font-size: 1.2em;\n font-weight: 600;\n}\n.status-icon {\n position: absolute;\n right: 30px;\n top: 50%;\n transform: translateY(-50%);\n -webkit-transform: translateY(-50%);\n -ms-transform: translateY(-50%);\n}\n.field-validation-error .icon.icon-attention {\n color: inherit;\n}\n</style>\n<template>\n <div>\n <template v-if=\"viewTypes.length > 0\">\n <h3 class=\"file-header\">Generated Files</h3>\n <ul>\n <template v-for=\"viewType in viewTypes\">\n <Promised :promise=\"getViewTypeUrl(viewType)\" v-slot=\"url\">\n <li>\n <a class=\"icon icon-download\" :href=\"url\" target=\"_blank\">{{ viewType == \"Builtin\" || viewType == \"Default\" ? \"Submission\" : viewType }}</a>\n </li>\n </Promised>\n </template>\n </ul>\n </template>\n <template v-if=\"allFileElementsWithFile != null && allFileElementsWithFile.length > 0\">\n <h3 class=\"file-header\">Form Attachments</h3>\n <ul>\n <li v-for=\"fileElement in allFileElementsWithFile\">\n <a class=\"icon icon-download\" target=\"_blank\" :href=\"fileElement.fileUrl\">{{ fileElement.fileName }}</a>\n <span class=\"editor-help-text\">{{ fileElement.definition.settings.label || fileElement.definition.settings.shortLabel }}</span>\n </li>\n </ul>\n </template>\n <h3 class=\"file-header\">Reviewer Uploads</h3>\n <template v-if=\"allElementsWithFileComments.length > 0\">\n <ul>\n <template v-for=\"element in allElementsWithFileComments\">\n <template v-for=\"comment in element.comments.filter(i => i.files != null && i.files.length > 0)\">\n <template v-for=\"file in comment.files\">\n <li>\n <span>\n <a class=\"icon icon-download\" target=\"_blank\" :href=\"file.fileUrl\">{{ file.filename }}</a>\n <button v-if=\"canDeleteFiles\" class=\"passthrough icon icon-trash ml-3\" title=\"Delete\" aria-label=\"Delete\" @click.prevent=\"deleteFile(element, comment, file)\" />\n </span>\n <span class=\"editor-help-text\">{{ elementLabel(element) }}</span>\n </li>\n </template>\n </template>\n </template>\n </ul>\n </template>\n <div class=\"btn btn-file form-group p-0 m-0\">\n <label for=\"FilesUpload\" class=\"sr-only\">Attach Files</label>\n <input type=\"file\" id=\"FilesUpload\" ref=\"file\" multiple @change=\"uploadFiles\" />\n <div class=\"status-icon\">\n <AsyncOperationStatus :promise=\"uploadPromise\" />\n </div>\n </div>\n <div v-if=\"anyThreat\">\n <span class=\"field-validation-error\"><i class=\"icon icon-attention align-middle mr-1\" title=\"Error\" role=\"img\" />Potential virus or malware detected.</span>\n </div>\n <div aria-live=\"polite\" class=\"sr-only\">\n <template v-if=\"uploadStatus && uploadStatus != 'uploading'\">\n <span v-if=\"anyThreat\">Error: Potential virus or malware detected.</span>\n <span v-else>File uploaded successfully</span>\n </template>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, computed } from \"vue\";\nimport { Promised } from \"vue-promised\";\nimport AsyncOperationStatus from \"@/lib/AsyncOperationStatus.3.vue\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { map, switchMap } from \"rxjs/operators\";\nimport { combineLatest } from \"rxjs\";\nimport { useMainStore } from \"@/mainStore\";\nimport { usePageStore } from \"../pageState/store\";\nimport { toObserverComputed } from \"../pageState/store\";\nimport FileDef from \"../elements/FileDef\";\nimport FormDef from \"../elements/FormDef\";\n//eslint-disable-next-line @typescript-eslint/no-unused-vars -- used in html\nimport type { IControlSettings } from \"@cs-ts/i-control-settings\";\nimport { BaseElementDefBase } from \"../elements/BaseElementDef\";\nimport { throwIfNonSuccessStatus } from \"@/lib/fetchHelpers.3\";\nimport { getXsftHeader } from \"@/lib/getXsrfToken.3\";\nimport { FormComment } from \"@cs-ts/form-comment\";\nimport { asyncComputed } from \"@vueuse/core\";\nimport { KnownFeatureFlags } from \"@cs/KnownFeatureFlags\";\nimport { isNullOrWhitespace } from \"@/lib/whitespaceMethods\";\nimport { FormCommentFile } from \"@cs-ts/form-comment-file\";\n\nexport default defineComponent({\n components: {\n Promised,\n AsyncOperationStatus,\n },\n setup() {\n const uploadPromise = ref(null as null | Promise<boolean>);\n const uploadStatus = ref(null! as null | \"uploading\" | \"failed\" | \"ok\");\n const fileRef = ref(null! as HTMLInputElement);\n const anyThreat = ref(false);\n const mainStore = useMainStore();\n const pageStore = usePageStore();\n\n const allowDeleteFiles = asyncComputed(() => mainStore.isFeatureFlagActiveAsync(KnownFeatureFlags.DeleteCommentsAttachments.Id));\n const elementData = computed(() => pageStore.formDataTyped! as FormDef & { isThreat: boolean });\n const viewTypes = computed(() => pageStore.viewTypes);\n const allElementsWithFileComments = computed(() => pageStore.allElementsWithFileComments);\n const canDeleteFiles = computed(() => pageStore.adminReview && allowDeleteFiles.value && pageStore.canDeleteReviewComments);\n\n const allFileElementsWithFile = useObservable(\n toObserverComputed(() => pageStore.allFileElements as FileDef[]).pipe(\n //tap(i => { debugger; }),\n switchMap(k => combineLatest(k.map(i => i.hasValue$().pipe(map(j => [i, j] as const))))),\n //tap(i => { debugger; }),\n map(i => i.filter(i => i[1]).map(i => i[0])),\n //tap(i => {\n // i[0].comments[0].files[0];\n //}),\n ),\n );\n\n const getViewTypeUrl = (viewType: string) => {\n return mainStore.getUrl(pageStore.adminReview ? \"adminSearchReviewDocument\" : \"downloadDocument\", {\n tenantCode: pageStore.formTenantCode,\n areaCode: pageStore.formTenantCode,\n formId: pageStore.formId,\n document: viewType,\n }) as Promise<string>;\n };\n const uploadFiles = () => {\n uploadStatus.value = \"uploading\";\n uploadPromise.value = (async () => {\n const elementId = pageStore.getElementPathString(elementData.value);\n try {\n const htmlFiles = Array.from(fileRef.value.files as unknown as File[]);\n const filesPromises = htmlFiles.map(async i => (await pageStore.uploadExternalFile({ vmId: elementData.value.vmId, newFile: i, isComment: true }))!);\n const fileObjects = await Promise.all(filesPromises);\n const fileIds = fileObjects.map(i => i.valueId);\n const fileNames = htmlFiles.map(i => i.name);\n const fileContentTypes = htmlFiles.map(i => i.type);\n anyThreat.value = fileObjects.some(i => i.isThreat);\n if (anyThreat.value) {\n throw new Error(\"Potential virus or malware detected.\");\n }\n /*const response = */ await pageStore.addCommentAndChangeStatus({ elementId, elementData: elementData.value, fileIds, fileNames, fileContentTypes, text: null!, status: null!, visibleToSubmitter: null!, userName: null! }); // TODO?\n //if (response && !response.accessible) {\n // alert(\"As a result of your change, this submission is no longer accessible.\");\n // this.$emit(\"change-page\", { page: \"AdminSearch\" })\n // return;\n //}\n fileRef.value.value = null!; // clear attachments\n uploadStatus.value = \"ok\";\n return true;\n } catch (e) {\n uploadStatus.value = \"failed\";\n alert(\"Saving comment failed\");\n throw e;\n }\n })();\n };\n const deleteFile = async (element: BaseElementDefBase, comment: FormComment, file: FormCommentFile) => {\n if (!confirm(\"Delete file?\")) {\n return;\n }\n const elementId = pageStore.getElementPathString(element);\n const _formData = {\n elementId,\n pageNumber: 1,\n formId: elementData.value.formId,\n commentId: comment.id,\n valueId: file.valueId,\n };\n const formData = new FormData();\n for (const key of Object.keys(_formData)) {\n //@ts-ignore\n formData.append(key, _formData[key]);\n }\n const deleteUrl = await mainStore.getUrl(\"deleteComment\", { tenantCode: pageStore.formTenantCode, formId: pageStore.formId });\n const deleteResponse = await fetch(deleteUrl, {\n method: \"POST\",\n headers: await getXsftHeader(mainStore),\n credentials: \"same-origin\",\n body: formData,\n });\n throwIfNonSuccessStatus(deleteResponse);\n\n const remove = <T,>(arr: T[], func: (i: T) => boolean) => arr.splice(arr.findIndex(func), 1);\n remove(comment.files, i => file.valueId == i.valueId);\n if (isNullOrWhitespace(comment.text) && comment.files.length == 0) {\n remove(element.comments, i => comment.id == i.id);\n }\n };\n\n return {\n file: fileRef,\n viewTypes,\n canDeleteFiles,\n getViewTypeUrl,\n\n allFileElementsWithFile,\n allElementsWithFileComments,\n\n uploadFiles,\n deleteFile,\n uploadPromise,\n uploadStatus,\n elementData,\n anyThreat,\n\n elementLabel: (element: BaseElementDefBase) => (element.definition.settings as IControlSettings).label || (element.definition.settings as IControlSettings).shortLabel || \"Unnamed Element\",\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./Files.3.vue?vue&type=style&index=0&id=1873752c&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./Files.3.vue?vue&type=style&index=0&id=1873752c&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./Files.3.vue?vue&type=template&id=1873752c&scoped=true&ts=true\"\nimport script from \"./Files.3.vue?vue&type=script&lang=ts\"\nexport * from \"./Files.3.vue?vue&type=script&lang=ts\"\n\nimport \"./Files.3.vue?vue&type=style&index=0&id=1873752c&scoped=true&lang=css\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1873752c\"]])\n\nexport default __exports__","<template>\n <div>\n <Comments :data=\"formData\" :showAdminFormLevelControls=\"adminReview\" :hideHistory=\"true\" />\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, computed } from \"vue\";\nimport { usePageStore } from \"../pageState/store\";\nimport Comments from \"../elementTemplates/Comments.3.vue\";\nexport default defineComponent({\n components: {\n Comments,\n },\n setup() {\n const pageStore = usePageStore();\n\n return {\n formData: computed(() => pageStore.formData),\n adminReview: computed(() => pageStore.adminReview),\n };\n },\n});\n</script>\n","import { render } from \"./Comments.3.vue?vue&type=template&id=3b9e6376&ts=true\"\nimport script from \"./Comments.3.vue?vue&type=script&lang=ts\"\nexport * from \"./Comments.3.vue?vue&type=script&lang=ts\"\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=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\" v-if=\"!asAdmin\">Form Deleted</h2>\n <h2 class=\"modal-title\" v-if=\"asAdmin\">Submission Deleted</h2>\n <button type=\"button\" class=\"close icon icon-close\" aria-hidden=\"true\" @click=\"$emit('close')\" autofocus aria-label=\"Close\" />\n </div>\n <div class=\"modal-body\">\n <span class=\"action-success-icon icon icon-check\"></span>\n <p describedby-text class=\"action-success-text\" v-if=\"!asAdmin\">Form deleted successfully.</p>\n <p describedby-text class=\"action-success-text\" v-if=\"asAdmin\">Submission deleted successfully.</p>\n </div>\n <div class=\"modal-footer\">\n <a class=\"btn btn-outline-secondary\" @click.prevent=\"$emit('close')\">Close</a>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref } from \"vue\";\nimport { dialogSetup, DialogProps } from \"@/lib/dialogMixin.3\";\ntype Props = { asAdmin: boolean } & DialogProps;\nexport default defineComponent({\n props: [\"asAdmin\", \"triggerElement\"],\n setup(props: Props) {\n const containerRef = ref<HTMLElement>(null!);\n dialogSetup(containerRef, props);\n return { container: containerRef };\n },\n});\n</script>\n","import { render } from \"./DeleteSuccess.3.vue?vue&type=template&id=18f42aaa&ts=true\"\nimport script from \"./DeleteSuccess.3.vue?vue&type=script&lang=ts\"\nexport * from \"./DeleteSuccess.3.vue?vue&type=script&lang=ts\"\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=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">Confirm Return</h2>\n <button type=\"button\" class=\"close icon icon-close\" @click=\"close\" autofocus :disabled=\"submitting\" aria-label=\"Close\" />\n </div>\n <div class=\"modal-body\">\n <div v-if=\"submitting\">\n <LoadingWheel :width=\"100\" />\n </div>\n <template v-else>\n <div v-if=\"messages.length > 0\" class=\"alert alert-danger\">\n <span class=\"sr-only\">Validation:</span>\n <ul>\n <li v-for=\"message in messages\">{{ message }}</li>\n </ul>\n </div>\n <p describedby-text>Are you sure you want to return this submission?</p>\n <div class=\"form-group\" v-if=\"isWorkflow\">\n <label for=\"ReturnConfirmSegment\">Returning to stage:</label>\n <select id=\"ReturnConfirmSegment\" class=\"form-control\" v-model=\"returningSegment\">\n <option v-for=\"segment in possibleStagesToReturn\" :value=\"segment.id\">{{ segment.definition.settings.reviewerStatus || segment.getLabel() }}</option>\n </select>\n </div>\n <div class=\"form-group\" v-if=\"!isWorkflow\">\n <p describedby-text>This will prompt the submitter to correct and resubmit this submission.</p>\n </div>\n <div class=\"form-group\">\n <label for=\"ReturnComment\">Returning with comment:</label>\n <textarea row=\"3\" v-model=\"comment\" id=\"ReturnComment\" class=\"form-control\" placeholder=\"A comment is required\" />\n </div>\n </template>\n </div>\n <div class=\"modal-footer\">\n <button id=\"returnBtn\" class=\"btn btn-primary\" @click=\"submit()\" :disabled=\"submitting\">Return</button>\n <button id=\"cancelBtn\" class=\"btn btn-outline-secondary\" @click=\"close\" :disabled=\"submitting\">Cancel</button>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, computed, SetupContext } from \"vue\";\nimport { dialogSetup, DialogProps } from \"@/lib/dialogMixin.3\";\nimport { usePageStore } from \"../pageState/store\";\nimport LoadingWheel from \"@/lib/LoadingWheel.3.vue\";\nimport { AddCommentResponse } from \"@cs/AddCommentResponse\";\ntype ReturnDraftResponse = {\n success: boolean;\n messages: string[];\n};\ntype Props = {\n returnFunction: (returningSegment: string | null, comment: string | null) => Promise<ReturnDraftResponse & AddCommentResponse>;\n} & DialogProps;\n\nexport default defineComponent({\n components: {\n LoadingWheel,\n },\n props: [\"returnFunction\", \"triggerElement\"],\n setup(props: Props, { emit }: SetupContext) {\n const containerRef = ref<HTMLElement>(null!);\n dialogSetup(containerRef, props);\n\n const returningSegment = ref(null as null | string);\n const submitting = ref(false);\n const comment = ref(null as string | null);\n const messages = ref([] as string[]);\n\n const pageStore = usePageStore();\n const completedSegments = computed(() => pageStore.completedSegments);\n const possibleStagesToReturn = computed(() => pageStore.possibleStagesToReturn);\n const isWorkflow = computed(() => pageStore.isWorkflow);\n\n const submit = async () => {\n if (!isWorkflow.value && (comment.value == null || comment.value.trim().length == 0)) {\n messages.value = [\"Comment is required\"];\n return;\n }\n submitting.value = true;\n const result = await props.returnFunction(returningSegment.value, comment.value);\n submitting.value = false;\n if (result.success) {\n emit(\"close\");\n } else {\n messages.value = result.messages;\n }\n };\n\n return {\n container: containerRef,\n returningSegment,\n messages,\n comment,\n isWorkflow,\n completedSegments,\n possibleStagesToReturn,\n submit,\n submitting,\n\n close: () => emit(\"close\"),\n };\n },\n});\n</script>\n","import { render } from \"./ReturnConfirm.3.vue?vue&type=template&id=4e53c59a&ts=true\"\nimport script from \"./ReturnConfirm.3.vue?vue&type=script&lang=ts\"\nexport * from \"./ReturnConfirm.3.vue?vue&type=script&lang=ts\"\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=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">Returned</h2>\n <button type=\"button\" class=\"close icon icon-close\" aria-hidden=\"true\" @click=\"close\" autofocus aria-label=\"Close\" />\n </div>\n <div class=\"modal-body\">\n <span class=\"action-success-icon icon icon-check\"></span>\n <p describedby-text class=\"action-success-text\">Submission returned successfully.</p>\n </div>\n <div class=\"modal-footer\">\n <a class=\"btn btn-outline-secondary\" @click.prevent=\"close\">Close</a>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, SetupContext } from \"vue\";\nimport { dialogSetup, DialogProps } from \"@/lib/dialogMixin.3\";\ntype Props = DialogProps;\nexport default defineComponent({\n props: [\"triggerElement\"],\n setup(props: Props, { emit }: SetupContext) {\n const containerRef = ref<HTMLElement>(null!);\n dialogSetup(containerRef, props);\n\n return {\n container: containerRef,\n close: () => emit(\"close\"),\n };\n },\n});\n</script>\n","import { render } from \"./ReturnSuccess.3.vue?vue&type=template&id=f4909f08&ts=true\"\nimport script from \"./ReturnSuccess.3.vue?vue&type=script&lang=ts\"\nexport * from \"./ReturnSuccess.3.vue?vue&type=script&lang=ts\"\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=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">{{ status != \"sent\" ? \"Confirm Resend\" : \"Notification resent\" }}</h2>\n <button type=\"button\" class=\"close icon icon-close\" aria-hidden=\"true\" @click=\"close\" autofocus :disabled=\"status == 'sending'\"><span class=\"sr-only\">Close</span></button>\n </div>\n <div class=\"modal-body\">\n <template v-if=\"status == 'pending'\">\n <div v-if=\"messages.length > 0\" class=\"alert alert-danger\">\n <span class=\"sr-only\">Validation:</span>\n <ul>\n <li v-for=\"message in messages\">{{ message }}</li>\n </ul>\n </div>\n <p v-if=\"type == 'email'\">Are you sure you want to resend this email?</p>\n <p v-if=\"type == 'sms'\">Are you sure you want to resend this text message?</p>\n <div v-if=\"commentRequired\" class=\"form-group\">\n <label for=\"ReturnComment\">Returning with comment:</label>\n <textarea row=\"3\" v-model=\"comment\" id=\"returnComment\" class=\"form-control\" placeholder=\"A comment is required\" />\n </div>\n </template>\n <div v-else-if=\"status == 'sending'\">\n <LoadingWheel :width=\"100\" />\n </div>\n <template v-else-if=\"status == 'sent'\">\n <span class=\"action-success-icon icon icon-check\"></span>\n <p v-if=\"type == 'email'\" class=\"action-success-text\">Email sent successfully.</p>\n <p v-if=\"type == 'sms'\" class=\"action-success-text\">Text message sent successfully.</p>\n </template>\n </div>\n <div class=\"modal-footer\">\n <template v-if=\"status != 'sent'\">\n <button id=\"resendBtn\" class=\"btn btn-primary\" @click=\"submit\" :disabled=\"status == 'sending'\">Resend</button>\n <button id=\"cancelBtn\" class=\"btn btn-outline-secondary\" @click=\"$emit('close')\" :disabled=\"status == 'sending'\">Cancel</button>\n </template>\n <a v-else class=\"btn btn-outline-secondary\" @click.prevent=\"close\">Close</a>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, SetupContext } from \"vue\";\nimport LoadingWheel from \"@/lib/LoadingWheel.3.vue\";\nimport { dialogSetup, DialogProps } from \"@/lib/dialogMixin.3\";\ntype Props = {\n resendFunction: (comment: string) => Promise<{ success: boolean; messages: string[] }>; // TODO import type\n commentRequired: boolean;\n} & DialogProps;\nexport default defineComponent({\n props: [\"resendFunction\", \"commentRequired\", \"type\", \"triggerElement\"],\n components: {\n LoadingWheel,\n },\n setup(props: Props, { emit }: SetupContext) {\n const containerRef = ref<HTMLElement>(null!);\n dialogSetup(containerRef, props);\n const status = ref(\"pending\" as \"pending\" | \"sending\" | \"sent\");\n const messages = ref([] as string[]);\n const comment = ref(undefined as undefined | string);\n\n const submit = async () => {\n status.value = \"sending\";\n const result = await props.resendFunction(comment.value!);\n if (result.success) {\n status.value = \"sent\";\n } else {\n status.value = \"pending\";\n messages.value = result.messages;\n }\n };\n\n return {\n container: containerRef,\n status,\n messages,\n submit,\n comment,\n\n close: () => emit(\"close\"),\n };\n },\n});\n</script>\n","import { render } from \"./ResendConfirm.3.vue?vue&type=template&id=a4c0e46a&ts=true\"\nimport script from \"./ResendConfirm.3.vue?vue&type=script&lang=ts\"\nexport * from \"./ResendConfirm.3.vue?vue&type=script&lang=ts\"\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=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">Notification sent</h2>\n <button type=\"button\" class=\"close icon icon-close\" aria-hidden=\"true\" @click=\"$emit('close')\" autofocus><span class=\"sr-only\">Close</span></button>\n </div>\n <div class=\"modal-body\">\n <span class=\"action-success-icon icon icon-check\"></span>\n <p v-if=\"type == 'email'\" class=\"action-success-text\">Email sent successfully.</p>\n <p v-if=\"type == 'sms'\" class=\"action-success-text\">Text message sent successfully.</p>\n </div>\n <div class=\"modal-footer\">\n <a class=\"btn btn-outline-secondary\" @click.prevent=\"$emit('close')\">Close</a>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref } from \"vue\";\nimport { focusTrapSetup } from \"@/lib/focusTrapMixin.3\";\nexport default defineComponent({\n props: [\"type\"],\n setup() {\n const containerRef = ref<HTMLElement>(null!);\n focusTrapSetup(containerRef);\n return { container: containerRef };\n },\n});\n</script>\n","import { render } from \"./ResendSuccess.3.vue?vue&type=template&id=390185bb&ts=true\"\nimport script from \"./ResendSuccess.3.vue?vue&type=script&lang=ts\"\nexport * from \"./ResendSuccess.3.vue?vue&type=script&lang=ts\"\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=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">{{ status == \"submitted\" ? \"Status Updated\" : \"Confirm Status Change\" }}</h2>\n <button type=\"button\" class=\"close icon icon-close\" aria-hidden=\"true\" @click=\"close\" autofocus :disabled=\"status == 'submitting'\" aria-label=\"Close\" />\n </div>\n <div class=\"modal-body\">\n <template v-if=\"status == 'pending'\">\n <div v-if=\"messages.length > 0\" class=\"alert alert-danger\">\n <span class=\"sr-only\">Validation:</span>\n <ul>\n <li v-for=\"message in messages\">{{ message }}</li>\n </ul>\n </div>\n <div class=\"form-group\">\n <label for=\"currentStatusLabel\" describedby-text\n >Current Status: <span class=\"p-1\">{{ currentStatusLabel }}</span></label\n >\n <br />\n <label :for=\"id + '_Status'\">Change status to</label>\n <select name=\"status\" :id=\"id + '_Status'\" class=\"form-control\" v-model=\"newStatus\">\n <option :value=\"possibleStatus.value\" v-for=\"possibleStatus in possibleStatusesExcludingIgnored\">{{ possibleStatus.text || possibleStatus.value }}{{ isStatusDisabled(possibleStatus) ? \" (Unavailable)\" : \"\" }}</option>\n </select>\n </div>\n <div class=\"form-group\">\n <label for=\"ReturnComment\">Comment:</label>\n <textarea row=\"3\" v-model=\"comment\" id=\"StatusChangeComment\" class=\"form-control\" placeholder=\"A comment is required\" />\n </div>\n </template>\n <div v-else-if=\"status == 'submitting'\">\n <LoadingWheel :width=\"100\" />\n </div>\n <template v-else-if=\"status == 'submitted'\">\n <span class=\"action-success-icon icon icon-check\"></span>\n <p describedby-text class=\"action-success-text\">Status updated successfully.</p>\n </template>\n <div v-else-if=\"status == 'broken'\">\n <LoadingWheel :width=\"100\" />\n </div>\n </div>\n <div class=\"modal-footer\">\n <template v-if=\"status != 'submitted'\">\n <button id=\"statusChangeBtn\" class=\"btn btn-primary\" @click=\"submit()\" :disabled=\"status == 'submitting'\">Change Status</button>\n <button id=\"cancelBtn\" class=\"btn btn-outline-secondary\" @click=\"close\" :disabled=\"status == 'submitting'\">Cancel</button>\n </template>\n <button id=\"cancelBtn\" class=\"btn btn-outline-secondary\" @click=\"close\" v-else>Close</button>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, computed, SetupContext } from \"vue\";\nimport { dialogSetup, DialogProps } from \"@/lib/dialogMixin.3\";\nimport type { Status as FormDefStatus } from \"@cs-ts/status\";\nimport { StandardFormStatus } from \"@cs/StandardFormStatus\";\nimport { usePageStore } from \"../pageState/store\";\nimport LoadingWheel from \"@/lib/LoadingWheel.3.vue\";\nimport generateGuid from \"@/lib/generateGuid\";\ntype Props = {\n returnFunction: (newStatus: string, comment: string) => Promise<{ success: boolean; messages: string[] }>;\n} & DialogProps;\nexport default defineComponent({\n components: {\n LoadingWheel,\n },\n props: [\"returnFunction\", \"triggerElement\"],\n setup(props: Props, { emit }: SetupContext) {\n const containerRef = ref<HTMLElement>(null!);\n dialogSetup(containerRef, props);\n\n const status = ref(\"pending\" as \"pending\" | \"submitting\" | \"submitted\");\n const newStatus = ref(null as null | string);\n const comment = ref(null as null | string);\n const messages = ref([] as string[]);\n const id = generateGuid();\n\n const pageStore = usePageStore();\n\n const possibleStatusesExcludingIgnored = computed(() => {\n return pageStore.possibleStatuses.filter(i => ![StandardFormStatus.Returned, StandardFormStatus.Deleted, StandardFormStatus.InProgress, StandardFormStatus.Submitting].some(j => j == i.value));\n });\n\n const currentStatusLabel = computed(() => pageStore.currentStatusLabel);\n const anonymousUser = computed(() => pageStore.currentStatusLabel);\n\n const isStatusDisabled = (status: FormDefStatus) => {\n if (status.value == StandardFormStatus.Returned && anonymousUser.value) {\n return true;\n }\n return false;\n };\n\n const submit = async () => {\n if (newStatus.value == null || comment.value == null || comment.value.trim().length == 0) {\n messages.value = [\"Status and Comment are required\"];\n return;\n }\n status.value = \"submitting\";\n const result = await props.returnFunction(newStatus.value, comment.value);\n if (result.success) {\n status.value = \"submitted\";\n } else {\n status.value = \"pending\";\n messages.value = result.messages;\n }\n };\n\n return {\n container: containerRef,\n id,\n status,\n currentStatusLabel,\n isStatusDisabled,\n possibleStatusesExcludingIgnored,\n messages,\n comment,\n submit,\n newStatus,\n close: () => emit(\"close\"),\n };\n },\n});\n</script>\n","import { render } from \"./ChangeStatusConfirm.3.vue?vue&type=template&id=c64a7200&ts=true\"\nimport script from \"./ChangeStatusConfirm.3.vue?vue&type=script&lang=ts\"\nexport * from \"./ChangeStatusConfirm.3.vue?vue&type=script&lang=ts\"\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=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">Status Updated</h2>\n <button type=\"button\" class=\"close icon icon-close\" aria-hidden=\"true\" @click=\"$emit('close')\" autofocus aria-label=\"Close\" />\n </div>\n <div class=\"modal-body\">\n <span class=\"action-success-icon icon icon-check\"></span>\n <p describedby-text class=\"action-success-text\">Status updated successfully.</p>\n </div>\n <div class=\"modal-footer\">\n <a class=\"btn btn-outline-secondary\" @click.prevent=\"$emit('close')\">Close</a>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref } from \"vue\";\nimport { dialogSetup, DialogProps } from \"@/lib/dialogMixin.3\";\nexport default defineComponent({\n props: [\"triggerElement\"],\n setup(props: DialogProps) {\n const containerRef = ref<HTMLElement>(null!);\n dialogSetup(containerRef, props);\n return { container: containerRef };\n },\n});\n</script>\n","import { render } from \"./ChangeStatusSuccess.3.vue?vue&type=template&id=40cd9069&ts=true\"\nimport script from \"./ChangeStatusSuccess.3.vue?vue&type=script&lang=ts\"\nexport * from \"./ChangeStatusSuccess.3.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<style scoped>\n.modal-footer {\n display: block;\n text-align: center;\n}\n</style>\n<template>\n <div class=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">Confirm Submission</h2>\n <button type=\"button\" class=\"close icon icon-close\" aria-hidden=\"true\" @click=\"$emit('close')\" autofocus :disabled=\"submitting\" aria-label=\"Close\" />\n </div>\n <div class=\"modal-body\">\n <template v-if=\"!submitting\">\n <p describedby-text>Are you sure you want to submit?</p>\n <template v-if=\"confirmComponents.length > 0\">\n <template v-for=\"confirmComponent in confirmComponents\">\n <component :is=\"confirmComponent.component\" :data=\"confirmComponent.data\"></component>\n </template>\n </template>\n </template>\n <div v-if=\"submitting\">\n <LoadingWheel :width=\"100\" />\n </div>\n </div>\n <div class=\"modal-footer\">\n <button v-for=\"submitButton in submitButtons\" class=\"btn btn-primary my-2\" @click=\"submit(submitButton.trigger)\" :disabled=\"submitting || blockSubmit\">{{ truncateLongText(submitButton.text) }}</button>\n <button class=\"btn btn-outline-secondary my-2\" @click=\"$emit('close')\" :disabled=\"submitting\">Cancel</button>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, SetupContext } from \"vue\";\nimport LoadingWheel from \"@/lib/LoadingWheel.3.vue\";\nimport type { Observable } from \"rxjs\";\nimport { useObservable } from \"@vueuse/rxjs\";\nimport { dialogSetup } from \"@/lib/dialogMixin.3\";\ninterface Props {\n submitFunction: (triggerKey: string | null) => Promise<() => Promise<void>>;\n /* eslint-disable @typescript-eslint/no-explicit-any*/ // TODO\n confirmComponents: { component: any; data: any }[];\n submitButtons: any[];\n blockSubmit$: Observable<any>;\n}\nexport default defineComponent({\n props: [\"submitFunction\", \"confirmComponents\", \"submitButtons\", \"blockSubmit$\"],\n components: {\n LoadingWheel,\n },\n setup(props: Props, { emit }: SetupContext) {\n const containerRef = ref<HTMLElement>(null!);\n dialogSetup(containerRef);\n const submitting = ref(false);\n\n const submit = async (triggerKey: string | null) => {\n submitting.value = true;\n const post = await props.submitFunction(triggerKey);\n await post();\n submitting.value = false;\n emit(\"close\");\n };\n\n // TODO refactor into utils\n const truncateLongText = (text: string) => {\n if (text == null || text.length <= 40) {\n return text;\n } else {\n return text.slice(0, 40) + \"...\";\n }\n };\n\n return {\n container: containerRef,\n submitting,\n blockSubmit: useObservable(props.blockSubmit$),\n submit,\n truncateLongText,\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./SubmitConfirm.3.vue?vue&type=style&index=0&id=a0ef2fbe&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./SubmitConfirm.3.vue?vue&type=style&index=0&id=a0ef2fbe&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./SubmitConfirm.3.vue?vue&type=template&id=a0ef2fbe&scoped=true&ts=true\"\nimport script from \"./SubmitConfirm.3.vue?vue&type=script&lang=ts\"\nexport * from \"./SubmitConfirm.3.vue?vue&type=script&lang=ts\"\n\nimport \"./SubmitConfirm.3.vue?vue&type=style&index=0&id=a0ef2fbe&scoped=true&lang=css\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-a0ef2fbe\"]])\n\nexport default __exports__","<style scoped lang=\"less\">\n.modal-footer {\n display: block;\n text-align: center;\n}\nul {\n list-style-type: none;\n padding-left: 5px;\n}\n.icon-download {\n text-decoration: none !important;\n &:before {\n margin-right: 5px;\n vertical-align: middle;\n color: #444444;\n }\n}\n</style>\n<template>\n <div class=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">Form Submitted</h2>\n <button type=\"button\" class=\"close icon icon-close\" @click=\"$emit('close')\" autofocus aria-label=\"Close\" />\n </div>\n <div class=\"modal-body\">\n <span class=\"action-success-icon icon icon-check\"></span>\n <p describedby-text class=\"action-success-text\">Form submitted successfully.</p>\n <template v-if=\"receiptContents.length > 0\">\n <br />\n <template v-for=\"receiptContent in receiptContents\">\n <div v-html=\"receiptContent\"></div>\n </template>\n </template>\n <hr class=\"clearfix\" />\n <template v-if=\"documents.length > 0\">\n <h3 class=\"h5\">Produced File{{ documents.length != 1 ? \"s\" : \"\" }}</h3>\n <ul>\n <template v-for=\"document in documents\">\n <li v-if=\"document.text != 'All Documents'\" class=\"mb-1\">\n <a download class=\"icon icon-download\" @click=\"documentClick($event)\" :href=\"adminPreview ? null : document.url\" target=\"_blank\" :aria-label=\"document.text\">{{ document.text }}</a>\n </li>\n <li v-else>\n <a download class=\"btn btn-sm btn-outline-secondary mt-2\" @click=\"documentClick($event)\" :href=\"adminPreview ? null : document.url\" target=\"_blank\">Download All</a>\n </li>\n </template>\n </ul>\n </template>\n <small><a download @click=\"documentClick($event)\" :href=\"submissionUrl\" target=\"_blank\">Download Submission</a></small>\n </div>\n <div class=\"modal-footer\">\n <a class=\"btn btn-outline-secondary\" v-if=\"hasRedirect\" :href=\"redirectUrl\">Continue</a>\n <a class=\"btn btn-outline-secondary\" tabindex=\"0\" v-else @click.prevent=\"$emit('close')\">Close</a>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, computed } from \"vue\";\nimport { dialogSetup, DialogProps } from \"@/lib/dialogMixin.3\";\nimport { useMainStore } from \"@/mainStore\";\ninterface Props extends DialogProps {\n adminPreview: boolean;\n redirectUrl: string | null;\n /* eslint-disable @typescript-eslint/no-explicit-any*/ // TODO\n documents: any[];\n submissionUrl: string;\n receiptContents: string;\n}\nexport default defineComponent({\n props: [\"adminPreview\", \"redirectUrl\", \"documents\", \"submissionUrl\", \"receiptContents\", \"triggerElement\"],\n setup(props: Props) {\n const mainStore = useMainStore();\n const containerRef = ref<HTMLElement>(null!);\n dialogSetup(containerRef, props);\n const hasRedirect = computed(() => {\n return !!props.redirectUrl;\n });\n const documentClick = (event: Event) => {\n if (props.adminPreview) {\n alert(\"Documents are not generated on preview mode submission\");\n event.preventDefault();\n } else {\n const statusMessage = new Promise<string>(resolve => setTimeout(() => resolve(\"Files have been successfully downloaded\"), 2000));\n mainStore.setLiveRegion(statusMessage);\n }\n };\n\n return {\n container: containerRef,\n hasRedirect,\n documentClick,\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./SubmitSuccess.3.vue?vue&type=style&index=0&id=1f7f051f&scoped=true&lang=less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./SubmitSuccess.3.vue?vue&type=style&index=0&id=1f7f051f&scoped=true&lang=less\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./SubmitSuccess.3.vue?vue&type=template&id=1f7f051f&scoped=true&ts=true\"\nimport script from \"./SubmitSuccess.3.vue?vue&type=script&lang=ts\"\nexport * from \"./SubmitSuccess.3.vue?vue&type=script&lang=ts\"\n\nimport \"./SubmitSuccess.3.vue?vue&type=style&index=0&id=1f7f051f&scoped=true&lang=less\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1f7f051f\"]])\n\nexport default __exports__","<style scoped lang=\"less\">\n.modal-footer {\n display: block;\n text-align: center;\n}\n</style>\n<template>\n <div class=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">Error Occurred</h2>\n <button type=\"button\" class=\"close icon icon-close\" @click=\"$emit('close')\" autofocus aria-label=\"Close\" />\n </div>\n <div class=\"modal-body\">\n <div v-if=\"content\" v-html=\"content\" describedby-text></div>\n <p describedby-text class=\"action-failure-text\" v-else>An error occurred while submitting. Please try again later.</p>\n </div>\n <div class=\"modal-footer\">\n <a class=\"btn btn-outline-secondary\" tabindex=\"0\" @click.prevent=\"$emit('close')\">Ok</a>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref } from \"vue\";\nimport { dialogSetup, DialogProps } from \"@/lib/dialogMixin.3\";\nimport { asyncComputed } from \"@vueuse/core\";\nimport { useMainStore } from \"@/mainStore\";\ninterface Props extends DialogProps {}\nexport default defineComponent({\n props: [\"triggerElement\"],\n setup(props: Props) {\n const containerRef = ref<HTMLElement>(null!);\n dialogSetup(containerRef, props);\n const mainStore = useMainStore();\n return {\n content: asyncComputed(() => mainStore.tenantData?.customErrorHtml, null),\n container: containerRef,\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./SubmitFailure.3.vue?vue&type=style&index=0&id=2d2a89b6&scoped=true&lang=less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./SubmitFailure.3.vue?vue&type=style&index=0&id=2d2a89b6&scoped=true&lang=less\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./SubmitFailure.3.vue?vue&type=template&id=2d2a89b6&scoped=true&ts=true\"\nimport script from \"./SubmitFailure.3.vue?vue&type=script&lang=ts\"\nexport * from \"./SubmitFailure.3.vue?vue&type=script&lang=ts\"\n\nimport \"./SubmitFailure.3.vue?vue&type=style&index=0&id=2d2a89b6&scoped=true&lang=less\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-2d2a89b6\"]])\n\nexport default __exports__","<style scoped lang=\"less\">\nul {\n list-style-type: disc;\n}\n</style>\n<template>\n <div class=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">Validation Issues</h2>\n <button type=\"button\" class=\"close\" @click=\"goToPageFirstErrorFunc()\" autofocus aria-label=\"Close\"><span class=\"icon icon-close\" aria-hidden=\"true\"></span></button>\n </div>\n <div class=\"modal-body\" describedby-text>\n <p>Form is not ready to submit.</p>\n <p v-if=\"pageGroups[0].pages.length == 1\">\n Please correct the\n <!-- Add sr only copy since the original link is intently hidden to announce it only on focus -->\n <span class=\"sr-only\">validation issues</span>\n <span aria-hidden=\"true\">\n <a href=\"#\" @click.prevent=\"goToPageFirstErrorFunc()\">\n validation issues\n <span class=\"sr-only\">\n ,\n <Promised :promise=\"pageErrors[0]\" #combined=\"{ data }\">\n <!-- Add comma with whitespaces to properly emphasize each error by pause -->\n <span>{{ (data || []).join(\" , \") }}</span>\n </Promised>\n </span>\n </a>\n </span>\n on the form.\n </p>\n <template v-else>\n <p>Please select a page to navigate to its first invalid field:</p>\n <template v-for=\"page in invalidPages\">\n <!-- Windows Narrator workaround for list items with bullets not read aloud -->\n <p role=\"link\" class=\"sr-only\">{{ page.definition.settings.label }}.</p>\n </template>\n <ul>\n <li v-for=\"(page, index) in invalidPages\" aria-hidden=\"true\">\n <a href=\"#\" @click.prevent=\"goToPageFirstErrorFunc(page)\">\n {{ page.definition.settings.label }}\n <span class=\"sr-only\">\n Errors:\n <Promised :promise=\"pageErrors[index]\" #combined=\"{ data }\">\n <!-- Add comma with whitespaces to properly emphasize each error by pause -->\n <span>{{ (data || []).join(\" , \") }}</span>\n </Promised>\n </span>\n </a>\n </li>\n </ul>\n </template>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { computed, defineComponent, ref, SetupContext } from \"vue\";\nimport { dialogSetup, DialogProps } from \"@/lib/dialogMixin.3\";\nimport { Promised } from \"vue-promised\";\nimport type PageDef from \"../elements/PageDef\";\ntype Props = {\n pageGroups: { pages: PageDef[] }[];\n goToPageFirstError: (page?: PageDef) => void;\n} & DialogProps;\nexport default defineComponent({\n components: { Promised },\n props: [\"pageGroups\", \"goToPageFirstError\", \"triggerElement\"],\n setup(props: Props, context: SetupContext) {\n const containerRef = ref<HTMLElement>(null!);\n dialogSetup(containerRef, props);\n const invalidPages = computed(() => {\n return (props.pageGroups[0].pages || []).filter(page => page.status == \"Invalid\");\n });\n const pageErrors = computed(() => {\n return invalidPages.value.map(page => page.descendentsErrors());\n });\n const goToPageFirstErrorFunc = async (page?: PageDef) => {\n context.emit(\"close\");\n props.goToPageFirstError(page);\n };\n\n return {\n container: containerRef,\n invalidPages,\n pageErrors,\n goToPageFirstErrorFunc,\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./SubmitErrors.3.vue?vue&type=style&index=0&id=caf2feea&scoped=true&lang=less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./SubmitErrors.3.vue?vue&type=style&index=0&id=caf2feea&scoped=true&lang=less\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./SubmitErrors.3.vue?vue&type=template&id=caf2feea&scoped=true&ts=true\"\nimport script from \"./SubmitErrors.3.vue?vue&type=script&lang=ts\"\nexport * from \"./SubmitErrors.3.vue?vue&type=script&lang=ts\"\n\nimport \"./SubmitErrors.3.vue?vue&type=style&index=0&id=caf2feea&scoped=true&lang=less\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-caf2feea\"]])\n\nexport default __exports__","<style scoped>\n.modal-footer {\n display: block;\n text-align: center;\n}\n</style>\n<template>\n <div class=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">Locked</h2>\n </div>\n <div class=\"modal-body\">\n <template v-if=\"!submitting\">\n <p describedby-text>Please choose an action:</p>\n <button v-for=\"(lockAction, index) in lockActions\" class=\"btn btn-primary my-2 mr-2\" @click=\"submit(lockAction)\" :disabled=\"submitting\" :id=\"'lockActionBtn' + index\">{{ lockAction.label }}</button>\n </template>\n <div v-if=\"submitting\">\n <LoadingWheel :width=\"100\" />\n </div>\n </div>\n <div class=\"modal-footer\"></div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, SetupContext } from \"vue\";\nimport { LockAction } from \"../elements/BaseElementDef\";\nimport LoadingWheel from \"@/lib/LoadingWheel.3.vue\";\nimport { dialogSetup } from \"@/lib/dialogMixin.3\";\ninterface Props {\n submitFunction: (triggerKey: LockAction) => Promise<void>;\n lockActions: LockAction[];\n}\nexport default defineComponent({\n props: [\"submitFunction\", \"lockActions\"],\n components: {\n LoadingWheel,\n },\n setup(props: Props, { emit }: SetupContext) {\n const containerRef = ref<HTMLElement>(null!);\n dialogSetup(containerRef);\n const submitting = ref(false);\n\n const submit = async (lockAction: LockAction) => {\n submitting.value = true;\n await props.submitFunction(lockAction);\n submitting.value = false;\n emit(\"close\");\n };\n\n return {\n container: containerRef,\n submitting,\n submit,\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./LockAction.3.vue?vue&type=style&index=0&id=36e18e91&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./LockAction.3.vue?vue&type=style&index=0&id=36e18e91&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./LockAction.3.vue?vue&type=template&id=36e18e91&scoped=true&ts=true\"\nimport script from \"./LockAction.3.vue?vue&type=script&lang=ts\"\nexport * from \"./LockAction.3.vue?vue&type=script&lang=ts\"\n\nimport \"./LockAction.3.vue?vue&type=style&index=0&id=36e18e91&scoped=true&lang=css\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-36e18e91\"]])\n\nexport default __exports__","<template>\n <div class=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">{{ title }}</h2>\n </div>\n <div class=\"modal-body\">\n <LoadingWheel :width=\"100\" />\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, SetupContext } from \"vue\";\nimport LoadingWheel from \"@/lib/LoadingWheel.3.vue\";\nimport { dialogSetup, DialogProps } from \"@/lib/dialogMixin.3\";\ntype Props = {\n title: string;\n loadingPromise: Promise<void>;\n} & DialogProps;\nexport default defineComponent({\n props: [\"title\", \"loadingPromise\", \"triggerElement\"],\n setup(props: Props, context: SetupContext) {\n const containerRef = ref<HTMLElement>(null!);\n dialogSetup(containerRef, props);\n\n props.loadingPromise.then(() => context.emit(\"close\"));\n\n return {\n container: containerRef,\n };\n },\n components: {\n LoadingWheel,\n },\n});\n</script>\n","import { render } from \"./Loading.3.vue?vue&type=template&id=201b7f97&ts=true\"\nimport script from \"./Loading.3.vue?vue&type=script&lang=ts\"\nexport * from \"./Loading.3.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<style scoped>\n.modal-footer {\n display: block;\n text-align: center;\n}\n.pdfPage {\n border: 5px solid #cccccc;\n max-height: 50vh;\n overflow: scroll;\n}\n.secondVerificationSection,\n.firstVerificationSection,\n.verificationOr {\n border-bottom: 1px solid #999;\n font-size: large;\n}\n.modal-content {\n width: min(90vw, 1800px);\n}\n</style>\n<template>\n <div class=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">Confirm Submission</h2>\n <button type=\"button\" class=\"close icon icon-close\" aria-label=\"Close\" aria-hidden=\"true\" @click=\"$emit('close')\" autofocus :disabled=\"submitting\" />\n </div>\n <div class=\"modal-body\" describedby-text>\n <div v-show=\"!submitting\">\n <p>To finish this submission, you must sign.</p>\n <div class=\"pdfPage\">\n <pdf v-for=\"i in numPages\" :key=\"i\" :src=\"pdfDataTask\" :page=\"i\" />\n </div>\n <p>By submitting this signature, you agree that:</p>\n <!-- TODO - actual legal term -->\n <ol>\n <li>you accept doing business electronically</li>\n <li>you intend to sign</li>\n </ol>\n <div class=\"alert alert-dark\">To receive a non-electronic version of this document, please contact us.</div>\n <!-- style=\"width: 50%; display: inline-block\" -->\n <div v-if=\"messages.length > 0\" class=\"alert alert-danger\">\n <span>Issues:</span>\n <ul>\n <li v-for=\"message in messages\">{{ message }}</li>\n </ul>\n </div>\n <div class=\"row\" v-if=\"requireUserVerification\">\n <div class=\"col-12 text-center mb-2 firstVerificationSection\">\n <strong>First</strong>\n </div>\n <div class=\"form-group col-md-8\">\n <label class=\"control-label\">Verify Email</label>\n <input type=\"email\" placeholder=\"example@example.com\" class=\"form-control\" id=\"sendVerifyEmailControl\" v-model=\"verifyEmail\" />\n </div>\n <div class=\"form-group col-md-4\">\n <br />\n <button class=\"btn btn-primary\" id=\"sendVerifyEmailBtn\" @click=\"sendVerify('Email')\" :disabled=\"submitting\">Send Verify Code by Email</button>\n <AsyncOperationStatus :promise=\"sendVerifyPromiseEmail\" />\n </div>\n <template v-if=\"enableSmsMessages\">\n <div class=\"col-12 text-center mb-2 verificationOr\">\n <strong>OR</strong>\n </div>\n <div class=\"form-group col-md-8\">\n <label class=\"control-label\">Verify Phone Number</label>\n <input type=\"phone\" placeholder=\"(999) 999-9999\" class=\"form-control\" ref=\"verifyPhoneNumber\" @input=\"handlePhoneInput\" id=\"sendVerifyPhoneControl\" :value=\"verifyPhone\" />\n </div>\n <div class=\"form-group col-md-4\">\n <br />\n <button class=\"btn btn-primary\" id=\"sendVerifyPhoneBtn\" @click=\"sendVerify('Phone')\" :disabled=\"submitting\">Send Verify Code by SMS</button>\n <AsyncOperationStatus :promise=\"sendVerifyPromisePhone\" />\n </div>\n </template>\n </div>\n <div class=\"row\">\n <div class=\"col-12 text-center mb-2 secondVerificationSection\" v-if=\"requireUserVerification\">\n <strong>Second</strong>\n </div>\n <div class=\"form-group\" :class=\"[requireUserVerification ? 'col-md-4' : 'col-md-6']\">\n <label class=\"control-label\">Sign Name</label>\n <input type=\"text\" placeholder=\"Signer's Full Name\" class=\"form-control\" id=\"signNameControl\" v-model=\"signName\" />\n </div>\n <div class=\"form-group\" :class=\"[requireUserVerification ? 'col-md-4' : 'col-md-6']\">\n <label class=\"control-label\">Sign Date</label>\n <input type=\"text\" :readonly=\"!manuallyEnterSignDate\" :placeholder=\"signDatePlaceholder\" :class=\"manuallyEnterSignDate ? ['form-control'] : ['form-control-plaintext']\" id=\"signDateControl\" v-model=\"signDate\" />\n </div>\n <div class=\"form-group col-md-4\" v-if=\"requireUserVerification\">\n <label class=\"control-label\">Verify Code</label>\n <input type=\"text\" inputmode=\"numeric\" placeholder=\"999999\" class=\"form-control\" id=\"verifyCodeControl\" v-model=\"verifyCode\" />\n </div>\n </div>\n </div>\n <div v-if=\"submitting\">\n <LoadingWheel :width=\"100\" />\n </div>\n </div>\n <div class=\"modal-footer\">\n <button class=\"btn btn-primary\" id=\"signSubmitBtn\" @click=\"signAndSubmit\" :disabled=\"submitting\">Sign and Submit</button>\n <button class=\"btn btn-outline-secondary\" @click=\"$emit('close')\" :disabled=\"submitting\">Cancel</button>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, defineAsyncComponent, ref, onMounted, computed, SetupContext } from \"vue\";\nimport { createTextMaskInputElement } from \"text-mask-core\";\nimport LoadingWheel from \"@/lib/LoadingWheel.3.vue\";\nimport AsyncOperationStatus from \"@/lib/AsyncOperationStatus.3.vue\";\nimport { useMainStore } from \"@/mainStore\";\nimport { asyncComputed } from \"@vueuse/core\";\nimport { dialogSetup } from \"@/lib/dialogMixin.3\";\nimport type pdfJs from \"pdfjs-dist\";\ninterface Props {\n requireUserVerification: boolean;\n pdfData: typeof pdfJs;\n sendVerifyFunction: (verifyEmail: string, verifyPhoneNumber: string) => { success: boolean; messages?: string[] };\n signAndSubmitFunction: (signName: string, signDate: string, verifyCode: string) => { success: boolean; messages?: string[] };\n}\nexport default defineComponent({\n components: {\n LoadingWheel,\n AsyncOperationStatus,\n pdf: defineAsyncComponent({\n loadingComponent: LoadingWheel,\n loader: () => import(/* webpackChunkName: \"PdfRenderer\" */ \"@/lib/vue-pdf/src/vuePdfNoSss.3.vue\"),\n }),\n },\n props: [\"requireUserVerification\", \"pdfData\", \"sendVerifyFunction\", \"signAndSubmitFunction\"],\n setup(props: Props, { emit }: SetupContext) {\n const mainStore = useMainStore();\n const containerRef = ref<HTMLElement>(null!);\n dialogSetup(containerRef);\n\n const verifyPhoneNumberRef = ref<HTMLElement>(null!);\n const manuallyEnterSignDate = ref(false);\n const submitting = ref(false);\n const signName = ref<string>(null!);\n const signDate = ref<string>(null!);\n const verifyEmail = ref<string>(null!);\n const verifyPhone = ref<string>(null!);\n const sendVerifyPromiseEmail = ref<Promise<void>>(null!);\n const sendVerifyPromisePhone = ref<Promise<void>>(null!);\n const verifyCode = ref<string>(null!);\n const pdfDataTask = ref<ReturnType<(typeof pdfJs)[\"getDocument\"]>>(null!);\n const numPages = ref<number>(null!);\n const messages = ref<string[]>([]);\n const phoneMask = ref<ReturnType<typeof createTextMaskInputElement>>(null!);\n\n const enableSmsMessages = asyncComputed(() => {\n return mainStore.isFeatureFlagActiveAsync(\"SmsMessages\");\n });\n const signDatePlaceholder = computed(() => {\n const now = new Date();\n return `${(now.getMonth() + 1).toString().padStart(2, \"0\")}-${now.getDate().toString().padStart(2, \"0\")}-${now.getFullYear()}`;\n });\n\n const handlePhoneInput = (event: Event) => {\n if (phoneMask.value) {\n phoneMask.value.update((event.target! as HTMLInputElement).value);\n }\n verifyPhone.value = (event.target! as HTMLInputElement).value;\n };\n const sendVerify = (type: string) => {\n const isEmail = type == \"Email\";\n const promise = (async () => {\n const result = await (isEmail ? props.sendVerifyFunction(verifyEmail.value, null!) : props.sendVerifyFunction(null!, verifyPhone.value));\n if (result.success) {\n messages.value = [];\n } else {\n messages.value = result.messages!;\n throw new Error(\"Failed\");\n }\n })();\n if (isEmail) {\n sendVerifyPromiseEmail.value = promise;\n } else {\n sendVerifyPromisePhone.value = promise;\n }\n };\n const signAndSubmit = async () => {\n submitting.value = true;\n const result = await props.signAndSubmitFunction(signName.value, signDate.value, verifyCode.value);\n submitting.value = false;\n if (result.success) {\n emit(\"close\");\n } else {\n messages.value = result.messages!;\n }\n };\n\n onMounted(() => {\n if (!manuallyEnterSignDate.value) {\n signDate.value = signDatePlaceholder.value;\n }\n setTimeout(async () => {\n // to avoid pdf threading issues on double sign\n const pdf = (await import(/* webpackChunkName: \"PdfRenderer\" */ \"@/lib/vue-pdf/src/vuePdfNoSss.3.vue\")).default;\n pdfDataTask.value = pdf.createLoadingTask(props.pdfData);\n pdfDataTask.value.promise.then((pdf: { numPages: number }) => {\n numPages.value = pdf.numPages;\n });\n }, 0);\n if (props.requireUserVerification) {\n const createTextMaskFunc = () => {\n if (verifyPhoneNumberRef.value == null) {\n setTimeout(createTextMaskFunc, 100);\n } else {\n const config = {\n inputElement: verifyPhoneNumberRef.value,\n mask: [\"(\", /\\d/, /\\d/, /\\d/, \")\", \" \", /\\d/, /\\d/, /\\d/, \"-\", /\\d/, /\\d/, /\\d/, /\\d/],\n guide: false,\n placeholderChar: \"\\u2000\",\n };\n phoneMask.value = createTextMaskInputElement(config);\n }\n };\n createTextMaskFunc();\n }\n });\n\n return {\n verifyPhoneNumber: verifyPhoneNumberRef,\n container: containerRef,\n manuallyEnterSignDate,\n submitting,\n signName,\n signDate,\n verifyEmail,\n verifyPhone,\n sendVerifyPromiseEmail,\n sendVerifyPromisePhone,\n verifyCode,\n pdfDataTask,\n numPages,\n messages,\n\n enableSmsMessages,\n signDatePlaceholder,\n\n handlePhoneInput,\n sendVerify,\n signAndSubmit,\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./Sign.3.vue?vue&type=style&index=0&id=7f0ee072&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./Sign.3.vue?vue&type=style&index=0&id=7f0ee072&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./Sign.3.vue?vue&type=template&id=7f0ee072&scoped=true&ts=true\"\nimport script from \"./Sign.3.vue?vue&type=script&lang=ts\"\nexport * from \"./Sign.3.vue?vue&type=script&lang=ts\"\n\nimport \"./Sign.3.vue?vue&type=style&index=0&id=7f0ee072&scoped=true&lang=css\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7f0ee072\"]])\n\nexport default __exports__","<style scoped lang=\"less\">\n.modal-title {\n text-transform: uppercase;\n}\n</style>\n<template>\n <div class=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">Workflow Manual Override</h2>\n <button type=\"button\" class=\"close icon icon-close\" aria-hidden=\"true\" @click=\"$emit('close')\" autofocus :disabled=\"submitting\" aria-label=\"Close\" />\n </div>\n <div class=\"modal-body\">\n <div v-if=\"submitting\">\n <LoadingWheel :width=\"100\" />\n </div>\n <template v-else>\n <div v-if=\"messages.length > 0\" class=\"invalid-feedback d-block\">\n <span>Validation:</span>\n <ul>\n <li v-for=\"message in messages\">{{ message }}</li>\n </ul>\n </div>\n <div describedby-text class=\"alert alert-danger\">These actions allow you to bypass safety controls. This is inherently unsafe, and may cause unexpected issues.</div>\n <div class=\"form-group\">\n <label for=\"ManualOverrideType\">Action To Take:</label>\n <select id=\"ManualOverrideType\" class=\"form-control\" v-model=\"type\">\n <option selected :value=\"null\">-- Select an action --</option>\n <option value=\"ForceWorkflowStatus\">Move To Step</option>\n <option value=\"ForceDefinitionUpdate\" v-if=\"canUpgradeDefinition\">Update To Definition</option>\n <option value=\"EndWorkflow\">End Workflow</option>\n <option value=\"DeleteWorkflow\">Delete Submission</option>\n </select>\n </div>\n <div class=\"form-group\" v-show=\"type == 'ForceDefinitionUpdate'\">\n <label for=\"ManualOverrideRevision\">Target Revision:</label>\n <span v-if=\"possibleUpgradeRevisions == null\"> Loading... </span>\n <span v-else-if=\"possibleUpgradeRevisions.length == 0\"> No possible upgrades </span>\n <span v-else-if=\"possibleUpgradeRevisions.length == 1\"> {{ localeDateTime(possibleUpgradeRevisions[0].Updated) }} {{ possibleUpgradeRevisions[0].UpdateMessage != null && possibleUpgradeRevisions[0].UpdateMessage != \"\" ? \" with comment: \" : \"\" }} {{ possibleUpgradeRevisions[0].UpdateMessage }} </span>\n <select id=\"ManualOverrideRevision\" class=\"form-control\" v-model=\"manualOverrideRevision\" v-else>\n <option selected :value=\"null\">-- Select an revision --</option>\n <option v-for=\"revision in possibleUpgradeRevisions\" :value=\"revision.FormHash\">{{ localeDateTime(revision.Updated) }} {{ revision.UpdateMessage != null && revision.UpdateMessage != \"\" ? \" with comment: \" : \"\" }} {{ revision.UpdateMessage }}</option>\n </select>\n </div>\n <div class=\"form-group\" v-show=\"type == 'ForceWorkflowStatus'\">\n <label for=\"ManualOverrideStep\">Step:</label>\n <select id=\"ManualOverrideStep\" class=\"form-control\" v-model=\"forceStatus\">\n <option selected :value=\"null\">-- Select an step --</option>\n <option v-for=\"status in possibleStatusesExcludingCurrent\" :value=\"status.value\">{{ status.adminText || status.text || status.value }}</option>\n </select>\n </div>\n </template>\n </div>\n <div class=\"modal-footer\">\n <button id=\"returnBtn\" class=\"btn btn-primary\" @click=\"submit()\" :disabled=\"submitting\">Execute</button>\n <button id=\"cancelBtn\" class=\"btn btn-outline-secondary\" @click=\"$emit('close')\" :disabled=\"submitting\">Cancel</button>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, watch, computed, SetupContext, inject } from \"vue\";\nimport { localeDateTime } from \"@/lib/localeDatetime.3\";\nimport LoadingWheel from \"@/lib/LoadingWheel.3.vue\";\nimport WorkflowManualOverrideConfirmModal from \"./WorkflowManualOverrideConfirm.3.vue\";\nimport { Revision } from \"@cs/Revision\";\nimport { usePageStore } from \"../pageState/store\";\nimport { ManualOverrideInvokeResult } from \"@cs-ts/manual-override-invoke-result\";\nimport { dialogSetup, DialogProps } from \"@/lib/dialogMixin.3\";\nimport { showModalInjectKey, showModal } from \"@/AppShell.3.vue.InjectKeys\";\ntype Props = {\n returnFunction: (type: string, data: string | null) => Promise<ManualOverrideInvokeResult>;\n} & DialogProps;\nexport default defineComponent({\n components: {\n LoadingWheel,\n },\n props: [\"returnFunction\", \"triggerElement\"],\n setup(props: Props, { emit }: SetupContext) {\n const containerRef = ref<HTMLElement>(null!);\n const dialogMixin = dialogSetup(containerRef, props);\n\n const type = ref(null as string | null);\n const forceStatus = ref(null);\n const submitting = ref(false);\n const messages = ref([] as string[]);\n const possibleUpgradeRevisions = ref(null as null | Revision[]);\n const manualOverrideRevision = ref(null);\n\n const pageStore = usePageStore();\n\n const possibleStatuses = computed(() => pageStore.possibleStatuses);\n const status = computed(() => pageStore.status);\n const canUpgradeDefinition = computed(() => pageStore.canUpgradeDefinition);\n\n const possibleStatusesExcludingCurrent = computed(() => {\n return possibleStatuses.value.filter(i => i.value != status.value);\n });\n\n const showModal = inject(showModalInjectKey) as showModal;\n\n watch(\n () => type.value,\n (newV: string | null, _: string | null) => {\n if (newV == \"ForceDefinitionUpdate\" && possibleUpgradeRevisions.value == null) {\n // TODO get string from CS bridge\n (async () => {\n var r = await pageStore.getWorkflowManualOverrideGetPossibleUpgradeRevisions();\n if (r.success) {\n possibleUpgradeRevisions.value = r.revisions;\n } else {\n throw new Error(newV + \"\\n\" + JSON.stringify(r));\n }\n })();\n }\n },\n );\n\n const submit = async () => {\n if (type.value == null) {\n messages.value = [\"Type is required\"];\n return;\n }\n dialogMixin.focusTrapSetEnabled(false);\n showModal(\n WorkflowManualOverrideConfirmModal,\n {\n returnFunction: async () => {\n submitting.value = true;\n const data = type.value == \"ForceWorkflowStatus\" ? forceStatus.value : type.value == \"ForceDefinitionUpdate\" ? manualOverrideRevision.value || (possibleUpgradeRevisions.value?.length == 1 ? possibleUpgradeRevisions.value[0].FormHash : null) : null;\n const result = await props.returnFunction(type.value!, data);\n submitting.value = false;\n if (result.success) {\n emit(\"close\");\n } else {\n messages.value = result.failureMessages;\n }\n },\n },\n //{\n // height: \"auto\",\n // width: Math.min(0.9 * window.innerWidth, 600),\n // clickToClose: false,\n //},\n {\n \"before-close\"() {\n dialogMixin.focusTrapSetEnabled(true);\n },\n },\n );\n };\n\n return {\n container: containerRef,\n submitting,\n messages,\n type,\n canUpgradeDefinition,\n possibleUpgradeRevisions,\n manualOverrideRevision,\n forceStatus,\n possibleStatusesExcludingCurrent,\n localeDateTime,\n\n submit,\n };\n },\n});\n</script>\n","<style scoped lang=\"less\">\n.modal-title {\n text-transform: uppercase;\n}\n</style>\n<template>\n <div class=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">Workflow Manual Override Confirm</h2>\n <button type=\"button\" class=\"close icon icon-close\" aria-hidden=\"true\" @click=\"close()\" autofocus aria-label=\"Close\" />\n </div>\n <div class=\"modal-body\">\n <div describedby-text class=\"alert alert-danger\">This action allows you to bypass safety controls. This is inherently unsafe, and may cause unexpected issues.</div>\n <div class=\"form-group\" v-if=\"strictConfirm\">\n <label for=\"confirmInput\">To confirm, type \"unsafe\" in this box, and click Execute.</label>\n <input class=\"form-control\" type=\"text\" id=\"confirmInput\" v-model=\"confirmValue\" />\n </div>\n </div>\n <div class=\"modal-footer\">\n <button id=\"returnBtn\" class=\"btn btn-primary\" @click=\"confirmFunc()\" :disabled=\"!executable\">Execute</button>\n <button id=\"cancelBtn\" class=\"btn btn-outline-secondary\" @click=\"close()\">Cancel</button>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, computed, SetupContext } from \"vue\";\nimport { dialogSetup, DialogProps } from \"@/lib/dialogMixin.3\";\nimport { useMainStore } from \"@/mainStore\";\ntype Props = {\n returnFunction: () => void;\n} & DialogProps;\nexport default defineComponent({\n props: [\"returnFunction\", \"triggerElement\"],\n setup(props: Props, { emit }: SetupContext) {\n const containerRef = ref<HTMLElement>(null!);\n dialogSetup(containerRef, props);\n\n const strictConfirm = ref(false);\n const confirmValue = ref(null as string | null);\n\n (async () => {\n strictConfirm.value = await useMainStore().isFeatureFlagActiveAsync(\"StrictWorkflowManualOverrideConfirm\");\n })();\n\n const executable = computed(() => {\n return !strictConfirm.value || confirmValue.value == \"unsafe\";\n });\n\n const confirmFunc = async () => {\n if (!strictConfirm.value || confirmValue.value == \"unsafe\") {\n props.returnFunction();\n emit(\"close\");\n } else {\n alert(\"Invalid confirm value\");\n }\n };\n\n return {\n container: containerRef,\n executable,\n confirmFunc,\n confirmValue,\n strictConfirm,\n\n close: () => emit(\"close\"),\n };\n },\n});\n</script>\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./WorkflowManualOverrideConfirm.3.vue?vue&type=style&index=0&id=1fd7b07c&scoped=true&lang=less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./WorkflowManualOverrideConfirm.3.vue?vue&type=style&index=0&id=1fd7b07c&scoped=true&lang=less\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./WorkflowManualOverrideConfirm.3.vue?vue&type=template&id=1fd7b07c&scoped=true&ts=true\"\nimport script from \"./WorkflowManualOverrideConfirm.3.vue?vue&type=script&lang=ts\"\nexport * from \"./WorkflowManualOverrideConfirm.3.vue?vue&type=script&lang=ts\"\n\nimport \"./WorkflowManualOverrideConfirm.3.vue?vue&type=style&index=0&id=1fd7b07c&scoped=true&lang=less\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1fd7b07c\"]])\n\nexport default __exports__","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./WorkflowManualOverride.3.vue?vue&type=style&index=0&id=6117d450&scoped=true&lang=less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./WorkflowManualOverride.3.vue?vue&type=style&index=0&id=6117d450&scoped=true&lang=less\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./WorkflowManualOverride.3.vue?vue&type=template&id=6117d450&scoped=true&ts=true\"\nimport script from \"./WorkflowManualOverride.3.vue?vue&type=script&lang=ts\"\nexport * from \"./WorkflowManualOverride.3.vue?vue&type=script&lang=ts\"\n\nimport \"./WorkflowManualOverride.3.vue?vue&type=style&index=0&id=6117d450&scoped=true&lang=less\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-6117d450\"]])\n\nexport default __exports__","<template>\n <div class=\"modal-content\" ref=\"container\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title\">Submission Adjusted</h2>\n <button type=\"button\" class=\"close icon icon-close\" aria-hidden=\"true\" @click=\"$emit('close')\" autofocus aria-label=\"Close\" />\n </div>\n <div class=\"modal-body\">\n <span class=\"action-success-icon icon icon-check\"></span>\n <p describedby-text class=\"action-success-text\">Submission adjusted successfully.</p>\n </div>\n <div class=\"modal-footer\">\n <a class=\"btn btn-outline-secondary\" @click.prevent=\"$emit('close')\">Close</a>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref } from \"vue\";\nimport { dialogSetup, DialogProps } from \"@/lib/dialogMixin.3\";\nexport default defineComponent({\n props: [\"triggerElement\"],\n setup(props: DialogProps) {\n const containerRef = ref<HTMLElement>(null!);\n dialogSetup(containerRef, props);\n return { container: containerRef };\n },\n});\n</script>\n","import { render } from \"./WorkflowManualOverrideSuccess.3.vue?vue&type=template&id=66c28f20&ts=true\"\nimport script from \"./WorkflowManualOverrideSuccess.3.vue?vue&type=script&lang=ts\"\nexport * from \"./WorkflowManualOverrideSuccess.3.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./Page.3.vue?vue&type=style&index=0&id=6f55b7d6&lang=less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./Page.3.vue?vue&type=style&index=0&id=6f55b7d6&lang=less\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./Page.3.vue?vue&type=style&index=1&id=6f55b7d6&lang=less&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-5.use[1]!../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../node_modules/less-loader/dist/cjs.js??clonedRuleSet-5.use[2]!../../../node_modules/vue-loader/dist/index.js??ruleSet[1].rules[11].use[0]!./Page.3.vue?vue&type=style&index=1&id=6f55b7d6&lang=less&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render } from \"./Page.3.vue?vue&type=template&id=6f55b7d6&scoped=true&ts=true\"\nimport script from \"./Page.3.vue?vue&type=script&lang=ts\"\nexport * from \"./Page.3.vue?vue&type=script&lang=ts\"\n\nimport \"./Page.3.vue?vue&type=style&index=0&id=6f55b7d6&lang=less\"\nimport \"./Page.3.vue?vue&type=style&index=1&id=6f55b7d6&lang=less&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-6f55b7d6\"]])\n\nexport default __exports__","<template>\n <div class=\"container p-3\">\n <div class=\"row\">\n <div class=\"col-md-8 offset-md-2\">\n <div class=\"alert alert-danger\">\n <!-- <h1>An error has occurred.</h1> -->\n <ul v-for=\"i in failureMessages\" :class=\"failureMessages.length < 2 ? ['list-unstyled', 'p-0'] : []\">\n <li>{{ i }}</li>\n </ul>\n <div v-if=\"actions.length > 0\">\n <div v-for=\"action in actions\">\n <button class=\"btn btn-primary\" @click=\"act(action)\">{{ action.Label }}</button>\n <AsyncOperationStatus :promise=\"action.promise\" />\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, computed } from \"vue\";\nimport getData from \"../../admin/lib/getData\";\nimport { fetchXsrf } from \"@/lib/fetchHelpers.3\";\nimport AsyncOperationStatus from \"@/lib/AsyncOperationStatus.3.vue\";\nimport { useMainStore } from \"@/mainStore\";\nimport { ResumeFailure } from \"@cs/ResumeFailure\";\ntype JsResumeFailure = Omit<ResumeFailure, \"Actions\"> & { Actions?: (NonNullable<ResumeFailure[\"Actions\"]>[0] & { promise?: Promise<void> | null })[] };\nexport default defineComponent({\n components: {\n AsyncOperationStatus,\n },\n setup() {\n const mainStore = useMainStore();\n const extraData = ref(null as null | JsResumeFailure);\n const failureMessages = computed(() => {\n return extraData.value?.FailureMessages ?? [];\n });\n const actions = computed(() => {\n const result = extraData.value?.Actions ?? [];\n for (let act of result) {\n if (!(\"promise\" in act)) {\n act.promise = null; // eslint-disable-line vue/no-side-effects-in-computed-properties\n }\n }\n return result;\n });\n const act = async (action: NonNullable<JsResumeFailure[\"Actions\"]>[0]) => {\n action.promise = (async () => {\n const url = await mainStore.getUrl(action.UrlType, action.UrlData);\n const response = await fetchXsrf(mainStore, url, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n credentials: \"same-origin\",\n body: JSON.stringify(action.PostData),\n });\n if (response.status == 200) {\n // TODO?\n } else {\n throw new Error(\"Not 200 OK: \" + response.status + \" \" + response.statusText);\n }\n })();\n };\n (async () => {\n extraData.value = (await getData(mainStore, \"PageResumeFailure\", () => {\n throw new Error();\n })) as JsResumeFailure;\n })();\n\n return {\n failureMessages,\n actions,\n act,\n };\n },\n});\n</script>\n","import { render } from \"./PageResumeFailure.3.vue?vue&type=template&id=5b703129&ts=true\"\nimport script from \"./PageResumeFailure.3.vue?vue&type=script&lang=ts\"\nexport * from \"./PageResumeFailure.3.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","export default function(n){return{all:n=n||new Map,on:function(t,e){var i=n.get(t);i?i.push(e):n.set(t,[e])},off:function(t,e){var i=n.get(t);i&&(e?i.splice(i.indexOf(e)>>>0,1):n.set(t,[]))},emit:function(t,e){var i=n.get(t);i&&i.slice().map(function(n){n(e)}),(i=n.get(\"*\"))&&i.slice().map(function(n){n(t,e)})}}}\n//# sourceMappingURL=mitt.mjs.map\n"],"names":["Permissions","static","SelectionType","first","i","next","value","length","___CSS_LOADER_EXPORT___","push","module","id","exports","e","r","n","t","o","loaded","call","m","c","p","__esModule","default","Object","defineProperty","enumerable","get","a","placeholderChar","strFunction","previousConformedValue","previousPlaceholder","u","currentCaretPosition","l","s","conformedValue","f","rawValue","d","placeholder","indexesOfPipedChars","v","h","caretTrapIndexes","y","g","b","C","P","k","w","M","S","j","toLowerCase","A","substr","split","filter","indexOf","N","E","F","R","I","map","J","W","q","L","z","B","G","H","K","Q","Symbol","iterator","constructor","prototype","arguments","isArray","Error","processCaretTraps","maskWithoutCaretTraps","guide","convertMaskToPlaceholder","keepCharPositions","x","O","T","Math","abs","slice","char","isNew","_","V","splice","shift","test","D","meta","someCharsRejected","Array","JSON","stringify","RegExp","join","isString","String","isNumber","isNaN","isNil","indexes","document","activeElement","setSelectionRange","assign","hasOwnProperty","state","update","inputElement","mask","pipe","showMask","selectionEnd","rejected","navigator","userAgent","requestAnimationFrame","setTimeout","class","_createElementVNode","key","defineComponent","components","AsyncOperationStatus","setup","mainStore","useMainStore","extraData","ref","failureMessages","computed","FailureMessages","actions","result","Actions","act","promise","getData","async","action","url","getUrl","UrlType","UrlData","window","location","_createElementBlock","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_ctx","_hoisted_6","_Fragment","_renderList","onClick","_withModifiers","$event","href","_hoisted_7","_createTextVNode","_createVNode","_component_AsyncOperationStatus","_createCommentVNode","watchOptions","subscriber","val","from","useObservable","observable","options","initialValue","subscription","subscribe","error","onError","unsubscribe","type","role","style","props","getElementComponent","inject","pageStore","usePageStore","children","childrenIds","element","getElementByVmId","forceNonLive","showChanges","isBase","childStyle","child","baseChangeType","_createBlock","_resolveDynamicComponent","vmId","data","name","_normalizeStyle","viewOnly","title","errors","errors$","valid","valid$","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","forceNonLocal","definition","settings","showErrorsLocally","_toDisplayString","show","changes","baseChanges","pageMode","border","_cache","change","baseSetting","_hoisted_8","currentSetting","emits","HelpIcon","_props","emit","visibleToSubmitterEditing","allowDeleteComments","asyncComputed","isFeatureFlagActiveAsync","KnownFeatureFlags","DeleteCommentsAttachments","Id","adminReview","canDeleteComments","canDeleteReviewComments","toggleVisibleToSubmitterEditing","_comment","toggleCommentVisibility","_normalizeClass","comment","visibleToSubmitter","hideHistory","disabled","onChange","checked","for","_hoisted_9","_hoisted_10","_hoisted_12","_hoisted_11","_component_HelpIcon","text","hover","_hoisted_13","userName","_hoisted_14","Date","date","toLocaleString","_hoisted_15","_hoisted_16","files","_hoisted_17","_hoisted_18","file","target","fileUrl","filename","_hoisted_19","$emit","gotoIndexInjectKey","forceLoginInjectKey","submitInjectKey","deleteDraftInjectKey","pageStatusFetcherInjectKey","resendEmailInjectKey","loadingInjectKey","submitButtons$InjectKey","Comment","CommentComponent","LoadingWheel","generateGuid","showReply","newVisibleToSubmitter","newVisibleToSubmitterVisibilityEditing","newText","undefined","newStatus","commentStatus","historyVisibility","commentsVisibility","anyThreat","fileRef","replyTextRef","gotoIndex","watch","newData","_oldData","comments","showComponent","hasComments","canAddComments","canChangeStatus","hasHistory","showAddComments","canReplyToComments","showChangeStatus","showAdminFormLevelControls","isWorkflow","history","isReturned","formDataTyped","replyText","toggleHistoryVisibility","toggleCommentsVisibility","elementId","getElementPathString","setCommentVisibility","commentId","elementData","showComments","nextTick","focus","sendReply","htmlFiles","filesPromises","uploadExternalFile","newFile","isComment","fileObjects","Promise","all","fileIds","valueId","some","isThreat","fileNames","fileContentTypes","response","addCommentAndChangeStatus","status","accessible","alert","page","cancel","deleteComment","confirm","_formData","pageNumber","formId","formData","FormData","keys","append","deleteCommentUrl","tenantCode","formTenantCode","deleteResponse","fetch","method","headers","getXsftHeader","credentials","body","throwIfNonSuccessStatus","findIndex","args","_component_Comment","onSetCommentVisibility","onDeleteComment","multiple","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_25","_hoisted_24","_hoisted_26","_hoisted_27","_hoisted_29","_hoisted_28","_hoisted_30","_hoisted_32","_hoisted_33","_component_LoadingWheel","width","_hoisted_34","_hoisted_35","_hoisted_36","ChildrenList","AdminSettingsDifferences","ErrorList","Comments","elementFilter","el","oldValue","customErrorIds","customErrorIds$","showAdminEditControls","canAdminEditData","isAdminEditing","isAdminEditingById","set","newValue","setAdminEditing","enabled","isViewOnly","colClass","columns","getChildrenByVmId","getValueByVmId","setValueByVmId","errorId","errorIds","trimEnd","hasCustomErrors","isNullOrWhitespace","customErrorClass","startAdminEdit","cancelAdminEdit","toggleAdminEdit","hasBaseChanges","expose","on","eventArgs","querySelector","base","_component_ChildrenList","verifyData","verifyFailureMessages","forceLogin","availableSegments","mustLoginAndNotLoggedIn","computedAsync","activeSegment","mustLogin","isLoggedInPromise","verifyItems","selfAssignSegment","segment","setSegment","selfAssignSegmentAuto","availableSegmentsV","displayLabel","onSubmit","isAssignedToOtherUser","message","verifyItem","index","prompt","containerRef","dialogSetup","container","autofocus","tabindex","mergeMap","project","resultSelector","concurrent","Infinity","isFunction","ii","innerFrom","source","onBeforeNext","expand","innerSubScheduler","additionalFinalizer","buffer","active","isComplete","checkComplete","complete","outerNext","doInnerSub","innerComplete","innerValue","bufferedValue","err","mergeInternals","concatAll","identity","concat","_i","startWith","values","scheduler","DatePicker","mustMask","hiddenElementsInjection","textMaskInputElement","inputElementRef","tempValue","defaultValue","defaultValue$","hasValue","hasValue$","effectiveLabel","effectiveLabel$","effectiveLabelText","effectiveLabelText$","maskedValue","maskedValue$","effectiveValue","effectivePlaceholderText","useDatePicker","flatPickr","_input","hiddenElements","isMasked","extraDataShimDef","find","includes","effectiveMaskedValue","doFocus","createTextMaskElement","effectiveHtmlType","effectiveInputMask","config","maskArray","bind","this","createTextMaskInputElement","datepickerConfig","allowInput","altInput","dateFormat","altFormat","disableMobile","defaultDate","wrap","clickOpens","onOpen","toggleFocusTrapActiveModals","onClose","maskStr","optionalMask","recurseIndex","repeatedPart","substring","optional","maskChar","maskPattern","unshift","apply","effectiveReverseMask","reverse","setValue","calculationContext","nonLiveTextboxes","markEdited","handleInput","event","effectivePrefixAddon","suffixAddon","dfRequired","required","dfOptional","label","helpText","layout","onBlur","rows","maxlength","maxLength","_component_DatePicker","modelValue","ariaLabelledBy","ariaRequired","ariaDescribedBy","onHtmlInput","onInput","step","effectiveHtmlStep","min","effectiveHtmlMin","_component_ErrorList","_component_Comments","_component_AdminSettingsDifferences","uploadedFileRef","removeFileRef","hasValue2","_hasValue","fileName","uploadStatus","maxFileSize","globalSizeInMb","globalConfigData","MaxUploadFileSizeInMb","inputSize","globalSize","maxFileSizeForDisplay","maxFileSizeV","floor","removeFile","setFileInfoByVmId","contentType","setLiveRegion","resolve","uploadFile","size","filePromise","isChild","onAbort","checkRef","useIndeterminate","effectiveCheckboxValue","effectiveValueM","effectiveItems","effectiveItems$","tap","clientValidateRules","clientValidateRules$","getValue","findEffectiveItems","item","errorValue","arrayEqual","deep","indeterminateValue","itemValue","entries","ref_for","radioRef","saveAdminEdit","lines","effectiveValueList$","reduce","settingsAA","line","innerHTML","adminPreview","serverSide","iconClass","visible","visible$","loading","computedSubscription","computedMinSubscription","computedMaxSubscription","oldIds","calculatedIds","calculatedMin","calculatedMax","isComputed","calculationId","canAddRemoveItems","addRemoveItems","childrenObj","removedChild","childChildren","computedItems","resolveCalculation","computedMinItems","minCalculationId","computedMaxItems","maxCalculationId","subscribeToComputedItems","computedItems$","items","setCalculatedItems","subscribeToComputedMinItems","computedMinItems$","parseInt","subscribeToComputedMaxItems","computedMaxItems$","newIds","arrayEquals","setForEachChildren","forEachVmId","ids","computedItemsV","computedMinItemsV","computedMaxItemsV","newComputedItems$","newComputedMinItems$","newComputedMaxItems$","onUnmounted","addItem","addForEachItem","removeItem","removeForEachItem","calculatedItems","childObj","removeText","max","addText","script","cssClass","indent","htmlContent","description","verifyAddress","AddressVerificationEnum","isEqual","suggestedData","prop","userEnteredAddress","populateSuggested","populateSuggestedAddress","suggestedAddress","VerifyReFormat","Address1","Address2","City","State","Zip","Country","ZipCode","showModal","showModalInjectKey","verificationPromise","resolvablePromise","isVerifying","addressVerifyEnabled","EnableAddressVerify","singleLabel","currentAddressData","allInputsFields$","_children$","switchMap","combineLatest","flat","allInputsFields","inputsFields$","input","inputsFields","Off","inputsFieldsEdited","DisplayIfOtherHasValueDef","edited$","deletePromise","pendingAddressVerifications","delete","address1","address2","city","zip","country","getAddressData","allowInternational","has","add","otherPendingAddressVerifications","suggestionPopulated","suggested","address1Control","getControl","address2Control","cityControl","stateControl","zipControl","provinceControl","regionControl","postalCodeControl","countryControl","Success","success","AddressChanged","addressChanged","Result","AddressConfirmModal","triggerElement","Verify","finally","effectiveValueList","includeAll","datePeriod","effectiveHtmlContent","effectiveHtmlContent$","vSelect","dropdown","groupedItems","groupedItems$","ungroupedItems","ungroupedItems$","hasDefaultValue","stringCoalesce","placeholderText","cache","getAllItems","groupedItemsI","acc","groupName","isGroupLabel","arraysEqual","every","searchableDropdownValue","option","isDropdownSearchable","openDropdown","searchEl","closest","setAttribute","toString","addEventListener","searchOnChange","once","passive","$el","querySelectorAll","forEach","elem","selectedOption","updateValue","focusSearchableDropdown","delayPromise","open","keydownHandlers","keydownMap","dropdownVm","preventDefault","onOptionSelect","removeEventListener","_component_v_select","onSearch","inputId","selectable","clearable","_withCtx","group","ColumnDisplayType","fromWithCurrent","sortIcon","null","exportSchemas","BuiltinExportSchemas","MAP","schema","skip","top","sort","inited","updating","exportRowData","rowsData","rows$","dataCount","dataSourceCalculationId","filterData","skipCeil","ceil","pages","allowExportTableData","allowExport","selected","tableColumns","datasourceColumn","dataRows","selectedRows","selectedRow","effectiveSkip","boundResult","effectiveTop","selectMultiple","match","dataRow","remove","consider","add2","setSelectedRows","filterExportData","row","Key","Value","considerExport","exportAdd2","singleSelectedRow","showSelectColumn","No","Multiple","allowSelectedExport","Single","showIndexColumn","rowsCount","effectiveSort","inputEffectiveDiffer","pageOptions","defaultSort","defaultPageSize","newTop","back","toggleSort","column","sortDir","mode","startExport","exportFormat","exportType","exportRows","fetchUrl","token","Token","fetchResponse","disposition","fileResponse","blob","matches","exec","replace","windowNavigator","msSaveOrOpenBlob","createElement","appendChild","URL","createObjectURL","download","click","revokeObjectURL","removeChild","handleFileResponse","_runExport","toggleDropdown","columnIndex","cell","cellIndex","displayType","Html","colspan","rowIndex","_hoisted_31","_hoisted_37","_hoisted_38","_hoisted_44","_hoisted_39","LoadingContainer","directoryData","then","json","otherVersions","directoryDataV","formName","formVersion","cmp","Pages","FormName","FormVersion","versionOrderCmp","FormVersionOrder","FormVersionLabel","pageData","FormTitle","areaCode","Tenant","formHash","FormHash","relatedPages","relatedPageData","formSettings","formTenant","relatedData","hasRelatedPages","hasOtherVersions","changePage","changePageInjectKey","gotoOtherPage","_component_LoadingContainer","advanceForm","buttonText","buttonTextWhenLoginRequired","linkUrl","rel","linkText","reviewHiddenElements","elements","shouldProvide","displayElementVmId","getElementsById$","maskedOutput","provide","reactive","rootElement","getElementsByFilter","isEnabled$","pageTitle","statusesMapping","VerificationStatus","Passed","Failed","Unknown","Attention","Skipped","Paused","Pending","documentMapping","DocumentTypeEnum","DriversLicense","Passport","calculatedElementsValid","calculatedElementsValid$","hasVerified","verified$","edited","loadingPromise","visibility","verificationResponse","verificationResponseRaw","verifyIdentity","documentType","styles","icon","color","toggleVisibility","isPersonalIdVerification","PersonalVerificationSummary","CviScore","NapScore","NasScore","RiskIndicators","DocumentVerificationSummary","PersonData","DocumentType","VerificationAlerts","Detail","extraShimValue","extraShimValue$","PageDef","PageDefComponent","SegmentSelector","setupContextUntyped","pageNavCollapsed","formData$","condensed","buttonCondensed","mustToggle","togglePageHeader","Form","eventBus","updatePage","updatePageInjectKey","currentPage$","page$","toObserverComputed","pages$","currentPage","currentSegment$","segments$","segments","currentSegment","currentSegmentLabel$","currentSegmentLabel","enabledPages$","pageGroupsI","pageGroups","enabledPages","hasIssues","visiblePages$","pageGroups$","visiblePages","submittablePages","isPageObjViewOnly","hasMultiplePages","activeSegments","isPendingAssignment","seg","avS","acS","isCurrentPageViewOnly","isPageObjViewOnly$","pV","hI","pA","isWorkflowManualOverrideVisible","isWorkflowManualOverrideEnabled","isWorkflowReturnVisible","isWorkflowReturnEnabled","anonymousUser","returnEmailAddressCalculationId","isSubmittable","isSubmittable$","isDeletable","canRetreatForm","canAdvanceForm","showPageNav","currentPageI","allowAnonymous","isCurrentPageControlsViewOnly","isPageObjControlsViewOnly$","adminEditElementIds","hasPendingAdminEdits","segmentTitle","onMounted","ResizeObserver","entry","contentBoxSize","inlineSize","observe","parentElement","adjustPage","existingPage","formDataLoading","isSaveDisabledOnSectionChange","isClientValidationOnly","_setPageStatus","isPageViewOnly","alertIfSaveFailed","saveFormPage","adjustment","getPageGroup","pageGroup","gotoPage","newPage","withError","addressVerificationsPromise","SaveOnlyEditable","isPageEditable","newPageGroup","currentPageGroup","togglePage","pagesI","focusFirstElement","gotoSubPage","_mustToggle","permitLaterPages$","toPromise","callback","submit","pageStatusFetcher","submitButtons","deleteDraft","display","elementType","TextboxDef","FileDef","CheckGroupDef","RadioGroupDef","CalculatedDef","ValidationDef","ForEachDef","ForEachChildIdDef","ForEachChildIndexDef","RegionDef","SectionDef","AddressDef","DatePickerDef","ContentDef","DropDownListDef","DataTableDef","LandingPageTemplateDef","ContentTemplatePageDef","FormAlternativeDef","LinkAlternativeDef","PdfAlternativeDef","DisplayElementDef","ReviewPageTemplatePageDef","IdVerificationDef","ExtraDataShimDef","retreatForm","resultPromise","SaveFailureModal","pageStatusClass","clientStatus","visiblePageIndex","newVisiblePage","gotoAvailablePage","doF","timeout","enabledPagesI","pageObj","firstPageGroupPage","firstElement","firstInvalidElement","firstFocusableElement","pageI","scrollIntoView","pageStatus","saveAllAdminEdits","openNav","matchMedia","stopPropagation","saveAndExit","throwIfViewOnly","saveFormPromise","isSaveAndExit","truncateLongText","pageGroupStatus","getSegmentStatusByPage","pageGroupCast","effectiveLinkText","_component_SegmentSelector","onClickCapture","baseChangeRecursive","submitButton","trigger","float","hasCustomPageNav","getLoginUrl","getLoginUrlInjectKey","showLoginSlidedown","loginUrl","isLoggedIn","isOffline","offlineContent","toggleAdminDiff","closeWindow","close","showAdminDiff","hasChanges","inlineAdminPreview","reversed","sortFun","Promised","allElementsWithIssues","retryPromise","skipPromise","getSchemaLabel","getSchemaLabelMapping","orderByDateDesc","orderBy","activatedDate","retry","_issue","invokeForm","targetPath","targetPathArray","noWrite","elementIndex","getLabel","_component_Promised","issues","issueEntry","issueIndex","adminDisplayLabel","resendEmail","allElementsWithHistory","mostRecentEvents","commentRequired","eventType","toUpperCase","preStatus","historyEmailType","flatMap","recentEvents","historyEntry","recentEvent","uploadPromise","allowDeleteFiles","viewTypes","allElementsWithFileComments","canDeleteFiles","allFileElementsWithFile","allFileElements","getViewTypeUrl","viewType","uploadFiles","deleteFile","deleteUrl","arr","func","elementLabel","shortLabel","fileElement","asAdmin","returningSegment","submitting","messages","completedSegments","possibleStagesToReturn","trim","returnFunction","reviewerStatus","resendFunction","focusTrapSetup","possibleStatusesExcludingIgnored","possibleStatuses","StandardFormStatus","Returned","Deleted","InProgress","Submitting","currentStatusLabel","isStatusDisabled","possibleStatus","blockSubmit","blockSubmit$","post","submitFunction","triggerKey","confirmComponents","confirmComponent","component","hasRedirect","redirectUrl","documentClick","statusMessage","receiptContents","receiptContent","documents","submissionUrl","content","tenantData","customErrorHtml","context","invalidPages","pageErrors","descendentsErrors","goToPageFirstErrorFunc","goToPageFirstError","combined","lockAction","lockActions","pdf","defineAsyncComponent","loadingComponent","loader","verifyPhoneNumberRef","manuallyEnterSignDate","signName","signDate","verifyEmail","verifyPhone","sendVerifyPromiseEmail","sendVerifyPromisePhone","verifyCode","pdfDataTask","numPages","phoneMask","enableSmsMessages","signDatePlaceholder","now","getMonth","padStart","getDate","getFullYear","createLoadingTask","pdfData","requireUserVerification","createTextMaskFunc","verifyPhoneNumber","handlePhoneInput","sendVerify","isEmail","sendVerifyFunction","signAndSubmit","signAndSubmitFunction","_component_pdf","src","readonly","inputmode","strictConfirm","confirmValue","executable","confirmFunc","dialogMixin","forceStatus","possibleUpgradeRevisions","manualOverrideRevision","canUpgradeDefinition","possibleStatusesExcludingCurrent","newV","getWorkflowManualOverrideGetPossibleUpgradeRevisions","revisions","localeDateTime","focusTrapSetEnabled","WorkflowManualOverrideConfirmModal","Updated","UpdateMessage","revision","adminText","DEFAULT_FORM_SUBMIT_TEXT","PageSide","CommentsTab","History","Issues","Files","Diff","LoginBanner","OfflineNotice","leftPage","rightPage","isInitialCreate","forcingRedirect","initialLoadFinished","isSubmitting","pageStatusSubscriptions","reviewTab","leftWidth","tempLeftWidth","ReviewContainer","currentLeftPage","mitt","submitButtons$","segment$","formData2","getSegmentView","submitButtonCalcId","submitButtonTextCalculationId","submitButtonObservable","effectiveSubmitButtonText","buttonElements","buttons$","buttonText$","customButtons","buttonTextElements","isICustomSubmitTextElement","customSubmitText$","hasCustomSubmitText$","hasCustomSubmitText","submitText$","submitText","customSubmitTextData","buttons","button","order","testMode","status$","canSeeAll","can","SeeAllForms","showHistory","showFiles","hasPartiallyCompletedForms","hasStatus","pagesWithStatus","rightPageGroups","hasCompletedSegmentsToReturnTo","FormAccessPurpose","AdminWorkflowAssign","AdminWorkflowSubmit","hasReturnEmails","returnEmail$s","flattenArrays","isSubmittableStatusChangeVisible","isSubmittableDeleteVisible","canDeleteSubmissions","initializedSegments","extra","uninitializedSegments","leftPageGroups","leftWidthPercentage","dividerLeft","resizableLeft","resizableRight","pageStatusV","pageStatusSubscriptionsV","clientStatus$","_getWidth","containerBox","getBoundingClientRect","offset","pageX","left","newWidth","round","trunc","inModal","pendingActionPromise","submitResultPromise","submitForm","submitResult","Dialog","segmentView","skipCompletion","isIShouldSkipCompletionElement","shouldSkipCompletion","resultStr","showDialog","RedirectUrl","redirectInFrontendEvenWithoutBackendRedirect","RedirectInFrontendEvenWithoutBackendRedirect","postSubmitRedirectElements","isIPostSubmitRedirectElement","firstOrNull","getPostSubmitRedirect","targetPage","SubmitErrorsModal","closed","setFocus","showSubmitSuccessModal","showSignDialog","SubmitFailureModal","executing","signTargets","isSignatureDef","isSigned","pdfDataModel","pdfDataArray","Uint8Array","atob","PdfBase64","charCodeAt","SignDialog","VerifyEmail","VerifyPhoneNumber","EnteredName","EnteredDate","VerifyCode","PdfHash","stop","showReturnDropdown","_event","deleting","deleted","DeleteConfirmModal","deleteFunction","visibleSegments","getElementsByFilter2","isICustomReceiptElement","isICustomViewElement","showBuiltinPdf","hasFileUploads","isFileUpload","view","SubmitSuccessModal","ChainForms","returnUrl","skipConfirmA","isIShouldSkipConfirmElement","shouldSkipConfirm","isICustomConfirmElement","hasCustomConfirmComponent","getCustomConfirmComponent","blockSubmit$s","isIBlockSubmitElement","SubmitConfirmModal","resend","ResendConfirmModal","ResendSuccessModal","showResendSuccessModal","showLoadingModal","LoadingModal","updateHistory","areaUrlSlug","dropdownBtn","getElementById","dropdownMenu","contains","classList","watchers","initedReviewPane","initReviewPane","oldVal","watcher","init","urlSlug","loadPromise","previewData","extraDataString","parse","form","loadAdminPreviewFormData","preloadedData","loadAdminReviewFormData","externalData","searchParams","URLSearchParams","search","agParamKeys","loadFormData","delay","directLinkTemplates","DeleteSuccessModal","endUserStatuses","locks","lock","lockSegmentId","lockableSegment","unlockableSegments","getLockActions","LockActionModal","Function","alreadyUnlocked","unlock","load","fetchXsrf","onActivated","exposed","startWorkflowManualOverride","WorkflowManualOverrideModal","workflowManualOverride","WorkflowManualOverrideSuccessModal","returnSubmission","returning","ReturnConfirmModal","returnDraft","ReturnSuccessModal","startSubmittableStatusChange","ChangeStatusConfirmModal","ChangeStatusSuccessModal","showChangeStatusSuccessModal","changeReviewTab","tab","increaseLeftWidth","decreaseLeftWidth","resizeDragMove","resizeDragEnd","resizeDragStart","dataTransfer","clearData","setDragImage","offsetX","offsetY","setLeftPage","setRightPage","setShowPagenav","setCurrentSegment","setCurrentLeftPage","toggleReturnDropdown","_component_OfflineNotice","_component_LoginBanner","testModeContainer","flex","_component_Diff","_component_PageSide","onSetPage","onShowPageNav","onCurrentPage","_component_CommentsTab","_component_Files","_component_History","_component_Issues","onCurrentSegment","draggable","onDragstart","onDrag","onDragend","PostData","statusText","Label","Map","off"],"sourceRoot":""}