@vendure/admin-ui 2.1.0-next.1 → 2.1.0-next.3
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/catalog/components/collection-detail/collection-detail.component.d.ts +3 -1
- package/catalog/components/create-product-variant-dialog/create-product-variant-dialog.component.d.ts +6 -4
- package/catalog/components/facet-detail/facet-detail.component.d.ts +3 -1
- package/catalog/components/product-detail/product-detail.component.d.ts +3 -1
- package/catalog/components/stock-location-detail/stock-location-detail.component.d.ts +3 -1
- package/core/common/base-detail.component.d.ts +11 -1
- package/core/common/component-registry-types.d.ts +2 -1
- package/core/common/utilities/custom-field-default-value.d.ts +6 -0
- package/core/common/version.d.ts +1 -1
- package/core/components/app-shell/app-shell.component.d.ts +2 -0
- package/core/extension/add-action-bar-item.d.ts +28 -0
- package/core/extension/add-nav-menu-item.d.ts +60 -0
- package/core/extension/components/angular-route.component.d.ts +6 -0
- package/core/extension/components/route.component.d.ts +13 -0
- package/core/extension/providers/page-metadata.service.d.ts +9 -0
- package/core/{providers/bulk-action-registry → extension}/register-bulk-action.d.ts +1 -1
- package/core/extension/register-custom-detail-component.d.ts +10 -0
- package/core/{providers/dashboard-widget → extension}/register-dashboard-widget.d.ts +5 -1
- package/core/extension/register-data-table-component.d.ts +44 -0
- package/core/extension/register-form-input-component.d.ts +50 -0
- package/core/extension/register-history-entry-component.d.ts +11 -0
- package/core/extension/register-route-component.d.ts +59 -0
- package/core/extension/types.d.ts +11 -0
- package/core/providers/component-registry/component-registry.service.d.ts +6 -3
- package/core/providers/custom-detail-component/custom-detail-component-types.d.ts +2 -1
- package/core/providers/custom-detail-component/custom-detail-component.service.d.ts +0 -9
- package/core/providers/custom-history-entry-component/history-entry-component.service.d.ts +1 -10
- package/core/providers/dashboard-widget/dashboard-widget-types.d.ts +17 -1
- package/core/providers/modal/modal.service.d.ts +1 -3
- package/core/providers/nav-builder/nav-builder.service.d.ts +0 -85
- package/core/public_api.d.ts +16 -3
- package/core/shared/components/custom-detail-component-host/custom-detail-component-host.component.d.ts +3 -3
- package/core/shared/components/data-table-2/data-table-column.component.d.ts +2 -2
- package/core/shared/components/data-table-2/data-table-custom-component.service.d.ts +52 -0
- package/core/shared/components/data-table-2/data-table-custom-field-column.component.d.ts +0 -1
- package/core/shared/components/data-table-2/data-table2.component.d.ts +9 -2
- package/core/shared/components/modal-dialog/dialog-component-outlet.component.d.ts +2 -3
- package/core/shared/components/order-state-label/order-state-label.component.d.ts +1 -1
- package/core/shared/components/ui-extension-point/ui-extension-point.component.d.ts +13 -4
- package/core/shared/dynamic-form-inputs/default-form-inputs.d.ts +15 -0
- package/core/shared/dynamic-form-inputs/dynamic-form-input/dynamic-form-input.component.d.ts +3 -3
- package/core/shared/shared.module.d.ts +25 -25
- package/customer/components/customer-detail/customer-detail.component.d.ts +3 -1
- package/customer/components/customer-group-detail/customer-group-detail.component.d.ts +3 -1
- package/customer/components/customer-history/customer-history-entry-host.component.d.ts +2 -3
- package/customer/components/customer-list/customer-list.component.d.ts +1 -0
- package/dashboard/components/dashboard-widget/dashboard-widget.component.d.ts +1 -3
- package/esm2022/catalog/components/asset-detail/asset-detail.component.mjs +3 -3
- package/esm2022/catalog/components/collection-contents/collection-contents.component.mjs +3 -3
- package/esm2022/catalog/components/collection-data-table/collection-data-table.component.mjs +3 -3
- package/esm2022/catalog/components/collection-detail/collection-detail.component.mjs +3 -3
- package/esm2022/catalog/components/collection-list/collection-list.component.mjs +3 -3
- package/esm2022/catalog/components/create-product-variant-dialog/create-product-variant-dialog.component.mjs +8 -5
- package/esm2022/catalog/components/facet-detail/facet-detail.component.mjs +3 -3
- package/esm2022/catalog/components/facet-list/facet-list.component.mjs +3 -3
- package/esm2022/catalog/components/move-collections-dialog/move-collections-dialog.component.mjs +3 -3
- package/esm2022/catalog/components/product-detail/product-detail.component.mjs +3 -3
- package/esm2022/catalog/components/product-list/product-list.component.mjs +3 -3
- package/esm2022/catalog/components/product-options-editor/product-options-editor.component.mjs +3 -3
- package/esm2022/catalog/components/product-variant-detail/product-variant-detail.component.mjs +3 -3
- package/esm2022/catalog/components/product-variant-list/product-variant-list.component.mjs +3 -3
- package/esm2022/catalog/components/product-variants-editor/product-variants-editor.component.mjs +3 -3
- package/esm2022/catalog/components/stock-location-detail/stock-location-detail.component.mjs +3 -3
- package/esm2022/catalog/components/stock-location-list/stock-location-list.component.mjs +3 -3
- package/esm2022/core/common/base-detail.component.mjs +9 -7
- package/esm2022/core/common/component-registry-types.mjs +1 -1
- package/esm2022/core/common/utilities/create-updated-translatable.mjs +5 -23
- package/esm2022/core/common/utilities/custom-field-default-value.mjs +28 -0
- package/esm2022/core/common/version.mjs +2 -2
- package/esm2022/core/components/app-shell/app-shell.component.mjs +16 -10
- package/esm2022/core/components/channel-switcher/channel-switcher.component.mjs +3 -3
- package/esm2022/core/components/main-nav/main-nav.component.mjs +3 -3
- package/esm2022/core/components/settings-nav/settings-nav.component.mjs +1 -1
- package/esm2022/core/core.module.mjs +2 -2
- package/esm2022/core/extension/add-action-bar-item.mjs +38 -0
- package/esm2022/core/extension/add-nav-menu-item.mjs +79 -0
- package/esm2022/core/extension/components/angular-route.component.mjs +22 -0
- package/esm2022/core/extension/components/route.component.mjs +59 -0
- package/esm2022/core/extension/providers/page-metadata.service.mjs +20 -0
- package/esm2022/core/extension/register-bulk-action.mjs +63 -0
- package/esm2022/core/extension/register-custom-detail-component.mjs +20 -0
- package/esm2022/core/extension/register-dashboard-widget.mjs +36 -0
- package/esm2022/core/extension/register-data-table-component.mjs +50 -0
- package/esm2022/core/extension/register-form-input-component.mjs +60 -0
- package/esm2022/core/extension/register-history-entry-component.mjs +21 -0
- package/esm2022/core/extension/register-route-component.mjs +44 -0
- package/esm2022/core/extension/types.mjs +2 -0
- package/esm2022/core/providers/component-registry/component-registry.service.mjs +3 -3
- package/esm2022/core/providers/custom-detail-component/custom-detail-component-types.mjs +1 -1
- package/esm2022/core/providers/custom-detail-component/custom-detail-component.service.mjs +2 -19
- package/esm2022/core/providers/custom-history-entry-component/history-entry-component.service.mjs +2 -20
- package/esm2022/core/providers/dashboard-widget/dashboard-widget-types.mjs +1 -1
- package/esm2022/core/providers/data-table/data-table-filter-collection.mjs +1 -8
- package/esm2022/core/providers/data-table/data-table-filter.mjs +1 -1
- package/esm2022/core/providers/modal/modal.service.mjs +5 -7
- package/esm2022/core/providers/nav-builder/nav-builder.service.mjs +2 -113
- package/esm2022/core/public_api.mjs +17 -4
- package/esm2022/core/shared/components/action-bar-items/action-bar-items.component.mjs +3 -3
- package/esm2022/core/shared/components/asset-gallery/asset-gallery.component.mjs +3 -3
- package/esm2022/core/shared/components/card/card.component.mjs +3 -3
- package/esm2022/core/shared/components/chip/chip.component.mjs +2 -2
- package/esm2022/core/shared/components/custom-detail-component-host/custom-detail-component-host.component.mjs +13 -9
- package/esm2022/core/shared/components/data-table-2/data-table-column.component.mjs +5 -6
- package/esm2022/core/shared/components/data-table-2/data-table-custom-component.service.mjs +26 -0
- package/esm2022/core/shared/components/data-table-2/data-table-custom-field-column.component.mjs +2 -4
- package/esm2022/core/shared/components/data-table-2/data-table2.component.mjs +23 -10
- package/esm2022/core/shared/components/data-table-filter-label/data-table-filter-label.component.mjs +3 -3
- package/esm2022/core/shared/components/data-table-filter-presets/add-filter-preset-button.component.mjs +2 -2
- package/esm2022/core/shared/components/data-table-filter-presets/data-table-filter-presets.component.mjs +3 -3
- package/esm2022/core/shared/components/data-table-filter-presets/filter-preset.service.mjs +1 -1
- package/esm2022/core/shared/components/data-table-filter-presets/rename-filter-preset-dialog.component.mjs +3 -3
- package/esm2022/core/shared/components/data-table-filters/data-table-filters.component.mjs +6 -4
- package/esm2022/core/shared/components/facet-value-chip/facet-value-chip.component.mjs +2 -2
- package/esm2022/core/shared/components/modal-dialog/dialog-component-outlet.component.mjs +6 -8
- package/esm2022/core/shared/components/page-title/page-title.component.mjs +3 -3
- package/esm2022/core/shared/components/rich-text-editor/rich-text-editor.component.mjs +2 -2
- package/esm2022/core/shared/components/tabbed-custom-fields/tabbed-custom-fields.component.mjs +2 -2
- package/esm2022/core/shared/components/ui-extension-point/ui-extension-point.component.mjs +97 -5
- package/esm2022/core/shared/dynamic-form-inputs/default-form-inputs.mjs +44 -0
- package/esm2022/core/shared/dynamic-form-inputs/dynamic-form-input/dynamic-form-input.component.mjs +20 -16
- package/esm2022/core/shared/shared.module.mjs +14 -13
- package/esm2022/customer/components/customer-detail/customer-detail.component.mjs +5 -5
- package/esm2022/customer/components/customer-group-detail/customer-group-detail.component.mjs +3 -3
- package/esm2022/customer/components/customer-group-detail-dialog/customer-group-detail-dialog.component.mjs +3 -2
- package/esm2022/customer/components/customer-group-list/customer-group-list.component.mjs +3 -3
- package/esm2022/customer/components/customer-group-member-list/customer-group-member-list.component.mjs +3 -3
- package/esm2022/customer/components/customer-history/customer-history-entry-host.component.mjs +5 -7
- package/esm2022/customer/components/customer-list/customer-list.component.mjs +10 -7
- package/esm2022/dashboard/components/dashboard-widget/dashboard-widget.component.mjs +4 -7
- package/esm2022/dashboard/widgets/latest-orders-widget/latest-orders-widget.component.mjs +3 -3
- package/esm2022/marketing/components/promotion-detail/promotion-detail.component.mjs +3 -3
- package/esm2022/marketing/components/promotion-list/promotion-list.component.mjs +3 -3
- package/esm2022/order/components/order-data-table/order-data-table.component.mjs +2 -2
- package/esm2022/order/components/order-detail/order-detail.component.mjs +3 -3
- package/esm2022/order/components/order-history/order-history-entry-host.component.mjs +7 -9
- package/esm2022/order/components/order-list/order-list.component.mjs +3 -3
- package/esm2022/order/components/order-table/order-table.component.mjs +3 -3
- package/esm2022/react/components/react-custom-column.component.mjs +25 -0
- package/esm2022/react/components/react-custom-detail.component.mjs +23 -0
- package/esm2022/react/components/react-form-input.component.mjs +24 -0
- package/esm2022/react/components/react-route.component.mjs +26 -0
- package/esm2022/react/directives/react-component-host.directive.mjs +54 -0
- package/esm2022/react/public_api.mjs +19 -0
- package/esm2022/react/react-components/Card.mjs +28 -0
- package/esm2022/react/react-components/Link.mjs +30 -0
- package/esm2022/react/react-hooks/use-detail-component-data.mjs +48 -0
- package/esm2022/react/react-hooks/use-form-control.mjs +66 -0
- package/esm2022/react/react-hooks/use-injector.mjs +33 -0
- package/esm2022/react/react-hooks/use-page-metadata.mjs +41 -0
- package/esm2022/react/react-hooks/use-query.mjs +124 -0
- package/esm2022/react/register-react-custom-detail-component.mjs +33 -0
- package/esm2022/react/register-react-data-table-component.mjs +62 -0
- package/esm2022/react/register-react-form-input-component.mjs +27 -0
- package/esm2022/react/register-react-route-component.mjs +25 -0
- package/esm2022/react/types.mjs +2 -0
- package/esm2022/react/vendure-admin-ui-react.mjs +5 -0
- package/esm2022/settings/components/admin-detail/admin-detail.component.mjs +3 -3
- package/esm2022/settings/components/administrator-list/administrator-list.component.mjs +3 -3
- package/esm2022/settings/components/channel-detail/channel-detail.component.mjs +10 -10
- package/esm2022/settings/components/channel-list/channel-list.component.mjs +3 -3
- package/esm2022/settings/components/country-detail/country-detail.component.mjs +3 -3
- package/esm2022/settings/components/country-list/country-list.component.mjs +3 -3
- package/esm2022/settings/components/global-settings/global-settings.component.mjs +3 -3
- package/esm2022/settings/components/payment-method-detail/payment-method-detail.component.mjs +3 -3
- package/esm2022/settings/components/payment-method-list/payment-method-list.component.mjs +3 -3
- package/esm2022/settings/components/profile/profile.component.mjs +3 -3
- package/esm2022/settings/components/role-list/role-list.component.mjs +3 -3
- package/esm2022/settings/components/seller-detail/seller-detail.component.mjs +3 -3
- package/esm2022/settings/components/seller-list/seller-list.component.mjs +3 -3
- package/esm2022/settings/components/shipping-method-detail/shipping-method-detail.component.mjs +3 -3
- package/esm2022/settings/components/shipping-method-list/shipping-method-list.component.mjs +3 -3
- package/esm2022/settings/components/tax-category-detail/tax-category-detail.component.mjs +3 -3
- package/esm2022/settings/components/tax-category-list/tax-category-list.component.mjs +3 -3
- package/esm2022/settings/components/tax-rate-detail/tax-rate-detail.component.mjs +3 -3
- package/esm2022/settings/components/tax-rate-list/tax-rate-list.component.mjs +3 -3
- package/esm2022/settings/components/zone-detail/zone-detail.component.mjs +3 -3
- package/esm2022/settings/components/zone-list/zone-list.component.mjs +3 -3
- package/esm2022/settings/components/zone-member-list/zone-member-list.component.mjs +3 -3
- package/esm2022/settings/settings.routes.mjs +1 -1
- package/esm2022/system/components/job-list/job-list.component.mjs +3 -3
- package/fesm2022/vendure-admin-ui-catalog.mjs +34 -31
- package/fesm2022/vendure-admin-ui-catalog.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-core.mjs +659 -346
- package/fesm2022/vendure-admin-ui-core.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-customer.mjs +19 -18
- package/fesm2022/vendure-admin-ui-customer.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-dashboard.mjs +5 -8
- package/fesm2022/vendure-admin-ui-dashboard.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-marketing.mjs +4 -4
- package/fesm2022/vendure-admin-ui-marketing.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-order.mjs +14 -16
- package/fesm2022/vendure-admin-ui-order.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-react.mjs +641 -0
- package/fesm2022/vendure-admin-ui-react.mjs.map +1 -0
- package/fesm2022/vendure-admin-ui-settings.mjs +41 -41
- package/fesm2022/vendure-admin-ui-settings.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-system.mjs +2 -2
- package/fesm2022/vendure-admin-ui-system.mjs.map +1 -1
- package/marketing/components/promotion-detail/promotion-detail.component.d.ts +3 -1
- package/order/components/order-detail/order-detail.component.d.ts +3 -1
- package/order/components/order-history/order-history-entry-host.component.d.ts +2 -3
- package/package.json +22 -14
- package/react/components/react-custom-column.component.d.ts +17 -0
- package/react/components/react-custom-detail.component.d.ts +24 -0
- package/react/components/react-form-input.component.d.ts +20 -0
- package/react/components/react-route.component.d.ts +10 -0
- package/react/directives/react-component-host.directive.d.ts +23 -0
- package/react/index.d.ts +5 -0
- package/react/public_api.d.ts +17 -0
- package/react/react-components/Card.d.ts +24 -0
- package/react/react-components/Link.d.ts +22 -0
- package/react/react-hooks/use-detail-component-data.d.ts +32 -0
- package/react/react-hooks/use-form-control.d.ts +29 -0
- package/react/react-hooks/use-injector.d.ts +24 -0
- package/react/react-hooks/use-page-metadata.d.ts +30 -0
- package/react/react-hooks/use-query.d.ts +92 -0
- package/react/register-react-custom-detail-component.d.ts +38 -0
- package/react/register-react-data-table-component.d.ts +81 -0
- package/react/register-react-form-input-component.d.ts +9 -0
- package/react/register-react-route-component.d.ts +26 -0
- package/react/types.d.ts +17 -0
- package/settings/components/admin-detail/admin-detail.component.d.ts +3 -1
- package/settings/components/channel-detail/channel-detail.component.d.ts +5 -3
- package/settings/components/country-detail/country-detail.component.d.ts +3 -1
- package/settings/components/global-settings/global-settings.component.d.ts +3 -1
- package/settings/components/payment-method-detail/payment-method-detail.component.d.ts +3 -1
- package/settings/components/profile/profile.component.d.ts +3 -1
- package/settings/components/seller-detail/seller-detail.component.d.ts +3 -1
- package/settings/components/shipping-method-detail/shipping-method-detail.component.d.ts +3 -1
- package/settings/components/tax-category-detail/tax-category-detail.component.d.ts +3 -1
- package/settings/components/tax-rate-detail/tax-rate-detail.component.d.ts +3 -1
- package/settings/components/zone-detail/zone-detail.component.d.ts +3 -1
- package/static/i18n-messages/cs.json +789 -789
- package/static/i18n-messages/de.json +789 -789
- package/static/i18n-messages/en.json +789 -789
- package/static/i18n-messages/es.json +789 -789
- package/static/i18n-messages/fr.json +789 -789
- package/static/i18n-messages/he.json +789 -789
- package/static/i18n-messages/it.json +789 -789
- package/static/i18n-messages/pl.json +789 -789
- package/static/i18n-messages/pt_BR.json +789 -789
- package/static/i18n-messages/pt_PT.json +789 -789
- package/static/i18n-messages/ru.json +789 -789
- package/static/i18n-messages/uk.json +789 -789
- package/static/i18n-messages/zh_Hans.json +789 -789
- package/static/i18n-messages/zh_Hant.json +789 -789
- package/static/styles/_mixins.scss +4 -4
- package/static/styles/global/_forms.scss +2 -2
- package/static/styles/rtl.scss +1 -1
- package/static/styles/theme/dark.scss +1 -16
- package/static/styles/theme/default.scss +1 -0
- package/static/theme.min.css +1 -1
- package/core/shared/dynamic-form-inputs/register-dynamic-input-components.d.ts +0 -64
- package/esm2022/core/providers/bulk-action-registry/register-bulk-action.mjs +0 -63
- package/esm2022/core/providers/dashboard-widget/register-dashboard-widget.mjs +0 -32
- package/esm2022/core/shared/dynamic-form-inputs/register-dynamic-input-components.mjs +0 -102
|
@@ -49,14 +49,14 @@ export class MainNavComponent extends BaseNavComponent {
|
|
|
49
49
|
this.itemClick.emit(item);
|
|
50
50
|
}
|
|
51
51
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: MainNavComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
52
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.2", type: MainNavComponent, selector: "vdr-main-nav", inputs: { displayMode: "displayMode" }, outputs: { itemClick: "itemClick" }, usesInheritance: true, ngImport: i0, template: "<nav class=\"main-nav\">\r\n <section class=\"\">\r\n <ng-container *ngFor=\"let section of mainMenuConfig$ | async\">\r\n <section\r\n class=\"nav-group\"\r\n [attr.data-section-id]=\"section.id\"\r\n [class.collapsible]=\"section.collapsible\"\r\n [class.collapsed]=\"section.collapsible && !expandedSections.includes(section.id)\"\r\n routerLinkActive=\"active\"\r\n (isActiveChange)=\"setExpanded(section, $event)\"\r\n *ngIf=\"shouldDisplayLink(section)\"\r\n >\r\n <vdr-ui-extension-point\r\n [locationId]=\"section.id\"\r\n api=\"navMenu\"\r\n [topPx]=\"
|
|
52
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.2", type: MainNavComponent, selector: "vdr-main-nav", inputs: { displayMode: "displayMode" }, outputs: { itemClick: "itemClick" }, usesInheritance: true, ngImport: i0, template: "<nav class=\"main-nav\">\r\n <section class=\"\">\r\n <ng-container *ngFor=\"let section of mainMenuConfig$ | async\">\r\n <section\r\n class=\"nav-group\"\r\n [attr.data-section-id]=\"section.id\"\r\n [class.collapsible]=\"section.collapsible\"\r\n [class.collapsed]=\"section.collapsible && !expandedSections.includes(section.id)\"\r\n routerLinkActive=\"active\"\r\n (isActiveChange)=\"setExpanded(section, $event)\"\r\n *ngIf=\"shouldDisplayLink(section)\"\r\n >\r\n <vdr-ui-extension-point\r\n [locationId]=\"section.id\"\r\n api=\"navMenu\"\r\n [topPx]=\"0\"\r\n [leftPx]=\"8\"\r\n display=\"block\"\r\n >\r\n <div class=\"section-header\">\r\n <ng-container\r\n *ngIf=\"navBuilderService.sectionBadges[section.id] | async as sectionBadge\"\r\n >\r\n <vdr-status-badge\r\n *ngIf=\"sectionBadge !== 'none'\"\r\n [type]=\"sectionBadge\"\r\n ></vdr-status-badge>\r\n </ng-container>\r\n <label class=\"nav-group-header mx-4\" [for]=\"section.id\">{{\r\n section.label | translate\r\n }}</label>\r\n <button *ngIf=\"section.collapsible\" class=\"button-small bg-weight-150\" (click)=\"toggleExpand(section)\">\r\n <clr-icon\r\n [attr.shape]=\"expandedSections.includes(section.id) ? 'caret up' : 'caret down'\"\r\n size=\"12\"\r\n [title]=\"'common.expand-entries' | translate\"\r\n ></clr-icon>\r\n </button>\r\n </div>\r\n <div class=\"nav-list\" [ngStyle]=\"getStyleForSection(section)\">\r\n <ng-container *ngFor=\"let item of section.items\">\r\n <div\r\n *ngIf=\"shouldDisplayLink(item)\"\r\n class=\"nav-link px-4\"\r\n routerLinkActive=\"active\"\r\n >\r\n <a\r\n [attr.data-item-id]=\"section.id\"\r\n [routerLink]=\"getRouterLink(item)\"\r\n (click)=\"onItemClick(item, $event)\"\r\n >\r\n <ng-container *ngIf=\"item.statusBadge | async as itemBadge\">\r\n <vdr-status-badge\r\n *ngIf=\"itemBadge.type !== 'none'\"\r\n [type]=\"itemBadge.type\"\r\n ></vdr-status-badge>\r\n </ng-container>\r\n <clr-icon\r\n [attr.shape]=\"item.icon || 'block'\"\r\n size=\"16\"\r\n [title]=\"item.label | translate\"\r\n ></clr-icon>\r\n <span class=\"\">{{ item.label | translate }}</span>\r\n </a>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </vdr-ui-extension-point>\r\n </section>\r\n </ng-container>\r\n </section>\r\n</nav>\r\n", styles: [":host{background-color:var(--clr-nav-background-color)}nav.main-nav{height:100%;border-right-color:var(--clr-sidenav-border-color)}.main-nav .nav-group{margin-bottom:calc(var(--space-unit) * 2);padding:calc(var(--space-unit) * 2) 0;overflow:hidden;transition:padding .2s ease-in-out,margin-bottom .2s ease-in-out}.main-nav .nav-group.collapsible.collapsed{padding:3px 0;margin-bottom:calc(var(--space-unit) * 1)}.main-nav .nav-group.active:not(.collapsible.collapsed){background-color:var(--color-weight-125)}.main-nav .nav-group .nav-list{margin:0;transition:max-height .2s ease-in-out,opacity .2s ease-in-out}.main-nav .nav-group .section-header{display:flex;align-items:flex-start;justify-content:space-between;padding-inline-end:calc(var(--space-unit) * 4)}.main-nav .nav-group .nav-group-header{display:block;margin:0 0 var(--space-unit);font-size:var(--font-size-xs);letter-spacing:.05em;color:var(--color-weight-700);text-transform:uppercase}.main-nav .nav-group .nav-link{display:flex;align-items:center;line-height:100%;border-inline-end:2px solid transparent;font-size:var(--font-size-sm);padding:var(--space-unit) 0;transition:border .1s,color .1s}.main-nav .nav-group .nav-link a:link,.main-nav .nav-group .nav-link a:visited{color:var(--color-weight-700)}.main-nav .nav-group .nav-link:hover{color:var(--color-left-nav-text-hover);border-right-color:var(--color-weight-300)}.main-nav .nav-group .nav-link.active,.main-nav .nav-group .nav-link.active a:link,.main-nav .nav-group .nav-link.active a:visited{color:var(--color-text-active);border-right-color:var(--color-primary-500)}.main-nav .nav-group .nav-link.active clr-icon,.main-nav .nav-group .nav-link.active a:link clr-icon,.main-nav .nav-group .nav-link.active a:visited clr-icon{color:var(--color-primary-500)}.nav-list clr-icon{flex-shrink:0;margin-inline-end:var(--space-unit)}.nav-group{-webkit-hyphens:auto;hyphens:auto}.nav-group,.nav-link{position:relative}.nav-group vdr-status-badge{left:27px;top:6px}.nav-group .section-header vdr-status-badge{left:20px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.ClrIconCustomTag, selector: "clr-icon" }, { kind: "directive", type: i2.ClrLabel, selector: "label", inputs: ["for"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: i4.StatusBadgeComponent, selector: "vdr-status-badge", inputs: ["type"] }, { kind: "component", type: i5.UiExtensionPointComponent, selector: "vdr-ui-extension-point", inputs: ["locationId", "metadata", "topPx", "leftPx", "display", "api"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] }); }
|
|
53
53
|
}
|
|
54
54
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: MainNavComponent, decorators: [{
|
|
55
55
|
type: Component,
|
|
56
|
-
args: [{ selector: 'vdr-main-nav', template: "<nav class=\"main-nav\">\r\n <section class=\"\">\r\n <ng-container *ngFor=\"let section of mainMenuConfig$ | async\">\r\n <section\r\n class=\"nav-group\"\r\n [attr.data-section-id]=\"section.id\"\r\n [class.collapsible]=\"section.collapsible\"\r\n [class.collapsed]=\"section.collapsible && !expandedSections.includes(section.id)\"\r\n routerLinkActive=\"active\"\r\n (isActiveChange)=\"setExpanded(section, $event)\"\r\n *ngIf=\"shouldDisplayLink(section)\"\r\n >\r\n <vdr-ui-extension-point\r\n [locationId]=\"section.id\"\r\n api=\"navMenu\"\r\n [topPx]=\"
|
|
56
|
+
args: [{ selector: 'vdr-main-nav', template: "<nav class=\"main-nav\">\r\n <section class=\"\">\r\n <ng-container *ngFor=\"let section of mainMenuConfig$ | async\">\r\n <section\r\n class=\"nav-group\"\r\n [attr.data-section-id]=\"section.id\"\r\n [class.collapsible]=\"section.collapsible\"\r\n [class.collapsed]=\"section.collapsible && !expandedSections.includes(section.id)\"\r\n routerLinkActive=\"active\"\r\n (isActiveChange)=\"setExpanded(section, $event)\"\r\n *ngIf=\"shouldDisplayLink(section)\"\r\n >\r\n <vdr-ui-extension-point\r\n [locationId]=\"section.id\"\r\n api=\"navMenu\"\r\n [topPx]=\"0\"\r\n [leftPx]=\"8\"\r\n display=\"block\"\r\n >\r\n <div class=\"section-header\">\r\n <ng-container\r\n *ngIf=\"navBuilderService.sectionBadges[section.id] | async as sectionBadge\"\r\n >\r\n <vdr-status-badge\r\n *ngIf=\"sectionBadge !== 'none'\"\r\n [type]=\"sectionBadge\"\r\n ></vdr-status-badge>\r\n </ng-container>\r\n <label class=\"nav-group-header mx-4\" [for]=\"section.id\">{{\r\n section.label | translate\r\n }}</label>\r\n <button *ngIf=\"section.collapsible\" class=\"button-small bg-weight-150\" (click)=\"toggleExpand(section)\">\r\n <clr-icon\r\n [attr.shape]=\"expandedSections.includes(section.id) ? 'caret up' : 'caret down'\"\r\n size=\"12\"\r\n [title]=\"'common.expand-entries' | translate\"\r\n ></clr-icon>\r\n </button>\r\n </div>\r\n <div class=\"nav-list\" [ngStyle]=\"getStyleForSection(section)\">\r\n <ng-container *ngFor=\"let item of section.items\">\r\n <div\r\n *ngIf=\"shouldDisplayLink(item)\"\r\n class=\"nav-link px-4\"\r\n routerLinkActive=\"active\"\r\n >\r\n <a\r\n [attr.data-item-id]=\"section.id\"\r\n [routerLink]=\"getRouterLink(item)\"\r\n (click)=\"onItemClick(item, $event)\"\r\n >\r\n <ng-container *ngIf=\"item.statusBadge | async as itemBadge\">\r\n <vdr-status-badge\r\n *ngIf=\"itemBadge.type !== 'none'\"\r\n [type]=\"itemBadge.type\"\r\n ></vdr-status-badge>\r\n </ng-container>\r\n <clr-icon\r\n [attr.shape]=\"item.icon || 'block'\"\r\n size=\"16\"\r\n [title]=\"item.label | translate\"\r\n ></clr-icon>\r\n <span class=\"\">{{ item.label | translate }}</span>\r\n </a>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </vdr-ui-extension-point>\r\n </section>\r\n </ng-container>\r\n </section>\r\n</nav>\r\n", styles: [":host{background-color:var(--clr-nav-background-color)}nav.main-nav{height:100%;border-right-color:var(--clr-sidenav-border-color)}.main-nav .nav-group{margin-bottom:calc(var(--space-unit) * 2);padding:calc(var(--space-unit) * 2) 0;overflow:hidden;transition:padding .2s ease-in-out,margin-bottom .2s ease-in-out}.main-nav .nav-group.collapsible.collapsed{padding:3px 0;margin-bottom:calc(var(--space-unit) * 1)}.main-nav .nav-group.active:not(.collapsible.collapsed){background-color:var(--color-weight-125)}.main-nav .nav-group .nav-list{margin:0;transition:max-height .2s ease-in-out,opacity .2s ease-in-out}.main-nav .nav-group .section-header{display:flex;align-items:flex-start;justify-content:space-between;padding-inline-end:calc(var(--space-unit) * 4)}.main-nav .nav-group .nav-group-header{display:block;margin:0 0 var(--space-unit);font-size:var(--font-size-xs);letter-spacing:.05em;color:var(--color-weight-700);text-transform:uppercase}.main-nav .nav-group .nav-link{display:flex;align-items:center;line-height:100%;border-inline-end:2px solid transparent;font-size:var(--font-size-sm);padding:var(--space-unit) 0;transition:border .1s,color .1s}.main-nav .nav-group .nav-link a:link,.main-nav .nav-group .nav-link a:visited{color:var(--color-weight-700)}.main-nav .nav-group .nav-link:hover{color:var(--color-left-nav-text-hover);border-right-color:var(--color-weight-300)}.main-nav .nav-group .nav-link.active,.main-nav .nav-group .nav-link.active a:link,.main-nav .nav-group .nav-link.active a:visited{color:var(--color-text-active);border-right-color:var(--color-primary-500)}.main-nav .nav-group .nav-link.active clr-icon,.main-nav .nav-group .nav-link.active a:link clr-icon,.main-nav .nav-group .nav-link.active a:visited clr-icon{color:var(--color-primary-500)}.nav-list clr-icon{flex-shrink:0;margin-inline-end:var(--space-unit)}.nav-group{-webkit-hyphens:auto;hyphens:auto}.nav-group,.nav-link{position:relative}.nav-group vdr-status-badge{left:27px;top:6px}.nav-group .section-header vdr-status-badge{left:20px}\n"] }]
|
|
57
57
|
}], propDecorators: { displayMode: [{
|
|
58
58
|
type: Input
|
|
59
59
|
}], itemClick: [{
|
|
60
60
|
type: Output
|
|
61
61
|
}] } });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi1uYXYuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb3JlL3NyYy9jb21wb25lbnRzL21haW4tbmF2L21haW4tbmF2LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29yZS9zcmMvY29tcG9uZW50cy9tYWluLW5hdi9tYWluLW5hdi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9FLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7Ozs7QUFPbEUsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGdCQUFnQjtJQUx0RDs7UUFPYyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQWUsQ0FBQztRQUV0RCxxQkFBZ0IsR0FBYSxFQUFFLENBQUM7S0E0Q25DO0lBMUNZLFFBQVE7UUFDYixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFakIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDMUQsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQ1gsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUNoQixJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxLQUFLLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FDekUsQ0FDSixDQUNKLENBQUM7SUFDTixDQUFDO0lBRUQsWUFBWSxDQUFDLE9BQXVCO1FBQ2hDLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUU7WUFDNUMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ2pGO2FBQU07WUFDSCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUMxQztJQUNMLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBdUIsRUFBRSxRQUFpQjtRQUNsRCxJQUFJLFFBQVEsRUFBRTtZQUNWLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQzFDO2FBQU07WUFDSCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDakY7SUFDTCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsT0FBdUI7UUFDdEMsSUFBSSxPQUFPLENBQUMsV0FBVyxFQUFFO1lBQ3JCLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUU7Z0JBQzVDLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsQ0FBQzthQUM3RjtpQkFBTTtnQkFDSCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsQ0FBQzthQUNqRTtTQUNKO0lBQ0wsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFpQixFQUFFLEtBQWlCO1FBQzVDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5QixDQUFDOzhHQS9DUSxnQkFBZ0I7a0dBQWhCLGdCQUFnQix3SkNYN0IsdzNIQXdFQTs7MkZEN0RhLGdCQUFnQjtrQkFMNUIsU0FBUzsrQkFDSSxjQUFjOzhCQUtmLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0ksU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IE5hdk1lbnVJdGVtLCBOYXZNZW51U2VjdGlvbiB9IGZyb20gJy4uLy4uL3Byb3ZpZGVycy9uYXYtYnVpbGRlci9uYXYtYnVpbGRlci10eXBlcyc7XHJcbmltcG9ydCB7IEJhc2VOYXZDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlLW5hdi9iYXNlLW5hdi5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3Zkci1tYWluLW5hdicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vbWFpbi1uYXYuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vbWFpbi1uYXYuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1haW5OYXZDb21wb25lbnQgZXh0ZW5kcyBCYXNlTmF2Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBJbnB1dCgpIGRpc3BsYXlNb2RlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcbiAgICBAT3V0cHV0KCkgaXRlbUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxOYXZNZW51SXRlbT4oKTtcclxuICAgIG1haW5NZW51Q29uZmlnJDogT2JzZXJ2YWJsZTxOYXZNZW51U2VjdGlvbltdPjtcclxuICAgIGV4cGFuZGVkU2VjdGlvbnM6IHN0cmluZ1tdID0gW107XHJcblxyXG4gICAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuXHJcbiAgICAgICAgdGhpcy5tYWluTWVudUNvbmZpZyQgPSB0aGlzLm5hdkJ1aWxkZXJTZXJ2aWNlLm1lbnVDb25maWckLnBpcGUoXHJcbiAgICAgICAgICAgIG1hcChzZWN0aW9ucyA9PlxyXG4gICAgICAgICAgICAgICAgc2VjdGlvbnMuZmlsdGVyKHMgPT5cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRpc3BsYXlNb2RlID8gcy5kaXNwbGF5TW9kZSA9PT0gdGhpcy5kaXNwbGF5TW9kZSA6ICFzLmRpc3BsYXlNb2RlLFxyXG4gICAgICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgKSxcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHRvZ2dsZUV4cGFuZChzZWN0aW9uOiBOYXZNZW51U2VjdGlvbikge1xyXG4gICAgICAgIGlmICh0aGlzLmV4cGFuZGVkU2VjdGlvbnMuaW5jbHVkZXMoc2VjdGlvbi5pZCkpIHtcclxuICAgICAgICAgICAgdGhpcy5leHBhbmRlZFNlY3Rpb25zID0gdGhpcy5leHBhbmRlZFNlY3Rpb25zLmZpbHRlcihpZCA9PiBpZCAhPT0gc2VjdGlvbi5pZCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5leHBhbmRlZFNlY3Rpb25zLnB1c2goc2VjdGlvbi5pZCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHNldEV4cGFuZGVkKHNlY3Rpb246IE5hdk1lbnVTZWN0aW9uLCBleHBhbmRlZDogYm9vbGVhbikge1xyXG4gICAgICAgIGlmIChleHBhbmRlZCkge1xyXG4gICAgICAgICAgICB0aGlzLmV4cGFuZGVkU2VjdGlvbnMucHVzaChzZWN0aW9uLmlkKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmV4cGFuZGVkU2VjdGlvbnMgPSB0aGlzLmV4cGFuZGVkU2VjdGlvbnMuZmlsdGVyKGlkID0+IGlkICE9PSBzZWN0aW9uLmlkKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0U3R5bGVGb3JTZWN0aW9uKHNlY3Rpb246IE5hdk1lbnVTZWN0aW9uKSB7XHJcbiAgICAgICAgaWYgKHNlY3Rpb24uY29sbGFwc2libGUpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuZXhwYW5kZWRTZWN0aW9ucy5pbmNsdWRlcyhzZWN0aW9uLmlkKSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgbWF4SGVpZ2h0OiBgJHtzZWN0aW9uLml0ZW1zLmxlbmd0aCAqIDMzfXB4YCwgb3BhY2l0eTogMSwgdmlzaWJpbGl0eTogJ3Zpc2libGUnIH07XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4geyBtYXhIZWlnaHQ6ICcwcHgnLCBvcGFjaXR5OiAwLCB2aXNpYmlsaXR5OiAnaGlkZGVuJyB9O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG9uSXRlbUNsaWNrKGl0ZW06IE5hdk1lbnVJdGVtLCBldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgICAgIGl0ZW0ub25DbGljaz8uKGV2ZW50KTtcclxuICAgICAgICB0aGlzLml0ZW1DbGljay5lbWl0KGl0ZW0pO1xyXG4gICAgfVxyXG59XHJcbiIsIjxuYXYgY2xhc3M9XCJtYWluLW5hdlwiPlxyXG4gICAgPHNlY3Rpb24gY2xhc3M9XCJcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzZWN0aW9uIG9mIG1haW5NZW51Q29uZmlnJCB8IGFzeW5jXCI+XHJcbiAgICAgICAgICAgIDxzZWN0aW9uXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1ncm91cFwiXHJcbiAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLXNlY3Rpb24taWRdPVwic2VjdGlvbi5pZFwiXHJcbiAgICAgICAgICAgICAgICBbY2xhc3MuY29sbGFwc2libGVdPVwic2VjdGlvbi5jb2xsYXBzaWJsZVwiXHJcbiAgICAgICAgICAgICAgICBbY2xhc3MuY29sbGFwc2VkXT1cInNlY3Rpb24uY29sbGFwc2libGUgJiYgIWV4cGFuZGVkU2VjdGlvbnMuaW5jbHVkZXMoc2VjdGlvbi5pZClcIlxyXG4gICAgICAgICAgICAgICAgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAoaXNBY3RpdmVDaGFuZ2UpPVwic2V0RXhwYW5kZWQoc2VjdGlvbiwgJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cInNob3VsZERpc3BsYXlMaW5rKHNlY3Rpb24pXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPHZkci11aS1leHRlbnNpb24tcG9pbnRcclxuICAgICAgICAgICAgICAgICAgICBbbG9jYXRpb25JZF09XCJzZWN0aW9uLmlkXCJcclxuICAgICAgICAgICAgICAgICAgICBhcGk9XCJuYXZNZW51XCJcclxuICAgICAgICAgICAgICAgICAgICBbdG9wUHhdPVwiLTZcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtsZWZ0UHhdPVwiOFwiXHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheT1cImJsb2NrXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VjdGlvbi1oZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJuYXZCdWlsZGVyU2VydmljZS5zZWN0aW9uQmFkZ2VzW3NlY3Rpb24uaWRdIHwgYXN5bmMgYXMgc2VjdGlvbkJhZGdlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHZkci1zdGF0dXMtYmFkZ2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInNlY3Rpb25CYWRnZSAhPT0gJ25vbmUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCJzZWN0aW9uQmFkZ2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvdmRyLXN0YXR1cy1iYWRnZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cIm5hdi1ncm91cC1oZWFkZXIgbXgtNFwiIFtmb3JdPVwic2VjdGlvbi5pZFwiPnt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWN0aW9uLmxhYmVsIHwgdHJhbnNsYXRlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH19PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cInNlY3Rpb24uY29sbGFwc2libGVcIiBjbGFzcz1cImJ1dHRvbi1zbWFsbCBiZy13ZWlnaHQtMTUwXCIgKGNsaWNrKT1cInRvZ2dsZUV4cGFuZChzZWN0aW9uKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsci1pY29uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc2hhcGVdPVwiZXhwYW5kZWRTZWN0aW9ucy5pbmNsdWRlcyhzZWN0aW9uLmlkKSA/ICdjYXJldCB1cCcgOiAnY2FyZXQgZG93bidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCIxMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cIidjb21tb24uZXhwYW5kLWVudHJpZXMnIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2Nsci1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmF2LWxpc3RcIiBbbmdTdHlsZV09XCJnZXRTdHlsZUZvclNlY3Rpb24oc2VjdGlvbilcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBzZWN0aW9uLml0ZW1zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJzaG91bGREaXNwbGF5TGluayhpdGVtKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJuYXYtbGluayBweC00XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLWl0ZW0taWRdPVwic2VjdGlvbi5pZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cImdldFJvdXRlckxpbmsoaXRlbSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25JdGVtQ2xpY2soaXRlbSwgJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbS5zdGF0dXNCYWRnZSB8IGFzeW5jIGFzIGl0ZW1CYWRnZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHZkci1zdGF0dXMtYmFkZ2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIml0ZW1CYWRnZS50eXBlICE9PSAnbm9uZSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cIml0ZW1CYWRnZS50eXBlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L3Zkci1zdGF0dXMtYmFkZ2U+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xyLWljb25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnNoYXBlXT1cIml0ZW0uaWNvbiB8fCAnYmxvY2snXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCIxNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwiaXRlbS5sYWJlbCB8IHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2Nsci1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIlwiPnt7IGl0ZW0ubGFiZWwgfCB0cmFuc2xhdGUgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC92ZHItdWktZXh0ZW5zaW9uLXBvaW50PlxyXG4gICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L3NlY3Rpb24+XHJcbjwvbmF2PlxyXG4iXX0=
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi1uYXYuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb3JlL3NyYy9jb21wb25lbnRzL21haW4tbmF2L21haW4tbmF2LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29yZS9zcmMvY29tcG9uZW50cy9tYWluLW5hdi9tYWluLW5hdi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9FLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7Ozs7QUFPbEUsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGdCQUFnQjtJQUx0RDs7UUFPYyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQWUsQ0FBQztRQUV0RCxxQkFBZ0IsR0FBYSxFQUFFLENBQUM7S0E0Q25DO0lBMUNZLFFBQVE7UUFDYixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFakIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDMUQsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQ1gsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUNoQixJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxLQUFLLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FDekUsQ0FDSixDQUNKLENBQUM7SUFDTixDQUFDO0lBRUQsWUFBWSxDQUFDLE9BQXVCO1FBQ2hDLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUU7WUFDNUMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ2pGO2FBQU07WUFDSCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUMxQztJQUNMLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBdUIsRUFBRSxRQUFpQjtRQUNsRCxJQUFJLFFBQVEsRUFBRTtZQUNWLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQzFDO2FBQU07WUFDSCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDakY7SUFDTCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsT0FBdUI7UUFDdEMsSUFBSSxPQUFPLENBQUMsV0FBVyxFQUFFO1lBQ3JCLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUU7Z0JBQzVDLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsQ0FBQzthQUM3RjtpQkFBTTtnQkFDSCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsQ0FBQzthQUNqRTtTQUNKO0lBQ0wsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFpQixFQUFFLEtBQWlCO1FBQzVDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5QixDQUFDOzhHQS9DUSxnQkFBZ0I7a0dBQWhCLGdCQUFnQix3SkNYN0IsdTNIQXdFQTs7MkZEN0RhLGdCQUFnQjtrQkFMNUIsU0FBUzsrQkFDSSxjQUFjOzhCQUtmLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0ksU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IE5hdk1lbnVJdGVtLCBOYXZNZW51U2VjdGlvbiB9IGZyb20gJy4uLy4uL3Byb3ZpZGVycy9uYXYtYnVpbGRlci9uYXYtYnVpbGRlci10eXBlcyc7XHJcbmltcG9ydCB7IEJhc2VOYXZDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlLW5hdi9iYXNlLW5hdi5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3Zkci1tYWluLW5hdicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vbWFpbi1uYXYuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vbWFpbi1uYXYuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1haW5OYXZDb21wb25lbnQgZXh0ZW5kcyBCYXNlTmF2Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBJbnB1dCgpIGRpc3BsYXlNb2RlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcbiAgICBAT3V0cHV0KCkgaXRlbUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxOYXZNZW51SXRlbT4oKTtcclxuICAgIG1haW5NZW51Q29uZmlnJDogT2JzZXJ2YWJsZTxOYXZNZW51U2VjdGlvbltdPjtcclxuICAgIGV4cGFuZGVkU2VjdGlvbnM6IHN0cmluZ1tdID0gW107XHJcblxyXG4gICAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuXHJcbiAgICAgICAgdGhpcy5tYWluTWVudUNvbmZpZyQgPSB0aGlzLm5hdkJ1aWxkZXJTZXJ2aWNlLm1lbnVDb25maWckLnBpcGUoXHJcbiAgICAgICAgICAgIG1hcChzZWN0aW9ucyA9PlxyXG4gICAgICAgICAgICAgICAgc2VjdGlvbnMuZmlsdGVyKHMgPT5cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRpc3BsYXlNb2RlID8gcy5kaXNwbGF5TW9kZSA9PT0gdGhpcy5kaXNwbGF5TW9kZSA6ICFzLmRpc3BsYXlNb2RlLFxyXG4gICAgICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgKSxcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHRvZ2dsZUV4cGFuZChzZWN0aW9uOiBOYXZNZW51U2VjdGlvbikge1xyXG4gICAgICAgIGlmICh0aGlzLmV4cGFuZGVkU2VjdGlvbnMuaW5jbHVkZXMoc2VjdGlvbi5pZCkpIHtcclxuICAgICAgICAgICAgdGhpcy5leHBhbmRlZFNlY3Rpb25zID0gdGhpcy5leHBhbmRlZFNlY3Rpb25zLmZpbHRlcihpZCA9PiBpZCAhPT0gc2VjdGlvbi5pZCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5leHBhbmRlZFNlY3Rpb25zLnB1c2goc2VjdGlvbi5pZCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHNldEV4cGFuZGVkKHNlY3Rpb246IE5hdk1lbnVTZWN0aW9uLCBleHBhbmRlZDogYm9vbGVhbikge1xyXG4gICAgICAgIGlmIChleHBhbmRlZCkge1xyXG4gICAgICAgICAgICB0aGlzLmV4cGFuZGVkU2VjdGlvbnMucHVzaChzZWN0aW9uLmlkKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmV4cGFuZGVkU2VjdGlvbnMgPSB0aGlzLmV4cGFuZGVkU2VjdGlvbnMuZmlsdGVyKGlkID0+IGlkICE9PSBzZWN0aW9uLmlkKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0U3R5bGVGb3JTZWN0aW9uKHNlY3Rpb246IE5hdk1lbnVTZWN0aW9uKSB7XHJcbiAgICAgICAgaWYgKHNlY3Rpb24uY29sbGFwc2libGUpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuZXhwYW5kZWRTZWN0aW9ucy5pbmNsdWRlcyhzZWN0aW9uLmlkKSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgbWF4SGVpZ2h0OiBgJHtzZWN0aW9uLml0ZW1zLmxlbmd0aCAqIDMzfXB4YCwgb3BhY2l0eTogMSwgdmlzaWJpbGl0eTogJ3Zpc2libGUnIH07XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4geyBtYXhIZWlnaHQ6ICcwcHgnLCBvcGFjaXR5OiAwLCB2aXNpYmlsaXR5OiAnaGlkZGVuJyB9O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG9uSXRlbUNsaWNrKGl0ZW06IE5hdk1lbnVJdGVtLCBldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgICAgIGl0ZW0ub25DbGljaz8uKGV2ZW50KTtcclxuICAgICAgICB0aGlzLml0ZW1DbGljay5lbWl0KGl0ZW0pO1xyXG4gICAgfVxyXG59XHJcbiIsIjxuYXYgY2xhc3M9XCJtYWluLW5hdlwiPlxyXG4gICAgPHNlY3Rpb24gY2xhc3M9XCJcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzZWN0aW9uIG9mIG1haW5NZW51Q29uZmlnJCB8IGFzeW5jXCI+XHJcbiAgICAgICAgICAgIDxzZWN0aW9uXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1ncm91cFwiXHJcbiAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLXNlY3Rpb24taWRdPVwic2VjdGlvbi5pZFwiXHJcbiAgICAgICAgICAgICAgICBbY2xhc3MuY29sbGFwc2libGVdPVwic2VjdGlvbi5jb2xsYXBzaWJsZVwiXHJcbiAgICAgICAgICAgICAgICBbY2xhc3MuY29sbGFwc2VkXT1cInNlY3Rpb24uY29sbGFwc2libGUgJiYgIWV4cGFuZGVkU2VjdGlvbnMuaW5jbHVkZXMoc2VjdGlvbi5pZClcIlxyXG4gICAgICAgICAgICAgICAgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAoaXNBY3RpdmVDaGFuZ2UpPVwic2V0RXhwYW5kZWQoc2VjdGlvbiwgJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cInNob3VsZERpc3BsYXlMaW5rKHNlY3Rpb24pXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPHZkci11aS1leHRlbnNpb24tcG9pbnRcclxuICAgICAgICAgICAgICAgICAgICBbbG9jYXRpb25JZF09XCJzZWN0aW9uLmlkXCJcclxuICAgICAgICAgICAgICAgICAgICBhcGk9XCJuYXZNZW51XCJcclxuICAgICAgICAgICAgICAgICAgICBbdG9wUHhdPVwiMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2xlZnRQeF09XCI4XCJcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5PVwiYmxvY2tcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWN0aW9uLWhlYWRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIm5hdkJ1aWxkZXJTZXJ2aWNlLnNlY3Rpb25CYWRnZXNbc2VjdGlvbi5pZF0gfCBhc3luYyBhcyBzZWN0aW9uQmFkZ2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dmRyLXN0YXR1cy1iYWRnZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwic2VjdGlvbkJhZGdlICE9PSAnbm9uZSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cInNlY3Rpb25CYWRnZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC92ZHItc3RhdHVzLWJhZGdlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwibmF2LWdyb3VwLWhlYWRlciBteC00XCIgW2Zvcl09XCJzZWN0aW9uLmlkXCI+e3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlY3Rpb24ubGFiZWwgfCB0cmFuc2xhdGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgfX08L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwic2VjdGlvbi5jb2xsYXBzaWJsZVwiIGNsYXNzPVwiYnV0dG9uLXNtYWxsIGJnLXdlaWdodC0xNTBcIiAoY2xpY2spPVwidG9nZ2xlRXhwYW5kKHNlY3Rpb24pXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xyLWljb25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zaGFwZV09XCJleHBhbmRlZFNlY3Rpb25zLmluY2x1ZGVzKHNlY3Rpb24uaWQpID8gJ2NhcmV0IHVwJyA6ICdjYXJldCBkb3duJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT1cIjEyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwiJ2NvbW1vbi5leHBhbmQtZW50cmllcycgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvY2xyLWljb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYXYtbGlzdFwiIFtuZ1N0eWxlXT1cImdldFN0eWxlRm9yU2VjdGlvbihzZWN0aW9uKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIHNlY3Rpb24uaXRlbXNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInNob3VsZERpc3BsYXlMaW5rKGl0ZW0pXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1saW5rIHB4LTRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlckxpbmtBY3RpdmU9XCJhY3RpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmRhdGEtaXRlbS1pZF09XCJzZWN0aW9uLmlkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiZ2V0Um91dGVyTGluayhpdGVtKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkl0ZW1DbGljayhpdGVtLCAkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtLnN0YXR1c0JhZGdlIHwgYXN5bmMgYXMgaXRlbUJhZGdlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dmRyLXN0YXR1cy1iYWRnZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaXRlbUJhZGdlLnR5cGUgIT09ICdub25lJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiaXRlbUJhZGdlLnR5cGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvdmRyLXN0YXR1cy1iYWRnZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbHItaWNvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc2hhcGVdPVwiaXRlbS5pY29uIHx8ICdibG9jaydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT1cIjE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCJpdGVtLmxhYmVsIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvY2xyLWljb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiXCI+e3sgaXRlbS5sYWJlbCB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L3Zkci11aS1leHRlbnNpb24tcG9pbnQ+XHJcbiAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDwvc2VjdGlvbj5cclxuPC9uYXY+XHJcbiJdfQ==
|
|
@@ -18,7 +18,7 @@ export class SettingsNavComponent extends BaseNavComponent {
|
|
|
18
18
|
this.settingsMenuConfig$ = this.navBuilderService.menuConfig$.pipe(map(sections => sections.filter(s => s.displayMode === 'settings')));
|
|
19
19
|
}
|
|
20
20
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: SettingsNavComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.2", type: SettingsNavComponent, selector: "vdr-settings-nav", usesInheritance: true, ngImport: i0, template: "<nav>\r\n <section class=\"settings-nav-content\">\r\n <ng-container *ngFor=\"let section of settingsMenuConfig$ | async\">\r\n <vdr-ui-extension-point\r\n [locationId]=\"section.id\"\r\n api=\"navMenu\"\r\n [topPx]=\"-6\"\r\n [leftPx]=\"8\"\r\n display=\"block\"\r\n >\r\n <vdr-dropdown>\r\n <button class=\"setting-link\" vdrDropdownTrigger>\r\n <div>\r\n <ng-container\r\n *ngIf=\"navBuilderService.sectionBadges[section.id] | async as sectionBadge\"\r\n >\r\n <vdr-status-badge\r\n *ngIf=\"sectionBadge !== 'none'\"\r\n [type]=\"sectionBadge\"\r\n ></vdr-status-badge>\r\n </ng-container>\r\n <clr-icon\r\n *ngIf=\"section.icon\"\r\n [attr.shape]=\"section.icon || 'block'\"\r\n size=\"20\"\r\n ></clr-icon>\r\n <label class=\"md:hidden\" [for]=\"section.id\">{{ section.label | translate }}</label>\r\n </div>\r\n <clr-icon class=\"md:hidden\" shape=\"caret right\"></clr-icon>\r\n </button>\r\n <vdr-dropdown-menu vdrPosition=\"top-right\">\r\n <ng-container *ngFor=\"let item of section.items\">\r\n <div *ngIf=\"shouldDisplayLink(item)\" class=\"menu-link\">\r\n <a\r\n vdrDropdownItem\r\n [attr.data-item-id]=\"section.id\"\r\n [routerLink]=\"getRouterLink(item)\"\r\n routerLinkActive=\"active\"\r\n (click)=\"item.onClick && item.onClick($event)\"\r\n >\r\n <ng-container *ngIf=\"item.statusBadge | async as itemBadge\">\r\n <vdr-status-badge\r\n *ngIf=\"itemBadge.type !== 'none'\"\r\n [type]=\"itemBadge.type\"\r\n ></vdr-status-badge>\r\n </ng-container>\r\n <clr-icon [attr.shape]=\"item.icon || 'block'\" size=\"20\"></clr-icon>\r\n <div class=\"\">{{ item.label | translate }}</div>\r\n </a>\r\n </div>\r\n </ng-container>\r\n </vdr-dropdown-menu>\r\n </vdr-dropdown>\r\n </vdr-ui-extension-point>\r\n </ng-container>\r\n </section>\r\n</nav>\r\n", styles: [".setting-link{width:100%;border:none;display:flex;justify-content:space-between;font-size:var(--font-size-xs);align-items:center;cursor:pointer;background-color:transparent;padding:var(--space-unit);color:var(--color-left-nav-text)}.setting-link:hover{color:var(--color-left-nav-text-hover)}.setting-link clr-icon{margin-inline-end:6px}.menu-link{position:relative}.menu-link vdr-status-badge{left:20px;top:3px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ClrIconCustomTag, selector: "clr-icon" }, { kind: "directive", type: i2.ClrLabel, selector: "label", inputs: ["for"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: i4.DropdownComponent, selector: "vdr-dropdown", inputs: ["manualToggle"] }, { kind: "component", type: i5.DropdownMenuComponent, selector: "vdr-dropdown-menu", inputs: ["vdrPosition", "customClasses"] }, { kind: "directive", type: i6.DropdownTriggerDirective, selector: "[vdrDropdownTrigger]" }, { kind: "directive", type: i7.DropdownItemDirective, selector: "[vdrDropdownItem]" }, { kind: "component", type: i8.StatusBadgeComponent, selector: "vdr-status-badge", inputs: ["type"] }, { kind: "component", type: i9.UiExtensionPointComponent, selector: "vdr-ui-extension-point", inputs: ["locationId", "topPx", "leftPx", "display", "api"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
21
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.2", type: SettingsNavComponent, selector: "vdr-settings-nav", usesInheritance: true, ngImport: i0, template: "<nav>\r\n <section class=\"settings-nav-content\">\r\n <ng-container *ngFor=\"let section of settingsMenuConfig$ | async\">\r\n <vdr-ui-extension-point\r\n [locationId]=\"section.id\"\r\n api=\"navMenu\"\r\n [topPx]=\"-6\"\r\n [leftPx]=\"8\"\r\n display=\"block\"\r\n >\r\n <vdr-dropdown>\r\n <button class=\"setting-link\" vdrDropdownTrigger>\r\n <div>\r\n <ng-container\r\n *ngIf=\"navBuilderService.sectionBadges[section.id] | async as sectionBadge\"\r\n >\r\n <vdr-status-badge\r\n *ngIf=\"sectionBadge !== 'none'\"\r\n [type]=\"sectionBadge\"\r\n ></vdr-status-badge>\r\n </ng-container>\r\n <clr-icon\r\n *ngIf=\"section.icon\"\r\n [attr.shape]=\"section.icon || 'block'\"\r\n size=\"20\"\r\n ></clr-icon>\r\n <label class=\"md:hidden\" [for]=\"section.id\">{{ section.label | translate }}</label>\r\n </div>\r\n <clr-icon class=\"md:hidden\" shape=\"caret right\"></clr-icon>\r\n </button>\r\n <vdr-dropdown-menu vdrPosition=\"top-right\">\r\n <ng-container *ngFor=\"let item of section.items\">\r\n <div *ngIf=\"shouldDisplayLink(item)\" class=\"menu-link\">\r\n <a\r\n vdrDropdownItem\r\n [attr.data-item-id]=\"section.id\"\r\n [routerLink]=\"getRouterLink(item)\"\r\n routerLinkActive=\"active\"\r\n (click)=\"item.onClick && item.onClick($event)\"\r\n >\r\n <ng-container *ngIf=\"item.statusBadge | async as itemBadge\">\r\n <vdr-status-badge\r\n *ngIf=\"itemBadge.type !== 'none'\"\r\n [type]=\"itemBadge.type\"\r\n ></vdr-status-badge>\r\n </ng-container>\r\n <clr-icon [attr.shape]=\"item.icon || 'block'\" size=\"20\"></clr-icon>\r\n <div class=\"\">{{ item.label | translate }}</div>\r\n </a>\r\n </div>\r\n </ng-container>\r\n </vdr-dropdown-menu>\r\n </vdr-dropdown>\r\n </vdr-ui-extension-point>\r\n </ng-container>\r\n </section>\r\n</nav>\r\n", styles: [".setting-link{width:100%;border:none;display:flex;justify-content:space-between;font-size:var(--font-size-xs);align-items:center;cursor:pointer;background-color:transparent;padding:var(--space-unit);color:var(--color-left-nav-text)}.setting-link:hover{color:var(--color-left-nav-text-hover)}.setting-link clr-icon{margin-inline-end:6px}.menu-link{position:relative}.menu-link vdr-status-badge{left:20px;top:3px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ClrIconCustomTag, selector: "clr-icon" }, { kind: "directive", type: i2.ClrLabel, selector: "label", inputs: ["for"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: i4.DropdownComponent, selector: "vdr-dropdown", inputs: ["manualToggle"] }, { kind: "component", type: i5.DropdownMenuComponent, selector: "vdr-dropdown-menu", inputs: ["vdrPosition", "customClasses"] }, { kind: "directive", type: i6.DropdownTriggerDirective, selector: "[vdrDropdownTrigger]" }, { kind: "directive", type: i7.DropdownItemDirective, selector: "[vdrDropdownItem]" }, { kind: "component", type: i8.StatusBadgeComponent, selector: "vdr-status-badge", inputs: ["type"] }, { kind: "component", type: i9.UiExtensionPointComponent, selector: "vdr-ui-extension-point", inputs: ["locationId", "metadata", "topPx", "leftPx", "display", "api"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
22
22
|
}
|
|
23
23
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: SettingsNavComponent, decorators: [{
|
|
24
24
|
type: Component,
|
|
@@ -22,7 +22,7 @@ import { UserMenuComponent } from './components/user-menu/user-menu.component';
|
|
|
22
22
|
import { DataModule } from './data/data.module';
|
|
23
23
|
import { CustomHttpTranslationLoader } from './providers/i18n/custom-http-loader';
|
|
24
24
|
import { InjectableTranslateMessageFormatCompiler } from './providers/i18n/custom-message-format-compiler';
|
|
25
|
-
import { registerDefaultFormInputs } from './shared/dynamic-form-inputs/
|
|
25
|
+
import { registerDefaultFormInputs } from './shared/dynamic-form-inputs/default-form-inputs';
|
|
26
26
|
import { SharedModule } from './shared/shared.module';
|
|
27
27
|
import * as i0 from "@angular/core";
|
|
28
28
|
import * as i1 from "./providers/i18n/i18n.service";
|
|
@@ -154,4 +154,4 @@ export function HttpLoaderFactory(http, location) {
|
|
|
154
154
|
const baseHref = location.getBaseHrefFromDOM();
|
|
155
155
|
return new CustomHttpTranslationLoader(http, baseHref + 'i18n-messages/');
|
|
156
156
|
}
|
|
157
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL2NvcmUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDL0UsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTFGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDNUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxvQkFBb0IsRUFB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QyxJQUFnQixFQUFFLFFBQTBCO0lBQzFFLDZFQUE2RTtJQUM3RSxNQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUMvQyxPQUFPLElBQUksMkJBQTJCLENBQUMsSUFBSSxFQUFFLFFBQVEsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDO0FBQzlFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQbGF0Zm9ybUxvY2F0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQnJvd3Nlck1vZHVsZSwgVGl0bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHsgQnJvd3NlckFuaW1hdGlvbnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBtYXJrZXIgYXMgXyB9IGZyb20gJ0BiaWVzYmplcmcvbmd4LXRyYW5zbGF0ZS1leHRyYWN0LW1hcmtlcic7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZUNvbXBpbGVyLCBUcmFuc2xhdGVMb2FkZXIsIFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgZ2V0QXBwQ29uZmlnIH0gZnJvbSAnLi9hcHAuY29uZmlnJztcclxuaW1wb3J0IHsgZ2V0RGVmYXVsdFVpTGFuZ3VhZ2UgfSBmcm9tICcuL2NvbW1vbi91dGlsaXRpZXMvZ2V0LWRlZmF1bHQtdWktbGFuZ3VhZ2UnO1xyXG5pbXBvcnQgeyBBbGVydHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYWxlcnRzL2FsZXJ0cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBcHBTaGVsbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hcHAtc2hlbGwvYXBwLXNoZWxsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhc2VOYXZDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYmFzZS1uYXYvYmFzZS1uYXYuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQnJlYWRjcnVtYkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2hhbm5lbFN3aXRjaGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NoYW5uZWwtc3dpdGNoZXIvY2hhbm5lbC1zd2l0Y2hlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYWluTmF2Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21haW4tbmF2L21haW4tbmF2LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE92ZXJsYXlIb3N0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL292ZXJsYXktaG9zdC9vdmVybGF5LWhvc3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2V0dGluZ3NOYXZDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2V0dGluZ3MtbmF2L3NldHRpbmdzLW5hdi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUaGVtZVN3aXRjaGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RoZW1lLXN3aXRjaGVyL3RoZW1lLXN3aXRjaGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpTGFuZ3VhZ2VTd2l0Y2hlckRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy91aS1sYW5ndWFnZS1zd2l0Y2hlci1kaWFsb2cvdWktbGFuZ3VhZ2Utc3dpdGNoZXItZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVzZXJNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3VzZXItbWVudS91c2VyLW1lbnUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRGF0YU1vZHVsZSB9IGZyb20gJy4vZGF0YS9kYXRhLm1vZHVsZSc7XHJcbmltcG9ydCB7IERhdGFTZXJ2aWNlIH0gZnJvbSAnLi9kYXRhL3Byb3ZpZGVycy9kYXRhLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBbGVydHNTZXJ2aWNlIH0gZnJvbSAnLi9wcm92aWRlcnMvYWxlcnRzL2FsZXJ0cy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ3VzdG9tSHR0cFRyYW5zbGF0aW9uTG9hZGVyIH0gZnJvbSAnLi9wcm92aWRlcnMvaTE4bi9jdXN0b20taHR0cC1sb2FkZXInO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlVHJhbnNsYXRlTWVzc2FnZUZvcm1hdENvbXBpbGVyIH0gZnJvbSAnLi9wcm92aWRlcnMvaTE4bi9jdXN0b20tbWVzc2FnZS1mb3JtYXQtY29tcGlsZXInO1xyXG5pbXBvcnQgeyBJMThuU2VydmljZSB9IGZyb20gJy4vcHJvdmlkZXJzL2kxOG4vaTE4bi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTG9jYWxTdG9yYWdlU2VydmljZSB9IGZyb20gJy4vcHJvdmlkZXJzL2xvY2FsLXN0b3JhZ2UvbG9jYWwtc3RvcmFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTm90aWZpY2F0aW9uU2VydmljZSB9IGZyb20gJy4vcHJvdmlkZXJzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IHJlZ2lzdGVyRGVmYXVsdEZvcm1JbnB1dHMgfSBmcm9tICcuL3NoYXJlZC9keW5hbWljLWZvcm0taW5wdXRzL3JlZ2lzdGVyLWR5bmFtaWMtaW5wdXQtY29tcG9uZW50cyc7XHJcbmltcG9ydCB7IFNoYXJlZE1vZHVsZSB9IGZyb20gJy4vc2hhcmVkL3NoYXJlZC5tb2R1bGUnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBCcm93c2VyTW9kdWxlLFxyXG4gICAgICAgIERhdGFNb2R1bGUsXHJcbiAgICAgICAgU2hhcmVkTW9kdWxlLFxyXG4gICAgICAgIEJyb3dzZXJBbmltYXRpb25zTW9kdWxlLFxyXG4gICAgICAgIFRyYW5zbGF0ZU1vZHVsZS5mb3JSb290KHtcclxuICAgICAgICAgICAgbG9hZGVyOiB7XHJcbiAgICAgICAgICAgICAgICBwcm92aWRlOiBUcmFuc2xhdGVMb2FkZXIsXHJcbiAgICAgICAgICAgICAgICB1c2VGYWN0b3J5OiBIdHRwTG9hZGVyRmFjdG9yeSxcclxuICAgICAgICAgICAgICAgIGRlcHM6IFtIdHRwQ2xpZW50LCBQbGF0Zm9ybUxvY2F0aW9uXSxcclxuICAgICAgICAgICAgfSxcclxuXHJcbiAgICAgICAgICAgIGNvbXBpbGVyOiB7IHByb3ZpZGU6IFRyYW5zbGF0ZUNvbXBpbGVyLCB1c2VDbGFzczogSW5qZWN0YWJsZVRyYW5zbGF0ZU1lc3NhZ2VGb3JtYXRDb21waWxlciB9LFxyXG4gICAgICAgIH0pLFxyXG4gICAgXSxcclxuICAgIHByb3ZpZGVyczogW3JlZ2lzdGVyRGVmYXVsdEZvcm1JbnB1dHMoKSwgVGl0bGVdLFxyXG4gICAgZXhwb3J0czogW1NoYXJlZE1vZHVsZSwgT3ZlcmxheUhvc3RDb21wb25lbnRdLFxyXG4gICAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICAgICAgQXBwU2hlbGxDb21wb25lbnQsXHJcbiAgICAgICAgVXNlck1lbnVDb21wb25lbnQsXHJcbiAgICAgICAgQmFzZU5hdkNvbXBvbmVudCxcclxuICAgICAgICBNYWluTmF2Q29tcG9uZW50LFxyXG4gICAgICAgIFNldHRpbmdzTmF2Q29tcG9uZW50LFxyXG4gICAgICAgIEJyZWFkY3J1bWJDb21wb25lbnQsXHJcbiAgICAgICAgT3ZlcmxheUhvc3RDb21wb25lbnQsXHJcbiAgICAgICAgTm90aWZpY2F0aW9uQ29tcG9uZW50LFxyXG4gICAgICAgIFVpTGFuZ3VhZ2VTd2l0Y2hlckRpYWxvZ0NvbXBvbmVudCxcclxuICAgICAgICBDaGFubmVsU3dpdGNoZXJDb21wb25lbnQsXHJcbiAgICAgICAgVGhlbWVTd2l0Y2hlckNvbXBvbmVudCxcclxuICAgICAgICBBbGVydHNDb21wb25lbnQsXHJcbiAgICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29yZU1vZHVsZSB7XHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIGkxOG5TZXJ2aWNlOiBJMThuU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIGxvY2FsU3RvcmFnZVNlcnZpY2U6IExvY2FsU3RvcmFnZVNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSB0aXRsZVNlcnZpY2U6IFRpdGxlLFxyXG4gICAgICAgIHByaXZhdGUgYWxlcnRzU2VydmljZTogQWxlcnRzU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIG5vdGlmaWNhdGlvblNlcnZpY2U6IE5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbiAgICApIHtcclxuICAgICAgICB0aGlzLmluaXRVaUxhbmd1YWdlcygpO1xyXG4gICAgICAgIHRoaXMuaW5pdFVpVGl0bGUoKTtcclxuICAgICAgICB0aGlzLmluaXRBbGVydHMoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGluaXRVaUxhbmd1YWdlcygpIHtcclxuICAgICAgICBjb25zdCBkZWZhdWx0TGFuZ3VhZ2UgPSBnZXREZWZhdWx0VWlMYW5ndWFnZSgpO1xyXG4gICAgICAgIGNvbnN0IGxhc3RMYW5ndWFnZSA9IHRoaXMubG9jYWxTdG9yYWdlU2VydmljZS5nZXQoJ3VpTGFuZ3VhZ2VDb2RlJyk7XHJcbiAgICAgICAgY29uc3QgYXZhaWxhYmxlTGFuZ3VhZ2VzID0gZ2V0QXBwQ29uZmlnKCkuYXZhaWxhYmxlTGFuZ3VhZ2VzO1xyXG5cclxuICAgICAgICBpZiAoIWF2YWlsYWJsZUxhbmd1YWdlcy5pbmNsdWRlcyhkZWZhdWx0TGFuZ3VhZ2UpKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcclxuICAgICAgICAgICAgICAgIGBUaGUgZGVmYXVsdExhbmd1YWdlIFwiJHtkZWZhdWx0TGFuZ3VhZ2V9XCIgbXVzdCBiZSBvbmUgb2YgdGhlIGF2YWlsYWJsZUxhbmd1YWdlcyBbJHthdmFpbGFibGVMYW5ndWFnZXNcclxuICAgICAgICAgICAgICAgICAgICAubWFwKGwgPT4gYFwiJHtsfVwiYClcclxuICAgICAgICAgICAgICAgICAgICAuam9pbignLCAnKX1dYCxcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgdWlMYW5ndWFnZSA9XHJcbiAgICAgICAgICAgIGxhc3RMYW5ndWFnZSAmJiBhdmFpbGFibGVMYW5ndWFnZXMuaW5jbHVkZXMobGFzdExhbmd1YWdlKSA/IGxhc3RMYW5ndWFnZSA6IGRlZmF1bHRMYW5ndWFnZTtcclxuICAgICAgICB0aGlzLmxvY2FsU3RvcmFnZVNlcnZpY2Uuc2V0KCd1aUxhbmd1YWdlQ29kZScsIHVpTGFuZ3VhZ2UpO1xyXG4gICAgICAgIHRoaXMuaTE4blNlcnZpY2Uuc2V0TGFuZ3VhZ2UodWlMYW5ndWFnZSk7XHJcbiAgICAgICAgdGhpcy5pMThuU2VydmljZS5zZXREZWZhdWx0TGFuZ3VhZ2UoZGVmYXVsdExhbmd1YWdlKTtcclxuICAgICAgICB0aGlzLmkxOG5TZXJ2aWNlLnNldEF2YWlsYWJsZUxhbmd1YWdlcyhhdmFpbGFibGVMYW5ndWFnZXMgfHwgW2RlZmF1bHRMYW5ndWFnZV0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaW5pdFVpVGl0bGUoKSB7XHJcbiAgICAgICAgY29uc3QgdGl0bGUgPSBnZXRBcHBDb25maWcoKS5icmFuZCB8fCAnVmVuZHVyZSc7XHJcblxyXG4gICAgICAgIHRoaXMudGl0bGVTZXJ2aWNlLnNldFRpdGxlKHRpdGxlKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGluaXRBbGVydHMoKSB7XHJcbiAgICAgICAgdGhpcy5hbGVydHNTZXJ2aWNlLmNvbmZpZ3VyZUFsZXJ0KHtcclxuICAgICAgICAgICAgaWQ6ICdwZW5kaW5nLXNlYXJjaC1pbmRleC11cGRhdGVzJyxcclxuICAgICAgICAgICAgY2hlY2s6ICgpID0+XHJcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLnByb2R1Y3RcclxuICAgICAgICAgICAgICAgICAgICAuZ2V0UGVuZGluZ1NlYXJjaEluZGV4VXBkYXRlcygpXHJcbiAgICAgICAgICAgICAgICAgICAgLm1hcFNpbmdsZSgoeyBwZW5kaW5nU2VhcmNoSW5kZXhVcGRhdGVzIH0pID0+IHBlbmRpbmdTZWFyY2hJbmRleFVwZGF0ZXMpLFxyXG4gICAgICAgICAgICByZWNoZWNrSW50ZXJ2YWxNczogMTAwMCAqIDMwLFxyXG4gICAgICAgICAgICBpc0FsZXJ0OiBkYXRhID0+IDAgPCBkYXRhLFxyXG4gICAgICAgICAgICBhY3Rpb246IGRhdGEgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhU2VydmljZS5wcm9kdWN0LnJ1blBlbmRpbmdTZWFyY2hJbmRleFVwZGF0ZXMoKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5pbmZvKF8oJ2NhdGFsb2cucnVubmluZy1zZWFyY2gtaW5kZXgtdXBkYXRlcycpLCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvdW50OiBkYXRhLFxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGxhYmVsOiBkYXRhID0+ICh7XHJcbiAgICAgICAgICAgICAgICB0ZXh0OiBfKCdjYXRhbG9nLnJ1bi1wZW5kaW5nLXNlYXJjaC1pbmRleC11cGRhdGVzJyksXHJcbiAgICAgICAgICAgICAgICB0cmFuc2xhdGlvblZhcnM6IHsgY291bnQ6IGRhdGEgfSxcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5hbGVydHNTZXJ2aWNlLnJlZnJlc2goKTtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIEh0dHBMb2FkZXJGYWN0b3J5KGh0dHA6IEh0dHBDbGllbnQsIGxvY2F0aW9uOiBQbGF0Zm9ybUxvY2F0aW9uKSB7XHJcbiAgICAvLyBEeW5hbWljYWxseSBnZXQgdGhlIGJhc2VIcmVmLCB3aGljaCBpcyBjb25maWd1cmVkIGluIHRoZSBhbmd1bGFyLmpzb24gZmlsZVxyXG4gICAgY29uc3QgYmFzZUhyZWYgPSBsb2NhdGlvbi5nZXRCYXNlSHJlZkZyb21ET00oKTtcclxuICAgIHJldHVybiBuZXcgQ3VzdG9tSHR0cFRyYW5zbGF0aW9uTG9hZGVyKGh0dHAsIGJhc2VIcmVmICsgJ2kxOG4tbWVzc2FnZXMvJyk7XHJcbn1cclxuIl19
|
|
157
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL2NvcmUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDL0UsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTFGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDNUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxvQkFBb0IsRUFB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QyxJQUFnQixFQUFFLFFBQTBCO0lBQzFFLDZFQUE2RTtJQUM3RSxNQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUMvQyxPQUFPLElBQUksMkJBQTJCLENBQUMsSUFBSSxFQUFFLFFBQVEsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDO0FBQzlFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQbGF0Zm9ybUxvY2F0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQnJvd3Nlck1vZHVsZSwgVGl0bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHsgQnJvd3NlckFuaW1hdGlvbnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBtYXJrZXIgYXMgXyB9IGZyb20gJ0BiaWVzYmplcmcvbmd4LXRyYW5zbGF0ZS1leHRyYWN0LW1hcmtlcic7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZUNvbXBpbGVyLCBUcmFuc2xhdGVMb2FkZXIsIFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgZ2V0QXBwQ29uZmlnIH0gZnJvbSAnLi9hcHAuY29uZmlnJztcclxuaW1wb3J0IHsgZ2V0RGVmYXVsdFVpTGFuZ3VhZ2UgfSBmcm9tICcuL2NvbW1vbi91dGlsaXRpZXMvZ2V0LWRlZmF1bHQtdWktbGFuZ3VhZ2UnO1xyXG5pbXBvcnQgeyBBbGVydHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYWxlcnRzL2FsZXJ0cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBcHBTaGVsbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hcHAtc2hlbGwvYXBwLXNoZWxsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhc2VOYXZDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYmFzZS1uYXYvYmFzZS1uYXYuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQnJlYWRjcnVtYkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2hhbm5lbFN3aXRjaGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NoYW5uZWwtc3dpdGNoZXIvY2hhbm5lbC1zd2l0Y2hlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYWluTmF2Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21haW4tbmF2L21haW4tbmF2LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE92ZXJsYXlIb3N0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL292ZXJsYXktaG9zdC9vdmVybGF5LWhvc3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2V0dGluZ3NOYXZDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2V0dGluZ3MtbmF2L3NldHRpbmdzLW5hdi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUaGVtZVN3aXRjaGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RoZW1lLXN3aXRjaGVyL3RoZW1lLXN3aXRjaGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpTGFuZ3VhZ2VTd2l0Y2hlckRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy91aS1sYW5ndWFnZS1zd2l0Y2hlci1kaWFsb2cvdWktbGFuZ3VhZ2Utc3dpdGNoZXItZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVzZXJNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3VzZXItbWVudS91c2VyLW1lbnUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRGF0YU1vZHVsZSB9IGZyb20gJy4vZGF0YS9kYXRhLm1vZHVsZSc7XHJcbmltcG9ydCB7IERhdGFTZXJ2aWNlIH0gZnJvbSAnLi9kYXRhL3Byb3ZpZGVycy9kYXRhLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBbGVydHNTZXJ2aWNlIH0gZnJvbSAnLi9wcm92aWRlcnMvYWxlcnRzL2FsZXJ0cy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ3VzdG9tSHR0cFRyYW5zbGF0aW9uTG9hZGVyIH0gZnJvbSAnLi9wcm92aWRlcnMvaTE4bi9jdXN0b20taHR0cC1sb2FkZXInO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlVHJhbnNsYXRlTWVzc2FnZUZvcm1hdENvbXBpbGVyIH0gZnJvbSAnLi9wcm92aWRlcnMvaTE4bi9jdXN0b20tbWVzc2FnZS1mb3JtYXQtY29tcGlsZXInO1xyXG5pbXBvcnQgeyBJMThuU2VydmljZSB9IGZyb20gJy4vcHJvdmlkZXJzL2kxOG4vaTE4bi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTG9jYWxTdG9yYWdlU2VydmljZSB9IGZyb20gJy4vcHJvdmlkZXJzL2xvY2FsLXN0b3JhZ2UvbG9jYWwtc3RvcmFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTm90aWZpY2F0aW9uU2VydmljZSB9IGZyb20gJy4vcHJvdmlkZXJzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IHJlZ2lzdGVyRGVmYXVsdEZvcm1JbnB1dHMgfSBmcm9tICcuL3NoYXJlZC9keW5hbWljLWZvcm0taW5wdXRzL2RlZmF1bHQtZm9ybS1pbnB1dHMnO1xyXG5pbXBvcnQgeyBTaGFyZWRNb2R1bGUgfSBmcm9tICcuL3NoYXJlZC9zaGFyZWQubW9kdWxlJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBpbXBvcnRzOiBbXHJcbiAgICAgICAgQnJvd3Nlck1vZHVsZSxcclxuICAgICAgICBEYXRhTW9kdWxlLFxyXG4gICAgICAgIFNoYXJlZE1vZHVsZSxcclxuICAgICAgICBCcm93c2VyQW5pbWF0aW9uc01vZHVsZSxcclxuICAgICAgICBUcmFuc2xhdGVNb2R1bGUuZm9yUm9vdCh7XHJcbiAgICAgICAgICAgIGxvYWRlcjoge1xyXG4gICAgICAgICAgICAgICAgcHJvdmlkZTogVHJhbnNsYXRlTG9hZGVyLFxyXG4gICAgICAgICAgICAgICAgdXNlRmFjdG9yeTogSHR0cExvYWRlckZhY3RvcnksXHJcbiAgICAgICAgICAgICAgICBkZXBzOiBbSHR0cENsaWVudCwgUGxhdGZvcm1Mb2NhdGlvbl0sXHJcbiAgICAgICAgICAgIH0sXHJcblxyXG4gICAgICAgICAgICBjb21waWxlcjogeyBwcm92aWRlOiBUcmFuc2xhdGVDb21waWxlciwgdXNlQ2xhc3M6IEluamVjdGFibGVUcmFuc2xhdGVNZXNzYWdlRm9ybWF0Q29tcGlsZXIgfSxcclxuICAgICAgICB9KSxcclxuICAgIF0sXHJcbiAgICBwcm92aWRlcnM6IFtyZWdpc3RlckRlZmF1bHRGb3JtSW5wdXRzKCksIFRpdGxlXSxcclxuICAgIGV4cG9ydHM6IFtTaGFyZWRNb2R1bGUsIE92ZXJsYXlIb3N0Q29tcG9uZW50XSxcclxuICAgIGRlY2xhcmF0aW9uczogW1xyXG4gICAgICAgIEFwcFNoZWxsQ29tcG9uZW50LFxyXG4gICAgICAgIFVzZXJNZW51Q29tcG9uZW50LFxyXG4gICAgICAgIEJhc2VOYXZDb21wb25lbnQsXHJcbiAgICAgICAgTWFpbk5hdkNvbXBvbmVudCxcclxuICAgICAgICBTZXR0aW5nc05hdkNvbXBvbmVudCxcclxuICAgICAgICBCcmVhZGNydW1iQ29tcG9uZW50LFxyXG4gICAgICAgIE92ZXJsYXlIb3N0Q29tcG9uZW50LFxyXG4gICAgICAgIE5vdGlmaWNhdGlvbkNvbXBvbmVudCxcclxuICAgICAgICBVaUxhbmd1YWdlU3dpdGNoZXJEaWFsb2dDb21wb25lbnQsXHJcbiAgICAgICAgQ2hhbm5lbFN3aXRjaGVyQ29tcG9uZW50LFxyXG4gICAgICAgIFRoZW1lU3dpdGNoZXJDb21wb25lbnQsXHJcbiAgICAgICAgQWxlcnRzQ29tcG9uZW50LFxyXG4gICAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENvcmVNb2R1bGUge1xyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBpMThuU2VydmljZTogSTE4blNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBsb2NhbFN0b3JhZ2VTZXJ2aWNlOiBMb2NhbFN0b3JhZ2VTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgdGl0bGVTZXJ2aWNlOiBUaXRsZSxcclxuICAgICAgICBwcml2YXRlIGFsZXJ0c1NlcnZpY2U6IEFsZXJ0c1NlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBkYXRhU2VydmljZTogRGF0YVNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBub3RpZmljYXRpb25TZXJ2aWNlOiBOb3RpZmljYXRpb25TZXJ2aWNlLFxyXG4gICAgKSB7XHJcbiAgICAgICAgdGhpcy5pbml0VWlMYW5ndWFnZXMoKTtcclxuICAgICAgICB0aGlzLmluaXRVaVRpdGxlKCk7XHJcbiAgICAgICAgdGhpcy5pbml0QWxlcnRzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBpbml0VWlMYW5ndWFnZXMoKSB7XHJcbiAgICAgICAgY29uc3QgZGVmYXVsdExhbmd1YWdlID0gZ2V0RGVmYXVsdFVpTGFuZ3VhZ2UoKTtcclxuICAgICAgICBjb25zdCBsYXN0TGFuZ3VhZ2UgPSB0aGlzLmxvY2FsU3RvcmFnZVNlcnZpY2UuZ2V0KCd1aUxhbmd1YWdlQ29kZScpO1xyXG4gICAgICAgIGNvbnN0IGF2YWlsYWJsZUxhbmd1YWdlcyA9IGdldEFwcENvbmZpZygpLmF2YWlsYWJsZUxhbmd1YWdlcztcclxuXHJcbiAgICAgICAgaWYgKCFhdmFpbGFibGVMYW5ndWFnZXMuaW5jbHVkZXMoZGVmYXVsdExhbmd1YWdlKSkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXHJcbiAgICAgICAgICAgICAgICBgVGhlIGRlZmF1bHRMYW5ndWFnZSBcIiR7ZGVmYXVsdExhbmd1YWdlfVwiIG11c3QgYmUgb25lIG9mIHRoZSBhdmFpbGFibGVMYW5ndWFnZXMgWyR7YXZhaWxhYmxlTGFuZ3VhZ2VzXHJcbiAgICAgICAgICAgICAgICAgICAgLm1hcChsID0+IGBcIiR7bH1cImApXHJcbiAgICAgICAgICAgICAgICAgICAgLmpvaW4oJywgJyl9XWAsXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IHVpTGFuZ3VhZ2UgPVxyXG4gICAgICAgICAgICBsYXN0TGFuZ3VhZ2UgJiYgYXZhaWxhYmxlTGFuZ3VhZ2VzLmluY2x1ZGVzKGxhc3RMYW5ndWFnZSkgPyBsYXN0TGFuZ3VhZ2UgOiBkZWZhdWx0TGFuZ3VhZ2U7XHJcbiAgICAgICAgdGhpcy5sb2NhbFN0b3JhZ2VTZXJ2aWNlLnNldCgndWlMYW5ndWFnZUNvZGUnLCB1aUxhbmd1YWdlKTtcclxuICAgICAgICB0aGlzLmkxOG5TZXJ2aWNlLnNldExhbmd1YWdlKHVpTGFuZ3VhZ2UpO1xyXG4gICAgICAgIHRoaXMuaTE4blNlcnZpY2Uuc2V0RGVmYXVsdExhbmd1YWdlKGRlZmF1bHRMYW5ndWFnZSk7XHJcbiAgICAgICAgdGhpcy5pMThuU2VydmljZS5zZXRBdmFpbGFibGVMYW5ndWFnZXMoYXZhaWxhYmxlTGFuZ3VhZ2VzIHx8IFtkZWZhdWx0TGFuZ3VhZ2VdKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGluaXRVaVRpdGxlKCkge1xyXG4gICAgICAgIGNvbnN0IHRpdGxlID0gZ2V0QXBwQ29uZmlnKCkuYnJhbmQgfHwgJ1ZlbmR1cmUnO1xyXG5cclxuICAgICAgICB0aGlzLnRpdGxlU2VydmljZS5zZXRUaXRsZSh0aXRsZSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBpbml0QWxlcnRzKCkge1xyXG4gICAgICAgIHRoaXMuYWxlcnRzU2VydmljZS5jb25maWd1cmVBbGVydCh7XHJcbiAgICAgICAgICAgIGlkOiAncGVuZGluZy1zZWFyY2gtaW5kZXgtdXBkYXRlcycsXHJcbiAgICAgICAgICAgIGNoZWNrOiAoKSA9PlxyXG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhU2VydmljZS5wcm9kdWN0XHJcbiAgICAgICAgICAgICAgICAgICAgLmdldFBlbmRpbmdTZWFyY2hJbmRleFVwZGF0ZXMoKVxyXG4gICAgICAgICAgICAgICAgICAgIC5tYXBTaW5nbGUoKHsgcGVuZGluZ1NlYXJjaEluZGV4VXBkYXRlcyB9KSA9PiBwZW5kaW5nU2VhcmNoSW5kZXhVcGRhdGVzKSxcclxuICAgICAgICAgICAgcmVjaGVja0ludGVydmFsTXM6IDEwMDAgKiAzMCxcclxuICAgICAgICAgICAgaXNBbGVydDogZGF0YSA9PiAwIDwgZGF0YSxcclxuICAgICAgICAgICAgYWN0aW9uOiBkYXRhID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZGF0YVNlcnZpY2UucHJvZHVjdC5ydW5QZW5kaW5nU2VhcmNoSW5kZXhVcGRhdGVzKCkuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuaW5mbyhfKCdjYXRhbG9nLnJ1bm5pbmctc2VhcmNoLWluZGV4LXVwZGF0ZXMnKSwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb3VudDogZGF0YSxcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBsYWJlbDogZGF0YSA9PiAoe1xyXG4gICAgICAgICAgICAgICAgdGV4dDogXygnY2F0YWxvZy5ydW4tcGVuZGluZy1zZWFyY2gtaW5kZXgtdXBkYXRlcycpLFxyXG4gICAgICAgICAgICAgICAgdHJhbnNsYXRpb25WYXJzOiB7IGNvdW50OiBkYXRhIH0sXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuYWxlcnRzU2VydmljZS5yZWZyZXNoKCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBIdHRwTG9hZGVyRmFjdG9yeShodHRwOiBIdHRwQ2xpZW50LCBsb2NhdGlvbjogUGxhdGZvcm1Mb2NhdGlvbikge1xyXG4gICAgLy8gRHluYW1pY2FsbHkgZ2V0IHRoZSBiYXNlSHJlZiwgd2hpY2ggaXMgY29uZmlndXJlZCBpbiB0aGUgYW5ndWxhci5qc29uIGZpbGVcclxuICAgIGNvbnN0IGJhc2VIcmVmID0gbG9jYXRpb24uZ2V0QmFzZUhyZWZGcm9tRE9NKCk7XHJcbiAgICByZXR1cm4gbmV3IEN1c3RvbUh0dHBUcmFuc2xhdGlvbkxvYWRlcihodHRwLCBiYXNlSHJlZiArICdpMThuLW1lc3NhZ2VzLycpO1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { APP_INITIALIZER } from '@angular/core';
|
|
2
|
+
import { NavBuilderService } from '../providers/nav-builder/nav-builder.service';
|
|
3
|
+
/**
|
|
4
|
+
* @description
|
|
5
|
+
* Adds a button to the ActionBar at the top right of each list or detail view. The locationId can
|
|
6
|
+
* be determined by inspecting the DOM and finding the <vdr-action-bar> element and its
|
|
7
|
+
* `data-location-id` attribute.
|
|
8
|
+
*
|
|
9
|
+
* This should be used in the NgModule `providers` array of your ui extension module.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```TypeScript
|
|
13
|
+
* \@NgModule({
|
|
14
|
+
* imports: [SharedModule],
|
|
15
|
+
* providers: [
|
|
16
|
+
* addActionBarItem({
|
|
17
|
+
* id: 'print-invoice'
|
|
18
|
+
* label: 'Print Invoice',
|
|
19
|
+
* locationId: 'order-detail',
|
|
20
|
+
* routerLink: ['/extensions/invoicing'],
|
|
21
|
+
* }),
|
|
22
|
+
* ],
|
|
23
|
+
* })
|
|
24
|
+
* export class MyUiExtensionModule {}
|
|
25
|
+
* ```
|
|
26
|
+
* @docsCategory action-bar
|
|
27
|
+
*/
|
|
28
|
+
export function addActionBarItem(config) {
|
|
29
|
+
return {
|
|
30
|
+
provide: APP_INITIALIZER,
|
|
31
|
+
multi: true,
|
|
32
|
+
useFactory: (navBuilderService) => () => {
|
|
33
|
+
navBuilderService.addActionBarItem(config);
|
|
34
|
+
},
|
|
35
|
+
deps: [NavBuilderService],
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWFjdGlvbi1iYXItaXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvY29yZS9zcmMvZXh0ZW5zaW9uL2FkZC1hY3Rpb24tYmFyLWl0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUUxRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUVqRjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0JHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUFDLE1BQXFCO0lBQ2xELE9BQU87UUFDSCxPQUFPLEVBQUUsZUFBZTtRQUN4QixLQUFLLEVBQUUsSUFBSTtRQUNYLFVBQVUsRUFBRSxDQUFDLGlCQUFvQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEVBQUU7WUFDdkQsaUJBQWlCLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDL0MsQ0FBQztRQUNELElBQUksRUFBRSxDQUFDLGlCQUFpQixDQUFDO0tBQzVCLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVBQX0lOSVRJQUxJWkVSLCBQcm92aWRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3Rpb25CYXJJdGVtIH0gZnJvbSAnLi4vcHJvdmlkZXJzL25hdi1idWlsZGVyL25hdi1idWlsZGVyLXR5cGVzJztcclxuaW1wb3J0IHsgTmF2QnVpbGRlclNlcnZpY2UgfSBmcm9tICcuLi9wcm92aWRlcnMvbmF2LWJ1aWxkZXIvbmF2LWJ1aWxkZXIuc2VydmljZSc7XHJcblxyXG4vKipcclxuICogQGRlc2NyaXB0aW9uXHJcbiAqIEFkZHMgYSBidXR0b24gdG8gdGhlIEFjdGlvbkJhciBhdCB0aGUgdG9wIHJpZ2h0IG9mIGVhY2ggbGlzdCBvciBkZXRhaWwgdmlldy4gVGhlIGxvY2F0aW9uSWQgY2FuXHJcbiAqIGJlIGRldGVybWluZWQgYnkgaW5zcGVjdGluZyB0aGUgRE9NIGFuZCBmaW5kaW5nIHRoZSA8dmRyLWFjdGlvbi1iYXI+IGVsZW1lbnQgYW5kIGl0c1xyXG4gKiBgZGF0YS1sb2NhdGlvbi1pZGAgYXR0cmlidXRlLlxyXG4gKlxyXG4gKiBUaGlzIHNob3VsZCBiZSB1c2VkIGluIHRoZSBOZ01vZHVsZSBgcHJvdmlkZXJzYCBhcnJheSBvZiB5b3VyIHVpIGV4dGVuc2lvbiBtb2R1bGUuXHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqIGBgYFR5cGVTY3JpcHRcclxuICogXFxATmdNb2R1bGUoe1xyXG4gKiAgIGltcG9ydHM6IFtTaGFyZWRNb2R1bGVdLFxyXG4gKiAgIHByb3ZpZGVyczogW1xyXG4gKiAgICAgYWRkQWN0aW9uQmFySXRlbSh7XHJcbiAqICAgICAgaWQ6ICdwcmludC1pbnZvaWNlJ1xyXG4gKiAgICAgIGxhYmVsOiAnUHJpbnQgSW52b2ljZScsXHJcbiAqICAgICAgbG9jYXRpb25JZDogJ29yZGVyLWRldGFpbCcsXHJcbiAqICAgICAgcm91dGVyTGluazogWycvZXh0ZW5zaW9ucy9pbnZvaWNpbmcnXSxcclxuICogICAgIH0pLFxyXG4gKiAgIF0sXHJcbiAqIH0pXHJcbiAqIGV4cG9ydCBjbGFzcyBNeVVpRXh0ZW5zaW9uTW9kdWxlIHt9XHJcbiAqIGBgYFxyXG4gKiBAZG9jc0NhdGVnb3J5IGFjdGlvbi1iYXJcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBhZGRBY3Rpb25CYXJJdGVtKGNvbmZpZzogQWN0aW9uQmFySXRlbSk6IFByb3ZpZGVyIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxyXG4gICAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgICAgIHVzZUZhY3Rvcnk6IChuYXZCdWlsZGVyU2VydmljZTogTmF2QnVpbGRlclNlcnZpY2UpID0+ICgpID0+IHtcclxuICAgICAgICAgICAgbmF2QnVpbGRlclNlcnZpY2UuYWRkQWN0aW9uQmFySXRlbShjb25maWcpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZGVwczogW05hdkJ1aWxkZXJTZXJ2aWNlXSxcclxuICAgIH07XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { APP_INITIALIZER } from '@angular/core';
|
|
2
|
+
import { NavBuilderService } from '../providers/nav-builder/nav-builder.service';
|
|
3
|
+
/**
|
|
4
|
+
* @description
|
|
5
|
+
* Add a section to the main nav menu. Providing the `before` argument will
|
|
6
|
+
* move the section before any existing section with the specified id. If
|
|
7
|
+
* omitted (or if the id is not found) the section will be appended to the
|
|
8
|
+
* existing set of sections.
|
|
9
|
+
* This should be used in the NgModule `providers` array of your ui extension module.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```TypeScript
|
|
13
|
+
* \@NgModule({
|
|
14
|
+
* imports: [SharedModule],
|
|
15
|
+
* providers: [
|
|
16
|
+
* addNavMenuSection({
|
|
17
|
+
* id: 'reports',
|
|
18
|
+
* label: 'Reports',
|
|
19
|
+
* items: [{
|
|
20
|
+
* // ...
|
|
21
|
+
* }],
|
|
22
|
+
* },
|
|
23
|
+
* 'settings'),
|
|
24
|
+
* ],
|
|
25
|
+
* })
|
|
26
|
+
* export class MyUiExtensionModule {}
|
|
27
|
+
* ```
|
|
28
|
+
* @docsCategory nav-menu
|
|
29
|
+
*/
|
|
30
|
+
export function addNavMenuSection(config, before) {
|
|
31
|
+
return {
|
|
32
|
+
provide: APP_INITIALIZER,
|
|
33
|
+
multi: true,
|
|
34
|
+
useFactory: (navBuilderService) => () => {
|
|
35
|
+
navBuilderService.addNavMenuSection(config, before);
|
|
36
|
+
},
|
|
37
|
+
deps: [NavBuilderService],
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* @description
|
|
42
|
+
* Add a menu item to an existing section specified by `sectionId`. The id of the section
|
|
43
|
+
* can be found by inspecting the DOM and finding the `data-section-id` attribute.
|
|
44
|
+
* Providing the `before` argument will move the item before any existing item with the specified id.
|
|
45
|
+
* If omitted (or if the name is not found) the item will be appended to the
|
|
46
|
+
* end of the section.
|
|
47
|
+
*
|
|
48
|
+
* This should be used in the NgModule `providers` array of your ui extension module.
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* ```TypeScript
|
|
52
|
+
* \@NgModule({
|
|
53
|
+
* imports: [SharedModule],
|
|
54
|
+
* providers: [
|
|
55
|
+
* addNavMenuItem({
|
|
56
|
+
* id: 'reviews',
|
|
57
|
+
* label: 'Product Reviews',
|
|
58
|
+
* routerLink: ['/extensions/reviews'],
|
|
59
|
+
* icon: 'star',
|
|
60
|
+
* },
|
|
61
|
+
* 'marketing'),
|
|
62
|
+
* ],
|
|
63
|
+
* })
|
|
64
|
+
* export class MyUiExtensionModule {}
|
|
65
|
+
* ``
|
|
66
|
+
*
|
|
67
|
+
* @docsCategory nav-menu
|
|
68
|
+
*/
|
|
69
|
+
export function addNavMenuItem(config, sectionId, before) {
|
|
70
|
+
return {
|
|
71
|
+
provide: APP_INITIALIZER,
|
|
72
|
+
multi: true,
|
|
73
|
+
useFactory: (navBuilderService) => () => {
|
|
74
|
+
navBuilderService.addNavMenuItem(config, sectionId, before);
|
|
75
|
+
},
|
|
76
|
+
deps: [NavBuilderService],
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLW5hdi1tZW51LWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL2V4dGVuc2lvbi9hZGQtbmF2LW1lbnUtaXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBRTFELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBRWpGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTBCRztBQUNILE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxNQUFzQixFQUFFLE1BQWU7SUFDckUsT0FBTztRQUNILE9BQU8sRUFBRSxlQUFlO1FBQ3hCLEtBQUssRUFBRSxJQUFJO1FBQ1gsVUFBVSxFQUFFLENBQUMsaUJBQW9DLEVBQUUsRUFBRSxDQUFDLEdBQUcsRUFBRTtZQUN2RCxpQkFBaUIsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDeEQsQ0FBQztRQUNELElBQUksRUFBRSxDQUFDLGlCQUFpQixDQUFDO0tBQzVCLENBQUM7QUFDTixDQUFDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E0Qkc7QUFDSCxNQUFNLFVBQVUsY0FBYyxDQUFDLE1BQW1CLEVBQUUsU0FBaUIsRUFBRSxNQUFlO0lBQ2xGLE9BQU87UUFDSCxPQUFPLEVBQUUsZUFBZTtRQUN4QixLQUFLLEVBQUUsSUFBSTtRQUNYLFVBQVUsRUFBRSxDQUFDLGlCQUFvQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEVBQUU7WUFDdkQsaUJBQWlCLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDaEUsQ0FBQztRQUNELElBQUksRUFBRSxDQUFDLGlCQUFpQixDQUFDO0tBQzVCLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVBQX0lOSVRJQUxJWkVSLCBQcm92aWRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOYXZNZW51SXRlbSwgTmF2TWVudVNlY3Rpb24gfSBmcm9tICcuLi9wcm92aWRlcnMvbmF2LWJ1aWxkZXIvbmF2LWJ1aWxkZXItdHlwZXMnO1xyXG5pbXBvcnQgeyBOYXZCdWlsZGVyU2VydmljZSB9IGZyb20gJy4uL3Byb3ZpZGVycy9uYXYtYnVpbGRlci9uYXYtYnVpbGRlci5zZXJ2aWNlJztcclxuXHJcbi8qKlxyXG4gKiBAZGVzY3JpcHRpb25cclxuICogQWRkIGEgc2VjdGlvbiB0byB0aGUgbWFpbiBuYXYgbWVudS4gUHJvdmlkaW5nIHRoZSBgYmVmb3JlYCBhcmd1bWVudCB3aWxsXHJcbiAqIG1vdmUgdGhlIHNlY3Rpb24gYmVmb3JlIGFueSBleGlzdGluZyBzZWN0aW9uIHdpdGggdGhlIHNwZWNpZmllZCBpZC4gSWZcclxuICogb21pdHRlZCAob3IgaWYgdGhlIGlkIGlzIG5vdCBmb3VuZCkgdGhlIHNlY3Rpb24gd2lsbCBiZSBhcHBlbmRlZCB0byB0aGVcclxuICogZXhpc3Rpbmcgc2V0IG9mIHNlY3Rpb25zLlxyXG4gKiBUaGlzIHNob3VsZCBiZSB1c2VkIGluIHRoZSBOZ01vZHVsZSBgcHJvdmlkZXJzYCBhcnJheSBvZiB5b3VyIHVpIGV4dGVuc2lvbiBtb2R1bGUuXHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqIGBgYFR5cGVTY3JpcHRcclxuICogXFxATmdNb2R1bGUoe1xyXG4gKiAgIGltcG9ydHM6IFtTaGFyZWRNb2R1bGVdLFxyXG4gKiAgIHByb3ZpZGVyczogW1xyXG4gKiAgICAgYWRkTmF2TWVudVNlY3Rpb24oe1xyXG4gKiAgICAgICBpZDogJ3JlcG9ydHMnLFxyXG4gKiAgICAgICBsYWJlbDogJ1JlcG9ydHMnLFxyXG4gKiAgICAgICBpdGVtczogW3tcclxuICogICAgICAgICAgIC8vIC4uLlxyXG4gKiAgICAgICB9XSxcclxuICogICAgIH0sXHJcbiAqICAgICAnc2V0dGluZ3MnKSxcclxuICogICBdLFxyXG4gKiB9KVxyXG4gKiBleHBvcnQgY2xhc3MgTXlVaUV4dGVuc2lvbk1vZHVsZSB7fVxyXG4gKiBgYGBcclxuICogQGRvY3NDYXRlZ29yeSBuYXYtbWVudVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGFkZE5hdk1lbnVTZWN0aW9uKGNvbmZpZzogTmF2TWVudVNlY3Rpb24sIGJlZm9yZT86IHN0cmluZyk6IFByb3ZpZGVyIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxyXG4gICAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgICAgIHVzZUZhY3Rvcnk6IChuYXZCdWlsZGVyU2VydmljZTogTmF2QnVpbGRlclNlcnZpY2UpID0+ICgpID0+IHtcclxuICAgICAgICAgICAgbmF2QnVpbGRlclNlcnZpY2UuYWRkTmF2TWVudVNlY3Rpb24oY29uZmlnLCBiZWZvcmUpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZGVwczogW05hdkJ1aWxkZXJTZXJ2aWNlXSxcclxuICAgIH07XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBAZGVzY3JpcHRpb25cclxuICogQWRkIGEgbWVudSBpdGVtIHRvIGFuIGV4aXN0aW5nIHNlY3Rpb24gc3BlY2lmaWVkIGJ5IGBzZWN0aW9uSWRgLiBUaGUgaWQgb2YgdGhlIHNlY3Rpb25cclxuICogY2FuIGJlIGZvdW5kIGJ5IGluc3BlY3RpbmcgdGhlIERPTSBhbmQgZmluZGluZyB0aGUgYGRhdGEtc2VjdGlvbi1pZGAgYXR0cmlidXRlLlxyXG4gKiBQcm92aWRpbmcgdGhlIGBiZWZvcmVgIGFyZ3VtZW50IHdpbGwgbW92ZSB0aGUgaXRlbSBiZWZvcmUgYW55IGV4aXN0aW5nIGl0ZW0gd2l0aCB0aGUgc3BlY2lmaWVkIGlkLlxyXG4gKiBJZiBvbWl0dGVkIChvciBpZiB0aGUgbmFtZSBpcyBub3QgZm91bmQpIHRoZSBpdGVtIHdpbGwgYmUgYXBwZW5kZWQgdG8gdGhlXHJcbiAqIGVuZCBvZiB0aGUgc2VjdGlvbi5cclxuICpcclxuICogVGhpcyBzaG91bGQgYmUgdXNlZCBpbiB0aGUgTmdNb2R1bGUgYHByb3ZpZGVyc2AgYXJyYXkgb2YgeW91ciB1aSBleHRlbnNpb24gbW9kdWxlLlxyXG4gKlxyXG4gKiBAZXhhbXBsZVxyXG4gKiBgYGBUeXBlU2NyaXB0XHJcbiAqIFxcQE5nTW9kdWxlKHtcclxuICogICBpbXBvcnRzOiBbU2hhcmVkTW9kdWxlXSxcclxuICogICBwcm92aWRlcnM6IFtcclxuICogICAgIGFkZE5hdk1lbnVJdGVtKHtcclxuICogICAgICAgaWQ6ICdyZXZpZXdzJyxcclxuICogICAgICAgbGFiZWw6ICdQcm9kdWN0IFJldmlld3MnLFxyXG4gKiAgICAgICByb3V0ZXJMaW5rOiBbJy9leHRlbnNpb25zL3Jldmlld3MnXSxcclxuICogICAgICAgaWNvbjogJ3N0YXInLFxyXG4gKiAgICAgfSxcclxuICogICAgICdtYXJrZXRpbmcnKSxcclxuICogICBdLFxyXG4gKiB9KVxyXG4gKiBleHBvcnQgY2xhc3MgTXlVaUV4dGVuc2lvbk1vZHVsZSB7fVxyXG4gKiBgYFxyXG4gKlxyXG4gKiBAZG9jc0NhdGVnb3J5IG5hdi1tZW51XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gYWRkTmF2TWVudUl0ZW0oY29uZmlnOiBOYXZNZW51SXRlbSwgc2VjdGlvbklkOiBzdHJpbmcsIGJlZm9yZT86IHN0cmluZyk6IFByb3ZpZGVyIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxyXG4gICAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgICAgIHVzZUZhY3Rvcnk6IChuYXZCdWlsZGVyU2VydmljZTogTmF2QnVpbGRlclNlcnZpY2UpID0+ICgpID0+IHtcclxuICAgICAgICAgICAgbmF2QnVpbGRlclNlcnZpY2UuYWRkTmF2TWVudUl0ZW0oY29uZmlnLCBzZWN0aW9uSWQsIGJlZm9yZSk7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBkZXBzOiBbTmF2QnVpbGRlclNlcnZpY2VdLFxyXG4gICAgfTtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Component, inject } from '@angular/core';
|
|
2
|
+
import { SharedModule } from '../../shared/shared.module';
|
|
3
|
+
import { ROUTE_COMPONENT_OPTIONS, RouteComponent } from './route.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
export class AngularRouteComponent {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.component = inject(ROUTE_COMPONENT_OPTIONS).component;
|
|
9
|
+
}
|
|
10
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: AngularRouteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
11
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.2", type: AngularRouteComponent, isStandalone: true, selector: "vdr-angular-route-component", ngImport: i0, template: ` <vdr-route-component><ng-container *ngComponentOutlet="component" /></vdr-route-component> `, isInline: true, dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "directive", type: i1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "component", type: RouteComponent, selector: "vdr-route-component" }] }); }
|
|
12
|
+
}
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: AngularRouteComponent, decorators: [{
|
|
14
|
+
type: Component,
|
|
15
|
+
args: [{
|
|
16
|
+
selector: 'vdr-angular-route-component',
|
|
17
|
+
template: ` <vdr-route-component><ng-container *ngComponentOutlet="component" /></vdr-route-component> `,
|
|
18
|
+
standalone: true,
|
|
19
|
+
imports: [SharedModule, RouteComponent],
|
|
20
|
+
}]
|
|
21
|
+
}] });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1yb3V0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL2V4dGVuc2lvbi9jb21wb25lbnRzL2FuZ3VsYXItcm91dGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7OztBQVE1RSxNQUFNLE9BQU8scUJBQXFCO0lBTmxDO1FBT2MsY0FBUyxHQUFHLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLFNBQVMsQ0FBQztLQUNuRTs4R0FGWSxxQkFBcUI7a0dBQXJCLHFCQUFxQix1RkFKcEIsOEZBQThGLDJEQUU5RixZQUFZLHVTQUFFLGNBQWM7OzJGQUU3QixxQkFBcUI7a0JBTmpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDZCQUE2QjtvQkFDdkMsUUFBUSxFQUFFLDhGQUE4RjtvQkFDeEcsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxjQUFjLENBQUM7aUJBQzFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2hhcmVkTW9kdWxlIH0gZnJvbSAnLi4vLi4vc2hhcmVkL3NoYXJlZC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBST1VURV9DT01QT05FTlRfT1BUSU9OUywgUm91dGVDb21wb25lbnQgfSBmcm9tICcuL3JvdXRlLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAndmRyLWFuZ3VsYXItcm91dGUtY29tcG9uZW50JyxcclxuICAgIHRlbXBsYXRlOiBgIDx2ZHItcm91dGUtY29tcG9uZW50PjxuZy1jb250YWluZXIgKm5nQ29tcG9uZW50T3V0bGV0PVwiY29tcG9uZW50XCIgLz48L3Zkci1yb3V0ZS1jb21wb25lbnQ+IGAsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW1NoYXJlZE1vZHVsZSwgUm91dGVDb21wb25lbnRdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQW5ndWxhclJvdXRlQ29tcG9uZW50IHtcclxuICAgIHByb3RlY3RlZCBjb21wb25lbnQgPSBpbmplY3QoUk9VVEVfQ09NUE9ORU5UX09QVElPTlMpLmNvbXBvbmVudDtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { Component, inject, InjectionToken } from '@angular/core';
|
|
2
|
+
import { notNullOrUndefined } from '@vendure/common/lib/shared-utils';
|
|
3
|
+
import { combineLatest, Observable, of, switchMap } from 'rxjs';
|
|
4
|
+
import { filter, map } from 'rxjs/operators';
|
|
5
|
+
import { SharedModule } from '../../shared/shared.module';
|
|
6
|
+
import { PageMetadataService } from '../providers/page-metadata.service';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@angular/router";
|
|
9
|
+
import * as i2 from "@angular/common";
|
|
10
|
+
import * as i3 from "../../shared/components/page-header/page-header.component";
|
|
11
|
+
import * as i4 from "../../shared/components/page-title/page-title.component";
|
|
12
|
+
import * as i5 from "../../shared/components/page-body/page-body.component";
|
|
13
|
+
export const ROUTE_COMPONENT_OPTIONS = new InjectionToken('ROUTE_COMPONENT_OPTIONS');
|
|
14
|
+
export class RouteComponent {
|
|
15
|
+
constructor(route) {
|
|
16
|
+
this.route = route;
|
|
17
|
+
const breadcrumbLabel$ = this.route.data.pipe(switchMap(data => {
|
|
18
|
+
if (data.breadcrumb instanceof Observable) {
|
|
19
|
+
return data.breadcrumb;
|
|
20
|
+
}
|
|
21
|
+
if (typeof data.breadcrumb === 'function') {
|
|
22
|
+
return data.breadcrumb(data);
|
|
23
|
+
}
|
|
24
|
+
return of(undefined);
|
|
25
|
+
}), filter(notNullOrUndefined), map(breadcrumb => {
|
|
26
|
+
if (typeof breadcrumb === 'string') {
|
|
27
|
+
return breadcrumb;
|
|
28
|
+
}
|
|
29
|
+
if (Array.isArray(breadcrumb)) {
|
|
30
|
+
return breadcrumb[breadcrumb.length - 1].label;
|
|
31
|
+
}
|
|
32
|
+
return breadcrumb.label;
|
|
33
|
+
}));
|
|
34
|
+
this.title$ = combineLatest([inject(ROUTE_COMPONENT_OPTIONS).title$, breadcrumbLabel$]).pipe(map(([title, breadcrumbLabel]) => title ?? breadcrumbLabel));
|
|
35
|
+
}
|
|
36
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: RouteComponent, deps: [{ token: i1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
37
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.2", type: RouteComponent, isStandalone: true, selector: "vdr-route-component", providers: [PageMetadataService], ngImport: i0, template: `
|
|
38
|
+
<vdr-page-header>
|
|
39
|
+
<vdr-page-title *ngIf="title$ | async as title" [title]="title"></vdr-page-title>
|
|
40
|
+
</vdr-page-header>
|
|
41
|
+
<vdr-page-body><ng-content /></vdr-page-body>
|
|
42
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PageHeaderComponent, selector: "vdr-page-header" }, { kind: "component", type: i4.PageTitleComponent, selector: "vdr-page-title", inputs: ["title"] }, { kind: "component", type: i5.PageBodyComponent, selector: "vdr-page-body" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
|
|
43
|
+
}
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: RouteComponent, decorators: [{
|
|
45
|
+
type: Component,
|
|
46
|
+
args: [{
|
|
47
|
+
selector: 'vdr-route-component',
|
|
48
|
+
template: `
|
|
49
|
+
<vdr-page-header>
|
|
50
|
+
<vdr-page-title *ngIf="title$ | async as title" [title]="title"></vdr-page-title>
|
|
51
|
+
</vdr-page-header>
|
|
52
|
+
<vdr-page-body><ng-content /></vdr-page-body>
|
|
53
|
+
`,
|
|
54
|
+
standalone: true,
|
|
55
|
+
imports: [SharedModule],
|
|
56
|
+
providers: [PageMetadataService],
|
|
57
|
+
}]
|
|
58
|
+
}], ctorParameters: function () { return [{ type: i1.ActivatedRoute }]; } });
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb3JlL3NyYy9leHRlbnNpb24vY29tcG9uZW50cy9yb3V0ZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWxFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7Ozs7Ozs7QUFHekUsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsSUFBSSxjQUFjLENBQ3JELHlCQUF5QixDQUM1QixDQUFDO0FBY0YsTUFBTSxPQUFPLGNBQWM7SUFHdkIsWUFBb0IsS0FBcUI7UUFBckIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQ3pDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNiLElBQUksSUFBSSxDQUFDLFVBQVUsWUFBWSxVQUFVLEVBQUU7Z0JBQ3ZDLE9BQU8sSUFBSSxDQUFDLFVBQXlDLENBQUM7YUFDekQ7WUFDRCxJQUFJLE9BQU8sSUFBSSxDQUFDLFVBQVUsS0FBSyxVQUFVLEVBQUU7Z0JBQ3ZDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQWdDLENBQUM7YUFDL0Q7WUFDRCxPQUFPLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN6QixDQUFDLENBQUMsRUFDRixNQUFNLENBQUMsa0JBQWtCLENBQUMsRUFDMUIsR0FBRyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2IsSUFBSSxPQUFPLFVBQVUsS0FBSyxRQUFRLEVBQUU7Z0JBQ2hDLE9BQU8sVUFBVSxDQUFDO2FBQ3JCO1lBQ0QsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFO2dCQUMzQixPQUFPLFVBQVUsQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQzthQUNsRDtZQUNELE9BQU8sVUFBVSxDQUFDLEtBQUssQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FDTCxDQUFDO1FBRUYsSUFBSSxDQUFDLE1BQU0sR0FBRyxhQUFhLENBQUMsQ0FBQyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDeEYsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsZUFBZSxDQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssSUFBSSxlQUFlLENBQUMsQ0FDOUQsQ0FBQztJQUNOLENBQUM7OEdBN0JRLGNBQWM7a0dBQWQsY0FBYyxrRUFGWixDQUFDLG1CQUFtQixDQUFDLDBCQVJ0Qjs7Ozs7S0FLVCwyREFFUyxZQUFZOzsyRkFHYixjQUFjO2tCQVoxQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFFBQVEsRUFBRTs7Ozs7S0FLVDtvQkFDRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixTQUFTLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztpQkFDbkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBub3ROdWxsT3JVbmRlZmluZWQgfSBmcm9tICdAdmVuZHVyZS9jb21tb24vbGliL3NoYXJlZC11dGlscyc7XHJcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUsIG9mLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZmlsdGVyLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEJyZWFkY3J1bWJWYWx1ZSB9IGZyb20gJy4uLy4uL3Byb3ZpZGVycy9icmVhZGNydW1iL2JyZWFkY3J1bWIuc2VydmljZSc7XHJcbmltcG9ydCB7IFNoYXJlZE1vZHVsZSB9IGZyb20gJy4uLy4uL3NoYXJlZC9zaGFyZWQubW9kdWxlJztcclxuaW1wb3J0IHsgUGFnZU1ldGFkYXRhU2VydmljZSB9IGZyb20gJy4uL3Byb3ZpZGVycy9wYWdlLW1ldGFkYXRhLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBbmd1bGFyUm91dGVDb21wb25lbnRPcHRpb25zIH0gZnJvbSAnLi4vdHlwZXMnO1xyXG5cclxuZXhwb3J0IGNvbnN0IFJPVVRFX0NPTVBPTkVOVF9PUFRJT05TID0gbmV3IEluamVjdGlvblRva2VuPEFuZ3VsYXJSb3V0ZUNvbXBvbmVudE9wdGlvbnM+KFxyXG4gICAgJ1JPVVRFX0NPTVBPTkVOVF9PUFRJT05TJyxcclxuKTtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICd2ZHItcm91dGUtY29tcG9uZW50JyxcclxuICAgIHRlbXBsYXRlOiBgXHJcbiAgICAgICAgPHZkci1wYWdlLWhlYWRlcj5cclxuICAgICAgICAgICAgPHZkci1wYWdlLXRpdGxlICpuZ0lmPVwidGl0bGUkIHwgYXN5bmMgYXMgdGl0bGVcIiBbdGl0bGVdPVwidGl0bGVcIj48L3Zkci1wYWdlLXRpdGxlPlxyXG4gICAgICAgIDwvdmRyLXBhZ2UtaGVhZGVyPlxyXG4gICAgICAgIDx2ZHItcGFnZS1ib2R5PjxuZy1jb250ZW50IC8+PC92ZHItcGFnZS1ib2R5PlxyXG4gICAgYCxcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBpbXBvcnRzOiBbU2hhcmVkTW9kdWxlXSxcclxuICAgIHByb3ZpZGVyczogW1BhZ2VNZXRhZGF0YVNlcnZpY2VdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUm91dGVDb21wb25lbnQge1xyXG4gICAgcHJvdGVjdGVkIHRpdGxlJDogT2JzZXJ2YWJsZTxzdHJpbmcgfCB1bmRlZmluZWQ+O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlKSB7XHJcbiAgICAgICAgY29uc3QgYnJlYWRjcnVtYkxhYmVsJCA9IHRoaXMucm91dGUuZGF0YS5waXBlKFxyXG4gICAgICAgICAgICBzd2l0Y2hNYXAoZGF0YSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAoZGF0YS5icmVhZGNydW1iIGluc3RhbmNlb2YgT2JzZXJ2YWJsZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBkYXRhLmJyZWFkY3J1bWIgYXMgT2JzZXJ2YWJsZTxCcmVhZGNydW1iVmFsdWU+O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBkYXRhLmJyZWFkY3J1bWIgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZGF0YS5icmVhZGNydW1iKGRhdGEpIGFzIE9ic2VydmFibGU8QnJlYWRjcnVtYlZhbHVlPjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHJldHVybiBvZih1bmRlZmluZWQpO1xyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgZmlsdGVyKG5vdE51bGxPclVuZGVmaW5lZCksXHJcbiAgICAgICAgICAgIG1hcChicmVhZGNydW1iID0+IHtcclxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgYnJlYWRjcnVtYiA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gYnJlYWRjcnVtYjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGJyZWFkY3J1bWIpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGJyZWFkY3J1bWJbYnJlYWRjcnVtYi5sZW5ndGggLSAxXS5sYWJlbDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHJldHVybiBicmVhZGNydW1iLmxhYmVsO1xyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICApO1xyXG5cclxuICAgICAgICB0aGlzLnRpdGxlJCA9IGNvbWJpbmVMYXRlc3QoW2luamVjdChST1VURV9DT01QT05FTlRfT1BUSU9OUykudGl0bGUkLCBicmVhZGNydW1iTGFiZWwkXSkucGlwZShcclxuICAgICAgICAgICAgbWFwKChbdGl0bGUsIGJyZWFkY3J1bWJMYWJlbF0pID0+IHRpdGxlID8/IGJyZWFkY3J1bWJMYWJlbCksXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { inject, Injectable } from '@angular/core';
|
|
2
|
+
import { ROUTE_COMPONENT_OPTIONS } from '../components/route.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class PageMetadataService {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.routeComponentOptions = inject(ROUTE_COMPONENT_OPTIONS);
|
|
7
|
+
}
|
|
8
|
+
setTitle(title) {
|
|
9
|
+
this.routeComponentOptions.title$.next(title);
|
|
10
|
+
}
|
|
11
|
+
setBreadcrumbs(value) {
|
|
12
|
+
this.routeComponentOptions.breadcrumb$.next(value);
|
|
13
|
+
}
|
|
14
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: PageMetadataService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
15
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: PageMetadataService }); }
|
|
16
|
+
}
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: PageMetadataService, decorators: [{
|
|
18
|
+
type: Injectable
|
|
19
|
+
}] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1tZXRhZGF0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb3JlL3NyYy9leHRlbnNpb24vcHJvdmlkZXJzL3BhZ2UtbWV0YWRhdGEuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7QUFHeEUsTUFBTSxPQUFPLG1CQUFtQjtJQURoQztRQUVxQiwwQkFBcUIsR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztLQVM1RTtJQVBHLFFBQVEsQ0FBQyxLQUFhO1FBQ2xCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxjQUFjLENBQUMsS0FBc0I7UUFDakMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkQsQ0FBQzs4R0FUUSxtQkFBbUI7a0hBQW5CLG1CQUFtQjs7MkZBQW5CLG1CQUFtQjtrQkFEL0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCcmVhZGNydW1iVmFsdWUgfSBmcm9tICcuLi8uLi9wcm92aWRlcnMvYnJlYWRjcnVtYi9icmVhZGNydW1iLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBST1VURV9DT01QT05FTlRfT1BUSU9OUyB9IGZyb20gJy4uL2NvbXBvbmVudHMvcm91dGUuY29tcG9uZW50JztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFBhZ2VNZXRhZGF0YVNlcnZpY2Uge1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZUNvbXBvbmVudE9wdGlvbnMgPSBpbmplY3QoUk9VVEVfQ09NUE9ORU5UX09QVElPTlMpO1xyXG5cclxuICAgIHNldFRpdGxlKHRpdGxlOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLnJvdXRlQ29tcG9uZW50T3B0aW9ucy50aXRsZSQubmV4dCh0aXRsZSk7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0QnJlYWRjcnVtYnModmFsdWU6IEJyZWFkY3J1bWJWYWx1ZSkge1xyXG4gICAgICAgIHRoaXMucm91dGVDb21wb25lbnRPcHRpb25zLmJyZWFkY3J1bWIkLm5leHQodmFsdWUpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { APP_INITIALIZER } from '@angular/core';
|
|
2
|
+
import { BulkActionRegistryService } from '../providers/bulk-action-registry/bulk-action-registry.service';
|
|
3
|
+
/**
|
|
4
|
+
* @description
|
|
5
|
+
* Registers a custom {@link BulkAction} which can be invoked from the bulk action menu
|
|
6
|
+
* of any supported list view.
|
|
7
|
+
*
|
|
8
|
+
* This allows you to provide custom functionality that can operate on any of the selected
|
|
9
|
+
* items in the list view.
|
|
10
|
+
*
|
|
11
|
+
* In this example, imagine we have an integration with a 3rd-party text translation service. This
|
|
12
|
+
* bulk action allows us to select multiple products from the product list view, and send them for
|
|
13
|
+
* translation via a custom service which integrates with the translation service's API.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```TypeScript
|
|
17
|
+
* import { NgModule } from '\@angular/core';
|
|
18
|
+
* import { ModalService, registerBulkAction, SharedModule } from '\@vendure/admin-ui/core';
|
|
19
|
+
*
|
|
20
|
+
* \@NgModule({
|
|
21
|
+
* imports: [SharedModule],
|
|
22
|
+
* providers: [
|
|
23
|
+
* ProductDataTranslationService,
|
|
24
|
+
* registerBulkAction({
|
|
25
|
+
* location: 'product-list',
|
|
26
|
+
* label: 'Send to translation service',
|
|
27
|
+
* icon: 'language',
|
|
28
|
+
* onClick: ({ injector, selection }) => {
|
|
29
|
+
* const modalService = injector.get(ModalService);
|
|
30
|
+
* const translationService = injector.get(ProductDataTranslationService);
|
|
31
|
+
* modalService
|
|
32
|
+
* .dialog({
|
|
33
|
+
* title: `Send ${selection.length} products for translation?`,
|
|
34
|
+
* buttons: [
|
|
35
|
+
* { type: 'secondary', label: 'cancel' },
|
|
36
|
+
* { type: 'primary', label: 'send', returnValue: true },
|
|
37
|
+
* ],
|
|
38
|
+
* })
|
|
39
|
+
* .subscribe(response => {
|
|
40
|
+
* if (response) {
|
|
41
|
+
* translationService.sendForTranslation(selection.map(item => item.productId));
|
|
42
|
+
* }
|
|
43
|
+
* });
|
|
44
|
+
* },
|
|
45
|
+
* }),
|
|
46
|
+
* ],
|
|
47
|
+
* })
|
|
48
|
+
* export class MyUiExtensionModule {}
|
|
49
|
+
* ```
|
|
50
|
+
* @since 1.8.0
|
|
51
|
+
* @docsCategory bulk-actions
|
|
52
|
+
*/
|
|
53
|
+
export function registerBulkAction(bulkAction) {
|
|
54
|
+
return {
|
|
55
|
+
provide: APP_INITIALIZER,
|
|
56
|
+
multi: true,
|
|
57
|
+
useFactory: (registry) => () => {
|
|
58
|
+
registry.registerBulkAction(bulkAction);
|
|
59
|
+
},
|
|
60
|
+
deps: [BulkActionRegistryService],
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXItYnVsay1hY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL2V4dGVuc2lvbi9yZWdpc3Rlci1idWxrLWFjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFtQixNQUFNLGVBQWUsQ0FBQztBQUVqRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUczRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWlERztBQUNILE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxVQUFzQjtJQUNyRCxPQUFPO1FBQ0gsT0FBTyxFQUFFLGVBQWU7UUFDeEIsS0FBSyxFQUFFLElBQUk7UUFDWCxVQUFVLEVBQUUsQ0FBQyxRQUFtQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEVBQUU7WUFDdEQsUUFBUSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzVDLENBQUM7UUFDRCxJQUFJLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQztLQUNwQyxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFQUF9JTklUSUFMSVpFUiwgRmFjdG9yeVByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBCdWxrQWN0aW9uUmVnaXN0cnlTZXJ2aWNlIH0gZnJvbSAnLi4vcHJvdmlkZXJzL2J1bGstYWN0aW9uLXJlZ2lzdHJ5L2J1bGstYWN0aW9uLXJlZ2lzdHJ5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCdWxrQWN0aW9uIH0gZnJvbSAnLi4vcHJvdmlkZXJzL2J1bGstYWN0aW9uLXJlZ2lzdHJ5L2J1bGstYWN0aW9uLXR5cGVzJztcclxuXHJcbi8qKlxyXG4gKiBAZGVzY3JpcHRpb25cclxuICogUmVnaXN0ZXJzIGEgY3VzdG9tIHtAbGluayBCdWxrQWN0aW9ufSB3aGljaCBjYW4gYmUgaW52b2tlZCBmcm9tIHRoZSBidWxrIGFjdGlvbiBtZW51XHJcbiAqIG9mIGFueSBzdXBwb3J0ZWQgbGlzdCB2aWV3LlxyXG4gKlxyXG4gKiBUaGlzIGFsbG93cyB5b3UgdG8gcHJvdmlkZSBjdXN0b20gZnVuY3Rpb25hbGl0eSB0aGF0IGNhbiBvcGVyYXRlIG9uIGFueSBvZiB0aGUgc2VsZWN0ZWRcclxuICogaXRlbXMgaW4gdGhlIGxpc3Qgdmlldy5cclxuICpcclxuICogSW4gdGhpcyBleGFtcGxlLCBpbWFnaW5lIHdlIGhhdmUgYW4gaW50ZWdyYXRpb24gd2l0aCBhIDNyZC1wYXJ0eSB0ZXh0IHRyYW5zbGF0aW9uIHNlcnZpY2UuIFRoaXNcclxuICogYnVsayBhY3Rpb24gYWxsb3dzIHVzIHRvIHNlbGVjdCBtdWx0aXBsZSBwcm9kdWN0cyBmcm9tIHRoZSBwcm9kdWN0IGxpc3QgdmlldywgYW5kIHNlbmQgdGhlbSBmb3JcclxuICogdHJhbnNsYXRpb24gdmlhIGEgY3VzdG9tIHNlcnZpY2Ugd2hpY2ggaW50ZWdyYXRlcyB3aXRoIHRoZSB0cmFuc2xhdGlvbiBzZXJ2aWNlJ3MgQVBJLlxyXG4gKlxyXG4gKiBAZXhhbXBsZVxyXG4gKiBgYGBUeXBlU2NyaXB0XHJcbiAqIGltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnXFxAYW5ndWxhci9jb3JlJztcclxuICogaW1wb3J0IHsgTW9kYWxTZXJ2aWNlLCByZWdpc3RlckJ1bGtBY3Rpb24sIFNoYXJlZE1vZHVsZSB9IGZyb20gJ1xcQHZlbmR1cmUvYWRtaW4tdWkvY29yZSc7XHJcbiAqXHJcbiAqIFxcQE5nTW9kdWxlKHtcclxuICogICBpbXBvcnRzOiBbU2hhcmVkTW9kdWxlXSxcclxuICogICBwcm92aWRlcnM6IFtcclxuICogICAgIFByb2R1Y3REYXRhVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG4gKiAgICAgcmVnaXN0ZXJCdWxrQWN0aW9uKHtcclxuICogICAgICAgbG9jYXRpb246ICdwcm9kdWN0LWxpc3QnLFxyXG4gKiAgICAgICBsYWJlbDogJ1NlbmQgdG8gdHJhbnNsYXRpb24gc2VydmljZScsXHJcbiAqICAgICAgIGljb246ICdsYW5ndWFnZScsXHJcbiAqICAgICAgIG9uQ2xpY2s6ICh7IGluamVjdG9yLCBzZWxlY3Rpb24gfSkgPT4ge1xyXG4gKiAgICAgICAgIGNvbnN0IG1vZGFsU2VydmljZSA9IGluamVjdG9yLmdldChNb2RhbFNlcnZpY2UpO1xyXG4gKiAgICAgICAgIGNvbnN0IHRyYW5zbGF0aW9uU2VydmljZSA9IGluamVjdG9yLmdldChQcm9kdWN0RGF0YVRyYW5zbGF0aW9uU2VydmljZSk7XHJcbiAqICAgICAgICAgbW9kYWxTZXJ2aWNlXHJcbiAqICAgICAgICAgICAuZGlhbG9nKHtcclxuICogICAgICAgICAgICAgdGl0bGU6IGBTZW5kICR7c2VsZWN0aW9uLmxlbmd0aH0gcHJvZHVjdHMgZm9yIHRyYW5zbGF0aW9uP2AsXHJcbiAqICAgICAgICAgICAgIGJ1dHRvbnM6IFtcclxuICogICAgICAgICAgICAgICB7IHR5cGU6ICdzZWNvbmRhcnknLCBsYWJlbDogJ2NhbmNlbCcgfSxcclxuICogICAgICAgICAgICAgICB7IHR5cGU6ICdwcmltYXJ5JywgbGFiZWw6ICdzZW5kJywgcmV0dXJuVmFsdWU6IHRydWUgfSxcclxuICogICAgICAgICAgICAgXSxcclxuICogICAgICAgICAgIH0pXHJcbiAqICAgICAgICAgICAuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcclxuICogICAgICAgICAgICAgaWYgKHJlc3BvbnNlKSB7XHJcbiAqICAgICAgICAgICAgICAgdHJhbnNsYXRpb25TZXJ2aWNlLnNlbmRGb3JUcmFuc2xhdGlvbihzZWxlY3Rpb24ubWFwKGl0ZW0gPT4gaXRlbS5wcm9kdWN0SWQpKTtcclxuICogICAgICAgICAgICAgfVxyXG4gKiAgICAgICAgICAgfSk7XHJcbiAqICAgICAgIH0sXHJcbiAqICAgICB9KSxcclxuICogICBdLFxyXG4gKiB9KVxyXG4gKiBleHBvcnQgY2xhc3MgTXlVaUV4dGVuc2lvbk1vZHVsZSB7fVxyXG4gKiBgYGBcclxuICogQHNpbmNlIDEuOC4wXHJcbiAqIEBkb2NzQ2F0ZWdvcnkgYnVsay1hY3Rpb25zXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJCdWxrQWN0aW9uKGJ1bGtBY3Rpb246IEJ1bGtBY3Rpb24pOiBGYWN0b3J5UHJvdmlkZXIge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXHJcbiAgICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICAgICAgdXNlRmFjdG9yeTogKHJlZ2lzdHJ5OiBCdWxrQWN0aW9uUmVnaXN0cnlTZXJ2aWNlKSA9PiAoKSA9PiB7XHJcbiAgICAgICAgICAgIHJlZ2lzdHJ5LnJlZ2lzdGVyQnVsa0FjdGlvbihidWxrQWN0aW9uKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGRlcHM6IFtCdWxrQWN0aW9uUmVnaXN0cnlTZXJ2aWNlXSxcclxuICAgIH07XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { APP_INITIALIZER } from '@angular/core';
|
|
2
|
+
import { CustomDetailComponentService } from '../providers/custom-detail-component/custom-detail-component.service';
|
|
3
|
+
/**
|
|
4
|
+
* @description
|
|
5
|
+
* Registers a {@link CustomDetailComponent} to be placed in a given location. This allows you
|
|
6
|
+
* to embed any type of custom Angular component in the entity detail pages of the Admin UI.
|
|
7
|
+
*
|
|
8
|
+
* @docsCategory custom-detail-components
|
|
9
|
+
*/
|
|
10
|
+
export function registerCustomDetailComponent(config) {
|
|
11
|
+
return {
|
|
12
|
+
provide: APP_INITIALIZER,
|
|
13
|
+
multi: true,
|
|
14
|
+
useFactory: (customDetailComponentService) => () => {
|
|
15
|
+
customDetailComponentService.registerCustomDetailComponent(config);
|
|
16
|
+
},
|
|
17
|
+
deps: [CustomDetailComponentService],
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXItY3VzdG9tLWRldGFpbC1jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL2V4dGVuc2lvbi9yZWdpc3Rlci1jdXN0b20tZGV0YWlsLWNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBRTFELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHNFQUFzRSxDQUFDO0FBRXBIOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSw2QkFBNkIsQ0FBQyxNQUFtQztJQUM3RSxPQUFPO1FBQ0gsT0FBTyxFQUFFLGVBQWU7UUFDeEIsS0FBSyxFQUFFLElBQUk7UUFDWCxVQUFVLEVBQUUsQ0FBQyw0QkFBMEQsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFO1lBQzdFLDRCQUE0QixDQUFDLDZCQUE2QixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZFLENBQUM7UUFDRCxJQUFJLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQztLQUN2QyxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFQUF9JTklUSUFMSVpFUiwgUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ3VzdG9tRGV0YWlsQ29tcG9uZW50Q29uZmlnIH0gZnJvbSAnLi4vcHJvdmlkZXJzL2N1c3RvbS1kZXRhaWwtY29tcG9uZW50L2N1c3RvbS1kZXRhaWwtY29tcG9uZW50LXR5cGVzJztcclxuaW1wb3J0IHsgQ3VzdG9tRGV0YWlsQ29tcG9uZW50U2VydmljZSB9IGZyb20gJy4uL3Byb3ZpZGVycy9jdXN0b20tZGV0YWlsLWNvbXBvbmVudC9jdXN0b20tZGV0YWlsLWNvbXBvbmVudC5zZXJ2aWNlJztcclxuXHJcbi8qKlxyXG4gKiBAZGVzY3JpcHRpb25cclxuICogUmVnaXN0ZXJzIGEge0BsaW5rIEN1c3RvbURldGFpbENvbXBvbmVudH0gdG8gYmUgcGxhY2VkIGluIGEgZ2l2ZW4gbG9jYXRpb24uIFRoaXMgYWxsb3dzIHlvdVxyXG4gKiB0byBlbWJlZCBhbnkgdHlwZSBvZiBjdXN0b20gQW5ndWxhciBjb21wb25lbnQgaW4gdGhlIGVudGl0eSBkZXRhaWwgcGFnZXMgb2YgdGhlIEFkbWluIFVJLlxyXG4gKlxyXG4gKiBAZG9jc0NhdGVnb3J5IGN1c3RvbS1kZXRhaWwtY29tcG9uZW50c1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyQ3VzdG9tRGV0YWlsQ29tcG9uZW50KGNvbmZpZzogQ3VzdG9tRGV0YWlsQ29tcG9uZW50Q29uZmlnKTogUHJvdmlkZXIge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXHJcbiAgICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICAgICAgdXNlRmFjdG9yeTogKGN1c3RvbURldGFpbENvbXBvbmVudFNlcnZpY2U6IEN1c3RvbURldGFpbENvbXBvbmVudFNlcnZpY2UpID0+ICgpID0+IHtcclxuICAgICAgICAgICAgY3VzdG9tRGV0YWlsQ29tcG9uZW50U2VydmljZS5yZWdpc3RlckN1c3RvbURldGFpbENvbXBvbmVudChjb25maWcpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZGVwczogW0N1c3RvbURldGFpbENvbXBvbmVudFNlcnZpY2VdLFxyXG4gICAgfTtcclxufVxyXG4iXX0=
|