@radix-ng/primitives 1.0.0-beta.1 → 1.0.0-beta.2
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/radix-ng-primitives-accordion.mjs +2 -2
- package/fesm2022/radix-ng-primitives-accordion.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-calendar.mjs +14 -1
- package/fesm2022/radix-ng-primitives-calendar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-checkbox.mjs +2 -2
- package/fesm2022/radix-ng-primitives-checkbox.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-collapsible.mjs +1 -1
- package/fesm2022/radix-ng-primitives-collapsible.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-combobox.mjs +1923 -0
- package/fesm2022/radix-ng-primitives-combobox.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-context-menu.mjs +1 -1
- package/fesm2022/radix-ng-primitives-context-menu.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-core.mjs +480 -469
- package/fesm2022/radix-ng-primitives-core.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-cropper.mjs +1 -1
- package/fesm2022/radix-ng-primitives-cropper.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-date-field.mjs +11 -0
- package/fesm2022/radix-ng-primitives-date-field.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-dialog.mjs +1 -1
- package/fesm2022/radix-ng-primitives-dialog.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-drawer.mjs +1 -1
- package/fesm2022/radix-ng-primitives-drawer.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-editable.mjs +1 -1
- package/fesm2022/radix-ng-primitives-editable.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-field.mjs +86 -6
- package/fesm2022/radix-ng-primitives-field.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-fieldset.mjs +1 -1
- package/fesm2022/radix-ng-primitives-fieldset.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-focus-scope.mjs +1 -1
- package/fesm2022/radix-ng-primitives-focus-scope.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-form.mjs +207 -0
- package/fesm2022/radix-ng-primitives-form.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-input.mjs +85 -4
- package/fesm2022/radix-ng-primitives-input.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-menu.mjs +4 -4
- package/fesm2022/radix-ng-primitives-menu.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-menubar.mjs +1 -1
- package/fesm2022/radix-ng-primitives-menubar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-meter.mjs +1 -1
- package/fesm2022/radix-ng-primitives-meter.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-navigation-menu.mjs +1 -1
- package/fesm2022/radix-ng-primitives-navigation-menu.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-number-field.mjs +2 -2
- package/fesm2022/radix-ng-primitives-number-field.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-popover.mjs +1 -1
- package/fesm2022/radix-ng-primitives-popover.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-popper.mjs +1 -1
- package/fesm2022/radix-ng-primitives-popper.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-preview-card.mjs +1 -1
- package/fesm2022/radix-ng-primitives-preview-card.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-progress.mjs +1 -1
- package/fesm2022/radix-ng-primitives-progress.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-roving-focus.mjs +1 -1
- package/fesm2022/radix-ng-primitives-roving-focus.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-scroll-area.mjs +3 -3
- package/fesm2022/radix-ng-primitives-scroll-area.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-select.mjs +421 -224
- package/fesm2022/radix-ng-primitives-select.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-slider.mjs +1 -1
- package/fesm2022/radix-ng-primitives-slider.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-switch.mjs +3 -2
- package/fesm2022/radix-ng-primitives-switch.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-tabs.mjs +1 -1
- package/fesm2022/radix-ng-primitives-tabs.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-time-field.mjs +27 -3
- package/fesm2022/radix-ng-primitives-time-field.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toast.mjs +1 -1
- package/fesm2022/radix-ng-primitives-toast.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toggle-group.mjs +1 -1
- package/fesm2022/radix-ng-primitives-toggle-group.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toolbar.mjs +2 -2
- package/fesm2022/radix-ng-primitives-toolbar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-tooltip.mjs +2 -2
- package/fesm2022/radix-ng-primitives-tooltip.mjs.map +1 -1
- package/package.json +9 -1
- package/schematics/ng-add/index.js +57 -0
- package/schematics/ng-add/index.js.map +1 -1
- package/schematics/ng-add/schema.d.ts +1 -0
- package/schematics/ng-add/schema.json +6 -0
- package/types/radix-ng-primitives-combobox.d.ts +1265 -0
- package/types/radix-ng-primitives-core.d.ts +148 -56
- package/types/radix-ng-primitives-field.d.ts +71 -2
- package/types/radix-ng-primitives-form.d.ts +124 -0
- package/types/radix-ng-primitives-input.d.ts +75 -5
- package/types/radix-ng-primitives-select.d.ts +292 -132
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { RdxFormValueControl, BooleanInput } from '@radix-ng/primitives/core';
|
|
2
|
+
import { RdxFormValueControl, BooleanInput, RdxValidationError, NumberInput } from '@radix-ng/primitives/core';
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
/**
|
|
5
|
+
* The input value. Native text inputs always produce strings, so the model is
|
|
6
|
+
* `string` — matching Signal Forms' `FormValueControl<string>` round-trip.
|
|
7
|
+
*/
|
|
8
|
+
type RdxInputValue = string;
|
|
5
9
|
interface RdxInputValueChangeEventDetails {
|
|
6
10
|
event: Event;
|
|
7
11
|
cancel: () => void;
|
|
@@ -24,30 +28,44 @@ declare class RdxInputDirective implements RdxFormValueControl<RdxInputValue | u
|
|
|
24
28
|
private defaultValueApplied;
|
|
25
29
|
private readonly filledValue;
|
|
26
30
|
private readonly focusedValue;
|
|
31
|
+
private readonly dirtyValue;
|
|
27
32
|
/**
|
|
28
33
|
* The input id. Field labels and descriptions use this value for accessible relationships.
|
|
29
34
|
*
|
|
30
35
|
* @group Props
|
|
31
36
|
*/
|
|
32
37
|
readonly id: _angular_core.InputSignal<string>;
|
|
38
|
+
/**
|
|
39
|
+
* The name of the input, submitted with the form data and used by Form-level
|
|
40
|
+
* error matching.
|
|
41
|
+
*
|
|
42
|
+
* @group Props
|
|
43
|
+
*/
|
|
44
|
+
readonly name: _angular_core.InputSignal<string | undefined>;
|
|
33
45
|
/**
|
|
34
46
|
* The controlled input value.
|
|
35
47
|
*
|
|
36
48
|
* @group Props
|
|
37
49
|
*/
|
|
38
|
-
readonly value: _angular_core.ModelSignal<
|
|
50
|
+
readonly value: _angular_core.ModelSignal<string | undefined>;
|
|
39
51
|
/**
|
|
40
52
|
* The initial value when the input is uncontrolled.
|
|
41
53
|
*
|
|
42
54
|
* @group Props
|
|
43
55
|
*/
|
|
44
|
-
readonly defaultValue: _angular_core.InputSignal<
|
|
56
|
+
readonly defaultValue: _angular_core.InputSignal<string | undefined>;
|
|
45
57
|
/**
|
|
46
58
|
* Whether the input is disabled.
|
|
47
59
|
*
|
|
48
60
|
* @group Props
|
|
49
61
|
*/
|
|
50
62
|
readonly disabled: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
|
|
63
|
+
/**
|
|
64
|
+
* Whether the input is read-only.
|
|
65
|
+
*
|
|
66
|
+
* @group Props
|
|
67
|
+
*/
|
|
68
|
+
readonly readonly: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
|
|
51
69
|
/**
|
|
52
70
|
* Whether the input is required.
|
|
53
71
|
*
|
|
@@ -60,17 +78,69 @@ declare class RdxInputDirective implements RdxFormValueControl<RdxInputValue | u
|
|
|
60
78
|
* @group Props
|
|
61
79
|
*/
|
|
62
80
|
readonly invalid: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
|
|
81
|
+
/**
|
|
82
|
+
* Whether the input has been touched. A two-way model: the input sets it on
|
|
83
|
+
* blur (emitting `touchedChange`, which Signal Forms' `[formField]` listens
|
|
84
|
+
* to), and a form system can write it back.
|
|
85
|
+
*
|
|
86
|
+
* @group Props
|
|
87
|
+
*/
|
|
88
|
+
readonly touched: _angular_core.ModelSignal<boolean>;
|
|
89
|
+
/**
|
|
90
|
+
* Whether the input value has changed from its initial value. Merged with the
|
|
91
|
+
* internally tracked state; a form system can own it through this input.
|
|
92
|
+
*
|
|
93
|
+
* @group Props
|
|
94
|
+
*/
|
|
95
|
+
readonly dirty: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
|
|
96
|
+
/**
|
|
97
|
+
* Validation errors for the input. A non-empty list marks the input invalid.
|
|
98
|
+
*
|
|
99
|
+
* @group Props
|
|
100
|
+
*/
|
|
101
|
+
readonly errors: _angular_core.InputSignal<readonly RdxValidationError[]>;
|
|
102
|
+
/**
|
|
103
|
+
* Minimum number of characters.
|
|
104
|
+
*
|
|
105
|
+
* @group Props
|
|
106
|
+
*/
|
|
107
|
+
readonly minLength: _angular_core.InputSignalWithTransform<number | undefined, NumberInput>;
|
|
108
|
+
/**
|
|
109
|
+
* Maximum number of characters.
|
|
110
|
+
*
|
|
111
|
+
* @group Props
|
|
112
|
+
*/
|
|
113
|
+
readonly maxLength: _angular_core.InputSignalWithTransform<number | undefined, NumberInput>;
|
|
114
|
+
/**
|
|
115
|
+
* Patterns the value must match. Reflected to the native `pattern` attribute
|
|
116
|
+
* only when exactly one pattern is provided (the attribute holds a single regex).
|
|
117
|
+
*
|
|
118
|
+
* @group Props
|
|
119
|
+
*/
|
|
120
|
+
readonly pattern: _angular_core.InputSignal<readonly RegExp[]>;
|
|
63
121
|
/**
|
|
64
122
|
* Emits when the input value changes.
|
|
65
123
|
*
|
|
66
124
|
* @group Emits
|
|
67
125
|
*/
|
|
68
126
|
readonly onValueChange: _angular_core.OutputEmitterRef<RdxInputValueChangeEvent>;
|
|
127
|
+
/**
|
|
128
|
+
* Emits on blur, notifying a form system the input was touched. Stable
|
|
129
|
+
* Angular 22 Signal Forms listens to this `touch` output; the 21.x
|
|
130
|
+
* experimental implementation listens to the `touched` model's
|
|
131
|
+
* `touchedChange` instead — both are emitted, covering either version.
|
|
132
|
+
*
|
|
133
|
+
* @group Emits
|
|
134
|
+
*/
|
|
135
|
+
readonly touch: _angular_core.OutputEmitterRef<void>;
|
|
69
136
|
protected readonly invalidState: _angular_core.Signal<boolean>;
|
|
70
137
|
protected readonly disabledState: _angular_core.Signal<boolean>;
|
|
71
138
|
protected readonly requiredState: _angular_core.Signal<boolean>;
|
|
72
139
|
protected readonly filledState: _angular_core.Signal<boolean>;
|
|
73
140
|
protected readonly focusedState: _angular_core.Signal<boolean>;
|
|
141
|
+
protected readonly touchedState: _angular_core.Signal<boolean>;
|
|
142
|
+
protected readonly dirtyState: _angular_core.Signal<boolean>;
|
|
143
|
+
protected readonly patternAttr: _angular_core.Signal<string | undefined>;
|
|
74
144
|
protected readonly describedBy: _angular_core.Signal<string | undefined>;
|
|
75
145
|
constructor();
|
|
76
146
|
onFocus(): void;
|
|
@@ -80,7 +150,7 @@ declare class RdxInputDirective implements RdxFormValueControl<RdxInputValue | u
|
|
|
80
150
|
private writeValue;
|
|
81
151
|
protected readonly dataAttr: (value: boolean) => "" | undefined;
|
|
82
152
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxInputDirective, never>;
|
|
83
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxInputDirective, "input[rdxInput]", ["rdxInput"], { "id": { "alias": "id"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "defaultValue": { "alias": "defaultValue"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "onValueChange": "onValueChange"; }, never, never, true, never>;
|
|
153
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxInputDirective, "input[rdxInput]", ["rdxInput"], { "id": { "alias": "id"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "defaultValue": { "alias": "defaultValue"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "dirty": { "alias": "dirty"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "minLength": { "alias": "minLength"; "required": false; "isSignal": true; }; "maxLength": { "alias": "maxLength"; "required": false; "isSignal": true; }; "pattern": { "alias": "pattern"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "touched": "touchedChange"; "onValueChange": "onValueChange"; "touch": "touch"; }, never, never, true, never>;
|
|
84
154
|
}
|
|
85
155
|
|
|
86
156
|
export { RdxInputDirective };
|