@ojiepermana/angular 21.0.8 → 21.1.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/brand/etos/README.md +68 -0
- package/brand/etos/package.json +4 -0
- package/brand/etos/styles/index.css +15 -0
- package/brand/etos/styles/layout.css +175 -0
- package/{theme/styles/themes/brand/etos → brand/etos/styles}/style.css +18 -17
- package/collection.json +28 -28
- package/etos/package.json +4 -0
- package/etos/styles/color.css +21 -0
- package/etos/styles/index.css +15 -0
- package/etos/styles/layout.css +175 -0
- package/etos/styles/style.css +51 -0
- package/fesm2022/ojiepermana-angular-brand-etos.mjs +285 -0
- package/fesm2022/ojiepermana-angular-brand-etos.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-etos.mjs +12 -0
- package/fesm2022/ojiepermana-angular-etos.mjs.map +1 -0
- package/fesm2022/ojiepermana-angular-layout.mjs +22 -9
- package/fesm2022/ojiepermana-angular-layout.mjs.map +1 -1
- package/fesm2022/ojiepermana-angular-navigation.mjs +32 -21
- package/fesm2022/ojiepermana-angular-navigation.mjs.map +1 -1
- package/fesm2022/ojiepermana-angular.mjs +1 -0
- package/fesm2022/ojiepermana-angular.mjs.map +1 -1
- package/generator/api/schematics/init/schema.json +17 -17
- package/generator/api/schematics/ng-add/schema.json +13 -13
- package/generator/api/schematics/sdk/schema.json +17 -17
- package/generator/api/sdk.config.example.json +21 -21
- package/generator/guide/guide.config.example.json +8 -8
- package/generator/guide/schematics/build/schema.json +12 -12
- package/generator/guide/schematics/init/schema.json +17 -17
- package/package.json +13 -1
- package/theme/styles/etos.css +3 -35
- package/theme/styles/themes/library/style/brutal.css +1 -0
- package/theme/styles/themes/library/style/default.css +1 -0
- package/theme/styles/themes/library/style/sharp.css +1 -0
- package/theme/styles/themes/library/style/soft.css +1 -0
- package/types/ojiepermana-angular-brand-etos.d.ts +73 -0
- package/types/ojiepermana-angular-etos.d.ts +1 -0
- package/types/ojiepermana-angular-layout.d.ts +3 -2
- package/types/ojiepermana-angular-navigation.d.ts +2 -1
- /package/{theme/styles/themes/brand/etos → brand/etos/styles}/color.css +0 -0
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* - `@ojiepermana/angular/layout` — layout primitives (WIP)
|
|
8
8
|
* - `@ojiepermana/angular/navigation` — navigation primitives (WIP)
|
|
9
9
|
* - `@ojiepermana/angular/chart` — chart primitives (WIP)
|
|
10
|
+
* - `@ojiepermana/angular/etos` — Etos brand umbrella (theme/layout/navigation composition)
|
|
10
11
|
* - `@ojiepermana/angular/generator/api` — OpenAPI → Angular SDK generator (schematics + config types)
|
|
11
12
|
*
|
|
12
13
|
* Consumers should import from the subpaths directly.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ojiepermana-angular.mjs","sources":["../../../projects/angular/public-api.ts","../../../projects/angular/ojiepermana-angular.ts"],"sourcesContent":["/*\n * Public API Surface of @ojiepermana/angular (primary entry)\n *\n * Components and utilities are shipped via subpath entries:\n * - `@ojiepermana/angular/theme` — design tokens, CSS variables, `ThemeService`, `provideMaterialTheme`\n * - `@ojiepermana/angular/component` — shadcn/ui primitives on top of Material M3\n * - `@ojiepermana/angular/layout` — layout primitives (WIP)\n * - `@ojiepermana/angular/navigation` — navigation primitives (WIP)\n * - `@ojiepermana/angular/chart` — chart primitives (WIP)\n * - `@ojiepermana/angular/generator/api` — OpenAPI → Angular SDK generator (schematics + config types)\n *\n * Consumers should import from the subpaths directly.\n */\n\nexport const MATERIAL_VERSION = '0.0.1';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ojiepermana-angular.mjs","sources":["../../../projects/angular/public-api.ts","../../../projects/angular/ojiepermana-angular.ts"],"sourcesContent":["/*\n * Public API Surface of @ojiepermana/angular (primary entry)\n *\n * Components and utilities are shipped via subpath entries:\n * - `@ojiepermana/angular/theme` — design tokens, CSS variables, `ThemeService`, `provideMaterialTheme`\n * - `@ojiepermana/angular/component` — shadcn/ui primitives on top of Material M3\n * - `@ojiepermana/angular/layout` — layout primitives (WIP)\n * - `@ojiepermana/angular/navigation` — navigation primitives (WIP)\n * - `@ojiepermana/angular/chart` — chart primitives (WIP)\n * - `@ojiepermana/angular/etos` — Etos brand umbrella (theme/layout/navigation composition)\n * - `@ojiepermana/angular/generator/api` — OpenAPI → Angular SDK generator (schematics + config types)\n *\n * Consumers should import from the subpaths directly.\n */\n\nexport const MATERIAL_VERSION = '0.0.1';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;AAaG;AAEI,MAAM,gBAAgB,GAAG;;ACfhC;;AAEG;;;;"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
},
|
|
12
|
-
"force": {
|
|
13
|
-
"type": "boolean",
|
|
14
|
-
"description": "Overwrite the file if it already exists.",
|
|
15
|
-
"default": false
|
|
16
|
-
}
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema",
|
|
3
|
+
"$id": "SdkInitSchema",
|
|
4
|
+
"title": "Initialize SDK generator config",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"path": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "Path (relative to workspace root) where the config file will be created.",
|
|
10
|
+
"default": "config/sdk.config.json"
|
|
17
11
|
},
|
|
18
|
-
"
|
|
19
|
-
|
|
12
|
+
"force": {
|
|
13
|
+
"type": "boolean",
|
|
14
|
+
"description": "Overwrite the file if it already exists.",
|
|
15
|
+
"default": false
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
"required": []
|
|
19
|
+
}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
2
|
+
"$schema": "http://json-schema.org/schema",
|
|
3
|
+
"$id": "NgAddSchema",
|
|
4
|
+
"title": "@ojiepermana/angular ng-add options",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"skipInstall": {
|
|
8
|
+
"type": "boolean",
|
|
9
|
+
"default": false,
|
|
10
|
+
"description": "Skip installing dependencies after updating package.json."
|
|
11
|
+
}
|
|
12
|
+
},
|
|
13
|
+
"additionalProperties": false
|
|
14
|
+
}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
},
|
|
12
|
-
"target": {
|
|
13
|
-
"type": "string",
|
|
14
|
-
"description": "Optional name/index of a specific target in the config to generate."
|
|
15
|
-
}
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema",
|
|
3
|
+
"$id": "SdkGeneratorSchema",
|
|
4
|
+
"title": "Generate an Angular SDK from an OpenAPI spec",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"config": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "Path to sdk.config.json (defaults to ./config/sdk.config.json at workspace root).",
|
|
10
|
+
"default": "config/sdk.config.json"
|
|
16
11
|
},
|
|
17
|
-
"
|
|
18
|
-
|
|
19
|
-
|
|
12
|
+
"target": {
|
|
13
|
+
"type": "string",
|
|
14
|
+
"description": "Optional name/index of a specific target in the config to generate."
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"required": [],
|
|
18
|
+
"additionalProperties": false
|
|
19
|
+
}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
2
|
+
"$schema": "./node_modules/@ojiepermana/angular/generator/api/schematics/sdk/schema.json",
|
|
3
|
+
"targets": [
|
|
4
|
+
{
|
|
5
|
+
"input": "./openapi.yaml",
|
|
6
|
+
"output": "./sdk",
|
|
7
|
+
"mode": "standalone",
|
|
8
|
+
"clientName": "Api",
|
|
9
|
+
"rootUrl": "",
|
|
10
|
+
"splitByDomain": false,
|
|
11
|
+
"splitDepth": "service",
|
|
12
|
+
"features": {
|
|
13
|
+
"models": true,
|
|
14
|
+
"operations": true,
|
|
15
|
+
"services": true,
|
|
16
|
+
"client": true,
|
|
17
|
+
"metadata": true,
|
|
18
|
+
"navigation": true
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
]
|
|
22
|
+
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
2
|
+
"$schema": "./node_modules/@ojiepermana/angular/generator/guide/schematics/build/schema.json",
|
|
3
|
+
"sourceDir": "./docs",
|
|
4
|
+
"outputDir": "./projects/demo/library/src/app/docs",
|
|
5
|
+
"routeFile": "doc.routes.ts",
|
|
6
|
+
"componentPrefix": "Doc",
|
|
7
|
+
"componentStyle": "none",
|
|
8
|
+
"routeExportName": "DOC_ROUTES"
|
|
9
|
+
}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema",
|
|
3
|
+
"$id": "GuideBuildSchema",
|
|
4
|
+
"title": "Guide · build",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"additionalProperties": false,
|
|
7
|
+
"properties": {
|
|
8
|
+
"config": {
|
|
9
|
+
"type": "string",
|
|
10
|
+
"description": "Path to the guide config file, relative to the workspace root.",
|
|
11
|
+
"default": "config/guide.config.json"
|
|
13
12
|
}
|
|
14
|
-
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
}
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema",
|
|
3
|
+
"$id": "GuideInitSchema",
|
|
4
|
+
"title": "Guide · init",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"additionalProperties": false,
|
|
7
|
+
"properties": {
|
|
8
|
+
"path": {
|
|
9
|
+
"type": "string",
|
|
10
|
+
"description": "Destination path for the generated guide.config.json, relative to the workspace root.",
|
|
11
|
+
"default": "config/guide.config.json"
|
|
12
|
+
},
|
|
13
|
+
"force": {
|
|
14
|
+
"type": "boolean",
|
|
15
|
+
"description": "Overwrite an existing guide.config.json.",
|
|
16
|
+
"default": false
|
|
18
17
|
}
|
|
19
|
-
}
|
|
18
|
+
}
|
|
19
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ojiepermana/angular",
|
|
3
|
-
"version": "21.
|
|
3
|
+
"version": "21.1.2",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/ojiepermana/angular.git"
|
|
@@ -65,6 +65,10 @@
|
|
|
65
65
|
"sideEffects": false,
|
|
66
66
|
"schematics": "./collection.json",
|
|
67
67
|
"exports": {
|
|
68
|
+
"./etos/styles": "./etos/styles/index.css",
|
|
69
|
+
"./etos/styles/*": "./etos/styles/*",
|
|
70
|
+
"./brand/etos/styles": "./brand/etos/styles/index.css",
|
|
71
|
+
"./brand/etos/styles/*": "./brand/etos/styles/*",
|
|
68
72
|
"./theme/styles": "./theme/styles/index.css",
|
|
69
73
|
"./theme/styles/*": "./theme/styles/*",
|
|
70
74
|
"./theme/tailwind/theme.css": "./theme/styles/themes/taildwind.css",
|
|
@@ -75,6 +79,10 @@
|
|
|
75
79
|
"types": "./types/ojiepermana-angular.d.ts",
|
|
76
80
|
"default": "./fesm2022/ojiepermana-angular.mjs"
|
|
77
81
|
},
|
|
82
|
+
"./brand/etos": {
|
|
83
|
+
"types": "./types/ojiepermana-angular-brand-etos.d.ts",
|
|
84
|
+
"default": "./fesm2022/ojiepermana-angular-brand-etos.mjs"
|
|
85
|
+
},
|
|
78
86
|
"./chart": {
|
|
79
87
|
"types": "./types/ojiepermana-angular-chart.d.ts",
|
|
80
88
|
"default": "./fesm2022/ojiepermana-angular-chart.mjs"
|
|
@@ -83,6 +91,10 @@
|
|
|
83
91
|
"types": "./types/ojiepermana-angular-component.d.ts",
|
|
84
92
|
"default": "./fesm2022/ojiepermana-angular-component.mjs"
|
|
85
93
|
},
|
|
94
|
+
"./etos": {
|
|
95
|
+
"types": "./types/ojiepermana-angular-etos.d.ts",
|
|
96
|
+
"default": "./fesm2022/ojiepermana-angular-etos.mjs"
|
|
97
|
+
},
|
|
86
98
|
"./generator/api": {
|
|
87
99
|
"types": "./types/ojiepermana-angular-generator-api.d.ts",
|
|
88
100
|
"default": "./fesm2022/ojiepermana-angular-generator-api.mjs"
|
package/theme/styles/etos.css
CHANGED
|
@@ -1,38 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Compatibility entry for the Etos brand stylesheet.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* @import '@ojiepermana/angular/theme/etos.css';
|
|
7
|
-
* @import 'tailwindcss';
|
|
8
|
-
* @import '@ojiepermana/angular/theme/tailwind/theme.css';
|
|
9
|
-
*
|
|
10
|
-
* Includes the shared cascade layers, mode tokens, default library color/style
|
|
11
|
-
* fallbacks, Etos brand overrides, shared semantic tokens, and Angular
|
|
12
|
-
* Material bridge styles.
|
|
4
|
+
* The Etos implementation now lives under the brand umbrella package.
|
|
13
5
|
*/
|
|
14
|
-
@import '
|
|
15
|
-
|
|
16
|
-
/* Layer 1: mode variants. */
|
|
17
|
-
@import './themes/mode/index.css';
|
|
18
|
-
|
|
19
|
-
/* Layer 2: default library color fallbacks. */
|
|
20
|
-
@import './themes/library/color/index.css';
|
|
21
|
-
|
|
22
|
-
/* Layer 3: default library style fallbacks. */
|
|
23
|
-
@import './themes/library/style/index.css';
|
|
24
|
-
|
|
25
|
-
/* Brand override: Etos color variant. */
|
|
26
|
-
@import './themes/brand/etos/color.css';
|
|
27
|
-
|
|
28
|
-
/* Brand override: Etos style variant. */
|
|
29
|
-
@import './themes/brand/etos/style.css';
|
|
30
|
-
|
|
31
|
-
/* Shared semantic and library tokens. */
|
|
32
|
-
@import './themes/library/_tokens.css';
|
|
33
|
-
|
|
34
|
-
/* Angular Material M3 bridge. */
|
|
35
|
-
@import './themes/library/_material-overrides.css';
|
|
36
|
-
|
|
37
|
-
/* Global component-facing styles. */
|
|
38
|
-
@import './themes/library/_components.css';
|
|
6
|
+
@import '@ojiepermana/angular/etos/styles';
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { EnvironmentProviders } from '@angular/core';
|
|
3
|
+
import { MaterialLayoutConfig } from '@ojiepermana/angular/layout';
|
|
4
|
+
import { NavigationItem, TopbarAppearance, SidebarAppearance, SidebarPosition } from '@ojiepermana/angular/navigation';
|
|
5
|
+
import { MaterialThemeConfig, MaterialThemeFeature } from '@ojiepermana/angular/theme';
|
|
6
|
+
|
|
7
|
+
declare const ETOS_BRAND_NAME = "etos";
|
|
8
|
+
declare const ETOS_THEME_CONFIG: {
|
|
9
|
+
mode: "light";
|
|
10
|
+
brand: "etos";
|
|
11
|
+
};
|
|
12
|
+
declare const ETOS_LAYOUT_CONFIG: {
|
|
13
|
+
mode: "vertical";
|
|
14
|
+
width: "fixed";
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
interface EtosBrandOptions {
|
|
18
|
+
readonly theme?: MaterialThemeConfig;
|
|
19
|
+
readonly layout?: MaterialLayoutConfig;
|
|
20
|
+
readonly navigation?: NavigationItem[];
|
|
21
|
+
readonly navigationId?: string;
|
|
22
|
+
readonly materialDefaults?: boolean;
|
|
23
|
+
}
|
|
24
|
+
declare function provideEtosTheme(config?: MaterialThemeConfig, ...features: MaterialThemeFeature[]): EnvironmentProviders;
|
|
25
|
+
declare function provideEtosLayout(config?: MaterialLayoutConfig): EnvironmentProviders;
|
|
26
|
+
declare function provideEtosBrand(options?: EtosBrandOptions): EnvironmentProviders;
|
|
27
|
+
|
|
28
|
+
declare class EtosEmptyLayoutComponent {
|
|
29
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<EtosEmptyLayoutComponent, never>;
|
|
30
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<EtosEmptyLayoutComponent, "etos-empty-layout", never, {}, {}, never, never, true, never>;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
declare class EtosHorizontalLayoutComponent {
|
|
34
|
+
private readonly layout;
|
|
35
|
+
readonly topbarAppearance: _angular_core.InputSignal<TopbarAppearance>;
|
|
36
|
+
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
37
|
+
protected readonly brandLayout = "etos-horizontal";
|
|
38
|
+
protected readonly layoutWidth: _angular_core.Signal<"fixed" | "full">;
|
|
39
|
+
protected readonly dividerBorderWidth: _angular_core.Signal<string>;
|
|
40
|
+
protected readonly hostClasses: _angular_core.Signal<string>;
|
|
41
|
+
protected readonly frameClasses: _angular_core.Signal<string>;
|
|
42
|
+
protected readonly mainClasses: _angular_core.Signal<string>;
|
|
43
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<EtosHorizontalLayoutComponent, never>;
|
|
44
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<EtosHorizontalLayoutComponent, "etos-horizontal-layout", never, { "topbarAppearance": { "alias": "topbarAppearance"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, ["[ui-layout-brand],[ui-topbar-start]", "[ui-layout-profile],[ui-topbar-end]"], true, never>;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
declare class EtosLayoutComponent {
|
|
48
|
+
private readonly layout;
|
|
49
|
+
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
50
|
+
protected readonly layoutMode: _angular_core.Signal<"vertical" | "horizontal">;
|
|
51
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<EtosLayoutComponent, never>;
|
|
52
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<EtosLayoutComponent, "etos-layout", never, { "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, ["[ui-layout-brand],[ui-topbar-start]", "[ui-layout-profile],[ui-topbar-end]"], true, never>;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
declare class EtosVerticalLayoutComponent {
|
|
56
|
+
private readonly layout;
|
|
57
|
+
readonly sidebarAppearance: _angular_core.InputSignal<SidebarAppearance>;
|
|
58
|
+
readonly sidebarPosition: _angular_core.InputSignal<SidebarPosition>;
|
|
59
|
+
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
60
|
+
protected readonly brandLayout = "etos-vertical";
|
|
61
|
+
protected readonly layoutWidth: _angular_core.Signal<"fixed" | "full">;
|
|
62
|
+
protected readonly dividerBorderWidth: _angular_core.Signal<string>;
|
|
63
|
+
protected readonly hostClasses: _angular_core.Signal<string>;
|
|
64
|
+
protected readonly frameClasses: _angular_core.Signal<string>;
|
|
65
|
+
protected readonly mainClasses: _angular_core.Signal<string>;
|
|
66
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<EtosVerticalLayoutComponent, never>;
|
|
67
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<EtosVerticalLayoutComponent, "etos-vertical-layout", never, { "sidebarAppearance": { "alias": "sidebarAppearance"; "required": false; "isSignal": true; }; "sidebarPosition": { "alias": "sidebarPosition"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
declare const ETOS_BRAND_VERSION = "0.0.1";
|
|
71
|
+
|
|
72
|
+
export { ETOS_BRAND_NAME, ETOS_BRAND_VERSION, ETOS_LAYOUT_CONFIG, ETOS_THEME_CONFIG, EtosEmptyLayoutComponent, EtosHorizontalLayoutComponent, EtosLayoutComponent, EtosVerticalLayoutComponent, provideEtosBrand, provideEtosLayout, provideEtosTheme };
|
|
73
|
+
export type { EtosBrandOptions };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '@ojiepermana/angular/brand/etos';
|
|
@@ -29,13 +29,13 @@ declare class VerticalLayoutComponent {
|
|
|
29
29
|
protected readonly dividerBorderWidth: _angular_core.Signal<string>;
|
|
30
30
|
protected readonly hostClasses: _angular_core.Signal<string>;
|
|
31
31
|
protected readonly frameClasses: _angular_core.Signal<string>;
|
|
32
|
-
protected readonly mainClasses
|
|
32
|
+
protected readonly mainClasses: _angular_core.Signal<string>;
|
|
33
33
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<VerticalLayoutComponent, never>;
|
|
34
34
|
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, never, true, never>;
|
|
35
35
|
}
|
|
36
36
|
|
|
37
37
|
/**
|
|
38
|
-
* Horizontal layout — topbar
|
|
38
|
+
* Horizontal layout — themed topbar + main (scrollable).
|
|
39
39
|
*
|
|
40
40
|
* Data navigasi diambil dari `NavigationService`.
|
|
41
41
|
* Consumer app dapat memproyeksikan brand kiri dan profile kanan.
|
|
@@ -59,6 +59,7 @@ declare class HorizontalLayoutComponent {
|
|
|
59
59
|
protected readonly dividerBorderWidth: _angular_core.Signal<string>;
|
|
60
60
|
protected readonly hostClasses: _angular_core.Signal<string>;
|
|
61
61
|
protected readonly frameClasses: _angular_core.Signal<string>;
|
|
62
|
+
protected readonly mainClasses: _angular_core.Signal<string>;
|
|
62
63
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<HorizontalLayoutComponent, never>;
|
|
63
64
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<HorizontalLayoutComponent, "horizontal", never, { "topbarAppearance": { "alias": "topbarAppearance"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, ["[ui-layout-brand],[ui-topbar-start]", "[ui-layout-profile],[ui-topbar-end]"], true, never>;
|
|
64
65
|
}
|
|
@@ -330,6 +330,7 @@ declare class TopbarComponent {
|
|
|
330
330
|
/** Tampilkan hamburger di `< md` yang men-toggle mobile drawer sidebar. */
|
|
331
331
|
readonly showHamburger: _angular_core.InputSignal<boolean>;
|
|
332
332
|
readonly hamburgerLabel: _angular_core.InputSignal<string>;
|
|
333
|
+
protected readonly topbarHeight = "var(--layout-topbar-height)";
|
|
333
334
|
/** Resolved items: input jika disediakan, fallback ke registry NavigationService. */
|
|
334
335
|
protected readonly resolvedItems: _angular_core.Signal<readonly NavigationItem[]>;
|
|
335
336
|
protected readonly openId: _angular_core.WritableSignal<string | null>;
|
|
@@ -343,7 +344,7 @@ declare class TopbarComponent {
|
|
|
343
344
|
protected asGroup(i: NavigationItem): NavigationGroupItem;
|
|
344
345
|
protected asMega(i: NavigationItem): NavigationMegaItem;
|
|
345
346
|
protected isItemActive(id: string | undefined): boolean;
|
|
346
|
-
protected
|
|
347
|
+
protected megaGridClasses(columns?: number): string;
|
|
347
348
|
protected toggleDropdown(trigger: HTMLElement, item: NavigationItem): void;
|
|
348
349
|
protected openDropdown(trigger: HTMLElement, item: NavigationItem): void;
|
|
349
350
|
protected toggleMega(trigger: HTMLElement, item: NavigationItem): void;
|
|
File without changes
|