@edsis/ui 0.0.2 → 0.0.3

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.
Files changed (105) hide show
  1. package/empty/README.md +1 -1
  2. package/fesm2022/edsis-ui-accordion.mjs +15 -15
  3. package/fesm2022/edsis-ui-alert-dialog.mjs +27 -27
  4. package/fesm2022/edsis-ui-alert.mjs +12 -12
  5. package/fesm2022/edsis-ui-aspect-ratio.mjs +3 -3
  6. package/fesm2022/edsis-ui-avatar.mjs +18 -18
  7. package/fesm2022/edsis-ui-badge.mjs +3 -3
  8. package/fesm2022/edsis-ui-breadcrumb.mjs +21 -21
  9. package/fesm2022/edsis-ui-button-group.mjs +9 -9
  10. package/fesm2022/edsis-ui-button.mjs +3 -3
  11. package/fesm2022/edsis-ui-calendar.mjs +3 -3
  12. package/fesm2022/edsis-ui-card.mjs +21 -21
  13. package/fesm2022/edsis-ui-carousel.mjs +18 -18
  14. package/fesm2022/edsis-ui-chart.mjs +80 -78
  15. package/fesm2022/edsis-ui-chart.mjs.map +1 -1
  16. package/fesm2022/edsis-ui-checkbox.mjs +3 -3
  17. package/fesm2022/edsis-ui-collapsible.mjs +12 -12
  18. package/fesm2022/edsis-ui-combobox.mjs +3 -3
  19. package/fesm2022/edsis-ui-command.mjs +41 -35
  20. package/fesm2022/edsis-ui-command.mjs.map +1 -1
  21. package/fesm2022/edsis-ui-composer.mjs +21 -21
  22. package/fesm2022/edsis-ui-context-menu.mjs +13 -7
  23. package/fesm2022/edsis-ui-context-menu.mjs.map +1 -1
  24. package/fesm2022/edsis-ui-date-picker.mjs +3 -3
  25. package/fesm2022/edsis-ui-dialog.mjs +27 -23
  26. package/fesm2022/edsis-ui-dialog.mjs.map +1 -1
  27. package/fesm2022/edsis-ui-dropdown-menu.mjs +58 -46
  28. package/fesm2022/edsis-ui-dropdown-menu.mjs.map +1 -1
  29. package/fesm2022/edsis-ui-editor.mjs +22 -20
  30. package/fesm2022/edsis-ui-editor.mjs.map +1 -1
  31. package/fesm2022/edsis-ui-empty.mjs +18 -18
  32. package/fesm2022/edsis-ui-form.mjs +38 -38
  33. package/fesm2022/edsis-ui-form.mjs.map +1 -1
  34. package/fesm2022/edsis-ui-hover-card.mjs +34 -13
  35. package/fesm2022/edsis-ui-hover-card.mjs.map +1 -1
  36. package/fesm2022/edsis-ui-input-group.mjs +18 -18
  37. package/fesm2022/edsis-ui-input-otp.mjs +15 -15
  38. package/fesm2022/edsis-ui-input.mjs +3 -3
  39. package/fesm2022/edsis-ui-item.mjs +30 -30
  40. package/fesm2022/edsis-ui-kanban.mjs +27 -27
  41. package/fesm2022/edsis-ui-kbd.mjs +6 -6
  42. package/fesm2022/edsis-ui-label.mjs +3 -3
  43. package/fesm2022/edsis-ui-layout-services.mjs +6 -0
  44. package/fesm2022/edsis-ui-layout-services.mjs.map +1 -0
  45. package/fesm2022/edsis-ui-layout-types.mjs +6 -0
  46. package/fesm2022/edsis-ui-layout-types.mjs.map +1 -0
  47. package/fesm2022/edsis-ui-layout.mjs +572 -0
  48. package/fesm2022/edsis-ui-layout.mjs.map +1 -0
  49. package/fesm2022/edsis-ui-menubar.mjs +22 -16
  50. package/fesm2022/edsis-ui-menubar.mjs.map +1 -1
  51. package/fesm2022/edsis-ui-native-select.mjs +9 -9
  52. package/fesm2022/edsis-ui-nav-service.mjs +343 -0
  53. package/fesm2022/edsis-ui-nav-service.mjs.map +1 -0
  54. package/fesm2022/edsis-ui-nav.mjs +2340 -0
  55. package/fesm2022/edsis-ui-nav.mjs.map +1 -0
  56. package/fesm2022/edsis-ui-navigation-menu.mjs +30 -24
  57. package/fesm2022/edsis-ui-navigation-menu.mjs.map +1 -1
  58. package/fesm2022/edsis-ui-page.mjs +397 -0
  59. package/fesm2022/edsis-ui-page.mjs.map +1 -0
  60. package/fesm2022/edsis-ui-pagination.mjs +3 -3
  61. package/fesm2022/edsis-ui-pillbox.mjs +16 -16
  62. package/fesm2022/edsis-ui-pillbox.mjs.map +1 -1
  63. package/fesm2022/edsis-ui-popover.mjs +16 -10
  64. package/fesm2022/edsis-ui-popover.mjs.map +1 -1
  65. package/fesm2022/edsis-ui-progress.mjs +3 -3
  66. package/fesm2022/edsis-ui-radio.mjs +6 -6
  67. package/fesm2022/edsis-ui-resizable.mjs +12 -12
  68. package/fesm2022/edsis-ui-scroll-area.mjs +3 -3
  69. package/fesm2022/edsis-ui-select.mjs +6 -6
  70. package/fesm2022/edsis-ui-separator.mjs +3 -3
  71. package/fesm2022/edsis-ui-sheet.mjs +27 -23
  72. package/fesm2022/edsis-ui-sheet.mjs.map +1 -1
  73. package/fesm2022/edsis-ui-skeleton.mjs +3 -3
  74. package/fesm2022/edsis-ui-slider.mjs +6 -6
  75. package/fesm2022/edsis-ui-spinner.mjs +3 -3
  76. package/fesm2022/edsis-ui-switch.mjs +3 -3
  77. package/fesm2022/edsis-ui-table.mjs +24 -24
  78. package/fesm2022/edsis-ui-tabs.mjs +18 -18
  79. package/fesm2022/edsis-ui-textarea.mjs +3 -3
  80. package/fesm2022/edsis-ui-theme.mjs +209 -0
  81. package/fesm2022/edsis-ui-theme.mjs.map +1 -0
  82. package/fesm2022/edsis-ui-timeline.mjs +18 -18
  83. package/fesm2022/edsis-ui-toast.mjs +3 -3
  84. package/fesm2022/edsis-ui-toggle-group.mjs +9 -9
  85. package/fesm2022/edsis-ui-toggle.mjs +3 -3
  86. package/fesm2022/edsis-ui-tooltip.mjs +12 -12
  87. package/layout/README.md +454 -0
  88. package/nav/README.md +96 -0
  89. package/package.json +31 -2
  90. package/page/README.md +46 -0
  91. package/types/edsis-ui-command.d.ts +4 -1
  92. package/types/edsis-ui-context-menu.d.ts +2 -1
  93. package/types/edsis-ui-dropdown-menu.d.ts +5 -2
  94. package/types/edsis-ui-editor.d.ts +1 -0
  95. package/types/edsis-ui-hover-card.d.ts +3 -1
  96. package/types/edsis-ui-layout-services.d.ts +1 -0
  97. package/types/edsis-ui-layout-types.d.ts +1 -0
  98. package/types/edsis-ui-layout.d.ts +153 -0
  99. package/types/edsis-ui-menubar.d.ts +2 -0
  100. package/types/edsis-ui-nav-service.d.ts +138 -0
  101. package/types/edsis-ui-nav.d.ts +205 -0
  102. package/types/edsis-ui-navigation-menu.d.ts +2 -0
  103. package/types/edsis-ui-page.d.ts +137 -0
  104. package/types/edsis-ui-popover.d.ts +2 -1
  105. package/types/edsis-ui-theme.d.ts +71 -0
