@mediusinc/mng-commons 0.12.2 → 0.12.3-rc.1
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/lib/api/models/builders/query-param.builder.mjs +58 -58
- package/esm2020/lib/api/models/filter-match-type.model.mjs +24 -24
- package/esm2020/lib/api/models/filter-param.model.mjs +32 -32
- package/esm2020/lib/api/models/index.mjs +8 -8
- package/esm2020/lib/api/models/mappers.mjs +12 -12
- package/esm2020/lib/api/models/query-mode.model.mjs +17 -17
- package/esm2020/lib/api/models/query-param.model.mjs +67 -67
- package/esm2020/lib/api/models/query-result.model.mjs +17 -17
- package/esm2020/lib/api/models/serialization.model.mjs +1 -1
- package/esm2020/lib/api/services/api.abstract.service.mjs +55 -55
- package/esm2020/lib/api/services/crud-api.abstract.service.mjs +67 -67
- package/esm2020/lib/api/services/get-all-api.abstract.service.mjs +22 -22
- package/esm2020/lib/api/services/index.mjs +3 -3
- package/esm2020/lib/api/utils/index.mjs +2 -2
- package/esm2020/lib/api/utils/medius-rest.util.mjs +151 -151
- package/esm2020/lib/api/utils/object-serializer.util.mjs +243 -243
- package/esm2020/lib/components/action/action.component.mjs +201 -201
- package/esm2020/lib/components/action/editor/action-editor.component.mjs +247 -247
- package/esm2020/lib/components/action/index.mjs +3 -3
- package/esm2020/lib/components/action/models/action-confirmation-service.model.mjs +1 -1
- package/esm2020/lib/components/action/models/action-execution.model.mjs +235 -235
- package/esm2020/lib/components/action/models/index.mjs +4 -3
- package/esm2020/lib/components/action/models/tableview-action-default-categories.model.mjs +11 -0
- package/esm2020/lib/components/action/route/action-route.component.mjs +124 -124
- package/esm2020/lib/components/form/autocomplete/autocomplete.component.mjs +281 -281
- package/esm2020/lib/components/form/dropdown/dropdown.component.mjs +194 -189
- package/esm2020/lib/components/form/editor/form-editor.component.mjs +211 -211
- package/esm2020/lib/components/form/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +48 -48
- package/esm2020/lib/components/form/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +43 -43
- package/esm2020/lib/components/form/formly/fields/formly-field-fieldset/formly-field-fieldset.component.mjs +24 -24
- package/esm2020/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.mjs +101 -101
- package/esm2020/lib/components/form/formly/fields/formly-field-label/formly-field-label.component.mjs +22 -22
- package/esm2020/lib/components/form/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +179 -179
- package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +173 -173
- package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +149 -149
- package/esm2020/lib/components/form/formly/fields/formly-field-tabs/formly-field-tabs.component.mjs +16 -16
- package/esm2020/lib/components/form/formly/fields/index.mjs +9 -9
- package/esm2020/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +14 -14
- package/esm2020/lib/components/form/formly/wrappers/formly-table-wrapper/formly-table-wrapper.component.mjs +14 -14
- package/esm2020/lib/components/form/formly/wrappers/index.mjs +2 -2
- package/esm2020/lib/components/form/index.mjs +3 -3
- package/esm2020/lib/components/form/models/form-editor.event.mjs +33 -33
- package/esm2020/lib/components/form/models/index.mjs +1 -1
- package/esm2020/lib/components/layout/breadcrumb.component.mjs +16 -16
- package/esm2020/lib/components/layout/footer.component.mjs +16 -16
- package/esm2020/lib/components/layout/index.mjs +7 -7
- package/esm2020/lib/components/layout/main-layout.component.mjs +51 -51
- package/esm2020/lib/components/layout/menu-item.component.mjs +238 -238
- package/esm2020/lib/components/layout/menu.component.mjs +20 -20
- package/esm2020/lib/components/layout/services/index.mjs +1 -1
- package/esm2020/lib/components/layout/services/main-layout.component.service.mjs +192 -192
- package/esm2020/lib/components/layout/topbar.component.mjs +57 -57
- package/esm2020/lib/components/layout/version.component.mjs +57 -57
- package/esm2020/lib/components/tableview/index.mjs +6 -6
- package/esm2020/lib/components/tableview/models/index.mjs +1 -1
- package/esm2020/lib/components/tableview/models/table.event.mjs +15 -15
- package/esm2020/lib/components/tableview/route/tableview-route.abstract.component.mjs +80 -58
- package/esm2020/lib/components/tableview/route/tableview-route.component.mjs +53 -61
- package/esm2020/lib/components/tableview/table/column-filter/column-filter.component.mjs +104 -104
- package/esm2020/lib/components/tableview/table/column-value/column-value.component.mjs +70 -70
- package/esm2020/lib/components/tableview/table/table.component.mjs +531 -509
- package/esm2020/lib/components/tableview/tableview.component.mjs +92 -92
- package/esm2020/lib/config/formly.config.mjs +180 -180
- package/esm2020/lib/config/index.mjs +1 -1
- package/esm2020/lib/config/models/index.mjs +2 -2
- package/esm2020/lib/config/models/mng-config.model.mjs +1 -1
- package/esm2020/lib/config/models/mng-formly-config-model.mjs +1 -1
- package/esm2020/lib/data-providers/base.data-provider.mjs +16 -16
- package/esm2020/lib/data-providers/editor.data-provider.mjs +36 -36
- package/esm2020/lib/data-providers/index.mjs +5 -5
- package/esm2020/lib/data-providers/lookup.data-provider.mjs +15 -15
- package/esm2020/lib/data-providers/table.data-provider.mjs +24 -17
- package/esm2020/lib/data-providers/tableview.data-provider.mjs +46 -17
- package/esm2020/lib/descriptors/action.descriptor.mjs +620 -616
- package/esm2020/lib/descriptors/column.descriptor.mjs +342 -265
- package/esm2020/lib/descriptors/editor.descriptor.mjs +285 -147
- package/esm2020/lib/descriptors/field-validation.descriptor.mjs +20 -20
- package/esm2020/lib/descriptors/field.descriptor.mjs +854 -820
- package/esm2020/lib/descriptors/filter.descriptor.mjs +290 -290
- package/esm2020/lib/descriptors/index.mjs +9 -9
- package/esm2020/lib/descriptors/interfaces/field-config.interface.mjs +1 -1
- package/esm2020/lib/descriptors/interfaces/index.mjs +2 -2
- package/esm2020/lib/descriptors/interfaces/lookup-descriptor.interface.mjs +1 -1
- package/esm2020/lib/descriptors/model.descriptor.mjs +33 -33
- package/esm2020/lib/descriptors/table.descriptor.mjs +522 -198
- package/esm2020/lib/descriptors/tableview.descriptor.mjs +355 -135
- package/esm2020/lib/descriptors/types/action.type.mjs +52 -52
- package/esm2020/lib/descriptors/types/column.type.mjs +10 -10
- package/esm2020/lib/descriptors/types/editor.type.mjs +7 -7
- package/esm2020/lib/descriptors/types/field.type.mjs +52 -52
- package/esm2020/lib/descriptors/types/filter.type.mjs +30 -30
- package/esm2020/lib/descriptors/types/index.mjs +6 -6
- package/esm2020/lib/descriptors/types/table.type.mjs +16 -16
- package/esm2020/lib/descriptors/types/tableview-attr.model.mjs +2 -0
- package/esm2020/lib/directives/component.directive.mjs +43 -43
- package/esm2020/lib/directives/index.mjs +2 -2
- package/esm2020/lib/directives/template.directive.mjs +27 -27
- package/esm2020/lib/mng-commons.module.mjs +439 -439
- package/esm2020/lib/models/column-value.model.mjs +1 -1
- package/esm2020/lib/models/enum.model.mjs +1 -1
- package/esm2020/lib/models/error.model.mjs +1 -1
- package/esm2020/lib/models/formly-field.model.mjs +1 -1
- package/esm2020/lib/models/index.mjs +8 -8
- package/esm2020/lib/models/menu.model.mjs +1 -1
- package/esm2020/lib/models/user.model.mjs +1 -1
- package/esm2020/lib/models/version.model.mjs +1 -1
- package/esm2020/lib/models/view-container.model.mjs +1 -1
- package/esm2020/lib/pipes/boolean.pipe.mjs +26 -26
- package/esm2020/lib/pipes/enum.pipe.mjs +24 -24
- package/esm2020/lib/pipes/i18n-property.pipe.mjs +17 -17
- package/esm2020/lib/pipes/index.mjs +5 -5
- package/esm2020/lib/pipes/json-path.pipe.mjs +79 -79
- package/esm2020/lib/pipes/link-formatter.pipe.mjs +38 -38
- package/esm2020/lib/router/index.mjs +2 -2
- package/esm2020/lib/router/models/index.mjs +1 -1
- package/esm2020/lib/router/models/router.model.mjs +2 -2
- package/esm2020/lib/router/route-builder.mjs +425 -425
- package/esm2020/lib/router/tableview-route-builder.mjs +184 -160
- package/esm2020/lib/security/authorization.guard.mjs +25 -25
- package/esm2020/lib/security/authorization.service.mjs +46 -46
- package/esm2020/lib/security/authorization.util.mjs +15 -15
- package/esm2020/lib/security/index.mjs +3 -3
- package/esm2020/lib/security/model/authorization.type.mjs +7 -7
- package/esm2020/lib/security/model/index.mjs +3 -3
- package/esm2020/lib/security/model/permission-service.interface.mjs +1 -1
- package/esm2020/lib/security/model/permissions.model.mjs +87 -95
- package/esm2020/lib/services/action-executor.service.mjs +537 -537
- package/esm2020/lib/services/commons.service.mjs +342 -342
- package/esm2020/lib/services/configuration.service.mjs +119 -119
- package/esm2020/lib/services/error-mapper.service.mjs +13 -13
- package/esm2020/lib/services/index.mjs +6 -6
- package/esm2020/lib/services/internal/commons-init.provider.mjs +3 -3
- package/esm2020/lib/services/internal/commons-init.service.mjs +43 -43
- package/esm2020/lib/services/internal/index.mjs +2 -2
- package/esm2020/lib/services/navigation.service.mjs +47 -47
- package/esm2020/lib/services/providers/config-service.provider.mjs +29 -29
- package/esm2020/lib/services/providers/formly-config.provider.mjs +30 -30
- package/esm2020/lib/services/providers/index.mjs +2 -2
- package/esm2020/lib/services/tokens/browser-storage.token.mjs +5 -5
- package/esm2020/lib/services/tokens/commons-init.token.mjs +2 -2
- package/esm2020/lib/services/tokens/default-setting.token.mjs +2 -2
- package/esm2020/lib/services/tokens/index.mjs +4 -4
- package/esm2020/lib/services/tokens/module-config.token.mjs +2 -2
- package/esm2020/lib/services/version.service.mjs +38 -38
- package/esm2020/lib/services/view-container.component.service.mjs +34 -34
- package/esm2020/lib/styles/button-style.builder.mjs +111 -111
- package/esm2020/lib/styles/index.mjs +2 -2
- package/esm2020/lib/styles/styles.util.mjs +40 -40
- package/esm2020/lib/types/index.mjs +2 -2
- package/esm2020/lib/types/type.decorator.mjs +12 -12
- package/esm2020/lib/types/type.model.mjs +1 -1
- package/esm2020/lib/utils/action-data-provider.util.mjs +144 -144
- package/esm2020/lib/utils/column.util.mjs +37 -0
- package/esm2020/lib/utils/editor-formly.util.mjs +250 -250
- package/esm2020/lib/utils/enum.util.mjs +81 -81
- package/esm2020/lib/utils/field.util.mjs +60 -0
- package/esm2020/lib/utils/i18n.util.mjs +232 -232
- package/esm2020/lib/utils/index.mjs +11 -9
- package/esm2020/lib/utils/model.util.mjs +61 -60
- package/esm2020/lib/utils/notification.util.mjs +45 -45
- package/esm2020/lib/utils/route.util.mjs +23 -23
- package/esm2020/lib/utils/string.util.mjs +23 -23
- package/esm2020/lib/utils/tableview.util.mjs +58 -0
- package/esm2020/lib/utils/type.util.mjs +76 -76
- package/esm2020/mediusinc-mng-commons.mjs +4 -4
- package/esm2020/public-api.mjs +53 -53
- package/fesm2015/mediusinc-mng-commons.mjs +11898 -10853
- package/fesm2015/mediusinc-mng-commons.mjs.map +1 -1
- package/fesm2020/mediusinc-mng-commons.mjs +11746 -10706
- package/fesm2020/mediusinc-mng-commons.mjs.map +1 -1
- package/index.d.ts +5 -5
- package/lib/api/models/builders/query-param.builder.d.ts +13 -13
- package/lib/api/models/filter-match-type.model.d.ts +23 -23
- package/lib/api/models/filter-param.model.d.ts +23 -23
- package/lib/api/models/index.d.ts +8 -8
- package/lib/api/models/mappers.d.ts +6 -6
- package/lib/api/models/query-mode.model.d.ts +16 -16
- package/lib/api/models/query-param.model.d.ts +31 -31
- package/lib/api/models/query-result.model.d.ts +23 -23
- package/lib/api/models/serialization.model.d.ts +8 -8
- package/lib/api/services/api.abstract.service.d.ts +24 -24
- package/lib/api/services/crud-api.abstract.service.d.ts +22 -22
- package/lib/api/services/get-all-api.abstract.service.d.ts +14 -14
- package/lib/api/services/index.d.ts +3 -3
- package/lib/api/utils/index.d.ts +2 -2
- package/lib/api/utils/medius-rest.util.d.ts +15 -15
- package/lib/api/utils/object-serializer.util.d.ts +33 -33
- package/lib/components/action/action.component.d.ts +68 -68
- package/lib/components/action/editor/action-editor.component.d.ts +64 -64
- package/lib/components/action/index.d.ts +3 -3
- package/lib/components/action/models/action-confirmation-service.model.d.ts +6 -6
- package/lib/components/action/models/action-execution.model.d.ts +129 -129
- package/lib/components/action/models/index.d.ts +3 -2
- package/lib/components/action/models/tableview-action-default-categories.model.d.ts +10 -0
- package/lib/components/action/route/action-route.component.d.ts +31 -31
- package/lib/components/form/autocomplete/autocomplete.component.d.ts +56 -56
- package/lib/components/form/dropdown/dropdown.component.d.ts +52 -50
- package/lib/components/form/editor/form-editor.component.d.ts +45 -45
- package/lib/components/form/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.d.ts +15 -15
- package/lib/components/form/formly/fields/formly-field-dropdown/formly-field-dropdown.component.d.ts +14 -14
- package/lib/components/form/formly/fields/formly-field-fieldset/formly-field-fieldset.component.d.ts +13 -13
- package/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.d.ts +23 -23
- package/lib/components/form/formly/fields/formly-field-label/formly-field-label.component.d.ts +10 -10
- package/lib/components/form/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.d.ts +45 -45
- package/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.d.ts +23 -23
- package/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.d.ts +38 -38
- package/lib/components/form/formly/fields/formly-field-tabs/formly-field-tabs.component.d.ts +6 -6
- package/lib/components/form/formly/fields/index.d.ts +9 -9
- package/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.d.ts +6 -6
- package/lib/components/form/formly/wrappers/formly-table-wrapper/formly-table-wrapper.component.d.ts +6 -6
- package/lib/components/form/formly/wrappers/index.d.ts +2 -2
- package/lib/components/form/index.d.ts +3 -3
- package/lib/components/form/models/form-editor.event.d.ts +37 -37
- package/lib/components/form/models/index.d.ts +1 -1
- package/lib/components/layout/breadcrumb.component.d.ts +8 -8
- package/lib/components/layout/footer.component.d.ts +9 -9
- package/lib/components/layout/index.d.ts +7 -7
- package/lib/components/layout/main-layout.component.d.ts +20 -20
- package/lib/components/layout/menu-item.component.d.ts +44 -44
- package/lib/components/layout/menu.component.d.ts +10 -10
- package/lib/components/layout/services/index.d.ts +1 -1
- package/lib/components/layout/services/main-layout.component.service.d.ts +65 -65
- package/lib/components/layout/topbar.component.d.ts +24 -24
- package/lib/components/layout/version.component.d.ts +19 -19
- package/lib/components/tableview/index.d.ts +6 -6
- package/lib/components/tableview/models/index.d.ts +1 -1
- package/lib/components/tableview/models/table.event.d.ts +17 -17
- package/lib/components/tableview/route/tableview-route.abstract.component.d.ts +25 -20
- package/lib/components/tableview/route/tableview-route.component.d.ts +18 -23
- package/lib/components/tableview/table/column-filter/column-filter.component.d.ts +32 -32
- package/lib/components/tableview/table/column-value/column-value.component.d.ts +29 -29
- package/lib/components/tableview/table/table.component.d.ts +110 -108
- package/lib/components/tableview/tableview.component.d.ts +41 -41
- package/lib/config/formly.config.d.ts +16 -16
- package/lib/config/index.d.ts +1 -1
- package/lib/config/models/index.d.ts +2 -2
- package/lib/config/models/mng-config.model.d.ts +36 -36
- package/lib/config/models/mng-formly-config-model.d.ts +17 -17
- package/lib/data-providers/base.data-provider.d.ts +14 -14
- package/lib/data-providers/editor.data-provider.d.ts +25 -25
- package/lib/data-providers/index.d.ts +5 -5
- package/lib/data-providers/lookup.data-provider.d.ts +14 -14
- package/lib/data-providers/table.data-provider.d.ts +19 -14
- package/lib/data-providers/tableview.data-provider.d.ts +29 -15
- package/lib/descriptors/action.descriptor.d.ts +263 -259
- package/lib/descriptors/column.descriptor.d.ts +116 -82
- package/lib/descriptors/editor.descriptor.d.ts +102 -37
- package/lib/descriptors/field-validation.descriptor.d.ts +18 -18
- package/lib/descriptors/field.descriptor.d.ts +305 -300
- package/lib/descriptors/filter.descriptor.d.ts +106 -106
- package/lib/descriptors/index.d.ts +9 -9
- package/lib/descriptors/interfaces/field-config.interface.d.ts +9 -9
- package/lib/descriptors/interfaces/index.d.ts +2 -2
- package/lib/descriptors/interfaces/lookup-descriptor.interface.d.ts +17 -17
- package/lib/descriptors/model.descriptor.d.ts +15 -15
- package/lib/descriptors/table.descriptor.d.ts +208 -66
- package/lib/descriptors/tableview.descriptor.d.ts +141 -42
- package/lib/descriptors/types/action.type.d.ts +45 -45
- package/lib/descriptors/types/column.type.d.ts +9 -9
- package/lib/descriptors/types/editor.type.d.ts +6 -6
- package/lib/descriptors/types/field.type.d.ts +44 -44
- package/lib/descriptors/types/filter.type.d.ts +27 -27
- package/lib/descriptors/types/index.d.ts +6 -6
- package/lib/descriptors/types/table.type.d.ts +13 -13
- package/lib/descriptors/types/tableview-attr.model.d.ts +9 -0
- package/lib/directives/component.directive.d.ts +16 -16
- package/lib/directives/index.d.ts +2 -2
- package/lib/directives/template.directive.d.ts +13 -13
- package/lib/mng-commons.module.d.ts +87 -87
- package/lib/models/column-value.model.d.ts +4 -4
- package/lib/models/enum.model.d.ts +6 -6
- package/lib/models/error.model.d.ts +14 -14
- package/lib/models/formly-field.model.d.ts +16 -16
- package/lib/models/index.d.ts +8 -8
- package/lib/models/menu.model.d.ts +27 -27
- package/lib/models/user.model.d.ts +8 -8
- package/lib/models/version.model.d.ts +18 -18
- package/lib/models/view-container.model.d.ts +6 -6
- package/lib/pipes/boolean.pipe.d.ts +7 -7
- package/lib/pipes/enum.pipe.d.ts +8 -8
- package/lib/pipes/i18n-property.pipe.d.ts +8 -8
- package/lib/pipes/index.d.ts +5 -5
- package/lib/pipes/json-path.pipe.d.ts +13 -13
- package/lib/pipes/link-formatter.pipe.d.ts +11 -11
- package/lib/router/index.d.ts +2 -2
- package/lib/router/models/index.d.ts +1 -1
- package/lib/router/models/router.model.d.ts +33 -27
- package/lib/router/route-builder.d.ts +98 -98
- package/lib/router/tableview-route-builder.d.ts +37 -34
- package/lib/security/authorization.guard.d.ts +11 -11
- package/lib/security/authorization.service.d.ts +19 -19
- package/lib/security/authorization.util.d.ts +5 -5
- package/lib/security/index.d.ts +3 -3
- package/lib/security/model/authorization.type.d.ts +6 -6
- package/lib/security/model/index.d.ts +3 -3
- package/lib/security/model/permission-service.interface.d.ts +6 -6
- package/lib/security/model/permissions.model.d.ts +37 -44
- package/lib/services/action-executor.service.d.ts +149 -149
- package/lib/services/commons.service.d.ts +78 -78
- package/lib/services/configuration.service.d.ts +45 -45
- package/lib/services/error-mapper.service.d.ts +7 -7
- package/lib/services/index.d.ts +6 -6
- package/lib/services/internal/commons-init.provider.d.ts +3 -3
- package/lib/services/internal/commons-init.service.d.ts +16 -16
- package/lib/services/internal/index.d.ts +2 -2
- package/lib/services/navigation.service.d.ts +14 -14
- package/lib/services/providers/config-service.provider.d.ts +6 -6
- package/lib/services/providers/formly-config.provider.d.ts +4 -4
- package/lib/services/providers/index.d.ts +2 -2
- package/lib/services/tokens/browser-storage.token.d.ts +2 -2
- package/lib/services/tokens/commons-init.token.d.ts +3 -3
- package/lib/services/tokens/default-setting.token.d.ts +2 -2
- package/lib/services/tokens/index.d.ts +4 -4
- package/lib/services/tokens/module-config.token.d.ts +3 -3
- package/lib/services/version.service.d.ts +13 -13
- package/lib/services/view-container.component.service.d.ts +22 -22
- package/lib/styles/button-style.builder.d.ts +26 -26
- package/lib/styles/index.d.ts +2 -2
- package/lib/styles/styles.util.d.ts +14 -14
- package/lib/types/index.d.ts +2 -2
- package/lib/types/type.decorator.d.ts +4 -4
- package/lib/types/type.model.d.ts +23 -23
- package/lib/utils/action-data-provider.util.d.ts +20 -20
- package/lib/utils/column.util.d.ts +8 -0
- package/lib/utils/editor-formly.util.d.ts +11 -11
- package/lib/utils/enum.util.d.ts +50 -50
- package/lib/utils/field.util.d.ts +13 -0
- package/lib/utils/i18n.util.d.ts +56 -56
- package/lib/utils/index.d.ts +10 -8
- package/lib/utils/model.util.d.ts +8 -8
- package/lib/utils/notification.util.d.ts +11 -11
- package/lib/utils/route.util.d.ts +4 -4
- package/lib/utils/string.util.d.ts +4 -4
- package/lib/utils/tableview.util.d.ts +23 -0
- package/lib/utils/type.util.d.ts +36 -36
- package/mediusinc-mng-commons-0.12.3-rc.1.tgz +0 -0
- package/package.json +1 -1
- package/public-api.d.ts +33 -33
- package/version-info.json +6 -6
|
@@ -1,150 +1,150 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
-
import { FieldType } from '@ngx-formly/core';
|
|
3
|
-
import { ReplaySubject, distinctUntilChanged } from 'rxjs';
|
|
4
|
-
import { startWith } from 'rxjs/operators';
|
|
5
|
-
import { MediusFilterMatchType, MediusQueryParamBuilder } from '../../../../../api/models';
|
|
6
|
-
import { FieldManyToManyEditorActionEnum } from '../../../../../descriptors/types';
|
|
7
|
-
import { MngFormFieldEventComponentSubtype, MngFormFieldEventDialogSubtype, MngFormFieldEventTypeEnum } from '../../../models';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@angular/common";
|
|
10
|
-
import * as i2 from "primeng/api";
|
|
11
|
-
import * as i3 from "primeng/button";
|
|
12
|
-
import * as i4 from "primeng/dialog";
|
|
13
|
-
import * as i5 from "primeng/messages";
|
|
14
|
-
import * as i6 from "primeng/ripple";
|
|
15
|
-
import * as i7 from "../../../../../directives/template.directive";
|
|
16
|
-
import * as i8 from "../../../../tableview/table/table.component";
|
|
17
|
-
import * as i9 from "@ngx-translate/core";
|
|
18
|
-
export class MngFormlyFieldTableDialogMultiselectComponent extends FieldType {
|
|
19
|
-
constructor(injector) {
|
|
20
|
-
super();
|
|
21
|
-
this.injector = injector;
|
|
22
|
-
this.itemsSubject = new ReplaySubject(1);
|
|
23
|
-
this.itemsAsync = this.itemsSubject.asObservable();
|
|
24
|
-
this.addItemsSubject = new ReplaySubject(1);
|
|
25
|
-
this.addItemsAsync = this.addItemsSubject.asObservable();
|
|
26
|
-
this.dialogUseDataProvider = false;
|
|
27
|
-
this.dialogDataProviderService = null;
|
|
28
|
-
this.dialogIsLoadingSubject = new ReplaySubject(1);
|
|
29
|
-
this.isDialogVisible = false;
|
|
30
|
-
this.dialogAreItemsLoaded = false;
|
|
31
|
-
this.dialogSelectedAddItems = [];
|
|
32
|
-
this.dialogMessages = [];
|
|
33
|
-
this.dialogIsLoading$ = this.dialogIsLoadingSubject.asObservable();
|
|
34
|
-
this.hasAddAction = false;
|
|
35
|
-
this.hasDeleteAction = false;
|
|
36
|
-
this.subscriptions = [];
|
|
37
|
-
}
|
|
38
|
-
ngOnInit() {
|
|
39
|
-
this.descriptor = this.to['descriptor'];
|
|
40
|
-
if (this.descriptor.lookupTableDataProvider?.serviceType) {
|
|
41
|
-
this.dialogUseDataProvider = true;
|
|
42
|
-
this.dialogDataProviderService = this.injector.get(this.descriptor.lookupTableDataProvider.serviceType);
|
|
43
|
-
}
|
|
44
|
-
this.hasAddAction = this.descriptor.actions.some(a => a === FieldManyToManyEditorActionEnum.Add);
|
|
45
|
-
this.hasDeleteAction = this.descriptor.actions.some(a => a === FieldManyToManyEditorActionEnum.Delete);
|
|
46
|
-
// init values
|
|
47
|
-
if (typeof this.formControl.value === 'undefined' || this.formControl.value === null) {
|
|
48
|
-
this.formControl.patchValue([]);
|
|
49
|
-
}
|
|
50
|
-
// emit lifecycle event
|
|
51
|
-
this.descriptor?.nextEvent(MngFormFieldEventTypeEnum.ComponentLifecycle, MngFormlyFieldTableDialogMultiselectComponent, this, {
|
|
52
|
-
eventSubtype: MngFormFieldEventComponentSubtype.ON_INIT
|
|
53
|
-
});
|
|
54
|
-
const subscription = this.formControl.valueChanges.pipe(startWith(this.formControl.value), distinctUntilChanged()).subscribe(v => {
|
|
55
|
-
this.itemsSubject.next(v ?? []);
|
|
56
|
-
// emit lifecycle event
|
|
57
|
-
this.descriptor.nextEvent(MngFormFieldEventTypeEnum.ValueChange, MngFormlyFieldTableDialogMultiselectComponent, this, {
|
|
58
|
-
value: v ?? []
|
|
59
|
-
});
|
|
60
|
-
});
|
|
61
|
-
this.subscriptions.push(subscription);
|
|
62
|
-
}
|
|
63
|
-
ngAfterViewInit() {
|
|
64
|
-
// emit lifecycle event
|
|
65
|
-
this.descriptor?.nextEvent(MngFormFieldEventTypeEnum.ComponentLifecycle, MngFormlyFieldTableDialogMultiselectComponent, this, {
|
|
66
|
-
eventSubtype: MngFormFieldEventComponentSubtype.ON_VIEW_INIT
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
ngOnDestroy() {
|
|
70
|
-
// warning: formly calls on destroy before on init
|
|
71
|
-
this.lookupDataProviderSubscription?.unsubscribe();
|
|
72
|
-
this.subscriptions.forEach(s => s.unsubscribe());
|
|
73
|
-
// emit lifecycle event
|
|
74
|
-
this.descriptor?.nextEvent(MngFormFieldEventTypeEnum.ComponentLifecycle, MngFormlyFieldTableDialogMultiselectComponent, this, {
|
|
75
|
-
eventSubtype: MngFormFieldEventComponentSubtype.ON_DESTROY
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
openAddDialog() {
|
|
79
|
-
if (!this.dialogAreItemsLoaded && this.dialogUseDataProvider) {
|
|
80
|
-
this.dialogIsLoadingSubject.next(true);
|
|
81
|
-
const queryParamBuilder = MediusQueryParamBuilder.create(50);
|
|
82
|
-
if (this.descriptor.lookupTableDescriptor.hasDefaultSort) {
|
|
83
|
-
this.descriptor.lookupTableDescriptor.defaultSortProperty.forEach((p, idx) => queryParamBuilder.withSort(p, this.descriptor.lookupTableDescriptor.defaultSortAsc[idx]));
|
|
84
|
-
}
|
|
85
|
-
if (this.descriptor.hasLookupExcludeValues) {
|
|
86
|
-
const filterValues = this.formControl.value.map((i) => i[this.descriptor.excludeValueProperty]);
|
|
87
|
-
queryParamBuilder.withFilter(this.descriptor.excludeFilterProperty, filterValues, undefined, MediusFilterMatchType.NotIn);
|
|
88
|
-
}
|
|
89
|
-
this.lookupDataProviderSubscription = this.descriptor.lookupTableDataProvider?.getAll(queryParamBuilder.build(), this.dialogDataProviderService).subscribe({
|
|
90
|
-
next: res => {
|
|
91
|
-
this.addItemsSubject.next(res);
|
|
92
|
-
this.dialogAreItemsLoaded = true;
|
|
93
|
-
this.dialogIsLoadingSubject.next(false);
|
|
94
|
-
},
|
|
95
|
-
error: () => {
|
|
96
|
-
this.dialogIsLoadingSubject.next(false);
|
|
97
|
-
}
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
this.dialogSelectedAddItems = [];
|
|
101
|
-
this.isDialogVisible = true;
|
|
102
|
-
this.descriptor.nextEvent(MngFormFieldEventTypeEnum.DialogLifecycle, MngFormlyFieldTableDialogMultiselectComponent, this, {
|
|
103
|
-
eventSubtype: MngFormFieldEventDialogSubtype.VISIBILITY,
|
|
104
|
-
dialogVisible: true
|
|
105
|
-
});
|
|
106
|
-
}
|
|
107
|
-
onSelectionChange(items) {
|
|
108
|
-
this.dialogSelectedAddItems = items;
|
|
109
|
-
}
|
|
110
|
-
hideDialog() {
|
|
111
|
-
this.isDialogVisible = false;
|
|
112
|
-
this.descriptor.nextEvent(MngFormFieldEventTypeEnum.DialogLifecycle, MngFormlyFieldTableDialogMultiselectComponent, this, {
|
|
113
|
-
eventSubtype: MngFormFieldEventDialogSubtype.VISIBILITY,
|
|
114
|
-
dialogVisible: false
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
addItems() {
|
|
118
|
-
let value = this.formControl.value;
|
|
119
|
-
if (!Array.isArray(value)) {
|
|
120
|
-
value = [];
|
|
121
|
-
}
|
|
122
|
-
value = [...value, ...this.dialogSelectedAddItems];
|
|
123
|
-
this.formControl.patchValue(value);
|
|
124
|
-
this.dialogSelectedAddItems = [];
|
|
125
|
-
this.dialogAreItemsLoaded = false;
|
|
126
|
-
this.hideDialog();
|
|
127
|
-
}
|
|
128
|
-
removeItem(item) {
|
|
129
|
-
let value = this.formControl.value;
|
|
130
|
-
if (!Array.isArray(value)) {
|
|
131
|
-
value = [];
|
|
132
|
-
}
|
|
133
|
-
const compareProperty = this.descriptor.mainTableDescriptor.dataKeyProperty
|
|
134
|
-
? this.descriptor.mainTableDescriptor.dataKeyProperty
|
|
135
|
-
: this.descriptor.mainTableDescriptor.model.idPropertyName;
|
|
136
|
-
if (!compareProperty) {
|
|
137
|
-
throw new Error('Cannot compare items, please provide main table data key property or model id property.');
|
|
138
|
-
}
|
|
139
|
-
value = value.filter((i) => i[compareProperty] !== item[compareProperty]);
|
|
140
|
-
this.formControl.patchValue(value);
|
|
141
|
-
this.dialogAreItemsLoaded = false;
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
MngFormlyFieldTableDialogMultiselectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngFormlyFieldTableDialogMultiselectComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
145
|
-
MngFormlyFieldTableDialogMultiselectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: MngFormlyFieldTableDialogMultiselectComponent, selector: "mng-formly-table-multiselect-add-field", usesInheritance: true, ngImport: i0, template: "<mng-table [descriptor]=\"descriptor.mainTableDescriptor\" [items]=\"itemsAsync\">\n <ng-template mngTemplate=\"caption\">\n <div class=\"flex flex-column md:flex-row md:justify-content-end align-items-center table-header pt-0\">\n <label class=\"mng-datatable-form-label p-0 m-0\" [for]=\"key\">{{ to?.label! | translate }} <span *ngIf=\"to.required && to['hideRequiredMarker'] !== true\">*</span></label>\n <button\n *ngIf=\"hasAddAction && !options?.formState?.disabled\"\n pButton\n pRipple\n type=\"button\"\n icon=\"pi pi-plus\"\n class=\"p-button-rounded p-button-success mng-button-xs\"\n (click)=\"openAddDialog()\"\n [disabled]=\"formControl!.disabled\"></button>\n </div>\n </ng-template>\n <ng-template mngTemplate=\"columnAction\" let-item=\"rowItem\">\n <button\n *ngIf=\"hasDeleteAction && !options?.formState?.disabled\"\n pButton\n pRipple\n type=\"button\"\n icon=\"pi pi-trash\"\n class=\"p-button-rounded p-button-danger mng-button-xs\"\n (click)=\"removeItem(item)\"\n [disabled]=\"formControl!.disabled\"></button>\n </ng-template>\n</mng-table>\n\n<p-dialog\n *ngIf=\"hasAddAction\"\n [(visible)]=\"isDialogVisible\"\n [draggable]=\"false\"\n [header]=\"'general.addItem' | translate: {item: to?.label! | translate}\"\n [modal]=\"true\"\n appendTo=\"body\"\n styleClass=\"p-fluid mng-field-dialog mng-action-editor-dialog mng-action-editor-dialog-sm\">\n <ng-template pTemplate=\"content\" class=\"table-container\">\n <div class=\"table-scroll\">\n <mng-table\n [descriptor]=\"descriptor.mainTableDescriptor\"\n [queryResult]=\"addItemsAsync\"\n [selectionEnabled]=\"true\"\n [loading]=\"dialogIsLoading$\"\n (selectionChange)=\"onSelectionChange($event)\">\n </mng-table>\n </div>\n <p-messages [value]=\"dialogMessages\"></p-messages>\n\n <div class=\"table-footer\">\n <button pButton pRipple type=\"button\" [label]=\"'general.cancel' | translate\" icon=\"pi pi-times\" class=\"p-button-text\" (click)=\"hideDialog()\"></button>\n <button\n pButton\n pRipple\n type=\"button\"\n [label]=\"'general.add' | translate\"\n icon=\"pi pi-check\"\n class=\"p-button-primary\"\n (click)=\"addItems()\"\n [loading]=\"(dialogIsLoading$ | async) ?? false\"\n [disabled]=\"form.disabled\"></button>\n </div>\n </ng-template>\n</p-dialog>\n", styles: [".table-footer{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:flex-end;align-items:center;align-content:center;margin-top:2rem}.table-container{overflow:hidden}.table-footer button{width:8rem}.table-footer button:not(:first-child){margin-left:1.5rem}.table-scroll{max-height:75vh;overflow-y:auto}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i3.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i4.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "component", type: i5.Messages, selector: "p-messages", inputs: ["value", "closable", "style", "styleClass", "enableService", "key", "escape", "severity", "showTransitionOptions", "hideTransitionOptions"], outputs: ["valueChange"] }, { kind: "directive", type: i6.Ripple, selector: "[pRipple]" }, { kind: "directive", type: i7.MngTemplateDirective, selector: "[mngTemplate]", inputs: ["type", "mngTemplate"] }, { kind: "component", type: i8.MngTableComponent, selector: "mng-table", inputs: ["descriptor", "items", "queryResult", "loading", "dataProvider", "useQueryParams", "selectionMode", "selectionEnabled", "actions", "isColumnClickable", "viewContainer", "captionComponent", "columnActionComponent", "columnActionMinWidth"], outputs: ["tableLoad", "cellClick", "selectionChange", "captionComponentInstance", "columnActionComponentInstance"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
146
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngFormlyFieldTableDialogMultiselectComponent, decorators: [{
|
|
147
|
-
type: Component,
|
|
148
|
-
args: [{ selector: 'mng-formly-table-multiselect-add-field', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mng-table [descriptor]=\"descriptor.mainTableDescriptor\" [items]=\"itemsAsync\">\n <ng-template mngTemplate=\"caption\">\n <div class=\"flex flex-column md:flex-row md:justify-content-end align-items-center table-header pt-0\">\n <label class=\"mng-datatable-form-label p-0 m-0\" [for]=\"key\">{{ to?.label! | translate }} <span *ngIf=\"to.required && to['hideRequiredMarker'] !== true\">*</span></label>\n <button\n *ngIf=\"hasAddAction && !options?.formState?.disabled\"\n pButton\n pRipple\n type=\"button\"\n icon=\"pi pi-plus\"\n class=\"p-button-rounded p-button-success mng-button-xs\"\n (click)=\"openAddDialog()\"\n [disabled]=\"formControl!.disabled\"></button>\n </div>\n </ng-template>\n <ng-template mngTemplate=\"columnAction\" let-item=\"rowItem\">\n <button\n *ngIf=\"hasDeleteAction && !options?.formState?.disabled\"\n pButton\n pRipple\n type=\"button\"\n icon=\"pi pi-trash\"\n class=\"p-button-rounded p-button-danger mng-button-xs\"\n (click)=\"removeItem(item)\"\n [disabled]=\"formControl!.disabled\"></button>\n </ng-template>\n</mng-table>\n\n<p-dialog\n *ngIf=\"hasAddAction\"\n [(visible)]=\"isDialogVisible\"\n [draggable]=\"false\"\n [header]=\"'general.addItem' | translate: {item: to?.label! | translate}\"\n [modal]=\"true\"\n appendTo=\"body\"\n styleClass=\"p-fluid mng-field-dialog mng-action-editor-dialog mng-action-editor-dialog-sm\">\n <ng-template pTemplate=\"content\" class=\"table-container\">\n <div class=\"table-scroll\">\n <mng-table\n [descriptor]=\"descriptor.mainTableDescriptor\"\n [queryResult]=\"addItemsAsync\"\n [selectionEnabled]=\"true\"\n [loading]=\"dialogIsLoading$\"\n (selectionChange)=\"onSelectionChange($event)\">\n </mng-table>\n </div>\n <p-messages [value]=\"dialogMessages\"></p-messages>\n\n <div class=\"table-footer\">\n <button pButton pRipple type=\"button\" [label]=\"'general.cancel' | translate\" icon=\"pi pi-times\" class=\"p-button-text\" (click)=\"hideDialog()\"></button>\n <button\n pButton\n pRipple\n type=\"button\"\n [label]=\"'general.add' | translate\"\n icon=\"pi pi-check\"\n class=\"p-button-primary\"\n (click)=\"addItems()\"\n [loading]=\"(dialogIsLoading$ | async) ?? false\"\n [disabled]=\"form.disabled\"></button>\n </div>\n </ng-template>\n</p-dialog>\n", styles: [".table-footer{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:flex-end;align-items:center;align-content:center;margin-top:2rem}.table-container{overflow:hidden}.table-footer button{width:8rem}.table-footer button:not(:first-child){margin-left:1.5rem}.table-scroll{max-height:75vh;overflow-y:auto}\n"] }]
|
|
149
|
-
}], ctorParameters: function () { return [{ type: i0.Injector }]; } });
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { FieldType } from '@ngx-formly/core';
|
|
3
|
+
import { ReplaySubject, distinctUntilChanged } from 'rxjs';
|
|
4
|
+
import { startWith } from 'rxjs/operators';
|
|
5
|
+
import { MediusFilterMatchType, MediusQueryParamBuilder } from '../../../../../api/models';
|
|
6
|
+
import { FieldManyToManyEditorActionEnum } from '../../../../../descriptors/types';
|
|
7
|
+
import { MngFormFieldEventComponentSubtype, MngFormFieldEventDialogSubtype, MngFormFieldEventTypeEnum } from '../../../models';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "@angular/common";
|
|
10
|
+
import * as i2 from "primeng/api";
|
|
11
|
+
import * as i3 from "primeng/button";
|
|
12
|
+
import * as i4 from "primeng/dialog";
|
|
13
|
+
import * as i5 from "primeng/messages";
|
|
14
|
+
import * as i6 from "primeng/ripple";
|
|
15
|
+
import * as i7 from "../../../../../directives/template.directive";
|
|
16
|
+
import * as i8 from "../../../../tableview/table/table.component";
|
|
17
|
+
import * as i9 from "@ngx-translate/core";
|
|
18
|
+
export class MngFormlyFieldTableDialogMultiselectComponent extends FieldType {
|
|
19
|
+
constructor(injector) {
|
|
20
|
+
super();
|
|
21
|
+
this.injector = injector;
|
|
22
|
+
this.itemsSubject = new ReplaySubject(1);
|
|
23
|
+
this.itemsAsync = this.itemsSubject.asObservable();
|
|
24
|
+
this.addItemsSubject = new ReplaySubject(1);
|
|
25
|
+
this.addItemsAsync = this.addItemsSubject.asObservable();
|
|
26
|
+
this.dialogUseDataProvider = false;
|
|
27
|
+
this.dialogDataProviderService = null;
|
|
28
|
+
this.dialogIsLoadingSubject = new ReplaySubject(1);
|
|
29
|
+
this.isDialogVisible = false;
|
|
30
|
+
this.dialogAreItemsLoaded = false;
|
|
31
|
+
this.dialogSelectedAddItems = [];
|
|
32
|
+
this.dialogMessages = [];
|
|
33
|
+
this.dialogIsLoading$ = this.dialogIsLoadingSubject.asObservable();
|
|
34
|
+
this.hasAddAction = false;
|
|
35
|
+
this.hasDeleteAction = false;
|
|
36
|
+
this.subscriptions = [];
|
|
37
|
+
}
|
|
38
|
+
ngOnInit() {
|
|
39
|
+
this.descriptor = this.to['descriptor'];
|
|
40
|
+
if (this.descriptor.lookupTableDataProvider?.serviceType) {
|
|
41
|
+
this.dialogUseDataProvider = true;
|
|
42
|
+
this.dialogDataProviderService = this.injector.get(this.descriptor.lookupTableDataProvider.serviceType);
|
|
43
|
+
}
|
|
44
|
+
this.hasAddAction = this.descriptor.actions.some(a => a === FieldManyToManyEditorActionEnum.Add);
|
|
45
|
+
this.hasDeleteAction = this.descriptor.actions.some(a => a === FieldManyToManyEditorActionEnum.Delete);
|
|
46
|
+
// init values
|
|
47
|
+
if (typeof this.formControl.value === 'undefined' || this.formControl.value === null) {
|
|
48
|
+
this.formControl.patchValue([]);
|
|
49
|
+
}
|
|
50
|
+
// emit lifecycle event
|
|
51
|
+
this.descriptor?.nextEvent(MngFormFieldEventTypeEnum.ComponentLifecycle, MngFormlyFieldTableDialogMultiselectComponent, this, {
|
|
52
|
+
eventSubtype: MngFormFieldEventComponentSubtype.ON_INIT
|
|
53
|
+
});
|
|
54
|
+
const subscription = this.formControl.valueChanges.pipe(startWith(this.formControl.value), distinctUntilChanged()).subscribe(v => {
|
|
55
|
+
this.itemsSubject.next(v ?? []);
|
|
56
|
+
// emit lifecycle event
|
|
57
|
+
this.descriptor.nextEvent(MngFormFieldEventTypeEnum.ValueChange, MngFormlyFieldTableDialogMultiselectComponent, this, {
|
|
58
|
+
value: v ?? []
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
this.subscriptions.push(subscription);
|
|
62
|
+
}
|
|
63
|
+
ngAfterViewInit() {
|
|
64
|
+
// emit lifecycle event
|
|
65
|
+
this.descriptor?.nextEvent(MngFormFieldEventTypeEnum.ComponentLifecycle, MngFormlyFieldTableDialogMultiselectComponent, this, {
|
|
66
|
+
eventSubtype: MngFormFieldEventComponentSubtype.ON_VIEW_INIT
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
ngOnDestroy() {
|
|
70
|
+
// warning: formly calls on destroy before on init
|
|
71
|
+
this.lookupDataProviderSubscription?.unsubscribe();
|
|
72
|
+
this.subscriptions.forEach(s => s.unsubscribe());
|
|
73
|
+
// emit lifecycle event
|
|
74
|
+
this.descriptor?.nextEvent(MngFormFieldEventTypeEnum.ComponentLifecycle, MngFormlyFieldTableDialogMultiselectComponent, this, {
|
|
75
|
+
eventSubtype: MngFormFieldEventComponentSubtype.ON_DESTROY
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
openAddDialog() {
|
|
79
|
+
if (!this.dialogAreItemsLoaded && this.dialogUseDataProvider) {
|
|
80
|
+
this.dialogIsLoadingSubject.next(true);
|
|
81
|
+
const queryParamBuilder = MediusQueryParamBuilder.create(50);
|
|
82
|
+
if (this.descriptor.lookupTableDescriptor.hasDefaultSort) {
|
|
83
|
+
this.descriptor.lookupTableDescriptor.defaultSortProperty.forEach((p, idx) => queryParamBuilder.withSort(p, this.descriptor.lookupTableDescriptor.defaultSortAsc[idx]));
|
|
84
|
+
}
|
|
85
|
+
if (this.descriptor.hasLookupExcludeValues) {
|
|
86
|
+
const filterValues = this.formControl.value.map((i) => i[this.descriptor.excludeValueProperty]);
|
|
87
|
+
queryParamBuilder.withFilter(this.descriptor.excludeFilterProperty, filterValues, undefined, MediusFilterMatchType.NotIn);
|
|
88
|
+
}
|
|
89
|
+
this.lookupDataProviderSubscription = this.descriptor.lookupTableDataProvider?.getAll(queryParamBuilder.build(), this.dialogDataProviderService).subscribe({
|
|
90
|
+
next: res => {
|
|
91
|
+
this.addItemsSubject.next(res);
|
|
92
|
+
this.dialogAreItemsLoaded = true;
|
|
93
|
+
this.dialogIsLoadingSubject.next(false);
|
|
94
|
+
},
|
|
95
|
+
error: () => {
|
|
96
|
+
this.dialogIsLoadingSubject.next(false);
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
this.dialogSelectedAddItems = [];
|
|
101
|
+
this.isDialogVisible = true;
|
|
102
|
+
this.descriptor.nextEvent(MngFormFieldEventTypeEnum.DialogLifecycle, MngFormlyFieldTableDialogMultiselectComponent, this, {
|
|
103
|
+
eventSubtype: MngFormFieldEventDialogSubtype.VISIBILITY,
|
|
104
|
+
dialogVisible: true
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
onSelectionChange(items) {
|
|
108
|
+
this.dialogSelectedAddItems = items;
|
|
109
|
+
}
|
|
110
|
+
hideDialog() {
|
|
111
|
+
this.isDialogVisible = false;
|
|
112
|
+
this.descriptor.nextEvent(MngFormFieldEventTypeEnum.DialogLifecycle, MngFormlyFieldTableDialogMultiselectComponent, this, {
|
|
113
|
+
eventSubtype: MngFormFieldEventDialogSubtype.VISIBILITY,
|
|
114
|
+
dialogVisible: false
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
addItems() {
|
|
118
|
+
let value = this.formControl.value;
|
|
119
|
+
if (!Array.isArray(value)) {
|
|
120
|
+
value = [];
|
|
121
|
+
}
|
|
122
|
+
value = [...value, ...this.dialogSelectedAddItems];
|
|
123
|
+
this.formControl.patchValue(value);
|
|
124
|
+
this.dialogSelectedAddItems = [];
|
|
125
|
+
this.dialogAreItemsLoaded = false;
|
|
126
|
+
this.hideDialog();
|
|
127
|
+
}
|
|
128
|
+
removeItem(item) {
|
|
129
|
+
let value = this.formControl.value;
|
|
130
|
+
if (!Array.isArray(value)) {
|
|
131
|
+
value = [];
|
|
132
|
+
}
|
|
133
|
+
const compareProperty = this.descriptor.mainTableDescriptor.dataKeyProperty
|
|
134
|
+
? this.descriptor.mainTableDescriptor.dataKeyProperty
|
|
135
|
+
: this.descriptor.mainTableDescriptor.model.idPropertyName;
|
|
136
|
+
if (!compareProperty) {
|
|
137
|
+
throw new Error('Cannot compare items, please provide main table data key property or model id property.');
|
|
138
|
+
}
|
|
139
|
+
value = value.filter((i) => i[compareProperty] !== item[compareProperty]);
|
|
140
|
+
this.formControl.patchValue(value);
|
|
141
|
+
this.dialogAreItemsLoaded = false;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
MngFormlyFieldTableDialogMultiselectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngFormlyFieldTableDialogMultiselectComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
145
|
+
MngFormlyFieldTableDialogMultiselectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: MngFormlyFieldTableDialogMultiselectComponent, selector: "mng-formly-table-multiselect-add-field", usesInheritance: true, ngImport: i0, template: "<mng-table [descriptor]=\"descriptor.mainTableDescriptor\" [items]=\"itemsAsync\">\n <ng-template mngTemplate=\"caption\">\n <div class=\"flex flex-column md:flex-row md:justify-content-end align-items-center table-header pt-0\">\n <label class=\"mng-datatable-form-label p-0 m-0\" [for]=\"key\">{{ to?.label! | translate }} <span *ngIf=\"to.required && to['hideRequiredMarker'] !== true\">*</span></label>\n <button\n *ngIf=\"hasAddAction && !options?.formState?.disabled\"\n pButton\n pRipple\n type=\"button\"\n icon=\"pi pi-plus\"\n class=\"p-button-rounded p-button-success mng-button-xs\"\n (click)=\"openAddDialog()\"\n [disabled]=\"formControl!.disabled\"></button>\n </div>\n </ng-template>\n <ng-template mngTemplate=\"columnAction\" let-item=\"rowItem\">\n <button\n *ngIf=\"hasDeleteAction && !options?.formState?.disabled\"\n pButton\n pRipple\n type=\"button\"\n icon=\"pi pi-trash\"\n class=\"p-button-rounded p-button-danger mng-button-xs\"\n (click)=\"removeItem(item)\"\n [disabled]=\"formControl!.disabled\"></button>\n </ng-template>\n</mng-table>\n\n<p-dialog\n *ngIf=\"hasAddAction\"\n [(visible)]=\"isDialogVisible\"\n [draggable]=\"false\"\n [header]=\"'general.addItem' | translate: {item: to?.label! | translate}\"\n [modal]=\"true\"\n appendTo=\"body\"\n styleClass=\"p-fluid mng-field-dialog mng-action-editor-dialog mng-action-editor-dialog-sm\">\n <ng-template pTemplate=\"content\" class=\"table-container\">\n <div class=\"table-scroll\">\n <mng-table\n [descriptor]=\"descriptor.mainTableDescriptor\"\n [queryResult]=\"addItemsAsync\"\n [selectionEnabled]=\"true\"\n [loading]=\"dialogIsLoading$\"\n (selectionChange)=\"onSelectionChange($event)\">\n </mng-table>\n </div>\n <p-messages [value]=\"dialogMessages\"></p-messages>\n\n <div class=\"table-footer\">\n <button pButton pRipple type=\"button\" [label]=\"'general.cancel' | translate\" icon=\"pi pi-times\" class=\"p-button-text\" (click)=\"hideDialog()\"></button>\n <button\n pButton\n pRipple\n type=\"button\"\n [label]=\"'general.add' | translate\"\n icon=\"pi pi-check\"\n class=\"p-button-primary\"\n (click)=\"addItems()\"\n [loading]=\"(dialogIsLoading$ | async) ?? false\"\n [disabled]=\"form.disabled\"></button>\n </div>\n </ng-template>\n</p-dialog>\n", styles: [".table-footer{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:flex-end;align-items:center;align-content:center;margin-top:2rem}.table-container{overflow:hidden}.table-footer button{width:8rem}.table-footer button:not(:first-child){margin-left:1.5rem}.table-scroll{max-height:75vh;overflow-y:auto}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i3.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i4.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "component", type: i5.Messages, selector: "p-messages", inputs: ["value", "closable", "style", "styleClass", "enableService", "key", "escape", "severity", "showTransitionOptions", "hideTransitionOptions"], outputs: ["valueChange"] }, { kind: "directive", type: i6.Ripple, selector: "[pRipple]" }, { kind: "directive", type: i7.MngTemplateDirective, selector: "[mngTemplate]", inputs: ["type", "mngTemplate"] }, { kind: "component", type: i8.MngTableComponent, selector: "mng-table", inputs: ["descriptor", "items", "queryResult", "loading", "dataProvider", "useQueryParams", "selectionMode", "selectionEnabled", "actions", "isColumnClickable", "viewContainer", "captionComponent", "columnActionComponent", "columnActionMinWidth"], outputs: ["tableLoad", "cellClick", "selectionChange", "captionComponentInstance", "columnActionComponentInstance"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
146
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngFormlyFieldTableDialogMultiselectComponent, decorators: [{
|
|
147
|
+
type: Component,
|
|
148
|
+
args: [{ selector: 'mng-formly-table-multiselect-add-field', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mng-table [descriptor]=\"descriptor.mainTableDescriptor\" [items]=\"itemsAsync\">\n <ng-template mngTemplate=\"caption\">\n <div class=\"flex flex-column md:flex-row md:justify-content-end align-items-center table-header pt-0\">\n <label class=\"mng-datatable-form-label p-0 m-0\" [for]=\"key\">{{ to?.label! | translate }} <span *ngIf=\"to.required && to['hideRequiredMarker'] !== true\">*</span></label>\n <button\n *ngIf=\"hasAddAction && !options?.formState?.disabled\"\n pButton\n pRipple\n type=\"button\"\n icon=\"pi pi-plus\"\n class=\"p-button-rounded p-button-success mng-button-xs\"\n (click)=\"openAddDialog()\"\n [disabled]=\"formControl!.disabled\"></button>\n </div>\n </ng-template>\n <ng-template mngTemplate=\"columnAction\" let-item=\"rowItem\">\n <button\n *ngIf=\"hasDeleteAction && !options?.formState?.disabled\"\n pButton\n pRipple\n type=\"button\"\n icon=\"pi pi-trash\"\n class=\"p-button-rounded p-button-danger mng-button-xs\"\n (click)=\"removeItem(item)\"\n [disabled]=\"formControl!.disabled\"></button>\n </ng-template>\n</mng-table>\n\n<p-dialog\n *ngIf=\"hasAddAction\"\n [(visible)]=\"isDialogVisible\"\n [draggable]=\"false\"\n [header]=\"'general.addItem' | translate: {item: to?.label! | translate}\"\n [modal]=\"true\"\n appendTo=\"body\"\n styleClass=\"p-fluid mng-field-dialog mng-action-editor-dialog mng-action-editor-dialog-sm\">\n <ng-template pTemplate=\"content\" class=\"table-container\">\n <div class=\"table-scroll\">\n <mng-table\n [descriptor]=\"descriptor.mainTableDescriptor\"\n [queryResult]=\"addItemsAsync\"\n [selectionEnabled]=\"true\"\n [loading]=\"dialogIsLoading$\"\n (selectionChange)=\"onSelectionChange($event)\">\n </mng-table>\n </div>\n <p-messages [value]=\"dialogMessages\"></p-messages>\n\n <div class=\"table-footer\">\n <button pButton pRipple type=\"button\" [label]=\"'general.cancel' | translate\" icon=\"pi pi-times\" class=\"p-button-text\" (click)=\"hideDialog()\"></button>\n <button\n pButton\n pRipple\n type=\"button\"\n [label]=\"'general.add' | translate\"\n icon=\"pi pi-check\"\n class=\"p-button-primary\"\n (click)=\"addItems()\"\n [loading]=\"(dialogIsLoading$ | async) ?? false\"\n [disabled]=\"form.disabled\"></button>\n </div>\n </ng-template>\n</p-dialog>\n", styles: [".table-footer{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:flex-end;align-items:center;align-content:center;margin-top:2rem}.table-container{overflow:hidden}.table-footer button{width:8rem}.table-footer button:not(:first-child){margin-left:1.5rem}.table-scroll{max-height:75vh;overflow-y:auto}\n"] }]
|
|
149
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }]; } });
|
|
150
150
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWx5LWZpZWxkLXRhYmxlLWRpYWxvZy1tdWx0aXNlbGVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9mb3JtbHkvZmllbGRzL2Zvcm1seS1maWVsZC10YWJsZS1kaWFsb2ctbXVsdGlzZWxlY3QvZm9ybWx5LWZpZWxkLXRhYmxlLWRpYWxvZy1tdWx0aXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9mb3JtbHkvZmllbGRzL2Zvcm1seS1maWVsZC10YWJsZS1kaWFsb2ctbXVsdGlzZWxlY3QvZm9ybWx5LWZpZWxkLXRhYmxlLWRpYWxvZy1tdWx0aXNlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdCLHVCQUF1QixFQUFFLFNBQVMsRUFBOEIsTUFBTSxlQUFlLENBQUM7QUFFN0csT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBRTNDLE9BQU8sRUFBYSxhQUFhLEVBQXlCLG9CQUFvQixFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzVGLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6QyxPQUFPLEVBQUMscUJBQXFCLEVBQUUsdUJBQXVCLEVBQW9CLE1BQU0sMkJBQTJCLENBQUM7QUFFNUcsT0FBTyxFQUFDLCtCQUErQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDakYsT0FBTyxFQUFDLGlDQUFpQyxFQUFFLDhCQUE4QixFQUFFLHlCQUF5QixFQUFDLE1BQU0saUJBQWlCLENBQUM7Ozs7Ozs7Ozs7O0FBUTdILE1BQU0sT0FBTyw2Q0FBcUQsU0FBUSxTQUFTO0lBd0IvRSxZQUFvQixRQUFrQjtRQUNsQyxLQUFLLEVBQUUsQ0FBQztRQURRLGFBQVEsR0FBUixRQUFRLENBQVU7UUFyQi9CLGlCQUFZLEdBQXNCLElBQUksYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELGVBQVUsR0FBeUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwRSxvQkFBZSxHQUFrQyxJQUFJLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0RSxrQkFBYSxHQUFxQyxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRXRGLDBCQUFxQixHQUFHLEtBQUssQ0FBQztRQUM3Qiw4QkFBeUIsR0FBUSxJQUFJLENBQUM7UUFDdEMsMkJBQXNCLEdBQUcsSUFBSSxhQUFhLENBQVUsQ0FBQyxDQUFDLENBQUM7UUFFeEQsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFDeEIseUJBQW9CLEdBQUcsS0FBSyxDQUFDO1FBQzdCLDJCQUFzQixHQUFlLEVBQUUsQ0FBQztRQUN4QyxtQkFBYyxHQUFjLEVBQUUsQ0FBQztRQUMvQixxQkFBZ0IsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFOUQsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFDckIsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFHdkIsa0JBQWEsR0FBbUIsRUFBRSxDQUFDO0lBSTNDLENBQUM7SUFFTSxRQUFRO1FBQ1gsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3hDLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyx1QkFBdUIsRUFBRSxXQUFXLEVBQUU7WUFDdEQsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQztZQUNsQyxJQUFJLENBQUMseUJBQXlCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyx1QkFBdUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUNoSDtRQUNELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLCtCQUErQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pHLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLCtCQUErQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRXZHLGNBQWM7UUFDZCxJQUFJLE9BQU8sSUFBSSxDQUFDLFdBQVksQ0FBQyxLQUFLLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxXQUFZLENBQUMsS0FBSyxLQUFLLElBQUksRUFBRTtZQUNwRixJQUFJLENBQUMsV0FBWSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNwQztRQUVELHVCQUF1QjtRQUN2QixJQUFJLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQyx5QkFBeUIsQ0FBQyxrQkFBa0IsRUFBRSw2Q0FBNkMsRUFBRSxJQUFJLEVBQUU7WUFDMUgsWUFBWSxFQUFFLGlDQUFpQyxDQUFDLE9BQU87U0FDMUQsQ0FBQyxDQUFDO1FBRUgsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBWSxDQUFDLEtBQUssQ0FBQyxFQUFFLG9CQUFvQixFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDL0gsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBRWhDLHVCQUF1QjtZQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyx5QkFBeUIsQ0FBQyxXQUFXLEVBQUUsNkNBQTZDLEVBQUUsSUFBSSxFQUFFO2dCQUNsSCxLQUFLLEVBQUUsQ0FBQyxJQUFJLEVBQUU7YUFDakIsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRU0sZUFBZTtRQUNsQix1QkFBdUI7UUFDdkIsSUFBSSxDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUMseUJBQXlCLENBQUMsa0JBQWtCLEVBQUUsNkNBQTZDLEVBQUUsSUFBSSxFQUFFO1lBQzFILFlBQVksRUFBRSxpQ0FBaUMsQ0FBQyxZQUFZO1NBQy9ELENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxXQUFXO1FBQ2Qsa0RBQWtEO1FBRWxELElBQUksQ0FBQyw4QkFBOEIsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUNuRCxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBRWpELHVCQUF1QjtRQUN2QixJQUFJLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQyx5QkFBeUIsQ0FBQyxrQkFBa0IsRUFBRSw2Q0FBNkMsRUFBRSxJQUFJLEVBQUU7WUFDMUgsWUFBWSxFQUFFLGlDQUFpQyxDQUFDLFVBQVU7U0FDN0QsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELGFBQWE7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixJQUFJLElBQUksQ0FBQyxxQkFBcUIsRUFBRTtZQUMxRCxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3ZDLE1BQU0saUJBQWlCLEdBQUcsdUJBQXVCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzdELElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLEVBQUU7Z0JBQ3RELElBQUksQ0FBQyxVQUFVLENBQUMscUJBQXFCLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQ3pFLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDM0YsQ0FBQzthQUNMO1lBQ0QsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLHNCQUFzQixFQUFFO2dCQUN4QyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsV0FBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQztnQkFDdEcsaUJBQWlCLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMscUJBQXFCLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUM3SDtZQUNELElBQUksQ0FBQyw4QkFBOEIsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLHVCQUF1QixFQUFFLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLENBQUMseUJBQXlCLENBQUMsQ0FBQyxTQUFTLENBQUM7Z0JBQ3ZKLElBQUksRUFBRSxHQUFHLENBQUMsRUFBRTtvQkFDUixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFDL0IsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQztvQkFDakMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDNUMsQ0FBQztnQkFDRCxLQUFLLEVBQUUsR0FBRyxFQUFFO29CQUNSLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzVDLENBQUM7YUFDSixDQUFDLENBQUM7U0FDTjtRQUNELElBQUksQ0FBQyxzQkFBc0IsR0FBRyxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7UUFFNUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMseUJBQXlCLENBQUMsZUFBZSxFQUFFLDZDQUE2QyxFQUFFLElBQUksRUFBRTtZQUN0SCxZQUFZLEVBQUUsOEJBQThCLENBQUMsVUFBVTtZQUN2RCxhQUFhLEVBQUUsSUFBSTtTQUN0QixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsS0FBaUI7UUFDL0IsSUFBSSxDQUFDLHNCQUFzQixHQUFHLEtBQUssQ0FBQztJQUN4QyxDQUFDO0lBRUQsVUFBVTtRQUNOLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO1FBRTdCLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLHlCQUF5QixDQUFDLGVBQWUsRUFBRSw2Q0FBNkMsRUFBRSxJQUFJLEVBQUU7WUFDdEgsWUFBWSxFQUFFLDhCQUE4QixDQUFDLFVBQVU7WUFDdkQsYUFBYSxFQUFFLEtBQUs7U0FDdkIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBWSxDQUFDLEtBQUssQ0FBQztRQUNwQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN2QixLQUFLLEdBQUcsRUFBRSxDQUFDO1NBQ2Q7UUFDRCxLQUFLLEdBQUcsQ0FBQyxHQUFHLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyxXQUFZLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQztRQUNsQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFTO1FBQ2hCLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFZLENBQUMsS0FBSyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3ZCLEtBQUssR0FBRyxFQUFFLENBQUM7U0FDZDtRQUNELE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsbUJBQW1CLENBQUMsZUFBZTtZQUN2RSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlO1lBQ3JELENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUM7UUFDL0QsSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUNsQixNQUFNLElBQUksS0FBSyxDQUFDLHlGQUF5RixDQUFDLENBQUM7U0FDOUc7UUFDRCxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxLQUFLLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO1FBQy9FLElBQUksQ0FBQyxXQUFZLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxLQUFLLENBQUM7SUFDdEMsQ0FBQzs7MElBckpRLDZDQUE2Qzs4SEFBN0MsNkNBQTZDLHFHQ2xCMUQsb3hGQStEQTsyRkQ3Q2EsNkNBQTZDO2tCQU56RCxTQUFTOytCQUNJLHdDQUF3QyxtQkFHakMsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5qZWN0b3IsIE9uRGVzdHJveSwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtGaWVsZFR5cGV9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHtNZXNzYWdlfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQge09ic2VydmFibGUsIFJlcGxheVN1YmplY3QsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiwgZGlzdGluY3RVbnRpbENoYW5nZWR9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtzdGFydFdpdGh9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtNZWRpdXNGaWx0ZXJNYXRjaFR5cGUsIE1lZGl1c1F1ZXJ5UGFyYW1CdWlsZGVyLCBNZWRpdXNRdWVyeVJlc3VsdH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vYXBpL21vZGVscyc7XG5pbXBvcnQge0ZpZWxkTWFueVRvTWFueUVkaXRvckRlc2NyaXB0b3J9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2Rlc2NyaXB0b3JzJztcbmltcG9ydCB7RmllbGRNYW55VG9NYW55RWRpdG9yQWN0aW9uRW51bX0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZGVzY3JpcHRvcnMvdHlwZXMnO1xuaW1wb3J0IHtNbmdGb3JtRmllbGRFdmVudENvbXBvbmVudFN1YnR5cGUsIE1uZ0Zvcm1GaWVsZEV2ZW50RGlhbG9nU3VidHlwZSwgTW5nRm9ybUZpZWxkRXZlbnRUeXBlRW51bX0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdtbmctZm9ybWx5LXRhYmxlLW11bHRpc2VsZWN0LWFkZC1maWVsZCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Zvcm1seS1maWVsZC10YWJsZS1kaWFsb2ctbXVsdGlzZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2Zvcm1seS1maWVsZC10YWJsZS1kaWFsb2ctbXVsdGlzZWxlY3QuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBNbmdGb3JtbHlGaWVsZFRhYmxlRGlhbG9nTXVsdGlzZWxlY3RDb21wb25lbnQ8VCwgRVQ+IGV4dGVuZHMgRmllbGRUeXBlIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICAgIHB1YmxpYyBkZXNjcmlwdG9yITogRmllbGRNYW55VG9NYW55RWRpdG9yRGVzY3JpcHRvcjxULCBFVD47XG5cbiAgICBwdWJsaWMgaXRlbXNTdWJqZWN0OiBTdWJqZWN0PEFycmF5PFQ+PiA9IG5ldyBSZXBsYXlTdWJqZWN0KDEpO1xuICAgIHB1YmxpYyBpdGVtc0FzeW5jOiBPYnNlcnZhYmxlPEFycmF5PFQ+PiA9IHRoaXMuaXRlbXNTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuICAgIHB1YmxpYyBhZGRJdGVtc1N1YmplY3Q6IFN1YmplY3Q8TWVkaXVzUXVlcnlSZXN1bHQ8VD4+ID0gbmV3IFJlcGxheVN1YmplY3QoMSk7XG4gICAgcHVibGljIGFkZEl0ZW1zQXN5bmM6IE9ic2VydmFibGU8TWVkaXVzUXVlcnlSZXN1bHQ8VD4+ID0gdGhpcy5hZGRJdGVtc1N1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG5cbiAgICBwdWJsaWMgZGlhbG9nVXNlRGF0YVByb3ZpZGVyID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBkaWFsb2dEYXRhUHJvdmlkZXJTZXJ2aWNlOiBhbnkgPSBudWxsO1xuICAgIHByaXZhdGUgZGlhbG9nSXNMb2FkaW5nU3ViamVjdCA9IG5ldyBSZXBsYXlTdWJqZWN0PGJvb2xlYW4+KDEpO1xuXG4gICAgcHVibGljIGlzRGlhbG9nVmlzaWJsZSA9IGZhbHNlO1xuICAgIHB1YmxpYyBkaWFsb2dBcmVJdGVtc0xvYWRlZCA9IGZhbHNlO1xuICAgIHB1YmxpYyBkaWFsb2dTZWxlY3RlZEFkZEl0ZW1zOiBBcnJheTxhbnk+ID0gW107XG4gICAgcHVibGljIGRpYWxvZ01lc3NhZ2VzOiBNZXNzYWdlW10gPSBbXTtcbiAgICBwdWJsaWMgZGlhbG9nSXNMb2FkaW5nJCA9IHRoaXMuZGlhbG9nSXNMb2FkaW5nU3ViamVjdC5hc09ic2VydmFibGUoKTtcblxuICAgIHB1YmxpYyBoYXNBZGRBY3Rpb24gPSBmYWxzZTtcbiAgICBwdWJsaWMgaGFzRGVsZXRlQWN0aW9uID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIGxvb2t1cERhdGFQcm92aWRlclN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcbiAgICBwcml2YXRlIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5kZXNjcmlwdG9yID0gdGhpcy50b1snZGVzY3JpcHRvciddO1xuICAgICAgICBpZiAodGhpcy5kZXNjcmlwdG9yLmxvb2t1cFRhYmxlRGF0YVByb3ZpZGVyPy5zZXJ2aWNlVHlwZSkge1xuICAgICAgICAgICAgdGhpcy5kaWFsb2dVc2VEYXRhUHJvdmlkZXIgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5kaWFsb2dEYXRhUHJvdmlkZXJTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQ8YW55Pih0aGlzLmRlc2NyaXB0b3IubG9va3VwVGFibGVEYXRhUHJvdmlkZXIuc2VydmljZVR5cGUpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaGFzQWRkQWN0aW9uID0gdGhpcy5kZXNjcmlwdG9yLmFjdGlvbnMuc29tZShhID0+IGEgPT09IEZpZWxkTWFueVRvTWFueUVkaXRvckFjdGlvbkVudW0uQWRkKTtcbiAgICAgICAgdGhpcy5oYXNEZWxldGVBY3Rpb24gPSB0aGlzLmRlc2NyaXB0b3IuYWN0aW9ucy5zb21lKGEgPT4gYSA9PT0gRmllbGRNYW55VG9NYW55RWRpdG9yQWN0aW9uRW51bS5EZWxldGUpO1xuXG4gICAgICAgIC8vIGluaXQgdmFsdWVzXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5mb3JtQ29udHJvbCEudmFsdWUgPT09ICd1bmRlZmluZWQnIHx8IHRoaXMuZm9ybUNvbnRyb2whLnZhbHVlID09PSBudWxsKSB7XG4gICAgICAgICAgICB0aGlzLmZvcm1Db250cm9sIS5wYXRjaFZhbHVlKFtdKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGVtaXQgbGlmZWN5Y2xlIGV2ZW50XG4gICAgICAgIHRoaXMuZGVzY3JpcHRvcj8ubmV4dEV2ZW50KE1uZ0Zvcm1GaWVsZEV2ZW50VHlwZUVudW0uQ29tcG9uZW50TGlmZWN5Y2xlLCBNbmdGb3JtbHlGaWVsZFRhYmxlRGlhbG9nTXVsdGlzZWxlY3RDb21wb25lbnQsIHRoaXMsIHtcbiAgICAgICAgICAgIGV2ZW50U3VidHlwZTogTW5nRm9ybUZpZWxkRXZlbnRDb21wb25lbnRTdWJ0eXBlLk9OX0lOSVRcbiAgICAgICAgfSk7XG5cbiAgICAgICAgY29uc3Qgc3Vic2NyaXB0aW9uID0gdGhpcy5mb3JtQ29udHJvbCEudmFsdWVDaGFuZ2VzLnBpcGUoc3RhcnRXaXRoKHRoaXMuZm9ybUNvbnRyb2whLnZhbHVlKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSkuc3Vic2NyaWJlKHYgPT4ge1xuICAgICAgICAgICAgdGhpcy5pdGVtc1N1YmplY3QubmV4dCh2ID8/IFtdKTtcblxuICAgICAgICAgICAgLy8gZW1pdCBsaWZlY3ljbGUgZXZlbnRcbiAgICAgICAgICAgIHRoaXMuZGVzY3JpcHRvci5uZXh0RXZlbnQoTW5nRm9ybUZpZWxkRXZlbnRUeXBlRW51bS5WYWx1ZUNoYW5nZSwgTW5nRm9ybWx5RmllbGRUYWJsZURpYWxvZ011bHRpc2VsZWN0Q29tcG9uZW50LCB0aGlzLCB7XG4gICAgICAgICAgICAgICAgdmFsdWU6IHYgPz8gW11cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goc3Vic2NyaXB0aW9uKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICAvLyBlbWl0IGxpZmVjeWNsZSBldmVudFxuICAgICAgICB0aGlzLmRlc2NyaXB0b3I/Lm5leHRFdmVudChNbmdGb3JtRmllbGRFdmVudFR5cGVFbnVtLkNvbXBvbmVudExpZmVjeWNsZSwgTW5nRm9ybWx5RmllbGRUYWJsZURpYWxvZ011bHRpc2VsZWN0Q29tcG9uZW50LCB0aGlzLCB7XG4gICAgICAgICAgICBldmVudFN1YnR5cGU6IE1uZ0Zvcm1GaWVsZEV2ZW50Q29tcG9uZW50U3VidHlwZS5PTl9WSUVXX0lOSVRcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgICAgICAvLyB3YXJuaW5nOiBmb3JtbHkgY2FsbHMgb24gZGVzdHJveSBiZWZvcmUgb24gaW5pdFxuXG4gICAgICAgIHRoaXMubG9va3VwRGF0YVByb3ZpZGVyU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbnMuZm9yRWFjaChzID0+IHMudW5zdWJzY3JpYmUoKSk7XG5cbiAgICAgICAgLy8gZW1pdCBsaWZlY3ljbGUgZXZlbnRcbiAgICAgICAgdGhpcy5kZXNjcmlwdG9yPy5uZXh0RXZlbnQoTW5nRm9ybUZpZWxkRXZlbnRUeXBlRW51bS5Db21wb25lbnRMaWZlY3ljbGUsIE1uZ0Zvcm1seUZpZWxkVGFibGVEaWFsb2dNdWx0aXNlbGVjdENvbXBvbmVudCwgdGhpcywge1xuICAgICAgICAgICAgZXZlbnRTdWJ0eXBlOiBNbmdGb3JtRmllbGRFdmVudENvbXBvbmVudFN1YnR5cGUuT05fREVTVFJPWVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvcGVuQWRkRGlhbG9nKCkge1xuICAgICAgICBpZiAoIXRoaXMuZGlhbG9nQXJlSXRlbXNMb2FkZWQgJiYgdGhpcy5kaWFsb2dVc2VEYXRhUHJvdmlkZXIpIHtcbiAgICAgICAgICAgIHRoaXMuZGlhbG9nSXNMb2FkaW5nU3ViamVjdC5uZXh0KHRydWUpO1xuICAgICAgICAgICAgY29uc3QgcXVlcnlQYXJhbUJ1aWxkZXIgPSBNZWRpdXNRdWVyeVBhcmFtQnVpbGRlci5jcmVhdGUoNTApO1xuICAgICAgICAgICAgaWYgKHRoaXMuZGVzY3JpcHRvci5sb29rdXBUYWJsZURlc2NyaXB0b3IuaGFzRGVmYXVsdFNvcnQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRlc2NyaXB0b3IubG9va3VwVGFibGVEZXNjcmlwdG9yLmRlZmF1bHRTb3J0UHJvcGVydHkuZm9yRWFjaCgocCwgaWR4KSA9PlxuICAgICAgICAgICAgICAgICAgICBxdWVyeVBhcmFtQnVpbGRlci53aXRoU29ydChwLCB0aGlzLmRlc2NyaXB0b3IubG9va3VwVGFibGVEZXNjcmlwdG9yLmRlZmF1bHRTb3J0QXNjW2lkeF0pXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLmRlc2NyaXB0b3IuaGFzTG9va3VwRXhjbHVkZVZhbHVlcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZpbHRlclZhbHVlcyA9IHRoaXMuZm9ybUNvbnRyb2whLnZhbHVlLm1hcCgoaTogYW55KSA9PiBpW3RoaXMuZGVzY3JpcHRvci5leGNsdWRlVmFsdWVQcm9wZXJ0eV0pO1xuICAgICAgICAgICAgICAgIHF1ZXJ5UGFyYW1CdWlsZGVyLndpdGhGaWx0ZXIodGhpcy5kZXNjcmlwdG9yLmV4Y2x1ZGVGaWx0ZXJQcm9wZXJ0eSwgZmlsdGVyVmFsdWVzLCB1bmRlZmluZWQsIE1lZGl1c0ZpbHRlck1hdGNoVHlwZS5Ob3RJbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmxvb2t1cERhdGFQcm92aWRlclN1YnNjcmlwdGlvbiA9IHRoaXMuZGVzY3JpcHRvci5sb29rdXBUYWJsZURhdGFQcm92aWRlcj8uZ2V0QWxsKHF1ZXJ5UGFyYW1CdWlsZGVyLmJ1aWxkKCksIHRoaXMuZGlhbG9nRGF0YVByb3ZpZGVyU2VydmljZSkuc3Vic2NyaWJlKHtcbiAgICAgICAgICAgICAgICBuZXh0OiByZXMgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZEl0ZW1zU3ViamVjdC5uZXh0KHJlcyk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGlhbG9nQXJlSXRlbXNMb2FkZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ0lzTG9hZGluZ1N1YmplY3QubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBlcnJvcjogKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ0lzTG9hZGluZ1N1YmplY3QubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5kaWFsb2dTZWxlY3RlZEFkZEl0ZW1zID0gW107XG4gICAgICAgIHRoaXMuaXNEaWFsb2dWaXNpYmxlID0gdHJ1ZTtcblxuICAgICAgICB0aGlzLmRlc2NyaXB0b3IubmV4dEV2ZW50KE1uZ0Zvcm1GaWVsZEV2ZW50VHlwZUVudW0uRGlhbG9nTGlmZWN5Y2xlLCBNbmdGb3JtbHlGaWVsZFRhYmxlRGlhbG9nTXVsdGlzZWxlY3RDb21wb25lbnQsIHRoaXMsIHtcbiAgICAgICAgICAgIGV2ZW50U3VidHlwZTogTW5nRm9ybUZpZWxkRXZlbnREaWFsb2dTdWJ0eXBlLlZJU0lCSUxJVFksXG4gICAgICAgICAgICBkaWFsb2dWaXNpYmxlOiB0cnVlXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG9uU2VsZWN0aW9uQ2hhbmdlKGl0ZW1zOiBBcnJheTxhbnk+KSB7XG4gICAgICAgIHRoaXMuZGlhbG9nU2VsZWN0ZWRBZGRJdGVtcyA9IGl0ZW1zO1xuICAgIH1cblxuICAgIGhpZGVEaWFsb2coKSB7XG4gICAgICAgIHRoaXMuaXNEaWFsb2dWaXNpYmxlID0gZmFsc2U7XG5cbiAgICAgICAgdGhpcy5kZXNjcmlwdG9yLm5leHRFdmVudChNbmdGb3JtRmllbGRFdmVudFR5cGVFbnVtLkRpYWxvZ0xpZmVjeWNsZSwgTW5nRm9ybWx5RmllbGRUYWJsZURpYWxvZ011bHRpc2VsZWN0Q29tcG9uZW50LCB0aGlzLCB7XG4gICAgICAgICAgICBldmVudFN1YnR5cGU6IE1uZ0Zvcm1GaWVsZEV2ZW50RGlhbG9nU3VidHlwZS5WSVNJQklMSVRZLFxuICAgICAgICAgICAgZGlhbG9nVmlzaWJsZTogZmFsc2VcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgYWRkSXRlbXMoKSB7XG4gICAgICAgIGxldCB2YWx1ZSA9IHRoaXMuZm9ybUNvbnRyb2whLnZhbHVlO1xuICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgICAgICB2YWx1ZSA9IFtdO1xuICAgICAgICB9XG4gICAgICAgIHZhbHVlID0gWy4uLnZhbHVlLCAuLi50aGlzLmRpYWxvZ1NlbGVjdGVkQWRkSXRlbXNdO1xuICAgICAgICB0aGlzLmZvcm1Db250cm9sIS5wYXRjaFZhbHVlKHZhbHVlKTtcbiAgICAgICAgdGhpcy5kaWFsb2dTZWxlY3RlZEFkZEl0ZW1zID0gW107XG4gICAgICAgIHRoaXMuZGlhbG9nQXJlSXRlbXNMb2FkZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5oaWRlRGlhbG9nKCk7XG4gICAgfVxuXG4gICAgcmVtb3ZlSXRlbShpdGVtOiBhbnkpIHtcbiAgICAgICAgbGV0IHZhbHVlID0gdGhpcy5mb3JtQ29udHJvbCEudmFsdWU7XG4gICAgICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAgIHZhbHVlID0gW107XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY29tcGFyZVByb3BlcnR5ID0gdGhpcy5kZXNjcmlwdG9yLm1haW5UYWJsZURlc2NyaXB0b3IuZGF0YUtleVByb3BlcnR5XG4gICAgICAgICAgICA/IHRoaXMuZGVzY3JpcHRvci5tYWluVGFibGVEZXNjcmlwdG9yLmRhdGFLZXlQcm9wZXJ0eVxuICAgICAgICAgICAgOiB0aGlzLmRlc2NyaXB0b3IubWFpblRhYmxlRGVzY3JpcHRvci5tb2RlbC5pZFByb3BlcnR5TmFtZTtcbiAgICAgICAgaWYgKCFjb21wYXJlUHJvcGVydHkpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGNvbXBhcmUgaXRlbXMsIHBsZWFzZSBwcm92aWRlIG1haW4gdGFibGUgZGF0YSBrZXkgcHJvcGVydHkgb3IgbW9kZWwgaWQgcHJvcGVydHkuJyk7XG4gICAgICAgIH1cbiAgICAgICAgdmFsdWUgPSB2YWx1ZS5maWx0ZXIoKGk6IGFueSkgPT4gaVtjb21wYXJlUHJvcGVydHldICE9PSBpdGVtW2NvbXBhcmVQcm9wZXJ0eV0pO1xuICAgICAgICB0aGlzLmZvcm1Db250cm9sIS5wYXRjaFZhbHVlKHZhbHVlKTtcbiAgICAgICAgdGhpcy5kaWFsb2dBcmVJdGVtc0xvYWRlZCA9IGZhbHNlO1xuICAgIH1cbn1cbiIsIjxtbmctdGFibGUgW2Rlc2NyaXB0b3JdPVwiZGVzY3JpcHRvci5tYWluVGFibGVEZXNjcmlwdG9yXCIgW2l0ZW1zXT1cIml0ZW1zQXN5bmNcIj5cbiAgICA8bmctdGVtcGxhdGUgbW5nVGVtcGxhdGU9XCJjYXB0aW9uXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sdW1uIG1kOmZsZXgtcm93IG1kOmp1c3RpZnktY29udGVudC1lbmQgYWxpZ24taXRlbXMtY2VudGVyIHRhYmxlLWhlYWRlciBwdC0wXCI+XG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJtbmctZGF0YXRhYmxlLWZvcm0tbGFiZWwgcC0wIG0tMFwiIFtmb3JdPVwia2V5XCI+e3sgdG8/LmxhYmVsISB8IHRyYW5zbGF0ZSB9fSA8c3BhbiAqbmdJZj1cInRvLnJlcXVpcmVkICYmIHRvWydoaWRlUmVxdWlyZWRNYXJrZXInXSAhPT0gdHJ1ZVwiPio8L3NwYW4+PC9sYWJlbD5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAqbmdJZj1cImhhc0FkZEFjdGlvbiAmJiAhb3B0aW9ucz8uZm9ybVN0YXRlPy5kaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgcEJ1dHRvblxuICAgICAgICAgICAgICAgIHBSaXBwbGVcbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBpY29uPVwicGkgcGktcGx1c1wiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJwLWJ1dHRvbi1yb3VuZGVkIHAtYnV0dG9uLXN1Y2Nlc3MgbW5nLWJ1dHRvbi14c1wiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9wZW5BZGREaWFsb2coKVwiXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZvcm1Db250cm9sIS5kaXNhYmxlZFwiPjwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSBtbmdUZW1wbGF0ZT1cImNvbHVtbkFjdGlvblwiIGxldC1pdGVtPVwicm93SXRlbVwiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAqbmdJZj1cImhhc0RlbGV0ZUFjdGlvbiAmJiAhb3B0aW9ucz8uZm9ybVN0YXRlPy5kaXNhYmxlZFwiXG4gICAgICAgICAgICBwQnV0dG9uXG4gICAgICAgICAgICBwUmlwcGxlXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIGljb249XCJwaSBwaS10cmFzaFwiXG4gICAgICAgICAgICBjbGFzcz1cInAtYnV0dG9uLXJvdW5kZWQgcC1idXR0b24tZGFuZ2VyIG1uZy1idXR0b24teHNcIlxuICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZUl0ZW0oaXRlbSlcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZvcm1Db250cm9sIS5kaXNhYmxlZFwiPjwvYnV0dG9uPlxuICAgIDwvbmctdGVtcGxhdGU+XG48L21uZy10YWJsZT5cblxuPHAtZGlhbG9nXG4gICAgKm5nSWY9XCJoYXNBZGRBY3Rpb25cIlxuICAgIFsodmlzaWJsZSldPVwiaXNEaWFsb2dWaXNpYmxlXCJcbiAgICBbZHJhZ2dhYmxlXT1cImZhbHNlXCJcbiAgICBbaGVhZGVyXT1cIidnZW5lcmFsLmFkZEl0ZW0nIHwgdHJhbnNsYXRlOiB7aXRlbTogdG8/LmxhYmVsISB8IHRyYW5zbGF0ZX1cIlxuICAgIFttb2RhbF09XCJ0cnVlXCJcbiAgICBhcHBlbmRUbz1cImJvZHlcIlxuICAgIHN0eWxlQ2xhc3M9XCJwLWZsdWlkIG1uZy1maWVsZC1kaWFsb2cgbW5nLWFjdGlvbi1lZGl0b3ItZGlhbG9nIG1uZy1hY3Rpb24tZWRpdG9yLWRpYWxvZy1zbVwiPlxuICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJjb250ZW50XCIgY2xhc3M9XCJ0YWJsZS1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLXNjcm9sbFwiPlxuICAgICAgICAgICAgPG1uZy10YWJsZVxuICAgICAgICAgICAgICAgIFtkZXNjcmlwdG9yXT1cImRlc2NyaXB0b3IubWFpblRhYmxlRGVzY3JpcHRvclwiXG4gICAgICAgICAgICAgICAgW3F1ZXJ5UmVzdWx0XT1cImFkZEl0ZW1zQXN5bmNcIlxuICAgICAgICAgICAgICAgIFtzZWxlY3Rpb25FbmFibGVkXT1cInRydWVcIlxuICAgICAgICAgICAgICAgIFtsb2FkaW5nXT1cImRpYWxvZ0lzTG9hZGluZyRcIlxuICAgICAgICAgICAgICAgIChzZWxlY3Rpb25DaGFuZ2UpPVwib25TZWxlY3Rpb25DaGFuZ2UoJGV2ZW50KVwiPlxuICAgICAgICAgICAgPC9tbmctdGFibGU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8cC1tZXNzYWdlcyBbdmFsdWVdPVwiZGlhbG9nTWVzc2FnZXNcIj48L3AtbWVzc2FnZXM+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLWZvb3RlclwiPlxuICAgICAgICAgICAgPGJ1dHRvbiBwQnV0dG9uIHBSaXBwbGUgdHlwZT1cImJ1dHRvblwiIFtsYWJlbF09XCInZ2VuZXJhbC5jYW5jZWwnIHwgdHJhbnNsYXRlXCIgaWNvbj1cInBpIHBpLXRpbWVzXCIgY2xhc3M9XCJwLWJ1dHRvbi10ZXh0XCIgKGNsaWNrKT1cImhpZGVEaWFsb2coKVwiPjwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIHBCdXR0b25cbiAgICAgICAgICAgICAgICBwUmlwcGxlXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgW2xhYmVsXT1cIidnZW5lcmFsLmFkZCcgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgIGljb249XCJwaSBwaS1jaGVja1wiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJwLWJ1dHRvbi1wcmltYXJ5XCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiYWRkSXRlbXMoKVwiXG4gICAgICAgICAgICAgICAgW2xvYWRpbmddPVwiKGRpYWxvZ0lzTG9hZGluZyQgfCBhc3luYykgPz8gZmFsc2VcIlxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmb3JtLmRpc2FibGVkXCI+PC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG48L3AtZGlhbG9nPlxuIl19
|
package/esm2020/lib/components/form/formly/fields/formly-field-tabs/formly-field-tabs.component.mjs
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
-
import { FieldType } from '@ngx-formly/core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
import * as i2 from "@ngx-formly/core";
|
|
6
|
-
import * as i3 from "primeng/api";
|
|
7
|
-
import * as i4 from "primeng/tabview";
|
|
8
|
-
import * as i5 from "@ngx-translate/core";
|
|
9
|
-
export class MngFormlyFieldTabsComponent extends FieldType {
|
|
10
|
-
}
|
|
11
|
-
MngFormlyFieldTabsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngFormlyFieldTabsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
-
MngFormlyFieldTabsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: MngFormlyFieldTabsComponent, selector: "mng-formly-field-tabs", usesInheritance: true, ngImport: i0, template: "<p-tabView>\n <p-tabPanel\n *ngFor=\"let tab of field.fieldGroup; let i = index; let last = last\"\n [header]=\"tab.props?.label! | translate\"\n [headerStyleClass]=\"$any(formControl!.valid ? 'p-tabview-title' : null)\">\n <ng-template pTemplate=\"header\">\n <span class=\"p-tabview-title\" [class.p-tabview-title-error]=\"formState.submittedOn && formState['tab_' + (tab.id ? tab.id : tab.props?.label!) + '_invalid']\">{{\n tab.props?.label! | translate\n }}</span>\n </ng-template>\n <formly-field [field]=\"tab\"></formly-field>\n </p-tabPanel>\n</p-tabView>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.FormlyField, selector: "formly-field", inputs: ["field"] }, { kind: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i4.TabView, selector: "p-tabView", inputs: ["orientation", "style", "styleClass", "controlClose", "scrollable", "activeIndex"], outputs: ["onChange", "onClose", "activeIndexChange"] }, { kind: "component", type: i4.TabPanel, selector: "p-tabPanel", inputs: ["closable", "headerStyle", "headerStyleClass", "cache", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "selected", "disabled", "header", "leftIcon", "rightIcon"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngFormlyFieldTabsComponent, decorators: [{
|
|
14
|
-
type: Component,
|
|
15
|
-
args: [{ selector: 'mng-formly-field-tabs', changeDetection: ChangeDetectionStrategy.OnPush, template: "<p-tabView>\n <p-tabPanel\n *ngFor=\"let tab of field.fieldGroup; let i = index; let last = last\"\n [header]=\"tab.props?.label! | translate\"\n [headerStyleClass]=\"$any(formControl!.valid ? 'p-tabview-title' : null)\">\n <ng-template pTemplate=\"header\">\n <span class=\"p-tabview-title\" [class.p-tabview-title-error]=\"formState.submittedOn && formState['tab_' + (tab.id ? tab.id : tab.props?.label!) + '_invalid']\">{{\n tab.props?.label! | translate\n }}</span>\n </ng-template>\n <formly-field [field]=\"tab\"></formly-field>\n </p-tabPanel>\n</p-tabView>\n" }]
|
|
16
|
-
}] });
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { FieldType } from '@ngx-formly/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@ngx-formly/core";
|
|
6
|
+
import * as i3 from "primeng/api";
|
|
7
|
+
import * as i4 from "primeng/tabview";
|
|
8
|
+
import * as i5 from "@ngx-translate/core";
|
|
9
|
+
export class MngFormlyFieldTabsComponent extends FieldType {
|
|
10
|
+
}
|
|
11
|
+
MngFormlyFieldTabsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngFormlyFieldTabsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
+
MngFormlyFieldTabsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: MngFormlyFieldTabsComponent, selector: "mng-formly-field-tabs", usesInheritance: true, ngImport: i0, template: "<p-tabView>\n <p-tabPanel\n *ngFor=\"let tab of field.fieldGroup; let i = index; let last = last\"\n [header]=\"tab.props?.label! | translate\"\n [headerStyleClass]=\"$any(formControl!.valid ? 'p-tabview-title' : null)\">\n <ng-template pTemplate=\"header\">\n <span class=\"p-tabview-title\" [class.p-tabview-title-error]=\"formState.submittedOn && formState['tab_' + (tab.id ? tab.id : tab.props?.label!) + '_invalid']\">{{\n tab.props?.label! | translate\n }}</span>\n </ng-template>\n <formly-field [field]=\"tab\"></formly-field>\n </p-tabPanel>\n</p-tabView>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.FormlyField, selector: "formly-field", inputs: ["field"] }, { kind: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i4.TabView, selector: "p-tabView", inputs: ["orientation", "style", "styleClass", "controlClose", "scrollable", "activeIndex"], outputs: ["onChange", "onClose", "activeIndexChange"] }, { kind: "component", type: i4.TabPanel, selector: "p-tabPanel", inputs: ["closable", "headerStyle", "headerStyleClass", "cache", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "selected", "disabled", "header", "leftIcon", "rightIcon"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngFormlyFieldTabsComponent, decorators: [{
|
|
14
|
+
type: Component,
|
|
15
|
+
args: [{ selector: 'mng-formly-field-tabs', changeDetection: ChangeDetectionStrategy.OnPush, template: "<p-tabView>\n <p-tabPanel\n *ngFor=\"let tab of field.fieldGroup; let i = index; let last = last\"\n [header]=\"tab.props?.label! | translate\"\n [headerStyleClass]=\"$any(formControl!.valid ? 'p-tabview-title' : null)\">\n <ng-template pTemplate=\"header\">\n <span class=\"p-tabview-title\" [class.p-tabview-title-error]=\"formState.submittedOn && formState['tab_' + (tab.id ? tab.id : tab.props?.label!) + '_invalid']\">{{\n tab.props?.label! | translate\n }}</span>\n </ng-template>\n <formly-field [field]=\"tab\"></formly-field>\n </p-tabPanel>\n</p-tabView>\n" }]
|
|
16
|
+
}] });
|
|
17
17
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWx5LWZpZWxkLXRhYnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vZm9ybWx5L2ZpZWxkcy9mb3JtbHktZmllbGQtdGFicy9mb3JtbHktZmllbGQtdGFicy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9mb3JtbHkvZmllbGRzL2Zvcm1seS1maWVsZC10YWJzL2Zvcm1seS1maWVsZC10YWJzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFakUsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7O0FBTzNDLE1BQU0sT0FBTywyQkFBNEIsU0FBUSxTQUFTOzt3SEFBN0MsMkJBQTJCOzRHQUEzQiwyQkFBMkIsb0ZDVHhDLDZvQkFhQTsyRkRKYSwyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0ksdUJBQXVCLG1CQUVoQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50fSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtGaWVsZFR5cGV9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ21uZy1mb3JtbHktZmllbGQtdGFicycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Zvcm1seS1maWVsZC10YWJzLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBNbmdGb3JtbHlGaWVsZFRhYnNDb21wb25lbnQgZXh0ZW5kcyBGaWVsZFR5cGUge31cbiIsIjxwLXRhYlZpZXc+XG4gICAgPHAtdGFiUGFuZWxcbiAgICAgICAgKm5nRm9yPVwibGV0IHRhYiBvZiBmaWVsZC5maWVsZEdyb3VwOyBsZXQgaSA9IGluZGV4OyBsZXQgbGFzdCA9IGxhc3RcIlxuICAgICAgICBbaGVhZGVyXT1cInRhYi5wcm9wcz8ubGFiZWwhIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgW2hlYWRlclN0eWxlQ2xhc3NdPVwiJGFueShmb3JtQ29udHJvbCEudmFsaWQgPyAncC10YWJ2aWV3LXRpdGxlJyA6IG51bGwpXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicC10YWJ2aWV3LXRpdGxlXCIgW2NsYXNzLnAtdGFidmlldy10aXRsZS1lcnJvcl09XCJmb3JtU3RhdGUuc3VibWl0dGVkT24gJiYgZm9ybVN0YXRlWyd0YWJfJyArICh0YWIuaWQgPyB0YWIuaWQgOiB0YWIucHJvcHM/LmxhYmVsISkgKyAnX2ludmFsaWQnXVwiPnt7XG4gICAgICAgICAgICAgICAgdGFiLnByb3BzPy5sYWJlbCEgfCB0cmFuc2xhdGVcbiAgICAgICAgICAgIH19PC9zcGFuPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8Zm9ybWx5LWZpZWxkIFtmaWVsZF09XCJ0YWJcIj48L2Zvcm1seS1maWVsZD5cbiAgICA8L3AtdGFiUGFuZWw+XG48L3AtdGFiVmlldz5cbiJdfQ==
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
export * from './formly-field-autocomplete/formly-field-autocomplete.component';
|
|
2
|
-
export * from './formly-field-input/formly-field-input.component';
|
|
3
|
-
export * from './formly-field-label/formly-field-label.component';
|
|
4
|
-
export * from './formly-field-dropdown/formly-field-dropdown.component';
|
|
5
|
-
export * from './formly-field-lookup-dialog/formly-field-lookup-dialog.component';
|
|
6
|
-
export * from './formly-field-table-dialog-form/formly-field-table-dialog-form.component';
|
|
7
|
-
export * from './formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component';
|
|
8
|
-
export * from './formly-field-tabs/formly-field-tabs.component';
|
|
9
|
-
export * from './formly-field-fieldset/formly-field-fieldset.component';
|
|
1
|
+
export * from './formly-field-autocomplete/formly-field-autocomplete.component';
|
|
2
|
+
export * from './formly-field-input/formly-field-input.component';
|
|
3
|
+
export * from './formly-field-label/formly-field-label.component';
|
|
4
|
+
export * from './formly-field-dropdown/formly-field-dropdown.component';
|
|
5
|
+
export * from './formly-field-lookup-dialog/formly-field-lookup-dialog.component';
|
|
6
|
+
export * from './formly-field-table-dialog-form/formly-field-table-dialog-form.component';
|
|
7
|
+
export * from './formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component';
|
|
8
|
+
export * from './formly-field-tabs/formly-field-tabs.component';
|
|
9
|
+
export * from './formly-field-fieldset/formly-field-fieldset.component';
|
|
10
10
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9mb3JtbHkvZmllbGRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYyxtRUFBbUUsQ0FBQztBQUNsRixjQUFjLDJFQUEyRSxDQUFDO0FBQzFGLGNBQWMseUZBQXlGLENBQUM7QUFDeEcsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLHlEQUF5RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mb3JtbHktZmllbGQtYXV0b2NvbXBsZXRlL2Zvcm1seS1maWVsZC1hdXRvY29tcGxldGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybWx5LWZpZWxkLWlucHV0L2Zvcm1seS1maWVsZC1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtbHktZmllbGQtbGFiZWwvZm9ybWx5LWZpZWxkLWxhYmVsLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2Zvcm1seS1maWVsZC1kcm9wZG93bi9mb3JtbHktZmllbGQtZHJvcGRvd24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybWx5LWZpZWxkLWxvb2t1cC1kaWFsb2cvZm9ybWx5LWZpZWxkLWxvb2t1cC1kaWFsb2cuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybWx5LWZpZWxkLXRhYmxlLWRpYWxvZy1mb3JtL2Zvcm1seS1maWVsZC10YWJsZS1kaWFsb2ctZm9ybS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtbHktZmllbGQtdGFibGUtZGlhbG9nLW11bHRpc2VsZWN0L2Zvcm1seS1maWVsZC10YWJsZS1kaWFsb2ctbXVsdGlzZWxlY3QuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybWx5LWZpZWxkLXRhYnMvZm9ybWx5LWZpZWxkLXRhYnMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybWx5LWZpZWxkLWZpZWxkc2V0L2Zvcm1seS1maWVsZC1maWVsZHNldC5jb21wb25lbnQnO1xuIl19
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
-
import { FieldWrapper } from '@ngx-formly/core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
import * as i2 from "@ngx-formly/core";
|
|
6
|
-
import * as i3 from "@ngx-translate/core";
|
|
7
|
-
export class MngFormlyFieldWrapperComponent extends FieldWrapper {
|
|
8
|
-
}
|
|
9
|
-
MngFormlyFieldWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngFormlyFieldWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
10
|
-
MngFormlyFieldWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: MngFormlyFieldWrapperComponent, selector: "mng-formly-field-wrapper", usesInheritance: true, ngImport: i0, template: "<div [class]=\"to?.['descriptor']?.['fieldClassName'] ?? 'field'\">\n <label *ngIf=\"to?.label\" [for]=\"key\" [class]=\"to?.['descriptor']?.['labelClassName'] ?? ''\"\n >{{ to!.label! | translate }} <span *ngIf=\"to.required && to['hideRequiredMarker'] !== true\">*</span></label\n >\n <ng-container #fieldComponent></ng-container>\n <small *ngIf=\"to?.['descriptor']?.['helpText']\">{{ to?.['descriptor']?.['helpText'] | translate }}</small>\n <small *ngIf=\"showError\" class=\"p-error\">\n <formly-validation-message [field]=\"field\"></formly-validation-message>\n </small>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ɵFormlyValidationMessage, selector: "formly-validation-message", inputs: ["field"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngFormlyFieldWrapperComponent, decorators: [{
|
|
12
|
-
type: Component,
|
|
13
|
-
args: [{ selector: 'mng-formly-field-wrapper', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"to?.['descriptor']?.['fieldClassName'] ?? 'field'\">\n <label *ngIf=\"to?.label\" [for]=\"key\" [class]=\"to?.['descriptor']?.['labelClassName'] ?? ''\"\n >{{ to!.label! | translate }} <span *ngIf=\"to.required && to['hideRequiredMarker'] !== true\">*</span></label\n >\n <ng-container #fieldComponent></ng-container>\n <small *ngIf=\"to?.['descriptor']?.['helpText']\">{{ to?.['descriptor']?.['helpText'] | translate }}</small>\n <small *ngIf=\"showError\" class=\"p-error\">\n <formly-validation-message [field]=\"field\"></formly-validation-message>\n </small>\n</div>\n" }]
|
|
14
|
-
}] });
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { FieldWrapper } from '@ngx-formly/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@ngx-formly/core";
|
|
6
|
+
import * as i3 from "@ngx-translate/core";
|
|
7
|
+
export class MngFormlyFieldWrapperComponent extends FieldWrapper {
|
|
8
|
+
}
|
|
9
|
+
MngFormlyFieldWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngFormlyFieldWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
10
|
+
MngFormlyFieldWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: MngFormlyFieldWrapperComponent, selector: "mng-formly-field-wrapper", usesInheritance: true, ngImport: i0, template: "<div [class]=\"to?.['descriptor']?.['fieldClassName'] ?? 'field'\">\n <label *ngIf=\"to?.label\" [for]=\"key\" [class]=\"to?.['descriptor']?.['labelClassName'] ?? ''\"\n >{{ to!.label! | translate }} <span *ngIf=\"to.required && to['hideRequiredMarker'] !== true\">*</span></label\n >\n <ng-container #fieldComponent></ng-container>\n <small *ngIf=\"to?.['descriptor']?.['helpText']\">{{ to?.['descriptor']?.['helpText'] | translate }}</small>\n <small *ngIf=\"showError\" class=\"p-error\">\n <formly-validation-message [field]=\"field\"></formly-validation-message>\n </small>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ɵFormlyValidationMessage, selector: "formly-validation-message", inputs: ["field"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngFormlyFieldWrapperComponent, decorators: [{
|
|
12
|
+
type: Component,
|
|
13
|
+
args: [{ selector: 'mng-formly-field-wrapper', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"to?.['descriptor']?.['fieldClassName'] ?? 'field'\">\n <label *ngIf=\"to?.label\" [for]=\"key\" [class]=\"to?.['descriptor']?.['labelClassName'] ?? ''\"\n >{{ to!.label! | translate }} <span *ngIf=\"to.required && to['hideRequiredMarker'] !== true\">*</span></label\n >\n <ng-container #fieldComponent></ng-container>\n <small *ngIf=\"to?.['descriptor']?.['helpText']\">{{ to?.['descriptor']?.['helpText'] | translate }}</small>\n <small *ngIf=\"showError\" class=\"p-error\">\n <formly-validation-message [field]=\"field\"></formly-validation-message>\n </small>\n</div>\n" }]
|
|
14
|
+
}] });
|
|
15
15
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWx5LWZpZWxkLXdyYXBwZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vZm9ybWx5L3dyYXBwZXJzL2Zvcm1seS1maWVsZC13cmFwcGVyL2Zvcm1seS1maWVsZC13cmFwcGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2Zvcm1seS93cmFwcGVycy9mb3JtbHktZmllbGQtd3JhcHBlci9mb3JtbHktZmllbGQtd3JhcHBlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRWpFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7QUFPOUMsTUFBTSxPQUFPLDhCQUErQixTQUFRLFlBQVk7OzJIQUFuRCw4QkFBOEI7K0dBQTlCLDhCQUE4Qix1RkNUM0MsOG1CQVVBOzJGRERhLDhCQUE4QjtrQkFMMUMsU0FBUzsrQkFDSSwwQkFBMEIsbUJBRW5CLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge0ZpZWxkV3JhcHBlcn0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbW5nLWZvcm1seS1maWVsZC13cmFwcGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZm9ybWx5LWZpZWxkLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIE1uZ0Zvcm1seUZpZWxkV3JhcHBlckNvbXBvbmVudCBleHRlbmRzIEZpZWxkV3JhcHBlciB7fVxuIiwiPGRpdiBbY2xhc3NdPVwidG8/LlsnZGVzY3JpcHRvciddPy5bJ2ZpZWxkQ2xhc3NOYW1lJ10gPz8gJ2ZpZWxkJ1wiPlxuICAgIDxsYWJlbCAqbmdJZj1cInRvPy5sYWJlbFwiIFtmb3JdPVwia2V5XCIgW2NsYXNzXT1cInRvPy5bJ2Rlc2NyaXB0b3InXT8uWydsYWJlbENsYXNzTmFtZSddID8/ICcnXCJcbiAgICAgICAgPnt7IHRvIS5sYWJlbCEgfCB0cmFuc2xhdGUgfX0gPHNwYW4gKm5nSWY9XCJ0by5yZXF1aXJlZCAmJiB0b1snaGlkZVJlcXVpcmVkTWFya2VyJ10gIT09IHRydWVcIj4qPC9zcGFuPjwvbGFiZWxcbiAgICA+XG4gICAgPG5nLWNvbnRhaW5lciAjZmllbGRDb21wb25lbnQ+PC9uZy1jb250YWluZXI+XG4gICAgPHNtYWxsICpuZ0lmPVwidG8/LlsnZGVzY3JpcHRvciddPy5bJ2hlbHBUZXh0J11cIj57eyB0bz8uWydkZXNjcmlwdG9yJ10/LlsnaGVscFRleHQnXSB8IHRyYW5zbGF0ZSB9fTwvc21hbGw+XG4gICAgPHNtYWxsICpuZ0lmPVwic2hvd0Vycm9yXCIgY2xhc3M9XCJwLWVycm9yXCI+XG4gICAgICAgIDxmb3JtbHktdmFsaWRhdGlvbi1tZXNzYWdlIFtmaWVsZF09XCJmaWVsZFwiPjwvZm9ybWx5LXZhbGlkYXRpb24tbWVzc2FnZT5cbiAgICA8L3NtYWxsPlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
-
import { FieldWrapper } from '@ngx-formly/core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
import * as i2 from "@ngx-formly/core";
|
|
6
|
-
import * as i3 from "@ngx-translate/core";
|
|
7
|
-
export class MngFormlyTableWrapperComponent extends FieldWrapper {
|
|
8
|
-
}
|
|
9
|
-
MngFormlyTableWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngFormlyTableWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
10
|
-
MngFormlyTableWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: MngFormlyTableWrapperComponent, selector: "mng-formly-table-wrapper", usesInheritance: true, ngImport: i0, template: "<div [class]=\"to?.['descriptor']?.['fieldClassName'] ?? 'field table'\">\n <ng-container #fieldComponent></ng-container>\n <small *ngIf=\"to?.['descriptor']?.['helpText']\">{{ to?.['descriptor']?.['helpText'] | translate }}</small>\n <small *ngIf=\"showError\" class=\"p-error\">\n <formly-validation-message [field]=\"field\"></formly-validation-message>\n </small>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ɵFormlyValidationMessage, selector: "formly-validation-message", inputs: ["field"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngFormlyTableWrapperComponent, decorators: [{
|
|
12
|
-
type: Component,
|
|
13
|
-
args: [{ selector: 'mng-formly-table-wrapper', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"to?.['descriptor']?.['fieldClassName'] ?? 'field table'\">\n <ng-container #fieldComponent></ng-container>\n <small *ngIf=\"to?.['descriptor']?.['helpText']\">{{ to?.['descriptor']?.['helpText'] | translate }}</small>\n <small *ngIf=\"showError\" class=\"p-error\">\n <formly-validation-message [field]=\"field\"></formly-validation-message>\n </small>\n</div>\n" }]
|
|
14
|
-
}] });
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { FieldWrapper } from '@ngx-formly/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@ngx-formly/core";
|
|
6
|
+
import * as i3 from "@ngx-translate/core";
|
|
7
|
+
export class MngFormlyTableWrapperComponent extends FieldWrapper {
|
|
8
|
+
}
|
|
9
|
+
MngFormlyTableWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngFormlyTableWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
10
|
+
MngFormlyTableWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: MngFormlyTableWrapperComponent, selector: "mng-formly-table-wrapper", usesInheritance: true, ngImport: i0, template: "<div [class]=\"to?.['descriptor']?.['fieldClassName'] ?? 'field table'\">\n <ng-container #fieldComponent></ng-container>\n <small *ngIf=\"to?.['descriptor']?.['helpText']\">{{ to?.['descriptor']?.['helpText'] | translate }}</small>\n <small *ngIf=\"showError\" class=\"p-error\">\n <formly-validation-message [field]=\"field\"></formly-validation-message>\n </small>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ɵFormlyValidationMessage, selector: "formly-validation-message", inputs: ["field"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: MngFormlyTableWrapperComponent, decorators: [{
|
|
12
|
+
type: Component,
|
|
13
|
+
args: [{ selector: 'mng-formly-table-wrapper', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"to?.['descriptor']?.['fieldClassName'] ?? 'field table'\">\n <ng-container #fieldComponent></ng-container>\n <small *ngIf=\"to?.['descriptor']?.['helpText']\">{{ to?.['descriptor']?.['helpText'] | translate }}</small>\n <small *ngIf=\"showError\" class=\"p-error\">\n <formly-validation-message [field]=\"field\"></formly-validation-message>\n </small>\n</div>\n" }]
|
|
14
|
+
}] });
|
|
15
15
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWx5LXRhYmxlLXdyYXBwZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vZm9ybWx5L3dyYXBwZXJzL2Zvcm1seS10YWJsZS13cmFwcGVyL2Zvcm1seS10YWJsZS13cmFwcGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2Zvcm1seS93cmFwcGVycy9mb3JtbHktdGFibGUtd3JhcHBlci9mb3JtbHktdGFibGUtd3JhcHBlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRWpFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7QUFPOUMsTUFBTSxPQUFPLDhCQUErQixTQUFRLFlBQVk7OzJIQUFuRCw4QkFBOEI7K0dBQTlCLDhCQUE4Qix1RkNUM0MsOFlBT0E7MkZERWEsOEJBQThCO2tCQUwxQyxTQUFTOytCQUNJLDBCQUEwQixtQkFFbkIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7RmllbGRXcmFwcGVyfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdtbmctZm9ybWx5LXRhYmxlLXdyYXBwZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9mb3JtbHktdGFibGUtd3JhcHBlci5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgTW5nRm9ybWx5VGFibGVXcmFwcGVyQ29tcG9uZW50IGV4dGVuZHMgRmllbGRXcmFwcGVyIHt9XG4iLCI8ZGl2IFtjbGFzc109XCJ0bz8uWydkZXNjcmlwdG9yJ10/LlsnZmllbGRDbGFzc05hbWUnXSA/PyAnZmllbGQgdGFibGUnXCI+XG4gICAgPG5nLWNvbnRhaW5lciAjZmllbGRDb21wb25lbnQ+PC9uZy1jb250YWluZXI+XG4gICAgPHNtYWxsICpuZ0lmPVwidG8/LlsnZGVzY3JpcHRvciddPy5bJ2hlbHBUZXh0J11cIj57eyB0bz8uWydkZXNjcmlwdG9yJ10/LlsnaGVscFRleHQnXSB8IHRyYW5zbGF0ZSB9fTwvc21hbGw+XG4gICAgPHNtYWxsICpuZ0lmPVwic2hvd0Vycm9yXCIgY2xhc3M9XCJwLWVycm9yXCI+XG4gICAgICAgIDxmb3JtbHktdmFsaWRhdGlvbi1tZXNzYWdlIFtmaWVsZF09XCJmaWVsZFwiPjwvZm9ybWx5LXZhbGlkYXRpb24tbWVzc2FnZT5cbiAgICA8L3NtYWxsPlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * from './formly-field-wrapper/formly-field-wrapper.component';
|
|
2
|
-
export * from './formly-table-wrapper/formly-table-wrapper.component';
|
|
1
|
+
export * from './formly-field-wrapper/formly-field-wrapper.component';
|
|
2
|
+
export * from './formly-table-wrapper/formly-table-wrapper.component';
|
|
3
3
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9mb3JtbHkvd3JhcHBlcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1REFBdUQsQ0FBQztBQUN0RSxjQUFjLHVEQUF1RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mb3JtbHktZmllbGQtd3JhcHBlci9mb3JtbHktZmllbGQtd3JhcHBlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtbHktdGFibGUtd3JhcHBlci9mb3JtbHktdGFibGUtd3JhcHBlci5jb21wb25lbnQnO1xuIl19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './editor/form-editor.component';
|
|
2
|
-
export * from './autocomplete/autocomplete.component';
|
|
3
|
-
export * from './dropdown/dropdown.component';
|
|
1
|
+
export * from './editor/form-editor.component';
|
|
2
|
+
export * from './autocomplete/autocomplete.component';
|
|
3
|
+
export * from './dropdown/dropdown.component';
|
|
4
4
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYywrQkFBK0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZWRpdG9yL2Zvcm0tZWRpdG9yLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50JztcbiJdfQ==
|