structra-ui 0.1.17 → 0.1.19
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/fesm2022/structra-ui.mjs +326 -326
- package/fesm2022/structra-ui.mjs.map +1 -1
- package/package.json +16 -25
- package/esm2022/app/_utils/date-pt-br.utils.mjs +0 -82
- package/esm2022/app/_utils/decimal-br.utils.mjs +0 -154
- package/esm2022/app/_utils/estados-br.data.mjs +0 -37
- package/esm2022/app/_utils/integer-br.utils.mjs +0 -48
- package/esm2022/app/_utils/integer-value.utils.mjs +0 -19
- package/esm2022/app/_utils/scroll/body-scroll-lock.util.mjs +0 -97
- package/esm2022/app/app-shell/_models/breadcrumb-item.model.mjs +0 -2
- package/esm2022/app/app-shell/app-shell-sidebar-template.directive.mjs +0 -29
- package/esm2022/app/app-shell/app-shell.component.mjs +0 -105
- package/esm2022/app/app-shell/breadcrumb/breadcrumb.component.mjs +0 -18
- package/esm2022/app/app-shell/index.mjs +0 -19
- package/esm2022/app/app-shell/sidebar/app-sidebar-toolbar.directive.mjs +0 -23
- package/esm2022/app/app-shell/sidebar/shell-sidebar-toggle.component.mjs +0 -36
- package/esm2022/app/app-shell/sidebar/sidebar.component.mjs +0 -84
- package/esm2022/app/app-shell/sidebar-reveal.constants.mjs +0 -9
- package/esm2022/app/app-shell/topbar/topbar.component.mjs +0 -14
- package/esm2022/app/app-shell/user-menu/user-menu.component.mjs +0 -52
- package/esm2022/app/buttons/base-button/base-button.component.mjs +0 -97
- package/esm2022/app/buttons/index.mjs +0 -2
- package/esm2022/app/data-display/_models/card-item-view.model.mjs +0 -2
- package/esm2022/app/data-display/_models/data-display.models.mjs +0 -2
- package/esm2022/app/data-display/_models/data-grid-column.model.mjs +0 -2
- package/esm2022/app/data-display/_models/index.mjs +0 -2
- package/esm2022/app/data-display/adaptive-data-view/adaptive-data-view.component.mjs +0 -124
- package/esm2022/app/data-display/card-list/card-list.component.mjs +0 -208
- package/esm2022/app/data-display/dashboard-section/dashboard-section.component.mjs +0 -25
- package/esm2022/app/data-display/data-card/data-card.component.mjs +0 -40
- package/esm2022/app/data-display/data-grid/data-grid-actions-cell-renderer.component.mjs +0 -41
- package/esm2022/app/data-display/data-grid/data-grid.component.mjs +0 -253
- package/esm2022/app/data-display/data-list/data-list.component.mjs +0 -40
- package/esm2022/app/data-display/data-toolbar/data-toolbar.component.mjs +0 -12
- package/esm2022/app/data-display/details-field/details-field.component.mjs +0 -21
- package/esm2022/app/data-display/details-view/details-view.component.mjs +0 -44
- package/esm2022/app/data-display/empty-state/empty-state-overlay.util.mjs +0 -19
- package/esm2022/app/data-display/empty-state/empty-state.component.mjs +0 -30
- package/esm2022/app/data-display/index.mjs +0 -19
- package/esm2022/app/data-display/list-item/list-item.component.mjs +0 -59
- package/esm2022/app/data-display/stat-card/stat-card.component.mjs +0 -59
- package/esm2022/app/data-display/status-badge/status-badge.component.mjs +0 -41
- package/esm2022/app/data-display/table-empty-state/table-empty-state.component.mjs +0 -31
- package/esm2022/app/data-display/table-toolbar/table-toolbar.component.mjs +0 -22
- package/esm2022/app/dialogs/_models/lib-dialog-size.model.mjs +0 -8
- package/esm2022/app/dialogs/_utils/app-lib-light-block-scroll-strategy.mjs +0 -22
- package/esm2022/app/dialogs/_utils/lib-dialog-panel-classes.mjs +0 -6
- package/esm2022/app/dialogs/app-dialog/app-dialog.component.mjs +0 -200
- package/esm2022/app/dialogs/app-dialog/dialog-footer.directive.mjs +0 -15
- package/esm2022/app/dialogs/confirm-dialog/confirm-dialog-data.model.mjs +0 -2
- package/esm2022/app/dialogs/confirm-dialog/confirm-dialog.component.mjs +0 -36
- package/esm2022/app/dialogs/confirm-dialog/confirm-dialog.service.mjs +0 -47
- package/esm2022/app/dialogs/index.mjs +0 -12
- package/esm2022/app/dialogs/loading-dialog/loading-dialog-data.model.mjs +0 -2
- package/esm2022/app/dialogs/loading-dialog/loading-dialog.component.mjs +0 -19
- package/esm2022/app/dialogs/loading-dialog/loading-dialog.service.mjs +0 -38
- package/esm2022/app/dialogs/toast/toast-host.component.mjs +0 -65
- package/esm2022/app/dialogs/toast/toast.models.mjs +0 -2
- package/esm2022/app/dialogs/toast/toast.service.mjs +0 -76
- package/esm2022/app/fields/checkbox-fields/_base/boolean-field.directive.mjs +0 -158
- package/esm2022/app/fields/checkbox-fields/checkbox-field/checkbox-field.component.mjs +0 -36
- package/esm2022/app/fields/checkbox-fields/index.mjs +0 -4
- package/esm2022/app/fields/checkbox-fields/switch-field/switch-field.component.mjs +0 -35
- package/esm2022/app/fields/dropdown-fields/_base/dropdown-base/dropdown-base.component.mjs +0 -117
- package/esm2022/app/fields/dropdown-fields/_base/dropdown-multi-option-field.base.mjs +0 -152
- package/esm2022/app/fields/dropdown-fields/_base/dropdown-option-field.base.mjs +0 -149
- package/esm2022/app/fields/dropdown-fields/_base/dropdown-trigger-blur.util.mjs +0 -32
- package/esm2022/app/fields/dropdown-fields/_models/dropdown-list-bindings.model.mjs +0 -2
- package/esm2022/app/fields/dropdown-fields/_models/dropdown-search-page-requested.model.mjs +0 -2
- package/esm2022/app/fields/dropdown-fields/_models/index.mjs +0 -2
- package/esm2022/app/fields/dropdown-fields/_models/select-option.model.mjs +0 -2
- package/esm2022/app/fields/dropdown-fields/_models/select-pagination.model.mjs +0 -2
- package/esm2022/app/fields/dropdown-fields/dropdown-search-field/dropdown-search-field.component.mjs +0 -520
- package/esm2022/app/fields/dropdown-fields/index.mjs +0 -7
- package/esm2022/app/fields/dropdown-fields/multiselect-field/multiselect-field.component.mjs +0 -379
- package/esm2022/app/fields/dropdown-fields/select-field/select-field.component.mjs +0 -359
- package/esm2022/app/fields/input-fields/_base/base-field.component.mjs +0 -151
- package/esm2022/app/fields/input-fields/_base/base-field.directive.mjs +0 -224
- package/esm2022/app/fields/input-fields/_base/masked-text-field.base.mjs +0 -135
- package/esm2022/app/fields/input-fields/_base/ng-control-field.directive.mjs +0 -127
- package/esm2022/app/fields/input-fields/_models/field-common-inputs.model.mjs +0 -2
- package/esm2022/app/fields/input-fields/_models/index.mjs +0 -2
- package/esm2022/app/fields/input-fields/_utils/mask-complete.validators.mjs +0 -61
- package/esm2022/app/fields/input-fields/_utils/mask-format.utils.mjs +0 -40
- package/esm2022/app/fields/input-fields/cep-field/cep-field.component.mjs +0 -48
- package/esm2022/app/fields/input-fields/cpf-cnpj-field/cpf-cnpj-field.component.mjs +0 -61
- package/esm2022/app/fields/input-fields/date-field/date-field.component.mjs +0 -147
- package/esm2022/app/fields/input-fields/decimal-field/decimal-field.component.mjs +0 -166
- package/esm2022/app/fields/input-fields/index.mjs +0 -22
- package/esm2022/app/fields/input-fields/input-mask-field/input-mask-field.component.mjs +0 -52
- package/esm2022/app/fields/input-fields/integer-field/integer-field.component.mjs +0 -143
- package/esm2022/app/fields/input-fields/password-field/password-field.component.mjs +0 -130
- package/esm2022/app/fields/input-fields/phone-field/phone-field.component.mjs +0 -66
- package/esm2022/app/fields/input-fields/text-field/text-field.component.mjs +0 -90
- package/esm2022/app/fields/input-fields/textarea-field/textarea-field.component.mjs +0 -125
- package/esm2022/app/form-layout/_models/form-layout.model.mjs +0 -48
- package/esm2022/app/form-layout/_models/form-tabs.model.mjs +0 -2
- package/esm2022/app/form-layout/_models/index.mjs +0 -2
- package/esm2022/app/form-layout/_models/validation-summary.model.mjs +0 -2
- package/esm2022/app/form-layout/form-actions/form-actions.component.mjs +0 -55
- package/esm2022/app/form-layout/form-col/form-col.component.mjs +0 -76
- package/esm2022/app/form-layout/form-group/form-group.component.mjs +0 -358
- package/esm2022/app/form-layout/form-group/form-path.utils.mjs +0 -65
- package/esm2022/app/form-layout/form-group/form-root-invalid-ui-refresh.util.mjs +0 -54
- package/esm2022/app/form-layout/form-row/form-row.component.mjs +0 -49
- package/esm2022/app/form-layout/form-section/form-section.component.mjs +0 -43
- package/esm2022/app/form-layout/form-tab/form-tab.component.mjs +0 -67
- package/esm2022/app/form-layout/form-tabs/form-tabs.component.mjs +0 -126
- package/esm2022/app/form-layout/index.mjs +0 -14
- package/esm2022/app/form-layout/layout-stack/layout-stack.component.mjs +0 -56
- package/esm2022/app/form-layout/validation-summary/validation-summary.component.mjs +0 -343
- package/esm2022/app/loading/skeleton-loading/index.mjs +0 -7
- package/esm2022/app/loading/skeleton-loading/skeleton-block/skeleton-block.component.mjs +0 -43
- package/esm2022/app/loading/skeleton-loading/skeleton-card/skeleton-card.component.mjs +0 -23
- package/esm2022/app/loading/skeleton-loading/skeleton-field-shell/skeleton-field-shell.component.mjs +0 -34
- package/esm2022/app/loading/skeleton-loading/skeleton-list/skeleton-list.component.mjs +0 -38
- package/esm2022/app/loading/skeleton-loading/skeleton-table/skeleton-table.component.mjs +0 -37
- package/esm2022/app/loading/skeleton-loading/skeleton-text/skeleton-text.component.mjs +0 -45
- package/esm2022/app/menus/_models/drawer-side.model.mjs +0 -8
- package/esm2022/app/menus/_models/drawer-size.model.mjs +0 -8
- package/esm2022/app/menus/_models/menu-dropdown-placement.model.mjs +0 -12
- package/esm2022/app/menus/_models/menu-item.model.mjs +0 -6
- package/esm2022/app/menus/_utils/menu-connected-positions.util.mjs +0 -41
- package/esm2022/app/menus/_utils/menu-rows.util.mjs +0 -39
- package/esm2022/app/menus/_utils/submenu-connected-positions.util.mjs +0 -23
- package/esm2022/app/menus/action-menu/action-menu.component.mjs +0 -48
- package/esm2022/app/menus/context-menu/context-menu.component.mjs +0 -112
- package/esm2022/app/menus/drawer/drawer.component.mjs +0 -142
- package/esm2022/app/menus/dropdown-menu/dropdown-menu.component.mjs +0 -99
- package/esm2022/app/menus/index.mjs +0 -11
- package/esm2022/app/menus/menu-divider/menu-divider.component.mjs +0 -14
- package/esm2022/app/menus/menu-group/menu-group.component.mjs +0 -32
- package/esm2022/app/menus/menu-list/menu-list.component.mjs +0 -399
- package/esm2022/app/overlay/_models/overlay-placement.model.mjs +0 -11
- package/esm2022/app/overlay/_utils/anchored-overlay-positions.util.mjs +0 -84
- package/esm2022/app/overlay/anchored-overlay/anchored-overlay.component.mjs +0 -121
- package/esm2022/app/overlay/index.mjs +0 -21
- package/esm2022/app/overlay/popover/popover-body-template.directive.mjs +0 -17
- package/esm2022/app/overlay/popover/popover-footer-template.directive.mjs +0 -17
- package/esm2022/app/overlay/popover/popover-trigger.directive.mjs +0 -15
- package/esm2022/app/overlay/popover/popover.component.mjs +0 -93
- package/esm2022/app/overlay/tooltip/tooltip-panel-template.directive.mjs +0 -20
- package/esm2022/app/overlay/tooltip/tooltip.component.mjs +0 -118
- package/esm2022/app/theme/app-theme.service.mjs +0 -49
- package/esm2022/app/theme/index.mjs +0 -2
- package/esm2022/structra-public-api.mjs +0 -18
- package/esm2022/structra-ui.mjs +0 -5
- package/esm2022/structra-version.mjs +0 -3
- package/index.d.ts +0 -5
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
import { NgClass } from '@angular/common';
|
|
2
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, Injector, Input, Output, ViewChild, afterNextRender, booleanAttribute, inject, } from '@angular/core';
|
|
3
|
-
import { DrawerSide } from '../_models/drawer-side.model';
|
|
4
|
-
import { DrawerSize } from '../_models/drawer-size.model';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
let drawerTitleSeq = 0;
|
|
7
|
-
export class DrawerComponent {
|
|
8
|
-
constructor() {
|
|
9
|
-
this.cdr = inject(ChangeDetectorRef);
|
|
10
|
-
this.injector = inject(Injector);
|
|
11
|
-
this.hostEl = inject((ElementRef));
|
|
12
|
-
this.open = false;
|
|
13
|
-
this.side = DrawerSide.Right;
|
|
14
|
-
this.size = DrawerSize.Md;
|
|
15
|
-
/** `title="…"` no template — evita colisão com `HTMLElement.title` no host. */
|
|
16
|
-
this.drawerHeading = '';
|
|
17
|
-
this.showCloseButton = true;
|
|
18
|
-
this.openChange = new EventEmitter();
|
|
19
|
-
this.DrawerSide = DrawerSide;
|
|
20
|
-
this.DrawerSize = DrawerSize;
|
|
21
|
-
this.titleId = `app-drawer-title-${++drawerTitleSeq}`;
|
|
22
|
-
this.focusPreOpen = null;
|
|
23
|
-
/** Igual ao `app-dialog`: backdrop + painel no `body` para `backdrop-filter` correcto. */
|
|
24
|
-
this.bodyRestoreParent = null;
|
|
25
|
-
this.bodyRestoreNext = null;
|
|
26
|
-
}
|
|
27
|
-
get panelClasses() {
|
|
28
|
-
return {
|
|
29
|
-
[`app-drawer__panel--side-${this.side}`]: true,
|
|
30
|
-
[`app-drawer__panel--size-${this.size}`]: true,
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
ngOnChanges(changes) {
|
|
34
|
-
if (!changes['open']) {
|
|
35
|
-
return;
|
|
36
|
-
}
|
|
37
|
-
if (this.open) {
|
|
38
|
-
this.attachHostToBody();
|
|
39
|
-
const a = document.activeElement;
|
|
40
|
-
if (a instanceof HTMLElement && a !== document.body) {
|
|
41
|
-
this.focusPreOpen = a;
|
|
42
|
-
}
|
|
43
|
-
afterNextRender(() => {
|
|
44
|
-
if (this.open) {
|
|
45
|
-
this.panelRef?.nativeElement?.focus({ preventScroll: true });
|
|
46
|
-
}
|
|
47
|
-
}, { injector: this.injector });
|
|
48
|
-
}
|
|
49
|
-
else if (changes['open'].previousValue === true) {
|
|
50
|
-
this.detachHostFromBody();
|
|
51
|
-
this.restoreFocus();
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
ngOnDestroy() {
|
|
55
|
-
this.detachHostFromBody();
|
|
56
|
-
}
|
|
57
|
-
attachHostToBody() {
|
|
58
|
-
const el = this.hostEl.nativeElement;
|
|
59
|
-
if (el.parentElement === document.body) {
|
|
60
|
-
return;
|
|
61
|
-
}
|
|
62
|
-
this.bodyRestoreParent = el.parentElement;
|
|
63
|
-
this.bodyRestoreNext = el.nextSibling;
|
|
64
|
-
document.body.appendChild(el);
|
|
65
|
-
}
|
|
66
|
-
detachHostFromBody() {
|
|
67
|
-
const el = this.hostEl.nativeElement;
|
|
68
|
-
if (el.parentElement !== document.body) {
|
|
69
|
-
this.bodyRestoreParent = null;
|
|
70
|
-
this.bodyRestoreNext = null;
|
|
71
|
-
return;
|
|
72
|
-
}
|
|
73
|
-
const parent = this.bodyRestoreParent;
|
|
74
|
-
const next = this.bodyRestoreNext;
|
|
75
|
-
this.bodyRestoreParent = null;
|
|
76
|
-
this.bodyRestoreNext = null;
|
|
77
|
-
if (parent && document.body.contains(parent)) {
|
|
78
|
-
if (next && next.parentNode === parent) {
|
|
79
|
-
parent.insertBefore(el, next);
|
|
80
|
-
return;
|
|
81
|
-
}
|
|
82
|
-
parent.appendChild(el);
|
|
83
|
-
return;
|
|
84
|
-
}
|
|
85
|
-
const appRoot = document.querySelector('app-root');
|
|
86
|
-
if (appRoot) {
|
|
87
|
-
appRoot.appendChild(el);
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
onBackdropClick() {
|
|
91
|
-
this.requestClose();
|
|
92
|
-
}
|
|
93
|
-
onCloseClick() {
|
|
94
|
-
this.requestClose();
|
|
95
|
-
}
|
|
96
|
-
onPanelKeydown(ev) {
|
|
97
|
-
if (ev.key === 'Escape') {
|
|
98
|
-
ev.preventDefault();
|
|
99
|
-
this.requestClose();
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
requestClose() {
|
|
103
|
-
if (!this.open) {
|
|
104
|
-
return;
|
|
105
|
-
}
|
|
106
|
-
this.openChange.emit(false);
|
|
107
|
-
}
|
|
108
|
-
restoreFocus() {
|
|
109
|
-
if (this.focusPreOpen && document.contains(this.focusPreOpen)) {
|
|
110
|
-
this.focusPreOpen.focus({ preventScroll: true });
|
|
111
|
-
}
|
|
112
|
-
this.focusPreOpen = null;
|
|
113
|
-
}
|
|
114
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DrawerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
115
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: DrawerComponent, isStandalone: true, selector: "app-drawer", inputs: { open: ["open", "open", booleanAttribute], side: "side", size: "size", drawerHeading: ["title", "drawerHeading"], showCloseButton: ["showCloseButton", "showCloseButton", booleanAttribute] }, outputs: { openChange: "openChange" }, host: { properties: { "class.app-drawer-host--open": "open" }, classAttribute: "app-drawer-host" }, viewQueries: [{ propertyName: "panelRef", first: true, predicate: ["panelRef"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "@if (open) {\r\n <div\r\n class=\"app-drawer__backdrop\"\r\n role=\"presentation\"\r\n tabindex=\"-1\"\r\n (click)=\"onBackdropClick()\"\r\n ></div>\r\n\r\n <aside\r\n #panelRef\r\n class=\"app-drawer__panel\"\r\n [ngClass]=\"panelClasses\"\r\n role=\"dialog\"\r\n aria-modal=\"true\"\r\n [attr.aria-labelledby]=\"drawerHeading.trim() ? titleId : null\"\r\n tabindex=\"-1\"\r\n (keydown)=\"onPanelKeydown($event)\"\r\n >\r\n <header class=\"app-drawer__header\">\r\n @if (drawerHeading.trim()) {\r\n <h2 class=\"app-drawer__title\" [id]=\"titleId\">{{ drawerHeading }}</h2>\r\n }\r\n @if (showCloseButton) {\r\n <button\r\n type=\"button\"\r\n class=\"app-drawer__close\"\r\n aria-label=\"Fechar painel\"\r\n (click)=\"onCloseClick()\"\r\n >\r\n <span class=\"app-drawer__close-x\" aria-hidden=\"true\">×</span>\r\n </button>\r\n }\r\n </header>\r\n\r\n <div class=\"app-drawer__body\">\r\n <ng-content />\r\n </div>\r\n\r\n <footer class=\"app-drawer__footer\">\r\n <ng-content select=\"[appDrawerFooter]\" />\r\n </footer>\r\n </aside>\r\n}\r\n", styles: ["@charset \"UTF-8\";:host{display:block}.app-drawer__backdrop{position:fixed;inset:0;z-index:var(--app-z-drawer-backdrop, 1100);background:#1a2f456b;backdrop-filter:blur(10px) saturate(1.05);-webkit-backdrop-filter:blur(10px) saturate(1.05);animation:app-drawer-backdrop-in .22s ease-out both}@keyframes app-drawer-backdrop-in{0%{backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0)}to{backdrop-filter:blur(10px) saturate(1.05);-webkit-backdrop-filter:blur(10px) saturate(1.05)}}.app-drawer__panel{position:fixed;z-index:var(--app-z-drawer-panel, 1101);display:flex;flex-direction:column;max-width:100vw;max-height:100vh;box-sizing:border-box;background:var(--app-color-surface, #fff);border:1px solid var(--app-color-border-subtle, rgba(26, 47, 69, .09));box-shadow:-4px 0 24px var(--app-color-elevated-shadow, rgba(43, 127, 217, .07));outline:none}.app-drawer__panel--side-right{top:0;right:0;bottom:0;animation:app-drawer-slide-in-right .24s ease-out}.app-drawer__panel--side-left{top:0;left:0;bottom:0;animation:app-drawer-slide-in-left .24s ease-out;box-shadow:4px 0 24px var(--app-color-elevated-shadow, rgba(43, 127, 217, .07))}.app-drawer__panel--side-bottom{inset:auto 0 0;max-height:min(88vh,32rem);border-radius:8px 8px 0 0;animation:app-drawer-slide-in-bottom .24s ease-out}.app-drawer__panel--side-right.app-drawer__panel--size-sm,.app-drawer__panel--side-left.app-drawer__panel--size-sm{width:min(18rem,90vw)}.app-drawer__panel--side-right.app-drawer__panel--size-md,.app-drawer__panel--side-left.app-drawer__panel--size-md{width:min(24rem,90vw)}.app-drawer__panel--side-right.app-drawer__panel--size-lg,.app-drawer__panel--side-left.app-drawer__panel--size-lg{width:min(32rem,90vw)}.app-drawer__panel--side-bottom.app-drawer__panel--size-sm{min-height:12rem}.app-drawer__panel--side-bottom.app-drawer__panel--size-md{min-height:16rem}.app-drawer__panel--side-bottom.app-drawer__panel--size-lg{min-height:22rem}@keyframes app-drawer-slide-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes app-drawer-slide-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes app-drawer-slide-in-bottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}.app-drawer__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:1rem 1rem .75rem;border-bottom:1px solid var(--app-color-border-subtle, rgba(26, 47, 69, .09));flex:0 0 auto}.app-drawer__title{margin:0;font-size:1.05rem;font-weight:600;color:var(--app-color-text-primary, #1a2f45);line-height:1.3;flex:1;min-width:0}.app-drawer__close{flex:0 0 auto;width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;border:1px solid var(--app-color-border, #d4d4d4);background:var(--app-color-surface-alt, #fff);color:var(--app-color-text-secondary, #5a7fa3);cursor:pointer;margin:0;padding:0}.app-drawer__close:hover{background:var(--app-color-hover-bg, rgba(43, 127, 217, .08))}.app-drawer__close:focus-visible{outline:2px solid var(--app-color-focus-ring-strong, rgba(43, 127, 217, .45));outline-offset:2px}.app-drawer__close-x{font-size:1.35rem;line-height:1}.app-drawer__body{flex:1 1 auto;min-height:0;overflow:auto;padding:1rem;color:var(--app-color-text-primary, #1a2f45);font-size:.9rem;line-height:1.5}.app-drawer__footer{flex:0 0 auto;padding:.75rem 1rem 1rem;border-top:1px solid var(--app-color-border-subtle, rgba(26, 47, 69, .09));display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.app-drawer__footer:empty{display:none;padding:0;border:none}@media (prefers-reduced-motion: reduce){.app-drawer__backdrop{animation:none}}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
116
|
-
}
|
|
117
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DrawerComponent, decorators: [{
|
|
118
|
-
type: Component,
|
|
119
|
-
args: [{ selector: 'app-drawer', standalone: true, imports: [NgClass], changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
120
|
-
class: 'app-drawer-host',
|
|
121
|
-
'[class.app-drawer-host--open]': 'open',
|
|
122
|
-
}, template: "@if (open) {\r\n <div\r\n class=\"app-drawer__backdrop\"\r\n role=\"presentation\"\r\n tabindex=\"-1\"\r\n (click)=\"onBackdropClick()\"\r\n ></div>\r\n\r\n <aside\r\n #panelRef\r\n class=\"app-drawer__panel\"\r\n [ngClass]=\"panelClasses\"\r\n role=\"dialog\"\r\n aria-modal=\"true\"\r\n [attr.aria-labelledby]=\"drawerHeading.trim() ? titleId : null\"\r\n tabindex=\"-1\"\r\n (keydown)=\"onPanelKeydown($event)\"\r\n >\r\n <header class=\"app-drawer__header\">\r\n @if (drawerHeading.trim()) {\r\n <h2 class=\"app-drawer__title\" [id]=\"titleId\">{{ drawerHeading }}</h2>\r\n }\r\n @if (showCloseButton) {\r\n <button\r\n type=\"button\"\r\n class=\"app-drawer__close\"\r\n aria-label=\"Fechar painel\"\r\n (click)=\"onCloseClick()\"\r\n >\r\n <span class=\"app-drawer__close-x\" aria-hidden=\"true\">×</span>\r\n </button>\r\n }\r\n </header>\r\n\r\n <div class=\"app-drawer__body\">\r\n <ng-content />\r\n </div>\r\n\r\n <footer class=\"app-drawer__footer\">\r\n <ng-content select=\"[appDrawerFooter]\" />\r\n </footer>\r\n </aside>\r\n}\r\n", styles: ["@charset \"UTF-8\";:host{display:block}.app-drawer__backdrop{position:fixed;inset:0;z-index:var(--app-z-drawer-backdrop, 1100);background:#1a2f456b;backdrop-filter:blur(10px) saturate(1.05);-webkit-backdrop-filter:blur(10px) saturate(1.05);animation:app-drawer-backdrop-in .22s ease-out both}@keyframes app-drawer-backdrop-in{0%{backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0)}to{backdrop-filter:blur(10px) saturate(1.05);-webkit-backdrop-filter:blur(10px) saturate(1.05)}}.app-drawer__panel{position:fixed;z-index:var(--app-z-drawer-panel, 1101);display:flex;flex-direction:column;max-width:100vw;max-height:100vh;box-sizing:border-box;background:var(--app-color-surface, #fff);border:1px solid var(--app-color-border-subtle, rgba(26, 47, 69, .09));box-shadow:-4px 0 24px var(--app-color-elevated-shadow, rgba(43, 127, 217, .07));outline:none}.app-drawer__panel--side-right{top:0;right:0;bottom:0;animation:app-drawer-slide-in-right .24s ease-out}.app-drawer__panel--side-left{top:0;left:0;bottom:0;animation:app-drawer-slide-in-left .24s ease-out;box-shadow:4px 0 24px var(--app-color-elevated-shadow, rgba(43, 127, 217, .07))}.app-drawer__panel--side-bottom{inset:auto 0 0;max-height:min(88vh,32rem);border-radius:8px 8px 0 0;animation:app-drawer-slide-in-bottom .24s ease-out}.app-drawer__panel--side-right.app-drawer__panel--size-sm,.app-drawer__panel--side-left.app-drawer__panel--size-sm{width:min(18rem,90vw)}.app-drawer__panel--side-right.app-drawer__panel--size-md,.app-drawer__panel--side-left.app-drawer__panel--size-md{width:min(24rem,90vw)}.app-drawer__panel--side-right.app-drawer__panel--size-lg,.app-drawer__panel--side-left.app-drawer__panel--size-lg{width:min(32rem,90vw)}.app-drawer__panel--side-bottom.app-drawer__panel--size-sm{min-height:12rem}.app-drawer__panel--side-bottom.app-drawer__panel--size-md{min-height:16rem}.app-drawer__panel--side-bottom.app-drawer__panel--size-lg{min-height:22rem}@keyframes app-drawer-slide-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes app-drawer-slide-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes app-drawer-slide-in-bottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}.app-drawer__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:1rem 1rem .75rem;border-bottom:1px solid var(--app-color-border-subtle, rgba(26, 47, 69, .09));flex:0 0 auto}.app-drawer__title{margin:0;font-size:1.05rem;font-weight:600;color:var(--app-color-text-primary, #1a2f45);line-height:1.3;flex:1;min-width:0}.app-drawer__close{flex:0 0 auto;width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;border:1px solid var(--app-color-border, #d4d4d4);background:var(--app-color-surface-alt, #fff);color:var(--app-color-text-secondary, #5a7fa3);cursor:pointer;margin:0;padding:0}.app-drawer__close:hover{background:var(--app-color-hover-bg, rgba(43, 127, 217, .08))}.app-drawer__close:focus-visible{outline:2px solid var(--app-color-focus-ring-strong, rgba(43, 127, 217, .45));outline-offset:2px}.app-drawer__close-x{font-size:1.35rem;line-height:1}.app-drawer__body{flex:1 1 auto;min-height:0;overflow:auto;padding:1rem;color:var(--app-color-text-primary, #1a2f45);font-size:.9rem;line-height:1.5}.app-drawer__footer{flex:0 0 auto;padding:.75rem 1rem 1rem;border-top:1px solid var(--app-color-border-subtle, rgba(26, 47, 69, .09));display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.app-drawer__footer:empty{display:none;padding:0;border:none}@media (prefers-reduced-motion: reduce){.app-drawer__backdrop{animation:none}}\n"] }]
|
|
123
|
-
}], propDecorators: { open: [{
|
|
124
|
-
type: Input,
|
|
125
|
-
args: [{ transform: booleanAttribute }]
|
|
126
|
-
}], side: [{
|
|
127
|
-
type: Input
|
|
128
|
-
}], size: [{
|
|
129
|
-
type: Input
|
|
130
|
-
}], drawerHeading: [{
|
|
131
|
-
type: Input,
|
|
132
|
-
args: ['title']
|
|
133
|
-
}], showCloseButton: [{
|
|
134
|
-
type: Input,
|
|
135
|
-
args: [{ transform: booleanAttribute }]
|
|
136
|
-
}], openChange: [{
|
|
137
|
-
type: Output
|
|
138
|
-
}], panelRef: [{
|
|
139
|
-
type: ViewChild,
|
|
140
|
-
args: ['panelRef']
|
|
141
|
-
}] } });
|
|
142
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbWVudXMvZHJhd2VyL2RyYXdlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21lbnVzL2RyYXdlci9kcmF3ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFFBQVEsRUFDUixLQUFLLEVBR0wsTUFBTSxFQUVOLFNBQVMsRUFDVCxlQUFlLEVBQ2YsZ0JBQWdCLEVBQ2hCLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQUUxRCxJQUFJLGNBQWMsR0FBRyxDQUFDLENBQUM7QUFjdkIsTUFBTSxPQUFPLGVBQWU7SUFaNUI7UUFhbUIsUUFBRyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2hDLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUIsV0FBTSxHQUFHLE1BQU0sQ0FBQyxDQUFBLFVBQXVCLENBQUEsQ0FBQyxDQUFDO1FBRWxCLFNBQUksR0FBRyxLQUFLLENBQUM7UUFFNUMsU0FBSSxHQUFlLFVBQVUsQ0FBQyxLQUFLLENBQUM7UUFFcEMsU0FBSSxHQUFlLFVBQVUsQ0FBQyxFQUFFLENBQUM7UUFFMUMsK0VBQStFO1FBQy9ELGtCQUFhLEdBQUcsRUFBRSxDQUFDO1FBRUssb0JBQWUsR0FBRyxJQUFJLENBQUM7UUFFNUMsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7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UUFDbkQsQ0FBQztRQUNELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO0lBQzNCLENBQUM7K0dBaElVLGVBQWU7bUdBQWYsZUFBZSwrRUFLTixnQkFBZ0Isa0lBU2hCLGdCQUFnQixtU0NqRHRDLGdzQ0EyQ0EsNm1IRGpCWSxPQUFPOzs0RkFTTixlQUFlO2tCQVozQixTQUFTOytCQUNFLFlBQVksY0FDVixJQUFJLFdBQ1AsQ0FBQyxPQUFPLENBQUMsbUJBR0QsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixLQUFLLEVBQUUsaUJBQWlCO3dCQUN4QiwrQkFBK0IsRUFBRSxNQUFNO3FCQUN4Qzs4QkFPdUMsSUFBSTtzQkFBM0MsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFFN0IsSUFBSTtzQkFBWixLQUFLO2dCQUVHLElBQUk7c0JBQVosS0FBSztnQkFHVSxhQUFhO3NCQUE1QixLQUFLO3VCQUFDLE9BQU87Z0JBRTBCLGVBQWU7c0JBQXRELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBRW5CLFVBQVU7c0JBQTVCLE1BQU07Z0JBRXdCLFFBQVE7c0JBQXRDLFNBQVM7dUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5qZWN0b3IsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGQsXG4gIGFmdGVyTmV4dFJlbmRlcixcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERyYXdlclNpZGUgfSBmcm9tICcuLi9fbW9kZWxzL2RyYXdlci1zaWRlLm1vZGVsJztcbmltcG9ydCB7IERyYXdlclNpemUgfSBmcm9tICcuLi9fbW9kZWxzL2RyYXdlci1zaXplLm1vZGVsJztcblxubGV0IGRyYXdlclRpdGxlU2VxID0gMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWRyYXdlcicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0NsYXNzXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2RyYXdlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9kcmF3ZXIuY29tcG9uZW50LnNjc3MnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnYXBwLWRyYXdlci1ob3N0JyxcbiAgICAnW2NsYXNzLmFwcC1kcmF3ZXItaG9zdC0tb3Blbl0nOiAnb3BlbicsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIERyYXdlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcbiAgcHJpdmF0ZSByZWFkb25seSBob3N0RWwgPSBpbmplY3QoRWxlbWVudFJlZjxIVE1MRWxlbWVudD4pO1xuXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBvcGVuID0gZmFsc2U7XG5cbiAgQElucHV0KCkgc2lkZTogRHJhd2VyU2lkZSA9IERyYXdlclNpZGUuUmlnaHQ7XG5cbiAgQElucHV0KCkgc2l6ZTogRHJhd2VyU2l6ZSA9IERyYXdlclNpemUuTWQ7XG5cbiAgLyoqIGB0aXRsZT1cIuKAplwiYCBubyB0ZW1wbGF0ZSDigJQgZXZpdGEgY29saXPDo28gY29tIGBIVE1MRWxlbWVudC50aXRsZWAgbm8gaG9zdC4gKi9cbiAgQElucHV0KCd0aXRsZScpIGRyYXdlckhlYWRpbmcgPSAnJztcblxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgc2hvd0Nsb3NlQnV0dG9uID0gdHJ1ZTtcblxuICBAT3V0cHV0KCkgcmVhZG9ubHkgb3BlbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBAVmlld0NoaWxkKCdwYW5lbFJlZicpIHByaXZhdGUgcGFuZWxSZWY/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICByZWFkb25seSBEcmF3ZXJTaWRlID0gRHJhd2VyU2lkZTtcbiAgcmVhZG9ubHkgRHJhd2VyU2l6ZSA9IERyYXdlclNpemU7XG5cbiAgcmVhZG9ubHkgdGl0bGVJZCA9IGBhcHAtZHJhd2VyLXRpdGxlLSR7KytkcmF3ZXJUaXRsZVNlcX1gO1xuXG4gIHByaXZhdGUgZm9jdXNQcmVPcGVuOiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBJZ3VhbCBhbyBgYXBwLWRpYWxvZ2A6IGJhY2tkcm9wICsgcGFpbmVsIG5vIGBib2R5YCBwYXJhIGBiYWNrZHJvcC1maWx0ZXJgIGNvcnJlY3RvLiAqL1xuICBwcml2YXRlIGJvZHlSZXN0b3JlUGFyZW50OiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIGJvZHlSZXN0b3JlTmV4dDogQ2hpbGROb2RlIHwgbnVsbCA9IG51bGw7XG5cbiAgZ2V0IHBhbmVsQ2xhc3NlcygpOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIFtgYXBwLWRyYXdlcl9fcGFuZWwtLXNpZGUtJHt0aGlzLnNpZGV9YF06IHRydWUsXG4gICAgICBbYGFwcC1kcmF3ZXJfX3BhbmVsLS1zaXplLSR7dGhpcy5zaXplfWBdOiB0cnVlLFxuICAgIH07XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKCFjaGFuZ2VzWydvcGVuJ10pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHRoaXMub3Blbikge1xuICAgICAgdGhpcy5hdHRhY2hIb3N0VG9Cb2R5KCk7XG4gICAgICBjb25zdCBhID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcbiAgICAgIGlmIChhIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQgJiYgYSAhPT0gZG9jdW1lbnQuYm9keSkge1xuICAgICAgICB0aGlzLmZvY3VzUHJlT3BlbiA9IGE7XG4gICAgICB9XG4gICAgICBhZnRlck5leHRSZW5kZXIoXG4gICAgICAgICgpID0+IHtcbiAgICAgICAgICBpZiAodGhpcy5vcGVuKSB7XG4gICAgICAgICAgICB0aGlzLnBhbmVsUmVmPy5uYXRpdmVFbGVtZW50Py5mb2N1cyh7IHByZXZlbnRTY3JvbGw6IHRydWUgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICB7IGluamVjdG9yOiB0aGlzLmluamVjdG9yIH0sXG4gICAgICApO1xuICAgIH0gZWxzZSBpZiAoY2hhbmdlc1snb3BlbiddLnByZXZpb3VzVmFsdWUgPT09IHRydWUpIHtcbiAgICAgIHRoaXMuZGV0YWNoSG9zdEZyb21Cb2R5KCk7XG4gICAgICB0aGlzLnJlc3RvcmVGb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGV0YWNoSG9zdEZyb21Cb2R5KCk7XG4gIH1cblxuICBwcml2YXRlIGF0dGFjaEhvc3RUb0JvZHkoKTogdm9pZCB7XG4gICAgY29uc3QgZWwgPSB0aGlzLmhvc3RFbC5uYXRpdmVFbGVtZW50O1xuICAgIGlmIChlbC5wYXJlbnRFbGVtZW50ID09PSBkb2N1bWVudC5ib2R5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuYm9keVJlc3RvcmVQYXJlbnQgPSBlbC5wYXJlbnRFbGVtZW50O1xuICAgIHRoaXMuYm9keVJlc3RvcmVOZXh0ID0gZWwubmV4dFNpYmxpbmc7XG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChlbCk7XG4gIH1cblxuICBwcml2YXRlIGRldGFjaEhvc3RGcm9tQm9keSgpOiB2b2lkIHtcbiAgICBjb25zdCBlbCA9IHRoaXMuaG9zdEVsLm5hdGl2ZUVsZW1lbnQ7XG4gICAgaWYgKGVsLnBhcmVudEVsZW1lbnQgIT09IGRvY3VtZW50LmJvZHkpIHtcbiAgICAgIHRoaXMuYm9keVJlc3RvcmVQYXJlbnQgPSBudWxsO1xuICAgICAgdGhpcy5ib2R5UmVzdG9yZU5leHQgPSBudWxsO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBwYXJlbnQgPSB0aGlzLmJvZHlSZXN0b3JlUGFyZW50O1xuICAgIGNvbnN0IG5leHQgPSB0aGlzLmJvZHlSZXN0b3JlTmV4dDtcbiAgICB0aGlzLmJvZHlSZXN0b3JlUGFyZW50ID0gbnVsbDtcbiAgICB0aGlzLmJvZHlSZXN0b3JlTmV4dCA9IG51bGw7XG4gICAgaWYgKHBhcmVudCAmJiBkb2N1bWVudC5ib2R5LmNvbnRhaW5zKHBhcmVudCkpIHtcbiAgICAgIGlmIChuZXh0ICYmIG5leHQucGFyZW50Tm9kZSA9PT0gcGFyZW50KSB7XG4gICAgICAgIHBhcmVudC5pbnNlcnRCZWZvcmUoZWwsIG5leHQpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBwYXJlbnQuYXBwZW5kQ2hpbGQoZWwpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBhcHBSb290ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignYXBwLXJvb3QnKTtcbiAgICBpZiAoYXBwUm9vdCkge1xuICAgICAgYXBwUm9vdC5hcHBlbmRDaGlsZChlbCk7XG4gICAgfVxuICB9XG5cbiAgb25CYWNrZHJvcENsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMucmVxdWVzdENsb3NlKCk7XG4gIH1cblxuICBvbkNsb3NlQ2xpY2soKTogdm9pZCB7XG4gICAgdGhpcy5yZXF1ZXN0Q2xvc2UoKTtcbiAgfVxuXG4gIG9uUGFuZWxLZXlkb3duKGV2OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGV2LmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgIGV2LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnJlcXVlc3RDbG9zZSgpO1xuICAgIH1cbiAgfVxuXG4gIHJlcXVlc3RDbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMub3Blbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLm9wZW5DaGFuZ2UuZW1pdChmYWxzZSk7XG4gIH1cblxuICBwcml2YXRlIHJlc3RvcmVGb2N1cygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5mb2N1c1ByZU9wZW4gJiYgZG9jdW1lbnQuY29udGFpbnModGhpcy5mb2N1c1ByZU9wZW4pKSB7XG4gICAgICB0aGlzLmZvY3VzUHJlT3Blbi5mb2N1cyh7IHByZXZlbnRTY3JvbGw6IHRydWUgfSk7XG4gICAgfVxuICAgIHRoaXMuZm9jdXNQcmVPcGVuID0gbnVsbDtcbiAgfVxufVxuIiwiQGlmIChvcGVuKSB7XHJcbiAgPGRpdlxyXG4gICAgY2xhc3M9XCJhcHAtZHJhd2VyX19iYWNrZHJvcFwiXHJcbiAgICByb2xlPVwicHJlc2VudGF0aW9uXCJcclxuICAgIHRhYmluZGV4PVwiLTFcIlxyXG4gICAgKGNsaWNrKT1cIm9uQmFja2Ryb3BDbGljaygpXCJcclxuICA+PC9kaXY+XHJcblxyXG4gIDxhc2lkZVxyXG4gICAgI3BhbmVsUmVmXHJcbiAgICBjbGFzcz1cImFwcC1kcmF3ZXJfX3BhbmVsXCJcclxuICAgIFtuZ0NsYXNzXT1cInBhbmVsQ2xhc3Nlc1wiXHJcbiAgICByb2xlPVwiZGlhbG9nXCJcclxuICAgIGFyaWEtbW9kYWw9XCJ0cnVlXCJcclxuICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJkcmF3ZXJIZWFkaW5nLnRyaW0oKSA/IHRpdGxlSWQgOiBudWxsXCJcclxuICAgIHRhYmluZGV4PVwiLTFcIlxyXG4gICAgKGtleWRvd24pPVwib25QYW5lbEtleWRvd24oJGV2ZW50KVwiXHJcbiAgPlxyXG4gICAgPGhlYWRlciBjbGFzcz1cImFwcC1kcmF3ZXJfX2hlYWRlclwiPlxyXG4gICAgICBAaWYgKGRyYXdlckhlYWRpbmcudHJpbSgpKSB7XHJcbiAgICAgICAgPGgyIGNsYXNzPVwiYXBwLWRyYXdlcl9fdGl0bGVcIiBbaWRdPVwidGl0bGVJZFwiPnt7IGRyYXdlckhlYWRpbmcgfX08L2gyPlxyXG4gICAgICB9XHJcbiAgICAgIEBpZiAoc2hvd0Nsb3NlQnV0dG9uKSB7XHJcbiAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICBjbGFzcz1cImFwcC1kcmF3ZXJfX2Nsb3NlXCJcclxuICAgICAgICAgIGFyaWEtbGFiZWw9XCJGZWNoYXIgcGFpbmVsXCJcclxuICAgICAgICAgIChjbGljayk9XCJvbkNsb3NlQ2xpY2soKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJhcHAtZHJhd2VyX19jbG9zZS14XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+JnRpbWVzOzwvc3Bhbj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgfVxyXG4gICAgPC9oZWFkZXI+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImFwcC1kcmF3ZXJfX2JvZHlcIj5cclxuICAgICAgPG5nLWNvbnRlbnQgLz5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxmb290ZXIgY2xhc3M9XCJhcHAtZHJhd2VyX19mb290ZXJcIj5cclxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2FwcERyYXdlckZvb3Rlcl1cIiAvPlxyXG4gICAgPC9mb290ZXI+XHJcbiAgPC9hc2lkZT5cclxufVxyXG4iXX0=
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, Input, Output, ViewChild, booleanAttribute, inject, } from '@angular/core';
|
|
2
|
-
import { DropdownBaseComponent } from '../../fields/dropdown-fields/_base/dropdown-base/dropdown-base.component';
|
|
3
|
-
import { MenuDropdownPlacement } from '../_models/menu-dropdown-placement.model';
|
|
4
|
-
import { MenuListComponent } from '../menu-list/menu-list.component';
|
|
5
|
-
import { menuConnectedPositions } from '../_utils/menu-connected-positions.util';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export class DropdownMenuComponent {
|
|
8
|
-
constructor() {
|
|
9
|
-
this.host = inject((ElementRef));
|
|
10
|
-
this.items = [];
|
|
11
|
-
this.placement = MenuDropdownPlacement.Below;
|
|
12
|
-
/** Largura mínima do painel em px (o painel pode alargar ao conteúdo). */
|
|
13
|
-
this.minWidthPx = 200;
|
|
14
|
-
/** Se `true`, a largura do painel segue a do trigger. */
|
|
15
|
-
this.matchTriggerWidth = true;
|
|
16
|
-
this.menuId = '';
|
|
17
|
-
this.itemSelect = new EventEmitter();
|
|
18
|
-
this.openChange = new EventEmitter();
|
|
19
|
-
this.open = false;
|
|
20
|
-
this.generatedId = `app-dd-${Math.random().toString(36).slice(2, 9)}`;
|
|
21
|
-
}
|
|
22
|
-
get resolvedMenuId() {
|
|
23
|
-
return this.menuId.trim() || this.generatedId;
|
|
24
|
-
}
|
|
25
|
-
/** Largura do painel no overlay (mínimo garantido; pode igualar ao trigger). */
|
|
26
|
-
get effectivePanelWidth() {
|
|
27
|
-
if (this.matchTriggerWidth) {
|
|
28
|
-
const w = this.host.nativeElement.getBoundingClientRect().width;
|
|
29
|
-
return Math.max(this.minWidthPx, Math.ceil(w));
|
|
30
|
-
}
|
|
31
|
-
return this.minWidthPx;
|
|
32
|
-
}
|
|
33
|
-
get connectedPositions() {
|
|
34
|
-
return menuConnectedPositions(this.placement);
|
|
35
|
-
}
|
|
36
|
-
onTriggerClick(ev) {
|
|
37
|
-
ev.preventDefault();
|
|
38
|
-
this.toggle();
|
|
39
|
-
}
|
|
40
|
-
toggle() {
|
|
41
|
-
this.setOpen(!this.open);
|
|
42
|
-
}
|
|
43
|
-
setOpen(next) {
|
|
44
|
-
if (this.open === next) {
|
|
45
|
-
return;
|
|
46
|
-
}
|
|
47
|
-
this.open = next;
|
|
48
|
-
this.openChange.emit(next);
|
|
49
|
-
if (next) {
|
|
50
|
-
queueMicrotask(() => this.menuList?.resetHighlight());
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
onBaseOpenChange(next) {
|
|
54
|
-
if (this.open === next) {
|
|
55
|
-
return;
|
|
56
|
-
}
|
|
57
|
-
this.open = next;
|
|
58
|
-
this.openChange.emit(next);
|
|
59
|
-
if (next) {
|
|
60
|
-
queueMicrotask(() => this.menuList?.resetHighlight());
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
onItemSelect(id) {
|
|
64
|
-
this.itemSelect.emit(id);
|
|
65
|
-
this.setOpen(false);
|
|
66
|
-
}
|
|
67
|
-
onCloseRequest() {
|
|
68
|
-
this.setOpen(false);
|
|
69
|
-
}
|
|
70
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DropdownMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
71
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "17.3.12", type: DropdownMenuComponent, isStandalone: true, selector: "app-dropdown-menu", inputs: { items: "items", placement: "placement", minWidthPx: "minWidthPx", matchTriggerWidth: ["matchTriggerWidth", "matchTriggerWidth", booleanAttribute], menuId: "menuId" }, outputs: { itemSelect: "itemSelect", openChange: "openChange" }, viewQueries: [{ propertyName: "panelTpl", first: true, predicate: ["panelTpl"], descendants: true, static: true }, { propertyName: "menuList", first: true, predicate: MenuListComponent, descendants: true }], ngImport: i0, template: "<app-dropdown-base\r\n class=\"dropdown-menu\"\r\n [open]=\"open\"\r\n (openChange)=\"onBaseOpenChange($event)\"\r\n [panelTemplate]=\"panelTpl\"\r\n [panelWidthPx]=\"effectivePanelWidth\"\r\n [connectedPositions]=\"connectedPositions\"\r\n [pushConnectedOverlay]=\"true\"\r\n [hasBackdrop]=\"true\"\r\n [closeOnEscape]=\"true\"\r\n [bareOverlayPanel]=\"true\"\r\n>\r\n <span\r\n class=\"dropdown-menu__trigger-slot\"\r\n appDropdownTrigger\r\n (click)=\"onTriggerClick($event)\"\r\n [attr.aria-expanded]=\"open\"\r\n aria-haspopup=\"menu\"\r\n >\r\n <ng-content />\r\n </span>\r\n</app-dropdown-base>\r\n\r\n<ng-template #panelTpl>\r\n <div class=\"dropdown-menu__panel-inner\">\r\n <app-menu-list\r\n [items]=\"items\"\r\n [menuId]=\"resolvedMenuId\"\r\n (itemSelect)=\"onItemSelect($event)\"\r\n (closeRequest)=\"onCloseRequest()\"\r\n />\r\n </div>\r\n</ng-template>\r\n", styles: [":host{display:inline-block;max-width:100%;vertical-align:middle}.dropdown-menu{display:inline-flex;max-width:100%;min-width:0}.dropdown-menu__trigger-slot{display:inline-flex;max-width:100%;min-width:0;cursor:pointer}.dropdown-menu__panel-inner{box-sizing:border-box;min-width:0}\n"], dependencies: [{ kind: "component", type: DropdownBaseComponent, selector: "app-dropdown-base", inputs: ["open", "panelTemplate", "panelWidthPx", "closeOnEscape", "hasBackdrop", "connectedPositions", "pushConnectedOverlay", "bareOverlayPanel"], outputs: ["openChange"] }, { kind: "component", type: MenuListComponent, selector: "app-menu-list", inputs: ["items", "menuId", "dense", "nested", "selectedItemId", "compressText"], outputs: ["itemSelect", "closeRequest", "submenuBack"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
72
|
-
}
|
|
73
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DropdownMenuComponent, decorators: [{
|
|
74
|
-
type: Component,
|
|
75
|
-
args: [{ selector: 'app-dropdown-menu', standalone: true, imports: [DropdownBaseComponent, MenuListComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<app-dropdown-base\r\n class=\"dropdown-menu\"\r\n [open]=\"open\"\r\n (openChange)=\"onBaseOpenChange($event)\"\r\n [panelTemplate]=\"panelTpl\"\r\n [panelWidthPx]=\"effectivePanelWidth\"\r\n [connectedPositions]=\"connectedPositions\"\r\n [pushConnectedOverlay]=\"true\"\r\n [hasBackdrop]=\"true\"\r\n [closeOnEscape]=\"true\"\r\n [bareOverlayPanel]=\"true\"\r\n>\r\n <span\r\n class=\"dropdown-menu__trigger-slot\"\r\n appDropdownTrigger\r\n (click)=\"onTriggerClick($event)\"\r\n [attr.aria-expanded]=\"open\"\r\n aria-haspopup=\"menu\"\r\n >\r\n <ng-content />\r\n </span>\r\n</app-dropdown-base>\r\n\r\n<ng-template #panelTpl>\r\n <div class=\"dropdown-menu__panel-inner\">\r\n <app-menu-list\r\n [items]=\"items\"\r\n [menuId]=\"resolvedMenuId\"\r\n (itemSelect)=\"onItemSelect($event)\"\r\n (closeRequest)=\"onCloseRequest()\"\r\n />\r\n </div>\r\n</ng-template>\r\n", styles: [":host{display:inline-block;max-width:100%;vertical-align:middle}.dropdown-menu{display:inline-flex;max-width:100%;min-width:0}.dropdown-menu__trigger-slot{display:inline-flex;max-width:100%;min-width:0;cursor:pointer}.dropdown-menu__panel-inner{box-sizing:border-box;min-width:0}\n"] }]
|
|
76
|
-
}], propDecorators: { items: [{
|
|
77
|
-
type: Input,
|
|
78
|
-
args: [{ required: true }]
|
|
79
|
-
}], placement: [{
|
|
80
|
-
type: Input
|
|
81
|
-
}], minWidthPx: [{
|
|
82
|
-
type: Input
|
|
83
|
-
}], matchTriggerWidth: [{
|
|
84
|
-
type: Input,
|
|
85
|
-
args: [{ transform: booleanAttribute }]
|
|
86
|
-
}], menuId: [{
|
|
87
|
-
type: Input
|
|
88
|
-
}], itemSelect: [{
|
|
89
|
-
type: Output
|
|
90
|
-
}], openChange: [{
|
|
91
|
-
type: Output
|
|
92
|
-
}], panelTpl: [{
|
|
93
|
-
type: ViewChild,
|
|
94
|
-
args: ['panelTpl', { static: true }]
|
|
95
|
-
}], menuList: [{
|
|
96
|
-
type: ViewChild,
|
|
97
|
-
args: [MenuListComponent]
|
|
98
|
-
}] } });
|
|
99
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21lbnVzL2Ryb3Bkb3duLW1lbnUvZHJvcGRvd24tbWVudS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21lbnVzL2Ryb3Bkb3duLW1lbnUvZHJvcGRvd24tbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBRU4sU0FBUyxFQUNULGdCQUFnQixFQUNoQixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEVBQTBFLENBQUM7QUFDakgsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFakYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDckUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUNBQXlDLENBQUM7O0FBVWpGLE1BQU0sT0FBTyxxQkFBcUI7SUFSbEM7UUFTbUIsU0FBSSxHQUFHLE1BQU0sQ0FBQyxDQUFBLFVBQXVCLENBQUEsQ0FBQyxDQUFDO1FBRTdCLFVBQUssR0FBK0IsRUFBRSxDQUFDO1FBRXpELGNBQVMsR0FBMEIscUJBQXFCLENBQUMsS0FBSyxDQUFDO1FBRXhFLDBFQUEwRTtRQUNqRSxlQUFVLEdBQUcsR0FBRyxDQUFDO1FBRTFCLHlEQUF5RDtRQUNqQixzQkFBaUIsR0FBRyxJQUFJLENBQUM7UUFFeEQsV0FBTSxHQUFHLEVBQUUsQ0FBQztRQUVGLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBSyxDQUFDO1FBQ25DLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBSzVELFNBQUksR0FBRyxLQUFLLENBQUM7UUFFSSxnQkFBVyxHQUFHLFVBQVUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUM7S0EwRG5GO0lBeERDLElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUNoRCxDQUFDO0lBRUQsZ0ZBQWdGO0lBQ2hGLElBQUksbUJBQW1CO1FBQ3JCLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDM0IsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDaEUsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pELENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUVELElBQUksa0JBQWtCO1FBQ3BCLE9BQU8sc0JBQXNCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxjQUFjLENBQUMsRUFBUztRQUN0QixFQUFFLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQsT0FBTyxDQUFDLElBQWE7UUFDbkIsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksRUFBRSxDQUFDO1lBQ3ZCLE9BQU87UUFDVCxDQUFDO1FBQ0QsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNULGNBQWMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLGNBQWMsRUFBRSxDQUFDLENBQUM7UUFDeEQsQ0FBQztJQUNILENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxJQUFhO1FBQzVCLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUN2QixPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNCLElBQUksSUFBSSxFQUFFLENBQUM7WUFDVCxjQUFjLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxjQUFjLEVBQUUsQ0FBQyxDQUFDO1FBQ3hELENBQUM7SUFDSCxDQUFDO0lBRUQsWUFBWSxDQUFDLEVBQUs7UUFDaEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QixDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEIsQ0FBQzsrR0FoRlUscUJBQXFCO21HQUFyQixxQkFBcUIsK0xBV1osZ0JBQWdCLCtQQVF6QixpQkFBaUIsZ0RDN0M5Qix1NkJBaUNBLG1WRFpZLHFCQUFxQiw0T0FBRSxpQkFBaUI7OzRGQUt2QyxxQkFBcUI7a0JBUmpDLFNBQVM7K0JBQ0UsbUJBQW1CLGNBQ2pCLElBQUksV0FDUCxDQUFDLHFCQUFxQixFQUFFLGlCQUFpQixDQUFDLG1CQUdsQyx1QkFBdUIsQ0FBQyxNQUFNOzhCQUtwQixLQUFLO3NCQUEvQixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFFaEIsU0FBUztzQkFBakIsS0FBSztnQkFHRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdrQyxpQkFBaUI7c0JBQXhELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBRTdCLE1BQU07c0JBQWQsS0FBSztnQkFFYSxVQUFVO3NCQUE1QixNQUFNO2dCQUNZLFVBQVU7c0JBQTVCLE1BQU07Z0JBRWtDLFFBQVE7c0JBQWhELFNBQVM7dUJBQUMsVUFBVSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDRCxRQUFRO3NCQUE3QyxTQUFTO3VCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERyb3Bkb3duQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2ZpZWxkcy9kcm9wZG93bi1maWVsZHMvX2Jhc2UvZHJvcGRvd24tYmFzZS9kcm9wZG93bi1iYXNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZW51RHJvcGRvd25QbGFjZW1lbnQgfSBmcm9tICcuLi9fbW9kZWxzL21lbnUtZHJvcGRvd24tcGxhY2VtZW50Lm1vZGVsJztcbmltcG9ydCB0eXBlIHsgTWVudU5vZGVJdGVtIH0gZnJvbSAnLi4vX21vZGVscy9tZW51LWl0ZW0ubW9kZWwnO1xuaW1wb3J0IHsgTWVudUxpc3RDb21wb25lbnQgfSBmcm9tICcuLi9tZW51LWxpc3QvbWVudS1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBtZW51Q29ubmVjdGVkUG9zaXRpb25zIH0gZnJvbSAnLi4vX3V0aWxzL21lbnUtY29ubmVjdGVkLXBvc2l0aW9ucy51dGlsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWRyb3Bkb3duLW1lbnUnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbRHJvcGRvd25CYXNlQ29tcG9uZW50LCBNZW51TGlzdENvbXBvbmVudF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9kcm9wZG93bi1tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2Ryb3Bkb3duLW1lbnUuY29tcG9uZW50LnNjc3MnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRHJvcGRvd25NZW51Q29tcG9uZW50PFQgPSBzdHJpbmc+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBob3N0ID0gaW5qZWN0KEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KTtcblxuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBpdGVtczogcmVhZG9ubHkgTWVudU5vZGVJdGVtPFQ+W10gPSBbXTtcblxuICBASW5wdXQoKSBwbGFjZW1lbnQ6IE1lbnVEcm9wZG93blBsYWNlbWVudCA9IE1lbnVEcm9wZG93blBsYWNlbWVudC5CZWxvdztcblxuICAvKiogTGFyZ3VyYSBtw61uaW1hIGRvIHBhaW5lbCBlbSBweCAobyBwYWluZWwgcG9kZSBhbGFyZ2FyIGFvIGNvbnRlw7pkbykuICovXG4gIEBJbnB1dCgpIG1pbldpZHRoUHggPSAyMDA7XG5cbiAgLyoqIFNlIGB0cnVlYCwgYSBsYXJndXJhIGRvIHBhaW5lbCBzZWd1ZSBhIGRvIHRyaWdnZXIuICovXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBtYXRjaFRyaWdnZXJXaWR0aCA9IHRydWU7XG5cbiAgQElucHV0KCkgbWVudUlkID0gJyc7XG5cbiAgQE91dHB1dCgpIHJlYWRvbmx5IGl0ZW1TZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPFQ+KCk7XG4gIEBPdXRwdXQoKSByZWFkb25seSBvcGVuQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIEBWaWV3Q2hpbGQoJ3BhbmVsVHBsJywgeyBzdGF0aWM6IHRydWUgfSkgcGFuZWxUcGwhOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcbiAgQFZpZXdDaGlsZChNZW51TGlzdENvbXBvbmVudCkgcHJpdmF0ZSBtZW51TGlzdD86IE1lbnVMaXN0Q29tcG9uZW50PFQ+O1xuXG4gIG9wZW4gPSBmYWxzZTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGdlbmVyYXRlZElkID0gYGFwcC1kZC0ke01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIsIDkpfWA7XG5cbiAgZ2V0IHJlc29sdmVkTWVudUlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMubWVudUlkLnRyaW0oKSB8fCB0aGlzLmdlbmVyYXRlZElkO1xuICB9XG5cbiAgLyoqIExhcmd1cmEgZG8gcGFpbmVsIG5vIG92ZXJsYXkgKG3DrW5pbW8gZ2FyYW50aWRvOyBwb2RlIGlndWFsYXIgYW8gdHJpZ2dlcikuICovXG4gIGdldCBlZmZlY3RpdmVQYW5lbFdpZHRoKCk6IG51bWJlciB7XG4gICAgaWYgKHRoaXMubWF0Y2hUcmlnZ2VyV2lkdGgpIHtcbiAgICAgIGNvbnN0IHcgPSB0aGlzLmhvc3QubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aDtcbiAgICAgIHJldHVybiBNYXRoLm1heCh0aGlzLm1pbldpZHRoUHgsIE1hdGguY2VpbCh3KSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLm1pbldpZHRoUHg7XG4gIH1cblxuICBnZXQgY29ubmVjdGVkUG9zaXRpb25zKCkge1xuICAgIHJldHVybiBtZW51Q29ubmVjdGVkUG9zaXRpb25zKHRoaXMucGxhY2VtZW50KTtcbiAgfVxuXG4gIG9uVHJpZ2dlckNsaWNrKGV2OiBFdmVudCk6IHZvaWQge1xuICAgIGV2LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy50b2dnbGUoKTtcbiAgfVxuXG4gIHRvZ2dsZSgpOiB2b2lkIHtcbiAgICB0aGlzLnNldE9wZW4oIXRoaXMub3Blbik7XG4gIH1cblxuICBzZXRPcGVuKG5leHQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5vcGVuID09PSBuZXh0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMub3BlbiA9IG5leHQ7XG4gICAgdGhpcy5vcGVuQ2hhbmdlLmVtaXQobmV4dCk7XG4gICAgaWYgKG5leHQpIHtcbiAgICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IHRoaXMubWVudUxpc3Q/LnJlc2V0SGlnaGxpZ2h0KCkpO1xuICAgIH1cbiAgfVxuXG4gIG9uQmFzZU9wZW5DaGFuZ2UobmV4dDogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmICh0aGlzLm9wZW4gPT09IG5leHQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5vcGVuID0gbmV4dDtcbiAgICB0aGlzLm9wZW5DaGFuZ2UuZW1pdChuZXh0KTtcbiAgICBpZiAobmV4dCkge1xuICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4gdGhpcy5tZW51TGlzdD8ucmVzZXRIaWdobGlnaHQoKSk7XG4gICAgfVxuICB9XG5cbiAgb25JdGVtU2VsZWN0KGlkOiBUKTogdm9pZCB7XG4gICAgdGhpcy5pdGVtU2VsZWN0LmVtaXQoaWQpO1xuICAgIHRoaXMuc2V0T3BlbihmYWxzZSk7XG4gIH1cblxuICBvbkNsb3NlUmVxdWVzdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldE9wZW4oZmFsc2UpO1xuICB9XG59XG4iLCI8YXBwLWRyb3Bkb3duLWJhc2VcclxuICBjbGFzcz1cImRyb3Bkb3duLW1lbnVcIlxyXG4gIFtvcGVuXT1cIm9wZW5cIlxyXG4gIChvcGVuQ2hhbmdlKT1cIm9uQmFzZU9wZW5DaGFuZ2UoJGV2ZW50KVwiXHJcbiAgW3BhbmVsVGVtcGxhdGVdPVwicGFuZWxUcGxcIlxyXG4gIFtwYW5lbFdpZHRoUHhdPVwiZWZmZWN0aXZlUGFuZWxXaWR0aFwiXHJcbiAgW2Nvbm5lY3RlZFBvc2l0aW9uc109XCJjb25uZWN0ZWRQb3NpdGlvbnNcIlxyXG4gIFtwdXNoQ29ubmVjdGVkT3ZlcmxheV09XCJ0cnVlXCJcclxuICBbaGFzQmFja2Ryb3BdPVwidHJ1ZVwiXHJcbiAgW2Nsb3NlT25Fc2NhcGVdPVwidHJ1ZVwiXHJcbiAgW2JhcmVPdmVybGF5UGFuZWxdPVwidHJ1ZVwiXHJcbj5cclxuICA8c3BhblxyXG4gICAgY2xhc3M9XCJkcm9wZG93bi1tZW51X190cmlnZ2VyLXNsb3RcIlxyXG4gICAgYXBwRHJvcGRvd25UcmlnZ2VyXHJcbiAgICAoY2xpY2spPVwib25UcmlnZ2VyQ2xpY2soJGV2ZW50KVwiXHJcbiAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cIm9wZW5cIlxyXG4gICAgYXJpYS1oYXNwb3B1cD1cIm1lbnVcIlxyXG4gID5cclxuICAgIDxuZy1jb250ZW50IC8+XHJcbiAgPC9zcGFuPlxyXG48L2FwcC1kcm9wZG93bi1iYXNlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNwYW5lbFRwbD5cclxuICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tbWVudV9fcGFuZWwtaW5uZXJcIj5cclxuICAgIDxhcHAtbWVudS1saXN0XHJcbiAgICAgIFtpdGVtc109XCJpdGVtc1wiXHJcbiAgICAgIFttZW51SWRdPVwicmVzb2x2ZWRNZW51SWRcIlxyXG4gICAgICAoaXRlbVNlbGVjdCk9XCJvbkl0ZW1TZWxlY3QoJGV2ZW50KVwiXHJcbiAgICAgIChjbG9zZVJlcXVlc3QpPVwib25DbG9zZVJlcXVlc3QoKVwiXHJcbiAgICAvPlxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export { DropdownMenuComponent, } from './dropdown-menu/dropdown-menu.component';
|
|
2
|
-
export { ContextMenuComponent, } from './context-menu/context-menu.component';
|
|
3
|
-
export { DrawerComponent } from './drawer/drawer.component';
|
|
4
|
-
export { MenuListComponent } from './menu-list/menu-list.component';
|
|
5
|
-
export { ActionMenuComponent } from './action-menu/action-menu.component';
|
|
6
|
-
export { MenuDividerComponent } from './menu-divider/menu-divider.component';
|
|
7
|
-
export { MenuGroupComponent } from './menu-group/menu-group.component';
|
|
8
|
-
export { MenuDropdownPlacement } from './_models/menu-dropdown-placement.model';
|
|
9
|
-
export { DrawerSize } from './_models/drawer-size.model';
|
|
10
|
-
export { DrawerSide } from './_models/drawer-side.model';
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21lbnVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxxQkFBcUIsR0FDdEIsTUFBTSx5Q0FBeUMsQ0FBQztBQUNqRCxPQUFPLEVBQ0wsb0JBQW9CLEdBQ3JCLE1BQU0sdUNBQXVDLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBV3ZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQge1xuICBEcm9wZG93bk1lbnVDb21wb25lbnQsXG59IGZyb20gJy4vZHJvcGRvd24tbWVudS9kcm9wZG93bi1tZW51LmNvbXBvbmVudCc7XG5leHBvcnQge1xuICBDb250ZXh0TWVudUNvbXBvbmVudCxcbn0gZnJvbSAnLi9jb250ZXh0LW1lbnUvY29udGV4dC1tZW51LmNvbXBvbmVudCc7XG5leHBvcnQgeyBEcmF3ZXJDb21wb25lbnQgfSBmcm9tICcuL2RyYXdlci9kcmF3ZXIuY29tcG9uZW50JztcbmV4cG9ydCB7IE1lbnVMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9tZW51LWxpc3QvbWVudS1saXN0LmNvbXBvbmVudCc7XG5leHBvcnQgeyBBY3Rpb25NZW51Q29tcG9uZW50IH0gZnJvbSAnLi9hY3Rpb24tbWVudS9hY3Rpb24tbWVudS5jb21wb25lbnQnO1xuZXhwb3J0IHsgTWVudURpdmlkZXJDb21wb25lbnQgfSBmcm9tICcuL21lbnUtZGl2aWRlci9tZW51LWRpdmlkZXIuY29tcG9uZW50JztcbmV4cG9ydCB7IE1lbnVHcm91cENvbXBvbmVudCB9IGZyb20gJy4vbWVudS1ncm91cC9tZW51LWdyb3VwLmNvbXBvbmVudCc7XG5cbmV4cG9ydCB0eXBlIHtcbiAgTWVudUl0ZW1LaW5kLFxuICBNZW51TGVhZkl0ZW0sXG4gIE1lbnVJdGVtQWN0aW9uLFxuICBNZW51SXRlbURpdmlkZXIsXG4gIE1lbnVJdGVtR3JvdXAsXG4gIE1lbnVJdGVtU3VibWVudSxcbiAgTWVudU5vZGVJdGVtLFxufSBmcm9tICcuL19tb2RlbHMvbWVudS1pdGVtLm1vZGVsJztcbmV4cG9ydCB7IE1lbnVEcm9wZG93blBsYWNlbWVudCB9IGZyb20gJy4vX21vZGVscy9tZW51LWRyb3Bkb3duLXBsYWNlbWVudC5tb2RlbCc7XG5leHBvcnQgeyBEcmF3ZXJTaXplIH0gZnJvbSAnLi9fbW9kZWxzL2RyYXdlci1zaXplLm1vZGVsJztcbmV4cG9ydCB7IERyYXdlclNpZGUgfSBmcm9tICcuL19tb2RlbHMvZHJhd2VyLXNpZGUubW9kZWwnO1xuIl19
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* Separador semântico reutilizável — mesma apresentação que o divisor do modelo de dados (`kind: 'divider'`).
|
|
5
|
-
*/
|
|
6
|
-
export class MenuDividerComponent {
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MenuDividerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MenuDividerComponent, isStandalone: true, selector: "app-menu-divider", ngImport: i0, template: `<div class="menu-list__separator" role="separator" aria-hidden="true"></div>`, isInline: true, styles: [":host{display:block}.menu-list__separator{height:1px;margin:.35rem .6rem;background:var(--app-color-border-subtle, rgba(26, 47, 69, .1));border:none;padding:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
9
|
-
}
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MenuDividerComponent, decorators: [{
|
|
11
|
-
type: Component,
|
|
12
|
-
args: [{ selector: 'app-menu-divider', standalone: true, template: `<div class="menu-list__separator" role="separator" aria-hidden="true"></div>`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block}.menu-list__separator{height:1px;margin:.35rem .6rem;background:var(--app-color-border-subtle, rgba(26, 47, 69, .1));border:none;padding:0}\n"] }]
|
|
13
|
-
}] });
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1kaXZpZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbWVudXMvbWVudS1kaXZpZGVyL21lbnUtZGl2aWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFbkU7O0dBRUc7QUFRSCxNQUFNLE9BQU8sb0JBQW9COytHQUFwQixvQkFBb0I7bUdBQXBCLG9CQUFvQiw0RUFKckIsOEVBQThFOzs0RkFJN0Usb0JBQW9CO2tCQVBoQyxTQUFTOytCQUNFLGtCQUFrQixjQUNoQixJQUFJLFlBQ04sOEVBQThFLG1CQUV2RSx1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuLyoqXHJcbiAqIFNlcGFyYWRvciBzZW3Dom50aWNvIHJldXRpbGl6w6F2ZWwg4oCUIG1lc21hIGFwcmVzZW50YcOnw6NvIHF1ZSBvIGRpdmlzb3IgZG8gbW9kZWxvIGRlIGRhZG9zIChga2luZDogJ2RpdmlkZXInYCkuXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1tZW51LWRpdmlkZXInLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgdGVtcGxhdGU6IGA8ZGl2IGNsYXNzPVwibWVudS1saXN0X19zZXBhcmF0b3JcIiByb2xlPVwic2VwYXJhdG9yXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9kaXY+YCxcclxuICBzdHlsZVVybDogJy4vbWVudS1kaXZpZGVyLmNvbXBvbmVudC5zY3NzJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1lbnVEaXZpZGVyQ29tcG9uZW50IHt9XHJcbiJdfQ==
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input, booleanAttribute, } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* Cabeçalho opcional de grupo — alinhado a `MenuItemGroup` (`kind: 'group'`).
|
|
5
|
-
* Os itens do grupo continuam a ser renderizados pelo `menu-list` (renderização única).
|
|
6
|
-
*/
|
|
7
|
-
export class MenuGroupComponent {
|
|
8
|
-
constructor() {
|
|
9
|
-
/** Quando `true`, não mostra o título (ex.: sidebar colapsada só com ícones). */
|
|
10
|
-
this.hideLabel = false;
|
|
11
|
-
}
|
|
12
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MenuGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
13
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: MenuGroupComponent, isStandalone: true, selector: "app-menu-group", inputs: { label: "label", hideLabel: ["hideLabel", "hideLabel", booleanAttribute] }, ngImport: i0, template: `
|
|
14
|
-
@if (label?.trim() && !hideLabel) {
|
|
15
|
-
<div class="menu-list__group-label" role="presentation">{{ label }}</div>
|
|
16
|
-
}
|
|
17
|
-
`, isInline: true, styles: [".menu-list__group-label{font-size:.74rem;font-weight:600;letter-spacing:.02em;text-transform:none;color:var(--app-color-text-secondary, #5a7fa3);padding:.65rem .75rem .4rem;margin-top:.15rem;border-top:1px solid var(--app-color-border-subtle, rgba(26, 47, 69, .08))}.menu-list__group-label:first-child{margin-top:0;padding-top:.4rem;border-top:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
18
|
-
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MenuGroupComponent, decorators: [{
|
|
20
|
-
type: Component,
|
|
21
|
-
args: [{ selector: 'app-menu-group', standalone: true, template: `
|
|
22
|
-
@if (label?.trim() && !hideLabel) {
|
|
23
|
-
<div class="menu-list__group-label" role="presentation">{{ label }}</div>
|
|
24
|
-
}
|
|
25
|
-
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".menu-list__group-label{font-size:.74rem;font-weight:600;letter-spacing:.02em;text-transform:none;color:var(--app-color-text-secondary, #5a7fa3);padding:.65rem .75rem .4rem;margin-top:.15rem;border-top:1px solid var(--app-color-border-subtle, rgba(26, 47, 69, .08))}.menu-list__group-label:first-child{margin-top:0;padding-top:.4rem;border-top:none}\n"] }]
|
|
26
|
-
}], propDecorators: { label: [{
|
|
27
|
-
type: Input
|
|
28
|
-
}], hideLabel: [{
|
|
29
|
-
type: Input,
|
|
30
|
-
args: [{ transform: booleanAttribute }]
|
|
31
|
-
}] } });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1ncm91cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21lbnVzL21lbnUtZ3JvdXAvbWVudS1ncm91cC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsS0FBSyxFQUNMLGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQzs7QUFFdkI7OztHQUdHO0FBWUgsTUFBTSxPQUFPLGtCQUFrQjtJQVgvQjtRQWNFLGlGQUFpRjtRQUN6QyxjQUFTLEdBQUcsS0FBSyxDQUFDO0tBQzNEOytHQUxZLGtCQUFrQjttR0FBbEIsa0JBQWtCLGtIQUlULGdCQUFnQiw2QkFaMUI7Ozs7R0FJVDs7NEZBSVUsa0JBQWtCO2tCQVg5QixTQUFTOytCQUNFLGdCQUFnQixjQUNkLElBQUksWUFDTjs7OztHQUlULG1CQUVnQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxLQUFLO3NCQUFiLEtBQUs7Z0JBR2tDLFNBQVM7c0JBQWhELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBJbnB1dCxcclxuICBib29sZWFuQXR0cmlidXRlLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuLyoqXHJcbiAqIENhYmXDp2FsaG8gb3BjaW9uYWwgZGUgZ3J1cG8g4oCUIGFsaW5oYWRvIGEgYE1lbnVJdGVtR3JvdXBgIChga2luZDogJ2dyb3VwJ2ApLlxyXG4gKiBPcyBpdGVucyBkbyBncnVwbyBjb250aW51YW0gYSBzZXIgcmVuZGVyaXphZG9zIHBlbG8gYG1lbnUtbGlzdGAgKHJlbmRlcml6YcOnw6NvIMO6bmljYSkuXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1tZW51LWdyb3VwJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICBAaWYgKGxhYmVsPy50cmltKCkgJiYgIWhpZGVMYWJlbCkge1xyXG4gICAgICA8ZGl2IGNsYXNzPVwibWVudS1saXN0X19ncm91cC1sYWJlbFwiIHJvbGU9XCJwcmVzZW50YXRpb25cIj57eyBsYWJlbCB9fTwvZGl2PlxyXG4gICAgfVxyXG4gIGAsXHJcbiAgc3R5bGVVcmw6ICcuL21lbnUtZ3JvdXAuY29tcG9uZW50LnNjc3MnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWVudUdyb3VwQ29tcG9uZW50IHtcclxuICBASW5wdXQoKSBsYWJlbD86IHN0cmluZztcclxuXHJcbiAgLyoqIFF1YW5kbyBgdHJ1ZWAsIG7Do28gbW9zdHJhIG8gdMOtdHVsbyAoZXguOiBzaWRlYmFyIGNvbGFwc2FkYSBzw7MgY29tIMOtY29uZXMpLiAqL1xyXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBoaWRlTGFiZWwgPSBmYWxzZTtcclxufVxyXG4iXX0=
|