@@ -0,0 +1,137 @@
1
+ import * as _angular_core from '@angular/core';
2
+
3
+ declare const UI_PAGE_VARIANTS: readonly ["stacked", "side"];
4
+ declare const UI_PAGE_SIDE_POSITIONS: readonly ["left", "right"];
5
+ declare const UI_PAGE_SIDE_MODES: readonly ["sticky", "drawer", "overlay"];
6
+ type UiPageVariant = (typeof UI_PAGE_VARIANTS)[number];
7
+ type UiPageSidePosition = (typeof UI_PAGE_SIDE_POSITIONS)[number];
8
+ type UiPageSideMode = (typeof UI_PAGE_SIDE_MODES)[number];
9
+ declare const UI_PAGE_DEFAULT_VARIANT: UiPageVariant;
10
+ declare const UI_PAGE_DEFAULT_SIDE_POSITION: UiPageSidePosition;
11
+ declare const UI_PAGE_DEFAULT_SIDE_MODE: UiPageSideMode;
12
+ declare const UI_PAGE_DEFAULT_SIDE_WIDTH = "16rem";
13
+ declare function isUiPageVariant(value: string | null): value is UiPageVariant;
14
+ declare function isUiPageSidePosition(value: string | null): value is UiPageSidePosition;
15
+ declare function isUiPageSideMode(value: string | null): value is UiPageSideMode;
16
+
17
+ declare class UiPageStateService {
18
+ private readonly variantState;
19
+ private readonly positionState;
20
+ private readonly sideModeState;
21
+ private readonly internalSideOpenState;
22
+ private readonly controlledSideOpenState;
23
+ private readonly sideWidthState;
24
+ private readonly sideIdState;
25
+ private readonly sideOpenRequestState;
26
+ private readonly sideOpenRequestVersionState;
27
+ readonly variant: _angular_core.Signal<"stacked" | "side">;
28
+ readonly position: _angular_core.Signal<"left" | "right">;
29
+ readonly sideMode: _angular_core.Signal<"sticky" | "drawer" | "overlay">;
30
+ readonly sideWidth: _angular_core.Signal<string>;
31
+ readonly sideId: _angular_core.Signal<string | null>;
32
+ readonly sideOpenRequest: _angular_core.Signal<boolean | null>;
33
+ readonly sideOpenRequestVersion: _angular_core.Signal<number>;
34
+ readonly sideOpen: _angular_core.Signal<boolean>;
35
+ readonly isSideInteractive: _angular_core.Signal<boolean>;
36
+ readonly isSideVisible: _angular_core.Signal<boolean>;
37
+ registerRoot(config: {
38
+ variant: UiPageVariant;
39
+ position: UiPageSidePosition;
40
+ sideMode: UiPageSideMode;
41
+ sideWidth: string;
42
+ }): void;
43
+ registerSide(config: {
44
+ mode: UiPageSideMode;
45
+ position: UiPageSidePosition;
46
+ width: string;
47
+ id: string;
48
+ }): void;
49
+ setControlledSideOpen(open: boolean | null): void;
50
+ setSideOpen(open: boolean): void;
51
+ openSide(): boolean;
52
+ closeSide(): boolean;
53
+ toggleSide(): boolean;
54
+ private requestSideOpenChange;
55
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<UiPageStateService, never>;
56
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<UiPageStateService>;
57
+ }
58
+
59
+ declare class UiPageSideComponent {
60
+ private readonly document;
61
+ protected readonly page: UiPageStateService;
62
+ protected readonly resolvedId: string;
63
+ readonly mode: _angular_core.InputSignal<"sticky" | "drawer" | "overlay">;
64
+ readonly position: _angular_core.InputSignal<"left" | "right" | null>;
65
+ readonly width: _angular_core.InputSignal<string | null>;
66
+ readonly closeOnEsc: _angular_core.InputSignal<boolean>;
67
+ readonly class: _angular_core.InputSignal<string>;
68
+ protected readonly resolvedMode: _angular_core.Signal<"sticky" | "drawer" | "overlay">;
69
+ protected readonly resolvedPosition: _angular_core.Signal<"left" | "right">;
70
+ protected readonly resolvedWidth: _angular_core.Signal<string>;
71
+ protected readonly isSticky: _angular_core.Signal<boolean>;
72
+ protected readonly isDrawer: _angular_core.Signal<boolean>;
73
+ protected readonly isOverlay: _angular_core.Signal<boolean>;
74
+ protected readonly ariaHidden: _angular_core.Signal<"true" | null>;
75
+ protected readonly classes: _angular_core.Signal<string>;
76
+ constructor();
77
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<UiPageSideComponent, never>;
78
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<UiPageSideComponent, "ui-page-side", never, { "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "closeOnEsc": { "alias": "closeOnEsc"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
79
+ }
80
+
81
+ declare class UiPageComponent {
82
+ protected readonly page: UiPageStateService;
83
+ protected readonly projectedSide: _angular_core.Signal<UiPageSideComponent | undefined>;
84
+ readonly variant: _angular_core.InputSignal<"stacked" | "side">;
85
+ readonly position: _angular_core.InputSignal<"left" | "right">;
86
+ readonly sideMode: _angular_core.InputSignal<"sticky" | "drawer" | "overlay">;
87
+ readonly sideOpen: _angular_core.InputSignal<boolean | null>;
88
+ readonly sideWidth: _angular_core.InputSignal<string>;
89
+ readonly class: _angular_core.InputSignal<string>;
90
+ readonly sideOpenChange: _angular_core.OutputEmitterRef<boolean>;
91
+ protected readonly resolvedPosition: _angular_core.Signal<"left" | "right">;
92
+ protected readonly resolvedSideMode: _angular_core.Signal<"sticky" | "drawer" | "overlay">;
93
+ protected readonly isLeftSide: _angular_core.Signal<boolean>;
94
+ protected readonly isRightSide: _angular_core.Signal<boolean>;
95
+ protected readonly showsOverlayBackdrop: _angular_core.Signal<boolean>;
96
+ protected readonly hostClasses: _angular_core.Signal<string>;
97
+ protected readonly shellClasses: _angular_core.Signal<string>;
98
+ protected readonly bodyClasses: _angular_core.Signal<string>;
99
+ constructor();
100
+ protected handleBackdropClick(): void;
101
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<UiPageComponent, never>;
102
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<UiPageComponent, "ui-page", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "sideMode": { "alias": "sideMode"; "required": false; "isSignal": true; }; "sideOpen": { "alias": "sideOpen"; "required": false; "isSignal": true; }; "sideWidth": { "alias": "sideWidth"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, { "sideOpenChange": "sideOpenChange"; }, ["projectedSide"], ["ui-page-header", "ui-page-side-toggle", "ui-page-side", "ui-page-content", "ui-page-footer"], true, never>;
103
+ }
104
+
105
+ declare class UiPageSideToggleComponent {
106
+ protected readonly page: UiPageStateService;
107
+ readonly ariaLabel: _angular_core.InputSignal<string>;
108
+ readonly class: _angular_core.InputSignal<string>;
109
+ readonly toggled: _angular_core.OutputEmitterRef<boolean>;
110
+ protected readonly hostClasses: _angular_core.Signal<string>;
111
+ protected readonly buttonClasses: _angular_core.Signal<string>;
112
+ protected handleClick(): void;
113
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<UiPageSideToggleComponent, never>;
114
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<UiPageSideToggleComponent, "ui-page-side-toggle", never, { "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, { "toggled": "toggled"; }, never, ["*"], true, never>;
115
+ }
116
+
117
+ declare class UiPageHeaderComponent {
118
+ readonly class: _angular_core.InputSignal<string>;
119
+ protected readonly classes: _angular_core.Signal<string>;
120
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<UiPageHeaderComponent, never>;
121
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<UiPageHeaderComponent, "ui-page-header", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
122
+ }
123
+ declare class UiPageContentComponent {
124
+ readonly class: _angular_core.InputSignal<string>;
125
+ protected readonly classes: _angular_core.Signal<string>;
126
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<UiPageContentComponent, never>;
127
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<UiPageContentComponent, "ui-page-content", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
128
+ }
129
+ declare class UiPageFooterComponent {
130
+ readonly class: _angular_core.InputSignal<string>;
131
+ protected readonly classes: _angular_core.Signal<string>;
132
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<UiPageFooterComponent, never>;
133
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<UiPageFooterComponent, "ui-page-footer", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
134
+ }
135
+
136
+ export { UI_PAGE_DEFAULT_SIDE_MODE, UI_PAGE_DEFAULT_SIDE_POSITION, UI_PAGE_DEFAULT_SIDE_WIDTH, UI_PAGE_DEFAULT_VARIANT, UI_PAGE_SIDE_MODES, UI_PAGE_SIDE_POSITIONS, UI_PAGE_VARIANTS, UiPageComponent, UiPageContentComponent, UiPageFooterComponent, UiPageHeaderComponent, UiPageSideComponent, UiPageSideToggleComponent, isUiPageSideMode, isUiPageSidePosition, isUiPageVariant };
137
+ export type { UiPageSideMode, UiPageSidePosition, UiPageVariant };
@@ -29,10 +29,11 @@ declare class PopoverTriggerDirective {
29
29
  readonly openedChange: _angular_core.OutputEmitterRef<boolean>;
30
30
  private overlayRef;
31
31
  readonly isOpen: _angular_core.WritableSignal<boolean>;
32
+ constructor();
32
33
  toggle(): void;
33
34
  onKeyboardToggle(event: Event): void;
34
35
  open(): void;
35
- close(): void;
36
+ close(emitOpenedChange?: boolean): void;
36
37
  private oppositeSide;
37
38
  private usesNativeKeyboardActivation;
38
39
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<PopoverTriggerDirective, never>;
@@ -0,0 +1,71 @@
1
+ import * as _angular_core from '@angular/core';
2
+ import { InjectionToken, EnvironmentProviders } from '@angular/core';
3
+
4
+ declare const THEME_MODES: readonly ["light", "dark", "system"];
5
+ declare const RESOLVED_THEME_MODES: readonly ["light", "dark"];
6
+ declare const THEME_SEASONS: readonly ["base", "imlek", "ramadhan", "ied", "natal", "new-year"];
7
+ type ThemeMode = (typeof THEME_MODES)[number];
8
+ type ResolvedThemeMode = (typeof RESOLVED_THEME_MODES)[number];
9
+ type ThemeSeason = (typeof THEME_SEASONS)[number];
10
+ declare const DEFAULT_THEME_MODE: ThemeMode;
11
+ declare const DEFAULT_THEME_SEASON: ThemeSeason;
12
+ declare const THEME_MODE_STORAGE_KEY = "theme-mode";
13
+ declare const THEME_SEASON_STORAGE_KEY = "theme-season";
14
+ declare function isThemeMode(value: string | null | undefined): value is ThemeMode;
15
+ declare function isResolvedThemeMode(value: string | null | undefined): value is ResolvedThemeMode;
16
+ declare function isThemeSeason(value: string | null | undefined): value is ThemeSeason;
17
+ declare function normalizeThemeMode(value: string | null | undefined): ThemeMode;
18
+ declare function normalizeThemeSeason(value: string | null | undefined): ThemeSeason;
19
+
20
+ interface UiThemeOptions {
21
+ readonly mode?: ThemeMode;
22
+ readonly season?: ThemeSeason;
23
+ }
24
+ declare const UI_THEME_OPTIONS: InjectionToken<Readonly<UiThemeOptions>>;
25
+
26
+ declare class ThemeModeService {
27
+ private readonly documentRef;
28
+ private readonly destroyRef;
29
+ private readonly options;
30
+ private readonly modeState;
31
+ private readonly systemPrefersDark;
32
+ readonly mode: _angular_core.Signal<"light" | "dark" | "system">;
33
+ readonly resolvedMode: _angular_core.Signal<"light" | "dark">;
34
+ readonly isDark: _angular_core.Signal<boolean>;
35
+ constructor();
36
+ setMode(mode: ThemeMode): void;
37
+ toggle(): void;
38
+ private ensureDefaults;
39
+ private persistMode;
40
+ private applyModeAttributes;
41
+ private readSystemPreference;
42
+ private bindSystemPreferenceListener;
43
+ private mediaQueryList;
44
+ private storage;
45
+ private readStorage;
46
+ private writeStorage;
47
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ThemeModeService, never>;
48
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<ThemeModeService>;
49
+ }
50
+
51
+ declare function provideUiTheme(options?: UiThemeOptions): EnvironmentProviders;
52
+
53
+ declare class ThemeSeasonService {
54
+ private readonly documentRef;
55
+ private readonly options;
56
+ private readonly seasonState;
57
+ readonly season: _angular_core.Signal<"base" | "imlek" | "ramadhan" | "ied" | "natal" | "new-year">;
58
+ constructor();
59
+ setSeason(season: ThemeSeason): void;
60
+ private ensureDefaults;
61
+ private persistSeason;
62
+ private applySeasonAttribute;
63
+ private storage;
64
+ private readStorage;
65
+ private writeStorage;
66
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ThemeSeasonService, never>;
67
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<ThemeSeasonService>;
68
+ }
69
+
70
+ export { DEFAULT_THEME_MODE, DEFAULT_THEME_SEASON, RESOLVED_THEME_MODES, THEME_MODES, THEME_MODE_STORAGE_KEY, THEME_SEASONS, THEME_SEASON_STORAGE_KEY, ThemeModeService, ThemeSeasonService, UI_THEME_OPTIONS, isResolvedThemeMode, isThemeMode, isThemeSeason, normalizeThemeMode, normalizeThemeSeason, provideUiTheme };
71
+ export type { ResolvedThemeMode, ThemeMode, ThemeSeason, UiThemeOptions };