@ndwnu/design-system 12.0.0 → 12.1.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/assets/images/logos/ndw-logo-short.svg +3 -3
- package/assets/images/logos/ndw-logo.svg +3 -3
- package/assets/images/logos/nwb-logo-short.svg +10 -10
- package/assets/images/logos/nwb-logo.svg +4 -4
- package/assets/images/map-button-icons.svg +91 -91
- package/fesm2022/ndwnu-design-system.mjs +792 -378
- package/fesm2022/ndwnu-design-system.mjs.map +1 -1
- package/index.d.ts +122 -75
- package/package.json +2 -2
- package/styles/base/_material.scss +17 -0
- package/styles/base/index.scss +1 -0
- package/styles/components/_datepicker.scss +68 -21
- package/styles/components/_input.scss +2 -1
- package/styles/layout/_grid.scss +64 -0
- package/styles/layout/grid.stories.ts +69 -40
package/index.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { CoreAutosuggestPanelComponent, CoreAutosuggestDirective, CoreAutosuggestOptionComponent, Image, CoreAutosuggestAddOptionComponent, CoreCheckboxComponent, CoreCheckboxGroupComponent, InputType, CheckableComponent, PillColor, CoreBreadcrumbComponent, CoreBreadcrumbGroupComponent, CoreIconComponent, CoreKeyValueListComponent, CorePillComponent, CoreRouterBreadcrumbsComponent } from '@ndwnu/core';
|
|
1
|
+
import { CoreAutosuggestPanelComponent, CoreAutosuggestDirective, CoreAutosuggestOptionComponent, Image, CoreAutosuggestAddOptionComponent, CoreCheckboxComponent, CoreCheckboxGroupComponent, InputType, CheckableComponent, PillColor, CoreBadgeComponent, CoreBreadcrumbComponent, CoreBreadcrumbGroupComponent, CoreIconComponent, CoreKeyValueListComponent, CorePillComponent, CoreRouterBreadcrumbsComponent } from '@ndwnu/core';
|
|
2
2
|
export { AutosuggestOption, AutosuggestOptions, AutosuggestSearchFn, IconSize, KeyValueRow } from '@ndwnu/core';
|
|
3
3
|
import * as _angular_core from '@angular/core';
|
|
4
|
-
import {
|
|
4
|
+
import { OnDestroy, Signal, ElementRef, EventEmitter, TemplateRef, OnInit, AfterContentInit, AfterViewInit, InjectionToken, OnChanges } from '@angular/core';
|
|
5
5
|
import { ControlValueAccessor, AbstractControl, NgControl } from '@angular/forms';
|
|
6
6
|
import { Subject, Observable } from 'rxjs';
|
|
7
|
-
import
|
|
7
|
+
import * as _angular_material_datepicker from '@angular/material/datepicker';
|
|
8
|
+
import { DateFilterFn, MatCalendar } from '@angular/material/datepicker';
|
|
8
9
|
import { Params } from '@angular/router';
|
|
9
10
|
import * as _ndwnu_design_system from '@ndwnu/design-system';
|
|
10
11
|
import { Point } from '@angular/cdk/drag-drop';
|
|
@@ -65,10 +66,113 @@ declare class CheckboxGroupComponent extends CoreCheckboxGroupComponent {
|
|
|
65
66
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CheckboxGroupComponent, "ndw-checkbox-group", never, {}, {}, never, ["*"], true, never>;
|
|
66
67
|
}
|
|
67
68
|
|
|
68
|
-
|
|
69
|
-
|
|
69
|
+
type DatepickerMode = 'single' | 'range' | 'multiple' | 'month';
|
|
70
|
+
|
|
71
|
+
declare class CalendarComponent implements ControlValueAccessor, OnDestroy {
|
|
72
|
+
#private;
|
|
73
|
+
readonly mode: _angular_core.InputSignal<DatepickerMode>;
|
|
74
|
+
readonly disabled: _angular_core.ModelSignal<boolean>;
|
|
75
|
+
readonly minDate: _angular_core.InputSignal<Date | null>;
|
|
76
|
+
readonly maxDate: _angular_core.InputSignal<Date | null>;
|
|
77
|
+
readonly startAt: _angular_core.InputSignal<Date | null>;
|
|
78
|
+
readonly dateEnabledFilter: _angular_core.InputSignal<DateFilterFn<Date | null>>;
|
|
79
|
+
readonly dateWithIndicatorFilter: _angular_core.InputSignal<DateFilterFn<Date | null>>;
|
|
80
|
+
readonly elevated: _angular_core.InputSignal<boolean>;
|
|
81
|
+
protected internalDateEnabledFilter: Signal<(date: Date | null) => boolean>;
|
|
82
|
+
protected readonly calendar: Signal<MatCalendar<any> | undefined>;
|
|
83
|
+
protected readonly calendarElement: Signal<ElementRef<HTMLElement> | undefined>;
|
|
84
|
+
protected readonly value: _angular_core.WritableSignal<Date[]>;
|
|
85
|
+
protected readonly startView: Signal<"month" | "year">;
|
|
86
|
+
protected readonly dateClass: Signal<_angular_material_datepicker.MatCalendarCellClassFunction<Date>>;
|
|
87
|
+
constructor();
|
|
88
|
+
ngOnDestroy(): void;
|
|
89
|
+
private addMouseMoveListener;
|
|
90
|
+
private removeMouseMoveListener;
|
|
91
|
+
private addRangePreviewClasses;
|
|
92
|
+
private removeRangePreviewClasses;
|
|
93
|
+
protected onDateSelected(date: Date | Date[] | null, toggle?: boolean): void;
|
|
94
|
+
protected onMonthSelected(date: Date): void;
|
|
95
|
+
writeValue(value: Date | Date[] | null): void;
|
|
96
|
+
registerOnChange(fn: (value: Date | Date[] | null) => void): void;
|
|
97
|
+
registerOnTouched(_fn: () => void): void;
|
|
98
|
+
setDisabledState?(isDisabled: boolean): void;
|
|
99
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<CalendarComponent, never>;
|
|
100
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CalendarComponent, "ndw-calendar", never, { "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "minDate": { "alias": "minDate"; "required": false; "isSignal": true; }; "maxDate": { "alias": "maxDate"; "required": false; "isSignal": true; }; "startAt": { "alias": "startAt"; "required": false; "isSignal": true; }; "dateEnabledFilter": { "alias": "dateEnabledFilter"; "required": false; "isSignal": true; }; "dateWithIndicatorFilter": { "alias": "dateWithIndicatorFilter"; "required": false; "isSignal": true; }; "elevated": { "alias": "elevated"; "required": false; "isSignal": true; }; }, { "disabled": "disabledChange"; }, never, never, true, never>;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
type PopoverPosition = 'nextToTriggerButton' | 'overTriggerButton';
|
|
104
|
+
declare class PopoverTriggerDirective implements OnDestroy {
|
|
105
|
+
popoverToggled: EventEmitter<boolean>;
|
|
106
|
+
popoverPosition: _angular_core.InputSignal<PopoverPosition>;
|
|
107
|
+
popoverContent: _angular_core.InputSignal<TemplateRef<unknown>>;
|
|
108
|
+
toggleOnClick: _angular_core.InputSignal<boolean>;
|
|
109
|
+
isOpen: _angular_core.ModelSignal<boolean>;
|
|
110
|
+
toggle(): void;
|
|
111
|
+
private destroyRef;
|
|
112
|
+
private elementRef;
|
|
113
|
+
private overlay;
|
|
114
|
+
private viewContainerRef;
|
|
115
|
+
private focusTrapFactory;
|
|
116
|
+
private overlayRef?;
|
|
117
|
+
ngOnDestroy(): void;
|
|
118
|
+
togglePopover(): void;
|
|
119
|
+
private open;
|
|
120
|
+
private trapFocus;
|
|
121
|
+
private closeOverlayOnEscapeKey;
|
|
122
|
+
private nodeOrParentsHaveAttribute;
|
|
123
|
+
private closeOverlayOnBackdropClick;
|
|
124
|
+
private close;
|
|
125
|
+
private getPopoverPosition;
|
|
126
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PopoverTriggerDirective, never>;
|
|
127
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<PopoverTriggerDirective, "[ndwPopoverTrigger]", ["ndwPopoverTrigger"], { "popoverPosition": { "alias": "popoverPosition"; "required": false; "isSignal": true; }; "popoverContent": { "alias": "ndwPopoverTrigger"; "required": true; "isSignal": true; }; "toggleOnClick": { "alias": "toggleOnClick"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; }, { "popoverToggled": "popoverToggled"; "isOpen": "isOpenChange"; }, never, never, true, never>;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
declare class InputDirective implements OnInit {
|
|
131
|
+
set disabled(disabled: boolean);
|
|
132
|
+
get error(): boolean;
|
|
133
|
+
set error(error: boolean);
|
|
134
|
+
set success(success: boolean);
|
|
135
|
+
set id(id: string);
|
|
136
|
+
set ariaDescribedBy(id: string);
|
|
137
|
+
private readonly elementRef;
|
|
138
|
+
private readonly destroyRef;
|
|
139
|
+
private readonly ngControl;
|
|
140
|
+
get element(): HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;
|
|
141
|
+
get control(): AbstractControl | null;
|
|
142
|
+
ngOnInit(): void;
|
|
143
|
+
updateErrorAttribute(formFieldError?: boolean): void;
|
|
144
|
+
private setSelectPlaceholderAttribute;
|
|
145
|
+
private updateRequiredAttribute;
|
|
146
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<InputDirective, never>;
|
|
147
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<InputDirective, "input[ndwInput], select[ndwInput], textarea[ndwInput]", never, {}, {}, never, never, true, never>;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
declare class DatepickerComponent implements ControlValueAccessor {
|
|
151
|
+
#private;
|
|
152
|
+
readonly mode: _angular_core.InputSignal<DatepickerMode>;
|
|
153
|
+
readonly required: _angular_core.InputSignal<boolean>;
|
|
154
|
+
readonly disabled: _angular_core.ModelSignal<boolean>;
|
|
155
|
+
readonly placeholder: _angular_core.InputSignal<string>;
|
|
156
|
+
readonly openCalendarLabel: _angular_core.InputSignal<string>;
|
|
157
|
+
readonly minDate: _angular_core.InputSignal<Date | null>;
|
|
158
|
+
readonly maxDate: _angular_core.InputSignal<Date | null>;
|
|
159
|
+
readonly dateEnabledFilter: _angular_core.InputSignal<DateFilterFn<Date | null>>;
|
|
160
|
+
readonly dateWithIndicatorFilter: _angular_core.InputSignal<DateFilterFn<Date | null>>;
|
|
161
|
+
readonly input: _angular_core.Signal<InputDirective>;
|
|
162
|
+
protected readonly popoverTrigger: _angular_core.Signal<PopoverTriggerDirective>;
|
|
163
|
+
protected readonly value: _angular_core.ModelSignal<Date[]>;
|
|
164
|
+
protected readonly startAt: _angular_core.Signal<Date | null>;
|
|
165
|
+
protected readonly formattedValue: _angular_core.Signal<string>;
|
|
166
|
+
protected readonly showTags: _angular_core.Signal<boolean>;
|
|
167
|
+
protected onDateInput(input: string): void;
|
|
168
|
+
protected removeDate(date: Date): void;
|
|
169
|
+
protected onDateSelected(date: Date | Date[] | null): void;
|
|
170
|
+
writeValue(value: Date | Date[] | null): void;
|
|
171
|
+
registerOnChange(fn: (value: Date | Date[] | null) => void): void;
|
|
172
|
+
registerOnTouched(_fn: () => void): void;
|
|
173
|
+
setDisabledState?(isDisabled: boolean): void;
|
|
70
174
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<DatepickerComponent, never>;
|
|
71
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<DatepickerComponent, "ndw-datepicker", never, {}, {}, never, never, true, never>;
|
|
175
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<DatepickerComponent, "ndw-datepicker", never, { "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "openCalendarLabel": { "alias": "openCalendarLabel"; "required": false; "isSignal": true; }; "minDate": { "alias": "minDate"; "required": false; "isSignal": true; }; "maxDate": { "alias": "maxDate"; "required": false; "isSignal": true; }; "dateEnabledFilter": { "alias": "dateEnabledFilter"; "required": false; "isSignal": true; }; "dateWithIndicatorFilter": { "alias": "dateWithIndicatorFilter"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "disabled": "disabledChange"; "value": "valueChange"; }, never, never, true, never>;
|
|
72
176
|
}
|
|
73
177
|
|
|
74
178
|
declare class ErrorComponent {
|
|
@@ -86,6 +190,7 @@ declare class FileUploadComponent implements ControlValueAccessor {
|
|
|
86
190
|
readonly disabled: _angular_core.ModelSignal<boolean>;
|
|
87
191
|
readonly fileUploadText: _angular_core.InputSignal<FileUploadText>;
|
|
88
192
|
readonly maxFileSizeInBytes: _angular_core.InputSignal<number>;
|
|
193
|
+
readonly mimeTypeMap: _angular_core.InputSignal<Record<string, string>>;
|
|
89
194
|
readonly readonly: _angular_core.InputSignal<boolean>;
|
|
90
195
|
readonly uploadDate: _angular_core.InputSignal<string>;
|
|
91
196
|
readonly draggingOver: _angular_core.ModelSignal<boolean>;
|
|
@@ -118,31 +223,11 @@ declare class FileUploadComponent implements ControlValueAccessor {
|
|
|
118
223
|
* Ensures that the provided File has a valid MIME type.
|
|
119
224
|
*
|
|
120
225
|
* NOTE: Some file extensions are not automatically mapped to a valid MIME type by the operating system.
|
|
121
|
-
* In such cases, the MIME_TYPE_MAP is used to assign the correct MIME type.
|
|
226
|
+
* In such cases, the MIME_TYPE_MAP in combination with the mimeTypeMap input is used to assign the correct MIME type.
|
|
122
227
|
*/
|
|
123
228
|
private ensureFileType;
|
|
124
229
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FileUploadComponent, never>;
|
|
125
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FileUploadComponent, "ndw-file-upload", never, { "allowedFileTypeRegex": { "alias": "allowedFileTypeRegex"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "fileUploadText": { "alias": "fileUploadText"; "required": false; "isSignal": true; }; "maxFileSizeInBytes": { "alias": "maxFileSizeInBytes"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "uploadDate": { "alias": "uploadDate"; "required": false; "isSignal": true; }; "draggingOver": { "alias": "draggingOver"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "incorrectFileSize": { "alias": "incorrectFileSize"; "required": false; "isSignal": true; }; "incorrectFileType": { "alias": "incorrectFileType"; "required": false; "isSignal": true; }; "selectedFile": { "alias": "selectedFile"; "required": false; "isSignal": true; }; "success": { "alias": "success"; "required": false; "isSignal": true; }; }, { "disabled": "disabledChange"; "draggingOver": "draggingOverChange"; "error": "errorChange"; "incorrectFileSize": "incorrectFileSizeChange"; "incorrectFileType": "incorrectFileTypeChange"; "selectedFile": "selectedFileChange"; "success": "successChange"; }, never, never, true, never>;
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
declare class InputDirective implements OnInit {
|
|
129
|
-
set disabled(disabled: boolean);
|
|
130
|
-
get error(): boolean;
|
|
131
|
-
set error(error: boolean);
|
|
132
|
-
set success(success: boolean);
|
|
133
|
-
set id(id: string);
|
|
134
|
-
set ariaDescribedBy(id: string);
|
|
135
|
-
private readonly elementRef;
|
|
136
|
-
private readonly destroyRef;
|
|
137
|
-
private readonly ngControl;
|
|
138
|
-
get element(): HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;
|
|
139
|
-
get control(): AbstractControl | null;
|
|
140
|
-
ngOnInit(): void;
|
|
141
|
-
updateErrorAttribute(formFieldError?: boolean): void;
|
|
142
|
-
private setSelectPlaceholderAttribute;
|
|
143
|
-
private updateRequiredAttribute;
|
|
144
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<InputDirective, never>;
|
|
145
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<InputDirective, "input[ndwInput], select[ndwInput], textarea[ndwInput]", never, {}, {}, never, never, true, never>;
|
|
230
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FileUploadComponent, "ndw-file-upload", never, { "allowedFileTypeRegex": { "alias": "allowedFileTypeRegex"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "fileUploadText": { "alias": "fileUploadText"; "required": false; "isSignal": true; }; "maxFileSizeInBytes": { "alias": "maxFileSizeInBytes"; "required": false; "isSignal": true; }; "mimeTypeMap": { "alias": "mimeTypeMap"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "uploadDate": { "alias": "uploadDate"; "required": false; "isSignal": true; }; "draggingOver": { "alias": "draggingOver"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "incorrectFileSize": { "alias": "incorrectFileSize"; "required": false; "isSignal": true; }; "incorrectFileType": { "alias": "incorrectFileType"; "required": false; "isSignal": true; }; "selectedFile": { "alias": "selectedFile"; "required": false; "isSignal": true; }; "success": { "alias": "success"; "required": false; "isSignal": true; }; }, { "disabled": "disabledChange"; "draggingOver": "draggingOverChange"; "error": "errorChange"; "incorrectFileSize": "incorrectFileSizeChange"; "incorrectFileType": "incorrectFileTypeChange"; "selectedFile": "selectedFileChange"; "success": "successChange"; }, never, never, true, never>;
|
|
146
231
|
}
|
|
147
232
|
|
|
148
233
|
declare class MonthInputComponent implements ControlValueAccessor, OnInit {
|
|
@@ -200,6 +285,7 @@ declare class FormFieldComponent {
|
|
|
200
285
|
readonly tooltip: _angular_core.InputSignal<string>;
|
|
201
286
|
readonly clearButtonClicked: _angular_core.OutputEmitterRef<void>;
|
|
202
287
|
protected readonly monthInput: _angular_core.Signal<MonthInputComponent | undefined>;
|
|
288
|
+
protected readonly dateInput: _angular_core.Signal<DatepickerComponent | undefined>;
|
|
203
289
|
protected readonly regularInput: _angular_core.Signal<InputDirective | undefined>;
|
|
204
290
|
protected readonly input: _angular_core.Signal<InputDirective | undefined>;
|
|
205
291
|
protected readonly inputType: _angular_core.Signal<InputType | undefined>;
|
|
@@ -215,7 +301,7 @@ declare class FormFieldComponent {
|
|
|
215
301
|
private setInputId;
|
|
216
302
|
private setAriaDescribedBy;
|
|
217
303
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FormFieldComponent, never>;
|
|
218
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FormFieldComponent, "ndw-form-field", never, { "label": { "alias": "label"; "required": true; "isSignal": true; }; "suffixAriaLabel": { "alias": "suffixAriaLabel"; "required": false; "isSignal": true; }; "hideLabel": { "alias": "hideLabel"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "success": { "alias": "success"; "required": false; "isSignal": true; }; "info": { "alias": "info"; "required": false; "isSignal": true; }; "tooltip": { "alias": "tooltip"; "required": false; "isSignal": true; }; }, { "clearButtonClicked": "clearButtonClicked"; }, ["monthInput", "regularInput"], ["*"], true, never>;
|
|
304
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FormFieldComponent, "ndw-form-field", never, { "label": { "alias": "label"; "required": true; "isSignal": true; }; "suffixAriaLabel": { "alias": "suffixAriaLabel"; "required": false; "isSignal": true; }; "hideLabel": { "alias": "hideLabel"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "success": { "alias": "success"; "required": false; "isSignal": true; }; "info": { "alias": "info"; "required": false; "isSignal": true; }; "tooltip": { "alias": "tooltip"; "required": false; "isSignal": true; }; }, { "clearButtonClicked": "clearButtonClicked"; }, ["monthInput", "dateInput", "regularInput"], ["*"], true, never>;
|
|
219
305
|
}
|
|
220
306
|
|
|
221
307
|
declare enum FormFieldElement {
|
|
@@ -458,22 +544,9 @@ declare class AvatarComponent {
|
|
|
458
544
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AvatarComponent, "ndw-avatar", never, { "status": { "alias": "status"; "required": false; "isSignal": true; }; "initials": { "alias": "initials"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
459
545
|
}
|
|
460
546
|
|
|
461
|
-
declare class BadgeComponent {
|
|
462
|
-
/**
|
|
463
|
-
* The value of the badge
|
|
464
|
-
*/
|
|
465
|
-
value: _angular_core.InputSignal<number | undefined>;
|
|
466
|
-
/**
|
|
467
|
-
* The aria label, used by screen readers to give context.
|
|
468
|
-
*/
|
|
469
|
-
ariaLabel: _angular_core.InputSignal<string | undefined>;
|
|
470
|
-
/**
|
|
471
|
-
* When true, the badge will display values above 99.
|
|
472
|
-
* When false (default), the badge will display values above 99 as a dot
|
|
473
|
-
*/
|
|
474
|
-
displayLargeNumbers: _angular_core.InputSignal<boolean>;
|
|
547
|
+
declare class BadgeComponent extends CoreBadgeComponent {
|
|
475
548
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<BadgeComponent, never>;
|
|
476
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<BadgeComponent, "ndw-badge", never, {
|
|
549
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<BadgeComponent, "ndw-badge", never, {}, {}, never, never, true, never>;
|
|
477
550
|
}
|
|
478
551
|
|
|
479
552
|
type BannerType = 'critical' | 'info' | 'info-grey' | 'warning' | 'positive';
|
|
@@ -595,33 +668,6 @@ declare class DashboardCardComponent {
|
|
|
595
668
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<DashboardCardComponent, "ndw-dashboard-card", never, { "title": { "alias": "title"; "required": true; "isSignal": true; }; "imgSource": { "alias": "imgSource"; "required": true; "isSignal": true; }; "link": { "alias": "link"; "required": true; "isSignal": true; }; "linkTarget": { "alias": "linkTarget"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
596
669
|
}
|
|
597
670
|
|
|
598
|
-
type PopoverPosition = 'nextToTriggerButton' | 'overTriggerButton';
|
|
599
|
-
declare class PopoverTriggerDirective implements OnDestroy {
|
|
600
|
-
popoverToggled: EventEmitter<boolean>;
|
|
601
|
-
popoverPosition: _angular_core.InputSignal<PopoverPosition>;
|
|
602
|
-
popoverContent: _angular_core.InputSignal<TemplateRef<unknown>>;
|
|
603
|
-
toggleOnClick: _angular_core.InputSignal<boolean>;
|
|
604
|
-
isOpen: _angular_core.ModelSignal<boolean>;
|
|
605
|
-
toggle(): void;
|
|
606
|
-
private destroyRef;
|
|
607
|
-
private elementRef;
|
|
608
|
-
private overlay;
|
|
609
|
-
private viewContainerRef;
|
|
610
|
-
private focusTrapFactory;
|
|
611
|
-
private overlayRef?;
|
|
612
|
-
ngOnDestroy(): void;
|
|
613
|
-
togglePopover(): void;
|
|
614
|
-
private open;
|
|
615
|
-
private trapFocus;
|
|
616
|
-
private closeOverlayOnEscapeKey;
|
|
617
|
-
private nodeOrParentsHaveAttribute;
|
|
618
|
-
private closeOverlayOnBackdropClick;
|
|
619
|
-
private close;
|
|
620
|
-
private getPopoverPosition;
|
|
621
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PopoverTriggerDirective, never>;
|
|
622
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<PopoverTriggerDirective, "[ndwPopoverTrigger]", ["ndwPopoverTrigger"], { "popoverPosition": { "alias": "popoverPosition"; "required": false; "isSignal": true; }; "popoverContent": { "alias": "ndwPopoverTrigger"; "required": true; "isSignal": true; }; "toggleOnClick": { "alias": "toggleOnClick"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; }, { "popoverToggled": "popoverToggled"; "isOpen": "isOpenChange"; }, never, never, true, never>;
|
|
623
|
-
}
|
|
624
|
-
|
|
625
671
|
declare class DropdownComponent {
|
|
626
672
|
readonly disabled: _angular_core.InputSignal<boolean>;
|
|
627
673
|
readonly chevron: _angular_core.InputSignal<boolean>;
|
|
@@ -772,7 +818,7 @@ declare class LoaderComponent {
|
|
|
772
818
|
|
|
773
819
|
declare class MapButtonComponent {
|
|
774
820
|
#private;
|
|
775
|
-
readonly icon: _angular_core.InputSignal<"search" | "direction" | "gps" | "high-res" | "layers" | "
|
|
821
|
+
readonly icon: _angular_core.InputSignal<"search" | "polygon" | "direction" | "gps" | "high-res" | "layers" | "zoom-in" | "zoom-out" | "add-traffic-sign" | "add-zone" | "download" | "hectometer" | "low-res" | "zoom-to-content">;
|
|
776
822
|
readonly active: _angular_core.InputSignal<boolean>;
|
|
777
823
|
readonly ariaLabel: _angular_core.InputSignal<string | undefined>;
|
|
778
824
|
readonly disabled: _angular_core.InputSignal<boolean>;
|
|
@@ -1168,12 +1214,13 @@ declare class TabComponent implements OnInit {
|
|
|
1168
1214
|
get content(): TemplatePortal | null;
|
|
1169
1215
|
title: _angular_core.InputSignal<string>;
|
|
1170
1216
|
disabled: _angular_core.InputSignal<boolean>;
|
|
1217
|
+
hasError: _angular_core.InputSignal<boolean>;
|
|
1171
1218
|
active: boolean;
|
|
1172
1219
|
id: _angular_core.InputSignal<string | number>;
|
|
1173
1220
|
ngOnInit(): void;
|
|
1174
1221
|
getNativeElement(): HTMLElement;
|
|
1175
1222
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabComponent, never>;
|
|
1176
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TabComponent, "ndw-tab", never, { "title": { "alias": "title"; "required": true; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
1223
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TabComponent, "ndw-tab", never, { "title": { "alias": "title"; "required": true; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "hasError": { "alias": "hasError"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
1177
1224
|
}
|
|
1178
1225
|
|
|
1179
1226
|
declare class TabGroupComponent {
|
|
@@ -1284,5 +1331,5 @@ declare class TooltipDirective implements OnChanges, OnDestroy, OnInit {
|
|
|
1284
1331
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<TooltipDirective, "[ndwTooltip]", never, { "text": { "alias": "ndwTooltip"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1285
1332
|
}
|
|
1286
1333
|
|
|
1287
|
-
export { AccordionComponent, AccordionService, AlertComponent, AutoGrowDirective, AutosuggestAddOptionComponent, AutosuggestDirective, AutosuggestOptionComponent, AutosuggestPanelComponent, AvatarComponent, BadgeComponent, BannerComponent, BreadcrumbComponent, BreadcrumbGroupComponent, ButtonDirective, CARD_COMPONENTS, CARD_ID_TOKEN, CardComponent, CardContentComponent, CardFooterComponent, CardHeaderComponent, CheckboxComponent, CheckboxGroupComponent, CollapsibleComponent, DEFAULT_BACKGROUNDS, DashboardCardComponent, DatepickerComponent, DropdownComponent, EditBarActionsComponent, EditBarComponent, EditBarMessageComponent, ErrorComponent, FavoriteComponent, FileUploadComponent, FormFieldComponent, FormFieldElement, HoverableListItemComponent, IconComponent, InfoComponent, InputButtonComponent, InputDirective, InputIconComponent, KeyValueListComponent, LayoutBannersComponent, LayoutComponent, ListComponent, ListItemComponent, LoaderComponent, MAP_BACKGROUNDS, MAP_BACKGROUND_IMAGES, MAP_LAYERS, MAP_LAYER_IMAGES, MODAL_COMPONENTS, MainNavigationComponent, MapButtonComponent, MapDisplayComponent, MapDisplayOptionComponent, MapLegendComponent, MaxCharDirective, ModalComponent, ModalContentComponent, ModalFooterComponent, ModalHeaderComponent, ModalService, MonthInputComponent, MultiSelectComponent, OptionComponent, OptionGroupComponent, PillComponent, PopoverTriggerDirective, RadioButtonComponent, RadioGroupComponent, RouterBreadcrumbsComponent, SplitterComponent, SummaryCardActionComponent, SummaryCardActionsComponent, SummaryCardComponent, SummaryCardContentComponent, SummaryCardHeaderComponent, SummaryCardSubtitleComponent, SummaryCardTagComponent, SummaryCardTagsComponent, SwitcherComponent, TabComponent, TabGroupComponent, TagComponent, ToastComponent, ToastService, TooltipComponent, TooltipDirective, fontMapButtonIcons, mapButtonIcons, ndwAgGridTheme, svgMapButtonIcons };
|
|
1288
|
-
export type { AlertType, AvatarColor, AvatarStatus, BannerType, BaseMapLegendOption, CheckType, CheckboxData, CircleMapLegendOption, DisplayOptionDirection, DisplayOptionType, EditBarPosition, EditBarWidth, Environment, FileUploadText, HoverableListItemAction, IconMapLegendOption, ImageMapLegendOption, LineMapLegendOption, MapBackgroundOption, MapBackgrounds, MapButtonIcon, MapDisplayOption, MapLegendOption, MapLegendOptionGroup, MapLegendOptionType, MapLegendViewMode, MenuItem, ModalSize, OptionGroupMode, PolygonMapLegendOption, PopoverPosition, SelectAllText, SubMenuItem, SummaryActionsView, SwitcherOption, Theme, ToastDimensions };
|
|
1334
|
+
export { AccordionComponent, AccordionService, AlertComponent, AutoGrowDirective, AutosuggestAddOptionComponent, AutosuggestDirective, AutosuggestOptionComponent, AutosuggestPanelComponent, AvatarComponent, BadgeComponent, BannerComponent, BreadcrumbComponent, BreadcrumbGroupComponent, ButtonDirective, CARD_COMPONENTS, CARD_ID_TOKEN, CalendarComponent, CardComponent, CardContentComponent, CardFooterComponent, CardHeaderComponent, CheckboxComponent, CheckboxGroupComponent, CollapsibleComponent, DEFAULT_BACKGROUNDS, DashboardCardComponent, DatepickerComponent, DropdownComponent, EditBarActionsComponent, EditBarComponent, EditBarMessageComponent, ErrorComponent, FavoriteComponent, FileUploadComponent, FormFieldComponent, FormFieldElement, HoverableListItemComponent, IconComponent, InfoComponent, InputButtonComponent, InputDirective, InputIconComponent, KeyValueListComponent, LayoutBannersComponent, LayoutComponent, ListComponent, ListItemComponent, LoaderComponent, MAP_BACKGROUNDS, MAP_BACKGROUND_IMAGES, MAP_LAYERS, MAP_LAYER_IMAGES, MODAL_COMPONENTS, MainNavigationComponent, MapButtonComponent, MapDisplayComponent, MapDisplayOptionComponent, MapLegendComponent, MaxCharDirective, ModalComponent, ModalContentComponent, ModalFooterComponent, ModalHeaderComponent, ModalService, MonthInputComponent, MultiSelectComponent, OptionComponent, OptionGroupComponent, PillComponent, PopoverTriggerDirective, RadioButtonComponent, RadioGroupComponent, RouterBreadcrumbsComponent, SplitterComponent, SummaryCardActionComponent, SummaryCardActionsComponent, SummaryCardComponent, SummaryCardContentComponent, SummaryCardHeaderComponent, SummaryCardSubtitleComponent, SummaryCardTagComponent, SummaryCardTagsComponent, SwitcherComponent, TabComponent, TabGroupComponent, TagComponent, ToastComponent, ToastService, TooltipComponent, TooltipDirective, fontMapButtonIcons, mapButtonIcons, ndwAgGridTheme, svgMapButtonIcons };
|
|
1335
|
+
export type { AlertType, AvatarColor, AvatarStatus, BannerType, BaseMapLegendOption, CheckType, CheckboxData, CircleMapLegendOption, DatepickerMode, DisplayOptionDirection, DisplayOptionType, EditBarPosition, EditBarWidth, Environment, FileUploadText, HoverableListItemAction, IconMapLegendOption, ImageMapLegendOption, LineMapLegendOption, MapBackgroundOption, MapBackgrounds, MapButtonIcon, MapDisplayOption, MapLegendOption, MapLegendOptionGroup, MapLegendOptionType, MapLegendViewMode, MenuItem, ModalSize, OptionGroupMode, PolygonMapLegendOption, PopoverPosition, SelectAllText, SubMenuItem, SummaryActionsView, SwitcherOption, Theme, ToastDimensions };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ndwnu/design-system",
|
|
3
|
-
"version": "12.
|
|
3
|
+
"version": "12.1.0",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@angular/animations": "^20.0.0",
|
|
6
6
|
"@angular/cdk": "^20.0.0",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"@angular/forms": "^20.0.0",
|
|
10
10
|
"@angular/material": "^20.0.0",
|
|
11
11
|
"@angular/router": "^20.0.0",
|
|
12
|
-
"@ndwnu/core": "2.
|
|
12
|
+
"@ndwnu/core": "2.1.0",
|
|
13
13
|
"ag-grid-angular": "^34.0.2",
|
|
14
14
|
"ag-grid-community": "^34.0.2",
|
|
15
15
|
"rxjs": "^7.8.0"
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
@use '@angular/material' as mat;
|
|
2
|
+
|
|
3
|
+
html {
|
|
4
|
+
@include mat.theme(
|
|
5
|
+
(
|
|
6
|
+
color: mat.$orange-palette,
|
|
7
|
+
typography: (
|
|
8
|
+
plain-family: var(--ndw-font-family-body),
|
|
9
|
+
brand-family: var(--ndw-font-family-heading),
|
|
10
|
+
bold-weight: var(--ndw-font-weight-bold),
|
|
11
|
+
medium-weight: var(--ndw-font-weight-bold),
|
|
12
|
+
regular-weight: var(--ndw-font-weight-regular),
|
|
13
|
+
),
|
|
14
|
+
density: 0,
|
|
15
|
+
)
|
|
16
|
+
);
|
|
17
|
+
}
|
package/styles/base/index.scss
CHANGED
|
@@ -3,41 +3,88 @@
|
|
|
3
3
|
:root {
|
|
4
4
|
@include mat.datepicker-overrides(
|
|
5
5
|
(
|
|
6
|
-
|
|
7
|
-
calendar-
|
|
6
|
+
toggle-icon-color: var(--ndw-color-primary),
|
|
7
|
+
calendar-container-background-color: var(--ndw-color-grey-100),
|
|
8
|
+
calendar-container-elevation-shadow: var(--ndw-elevation-content),
|
|
9
|
+
calendar-container-shape: var(--ndw-border-radius-md),
|
|
8
10
|
calendar-text-font: var(--ndw-font-family-body),
|
|
9
11
|
calendar-text-size: var(--ndw-font-size-sm),
|
|
10
|
-
|
|
12
|
+
calendar-header-text-size: var(--ndw-font-size-sm),
|
|
13
|
+
calendar-body-label-text-size: var(--ndw-font-size-sm),
|
|
14
|
+
calendar-period-button-text-size: var(--ndw-font-size-sm),
|
|
15
|
+
calendar-date-text-color: var(--ndw-color-text),
|
|
16
|
+
calendar-date-today-outline-color: var(--ndw-color-secondary-200),
|
|
17
|
+
calendar-date-selected-state-background-color: var(--ndw-color-secondary-400),
|
|
18
|
+
calendar-date-today-selected-state-outline-color: var(--ndw-color-secondary-400),
|
|
19
|
+
calendar-date-preview-state-outline-color: var(--ndw-color-secondary-300),
|
|
20
|
+
calendar-date-hover-state-background-color: var(--ndw-color-secondary-300),
|
|
21
|
+
calendar-date-focus-state-background-color: var(--ndw-color-secondary-300),
|
|
11
22
|
)
|
|
12
23
|
);
|
|
13
24
|
|
|
14
|
-
mat-calendar
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
25
|
+
mat-calendar {
|
|
26
|
+
--range-preview-border: var(--ndw-border-size-sm) dashed var(--ndw-color-secondary-300);
|
|
27
|
+
|
|
28
|
+
.ndw-date-selected > :first-child {
|
|
29
|
+
background-color: var(--ndw-color-secondary-400) !important;
|
|
30
|
+
color: var(--ndw-color-white) !important;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.ndw-date-range-start {
|
|
34
|
+
background-color: var(--ndw-color-secondary-200);
|
|
35
|
+
border-top-left-radius: 50%;
|
|
36
|
+
border-bottom-left-radius: 50%;
|
|
37
|
+
}
|
|
18
38
|
|
|
19
|
-
|
|
20
|
-
|
|
39
|
+
.ndw-date-range-end {
|
|
40
|
+
background-color: var(--ndw-color-secondary-200);
|
|
41
|
+
border-top-right-radius: 50%;
|
|
42
|
+
border-bottom-right-radius: 50%;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.ndw-date-in-range {
|
|
46
|
+
background-color: var(--ndw-color-secondary-200);
|
|
47
|
+
}
|
|
21
48
|
|
|
22
|
-
|
|
23
|
-
background: var(--ndw-color-
|
|
49
|
+
.ndw-date-range-start-preview {
|
|
50
|
+
background-color: var(--ndw-color-secondary-100);
|
|
51
|
+
border-top-left-radius: 50%;
|
|
52
|
+
border-bottom-left-radius: 50%;
|
|
24
53
|
}
|
|
25
54
|
|
|
26
|
-
|
|
27
|
-
background: var(--ndw-color-
|
|
55
|
+
.ndw-date-range-end-preview {
|
|
56
|
+
background-color: var(--ndw-color-secondary-100);
|
|
57
|
+
border-top-right-radius: 50%;
|
|
58
|
+
border-bottom-right-radius: 50%;
|
|
28
59
|
}
|
|
29
60
|
|
|
30
|
-
|
|
31
|
-
background: var(--ndw-color-secondary-
|
|
32
|
-
|
|
33
|
-
|
|
61
|
+
.ndw-date-in-range-preview {
|
|
62
|
+
background-color: var(--ndw-color-secondary-100);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
// Add a dot below dates with the ndw-date-indicator class
|
|
66
|
+
.ndw-date-indicator > :first-child {
|
|
67
|
+
&::after {
|
|
68
|
+
content: '';
|
|
69
|
+
background: var(--ndw-color-primary);
|
|
70
|
+
position: absolute;
|
|
71
|
+
bottom: 2px;
|
|
72
|
+
left: calc(50% - 4px);
|
|
73
|
+
width: 8px;
|
|
74
|
+
height: 8px;
|
|
75
|
+
box-sizing: border-box;
|
|
76
|
+
border-radius: 4px;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
34
79
|
|
|
35
|
-
|
|
36
|
-
|
|
80
|
+
// Disable the month view when in 'month' mode
|
|
81
|
+
&.month-picker {
|
|
82
|
+
.mat-calendar-period-button {
|
|
83
|
+
pointer-events: none;
|
|
37
84
|
}
|
|
38
85
|
|
|
39
|
-
|
|
40
|
-
|
|
86
|
+
.mat-calendar-arrow {
|
|
87
|
+
display: none;
|
|
41
88
|
}
|
|
42
89
|
}
|
|
43
90
|
}
|
|
@@ -109,7 +109,8 @@
|
|
|
109
109
|
|
|
110
110
|
// When an ndwInput is contained in an input-container hide the
|
|
111
111
|
// ndwInput borders and instead put the borders on the container.
|
|
112
|
-
.input-container:has(> [ndwInput])
|
|
112
|
+
.input-container:has(> [ndwInput]),
|
|
113
|
+
.input-container:has(> ndw-datepicker > [ndwInput]) {
|
|
113
114
|
@include shared-style();
|
|
114
115
|
|
|
115
116
|
// When input has a ndw-input-icon enable the inline padding
|
package/styles/layout/_grid.scss
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
@use '../base/variables' as *;
|
|
2
2
|
|
|
3
|
+
$breakpoints: (
|
|
4
|
+
2xs: $ndw-screen-2xs,
|
|
5
|
+
xs: $ndw-screen-xs,
|
|
6
|
+
sm: $ndw-screen-sm,
|
|
7
|
+
md: $ndw-screen-md,
|
|
8
|
+
);
|
|
9
|
+
|
|
3
10
|
@mixin column($span) {
|
|
4
11
|
grid-column: span $span;
|
|
5
12
|
}
|
|
@@ -99,3 +106,60 @@
|
|
|
99
106
|
}
|
|
100
107
|
}
|
|
101
108
|
}
|
|
109
|
+
|
|
110
|
+
.ndw-c-grid {
|
|
111
|
+
display: flex;
|
|
112
|
+
flex-wrap: wrap;
|
|
113
|
+
container-type: inline-size;
|
|
114
|
+
container-name: ndw-c-grid;
|
|
115
|
+
|
|
116
|
+
@mixin ndw-c-col-span($size, $important: false) {
|
|
117
|
+
$flag: if($important, '!important', '');
|
|
118
|
+
flex: 0 0 calc((100% / 12) * #{$size}) #{$flag};
|
|
119
|
+
max-width: calc((100% / 12) * #{$size}) #{$flag};
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
@mixin ndw-c-breakpoint($name, $min-width) {
|
|
123
|
+
@container ndw-c-grid (min-width: #{$min-width}) {
|
|
124
|
+
@content;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
@for $i from 1 through 12 {
|
|
129
|
+
.ndw-c-col-#{$i} {
|
|
130
|
+
@include ndw-c-col-span($i, false);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
@each $name, $width in $breakpoints {
|
|
135
|
+
@include ndw-c-breakpoint($name, $width) {
|
|
136
|
+
@for $i from 1 through 12 {
|
|
137
|
+
.ndw-c-col-#{$name}-#{$i} {
|
|
138
|
+
@include ndw-c-col-span($i, true);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
$order-range: 0 1 2 3 4 5;
|
|
145
|
+
|
|
146
|
+
@each $i in $order-range {
|
|
147
|
+
.ndw-c-order-#{$i} {
|
|
148
|
+
order: $i !important;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
@each $name, $width in $breakpoints {
|
|
153
|
+
@container ndw-c-grid (min-width: #{$width}) {
|
|
154
|
+
@each $i in $order-range {
|
|
155
|
+
.ndw-c-order-#{$name}-#{$i} {
|
|
156
|
+
order: $i !important;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
.ndw-c-col {
|
|
164
|
+
flex: 1 1 100%;
|
|
165
|
+
}
|