@flywheel-io/vision 2.0.0-beta-4 → 2.0.0-beta.11
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/assets/fonts/Flywheel-Vision-Icons.svg +26 -0
- package/assets/fonts/Flywheel-Vision-Icons.ttf +0 -0
- package/assets/fonts/Flywheel-Vision-Icons.woff +0 -0
- package/assets/svg/arrow-redo.svg +4 -0
- package/assets/svg/arrow-undo.svg +4 -0
- package/assets/svg/arrow-up-high-priority.svg +6 -0
- package/assets/svg/arrow-up-low-priority.svg +6 -0
- package/assets/svg/certificate.svg +4 -0
- package/assets/svg/check-mark-certificate.svg +4 -0
- package/assets/svg/document-file-checkmark-bottom-left.svg +4 -0
- package/assets/svg/folders-copy-expand-arrow-down.svg +6 -0
- package/assets/svg/folders-copy-expand-arrow-up.svg +6 -0
- package/assets/svg/monitor-computer.svg +4 -0
- package/assets/svg/server-databases-checkmark-user.svg +4 -0
- package/assets/svg/stop-minus.svg +4 -0
- package/assets/svg/user-profile-cards-pool.svg +4 -0
- package/components/alert/alert.component.d.ts +1 -1
- package/components/app-icon/app-icon.component.d.ts +1 -1
- package/components/avatar/avatar.component.d.ts +1 -1
- package/components/badge/badge.component.d.ts +1 -1
- package/components/breadcrumbs/crumb.component.d.ts +1 -1
- package/components/button/button.component.d.ts +1 -1
- package/components/button-group/button-group.component.d.ts +1 -1
- package/components/button-toggle/button-toggle-item/button-toggle-item.component.d.ts +1 -1
- package/components/button-toggle/button-toggle.component.d.ts +2 -1
- package/components/card/card-attribute/card-attribute.component.d.ts +1 -1
- package/components/card/card-author/card-author.component.d.ts +1 -1
- package/components/card/card-header/card-header.component.d.ts +1 -1
- package/components/card/card.component.d.ts +1 -1
- package/components/checkbox/checkbox.component.d.ts +1 -1
- package/components/chip/chip.component.d.ts +1 -1
- package/components/contained-input/contained-input.component.d.ts +1 -1
- package/components/date-input/date-input.component.d.ts +1 -1
- package/components/dialog/dialog-confirm.component.d.ts +1 -1
- package/components/dialog/dialog-content.component.d.ts +1 -1
- package/components/dialog/dialog-simple.component.d.ts +1 -1
- package/components/dialog/dialog.component.d.ts +1 -1
- package/components/form-heading/form-heading.component.d.ts +1 -1
- package/components/icon/icon.component.d.ts +1 -1
- package/components/icon/icon.types.d.ts +2 -2
- package/components/icon-button/icon-button.component.d.ts +1 -1
- package/components/layouts/context/context.component.d.ts +1 -1
- package/components/layouts/grid/grid.component.d.ts +1 -1
- package/components/layouts/layout-group.component.d.ts +1 -1
- package/components/layouts/panel/panel.component.d.ts +1 -1
- package/components/layouts/sidebar/sidebar.component.d.ts +1 -1
- package/components/layouts/toolbar/toolbar.component.d.ts +1 -1
- package/components/menu/menu-container/menu-container.component.d.ts +1 -1
- package/components/menu/menu-item/menu-item.component.d.ts +1 -1
- package/components/menu/menu-item-group/menu-item-group.component.d.ts +1 -1
- package/components/menu/menu-sub-item/menu-sub-item.component.d.ts +1 -1
- package/components/menu/menu.component.d.ts +1 -1
- package/components/navbar/navbar-item/navbar-item.component.d.ts +1 -1
- package/components/navbar/navbar-sub-item/navbar-sub-item.component.d.ts +1 -1
- package/components/navbar/navbar.component.d.ts +1 -1
- package/components/number-input/number-input.component.d.ts +1 -1
- package/components/paginator/paginator-advanced/paginator-advanced.component.d.ts +1 -1
- package/components/paginator/paginator.component.d.ts +6 -3
- package/components/phone-input/phone-input.component.d.ts +1 -1
- package/components/phone-input/phone-input.model.d.ts +1 -1
- package/components/popover/popover-panel/popover-panel.component.d.ts +1 -1
- package/components/popover/popover.component.d.ts +1 -1
- package/components/progress/bar/bar.component.d.ts +1 -1
- package/components/progress/spinner/spinner.component.d.ts +1 -1
- package/components/radio/radio-group.component.d.ts +1 -1
- package/components/radio/radio.component.d.ts +1 -1
- package/components/section-heading/back-button/back-button.component.d.ts +1 -1
- package/components/section-heading/section-heading.component.d.ts +1 -1
- package/components/section-heading/subsection-heading/subsection-heading.component.d.ts +1 -1
- package/components/select-menu/multi-select-menu/multi-select-menu.component.d.ts +6 -4
- package/components/select-menu/select-menu.component.d.ts +6 -4
- package/components/select-menu/select-menu.module.d.ts +2 -1
- package/components/shared/services/menu-manager.service.d.ts +10 -0
- package/components/snackbar/snackbar/snackbar.component.d.ts +1 -1
- package/components/stepper/step.component.d.ts +1 -1
- package/components/stepper/stepper.component.d.ts +1 -1
- package/components/switch/switch.component.d.ts +1 -1
- package/components/table/cell.d.ts +1 -1
- package/components/table/row.d.ts +3 -5
- package/components/tabs/tab/tab.component.d.ts +1 -1
- package/components/tabs/tab-panel/tab-panel.component.d.ts +1 -1
- package/components/tabs/tabs.component.d.ts +1 -1
- package/components/text-input/text-input.component.d.ts +5 -4
- package/components/textarea-input/textarea-input.component.d.ts +1 -1
- package/components/tooltip/tooltip-panel/tooltip-panel.component.d.ts +1 -1
- package/components/tooltip/tooltip.component.d.ts +1 -1
- package/components/wrapped-input/wrapped-input.component.d.ts +1 -1
- package/directives/menu-register.directive.d.ts +14 -0
- package/{esm2020 → esm2022}/components/alert/alert.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/alert/alert.module.mjs +9 -9
- package/{esm2020 → esm2022}/components/app-icon/app-icon.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/app-icon/app-icon.module.mjs +7 -7
- package/{esm2020 → esm2022}/components/avatar/avatar.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/avatar/avatar.module.mjs +7 -7
- package/esm2022/components/badge/badge.component.mjs +45 -0
- package/{esm2020 → esm2022}/components/badge/badge.module.mjs +5 -5
- package/esm2022/components/breadcrumbs/breadcrumbs.component.mjs +22 -0
- package/{esm2020 → esm2022}/components/breadcrumbs/breadcrumbs.module.mjs +9 -9
- package/esm2022/components/breadcrumbs/crumb.component.mjs +34 -0
- package/{esm2020 → esm2022}/components/button/button.component.mjs +4 -4
- package/esm2022/components/button/button.directives.mjs +129 -0
- package/{esm2020 → esm2022}/components/button/button.module.mjs +21 -21
- package/esm2022/components/button-group/button-group.component.mjs +131 -0
- package/{esm2020 → esm2022}/components/button-group/button-group.module.mjs +9 -9
- package/esm2022/components/button-toggle/button-toggle-item/button-toggle-item.component.mjs +54 -0
- package/esm2022/components/button-toggle/button-toggle.component.mjs +137 -0
- package/{esm2020 → esm2022}/components/button-toggle/button-toggle.module.mjs +9 -9
- package/{esm2020 → esm2022}/components/card/card-attribute/card-attribute.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/card/card-author/card-author.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/card/card-content/card-content.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/card/card-footer/card-footer.component.mjs +8 -8
- package/{esm2020 → esm2022}/components/card/card-header/card-header.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/card/card.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/card/card.module.mjs +19 -19
- package/esm2022/components/checkbox/checkbox.component.mjs +79 -0
- package/{esm2020 → esm2022}/components/checkbox/checkbox.module.mjs +9 -9
- package/esm2022/components/chip/chip.component.mjs +52 -0
- package/{esm2020 → esm2022}/components/chip/chip.module.mjs +9 -9
- package/esm2022/components/contained-input/contained-input.component.mjs +86 -0
- package/{esm2020 → esm2022}/components/contained-input/contained-input.module.mjs +13 -13
- package/esm2022/components/date-input/date-input.component.mjs +139 -0
- package/{esm2020 → esm2022}/components/date-input/date-input.module.mjs +9 -9
- package/{esm2020 → esm2022}/components/dialog/dialog-actions.component.mjs +9 -9
- package/{esm2020 → esm2022}/components/dialog/dialog-confirm.component.mjs +6 -6
- package/esm2022/components/dialog/dialog-content.component.mjs +38 -0
- package/{esm2020 → esm2022}/components/dialog/dialog-header.component.mjs +9 -9
- package/{esm2020 → esm2022}/components/dialog/dialog-simple.component.mjs +6 -6
- package/{esm2020 → esm2022}/components/dialog/dialog.component.mjs +6 -6
- package/{esm2020 → esm2022}/components/dialog/dialog.service.mjs +6 -6
- package/{esm2020 → esm2022}/components/dialog/dialogs.module.mjs +27 -27
- package/{esm2020 → esm2022}/components/form-heading/form-heading.component.mjs +5 -5
- package/{esm2020 → esm2022}/components/form-heading/form-heading.module.mjs +9 -9
- package/esm2022/components/forms/validators.mjs +81 -0
- package/esm2022/components/icon/icon.component.mjs +61 -0
- package/{esm2020 → esm2022}/components/icon/icon.module.mjs +5 -5
- package/esm2022/components/icon/icon.types.mjs +330 -0
- package/{esm2020 → esm2022}/components/icon-button/icon-button.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/icon-button/icon-button.module.mjs +7 -7
- package/esm2022/components/layouts/context/context.component.mjs +46 -0
- package/{esm2020 → esm2022}/components/layouts/grid/grid.component.mjs +7 -7
- package/esm2022/components/layouts/layout-group.component.mjs +36 -0
- package/{esm2020 → esm2022}/components/layouts/layouts.module.mjs +19 -19
- package/{esm2020 → esm2022}/components/layouts/panel/panel.component.mjs +5 -5
- package/{esm2020 → esm2022}/components/layouts/sidebar/sidebar.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/layouts/toolbar/toolbar.component.mjs +4 -4
- package/esm2022/components/menu/menu-close-triggers.directive.mjs +38 -0
- package/esm2022/components/menu/menu-container/menu-container.component.mjs +90 -0
- package/{esm2020 → esm2022}/components/menu/menu-header/menu-header.component.mjs +4 -4
- package/esm2022/components/menu/menu-item/menu-item.component.mjs +136 -0
- package/{esm2020 → esm2022}/components/menu/menu-item-group/menu-item-group.component.mjs +5 -5
- package/{esm2020 → esm2022}/components/menu/menu-separator/menu-separator.component.mjs +4 -4
- package/esm2022/components/menu/menu-sub-item/menu-sub-item.component.mjs +109 -0
- package/esm2022/components/menu/menu.component.mjs +212 -0
- package/{esm2020 → esm2022}/components/menu/menu.module.mjs +37 -37
- package/{esm2020 → esm2022}/components/navbar/navbar-header/navbar-header.component.mjs +4 -4
- package/esm2022/components/navbar/navbar-item/navbar-item.component.mjs +95 -0
- package/esm2022/components/navbar/navbar-sub-item/navbar-sub-item.component.mjs +76 -0
- package/esm2022/components/navbar/navbar.component.mjs +75 -0
- package/{esm2020 → esm2022}/components/navbar/navbar.module.mjs +25 -25
- package/esm2022/components/number-input/number-input.component.mjs +122 -0
- package/{esm2020 → esm2022}/components/number-input/number-input.module.mjs +9 -9
- package/esm2022/components/paginator/paginator-advanced/paginator-advanced.component.mjs +123 -0
- package/esm2022/components/paginator/paginator.component.mjs +133 -0
- package/{esm2020 → esm2022}/components/paginator/paginator.module.mjs +17 -17
- package/esm2022/components/phone-input/phone-input.component.mjs +285 -0
- package/{esm2020 → esm2022}/components/phone-input/phone-input.module.mjs +17 -17
- package/{esm2020 → esm2022}/components/popover/popover-panel/popover-panel.component.mjs +4 -4
- package/esm2022/components/popover/popover.component.mjs +76 -0
- package/{esm2020 → esm2022}/components/popover/popover.module.mjs +13 -13
- package/{esm2020 → esm2022}/components/progress/bar/bar.component.mjs +5 -5
- package/{esm2020 → esm2022}/components/progress/progress.module.mjs +7 -7
- package/esm2022/components/progress/spinner/spinner.component.mjs +101 -0
- package/esm2022/components/radio/radio-group.component.mjs +117 -0
- package/esm2022/components/radio/radio.component.mjs +51 -0
- package/{esm2020 → esm2022}/components/radio/radio.module.mjs +11 -11
- package/esm2022/components/section-heading/back-button/back-button.component.mjs +30 -0
- package/{esm2020 → esm2022}/components/section-heading/section-heading.component.mjs +5 -5
- package/{esm2020 → esm2022}/components/section-heading/section-heading.module.mjs +13 -13
- package/{esm2020 → esm2022}/components/section-heading/subsection-heading/subsection-heading.component.mjs +5 -5
- package/esm2022/components/select-menu/multi-select-menu/multi-select-menu.component.mjs +377 -0
- package/esm2022/components/select-menu/select-menu.component.mjs +332 -0
- package/esm2022/components/select-menu/select-menu.module.mjs +56 -0
- package/esm2022/components/shared/pipes/pipes.module.mjs +36 -0
- package/esm2022/components/shared/pipes/translate.pipe.mjs +40 -0
- package/{esm2020 → esm2022}/components/shared/pipes/trusthtml.pipe.mjs +5 -5
- package/esm2022/components/shared/services/menu-manager.service.mjs +27 -0
- package/esm2022/components/shared/translation.service.mjs +26 -0
- package/esm2022/components/snackbar/snackbar/snackbar.component.mjs +111 -0
- package/esm2022/components/snackbar/snackbar-container/snackbar-container.component.mjs +63 -0
- package/{esm2020 → esm2022}/components/snackbar/snackbar.module.mjs +15 -15
- package/esm2022/components/snackbar/snackbar.service.mjs +36 -0
- package/esm2022/components/stepper/step.component.mjs +113 -0
- package/esm2022/components/stepper/stepper.component.mjs +95 -0
- package/{esm2020 → esm2022}/components/stepper/stepper.module.mjs +13 -13
- package/esm2022/components/switch/switch.component.mjs +73 -0
- package/{esm2020 → esm2022}/components/switch/switch.module.mjs +5 -5
- package/{esm2020 → esm2022}/components/table/cell.mjs +24 -24
- package/esm2022/components/table/row.mjs +164 -0
- package/esm2022/components/table/table-dense.component.mjs +38 -0
- package/esm2022/components/table/table.component.mjs +38 -0
- package/{esm2020 → esm2022}/components/table/table.module.mjs +37 -37
- package/esm2022/components/tabs/tab/tab.component.mjs +79 -0
- package/{esm2020 → esm2022}/components/tabs/tab-panel/tab-panel.component.mjs +4 -4
- package/esm2022/components/tabs/tabs.component.mjs +68 -0
- package/{esm2020 → esm2022}/components/tabs/tabs.module.mjs +11 -11
- package/esm2022/components/text-input/text-input.component.mjs +118 -0
- package/{esm2020 → esm2022}/components/text-input/text-input.module.mjs +9 -9
- package/esm2022/components/textarea-input/textarea-input.component.mjs +86 -0
- package/{esm2020 → esm2022}/components/textarea-input/textarea-input.module.mjs +11 -11
- package/{esm2020 → esm2022}/components/tooltip/tooltip-panel/tooltip-panel.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/tooltip/tooltip.component.mjs +5 -5
- package/{esm2020 → esm2022}/components/tooltip/tooltip.module.mjs +13 -13
- package/{esm2020 → esm2022}/components/wrapped-input/wrapped-input.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/wrapped-input/wrapped-input.module.mjs +7 -7
- package/esm2022/directives/menu-register.directive.mjs +38 -0
- package/esm2022/public-api.mjs +128 -0
- package/{fesm2020 → fesm2022}/flywheel-io-vision.mjs +1438 -1336
- package/fesm2022/flywheel-io-vision.mjs.map +1 -0
- package/flywheel-io-vision-2.0.0-beta.11.tgz +0 -0
- package/package.json +9 -12
- package/public-api.d.ts +2 -0
- package/scss/icons/_icon-glyphs.scss +667 -1256
- package/styles.css +54 -1
- package/esm2020/components/badge/badge.component.mjs +0 -45
- package/esm2020/components/breadcrumbs/breadcrumbs.component.mjs +0 -22
- package/esm2020/components/breadcrumbs/crumb.component.mjs +0 -34
- package/esm2020/components/button/button.directives.mjs +0 -129
- package/esm2020/components/button-group/button-group.component.mjs +0 -131
- package/esm2020/components/button-toggle/button-toggle-item/button-toggle-item.component.mjs +0 -54
- package/esm2020/components/button-toggle/button-toggle.component.mjs +0 -132
- package/esm2020/components/checkbox/checkbox.component.mjs +0 -79
- package/esm2020/components/chip/chip.component.mjs +0 -52
- package/esm2020/components/contained-input/contained-input.component.mjs +0 -86
- package/esm2020/components/date-input/date-input.component.mjs +0 -139
- package/esm2020/components/dialog/dialog-content.component.mjs +0 -38
- package/esm2020/components/forms/validators.mjs +0 -81
- package/esm2020/components/icon/icon.component.mjs +0 -61
- package/esm2020/components/icon/icon.types.mjs +0 -317
- package/esm2020/components/layouts/context/context.component.mjs +0 -46
- package/esm2020/components/layouts/layout-group.component.mjs +0 -36
- package/esm2020/components/menu/menu-close-triggers.directive.mjs +0 -38
- package/esm2020/components/menu/menu-container/menu-container.component.mjs +0 -90
- package/esm2020/components/menu/menu-item/menu-item.component.mjs +0 -136
- package/esm2020/components/menu/menu-sub-item/menu-sub-item.component.mjs +0 -109
- package/esm2020/components/menu/menu.component.mjs +0 -212
- package/esm2020/components/navbar/navbar-item/navbar-item.component.mjs +0 -95
- package/esm2020/components/navbar/navbar-sub-item/navbar-sub-item.component.mjs +0 -76
- package/esm2020/components/navbar/navbar.component.mjs +0 -75
- package/esm2020/components/number-input/number-input.component.mjs +0 -122
- package/esm2020/components/paginator/paginator-advanced/paginator-advanced.component.mjs +0 -123
- package/esm2020/components/paginator/paginator.component.mjs +0 -133
- package/esm2020/components/phone-input/phone-input.component.mjs +0 -285
- package/esm2020/components/popover/popover.component.mjs +0 -76
- package/esm2020/components/progress/spinner/spinner.component.mjs +0 -101
- package/esm2020/components/radio/radio-group.component.mjs +0 -117
- package/esm2020/components/radio/radio.component.mjs +0 -51
- package/esm2020/components/section-heading/back-button/back-button.component.mjs +0 -30
- package/esm2020/components/select-menu/multi-select-menu/multi-select-menu.component.mjs +0 -356
- package/esm2020/components/select-menu/select-menu.component.mjs +0 -328
- package/esm2020/components/select-menu/select-menu.module.mjs +0 -53
- package/esm2020/components/shared/pipes/pipes.module.mjs +0 -36
- package/esm2020/components/shared/pipes/translate.pipe.mjs +0 -40
- package/esm2020/components/shared/translation.service.mjs +0 -26
- package/esm2020/components/snackbar/snackbar/snackbar.component.mjs +0 -111
- package/esm2020/components/snackbar/snackbar-container/snackbar-container.component.mjs +0 -63
- package/esm2020/components/snackbar/snackbar.service.mjs +0 -36
- package/esm2020/components/stepper/step.component.mjs +0 -113
- package/esm2020/components/stepper/stepper.component.mjs +0 -95
- package/esm2020/components/switch/switch.component.mjs +0 -73
- package/esm2020/components/table/row.mjs +0 -170
- package/esm2020/components/table/table-dense.component.mjs +0 -38
- package/esm2020/components/table/table.component.mjs +0 -38
- package/esm2020/components/tabs/tab/tab.component.mjs +0 -79
- package/esm2020/components/tabs/tabs.component.mjs +0 -68
- package/esm2020/components/text-input/text-input.component.mjs +0 -112
- package/esm2020/components/textarea-input/textarea-input.component.mjs +0 -86
- package/esm2020/public-api.mjs +0 -126
- package/fesm2015/flywheel-io-vision.mjs +0 -8039
- package/fesm2015/flywheel-io-vision.mjs.map +0 -1
- package/fesm2020/flywheel-io-vision.mjs.map +0 -1
- package/flywheel-io-vision-2.0.0-beta-4.tgz +0 -0
- /package/{esm2020 → esm2022}/components/paginator/paginator.model.mjs +0 -0
- /package/{esm2020 → esm2022}/components/phone-input/country-code.data.mjs +0 -0
- /package/{esm2020 → esm2022}/components/phone-input/phone-input.model.mjs +0 -0
- /package/{esm2020 → esm2022}/components/snackbar/snackbar-message.model.mjs +0 -0
- /package/{esm2020 → esm2022}/components/snackbar/snackbar-timer.service.mjs +0 -0
- /package/{esm2020 → esm2022}/flywheel-io-vision.mjs +0 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Component, HostBinding, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class FwLayoutGroupComponent {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.stackable = false;
|
|
6
|
+
this.padded = true;
|
|
7
|
+
this.justify = 'space-between';
|
|
8
|
+
}
|
|
9
|
+
get classes() {
|
|
10
|
+
const classes = ['fw-layout-group', this.justify];
|
|
11
|
+
if (this.stackable) {
|
|
12
|
+
classes.push('stackable');
|
|
13
|
+
}
|
|
14
|
+
if (this.padded) {
|
|
15
|
+
classes.push('padded');
|
|
16
|
+
}
|
|
17
|
+
return classes.join(' ');
|
|
18
|
+
}
|
|
19
|
+
;
|
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwLayoutGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FwLayoutGroupComponent, selector: "fw-layout-group", inputs: { stackable: "stackable", padded: "padded", justify: "justify" }, host: { properties: { "attr.class": "this.classes" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:flex;box-sizing:border-box;gap:16px;align-items:center;flex-flow:row nowrap;justify-content:space-between;background:var(--page-light)}:host.flex-start{justify-content:flex-start}:host.flex-end{justify-content:flex-end}:host.space-around{justify-content:space-around}:host.space-evenly{justify-content:space-evenly}:host.space-between{justify-content:space-between}:host.stackable{padding-bottom:16px;border-bottom:1px solid var(--separations-base)}:host.padded{padding:16px}\n"] }); }
|
|
22
|
+
}
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwLayoutGroupComponent, decorators: [{
|
|
24
|
+
type: Component,
|
|
25
|
+
args: [{ selector: 'fw-layout-group', template: '<ng-content></ng-content>', styles: [":host{display:flex;box-sizing:border-box;gap:16px;align-items:center;flex-flow:row nowrap;justify-content:space-between;background:var(--page-light)}:host.flex-start{justify-content:flex-start}:host.flex-end{justify-content:flex-end}:host.space-around{justify-content:space-around}:host.space-evenly{justify-content:space-evenly}:host.space-between{justify-content:space-between}:host.stackable{padding-bottom:16px;border-bottom:1px solid var(--separations-base)}:host.padded{padding:16px}\n"] }]
|
|
26
|
+
}], propDecorators: { stackable: [{
|
|
27
|
+
type: Input
|
|
28
|
+
}], padded: [{
|
|
29
|
+
type: Input
|
|
30
|
+
}], justify: [{
|
|
31
|
+
type: Input
|
|
32
|
+
}], classes: [{
|
|
33
|
+
type: HostBinding,
|
|
34
|
+
args: ['attr.class']
|
|
35
|
+
}] } });
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2xheW91dHMvbGF5b3V0LWdyb3VwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTzlELE1BQU0sT0FBTyxzQkFBc0I7SUFMbkM7UUFNVyxjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLFdBQU0sR0FBWSxJQUFJLENBQUM7UUFDdkIsWUFBTyxHQUFrRixlQUFlLENBQUM7S0Fhbkg7SUFYQyxJQUErQixPQUFPO1FBQ3BDLE1BQU0sT0FBTyxHQUFHLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xELElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ25CLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDNUIsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2hCLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDekIsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBQUEsQ0FBQzsrR0FkUyxzQkFBc0I7bUdBQXRCLHNCQUFzQix5TEFIdkIsMkJBQTJCOzs0RkFHMUIsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNFLGlCQUFpQixZQUNqQiwyQkFBMkI7OEJBSTVCLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFFeUIsT0FBTztzQkFBckMsV0FBVzt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnctbGF5b3V0LWdyb3VwJyxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3R5bGVVcmxzOiBbJy4vbGF5b3V0LWdyb3VwLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEZ3TGF5b3V0R3JvdXBDb21wb25lbnQge1xuICBASW5wdXQoKSBzdGFja2FibGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcGFkZGVkOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkganVzdGlmeTogJ3NwYWNlLWJldHdlZW4nIHwgJ3NwYWNlLWFyb3VuZCcgfCAnc3BhY2UtZXZlbmx5JyB8ICdmbGV4LWVuZCcgfCAnZmxleC1zdGFydCcgPSAnc3BhY2UtYmV0d2Vlbic7XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmNsYXNzJykgZ2V0IGNsYXNzZXMoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjbGFzc2VzID0gWydmdy1sYXlvdXQtZ3JvdXAnLCB0aGlzLmp1c3RpZnldO1xuICAgIGlmICh0aGlzLnN0YWNrYWJsZSkge1xuICAgICAgY2xhc3Nlcy5wdXNoKCdzdGFja2FibGUnKTtcbiAgICB9XG4gICAgaWYgKHRoaXMucGFkZGVkKSB7XG4gICAgICBjbGFzc2VzLnB1c2goJ3BhZGRlZCcpO1xuICAgIH1cbiAgICByZXR1cm4gY2xhc3Nlcy5qb2luKCcgJyk7XG4gIH07XG5cbn1cbiJdfQ==
|
|
@@ -9,25 +9,25 @@ import { FwLayoutSidebarComponent } from './sidebar/sidebar.component';
|
|
|
9
9
|
import { FwLayoutToolbarComponent } from './toolbar/toolbar.component';
|
|
10
10
|
import * as i0 from "@angular/core";
|
|
11
11
|
export class FwLayoutsModule {
|
|
12
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwLayoutsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
13
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: FwLayoutsModule, declarations: [FwLayoutContextComponent,
|
|
14
|
+
FwLayoutToolbarComponent,
|
|
15
|
+
FwLayoutGroupComponent,
|
|
16
|
+
FwLayoutPanelComponent,
|
|
17
|
+
FwLayoutSidebarComponent,
|
|
18
|
+
FwGridComponent,
|
|
19
|
+
FwGridItemComponent], imports: [CommonModule,
|
|
20
|
+
FwIconModule], exports: [FwLayoutContextComponent,
|
|
21
|
+
FwLayoutToolbarComponent,
|
|
22
|
+
FwLayoutGroupComponent,
|
|
23
|
+
FwLayoutPanelComponent,
|
|
24
|
+
FwLayoutSidebarComponent,
|
|
25
|
+
FwGridComponent,
|
|
26
|
+
FwGridItemComponent] }); }
|
|
27
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwLayoutsModule, imports: [CommonModule,
|
|
28
|
+
FwIconModule] }); }
|
|
12
29
|
}
|
|
13
|
-
|
|
14
|
-
FwLayoutsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: FwLayoutsModule, declarations: [FwLayoutContextComponent,
|
|
15
|
-
FwLayoutToolbarComponent,
|
|
16
|
-
FwLayoutGroupComponent,
|
|
17
|
-
FwLayoutPanelComponent,
|
|
18
|
-
FwLayoutSidebarComponent,
|
|
19
|
-
FwGridComponent,
|
|
20
|
-
FwGridItemComponent], imports: [CommonModule,
|
|
21
|
-
FwIconModule], exports: [FwLayoutContextComponent,
|
|
22
|
-
FwLayoutToolbarComponent,
|
|
23
|
-
FwLayoutGroupComponent,
|
|
24
|
-
FwLayoutPanelComponent,
|
|
25
|
-
FwLayoutSidebarComponent,
|
|
26
|
-
FwGridComponent,
|
|
27
|
-
FwGridItemComponent] });
|
|
28
|
-
FwLayoutsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FwLayoutsModule, imports: [CommonModule,
|
|
29
|
-
FwIconModule] });
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FwLayoutsModule, decorators: [{
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwLayoutsModule, decorators: [{
|
|
31
31
|
type: NgModule,
|
|
32
32
|
args: [{
|
|
33
33
|
imports: [
|
|
@@ -54,4 +54,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
54
54
|
],
|
|
55
55
|
}]
|
|
56
56
|
}] });
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0cy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9sYXlvdXRzL2xheW91dHMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDakUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdkUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBMEJ2RSxNQUFNLE9BQU8sZUFBZTsrR0FBZixlQUFlO2dIQUFmLGVBQWUsaUJBVHhCLHdCQUF3QjtZQUN4Qix3QkFBd0I7WUFDeEIsc0JBQXNCO1lBQ3RCLHNCQUFzQjtZQUN0Qix3QkFBd0I7WUFDeEIsZUFBZTtZQUNmLG1CQUFtQixhQW5CbkIsWUFBWTtZQUNaLFlBQVksYUFHWix3QkFBd0I7WUFDeEIsd0JBQXdCO1lBQ3hCLHNCQUFzQjtZQUN0QixzQkFBc0I7WUFDdEIsd0JBQXdCO1lBQ3hCLGVBQWU7WUFDZixtQkFBbUI7Z0hBWVYsZUFBZSxZQXRCeEIsWUFBWTtZQUNaLFlBQVk7OzRGQXFCSCxlQUFlO2tCQXhCM0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixZQUFZO3FCQUNiO29CQUNELE9BQU8sRUFBRTt3QkFDUCx3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsc0JBQXNCO3dCQUN0QixzQkFBc0I7d0JBQ3RCLHdCQUF3Qjt3QkFDeEIsZUFBZTt3QkFDZixtQkFBbUI7cUJBQ3BCO29CQUNELFlBQVksRUFBRTt3QkFDWix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsc0JBQXNCO3dCQUN0QixzQkFBc0I7d0JBQ3RCLHdCQUF3Qjt3QkFDeEIsZUFBZTt3QkFDZixtQkFBbUI7cUJBQ3BCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZ3SWNvbk1vZHVsZSB9IGZyb20gJy4uL2ljb24vaWNvbi5tb2R1bGUnO1xuaW1wb3J0IHsgRndMYXlvdXRDb250ZXh0Q29tcG9uZW50IH0gZnJvbSAnLi9jb250ZXh0L2NvbnRleHQuY29tcG9uZW50JztcbmltcG9ydCB7IEZ3R3JpZENvbXBvbmVudCwgRndHcmlkSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vZ3JpZC9ncmlkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGd0xheW91dEdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9sYXlvdXQtZ3JvdXAuY29tcG9uZW50JztcbmltcG9ydCB7IEZ3TGF5b3V0UGFuZWxDb21wb25lbnQgfSBmcm9tICcuL3BhbmVsL3BhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGd0xheW91dFNpZGViYXJDb21wb25lbnQgfSBmcm9tICcuL3NpZGViYXIvc2lkZWJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRndMYXlvdXRUb29sYmFyQ29tcG9uZW50IH0gZnJvbSAnLi90b29sYmFyL3Rvb2xiYXIuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGd0ljb25Nb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBGd0xheW91dENvbnRleHRDb21wb25lbnQsXG4gICAgRndMYXlvdXRUb29sYmFyQ29tcG9uZW50LFxuICAgIEZ3TGF5b3V0R3JvdXBDb21wb25lbnQsXG4gICAgRndMYXlvdXRQYW5lbENvbXBvbmVudCxcbiAgICBGd0xheW91dFNpZGViYXJDb21wb25lbnQsXG4gICAgRndHcmlkQ29tcG9uZW50LFxuICAgIEZ3R3JpZEl0ZW1Db21wb25lbnQsXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEZ3TGF5b3V0Q29udGV4dENvbXBvbmVudCxcbiAgICBGd0xheW91dFRvb2xiYXJDb21wb25lbnQsXG4gICAgRndMYXlvdXRHcm91cENvbXBvbmVudCxcbiAgICBGd0xheW91dFBhbmVsQ29tcG9uZW50LFxuICAgIEZ3TGF5b3V0U2lkZWJhckNvbXBvbmVudCxcbiAgICBGd0dyaWRDb21wb25lbnQsXG4gICAgRndHcmlkSXRlbUNvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRndMYXlvdXRzTW9kdWxlIHtcbn1cbiJdfQ==
|
|
@@ -10,12 +10,12 @@ export class FwLayoutPanelComponent {
|
|
|
10
10
|
this.margin = false;
|
|
11
11
|
this.padded = true;
|
|
12
12
|
}
|
|
13
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwLayoutPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
14
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FwLayoutPanelComponent, selector: "fw-layout-panel", inputs: { height: "height", fitted: "fitted", border: "border", rounded: "rounded", margin: "margin", padded: "padded" }, ngImport: i0, template: "<main\n [ngClass]=\"[fitted?'fitted':'', margin?'margin':'', rounded?'rounded':'', 'border-'+border]\"\n [ngStyle]=\"{height: height}\">\n <ng-content select=\"header\"></ng-content>\n <article [ngClass]=\"[padded?'padded':'']\">\n <ng-content></ng-content>\n </article>\n <ng-content select=\"footer\"></ng-content>\n</main>\n", styles: ["main{flex:1;display:flex;flex-direction:column;overflow:auto;background-color:var(--card-background);position:relative}main.margin{margin:16px}main header{background-color:var(--card-header);display:flex;align-items:center;gap:16px;padding:8px 16px;height:52px;white-space:nowrap;box-sizing:border-box;border-bottom:1px var(--separations-divider) solid}main header :first-child{flex:1;margin:0;overflow:hidden}main article{overflow-x:auto;display:flex;flex-direction:column}main article.padded{padding:16px}main article hr{border:0;border-bottom:1px var(--separations-divider) solid;width:calc(100% + 32px);margin:16px -16px}main footer{background-color:var(--card-background);display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:16px;height:66px;white-space:nowrap;box-sizing:border-box;border-top:1px var(--separations-divider) solid;overflow:hidden}main footer h1,main footer h2,main footer h3,main footer h4,main footer h5,main footer h6,main footer p{margin:0}main.border-all{border:1px var(--separations-divider) solid}main.border-left{border-left:1px var(--separations-divider) solid}main.border-right{border-right:1px var(--separations-divider) solid}main.rounded{border-radius:10px}main.fitted{overflow:hidden}main.fitted header{position:absolute;top:0;left:0;right:0}main.fitted header~article{margin-top:52px}main.fitted article:has(+footer){margin-bottom:66px}main.fitted footer{position:absolute;bottom:0;left:0;right:0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
13
15
|
}
|
|
14
|
-
|
|
15
|
-
FwLayoutPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FwLayoutPanelComponent, selector: "fw-layout-panel", inputs: { height: "height", fitted: "fitted", border: "border", rounded: "rounded", margin: "margin", padded: "padded" }, ngImport: i0, template: "<main\n [ngClass]=\"[fitted?'fitted':'', margin?'margin':'', rounded?'rounded':'', 'border-'+border]\"\n [ngStyle]=\"{height: height}\">\n <ng-content select=\"header\"></ng-content>\n <article [ngClass]=\"[padded?'padded':'']\">\n <ng-content></ng-content>\n </article>\n <ng-content select=\"footer\"></ng-content>\n</main>\n", styles: ["main{flex:1;display:flex;flex-direction:column;overflow:auto;background-color:var(--card-background);position:relative}main.margin{margin:16px}main header{background-color:var(--card-header);display:flex;align-items:center;gap:16px;padding:8px 16px;height:52px;white-space:nowrap;box-sizing:border-box;border-bottom:1px var(--separations-divider) solid}main header :first-child{flex:1;margin:0;overflow:hidden}main article{overflow-x:auto;display:flex;flex-direction:column}main article.padded{padding:16px}main article hr{border:0;border-bottom:1px var(--separations-divider) solid;width:calc(100% + 32px);margin:16px -16px}main footer{background-color:var(--card-background);display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:16px;height:66px;white-space:nowrap;box-sizing:border-box;border-top:1px var(--separations-divider) solid;overflow:hidden}main footer h1,main footer h2,main footer h3,main footer h4,main footer h5,main footer h6,main footer p{margin:0}main.border-all{border:1px var(--separations-divider) solid}main.border-left{border-left:1px var(--separations-divider) solid}main.border-right{border-right:1px var(--separations-divider) solid}main.rounded{border-radius:10px}main.fitted{overflow:hidden}main.fitted header{position:absolute;top:0;left:0;right:0}main.fitted header~article{margin-top:52px}main.fitted article:has(+ footer){margin-bottom:66px}main.fitted footer{position:absolute;bottom:0;left:0;right:0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FwLayoutPanelComponent, decorators: [{
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwLayoutPanelComponent, decorators: [{
|
|
17
17
|
type: Component,
|
|
18
|
-
args: [{ selector: 'fw-layout-panel', encapsulation: ViewEncapsulation.None, template: "<main\n [ngClass]=\"[fitted?'fitted':'', margin?'margin':'', rounded?'rounded':'', 'border-'+border]\"\n [ngStyle]=\"{height: height}\">\n <ng-content select=\"header\"></ng-content>\n <article [ngClass]=\"[padded?'padded':'']\">\n <ng-content></ng-content>\n </article>\n <ng-content select=\"footer\"></ng-content>\n</main>\n", styles: ["main{flex:1;display:flex;flex-direction:column;overflow:auto;background-color:var(--card-background);position:relative}main.margin{margin:16px}main header{background-color:var(--card-header);display:flex;align-items:center;gap:16px;padding:8px 16px;height:52px;white-space:nowrap;box-sizing:border-box;border-bottom:1px var(--separations-divider) solid}main header :first-child{flex:1;margin:0;overflow:hidden}main article{overflow-x:auto;display:flex;flex-direction:column}main article.padded{padding:16px}main article hr{border:0;border-bottom:1px var(--separations-divider) solid;width:calc(100% + 32px);margin:16px -16px}main footer{background-color:var(--card-background);display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:16px;height:66px;white-space:nowrap;box-sizing:border-box;border-top:1px var(--separations-divider) solid;overflow:hidden}main footer h1,main footer h2,main footer h3,main footer h4,main footer h5,main footer h6,main footer p{margin:0}main.border-all{border:1px var(--separations-divider) solid}main.border-left{border-left:1px var(--separations-divider) solid}main.border-right{border-right:1px var(--separations-divider) solid}main.rounded{border-radius:10px}main.fitted{overflow:hidden}main.fitted header{position:absolute;top:0;left:0;right:0}main.fitted header~article{margin-top:52px}main.fitted article:has(+
|
|
18
|
+
args: [{ selector: 'fw-layout-panel', encapsulation: ViewEncapsulation.None, template: "<main\n [ngClass]=\"[fitted?'fitted':'', margin?'margin':'', rounded?'rounded':'', 'border-'+border]\"\n [ngStyle]=\"{height: height}\">\n <ng-content select=\"header\"></ng-content>\n <article [ngClass]=\"[padded?'padded':'']\">\n <ng-content></ng-content>\n </article>\n <ng-content select=\"footer\"></ng-content>\n</main>\n", styles: ["main{flex:1;display:flex;flex-direction:column;overflow:auto;background-color:var(--card-background);position:relative}main.margin{margin:16px}main header{background-color:var(--card-header);display:flex;align-items:center;gap:16px;padding:8px 16px;height:52px;white-space:nowrap;box-sizing:border-box;border-bottom:1px var(--separations-divider) solid}main header :first-child{flex:1;margin:0;overflow:hidden}main article{overflow-x:auto;display:flex;flex-direction:column}main article.padded{padding:16px}main article hr{border:0;border-bottom:1px var(--separations-divider) solid;width:calc(100% + 32px);margin:16px -16px}main footer{background-color:var(--card-background);display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:16px;height:66px;white-space:nowrap;box-sizing:border-box;border-top:1px var(--separations-divider) solid;overflow:hidden}main footer h1,main footer h2,main footer h3,main footer h4,main footer h5,main footer h6,main footer p{margin:0}main.border-all{border:1px var(--separations-divider) solid}main.border-left{border-left:1px var(--separations-divider) solid}main.border-right{border-right:1px var(--separations-divider) solid}main.rounded{border-radius:10px}main.fitted{overflow:hidden}main.fitted header{position:absolute;top:0;left:0;right:0}main.fitted header~article{margin-top:52px}main.fitted article:has(+footer){margin-bottom:66px}main.fitted footer{position:absolute;bottom:0;left:0;right:0}\n"] }]
|
|
19
19
|
}], propDecorators: { height: [{
|
|
20
20
|
type: Input
|
|
21
21
|
}], fitted: [{
|
|
@@ -29,4 +29,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
29
29
|
}], padded: [{
|
|
30
30
|
type: Input
|
|
31
31
|
}] } });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbGF5b3V0cy9wYW5lbC9wYW5lbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9sYXlvdXRzL3BhbmVsL3BhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFRcEUsTUFBTSxPQUFPLHNCQUFzQjtJQU5uQztRQU9XLFdBQU0sR0FBWSxNQUFNLENBQUM7UUFDekIsV0FBTSxHQUFhLEtBQUssQ0FBQztRQUN6QixXQUFNLEdBQXVDLE1BQU0sQ0FBQztRQUNwRCxZQUFPLEdBQWEsSUFBSSxDQUFDO1FBQ3pCLFdBQU0sR0FBYSxLQUFLLENBQUM7UUFDekIsV0FBTSxHQUFhLElBQUksQ0FBQztLQUNsQzsrR0FQWSxzQkFBc0I7bUdBQXRCLHNCQUFzQixpTENSbkMsa1ZBU0E7OzRGRERhLHNCQUFzQjtrQkFObEMsU0FBUzsrQkFDRSxpQkFBaUIsaUJBR1osaUJBQWlCLENBQUMsSUFBSTs4QkFHNUIsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmdy1sYXlvdXQtcGFuZWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vcGFuZWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wYW5lbC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBGd0xheW91dFBhbmVsQ29tcG9uZW50IHtcbiAgQElucHV0KCkgaGVpZ2h0Pzogc3RyaW5nID0gJzEwMCUnO1xuICBASW5wdXQoKSBmaXR0ZWQ/OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGJvcmRlcj86ICdhbGwnIHwgJ2xlZnQnIHwgJ3JpZ2h0JyB8ICdub25lJyA9ICdub25lJztcbiAgQElucHV0KCkgcm91bmRlZD86IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBtYXJnaW4/OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHBhZGRlZD86IGJvb2xlYW4gPSB0cnVlO1xufVxuIiwiPG1haW5cbiAgW25nQ2xhc3NdPVwiW2ZpdHRlZD8nZml0dGVkJzonJywgbWFyZ2luPydtYXJnaW4nOicnLCByb3VuZGVkPydyb3VuZGVkJzonJywgJ2JvcmRlci0nK2JvcmRlcl1cIlxuICBbbmdTdHlsZV09XCJ7aGVpZ2h0OiBoZWlnaHR9XCI+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImhlYWRlclwiPjwvbmctY29udGVudD5cbiAgPGFydGljbGUgW25nQ2xhc3NdPVwiW3BhZGRlZD8ncGFkZGVkJzonJ11cIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvYXJ0aWNsZT5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZm9vdGVyXCI+PC9uZy1jb250ZW50PlxuPC9tYWluPlxuIl19
|
|
@@ -8,10 +8,10 @@ export class FwLayoutSidebarComponent {
|
|
|
8
8
|
this.width = '65%';
|
|
9
9
|
this.direction = 'row';
|
|
10
10
|
}
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwLayoutSidebarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
12
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FwLayoutSidebarComponent, selector: "fw-layout-sidebar", inputs: { outlined: "outlined", rounded: "rounded", width: "width", direction: "direction" }, ngImport: i0, template: "<div\n [ngClass]=\"[\n outlined?'outlined':'',\n rounded?'rounded':'',\n direction,\n 'container'\n ]\">\n <div class=\"main\" [ngStyle]=\"{width: 'calc( 100% - '+width+' )'}\">\n <ng-content></ng-content>\n </div>\n <div class=\"aside\" [ngStyle]=\"{width: width}\">\n <ng-content select=\"aside\"></ng-content>\n </div>\n</div>\n", styles: [".container{display:flex;width:100%;overflow:hidden;height:100%;flex-flow:row nowrap}.container .aside{display:flex;overflow:auto}.container .aside aside{flex:1}.container .main{overflow:auto}.container.outlined{border:1px var(--separations-divider) solid}.container.outlined .main{border-right:1px var(--separations-divider) solid}.container.row-reverse{flex-direction:row-reverse}.container.row-reverse.outlined .main{border-right:0;border-left:1px var(--separations-divider) solid}.container.rounded{border-radius:10px}.container.third .main{width:66.6%}.container.third .aside{width:33.3%}.container.half .main,.container.half .aside{width:50%}.container.fourth .main{width:75%}.container.fourth .aside{width:25%}.container.closed .main{width:100%;border-right:none}.container.closed .aside{width:0;padding:0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
11
13
|
}
|
|
12
|
-
|
|
13
|
-
FwLayoutSidebarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FwLayoutSidebarComponent, selector: "fw-layout-sidebar", inputs: { outlined: "outlined", rounded: "rounded", width: "width", direction: "direction" }, ngImport: i0, template: "<div\n [ngClass]=\"[\n outlined?'outlined':'',\n rounded?'rounded':'',\n direction,\n 'container'\n ]\">\n <div class=\"main\" [ngStyle]=\"{width: 'calc( 100% - '+width+' )'}\">\n <ng-content></ng-content>\n </div>\n <div class=\"aside\" [ngStyle]=\"{width: width}\">\n <ng-content select=\"aside\"></ng-content>\n </div>\n</div>\n", styles: [".container{display:flex;width:100%;overflow:hidden;height:100%;flex-flow:row nowrap}.container .aside{display:flex;overflow:auto}.container .aside aside{flex:1}.container .main{overflow:auto}.container.outlined{border:1px var(--separations-divider) solid}.container.outlined .main{border-right:1px var(--separations-divider) solid}.container.row-reverse{flex-direction:row-reverse}.container.row-reverse.outlined .main{border-right:0;border-left:1px var(--separations-divider) solid}.container.rounded{border-radius:10px}.container.third .main{width:66.6%}.container.third .aside{width:33.3%}.container.half .main,.container.half .aside{width:50%}.container.fourth .main{width:75%}.container.fourth .aside{width:25%}.container.closed .main{width:100%;border-right:none}.container.closed .aside{width:0;padding:0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FwLayoutSidebarComponent, decorators: [{
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwLayoutSidebarComponent, decorators: [{
|
|
15
15
|
type: Component,
|
|
16
16
|
args: [{ selector: 'fw-layout-sidebar', encapsulation: ViewEncapsulation.None, template: "<div\n [ngClass]=\"[\n outlined?'outlined':'',\n rounded?'rounded':'',\n direction,\n 'container'\n ]\">\n <div class=\"main\" [ngStyle]=\"{width: 'calc( 100% - '+width+' )'}\">\n <ng-content></ng-content>\n </div>\n <div class=\"aside\" [ngStyle]=\"{width: width}\">\n <ng-content select=\"aside\"></ng-content>\n </div>\n</div>\n", styles: [".container{display:flex;width:100%;overflow:hidden;height:100%;flex-flow:row nowrap}.container .aside{display:flex;overflow:auto}.container .aside aside{flex:1}.container .main{overflow:auto}.container.outlined{border:1px var(--separations-divider) solid}.container.outlined .main{border-right:1px var(--separations-divider) solid}.container.row-reverse{flex-direction:row-reverse}.container.row-reverse.outlined .main{border-right:0;border-left:1px var(--separations-divider) solid}.container.rounded{border-radius:10px}.container.third .main{width:66.6%}.container.third .aside{width:33.3%}.container.half .main,.container.half .aside{width:50%}.container.fourth .main{width:75%}.container.fourth .aside{width:25%}.container.closed .main{width:100%;border-right:none}.container.closed .aside{width:0;padding:0}\n"] }]
|
|
17
17
|
}], propDecorators: { outlined: [{
|
|
@@ -23,4 +23,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
23
23
|
}], direction: [{
|
|
24
24
|
type: Input
|
|
25
25
|
}] } });
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9sYXlvdXRzL3NpZGViYXIvc2lkZWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9sYXlvdXRzL3NpZGViYXIvc2lkZWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBUXBFLE1BQU0sT0FBTyx3QkFBd0I7SUFOckM7UUFPVyxhQUFRLEdBQVksSUFBSSxDQUFDO1FBQ3pCLFlBQU8sR0FBWSxJQUFJLENBQUM7UUFDeEIsVUFBSyxHQUFZLEtBQUssQ0FBQztRQUN2QixjQUFTLEdBQTJCLEtBQUssQ0FBQztLQUNwRDsrR0FMWSx3QkFBd0I7bUdBQXhCLHdCQUF3Qix1SkNSckMsMlhBY0E7OzRGRE5hLHdCQUF3QjtrQkFOcEMsU0FBUzsrQkFDRSxtQkFBbUIsaUJBR2QsaUJBQWlCLENBQUMsSUFBSTs4QkFHNUIsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmdy1sYXlvdXQtc2lkZWJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zaWRlYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2lkZWJhci5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBGd0xheW91dFNpZGViYXJDb21wb25lbnQge1xuICBASW5wdXQoKSBvdXRsaW5lZDogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIHJvdW5kZWQ6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSB3aWR0aD86IHN0cmluZyA9ICc2NSUnO1xuICBASW5wdXQoKSBkaXJlY3Rpb24/OiAncm93JyB8ICdyb3ctcmV2ZXJzZScgPSAncm93Jztcbn1cbiIsIjxkaXZcbiAgW25nQ2xhc3NdPVwiW1xuICAgICAgICBvdXRsaW5lZD8nb3V0bGluZWQnOicnLFxuICAgICAgICByb3VuZGVkPydyb3VuZGVkJzonJyxcbiAgICAgICAgZGlyZWN0aW9uLFxuICAgICAgICAnY29udGFpbmVyJ1xuICAgICAgICBdXCI+XG4gIDxkaXYgY2xhc3M9XCJtYWluXCIgW25nU3R5bGVdPVwie3dpZHRoOiAnY2FsYyggMTAwJSAtICcrd2lkdGgrJyApJ31cIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiYXNpZGVcIiBbbmdTdHlsZV09XCJ7d2lkdGg6IHdpZHRofVwiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImFzaWRlXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -6,10 +6,10 @@ export class FwLayoutToolbarComponent {
|
|
|
6
6
|
return classes.join(' ');
|
|
7
7
|
}
|
|
8
8
|
;
|
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwLayoutToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
10
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FwLayoutToolbarComponent, selector: "fw-layout-toolbar", inputs: { dense: "dense" }, host: { properties: { "attr.class": "this.classes" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:flex;box-sizing:border-box;gap:16px;align-items:center;font-size:22px}:host.dense{gap:8px}\n"] }); }
|
|
9
11
|
}
|
|
10
|
-
|
|
11
|
-
FwLayoutToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FwLayoutToolbarComponent, selector: "fw-layout-toolbar", inputs: { dense: "dense" }, host: { properties: { "attr.class": "this.classes" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:flex;box-sizing:border-box;gap:16px;align-items:center;font-size:22px}:host.dense{gap:8px}\n"] });
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FwLayoutToolbarComponent, decorators: [{
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwLayoutToolbarComponent, decorators: [{
|
|
13
13
|
type: Component,
|
|
14
14
|
args: [{ selector: 'fw-layout-toolbar', template: '<ng-content></ng-content>', styles: [":host{display:flex;box-sizing:border-box;gap:16px;align-items:center;font-size:22px}:host.dense{gap:8px}\n"] }]
|
|
15
15
|
}], propDecorators: { dense: [{
|
|
@@ -18,4 +18,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
18
18
|
type: HostBinding,
|
|
19
19
|
args: ['attr.class']
|
|
20
20
|
}] } });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9sYXlvdXRzL3Rvb2xiYXIvdG9vbGJhci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU85RCxNQUFNLE9BQU8sd0JBQXdCO0lBR25DLElBQStCLE9BQU87UUFDcEMsTUFBTSxPQUFPLEdBQUcsQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2pFLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBQUEsQ0FBQzsrR0FOUyx3QkFBd0I7bUdBQXhCLHdCQUF3Qiw2SUFIekIsMkJBQTJCOzs0RkFHMUIsd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNFLG1CQUFtQixZQUNuQiwyQkFBMkI7OEJBSTVCLEtBQUs7c0JBQWIsS0FBSztnQkFFeUIsT0FBTztzQkFBckMsV0FBVzt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnctbGF5b3V0LXRvb2xiYXInLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdHlsZVVybHM6IFsnLi90b29sYmFyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEZ3TGF5b3V0VG9vbGJhckNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGRlbnNlPzogYm9vbGVhbjtcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIuY2xhc3MnKSBnZXQgY2xhc3NlcygpOiBzdHJpbmcge1xuICAgIGNvbnN0IGNsYXNzZXMgPSBbJ2Z3LWxheW91dC10b29sYmFyJywgdGhpcy5kZW5zZSA/ICdkZW5zZScgOiAnJ107XG4gICAgcmV0dXJuIGNsYXNzZXMuam9pbignICcpO1xuICB9O1xufVxuIl19
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { CdkMenuTrigger } from '@angular/cdk/menu';
|
|
2
|
+
import { ContentChildren, Directive, HostListener } from '@angular/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class FwMenuCloseTriggersDirective {
|
|
5
|
+
constructor() {
|
|
6
|
+
this._isOpen = false;
|
|
7
|
+
}
|
|
8
|
+
outsideClick() {
|
|
9
|
+
if (this._isOpen && this.triggers && this.triggers.length > 0) {
|
|
10
|
+
this.triggers.forEach(trigger => {
|
|
11
|
+
trigger.close();
|
|
12
|
+
});
|
|
13
|
+
this._isOpen = false;
|
|
14
|
+
}
|
|
15
|
+
if (this.triggers && this.triggers.length > 0) {
|
|
16
|
+
this.triggers.forEach(trigger => {
|
|
17
|
+
if (trigger.isOpen()) {
|
|
18
|
+
this._isOpen = true;
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwMenuCloseTriggersDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
24
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: FwMenuCloseTriggersDirective, selector: "[fwMenuCloseTriggers]", host: { listeners: { "document:click": "outsideClick()" } }, queries: [{ propertyName: "triggers", predicate: CdkMenuTrigger, descendants: true }], ngImport: i0 }); }
|
|
25
|
+
}
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwMenuCloseTriggersDirective, decorators: [{
|
|
27
|
+
type: Directive,
|
|
28
|
+
args: [{
|
|
29
|
+
selector: '[fwMenuCloseTriggers]',
|
|
30
|
+
}]
|
|
31
|
+
}], propDecorators: { outsideClick: [{
|
|
32
|
+
type: HostListener,
|
|
33
|
+
args: ['document:click']
|
|
34
|
+
}], triggers: [{
|
|
35
|
+
type: ContentChildren,
|
|
36
|
+
args: [CdkMenuTrigger, { descendants: true }]
|
|
37
|
+
}] } });
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1jbG9zZS10cmlnZ2Vycy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9tZW51L21lbnUtY2xvc2UtdHJpZ2dlcnMuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQWEsTUFBTSxlQUFlLENBQUM7O0FBS3BGLE1BQU0sT0FBTyw0QkFBNEI7SUFIekM7UUFzQlUsWUFBTyxHQUFHLEtBQUssQ0FBQztLQUN6QjtJQW5CaUMsWUFBWTtRQUMxQyxJQUFJLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUM5RCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDOUIsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2xCLENBQUMsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDdkIsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUM5QyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDOUIsSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztvQkFDckIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7Z0JBQ3RCLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDOytHQWZVLDRCQUE0QjttR0FBNUIsNEJBQTRCLG1KQWlCdEIsY0FBYzs7NEZBakJwQiw0QkFBNEI7a0JBSHhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHVCQUF1QjtpQkFDbEM7OEJBRWlDLFlBQVk7c0JBQTNDLFlBQVk7dUJBQUMsZ0JBQWdCO2dCQWdCMEIsUUFBUTtzQkFBL0QsZUFBZTt1QkFBQyxjQUFjLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2RrTWVudVRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvbWVudSc7XG5pbXBvcnQgeyBDb250ZW50Q2hpbGRyZW4sIERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyLCBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2Z3TWVudUNsb3NlVHJpZ2dlcnNdJyxcbn0pXG5leHBvcnQgY2xhc3MgRndNZW51Q2xvc2VUcmlnZ2Vyc0RpcmVjdGl2ZSB7XG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJykgb3V0c2lkZUNsaWNrKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9pc09wZW4gJiYgdGhpcy50cmlnZ2VycyAmJiB0aGlzLnRyaWdnZXJzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMudHJpZ2dlcnMuZm9yRWFjaCh0cmlnZ2VyID0+IHtcbiAgICAgICAgdHJpZ2dlci5jbG9zZSgpO1xuICAgICAgfSk7XG4gICAgICB0aGlzLl9pc09wZW4gPSBmYWxzZTtcbiAgICB9XG4gICAgaWYgKHRoaXMudHJpZ2dlcnMgJiYgdGhpcy50cmlnZ2Vycy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLnRyaWdnZXJzLmZvckVhY2godHJpZ2dlciA9PiB7XG4gICAgICAgIGlmICh0cmlnZ2VyLmlzT3BlbigpKSB7XG4gICAgICAgICAgdGhpcy5faXNPcGVuID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgQENvbnRlbnRDaGlsZHJlbihDZGtNZW51VHJpZ2dlciwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KSB0cmlnZ2Vycz86IFF1ZXJ5TGlzdDxDZGtNZW51VHJpZ2dlcj47XG5cbiAgcHJpdmF0ZSBfaXNPcGVuID0gZmFsc2U7XG59XG4iXX0=
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { Component, ContentChild, EventEmitter, HostBinding, Input, Output, ViewEncapsulation, } from '@angular/core';
|
|
2
|
+
import { FwMenuComponent } from '../menu.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/platform-browser";
|
|
5
|
+
import * as i2 from "@angular/cdk/menu";
|
|
6
|
+
import * as i3 from "@angular/common";
|
|
7
|
+
import * as i4 from "../../text-input/text-input.component";
|
|
8
|
+
export class FwMenuContainerComponent {
|
|
9
|
+
get classes() {
|
|
10
|
+
return [
|
|
11
|
+
'fw-menu-container',
|
|
12
|
+
`vision-shadow-${this.shadow}`,
|
|
13
|
+
`border-${this.border}`,
|
|
14
|
+
].join(' ');
|
|
15
|
+
}
|
|
16
|
+
;
|
|
17
|
+
get style() {
|
|
18
|
+
return this.sanitizer.bypassSecurityTrustStyle(`
|
|
19
|
+
width: ${this.width};
|
|
20
|
+
max-height: ${this.maxHeight};
|
|
21
|
+
min-height: ${this.minHeight};
|
|
22
|
+
margin-top: ${this.offset};
|
|
23
|
+
`);
|
|
24
|
+
}
|
|
25
|
+
constructor(sanitizer) {
|
|
26
|
+
this.sanitizer = sanitizer;
|
|
27
|
+
this.width = 'inherit';
|
|
28
|
+
this.maxHeight = 'auto';
|
|
29
|
+
this.minHeight = 'auto';
|
|
30
|
+
this.border = 'default';
|
|
31
|
+
this.shadow = 'large';
|
|
32
|
+
this.showFilter = false;
|
|
33
|
+
this.filterText = '';
|
|
34
|
+
this.offset = '0px';
|
|
35
|
+
/**
|
|
36
|
+
* @deprecated please use fw-navbar instead
|
|
37
|
+
*/
|
|
38
|
+
this.collapsed = false;
|
|
39
|
+
this.filterChanged = new EventEmitter();
|
|
40
|
+
}
|
|
41
|
+
ngAfterContentInit() {
|
|
42
|
+
if (this.menu) {
|
|
43
|
+
this.menu.setFilter(this.filterText);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
filterTextChange(event) {
|
|
47
|
+
const input = event.target;
|
|
48
|
+
const inputValue = input.value;
|
|
49
|
+
this.filterChanged.emit(inputValue);
|
|
50
|
+
if (this.menu) {
|
|
51
|
+
this.menu.setFilter(inputValue);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwMenuContainerComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
55
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FwMenuContainerComponent, selector: "fw-menu-container", inputs: { width: "width", maxHeight: "maxHeight", minHeight: "minHeight", border: "border", shadow: "shadow", showFilter: "showFilter", filterText: "filterText", offset: "offset", collapsed: "collapsed" }, outputs: { filterChanged: "filterChanged" }, host: { properties: { "attr.class": "this.classes", "style": "this.style" } }, queries: [{ propertyName: "menu", first: true, predicate: FwMenuComponent, descendants: true }], ngImport: i0, template: "<div *ngIf=\"showFilter\" class=\"filter-box\" cdkMenuBar>\n <fw-text-input\n placeholder=\"Search\" leftIcon=\"search\" autofocus\n [value]=\"filterText\" (input)=\"filterTextChange($event)\">\n </fw-text-input>\n</div>\n<div class=\"menu-wrapper\" [ngClass]=\"[showFilter?'filtered':'', collapsed?'collapsed':'']\">\n <ng-content></ng-content>\n</div>\n", styles: [".fw-menu-container{display:flex;border-radius:8px;background:var(--card-background);position:relative}.fw-menu-container.border-default{border:1px solid var(--separations-border)}.fw-menu-container .filter-box{border-top-left-radius:8px;border-top-right-radius:8px;padding:8px;border-bottom:1px solid var(--separations-base);background-color:var(--card-background);position:absolute;left:0;right:0;z-index:1}.fw-menu-container .menu-wrapper{flex:1;padding:6px 4px;scroll-padding:17px;overflow:hidden auto}.fw-menu-container .menu-wrapper.collapsed{scrollbar-width:none}.fw-menu-container .menu-wrapper.filtered{margin-top:54px}.fw-menu-container fw-menu-separator{margin:6px -8px}\n"], dependencies: [{ kind: "directive", type: i2.CdkMenuBar, selector: "[cdkMenuBar]", exportAs: ["cdkMenuBar"] }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.FwTextInputComponent, selector: "fw-text-input", inputs: ["disabled", "useActionableIcons", "leftIcon", "rightIcon", "prefix", "context", "helperText", "errorText", "placeholder", "readOnly", "size", "type", "maxLength", "autofocus", "autocomplete", "value", "error", "width"], outputs: ["leftIconAction", "rightIconAction"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
56
|
+
}
|
|
57
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwMenuContainerComponent, decorators: [{
|
|
58
|
+
type: Component,
|
|
59
|
+
args: [{ selector: 'fw-menu-container', encapsulation: ViewEncapsulation.None, template: "<div *ngIf=\"showFilter\" class=\"filter-box\" cdkMenuBar>\n <fw-text-input\n placeholder=\"Search\" leftIcon=\"search\" autofocus\n [value]=\"filterText\" (input)=\"filterTextChange($event)\">\n </fw-text-input>\n</div>\n<div class=\"menu-wrapper\" [ngClass]=\"[showFilter?'filtered':'', collapsed?'collapsed':'']\">\n <ng-content></ng-content>\n</div>\n", styles: [".fw-menu-container{display:flex;border-radius:8px;background:var(--card-background);position:relative}.fw-menu-container.border-default{border:1px solid var(--separations-border)}.fw-menu-container .filter-box{border-top-left-radius:8px;border-top-right-radius:8px;padding:8px;border-bottom:1px solid var(--separations-base);background-color:var(--card-background);position:absolute;left:0;right:0;z-index:1}.fw-menu-container .menu-wrapper{flex:1;padding:6px 4px;scroll-padding:17px;overflow:hidden auto}.fw-menu-container .menu-wrapper.collapsed{scrollbar-width:none}.fw-menu-container .menu-wrapper.filtered{margin-top:54px}.fw-menu-container fw-menu-separator{margin:6px -8px}\n"] }]
|
|
60
|
+
}], ctorParameters: () => [{ type: i1.DomSanitizer }], propDecorators: { width: [{
|
|
61
|
+
type: Input
|
|
62
|
+
}], maxHeight: [{
|
|
63
|
+
type: Input
|
|
64
|
+
}], minHeight: [{
|
|
65
|
+
type: Input
|
|
66
|
+
}], border: [{
|
|
67
|
+
type: Input
|
|
68
|
+
}], shadow: [{
|
|
69
|
+
type: Input
|
|
70
|
+
}], showFilter: [{
|
|
71
|
+
type: Input
|
|
72
|
+
}], filterText: [{
|
|
73
|
+
type: Input
|
|
74
|
+
}], offset: [{
|
|
75
|
+
type: Input
|
|
76
|
+
}], collapsed: [{
|
|
77
|
+
type: Input
|
|
78
|
+
}], filterChanged: [{
|
|
79
|
+
type: Output
|
|
80
|
+
}], menu: [{
|
|
81
|
+
type: ContentChild,
|
|
82
|
+
args: [FwMenuComponent]
|
|
83
|
+
}], classes: [{
|
|
84
|
+
type: HostBinding,
|
|
85
|
+
args: ['attr.class']
|
|
86
|
+
}], style: [{
|
|
87
|
+
type: HostBinding,
|
|
88
|
+
args: ['style']
|
|
89
|
+
}] } });
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbWVudS9tZW51LWNvbnRhaW5lci9tZW51LWNvbnRhaW5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9tZW51L21lbnUtY29udGFpbmVyL21lbnUtY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixXQUFXLEVBQ1gsS0FBSyxFQUNMLE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7Ozs7QUFRcEQsTUFBTSxPQUFPLHdCQUF3QjtJQWtCbkMsSUFBK0IsT0FBTztRQUNwQyxPQUFPO1lBQ0wsbUJBQW1CO1lBQ25CLGlCQUFpQixJQUFJLENBQUMsTUFBTSxFQUFFO1lBQzlCLFVBQVUsSUFBSSxDQUFDLE1BQU0sRUFBRTtTQUN4QixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNkLENBQUM7SUFBQSxDQUFDO0lBRUYsSUFBMEIsS0FBSztRQUM3QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsd0JBQXdCLENBQUM7ZUFDcEMsSUFBSSxDQUFDLEtBQUs7b0JBQ0wsSUFBSSxDQUFDLFNBQVM7b0JBQ2QsSUFBSSxDQUFDLFNBQVM7b0JBQ2QsSUFBSSxDQUFDLE1BQU07S0FDMUIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFlBQW9CLFNBQXVCO1FBQXZCLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFsQ2xDLFVBQUssR0FBWSxTQUFTLENBQUM7UUFDM0IsY0FBUyxHQUFZLE1BQU0sQ0FBQztRQUM1QixjQUFTLEdBQVksTUFBTSxDQUFDO1FBQzVCLFdBQU0sR0FBd0IsU0FBUyxDQUFDO1FBQ3hDLFdBQU0sR0FBcUUsT0FBTyxDQUFDO1FBQ25GLGVBQVUsR0FBYSxLQUFLLENBQUM7UUFDN0IsZUFBVSxHQUFZLEVBQUUsQ0FBQztRQUN6QixXQUFNLEdBQVksS0FBSyxDQUFDO1FBQ2pDOztXQUVHO1FBQ00sY0FBUyxHQUFhLEtBQUssQ0FBQztRQUVsQixrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7SUFzQjlELENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdkMsQ0FBQztJQUNILENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxLQUFZO1FBQzNCLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUEwQixDQUFDO1FBQy9DLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFFL0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFcEMsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNsQyxDQUFDO0lBQ0gsQ0FBQzsrR0FyRFUsd0JBQXdCO21HQUF4Qix3QkFBd0IscWFBZ0JyQixlQUFlLGdEQ3BDL0IsOFdBU0E7OzRGRFdhLHdCQUF3QjtrQkFOcEMsU0FBUzsrQkFDRSxtQkFBbUIsaUJBR2QsaUJBQWlCLENBQUMsSUFBSTtpRkFHNUIsS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBSUcsU0FBUztzQkFBakIsS0FBSztnQkFFYSxhQUFhO3NCQUEvQixNQUFNO2dCQUV3QixJQUFJO3NCQUFsQyxZQUFZO3VCQUFDLGVBQWU7Z0JBRUUsT0FBTztzQkFBckMsV0FBVzt1QkFBQyxZQUFZO2dCQVFDLEtBQUs7c0JBQTlCLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVTdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG5pbXBvcnQgeyBGd01lbnVDb21wb25lbnQgfSBmcm9tICcuLi9tZW51LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Z3LW1lbnUtY29udGFpbmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21lbnUtY29udGFpbmVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWVudS1jb250YWluZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgRndNZW51Q29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG4gIEBJbnB1dCgpIHdpZHRoPzogc3RyaW5nID0gJ2luaGVyaXQnO1xuICBASW5wdXQoKSBtYXhIZWlnaHQ/OiBzdHJpbmcgPSAnYXV0byc7XG4gIEBJbnB1dCgpIG1pbkhlaWdodD86IHN0cmluZyA9ICdhdXRvJztcbiAgQElucHV0KCkgYm9yZGVyPzogJ25vbmUnIHwgJ2RlZmF1bHQnID0gJ2RlZmF1bHQnO1xuICBASW5wdXQoKSBzaGFkb3c/OiAnbm9uZScgfCAnc21hbGwnIHwgJ21lZGl1bScgfCAnbGFyZ2UnIHwgJ2V4dHJhLWxhcmdlJyB8ICdpbm5lcicgPSAnbGFyZ2UnO1xuICBASW5wdXQoKSBzaG93RmlsdGVyPzogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBmaWx0ZXJUZXh0Pzogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIG9mZnNldD86IHN0cmluZyA9ICcwcHgnO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgcGxlYXNlIHVzZSBmdy1uYXZiYXIgaW5zdGVhZFxuICAgKi9cbiAgQElucHV0KCkgY29sbGFwc2VkPzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBPdXRwdXQoKSByZWFkb25seSBmaWx0ZXJDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgQENvbnRlbnRDaGlsZChGd01lbnVDb21wb25lbnQpIG1lbnU6IEZ3TWVudUNvbXBvbmVudDtcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIuY2xhc3MnKSBnZXQgY2xhc3NlcygpOiBzdHJpbmcge1xuICAgIHJldHVybiBbXG4gICAgICAnZnctbWVudS1jb250YWluZXInLFxuICAgICAgYHZpc2lvbi1zaGFkb3ctJHt0aGlzLnNoYWRvd31gLFxuICAgICAgYGJvcmRlci0ke3RoaXMuYm9yZGVyfWAsXG4gICAgXS5qb2luKCcgJyk7XG4gIH07XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZScpIGdldCBzdHlsZSgpOiBTYWZlU3R5bGUge1xuICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0U3R5bGUoYFxuICAgICAgd2lkdGg6ICR7dGhpcy53aWR0aH07XG4gICAgICBtYXgtaGVpZ2h0OiAke3RoaXMubWF4SGVpZ2h0fTtcbiAgICAgIG1pbi1oZWlnaHQ6ICR7dGhpcy5taW5IZWlnaHR9O1xuICAgICAgbWFyZ2luLXRvcDogJHt0aGlzLm9mZnNldH07XG4gICAgYCk7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubWVudSkge1xuICAgICAgdGhpcy5tZW51LnNldEZpbHRlcih0aGlzLmZpbHRlclRleHQpO1xuICAgIH1cbiAgfVxuXG4gIGZpbHRlclRleHRDaGFuZ2UoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgaW5wdXQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICBjb25zdCBpbnB1dFZhbHVlID0gaW5wdXQudmFsdWU7XG5cbiAgICB0aGlzLmZpbHRlckNoYW5nZWQuZW1pdChpbnB1dFZhbHVlKTtcblxuICAgIGlmICh0aGlzLm1lbnUpIHtcbiAgICAgIHRoaXMubWVudS5zZXRGaWx0ZXIoaW5wdXRWYWx1ZSk7XG4gICAgfVxuICB9XG5cbn1cbiIsIjxkaXYgKm5nSWY9XCJzaG93RmlsdGVyXCIgY2xhc3M9XCJmaWx0ZXItYm94XCIgY2RrTWVudUJhcj5cbiAgPGZ3LXRleHQtaW5wdXRcbiAgICBwbGFjZWhvbGRlcj1cIlNlYXJjaFwiIGxlZnRJY29uPVwic2VhcmNoXCIgYXV0b2ZvY3VzXG4gICAgW3ZhbHVlXT1cImZpbHRlclRleHRcIiAoaW5wdXQpPVwiZmlsdGVyVGV4dENoYW5nZSgkZXZlbnQpXCI+XG4gIDwvZnctdGV4dC1pbnB1dD5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cIm1lbnUtd3JhcHBlclwiIFtuZ0NsYXNzXT1cIltzaG93RmlsdGVyPydmaWx0ZXJlZCc6JycsIGNvbGxhcHNlZD8nY29sbGFwc2VkJzonJ11cIj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { Component } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export class FwMenuHeaderComponent {
|
|
4
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwMenuHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FwMenuHeaderComponent, selector: "fw-menu-header", ngImport: i0, template: "<h3 class=\"vision-h3\">\n <ng-content></ng-content>\n</h3>\n<ng-content select=\"fw-icon-button\"></ng-content>\n<ng-content select=\"fw-badge\"></ng-content>\n", styles: [":host{display:flex;align-items:center;height:40px;overflow:hidden;container-name:menuheader;container-type:size}:host h3{padding:8px;margin:0 4px;width:100%}@container menuheader (max-width: 100px){h3{opacity:0}}\n"] }); }
|
|
4
6
|
}
|
|
5
|
-
|
|
6
|
-
FwMenuHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FwMenuHeaderComponent, selector: "fw-menu-header", ngImport: i0, template: "<h3 class=\"vision-h3\">\n <ng-content></ng-content>\n</h3>\n<ng-content select=\"fw-icon-button\"></ng-content>\n<ng-content select=\"fw-badge\"></ng-content>\n", styles: [":host{display:flex;align-items:center;height:40px;overflow:hidden;container-name:menuheader;container-type:size}:host h3{padding:8px;margin:0 4px;width:100%}@container menuheader (max-width: 100px){h3{opacity:0}}\n"] });
|
|
7
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FwMenuHeaderComponent, decorators: [{
|
|
7
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwMenuHeaderComponent, decorators: [{
|
|
8
8
|
type: Component,
|
|
9
9
|
args: [{ selector: 'fw-menu-header', template: "<h3 class=\"vision-h3\">\n <ng-content></ng-content>\n</h3>\n<ng-content select=\"fw-icon-button\"></ng-content>\n<ng-content select=\"fw-badge\"></ng-content>\n", styles: [":host{display:flex;align-items:center;height:40px;overflow:hidden;container-name:menuheader;container-type:size}:host h3{padding:8px;margin:0 4px;width:100%}@container menuheader (max-width: 100px){h3{opacity:0}}\n"] }]
|
|
10
10
|
}] });
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbWVudS9tZW51LWhlYWRlci9tZW51LWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9tZW51L21lbnUtaGVhZGVyL21lbnUtaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTzFDLE1BQU0sT0FBTyxxQkFBcUI7K0dBQXJCLHFCQUFxQjttR0FBckIscUJBQXFCLHNEQ1BsQyxvS0FLQTs7NEZERWEscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmdy1tZW51LWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21lbnUtaGVhZGVyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEZ3TWVudUhlYWRlckNvbXBvbmVudCB7XG5cbn1cbiIsIjxoMyBjbGFzcz1cInZpc2lvbi1oM1wiPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2gzPlxuPG5nLWNvbnRlbnQgc2VsZWN0PVwiZnctaWNvbi1idXR0b25cIj48L25nLWNvbnRlbnQ+XG48bmctY29udGVudCBzZWxlY3Q9XCJmdy1iYWRnZVwiPjwvbmctY29udGVudD5cbiJdfQ==
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { Component, ContentChildren, EventEmitter, HostBinding, Input, Output, } from '@angular/core';
|
|
2
|
+
import { FwMenuSubItemComponent } from '../menu-sub-item/menu-sub-item.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "../../icon-button/icon-button.component";
|
|
6
|
+
import * as i3 from "../../icon/icon.component";
|
|
7
|
+
import * as i4 from "../../checkbox/checkbox.component";
|
|
8
|
+
import * as i5 from "../../radio/radio.component";
|
|
9
|
+
export class FwMenuItemComponent {
|
|
10
|
+
constructor() {
|
|
11
|
+
this.size = 'default';
|
|
12
|
+
this.iconColor = 'primary';
|
|
13
|
+
this.showCheckbox = false;
|
|
14
|
+
this.checkboxColor = 'primary';
|
|
15
|
+
this.multiSelect = false;
|
|
16
|
+
this.hidden = false;
|
|
17
|
+
this.subItemsOpen = false;
|
|
18
|
+
// eslint-disable-next-line @angular-eslint/no-output-native
|
|
19
|
+
this.click = new EventEmitter();
|
|
20
|
+
this.focused = false;
|
|
21
|
+
this.selected = false;
|
|
22
|
+
this.subscriptions = [];
|
|
23
|
+
/**
|
|
24
|
+
* @deprecated please use fw-navbar-item instead
|
|
25
|
+
*/
|
|
26
|
+
this.variant = 'default';
|
|
27
|
+
}
|
|
28
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
29
|
+
ngOnChanges(changes) {
|
|
30
|
+
this.updateLayout();
|
|
31
|
+
}
|
|
32
|
+
ngOnDestroy() {
|
|
33
|
+
for (const subscription of this.subscriptions) {
|
|
34
|
+
subscription.unsubscribe();
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
ngAfterContentInit() {
|
|
38
|
+
this.subItems.forEach(subItem => {
|
|
39
|
+
const sub = subItem.click.subscribe(value => this.click.emit(value));
|
|
40
|
+
this.subscriptions.push(sub);
|
|
41
|
+
});
|
|
42
|
+
this.updateLayout();
|
|
43
|
+
}
|
|
44
|
+
updateLayout() {
|
|
45
|
+
if (this.subItems) {
|
|
46
|
+
this.subItems.forEach(subItem => {
|
|
47
|
+
subItem.variant = this.variant;
|
|
48
|
+
subItem.size = this.size;
|
|
49
|
+
subItem.hidden = !(this.subItemsOpen && !this.collapsed);
|
|
50
|
+
subItem.collapsed = this.collapsed;
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
toggleSubItemsView() {
|
|
55
|
+
this.subItemsOpen = !this.subItemsOpen;
|
|
56
|
+
this.updateLayout();
|
|
57
|
+
}
|
|
58
|
+
handleClick(evt) {
|
|
59
|
+
if (this.disabled) {
|
|
60
|
+
evt.stopPropagation();
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
if (this.href) {
|
|
64
|
+
if (this.target) {
|
|
65
|
+
// eslint-disable-next-line @rx-angular/prefer-no-layout-sensitive-apis
|
|
66
|
+
window.open(this.href, this.target).focus();
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
window.location.href = this.href;
|
|
70
|
+
}
|
|
71
|
+
evt.stopPropagation();
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
if (this.value) {
|
|
75
|
+
this.click.emit(this.value);
|
|
76
|
+
evt.stopPropagation();
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwMenuItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
80
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FwMenuItemComponent, selector: "fw-menu-item", inputs: { value: "value", size: "size", title: "title", description: "description", icon: "icon", iconColor: "iconColor", disabled: "disabled", showCheckbox: "showCheckbox", checkboxColor: "checkboxColor", multiSelect: "multiSelect", hidden: "hidden", collapsed: "collapsed", href: "href", target: "target", subItemsOpen: "subItemsOpen", focused: "focused", selected: "selected", variant: "variant" }, outputs: { click: "click" }, host: { properties: { "class.collapsed": "this.collapsed", "class.focused": "this.focused", "class.selected": "this.selected" } }, queries: [{ propertyName: "subItems", predicate: FwMenuSubItemComponent }], usesOnChanges: true, ngImport: i0, template: "<div (click)=\"handleClick($event)\" *ngIf=\"!hidden\">\n <div\n [ngClass]=\"['menu-item', 'size-'+size, 'variant-'+variant, disabled?'disabled':'']\"\n [class.disabled]=\"disabled\">\n <div class=\"item-checkbox\" *ngIf=\"showCheckbox && multiSelect\">\n <fw-checkbox\n [disabled]=\"disabled\"\n [color]=\"checkboxColor\"\n [checked]=\"selected\">\n </fw-checkbox>\n </div>\n <div class=\"item-radiobutton\" *ngIf=\"showCheckbox && !multiSelect\">\n <fw-radio-button\n [value]=\"value\"\n [color]=\"checkboxColor\"\n [disabled]=\"disabled\"\n [checked]=\"selected\">\n </fw-radio-button>\n </div>\n <fw-icon [color]=\"iconColor\" *ngIf=\"icon\" class=\"menu-icon {{iconColor}}\">{{ icon }}</fw-icon>\n <ng-content select=\"fw-avatar\"></ng-content>\n <div class=\"menu-text\" *ngIf=\"title\">\n <h4 class=\"vision-h4\">{{ title }}</h4>\n <p *ngIf=\"description\" class=\"vision-p4 description\">{{ description }}</p>\n </div>\n <div class=\"key-text vision-p2\">\n <ng-content select=\"p\"></ng-content>\n <ng-content select=\"fw-badge\"></ng-content>\n <ng-content select=\"fw-icon\"></ng-content>\n <ng-content select=\"fw-icon-button\"></ng-content>\n <fw-icon-button\n [size]=\"'small'\"\n [icon]=\"subItemsOpen?'chevron-up':'chevron-down'\"\n *ngIf=\"subItems.length>0\"\n (click)=\"toggleSubItemsView()\">\n </fw-icon-button>\n </div>\n </div>\n</div>\n<div class=\"item-subitems\">\n <ng-content select=\"fw-menu-sub-item\"></ng-content>\n</div>\n", styles: [":host{position:relative;display:flex;flex-direction:column}:host>div{display:flex;flex:1;text-decoration:none;max-width:100%}:host h4{text-overflow:ellipsis}:host:hover:not(.selected) .menu-item:not(.disabled),:host.focused:not(.selected) .menu-item:not(.disabled){background-color:var(--slate-hover);cursor:pointer}:host:hover:not(.selected) .menu-item:not(.disabled) .menu-icon,:host.focused:not(.selected) .menu-item:not(.disabled) .menu-icon{color:var(--primary-base)}:host:hover:not(.selected) .menu-item:not(.disabled) .menu-text h4,:host.focused:not(.selected) .menu-item:not(.disabled) .menu-text h4{color:var(--typography-base)}:host.selected .menu-item{background-color:var(--primary-hover);cursor:pointer}:host.selected .menu-item .menu-icon{color:var(--primary-base)}:host.selected .menu-item .menu-text h4{color:var(--typography-base)}:host.selected .menu-item.variant-modern:before{position:absolute;content:\" \";height:25px;border-left:3px solid var(--primary-base);margin-left:-16px}:host.selected .menu-item.variant-modern.size-compact:before{height:16px;border-left:3px solid var(--primary-base)}:host.selected .menu-item.variant-button:before{position:absolute;content:\" \";height:25px;border-left:3px solid var(--primary-base);margin-left:-14px;margin-top:10px}:host.selected .menu-item.variant-button.size-compact:before{margin-left:-15px;margin-top:4px;border-left:1px solid var(--primary-base)}:host.variant-modern.selected:before{position:absolute;content:\" \";height:25px;border-left:3px solid var(--primary-base);margin-left:-16px}:host.variant-modern.size-compact.selected:before{height:16px;border-left:3px solid var(--primary-base)}:host.collapsed .menu-item{container-name:menuitem;container-type:size}:host .menu-item{box-sizing:border-box;display:flex;flex-direction:row;align-items:center;flex:1;gap:8px;padding:8px;margin:1px 4px;border-radius:4px;color:var(--typography-muted);min-height:40px;width:stretch}:host .menu-item .item-checkbox:empty{display:none}:host .menu-item .item-radiobutton{padding:0}:host .menu-item .item-radiobutton:empty{display:none}:host .menu-item .menu-icon{font-size:18px;min-width:18px;width:18px;white-space:nowrap}:host .menu-item .menu-text{flex:1;overflow:hidden;padding:2px 0}:host .menu-item .menu-text h4{margin:0;color:var(--typography-muted);white-space:nowrap;overflow:hidden}:host .menu-item .menu-text p{margin:0}:host .menu-item .menu-text p.description{color:var(--typography-light)}:host .menu-item .key-text{display:flex;align-items:center;gap:8px;color:var(--typography-light)}:host .menu-item .key-text fw-icon-button{min-height:22px!important;min-width:22px!important;width:22px!important}:host .menu-item.size-compact{min-height:32px}:host .menu-item.size-compact .menu-text .description{display:none}:host .menu-item.disabled{opacity:.4;cursor:not-allowed}:host .menu-item.variant-modern{padding:8px 16px;border-radius:6px}:host .menu-item.variant-modern.size-compact{min-height:34px}:host .menu-item.variant-button{height:52px;width:60px;flex-direction:column;gap:1px;padding:3px 0;border-radius:8px;display:block;text-align:center;flex:unset;white-space:nowrap;overflow:hidden;container-name:menuitem-button}:host .menu-item.variant-button .menu-icon{font-size:32px;min-width:32px;width:32px}:host .menu-item.variant-button .menu-text h4{font-size:10px;font-style:normal;font-weight:400;line-height:130%}:host .menu-item.variant-button .menu-text .description{display:none}:host .menu-item.variant-button.size-compact{min-height:40px;width:50px}:host .menu-item.variant-button.size-compact .menu-icon{font-size:20px;min-width:20px;width:20px}:host .menu-item.variant-button.size-compact .menu-text h4{font-size:10px;font-style:normal;font-weight:400;line-height:130%}:host .item-subitems{display:flex;flex-direction:column}@container menuitem (max-width: 60px){.menu-item{gap:0}.menu-item .menu-text{opacity:0}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.FwIconButtonComponent, selector: "fw-icon-button", inputs: ["color", "icon", "size", "disabled", "selected"] }, { kind: "component", type: i3.FwIconComponent, selector: "fw-icon", inputs: ["size", "color"] }, { kind: "component", type: i4.FwCheckboxComponent, selector: "fw-checkbox", inputs: ["name", "disabled", "size", "color", "title", "focused", "checked"], outputs: ["change"] }, { kind: "component", type: i5.FwRadioComponent, selector: "fw-radio-button", inputs: ["checked", "value", "group", "disabled", "size", "color", "title", "focused"], outputs: ["change"] }] }); }
|
|
81
|
+
}
|
|
82
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwMenuItemComponent, decorators: [{
|
|
83
|
+
type: Component,
|
|
84
|
+
args: [{ selector: 'fw-menu-item', template: "<div (click)=\"handleClick($event)\" *ngIf=\"!hidden\">\n <div\n [ngClass]=\"['menu-item', 'size-'+size, 'variant-'+variant, disabled?'disabled':'']\"\n [class.disabled]=\"disabled\">\n <div class=\"item-checkbox\" *ngIf=\"showCheckbox && multiSelect\">\n <fw-checkbox\n [disabled]=\"disabled\"\n [color]=\"checkboxColor\"\n [checked]=\"selected\">\n </fw-checkbox>\n </div>\n <div class=\"item-radiobutton\" *ngIf=\"showCheckbox && !multiSelect\">\n <fw-radio-button\n [value]=\"value\"\n [color]=\"checkboxColor\"\n [disabled]=\"disabled\"\n [checked]=\"selected\">\n </fw-radio-button>\n </div>\n <fw-icon [color]=\"iconColor\" *ngIf=\"icon\" class=\"menu-icon {{iconColor}}\">{{ icon }}</fw-icon>\n <ng-content select=\"fw-avatar\"></ng-content>\n <div class=\"menu-text\" *ngIf=\"title\">\n <h4 class=\"vision-h4\">{{ title }}</h4>\n <p *ngIf=\"description\" class=\"vision-p4 description\">{{ description }}</p>\n </div>\n <div class=\"key-text vision-p2\">\n <ng-content select=\"p\"></ng-content>\n <ng-content select=\"fw-badge\"></ng-content>\n <ng-content select=\"fw-icon\"></ng-content>\n <ng-content select=\"fw-icon-button\"></ng-content>\n <fw-icon-button\n [size]=\"'small'\"\n [icon]=\"subItemsOpen?'chevron-up':'chevron-down'\"\n *ngIf=\"subItems.length>0\"\n (click)=\"toggleSubItemsView()\">\n </fw-icon-button>\n </div>\n </div>\n</div>\n<div class=\"item-subitems\">\n <ng-content select=\"fw-menu-sub-item\"></ng-content>\n</div>\n", styles: [":host{position:relative;display:flex;flex-direction:column}:host>div{display:flex;flex:1;text-decoration:none;max-width:100%}:host h4{text-overflow:ellipsis}:host:hover:not(.selected) .menu-item:not(.disabled),:host.focused:not(.selected) .menu-item:not(.disabled){background-color:var(--slate-hover);cursor:pointer}:host:hover:not(.selected) .menu-item:not(.disabled) .menu-icon,:host.focused:not(.selected) .menu-item:not(.disabled) .menu-icon{color:var(--primary-base)}:host:hover:not(.selected) .menu-item:not(.disabled) .menu-text h4,:host.focused:not(.selected) .menu-item:not(.disabled) .menu-text h4{color:var(--typography-base)}:host.selected .menu-item{background-color:var(--primary-hover);cursor:pointer}:host.selected .menu-item .menu-icon{color:var(--primary-base)}:host.selected .menu-item .menu-text h4{color:var(--typography-base)}:host.selected .menu-item.variant-modern:before{position:absolute;content:\" \";height:25px;border-left:3px solid var(--primary-base);margin-left:-16px}:host.selected .menu-item.variant-modern.size-compact:before{height:16px;border-left:3px solid var(--primary-base)}:host.selected .menu-item.variant-button:before{position:absolute;content:\" \";height:25px;border-left:3px solid var(--primary-base);margin-left:-14px;margin-top:10px}:host.selected .menu-item.variant-button.size-compact:before{margin-left:-15px;margin-top:4px;border-left:1px solid var(--primary-base)}:host.variant-modern.selected:before{position:absolute;content:\" \";height:25px;border-left:3px solid var(--primary-base);margin-left:-16px}:host.variant-modern.size-compact.selected:before{height:16px;border-left:3px solid var(--primary-base)}:host.collapsed .menu-item{container-name:menuitem;container-type:size}:host .menu-item{box-sizing:border-box;display:flex;flex-direction:row;align-items:center;flex:1;gap:8px;padding:8px;margin:1px 4px;border-radius:4px;color:var(--typography-muted);min-height:40px;width:stretch}:host .menu-item .item-checkbox:empty{display:none}:host .menu-item .item-radiobutton{padding:0}:host .menu-item .item-radiobutton:empty{display:none}:host .menu-item .menu-icon{font-size:18px;min-width:18px;width:18px;white-space:nowrap}:host .menu-item .menu-text{flex:1;overflow:hidden;padding:2px 0}:host .menu-item .menu-text h4{margin:0;color:var(--typography-muted);white-space:nowrap;overflow:hidden}:host .menu-item .menu-text p{margin:0}:host .menu-item .menu-text p.description{color:var(--typography-light)}:host .menu-item .key-text{display:flex;align-items:center;gap:8px;color:var(--typography-light)}:host .menu-item .key-text fw-icon-button{min-height:22px!important;min-width:22px!important;width:22px!important}:host .menu-item.size-compact{min-height:32px}:host .menu-item.size-compact .menu-text .description{display:none}:host .menu-item.disabled{opacity:.4;cursor:not-allowed}:host .menu-item.variant-modern{padding:8px 16px;border-radius:6px}:host .menu-item.variant-modern.size-compact{min-height:34px}:host .menu-item.variant-button{height:52px;width:60px;flex-direction:column;gap:1px;padding:3px 0;border-radius:8px;display:block;text-align:center;flex:unset;white-space:nowrap;overflow:hidden;container-name:menuitem-button}:host .menu-item.variant-button .menu-icon{font-size:32px;min-width:32px;width:32px}:host .menu-item.variant-button .menu-text h4{font-size:10px;font-style:normal;font-weight:400;line-height:130%}:host .menu-item.variant-button .menu-text .description{display:none}:host .menu-item.variant-button.size-compact{min-height:40px;width:50px}:host .menu-item.variant-button.size-compact .menu-icon{font-size:20px;min-width:20px;width:20px}:host .menu-item.variant-button.size-compact .menu-text h4{font-size:10px;font-style:normal;font-weight:400;line-height:130%}:host .item-subitems{display:flex;flex-direction:column}@container menuitem (max-width: 60px){.menu-item{gap:0}.menu-item .menu-text{opacity:0}}\n"] }]
|
|
85
|
+
}], propDecorators: { value: [{
|
|
86
|
+
type: Input
|
|
87
|
+
}], size: [{
|
|
88
|
+
type: Input
|
|
89
|
+
}], title: [{
|
|
90
|
+
type: Input
|
|
91
|
+
}], description: [{
|
|
92
|
+
type: Input
|
|
93
|
+
}], icon: [{
|
|
94
|
+
type: Input
|
|
95
|
+
}], iconColor: [{
|
|
96
|
+
type: Input
|
|
97
|
+
}], disabled: [{
|
|
98
|
+
type: Input
|
|
99
|
+
}], showCheckbox: [{
|
|
100
|
+
type: Input
|
|
101
|
+
}], checkboxColor: [{
|
|
102
|
+
type: Input
|
|
103
|
+
}], multiSelect: [{
|
|
104
|
+
type: Input
|
|
105
|
+
}], hidden: [{
|
|
106
|
+
type: Input
|
|
107
|
+
}], collapsed: [{
|
|
108
|
+
type: HostBinding,
|
|
109
|
+
args: ['class.collapsed']
|
|
110
|
+
}, {
|
|
111
|
+
type: Input
|
|
112
|
+
}], href: [{
|
|
113
|
+
type: Input
|
|
114
|
+
}], target: [{
|
|
115
|
+
type: Input
|
|
116
|
+
}], subItemsOpen: [{
|
|
117
|
+
type: Input
|
|
118
|
+
}], click: [{
|
|
119
|
+
type: Output
|
|
120
|
+
}], focused: [{
|
|
121
|
+
type: HostBinding,
|
|
122
|
+
args: ['class.focused']
|
|
123
|
+
}, {
|
|
124
|
+
type: Input
|
|
125
|
+
}], selected: [{
|
|
126
|
+
type: HostBinding,
|
|
127
|
+
args: ['class.selected']
|
|
128
|
+
}, {
|
|
129
|
+
type: Input
|
|
130
|
+
}], subItems: [{
|
|
131
|
+
type: ContentChildren,
|
|
132
|
+
args: [FwMenuSubItemComponent]
|
|
133
|
+
}], variant: [{
|
|
134
|
+
type: Input
|
|
135
|
+
}] } });
|
|
136
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21lbnUvbWVudS1pdGVtL21lbnUtaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9tZW51L21lbnUtaXRlbS9tZW51LWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxlQUFlLEVBQ2YsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBR0wsTUFBTSxHQUdQLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7Ozs7O0FBT2xGLE1BQU0sT0FBTyxtQkFBbUI7SUFMaEM7UUFPVyxTQUFJLEdBQTJCLFNBQVMsQ0FBQztRQUl6QyxjQUFTLEdBQW1GLFNBQVMsQ0FBQztRQUV0RyxpQkFBWSxHQUFhLEtBQUssQ0FBQztRQUMvQixrQkFBYSxHQUF5QyxTQUFTLENBQUM7UUFDaEUsZ0JBQVcsR0FBYSxLQUFLLENBQUM7UUFDOUIsV0FBTSxHQUFhLEtBQUssQ0FBQztRQUl6QixpQkFBWSxHQUFZLEtBQUssQ0FBQztRQUN2Qyw0REFBNEQ7UUFDbEQsVUFBSyxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBQzVCLFlBQU8sR0FBYSxLQUFLLENBQUM7UUFDekIsYUFBUSxHQUFhLEtBQUssQ0FBQztRQUUzRCxrQkFBYSxHQUFtQixFQUFFLENBQUM7UUFDM0M7O1dBRUc7UUFDTSxZQUFPLEdBQXFDLFNBQVMsQ0FBQztLQTJEaEU7SUF6REMsNkRBQTZEO0lBQzdELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELFdBQVc7UUFDVCxLQUFLLE1BQU0sWUFBWSxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUM5QyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDN0IsQ0FBQztJQUNILENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDOUIsTUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ3JFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQzlCLE9BQU8sQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztnQkFDL0IsT0FBTyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO2dCQUN6QixPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUN6RCxPQUFPLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDckMsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUN2QyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELFdBQVcsQ0FBQyxHQUFXO1FBQ3JCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2xCLEdBQUcsQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN0QixPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2QsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ2hCLHVFQUF1RTtnQkFDdkUsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUM5QyxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNuQyxDQUFDO1lBQ0QsR0FBRyxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3RCLE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDNUIsR0FBRyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLENBQUM7SUFDSCxDQUFDOytHQW5GVSxtQkFBbUI7bUdBQW5CLG1CQUFtQiwrbkJBb0JiLHNCQUFzQixrREMzQ3pDLGltREEwQ0E7OzRGRG5CYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsY0FBYzs4QkFLZixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNtQyxTQUFTO3NCQUFqRCxXQUFXO3VCQUFDLGlCQUFpQjs7c0JBQUcsS0FBSztnQkFDN0IsSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUVJLEtBQUs7c0JBQWQsTUFBTTtnQkFDZ0MsT0FBTztzQkFBN0MsV0FBVzt1QkFBQyxlQUFlOztzQkFBRyxLQUFLO2dCQUNJLFFBQVE7c0JBQS9DLFdBQVc7dUJBQUMsZ0JBQWdCOztzQkFBRyxLQUFLO2dCQUNJLFFBQVE7c0JBQWhELGVBQWU7dUJBQUMsc0JBQXNCO2dCQUs5QixPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZyxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgSWNvblR5cGUgfSBmcm9tICcuLi8uLi9pY29uL2ljb24udHlwZXMnO1xuaW1wb3J0IHsgRndNZW51U3ViSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL21lbnUtc3ViLWl0ZW0vbWVudS1zdWItaXRlbS5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmdy1tZW51LWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vbWVudS1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWVudS1pdGVtLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEZ3TWVudUl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSwgQWZ0ZXJDb250ZW50SW5pdCB7XG4gIEBJbnB1dCgpIHZhbHVlPzogc3RyaW5nO1xuICBASW5wdXQoKSBzaXplPzogJ2RlZmF1bHQnIHwgJ2NvbXBhY3QnID0gJ2RlZmF1bHQnO1xuICBASW5wdXQoKSB0aXRsZTogc3RyaW5nO1xuICBASW5wdXQoKSBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgQElucHV0KCkgaWNvbj86IEljb25UeXBlO1xuICBASW5wdXQoKSBpY29uQ29sb3I/OiAncHJpbWFyeScgfCAnc2Vjb25kYXJ5JyB8ICdyZWQnIHwgJ29yYW5nZScgfCAnZ3JlZW4nIHwgJ3NsYXRlJyB8ICd0eXBvZ3JhcGh5JyA9ICdwcmltYXJ5JztcbiAgQElucHV0KCkgZGlzYWJsZWQ/OiBib29sZWFuO1xuICBASW5wdXQoKSBzaG93Q2hlY2tib3g/OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGNoZWNrYm94Q29sb3I/OiAncHJpbWFyeScgfCAnc2Vjb25kYXJ5JyB8ICdkZWZhdWx0JyA9ICdwcmltYXJ5JztcbiAgQElucHV0KCkgbXVsdGlTZWxlY3Q/OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGhpZGRlbj86IGJvb2xlYW4gPSBmYWxzZTtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jb2xsYXBzZWQnKSBASW5wdXQoKSBjb2xsYXBzZWQ/OiBib29sZWFuO1xuICBASW5wdXQoKSBocmVmPzogc3RyaW5nO1xuICBASW5wdXQoKSB0YXJnZXQ/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHN1Ykl0ZW1zT3BlbjogYm9vbGVhbiA9IGZhbHNlO1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1uYXRpdmVcbiAgQE91dHB1dCgpIGNsaWNrOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZvY3VzZWQnKSBASW5wdXQoKSBmb2N1c2VkPzogYm9vbGVhbiA9IGZhbHNlO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNlbGVjdGVkJykgQElucHV0KCkgc2VsZWN0ZWQ/OiBib29sZWFuID0gZmFsc2U7XG4gIEBDb250ZW50Q2hpbGRyZW4oRndNZW51U3ViSXRlbUNvbXBvbmVudCkgc3ViSXRlbXM6IFF1ZXJ5TGlzdDxGd01lbnVTdWJJdGVtQ29tcG9uZW50PjtcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgcGxlYXNlIHVzZSBmdy1uYXZiYXItaXRlbSBpbnN0ZWFkXG4gICAqL1xuICBASW5wdXQoKSB2YXJpYW50PzogJ2RlZmF1bHQnIHwgJ21vZGVybicgfCAnYnV0dG9uJyA9ICdkZWZhdWx0JztcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZUxheW91dCgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBzdWJzY3JpcHRpb24gb2YgdGhpcy5zdWJzY3JpcHRpb25zKSB7XG4gICAgICBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zdWJJdGVtcy5mb3JFYWNoKHN1Ykl0ZW0gPT4ge1xuICAgICAgY29uc3Qgc3ViID0gc3ViSXRlbS5jbGljay5zdWJzY3JpYmUodmFsdWUgPT4gdGhpcy5jbGljay5lbWl0KHZhbHVlKSk7XG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChzdWIpO1xuICAgIH0pO1xuICAgIHRoaXMudXBkYXRlTGF5b3V0KCk7XG4gIH1cblxuICB1cGRhdGVMYXlvdXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3ViSXRlbXMpIHtcbiAgICAgIHRoaXMuc3ViSXRlbXMuZm9yRWFjaChzdWJJdGVtID0+IHtcbiAgICAgICAgc3ViSXRlbS52YXJpYW50ID0gdGhpcy52YXJpYW50O1xuICAgICAgICBzdWJJdGVtLnNpemUgPSB0aGlzLnNpemU7XG4gICAgICAgIHN1Ykl0ZW0uaGlkZGVuID0gISh0aGlzLnN1Ykl0ZW1zT3BlbiAmJiAhdGhpcy5jb2xsYXBzZWQpO1xuICAgICAgICBzdWJJdGVtLmNvbGxhcHNlZCA9IHRoaXMuY29sbGFwc2VkO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgdG9nZ2xlU3ViSXRlbXNWaWV3KCk6IHZvaWQge1xuICAgIHRoaXMuc3ViSXRlbXNPcGVuID0gIXRoaXMuc3ViSXRlbXNPcGVuO1xuICAgIHRoaXMudXBkYXRlTGF5b3V0KCk7XG4gIH1cblxuICBoYW5kbGVDbGljayhldnQ/OiBFdmVudCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICBldnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaHJlZikge1xuICAgICAgaWYgKHRoaXMudGFyZ2V0KSB7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAcngtYW5ndWxhci9wcmVmZXItbm8tbGF5b3V0LXNlbnNpdGl2ZS1hcGlzXG4gICAgICAgIHdpbmRvdy5vcGVuKHRoaXMuaHJlZiwgdGhpcy50YXJnZXQpLmZvY3VzKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHRoaXMuaHJlZjtcbiAgICAgIH1cbiAgICAgIGV2dC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy52YWx1ZSkge1xuICAgICAgdGhpcy5jbGljay5lbWl0KHRoaXMudmFsdWUpO1xuICAgICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiAoY2xpY2spPVwiaGFuZGxlQ2xpY2soJGV2ZW50KVwiICpuZ0lmPVwiIWhpZGRlblwiPlxuICA8ZGl2XG4gICAgW25nQ2xhc3NdPVwiWydtZW51LWl0ZW0nLCAnc2l6ZS0nK3NpemUsICd2YXJpYW50LScrdmFyaWFudCwgZGlzYWJsZWQ/J2Rpc2FibGVkJzonJ11cIlxuICAgIFtjbGFzcy5kaXNhYmxlZF09XCJkaXNhYmxlZFwiPlxuICAgIDxkaXYgY2xhc3M9XCJpdGVtLWNoZWNrYm94XCIgKm5nSWY9XCJzaG93Q2hlY2tib3ggJiYgbXVsdGlTZWxlY3RcIj5cbiAgICAgIDxmdy1jaGVja2JveFxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbY29sb3JdPVwiY2hlY2tib3hDb2xvclwiXG4gICAgICAgIFtjaGVja2VkXT1cInNlbGVjdGVkXCI+XG4gICAgICA8L2Z3LWNoZWNrYm94PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJpdGVtLXJhZGlvYnV0dG9uXCIgKm5nSWY9XCJzaG93Q2hlY2tib3ggJiYgIW11bHRpU2VsZWN0XCI+XG4gICAgICA8ZnctcmFkaW8tYnV0dG9uXG4gICAgICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgICAgIFtjb2xvcl09XCJjaGVja2JveENvbG9yXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgW2NoZWNrZWRdPVwic2VsZWN0ZWRcIj5cbiAgICAgIDwvZnctcmFkaW8tYnV0dG9uPlxuICAgIDwvZGl2PlxuICAgIDxmdy1pY29uIFtjb2xvcl09XCJpY29uQ29sb3JcIiAqbmdJZj1cImljb25cIiBjbGFzcz1cIm1lbnUtaWNvbiB7e2ljb25Db2xvcn19XCI+e3sgaWNvbiB9fTwvZnctaWNvbj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJmdy1hdmF0YXJcIj48L25nLWNvbnRlbnQ+XG4gICAgPGRpdiBjbGFzcz1cIm1lbnUtdGV4dFwiICpuZ0lmPVwidGl0bGVcIj5cbiAgICAgIDxoNCBjbGFzcz1cInZpc2lvbi1oNFwiPnt7IHRpdGxlIH19PC9oND5cbiAgICAgIDxwICpuZ0lmPVwiZGVzY3JpcHRpb25cIiBjbGFzcz1cInZpc2lvbi1wNCBkZXNjcmlwdGlvblwiPnt7IGRlc2NyaXB0aW9uIH19PC9wPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJrZXktdGV4dCB2aXNpb24tcDJcIj5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInBcIj48L25nLWNvbnRlbnQ+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJmdy1iYWRnZVwiPjwvbmctY29udGVudD5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImZ3LWljb25cIj48L25nLWNvbnRlbnQ+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJmdy1pY29uLWJ1dHRvblwiPjwvbmctY29udGVudD5cbiAgICAgIDxmdy1pY29uLWJ1dHRvblxuICAgICAgICBbc2l6ZV09XCInc21hbGwnXCJcbiAgICAgICAgW2ljb25dPVwic3ViSXRlbXNPcGVuPydjaGV2cm9uLXVwJzonY2hldnJvbi1kb3duJ1wiXG4gICAgICAgICpuZ0lmPVwic3ViSXRlbXMubGVuZ3RoPjBcIlxuICAgICAgICAoY2xpY2spPVwidG9nZ2xlU3ViSXRlbXNWaWV3KClcIj5cbiAgICAgIDwvZnctaWNvbi1idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwiaXRlbS1zdWJpdGVtc1wiPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJmdy1tZW51LXN1Yi1pdGVtXCI+PC9uZy1jb250ZW50PlxuPC9kaXY+XG4iXX0=
|