@i-cell/ids-angular 0.2.17 → 0.2.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/i-cell-ids-angular-forms.mjs +798 -250
- package/fesm2022/i-cell-ids-angular-forms.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-overlay-panel.mjs +8 -17
- package/fesm2022/i-cell-ids-angular-overlay-panel.mjs.map +1 -1
- package/forms/index.d.ts +206 -94
- package/overlay-panel/index.d.ts +3 -7
- package/package.json +42 -42
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { InjectionToken,
|
|
2
|
+
import { InjectionToken, model, input, computed, contentChild, viewChild, effect, untracked, ChangeDetectionStrategy, ViewEncapsulation, Component } from '@angular/core';
|
|
3
3
|
import { IdsSize, ComponentBaseWithDefaults } from '@i-cell/ids-angular/core';
|
|
4
4
|
import * as i2 from '@angular/cdk/a11y';
|
|
5
5
|
import { CdkTrapFocus, A11yModule } from '@angular/cdk/a11y';
|
|
@@ -64,22 +64,17 @@ class IdsOverlayPanelComponent extends ComponentBaseWithDefaults {
|
|
|
64
64
|
get _hostName() {
|
|
65
65
|
return 'overlay-panel';
|
|
66
66
|
}
|
|
67
|
-
get isOpen() {
|
|
68
|
-
return this._open();
|
|
69
|
-
}
|
|
70
67
|
constructor() {
|
|
71
68
|
super();
|
|
72
69
|
this._defaultConfig = this._getDefaultConfig(defaultConfig, IDS_OVERLAY_PANEL_DEFAULT_CONFIG);
|
|
73
|
-
this.open =
|
|
70
|
+
this.open = model(false, ...(ngDevMode ? [{ debugName: "open" }] : []));
|
|
74
71
|
this.origin = input.required(...(ngDevMode ? [{ debugName: "origin" }] : []));
|
|
75
|
-
this.closed = output();
|
|
76
72
|
this.positions = input(this._defaultConfig.positions, ...(ngDevMode ? [{ debugName: "positions" }] : []));
|
|
77
73
|
this.appearance = input(this._defaultConfig.appearance, ...(ngDevMode ? [{ debugName: "appearance" }] : []));
|
|
78
74
|
this.size = input(this._defaultConfig.size, ...(ngDevMode ? [{ debugName: "size" }] : []));
|
|
79
75
|
this.variant = input(this._defaultConfig.variant, ...(ngDevMode ? [{ debugName: "variant" }] : []));
|
|
80
76
|
this.panelClasses = input('', ...(ngDevMode ? [{ debugName: "panelClasses" }] : []));
|
|
81
77
|
this.width = input(...(ngDevMode ? [undefined, { debugName: "width" }] : []));
|
|
82
|
-
this._open = linkedSignal(() => this.open());
|
|
83
78
|
this._hasCdkMenu = computed(() => !!this._cdkMenu(), ...(ngDevMode ? [{ debugName: "_hasCdkMenu" }] : []));
|
|
84
79
|
this._cdkMenu = contentChild(CdkMenu, ...(ngDevMode ? [{ debugName: "_cdkMenu", descendants: true }] : [{ descendants: true }]));
|
|
85
80
|
this._overlayRef = viewChild(CdkConnectedOverlay, ...(ngDevMode ? [{ debugName: "_overlayRef" }] : []));
|
|
@@ -108,19 +103,15 @@ class IdsOverlayPanelComponent extends ComponentBaseWithDefaults {
|
|
|
108
103
|
});
|
|
109
104
|
}
|
|
110
105
|
toggle() {
|
|
111
|
-
this.
|
|
106
|
+
this.open.update((open) => !open);
|
|
112
107
|
}
|
|
113
|
-
|
|
114
|
-
if (this.
|
|
115
|
-
this.
|
|
116
|
-
this.closed.emit();
|
|
108
|
+
_close() {
|
|
109
|
+
if (this.open()) {
|
|
110
|
+
this.open.set(false);
|
|
117
111
|
}
|
|
118
112
|
}
|
|
119
|
-
_handleDetach() {
|
|
120
|
-
this.closed.emit();
|
|
121
|
-
}
|
|
122
113
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: IdsOverlayPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
123
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.1.7", type: IdsOverlayPanelComponent, isStandalone: true, selector: "ids-overlay-panel", inputs: { open: { classPropertyName: "open", publicName: "open", isSignal: true, isRequired: false, transformFunction: null }, origin: { classPropertyName: "origin", publicName: "origin", isSignal: true, isRequired: true, transformFunction: null }, positions: { classPropertyName: "positions", publicName: "positions", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "appearance", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, panelClasses: { classPropertyName: "panelClasses", publicName: "panelClasses", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null } }, outputs: {
|
|
114
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.1.7", type: IdsOverlayPanelComponent, isStandalone: true, selector: "ids-overlay-panel", inputs: { open: { classPropertyName: "open", publicName: "open", isSignal: true, isRequired: false, transformFunction: null }, origin: { classPropertyName: "origin", publicName: "origin", isSignal: true, isRequired: true, transformFunction: null }, positions: { classPropertyName: "positions", publicName: "positions", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "appearance", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, panelClasses: { classPropertyName: "panelClasses", publicName: "panelClasses", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { open: "openChange" }, queries: [{ propertyName: "_cdkMenu", first: true, predicate: CdkMenu, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "_overlayRef", first: true, predicate: CdkConnectedOverlay, descendants: true, isSignal: true }, { propertyName: "_focusTrap", first: true, predicate: CdkTrapFocus, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayPositions]=\"positions()\"\n [cdkConnectedOverlayOrigin]=\"origin()\"\n [cdkConnectedOverlayOpen]=\"open()\"\n [cdkConnectedOverlayPanelClass]=\"_hostClasses()\"\n (overlayOutsideClick)=\"_close()\"\n (detach)=\"_close()\"\n>\n <div\n cdkTrapFocus\n [ngClass]=\"[panelClasses(), _panelClasses()]\"\n >\n <ng-content/>\n </div>\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: OverlayModule }, { kind: "directive", type: i1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i2.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
124
115
|
}
|
|
125
116
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: IdsOverlayPanelComponent, decorators: [{
|
|
126
117
|
type: Component,
|
|
@@ -128,7 +119,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImpor
|
|
|
128
119
|
OverlayModule,
|
|
129
120
|
A11yModule,
|
|
130
121
|
NgClass,
|
|
131
|
-
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayPositions]=\"positions()\"\n [cdkConnectedOverlayOrigin]=\"origin()\"\n [cdkConnectedOverlayOpen]=\"
|
|
122
|
+
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayPositions]=\"positions()\"\n [cdkConnectedOverlayOrigin]=\"origin()\"\n [cdkConnectedOverlayOpen]=\"open()\"\n [cdkConnectedOverlayPanelClass]=\"_hostClasses()\"\n (overlayOutsideClick)=\"_close()\"\n (detach)=\"_close()\"\n>\n <div\n cdkTrapFocus\n [ngClass]=\"[panelClasses(), _panelClasses()]\"\n >\n <ng-content/>\n </div>\n</ng-template>\n" }]
|
|
132
123
|
}], ctorParameters: () => [] });
|
|
133
124
|
|
|
134
125
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i-cell-ids-angular-overlay-panel.mjs","sources":["../../../projects/widgets/overlay-panel/types/overlay-panel-appearance.type.ts","../../../projects/widgets/overlay-panel/types/overlay-panel-variant.type.ts","../../../projects/widgets/overlay-panel/overlay-positions.ts","../../../projects/widgets/overlay-panel/overlay-panel-defaults.ts","../../../projects/widgets/overlay-panel/overlay-panel.component.ts","../../../projects/widgets/overlay-panel/overlay-panel.component.html","../../../projects/widgets/overlay-panel/i-cell-ids-angular-overlay-panel.ts"],"sourcesContent":["export const IdsOverlayPanelAppearance = {\n FILLED: 'filled',\n OUTLINED: 'outlined',\n ELEVATED: 'elevated',\n} as const;\n\nexport type IdsOverlayPanelAppearanceType = (typeof IdsOverlayPanelAppearance)[keyof typeof IdsOverlayPanelAppearance];\n","export const IdsOverlayPanelVariant = {\n SURFACE: 'surface',\n LIGHT: 'light',\n} as const;\n\nexport type IdsOverlayPanelVariantType = (typeof IdsOverlayPanelVariant)[keyof typeof IdsOverlayPanelVariant];\n","import { ConnectedPosition } from '@angular/cdk/overlay';\n\nexport const overlayConnectedPositions: ConnectedPosition[] = [\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n },\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n },\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n },\n];\n","import { overlayConnectedPositions } from './overlay-positions';\nimport { IdsOverlayPanelAppearance, IdsOverlayPanelAppearanceType } from './types/overlay-panel-appearance.type';\nimport { IdsOverlayPanelVariant, IdsOverlayPanelVariantType } from './types/overlay-panel-variant.type';\n\nimport { ConnectedPosition } from '@angular/cdk/overlay';\nimport { InjectionToken } from '@angular/core';\nimport { IdsSize, IdsSizeType } from '@i-cell/ids-angular/core';\n\nexport interface IdsOverlayPanelDefaultConfig {\n appearance?: IdsOverlayPanelAppearanceType,\n size?: IdsSizeType,\n variant?: IdsOverlayPanelVariantType,\n positions?: ConnectedPosition[],\n}\n\nexport const IDS_OVERLAY_PANEL_DEFAULT_CONFIG = new InjectionToken<IdsOverlayPanelDefaultConfig>(\n 'IDS_OVERLAY_PANEL_DEFAULT_CONFIG',\n {\n providedIn: 'root',\n factory: IDS_OVERLAY_PANEL_DEFAULT_CONFIG_FACTORY,\n },\n);\n\nexport function IDS_OVERLAY_PANEL_DEFAULT_CONFIG_FACTORY(): Required<IdsOverlayPanelDefaultConfig> {\n return {\n appearance: IdsOverlayPanelAppearance.FILLED,\n size: IdsSize.COMPACT,\n variant: IdsOverlayPanelVariant.LIGHT,\n positions: overlayConnectedPositions,\n };\n}\n\n","import {\n IDS_OVERLAY_PANEL_DEFAULT_CONFIG,\n IDS_OVERLAY_PANEL_DEFAULT_CONFIG_FACTORY,\n IdsOverlayPanelDefaultConfig,\n} from './overlay-panel-defaults';\nimport { IdsOverlayPanelAppearanceType } from './types/overlay-panel-appearance.type';\nimport { IdsOverlayPanelVariantType } from './types/overlay-panel-variant.type';\n\nimport { A11yModule, CdkTrapFocus } from '@angular/cdk/a11y';\nimport { CdkMenu } from '@angular/cdk/menu';\nimport { OverlayModule, CdkOverlayOrigin, CdkConnectedOverlay, ConnectedPosition } from '@angular/cdk/overlay';\nimport { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n input, output, computed, contentChild,\n ElementRef,\n viewChild,\n untracked,\n effect,\n linkedSignal,\n} from '@angular/core';\nimport { IdsSizeType, ComponentBaseWithDefaults } from '@i-cell/ids-angular/core';\n\nconst defaultConfig = IDS_OVERLAY_PANEL_DEFAULT_CONFIG_FACTORY();\n\n@Component({\n selector: 'ids-overlay-panel',\n imports: [\n OverlayModule,\n A11yModule,\n NgClass,\n ],\n templateUrl: './overlay-panel.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n})\nexport class IdsOverlayPanelComponent extends ComponentBaseWithDefaults<IdsOverlayPanelDefaultConfig> {\n protected override get _hostName(): string {\n return 'overlay-panel';\n }\n\n protected readonly _defaultConfig = this._getDefaultConfig(defaultConfig, IDS_OVERLAY_PANEL_DEFAULT_CONFIG);\n\n public open = input<boolean>(false);\n public origin = input.required<CdkOverlayOrigin | ElementRef>();\n public closed = output<void>();\n public positions = input<ConnectedPosition[]>(this._defaultConfig.positions);\n\n public appearance = input<IdsOverlayPanelAppearanceType>(this._defaultConfig.appearance);\n public size = input<IdsSizeType>(this._defaultConfig.size);\n public variant = input<IdsOverlayPanelVariantType>(this._defaultConfig.variant);\n public panelClasses = input<string>('');\n public width = input<string | number>();\n\n protected _open = linkedSignal(() => this.open());\n protected _hasCdkMenu = computed(() => !!this._cdkMenu());\n\n private _cdkMenu = contentChild(CdkMenu, { descendants: true });\n private _overlayRef = viewChild(CdkConnectedOverlay);\n\n private _focusTrap = viewChild(CdkTrapFocus);\n\n public get isOpen(): boolean {\n return this._open();\n }\n\n constructor() {\n super();\n\n effect(() => {\n if (this._focusTrap()) {\n this._focusTrap()?.focusTrap.focusInitialElementWhenReady({ preventScroll: true });\n }\n });\n\n effect(() => {\n const overlayRef = this._overlayRef();\n const overlayWidth = this.width();\n\n // apply width after the overlay has been rendered\n untracked(() => {\n if (overlayRef && overlayWidth) {\n overlayRef.width = overlayWidth;\n }\n });\n });\n }\n\n public toggle(): void {\n this._open.set(!this._open());\n }\n\n protected _handleOverlayOutsideClick(): void {\n if (this._open()) {\n this._open.set(false);\n this.closed.emit();\n }\n }\n\n protected _handleDetach(): void {\n this.closed.emit();\n }\n\n protected _panelClasses = computed(() => this._getHostClasses([\n this.appearance(),\n this.size(),\n this.variant(),\n this._hasCdkMenu() ? 'has-menu' : null,\n ]),\n );\n\n protected _hostClasses = computed(() => '');\n}\n","<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayPositions]=\"positions()\"\n [cdkConnectedOverlayOrigin]=\"origin()\"\n [cdkConnectedOverlayOpen]=\"_open()\"\n [cdkConnectedOverlayPanelClass]=\"_hostClasses()\"\n (overlayOutsideClick)=\"_handleOverlayOutsideClick()\"\n (detach)=\"_handleDetach()\"\n>\n <div\n cdkTrapFocus\n [ngClass]=\"[panelClasses(), _panelClasses()]\"\n >\n <ng-content/>\n </div>\n</ng-template>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"i-cell-ids-angular-overlay-panel.mjs","sources":["../../../projects/widgets/overlay-panel/types/overlay-panel-appearance.type.ts","../../../projects/widgets/overlay-panel/types/overlay-panel-variant.type.ts","../../../projects/widgets/overlay-panel/overlay-positions.ts","../../../projects/widgets/overlay-panel/overlay-panel-defaults.ts","../../../projects/widgets/overlay-panel/overlay-panel.component.ts","../../../projects/widgets/overlay-panel/overlay-panel.component.html","../../../projects/widgets/overlay-panel/i-cell-ids-angular-overlay-panel.ts"],"sourcesContent":["export const IdsOverlayPanelAppearance = {\n FILLED: 'filled',\n OUTLINED: 'outlined',\n ELEVATED: 'elevated',\n} as const;\n\nexport type IdsOverlayPanelAppearanceType = (typeof IdsOverlayPanelAppearance)[keyof typeof IdsOverlayPanelAppearance];\n","export const IdsOverlayPanelVariant = {\n SURFACE: 'surface',\n LIGHT: 'light',\n} as const;\n\nexport type IdsOverlayPanelVariantType = (typeof IdsOverlayPanelVariant)[keyof typeof IdsOverlayPanelVariant];\n","import { ConnectedPosition } from '@angular/cdk/overlay';\n\nexport const overlayConnectedPositions: ConnectedPosition[] = [\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n },\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n },\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n },\n];\n","import { overlayConnectedPositions } from './overlay-positions';\nimport { IdsOverlayPanelAppearance, IdsOverlayPanelAppearanceType } from './types/overlay-panel-appearance.type';\nimport { IdsOverlayPanelVariant, IdsOverlayPanelVariantType } from './types/overlay-panel-variant.type';\n\nimport { ConnectedPosition } from '@angular/cdk/overlay';\nimport { InjectionToken } from '@angular/core';\nimport { IdsSize, IdsSizeType } from '@i-cell/ids-angular/core';\n\nexport interface IdsOverlayPanelDefaultConfig {\n appearance?: IdsOverlayPanelAppearanceType,\n size?: IdsSizeType,\n variant?: IdsOverlayPanelVariantType,\n positions?: ConnectedPosition[],\n}\n\nexport const IDS_OVERLAY_PANEL_DEFAULT_CONFIG = new InjectionToken<IdsOverlayPanelDefaultConfig>(\n 'IDS_OVERLAY_PANEL_DEFAULT_CONFIG',\n {\n providedIn: 'root',\n factory: IDS_OVERLAY_PANEL_DEFAULT_CONFIG_FACTORY,\n },\n);\n\nexport function IDS_OVERLAY_PANEL_DEFAULT_CONFIG_FACTORY(): Required<IdsOverlayPanelDefaultConfig> {\n return {\n appearance: IdsOverlayPanelAppearance.FILLED,\n size: IdsSize.COMPACT,\n variant: IdsOverlayPanelVariant.LIGHT,\n positions: overlayConnectedPositions,\n };\n}\n\n","import {\n IDS_OVERLAY_PANEL_DEFAULT_CONFIG,\n IDS_OVERLAY_PANEL_DEFAULT_CONFIG_FACTORY,\n IdsOverlayPanelDefaultConfig,\n} from './overlay-panel-defaults';\nimport { IdsOverlayPanelAppearanceType } from './types/overlay-panel-appearance.type';\nimport { IdsOverlayPanelVariantType } from './types/overlay-panel-variant.type';\n\nimport { A11yModule, CdkTrapFocus } from '@angular/cdk/a11y';\nimport { CdkMenu } from '@angular/cdk/menu';\nimport { OverlayModule, CdkOverlayOrigin, CdkConnectedOverlay, ConnectedPosition } from '@angular/cdk/overlay';\nimport { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n input, computed, contentChild,\n ElementRef,\n viewChild,\n untracked,\n effect,\n model,\n} from '@angular/core';\nimport { IdsSizeType, ComponentBaseWithDefaults } from '@i-cell/ids-angular/core';\n\nconst defaultConfig = IDS_OVERLAY_PANEL_DEFAULT_CONFIG_FACTORY();\n\n@Component({\n selector: 'ids-overlay-panel',\n imports: [\n OverlayModule,\n A11yModule,\n NgClass,\n ],\n templateUrl: './overlay-panel.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n})\nexport class IdsOverlayPanelComponent extends ComponentBaseWithDefaults<IdsOverlayPanelDefaultConfig> {\n protected override get _hostName(): string {\n return 'overlay-panel';\n }\n\n protected readonly _defaultConfig = this._getDefaultConfig(defaultConfig, IDS_OVERLAY_PANEL_DEFAULT_CONFIG);\n\n public open = model<boolean>(false);\n public origin = input.required<CdkOverlayOrigin | ElementRef>();\n public positions = input<ConnectedPosition[]>(this._defaultConfig.positions);\n\n public appearance = input<IdsOverlayPanelAppearanceType>(this._defaultConfig.appearance);\n public size = input<IdsSizeType>(this._defaultConfig.size);\n public variant = input<IdsOverlayPanelVariantType>(this._defaultConfig.variant);\n public panelClasses = input<string>('');\n public width = input<string | number>();\n\n protected _hasCdkMenu = computed(() => !!this._cdkMenu());\n\n private _cdkMenu = contentChild(CdkMenu, { descendants: true });\n private _overlayRef = viewChild(CdkConnectedOverlay);\n\n private _focusTrap = viewChild(CdkTrapFocus);\n\n constructor() {\n super();\n\n effect(() => {\n if (this._focusTrap()) {\n this._focusTrap()?.focusTrap.focusInitialElementWhenReady({ preventScroll: true });\n }\n });\n\n effect(() => {\n const overlayRef = this._overlayRef();\n const overlayWidth = this.width();\n\n // apply width after the overlay has been rendered\n untracked(() => {\n if (overlayRef && overlayWidth) {\n overlayRef.width = overlayWidth;\n }\n });\n });\n }\n\n public toggle(): void {\n this.open.update((open) => !open);\n }\n\n protected _close(): void {\n if (this.open()) {\n this.open.set(false);\n }\n }\n\n protected _panelClasses = computed(() => this._getHostClasses([\n this.appearance(),\n this.size(),\n this.variant(),\n this._hasCdkMenu() ? 'has-menu' : null,\n ]),\n );\n\n protected _hostClasses = computed(() => '');\n}\n","<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayPositions]=\"positions()\"\n [cdkConnectedOverlayOrigin]=\"origin()\"\n [cdkConnectedOverlayOpen]=\"open()\"\n [cdkConnectedOverlayPanelClass]=\"_hostClasses()\"\n (overlayOutsideClick)=\"_close()\"\n (detach)=\"_close()\"\n>\n <div\n cdkTrapFocus\n [ngClass]=\"[panelClasses(), _panelClasses()]\"\n >\n <ng-content/>\n </div>\n</ng-template>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
package/forms/index.d.ts
CHANGED
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import * as _angular_forms from '@angular/forms';
|
|
2
|
-
import { AbstractControl, FormGroupDirective, NgForm, NgControl, ControlEvent, ValidationErrors } from '@angular/forms';
|
|
3
|
-
import { Subject } from 'rxjs';
|
|
2
|
+
import { AbstractControl, FormGroupDirective, NgForm, NgControl, ControlValueAccessor, ControlEvent, ValidationErrors } from '@angular/forms';
|
|
3
|
+
import { Subject, Observable } from 'rxjs';
|
|
4
4
|
import * as _angular_core from '@angular/core';
|
|
5
|
-
import { InjectionToken, Injector, ElementRef,
|
|
5
|
+
import { InjectionToken, Signal, OnInit, Injector, ElementRef, AfterViewInit, OnDestroy, ResourceLoaderParams } from '@angular/core';
|
|
6
|
+
import * as _i_cell_ids_angular_forms from '@i-cell/ids-angular/forms';
|
|
6
7
|
import * as _i_cell_ids_angular_core from '@i-cell/ids-angular/core';
|
|
7
8
|
import { ComponentBase, IdsSizeType, ComponentBaseWithDefaults } from '@i-cell/ids-angular/core';
|
|
8
9
|
import { FocusOrigin } from '@angular/cdk/a11y';
|
|
10
|
+
import { CdkOverlayOrigin } from '@angular/cdk/overlay';
|
|
11
|
+
import { IdsOverlayPanelComponent } from '@i-cell/ids-angular/overlay-panel';
|
|
9
12
|
|
|
10
13
|
declare abstract class AbstractErrorStateMatcher {
|
|
11
14
|
abstract isErrorState(control: AbstractControl | null, form: FormGroupDirective | NgForm | null): boolean;
|
|
@@ -49,11 +52,34 @@ declare class SuccessStateTracker {
|
|
|
49
52
|
updateSuccessState(): void;
|
|
50
53
|
}
|
|
51
54
|
|
|
52
|
-
|
|
55
|
+
interface IdsAutocompleteDefaultConfig {
|
|
56
|
+
minChars?: number;
|
|
57
|
+
hintLoading: string;
|
|
58
|
+
hintNoResults: string;
|
|
59
|
+
hintMinChars: string;
|
|
60
|
+
hintMaxLength: string;
|
|
61
|
+
typeaheadDebounceInterval?: number;
|
|
62
|
+
}
|
|
63
|
+
declare const IDS_AUTOCOMPLETE_DEFAULT_CONFIG: InjectionToken<IdsAutocompleteDefaultConfig>;
|
|
64
|
+
declare function IDS_AUTOCOMPLETE_DEFAULT_CONFIG_FACTORY(): Required<IdsAutocompleteDefaultConfig>;
|
|
65
|
+
|
|
66
|
+
declare class IdsOptionGroupComponent extends ComponentBase {
|
|
53
67
|
protected get _hostName(): string;
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
68
|
+
private readonly _parent;
|
|
69
|
+
protected readonly _inert: boolean;
|
|
70
|
+
label: _angular_core.InputSignal<string | undefined>;
|
|
71
|
+
disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
72
|
+
protected readonly _labelId: _angular_core.Signal<string>;
|
|
73
|
+
protected readonly _hostClasses: _angular_core.Signal<string>;
|
|
74
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<IdsOptionGroupComponent, never>;
|
|
75
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<IdsOptionGroupComponent, "ids-option-group", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, never, ["ids-option, ng-container"], true, never>;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
declare class IdsOptionSelectionChange<T = unknown> {
|
|
79
|
+
source: IdsOptionComponent<T>;
|
|
80
|
+
selected: boolean;
|
|
81
|
+
isUserInput: boolean;
|
|
82
|
+
constructor(source: IdsOptionComponent<T>, selected: boolean, isUserInput?: boolean);
|
|
57
83
|
}
|
|
58
84
|
|
|
59
85
|
declare const IdsFormFieldVariant: {
|
|
@@ -62,30 +88,51 @@ declare const IdsFormFieldVariant: {
|
|
|
62
88
|
};
|
|
63
89
|
type IdsFormFieldVariantType = (typeof IdsFormFieldVariant)[keyof typeof IdsFormFieldVariant];
|
|
64
90
|
|
|
65
|
-
interface
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
}
|
|
69
|
-
declare const IDS_FIELDSET_DEFAULT_CONFIG: InjectionToken<IdsFieldsetDefaultConfig>;
|
|
70
|
-
declare function IDS_FIELDSET_DEFAULT_CONFIG_FACTORY(): Required<IdsFieldsetDefaultConfig>;
|
|
71
|
-
|
|
72
|
-
declare class IdsFieldsetMessageDirective {
|
|
73
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<IdsFieldsetMessageDirective, never>;
|
|
74
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<IdsFieldsetMessageDirective, "[idsFieldsetMessage]", never, {}, {}, never, never, true, never>;
|
|
91
|
+
interface IdsPseudoCheckboxParent<T extends string> {
|
|
92
|
+
embeddedPseudoCheckboxSize: Signal<IdsSizeType>;
|
|
93
|
+
embeddedPseudoCheckboxVariant: Signal<T>;
|
|
75
94
|
}
|
|
95
|
+
declare const IDS_PSEUDO_CHECKBOX_PARENT: InjectionToken<IdsPseudoCheckboxParent<string>>;
|
|
76
96
|
|
|
77
|
-
declare class
|
|
97
|
+
declare class IdsOptionComponent<T = unknown> extends ComponentBase implements OnInit, IdsPseudoCheckboxParent<IdsFormFieldVariantType> {
|
|
78
98
|
protected get _hostName(): string;
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
99
|
+
private readonly _parent;
|
|
100
|
+
private readonly _element;
|
|
101
|
+
readonly group: IdsOptionGroupComponent | null;
|
|
102
|
+
private _textElement;
|
|
103
|
+
selected: _angular_core.WritableSignal<boolean>;
|
|
104
|
+
private _active;
|
|
105
|
+
size: _angular_core.Signal<_i_cell_ids_angular_core.IdsSizeType>;
|
|
106
|
+
variant: _angular_core.Signal<IdsFormFieldVariantType>;
|
|
107
|
+
value: _angular_core.InputSignal<T | undefined>;
|
|
108
|
+
explicitViewValue: _angular_core.InputSignal<string | null>;
|
|
109
|
+
disabledInput: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
110
|
+
disabled: boolean;
|
|
111
|
+
protected _groupOrOptionIsDisabled: _angular_core.Signal<boolean>;
|
|
112
|
+
protected readonly _multiSelect: boolean;
|
|
113
|
+
onSelectionChange: _angular_core.OutputEmitterRef<IdsOptionSelectionChange<T>>;
|
|
114
|
+
viewValue: _angular_core.Signal<string>;
|
|
115
|
+
protected readonly _hostClasses: _angular_core.Signal<string>;
|
|
116
|
+
protected _pseudoCheckboxState: _angular_core.Signal<"unchecked" | "checked">;
|
|
117
|
+
embeddedPseudoCheckboxSize: _angular_core.Signal<_i_cell_ids_angular_core.IdsSizeType>;
|
|
118
|
+
embeddedPseudoCheckboxVariant: _angular_core.WritableSignal<"surface">;
|
|
119
|
+
constructor();
|
|
120
|
+
ngOnInit(): void;
|
|
121
|
+
protected _handleKeydown(event: KeyboardEvent): void;
|
|
122
|
+
selectViaInteraction(): void;
|
|
123
|
+
getHostElement(): HTMLElement;
|
|
124
|
+
select(emitEvent?: boolean): void;
|
|
125
|
+
deselect(emitEvent?: boolean): void;
|
|
126
|
+
focus(_origin?: FocusOrigin, options?: FocusOptions): void;
|
|
127
|
+
setActiveStyles(): void;
|
|
128
|
+
setInactiveStyles(): void;
|
|
129
|
+
getLabel(): string;
|
|
130
|
+
private _emitSelectionChangeEvent;
|
|
131
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<IdsOptionComponent<any>, never>;
|
|
132
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<IdsOptionComponent<any>, "ids-option", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "explicitViewValue": { "alias": "viewValue"; "required": false; "isSignal": true; }; "disabledInput": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "onSelectionChange": "onSelectionChange"; }, never, ["*"], true, never>;
|
|
88
133
|
}
|
|
134
|
+
declare function _countGroupLabelsBeforeOption(optionIndex: number, options: Readonly<IdsOptionComponent[]>, optionGroups: Readonly<IdsOptionGroupComponent[]>): number;
|
|
135
|
+
declare function _getOptionScrollPosition(optionOffset: number, optionHeight: number, currentScrollPosition: number, panelHeight: number): number;
|
|
89
136
|
|
|
90
137
|
declare const formFieldControlClass = "ids-form-field-control";
|
|
91
138
|
declare abstract class IdsFormFieldControl<D = unknown> extends ComponentBaseWithDefaults<D> {
|
|
@@ -125,6 +172,136 @@ declare abstract class IdsFormFieldControl<D = unknown> extends ComponentBaseWit
|
|
|
125
172
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<IdsFormFieldControl<any>, never, never, { "canHandleSuccessState": { "alias": "canHandleSuccessState"; "required": false; "isSignal": true; }; "disabledInput": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
126
173
|
}
|
|
127
174
|
|
|
175
|
+
declare class IdsAutocompleteComponent extends IdsFormFieldControl<IdsAutocompleteDefaultConfig> implements ControlValueAccessor, OnInit, AfterViewInit, OnDestroy {
|
|
176
|
+
protected get _hostName(): string;
|
|
177
|
+
protected readonly _defaultConfig: Required<IdsAutocompleteDefaultConfig>;
|
|
178
|
+
protected readonly _elementRef: ElementRef<any>;
|
|
179
|
+
private readonly _changeDetectorRef;
|
|
180
|
+
private readonly _liveAnnouncer;
|
|
181
|
+
private readonly _parentFormField;
|
|
182
|
+
protected _preferredOverlayOrigin: CdkOverlayOrigin | ElementRef | undefined;
|
|
183
|
+
protected _overlayWidth: string | number;
|
|
184
|
+
/**
|
|
185
|
+
* Minimum number of characters to initiate actual search.
|
|
186
|
+
* Warning is shown when input length is not met.
|
|
187
|
+
* (Resource loader/stream function needs to be adjusted accordingly!)
|
|
188
|
+
*/
|
|
189
|
+
minChars: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
190
|
+
/** Max length of options allowed to show. Warning is shown when available options is higher than this number */
|
|
191
|
+
maxLength: _angular_core.InputSignalWithTransform<number | null, number>;
|
|
192
|
+
multiSelect: _angular_core.InputSignal<boolean>;
|
|
193
|
+
ariaLabel: _angular_core.InputSignal<string>;
|
|
194
|
+
ariaLabelledby: _angular_core.InputSignal<string>;
|
|
195
|
+
ariaLabelClearButton: _angular_core.InputSignal<string>;
|
|
196
|
+
ariaLabelToggleButton: _angular_core.InputSignal<string>;
|
|
197
|
+
valueCompareFn: _angular_core.InputSignal<(o1: unknown, o2: unknown) => boolean>;
|
|
198
|
+
sortCompareFn: _angular_core.InputSignal<((a: string, b: string, options: Readonly<string[]>) => number) | undefined>;
|
|
199
|
+
tabIndex: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
200
|
+
typeaheadDebounceInterval: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
201
|
+
hintLoading: _angular_core.InputSignal<string>;
|
|
202
|
+
hintNoResults: _angular_core.InputSignal<string>;
|
|
203
|
+
hintMinChars: _angular_core.InputSignal<string>;
|
|
204
|
+
hintMaxLength: _angular_core.InputSignal<string>;
|
|
205
|
+
panelClasses: _angular_core.InputSignal<string>;
|
|
206
|
+
parentSize: _angular_core.Signal<_i_cell_ids_angular_core.IdsSizeType>;
|
|
207
|
+
parentVariant: _angular_core.Signal<_i_cell_ids_angular_forms.IdsFormFieldVariantType>;
|
|
208
|
+
readonly errorStateMatcher: _angular_core.WritableSignal<ErrorStateMatcher>;
|
|
209
|
+
readonly successStateMatcher: _angular_core.WritableSignal<SuccessStateMatcher>;
|
|
210
|
+
options: _angular_core.Signal<readonly IdsOptionComponent<unknown>[]>;
|
|
211
|
+
overlayPanel: _angular_core.Signal<IdsOverlayPanelComponent>;
|
|
212
|
+
onContainerClick: () => void;
|
|
213
|
+
protected _hostClasses: _angular_core.Signal<string>;
|
|
214
|
+
protected _panelClasses: _angular_core.Signal<string>;
|
|
215
|
+
private _focused;
|
|
216
|
+
private _canOpen;
|
|
217
|
+
private _panel;
|
|
218
|
+
private _keyManager?;
|
|
219
|
+
private _inputElemment;
|
|
220
|
+
protected _resource: _angular_core.ResourceRef<string[]>;
|
|
221
|
+
private _rawValue;
|
|
222
|
+
private _selectionModel?;
|
|
223
|
+
private _onChange;
|
|
224
|
+
private _onTouched;
|
|
225
|
+
protected get _empty(): boolean;
|
|
226
|
+
get selected(): string | string[] | undefined;
|
|
227
|
+
protected _searchText: _angular_core.ModelSignal<string>;
|
|
228
|
+
protected get _triggerValue(): string;
|
|
229
|
+
constructor();
|
|
230
|
+
ngOnInit(): void;
|
|
231
|
+
ngAfterViewInit(): void;
|
|
232
|
+
updateErrorAndSuccessState(): void;
|
|
233
|
+
ngOnDestroy(): void;
|
|
234
|
+
private _initKeyManager;
|
|
235
|
+
private _subscribeOptionChanges;
|
|
236
|
+
private _handleOptionChange;
|
|
237
|
+
protected _handleKeydown(event: KeyboardEvent): void;
|
|
238
|
+
private _handleClosedPanelKeydown;
|
|
239
|
+
private _handleOpenedPanelKeydown;
|
|
240
|
+
private _scrollOptionIntoView;
|
|
241
|
+
private _sortValues;
|
|
242
|
+
private _getOverlayWidth;
|
|
243
|
+
toggle(): void;
|
|
244
|
+
open(): void;
|
|
245
|
+
close(): void;
|
|
246
|
+
clear(): void;
|
|
247
|
+
writeValue(value: unknown | unknown[]): void;
|
|
248
|
+
registerOnChange(fn: () => void): void;
|
|
249
|
+
registerOnTouched(fn: () => unknown): void;
|
|
250
|
+
setDisabledState(isDisabled: boolean): void;
|
|
251
|
+
private _setSelectionByValue;
|
|
252
|
+
private _selectValue;
|
|
253
|
+
private _clearSelection;
|
|
254
|
+
private _handleChange;
|
|
255
|
+
private _skipPredicate;
|
|
256
|
+
private _highlightCorrectOption;
|
|
257
|
+
isOptionPreSelectedByValue(optionValue: unknown): boolean;
|
|
258
|
+
protected _onFocus(): void;
|
|
259
|
+
protected _onBlur(): void;
|
|
260
|
+
protected _getAriaActiveDescendant(): string | null;
|
|
261
|
+
focus(options?: FocusOptions): void;
|
|
262
|
+
protected _onInputClick(): void;
|
|
263
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<IdsAutocompleteComponent, never>;
|
|
264
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<IdsAutocompleteComponent, "ids-autocomplete[ngModel]:not([formControl]):not([formControlName]), ids-autocomplete[formControl]:not([ngModel]):not([formControlName]), ids-autocomplete[formControlName]:not([ngModel]):not([formControl])", never, { "minChars": { "alias": "minChars"; "required": false; "isSignal": true; }; "maxLength": { "alias": "maxLength"; "required": false; "isSignal": true; }; "multiSelect": { "alias": "multiSelect"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "aria-label"; "required": false; "isSignal": true; }; "ariaLabelledby": { "alias": "aria-labelledby"; "required": false; "isSignal": true; }; "ariaLabelClearButton": { "alias": "ariaLabelClearButton"; "required": false; "isSignal": true; }; "ariaLabelToggleButton": { "alias": "ariaLabelToggleButton"; "required": false; "isSignal": true; }; "valueCompareFn": { "alias": "valueCompareFn"; "required": false; "isSignal": true; }; "sortCompareFn": { "alias": "sortCompareFn"; "required": false; "isSignal": true; }; "tabIndex": { "alias": "tabIndex"; "required": false; "isSignal": true; }; "typeaheadDebounceInterval": { "alias": "typeaheadDebounceInterval"; "required": false; "isSignal": true; }; "hintLoading": { "alias": "hintLoading"; "required": false; "isSignal": true; }; "hintNoResults": { "alias": "hintNoResults"; "required": false; "isSignal": true; }; "hintMinChars": { "alias": "hintMinChars"; "required": false; "isSignal": true; }; "hintMaxLength": { "alias": "hintMaxLength"; "required": false; "isSignal": true; }; "panelClasses": { "alias": "panelClasses"; "required": false; "isSignal": true; }; "_searchText": { "alias": "_searchText"; "required": false; "isSignal": true; }; }, { "_searchText": "_searchTextChange"; }, never, never, true, never>;
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
type IdsAutocompleteLoader = (params: ResourceLoaderParams<{
|
|
268
|
+
search: string | null;
|
|
269
|
+
}>) => Observable<string[]>;
|
|
270
|
+
|
|
271
|
+
declare const IDS_AUTOCOMPLETE_LOADER: InjectionToken<IdsAutocompleteLoader>;
|
|
272
|
+
|
|
273
|
+
declare class IdsFieldsetRowComponent extends ComponentBase {
|
|
274
|
+
protected get _hostName(): string;
|
|
275
|
+
protected _hostClasses: _angular_core.WritableSignal<string>;
|
|
276
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<IdsFieldsetRowComponent, never>;
|
|
277
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<IdsFieldsetRowComponent, "ids-fieldset-row", never, {}, {}, never, ["*"], true, never>;
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
interface IdsFieldsetDefaultConfig {
|
|
281
|
+
size?: IdsSizeType;
|
|
282
|
+
variant?: IdsFormFieldVariantType;
|
|
283
|
+
}
|
|
284
|
+
declare const IDS_FIELDSET_DEFAULT_CONFIG: InjectionToken<IdsFieldsetDefaultConfig>;
|
|
285
|
+
declare function IDS_FIELDSET_DEFAULT_CONFIG_FACTORY(): Required<IdsFieldsetDefaultConfig>;
|
|
286
|
+
|
|
287
|
+
declare class IdsFieldsetMessageDirective {
|
|
288
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<IdsFieldsetMessageDirective, never>;
|
|
289
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<IdsFieldsetMessageDirective, "[idsFieldsetMessage]", never, {}, {}, never, never, true, never>;
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
declare class IdsFieldsetComponent extends ComponentBaseWithDefaults<IdsFieldsetDefaultConfig> {
|
|
293
|
+
protected get _hostName(): string;
|
|
294
|
+
protected readonly _defaultConfig: Required<IdsFieldsetDefaultConfig>;
|
|
295
|
+
size: _angular_core.InputSignal<IdsSizeType>;
|
|
296
|
+
variant: _angular_core.InputSignal<IdsFormFieldVariantType>;
|
|
297
|
+
legend: _angular_core.InputSignal<string>;
|
|
298
|
+
private _fieldsetMessage;
|
|
299
|
+
protected _hasMessage: _angular_core.Signal<boolean>;
|
|
300
|
+
protected _hostClasses: _angular_core.Signal<string>;
|
|
301
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<IdsFieldsetComponent, never>;
|
|
302
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<IdsFieldsetComponent, "fieldset[idsFieldset]", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "legend": { "alias": "legend"; "required": false; "isSignal": true; }; }, {}, ["_fieldsetMessage"], ["[idsFieldsetMessage]", "ids-fieldset-row"], true, never>;
|
|
303
|
+
}
|
|
304
|
+
|
|
128
305
|
declare const IDS_FORM_FIELD_CONTROL: InjectionToken<IdsFormFieldControl<unknown>>;
|
|
129
306
|
|
|
130
307
|
interface IdsFormFieldDefaultConfig {
|
|
@@ -340,18 +517,6 @@ declare const Message: {
|
|
|
340
517
|
};
|
|
341
518
|
type MessageType = (typeof Message)[keyof typeof Message];
|
|
342
519
|
|
|
343
|
-
declare class IdsOptionGroupComponent extends ComponentBase {
|
|
344
|
-
protected get _hostName(): string;
|
|
345
|
-
private readonly _parent;
|
|
346
|
-
protected readonly _inert: boolean;
|
|
347
|
-
label: _angular_core.InputSignal<string | undefined>;
|
|
348
|
-
disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
349
|
-
protected readonly _labelId: _angular_core.Signal<string>;
|
|
350
|
-
protected readonly _hostClasses: _angular_core.Signal<string>;
|
|
351
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<IdsOptionGroupComponent, never>;
|
|
352
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<IdsOptionGroupComponent, "ids-option-group", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, never, ["ids-option, ng-container"], true, never>;
|
|
353
|
-
}
|
|
354
|
-
|
|
355
520
|
declare const IDS_OPTION_GROUP: InjectionToken<IdsOptionGroupComponent>;
|
|
356
521
|
|
|
357
522
|
interface IdsOptionParentComponent {
|
|
@@ -363,59 +528,6 @@ interface IdsOptionParentComponent {
|
|
|
363
528
|
}
|
|
364
529
|
declare const IDS_OPTION_PARENT_COMPONENT: InjectionToken<IdsOptionParentComponent>;
|
|
365
530
|
|
|
366
|
-
interface IdsPseudoCheckboxParent<T extends string> {
|
|
367
|
-
embeddedPseudoCheckboxSize: Signal<IdsSizeType>;
|
|
368
|
-
embeddedPseudoCheckboxVariant: Signal<T>;
|
|
369
|
-
}
|
|
370
|
-
declare const IDS_PSEUDO_CHECKBOX_PARENT: InjectionToken<IdsPseudoCheckboxParent<string>>;
|
|
371
|
-
|
|
372
|
-
declare class IdsOptionComponent<T = unknown> extends ComponentBase implements OnInit, IdsPseudoCheckboxParent<IdsFormFieldVariantType> {
|
|
373
|
-
protected get _hostName(): string;
|
|
374
|
-
private readonly _parent;
|
|
375
|
-
private readonly _element;
|
|
376
|
-
readonly group: IdsOptionGroupComponent | null;
|
|
377
|
-
private _textElement;
|
|
378
|
-
selected: _angular_core.WritableSignal<boolean>;
|
|
379
|
-
private _active;
|
|
380
|
-
size: _angular_core.Signal<_i_cell_ids_angular_core.IdsSizeType>;
|
|
381
|
-
variant: _angular_core.Signal<IdsFormFieldVariantType>;
|
|
382
|
-
value: _angular_core.InputSignal<T | undefined>;
|
|
383
|
-
explicitViewValue: _angular_core.InputSignal<string | null>;
|
|
384
|
-
disabledInput: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
385
|
-
disabled: boolean;
|
|
386
|
-
protected _groupOrOptionIsDisabled: _angular_core.Signal<boolean>;
|
|
387
|
-
protected readonly _multiSelect: boolean;
|
|
388
|
-
onSelectionChange: _angular_core.OutputEmitterRef<IdsOptionSelectionChange<T>>;
|
|
389
|
-
viewValue: _angular_core.Signal<string>;
|
|
390
|
-
protected readonly _hostClasses: _angular_core.Signal<string>;
|
|
391
|
-
protected _pseudoCheckboxState: _angular_core.Signal<"unchecked" | "checked">;
|
|
392
|
-
embeddedPseudoCheckboxSize: _angular_core.Signal<_i_cell_ids_angular_core.IdsSizeType>;
|
|
393
|
-
embeddedPseudoCheckboxVariant: _angular_core.WritableSignal<"surface">;
|
|
394
|
-
constructor();
|
|
395
|
-
ngOnInit(): void;
|
|
396
|
-
protected _handleKeydown(event: KeyboardEvent): void;
|
|
397
|
-
selectViaInteraction(): void;
|
|
398
|
-
getHostElement(): HTMLElement;
|
|
399
|
-
select(emitEvent?: boolean): void;
|
|
400
|
-
deselect(emitEvent?: boolean): void;
|
|
401
|
-
focus(_origin?: FocusOrigin, options?: FocusOptions): void;
|
|
402
|
-
setActiveStyles(): void;
|
|
403
|
-
setInactiveStyles(): void;
|
|
404
|
-
getLabel(): string;
|
|
405
|
-
private _emitSelectionChangeEvent;
|
|
406
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<IdsOptionComponent<any>, never>;
|
|
407
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<IdsOptionComponent<any>, "ids-option", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "explicitViewValue": { "alias": "viewValue"; "required": false; "isSignal": true; }; "disabledInput": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "onSelectionChange": "onSelectionChange"; }, never, ["*"], true, never>;
|
|
408
|
-
}
|
|
409
|
-
declare function _countGroupLabelsBeforeOption(optionIndex: number, options: Readonly<IdsOptionComponent[]>, optionGroups: Readonly<IdsOptionGroupComponent[]>): number;
|
|
410
|
-
declare function _getOptionScrollPosition(optionOffset: number, optionHeight: number, currentScrollPosition: number, panelHeight: number): number;
|
|
411
|
-
|
|
412
|
-
declare class IdsOptionSelectionChange<T = unknown> {
|
|
413
|
-
source: IdsOptionComponent<T>;
|
|
414
|
-
selected: boolean;
|
|
415
|
-
isUserInput: boolean;
|
|
416
|
-
constructor(source: IdsOptionComponent<T>, selected: boolean, isUserInput?: boolean);
|
|
417
|
-
}
|
|
418
|
-
|
|
419
531
|
declare const IdsPseudoCheckboxState: {
|
|
420
532
|
readonly UNCHECKED: "unchecked";
|
|
421
533
|
readonly CHECKED: "checked";
|
|
@@ -468,5 +580,5 @@ declare function requiredValidator(control: AbstractControl): ValidationErrors |
|
|
|
468
580
|
declare function requiredTrueValidator(control: AbstractControl): ValidationErrors | null;
|
|
469
581
|
declare function requiredFalseValidator(control: AbstractControl): ValidationErrors | null;
|
|
470
582
|
|
|
471
|
-
export { AbstractErrorStateMatcher, AbstractSuccessStateMatcher, ErrorStateMatcher, ErrorStateTracker, IDS_FIELDSET_DEFAULT_CONFIG, IDS_FIELDSET_DEFAULT_CONFIG_FACTORY, IDS_FORM_FIELD_CONTROL, IDS_FORM_FIELD_DEFAULT_CONFIG, IDS_FORM_FIELD_DEFAULT_CONFIG_FACTORY, IDS_INPUT_DEFAULT_CONFIG, IDS_INPUT_DEFAULT_CONFIG_FACTORY, IDS_MESSAGE_DEFAULT_CONFIG, IDS_MESSAGE_DEFAULT_CONFIG_FACTORY, IDS_OPTION_GROUP, IDS_OPTION_PARENT_COMPONENT, IDS_PSEUDO_CHECKBOX_PARENT, IdsErrorDefinitionDirective, IdsErrorMessageComponent, IdsFieldsetComponent, IdsFieldsetMessageDirective, IdsFieldsetRowComponent, IdsFormFieldActionDirective, IdsFormFieldComponent, IdsFormFieldControl, IdsFormFieldVariant, IdsHintMessageComponent, IdsInputDirective, IdsLabelDirective, IdsMessageDirective, IdsMessagePrefixDirective, IdsMessageSuffixDirective, IdsMessageVariant, IdsOptionComponent, IdsOptionGroupComponent, IdsOptionSelectionChange, IdsPrefixDirective, IdsPseudoCheckboxState, IdsSuccessMessageComponent, IdsSuffixDirective, IdsValidators, Message, PseudoCheckboxComponent, SuccessStateMatcher, SuccessStateTracker, _countGroupLabelsBeforeOption, _getOptionScrollPosition, formFieldControlClass, requiredFalseValidator, requiredTrueValidator, requiredValidator };
|
|
472
|
-
export type { IdsErrorMessageMapping, IdsFieldsetDefaultConfig, IdsFormFieldDefaultConfig, IdsFormFieldVariantType, IdsInputDefaultConfig, IdsMessageDefaultConfig, IdsMessageVariantType, IdsOptionParentComponent, IdsPseudoCheckboxParent, IdsPseudoCheckboxStateType, MessageType };
|
|
583
|
+
export { AbstractErrorStateMatcher, AbstractSuccessStateMatcher, ErrorStateMatcher, ErrorStateTracker, IDS_AUTOCOMPLETE_DEFAULT_CONFIG, IDS_AUTOCOMPLETE_DEFAULT_CONFIG_FACTORY, IDS_AUTOCOMPLETE_LOADER, IDS_FIELDSET_DEFAULT_CONFIG, IDS_FIELDSET_DEFAULT_CONFIG_FACTORY, IDS_FORM_FIELD_CONTROL, IDS_FORM_FIELD_DEFAULT_CONFIG, IDS_FORM_FIELD_DEFAULT_CONFIG_FACTORY, IDS_INPUT_DEFAULT_CONFIG, IDS_INPUT_DEFAULT_CONFIG_FACTORY, IDS_MESSAGE_DEFAULT_CONFIG, IDS_MESSAGE_DEFAULT_CONFIG_FACTORY, IDS_OPTION_GROUP, IDS_OPTION_PARENT_COMPONENT, IDS_PSEUDO_CHECKBOX_PARENT, IdsAutocompleteComponent, IdsErrorDefinitionDirective, IdsErrorMessageComponent, IdsFieldsetComponent, IdsFieldsetMessageDirective, IdsFieldsetRowComponent, IdsFormFieldActionDirective, IdsFormFieldComponent, IdsFormFieldControl, IdsFormFieldVariant, IdsHintMessageComponent, IdsInputDirective, IdsLabelDirective, IdsMessageDirective, IdsMessagePrefixDirective, IdsMessageSuffixDirective, IdsMessageVariant, IdsOptionComponent, IdsOptionGroupComponent, IdsOptionSelectionChange, IdsPrefixDirective, IdsPseudoCheckboxState, IdsSuccessMessageComponent, IdsSuffixDirective, IdsValidators, Message, PseudoCheckboxComponent, SuccessStateMatcher, SuccessStateTracker, _countGroupLabelsBeforeOption, _getOptionScrollPosition, formFieldControlClass, requiredFalseValidator, requiredTrueValidator, requiredValidator };
|
|
584
|
+
export type { IdsAutocompleteDefaultConfig, IdsAutocompleteLoader, IdsErrorMessageMapping, IdsFieldsetDefaultConfig, IdsFormFieldDefaultConfig, IdsFormFieldVariantType, IdsInputDefaultConfig, IdsMessageDefaultConfig, IdsMessageVariantType, IdsOptionParentComponent, IdsPseudoCheckboxParent, IdsPseudoCheckboxStateType, MessageType };
|
package/overlay-panel/index.d.ts
CHANGED
|
@@ -28,29 +28,25 @@ declare function IDS_OVERLAY_PANEL_DEFAULT_CONFIG_FACTORY(): Required<IdsOverlay
|
|
|
28
28
|
declare class IdsOverlayPanelComponent extends ComponentBaseWithDefaults<IdsOverlayPanelDefaultConfig> {
|
|
29
29
|
protected get _hostName(): string;
|
|
30
30
|
protected readonly _defaultConfig: Required<IdsOverlayPanelDefaultConfig>;
|
|
31
|
-
open: _angular_core.
|
|
31
|
+
open: _angular_core.ModelSignal<boolean>;
|
|
32
32
|
origin: _angular_core.InputSignal<CdkOverlayOrigin | ElementRef<any>>;
|
|
33
|
-
closed: _angular_core.OutputEmitterRef<void>;
|
|
34
33
|
positions: _angular_core.InputSignal<ConnectedPosition[]>;
|
|
35
34
|
appearance: _angular_core.InputSignal<IdsOverlayPanelAppearanceType>;
|
|
36
35
|
size: _angular_core.InputSignal<IdsSizeType>;
|
|
37
36
|
variant: _angular_core.InputSignal<IdsOverlayPanelVariantType>;
|
|
38
37
|
panelClasses: _angular_core.InputSignal<string>;
|
|
39
38
|
width: _angular_core.InputSignal<string | number | undefined>;
|
|
40
|
-
protected _open: _angular_core.WritableSignal<boolean>;
|
|
41
39
|
protected _hasCdkMenu: _angular_core.Signal<boolean>;
|
|
42
40
|
private _cdkMenu;
|
|
43
41
|
private _overlayRef;
|
|
44
42
|
private _focusTrap;
|
|
45
|
-
get isOpen(): boolean;
|
|
46
43
|
constructor();
|
|
47
44
|
toggle(): void;
|
|
48
|
-
protected
|
|
49
|
-
protected _handleDetach(): void;
|
|
45
|
+
protected _close(): void;
|
|
50
46
|
protected _panelClasses: _angular_core.Signal<string>;
|
|
51
47
|
protected _hostClasses: _angular_core.Signal<string>;
|
|
52
48
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<IdsOverlayPanelComponent, never>;
|
|
53
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<IdsOverlayPanelComponent, "ids-overlay-panel", never, { "open": { "alias": "open"; "required": false; "isSignal": true; }; "origin": { "alias": "origin"; "required": true; "isSignal": true; }; "positions": { "alias": "positions"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "panelClasses": { "alias": "panelClasses"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; }, { "
|
|
49
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<IdsOverlayPanelComponent, "ids-overlay-panel", never, { "open": { "alias": "open"; "required": false; "isSignal": true; }; "origin": { "alias": "origin"; "required": true; "isSignal": true; }; "positions": { "alias": "positions"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "panelClasses": { "alias": "panelClasses"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; }, { "open": "openChange"; }, ["_cdkMenu"], ["*"], true, never>;
|
|
54
50
|
}
|
|
55
51
|
|
|
56
52
|
export { IDS_OVERLAY_PANEL_DEFAULT_CONFIG, IDS_OVERLAY_PANEL_DEFAULT_CONFIG_FACTORY, IdsOverlayPanelAppearance, IdsOverlayPanelComponent, IdsOverlayPanelVariant };
|