@sentropic/design-system-angular 0.36.57 → 0.36.59
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/dist/AppShell.d.ts +62 -1
- package/dist/AppShell.d.ts.map +1 -1
- package/dist/AppShell.js +378 -15
- package/dist/AppShell.js.map +1 -1
- package/dist/Icon.d.ts +32 -0
- package/dist/Icon.d.ts.map +1 -0
- package/dist/Icon.js +149 -0
- package/dist/Icon.js.map +1 -0
- package/dist/TimeRangePicker.d.ts +103 -0
- package/dist/TimeRangePicker.d.ts.map +1 -0
- package/dist/TimeRangePicker.js +456 -0
- package/dist/TimeRangePicker.js.map +1 -0
- package/dist/index.d.ts +7 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/styles.css +192 -0
- package/dist/timeRange.d.ts +75 -0
- package/dist/timeRange.d.ts.map +1 -0
- package/dist/timeRange.js +201 -0
- package/dist/timeRange.js.map +1 -0
- package/package.json +1 -1
- package/dist/.srchash +0 -1
package/dist/AppShell.d.ts
CHANGED
|
@@ -2,29 +2,90 @@ import * as i0 from "@angular/core";
|
|
|
2
2
|
export type AppShellVariant = "site" | "workspace";
|
|
3
3
|
export type AppShellUtilityMode = "reserve" | "overlay" | "floating";
|
|
4
4
|
export type AppShellUtilitySide = "left" | "right" | "bottom";
|
|
5
|
+
export type AppShellPanelCollapse = "stack" | "accordion";
|
|
5
6
|
export type AppShellProps = {
|
|
6
7
|
variant?: AppShellVariant;
|
|
8
|
+
/** Presence flags for named panels — pair with a projected `[slot=x]` element. */
|
|
9
|
+
topChrome?: unknown;
|
|
10
|
+
primaryRail?: unknown;
|
|
11
|
+
navigationPanel?: unknown;
|
|
12
|
+
contextPanel?: unknown;
|
|
13
|
+
utilityPanel?: unknown;
|
|
14
|
+
bottomPanel?: unknown;
|
|
7
15
|
mainId?: string;
|
|
8
16
|
navigationLabel?: string;
|
|
9
17
|
contextLabel?: string;
|
|
10
18
|
utilityLabel?: string;
|
|
11
19
|
utilityMode?: AppShellUtilityMode;
|
|
12
20
|
utilitySide?: AppShellUtilitySide;
|
|
21
|
+
/**
|
|
22
|
+
* Below the 48rem breakpoint, `"stack"` (default) keeps today's behaviour —
|
|
23
|
+
* panels stack full-width in document order, always expanded. `"accordion"`
|
|
24
|
+
* degrades each present panel to a keyboard-accessible disclosure (collapsed
|
|
25
|
+
* by default) instead of squeezing the main content. Desktop (>48rem)
|
|
26
|
+
* rendering is IDENTICAL in both modes. Panel content is mounted once
|
|
27
|
+
* regardless of mode/breakpoint; collapsing hides/sizes the region via CSS
|
|
28
|
+
* rather than destroying it, so a stateful widget projected into a panel
|
|
29
|
+
* never remounts.
|
|
30
|
+
*/
|
|
31
|
+
panelCollapse?: AppShellPanelCollapse;
|
|
32
|
+
/** Disclosure label for `primaryRail` when `panelCollapse="accordion"`. */
|
|
33
|
+
primaryRailLabel?: string;
|
|
34
|
+
/** Disclosure label for `navigationPanel` when `panelCollapse="accordion"`. Defaults to `navigationLabel`. */
|
|
35
|
+
navigationPanelLabel?: string;
|
|
36
|
+
/** Disclosure label for `contextPanel` when `panelCollapse="accordion"`. Defaults to `contextLabel`. */
|
|
37
|
+
contextPanelLabel?: string;
|
|
38
|
+
/** Disclosure label for `utilityPanel` when `panelCollapse="accordion"`. Defaults to `utilityLabel`. */
|
|
39
|
+
utilityPanelLabel?: string;
|
|
13
40
|
class?: string;
|
|
14
41
|
};
|
|
15
42
|
export declare class AppShell {
|
|
16
43
|
static readonly stComponentName = "AppShell";
|
|
17
44
|
readonly componentName = "AppShell";
|
|
18
45
|
variant: AppShellVariant;
|
|
46
|
+
topChrome?: unknown;
|
|
47
|
+
primaryRail?: unknown;
|
|
48
|
+
navigationPanel?: unknown;
|
|
49
|
+
contextPanel?: unknown;
|
|
50
|
+
utilityPanel?: unknown;
|
|
51
|
+
bottomPanel?: unknown;
|
|
19
52
|
mainId: string;
|
|
20
53
|
navigationLabel: string;
|
|
21
54
|
contextLabel: string;
|
|
22
55
|
utilityLabel: string;
|
|
23
56
|
utilityMode: AppShellUtilityMode;
|
|
24
57
|
utilitySide: AppShellUtilitySide;
|
|
58
|
+
panelCollapse: AppShellPanelCollapse;
|
|
59
|
+
primaryRailLabel: string;
|
|
60
|
+
navigationPanelLabel?: string;
|
|
61
|
+
contextPanelLabel?: string;
|
|
62
|
+
utilityPanelLabel?: string;
|
|
25
63
|
classInput?: string;
|
|
64
|
+
primaryRailPanelOpen: boolean;
|
|
65
|
+
navigationPanelOpen: boolean;
|
|
66
|
+
contextPanelOpen: boolean;
|
|
67
|
+
utilityPanelOpen: boolean;
|
|
68
|
+
readonly primaryRailTriggerId = "st-appShell-primaryRail-trigger";
|
|
69
|
+
readonly primaryRailRegionId = "st-appShell-primaryRail-region";
|
|
70
|
+
readonly navigationPanelTriggerId = "st-appShell-navigationPanel-trigger";
|
|
71
|
+
readonly navigationPanelRegionId = "st-appShell-navigationPanel-region";
|
|
72
|
+
readonly contextPanelTriggerId = "st-appShell-contextPanel-trigger";
|
|
73
|
+
readonly contextPanelRegionId = "st-appShell-contextPanel-region";
|
|
74
|
+
readonly utilityPanelTriggerId = "st-appShell-utilityPanel-trigger";
|
|
75
|
+
readonly utilityPanelRegionId = "st-appShell-utilityPanel-region";
|
|
26
76
|
get hostClass(): string;
|
|
77
|
+
get navigationPanelLabelResolved(): string;
|
|
78
|
+
get contextPanelLabelResolved(): string;
|
|
79
|
+
get utilityPanelLabelResolved(): string;
|
|
80
|
+
get primaryRailRegionCollapsed(): boolean;
|
|
81
|
+
get navigationPanelRegionCollapsed(): boolean;
|
|
82
|
+
get contextPanelRegionCollapsed(): boolean;
|
|
83
|
+
get utilityPanelRegionCollapsed(): boolean;
|
|
84
|
+
togglePrimaryRailPanel(): void;
|
|
85
|
+
toggleNavigationPanel(): void;
|
|
86
|
+
toggleContextPanel(): void;
|
|
87
|
+
toggleUtilityPanel(): void;
|
|
27
88
|
static ɵfac: i0.ɵɵFactoryDeclaration<AppShell, never>;
|
|
28
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AppShell, "st-app-shell", never, { "variant": { "alias": "variant"; "required": false; }; "mainId": { "alias": "mainId"; "required": false; }; "navigationLabel": { "alias": "navigationLabel"; "required": false; }; "contextLabel": { "alias": "contextLabel"; "required": false; }; "utilityLabel": { "alias": "utilityLabel"; "required": false; }; "utilityMode": { "alias": "utilityMode"; "required": false; }; "utilitySide": { "alias": "utilitySide"; "required": false; }; "classInput": { "alias": "class"; "required": false; }; }, {}, never, ["*"], true, never>;
|
|
89
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AppShell, "st-app-shell", never, { "variant": { "alias": "variant"; "required": false; }; "topChrome": { "alias": "topChrome"; "required": false; }; "primaryRail": { "alias": "primaryRail"; "required": false; }; "navigationPanel": { "alias": "navigationPanel"; "required": false; }; "contextPanel": { "alias": "contextPanel"; "required": false; }; "utilityPanel": { "alias": "utilityPanel"; "required": false; }; "bottomPanel": { "alias": "bottomPanel"; "required": false; }; "mainId": { "alias": "mainId"; "required": false; }; "navigationLabel": { "alias": "navigationLabel"; "required": false; }; "contextLabel": { "alias": "contextLabel"; "required": false; }; "utilityLabel": { "alias": "utilityLabel"; "required": false; }; "utilityMode": { "alias": "utilityMode"; "required": false; }; "utilitySide": { "alias": "utilitySide"; "required": false; }; "panelCollapse": { "alias": "panelCollapse"; "required": false; }; "primaryRailLabel": { "alias": "primaryRailLabel"; "required": false; }; "navigationPanelLabel": { "alias": "navigationPanelLabel"; "required": false; }; "contextPanelLabel": { "alias": "contextPanelLabel"; "required": false; }; "utilityPanelLabel": { "alias": "utilityPanelLabel"; "required": false; }; "classInput": { "alias": "class"; "required": false; }; }, {}, never, ["*", "[slot=topChrome]", "[slot=primaryRail]", "[slot=navigationPanel]", "[slot=main]", "[slot=contextPanel]", "[slot=utilityPanel]", "[slot=bottomPanel]"], true, never>;
|
|
29
90
|
}
|
|
30
91
|
//# sourceMappingURL=AppShell.d.ts.map
|
package/dist/AppShell.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppShell.d.ts","sourceRoot":"","sources":["../src/AppShell.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"AppShell.d.ts","sourceRoot":"","sources":["../src/AppShell.ts"],"names":[],"mappings":"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"}
|
package/dist/AppShell.js
CHANGED
|
@@ -1,39 +1,392 @@
|
|
|
1
1
|
import { Component, Input as NgInput } from "@angular/core";
|
|
2
|
+
import { classNames } from "./classNames.js";
|
|
3
|
+
import { Icon } from "./Icon.js";
|
|
2
4
|
import * as i0 from "@angular/core";
|
|
3
5
|
export class AppShell {
|
|
4
6
|
static stComponentName = "AppShell";
|
|
5
7
|
componentName = "AppShell";
|
|
6
8
|
variant = "workspace";
|
|
9
|
+
topChrome;
|
|
10
|
+
primaryRail;
|
|
11
|
+
navigationPanel;
|
|
12
|
+
contextPanel;
|
|
13
|
+
utilityPanel;
|
|
14
|
+
bottomPanel;
|
|
7
15
|
mainId = "main";
|
|
8
16
|
navigationLabel = "Workspace navigation";
|
|
9
17
|
contextLabel = "Context panel";
|
|
10
18
|
utilityLabel = "Utility panel";
|
|
11
19
|
utilityMode = "reserve";
|
|
12
20
|
utilitySide = "right";
|
|
21
|
+
panelCollapse = "stack";
|
|
22
|
+
primaryRailLabel = "Primary rail";
|
|
23
|
+
navigationPanelLabel;
|
|
24
|
+
contextPanelLabel;
|
|
25
|
+
utilityPanelLabel;
|
|
13
26
|
classInput;
|
|
27
|
+
// Uncontrolled per-panel disclosure state (v1) — each accordion panel
|
|
28
|
+
// starts collapsed. Desktop rendering never reads these (CSS scopes the
|
|
29
|
+
// collapse to `@media (max-width: 48rem)`), so they have zero effect above
|
|
30
|
+
// the breakpoint.
|
|
31
|
+
primaryRailPanelOpen = false;
|
|
32
|
+
navigationPanelOpen = false;
|
|
33
|
+
contextPanelOpen = false;
|
|
34
|
+
utilityPanelOpen = false;
|
|
35
|
+
// Static, framework-wide-matching disclosure ids (parity with the Svelte
|
|
36
|
+
// reference — one AppShell instance per page is the expected usage).
|
|
37
|
+
primaryRailTriggerId = "st-appShell-primaryRail-trigger";
|
|
38
|
+
primaryRailRegionId = "st-appShell-primaryRail-region";
|
|
39
|
+
navigationPanelTriggerId = "st-appShell-navigationPanel-trigger";
|
|
40
|
+
navigationPanelRegionId = "st-appShell-navigationPanel-region";
|
|
41
|
+
contextPanelTriggerId = "st-appShell-contextPanel-trigger";
|
|
42
|
+
contextPanelRegionId = "st-appShell-contextPanel-region";
|
|
43
|
+
utilityPanelTriggerId = "st-appShell-utilityPanel-trigger";
|
|
44
|
+
utilityPanelRegionId = "st-appShell-utilityPanel-region";
|
|
14
45
|
get hostClass() {
|
|
15
|
-
return
|
|
46
|
+
return classNames("st-appShell", `st-appShell--${this.variant}`, this.classInput);
|
|
47
|
+
}
|
|
48
|
+
// Resolved disclosure labels: default to the existing aria-label inputs so
|
|
49
|
+
// a consumer who already customized navigationLabel/contextLabel/utilityLabel
|
|
50
|
+
// doesn't need to duplicate the translation for the accordion trigger text.
|
|
51
|
+
get navigationPanelLabelResolved() {
|
|
52
|
+
return this.navigationPanelLabel ?? this.navigationLabel;
|
|
53
|
+
}
|
|
54
|
+
get contextPanelLabelResolved() {
|
|
55
|
+
return this.contextPanelLabel ?? this.contextLabel;
|
|
56
|
+
}
|
|
57
|
+
get utilityPanelLabelResolved() {
|
|
58
|
+
return this.utilityPanelLabel ?? this.utilityLabel;
|
|
59
|
+
}
|
|
60
|
+
get primaryRailRegionCollapsed() {
|
|
61
|
+
return this.panelCollapse === "accordion" && !this.primaryRailPanelOpen;
|
|
62
|
+
}
|
|
63
|
+
get navigationPanelRegionCollapsed() {
|
|
64
|
+
return this.panelCollapse === "accordion" && !this.navigationPanelOpen;
|
|
65
|
+
}
|
|
66
|
+
get contextPanelRegionCollapsed() {
|
|
67
|
+
return this.panelCollapse === "accordion" && !this.contextPanelOpen;
|
|
68
|
+
}
|
|
69
|
+
get utilityPanelRegionCollapsed() {
|
|
70
|
+
return this.panelCollapse === "accordion" && !this.utilityPanelOpen;
|
|
71
|
+
}
|
|
72
|
+
togglePrimaryRailPanel() {
|
|
73
|
+
this.primaryRailPanelOpen = !this.primaryRailPanelOpen;
|
|
74
|
+
}
|
|
75
|
+
toggleNavigationPanel() {
|
|
76
|
+
this.navigationPanelOpen = !this.navigationPanelOpen;
|
|
77
|
+
}
|
|
78
|
+
toggleContextPanel() {
|
|
79
|
+
this.contextPanelOpen = !this.contextPanelOpen;
|
|
80
|
+
}
|
|
81
|
+
toggleUtilityPanel() {
|
|
82
|
+
this.utilityPanelOpen = !this.utilityPanelOpen;
|
|
16
83
|
}
|
|
17
84
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: AppShell, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
18
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
19
|
-
|
|
20
|
-
<
|
|
21
|
-
|
|
22
|
-
|
|
85
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.17", type: AppShell, isStandalone: true, selector: "st-app-shell", inputs: { variant: "variant", topChrome: "topChrome", primaryRail: "primaryRail", navigationPanel: "navigationPanel", contextPanel: "contextPanel", utilityPanel: "utilityPanel", bottomPanel: "bottomPanel", mainId: "mainId", navigationLabel: "navigationLabel", contextLabel: "contextLabel", utilityLabel: "utilityLabel", utilityMode: "utilityMode", utilitySide: "utilitySide", panelCollapse: "panelCollapse", primaryRailLabel: "primaryRailLabel", navigationPanelLabel: "navigationPanelLabel", contextPanelLabel: "contextPanelLabel", utilityPanelLabel: "utilityPanelLabel", classInput: ["class", "classInput"] }, ngImport: i0, template: `
|
|
86
|
+
@if (variant === "site") {
|
|
87
|
+
<div [attr.data-st-component]="componentName" data-st-app-shell-variant="site" [class]="hostClass">
|
|
88
|
+
<ng-content></ng-content>
|
|
89
|
+
</div>
|
|
90
|
+
} @else {
|
|
91
|
+
<div
|
|
92
|
+
[attr.data-st-component]="componentName"
|
|
93
|
+
data-st-app-shell-variant="workspace"
|
|
94
|
+
[attr.data-utility-mode]="utilityMode"
|
|
95
|
+
[attr.data-utility-side]="utilitySide"
|
|
96
|
+
[attr.data-panel-collapse]="panelCollapse"
|
|
97
|
+
[class]="hostClass"
|
|
98
|
+
>
|
|
99
|
+
@if (topChrome) {
|
|
100
|
+
<div class="st-appShell__topChrome">
|
|
101
|
+
<ng-content select="[slot=topChrome]"></ng-content>
|
|
102
|
+
</div>
|
|
103
|
+
}
|
|
104
|
+
<div class="st-appShell__body">
|
|
105
|
+
@if (primaryRail) {
|
|
106
|
+
<aside class="st-appShell__primaryRail" [attr.aria-label]="primaryRailLabel">
|
|
107
|
+
@if (panelCollapse === "accordion") {
|
|
108
|
+
<button
|
|
109
|
+
type="button"
|
|
110
|
+
class="st-appShell__panelDisclosure"
|
|
111
|
+
[attr.aria-expanded]="primaryRailPanelOpen"
|
|
112
|
+
[attr.aria-controls]="primaryRailRegionId"
|
|
113
|
+
[id]="primaryRailTriggerId"
|
|
114
|
+
(click)="togglePrimaryRailPanel()"
|
|
115
|
+
>
|
|
116
|
+
<span class="st-appShell__panelDisclosureLabel">{{ primaryRailLabel }}</span>
|
|
117
|
+
<span class="st-appShell__panelDisclosureIcon" [class.st-appShell__panelDisclosureIcon--expanded]="primaryRailPanelOpen">
|
|
118
|
+
<st-icon name="chevron-down" [size]="16"></st-icon>
|
|
119
|
+
</span>
|
|
120
|
+
</button>
|
|
121
|
+
}
|
|
122
|
+
<div
|
|
123
|
+
class="st-appShell__panelRegion"
|
|
124
|
+
[class.st-appShell__panelRegion--collapsed]="primaryRailRegionCollapsed"
|
|
125
|
+
[attr.id]="panelCollapse === 'accordion' ? primaryRailRegionId : null"
|
|
126
|
+
[attr.role]="panelCollapse === 'accordion' ? 'region' : null"
|
|
127
|
+
[attr.aria-labelledby]="panelCollapse === 'accordion' ? primaryRailTriggerId : null"
|
|
128
|
+
>
|
|
129
|
+
<ng-content select="[slot=primaryRail]"></ng-content>
|
|
130
|
+
</div>
|
|
131
|
+
</aside>
|
|
132
|
+
}
|
|
133
|
+
@if (navigationPanel) {
|
|
134
|
+
<aside class="st-appShell__navigationPanel" [attr.aria-label]="navigationLabel">
|
|
135
|
+
@if (panelCollapse === "accordion") {
|
|
136
|
+
<button
|
|
137
|
+
type="button"
|
|
138
|
+
class="st-appShell__panelDisclosure"
|
|
139
|
+
[attr.aria-expanded]="navigationPanelOpen"
|
|
140
|
+
[attr.aria-controls]="navigationPanelRegionId"
|
|
141
|
+
[id]="navigationPanelTriggerId"
|
|
142
|
+
(click)="toggleNavigationPanel()"
|
|
143
|
+
>
|
|
144
|
+
<span class="st-appShell__panelDisclosureLabel">{{ navigationPanelLabelResolved }}</span>
|
|
145
|
+
<span class="st-appShell__panelDisclosureIcon" [class.st-appShell__panelDisclosureIcon--expanded]="navigationPanelOpen">
|
|
146
|
+
<st-icon name="chevron-down" [size]="16"></st-icon>
|
|
147
|
+
</span>
|
|
148
|
+
</button>
|
|
149
|
+
}
|
|
150
|
+
<div
|
|
151
|
+
class="st-appShell__panelRegion"
|
|
152
|
+
[class.st-appShell__panelRegion--collapsed]="navigationPanelRegionCollapsed"
|
|
153
|
+
[attr.id]="panelCollapse === 'accordion' ? navigationPanelRegionId : null"
|
|
154
|
+
[attr.role]="panelCollapse === 'accordion' ? 'region' : null"
|
|
155
|
+
[attr.aria-labelledby]="panelCollapse === 'accordion' ? navigationPanelTriggerId : null"
|
|
156
|
+
>
|
|
157
|
+
<ng-content select="[slot=navigationPanel]"></ng-content>
|
|
158
|
+
</div>
|
|
159
|
+
</aside>
|
|
160
|
+
}
|
|
161
|
+
<main class="st-appShell__main" [id]="mainId">
|
|
162
|
+
<ng-content select="[slot=main]"></ng-content>
|
|
163
|
+
</main>
|
|
164
|
+
@if (contextPanel) {
|
|
165
|
+
<aside class="st-appShell__contextPanel" [attr.aria-label]="contextLabel">
|
|
166
|
+
@if (panelCollapse === "accordion") {
|
|
167
|
+
<button
|
|
168
|
+
type="button"
|
|
169
|
+
class="st-appShell__panelDisclosure"
|
|
170
|
+
[attr.aria-expanded]="contextPanelOpen"
|
|
171
|
+
[attr.aria-controls]="contextPanelRegionId"
|
|
172
|
+
[id]="contextPanelTriggerId"
|
|
173
|
+
(click)="toggleContextPanel()"
|
|
174
|
+
>
|
|
175
|
+
<span class="st-appShell__panelDisclosureLabel">{{ contextPanelLabelResolved }}</span>
|
|
176
|
+
<span class="st-appShell__panelDisclosureIcon" [class.st-appShell__panelDisclosureIcon--expanded]="contextPanelOpen">
|
|
177
|
+
<st-icon name="chevron-down" [size]="16"></st-icon>
|
|
178
|
+
</span>
|
|
179
|
+
</button>
|
|
180
|
+
}
|
|
181
|
+
<div
|
|
182
|
+
class="st-appShell__panelRegion"
|
|
183
|
+
[class.st-appShell__panelRegion--collapsed]="contextPanelRegionCollapsed"
|
|
184
|
+
[attr.id]="panelCollapse === 'accordion' ? contextPanelRegionId : null"
|
|
185
|
+
[attr.role]="panelCollapse === 'accordion' ? 'region' : null"
|
|
186
|
+
[attr.aria-labelledby]="panelCollapse === 'accordion' ? contextPanelTriggerId : null"
|
|
187
|
+
>
|
|
188
|
+
<ng-content select="[slot=contextPanel]"></ng-content>
|
|
189
|
+
</div>
|
|
190
|
+
</aside>
|
|
191
|
+
}
|
|
192
|
+
@if (utilityPanel) {
|
|
193
|
+
<aside class="st-appShell__utilityPanel" [attr.aria-label]="utilityLabel">
|
|
194
|
+
@if (panelCollapse === "accordion") {
|
|
195
|
+
<button
|
|
196
|
+
type="button"
|
|
197
|
+
class="st-appShell__panelDisclosure"
|
|
198
|
+
[attr.aria-expanded]="utilityPanelOpen"
|
|
199
|
+
[attr.aria-controls]="utilityPanelRegionId"
|
|
200
|
+
[id]="utilityPanelTriggerId"
|
|
201
|
+
(click)="toggleUtilityPanel()"
|
|
202
|
+
>
|
|
203
|
+
<span class="st-appShell__panelDisclosureLabel">{{ utilityPanelLabelResolved }}</span>
|
|
204
|
+
<span class="st-appShell__panelDisclosureIcon" [class.st-appShell__panelDisclosureIcon--expanded]="utilityPanelOpen">
|
|
205
|
+
<st-icon name="chevron-down" [size]="16"></st-icon>
|
|
206
|
+
</span>
|
|
207
|
+
</button>
|
|
208
|
+
}
|
|
209
|
+
<div
|
|
210
|
+
class="st-appShell__panelRegion"
|
|
211
|
+
[class.st-appShell__panelRegion--collapsed]="utilityPanelRegionCollapsed"
|
|
212
|
+
[attr.id]="panelCollapse === 'accordion' ? utilityPanelRegionId : null"
|
|
213
|
+
[attr.role]="panelCollapse === 'accordion' ? 'region' : null"
|
|
214
|
+
[attr.aria-labelledby]="panelCollapse === 'accordion' ? utilityPanelTriggerId : null"
|
|
215
|
+
>
|
|
216
|
+
<ng-content select="[slot=utilityPanel]"></ng-content>
|
|
217
|
+
</div>
|
|
218
|
+
</aside>
|
|
219
|
+
}
|
|
220
|
+
</div>
|
|
221
|
+
@if (bottomPanel) {
|
|
222
|
+
<section class="st-appShell__bottomPanel" aria-label="Workspace tools">
|
|
223
|
+
<ng-content select="[slot=bottomPanel]"></ng-content>
|
|
224
|
+
</section>
|
|
225
|
+
}
|
|
226
|
+
</div>
|
|
227
|
+
}
|
|
228
|
+
`, isInline: true, styles: [":host { display: contents; }"], dependencies: [{ kind: "component", type: Icon, selector: "st-icon", inputs: ["name", "size", "strokeWidth", "title", "class"] }] });
|
|
23
229
|
}
|
|
24
230
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: AppShell, decorators: [{
|
|
25
231
|
type: Component,
|
|
26
|
-
args: [{
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
232
|
+
args: [{ selector: "st-app-shell", standalone: true, imports: [Icon], template: `
|
|
233
|
+
@if (variant === "site") {
|
|
234
|
+
<div [attr.data-st-component]="componentName" data-st-app-shell-variant="site" [class]="hostClass">
|
|
235
|
+
<ng-content></ng-content>
|
|
236
|
+
</div>
|
|
237
|
+
} @else {
|
|
238
|
+
<div
|
|
239
|
+
[attr.data-st-component]="componentName"
|
|
240
|
+
data-st-app-shell-variant="workspace"
|
|
241
|
+
[attr.data-utility-mode]="utilityMode"
|
|
242
|
+
[attr.data-utility-side]="utilitySide"
|
|
243
|
+
[attr.data-panel-collapse]="panelCollapse"
|
|
244
|
+
[class]="hostClass"
|
|
245
|
+
>
|
|
246
|
+
@if (topChrome) {
|
|
247
|
+
<div class="st-appShell__topChrome">
|
|
248
|
+
<ng-content select="[slot=topChrome]"></ng-content>
|
|
249
|
+
</div>
|
|
250
|
+
}
|
|
251
|
+
<div class="st-appShell__body">
|
|
252
|
+
@if (primaryRail) {
|
|
253
|
+
<aside class="st-appShell__primaryRail" [attr.aria-label]="primaryRailLabel">
|
|
254
|
+
@if (panelCollapse === "accordion") {
|
|
255
|
+
<button
|
|
256
|
+
type="button"
|
|
257
|
+
class="st-appShell__panelDisclosure"
|
|
258
|
+
[attr.aria-expanded]="primaryRailPanelOpen"
|
|
259
|
+
[attr.aria-controls]="primaryRailRegionId"
|
|
260
|
+
[id]="primaryRailTriggerId"
|
|
261
|
+
(click)="togglePrimaryRailPanel()"
|
|
262
|
+
>
|
|
263
|
+
<span class="st-appShell__panelDisclosureLabel">{{ primaryRailLabel }}</span>
|
|
264
|
+
<span class="st-appShell__panelDisclosureIcon" [class.st-appShell__panelDisclosureIcon--expanded]="primaryRailPanelOpen">
|
|
265
|
+
<st-icon name="chevron-down" [size]="16"></st-icon>
|
|
266
|
+
</span>
|
|
267
|
+
</button>
|
|
268
|
+
}
|
|
269
|
+
<div
|
|
270
|
+
class="st-appShell__panelRegion"
|
|
271
|
+
[class.st-appShell__panelRegion--collapsed]="primaryRailRegionCollapsed"
|
|
272
|
+
[attr.id]="panelCollapse === 'accordion' ? primaryRailRegionId : null"
|
|
273
|
+
[attr.role]="panelCollapse === 'accordion' ? 'region' : null"
|
|
274
|
+
[attr.aria-labelledby]="panelCollapse === 'accordion' ? primaryRailTriggerId : null"
|
|
275
|
+
>
|
|
276
|
+
<ng-content select="[slot=primaryRail]"></ng-content>
|
|
277
|
+
</div>
|
|
278
|
+
</aside>
|
|
279
|
+
}
|
|
280
|
+
@if (navigationPanel) {
|
|
281
|
+
<aside class="st-appShell__navigationPanel" [attr.aria-label]="navigationLabel">
|
|
282
|
+
@if (panelCollapse === "accordion") {
|
|
283
|
+
<button
|
|
284
|
+
type="button"
|
|
285
|
+
class="st-appShell__panelDisclosure"
|
|
286
|
+
[attr.aria-expanded]="navigationPanelOpen"
|
|
287
|
+
[attr.aria-controls]="navigationPanelRegionId"
|
|
288
|
+
[id]="navigationPanelTriggerId"
|
|
289
|
+
(click)="toggleNavigationPanel()"
|
|
290
|
+
>
|
|
291
|
+
<span class="st-appShell__panelDisclosureLabel">{{ navigationPanelLabelResolved }}</span>
|
|
292
|
+
<span class="st-appShell__panelDisclosureIcon" [class.st-appShell__panelDisclosureIcon--expanded]="navigationPanelOpen">
|
|
293
|
+
<st-icon name="chevron-down" [size]="16"></st-icon>
|
|
294
|
+
</span>
|
|
295
|
+
</button>
|
|
296
|
+
}
|
|
297
|
+
<div
|
|
298
|
+
class="st-appShell__panelRegion"
|
|
299
|
+
[class.st-appShell__panelRegion--collapsed]="navigationPanelRegionCollapsed"
|
|
300
|
+
[attr.id]="panelCollapse === 'accordion' ? navigationPanelRegionId : null"
|
|
301
|
+
[attr.role]="panelCollapse === 'accordion' ? 'region' : null"
|
|
302
|
+
[attr.aria-labelledby]="panelCollapse === 'accordion' ? navigationPanelTriggerId : null"
|
|
303
|
+
>
|
|
304
|
+
<ng-content select="[slot=navigationPanel]"></ng-content>
|
|
305
|
+
</div>
|
|
306
|
+
</aside>
|
|
307
|
+
}
|
|
308
|
+
<main class="st-appShell__main" [id]="mainId">
|
|
309
|
+
<ng-content select="[slot=main]"></ng-content>
|
|
310
|
+
</main>
|
|
311
|
+
@if (contextPanel) {
|
|
312
|
+
<aside class="st-appShell__contextPanel" [attr.aria-label]="contextLabel">
|
|
313
|
+
@if (panelCollapse === "accordion") {
|
|
314
|
+
<button
|
|
315
|
+
type="button"
|
|
316
|
+
class="st-appShell__panelDisclosure"
|
|
317
|
+
[attr.aria-expanded]="contextPanelOpen"
|
|
318
|
+
[attr.aria-controls]="contextPanelRegionId"
|
|
319
|
+
[id]="contextPanelTriggerId"
|
|
320
|
+
(click)="toggleContextPanel()"
|
|
321
|
+
>
|
|
322
|
+
<span class="st-appShell__panelDisclosureLabel">{{ contextPanelLabelResolved }}</span>
|
|
323
|
+
<span class="st-appShell__panelDisclosureIcon" [class.st-appShell__panelDisclosureIcon--expanded]="contextPanelOpen">
|
|
324
|
+
<st-icon name="chevron-down" [size]="16"></st-icon>
|
|
325
|
+
</span>
|
|
326
|
+
</button>
|
|
327
|
+
}
|
|
328
|
+
<div
|
|
329
|
+
class="st-appShell__panelRegion"
|
|
330
|
+
[class.st-appShell__panelRegion--collapsed]="contextPanelRegionCollapsed"
|
|
331
|
+
[attr.id]="panelCollapse === 'accordion' ? contextPanelRegionId : null"
|
|
332
|
+
[attr.role]="panelCollapse === 'accordion' ? 'region' : null"
|
|
333
|
+
[attr.aria-labelledby]="panelCollapse === 'accordion' ? contextPanelTriggerId : null"
|
|
334
|
+
>
|
|
335
|
+
<ng-content select="[slot=contextPanel]"></ng-content>
|
|
336
|
+
</div>
|
|
337
|
+
</aside>
|
|
338
|
+
}
|
|
339
|
+
@if (utilityPanel) {
|
|
340
|
+
<aside class="st-appShell__utilityPanel" [attr.aria-label]="utilityLabel">
|
|
341
|
+
@if (panelCollapse === "accordion") {
|
|
342
|
+
<button
|
|
343
|
+
type="button"
|
|
344
|
+
class="st-appShell__panelDisclosure"
|
|
345
|
+
[attr.aria-expanded]="utilityPanelOpen"
|
|
346
|
+
[attr.aria-controls]="utilityPanelRegionId"
|
|
347
|
+
[id]="utilityPanelTriggerId"
|
|
348
|
+
(click)="toggleUtilityPanel()"
|
|
349
|
+
>
|
|
350
|
+
<span class="st-appShell__panelDisclosureLabel">{{ utilityPanelLabelResolved }}</span>
|
|
351
|
+
<span class="st-appShell__panelDisclosureIcon" [class.st-appShell__panelDisclosureIcon--expanded]="utilityPanelOpen">
|
|
352
|
+
<st-icon name="chevron-down" [size]="16"></st-icon>
|
|
353
|
+
</span>
|
|
354
|
+
</button>
|
|
355
|
+
}
|
|
356
|
+
<div
|
|
357
|
+
class="st-appShell__panelRegion"
|
|
358
|
+
[class.st-appShell__panelRegion--collapsed]="utilityPanelRegionCollapsed"
|
|
359
|
+
[attr.id]="panelCollapse === 'accordion' ? utilityPanelRegionId : null"
|
|
360
|
+
[attr.role]="panelCollapse === 'accordion' ? 'region' : null"
|
|
361
|
+
[attr.aria-labelledby]="panelCollapse === 'accordion' ? utilityPanelTriggerId : null"
|
|
362
|
+
>
|
|
363
|
+
<ng-content select="[slot=utilityPanel]"></ng-content>
|
|
364
|
+
</div>
|
|
365
|
+
</aside>
|
|
366
|
+
}
|
|
367
|
+
</div>
|
|
368
|
+
@if (bottomPanel) {
|
|
369
|
+
<section class="st-appShell__bottomPanel" aria-label="Workspace tools">
|
|
370
|
+
<ng-content select="[slot=bottomPanel]"></ng-content>
|
|
371
|
+
</section>
|
|
372
|
+
}
|
|
373
|
+
</div>
|
|
374
|
+
}
|
|
375
|
+
`, styles: [":host { display: contents; }"] }]
|
|
35
376
|
}], propDecorators: { variant: [{
|
|
36
377
|
type: NgInput
|
|
378
|
+
}], topChrome: [{
|
|
379
|
+
type: NgInput
|
|
380
|
+
}], primaryRail: [{
|
|
381
|
+
type: NgInput
|
|
382
|
+
}], navigationPanel: [{
|
|
383
|
+
type: NgInput
|
|
384
|
+
}], contextPanel: [{
|
|
385
|
+
type: NgInput
|
|
386
|
+
}], utilityPanel: [{
|
|
387
|
+
type: NgInput
|
|
388
|
+
}], bottomPanel: [{
|
|
389
|
+
type: NgInput
|
|
37
390
|
}], mainId: [{
|
|
38
391
|
type: NgInput
|
|
39
392
|
}], navigationLabel: [{
|
|
@@ -46,6 +399,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImpo
|
|
|
46
399
|
type: NgInput
|
|
47
400
|
}], utilitySide: [{
|
|
48
401
|
type: NgInput
|
|
402
|
+
}], panelCollapse: [{
|
|
403
|
+
type: NgInput
|
|
404
|
+
}], primaryRailLabel: [{
|
|
405
|
+
type: NgInput
|
|
406
|
+
}], navigationPanelLabel: [{
|
|
407
|
+
type: NgInput
|
|
408
|
+
}], contextPanelLabel: [{
|
|
409
|
+
type: NgInput
|
|
410
|
+
}], utilityPanelLabel: [{
|
|
411
|
+
type: NgInput
|
|
49
412
|
}], classInput: [{
|
|
50
413
|
type: NgInput,
|
|
51
414
|
args: ["class"]
|
package/dist/AppShell.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppShell.js","sourceRoot":"","sources":["../src/AppShell.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,eAAe,CAAC;;
|
|
1
|
+
{"version":3,"file":"AppShell.js","sourceRoot":"","sources":["../src/AppShell.ts"],"names":[],"mappings":"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"}
|
package/dist/Icon.d.ts
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
/** A canonical DS icon name accepted by {@link Icon}. */
|
|
3
|
+
export type IconName = "settings" | "eye" | "eye-off" | "layers" | "target" | "close" | "chevron-down" | "chevron-right";
|
|
4
|
+
export type IconProps = {
|
|
5
|
+
name: IconName;
|
|
6
|
+
size?: number;
|
|
7
|
+
strokeWidth?: number;
|
|
8
|
+
title?: string;
|
|
9
|
+
class?: string;
|
|
10
|
+
};
|
|
11
|
+
type IconNode = Array<[string, Record<string, string>]>;
|
|
12
|
+
/** All canonical icon names, ordered — useful for docs/catalogs. */
|
|
13
|
+
export declare const ICON_NAMES: IconName[];
|
|
14
|
+
export declare class Icon {
|
|
15
|
+
static readonly stComponentName = "Icon";
|
|
16
|
+
readonly componentName = "Icon";
|
|
17
|
+
/** Canonical DS icon name. */
|
|
18
|
+
name: IconName;
|
|
19
|
+
/** Square size in px. Default 18 — the DS-standard inline glyph size. */
|
|
20
|
+
size?: number;
|
|
21
|
+
/** Stroke width. Default 2.25 — matches the DS's existing lucide usage. */
|
|
22
|
+
strokeWidth?: number;
|
|
23
|
+
/** Accessible name; when omitted the icon is decorative (`aria-hidden`). */
|
|
24
|
+
titleInput?: string;
|
|
25
|
+
classInput?: string;
|
|
26
|
+
get nodes(): IconNode | null;
|
|
27
|
+
get hostClass(): string;
|
|
28
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<Icon, never>;
|
|
29
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<Icon, "st-icon", never, { "name": { "alias": "name"; "required": false; }; "size": { "alias": "size"; "required": false; }; "strokeWidth": { "alias": "strokeWidth"; "required": false; }; "titleInput": { "alias": "title"; "required": false; }; "classInput": { "alias": "class"; "required": false; }; }, {}, never, never, true, never>;
|
|
30
|
+
}
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=Icon.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Icon.d.ts","sourceRoot":"","sources":["../src/Icon.ts"],"names":[],"mappings":";AAIA,yDAAyD;AACzD,MAAM,MAAM,QAAQ,GAChB,UAAU,GACV,KAAK,GACL,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,OAAO,GACP,cAAc,GACd,eAAe,CAAC;AAEpB,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,QAAQ,GAAG,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;AA2CxD,oEAAoE;AACpE,eAAO,MAAM,UAAU,EAA8B,QAAQ,EAAE,CAAC;AAEhE,qBAuCa,IAAI;IACf,MAAM,CAAC,QAAQ,CAAC,eAAe,UAAU;IACzC,QAAQ,CAAC,aAAa,UAAU;IAChC,8BAA8B;IACnB,IAAI,EAAG,QAAQ,CAAC;IAC3B,yEAAyE;IAC9D,IAAI,CAAC,EAAE,MAAM,CAAC;IACzB,2EAA2E;IAChE,WAAW,CAAC,EAAE,MAAM,CAAC;IAChC,4EAA4E;IAC1D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEtC,IAAI,KAAK,IAAI,QAAQ,GAAG,IAAI,CAE3B;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;yCAnBU,IAAI;2CAAJ,IAAI;CAoBhB"}
|