ng-primitives 0.35.0 → 0.37.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/a11y/visually-hidden/visually-hidden-state.d.ts +1 -1
- package/accordion/accordion/accordion-state.d.ts +1 -1
- package/accordion/accordion-item/accordion-item-state.d.ts +1 -1
- package/accordion/accordion-trigger/accordion-trigger.d.ts +4 -0
- package/avatar/avatar/avatar-state.d.ts +1 -1
- package/button/button/button-state.d.ts +1 -1
- package/checkbox/checkbox/checkbox-state.d.ts +1 -1
- package/date-picker/date-picker/date-picker-state.d.ts +1 -1
- package/dialog/dialog/dialog-state.d.ts +1 -1
- package/dialog/dialog-overlay/dialog-overlay.d.ts +7 -1
- package/dialog/dialog-trigger/dialog-trigger.d.ts +0 -2
- package/example-theme/index.css +2 -0
- package/fesm2022/ng-primitives-a11y.mjs +3 -3
- package/fesm2022/ng-primitives-accordion.mjs +18 -13
- package/fesm2022/ng-primitives-accordion.mjs.map +1 -1
- package/fesm2022/ng-primitives-autofill.mjs +4 -4
- package/fesm2022/ng-primitives-avatar.mjs +9 -9
- package/fesm2022/ng-primitives-button.mjs +3 -3
- package/fesm2022/ng-primitives-checkbox.mjs +4 -4
- package/fesm2022/ng-primitives-common.mjs +3 -3
- package/fesm2022/ng-primitives-date-picker.mjs +27 -27
- package/fesm2022/ng-primitives-dialog.mjs +30 -22
- package/fesm2022/ng-primitives-dialog.mjs.map +1 -1
- package/fesm2022/ng-primitives-file-upload.mjs +18 -12
- package/fesm2022/ng-primitives-file-upload.mjs.map +1 -1
- package/fesm2022/ng-primitives-focus-trap.mjs +31 -8
- package/fesm2022/ng-primitives-focus-trap.mjs.map +1 -1
- package/fesm2022/ng-primitives-form-field.mjs +15 -15
- package/fesm2022/ng-primitives-input.mjs +3 -3
- package/fesm2022/ng-primitives-interactions.mjs +15 -15
- package/fesm2022/ng-primitives-internal.mjs +66 -70
- package/fesm2022/ng-primitives-internal.mjs.map +1 -1
- package/fesm2022/ng-primitives-listbox.mjs +12 -12
- package/fesm2022/ng-primitives-menu.mjs +13 -13
- package/fesm2022/ng-primitives-meter.mjs +164 -0
- package/fesm2022/ng-primitives-meter.mjs.map +1 -0
- package/fesm2022/ng-primitives-pagination.mjs +19 -19
- package/fesm2022/ng-primitives-popover.mjs +114 -68
- package/fesm2022/ng-primitives-popover.mjs.map +1 -1
- package/fesm2022/ng-primitives-progress.mjs +6 -6
- package/fesm2022/ng-primitives-radio.mjs +13 -9
- package/fesm2022/ng-primitives-radio.mjs.map +1 -1
- package/fesm2022/ng-primitives-resize.mjs +3 -3
- package/fesm2022/ng-primitives-roving-focus.mjs +6 -6
- package/fesm2022/ng-primitives-search.mjs +7 -7
- package/fesm2022/ng-primitives-select.mjs +3 -3
- package/fesm2022/ng-primitives-separator.mjs +3 -3
- package/fesm2022/ng-primitives-slider.mjs +12 -12
- package/fesm2022/ng-primitives-state.mjs +10 -3
- package/fesm2022/ng-primitives-state.mjs.map +1 -1
- package/fesm2022/ng-primitives-switch.mjs +6 -6
- package/fesm2022/ng-primitives-tabs.mjs +35 -48
- package/fesm2022/ng-primitives-tabs.mjs.map +1 -1
- package/fesm2022/ng-primitives-textarea.mjs +3 -3
- package/fesm2022/ng-primitives-toast.mjs +3 -3
- package/fesm2022/ng-primitives-toggle-group.mjs +9 -14
- package/fesm2022/ng-primitives-toggle-group.mjs.map +1 -1
- package/fesm2022/ng-primitives-toggle.mjs +4 -4
- package/fesm2022/ng-primitives-toolbar.mjs +38 -14
- package/fesm2022/ng-primitives-toolbar.mjs.map +1 -1
- package/fesm2022/ng-primitives-tooltip.mjs +108 -51
- package/fesm2022/ng-primitives-tooltip.mjs.map +1 -1
- package/fesm2022/ng-primitives-utils.mjs +18 -0
- package/fesm2022/ng-primitives-utils.mjs.map +1 -1
- package/file-upload/file-dropzone/file-dropzone-state.d.ts +2 -2
- package/file-upload/file-dropzone/file-dropzone.d.ts +3 -2
- package/file-upload/file-upload/file-upload-state.d.ts +2 -2
- package/file-upload/file-upload/file-upload.d.ts +3 -2
- package/focus-trap/focus-trap/focus-trap-state.d.ts +41 -0
- package/focus-trap/focus-trap/focus-trap.d.ts +4 -0
- package/focus-trap/index.d.ts +1 -0
- package/form-field/form-control/form-control-state.d.ts +24 -24
- package/form-field/form-field/form-field-state.d.ts +1 -1
- package/input/input/input-state.d.ts +1 -1
- package/internal/exit-animation/exit-animation-manager.d.ts +17 -0
- package/internal/exit-animation/exit-animation.d.ts +4 -17
- package/internal/index.d.ts +2 -1
- package/listbox/listbox/listbox-state.d.ts +4 -4
- package/meter/README.md +3 -0
- package/meter/index.d.ts +6 -0
- package/meter/meter/meter-state.d.ts +25 -0
- package/meter/meter/meter.d.ts +27 -0
- package/meter/meter-indicator/meter-indicator.d.ts +15 -0
- package/meter/meter-label/meter-label.d.ts +18 -0
- package/meter/meter-track/meter-track.d.ts +5 -0
- package/meter/meter-value/meter-value.d.ts +5 -0
- package/package.json +13 -9
- package/pagination/pagination/pagination-state.d.ts +3 -3
- package/pagination/pagination-first/pagination-first.d.ts +2 -2
- package/pagination/pagination-next/pagination-next.d.ts +2 -2
- package/pagination/pagination-previous/pagination-previous.d.ts +2 -2
- package/popover/index.d.ts +1 -0
- package/popover/popover/popover-token.d.ts +10 -0
- package/popover/popover/popover.d.ts +34 -3
- package/popover/popover-trigger/popover-trigger-state.d.ts +5 -3
- package/popover/popover-trigger/popover-trigger.d.ts +26 -18
- package/progress/progress/progress-state.d.ts +3 -3
- package/progress/progress-indicator/progress-indicator.d.ts +2 -2
- package/radio/radio-group/radio-group-state.d.ts +1 -1
- package/radio/radio-item/radio-item-state.d.ts +1 -1
- package/roving-focus/roving-focus-group/roving-focus-group-state.d.ts +7 -7
- package/schematics/ng-generate/schema.d.ts +4 -1
- package/schematics/ng-generate/schema.json +4 -1
- package/schematics/ng-generate/templates/meter/meter.__fileSuffix@dasherize__.ts.template +78 -0
- package/schematics/ng-generate/templates/pagination/pagination.__fileSuffix@dasherize__.ts.template +11 -11
- package/schematics/ng-generate/templates/slider/slider.__fileSuffix@dasherize__.ts.template +8 -3
- package/schematics/ng-generate/templates/toolbar/toolbar-button.__fileSuffix@dasherize__.ts.template +58 -0
- package/schematics/ng-generate/templates/toolbar/toolbar.__fileSuffix@dasherize__.ts.template +37 -0
- package/schematics/ng-generate/templates/tooltip/tooltip-trigger.__fileSuffix@dasherize__.ts.template +35 -0
- package/schematics/ng-generate/templates/tooltip/tooltip.__fileSuffix@dasherize__.ts.template +60 -0
- package/search/search/search-state.d.ts +1 -1
- package/select/select/select-state.d.ts +1 -1
- package/slider/slider/slider-state.d.ts +5 -5
- package/slider/slider-range/slider-range.d.ts +4 -4
- package/slider/slider-thumb/slider-thumb.d.ts +4 -4
- package/slider/slider-track/slider-track.d.ts +4 -4
- package/state/index.d.ts +7 -1
- package/switch/switch/switch-state.d.ts +1 -1
- package/tabs/index.d.ts +1 -2
- package/tabs/tab-button/tab-button.d.ts +9 -10
- package/tabs/tab-list/tab-list.d.ts +6 -7
- package/tabs/tab-panel/tab-panel.d.ts +11 -9
- package/tabs/tabset/tabset-state.d.ts +7 -8
- package/tabs/tabset/tabset.d.ts +3 -4
- package/textarea/textarea/textarea-state.d.ts +1 -1
- package/toggle/toggle/toggle-state.d.ts +1 -1
- package/toggle-group/toggle-group/toggle-group-state.d.ts +7 -7
- package/toggle-group/toggle-group/toggle-group.d.ts +1 -1
- package/toggle-group/toggle-group-item/toggle-group-item-state.d.ts +13 -13
- package/toolbar/index.d.ts +1 -0
- package/toolbar/toolbar/toolbar-state.d.ts +39 -0
- package/toolbar/toolbar/toolbar.d.ts +10 -1
- package/tooltip/index.d.ts +1 -0
- package/tooltip/tooltip/tooltip-token.d.ts +10 -0
- package/tooltip/tooltip/tooltip.d.ts +2 -1
- package/tooltip/tooltip-trigger/tooltip-trigger-state.d.ts +3 -3
- package/tooltip/tooltip-trigger/tooltip-trigger.d.ts +44 -18
- package/tabs/tabset/tabset-token.d.ts +0 -11
|
@@ -1,17 +1,21 @@
|
|
|
1
1
|
import { FocusOrigin } from '@angular/cdk/a11y';
|
|
2
2
|
import { BooleanInput, NumberInput } from '@angular/cdk/coercion';
|
|
3
|
-
import { OnDestroy, TemplateRef } from '@angular/core';
|
|
3
|
+
import { ComponentRef, EmbeddedViewRef, OnDestroy, TemplateRef, Type } from '@angular/core';
|
|
4
4
|
import { Placement } from '@floating-ui/dom';
|
|
5
5
|
import type { NgpPopover } from '../popover/popover';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
/**
|
|
8
8
|
* Apply the `ngpPopoverTrigger` directive to an element that triggers the popover to show.
|
|
9
9
|
*/
|
|
10
|
-
export declare class NgpPopoverTrigger implements OnDestroy {
|
|
10
|
+
export declare class NgpPopoverTrigger<T = null> implements OnDestroy {
|
|
11
11
|
/**
|
|
12
12
|
* Access the trigger element
|
|
13
13
|
*/
|
|
14
14
|
private readonly trigger;
|
|
15
|
+
/**
|
|
16
|
+
* Access the exit animation state.
|
|
17
|
+
*/
|
|
18
|
+
private readonly exitAnimationState;
|
|
15
19
|
/**
|
|
16
20
|
* Inject the parent popover trigger if available.
|
|
17
21
|
*/
|
|
@@ -47,16 +51,7 @@ export declare class NgpPopoverTrigger implements OnDestroy {
|
|
|
47
51
|
/**
|
|
48
52
|
* Access the popover template ref.
|
|
49
53
|
*/
|
|
50
|
-
readonly popover: import("@angular/core").InputSignal<
|
|
51
|
-
/**
|
|
52
|
-
* The open state of the popover.
|
|
53
|
-
* @default false
|
|
54
|
-
*/
|
|
55
|
-
readonly open: import("@angular/core").InputSignalWithTransform<boolean, BooleanInput>;
|
|
56
|
-
/**
|
|
57
|
-
* Emit when the open state changes.
|
|
58
|
-
*/
|
|
59
|
-
readonly openChange: import("@angular/core").OutputEmitterRef<boolean>;
|
|
54
|
+
readonly popover: import("@angular/core").InputSignal<NgpPopoverContent<T> | null>;
|
|
60
55
|
/**
|
|
61
56
|
* Define if the trigger should be disabled.
|
|
62
57
|
* @default false
|
|
@@ -107,10 +102,19 @@ export declare class NgpPopoverTrigger implements OnDestroy {
|
|
|
107
102
|
* @default 'reposition'
|
|
108
103
|
*/
|
|
109
104
|
readonly scrollBehavior: import("@angular/core").InputSignal<"reposition" | "block">;
|
|
105
|
+
/**
|
|
106
|
+
* Provide context to the popover.
|
|
107
|
+
* @default null
|
|
108
|
+
*/
|
|
109
|
+
readonly context: import("@angular/core").InputSignal<T | null>;
|
|
110
110
|
/**
|
|
111
111
|
* Store the popover view ref.
|
|
112
112
|
*/
|
|
113
|
-
|
|
113
|
+
protected readonly viewRef: import("@angular/core").WritableSignal<ComponentRef<unknown> | EmbeddedViewRef<void> | null>;
|
|
114
|
+
/**
|
|
115
|
+
* Determines if the popover is open.
|
|
116
|
+
*/
|
|
117
|
+
readonly open: import("@angular/core").Signal<boolean>;
|
|
114
118
|
/**
|
|
115
119
|
* Derive the popover middleware from the provided configuration.
|
|
116
120
|
*/
|
|
@@ -150,7 +154,7 @@ export declare class NgpPopoverTrigger implements OnDestroy {
|
|
|
150
154
|
* @internal
|
|
151
155
|
* Register any child popover to the stack.
|
|
152
156
|
*/
|
|
153
|
-
readonly stack: NgpPopoverTrigger[];
|
|
157
|
+
readonly stack: NgpPopoverTrigger<any>[];
|
|
154
158
|
/**
|
|
155
159
|
* @internal
|
|
156
160
|
* The timeout to open the popover.
|
|
@@ -164,12 +168,11 @@ export declare class NgpPopoverTrigger implements OnDestroy {
|
|
|
164
168
|
/**
|
|
165
169
|
* The popover trigger state.
|
|
166
170
|
*/
|
|
167
|
-
|
|
171
|
+
readonly state: import("ng-primitives/state").CreatedState<NgpPopoverTrigger<T>>;
|
|
168
172
|
constructor();
|
|
169
173
|
ngOnDestroy(): void;
|
|
170
174
|
protected toggleOpenState(event: MouseEvent): void;
|
|
171
175
|
/**
|
|
172
|
-
* @internal
|
|
173
176
|
* Show the popover.
|
|
174
177
|
*/
|
|
175
178
|
show(origin: FocusOrigin): void;
|
|
@@ -192,6 +195,11 @@ export declare class NgpPopoverTrigger implements OnDestroy {
|
|
|
192
195
|
* @internal
|
|
193
196
|
*/
|
|
194
197
|
setPopover(instance: NgpPopover): void;
|
|
195
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<NgpPopoverTrigger
|
|
196
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<NgpPopoverTrigger
|
|
198
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgpPopoverTrigger<any>, never>;
|
|
199
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<NgpPopoverTrigger<any>, "[ngpPopoverTrigger]", ["ngpPopoverTrigger"], { "popover": { "alias": "ngpPopoverTrigger"; "required": false; "isSignal": true; }; "disabled": { "alias": "ngpPopoverTriggerDisabled"; "required": false; "isSignal": true; }; "placement": { "alias": "ngpPopoverTriggerPlacement"; "required": false; "isSignal": true; }; "offset": { "alias": "ngpPopoverTriggerOffset"; "required": false; "isSignal": true; }; "showDelay": { "alias": "ngpPopoverTriggerShowDelay"; "required": false; "isSignal": true; }; "hideDelay": { "alias": "ngpPopoverTriggerHideDelay"; "required": false; "isSignal": true; }; "flip": { "alias": "ngpPopoverTriggerFlip"; "required": false; "isSignal": true; }; "container": { "alias": "ngpPopoverTriggerContainer"; "required": false; "isSignal": true; }; "closeOnOutsideClick": { "alias": "ngpPopoverTriggerCloseOnOutsideClick"; "required": false; "isSignal": true; }; "closeOnEscape": { "alias": "ngpPopoverTriggerCloseOnEscape"; "required": false; "isSignal": true; }; "scrollBehavior": { "alias": "ngpPopoverTriggerScrollBehavior"; "required": false; "isSignal": true; }; "context": { "alias": "ngpPopoverTriggerContext"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
197
200
|
}
|
|
201
|
+
type NgpPopoverTemplateContext<T> = {
|
|
202
|
+
$implicit: T;
|
|
203
|
+
};
|
|
204
|
+
type NgpPopoverContent<T> = TemplateRef<NgpPopoverTemplateContext<T>> | Type<unknown>;
|
|
205
|
+
export {};
|
|
@@ -6,13 +6,13 @@ export declare const NgpProgressStateToken: import("@angular/core").InjectionTok
|
|
|
6
6
|
/**
|
|
7
7
|
* Provides the Progress state.
|
|
8
8
|
*/
|
|
9
|
-
export declare const provideProgressState: () => import("@angular/core").FactoryProvider;
|
|
9
|
+
export declare const provideProgressState: (options?: import("ng-primitives/state").CreateStateProviderOptions) => import("@angular/core").FactoryProvider;
|
|
10
10
|
/**
|
|
11
11
|
* Injects the Progress state.
|
|
12
12
|
*/
|
|
13
13
|
export declare const injectProgressState: <U = {
|
|
14
|
-
readonly value: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/
|
|
15
|
-
readonly max: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/
|
|
14
|
+
readonly value: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/number-property.d-BzBQchZ2").NumberInput>;
|
|
15
|
+
readonly max: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/number-property.d-BzBQchZ2").NumberInput>;
|
|
16
16
|
readonly valueLabel: import("@angular/core").InputSignal<import("./progress").NgpProgressValueLabelFn>;
|
|
17
17
|
readonly dataState: import("@angular/core").Signal<"indeterminate" | "complete" | "loading">;
|
|
18
18
|
readonly label: import("@angular/core").Signal<string>;
|
|
@@ -8,8 +8,8 @@ export declare class NgpProgressIndicator {
|
|
|
8
8
|
* Access the progress state.
|
|
9
9
|
*/
|
|
10
10
|
protected readonly state: import("@angular/core").Signal<import("ng-primitives/state").State<{
|
|
11
|
-
readonly value: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/
|
|
12
|
-
readonly max: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/
|
|
11
|
+
readonly value: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/number-property.d-BzBQchZ2").NumberInput>;
|
|
12
|
+
readonly max: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/number-property.d-BzBQchZ2").NumberInput>;
|
|
13
13
|
readonly valueLabel: import("@angular/core").InputSignal<import("ng-primitives/progress").NgpProgressValueLabelFn>;
|
|
14
14
|
readonly dataState: import("@angular/core").Signal<"indeterminate" | "complete" | "loading">;
|
|
15
15
|
readonly label: import("@angular/core").Signal<string>;
|
|
@@ -7,7 +7,7 @@ export declare const NgpRadioGroupStateToken: import("@angular/core").InjectionT
|
|
|
7
7
|
/**
|
|
8
8
|
* Provides the RadioGroup state.
|
|
9
9
|
*/
|
|
10
|
-
export declare const provideRadioGroupState: () => import("@angular/core").FactoryProvider;
|
|
10
|
+
export declare const provideRadioGroupState: (options?: import("ng-primitives/state").CreateStateProviderOptions) => import("@angular/core").FactoryProvider;
|
|
11
11
|
/**
|
|
12
12
|
* Injects the RadioGroup state.
|
|
13
13
|
*/
|
|
@@ -7,7 +7,7 @@ export declare const NgpRadioItemStateToken: import("@angular/core").InjectionTo
|
|
|
7
7
|
/**
|
|
8
8
|
* Provides the RadioItem state.
|
|
9
9
|
*/
|
|
10
|
-
export declare const provideRadioItemState: () => import("@angular/core").FactoryProvider;
|
|
10
|
+
export declare const provideRadioItemState: (options?: import("ng-primitives/state").CreateStateProviderOptions) => import("@angular/core").FactoryProvider;
|
|
11
11
|
/**
|
|
12
12
|
* Injects the RadioItem state.
|
|
13
13
|
*/
|
|
@@ -6,12 +6,12 @@ export declare const NgpRovingFocusGroupStateToken: import("@angular/core").Inje
|
|
|
6
6
|
/**
|
|
7
7
|
* Provides the RovingFocusGroup state.
|
|
8
8
|
*/
|
|
9
|
-
export declare const provideRovingFocusGroupState: () => import("@angular/core").FactoryProvider;
|
|
9
|
+
export declare const provideRovingFocusGroupState: (options?: import("ng-primitives/state").CreateStateProviderOptions) => import("@angular/core").FactoryProvider;
|
|
10
10
|
/**
|
|
11
11
|
* Injects the RovingFocusGroup state.
|
|
12
12
|
*/
|
|
13
13
|
export declare const injectRovingFocusGroupState: <U = {
|
|
14
|
-
readonly directionality: import("@angular/cdk/bidi").Directionality;
|
|
14
|
+
readonly directionality: import("@angular/cdk/bidi-module.d-BSI86Zrk").Directionality;
|
|
15
15
|
readonly orientation: import("@angular/core").InputSignal<import("ng-primitives/common").NgpOrientation>;
|
|
16
16
|
readonly wrap: import("@angular/core").InputSignalWithTransform<boolean, import("@angular/cdk/coercion").BooleanInput>;
|
|
17
17
|
readonly homeEnd: import("@angular/core").InputSignalWithTransform<boolean, import("@angular/cdk/coercion").BooleanInput>;
|
|
@@ -22,11 +22,11 @@ export declare const injectRovingFocusGroupState: <U = {
|
|
|
22
22
|
readonly state: import("ng-primitives/state").CreatedState<NgpRovingFocusGroup>;
|
|
23
23
|
register: (item: import("ng-primitives/roving-focus").NgpRovingFocusItem) => void;
|
|
24
24
|
unregister: (item: import("ng-primitives/roving-focus").NgpRovingFocusItem) => void;
|
|
25
|
-
setActiveItem: (item: import("ng-primitives/roving-focus").NgpRovingFocusItem | null, origin?: import("@angular/cdk/
|
|
26
|
-
activateFirstItem: (origin: import("@angular/cdk/
|
|
27
|
-
activateLastItem: (origin: import("@angular/cdk/
|
|
28
|
-
activateNextItem: (origin: import("@angular/cdk/
|
|
29
|
-
activatePreviousItem: (origin: import("@angular/cdk/
|
|
25
|
+
setActiveItem: (item: import("ng-primitives/roving-focus").NgpRovingFocusItem | null, origin?: import("@angular/cdk/focus-monitor.d-BBkiOKUH").FocusOrigin) => void;
|
|
26
|
+
activateFirstItem: (origin: import("@angular/cdk/focus-monitor.d-BBkiOKUH").FocusOrigin) => void;
|
|
27
|
+
activateLastItem: (origin: import("@angular/cdk/focus-monitor.d-BBkiOKUH").FocusOrigin) => void;
|
|
28
|
+
activateNextItem: (origin: import("@angular/cdk/focus-monitor.d-BBkiOKUH").FocusOrigin) => void;
|
|
29
|
+
activatePreviousItem: (origin: import("@angular/cdk/focus-monitor.d-BBkiOKUH").FocusOrigin) => void;
|
|
30
30
|
onKeydown: (event: KeyboardEvent) => void;
|
|
31
31
|
}>(injectOptions?: import("@angular/core").InjectOptions) => import("@angular/core").Signal<import("ng-primitives/state").State<U>>;
|
|
32
32
|
/**
|
|
@@ -22,7 +22,10 @@ export interface AngularPrimitivesComponentSchema {
|
|
|
22
22
|
| 'dialog'
|
|
23
23
|
| 'file-upload'
|
|
24
24
|
| 'search'
|
|
25
|
-
| 'toast'
|
|
25
|
+
| 'toast'
|
|
26
|
+
| 'toolbar'
|
|
27
|
+
| 'tooltip'
|
|
28
|
+
| 'meter';
|
|
26
29
|
|
|
27
30
|
/**
|
|
28
31
|
* The path where the component files should be created, relative to the current workspace.
|
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
"form-field",
|
|
21
21
|
"input",
|
|
22
22
|
"listbox",
|
|
23
|
+
"meter",
|
|
23
24
|
"pagination",
|
|
24
25
|
"progress",
|
|
25
26
|
"radio",
|
|
@@ -31,7 +32,9 @@
|
|
|
31
32
|
"textarea",
|
|
32
33
|
"toast",
|
|
33
34
|
"toggle",
|
|
34
|
-
"toggle-group"
|
|
35
|
+
"toggle-group",
|
|
36
|
+
"toolbar",
|
|
37
|
+
"tooltip"
|
|
35
38
|
],
|
|
36
39
|
"x-prompt": "What primitive would you like to generate?",
|
|
37
40
|
"$default": {
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { NumberInput } from '@angular/cdk/coercion';
|
|
2
|
+
import { Component, input, numberAttribute } from '@angular/core';
|
|
3
|
+
import {
|
|
4
|
+
NgpMeter,
|
|
5
|
+
NgpMeterIndicator,
|
|
6
|
+
NgpMeterLabel,
|
|
7
|
+
NgpMeterTrack,
|
|
8
|
+
NgpMeterValue,
|
|
9
|
+
} from 'ng-primitives/meter';
|
|
10
|
+
|
|
11
|
+
@Component({
|
|
12
|
+
selector: '<%= prefix %>-meter',
|
|
13
|
+
hostDirectives: [
|
|
14
|
+
{ directive: NgpMeter, inputs: ['ngpMeterValue:value', 'ngpMeterMin:min', 'ngpMeterMax:max'] },
|
|
15
|
+
],
|
|
16
|
+
imports: [NgpMeterIndicator, NgpMeterLabel, NgpMeterValue, NgpMeterTrack],
|
|
17
|
+
template: `
|
|
18
|
+
<span ngpMeterLabel>{{ label() }}</span>
|
|
19
|
+
<span ngpMeterValue>{{ value() }}%</span>
|
|
20
|
+
|
|
21
|
+
<div ngpMeterTrack>
|
|
22
|
+
<div ngpMeterIndicator></div>
|
|
23
|
+
</div>
|
|
24
|
+
`,
|
|
25
|
+
styles: `
|
|
26
|
+
/* These styles rely on CSS variables that can be imported from ng-primitives/example-theme/index.css in your global styles */
|
|
27
|
+
|
|
28
|
+
:host {
|
|
29
|
+
display: grid;
|
|
30
|
+
grid-template-columns: 1fr 1fr;
|
|
31
|
+
grid-row-gap: 0.5rem;
|
|
32
|
+
width: 200px;
|
|
33
|
+
box-sizing: border-box;
|
|
34
|
+
padding: 0.5rem;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
[ngpMeterLabel] {
|
|
38
|
+
color: var(--ngp-text-emphasis);
|
|
39
|
+
font-size: 14px;
|
|
40
|
+
font-weight: 600;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
[ngpMeterValue] {
|
|
44
|
+
color: var(--ngp-text-secondary);
|
|
45
|
+
font-size: 14px;
|
|
46
|
+
font-weight: 500;
|
|
47
|
+
text-align: right;
|
|
48
|
+
grid-column-start: 2;
|
|
49
|
+
text-align: end;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
[ngpMeterTrack] {
|
|
53
|
+
grid-column: 1 / 3;
|
|
54
|
+
overflow: hidden;
|
|
55
|
+
background-color: var(--ngp-background);
|
|
56
|
+
box-shadow: var(--ngp-shadow-border);
|
|
57
|
+
border-radius: 4px;
|
|
58
|
+
height: 8px;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
[ngpMeterIndicator] {
|
|
62
|
+
background-color: var(--ngp-background-success);
|
|
63
|
+
height: 100%;
|
|
64
|
+
transition: width 0.2s ease-in-out;
|
|
65
|
+
inset-inline-start: 0px;
|
|
66
|
+
border-radius: 4px;
|
|
67
|
+
}
|
|
68
|
+
`,
|
|
69
|
+
})
|
|
70
|
+
export class Meter<%= componentSuffix %> {
|
|
71
|
+
/** The value of the meter. */
|
|
72
|
+
readonly value = input<number, NumberInput>(0, {
|
|
73
|
+
transform: numberAttribute,
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
/** The label of the meter. */
|
|
77
|
+
readonly label = input.required<string>();
|
|
78
|
+
}
|
package/schematics/ng-generate/templates/pagination/pagination.__fileSuffix@dasherize__.ts.template
CHANGED
|
@@ -51,39 +51,39 @@ import { ChangeFn, provideValueAccessor, TouchedFn } from 'ng-primitives/utils';
|
|
|
51
51
|
template: `
|
|
52
52
|
<ul>
|
|
53
53
|
<li>
|
|
54
|
-
<
|
|
54
|
+
<button ngpPaginationFirst aria-label="First Page">
|
|
55
55
|
<ng-icon name="heroChevronDoubleLeft" />
|
|
56
|
-
</
|
|
56
|
+
</button>
|
|
57
57
|
</li>
|
|
58
58
|
|
|
59
59
|
<li>
|
|
60
|
-
<
|
|
60
|
+
<button ngpPaginationPrevious aria-label="Previous Page">
|
|
61
61
|
<ng-icon name="heroChevronLeft" />
|
|
62
|
-
</
|
|
62
|
+
</button>
|
|
63
63
|
</li>
|
|
64
64
|
|
|
65
65
|
@for (page of pages(); track page) {
|
|
66
66
|
<li>
|
|
67
|
-
<
|
|
67
|
+
<button
|
|
68
68
|
[ngpPaginationButtonPage]="page"
|
|
69
69
|
[attr.aria-label]="'Page ' + page"
|
|
70
70
|
ngpPaginationButton
|
|
71
71
|
>
|
|
72
72
|
{{ page }}
|
|
73
|
-
</
|
|
73
|
+
</button>
|
|
74
74
|
</li>
|
|
75
75
|
}
|
|
76
76
|
|
|
77
77
|
<li>
|
|
78
|
-
<
|
|
78
|
+
<button ngpPaginationNext aria-label="Next Page">
|
|
79
79
|
<ng-icon name="heroChevronRight" />
|
|
80
|
-
</
|
|
80
|
+
</button>
|
|
81
81
|
</li>
|
|
82
82
|
|
|
83
83
|
<li>
|
|
84
|
-
<
|
|
84
|
+
<button ngpPaginationLast aria-label="Last Page">
|
|
85
85
|
<ng-icon name="heroChevronDoubleRight" />
|
|
86
|
-
</
|
|
86
|
+
</button>
|
|
87
87
|
</li>
|
|
88
88
|
</ul>
|
|
89
89
|
`,
|
|
@@ -116,7 +116,7 @@ import { ChangeFn, provideValueAccessor, TouchedFn } from 'ng-primitives/utils';
|
|
|
116
116
|
background-color: var(--ngp-background);
|
|
117
117
|
box-shadow: var(--ngp-button-shadow);
|
|
118
118
|
cursor: pointer;
|
|
119
|
-
transition:
|
|
119
|
+
transition: background-color 0.2s;
|
|
120
120
|
|
|
121
121
|
&[data-hover]:not([data-disabled]):not([data-selected]) {
|
|
122
122
|
background-color: var(--ngp-background-hover);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component } from '@angular/core';
|
|
1
|
+
import { Component, input } from '@angular/core';
|
|
2
2
|
import { ControlValueAccessor } from '@angular/forms';
|
|
3
3
|
import {
|
|
4
4
|
injectSliderState,
|
|
@@ -24,12 +24,12 @@ import { ChangeFn, provideValueAccessor, TouchedFn } from 'ng-primitives/utils';
|
|
|
24
24
|
},
|
|
25
25
|
],
|
|
26
26
|
imports: [NgpSliderTrack, NgpSliderRange, NgpSliderThumb],
|
|
27
|
-
|
|
27
|
+
providers: [provideValueAccessor(Slider<%= componentSuffix %>)],
|
|
28
28
|
template: `
|
|
29
29
|
<div ngpSliderTrack>
|
|
30
30
|
<div ngpSliderRange></div>
|
|
31
31
|
</div>
|
|
32
|
-
<div ngpSliderThumb></div>
|
|
32
|
+
<div [ariaLabel]="ariaLabel()" ngpSliderThumb></div>
|
|
33
33
|
`,
|
|
34
34
|
styles: `
|
|
35
35
|
/* These styles rely on CSS variables that can be imported from ng-primitives/example-theme/index.css in your global styles */
|
|
@@ -84,6 +84,11 @@ export class Slider<%= componentSuffix %> implements ControlValueAccessor {
|
|
|
84
84
|
/** Access the slider state */
|
|
85
85
|
private readonly state = injectSliderState();
|
|
86
86
|
|
|
87
|
+
/** Forward the aria-label to the thumb */
|
|
88
|
+
readonly ariaLabel = input<string | null>(null, {
|
|
89
|
+
alias: 'aria-label',
|
|
90
|
+
});
|
|
91
|
+
|
|
87
92
|
/**
|
|
88
93
|
* The onChange callback function.
|
|
89
94
|
*/
|
package/schematics/ng-generate/templates/toolbar/toolbar-button.__fileSuffix@dasherize__.ts.template
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { NgpButton } from 'ng-primitives/button';
|
|
3
|
+
import { NgpRovingFocusItem } from 'ng-primitives/roving-focus';
|
|
4
|
+
|
|
5
|
+
@Component({
|
|
6
|
+
selector: 'button[<%= prefix %>-toolbar-button]',
|
|
7
|
+
hostDirectives: [
|
|
8
|
+
{ directive: NgpButton, inputs: ['disabled'] },
|
|
9
|
+
{
|
|
10
|
+
directive: NgpRovingFocusItem,
|
|
11
|
+
inputs: ['ngpRovingFocusItemDisabled:disabled'],
|
|
12
|
+
},
|
|
13
|
+
],
|
|
14
|
+
host: {
|
|
15
|
+
type: 'button',
|
|
16
|
+
},
|
|
17
|
+
template: `
|
|
18
|
+
<ng-content />
|
|
19
|
+
`,
|
|
20
|
+
styles: `
|
|
21
|
+
/* These styles rely on CSS variables that can be imported from ng-primitives/example-theme/index.css in your global styles */
|
|
22
|
+
|
|
23
|
+
:host {
|
|
24
|
+
display: flex;
|
|
25
|
+
width: 2rem;
|
|
26
|
+
height: 2rem;
|
|
27
|
+
align-items: center;
|
|
28
|
+
justify-content: center;
|
|
29
|
+
border-radius: 0.25rem;
|
|
30
|
+
border: 1px solid transparent;
|
|
31
|
+
background: transparent;
|
|
32
|
+
outline: none;
|
|
33
|
+
transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1);
|
|
34
|
+
box-sizing: border-box;
|
|
35
|
+
color: var(--ngp-text-primary);
|
|
36
|
+
cursor: pointer;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
:host[data-hover] {
|
|
40
|
+
background-color: var(--ngp-background-hover);
|
|
41
|
+
border-color: var(--ngp-border);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
:host[data-focus-visible] {
|
|
45
|
+
outline: 2px solid var(--ngp-focus-ring);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
:host[data-press] {
|
|
49
|
+
background-color: var(--ngp-background-active);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
:host[data-selected] {
|
|
53
|
+
background-color: var(--ngp-background-inverse);
|
|
54
|
+
color: var(--ngp-text-inverse);
|
|
55
|
+
}
|
|
56
|
+
`,
|
|
57
|
+
})
|
|
58
|
+
export class ToolbarButton<%= componentSuffix %> {}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { injectToolbarState, NgpToolbar } from 'ng-primitives/toolbar';
|
|
3
|
+
|
|
4
|
+
@Component({
|
|
5
|
+
selector: '<%= prefix %>-toolbar',
|
|
6
|
+
hostDirectives: [{ directive: NgpToolbar, inputs: ['ngpToolbarOrientation:orientation'] }],
|
|
7
|
+
template: `
|
|
8
|
+
<ng-content />
|
|
9
|
+
`,
|
|
10
|
+
styles: `
|
|
11
|
+
/* These styles rely on CSS variables that can be imported from ng-primitives/example-theme/index.css in your global styles */
|
|
12
|
+
|
|
13
|
+
:host {
|
|
14
|
+
display: flex;
|
|
15
|
+
column-gap: 0.25rem;
|
|
16
|
+
align-items: center;
|
|
17
|
+
border-radius: 0.375rem;
|
|
18
|
+
background-color: var(--ngp-background);
|
|
19
|
+
box-shadow: var(--ngp-button-shadow);
|
|
20
|
+
padding: 0.25rem;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
:host[data-orientation='vertical'] {
|
|
24
|
+
flex-direction: column;
|
|
25
|
+
row-gap: 0.25rem;
|
|
26
|
+
}
|
|
27
|
+
`,
|
|
28
|
+
})
|
|
29
|
+
export class Toolbar<%= componentSuffix %> {
|
|
30
|
+
/** Access the toolbar state */
|
|
31
|
+
private readonly toolbar = injectToolbarState();
|
|
32
|
+
|
|
33
|
+
constructor() {
|
|
34
|
+
// default to horizontal orientation
|
|
35
|
+
this.toolbar().orientation.set('horizontal');
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Directive, input } from '@angular/core';
|
|
2
|
+
import { injectTooltipTriggerState, NgpTooltipTrigger } from 'ng-primitives/tooltip';
|
|
3
|
+
import { Tooltip } from './tooltip';
|
|
4
|
+
|
|
5
|
+
@Directive({
|
|
6
|
+
selector: '[appTooltipTrigger]',
|
|
7
|
+
hostDirectives: [
|
|
8
|
+
{
|
|
9
|
+
directive: NgpTooltipTrigger,
|
|
10
|
+
inputs: [
|
|
11
|
+
'ngpTooltipTriggerPlacement:appTooltipTriggerPlacement',
|
|
12
|
+
'ngpTooltipTriggerDisabled:appTooltipTriggerDisabled',
|
|
13
|
+
'ngpTooltipTriggerOffset:appTooltipTriggerOffset',
|
|
14
|
+
'ngpTooltipTriggerShowDelay:appTooltipTriggerShowDelay',
|
|
15
|
+
'ngpTooltipTriggerHideDelay:appTooltipTriggerHideDelay',
|
|
16
|
+
'ngpTooltipTriggerFlip:appTooltipTriggerFlip',
|
|
17
|
+
'ngpTooltipTriggerContainer:appTooltipTriggerContainer',
|
|
18
|
+
'ngpTooltipTriggerContext:appTooltipTrigger',
|
|
19
|
+
],
|
|
20
|
+
},
|
|
21
|
+
],
|
|
22
|
+
})
|
|
23
|
+
export class TooltipTrigger {
|
|
24
|
+
/** Access the tooltip trigger */
|
|
25
|
+
private readonly tooltipTrigger = injectTooltipTriggerState();
|
|
26
|
+
|
|
27
|
+
/** Define the content of the tooltip */
|
|
28
|
+
readonly content = input.required<string>({
|
|
29
|
+
alias: 'appTooltipTrigger',
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
constructor() {
|
|
33
|
+
this.tooltipTrigger().tooltip.set(Tooltip);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { injectTooltipContext, NgpTooltip } from 'ng-primitives/tooltip';
|
|
3
|
+
|
|
4
|
+
@Component({
|
|
5
|
+
selector: '<%= prefix %>-tooltip',
|
|
6
|
+
hostDirectives: [NgpTooltip],
|
|
7
|
+
template: `
|
|
8
|
+
{{ content }}
|
|
9
|
+
`,
|
|
10
|
+
styles: `
|
|
11
|
+
/* These styles rely on CSS variables that can be imported from ng-primitives/example-theme/index.css in your global styles */
|
|
12
|
+
|
|
13
|
+
:host {
|
|
14
|
+
position: absolute;
|
|
15
|
+
max-width: 16rem;
|
|
16
|
+
border-radius: 0.5rem;
|
|
17
|
+
background-color: var(--ngp-background-inverse);
|
|
18
|
+
padding: 0.5rem 0.75rem;
|
|
19
|
+
border: none;
|
|
20
|
+
font-size: 0.75rem;
|
|
21
|
+
font-weight: 500;
|
|
22
|
+
color: var(--ngp-text-inverse);
|
|
23
|
+
transform-origin: var(--ngp-tooltip-transform-origin);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
:host[data-enter] {
|
|
27
|
+
animation: tooltip-show 200ms ease-in-out;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
:host[data-exit] {
|
|
31
|
+
animation: tooltip-hide 200ms ease-in-out;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
@keyframes tooltip-show {
|
|
35
|
+
0% {
|
|
36
|
+
opacity: 0;
|
|
37
|
+
transform: scale(0.9);
|
|
38
|
+
}
|
|
39
|
+
100% {
|
|
40
|
+
opacity: 1;
|
|
41
|
+
transform: scale(1);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
@keyframes tooltip-hide {
|
|
46
|
+
0% {
|
|
47
|
+
opacity: 1;
|
|
48
|
+
transform: scale(1);
|
|
49
|
+
}
|
|
50
|
+
100% {
|
|
51
|
+
opacity: 0;
|
|
52
|
+
transform: scale(0.9);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
`,
|
|
56
|
+
})
|
|
57
|
+
export class Tooltip<%= componentSuffix %> {
|
|
58
|
+
/** Access the tooltip context where the content is stored. */
|
|
59
|
+
protected readonly content = injectTooltipContext<string>();
|
|
60
|
+
}
|
|
@@ -6,7 +6,7 @@ export declare const NgpSearchStateToken: import("@angular/core").InjectionToken
|
|
|
6
6
|
/**
|
|
7
7
|
* Provides the Search state.
|
|
8
8
|
*/
|
|
9
|
-
export declare const provideSearchState: () => import("@angular/core").FactoryProvider;
|
|
9
|
+
export declare const provideSearchState: (options?: import("ng-primitives/state").CreateStateProviderOptions) => import("@angular/core").FactoryProvider;
|
|
10
10
|
/**
|
|
11
11
|
* Injects the Search state.
|
|
12
12
|
*/
|
|
@@ -6,7 +6,7 @@ export declare const NgpSelectStateToken: import("@angular/core").InjectionToken
|
|
|
6
6
|
/**
|
|
7
7
|
* Provides the Select state.
|
|
8
8
|
*/
|
|
9
|
-
export declare const provideSelectState: () => import("@angular/core").FactoryProvider;
|
|
9
|
+
export declare const provideSelectState: (options?: import("ng-primitives/state").CreateStateProviderOptions) => import("@angular/core").FactoryProvider;
|
|
10
10
|
/**
|
|
11
11
|
* Injects the Select state.
|
|
12
12
|
*/
|
|
@@ -6,16 +6,16 @@ export declare const NgpSliderStateToken: import("@angular/core").InjectionToken
|
|
|
6
6
|
/**
|
|
7
7
|
* Provides the Slider state.
|
|
8
8
|
*/
|
|
9
|
-
export declare const provideSliderState: () => import("@angular/core").FactoryProvider;
|
|
9
|
+
export declare const provideSliderState: (options?: import("ng-primitives/state").CreateStateProviderOptions) => import("@angular/core").FactoryProvider;
|
|
10
10
|
/**
|
|
11
11
|
* Injects the Slider state.
|
|
12
12
|
*/
|
|
13
13
|
export declare const injectSliderState: <U = {
|
|
14
|
-
readonly value: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/
|
|
14
|
+
readonly value: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/number-property.d-BzBQchZ2").NumberInput>;
|
|
15
15
|
readonly valueChange: import("@angular/core").OutputEmitterRef<number>;
|
|
16
|
-
readonly min: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/
|
|
17
|
-
readonly max: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/
|
|
18
|
-
readonly step: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/
|
|
16
|
+
readonly min: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/number-property.d-BzBQchZ2").NumberInput>;
|
|
17
|
+
readonly max: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/number-property.d-BzBQchZ2").NumberInput>;
|
|
18
|
+
readonly step: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/number-property.d-BzBQchZ2").NumberInput>;
|
|
19
19
|
readonly orientation: import("@angular/core").InputSignal<import("ng-primitives/common").NgpOrientation>;
|
|
20
20
|
readonly disabled: import("@angular/core").InputSignalWithTransform<boolean, import("@angular/cdk/coercion").BooleanInput>;
|
|
21
21
|
readonly track: import("@angular/core").WritableSignal<import("ng-primitives/slider").NgpSliderTrack | undefined>;
|
|
@@ -7,11 +7,11 @@ export declare class NgpSliderRange {
|
|
|
7
7
|
* Access the slider state.
|
|
8
8
|
*/
|
|
9
9
|
protected readonly sliderState: import("@angular/core").Signal<import("ng-primitives/state").State<{
|
|
10
|
-
readonly value: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/
|
|
10
|
+
readonly value: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/number-property.d-BzBQchZ2").NumberInput>;
|
|
11
11
|
readonly valueChange: import("@angular/core").OutputEmitterRef<number>;
|
|
12
|
-
readonly min: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/
|
|
13
|
-
readonly max: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/
|
|
14
|
-
readonly step: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/
|
|
12
|
+
readonly min: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/number-property.d-BzBQchZ2").NumberInput>;
|
|
13
|
+
readonly max: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/number-property.d-BzBQchZ2").NumberInput>;
|
|
14
|
+
readonly step: import("@angular/core").InputSignalWithTransform<number, import("@angular/cdk/number-property.d-BzBQchZ2").NumberInput>;
|
|
15
15
|
readonly orientation: import("@angular/core").InputSignal<import("ng-primitives/common").NgpOrientation>;
|
|
16
16
|
readonly disabled: import("@angular/core").InputSignalWithTransform<boolean, import("@angular/cdk/coercion").BooleanInput>;
|
|
17
17
|
readonly track: import("@angular/core").WritableSignal<import("ng-primitives/slider").NgpSliderTrack | undefined>;
|