@omicronenergy/oscd-shell 0.0.13 → 0.0.14
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/landing-page/landing-page.js +3 -2
- package/dist/landing-page/landing-page.js.map +1 -1
- package/dist/landing-page/landing-page.spec.js +4 -2
- package/dist/landing-page/landing-page.spec.js.map +1 -1
- package/dist/locales/de.d.ts +8 -0
- package/dist/locales/de.js +9 -0
- package/dist/locales/de.js.map +1 -1
- package/dist/menus/files-menu.js +4 -5
- package/dist/menus/files-menu.js.map +1 -1
- package/dist/menus/plugins-menu.d.ts +6 -3
- package/dist/menus/plugins-menu.js +40 -6
- package/dist/menus/plugins-menu.js.map +1 -1
- package/dist/menus/plugins-menu.spec.js +1 -0
- package/dist/menus/plugins-menu.spec.js.map +1 -1
- package/dist/oscd-shell-design-tokens.js +128 -64
- package/dist/oscd-shell-design-tokens.js.map +1 -1
- package/dist/oscd-shell.d.ts +31 -22
- package/dist/oscd-shell.js +136 -73
- package/dist/oscd-shell.js.map +1 -1
- package/dist/side-panel/build-tree-nodes.spec.d.ts +1 -0
- package/dist/side-panel/build-tree-nodes.spec.js +50 -0
- package/dist/side-panel/build-tree-nodes.spec.js.map +1 -0
- package/dist/side-panel/editor-plugins-panel.d.ts +79 -7
- package/dist/side-panel/editor-plugins-panel.js +823 -92
- package/dist/side-panel/editor-plugins-panel.js.map +1 -1
- package/dist/side-panel/editor-plugins-panel.spec.js +469 -24
- package/dist/side-panel/editor-plugins-panel.spec.js.map +1 -1
- package/dist/utils/plugin-utils.d.ts +29 -5
- package/dist/utils/plugin-utils.js +73 -14
- package/dist/utils/plugin-utils.js.map +1 -1
- package/dist/utils/plugin-utils.spec.js +113 -4
- package/dist/utils/plugin-utils.spec.js.map +1 -1
- package/dist/utils/testing/plugin-helpers.d.ts +7 -3
- package/dist/utils/testing/plugin-helpers.js +21 -9
- package/dist/utils/testing/plugin-helpers.js.map +1 -1
- package/package.json +36 -37
|
@@ -10,18 +10,27 @@ import { css } from 'lit';
|
|
|
10
10
|
* internal base tokens (e.g. --oscd-base*).
|
|
11
11
|
*/
|
|
12
12
|
export const oscdShellDesignTokens = css `
|
|
13
|
-
/* Internal base theme tokens and defaults
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
--oscd-
|
|
13
|
+
/* Internal base theme tokens and defaults.
|
|
14
|
+
*
|
|
15
|
+
* Defaults are the Solarized (https://ethanschoonover.com/solarized/)
|
|
16
|
+
* light palette used by the legacy OpenSCD shell, so oscd-shell is
|
|
17
|
+
* brand-neutral out of the box: consumers who set none of the
|
|
18
|
+
* --oscd-theme-* variables get the classic OpenSCD look. Distro-specific
|
|
19
|
+
* branding (e.g. Omicron colors) is applied entirely by overriding the
|
|
20
|
+
* --oscd-theme-* variables from outside; nothing brand-specific belongs
|
|
21
|
+
* in this file.
|
|
22
|
+
*/
|
|
23
|
+
:host {
|
|
24
|
+
--oscd-primary: var(--oscd-theme-primary, #2aa198);
|
|
25
|
+
--oscd-secondary: var(--oscd-theme-secondary, #6c71c4);
|
|
26
|
+
--oscd-base03: var(--oscd-theme-base03, #002b36);
|
|
27
|
+
--oscd-base02: var(--oscd-theme-base02, #073642);
|
|
28
|
+
--oscd-base01: var(--oscd-theme-base01, #586e75);
|
|
29
|
+
--oscd-base00: var(--oscd-theme-base00, #657b83);
|
|
30
|
+
--oscd-base0: var(--oscd-theme-base0, #839496);
|
|
31
|
+
--oscd-base1: var(--oscd-theme-base1, #93a1a1);
|
|
32
|
+
--oscd-base2: var(--oscd-theme-base2, #eee8d5);
|
|
33
|
+
--oscd-base3: var(--oscd-theme-base3, #fdf6e3);
|
|
25
34
|
--oscd-error: var(--oscd-theme-error, #dc322f);
|
|
26
35
|
--oscd-warning: var(--oscd-theme-warning, #b58900);
|
|
27
36
|
--oscd-text-font: var(--oscd-theme-text-font, 'Roboto');
|
|
@@ -47,8 +56,14 @@ export const oscdShellDesignTokens = css `
|
|
|
47
56
|
--md-sys-color-error: var(--oscd-error);
|
|
48
57
|
--md-sys-color-on-error: var(--oscd-base3);
|
|
49
58
|
--md-icon-button-disabled-icon-color: var(--oscd-base3);
|
|
50
|
-
|
|
51
|
-
|
|
59
|
+
|
|
60
|
+
/* MD3 has no single generic "system font" token (unlike color); its
|
|
61
|
+
* closest reference-tier equivalent is --md-ref-typeface-plain. Icon
|
|
62
|
+
* fonts (--oscd-icon-font) and monospace fonts (--oscd-text-font-mono)
|
|
63
|
+
* have no MD3 system-token equivalent at all, so they are referenced
|
|
64
|
+
* directly where needed instead of through an --md-* mapping.
|
|
65
|
+
*/
|
|
66
|
+
--md-ref-typeface-plain: var(--oscd-text-font);
|
|
52
67
|
|
|
53
68
|
/* MDC Theme Colors
|
|
54
69
|
* Needed for supporting any pluggins still using the depricated MWC Components
|
|
@@ -86,31 +101,27 @@ export const oscdShellDesignTokens = css `
|
|
|
86
101
|
--mdc-theme-text-disabled-on-light: rgba(255, 255, 255, 0.38);
|
|
87
102
|
}
|
|
88
103
|
|
|
89
|
-
* {
|
|
90
|
-
--app-bar-height: 54px;
|
|
91
|
-
--side-panel-width: 280px;
|
|
92
|
-
|
|
93
|
-
--md-sys-color-primary: var(--oscd-primary);
|
|
94
|
-
--md-sys-color-on-primary: var(--oscd-base3);
|
|
95
|
-
|
|
96
|
-
--md-sys-color-secondary-container: var(--oscd-base2);
|
|
97
|
-
|
|
98
|
-
--md-sys-color-surface: var(--oscd-base3);
|
|
99
|
-
--md-sys-color-on-surface: var(--oscd-base00);
|
|
100
|
-
}
|
|
101
|
-
|
|
102
104
|
/*
|
|
103
105
|
* Public token -> internal token mappings
|
|
104
106
|
*
|
|
105
107
|
* Example pattern:
|
|
106
108
|
* --internal-variable-name: var(--oscd-shell-public-token, <default>);
|
|
107
109
|
*/
|
|
108
|
-
|
|
110
|
+
:host {
|
|
111
|
+
/* Shell root */
|
|
112
|
+
--shell-background-color: var(
|
|
113
|
+
--oscd-shell-background-color,
|
|
114
|
+
var(--md-sys-color-surface)
|
|
115
|
+
);
|
|
116
|
+
|
|
109
117
|
/* App bar */
|
|
110
|
-
--app-bar-color: var(
|
|
118
|
+
--app-bar-color: var(
|
|
119
|
+
--oscd-shell-app-bar-color,
|
|
120
|
+
var(--md-sys-color-on-primary)
|
|
121
|
+
);
|
|
111
122
|
--app-bar-background-color: var(
|
|
112
123
|
--oscd-shell-app-bar-background-color,
|
|
113
|
-
var(--
|
|
124
|
+
var(--md-sys-color-primary)
|
|
114
125
|
);
|
|
115
126
|
--app-bar-height: var(--oscd-shell-app-bar-height, 54px);
|
|
116
127
|
--app-bar-small-height: var(--oscd-shell-app-bar-small-height, 48px);
|
|
@@ -120,9 +131,11 @@ export const oscdShellDesignTokens = css `
|
|
|
120
131
|
);
|
|
121
132
|
--app-bar-app-icon-height: var(--oscd-shell-app-bar-icon-height, 34.4px);
|
|
122
133
|
--app-bar-app-icon-width: var(--oscd-shell-app-bar-icon-width, auto);
|
|
134
|
+
--app-bar-logo-gap: var(--oscd-shell-app-bar-logo-gap, 16px);
|
|
135
|
+
--app-bar-title-menu-gap: var(--oscd-shell-app-bar-title-menu-gap, 4px);
|
|
123
136
|
--app-bar-title-text-font-family: var(
|
|
124
137
|
--oscd-shell-app-bar-title-font-family,
|
|
125
|
-
var(--
|
|
138
|
+
var(--md-ref-typeface-plain)
|
|
126
139
|
);
|
|
127
140
|
--app-bar-title-text-color: var(
|
|
128
141
|
--oscd-shell-app-bar-title-color,
|
|
@@ -148,13 +161,53 @@ export const oscdShellDesignTokens = css `
|
|
|
148
161
|
--oscd-shell-app-bar-title-letter-spacing,
|
|
149
162
|
inherit
|
|
150
163
|
);
|
|
164
|
+
--app-bar-current-editor-font-family: var(
|
|
165
|
+
--oscd-shell-app-bar-current-editor-font-family,
|
|
166
|
+
var(--md-ref-typeface-plain)
|
|
167
|
+
);
|
|
168
|
+
--app-bar-current-editor-font-size: var(
|
|
169
|
+
--oscd-shell-app-bar-current-editor-font-size,
|
|
170
|
+
16px
|
|
171
|
+
);
|
|
172
|
+
--app-bar-current-editor-font-weight: var(
|
|
173
|
+
--oscd-shell-app-bar-current-editor-font-weight,
|
|
174
|
+
500
|
|
175
|
+
);
|
|
176
|
+
--app-bar-current-editor-font-style: var(
|
|
177
|
+
--oscd-shell-app-bar-current-editor-font-style,
|
|
178
|
+
normal
|
|
179
|
+
);
|
|
180
|
+
--app-bar-current-editor-line-height: var(
|
|
181
|
+
--oscd-shell-app-bar-current-editor-line-height,
|
|
182
|
+
normal
|
|
183
|
+
);
|
|
184
|
+
--app-bar-current-editor-color: var(
|
|
185
|
+
--oscd-shell-app-bar-current-editor-color,
|
|
186
|
+
var(--app-bar-color)
|
|
187
|
+
);
|
|
151
188
|
--app-bar-action-icon-size: var(
|
|
152
189
|
--oscd-shell-app-bar-action-icon-size,
|
|
153
190
|
24px
|
|
154
191
|
);
|
|
155
192
|
--app-bar-action-icon-color: var(
|
|
156
193
|
--oscd-shell-app-bar-action-icon-color,
|
|
157
|
-
var(--
|
|
194
|
+
var(--md-sys-color-on-primary)
|
|
195
|
+
);
|
|
196
|
+
--app-bar-action-icon-disabled-color: var(
|
|
197
|
+
--oscd-shell-app-bar-action-icon-disabled-color,
|
|
198
|
+
var(--md-sys-color-on-primary)
|
|
199
|
+
);
|
|
200
|
+
--app-bar-action-icon-disabled-container-opacity: var(
|
|
201
|
+
--oscd-shell-app-bar-action-icon-disabled-container-opacity,
|
|
202
|
+
0
|
|
203
|
+
);
|
|
204
|
+
--app-bar-separator-color: var(
|
|
205
|
+
--oscd-shell-app-bar-separator-color,
|
|
206
|
+
currentColor
|
|
207
|
+
);
|
|
208
|
+
--app-bar-separator-opacity: var(
|
|
209
|
+
--oscd-shell-app-bar-separator-opacity,
|
|
210
|
+
0.38
|
|
158
211
|
);
|
|
159
212
|
|
|
160
213
|
/* Bridge to oscd-ui app bar tokens */
|
|
@@ -169,13 +222,13 @@ export const oscdShellDesignTokens = css `
|
|
|
169
222
|
/* Files menu */
|
|
170
223
|
--file-menu-text-font-family: var(
|
|
171
224
|
--oscd-shell-file-menu-text-font-family,
|
|
172
|
-
var(--
|
|
225
|
+
var(--md-ref-typeface-plain)
|
|
173
226
|
);
|
|
174
|
-
--file-menu-text-size: var(--oscd-shell-file-menu-text-size,
|
|
227
|
+
--file-menu-text-size: var(--oscd-shell-file-menu-text-size, 16px);
|
|
175
228
|
--file-menu-text-weight: var(--oscd-shell-file-menu-text-weight, 500);
|
|
176
229
|
--file-menu-text-color: var(
|
|
177
230
|
--oscd-shell-file-menu-text-color,
|
|
178
|
-
var(--
|
|
231
|
+
var(--md-sys-color-on-primary)
|
|
179
232
|
);
|
|
180
233
|
|
|
181
234
|
/* Plugins menu */
|
|
@@ -185,85 +238,96 @@ export const oscdShellDesignTokens = css `
|
|
|
185
238
|
);
|
|
186
239
|
--plugins-menu-button-color: var(
|
|
187
240
|
--oscd-shell-plugins-menu-button-color,
|
|
188
|
-
var(--
|
|
241
|
+
var(--md-sys-color-on-primary)
|
|
189
242
|
);
|
|
190
243
|
--plugins-menu-min-width: var(--oscd-shell-plugins-menu-min-width, 350px);
|
|
191
244
|
--plugins-menu-padding: var(--oscd-shell-plugins-menu-padding, 12px);
|
|
192
245
|
--plugins-menu-container-color: var(
|
|
193
246
|
--oscd-shell-plugins-menu-container-color,
|
|
194
|
-
var(--
|
|
247
|
+
var(--md-sys-color-surface)
|
|
195
248
|
);
|
|
196
249
|
--plugins-menu-item-label-color: var(
|
|
197
250
|
--oscd-shell-plugins-menu-item-label-color,
|
|
198
|
-
var(--
|
|
251
|
+
var(--md-sys-color-on-surface)
|
|
199
252
|
);
|
|
200
253
|
--plugins-menu-item-leading-icon-color: var(
|
|
201
254
|
--oscd-shell-plugins-menu-item-leading-icon-color,
|
|
202
|
-
var(--
|
|
255
|
+
var(--md-sys-color-on-surface)
|
|
203
256
|
);
|
|
204
257
|
--plugins-menu-item-selected-container-color: var(
|
|
205
258
|
--oscd-shell-plugins-menu-item-selected-container-color,
|
|
206
|
-
var(--
|
|
259
|
+
var(--md-sys-color-secondary-container)
|
|
207
260
|
);
|
|
208
261
|
--plugins-menu-item-selected-label-color: var(
|
|
209
262
|
--oscd-shell-plugins-menu-item-selected-label-color,
|
|
210
|
-
var(--
|
|
263
|
+
var(--md-sys-color-on-surface)
|
|
211
264
|
);
|
|
212
265
|
|
|
213
266
|
/* Editor plugins panel */
|
|
214
267
|
--editor-plugins-panel-width: var(
|
|
215
268
|
--oscd-shell-editor-plugins-panel-width,
|
|
216
|
-
|
|
269
|
+
308px
|
|
217
270
|
);
|
|
218
271
|
--editor-plugins-panel-collapsed-width: var(
|
|
219
|
-
--oscd-shell-editor-plugins-panel-width,
|
|
220
|
-
|
|
272
|
+
--oscd-shell-editor-plugins-panel-collapsed-width,
|
|
273
|
+
76px
|
|
221
274
|
);
|
|
222
275
|
--editor-plugins-panel-padding-top: var(
|
|
223
276
|
--oscd-shell-editor-plugins-panel-padding-top,
|
|
224
277
|
20px
|
|
225
278
|
);
|
|
226
|
-
--editor-plugins-panel-item-leading-space: var(
|
|
227
|
-
--oscd-shell-editor-plugins-panel-item-leading-space,
|
|
228
|
-
22px
|
|
229
|
-
);
|
|
230
|
-
--editor-plugins-panel-item-trailing-space: var(
|
|
231
|
-
--oscd-shell-editor-plugins-panel-item-trailing-space,
|
|
232
|
-
10px
|
|
233
|
-
);
|
|
234
279
|
--editor-plugins-panel-item-icon-size: var(
|
|
235
280
|
--oscd-shell-editor-plugins-panel-item-icon-size,
|
|
236
281
|
28px
|
|
237
282
|
);
|
|
283
|
+
--editor-plugins-panel-background-color: var(
|
|
284
|
+
--oscd-shell-editor-plugins-panel-background-color,
|
|
285
|
+
var(--md-sys-color-surface)
|
|
286
|
+
);
|
|
238
287
|
--editor-plugins-panel-item-text-color: var(
|
|
239
288
|
--oscd-shell-editor-plugins-panel-item-text-color,
|
|
240
|
-
var(--
|
|
289
|
+
var(--md-sys-color-on-surface)
|
|
241
290
|
);
|
|
242
291
|
--editor-plugins-panel-item-icon-color: var(
|
|
243
292
|
--oscd-shell-editor-plugins-panel-item-icon-color,
|
|
244
|
-
var(--
|
|
293
|
+
var(--md-sys-color-on-surface)
|
|
245
294
|
);
|
|
246
295
|
--editor-plugins-panel-item-active-bg: var(
|
|
247
296
|
--oscd-shell-editor-plugins-panel-item-active-bg,
|
|
248
|
-
var(--
|
|
297
|
+
var(--md-sys-color-primary)
|
|
298
|
+
);
|
|
299
|
+
--editor-plugins-panel-item-active-color: var(
|
|
300
|
+
--oscd-shell-editor-plugins-panel-item-active-color,
|
|
301
|
+
var(--md-sys-color-on-primary)
|
|
302
|
+
);
|
|
303
|
+
--editor-plugins-panel-divider-color: var(
|
|
304
|
+
--oscd-shell-editor-plugins-panel-divider-color,
|
|
305
|
+
#d0d5dc40
|
|
306
|
+
);
|
|
307
|
+
--editor-plugins-panel-flyout-header-text-color: var(
|
|
308
|
+
--oscd-shell-editor-plugins-panel-flyout-header-text-color,
|
|
309
|
+
var(--md-sys-color-secondary)
|
|
249
310
|
);
|
|
250
|
-
--side-panel-width: var(--editor-plugins-panel-width);
|
|
251
311
|
|
|
252
312
|
/* Main editor container */
|
|
253
313
|
--editor-background-color: var(
|
|
254
314
|
--oscd-shell-editor-background-color,
|
|
255
|
-
var(--
|
|
315
|
+
var(--md-sys-color-surface)
|
|
256
316
|
);
|
|
257
317
|
--editor-padding: var(--oscd-shell-editor-padding, 8px);
|
|
258
318
|
|
|
259
319
|
/* Landing page */
|
|
320
|
+
--landing-background-color: var(
|
|
321
|
+
--oscd-shell-landing-background-color,
|
|
322
|
+
var(--md-sys-color-surface)
|
|
323
|
+
);
|
|
260
324
|
--landing-heading-color: var(
|
|
261
325
|
--oscd-shell-landing-heading-color,
|
|
262
|
-
var(--
|
|
326
|
+
var(--md-sys-color-on-surface)
|
|
263
327
|
);
|
|
264
328
|
--landing-heading-font-family: var(
|
|
265
329
|
--oscd-shell-landing-heading-font-family,
|
|
266
|
-
var(--
|
|
330
|
+
var(--md-ref-typeface-plain)
|
|
267
331
|
);
|
|
268
332
|
--landing-heading-size: var(--oscd-shell-landing-heading-size, 50px);
|
|
269
333
|
--landing-heading-style: var(--oscd-shell-landing-heading-style, normal);
|
|
@@ -275,11 +339,11 @@ export const oscdShellDesignTokens = css `
|
|
|
275
339
|
|
|
276
340
|
--landing-subheading-color: var(
|
|
277
341
|
--oscd-shell-landing-subheading-color,
|
|
278
|
-
var(--
|
|
342
|
+
var(--md-sys-color-on-surface)
|
|
279
343
|
);
|
|
280
344
|
--landing-subheading-font-family: var(
|
|
281
345
|
--oscd-shell-landing-subheading-font-family,
|
|
282
|
-
var(--
|
|
346
|
+
var(--md-ref-typeface-plain)
|
|
283
347
|
);
|
|
284
348
|
--landing-subheading-size: var(
|
|
285
349
|
--oscd-shell-landing-subheading-size,
|
|
@@ -303,17 +367,17 @@ export const oscdShellDesignTokens = css `
|
|
|
303
367
|
--landing-card-height: var(--oscd-shell-landing-card-height, 180px);
|
|
304
368
|
--landing-card-background: var(
|
|
305
369
|
--oscd-shell-landing-card-background,
|
|
306
|
-
var(--
|
|
370
|
+
var(--md-sys-color-secondary)
|
|
307
371
|
);
|
|
308
372
|
--landing-card-text-color: var(
|
|
309
373
|
--oscd-shell-landing-card-text-color,
|
|
310
|
-
var(--
|
|
374
|
+
var(--md-sys-color-on-secondary)
|
|
311
375
|
);
|
|
312
376
|
--landing-card-radius: var(--oscd-shell-landing-card-radius, 2px);
|
|
313
377
|
--landing-card-icon-size: var(--oscd-shell-landing-card-icon-size, 54px);
|
|
314
378
|
--landing-card-corner-accent: var(
|
|
315
379
|
--oscd-shell-landing-card-corner-accent,
|
|
316
|
-
|
|
380
|
+
transparent
|
|
317
381
|
);
|
|
318
382
|
}
|
|
319
383
|
`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oscd-shell-design-tokens.js","sourceRoot":"","sources":["../src/oscd-shell-design-tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmTvC,CAAC","sourcesContent":["import { css } from 'lit';\n\n/**\n * Single source of truth for oscd-shell design tokens.\n *\n * This block contains:\n * 1) Internal base tokens and fallbacks\n * 2) Public token -> internal token mappings\n *\n * Keep this as an all-or-nothing layer so mappings can safely reference\n * internal base tokens (e.g. --oscd-base*).\n */\nexport const oscdShellDesignTokens = css`\n /* Internal base theme tokens and defaults */\n * {\n --oscd-primary: var(--oscd-theme-primary, #0b335b);\n --oscd-secondary: var(--oscd-theme-secondary, #2485e5);\n --oscd-base03: var(--oscd-theme-base03, #121417);\n --oscd-base02: var(--oscd-theme-base02, #1a1e23);\n --oscd-base01: var(--oscd-theme-base01, #3d4651);\n --oscd-base00: var(--oscd-theme-base00, #46505d);\n --oscd-base0: var(--oscd-theme-base0, #8b97a7);\n --oscd-base1: var(--oscd-theme-base1, #96a1b0);\n --oscd-base2: var(--oscd-theme-base2, #f3f5f6);\n --oscd-base3: var(--oscd-theme-base3, white);\n --oscd-error: var(--oscd-theme-error, #dc322f);\n --oscd-warning: var(--oscd-theme-warning, #b58900);\n --oscd-text-font: var(--oscd-theme-text-font, 'Roboto');\n --oscd-text-font-mono: var(--oscd-theme-text-font-mono, 'Roboto Mono');\n --oscd-icon-font: var(--oscd-theme-icon-font, 'Material Symbols Outlined');\n\n /* Fallbacks for Material Design variables */\n --md-sys-color-primary: var(--oscd-primary);\n --md-sys-color-on-primary: var(--oscd-base3);\n --md-sys-color-secondary: var(--oscd-secondary);\n --md-sys-color-on-secondary: var(--oscd-base3);\n --md-sys-color-secondary-container: var(--oscd-base2);\n --md-sys-color-surface: var(--oscd-base3);\n --md-sys-color-on-surface: var(--oscd-base00);\n --md-sys-color-surface-variant: var(--oscd-base3);\n --md-sys-color-on-surface-variant: var(--oscd-base00);\n --md-sys-color-surface-bright: var(--oscd-base2);\n --md-sys-color-surface-container: var(--oscd-base3);\n --md-sys-color-surface-container-high: var(--oscd-base3);\n --md-sys-color-surface-container-highest: var(--oscd-base3);\n --md-sys-color-outline-variant: var(--oscd-primary);\n --md-sys-color-scrim: #000000;\n --md-sys-color-error: var(--oscd-error);\n --md-sys-color-on-error: var(--oscd-base3);\n --md-icon-button-disabled-icon-color: var(--oscd-base3);\n /* --md-menu-item-selected-label-text-color: var(--oscd-base01); */\n --md-icon-button-disabled-icon-color: var(--oscd-base3);\n\n /* MDC Theme Colors\n * Needed for supporting any pluggins still using the depricated MWC Components\n */\n --mdc-theme-primary: var(--oscd-primary);\n --mdc-theme-secondary: var(--oscd-secondary);\n --mdc-theme-background: var(--oscd-base3);\n --mdc-theme-surface: var(--oscd-base3);\n --mdc-theme-on-primary: var(--oscd-base2);\n --mdc-theme-on-secondary: var(--oscd-base2);\n --mdc-theme-on-background: var(--oscd-base00);\n --mdc-theme-on-surface: var(--oscd-base00);\n --mdc-theme-text-primary-on-background: var(--oscd-base01);\n --mdc-theme-text-secondary-on-background: var(--oscd-base00);\n --mdc-theme-text-icon-on-background: var(--oscd-base00);\n --mdc-theme-error: var(--oscd-error);\n --mdc-button-disabled-ink-color: var(--oscd-base1);\n --mdc-drawer-heading-ink-color: var(--oscd-base00);\n --mdc-dialog-heading-ink-color: var(--oscd-base00);\n --mdc-text-field-fill-color: var(--oscd-base2);\n --mdc-text-field-disabled-fill-color: var(--oscd-base3);\n --mdc-text-field-ink-color: var(--oscd-base00);\n --mdc-text-field-label-ink-color: var(--oscd-base00);\n --mdc-text-field-idle-line-color: var(--oscd-base00);\n --mdc-text-field-hover-line-color: var(--oscd-base02);\n --mdc-select-fill-color: var(--oscd-base2);\n --mdc-select-disabled-fill-color: var(--oscd-base3);\n --mdc-select-ink-color: var(--oscd-base00);\n --mdc-select-label-ink-color: var(--oscd-base00);\n --mdc-select-idle-line-color: var(--oscd-base00);\n --mdc-select-hover-line-color: var(--oscd-base02);\n --mdc-select-dropdown-icon-color: var(--oscd-base01);\n --mdc-typography-font-family: var(--oscd-text-font);\n --mdc-icon-font: var(--oscd-icon-font);\n --mdc-theme-text-disabled-on-light: rgba(255, 255, 255, 0.38);\n }\n\n * {\n --app-bar-height: 54px;\n --side-panel-width: 280px;\n\n --md-sys-color-primary: var(--oscd-primary);\n --md-sys-color-on-primary: var(--oscd-base3);\n\n --md-sys-color-secondary-container: var(--oscd-base2);\n\n --md-sys-color-surface: var(--oscd-base3);\n --md-sys-color-on-surface: var(--oscd-base00);\n }\n\n /*\n * Public token -> internal token mappings\n *\n * Example pattern:\n * --internal-variable-name: var(--oscd-shell-public-token, <default>);\n */\n * {\n /* App bar */\n --app-bar-color: var(--oscd-shell-app-bar-color, var(--oscd-base3));\n --app-bar-background-color: var(\n --oscd-shell-app-bar-background-color,\n var(--oscd-primary)\n );\n --app-bar-height: var(--oscd-shell-app-bar-height, 54px);\n --app-bar-small-height: var(--oscd-shell-app-bar-small-height, 48px);\n --app-bar-elevation: var(\n --oscd-shell-app-bar-elevation,\n var(--md-sys-elevation-level-2)\n );\n --app-bar-app-icon-height: var(--oscd-shell-app-bar-icon-height, 34.4px);\n --app-bar-app-icon-width: var(--oscd-shell-app-bar-icon-width, auto);\n --app-bar-title-text-font-family: var(\n --oscd-shell-app-bar-title-font-family,\n var(--oscd-text-font)\n );\n --app-bar-title-text-color: var(\n --oscd-shell-app-bar-title-color,\n var(--app-bar-color)\n );\n --app-bar-title-text-font-size: var(\n --oscd-shell-app-bar-title-font-size,\n 22.114px\n );\n --app-bar-title-text-font-weight: var(\n --oscd-shell-app-bar-title-font-weight,\n 400\n );\n --app-bar-title-text-font-style: var(\n --oscd-shell-app-bar-title-font-style,\n normal\n );\n --app-bar-title-text-line-height: var(\n --oscd-shell-app-bar-title-line-height,\n normal\n );\n --app-bar-title-text-letter-spacing: var(\n --oscd-shell-app-bar-title-letter-spacing,\n inherit\n );\n --app-bar-action-icon-size: var(\n --oscd-shell-app-bar-action-icon-size,\n 24px\n );\n --app-bar-action-icon-color: var(\n --oscd-shell-app-bar-action-icon-color,\n var(--oscd-base3)\n );\n\n /* Bridge to oscd-ui app bar tokens */\n --oscd-app-bar-color: var(--app-bar-color);\n --oscd-app-bar-background-color: var(--app-bar-background-color);\n --oscd-app-bar-elevation: var(--app-bar-elevation);\n --oscd-app-bar-title-font-family: var(--app-bar-title-text-font-family);\n --oscd-app-bar-title-font-size: var(--app-bar-title-text-font-size);\n --oscd-app-bar-title-font-weight: var(--app-bar-title-text-font-weight);\n --oscd-app-bar-title-line-height: var(--app-bar-title-text-line-height);\n\n /* Files menu */\n --file-menu-text-font-family: var(\n --oscd-shell-file-menu-text-font-family,\n var(--oscd-text-font)\n );\n --file-menu-text-size: var(--oscd-shell-file-menu-text-size, 18px);\n --file-menu-text-weight: var(--oscd-shell-file-menu-text-weight, 500);\n --file-menu-text-color: var(\n --oscd-shell-file-menu-text-color,\n var(--oscd-base3)\n );\n\n /* Plugins menu */\n --plugins-menu-button-size: var(\n --oscd-shell-plugins-menu-button-size,\n 24px\n );\n --plugins-menu-button-color: var(\n --oscd-shell-plugins-menu-button-color,\n var(--oscd-base3)\n );\n --plugins-menu-min-width: var(--oscd-shell-plugins-menu-min-width, 350px);\n --plugins-menu-padding: var(--oscd-shell-plugins-menu-padding, 12px);\n --plugins-menu-container-color: var(\n --oscd-shell-plugins-menu-container-color,\n var(--oscd-base3)\n );\n --plugins-menu-item-label-color: var(\n --oscd-shell-plugins-menu-item-label-color,\n var(--oscd-base00)\n );\n --plugins-menu-item-leading-icon-color: var(\n --oscd-shell-plugins-menu-item-leading-icon-color,\n var(--oscd-base00)\n );\n --plugins-menu-item-selected-container-color: var(\n --oscd-shell-plugins-menu-item-selected-container-color,\n var(--oscd-base2)\n );\n --plugins-menu-item-selected-label-color: var(\n --oscd-shell-plugins-menu-item-selected-label-color,\n var(--oscd-base00)\n );\n\n /* Editor plugins panel */\n --editor-plugins-panel-width: var(\n --oscd-shell-editor-plugins-panel-width,\n 280px\n );\n --editor-plugins-panel-collapsed-width: var(\n --oscd-shell-editor-plugins-panel-width,\n 280px\n );\n --editor-plugins-panel-padding-top: var(\n --oscd-shell-editor-plugins-panel-padding-top,\n 20px\n );\n --editor-plugins-panel-item-leading-space: var(\n --oscd-shell-editor-plugins-panel-item-leading-space,\n 22px\n );\n --editor-plugins-panel-item-trailing-space: var(\n --oscd-shell-editor-plugins-panel-item-trailing-space,\n 10px\n );\n --editor-plugins-panel-item-icon-size: var(\n --oscd-shell-editor-plugins-panel-item-icon-size,\n 28px\n );\n --editor-plugins-panel-item-text-color: var(\n --oscd-shell-editor-plugins-panel-item-text-color,\n var(--oscd-base3)\n );\n --editor-plugins-panel-item-icon-color: var(\n --oscd-shell-editor-plugins-panel-item-icon-color,\n var(--oscd-base3)\n );\n --editor-plugins-panel-item-active-bg: var(\n --oscd-shell-editor-plugins-panel-item-active-bg,\n var(--oscd-primary)\n );\n --side-panel-width: var(--editor-plugins-panel-width);\n\n /* Main editor container */\n --editor-background-color: var(\n --oscd-shell-editor-background-color,\n var(--oscd-base3)\n );\n --editor-padding: var(--oscd-shell-editor-padding, 8px);\n\n /* Landing page */\n --landing-heading-color: var(\n --oscd-shell-landing-heading-color,\n var(--oscd-base3)\n );\n --landing-heading-font-family: var(\n --oscd-shell-landing-heading-font-family,\n var(--oscd-text-font)\n );\n --landing-heading-size: var(--oscd-shell-landing-heading-size, 50px);\n --landing-heading-style: var(--oscd-shell-landing-heading-style, normal);\n --landing-heading-weight: var(--oscd-shell-landing-heading-weight, 600);\n --landing-heading-line-height: var(\n --oscd-shell-landing-heading-line-height,\n normal\n );\n\n --landing-subheading-color: var(\n --oscd-shell-landing-subheading-color,\n var(--oscd-base3)\n );\n --landing-subheading-font-family: var(\n --oscd-shell-landing-subheading-font-family,\n var(--oscd-text-font)\n );\n --landing-subheading-size: var(\n --oscd-shell-landing-subheading-size,\n 16.909px\n );\n --landing-subheading-style: var(\n --oscd-shell-landing-subheading-style,\n normal\n );\n --landing-subheading-weight: var(\n --oscd-shell-landing-subheading-weight,\n 400\n );\n --landing-subheading-line-height: var(\n --oscd-shell-landing-subheading-line-height,\n 65.194px\n );\n --landing-grid-width: var(--oscd-shell-landing-grid-width, 60%);\n --landing-grid-gap: var(--oscd-shell-landing-grid-gap, 95px);\n --landing-card-width: var(--oscd-shell-landing-card-width, 240px);\n --landing-card-height: var(--oscd-shell-landing-card-height, 180px);\n --landing-card-background: var(\n --oscd-shell-landing-card-background,\n var(--oscd-primary)\n );\n --landing-card-text-color: var(\n --oscd-shell-landing-card-text-color,\n var(--oscd-base3)\n );\n --landing-card-radius: var(--oscd-shell-landing-card-radius, 2px);\n --landing-card-icon-size: var(--oscd-shell-landing-card-icon-size, 54px);\n --landing-card-corner-accent: var(\n --oscd-shell-landing-card-corner-accent,\n var(--omicron-yellow)\n );\n }\n`;\n"]}
|
|
1
|
+
{"version":3,"file":"oscd-shell-design-tokens.js","sourceRoot":"","sources":["../src/oscd-shell-design-tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmXvC,CAAC","sourcesContent":["import { css } from 'lit';\n\n/**\n * Single source of truth for oscd-shell design tokens.\n *\n * This block contains:\n * 1) Internal base tokens and fallbacks\n * 2) Public token -> internal token mappings\n *\n * Keep this as an all-or-nothing layer so mappings can safely reference\n * internal base tokens (e.g. --oscd-base*).\n */\nexport const oscdShellDesignTokens = css`\n /* Internal base theme tokens and defaults.\n *\n * Defaults are the Solarized (https://ethanschoonover.com/solarized/)\n * light palette used by the legacy OpenSCD shell, so oscd-shell is\n * brand-neutral out of the box: consumers who set none of the\n * --oscd-theme-* variables get the classic OpenSCD look. Distro-specific\n * branding (e.g. Omicron colors) is applied entirely by overriding the\n * --oscd-theme-* variables from outside; nothing brand-specific belongs\n * in this file.\n */\n :host {\n --oscd-primary: var(--oscd-theme-primary, #2aa198);\n --oscd-secondary: var(--oscd-theme-secondary, #6c71c4);\n --oscd-base03: var(--oscd-theme-base03, #002b36);\n --oscd-base02: var(--oscd-theme-base02, #073642);\n --oscd-base01: var(--oscd-theme-base01, #586e75);\n --oscd-base00: var(--oscd-theme-base00, #657b83);\n --oscd-base0: var(--oscd-theme-base0, #839496);\n --oscd-base1: var(--oscd-theme-base1, #93a1a1);\n --oscd-base2: var(--oscd-theme-base2, #eee8d5);\n --oscd-base3: var(--oscd-theme-base3, #fdf6e3);\n --oscd-error: var(--oscd-theme-error, #dc322f);\n --oscd-warning: var(--oscd-theme-warning, #b58900);\n --oscd-text-font: var(--oscd-theme-text-font, 'Roboto');\n --oscd-text-font-mono: var(--oscd-theme-text-font-mono, 'Roboto Mono');\n --oscd-icon-font: var(--oscd-theme-icon-font, 'Material Symbols Outlined');\n\n /* Fallbacks for Material Design variables */\n --md-sys-color-primary: var(--oscd-primary);\n --md-sys-color-on-primary: var(--oscd-base3);\n --md-sys-color-secondary: var(--oscd-secondary);\n --md-sys-color-on-secondary: var(--oscd-base3);\n --md-sys-color-secondary-container: var(--oscd-base2);\n --md-sys-color-surface: var(--oscd-base3);\n --md-sys-color-on-surface: var(--oscd-base00);\n --md-sys-color-surface-variant: var(--oscd-base3);\n --md-sys-color-on-surface-variant: var(--oscd-base00);\n --md-sys-color-surface-bright: var(--oscd-base2);\n --md-sys-color-surface-container: var(--oscd-base3);\n --md-sys-color-surface-container-high: var(--oscd-base3);\n --md-sys-color-surface-container-highest: var(--oscd-base3);\n --md-sys-color-outline-variant: var(--oscd-primary);\n --md-sys-color-scrim: #000000;\n --md-sys-color-error: var(--oscd-error);\n --md-sys-color-on-error: var(--oscd-base3);\n --md-icon-button-disabled-icon-color: var(--oscd-base3);\n\n /* MD3 has no single generic \"system font\" token (unlike color); its\n * closest reference-tier equivalent is --md-ref-typeface-plain. Icon\n * fonts (--oscd-icon-font) and monospace fonts (--oscd-text-font-mono)\n * have no MD3 system-token equivalent at all, so they are referenced\n * directly where needed instead of through an --md-* mapping.\n */\n --md-ref-typeface-plain: var(--oscd-text-font);\n\n /* MDC Theme Colors\n * Needed for supporting any pluggins still using the depricated MWC Components\n */\n --mdc-theme-primary: var(--oscd-primary);\n --mdc-theme-secondary: var(--oscd-secondary);\n --mdc-theme-background: var(--oscd-base3);\n --mdc-theme-surface: var(--oscd-base3);\n --mdc-theme-on-primary: var(--oscd-base2);\n --mdc-theme-on-secondary: var(--oscd-base2);\n --mdc-theme-on-background: var(--oscd-base00);\n --mdc-theme-on-surface: var(--oscd-base00);\n --mdc-theme-text-primary-on-background: var(--oscd-base01);\n --mdc-theme-text-secondary-on-background: var(--oscd-base00);\n --mdc-theme-text-icon-on-background: var(--oscd-base00);\n --mdc-theme-error: var(--oscd-error);\n --mdc-button-disabled-ink-color: var(--oscd-base1);\n --mdc-drawer-heading-ink-color: var(--oscd-base00);\n --mdc-dialog-heading-ink-color: var(--oscd-base00);\n --mdc-text-field-fill-color: var(--oscd-base2);\n --mdc-text-field-disabled-fill-color: var(--oscd-base3);\n --mdc-text-field-ink-color: var(--oscd-base00);\n --mdc-text-field-label-ink-color: var(--oscd-base00);\n --mdc-text-field-idle-line-color: var(--oscd-base00);\n --mdc-text-field-hover-line-color: var(--oscd-base02);\n --mdc-select-fill-color: var(--oscd-base2);\n --mdc-select-disabled-fill-color: var(--oscd-base3);\n --mdc-select-ink-color: var(--oscd-base00);\n --mdc-select-label-ink-color: var(--oscd-base00);\n --mdc-select-idle-line-color: var(--oscd-base00);\n --mdc-select-hover-line-color: var(--oscd-base02);\n --mdc-select-dropdown-icon-color: var(--oscd-base01);\n --mdc-typography-font-family: var(--oscd-text-font);\n --mdc-icon-font: var(--oscd-icon-font);\n --mdc-theme-text-disabled-on-light: rgba(255, 255, 255, 0.38);\n }\n\n /*\n * Public token -> internal token mappings\n *\n * Example pattern:\n * --internal-variable-name: var(--oscd-shell-public-token, <default>);\n */\n :host {\n /* Shell root */\n --shell-background-color: var(\n --oscd-shell-background-color,\n var(--md-sys-color-surface)\n );\n\n /* App bar */\n --app-bar-color: var(\n --oscd-shell-app-bar-color,\n var(--md-sys-color-on-primary)\n );\n --app-bar-background-color: var(\n --oscd-shell-app-bar-background-color,\n var(--md-sys-color-primary)\n );\n --app-bar-height: var(--oscd-shell-app-bar-height, 54px);\n --app-bar-small-height: var(--oscd-shell-app-bar-small-height, 48px);\n --app-bar-elevation: var(\n --oscd-shell-app-bar-elevation,\n var(--md-sys-elevation-level-2)\n );\n --app-bar-app-icon-height: var(--oscd-shell-app-bar-icon-height, 34.4px);\n --app-bar-app-icon-width: var(--oscd-shell-app-bar-icon-width, auto);\n --app-bar-logo-gap: var(--oscd-shell-app-bar-logo-gap, 16px);\n --app-bar-title-menu-gap: var(--oscd-shell-app-bar-title-menu-gap, 4px);\n --app-bar-title-text-font-family: var(\n --oscd-shell-app-bar-title-font-family,\n var(--md-ref-typeface-plain)\n );\n --app-bar-title-text-color: var(\n --oscd-shell-app-bar-title-color,\n var(--app-bar-color)\n );\n --app-bar-title-text-font-size: var(\n --oscd-shell-app-bar-title-font-size,\n 22.114px\n );\n --app-bar-title-text-font-weight: var(\n --oscd-shell-app-bar-title-font-weight,\n 400\n );\n --app-bar-title-text-font-style: var(\n --oscd-shell-app-bar-title-font-style,\n normal\n );\n --app-bar-title-text-line-height: var(\n --oscd-shell-app-bar-title-line-height,\n normal\n );\n --app-bar-title-text-letter-spacing: var(\n --oscd-shell-app-bar-title-letter-spacing,\n inherit\n );\n --app-bar-current-editor-font-family: var(\n --oscd-shell-app-bar-current-editor-font-family,\n var(--md-ref-typeface-plain)\n );\n --app-bar-current-editor-font-size: var(\n --oscd-shell-app-bar-current-editor-font-size,\n 16px\n );\n --app-bar-current-editor-font-weight: var(\n --oscd-shell-app-bar-current-editor-font-weight,\n 500\n );\n --app-bar-current-editor-font-style: var(\n --oscd-shell-app-bar-current-editor-font-style,\n normal\n );\n --app-bar-current-editor-line-height: var(\n --oscd-shell-app-bar-current-editor-line-height,\n normal\n );\n --app-bar-current-editor-color: var(\n --oscd-shell-app-bar-current-editor-color,\n var(--app-bar-color)\n );\n --app-bar-action-icon-size: var(\n --oscd-shell-app-bar-action-icon-size,\n 24px\n );\n --app-bar-action-icon-color: var(\n --oscd-shell-app-bar-action-icon-color,\n var(--md-sys-color-on-primary)\n );\n --app-bar-action-icon-disabled-color: var(\n --oscd-shell-app-bar-action-icon-disabled-color,\n var(--md-sys-color-on-primary)\n );\n --app-bar-action-icon-disabled-container-opacity: var(\n --oscd-shell-app-bar-action-icon-disabled-container-opacity,\n 0\n );\n --app-bar-separator-color: var(\n --oscd-shell-app-bar-separator-color,\n currentColor\n );\n --app-bar-separator-opacity: var(\n --oscd-shell-app-bar-separator-opacity,\n 0.38\n );\n\n /* Bridge to oscd-ui app bar tokens */\n --oscd-app-bar-color: var(--app-bar-color);\n --oscd-app-bar-background-color: var(--app-bar-background-color);\n --oscd-app-bar-elevation: var(--app-bar-elevation);\n --oscd-app-bar-title-font-family: var(--app-bar-title-text-font-family);\n --oscd-app-bar-title-font-size: var(--app-bar-title-text-font-size);\n --oscd-app-bar-title-font-weight: var(--app-bar-title-text-font-weight);\n --oscd-app-bar-title-line-height: var(--app-bar-title-text-line-height);\n\n /* Files menu */\n --file-menu-text-font-family: var(\n --oscd-shell-file-menu-text-font-family,\n var(--md-ref-typeface-plain)\n );\n --file-menu-text-size: var(--oscd-shell-file-menu-text-size, 16px);\n --file-menu-text-weight: var(--oscd-shell-file-menu-text-weight, 500);\n --file-menu-text-color: var(\n --oscd-shell-file-menu-text-color,\n var(--md-sys-color-on-primary)\n );\n\n /* Plugins menu */\n --plugins-menu-button-size: var(\n --oscd-shell-plugins-menu-button-size,\n 24px\n );\n --plugins-menu-button-color: var(\n --oscd-shell-plugins-menu-button-color,\n var(--md-sys-color-on-primary)\n );\n --plugins-menu-min-width: var(--oscd-shell-plugins-menu-min-width, 350px);\n --plugins-menu-padding: var(--oscd-shell-plugins-menu-padding, 12px);\n --plugins-menu-container-color: var(\n --oscd-shell-plugins-menu-container-color,\n var(--md-sys-color-surface)\n );\n --plugins-menu-item-label-color: var(\n --oscd-shell-plugins-menu-item-label-color,\n var(--md-sys-color-on-surface)\n );\n --plugins-menu-item-leading-icon-color: var(\n --oscd-shell-plugins-menu-item-leading-icon-color,\n var(--md-sys-color-on-surface)\n );\n --plugins-menu-item-selected-container-color: var(\n --oscd-shell-plugins-menu-item-selected-container-color,\n var(--md-sys-color-secondary-container)\n );\n --plugins-menu-item-selected-label-color: var(\n --oscd-shell-plugins-menu-item-selected-label-color,\n var(--md-sys-color-on-surface)\n );\n\n /* Editor plugins panel */\n --editor-plugins-panel-width: var(\n --oscd-shell-editor-plugins-panel-width,\n 308px\n );\n --editor-plugins-panel-collapsed-width: var(\n --oscd-shell-editor-plugins-panel-collapsed-width,\n 76px\n );\n --editor-plugins-panel-padding-top: var(\n --oscd-shell-editor-plugins-panel-padding-top,\n 20px\n );\n --editor-plugins-panel-item-icon-size: var(\n --oscd-shell-editor-plugins-panel-item-icon-size,\n 28px\n );\n --editor-plugins-panel-background-color: var(\n --oscd-shell-editor-plugins-panel-background-color,\n var(--md-sys-color-surface)\n );\n --editor-plugins-panel-item-text-color: var(\n --oscd-shell-editor-plugins-panel-item-text-color,\n var(--md-sys-color-on-surface)\n );\n --editor-plugins-panel-item-icon-color: var(\n --oscd-shell-editor-plugins-panel-item-icon-color,\n var(--md-sys-color-on-surface)\n );\n --editor-plugins-panel-item-active-bg: var(\n --oscd-shell-editor-plugins-panel-item-active-bg,\n var(--md-sys-color-primary)\n );\n --editor-plugins-panel-item-active-color: var(\n --oscd-shell-editor-plugins-panel-item-active-color,\n var(--md-sys-color-on-primary)\n );\n --editor-plugins-panel-divider-color: var(\n --oscd-shell-editor-plugins-panel-divider-color,\n #d0d5dc40\n );\n --editor-plugins-panel-flyout-header-text-color: var(\n --oscd-shell-editor-plugins-panel-flyout-header-text-color,\n var(--md-sys-color-secondary)\n );\n\n /* Main editor container */\n --editor-background-color: var(\n --oscd-shell-editor-background-color,\n var(--md-sys-color-surface)\n );\n --editor-padding: var(--oscd-shell-editor-padding, 8px);\n\n /* Landing page */\n --landing-background-color: var(\n --oscd-shell-landing-background-color,\n var(--md-sys-color-surface)\n );\n --landing-heading-color: var(\n --oscd-shell-landing-heading-color,\n var(--md-sys-color-on-surface)\n );\n --landing-heading-font-family: var(\n --oscd-shell-landing-heading-font-family,\n var(--md-ref-typeface-plain)\n );\n --landing-heading-size: var(--oscd-shell-landing-heading-size, 50px);\n --landing-heading-style: var(--oscd-shell-landing-heading-style, normal);\n --landing-heading-weight: var(--oscd-shell-landing-heading-weight, 600);\n --landing-heading-line-height: var(\n --oscd-shell-landing-heading-line-height,\n normal\n );\n\n --landing-subheading-color: var(\n --oscd-shell-landing-subheading-color,\n var(--md-sys-color-on-surface)\n );\n --landing-subheading-font-family: var(\n --oscd-shell-landing-subheading-font-family,\n var(--md-ref-typeface-plain)\n );\n --landing-subheading-size: var(\n --oscd-shell-landing-subheading-size,\n 16.909px\n );\n --landing-subheading-style: var(\n --oscd-shell-landing-subheading-style,\n normal\n );\n --landing-subheading-weight: var(\n --oscd-shell-landing-subheading-weight,\n 400\n );\n --landing-subheading-line-height: var(\n --oscd-shell-landing-subheading-line-height,\n 65.194px\n );\n --landing-grid-width: var(--oscd-shell-landing-grid-width, 60%);\n --landing-grid-gap: var(--oscd-shell-landing-grid-gap, 95px);\n --landing-card-width: var(--oscd-shell-landing-card-width, 240px);\n --landing-card-height: var(--oscd-shell-landing-card-height, 180px);\n --landing-card-background: var(\n --oscd-shell-landing-card-background,\n var(--md-sys-color-secondary)\n );\n --landing-card-text-color: var(\n --oscd-shell-landing-card-text-color,\n var(--md-sys-color-on-secondary)\n );\n --landing-card-radius: var(--oscd-shell-landing-card-radius, 2px);\n --landing-card-icon-size: var(--oscd-shell-landing-card-icon-size, 54px);\n --landing-card-corner-accent: var(\n --oscd-shell-landing-card-corner-accent,\n transparent\n );\n }\n`;\n"]}
|
package/dist/oscd-shell.d.ts
CHANGED
|
@@ -1,39 +1,49 @@
|
|
|
1
1
|
import { LitElement } from 'lit';
|
|
2
2
|
import { OscdFilledIconButton } from '@omicronenergy/oscd-ui/iconbutton/OscdFilledIconButton.js';
|
|
3
|
-
import { XMLEditor } from '@
|
|
3
|
+
import { XMLEditor } from '@openscd/oscd-editor';
|
|
4
4
|
import { EditEventV2, OpenEvent } from '@openscd/oscd-api';
|
|
5
|
-
import { LocaleTag
|
|
5
|
+
import { LocaleTag } from './localization.js';
|
|
6
6
|
import { EditorPluginsPanel } from './side-panel/editor-plugins-panel.js';
|
|
7
7
|
import { PluginsMenu } from './menus/plugins-menu.js';
|
|
8
8
|
import { LandingPage } from './landing-page/landing-page.js';
|
|
9
9
|
import { RenameEvent, CloseEvent } from './foundation/events.js';
|
|
10
10
|
import { FilesMenu } from './menus/files-menu.js';
|
|
11
11
|
import { OscdAppBar } from '@omicronenergy/oscd-ui/app-bar/OscdAppBar.js';
|
|
12
|
+
import { OscdDivider } from '@omicronenergy/oscd-ui/divider/OscdDivider.js';
|
|
12
13
|
import { OscdIcon } from '@omicronenergy/oscd-ui/icon/OscdIcon.js';
|
|
13
|
-
export
|
|
14
|
+
export interface PluginBase {
|
|
14
15
|
name: string;
|
|
15
|
-
translations?:
|
|
16
|
-
tagName: string;
|
|
16
|
+
translations?: Record<string, string>;
|
|
17
17
|
icon: string;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
export type SourcedPluginEntry = {
|
|
21
|
-
name: string;
|
|
22
|
-
translations?: Translations;
|
|
18
|
+
}
|
|
19
|
+
export interface SourcedPluginEntry extends PluginBase {
|
|
23
20
|
src: string;
|
|
24
|
-
icon: string;
|
|
25
21
|
requireDoc?: boolean;
|
|
26
|
-
}
|
|
27
|
-
export
|
|
28
|
-
|
|
29
|
-
|
|
22
|
+
}
|
|
23
|
+
export interface PluginEntry extends PluginBase {
|
|
24
|
+
tagName: string;
|
|
25
|
+
requireDoc?: boolean;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* The unvalidated plugin shape accepted at the `plugins` setter boundary.
|
|
29
|
+
* Fields are optional and either `tagName` or `src` may be present; the
|
|
30
|
+
* concrete kind is resolved and validated later by `loadSourcedPlugins`.
|
|
31
|
+
*/
|
|
32
|
+
export type InputPluginEntry = Partial<PluginEntry & SourcedPluginEntry>;
|
|
33
|
+
export interface PluginGroup<P extends Partial<PluginBase> = PluginEntry> extends PluginBase {
|
|
34
|
+
plugins: P[];
|
|
35
|
+
}
|
|
36
|
+
export interface PluginSet<P extends Partial<PluginBase> = PluginEntry> {
|
|
37
|
+
menu: (P | PluginGroup<P>)[];
|
|
38
|
+
editor: (P | PluginGroup<P>)[];
|
|
30
39
|
background: P[];
|
|
31
|
-
}
|
|
40
|
+
}
|
|
32
41
|
declare const OscdShell_base: typeof LitElement & import("@open-wc/scoped-elements/lit-element.js").ScopedElementsHostConstructor;
|
|
33
42
|
export declare class OscdShell extends OscdShell_base {
|
|
34
43
|
static scopedElements: {
|
|
35
44
|
'oscd-app-bar': typeof OscdAppBar;
|
|
36
45
|
'oscd-filled-icon-button': typeof OscdFilledIconButton;
|
|
46
|
+
'oscd-divider': typeof OscdDivider;
|
|
37
47
|
'oscd-icon': typeof OscdIcon;
|
|
38
48
|
'files-menu': typeof FilesMenu;
|
|
39
49
|
'plugins-menu': typeof PluginsMenu;
|
|
@@ -53,11 +63,10 @@ export declare class OscdShell extends OscdShell_base {
|
|
|
53
63
|
set locale(tag: LocaleTag);
|
|
54
64
|
_plugins: PluginSet;
|
|
55
65
|
get plugins(): PluginSet;
|
|
56
|
-
set plugins(plugins: Partial<PluginSet<
|
|
66
|
+
set plugins(plugins: Partial<PluginSet<InputPluginEntry>>);
|
|
57
67
|
get canRedo(): boolean;
|
|
58
68
|
get canUndo(): boolean;
|
|
59
|
-
|
|
60
|
-
private editorIndex;
|
|
69
|
+
selectedEditor?: PluginEntry;
|
|
61
70
|
get doc(): XMLDocument;
|
|
62
71
|
/** The name of the [[`doc`]] currently being edited */
|
|
63
72
|
docName: string;
|
|
@@ -73,6 +82,7 @@ export declare class OscdShell extends OscdShell_base {
|
|
|
73
82
|
editorPluginsPanel: EditorPluginsPanel;
|
|
74
83
|
private _landingPageNodes?;
|
|
75
84
|
constructor();
|
|
85
|
+
willUpdate(changedProperties: Map<PropertyKey, unknown>): void;
|
|
76
86
|
connectedCallback(): void;
|
|
77
87
|
disconnectedCallback(): void;
|
|
78
88
|
handleOpenDoc: ({ detail: { docName, doc } }: OpenEvent) => void;
|
|
@@ -83,15 +93,14 @@ export declare class OscdShell extends OscdShell_base {
|
|
|
83
93
|
handleRedo: () => void;
|
|
84
94
|
private handleKeyPress;
|
|
85
95
|
handleOpenPluginMenu: () => void;
|
|
96
|
+
handlePluginMenuSelect(customEvent: CustomEvent): void;
|
|
86
97
|
/** Undo the last `n` [[Edit]]s committed */
|
|
87
98
|
undo: (n?: number) => void;
|
|
88
99
|
/** Redo the last `n` [[Edit]]s that have been undone */
|
|
89
100
|
redo: (n?: number) => void;
|
|
90
101
|
private hotkeys;
|
|
91
102
|
isEditable(docName: string): boolean;
|
|
92
|
-
|
|
93
|
-
renderPlugin(tagName: string): import("lit-html").TemplateResult;
|
|
94
|
-
onMenuPluginSelect(customEvent: CustomEvent): void;
|
|
103
|
+
renderPlugin(plugin: PluginEntry): import("lit-html").TemplateResult;
|
|
95
104
|
renderOffScreenPlugins(): import("lit-html").TemplateResult<1>;
|
|
96
105
|
renderDefaultLandingPage(): import("lit-html").TemplateResult<1>;
|
|
97
106
|
render(): import("lit-html").TemplateResult<1>;
|