@ndwnu/design-system 9.1.0 → 10.0.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.
Files changed (61) hide show
  1. package/assets/images/map-button-icons.svg +84 -34
  2. package/fesm2022/ndwnu-design-system.mjs +2125 -2401
  3. package/fesm2022/ndwnu-design-system.mjs.map +1 -1
  4. package/lib/components/accordion/accordion.component.d.ts +3 -3
  5. package/lib/components/breadcrumb/breadcrumb.component.d.ts +3 -5
  6. package/lib/components/breadcrumb-group/breadcrumb-group.component.d.ts +2 -1
  7. package/lib/components/collapsible/collapsible.component.d.ts +3 -1
  8. package/lib/components/dropdown/dropdown.component.d.ts +1 -1
  9. package/lib/components/form-field/autosuggest/autosuggest-add-option/autosuggest-add-option.component.d.ts +4 -6
  10. package/lib/components/form-field/autosuggest/autosuggest-option/autosuggest-option.component.d.ts +6 -17
  11. package/lib/components/form-field/autosuggest/autosuggest-option/index.d.ts +0 -1
  12. package/lib/components/form-field/autosuggest/autosuggest-panel/autosuggest-panel.component.d.ts +4 -35
  13. package/lib/components/form-field/autosuggest/autosuggest-panel/index.d.ts +1 -0
  14. package/lib/components/form-field/autosuggest/autosuggest.directive.d.ts +6 -68
  15. package/lib/components/form-field/autosuggest/index.d.ts +4 -4
  16. package/lib/components/form-field/form-field.model.d.ts +1 -0
  17. package/lib/components/form-field/month-input/date-validators.d.ts +3 -0
  18. package/lib/components/form-field/month-input/month-input-utils.d.ts +2 -1
  19. package/lib/components/form-field/month-input/month-input.component.d.ts +4 -1
  20. package/lib/components/form-field/option-group/option.component.d.ts +2 -1
  21. package/lib/components/form-field/radio-button/radio-button.component.d.ts +4 -3
  22. package/lib/components/form-field/radio-group/radio-group.component.d.ts +0 -2
  23. package/lib/components/index.d.ts +4 -0
  24. package/lib/components/list/index.d.ts +1 -0
  25. package/lib/components/list/list.component.d.ts +11 -0
  26. package/lib/components/list-item/index.d.ts +1 -0
  27. package/lib/components/list-item/list-item.component.d.ts +34 -0
  28. package/lib/components/main-navigation/main-navigation-header/main-navigation-header.component.d.ts +1 -1
  29. package/lib/components/map-button/map-button.component.d.ts +3 -3
  30. package/lib/components/map-button/map-button.model.d.ts +2 -2
  31. package/lib/components/map-display/map-display.component.d.ts +1 -1
  32. package/lib/components/map-legend/index.d.ts +2 -0
  33. package/lib/components/map-legend/map-legend-group/map-legend-group.component.d.ts +9 -0
  34. package/lib/components/map-legend/map-legend-option/map-legend-option.component.d.ts +7 -0
  35. package/lib/components/map-legend/map-legend.component.d.ts +17 -0
  36. package/lib/components/map-legend/map-legend.model.d.ts +33 -0
  37. package/lib/components/multi-select/checkbox-data.interface.d.ts +3 -0
  38. package/lib/components/multi-select/multi-select.component.d.ts +2 -1
  39. package/lib/components/popover/popover-trigger.directive.d.ts +3 -1
  40. package/lib/components/router-breadcrumbs/router-breadcrumbs.component.d.ts +2 -11
  41. package/lib/components/tab-group/tab-group.component.d.ts +2 -1
  42. package/lib/components/table/ag-grid-theme.d.ts +2 -0
  43. package/lib/components/table/index.d.ts +1 -0
  44. package/lib/components/toast/toast-list/toast-list.component.d.ts +17 -0
  45. package/lib/components/toast/toast.component.d.ts +16 -17
  46. package/lib/components/toast/toast.service.d.ts +26 -7
  47. package/lib/models/index.d.ts +1 -0
  48. package/package.json +4 -2
  49. package/styles/base/_colors.scss +3 -1
  50. package/styles/base/_variables.scss +1 -0
  51. package/styles/base/colors.stories.model.ts +28 -92
  52. package/styles/base/colors.stories.ts +13 -3
  53. package/styles/base/typography.stories.ts +4 -9
  54. package/styles/components/_divider.scss +1 -1
  55. package/styles/components/_input.scss +0 -4
  56. package/styles/components/_map.scss +114 -0
  57. package/styles/components/_table.scss +8 -0
  58. package/styles/components/index.scss +2 -0
  59. package/lib/components/form-field/autosuggest/autosuggest-option/autosuggest-option.model.d.ts +0 -5
  60. package/lib/components/form-field/autosuggest/autosuggest-option/base-autosuggest-option.component.d.ts +0 -26
  61. package/styles/base/colors.stories.utils.ts +0 -58
@@ -1,11 +1,11 @@
1
1
  import { OnInit } from '@angular/core';
2
2
  import { CollapsibleComponent } from '../collapsible';
3
+ import { ListComponent } from '../list';
3
4
  import * as i0 from "@angular/core";
