@acorex/platform 18.0.0 → 18.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -7
- package/auth/README.md +3 -3
- package/auth/lib/auth.strategy.d.ts +6 -3
- package/common/README.md +3 -3
- package/common/index.d.ts +5 -3
- package/common/lib/app/application.types.d.ts +234 -0
- package/common/lib/app/index.d.ts +2 -0
- package/common/lib/common.module.d.ts +6 -4
- package/common/lib/configs/app.config.d.ts +1 -1
- package/common/lib/layout/beardcrumb.type.d.ts +6 -0
- package/common/lib/layout/grid-layout/grid-layout.directive.d.ts +15 -0
- package/common/lib/layout/grid-layout/grid-layout.types.d.ts +19 -0
- package/common/lib/layout/grid-layout/index.d.ts +2 -0
- package/common/lib/layout/index.d.ts +9 -0
- package/common/lib/layout/logo/index.d.ts +2 -0
- package/common/lib/layout/sticky.directive.d.ts +25 -0
- package/common/lib/layout/theme/components/slots/index.d.ts +3 -0
- package/common/lib/layout/theme/components/slots/navbar-slot.component.d.ts +10 -0
- package/common/lib/layout/theme/store/admin-layout.selectors.d.ts +5 -0
- package/common/lib/schema/entity/entity.class.d.ts +155 -0
- package/common/lib/schema/index.d.ts +8 -0
- package/common/lib/schema/schema.types.d.ts +15 -0
- package/common/lib/schema/widget/index.d.ts +5 -0
- package/common/lib/schema/widget/widget-base.d.ts +45 -0
- package/common/lib/schema/widget/widget-token.d.ts +16 -0
- package/common/lib/schema/widgets/avatar/avatar-widget-edit.component.d.ts +16 -0
- package/common/lib/schema/widgets/avatar/avatar-widget-view.component.d.ts +13 -0
- package/common/lib/schema/widgets/checkbox/checkbox-widget-column.component.d.ts +11 -0
- package/common/lib/schema/widgets/checkbox/checkbox-widget-edit.component.d.ts +6 -0
- package/common/lib/schema/widgets/checkbox/checkbox-widget-view.component.d.ts +11 -0
- package/common/lib/schema/widgets/common-widget-filter/boolean-widget-filter.component.d.ts +18 -0
- package/common/lib/schema/widgets/common-widget-filter/number-widget-filter.component.d.ts +12 -0
- package/common/lib/schema/widgets/common-widget-filter/string-widget-filter.component.d.ts +12 -0
- package/common/lib/schema/widgets/common-widgets.module.d.ts +32 -0
- package/common/lib/schema/widgets/dateTime/dateTime-widget-column.component.d.ts +11 -0
- package/common/lib/schema/widgets/dateTime/dateTime-widget-edit.component.d.ts +26 -0
- package/common/lib/schema/widgets/dateTime/dateTime-widget-filter.component.d.ts +16 -0
- package/common/lib/schema/widgets/dateTime/dateTime-widget-view.component.d.ts +11 -0
- package/common/lib/schema/widgets/email/email-widget-column.component.d.ts +16 -0
- package/common/lib/schema/widgets/email/email-widget-edit.component.d.ts +28 -0
- package/common/lib/schema/widgets/email/email-widget-view.component.d.ts +16 -0
- package/common/lib/schema/widgets/file/file-widget-column.component.d.ts +8 -0
- package/common/lib/schema/widgets/file/file-widget-edit.component.d.ts +17 -0
- package/common/lib/schema/widgets/file/file-widget-filter.component.d.ts +6 -0
- package/common/lib/schema/widgets/file/file-widget-view.component.d.ts +17 -0
- package/common/lib/schema/widgets/gallery/gallery-widget-edit.component.d.ts +15 -0
- package/common/lib/schema/widgets/gallery/gallery-widget-filter.component.d.ts +6 -0
- package/common/lib/schema/widgets/gallery/gallery-widget-view.component.d.ts +16 -0
- package/common/lib/schema/widgets/lookup/lookup-widget-column.component.d.ts +17 -0
- package/common/lib/schema/widgets/lookup/lookup-widget-edit.component.d.ts +15 -0
- package/common/lib/schema/widgets/lookup/lookup-widget-filter.component.d.ts +17 -0
- package/common/lib/schema/widgets/lookup/lookup-widget-view.component.d.ts +17 -0
- package/common/lib/schema/widgets/map/map-widget-edit.component.d.ts +15 -0
- package/common/lib/schema/widgets/map/map-widget-view.component.d.ts +17 -0
- package/common/lib/schema/widgets/messenger/messenger-widget-column.component.d.ts +15 -0
- package/common/lib/schema/widgets/messenger/messenger-widget-edit.component.d.ts +14 -0
- package/common/lib/schema/widgets/messenger/messenger-widget-view.component.d.ts +17 -0
- package/common/lib/schema/widgets/number/number-widget-edit.component.d.ts +7 -0
- package/common/lib/schema/widgets/number/number-widget-view.component.d.ts +8 -0
- package/common/lib/schema/widgets/password/password-widget-column.component.d.ts +14 -0
- package/common/lib/schema/widgets/password/password-widget-edit.component.d.ts +6 -0
- package/common/lib/schema/widgets/password/password-widget-view.component.d.ts +18 -0
- package/common/lib/schema/widgets/phone/phone-widget-column.component.d.ts +15 -0
- package/common/lib/schema/widgets/phone/phone-widget-edit.component.d.ts +29 -0
- package/common/lib/schema/widgets/phone/phone-widget-view.component.d.ts +18 -0
- package/common/lib/schema/widgets/rich-text/rich-text-widget-column.component.d.ts +11 -0
- package/common/lib/schema/widgets/rich-text/rich-text-widget-edit.component.d.ts +33 -0
- package/common/lib/schema/widgets/rich-text/rich-text-widget-view.component.d.ts +10 -0
- package/common/lib/schema/widgets/selection-list/selection-list-widget-column.component.d.ts +16 -0
- package/common/lib/schema/widgets/selection-list/selection-list-widget-edit.component.d.ts +12 -0
- package/common/lib/schema/widgets/selection-list/selection-list-widget-filter.component.d.ts +9 -0
- package/common/lib/schema/widgets/selection-list/selection-list-widget-view.component.d.ts +15 -0
- package/common/lib/schema/widgets/signature-pad/signature-pad-widget-edit.component.d.ts +19 -0
- package/common/lib/schema/widgets/signature-pad/signature-pad-widget-view.component.d.ts +8 -0
- package/common/lib/schema/widgets/text/largetext-widget-edit.component.d.ts +6 -0
- package/common/lib/schema/widgets/text/text-widget-column.component.d.ts +12 -0
- package/common/lib/schema/widgets/text/text-widget-edit.component.d.ts +23 -0
- package/common/lib/schema/widgets/text/text-widget-view.component.d.ts +11 -0
- package/common/lib/schema/widgets/toggle/toggle-widget-column.component.d.ts +11 -0
- package/common/lib/schema/widgets/toggle/toggle-widget-edit.component.d.ts +6 -0
- package/common/lib/schema/widgets/toggle/toggle-widget-view.component.d.ts +11 -0
- package/common/lib/store/common.actions.d.ts +1 -0
- package/common/lib/utils/data-generator.d.ts +12 -0
- package/common/lib/utils/index.d.ts +1 -1
- package/common/lib/utils/router-util.service.d.ts +1 -1
- package/common/lib/workflows/common.workflow.d.ts +38 -0
- package/common/lib/workflows/error-handler.d.ts +8 -0
- package/esm2022/auth/index.mjs +1 -1
- package/esm2022/auth/lib/application/application.loader.mjs +1 -1
- package/esm2022/auth/lib/application/application.types.mjs +1 -1
- package/esm2022/auth/lib/auth-registry.service.mjs +1 -1
- package/esm2022/auth/lib/auth.guard.mjs +1 -1
- package/esm2022/auth/lib/auth.module.mjs +1 -1
- package/esm2022/auth/lib/auth.strategy.mjs +1 -1
- package/esm2022/auth/lib/errors.types.mjs +1 -1
- package/esm2022/auth/lib/feature/feature.directive.mjs +1 -1
- package/esm2022/auth/lib/feature/feature.guard.mjs +1 -1
- package/esm2022/auth/lib/feature/feature.loader.mjs +1 -1
- package/esm2022/auth/lib/feature/feature.types.mjs +1 -1
- package/esm2022/auth/lib/feature/index.mjs +1 -1
- package/esm2022/auth/lib/permission/index.mjs +1 -1
- package/esm2022/auth/lib/permission/permission.directive.mjs +1 -1
- package/esm2022/auth/lib/permission/permission.guard.mjs +1 -1
- package/esm2022/auth/lib/permission/permission.loader.mjs +1 -1
- package/esm2022/auth/lib/permission/permission.types.mjs +1 -1
- package/esm2022/auth/lib/session.service.mjs +4 -2
- package/esm2022/auth/lib/session.types.mjs +1 -1
- package/esm2022/auth/lib/tenant/tenant.loader.mjs +1 -1
- package/esm2022/auth/lib/tenant/tenant.types.mjs +1 -1
- package/esm2022/auth/lib/user/user.types.mjs +1 -1
- package/esm2022/common/index.mjs +6 -4
- package/esm2022/common/lib/app/application.types.mjs +39 -0
- package/esm2022/common/lib/app/index.mjs +3 -0
- package/esm2022/common/lib/app/operators.mjs +50 -0
- package/esm2022/common/lib/common.module.mjs +20 -44
- package/esm2022/common/lib/configs/app.config.mjs +2 -2
- package/esm2022/common/lib/configs/config.types.mjs +3 -0
- package/esm2022/common/lib/data/data-provider.types.mjs +1 -1
- package/esm2022/common/lib/errors/error-handler-registry.service.mjs +1 -1
- package/esm2022/common/lib/errors/error-handler.types.mjs +1 -1
- package/esm2022/common/lib/errors/global-error-handler.mjs +1 -1
- package/esm2022/common/lib/errors/index.mjs +1 -1
- package/esm2022/common/lib/layout/beardcrumb.type.mjs +2 -0
- package/esm2022/common/lib/layout/component-slot/component-slot-loader.service.mjs +56 -0
- package/esm2022/common/lib/layout/component-slot/component-slot-registery.service.mjs +28 -0
- package/esm2022/common/lib/layout/component-slot/component-slot.directive.mjs +24 -0
- package/esm2022/common/lib/layout/component-slot/component-slot.module.mjs +72 -0
- package/esm2022/common/lib/layout/component-slot/component-slot.types.mjs +2 -0
- package/esm2022/common/lib/layout/component-slot/index.mjs +6 -0
- package/esm2022/common/lib/layout/grid-layout/grid-layout.directive.mjs +61 -0
- package/esm2022/common/lib/layout/grid-layout/grid-layout.types.mjs +2 -0
- package/esm2022/common/lib/layout/grid-layout/index.mjs +3 -0
- package/esm2022/common/lib/layout/index.mjs +10 -0
- package/esm2022/common/lib/layout/layout.service.mjs +79 -0
- package/esm2022/common/lib/layout/logo/index.mjs +3 -0
- package/esm2022/common/lib/layout/logo/logo.component.mjs +38 -0
- package/esm2022/common/lib/layout/logo/logo.types.mjs +21 -0
- package/esm2022/common/lib/layout/menu/index.mjs +3 -0
- package/esm2022/common/lib/layout/menu/menu.loader.mjs +39 -0
- package/esm2022/common/lib/layout/menu/menu.types.mjs +2 -0
- package/esm2022/common/lib/layout/sticky.directive.mjs +78 -0
- package/esm2022/common/lib/layout/theme/components/slots/footer-text-slot.component.mjs +20 -0
- package/esm2022/common/lib/layout/theme/components/slots/index.mjs +4 -0
- package/esm2022/common/lib/layout/theme/components/slots/navbar-slot.component.mjs +36 -0
- package/esm2022/common/lib/layout/theme/components/slots/theme-slot.component.mjs +48 -0
- package/esm2022/common/lib/layout/theme/store/admin-layout.actions.mjs +12 -0
- package/esm2022/common/lib/layout/theme/store/admin-layout.effects.mjs +29 -0
- package/esm2022/common/lib/layout/theme/store/admin-layout.reducers.mjs +60 -0
- package/esm2022/common/lib/layout/theme/store/admin-layout.selectors.mjs +8 -0
- package/esm2022/common/lib/layout/theme/store/admin-layout.state.mjs +16 -0
- package/esm2022/common/lib/layout/theme/store/index.mjs +6 -0
- package/esm2022/common/lib/schema/component-loader.mjs +2 -0
- package/esm2022/common/lib/schema/entity/entity-registery.service.mjs +70 -0
- package/esm2022/common/lib/schema/entity/entity.class.mjs +32 -0
- package/esm2022/common/lib/schema/entity/entity.loader.mjs +13 -0
- package/esm2022/common/lib/schema/entity/index.mjs +4 -0
- package/esm2022/common/lib/schema/formats.mjs +2 -0
- package/esm2022/common/lib/schema/index.mjs +9 -0
- package/esm2022/common/lib/schema/schema-registery.service.mjs +33 -0
- package/esm2022/common/lib/schema/schema.module.mjs +23 -0
- package/esm2022/common/lib/schema/schema.types.mjs +2 -0
- package/esm2022/common/lib/schema/widget/index.mjs +6 -0
- package/esm2022/common/lib/schema/widget/widget-base.mjs +113 -0
- package/esm2022/common/lib/schema/widget/widget-column-renderer.mjs +118 -0
- package/esm2022/common/lib/schema/widget/widget-filter-renderer.mjs +133 -0
- package/esm2022/common/lib/schema/widget/widget-renderer.mjs +144 -0
- package/esm2022/common/lib/schema/widget/widget-token.mjs +3 -0
- package/esm2022/common/lib/schema/widgets/avatar/avatar-widget-edit.component.mjs +160 -0
- package/esm2022/common/lib/schema/widgets/avatar/avatar-widget-view.component.mjs +63 -0
- package/esm2022/common/lib/schema/widgets/checkbox/checkbox-widget-column.component.mjs +53 -0
- package/esm2022/common/lib/schema/widgets/checkbox/checkbox-widget-edit.component.mjs +22 -0
- package/esm2022/common/lib/schema/widgets/checkbox/checkbox-widget-view.component.mjs +47 -0
- package/esm2022/common/lib/schema/widgets/common-widget-filter/boolean-widget-filter.component.mjs +147 -0
- package/esm2022/common/lib/schema/widgets/common-widget-filter/number-widget-filter.component.mjs +135 -0
- package/esm2022/common/lib/schema/widgets/common-widget-filter/string-widget-filter.component.mjs +125 -0
- package/esm2022/common/lib/schema/widgets/common-widgets.module.mjs +505 -0
- package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-column.component.mjs +44 -0
- package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-edit.component.mjs +178 -0
- package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-filter.component.mjs +213 -0
- package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-view.component.mjs +71 -0
- package/esm2022/common/lib/schema/widgets/email/email-widget-column.component.mjs +73 -0
- package/esm2022/common/lib/schema/widgets/email/email-widget-edit.component.mjs +249 -0
- package/esm2022/common/lib/schema/widgets/email/email-widget-view.component.mjs +108 -0
- package/esm2022/common/lib/schema/widgets/file/file-widget-column.component.mjs +27 -0
- package/esm2022/common/lib/schema/widgets/file/file-widget-edit.component.mjs +200 -0
- package/esm2022/common/lib/schema/widgets/file/file-widget-filter.component.mjs +27 -0
- package/esm2022/common/lib/schema/widgets/file/file-widget-view.component.mjs +153 -0
- package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-edit.component.mjs +189 -0
- package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-filter.component.mjs +27 -0
- package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-types.mjs +2 -0
- package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-view.component.mjs +173 -0
- package/esm2022/common/lib/schema/widgets/index.mjs +2 -0
- package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-column.component.mjs +43 -0
- package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-edit.component.mjs +74 -0
- package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-filter.component.mjs +115 -0
- package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-view.component.mjs +54 -0
- package/esm2022/common/lib/schema/widgets/map/map-widget-edit.component.mjs +91 -0
- package/esm2022/common/lib/schema/widgets/map/map-widget-view.component.mjs +63 -0
- package/esm2022/common/lib/schema/widgets/messenger/messenger-widget-column.component.mjs +71 -0
- package/esm2022/common/lib/schema/widgets/messenger/messenger-widget-edit.component.mjs +136 -0
- package/esm2022/common/lib/schema/widgets/messenger/messenger-widget-view.component.mjs +132 -0
- package/esm2022/common/lib/schema/widgets/number/number-widget-edit.component.mjs +46 -0
- package/esm2022/common/lib/schema/widgets/number/number-widget-view.component.mjs +30 -0
- package/esm2022/common/lib/schema/widgets/password/change-password.component.mjs +174 -0
- package/esm2022/common/lib/schema/widgets/password/password-widget-column.component.mjs +67 -0
- package/esm2022/common/lib/schema/widgets/password/password-widget-edit.component.mjs +41 -0
- package/esm2022/common/lib/schema/widgets/password/password-widget-view.component.mjs +109 -0
- package/esm2022/common/lib/schema/widgets/phone/phone-widget-column.component.mjs +91 -0
- package/esm2022/common/lib/schema/widgets/phone/phone-widget-edit.component.mjs +245 -0
- package/esm2022/common/lib/schema/widgets/phone/phone-widget-view.component.mjs +123 -0
- package/esm2022/common/lib/schema/widgets/rich-text/rich-text-widget-column.component.mjs +61 -0
- package/esm2022/common/lib/schema/widgets/rich-text/rich-text-widget-edit.component.mjs +67 -0
- package/esm2022/common/lib/schema/widgets/rich-text/rich-text-widget-view.component.mjs +34 -0
- package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-column.component.mjs +45 -0
- package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-edit.component.mjs +53 -0
- package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-filter.component.mjs +41 -0
- package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-view.component.mjs +45 -0
- package/esm2022/common/lib/schema/widgets/signature-pad/signature-pad-widget-edit.component.mjs +128 -0
- package/esm2022/common/lib/schema/widgets/signature-pad/signature-pad-widget-view.component.mjs +41 -0
- package/esm2022/common/lib/schema/widgets/text/largetext-widget-edit.component.mjs +37 -0
- package/esm2022/common/lib/schema/widgets/text/text-widget-column.component.mjs +46 -0
- package/esm2022/common/lib/schema/widgets/text/text-widget-edit.component.mjs +162 -0
- package/esm2022/common/lib/schema/widgets/text/text-widget-view.component.mjs +66 -0
- package/esm2022/common/lib/schema/widgets/toggle/toggle-widget-column.component.mjs +57 -0
- package/esm2022/common/lib/schema/widgets/toggle/toggle-widget-edit.component.mjs +25 -0
- package/esm2022/common/lib/schema/widgets/toggle/toggle-widget-view.component.mjs +49 -0
- package/esm2022/common/lib/settings/index.mjs +1 -1
- package/esm2022/common/lib/settings/settings.loader.mjs +1 -1
- package/esm2022/common/lib/settings/settings.service.mjs +1 -1
- package/esm2022/common/lib/settings/settings.types.mjs +1 -1
- package/esm2022/common/lib/store/common.actions.mjs +2 -1
- package/esm2022/common/lib/store/common.effects.mjs +1 -1
- package/esm2022/common/lib/store/index.mjs +1 -1
- package/esm2022/common/lib/utils/clipboard-service.mjs +1 -1
- package/esm2022/common/lib/utils/data-generator.mjs +47 -0
- package/esm2022/common/lib/utils/index.mjs +2 -2
- package/esm2022/common/lib/utils/router-util.service.mjs +1 -1
- package/esm2022/common/lib/workflows/common.workflow.mjs +68 -0
- package/esm2022/common/lib/workflows/error-handler.mjs +24 -0
- package/esm2022/common/lib/workflows/index.mjs +3 -0
- package/esm2022/index.mjs +1 -1
- package/esm2022/layout/builder/acorex-platform-layout-builder.mjs +5 -0
- package/esm2022/layout/builder/index.mjs +2 -0
- package/esm2022/layout/builder/lib/builder/builder.module.mjs +67 -0
- package/esm2022/layout/builder/lib/builder/builder.service.mjs +81 -0
- package/esm2022/layout/builder/lib/builder/index.mjs +9 -0
- package/esm2022/layout/builder/lib/builder/layout.types.mjs +2 -0
- package/esm2022/layout/builder/lib/builder/widget-column-renderer.mjs +110 -0
- package/esm2022/layout/builder/lib/builder/widget-container.component.mjs +55 -0
- package/esm2022/layout/builder/lib/builder/widget-registery.service.mjs +33 -0
- package/esm2022/layout/builder/lib/builder/widget-renderer.component.mjs +293 -0
- package/esm2022/layout/builder/lib/builder/widget.types.mjs +74 -0
- package/esm2022/layout/entity/acorex-platform-layout-entity.mjs +5 -0
- package/esm2022/layout/entity/index.mjs +2 -0
- package/esm2022/layout/entity/lib/entity-detail-list.viewmodel.mjs +154 -0
- package/esm2022/layout/entity/lib/entity-master-create.viewmodel.mjs +128 -0
- package/esm2022/layout/entity/lib/entity-master-list.viewmodel.mjs +278 -0
- package/esm2022/layout/entity/lib/entity-master-single.viewmodel.mjs +230 -0
- package/esm2022/layout/entity/lib/entity-master-update.viewmodel.mjs +101 -0
- package/esm2022/layout/entity/lib/entity-registery.service.mjs +69 -0
- package/esm2022/layout/entity/lib/entity.config.mjs +4 -0
- package/esm2022/layout/entity/lib/entity.module.mjs +134 -0
- package/esm2022/layout/entity/lib/entity.viewmodel.mjs +32 -0
- package/esm2022/layout/entity/lib/index.mjs +9 -0
- package/esm2022/layout/entity/lib/widgets/lookup-widget/index.mjs +8 -0
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-column.component.mjs +19 -0
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-designer.component.mjs +19 -0
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.mjs +127 -0
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-filter.component.mjs +20 -0
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-print.component.mjs +19 -0
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.component.mjs +105 -0
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.viewmodel.mjs +85 -0
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-view.component.mjs +19 -0
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget.config.mjs +24 -0
- package/esm2022/layout/entity/lib/workflows/create-entity.workflow.mjs +93 -0
- package/esm2022/layout/entity/lib/workflows/delete-entity.workflow.mjs +123 -0
- package/esm2022/layout/entity/lib/workflows/modify-section.workflow.mjs +104 -0
- package/esm2022/layout/entity/lib/workflows/show-details.workflow.mjs +36 -0
- package/esm2022/layouts/index.mjs +1 -3
- package/esm2022/layouts/lib/admin/admin.module.mjs +9 -17
- package/esm2022/layouts/lib/admin/admin.routes.mjs +7 -8
- package/esm2022/layouts/lib/admin/custom-reuse.strategy.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.component.mjs +6 -6
- package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.config.mjs +3 -2
- package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/detail-view.config.mjs +3 -2
- package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.mjs +8 -11
- package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/index.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/entity-custom-view/entity-custom-view.component.mjs +5 -5
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/index.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-columns/list-view-option-columns.component.mjs +4 -4
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-conditions.component.mjs +6 -9
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-filter-operator.component.mjs +19 -19
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-sorting/list-view-option-sorting.component.mjs +6 -8
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.mjs +6 -7
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/index.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/list-view.config.mjs +3 -3
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/list-view.module.mjs +2 -3
- package/esm2022/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.component.mjs +5 -5
- package/esm2022/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.config.mjs +3 -2
- package/esm2022/layouts/lib/admin/entity-layout/entity-quick-view/entity-quick-view.component.mjs +5 -6
- package/esm2022/layouts/lib/admin/entity-layout/index.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/workflows/create-entity.workflow.mjs +2 -2
- package/esm2022/layouts/lib/admin/entity-layout/workflows/delete-entity.workflow.mjs +2 -2
- package/esm2022/layouts/lib/admin/entity-layout/workflows/index.mjs +4 -1
- package/esm2022/layouts/lib/admin/entity-layout/workflows/modify-entity.workflow.mjs +2 -2
- package/esm2022/layouts/lib/admin/entity-layout/workflows/modify-section.workflow.mjs +85 -0
- package/esm2022/layouts/lib/admin/entity-layout/workflows/show-details.workflow.mjs +27 -1
- package/esm2022/layouts/lib/admin/entity-layout/workflows/show-list.workflow.mjs +26 -1
- package/esm2022/layouts/lib/admin/entity-layout/workflows/show-quick-view.workflow.mjs +41 -1
- package/esm2022/layouts/lib/admin/entity.resolver.mjs +1 -1
- package/esm2022/layouts/lib/admin/index.mjs +1 -3
- package/esm2022/layouts/lib/layout.module.mjs +9 -14
- package/esm2022/mocks/index.mjs +1 -1
- package/esm2022/mocks/lib/mocks.module.mjs +1 -1
- package/esm2022/mocks/lib/services/mocker.service.mjs +1 -1
- package/esm2022/mocks/lib/storage/storage.mock.service.mjs +1 -1
- package/esm2022/native/index.mjs +1 -1
- package/esm2022/native/lib/native.service.mjs +1 -1
- package/esm2022/themes/default/acorex-platform-themes-default.mjs +5 -0
- package/esm2022/themes/default/index.mjs +3 -0
- package/esm2022/themes/default/lib/default.module.mjs +74 -0
- package/esm2022/themes/default/lib/entity-reuse.strategy.mjs +21 -0
- package/esm2022/themes/default/lib/layout.routes.mjs +20 -0
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.mjs +114 -0
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.mjs +93 -0
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-list-view.component.mjs +157 -0
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.mjs +64 -0
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.mjs +61 -0
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component.mjs +82 -0
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.mjs +77 -0
- package/esm2022/themes/default/lib/layouts/root-layout/components/footer/footer.component.mjs +14 -0
- package/esm2022/themes/default/lib/layouts/root-layout/components/header/header.component.mjs +29 -0
- package/esm2022/themes/default/lib/layouts/root-layout/index.mjs +5 -0
- package/esm2022/themes/default/lib/layouts/root-layout/root-layout.component.mjs +78 -0
- package/esm2022/themes/default/lib/layouts/root-layout/root-layout.module.mjs +91 -0
- package/esm2022/themes/default/lib/pages/errors/error-401/error-401.component.mjs +28 -0
- package/esm2022/themes/default/lib/pages/errors/error-404/error-404.component.mjs +22 -0
- package/esm2022/themes/default/lib/pages/errors/error-offline/error-offline.component.mjs +16 -0
- package/esm2022/widgets/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/checkbox/checkbox-widget-column.component.mjs +45 -0
- package/esm2022/widgets/lib/editors/checkbox/checkbox-widget-edit.component.mjs +10 -10
- package/esm2022/widgets/lib/editors/checkbox/checkbox-widget-view.component.mjs +54 -0
- package/esm2022/widgets/lib/editors/checkbox/checkbox-widget.config.mjs +10 -4
- package/esm2022/widgets/lib/editors/checkbox/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-column.component.mjs +32 -7
- package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-designer.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-edit.component.mjs +54 -54
- package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-filter.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-print.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-view.component.mjs +18 -18
- package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/date-time-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-column.component.mjs +54 -7
- package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-designer.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-edit.component.mjs +173 -141
- package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-filter.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-print.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-view.component.mjs +70 -70
- package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/email-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-column.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-designer.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-edit.component.mjs +112 -112
- package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-filter.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-print.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-view.component.mjs +64 -64
- package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/file-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-column.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-designer.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-edit.component.mjs +108 -108
- package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-filter.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-print.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-types.mjs +1 -1
- package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-view.component.mjs +98 -98
- package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/gallery-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/map-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget-column.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget-designer.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget-edit.component.mjs +6 -6
- package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget-filter.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget-print.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget-view.component.mjs +6 -6
- package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/number-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-column.component.mjs +26 -7
- package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-designer.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-edit.component.mjs +68 -68
- package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-filter.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-print.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-view.component.mjs +33 -19
- package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget.config.mjs +4 -1
- package/esm2022/widgets/lib/editors/password-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget-column.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget-designer.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget-edit.component.mjs +10 -10
- package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget-filter.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget-print.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget-view.component.mjs +46 -46
- package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/phone-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-column.component.mjs +54 -7
- package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-designer.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-edit.component.mjs +162 -134
- package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-filter.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-print.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-view.component.mjs +70 -70
- package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/rich-text-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-column.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-designer.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-edit.component.mjs +10 -10
- package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-filter.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-print.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-view.component.mjs +10 -10
- package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/select-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget-column.component.mjs +5 -5
- package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget-designer.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget-edit.component.mjs +26 -26
- package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget-filter.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget-print.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget-view.component.mjs +24 -18
- package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/selection-list-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget-column.component.mjs +30 -8
- package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget-designer.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget-edit.component.mjs +32 -32
- package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget-filter.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget-print.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget-view.component.mjs +29 -8
- package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/signature-pad-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-column.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-designer.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-edit.component.mjs +56 -56
- package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-filter.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-print.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-view.component.mjs +18 -18
- package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/text-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-column.component.mjs +7 -6
- package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-designer.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-edit.component.mjs +62 -62
- package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-filter.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-print.component.mjs +2 -2
- package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-view.component.mjs +18 -18
- package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget.config.mjs +2 -1
- package/esm2022/widgets/lib/editors/toggle-widget/index.mjs +8 -0
- package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget-column.component.mjs +47 -0
- package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget-designer.component.mjs +19 -0
- package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget-edit.component.mjs +27 -0
- package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget-filter.component.mjs +20 -0
- package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget-print.component.mjs +19 -0
- package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget-view.component.mjs +47 -0
- package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget.config.mjs +24 -0
- package/esm2022/widgets/lib/layout/block-widget/block-widget.component.mjs +14 -14
- package/esm2022/widgets/lib/layout/block-widget/block-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/layout/block-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/widgets.module.mjs +6 -3
- package/esm2022/workflow/index.mjs +1 -1
- package/esm2022/workflow/lib/errors.types.mjs +1 -1
- package/esm2022/workflow/lib/workflow-event-dispatcher.service.mjs +1 -1
- package/esm2022/workflow/lib/workflow-registery.service.mjs +1 -1
- package/esm2022/workflow/lib/workflow.module.mjs +1 -1
- package/esm2022/workflow/lib/workflow.service.mjs +1 -1
- package/esm2022/workflow/lib/workflow.types.mjs +1 -1
- package/fesm2022/acorex-platform-auth.mjs +3 -1
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/acorex-platform-common-avatar-widget-edit.component-DAmNXjDm.mjs +178 -0
- package/fesm2022/acorex-platform-common-avatar-widget-edit.component-DAmNXjDm.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-avatar-widget-view.component-BlA_cFkP.mjs +85 -0
- package/fesm2022/acorex-platform-common-avatar-widget-view.component-BlA_cFkP.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-boolean-widget-filter.component-CEqibiML.mjs +169 -0
- package/fesm2022/acorex-platform-common-boolean-widget-filter.component-CEqibiML.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-change-password.component-NvrMMq9e.mjs +177 -0
- package/fesm2022/acorex-platform-common-change-password.component-NvrMMq9e.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-checkbox-widget-column.component-BiUHPDqV.mjs +76 -0
- package/fesm2022/acorex-platform-common-checkbox-widget-column.component-BiUHPDqV.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-BVG9_XXh.mjs +46 -0
- package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-BVG9_XXh.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-checkbox-widget-view.component-CfGkMcDi.mjs +70 -0
- package/fesm2022/acorex-platform-common-checkbox-widget-view.component-CfGkMcDi.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-dateTime-widget-column.component-BlXTU887.mjs +66 -0
- package/fesm2022/acorex-platform-common-dateTime-widget-column.component-BlXTU887.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-dateTime-widget-edit.component-B0s6FN-g.mjs +198 -0
- package/fesm2022/acorex-platform-common-dateTime-widget-edit.component-B0s6FN-g.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-dateTime-widget-filter.component-B7KBCsUt.mjs +233 -0
- package/fesm2022/acorex-platform-common-dateTime-widget-filter.component-B7KBCsUt.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-dateTime-widget-view.component-Dy7pAkGG.mjs +93 -0
- package/fesm2022/acorex-platform-common-dateTime-widget-view.component-Dy7pAkGG.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-email-widget-column.component-D_UNn2dW.mjs +97 -0
- package/fesm2022/acorex-platform-common-email-widget-column.component-D_UNn2dW.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-email-widget-edit.component-DWT24mCM.mjs +269 -0
- package/fesm2022/acorex-platform-common-email-widget-edit.component-DWT24mCM.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-email-widget-view.component-B6puyycL.mjs +130 -0
- package/fesm2022/acorex-platform-common-email-widget-view.component-B6puyycL.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-file-widget-column.component-C1faGR4K.mjs +49 -0
- package/fesm2022/acorex-platform-common-file-widget-column.component-C1faGR4K.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-file-widget-edit.component-CTvS9ls8.mjs +221 -0
- package/fesm2022/acorex-platform-common-file-widget-edit.component-CTvS9ls8.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-file-widget-filter.component-D4AMg5M0.mjs +51 -0
- package/fesm2022/acorex-platform-common-file-widget-filter.component-D4AMg5M0.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-file-widget-view.component-CHI4VCvt.mjs +174 -0
- package/fesm2022/acorex-platform-common-file-widget-view.component-CHI4VCvt.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-gallery-widget-edit.component-CAOctYzV.mjs +209 -0
- package/fesm2022/acorex-platform-common-gallery-widget-edit.component-CAOctYzV.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-gallery-widget-filter.component-lgaYDZeD.mjs +50 -0
- package/fesm2022/acorex-platform-common-gallery-widget-filter.component-lgaYDZeD.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-gallery-widget-view.component-Ci50jeO5.mjs +193 -0
- package/fesm2022/acorex-platform-common-gallery-widget-view.component-Ci50jeO5.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-largetext-widget-edit.component-DFKG-kum.mjs +60 -0
- package/fesm2022/acorex-platform-common-largetext-widget-edit.component-DFKG-kum.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-lookup-widget-column.component-CFzCGcqA.mjs +66 -0
- package/fesm2022/acorex-platform-common-lookup-widget-column.component-CFzCGcqA.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-lookup-widget-edit.component-CYTSeEOq.mjs +96 -0
- package/fesm2022/acorex-platform-common-lookup-widget-edit.component-CYTSeEOq.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-lookup-widget-filter.component-BkxT9_Hh.mjs +135 -0
- package/fesm2022/acorex-platform-common-lookup-widget-filter.component-BkxT9_Hh.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-lookup-widget-view.component-5YeixMp7.mjs +77 -0
- package/fesm2022/acorex-platform-common-lookup-widget-view.component-5YeixMp7.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-map-widget-edit.component-CE3QQBmX.mjs +114 -0
- package/fesm2022/acorex-platform-common-map-widget-edit.component-CE3QQBmX.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-map-widget-view.component-Cv4OCTxz.mjs +86 -0
- package/fesm2022/acorex-platform-common-map-widget-view.component-Cv4OCTxz.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-messenger-widget-column.component-CJdh6TKb.mjs +95 -0
- package/fesm2022/acorex-platform-common-messenger-widget-column.component-CJdh6TKb.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-messenger-widget-edit.component-kiEHxJia.mjs +157 -0
- package/fesm2022/acorex-platform-common-messenger-widget-edit.component-kiEHxJia.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-messenger-widget-view.component-DzbjgZA7.mjs +154 -0
- package/fesm2022/acorex-platform-common-messenger-widget-view.component-DzbjgZA7.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-number-widget-edit.component-BRuIP96Y.mjs +68 -0
- package/fesm2022/acorex-platform-common-number-widget-edit.component-BRuIP96Y.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-number-widget-filter.component-jQ4DaFQH.mjs +157 -0
- package/fesm2022/acorex-platform-common-number-widget-filter.component-jQ4DaFQH.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-number-widget-view.component-BzUWjT8m.mjs +54 -0
- package/fesm2022/acorex-platform-common-number-widget-view.component-BzUWjT8m.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-password-widget-column.component-BRzyuK5c.mjs +89 -0
- package/fesm2022/acorex-platform-common-password-widget-column.component-BRzyuK5c.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-password-widget-edit.component-q6R2dw5k.mjs +64 -0
- package/fesm2022/acorex-platform-common-password-widget-edit.component-q6R2dw5k.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-password-widget-view.component-CKaQItON.mjs +128 -0
- package/fesm2022/acorex-platform-common-password-widget-view.component-CKaQItON.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-phone-widget-column.component-BD7BScjW.mjs +115 -0
- package/fesm2022/acorex-platform-common-phone-widget-column.component-BD7BScjW.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-phone-widget-edit.component-D8tGKfNj.mjs +265 -0
- package/fesm2022/acorex-platform-common-phone-widget-edit.component-D8tGKfNj.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-phone-widget-view.component-CFiMsGOB.mjs +145 -0
- package/fesm2022/acorex-platform-common-phone-widget-view.component-CFiMsGOB.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-rich-text-widget-column.component-BPzwY_8L.mjs +85 -0
- package/fesm2022/acorex-platform-common-rich-text-widget-column.component-BPzwY_8L.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-CA2xRfVg.mjs +89 -0
- package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-CA2xRfVg.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-rich-text-widget-view.component-DYfTZ64H.mjs +58 -0
- package/fesm2022/acorex-platform-common-rich-text-widget-view.component-DYfTZ64H.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-selection-list-widget-column.component-_MglaOmo.mjs +69 -0
- package/fesm2022/acorex-platform-common-selection-list-widget-column.component-_MglaOmo.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-QKw_tyOd.mjs +76 -0
- package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-QKw_tyOd.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-DRToTnHQ.mjs +65 -0
- package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-DRToTnHQ.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-selection-list-widget-view.component-CjDiuUdj.mjs +69 -0
- package/fesm2022/acorex-platform-common-selection-list-widget-view.component-CjDiuUdj.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-signature-pad-widget-edit.component-DF29uWl2.mjs +148 -0
- package/fesm2022/acorex-platform-common-signature-pad-widget-edit.component-DF29uWl2.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-BWzoR4HM.mjs +63 -0
- package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-BWzoR4HM.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-string-widget-filter.component-Di_GFHme.mjs +147 -0
- package/fesm2022/acorex-platform-common-string-widget-filter.component-Di_GFHme.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-text-widget-column.component-BSYd1CbC.mjs +70 -0
- package/fesm2022/acorex-platform-common-text-widget-column.component-BSYd1CbC.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-text-widget-edit.component-K9z9N1qw.mjs +183 -0
- package/fesm2022/acorex-platform-common-text-widget-edit.component-K9z9N1qw.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-text-widget-view.component-WbZtm_bf.mjs +90 -0
- package/fesm2022/acorex-platform-common-text-widget-view.component-WbZtm_bf.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-toggle-widget-column.component-ZCBSYMuz.mjs +80 -0
- package/fesm2022/acorex-platform-common-toggle-widget-column.component-ZCBSYMuz.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-toggle-widget-edit.component-rkDfLA-J.mjs +46 -0
- package/fesm2022/acorex-platform-common-toggle-widget-edit.component-rkDfLA-J.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-toggle-widget-view.component-DLDIrci1.mjs +72 -0
- package/fesm2022/acorex-platform-common-toggle-widget-view.component-DLDIrci1.mjs.map +1 -0
- package/fesm2022/acorex-platform-common.mjs +2056 -246
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +687 -0
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-entity.mjs +1848 -0
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -0
- package/fesm2022/acorex-platform-layouts-entity-create-view.component-BmSMt95H.mjs +107 -0
- package/fesm2022/acorex-platform-layouts-entity-create-view.component-BmSMt95H.mjs.map +1 -0
- package/fesm2022/acorex-platform-layouts-entity-modify-view.component-D1h1xORH.mjs +88 -0
- package/fesm2022/acorex-platform-layouts-entity-modify-view.component-D1h1xORH.mjs.map +1 -0
- package/fesm2022/acorex-platform-layouts.mjs +1058 -2553
- package/fesm2022/acorex-platform-layouts.mjs.map +1 -1
- package/fesm2022/acorex-platform-mocks.mjs.map +1 -1
- package/fesm2022/acorex-platform-native.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Buanq4is.mjs +96 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Buanq4is.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-F7dr-osu.mjs +85 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-F7dr-osu.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-error-401.component-Djuin07Z.mjs +31 -0
- package/fesm2022/acorex-platform-themes-default-error-401.component-Djuin07Z.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-error-404.component-C-RyiLkk.mjs +25 -0
- package/fesm2022/acorex-platform-themes-default-error-404.component-C-RyiLkk.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-error-offline.component-WCfy9-cr.mjs +19 -0
- package/fesm2022/acorex-platform-themes-default-error-offline.component-WCfy9-cr.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default.mjs +681 -0
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -0
- package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-Cx6WLV3_.mjs +48 -0
- package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-Cx6WLV3_.mjs.map +1 -0
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-C_68pr-9.mjs +57 -0
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-C_68pr-9.mjs.map +1 -0
- package/fesm2022/acorex-platform-widgets.mjs +1755 -1293
- package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
- package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
- package/fesm2022/acorex-platform.mjs.map +1 -1
- package/layout/builder/README.md +4 -0
- package/layout/builder/index.d.ts +1 -0
- package/layout/builder/lib/builder/builder.module.d.ts +23 -0
- package/layout/builder/lib/builder/builder.service.d.ts +27 -0
- package/layout/builder/lib/builder/index.d.ts +8 -0
- package/layout/builder/lib/builder/layout.types.d.ts +30 -0
- package/layout/builder/lib/builder/widget-column-renderer.d.ts +31 -0
- package/layout/builder/lib/builder/widget-container.component.d.ts +15 -0
- package/layout/builder/lib/builder/widget-renderer.component.d.ts +43 -0
- package/layout/builder/lib/builder/widget.types.d.ts +74 -0
- package/layout/entity/README.md +4 -0
- package/layout/entity/index.d.ts +1 -0
- package/layout/entity/lib/entity-detail-list.viewmodel.d.ts +32 -0
- package/layout/entity/lib/entity-master-create.viewmodel.d.ts +49 -0
- package/layout/entity/lib/entity-master-list.viewmodel.d.ts +82 -0
- package/layout/entity/lib/entity-master-single.viewmodel.d.ts +62 -0
- package/layout/entity/lib/entity-master-update.viewmodel.d.ts +39 -0
- package/layout/entity/lib/entity-registery.service.d.ts +34 -0
- package/layout/entity/lib/entity.config.d.ts +21 -0
- package/layout/entity/lib/entity.module.d.ts +9 -0
- package/layout/entity/lib/entity.viewmodel.d.ts +22 -0
- package/layout/entity/lib/index.d.ts +8 -0
- package/layout/entity/lib/widgets/lookup-widget/index.d.ts +7 -0
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-column.component.d.ts +6 -0
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-designer.component.d.ts +6 -0
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +27 -0
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-filter.component.d.ts +6 -0
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-print.component.d.ts +6 -0
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.component.d.ts +13 -0
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.viewmodel.d.ts +15 -0
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-view.component.d.ts +6 -0
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget.config.d.ts +2 -0
- package/layout/entity/lib/workflows/create-entity.workflow.d.ts +29 -0
- package/layout/entity/lib/workflows/delete-entity.workflow.d.ts +26 -0
- package/layout/entity/lib/workflows/modify-section.workflow.d.ts +34 -0
- package/layout/entity/lib/workflows/show-details.workflow.d.ts +10 -0
- package/layouts/README.md +3 -3
- package/layouts/index.d.ts +0 -2
- package/layouts/lib/admin/admin.module.d.ts +3 -6
- package/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.component.d.ts +1 -1
- package/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.config.d.ts +3 -3
- package/layouts/lib/admin/entity-layout/entity-details-view/detail-view.config.d.ts +3 -3
- package/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.d.ts +1 -1
- package/layouts/lib/admin/entity-layout/entity-list-view/components/entity-custom-view/entity-custom-view.component.d.ts +2 -3
- package/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-columns/list-view-option-columns.component.d.ts +1 -1
- package/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-conditions.component.d.ts +4 -6
- package/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-filter-operator.component.d.ts +1 -1
- package/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-sorting/list-view-option-sorting.component.d.ts +3 -4
- package/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.d.ts +6 -6
- package/layouts/lib/admin/entity-layout/entity-list-view/list-view.config.d.ts +5 -6
- package/layouts/lib/admin/entity-layout/entity-list-view/list-view.module.d.ts +3 -4
- package/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.component.d.ts +1 -1
- package/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.config.d.ts +3 -3
- package/layouts/lib/admin/entity-layout/entity-quick-view/entity-quick-view.component.d.ts +2 -2
- package/layouts/lib/admin/entity-layout/workflows/index.d.ts +3 -0
- package/layouts/lib/admin/entity-layout/workflows/modify-section.workflow.d.ts +12 -0
- package/layouts/lib/admin/entity-layout/workflows/show-details.workflow.d.ts +9 -1
- package/layouts/lib/admin/entity-layout/workflows/show-list.workflow.d.ts +9 -1
- package/layouts/lib/admin/entity-layout/workflows/show-quick-view.workflow.d.ts +11 -1
- package/layouts/lib/admin/index.d.ts +0 -2
- package/layouts/lib/layout.module.d.ts +4 -4
- package/mocks/README.md +3 -3
- package/package.json +19 -19
- package/themes/default/README.md +3 -0
- package/themes/default/index.d.ts +2 -0
- package/themes/default/lib/default.module.d.ts +8 -0
- package/themes/default/lib/entity-reuse.strategy.d.ts +8 -0
- package/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.d.ts +24 -0
- package/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.d.ts +17 -0
- package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-list-view.component.d.ts +29 -0
- package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.d.ts +18 -0
- package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.d.ts +16 -0
- package/themes/default/lib/layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component.d.ts +16 -0
- package/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.d.ts +13 -0
- package/themes/default/lib/layouts/root-layout/components/footer/footer.component.d.ts +5 -0
- package/themes/default/lib/layouts/root-layout/components/header/header.component.d.ts +10 -0
- package/themes/default/lib/layouts/root-layout/index.d.ts +4 -0
- package/themes/default/lib/layouts/root-layout/root-layout.component.d.ts +32 -0
- package/themes/default/lib/layouts/root-layout/root-layout.module.d.ts +24 -0
- package/widgets/README.md +3 -3
- package/widgets/lib/editors/checkbox/checkbox-widget-column.component.d.ts +9 -0
- package/widgets/lib/editors/checkbox/checkbox-widget-edit.component.d.ts +1 -1
- package/widgets/lib/editors/checkbox/checkbox-widget-view.component.d.ts +9 -0
- package/widgets/lib/editors/checkbox/checkbox-widget.config.d.ts +1 -1
- package/widgets/lib/editors/date-time-box-widget/date-time-box-widget-column.component.d.ts +11 -3
- package/widgets/lib/editors/date-time-box-widget/date-time-box-widget-designer.component.d.ts +1 -1
- package/widgets/lib/editors/date-time-box-widget/date-time-box-widget-edit.component.d.ts +1 -1
- package/widgets/lib/editors/date-time-box-widget/date-time-box-widget-filter.component.d.ts +1 -1
- package/widgets/lib/editors/date-time-box-widget/date-time-box-widget-print.component.d.ts +1 -1
- package/widgets/lib/editors/date-time-box-widget/date-time-box-widget-view.component.d.ts +1 -1
- package/widgets/lib/editors/date-time-box-widget/date-time-box-widget.config.d.ts +1 -1
- package/widgets/lib/editors/email-box-widget/email-box-widget-column.component.d.ts +13 -3
- package/widgets/lib/editors/email-box-widget/email-box-widget-designer.component.d.ts +1 -1
- package/widgets/lib/editors/email-box-widget/email-box-widget-edit.component.d.ts +7 -1
- package/widgets/lib/editors/email-box-widget/email-box-widget-filter.component.d.ts +1 -1
- package/widgets/lib/editors/email-box-widget/email-box-widget-print.component.d.ts +1 -1
- package/widgets/lib/editors/email-box-widget/email-box-widget-view.component.d.ts +1 -1
- package/widgets/lib/editors/email-box-widget/email-box-widget.config.d.ts +1 -1
- package/widgets/lib/editors/file-box-widget/file-box-widget-column.component.d.ts +1 -1
- package/widgets/lib/editors/file-box-widget/file-box-widget-designer.component.d.ts +1 -1
- package/widgets/lib/editors/file-box-widget/file-box-widget-edit.component.d.ts +1 -1
- package/widgets/lib/editors/file-box-widget/file-box-widget-filter.component.d.ts +1 -1
- package/widgets/lib/editors/file-box-widget/file-box-widget-print.component.d.ts +1 -1
- package/widgets/lib/editors/file-box-widget/file-box-widget-view.component.d.ts +1 -1
- package/widgets/lib/editors/file-box-widget/file-box-widget.config.d.ts +1 -1
- package/widgets/lib/editors/gallery-widget/gallery-widget-column.component.d.ts +1 -1
- package/widgets/lib/editors/gallery-widget/gallery-widget-designer.component.d.ts +1 -1
- package/widgets/lib/editors/gallery-widget/gallery-widget-edit.component.d.ts +1 -1
- package/widgets/lib/editors/gallery-widget/gallery-widget-filter.component.d.ts +1 -1
- package/widgets/lib/editors/gallery-widget/gallery-widget-print.component.d.ts +1 -1
- package/widgets/lib/editors/gallery-widget/gallery-widget-view.component.d.ts +1 -1
- package/widgets/lib/editors/gallery-widget/gallery-widget.config.d.ts +1 -1
- package/widgets/lib/editors/map-box-widget/map-box-widget-column.component.d.ts +1 -1
- package/widgets/lib/editors/map-box-widget/map-box-widget-designer.component.d.ts +1 -1
- package/widgets/lib/editors/map-box-widget/map-box-widget-edit.component.d.ts +1 -1
- package/widgets/lib/editors/map-box-widget/map-box-widget-filter.component.d.ts +1 -1
- package/widgets/lib/editors/map-box-widget/map-box-widget-print.component.d.ts +1 -1
- package/widgets/lib/editors/map-box-widget/map-box-widget-view.component.d.ts +1 -1
- package/widgets/lib/editors/map-box-widget/map-box-widget.config.d.ts +1 -1
- package/widgets/lib/editors/number-box-widget/number-box-widget-column.component.d.ts +5 -3
- package/widgets/lib/editors/number-box-widget/number-box-widget-designer.component.d.ts +1 -1
- package/widgets/lib/editors/number-box-widget/number-box-widget-edit.component.d.ts +2 -2
- package/widgets/lib/editors/number-box-widget/number-box-widget-filter.component.d.ts +1 -1
- package/widgets/lib/editors/number-box-widget/number-box-widget-print.component.d.ts +1 -1
- package/widgets/lib/editors/number-box-widget/number-box-widget-view.component.d.ts +8 -2
- package/widgets/lib/editors/number-box-widget/number-box-widget.config.d.ts +1 -1
- package/widgets/lib/editors/password-box-widget/password-box-widget-column.component.d.ts +1 -1
- package/widgets/lib/editors/password-box-widget/password-box-widget-designer.component.d.ts +1 -1
- package/widgets/lib/editors/password-box-widget/password-box-widget-edit.component.d.ts +1 -1
- package/widgets/lib/editors/password-box-widget/password-box-widget-filter.component.d.ts +1 -1
- package/widgets/lib/editors/password-box-widget/password-box-widget-print.component.d.ts +1 -1
- package/widgets/lib/editors/password-box-widget/password-box-widget-view.component.d.ts +1 -1
- package/widgets/lib/editors/password-box-widget/password-box-widget.config.d.ts +1 -1
- package/widgets/lib/editors/phone-box-widget/phone-box-widget-column.component.d.ts +13 -3
- package/widgets/lib/editors/phone-box-widget/phone-box-widget-designer.component.d.ts +1 -1
- package/widgets/lib/editors/phone-box-widget/phone-box-widget-edit.component.d.ts +6 -1
- package/widgets/lib/editors/phone-box-widget/phone-box-widget-filter.component.d.ts +1 -1
- package/widgets/lib/editors/phone-box-widget/phone-box-widget-print.component.d.ts +1 -1
- package/widgets/lib/editors/phone-box-widget/phone-box-widget-view.component.d.ts +1 -1
- package/widgets/lib/editors/phone-box-widget/phone-box-widget.config.d.ts +1 -1
- package/widgets/lib/editors/rich-text-widget/rich-text-widget-column.component.d.ts +1 -1
- package/widgets/lib/editors/rich-text-widget/rich-text-widget-designer.component.d.ts +1 -1
- package/widgets/lib/editors/rich-text-widget/rich-text-widget-edit.component.d.ts +1 -1
- package/widgets/lib/editors/rich-text-widget/rich-text-widget-filter.component.d.ts +1 -1
- package/widgets/lib/editors/rich-text-widget/rich-text-widget-print.component.d.ts +1 -1
- package/widgets/lib/editors/rich-text-widget/rich-text-widget-view.component.d.ts +1 -1
- package/widgets/lib/editors/rich-text-widget/rich-text-widget.config.d.ts +1 -1
- package/widgets/lib/editors/select-box-widget/select-box-widget-column.component.d.ts +3 -3
- package/widgets/lib/editors/select-box-widget/select-box-widget-designer.component.d.ts +1 -1
- package/widgets/lib/editors/select-box-widget/select-box-widget-edit.component.d.ts +1 -1
- package/widgets/lib/editors/select-box-widget/select-box-widget-filter.component.d.ts +1 -1
- package/widgets/lib/editors/select-box-widget/select-box-widget-print.component.d.ts +1 -1
- package/widgets/lib/editors/select-box-widget/select-box-widget-view.component.d.ts +1 -1
- package/widgets/lib/editors/select-box-widget/select-box-widget.config.d.ts +1 -1
- package/widgets/lib/editors/selection-list-widget/selection-list-widget-column.component.d.ts +11 -3
- package/widgets/lib/editors/selection-list-widget/selection-list-widget-designer.component.d.ts +1 -1
- package/widgets/lib/editors/selection-list-widget/selection-list-widget-edit.component.d.ts +1 -1
- package/widgets/lib/editors/selection-list-widget/selection-list-widget-filter.component.d.ts +1 -1
- package/widgets/lib/editors/selection-list-widget/selection-list-widget-print.component.d.ts +1 -1
- package/widgets/lib/editors/selection-list-widget/selection-list-widget-view.component.d.ts +7 -2
- package/widgets/lib/editors/selection-list-widget/selection-list-widget.config.d.ts +1 -1
- package/widgets/lib/editors/signature-pad-widget/signature-pad-widget-column.component.d.ts +1 -1
- package/widgets/lib/editors/signature-pad-widget/signature-pad-widget-designer.component.d.ts +1 -1
- package/widgets/lib/editors/signature-pad-widget/signature-pad-widget-edit.component.d.ts +1 -1
- package/widgets/lib/editors/signature-pad-widget/signature-pad-widget-filter.component.d.ts +1 -1
- package/widgets/lib/editors/signature-pad-widget/signature-pad-widget-print.component.d.ts +1 -1
- package/widgets/lib/editors/signature-pad-widget/signature-pad-widget-view.component.d.ts +1 -1
- package/widgets/lib/editors/signature-pad-widget/signature-pad-widget.config.d.ts +1 -1
- package/widgets/lib/editors/text-box-widget/text-box-widget-column.component.d.ts +3 -3
- package/widgets/lib/editors/text-box-widget/text-box-widget-designer.component.d.ts +1 -1
- package/widgets/lib/editors/text-box-widget/text-box-widget-edit.component.d.ts +2 -2
- package/widgets/lib/editors/text-box-widget/text-box-widget-filter.component.d.ts +1 -1
- package/widgets/lib/editors/text-box-widget/text-box-widget-print.component.d.ts +1 -1
- package/widgets/lib/editors/text-box-widget/text-box-widget-view.component.d.ts +1 -1
- package/widgets/lib/editors/text-box-widget/text-box-widget.config.d.ts +1 -1
- package/widgets/lib/editors/toggle-widget/index.d.ts +7 -0
- package/widgets/lib/editors/toggle-widget/toggle-widget-column.component.d.ts +9 -0
- package/widgets/lib/editors/toggle-widget/toggle-widget-designer.component.d.ts +6 -0
- package/widgets/lib/editors/toggle-widget/toggle-widget-edit.component.d.ts +7 -0
- package/widgets/lib/editors/toggle-widget/toggle-widget-filter.component.d.ts +6 -0
- package/widgets/lib/editors/toggle-widget/toggle-widget-print.component.d.ts +6 -0
- package/widgets/lib/editors/toggle-widget/toggle-widget-view.component.d.ts +9 -0
- package/widgets/lib/editors/toggle-widget/toggle-widget.config.d.ts +2 -0
- package/widgets/lib/layout/block-widget/block-widget.component.d.ts +2 -2
- package/widgets/lib/layout/block-widget/block-widget.config.d.ts +1 -1
- package/widgets/lib/widgets.module.d.ts +1 -1
- package/workflow/README.md +3 -3
- package/workflow/lib/workflow.types.d.ts +2 -2
- package/common/lib/shared/state-persistence/index.d.ts +0 -3
- package/common/lib/shared/state-persistence/state-persistence.actions.d.ts +0 -1
- package/common/lib/shared/state-persistence/state-persistence.module.d.ts +0 -8
- package/common/lib/shared/state-persistence/state-persistence.reducers.d.ts +0 -3
- package/common/lib/utils/sticky.directive.d.ts +0 -24
- package/core/README.md +0 -4
- package/core/index.d.ts +0 -4
- package/core/lib/app/application.types.d.ts +0 -144
- package/core/lib/core.module.d.ts +0 -6
- package/esm2022/common/lib/menu/index.mjs +0 -3
- package/esm2022/common/lib/menu/menu.loader.mjs +0 -39
- package/esm2022/common/lib/menu/menu.types.mjs +0 -2
- package/esm2022/common/lib/shared/logo.types.mjs +0 -21
- package/esm2022/common/lib/shared/state-persistence/index.mjs +0 -4
- package/esm2022/common/lib/shared/state-persistence/state-persistence.actions.mjs +0 -3
- package/esm2022/common/lib/shared/state-persistence/state-persistence.module.mjs +0 -36
- package/esm2022/common/lib/shared/state-persistence/state-persistence.reducers.mjs +0 -30
- package/esm2022/common/lib/utils/sticky.directive.mjs +0 -74
- package/esm2022/core/acorex-platform-core.mjs +0 -5
- package/esm2022/core/index.mjs +0 -5
- package/esm2022/core/lib/app/application.types.mjs +0 -19
- package/esm2022/core/lib/app/operators.mjs +0 -50
- package/esm2022/core/lib/configs/config.types.mjs +0 -3
- package/esm2022/core/lib/core.module.mjs +0 -16
- package/esm2022/layout/acorex-platform-layout.mjs +0 -5
- package/esm2022/layout/index.mjs +0 -3
- package/esm2022/layout/lib/builder/builder.module.mjs +0 -66
- package/esm2022/layout/lib/builder/context.service.mjs +0 -64
- package/esm2022/layout/lib/builder/index.mjs +0 -8
- package/esm2022/layout/lib/builder/widget-column-renderer.mjs +0 -75
- package/esm2022/layout/lib/builder/widget-container.mjs +0 -45
- package/esm2022/layout/lib/builder/widget-registery.service.mjs +0 -33
- package/esm2022/layout/lib/builder/widget-renderer.mjs +0 -279
- package/esm2022/layout/lib/builder/widget.types.mjs +0 -49
- package/esm2022/layout/lib/component-slot/component-slot-loader.service.mjs +0 -56
- package/esm2022/layout/lib/component-slot/component-slot-registery.service.mjs +0 -28
- package/esm2022/layout/lib/component-slot/component-slot.directive.mjs +0 -24
- package/esm2022/layout/lib/component-slot/component-slot.module.mjs +0 -72
- package/esm2022/layout/lib/component-slot/component-slot.types.mjs +0 -2
- package/esm2022/layout/lib/component-slot/index.mjs +0 -6
- package/esm2022/layouts/lib/admin/admin-child-layout/admin-child-features-list.component.mjs +0 -58
- package/esm2022/layouts/lib/admin/admin-child-layout/admin-child-layout.component.mjs +0 -50
- package/esm2022/layouts/lib/admin/admin-child-layout/admin-child-layout.module.mjs +0 -57
- package/esm2022/layouts/lib/admin/admin-child-layout/index.mjs +0 -4
- package/esm2022/layouts/lib/admin/admin-root-layout/admin-root-layout.component.mjs +0 -74
- package/esm2022/layouts/lib/admin/admin-root-layout/admin-root-layout.module.mjs +0 -92
- package/esm2022/layouts/lib/admin/admin-root-layout/components/admin-footer/admin-footer.component.mjs +0 -14
- package/esm2022/layouts/lib/admin/admin-root-layout/components/admin-header/admin-header.component.mjs +0 -29
- package/esm2022/layouts/lib/admin/admin-root-layout/index.mjs +0 -5
- package/esm2022/layouts/lib/admin/store/admin-layout.actions.mjs +0 -12
- package/esm2022/layouts/lib/admin/store/admin-layout.effects.mjs +0 -29
- package/esm2022/layouts/lib/admin/store/admin-layout.reducers.mjs +0 -60
- package/esm2022/layouts/lib/admin/store/admin-layout.selectors.mjs +0 -8
- package/esm2022/layouts/lib/admin/store/admin-layout.state.mjs +0 -16
- package/esm2022/layouts/lib/admin/store/index.mjs +0 -6
- package/esm2022/layouts/lib/layout.routes.mjs +0 -15
- package/esm2022/layouts/lib/shared/components/content-view/content-view.page.mjs +0 -64
- package/esm2022/layouts/lib/shared/components/content-view/content-view.type.mjs +0 -2
- package/esm2022/layouts/lib/shared/components/error-401/error-401.component.mjs +0 -28
- package/esm2022/layouts/lib/shared/components/error-404/error-404.component.mjs +0 -22
- package/esm2022/layouts/lib/shared/components/error-offline/error-offline.component.mjs +0 -16
- package/esm2022/layouts/lib/shared/components/index.mjs +0 -10
- package/esm2022/layouts/lib/shared/components/logo/logo.component.mjs +0 -38
- package/esm2022/layouts/lib/shared/components/slots/footer-text-slot.component.mjs +0 -20
- package/esm2022/layouts/lib/shared/components/slots/navbar-slot.component.mjs +0 -36
- package/esm2022/layouts/lib/shared/components/slots/theme-slot.component.mjs +0 -48
- package/esm2022/layouts/lib/shared/entity/entity-registery.service.mjs +0 -70
- package/esm2022/layouts/lib/shared/entity/entity.class.mjs +0 -32
- package/esm2022/layouts/lib/shared/entity/entity.loader.mjs +0 -13
- package/esm2022/layouts/lib/shared/entity/index.mjs +0 -4
- package/esm2022/layouts/lib/shared/index.mjs +0 -5
- package/esm2022/layouts/lib/shared/services/index.mjs +0 -2
- package/esm2022/layouts/lib/shared/services/layout.service.mjs +0 -79
- package/esm2022/layouts/lib/shared/workflows/common.workflow.mjs +0 -147
- package/esm2022/layouts/lib/shared/workflows/error-handler.mjs +0 -24
- package/esm2022/layouts/lib/shared/workflows/index.mjs +0 -3
- package/esm2022/layouts/lib/themes/default/entity-layouts/entity-details-view/entity-details-view.component.mjs +0 -73
- package/esm2022/layouts/lib/themes/default/entity-layouts/entity-details.viewmodel.mjs +0 -99
- package/esm2022/layouts/lib/themes/default/index.mjs +0 -3
- package/esm2022/layouts/lib/widgets/avatar/avatar-widget-edit.component.mjs +0 -160
- package/esm2022/layouts/lib/widgets/avatar/avatar-widget-view.component.mjs +0 -61
- package/esm2022/layouts/lib/widgets/checkbox/checkbox-widget-column.component.mjs +0 -53
- package/esm2022/layouts/lib/widgets/checkbox/checkbox-widget-edit.component.mjs +0 -22
- package/esm2022/layouts/lib/widgets/checkbox/checkbox-widget-view.component.mjs +0 -47
- package/esm2022/layouts/lib/widgets/common-widget-filter/boolean-widget-filter.component.mjs +0 -147
- package/esm2022/layouts/lib/widgets/common-widget-filter/number-widget-filter.component.mjs +0 -135
- package/esm2022/layouts/lib/widgets/common-widget-filter/string-widget-filter.component.mjs +0 -125
- package/esm2022/layouts/lib/widgets/common-widgets.module.mjs +0 -504
- package/esm2022/layouts/lib/widgets/dateTime/dateTime-widget-column.component.mjs +0 -44
- package/esm2022/layouts/lib/widgets/dateTime/dateTime-widget-edit.component.mjs +0 -178
- package/esm2022/layouts/lib/widgets/dateTime/dateTime-widget-filter.component.mjs +0 -214
- package/esm2022/layouts/lib/widgets/dateTime/dateTime-widget-view.component.mjs +0 -71
- package/esm2022/layouts/lib/widgets/email/email-widget-column.component.mjs +0 -73
- package/esm2022/layouts/lib/widgets/email/email-widget-edit.component.mjs +0 -249
- package/esm2022/layouts/lib/widgets/email/email-widget-view.component.mjs +0 -108
- package/esm2022/layouts/lib/widgets/file/file-widget-column.component.mjs +0 -27
- package/esm2022/layouts/lib/widgets/file/file-widget-edit.component.mjs +0 -200
- package/esm2022/layouts/lib/widgets/file/file-widget-filter.component.mjs +0 -27
- package/esm2022/layouts/lib/widgets/file/file-widget-view.component.mjs +0 -153
- package/esm2022/layouts/lib/widgets/gallery/gallery-widget-edit.component.mjs +0 -189
- package/esm2022/layouts/lib/widgets/gallery/gallery-widget-filter.component.mjs +0 -27
- package/esm2022/layouts/lib/widgets/gallery/gallery-widget-types.mjs +0 -2
- package/esm2022/layouts/lib/widgets/gallery/gallery-widget-view.component.mjs +0 -173
- package/esm2022/layouts/lib/widgets/index.mjs +0 -2
- package/esm2022/layouts/lib/widgets/lookup/lookup-widget-column.component.mjs +0 -43
- package/esm2022/layouts/lib/widgets/lookup/lookup-widget-edit.component.mjs +0 -74
- package/esm2022/layouts/lib/widgets/lookup/lookup-widget-filter.component.mjs +0 -115
- package/esm2022/layouts/lib/widgets/lookup/lookup-widget-view.component.mjs +0 -54
- package/esm2022/layouts/lib/widgets/map/map-widget-edit.component.mjs +0 -91
- package/esm2022/layouts/lib/widgets/map/map-widget-view.component.mjs +0 -63
- package/esm2022/layouts/lib/widgets/messenger/messenger-widget-column.component.mjs +0 -71
- package/esm2022/layouts/lib/widgets/messenger/messenger-widget-edit.component.mjs +0 -136
- package/esm2022/layouts/lib/widgets/messenger/messenger-widget-view.component.mjs +0 -132
- package/esm2022/layouts/lib/widgets/number/number-widget-edit.component.mjs +0 -46
- package/esm2022/layouts/lib/widgets/number/number-widget-view.component.mjs +0 -30
- package/esm2022/layouts/lib/widgets/password/change-password.component.mjs +0 -175
- package/esm2022/layouts/lib/widgets/password/password-widget-column.component.mjs +0 -67
- package/esm2022/layouts/lib/widgets/password/password-widget-edit.component.mjs +0 -41
- package/esm2022/layouts/lib/widgets/password/password-widget-view.component.mjs +0 -109
- package/esm2022/layouts/lib/widgets/phone/phone-widget-column.component.mjs +0 -91
- package/esm2022/layouts/lib/widgets/phone/phone-widget-edit.component.mjs +0 -231
- package/esm2022/layouts/lib/widgets/phone/phone-widget-view.component.mjs +0 -123
- package/esm2022/layouts/lib/widgets/rich-text/rich-text-widget-column.component.mjs +0 -61
- package/esm2022/layouts/lib/widgets/rich-text/rich-text-widget-edit.component.mjs +0 -67
- package/esm2022/layouts/lib/widgets/rich-text/rich-text-widget-view.component.mjs +0 -34
- package/esm2022/layouts/lib/widgets/selection-list/selection-list-widget-column.component.mjs +0 -43
- package/esm2022/layouts/lib/widgets/selection-list/selection-list-widget-edit.component.mjs +0 -53
- package/esm2022/layouts/lib/widgets/selection-list/selection-list-widget-filter.component.mjs +0 -41
- package/esm2022/layouts/lib/widgets/selection-list/selection-list-widget-view.component.mjs +0 -45
- package/esm2022/layouts/lib/widgets/signature-pad/signature-pad-widget-edit.component.mjs +0 -128
- package/esm2022/layouts/lib/widgets/signature-pad/signature-pad-widget-view.component.mjs +0 -41
- package/esm2022/layouts/lib/widgets/text/largetext-widget-edit.component.mjs +0 -37
- package/esm2022/layouts/lib/widgets/text/text-widget-column.component.mjs +0 -46
- package/esm2022/layouts/lib/widgets/text/text-widget-edit.component.mjs +0 -162
- package/esm2022/layouts/lib/widgets/text/text-widget-view.component.mjs +0 -66
- package/esm2022/layouts/lib/widgets/toggle/toggle-widget-column.component.mjs +0 -57
- package/esm2022/layouts/lib/widgets/toggle/toggle-widget-edit.component.mjs +0 -25
- package/esm2022/layouts/lib/widgets/toggle/toggle-widget-view.component.mjs +0 -49
- package/esm2022/schema/acorex-platform-schema.mjs +0 -5
- package/esm2022/schema/index.mjs +0 -14
- package/esm2022/schema/lib/component-loader.mjs +0 -2
- package/esm2022/schema/lib/formats.mjs +0 -2
- package/esm2022/schema/lib/operators.mjs +0 -50
- package/esm2022/schema/lib/schema-registery.service.mjs +0 -33
- package/esm2022/schema/lib/schema.module.mjs +0 -23
- package/esm2022/schema/lib/schema.types.mjs +0 -2
- package/esm2022/schema/lib/widget/widget-base.mjs +0 -113
- package/esm2022/schema/lib/widget/widget-column-renderer.mjs +0 -118
- package/esm2022/schema/lib/widget/widget-filter-renderer.mjs +0 -133
- package/esm2022/schema/lib/widget/widget-renderer.mjs +0 -144
- package/esm2022/schema/lib/widget/widget-token.mjs +0 -3
- package/fesm2022/acorex-platform-core.mjs +0 -94
- package/fesm2022/acorex-platform-core.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout.mjs +0 -756
- package/fesm2022/acorex-platform-layout.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-avatar-widget-edit.component-a_eCmVu5.mjs +0 -162
- package/fesm2022/acorex-platform-layouts-avatar-widget-edit.component-a_eCmVu5.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-avatar-widget-view.component-wwI7L0Kc.mjs +0 -64
- package/fesm2022/acorex-platform-layouts-avatar-widget-view.component-wwI7L0Kc.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-boolean-widget-filter.component-CHW4rgxA.mjs +0 -150
- package/fesm2022/acorex-platform-layouts-boolean-widget-filter.component-CHW4rgxA.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-change-password.component-vUZy2W_B.mjs +0 -178
- package/fesm2022/acorex-platform-layouts-change-password.component-vUZy2W_B.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-checkbox-widget-column.component-BNEtAS7g.mjs +0 -56
- package/fesm2022/acorex-platform-layouts-checkbox-widget-column.component-BNEtAS7g.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-checkbox-widget-edit.component-Cqn_QBcv.mjs +0 -25
- package/fesm2022/acorex-platform-layouts-checkbox-widget-edit.component-Cqn_QBcv.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-checkbox-widget-view.component-DQLggJ9x.mjs +0 -50
- package/fesm2022/acorex-platform-layouts-checkbox-widget-view.component-DQLggJ9x.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-dateTime-widget-column.component-D0eNN66F.mjs +0 -47
- package/fesm2022/acorex-platform-layouts-dateTime-widget-column.component-D0eNN66F.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-dateTime-widget-edit.component-BLqAWdRX.mjs +0 -181
- package/fesm2022/acorex-platform-layouts-dateTime-widget-edit.component-BLqAWdRX.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-dateTime-widget-filter.component-tvc-cTos.mjs +0 -217
- package/fesm2022/acorex-platform-layouts-dateTime-widget-filter.component-tvc-cTos.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-dateTime-widget-view.component-CjChqiJw.mjs +0 -74
- package/fesm2022/acorex-platform-layouts-dateTime-widget-view.component-CjChqiJw.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-email-widget-column.component-CUnxKERe.mjs +0 -76
- package/fesm2022/acorex-platform-layouts-email-widget-column.component-CUnxKERe.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-email-widget-edit.component-DqnNien2.mjs +0 -252
- package/fesm2022/acorex-platform-layouts-email-widget-edit.component-DqnNien2.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-email-widget-view.component-BZsLYW2w.mjs +0 -111
- package/fesm2022/acorex-platform-layouts-email-widget-view.component-BZsLYW2w.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-entity-create-view.component-C3TUCnB2.mjs +0 -108
- package/fesm2022/acorex-platform-layouts-entity-create-view.component-C3TUCnB2.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-entity-modify-view.component-BnSfJlc5.mjs +0 -89
- package/fesm2022/acorex-platform-layouts-entity-modify-view.component-BnSfJlc5.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-file-widget-column.component-f54Z9E5C.mjs +0 -30
- package/fesm2022/acorex-platform-layouts-file-widget-column.component-f54Z9E5C.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-file-widget-edit.component-CW9ESi46.mjs +0 -203
- package/fesm2022/acorex-platform-layouts-file-widget-edit.component-CW9ESi46.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-file-widget-filter.component-K3mC1xLX.mjs +0 -30
- package/fesm2022/acorex-platform-layouts-file-widget-filter.component-K3mC1xLX.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-file-widget-view.component-DVlbi33v.mjs +0 -156
- package/fesm2022/acorex-platform-layouts-file-widget-view.component-DVlbi33v.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-gallery-widget-edit.component-BUlkUU5u.mjs +0 -192
- package/fesm2022/acorex-platform-layouts-gallery-widget-edit.component-BUlkUU5u.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-gallery-widget-filter.component-BYFQSXOV.mjs +0 -30
- package/fesm2022/acorex-platform-layouts-gallery-widget-filter.component-BYFQSXOV.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-gallery-widget-view.component-BqVO3rDH.mjs +0 -176
- package/fesm2022/acorex-platform-layouts-gallery-widget-view.component-BqVO3rDH.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-largetext-widget-edit.component-CmH9daul.mjs +0 -40
- package/fesm2022/acorex-platform-layouts-largetext-widget-edit.component-CmH9daul.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-lookup-widget-column.component-C4Bb5AYW.mjs +0 -46
- package/fesm2022/acorex-platform-layouts-lookup-widget-column.component-C4Bb5AYW.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-lookup-widget-edit.component-B2Qyoi4Q.mjs +0 -120
- package/fesm2022/acorex-platform-layouts-lookup-widget-edit.component-B2Qyoi4Q.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-lookup-widget-filter.component-JJzSun3D.mjs +0 -158
- package/fesm2022/acorex-platform-layouts-lookup-widget-filter.component-JJzSun3D.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-lookup-widget-view.component-Bmp_zVcQ.mjs +0 -57
- package/fesm2022/acorex-platform-layouts-lookup-widget-view.component-Bmp_zVcQ.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-map-widget-edit.component-EWlgQnx5.mjs +0 -94
- package/fesm2022/acorex-platform-layouts-map-widget-edit.component-EWlgQnx5.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-map-widget-view.component-cB5Mq7G7.mjs +0 -66
- package/fesm2022/acorex-platform-layouts-map-widget-view.component-cB5Mq7G7.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-messenger-widget-column.component-DWgWrdmz.mjs +0 -74
- package/fesm2022/acorex-platform-layouts-messenger-widget-column.component-DWgWrdmz.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-messenger-widget-edit.component-C7VOe49a.mjs +0 -139
- package/fesm2022/acorex-platform-layouts-messenger-widget-edit.component-C7VOe49a.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-messenger-widget-view.component-uciMJWYn.mjs +0 -135
- package/fesm2022/acorex-platform-layouts-messenger-widget-view.component-uciMJWYn.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-number-widget-edit.component-CXTwKvM4.mjs +0 -49
- package/fesm2022/acorex-platform-layouts-number-widget-edit.component-CXTwKvM4.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-number-widget-filter.component-ARH7BdkE.mjs +0 -138
- package/fesm2022/acorex-platform-layouts-number-widget-filter.component-ARH7BdkE.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-number-widget-view.component-B0duuEhX.mjs +0 -33
- package/fesm2022/acorex-platform-layouts-number-widget-view.component-B0duuEhX.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-password-widget-column.component-Cav_zCe4.mjs +0 -70
- package/fesm2022/acorex-platform-layouts-password-widget-column.component-Cav_zCe4.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-password-widget-edit.component-Dm2E5zA_.mjs +0 -44
- package/fesm2022/acorex-platform-layouts-password-widget-edit.component-Dm2E5zA_.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-password-widget-view.component-BaipF6fT.mjs +0 -112
- package/fesm2022/acorex-platform-layouts-password-widget-view.component-BaipF6fT.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-phone-widget-column.component-BtZ5Qke0.mjs +0 -94
- package/fesm2022/acorex-platform-layouts-phone-widget-column.component-BtZ5Qke0.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-phone-widget-edit.component-BugCYS-l.mjs +0 -234
- package/fesm2022/acorex-platform-layouts-phone-widget-edit.component-BugCYS-l.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-phone-widget-view.component-C7EN8qDk.mjs +0 -126
- package/fesm2022/acorex-platform-layouts-phone-widget-view.component-C7EN8qDk.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-rich-text-widget-column.component-B99s2Zhi.mjs +0 -64
- package/fesm2022/acorex-platform-layouts-rich-text-widget-column.component-B99s2Zhi.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-rich-text-widget-edit.component-Di1P6EQV.mjs +0 -70
- package/fesm2022/acorex-platform-layouts-rich-text-widget-edit.component-Di1P6EQV.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-rich-text-widget-view.component-B_QG0YJc.mjs +0 -37
- package/fesm2022/acorex-platform-layouts-rich-text-widget-view.component-B_QG0YJc.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-selection-list-widget-column.component-Cx9QqR9f.mjs +0 -46
- package/fesm2022/acorex-platform-layouts-selection-list-widget-column.component-Cx9QqR9f.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-selection-list-widget-edit.component-DU-U-Af-.mjs +0 -56
- package/fesm2022/acorex-platform-layouts-selection-list-widget-edit.component-DU-U-Af-.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-selection-list-widget-filter.component-B8y8heXR.mjs +0 -44
- package/fesm2022/acorex-platform-layouts-selection-list-widget-filter.component-B8y8heXR.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-selection-list-widget-view.component-BDupWZy-.mjs +0 -48
- package/fesm2022/acorex-platform-layouts-selection-list-widget-view.component-BDupWZy-.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-signature-pad-widget-edit.component-bEDsl8mg.mjs +0 -131
- package/fesm2022/acorex-platform-layouts-signature-pad-widget-edit.component-bEDsl8mg.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-signature-pad-widget-view.component-DB903O2F.mjs +0 -44
- package/fesm2022/acorex-platform-layouts-signature-pad-widget-view.component-DB903O2F.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-string-widget-filter.component-D3ZxVk6S.mjs +0 -128
- package/fesm2022/acorex-platform-layouts-string-widget-filter.component-D3ZxVk6S.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-text-widget-column.component-D8WDAbQB.mjs +0 -49
- package/fesm2022/acorex-platform-layouts-text-widget-column.component-D8WDAbQB.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-text-widget-edit.component-BrDbNXgJ.mjs +0 -165
- package/fesm2022/acorex-platform-layouts-text-widget-edit.component-BrDbNXgJ.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-text-widget-view.component-XHN41M3T.mjs +0 -69
- package/fesm2022/acorex-platform-layouts-text-widget-view.component-XHN41M3T.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-toggle-widget-column.component-BjIyTuZj.mjs +0 -60
- package/fesm2022/acorex-platform-layouts-toggle-widget-column.component-BjIyTuZj.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-toggle-widget-edit.component-BKbBile6.mjs +0 -28
- package/fesm2022/acorex-platform-layouts-toggle-widget-edit.component-BKbBile6.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-toggle-widget-view.component-CyjhQSiV.mjs +0 -52
- package/fesm2022/acorex-platform-layouts-toggle-widget-view.component-CyjhQSiV.mjs.map +0 -1
- package/fesm2022/acorex-platform-schema.mjs +0 -594
- package/fesm2022/acorex-platform-schema.mjs.map +0 -1
- package/layout/README.md +0 -4
- package/layout/index.d.ts +0 -2
- package/layout/lib/builder/builder.module.d.ts +0 -23
- package/layout/lib/builder/context.service.d.ts +0 -17
- package/layout/lib/builder/index.d.ts +0 -7
- package/layout/lib/builder/widget-column-renderer.d.ts +0 -30
- package/layout/lib/builder/widget-container.d.ts +0 -13
- package/layout/lib/builder/widget-renderer.d.ts +0 -41
- package/layout/lib/builder/widget.types.d.ts +0 -55
- package/layouts/lib/admin/admin-child-layout/admin-child-features-list.component.d.ts +0 -22
- package/layouts/lib/admin/admin-child-layout/admin-child-layout.component.d.ts +0 -21
- package/layouts/lib/admin/admin-child-layout/admin-child-layout.module.d.ts +0 -17
- package/layouts/lib/admin/admin-child-layout/index.d.ts +0 -3
- package/layouts/lib/admin/admin-root-layout/admin-root-layout.component.d.ts +0 -30
- package/layouts/lib/admin/admin-root-layout/admin-root-layout.module.d.ts +0 -25
- package/layouts/lib/admin/admin-root-layout/components/admin-footer/admin-footer.component.d.ts +0 -5
- package/layouts/lib/admin/admin-root-layout/components/admin-header/admin-header.component.d.ts +0 -10
- package/layouts/lib/admin/admin-root-layout/index.d.ts +0 -4
- package/layouts/lib/admin/store/admin-layout.selectors.d.ts +0 -5
- package/layouts/lib/shared/components/content-view/content-view.page.d.ts +0 -23
- package/layouts/lib/shared/components/content-view/content-view.type.d.ts +0 -16
- package/layouts/lib/shared/components/index.d.ts +0 -9
- package/layouts/lib/shared/components/slots/navbar-slot.component.d.ts +0 -10
- package/layouts/lib/shared/entity/entity.class.d.ts +0 -153
- package/layouts/lib/shared/index.d.ts +0 -4
- package/layouts/lib/shared/services/index.d.ts +0 -1
- package/layouts/lib/shared/workflows/common.workflow.d.ts +0 -61
- package/layouts/lib/shared/workflows/error-handler.d.ts +0 -8
- package/layouts/lib/themes/default/entity-layouts/entity-details-view/entity-details-view.component.d.ts +0 -11
- package/layouts/lib/themes/default/entity-layouts/entity-details.viewmodel.d.ts +0 -34
- package/layouts/lib/themes/default/index.d.ts +0 -2
- package/layouts/lib/widgets/avatar/avatar-widget-edit.component.d.ts +0 -16
- package/layouts/lib/widgets/avatar/avatar-widget-view.component.d.ts +0 -13
- package/layouts/lib/widgets/checkbox/checkbox-widget-column.component.d.ts +0 -11
- package/layouts/lib/widgets/checkbox/checkbox-widget-edit.component.d.ts +0 -6
- package/layouts/lib/widgets/checkbox/checkbox-widget-view.component.d.ts +0 -11
- package/layouts/lib/widgets/common-widget-filter/boolean-widget-filter.component.d.ts +0 -17
- package/layouts/lib/widgets/common-widget-filter/number-widget-filter.component.d.ts +0 -11
- package/layouts/lib/widgets/common-widget-filter/string-widget-filter.component.d.ts +0 -11
- package/layouts/lib/widgets/common-widgets.module.d.ts +0 -32
- package/layouts/lib/widgets/dateTime/dateTime-widget-column.component.d.ts +0 -11
- package/layouts/lib/widgets/dateTime/dateTime-widget-edit.component.d.ts +0 -26
- package/layouts/lib/widgets/dateTime/dateTime-widget-filter.component.d.ts +0 -16
- package/layouts/lib/widgets/dateTime/dateTime-widget-view.component.d.ts +0 -11
- package/layouts/lib/widgets/email/email-widget-column.component.d.ts +0 -16
- package/layouts/lib/widgets/email/email-widget-edit.component.d.ts +0 -28
- package/layouts/lib/widgets/email/email-widget-view.component.d.ts +0 -16
- package/layouts/lib/widgets/file/file-widget-column.component.d.ts +0 -8
- package/layouts/lib/widgets/file/file-widget-edit.component.d.ts +0 -17
- package/layouts/lib/widgets/file/file-widget-filter.component.d.ts +0 -6
- package/layouts/lib/widgets/file/file-widget-view.component.d.ts +0 -17
- package/layouts/lib/widgets/gallery/gallery-widget-edit.component.d.ts +0 -15
- package/layouts/lib/widgets/gallery/gallery-widget-filter.component.d.ts +0 -6
- package/layouts/lib/widgets/gallery/gallery-widget-view.component.d.ts +0 -16
- package/layouts/lib/widgets/lookup/lookup-widget-column.component.d.ts +0 -16
- package/layouts/lib/widgets/lookup/lookup-widget-edit.component.d.ts +0 -15
- package/layouts/lib/widgets/lookup/lookup-widget-filter.component.d.ts +0 -16
- package/layouts/lib/widgets/lookup/lookup-widget-view.component.d.ts +0 -17
- package/layouts/lib/widgets/map/map-widget-edit.component.d.ts +0 -15
- package/layouts/lib/widgets/map/map-widget-view.component.d.ts +0 -17
- package/layouts/lib/widgets/messenger/messenger-widget-column.component.d.ts +0 -15
- package/layouts/lib/widgets/messenger/messenger-widget-edit.component.d.ts +0 -14
- package/layouts/lib/widgets/messenger/messenger-widget-view.component.d.ts +0 -17
- package/layouts/lib/widgets/number/number-widget-edit.component.d.ts +0 -7
- package/layouts/lib/widgets/number/number-widget-view.component.d.ts +0 -8
- package/layouts/lib/widgets/password/password-widget-column.component.d.ts +0 -14
- package/layouts/lib/widgets/password/password-widget-edit.component.d.ts +0 -6
- package/layouts/lib/widgets/password/password-widget-view.component.d.ts +0 -18
- package/layouts/lib/widgets/phone/phone-widget-column.component.d.ts +0 -15
- package/layouts/lib/widgets/phone/phone-widget-edit.component.d.ts +0 -29
- package/layouts/lib/widgets/phone/phone-widget-view.component.d.ts +0 -18
- package/layouts/lib/widgets/rich-text/rich-text-widget-column.component.d.ts +0 -11
- package/layouts/lib/widgets/rich-text/rich-text-widget-edit.component.d.ts +0 -33
- package/layouts/lib/widgets/rich-text/rich-text-widget-view.component.d.ts +0 -10
- package/layouts/lib/widgets/selection-list/selection-list-widget-column.component.d.ts +0 -16
- package/layouts/lib/widgets/selection-list/selection-list-widget-edit.component.d.ts +0 -12
- package/layouts/lib/widgets/selection-list/selection-list-widget-filter.component.d.ts +0 -9
- package/layouts/lib/widgets/selection-list/selection-list-widget-view.component.d.ts +0 -15
- package/layouts/lib/widgets/signature-pad/signature-pad-widget-edit.component.d.ts +0 -19
- package/layouts/lib/widgets/signature-pad/signature-pad-widget-view.component.d.ts +0 -8
- package/layouts/lib/widgets/text/largetext-widget-edit.component.d.ts +0 -6
- package/layouts/lib/widgets/text/text-widget-column.component.d.ts +0 -12
- package/layouts/lib/widgets/text/text-widget-edit.component.d.ts +0 -23
- package/layouts/lib/widgets/text/text-widget-view.component.d.ts +0 -11
- package/layouts/lib/widgets/toggle/toggle-widget-column.component.d.ts +0 -11
- package/layouts/lib/widgets/toggle/toggle-widget-edit.component.d.ts +0 -6
- package/layouts/lib/widgets/toggle/toggle-widget-view.component.d.ts +0 -11
- package/schema/README.md +0 -3
- package/schema/index.d.ts +0 -11
- package/schema/lib/operators.d.ts +0 -22
- package/schema/lib/schema.types.d.ts +0 -16
- package/schema/lib/widget/widget-base.d.ts +0 -45
- package/schema/lib/widget/widget-token.d.ts +0 -16
- /package/{core → common}/lib/app/operators.d.ts +0 -0
- /package/{core → common}/lib/configs/config.types.d.ts +0 -0
- /package/{layout/lib → common/lib/layout}/component-slot/component-slot-loader.service.d.ts +0 -0
- /package/{layout/lib → common/lib/layout}/component-slot/component-slot-registery.service.d.ts +0 -0
- /package/{layout/lib → common/lib/layout}/component-slot/component-slot.directive.d.ts +0 -0
- /package/{layout/lib → common/lib/layout}/component-slot/component-slot.module.d.ts +0 -0
- /package/{layout/lib → common/lib/layout}/component-slot/component-slot.types.d.ts +0 -0
- /package/{layout/lib → common/lib/layout}/component-slot/index.d.ts +0 -0
- /package/{layouts/lib/shared/services → common/lib/layout}/layout.service.d.ts +0 -0
- /package/{layouts/lib/shared/components → common/lib/layout}/logo/logo.component.d.ts +0 -0
- /package/common/lib/{shared → layout/logo}/logo.types.d.ts +0 -0
- /package/common/lib/{menu → layout/menu}/index.d.ts +0 -0
- /package/common/lib/{menu → layout/menu}/menu.loader.d.ts +0 -0
- /package/common/lib/{menu → layout/menu}/menu.types.d.ts +0 -0
- /package/{layouts/lib/shared → common/lib/layout/theme}/components/slots/footer-text-slot.component.d.ts +0 -0
- /package/{layouts/lib/shared → common/lib/layout/theme}/components/slots/theme-slot.component.d.ts +0 -0
- /package/{layouts/lib/admin → common/lib/layout/theme}/store/admin-layout.actions.d.ts +0 -0
- /package/{layouts/lib/admin → common/lib/layout/theme}/store/admin-layout.effects.d.ts +0 -0
- /package/{layouts/lib/admin → common/lib/layout/theme}/store/admin-layout.reducers.d.ts +0 -0
- /package/{layouts/lib/admin → common/lib/layout/theme}/store/admin-layout.state.d.ts +0 -0
- /package/{layouts/lib/admin → common/lib/layout/theme}/store/index.d.ts +0 -0
- /package/{schema/lib → common/lib/schema}/component-loader.d.ts +0 -0
- /package/{layouts/lib/shared → common/lib/schema}/entity/entity-registery.service.d.ts +0 -0
- /package/{layouts/lib/shared → common/lib/schema}/entity/entity.loader.d.ts +0 -0
- /package/{layouts/lib/shared → common/lib/schema}/entity/index.d.ts +0 -0
- /package/{schema/lib → common/lib/schema}/formats.d.ts +0 -0
- /package/{schema/lib → common/lib/schema}/schema-registery.service.d.ts +0 -0
- /package/{schema/lib → common/lib/schema}/schema.module.d.ts +0 -0
- /package/{schema/lib → common/lib/schema}/widget/widget-column-renderer.d.ts +0 -0
- /package/{schema/lib → common/lib/schema}/widget/widget-filter-renderer.d.ts +0 -0
- /package/{schema/lib → common/lib/schema}/widget/widget-renderer.d.ts +0 -0
- /package/{layouts/lib → common/lib/schema}/widgets/gallery/gallery-widget-types.d.ts +0 -0
- /package/{layouts/lib → common/lib/schema}/widgets/index.d.ts +0 -0
- /package/{layouts/lib → common/lib/schema}/widgets/password/change-password.component.d.ts +0 -0
- /package/{layouts/lib/shared → common/lib}/workflows/index.d.ts +0 -0
- /package/layout/{lib → builder/lib}/builder/widget-registery.service.d.ts +0 -0
- /package/{layouts → themes/default}/lib/layout.routes.d.ts +0 -0
- /package/{layouts/lib/shared/components → themes/default/lib/pages/errors}/error-401/error-401.component.d.ts +0 -0
- /package/{layouts/lib/shared/components → themes/default/lib/pages/errors}/error-404/error-404.component.d.ts +0 -0
- /package/{layouts/lib/shared/components → themes/default/lib/pages/errors}/error-offline/error-offline.component.d.ts +0 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { AXDataTableColumnComponent } from '@acorex/components/data-table';
|
|
2
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Injector, Input, TemplateRef, ViewChild, inject, signal } from '@angular/core';
|
|
3
|
+
import { AXP_WIDGET_COLUMN_TOKEN } from './widget.types';
|
|
4
|
+
import { AXPLayoutBuilderService } from './builder.service';
|
|
5
|
+
import { AXPWidgetRegistryService } from './widget-registery.service';
|
|
6
|
+
import { get, merge } from 'lodash-es';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@angular/common";
|
|
9
|
+
export class AXPWidgetColumnRendererComponent extends AXDataTableColumnComponent {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(...arguments);
|
|
12
|
+
this.widgetRegistery = inject(AXPWidgetRegistryService);
|
|
13
|
+
this.mergedOptions = signal({});
|
|
14
|
+
this.injector = inject(Injector);
|
|
15
|
+
this.cdr = inject(ChangeDetectorRef);
|
|
16
|
+
}
|
|
17
|
+
get node() {
|
|
18
|
+
return this._node;
|
|
19
|
+
}
|
|
20
|
+
set node(v) {
|
|
21
|
+
this._node = v;
|
|
22
|
+
}
|
|
23
|
+
get renderFooterTemplate() {
|
|
24
|
+
return this.footerTemplate ?? this._contentFooterTemplate;
|
|
25
|
+
}
|
|
26
|
+
get renderCellTemplate() {
|
|
27
|
+
return this.cellTemplate ?? this._contentCellTemplate;
|
|
28
|
+
}
|
|
29
|
+
get renderHeaderTemplate() {
|
|
30
|
+
return this.headerTemplate ?? this._contentHeaderTemplate;
|
|
31
|
+
}
|
|
32
|
+
get loadingEnabled() {
|
|
33
|
+
return true;
|
|
34
|
+
}
|
|
35
|
+
get name() {
|
|
36
|
+
return `col-${this.node.path}`;
|
|
37
|
+
}
|
|
38
|
+
async ngOnInit() {
|
|
39
|
+
const widget = this.widgetRegistery.resolve(this.node.type);
|
|
40
|
+
const mode = 'column';
|
|
41
|
+
this.component = await widget?.components[mode]?.component();
|
|
42
|
+
this.mergedOptions.set(merge(widget?.defaultOptions, widget?.components[mode]?.defaultOptions, this.node.options) || {});
|
|
43
|
+
const tokenValue = {
|
|
44
|
+
path: this.node.path,
|
|
45
|
+
options: this.mergedOptions()
|
|
46
|
+
};
|
|
47
|
+
this.widgetInjector = Injector.create({
|
|
48
|
+
parent: this.injector,
|
|
49
|
+
providers: [
|
|
50
|
+
{
|
|
51
|
+
provide: AXP_WIDGET_COLUMN_TOKEN,
|
|
52
|
+
useValue: tokenValue,
|
|
53
|
+
},
|
|
54
|
+
],
|
|
55
|
+
});
|
|
56
|
+
this.width = this.mergedOptions().width ?? '200px';
|
|
57
|
+
this.allowResizing = this.mergedOptions().allowResizing || true;
|
|
58
|
+
this.cdr.detectChanges();
|
|
59
|
+
}
|
|
60
|
+
getInputs(data) {
|
|
61
|
+
return { rawValue: get(data, this.node.path) };
|
|
62
|
+
}
|
|
63
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetColumnRendererComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
64
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: AXPWidgetColumnRendererComponent, selector: "axp-widget-column-renderer", inputs: { caption: "caption", node: "node", footerTemplate: "footerTemplate", cellTemplate: "cellTemplate", headerTemplate: "headerTemplate" }, providers: [AXPLayoutBuilderService, { provide: AXDataTableColumnComponent, useExisting: AXPWidgetColumnRendererComponent }], viewQueries: [{ propertyName: "_contentFooterTemplate", first: true, predicate: ["footer"], descendants: true }, { propertyName: "_contentCellTemplate", first: true, predicate: ["cell"], descendants: true }, { propertyName: "_contentHeaderTemplate", first: true, predicate: ["header"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
|
|
65
|
+
<ng-template #header>{{ caption }}</ng-template>
|
|
66
|
+
<ng-template #cell let-row>
|
|
67
|
+
@if(component && widgetInjector && row?.data) {
|
|
68
|
+
<ng-container *ngComponentOutlet="component; injector: widgetInjector; inputs: getInputs(row.data)"></ng-container>
|
|
69
|
+
}
|
|
70
|
+
</ng-template>
|
|
71
|
+
<ng-template #footer></ng-template>
|
|
72
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
73
|
+
}
|
|
74
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetColumnRendererComponent, decorators: [{
|
|
75
|
+
type: Component,
|
|
76
|
+
args: [{
|
|
77
|
+
selector: 'axp-widget-column-renderer',
|
|
78
|
+
template: `
|
|
79
|
+
<ng-template #header>{{ caption }}</ng-template>
|
|
80
|
+
<ng-template #cell let-row>
|
|
81
|
+
@if(component && widgetInjector && row?.data) {
|
|
82
|
+
<ng-container *ngComponentOutlet="component; injector: widgetInjector; inputs: getInputs(row.data)"></ng-container>
|
|
83
|
+
}
|
|
84
|
+
</ng-template>
|
|
85
|
+
<ng-template #footer></ng-template>
|
|
86
|
+
`,
|
|
87
|
+
providers: [AXPLayoutBuilderService, { provide: AXDataTableColumnComponent, useExisting: AXPWidgetColumnRendererComponent }],
|
|
88
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
89
|
+
inputs: ['caption'],
|
|
90
|
+
}]
|
|
91
|
+
}], propDecorators: { node: [{
|
|
92
|
+
type: Input,
|
|
93
|
+
args: [{ required: true }]
|
|
94
|
+
}], footerTemplate: [{
|
|
95
|
+
type: Input
|
|
96
|
+
}], _contentFooterTemplate: [{
|
|
97
|
+
type: ViewChild,
|
|
98
|
+
args: ['footer']
|
|
99
|
+
}], cellTemplate: [{
|
|
100
|
+
type: Input
|
|
101
|
+
}], _contentCellTemplate: [{
|
|
102
|
+
type: ViewChild,
|
|
103
|
+
args: ['cell']
|
|
104
|
+
}], headerTemplate: [{
|
|
105
|
+
type: Input
|
|
106
|
+
}], _contentHeaderTemplate: [{
|
|
107
|
+
type: ViewChild,
|
|
108
|
+
args: ['header']
|
|
109
|
+
}] } });
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LWNvbHVtbi1yZW5kZXJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXIvc3JjL2xpYi9idWlsZGVyL3dpZGdldC1jb2x1bW4tcmVuZGVyZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0UsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvSSxPQUFPLEVBQXVCLHVCQUF1QixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDNUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEUsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxXQUFXLENBQUM7OztBQWlCdkMsTUFBTSxPQUFPLGdDQUFpQyxTQUFRLDBCQUEwQjtJQWZoRjs7UUFpQlksb0JBQWUsR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQVdyRCxrQkFBYSxHQUFHLE1BQU0sQ0FBTSxFQUFFLENBQUMsQ0FBQztRQXlDaEMsYUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1QixRQUFHLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7S0FrQ3pDO0lBcEZDLElBQ1csSUFBSTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFBVyxJQUFJLENBQUMsQ0FBc0I7UUFDcEMsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDakIs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QUFTO3VCQUFDLFFBQVE7Z0JBUVosWUFBWTtzQkFEbEIsS0FBSztnQkFJRSxvQkFBb0I7c0JBRDNCLFNBQVM7dUJBQUMsTUFBTTtnQkFRVixjQUFjO3NCQURwQixLQUFLO2dCQUlFLHNCQUFzQjtzQkFEN0IsU0FBUzt1QkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhEYXRhVGFibGVDb2x1bW5Db21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGF0YS10YWJsZSc7XHJcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbmplY3RvciwgSW5wdXQsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQsIGluamVjdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFYUFdpZGdldENvbHVtbk5vZGUsIEFYUF9XSURHRVRfQ09MVU1OX1RPS0VOIH0gZnJvbSAnLi93aWRnZXQudHlwZXMnO1xyXG5pbXBvcnQgeyBBWFBMYXlvdXRCdWlsZGVyU2VydmljZSB9IGZyb20gJy4vYnVpbGRlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQVhQV2lkZ2V0UmVnaXN0cnlTZXJ2aWNlIH0gZnJvbSAnLi93aWRnZXQtcmVnaXN0ZXJ5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBnZXQsIG1lcmdlIH0gZnJvbSAnbG9kYXNoLWVzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXhwLXdpZGdldC1jb2x1bW4tcmVuZGVyZXInLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8bmctdGVtcGxhdGUgI2hlYWRlcj57eyBjYXB0aW9uIH19PC9uZy10ZW1wbGF0ZT5cclxuICAgIDxuZy10ZW1wbGF0ZSAjY2VsbCBsZXQtcm93PlxyXG4gICAgICBAaWYoY29tcG9uZW50ICYmIHdpZGdldEluamVjdG9yICYmIHJvdz8uZGF0YSkge1xyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0NvbXBvbmVudE91dGxldD1cImNvbXBvbmVudDsgaW5qZWN0b3I6IHdpZGdldEluamVjdG9yOyBpbnB1dHM6IGdldElucHV0cyhyb3cuZGF0YSlcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgfVxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDxuZy10ZW1wbGF0ZSAjZm9vdGVyPjwvbmctdGVtcGxhdGU+XHJcbiAgYCxcclxuICBwcm92aWRlcnM6IFtBWFBMYXlvdXRCdWlsZGVyU2VydmljZSwgeyBwcm92aWRlOiBBWERhdGFUYWJsZUNvbHVtbkNvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYUFdpZGdldENvbHVtblJlbmRlcmVyQ29tcG9uZW50IH1dLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIGlucHV0czogWydjYXB0aW9uJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWFBXaWRnZXRDb2x1bW5SZW5kZXJlckNvbXBvbmVudCBleHRlbmRzIEFYRGF0YVRhYmxlQ29sdW1uQ29tcG9uZW50IHtcclxuXHJcbiAgcHJvdGVjdGVkIHdpZGdldFJlZ2lzdGVyeSA9IGluamVjdChBWFBXaWRnZXRSZWdpc3RyeVNlcnZpY2UpO1xyXG5cclxuICBwcml2YXRlIF9ub2RlOiBBWFBXaWRnZXRDb2x1bW5Ob2RlO1xyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXHJcbiAgcHVibGljIGdldCBub2RlKCk6IEFYUFdpZGdldENvbHVtbk5vZGUge1xyXG4gICAgcmV0dXJuIHRoaXMuX25vZGU7XHJcbiAgfVxyXG4gIHB1YmxpYyBzZXQgbm9kZSh2OiBBWFBXaWRnZXRDb2x1bW5Ob2RlKSB7XHJcbiAgICB0aGlzLl9ub2RlID0gdjtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgbWVyZ2VkT3B0aW9ucyA9IHNpZ25hbDxhbnk+KHt9KTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZm9vdGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+O1xyXG5cclxuICBAVmlld0NoaWxkKCdmb290ZXInKVxyXG4gIHByaXZhdGUgX2NvbnRlbnRGb290ZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj47XHJcblxyXG4gIGdldCByZW5kZXJGb290ZXJUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB7XHJcbiAgICByZXR1cm4gdGhpcy5mb290ZXJUZW1wbGF0ZSA/PyB0aGlzLl9jb250ZW50Rm9vdGVyVGVtcGxhdGU7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBjZWxsVGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+O1xyXG5cclxuICBAVmlld0NoaWxkKCdjZWxsJylcclxuICBwcml2YXRlIF9jb250ZW50Q2VsbFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcclxuXHJcbiAgZ2V0IHJlbmRlckNlbGxUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB7XHJcbiAgICByZXR1cm4gdGhpcy5jZWxsVGVtcGxhdGUgPz8gdGhpcy5fY29udGVudENlbGxUZW1wbGF0ZTtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGhlYWRlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcclxuXHJcbiAgQFZpZXdDaGlsZCgnaGVhZGVyJylcclxuICBwcml2YXRlIF9jb250ZW50SGVhZGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+O1xyXG5cclxuICBnZXQgcmVuZGVySGVhZGVyVGVtcGxhdGUoKTogVGVtcGxhdGVSZWY8dW5rbm93bj4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaGVhZGVyVGVtcGxhdGUgPz8gdGhpcy5fY29udGVudEhlYWRlclRlbXBsYXRlO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGxvYWRpbmdFbmFibGVkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBnZXQgbmFtZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGBjb2wtJHt0aGlzLm5vZGUucGF0aH1gO1xyXG4gIH1cclxuXHJcblxyXG4gIHByaXZhdGUgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xyXG4gIHByaXZhdGUgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcclxuICBwcm90ZWN0ZWQgd2lkZ2V0SW5qZWN0b3IhOiBJbmplY3RvcjtcclxuICBwcm90ZWN0ZWQgY29tcG9uZW50ITogYW55O1xyXG5cclxuICBhc3luYyBuZ09uSW5pdCgpIHtcclxuICAgIGNvbnN0IHdpZGdldCA9IHRoaXMud2lkZ2V0UmVnaXN0ZXJ5LnJlc29sdmUodGhpcy5ub2RlLnR5cGUpO1xyXG4gICAgY29uc3QgbW9kZSA9ICdjb2x1bW4nXHJcbiAgICB0aGlzLmNvbXBvbmVudCA9IGF3YWl0IHdpZGdldD8uY29tcG9uZW50c1ttb2RlXT8uY29tcG9uZW50KCk7XHJcbiAgICB0aGlzLm1lcmdlZE9wdGlvbnMuc2V0KFxyXG4gICAgICBtZXJnZSh3aWRnZXQ/LmRlZmF1bHRPcHRpb25zLCB3aWRnZXQ/LmNvbXBvbmVudHNbbW9kZV0/LmRlZmF1bHRPcHRpb25zLCB0aGlzLm5vZGUub3B0aW9ucykgfHwge31cclxuICAgICk7XHJcblxyXG4gICAgY29uc3QgdG9rZW5WYWx1ZSA9IHtcclxuICAgICAgcGF0aDogdGhpcy5ub2RlLnBhdGgsXHJcbiAgICAgIG9wdGlvbnM6IHRoaXMubWVyZ2VkT3B0aW9ucygpXHJcbiAgICB9O1xyXG4gICAgdGhpcy53aWRnZXRJbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7XHJcbiAgICAgIHBhcmVudDogdGhpcy5pbmplY3RvcixcclxuICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcHJvdmlkZTogQVhQX1dJREdFVF9DT0xVTU5fVE9LRU4sXHJcbiAgICAgICAgICB1c2VWYWx1ZTogdG9rZW5WYWx1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy53aWR0aCA9IHRoaXMubWVyZ2VkT3B0aW9ucygpLndpZHRoID8/ICcyMDBweCc7XHJcbiAgICB0aGlzLmFsbG93UmVzaXppbmcgPSB0aGlzLm1lcmdlZE9wdGlvbnMoKS5hbGxvd1Jlc2l6aW5nIHx8IHRydWU7XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBnZXRJbnB1dHMoZGF0YTogYW55KTogYW55IHtcclxuICAgIHJldHVybiB7IHJhd1ZhbHVlOiBnZXQoZGF0YSwgdGhpcy5ub2RlLnBhdGghKSB9O1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, inject } from "@angular/core";
|
|
2
|
+
import { AXPLayoutBuilderService } from "./builder.service";
|
|
3
|
+
import { AXUnsubscriber } from "@acorex/core/utils";
|
|
4
|
+
import { cloneDeep } from "lodash-es";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class AXPWidgetContainerComponent {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.contextChange = new EventEmitter();
|
|
9
|
+
this.unsubscriber = inject(AXUnsubscriber);
|
|
10
|
+
this.builderService = inject(AXPLayoutBuilderService);
|
|
11
|
+
}
|
|
12
|
+
get context() {
|
|
13
|
+
return this._context;
|
|
14
|
+
}
|
|
15
|
+
set context(v) {
|
|
16
|
+
this._context = v;
|
|
17
|
+
this.builderService.initial(this.context);
|
|
18
|
+
}
|
|
19
|
+
set variables(v) {
|
|
20
|
+
this.builderService.setVariables(v);
|
|
21
|
+
}
|
|
22
|
+
set functions(v) {
|
|
23
|
+
this.builderService.setFunctions(v);
|
|
24
|
+
}
|
|
25
|
+
ngOnInit() {
|
|
26
|
+
this.builderService.initial(this.context);
|
|
27
|
+
this.builderService
|
|
28
|
+
.onChanged
|
|
29
|
+
.pipe(this.unsubscriber.takeUntilDestroy)
|
|
30
|
+
.subscribe(ctx => {
|
|
31
|
+
this.contextChange.emit(cloneDeep(ctx.data));
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
35
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.2", type: AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: { context: "context", variables: "variables", functions: "functions" }, outputs: { contextChange: "contextChange" }, host: { styleAttribute: "display: contents;" }, providers: [AXPLayoutBuilderService, AXUnsubscriber], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
36
|
+
}
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetContainerComponent, decorators: [{
|
|
38
|
+
type: Component,
|
|
39
|
+
args: [{
|
|
40
|
+
selector: 'axp-widgets-container',
|
|
41
|
+
template: `<ng-content></ng-content>`,
|
|
42
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
43
|
+
host: { style: 'display: contents;' },
|
|
44
|
+
providers: [AXPLayoutBuilderService, AXUnsubscriber],
|
|
45
|
+
}]
|
|
46
|
+
}], propDecorators: { contextChange: [{
|
|
47
|
+
type: Output
|
|
48
|
+
}], context: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], variables: [{
|
|
51
|
+
type: Input
|
|
52
|
+
}], functions: [{
|
|
53
|
+
type: Input
|
|
54
|
+
}] } });
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2xheW91dC9idWlsZGVyL3NyYy9saWIvYnVpbGRlci93aWRnZXQtY29udGFpbmVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFNBQVMsRUFBTyxNQUFNLFdBQVcsQ0FBQzs7QUFTM0MsTUFBTSxPQUFPLDJCQUEyQjtJQVB4QztRQVVXLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQXVCdkMsaUJBQVksR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDdEMsbUJBQWMsR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztLQVc1RDtJQWhDRyxJQUFXLE9BQU87UUFDZCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekIsQ0FBQztJQUNELElBQ1csT0FBTyxDQUFDLENBQU07UUFDckIsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDbEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRCxJQUNXLFNBQVMsQ0FBQyxDQUFNO1FBQ3ZCLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxJQUNXLFNBQVMsQ0FBQyxDQUFNO1FBQ3ZCLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFNRCxRQUFRO1FBQ0osSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxjQUFjO2FBQ2QsU0FBUzthQUNULElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDO2FBQ3hDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNiLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNqRCxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7OEdBckNRLDJCQUEyQjtrR0FBM0IsMkJBQTJCLDZOQUZ6QixDQUFDLHVCQUF1QixFQUFFLGNBQWMsQ0FBQywwQkFIMUMsMkJBQTJCOzsyRkFLNUIsMkJBQTJCO2tCQVB2QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsb0JBQW9CLEVBQUU7b0JBQ3JDLFNBQVMsRUFBRSxDQUFDLHVCQUF1QixFQUFFLGNBQWMsQ0FBQztpQkFDdkQ7OEJBSVUsYUFBYTtzQkFEbkIsTUFBTTtnQkFRSSxPQUFPO3NCQURqQixLQUFLO2dCQU9LLFNBQVM7c0JBRG5CLEtBQUs7Z0JBTUssU0FBUztzQkFEbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgaW5qZWN0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQVhQTGF5b3V0QnVpbGRlclNlcnZpY2UgfSBmcm9tIFwiLi9idWlsZGVyLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQVhVbnN1YnNjcmliZXIgfSBmcm9tIFwiQGFjb3JleC9jb3JlL3V0aWxzXCI7XHJcbmltcG9ydCB7IGNsb25lRGVlcCwgc2V0IH0gZnJvbSBcImxvZGFzaC1lc1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2F4cC13aWRnZXRzLWNvbnRhaW5lcicsXHJcbiAgICB0ZW1wbGF0ZTogYDxuZy1jb250ZW50PjwvbmctY29udGVudD5gLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBob3N0OiB7IHN0eWxlOiAnZGlzcGxheTogY29udGVudHM7JyB9LFxyXG4gICAgcHJvdmlkZXJzOiBbQVhQTGF5b3V0QnVpbGRlclNlcnZpY2UsIEFYVW5zdWJzY3JpYmVyXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFYUFdpZGdldENvbnRhaW5lckNvbXBvbmVudCB7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgY29udGV4dENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICAgIHByaXZhdGUgX2NvbnRleHQ6IGFueTtcclxuICAgIHB1YmxpYyBnZXQgY29udGV4dCgpOiBhbnkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9jb250ZXh0O1xyXG4gICAgfVxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBzZXQgY29udGV4dCh2OiBhbnkpIHtcclxuICAgICAgICB0aGlzLl9jb250ZXh0ID0gdjtcclxuICAgICAgICB0aGlzLmJ1aWxkZXJTZXJ2aWNlLmluaXRpYWwodGhpcy5jb250ZXh0KTtcclxuICAgIH1cclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHNldCB2YXJpYWJsZXModjogYW55KSB7XHJcbiAgICAgICAgdGhpcy5idWlsZGVyU2VydmljZS5zZXRWYXJpYWJsZXModik7XHJcbiAgICB9XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBzZXQgZnVuY3Rpb25zKHY6IGFueSkge1xyXG4gICAgICAgIHRoaXMuYnVpbGRlclNlcnZpY2Uuc2V0RnVuY3Rpb25zKHYpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBwcml2YXRlIHVuc3Vic2NyaWJlciA9IGluamVjdChBWFVuc3Vic2NyaWJlcik7XHJcbiAgICBwcml2YXRlIGJ1aWxkZXJTZXJ2aWNlID0gaW5qZWN0KEFYUExheW91dEJ1aWxkZXJTZXJ2aWNlKTtcclxuXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuICAgICAgICB0aGlzLmJ1aWxkZXJTZXJ2aWNlLmluaXRpYWwodGhpcy5jb250ZXh0KTtcclxuICAgICAgICB0aGlzLmJ1aWxkZXJTZXJ2aWNlXHJcbiAgICAgICAgICAgIC5vbkNoYW5nZWRcclxuICAgICAgICAgICAgLnBpcGUodGhpcy51bnN1YnNjcmliZXIudGFrZVVudGlsRGVzdHJveSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZShjdHggPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jb250ZXh0Q2hhbmdlLmVtaXQoY2xvbmVEZWVwKGN0eC5kYXRhKSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG59Il19
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import { merge } from "lodash-es";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class AXPWidgetRegistryService {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.types = new Map();
|
|
7
|
+
}
|
|
8
|
+
register(widget) {
|
|
9
|
+
this.types.set(widget.name, widget);
|
|
10
|
+
}
|
|
11
|
+
extend(parentName, widget) {
|
|
12
|
+
const parentWidget = this.resolve(parentName);
|
|
13
|
+
const newWidget = merge({}, parentWidget, widget);
|
|
14
|
+
newWidget.name = widget.name;
|
|
15
|
+
this.register(newWidget);
|
|
16
|
+
}
|
|
17
|
+
resolve(name) {
|
|
18
|
+
const widget = this.types.get(name);
|
|
19
|
+
if (!widget) {
|
|
20
|
+
throw new Error(`Widget with name ${widget} does not exist.`);
|
|
21
|
+
}
|
|
22
|
+
return widget;
|
|
23
|
+
}
|
|
24
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
25
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetRegistryService, providedIn: 'root' }); }
|
|
26
|
+
}
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetRegistryService, decorators: [{
|
|
28
|
+
type: Injectable,
|
|
29
|
+
args: [{
|
|
30
|
+
providedIn: 'root',
|
|
31
|
+
}]
|
|
32
|
+
}] });
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXJlZ2lzdGVyeS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlci9zcmMvbGliL2J1aWxkZXIvd2lkZ2V0LXJlZ2lzdGVyeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFdBQVcsQ0FBQzs7QUFLbEMsTUFBTSxPQUFPLHdCQUF3QjtJQUhyQztRQUlZLFVBQUssR0FBaUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztLQXFCM0Q7SUFsQkcsUUFBUSxDQUFDLE1BQXVCO1FBQzVCLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxVQUFrQixFQUFFLE1BQXVCO1FBQzlDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDOUMsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLEVBQUUsRUFBRSxZQUFZLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDbEQsU0FBUyxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQzdCLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELE9BQU8sQ0FBQyxJQUFZO1FBQ2hCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNWLE1BQU0sSUFBSSxLQUFLLENBQUMsb0JBQW9CLE1BQU0sa0JBQWtCLENBQUMsQ0FBQztRQUNsRSxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQzs4R0FyQlEsd0JBQXdCO2tIQUF4Qix3QkFBd0IsY0FGckIsTUFBTTs7MkZBRVQsd0JBQXdCO2tCQUhwQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBBWFBXaWRnZXRDb25maWcgfSBmcm9tIFwiLi93aWRnZXQudHlwZXNcIjtcclxuaW1wb3J0IHsgbWVyZ2UgfSBmcm9tIFwibG9kYXNoLWVzXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWFBXaWRnZXRSZWdpc3RyeVNlcnZpY2Uge1xyXG4gICAgcHJpdmF0ZSB0eXBlczogTWFwPHN0cmluZywgQVhQV2lkZ2V0Q29uZmlnPiA9IG5ldyBNYXAoKTtcclxuXHJcblxyXG4gICAgcmVnaXN0ZXIod2lkZ2V0OiBBWFBXaWRnZXRDb25maWcpIHtcclxuICAgICAgICB0aGlzLnR5cGVzLnNldCh3aWRnZXQubmFtZSwgd2lkZ2V0KTtcclxuICAgIH1cclxuXHJcbiAgICBleHRlbmQocGFyZW50TmFtZTogc3RyaW5nLCB3aWRnZXQ6IEFYUFdpZGdldENvbmZpZykge1xyXG4gICAgICAgIGNvbnN0IHBhcmVudFdpZGdldCA9IHRoaXMucmVzb2x2ZShwYXJlbnROYW1lKTtcclxuICAgICAgICBjb25zdCBuZXdXaWRnZXQgPSBtZXJnZSh7fSwgcGFyZW50V2lkZ2V0LCB3aWRnZXQpO1xyXG4gICAgICAgIG5ld1dpZGdldC5uYW1lID0gd2lkZ2V0Lm5hbWU7XHJcbiAgICAgICAgdGhpcy5yZWdpc3RlcihuZXdXaWRnZXQpO1xyXG4gICAgfVxyXG5cclxuICAgIHJlc29sdmUobmFtZTogc3RyaW5nKTogQVhQV2lkZ2V0Q29uZmlnIHwgdW5kZWZpbmVkIHtcclxuICAgICAgICBjb25zdCB3aWRnZXQgPSB0aGlzLnR5cGVzLmdldChuYW1lKTtcclxuICAgICAgICBpZiAoIXdpZGdldCkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFdpZGdldCB3aXRoIG5hbWUgJHt3aWRnZXR9IGRvZXMgbm90IGV4aXN0LmApO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gd2lkZ2V0O1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,293 @@
|
|
|
1
|
+
import { AXUnsubscriber } from '@acorex/core/utils';
|
|
2
|
+
import { ComponentPortal } from '@angular/cdk/portal';
|
|
3
|
+
import { ChangeDetectionStrategy, Component, Injector, Input, inject, signal } from '@angular/core';
|
|
4
|
+
import { cloneDeep, get, merge, set, sum } from 'lodash-es';
|
|
5
|
+
import { filter } from 'rxjs';
|
|
6
|
+
import { AXPLayoutBuilderService } from './builder.service';
|
|
7
|
+
import { AXPWidgetRegistryService } from './widget-registery.service';
|
|
8
|
+
import { AXP_WIDGET_TOKEN } from './widget.types';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "@angular/common";
|
|
11
|
+
import * as i2 from "@angular/cdk/portal";
|
|
12
|
+
import * as i3 from "@acorex/components/skeleton";
|
|
13
|
+
export class AXPWidgetRendererComponent {
|
|
14
|
+
get node() {
|
|
15
|
+
return this._node;
|
|
16
|
+
}
|
|
17
|
+
set node(v) {
|
|
18
|
+
this._node = v;
|
|
19
|
+
this.loadComponent();
|
|
20
|
+
}
|
|
21
|
+
constructor() {
|
|
22
|
+
this.mergedOptions = signal({});
|
|
23
|
+
this.injector = inject(Injector);
|
|
24
|
+
this.builderService = inject(AXPLayoutBuilderService);
|
|
25
|
+
this.widgetRegistery = inject(AXPWidgetRegistryService);
|
|
26
|
+
this.unsubscriber = inject(AXUnsubscriber);
|
|
27
|
+
this.isLoading = signal(true);
|
|
28
|
+
this.expressionCache = new Map();
|
|
29
|
+
this.expressionEvaluators = new Map();
|
|
30
|
+
this.scope = null;
|
|
31
|
+
this.builderService.onChanged.pipe(this.unsubscriber.takeUntilDestroy).subscribe(async (e) => {
|
|
32
|
+
if (await this.updateOptionsBasedOnContext() > 0) {
|
|
33
|
+
this.applyOptions();
|
|
34
|
+
}
|
|
35
|
+
if (this.checkFormulaForUpdate(this.node.formula, e.path)) {
|
|
36
|
+
await this.updateValueBasedOnFormula();
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
async loadComponent() {
|
|
41
|
+
this.isLoading.set(true);
|
|
42
|
+
const widget = this.widgetRegistery.resolve(this.node.type);
|
|
43
|
+
this.mergedOptions.set(merge(cloneDeep(widget?.defaultOptions), cloneDeep(widget?.components[this.node.mode]?.defaultOptions), this.node.options) || {});
|
|
44
|
+
this.preprocessAndInitialOptions(cloneDeep(this.node.options));
|
|
45
|
+
await this.updateOptionsBasedOnContext();
|
|
46
|
+
const tokenValue = {
|
|
47
|
+
id: this.node.id,
|
|
48
|
+
path: this.node.path,
|
|
49
|
+
mode: this.node.mode,
|
|
50
|
+
type: this.node.type,
|
|
51
|
+
children: this.node.children,
|
|
52
|
+
options: this.mergedOptions()
|
|
53
|
+
};
|
|
54
|
+
const token = Injector.create({
|
|
55
|
+
parent: this.injector,
|
|
56
|
+
providers: [
|
|
57
|
+
{
|
|
58
|
+
provide: AXP_WIDGET_TOKEN,
|
|
59
|
+
useValue: tokenValue,
|
|
60
|
+
},
|
|
61
|
+
],
|
|
62
|
+
});
|
|
63
|
+
var com = await widget?.components[this.node.mode]?.component();
|
|
64
|
+
this.portal = new ComponentPortal(com, null, token);
|
|
65
|
+
this.isLoading.set(false);
|
|
66
|
+
}
|
|
67
|
+
async handleAttached(portalOutletRef) {
|
|
68
|
+
portalOutletRef = portalOutletRef;
|
|
69
|
+
this.instance = portalOutletRef.instance;
|
|
70
|
+
await this.updateValueBasedOnFormula();
|
|
71
|
+
await this.assignTriggers();
|
|
72
|
+
}
|
|
73
|
+
applyOptions() {
|
|
74
|
+
if (!this.instance)
|
|
75
|
+
return;
|
|
76
|
+
this.instance.setOptions(this.mergedOptions());
|
|
77
|
+
}
|
|
78
|
+
checkFormulaForUpdate(formula, path) {
|
|
79
|
+
if (formula) {
|
|
80
|
+
const regex = /context\.eval\('([^']+)'\)/g;
|
|
81
|
+
const matches = formula.match(regex);
|
|
82
|
+
const nodes = matches ? matches.map((match) => match.match(/'([^']+)'/)[1]) : [];
|
|
83
|
+
return nodes.includes(path);
|
|
84
|
+
}
|
|
85
|
+
else
|
|
86
|
+
return false;
|
|
87
|
+
}
|
|
88
|
+
preprocessAndInitialOptions(obj, pathPrefix = '') {
|
|
89
|
+
if (!obj)
|
|
90
|
+
return;
|
|
91
|
+
Object.entries(obj).forEach(([key, value]) => {
|
|
92
|
+
const currentPath = pathPrefix ? `${pathPrefix}.${key}` : key;
|
|
93
|
+
if (typeof value === 'string' && value.includes('{{')) {
|
|
94
|
+
// Cache dynamic expression for later evaluation
|
|
95
|
+
this.expressionEvaluators.set(currentPath, () => this.evaluateExpression(value));
|
|
96
|
+
}
|
|
97
|
+
else if (typeof value === 'object' && value !== null && (value.constructor === Object || Array.isArray(value))) {
|
|
98
|
+
// Recursively handle nested objects
|
|
99
|
+
this.preprocessAndInitialOptions(value, currentPath);
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
// Apply static values directly
|
|
103
|
+
this.mergedOptions.update((currentOptions) => {
|
|
104
|
+
return set(currentOptions, currentPath, value);
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
async updateOptionsBasedOnContext() {
|
|
110
|
+
const updates = [];
|
|
111
|
+
for (let [path, evaluator] of this.expressionEvaluators) {
|
|
112
|
+
const newValue = await evaluator();
|
|
113
|
+
updates.push({ path, newValue });
|
|
114
|
+
}
|
|
115
|
+
// Apply updates to mergedOptions
|
|
116
|
+
if (updates.length > 0) {
|
|
117
|
+
this.mergedOptions.update(o => {
|
|
118
|
+
const updatedOptions = { ...o };
|
|
119
|
+
updates.forEach(({ path, newValue }) => {
|
|
120
|
+
// Set the new value in the updatedOptions object by path
|
|
121
|
+
set(updatedOptions, path, newValue); // Assuming 'set' can handle paths like 'property.subproperty'
|
|
122
|
+
});
|
|
123
|
+
return updatedOptions;
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
return updates.length;
|
|
127
|
+
}
|
|
128
|
+
async updateValueBasedOnFormula() {
|
|
129
|
+
if (this.node.formula) {
|
|
130
|
+
const value = await this.evaluateExpression(this.node.formula);
|
|
131
|
+
this.instance.setValue(value);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
async evaluateExpression(templateExpression) {
|
|
135
|
+
try {
|
|
136
|
+
// Check cache first, but cache the function for evaluation, not the evaluated value
|
|
137
|
+
if (!this.expressionCache.has(templateExpression)) {
|
|
138
|
+
const expressionMatch = templateExpression.match(/\{\{\s*(.*?)\s*\}\}/);
|
|
139
|
+
if (!expressionMatch) {
|
|
140
|
+
throw Error(`No valid expression found in "${templateExpression}"`);
|
|
141
|
+
}
|
|
142
|
+
const expression = expressionMatch[1];
|
|
143
|
+
// Cache the evaluation function instead of the result
|
|
144
|
+
const scope = this.getGlobalScope();
|
|
145
|
+
const evaluationFunction = async () => {
|
|
146
|
+
const sandbox = new Function('scope', `with (scope) { return (async function() { return ${expression}; })(); }`);
|
|
147
|
+
return await sandbox(scope);
|
|
148
|
+
};
|
|
149
|
+
this.expressionCache.set(templateExpression, evaluationFunction);
|
|
150
|
+
}
|
|
151
|
+
// Retrieve the function from the cache and call it to evaluate the expression
|
|
152
|
+
const evaluate = this.expressionCache.get(templateExpression);
|
|
153
|
+
if (evaluate) {
|
|
154
|
+
// Ensure 'evaluate' is not undefined before invoking
|
|
155
|
+
return await evaluate();
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
throw Error(`Failed to retrieve evaluation function for expression: "${templateExpression}"`);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
catch (error) {
|
|
162
|
+
console.error('Error evaluating expression:', error);
|
|
163
|
+
return false;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
getGlobalScope() {
|
|
167
|
+
if (this.scope)
|
|
168
|
+
return this.scope;
|
|
169
|
+
this.scope = {};
|
|
170
|
+
set(this.scope, 'context', this.getContextScope());
|
|
171
|
+
set(this.scope, 'events', this.getEventScope());
|
|
172
|
+
set(this.scope, 'widget', this.getWidgetScope());
|
|
173
|
+
set(this.scope, 'methods', this.getFunctionScope());
|
|
174
|
+
set(this.scope, 'vars', this.getVariablesScope());
|
|
175
|
+
return this.scope;
|
|
176
|
+
}
|
|
177
|
+
getContextScope() {
|
|
178
|
+
const scope = {};
|
|
179
|
+
set(scope, 'eval', (path) => this.builderService.getValue(path));
|
|
180
|
+
return scope;
|
|
181
|
+
}
|
|
182
|
+
getEventScope() {
|
|
183
|
+
const scope = {};
|
|
184
|
+
set(scope, 'context', (path) => this.builderService.onChanged.pipe(filter((c) => c.path == path)));
|
|
185
|
+
return scope;
|
|
186
|
+
}
|
|
187
|
+
getWidgetScope() {
|
|
188
|
+
const scope = {};
|
|
189
|
+
set(scope, 'call', (name, ...args) => {
|
|
190
|
+
this.instance.call(name, ...args);
|
|
191
|
+
});
|
|
192
|
+
return scope;
|
|
193
|
+
}
|
|
194
|
+
getFunctionScope() {
|
|
195
|
+
const scope = {};
|
|
196
|
+
set(scope, 'sum', (values) => {
|
|
197
|
+
return sum(values);
|
|
198
|
+
});
|
|
199
|
+
Object.entries(this.builderService.functions).forEach(i => {
|
|
200
|
+
set(scope, i[0], (...args) => {
|
|
201
|
+
return i[1](...args);
|
|
202
|
+
});
|
|
203
|
+
});
|
|
204
|
+
return scope;
|
|
205
|
+
}
|
|
206
|
+
getVariablesScope() {
|
|
207
|
+
const scope = {};
|
|
208
|
+
set(scope, 'eval', (path) => get(this.builderService.variables, path));
|
|
209
|
+
return scope;
|
|
210
|
+
}
|
|
211
|
+
async assignTriggers() {
|
|
212
|
+
this.node.triggers?.forEach((t) => {
|
|
213
|
+
const event = this.evaluateTrigger(t.event);
|
|
214
|
+
event?.pipe(this.unsubscriber.takeUntilDestroy).subscribe((c) => {
|
|
215
|
+
this.evaluateAction(t.action);
|
|
216
|
+
});
|
|
217
|
+
});
|
|
218
|
+
}
|
|
219
|
+
evaluateTrigger(templateExpression) {
|
|
220
|
+
try {
|
|
221
|
+
const expressionMatch = templateExpression.match(/\{\{\s*(.*?)\s*\}\}/);
|
|
222
|
+
if (!expressionMatch) {
|
|
223
|
+
throw Error(`No valid expression found in "${templateExpression}"`);
|
|
224
|
+
}
|
|
225
|
+
const expression = expressionMatch[1];
|
|
226
|
+
// Cache the evaluation function instead of the result
|
|
227
|
+
const scope = this.getGlobalScope();
|
|
228
|
+
const sandbox = new Function('scope', `with (scope) { return ( function() { return ${expression}; })(); }`);
|
|
229
|
+
return sandbox(scope);
|
|
230
|
+
}
|
|
231
|
+
catch (error) {
|
|
232
|
+
console.error('Error evaluating expression:', error);
|
|
233
|
+
return null;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
evaluateAction(templateExpression) {
|
|
237
|
+
try {
|
|
238
|
+
const expressionMatch = templateExpression.match(/\{\{\s*(.*?)\s*\}\}/);
|
|
239
|
+
if (!expressionMatch) {
|
|
240
|
+
throw Error(`No valid expression found in "${templateExpression}"`);
|
|
241
|
+
}
|
|
242
|
+
const expression = expressionMatch[1];
|
|
243
|
+
// Cache the evaluation function instead of the result
|
|
244
|
+
const scope = this.getGlobalScope();
|
|
245
|
+
const sandbox = new Function('scope', `with (scope) { ${expression} }`);
|
|
246
|
+
sandbox(scope);
|
|
247
|
+
}
|
|
248
|
+
catch (error) {
|
|
249
|
+
console.error('Error evaluating expression:', error);
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
253
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: AXPWidgetRendererComponent, selector: "axp-widget-renderer", inputs: { node: "node" }, providers: [
|
|
254
|
+
{
|
|
255
|
+
provide: AXUnsubscriber,
|
|
256
|
+
},
|
|
257
|
+
], ngImport: i0, template: `
|
|
258
|
+
@if(mergedOptions().isVisible!=false) { @if(isLoading()){
|
|
259
|
+
<ax-skeleton [animated]="true" class="ax-w-full lg:ax-w-[50%] ax-h-8 ax-rounded"></ax-skeleton>
|
|
260
|
+
} @else {
|
|
261
|
+
<ng-container *ngTemplateOutlet="tt"></ng-container>
|
|
262
|
+
} }
|
|
263
|
+
<ng-template #tt>
|
|
264
|
+
<ng-template [cdkPortalOutlet]="portal" (attached)="handleAttached($event)"></ng-template>
|
|
265
|
+
</ng-template>
|
|
266
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: i3.AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
267
|
+
}
|
|
268
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetRendererComponent, decorators: [{
|
|
269
|
+
type: Component,
|
|
270
|
+
args: [{
|
|
271
|
+
selector: 'axp-widget-renderer',
|
|
272
|
+
template: `
|
|
273
|
+
@if(mergedOptions().isVisible!=false) { @if(isLoading()){
|
|
274
|
+
<ax-skeleton [animated]="true" class="ax-w-full lg:ax-w-[50%] ax-h-8 ax-rounded"></ax-skeleton>
|
|
275
|
+
} @else {
|
|
276
|
+
<ng-container *ngTemplateOutlet="tt"></ng-container>
|
|
277
|
+
} }
|
|
278
|
+
<ng-template #tt>
|
|
279
|
+
<ng-template [cdkPortalOutlet]="portal" (attached)="handleAttached($event)"></ng-template>
|
|
280
|
+
</ng-template>
|
|
281
|
+
`,
|
|
282
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
283
|
+
providers: [
|
|
284
|
+
{
|
|
285
|
+
provide: AXUnsubscriber,
|
|
286
|
+
},
|
|
287
|
+
],
|
|
288
|
+
}]
|
|
289
|
+
}], ctorParameters: () => [], propDecorators: { node: [{
|
|
290
|
+
type: Input,
|
|
291
|
+
args: [{ required: true }]
|
|
292
|
+
}] } });
|
|
293
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXJlbmRlcmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXIvc3JjL2xpYi9idWlsZGVyL3dpZGdldC1yZW5kZXJlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBOEIsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBZ0IsUUFBUSxFQUFFLEtBQUssRUFBa0IsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsSSxPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBVyxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyRSxPQUFPLEVBQWMsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzVELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RFLE9BQU8sRUFBZ0MsZ0JBQWdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFxQmhGLE1BQU0sT0FBTywwQkFBMEI7SUFHckMsSUFDVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFXLElBQUksQ0FBQyxDQUFnQjtRQUM5QixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNmLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBa0JEO1FBZlUsa0JBQWEsR0FBd0IsTUFBTSxDQUFNLEVBQUUsQ0FBQyxDQUFDO1FBRXZELGFBQVEsR0FBRyxNQUFNLENB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QUMscUJBQXFCLENBQUMsQ0FBQztZQUN4RSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7Z0JBQ3JCLE1BQU0sS0FBSyxDQUFDLGlDQUFpQyxrQkFBa0IsR0FBRyxDQUFDLENBQUM7WUFDdEUsQ0FBQztZQUNELE1BQU0sVUFBVSxHQUFHLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUV0QyxzREFBc0Q7WUFDdEQsTUFBTSxLQUFLLEdBQVEsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3pDLE1BQU0sT0FBTyxHQUFHLElBQUksUUFBUSxDQUFDLE9BQU8sRUFBRSxtQkFBbUIsVUFBVSxJQUFJLENBQUMsQ0FBQztZQUN6RSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakIsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLDhCQUE4QixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3ZELENBQUM7SUFDSCxDQUFDOzhHQTVRVSwwQkFBMEI7a0dBQTFCLDBCQUEwQix3RUFOMUI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsY0FBYzthQUN4QjtTQUNGLDBCQWZTOzs7Ozs7Ozs7R0FTVDs7MkZBUVUsMEJBQTBCO2tCQW5CdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixRQUFRLEVBQUU7Ozs7Ozs7OztHQVNUO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGNBQWM7eUJBQ3hCO3FCQUNGO2lCQUNGO3dEQUtZLElBQUk7c0JBRGQsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFVuc3Vic2NyaWJlciB9IGZyb20gJ0BhY29yZXgvY29yZS91dGlscyc7XHJcbmltcG9ydCB7IENka1BvcnRhbE91dGxldEF0dGFjaGVkUmVmLCBDb21wb25lbnRQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgQ29tcG9uZW50UmVmLCBJbmplY3RvciwgSW5wdXQsIFdyaXRhYmxlU2lnbmFsLCBpbmplY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBjbG9uZURlZXAsIGdldCwgaXNFbXB0eSwgbWVyZ2UsIHNldCwgc3VtIH0gZnJvbSAnbG9kYXNoLWVzJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZmlsdGVyIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEFYUExheW91dEJ1aWxkZXJTZXJ2aWNlIH0gZnJvbSAnLi9idWlsZGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBWFBXaWRnZXRSZWdpc3RyeVNlcnZpY2UgfSBmcm9tICcuL3dpZGdldC1yZWdpc3Rlcnkuc2VydmljZSc7XHJcbmltcG9ydCB7IEFYUFdpZGdldEJhc2UsIEFYUFdpZGdldE5vZGUsIEFYUF9XSURHRVRfVE9LRU4gfSBmcm9tICcuL3dpZGdldC50eXBlcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2F4cC13aWRnZXQtcmVuZGVyZXInLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICBAaWYobWVyZ2VkT3B0aW9ucygpLmlzVmlzaWJsZSE9ZmFsc2UpIHsgQGlmKGlzTG9hZGluZygpKXtcclxuICAgIDxheC1za2VsZXRvbiBbYW5pbWF0ZWRdPVwidHJ1ZVwiIGNsYXNzPVwiYXgtdy1mdWxsICBsZzpheC13LVs1MCVdIGF4LWgtOCBheC1yb3VuZGVkXCI+PC9heC1za2VsZXRvbj5cclxuICAgIH0gQGVsc2Uge1xyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInR0XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICB9IH1cclxuICAgIDxuZy10ZW1wbGF0ZSAjdHQ+XHJcbiAgICAgIDxuZy10ZW1wbGF0ZSBbY2RrUG9ydGFsT3V0bGV0XT1cInBvcnRhbFwiIChhdHRhY2hlZCk9XCJoYW5kbGVBdHRhY2hlZCgkZXZlbnQpXCI+PC9uZy10ZW1wbGF0ZT5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgYCxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogQVhVbnN1YnNjcmliZXIsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWFBXaWRnZXRSZW5kZXJlckNvbXBvbmVudCB7XHJcblxyXG4gIHByaXZhdGUgX25vZGU6IEFYUFdpZGdldE5vZGU7XHJcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcclxuICBwdWJsaWMgZ2V0IG5vZGUoKTogQVhQV2lkZ2V0Tm9kZSB7XHJcbiAgICByZXR1cm4gdGhpcy5fbm9kZTtcclxuICB9XHJcbiAgcHVibGljIHNldCBub2RlKHY6IEFYUFdpZGdldE5vZGUpIHtcclxuICAgIHRoaXMuX25vZGUgPSB2O1xyXG4gICAgdGhpcy5sb2FkQ29tcG9uZW50KCk7XHJcbiAgfVxyXG5cclxuXHJcbiAgcHJvdGVjdGVkIG1lcmdlZE9wdGlvbnM6IFdyaXRhYmxlU2lnbmFsPGFueT4gPSBzaWduYWw8YW55Pih7fSk7XHJcblxyXG4gIHByaXZhdGUgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xyXG4gIHByb3RlY3RlZCBidWlsZGVyU2VydmljZSA9IGluamVjdChBWFBMYXlvdXRCdWlsZGVyU2VydmljZSk7XHJcbiAgcHJvdGVjdGVkIHdpZGdldFJlZ2lzdGVyeSA9IGluamVjdChBWFBXaWRnZXRSZWdpc3RyeVNlcnZpY2UpO1xyXG4gIHByb3RlY3RlZCB1bnN1YnNjcmliZXIgPSBpbmplY3QoQVhVbnN1YnNjcmliZXIpO1xyXG5cclxuICBwcm90ZWN0ZWQgaXNMb2FkaW5nID0gc2lnbmFsKHRydWUpO1xyXG4gIHByaXZhdGUgaW5zdGFuY2UhOiBBWFBXaWRnZXRCYXNlO1xyXG4gIHByb3RlY3RlZCBwb3J0YWwhOiBDb21wb25lbnRQb3J0YWw8YW55PjtcclxuICBwcml2YXRlIGV4cHJlc3Npb25DYWNoZTogTWFwPHN0cmluZywgKCkgPT4gUHJvbWlzZTxhbnk+PiA9IG5ldyBNYXAoKTtcclxuICBwcml2YXRlIGV4cHJlc3Npb25FdmFsdWF0b3JzOiBNYXA8c3RyaW5nLCAoKSA9PiBQcm9taXNlPGFueT4+ID0gbmV3IE1hcCgpO1xyXG4gIHByaXZhdGUgc2NvcGU6IGFueSA9IG51bGw7XHJcblxyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMuYnVpbGRlclNlcnZpY2Uub25DaGFuZ2VkLnBpcGUodGhpcy51bnN1YnNjcmliZXIudGFrZVVudGlsRGVzdHJveSkuc3Vic2NyaWJlKGFzeW5jIChlKSA9PiB7XHJcbiAgICAgIGlmIChhd2FpdCB0aGlzLnVwZGF0ZU9wdGlvbnNCYXNlZE9uQ29udGV4dCgpID4gMCkge1xyXG4gICAgICAgIHRoaXMuYXBwbHlPcHRpb25zKCk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuY2hlY2tGb3JtdWxhRm9yVXBkYXRlKHRoaXMubm9kZS5mb3JtdWxhLCBlLnBhdGgpKSB7XHJcbiAgICAgICAgYXdhaXQgdGhpcy51cGRhdGVWYWx1ZUJhc2VkT25Gb3JtdWxhKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBsb2FkQ29tcG9uZW50KCkge1xyXG4gICAgdGhpcy5pc0xvYWRpbmcuc2V0KHRydWUpO1xyXG4gICAgY29uc3Qgd2lkZ2V0ID0gdGhpcy53aWRnZXRSZWdpc3RlcnkucmVzb2x2ZSh0aGlzLm5vZGUudHlwZSk7XHJcbiAgICB0aGlzLm1lcmdlZE9wdGlvbnMuc2V0KFxyXG4gICAgICBtZXJnZShjbG9uZURlZXAod2lkZ2V0Py5kZWZhdWx0T3B0aW9ucyksIGNsb25lRGVlcCh3aWRnZXQ/LmNvbXBvbmVudHNbdGhpcy5ub2RlLm1vZGVdPy5kZWZhdWx0T3B0aW9ucyksIHRoaXMubm9kZS5vcHRpb25zKSB8fCB7fVxyXG4gICAgKTtcclxuICAgIHRoaXMucHJlcHJvY2Vzc0FuZEluaXRpYWxPcHRpb25zKGNsb25lRGVlcCh0aGlzLm5vZGUub3B0aW9ucykpO1xyXG4gICAgYXdhaXQgdGhpcy51cGRhdGVPcHRpb25zQmFzZWRPbkNvbnRleHQoKTtcclxuICAgIGNvbnN0IHRva2VuVmFsdWUgPSB7XHJcbiAgICAgIGlkOiB0aGlzLm5vZGUuaWQsXHJcbiAgICAgIHBhdGg6IHRoaXMubm9kZS5wYXRoLFxyXG4gICAgICBtb2RlOiB0aGlzLm5vZGUubW9kZSxcclxuICAgICAgdHlwZTogdGhpcy5ub2RlLnR5cGUsXHJcbiAgICAgIGNoaWxkcmVuOiB0aGlzLm5vZGUuY2hpbGRyZW4sXHJcbiAgICAgIG9wdGlvbnM6IHRoaXMubWVyZ2VkT3B0aW9ucygpXHJcbiAgICB9O1xyXG4gICAgY29uc3QgdG9rZW4gPSBJbmplY3Rvci5jcmVhdGUoe1xyXG4gICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3IsXHJcbiAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIHByb3ZpZGU6IEFYUF9XSURHRVRfVE9LRU4sXHJcbiAgICAgICAgICB1c2VWYWx1ZTogdG9rZW5WYWx1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgfSk7XHJcbiAgICB2YXIgY29tID0gYXdhaXQgd2lkZ2V0Py5jb21wb25lbnRzW3RoaXMubm9kZS5tb2RlXT8uY29tcG9uZW50KCk7XHJcbiAgICB0aGlzLnBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwoY29tLCBudWxsLCB0b2tlbik7XHJcbiAgICB0aGlzLmlzTG9hZGluZy5zZXQoZmFsc2UpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGFzeW5jIGhhbmRsZUF0dGFjaGVkKHBvcnRhbE91dGxldFJlZjogQ2RrUG9ydGFsT3V0bGV0QXR0YWNoZWRSZWYpIHtcclxuICAgIHBvcnRhbE91dGxldFJlZiA9IHBvcnRhbE91dGxldFJlZiBhcyBDb21wb25lbnRSZWY8QVhQV2lkZ2V0QmFzZT47XHJcbiAgICB0aGlzLmluc3RhbmNlID0gcG9ydGFsT3V0bGV0UmVmLmluc3RhbmNlIGFzIEFYUFdpZGdldEJhc2U7XHJcbiAgICBhd2FpdCB0aGlzLnVwZGF0ZVZhbHVlQmFzZWRPbkZvcm11bGEoKTtcclxuICAgIGF3YWl0IHRoaXMuYXNzaWduVHJpZ2dlcnMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXBwbHlPcHRpb25zKCkge1xyXG4gICAgaWYgKCF0aGlzLmluc3RhbmNlKSByZXR1cm47XHJcbiAgICB0aGlzLmluc3RhbmNlLnNldE9wdGlvbnModGhpcy5tZXJnZWRPcHRpb25zKCkpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjaGVja0Zvcm11bGFGb3JVcGRhdGUoZm9ybXVsYTogc3RyaW5nIHwgdW5kZWZpbmVkLCBwYXRoPzogc3RyaW5nIHwgbnVsbCk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKGZvcm11bGEpIHtcclxuICAgICAgY29uc3QgcmVnZXggPSAvY29udGV4dFxcLmV2YWxcXCgnKFteJ10rKSdcXCkvZztcclxuICAgICAgY29uc3QgbWF0Y2hlcyA9IGZvcm11bGEubWF0Y2gocmVnZXgpO1xyXG4gICAgICBjb25zdCBub2RlcyA9IG1hdGNoZXMgPyBtYXRjaGVzLm1hcCgobWF0Y2g6IGFueSkgPT4gbWF0Y2gubWF0Y2goLycoW14nXSspJy8pWzFdKSA6IFtdO1xyXG4gICAgICByZXR1cm4gbm9kZXMuaW5jbHVkZXMocGF0aCk7XHJcbiAgICB9IGVsc2UgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHJlcHJvY2Vzc0FuZEluaXRpYWxPcHRpb25zKG9iajogYW55LCBwYXRoUHJlZml4OiBzdHJpbmcgPSAnJyk6IHZvaWQge1xyXG4gICAgaWYgKCFvYmopXHJcbiAgICAgIHJldHVybjtcclxuICAgIE9iamVjdC5lbnRyaWVzKG9iaikuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XHJcbiAgICAgIGNvbnN0IGN1cnJlbnRQYXRoID0gcGF0aFByZWZpeCA/IGAke3BhdGhQcmVmaXh9LiR7a2V5fWAgOiBrZXk7XHJcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmIHZhbHVlLmluY2x1ZGVzKCd7eycpKSB7XHJcbiAgICAgICAgLy8gQ2FjaGUgZHluYW1pYyBleHByZXNzaW9uIGZvciBsYXRlciBldmFsdWF0aW9uXHJcbiAgICAgICAgdGhpcy5leHByZXNzaW9uRXZhbHVhdG9ycy5zZXQoY3VycmVudFBhdGgsICgpID0+IHRoaXMuZXZhbHVhdGVFeHByZXNzaW9uKHZhbHVlKSk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAodHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJiB2YWx1ZSAhPT0gbnVsbCAmJiAodmFsdWUuY29uc3RydWN0b3IgPT09IE9iamVjdCB8fCBBcnJheS5pc0FycmF5KHZhbHVlKSkpIHtcclxuICAgICAgICAvLyBSZWN1cnNpdmVseSBoYW5kbGUgbmVzdGVkIG9iamVjdHNcclxuICAgICAgICB0aGlzLnByZXByb2Nlc3NBbmRJbml0aWFsT3B0aW9ucyh2YWx1ZSwgY3VycmVudFBhdGgpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIC8vIEFwcGx5IHN0YXRpYyB2YWx1ZXMgZGlyZWN0bHlcclxuICAgICAgICB0aGlzLm1lcmdlZE9wdGlvbnMudXBkYXRlKChjdXJyZW50T3B0aW9ucykgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIHNldChjdXJyZW50T3B0aW9ucywgY3VycmVudFBhdGgsIHZhbHVlKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBhc3luYyB1cGRhdGVPcHRpb25zQmFzZWRPbkNvbnRleHQoKSB7XHJcbiAgICBjb25zdCB1cGRhdGVzOiBhbnlbXSA9IFtdO1xyXG4gICAgZm9yIChsZXQgW3BhdGgsIGV2YWx1YXRvcl0gb2YgdGhpcy5leHByZXNzaW9uRXZhbHVhdG9ycykge1xyXG4gICAgICBjb25zdCBuZXdWYWx1ZSA9IGF3YWl0IGV2YWx1YXRvcigpO1xyXG4gICAgICB1cGRhdGVzLnB1c2goeyBwYXRoLCBuZXdWYWx1ZSB9KTtcclxuICAgIH1cclxuICAgIC8vIEFwcGx5IHVwZGF0ZXMgdG8gbWVyZ2VkT3B0aW9uc1xyXG4gICAgaWYgKHVwZGF0ZXMubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLm1lcmdlZE9wdGlvbnMudXBkYXRlKG8gPT4ge1xyXG4gICAgICAgIGNvbnN0IHVwZGF0ZWRPcHRpb25zID0geyAuLi5vIH07XHJcbiAgICAgICAgdXBkYXRlcy5mb3JFYWNoKCh7IHBhdGgsIG5ld1ZhbHVlIH0pID0+IHtcclxuICAgICAgICAgIC8vIFNldCB0aGUgbmV3IHZhbHVlIGluIHRoZSB1cGRhdGVkT3B0aW9ucyBvYmplY3QgYnkgcGF0aFxyXG4gICAgICAgICAgc2V0KHVwZGF0ZWRPcHRpb25zLCBwYXRoLCBuZXdWYWx1ZSk7IC8vIEFzc3VtaW5nICdzZXQnIGNhbiBoYW5kbGUgcGF0aHMgbGlrZSAncHJvcGVydHkuc3VicHJvcGVydHknXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIHVwZGF0ZWRPcHRpb25zO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIHJldHVybiB1cGRhdGVzLmxlbmd0aDtcclxuICB9XHJcblxyXG4gIGFzeW5jIHVwZGF0ZVZhbHVlQmFzZWRPbkZvcm11bGEoKSB7XHJcbiAgICBpZiAodGhpcy5ub2RlLmZvcm11bGEpIHtcclxuICAgICAgY29uc3QgdmFsdWUgPSBhd2FpdCB0aGlzLmV2YWx1YXRlRXhwcmVzc2lvbih0aGlzLm5vZGUuZm9ybXVsYSk7XHJcbiAgICAgIHRoaXMuaW5zdGFuY2Uuc2V0VmFsdWUodmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBldmFsdWF0ZUV4cHJlc3Npb24odGVtcGxhdGVFeHByZXNzaW9uOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgdHJ5IHtcclxuICAgICAgLy8gQ2hlY2sgY2FjaGUgZmlyc3QsIGJ1dCBjYWNoZSB0aGUgZnVuY3Rpb24gZm9yIGV2YWx1YXRpb24sIG5vdCB0aGUgZXZhbHVhdGVkIHZhbHVlXHJcbiAgICAgIGlmICghdGhpcy5leHByZXNzaW9uQ2FjaGUuaGFzKHRlbXBsYXRlRXhwcmVzc2lvbikpIHtcclxuICAgICAgICBjb25zdCBleHByZXNzaW9uTWF0Y2ggPSB0ZW1wbGF0ZUV4cHJlc3Npb24ubWF0Y2goL1xce1xce1xccyooLio/KVxccypcXH1cXH0vKTtcclxuICAgICAgICBpZiAoIWV4cHJlc3Npb25NYXRjaCkge1xyXG4gICAgICAgICAgdGhyb3cgRXJyb3IoYE5vIHZhbGlkIGV4cHJlc3Npb24gZm91bmQgaW4gXCIke3RlbXBsYXRlRXhwcmVzc2lvbn1cImApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBleHByZXNzaW9uID0gZXhwcmVzc2lvbk1hdGNoWzFdO1xyXG5cclxuICAgICAgICAvLyBDYWNoZSB0aGUgZXZhbHVhdGlvbiBmdW5jdGlvbiBpbnN0ZWFkIG9mIHRoZSByZXN1bHRcclxuICAgICAgICBjb25zdCBzY29wZSA9IHRoaXMuZ2V0R2xvYmFsU2NvcGUoKTtcclxuICAgICAgICBjb25zdCBldmFsdWF0aW9uRnVuY3Rpb24gPSBhc3luYyAoKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBzYW5kYm94ID0gbmV3IEZ1bmN0aW9uKCdzY29wZScsIGB3aXRoIChzY29wZSkgeyByZXR1cm4gKGFzeW5jIGZ1bmN0aW9uKCkgeyByZXR1cm4gJHtleHByZXNzaW9ufTsgfSkoKTsgfWApO1xyXG4gICAgICAgICAgcmV0dXJuIGF3YWl0IHNhbmRib3goc2NvcGUpO1xyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHRoaXMuZXhwcmVzc2lvbkNhY2hlLnNldCh0ZW1wbGF0ZUV4cHJlc3Npb24sIGV2YWx1YXRpb25GdW5jdGlvbik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIFJldHJpZXZlIHRoZSBmdW5jdGlvbiBmcm9tIHRoZSBjYWNoZSBhbmQgY2FsbCBpdCB0byBldmFsdWF0ZSB0aGUgZXhwcmVzc2lvblxyXG4gICAgICBjb25zdCBldmFsdWF0ZSA9IHRoaXMuZXhwcmVzc2lvbkNhY2hlLmdldCh0ZW1wbGF0ZUV4cHJlc3Npb24pO1xyXG4gICAgICBpZiAoZXZhbHVhdGUpIHtcclxuICAgICAgICAvLyBFbnN1cmUgJ2V2YWx1YXRlJyBpcyBub3QgdW5kZWZpbmVkIGJlZm9yZSBpbnZva2luZ1xyXG4gICAgICAgIHJldHVybiBhd2FpdCBldmFsdWF0ZSgpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRocm93IEVycm9yKGBGYWlsZWQgdG8gcmV0cmlldmUgZXZhbHVhdGlvbiBmdW5jdGlvbiBmb3IgZXhwcmVzc2lvbjogXCIke3RlbXBsYXRlRXhwcmVzc2lvbn1cImApO1xyXG4gICAgICB9XHJcbiAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBldmFsdWF0aW5nIGV4cHJlc3Npb246JywgZXJyb3IpO1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEdsb2JhbFNjb3BlKCkge1xyXG4gICAgaWYgKHRoaXMuc2NvcGUpIHJldHVybiB0aGlzLnNjb3BlO1xyXG4gICAgdGhpcy5zY29wZSA9IHt9O1xyXG4gICAgc2V0KHRoaXMuc2NvcGUsICdjb250ZXh0JywgdGhpcy5nZXRDb250ZXh0U2NvcGUoKSk7XHJcbiAgICBzZXQodGhpcy5zY29wZSwgJ2V2ZW50cycsIHRoaXMuZ2V0RXZlbnRTY29wZSgpKTtcclxuICAgIHNldCh0aGlzLnNjb3BlLCAnd2lkZ2V0JywgdGhpcy5nZXRXaWRnZXRTY29wZSgpKTtcclxuICAgIHNldCh0aGlzLnNjb3BlLCAnbWV0aG9kcycsIHRoaXMuZ2V0RnVuY3Rpb25TY29wZSgpKTtcclxuICAgIHNldCh0aGlzLnNjb3BlLCAndmFycycsIHRoaXMuZ2V0VmFyaWFibGVzU2NvcGUoKSk7XHJcbiAgICByZXR1cm4gdGhpcy5zY29wZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0Q29udGV4dFNjb3BlKCk6IGFueSB7XHJcbiAgICBjb25zdCBzY29wZTogYW55ID0ge307XHJcbiAgICBzZXQoc2NvcGUsICdldmFsJywgKHBhdGg6IHN0cmluZykgPT4gdGhpcy5idWlsZGVyU2VydmljZS5nZXRWYWx1ZShwYXRoKSk7XHJcbiAgICByZXR1cm4gc2NvcGU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEV2ZW50U2NvcGUoKTogYW55IHtcclxuICAgIGNvbnN0IHNjb3BlOiBhbnkgPSB7fTtcclxuICAgIHNldChzY29wZSwgJ2NvbnRleHQnLCAocGF0aDogc3RyaW5nKSA9PlxyXG4gICAgICB0aGlzLmJ1aWxkZXJTZXJ2aWNlLm9uQ2hhbmdlZC5waXBlKFxyXG4gICAgICAgIGZpbHRlcigoYykgPT4gYy5wYXRoID09IHBhdGgpXHJcbiAgICAgIClcclxuICAgICk7XHJcbiAgICByZXR1cm4gc2NvcGU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFdpZGdldFNjb3BlKCk6IGFueSB7XHJcbiAgICBjb25zdCBzY29wZTogYW55ID0ge307XHJcbiAgICBzZXQoc2NvcGUsICdjYWxsJywgKG5hbWU6IHN0cmluZywgLi4uYXJnczogYW55W10pID0+IHtcclxuICAgICAgdGhpcy5pbnN0YW5jZS5jYWxsKG5hbWUsIC4uLmFyZ3MpO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gc2NvcGU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEZ1bmN0aW9uU2NvcGUoKTogYW55IHtcclxuICAgIGNvbnN0IHNjb3BlOiBhbnkgPSB7fTtcclxuICAgIHNldChzY29wZSwgJ3N1bScsICh2YWx1ZXM6IGFueSkgPT4ge1xyXG4gICAgICByZXR1cm4gc3VtKHZhbHVlcyk7XHJcbiAgICB9KTtcclxuICAgIE9iamVjdC5lbnRyaWVzKHRoaXMuYnVpbGRlclNlcnZpY2UuZnVuY3Rpb25zKS5mb3JFYWNoKGkgPT4ge1xyXG4gICAgICBzZXQoc2NvcGUsIGlbMF0sICguLi5hcmdzOiBhbnlbXSkgPT4ge1xyXG4gICAgICAgIHJldHVybiBpWzFdKC4uLmFyZ3MpO1xyXG4gICAgICB9KTtcclxuICAgIH0pXHJcbiAgICByZXR1cm4gc2NvcGU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFZhcmlhYmxlc1Njb3BlKCk6IGFueSB7XHJcbiAgICBjb25zdCBzY29wZTogYW55ID0ge307XHJcbiAgICBzZXQoc2NvcGUsICdldmFsJywgKHBhdGg6IHN0cmluZykgPT4gZ2V0KHRoaXMuYnVpbGRlclNlcnZpY2UudmFyaWFibGVzLCBwYXRoKSk7XHJcbiAgICByZXR1cm4gc2NvcGU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIGFzc2lnblRyaWdnZXJzKCkge1xyXG4gICAgdGhpcy5ub2RlLnRyaWdnZXJzPy5mb3JFYWNoKCh0KSA9PiB7XHJcbiAgICAgIGNvbnN0IGV2ZW50ID0gdGhpcy5ldmFsdWF0ZVRyaWdnZXIodC5ldmVudCk7XHJcbiAgICAgIGV2ZW50Py5waXBlKHRoaXMudW5zdWJzY3JpYmVyLnRha2VVbnRpbERlc3Ryb3kpLnN1YnNjcmliZSgoYykgPT4ge1xyXG4gICAgICAgIHRoaXMuZXZhbHVhdGVBY3Rpb24odC5hY3Rpb24pO1xyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBldmFsdWF0ZVRyaWdnZXIodGVtcGxhdGVFeHByZXNzaW9uOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4gfCBudWxsIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGNvbnN0IGV4cHJlc3Npb25NYXRjaCA9IHRlbXBsYXRlRXhwcmVzc2lvbi5tYXRjaCgvXFx7XFx7XFxzKiguKj8pXFxzKlxcfVxcfS8pO1xyXG4gICAgICBpZiAoIWV4cHJlc3Npb25NYXRjaCkge1xyXG4gICAgICAgIHRocm93IEVycm9yKGBObyB2YWxpZCBleHByZXNzaW9uIGZvdW5kIGluIFwiJHt0ZW1wbGF0ZUV4cHJlc3Npb259XCJgKTtcclxuICAgICAgfVxyXG4gICAgICBjb25zdCBleHByZXNzaW9uID0gZXhwcmVzc2lvbk1hdGNoWzFdO1xyXG5cclxuICAgICAgLy8gQ2FjaGUgdGhlIGV2YWx1YXRpb24gZnVuY3Rpb24gaW5zdGVhZCBvZiB0aGUgcmVzdWx0XHJcbiAgICAgIGNvbnN0IHNjb3BlID0gdGhpcy5nZXRHbG9iYWxTY29wZSgpO1xyXG4gICAgICBjb25zdCBzYW5kYm94ID0gbmV3IEZ1bmN0aW9uKCdzY29wZScsIGB3aXRoIChzY29wZSkgeyByZXR1cm4gKCAgZnVuY3Rpb24oKSB7IHJldHVybiAke2V4cHJlc3Npb259OyB9KSgpOyB9YCk7XHJcbiAgICAgIHJldHVybiBzYW5kYm94KHNjb3BlKTtcclxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGV2YWx1YXRpbmcgZXhwcmVzc2lvbjonLCBlcnJvcik7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBldmFsdWF0ZUFjdGlvbih0ZW1wbGF0ZUV4cHJlc3Npb246IHN0cmluZykge1xyXG4gICAgdHJ5IHtcclxuICAgICAgY29uc3QgZXhwcmVzc2lvbk1hdGNoID0gdGVtcGxhdGVFeHByZXNzaW9uLm1hdGNoKC9cXHtcXHtcXHMqKC4qPylcXHMqXFx9XFx9Lyk7XHJcbiAgICAgIGlmICghZXhwcmVzc2lvbk1hdGNoKSB7XHJcbiAgICAgICAgdGhyb3cgRXJyb3IoYE5vIHZhbGlkIGV4cHJlc3Npb24gZm91bmQgaW4gXCIke3RlbXBsYXRlRXhwcmVzc2lvbn1cImApO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBleHByZXNzaW9uTWF0Y2hbMV07XHJcblxyXG4gICAgICAvLyBDYWNoZSB0aGUgZXZhbHVhdGlvbiBmdW5jdGlvbiBpbnN0ZWFkIG9mIHRoZSByZXN1bHRcclxuICAgICAgY29uc3Qgc2NvcGU6IGFueSA9IHRoaXMuZ2V0R2xvYmFsU2NvcGUoKTtcclxuICAgICAgY29uc3Qgc2FuZGJveCA9IG5ldyBGdW5jdGlvbignc2NvcGUnLCBgd2l0aCAoc2NvcGUpIHsgICR7ZXhwcmVzc2lvbn0gfWApO1xyXG4gICAgICBzYW5kYm94KHNjb3BlKTtcclxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGV2YWx1YXRpbmcgZXhwcmVzc2lvbjonLCBlcnJvcik7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|