@momentumcms/ui 0.3.0 → 0.4.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/package.json
CHANGED
|
@@ -32,6 +32,8 @@ type BadgeVariant = 'default' | 'secondary' | 'destructive' | 'outline' | 'succe
|
|
|
32
32
|
declare class Badge {
|
|
33
33
|
readonly variant: _angular_core.InputSignal<BadgeVariant>;
|
|
34
34
|
readonly class: _angular_core.InputSignal<string>;
|
|
35
|
+
/** ARIA role. Set to 'status' for live-region badges, or null for decorative. */
|
|
36
|
+
readonly role: _angular_core.InputSignal<string | null>;
|
|
35
37
|
/** Accessible label for screen reader override. */
|
|
36
38
|
readonly ariaLabel: _angular_core.InputSignal<string | undefined>;
|
|
37
39
|
readonly hostClass: _angular_core.Signal<string>;
|
|
@@ -39,7 +41,7 @@ declare class Badge {
|
|
|
39
41
|
readonly variantColor: _angular_core.Signal<string>;
|
|
40
42
|
readonly variantBorder: _angular_core.Signal<string>;
|
|
41
43
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<Badge, never>;
|
|
42
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Badge, "mcms-badge", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
44
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Badge, "mcms-badge", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; "role": { "alias": "role"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
43
45
|
}
|
|
44
46
|
|
|
45
47
|
/**
|
|
@@ -115,7 +117,7 @@ interface ValidationError {
|
|
|
115
117
|
message?: string;
|
|
116
118
|
[key: string]: unknown;
|
|
117
119
|
}
|
|
118
|
-
type InputType = 'text' | 'email' | 'password' | 'number' | 'tel' | 'url' | 'search';
|
|
120
|
+
type InputType = 'text' | 'email' | 'password' | 'number' | 'tel' | 'url' | 'search' | 'date' | 'datetime-local';
|
|
119
121
|
|
|
120
122
|
/**
|
|
121
123
|
* Text input component compatible with Angular Signal Forms.
|
|
@@ -147,6 +149,7 @@ declare class Input {
|
|
|
147
149
|
readonly name: _angular_core.InputSignal<string>;
|
|
148
150
|
readonly placeholder: _angular_core.InputSignal<string>;
|
|
149
151
|
readonly autocomplete: _angular_core.InputSignal<string | undefined>;
|
|
152
|
+
readonly ariaLabel: _angular_core.InputSignal<string | undefined>;
|
|
150
153
|
readonly describedBy: _angular_core.InputSignal<string | undefined>;
|
|
151
154
|
readonly min: _angular_core.InputSignal<number | undefined>;
|
|
152
155
|
readonly max: _angular_core.InputSignal<number | undefined>;
|
|
@@ -156,7 +159,7 @@ declare class Input {
|
|
|
156
159
|
readonly hasError: _angular_core.Signal<boolean>;
|
|
157
160
|
readonly ariaDescribedBy: _angular_core.Signal<string | null>;
|
|
158
161
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<Input, never>;
|
|
159
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Input, "mcms-input", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "autocomplete": { "alias": "autocomplete"; "required": false; "isSignal": true; }; "describedBy": { "alias": "describedBy"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "blurred": "blurred"; }, never, never, true, never>;
|
|
162
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Input, "mcms-input", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "autocomplete": { "alias": "autocomplete"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "describedBy": { "alias": "describedBy"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "blurred": "blurred"; }, never, never, true, never>;
|
|
160
163
|
}
|
|
161
164
|
|
|
162
165
|
/**
|
|
@@ -181,13 +184,14 @@ declare class Textarea {
|
|
|
181
184
|
readonly name: _angular_core.InputSignal<string>;
|
|
182
185
|
readonly placeholder: _angular_core.InputSignal<string>;
|
|
183
186
|
readonly rows: _angular_core.InputSignal<number>;
|
|
187
|
+
readonly ariaLabel: _angular_core.InputSignal<string | undefined>;
|
|
184
188
|
readonly describedBy: _angular_core.InputSignal<string | undefined>;
|
|
185
189
|
/** Emitted when the textarea loses focus */
|
|
186
190
|
readonly blurred: _angular_core.OutputEmitterRef<void>;
|
|
187
191
|
readonly hasError: _angular_core.Signal<boolean>;
|
|
188
192
|
readonly ariaDescribedBy: _angular_core.Signal<string | null>;
|
|
189
193
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<Textarea, never>;
|
|
190
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Textarea, "mcms-textarea", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "rows": { "alias": "rows"; "required": false; "isSignal": true; }; "describedBy": { "alias": "describedBy"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "blurred": "blurred"; }, never, never, true, never>;
|
|
194
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Textarea, "mcms-textarea", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "rows": { "alias": "rows"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "describedBy": { "alias": "describedBy"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "blurred": "blurred"; }, never, never, true, never>;
|
|
191
195
|
}
|
|
192
196
|
|
|
193
197
|
/**
|
|
@@ -236,13 +240,14 @@ declare class Switch {
|
|
|
236
240
|
readonly disabled: _angular_core.InputSignal<boolean>;
|
|
237
241
|
readonly errors: _angular_core.InputSignal<readonly ValidationError[]>;
|
|
238
242
|
readonly id: _angular_core.InputSignal<string>;
|
|
243
|
+
readonly ariaLabel: _angular_core.InputSignal<string | undefined>;
|
|
239
244
|
readonly describedBy: _angular_core.InputSignal<string | undefined>;
|
|
240
245
|
readonly hasLabel: _angular_core.InputSignal<boolean>;
|
|
241
246
|
readonly hasError: _angular_core.Signal<boolean>;
|
|
242
247
|
readonly ariaDescribedBy: _angular_core.Signal<string | null>;
|
|
243
248
|
toggle(): void;
|
|
244
249
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<Switch, never>;
|
|
245
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Switch, "mcms-switch", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "describedBy": { "alias": "describedBy"; "required": false; "isSignal": true; }; "hasLabel": { "alias": "hasLabel"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, ["*"], true, never>;
|
|
250
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Switch, "mcms-switch", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "describedBy": { "alias": "describedBy"; "required": false; "isSignal": true; }; "hasLabel": { "alias": "hasLabel"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, ["*"], true, never>;
|
|
246
251
|
}
|
|
247
252
|
|
|
248
253
|
interface SelectOption {
|
|
@@ -308,6 +313,8 @@ declare class RadioGroup {
|
|
|
308
313
|
readonly id: _angular_core.InputSignal<string>;
|
|
309
314
|
readonly name: _angular_core.InputSignal<string>;
|
|
310
315
|
readonly options: _angular_core.InputSignal<RadioOption[]>;
|
|
316
|
+
readonly ariaLabel: _angular_core.InputSignal<string | undefined>;
|
|
317
|
+
readonly ariaLabelledBy: _angular_core.InputSignal<string | undefined>;
|
|
311
318
|
readonly describedBy: _angular_core.InputSignal<string | undefined>;
|
|
312
319
|
readonly required: _angular_core.InputSignal<boolean>;
|
|
313
320
|
readonly hasError: _angular_core.Signal<boolean>;
|
|
@@ -317,7 +324,7 @@ declare class RadioGroup {
|
|
|
317
324
|
selectOption(optionValue: string): void;
|
|
318
325
|
protected onKeydown(event: KeyboardEvent): void;
|
|
319
326
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RadioGroup, never>;
|
|
320
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<RadioGroup, "mcms-radio-group", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "describedBy": { "alias": "describedBy"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
|
|
327
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<RadioGroup, "mcms-radio-group", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaLabelledBy": { "alias": "ariaLabelledBy"; "required": false; "isSignal": true; }; "describedBy": { "alias": "describedBy"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
|
|
321
328
|
}
|
|
322
329
|
|
|
323
330
|
/**
|
|
@@ -370,9 +377,19 @@ declare class CardHeader {
|
|
|
370
377
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CardHeader, "mcms-card-header", never, {}, {}, never, ["*"], true, never>;
|
|
371
378
|
}
|
|
372
379
|
|
|
380
|
+
/**
|
|
381
|
+
* Card title component that renders as an ARIA heading.
|
|
382
|
+
*
|
|
383
|
+
* Uses `role="heading"` with `aria-level` on the host element instead of
|
|
384
|
+
* native heading elements inside `@switch` blocks. This avoids Angular SSR
|
|
385
|
+
* hydration issues where `<ng-content />` inside control flow blocks causes
|
|
386
|
+
* projected content to be dropped during client-side hydration.
|
|
387
|
+
*/
|
|
373
388
|
declare class CardTitle {
|
|
389
|
+
/** Heading level (1-4). Defaults to 2 for proper document hierarchy. */
|
|
390
|
+
readonly level: _angular_core.InputSignal<1 | 3 | 2 | 4>;
|
|
374
391
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<CardTitle, never>;
|
|
375
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CardTitle, "mcms-card-title", never, {}, {}, never, ["*"], true, never>;
|
|
392
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CardTitle, "mcms-card-title", never, { "level": { "alias": "level"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
376
393
|
}
|
|
377
394
|
|
|
378
395
|
declare class CardDescription {
|
|
@@ -1226,13 +1243,15 @@ declare class Progress {
|
|
|
1226
1243
|
readonly value: _angular_core.InputSignal<number | null>;
|
|
1227
1244
|
/** Maximum value. */
|
|
1228
1245
|
readonly max: _angular_core.InputSignal<number>;
|
|
1246
|
+
/** Accessible label for the progress bar. */
|
|
1247
|
+
readonly ariaLabel: _angular_core.InputSignal<string | undefined>;
|
|
1229
1248
|
/** Additional CSS classes. */
|
|
1230
1249
|
readonly class: _angular_core.InputSignal<string>;
|
|
1231
1250
|
readonly isIndeterminate: _angular_core.Signal<boolean>;
|
|
1232
1251
|
readonly progressWidth: _angular_core.Signal<string>;
|
|
1233
1252
|
readonly hostClasses: _angular_core.Signal<string>;
|
|
1234
1253
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<Progress, never>;
|
|
1235
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Progress, "mcms-progress", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1254
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Progress, "mcms-progress", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1236
1255
|
}
|
|
1237
1256
|
|
|
1238
1257
|
/**
|