@piserve-tech/form-submission 1.3.314 → 1.3.316
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -24
- package/ng-package.json +30 -0
- package/package.json +33 -46
- package/{assets → src/assets}/icons/close-sidebar-mark-icon.svg +3 -3
- package/{assets → src/assets}/icons/copy-icon.svg +5 -5
- package/{assets → src/assets}/icons/delete-icon.svg +7 -7
- package/{assets → src/assets}/icons/delete-no-outline-icon.svg +7 -7
- package/src/environment/environment.ts +6 -0
- package/src/form-fields/aggregate-function/aggregate-function.component.html +63 -0
- package/src/form-fields/aggregate-function/aggregate-function.component.scss +1 -0
- package/src/form-fields/aggregate-function/aggregate-function.component.spec.ts +21 -0
- package/src/form-fields/aggregate-function/aggregate-function.component.ts +148 -0
- package/src/form-fields/check-box-fields/check-box-fields.component.html +81 -0
- package/src/form-fields/check-box-fields/check-box-fields.component.scss +28 -0
- package/src/form-fields/check-box-fields/check-box-fields.component.spec.ts +21 -0
- package/src/form-fields/check-box-fields/check-box-fields.component.ts +538 -0
- package/src/form-fields/currency-fields/currency-fields.component.html +85 -0
- package/src/form-fields/currency-fields/currency-fields.component.scss +48 -0
- package/src/form-fields/currency-fields/currency-fields.component.spec.ts +21 -0
- package/src/form-fields/currency-fields/currency-fields.component.ts +589 -0
- package/src/form-fields/date-time-fields/date-time-fields.component.html +268 -0
- package/src/form-fields/date-time-fields/date-time-fields.component.scss +88 -0
- package/src/form-fields/date-time-fields/date-time-fields.component.spec.ts +21 -0
- package/src/form-fields/date-time-fields/date-time-fields.component.ts +693 -0
- package/src/form-fields/drop-down-fields/drop-down-fields.component.html +77 -0
- package/src/form-fields/drop-down-fields/drop-down-fields.component.scss +12 -0
- package/src/form-fields/drop-down-fields/drop-down-fields.component.spec.ts +21 -0
- package/src/form-fields/drop-down-fields/drop-down-fields.component.ts +698 -0
- package/src/form-fields/file-picker-fields/file-picker-fields.component.html +72 -0
- package/src/form-fields/file-picker-fields/file-picker-fields.component.scss +33 -0
- package/src/form-fields/file-picker-fields/file-picker-fields.component.spec.ts +21 -0
- package/src/form-fields/file-picker-fields/file-picker-fields.component.ts +256 -0
- package/src/form-fields/form-fields.module.ts +110 -0
- package/src/form-fields/hidden-field/hidden-field.component.scss +0 -0
- package/src/form-fields/hidden-field/hidden-field.component.spec.ts +21 -0
- package/src/form-fields/hidden-field/hidden-field.component.ts +156 -0
- package/src/form-fields/iframe-fields/iframe-fields.component.html +31 -0
- package/src/form-fields/iframe-fields/iframe-fields.component.scss +0 -0
- package/src/form-fields/iframe-fields/iframe-fields.component.spec.ts +21 -0
- package/src/form-fields/iframe-fields/iframe-fields.component.ts +225 -0
- package/src/form-fields/location-fields/location-fields.component.html +54 -0
- package/src/form-fields/location-fields/location-fields.component.scss +22 -0
- package/src/form-fields/location-fields/location-fields.component.spec.ts +21 -0
- package/src/form-fields/location-fields/location-fields.component.ts +83 -0
- package/src/form-fields/mail-fields/mail-fields.component.html +66 -0
- package/src/form-fields/mail-fields/mail-fields.component.scss +10 -0
- package/src/form-fields/mail-fields/mail-fields.component.spec.ts +21 -0
- package/src/form-fields/mail-fields/mail-fields.component.ts +127 -0
- package/src/form-fields/mobile-fields/mobile-fields.component.html +97 -0
- package/src/form-fields/mobile-fields/mobile-fields.component.scss +52 -0
- package/src/form-fields/mobile-fields/mobile-fields.component.spec.ts +21 -0
- package/src/form-fields/mobile-fields/mobile-fields.component.ts +310 -0
- package/src/form-fields/number-fields/number-fields.component.html +70 -0
- package/src/form-fields/number-fields/number-fields.component.scss +17 -0
- package/src/form-fields/number-fields/number-fields.component.spec.ts +21 -0
- package/src/form-fields/number-fields/number-fields.component.ts +256 -0
- package/src/form-fields/password-fields/password-fields.component.html +113 -0
- package/src/form-fields/password-fields/password-fields.component.scss +61 -0
- package/src/form-fields/password-fields/password-fields.component.spec.ts +21 -0
- package/src/form-fields/password-fields/password-fields.component.ts +273 -0
- package/src/form-fields/radio-button-fields/radio-button-fields.component.html +82 -0
- package/src/form-fields/radio-button-fields/radio-button-fields.component.scss +28 -0
- package/src/form-fields/radio-button-fields/radio-button-fields.component.spec.ts +21 -0
- package/src/form-fields/radio-button-fields/radio-button-fields.component.ts +391 -0
- package/src/form-fields/rich-text-editor-fields/rich-text-editor-fields.component.html +67 -0
- package/src/form-fields/rich-text-editor-fields/rich-text-editor-fields.component.scss +23 -0
- package/src/form-fields/rich-text-editor-fields/rich-text-editor-fields.component.spec.ts +21 -0
- package/src/form-fields/rich-text-editor-fields/rich-text-editor-fields.component.ts +145 -0
- package/src/form-fields/section-fields/section-fields.component.html +4 -0
- package/src/form-fields/section-fields/section-fields.component.scss +37 -0
- package/src/form-fields/section-fields/section-fields.component.spec.ts +21 -0
- package/src/form-fields/section-fields/section-fields.component.ts +25 -0
- package/src/form-fields/selection-matrix-fields/selection-matrix-fields.component.html +93 -0
- package/src/form-fields/selection-matrix-fields/selection-matrix-fields.component.scss +52 -0
- package/src/form-fields/selection-matrix-fields/selection-matrix-fields.component.spec.ts +21 -0
- package/src/form-fields/selection-matrix-fields/selection-matrix-fields.component.ts +155 -0
- package/src/form-fields/signature-fields/signature-fields.component.html +43 -0
- package/src/form-fields/signature-fields/signature-fields.component.scss +10 -0
- package/src/form-fields/signature-fields/signature-fields.component.spec.ts +21 -0
- package/src/form-fields/signature-fields/signature-fields.component.ts +25 -0
- package/src/form-fields/slider-fields/slider-fields.component.html +67 -0
- package/src/form-fields/slider-fields/slider-fields.component.scss +55 -0
- package/src/form-fields/slider-fields/slider-fields.component.spec.ts +21 -0
- package/src/form-fields/slider-fields/slider-fields.component.ts +63 -0
- package/src/form-fields/terms-and-condition-fields/terms-and-condition-fields.component.html +52 -0
- package/src/form-fields/terms-and-condition-fields/terms-and-condition-fields.component.scss +85 -0
- package/src/form-fields/terms-and-condition-fields/terms-and-condition-fields.component.spec.ts +21 -0
- package/src/form-fields/terms-and-condition-fields/terms-and-condition-fields.component.ts +62 -0
- package/src/form-fields/text-area-fields/text-area-fields.component.html +68 -0
- package/src/form-fields/text-area-fields/text-area-fields.component.scss +19 -0
- package/src/form-fields/text-area-fields/text-area-fields.component.spec.ts +21 -0
- package/src/form-fields/text-area-fields/text-area-fields.component.ts +166 -0
- package/src/form-fields/text-fields/text-fields.component.html +67 -0
- package/src/form-fields/text-fields/text-fields.component.scss +26 -0
- package/src/form-fields/text-fields/text-fields.component.spec.ts +21 -0
- package/src/form-fields/text-fields/text-fields.component.ts +248 -0
- package/src/form-fields/toggle-switch-fields/toggle-switch-fields.component.html +70 -0
- package/src/form-fields/toggle-switch-fields/toggle-switch-fields.component.scss +112 -0
- package/src/form-fields/toggle-switch-fields/toggle-switch-fields.component.spec.ts +21 -0
- package/src/form-fields/toggle-switch-fields/toggle-switch-fields.component.ts +74 -0
- package/src/form-fields/url-fields/url-fields.component.html +109 -0
- package/src/form-fields/url-fields/url-fields.component.scss +22 -0
- package/src/form-fields/url-fields/url-fields.component.spec.ts +21 -0
- package/src/form-fields/url-fields/url-fields.component.ts +123 -0
- package/src/form-submission/form-submission.module.ts +40 -0
- package/src/form-submission/header/header.component.html +6 -0
- package/src/form-submission/header/header.component.scss +26 -0
- package/src/form-submission/header/header.component.spec.ts +21 -0
- package/src/form-submission/header/header.component.ts +12 -0
- package/src/form-submission/navigation-tabs/navigation-tabs.component.html +134 -0
- package/src/form-submission/navigation-tabs/navigation-tabs.component.scss +200 -0
- package/src/form-submission/navigation-tabs/navigation-tabs.component.spec.ts +21 -0
- package/src/form-submission/navigation-tabs/navigation-tabs.component.ts +134 -0
- package/src/form-submission/next-prev-navigation/next-prev-navigation.component.html +207 -0
- package/src/form-submission/next-prev-navigation/next-prev-navigation.component.scss +208 -0
- package/src/form-submission/next-prev-navigation/next-prev-navigation.component.spec.ts +21 -0
- package/src/form-submission/next-prev-navigation/next-prev-navigation.component.ts +74 -0
- package/src/form-submission/save-as-draft/saveDraftModalComponent .ts +60 -0
- package/src/form-submission/save-as-draft/saveDraftModalComponent.html +33 -0
- package/src/form-submission/save-as-draft/saveDraftModalComponent.scss +195 -0
- package/src/form-submission/submission-container/submission-container.component.html +30 -0
- package/src/form-submission/submission-container/submission-container.component.scss +67 -0
- package/src/form-submission/submission-container/submission-container.component.spec.ts +21 -0
- package/src/form-submission/submission-container/submission-container.component.ts +14 -0
- package/src/form-submission/submit-form/submit-form.component.html +76 -0
- package/src/form-submission/submit-form/submit-form.component.scss +88 -0
- package/src/form-submission/submit-form/submit-form.component.spec.ts +21 -0
- package/src/form-submission/submit-form/submit-form.component.ts +1953 -0
- package/src/lib/form-submission.component.html +15 -0
- package/src/lib/form-submission.component.scss +1 -0
- package/src/lib/form-submission.component.ts +120 -0
- package/src/lib/form-submission.module.ts +31 -0
- package/src/lib/form-submission.service.spec.ts +16 -0
- package/src/lib/form-submission.service.ts +9 -0
- package/src/models/aggregate.model.ts +4 -0
- package/{models/answer.model.d.ts → src/models/answer.model.ts} +25 -23
- package/src/models/appearance.model.ts +64 -0
- package/{models/attachment.model.d.ts → src/models/attachment.model.ts} +6 -6
- package/{models/defaultAnswerEntry.model.d.ts → src/models/defaultAnswerEntry.model.ts} +7 -5
- package/{models/defaultAnswersModel.model.d.ts → src/models/defaultAnswersModel.model.ts} +5 -4
- package/{models/defaultQuestionAnswer.model.d.ts → src/models/defaultQuestionAnswer.model.ts} +6 -6
- package/src/models/elementOptionAPI.model.ts +13 -0
- package/src/models/elementOptionAPIData.model.ts +5 -0
- package/src/models/elementOptionDB.model.ts +9 -0
- package/src/models/elementOptionDBCriteria.model.ts +7 -0
- package/{models/emitters.model.d.ts → src/models/emitters.model.ts} +8 -8
- package/{models/enum/condition.enum.d.ts → src/models/enum/condition.enum.ts} +2 -2
- package/src/models/enum/elementType .enum.ts +22 -0
- package/src/models/enum/entityType.enum.ts +10 -0
- package/{models/formConfiguration.model.d.ts → src/models/formConfiguration.model.ts} +2 -2
- package/{models/formElement.model.d.ts → src/models/formElement.model.ts} +22 -22
- package/{models/formElementType.model.d.ts → src/models/formElementType.model.ts} +3 -2
- package/{models/grid.model.d.ts → src/models/grid.model.ts} +14 -13
- package/{models/hiddenField.model.d.ts → src/models/hiddenField.model.ts} +5 -5
- package/{models/iFrameProperties.model.d.ts → src/models/iFrameProperties.model.ts} +13 -13
- package/src/models/logic.model.ts +11 -0
- package/src/models/multifields.model.ts +12 -0
- package/{models/option.model.d.ts → src/models/option.model.ts} +5 -5
- package/src/models/page.model.ts +7 -0
- package/src/models/publicForm.model.ts +19 -0
- package/src/models/question.model.ts +27 -0
- package/src/models/questionAnswer.model.ts +8 -0
- package/src/models/questionGroup.model.ts +12 -0
- package/src/models/response.model.ts +9 -0
- package/src/models/result.model.ts +5 -0
- package/{models/row.model.d.ts → src/models/row.model.ts} +2 -1
- package/src/models/scoring.model.ts +10 -0
- package/src/models/section.model.ts +6 -0
- package/src/models/subForm.model.ts +25 -0
- package/src/models/subformConfiguration.model.ts +4 -0
- package/src/models/subformPropery.model.ts +8 -0
- package/{models/submission.model.d.ts → src/models/submission.model.ts} +16 -14
- package/{models/submissionCopyConfig.mopdel.d.ts → src/models/submissionCopyConfig.mopdel.ts} +4 -4
- package/{models/terms&condition.model.d.ts → src/models/terms&condition.model.ts} +1 -1
- package/src/models/validation.model.ts +48 -0
- package/src/models/whenClause.model.ts +7 -0
- package/{models/whenClauseCondition.model.d.ts → src/models/whenClauseCondition.model.ts} +6 -6
- package/{models/whenClauseElements.model.d.ts → src/models/whenClauseElements.model.ts} +6 -5
- package/{public-api.d.ts → src/public-api.ts} +4 -0
- package/src/question/card-subform/card-subform.component.html +282 -0
- package/src/question/card-subform/card-subform.component.scss +49 -0
- package/src/question/card-subform/card-subform.component.spec.ts +21 -0
- package/src/question/card-subform/card-subform.component.ts +407 -0
- package/src/question/confirm-dialog/confirm-dialog.component.html +32 -0
- package/src/question/confirm-dialog/confirm-dialog.component.scss +109 -0
- package/src/question/confirm-dialog/confirm-dialog.component.spec.ts +21 -0
- package/src/question/confirm-dialog/confirm-dialog.component.ts +24 -0
- package/src/question/form-elements/form-elements.component.html +28 -0
- package/src/question/form-elements/form-elements.component.scss +0 -0
- package/src/question/form-elements/form-elements.component.spec.ts +21 -0
- package/src/question/form-elements/form-elements.component.ts +41 -0
- package/src/question/inline-multiple-subform/inline-multiple-subform.component.html +321 -0
- package/src/question/inline-multiple-subform/inline-multiple-subform.component.scss +78 -0
- package/src/question/inline-multiple-subform/inline-multiple-subform.component.spec.ts +21 -0
- package/src/question/inline-multiple-subform/inline-multiple-subform.component.ts +425 -0
- package/src/question/multifields/multifields.component.html +78 -0
- package/src/question/multifields/multifields.component.scss +6 -0
- package/src/question/multifields/multifields.component.spec.ts +21 -0
- package/src/question/multifields/multifields.component.ts +27 -0
- package/src/question/multiple-subform/multiple-subform.component.html +185 -0
- package/src/question/multiple-subform/multiple-subform.component.scss +52 -0
- package/src/question/multiple-subform/multiple-subform.component.spec.ts +21 -0
- package/src/question/multiple-subform/multiple-subform.component.ts +481 -0
- package/src/question/question/question.component.html +51 -0
- package/src/question/question/question.component.scss +0 -0
- package/src/question/question/question.component.spec.ts +21 -0
- package/src/question/question/question.component.ts +129 -0
- package/src/question/question-group/question-group.component.html +147 -0
- package/src/question/question-group/question-group.component.scss +36 -0
- package/src/question/question-group/question-group.component.spec.ts +21 -0
- package/src/question/question-group/question-group.component.ts +94 -0
- package/src/question/question.module.ts +22 -0
- package/src/question/recursive-logic/recursive-logic.component.html +33 -0
- package/src/question/recursive-logic/recursive-logic.component.scss +0 -0
- package/src/question/recursive-logic/recursive-logic.component.spec.ts +21 -0
- package/src/question/recursive-logic/recursive-logic.component.ts +29 -0
- package/src/question/sub-form/sub-form.component.html +254 -0
- package/src/question/sub-form/sub-form.component.scss +83 -0
- package/src/question/sub-form/sub-form.component.spec.ts +21 -0
- package/src/question/sub-form/sub-form.component.ts +421 -0
- package/src/services/aggregate.service.ts +148 -0
- package/src/services/countryService.ts +92 -0
- package/src/services/data.service.ts +36 -0
- package/src/services/element-tracker.service.spec.ts +16 -0
- package/src/services/element-tracker.service.ts +24 -0
- package/src/services/form-validation.service.ts +151 -0
- package/src/services/form.service.spec.ts +16 -0
- package/src/services/form.service.ts +407 -0
- package/src/services/mapper.service.ts +625 -0
- package/src/services/recaptcha.service.spec.ts +16 -0
- package/src/services/recaptcha.service.ts +179 -0
- package/src/services/score.service.ts +352 -0
- package/src/services/subform-copy.service.ts +148 -0
- package/src/services/validation.service.spec.ts +16 -0
- package/src/services/validation.service.ts +33 -0
- package/src/services/whenClause.service.ts +502 -0
- package/src/shared/shared.module.ts +58 -0
- package/src/styles/shared-style.scss +86 -0
- package/src/sub-form/sub-form.module.ts +24 -0
- package/src/sub-form/submission-modal/submission-modal.component.html +160 -0
- package/src/sub-form/submission-modal/submission-modal.component.scss +54 -0
- package/src/sub-form/submission-modal/submission-modal.component.spec.ts +21 -0
- package/src/sub-form/submission-modal/submission-modal.component.ts +127 -0
- package/tsconfig.lib.json +14 -0
- package/tsconfig.lib.prod.json +10 -0
- package/tsconfig.spec.json +14 -0
- package/environment/environment.d.ts +0 -5
- package/esm2022/environment/environment.mjs +0 -6
- package/esm2022/form-fields/aggregate-function/aggregate-function.component.mjs +0 -146
- package/esm2022/form-fields/check-box-fields/check-box-fields.component.mjs +0 -473
- package/esm2022/form-fields/currency-fields/currency-fields.component.mjs +0 -502
- package/esm2022/form-fields/date-time-fields/date-time-fields.component.mjs +0 -608
- package/esm2022/form-fields/drop-down-fields/drop-down-fields.component.mjs +0 -585
- package/esm2022/form-fields/file-picker-fields/file-picker-fields.component.mjs +0 -224
- package/esm2022/form-fields/form-fields.module.mjs +0 -174
- package/esm2022/form-fields/hidden-field/hidden-field.component.mjs +0 -137
- package/esm2022/form-fields/iframe-fields/iframe-fields.component.mjs +0 -198
- package/esm2022/form-fields/location-fields/location-fields.component.mjs +0 -85
- package/esm2022/form-fields/mail-fields/mail-fields.component.mjs +0 -131
- package/esm2022/form-fields/mobile-fields/mobile-fields.component.mjs +0 -270
- package/esm2022/form-fields/number-fields/number-fields.component.mjs +0 -242
- package/esm2022/form-fields/password-fields/password-fields.component.mjs +0 -257
- package/esm2022/form-fields/radio-button-fields/radio-button-fields.component.mjs +0 -346
- package/esm2022/form-fields/rich-text-editor-fields/rich-text-editor-fields.component.mjs +0 -148
- package/esm2022/form-fields/section-fields/section-fields.component.mjs +0 -29
- package/esm2022/form-fields/selection-matrix-fields/selection-matrix-fields.component.mjs +0 -158
- package/esm2022/form-fields/signature-fields/signature-fields.component.mjs +0 -32
- package/esm2022/form-fields/slider-fields/slider-fields.component.mjs +0 -73
- package/esm2022/form-fields/terms-and-condition-fields/terms-and-condition-fields.component.mjs +0 -66
- package/esm2022/form-fields/text-area-fields/text-area-fields.component.mjs +0 -159
- package/esm2022/form-fields/text-fields/text-fields.component.mjs +0 -245
- package/esm2022/form-fields/toggle-switch-fields/toggle-switch-fields.component.mjs +0 -85
- package/esm2022/form-fields/url-fields/url-fields.component.mjs +0 -124
- package/esm2022/form-submission/form-submission.module.mjs +0 -64
- package/esm2022/form-submission/header/header.component.mjs +0 -20
- package/esm2022/form-submission/navigation-tabs/navigation-tabs.component.mjs +0 -171
- package/esm2022/form-submission/next-prev-navigation/next-prev-navigation.component.mjs +0 -124
- package/esm2022/form-submission/save-as-draft/saveDraftModalComponent .mjs +0 -50
- package/esm2022/form-submission/submission-container/submission-container.component.mjs +0 -17
- package/esm2022/form-submission/submit-form/submit-form.component.mjs +0 -1610
- package/esm2022/lib/form-submission.component.mjs +0 -113
- package/esm2022/lib/form-submission.module.mjs +0 -56
- package/esm2022/lib/form-submission.service.mjs +0 -14
- package/esm2022/models/aggregate.model.mjs +0 -2
- package/esm2022/models/answer.model.mjs +0 -2
- package/esm2022/models/appearance.model.mjs +0 -2
- package/esm2022/models/attachment.model.mjs +0 -2
- package/esm2022/models/defaultAnswerEntry.model.mjs +0 -2
- package/esm2022/models/defaultAnswersModel.model.mjs +0 -2
- package/esm2022/models/defaultQuestionAnswer.model.mjs +0 -2
- package/esm2022/models/elementOptionAPI.model.mjs +0 -2
- package/esm2022/models/elementOptionAPIData.model.mjs +0 -2
- package/esm2022/models/elementOptionDB.model.mjs +0 -2
- package/esm2022/models/elementOptionDBCriteria.model.mjs +0 -2
- package/esm2022/models/emitters.model.mjs +0 -2
- package/esm2022/models/enum/condition.enum.mjs +0 -18
- package/esm2022/models/enum/elementType .enum.mjs +0 -24
- package/esm2022/models/enum/entityType.enum.mjs +0 -12
- package/esm2022/models/formConfiguration.model.mjs +0 -2
- package/esm2022/models/formElement.model.mjs +0 -2
- package/esm2022/models/formElementType.model.mjs +0 -2
- package/esm2022/models/grid.model.mjs +0 -2
- package/esm2022/models/hiddenField.model.mjs +0 -2
- package/esm2022/models/iFrameProperties.model.mjs +0 -2
- package/esm2022/models/logic.model.mjs +0 -2
- package/esm2022/models/multifields.model.mjs +0 -2
- package/esm2022/models/option.model.mjs +0 -2
- package/esm2022/models/page.model.mjs +0 -2
- package/esm2022/models/publicForm.model.mjs +0 -2
- package/esm2022/models/question.model.mjs +0 -2
- package/esm2022/models/questionAnswer.model.mjs +0 -2
- package/esm2022/models/questionGroup.model.mjs +0 -2
- package/esm2022/models/row.model.mjs +0 -2
- package/esm2022/models/scoring.model.mjs +0 -2
- package/esm2022/models/section.model.mjs +0 -2
- package/esm2022/models/subForm.model.mjs +0 -2
- package/esm2022/models/subformConfiguration.model.mjs +0 -2
- package/esm2022/models/subformPropery.model.mjs +0 -2
- package/esm2022/models/submission.model.mjs +0 -2
- package/esm2022/models/submissionCopyConfig.mopdel.mjs +0 -2
- package/esm2022/models/terms&condition.model.mjs +0 -2
- package/esm2022/models/validation.model.mjs +0 -2
- package/esm2022/models/whenClause.model.mjs +0 -2
- package/esm2022/models/whenClauseCondition.model.mjs +0 -2
- package/esm2022/models/whenClauseElements.model.mjs +0 -2
- package/esm2022/piserve-tech-form-submission.mjs +0 -5
- package/esm2022/public-api.mjs +0 -7
- package/esm2022/question/card-subform/card-subform.component.mjs +0 -354
- package/esm2022/question/confirm-dialog/confirm-dialog.component.mjs +0 -27
- package/esm2022/question/form-elements/form-elements.component.mjs +0 -62
- package/esm2022/question/inline-multiple-subform/inline-multiple-subform.component.mjs +0 -384
- package/esm2022/question/multifields/multifields.component.mjs +0 -54
- package/esm2022/question/multiple-subform/multiple-subform.component.mjs +0 -413
- package/esm2022/question/question/question.component.mjs +0 -145
- package/esm2022/question/question-group/question-group.component.mjs +0 -102
- package/esm2022/question/recursive-logic/recursive-logic.component.mjs +0 -49
- package/esm2022/question/sub-form/sub-form.component.mjs +0 -351
- package/esm2022/services/aggregate.service.mjs +0 -139
- package/esm2022/services/countryService.mjs +0 -89
- package/esm2022/services/data.service.mjs +0 -36
- package/esm2022/services/element-tracker.service.mjs +0 -27
- package/esm2022/services/form-validation.service.mjs +0 -128
- package/esm2022/services/form.service.mjs +0 -333
- package/esm2022/services/mapper.service.mjs +0 -519
- package/esm2022/services/recaptcha.service.mjs +0 -136
- package/esm2022/services/score.service.mjs +0 -268
- package/esm2022/services/subform-copy.service.mjs +0 -122
- package/esm2022/services/validation.service.mjs +0 -35
- package/esm2022/services/whenClause.service.mjs +0 -423
- package/esm2022/shared/shared.module.mjs +0 -97
- package/esm2022/sub-form/submission-modal/submission-modal.component.mjs +0 -133
- package/fesm2022/piserve-tech-form-submission.mjs +0 -11658
- package/fesm2022/piserve-tech-form-submission.mjs.map +0 -1
- package/form-fields/aggregate-function/aggregate-function.component.d.ts +0 -43
- package/form-fields/check-box-fields/check-box-fields.component.d.ts +0 -73
- package/form-fields/currency-fields/currency-fields.component.d.ts +0 -62
- package/form-fields/date-time-fields/date-time-fields.component.d.ts +0 -96
- package/form-fields/drop-down-fields/drop-down-fields.component.d.ts +0 -88
- package/form-fields/file-picker-fields/file-picker-fields.component.d.ts +0 -72
- package/form-fields/form-fields.module.d.ts +0 -40
- package/form-fields/hidden-field/hidden-field.component.d.ts +0 -38
- package/form-fields/iframe-fields/iframe-fields.component.d.ts +0 -35
- package/form-fields/location-fields/location-fields.component.d.ts +0 -29
- package/form-fields/mail-fields/mail-fields.component.d.ts +0 -41
- package/form-fields/mobile-fields/mobile-fields.component.d.ts +0 -71
- package/form-fields/number-fields/number-fields.component.d.ts +0 -53
- package/form-fields/password-fields/password-fields.component.d.ts +0 -57
- package/form-fields/radio-button-fields/radio-button-fields.component.d.ts +0 -70
- package/form-fields/rich-text-editor-fields/rich-text-editor-fields.component.d.ts +0 -46
- package/form-fields/section-fields/section-fields.component.d.ts +0 -10
- package/form-fields/selection-matrix-fields/selection-matrix-fields.component.d.ts +0 -45
- package/form-fields/signature-fields/signature-fields.component.d.ts +0 -13
- package/form-fields/slider-fields/slider-fields.component.d.ts +0 -32
- package/form-fields/terms-and-condition-fields/terms-and-condition-fields.component.d.ts +0 -26
- package/form-fields/text-area-fields/text-area-fields.component.d.ts +0 -49
- package/form-fields/text-fields/text-fields.component.d.ts +0 -49
- package/form-fields/toggle-switch-fields/toggle-switch-fields.component.d.ts +0 -29
- package/form-fields/url-fields/url-fields.component.d.ts +0 -41
- package/form-submission/form-submission.module.d.ts +0 -20
- package/form-submission/header/header.component.d.ts +0 -7
- package/form-submission/navigation-tabs/navigation-tabs.component.d.ts +0 -57
- package/form-submission/next-prev-navigation/next-prev-navigation.component.d.ts +0 -46
- package/form-submission/save-as-draft/saveDraftModalComponent .d.ts +0 -17
- package/form-submission/submission-container/submission-container.component.d.ts +0 -7
- package/form-submission/submit-form/submit-form.component.d.ts +0 -237
- package/index.d.ts +0 -5
- package/lib/form-submission.component.d.ts +0 -30
- package/lib/form-submission.module.d.ts +0 -16
- package/lib/form-submission.service.d.ts +0 -6
- package/models/aggregate.model.d.ts +0 -4
- package/models/appearance.model.d.ts +0 -64
- package/models/elementOptionAPI.model.d.ts +0 -12
- package/models/elementOptionAPIData.model.d.ts +0 -5
- package/models/elementOptionDB.model.d.ts +0 -8
- package/models/elementOptionDBCriteria.model.d.ts +0 -7
- package/models/enum/elementType .enum.d.ts +0 -22
- package/models/enum/entityType.enum.d.ts +0 -10
- package/models/logic.model.d.ts +0 -9
- package/models/multifields.model.d.ts +0 -11
- package/models/page.model.d.ts +0 -6
- package/models/publicForm.model.d.ts +0 -18
- package/models/question.model.d.ts +0 -26
- package/models/questionAnswer.model.d.ts +0 -7
- package/models/questionGroup.model.d.ts +0 -11
- package/models/scoring.model.d.ts +0 -10
- package/models/section.model.d.ts +0 -6
- package/models/subForm.model.d.ts +0 -24
- package/models/subformConfiguration.model.d.ts +0 -4
- package/models/subformPropery.model.d.ts +0 -7
- package/models/validation.model.d.ts +0 -48
- package/models/whenClause.model.d.ts +0 -6
- package/question/card-subform/card-subform.component.d.ts +0 -44
- package/question/confirm-dialog/confirm-dialog.component.d.ts +0 -12
- package/question/form-elements/form-elements.component.d.ts +0 -20
- package/question/inline-multiple-subform/inline-multiple-subform.component.d.ts +0 -47
- package/question/multifields/multifields.component.d.ts +0 -11
- package/question/multiple-subform/multiple-subform.component.d.ts +0 -39
- package/question/question/question.component.d.ts +0 -30
- package/question/question-group/question-group.component.d.ts +0 -29
- package/question/recursive-logic/recursive-logic.component.d.ts +0 -19
- package/question/sub-form/sub-form.component.d.ts +0 -70
- package/services/aggregate.service.d.ts +0 -29
- package/services/countryService.d.ts +0 -21
- package/services/data.service.d.ts +0 -19
- package/services/element-tracker.service.d.ts +0 -10
- package/services/form-validation.service.d.ts +0 -16
- package/services/form.service.d.ts +0 -27
- package/services/mapper.service.d.ts +0 -31
- package/services/recaptcha.service.d.ts +0 -46
- package/services/score.service.d.ts +0 -27
- package/services/subform-copy.service.d.ts +0 -10
- package/services/validation.service.d.ts +0 -14
- package/services/whenClause.service.d.ts +0 -45
- package/shared/shared.module.d.ts +0 -25
- package/sub-form/submission-modal/submission-modal.component.d.ts +0 -31
- /package/{assets → src/assets}/fonts/Garamond.woff2 +0 -0
- /package/{assets → src/assets}/fonts/Georgia.woff2 +0 -0
- /package/{assets → src/assets}/fonts/Poppins.woff2 +0 -0
- /package/{assets → src/assets}/fonts/Tahoma.woff2 +0 -0
- /package/{assets → src/assets}/fonts/Tajawal.woff2 +0 -0
- /package/{assets → src/assets}/fonts/Verdana.woff2 +0 -0
- /package/{assets → src/assets}/icons/left_arrow.svg +0 -0
- /package/{assets → src/assets}/icons/right_arrow.svg +0 -0
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
import { Component, Inject, Injector } from '@angular/core';
|
|
2
|
-
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "../../services/validation.service";
|
|
5
|
-
import * as i2 from "@angular/material/dialog";
|
|
6
|
-
import * as i3 from "@angular/common";
|
|
7
|
-
import * as i4 from "../../form-fields/check-box-fields/check-box-fields.component";
|
|
8
|
-
import * as i5 from "../../form-fields/date-time-fields/date-time-fields.component";
|
|
9
|
-
import * as i6 from "../../form-fields/drop-down-fields/drop-down-fields.component";
|
|
10
|
-
import * as i7 from "../../form-fields/file-picker-fields/file-picker-fields.component";
|
|
11
|
-
import * as i8 from "../../form-fields/location-fields/location-fields.component";
|
|
12
|
-
import * as i9 from "../../form-fields/mail-fields/mail-fields.component";
|
|
13
|
-
import * as i10 from "../../form-fields/mobile-fields/mobile-fields.component";
|
|
14
|
-
import * as i11 from "../../form-fields/number-fields/number-fields.component";
|
|
15
|
-
import * as i12 from "../../form-fields/password-fields/password-fields.component";
|
|
16
|
-
import * as i13 from "../../form-fields/radio-button-fields/radio-button-fields.component";
|
|
17
|
-
import * as i14 from "../../form-fields/rich-text-editor-fields/rich-text-editor-fields.component";
|
|
18
|
-
import * as i15 from "../../form-fields/selection-matrix-fields/selection-matrix-fields.component";
|
|
19
|
-
import * as i16 from "../../form-fields/signature-fields/signature-fields.component";
|
|
20
|
-
import * as i17 from "../../form-fields/slider-fields/slider-fields.component";
|
|
21
|
-
import * as i18 from "../../form-fields/terms-and-condition-fields/terms-and-condition-fields.component";
|
|
22
|
-
import * as i19 from "../../form-fields/text-area-fields/text-area-fields.component";
|
|
23
|
-
import * as i20 from "../../form-fields/text-fields/text-fields.component";
|
|
24
|
-
import * as i21 from "../../form-fields/toggle-switch-fields/toggle-switch-fields.component";
|
|
25
|
-
import * as i22 from "../../form-fields/url-fields/url-fields.component";
|
|
26
|
-
import * as i23 from "../../form-fields/section-fields/section-fields.component";
|
|
27
|
-
import * as i24 from "../../form-fields/aggregate-function/aggregate-function.component";
|
|
28
|
-
import * as i25 from "../../form-fields/currency-fields/currency-fields.component";
|
|
29
|
-
import * as i26 from "../../form-fields/hidden-field/hidden-field.component";
|
|
30
|
-
import * as i27 from "../../form-fields/iframe-fields/iframe-fields.component";
|
|
31
|
-
export class SubmissionModalComponent {
|
|
32
|
-
constructor(data, validationService, dialogRef) {
|
|
33
|
-
this.data = data;
|
|
34
|
-
this.validationService = validationService;
|
|
35
|
-
this.dialogRef = dialogRef;
|
|
36
|
-
this.acceptedLanguage = '';
|
|
37
|
-
this.childLogicCache = {};
|
|
38
|
-
}
|
|
39
|
-
ngOnInit() {
|
|
40
|
-
this.subForm = this.data.subForm;
|
|
41
|
-
this.acceptedLanguage = this.data.acceptedLanguage;
|
|
42
|
-
this.loadComponent();
|
|
43
|
-
}
|
|
44
|
-
async loadComponent() {
|
|
45
|
-
this.componentToLoad = await this.loadFormElementsComponent();
|
|
46
|
-
this.injector = this.createInjector();
|
|
47
|
-
}
|
|
48
|
-
async loadFormElementsComponent() {
|
|
49
|
-
const { FormElementsComponent } = await import('../../question/form-elements/form-elements.component');
|
|
50
|
-
return FormElementsComponent;
|
|
51
|
-
}
|
|
52
|
-
createInjector() {
|
|
53
|
-
return Injector.create({
|
|
54
|
-
providers: [
|
|
55
|
-
{ provide: 'grid', useValue: this.grid?.element.childLogics },
|
|
56
|
-
{ provide: 'state', useValue: 'child' },
|
|
57
|
-
],
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
closeModal() {
|
|
61
|
-
this.clearModal();
|
|
62
|
-
this.dialogRef.close();
|
|
63
|
-
}
|
|
64
|
-
saveSubmission() {
|
|
65
|
-
let isFormValid = true;
|
|
66
|
-
const pageIndex = this.subForm.pageIndex ?? 0;
|
|
67
|
-
this.subForm.rows.forEach((row) => {
|
|
68
|
-
row.grid.forEach((item) => {
|
|
69
|
-
if (item.entityType === 'QUESTION') {
|
|
70
|
-
const q = item.element;
|
|
71
|
-
const hasAnswer = q.answer !== null &&
|
|
72
|
-
q.answer !== undefined &&
|
|
73
|
-
((typeof q.answer === 'string' && q.answer.trim() !== '') ||
|
|
74
|
-
(Array.isArray(q.answer) && q.answer.length > 0) ||
|
|
75
|
-
(typeof q.answer === 'object' &&
|
|
76
|
-
Object.keys(q.answer).length > 0));
|
|
77
|
-
if (q.required && !hasAnswer) {
|
|
78
|
-
this.validationService.setInvalid(q.id, 'This question is required', pageIndex);
|
|
79
|
-
isFormValid = false;
|
|
80
|
-
}
|
|
81
|
-
else {
|
|
82
|
-
this.validationService.clearInvalid(q.id);
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
});
|
|
86
|
-
});
|
|
87
|
-
// 2) If any required question is missing, abort close and let the child components render errors
|
|
88
|
-
if (!isFormValid) {
|
|
89
|
-
return;
|
|
90
|
-
}
|
|
91
|
-
// 3) All good → close the dialog
|
|
92
|
-
this.dialogRef.close(this.subForm);
|
|
93
|
-
}
|
|
94
|
-
clearModal() {
|
|
95
|
-
if (this.subForm && this.subForm.rows) {
|
|
96
|
-
this.subForm.rows.flatMap((item) => item.grid.forEach((gridItem) => this.clearFormElement(gridItem)));
|
|
97
|
-
// this.subForm.formElements.forEach((formElement: any) => {
|
|
98
|
-
// this.clearFormElement(formElement);
|
|
99
|
-
// });
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
clearFormElement(formElement) {
|
|
103
|
-
if (formElement.entityType === 'QUESTION') {
|
|
104
|
-
formElement.element.answer = '';
|
|
105
|
-
if (formElement.element.formElement) {
|
|
106
|
-
if (formElement.element.formElement.elementType === 'FILE_PICKER') {
|
|
107
|
-
formElement.element.answer = null;
|
|
108
|
-
}
|
|
109
|
-
else {
|
|
110
|
-
formElement.element.answer = '';
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
if (formElement.element.childLogics) {
|
|
114
|
-
formElement.element.childLogics?.forEach((childLogic) => {
|
|
115
|
-
childLogic.showLogic = false;
|
|
116
|
-
childLogic?.formElements?.forEach((formElement) => {
|
|
117
|
-
this.clearFormElement(formElement);
|
|
118
|
-
});
|
|
119
|
-
});
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SubmissionModalComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1.ValidationService }, { token: i2.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
124
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SubmissionModalComponent, selector: "lib-submission-modal", ngImport: i0, template: "<div class=\"mb-5\">\n <div class=\"modalHeader mb-4\">\n <div class=\"title-div\">\n <p class=\"title\">{{subForm.title}}</p>\n </div>\n <div class=\"header-btn\">\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" (click)=\"closeModal()\">\n <path d=\"M8 8L16 16\" stroke=\"#1D252D\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M16 8L8 16\" stroke=\"#1D252D\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </div>\n </div>\n\n <div class=\"px-3\" *ngFor=\"let row of subForm.rows\">\n <ng-container *ngFor=\"let formElement of row.grid\">\n <div *ngIf=\"formElement.entityType === 'QUESTION'\">\n <lib-check-box-fields\n *ngIf=\"formElement.element.formElement.elementType === 'CHECK_BOX'\"\n [question]=\"formElement.element\"\n ></lib-check-box-fields>\n <lib-date-time-fields\n *ngIf=\"formElement.element.formElement.elementType === 'DATE_TIME'\"\n [question]=\"formElement.element\"\n ></lib-date-time-fields>\n <lib-drop-down-fields\n *ngIf=\"formElement.element.formElement.elementType === 'DROP_DOWN'\"\n [question]=\"formElement.element\"\n ></lib-drop-down-fields>\n <lib-file-picker-fields\n *ngIf=\"\n formElement.element.formElement.elementType === 'FILE_PICKER'\n \"\n [question]=\"formElement.element\"\n ></lib-file-picker-fields>\n <lib-location-fields\n *ngIf=\"formElement.element.formElement.elementType === 'LOCATION'\"\n [question]=\"formElement.element\"\n ></lib-location-fields>\n\n <lib-mail-fields\n *ngIf=\"formElement.element.formElement.elementType === 'EMAIL'\"\n [question]=\"formElement.element\"\n >\n </lib-mail-fields>\n <lib-mobile-fields\n *ngIf=\"formElement.element.formElement.elementType === 'MOBILE'\"\n [question]=\"formElement.element\"\n >\n </lib-mobile-fields>\n <lib-number-fields\n *ngIf=\"formElement.element.formElement.elementType === 'NUMBER'\"\n [question]=\"formElement.element\"\n [rowId]=\"'0'\"\n >\n </lib-number-fields>\n <lib-password-fields\n *ngIf=\"formElement.element.formElement.elementType === 'PASSWORD'\"\n [question]=\"formElement.element\"\n >\n </lib-password-fields>\n <lib-radio-button-fields\n *ngIf=\"\n formElement.element.formElement.elementType === 'RADIO_BUTTON'\n \"\n [question]=\"formElement.element\"\n ></lib-radio-button-fields>\n <lib-rich-text-editor-fields\n *ngIf=\"\n formElement.element.formElement.elementType === 'RICH_TEXT_EDITOR'\n \"\n [question]=\"formElement.element\"\n ></lib-rich-text-editor-fields>\n <lib-selection-matrix-fields\n *ngIf=\"\n formElement.element.formElement.elementType === 'SELECTION_MATRIX'\n \"\n [question]=\"formElement.element\"\n [acceptedLanguage] = \"acceptedLanguage\"\n ></lib-selection-matrix-fields>\n <lib-signature-fields\n *ngIf=\"formElement.element.formElement.elementType === 'SIGNATURE'\"\n [question]=\"formElement.element\"\n ></lib-signature-fields>\n <lib-slider-fields\n *ngIf=\"formElement.element.formElement.elementType === 'SLIDER'\"\n [question]=\"formElement.element\"\n ></lib-slider-fields>\n <lib-terms-and-condition-fields\n *ngIf=\"\n formElement.element.formElement.elementType ===\n 'TERMS_AND_CONDITION'\n \"\n [question]=\"formElement.element\"\n ></lib-terms-and-condition-fields>\n <lib-text-area-fields\n *ngIf=\"formElement.element.formElement.elementType === 'TEXT_AREA'\"\n [question]=\"formElement.element\"\n ></lib-text-area-fields>\n <lib-text-fields\n *ngIf=\"formElement.element.formElement.elementType === 'TEXT_BOX'\"\n [question]=\"formElement.element\"\n ></lib-text-fields>\n <lib-toggle-switch-fields\n *ngIf=\"\n formElement.element.formElement.elementType === 'TOGGLE_SWITCH'\n \"\n [question]=\"formElement.element\"\n [acceptedLanguage] = \"acceptedLanguage\"\n ></lib-toggle-switch-fields>\n <lib-url-fields\n *ngIf=\"formElement.element.formElement.elementType === 'URL'\"\n [question]=\"formElement.element\"\n ></lib-url-fields>\n <lib-currency-fields\n *ngIf=\"formElement.element.formElement.elementType === 'CURRENCY'\"\n [question]=\"formElement.element\"\n ></lib-currency-fields>\n <lib-hidden-field\n *ngIf=\"formElement.element.formElement.elementType === 'HIDDEN_FIELD'\"\n [question]=\"formElement.element\"\n ></lib-hidden-field>\n <lib-iframe-fields\n *ngIf=\"formElement.element.formElement.elementType === 'IFRAME_WIDGET'\"\n [question]=\"formElement.element\"\n ></lib-iframe-fields>\n <lib-aggregate-function\n *ngIf=\"formElement.element.formElement.elementType === 'AGGREGATE_FUNCTION'\"\n [question]=\"formElement.element\"\n [rowId]=\"'0'\"\n ></lib-aggregate-function>\n <ng-container *ngIf=\"formElement?.element?.childLogics\">\n\n <ng-container *ngIf=\"componentToLoad\">\n\n <ng-container *ngComponentOutlet=\"componentToLoad;\n inputs: { grid: formElement?.element?.childLogics,\n answer: formElement?.element?.answer,\n state: 'child' }\"></ng-container>\n </ng-container>\n </ng-container>\n\n </div>\n <div *ngIf=\"formElement.entityType === 'SECTION'\">\n <lib-section-fields\n [section]=\"formElement.element\"\n ></lib-section-fields>\n </div>\n </ng-container>\n\n </div>\n\n <div class=\"okBtn me-4 ms-4\">\n <button\n class=\"submitBtn ms-md-3 me-md-2 rounded-pill\"\n type=\"button\"\n (click)=\"saveSubmission()\">\n Ok\n </button>\n </div>\n</div>\n", styles: [".modalHeader{width:100%;display:flex;flex-direction:row}.modalHeader .title-div{width:90%;display:flex;justify-content:center;margin-top:5%}.modalHeader .title-div .title{height:24px;font-style:normal;font-weight:600;font-size:24px;font-weight:550;line-height:24px;text-align:center;color:#1d252d;letter-spacing:.5px}.modalHeader .header-btn{width:10%;margin-top:4%;display:flex;justify-content:center}.modalHeader .header-btn svg{font-size:20px;cursor:pointer}.submitBtn{background:#084fff;color:#fff;border:none;padding:10px 27px;width:auto}.okBtn{display:flex;justify-content:flex-end;margin-left:auto;margin-bottom:5px}\n"], dependencies: [{ kind: "directive", type: i3.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.CheckBoxFieldsComponent, selector: "lib-check-box-fields", inputs: ["question", "inLine", "inCard", "submissionIndex", "rowId", "disableEdit"], outputs: ["answerChange"] }, { kind: "component", type: i5.DateTimeFieldsComponent, selector: "lib-date-time-fields", inputs: ["question", "inLine", "inCard", "submissionIndex", "disableEdit"], outputs: ["answerChange"] }, { kind: "component", type: i6.DropDownFieldsComponent, selector: "lib-drop-down-fields", inputs: ["question", "inLine", "inCard", "submissionIndex", "disableEdit"], outputs: ["answerChange"] }, { kind: "component", type: i7.FilePickerFieldsComponent, selector: "lib-file-picker-fields", inputs: ["question", "inLine", "inCard", "submissionIndex", "disableEdit"], outputs: ["answerChange", "inlineDeleteFiles"] }, { kind: "component", type: i8.LocationFieldsComponent, selector: "lib-location-fields", inputs: ["question", "inLine"], outputs: ["answerChange"] }, { kind: "component", type: i9.MailFieldsComponent, selector: "lib-mail-fields", inputs: ["question", "inLine", "inCard", "submissionIndex", "disableEdit"], outputs: ["answerChange"] }, { kind: "component", type: i10.MobileFieldsComponent, selector: "lib-mobile-fields", inputs: ["question", "inLine", "inCard", "submissionIndex", "disableEdit"], outputs: ["answerChange"] }, { kind: "component", type: i11.NumberFieldsComponent, selector: "lib-number-fields", inputs: ["question", "inLine", "inCard", "submissionIndex", "rowId", "disableEdit"], outputs: ["answerChange"] }, { kind: "component", type: i12.PasswordFieldsComponent, selector: "lib-password-fields", inputs: ["question", "inLine", "inCard", "submissionIndex", "disableEdit"], outputs: ["answerChange"] }, { kind: "component", type: i13.RadioButtonFieldsComponent, selector: "lib-radio-button-fields", inputs: ["question", "inLine", "inCard", "submissionIndex", "rowId", "disableEdit"], outputs: ["answerChange"] }, { kind: "component", type: i14.RichTextEditorFieldsComponent, selector: "lib-rich-text-editor-fields", inputs: ["question", "inLine", "inSubForm", "inCard", "submissionIndex", "disableEdit"], outputs: ["answerChange"] }, { kind: "component", type: i15.SelectionMatrixFieldsComponent, selector: "lib-selection-matrix-fields", inputs: ["question", "inLine", "acceptedLanguage", "rowId", "inCard", "submissionIndex", "disableEdit"], outputs: ["answerChange"] }, { kind: "component", type: i16.SignatureFieldsComponent, selector: "lib-signature-fields", inputs: ["question", "inLine"] }, { kind: "component", type: i17.SliderFieldsComponent, selector: "lib-slider-fields", inputs: ["question", "inLine", "inCard", "submissionIndex", "disableEdit"], outputs: ["answerChange"] }, { kind: "component", type: i18.TermsAndConditionFieldsComponent, selector: "lib-terms-and-condition-fields", inputs: ["question", "inLine"] }, { kind: "component", type: i19.TextAreaFieldsComponent, selector: "lib-text-area-fields", inputs: ["question", "inLine", "inCard", "submissionIndex", "disableEdit"], outputs: ["answerChange"] }, { kind: "component", type: i20.TextFieldsComponent, selector: "lib-text-fields", inputs: ["question", "inLine", "inCard", "submissionIndex", "disableEdit"], outputs: ["answerChange"] }, { kind: "component", type: i21.ToggleSwitchFieldsComponent, selector: "lib-toggle-switch-fields", inputs: ["question", "inLine", "inCard", "submissionIndex", "acceptedLanguage", "disableEdit"], outputs: ["answerChange"] }, { kind: "component", type: i22.UrlFieldsComponent, selector: "lib-url-fields", inputs: ["question", "inLine", "inCard", "submissionIndex", "disableEdit"], outputs: ["answerChange"] }, { kind: "component", type: i23.SectionFieldsComponent, selector: "lib-section-fields", inputs: ["section"] }, { kind: "component", type: i24.AggregateFunctionComponent, selector: "lib-aggregate-function", inputs: ["question", "inLine", "inCard", "submissionIndex", "rowId", "disableEdit"], outputs: ["answerChange"] }, { kind: "component", type: i25.CurrencyFieldsComponent, selector: "lib-currency-fields", inputs: ["question", "inLine", "inCard", "submissionIndex", "disableEdit", "rowId"], outputs: ["answerChange"] }, { kind: "component", type: i26.HiddenFieldComponent, selector: "lib-hidden-field", inputs: ["question", "inLine", "inCard", "submissionIndex"], outputs: ["answerChange"] }, { kind: "component", type: i27.IframeFieldsComponent, selector: "lib-iframe-fields", inputs: ["question"] }] }); }
|
|
125
|
-
}
|
|
126
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SubmissionModalComponent, decorators: [{
|
|
127
|
-
type: Component,
|
|
128
|
-
args: [{ selector: 'lib-submission-modal', template: "<div class=\"mb-5\">\n <div class=\"modalHeader mb-4\">\n <div class=\"title-div\">\n <p class=\"title\">{{subForm.title}}</p>\n </div>\n <div class=\"header-btn\">\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" (click)=\"closeModal()\">\n <path d=\"M8 8L16 16\" stroke=\"#1D252D\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M16 8L8 16\" stroke=\"#1D252D\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </div>\n </div>\n\n <div class=\"px-3\" *ngFor=\"let row of subForm.rows\">\n <ng-container *ngFor=\"let formElement of row.grid\">\n <div *ngIf=\"formElement.entityType === 'QUESTION'\">\n <lib-check-box-fields\n *ngIf=\"formElement.element.formElement.elementType === 'CHECK_BOX'\"\n [question]=\"formElement.element\"\n ></lib-check-box-fields>\n <lib-date-time-fields\n *ngIf=\"formElement.element.formElement.elementType === 'DATE_TIME'\"\n [question]=\"formElement.element\"\n ></lib-date-time-fields>\n <lib-drop-down-fields\n *ngIf=\"formElement.element.formElement.elementType === 'DROP_DOWN'\"\n [question]=\"formElement.element\"\n ></lib-drop-down-fields>\n <lib-file-picker-fields\n *ngIf=\"\n formElement.element.formElement.elementType === 'FILE_PICKER'\n \"\n [question]=\"formElement.element\"\n ></lib-file-picker-fields>\n <lib-location-fields\n *ngIf=\"formElement.element.formElement.elementType === 'LOCATION'\"\n [question]=\"formElement.element\"\n ></lib-location-fields>\n\n <lib-mail-fields\n *ngIf=\"formElement.element.formElement.elementType === 'EMAIL'\"\n [question]=\"formElement.element\"\n >\n </lib-mail-fields>\n <lib-mobile-fields\n *ngIf=\"formElement.element.formElement.elementType === 'MOBILE'\"\n [question]=\"formElement.element\"\n >\n </lib-mobile-fields>\n <lib-number-fields\n *ngIf=\"formElement.element.formElement.elementType === 'NUMBER'\"\n [question]=\"formElement.element\"\n [rowId]=\"'0'\"\n >\n </lib-number-fields>\n <lib-password-fields\n *ngIf=\"formElement.element.formElement.elementType === 'PASSWORD'\"\n [question]=\"formElement.element\"\n >\n </lib-password-fields>\n <lib-radio-button-fields\n *ngIf=\"\n formElement.element.formElement.elementType === 'RADIO_BUTTON'\n \"\n [question]=\"formElement.element\"\n ></lib-radio-button-fields>\n <lib-rich-text-editor-fields\n *ngIf=\"\n formElement.element.formElement.elementType === 'RICH_TEXT_EDITOR'\n \"\n [question]=\"formElement.element\"\n ></lib-rich-text-editor-fields>\n <lib-selection-matrix-fields\n *ngIf=\"\n formElement.element.formElement.elementType === 'SELECTION_MATRIX'\n \"\n [question]=\"formElement.element\"\n [acceptedLanguage] = \"acceptedLanguage\"\n ></lib-selection-matrix-fields>\n <lib-signature-fields\n *ngIf=\"formElement.element.formElement.elementType === 'SIGNATURE'\"\n [question]=\"formElement.element\"\n ></lib-signature-fields>\n <lib-slider-fields\n *ngIf=\"formElement.element.formElement.elementType === 'SLIDER'\"\n [question]=\"formElement.element\"\n ></lib-slider-fields>\n <lib-terms-and-condition-fields\n *ngIf=\"\n formElement.element.formElement.elementType ===\n 'TERMS_AND_CONDITION'\n \"\n [question]=\"formElement.element\"\n ></lib-terms-and-condition-fields>\n <lib-text-area-fields\n *ngIf=\"formElement.element.formElement.elementType === 'TEXT_AREA'\"\n [question]=\"formElement.element\"\n ></lib-text-area-fields>\n <lib-text-fields\n *ngIf=\"formElement.element.formElement.elementType === 'TEXT_BOX'\"\n [question]=\"formElement.element\"\n ></lib-text-fields>\n <lib-toggle-switch-fields\n *ngIf=\"\n formElement.element.formElement.elementType === 'TOGGLE_SWITCH'\n \"\n [question]=\"formElement.element\"\n [acceptedLanguage] = \"acceptedLanguage\"\n ></lib-toggle-switch-fields>\n <lib-url-fields\n *ngIf=\"formElement.element.formElement.elementType === 'URL'\"\n [question]=\"formElement.element\"\n ></lib-url-fields>\n <lib-currency-fields\n *ngIf=\"formElement.element.formElement.elementType === 'CURRENCY'\"\n [question]=\"formElement.element\"\n ></lib-currency-fields>\n <lib-hidden-field\n *ngIf=\"formElement.element.formElement.elementType === 'HIDDEN_FIELD'\"\n [question]=\"formElement.element\"\n ></lib-hidden-field>\n <lib-iframe-fields\n *ngIf=\"formElement.element.formElement.elementType === 'IFRAME_WIDGET'\"\n [question]=\"formElement.element\"\n ></lib-iframe-fields>\n <lib-aggregate-function\n *ngIf=\"formElement.element.formElement.elementType === 'AGGREGATE_FUNCTION'\"\n [question]=\"formElement.element\"\n [rowId]=\"'0'\"\n ></lib-aggregate-function>\n <ng-container *ngIf=\"formElement?.element?.childLogics\">\n\n <ng-container *ngIf=\"componentToLoad\">\n\n <ng-container *ngComponentOutlet=\"componentToLoad;\n inputs: { grid: formElement?.element?.childLogics,\n answer: formElement?.element?.answer,\n state: 'child' }\"></ng-container>\n </ng-container>\n </ng-container>\n\n </div>\n <div *ngIf=\"formElement.entityType === 'SECTION'\">\n <lib-section-fields\n [section]=\"formElement.element\"\n ></lib-section-fields>\n </div>\n </ng-container>\n\n </div>\n\n <div class=\"okBtn me-4 ms-4\">\n <button\n class=\"submitBtn ms-md-3 me-md-2 rounded-pill\"\n type=\"button\"\n (click)=\"saveSubmission()\">\n Ok\n </button>\n </div>\n</div>\n", styles: [".modalHeader{width:100%;display:flex;flex-direction:row}.modalHeader .title-div{width:90%;display:flex;justify-content:center;margin-top:5%}.modalHeader .title-div .title{height:24px;font-style:normal;font-weight:600;font-size:24px;font-weight:550;line-height:24px;text-align:center;color:#1d252d;letter-spacing:.5px}.modalHeader .header-btn{width:10%;margin-top:4%;display:flex;justify-content:center}.modalHeader .header-btn svg{font-size:20px;cursor:pointer}.submitBtn{background:#084fff;color:#fff;border:none;padding:10px 27px;width:auto}.okBtn{display:flex;justify-content:flex-end;margin-left:auto;margin-bottom:5px}\n"] }]
|
|
129
|
-
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
130
|
-
type: Inject,
|
|
131
|
-
args: [MAT_DIALOG_DATA]
|
|
132
|
-
}] }, { type: i1.ValidationService }, { type: i2.MatDialogRef }]; } });
|
|
133
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VibWlzc2lvbi1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtLXN1Ym1pc3Npb24vc3JjL3N1Yi1mb3JtL3N1Ym1pc3Npb24tbW9kYWwvc3VibWlzc2lvbi1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtLXN1Ym1pc3Npb24vc3JjL3N1Yi1mb3JtL3N1Ym1pc3Npb24tbW9kYWwvc3VibWlzc2lvbi1tb2RhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFRekUsTUFBTSxPQUFPLHdCQUF3QjtJQVFuQyxZQUNrQyxJQUFTLEVBQ2pDLGlCQUFvQyxFQUNwQyxTQUFpRDtRQUZ6QixTQUFJLEdBQUosSUFBSSxDQUFLO1FBQ2pDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsY0FBUyxHQUFULFNBQVMsQ0FBd0M7UUFWM0QscUJBQWdCLEdBQVcsRUFBRSxDQUFDO1FBRzlCLG9CQUFlLEdBQXVFLEVBQUUsQ0FBQztJQVF0RixDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDakMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFDbkQsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFTyxLQUFLLENBQUMsYUFBYTtRQUN6QixJQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sSUFBSSxDQUFDLHlCQUF5QixFQUFFLENB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IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTUFUX0RJQUxPR19EQVRBLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgVmFsaWRhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy92YWxpZGF0aW9uLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItc3VibWlzc2lvbi1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zdWJtaXNzaW9uLW1vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3VibWlzc2lvbi1tb2RhbC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBTdWJtaXNzaW9uTW9kYWxDb21wb25lbnQge1xuICBhY2NlcHRlZExhbmd1YWdlOiBzdHJpbmcgPSAnJztcbiAgZ3JpZDogYW55O1xuICBzdWJGb3JtOiBhbnk7XG4gIGNoaWxkTG9naWNDYWNoZTogeyBba2V5OiBzdHJpbmddOiB7IGNvbXBvbmVudDogUHJvbWlzZTxhbnk+LCBpbmplY3RvcjogSW5qZWN0b3IgfSB9ID0ge307XG4gIGNvbXBvbmVudFRvTG9hZDogYW55O1xuICBpbmplY3RvciE6IEluamVjdG9yO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogYW55LFxuICAgIHByaXZhdGUgdmFsaWRhdGlvblNlcnZpY2U6IFZhbGlkYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8U3VibWlzc2lvbk1vZGFsQ29tcG9uZW50PlxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zdWJGb3JtID0gdGhpcy5kYXRhLnN1YkZvcm07XG4gICAgdGhpcy5hY2NlcHRlZExhbmd1YWdlID0gdGhpcy5kYXRhLmFjY2VwdGVkTGFuZ3VhZ2U7XG4gICAgdGhpcy5sb2FkQ29tcG9uZW50KCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGxvYWRDb21wb25lbnQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5jb21wb25lbnRUb0xvYWQgPSBhd2FpdCB0aGlzLmxvYWRGb3JtRWxlbWVudHNDb21wb25lbnQoKTtcbiAgICB0aGlzLmluamVjdG9yID0gdGhpcy5jcmVhdGVJbmplY3RvcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBsb2FkRm9ybUVsZW1lbnRzQ29tcG9uZW50KCkge1xuICAgIGNvbnN0IHsgRm9ybUVsZW1lbnRzQ29tcG9uZW50IH0gPSBhd2FpdCBpbXBvcnQoJy4uLy4uL3F1ZXN0aW9uL2Zvcm0tZWxlbWVudHMvZm9ybS1lbGVtZW50cy5jb21wb25lbnQnKTtcbiAgICByZXR1cm4gRm9ybUVsZW1lbnRzQ29tcG9uZW50O1xuICB9XG5cbiAgY3JlYXRlSW5qZWN0b3IoKTogSW5qZWN0b3Ige1xuICAgIHJldHVybiBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogJ2dyaWQnLCB1c2VWYWx1ZTogdGhpcy5ncmlkPy5lbGVtZW50LmNoaWxkTG9naWNzICB9LFxuICAgICAgICB7IHByb3ZpZGU6ICdzdGF0ZScsIHVzZVZhbHVlOiAnY2hpbGQnIH0sXG4gICAgICBdLFxuICAgIH0pO1xuICB9XG5cblxuXG4gIGNsb3NlTW9kYWwoKSB7XG4gICAgdGhpcy5jbGVhck1vZGFsKCk7XG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcbiAgfVxuXG4gIHNhdmVTdWJtaXNzaW9uKCkge1xuICAgIGxldCBpc0Zvcm1WYWxpZCA9IHRydWU7XG4gICAgY29uc3QgcGFnZUluZGV4ID0gdGhpcy5zdWJGb3JtLnBhZ2VJbmRleCA/PyAwO1xuXG4gICAgdGhpcy5zdWJGb3JtLnJvd3MuZm9yRWFjaCgocm93OiBhbnkpID0+IHtcbiAgICAgIHJvdy5ncmlkLmZvckVhY2goKGl0ZW06IGFueSkgPT4ge1xuICAgICAgICBpZiAoaXRlbS5lbnRpdHlUeXBlID09PSAnUVVFU1RJT04nKSB7XG4gICAgICAgICAgY29uc3QgcSA9IGl0ZW0uZWxlbWVudDtcbiAgICAgICAgICBjb25zdCBoYXNBbnN3ZXIgPVxuICAgICAgICAgICAgcS5hbnN3ZXIgIT09IG51bGwgJiZcbiAgICAgICAgICAgIHEuYW5zd2VyICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICAgICgodHlwZW9mIHEuYW5zd2VyID09PSAnc3RyaW5nJyAmJiBxLmFuc3dlci50cmltKCkgIT09ICcnKSB8fFxuICAgICAgICAgICAgICAoQXJyYXkuaXNBcnJheShxLmFuc3dlcikgJiYgcS5hbnN3ZXIubGVuZ3RoID4gMCkgfHxcbiAgICAgICAgICAgICAgKHR5cGVvZiBxLmFuc3dlciA9PT0gJ29iamVjdCcgJiZcbiAgICAgICAgICAgICAgICBPYmplY3Qua2V5cyhxLmFuc3dlcikubGVuZ3RoID4gMCkpO1xuICAgICAgICAgIGlmIChxLnJlcXVpcmVkICYmICFoYXNBbnN3ZXIpIHtcbiAgICAgICAgICAgIHRoaXMudmFsaWRhdGlvblNlcnZpY2Uuc2V0SW52YWxpZChcbiAgICAgICAgICAgICAgcS5pZCxcbiAgICAgICAgICAgICAgJ1RoaXMgcXVlc3Rpb24gaXMgcmVxdWlyZWQnLFxuICAgICAgICAgICAgICBwYWdlSW5kZXhcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpc0Zvcm1WYWxpZCA9IGZhbHNlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmNsZWFySW52YWxpZChxLmlkKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgLy8gMikgSWYgYW55IHJlcXVpcmVkIHF1ZXN0aW9uIGlzIG1pc3NpbmcsIGFib3J0IGNsb3NlIGFuZCBsZXQgdGhlIGNoaWxkIGNvbXBvbmVudHMgcmVuZGVyIGVycm9yc1xuICAgIGlmICghaXNGb3JtVmFsaWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyAzKSBBbGwgZ29vZCDihpIgY2xvc2UgdGhlIGRpYWxvZ1xuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHRoaXMuc3ViRm9ybSk7XG4gIH1cblxuICBjbGVhck1vZGFsKCkge1xuICAgIGlmICh0aGlzLnN1YkZvcm0gJiYgdGhpcy5zdWJGb3JtLnJvd3MpIHtcbiAgICAgIHRoaXMuc3ViRm9ybS5yb3dzLmZsYXRNYXAoKGl0ZW06IGFueSkgPT5cbiAgICAgICAgaXRlbS5ncmlkLmZvckVhY2goKGdyaWRJdGVtOiBhbnkpID0+IHRoaXMuY2xlYXJGb3JtRWxlbWVudChncmlkSXRlbSkpXG4gICAgICApO1xuICAgICAgLy8gdGhpcy5zdWJGb3JtLmZvcm1FbGVtZW50cy5mb3JFYWNoKChmb3JtRWxlbWVudDogYW55KSA9PiB7XG4gICAgICAvLyAgIHRoaXMuY2xlYXJGb3JtRWxlbWVudChmb3JtRWxlbWVudCk7XG4gICAgICAvLyB9KTtcbiAgICB9XG4gIH1cblxuICBjbGVhckZvcm1FbGVtZW50KGZvcm1FbGVtZW50OiBhbnkpIHtcbiAgICBpZiAoZm9ybUVsZW1lbnQuZW50aXR5VHlwZSA9PT0gJ1FVRVNUSU9OJykge1xuICAgICAgZm9ybUVsZW1lbnQuZWxlbWVudC5hbnN3ZXIgPSAnJztcblxuICAgICAgaWYgKGZvcm1FbGVtZW50LmVsZW1lbnQuZm9ybUVsZW1lbnQpIHtcbiAgICAgICAgaWYgKGZvcm1FbGVtZW50LmVsZW1lbnQuZm9ybUVsZW1lbnQuZWxlbWVudFR5cGUgPT09ICdGSUxFX1BJQ0tFUicpIHtcbiAgICAgICAgICBmb3JtRWxlbWVudC5lbGVtZW50LmFuc3dlciA9IG51bGw7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZm9ybUVsZW1lbnQuZWxlbWVudC5hbnN3ZXIgPSAnJztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoZm9ybUVsZW1lbnQuZWxlbWVudC5jaGlsZExvZ2ljcykge1xuICAgICAgICBmb3JtRWxlbWVudC5lbGVtZW50LmNoaWxkTG9naWNzPy5mb3JFYWNoKChjaGlsZExvZ2ljOiBhbnkpID0+IHtcbiAgICAgICAgICBjaGlsZExvZ2ljLnNob3dMb2dpYyA9IGZhbHNlO1xuICAgICAgICAgIGNoaWxkTG9naWM/LmZvcm1FbGVtZW50cz8uZm9yRWFjaCgoZm9ybUVsZW1lbnQ6IGFueSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jbGVhckZvcm1FbGVtZW50KGZvcm1FbGVtZW50KTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibWItNVwiPlxuICAgIDxkaXYgY2xhc3M9XCJtb2RhbEhlYWRlciBtYi00XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0aXRsZS1kaXZcIj5cbiAgICAgICAgICAgIDxwIGNsYXNzPVwidGl0bGVcIj57e3N1YkZvcm0udGl0bGV9fTwvcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItYnRuXCI+XG4gICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiAoY2xpY2spPVwiY2xvc2VNb2RhbCgpXCI+XG4gICAgICAgICAgICAgICAgPHBhdGggZD1cIk04IDhMMTYgMTZcIiBzdHJva2U9XCIjMUQyNTJEXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxuICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTYgOEw4IDE2XCIgc3Ryb2tlPVwiIzFEMjUyRFwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cbiAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJweC0zXCIgKm5nRm9yPVwibGV0IHJvdyBvZiBzdWJGb3JtLnJvd3NcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGZvcm1FbGVtZW50IG9mIHJvdy5ncmlkXCI+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJmb3JtRWxlbWVudC5lbnRpdHlUeXBlID09PSAnUVVFU1RJT04nXCI+XG4gICAgICAgICAgPGxpYi1jaGVjay1ib3gtZmllbGRzXG4gICAgICAgICAgICAqbmdJZj1cImZvcm1FbGVtZW50LmVsZW1lbnQuZm9ybUVsZW1lbnQuZWxlbWVudFR5cGUgPT09ICdDSEVDS19CT1gnXCJcbiAgICAgICAgICAgIFtxdWVzdGlvbl09XCJmb3JtRWxlbWVudC5lbGVtZW50XCJcbiAgICAgICAgICA+PC9saWItY2hlY2stYm94LWZpZWxkcz5cbiAgICAgICAgICA8bGliLWRhdGUtdGltZS1maWVsZHNcbiAgICAgICAgICAgICpuZ0lmPVwiZm9ybUVsZW1lbnQuZWxlbWVudC5mb3JtRWxlbWVudC5lbGVtZW50VHlwZSA9PT0gJ0RBVEVfVElNRSdcIlxuICAgICAgICAgICAgW3F1ZXN0aW9uXT1cImZvcm1FbGVtZW50LmVsZW1lbnRcIlxuICAgICAgICAgID48L2xpYi1kYXRlLXRpbWUtZmllbGRzPlxuICAgICAgICAgIDxsaWItZHJvcC1kb3duLWZpZWxkc1xuICAgICAgICAgICAgKm5nSWY9XCJmb3JtRWxlbWVudC5lbGVtZW50LmZvcm1FbGVtZW50LmVsZW1lbnRUeXBlID09PSAnRFJPUF9ET1dOJ1wiXG4gICAgICAgICAgICBbcXVlc3Rpb25dPVwiZm9ybUVsZW1lbnQuZWxlbWVudFwiXG4gICAgICAgICAgPjwvbGliLWRyb3AtZG93bi1maWVsZHM+XG4gICAgICAgICAgPGxpYi1maWxlLXBpY2tlci1maWVsZHNcbiAgICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICAgIGZvcm1FbGVtZW50LmVsZW1lbnQuZm9ybUVsZW1lbnQuZWxlbWVudFR5cGUgPT09ICdGSUxFX1BJQ0tFUidcbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgICBbcXVlc3Rpb25dPVwiZm9ybUVsZW1lbnQuZWxlbWVudFwiXG4gICAgICAgICAgPjwvbGliLWZpbGUtcGlja2VyLWZpZWxkcz5cbiAgICAgICAgICA8bGliLWxvY2F0aW9uLWZpZWxkc1xuICAgICAgICAgICAgKm5nSWY9XCJmb3JtRWxlbWVudC5lbGVtZW50LmZvcm1FbGVtZW50LmVsZW1lbnRUeXBlID09PSAnTE9DQVRJT04nXCJcbiAgICAgICAgICAgIFtxdWVzdGlvbl09XCJmb3JtRWxlbWVudC5lbGVtZW50XCJcbiAgICAgICAgICA+PC9saWItbG9jYXRpb24tZmllbGRzPlxuXG4gICAgICAgICAgPGxpYi1tYWlsLWZpZWxkc1xuICAgICAgICAgICAgKm5nSWY9XCJmb3JtRWxlbWVudC5lbGVtZW50LmZvcm1FbGVtZW50LmVsZW1lbnRUeXBlID09PSAnRU1BSUwnXCJcbiAgICAgICAgICAgIFtxdWVzdGlvbl09XCJmb3JtRWxlbWVudC5lbGVtZW50XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgPC9saWItbWFpbC1maWVsZHM+XG4gICAgICAgICAgPGxpYi1tb2JpbGUtZmllbGRzXG4gICAgICAgICAgICAqbmdJZj1cImZvcm1FbGVtZW50LmVsZW1lbnQuZm9ybUVsZW1lbnQuZWxlbWVudFR5cGUgPT09ICdNT0JJTEUnXCJcbiAgICAgICAgICAgIFtxdWVzdGlvbl09XCJmb3JtRWxlbWVudC5lbGVtZW50XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgPC9saWItbW9iaWxlLWZpZWxkcz5cbiAgICAgICAgICA8bGliLW51bWJlci1maWVsZHNcbiAgICAgICAgICAgICpuZ0lmPVwiZm9ybUVsZW1lbnQuZWxlbWVudC5mb3JtRWxlbWVudC5lbGVtZW50VHlwZSA9PT0gJ05VTUJFUidcIlxuICAgICAgICAgICAgW3F1ZXN0aW9uXT1cImZvcm1FbGVtZW50LmVsZW1lbnRcIlxuICAgICAgICAgICAgW3Jvd0lkXT1cIicwJ1wiXG4gICAgICAgICAgPlxuICAgICAgICAgIDwvbGliLW51bWJlci1maWVsZHM+XG4gICAgICAgICAgPGxpYi1wYXNzd29yZC1maWVsZHNcbiAgICAgICAgICAgICpuZ0lmPVwiZm9ybUVsZW1lbnQuZWxlbWVudC5mb3JtRWxlbWVudC5lbGVtZW50VHlwZSA9PT0gJ1BBU1NXT1JEJ1wiXG4gICAgICAgICAgICBbcXVlc3Rpb25dPVwiZm9ybUVsZW1lbnQuZWxlbWVudFwiXG4gICAgICAgICAgPlxuICAgICAgICAgIDwvbGliLXBhc3N3b3JkLWZpZWxkcz5cbiAgICAgICAgICA8bGliLXJhZGlvLWJ1dHRvbi1maWVsZHNcbiAgICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICAgIGZvcm1FbGVtZW50LmVsZW1lbnQuZm9ybUVsZW1lbnQuZWxlbWVudFR5cGUgPT09ICdSQURJT19CVVRUT04nXG4gICAgICAgICAgICBcIlxuICAgICAgICAgICAgW3F1ZXN0aW9uXT1cImZvcm1FbGVtZW50LmVsZW1lbnRcIlxuICAgICAgICAgID48L2xpYi1yYWRpby1idXR0b24tZmllbGRzPlxuICAgICAgICAgIDxsaWItcmljaC10ZXh0LWVkaXRvci1maWVsZHNcbiAgICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICAgIGZvcm1FbGVtZW50LmVsZW1lbnQuZm9ybUVsZW1lbnQuZWxlbWVudFR5cGUgPT09ICdSSUNIX1RFWFRfRURJVE9SJ1xuICAgICAgICAgICAgXCJcbiAgICAgICAgICAgIFtxdWVzdGlvbl09XCJmb3JtRWxlbWVudC5lbGVtZW50XCJcbiAgICAgICAgICA+PC9saWItcmljaC10ZXh0LWVkaXRvci1maWVsZHM+XG4gICAgICAgICAgPGxpYi1zZWxlY3Rpb24tbWF0cml4LWZpZWxkc1xuICAgICAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAgICAgZm9ybUVsZW1lbnQuZWxlbWVudC5mb3JtRWxlbWVudC5lbGVtZW50VHlwZSA9PT0gJ1NFTEVDVElPTl9NQVRSSVgnXG4gICAgICAgICAgICBcIlxuICAgICAgICAgICAgW3F1ZXN0aW9uXT1cImZvcm1FbGVtZW50LmVsZW1lbnRcIlxuICAgICAgICAgICAgW2FjY2VwdGVkTGFuZ3VhZ2VdID0gXCJhY2NlcHRlZExhbmd1YWdlXCJcbiAgICAgICAgICA+PC9saWItc2VsZWN0aW9uLW1hdHJpeC1maWVsZHM+XG4gICAgICAgICAgPGxpYi1zaWduYXR1cmUtZmllbGRzXG4gICAgICAgICAgICAqbmdJZj1cImZvcm1FbGVtZW50LmVsZW1lbnQuZm9ybUVsZW1lbnQuZWxlbWVudFR5cGUgPT09ICdTSUdOQVRVUkUnXCJcbiAgICAgICAgICAgIFtxdWVzdGlvbl09XCJmb3JtRWxlbWVudC5lbGVtZW50XCJcbiAgICAgICAgICA+PC9saWItc2lnbmF0dXJlLWZpZWxkcz5cbiAgICAgICAgICA8bGliLXNsaWRlci1maWVsZHNcbiAgICAgICAgICAgICpuZ0lmPVwiZm9ybUVsZW1lbnQuZWxlbWVudC5mb3JtRWxlbWVudC5lbGVtZW50VHlwZSA9PT0gJ1NMSURFUidcIlxuICAgICAgICAgICAgW3F1ZXN0aW9uXT1cImZvcm1FbGVtZW50LmVsZW1lbnRcIlxuICAgICAgICAgID48L2xpYi1zbGlkZXItZmllbGRzPlxuICAgICAgICAgIDxsaWItdGVybXMtYW5kLWNvbmRpdGlvbi1maWVsZHNcbiAgICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICAgIGZvcm1FbGVtZW50LmVsZW1lbnQuZm9ybUVsZW1lbnQuZWxlbWVudFR5cGUgPT09XG4gICAgICAgICAgICAgICdURVJNU19BTkRfQ09ORElUSU9OJ1xuICAgICAgICAgICAgXCJcbiAgICAgICAgICAgIFtxdWVzdGlvbl09XCJmb3JtRWxlbWVudC5lbGVtZW50XCJcbiAgICAgICAgICA+PC9saWItdGVybXMtYW5kLWNvbmRpdGlvbi1maWVsZHM+XG4gICAgICAgICAgPGxpYi10ZXh0LWFyZWEtZmllbGRzXG4gICAgICAgICAgICAqbmdJZj1cImZvcm1FbGVtZW50LmVsZW1lbnQuZm9ybUVsZW1lbnQuZWxlbWVudFR5cGUgPT09ICdURVhUX0FSRUEnXCJcbiAgICAgICAgICAgIFtxdWVzdGlvbl09XCJmb3JtRWxlbWVudC5lbGVtZW50XCJcbiAgICAgICAgICA+PC9saWItdGV4dC1hcmVhLWZpZWxkcz5cbiAgICAgICAgICA8bGliLXRleHQtZmllbGRzXG4gICAgICAgICAgICAqbmdJZj1cImZvcm1FbGVtZW50LmVsZW1lbnQuZm9ybUVsZW1lbnQuZWxlbWVudFR5cGUgPT09ICdURVhUX0JPWCdcIlxuICAgICAgICAgICAgW3F1ZXN0aW9uXT1cImZvcm1FbGVtZW50LmVsZW1lbnRcIlxuICAgICAgICAgID48L2xpYi10ZXh0LWZpZWxkcz5cbiAgICAgICAgICA8bGliLXRvZ2dsZS1zd2l0Y2gtZmllbGRzXG4gICAgICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgICAgICBmb3JtRWxlbWVudC5lbGVtZW50LmZvcm1FbGVtZW50LmVsZW1lbnRUeXBlID09PSAnVE9HR0xFX1NXSVRDSCdcbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgICBbcXVlc3Rpb25dPVwiZm9ybUVsZW1lbnQuZWxlbWVudFwiXG4gICAgICAgICAgICBbYWNjZXB0ZWRMYW5ndWFnZV0gPSBcImFjY2VwdGVkTGFuZ3VhZ2VcIlxuICAgICAgICAgID48L2xpYi10b2dnbGUtc3dpdGNoLWZpZWxkcz5cbiAgICAgICAgICA8bGliLXVybC1maWVsZHNcbiAgICAgICAgICAgICpuZ0lmPVwiZm9ybUVsZW1lbnQuZWxlbWVudC5mb3JtRWxlbWVudC5lbGVtZW50VHlwZSA9PT0gJ1VSTCdcIlxuICAgICAgICAgICAgW3F1ZXN0aW9uXT1cImZvcm1FbGVtZW50LmVsZW1lbnRcIlxuICAgICAgICAgID48L2xpYi11cmwtZmllbGRzPlxuICAgICAgICAgIDxsaWItY3VycmVuY3ktZmllbGRzXG4gICAgICAgICAgICAqbmdJZj1cImZvcm1FbGVtZW50LmVsZW1lbnQuZm9ybUVsZW1lbnQuZWxlbWVudFR5cGUgPT09ICdDVVJSRU5DWSdcIlxuICAgICAgICAgICAgW3F1ZXN0aW9uXT1cImZvcm1FbGVtZW50LmVsZW1lbnRcIlxuICAgICAgICAgID48L2xpYi1jdXJyZW5jeS1maWVsZHM+XG4gICAgICAgICAgPGxpYi1oaWRkZW4tZmllbGRcbiAgICAgICAgICAgICpuZ0lmPVwiZm9ybUVsZW1lbnQuZWxlbWVudC5mb3JtRWxlbWVudC5lbGVtZW50VHlwZSA9PT0gJ0hJRERFTl9GSUVMRCdcIlxuICAgICAgICAgICAgW3F1ZXN0aW9uXT1cImZvcm1FbGVtZW50LmVsZW1lbnRcIlxuICAgICAgICAgICAgPjwvbGliLWhpZGRlbi1maWVsZD5cbiAgICAgICAgICAgIDxsaWItaWZyYW1lLWZpZWxkc1xuICAgICAgICAgICAgKm5nSWY9XCJmb3JtRWxlbWVudC5lbGVtZW50LmZvcm1FbGVtZW50LmVsZW1lbnRUeXBlID09PSAnSUZSQU1FX1dJREdFVCdcIlxuICAgICAgICAgICAgW3F1ZXN0aW9uXT1cImZvcm1FbGVtZW50LmVsZW1lbnRcIlxuICAgICAgICAgICAgPjwvbGliLWlmcmFtZS1maWVsZHM+XG4gICAgICAgICAgPGxpYi1hZ2dyZWdhdGUtZnVuY3Rpb25cbiAgICAgICAgICAqbmdJZj1cImZvcm1FbGVtZW50LmVsZW1lbnQuZm9ybUVsZW1lbnQuZWxlbWVudFR5cGUgPT09ICdBR0dSRUdBVEVfRlVOQ1RJT04nXCJcbiAgICAgICAgICBbcXVlc3Rpb25dPVwiZm9ybUVsZW1lbnQuZWxlbWVudFwiXG4gICAgICAgICAgW3Jvd0lkXT1cIicwJ1wiXG4gICAgICAgICAgPjwvbGliLWFnZ3JlZ2F0ZS1mdW5jdGlvbj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZm9ybUVsZW1lbnQ/LmVsZW1lbnQ/LmNoaWxkTG9naWNzXCI+XG5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb21wb25lbnRUb0xvYWRcIj5cblxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0NvbXBvbmVudE91dGxldD1cImNvbXBvbmVudFRvTG9hZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0czogeyBncmlkOiBmb3JtRWxlbWVudD8uZWxlbWVudD8uY2hpbGRMb2dpY3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5zd2VyOiAgZm9ybUVsZW1lbnQ/LmVsZW1lbnQ/LmFuc3dlcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZTogJ2NoaWxkJyB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiAqbmdJZj1cImZvcm1FbGVtZW50LmVudGl0eVR5cGUgPT09ICdTRUNUSU9OJ1wiPlxuICAgICAgICAgIDxsaWItc2VjdGlvbi1maWVsZHNcbiAgICAgICAgICAgIFtzZWN0aW9uXT1cImZvcm1FbGVtZW50LmVsZW1lbnRcIlxuICAgICAgICAgID48L2xpYi1zZWN0aW9uLWZpZWxkcz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwib2tCdG4gbWUtNCBtcy00XCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cInN1Ym1pdEJ0biBtcy1tZC0zIG1lLW1kLTIgcm91bmRlZC1waWxsXCJcbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAoY2xpY2spPVwic2F2ZVN1Ym1pc3Npb24oKVwiPlxuICAgICAgICAgIE9rXG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|