@a.nemreen/dga-ui 0.2.8 → 0.3.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/fesm2022/a.nemreen-dga-ui.mjs +470 -502
- package/package.json +2 -2
- package/types/a.nemreen-dga-ui.d.ts +74 -37
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@a.nemreen/dga-ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "DGA Angular UI library — standalone forms, overlays, navigation, and portal shell with RTL-first Tailwind styling",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": {
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"@angular/core": "^19.0.0 || ^20.0.0 || ^21.0.0 || ^22.0.0",
|
|
43
43
|
"@angular/forms": "^19.0.0 || ^20.0.0 || ^21.0.0 || ^22.0.0",
|
|
44
44
|
"@angular/platform-browser": "^19.0.0 || ^20.0.0 || ^21.0.0 || ^22.0.0",
|
|
45
|
-
"@a.nemreen/dga-tokens": "^0.2.0",
|
|
45
|
+
"@a.nemreen/dga-tokens": "^0.2.0 || ^0.3.0",
|
|
46
46
|
"@platformscode/icons": "^0.0.11"
|
|
47
47
|
},
|
|
48
48
|
"engines": {
|
|
@@ -19,6 +19,11 @@ declare class DgaButton {
|
|
|
19
19
|
readonly cooldownMs: _angular_core.InputSignal<number>;
|
|
20
20
|
/** Manual loading state — shows spinner and disables the control. */
|
|
21
21
|
readonly loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
22
|
+
/**
|
|
23
|
+
* Extra classes merged with variant styles.
|
|
24
|
+
* Prefer this over a bare `[class]` on the host — the directive owns `[class]`.
|
|
25
|
+
*/
|
|
26
|
+
readonly buttonClass: _angular_core.InputSignal<string>;
|
|
22
27
|
/** Exposed for host bindings (Angular 22 requires public host expressions). */
|
|
23
28
|
readonly cooling: _angular_core.WritableSignal<boolean>;
|
|
24
29
|
private cooldownTimer;
|
|
@@ -31,7 +36,7 @@ declare class DgaButton {
|
|
|
31
36
|
private detachSpinner;
|
|
32
37
|
private clearCooldown;
|
|
33
38
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<DgaButton, never>;
|
|
34
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<DgaButton, "button[dgaButton], a[dgaButton]", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "iconOnly": { "alias": "iconOnly"; "required": false; "isSignal": true; }; "cooldownMs": { "alias": "cooldownMs"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
39
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<DgaButton, "button[dgaButton], a[dgaButton]", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "iconOnly": { "alias": "iconOnly"; "required": false; "isSignal": true; }; "cooldownMs": { "alias": "cooldownMs"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "buttonClass": { "alias": "dgaButtonClass"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
35
40
|
}
|
|
36
41
|
|
|
37
42
|
type DgaBadgeVariant = 'neutral' | 'primary' | 'success' | 'info' | 'warning' | 'error';
|
|
@@ -1037,8 +1042,10 @@ declare class DgaToast implements OnDestroy {
|
|
|
1037
1042
|
readonly closed: _angular_core.OutputEmitterRef<void>;
|
|
1038
1043
|
private timer;
|
|
1039
1044
|
readonly classes: _angular_core.Signal<string>;
|
|
1045
|
+
/** Clear sticky announcement / reserved chrome, then a small gap. */
|
|
1046
|
+
readonly topOffset: _angular_core.Signal<string>;
|
|
1040
1047
|
readonly iconName: _angular_core.Signal<DgaIconName>;
|
|
1041
|
-
readonly iconTone: _angular_core.Signal<"
|
|
1048
|
+
readonly iconTone: _angular_core.Signal<"success" | "warning" | "error" | "muted" | "current">;
|
|
1042
1049
|
constructor();
|
|
1043
1050
|
ngOnDestroy(): void;
|
|
1044
1051
|
dismiss(): void;
|
|
@@ -1337,7 +1344,7 @@ declare class DgaAlert {
|
|
|
1337
1344
|
readonly titleClasses: _angular_core.Signal<string>;
|
|
1338
1345
|
readonly descriptionClasses: _angular_core.Signal<string>;
|
|
1339
1346
|
readonly iconName: _angular_core.Signal<DgaIconName>;
|
|
1340
|
-
readonly iconTone: _angular_core.Signal<"
|
|
1347
|
+
readonly iconTone: _angular_core.Signal<"success" | "warning" | "error" | "muted" | "current">;
|
|
1341
1348
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<DgaAlert, never>;
|
|
1342
1349
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<DgaAlert, "dga-alert", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "shadow": { "alias": "shadow"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "display": { "alias": "display"; "required": false; "isSignal": true; }; "dismissible": { "alias": "dismissible"; "required": false; "isSignal": true; }; "closeLabel": { "alias": "closeLabel"; "required": false; "isSignal": true; }; }, { "dismissed": "dismissed"; }, never, ["*", "[dgaAlertActions]"], true, never>;
|
|
1343
1350
|
}
|
|
@@ -1856,6 +1863,7 @@ type DgaA11yLetterSpacing = '0' | '0.04em' | '0.08em' | '0.12em';
|
|
|
1856
1863
|
type DgaA11yWordSpacing = '0' | '0.16em' | '0.32em' | '0.48em';
|
|
1857
1864
|
declare class DgaAccessibilityService {
|
|
1858
1865
|
private readonly doc;
|
|
1866
|
+
private readonly zone;
|
|
1859
1867
|
private liveRegion;
|
|
1860
1868
|
private opener;
|
|
1861
1869
|
private mqMotion;
|
|
@@ -1872,15 +1880,20 @@ declare class DgaAccessibilityService {
|
|
|
1872
1880
|
readonly maskBand: _angular_core.WritableSignal<number>;
|
|
1873
1881
|
/** Center Y of the reading-mask band in px. */
|
|
1874
1882
|
readonly maskY: _angular_core.WritableSignal<number>;
|
|
1875
|
-
readonly reduceMotion: _angular_core.
|
|
1876
|
-
readonly highlightLinks: _angular_core.
|
|
1877
|
-
readonly highlightTitles: _angular_core.
|
|
1878
|
-
readonly highContrast: _angular_core.
|
|
1879
|
-
readonly dyslexia: _angular_core.
|
|
1880
|
-
readonly readingMask: _angular_core.
|
|
1881
|
-
readonly motorTargets: _angular_core.
|
|
1882
|
-
/**
|
|
1883
|
-
|
|
1883
|
+
readonly reduceMotion: _angular_core.Signal<boolean>;
|
|
1884
|
+
readonly highlightLinks: _angular_core.Signal<boolean>;
|
|
1885
|
+
readonly highlightTitles: _angular_core.Signal<boolean>;
|
|
1886
|
+
readonly highContrast: _angular_core.Signal<boolean>;
|
|
1887
|
+
readonly dyslexia: _angular_core.Signal<boolean>;
|
|
1888
|
+
readonly readingMask: _angular_core.Signal<boolean>;
|
|
1889
|
+
readonly motorTargets: _angular_core.Signal<boolean>;
|
|
1890
|
+
/**
|
|
1891
|
+
* Reactive UI locale — kept in sync with `<html lang>` / `data-locale`
|
|
1892
|
+
* (including when `DgaLocaleService` updates the document).
|
|
1893
|
+
*/
|
|
1894
|
+
readonly locale: _angular_core.WritableSignal<"ar" | "en">;
|
|
1895
|
+
private readonly effectiveModes;
|
|
1896
|
+
private localeObserver;
|
|
1884
1897
|
constructor();
|
|
1885
1898
|
open(opener?: HTMLElement | null): void;
|
|
1886
1899
|
close(): void;
|
|
@@ -1896,23 +1909,29 @@ declare class DgaAccessibilityService {
|
|
|
1896
1909
|
cycleLineHeight(): void;
|
|
1897
1910
|
cycleLetterSpacing(): void;
|
|
1898
1911
|
cycleWordSpacing(): void;
|
|
1912
|
+
/** Step font size (−1 / +1), wrapping within available levels. */
|
|
1913
|
+
stepFontStep(delta: number): void;
|
|
1914
|
+
stepTextAlign(delta: number): void;
|
|
1915
|
+
stepLineHeight(delta: number): void;
|
|
1916
|
+
stepLetterSpacing(delta: number): void;
|
|
1917
|
+
stepWordSpacing(delta: number): void;
|
|
1899
1918
|
adjustMaskBand(delta: number): void;
|
|
1900
1919
|
setMaskY(y: number): void;
|
|
1901
1920
|
reset(): void;
|
|
1902
1921
|
announce(msg: string): void;
|
|
1903
|
-
/** Current UI locale inferred from `<html lang
|
|
1904
|
-
|
|
1922
|
+
/** Current UI locale inferred from `<html lang>` / `data-locale`. */
|
|
1923
|
+
private readDomLocale;
|
|
1924
|
+
/** Keep `locale` reactive when portal / DgaLocaleService mutates `<html>`. */
|
|
1925
|
+
private bindLocaleObserver;
|
|
1905
1926
|
/**
|
|
1906
1927
|
* Toggle AR/EN on `<html>` (`lang` / `dir` / `data-locale`).
|
|
1907
1928
|
* Compatible with DgaLocaleService attribute contract.
|
|
1908
1929
|
*/
|
|
1909
1930
|
toggleLocale(): 'ar' | 'en';
|
|
1910
1931
|
activeModeCount(section: 'modes' | 'readable' | 'visual'): number;
|
|
1932
|
+
/** Total active settings across profiles + tools + filters (for FAB badge). */
|
|
1933
|
+
activeSettingCount(): number;
|
|
1911
1934
|
private applyBundleExtras;
|
|
1912
|
-
/** Primitive left on by direct toggle (not only via a bundle). */
|
|
1913
|
-
private userKeptPrimitive;
|
|
1914
|
-
private syncDerived;
|
|
1915
|
-
/** Lazily inject OpenDyslexic (Latin). Arabic falls through to Readex Pro. */
|
|
1916
1935
|
private ensureDyslexiaFont;
|
|
1917
1936
|
private applyToDocument;
|
|
1918
1937
|
private persist;
|
|
@@ -1924,8 +1943,8 @@ declare class DgaAccessibilityService {
|
|
|
1924
1943
|
}
|
|
1925
1944
|
|
|
1926
1945
|
type DgaAccessibilityPosition = 'end' | 'start' | 'left' | 'right';
|
|
1927
|
-
type
|
|
1928
|
-
type
|
|
1946
|
+
type AdjustToggleId = 'dyslexia' | 'highlight-titles' | 'highlight-links' | 'reading-mask' | 'reduce-motion';
|
|
1947
|
+
type AdjustStepperId = 'font' | 'align' | 'line' | 'letter' | 'word';
|
|
1929
1948
|
declare class DgaAccessibility {
|
|
1930
1949
|
readonly a11y: DgaAccessibilityService;
|
|
1931
1950
|
readonly position: _angular_core.InputSignal<DgaAccessibilityPosition>;
|
|
@@ -1937,7 +1956,6 @@ declare class DgaAccessibility {
|
|
|
1937
1956
|
readonly panelId = "dga-accessibility-panel";
|
|
1938
1957
|
private readonly panelRef;
|
|
1939
1958
|
readonly fabBottom: _angular_core.Signal<string>;
|
|
1940
|
-
readonly sectionOpen: _angular_core.WritableSignal<SectionOpen>;
|
|
1941
1959
|
readonly resetArmed: _angular_core.WritableSignal<boolean>;
|
|
1942
1960
|
readonly liveMsg: _angular_core.WritableSignal<string>;
|
|
1943
1961
|
private resetTimer;
|
|
@@ -1947,10 +1965,14 @@ declare class DgaAccessibility {
|
|
|
1947
1965
|
close: string;
|
|
1948
1966
|
panelLabel: string;
|
|
1949
1967
|
title: string;
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
|
|
1968
|
+
sectionActive: string;
|
|
1969
|
+
sectionProfiles: string;
|
|
1970
|
+
sectionAdjust: string;
|
|
1971
|
+
sectionFilters: string;
|
|
1972
|
+
profilesHint: string;
|
|
1973
|
+
chipJump: string;
|
|
1974
|
+
stepDecrease: string;
|
|
1975
|
+
stepIncrease: string;
|
|
1954
1976
|
reset: string;
|
|
1955
1977
|
resetConfirm: string;
|
|
1956
1978
|
announcedReset: string;
|
|
@@ -2020,23 +2042,32 @@ declare class DgaAccessibility {
|
|
|
2020
2042
|
label: string;
|
|
2021
2043
|
desc: string;
|
|
2022
2044
|
}[]>;
|
|
2023
|
-
readonly
|
|
2024
|
-
id:
|
|
2045
|
+
readonly adjustToggles: _angular_core.Signal<{
|
|
2046
|
+
id: AdjustToggleId;
|
|
2047
|
+
mode: DgaA11yMode;
|
|
2048
|
+
icon: DgaIconName;
|
|
2049
|
+
label: string;
|
|
2050
|
+
active: boolean;
|
|
2051
|
+
}[]>;
|
|
2052
|
+
readonly adjustSteppers: _angular_core.Signal<{
|
|
2053
|
+
id: AdjustStepperId;
|
|
2025
2054
|
icon: DgaIconName;
|
|
2026
2055
|
label: string;
|
|
2027
|
-
kind: "cycle" | "toggle";
|
|
2028
2056
|
active: boolean;
|
|
2029
|
-
level: number;
|
|
2030
2057
|
valueLabel: string;
|
|
2031
|
-
ariaLabel: string;
|
|
2032
|
-
onClick: () => void;
|
|
2033
2058
|
}[]>;
|
|
2034
2059
|
readonly visualTiles: _angular_core.Signal<{
|
|
2035
|
-
value: DgaA11yVisualFilter
|
|
2060
|
+
value: Exclude<DgaA11yVisualFilter, "none">;
|
|
2036
2061
|
label: string;
|
|
2037
2062
|
icon: DgaIconName;
|
|
2038
2063
|
active: boolean;
|
|
2039
2064
|
}[]>;
|
|
2065
|
+
readonly activeChips: _angular_core.Signal<{
|
|
2066
|
+
id: string;
|
|
2067
|
+
label: string;
|
|
2068
|
+
controlId: string;
|
|
2069
|
+
}[]>;
|
|
2070
|
+
readonly activeBadgeCount: _angular_core.Signal<number>;
|
|
2040
2071
|
readonly fabClasses: _angular_core.Signal<string>;
|
|
2041
2072
|
readonly panelClasses: _angular_core.Signal<string>;
|
|
2042
2073
|
constructor();
|
|
@@ -2044,14 +2075,13 @@ declare class DgaAccessibility {
|
|
|
2044
2075
|
onPointerMove(event: PointerEvent): void;
|
|
2045
2076
|
onPointerUp(): void;
|
|
2046
2077
|
onFabClick(event: MouseEvent): void;
|
|
2047
|
-
toggleSection(id: SectionId): void;
|
|
2048
2078
|
onBundle(id: DgaA11yBundle, enabled: boolean): void;
|
|
2049
|
-
onToggleMode(mode: DgaA11yMode): void;
|
|
2079
|
+
onToggleMode(mode: DgaA11yMode, enabled?: boolean): void;
|
|
2080
|
+
onStep(id: AdjustStepperId, delta: number): void;
|
|
2050
2081
|
onFilter(value: DgaA11yVisualFilter): void;
|
|
2051
|
-
|
|
2082
|
+
focusControl(controlId: string): void;
|
|
2052
2083
|
onReset(): void;
|
|
2053
2084
|
onMaskDragStart(event: PointerEvent): void;
|
|
2054
|
-
tileClasses(active: boolean): string;
|
|
2055
2085
|
private panelPositionClass;
|
|
2056
2086
|
private announce;
|
|
2057
2087
|
private onMaskKeys;
|
|
@@ -2394,7 +2424,7 @@ declare class DgaNavRail {
|
|
|
2394
2424
|
readonly smoothScroll: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
2395
2425
|
readonly select: _angular_core.OutputEmitterRef<DgaNavRailItem>;
|
|
2396
2426
|
readonly expandChange: _angular_core.OutputEmitterRef<boolean>;
|
|
2397
|
-
readonly edgeAttr: _angular_core.Signal<"
|
|
2427
|
+
readonly edgeAttr: _angular_core.Signal<"start" | "end" | "left" | "right" | null>;
|
|
2398
2428
|
readonly offsetCss: _angular_core.Signal<string>;
|
|
2399
2429
|
readonly tooltipPlacement: _angular_core.Signal<"start" | "end">;
|
|
2400
2430
|
readonly iconSize: _angular_core.Signal<"sm" | "md" | "lg">;
|
|
@@ -3337,7 +3367,14 @@ declare class DgaAnnouncementBar {
|
|
|
3337
3367
|
/** Fired when the action control has no `actionHref` (button / chip / link-as-button). */
|
|
3338
3368
|
readonly action: _angular_core.OutputEmitterRef<void>;
|
|
3339
3369
|
readonly dismissed: _angular_core.WritableSignal<boolean>;
|
|
3370
|
+
private readonly doc;
|
|
3371
|
+
private readonly hostEl;
|
|
3372
|
+
private readonly destroyRef;
|
|
3373
|
+
private resizeObserver;
|
|
3340
3374
|
constructor();
|
|
3375
|
+
private bindLayoutOffset;
|
|
3376
|
+
private syncLayoutOffset;
|
|
3377
|
+
private clearLayoutOffset;
|
|
3341
3378
|
readonly iconTone: _angular_core.Signal<DgaIconTone>;
|
|
3342
3379
|
readonly iconShellClasses: _angular_core.Signal<string>;
|
|
3343
3380
|
readonly barClasses: _angular_core.Signal<string>;
|