@flyos/design-system 2.7.0 → 3.0.0
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/fesm2022/flyos-design-system.mjs +200 -22
- package/fesm2022/flyos-design-system.mjs.map +1 -1
- package/package.json +1 -1
- package/scss/_nova-tokens.scss +39 -33
- package/scss/_shell-embed-bridge.scss +23 -6
- package/scss/_theme-dark.scss +35 -51
- package/scss/_theme-light.scss +57 -51
- package/types/flyos-design-system.d.ts +107 -1
- package/types/flyos-design-system.d.ts.map +1 -1
package/package.json
CHANGED
package/scss/_nova-tokens.scss
CHANGED
|
@@ -247,21 +247,15 @@ html.light-theme {
|
|
|
247
247
|
--mat-menu-solid-a: rgb(238 242 247);
|
|
248
248
|
--mat-menu-solid-b: rgb(222 229 238);
|
|
249
249
|
|
|
250
|
-
// The agent aside — the
|
|
251
|
-
//
|
|
252
|
-
//
|
|
253
|
-
//
|
|
254
|
-
//
|
|
255
|
-
//
|
|
256
|
-
//
|
|
257
|
-
//
|
|
258
|
-
|
|
259
|
-
// one — sub-AA, and measured as such by `theme-contrast.spec`. The window plate
|
|
260
|
-
// solves this with the adaptive `--fly-glass-alpha` knob; this pair is not in that
|
|
261
|
-
// set, so it takes the static equivalent instead. 0.60 is not arbitrary: it leaves
|
|
262
|
-
// 40% transmission, the same as the window plate's ratified floor, so the aside
|
|
263
|
-
// and the window beside it now let the wallpaper through by the same amount.
|
|
264
|
-
--mat-agent-a-alpha: 0.6;
|
|
250
|
+
// The agent aside — the design's translucent vertical ramp, verbatim (fidelity
|
|
251
|
+
// ruling, 2026-08-17): `Home.dc.html` draws `--mat-agent-a/-b` at 52% → 65% of the
|
|
252
|
+
// theme hue, and the desktop must look as the design does, full stop. The top stop
|
|
253
|
+
// spent a day at 0.60 (the S6.-1 fan-in bump: at 0.52 body ink measured 4.06:1
|
|
254
|
+
// over the darkest wallpaper) — that legibility debt now rides the same rails as
|
|
255
|
+
// the pinned `--mat-*` chrome plates: a measured `exempt` row in
|
|
256
|
+
// `theme-contrast.ts` SURFACES on the adverse pairing, not a value the design
|
|
257
|
+
// never drew. Do not re-thicken these; the sanctioned exit is DS-side ink work.
|
|
258
|
+
--mat-agent-a-alpha: 0.52;
|
|
265
259
|
--mat-agent-a: rgb(230 236 243 / calc(var(--mat-agent-a-alpha) * 100%));
|
|
266
260
|
--mat-agent-b-alpha: 0.65;
|
|
267
261
|
--mat-agent-b: rgb(230 236 243 / calc(var(--mat-agent-b-alpha) * 100%));
|
|
@@ -297,9 +291,22 @@ html.light-theme {
|
|
|
297
291
|
// Selector matches `_theme-dark.scss`.
|
|
298
292
|
html.dark-theme {
|
|
299
293
|
// ── Chrome + nav rail ──────────────────────────────────────────────────────
|
|
300
|
-
|
|
294
|
+
// 90%, not the design mock's 65% (RULED 2026-08-17). The `--mat-*` plates are
|
|
295
|
+
// PINNED at the mock's static alphas under the fidelity ruling — the adaptive
|
|
296
|
+
// thickening that briefly compensated for a weak ink was itself the "bar and rail
|
|
297
|
+
// are darker than Home" defect — so the ink is the ONLY legibility lever this
|
|
298
|
+
// chrome has left. At the pinned `--mat-rail-alpha: .38`, 65% ink measures 4.45:1
|
|
299
|
+
// over a mid-luminance wallpaper (sub-AA) where 90% measures 6.81:1, and it
|
|
300
|
+
// roughly halves the depth of the bright-room exemption cells that remain
|
|
301
|
+
// (`theme-contrast.ts` SURFACES carries them, measured). Weakening this back
|
|
302
|
+
// toward the mock's 65% re-fails the mid rooms — `theme-contrast.spec.ts` pins
|
|
303
|
+
// exactly that recomputation.
|
|
304
|
+
// —
|
|
305
|
+
// Hover affordance is unaffected: both the rail item and the header buttons carry
|
|
306
|
+
// hover on the BACKGROUND (`--w05` / `--tint-hover`), not on this ink delta.
|
|
307
|
+
--chrome-ink: rgb(255 255 255 / 90%);
|
|
301
308
|
--chrome-ink-hover: #fff;
|
|
302
|
-
--rail-ink: rgb(255 255 255 /
|
|
309
|
+
--rail-ink: rgb(255 255 255 / 90%);
|
|
303
310
|
--rail-stroke: rgb(255 255 255 / 12%);
|
|
304
311
|
|
|
305
312
|
// Selection family — accent-derived (the 2026-08-17 two-purples ruling, the
|
|
@@ -414,22 +421,21 @@ html.dark-theme {
|
|
|
414
421
|
--mat-menu-solid-a: rgb(32 31 37);
|
|
415
422
|
--mat-menu-solid-b: rgb(26 25 30);
|
|
416
423
|
|
|
417
|
-
//
|
|
418
|
-
//
|
|
419
|
-
//
|
|
420
|
-
//
|
|
421
|
-
//
|
|
422
|
-
//
|
|
423
|
-
//
|
|
424
|
-
//
|
|
425
|
-
//
|
|
426
|
-
//
|
|
427
|
-
//
|
|
428
|
-
|
|
429
|
-
--mat-agent-a-alpha
|
|
430
|
-
--mat-agent-
|
|
431
|
-
--mat-agent-b-alpha
|
|
432
|
-
--mat-agent-b: rgb(26 25 30 / calc(var(--mat-agent-b-alpha) * 100%));
|
|
424
|
+
// The design's aside, verbatim (fidelity ruling, 2026-08-17): ONE hue — the panel's
|
|
425
|
+
// rgb(56 54 60) — at 52% → 65%, exactly as `Home.dc.html` draws it. This pair has
|
|
426
|
+
// been alpha-1 on the menu hues (S6W: "muddy brown over warm wallpapers"), then
|
|
427
|
+
// translucent on the menu hues at 0.6/0.68 — and both retunes were measured through
|
|
428
|
+
// layers that no longer exist: the 35% wallpaper scrim their AA numbers assumed was
|
|
429
|
+
// removed by the raw-wallpaper ruling, and the mud S6W saw was the UNBLURRED
|
|
430
|
+
// wallpaper showing through (dark used to neutralise the aside's backdrop-filter;
|
|
431
|
+
// the fidelity pass restored the design's blur(16) saturate(180) brightness(.95),
|
|
432
|
+
// which is what actually averages a warm backdrop to neutral). Sub-AA cells at
|
|
433
|
+
// these values are measured `exempt` rows in `theme-contrast.ts` SURFACES, same
|
|
434
|
+
// rails as the pinned `--mat-*` chrome — do not re-thicken or re-cool these stops.
|
|
435
|
+
--mat-agent-a-alpha: 0.52;
|
|
436
|
+
--mat-agent-a: rgb(56 54 60 / calc(var(--mat-agent-a-alpha) * 100%));
|
|
437
|
+
--mat-agent-b-alpha: 0.65;
|
|
438
|
+
--mat-agent-b: rgb(56 54 60 / calc(var(--mat-agent-b-alpha) * 100%));
|
|
433
439
|
--mat-tip-a-alpha: 0.82;
|
|
434
440
|
--mat-tip-a: rgb(46 44 52 / calc(var(--mat-tip-a-alpha) * 100%));
|
|
435
441
|
--mat-tip-b-alpha: 0.86;
|
|
@@ -32,15 +32,32 @@
|
|
|
32
32
|
@mixin app-surface-on-glass {
|
|
33
33
|
// Surfaces: the window chrome supplies the material, so the app's own page
|
|
34
34
|
// background is nothing at all; cards/tracks are lifts ON that plate.
|
|
35
|
-
--bg: transparent;
|
|
36
|
-
--bg-2: var(--surface-card);
|
|
37
|
-
--bg-3: var(--fill-tertiary);
|
|
38
|
-
--bg-hover: var(--surface-active);
|
|
39
35
|
|
|
40
|
-
//
|
|
36
|
+
// LIFTS COME FROM THE NOVA RAMP, NOT FROM `--surface-card`. The design canon
|
|
37
|
+
// for content regions inside a window (MainContent.dc.html — the signals
|
|
38
|
+
// listing) is a `--w03` plate with `--w06` header bars, `--w05` row hover and
|
|
39
|
+
// `--w07` hairlines: a barely-there ink wash the window glass glows through.
|
|
40
|
+
// `--surface-card` is a different design element — the CHROME card (home
|
|
41
|
+
// widgets), which in dark is a 55% smoke (`rgb(28 28 32 / .55)`). Stacked on
|
|
42
|
+
// an already-dark window plate that composites to a near-opaque black slab —
|
|
43
|
+
// measured live on PPM's `fly-data-table`, and exactly the mismatch a
|
|
44
|
+
// side-by-side with the design shows. The ramp flips polarity per theme
|
|
45
|
+
// (white-lift on dark glass, ink-wash on light), which is also what the
|
|
46
|
+
// design's own components do — they never branch on theme.
|
|
47
|
+
--bg: transparent;
|
|
48
|
+
--bg-2: var(--w03);
|
|
49
|
+
--bg-3: var(--w06);
|
|
50
|
+
--bg-hover: var(--w05);
|
|
51
|
+
|
|
52
|
+
// Hairlines. `--line`/`--line-2` stay on the chrome separators (14% ≈ the
|
|
53
|
+
// design's `--w14` CONTROL border — FormField.dc.html inputs), which is the
|
|
54
|
+
// role `--line` now serves: containers and header underlines draw their own
|
|
55
|
+
// canon ramp step (`--w08`/`--w1`) directly in the components, the same way
|
|
56
|
+
// detail-card/detail-shell already did. Row dividers drop to the design's
|
|
57
|
+
// hairline step so they read as hairlines on a `--w03` plate.
|
|
41
58
|
--line: var(--separator);
|
|
42
59
|
--line-2: var(--surface-border);
|
|
43
|
-
--line-3: var(--
|
|
60
|
+
--line-3: var(--w07);
|
|
44
61
|
|
|
45
62
|
// Ink — opaque label tokens, never a surface token. Aliasing a translucent
|
|
46
63
|
// surface onto an ink slot is what turns a control into an empty coloured
|
package/scss/_theme-dark.scss
CHANGED
|
@@ -138,59 +138,50 @@ html.dark-theme {
|
|
|
138
138
|
--card-padding: 20px;
|
|
139
139
|
--card-gap: 14px;
|
|
140
140
|
|
|
141
|
-
// ──
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
--launcher-card-radius: 16px;
|
|
146
|
-
--launcher-card-icon-bg: rgb(255 255 255 / 8%);
|
|
147
|
-
--launcher-card-icon-border: rgb(255 255 255 / 14%);
|
|
148
|
-
--launcher-card-icon-blur: 4px;
|
|
149
|
-
--launcher-card-title: rgb(255 255 255 / 92%);
|
|
150
|
-
--launcher-card-desc: rgb(255 255 255 / 58%);
|
|
141
|
+
// ── `--launcher-card-*` — DELETED (2026-08-18) ─────────────────────────────
|
|
142
|
+
// The nine-token "dark glass variant" of a launcher tile that paints
|
|
143
|
+
// `--surface-card` inside `--window-bg` and takes its ink from the label
|
|
144
|
+
// family. No consumers in either theme; see `_theme-light.scss`.
|
|
151
145
|
|
|
152
146
|
// ── Window chrome ───────────────────────────────────────────────────────────
|
|
153
|
-
//
|
|
154
|
-
//
|
|
155
|
-
//
|
|
156
|
-
//
|
|
157
|
-
//
|
|
158
|
-
// the
|
|
159
|
-
//
|
|
160
|
-
//
|
|
161
|
-
|
|
147
|
+
// ONE GLASS FAMILY (RULED 2026-08-17, second window ruling of the day): the
|
|
148
|
+
// window wears the CHROME material — the magic bar / nav rail recipe — not the
|
|
149
|
+
// mock's content-panel plate. The first fidelity pass shipped `panelStyle`
|
|
150
|
+
// verbatim (quartet glow + sheen over `--mat-panel` .55, blur 72), and it WAS
|
|
151
|
+
// byte-exact — a pixel-accurate render over `tropical.jpg` reproduced the shell
|
|
152
|
+
// to the digit — but the .55 plate over the darker wallpaper midfield read as a
|
|
153
|
+
// separate, muddier glass beside the .38 chrome, and the owner ruled the shell
|
|
154
|
+
// shows one family: flat `--mat-rail` fill, `--w16` hairline, the `--w2`
|
|
155
|
+
// half-pixel inset, `blur(36px) saturate(180%)`. The drop pair stays the
|
|
156
|
+
// design's window shadow (16/40 + 4/10) — a floating window still needs a
|
|
157
|
+
// window's elevation, and the shadow does not touch the plate colour.
|
|
158
|
+
// The AA ladder re-measures on the thinner plate; sub-AA cells ride the exempt
|
|
159
|
+
// rails in `theme-contrast.ts` as measured rows, same as every other pin.
|
|
160
|
+
--window-bg: var(--mat-rail);
|
|
162
161
|
--window-radius: 24px;
|
|
163
|
-
--window-blur:
|
|
164
|
-
--window-backdrop-saturate:
|
|
165
|
-
--window-shadow: 0
|
|
166
|
-
--window-border: var(--
|
|
167
|
-
--window-specular: inset 0
|
|
168
|
-
inset 0 -1px 0 rgb(255 255 255 / 6%);
|
|
162
|
+
--window-blur: 36px;
|
|
163
|
+
--window-backdrop-saturate: 180%;
|
|
164
|
+
--window-shadow: 0 16px 40px rgb(0 0 0 / 20%), 0 4px 10px rgb(0 0 0 / 10%);
|
|
165
|
+
--window-border: var(--w16);
|
|
166
|
+
--window-specular: inset 0 0.5px 0 var(--w2);
|
|
169
167
|
--window-content-scrim: transparent;
|
|
170
168
|
|
|
171
169
|
// ── Titlebar ────────────────────────────────────────────────────────────────
|
|
172
|
-
|
|
170
|
+
// The design's in-window header row (`MainContent.dc.html`): a `--w06` strip
|
|
171
|
+
// over a `--w1` bottom hairline (the hairline is authored in
|
|
172
|
+
// `_window-titlebar.scss` — it is structure, not a theme value).
|
|
173
|
+
--titlebar-bg: var(--w06);
|
|
173
174
|
--titlebar-height: 44px;
|
|
174
175
|
--titlebar-padding: 0 14px;
|
|
175
176
|
|
|
176
|
-
// ──
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
//
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
--menubar-text: var(--label-primary);
|
|
185
|
-
--menubar-blur: 40px;
|
|
186
|
-
--menubar-radius: 24px;
|
|
187
|
-
|
|
188
|
-
// ── Sidebar ─────────────────────────────────────────────────────────────────
|
|
189
|
-
--sidebar-bg: rgb(18 18 22 / 72%);
|
|
190
|
-
--sidebar-border: var(--material-glass-stroke);
|
|
191
|
-
--sidebar-width: 60px;
|
|
192
|
-
--sidebar-icon-size: 36px;
|
|
193
|
-
--sidebar-radius: 28px;
|
|
177
|
+
// ── `--dock-*` / `--menubar-*` / `--sidebar-*` — DELETED (2026-08-18) ───────
|
|
178
|
+
// Three surfaces this shell does not have, described in fifteen tokens. The
|
|
179
|
+
// mobile dock is `bottom-nav` and it takes `glass.chrome`; there is no menubar
|
|
180
|
+
// and no sidebar. Their last references — `--dock-bg` in ~300 lines of dead
|
|
181
|
+
// CSS in `desktop-icons.component.scss`, `--dock-blur`/`--dock-border` in
|
|
182
|
+
// `tasks-panel` — went in the same sweep. See `_theme-light.scss` for why they
|
|
183
|
+
// were deleted rather than left: 40px/50px blurs and 60–80% fills advertised
|
|
184
|
+
// to whoever goes looking for a shell plate, beside the three ratified tiers.
|
|
194
185
|
--focus-ring: color-mix(in srgb, var(--accent) 60%, transparent);
|
|
195
186
|
|
|
196
187
|
// ── Button selected state — white-tint pill on dark surface ─────────────────
|
|
@@ -214,12 +205,5 @@ html.dark-theme {
|
|
|
214
205
|
--window-bg: #141416;
|
|
215
206
|
--window-blur: 0px;
|
|
216
207
|
--window-backdrop-saturate: 100%;
|
|
217
|
-
--dock-bg: #121214;
|
|
218
|
-
--dock-blur: 0px;
|
|
219
|
-
--menubar-bg: #0e0e10;
|
|
220
|
-
--menubar-blur: 0px;
|
|
221
|
-
--sidebar-bg: #121214;
|
|
222
|
-
--launcher-card-bg: #1c1c1f;
|
|
223
|
-
--launcher-card-blur: 0px;
|
|
224
208
|
}
|
|
225
209
|
}
|
package/scss/_theme-light.scss
CHANGED
|
@@ -78,8 +78,9 @@ html.light-theme {
|
|
|
78
78
|
--surface-section: rgb(255 255 255 / 35%);
|
|
79
79
|
--surface-card: rgb(255 255 255 / 20%);
|
|
80
80
|
|
|
81
|
-
// The substrate plate alpha — ONE knob,
|
|
82
|
-
// `--dock-bg
|
|
81
|
+
// The substrate plate alpha — ONE knob, two consumers (`--window-bg`, `--glass-bg`; the
|
|
82
|
+
// third, `--dock-bg`, went with the dead dock tokens below).
|
|
83
|
+
// 0.6 is the ratified static plate; `WallpaperGlassService` overrides it at
|
|
83
84
|
// runtime with the thinnest alpha in [0.6, 0.7] that keeps the WEAKEST substrate body ink
|
|
84
85
|
// (`--text-color-secondary`, 78%) at AA over the ACTIVE wallpaper. Over bright and mid rooms
|
|
85
86
|
// that is 0.6 itself; over a starfield-dark room it steps to 0.62 (0.6 measures 4.51:1 there —
|
|
@@ -151,55 +152,67 @@ html.light-theme {
|
|
|
151
152
|
--card-padding: 20px;
|
|
152
153
|
--card-gap: 14px;
|
|
153
154
|
|
|
154
|
-
//
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
//
|
|
164
|
-
//
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
//
|
|
169
|
-
//
|
|
170
|
-
//
|
|
171
|
-
//
|
|
172
|
-
//
|
|
155
|
+
// ── `--launcher-card-*` — DELETED (2026-08-18) ─────────────────────────────
|
|
156
|
+
// Nine tokens "matching the Figma frosted glass card spec" for a launcher tile
|
|
157
|
+
// that paints `--surface-card` inside `--window-bg` and reads its ink from the
|
|
158
|
+
// label family. A note here already recorded that `--launcher-card-bg` had no
|
|
159
|
+
// consumers; the truth was that none of the nine did. They carried a 50px blur
|
|
160
|
+
// and a 30–45% fill — a plate recipe nothing painted, next to the three tiers
|
|
161
|
+
// the language actually has.
|
|
162
|
+
|
|
163
|
+
// ── Window chrome ───────────────────────────────────────────────────────────
|
|
164
|
+
// ONE GLASS FAMILY, light half (2026-08-18). Dark's ruling put the window on
|
|
165
|
+
// the CHROME material — the magic bar / nav rail recipe — and this block kept
|
|
166
|
+
// the panel family whole: `.46`-class fill, the 72px panel blur, the `--w18`
|
|
167
|
+
// rim and the `--w22` inset. Only the FILL ever had a reason.
|
|
168
|
+
// —
|
|
169
|
+
// The fill genuinely diverges and stays: the mock's static `--mat-panel` plate
|
|
170
|
+
// (.46 pale slate) measures 2.74:1 for window BODY text over the dark-wallpaper
|
|
171
|
+
// majority — 2.0:1 for tertiary — which is app content unreadable in the light
|
|
172
|
+
// theme's common case, not a label on an adverse pairing. The exemption
|
|
173
|
+
// mechanism is for edges, not for the main reading surface, so the adaptive
|
|
174
|
+
// white `--fly-glass-alpha` composition stays: the thinnest white plate that
|
|
175
|
+
// holds the weakest body ink at AA over the CURRENT wallpaper (0.6 floor, one
|
|
176
|
+
// step more white over a dark room). Over bright rooms — the pairing the mock
|
|
177
|
+
// actually draws — the two plates are near-identical anyway.
|
|
178
|
+
// —
|
|
179
|
+
// The other three carried NO contrast argument. Blur radius, rim step and
|
|
180
|
+
// specular step do not enter a contrast calculation at all — they came along
|
|
181
|
+
// because the panel recipe was copied whole — and while they stayed, a light
|
|
182
|
+
// window read as a different glass from the light rail beside it: the exact
|
|
183
|
+
// complaint the dark ruling answered, still live on the other theme. They now
|
|
184
|
+
// match `glass.chrome`: 36px tier, `--w16` hairline, `--w2` inset.
|
|
185
|
+
// —
|
|
186
|
+
// What is left is one honest divergence (the fill, with a measured floor)
|
|
187
|
+
// instead of four, three of which nobody had decided.
|
|
173
188
|
--window-bg: rgb(255 255 255 / calc(var(--fly-glass-alpha) * 100%));
|
|
174
189
|
--window-radius: 24px;
|
|
175
|
-
--window-blur:
|
|
176
|
-
--window-backdrop-saturate:
|
|
177
|
-
--window-shadow: 0
|
|
178
|
-
--window-border:
|
|
179
|
-
--window-specular: inset 0
|
|
180
|
-
inset 0 -1px 0 rgb(255 255 255 / 16%);
|
|
190
|
+
--window-blur: 36px;
|
|
191
|
+
--window-backdrop-saturate: 180%;
|
|
192
|
+
--window-shadow: 0 16px 40px rgb(0 0 0 / 20%), 0 4px 10px rgb(0 0 0 / 10%);
|
|
193
|
+
--window-border: var(--w16);
|
|
194
|
+
--window-specular: inset 0 0.5px 0 var(--w2);
|
|
181
195
|
--window-content-scrim: transparent;
|
|
182
196
|
--app-content-plate: transparent;
|
|
183
|
-
--titlebar-bg:
|
|
197
|
+
--titlebar-bg: var(--w06);
|
|
184
198
|
--titlebar-height: 44px;
|
|
185
199
|
--titlebar-padding: 0 14px;
|
|
186
200
|
|
|
187
|
-
//
|
|
188
|
-
//
|
|
189
|
-
//
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
--sidebar-radius: 28px;
|
|
201
|
+
// ── `--dock-*` / `--menubar-*` / `--sidebar-*` — DELETED (2026-08-18) ───────
|
|
202
|
+
// Fifteen tokens describing three surfaces this shell does not have. The
|
|
203
|
+
// "dock" and "top Finder bar (`.topbar-glass`)" the comment here named were
|
|
204
|
+
// gone; the menubar and sidebar never shipped at all. The last three
|
|
205
|
+
// references were `--dock-bg` in ~300 lines of dead CSS in
|
|
206
|
+
// `desktop-icons.component.scss`, and `--dock-blur`/`--dock-border` in
|
|
207
|
+
// `tasks-panel`, both fixed in the same sweep. (`--dock-dd-gap` is a
|
|
208
|
+
// different, live token — it is defined locally in `magic-bar-cluster`, not
|
|
209
|
+
// here.)
|
|
210
|
+
// —
|
|
211
|
+
// Deleted rather than left harmless because they were not harmless: they
|
|
212
|
+
// advertised 40px/50px blurs and 60–80% fills to anyone who went looking for a
|
|
213
|
+
// shell plate — a menu of answers the Nova language does not contain, next to
|
|
214
|
+
// the three tiers it does. The same reasoning retired the pre-Nova
|
|
215
|
+
// `glass-panel` mixin family in `src/styles/_mixins.scss`.
|
|
203
216
|
--focus-ring: color-mix(in srgb, var(--accent) 50%, transparent);
|
|
204
217
|
|
|
205
218
|
// Segmented `.fos-btn.selected` / `.active` (Settings theme row, clock, weather, etc.): dark pill on light UI.
|
|
@@ -259,12 +272,5 @@ html.light-theme {
|
|
|
259
272
|
--window-bg: #f7f8fa;
|
|
260
273
|
--window-blur: 0px;
|
|
261
274
|
--window-backdrop-saturate: 100%;
|
|
262
|
-
--dock-bg: #f4f5f7;
|
|
263
|
-
--dock-blur: 0px;
|
|
264
|
-
--menubar-bg: #f7f8fa;
|
|
265
|
-
--menubar-blur: 0px;
|
|
266
|
-
--sidebar-bg: #f4f5f7;
|
|
267
|
-
--launcher-card-bg: #fff;
|
|
268
|
-
--launcher-card-blur: 0px;
|
|
269
275
|
}
|
|
270
276
|
}
|
|
@@ -8052,6 +8052,17 @@ declare class MagicBarRegistry {
|
|
|
8052
8052
|
* hands the bar back to the shell's own default (search only).
|
|
8053
8053
|
*/
|
|
8054
8054
|
setActiveOwner(owner: MagicBarOwnerRef | null): void;
|
|
8055
|
+
/**
|
|
8056
|
+
* Resolve one owner's view from the reactive MIRROR — {@link viewFor}'s
|
|
8057
|
+
* signal-consuming sibling, and the read behind {@link active}. Calling it
|
|
8058
|
+
* inside a `computed()`/`effect()` tracks the mirror, so the caller re-runs
|
|
8059
|
+
* whenever this owner's slot changes — which is what an inline renderer
|
|
8060
|
+
* outside the shell (an External App's standalone chrome, D5 §4 dynamic 6's
|
|
8061
|
+
* mobile bar) needs, since no shell ever nominates an owner there. Applies
|
|
8062
|
+
* the same resolution as {@link active}: exact slot, then the `appId`
|
|
8063
|
+
* fallback, then the ownership assertion.
|
|
8064
|
+
*/
|
|
8065
|
+
resolve(owner: MagicBarOwnerRef): MagicBarView | null;
|
|
8055
8066
|
/**
|
|
8056
8067
|
* Direct, non-reactive read of one owner's contribution — the split-proof
|
|
8057
8068
|
* escape hatch for callers outside an injection/reactive context. Applies the
|
|
@@ -8534,6 +8545,75 @@ declare const FLY_MAGIC_BAR_ICONS: {
|
|
|
8534
8545
|
};
|
|
8535
8546
|
type FlyMagicBarIconName = keyof typeof FLY_MAGIC_BAR_ICONS;
|
|
8536
8547
|
|
|
8548
|
+
/**
|
|
8549
|
+
* `<fly-standalone-magic-actions>` — renders an app's OWN magic-bar contribution
|
|
8550
|
+
* inline, for the one mode that has no shell chrome to render it: an External
|
|
8551
|
+
* App running standalone.
|
|
8552
|
+
*
|
|
8553
|
+
* ## The gap this closes
|
|
8554
|
+
* A view publishes one `MagicBarContribution` (skill: `magic-bar-actions.md`)
|
|
8555
|
+
* and, embedded in the desktop shell, the top-bar pill renders it. Standalone,
|
|
8556
|
+
* nothing did — so every screen also kept a bespoke header-actions row
|
|
8557
|
+
* (`[page-header-actions]` buttons) that duplicated the published actions in
|
|
8558
|
+
* BOTH modes: two Create buttons inside the shell, and a second diverging
|
|
8559
|
+
* toolbar implementation outside it. With this component the contribution is
|
|
8560
|
+
* authored once and rendered by whichever chrome exists: the shell's pill when
|
|
8561
|
+
* embedded, this inline cluster when standalone.
|
|
8562
|
+
*
|
|
8563
|
+
* ## Usage — the `[page-header-actions]` slot is the intended position
|
|
8564
|
+
* ```html
|
|
8565
|
+
* <fly-page-header variant="listing" titleKey="…">
|
|
8566
|
+
* <div page-header-actions>
|
|
8567
|
+
* <fly-standalone-magic-actions appId="ppm" />
|
|
8568
|
+
* </div>
|
|
8569
|
+
* </fly-page-header>
|
|
8570
|
+
* ```
|
|
8571
|
+
* `appId` is the same id the view passes to `MagicBarRegistry.publisher`.
|
|
8572
|
+
* Nothing else to wire: the screen's existing publish `effect` feeds both
|
|
8573
|
+
* renderers.
|
|
8574
|
+
*
|
|
8575
|
+
* ## Embedded, it renders NOTHING — by its own decision, not the consumer's
|
|
8576
|
+
* `FlyRemoteRouter.isEmbedded` is read here precisely so every consumer does
|
|
8577
|
+
* not re-author the `@if (!isEmbedded)` guard (and so none can forget it: the
|
|
8578
|
+
* shell pill already renders the same contribution, and a second copy in the
|
|
8579
|
+
* page header is exactly the duplication this component exists to delete).
|
|
8580
|
+
*
|
|
8581
|
+
* ## What it resolves, and why not `active()`
|
|
8582
|
+
* `MagicBarRegistry.active` is arbitrated by the SHELL (focused window →
|
|
8583
|
+
* `setActiveOwner`), and standalone no shell exists to nominate anyone — it is
|
|
8584
|
+
* permanently `null` there by design. This component instead resolves the
|
|
8585
|
+
* caller-named owner via {@link MagicBarRegistry.resolve}, the reactive
|
|
8586
|
+
* per-owner read, with the same slot fallback the shell applies. No `windowId`
|
|
8587
|
+
* input: standalone there is no window manager, so the publisher's
|
|
8588
|
+
* `WINDOW_DATA` is null and its contribution lands in the `appId`-keyed
|
|
8589
|
+
* fallback slot — which an `{ appId }` owner resolves exactly.
|
|
8590
|
+
*
|
|
8591
|
+
* ## What it deliberately does NOT render
|
|
8592
|
+
* - **`search`** — standalone screens keep their in-page `fly-search-input`
|
|
8593
|
+
* (the shell's expanding search field is shell chrome, not part of
|
|
8594
|
+
* `fly-magic-actions`). A second search box is the exact bug the embedded
|
|
8595
|
+
* mode's `@if` guards exist to avoid; standalone the in-page field is the
|
|
8596
|
+
* only one.
|
|
8597
|
+
* - **`overflow` / `quickCommandIds`** — the kebab is a deliberate deferral
|
|
8598
|
+
* (see `magic-actions.component.ts`), and quick commands resolve against the
|
|
8599
|
+
* shell's `AgentCommandRegistry` + Ask-AI orb, which do not exist standalone.
|
|
8600
|
+
*/
|
|
8601
|
+
declare class FlyStandaloneMagicActionsComponent {
|
|
8602
|
+
private readonly registry;
|
|
8603
|
+
private readonly remoteRouter;
|
|
8604
|
+
/** The publishing app whose contribution to mirror — the `appId` its view passes to `MagicBarRegistry.publisher`. */
|
|
8605
|
+
readonly appId: _angular_core.InputSignal<string>;
|
|
8606
|
+
/**
|
|
8607
|
+
* The view to paint, or `null` for "render nothing": embedded (the shell's
|
|
8608
|
+
* pill owns the contribution there), unpublished, or published with no
|
|
8609
|
+
* painted actions (a bare `viewKey` is "no toolbar", not "an empty toolbar" —
|
|
8610
|
+
* same rule the shell pill applies).
|
|
8611
|
+
*/
|
|
8612
|
+
protected readonly standaloneView: _angular_core.Signal<MagicBarView | null>;
|
|
8613
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FlyStandaloneMagicActionsComponent, never>;
|
|
8614
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FlyStandaloneMagicActionsComponent, "fly-standalone-magic-actions", never, { "appId": { "alias": "appId"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
8615
|
+
}
|
|
8616
|
+
|
|
8537
8617
|
/**
|
|
8538
8618
|
* Single canonical way to declare a drag source for the agent input.
|
|
8539
8619
|
*
|
|
@@ -11968,6 +12048,24 @@ declare class FlyModuleIconDirective {
|
|
|
11968
12048
|
* per module, so adding a module meant editing the component. Here the modules
|
|
11969
12049
|
* are data ({@link FlyAppModule}) and the icons are projected templates.
|
|
11970
12050
|
*
|
|
12051
|
+
* ## Docking into a host chrome's titlebar
|
|
12052
|
+
*
|
|
12053
|
+
* The desktop shell draws its own header strip on every window (app icon, title,
|
|
12054
|
+
* window controls). An app rendering this bar underneath it printed the app name
|
|
12055
|
+
* twice, one line apart — and the design draws exactly ONE such row
|
|
12056
|
+
* (`UX/FlyOS Desktop-app/MainContent.dc.html`: app crumb ▸ module crumb ▸ close).
|
|
12057
|
+
*
|
|
12058
|
+
* So when a host chrome offers a dock ({@link findTitlebarDock}), this component
|
|
12059
|
+
* MOVES ITS OWN HOST ELEMENT into it once, after the first render, and flips to a
|
|
12060
|
+
* flat presentation ({@link docked}) that inherits the strip's plate instead of
|
|
12061
|
+
* painting its own. Relocating the element rather than re-implementing the row in
|
|
12062
|
+
* the shell is what keeps the switcher — its popover, roving focus, projected
|
|
12063
|
+
* icon templates and i18n — in ONE place: Angular binds a view to its component,
|
|
12064
|
+
* not to a position in the DOM, so everything keeps working from the new parent.
|
|
12065
|
+
*
|
|
12066
|
+
* Standalone (no dock anywhere above), nothing happens and the bar renders as the
|
|
12067
|
+
* app's own first row, exactly as before.
|
|
12068
|
+
*
|
|
11971
12069
|
* a11y: the trigger is `aria-haspopup="menu"` + `aria-expanded`; the popover is
|
|
11972
12070
|
* `role="menu"` with `role="menuitem"` rows carrying `aria-current="page"` on
|
|
11973
12071
|
* the active one. Arrow keys rove (RTL-aware, wrapping, skipping disabled),
|
|
@@ -11989,12 +12087,19 @@ declare class FlyAppTopbarComponent {
|
|
|
11989
12087
|
/** The brand was clicked — conventionally "go to this app's home". */
|
|
11990
12088
|
readonly brandSelected: _angular_core.OutputEmitterRef<void>;
|
|
11991
12089
|
private readonly i18n;
|
|
12090
|
+
private readonly host;
|
|
11992
12091
|
private readonly icons;
|
|
11993
12092
|
private readonly rows;
|
|
11994
12093
|
private readonly trigger;
|
|
11995
12094
|
protected readonly open: _angular_core.WritableSignal<boolean>;
|
|
11996
12095
|
protected readonly focusIndex: _angular_core.WritableSignal<number>;
|
|
11997
12096
|
private stackHandle;
|
|
12097
|
+
/**
|
|
12098
|
+
* True once this bar has moved itself into a host chrome's titlebar dock — see
|
|
12099
|
+
* the class doc. Drives `.fly-topbar--docked`, which drops the bar's own plate
|
|
12100
|
+
* and hairline so it reads as part of the strip rather than a row inside it.
|
|
12101
|
+
*/
|
|
12102
|
+
protected readonly docked: _angular_core.WritableSignal<boolean>;
|
|
11998
12103
|
/**
|
|
11999
12104
|
* Set when the menu opens, cleared once focus has actually landed on a row.
|
|
12000
12105
|
*
|
|
@@ -12010,6 +12115,7 @@ declare class FlyAppTopbarComponent {
|
|
|
12010
12115
|
protected readonly switchAriaLabel: _angular_core.Signal<string>;
|
|
12011
12116
|
protected readonly triggerAriaLabel: _angular_core.Signal<string>;
|
|
12012
12117
|
constructor();
|
|
12118
|
+
private dockIntoHostChrome;
|
|
12013
12119
|
protected iconFor(key: string): TemplateRef<unknown> | null;
|
|
12014
12120
|
protected indexOf(mod: FlyAppModule): number;
|
|
12015
12121
|
protected toggle(): void;
|
|
@@ -12834,6 +12940,6 @@ declare const AUDIENCE_ERROR_CODES: {
|
|
|
12834
12940
|
};
|
|
12835
12941
|
type AudienceErrorCode = (typeof AUDIENCE_ERROR_CODES)[keyof typeof AUDIENCE_ERROR_CODES];
|
|
12836
12942
|
|
|
12837
|
-
export { AGENT_DRAG_MIME, AGENT_PAYLOAD_VERSION, APP_LOOKUP, AUDIENCE_ERROR_CODES, AUDIENCE_LIMITS, AUDIENCE_PRESETS, AUDIENCE_TERM_KINDS, AgentActionBus, AgentActionUnsupportedDispatchError, AgentCommandRegistry, AgentDropRegistry, AgentFlightAnimator, AgentLookupRegistry, AgentPayloadOversizeError, AudienceBuilderComponent, AuthService, BilingualFieldComponent, CRON_MODES, CRON_WEEKDAYS, ContextMenuComponent, DEFAULT_AGENT_PAYLOAD_LIMITS, DEFAULT_FLY_THEME_MODE, DS_BASELINE_LOCALES, DashboardKpiComponent, DialogResult, ENTITY_LINK_LAUNCHER, EntityLookupComponent, FLYOS_LAUNCH_EVENT, FLYOS_LAUNCH_REQUEST_EVENT, FLYOS_REMOTE_ROUTE_EVENT, FLY_ACCENT_PROPERTY, FLY_ADMIN_ROLES, FLY_CHUNK_RELOAD_FLAG, FLY_COMPACT_THRESHOLD, FLY_COUNTRIES, FLY_CURRENCIES_BRIEF_ENDPOINT, FLY_EMOJI_BY_ID, FLY_EMOJI_CATEGORIES, FLY_EMOJI_CATEGORY_BY_ID, FLY_EMOJI_DEFAULT_CATEGORIES, FLY_EMOJI_PACK, FLY_EMOJI_PACK_MISSING_MESSAGE, FLY_EMOJI_PREVIEW_COUNT, FLY_EMPTY_VALUE, FLY_LOCALE_CATALOG, FLY_MAGIC_BAR_EVENT, FLY_MAGIC_BAR_ICONS, FLY_MAGIC_BAR_STORE_KEY, FLY_NF_CACHE_HEAL_FLAG, FLY_RELOAD_DEBOUNCE_MS, FLY_RELOAD_REARM_MS, FLY_REMOTE_BASE_PATH, FLY_REMOTE_CONTEXT_EVENT, FLY_REMOTE_CONTEXT_STORE_KEY, FLY_REMOTE_ROUTES, FLY_SCAN_PENDING_DEFAULT_DELAY_MS, FLY_SCAN_PENDING_MAX_RETRIES, FLY_SCAN_PENDING_STATUS, FLY_SEARCH_DEBOUNCE_MS, FLY_SKIN_TONES, FLY_STANDALONE_AUTH_CONFIG, FLY_THEME_MODE_IDS, FLY_VIEWPORT_IS_MOBILE, FLY_WINDOW_HELP_HINT_EVENT, FLY_WINDOW_PAGE_TITLE_EVENT, FlyAchievementProgressComponent, FlyActionMenuComponent, FlyActionStackComponent, FlyAgentDraggableDirective, FlyAnimatedEmojiComponent, FlyAppHomeComponent, FlyAppTopbarComponent, FlyAppUnavailableComponent, FlyAuthLiveRefresh, FlyBadgeWallComponent, FlyBlockUiComponent, FlyBreadcrumbComponent, FlyButtonComponent, FlyBytesPipe, FlyCaptchaComponent, FlyCardActionsComponent, FlyCardBodyComponent, FlyCardComponent, FlyCardFooterComponent, FlyCardGridComponent, FlyCardMediaComponent, FlyCardMetaComponent, FlyCardStatusComponent, FlyCardTitleComponent, FlyCellDirective, FlyCheckboxComponent, FlyChipComponent, FlyChunkReloadErrorHandler, FlyClickOutsideDirective, FlyCollapsibleComponent, FlyCommentThreadComponent, FlyCompactNumberPipe, FlyConfirmDialogComponent, FlyControlDirective, FlyCronBuilderComponent, FlyCurrencyCatalogService, FlyCurrencySelectorComponent, FlyDataTableComponent, FlyDatePipe, FlyDateTimePipe, FlyDebouncer, FlyDecimalNumberPipe, FlyDeepLinkPrefetchService, FlyDetailCardComponent, FlyDetailShellComponent, FlyDrawerComponent, FlyDurationPipe, FlyDynamicFormComponent, FlyEmojiPickerComponent, FlyFieldComponent, FlyFileDownloadService, FlyFileUploadComponent, FlyFilterPanelComponent, FlyFormBannerComponent, FlyFormFooterComponent, FlyFormGridComponent, FlyFormSectionComponent, FlyFullNumberPipe, FlyGanttComponent, FlyHubClient, FlyIconButtonComponent, FlyIfAdminDirective, FlyIfRoleDirective, FlyImageUploadComponent, FlyLeaderboardComponent, FlyMagicActionsComponent, FlyMetaListComponent, FlyModalComponent, FlyModerationQueueComponent, FlyModuleIconDirective, FlyMoneyPipe, FlyPaginationComponent, FlyPeoplePickerComponent, FlyPointsTierComponent, FlyProgressComponent, FlyRelativeTimePipe, FlyRemoteContextService, FlyRemoteRouter, FlyRemoteRouterOutletComponent, FlySearchInputComponent, FlySectionHeaderComponent, FlySecureSrcDirective, FlySegmentedComponent, FlySelectComponent, FlySkeletonComponent, FlySliderComponent, FlySparklineComponent, FlySpinnerComponent, FlyStandaloneAuthCallbackComponent, FlyStandaloneAuthService, FlyStateMessageComponent, FlyDynamicFormComponent as FlySurveyFormComponent, FlyTabComponent, FlyTabsComponent, FlyTagsInputComponent, FlyThemeService, FlyTimePipe, FlyToastService, FlyToggleComponent, FlyTooltipDirective, FlyTreeNavComponent, FlyTypeaheadComponent, FlyUserDirectoryService, FlyWindowHelpService, FlyWindowTitleService, FlyosPendingLaunchesGlobalKey, FlyosShellHandlesLaunchRequestsGlobalKey, FlyosShellOwnsHistoryGlobalKey, GANTT_ZOOMS, I18nService, LAUNCH_CONTEXT, MAGIC_BAR_SEARCH_WIDTH_DEFAULT, MAGIC_BAR_SEARCH_WIDTH_MAX, MAGIC_BAR_SEARCH_WIDTH_MIN, MagicBarRegistry, MessageBoxButtons, MessageBoxComponent, MessageBoxIcon, MessageBoxService, MockAuthService, NOVA_PRIORITY_TONE, NOVA_STATUS_TONE, NOVA_TONE_FALLBACK, OverlayStack, PRESENCE_COLORS, PageHeaderComponent, RTL_LOCALE_SET, SHARE_ORG_CHART_SYSTEM_KEY_APPS, SHARE_ORG_CHART_SYSTEM_KEY_DEFAULT, SHARE_PANEL_DEFAULT_FILE_LEVELS, STATE_DEFAULT_ICONS, STATE_DEFAULT_MESSAGE_KEYS, STEP_UP_CODE, STEP_UP_REAUTH_HANDLER, STEP_UP_RETURN_KEY, SUPPORTED_AGENT_PAYLOAD_VERSIONS, SharePanelComponent, SourceAppResolver, StandaloneWindowManagerService, StatusBadgeComponent, StepUpService, ToastHostComponent, TranslatePipe, WINDOW_DATA, WINDOW_HELP_HINT, WindowManagerService, applySkinTone, applySuggestion, ariaSort, buildCron, canConfirm, canGoNext, canGoPrev, captureFocus, clampMagicBarSearchWidth, clampPage, clampSliderValue, connectRemoteLaunch, enterActivatesNatively, filterGroup, filterSuggestions, findLocaleByDialect, findLocaleByPrefix, firstEnabledIndex, firstModuleIndex, flattenModules, flyAdminGuard, flyApiErrorMessage, flyCaptchaBase64Utf8, flyCaptchaBuildToken, flyCaptchaSha256Hex, flyCompactNumber, flyDebounced, flyDecimalNumber, flyDownloadBlob, flyDuration, flyEmojiFor, flyEmojiIsTonable, flyEmojiPackUrl, flyExportFileName, flyFirstEnabledIndex, flyFormatBytes, flyFormatDate, flyFormatDateTime, flyFormatMoney, flyFormatTime, flyFullNumber, flyNextEnabledIndex, flyNextSegmentIndex, flyRelativeTime, flyResolveActiveTab, flyRoleGuard, flyScanPendingDelayMs, flyScanRetry, flySignedCompact, flySkinToneLabelKey, flyStandaloneAuthGuard, flyStandaloneAuthInterceptor, flyToDateOnly, flyToPage, flyUnwrap, flyUnwrapCurrencies, flyUnwrapLenient, hasAnyRoleIn, healNativeFederationCacheOnce, initialExpanded, isAccentColor, isChunkLoadError, isFlyAuthStorePopulated, isNativeFederationCacheError, isRtlLocale, isRtlLocaleEntry, isValidCron, isValidSingleField, loadRemoteStyles, magicBarOwnerKey, magicBarSearchText, matchFlyRoutePattern, nextEnabledIndex, nextModuleIndex, nextSegmentIndex, nextSort, normalizeFlyTheme, normalizeRoles, novaPriorityToneVar, novaStatusToneVar, overlayStack, parseCron, parseStepUpChallenge, parseTags, prefetchRemoteStyles, presenceColorFor, printConsoleSecurityWarning, provideFlyChunkReloadRecovery, provideFlyEmojiPack, provideFlyStandaloneAuth, reloadOnceForChunkError, requestAppLaunch, resolveActiveModule, resolveActiveSection, resolveActiveTab, resolveCellValue, resolveStateIcon, resolveStateMessageKey, restoreFocus, sameTags, sectionHintKey, sectionLayout, sliderTrackGradient, sparklinePath, sparklinePoints, stepUpInterceptor, stepUpReturnKey, trimAgentPayload, trimAgentString, unloadRemoteStyles, utf8ByteLength, validateAgentPayload, warnIfEmbeddedSessionMissing };
|
|
12943
|
+
export { AGENT_DRAG_MIME, AGENT_PAYLOAD_VERSION, APP_LOOKUP, AUDIENCE_ERROR_CODES, AUDIENCE_LIMITS, AUDIENCE_PRESETS, AUDIENCE_TERM_KINDS, AgentActionBus, AgentActionUnsupportedDispatchError, AgentCommandRegistry, AgentDropRegistry, AgentFlightAnimator, AgentLookupRegistry, AgentPayloadOversizeError, AudienceBuilderComponent, AuthService, BilingualFieldComponent, CRON_MODES, CRON_WEEKDAYS, ContextMenuComponent, DEFAULT_AGENT_PAYLOAD_LIMITS, DEFAULT_FLY_THEME_MODE, DS_BASELINE_LOCALES, DashboardKpiComponent, DialogResult, ENTITY_LINK_LAUNCHER, EntityLookupComponent, FLYOS_LAUNCH_EVENT, FLYOS_LAUNCH_REQUEST_EVENT, FLYOS_REMOTE_ROUTE_EVENT, FLY_ACCENT_PROPERTY, FLY_ADMIN_ROLES, FLY_CHUNK_RELOAD_FLAG, FLY_COMPACT_THRESHOLD, FLY_COUNTRIES, FLY_CURRENCIES_BRIEF_ENDPOINT, FLY_EMOJI_BY_ID, FLY_EMOJI_CATEGORIES, FLY_EMOJI_CATEGORY_BY_ID, FLY_EMOJI_DEFAULT_CATEGORIES, FLY_EMOJI_PACK, FLY_EMOJI_PACK_MISSING_MESSAGE, FLY_EMOJI_PREVIEW_COUNT, FLY_EMPTY_VALUE, FLY_LOCALE_CATALOG, FLY_MAGIC_BAR_EVENT, FLY_MAGIC_BAR_ICONS, FLY_MAGIC_BAR_STORE_KEY, FLY_NF_CACHE_HEAL_FLAG, FLY_RELOAD_DEBOUNCE_MS, FLY_RELOAD_REARM_MS, FLY_REMOTE_BASE_PATH, FLY_REMOTE_CONTEXT_EVENT, FLY_REMOTE_CONTEXT_STORE_KEY, FLY_REMOTE_ROUTES, FLY_SCAN_PENDING_DEFAULT_DELAY_MS, FLY_SCAN_PENDING_MAX_RETRIES, FLY_SCAN_PENDING_STATUS, FLY_SEARCH_DEBOUNCE_MS, FLY_SKIN_TONES, FLY_STANDALONE_AUTH_CONFIG, FLY_THEME_MODE_IDS, FLY_VIEWPORT_IS_MOBILE, FLY_WINDOW_HELP_HINT_EVENT, FLY_WINDOW_PAGE_TITLE_EVENT, FlyAchievementProgressComponent, FlyActionMenuComponent, FlyActionStackComponent, FlyAgentDraggableDirective, FlyAnimatedEmojiComponent, FlyAppHomeComponent, FlyAppTopbarComponent, FlyAppUnavailableComponent, FlyAuthLiveRefresh, FlyBadgeWallComponent, FlyBlockUiComponent, FlyBreadcrumbComponent, FlyButtonComponent, FlyBytesPipe, FlyCaptchaComponent, FlyCardActionsComponent, FlyCardBodyComponent, FlyCardComponent, FlyCardFooterComponent, FlyCardGridComponent, FlyCardMediaComponent, FlyCardMetaComponent, FlyCardStatusComponent, FlyCardTitleComponent, FlyCellDirective, FlyCheckboxComponent, FlyChipComponent, FlyChunkReloadErrorHandler, FlyClickOutsideDirective, FlyCollapsibleComponent, FlyCommentThreadComponent, FlyCompactNumberPipe, FlyConfirmDialogComponent, FlyControlDirective, FlyCronBuilderComponent, FlyCurrencyCatalogService, FlyCurrencySelectorComponent, FlyDataTableComponent, FlyDatePipe, FlyDateTimePipe, FlyDebouncer, FlyDecimalNumberPipe, FlyDeepLinkPrefetchService, FlyDetailCardComponent, FlyDetailShellComponent, FlyDrawerComponent, FlyDurationPipe, FlyDynamicFormComponent, FlyEmojiPickerComponent, FlyFieldComponent, FlyFileDownloadService, FlyFileUploadComponent, FlyFilterPanelComponent, FlyFormBannerComponent, FlyFormFooterComponent, FlyFormGridComponent, FlyFormSectionComponent, FlyFullNumberPipe, FlyGanttComponent, FlyHubClient, FlyIconButtonComponent, FlyIfAdminDirective, FlyIfRoleDirective, FlyImageUploadComponent, FlyLeaderboardComponent, FlyMagicActionsComponent, FlyMetaListComponent, FlyModalComponent, FlyModerationQueueComponent, FlyModuleIconDirective, FlyMoneyPipe, FlyPaginationComponent, FlyPeoplePickerComponent, FlyPointsTierComponent, FlyProgressComponent, FlyRelativeTimePipe, FlyRemoteContextService, FlyRemoteRouter, FlyRemoteRouterOutletComponent, FlySearchInputComponent, FlySectionHeaderComponent, FlySecureSrcDirective, FlySegmentedComponent, FlySelectComponent, FlySkeletonComponent, FlySliderComponent, FlySparklineComponent, FlySpinnerComponent, FlyStandaloneAuthCallbackComponent, FlyStandaloneAuthService, FlyStandaloneMagicActionsComponent, FlyStateMessageComponent, FlyDynamicFormComponent as FlySurveyFormComponent, FlyTabComponent, FlyTabsComponent, FlyTagsInputComponent, FlyThemeService, FlyTimePipe, FlyToastService, FlyToggleComponent, FlyTooltipDirective, FlyTreeNavComponent, FlyTypeaheadComponent, FlyUserDirectoryService, FlyWindowHelpService, FlyWindowTitleService, FlyosPendingLaunchesGlobalKey, FlyosShellHandlesLaunchRequestsGlobalKey, FlyosShellOwnsHistoryGlobalKey, GANTT_ZOOMS, I18nService, LAUNCH_CONTEXT, MAGIC_BAR_SEARCH_WIDTH_DEFAULT, MAGIC_BAR_SEARCH_WIDTH_MAX, MAGIC_BAR_SEARCH_WIDTH_MIN, MagicBarRegistry, MessageBoxButtons, MessageBoxComponent, MessageBoxIcon, MessageBoxService, MockAuthService, NOVA_PRIORITY_TONE, NOVA_STATUS_TONE, NOVA_TONE_FALLBACK, OverlayStack, PRESENCE_COLORS, PageHeaderComponent, RTL_LOCALE_SET, SHARE_ORG_CHART_SYSTEM_KEY_APPS, SHARE_ORG_CHART_SYSTEM_KEY_DEFAULT, SHARE_PANEL_DEFAULT_FILE_LEVELS, STATE_DEFAULT_ICONS, STATE_DEFAULT_MESSAGE_KEYS, STEP_UP_CODE, STEP_UP_REAUTH_HANDLER, STEP_UP_RETURN_KEY, SUPPORTED_AGENT_PAYLOAD_VERSIONS, SharePanelComponent, SourceAppResolver, StandaloneWindowManagerService, StatusBadgeComponent, StepUpService, ToastHostComponent, TranslatePipe, WINDOW_DATA, WINDOW_HELP_HINT, WindowManagerService, applySkinTone, applySuggestion, ariaSort, buildCron, canConfirm, canGoNext, canGoPrev, captureFocus, clampMagicBarSearchWidth, clampPage, clampSliderValue, connectRemoteLaunch, enterActivatesNatively, filterGroup, filterSuggestions, findLocaleByDialect, findLocaleByPrefix, firstEnabledIndex, firstModuleIndex, flattenModules, flyAdminGuard, flyApiErrorMessage, flyCaptchaBase64Utf8, flyCaptchaBuildToken, flyCaptchaSha256Hex, flyCompactNumber, flyDebounced, flyDecimalNumber, flyDownloadBlob, flyDuration, flyEmojiFor, flyEmojiIsTonable, flyEmojiPackUrl, flyExportFileName, flyFirstEnabledIndex, flyFormatBytes, flyFormatDate, flyFormatDateTime, flyFormatMoney, flyFormatTime, flyFullNumber, flyNextEnabledIndex, flyNextSegmentIndex, flyRelativeTime, flyResolveActiveTab, flyRoleGuard, flyScanPendingDelayMs, flyScanRetry, flySignedCompact, flySkinToneLabelKey, flyStandaloneAuthGuard, flyStandaloneAuthInterceptor, flyToDateOnly, flyToPage, flyUnwrap, flyUnwrapCurrencies, flyUnwrapLenient, hasAnyRoleIn, healNativeFederationCacheOnce, initialExpanded, isAccentColor, isChunkLoadError, isFlyAuthStorePopulated, isNativeFederationCacheError, isRtlLocale, isRtlLocaleEntry, isValidCron, isValidSingleField, loadRemoteStyles, magicBarOwnerKey, magicBarSearchText, matchFlyRoutePattern, nextEnabledIndex, nextModuleIndex, nextSegmentIndex, nextSort, normalizeFlyTheme, normalizeRoles, novaPriorityToneVar, novaStatusToneVar, overlayStack, parseCron, parseStepUpChallenge, parseTags, prefetchRemoteStyles, presenceColorFor, printConsoleSecurityWarning, provideFlyChunkReloadRecovery, provideFlyEmojiPack, provideFlyStandaloneAuth, reloadOnceForChunkError, requestAppLaunch, resolveActiveModule, resolveActiveSection, resolveActiveTab, resolveCellValue, resolveStateIcon, resolveStateMessageKey, restoreFocus, sameTags, sectionHintKey, sectionLayout, sliderTrackGradient, sparklinePath, sparklinePoints, stepUpInterceptor, stepUpReturnKey, trimAgentPayload, trimAgentString, unloadRemoteStyles, utf8ByteLength, validateAgentPayload, warnIfEmbeddedSessionMissing };
|
|
12838
12944
|
export type { ActionMenuItem, AgentAction, AgentActionDispatch, AgentActionVerb, AgentChipHostInputs, AgentCommand, AgentCommandContextBinding, AgentCommandHandle, AgentCommandRegistration, AgentCommandScope, AgentCommandSlashSpec, AgentDragPayload, AgentDraggableItem, AgentDropChipMode, AgentDropRendererRegistration, AgentEnvelopeAttachment, AgentMcpScope, AgentMessageEnvelope, AgentPayloadLimits, AgentPayloadValidationResult, AppEveryonePrincipal, AppEveryoneTerm, AppLookup, AppLookupEntry, AudienceEditTarget, AudienceErrorCode, AudienceFilter, AudienceOptions, AudiencePresetKind, AudienceTerm, AudienceTermKind, BreadcrumbItem, ButtonSize, ButtonVariant, CardDensity, CardLayout, ChartTerm, ChildWindowData, ChipTone, ConfirmKind, ConnectRemoteLaunchOptions, ContextMenuAlign, ContextMenuItem, ContextMenuSection, CronAdvancedFieldDef, CronMode, CronParts, CronWeekday, DesktopApp, DesktopAppCategory, DesktopAppKind, DetailSection, DialogResultWithAcknowledgement, EmbeddedSessionProbe, EntityLinkLauncher, EntityLinkSelection, FilterGroup, FlyAchievementRow, FlyApiError, FlyApiResponse, FlyAppHomeLayout, FlyAppModule, FlyAppModuleSection, FlyAppUnavailableState, FlyAuthRefreshPayload, FlyAuthStoreReadable, FlyBadgeTile, FlyBreadcrumbItem, FlyCaptchaChallenge, FlyCaptchaSolution, FlyCaptchaState, FlyCellContext, FlyColumn, FlyColumnKind, FlyComment, FlyCommentDeleteRequest, FlyCommentEditRequest, FlyCommentLoadMoreRequest, FlyCommentLoadRepliesRequest, FlyCommentLockToggleRequest, FlyCommentPage, FlyCommentReportReason, FlyCommentReportRequest, FlyCommentReportStatus, FlyCommentSubmitRequest, FlyCountry, FlyCurrency, FlyCurrencyFetchFn, FlyCurrencySelectorMode, FlyCurrencySelectorValue, FlyDeepLinkPrefetchRoute, FlyDrawerBodyPadding, FlyDrawerPosition, FlyDrawerSide, FlyDrawerSize, FlyDrawerVariant, FlyEmojiCategory, FlyEmojiCell, FlyEmojiEntry, FlyEmojiPack, FlyEmojiPackEntry, FlyEmojiPackManifest, FlyEmojiPickerSize, FlyEmojiPickerTab, FlyEmojiSection, FlyFileInfo, FlyFileSelection, FlyFormAnswer, FlyFormAnswerValue, FlyFormDefinition, FlyFormFieldOptions, FlyFormOption, FlyFormQuestion, FlyFormQuestionType, FlyFormScoreDisplay, FlyFormatMoneyOptions, FlyLaunchEventDetail, FlyLaunchRequestDetail, FlyLeaderboardRow, FlyLiveRefreshOptions, FlyLocaleEntry, FlyMagicBarIconName, FlyMetaItem, FlyModerationLoadPageRequest, FlyModerationLockThreadRequest, FlyModerationOpenSubjectRequest, FlyModerationReport, FlyModerationReportPage, FlyModerationResolutionStatus, FlyModerationResolveRequest, FlyMoneyDisplay, FlyNavigableItem, FlyPageMeta, FlyPageResult, FlyPaged, FlyPeoplePickerMode, FlyPeoplePickerOption, FlyPeopleSearchFn, FlyPointsSummary, FlyRemoteContext, FlyRemoteEagerRoute, FlyRemoteLazyRoute, FlyRemoteLoadedComponent, FlyRemoteMatch, FlyRemoteRoute, FlyRemoteRouteEventDetail, FlySearchExpandTrigger, FlySearchInputSize, FlySecureSrcState, FlySelectOption, FlySelectValue, FlySkeletonAnimation, FlySkeletonLayout, FlySkeletonShape, FlySkinTone, FlySort, FlyStandaloneAuthConfig, FlyFileSelection as FlySurveyFileSelection, FlyFormAnswer as FlySurveyFormAnswer, FlyFormAnswerValue as FlySurveyFormAnswerValue, FlyFormDefinition as FlySurveyFormDefinition, FlyFormFieldOptions as FlySurveyFormFieldOptions, FlyFormOption as FlySurveyFormOption, FlyFormQuestion as FlySurveyFormQuestion, FlyFormQuestionType as FlySurveyQuestionType, FlyThemeMode, FlyTooltipPlacement, FlyTreeNavNode, FlyTypeaheadOption, FlyWindowHelpHintEventDetail, FlyWindowHelpPublisher, FlyWindowPageTitleEventDetail, FlyWindowTitlePublisher, FlyosPendingLaunches, FocusRestore, FormBannerKind, GanttDependency, GanttDependencyCreate, GanttRow, GanttRowDatesChange, GanttRowKind, GanttZoom, IconButtonVariant, LaunchContext, LoadBundleOptions, LoadRemoteStylesOptions, LookupDescriptor, LookupHandle, LookupRegistration, LookupResult, LookupSearch, MagicBarAction, MagicBarActionKind, MagicBarActionSpec, MagicBarActionView, MagicBarContribution, MagicBarGroup, MagicBarGroupSpec, MagicBarGroupView, MagicBarOwnerRef, MagicBarPublisher, MagicBarRadioMenu, MagicBarRadioMenuSpec, MagicBarRadioMenuView, MagicBarRadioOption, MagicBarSearch, MagicBarSearchSeed, MagicBarSearchSpec, MagicBarSearchView, MagicBarTextParams, MagicBarTone, MagicBarView, MessageBoxButton, MessageBoxDontAskAgainConfig, MessageBoxOptions, MessageBoxOptionsWithAcknowledgement, MockAuthConfig, OpenWindowOptions, OuPrincipal, OuTerm, OverlayHandle, PageHeaderVariant, PresetTerm, ProgressTone, RemoteAppDef, RequestAppLaunchOptions, RoleOuLookupRow, RolePrincipal, RolesTerm, SegmentedOption, ShareOrgChartOption, ShareOuNode, SharePanelLevelOption, SharePermissionEntry, SharePrincipal, SharePrincipalKind, ShareUserResult, StateMessageKind, StepUpChallenge, StepUpReauthHandler, StepUpReauthRequest, TabsVariant, ToastAction, ToastEntry, ToastOptions, ToastVariant, User, UserPrincipal, UsersTerm, WindowHelpHint, WindowInstance, WindowState };
|
|
12839
12945
|
//# sourceMappingURL=flyos-design-system.d.ts.map
|