@dignite-ng/expand.cms 0.0.51 → 0.0.52
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/config/ng-package.json +6 -0
- package/config/src/cms-config.module.ts +12 -0
- package/config/src/components/domains/domains.component.html +17 -0
- package/config/src/components/domains/domains.component.scss +0 -0
- package/config/src/components/domains/domains.component.spec.ts +21 -0
- package/config/src/components/domains/domains.component.ts +109 -0
- package/config/src/components/site-language/site-language.component.html +31 -0
- package/config/src/components/site-language/site-language.component.scss +0 -0
- package/config/src/components/site-language/site-language.component.spec.ts +21 -0
- package/config/src/components/site-language/site-language.component.ts +117 -0
- package/config/{enums/index.d.ts → src/enums/index.ts} +1 -1
- package/config/src/enums/route-names.ts +8 -0
- package/config/{providers/index.d.ts → src/providers/index.ts} +1 -1
- package/config/src/providers/route.provider.ts +82 -0
- package/config/src/proxy/admin/domains/domain-admin.service.ts +38 -0
- package/config/{proxy/admin/domains/models.d.ts → src/proxy/admin/domains/models.ts} +9 -7
- package/config/src/proxy/dignite/abp/data/index.ts +1 -0
- package/config/src/proxy/dignite/abp/data/models.ts +4 -0
- package/config/src/proxy/dignite/abp/index.ts +2 -0
- package/config/src/proxy/dignite/cms/admin/domains/domain-admin.service.ts +47 -0
- package/config/src/proxy/dignite/cms/admin/domains/index.ts +2 -0
- package/config/src/proxy/dignite/cms/admin/domains/models.ts +9 -0
- package/config/src/proxy/dignite/cms/admin/dynamic-forms/form-admin.service.ts +21 -0
- package/config/src/proxy/dignite/cms/admin/dynamic-forms/models.ts +5 -0
- package/config/src/proxy/dignite/cms/admin/entries/entry-admin.service.ts +109 -0
- package/config/src/proxy/dignite/cms/admin/entries/models.ts +68 -0
- package/config/src/proxy/dignite/cms/admin/fields/field-admin.service.ts +64 -0
- package/config/src/proxy/dignite/cms/admin/fields/field-group-admin.service.ts +56 -0
- package/config/src/proxy/dignite/cms/admin/fields/models.ts +42 -0
- package/config/src/proxy/dignite/cms/admin/index.ts +7 -0
- package/config/src/proxy/dignite/cms/admin/sections/entry-type-admin.service.ts +55 -0
- package/{lib/proxy/admin/sections/models.d.ts → config/src/proxy/dignite/cms/admin/sections/models.ts} +81 -67
- package/config/src/proxy/dignite/cms/admin/sections/section-admin.service.ts +74 -0
- package/config/src/proxy/dignite/cms/admin/sites/models.ts +5 -0
- package/config/src/proxy/dignite/cms/admin/sites/site-admin.service.ts +30 -0
- package/config/src/proxy/dignite/cms/entries/entry-status.enum.ts +8 -0
- package/config/src/proxy/dignite/cms/fields/index.ts +1 -0
- package/config/src/proxy/dignite/cms/fields/models.ts +9 -0
- package/config/src/proxy/dignite/cms/index.ts +6 -0
- package/config/src/proxy/dignite/cms/sections/models.ts +14 -0
- package/config/src/proxy/dignite/cms/sections/section-type.enum.ts +9 -0
- package/config/src/proxy/dignite/cms/sites/index.ts +1 -0
- package/config/src/proxy/dignite/cms/sites/models.ts +5 -0
- package/config/src/proxy/dignite/cms-kit/admin/brand/brand-admin.service.ts +21 -0
- package/config/src/proxy/dignite/cms-kit/admin/brand/index.ts +2 -0
- package/config/src/proxy/dignite/cms-kit/admin/brand/models.ts +7 -0
- package/config/src/proxy/dignite/cms-kit/admin/index.ts +2 -0
- package/config/src/proxy/dignite/cms-kit/brand/brand.service.ts +20 -0
- package/config/src/proxy/dignite/cms-kit/brand/index.ts +2 -0
- package/config/src/proxy/dignite/cms-kit/brand/models.ts +7 -0
- package/config/src/proxy/dignite/cms-kit/index.ts +3 -0
- package/config/src/proxy/dignite/file-explorer/directories/file-descriptor.service.ts +65 -0
- package/config/src/proxy/dignite/file-explorer/directories/index.ts +2 -0
- package/config/src/proxy/dignite/file-explorer/directories/models.ts +35 -0
- package/config/src/proxy/dignite/file-explorer/files/file-descriptor.service.ts +101 -0
- package/config/src/proxy/dignite/file-explorer/files/index.ts +2 -0
- package/config/src/proxy/dignite/file-explorer/files/models.ts +61 -0
- package/config/src/proxy/dignite/file-explorer/index.ts +3 -0
- package/config/src/proxy/dignite/index.ts +6 -0
- package/config/src/proxy/dignite/travely/areas/index.ts +1 -0
- package/config/src/proxy/dignite/travely/areas/models.ts +5 -0
- package/config/src/proxy/dignite/travely/common/index.ts +1 -0
- package/config/src/proxy/dignite/travely/common/models.ts +5 -0
- package/config/src/proxy/dignite/travely/entity-snapshots/index.ts +1 -0
- package/config/src/proxy/dignite/travely/entity-snapshots/models.ts +7 -0
- package/config/src/proxy/dignite/travely/guides/index.ts +1 -0
- package/config/src/proxy/dignite/travely/guides/models.ts +26 -0
- package/config/src/proxy/dignite/travely/index.ts +9 -0
- package/config/src/proxy/dignite/travely/merchants/index.ts +1 -0
- package/config/src/proxy/dignite/travely/merchants/models.ts +9 -0
- package/config/src/proxy/dignite/travely/orders/index.ts +1 -0
- package/config/src/proxy/dignite/travely/orders/models.ts +52 -0
- package/config/src/proxy/dignite/travely/payment/index.ts +1 -0
- package/config/src/proxy/dignite/travely/payment/models.ts +9 -0
- package/config/src/proxy/dignite/travely/tours/booking-time-type.enum.ts +9 -0
- package/config/src/proxy/dignite/travely/tours/index.ts +5 -0
- package/config/src/proxy/dignite/travely/tours/models.ts +77 -0
- package/config/src/proxy/dignite/travely/tours/period-type.enum.ts +9 -0
- package/config/src/proxy/dignite/travely/tours/tour-recommendation-rank.enum.ts +12 -0
- package/config/src/proxy/dignite/travely/tours/tourist-type.enum.ts +8 -0
- package/config/src/proxy/microsoft/asp-net-core/index.ts +2 -0
- package/config/src/proxy/microsoft/asp-net-core/mvc/index.ts +1 -0
- package/config/src/proxy/microsoft/asp-net-core/mvc/models.ts +12 -0
- package/config/src/proxy/microsoft/extensions/index.ts +2 -0
- package/config/src/proxy/microsoft/extensions/primitives/index.ts +1 -0
- package/config/src/proxy/microsoft/extensions/primitives/models.ts +9 -0
- package/config/src/proxy/microsoft/index.ts +4 -0
- package/config/src/proxy/microsoft/net/http/headers/index.ts +1 -0
- package/config/src/proxy/microsoft/net/http/headers/models.ts +7 -0
- package/config/src/proxy/microsoft/net/http/index.ts +2 -0
- package/config/src/proxy/microsoft/net/index.ts +2 -0
- package/config/{public-api.d.ts → src/public-api.ts} +3 -3
- package/config/src/services/validators.service.ts +80 -0
- package/ng-package.json +10 -0
- package/package.json +7 -22
- package/src/lib/cms-routing.module.ts +102 -0
- package/src/lib/cms.module.ts +109 -0
- package/src/lib/components/admin/entries/create-or-edit-entries.component.html +137 -0
- package/src/lib/components/admin/entries/create-or-edit-entries.component.scss +1 -0
- package/src/lib/components/admin/entries/create-or-edit-entries.component.spec.ts +21 -0
- package/src/lib/components/admin/entries/create-or-edit-entries.component.ts +318 -0
- package/src/lib/components/admin/entries/create-or-update-entry-input-base.ts +33 -0
- package/src/lib/components/admin/entries/create.component.html +13 -0
- package/src/lib/components/admin/entries/create.component.scss +1 -0
- package/src/lib/components/admin/entries/create.component.spec.ts +21 -0
- package/src/lib/components/admin/entries/create.component.ts +110 -0
- package/src/lib/components/admin/entries/edit.component.html +9 -0
- package/src/lib/components/admin/entries/edit.component.scss +1 -0
- package/src/lib/components/admin/entries/edit.component.spec.ts +21 -0
- package/src/lib/components/admin/entries/edit.component.ts +111 -0
- package/src/lib/components/admin/entries/entries.component.html +112 -0
- package/src/lib/components/admin/entries/entries.component.scss +1 -0
- package/src/lib/components/admin/entries/entries.component.spec.ts +21 -0
- package/src/lib/components/admin/entries/entries.component.ts +216 -0
- package/src/lib/components/admin/entries/index.ts +4 -0
- package/src/lib/components/admin/fields/create-field.component.html +12 -0
- package/src/lib/components/admin/fields/create-field.component.scss +1 -0
- package/src/lib/components/admin/fields/create-field.component.spec.ts +21 -0
- package/src/lib/components/admin/fields/create-field.component.ts +82 -0
- package/src/lib/components/admin/fields/create-or-edit-field.component.html +40 -0
- package/src/lib/components/admin/fields/create-or-edit-field.component.scss +0 -0
- package/src/lib/components/admin/fields/create-or-edit-field.component.spec.ts +21 -0
- package/src/lib/components/admin/fields/create-or-edit-field.component.ts +121 -0
- package/src/lib/components/admin/fields/create-or-update-field-input-base.ts +33 -0
- package/src/lib/components/admin/fields/edit-field.component.html +16 -0
- package/src/lib/components/admin/fields/edit-field.component.scss +0 -0
- package/src/lib/components/admin/fields/edit-field.component.spec.ts +21 -0
- package/src/lib/components/admin/fields/edit-field.component.ts +101 -0
- package/src/lib/components/admin/fields/field-group.component.html +69 -0
- package/src/lib/components/admin/fields/field-group.component.scss +0 -0
- package/src/lib/components/admin/fields/field-group.component.spec.ts +21 -0
- package/src/lib/components/admin/fields/field-group.component.ts +151 -0
- package/src/lib/components/admin/fields/fields.component.html +74 -0
- package/src/lib/components/admin/fields/fields.component.scss +1 -0
- package/src/lib/components/admin/fields/fields.component.spec.ts +21 -0
- package/src/lib/components/admin/fields/fields.component.ts +109 -0
- package/src/lib/components/admin/fields/index.ts +6 -0
- package/src/lib/components/admin/index.ts +3 -0
- package/src/lib/components/admin/sections/create-or-update-sections-input-base.ts +32 -0
- package/src/lib/components/admin/sections/entry-types/create-or-edit.-entry-type-input-base.ts +79 -0
- package/src/lib/components/admin/sections/entry-types/create-or-edit.component.html +187 -0
- package/src/lib/components/admin/sections/entry-types/create-or-edit.component.scss +1 -0
- package/src/lib/components/admin/sections/entry-types/create-or-edit.component.spec.ts +21 -0
- package/src/lib/components/admin/sections/entry-types/create-or-edit.component.ts +424 -0
- package/src/lib/components/admin/sections/entry-types/index.ts +2 -0
- package/src/lib/components/admin/sections/index.ts +3 -0
- package/src/lib/components/admin/sections/sections.component.html +188 -0
- package/src/lib/components/admin/sections/sections.component.scss +1 -0
- package/src/lib/components/admin/sections/sections.component.spec.ts +21 -0
- package/src/lib/components/admin/sections/sections.component.ts +302 -0
- package/src/lib/components/dynamic-form/entry/entry-config.component.html +36 -0
- package/src/lib/components/dynamic-form/entry/entry-config.component.scss +27 -0
- package/src/lib/components/dynamic-form/entry/entry-config.component.spec.ts +21 -0
- package/src/lib/components/dynamic-form/entry/entry-config.component.ts +114 -0
- package/src/lib/components/dynamic-form/entry/entry-config.ts +24 -0
- package/src/lib/components/dynamic-form/entry/entry-control.component.html +26 -0
- package/src/lib/components/dynamic-form/entry/entry-control.component.scss +1 -0
- package/src/lib/components/dynamic-form/entry/entry-control.component.spec.ts +21 -0
- package/src/lib/components/dynamic-form/entry/entry-control.component.ts +111 -0
- package/src/lib/components/dynamic-form/entry/index.ts +3 -0
- package/src/lib/components/dynamic-form/form-control-group.ts +27 -0
- package/src/lib/components/dynamic-form/index.ts +4 -0
- package/src/lib/components/dynamic-form/matrix/index.ts +3 -0
- package/src/lib/components/dynamic-form/matrix/matrix-config.component.html +148 -0
- package/src/lib/components/dynamic-form/matrix/matrix-config.component.scss +0 -0
- package/src/lib/components/dynamic-form/matrix/matrix-config.component.spec.ts +21 -0
- package/src/lib/components/dynamic-form/matrix/matrix-config.component.ts +239 -0
- package/src/lib/components/dynamic-form/matrix/matrix-config.ts +63 -0
- package/src/lib/components/dynamic-form/matrix/matrix-control.component.html +42 -0
- package/src/lib/components/dynamic-form/matrix/matrix-control.component.scss +0 -0
- package/src/lib/components/dynamic-form/matrix/matrix-control.component.spec.ts +21 -0
- package/src/lib/components/dynamic-form/matrix/matrix-control.component.ts +106 -0
- package/src/lib/components/dynamic-form/table/index.ts +3 -0
- package/src/lib/components/dynamic-form/table/table-config.component.html +85 -0
- package/src/lib/components/dynamic-form/table/table-config.component.scss +10 -0
- package/src/lib/components/dynamic-form/table/table-config.component.spec.ts +21 -0
- package/src/lib/components/dynamic-form/table/table-config.component.ts +170 -0
- package/src/lib/components/dynamic-form/table/table-config.ts +45 -0
- package/src/lib/components/dynamic-form/table/table-control.component.html +54 -0
- package/src/lib/components/dynamic-form/table/table-control.component.scss +1 -0
- package/src/lib/components/dynamic-form/table/table-control.component.spec.ts +21 -0
- package/src/lib/components/dynamic-form/table/table-control.component.ts +114 -0
- package/src/lib/components/index.ts +2 -0
- package/src/lib/constants/index.ts +1 -0
- package/src/lib/constants/styles.ts +20 -0
- package/src/lib/enums/ecms-component.ts +11 -0
- package/src/lib/enums/index.ts +1 -0
- package/src/lib/proxy/README.md +17 -0
- package/src/lib/proxy/admin/domains/domain-admin.service.ts +38 -0
- package/src/lib/proxy/admin/domains/index.ts +2 -0
- package/src/lib/proxy/admin/domains/models.ts +9 -0
- package/src/lib/proxy/admin/dynamic-forms/form-admin.service.ts +21 -0
- package/src/lib/proxy/admin/dynamic-forms/index.ts +2 -0
- package/src/lib/proxy/admin/dynamic-forms/models.ts +5 -0
- package/src/lib/proxy/admin/entries/entry-admin.service.ts +109 -0
- package/src/lib/proxy/admin/entries/index.ts +2 -0
- package/src/lib/proxy/admin/entries/models.ts +68 -0
- package/src/lib/proxy/admin/fields/field-admin.service.ts +64 -0
- package/src/lib/proxy/admin/fields/field-group-admin.service.ts +56 -0
- package/src/lib/proxy/admin/fields/index.ts +3 -0
- package/{lib/proxy/admin/fields/models.d.ts → src/lib/proxy/admin/fields/models.ts} +42 -34
- package/src/lib/proxy/admin/index.ts +7 -0
- package/src/lib/proxy/admin/sections/entry-type-admin.service.ts +55 -0
- package/src/lib/proxy/admin/sections/index.ts +3 -0
- package/src/lib/proxy/admin/sections/models.ts +81 -0
- package/src/lib/proxy/admin/sections/section-admin.service.ts +74 -0
- package/src/lib/proxy/admin/settings/site-settings-admin.service.ts +37 -0
- package/src/lib/proxy/dignite/abp/data/index.ts +1 -0
- package/src/lib/proxy/dignite/abp/data/models.ts +4 -0
- package/src/lib/proxy/dignite/abp/index.ts +2 -0
- package/src/lib/proxy/dignite/file-explorer/directories/file-descriptor.service.ts +65 -0
- package/src/lib/proxy/dignite/file-explorer/directories/index.ts +2 -0
- package/src/lib/proxy/dignite/file-explorer/directories/models.ts +35 -0
- package/src/lib/proxy/dignite/file-explorer/files/file-descriptor.service.ts +86 -0
- package/src/lib/proxy/dignite/file-explorer/files/index.ts +2 -0
- package/src/lib/proxy/dignite/file-explorer/files/models.ts +58 -0
- package/src/lib/proxy/dignite/file-explorer/index.ts +3 -0
- package/src/lib/proxy/dignite/index.ts +3 -0
- package/src/lib/proxy/entries/entry-status.enum.ts +8 -0
- package/src/lib/proxy/entries/index.ts +1 -0
- package/src/lib/proxy/fields/index.ts +1 -0
- package/src/lib/proxy/fields/models.ts +9 -0
- package/src/lib/proxy/generate-proxy.json +11425 -0
- package/src/lib/proxy/index.ts +9 -0
- package/src/lib/proxy/microsoft/asp-net-core/index.ts +2 -0
- package/src/lib/proxy/microsoft/asp-net-core/mvc/index.ts +1 -0
- package/src/lib/proxy/microsoft/asp-net-core/mvc/models.ts +12 -0
- package/src/lib/proxy/microsoft/extensions/index.ts +2 -0
- package/src/lib/proxy/microsoft/extensions/primitives/index.ts +1 -0
- package/src/lib/proxy/microsoft/extensions/primitives/models.ts +9 -0
- package/src/lib/proxy/microsoft/index.ts +4 -0
- package/src/lib/proxy/microsoft/net/http/headers/index.ts +1 -0
- package/src/lib/proxy/microsoft/net/http/headers/models.ts +7 -0
- package/src/lib/proxy/microsoft/net/http/index.ts +2 -0
- package/src/lib/proxy/microsoft/net/index.ts +2 -0
- package/src/lib/proxy/sections/index.ts +2 -0
- package/src/lib/proxy/sections/models.ts +14 -0
- package/src/lib/proxy/sections/section-type.enum.ts +9 -0
- package/src/lib/proxy/settings/index.ts +1 -0
- package/src/lib/proxy/settings/models.ts +6 -0
- package/src/lib/proxy/volo/abp/content/index.ts +1 -0
- package/src/lib/proxy/volo/abp/content/models.ts +6 -0
- package/src/lib/proxy/volo/abp/index.ts +2 -0
- package/src/lib/proxy/volo/cms-kit/index.ts +2 -0
- package/src/lib/proxy/volo/cms-kit/users/index.ts +1 -0
- package/{lib/proxy/volo/cms-kit/users/models.d.ts → src/lib/proxy/volo/cms-kit/users/models.ts} +8 -7
- package/src/lib/proxy/volo/index.ts +3 -0
- package/src/lib/resolvers/extensions-props-action-token.resolver.ts +178 -0
- package/src/lib/resolvers/page-default-toolbar-actions.ts +170 -0
- package/src/lib/resolvers/table-default-entity-actions.ts +24 -0
- package/src/lib/resolvers/table-default-entity-props.ts +36 -0
- package/src/lib/services/appent-content.ts +13 -0
- package/src/lib/services/cms-api.service.ts +71 -0
- package/src/lib/services/cms.service.ts +18 -0
- package/src/lib/services/field-abstracts.service.ts +40 -0
- package/src/lib/services/index.ts +4 -0
- package/src/lib/services/simple-reuse-strategy.ts +74 -0
- package/src/lib/services/update-list.service.ts +15 -0
- package/src/lib/services/validators.service.ts +82 -0
- package/{public-api.d.ts → src/public-api.ts} +6 -2
- package/src/test.ts +26 -0
- package/tsconfig.lib.json +16 -0
- package/tsconfig.lib.prod.json +10 -0
- package/tsconfig.spec.json +17 -0
- package/config/cms-config.module.d.ts +0 -8
- package/config/components/domains/domains.component.d.ts +0 -29
- package/config/components/site-language/site-language.component.d.ts +0 -29
- package/config/enums/route-names.d.ts +0 -8
- package/config/index.d.ts +0 -5
- package/config/providers/route.provider.d.ts +0 -9
- package/config/proxy/admin/domains/domain-admin.service.d.ts +0 -13
- package/config/proxy/dignite/cms/admin/sites/models.d.ts +0 -4
- package/config/proxy/dignite/cms/admin/sites/site-admin.service.d.ts +0 -13
- package/config/proxy/dignite/cms/sites/models.d.ts +0 -4
- package/config/services/validators.service.d.ts +0 -16
- package/esm2022/config/cms-config.module.mjs +0 -18
- package/esm2022/config/components/domains/domains.component.mjs +0 -102
- package/esm2022/config/components/site-language/site-language.component.mjs +0 -108
- package/esm2022/config/dignite-ng-expand.cms-config.mjs +0 -5
- package/esm2022/config/enums/index.mjs +0 -2
- package/esm2022/config/enums/route-names.mjs +0 -10
- package/esm2022/config/providers/index.mjs +0 -2
- package/esm2022/config/providers/route.provider.mjs +0 -74
- package/esm2022/config/proxy/admin/domains/domain-admin.service.mjs +0 -32
- package/esm2022/config/proxy/admin/domains/index.mjs +0 -3
- package/esm2022/config/proxy/admin/domains/models.mjs +0 -2
- package/esm2022/config/proxy/dignite/cms/admin/sites/index.mjs +0 -3
- package/esm2022/config/proxy/dignite/cms/admin/sites/models.mjs +0 -2
- package/esm2022/config/proxy/dignite/cms/admin/sites/site-admin.service.mjs +0 -27
- package/esm2022/config/proxy/dignite/cms/sites/models.mjs +0 -2
- package/esm2022/config/public-api.mjs +0 -4
- package/esm2022/config/services/validators.service.mjs +0 -83
- package/esm2022/dignite-ng-expand.cms.mjs +0 -5
- package/esm2022/lib/cms-routing.module.mjs +0 -94
- package/esm2022/lib/cms.module.mjs +0 -130
- package/esm2022/lib/components/admin/entries/create-or-edit-entries.component.mjs +0 -303
- package/esm2022/lib/components/admin/entries/create-or-update-entry-input-base.mjs +0 -32
- package/esm2022/lib/components/admin/entries/create.component.mjs +0 -108
- package/esm2022/lib/components/admin/entries/edit.component.mjs +0 -109
- package/esm2022/lib/components/admin/entries/entries.component.mjs +0 -198
- package/esm2022/lib/components/admin/entries/index.mjs +0 -5
- package/esm2022/lib/components/admin/fields/create-field.component.mjs +0 -80
- package/esm2022/lib/components/admin/fields/create-or-edit-field.component.mjs +0 -112
- package/esm2022/lib/components/admin/fields/create-or-update-field-input-base.mjs +0 -25
- package/esm2022/lib/components/admin/fields/edit-field.component.mjs +0 -103
- package/esm2022/lib/components/admin/fields/field-group.component.mjs +0 -131
- package/esm2022/lib/components/admin/fields/fields.component.mjs +0 -109
- package/esm2022/lib/components/admin/fields/index.mjs +0 -7
- package/esm2022/lib/components/admin/index.mjs +0 -4
- package/esm2022/lib/components/admin/sections/create-or-update-sections-input-base.mjs +0 -27
- package/esm2022/lib/components/admin/sections/entry-types/create-or-edit.-entry-type-input-base.mjs +0 -71
- package/esm2022/lib/components/admin/sections/entry-types/create-or-edit.component.mjs +0 -389
- package/esm2022/lib/components/admin/sections/entry-types/index.mjs +0 -3
- package/esm2022/lib/components/admin/sections/index.mjs +0 -4
- package/esm2022/lib/components/admin/sections/sections.component.mjs +0 -292
- package/esm2022/lib/components/dynamic-form/entry/entry-config.component.mjs +0 -112
- package/esm2022/lib/components/dynamic-form/entry/entry-config.mjs +0 -18
- package/esm2022/lib/components/dynamic-form/entry/entry-control.component.mjs +0 -105
- package/esm2022/lib/components/dynamic-form/entry/index.mjs +0 -4
- package/esm2022/lib/components/dynamic-form/form-control-group.mjs +0 -28
- package/esm2022/lib/components/dynamic-form/index.mjs +0 -5
- package/esm2022/lib/components/dynamic-form/matrix/index.mjs +0 -4
- package/esm2022/lib/components/dynamic-form/matrix/matrix-config.component.mjs +0 -214
- package/esm2022/lib/components/dynamic-form/matrix/matrix-config.mjs +0 -50
- package/esm2022/lib/components/dynamic-form/matrix/matrix-control.component.mjs +0 -98
- package/esm2022/lib/components/dynamic-form/table/index.mjs +0 -4
- package/esm2022/lib/components/dynamic-form/table/table-config.component.mjs +0 -151
- package/esm2022/lib/components/dynamic-form/table/table-config.mjs +0 -38
- package/esm2022/lib/components/dynamic-form/table/table-control.component.mjs +0 -105
- package/esm2022/lib/components/index.mjs +0 -3
- package/esm2022/lib/constants/styles.mjs +0 -21
- package/esm2022/lib/enums/ecms-component.mjs +0 -13
- package/esm2022/lib/enums/index.mjs +0 -2
- package/esm2022/lib/proxy/admin/dynamic-forms/form-admin.service.mjs +0 -22
- package/esm2022/lib/proxy/admin/dynamic-forms/index.mjs +0 -3
- package/esm2022/lib/proxy/admin/dynamic-forms/models.mjs +0 -2
- package/esm2022/lib/proxy/admin/entries/entry-admin.service.mjs +0 -70
- package/esm2022/lib/proxy/admin/entries/index.mjs +0 -3
- package/esm2022/lib/proxy/admin/entries/models.mjs +0 -2
- package/esm2022/lib/proxy/admin/fields/field-admin.service.mjs +0 -45
- package/esm2022/lib/proxy/admin/fields/field-group-admin.service.mjs +0 -41
- package/esm2022/lib/proxy/admin/fields/index.mjs +0 -4
- package/esm2022/lib/proxy/admin/fields/models.mjs +0 -2
- package/esm2022/lib/proxy/admin/sections/entry-type-admin.service.mjs +0 -41
- package/esm2022/lib/proxy/admin/sections/index.mjs +0 -4
- package/esm2022/lib/proxy/admin/sections/models.mjs +0 -2
- package/esm2022/lib/proxy/admin/sections/section-admin.service.mjs +0 -51
- package/esm2022/lib/proxy/admin/settings/index.mjs +0 -2
- package/esm2022/lib/proxy/admin/settings/site-settings-admin.service.mjs +0 -31
- package/esm2022/lib/proxy/dignite/abp/data/models.mjs +0 -2
- package/esm2022/lib/proxy/entries/entry-status.enum.mjs +0 -8
- package/esm2022/lib/proxy/entries/index.mjs +0 -2
- package/esm2022/lib/proxy/fields/models.mjs +0 -2
- package/esm2022/lib/proxy/sections/index.mjs +0 -3
- package/esm2022/lib/proxy/sections/models.mjs +0 -2
- package/esm2022/lib/proxy/sections/section-type.enum.mjs +0 -9
- package/esm2022/lib/proxy/settings/models.mjs +0 -2
- package/esm2022/lib/proxy/volo/cms-kit/users/models.mjs +0 -2
- package/esm2022/lib/resolvers/extensions-props-action-token.resolver.mjs +0 -132
- package/esm2022/lib/resolvers/page-default-toolbar-actions.mjs +0 -160
- package/esm2022/lib/services/appent-content.mjs +0 -15
- package/esm2022/lib/services/cms-api.service.mjs +0 -78
- package/esm2022/lib/services/cms.service.mjs +0 -21
- package/esm2022/lib/services/field-abstracts.service.mjs +0 -42
- package/esm2022/lib/services/index.mjs +0 -5
- package/esm2022/lib/services/simple-reuse-strategy.mjs +0 -64
- package/esm2022/lib/services/update-list.service.mjs +0 -19
- package/esm2022/lib/services/validators.service.mjs +0 -85
- package/esm2022/public-api.mjs +0 -6
- package/fesm2022/dignite-ng-expand.cms-config.mjs +0 -428
- package/fesm2022/dignite-ng-expand.cms-config.mjs.map +0 -1
- package/fesm2022/dignite-ng-expand.cms.mjs +0 -3913
- package/fesm2022/dignite-ng-expand.cms.mjs.map +0 -1
- package/index.d.ts +0 -5
- package/lib/cms-routing.module.d.ts +0 -7
- package/lib/cms.module.d.ts +0 -34
- package/lib/components/admin/entries/create-or-edit-entries.component.d.ts +0 -96
- package/lib/components/admin/entries/create-or-update-entry-input-base.d.ts +0 -23
- package/lib/components/admin/entries/create.component.d.ts +0 -47
- package/lib/components/admin/entries/edit.component.d.ts +0 -47
- package/lib/components/admin/entries/entries.component.d.ts +0 -66
- package/lib/components/admin/entries/index.d.ts +0 -4
- package/lib/components/admin/fields/create-field.component.d.ts +0 -37
- package/lib/components/admin/fields/create-or-edit-field.component.d.ts +0 -38
- package/lib/components/admin/fields/create-or-update-field-input-base.d.ts +0 -16
- package/lib/components/admin/fields/edit-field.component.d.ts +0 -46
- package/lib/components/admin/fields/field-group.component.d.ts +0 -58
- package/lib/components/admin/fields/fields.component.d.ts +0 -35
- package/lib/components/admin/fields/index.d.ts +0 -6
- package/lib/components/admin/index.d.ts +0 -3
- package/lib/components/admin/sections/create-or-update-sections-input-base.d.ts +0 -17
- package/lib/components/admin/sections/entry-types/create-or-edit.-entry-type-input-base.d.ts +0 -38
- package/lib/components/admin/sections/entry-types/create-or-edit.component.d.ts +0 -138
- package/lib/components/admin/sections/entry-types/index.d.ts +0 -2
- package/lib/components/admin/sections/index.d.ts +0 -3
- package/lib/components/admin/sections/sections.component.d.ts +0 -64
- package/lib/components/dynamic-form/entry/entry-config.component.d.ts +0 -39
- package/lib/components/dynamic-form/entry/entry-config.d.ts +0 -9
- package/lib/components/dynamic-form/entry/entry-control.component.d.ts +0 -35
- package/lib/components/dynamic-form/entry/index.d.ts +0 -3
- package/lib/components/dynamic-form/form-control-group.d.ts +0 -4
- package/lib/components/dynamic-form/index.d.ts +0 -4
- package/lib/components/dynamic-form/matrix/index.d.ts +0 -3
- package/lib/components/dynamic-form/matrix/matrix-config.component.d.ts +0 -73
- package/lib/components/dynamic-form/matrix/matrix-config.d.ts +0 -24
- package/lib/components/dynamic-form/matrix/matrix-control.component.d.ts +0 -39
- package/lib/components/dynamic-form/table/index.d.ts +0 -3
- package/lib/components/dynamic-form/table/table-config.component.d.ts +0 -58
- package/lib/components/dynamic-form/table/table-config.d.ts +0 -18
- package/lib/components/dynamic-form/table/table-control.component.d.ts +0 -39
- package/lib/components/index.d.ts +0 -2
- package/lib/constants/styles.d.ts +0 -2
- package/lib/enums/ecms-component.d.ts +0 -11
- package/lib/enums/index.d.ts +0 -1
- package/lib/proxy/admin/dynamic-forms/form-admin.service.d.ts +0 -12
- package/lib/proxy/admin/dynamic-forms/models.d.ts +0 -4
- package/lib/proxy/admin/entries/entry-admin.service.d.ts +0 -22
- package/lib/proxy/admin/entries/models.d.ts +0 -60
- package/lib/proxy/admin/fields/field-admin.service.d.ts +0 -17
- package/lib/proxy/admin/fields/field-group-admin.service.d.ts +0 -16
- package/lib/proxy/admin/sections/entry-type-admin.service.d.ts +0 -15
- package/lib/proxy/admin/sections/section-admin.service.d.ts +0 -18
- package/lib/proxy/admin/settings/site-settings-admin.service.d.ts +0 -13
- package/lib/proxy/dignite/abp/data/models.d.ts +0 -3
- package/lib/proxy/entries/entry-status.enum.d.ts +0 -5
- package/lib/proxy/fields/models.d.ts +0 -8
- package/lib/proxy/sections/models.d.ts +0 -12
- package/lib/proxy/sections/section-type.enum.d.ts +0 -6
- package/lib/proxy/settings/models.d.ts +0 -5
- package/lib/resolvers/extensions-props-action-token.resolver.d.ts +0 -71
- package/lib/resolvers/page-default-toolbar-actions.d.ts +0 -18
- package/lib/services/appent-content.d.ts +0 -1
- package/lib/services/cms-api.service.d.ts +0 -20
- package/lib/services/cms.service.d.ts +0 -10
- package/lib/services/field-abstracts.service.d.ts +0 -20
- package/lib/services/index.d.ts +0 -4
- package/lib/services/simple-reuse-strategy.d.ts +0 -13
- package/lib/services/update-list.service.d.ts +0 -9
- package/lib/services/validators.service.d.ts +0 -17
- /package/config/{proxy/admin/domains/index.d.ts → src/proxy/admin/domains/index.ts} +0 -0
- /package/{lib/proxy/admin/dynamic-forms/index.d.ts → config/src/proxy/dignite/cms/admin/dynamic-forms/index.ts} +0 -0
- /package/{lib/proxy/admin/entries/index.d.ts → config/src/proxy/dignite/cms/admin/entries/index.ts} +0 -0
- /package/{lib/proxy/admin/fields/index.d.ts → config/src/proxy/dignite/cms/admin/fields/index.ts} +0 -0
- /package/{lib/proxy/admin/sections/index.d.ts → config/src/proxy/dignite/cms/admin/sections/index.ts} +0 -0
- /package/config/{proxy/dignite/cms/admin/sites/index.d.ts → src/proxy/dignite/cms/admin/sites/index.ts} +0 -0
- /package/{lib/proxy/entries/index.d.ts → config/src/proxy/dignite/cms/entries/index.ts} +0 -0
- /package/{lib/proxy/sections/index.d.ts → config/src/proxy/dignite/cms/sections/index.ts} +0 -0
- /package/{lib/proxy/admin/settings/index.d.ts → src/lib/proxy/admin/settings/index.ts} +0 -0
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { RestService } from '@abp/ng.core';
|
|
3
|
+
|
|
4
|
+
@Injectable({
|
|
5
|
+
providedIn: 'root',
|
|
6
|
+
})
|
|
7
|
+
export class CmsService {
|
|
8
|
+
apiName = 'Cms';
|
|
9
|
+
|
|
10
|
+
constructor(private restService: RestService) {}
|
|
11
|
+
|
|
12
|
+
sample() {
|
|
13
|
+
return this.restService.request<void, any>(
|
|
14
|
+
{ method: 'GET', url: '/api/Cms/sample' },
|
|
15
|
+
{ apiName: this.apiName }
|
|
16
|
+
);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { FieldGroupAdminService } from '../proxy/admin/fields/field-group-admin.service';
|
|
3
|
+
import { FieldGroupDto } from '../proxy/admin/fields/models';
|
|
4
|
+
import { FormAdminService } from '../proxy/admin/dynamic-forms';
|
|
5
|
+
|
|
6
|
+
@Injectable({
|
|
7
|
+
providedIn: 'root'
|
|
8
|
+
})
|
|
9
|
+
export class FieldAbstractsService {
|
|
10
|
+
|
|
11
|
+
constructor(
|
|
12
|
+
private _FieldGroupAdminService: FieldGroupAdminService,
|
|
13
|
+
private _FormAdminService: FormAdminService,
|
|
14
|
+
) { }
|
|
15
|
+
/**字段分组列表 */
|
|
16
|
+
fieldGroupList: FieldGroupDto[] = []
|
|
17
|
+
/**获取字段分组列表 */
|
|
18
|
+
getfieldGroupList() {
|
|
19
|
+
this._FieldGroupAdminService.getList({}).subscribe(res => {
|
|
20
|
+
this.fieldGroupList = res.items
|
|
21
|
+
})
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/**表单控件类型 */
|
|
25
|
+
fromControlList: any[] = []
|
|
26
|
+
/**获取表单控件类型 */
|
|
27
|
+
getFromControlList() {
|
|
28
|
+
return new Promise((resolve, reject) => {
|
|
29
|
+
this._FormAdminService.getFormControls({}).subscribe(res => {
|
|
30
|
+
this.fromControlList = res.items
|
|
31
|
+
resolve(res.items)
|
|
32
|
+
})
|
|
33
|
+
})
|
|
34
|
+
}
|
|
35
|
+
getExcludeAssignControl(typeName?) {
|
|
36
|
+
// return this.fromControlList.filter(el => el.name !== typeName)
|
|
37
|
+
return this.fromControlList
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
import { RouteReuseStrategy, ActivatedRouteSnapshot, DetachedRouteHandle } from '@angular/router';
|
|
4
|
+
|
|
5
|
+
export class SimpleReuseStrategy implements RouteReuseStrategy {
|
|
6
|
+
static cacheRouters = new Map<string, DetachedRouteHandle>();
|
|
7
|
+
|
|
8
|
+
public static deleteRouteCache(url): void {
|
|
9
|
+
if (SimpleReuseStrategy.cacheRouters.has(url)) {
|
|
10
|
+
const handle: any = SimpleReuseStrategy.cacheRouters.get(url);
|
|
11
|
+
try {
|
|
12
|
+
handle.componentRef.destory();
|
|
13
|
+
} catch (e) { }
|
|
14
|
+
SimpleReuseStrategy.cacheRouters.delete(url);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
public static deleteAllRouteCache(): void {
|
|
19
|
+
SimpleReuseStrategy.cacheRouters.forEach((handle: any, key) => {
|
|
20
|
+
SimpleReuseStrategy.deleteRouteCache(key);
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// one 进入路由触发,是否同一路由时复用路由
|
|
25
|
+
shouldReuseRoute(future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot,): boolean {
|
|
26
|
+
return future.routeConfig === curr.routeConfig &&
|
|
27
|
+
JSON.stringify(future.params) === JSON.stringify(curr.params);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
// 获取存储路由
|
|
31
|
+
retrieve(route: ActivatedRouteSnapshot): DetachedRouteHandle {
|
|
32
|
+
const url = this.getFullRouteURL(route);
|
|
33
|
+
if (route.data.keep && SimpleReuseStrategy.cacheRouters.has( url) ) {
|
|
34
|
+
return SimpleReuseStrategy.cacheRouters.get(url);
|
|
35
|
+
} else {
|
|
36
|
+
return null;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// 是否允许复用路由
|
|
41
|
+
shouldDetach(route: ActivatedRouteSnapshot): boolean {
|
|
42
|
+
return Boolean(route.data.keep);
|
|
43
|
+
}
|
|
44
|
+
// 当路由离开时会触发,存储路由
|
|
45
|
+
store(route: ActivatedRouteSnapshot, handle: DetachedRouteHandle): void {
|
|
46
|
+
const url = this.getFullRouteURL(route);
|
|
47
|
+
// 先把之前缓存的删除,
|
|
48
|
+
SimpleReuseStrategy.cacheRouters.forEach((handle: any, key) => {
|
|
49
|
+
SimpleReuseStrategy.deleteRouteCache(key);
|
|
50
|
+
});
|
|
51
|
+
SimpleReuseStrategy.cacheRouters.set(url, handle);
|
|
52
|
+
}
|
|
53
|
+
// 是否允许还原路由
|
|
54
|
+
shouldAttach(route: ActivatedRouteSnapshot): boolean {
|
|
55
|
+
const url = this.getFullRouteURL(route);
|
|
56
|
+
return Boolean(route.data.keep) && SimpleReuseStrategy.cacheRouters.has(url);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
// 获取当前路由url
|
|
60
|
+
private getFullRouteURL(route: ActivatedRouteSnapshot): string {
|
|
61
|
+
const { pathFromRoot } = route;
|
|
62
|
+
let fullRouteUrlPath: string[] = [];
|
|
63
|
+
pathFromRoot.forEach((item: ActivatedRouteSnapshot) => {
|
|
64
|
+
fullRouteUrlPath = fullRouteUrlPath.concat( this.getRouteUrlPath(item) );
|
|
65
|
+
});
|
|
66
|
+
return `/${fullRouteUrlPath.join('/')}`;
|
|
67
|
+
|
|
68
|
+
}
|
|
69
|
+
private getRouteUrlPath(route: ActivatedRouteSnapshot) {
|
|
70
|
+
return route.url.map(urlSegment => urlSegment.path);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { EventEmitter, Injectable } from '@angular/core';
|
|
2
|
+
|
|
3
|
+
@Injectable({
|
|
4
|
+
providedIn: 'root'
|
|
5
|
+
})
|
|
6
|
+
export class UpdateListService {
|
|
7
|
+
|
|
8
|
+
public updateListEvent: EventEmitter<any> = new EventEmitter();
|
|
9
|
+
|
|
10
|
+
constructor() { }
|
|
11
|
+
|
|
12
|
+
updateList() {
|
|
13
|
+
this.updateListEvent.emit();
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { LocalizationService } from '@abp/ng.core';
|
|
2
|
+
import { ToasterService } from '@abp/ng.theme.shared';
|
|
3
|
+
import { inject, Injectable } from '@angular/core';
|
|
4
|
+
import { FormGroup, FormArray, FormControl, FormBuilder } from '@angular/forms';
|
|
5
|
+
|
|
6
|
+
@Injectable({
|
|
7
|
+
providedIn: 'root'
|
|
8
|
+
})
|
|
9
|
+
export class ValidatorsService {
|
|
10
|
+
|
|
11
|
+
constructor() { }
|
|
12
|
+
|
|
13
|
+
private fb = inject(FormBuilder);
|
|
14
|
+
private toaster = inject(ToasterService);
|
|
15
|
+
private _LocalizationService = inject(LocalizationService);
|
|
16
|
+
|
|
17
|
+
/**检查表单- */
|
|
18
|
+
/**检查表单- */
|
|
19
|
+
isCheckForm(input: any,module='AbpValidation') {
|
|
20
|
+
let keys = Object.keys(input);
|
|
21
|
+
for (let i = 0; i < keys.length; i++) {
|
|
22
|
+
const element = keys[i];
|
|
23
|
+
if (input[element] == false) {
|
|
24
|
+
let info = `"${this._LocalizationService.instant(`${module}::${element}`)}" `;
|
|
25
|
+
if (element.includes('.') && !element.includes('].')) {
|
|
26
|
+
let arr = element.split('.');
|
|
27
|
+
info=`"${this._LocalizationService.instant(`CmsKit::${arr[0]}`)}.${this._LocalizationService.instant(`CmsKit::${arr[1]}`)}"`
|
|
28
|
+
}
|
|
29
|
+
if (element.includes('].')) {
|
|
30
|
+
let arr = element.split('].');
|
|
31
|
+
let arrStart = arr[0].split('[');
|
|
32
|
+
info=`"${this._LocalizationService.instant(`CmsKit::${arrStart[0]}`)}[${arrStart[1]}].${this._LocalizationService.instant(`CmsKit::${arr[1]}`)}"`
|
|
33
|
+
}
|
|
34
|
+
info+= `${this._LocalizationService.instant(`AbpValidation::ThisFieldIsNotValid`)}`
|
|
35
|
+
//使用abp多语言提示
|
|
36
|
+
this.toaster.warn(info);
|
|
37
|
+
return true;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return false;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
/**获取表单所有字段是否通过验证 */
|
|
45
|
+
getFormValidationStatus(formEntity: FormGroup | FormArray): { [key: string]: any } {
|
|
46
|
+
let validationStatus: { [key: string]: any } = {};
|
|
47
|
+
|
|
48
|
+
// 递归遍历表单组和表单控件集合
|
|
49
|
+
const traverseForm = (form: FormGroup | FormArray, prefix = '') => {
|
|
50
|
+
if (form instanceof FormGroup) {
|
|
51
|
+
Object.keys(form.controls).forEach(key => {
|
|
52
|
+
const control = form.controls[key];
|
|
53
|
+
let displayName = key.charAt(0).toUpperCase() + key.slice(1);
|
|
54
|
+
const fullKey = prefix ? `${prefix}.${displayName}` : displayName;
|
|
55
|
+
if (control instanceof FormControl) {
|
|
56
|
+
validationStatus[fullKey] = control.valid;
|
|
57
|
+
} else if (control instanceof FormArray) {
|
|
58
|
+
traverseForm(control, fullKey);
|
|
59
|
+
} else if (control instanceof FormGroup) {
|
|
60
|
+
traverseForm(control, fullKey);
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
} else if (form instanceof FormArray) {
|
|
64
|
+
form.controls.forEach((control, index) => {
|
|
65
|
+
const fullKey = prefix ? `${prefix}[${index}]` : `[${index}]`;
|
|
66
|
+
if (control instanceof FormControl) {
|
|
67
|
+
validationStatus[fullKey] = control.valid;
|
|
68
|
+
} else if (control instanceof FormArray) {
|
|
69
|
+
traverseForm(control, fullKey);
|
|
70
|
+
} else if (control instanceof FormGroup) {
|
|
71
|
+
traverseForm(control, fullKey);
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
traverseForm(formEntity);
|
|
78
|
+
|
|
79
|
+
return validationStatus;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
}
|
package/src/test.ts
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// This file is required by karma.conf.js and loads recursively all the .spec and framework files
|
|
2
|
+
|
|
3
|
+
import 'zone.js';
|
|
4
|
+
import 'zone.js/testing';
|
|
5
|
+
import { getTestBed } from '@angular/core/testing';
|
|
6
|
+
import {
|
|
7
|
+
BrowserDynamicTestingModule,
|
|
8
|
+
platformBrowserDynamicTesting
|
|
9
|
+
} from '@angular/platform-browser-dynamic/testing';
|
|
10
|
+
|
|
11
|
+
declare const require: {
|
|
12
|
+
context(path: string, deep?: boolean, filter?: RegExp): {
|
|
13
|
+
keys(): string[];
|
|
14
|
+
<T>(id: string): T;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
// First, initialize the Angular testing environment.
|
|
19
|
+
getTestBed().initTestEnvironment(
|
|
20
|
+
BrowserDynamicTestingModule,
|
|
21
|
+
platformBrowserDynamicTesting()
|
|
22
|
+
);
|
|
23
|
+
// Then we find all the tests.
|
|
24
|
+
const context = require.context('./', true, /\.spec\.ts$/);
|
|
25
|
+
// And load the modules.
|
|
26
|
+
context.keys().map(context);
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
|
|
2
|
+
/* To learn more about this file see: https://angular.io/config/tsconfig. */
|
|
3
|
+
{
|
|
4
|
+
"extends": "../../tsconfig.json",
|
|
5
|
+
"compilerOptions": {
|
|
6
|
+
"outDir": "../../out-tsc/lib",
|
|
7
|
+
"declaration": true,
|
|
8
|
+
"declarationMap": true,
|
|
9
|
+
"inlineSources": true,
|
|
10
|
+
"types": []
|
|
11
|
+
},
|
|
12
|
+
"exclude": [
|
|
13
|
+
"**/*.spec.ts"
|
|
14
|
+
]
|
|
15
|
+
}
|
|
16
|
+
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/* To learn more about this file see: https://angular.io/config/tsconfig. */
|
|
2
|
+
{
|
|
3
|
+
"extends": "../../tsconfig.json",
|
|
4
|
+
"compilerOptions": {
|
|
5
|
+
"outDir": "../../out-tsc/spec",
|
|
6
|
+
"types": [
|
|
7
|
+
"jasmine"
|
|
8
|
+
]
|
|
9
|
+
},
|
|
10
|
+
"files": [
|
|
11
|
+
"src/test.ts"
|
|
12
|
+
],
|
|
13
|
+
"include": [
|
|
14
|
+
"**/*.spec.ts",
|
|
15
|
+
"**/*.d.ts"
|
|
16
|
+
]
|
|
17
|
+
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { ModuleWithProviders } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export declare class CmsConfigModule {
|
|
4
|
-
static forRoot(): ModuleWithProviders<CmsConfigModule>;
|
|
5
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<CmsConfigModule, never>;
|
|
6
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<CmsConfigModule, never, never, never>;
|
|
7
|
-
static ɵinj: i0.ɵɵInjectorDeclaration<CmsConfigModule>;
|
|
8
|
-
}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { OnInit } from '@angular/core';
|
|
2
|
-
import { AbstractControl, FormGroup, ValidationErrors } from '@angular/forms';
|
|
3
|
-
import { Observable } from 'rxjs';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export declare class DomainsComponent implements OnInit {
|
|
6
|
-
private toaster;
|
|
7
|
-
private _DomainAdminService;
|
|
8
|
-
private _LocalizationService;
|
|
9
|
-
/**表单实体 */
|
|
10
|
-
newEntity: FormGroup | undefined;
|
|
11
|
-
/**domain详情 */
|
|
12
|
-
domainInfo: any;
|
|
13
|
-
get domainNameInput(): AbstractControl<any, any>;
|
|
14
|
-
ngOnInit(): Promise<void>;
|
|
15
|
-
/**用于获取已绑定的域名 */
|
|
16
|
-
getDomainsBound(): Promise<unknown>;
|
|
17
|
-
repetitionAsyncValidator(): (ctrl: AbstractControl) => Promise<ValidationErrors | null> | Observable<ValidationErrors | null>;
|
|
18
|
-
private _ValidatorsService;
|
|
19
|
-
/**表单验证状态
|
|
20
|
-
* {
|
|
21
|
-
* title:true,
|
|
22
|
-
* }
|
|
23
|
-
*/
|
|
24
|
-
formValidation: any;
|
|
25
|
-
/**保存 */
|
|
26
|
-
SaveSubmit(): void;
|
|
27
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<DomainsComponent, never>;
|
|
28
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<DomainsComponent, "cms-domains", never, {}, {}, never, never, true, never>;
|
|
29
|
-
}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { OnInit } from '@angular/core';
|
|
2
|
-
import { FormGroup } from '@angular/forms';
|
|
3
|
-
import { eCmsRouteNames } from '../../enums';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export declare class SiteLanguageComponent implements OnInit {
|
|
6
|
-
private fb;
|
|
7
|
-
private toaster;
|
|
8
|
-
private _LocalizationService;
|
|
9
|
-
private configState;
|
|
10
|
-
private _SiteAdminService;
|
|
11
|
-
eCmsRouteNames: typeof eCmsRouteNames;
|
|
12
|
-
/**表单实体 */
|
|
13
|
-
newEntity: FormGroup | undefined;
|
|
14
|
-
/**系统语言 */
|
|
15
|
-
languagesSystem: any[];
|
|
16
|
-
ngOnInit(): Promise<void>;
|
|
17
|
-
/**获取配置的默认语言与选中语言 */
|
|
18
|
-
getSiteLanguageSettings(): Promise<unknown>;
|
|
19
|
-
/**语言改变 */
|
|
20
|
-
setLanguagesChange(event: any, item: any): void;
|
|
21
|
-
/**设置默认语言 */
|
|
22
|
-
setDefault(items: any): void;
|
|
23
|
-
/**设置表单中的语言 */
|
|
24
|
-
setFromLangguages(): void;
|
|
25
|
-
/**保存 */
|
|
26
|
-
SaveSubmit(): void;
|
|
27
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<SiteLanguageComponent, never>;
|
|
28
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<SiteLanguageComponent, "app-site-language", never, {}, {}, never, never, true, never>;
|
|
29
|
-
}
|
package/config/index.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { RoutesService } from '@abp/ng.core';
|
|
2
|
-
import { SettingTabsService } from '@abp/ng.setting-management/config';
|
|
3
|
-
export declare const CMS_ROUTE_PROVIDERS: {
|
|
4
|
-
provide: import("@angular/core").InjectionToken<readonly (() => import("rxjs").Observable<unknown> | Promise<unknown> | void)[]>;
|
|
5
|
-
useFactory: typeof configureRoutes;
|
|
6
|
-
deps: (typeof RoutesService | typeof SettingTabsService)[];
|
|
7
|
-
multi: boolean;
|
|
8
|
-
}[];
|
|
9
|
-
export declare function configureRoutes(routesService: RoutesService, settingTabs: SettingTabsService): () => void;
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { DomainDto, UpdateDomainInput } from './models';
|
|
2
|
-
import { RestService, Rest } from '@abp/ng.core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export declare class DomainAdminService {
|
|
5
|
-
private restService;
|
|
6
|
-
apiName: string;
|
|
7
|
-
getBound: (config?: Partial<Rest.Config>) => import("rxjs").Observable<DomainDto>;
|
|
8
|
-
nameExists: (domainName: string, config?: Partial<Rest.Config>) => import("rxjs").Observable<boolean>;
|
|
9
|
-
update: (input: UpdateDomainInput, config?: Partial<Rest.Config>) => import("rxjs").Observable<DomainDto>;
|
|
10
|
-
constructor(restService: RestService);
|
|
11
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<DomainAdminService, never>;
|
|
12
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<DomainAdminService>;
|
|
13
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { UpdateSiteInput } from './models';
|
|
2
|
-
import { RestService, Rest } from '@abp/ng.core';
|
|
3
|
-
import type { SiteDto } from '../../sites/models';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export declare class SiteAdminService {
|
|
6
|
-
private restService;
|
|
7
|
-
apiName: string;
|
|
8
|
-
get: (config?: Partial<Rest.Config>) => import("rxjs").Observable<SiteDto>;
|
|
9
|
-
update: (input: UpdateSiteInput, config?: Partial<Rest.Config>) => import("rxjs").Observable<void>;
|
|
10
|
-
constructor(restService: RestService);
|
|
11
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<SiteAdminService, never>;
|
|
12
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<SiteAdminService>;
|
|
13
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { FormGroup, FormArray } from '@angular/forms';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export declare class ValidatorsService {
|
|
4
|
-
constructor();
|
|
5
|
-
private fb;
|
|
6
|
-
private toaster;
|
|
7
|
-
private _LocalizationService;
|
|
8
|
-
/**检查表单- */
|
|
9
|
-
isCheckForm(input: any, module?: string): boolean;
|
|
10
|
-
/**获取表单所有字段是否通过验证 */
|
|
11
|
-
getFormValidationStatus(formEntity: FormGroup | FormArray): {
|
|
12
|
-
[key: string]: any;
|
|
13
|
-
};
|
|
14
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<ValidatorsService, never>;
|
|
15
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<ValidatorsService>;
|
|
16
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CMS_ROUTE_PROVIDERS } from './providers/route.provider';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class CmsConfigModule {
|
|
5
|
-
static forRoot() {
|
|
6
|
-
return {
|
|
7
|
-
ngModule: CmsConfigModule,
|
|
8
|
-
providers: [CMS_ROUTE_PROVIDERS],
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: CmsConfigModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
12
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.5", ngImport: i0, type: CmsConfigModule }); }
|
|
13
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: CmsConfigModule }); }
|
|
14
|
-
}
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: CmsConfigModule, decorators: [{
|
|
16
|
-
type: NgModule
|
|
17
|
-
}] });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY21zLWNvbmZpZy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbXMvY29uZmlnL3NyYy9jbXMtY29uZmlnLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFHakUsTUFBTSxPQUFPLGVBQWU7SUFDMUIsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLGVBQWU7WUFDekIsU0FBUyxFQUFFLENBQUMsbUJBQW1CLENBQUM7U0FDakMsQ0FBQztJQUNKLENBQUM7OEdBTlUsZUFBZTsrR0FBZixlQUFlOytHQUFmLGVBQWU7OzJGQUFmLGVBQWU7a0JBRDNCLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDTVNfUk9VVEVfUFJPVklERVJTIH0gZnJvbSAnLi9wcm92aWRlcnMvcm91dGUucHJvdmlkZXInO1xyXG5cclxuQE5nTW9kdWxlKClcclxuZXhwb3J0IGNsYXNzIENtc0NvbmZpZ01vZHVsZSB7XHJcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxDbXNDb25maWdNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBDbXNDb25maWdNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW0NNU19ST1VURV9QUk9WSURFUlNdLFxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import { Component, inject } from '@angular/core';
|
|
2
|
-
import { FormControl, FormGroup, FormsModule } from '@angular/forms';
|
|
3
|
-
import { CoreModule, LocalizationService } from '@abp/ng.core';
|
|
4
|
-
import { ThemeSharedModule, ToasterService } from '@abp/ng.theme.shared';
|
|
5
|
-
import { DomainAdminService } from '../../proxy/admin/domains';
|
|
6
|
-
import { ValidatorsService } from '../../services/validators.service';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@angular/common";
|
|
9
|
-
import * as i2 from "@angular/forms";
|
|
10
|
-
import * as i3 from "@abp/ng.core";
|
|
11
|
-
import * as i4 from "@ngx-validate/core";
|
|
12
|
-
export class DomainsComponent {
|
|
13
|
-
constructor() {
|
|
14
|
-
this.toaster = inject(ToasterService);
|
|
15
|
-
this._DomainAdminService = inject(DomainAdminService);
|
|
16
|
-
this._LocalizationService = inject(LocalizationService);
|
|
17
|
-
/**domain详情 */
|
|
18
|
-
this.domainInfo = '';
|
|
19
|
-
this._ValidatorsService = inject(ValidatorsService);
|
|
20
|
-
/**表单验证状态
|
|
21
|
-
* {
|
|
22
|
-
* title:true,
|
|
23
|
-
* }
|
|
24
|
-
*/
|
|
25
|
-
this.formValidation = '';
|
|
26
|
-
}
|
|
27
|
-
get domainNameInput() {
|
|
28
|
-
return this.newEntity.get('domainName');
|
|
29
|
-
}
|
|
30
|
-
async ngOnInit() {
|
|
31
|
-
//Called after the constructor, initializing input properties, and the first call to ngOnChanges.
|
|
32
|
-
//Add 'implements OnInit' to the class.
|
|
33
|
-
this.newEntity = new FormGroup({
|
|
34
|
-
domainName: new FormControl('', {
|
|
35
|
-
asyncValidators: this.repetitionAsyncValidator(),
|
|
36
|
-
updateOn: 'blur'
|
|
37
|
-
})
|
|
38
|
-
});
|
|
39
|
-
await this.getDomainsBound();
|
|
40
|
-
}
|
|
41
|
-
/**用于获取已绑定的域名 */
|
|
42
|
-
getDomainsBound() {
|
|
43
|
-
return new Promise((resolve, rejects) => {
|
|
44
|
-
this._DomainAdminService.getBound().subscribe(res => {
|
|
45
|
-
this.domainNameInput.patchValue(res?.domainName || '');
|
|
46
|
-
this.domainInfo = res;
|
|
47
|
-
resolve(res);
|
|
48
|
-
});
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
//检验域名是否已经绑定
|
|
52
|
-
repetitionAsyncValidator() {
|
|
53
|
-
return (ctrl) => {
|
|
54
|
-
return new Promise(resolve => {
|
|
55
|
-
let domainNameInput = this.domainNameInput.value;
|
|
56
|
-
if (!domainNameInput) {
|
|
57
|
-
resolve(null);
|
|
58
|
-
return;
|
|
59
|
-
}
|
|
60
|
-
if (this.domainInfo?.domainName === domainNameInput) {
|
|
61
|
-
resolve(null);
|
|
62
|
-
return;
|
|
63
|
-
}
|
|
64
|
-
var patt = /^(?!-)[A-Za-z0-9-]{1,63}(?<!-)\.[A-Za-z]{2,6}$/;
|
|
65
|
-
if (!patt.test(domainNameInput)) {
|
|
66
|
-
resolve({ repetition: this._LocalizationService.instant(`AbpValidation::ThisFieldMustMatchTheRegularExpression{0}`, patt.toString()) });
|
|
67
|
-
return;
|
|
68
|
-
}
|
|
69
|
-
this._DomainAdminService.nameExists(domainNameInput).subscribe(res => {
|
|
70
|
-
if (res) {
|
|
71
|
-
resolve({ repetition: this._LocalizationService.instant(`Cms::DomainName{0}AlreadyExist`, ctrl.value) });
|
|
72
|
-
}
|
|
73
|
-
else {
|
|
74
|
-
resolve(null);
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
});
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
/**保存 */
|
|
81
|
-
SaveSubmit() {
|
|
82
|
-
let input = this.newEntity.value;
|
|
83
|
-
this.formValidation = this._ValidatorsService.getFormValidationStatus(this.newEntity);
|
|
84
|
-
if (this._ValidatorsService.isCheckForm(this.formValidation, 'Cms'))
|
|
85
|
-
return;
|
|
86
|
-
this._DomainAdminService.update(input).subscribe(async (res) => {
|
|
87
|
-
this.toaster.success(this._LocalizationService.instant(`AbpUi::SavedSuccessfully`));
|
|
88
|
-
await this.getDomainsBound();
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: DomainsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
92
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.5", type: DomainsComponent, isStandalone: true, selector: "cms-domains", ngImport: i0, template: "<form [formGroup]=\"newEntity\" (keydown.enter)=\"$event.preventDefault()\" [class]=\"{'was-validated':formValidation}\" (submit)=\"SaveSubmit()\">\n \n <div class=\"d-flex align-items-center justify-content-between\">\n <h2>{{'Cms::Domain'|abpLocalization}}</h2>\n <button class=\"btn btn-primary btn-sm\" type=\"submit\"><i\n class=\"me-1 fas fa-save\"></i>{{'AbpUi::Save'|abpLocalization}}</button>\n </div>\n <hr class=\"my-3\" />\n <div class=\"mb-2\">\n <input type=\"text\" class=\"form-control\" formControlName=\"domainName\">\n <div class=\"text-danger invalid-feedback\" *ngIf=\"domainNameInput.errors?.repetition\">\n {{domainNameInput.errors?.repetition}}\n </div>\n <div class=\"form-text\">\u6B64\u5904\u662F\u586B\u5199\u57DF\u540D\u7684\u63CF\u8FF0\uFF0C\u9700\u8981\u4E00\u4E2A\u5B57\u6BB5\u7EDF\u4E00\u914D\u7F6E\u57DF\u540D\u591A\u8BED\u8A00\uFF0C</div>\n </div>\n <hr class=\"my-3\" />\n</form>", styles: [""], dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: i3.LocalizationPipe, name: "abpLocalization" }, { kind: "ngmodule", type: ThemeSharedModule }, { kind: "directive", type: i4.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i4.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "ngmodule", type: FormsModule }] }); }
|
|
93
|
-
}
|
|
94
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: DomainsComponent, decorators: [{
|
|
95
|
-
type: Component,
|
|
96
|
-
args: [{ selector: 'cms-domains', standalone: true, imports: [
|
|
97
|
-
CoreModule,
|
|
98
|
-
ThemeSharedModule,
|
|
99
|
-
FormsModule,
|
|
100
|
-
], template: "<form [formGroup]=\"newEntity\" (keydown.enter)=\"$event.preventDefault()\" [class]=\"{'was-validated':formValidation}\" (submit)=\"SaveSubmit()\">\n \n <div class=\"d-flex align-items-center justify-content-between\">\n <h2>{{'Cms::Domain'|abpLocalization}}</h2>\n <button class=\"btn btn-primary btn-sm\" type=\"submit\"><i\n class=\"me-1 fas fa-save\"></i>{{'AbpUi::Save'|abpLocalization}}</button>\n </div>\n <hr class=\"my-3\" />\n <div class=\"mb-2\">\n <input type=\"text\" class=\"form-control\" formControlName=\"domainName\">\n <div class=\"text-danger invalid-feedback\" *ngIf=\"domainNameInput.errors?.repetition\">\n {{domainNameInput.errors?.repetition}}\n </div>\n <div class=\"form-text\">\u6B64\u5904\u662F\u586B\u5199\u57DF\u540D\u7684\u63CF\u8FF0\uFF0C\u9700\u8981\u4E00\u4E2A\u5B57\u6BB5\u7EDF\u4E00\u914D\u7F6E\u57DF\u540D\u591A\u8BED\u8A00\uFF0C</div>\n </div>\n <hr class=\"my-3\" />\n</form>" }]
|
|
101
|
-
}] });
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tYWlucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbXMvY29uZmlnL3NyYy9jb21wb25lbnRzL2RvbWFpbnMvZG9tYWlucy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbXMvY29uZmlnL3NyYy9jb21wb25lbnRzL2RvbWFpbnMvZG9tYWlucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMxRCxPQUFPLEVBQW1CLFdBQVcsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFvQixNQUFNLGdCQUFnQixDQUFDO0FBRXhHLE9BQU8sRUFBRSxVQUFVLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDL0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7QUFhdEUsTUFBTSxPQUFPLGdCQUFnQjtJQVg3QjtRQWFVLFlBQU8sR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUE7UUFDaEMsd0JBQW1CLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDakQseUJBQW9CLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFLM0QsY0FBYztRQUNkLGVBQVUsR0FBSyxFQUFFLENBQUE7UUE2RFQsdUJBQWtCLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDdkQ7Ozs7V0FJRztRQUNILG1CQUFjLEdBQVEsRUFBRSxDQUFDO0tBWTFCO0lBOUVDLElBQUksZUFBZTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFBO0lBQ3pDLENBQUM7SUFJRixLQUFLLENBQUMsUUFBUTtRQUNYLGlHQUFpRztRQUNqRyx1Q0FBdUM7UUFFdkMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLFNBQVMsQ0FBQztZQUM3QixVQUFVLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBRSxFQUFFO2dCQUM5QixlQUFlLEVBQUUsSUFBSSxDQUFDLHdCQUF3QixFQUFFO2dCQUNoRCxRQUFRLEVBQUUsTUFBTTthQUNqQixDQUFDO1NBQ0gsQ0FBQyxDQUFBO1FBQ0YsTUFBTSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUE7SUFFOUIsQ0FBQztJQUVELGdCQUFnQjtJQUNoQixlQUFlO1FBQ2IsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBQyxPQUFPLEVBQUMsRUFBRTtZQUNwQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQSxFQUFFO2dCQUNqRCxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsVUFBVSxJQUFFLEVBQUUsQ0FBQyxDQUFBO2dCQUNwRCxJQUFJLENBQUMsVUFBVSxHQUFDLEdBQUcsQ0FBQTtnQkFDbkIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1lBQ2QsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxZQUFZO0lBQ1osd0JBQXdCO1FBQ3RCLE9BQU8sQ0FBQyxJQUFxQixFQUEwRSxFQUFFO1lBQ3ZHLE9BQU8sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQzNCLElBQUksZUFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFBO2dCQUNoRCxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7b0JBQ3JCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDZCxPQUFNO2dCQUNSLENBQUM7Z0JBQ0QsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLFVBQVUsS0FBRyxlQUFlLEVBQUUsQ0FBQztvQkFDbEQsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNkLE9BQU07Z0JBQ1IsQ0FBQztnQkFDRCxJQUFJLElBQUksR0FBRyxnREFBZ0QsQ0FBQztnQkFDNUQsSUFBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUMsQ0FBQztvQkFDOUIsT0FBTyxDQUFDLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsMERBQTBELEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUN4SSxPQUFNO2dCQUNSLENBQUM7Z0JBQ0QsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7b0JBQ25FLElBQUksR0FBRyxFQUFFLENBQUM7d0JBQ1IsT0FBTyxDQUFDLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsZ0NBQWdDLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDM0csQ0FBQzt5QkFBTSxDQUFDO3dCQUNOLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDaEIsQ0FBQztnQkFDSCxDQUFDLENBQUMsQ0FBQTtZQUNKLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQVVELFFBQVE7SUFDUixVQUFVO1FBQ1IsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUE7UUFDaEMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3RGLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFDLEtBQUssQ0FBQztZQUFFLE9BQU87UUFDM0UsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFDLEdBQUcsRUFBQyxFQUFFO1lBQzNELElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxDQUFDO1lBQ3BGLE1BQU0sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFBO1FBQzlCLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQzs4R0F4RlUsZ0JBQWdCO2tHQUFoQixnQkFBZ0IsdUVDbkI3Qiw4K0JBZ0JPLHlEREZILFVBQVUsc25DQUNWLGlCQUFpQixxU0FDakIsV0FBVzs7MkZBR0YsZ0JBQWdCO2tCQVg1QixTQUFTOytCQUNFLGFBQWEsY0FHWCxJQUFJLFdBQ1A7d0JBQ1AsVUFBVTt3QkFDVixpQkFBaUI7d0JBQ2pCLFdBQVc7cUJBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIEZvcm1zTW9kdWxlLCBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgIE9ic2VydmFibGUgIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb3JlTW9kdWxlLCBMb2NhbGl6YXRpb25TZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IFRoZW1lU2hhcmVkTW9kdWxlLCBUb2FzdGVyU2VydmljZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IERvbWFpbkFkbWluU2VydmljZSB9IGZyb20gJy4uLy4uL3Byb3h5L2FkbWluL2RvbWFpbnMnO1xuaW1wb3J0IHsgVmFsaWRhdG9yc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy92YWxpZGF0b3JzLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjbXMtZG9tYWlucycsXG4gIHRlbXBsYXRlVXJsOiAnLi9kb21haW5zLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZG9tYWlucy5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29yZU1vZHVsZSxcbiAgICBUaGVtZVNoYXJlZE1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBEb21haW5zQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0e1xuXG4gIHByaXZhdGUgdG9hc3RlciA9IGluamVjdChUb2FzdGVyU2VydmljZSlcbiAgcHJpdmF0ZSBfRG9tYWluQWRtaW5TZXJ2aWNlID0gaW5qZWN0KERvbWFpbkFkbWluU2VydmljZSk7XG4gIHByaXZhdGUgX0xvY2FsaXphdGlvblNlcnZpY2UgPSBpbmplY3QoTG9jYWxpemF0aW9uU2VydmljZSk7XG5cbiAgLyoq6KGo5Y2V5a6e5L2TICovXG4gIG5ld0VudGl0eTogRm9ybUdyb3VwIHwgdW5kZWZpbmVkO1xuXG4gIC8qKmRvbWFpbuivpuaDhSAqL1xuICBkb21haW5JbmZvOmFueT0nJ1xuICBnZXQgZG9tYWluTmFtZUlucHV0KCkge1xuICAgIHJldHVybiB0aGlzLm5ld0VudGl0eS5nZXQoJ2RvbWFpbk5hbWUnKVxuICB9XG5cblxuXG4gYXN5bmMgbmdPbkluaXQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgLy9DYWxsZWQgYWZ0ZXIgdGhlIGNvbnN0cnVjdG9yLCBpbml0aWFsaXppbmcgaW5wdXQgcHJvcGVydGllcywgYW5kIHRoZSBmaXJzdCBjYWxsIHRvIG5nT25DaGFuZ2VzLlxuICAgIC8vQWRkICdpbXBsZW1lbnRzIE9uSW5pdCcgdG8gdGhlIGNsYXNzLlxuICBcbiAgICB0aGlzLm5ld0VudGl0eSA9IG5ldyBGb3JtR3JvdXAoe1xuICAgICAgZG9tYWluTmFtZTogbmV3IEZvcm1Db250cm9sKCcnLCB7XG4gICAgICAgIGFzeW5jVmFsaWRhdG9yczogdGhpcy5yZXBldGl0aW9uQXN5bmNWYWxpZGF0b3IoKSxcbiAgICAgICAgdXBkYXRlT246ICdibHVyJ1xuICAgICAgfSlcbiAgICB9KVxuICAgIGF3YWl0IHRoaXMuZ2V0RG9tYWluc0JvdW5kKClcblxuICB9XG5cbiAgLyoq55So5LqO6I635Y+W5bey57uR5a6a55qE5Z+f5ZCNICovXG4gIGdldERvbWFpbnNCb3VuZCgpe1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSxyZWplY3RzKT0+e1xuICAgICAgdGhpcy5fRG9tYWluQWRtaW5TZXJ2aWNlLmdldEJvdW5kKCkuc3Vic2NyaWJlKHJlcz0+e1xuICAgICAgICB0aGlzLmRvbWFpbk5hbWVJbnB1dC5wYXRjaFZhbHVlKHJlcz8uZG9tYWluTmFtZXx8JycpXG4gICAgICAgIHRoaXMuZG9tYWluSW5mbz1yZXNcbiAgICAgICAgcmVzb2x2ZShyZXMpXG4gICAgICB9KVxuICAgIH0pXG4gIH1cblxuICAvL+ajgOmqjOWfn+WQjeaYr+WQpuW3sue7j+e7keWumlxuICByZXBldGl0aW9uQXN5bmNWYWxpZGF0b3IoKSB7XG4gICAgcmV0dXJuIChjdHJsOiBBYnN0cmFjdENvbnRyb2wpOiBQcm9taXNlPFZhbGlkYXRpb25FcnJvcnMgfCBudWxsPiB8IE9ic2VydmFibGU8VmFsaWRhdGlvbkVycm9ycyB8IG51bGw+ID0+IHtcbiAgICAgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICAgICAgbGV0IGRvbWFpbk5hbWVJbnB1dCA9IHRoaXMuZG9tYWluTmFtZUlucHV0LnZhbHVlXG4gICAgICAgIGlmICghZG9tYWluTmFtZUlucHV0KSB7XG4gICAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5kb21haW5JbmZvPy5kb21haW5OYW1lPT09ZG9tYWluTmFtZUlucHV0KSB7XG4gICAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuICAgICAgICB2YXIgcGF0dCA9IC9eKD8hLSlbQS1aYS16MC05LV17MSw2M30oPzwhLSlcXC5bQS1aYS16XXsyLDZ9JC87XG4gICAgICAgIGlmKCFwYXR0LnRlc3QoZG9tYWluTmFtZUlucHV0KSl7XG4gICAgICAgICAgcmVzb2x2ZSh7IHJlcGV0aXRpb246IHRoaXMuX0xvY2FsaXphdGlvblNlcnZpY2UuaW5zdGFudChgQWJwVmFsaWRhdGlvbjo6VGhpc0ZpZWxkTXVzdE1hdGNoVGhlUmVndWxhckV4cHJlc3Npb257MH1gLCBwYXR0LnRvU3RyaW5nKCkpIH0pO1xuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG4gICAgICAgIHRoaXMuX0RvbWFpbkFkbWluU2VydmljZS5uYW1lRXhpc3RzKGRvbWFpbk5hbWVJbnB1dCkuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgICAgaWYgKHJlcykge1xuICAgICAgICAgICAgcmVzb2x2ZSh7IHJlcGV0aXRpb246IHRoaXMuX0xvY2FsaXphdGlvblNlcnZpY2UuaW5zdGFudChgQ21zOjpEb21haW5OYW1lezB9QWxyZWFkeUV4aXN0YCwgY3RybC52YWx1ZSkgfSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJlc29sdmUobnVsbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgfSk7XG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgX1ZhbGlkYXRvcnNTZXJ2aWNlID0gaW5qZWN0KFZhbGlkYXRvcnNTZXJ2aWNlKTtcbiAgLyoq6KGo5Y2V6aqM6K+B54q25oCBXG4gICAqIHtcbiAgICogIHRpdGxlOnRydWUsXG4gICAqIH1cbiAgICovXG4gIGZvcm1WYWxpZGF0aW9uOiBhbnkgPSAnJztcblxuICAvKirkv53lrZggKi9cbiAgU2F2ZVN1Ym1pdCgpIHtcbiAgICBsZXQgaW5wdXQgPSB0aGlzLm5ld0VudGl0eS52YWx1ZVxuICAgIHRoaXMuZm9ybVZhbGlkYXRpb24gPSB0aGlzLl9WYWxpZGF0b3JzU2VydmljZS5nZXRGb3JtVmFsaWRhdGlvblN0YXR1cyh0aGlzLm5ld0VudGl0eSk7XG4gICAgaWYgKHRoaXMuX1ZhbGlkYXRvcnNTZXJ2aWNlLmlzQ2hlY2tGb3JtKHRoaXMuZm9ybVZhbGlkYXRpb24sJ0NtcycpKSByZXR1cm47XG4gICAgdGhpcy5fRG9tYWluQWRtaW5TZXJ2aWNlLnVwZGF0ZShpbnB1dCkuc3Vic2NyaWJlKGFzeW5jKHJlcyk9PntcbiAgICAgIHRoaXMudG9hc3Rlci5zdWNjZXNzKHRoaXMuX0xvY2FsaXphdGlvblNlcnZpY2UuaW5zdGFudChgQWJwVWk6OlNhdmVkU3VjY2Vzc2Z1bGx5YCkpO1xuICAgICAgYXdhaXQgdGhpcy5nZXREb21haW5zQm91bmQoKVxuICAgIH0pXG4gIH1cbn1cbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwibmV3RW50aXR5XCIgKGtleWRvd24uZW50ZXIpPVwiJGV2ZW50LnByZXZlbnREZWZhdWx0KClcIiBbY2xhc3NdPVwieyd3YXMtdmFsaWRhdGVkJzpmb3JtVmFsaWRhdGlvbn1cIiAoc3VibWl0KT1cIlNhdmVTdWJtaXQoKVwiPlxuICAgIFxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCI+XG4gICAgICAgIDxoMj57eydDbXM6OkRvbWFpbid8YWJwTG9jYWxpemF0aW9ufX08L2gyPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGJ0bi1zbVwiIHR5cGU9XCJzdWJtaXRcIj48aVxuICAgICAgICAgICAgICAgIGNsYXNzPVwibWUtMSBmYXMgZmEtc2F2ZVwiPjwvaT57eydBYnBVaTo6U2F2ZSd8YWJwTG9jYWxpemF0aW9ufX08L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgICA8aHIgY2xhc3M9XCJteS0zXCIgLz5cbiAgICA8ZGl2IGNsYXNzPVwibWItMlwiPlxuICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGZvcm1Db250cm9sTmFtZT1cImRvbWFpbk5hbWVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtZGFuZ2VyIGludmFsaWQtZmVlZGJhY2tcIiAqbmdJZj1cImRvbWFpbk5hbWVJbnB1dC5lcnJvcnM/LnJlcGV0aXRpb25cIj5cbiAgICAgICAgICAgIHt7ZG9tYWluTmFtZUlucHV0LmVycm9ycz8ucmVwZXRpdGlvbn19XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS10ZXh0XCI+5q2k5aSE5piv5aGr5YaZ5Z+f5ZCN55qE5o+P6L+w77yM6ZyA6KaB5LiA5Liq5a2X5q6157uf5LiA6YWN572u5Z+f5ZCN5aSa6K+t6KiA77yMPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGhyIGNsYXNzPVwibXktM1wiIC8+XG48L2Zvcm0+Il19
|