@ojiepermana/angular 21.1.22 → 21.1.24
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/etos/styles/style.css +4 -2
- package/fesm2022/ojiepermana-angular-brand-etos.mjs +25 -23
- package/fesm2022/ojiepermana-angular-brand-etos.mjs.map +1 -1
- package/fesm2022/ojiepermana-angular-chart.mjs +72 -72
- package/fesm2022/ojiepermana-angular-component.mjs +889 -295
- package/fesm2022/ojiepermana-angular-component.mjs.map +1 -1
- package/fesm2022/ojiepermana-angular-layout.mjs +104 -26
- package/fesm2022/ojiepermana-angular-layout.mjs.map +1 -1
- package/fesm2022/ojiepermana-angular-navigation.mjs +52 -41
- package/fesm2022/ojiepermana-angular-navigation.mjs.map +1 -1
- package/fesm2022/ojiepermana-angular-theme.mjs +27 -6
- package/fesm2022/ojiepermana-angular-theme.mjs.map +1 -1
- package/package.json +9 -1
- package/theme/styles/themes/library/_components.css +18 -0
- package/theme/styles/themes/library/_tokens.css +11 -10
- package/theme/styles/themes/library/color/amber.css +24 -11
- package/theme/styles/themes/library/color/base.css +36 -0
- package/theme/styles/themes/library/color/blue.css +23 -15
- package/theme/styles/themes/library/color/cyan.css +31 -0
- package/theme/styles/themes/library/color/emerald.css +31 -0
- package/theme/styles/themes/library/color/fuchsia.css +31 -0
- package/theme/styles/themes/library/color/green.css +23 -10
- package/theme/styles/themes/library/color/index.css +15 -2
- package/theme/styles/themes/library/color/indigo.css +31 -0
- package/theme/styles/themes/library/color/lime.css +31 -0
- package/theme/styles/themes/library/color/orange.css +31 -0
- package/theme/styles/themes/library/color/pink.css +31 -0
- package/theme/styles/themes/library/color/purple.css +23 -10
- package/theme/styles/themes/library/color/red.css +23 -10
- package/theme/styles/themes/library/color/rose.css +31 -0
- package/theme/styles/themes/library/color/sky.css +31 -0
- package/theme/styles/themes/library/color/teal.css +31 -0
- package/theme/styles/themes/library/color/violet.css +31 -0
- package/theme/styles/themes/library/color/yellow.css +31 -0
- package/theme/styles/themes/library/style/brutal.css +4 -2
- package/theme/styles/themes/library/style/default.css +4 -2
- package/theme/styles/themes/library/style/sharp.css +4 -2
- package/theme/styles/themes/library/style/soft.css +4 -2
- package/theme/styles/themes/tailwind.css +3 -1
- package/types/ojiepermana-angular-component.d.ts +215 -6
- package/types/ojiepermana-angular-layout.d.ts +19 -3
- package/types/ojiepermana-angular-navigation.d.ts +7 -2
- package/types/ojiepermana-angular-theme.d.ts +4 -4
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ClassValue } from 'clsx';
|
|
2
2
|
import * as _angular_core from '@angular/core';
|
|
3
|
-
import { model, TemplateRef, AfterContentInit, OnInit, OnDestroy } from '@angular/core';
|
|
3
|
+
import { model, TemplateRef, AfterContentInit, OnInit, OnDestroy, InjectionToken, Signal } from '@angular/core';
|
|
4
4
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
5
5
|
import { VariantProps } from 'class-variance-authority';
|
|
6
6
|
import { ControlValueAccessor, FormControl, AbstractControl } from '@angular/forms';
|
|
@@ -11,6 +11,7 @@ import { MatSlideToggleChange } from '@angular/material/slide-toggle';
|
|
|
11
11
|
import { MatSnackBarConfig, MatSnackBarRef } from '@angular/material/snack-bar';
|
|
12
12
|
import * as i1 from '@angular/material/tooltip';
|
|
13
13
|
export { TooltipPosition } from '@angular/material/tooltip';
|
|
14
|
+
import { SafeHtml } from '@angular/platform-browser';
|
|
14
15
|
|
|
15
16
|
/**
|
|
16
17
|
* Concatenate and dedupe Tailwind class names.
|
|
@@ -769,6 +770,12 @@ declare class PopoverContentDirective {
|
|
|
769
770
|
|
|
770
771
|
type PopoverSide = 'top' | 'right' | 'bottom' | 'left';
|
|
771
772
|
type PopoverAlign = 'start' | 'center' | 'end';
|
|
773
|
+
interface PopoverTriggerDefaults {
|
|
774
|
+
readonly side?: Signal<PopoverSide>;
|
|
775
|
+
readonly align?: Signal<PopoverAlign>;
|
|
776
|
+
readonly sideOffset?: Signal<number>;
|
|
777
|
+
}
|
|
778
|
+
declare const POPOVER_TRIGGER_DEFAULTS: InjectionToken<PopoverTriggerDefaults>;
|
|
772
779
|
/**
|
|
773
780
|
* Toggle a `<ng-template uiPopoverContent>` anchored to the host element.
|
|
774
781
|
*
|
|
@@ -783,18 +790,21 @@ declare class PopoverTriggerDirective {
|
|
|
783
790
|
private readonly vcr;
|
|
784
791
|
private readonly el;
|
|
785
792
|
private readonly destroyRef;
|
|
793
|
+
private readonly defaults;
|
|
786
794
|
readonly uiPopoverTrigger: _angular_core.InputSignal<PopoverContentDirective>;
|
|
787
|
-
readonly side: _angular_core.InputSignal<PopoverSide>;
|
|
788
|
-
readonly align: _angular_core.InputSignal<PopoverAlign>;
|
|
789
|
-
readonly sideOffset: _angular_core.InputSignal<number>;
|
|
795
|
+
readonly side: _angular_core.InputSignal<PopoverSide | undefined>;
|
|
796
|
+
readonly align: _angular_core.InputSignal<PopoverAlign | undefined>;
|
|
797
|
+
readonly sideOffset: _angular_core.InputSignal<number | undefined>;
|
|
790
798
|
readonly disabled: _angular_core.InputSignal<boolean>;
|
|
791
799
|
readonly openedChange: _angular_core.OutputEmitterRef<boolean>;
|
|
792
800
|
private overlayRef;
|
|
793
801
|
readonly isOpen: _angular_core.WritableSignal<boolean>;
|
|
794
802
|
toggle(): void;
|
|
803
|
+
onKeyboardToggle(event: Event): void;
|
|
795
804
|
open(): void;
|
|
796
805
|
close(): void;
|
|
797
806
|
private oppositeSide;
|
|
807
|
+
private usesNativeKeyboardActivation;
|
|
798
808
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PopoverTriggerDirective, never>;
|
|
799
809
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<PopoverTriggerDirective, "[uiPopoverTrigger]", ["uiPopoverTrigger"], { "uiPopoverTrigger": { "alias": "uiPopoverTrigger"; "required": true; "isSignal": true; }; "side": { "alias": "side"; "required": false; "isSignal": true; }; "align": { "alias": "align"; "required": false; "isSignal": true; }; "sideOffset": { "alias": "sideOffset"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "openedChange": "openedChange"; }, never, never, true, never>;
|
|
800
810
|
}
|
|
@@ -1173,5 +1183,204 @@ declare class TooltipDirective {
|
|
|
1173
1183
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<TooltipDirective, "[uiTooltip]", ["uiTooltip"], { "uiTooltip": { "alias": "uiTooltip"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.MatTooltip; inputs: { "matTooltipPosition": "uiTooltipPosition"; "matTooltipDisabled": "uiTooltipDisabled"; "matTooltipShowDelay": "uiTooltipShowDelay"; "matTooltipHideDelay": "uiTooltipHideDelay"; "matTooltipTouchGestures": "uiTooltipTouchGestures"; }; outputs: {}; }]>;
|
|
1174
1184
|
}
|
|
1175
1185
|
|
|
1176
|
-
|
|
1177
|
-
|
|
1186
|
+
type ThemePanelColor = 'base' | 'red' | 'orange' | 'amber' | 'yellow' | 'lime' | 'green' | 'emerald' | 'teal' | 'cyan' | 'sky' | 'blue' | 'indigo' | 'violet' | 'purple' | 'fuchsia' | 'pink' | 'rose';
|
|
1187
|
+
type ThemePanelMode = 'light' | 'dark' | 'system';
|
|
1188
|
+
type ThemePanelStyle = 'default' | 'sharp' | 'brutal' | 'soft';
|
|
1189
|
+
type ThemePanelLayoutMode = 'vertical' | 'horizontal' | 'empty';
|
|
1190
|
+
type ThemePanelLayoutWidth = 'full' | 'container' | 'wide';
|
|
1191
|
+
interface ThemePanelThemePort {
|
|
1192
|
+
readonly color: Signal<ThemePanelColor>;
|
|
1193
|
+
readonly scheme: Signal<ThemePanelMode>;
|
|
1194
|
+
readonly style: Signal<ThemePanelStyle>;
|
|
1195
|
+
setColor(color: ThemePanelColor): void;
|
|
1196
|
+
setScheme(mode: ThemePanelMode): void;
|
|
1197
|
+
setStyle(style: ThemePanelStyle): void;
|
|
1198
|
+
}
|
|
1199
|
+
interface ThemePanelLayoutPort {
|
|
1200
|
+
readonly mode: Signal<ThemePanelLayoutMode>;
|
|
1201
|
+
readonly width: Signal<ThemePanelLayoutWidth>;
|
|
1202
|
+
setMode(mode: ThemePanelLayoutMode): void;
|
|
1203
|
+
setWidth(width: ThemePanelLayoutWidth): void;
|
|
1204
|
+
}
|
|
1205
|
+
declare const THEME_PANEL_THEME_PORT: InjectionToken<ThemePanelThemePort>;
|
|
1206
|
+
declare const THEME_PANEL_LAYOUT_PORT: InjectionToken<ThemePanelLayoutPort>;
|
|
1207
|
+
type ThemePanelIconName = 'sun' | 'moon' | 'system' | 'default-style' | 'sharp-style' | 'brutal-style' | 'soft-style' | 'vertical-layout' | 'horizontal-layout' | 'empty-layout' | 'full-width' | 'container-width' | 'wide-width';
|
|
1208
|
+
declare class ThemePanelComponent {
|
|
1209
|
+
private readonly sanitizer;
|
|
1210
|
+
private readonly themePort;
|
|
1211
|
+
private readonly layoutPort;
|
|
1212
|
+
readonly connected: _angular_core.InputSignal<boolean>;
|
|
1213
|
+
readonly class: _angular_core.InputSignal<string>;
|
|
1214
|
+
readonly title: _angular_core.InputSignal<string>;
|
|
1215
|
+
readonly description: _angular_core.InputSignal<string>;
|
|
1216
|
+
readonly userName: _angular_core.InputSignal<string>;
|
|
1217
|
+
readonly userSubtitle: _angular_core.InputSignal<string>;
|
|
1218
|
+
readonly userInitials: _angular_core.InputSignal<string>;
|
|
1219
|
+
readonly themeColor: _angular_core.InputSignal<ThemePanelColor>;
|
|
1220
|
+
readonly themeMode: _angular_core.InputSignal<ThemePanelMode>;
|
|
1221
|
+
readonly themeStyle: _angular_core.InputSignal<ThemePanelStyle>;
|
|
1222
|
+
readonly layoutMode: _angular_core.InputSignal<ThemePanelLayoutMode>;
|
|
1223
|
+
readonly layoutWidth: _angular_core.InputSignal<ThemePanelLayoutWidth>;
|
|
1224
|
+
readonly themeColorChange: _angular_core.OutputEmitterRef<ThemePanelColor>;
|
|
1225
|
+
readonly themeModeChange: _angular_core.OutputEmitterRef<ThemePanelMode>;
|
|
1226
|
+
readonly themeStyleChange: _angular_core.OutputEmitterRef<ThemePanelStyle>;
|
|
1227
|
+
readonly layoutModeChange: _angular_core.OutputEmitterRef<ThemePanelLayoutMode>;
|
|
1228
|
+
readonly layoutWidthChange: _angular_core.OutputEmitterRef<ThemePanelLayoutWidth>;
|
|
1229
|
+
protected readonly currentThemeColor: _angular_core.WritableSignal<ThemePanelColor>;
|
|
1230
|
+
protected readonly currentThemeMode: _angular_core.WritableSignal<ThemePanelMode>;
|
|
1231
|
+
protected readonly currentThemeStyle: _angular_core.WritableSignal<ThemePanelStyle>;
|
|
1232
|
+
protected readonly currentLayoutMode: _angular_core.WritableSignal<ThemePanelLayoutMode>;
|
|
1233
|
+
protected readonly currentLayoutWidth: _angular_core.WritableSignal<ThemePanelLayoutWidth>;
|
|
1234
|
+
protected readonly themeColorOptions: readonly [{
|
|
1235
|
+
readonly value: "base";
|
|
1236
|
+
readonly label: "Base";
|
|
1237
|
+
readonly swatchClass: "bg-zinc-800";
|
|
1238
|
+
}, {
|
|
1239
|
+
readonly value: "red";
|
|
1240
|
+
readonly label: "Red";
|
|
1241
|
+
readonly swatchClass: "bg-red-500";
|
|
1242
|
+
}, {
|
|
1243
|
+
readonly value: "orange";
|
|
1244
|
+
readonly label: "Orange";
|
|
1245
|
+
readonly swatchClass: "bg-orange-500";
|
|
1246
|
+
}, {
|
|
1247
|
+
readonly value: "amber";
|
|
1248
|
+
readonly label: "Amber";
|
|
1249
|
+
readonly swatchClass: "bg-amber-400";
|
|
1250
|
+
}, {
|
|
1251
|
+
readonly value: "yellow";
|
|
1252
|
+
readonly label: "Yellow";
|
|
1253
|
+
readonly swatchClass: "bg-yellow-400";
|
|
1254
|
+
}, {
|
|
1255
|
+
readonly value: "lime";
|
|
1256
|
+
readonly label: "Lime";
|
|
1257
|
+
readonly swatchClass: "bg-lime-400";
|
|
1258
|
+
}, {
|
|
1259
|
+
readonly value: "green";
|
|
1260
|
+
readonly label: "Green";
|
|
1261
|
+
readonly swatchClass: "bg-green-600";
|
|
1262
|
+
}, {
|
|
1263
|
+
readonly value: "emerald";
|
|
1264
|
+
readonly label: "Emerald";
|
|
1265
|
+
readonly swatchClass: "bg-emerald-600";
|
|
1266
|
+
}, {
|
|
1267
|
+
readonly value: "teal";
|
|
1268
|
+
readonly label: "Teal";
|
|
1269
|
+
readonly swatchClass: "bg-teal-600";
|
|
1270
|
+
}, {
|
|
1271
|
+
readonly value: "cyan";
|
|
1272
|
+
readonly label: "Cyan";
|
|
1273
|
+
readonly swatchClass: "bg-cyan-600";
|
|
1274
|
+
}, {
|
|
1275
|
+
readonly value: "sky";
|
|
1276
|
+
readonly label: "Sky";
|
|
1277
|
+
readonly swatchClass: "bg-sky-600";
|
|
1278
|
+
}, {
|
|
1279
|
+
readonly value: "blue";
|
|
1280
|
+
readonly label: "Blue";
|
|
1281
|
+
readonly swatchClass: "bg-blue-500";
|
|
1282
|
+
}, {
|
|
1283
|
+
readonly value: "indigo";
|
|
1284
|
+
readonly label: "Indigo";
|
|
1285
|
+
readonly swatchClass: "bg-indigo-500";
|
|
1286
|
+
}, {
|
|
1287
|
+
readonly value: "violet";
|
|
1288
|
+
readonly label: "Violet";
|
|
1289
|
+
readonly swatchClass: "bg-violet-500";
|
|
1290
|
+
}, {
|
|
1291
|
+
readonly value: "purple";
|
|
1292
|
+
readonly label: "Purple";
|
|
1293
|
+
readonly swatchClass: "bg-purple-500";
|
|
1294
|
+
}, {
|
|
1295
|
+
readonly value: "fuchsia";
|
|
1296
|
+
readonly label: "Fuchsia";
|
|
1297
|
+
readonly swatchClass: "bg-fuchsia-600";
|
|
1298
|
+
}, {
|
|
1299
|
+
readonly value: "pink";
|
|
1300
|
+
readonly label: "Pink";
|
|
1301
|
+
readonly swatchClass: "bg-pink-600";
|
|
1302
|
+
}, {
|
|
1303
|
+
readonly value: "rose";
|
|
1304
|
+
readonly label: "Rose";
|
|
1305
|
+
readonly swatchClass: "bg-rose-500";
|
|
1306
|
+
}];
|
|
1307
|
+
protected readonly themeModeOptions: readonly [{
|
|
1308
|
+
readonly value: "light";
|
|
1309
|
+
readonly label: "Light";
|
|
1310
|
+
readonly icon: "sun";
|
|
1311
|
+
}, {
|
|
1312
|
+
readonly value: "dark";
|
|
1313
|
+
readonly label: "Dark";
|
|
1314
|
+
readonly icon: "moon";
|
|
1315
|
+
}, {
|
|
1316
|
+
readonly value: "system";
|
|
1317
|
+
readonly label: "System";
|
|
1318
|
+
readonly icon: "system";
|
|
1319
|
+
}];
|
|
1320
|
+
protected readonly themeStyleOptions: readonly [{
|
|
1321
|
+
readonly value: "default";
|
|
1322
|
+
readonly label: "Default";
|
|
1323
|
+
readonly icon: "default-style";
|
|
1324
|
+
}, {
|
|
1325
|
+
readonly value: "sharp";
|
|
1326
|
+
readonly label: "Sharp";
|
|
1327
|
+
readonly icon: "sharp-style";
|
|
1328
|
+
}, {
|
|
1329
|
+
readonly value: "brutal";
|
|
1330
|
+
readonly label: "Brutal";
|
|
1331
|
+
readonly icon: "brutal-style";
|
|
1332
|
+
}, {
|
|
1333
|
+
readonly value: "soft";
|
|
1334
|
+
readonly label: "Soft";
|
|
1335
|
+
readonly icon: "soft-style";
|
|
1336
|
+
}];
|
|
1337
|
+
protected readonly layoutModeOptions: readonly [{
|
|
1338
|
+
readonly value: "vertical";
|
|
1339
|
+
readonly label: "Vertical";
|
|
1340
|
+
readonly icon: "vertical-layout";
|
|
1341
|
+
}, {
|
|
1342
|
+
readonly value: "horizontal";
|
|
1343
|
+
readonly label: "Horizontal";
|
|
1344
|
+
readonly icon: "horizontal-layout";
|
|
1345
|
+
}, {
|
|
1346
|
+
readonly value: "empty";
|
|
1347
|
+
readonly label: "Empty";
|
|
1348
|
+
readonly icon: "empty-layout";
|
|
1349
|
+
}];
|
|
1350
|
+
protected readonly layoutWidthOptions: readonly [{
|
|
1351
|
+
readonly value: "full";
|
|
1352
|
+
readonly label: "Full";
|
|
1353
|
+
readonly icon: "full-width";
|
|
1354
|
+
}, {
|
|
1355
|
+
readonly value: "container";
|
|
1356
|
+
readonly label: "Container";
|
|
1357
|
+
readonly icon: "container-width";
|
|
1358
|
+
}, {
|
|
1359
|
+
readonly value: "wide";
|
|
1360
|
+
readonly label: "Wide";
|
|
1361
|
+
readonly icon: "wide-width";
|
|
1362
|
+
}];
|
|
1363
|
+
protected readonly hostClasses: Signal<string>;
|
|
1364
|
+
protected readonly hasUserHeader: Signal<boolean>;
|
|
1365
|
+
protected readonly resolvedUserInitials: Signal<string>;
|
|
1366
|
+
protected readonly currentThemeColorLabel: Signal<"" | "Base" | "Red" | "Orange" | "Amber" | "Yellow" | "Lime" | "Green" | "Emerald" | "Teal" | "Cyan" | "Sky" | "Blue" | "Indigo" | "Violet" | "Purple" | "Fuchsia" | "Pink" | "Rose">;
|
|
1367
|
+
constructor();
|
|
1368
|
+
protected setThemeColor(color: ThemePanelColor): void;
|
|
1369
|
+
protected setThemeMode(mode: ThemePanelMode): void;
|
|
1370
|
+
protected setThemeStyle(style: ThemePanelStyle): void;
|
|
1371
|
+
protected setLayoutMode(mode: ThemePanelLayoutMode): void;
|
|
1372
|
+
protected setLayoutWidth(width: ThemePanelLayoutWidth): void;
|
|
1373
|
+
protected sectionEyebrowClasses(): string;
|
|
1374
|
+
protected segmentedOptionClasses(active: boolean): string;
|
|
1375
|
+
protected swatchButtonClasses(active: boolean): string;
|
|
1376
|
+
protected optionIconClasses(active: boolean): string;
|
|
1377
|
+
protected colorSwatchClasses(swatchClass: string | undefined, isActive: boolean): string;
|
|
1378
|
+
protected iconSvg(name: ThemePanelIconName): SafeHtml;
|
|
1379
|
+
private rawIconSvg;
|
|
1380
|
+
private toInitials;
|
|
1381
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ThemePanelComponent, never>;
|
|
1382
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ThemePanelComponent, "ui-theme-panel", never, { "connected": { "alias": "connected"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "userName": { "alias": "userName"; "required": false; "isSignal": true; }; "userSubtitle": { "alias": "userSubtitle"; "required": false; "isSignal": true; }; "userInitials": { "alias": "userInitials"; "required": false; "isSignal": true; }; "themeColor": { "alias": "themeColor"; "required": false; "isSignal": true; }; "themeMode": { "alias": "themeMode"; "required": false; "isSignal": true; }; "themeStyle": { "alias": "themeStyle"; "required": false; "isSignal": true; }; "layoutMode": { "alias": "layoutMode"; "required": false; "isSignal": true; }; "layoutWidth": { "alias": "layoutWidth"; "required": false; "isSignal": true; }; }, { "themeColorChange": "themeColorChange"; "themeModeChange": "themeModeChange"; "themeStyleChange": "themeStyleChange"; "layoutModeChange": "layoutModeChange"; "layoutWidthChange": "layoutWidthChange"; }, never, never, true, never>;
|
|
1383
|
+
}
|
|
1384
|
+
|
|
1385
|
+
export { AccordionComponent, AccordionContentComponent, AccordionContextBase, AccordionItemComponent, AccordionTriggerComponent, AlertComponent, AlertDescriptionComponent, AlertTitleComponent, AvatarComponent, AvatarFallbackComponent, AvatarImageComponent, BadgeComponent, BreadcrumbComponent, BreadcrumbEllipsisComponent, BreadcrumbItemComponent, BreadcrumbLinkComponent, BreadcrumbListComponent, BreadcrumbPageComponent, BreadcrumbSeparatorComponent, ButtonComponent, CalendarComponent, CardComponent, CardContentComponent, CardDescriptionComponent, CardFooterComponent, CardHeaderComponent, CardTitleComponent, CheckboxComponent, ComboboxComponent, CommandComponent, CommandContextBase, CommandEmptyComponent, CommandGroupComponent, CommandInputComponent, CommandItemComponent, CommandListComponent, CommandSeparatorComponent, CommandShortcutComponent, ContextMenuTriggerDirective, DatePickerComponent, DialogComponent, DialogContentComponent, DialogDescriptionComponent, DialogFooterComponent, DialogHeaderComponent, DialogTitleComponent, FormControlDirective, FormDescriptionComponent, FormFieldComponent, FormFieldContext, FormLabelComponent, FormMessageComponent, InputComponent, LabelComponent, MenuContentDirective, MenuItemComponent, MenuLabelComponent, MenuSeparatorComponent, MenuShortcutComponent, MenuSurfaceComponent, MenuTriggerDirective, OptionComponent, POPOVER_TRIGGER_DEFAULTS, PaginationComponent, PopoverContentDirective, PopoverTriggerDirective, ProgressComponent, RadioComponent, RadioGroupComponent, ScrollAreaComponent, SelectComponent, SeparatorComponent, SheetComponent, SheetContentComponent, SheetDescriptionComponent, SheetFooterComponent, SheetHeaderComponent, SheetTitleComponent, SkeletonComponent, SliderComponent, SwitchComponent, THEME_PANEL_LAYOUT_PORT, THEME_PANEL_THEME_PORT, TableBodyComponent, TableCaptionComponent, TableCellComponent, TableComponent, TableFooterComponent, TableHeadComponent, TableHeaderComponent, TableRowComponent, TabsComponent, TabsContentComponent, TabsContextBase, TabsListComponent, TabsTriggerComponent, TextareaComponent, ThemePanelComponent, ToastService, TooltipDirective, alertVariants, badgeVariants, buttonVariants, cn };
|
|
1386
|
+
export type { AccordionType, AlertVariant, BadgeVariant, ButtonSize, ButtonVariant, ComboboxOption, MenuAlign, MenuSide, PopoverAlign, PopoverSide, PopoverTriggerDefaults, SeparatorOrientation, SheetSide, ThemePanelColor, ThemePanelLayoutMode, ThemePanelLayoutPort, ThemePanelLayoutWidth, ThemePanelMode, ThemePanelStyle, ThemePanelThemePort, ToastOptions, ToastVariant };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
2
|
import { InjectionToken, EnvironmentProviders } from '@angular/core';
|
|
3
3
|
import { SidebarAppearance, SidebarPosition, SidebarMode, TopbarAppearance } from '@ojiepermana/angular/navigation';
|
|
4
|
+
import { PopoverTriggerDefaults, PopoverSide, PopoverAlign } from '@ojiepermana/angular/component';
|
|
4
5
|
|
|
5
6
|
/**
|
|
6
7
|
* Vertical layout — sidebar + main (scrollable).
|
|
@@ -12,7 +13,8 @@ import { SidebarAppearance, SidebarPosition, SidebarMode, TopbarAppearance } fro
|
|
|
12
13
|
* Markup:
|
|
13
14
|
* ```html
|
|
14
15
|
* <vertical>
|
|
15
|
-
*
|
|
16
|
+
* <a ui-layout-brand>Brand</a>
|
|
17
|
+
* <button ui-layout-profile type="button">Profile</button>
|
|
16
18
|
* </vertical>
|
|
17
19
|
* ```
|
|
18
20
|
*/
|
|
@@ -32,7 +34,7 @@ declare class VerticalLayoutComponent {
|
|
|
32
34
|
protected readonly frameClasses: _angular_core.Signal<string>;
|
|
33
35
|
protected readonly mainClasses: _angular_core.Signal<string>;
|
|
34
36
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<VerticalLayoutComponent, never>;
|
|
35
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<VerticalLayoutComponent, "vertical", never, { "sidebarAppearance": { "alias": "sidebarAppearance"; "required": false; "isSignal": true; }; "sidebarPosition": { "alias": "sidebarPosition"; "required": false; "isSignal": true; }; "sidebarMode": { "alias": "sidebarMode"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never,
|
|
37
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<VerticalLayoutComponent, "vertical", never, { "sidebarAppearance": { "alias": "sidebarAppearance"; "required": false; "isSignal": true; }; "sidebarPosition": { "alias": "sidebarPosition"; "required": false; "isSignal": true; }; "sidebarMode": { "alias": "sidebarMode"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, ["[ui-layout-brand],[sidebar-header]", "[ui-layout-profile],[sidebar-footer]"], true, never>;
|
|
36
38
|
}
|
|
37
39
|
|
|
38
40
|
/**
|
|
@@ -86,6 +88,11 @@ declare class EmptyLayoutComponent {
|
|
|
86
88
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<EmptyLayoutComponent, "empty", never, {}, {}, never, never, true, never>;
|
|
87
89
|
}
|
|
88
90
|
|
|
91
|
+
declare class ShellPagesComponent {
|
|
92
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShellPagesComponent, never>;
|
|
93
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShellPagesComponent, "shell-pages", never, {}, {}, never, ["[shell-pages-header]", "[shell-pages-main]", "[shell-pages-footer]"], true, never>;
|
|
94
|
+
}
|
|
95
|
+
|
|
89
96
|
declare const LAYOUT_MODES: readonly ["vertical", "horizontal", "empty"];
|
|
90
97
|
type LayoutMode = (typeof LAYOUT_MODES)[number];
|
|
91
98
|
declare const LAYOUT_WIDTHS: readonly ["full", "container", "wide"];
|
|
@@ -141,7 +148,16 @@ declare class LayoutService {
|
|
|
141
148
|
|
|
142
149
|
declare function provideMaterialLayout(config?: MaterialLayoutConfig): EnvironmentProviders;
|
|
143
150
|
|
|
151
|
+
declare class LayoutProfilePopoverDefaultsDirective implements PopoverTriggerDefaults {
|
|
152
|
+
private readonly layout;
|
|
153
|
+
readonly side: _angular_core.Signal<PopoverSide>;
|
|
154
|
+
readonly align: _angular_core.Signal<PopoverAlign>;
|
|
155
|
+
readonly sideOffset: _angular_core.Signal<-20 | 12>;
|
|
156
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LayoutProfilePopoverDefaultsDirective, never>;
|
|
157
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<LayoutProfilePopoverDefaultsDirective, "[ui-layout-profile][uiPopoverTrigger]", never, {}, {}, never, never, true, never>;
|
|
158
|
+
}
|
|
159
|
+
|
|
144
160
|
declare const LAYOUT_VERSION = "0.0.1";
|
|
145
161
|
|
|
146
|
-
export { DEFAULT_MATERIAL_LAYOUT_CONFIG, EmptyLayoutComponent, HorizontalLayoutComponent, LAYOUT_MODES, LAYOUT_VERSION, LAYOUT_WIDTHS, LayoutService, MATERIAL_LAYOUT_CONFIG, VerticalLayoutComponent, isLayoutMode, isLayoutWidth, normalizeLayoutWidth, provideMaterialLayout };
|
|
162
|
+
export { DEFAULT_MATERIAL_LAYOUT_CONFIG, EmptyLayoutComponent, HorizontalLayoutComponent, LAYOUT_MODES, LAYOUT_VERSION, LAYOUT_WIDTHS, LayoutProfilePopoverDefaultsDirective, LayoutService, MATERIAL_LAYOUT_CONFIG, ShellPagesComponent, VerticalLayoutComponent, isLayoutMode, isLayoutWidth, normalizeLayoutWidth, provideMaterialLayout };
|
|
147
163
|
export type { ConfiguredLayoutWidth, LayoutMode, LayoutWidth, LegacyLayoutWidth, MaterialLayoutConfig, ResolvedMaterialLayoutConfig };
|
|
@@ -117,11 +117,14 @@ type SidebarAppearance = 'default' | 'thin';
|
|
|
117
117
|
* - megamenu: full-width panel multi-kolom untuk item `mega`
|
|
118
118
|
*/
|
|
119
119
|
type TopbarAppearance = 'default' | 'megamenu';
|
|
120
|
+
/** Sidebar desktop border ownership */
|
|
121
|
+
type SidebarBorderSource = 'component' | 'layout';
|
|
120
122
|
/** Sidebar position */
|
|
121
123
|
type SidebarPosition = 'left' | 'right';
|
|
122
124
|
/** Sidebar display mode */
|
|
123
125
|
type SidebarMode = 'over' | 'side';
|
|
124
126
|
type VerticalNavigationAppearance = SidebarAppearance;
|
|
127
|
+
type VerticalNavigationBorderSource = SidebarBorderSource;
|
|
125
128
|
type VerticalNavigationMode = SidebarMode;
|
|
126
129
|
type VerticalNavigationPosition = SidebarPosition;
|
|
127
130
|
|
|
@@ -284,6 +287,8 @@ declare class SidebarComponent {
|
|
|
284
287
|
/** Registry key di `NavigationService`. Default `'main'`. */
|
|
285
288
|
readonly navigationId: _angular_core.InputSignal<string>;
|
|
286
289
|
readonly appearance: _angular_core.InputSignal<SidebarAppearance>;
|
|
290
|
+
/** Desktop border can be owned by the sidebar or by the surrounding layout shell. */
|
|
291
|
+
readonly borderSource: _angular_core.InputSignal<SidebarBorderSource>;
|
|
287
292
|
readonly position: _angular_core.InputSignal<SidebarPosition>;
|
|
288
293
|
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
289
294
|
readonly header: _angular_core.InputSignal<boolean>;
|
|
@@ -326,7 +331,7 @@ declare class SidebarComponent {
|
|
|
326
331
|
private openDrawer;
|
|
327
332
|
private closeDrawer;
|
|
328
333
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SidebarComponent, never>;
|
|
329
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SidebarComponent, "sidebar", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "navigationId": { "alias": "navigationId"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "header": { "alias": "header"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; "autoMobile": { "alias": "autoMobile"; "required": false; "isSignal": true; }; "autoRegister": { "alias": "autoRegister"; "required": false; "isSignal": true; }; }, {}, never, ["[sidebar-header]", "[sidebar-footer]"], true, never>;
|
|
334
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SidebarComponent, "sidebar", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "navigationId": { "alias": "navigationId"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "borderSource": { "alias": "borderSource"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "header": { "alias": "header"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; "autoMobile": { "alias": "autoMobile"; "required": false; "isSignal": true; }; "autoRegister": { "alias": "autoRegister"; "required": false; "isSignal": true; }; }, {}, never, ["[sidebar-header]", "[sidebar-footer]"], true, never>;
|
|
330
335
|
}
|
|
331
336
|
|
|
332
337
|
/**
|
|
@@ -380,4 +385,4 @@ declare const DemoNavigationData: NavigationItem[];
|
|
|
380
385
|
declare const NAVIGATION_VERSION = "0.0.1";
|
|
381
386
|
|
|
382
387
|
export { DEFAULT_NAVIGATION_ID, DemoNavigationData, NAVIGATION_VERSION, NavigationService, SidebarComponent, TopbarComponent, UiNavIconComponent, UiNavItemComponent };
|
|
383
|
-
export type { NavigationActionHandler, NavigationAsideItem, NavigationBasicItem, NavigationBranchItem, NavigationCollapsableItem, NavigationDividerItem, NavigationGroupItem, NavigationItem, NavigationItemBadge, NavigationItemBase, NavigationItemClasses, NavigationItemType, NavigationLeafItem, NavigationMegaItem, NavigationRoutableItemBase, NavigationSpacerItem, NavigationStructuredItem, NavigationVisibilityHandler, SidebarAppearance, SidebarMode, SidebarPosition, TopbarAppearance, VerticalNavigationAppearance, VerticalNavigationMode, VerticalNavigationPosition };
|
|
388
|
+
export type { NavigationActionHandler, NavigationAsideItem, NavigationBasicItem, NavigationBranchItem, NavigationCollapsableItem, NavigationDividerItem, NavigationGroupItem, NavigationItem, NavigationItemBadge, NavigationItemBase, NavigationItemClasses, NavigationItemType, NavigationLeafItem, NavigationMegaItem, NavigationRoutableItemBase, NavigationSpacerItem, NavigationStructuredItem, NavigationVisibilityHandler, SidebarAppearance, SidebarBorderSource, SidebarMode, SidebarPosition, TopbarAppearance, VerticalNavigationAppearance, VerticalNavigationBorderSource, VerticalNavigationMode, VerticalNavigationPosition };
|
|
@@ -5,7 +5,7 @@ declare const MODES: readonly ["light", "dark"];
|
|
|
5
5
|
type ThemeMode = (typeof MODES)[number];
|
|
6
6
|
declare const COLOR_SCHEMES: readonly ["light", "dark", "system"];
|
|
7
7
|
type ColorScheme = (typeof COLOR_SCHEMES)[number];
|
|
8
|
-
declare const COLORS: readonly ["
|
|
8
|
+
declare const COLORS: readonly ["base", "red", "orange", "amber", "yellow", "lime", "green", "emerald", "teal", "cyan", "sky", "blue", "indigo", "violet", "purple", "fuchsia", "pink", "rose"];
|
|
9
9
|
type ThemeColor = (typeof COLORS)[number];
|
|
10
10
|
declare const STYLES: readonly ["default", "sharp", "brutal", "soft"];
|
|
11
11
|
type ThemeStyle = (typeof STYLES)[number];
|
|
@@ -84,8 +84,8 @@ declare class ThemeService {
|
|
|
84
84
|
private readonly _systemPrefersDark;
|
|
85
85
|
readonly scheme: _angular_core.Signal<"light" | "dark" | "system">;
|
|
86
86
|
readonly brand: _angular_core.Signal<"etos" | null>;
|
|
87
|
-
readonly color: _angular_core.Signal<"
|
|
88
|
-
readonly theme: _angular_core.Signal<"
|
|
87
|
+
readonly color: _angular_core.Signal<"base" | "red" | "orange" | "amber" | "yellow" | "lime" | "green" | "emerald" | "teal" | "cyan" | "sky" | "blue" | "indigo" | "violet" | "purple" | "fuchsia" | "pink" | "rose">;
|
|
88
|
+
readonly theme: _angular_core.Signal<"base" | "red" | "orange" | "amber" | "yellow" | "lime" | "green" | "emerald" | "teal" | "cyan" | "sky" | "blue" | "indigo" | "violet" | "purple" | "fuchsia" | "pink" | "rose">;
|
|
89
89
|
readonly style: _angular_core.Signal<"default" | "sharp" | "brutal" | "soft">;
|
|
90
90
|
readonly mode: _angular_core.Signal<"light" | "dark">;
|
|
91
91
|
readonly snapshot: _angular_core.Signal<ThemeConfig>;
|
|
@@ -147,7 +147,7 @@ interface MaterialThemeFeature {
|
|
|
147
147
|
* provideMaterialTheme(
|
|
148
148
|
* {
|
|
149
149
|
* mode: 'system',
|
|
150
|
-
* color: '
|
|
150
|
+
* color: 'base',
|
|
151
151
|
* style: 'soft',
|
|
152
152
|
* },
|
|
153
153
|
* withMaterialDefaults(),
|