4
- export declare class AccordionComponent implements OnInit {
5
+ export declare class AccordionComponent extends ListComponent implements OnInit {
6
+ #private;
5
7
  collapseOthers: import("@angular/core").InputSignal<boolean>;
6
8
  collapsibles: import("@angular/core").Signal<readonly CollapsibleComponent[]>;
7
- private readonly accordionService;
8
- private readonly destroyRef;
9
9
  ngOnInit(): void;
10
10
  static ɵfac: i0.ɵɵFactoryDeclaration<AccordionComponent, never>;
11
11
  static ɵcmp: i0.ɵɵComponentDeclaration<AccordionComponent, "ndw-accordion", never, { "collapseOthers": { "alias": "collapseOthers"; "required": false; "isSignal": true; }; }, {}, ["collapsibles"], ["*"], true, never>;
@@ -1,8 +1,6 @@
1
- import { TemplateRef } from '@angular/core';
1
+ import { CoreBreadcrumbComponent } from '@ndwnu/core';
2
2
  import * as i0 from "@angular/core";
3
- export declare class BreadcrumbComponent {
4
- link: import("@angular/core").InputSignal<string | null>;
5
- content: import("@angular/core").Signal<TemplateRef<unknown>>;
3
+ export declare class BreadcrumbComponent extends CoreBreadcrumbComponent {
6
4
  static ɵfac: i0.ɵɵFactoryDeclaration<BreadcrumbComponent, never>;
7
- static ɵcmp: i0.ɵɵComponentDeclaration<BreadcrumbComponent, "ndw-breadcrumb", never, { "link": { "alias": "link"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
5
+ static ɵcmp: i0.ɵɵComponentDeclaration<BreadcrumbComponent, "ndw-breadcrumb", never, {}, {}, never, ["*"], true, never>;
8
6
  }
@@ -1,6 +1,7 @@
1
+ import { CoreBreadcrumbGroupComponent } from '@ndwnu/core';
1
2
  import { BreadcrumbComponent } from '../breadcrumb';
2
3
  import * as i0 from "@angular/core";
3
- export declare class BreadcrumbGroupComponent {
4
+ export declare class BreadcrumbGroupComponent extends CoreBreadcrumbGroupComponent<BreadcrumbComponent> {
4
5
  protected breadcrumbs: import("@angular/core").Signal<readonly BreadcrumbComponent[]>;
5
6
  static ɵfac: i0.ɵɵFactoryDeclaration<BreadcrumbGroupComponent, never>;
6
7
  static ɵcmp: i0.ɵɵComponentDeclaration<BreadcrumbGroupComponent, "ndw-breadcrumb-group", never, {}, {}, ["breadcrumbs"], never, true, never>;
@@ -2,6 +2,8 @@ import * as i0 from "@angular/core";
2
2
  export declare class CollapsibleComponent {
3
3
  index: import("@angular/core").InputSignal<number>;
4
4
  title: import("@angular/core").InputSignal<string>;
5
+ checkable: import("@angular/core").InputSignal<boolean>;
6
+ subtitle: import("@angular/core").InputSignal<string | undefined>;
5
7
  value: import("@angular/core").InputSignal<number | undefined>;
6
8
  expanded: import("@angular/core").ModelSignal<boolean>;
7
9
  private readonly accordionService;
@@ -11,5 +13,5 @@ export declare class CollapsibleComponent {
11
13
  animationState: import("@angular/core").Signal<"open" | "closed">;
12
14
  toggle(): void;
13
15
  static ɵfac: i0.ɵɵFactoryDeclaration<CollapsibleComponent, never>;
14
- static ɵcmp: i0.ɵɵComponentDeclaration<CollapsibleComponent, "ndw-collapsible", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; "title": { "alias": "title"; "required": true; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "expanded": { "alias": "expanded"; "required": false; "isSignal": true; }; }, { "expanded": "expandedChange"; }, never, ["*"], true, never>;
16
+ static ɵcmp: i0.ɵɵComponentDeclaration<CollapsibleComponent, "ndw-collapsible", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; "title": { "alias": "title"; "required": true; "isSignal": true; }; "checkable": { "alias": "checkable"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "expanded": { "alias": "expanded"; "required": false; "isSignal": true; }; }, { "expanded": "expandedChange"; }, never, ["custom-header-content", "*"], true, never>;
15
17
  }
@@ -11,7 +11,7 @@ export declare class DropdownComponent {
11
11
  readonly isOpenChange: import("@angular/core").OutputEmitterRef<boolean>;
12
12
  readonly popoverTrigger: import("@angular/core").Signal<PopoverTriggerDirective>;
13
13
  readonly dropdownButton: import("@angular/core").Signal<ElementRef<any>>;
14
- readonly buttonIcon: import("@angular/core").Signal<"keyboard_arrow_up" | "keyboard_arrow_down">;
14
+ readonly buttonIcon: import("@angular/core").Signal<"keyboard_arrow_down" | "keyboard_arrow_up">;
15
15
  onTagClicked($event: Event): void;
16
16
  onKeyDown(event: KeyboardEvent): void;
17
17
  closeDropdown(): void;
@@ -1,8 +1,6 @@
1
- import { BaseAutosuggestOptionComponent } from '../autosuggest-option';
1
+ import { CoreAutosuggestAddOptionComponent } from '@ndwnu/core';
2
2
  import * as i0 from "@angular/core";
3
- export declare class AutosuggestAddOptionComponent<T> extends BaseAutosuggestOptionComponent<T> {
4
- readonly addOption: import("@angular/core").OutputEmitterRef<string>;
5
- protected emitSelectionChangeEvent(isUserInput?: boolean): void;
6
- static ɵfac: i0.ɵɵFactoryDeclaration<AutosuggestAddOptionComponent<any>, never>;
7
- static ɵcmp: i0.ɵɵComponentDeclaration<AutosuggestAddOptionComponent<any>, "ndw-autosuggest-add-option", never, {}, { "addOption": "addOption"; }, never, never, true, never>;
3
+ export declare class AutosuggestAddOptionComponent extends CoreAutosuggestAddOptionComponent {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<AutosuggestAddOptionComponent, never>;
5
+ static ɵcmp: i0.ɵɵComponentDeclaration<AutosuggestAddOptionComponent, "ndw-autosuggest-add-option", never, {}, {}, never, never, true, never>;
8
6
  }
@@ -1,19 +1,8 @@
1
- import { BaseAutosuggestOptionComponent } from './base-autosuggest-option.component';
2
- import { AutosuggestOptionComponentType } from './autosuggest-option.model';
1
+ import { CoreAutosuggestOptionComponent, Image } from '@ndwnu/core';
3
2
  import * as i0 from "@angular/core";
4
- export declare class AutocompleteOptionSelectionChange<T> {
5
- source: AutosuggestOptionComponentType<T>;
6
- isUserInput: boolean;
7
- constructor(source: AutosuggestOptionComponentType<T>, isUserInput?: boolean);
8
- }
9
- export declare class AutosuggestOptionComponent<T> extends BaseAutosuggestOptionComponent<T> {
10
- readonly searchTerm: import("@angular/core").InputSignal<string>;
11
- readonly label: import("@angular/core").InputSignal<string>;
12
- id: string;
13
- get viewValue(): string;
14
- constructor();
15
- getLabel(): string;
16
- protected emitSelectionChangeEvent(isUserInput?: boolean): void;
17
- static ɵfac: i0.ɵɵFactoryDeclaration<AutosuggestOptionComponent<any>, never>;
18
- static ɵcmp: i0.ɵɵComponentDeclaration<AutosuggestOptionComponent<any>, "ndw-autosuggest-option", never, { "searchTerm": { "alias": "searchTerm"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
3
+ export declare class AutosuggestOptionComponent extends CoreAutosuggestOptionComponent {
4
+ icon: import("@angular/core").InputSignal<string | undefined>;
5
+ image: import("@angular/core").InputSignal<Image | undefined>;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<AutosuggestOptionComponent, never>;
7
+ static ɵcmp: i0.ɵɵComponentDeclaration<AutosuggestOptionComponent, "ndw-autosuggest-option", never, { "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "image": { "alias": "image"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
19
8
  }
@@ -1,2 +1 @@
1
1
  export * from './autosuggest-option.component';
2
- export * from './base-autosuggest-option.component';
@@ -1,37 +1,6 @@
1
- import { AfterViewInit, ElementRef, OnDestroy, QueryList, TemplateRef } from '@angular/core';
2
- import { ActiveDescendantKeyManager } from '@angular/cdk/a11y';
3
- import { AutosuggestOption, AutosuggestOptions, AutosuggestOptionComponentType } from '../autosuggest-option/autosuggest-option.model';
1
+ import { CoreAutosuggestPanelComponent } from '@ndwnu/core';
4
2
  import * as i0 from "@angular/core";
5
- export declare class AutosuggestPanelComponent<T> implements AfterViewInit, OnDestroy {
6
- readonly suggestions: import("@angular/core").InputSignal<AutosuggestOptions<T>>;
7
- readonly enableAddOption: import("@angular/core").InputSignal<boolean>;
8
- readonly maxResults: import("@angular/core").InputSignal<number>;
9
- readonly noResultText: import("@angular/core").InputSignal<string>;
10
- readonly displayWith: import("@angular/core").InputSignal<((value: AutosuggestOption<T>) => string) | undefined>;
11
- readonly opened: import("@angular/core").OutputEmitterRef<void>;
12
- readonly closed: import("@angular/core").OutputEmitterRef<void>;
13
- readonly optionSelected: import("@angular/core").OutputEmitterRef<T | null>;
14
- readonly addOption: import("@angular/core").OutputEmitterRef<string>;
15
- items: QueryList<AutosuggestOptionComponentType<T>>;
16
- readonly template: import("@angular/core").Signal<TemplateRef<any>>;
17
- readonly panel: import("@angular/core").Signal<ElementRef<HTMLDivElement>>;
18
- readonly searchTerm: import("@angular/core").WritableSignal<string>;
19
- readonly slicedOptions: import("@angular/core").Signal<T[]>;
20
- readonly hasMoreResults: import("@angular/core").Signal<boolean>;
21
- readonly numberOfLeftOverResults: import("@angular/core").Signal<number>;
22
- keyManager: ActiveDescendantKeyManager<AutosuggestOptionComponentType<T>> | undefined;
23
- showPanel: boolean;
24
- id: string;
25
- isOpen: boolean;
26
- private readonly changeDetectorRef;
27
- constructor();
28
- ngAfterViewInit(): void;
29
- ngOnDestroy(): void;
30
- getLabelOption(option: AutosuggestOption<T>): string;
31
- setScrollTop(scrollTop: number): void;
32
- setVisibility(): void;
33
- emitSelectEvent(option: AutosuggestOptionComponentType<T>): void;
34
- addNewOption(value: string): void;
35
- static ɵfac: i0.ɵɵFactoryDeclaration<AutosuggestPanelComponent<any>, never>;
36
- static ɵcmp: i0.ɵɵComponentDeclaration<AutosuggestPanelComponent<any>, "ndw-autosuggest", ["apAutocomplete"], { "suggestions": { "alias": "suggestions"; "required": false; "isSignal": true; }; "enableAddOption": { "alias": "enableAddOption"; "required": false; "isSignal": true; }; "maxResults": { "alias": "maxResults"; "required": false; "isSignal": true; }; "noResultText": { "alias": "noResultText"; "required": false; "isSignal": true; }; "displayWith": { "alias": "displayWith"; "required": false; "isSignal": true; }; }, { "opened": "opened"; "closed": "closed"; "optionSelected": "optionSelected"; "addOption": "addOption"; }, never, never, true, never>;
3
+ export declare class AutosuggestPanelComponent extends CoreAutosuggestPanelComponent {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<AutosuggestPanelComponent, never>;
5
+ static ɵcmp: i0.ɵɵComponentDeclaration<AutosuggestPanelComponent, "ndw-autosuggest", never, {}, {}, never, never, true, never>;
37
6
  }
@@ -0,0 +1 @@
1
+ export * from './autosuggest-panel.component';
@@ -1,71 +1,9 @@
1
- import { AfterViewInit, OnDestroy } from '@angular/core';
2
- import { ControlValueAccessor } from '@angular/forms';
3
- import { AutosuggestOptionComponentType } from './autosuggest-option/autosuggest-option.model';
1
+ import { CoreAutosuggestDirective } from '@ndwnu/core';
4
2
  import { AutosuggestPanelComponent } from './autosuggest-panel/autosuggest-panel.component';
5
3
  import * as i0 from "@angular/core";
6
- export declare class AutosuggestDirective<T> implements ControlValueAccessor, AfterViewInit, OnDestroy {
7
- readonly ndwAutosuggest: import("@angular/core").InputSignal<AutosuggestPanelComponent<T>>;
8
- readonly filter: import("@angular/core").OutputEmitterRef<string>;
9
- readonly placeholder: import("@angular/core").InputSignal<string>;
10
- private overlayAttached;
11
- private overlayRef;
12
- private portal;
13
- private previousValue;
14
- private closingActionsSubscription;
15
- private keydownSubscription;
16
- private canOpenOnNextFocus;
17
- private valueOnAttach;
18
- private valueOnLastKeydown;
19
- private readonly closeKeyEventStream;
20
- private readonly zone;
21
- private readonly element;
22
- private readonly viewContainerRef;
23
- private readonly overlay;
24
- private readonly changeDetectorRef;
25
- private readonly document;
26
- private readonly viewportRuler;
27
- private readonly destroyRef;
28
- get panelOpen(): boolean;
29
- get activeOption(): AutosuggestOptionComponentType<T> | null;
30
- get autosuggest(): AutosuggestPanelComponent<T>;
31
- private get panelClosingActions();
32
- private readonly optionSelections;
33
- ngAfterViewInit(): void;
34
- ngOnDestroy(): void;
35
- openPanel(valueOnAttach?: string): void;
36
- closePanel(): void;
37
- handleFocus(): void;
38
- writeValue(value: unknown): void;
39
- registerOnChange(fn: (value: unknown) => unknown): void;
40
- registerOnTouched(fn: () => unknown): void;
41
- clearValue(): void;
42
- handleClick(): void;
43
- handleKeydown(event: KeyboardEvent): void;
44
- handleInput(event: KeyboardEvent): void;
45
- setDisabledState(isDisabled: boolean): void;
46
- private readonly handlePanelKeydown;
47
- private readonly windowBlurHandler;
48
- onChange: (value: unknown) => void;
49
- onTouched: () => void;
50
- private destroyPanel;
51
- private attachOverlay;
52
- private initKeydownEvents;
53
- private getOverlayConfig;
54
- private getHostWidth;
55
- private bindingElement;
56
- private getOverlayPosition;
57
- private resetActiveItem;
58
- private blur;
59
- private getOutsideClickStream;
60
- private subscribeToClosingActions;
61
- private setValueAndClose;
62
- private assignOptionValue;
63
- private getDisplayValue;
64
- private updateNativeInputValue;
65
- private scrollToOption;
66
- private clearPreviousSelectedOption;
67
- private canOpen;
68
- private getWindow;
69
- static ɵfac: i0.ɵɵFactoryDeclaration<AutosuggestDirective<any>, never>;
70
- static ɵdir: i0.ɵɵDirectiveDeclaration<AutosuggestDirective<any>, "input[ndwAutosuggest], textarea[ndwAutosuggest]", ["ndwAutosuggestTrigger"], { "ndwAutosuggest": { "alias": "ndwAutosuggest"; "required": true; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; }, { "filter": "filter"; }, never, never, true, never>;
4
+ export declare class AutosuggestDirective extends CoreAutosuggestDirective<AutosuggestPanelComponent> {
5
+ readonly ndwAutosuggest: import("@angular/core").InputSignal<AutosuggestPanelComponent>;
6
+ get autosuggest(): AutosuggestPanelComponent;
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<AutosuggestDirective, never>;
8
+ static ɵdir: i0.ɵɵDirectiveDeclaration<AutosuggestDirective, "input[ndwAutosuggest], textarea[ndwAutosuggest]", never, { "ndwAutosuggest": { "alias": "ndwAutosuggest"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
71
9
  }
@@ -1,5 +1,5 @@
1
+ export { AutosuggestOption, AutosuggestOptions } from '@ndwnu/core';
1
2
  export * from './autosuggest.directive';
2
- export * from './autosuggest-option/autosuggest-option.model';
3
- export * from './autosuggest-option/autosuggest-option.component';
4
- export * from './autosuggest-panel/autosuggest-panel.component';
5
- export * from './autosuggest-add-option/autosuggest-add-option.component';
3
+ export * from './autosuggest-option';
4
+ export * from './autosuggest-panel';
5
+ export * from './autosuggest-add-option';
@@ -4,3 +4,4 @@ export declare enum FormFieldElement {
4
4
  Select = "select",
5
5
  Textarea = "textarea"
6
6
  }
7
+ export type CheckType = 'checkbox' | 'radio';
@@ -0,0 +1,3 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare const minDateValidator: (min: Date) => ValidatorFn;
3
+ export declare const maxDateValidator: (max: Date) => ValidatorFn;
@@ -1,5 +1,6 @@
1
1
  export declare function createYearRange(minDate: Date, maxDate: Date): number[];
2
- export declare function createMonthOptions(monthLabels: string[]): {
2
+ export declare function createMonthOptions(monthLabels: string[], year: number, minDate: Date, maxDate: Date): {
3
3
  label: string;
4
4
  value: number;
5
+ disabled: boolean;
5
6
  }[];
@@ -12,6 +12,7 @@ export declare class MonthInputComponent implements ControlValueAccessor, OnInit
12
12
  readonly minDate: import("@angular/core").InputSignal<Date>;
13
13
  readonly maxDate: import("@angular/core").InputSignal<Date>;
14
14
  readonly monthLabels: import("@angular/core").InputSignal<string[]>;
15
+ readonly addValidators: import("@angular/core").InputSignal<boolean>;
15
16
  readonly disabled: import("@angular/core").ModelSignal<boolean>;
16
17
  readonly readonly: import("@angular/core").InputSignal<boolean>;
17
18
  protected readonly selectedYear: import("@angular/core").ModelSignal<number>;
@@ -23,7 +24,9 @@ export declare class MonthInputComponent implements ControlValueAccessor, OnInit
23
24
  protected readonly months: import("@angular/core").Signal<{
24
25
  label: string;
25
26
  value: number;
27
+ disabled: boolean;
26
28
  }[]>;
29
+ protected readonly isYearValid: import("@angular/core").Signal<boolean>;
27
30
  readonly input: import("@angular/core").Signal<InputDirective | undefined>;
28
31
  protected showMonthPicker: boolean;
29
32
  private onChange;
@@ -40,5 +43,5 @@ export declare class MonthInputComponent implements ControlValueAccessor, OnInit
40
43
  protected onKeyDown(event: KeyboardEvent): void;
41
44
  private adjustMonth;
42
45
  static ɵfac: i0.ɵɵFactoryDeclaration<MonthInputComponent, never>;
43
- static ɵcmp: i0.ɵɵComponentDeclaration<MonthInputComponent, "ndw-month-input", never, { "required": { "alias": "required"; "required": false; "isSignal": true; }; "showMonthPickerLabel": { "alias": "showMonthPickerLabel"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "yearPlaceholder": { "alias": "yearPlaceholder"; "required": false; "isSignal": true; }; "minDate": { "alias": "minDate"; "required": false; "isSignal": true; }; "maxDate": { "alias": "maxDate"; "required": false; "isSignal": true; }; "monthLabels": { "alias": "monthLabels"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "selectedYear": { "alias": "selectedYear"; "required": false; "isSignal": true; }; "selectedMonth": { "alias": "selectedMonth"; "required": false; "isSignal": true; }; }, { "disabled": "disabledChange"; "selectedYear": "selectedYearChange"; "selectedMonth": "selectedMonthChange"; }, never, never, true, never>;
46
+ static ɵcmp: i0.ɵɵComponentDeclaration<MonthInputComponent, "ndw-month-input", never, { "required": { "alias": "required"; "required": false; "isSignal": true; }; "showMonthPickerLabel": { "alias": "showMonthPickerLabel"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "yearPlaceholder": { "alias": "yearPlaceholder"; "required": false; "isSignal": true; }; "minDate": { "alias": "minDate"; "required": false; "isSignal": true; }; "maxDate": { "alias": "maxDate"; "required": false; "isSignal": true; }; "monthLabels": { "alias": "monthLabels"; "required": false; "isSignal": true; }; "addValidators": { "alias": "addValidators"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "selectedYear": { "alias": "selectedYear"; "required": false; "isSignal": true; }; "selectedMonth": { "alias": "selectedMonth"; "required": false; "isSignal": true; }; }, { "disabled": "disabledChange"; "selectedYear": "selectedYearChange"; "selectedMonth": "selectedMonthChange"; }, never, never, true, never>;
44
47
  }
@@ -4,6 +4,7 @@ export declare class OptionComponent {
4
4
  label: import("@angular/core").InputSignal<string>;
5
5
  description: import("@angular/core").InputSignal<string | undefined>;
6
6
  required: import("@angular/core").InputSignal<boolean>;
7
+ disabled: import("@angular/core").InputSignal<boolean>;
7
8
  static ɵfac: i0.ɵɵFactoryDeclaration<OptionComponent, never>;
8
- static ɵcmp: i0.ɵɵComponentDeclaration<OptionComponent, "ndw-option", never, { "value": { "alias": "value"; "required": true; "isSignal": true; }; "label": { "alias": "label"; "required": true; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<OptionComponent, "ndw-option", never, { "value": { "alias": "value"; "required": true; "isSignal": true; }; "label": { "alias": "label"; "required": true; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
9
10
  }
@@ -1,13 +1,14 @@
1
1
  import { ControlValueAccessor } from '@angular/forms';
2
+ import { CheckableComponent } from '@ndwnu/core';
2
3
  import * as i0 from "@angular/core";
3
- export declare class RadioButtonComponent implements ControlValueAccessor {
4
+ export declare class RadioButtonComponent implements ControlValueAccessor, CheckableComponent {
4
5
  checked: import("@angular/core").ModelSignal<boolean>;
5
6
  disabled: import("@angular/core").ModelSignal<boolean>;
6
7
  error: import("@angular/core").InputSignal<boolean>;
7
8
  success: import("@angular/core").InputSignal<boolean>;
8
- name: import("@angular/core").ModelSignal<string>;
9
9
  required: import("@angular/core").InputSignal<boolean>;
10
10
  value: import("@angular/core").ModelSignal<unknown>;
11
+ name: import("@angular/core").WritableSignal<string | undefined>;
11
12
  uuid: `${string}-${string}-${string}-${string}-${string}`;
12
13
  onInputChange(event: Event): void;
13
14
  writeValue(value: boolean): void;
@@ -15,5 +16,5 @@ export declare class RadioButtonComponent implements ControlValueAccessor {
15
16
  registerOnTouched(): void;
16
17
  setDisabledState?(isDisabled: boolean): void;
17
18
  static ɵfac: i0.ɵɵFactoryDeclaration<RadioButtonComponent, never>;
18
- static ɵcmp: i0.ɵɵComponentDeclaration<RadioButtonComponent, "ndw-radio-button", never, { "checked": { "alias": "checked"; "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; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; "disabled": "disabledChange"; "name": "nameChange"; "value": "valueChange"; }, never, ["*"], true, never>;
19
+ static ɵcmp: i0.ɵɵComponentDeclaration<RadioButtonComponent, "ndw-radio-button", never, { "checked": { "alias": "checked"; "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; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; "disabled": "disabledChange"; "value": "valueChange"; }, never, ["*"], true, never>;
19
20
  }
@@ -11,8 +11,6 @@ export declare class RadioGroupComponent implements AfterContentInit, ControlVal
11
11
  registerOnChange(fn: (value: unknown) => void): void;
12
12
  registerOnTouched(): void;
13
13
  setDisabledState?(isDisabled: boolean): void;
14
- private setRadioButtonsName;
15
- private handleCheckedChange;
16
14
  static ɵfac: i0.ɵɵFactoryDeclaration<RadioGroupComponent, never>;
17
15
  static ɵcmp: i0.ɵɵComponentDeclaration<RadioGroupComponent, "ndw-radio-group", never, {}, {}, ["radioButtons"], ["*"], true, never>;
18
16
  }
@@ -16,11 +16,14 @@ export * from './form-field';
16
16
  export * from './icon';
17
17
  export * from './layout';
18
18
  export * from './layout-banners';
19
+ export * from './list';
20
+ export * from './list-item';
19
21
  export * from './loader';
20
22
  export * from './main-navigation';
21
23
  export * from './map-button';
22
24
  export * from './map-display';
23
25
  export * from './map-display/map-display-option';
26
+ export * from './map-legend';
24
27
  export * from './modal';
25
28
  export * from './multi-select';
26
29
  export * from './pill';
@@ -30,6 +33,7 @@ export * from './splitter';
30
33
  export * from './summary-card';
31
34
  export * from './tab';
32
35
  export * from './tab-group';
36
+ export * from './table';
33
37
  export * from './tag';
34
38
  export * from './toast';
35
39
  export * from './tooltip';
@@ -0,0 +1 @@
1
+ export * from './list.component';
@@ -0,0 +1,11 @@
1
+ import { AfterContentInit } from '@angular/core';
2
+ import { ListItemComponent } from '../list-item';
3
+ import * as i0 from "@angular/core";
4
+ export declare class ListComponent implements AfterContentInit {
5
+ #private;
6
+ elevated: import("@angular/core").InputSignal<boolean>;
7
+ listItems: import("@angular/core").Signal<readonly ListItemComponent[]>;
8
+ ngAfterContentInit(): void;
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<ListComponent, never>;
10
+ static ɵcmp: i0.ɵɵComponentDeclaration<ListComponent, "ndw-list", never, { "elevated": { "alias": "elevated"; "required": false; "isSignal": true; }; }, {}, ["listItems"], ["*"], true, never>;
11
+ }
@@ -0,0 +1 @@
1
+ export * from './list-item.component';
@@ -0,0 +1,34 @@
1
+ import { CheckableComponent } from '@ndwnu/core';
2
+ import { CheckType, RadioButtonComponent } from '../form-field';
3
+ import { PillColor } from '../pill';
4
+ import * as i0 from "@angular/core";
5
+ export declare class ListItemComponent implements CheckableComponent {
6
+ #private;
7
+ active: import("@angular/core").ModelSignal<boolean>;
8
+ badgeValue: import("@angular/core").InputSignal<number | undefined>;
9
+ buttonIcon: import("@angular/core").InputSignal<string | undefined>;
10
+ buttonLabel: import("@angular/core").InputSignal<string | undefined>;
11
+ checkable: import("@angular/core").InputSignal<boolean>;
12
+ checkType: import("@angular/core").InputSignal<CheckType>;
13
+ collapsible: import("@angular/core").InputSignal<boolean>;
14
+ disabled: import("@angular/core").InputSignal<boolean>;
15
+ indented: import("@angular/core").InputSignal<boolean>;
16
+ pillColor: import("@angular/core").InputSignal<PillColor>;
17
+ pillLabel: import("@angular/core").InputSignal<string | undefined>;
18
+ prefixIcon: import("@angular/core").InputSignal<string | undefined>;
19
+ showButton: import("@angular/core").InputSignal<boolean>;
20
+ subtitle: import("@angular/core").InputSignal<string | undefined>;
21
+ title: import("@angular/core").InputSignal<string | undefined>;
22
+ buttonClicked: import("@angular/core").OutputEmitterRef<void>;
23
+ checked: import("@angular/core").ModelSignal<boolean>;
24
+ expanded: import("@angular/core").ModelSignal<boolean>;
25
+ radioButton: import("@angular/core").Signal<RadioButtonComponent | undefined>;
26
+ name: import("@angular/core").WritableSignal<string | undefined>;
27
+ actionable: import("@angular/core").Signal<boolean>;
28
+ constructor();
29
+ onButtonClick(event: Event): void;
30
+ onCheckClick(event: Event): void;
31
+ onListItemSelect(): void;
32
+ static ɵfac: i0.ɵɵFactoryDeclaration<ListItemComponent, never>;
33
+ static ɵcmp: i0.ɵɵComponentDeclaration<ListItemComponent, "ndw-list-item", never, { "active": { "alias": "active"; "required": false; "isSignal": true; }; "badgeValue": { "alias": "badgeValue"; "required": false; "isSignal": true; }; "buttonIcon": { "alias": "buttonIcon"; "required": false; "isSignal": true; }; "buttonLabel": { "alias": "buttonLabel"; "required": false; "isSignal": true; }; "checkable": { "alias": "checkable"; "required": false; "isSignal": true; }; "checkType": { "alias": "checkType"; "required": false; "isSignal": true; }; "collapsible": { "alias": "collapsible"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "indented": { "alias": "indented"; "required": false; "isSignal": true; }; "pillColor": { "alias": "pillColor"; "required": false; "isSignal": true; }; "pillLabel": { "alias": "pillLabel"; "required": false; "isSignal": true; }; "prefixIcon": { "alias": "prefixIcon"; "required": false; "isSignal": true; }; "showButton": { "alias": "showButton"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "expanded": { "alias": "expanded"; "required": false; "isSignal": true; }; }, { "active": "activeChange"; "buttonClicked": "buttonClicked"; "checked": "checkedChange"; "expanded": "expandedChange"; }, never, ["*"], true, never>;
34
+ }
@@ -10,7 +10,7 @@ export declare class MainNavigationHeaderComponent {
10
10
  themeImagePath: import("@angular/core").InputSignal<string>;
11
11
  environment: import("@angular/core").InputSignal<Environment | undefined>;
12
12
  isMobileMenuOpen: import("@angular/core").ModelSignal<boolean>;
13
- environmentColor: import("@angular/core").Signal<"blue" | "green" | "yellow" | "gray">;
13
+ environmentColor: import("@angular/core").Signal<"blue" | "gray" | "green" | "yellow">;
14
14
  toggleMobileMenu(): void;
15
15
  static ɵfac: i0.ɵɵFactoryDeclaration<MainNavigationHeaderComponent, never>;
16
16
  static ɵcmp: i0.ɵɵComponentDeclaration<MainNavigationHeaderComponent, "ndw-main-navigation-header", never, { "applicationName": { "alias": "applicationName"; "required": true; "isSignal": true; }; "closeButtonLabel": { "alias": "closeButtonLabel"; "required": true; "isSignal": true; }; "isExpanded": { "alias": "isExpanded"; "required": true; "isSignal": true; }; "isMobile": { "alias": "isMobile"; "required": true; "isSignal": true; }; "menuButtonLabel": { "alias": "menuButtonLabel"; "required": true; "isSignal": true; }; "theme": { "alias": "theme"; "required": true; "isSignal": true; }; "themeImagePath": { "alias": "themeImagePath"; "required": true; "isSignal": true; }; "environment": { "alias": "environment"; "required": false; "isSignal": true; }; "isMobileMenuOpen": { "alias": "isMobileMenuOpen"; "required": true; "isSignal": true; }; }, { "isMobileMenuOpen": "isMobileMenuOpenChange"; }, never, never, true, never>;
@@ -1,14 +1,14 @@
1
1
  import * as i0 from "@angular/core";
2
2
  export declare class MapButtonComponent {
3
3
  #private;
4
- readonly icon: import("@angular/core").InputSignal<"search" | "direction" | "gps" | "high-res" | "layers" | "polygon" | "zoom-in" | "zoom-out" | "hectometer" | "low-res" | "zoom-to-content">;
4
+ readonly icon: import("@angular/core").InputSignal<"search" | "direction" | "gps" | "high-res" | "layers" | "polygon" | "zoom-in" | "zoom-out" | "add-traffic-sign" | "add-zone" | "hectometer" | "low-res" | "zoom-to-content">;
5
+ readonly active: import("@angular/core").InputSignal<boolean>;
5
6
  readonly ariaLabel: import("@angular/core").InputSignal<string | undefined>;
6
7
  readonly disabled: import("@angular/core").InputSignal<boolean>;
7
- readonly active: import("@angular/core").InputSignal<boolean>;
8
8
  readonly clicked: import("@angular/core").OutputEmitterRef<void>;
9
9
  protected readonly buttonIcon: import("@angular/core").Signal<string>;
10
10
  protected readonly svgIcon: import("@angular/core").Signal<string | undefined>;
11
11
  protected readonly iconLabel: import("@angular/core").Signal<string>;
12
12
  static ɵfac: i0.ɵɵFactoryDeclaration<MapButtonComponent, never>;
13
- static ɵcmp: i0.ɵɵComponentDeclaration<MapButtonComponent, "ndw-map-button", never, { "icon": { "alias": "icon"; "required": true; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; }, { "clicked": "clicked"; }, never, ["*"], true, never>;
13
+ static ɵcmp: i0.ɵɵComponentDeclaration<MapButtonComponent, "ndw-map-button", never, { "icon": { "alias": "icon"; "required": true; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "clicked": "clicked"; }, never, ["*"], true, never>;
14
14
  }
@@ -1,4 +1,4 @@
1
1
  export declare const fontMapButtonIcons: readonly ["direction", "gps", "high-res", "layers", "polygon", "search", "zoom-in", "zoom-out"];
2
- export declare const svgMapButtonIcons: readonly ["hectometer", "low-res", "zoom-to-content"];
3
- export declare const mapButtonIcons: readonly ["direction", "gps", "high-res", "layers", "polygon", "search", "zoom-in", "zoom-out", "hectometer", "low-res", "zoom-to-content"];
2
+ export declare const svgMapButtonIcons: readonly ["add-traffic-sign", "add-zone", "hectometer", "low-res", "zoom-to-content"];
3
+ export declare const mapButtonIcons: readonly ["direction", "gps", "high-res", "layers", "polygon", "search", "zoom-in", "zoom-out", "add-traffic-sign", "add-zone", "hectometer", "low-res", "zoom-to-content"];
4
4
  export type MapButtonIcon = (typeof mapButtonIcons)[number];
@@ -7,7 +7,7 @@ export declare class MapDisplayComponent implements OnInit {
7
7
  backgroundsTitle: import("@angular/core").InputSignal<string>;
8
8
  layersTitle: import("@angular/core").InputSignal<string>;
9
9
  enableClearLayers: import("@angular/core").InputSignal<boolean>;
10
- layerOptionType: import("@angular/core").InputSignal<"radio" | "checkbox">;
10
+ layerOptionType: import("@angular/core").InputSignal<"checkbox" | "radio">;
11
11
  backgroundOptions: import("@angular/core").InputSignalWithTransform<MapBackgroundOption[], MapBackgroundOption[]>;
12
12
  layerOptions: import("@angular/core").InputSignalWithTransform<MapDisplayOption[], MapDisplayOption[]>;
13
13
  readonly backgroundChange: import("@angular/core").OutputEmitterRef<MapBackgroundOption>;
@@ -0,0 +1,2 @@
1
+ export * from './map-legend.component';
2
+ export * from './map-legend.model';
@@ -0,0 +1,9 @@
1
+ import { MapLegendOptionGroup } from '../map-legend.model';
2
+ import * as i0 from "@angular/core";
3
+ export declare class MapLegendGroupComponent {
4
+ readonly group: import("@angular/core").InputSignal<MapLegendOptionGroup>;
5
+ readonly singleGroup: import("@angular/core").InputSignal<boolean>;
6
+ readonly index: import("@angular/core").InputSignal<number>;
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<MapLegendGroupComponent, never>;
8
+ static ɵcmp: i0.ɵɵComponentDeclaration<MapLegendGroupComponent, "ndw-map-legend-group", never, { "group": { "alias": "group"; "required": true; "isSignal": true; }; "singleGroup": { "alias": "singleGroup"; "required": false; "isSignal": true; }; "index": { "alias": "index"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
9
+ }
@@ -0,0 +1,7 @@
1
+ import { MapLegendOption } from '../map-legend.model';
2
+ import * as i0 from "@angular/core";
3
+ export declare class MapLegendOptionComponent {
4
+ readonly option: import("@angular/core").InputSignal<MapLegendOption>;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<MapLegendOptionComponent, never>;
6
+ static ɵcmp: i0.ɵɵComponentDeclaration<MapLegendOptionComponent, "ndw-map-legend-option", never, { "option": { "alias": "option"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
7
+ }
@@ -0,0 +1,17 @@
1
+ import { MapLegendOptionGroup, MapLegendViewMode } from './map-legend.model';
2
+ import * as i0 from "@angular/core";
3
+ export declare class MapLegendComponent {
4
+ readonly groups: import("@angular/core").InputSignal<MapLegendOptionGroup[]>;
5
+ readonly icon: import("@angular/core").InputSignal<string>;
6
+ readonly title: import("@angular/core").InputSignal<string>;
7
+ readonly viewMode: import("@angular/core").InputSignal<MapLegendViewMode>;
8
+ readonly open: import("@angular/core").ModelSignal<boolean>;
9
+ readonly htmlIsRendered: import("@angular/core").WritableSignal<boolean>;
10
+ readonly showPopover: import("@angular/core").Signal<boolean>;
11
+ readonly isDropdownViewMode: import("@angular/core").Signal<boolean>;
12
+ readonly isFixedViewMode: import("@angular/core").Signal<boolean>;
13
+ readonly hasJustOneGroup: import("@angular/core").Signal<boolean>;
14
+ constructor();
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<MapLegendComponent, never>;
16
+ static ɵcmp: i0.ɵɵComponentDeclaration<MapLegendComponent, "ndw-map-legend", never, { "groups": { "alias": "groups"; "required": true; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "viewMode": { "alias": "viewMode"; "required": false; "isSignal": true; }; "open": { "alias": "open"; "required": false; "isSignal": true; }; }, { "open": "openChange"; }, never, never, true, never>;
17
+ }
@@ -0,0 +1,33 @@
1
+ export type MapLegendOptionType = 'image' | 'line' | 'circle' | 'polygon' | 'icon';
2
+ export interface BaseMapLegendOption {
3
+ type: MapLegendOptionType;
4
+ label: string;
5
+ }
6
+ export interface ImageMapLegendOption extends BaseMapLegendOption {
7
+ type: 'image';
8
+ src: string;
9
+ objectFit?: 'contain' | 'cover';
10
+ }
11
+ export interface LineMapLegendOption extends BaseMapLegendOption {
12
+ type: 'line';
13
+ color: string;
14
+ fillMode: 'solid' | 'dashed';
15
+ }
16
+ export interface CircleMapLegendOption extends BaseMapLegendOption {
17
+ type: 'circle';
18
+ color: string;
19
+ }
20
+ export interface PolygonMapLegendOption extends BaseMapLegendOption {
21
+ type: 'polygon';
22
+ color: string;
23
+ }
24
+ export interface IconMapLegendOption extends BaseMapLegendOption {
25
+ type: 'icon';
26
+ iconName: string;
27
+ }
28
+ export type MapLegendOption = ImageMapLegendOption | LineMapLegendOption | CircleMapLegendOption | PolygonMapLegendOption | IconMapLegendOption;
29
+ export interface MapLegendOptionGroup {
30
+ label?: string;
31
+ options: MapLegendOption[];
32
+ }
33
+ export type MapLegendViewMode = 'dropdown' | 'fixed';
@@ -1,5 +1,8 @@
1
+ import { Image } from '../../models';
1
2
  export interface CheckboxData {
2
3
  id: string | number;
3
4
  label: string;
4
5
  value: boolean;
6
+ icon?: string;
7
+ image?: Image;
5
8
  }