novo-elements 13.2.0 → 13.4.0
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/addons/ckeditor/CKEditor.scss +8 -0
- package/elements/agenda/week/AgendaWeekView.scss +1 -1
- package/elements/breadcrumbs/Breadcrumb.scss +1 -1
- package/elements/button/styles/button-dialogue.scss +12 -0
- package/elements/button/styles/button-icon.scss +20 -0
- package/elements/button/styles/button-primary.scss +16 -1
- package/elements/button/styles/button-secondary.scss +14 -1
- package/elements/button/styles/button-standard.scss +14 -0
- package/elements/button/styles/button.scss +12 -1
- package/elements/card/Card.scss +80 -19
- package/elements/card/CardContent.scss +3 -0
- package/elements/card/CardHeader.scss +23 -0
- package/elements/card/index.d.ts +5 -3
- package/elements/category-dropdown/CategoryDropdown.scss +1 -1
- package/elements/checkbox/CheckList.scss +69 -0
- package/elements/checkbox/Checkbox.scss +104 -0
- package/elements/chips/Chip.scss +47 -1
- package/elements/chips/Chips.scss +9 -0
- package/elements/common/index.d.ts +14 -4
- package/elements/common/option/option.component.scss +11 -0
- package/elements/common/typography/text.mixins.scss +1 -1
- package/elements/data-table/data-table.component.scss +81 -3
- package/elements/data-table/pagination/data-table-pagination.component.scss +73 -0
- package/elements/date-picker/DatePicker.scss +1 -6
- package/elements/date-picker/DatePickerInput.scss +5 -0
- package/elements/date-time-picker/_DateTimePicker.scss +1 -1
- package/elements/dropdown/Dropdown.scss +17 -1
- package/elements/field/field.scss +10 -6
- package/elements/field/hint/hint.scss +6 -0
- package/elements/form/ControlGroup.scss +13 -0
- package/elements/form/Form.scss +260 -1
- package/elements/form/extras/address/Address.scss +77 -0
- package/elements/form/fieldset-header.scss +32 -0
- package/elements/form/index.d.ts +14 -4
- package/elements/header/Header.scss +45 -3
- package/elements/layout/index.d.ts +28 -4
- package/elements/list/list-item-content.scss +11 -10
- package/elements/menu/menu-content.component.scss +1 -0
- package/elements/modal/modal.component.scss +3 -13
- package/elements/modal/notification.component.scss +1 -6
- package/elements/picker/Picker.scss +26 -5
- package/elements/picker/extras/picker-results/PickerResults.scss +52 -0
- package/elements/progress/Progress.scss +8 -0
- package/elements/progress/ProgressBar.scss +4 -1
- package/elements/search/SearchBox.scss +53 -0
- package/elements/search/index.d.ts +19 -9
- package/elements/select/Select.scss +1 -1
- package/elements/simple-table/table.scss +1 -1
- package/elements/stepper/stepper.component.scss +4 -4
- package/elements/switch/Switch.scss +39 -3
- package/elements/tabbed-group-picker/TabbedGroupPicker.scss +47 -0
- package/elements/tabs/tab.scss +53 -14
- package/elements/tiles/Tiles.scss +24 -2
- package/elements/time-picker/TimePicker.scss +2 -2
- package/elements/time-picker/TimePickerInput.scss +7 -2
- package/elements/tip-well/TipWell.scss +34 -0
- package/elements/tip-well/index.d.ts +5 -1
- package/elements/toolbar/toolbar.component.scss +15 -0
- package/elements/tooltip/Tooltip.scss +19 -22
- package/elements/tooltip/index.d.ts +2 -1
- package/fesm2022/novo-elements-addons-ckeditor.mjs +2 -2
- package/fesm2022/novo-elements-addons-ckeditor.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-agenda.mjs +2 -2
- package/fesm2022/novo-elements-elements-breadcrumbs.mjs +3 -3
- package/fesm2022/novo-elements-elements-breadcrumbs.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-button.mjs +2 -2
- package/fesm2022/novo-elements-elements-button.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-card.mjs +27 -21
- package/fesm2022/novo-elements-elements-card.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-category-dropdown.mjs +2 -2
- package/fesm2022/novo-elements-elements-category-dropdown.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-checkbox.mjs +4 -4
- package/fesm2022/novo-elements-elements-checkbox.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-chips.mjs +6 -6
- package/fesm2022/novo-elements-elements-chips.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-common.mjs +52 -21
- package/fesm2022/novo-elements-elements-common.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-data-table.mjs +4 -4
- package/fesm2022/novo-elements-elements-data-table.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-date-picker.mjs +4 -4
- package/fesm2022/novo-elements-elements-date-picker.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-date-time-picker.mjs +2 -2
- package/fesm2022/novo-elements-elements-date-time-picker.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-dropdown.mjs +2 -2
- package/fesm2022/novo-elements-elements-dropdown.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-field.mjs +4 -4
- package/fesm2022/novo-elements-elements-field.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-form.mjs +135 -78
- package/fesm2022/novo-elements-elements-form.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-header.mjs +2 -2
- package/fesm2022/novo-elements-elements-header.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-layout.mjs +73 -14
- package/fesm2022/novo-elements-elements-layout.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-list.mjs +2 -2
- package/fesm2022/novo-elements-elements-list.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-menu.mjs +2 -2
- package/fesm2022/novo-elements-elements-menu.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-modal.mjs +4 -4
- package/fesm2022/novo-elements-elements-modal.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-multi-picker.mjs +2 -2
- package/fesm2022/novo-elements-elements-multi-picker.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-picker.mjs +6 -6
- package/fesm2022/novo-elements-elements-picker.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-progress.mjs +4 -4
- package/fesm2022/novo-elements-elements-progress.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-search.mjs +63 -17
- package/fesm2022/novo-elements-elements-search.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-select.mjs +2 -2
- package/fesm2022/novo-elements-elements-select.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-simple-table.mjs +4 -4
- package/fesm2022/novo-elements-elements-simple-table.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-stepper.mjs +6 -6
- package/fesm2022/novo-elements-elements-stepper.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-switch.mjs +2 -2
- package/fesm2022/novo-elements-elements-switch.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-tabbed-group-picker.mjs +2 -2
- package/fesm2022/novo-elements-elements-tabbed-group-picker.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-tabs.mjs +4 -4
- package/fesm2022/novo-elements-elements-tabs.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-tiles.mjs +2 -2
- package/fesm2022/novo-elements-elements-tiles.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-time-picker.mjs +4 -4
- package/fesm2022/novo-elements-elements-time-picker.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-tip-well.mjs +26 -6
- package/fesm2022/novo-elements-elements-tip-well.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-toolbar.mjs +2 -2
- package/fesm2022/novo-elements-elements-toolbar.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-tooltip.mjs +8 -4
- package/fesm2022/novo-elements-elements-tooltip.mjs.map +1 -1
- package/fesm2022/novo-elements-utils.mjs +4822 -364
- package/fesm2022/novo-elements-utils.mjs.map +1 -1
- package/package.json +1 -1
- package/styles/content/links.scss +4 -0
- package/styles/themes/bh2026.scss +131 -53
- package/styles/typography.scss +6 -0
- package/styles/variables.scss +2 -0
- package/utils/index.d.ts +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"novo-elements-elements-header.mjs","sources":["../../../projects/novo-elements/src/elements/header/Header.ts","../../../projects/novo-elements/src/elements/header/Header.module.ts","../../../projects/novo-elements/src/elements/header/novo-elements-elements-header.ts"],"sourcesContent":["import { Component, ElementRef, HostBinding, Input } from '@angular/core';\nimport { BooleanInput } from 'novo-elements/utils';\n\n@Component({\n selector: 'header-spacer',\n template: '<ng-content></ng-content>',\n styleUrls: ['./HeaderSpacer.scss'],\n standalone: false,\n})\nexport class NovoHeaderSpacer {}\n\n@Component({\n selector: 'utils',\n template: '<ng-content></ng-content>',\n standalone: false,\n})\nexport class NovoUtilsComponent {}\n\n@Component({\n selector: 'util-action, novo-action',\n template: `\n <novo-button theme=\"icon\" [icon]=\"icon\" [size]=\"size\" [attr.inverse]=\"inverse\" [disabled]=\"disabled\">\n <ng-content></ng-content>\n </novo-button>\n `,\n host: {\n class: 'novo-action',\n },\n standalone: false,\n})\nexport class NovoUtilActionComponent {\n @Input()\n public icon: string;\n @Input()\n public size: string;\n @Input()\n public inverse: boolean;\n @Input()\n public disabled: boolean;\n}\n\n@Component({\n selector: 'novo-header,header[theme],header[accent]',\n template: `\n <section>\n <div class=\"header-title\">\n <ng-content select=\"[prefix]\"></ng-content>\n <ng-container *ngIf=\"title\">\n <novo-icon class=\"header-icon\" *ngIf=\"icon\">{{ icon }}</novo-icon>\n <div class=\"header-titles\">\n <novo-title size=\"xl\">{{ title }}</novo-title>\n <novo-title size=\"md\" *ngIf=\"subTitle\">{{ subTitle }}</novo-title>\n </div>\n </ng-container>\n <ng-container *ngIf=\"!title\">\n <ng-content select=\"novo-icon, [novo-icon]\"></ng-content>\n <div class=\"header-titles\">\n <ng-content select=\"h1, h2, h3, h4, h5, h6, small, novo-title, [novo-title], [novo-subtitle]\"></ng-content>\n </div>\n </ng-container>\n </div>\n <ng-content select=\"section\"></ng-content>\n <span class=\"spacer\"></span>\n <div class=\"header-actions\">\n <ng-content select=\"novo-action,[novo-action]\"></ng-content>\n </div>\n <ng-content select=\"utils\"></ng-content>\n <ng-content select=\"[suffix]\"></ng-content>\n </section>\n <ng-content></ng-content>\n `,\n styleUrls: ['./Header.scss'],\n standalone: false,\n})\nexport class NovoHeaderComponent {\n @HostBinding('attr.role')\n public role = 'heading';\n @HostBinding('class')\n public headerClass: string = 'novo-header';\n @HostBinding('class.condensed')\n @Input()\n @BooleanInput()\n public condensed: boolean = false;\n @Input()\n public title: string;\n @Input()\n public subTitle: string;\n public inverse: string = 'inverse';\n\n @Input()\n public icon: string;\n\n @Input()\n public size: 'small' | 'medium' | 'large';\n\n @HostBinding('class.header-size-small')\n get hb_isSizeSmall(): boolean {\n return this.size === 'small';\n }\n\n @HostBinding('class.header-size-large')\n get hb_isSizeLarge(): boolean {\n return this.size === 'large';\n }\n\n @HostBinding('class.header-size-default')\n get hb_isSizeDefault(): boolean {\n return !['small', 'large'].includes(this.size);\n }\n\n @HostBinding('attr.theme')\n @Input()\n set theme(theme: string) {\n this._theme = theme;\n this.inverse = theme === 'white' || theme === 'off-white' || theme === 'light' ? undefined : 'inverse';\n }\n\n get theme(): string {\n return this._theme;\n }\n\n private _theme: string;\n\n constructor(public element: ElementRef) {}\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { NovoButtonModule } from 'novo-elements/elements/button';\nimport { NovoCommonModule } from 'novo-elements/elements/common';\nimport { NovoIconModule } from 'novo-elements/elements/icon';\nimport { NovoHeaderComponent, NovoHeaderSpacer, NovoUtilActionComponent, NovoUtilsComponent } from './Header';\n\n@NgModule({\n imports: [CommonModule, NovoCommonModule, NovoIconModule, NovoButtonModule],\n declarations: [NovoHeaderComponent, NovoUtilActionComponent, NovoUtilsComponent, NovoHeaderSpacer],\n exports: [NovoHeaderComponent, NovoUtilActionComponent, NovoUtilsComponent, NovoHeaderSpacer],\n})\nexport class NovoHeaderModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"novo-elements-elements-header.mjs","sources":["../../../projects/novo-elements/src/elements/header/Header.ts","../../../projects/novo-elements/src/elements/header/Header.module.ts","../../../projects/novo-elements/src/elements/header/novo-elements-elements-header.ts"],"sourcesContent":["import { Component, ElementRef, HostBinding, Input } from '@angular/core';\nimport { BooleanInput } from 'novo-elements/utils';\n\n@Component({\n selector: 'header-spacer',\n template: '<ng-content></ng-content>',\n styleUrls: ['./HeaderSpacer.scss'],\n standalone: false,\n})\nexport class NovoHeaderSpacer {}\n\n@Component({\n selector: 'utils',\n template: '<ng-content></ng-content>',\n standalone: false,\n})\nexport class NovoUtilsComponent {}\n\n@Component({\n selector: 'util-action, novo-action',\n template: `\n <novo-button theme=\"icon\" [icon]=\"icon\" [size]=\"size\" [attr.inverse]=\"inverse\" [disabled]=\"disabled\">\n <ng-content></ng-content>\n </novo-button>\n `,\n host: {\n class: 'novo-action',\n },\n standalone: false,\n})\nexport class NovoUtilActionComponent {\n @Input()\n public icon: string;\n @Input()\n public size: string;\n @Input()\n public inverse: boolean;\n @Input()\n public disabled: boolean;\n}\n\n@Component({\n selector: 'novo-header,header[theme],header[accent]',\n template: `\n <section>\n <div class=\"header-title\">\n <ng-content select=\"[prefix]\"></ng-content>\n <ng-container *ngIf=\"title\">\n <novo-icon class=\"header-icon\" *ngIf=\"icon\">{{ icon }}</novo-icon>\n <div class=\"header-titles\">\n <novo-title size=\"xl\">{{ title }}</novo-title>\n <novo-title size=\"md\" *ngIf=\"subTitle\">{{ subTitle }}</novo-title>\n </div>\n </ng-container>\n <ng-container *ngIf=\"!title\">\n <ng-content select=\"novo-icon, [novo-icon]\"></ng-content>\n <div class=\"header-titles\">\n <ng-content select=\"h1, h2, h3, h4, h5, h6, small, novo-title, [novo-title], [novo-subtitle]\"></ng-content>\n </div>\n </ng-container>\n </div>\n <ng-content select=\"section\"></ng-content>\n <span class=\"spacer\"></span>\n <div class=\"header-actions\">\n <ng-content select=\"novo-action,[novo-action]\"></ng-content>\n </div>\n <ng-content select=\"utils\"></ng-content>\n <ng-content select=\"[suffix]\"></ng-content>\n </section>\n <ng-content></ng-content>\n `,\n styleUrls: ['./Header.scss'],\n standalone: false,\n})\nexport class NovoHeaderComponent {\n @HostBinding('attr.role')\n public role = 'heading';\n @HostBinding('class')\n public headerClass: string = 'novo-header';\n @HostBinding('class.condensed')\n @Input()\n @BooleanInput()\n public condensed: boolean = false;\n @Input()\n public title: string;\n @Input()\n public subTitle: string;\n public inverse: string = 'inverse';\n\n @Input()\n public icon: string;\n\n @Input()\n public size: 'small' | 'medium' | 'large';\n\n @HostBinding('class.header-size-small')\n get hb_isSizeSmall(): boolean {\n return this.size === 'small';\n }\n\n @HostBinding('class.header-size-large')\n get hb_isSizeLarge(): boolean {\n return this.size === 'large';\n }\n\n @HostBinding('class.header-size-default')\n get hb_isSizeDefault(): boolean {\n return !['small', 'large'].includes(this.size);\n }\n\n @HostBinding('attr.theme')\n @Input()\n set theme(theme: string) {\n this._theme = theme;\n this.inverse = theme === 'white' || theme === 'off-white' || theme === 'light' ? undefined : 'inverse';\n }\n\n get theme(): string {\n return this._theme;\n }\n\n private _theme: string;\n\n constructor(public element: ElementRef) {}\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { NovoButtonModule } from 'novo-elements/elements/button';\nimport { NovoCommonModule } from 'novo-elements/elements/common';\nimport { NovoIconModule } from 'novo-elements/elements/icon';\nimport { NovoHeaderComponent, NovoHeaderSpacer, NovoUtilActionComponent, NovoUtilsComponent } from './Header';\n\n@NgModule({\n imports: [CommonModule, NovoCommonModule, NovoIconModule, NovoButtonModule],\n declarations: [NovoHeaderComponent, NovoUtilActionComponent, NovoUtilsComponent, NovoHeaderSpacer],\n exports: [NovoHeaderComponent, NovoUtilActionComponent, NovoUtilsComponent, NovoHeaderSpacer],\n})\nexport class NovoHeaderModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,22 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { model, input, signal, computed, effect, HostBinding, HostListener, ViewEncapsulation, ChangeDetectionStrategy, Component, InjectionToken, Inject, EventEmitter, DOCUMENT, Output, Input, Optional, QueryList, ViewChild, ContentChild, ContentChildren, NgModule } from '@angular/core';
|
|
2
|
+
import { model, input, output, inject, ElementRef, DestroyRef, signal, computed, effect, HostBinding, HostListener, ViewEncapsulation, ChangeDetectionStrategy, Component, InjectionToken, Inject, EventEmitter, DOCUMENT, Output, Input, Optional, QueryList, ViewChild, ContentChild, ContentChildren, NgModule } from '@angular/core';
|
|
3
|
+
import { toSignal, takeUntilDestroyed, toObservable } from '@angular/core/rxjs-interop';
|
|
4
|
+
import { fromEvent, filter, partition, switchMap, race, of, delay, map, merge, Subject } from 'rxjs';
|
|
3
5
|
import { trigger, state, style, transition, animate } from '@angular/animations';
|
|
4
6
|
import * as i1$2 from '@angular/cdk/bidi';
|
|
5
7
|
import { coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion';
|
|
6
8
|
import * as i1 from '@angular/cdk/overlay';
|
|
7
9
|
import { CdkScrollable } from '@angular/cdk/overlay';
|
|
8
10
|
import { ANIMATION_MODULE_TYPE } from '@angular/platform-browser/animations';
|
|
9
|
-
import {
|
|
10
|
-
import { filter, map, mapTo, takeUntil, distinctUntilChanged, take, startWith, debounceTime } from 'rxjs/operators';
|
|
11
|
-
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
11
|
+
import { filter as filter$1, map as map$1, mapTo, takeUntil, distinctUntilChanged, take, startWith, debounceTime } from 'rxjs/operators';
|
|
12
12
|
import * as i1$1 from '@angular/cdk/a11y';
|
|
13
13
|
import { hasModifierKey } from '@angular/cdk/keycodes';
|
|
14
14
|
import * as i2 from '@angular/cdk/platform';
|
|
15
15
|
import * as i3 from '@angular/common';
|
|
16
16
|
import { CommonModule } from '@angular/common';
|
|
17
17
|
|
|
18
|
+
// WARNING: Angular plans to remove the animations library in v23. When upgrading there, use CSS transition effects
|
|
19
|
+
// to apply similar curves, and change event triggers to fire off of transitionstart/transitionend events.
|
|
18
20
|
/**
|
|
19
21
|
* Animation that grows/shrinks the panel width between its expanded and collapsed (icon-rail) sizes.
|
|
20
22
|
* Width is animated rather than transform because the panel shrinks in place rather than sliding away.
|
|
@@ -27,6 +29,20 @@ const novoCollapsibleNavAnimations = {
|
|
|
27
29
|
]),
|
|
28
30
|
};
|
|
29
31
|
|
|
32
|
+
// Event fired when a user event (click, space) is about to expand navigation early
|
|
33
|
+
class CollapsibleNavExpansionEvent extends Event {
|
|
34
|
+
get expandPrevented() {
|
|
35
|
+
return this._expandPrevented;
|
|
36
|
+
}
|
|
37
|
+
constructor(srcEvent) {
|
|
38
|
+
super('expansionClick');
|
|
39
|
+
this.srcEvent = srcEvent;
|
|
40
|
+
this._expandPrevented = false;
|
|
41
|
+
}
|
|
42
|
+
preventExpand() {
|
|
43
|
+
this._expandPrevented = true;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
30
46
|
/**
|
|
31
47
|
* A slide-out navigation panel that expands to a full-width panel or collapses to a narrow icon rail.
|
|
32
48
|
* Generic building block: consumers project their own header, body, and footer content.
|
|
@@ -39,15 +55,30 @@ class NovoCollapsibleNavComponent {
|
|
|
39
55
|
this.expandedWidth = input('18rem', ...(ngDevMode ? [{ debugName: "expandedWidth" }] : []));
|
|
40
56
|
/** Width of the panel when collapsed to the icon rail. */
|
|
41
57
|
this.collapsedWidth = input('4rem', ...(ngDevMode ? [{ debugName: "collapsedWidth" }] : []));
|
|
58
|
+
/** Time in ms to delay between the user entering the nav region, and expanding it */
|
|
59
|
+
this.expandDelay = model(0, ...(ngDevMode ? [{ debugName: "expandDelay" }] : []));
|
|
42
60
|
/** When true, hovering a collapsed panel temporarily expands it as an overlay without affecting layout. */
|
|
43
61
|
this.overlayOnHover = input(false, ...(ngDevMode ? [{ debugName: "overlayOnHover" }] : []));
|
|
62
|
+
this.hoveredChange = output();
|
|
63
|
+
this.transitionChange = output();
|
|
64
|
+
this.manualExpand = output();
|
|
65
|
+
this.element = inject(ElementRef);
|
|
66
|
+
this.destroyRef = inject(DestroyRef);
|
|
44
67
|
this.isHovered = signal(false, ...(ngDevMode ? [{ debugName: "isHovered" }] : []));
|
|
45
|
-
this.
|
|
68
|
+
this.isHoveredDebounced$ = this.debounceHover(this.isHovered);
|
|
69
|
+
this.isEffectiveHovered = toSignal(this.isHoveredDebounced$);
|
|
70
|
+
this.effectiveCollapsed = computed(() => this.collapsed() && !(this.overlayOnHover() && this.isEffectiveHovered()), ...(ngDevMode ? [{ debugName: "effectiveCollapsed" }] : []));
|
|
71
|
+
this.clicked$ = fromEvent(this.element.nativeElement, 'click');
|
|
72
|
+
this.activationKeyPressed$ = fromEvent(this.element.nativeElement, 'keydown').pipe(filter(kevt => kevt.key === ' ' || kevt.key === 'Enter'));
|
|
46
73
|
effect(() => {
|
|
47
74
|
if (this.collapsed()) {
|
|
48
75
|
this.isHovered.set(false);
|
|
49
76
|
}
|
|
50
77
|
});
|
|
78
|
+
this.isHoveredDebounced$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(hovered => {
|
|
79
|
+
this.hoveredChange.emit(hovered);
|
|
80
|
+
});
|
|
81
|
+
this.manualExpandUnprevented$ = this.setupExpandFromActivation();
|
|
51
82
|
}
|
|
52
83
|
onMouseEnter() {
|
|
53
84
|
this.isHovered.set(true);
|
|
@@ -61,6 +92,28 @@ class NovoCollapsibleNavComponent {
|
|
|
61
92
|
params: { expandedWidth: this.expandedWidth(), collapsedWidth: this.collapsedWidth() },
|
|
62
93
|
};
|
|
63
94
|
}
|
|
95
|
+
transitionStart(event) {
|
|
96
|
+
this.transitionChange.emit(event.toState === 'expanded' ? 'expanding' : 'collapsing');
|
|
97
|
+
}
|
|
98
|
+
transitionEnd(event) {
|
|
99
|
+
this.transitionChange.emit(event.toState === 'expanded' ? 'expanded' : 'collapsed');
|
|
100
|
+
}
|
|
101
|
+
debounceHover(hoverSignal) {
|
|
102
|
+
const hoverObs = toObservable(hoverSignal);
|
|
103
|
+
const [enters, exits] = partition(hoverObs, hovered => hovered);
|
|
104
|
+
const waitedEnters = enters.pipe(switchMap(enter => race(of(enter).pipe(delay(this.expandDelay())), exits, this.manualExpandUnprevented$)), filter(result => Boolean(result)), map(() => this.element.nativeElement.matches(':hover')));
|
|
105
|
+
return merge(waitedEnters, exits);
|
|
106
|
+
}
|
|
107
|
+
setupExpandFromActivation() {
|
|
108
|
+
const userEvents = merge(this.clicked$, this.activationKeyPressed$);
|
|
109
|
+
// Emit anytime that the user clicks, or presses space/enter inside the nav,
|
|
110
|
+
// AND the ensuing event is not prevented when emitted to parent components.
|
|
111
|
+
return userEvents.pipe(takeUntilDestroyed(this.destroyRef), map(event => {
|
|
112
|
+
const expandEvent = new CollapsibleNavExpansionEvent(event);
|
|
113
|
+
this.manualExpand.emit(expandEvent);
|
|
114
|
+
return expandEvent;
|
|
115
|
+
}), filter(expandEvent => !expandEvent.expandPrevented));
|
|
116
|
+
}
|
|
64
117
|
get isCollapsed() {
|
|
65
118
|
return this.effectiveCollapsed();
|
|
66
119
|
}
|
|
@@ -75,14 +128,14 @@ class NovoCollapsibleNavComponent {
|
|
|
75
128
|
this.isHovered.set(false);
|
|
76
129
|
}
|
|
77
130
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: NovoCollapsibleNavComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
78
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.19", type: NovoCollapsibleNavComponent, isStandalone: false, selector: "novo-collapsible-nav", inputs: { collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: true, isRequired: false, transformFunction: null }, expandedWidth: { classPropertyName: "expandedWidth", publicName: "expandedWidth", isSignal: true, isRequired: false, transformFunction: null }, collapsedWidth: { classPropertyName: "collapsedWidth", publicName: "collapsedWidth", isSignal: true, isRequired: false, transformFunction: null }, overlayOnHover: { classPropertyName: "overlayOnHover", publicName: "overlayOnHover", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { collapsed: "collapsedChange" }, host: { listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()" }, properties: { "@expandCollapse": "this.expandCollapseState", "class.novo-collapsible-nav-collapsed": "this.isCollapsed" }, classAttribute: "novo-collapsible-nav" }, exportAs: ["novoCollapsibleNav"], ngImport: i0, template: "<div class=\"novo-collapsible-nav-header\">\n <ng-content select=\"[novo-collapsible-nav-header]\"></ng-content>\n</div>\n<div class=\"novo-collapsible-nav-body\">\n <ng-content select=\"[novo-collapsible-nav-body]\"></ng-content>\n</div>\n<div class=\"novo-collapsible-nav-footer\">\n <ng-content select=\"[novo-collapsible-nav-footer]\"></ng-content>\n</div>\n", styles: [".novo-collapsible-nav{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--background-bright)}.novo-collapsible-nav .novo-collapsible-nav-header{flex:0 0 auto}.novo-collapsible-nav .novo-collapsible-nav-body{flex:1 1 auto;overflow:hidden auto}.novo-collapsible-nav .novo-collapsible-nav-footer{flex:0 0 auto}\n"], animations: [novoCollapsibleNavAnimations.expandCollapse], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
131
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.19", type: NovoCollapsibleNavComponent, isStandalone: false, selector: "novo-collapsible-nav", inputs: { collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: true, isRequired: false, transformFunction: null }, expandedWidth: { classPropertyName: "expandedWidth", publicName: "expandedWidth", isSignal: true, isRequired: false, transformFunction: null }, collapsedWidth: { classPropertyName: "collapsedWidth", publicName: "collapsedWidth", isSignal: true, isRequired: false, transformFunction: null }, expandDelay: { classPropertyName: "expandDelay", publicName: "expandDelay", isSignal: true, isRequired: false, transformFunction: null }, overlayOnHover: { classPropertyName: "overlayOnHover", publicName: "overlayOnHover", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { collapsed: "collapsedChange", expandDelay: "expandDelayChange", hoveredChange: "hoveredChange", transitionChange: "transitionChange", manualExpand: "manualExpand" }, host: { listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()", "@expandCollapse.start": "transitionStart($event)", "@expandCollapse.done": "transitionEnd($event)" }, properties: { "@expandCollapse": "this.expandCollapseState", "class.novo-collapsible-nav-collapsed": "this.isCollapsed" }, classAttribute: "novo-collapsible-nav" }, exportAs: ["novoCollapsibleNav"], ngImport: i0, template: "<div class=\"novo-collapsible-nav-header\">\n <ng-content select=\"[novo-collapsible-nav-header]\"></ng-content>\n</div>\n<div class=\"novo-collapsible-nav-body\">\n <ng-content select=\"[novo-collapsible-nav-body]\"></ng-content>\n</div>\n<div class=\"novo-collapsible-nav-footer\">\n <ng-content select=\"[novo-collapsible-nav-footer]\"></ng-content>\n</div>\n", styles: [".novo-collapsible-nav{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--background-bright)}.novo-collapsible-nav .novo-collapsible-nav-header{flex:0 0 auto}.novo-collapsible-nav .novo-collapsible-nav-body{flex:1 1 auto;overflow:hidden auto}.novo-collapsible-nav .novo-collapsible-nav-footer{flex:0 0 auto}\n"], animations: [novoCollapsibleNavAnimations.expandCollapse], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
79
132
|
}
|
|
80
133
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: NovoCollapsibleNavComponent, decorators: [{
|
|
81
134
|
type: Component,
|
|
82
135
|
args: [{ selector: 'novo-collapsible-nav', exportAs: 'novoCollapsibleNav', animations: [novoCollapsibleNavAnimations.expandCollapse], host: {
|
|
83
136
|
class: 'novo-collapsible-nav',
|
|
84
137
|
}, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: false, template: "<div class=\"novo-collapsible-nav-header\">\n <ng-content select=\"[novo-collapsible-nav-header]\"></ng-content>\n</div>\n<div class=\"novo-collapsible-nav-body\">\n <ng-content select=\"[novo-collapsible-nav-body]\"></ng-content>\n</div>\n<div class=\"novo-collapsible-nav-footer\">\n <ng-content select=\"[novo-collapsible-nav-footer]\"></ng-content>\n</div>\n", styles: [".novo-collapsible-nav{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--background-bright)}.novo-collapsible-nav .novo-collapsible-nav-header{flex:0 0 auto}.novo-collapsible-nav .novo-collapsible-nav-body{flex:1 1 auto;overflow:hidden auto}.novo-collapsible-nav .novo-collapsible-nav-footer{flex:0 0 auto}\n"] }]
|
|
85
|
-
}], ctorParameters: () => [], propDecorators: { collapsed: [{ type: i0.Input, args: [{ isSignal: true, alias: "collapsed", required: false }] }, { type: i0.Output, args: ["collapsedChange"] }], expandedWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "expandedWidth", required: false }] }], collapsedWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "collapsedWidth", required: false }] }], overlayOnHover: [{ type: i0.Input, args: [{ isSignal: true, alias: "overlayOnHover", required: false }] }], onMouseEnter: [{
|
|
138
|
+
}], ctorParameters: () => [], propDecorators: { collapsed: [{ type: i0.Input, args: [{ isSignal: true, alias: "collapsed", required: false }] }, { type: i0.Output, args: ["collapsedChange"] }], expandedWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "expandedWidth", required: false }] }], collapsedWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "collapsedWidth", required: false }] }], expandDelay: [{ type: i0.Input, args: [{ isSignal: true, alias: "expandDelay", required: false }] }, { type: i0.Output, args: ["expandDelayChange"] }], overlayOnHover: [{ type: i0.Input, args: [{ isSignal: true, alias: "overlayOnHover", required: false }] }], hoveredChange: [{ type: i0.Output, args: ["hoveredChange"] }], transitionChange: [{ type: i0.Output, args: ["transitionChange"] }], manualExpand: [{ type: i0.Output, args: ["manualExpand"] }], onMouseEnter: [{
|
|
86
139
|
type: HostListener,
|
|
87
140
|
args: ['mouseenter']
|
|
88
141
|
}], onMouseLeave: [{
|
|
@@ -91,6 +144,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
91
144
|
}], expandCollapseState: [{
|
|
92
145
|
type: HostBinding,
|
|
93
146
|
args: ['@expandCollapse']
|
|
147
|
+
}], transitionStart: [{
|
|
148
|
+
type: HostListener,
|
|
149
|
+
args: ['@expandCollapse.start', ['$event']]
|
|
150
|
+
}], transitionEnd: [{
|
|
151
|
+
type: HostListener,
|
|
152
|
+
args: ['@expandCollapse.done', ['$event']]
|
|
94
153
|
}], isCollapsed: [{
|
|
95
154
|
type: HostBinding,
|
|
96
155
|
args: ['class.novo-collapsible-nav-collapsed']
|
|
@@ -322,13 +381,13 @@ class NovoSidenavComponent {
|
|
|
322
381
|
// Note this has to be async in order to avoid some issues with two-bindings (see #8872).
|
|
323
382
|
new EventEmitter(/* isAsync */ true);
|
|
324
383
|
/** Event emitted when the drawer has been opened. */
|
|
325
|
-
this._openedStream = this.openedChange.pipe(filter((o) => o), map(() => { }));
|
|
384
|
+
this._openedStream = this.openedChange.pipe(filter$1((o) => o), map$1(() => { }));
|
|
326
385
|
/** Event emitted when the drawer has started opening. */
|
|
327
|
-
this.openedStart = this._animationStarted.pipe(filter((e) => e.fromState !== e.toState && e.toState.indexOf('open') === 0), mapTo(undefined));
|
|
386
|
+
this.openedStart = this._animationStarted.pipe(filter$1((e) => e.fromState !== e.toState && e.toState.indexOf('open') === 0), mapTo(undefined));
|
|
328
387
|
/** Event emitted when the drawer has been closed. */
|
|
329
|
-
this._closedStream = this.openedChange.pipe(filter((o) => !o), map(() => { }));
|
|
388
|
+
this._closedStream = this.openedChange.pipe(filter$1((o) => !o), map$1(() => { }));
|
|
330
389
|
/** Event emitted when the drawer has started closing. */
|
|
331
|
-
this.closedStart = this._animationStarted.pipe(filter((e) => e.fromState !== e.toState && e.toState === 'void'), mapTo(undefined));
|
|
390
|
+
this.closedStart = this._animationStarted.pipe(filter$1((e) => e.fromState !== e.toState && e.toState === 'void'), mapTo(undefined));
|
|
332
391
|
/** Emits when the component is destroyed. */
|
|
333
392
|
this._destroyed = new Subject();
|
|
334
393
|
/** Event emitted when the drawer's position changes. */
|
|
@@ -356,7 +415,7 @@ class NovoSidenavComponent {
|
|
|
356
415
|
*/
|
|
357
416
|
this._ngZone.runOutsideAngular(() => {
|
|
358
417
|
fromEvent(this._elementRef.nativeElement, 'keydown')
|
|
359
|
-
.pipe(filter((event) => {
|
|
418
|
+
.pipe(filter$1((event) => {
|
|
360
419
|
return event.key === "Escape" /* Key.Escape */ && !this.disableClose && !hasModifierKey(event);
|
|
361
420
|
}), takeUntil(this._destroyed))
|
|
362
421
|
.subscribe((event) => this._ngZone.run(() => {
|
|
@@ -767,7 +826,7 @@ class NovoLayoutContainer {
|
|
|
767
826
|
*/
|
|
768
827
|
_watchDrawerToggle(drawer) {
|
|
769
828
|
drawer._animationStarted
|
|
770
|
-
.pipe(filter((event) => event.fromState !== event.toState), takeUntil(this._drawers.changes))
|
|
829
|
+
.pipe(filter$1((event) => event.fromState !== event.toState), takeUntil(this._drawers.changes))
|
|
771
830
|
.subscribe((event) => {
|
|
772
831
|
// Set the transition class on the container so that the animations occur. This should not
|
|
773
832
|
// be set initially because animations should only be triggered via a change in state.
|
|
@@ -942,5 +1001,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
942
1001
|
* Generated bundle index. Do not edit.
|
|
943
1002
|
*/
|
|
944
1003
|
|
|
945
|
-
export { NOVO_LAYOUT_CONTAINER, NOVO_LAYOUT_DEFAULT_AUTOSIZE, NOVO_LAYOUT_DEFAULT_AUTOSIZE_FACTORY, NovoCollapsibleNavComponent, NovoLayoutContainer, NovoLayoutContent, NovoLayoutModule, NovoRailComponent, NovoSidenavComponent, throwNovoDuplicatedSidenavError };
|
|
1004
|
+
export { CollapsibleNavExpansionEvent, NOVO_LAYOUT_CONTAINER, NOVO_LAYOUT_DEFAULT_AUTOSIZE, NOVO_LAYOUT_DEFAULT_AUTOSIZE_FACTORY, NovoCollapsibleNavComponent, NovoLayoutContainer, NovoLayoutContent, NovoLayoutModule, NovoRailComponent, NovoSidenavComponent, throwNovoDuplicatedSidenavError };
|
|
946
1005
|
//# sourceMappingURL=novo-elements-elements-layout.mjs.map
|