@eqproject/eqp-dynamic-module 2.8.8 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{esm2020 → esm2022}/eqproject-eqp-dynamic-module.mjs +4 -4
- package/esm2022/lib/components/exported/eqp-dynamic-module/eqp-dynamic-module.component.mjs +531 -0
- package/esm2022/lib/components/exported/eqp-dynamic-module-configurator/eqp-dynamic-module-configurator.component.mjs +1245 -0
- package/esm2022/lib/components/private/add-form-field/add-form-field.component.mjs +1263 -0
- package/esm2022/lib/components/private/add-formula-field/add-formula-field.component.mjs +200 -0
- package/esm2022/lib/components/private/dbgetter/dbgetter.component.mjs +233 -0
- package/esm2022/lib/components/private/dynamic-module-field-fix/dynamic-module-field.component.mjs +280 -0
- package/esm2022/lib/components/private/field-templates/attachment-field-template/attachment-field-template.component.mjs +143 -0
- package/esm2022/lib/components/private/field-templates/boolean-field-template/boolean-field-template.component.mjs +75 -0
- package/esm2022/lib/components/private/field-templates/date-field-template/date-field-template.component.mjs +106 -0
- package/esm2022/lib/components/private/field-templates/image-field-selector-template/image-field-selector-template.component.mjs +107 -0
- package/esm2022/lib/components/private/field-templates/image-field-template/image-field-template.component.mjs +265 -0
- package/esm2022/lib/components/private/field-templates/image-with-markers-field-template/image-with-markers-field-template.component.mjs +261 -0
- package/esm2022/lib/components/private/field-templates/label-field-template/label-field-template.component.mjs +82 -0
- package/esm2022/lib/components/private/field-templates/list-value-field-template/list-value-field-template.component.mjs +176 -0
- package/esm2022/lib/components/private/field-templates/numeric-field-template/numeric-field-template.component.mjs +129 -0
- package/esm2022/lib/components/private/field-templates/text-field-template/text-field-template.component.mjs +103 -0
- package/esm2022/lib/components/private/field-templates/textarea-field-template/textarea-field-template.component.mjs +78 -0
- package/esm2022/lib/components/private/form-records/add-form-record/add-form-record.component.mjs +837 -0
- package/esm2022/lib/components/private/form-records/list-form-record/list-form-record.component.mjs +408 -0
- package/esm2022/lib/components/private/form-records/list-view-form-record/list-view-form-record.component.mjs +651 -0
- package/esm2022/lib/components/private/form-records/list-view-form-record/single-record/single-record.component.mjs +82 -0
- package/esm2022/lib/components/private/form-records/repair-form-fields/repair-form-fields.component.mjs +59 -0
- package/esm2022/lib/components/private/form-records/view-form-record/view-form-record.component.mjs +131 -0
- package/esm2022/lib/components/private/form-statistics/dynamic-module-filter-fix/dynamic-module-filter-fix.component.mjs +89 -0
- package/esm2022/lib/components/private/form-statistics/filter-form-statistic/filter-form-statistic.component.mjs +460 -0
- package/esm2022/lib/components/private/form-statistics/filter-templates/attachment-filter-template/attachment-filter-template.component.mjs +58 -0
- package/esm2022/lib/components/private/form-statistics/filter-templates/boolean-filter-template/boolean-filter-template.component.mjs +110 -0
- package/esm2022/lib/components/private/form-statistics/filter-templates/date-filter-template/date-filter-template.component.mjs +108 -0
- package/esm2022/lib/components/private/form-statistics/filter-templates/image-filter-template/image-filter-template.component.mjs +58 -0
- package/esm2022/lib/components/private/form-statistics/filter-templates/image-selector-filter-template/image-selector-filter-template.component.mjs +135 -0
- package/esm2022/lib/components/private/form-statistics/filter-templates/list-form-record-filter-template/list-form-record-filter-template.component.mjs +58 -0
- package/esm2022/lib/components/private/form-statistics/filter-templates/list-value-filter-template/list-value-filter-template.component.mjs +141 -0
- package/esm2022/lib/components/private/form-statistics/filter-templates/numeric-filter-template/numeric-filter-template.component.mjs +126 -0
- package/esm2022/lib/components/private/form-statistics/filter-templates/text-filter-template/text-filter-template.component.mjs +111 -0
- package/esm2022/lib/components/private/form-statistics/filter-templates/textarea-filter-template/textarea-filter-template.component.mjs +111 -0
- package/esm2022/lib/components/private/graphs/graph/graph.component.mjs +186 -0
- package/esm2022/lib/components/private/graphs/graphs.component.mjs +175 -0
- package/esm2022/lib/components/private/spinner/spinner.component.mjs +21 -0
- package/{esm2020 → esm2022}/lib/components/private/tmw-image-drawer/i18n.mjs +62 -62
- package/esm2022/lib/components/private/tmw-image-drawer/tmw-image-drawer.component.mjs +413 -0
- package/esm2022/lib/components/private/tmw-image-marker/tmw-image-marker.component.mjs +348 -0
- package/esm2022/lib/components/private/trigger-creator/dynamic-module-trigger-fix/dynamic-module-trigger-fix.component.mjs +81 -0
- package/esm2022/lib/components/private/trigger-creator/trigger-creator.component.mjs +199 -0
- package/esm2022/lib/components/private/trigger-creator/trigger-templates/boolean-trigger-template/boolean-trigger-template.component.mjs +91 -0
- package/esm2022/lib/components/private/trigger-creator/trigger-templates/date-trigger-template/date-trigger-template.component.mjs +88 -0
- package/esm2022/lib/components/private/trigger-creator/trigger-templates/list-form-record-trigger-template/list-form-record-trigger-template.component.mjs +61 -0
- package/esm2022/lib/components/private/trigger-creator/trigger-templates/list-value-trigger-template/list-value-trigger-template.component.mjs +69 -0
- package/esm2022/lib/components/private/trigger-creator/trigger-templates/numeric-trigger-template/numeric-trigger-template.component.mjs +107 -0
- package/esm2022/lib/components/private/trigger-creator/trigger-templates/text-trigger-template/text-trigger-template.component.mjs +92 -0
- package/esm2022/lib/components/private/trigger-creator/trigger-templates/textarea-trigger-template/textarea-trigger-template.component.mjs +92 -0
- package/esm2022/lib/directives/dynamic-loader/dynamic-loader.directive.mjs +63 -0
- package/esm2022/lib/directives/speech-to-text/speech-to-text.directive.mjs +192 -0
- package/esm2022/lib/eqp-dynamic-module.module.mjs +253 -0
- package/{esm2020 → esm2022}/lib/interfaces/iBaseFieldComponent.interface.mjs +1 -1
- package/{esm2020 → esm2022}/lib/interfaces/iRootObject.interface.mjs +1 -1
- package/esm2022/lib/models/baseField.model.mjs +133 -0
- package/esm2022/lib/models/baseObj.model.mjs +10 -0
- package/{esm2020 → esm2022}/lib/models/context.model.mjs +10 -8
- package/esm2022/lib/models/dynAttachment.mjs +52 -0
- package/esm2022/lib/models/dynamicModuleCompileConfig.model.mjs +45 -0
- package/esm2022/lib/models/dynamicModuleConfig.model.mjs +13 -0
- package/esm2022/lib/models/dynamicModuleConfiguratorConfig.model.mjs +11 -0
- package/esm2022/lib/models/dynamicModuleConfiguratorSpecificConfig.model.mjs +16 -0
- package/{esm2020 → esm2022}/lib/models/dynamicModuleFilterResultViewModeEnum.model.mjs +6 -6
- package/esm2022/lib/models/dynamicModuleGeneralConfig.model.mjs +36 -0
- package/esm2022/lib/models/dynamicModuleListConfig.model.mjs +48 -0
- package/esm2022/lib/models/dynamicModuleListFormRecordActionsDefault.mjs +35 -0
- package/{esm2020 → esm2022}/lib/models/dynamicModuleRepairConfig.model.mjs +10 -10
- package/{esm2020 → esm2022}/lib/models/dynamicModuleViewModeEnum.mjs +11 -11
- package/esm2022/lib/models/endPointConfiguration.model.mjs +211 -0
- package/{esm2020 → esm2022}/lib/models/entity.model.mjs +10 -7
- package/esm2022/lib/models/fields/attachmentField.model.mjs +28 -0
- package/esm2022/lib/models/fields/booleanField.model.mjs +15 -0
- package/esm2022/lib/models/fields/dateField.model.mjs +15 -0
- package/esm2022/lib/models/fields/imageField.model.mjs +14 -0
- package/esm2022/lib/models/fields/imageSelectorField.model.mjs +10 -0
- package/esm2022/lib/models/fields/imageWithMarkersField.model.mjs +7 -0
- package/{esm2020 → esm2022}/lib/models/fields/labelField.model.mjs +5 -4
- package/esm2022/lib/models/fields/listValueField.model.mjs +24 -0
- package/esm2022/lib/models/fields/lookupField.model.mjs +11 -0
- package/esm2022/lib/models/fields/numericField.model.mjs +13 -0
- package/esm2022/lib/models/fields/textField.model.mjs +18 -0
- package/esm2022/lib/models/fields/textareaField.model.mjs +9 -0
- package/esm2022/lib/models/form.model.mjs +63 -0
- package/esm2022/lib/models/getter.model.mjs +6 -0
- package/esm2022/lib/models/graph.model.mjs +19 -0
- package/{esm2020 → esm2022}/lib/models/logicOperator.model.mjs +55 -55
- package/esm2022/lib/models/record.model.mjs +39 -0
- package/esm2022/lib/models/statistic.model.mjs +12 -0
- package/esm2022/lib/models/trigger.model.mjs +63 -0
- package/esm2022/lib/modules/formula.model.mjs +266 -0
- package/{esm2020 → esm2022}/lib/modules/material.module.mjs +231 -231
- package/{esm2020 → esm2022}/lib/services/custom-form-validators.service.mjs +18 -18
- package/esm2022/lib/services/db-date.service.mjs +178 -0
- package/esm2022/lib/services/eqp-dynamic-module-dialog.service.mjs +114 -0
- package/esm2022/lib/services/global.service.mjs +43 -0
- package/esm2022/lib/services/spinner.service.mjs +41 -0
- package/esm2022/lib/services/utilityHelper.services.mjs +601 -0
- package/{esm2020 → esm2022}/public-api.mjs +56 -56
- package/fesm2022/eqproject-eqp-dynamic-module.mjs +13506 -0
- package/fesm2022/eqproject-eqp-dynamic-module.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/lib/components/exported/eqp-dynamic-module/eqp-dynamic-module.component.d.ts +162 -162
- package/lib/components/exported/eqp-dynamic-module-configurator/eqp-dynamic-module-configurator.component.d.ts +308 -308
- package/lib/components/private/add-form-field/add-form-field.component.d.ts +263 -263
- package/lib/components/private/add-formula-field/add-formula-field.component.d.ts +45 -45
- package/lib/components/private/dbgetter/dbgetter.component.d.ts +51 -51
- package/lib/components/private/dynamic-module-field-fix/dynamic-module-field.component.d.ts +84 -84
- package/lib/components/private/field-templates/attachment-field-template/attachment-field-template.component.d.ts +57 -57
- package/lib/components/private/field-templates/boolean-field-template/boolean-field-template.component.d.ts +27 -27
- package/lib/components/private/field-templates/date-field-template/date-field-template.component.d.ts +36 -36
- package/lib/components/private/field-templates/image-field-selector-template/image-field-selector-template.component.d.ts +33 -33
- package/lib/components/private/field-templates/image-field-template/image-field-template.component.d.ts +80 -80
- package/lib/components/private/field-templates/image-with-markers-field-template/image-with-markers-field-template.component.d.ts +78 -78
- package/lib/components/private/field-templates/label-field-template/label-field-template.component.d.ts +33 -33
- package/lib/components/private/field-templates/list-value-field-template/list-value-field-template.component.d.ts +59 -59
- package/lib/components/private/field-templates/numeric-field-template/numeric-field-template.component.d.ts +40 -40
- package/lib/components/private/field-templates/text-field-template/text-field-template.component.d.ts +35 -35
- package/lib/components/private/field-templates/textarea-field-template/textarea-field-template.component.d.ts +31 -31
- package/lib/components/private/form-records/add-form-record/add-form-record.component.d.ts +104 -104
- package/lib/components/private/form-records/list-form-record/list-form-record.component.d.ts +83 -83
- package/lib/components/private/form-records/list-view-form-record/list-view-form-record.component.d.ts +151 -151
- package/lib/components/private/form-records/list-view-form-record/single-record/single-record.component.d.ts +39 -39
- package/lib/components/private/form-records/repair-form-fields/repair-form-fields.component.d.ts +20 -20
- package/lib/components/private/form-records/view-form-record/view-form-record.component.d.ts +36 -36
- package/lib/components/private/form-statistics/dynamic-module-filter-fix/dynamic-module-filter-fix.component.d.ts +42 -42
- package/lib/components/private/form-statistics/filter-form-statistic/filter-form-statistic.component.d.ts +109 -109
- package/lib/components/private/form-statistics/filter-templates/attachment-filter-template/attachment-filter-template.component.d.ts +21 -21
- package/lib/components/private/form-statistics/filter-templates/boolean-filter-template/boolean-filter-template.component.d.ts +37 -37
- package/lib/components/private/form-statistics/filter-templates/date-filter-template/date-filter-template.component.d.ts +37 -37
- package/lib/components/private/form-statistics/filter-templates/image-filter-template/image-filter-template.component.d.ts +21 -21
- package/lib/components/private/form-statistics/filter-templates/image-selector-filter-template/image-selector-filter-template.component.d.ts +47 -47
- package/lib/components/private/form-statistics/filter-templates/list-form-record-filter-template/list-form-record-filter-template.component.d.ts +21 -21
- package/lib/components/private/form-statistics/filter-templates/list-value-filter-template/list-value-filter-template.component.d.ts +47 -47
- package/lib/components/private/form-statistics/filter-templates/numeric-filter-template/numeric-filter-template.component.d.ts +40 -40
- package/lib/components/private/form-statistics/filter-templates/text-filter-template/text-filter-template.component.d.ts +38 -38
- package/lib/components/private/form-statistics/filter-templates/textarea-filter-template/textarea-filter-template.component.d.ts +38 -38
- package/lib/components/private/graphs/graph/graph.component.d.ts +25 -25
- package/lib/components/private/graphs/graphs.component.d.ts +47 -47
- package/lib/components/private/spinner/spinner.component.d.ts +12 -12
- package/lib/components/private/tmw-image-drawer/i18n.d.ts +27 -27
- package/lib/components/private/tmw-image-drawer/tmw-image-drawer.component.d.ts +70 -70
- package/lib/components/private/tmw-image-marker/tmw-image-marker.component.d.ts +62 -62
- package/lib/components/private/trigger-creator/dynamic-module-trigger-fix/dynamic-module-trigger-fix.component.d.ts +42 -42
- package/lib/components/private/trigger-creator/trigger-creator.component.d.ts +42 -42
- package/lib/components/private/trigger-creator/trigger-templates/boolean-trigger-template/boolean-trigger-template.component.d.ts +34 -34
- package/lib/components/private/trigger-creator/trigger-templates/date-trigger-template/date-trigger-template.component.d.ts +34 -34
- package/lib/components/private/trigger-creator/trigger-templates/list-form-record-trigger-template/list-form-record-trigger-template.component.d.ts +24 -24
- package/lib/components/private/trigger-creator/trigger-templates/list-value-trigger-template/list-value-trigger-template.component.d.ts +34 -34
- package/lib/components/private/trigger-creator/trigger-templates/numeric-trigger-template/numeric-trigger-template.component.d.ts +37 -37
- package/lib/components/private/trigger-creator/trigger-templates/text-trigger-template/text-trigger-template.component.d.ts +36 -36
- package/lib/components/private/trigger-creator/trigger-templates/textarea-trigger-template/textarea-trigger-template.component.d.ts +36 -36
- package/lib/directives/dynamic-loader/dynamic-loader.directive.d.ts +26 -26
- package/lib/directives/speech-to-text/speech-to-text.directive.d.ts +31 -31
- package/lib/eqp-dynamic-module.module.d.ts +85 -85
- package/lib/interfaces/iBaseFieldComponent.interface.d.ts +8 -8
- package/lib/interfaces/iRootObject.interface.d.ts +11 -11
- package/lib/models/baseField.model.d.ts +126 -126
- package/lib/models/baseObj.model.d.ts +9 -9
- package/lib/models/context.model.d.ts +9 -9
- package/lib/models/dynAttachment.d.ts +49 -49
- package/lib/models/dynamicModuleCompileConfig.model.d.ts +35 -35
- package/lib/models/dynamicModuleConfig.model.d.ts +11 -11
- package/lib/models/dynamicModuleConfiguratorConfig.model.d.ts +7 -7
- package/lib/models/dynamicModuleConfiguratorSpecificConfig.model.d.ts +11 -11
- package/lib/models/dynamicModuleFilterResultViewModeEnum.model.d.ts +5 -5
- package/lib/models/dynamicModuleGeneralConfig.model.d.ts +29 -29
- package/lib/models/dynamicModuleListConfig.model.d.ts +39 -39
- package/lib/models/dynamicModuleListFormRecordActionsDefault.d.ts +9 -9
- package/lib/models/dynamicModuleRepairConfig.model.d.ts +4 -4
- package/lib/models/dynamicModuleViewModeEnum.d.ts +10 -10
- package/lib/models/endPointConfiguration.model.d.ts +46 -46
- package/lib/models/entity.model.d.ts +11 -11
- package/lib/models/fields/attachmentField.model.d.ts +17 -17
- package/lib/models/fields/booleanField.model.d.ts +11 -11
- package/lib/models/fields/dateField.model.d.ts +13 -13
- package/lib/models/fields/imageField.model.d.ts +13 -13
- package/lib/models/fields/imageSelectorField.model.d.ts +12 -12
- package/lib/models/fields/imageWithMarkersField.model.d.ts +7 -7
- package/lib/models/fields/labelField.model.d.ts +4 -4
- package/lib/models/fields/listValueField.model.d.ts +24 -24
- package/lib/models/fields/lookupField.model.d.ts +10 -10
- package/lib/models/fields/numericField.model.d.ts +12 -12
- package/lib/models/fields/textField.model.d.ts +16 -16
- package/lib/models/fields/textareaField.model.d.ts +8 -8
- package/lib/models/form.model.d.ts +61 -61
- package/lib/models/getter.model.d.ts +5 -5
- package/lib/models/graph.model.d.ts +18 -18
- package/lib/models/logicOperator.model.d.ts +48 -48
- package/lib/models/record.model.d.ts +41 -41
- package/lib/models/statistic.model.d.ts +13 -13
- package/lib/models/trigger.model.d.ts +51 -51
- package/lib/modules/formula.model.d.ts +32 -32
- package/lib/modules/material.module.d.ts +37 -37
- package/lib/services/custom-form-validators.service.d.ts +5 -5
- package/lib/services/db-date.service.d.ts +24 -24
- package/lib/services/eqp-dynamic-module-dialog.service.d.ts +44 -44
- package/lib/services/global.service.d.ts +16 -16
- package/lib/services/spinner.service.d.ts +18 -18
- package/lib/services/utilityHelper.services.d.ts +101 -101
- package/package.json +20 -25
- package/public-api.d.ts +53 -53
- package/esm2020/lib/components/exported/eqp-dynamic-module/eqp-dynamic-module.component.mjs +0 -516
- package/esm2020/lib/components/exported/eqp-dynamic-module-configurator/eqp-dynamic-module-configurator.component.mjs +0 -1196
- package/esm2020/lib/components/private/add-form-field/add-form-field.component.mjs +0 -1202
- package/esm2020/lib/components/private/add-formula-field/add-formula-field.component.mjs +0 -196
- package/esm2020/lib/components/private/dbgetter/dbgetter.component.mjs +0 -226
- package/esm2020/lib/components/private/dynamic-module-field-fix/dynamic-module-field.component.mjs +0 -263
- package/esm2020/lib/components/private/field-templates/attachment-field-template/attachment-field-template.component.mjs +0 -138
- package/esm2020/lib/components/private/field-templates/boolean-field-template/boolean-field-template.component.mjs +0 -71
- package/esm2020/lib/components/private/field-templates/date-field-template/date-field-template.component.mjs +0 -104
- package/esm2020/lib/components/private/field-templates/image-field-selector-template/image-field-selector-template.component.mjs +0 -100
- package/esm2020/lib/components/private/field-templates/image-field-template/image-field-template.component.mjs +0 -256
- package/esm2020/lib/components/private/field-templates/image-with-markers-field-template/image-with-markers-field-template.component.mjs +0 -252
- package/esm2020/lib/components/private/field-templates/label-field-template/label-field-template.component.mjs +0 -74
- package/esm2020/lib/components/private/field-templates/list-value-field-template/list-value-field-template.component.mjs +0 -172
- package/esm2020/lib/components/private/field-templates/numeric-field-template/numeric-field-template.component.mjs +0 -124
- package/esm2020/lib/components/private/field-templates/text-field-template/text-field-template.component.mjs +0 -95
- package/esm2020/lib/components/private/field-templates/textarea-field-template/textarea-field-template.component.mjs +0 -71
- package/esm2020/lib/components/private/form-records/add-form-record/add-form-record.component.mjs +0 -828
- package/esm2020/lib/components/private/form-records/list-form-record/list-form-record.component.mjs +0 -400
- package/esm2020/lib/components/private/form-records/list-view-form-record/list-view-form-record.component.mjs +0 -628
- package/esm2020/lib/components/private/form-records/list-view-form-record/single-record/single-record.component.mjs +0 -75
- package/esm2020/lib/components/private/form-records/repair-form-fields/repair-form-fields.component.mjs +0 -54
- package/esm2020/lib/components/private/form-records/view-form-record/view-form-record.component.mjs +0 -125
- package/esm2020/lib/components/private/form-statistics/dynamic-module-filter-fix/dynamic-module-filter-fix.component.mjs +0 -76
- package/esm2020/lib/components/private/form-statistics/filter-form-statistic/filter-form-statistic.component.mjs +0 -453
- package/esm2020/lib/components/private/form-statistics/filter-templates/attachment-filter-template/attachment-filter-template.component.mjs +0 -57
- package/esm2020/lib/components/private/form-statistics/filter-templates/boolean-filter-template/boolean-filter-template.component.mjs +0 -104
- package/esm2020/lib/components/private/form-statistics/filter-templates/date-filter-template/date-filter-template.component.mjs +0 -105
- package/esm2020/lib/components/private/form-statistics/filter-templates/image-filter-template/image-filter-template.component.mjs +0 -57
- package/esm2020/lib/components/private/form-statistics/filter-templates/image-selector-filter-template/image-selector-filter-template.component.mjs +0 -128
- package/esm2020/lib/components/private/form-statistics/filter-templates/list-form-record-filter-template/list-form-record-filter-template.component.mjs +0 -57
- package/esm2020/lib/components/private/form-statistics/filter-templates/list-value-filter-template/list-value-filter-template.component.mjs +0 -135
- package/esm2020/lib/components/private/form-statistics/filter-templates/numeric-filter-template/numeric-filter-template.component.mjs +0 -120
- package/esm2020/lib/components/private/form-statistics/filter-templates/text-filter-template/text-filter-template.component.mjs +0 -102
- package/esm2020/lib/components/private/form-statistics/filter-templates/textarea-filter-template/textarea-filter-template.component.mjs +0 -102
- package/esm2020/lib/components/private/graphs/graph/graph.component.mjs +0 -180
- package/esm2020/lib/components/private/graphs/graphs.component.mjs +0 -164
- package/esm2020/lib/components/private/spinner/spinner.component.mjs +0 -19
- package/esm2020/lib/components/private/tmw-image-drawer/tmw-image-drawer.component.mjs +0 -403
- package/esm2020/lib/components/private/tmw-image-marker/tmw-image-marker.component.mjs +0 -336
- package/esm2020/lib/components/private/trigger-creator/dynamic-module-trigger-fix/dynamic-module-trigger-fix.component.mjs +0 -69
- package/esm2020/lib/components/private/trigger-creator/trigger-creator.component.mjs +0 -191
- package/esm2020/lib/components/private/trigger-creator/trigger-templates/boolean-trigger-template/boolean-trigger-template.component.mjs +0 -86
- package/esm2020/lib/components/private/trigger-creator/trigger-templates/date-trigger-template/date-trigger-template.component.mjs +0 -86
- package/esm2020/lib/components/private/trigger-creator/trigger-templates/list-form-record-trigger-template/list-form-record-trigger-template.component.mjs +0 -60
- package/esm2020/lib/components/private/trigger-creator/trigger-templates/list-value-trigger-template/list-value-trigger-template.component.mjs +0 -66
- package/esm2020/lib/components/private/trigger-creator/trigger-templates/numeric-trigger-template/numeric-trigger-template.component.mjs +0 -102
- package/esm2020/lib/components/private/trigger-creator/trigger-templates/text-trigger-template/text-trigger-template.component.mjs +0 -84
- package/esm2020/lib/components/private/trigger-creator/trigger-templates/textarea-trigger-template/textarea-trigger-template.component.mjs +0 -84
- package/esm2020/lib/directives/dynamic-loader/dynamic-loader.directive.mjs +0 -59
- package/esm2020/lib/directives/speech-to-text/speech-to-text.directive.mjs +0 -186
- package/esm2020/lib/eqp-dynamic-module.module.mjs +0 -253
- package/esm2020/lib/models/baseField.model.mjs +0 -101
- package/esm2020/lib/models/baseObj.model.mjs +0 -9
- package/esm2020/lib/models/dynAttachment.mjs +0 -21
- package/esm2020/lib/models/dynamicModuleCompileConfig.model.mjs +0 -13
- package/esm2020/lib/models/dynamicModuleConfig.model.mjs +0 -9
- package/esm2020/lib/models/dynamicModuleConfiguratorConfig.model.mjs +0 -9
- package/esm2020/lib/models/dynamicModuleConfiguratorSpecificConfig.model.mjs +0 -15
- package/esm2020/lib/models/dynamicModuleGeneralConfig.model.mjs +0 -36
- package/esm2020/lib/models/dynamicModuleListConfig.model.mjs +0 -30
- package/esm2020/lib/models/dynamicModuleListFormRecordActionsDefault.mjs +0 -11
- package/esm2020/lib/models/endPointConfiguration.model.mjs +0 -205
- package/esm2020/lib/models/fields/attachmentField.model.mjs +0 -22
- package/esm2020/lib/models/fields/booleanField.model.mjs +0 -12
- package/esm2020/lib/models/fields/dateField.model.mjs +0 -15
- package/esm2020/lib/models/fields/imageField.model.mjs +0 -15
- package/esm2020/lib/models/fields/imageSelectorField.model.mjs +0 -8
- package/esm2020/lib/models/fields/imageWithMarkersField.model.mjs +0 -8
- package/esm2020/lib/models/fields/listValueField.model.mjs +0 -11
- package/esm2020/lib/models/fields/lookupField.model.mjs +0 -5
- package/esm2020/lib/models/fields/numericField.model.mjs +0 -5
- package/esm2020/lib/models/fields/textField.model.mjs +0 -14
- package/esm2020/lib/models/fields/textareaField.model.mjs +0 -4
- package/esm2020/lib/models/form.model.mjs +0 -24
- package/esm2020/lib/models/getter.model.mjs +0 -3
- package/esm2020/lib/models/graph.model.mjs +0 -15
- package/esm2020/lib/models/record.model.mjs +0 -10
- package/esm2020/lib/models/statistic.model.mjs +0 -8
- package/esm2020/lib/models/trigger.model.mjs +0 -41
- package/esm2020/lib/modules/formula.model.mjs +0 -265
- package/esm2020/lib/services/db-date.service.mjs +0 -178
- package/esm2020/lib/services/eqp-dynamic-module-dialog.service.mjs +0 -114
- package/esm2020/lib/services/global.service.mjs +0 -41
- package/esm2020/lib/services/spinner.service.mjs +0 -43
- package/esm2020/lib/services/utilityHelper.services.mjs +0 -598
- package/fesm2015/eqproject-eqp-dynamic-module.mjs +0 -12782
- package/fesm2015/eqproject-eqp-dynamic-module.mjs.map +0 -1
- package/fesm2020/eqproject-eqp-dynamic-module.mjs +0 -12751
- package/fesm2020/eqproject-eqp-dynamic-module.mjs.map +0 -1
|
@@ -1,186 +0,0 @@
|
|
|
1
|
-
import { Directive, EventEmitter, HostListener, Input, Output, } from "@angular/core";
|
|
2
|
-
import { interval } from "rxjs";
|
|
3
|
-
import { GlobalService } from "../../services/global.service";
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/* ESEMPIO D'USO
|
|
6
|
-
|
|
7
|
-
<textarea
|
|
8
|
-
[(ngModel)]="text"
|
|
9
|
-
></textarea>
|
|
10
|
-
|
|
11
|
-
<mat-icon
|
|
12
|
-
*ngIf="true" <!-- Senza NGIF non funziona -->
|
|
13
|
-
style="cursor: pointer; border-radius: 80px; padding: 5px;"
|
|
14
|
-
[SpeechToText]
|
|
15
|
-
[(bindedText)]="text"
|
|
16
|
-
>
|
|
17
|
-
keyboard_voice
|
|
18
|
-
</mat-icon>
|
|
19
|
-
|
|
20
|
-
*/
|
|
21
|
-
export class SpeechToTextDirective {
|
|
22
|
-
SpeechToggle() {
|
|
23
|
-
this.SpeechToTextToggler();
|
|
24
|
-
}
|
|
25
|
-
constructor(elementRef) {
|
|
26
|
-
this.elementRef = elementRef;
|
|
27
|
-
this.debug = false;
|
|
28
|
-
this.bindedText = "";
|
|
29
|
-
this.bindedTextChange = new EventEmitter();
|
|
30
|
-
this.beginSentence = "";
|
|
31
|
-
this.pausedClass = "keyboard_paused";
|
|
32
|
-
this.speakingClass = "keyboard_speaking";
|
|
33
|
-
this.transcript_arr = [];
|
|
34
|
-
this.confidence_arr = [];
|
|
35
|
-
// isStarted = false; //<< this Flag to check if the user stop the service
|
|
36
|
-
this.isStoppedSpeechRecog = false;
|
|
37
|
-
this.isStoppedAutomatically = true; //<< this Flag to check if the service stopped automaticically.
|
|
38
|
-
this.timeInterval = interval(50);
|
|
39
|
-
this.domElement = this.elementRef.nativeElement;
|
|
40
|
-
this.printDebug(window.navigator.userAgent);
|
|
41
|
-
try {
|
|
42
|
-
// questa operazione fallisce se non c'è webkit
|
|
43
|
-
this.recognition = new webkitSpeechRecognition();
|
|
44
|
-
this.printDebug(this.recognition);
|
|
45
|
-
this.recognition.continuous = true;
|
|
46
|
-
this.recognition.interimResults = true;
|
|
47
|
-
this.recognition.lang = "it-IT";
|
|
48
|
-
this.recognition.addEventListener("result", (e) => {
|
|
49
|
-
const transcript = Array.from(e.results)
|
|
50
|
-
.map((result) => result[0])
|
|
51
|
-
.map((result) => result.transcript)
|
|
52
|
-
.join("");
|
|
53
|
-
this.printDebug("construcor transcript: " + transcript);
|
|
54
|
-
this.transcript_arr.push(transcript);
|
|
55
|
-
this.tempWords = transcript;
|
|
56
|
-
const confidence = Array.from(e.results)
|
|
57
|
-
.map((result) => result[0])
|
|
58
|
-
.map((result) => result.confidence)
|
|
59
|
-
.join("");
|
|
60
|
-
this.confidence_arr.push(confidence);
|
|
61
|
-
});
|
|
62
|
-
this.recognition.addEventListener("end", (condition) => {
|
|
63
|
-
//this.wordConcat();
|
|
64
|
-
if (this.isStoppedAutomatically) {
|
|
65
|
-
this.recognition.stop();
|
|
66
|
-
this.recognition.start();
|
|
67
|
-
this.isStoppedAutomatically = true;
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
catch (error) {
|
|
72
|
-
this.printDebug(error);
|
|
73
|
-
this.domElement.style.display = "none";
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
ngOnDestroy() {
|
|
77
|
-
this.printDebug("speech onDestroy");
|
|
78
|
-
if (this.recognition) {
|
|
79
|
-
this.recognition.abort();
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
SpeechToTextToggler() {
|
|
83
|
-
if (!GlobalService.isSpeechToTextStarted) {
|
|
84
|
-
this.printDebug("start");
|
|
85
|
-
this.beginSentence = this.bindedText;
|
|
86
|
-
if (this.bindedText == null ||
|
|
87
|
-
this.bindedText == undefined ||
|
|
88
|
-
this.bindedText == "") {
|
|
89
|
-
this.beginSentence = "";
|
|
90
|
-
this.bindedText = "";
|
|
91
|
-
}
|
|
92
|
-
this.transcript_arr = [];
|
|
93
|
-
this.confidence_arr = [];
|
|
94
|
-
let newtext = "";
|
|
95
|
-
this.start();
|
|
96
|
-
//this.isStillRecoginze = this.start() === true ? true : false;
|
|
97
|
-
this.subscription = this.timeInterval.subscribe((val) => {
|
|
98
|
-
if (this.bindedText == null || this.bindedText == undefined) {
|
|
99
|
-
this.bindedText =
|
|
100
|
-
this.beginSentence +
|
|
101
|
-
this.transcript_arr[this.transcript_arr.length - 1];
|
|
102
|
-
this.bindedTextChange.emit(this.bindedText);
|
|
103
|
-
}
|
|
104
|
-
else {
|
|
105
|
-
newtext = this.transcript_arr[this.transcript_arr.length - 1];
|
|
106
|
-
if (newtext != undefined) {
|
|
107
|
-
this.bindedTextChange.emit(this.beginSentence + newtext);
|
|
108
|
-
this.transcript_arr[this.transcript_arr.length - 1];
|
|
109
|
-
}
|
|
110
|
-
else {
|
|
111
|
-
this.bindedTextChange.emit(this.bindedText);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
});
|
|
115
|
-
}
|
|
116
|
-
else {
|
|
117
|
-
if (GlobalService.speechDirective === this) {
|
|
118
|
-
this.printDebug("stop");
|
|
119
|
-
this.printDebug("binded: " + this.bindedText);
|
|
120
|
-
this.transcript_arr = [];
|
|
121
|
-
this.stop();
|
|
122
|
-
this.subscription.unsubscribe();
|
|
123
|
-
}
|
|
124
|
-
else {
|
|
125
|
-
this.printDebug("stop other");
|
|
126
|
-
GlobalService.speechDirective.SpeechToTextToggler();
|
|
127
|
-
let interval = setInterval(() => {
|
|
128
|
-
if (GlobalService.speechDirective == null) {
|
|
129
|
-
this.SpeechToTextToggler();
|
|
130
|
-
clearInterval(interval);
|
|
131
|
-
}
|
|
132
|
-
}, 100);
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
start() {
|
|
137
|
-
if (!GlobalService.isSpeechToTextStarted) {
|
|
138
|
-
this.elementRef.nativeElement.classList.remove(this.pausedClass);
|
|
139
|
-
this.elementRef.nativeElement.classList.add(this.speakingClass);
|
|
140
|
-
this.recognition.start();
|
|
141
|
-
GlobalService.isSpeechToTextStarted = true;
|
|
142
|
-
GlobalService.speechDirective = this;
|
|
143
|
-
}
|
|
144
|
-
return true;
|
|
145
|
-
}
|
|
146
|
-
stop() {
|
|
147
|
-
if (GlobalService.isSpeechToTextStarted) {
|
|
148
|
-
this.elementRef.nativeElement.classList.remove(this.speakingClass);
|
|
149
|
-
this.elementRef.nativeElement.classList.add(this.pausedClass);
|
|
150
|
-
this.isStoppedAutomatically = false;
|
|
151
|
-
this.wordConcat();
|
|
152
|
-
this.recognition.stop();
|
|
153
|
-
GlobalService.isSpeechToTextStarted = false;
|
|
154
|
-
GlobalService.speechDirective = null;
|
|
155
|
-
this.transcript_arr = [];
|
|
156
|
-
}
|
|
157
|
-
return false;
|
|
158
|
-
}
|
|
159
|
-
wordConcat() {
|
|
160
|
-
this.bindedText = this.bindedText + ". ";
|
|
161
|
-
// this.bindedText = this.bindedText + " " + this.tempWords + ".";
|
|
162
|
-
// this.tempWords = "";
|
|
163
|
-
}
|
|
164
|
-
printDebug(message) {
|
|
165
|
-
if (this.debug) {
|
|
166
|
-
console.log(message);
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
SpeechToTextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpeechToTextDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
171
|
-
SpeechToTextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpeechToTextDirective, selector: "[SpeechToText]", inputs: { bindedText: "bindedText" }, outputs: { bindedTextChange: "bindedTextChange" }, host: { listeners: { "click": "SpeechToggle()" } }, ngImport: i0 });
|
|
172
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpeechToTextDirective, decorators: [{
|
|
173
|
-
type: Directive,
|
|
174
|
-
args: [{
|
|
175
|
-
selector: "[SpeechToText]",
|
|
176
|
-
}]
|
|
177
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { bindedText: [{
|
|
178
|
-
type: Input,
|
|
179
|
-
args: ["bindedText"]
|
|
180
|
-
}], bindedTextChange: [{
|
|
181
|
-
type: Output
|
|
182
|
-
}], SpeechToggle: [{
|
|
183
|
-
type: HostListener,
|
|
184
|
-
args: ["click"]
|
|
185
|
-
}] } });
|
|
186
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BlZWNoLXRvLXRleHQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXFwLWR5bmFtaWMtbW9kdWxlL3NyYy9saWIvZGlyZWN0aXZlcy9zcGVlY2gtdG8tdGV4dC9zcGVlY2gtdG8tdGV4dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFFVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDOztBQUk5RDs7Ozs7Ozs7Ozs7Ozs7O0VBZUU7QUFLRixNQUFNLE9BQU8scUJBQXFCO0lBeUJULFlBQVk7UUFDakMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELFlBQ1UsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQTVCaEMsVUFBSyxHQUFHLEtBQUssQ0FBQztRQUVPLGVBQVUsR0FBVyxFQUFFLENBQUM7UUFDbkMscUJBQWdCLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7UUFDOUUsa0JBQWEsR0FBVyxFQUFFLENBQUM7UUFJM0IsZ0JBQVcsR0FBVyxpQkFBaUIsQ0FBQztRQUN4QyxrQkFBYSxHQUFXLG1CQUFtQixDQUFDO1FBSTVDLG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBRXBCLDBFQUEwRTtRQUMxRSx5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFDN0IsMkJBQXNCLEdBQUcsSUFBSSxDQUFDLENBQUMsK0RBQStEO1FBRTlGLGlCQUFZLEdBQUcsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBVzFCLElBQUksQ0FBQyxVQUFVLEdBQUcs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QkFBOUIsS0FBSzt1QkFBQyxZQUFZO2dCQUNULGdCQUFnQjtzQkFBekIsTUFBTTtnQkFvQmdCLFlBQVk7c0JBQWxDLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBEaXJlY3RpdmUsXHJcbiAgICBFbGVtZW50UmVmLFxyXG4gICAgRXZlbnRFbWl0dGVyLFxyXG4gICAgSG9zdExpc3RlbmVyLFxyXG4gICAgSW5wdXQsXHJcbiAgICBPbkRlc3Ryb3ksXHJcbiAgICBPdXRwdXQsXHJcbiAgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG4gIGltcG9ydCB7IGludGVydmFsLCBTdWJzY3JpcHRpb24gfSBmcm9tIFwicnhqc1wiO1xyXG4gIGltcG9ydCB7IEdsb2JhbFNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvZ2xvYmFsLnNlcnZpY2VcIjtcclxuICBcclxuICBkZWNsYXJlIHZhciB3ZWJraXRTcGVlY2hSZWNvZ25pdGlvbjogYW55O1xyXG4gIFxyXG4gIC8qIEVTRU1QSU8gRCdVU09cclxuICBcclxuICAgIDx0ZXh0YXJlYVxyXG4gICAgICBbKG5nTW9kZWwpXT1cInRleHRcIlxyXG4gICAgPjwvdGV4dGFyZWE+XHJcbiAgXHJcbiAgICA8bWF0LWljb25cclxuICAgICAgKm5nSWY9XCJ0cnVlXCIgPCEtLSBTZW56YSBOR0lGIG5vbiBmdW56aW9uYSAtLT5cclxuICAgICAgc3R5bGU9XCJjdXJzb3I6IHBvaW50ZXI7IGJvcmRlci1yYWRpdXM6IDgwcHg7IHBhZGRpbmc6IDVweDtcIlxyXG4gICAgICBbU3BlZWNoVG9UZXh0XVxyXG4gICAgICBbKGJpbmRlZFRleHQpXT1cInRleHRcIlxyXG4gICAgPlxyXG4gICAgICBrZXlib2FyZF92b2ljZVxyXG4gICAgPC9tYXQtaWNvbj5cclxuICBcclxuICAqL1xyXG4gIFxyXG4gIEBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6IFwiW1NwZWVjaFRvVGV4dF1cIixcclxuICB9KVxyXG4gIGV4cG9ydCBjbGFzcyBTcGVlY2hUb1RleHREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3l7XHJcbiAgXHJcbiAgICBkZWJ1ZyA9IGZhbHNlO1xyXG4gIFxyXG4gICAgQElucHV0KFwiYmluZGVkVGV4dFwiKSBiaW5kZWRUZXh0OiBzdHJpbmcgPSBcIlwiO1xyXG4gICAgQE91dHB1dCgpIGJpbmRlZFRleHRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgICBiZWdpblNlbnRlbmNlOiBzdHJpbmcgPSBcIlwiO1xyXG4gICAgLy8gYmluZGVkVGV4dCA9IFwiXCI7XHJcbiAgICBwcml2YXRlIGRvbUVsZW1lbnQ6IEhUTUxFbGVtZW50O1xyXG4gIFxyXG4gICAgcGF1c2VkQ2xhc3M6IHN0cmluZyA9IFwia2V5Ym9hcmRfcGF1c2VkXCI7XHJcbiAgICBzcGVha2luZ0NsYXNzOiBzdHJpbmcgPSBcImtleWJvYXJkX3NwZWFraW5nXCI7XHJcbiAgXHJcbiAgICByZWNvZ25pdGlvbjtcclxuICAgIHRlbXBXb3JkczogYW55O1xyXG4gICAgdHJhbnNjcmlwdF9hcnIgPSBbXTtcclxuICAgIGNvbmZpZGVuY2VfYXJyID0gW107XHJcbiAgXHJcbiAgICAvLyBpc1N0YXJ0ZWQgPSBmYWxzZTsgLy88PCB0aGlzIEZsYWcgdG8gY2hlY2sgaWYgdGhlIHVzZXIgc3RvcCB0aGUgc2VydmljZVxyXG4gICAgaXNTdG9wcGVkU3BlZWNoUmVjb2cgPSBmYWxzZTtcclxuICAgIGlzU3RvcHBlZEF1dG9tYXRpY2FsbHkgPSB0cnVlOyAvLzw8IHRoaXMgRmxhZyB0byBjaGVjayBpZiB0aGUgc2VydmljZSBzdG9wcGVkIGF1dG9tYXRpY2ljYWxseS5cclxuICBcclxuICAgIHRpbWVJbnRlcnZhbCA9IGludGVydmFsKDUwKTtcclxuICAgIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG4gIFxyXG4gICAgQEhvc3RMaXN0ZW5lcihcImNsaWNrXCIpIFNwZWVjaFRvZ2dsZSgpIHtcclxuICAgICAgdGhpcy5TcGVlY2hUb1RleHRUb2dnbGVyKCk7XHJcbiAgICB9XHJcbiAgXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmXHJcbiAgICAgICkge1xyXG4gIFxyXG4gICAgICB0aGlzLmRvbUVsZW1lbnQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcclxuICAgIFxyXG4gICAgICB0aGlzLnByaW50RGVidWcod2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnQpO1xyXG4gIFxyXG4gICAgICB0cnkge1xyXG4gICAgICAgIC8vIHF1ZXN0YSBvcGVyYXppb25lIGZhbGxpc2NlIHNlIG5vbiBjJ8OoIHdlYmtpdFxyXG4gICAgICAgIHRoaXMucmVjb2duaXRpb24gPSBuZXcgd2Via2l0U3BlZWNoUmVjb2duaXRpb24oKTtcclxuICBcclxuICAgICAgICB0aGlzLnByaW50RGVidWcodGhpcy5yZWNvZ25pdGlvbik7XHJcbiAgXHJcbiAgICAgICAgdGhpcy5yZWNvZ25pdGlvbi5jb250aW51b3VzID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnJlY29nbml0aW9uLmludGVyaW1SZXN1bHRzID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnJlY29nbml0aW9uLmxhbmcgPSBcIml0LUlUXCI7XHJcbiAgXHJcbiAgICAgICAgdGhpcy5yZWNvZ25pdGlvbi5hZGRFdmVudExpc3RlbmVyKFwicmVzdWx0XCIsIChlOiBhbnkpID0+IHtcclxuICAgICAgICAgIGNvbnN0IHRyYW5zY3JpcHQgPSBBcnJheS5mcm9tKGUucmVzdWx0cylcclxuICAgICAgICAgICAgLm1hcCgocmVzdWx0OiBhbnkpID0+IHJlc3VsdFswXSlcclxuICAgICAgICAgICAgLm1hcCgocmVzdWx0KSA9PiByZXN1bHQudHJhbnNjcmlwdClcclxuICAgICAgICAgICAgLmpvaW4oXCJcIik7XHJcbiAgXHJcbiAgICAgICAgICB0aGlzLnByaW50RGVidWcoXCJjb25zdHJ1Y29yIHRyYW5zY3JpcHQ6IFwiICsgdHJhbnNjcmlwdCk7XHJcbiAgXHJcbiAgXHJcbiAgICAgICAgICB0aGlzLnRyYW5zY3JpcHRfYXJyLnB1c2godHJhbnNjcmlwdCk7XHJcbiAgICAgICAgICB0aGlzLnRlbXBXb3JkcyA9IHRyYW5zY3JpcHQ7XHJcbiAgXHJcbiAgICAgICAgICBjb25zdCBjb25maWRlbmNlID0gQXJyYXkuZnJvbShlLnJlc3VsdHMpXHJcbiAgICAgICAgICAgIC5tYXAoKHJlc3VsdDogYW55KSA9PiByZXN1bHRbMF0pXHJcbiAgICAgICAgICAgIC5tYXAoKHJlc3VsdCkgPT4gcmVzdWx0LmNvbmZpZGVuY2UpXHJcbiAgICAgICAgICAgIC5qb2luKFwiXCIpO1xyXG4gICAgICAgICAgdGhpcy5jb25maWRlbmNlX2Fyci5wdXNoKGNvbmZpZGVuY2UpO1xyXG4gICAgICAgIH0pO1xyXG4gIFxyXG4gICAgICAgIHRoaXMucmVjb2duaXRpb24uYWRkRXZlbnRMaXN0ZW5lcihcImVuZFwiLCAoY29uZGl0aW9uOiBhbnkpID0+IHtcclxuICAgICAgICAgIC8vdGhpcy53b3JkQ29uY2F0KCk7XHJcbiAgICAgICAgICBpZiAodGhpcy5pc1N0b3BwZWRBdXRvbWF0aWNhbGx5KSB7XHJcbiAgICAgICAgICAgIHRoaXMucmVjb2duaXRpb24uc3RvcCgpO1xyXG4gICAgICAgICAgICB0aGlzLnJlY29nbml0aW9uLnN0YXJ0KCk7XHJcbiAgICAgICAgICAgIHRoaXMuaXNTdG9wcGVkQXV0b21hdGljYWxseSA9IHRydWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgXHJcbiAgICAgICAgdGhpcy5wcmludERlYnVnKGVycm9yKTtcclxuICBcclxuICAgICAgICB0aGlzLmRvbUVsZW1lbnQuc3R5bGUuZGlzcGxheSA9IFwibm9uZVwiO1xyXG4gICAgICB9XHJcbiAgXHJcbiAgICB9XHJcbiAgXHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgdGhpcy5wcmludERlYnVnKFwic3BlZWNoIG9uRGVzdHJveVwiKTtcclxuICAgICAgXHJcbiAgICAgIGlmKHRoaXMucmVjb2duaXRpb24pe1xyXG4gICAgICAgIHRoaXMucmVjb2duaXRpb24uYWJvcnQoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIFxyXG4gICAgU3BlZWNoVG9UZXh0VG9nZ2xlcigpIHtcclxuICAgICAgaWYgKCFHbG9iYWxTZXJ2aWNlLmlzU3BlZWNoVG9UZXh0U3RhcnRlZCkge1xyXG4gIFxyXG4gICAgICAgIHRoaXMucHJpbnREZWJ1ZyhcInN0YXJ0XCIpO1xyXG4gIFxyXG4gICAgICAgIHRoaXMuYmVnaW5TZW50ZW5jZSA9IHRoaXMuYmluZGVkVGV4dDtcclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICB0aGlzLmJpbmRlZFRleHQgPT0gbnVsbCB8fFxyXG4gICAgICAgICAgdGhpcy5iaW5kZWRUZXh0ID09IHVuZGVmaW5lZCB8fFxyXG4gICAgICAgICAgdGhpcy5iaW5kZWRUZXh0ID09IFwiXCJcclxuICAgICAgICApIHtcclxuICAgICAgICAgIHRoaXMuYmVnaW5TZW50ZW5jZSA9IFwiXCI7XHJcbiAgICAgICAgICB0aGlzLmJpbmRlZFRleHQgPSBcIlwiO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnRyYW5zY3JpcHRfYXJyID0gW107XHJcbiAgICAgICAgdGhpcy5jb25maWRlbmNlX2FyciA9IFtdO1xyXG4gIFxyXG4gICAgICAgIGxldCBuZXd0ZXh0ID0gXCJcIjtcclxuICAgICAgICB0aGlzLnN0YXJ0KCk7XHJcbiAgICAgICAgLy90aGlzLmlzU3RpbGxSZWNvZ2luemUgPSB0aGlzLnN0YXJ0KCkgPT09IHRydWUgPyB0cnVlIDogZmFsc2U7XHJcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLnRpbWVJbnRlcnZhbC5zdWJzY3JpYmUoKHZhbCkgPT4ge1xyXG4gICAgICAgICAgaWYgKHRoaXMuYmluZGVkVGV4dCA9PSBudWxsIHx8IHRoaXMuYmluZGVkVGV4dCA9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgICAgdGhpcy5iaW5kZWRUZXh0ID1cclxuICAgICAgICAgICAgICB0aGlzLmJlZ2luU2VudGVuY2UgK1xyXG4gICAgICAgICAgICAgIHRoaXMudHJhbnNjcmlwdF9hcnJbdGhpcy50cmFuc2NyaXB0X2Fyci5sZW5ndGggLSAxXTtcclxuICAgICAgICAgICAgdGhpcy5iaW5kZWRUZXh0Q2hhbmdlLmVtaXQodGhpcy5iaW5kZWRUZXh0KTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIG5ld3RleHQgPSB0aGlzLnRyYW5zY3JpcHRfYXJyW3RoaXMudHJhbnNjcmlwdF9hcnIubGVuZ3RoIC0gMV07XHJcbiAgICAgICAgICAgIGlmIChuZXd0ZXh0ICE9IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICAgIHRoaXMuYmluZGVkVGV4dENoYW5nZS5lbWl0KHRoaXMuYmVnaW5TZW50ZW5jZSArIG5ld3RleHQpO1xyXG4gICAgICAgICAgICAgIHRoaXMudHJhbnNjcmlwdF9hcnJbdGhpcy50cmFuc2NyaXB0X2Fyci5sZW5ndGggLSAxXTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLmJpbmRlZFRleHRDaGFuZ2UuZW1pdCh0aGlzLmJpbmRlZFRleHQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYoR2xvYmFsU2VydmljZS5zcGVlY2hEaXJlY3RpdmUgPT09IHRoaXMpe1xyXG4gICAgICAgICAgdGhpcy5wcmludERlYnVnKFwic3RvcFwiKTtcclxuICAgICAgICAgIHRoaXMucHJpbnREZWJ1ZyhcImJpbmRlZDogXCIgKyB0aGlzLmJpbmRlZFRleHQpO1xyXG4gICAgXHJcbiAgICAgICAgICB0aGlzLnRyYW5zY3JpcHRfYXJyID0gW107XHJcbiAgICAgICAgICB0aGlzLnN0b3AoKTtcclxuICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMucHJpbnREZWJ1ZyhcInN0b3Agb3RoZXJcIik7XHJcbiAgICAgICAgICBHbG9iYWxTZXJ2aWNlLnNwZWVjaERpcmVjdGl2ZS5TcGVlY2hUb1RleHRUb2dnbGVyKCk7XHJcbiAgICAgICAgICBsZXQgaW50ZXJ2YWwgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmKEdsb2JhbFNlcnZpY2Uuc3BlZWNoRGlyZWN0aXZlID09IG51bGwpe1xyXG4gICAgICAgICAgICAgIHRoaXMuU3BlZWNoVG9UZXh0VG9nZ2xlcigpO1xyXG4gICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWwpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0sIDEwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgXHJcbiAgICBwcml2YXRlIHN0YXJ0KCkge1xyXG4gICAgICBpZiAoIUdsb2JhbFNlcnZpY2UuaXNTcGVlY2hUb1RleHRTdGFydGVkKSB7XHJcbiAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSh0aGlzLnBhdXNlZENsYXNzKTtcclxuICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKHRoaXMuc3BlYWtpbmdDbGFzcyk7XHJcbiAgICAgICAgdGhpcy5yZWNvZ25pdGlvbi5zdGFydCgpO1xyXG4gICAgICAgIEdsb2JhbFNlcnZpY2UuaXNTcGVlY2hUb1RleHRTdGFydGVkID0gdHJ1ZTtcclxuICAgICAgICBHbG9iYWxTZXJ2aWNlLnNwZWVjaERpcmVjdGl2ZSA9IHRoaXM7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgICBwcml2YXRlIHN0b3AoKSB7ICAgIFxyXG4gICAgICBpZiAoR2xvYmFsU2VydmljZS5pc1NwZWVjaFRvVGV4dFN0YXJ0ZWQpIHtcclxuICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKHRoaXMuc3BlYWtpbmdDbGFzcyk7XHJcbiAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmFkZCh0aGlzLnBhdXNlZENsYXNzKTtcclxuICAgICAgICB0aGlzLmlzU3RvcHBlZEF1dG9tYXRpY2FsbHkgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLndvcmRDb25jYXQoKTtcclxuICAgICAgICB0aGlzLnJlY29nbml0aW9uLnN0b3AoKTtcclxuICAgICAgICBHbG9iYWxTZXJ2aWNlLmlzU3BlZWNoVG9UZXh0U3RhcnRlZCA9IGZhbHNlO1xyXG4gICAgICAgIEdsb2JhbFNlcnZpY2Uuc3BlZWNoRGlyZWN0aXZlID0gbnVsbDtcclxuICAgICAgICB0aGlzLnRyYW5zY3JpcHRfYXJyID0gW107XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gIFxyXG4gICAgcHJpdmF0ZSB3b3JkQ29uY2F0KCkge1xyXG4gICAgICB0aGlzLmJpbmRlZFRleHQgPSB0aGlzLmJpbmRlZFRleHQgKyBcIi4gXCI7XHJcbiAgICAgIC8vIHRoaXMuYmluZGVkVGV4dCA9IHRoaXMuYmluZGVkVGV4dCArIFwiIFwiICsgdGhpcy50ZW1wV29yZHMgKyBcIi5cIjtcclxuICAgICAgLy8gdGhpcy50ZW1wV29yZHMgPSBcIlwiO1xyXG4gICAgfVxyXG4gIFxyXG4gICAgcHJpdmF0ZSBwcmludERlYnVnKG1lc3NhZ2Upe1xyXG4gICAgICBpZih0aGlzLmRlYnVnKXtcclxuICAgICAgICBjb25zb2xlLmxvZyhtZXNzYWdlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAiXX0=
|
|
@@ -1,253 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
4
|
-
import { EqpDynamicModuleComponent } from './components/exported/eqp-dynamic-module/eqp-dynamic-module.component';
|
|
5
|
-
import { MaterialModule } from './modules/material.module';
|
|
6
|
-
import { EqpTableModule } from '@eqproject/eqp-table';
|
|
7
|
-
import { EqpAttachmentsModule } from '@eqproject/eqp-attachments';
|
|
8
|
-
import { EqpSelectModule } from '@eqproject/eqp-select';
|
|
9
|
-
import { EqpDatetimepickerModule } from '@eqproject/eqp-datetimepicker';
|
|
10
|
-
import { EqpFiltersModule } from '@eqproject/eqp-filters';
|
|
11
|
-
import { EqpNumericInputMode, EqpNumericModule } from '@eqproject/eqp-numeric';
|
|
12
|
-
import { EqpDynamicModuleConfiguratorComponent } from './components/exported/eqp-dynamic-module-configurator/eqp-dynamic-module-configurator.component';
|
|
13
|
-
import { AddFormFieldComponent } from './components/private/add-form-field/add-form-field.component';
|
|
14
|
-
import { TextFieldTemplateComponent } from './components/private/field-templates/text-field-template/text-field-template.component';
|
|
15
|
-
import { BooleanFieldTemplateComponent } from './components/private/field-templates/boolean-field-template/boolean-field-template.component';
|
|
16
|
-
import { DateFieldTemplateComponent } from './components/private/field-templates/date-field-template/date-field-template.component';
|
|
17
|
-
import { TextareaFieldTemplateComponent } from './components/private/field-templates/textarea-field-template/textarea-field-template.component';
|
|
18
|
-
import { NumericFieldTemplateComponent } from './components/private/field-templates/numeric-field-template/numeric-field-template.component';
|
|
19
|
-
import { ListValueFieldTemplateComponent } from './components/private/field-templates/list-value-field-template/list-value-field-template.component';
|
|
20
|
-
import { AttachmentFieldTemplateComponent } from './components/private/field-templates/attachment-field-template/attachment-field-template.component';
|
|
21
|
-
import { ImageFieldTemplateComponent } from './components/private/field-templates/image-field-template/image-field-template.component';
|
|
22
|
-
import { ListFormRecordComponent } from './components/private/form-records/list-form-record/list-form-record.component';
|
|
23
|
-
import { AddFormRecordComponent } from './components/private/form-records/add-form-record/add-form-record.component';
|
|
24
|
-
import { SpinnerComponent } from './components/private/spinner/spinner.component';
|
|
25
|
-
import { DynamicModuleFieldFixComponent } from './components/private/dynamic-module-field-fix/dynamic-module-field.component';
|
|
26
|
-
import { AddFormulaComponent, DialogDataExampleDialog } from './components/private/add-formula-field/add-formula-field.component';
|
|
27
|
-
import { RepairFormFieldsComponent } from './components/private/form-records/repair-form-fields/repair-form-fields.component';
|
|
28
|
-
import { ListViewFormRecordComponent } from './components/private/form-records/list-view-form-record/list-view-form-record.component';
|
|
29
|
-
import { ViewFormRecordComponent } from './components/private/form-records/view-form-record/view-form-record.component';
|
|
30
|
-
import { SingleRecordComponent } from './components/private/form-records/list-view-form-record/single-record/single-record.component';
|
|
31
|
-
import { FilterFormStatisticComponent } from './components/private/form-statistics/filter-form-statistic/filter-form-statistic.component';
|
|
32
|
-
import { DynamicModuleFilterFixComponent } from './components/private/form-statistics/dynamic-module-filter-fix/dynamic-module-filter-fix.component';
|
|
33
|
-
import { TextFilterTemplateComponent } from './components/private/form-statistics/filter-templates/text-filter-template/text-filter-template.component';
|
|
34
|
-
import { NumericFilterTemplateComponent } from './components/private/form-statistics/filter-templates/numeric-filter-template/numeric-filter-template.component';
|
|
35
|
-
import { BooleanFilterTemplateComponent } from './components/private/form-statistics/filter-templates/boolean-filter-template/boolean-filter-template.component';
|
|
36
|
-
import { DateFilterTemplateComponent } from './components/private/form-statistics/filter-templates/date-filter-template/date-filter-template.component';
|
|
37
|
-
import { ListValueFilterTemplateComponent } from './components/private/form-statistics/filter-templates/list-value-filter-template/list-value-filter-template.component';
|
|
38
|
-
import { TextareaFilterTemplateComponent } from './components/private/form-statistics/filter-templates/textarea-filter-template/textarea-filter-template.component';
|
|
39
|
-
import { AttachmentFilterTemplateComponent } from './components/private/form-statistics/filter-templates/attachment-filter-template/attachment-filter-template.component';
|
|
40
|
-
import { ImageFilterTemplateComponent } from './components/private/form-statistics/filter-templates/image-filter-template/image-filter-template.component';
|
|
41
|
-
import { ListFormRecordFilterTemplateComponent } from './components/private/form-statistics/filter-templates/list-form-record-filter-template/list-form-record-filter-template.component';
|
|
42
|
-
import { GraphsComponent } from './components/private/graphs/graphs.component';
|
|
43
|
-
import { GraphComponent } from './components/private/graphs/graph/graph.component';
|
|
44
|
-
import { CanvasJSAngularStockChartsModule, CanvasJSChart, CanvasJSStockChart } from '@canvasjs/angular-stockcharts';
|
|
45
|
-
import { ImageFieldSelectorTemplateComponent } from './components/private/field-templates/image-field-selector-template/image-field-selector-template.component';
|
|
46
|
-
import { LabelFieldTemplateComponent } from './components/private/field-templates/label-field-template/label-field-template.component';
|
|
47
|
-
import { ImageSelectorFilterTemplateComponent } from './components/private/form-statistics/filter-templates/image-selector-filter-template/image-selector-filter-template.component';
|
|
48
|
-
import { EqpImgDrawingModule } from '@eqproject/eqp-img-drawing';
|
|
49
|
-
import { TmwImageDrawerComponent } from './components/private/tmw-image-drawer/tmw-image-drawer.component';
|
|
50
|
-
import { ImageWithMarkersFieldTemplateComponent } from './components/private/field-templates/image-with-markers-field-template/image-with-markers-field-template.component';
|
|
51
|
-
import { TmwImageMarkerComponent } from './components/private/tmw-image-marker/tmw-image-marker.component';
|
|
52
|
-
import { DragDropModule } from '@angular/cdk/drag-drop';
|
|
53
|
-
import { DynamicLoaderDirective } from './directives/dynamic-loader/dynamic-loader.directive';
|
|
54
|
-
import { DbgetterComponent } from './components/private/dbgetter/dbgetter.component';
|
|
55
|
-
import { TmwPickerModule } from "tmw-picker";
|
|
56
|
-
import { TriggerCreatorComponent } from './components/private/trigger-creator/trigger-creator.component';
|
|
57
|
-
import { DynamicModuleTriggerFixComponent } from './components/private/trigger-creator/dynamic-module-trigger-fix/dynamic-module-trigger-fix.component';
|
|
58
|
-
import { TextTriggerTemplateComponent } from './components/private/trigger-creator/trigger-templates/text-trigger-template/text-trigger-template.component';
|
|
59
|
-
import { NumericTriggerTemplateComponent } from './components/private/trigger-creator/trigger-templates/numeric-trigger-template/numeric-trigger-template.component';
|
|
60
|
-
import { BooleanTriggerTemplateComponent } from './components/private/trigger-creator/trigger-templates/boolean-trigger-template/boolean-trigger-template.component';
|
|
61
|
-
import { DateTriggerTemplateComponent } from './components/private/trigger-creator/trigger-templates/date-trigger-template/date-trigger-template.component';
|
|
62
|
-
import { ListValueTriggerTemplateComponent } from './components/private/trigger-creator/trigger-templates/list-value-trigger-template/list-value-trigger-template.component';
|
|
63
|
-
import { TextareaTriggerTemplateComponent } from './components/private/trigger-creator/trigger-templates/textarea-trigger-template/textarea-trigger-template.component';
|
|
64
|
-
import { ListFormRecordTriggerTemplateComponent } from './components/private/trigger-creator/trigger-templates/list-form-record-trigger-template/list-form-record-trigger-template.component';
|
|
65
|
-
import { SpeechToTextDirective } from './directives/speech-to-text/speech-to-text.directive';
|
|
66
|
-
import * as i0 from "@angular/core";
|
|
67
|
-
import * as i1 from "@eqproject/eqp-numeric";
|
|
68
|
-
export const customNumericMaskConfig = {
|
|
69
|
-
align: "right",
|
|
70
|
-
allowNegative: true,
|
|
71
|
-
allowZero: true,
|
|
72
|
-
decimal: "",
|
|
73
|
-
precision: 0,
|
|
74
|
-
prefix: "",
|
|
75
|
-
suffix: "",
|
|
76
|
-
thousands: "",
|
|
77
|
-
nullable: true,
|
|
78
|
-
min: null,
|
|
79
|
-
max: null,
|
|
80
|
-
inputMode: EqpNumericInputMode.FINANCIAL,
|
|
81
|
-
};
|
|
82
|
-
export class EqpDynamicModuleModule {
|
|
83
|
-
}
|
|
84
|
-
EqpDynamicModuleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EqpDynamicModuleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
85
|
-
EqpDynamicModuleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: EqpDynamicModuleModule, declarations: [EqpDynamicModuleComponent,
|
|
86
|
-
EqpDynamicModuleConfiguratorComponent,
|
|
87
|
-
AddFormFieldComponent,
|
|
88
|
-
TextFieldTemplateComponent,
|
|
89
|
-
BooleanFieldTemplateComponent,
|
|
90
|
-
DateFieldTemplateComponent,
|
|
91
|
-
TextareaFieldTemplateComponent,
|
|
92
|
-
NumericFieldTemplateComponent,
|
|
93
|
-
ListValueFieldTemplateComponent,
|
|
94
|
-
AttachmentFieldTemplateComponent,
|
|
95
|
-
ImageFieldTemplateComponent,
|
|
96
|
-
ListFormRecordComponent,
|
|
97
|
-
ListViewFormRecordComponent,
|
|
98
|
-
AddFormRecordComponent,
|
|
99
|
-
ViewFormRecordComponent,
|
|
100
|
-
DynamicModuleFieldFixComponent,
|
|
101
|
-
SpinnerComponent,
|
|
102
|
-
AddFormulaComponent,
|
|
103
|
-
DialogDataExampleDialog,
|
|
104
|
-
RepairFormFieldsComponent,
|
|
105
|
-
SingleRecordComponent,
|
|
106
|
-
FilterFormStatisticComponent,
|
|
107
|
-
DynamicModuleFilterFixComponent,
|
|
108
|
-
DynamicModuleTriggerFixComponent,
|
|
109
|
-
TextFilterTemplateComponent,
|
|
110
|
-
NumericFilterTemplateComponent,
|
|
111
|
-
BooleanFilterTemplateComponent,
|
|
112
|
-
DateFilterTemplateComponent,
|
|
113
|
-
ListValueFilterTemplateComponent,
|
|
114
|
-
TextareaFilterTemplateComponent,
|
|
115
|
-
AttachmentFilterTemplateComponent,
|
|
116
|
-
ImageFilterTemplateComponent,
|
|
117
|
-
ListFormRecordFilterTemplateComponent,
|
|
118
|
-
GraphsComponent,
|
|
119
|
-
GraphComponent,
|
|
120
|
-
ImageFieldSelectorTemplateComponent,
|
|
121
|
-
LabelFieldTemplateComponent,
|
|
122
|
-
ImageSelectorFilterTemplateComponent,
|
|
123
|
-
TmwImageDrawerComponent,
|
|
124
|
-
ImageWithMarkersFieldTemplateComponent,
|
|
125
|
-
TmwImageMarkerComponent,
|
|
126
|
-
DynamicLoaderDirective,
|
|
127
|
-
DbgetterComponent,
|
|
128
|
-
TriggerCreatorComponent,
|
|
129
|
-
TextTriggerTemplateComponent,
|
|
130
|
-
NumericTriggerTemplateComponent,
|
|
131
|
-
BooleanTriggerTemplateComponent,
|
|
132
|
-
DateTriggerTemplateComponent,
|
|
133
|
-
ListValueTriggerTemplateComponent,
|
|
134
|
-
TextareaTriggerTemplateComponent,
|
|
135
|
-
ListFormRecordTriggerTemplateComponent,
|
|
136
|
-
SpeechToTextDirective], imports: [MaterialModule,
|
|
137
|
-
FormsModule,
|
|
138
|
-
CommonModule,
|
|
139
|
-
ReactiveFormsModule,
|
|
140
|
-
EqpTableModule,
|
|
141
|
-
EqpAttachmentsModule,
|
|
142
|
-
EqpSelectModule,
|
|
143
|
-
EqpDatetimepickerModule,
|
|
144
|
-
EqpFiltersModule,
|
|
145
|
-
EqpImgDrawingModule,
|
|
146
|
-
DragDropModule, i1.EqpNumericModule, CanvasJSAngularStockChartsModule,
|
|
147
|
-
TmwPickerModule], exports: [EqpDynamicModuleComponent,
|
|
148
|
-
EqpDynamicModuleConfiguratorComponent,
|
|
149
|
-
DragDropModule,
|
|
150
|
-
CanvasJSChart,
|
|
151
|
-
CanvasJSStockChart,
|
|
152
|
-
DynamicLoaderDirective,
|
|
153
|
-
TmwPickerModule] });
|
|
154
|
-
EqpDynamicModuleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EqpDynamicModuleModule, imports: [MaterialModule,
|
|
155
|
-
FormsModule,
|
|
156
|
-
CommonModule,
|
|
157
|
-
ReactiveFormsModule,
|
|
158
|
-
EqpTableModule,
|
|
159
|
-
EqpAttachmentsModule,
|
|
160
|
-
EqpSelectModule,
|
|
161
|
-
EqpDatetimepickerModule,
|
|
162
|
-
EqpFiltersModule,
|
|
163
|
-
EqpImgDrawingModule,
|
|
164
|
-
DragDropModule,
|
|
165
|
-
EqpNumericModule.forRoot(customNumericMaskConfig),
|
|
166
|
-
CanvasJSAngularStockChartsModule,
|
|
167
|
-
TmwPickerModule, DragDropModule,
|
|
168
|
-
TmwPickerModule] });
|
|
169
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EqpDynamicModuleModule, decorators: [{
|
|
170
|
-
type: NgModule,
|
|
171
|
-
args: [{
|
|
172
|
-
declarations: [
|
|
173
|
-
EqpDynamicModuleComponent,
|
|
174
|
-
EqpDynamicModuleConfiguratorComponent,
|
|
175
|
-
AddFormFieldComponent,
|
|
176
|
-
TextFieldTemplateComponent,
|
|
177
|
-
BooleanFieldTemplateComponent,
|
|
178
|
-
DateFieldTemplateComponent,
|
|
179
|
-
TextareaFieldTemplateComponent,
|
|
180
|
-
NumericFieldTemplateComponent,
|
|
181
|
-
ListValueFieldTemplateComponent,
|
|
182
|
-
AttachmentFieldTemplateComponent,
|
|
183
|
-
ImageFieldTemplateComponent,
|
|
184
|
-
ListFormRecordComponent,
|
|
185
|
-
ListViewFormRecordComponent,
|
|
186
|
-
AddFormRecordComponent,
|
|
187
|
-
ViewFormRecordComponent,
|
|
188
|
-
DynamicModuleFieldFixComponent,
|
|
189
|
-
SpinnerComponent,
|
|
190
|
-
AddFormulaComponent,
|
|
191
|
-
DialogDataExampleDialog,
|
|
192
|
-
RepairFormFieldsComponent,
|
|
193
|
-
SingleRecordComponent,
|
|
194
|
-
FilterFormStatisticComponent,
|
|
195
|
-
DynamicModuleFilterFixComponent,
|
|
196
|
-
DynamicModuleTriggerFixComponent,
|
|
197
|
-
TextFilterTemplateComponent,
|
|
198
|
-
NumericFilterTemplateComponent,
|
|
199
|
-
BooleanFilterTemplateComponent,
|
|
200
|
-
DateFilterTemplateComponent,
|
|
201
|
-
ListValueFilterTemplateComponent,
|
|
202
|
-
TextareaFilterTemplateComponent,
|
|
203
|
-
AttachmentFilterTemplateComponent,
|
|
204
|
-
ImageFilterTemplateComponent,
|
|
205
|
-
ListFormRecordFilterTemplateComponent,
|
|
206
|
-
GraphsComponent,
|
|
207
|
-
GraphComponent,
|
|
208
|
-
ImageFieldSelectorTemplateComponent,
|
|
209
|
-
LabelFieldTemplateComponent,
|
|
210
|
-
ImageSelectorFilterTemplateComponent,
|
|
211
|
-
TmwImageDrawerComponent,
|
|
212
|
-
ImageWithMarkersFieldTemplateComponent,
|
|
213
|
-
TmwImageMarkerComponent,
|
|
214
|
-
DynamicLoaderDirective,
|
|
215
|
-
DbgetterComponent,
|
|
216
|
-
TriggerCreatorComponent,
|
|
217
|
-
TextTriggerTemplateComponent,
|
|
218
|
-
NumericTriggerTemplateComponent,
|
|
219
|
-
BooleanTriggerTemplateComponent,
|
|
220
|
-
DateTriggerTemplateComponent,
|
|
221
|
-
ListValueTriggerTemplateComponent,
|
|
222
|
-
TextareaTriggerTemplateComponent,
|
|
223
|
-
ListFormRecordTriggerTemplateComponent,
|
|
224
|
-
SpeechToTextDirective
|
|
225
|
-
],
|
|
226
|
-
imports: [
|
|
227
|
-
MaterialModule,
|
|
228
|
-
FormsModule,
|
|
229
|
-
CommonModule,
|
|
230
|
-
ReactiveFormsModule,
|
|
231
|
-
EqpTableModule,
|
|
232
|
-
EqpAttachmentsModule,
|
|
233
|
-
EqpSelectModule,
|
|
234
|
-
EqpDatetimepickerModule,
|
|
235
|
-
EqpFiltersModule,
|
|
236
|
-
EqpImgDrawingModule,
|
|
237
|
-
DragDropModule,
|
|
238
|
-
EqpNumericModule.forRoot(customNumericMaskConfig),
|
|
239
|
-
CanvasJSAngularStockChartsModule,
|
|
240
|
-
TmwPickerModule
|
|
241
|
-
],
|
|
242
|
-
exports: [
|
|
243
|
-
EqpDynamicModuleComponent,
|
|
244
|
-
EqpDynamicModuleConfiguratorComponent,
|
|
245
|
-
DragDropModule,
|
|
246
|
-
CanvasJSChart,
|
|
247
|
-
CanvasJSStockChart,
|
|
248
|
-
DynamicLoaderDirective,
|
|
249
|
-
TmwPickerModule
|
|
250
|
-
]
|
|
251
|
-
}]
|
|
252
|
-
}] });
|
|
253
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXFwLWR5bmFtaWMtbW9kdWxlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2VxcC1keW5hbWljLW1vZHVsZS9zcmMvbGliL2VxcC1keW5hbWljLW1vZHVsZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVFQUF1RSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3hELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9FLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLGlHQUFpRyxDQUFDO0FBQ3hKLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ3JHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHdGQUF3RixDQUFDO0FBQ3BJLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDhGQUE4RixDQUFDO0FBQzdJLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHdG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T0FBTyxFQUFFO3dCQUNQLGNBQWM7d0JBQ2QsV0FBVzt3QkFDWCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsY0FBYzt3QkFDZCxvQkFBb0I7d0JBQ3BCLGVBQWU7d0JBQ2YsdUJBQXVCO3dCQUN2QixnQkFBZ0I7d0JBQ2hCLG1CQUFtQjt3QkFDbkIsY0FBYzt3QkFDZCxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsdUJBQXVCLENBQUM7d0JBQ2pELGdDQUFnQzt3QkFDaEMsZUFBZTtxQkFDaEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHlCQUF5Qjt3QkFDekIscUNBQXFDO3dCQUNyQyxjQUFjO3dCQUNkLGFBQWE7d0JBQ2Isa0JBQWtCO3dCQUNsQixzQkFBc0I7d0JBQ3RCLGVBQWU7cUJBQ2hCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEVxcER5bmFtaWNNb2R1bGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZXhwb3J0ZWQvZXFwLWR5bmFtaWMtbW9kdWxlL2VxcC1keW5hbWljLW1vZHVsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRlcmlhbE1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9tYXRlcmlhbC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBFcXBUYWJsZU1vZHVsZSB9IGZyb20gJ0BlcXByb2plY3QvZXFwLXRhYmxlJztcclxuaW1wb3J0IHsgRXFwQXR0YWNobWVudHNNb2R1bGUgfSBmcm9tICdAZXFwcm9qZWN0L2VxcC1hdHRhY2htZW50cyc7XHJcbmltcG9ydCB7IEVxcFNlbGVjdE1vZHVsZSB9IGZyb20gJ0BlcXByb2plY3QvZXFwLXNlbGVjdCc7XHJcbmltcG9ydCB7IEVxcERhdGV0aW1lcGlja2VyTW9kdWxlIH0gZnJvbSAnQGVxcHJvamVjdC9lcXAtZGF0ZXRpbWVwaWNrZXInO1xyXG5pbXBvcnQgeyBFcXBGaWx0ZXJzTW9kdWxlIH0gZnJvbSAnQGVxcHJvamVjdC9lcXAtZmlsdGVycyc7XHJcbmltcG9ydCB7IEVxcE51bWVyaWNJbnB1dE1vZGUsIEVxcE51bWVyaWNNb2R1bGUgfSBmcm9tICdAZXFwcm9qZWN0L2VxcC1udW1lcmljJztcclxuaW1wb3J0IHsgRXFwRHluYW1pY01vZHVsZUNvbmZpZ3VyYXRvckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9leHBvcnRlZC9lcXAtZHluYW1pYy1tb2R1bGUtY29uZmlndXJhdG9yL2VxcC1keW5hbWljLW1vZHVsZS1jb25maWd1cmF0b3IuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQWRkRm9ybUZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvYWRkLWZvcm0tZmllbGQvYWRkLWZvcm0tZmllbGQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGV4dEZpZWxkVGVtcGxhdGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJpdmF0ZS9maWVsZC10ZW1wbGF0ZXMvdGV4dC1maWVsZC10ZW1wbGF0ZS90ZXh0LWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJvb2xlYW5GaWVsZFRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL2Jvb2xlYW4tZmllbGQtdGVtcGxhdGUvYm9vbGVhbi1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEYXRlRmllbGRUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL2ZpZWxkLXRlbXBsYXRlcy9kYXRlLWZpZWxkLXRlbXBsYXRlL2RhdGUtZmllbGQtdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGV4dGFyZWFGaWVsZFRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL3RleHRhcmVhLWZpZWxkLXRlbXBsYXRlL3RleHRhcmVhLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE51bWVyaWNGaWVsZFRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL251bWVyaWMtZmllbGQtdGVtcGxhdGUvbnVtZXJpYy1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMaXN0VmFsdWVGaWVsZFRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL2xpc3QtdmFsdWUtZmllbGQtdGVtcGxhdGUvbGlzdC12YWx1ZS1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBdHRhY2htZW50RmllbGRUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL2ZpZWxkLXRlbXBsYXRlcy9hdHRhY2htZW50LWZpZWxkLXRlbXBsYXRlL2F0dGFjaG1lbnQtZmllbGQtdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSW1hZ2VGaWVsZFRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL2ltYWdlLWZpZWxkLXRlbXBsYXRlL2ltYWdlLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExpc3RGb3JtUmVjb3JkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvZm9ybS1yZWNvcmRzL2xpc3QtZm9ybS1yZWNvcmQvbGlzdC1mb3JtLXJlY29yZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBZGRGb3JtUmVjb3JkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvZm9ybS1yZWNvcmRzL2FkZC1mb3JtLXJlY29yZC9hZGQtZm9ybS1yZWNvcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3Bpbm5lckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL3NwaW5uZXIvc3Bpbm5lci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEeW5hbWljTW9kdWxlRmllbGRGaXhDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJpdmF0ZS9keW5hbWljLW1vZHVsZS1maWVsZC1maXgvZHluYW1pYy1tb2R1bGUtZmllbGQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQWRkRm9ybXVsYUNvbXBvbmVudCxEaWFsb2dEYXRhRXhhbXBsZURpYWxvZyB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL2FkZC1mb3JtdWxhLWZpZWxkL2FkZC1mb3JtdWxhLWZpZWxkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlcGFpckZvcm1GaWVsZHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJpdmF0ZS9mb3JtLXJlY29yZHMvcmVwYWlyLWZvcm0tZmllbGRzL3JlcGFpci1mb3JtLWZpZWxkcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMaXN0Vmlld0Zvcm1SZWNvcmRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJpdmF0ZS9mb3JtLXJlY29yZHMvbGlzdC12aWV3LWZvcm0tcmVjb3JkL2xpc3Qtdmlldy1mb3JtLXJlY29yZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBWaWV3Rm9ybVJlY29yZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tcmVjb3Jkcy92aWV3LWZvcm0tcmVjb3JkL3ZpZXctZm9ybS1yZWNvcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2luZ2xlUmVjb3JkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvZm9ybS1yZWNvcmRzL2xpc3Qtdmlldy1mb3JtLXJlY29yZC9zaW5nbGUtcmVjb3JkL3NpbmdsZS1yZWNvcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmlsdGVyRm9ybVN0YXRpc3RpY0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItZm9ybS1zdGF0aXN0aWMvZmlsdGVyLWZvcm0tc3RhdGlzdGljLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IER5bmFtaWNNb2R1bGVGaWx0ZXJGaXhDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJpdmF0ZS9mb3JtLXN0YXRpc3RpY3MvZHluYW1pYy1tb2R1bGUtZmlsdGVyLWZpeC9keW5hbWljLW1vZHVsZS1maWx0ZXItZml4LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRleHRGaWx0ZXJUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL3RleHQtZmlsdGVyLXRlbXBsYXRlL3RleHQtZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE51bWVyaWNGaWx0ZXJUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL251bWVyaWMtZmlsdGVyLXRlbXBsYXRlL251bWVyaWMtZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJvb2xlYW5GaWx0ZXJUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL2Jvb2xlYW4tZmlsdGVyLXRlbXBsYXRlL2Jvb2xlYW4tZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERhdGVGaWx0ZXJUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL2RhdGUtZmlsdGVyLXRlbXBsYXRlL2RhdGUtZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExpc3RWYWx1ZUZpbHRlclRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvZm9ybS1zdGF0aXN0aWNzL2ZpbHRlci10ZW1wbGF0ZXMvbGlzdC12YWx1ZS1maWx0ZXItdGVtcGxhdGUvbGlzdC12YWx1ZS1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGV4dGFyZWFGaWx0ZXJUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL3RleHRhcmVhLWZpbHRlci10ZW1wbGF0ZS90ZXh0YXJlYS1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXR0YWNobWVudEZpbHRlclRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvZm9ybS1zdGF0aXN0aWNzL2ZpbHRlci10ZW1wbGF0ZXMvYXR0YWNobWVudC1maWx0ZXItdGVtcGxhdGUvYXR0YWNobWVudC1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSW1hZ2VGaWx0ZXJUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL2ltYWdlLWZpbHRlci10ZW1wbGF0ZS9pbWFnZS1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTGlzdEZvcm1SZWNvcmRGaWx0ZXJUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL2xpc3QtZm9ybS1yZWNvcmQtZmlsdGVyLXRlbXBsYXRlL2xpc3QtZm9ybS1yZWNvcmQtZmlsdGVyLXRlbXBsYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEdyYXBoc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL2dyYXBocy9ncmFwaHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgR3JhcGhDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJpdmF0ZS9ncmFwaHMvZ3JhcGgvZ3JhcGguY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2FudmFzSlNBbmd1bGFyU3RvY2tDaGFydHNNb2R1bGUsIENhbnZhc0pTQ2hhcnQsIENhbnZhc0pTU3RvY2tDaGFydCB9IGZyb20gJ0BjYW52YXNqcy9hbmd1bGFyLXN0b2NrY2hhcnRzJztcclxuaW1wb3J0IHsgSW1hZ2VGaWVsZFNlbGVjdG9yVGVtcGxhdGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJpdmF0ZS9maWVsZC10ZW1wbGF0ZXMvaW1hZ2UtZmllbGQtc2VsZWN0b3ItdGVtcGxhdGUvaW1hZ2UtZmllbGQtc2VsZWN0b3ItdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTGFiZWxGaWVsZFRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL2xhYmVsLWZpZWxkLXRlbXBsYXRlL2xhYmVsLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEltYWdlU2VsZWN0b3JGaWx0ZXJUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL2Zvcm0tc3RhdGlzdGljcy9maWx0ZXItdGVtcGxhdGVzL2ltYWdlLXNlbGVjdG9yLWZpbHRlci10ZW1wbGF0ZS9pbWFnZS1zZWxlY3Rvci1maWx0ZXItdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRXFwSW1nRHJhd2luZ01vZHVsZSB9IGZyb20gJ0BlcXByb2plY3QvZXFwLWltZy1kcmF3aW5nJztcclxuaW1wb3J0IHsgVG13SW1hZ2VEcmF3ZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJpdmF0ZS90bXctaW1hZ2UtZHJhd2VyL3Rtdy1pbWFnZS1kcmF3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSW1hZ2VXaXRoTWFya2Vyc0ZpZWxkVGVtcGxhdGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJpdmF0ZS9maWVsZC10ZW1wbGF0ZXMvaW1hZ2Utd2l0aC1tYXJrZXJzLWZpZWxkLXRlbXBsYXRlL2ltYWdlLXdpdGgtbWFya2Vycy1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUbXdJbWFnZU1hcmtlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL3Rtdy1pbWFnZS1tYXJrZXIvdG13LWltYWdlLW1hcmtlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEcmFnRHJvcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5pbXBvcnQgeyBEeW5hbWljTG9hZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2R5bmFtaWMtbG9hZGVyL2R5bmFtaWMtbG9hZGVyLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IERiZ2V0dGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvZGJnZXR0ZXIvZGJnZXR0ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHtUbXdQaWNrZXJNb2R1bGV9IGZyb20gXCJ0bXctcGlja2VyXCI7XHJcbmltcG9ydCB7IFRyaWdnZXJDcmVhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvdHJpZ2dlci1jcmVhdG9yL3RyaWdnZXItY3JlYXRvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEeW5hbWljTW9kdWxlVHJpZ2dlckZpeENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL3RyaWdnZXItY3JlYXRvci9keW5hbWljLW1vZHVsZS10cmlnZ2VyLWZpeC9keW5hbWljLW1vZHVsZS10cmlnZ2VyLWZpeC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUZXh0VHJpZ2dlclRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvdHJpZ2dlci1jcmVhdG9yL3RyaWdnZXItdGVtcGxhdGVzL3RleHQtdHJpZ2dlci10ZW1wbGF0ZS90ZXh0LXRyaWdnZXItdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTnVtZXJpY1RyaWdnZXJUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcml2YXRlL3RyaWdnZXItY3JlYXRvci90cmlnZ2VyLXRlbXBsYXRlcy9udW1lcmljLXRyaWdnZXItdGVtcGxhdGUvbnVtZXJpYy10cmlnZ2VyLXRlbXBsYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJvb2xlYW5UcmlnZ2VyVGVtcGxhdGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJpdmF0ZS90cmlnZ2VyLWNyZWF0b3IvdHJpZ2dlci10ZW1wbGF0ZXMvYm9vbGVhbi10cmlnZ2VyLXRlbXBsYXRlL2Jvb2xlYW4tdHJpZ2dlci10ZW1wbGF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEYXRlVHJpZ2dlclRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvdHJpZ2dlci1jcmVhdG9yL3RyaWdnZXItdGVtcGxhdGVzL2RhdGUtdHJpZ2dlci10ZW1wbGF0ZS9kYXRlLXRyaWdnZXItdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTGlzdFZhbHVlVHJpZ2dlclRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvdHJpZ2dlci1jcmVhdG9yL3RyaWdnZXItdGVtcGxhdGVzL2xpc3QtdmFsdWUtdHJpZ2dlci10ZW1wbGF0ZS9saXN0LXZhbHVlLXRyaWdnZXItdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGV4dGFyZWFUcmlnZ2VyVGVtcGxhdGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJpdmF0ZS90cmlnZ2VyLWNyZWF0b3IvdHJpZ2dlci10ZW1wbGF0ZXMvdGV4dGFyZWEtdHJpZ2dlci10ZW1wbGF0ZS90ZXh0YXJlYS10cmlnZ2VyLXRlbXBsYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExpc3RGb3JtUmVjb3JkVHJpZ2dlclRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3ByaXZhdGUvdHJpZ2dlci1jcmVhdG9yL3RyaWdnZXItdGVtcGxhdGVzL2xpc3QtZm9ybS1yZWNvcmQtdHJpZ2dlci10ZW1wbGF0ZS9saXN0LWZvcm0tcmVjb3JkLXRyaWdnZXItdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3BlZWNoVG9UZXh0RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3NwZWVjaC10by10ZXh0L3NwZWVjaC10by10ZXh0LmRpcmVjdGl2ZSc7XHJcblxyXG5leHBvcnQgY29uc3QgY3VzdG9tTnVtZXJpY01hc2tDb25maWcgPSB7XHJcbiAgYWxpZ246IFwicmlnaHRcIixcclxuICBhbGxvd05lZ2F0aXZlOiB0cnVlLFxyXG4gIGFsbG93WmVybzogdHJ1ZSxcclxuICBkZWNpbWFsOiBcIlwiLFxyXG4gIHByZWNpc2lvbjogMCxcclxuICBwcmVmaXg6IFwiXCIsXHJcbiAgc3VmZml4OiBcIlwiLFxyXG4gIHRob3VzYW5kczogXCJcIixcclxuICBudWxsYWJsZTogdHJ1ZSxcclxuICBtaW46IG51bGwsXHJcbiAgbWF4OiBudWxsLFxyXG4gIGlucHV0TW9kZTogRXFwTnVtZXJpY0lucHV0TW9kZS5GSU5BTkNJQUwsXHJcbn07XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgRXFwRHluYW1pY01vZHVsZUNvbXBvbmVudCxcclxuICAgIEVxcER5bmFtaWNNb2R1bGVDb25maWd1cmF0b3JDb21wb25lbnQsXHJcbiAgICBBZGRGb3JtRmllbGRDb21wb25lbnQsXHJcbiAgICBUZXh0RmllbGRUZW1wbGF0ZUNvbXBvbmVudCxcclxuICAgIEJvb2xlYW5GaWVsZFRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgRGF0ZUZpZWxkVGVtcGxhdGVDb21wb25lbnQsXHJcbiAgICBUZXh0YXJlYUZpZWxkVGVtcGxhdGVDb21wb25lbnQsXHJcbiAgICBOdW1lcmljRmllbGRUZW1wbGF0ZUNvbXBvbmVudCxcclxuICAgIExpc3RWYWx1ZUZpZWxkVGVtcGxhdGVDb21wb25lbnQsXHJcbiAgICBBdHRhY2htZW50RmllbGRUZW1wbGF0ZUNvbXBvbmVudCxcclxuICAgIEltYWdlRmllbGRUZW1wbGF0ZUNvbXBvbmVudCxcclxuICAgIExpc3RGb3JtUmVjb3JkQ29tcG9uZW50LFxyXG4gICAgTGlzdFZpZXdGb3JtUmVjb3JkQ29tcG9uZW50LFxyXG4gICAgQWRkRm9ybVJlY29yZENvbXBvbmVudCxcclxuICAgIFZpZXdGb3JtUmVjb3JkQ29tcG9uZW50LFxyXG4gICAgRHluYW1pY01vZHVsZUZpZWxkRml4Q29tcG9uZW50LFxyXG4gICAgU3Bpbm5lckNvbXBvbmVudCxcclxuICAgIEFkZEZvcm11bGFDb21wb25lbnQsXHJcbiAgICBEaWFsb2dEYXRhRXhhbXBsZURpYWxvZyxcclxuICAgIFJlcGFpckZvcm1GaWVsZHNDb21wb25lbnQsXHJcbiAgICBTaW5nbGVSZWNvcmRDb21wb25lbnQsXHJcbiAgICBGaWx0ZXJGb3JtU3RhdGlzdGljQ29tcG9uZW50LFxyXG4gICAgRHluYW1pY01vZHVsZUZpbHRlckZpeENvbXBvbmVudCxcclxuICAgIER5bmFtaWNNb2R1bGVUcmlnZ2VyRml4Q29tcG9uZW50LFxyXG4gICAgVGV4dEZpbHRlclRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgTnVtZXJpY0ZpbHRlclRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgQm9vbGVhbkZpbHRlclRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgRGF0ZUZpbHRlclRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgTGlzdFZhbHVlRmlsdGVyVGVtcGxhdGVDb21wb25lbnQsXHJcbiAgICBUZXh0YXJlYUZpbHRlclRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgQXR0YWNobWVudEZpbHRlclRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgSW1hZ2VGaWx0ZXJUZW1wbGF0ZUNvbXBvbmVudCxcclxuICAgIExpc3RGb3JtUmVjb3JkRmlsdGVyVGVtcGxhdGVDb21wb25lbnQsXHJcbiAgICBHcmFwaHNDb21wb25lbnQsXHJcbiAgICBHcmFwaENvbXBvbmVudCxcclxuICAgIEltYWdlRmllbGRTZWxlY3RvclRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgTGFiZWxGaWVsZFRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgSW1hZ2VTZWxlY3RvckZpbHRlclRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgVG13SW1hZ2VEcmF3ZXJDb21wb25lbnQsXHJcbiAgICBJbWFnZVdpdGhNYXJrZXJzRmllbGRUZW1wbGF0ZUNvbXBvbmVudCxcclxuICAgIFRtd0ltYWdlTWFya2VyQ29tcG9uZW50LFxyXG4gICAgRHluYW1pY0xvYWRlckRpcmVjdGl2ZSxcclxuICAgIERiZ2V0dGVyQ29tcG9uZW50LFxyXG4gICAgVHJpZ2dlckNyZWF0b3JDb21wb25lbnQsXHJcbiAgICBUZXh0VHJpZ2dlclRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgTnVtZXJpY1RyaWdnZXJUZW1wbGF0ZUNvbXBvbmVudCxcclxuICAgIEJvb2xlYW5UcmlnZ2VyVGVtcGxhdGVDb21wb25lbnQsXHJcbiAgICBEYXRlVHJpZ2dlclRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgTGlzdFZhbHVlVHJpZ2dlclRlbXBsYXRlQ29tcG9uZW50LFxyXG4gICAgVGV4dGFyZWFUcmlnZ2VyVGVtcGxhdGVDb21wb25lbnQsXHJcbiAgICBMaXN0Rm9ybVJlY29yZFRyaWdnZXJUZW1wbGF0ZUNvbXBvbmVudCxcclxuICAgIFNwZWVjaFRvVGV4dERpcmVjdGl2ZVxyXG5cclxuICBdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE1hdGVyaWFsTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgRXFwVGFibGVNb2R1bGUsXHJcbiAgICBFcXBBdHRhY2htZW50c01vZHVsZSxcclxuICAgIEVxcFNlbGVjdE1vZHVsZSxcclxuICAgIEVxcERhdGV0aW1lcGlja2VyTW9kdWxlLFxyXG4gICAgRXFwRmlsdGVyc01vZHVsZSxcclxuICAgIEVxcEltZ0RyYXdpbmdNb2R1bGUsXHJcbiAgICBEcmFnRHJvcE1vZHVsZSxcclxuICAgIEVxcE51bWVyaWNNb2R1bGUuZm9yUm9vdChjdXN0b21OdW1lcmljTWFza0NvbmZpZyksXHJcbiAgICBDYW52YXNKU0FuZ3VsYXJTdG9ja0NoYXJ0c01vZHVsZSxcclxuICAgIFRtd1BpY2tlck1vZHVsZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgRXFwRHluYW1pY01vZHVsZUNvbXBvbmVudCxcclxuICAgIEVxcER5bmFtaWNNb2R1bGVDb25maWd1cmF0b3JDb21wb25lbnQsXHJcbiAgICBEcmFnRHJvcE1vZHVsZSxcclxuICAgIENhbnZhc0pTQ2hhcnQsXHJcbiAgICBDYW52YXNKU1N0b2NrQ2hhcnQsXHJcbiAgICBEeW5hbWljTG9hZGVyRGlyZWN0aXZlLFxyXG4gICAgVG13UGlja2VyTW9kdWxlXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRXFwRHluYW1pY01vZHVsZU1vZHVsZSB7IH1cclxuIl19
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import { BaseObj } from './baseObj.model';
|
|
2
|
-
/**
|
|
3
|
-
* Contiene le informazioni di base del campo, indipendentemente dal tipo.
|
|
4
|
-
* Questa classe è volutamente astratta perché il tipo di campo è dettato dal tipo
|
|
5
|
-
*/
|
|
6
|
-
export class BaseField extends BaseObj {
|
|
7
|
-
constructor() {
|
|
8
|
-
super(...arguments);
|
|
9
|
-
// rappresentazione grafica di default per gli elementi di risposta
|
|
10
|
-
this.AnswerStyle = { InListView: true, Invisibility: FieldInvisibilityEnum.NASCOSTO, VisibleIf: null, FieldstyleCSS: "", LabelstyleCSS: "", ColSpanSizes: [] };
|
|
11
|
-
this.DataGetter = new DataGetter();
|
|
12
|
-
this.DataGetterValueBase64String = "";
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
export class AnswerStyle {
|
|
16
|
-
}
|
|
17
|
-
;
|
|
18
|
-
export class DataGetter {
|
|
19
|
-
constructor() {
|
|
20
|
-
this.DataGetterType = DataGetterTypeEnum.Manuale;
|
|
21
|
-
this.DataGetterValue = null;
|
|
22
|
-
this.DataGetterColumnForce = null;
|
|
23
|
-
this.DataGetterCardinality = DataGetterCardinalityEnum['PIU RECENTE']; // Usato solo in caso di DM Getter
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
export var FieldTypeEnum;
|
|
27
|
-
(function (FieldTypeEnum) {
|
|
28
|
-
FieldTypeEnum[FieldTypeEnum["Campo di testo"] = 1] = "Campo di testo";
|
|
29
|
-
FieldTypeEnum[FieldTypeEnum["Area di testo"] = 2] = "Area di testo";
|
|
30
|
-
FieldTypeEnum[FieldTypeEnum["Booleano"] = 3] = "Booleano";
|
|
31
|
-
FieldTypeEnum[FieldTypeEnum["Data e/o ora"] = 4] = "Data e/o ora";
|
|
32
|
-
FieldTypeEnum[FieldTypeEnum["Campo numerico"] = 5] = "Campo numerico";
|
|
33
|
-
FieldTypeEnum[FieldTypeEnum["Allegato"] = 6] = "Allegato";
|
|
34
|
-
FieldTypeEnum[FieldTypeEnum["Immagine"] = 7] = "Immagine";
|
|
35
|
-
FieldTypeEnum[FieldTypeEnum["Elenco generico"] = 8] = "Elenco generico";
|
|
36
|
-
FieldTypeEnum[FieldTypeEnum["Lookup"] = 9] = "Lookup";
|
|
37
|
-
FieldTypeEnum[FieldTypeEnum["Form di dettaglio"] = 10] = "Form di dettaglio";
|
|
38
|
-
FieldTypeEnum[FieldTypeEnum["Elenco immagini"] = 11] = "Elenco immagini";
|
|
39
|
-
FieldTypeEnum[FieldTypeEnum["Etichetta"] = 12] = "Etichetta";
|
|
40
|
-
FieldTypeEnum[FieldTypeEnum["Immagine con markers"] = 13] = "Immagine con markers";
|
|
41
|
-
})(FieldTypeEnum || (FieldTypeEnum = {}));
|
|
42
|
-
export var DataGetterTypeEnum;
|
|
43
|
-
(function (DataGetterTypeEnum) {
|
|
44
|
-
DataGetterTypeEnum[DataGetterTypeEnum["Manuale"] = 1] = "Manuale";
|
|
45
|
-
DataGetterTypeEnum[DataGetterTypeEnum["Formula"] = 2] = "Formula";
|
|
46
|
-
DataGetterTypeEnum[DataGetterTypeEnum["Da database"] = 3] = "Da database";
|
|
47
|
-
DataGetterTypeEnum[DataGetterTypeEnum["Da modulo dinamico"] = 4] = "Da modulo dinamico";
|
|
48
|
-
})(DataGetterTypeEnum || (DataGetterTypeEnum = {}));
|
|
49
|
-
export var ColSpanSizesEnum;
|
|
50
|
-
(function (ColSpanSizesEnum) {
|
|
51
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-sm-3"] = 1] = "col-sm-3";
|
|
52
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-sm-4"] = 2] = "col-sm-4";
|
|
53
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-sm-6"] = 3] = "col-sm-6";
|
|
54
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-sm-12"] = 4] = "col-sm-12";
|
|
55
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-md-3"] = 5] = "col-md-3";
|
|
56
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-md-4"] = 6] = "col-md-4";
|
|
57
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-md-6"] = 7] = "col-md-6";
|
|
58
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-md-12"] = 8] = "col-md-12";
|
|
59
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-lg-3"] = 9] = "col-lg-3";
|
|
60
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-lg-4"] = 10] = "col-lg-4";
|
|
61
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-lg-6"] = 11] = "col-lg-6";
|
|
62
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-lg-12"] = 12] = "col-lg-12";
|
|
63
|
-
ColSpanSizesEnum[ColSpanSizesEnum["align-self-start"] = 13] = "align-self-start";
|
|
64
|
-
ColSpanSizesEnum[ColSpanSizesEnum["align-self-center"] = 14] = "align-self-center";
|
|
65
|
-
ColSpanSizesEnum[ColSpanSizesEnum["align-self-end"] = 15] = "align-self-end";
|
|
66
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-sm-1"] = 16] = "col-sm-1";
|
|
67
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-sm-2"] = 17] = "col-sm-2";
|
|
68
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-sm-5"] = 18] = "col-sm-5";
|
|
69
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-sm-7"] = 19] = "col-sm-7";
|
|
70
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-sm-8"] = 20] = "col-sm-8";
|
|
71
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-sm-9"] = 21] = "col-sm-9";
|
|
72
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-sm-10"] = 22] = "col-sm-10";
|
|
73
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-sm-11"] = 23] = "col-sm-11";
|
|
74
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-md-1"] = 24] = "col-md-1";
|
|
75
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-md-2"] = 25] = "col-md-2";
|
|
76
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-md-5"] = 26] = "col-md-5";
|
|
77
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-md-7"] = 27] = "col-md-7";
|
|
78
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-md-8"] = 28] = "col-md-8";
|
|
79
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-md-9"] = 29] = "col-md-9";
|
|
80
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-md-10"] = 30] = "col-md-10";
|
|
81
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-md-11"] = 31] = "col-md-11";
|
|
82
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-lg-1"] = 32] = "col-lg-1";
|
|
83
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-lg-2"] = 33] = "col-lg-2";
|
|
84
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-lg-5"] = 34] = "col-lg-5";
|
|
85
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-lg-7"] = 35] = "col-lg-7";
|
|
86
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-lg-8"] = 36] = "col-lg-8";
|
|
87
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-lg-9"] = 37] = "col-lg-9";
|
|
88
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-lg-10"] = 38] = "col-lg-10";
|
|
89
|
-
ColSpanSizesEnum[ColSpanSizesEnum["col-lg-11"] = 39] = "col-lg-11";
|
|
90
|
-
})(ColSpanSizesEnum || (ColSpanSizesEnum = {}));
|
|
91
|
-
export var FieldInvisibilityEnum;
|
|
92
|
-
(function (FieldInvisibilityEnum) {
|
|
93
|
-
FieldInvisibilityEnum[FieldInvisibilityEnum["NASCOSTO"] = 1] = "NASCOSTO";
|
|
94
|
-
FieldInvisibilityEnum[FieldInvisibilityEnum["NASCOSTO CON AREA VISIBILE"] = 2] = "NASCOSTO CON AREA VISIBILE";
|
|
95
|
-
})(FieldInvisibilityEnum || (FieldInvisibilityEnum = {}));
|
|
96
|
-
export var DataGetterCardinalityEnum;
|
|
97
|
-
(function (DataGetterCardinalityEnum) {
|
|
98
|
-
DataGetterCardinalityEnum[DataGetterCardinalityEnum["PIU RECENTE"] = 2] = "PIU RECENTE";
|
|
99
|
-
DataGetterCardinalityEnum[DataGetterCardinalityEnum["MENO RECENTE"] = 3] = "MENO RECENTE";
|
|
100
|
-
})(DataGetterCardinalityEnum || (DataGetterCardinalityEnum = {}));
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZUZpZWxkLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXFwLWR5bmFtaWMtbW9kdWxlL3NyYy9saWIvbW9kZWxzL2Jhc2VGaWVsZC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHMUM7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFNBQVUsU0FBUSxPQUFPO0lBQXRDOztRQWlCSSxtRUFBbUU7UUFDbkUsZ0JBQVcsR0FBZ0IsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxxQkFBcUIsQ0FBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBb0J2SyxlQUFVLEdBQWUsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUMxQyxnQ0FBMkIsR0FBVyxFQUFFLENBQUM7SUFHN0MsQ0FBQztDQUFBO0FBR0QsTUFBTSxPQUFPLFdBQVc7Q0FPdkI7QUFBQSxDQUFDO0FBRUYsTUFBTSxPQUFPLFVBQVU7SUFBdkI7UUFDSSxtQkFBYyxHQUF1QixrQkFBa0IsQ0FBQyxPQUFPLENBQUM7UUFDaEUsb0JBQWUsR0FBUSxJQUFJLENBQUM7UUFDNUIsMEJBQXFCLEdBQVEsSUFBSSxDQUFDO1FBQ2xDLDBCQUFxQixHQUE4Qix5QkFBeUIsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLGtDQUFrQztJQUVuSSxDQUFDO0NBQUE7QUFFRCxNQUFNLENBQU4sSUFBWSxhQWNYO0FBZEQsV0FBWSxhQUFhO0lBQ3JCLHFFQUFvQixDQUFBO0lBQ3BCLG1FQUFtQixDQUFBO0lBQ25CLHlEQUFjLENBQUE7SUFDZCxpRUFBa0IsQ0FBQTtJQUNsQixxRUFBb0IsQ0FBQTtJQUNwQix5REFBYyxDQUFBO0lBQ2QseURBQWMsQ0FBQTtJQUNkLHVFQUFxQixDQUFBO0lBQ3JCLHFEQUFZLENBQUE7SUFDWiw0RUFBd0IsQ0FBQTtJQUN4Qix3RUFBc0IsQ0FBQTtJQUN0Qiw0REFBZ0IsQ0FBQTtJQUNoQixrRkFBMEIsQ0FBQTtBQUM5QixDQUFDLEVBZFcsYUFBYSxLQUFiLGFBQWEsUUFjeEI7QUFFRCxNQUFNLENBQU4sSUFBWSxrQkFLWDtBQUxELFdBQVksa0JBQWtCO0lBQzFCLGlFQUFhLENBQUE7SUFDYixpRUFBYSxDQUFBO0lBQ2IseUVBQWlCLENBQUE7SUFDakIsdUZBQXdCLENBQUE7QUFDNUIsQ0FBQyxFQUxXLGtCQUFrQixLQUFsQixrQkFBa0IsUUFLN0I7QUFFRCxNQUFNLENBQU4sSUFBWSxnQkE4Q1g7QUE5Q0QsV0FBWSxnQkFBZ0I7SUFDeEIsK0RBQWMsQ0FBQTtJQUNkLCtEQUFjLENBQUE7SUFDZCwrREFBYyxDQUFBO0lBQ2QsaUVBQWUsQ0FBQTtJQUVmLCtEQUFjLENBQUE7SUFDZCwrREFBYyxDQUFBO0lBQ2QsK0RBQWMsQ0FBQTtJQUNkLGlFQUFlLENBQUE7SUFFZiwrREFBYyxDQUFBO0lBQ2QsZ0VBQWUsQ0FBQTtJQUNmLGdFQUFlLENBQUE7SUFDZixrRUFBZ0IsQ0FBQTtJQUVoQixnRkFBdUIsQ0FBQTtJQUN2QixrRkFBd0IsQ0FBQTtJQUN4Qiw0RUFBcUIsQ0FBQTtJQUVyQixnRUFBZSxDQUFBO0lBQ2YsZ0VBQWUsQ0FBQTtJQUNmLGdFQUFlLENBQUE7SUFDZixnRUFBZSxDQUFBO0lBQ2YsZ0VBQWUsQ0FBQTtJQUNmLGdFQUFlLENBQUE7SUFDZixrRUFBZ0IsQ0FBQTtJQUNoQixrRUFBZ0IsQ0FBQTtJQUVoQixnRUFBZSxDQUFBO0lBQ2YsZ0VBQWUsQ0FBQTtJQUNmLGdFQUFlLENBQUE7SUFDZixnRUFBZSxDQUFBO0lBQ2YsZ0VBQWUsQ0FBQTtJQUNmLGdFQUFlLENBQUE7SUFDZixrRUFBZ0IsQ0FBQTtJQUNoQixrRUFBZ0IsQ0FBQTtJQUVoQixnRUFBZSxDQUFBO0lBQ2YsZ0VBQWUsQ0FBQTtJQUNmLGdFQUFlLENBQUE7SUFDZixnRUFBZSxDQUFBO0lBQ2YsZ0VBQWUsQ0FBQTtJQUNmLGdFQUFlLENBQUE7SUFDZixrRUFBZ0IsQ0FBQTtJQUNoQixrRUFBZ0IsQ0FBQTtBQUNwQixDQUFDLEVBOUNXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUE4QzNCO0FBRUQsTUFBTSxDQUFOLElBQVkscUJBR1g7QUFIRCxXQUFZLHFCQUFxQjtJQUM3Qix5RUFBYyxDQUFBO0lBQ2QsNkdBQWdDLENBQUE7QUFDcEMsQ0FBQyxFQUhXLHFCQUFxQixLQUFyQixxQkFBcUIsUUFHaEM7QUFFRCxNQUFNLENBQU4sSUFBWSx5QkFHVDtBQUhILFdBQVkseUJBQXlCO0lBQ2pDLHVGQUFpQixDQUFBO0lBQ2pCLHlGQUFrQixDQUFBO0FBQ3BCLENBQUMsRUFIUyx5QkFBeUIsS0FBekIseUJBQXlCLFFBR2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQmFzZU9iaiB9IGZyb20gJy4vYmFzZU9iai5tb2RlbCc7XHJcbmltcG9ydCB7IENvbnRlc3R1YWxpemF0aW9uIH0gZnJvbSAnLi9nZXR0ZXIubW9kZWwnO1xyXG5cclxuLyoqXHJcbiAqIENvbnRpZW5lIGxlIGluZm9ybWF6aW9uaSBkaSBiYXNlIGRlbCBjYW1wbywgaW5kaXBlbmRlbnRlbWVudGUgZGFsIHRpcG8uXHJcbiAqIFF1ZXN0YSBjbGFzc2Ugw6ggdm9sdXRhbWVudGUgYXN0cmF0dGEgcGVyY2jDqSBpbCB0aXBvIGRpIGNhbXBvIMOoIGRldHRhdG8gZGFsIHRpcG9cclxuICovXHJcbmV4cG9ydCBjbGFzcyBCYXNlRmllbGQgZXh0ZW5kcyBCYXNlT2JqIHtcclxuICAgIC8qKlxyXG4gICAgICogTm9tZSBkZWwgY2FtcG8gY2hlIHBlciBwcm9nZXR0YXppb25lIMOoIHVuYSBzb3N0aXR1emlvbmUgZGVsbGEgbGFiZWxcclxuICAgICAqIElsIHZlcm8gaWRlbnRpZmljYXRpdm8gZGVsIGNhbXBvIMOoIGwnSURcclxuICAgICAqL1xyXG4gICAgTmFtZTogc3RyaW5nO1xyXG4gICAgTGFiZWw6IHN0cmluZztcclxuICAgIERlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgICBSZXF1aXJlZDogYm9vbGVhbjtcclxuICAgIEZvcm11bGE6IHN0cmluZztcclxuICAgIFRvb2x0aXA6IHN0cmluZztcclxuICAgIE9yZGluYWxQb3NpdGlvbjogbnVtYmVyO1xyXG4gICAgRGlzYWJsZWQ6IGJvb2xlYW47XHJcbiAgICBSZWFkb25seTogYm9vbGVhbjtcclxuICAgIEZpZWxkc3R5bGVDU1M6IHN0cmluZztcclxuICAgIExhYmVsc3R5bGVDU1M6IHN0cmluZztcclxuXHJcbiAgICAvLyByYXBwcmVzZW50YXppb25lIGdyYWZpY2EgZGkgZGVmYXVsdCBwZXIgZ2xpIGVsZW1lbnRpIGRpIHJpc3Bvc3RhXHJcbiAgICBBbnN3ZXJTdHlsZTogQW5zd2VyU3R5bGUgPSB7IEluTGlzdFZpZXc6IHRydWUsIEludmlzaWJpbGl0eTogRmllbGRJbnZpc2liaWxpdHlFbnVtLk5BU0NPU1RPLCBWaXNpYmxlSWY6IG51bGwsIEZpZWxkc3R5bGVDU1M6IFwiXCIsIExhYmVsc3R5bGVDU1M6IFwiXCIsIENvbFNwYW5TaXplczogW10gfTtcclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFbnRpdMOgIGEgY3VpIGFwcGFydGllbmUgaWwgY2FtcG8uIFNpIHRlbmdhIHByZXNlbnRlIGNoZSBzb25vIGFtbWVzc2kgYW5jaGUgY2FtcGlcclxuICAgICAqIGRpIHNvbGEgdmlzdWFsaXp6YXppb25lIGUgY2FsY29sYXRpLCBkYSB1dGlsaXp6YXJlIG5lbGxlIGZvcm0sIFxyXG4gICAgICogZSBwZXIgcXVlc3RvIG1vdGl2byBwb3Nzb25vIGVzc2VyZSBjb24gRW50aXR5ID09IG51bGxcclxuICAgICovXHJcbiAgICBFbnRpdHlJRDogc3RyaW5nO1xyXG5cclxuICAgIEZpZWxkR3JvdXA6IHN0cmluZztcclxuICAgIENvbFNwYW5TaXplczogQXJyYXk8Q29sU3BhblNpemVzRW51bT47XHJcbiAgICBWaXNpYmxlSWY6IHN0cmluZzsgLy8gY29uZGl6aW9uZSBkaSB2aXN1YWxpenphemlvbmVcclxuICAgIEluTGlzdFZpZXc6IGJvb2xlYW47IC8vIHZpc3VhbGl6emF6aW9uZSAoaW1wb3N0YXRhIGRpIGRlZmF1bHQgb3BwdXJlIGNvbmRpemlvbmF0YSBjYWxjb2xhdGEgZHVyYW50ZSBsYSBjb21waWxhemlvbmUgZGVsIHF1ZXN0aW9uYXJpbylcclxuICAgIEludmlzaWJpbGl0eTogRmllbGRJbnZpc2liaWxpdHlFbnVtO1xyXG5cclxuICAgIC8vIFByb3ByaXTDoCBjbGllbnRcclxuICAgIEZpZWxkVHlwZTogRmllbGRUeXBlRW51bTtcclxuICAgIEZpZWxkVmFsdWU6IGFueTtcclxuXHJcbiAgICBEYXRhR2V0dGVyOiBEYXRhR2V0dGVyID0gbmV3IERhdGFHZXR0ZXIoKTtcclxuICAgIERhdGFHZXR0ZXJWYWx1ZUJhc2U2NFN0cmluZzogc3RyaW5nID0gXCJcIjtcclxuXHJcbiAgICBGb3JtRm9ybUdyb3VwOiBVbnR5cGVkRm9ybUdyb3VwO1xyXG59XHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIEFuc3dlclN0eWxlIHtcclxuICAgIEluTGlzdFZpZXc6IGJvb2xlYW4gLy8gdmlzaWJsZVxyXG4gICAgSW52aXNpYmlsaXR5OiBGaWVsZEludmlzaWJpbGl0eUVudW1cclxuICAgIFZpc2libGVJZjogc3RyaW5nIC8vIGZvcm11bGEgdmlzaWJsZVxyXG4gICAgRmllbGRzdHlsZUNTUzogc3RyaW5nXHJcbiAgICBMYWJlbHN0eWxlQ1NTOiBzdHJpbmdcclxuICAgIENvbFNwYW5TaXplczogQXJyYXk8Q29sU3BhblNpemVzRW51bT5cclxufTtcclxuXHJcbmV4cG9ydCBjbGFzcyBEYXRhR2V0dGVyIHtcclxuICAgIERhdGFHZXR0ZXJUeXBlOiBEYXRhR2V0dGVyVHlwZUVudW0gPSBEYXRhR2V0dGVyVHlwZUVudW0uTWFudWFsZTtcclxuICAgIERhdGFHZXR0ZXJWYWx1ZTogYW55ID0gbnVsbDtcclxuICAgIERhdGFHZXR0ZXJDb2x1bW5Gb3JjZTogYW55ID0gbnVsbDtcclxuICAgIERhdGFHZXR0ZXJDYXJkaW5hbGl0eTogRGF0YUdldHRlckNhcmRpbmFsaXR5RW51bSA9IERhdGFHZXR0ZXJDYXJkaW5hbGl0eUVudW1bJ1BJVSBSRUNFTlRFJ107IC8vIFVzYXRvIHNvbG8gaW4gY2FzbyBkaSBETSBHZXR0ZXJcclxuICAgIERhdGFHZXR0ZXJDb250ZXN0dWFsaXphdGlvbjogQ29udGVzdHVhbGl6YXRpb247IC8vIFVzYXRvIHBlciBjb250ZXN0dWFsaXp6YXJlIGlsIERNIEdldHRlclxyXG59XHJcblxyXG5leHBvcnQgZW51bSBGaWVsZFR5cGVFbnVtIHtcclxuICAgICdDYW1wbyBkaSB0ZXN0bycgPSAxLFxyXG4gICAgJ0FyZWEgZGkgdGVzdG8nID0gMixcclxuICAgICdCb29sZWFubycgPSAzLFxyXG4gICAgJ0RhdGEgZS9vIG9yYScgPSA0LFxyXG4gICAgJ0NhbXBvIG51bWVyaWNvJyA9IDUsXHJcbiAgICAnQWxsZWdhdG8nID0gNixcclxuICAgICdJbW1hZ2luZScgPSA3LFxyXG4gICAgJ0VsZW5jbyBnZW5lcmljbycgPSA4LFxyXG4gICAgJ0xvb2t1cCcgPSA5LFxyXG4gICAgJ0Zvcm0gZGkgZGV0dGFnbGlvJyA9IDEwLFxyXG4gICAgJ0VsZW5jbyBpbW1hZ2luaScgPSAxMSxcclxuICAgIFwiRXRpY2hldHRhXCIgPSAxMixcclxuICAgIFwiSW1tYWdpbmUgY29uIG1hcmtlcnNcIiA9MTNcclxufVxyXG5cclxuZXhwb3J0IGVudW0gRGF0YUdldHRlclR5cGVFbnVtIHtcclxuICAgICdNYW51YWxlJyA9IDEsXHJcbiAgICAnRm9ybXVsYScgPSAyLFxyXG4gICAgJ0RhIGRhdGFiYXNlJyA9IDMsXHJcbiAgICAnRGEgbW9kdWxvIGRpbmFtaWNvJyA9IDRcclxufVxyXG5cclxuZXhwb3J0IGVudW0gQ29sU3BhblNpemVzRW51bSB7XHJcbiAgICAnY29sLXNtLTMnID0gMSxcclxuICAgICdjb2wtc20tNCcgPSAyLFxyXG4gICAgJ2NvbC1zbS02JyA9IDMsXHJcbiAgICAnY29sLXNtLTEyJyA9IDQsXHJcblxyXG4gICAgJ2NvbC1tZC0zJyA9IDUsXHJcbiAgICAnY29sLW1kLTQnID0gNixcclxuICAgICdjb2wtbWQtNicgPSA3LFxyXG4gICAgJ2NvbC1tZC0xMicgPSA4LFxyXG5cclxuICAgICdjb2wtbGctMycgPSA5LFxyXG4gICAgJ2NvbC1sZy00JyA9IDEwLFxyXG4gICAgJ2NvbC1sZy02JyA9IDExLFxyXG4gICAgJ2NvbC1sZy0xMicgPSAxMixcclxuXHJcbiAgICAnYWxpZ24tc2VsZi1zdGFydCcgPSAxMyxcclxuICAgICdhbGlnbi1zZWxmLWNlbnRlcicgPSAxNCxcclxuICAgICdhbGlnbi1zZWxmLWVuZCcgPSAxNSxcclxuXHJcbiAgICAnY29sLXNtLTEnID0gMTYsXHJcbiAgICAnY29sLXNtLTInID0gMTcsXHJcbiAgICAnY29sLXNtLTUnID0gMTgsXHJcbiAgICAnY29sLXNtLTcnID0gMTksXHJcbiAgICAnY29sLXNtLTgnID0gMjAsXHJcbiAgICAnY29sLXNtLTknID0gMjEsXHJcbiAgICAnY29sLXNtLTEwJyA9IDIyLFxyXG4gICAgJ2NvbC1zbS0xMScgPSAyMyxcclxuXHJcbiAgICAnY29sLW1kLTEnID0gMjQsXHJcbiAgICAnY29sLW1kLTInID0gMjUsXHJcbiAgICAnY29sLW1kLTUnID0gMjYsXHJcbiAgICAnY29sLW1kLTcnID0gMjcsXHJcbiAgICAnY29sLW1kLTgnID0gMjgsXHJcbiAgICAnY29sLW1kLTknID0gMjksXHJcbiAgICAnY29sLW1kLTEwJyA9IDMwLFxyXG4gICAgJ2NvbC1tZC0xMScgPSAzMSxcclxuXHJcbiAgICAnY29sLWxnLTEnID0gMzIsXHJcbiAgICAnY29sLWxnLTInID0gMzMsXHJcbiAgICAnY29sLWxnLTUnID0gMzQsXHJcbiAgICAnY29sLWxnLTcnID0gMzUsXHJcbiAgICAnY29sLWxnLTgnID0gMzYsXHJcbiAgICAnY29sLWxnLTknID0gMzcsXHJcbiAgICAnY29sLWxnLTEwJyA9IDM4LFxyXG4gICAgJ2NvbC1sZy0xMScgPSAzOVxyXG59XHJcblxyXG5leHBvcnQgZW51bSBGaWVsZEludmlzaWJpbGl0eUVudW0ge1xyXG4gICAgJ05BU0NPU1RPJyA9IDEsXHJcbiAgICAnTkFTQ09TVE8gQ09OIEFSRUEgVklTSUJJTEUnID0gMlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBEYXRhR2V0dGVyQ2FyZGluYWxpdHlFbnVtIHtcclxuICAgICdQSVUgUkVDRU5URScgPSAyLFxyXG4gICAgJ01FTk8gUkVDRU5URScgPSAzXHJcbiAgfSJdfQ==
|