@acorex/platform 18.1.4 → 18.1.6
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/common/lib/app/app-startup.service.d.ts +16 -0
- package/common/lib/app/application.types.d.ts +4 -2
- package/common/lib/app/index.d.ts +1 -0
- package/common/lib/common.module.d.ts +4 -1
- package/common/lib/configs/app.config.d.ts +1 -0
- package/common/lib/data/data-provider.types.d.ts +1 -0
- package/common/lib/data/data.types.d.ts +14 -0
- package/common/lib/data/dexie-storage.service.d.ts +7 -5
- package/common/lib/data/entity-data-seeder.d.ts +12 -0
- package/common/lib/data/entity-storage-service.d.ts +66 -0
- package/common/lib/data/index.d.ts +3 -2
- package/common/lib/layout/menu/index.d.ts +2 -0
- package/common/lib/layout/menu/menu.provider.d.ts +15 -0
- package/common/lib/layout/menu/menu.service.d.ts +12 -0
- package/common/lib/layout/menu/menu.types.d.ts +8 -1
- package/common/lib/layout/theme/components/slots/index.d.ts +0 -1
- package/common/lib/layout/theme/store/admin-layout.actions.d.ts +0 -1
- package/common/lib/layout/theme/store/admin-layout.effects.d.ts +1 -2
- package/common/lib/layout/theme/store/admin-layout.reducers.d.ts +0 -5
- package/common/lib/layout/theme/store/admin-layout.selectors.d.ts +0 -1
- package/common/lib/layout/theme/store/admin-layout.state.d.ts +0 -3
- package/common/lib/schema/widgets/common-widget-filter/boolean-widget-filter.component.d.ts +1 -1
- package/common/lib/schema/widgets/dateTime/dateTime-widget-filter.component.d.ts +2 -0
- package/common/lib/schema/widgets/lookup/lookup-widget-edit.component.d.ts +1 -0
- package/common/lib/settings/index.d.ts +1 -1
- package/common/lib/settings/settings.provider.d.ts +7 -0
- package/common/lib/settings/settings.service.d.ts +8 -4
- package/common/lib/settings/settings.types.d.ts +2 -3
- package/common/lib/store/common.actions.d.ts +1 -2
- package/common/lib/store/common.effects.d.ts +5 -3
- package/common/lib/workflows/common.workflow.d.ts +2 -0
- package/core/utils/data-conditioner.d.ts +2 -5
- package/esm2022/common/lib/app/app-startup.service.mjs +40 -0
- package/esm2022/common/lib/app/application.types.mjs +1 -1
- package/esm2022/common/lib/app/index.mjs +2 -1
- package/esm2022/common/lib/common.module.mjs +56 -19
- package/esm2022/common/lib/configs/app.config.mjs +2 -1
- package/esm2022/common/lib/data/data-provider.types.mjs +1 -1
- package/esm2022/common/lib/data/data.types.mjs +2 -0
- package/esm2022/common/lib/data/dexie-storage.service.mjs +98 -4
- package/esm2022/common/lib/data/entity-data-seeder.mjs +25 -0
- package/esm2022/common/lib/data/entity-storage-service.mjs +63 -0
- package/esm2022/common/lib/data/index.mjs +4 -3
- package/esm2022/common/lib/layout/menu/index.mjs +3 -1
- package/esm2022/common/lib/layout/menu/menu.provider.mjs +60 -0
- package/esm2022/common/lib/layout/menu/menu.service.mjs +73 -0
- package/esm2022/common/lib/layout/menu/menu.types.mjs +1 -1
- package/esm2022/common/lib/layout/theme/components/slots/index.mjs +1 -2
- package/esm2022/common/lib/layout/theme/store/admin-layout.actions.mjs +1 -2
- package/esm2022/common/lib/layout/theme/store/admin-layout.effects.mjs +6 -14
- package/esm2022/common/lib/layout/theme/store/admin-layout.reducers.mjs +24 -21
- package/esm2022/common/lib/layout/theme/store/admin-layout.selectors.mjs +1 -2
- package/esm2022/common/lib/layout/theme/store/admin-layout.state.mjs +1 -4
- package/esm2022/common/lib/schema/widgets/avatar/avatar-widget-edit.component.mjs +8 -2
- package/esm2022/common/lib/schema/widgets/common-widget-filter/boolean-widget-filter.component.mjs +15 -9
- package/esm2022/common/lib/schema/widgets/common-widget-filter/number-widget-filter.component.mjs +2 -2
- package/esm2022/common/lib/schema/widgets/common-widget-filter/string-widget-filter.component.mjs +2 -2
- package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-filter.component.mjs +64 -15
- package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-edit.component.mjs +3 -3
- package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-view.component.mjs +3 -3
- package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-edit.component.mjs +2 -2
- package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-filter.component.mjs +44 -16
- package/esm2022/common/lib/schema/widgets/number/number-widget-edit.component.mjs +2 -2
- package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-filter.component.mjs +10 -6
- package/esm2022/common/lib/settings/index.mjs +2 -2
- package/esm2022/common/lib/settings/settings.provider.mjs +35 -0
- package/esm2022/common/lib/settings/settings.service.mjs +40 -7
- package/esm2022/common/lib/settings/settings.types.mjs +1 -1
- package/esm2022/common/lib/store/common.actions.mjs +2 -3
- package/esm2022/common/lib/store/common.effects.mjs +13 -10
- package/esm2022/common/lib/workflows/common.workflow.mjs +7 -4
- package/esm2022/core/utils/data-conditioner.mjs +3 -3
- package/esm2022/layout/builder/lib/builder/builder.service.mjs +11 -6
- package/esm2022/layout/builder/lib/builder/widget-catalog.mjs +2 -1
- package/esm2022/layout/builder/lib/builder/widget-container.component.mjs +12 -8
- package/esm2022/layout/builder/lib/builder/widget-renderer.component.directive.mjs +34 -11
- package/esm2022/layout/builder/lib/builder/widget.types.mjs +21 -19
- package/esm2022/layout/designer/index.mjs +3 -1
- package/esm2022/layout/designer/lib/designer/components/add-widget-button/add-widget-line-button.component.mjs +49 -0
- package/esm2022/layout/designer/lib/designer/components/add-widget-button/add-widget-mini-button.component.mjs +53 -0
- package/esm2022/layout/designer/lib/designer/components/add-widget-button/index.mjs +4 -0
- package/esm2022/layout/designer/lib/designer/components/board/board.component.mjs +11 -3
- package/esm2022/layout/designer/lib/designer/components/drawers/data-sources/data-sources.component.mjs +1 -1
- package/esm2022/layout/designer/lib/designer/components/header-menu/header-menu.component.mjs +66 -5
- package/esm2022/layout/designer/lib/designer/components/size-mode/view-size-toolbar.component.mjs +54 -0
- package/esm2022/layout/designer/lib/designer/components/widget-picker/widget-picker.component.mjs +40 -16
- package/esm2022/layout/designer/lib/designer/designer.component.mjs +18 -57
- package/esm2022/layout/designer/lib/designer/index.mjs +3 -3
- package/esm2022/layout/designer/lib/designer/shared/designer-connector.service.mjs +1 -1
- package/esm2022/layout/designer/lib/designer/shared/designer.service.mjs +28 -8
- package/esm2022/layout/designer/lib/designer/shared/designer.types.mjs +6 -0
- package/esm2022/layout/designer/lib/designer/shared/widget-designer-renderer.directive.mjs +2 -3
- package/esm2022/layout/designer/lib/preview/preview-frame.component.mjs +75 -0
- package/esm2022/layout/designer/lib/preview/preview-viewer.component.mjs +58 -0
- package/esm2022/layout/designer/lib/preview/preview.component.mjs +67 -9
- package/esm2022/layout/designer/lib/property-viewer/widget-property-viewer.component.mjs +3 -3
- package/esm2022/layout/entity/lib/entity-detail-list.viewmodel.mjs +48 -36
- package/esm2022/layout/entity/lib/entity-master-list.viewmodel.mjs +5 -6
- package/esm2022/layout/entity/lib/entity-master-single.viewmodel.mjs +1 -2
- package/esm2022/layout/entity/lib/entity-registery.service.mjs +5 -5
- package/esm2022/layout/entity/lib/entity.config.mjs +28 -2
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.mjs +5 -5
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.component.mjs +45 -9
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.viewmodel.mjs +2 -2
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-view.component.mjs +4 -4
- package/esm2022/layout/entity/lib/widgets/widget-selector/widget-selector-widget.config.mjs +2 -1
- package/esm2022/layout/entity/lib/workflows/create-entity.workflow.mjs +3 -3
- package/esm2022/layout/entity/lib/workflows/delete-entity.workflow.mjs +18 -9
- package/esm2022/layout/entity/lib/workflows/modify-section.workflow.mjs +7 -5
- package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.mjs +3 -3
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/entity-custom-view/entity-custom-view.component.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-conditions.component.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.mjs +3 -3
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/list-view.config.mjs +9 -5
- package/esm2022/layouts/lib/admin/entity-layout/workflows/delete-entity.workflow.mjs +2 -2
- package/esm2022/layouts/lib/admin/entity-layout/workflows/modify-entity.workflow.mjs +5 -3
- package/esm2022/themes/default/lib/default.module.mjs +7 -3
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.mjs +10 -7
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.mjs +27 -10
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component.mjs +3 -3
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.mjs +11 -8
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/overview/entity-single-overview.component.mjs +1 -1
- package/esm2022/themes/default/lib/layouts/root-layout/components/header/header.component.mjs +3 -3
- package/esm2022/themes/default/lib/layouts/root-layout/components/menu/root-menu.component.mjs +39 -0
- package/esm2022/themes/default/lib/layouts/root-layout/index.mjs +2 -1
- package/esm2022/themes/default/lib/layouts/root-layout/root-layout.component.mjs +13 -26
- package/esm2022/themes/default/lib/layouts/root-layout/root-layout.module.mjs +5 -2
- package/esm2022/themes/shared/index.mjs +3 -1
- package/esm2022/themes/shared/lib/comments/comment-list-view.component.mjs +28 -20
- package/esm2022/themes/shared/lib/comments/comments.service.mjs +3 -2
- package/esm2022/themes/shared/lib/comments/comments.type.mjs +1 -1
- package/esm2022/themes/shared/lib/components/theme-slot.component.mjs +114 -0
- package/esm2022/themes/shared/lib/services/theme.service.mjs +86 -0
- package/esm2022/themes/shared/lib/shared.module.mjs +9 -7
- package/esm2022/widgets/lib/widgets/actions/button/button-widget-designer.component.mjs +2 -2
- package/esm2022/widgets/lib/widgets/actions/button/button-widget-view.component.mjs +1 -2
- package/esm2022/widgets/lib/widgets/actions/button/button-widget.config.mjs +3 -2
- package/esm2022/widgets/lib/widgets/advance/gallery/gallery-widget-edit.component.mjs +3 -3
- package/esm2022/widgets/lib/widgets/advance/gallery/gallery-widget-view.component.mjs +3 -3
- package/esm2022/widgets/lib/widgets/advance/qrcode/qrcode-widget-view.component.mjs +4 -4
- package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-edit.component.mjs +1 -1
- package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-view.component.mjs +35 -23
- package/esm2022/widgets/lib/widgets/editors/color/color-box-widget-column.component.mjs +26 -5
- package/esm2022/widgets/lib/widgets/editors/color/color-box-widget-designer.component.mjs +3 -2
- package/esm2022/widgets/lib/widgets/editors/color/color-box-widget-edit.component.mjs +3 -2
- package/esm2022/widgets/lib/widgets/editors/color/color-box-widget-print.component.mjs +3 -3
- package/esm2022/widgets/lib/widgets/editors/color/color-box-widget-view.component.mjs +4 -3
- package/esm2022/widgets/lib/widgets/editors/contact/contact-widget-column.component.mjs +18 -4
- package/esm2022/widgets/lib/widgets/editors/contact/contact-widget-edit.component.mjs +20 -23
- package/esm2022/widgets/lib/widgets/editors/contact/contact-widget.config.mjs +6 -29
- package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget-column.component.mjs +18 -8
- package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget-print.component.mjs +3 -3
- package/esm2022/widgets/lib/widgets/editors/large-text/large-text-widget-edit.component.mjs +1 -1
- package/esm2022/widgets/lib/widgets/editors/large-text/large-text-widget-view.component.mjs +1 -1
- package/esm2022/widgets/lib/widgets/editors/number/number-box-widget-edit.component.mjs +5 -4
- package/esm2022/widgets/lib/widgets/editors/number/number-box-widget-view.component.mjs +5 -5
- package/esm2022/widgets/lib/widgets/editors/rich-text/rich-text-widget-edit.component.mjs +16 -11
- package/esm2022/widgets/lib/widgets/editors/select/select-box-widget-view.component.mjs +15 -19
- package/esm2022/widgets/lib/widgets/editors/select/select-box-widget.config.mjs +3 -2
- package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-edit.component.mjs +3 -3
- package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-print.component.mjs +3 -2
- package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-view.component.mjs +68 -28
- package/esm2022/widgets/lib/widgets/index.mjs +2 -1
- package/esm2022/widgets/lib/widgets/layout/block/block-widget-designer.component.mjs +7 -8
- package/esm2022/widgets/lib/widgets/layout/block/block-widget-view.component.mjs +36 -15
- package/esm2022/widgets/lib/widgets/layout/block/block-widget.config.mjs +3 -2
- package/esm2022/widgets/lib/widgets/layout/form-field/form-field-widget-designer.component.mjs +11 -10
- package/esm2022/widgets/lib/widgets/layout/form-field/form-field-widget-view.component.mjs +3 -3
- package/esm2022/widgets/lib/widgets/layout/form-field/form-field-widget.config.mjs +6 -2
- package/esm2022/widgets/lib/widgets/layout/grid/grid-widget-designer.component.mjs +7 -7
- package/esm2022/widgets/lib/widgets/layout/grid/grid-widget-view.component.mjs +5 -4
- package/esm2022/widgets/lib/widgets/layout/grid-item/grid-item-widget-designer.component.mjs +8 -19
- package/esm2022/widgets/lib/widgets/layout/grid-item/grid-item-widget-view.component.mjs +5 -4
- package/esm2022/widgets/lib/widgets/layout/grid-row/grid-row-widget-designer.component.mjs +2 -1
- package/esm2022/widgets/lib/widgets/layout/grid-row/grid-row-widget-view.component.mjs +5 -4
- package/esm2022/widgets/lib/widgets/layout/page/page-widget-designer.component.mjs +95 -9
- package/esm2022/widgets/lib/widgets/layout/page/page-widget-view.component.mjs +3 -3
- package/esm2022/widgets/lib/widgets/layout/page/page-widget.config.mjs +18 -3
- package/esm2022/widgets/lib/widgets/layout/repeater/repeater-widget-designer.component.mjs +10 -10
- package/esm2022/widgets/lib/widgets/layout/repeater/repeater-widget-edit.component.mjs +56 -17
- package/esm2022/widgets/lib/widgets/layout/template/index.mjs +5 -0
- package/esm2022/widgets/lib/widgets/layout/template/template-widget-designer.component.mjs +70 -0
- package/esm2022/widgets/lib/widgets/layout/template/template-widget-edit.component.mjs +55 -0
- package/esm2022/widgets/lib/widgets/layout/template/template-widget-view.component.mjs +56 -0
- package/esm2022/widgets/lib/widgets/layout/template/template-widget.config.mjs +30 -0
- package/esm2022/widgets/lib/widgets/layout/template/template.provider.mjs +41 -0
- package/esm2022/widgets/lib/widgets/layout/text-block/text-block-widget.config.mjs +3 -2
- package/esm2022/widgets/lib/widgets.module.mjs +4 -1
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/{acorex-platform-common-avatar-widget-edit.component-CfqY7kKi.mjs → acorex-platform-common-avatar-widget-edit.component-WAlG5E_9.mjs} +17 -8
- package/fesm2022/acorex-platform-common-avatar-widget-edit.component-WAlG5E_9.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-avatar-widget-view.component-DXC7INdQ.mjs → acorex-platform-common-avatar-widget-view.component-DRyB3UWf.mjs} +8 -6
- package/fesm2022/acorex-platform-common-avatar-widget-view.component-DRyB3UWf.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-boolean-widget-filter.component-DLGnsXy4.mjs → acorex-platform-common-boolean-widget-filter.component-DY4oTjC-.mjs} +19 -12
- package/fesm2022/acorex-platform-common-boolean-widget-filter.component-DY4oTjC-.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-change-password.component-BBPFxmB6.mjs → acorex-platform-common-change-password.component-Djd4SeNv.mjs} +6 -6
- package/fesm2022/{acorex-platform-common-change-password.component-BBPFxmB6.mjs.map → acorex-platform-common-change-password.component-Djd4SeNv.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-checkbox-widget-column.component-Ch2bdAjo.mjs → acorex-platform-common-checkbox-widget-column.component-NSXcrUwU.mjs} +10 -8
- package/fesm2022/{acorex-platform-common-checkbox-widget-column.component-Ch2bdAjo.mjs.map → acorex-platform-common-checkbox-widget-column.component-NSXcrUwU.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-checkbox-widget-edit.component-DOGMfGby.mjs → acorex-platform-common-checkbox-widget-edit.component-BU7qV5Cm.mjs} +8 -6
- package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-BU7qV5Cm.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-BhGOtblX.mjs → acorex-platform-common-checkbox-widget-view.component-2Du2IzDS.mjs} +10 -8
- package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-BhGOtblX.mjs.map → acorex-platform-common-checkbox-widget-view.component-2Du2IzDS.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-dateTime-widget-column.component-BkUDt0Kj.mjs → acorex-platform-common-dateTime-widget-column.component-Dd7fgwu3.mjs} +8 -6
- package/fesm2022/acorex-platform-common-dateTime-widget-column.component-Dd7fgwu3.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-dateTime-widget-edit.component-DEqsapFH.mjs → acorex-platform-common-dateTime-widget-edit.component-B4AelVJp.mjs} +11 -8
- package/fesm2022/{acorex-platform-common-dateTime-widget-edit.component-DEqsapFH.mjs.map → acorex-platform-common-dateTime-widget-edit.component-B4AelVJp.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-dateTime-widget-filter.component-CqddjYjP.mjs → acorex-platform-common-dateTime-widget-filter.component-Ytm-TwOP.mjs} +68 -18
- package/fesm2022/acorex-platform-common-dateTime-widget-filter.component-Ytm-TwOP.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-dateTime-widget-view.component-BKUPKE9M.mjs → acorex-platform-common-dateTime-widget-view.component-BKdqOPkb.mjs} +8 -6
- package/fesm2022/{acorex-platform-common-dateTime-widget-view.component-BKUPKE9M.mjs.map → acorex-platform-common-dateTime-widget-view.component-BKdqOPkb.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-email-widget-column.component-BOer2nZi.mjs → acorex-platform-common-email-widget-column.component-CDKqwlPD.mjs} +8 -6
- package/fesm2022/acorex-platform-common-email-widget-column.component-CDKqwlPD.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-email-widget-edit.component-BoKsGiEI.mjs → acorex-platform-common-email-widget-edit.component-BT2rJjaW.mjs} +11 -8
- package/fesm2022/acorex-platform-common-email-widget-edit.component-BT2rJjaW.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-email-widget-view.component-BZtK5dMd.mjs → acorex-platform-common-email-widget-view.component-DbhRWpB1.mjs} +8 -6
- package/fesm2022/{acorex-platform-common-email-widget-view.component-BZtK5dMd.mjs.map → acorex-platform-common-email-widget-view.component-DbhRWpB1.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-file-widget-column.component-DpcUmwAT.mjs → acorex-platform-common-file-widget-column.component-8U76QgEQ.mjs} +7 -5
- package/fesm2022/acorex-platform-common-file-widget-column.component-8U76QgEQ.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-file-widget-edit.component-CNLXguLn.mjs → acorex-platform-common-file-widget-edit.component-OFmiYz_5.mjs} +10 -7
- package/fesm2022/{acorex-platform-common-file-widget-edit.component-CNLXguLn.mjs.map → acorex-platform-common-file-widget-edit.component-OFmiYz_5.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-file-widget-filter.component-Dwt-LYWG.mjs → acorex-platform-common-file-widget-filter.component-ZLnpXMXK.mjs} +8 -6
- package/fesm2022/acorex-platform-common-file-widget-filter.component-ZLnpXMXK.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-file-widget-view.component-CjDhjHQR.mjs → acorex-platform-common-file-widget-view.component-BcrM4XrO.mjs} +10 -7
- package/fesm2022/{acorex-platform-common-file-widget-view.component-CjDhjHQR.mjs.map → acorex-platform-common-file-widget-view.component-BcrM4XrO.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-CzKFKaPH.mjs → acorex-platform-common-gallery-widget-edit.component-pBBjrjDP.mjs} +14 -11
- package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-CzKFKaPH.mjs.map → acorex-platform-common-gallery-widget-edit.component-pBBjrjDP.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-gallery-widget-filter.component-B-KxKtY4.mjs → acorex-platform-common-gallery-widget-filter.component-Cp7t9ovC.mjs} +8 -6
- package/fesm2022/acorex-platform-common-gallery-widget-filter.component-Cp7t9ovC.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-gallery-widget-view.component-ca-JB8qW.mjs → acorex-platform-common-gallery-widget-view.component-CPS-h3cq.mjs} +13 -10
- package/fesm2022/{acorex-platform-common-gallery-widget-view.component-ca-JB8qW.mjs.map → acorex-platform-common-gallery-widget-view.component-CPS-h3cq.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-largetext-widget-edit.component-DD7S5j12.mjs → acorex-platform-common-largetext-widget-edit.component-DA6r3rVA.mjs} +8 -6
- package/fesm2022/acorex-platform-common-largetext-widget-edit.component-DA6r3rVA.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-lookup-widget-column.component-BEZNLQZi.mjs → acorex-platform-common-lookup-widget-column.component-Cxv1yZvE.mjs} +8 -6
- package/fesm2022/acorex-platform-common-lookup-widget-column.component-Cxv1yZvE.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-lookup-widget-edit.component-D50jPeKP.mjs → acorex-platform-common-lookup-widget-edit.component-CUtGoAGX.mjs} +9 -7
- package/fesm2022/acorex-platform-common-lookup-widget-edit.component-CUtGoAGX.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-lookup-widget-filter.component-CZHDDnR3.mjs → acorex-platform-common-lookup-widget-filter.component-DJZqB3vj.mjs} +47 -17
- package/fesm2022/acorex-platform-common-lookup-widget-filter.component-DJZqB3vj.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-lookup-widget-view.component-CQCvJxgi.mjs → acorex-platform-common-lookup-widget-view.component-CghJK1C4.mjs} +8 -6
- package/fesm2022/acorex-platform-common-lookup-widget-view.component-CghJK1C4.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-map-widget-edit.component-OanYRQ3B.mjs → acorex-platform-common-map-widget-edit.component-oSb3kVMc.mjs} +8 -6
- package/fesm2022/acorex-platform-common-map-widget-edit.component-oSb3kVMc.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-map-widget-view.component-BWdndMYJ.mjs → acorex-platform-common-map-widget-view.component-BrYwr914.mjs} +8 -6
- package/fesm2022/{acorex-platform-common-map-widget-view.component-BWdndMYJ.mjs.map → acorex-platform-common-map-widget-view.component-BrYwr914.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-messenger-widget-column.component-BHP6R3OI.mjs → acorex-platform-common-messenger-widget-column.component-DIJAffxy.mjs} +8 -6
- package/fesm2022/acorex-platform-common-messenger-widget-column.component-DIJAffxy.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-messenger-widget-edit.component-B7ycb6tX.mjs → acorex-platform-common-messenger-widget-edit.component-DpGvbM4a.mjs} +10 -7
- package/fesm2022/{acorex-platform-common-messenger-widget-edit.component-B7ycb6tX.mjs.map → acorex-platform-common-messenger-widget-edit.component-DpGvbM4a.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-messenger-widget-view.component-Dz5X-FS5.mjs → acorex-platform-common-messenger-widget-view.component-CeuDEI-j.mjs} +8 -6
- package/fesm2022/{acorex-platform-common-messenger-widget-view.component-Dz5X-FS5.mjs.map → acorex-platform-common-messenger-widget-view.component-CeuDEI-j.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-number-widget-edit.component-XSWI6466.mjs → acorex-platform-common-number-widget-edit.component-B1YGwr60.mjs} +11 -9
- package/fesm2022/acorex-platform-common-number-widget-edit.component-B1YGwr60.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-number-widget-filter.component-BOT9wPJ5.mjs → acorex-platform-common-number-widget-filter.component-BmmgPy1w.mjs} +12 -9
- package/fesm2022/acorex-platform-common-number-widget-filter.component-BmmgPy1w.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-number-widget-view.component-CP5aboLU.mjs → acorex-platform-common-number-widget-view.component-bqylVHOz.mjs} +8 -6
- package/fesm2022/acorex-platform-common-number-widget-view.component-bqylVHOz.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-password-widget-column.component-CGxTbd_S.mjs → acorex-platform-common-password-widget-column.component-DVdZh7s4.mjs} +8 -6
- package/fesm2022/{acorex-platform-common-password-widget-column.component-CGxTbd_S.mjs.map → acorex-platform-common-password-widget-column.component-DVdZh7s4.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-password-widget-edit.component-CHQ_Kp4t.mjs → acorex-platform-common-password-widget-edit.component-OjHwMT5d.mjs} +12 -10
- package/fesm2022/acorex-platform-common-password-widget-edit.component-OjHwMT5d.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-password-widget-view.component-BQ9jlt6g.mjs → acorex-platform-common-password-widget-view.component-BeSk1OgU.mjs} +9 -6
- package/fesm2022/{acorex-platform-common-password-widget-view.component-BQ9jlt6g.mjs.map → acorex-platform-common-password-widget-view.component-BeSk1OgU.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-phone-widget-column.component-RJp6wHul.mjs → acorex-platform-common-phone-widget-column.component-DOfzGKBi.mjs} +8 -6
- package/fesm2022/acorex-platform-common-phone-widget-column.component-DOfzGKBi.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-phone-widget-edit.component-BB5wTbjd.mjs → acorex-platform-common-phone-widget-edit.component-BJ-iEyLP.mjs} +10 -8
- package/fesm2022/{acorex-platform-common-phone-widget-edit.component-BB5wTbjd.mjs.map → acorex-platform-common-phone-widget-edit.component-BJ-iEyLP.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-phone-widget-view.component-SIzFWfjV.mjs → acorex-platform-common-phone-widget-view.component-DW4AHCE6.mjs} +8 -6
- package/fesm2022/{acorex-platform-common-phone-widget-view.component-SIzFWfjV.mjs.map → acorex-platform-common-phone-widget-view.component-DW4AHCE6.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-rich-text-widget-column.component-Ced0WqvI.mjs → acorex-platform-common-rich-text-widget-column.component-2zZBG6Ze.mjs} +8 -6
- package/fesm2022/{acorex-platform-common-rich-text-widget-column.component-Ced0WqvI.mjs.map → acorex-platform-common-rich-text-widget-column.component-2zZBG6Ze.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-rich-text-widget-edit.component-Do3YcmKg.mjs → acorex-platform-common-rich-text-widget-edit.component-BJveJgHZ.mjs} +8 -5
- package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-BJveJgHZ.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-rich-text-widget-view.component-BIRyPRtw.mjs → acorex-platform-common-rich-text-widget-view.component-CiViWpBX.mjs} +8 -6
- package/fesm2022/acorex-platform-common-rich-text-widget-view.component-CiViWpBX.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-selection-list-widget-column.component-DxeK2RPc.mjs → acorex-platform-common-selection-list-widget-column.component-D9lsVFgo.mjs} +8 -6
- package/fesm2022/acorex-platform-common-selection-list-widget-column.component-D9lsVFgo.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-selection-list-widget-edit.component-CBLEeILz.mjs → acorex-platform-common-selection-list-widget-edit.component-ocEwyUP7.mjs} +10 -8
- package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-ocEwyUP7.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-selection-list-widget-filter.component-B01t7mso.mjs → acorex-platform-common-selection-list-widget-filter.component-CS0f_jCx.mjs} +16 -12
- package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-CS0f_jCx.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-selection-list-widget-view.component-QJMp11dd.mjs → acorex-platform-common-selection-list-widget-view.component-C65lbpo_.mjs} +8 -6
- package/fesm2022/acorex-platform-common-selection-list-widget-view.component-C65lbpo_.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-signature-pad-widget-edit.component-BQiY7RIp.mjs → acorex-platform-common-signature-pad-widget-edit.component-DbfQSGxm.mjs} +10 -7
- package/fesm2022/{acorex-platform-common-signature-pad-widget-edit.component-BQiY7RIp.mjs.map → acorex-platform-common-signature-pad-widget-edit.component-DbfQSGxm.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-signature-pad-widget-view.component-CEhRqgEn.mjs → acorex-platform-common-signature-pad-widget-view.component-CDY3JdP-.mjs} +8 -6
- package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-CDY3JdP-.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-string-widget-filter.component--L4PeRCB.mjs → acorex-platform-common-string-widget-filter.component-BW2ehdOx.mjs} +12 -9
- package/fesm2022/acorex-platform-common-string-widget-filter.component-BW2ehdOx.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-text-widget-column.component-ytX4OqZX.mjs → acorex-platform-common-text-widget-column.component-bhx0QWAX.mjs} +8 -6
- package/fesm2022/acorex-platform-common-text-widget-column.component-bhx0QWAX.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-text-widget-edit.component-CN7OyTfJ.mjs → acorex-platform-common-text-widget-edit.component-Cb1k59hs.mjs} +10 -7
- package/fesm2022/acorex-platform-common-text-widget-edit.component-Cb1k59hs.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-text-widget-view.component-B-R4-5Ra.mjs → acorex-platform-common-text-widget-view.component-CGwY9c2O.mjs} +8 -6
- package/fesm2022/{acorex-platform-common-text-widget-view.component-B-R4-5Ra.mjs.map → acorex-platform-common-text-widget-view.component-CGwY9c2O.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-toggle-widget-column.component-B5NFRPgX.mjs → acorex-platform-common-toggle-widget-column.component-BxAwa7jw.mjs} +10 -8
- package/fesm2022/{acorex-platform-common-toggle-widget-column.component-B5NFRPgX.mjs.map → acorex-platform-common-toggle-widget-column.component-BxAwa7jw.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-toggle-widget-edit.component-CLWHwf8V.mjs → acorex-platform-common-toggle-widget-edit.component-CT2fRAKm.mjs} +8 -5
- package/fesm2022/acorex-platform-common-toggle-widget-edit.component-CT2fRAKm.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-toggle-widget-view.component-Di2S7vub.mjs → acorex-platform-common-toggle-widget-view.component-9tquFHhE.mjs} +10 -8
- package/fesm2022/{acorex-platform-common-toggle-widget-view.component-Di2S7vub.mjs.map → acorex-platform-common-toggle-widget-view.component-9tquFHhE.mjs.map} +1 -1
- package/fesm2022/acorex-platform-common.mjs +652 -302
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +2 -2
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +71 -36
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-designer.mjs +476 -72
- package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +149 -68
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layouts-entity-create-view.component-CPGbLM4C.mjs.map +1 -1
- package/fesm2022/acorex-platform-layouts-entity-import-view.component-CZpEcVi9.mjs.map +1 -1
- package/fesm2022/acorex-platform-layouts-entity-modify-view.component-Bt4MLEou.mjs.map +1 -1
- package/fesm2022/acorex-platform-layouts.mjs +16 -11
- 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-Q8eTfAVx.mjs → acorex-platform-themes-default-entity-master-create-view.component-i6vjEhti.mjs} +3 -3
- package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-Q8eTfAVx.mjs.map → acorex-platform-themes-default-entity-master-create-view.component-i6vjEhti.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-fZ6QEYcd.mjs → acorex-platform-themes-default-entity-master-list-view.component-BGKWaCth.mjs} +37 -20
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BGKWaCth.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-BijYXMme.mjs → acorex-platform-themes-default-entity-master-modify-view.component-B3phYOIw.mjs} +5 -5
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-B3phYOIw.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-Bnrabotu.mjs → acorex-platform-themes-default-entity-master-single-view.component-DyZHE0o-.mjs} +16 -13
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DyZHE0o-.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-error-401.component-D5QQ2HAv.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-default-error-404.component-DSY_D3Iq.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-default-error-offline.component-B6wSkMdd.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-default.mjs +83 -56
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-shared.mjs +225 -27
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/fesm2022/{acorex-platform-widgets-button-widget-designer.component-B9bfVuC4.mjs → acorex-platform-widgets-button-widget-designer.component-M_JuDPbt.mjs} +2 -2
- package/fesm2022/acorex-platform-widgets-button-widget-designer.component-M_JuDPbt.mjs.map +1 -0
- package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-j1jG8pCr.mjs.map +1 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-DzGg-uFi.mjs.map +1 -1
- package/fesm2022/{acorex-platform-widgets-checkbox-widget-view.component-tPk6Gylo.mjs → acorex-platform-widgets-checkbox-widget-view.component-CDA7Jwov.mjs} +35 -23
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-CDA7Jwov.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-color-box-widget-designer.component-Bb3aXCNZ.mjs → acorex-platform-widgets-color-box-widget-designer.component-DIvi0BtT.mjs} +3 -2
- package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-DIvi0BtT.mjs.map +1 -0
- package/fesm2022/acorex-platform-widgets-contact-widget-filter.component-GTwK51nJ.mjs.map +1 -1
- package/fesm2022/acorex-platform-widgets-page-widget-designer.component-BL_EAwUs.mjs +153 -0
- package/fesm2022/acorex-platform-widgets-page-widget-designer.component-BL_EAwUs.mjs.map +1 -0
- package/fesm2022/acorex-platform-widgets-rich-text-popup.component-RCdFIz45.mjs.map +1 -1
- package/fesm2022/acorex-platform-widgets-template-widget-edit.component-gvAh-gH1.mjs +96 -0
- package/fesm2022/acorex-platform-widgets-template-widget-edit.component-gvAh-gH1.mjs.map +1 -0
- package/fesm2022/acorex-platform-widgets-text-block-widget-designer.component-Bi9hlpvB.mjs.map +1 -1
- package/fesm2022/acorex-platform-widgets.mjs +563 -235
- package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
- package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
- package/layout/builder/lib/builder/builder.service.d.ts +1 -1
- package/layout/builder/lib/builder/widget-container.component.d.ts +3 -2
- package/layout/builder/lib/builder/widget-renderer.component.directive.d.ts +5 -1
- package/layout/builder/lib/builder/widget.types.d.ts +8 -5
- package/layout/designer/index.d.ts +2 -0
- package/layout/designer/lib/designer/components/add-widget-button/add-widget-line-button.component.d.ts +8 -0
- package/layout/designer/lib/designer/components/add-widget-button/add-widget-mini-button.component.d.ts +9 -0
- package/layout/designer/lib/designer/components/add-widget-button/index.d.ts +3 -0
- package/layout/designer/lib/designer/components/board/board.component.d.ts +2 -0
- package/layout/designer/lib/designer/components/drawers/data-sources/data-sources.component.d.ts +1 -1
- package/layout/designer/lib/designer/components/header-menu/header-menu.component.d.ts +1 -0
- package/layout/designer/lib/designer/components/size-mode/view-size-toolbar.component.d.ts +6 -0
- package/layout/designer/lib/designer/components/widget-picker/widget-picker.component.d.ts +4 -2
- package/layout/designer/lib/designer/designer.component.d.ts +1 -1
- package/layout/designer/lib/designer/index.d.ts +2 -2
- package/layout/designer/lib/designer/shared/designer-connector.service.d.ts +1 -1
- package/layout/designer/lib/designer/shared/designer.service.d.ts +8 -3
- package/layout/designer/lib/preview/preview-frame.component.d.ts +8 -0
- package/layout/designer/lib/preview/preview-viewer.component.d.ts +14 -0
- package/layout/designer/lib/preview/preview.component.d.ts +17 -3
- package/layout/entity/lib/entity-detail-list.viewmodel.d.ts +4 -4
- package/layout/entity/lib/entity-master-create.viewmodel.d.ts +1 -1
- package/layout/entity/lib/entity-master-list.viewmodel.d.ts +2 -1
- package/layout/entity/lib/entity-master-single.viewmodel.d.ts +1 -5
- package/layout/entity/lib/entity-master-update.viewmodel.d.ts +1 -1
- package/layout/entity/lib/entity-registery.service.d.ts +1 -1
- package/layout/entity/lib/entity.config.d.ts +7 -0
- package/layout/entity/lib/entity.viewmodel.d.ts +1 -1
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +2 -1
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-view.component.d.ts +2 -1
- package/layout/entity/lib/workflows/delete-entity.workflow.d.ts +1 -0
- package/layout/entity/lib/workflows/modify-section.workflow.d.ts +1 -0
- package/layouts/lib/admin/entity-layout/workflows/modify-entity.workflow.d.ts +1 -0
- package/package.json +13 -13
- package/themes/default/lib/default.module.d.ts +2 -1
- package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.d.ts +3 -1
- package/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.d.ts +1 -1
- package/themes/default/lib/layouts/root-layout/components/menu/root-menu.component.d.ts +22 -0
- package/themes/default/lib/layouts/root-layout/index.d.ts +1 -0
- package/themes/default/lib/layouts/root-layout/root-layout.component.d.ts +1 -4
- package/themes/default/lib/layouts/root-layout/root-layout.module.d.ts +17 -16
- package/themes/shared/index.d.ts +2 -0
- package/themes/shared/lib/comments/comment-list-view.component.d.ts +16 -11
- package/themes/shared/lib/comments/comments.service.d.ts +4 -7
- package/themes/shared/lib/comments/comments.type.d.ts +24 -20
- package/themes/shared/lib/components/theme-slot.component.d.ts +23 -0
- package/themes/shared/lib/services/theme.service.d.ts +21 -0
- package/themes/shared/lib/shared.module.d.ts +5 -4
- package/widgets/lib/widgets/advance/map/map-box-widget-view.component.d.ts +1 -1
- package/widgets/lib/widgets/advance/qrcode/qrcode-widget-view.component.d.ts +1 -1
- package/widgets/lib/widgets/advance/signature/signature-pad-widget-view.component.d.ts +1 -1
- package/widgets/lib/widgets/editors/color/color-box-widget-column.component.d.ts +3 -0
- package/widgets/lib/widgets/editors/color/color-box-widget-designer.component.d.ts +1 -1
- package/widgets/lib/widgets/editors/color/color-box-widget-edit.component.d.ts +1 -1
- package/widgets/lib/widgets/editors/color/color-box-widget-view.component.d.ts +1 -1
- package/widgets/lib/widgets/editors/contact/contact-widget-column.component.d.ts +2 -0
- package/widgets/lib/widgets/editors/contact/contact-widget-edit.component.d.ts +1 -1
- package/widgets/lib/widgets/editors/contact/contact-widget-view.component.d.ts +1 -1
- package/widgets/lib/widgets/editors/date-time/date-time-box-widget-column.component.d.ts +3 -0
- package/widgets/lib/widgets/editors/number/number-box-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/editors/number/number-box-widget-view.component.d.ts +1 -1
- package/widgets/lib/widgets/editors/password/password-box-widget-view.component.d.ts +1 -1
- package/widgets/lib/widgets/editors/rich-text/rich-text-widget-edit.component.d.ts +3 -2
- package/widgets/lib/widgets/editors/toggle/toggle-widget-edit.component.d.ts +1 -1
- package/widgets/lib/widgets/editors/toggle/toggle-widget-print.component.d.ts +1 -1
- package/widgets/lib/widgets/editors/toggle/toggle-widget-view.component.d.ts +1 -1
- package/widgets/lib/widgets/index.d.ts +1 -0
- package/widgets/lib/widgets/layout/block/block-widget-view.component.d.ts +4 -2
- package/widgets/lib/widgets/layout/grid/grid-widget-view.component.d.ts +1 -1
- package/widgets/lib/widgets/layout/grid-item/grid-item-widget-designer.component.d.ts +0 -2
- package/widgets/lib/widgets/layout/grid-item/grid-item-widget-view.component.d.ts +1 -1
- package/widgets/lib/widgets/layout/grid-row/grid-row-widget-view.component.d.ts +1 -1
- package/widgets/lib/widgets/layout/page/page-widget-designer.component.d.ts +11 -1
- package/widgets/lib/widgets/layout/repeater/repeater-widget-edit.component.d.ts +4 -3
- package/widgets/lib/widgets/layout/template/index.d.ts +4 -0
- package/widgets/lib/widgets/layout/template/template-widget-designer.component.d.ts +11 -0
- package/widgets/lib/widgets/layout/template/template-widget-edit.component.d.ts +10 -0
- package/widgets/lib/widgets/layout/template/template-widget-view.component.d.ts +10 -0
- package/widgets/lib/widgets/layout/template/template-widget.config.d.ts +7 -0
- package/widgets/lib/widgets/layout/template/template.provider.d.ts +21 -0
- package/common/lib/data/entity-data-provider.d.ts +0 -14
- package/common/lib/data/storage-service.d.ts +0 -22
- package/common/lib/layout/theme/components/slots/theme-slot.component.d.ts +0 -8
- package/common/lib/settings/settings.loader.d.ts +0 -8
- package/esm2022/common/lib/data/entity-data-provider.mjs +0 -26
- package/esm2022/common/lib/data/storage-service.mjs +0 -5
- package/esm2022/common/lib/layout/theme/components/slots/theme-slot.component.mjs +0 -48
- package/esm2022/common/lib/settings/settings.loader.mjs +0 -17
- package/esm2022/layout/designer/lib/designer/shared/designer.typs.mjs +0 -6
- package/fesm2022/acorex-platform-common-avatar-widget-edit.component-CfqY7kKi.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-avatar-widget-view.component-DXC7INdQ.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-boolean-widget-filter.component-DLGnsXy4.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-DOGMfGby.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-dateTime-widget-column.component-BkUDt0Kj.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-dateTime-widget-filter.component-CqddjYjP.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-email-widget-column.component-BOer2nZi.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-email-widget-edit.component-BoKsGiEI.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-file-widget-column.component-DpcUmwAT.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-file-widget-filter.component-Dwt-LYWG.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-gallery-widget-filter.component-B-KxKtY4.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-largetext-widget-edit.component-DD7S5j12.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-lookup-widget-column.component-BEZNLQZi.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-lookup-widget-edit.component-D50jPeKP.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-lookup-widget-filter.component-CZHDDnR3.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-lookup-widget-view.component-CQCvJxgi.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-map-widget-edit.component-OanYRQ3B.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-messenger-widget-column.component-BHP6R3OI.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-number-widget-edit.component-XSWI6466.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-number-widget-filter.component-BOT9wPJ5.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-number-widget-view.component-CP5aboLU.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-password-widget-edit.component-CHQ_Kp4t.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-phone-widget-column.component-RJp6wHul.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-Do3YcmKg.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-rich-text-widget-view.component-BIRyPRtw.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-selection-list-widget-column.component-DxeK2RPc.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-CBLEeILz.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-B01t7mso.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-selection-list-widget-view.component-QJMp11dd.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-CEhRqgEn.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-string-widget-filter.component--L4PeRCB.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-text-widget-column.component-ytX4OqZX.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-text-widget-edit.component-CN7OyTfJ.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-toggle-widget-edit.component-CLWHwf8V.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-designer-preview.component-CaRHf4x_.mjs +0 -23
- package/fesm2022/acorex-platform-layout-designer-preview.component-CaRHf4x_.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-fZ6QEYcd.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BijYXMme.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-Bnrabotu.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-button-widget-designer.component-B9bfVuC4.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-tPk6Gylo.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-Bb3aXCNZ.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-page-widget-designer.component-6BMZ0qRw.mjs +0 -67
- package/fesm2022/acorex-platform-widgets-page-widget-designer.component-6BMZ0qRw.mjs.map +0 -1
- /package/layout/designer/lib/designer/shared/{designer.typs.d.ts → designer.types.d.ts} +0 -0
package/esm2022/layout/designer/lib/designer/components/header-menu/header-menu.component.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AXDecoratorModule } from '@acorex/components/decorators';
|
|
2
2
|
import { AXMenuModule } from '@acorex/components/menu';
|
|
3
3
|
import { CommonModule } from '@angular/common';
|
|
4
|
-
import { Component, inject } from '@angular/core';
|
|
4
|
+
import { Component, HostListener, inject } from '@angular/core';
|
|
5
5
|
import { AXPDesignerService } from '../../shared/designer.service';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "@acorex/components/decorators";
|
|
@@ -10,8 +10,66 @@ export class AXPDesignerHeaderMenuComponent {
|
|
|
10
10
|
constructor() {
|
|
11
11
|
this.service = inject(AXPDesignerService);
|
|
12
12
|
}
|
|
13
|
+
handleKeyboardEvent(event) {
|
|
14
|
+
if (event.shiftKey && event.target == document.body) {
|
|
15
|
+
switch (event.code) {
|
|
16
|
+
case 'KeyN':
|
|
17
|
+
event.preventDefault();
|
|
18
|
+
this.service.new();
|
|
19
|
+
break;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
//
|
|
23
|
+
if (event.ctrlKey && event.target == document.body) {
|
|
24
|
+
console.log(event.code);
|
|
25
|
+
switch (event.code) {
|
|
26
|
+
case 'KeyR':
|
|
27
|
+
event.preventDefault();
|
|
28
|
+
if (event.shiftKey) {
|
|
29
|
+
this.service.openPreviewWindow();
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
this.service.openPreviewDialog();
|
|
33
|
+
}
|
|
34
|
+
break;
|
|
35
|
+
case 'KeyZ':
|
|
36
|
+
event.preventDefault();
|
|
37
|
+
this.service.undo();
|
|
38
|
+
break;
|
|
39
|
+
case 'KeyY':
|
|
40
|
+
event.preventDefault();
|
|
41
|
+
this.service.redo();
|
|
42
|
+
break;
|
|
43
|
+
case 'KeyC':
|
|
44
|
+
if (this.service.canCutCopy()) {
|
|
45
|
+
event.preventDefault();
|
|
46
|
+
this.service.copy();
|
|
47
|
+
}
|
|
48
|
+
break;
|
|
49
|
+
case 'KeyD':
|
|
50
|
+
if (this.service.canCutCopy()) {
|
|
51
|
+
event.preventDefault();
|
|
52
|
+
this.service.clone();
|
|
53
|
+
}
|
|
54
|
+
break;
|
|
55
|
+
case 'KeyX':
|
|
56
|
+
if (this.service.canCutCopy()) {
|
|
57
|
+
// ;
|
|
58
|
+
event.preventDefault();
|
|
59
|
+
this.service.cut();
|
|
60
|
+
}
|
|
61
|
+
break;
|
|
62
|
+
case 'KeyV':
|
|
63
|
+
if (this.service.canPaste()) {
|
|
64
|
+
event.preventDefault();
|
|
65
|
+
this.service.paste();
|
|
66
|
+
}
|
|
67
|
+
break;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
13
71
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerHeaderMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
14
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPDesignerHeaderMenuComponent, isStandalone: true, selector: "axp-designer-header-menu", ngImport: i0, template: "<ax-menu [openOn]=\"'hover'\">\n
|
|
72
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPDesignerHeaderMenuComponent, isStandalone: true, selector: "axp-designer-header-menu", host: { listeners: { "document:keydown": "handleKeyboardEvent($event)" } }, ngImport: i0, template: "<ax-menu [openOn]=\"'hover'\" [hasArrow]=\"false\">\n <ax-menu-item>\n <ax-text>Home</ax-text>\n <ax-menu-item (onClick)=\"service.new()\">\n <ax-text>New</ax-text>\n <ax-suffix>\n <ax-text> Shift+N </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-divider></ax-divider>\n <ax-menu-item>\n <ax-text>Export</ax-text>\n <ax-menu-item (onClick)=\"service.downloadJson()\">\n <ax-text>Download JSON</ax-text>\n </ax-menu-item>\n </ax-menu-item>\n <ax-menu-item>\n <ax-text>Import</ax-text>\n <ax-menu-item (onClick)=\"service.importJSon()\">\n <ax-text>Import JSON</ax-text>\n </ax-menu-item>\n </ax-menu-item>\n </ax-menu-item>\n <ax-menu-item>\n <ax-text>Edit</ax-text>\n <ax-menu-item [disabled]=\"!service.canUndo()\" (onClick)=\"service.undo()\">\n <ax-text>Undo</ax-text>\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-rotate-left\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text> Ctrl+Z </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-menu-item [disabled]=\"!service.canRedo()\" (onClick)=\"service.redo()\">\n <ax-text>Redo</ax-text>\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-rotate-right\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text> Ctrl+Y </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-divider></ax-divider>\n <ax-menu-item [disabled]=\"!service.canCutCopy()\" (onClick)=\"service.cut()\">\n <ax-text>Cut</ax-text>\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-cut\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text> Ctrl+X </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-menu-item [disabled]=\"!service.canCutCopy()\" (onClick)=\"service.copy()\">\n <ax-text>Copy</ax-text>\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-copy\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text> Ctrl+C </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-menu-item [disabled]=\"!service.canPaste()\" (onClick)=\"service.paste()\">\n <ax-text>Paste</ax-text>\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-paste\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text>Ctrl+V</ax-text>\n </ax-suffix>\n </ax-menu-item>\n </ax-menu-item>\n <ax-menu-item>\n <ax-text>Run</ax-text>\n <ax-menu-item (onClick)=\"service.openPreviewDialog()\">\n <ax-text>Preview</ax-text>\n <ax-prefix>\n </ax-prefix>\n <ax-suffix>\n <ax-text>Ctrl+R</ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-menu-item (onClick)=\"service.openPreviewWindow()\">\n <ax-text>Preview in seperate window</ax-text>\n <ax-prefix> </ax-prefix>\n <ax-suffix>\n <ax-text>Ctrl+Shift+F5</ax-text>\n </ax-suffix>\n </ax-menu-item>\n </ax-menu-item>\n <ax-menu-item>\n <ax-text>Help</ax-text>\n <ax-menu-item>\n <ax-text>About</ax-text>\n </ax-menu-item>\n </ax-menu-item>\n</ax-menu>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXMenuModule }, { kind: "component", type: i2.AXMenuItemComponent, selector: "ax-menu-item", inputs: ["name", "data", "disabled", "color"], outputs: ["onClick"] }, { kind: "component", type: i2.AXMenuComponent, selector: "ax-menu", inputs: ["orientation", "openOn", "closeOn", "items", "hasArrow"], outputs: ["onItemClick"] }] }); }
|
|
15
73
|
}
|
|
16
74
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerHeaderMenuComponent, decorators: [{
|
|
17
75
|
type: Component,
|
|
@@ -19,6 +77,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
19
77
|
CommonModule,
|
|
20
78
|
AXDecoratorModule,
|
|
21
79
|
AXMenuModule,
|
|
22
|
-
], selector: 'axp-designer-header-menu', template: "<ax-menu [openOn]=\"'hover'\">\n
|
|
23
|
-
}]
|
|
24
|
-
|
|
80
|
+
], selector: 'axp-designer-header-menu', template: "<ax-menu [openOn]=\"'hover'\" [hasArrow]=\"false\">\n <ax-menu-item>\n <ax-text>Home</ax-text>\n <ax-menu-item (onClick)=\"service.new()\">\n <ax-text>New</ax-text>\n <ax-suffix>\n <ax-text> Shift+N </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-divider></ax-divider>\n <ax-menu-item>\n <ax-text>Export</ax-text>\n <ax-menu-item (onClick)=\"service.downloadJson()\">\n <ax-text>Download JSON</ax-text>\n </ax-menu-item>\n </ax-menu-item>\n <ax-menu-item>\n <ax-text>Import</ax-text>\n <ax-menu-item (onClick)=\"service.importJSon()\">\n <ax-text>Import JSON</ax-text>\n </ax-menu-item>\n </ax-menu-item>\n </ax-menu-item>\n <ax-menu-item>\n <ax-text>Edit</ax-text>\n <ax-menu-item [disabled]=\"!service.canUndo()\" (onClick)=\"service.undo()\">\n <ax-text>Undo</ax-text>\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-rotate-left\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text> Ctrl+Z </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-menu-item [disabled]=\"!service.canRedo()\" (onClick)=\"service.redo()\">\n <ax-text>Redo</ax-text>\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-rotate-right\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text> Ctrl+Y </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-divider></ax-divider>\n <ax-menu-item [disabled]=\"!service.canCutCopy()\" (onClick)=\"service.cut()\">\n <ax-text>Cut</ax-text>\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-cut\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text> Ctrl+X </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-menu-item [disabled]=\"!service.canCutCopy()\" (onClick)=\"service.copy()\">\n <ax-text>Copy</ax-text>\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-copy\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text> Ctrl+C </ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-menu-item [disabled]=\"!service.canPaste()\" (onClick)=\"service.paste()\">\n <ax-text>Paste</ax-text>\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-solid fa-paste\"></i>\n </ax-icon>\n </ax-prefix>\n <ax-suffix>\n <ax-text>Ctrl+V</ax-text>\n </ax-suffix>\n </ax-menu-item>\n </ax-menu-item>\n <ax-menu-item>\n <ax-text>Run</ax-text>\n <ax-menu-item (onClick)=\"service.openPreviewDialog()\">\n <ax-text>Preview</ax-text>\n <ax-prefix>\n </ax-prefix>\n <ax-suffix>\n <ax-text>Ctrl+R</ax-text>\n </ax-suffix>\n </ax-menu-item>\n <ax-menu-item (onClick)=\"service.openPreviewWindow()\">\n <ax-text>Preview in seperate window</ax-text>\n <ax-prefix> </ax-prefix>\n <ax-suffix>\n <ax-text>Ctrl+Shift+F5</ax-text>\n </ax-suffix>\n </ax-menu-item>\n </ax-menu-item>\n <ax-menu-item>\n <ax-text>Help</ax-text>\n <ax-menu-item>\n <ax-text>About</ax-text>\n </ax-menu-item>\n </ax-menu-item>\n</ax-menu>" }]
|
|
81
|
+
}], propDecorators: { handleKeyboardEvent: [{
|
|
82
|
+
type: HostListener,
|
|
83
|
+
args: ['document:keydown', ['$event']]
|
|
84
|
+
}] } });
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLW1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9sYXlvdXQvZGVzaWduZXIvc3JjL2xpYi9kZXNpZ25lci9jb21wb25lbnRzL2hlYWRlci1tZW51L2hlYWRlci1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vbGF5b3V0L2Rlc2lnbmVyL3NyYy9saWIvZGVzaWduZXIvY29tcG9uZW50cy9oZWFkZXItbWVudS9oZWFkZXItbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7OztBQWFuRSxNQUFNLE9BQU8sOEJBQThCO0lBWDNDO1FBWWMsWUFBTyxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0tBOERsRDtJQTNEVyxtQkFBbUIsQ0FBQyxLQUFvQjtRQUM1QyxJQUFJLEtBQUssQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDbEQsUUFBUSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2pCLEtBQUssTUFBTTtvQkFDUCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7b0JBQ3ZCLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7b0JBQ25CLE1BQU07WUFDZCxDQUFDO1FBQ0wsQ0FBQztRQUNELEVBQUU7UUFDRixJQUFJLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDakQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUE7WUFDdkIsUUFBUSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2pCLEtBQUssTUFBTTtvQkFDUCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7b0JBQ3ZCLElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO3dCQUNqQixJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLENBQUM7b0JBQ3JDLENBQUM7eUJBQ0ksQ0FBQzt3QkFDRixJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLENBQUM7b0JBQ3JDLENBQUM7b0JBRUQsTUFBTTtnQkFDVixLQUFLLE1BQU07b0JBQ1AsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO29CQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO29CQUNwQixNQUFNO2dCQUNWLEtBQUssTUFBTTtvQkFDUCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7b0JBQ3ZCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ3BCLE1BQU07Z0JBQ1YsS0FBSyxNQUFNO29CQUNQLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDO3dCQUM1QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7d0JBQ3ZCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ3hCLENBQUM7b0JBQ0QsTUFBTTtnQkFDVixLQUFLLE1BQU07b0JBQ1AsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUM7d0JBQzVCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQzt3QkFDdkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztvQkFDekIsQ0FBQztvQkFDRCxNQUFNO2dCQUNWLEtBQUssTUFBTTtvQkFDUCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQzt3QkFDNUIsSUFBSTt3QkFDSixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7d0JBQ3ZCLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7b0JBQ3ZCLENBQUM7b0JBQ0QsTUFBTTtnQkFDVixLQUFLLE1BQU07b0JBQ1AsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7d0JBQzFCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQzt3QkFDdkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztvQkFDekIsQ0FBQztvQkFDRCxNQUFNO1lBQ2QsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDOzhHQTlEUSw4QkFBOEI7a0dBQTlCLDhCQUE4QixnS0NqQjNDLHFvR0EwR1UsMkNEakdGLFlBQVksOEJBQ1osaUJBQWlCLHVWQUNqQixZQUFZOzsyRkFNUCw4QkFBOEI7a0JBWDFDLFNBQVM7aUNBQ00sSUFBSSxXQUNQO3dCQUNMLFlBQVk7d0JBQ1osaUJBQWlCO3dCQUNqQixZQUFZO3FCQUNmLFlBQ1MsMEJBQTBCOzhCQVE1QixtQkFBbUI7c0JBRDFCLFlBQVk7dUJBQUMsa0JBQWtCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYTWVudU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9tZW51JztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgaW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYUERlc2lnbmVyU2VydmljZSB9IGZyb20gJy4uLy4uL3NoYXJlZC9kZXNpZ25lci5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgQVhEZWNvcmF0b3JNb2R1bGUsXG4gICAgICAgIEFYTWVudU1vZHVsZSxcbiAgICBdLFxuICAgIHNlbGVjdG9yOiAnYXhwLWRlc2lnbmVyLWhlYWRlci1tZW51JyxcbiAgICB0ZW1wbGF0ZVVybDogJ2hlYWRlci1tZW51LmNvbXBvbmVudC5odG1sJ1xufSlcblxuZXhwb3J0IGNsYXNzIEFYUERlc2lnbmVySGVhZGVyTWVudUNvbXBvbmVudCB7XG4gICAgcHJvdGVjdGVkIHNlcnZpY2UgPSBpbmplY3QoQVhQRGVzaWduZXJTZXJ2aWNlKTtcblxuICAgIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24nLCBbJyRldmVudCddKVxuICAgIHByaXZhdGUgaGFuZGxlS2V5Ym9hcmRFdmVudChldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICBpZiAoZXZlbnQuc2hpZnRLZXkgJiYgZXZlbnQudGFyZ2V0ID09IGRvY3VtZW50LmJvZHkpIHtcbiAgICAgICAgICAgIHN3aXRjaCAoZXZlbnQuY29kZSkge1xuICAgICAgICAgICAgICAgIGNhc2UgJ0tleU4nOlxuICAgICAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlcnZpY2UubmV3KCk7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vXG4gICAgICAgIGlmIChldmVudC5jdHJsS2V5ICYmIGV2ZW50LnRhcmdldCA9PSBkb2N1bWVudC5ib2R5KSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhldmVudC5jb2RlKVxuICAgICAgICAgICAgc3dpdGNoIChldmVudC5jb2RlKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAnS2V5Uic6XG4gICAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChldmVudC5zaGlmdEtleSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXJ2aWNlLm9wZW5QcmV2aWV3V2luZG93KCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlcnZpY2Uub3BlblByZXZpZXdEaWFsb2coKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ0tleVonOlxuICAgICAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlcnZpY2UudW5kbygpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdLZXlZJzpcbiAgICAgICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXJ2aWNlLnJlZG8oKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnS2V5Qyc6XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLnNlcnZpY2UuY2FuQ3V0Q29weSgpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXJ2aWNlLmNvcHkoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdLZXlEJzpcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuc2VydmljZS5jYW5DdXRDb3B5KCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlcnZpY2UuY2xvbmUoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdLZXlYJzpcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuc2VydmljZS5jYW5DdXRDb3B5KCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlcnZpY2UuY3V0KCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnS2V5Vic6XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLnNlcnZpY2UuY2FuUGFzdGUoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VydmljZS5wYXN0ZSgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIjxheC1tZW51IFtvcGVuT25dPVwiJ2hvdmVyJ1wiIFtoYXNBcnJvd109XCJmYWxzZVwiPlxuICA8YXgtbWVudS1pdGVtPlxuICAgIDxheC10ZXh0PkhvbWU8L2F4LXRleHQ+XG4gICAgPGF4LW1lbnUtaXRlbSAob25DbGljayk9XCJzZXJ2aWNlLm5ldygpXCI+XG4gICAgICA8YXgtdGV4dD5OZXc8L2F4LXRleHQ+XG4gICAgICA8YXgtc3VmZml4PlxuICAgICAgICA8YXgtdGV4dD4gU2hpZnQrTiA8L2F4LXRleHQ+XG4gICAgICA8L2F4LXN1ZmZpeD5cbiAgICA8L2F4LW1lbnUtaXRlbT5cbiAgICA8YXgtZGl2aWRlcj48L2F4LWRpdmlkZXI+XG4gICAgPGF4LW1lbnUtaXRlbT5cbiAgICAgIDxheC10ZXh0PkV4cG9ydDwvYXgtdGV4dD5cbiAgICAgIDxheC1tZW51LWl0ZW0gKG9uQ2xpY2spPVwic2VydmljZS5kb3dubG9hZEpzb24oKVwiPlxuICAgICAgICA8YXgtdGV4dD5Eb3dubG9hZCBKU09OPC9heC10ZXh0PlxuICAgICAgPC9heC1tZW51LWl0ZW0+XG4gICAgPC9heC1tZW51LWl0ZW0+XG4gICAgPGF4LW1lbnUtaXRlbT5cbiAgICAgIDxheC10ZXh0PkltcG9ydDwvYXgtdGV4dD5cbiAgICAgIDxheC1tZW51LWl0ZW0gKG9uQ2xpY2spPVwic2VydmljZS5pbXBvcnRKU29uKClcIj5cbiAgICAgICAgPGF4LXRleHQ+SW1wb3J0IEpTT048L2F4LXRleHQ+XG4gICAgICA8L2F4LW1lbnUtaXRlbT5cbiAgICA8L2F4LW1lbnUtaXRlbT5cbiAgPC9heC1tZW51LWl0ZW0+XG4gIDxheC1tZW51LWl0ZW0+XG4gICAgPGF4LXRleHQ+RWRpdDwvYXgtdGV4dD5cbiAgICA8YXgtbWVudS1pdGVtIFtkaXNhYmxlZF09XCIhc2VydmljZS5jYW5VbmRvKClcIiAob25DbGljayk9XCJzZXJ2aWNlLnVuZG8oKVwiPlxuICAgICAgPGF4LXRleHQ+VW5kbzwvYXgtdGV4dD5cbiAgICAgIDxheC1wcmVmaXg+XG4gICAgICAgIDxheC1pY29uPlxuICAgICAgICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtcm90YXRlLWxlZnRcIj48L2k+XG4gICAgICAgIDwvYXgtaWNvbj5cbiAgICAgIDwvYXgtcHJlZml4PlxuICAgICAgPGF4LXN1ZmZpeD5cbiAgICAgICAgPGF4LXRleHQ+IEN0cmwrWiA8L2F4LXRleHQ+XG4gICAgICA8L2F4LXN1ZmZpeD5cbiAgICA8L2F4LW1lbnUtaXRlbT5cbiAgICA8YXgtbWVudS1pdGVtIFtkaXNhYmxlZF09XCIhc2VydmljZS5jYW5SZWRvKClcIiAob25DbGljayk9XCJzZXJ2aWNlLnJlZG8oKVwiPlxuICAgICAgPGF4LXRleHQ+UmVkbzwvYXgtdGV4dD5cbiAgICAgIDxheC1wcmVmaXg+XG4gICAgICAgIDxheC1pY29uPlxuICAgICAgICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtcm90YXRlLXJpZ2h0XCI+PC9pPlxuICAgICAgICA8L2F4LWljb24+XG4gICAgICA8L2F4LXByZWZpeD5cbiAgICAgIDxheC1zdWZmaXg+XG4gICAgICAgIDxheC10ZXh0PiBDdHJsK1kgPC9heC10ZXh0PlxuICAgICAgPC9heC1zdWZmaXg+XG4gICAgPC9heC1tZW51LWl0ZW0+XG4gICAgPGF4LWRpdmlkZXI+PC9heC1kaXZpZGVyPlxuICAgIDxheC1tZW51LWl0ZW0gW2Rpc2FibGVkXT1cIiFzZXJ2aWNlLmNhbkN1dENvcHkoKVwiIChvbkNsaWNrKT1cInNlcnZpY2UuY3V0KClcIj5cbiAgICAgIDxheC10ZXh0PkN1dDwvYXgtdGV4dD5cbiAgICAgIDxheC1wcmVmaXg+XG4gICAgICAgIDxheC1pY29uPlxuICAgICAgICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtY3V0XCI+PC9pPlxuICAgICAgICA8L2F4LWljb24+XG4gICAgICA8L2F4LXByZWZpeD5cbiAgICAgIDxheC1zdWZmaXg+XG4gICAgICAgIDxheC10ZXh0PiBDdHJsK1ggPC9heC10ZXh0PlxuICAgICAgPC9heC1zdWZmaXg+XG4gICAgPC9heC1tZW51LWl0ZW0+XG4gICAgPGF4LW1lbnUtaXRlbSBbZGlzYWJsZWRdPVwiIXNlcnZpY2UuY2FuQ3V0Q29weSgpXCIgKG9uQ2xpY2spPVwic2VydmljZS5jb3B5KClcIj5cbiAgICAgIDxheC10ZXh0PkNvcHk8L2F4LXRleHQ+XG4gICAgICA8YXgtcHJlZml4PlxuICAgICAgICA8YXgtaWNvbj5cbiAgICAgICAgICA8aSBjbGFzcz1cImZhLXNvbGlkIGZhLWNvcHlcIj48L2k+XG4gICAgICAgIDwvYXgtaWNvbj5cbiAgICAgIDwvYXgtcHJlZml4PlxuICAgICAgPGF4LXN1ZmZpeD5cbiAgICAgICAgPGF4LXRleHQ+IEN0cmwrQyA8L2F4LXRleHQ+XG4gICAgICA8L2F4LXN1ZmZpeD5cbiAgICA8L2F4LW1lbnUtaXRlbT5cbiAgICA8YXgtbWVudS1pdGVtIFtkaXNhYmxlZF09XCIhc2VydmljZS5jYW5QYXN0ZSgpXCIgKG9uQ2xpY2spPVwic2VydmljZS5wYXN0ZSgpXCI+XG4gICAgICA8YXgtdGV4dD5QYXN0ZTwvYXgtdGV4dD5cbiAgICAgIDxheC1wcmVmaXg+XG4gICAgICAgIDxheC1pY29uPlxuICAgICAgICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtcGFzdGVcIj48L2k+XG4gICAgICAgIDwvYXgtaWNvbj5cbiAgICAgIDwvYXgtcHJlZml4PlxuICAgICAgPGF4LXN1ZmZpeD5cbiAgICAgICAgPGF4LXRleHQ+Q3RybCtWPC9heC10ZXh0PlxuICAgICAgPC9heC1zdWZmaXg+XG4gICAgPC9heC1tZW51LWl0ZW0+XG4gIDwvYXgtbWVudS1pdGVtPlxuICA8YXgtbWVudS1pdGVtPlxuICAgIDxheC10ZXh0PlJ1bjwvYXgtdGV4dD5cbiAgICA8YXgtbWVudS1pdGVtIChvbkNsaWNrKT1cInNlcnZpY2Uub3BlblByZXZpZXdEaWFsb2coKVwiPlxuICAgICAgPGF4LXRleHQ+UHJldmlldzwvYXgtdGV4dD5cbiAgICAgIDxheC1wcmVmaXg+XG4gICAgICA8L2F4LXByZWZpeD5cbiAgICAgIDxheC1zdWZmaXg+XG4gICAgICAgIDxheC10ZXh0PkN0cmwrUjwvYXgtdGV4dD5cbiAgICAgIDwvYXgtc3VmZml4PlxuICAgIDwvYXgtbWVudS1pdGVtPlxuICAgIDxheC1tZW51LWl0ZW0gKG9uQ2xpY2spPVwic2VydmljZS5vcGVuUHJldmlld1dpbmRvdygpXCI+XG4gICAgICA8YXgtdGV4dD5QcmV2aWV3IGluIHNlcGVyYXRlIHdpbmRvdzwvYXgtdGV4dD5cbiAgICAgIDxheC1wcmVmaXg+IDwvYXgtcHJlZml4PlxuICAgICAgPGF4LXN1ZmZpeD5cbiAgICAgICAgPGF4LXRleHQ+Q3RybCtTaGlmdCtGNTwvYXgtdGV4dD5cbiAgICAgIDwvYXgtc3VmZml4PlxuICAgIDwvYXgtbWVudS1pdGVtPlxuICA8L2F4LW1lbnUtaXRlbT5cbiAgPGF4LW1lbnUtaXRlbT5cbiAgICA8YXgtdGV4dD5IZWxwPC9heC10ZXh0PlxuICAgIDxheC1tZW51LWl0ZW0+XG4gICAgICA8YXgtdGV4dD5BYm91dDwvYXgtdGV4dD5cbiAgICA8L2F4LW1lbnUtaXRlbT5cbiAgPC9heC1tZW51LWl0ZW0+XG48L2F4LW1lbnU+Il19
|
package/esm2022/layout/designer/lib/designer/components/size-mode/view-size-toolbar.component.mjs
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { AXDecoratorModule } from '@acorex/components/decorators';
|
|
2
|
+
import { AXMenuModule } from '@acorex/components/menu';
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
4
|
+
import { Component, model } from '@angular/core';
|
|
5
|
+
import { AXButtonGroupModule } from '@acorex/components/button-group';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@acorex/components/button-group";
|
|
8
|
+
import * as i2 from "@acorex/components/decorators";
|
|
9
|
+
export class AXPDesignerViewSizeToolbarComponent {
|
|
10
|
+
constructor() {
|
|
11
|
+
this.size = model('xl');
|
|
12
|
+
}
|
|
13
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerViewSizeToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
14
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.0", type: AXPDesignerViewSizeToolbarComponent, isStandalone: true, selector: "axp-designer-view-sizes", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { size: "sizeChange" }, ngImport: i0, template: `
|
|
15
|
+
<ax-button-group color="ghost" look="twotone" [selection]="'single'">
|
|
16
|
+
<ax-button-group-item [selected]="size() == 'xl'" [data]="'xl'" (onClick)="size.set('xl')">
|
|
17
|
+
<ax-icon class="fa-light fa-desktop"></ax-icon>
|
|
18
|
+
</ax-button-group-item>
|
|
19
|
+
<ax-button-group-item [selected]="size() == 'lg'" [data]="'lg'" (onClick)="size.set('lg')">
|
|
20
|
+
<ax-icon class="fa-light fa-tablet"></ax-icon>
|
|
21
|
+
</ax-button-group-item>
|
|
22
|
+
<ax-button-group-item [selected]="size() == 'sm'" [data]="'sm'" (onClick)="size.set('sm')">
|
|
23
|
+
<ax-icon class="fa-light fa-mobile"></ax-icon>
|
|
24
|
+
</ax-button-group-item>
|
|
25
|
+
</ax-button-group>
|
|
26
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonGroupModule }, { kind: "component", type: i1.AXButtonGroupComponent, selector: "ax-button-group", inputs: ["disabled", "color", "look", "selection"], outputs: ["onBlur", "onFocus", "lookChange", "colorChange", "disabledChange", "onClick", "selectionChange"] }, { kind: "component", type: i1.AXButtonGroupItemComponent, selector: "ax-button-group-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "ngmodule", type: AXMenuModule }] }); }
|
|
27
|
+
}
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerViewSizeToolbarComponent, decorators: [{
|
|
29
|
+
type: Component,
|
|
30
|
+
args: [{
|
|
31
|
+
selector: 'axp-designer-view-sizes',
|
|
32
|
+
standalone: true,
|
|
33
|
+
imports: [
|
|
34
|
+
CommonModule,
|
|
35
|
+
AXButtonGroupModule,
|
|
36
|
+
AXDecoratorModule,
|
|
37
|
+
AXMenuModule,
|
|
38
|
+
],
|
|
39
|
+
template: `
|
|
40
|
+
<ax-button-group color="ghost" look="twotone" [selection]="'single'">
|
|
41
|
+
<ax-button-group-item [selected]="size() == 'xl'" [data]="'xl'" (onClick)="size.set('xl')">
|
|
42
|
+
<ax-icon class="fa-light fa-desktop"></ax-icon>
|
|
43
|
+
</ax-button-group-item>
|
|
44
|
+
<ax-button-group-item [selected]="size() == 'lg'" [data]="'lg'" (onClick)="size.set('lg')">
|
|
45
|
+
<ax-icon class="fa-light fa-tablet"></ax-icon>
|
|
46
|
+
</ax-button-group-item>
|
|
47
|
+
<ax-button-group-item [selected]="size() == 'sm'" [data]="'sm'" (onClick)="size.set('sm')">
|
|
48
|
+
<ax-icon class="fa-light fa-mobile"></ax-icon>
|
|
49
|
+
</ax-button-group-item>
|
|
50
|
+
</ax-button-group>
|
|
51
|
+
`
|
|
52
|
+
}]
|
|
53
|
+
}] });
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy1zaXplLXRvb2xiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9sYXlvdXQvZGVzaWduZXIvc3JjL2xpYi9kZXNpZ25lci9jb21wb25lbnRzL3NpemUtbW9kZS92aWV3LXNpemUtdG9vbGJhci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7OztBQTBCdEUsTUFBTSxPQUFPLG1DQUFtQztJQXhCaEQ7UUEwQlcsU0FBSSxHQUFHLEtBQUssQ0FBUyxJQUFJLENBQUMsQ0FBQztLQUVyQzs4R0FKWSxtQ0FBbUM7a0dBQW5DLG1DQUFtQyxxUEFmbEM7Ozs7Ozs7Ozs7OztLQVlULDJEQWpCRyxZQUFZLDhCQUNaLG1CQUFtQiw2ZkFDbkIsaUJBQWlCLCtIQUNqQixZQUFZOzsyRkFpQlAsbUNBQW1DO2tCQXhCL0MsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUseUJBQXlCO29CQUNuQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixpQkFBaUI7d0JBQ2pCLFlBQVk7cUJBQ2Y7b0JBQ0QsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7S0FZVDtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhNZW51TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL21lbnUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBtb2RlbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhCdXR0b25Hcm91cE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24tZ3JvdXAnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2F4cC1kZXNpZ25lci12aWV3LXNpemVzJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBBWEJ1dHRvbkdyb3VwTW9kdWxlLFxuICAgICAgICBBWERlY29yYXRvck1vZHVsZSxcbiAgICAgICAgQVhNZW51TW9kdWxlLFxuICAgIF0sXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPGF4LWJ1dHRvbi1ncm91cCBjb2xvcj1cImdob3N0XCIgbG9vaz1cInR3b3RvbmVcIiBbc2VsZWN0aW9uXT1cIidzaW5nbGUnXCI+XG4gICAgICAgICAgICA8YXgtYnV0dG9uLWdyb3VwLWl0ZW0gW3NlbGVjdGVkXT1cInNpemUoKSA9PSAneGwnXCIgW2RhdGFdPVwiJ3hsJ1wiIChvbkNsaWNrKT1cInNpemUuc2V0KCd4bCcpXCI+XG4gICAgICAgICAgICAgIDxheC1pY29uIGNsYXNzPVwiZmEtbGlnaHQgZmEtZGVza3RvcFwiPjwvYXgtaWNvbj5cbiAgICAgICAgICAgIDwvYXgtYnV0dG9uLWdyb3VwLWl0ZW0+XG4gICAgICAgICAgICA8YXgtYnV0dG9uLWdyb3VwLWl0ZW0gW3NlbGVjdGVkXT1cInNpemUoKSA9PSAnbGcnXCIgW2RhdGFdPVwiJ2xnJ1wiIChvbkNsaWNrKT1cInNpemUuc2V0KCdsZycpXCI+XG4gICAgICAgICAgICAgIDxheC1pY29uIGNsYXNzPVwiZmEtbGlnaHQgZmEtdGFibGV0XCI+PC9heC1pY29uPlxuICAgICAgICAgICAgPC9heC1idXR0b24tZ3JvdXAtaXRlbT5cbiAgICAgICAgICAgIDxheC1idXR0b24tZ3JvdXAtaXRlbSBbc2VsZWN0ZWRdPVwic2l6ZSgpID09ICdzbSdcIiBbZGF0YV09XCInc20nXCIgKG9uQ2xpY2spPVwic2l6ZS5zZXQoJ3NtJylcIj5cbiAgICAgICAgICAgICAgPGF4LWljb24gY2xhc3M9XCJmYS1saWdodCBmYS1tb2JpbGVcIj48L2F4LWljb24+XG4gICAgICAgICAgICA8L2F4LWJ1dHRvbi1ncm91cC1pdGVtPlxuICAgICAgICA8L2F4LWJ1dHRvbi1ncm91cD5cbiAgICBgXG59KVxuXG5leHBvcnQgY2xhc3MgQVhQRGVzaWduZXJWaWV3U2l6ZVRvb2xiYXJDb21wb25lbnQge1xuXG4gICAgcHVibGljIHNpemUgPSBtb2RlbDxzdHJpbmc+KCd4bCcpO1xuXG59Il19
|
package/esm2022/layout/designer/lib/designer/components/widget-picker/widget-picker.component.mjs
CHANGED
|
@@ -4,10 +4,10 @@ import { AXDecoratorModule } from '@acorex/components/decorators';
|
|
|
4
4
|
import { AXBasePageComponent } from '@acorex/components/page';
|
|
5
5
|
import { AXSearchBoxModule } from '@acorex/components/search-box';
|
|
6
6
|
import { AXTabsModule } from '@acorex/components/tabs';
|
|
7
|
-
import { AXPStickyDirective } from '@acorex/platform/common';
|
|
7
|
+
import { AXPSettingsService, AXPStickyDirective } from '@acorex/platform/common';
|
|
8
8
|
import { AXP_WIDGETS_GROUPS } from '@acorex/platform/layout/builder';
|
|
9
9
|
import { CommonModule } from '@angular/common';
|
|
10
|
-
import { Component, computed, model, signal, ViewEncapsulation } from '@angular/core';
|
|
10
|
+
import { Component, computed, inject, model, signal, ViewEncapsulation } from '@angular/core';
|
|
11
11
|
import { FormsModule } from '@angular/forms';
|
|
12
12
|
import { orderBy } from 'lodash-es';
|
|
13
13
|
import * as i0 from "@angular/core";
|
|
@@ -21,6 +21,8 @@ import * as i7 from "@acorex/components/search-box";
|
|
|
21
21
|
export class AXPDesignerWidgetPickerComponent extends AXBasePageComponent {
|
|
22
22
|
constructor() {
|
|
23
23
|
super(...arguments);
|
|
24
|
+
this.settingService = inject(AXPSettingsService);
|
|
25
|
+
this.pinnedSettingKey = 'forms:widgets:picker:pinned';
|
|
24
26
|
this.searchTerm = model('');
|
|
25
27
|
// Signals
|
|
26
28
|
this.widgets = [];
|
|
@@ -31,23 +33,24 @@ export class AXPDesignerWidgetPickerComponent extends AXBasePageComponent {
|
|
|
31
33
|
this.orderedList = computed(() => {
|
|
32
34
|
const search = this.searchTerm().toLowerCase();
|
|
33
35
|
const selectedTabName = this.selectedTab().name;
|
|
34
|
-
return orderBy(this.displayWidgets().filter(w => {
|
|
36
|
+
return orderBy(this.displayWidgets().filter((w) => {
|
|
35
37
|
const matchesTab = selectedTabName === 'all' || w.group.name === selectedTabName;
|
|
36
38
|
const matchesSearch = !search || w.title.toLowerCase().includes(search) || w.description?.toLowerCase().includes(search);
|
|
37
39
|
return matchesTab && matchesSearch;
|
|
38
40
|
}), ['pinned', 'title'], ['desc', 'asc']);
|
|
39
41
|
});
|
|
40
42
|
// Pinned and regular lists
|
|
41
|
-
this.pinnedList = computed(() => this.orderedList().filter(c => c.pinned));
|
|
42
|
-
this.regularList = computed(() => this.orderedList().filter(c => !c.pinned));
|
|
43
|
+
this.pinnedList = computed(() => this.orderedList().filter((c) => c.pinned));
|
|
44
|
+
this.regularList = computed(() => this.orderedList().filter((c) => !c.pinned));
|
|
43
45
|
// Tabs for the widget groups
|
|
44
|
-
this.tabs = orderBy([{ name: 'all', title: 'All', order: 0 }, ...AXP_WIDGETS_GROUPS], c => c.order);
|
|
46
|
+
this.tabs = orderBy([{ name: 'all', title: 'All', order: 0 }, ...AXP_WIDGETS_GROUPS], (c) => c.order);
|
|
45
47
|
this.currentTabIndex = signal(0);
|
|
46
48
|
this.selectedTab = computed(() => this.tabs[this.currentTabIndex()]);
|
|
47
49
|
}
|
|
48
|
-
ngOnInit() {
|
|
50
|
+
async ngOnInit() {
|
|
49
51
|
super.ngOnInit();
|
|
50
|
-
this.
|
|
52
|
+
const pinnedWidgets = (await this.settingService.get(this.pinnedSettingKey)) || [];
|
|
53
|
+
this.displayWidgets.set(this.widgets.map((c) => ({ ...c, pinned: pinnedWidgets.includes(c.name) })));
|
|
51
54
|
}
|
|
52
55
|
handleTabChange(event) {
|
|
53
56
|
const indx = event.index;
|
|
@@ -56,13 +59,12 @@ export class AXPDesignerWidgetPickerComponent extends AXBasePageComponent {
|
|
|
56
59
|
}
|
|
57
60
|
}
|
|
58
61
|
handleClick(event, widget) {
|
|
59
|
-
//this.close({ widgets: [widget] });
|
|
60
62
|
if (event.ctrlKey) {
|
|
61
63
|
const currentSelection = this.selectedWidgets();
|
|
62
|
-
const isAlreadySelected = currentSelection.some(w => w === widget);
|
|
64
|
+
const isAlreadySelected = currentSelection.some((w) => w === widget);
|
|
63
65
|
if (isAlreadySelected) {
|
|
64
66
|
// Deselect widget if already selected
|
|
65
|
-
this.selectedWidgets.set(currentSelection.filter(w => w !== widget));
|
|
67
|
+
this.selectedWidgets.set(currentSelection.filter((w) => w !== widget));
|
|
66
68
|
}
|
|
67
69
|
else {
|
|
68
70
|
// Add widget to selection
|
|
@@ -71,13 +73,26 @@ export class AXPDesignerWidgetPickerComponent extends AXBasePageComponent {
|
|
|
71
73
|
}
|
|
72
74
|
else {
|
|
73
75
|
// If CTRL is not pressed, select only the clicked widget
|
|
74
|
-
//this.selectedWidgets.set([widget]);
|
|
75
76
|
this.close({ widgets: [widget] });
|
|
76
77
|
}
|
|
77
78
|
}
|
|
78
|
-
handlePinClick(e, widget) {
|
|
79
|
+
async handlePinClick(e, widget) {
|
|
79
80
|
e.stopPropagation();
|
|
80
81
|
widget.pinned = !widget.pinned;
|
|
82
|
+
// Get the current list of pinned widgets from settings
|
|
83
|
+
let pinnedWidgets = (await this.settingService.get(this.pinnedSettingKey)) || [];
|
|
84
|
+
// Update the list of pinned widgets based on the pinned status
|
|
85
|
+
if (widget.pinned) {
|
|
86
|
+
if (!pinnedWidgets.includes(widget.name)) {
|
|
87
|
+
pinnedWidgets.push(widget.name);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
pinnedWidgets = pinnedWidgets.filter((name) => name !== widget.name);
|
|
92
|
+
}
|
|
93
|
+
// Save the updated list of pinned widgets
|
|
94
|
+
await this.settingService.set(this.pinnedSettingKey, pinnedWidgets);
|
|
95
|
+
// Trigger a re-render of the widgets
|
|
81
96
|
this.displayWidgets.set([...this.displayWidgets()]);
|
|
82
97
|
}
|
|
83
98
|
// Check if a widget is selected
|
|
@@ -88,10 +103,19 @@ export class AXPDesignerWidgetPickerComponent extends AXBasePageComponent {
|
|
|
88
103
|
this.close({ widgets: this.selectedWidgets() });
|
|
89
104
|
}
|
|
90
105
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerWidgetPickerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
91
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPDesignerWidgetPickerComponent, isStandalone: true, selector: "ng-component", inputs: { searchTerm: { classPropertyName: "searchTerm", publicName: "searchTerm", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { searchTerm: "searchTermChange" }, usesInheritance: true, ngImport: i0, template: "<div class=\"ax-flex ax-flex-col lg:ax-h-[75vh]\">\n <div>\n <ax-tabs [look]=\"'with-line'\" (onActiveTabChanged)=\"handleTabChange($event)\">\n @for(w of tabs;track $index)\n {\n <ax-tab-item [text]=\"w.title\" [key]=\"$index.toString()\"\n [active]=\"currentTabIndex() === $index\"></ax-tab-item>\n }\n </ax-tabs>\n </div>\n <div class=\"ax-overflow-auto\" #content>\n <div class=\"ax-p-4 ax-sticky ax-top-0 ax-z-10 ax-transition-all \" #sticky=\"axpSticky\"\n [axpSticky]=\"'ax-bg-surface ax-shadow-xl'\" [stickyParent]=\"content\" [stickyOffset]=\"10\">\n <ax-search-box look=\"fill\" placeholder=\"e.g. Button, Text, ...\" [(ngModel)]=\"searchTerm\" [delayTime]=\"300\"\n [axAutoFocus]=\"true\">\n <ax-clear-button></ax-clear-button>\n </ax-search-box>\n </div>\n <div class=\"ax-flex ax-flex-col ax-p-4 ax-pt-0\">\n <ng-template #itemTpl let-w>\n <div (click)=\"handleClick($event,w)\"\n class=\"ax-py-2 ax-px-3 ax-rounded-md ax-flex ax-gap-3 ax-items-center ax-group hover:ax-bg-primary-100 ax-cursor-pointer\"\n [class.ax-bg-primary-100]=\"isWidgetSelected(w)\">\n <div class=\"ax-w-10 ax-h-10 ax-flex ax-items-center ax-justify-center ax-rounded-md ax-border ax-border-neutral-200 ax-text-neutral-500 ax-bg-
|
|
106
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPDesignerWidgetPickerComponent, isStandalone: true, selector: "ng-component", inputs: { searchTerm: { classPropertyName: "searchTerm", publicName: "searchTerm", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { searchTerm: "searchTermChange" }, usesInheritance: true, ngImport: i0, template: "<div class=\"ax-flex ax-flex-col lg:ax-h-[75vh]\">\n <div>\n <ax-tabs [look]=\"'with-line'\" (onActiveTabChanged)=\"handleTabChange($event)\">\n @for(w of tabs;track $index)\n {\n <ax-tab-item [text]=\"w.title\" [key]=\"$index.toString()\"\n [active]=\"currentTabIndex() === $index\"></ax-tab-item>\n }\n </ax-tabs>\n </div>\n <div class=\"ax-overflow-auto\" #content>\n <div class=\"ax-p-4 ax-sticky ax-top-0 ax-z-10 ax-transition-all \" #sticky=\"axpSticky\"\n [axpSticky]=\"'ax-bg-surface ax-shadow-xl'\" [stickyParent]=\"content\" [stickyOffset]=\"10\">\n <ax-search-box look=\"fill\" placeholder=\"e.g. Button, Text, ...\" [(ngModel)]=\"searchTerm\" [delayTime]=\"300\"\n [axAutoFocus]=\"true\">\n <ax-clear-button></ax-clear-button>\n </ax-search-box>\n </div>\n <div class=\"ax-flex ax-flex-col ax-p-4 ax-pt-0\">\n <ng-template #itemTpl let-w>\n <div (click)=\"handleClick($event,w)\"\n class=\"ax-py-2 ax-px-3 ax-rounded-md ax-flex ax-gap-3 ax-items-center ax-group hover:ax-bg-primary-100 dark:hover:ax-bg-primary-800 ax-cursor-pointer\"\n [class.ax-bg-primary-100]=\"isWidgetSelected(w)\">\n <div class=\"ax-w-10 ax-h-10 ax-flex ax-items-center ax-justify-center ax-rounded-md ax-border ax-border-neutral-200 ax-text-neutral-500 ax-bg-on-surface group-hover:ax-bg-primary-200\"\n [class.ax-bg-primary-200]=\"isWidgetSelected(w)\">\n <i [ngClass]=\"w.icon\" class=\"ax-text-lg group-hover:ax-text-primary-700 ax-text-on-surface-fore\"\n [class.ax-text-primary-700]=\"isWidgetSelected(w)\"></i>\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-1 ax-flex-1\">\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <div class=\"ax-font-semibold ax-text-sm\">{{w.title}}</div>\n <div (click)=\"handlePinClick($event,w)\">\n @if (w.pinned) {\n <i class=\"fa-solid fa-thumbtack ax-text-sm ax-text-neutral-500 ax-rotate-45\"></i>\n }\n @else {\n <i\n class=\"fa-light fa-thumbtack ax-text-sm ax-text-neutral-500 ax-rotate-45 ax-invisible group-hover:ax-visible\"></i>\n }\n </div>\n </div>\n <span class=\"ax-text-xs ax-text-neutral-400 ax-truncate\">\n {{w.description}}\n </span>\n </div>\n </div>\n </ng-template>\n <div class=\"ax-grid ax-grid-cols-2 ax-gap-2 \">\n @for(w of pinnedList();track $index)\n {\n <ng-container *ngTemplateOutlet=\"itemTpl;context:{ $implicit: w}\"></ng-container>\n }\n </div>\n @if(pinnedList().length)\n {\n <hr class=\"ax-my-4 ax-border-dashed\">\n }\n <div class=\"ax-grid ax-grid-cols-2 ax-gap-2 \">\n @for(w of regularList();track $index)\n {\n <ng-container *ngTemplateOutlet=\"itemTpl;context:{ $implicit: w}\"></ng-container>\n }\n </div>\n </div>\n </div>\n</div>\n@if(selectedWidgets().length)\n{\n<ax-footer>\n <ax-suffix>\n <ax-button look=\"solid\" color=\"primary\" text=\"{{ selectedWidgets().length }} Selected\"\n (onClick)=\"handleConfirmSelection()\"></ax-button>\n </ax-suffix>\n</ax-footer>\n}", styles: [".selected-widget{border-width:1px;--tw-border-opacity: 1;border-color:rgba(var(--ax-color-primary-500),var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-primary-100),var(--tw-bg-opacity))}.selected-widget i{--tw-text-opacity: 1;color:rgba(var(--ax-color-primary-500),var(--tw-text-opacity))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: AXCommonModule }, { kind: "directive", type: i2.AXAutoFocusDirective, selector: "[axAutoFocus]", inputs: ["axAutoFocus", "axAutoFocusTime"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i4.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i5.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "component", type: i5.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXTabsModule }, { kind: "component", type: i6.AXTabsComponent, selector: "ax-tabs", inputs: ["look", "location", "fitParent", "minWidth", "content"], outputs: ["onActiveTabChanged"] }, { kind: "component", type: i6.AXTabItemComponent, selector: "ax-tab-item", inputs: ["disabled", "text", "key", "headerTemplate", "active"], outputs: ["disabledChange", "onClick", "onBlur", "onFocus", "activeChange"] }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i7.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "delayTime"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "directive", type: AXPStickyDirective, selector: "[axpSticky]", inputs: ["axpSticky", "stickyOffset", "stickyParent", "stickyTarget"], outputs: ["isStickyChange"], exportAs: ["axpSticky"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
92
107
|
}
|
|
93
108
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerWidgetPickerComponent, decorators: [{
|
|
94
109
|
type: Component,
|
|
95
|
-
args: [{ standalone: true, imports: [
|
|
110
|
+
args: [{ standalone: true, imports: [
|
|
111
|
+
CommonModule,
|
|
112
|
+
AXCommonModule,
|
|
113
|
+
FormsModule,
|
|
114
|
+
AXButtonModule,
|
|
115
|
+
AXDecoratorModule,
|
|
116
|
+
AXTabsModule,
|
|
117
|
+
AXSearchBoxModule,
|
|
118
|
+
AXPStickyDirective,
|
|
119
|
+
], encapsulation: ViewEncapsulation.None, template: "<div class=\"ax-flex ax-flex-col lg:ax-h-[75vh]\">\n <div>\n <ax-tabs [look]=\"'with-line'\" (onActiveTabChanged)=\"handleTabChange($event)\">\n @for(w of tabs;track $index)\n {\n <ax-tab-item [text]=\"w.title\" [key]=\"$index.toString()\"\n [active]=\"currentTabIndex() === $index\"></ax-tab-item>\n }\n </ax-tabs>\n </div>\n <div class=\"ax-overflow-auto\" #content>\n <div class=\"ax-p-4 ax-sticky ax-top-0 ax-z-10 ax-transition-all \" #sticky=\"axpSticky\"\n [axpSticky]=\"'ax-bg-surface ax-shadow-xl'\" [stickyParent]=\"content\" [stickyOffset]=\"10\">\n <ax-search-box look=\"fill\" placeholder=\"e.g. Button, Text, ...\" [(ngModel)]=\"searchTerm\" [delayTime]=\"300\"\n [axAutoFocus]=\"true\">\n <ax-clear-button></ax-clear-button>\n </ax-search-box>\n </div>\n <div class=\"ax-flex ax-flex-col ax-p-4 ax-pt-0\">\n <ng-template #itemTpl let-w>\n <div (click)=\"handleClick($event,w)\"\n class=\"ax-py-2 ax-px-3 ax-rounded-md ax-flex ax-gap-3 ax-items-center ax-group hover:ax-bg-primary-100 dark:hover:ax-bg-primary-800 ax-cursor-pointer\"\n [class.ax-bg-primary-100]=\"isWidgetSelected(w)\">\n <div class=\"ax-w-10 ax-h-10 ax-flex ax-items-center ax-justify-center ax-rounded-md ax-border ax-border-neutral-200 ax-text-neutral-500 ax-bg-on-surface group-hover:ax-bg-primary-200\"\n [class.ax-bg-primary-200]=\"isWidgetSelected(w)\">\n <i [ngClass]=\"w.icon\" class=\"ax-text-lg group-hover:ax-text-primary-700 ax-text-on-surface-fore\"\n [class.ax-text-primary-700]=\"isWidgetSelected(w)\"></i>\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-1 ax-flex-1\">\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <div class=\"ax-font-semibold ax-text-sm\">{{w.title}}</div>\n <div (click)=\"handlePinClick($event,w)\">\n @if (w.pinned) {\n <i class=\"fa-solid fa-thumbtack ax-text-sm ax-text-neutral-500 ax-rotate-45\"></i>\n }\n @else {\n <i\n class=\"fa-light fa-thumbtack ax-text-sm ax-text-neutral-500 ax-rotate-45 ax-invisible group-hover:ax-visible\"></i>\n }\n </div>\n </div>\n <span class=\"ax-text-xs ax-text-neutral-400 ax-truncate\">\n {{w.description}}\n </span>\n </div>\n </div>\n </ng-template>\n <div class=\"ax-grid ax-grid-cols-2 ax-gap-2 \">\n @for(w of pinnedList();track $index)\n {\n <ng-container *ngTemplateOutlet=\"itemTpl;context:{ $implicit: w}\"></ng-container>\n }\n </div>\n @if(pinnedList().length)\n {\n <hr class=\"ax-my-4 ax-border-dashed\">\n }\n <div class=\"ax-grid ax-grid-cols-2 ax-gap-2 \">\n @for(w of regularList();track $index)\n {\n <ng-container *ngTemplateOutlet=\"itemTpl;context:{ $implicit: w}\"></ng-container>\n }\n </div>\n </div>\n </div>\n</div>\n@if(selectedWidgets().length)\n{\n<ax-footer>\n <ax-suffix>\n <ax-button look=\"solid\" color=\"primary\" text=\"{{ selectedWidgets().length }} Selected\"\n (onClick)=\"handleConfirmSelection()\"></ax-button>\n </ax-suffix>\n</ax-footer>\n}", styles: [".selected-widget{border-width:1px;--tw-border-opacity: 1;border-color:rgba(var(--ax-color-primary-500),var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-primary-100),var(--tw-bg-opacity))}.selected-widget i{--tw-text-opacity: 1;color:rgba(var(--ax-color-primary-500),var(--tw-text-opacity))}\n"] }]
|
|
96
120
|
}] });
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2xheW91dC9kZXNpZ25lci9zcmMvbGliL2Rlc2lnbmVyL2NvbXBvbmVudHMvd2lkZ2V0LXBpY2tlci93aWRnZXQtcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vbGF5b3V0L2Rlc2lnbmVyL3NyYy9saWIvZGVzaWduZXIvY29tcG9uZW50cy93aWRnZXQtcGlja2VyL3dpZGdldC1waWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUEwQixNQUFNLHlCQUF5QixDQUFDO0FBQy9FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzdELE9BQU8sRUFBRSxrQkFBa0IsRUFBbUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxF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LGdDQUFnQztJQUN0QixnQkFBZ0IsQ0FBQyxNQUE4QjtRQUN2RCxPQUFPLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVTLHNCQUFzQjtRQUM5QixJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDbEQsQ0FBQzs4R0FsRlUsZ0NBQWdDO2tHQUFoQyxnQ0FBZ0MsK1JDMUI3Qyw4eEhBMEVDLDhYRHJEVyxZQUFZLG1TQUFFLGNBQWMsMkpBQUUsV0FBVyw4VkFBRSxjQUFjLHVaQUFFLGlCQUFpQixzV0FBRSxZQUFZLGthQUFFLGlCQUFpQiw0WEFBRSxrQkFBa0I7OzJGQUtoSSxnQ0FBZ0M7a0JBUDVDLFNBQVM7aUNBQ0ksSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGNBQWMsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQyxpQkFFN0gsaUJBQWlCLENBQUMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWENvbW1vbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jb21tb24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWEJhc2VQYWdlQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BhZ2UnO1xuaW1wb3J0IHsgQVhTZWFyY2hCb3hNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvc2VhcmNoLWJveCc7XG5pbXBvcnQgeyBBWFRhYnNNb2R1bGUsIEFYVGFiU3RyaXBDaGFuZ2VkRXZlbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvdGFicyc7XG5pbXBvcnQgeyBBWFBTdGlja3lEaXJlY3RpdmUgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBfV0lER0VUU19HUk9VUFMsIEFYUFdpZGdldENvbmZpZywgQVhQV2lkZ2V0R3JvdXAgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBtb2RlbCwgc2lnbmFsLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBvcmRlckJ5IH0gZnJvbSAnbG9kYXNoLWVzJztcblxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUERpc3BsYXlXaWRnZXRDb25maWcgZXh0ZW5kcyBBWFBXaWRnZXRDb25maWcge1xuICBwaW5uZWQ6IGJvb2xlYW47XG59XG5cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEFYQ29tbW9uTW9kdWxlLCBGb3Jtc01vZHVsZSwgQVhCdXR0b25Nb2R1bGUsIEFYRGVjb3JhdG9yTW9kdWxlLCBBWFRhYnNNb2R1bGUsIEFYU2VhcmNoQm94TW9kdWxlLCBBWFBTdGlja3lEaXJlY3RpdmVdLFxuICB0ZW1wbGF0ZVVybDogJy4vd2lkZ2V0LXBpY2tlci5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHN0eWxlVXJsczogWycuL3dpZGdldC1waWNrZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQRGVzaWduZXJXaWRnZXRQaWNrZXJDb21wb25lbnQgZXh0ZW5kcyBBWEJhc2VQYWdlQ29tcG9uZW50IHtcblxuXG4gIHByb3RlY3RlZCBzZWFyY2hUZXJtID0gbW9kZWwoJycpO1xuXG4gIC8vIFNpZ25hbHNcbiAgcHJpdmF0ZSB3aWRnZXRzOiBBWFBXaWRnZXRDb25maWdbXSA9IFtdO1xuICBwcml2YXRlIGRpc3BsYXlXaWRnZXRzID0gc2lnbmFsPEFYUERpc3BsYXlXaWRnZXRDb25maWdbXT4oW10pO1xuXG4gIC8vIFNpZ25hbCB0byB0cmFjayBzZWxlY3RlZCB3aWRnZXRzXG4gIHByb3RlY3RlZCBzZWxlY3RlZFdpZGdldHMgPSBzaWduYWw8QVhQRGlzcGxheVdpZGdldENvbmZpZ1tdPihbXSk7XG5cbiAgLy8gQ29tcHV0ZWQgZm9yIGZpbHRlcmVkIGFuZCBvcmRlcmVkIHdpZGdldCBsaXN0XG4gIHByaXZhdGUgb3JkZXJlZExpc3QgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3Qgc2VhcmNoID0gdGhpcy5zZWFyY2hUZXJtKCkudG9Mb3dlckNhc2UoKTtcbiAgICBjb25zdCBzZWxlY3RlZFRhYk5hbWUgPSB0aGlzLnNlbGVjdGVkVGFiKCkubmFtZTtcblxuICAgIHJldHVybiBvcmRlckJ5KFxuICAgICAgdGhpcy5kaXNwbGF5V2lkZ2V0cygpLmZpbHRlcih3ID0+IHtcbiAgICAgICAgY29uc3QgbWF0Y2hlc1RhYiA9IHNlbGVjdGVkVGFiTmFtZSA9PT0gJ2FsbCcgfHwgdy5ncm91cC5uYW1lID09PSBzZWxlY3RlZFRhYk5hbWU7XG4gICAgICAgIGNvbnN0IG1hdGNoZXNTZWFyY2ggPSAhc2VhcmNoIHx8IHcudGl0bGUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2gpIHx8IHcuZGVzY3JpcHRpb24/LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoKTtcbiAgICAgICAgcmV0dXJuIG1hdGNoZXNUYWIgJiYgbWF0Y2hlc1NlYXJjaDtcbiAgICAgIH0pLFxuICAgICAgWydwaW5uZWQnLCAndGl0bGUnXSwgWydkZXNjJywgJ2FzYyddXG4gICAgKTtcbiAgfSk7XG5cbiAgLy8gUGlubmVkIGFuZCByZWd1bGFyIGxpc3RzXG4gIHByb3RlY3RlZCBwaW5uZWRMaXN0ID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5vcmRlcmVkTGlzdCgpLmZpbHRlcihjID0+IGMucGlubmVkKSk7XG4gIHByb3RlY3RlZCByZWd1bGFyTGlzdCA9IGNvbXB1dGVkKCgpID0+IHRoaXMub3JkZXJlZExpc3QoKS5maWx0ZXIoYyA9PiAhYy5waW5uZWQpKTtcblxuICAvLyBUYWJzIGZvciB0aGUgd2lkZ2V0IGdyb3Vwc1xuICBwcm90ZWN0ZWQgdGFiczogQVhQV2lkZ2V0R3JvdXBbXSA9IG9yZGVyQnkoW3sgbmFtZTogJ2FsbCcsIHRpdGxlOiAnQWxsJywgb3JkZXI6IDAgfSwgLi4uQVhQX1dJREdFVFNfR1JPVVBTXSwgYyA9PiBjLm9yZGVyKTtcbiAgcHJvdGVjdGVkIGN1cnJlbnRUYWJJbmRleCA9IHNpZ25hbCgwKTtcbiAgcHJvdGVjdGVkIHNlbGVjdGVkVGFiID0gY29tcHV0ZWQoKCkgPT4gdGhpcy50YWJzW3RoaXMuY3VycmVudFRhYkluZGV4KCldKTtcblxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIHRoaXMuZGlzcGxheVdpZGdldHMuc2V0KHRoaXMud2lkZ2V0cy5tYXAoYyA9PiAoeyAuLi5jLCBwaW5uZWQ6IGZhbHNlIH0pKSlcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVUYWJDaGFuZ2UoZXZlbnQ6IEFYVGFiU3RyaXBDaGFuZ2VkRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBpbmR4ID0gZXZlbnQuaW5kZXg7XG4gICAgaWYgKHRoaXMuY3VycmVudFRhYkluZGV4KCkgIT0gaW5keCkge1xuICAgICAgdGhpcy5jdXJyZW50VGFiSW5kZXguc2V0KGluZHgpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVDbGljayhldmVudDogTW91c2VFdmVudCwgd2lkZ2V0OiBBWFBEaXNwbGF5V2lkZ2V0Q29uZmlnKSB7XG4gICAgLy90aGlzLmNsb3NlKHsgd2lkZ2V0czogW3dpZGdldF0gfSk7XG4gICAgaWYgKGV2ZW50LmN0cmxLZXkpIHtcbiAgICAgIGNvbnN0IGN1cnJlbnRTZWxlY3Rpb24gPSB0aGlzLnNlbGVjdGVkV2lkZ2V0cygpO1xuICAgICAgY29uc3QgaXNBbHJlYWR5U2VsZWN0ZWQgPSBjdXJyZW50U2VsZWN0aW9uLnNvbWUodyA9PiB3ID09PSB3aWRnZXQpO1xuXG4gICAgICBpZiAoaXNBbHJlYWR5U2VsZWN0ZWQpIHtcbiAgICAgICAgLy8gRGVzZWxlY3Qgd2lkZ2V0IGlmIGFscmVhZHkgc2VsZWN0ZWRcbiAgICAgICAgdGhpcy5zZWxlY3RlZFdpZGdldHMuc2V0KGN1cnJlbnRTZWxlY3Rpb24uZmlsdGVyKHcgPT4gdyAhPT0gd2lkZ2V0KSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBBZGQgd2lkZ2V0IHRvIHNlbGVjdGlvblxuICAgICAgICB0aGlzLnNlbGVjdGVkV2lkZ2V0cy5zZXQoWy4uLmN1cnJlbnRTZWxlY3Rpb24sIHdpZGdldF0pO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBJZiBDVFJMIGlzIG5vdCBwcmVzc2VkLCBzZWxlY3Qgb25seSB0aGUgY2xpY2tlZCB3aWRnZXRcbiAgICAgIC8vdGhpcy5zZWxlY3RlZFdpZGdldHMuc2V0KFt3aWRnZXRdKTtcbiAgICAgIHRoaXMuY2xvc2UoeyB3aWRnZXRzOiBbd2lkZ2V0XSB9KTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlUGluQ2xpY2soZTogTW91c2VFdmVudCwgd2lkZ2V0OiBBWFBEaXNwbGF5V2lkZ2V0Q29uZmlnKSB7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB3aWRnZXQucGlubmVkID0gIXdpZGdldC5waW5uZWQ7XG4gICAgdGhpcy5kaXNwbGF5V2lkZ2V0cy5zZXQoWy4uLnRoaXMuZGlzcGxheVdpZGdldHMoKV0pO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgYSB3aWRnZXQgaXMgc2VsZWN0ZWRcbiAgcHJvdGVjdGVkIGlzV2lkZ2V0U2VsZWN0ZWQod2lkZ2V0OiBBWFBEaXNwbGF5V2lkZ2V0Q29uZmlnKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRXaWRnZXRzKCkuaW5jbHVkZXMod2lkZ2V0KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVDb25maXJtU2VsZWN0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuY2xvc2UoeyB3aWRnZXRzOiB0aGlzLnNlbGVjdGVkV2lkZ2V0cygpIH0pO1xuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGxnOmF4LWgtWzc1dmhdXCI+XG4gICAgPGRpdj5cbiAgICAgICAgPGF4LXRhYnMgW2xvb2tdPVwiJ3dpdGgtbGluZSdcIiAob25BY3RpdmVUYWJDaGFuZ2VkKT1cImhhbmRsZVRhYkNoYW5nZSgkZXZlbnQpXCI+XG4gICAgICAgICAgICBAZm9yKHcgb2YgdGFiczt0cmFjayAkaW5kZXgpXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICA8YXgtdGFiLWl0ZW0gW3RleHRdPVwidy50aXRsZVwiIFtrZXldPVwiJGluZGV4LnRvU3RyaW5nKClcIlxuICAgICAgICAgICAgICAgIFthY3RpdmVdPVwiY3VycmVudFRhYkluZGV4KCkgPT09ICRpbmRleFwiPjwvYXgtdGFiLWl0ZW0+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvYXgtdGFicz5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtb3ZlcmZsb3ctYXV0b1wiICNjb250ZW50PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtcC00IGF4LXN0aWNreSBheC10b3AtMCBheC16LTEwIGF4LXRyYW5zaXRpb24tYWxsIFwiICNzdGlja3k9XCJheHBTdGlja3lcIlxuICAgICAgICAgICAgW2F4cFN0aWNreV09XCInYXgtYmctc3VyZmFjZSBheC1zaGFkb3cteGwnXCIgW3N0aWNreVBhcmVudF09XCJjb250ZW50XCIgW3N0aWNreU9mZnNldF09XCIxMFwiPlxuICAgICAgICAgICAgPGF4LXNlYXJjaC1ib3ggbG9vaz1cImZpbGxcIiBwbGFjZWhvbGRlcj1cImUuZy4gQnV0dG9uLCBUZXh0LCAuLi5cIiBbKG5nTW9kZWwpXT1cInNlYXJjaFRlcm1cIiBbZGVsYXlUaW1lXT1cIjMwMFwiXG4gICAgICAgICAgICAgICAgW2F4QXV0b0ZvY3VzXT1cInRydWVcIj5cbiAgICAgICAgICAgICAgICA8YXgtY2xlYXItYnV0dG9uPjwvYXgtY2xlYXItYnV0dG9uPlxuICAgICAgICAgICAgPC9heC1zZWFyY2gtYm94PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtcC00IGF4LXB0LTBcIj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjaXRlbVRwbCBsZXQtdz5cbiAgICAgICAgICAgICAgICA8ZGl2IChjbGljayk9XCJoYW5kbGVDbGljaygkZXZlbnQsdylcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImF4LXB5LTIgYXgtcHgtMyBheC1yb3VuZGVkLW1kIGF4LWZsZXggYXgtZ2FwLTMgYXgtaXRlbXMtY2VudGVyIGF4LWdyb3VwIGhvdmVyOmF4LWJnLXByaW1hcnktMTAwIGF4LWN1cnNvci1wb2ludGVyXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmF4LWJnLXByaW1hcnktMTAwXT1cImlzV2lkZ2V0U2VsZWN0ZWQodylcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LXctMTAgYXgtaC0xMCBheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1qdXN0aWZ5LWNlbnRlciBheC1yb3VuZGVkLW1kIGF4LWJvcmRlciBheC1ib3JkZXItbmV1dHJhbC0yMDAgYXgtdGV4dC1uZXV0cmFsLTUwMCBheC1iZy1uZXV0cmFsLTEwMCAgZ3JvdXAtaG92ZXI6YXgtYmctcHJpbWFyeS0yMDBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmF4LWJnLXByaW1hcnktMjAwXT1cImlzV2lkZ2V0U2VsZWN0ZWQodylcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpIFtuZ0NsYXNzXT1cIncuaWNvblwiIGNsYXNzPVwiYXgtdGV4dC1sZyBncm91cC1ob3ZlcjpheC10ZXh0LXByaW1hcnktNzAwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYXgtdGV4dC1wcmltYXJ5LTcwMF09XCJpc1dpZGdldFNlbGVjdGVkKHcpXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtZ2FwLTEgYXgtZmxleC0xXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZm9udC1zZW1pYm9sZCBheC10ZXh0LXNtXCI+e3t3LnRpdGxlfX08L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IChjbGljayk9XCJoYW5kbGVQaW5DbGljaygkZXZlbnQsdylcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmICh3LnBpbm5lZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhLXNvbGlkIGZhLXRodW1idGFjayBheC10ZXh0LXNtIGF4LXRleHQtbmV1dHJhbC01MDAgYXgtcm90YXRlLTQ1XCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmEtbGlnaHQgZmEtdGh1bWJ0YWNrIGF4LXRleHQtc20gYXgtdGV4dC1uZXV0cmFsLTUwMCBheC1yb3RhdGUtNDUgYXgtaW52aXNpYmxlIGdyb3VwLWhvdmVyOmF4LXZpc2libGVcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJheC10ZXh0LXhzIGF4LXRleHQtbmV1dHJhbC00MDAgYXgtdHJ1bmNhdGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3cuZGVzY3JpcHRpb259fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZ3JpZCBheC1ncmlkLWNvbHMtMiBheC1nYXAtMiBcIj5cbiAgICAgICAgICAgICAgICBAZm9yKHcgb2YgcGlubmVkTGlzdCgpO3RyYWNrICRpbmRleClcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIml0ZW1UcGw7Y29udGV4dDp7ICRpbXBsaWNpdDogd31cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIEBpZihwaW5uZWRMaXN0KCkubGVuZ3RoKVxuICAgICAgICAgICAge1xuICAgICAgICAgICAgPGhyIGNsYXNzPVwiYXgtbXktNCBheC1ib3JkZXItZGFzaGVkXCI+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZ3JpZCBheC1ncmlkLWNvbHMtMiBheC1nYXAtMiBcIj5cbiAgICAgICAgICAgICAgICBAZm9yKHcgb2YgcmVndWxhckxpc3QoKTt0cmFjayAkaW5kZXgpXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpdGVtVHBsO2NvbnRleHQ6eyAkaW1wbGljaXQ6IHd9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG5AaWYoc2VsZWN0ZWRXaWRnZXRzKCkubGVuZ3RoKVxue1xuPGF4LWZvb3Rlcj5cbiAgICA8YXgtc3VmZml4PlxuICAgICAgICA8YXgtYnV0dG9uIGxvb2s9XCJzb2xpZFwiIGNvbG9yPVwicHJpbWFyeVwiIHRleHQ9XCJ7eyBzZWxlY3RlZFdpZGdldHMoKS5sZW5ndGggfX0gU2VsZWN0ZWRcIlxuICAgICAgICAgICAgKG9uQ2xpY2spPVwiaGFuZGxlQ29uZmlybVNlbGVjdGlvbigpXCI+PC9heC1idXR0b24+XG4gICAgPC9heC1zdWZmaXg+XG48L2F4LWZvb3Rlcj5cbn0iXX0=
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2xheW91dC9kZXNpZ25lci9zcmMvbGliL2Rlc2lnbmVyL2NvbXBvbmVudHMvd2lkZ2V0LXBpY2tlci93aWRnZXQtcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vbGF5b3V0L2Rlc2lnbmVyL3NyYy9saWIvZGVzaWduZXIvY29tcG9uZW50cy93aWRnZXQtcGlja2VyL3dpZGdldC1waWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUEwQixNQUFNLHlCQUF5QixDQUFDO0FBQy9FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxrQkFBa0IsRUFBbUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdC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LHNCQUFzQjtRQUM5QixJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDbEQsQ0FBQzs4R0F0R1UsZ0NBQWdDO2tHQUFoQyxnQ0FBZ0MsK1JDakM3QyxrMUhBMEVDLDhYRHRERyxZQUFZLG1TQUNaLGNBQWMsMkpBQ2QsV0FBVyw4VkFDWCxjQUFjLHVaQUNkLGlCQUFpQixzV0FDakIsWUFBWSxrYUFDWixpQkFBaUIsNFhBQ2pCLGtCQUFrQjs7MkZBTVQsZ0NBQWdDO2tCQWhCNUMsU0FBUztpQ0FDSSxJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixjQUFjO3dCQUNkLFdBQVc7d0JBQ1gsY0FBYzt3QkFDZCxpQkFBaUI7d0JBQ2pCLFlBQVk7d0JBQ1osaUJBQWlCO3dCQUNqQixrQkFBa0I7cUJBQ25CLGlCQUVjLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhDb21tb25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY29tbW9uJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhCYXNlUGFnZUNvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9wYWdlJztcbmltcG9ydCB7IEFYU2VhcmNoQm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3NlYXJjaC1ib3gnO1xuaW1wb3J0IHsgQVhUYWJzTW9kdWxlLCBBWFRhYlN0cmlwQ2hhbmdlZEV2ZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3RhYnMnO1xuaW1wb3J0IHsgQVhQU2V0dGluZ3NTZXJ2aWNlLCBBWFBTdGlja3lEaXJlY3RpdmUgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBfV0lER0VUU19HUk9VUFMsIEFYUFdpZGdldENvbmZpZywgQVhQV2lkZ2V0R3JvdXAgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBpbmplY3QsIG1vZGVsLCBzaWduYWwsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IG9yZGVyQnkgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFYUERpc3BsYXlXaWRnZXRDb25maWcgZXh0ZW5kcyBBWFBXaWRnZXRDb25maWcge1xuICBwaW5uZWQ6IGJvb2xlYW47XG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEFYQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIEFYQnV0dG9uTW9kdWxlLFxuICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgIEFYVGFic01vZHVsZSxcbiAgICBBWFNlYXJjaEJveE1vZHVsZSxcbiAgICBBWFBTdGlja3lEaXJlY3RpdmUsXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi93aWRnZXQtcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgc3R5bGVVcmxzOiBbJy4vd2lkZ2V0LXBpY2tlci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBEZXNpZ25lcldpZGdldFBpY2tlckNvbXBvbmVudCBleHRlbmRzIEFYQmFzZVBhZ2VDb21wb25lbnQge1xuICBwcml2YXRlIHNldHRpbmdTZXJ2aWNlID0gaW5qZWN0KEFYUFNldHRpbmdzU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgcGlubmVkU2V0dGluZ0tleSA9ICdmb3Jtczp3aWRnZXRzOnBpY2tlcjpwaW5uZWQnO1xuXG4gIHByb3RlY3RlZCBzZWFyY2hUZXJtID0gbW9kZWwoJycpO1xuXG4gIC8vIFNpZ25hbHNcbiAgcHJpdmF0ZSB3aWRnZXRzOiBBWFBXaWRnZXRDb25maWdbXSA9IFtdO1xuICBwcml2YXRlIGRpc3BsYXlXaWRnZXRzID0gc2lnbmFsPEFYUERpc3BsYXlXaWRnZXRDb25maWdbXT4oW10pO1xuXG4gIC8vIFNpZ25hbCB0byB0cmFjayBzZWxlY3RlZCB3aWRnZXRzXG4gIHByb3RlY3RlZCBzZWxlY3RlZFdpZGdldHMgPSBzaWduYWw8QVhQRGlzcGxheVdpZGdldENvbmZpZ1tdPihbXSk7XG5cbiAgLy8gQ29tcHV0ZWQgZm9yIGZpbHRlcmVkIGFuZCBvcmRlcmVkIHdpZGdldCBsaXN0XG4gIHByaXZhdGUgb3JkZXJlZExpc3QgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3Qgc2VhcmNoID0gdGhpcy5zZWFyY2hUZXJtKCkudG9Mb3dlckNhc2UoKTtcbiAgICBjb25zdCBzZWxlY3RlZFRhYk5hbWUgPSB0aGlzLnNlbGVjdGVkVGFiKCkubmFtZTtcblxuICAgIHJldHVybiBvcmRlckJ5KFxuICAgICAgdGhpcy5kaXNwbGF5V2lkZ2V0cygpLmZpbHRlcigodykgPT4ge1xuICAgICAgICBjb25zdCBtYXRjaGVzVGFiID0gc2VsZWN0ZWRUYWJOYW1lID09PSAnYWxsJyB8fCB3Lmdyb3VwLm5hbWUgPT09IHNlbGVjdGVkVGFiTmFtZTtcbiAgICAgICAgY29uc3QgbWF0Y2hlc1NlYXJjaCA9XG4gICAgICAgICAgIXNlYXJjaCB8fCB3LnRpdGxlLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoKSB8fCB3LmRlc2NyaXB0aW9uPy50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHNlYXJjaCk7XG4gICAgICAgIHJldHVybiBtYXRjaGVzVGFiICYmIG1hdGNoZXNTZWFyY2g7XG4gICAgICB9KSxcbiAgICAgIFsncGlubmVkJywgJ3RpdGxlJ10sXG4gICAgICBbJ2Rlc2MnLCAnYXNjJ11cbiAgICApO1xuICB9KTtcblxuICAvLyBQaW5uZWQgYW5kIHJlZ3VsYXIgbGlzdHNcbiAgcHJvdGVjdGVkIHBpbm5lZExpc3QgPSBjb21wdXRlZCgoKSA9PiB0aGlzLm9yZGVyZWRMaXN0KCkuZmlsdGVyKChjKSA9PiBjLnBpbm5lZCkpO1xuICBwcm90ZWN0ZWQgcmVndWxhckxpc3QgPSBjb21wdXRlZCgoKSA9PiB0aGlzLm9yZGVyZWRMaXN0KCkuZmlsdGVyKChjKSA9PiAhYy5waW5uZWQpKTtcblxuICAvLyBUYWJzIGZvciB0aGUgd2lkZ2V0IGdyb3Vwc1xuICBwcm90ZWN0ZWQgdGFiczogQVhQV2lkZ2V0R3JvdXBbXSA9IG9yZGVyQnkoXG4gICAgW3sgbmFtZTogJ2FsbCcsIHRpdGxlOiAnQWxsJywgb3JkZXI6IDAgfSwgLi4uQVhQX1dJREdFVFNfR1JPVVBTXSxcbiAgICAoYykgPT4gYy5vcmRlclxuICApO1xuICBwcm90ZWN0ZWQgY3VycmVudFRhYkluZGV4ID0gc2lnbmFsKDApO1xuICBwcm90ZWN0ZWQgc2VsZWN0ZWRUYWIgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnRhYnNbdGhpcy5jdXJyZW50VGFiSW5kZXgoKV0pO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIGNvbnN0IHBpbm5lZFdpZGdldHMgPSAoYXdhaXQgdGhpcy5zZXR0aW5nU2VydmljZS5nZXQ8c3RyaW5nW10+KHRoaXMucGlubmVkU2V0dGluZ0tleSkpIHx8IFtdO1xuICAgIHRoaXMuZGlzcGxheVdpZGdldHMuc2V0KHRoaXMud2lkZ2V0cy5tYXAoKGMpID0+ICh7IC4uLmMsIHBpbm5lZDogcGlubmVkV2lkZ2V0cy5pbmNsdWRlcyhjLm5hbWUpIH0pKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlVGFiQ2hhbmdlKGV2ZW50OiBBWFRhYlN0cmlwQ2hhbmdlZEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgaW5keCA9IGV2ZW50LmluZGV4O1xuICAgIGlmICh0aGlzLmN1cnJlbnRUYWJJbmRleCgpICE9IGluZHgpIHtcbiAgICAgIHRoaXMuY3VycmVudFRhYkluZGV4LnNldChpbmR4KTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQsIHdpZGdldDogQVhQRGlzcGxheVdpZGdldENvbmZpZykge1xuICAgIGlmIChldmVudC5jdHJsS2V5KSB7XG4gICAgICBjb25zdCBjdXJyZW50U2VsZWN0aW9uID0gdGhpcy5zZWxlY3RlZFdpZGdldHMoKTtcbiAgICAgIGNvbnN0IGlzQWxyZWFkeVNlbGVjdGVkID0gY3VycmVudFNlbGVjdGlvbi5zb21lKCh3KSA9PiB3ID09PSB3aWRnZXQpO1xuXG4gICAgICBpZiAoaXNBbHJlYWR5U2VsZWN0ZWQpIHtcbiAgICAgICAgLy8gRGVzZWxlY3Qgd2lkZ2V0IGlmIGFscmVhZHkgc2VsZWN0ZWRcbiAgICAgICAgdGhpcy5zZWxlY3RlZFdpZGdldHMuc2V0KGN1cnJlbnRTZWxlY3Rpb24uZmlsdGVyKCh3KSA9PiB3ICE9PSB3aWRnZXQpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIEFkZCB3aWRnZXQgdG8gc2VsZWN0aW9uXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRXaWRnZXRzLnNldChbLi4uY3VycmVudFNlbGVjdGlvbiwgd2lkZ2V0XSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIElmIENUUkwgaXMgbm90IHByZXNzZWQsIHNlbGVjdCBvbmx5IHRoZSBjbGlja2VkIHdpZGdldFxuICAgICAgdGhpcy5jbG9zZSh7IHdpZGdldHM6IFt3aWRnZXRdIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVQaW5DbGljayhlOiBNb3VzZUV2ZW50LCB3aWRnZXQ6IEFYUERpc3BsYXlXaWRnZXRDb25maWcpIHtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHdpZGdldC5waW5uZWQgPSAhd2lkZ2V0LnBpbm5lZDtcbiAgICAvLyBHZXQgdGhlIGN1cnJlbnQgbGlzdCBvZiBwaW5uZWQgd2lkZ2V0cyBmcm9tIHNldHRpbmdzXG4gICAgbGV0IHBpbm5lZFdpZGdldHMgPSAoYXdhaXQgdGhpcy5zZXR0aW5nU2VydmljZS5nZXQ8c3RyaW5nW10+KHRoaXMucGlubmVkU2V0dGluZ0tleSkpIHx8IFtdO1xuXG4gICAgLy8gVXBkYXRlIHRoZSBsaXN0IG9mIHBpbm5lZCB3aWRnZXRzIGJhc2VkIG9uIHRoZSBwaW5uZWQgc3RhdHVzXG4gICAgaWYgKHdpZGdldC5waW5uZWQpIHtcbiAgICAgIGlmICghcGlubmVkV2lkZ2V0cy5pbmNsdWRlcyh3aWRnZXQubmFtZSkpIHtcbiAgICAgICAgcGlubmVkV2lkZ2V0cy5wdXNoKHdpZGdldC5uYW1lKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgcGlubmVkV2lkZ2V0cyA9IHBpbm5lZFdpZGdldHMuZmlsdGVyKChuYW1lKSA9PiBuYW1lICE9PSB3aWRnZXQubmFtZSk7XG4gICAgfVxuXG4gICAgLy8gU2F2ZSB0aGUgdXBkYXRlZCBsaXN0IG9mIHBpbm5lZCB3aWRnZXRzXG4gICAgYXdhaXQgdGhpcy5zZXR0aW5nU2VydmljZS5zZXQodGhpcy5waW5uZWRTZXR0aW5nS2V5LCBwaW5uZWRXaWRnZXRzKTtcblxuICAgIC8vIFRyaWdnZXIgYSByZS1yZW5kZXIgb2YgdGhlIHdpZGdldHNcbiAgICB0aGlzLmRpc3BsYXlXaWRnZXRzLnNldChbLi4udGhpcy5kaXNwbGF5V2lkZ2V0cygpXSk7XG4gIH1cblxuICAvLyBDaGVjayBpZiBhIHdpZGdldCBpcyBzZWxlY3RlZFxuICBwcm90ZWN0ZWQgaXNXaWRnZXRTZWxlY3RlZCh3aWRnZXQ6IEFYUERpc3BsYXlXaWRnZXRDb25maWcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZFdpZGdldHMoKS5pbmNsdWRlcyh3aWRnZXQpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZUNvbmZpcm1TZWxlY3Rpb24oKTogdm9pZCB7XG4gICAgdGhpcy5jbG9zZSh7IHdpZGdldHM6IHRoaXMuc2VsZWN0ZWRXaWRnZXRzKCkgfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGxnOmF4LWgtWzc1dmhdXCI+XG4gICAgPGRpdj5cbiAgICAgICAgPGF4LXRhYnMgW2xvb2tdPVwiJ3dpdGgtbGluZSdcIiAob25BY3RpdmVUYWJDaGFuZ2VkKT1cImhhbmRsZVRhYkNoYW5nZSgkZXZlbnQpXCI+XG4gICAgICAgICAgICBAZm9yKHcgb2YgdGFiczt0cmFjayAkaW5kZXgpXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICA8YXgtdGFiLWl0ZW0gW3RleHRdPVwidy50aXRsZVwiIFtrZXldPVwiJGluZGV4LnRvU3RyaW5nKClcIlxuICAgICAgICAgICAgICAgIFthY3RpdmVdPVwiY3VycmVudFRhYkluZGV4KCkgPT09ICRpbmRleFwiPjwvYXgtdGFiLWl0ZW0+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvYXgtdGFicz5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtb3ZlcmZsb3ctYXV0b1wiICNjb250ZW50PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtcC00IGF4LXN0aWNreSBheC10b3AtMCBheC16LTEwIGF4LXRyYW5zaXRpb24tYWxsIFwiICNzdGlja3k9XCJheHBTdGlja3lcIlxuICAgICAgICAgICAgW2F4cFN0aWNreV09XCInYXgtYmctc3VyZmFjZSBheC1zaGFkb3cteGwnXCIgW3N0aWNreVBhcmVudF09XCJjb250ZW50XCIgW3N0aWNreU9mZnNldF09XCIxMFwiPlxuICAgICAgICAgICAgPGF4LXNlYXJjaC1ib3ggbG9vaz1cImZpbGxcIiBwbGFjZWhvbGRlcj1cImUuZy4gQnV0dG9uLCBUZXh0LCAuLi5cIiBbKG5nTW9kZWwpXT1cInNlYXJjaFRlcm1cIiBbZGVsYXlUaW1lXT1cIjMwMFwiXG4gICAgICAgICAgICAgICAgW2F4QXV0b0ZvY3VzXT1cInRydWVcIj5cbiAgICAgICAgICAgICAgICA8YXgtY2xlYXItYnV0dG9uPjwvYXgtY2xlYXItYnV0dG9uPlxuICAgICAgICAgICAgPC9heC1zZWFyY2gtYm94PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtcC00IGF4LXB0LTBcIj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjaXRlbVRwbCBsZXQtdz5cbiAgICAgICAgICAgICAgICA8ZGl2IChjbGljayk9XCJoYW5kbGVDbGljaygkZXZlbnQsdylcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImF4LXB5LTIgYXgtcHgtMyBheC1yb3VuZGVkLW1kIGF4LWZsZXggYXgtZ2FwLTMgYXgtaXRlbXMtY2VudGVyIGF4LWdyb3VwIGhvdmVyOmF4LWJnLXByaW1hcnktMTAwIGRhcms6aG92ZXI6YXgtYmctcHJpbWFyeS04MDAgYXgtY3Vyc29yLXBvaW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYXgtYmctcHJpbWFyeS0xMDBdPVwiaXNXaWRnZXRTZWxlY3RlZCh3KVwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtdy0xMCBheC1oLTEwIGF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWp1c3RpZnktY2VudGVyIGF4LXJvdW5kZWQtbWQgYXgtYm9yZGVyIGF4LWJvcmRlci1uZXV0cmFsLTIwMCBheC10ZXh0LW5ldXRyYWwtNTAwIGF4LWJnLW9uLXN1cmZhY2UgIGdyb3VwLWhvdmVyOmF4LWJnLXByaW1hcnktMjAwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5heC1iZy1wcmltYXJ5LTIwMF09XCJpc1dpZGdldFNlbGVjdGVkKHcpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aSBbbmdDbGFzc109XCJ3Lmljb25cIiBjbGFzcz1cImF4LXRleHQtbGcgZ3JvdXAtaG92ZXI6YXgtdGV4dC1wcmltYXJ5LTcwMCBheC10ZXh0LW9uLXN1cmZhY2UtZm9yZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmF4LXRleHQtcHJpbWFyeS03MDBdPVwiaXNXaWRnZXRTZWxlY3RlZCh3KVwiPjwvaT5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGF4LWdhcC0xIGF4LWZsZXgtMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWdhcC0yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZvbnQtc2VtaWJvbGQgYXgtdGV4dC1zbVwiPnt7dy50aXRsZX19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAoY2xpY2spPVwiaGFuZGxlUGluQ2xpY2soJGV2ZW50LHcpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAody5waW5uZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYS1zb2xpZCBmYS10aHVtYnRhY2sgYXgtdGV4dC1zbSBheC10ZXh0LW5ldXRyYWwtNTAwIGF4LXJvdGF0ZS00NVwiPjwvaT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZhLWxpZ2h0IGZhLXRodW1idGFjayBheC10ZXh0LXNtIGF4LXRleHQtbmV1dHJhbC01MDAgYXgtcm90YXRlLTQ1IGF4LWludmlzaWJsZSBncm91cC1ob3ZlcjpheC12aXNpYmxlXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXgtdGV4dC14cyBheC10ZXh0LW5ldXRyYWwtNDAwIGF4LXRydW5jYXRlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3t3LmRlc2NyaXB0aW9ufX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWdyaWQgYXgtZ3JpZC1jb2xzLTIgYXgtZ2FwLTIgXCI+XG4gICAgICAgICAgICAgICAgQGZvcih3IG9mIHBpbm5lZExpc3QoKTt0cmFjayAkaW5kZXgpXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpdGVtVHBsO2NvbnRleHQ6eyAkaW1wbGljaXQ6IHd9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICBAaWYocGlubmVkTGlzdCgpLmxlbmd0aClcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgIDxociBjbGFzcz1cImF4LW15LTQgYXgtYm9yZGVyLWRhc2hlZFwiPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWdyaWQgYXgtZ3JpZC1jb2xzLTIgYXgtZ2FwLTIgXCI+XG4gICAgICAgICAgICAgICAgQGZvcih3IG9mIHJlZ3VsYXJMaXN0KCk7dHJhY2sgJGluZGV4KVxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbVRwbDtjb250ZXh0OnsgJGltcGxpY2l0OiB3fVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuQGlmKHNlbGVjdGVkV2lkZ2V0cygpLmxlbmd0aClcbntcbjxheC1mb290ZXI+XG4gICAgPGF4LXN1ZmZpeD5cbiAgICAgICAgPGF4LWJ1dHRvbiBsb29rPVwic29saWRcIiBjb2xvcj1cInByaW1hcnlcIiB0ZXh0PVwie3sgc2VsZWN0ZWRXaWRnZXRzKCkubGVuZ3RoIH19IFNlbGVjdGVkXCJcbiAgICAgICAgICAgIChvbkNsaWNrKT1cImhhbmRsZUNvbmZpcm1TZWxlY3Rpb24oKVwiPjwvYXgtYnV0dG9uPlxuICAgIDwvYXgtc3VmZml4PlxuPC9heC1mb290ZXI+XG59Il19
|