@flyos/design-system 3.3.0 → 3.4.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 +757 -300
- package/fesm2022/flyos-design-system.mjs.map +1 -1
- package/package.json +1 -1
- package/scss/_fly-theme.scss +5 -0
- package/scss/_nova-tokens.scss +22 -0
- package/scss/_nova-type.scss +51 -12
- package/scss/_sf-arabic-font.scss +32 -0
- package/scss/_tokens.scss +56 -20
- package/types/flyos-design-system.d.ts +239 -61
- package/types/flyos-design-system.d.ts.map +1 -1
|
@@ -5082,6 +5082,14 @@ interface FlyBreadcrumbItem {
|
|
|
5082
5082
|
label: string;
|
|
5083
5083
|
/** When set, the crumb renders as a real `<a>`. Omit for a `<button>` (e.g. a client-side handler with no addressable URL). */
|
|
5084
5084
|
href?: string;
|
|
5085
|
+
/**
|
|
5086
|
+
* `<path d="…">` data for a 14px stroked icon leading the crumb
|
|
5087
|
+
* (`fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round;
|
|
5088
|
+
* stroke-linejoin:round`). `currentColor` is what makes the icon tint with
|
|
5089
|
+
* the label on hover/current with no extra rule. Omit for a label-only
|
|
5090
|
+
* crumb — mixing icon and non-icon crumbs in one trail is fine.
|
|
5091
|
+
*/
|
|
5092
|
+
iconPath?: string;
|
|
5085
5093
|
}
|
|
5086
5094
|
/** An overflow-collapsed middle crumb — never interactive, never emitted by {@link FlyBreadcrumbComponent.navigate}. */
|
|
5087
5095
|
interface FlyBreadcrumbOverflowMarker {
|
|
@@ -5148,6 +5156,100 @@ declare class FlyBreadcrumbComponent {
|
|
|
5148
5156
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FlyBreadcrumbComponent, "fly-breadcrumb", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "maxVisible": { "alias": "maxVisible"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "hasCurrentPage": { "alias": "hasCurrentPage"; "required": false; "isSignal": true; }; }, { "navigate": "navigate"; }, never, never, true, never>;
|
|
5149
5157
|
}
|
|
5150
5158
|
|
|
5159
|
+
/**
|
|
5160
|
+
* One crumb in a window's header trail.
|
|
5161
|
+
*
|
|
5162
|
+
* Extends the design-system item rather than restating it so `<fly-breadcrumb>`
|
|
5163
|
+
* consumes the published array directly — the shell adds a handler, nothing else.
|
|
5164
|
+
*
|
|
5165
|
+
* Labels are ALREADY LOCALIZED. The trail is an app's own nouns ("Trends",
|
|
5166
|
+
* "Q3 budget", a document title); the window chrome cannot localize those and must
|
|
5167
|
+
* not pretend to by taking a key it would resolve against the shell's bundle.
|
|
5168
|
+
*/
|
|
5169
|
+
interface WindowBreadcrumb extends FlyBreadcrumbItem {
|
|
5170
|
+
/**
|
|
5171
|
+
* Invoked when this crumb is activated. The final crumb is the current page and
|
|
5172
|
+
* is never interactive (see `FlyBreadcrumbComponent`), so a handler on it is
|
|
5173
|
+
* dead weight, not a bug waiting to happen.
|
|
5174
|
+
*/
|
|
5175
|
+
navigate?: () => void;
|
|
5176
|
+
}
|
|
5177
|
+
/** Cross-bundle store key + sync event — same shape as `FLY_MAGIC_BAR_STORE_KEY`. */
|
|
5178
|
+
declare const FLY_WINDOW_BREADCRUMBS_STORE_KEY = "__flyWindowBreadcrumbs__";
|
|
5179
|
+
declare const FLY_WINDOW_BREADCRUMBS_EVENT = "fly:window-breadcrumbs";
|
|
5180
|
+
/**
|
|
5181
|
+
* Where an app publishes the breadcrumb trail its window's header strip renders.
|
|
5182
|
+
*
|
|
5183
|
+
* The design puts a trail inside the window
|
|
5184
|
+
* (`UX/FlyOS Desktop-app/MainContent.dc.html`, `nav[aria-label="Breadcrumb"]`), and
|
|
5185
|
+
* the window chrome (`WindowComponent`) renders whatever this registry holds for
|
|
5186
|
+
* its window id, falling back to the plain window title when nothing has published.
|
|
5187
|
+
*
|
|
5188
|
+
* ## Why the state lives on `globalThis`
|
|
5189
|
+
*
|
|
5190
|
+
* Same reasoning as {@link MagicBarRegistry} (`services/magic-bar/`), and the same
|
|
5191
|
+
* direction of travel (remote → shell chrome). This service is `providedIn: 'root'`,
|
|
5192
|
+
* but a root instance is not *reliably* shared across the federation boundary: the
|
|
5193
|
+
* shell builds the design system from workspace source while remotes consume the
|
|
5194
|
+
* published package, and Native Federation collapses those into one runtime
|
|
5195
|
+
* instance only when version negotiation succeeds — a split there is invisible at
|
|
5196
|
+
* build time and would otherwise present as a window whose breadcrumb silently
|
|
5197
|
+
* never appears, for federated apps only. Keeping the state on the one substrate
|
|
5198
|
+
* every bundle shares makes this store fork-proof: whichever copy of this service
|
|
5199
|
+
* publishes, every copy's `trail()` agrees. Each instance mirrors the store into a
|
|
5200
|
+
* local signal and re-reads on the sync event, so `WindowComponent`'s template —
|
|
5201
|
+
* which reads `trail()` inside its own reactive context — repaints whichever
|
|
5202
|
+
* bundle actually published.
|
|
5203
|
+
*
|
|
5204
|
+
* Simpler than `MagicBarRegistry` on purpose: a breadcrumb trail is addressed
|
|
5205
|
+
* directly by the window id its publisher already has (via `WINDOW_DATA`), so
|
|
5206
|
+
* there is no owner-vs-active-window arbitration, no per-action indexing and no
|
|
5207
|
+
* publish-fingerprint dedup to carry — `publish()` just replaces the entry.
|
|
5208
|
+
*
|
|
5209
|
+
* ```ts
|
|
5210
|
+
* const win = inject(WINDOW_DATA);
|
|
5211
|
+
* const crumbs = inject(WindowBreadcrumbsRegistry);
|
|
5212
|
+
* crumbs.publish(win.id, [
|
|
5213
|
+
* { id: 'root', label: circleName, navigate: () => this.showList() },
|
|
5214
|
+
* { id: 'trend', label: trend.title },
|
|
5215
|
+
* ]);
|
|
5216
|
+
* ```
|
|
5217
|
+
*/
|
|
5218
|
+
declare class WindowBreadcrumbsRegistry {
|
|
5219
|
+
private readonly _trails;
|
|
5220
|
+
private _syncedStore;
|
|
5221
|
+
private _syncedRevision;
|
|
5222
|
+
/** Every published trail, keyed by window id. Reactive — read it inside a template/computed/effect. */
|
|
5223
|
+
readonly all: Signal<ReadonlyMap<string, readonly WindowBreadcrumb[]>>;
|
|
5224
|
+
constructor();
|
|
5225
|
+
/**
|
|
5226
|
+
* This window's published trail, or an empty array.
|
|
5227
|
+
*
|
|
5228
|
+
* A plain method over a signal read, not a per-id `computed`: it is called from
|
|
5229
|
+
* the window template, where the signal read is tracked whatever the call depth,
|
|
5230
|
+
* and a `computed` cache keyed by a mutable window id would outlive its window.
|
|
5231
|
+
*/
|
|
5232
|
+
trail(windowId: string): readonly WindowBreadcrumb[];
|
|
5233
|
+
/**
|
|
5234
|
+
* Replace a window's trail. Publishing an empty array is how an app goes back to
|
|
5235
|
+
* showing the plain window title — it is a state, not a clear.
|
|
5236
|
+
*/
|
|
5237
|
+
publish(windowId: string, crumbs: readonly WindowBreadcrumb[]): void;
|
|
5238
|
+
/** Drop a window's trail entirely. The window chrome calls this when it is destroyed. */
|
|
5239
|
+
clear(windowId: string): void;
|
|
5240
|
+
/**
|
|
5241
|
+
* Re-read the shared store. Cheap no-op unless a real mutation landed.
|
|
5242
|
+
*
|
|
5243
|
+
* Keys on store IDENTITY as well as revision — see the identical note on
|
|
5244
|
+
* `MagicBarRegistry.sync`: a revision counter alone cannot distinguish "nothing
|
|
5245
|
+
* changed" from "the `globalThis` slot now holds a brand-new store that happens
|
|
5246
|
+
* to be at the same revision" (every spec's `beforeEach` replaces the store).
|
|
5247
|
+
*/
|
|
5248
|
+
private sync;
|
|
5249
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<WindowBreadcrumbsRegistry, never>;
|
|
5250
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<WindowBreadcrumbsRegistry>;
|
|
5251
|
+
}
|
|
5252
|
+
|
|
5151
5253
|
/**
|
|
5152
5254
|
* A node in a {@link import('./tree-nav.component').FlyTreeNavComponent} tree. The
|
|
5153
5255
|
* component is a **two-level** disclosure list (sections with pages) — a `children`
|
|
@@ -6280,8 +6382,9 @@ interface GanttDependencyDelete {
|
|
|
6280
6382
|
* Pure, dependency-free geometry + tree helpers for {@link FlyGanttComponent}.
|
|
6281
6383
|
*
|
|
6282
6384
|
* Kept out of the component so the date-scale math (date ⇄ px), the tree flatten/collapse,
|
|
6283
|
-
* the group-span aggregation, the dependency-link resolution and the RTL
|
|
6284
|
-
* can all be unit-tested in isolation. Nothing here touches Angular,
|
|
6385
|
+
* the group-span aggregation, the dependency-link resolution + elbow routing, and the RTL
|
|
6386
|
+
* coordinate mapping can all be unit-tested in isolation. Nothing here touches Angular,
|
|
6387
|
+
* signals, the DOM, or i18n.
|
|
6285
6388
|
*
|
|
6286
6389
|
* **Time model.** Every date is normalised to **UTC midnight** so the horizontal scale is
|
|
6287
6390
|
* DST- and timezone-agnostic: one calendar day is always exactly one grid unit regardless of
|
|
@@ -6304,6 +6407,10 @@ interface GanttFlatRow {
|
|
|
6304
6407
|
hasChildren: boolean;
|
|
6305
6408
|
collapsed: boolean;
|
|
6306
6409
|
}
|
|
6410
|
+
/** Render shape a row resolves to — decides which geometry fields on its VM are meaningful. */
|
|
6411
|
+
type RowShape = 'bar' | 'milestone' | 'group' | 'empty';
|
|
6412
|
+
/** Which end of a bar a link gesture grabbed / was dropped on. */
|
|
6413
|
+
type GanttLinkAnchor = 'start' | 'finish';
|
|
6307
6414
|
/** A gridline / header cell: logical `x` of its left edge, its pixel `width`, and label. */
|
|
6308
6415
|
interface GanttTick {
|
|
6309
6416
|
x: number;
|
|
@@ -6313,9 +6420,16 @@ interface GanttTick {
|
|
|
6313
6420
|
key: string;
|
|
6314
6421
|
}
|
|
6315
6422
|
|
|
6316
|
-
|
|
6317
|
-
|
|
6318
|
-
|
|
6423
|
+
/** An in-flight link drag, in render space. `x0,y0` is the fixed origin; `x1,y1` follows the pointer. */
|
|
6424
|
+
interface GanttLinkGesture {
|
|
6425
|
+
readonly fromId: string;
|
|
6426
|
+
readonly anchor: GanttLinkAnchor;
|
|
6427
|
+
readonly x0: number;
|
|
6428
|
+
readonly y0: number;
|
|
6429
|
+
readonly x1: number;
|
|
6430
|
+
readonly y1: number;
|
|
6431
|
+
}
|
|
6432
|
+
|
|
6319
6433
|
/** One fully-resolved, render-space row ready for the template. */
|
|
6320
6434
|
interface GanttRowVm {
|
|
6321
6435
|
flat: GanttFlatRow;
|
|
@@ -6420,36 +6534,22 @@ declare class FlyGanttComponent {
|
|
|
6420
6534
|
readonly MIN_LABEL_W = 140;
|
|
6421
6535
|
readonly MAX_LABEL_W = 720;
|
|
6422
6536
|
readonly selectedId: _angular_core.WritableSignal<string | null>;
|
|
6423
|
-
/** Key (`from~to~type`) of the dependency arrow the user has selected, if any. */
|
|
6424
|
-
readonly selectedLinkKey: _angular_core.WritableSignal<string | null>;
|
|
6425
6537
|
private readonly _collapsed;
|
|
6426
6538
|
/** Live drag preview `{id,start,end}` folded into geometry while a gesture runs. */
|
|
6427
6539
|
private readonly _dragPreview;
|
|
6428
|
-
/** Rubber-band link gesture render-space anchor + cursor, and its origin row + edge. */
|
|
6429
|
-
readonly linkGesture: _angular_core.WritableSignal<{
|
|
6430
|
-
fromId: string;
|
|
6431
|
-
anchor: LinkAnchor;
|
|
6432
|
-
x0: number;
|
|
6433
|
-
y0: number;
|
|
6434
|
-
x1: number;
|
|
6435
|
-
y1: number;
|
|
6436
|
-
} | null>;
|
|
6437
6540
|
readonly dragTooltip: _angular_core.WritableSignal<{
|
|
6438
6541
|
x: number;
|
|
6439
6542
|
y: number;
|
|
6440
6543
|
text: string;
|
|
6441
6544
|
} | null>;
|
|
6442
6545
|
/** True while a divider drag is in flight (suppresses text selection host-wide). */
|
|
6443
|
-
readonly resizingLabels: _angular_core.WritableSignal<boolean>;
|
|
6444
6546
|
/** User-chosen pane width; `null` = still following the {@link labelWidth} input. */
|
|
6445
|
-
private readonly _labelWidthOverride;
|
|
6446
6547
|
private readonly bodyRef;
|
|
6447
6548
|
readonly rtl: _angular_core.Signal<boolean>;
|
|
6448
6549
|
readonly pxPerDay: _angular_core.Signal<number>;
|
|
6449
6550
|
readonly domain: _angular_core.Signal<GanttDomain>;
|
|
6450
6551
|
readonly innerWidth: _angular_core.Signal<number>;
|
|
6451
6552
|
/** Label-pane width actually rendered — the user's dragged width, else the input. */
|
|
6452
|
-
readonly effectiveLabelWidth: _angular_core.Signal<number>;
|
|
6453
6553
|
/** Full visible list after tree flatten/collapse. */
|
|
6454
6554
|
private readonly _flat;
|
|
6455
6555
|
/** Capped list actually rendered. */
|
|
@@ -6482,21 +6582,19 @@ declare class FlyGanttComponent {
|
|
|
6482
6582
|
/** Inline-start label indent for a tree depth. */
|
|
6483
6583
|
indentFor(depth: number): number;
|
|
6484
6584
|
/**
|
|
6485
|
-
*
|
|
6486
|
-
*
|
|
6487
|
-
*
|
|
6585
|
+
* The divider's own state machine, in {@link GanttLabelPane}. It is composed rather than
|
|
6586
|
+
* inlined because it is the one region of this component with no coupling to the chart: give it
|
|
6587
|
+
* a direction, a fallback width and somewhere to report a committed value and it is complete.
|
|
6588
|
+
* The subtle part — that "wider" flips physical sign under RTL for BOTH the drag and the arrow
|
|
6589
|
+
* keys — is stated once there instead of twice here.
|
|
6488
6590
|
*/
|
|
6591
|
+
private readonly _labelPane;
|
|
6592
|
+
/** Painted width of the label pane — the user's dragged value, else the clamped input. */
|
|
6593
|
+
readonly effectiveLabelWidth: _angular_core.Signal<number>;
|
|
6594
|
+
/** True mid-drag; drives the host's resizing cursor/affordance. */
|
|
6595
|
+
readonly resizingLabels: _angular_core.WritableSignal<boolean>;
|
|
6489
6596
|
onLabelResizePointerDown(ev: PointerEvent): void;
|
|
6490
|
-
/**
|
|
6491
|
-
* Keyboard resize on the focused divider. ArrowRight/Left grow/shrink by the *inline* meaning
|
|
6492
|
-
* of the key, so under RTL the arrow that points away from the pane is still the one that
|
|
6493
|
-
* widens it. `Home`/`End` jump to the bounds, Enter/Escape restore the input width.
|
|
6494
|
-
*
|
|
6495
|
-
* Typed `Event` for the same reason as {@link onLabelRowKeydown}: Angular's strict template
|
|
6496
|
-
* checker types `(keydown)` `$event` as `Event`, so the cast is done here once.
|
|
6497
|
-
*/
|
|
6498
6597
|
onLabelResizeKeydown(ev: Event): void;
|
|
6499
|
-
/** Drop the user's dragged width and fall back to the {@link labelWidth} input. */
|
|
6500
6598
|
resetLabelWidth(): void;
|
|
6501
6599
|
isCollapsed(id: string): boolean;
|
|
6502
6600
|
toggleCollapse(id: string, ev?: Event): void;
|
|
@@ -6516,13 +6614,19 @@ declare class FlyGanttComponent {
|
|
|
6516
6614
|
private _nudgeSelected;
|
|
6517
6615
|
onBarPointerDown(ev: PointerEvent, vm: GanttRowVm, mode: 'move' | 'resize-start' | 'resize-end'): void;
|
|
6518
6616
|
/**
|
|
6519
|
-
*
|
|
6520
|
-
*
|
|
6521
|
-
*
|
|
6617
|
+
* The dependency-drawing gesture, in {@link GanttLinkGestures}. Composed rather than inlined
|
|
6618
|
+
* because it is a self-contained second gesture whose interesting part is a RULE — the end you
|
|
6619
|
+
* start on plus the end you drop nearest, selects the relationship type — which reads far better beside
|
|
6620
|
+
* its own hit-testing than in the middle of this component.
|
|
6522
6621
|
*/
|
|
6523
|
-
|
|
6622
|
+
private readonly _links;
|
|
6623
|
+
/** Key (`from~to~type`) of the dependency arrow the user has selected, if any. */
|
|
6624
|
+
readonly selectedLinkKey: _angular_core.WritableSignal<string | null>;
|
|
6625
|
+
/** The in-flight rubber-band gesture, or `null` — the template draws it when present. */
|
|
6626
|
+
readonly linkGesture: _angular_core.WritableSignal<GanttLinkGesture | null>;
|
|
6524
6627
|
/** Rubber-band path for an in-flight link gesture (render space). */
|
|
6525
6628
|
readonly linkGesturePath: _angular_core.Signal<string | null>;
|
|
6629
|
+
onLinkPointerDown(ev: PointerEvent, vm: GanttRowVm, anchor: GanttLinkAnchor): void;
|
|
6526
6630
|
/**
|
|
6527
6631
|
* Resolve a row's `backgroundColor` into the low-alpha band colour actually painted.
|
|
6528
6632
|
* `color-mix` does the fade in the consumer's own colour space, so a token, a hex, an
|
|
@@ -6530,28 +6634,6 @@ declare class FlyGanttComponent {
|
|
|
6530
6634
|
*/
|
|
6531
6635
|
private _tintFor;
|
|
6532
6636
|
private _mapTicks;
|
|
6533
|
-
/**
|
|
6534
|
-
* Route a dependency elbow for any of the four relationship kinds (render space).
|
|
6535
|
-
*
|
|
6536
|
-
* The kind names the two endpoints, so it decides both the anchor x's and the direction the
|
|
6537
|
-
* arrow travels: leaving a *finish* edge moves forward in time, leaving a *start* edge moves
|
|
6538
|
-
* backward; entering a *start* edge approaches from behind, entering a *finish* edge from
|
|
6539
|
-
* ahead. `fwd` folds RTL in, so none of that branches on direction.
|
|
6540
|
-
*
|
|
6541
|
-
* One turn suffices when the entry stub lies ahead of the exit stub in the approach
|
|
6542
|
-
* direction. When it does not — overlapping or reversed bars, which SS/FF/SF hit constantly —
|
|
6543
|
-
* a straight drop would cut back through the bars, so the elbow detours via the gap between
|
|
6544
|
-
* the two rows instead.
|
|
6545
|
-
*/
|
|
6546
|
-
private _route;
|
|
6547
|
-
/** Convert a pointer event to a coordinate inside the body SVG (render space). */
|
|
6548
|
-
private _toBodyPoint;
|
|
6549
|
-
/**
|
|
6550
|
-
* The row a link gesture was dropped on **and which of its ends** the drop landed nearest —
|
|
6551
|
-
* the second half of the type derivation. A milestone has no width, so both of its ends are
|
|
6552
|
-
* the same point and it is reported as `start`, giving the FS/SS pair anyone actually wants.
|
|
6553
|
-
*/
|
|
6554
|
-
private _dropTargetAt;
|
|
6555
6637
|
private _ariaFor;
|
|
6556
6638
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FlyGanttComponent, never>;
|
|
6557
6639
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FlyGanttComponent, "fly-gantt", never, { "rows": { "alias": "rows"; "required": false; "isSignal": true; }; "dependencies": { "alias": "dependencies"; "required": false; "isSignal": true; }; "zoom": { "alias": "zoom"; "required": false; "isSignal": true; }; "showToday": { "alias": "showToday"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "labelWidth": { "alias": "labelWidth"; "required": false; "isSignal": true; }; "resizableLabels": { "alias": "resizableLabels"; "required": false; "isSignal": true; }; "rowHeight": { "alias": "rowHeight"; "required": false; "isSignal": true; }; "maxRows": { "alias": "maxRows"; "required": false; "isSignal": true; }; }, { "rowDatesChange": "rowDatesChange"; "dependencyCreate": "dependencyCreate"; "dependencyDelete": "dependencyDelete"; "rowClick": "rowClick"; "rowDblClick": "rowDblClick"; "labelWidthChange": "labelWidthChange"; }, never, never, true, never>;
|
|
@@ -9843,6 +9925,15 @@ type FlyCurrencySelectorMode = 'single' | 'multi';
|
|
|
9843
9925
|
* reference data through its own gateway route.
|
|
9844
9926
|
*/
|
|
9845
9927
|
type FlyCurrencyFetchFn = () => Observable<readonly FlyCurrency[]>;
|
|
9928
|
+
/**
|
|
9929
|
+
* Host-supplied loader for the CALLING TENANT's default currency, used to pre-fill an empty
|
|
9930
|
+
* single-select. Same escape hatch as {@link FlyCurrencyFetchFn}, for the same consumers: an
|
|
9931
|
+
* offline surface, a fixture-driven test, or an app that proxies the platform's reference routes.
|
|
9932
|
+
*
|
|
9933
|
+
* Resolving to `null` means "this tenant has no default" and leaves the control empty — the
|
|
9934
|
+
* ordinary answer for a tenant with no country, not an error.
|
|
9935
|
+
*/
|
|
9936
|
+
type FlyTenantDefaultCurrencyFetchFn = () => Observable<FlyCurrency | null>;
|
|
9846
9937
|
/** The control's value: the picked code in single mode, the picked codes in multi mode. */
|
|
9847
9938
|
type FlyCurrencySelectorValue = string | readonly string[] | null;
|
|
9848
9939
|
|
|
@@ -9917,6 +10008,30 @@ declare class FlyCurrencySelectorComponent implements ControlValueAccessor {
|
|
|
9917
10008
|
readonly currencies: _angular_core.InputSignal<readonly FlyCurrency[] | null>;
|
|
9918
10009
|
/** Host-supplied loader, used when `[currencies]` is absent. Falls back to `GET /api/currencies/brief`. */
|
|
9919
10010
|
readonly fetchFn: _angular_core.InputSignal<FlyCurrencyFetchFn | null>;
|
|
10011
|
+
/**
|
|
10012
|
+
* Pre-fill an EMPTY single-select with the calling tenant's default currency
|
|
10013
|
+
* (`GET /api/currencies/default`, or `[tenantDefaultFetchFn]`). On by default.
|
|
10014
|
+
*
|
|
10015
|
+
* An amount is nearly always denominated in the tenant's reporting currency, and a form that
|
|
10016
|
+
* opens empty makes every user restate a fact the platform already holds — while an untouched
|
|
10017
|
+
* field silently saves null, which downstream money formatting cannot render at all.
|
|
10018
|
+
*
|
|
10019
|
+
* Deliberately narrow. It applies only when ALL of these hold, because outside them a
|
|
10020
|
+
* preselection would be a guess rather than a default:
|
|
10021
|
+
* - `mode="single"` — a multi-select accumulates a SET, and seeding one member of a set
|
|
10022
|
+
* states something the tenant currency does not say.
|
|
10023
|
+
* - not `locked()` — a frozen value is authoritative; proposing one contradicts the lock.
|
|
10024
|
+
* - the control is still empty — a written value always wins.
|
|
10025
|
+
*
|
|
10026
|
+
* It fires at most once per instance: clearing the field by hand latches it off, so the value
|
|
10027
|
+
* cannot reappear and read as the clear having not registered.
|
|
10028
|
+
*
|
|
10029
|
+
* A host that supplied `[currencies]` or `[fetchFn]` is never taken to the platform endpoint —
|
|
10030
|
+
* see {@link tenantDefaultFetchFn}, which is how such a host opts back in.
|
|
10031
|
+
*/
|
|
10032
|
+
readonly applyTenantDefault: _angular_core.InputSignal<boolean>;
|
|
10033
|
+
/** Host-supplied loader for {@link applyTenantDefault}. Falls back to `GET /api/currencies/default`. */
|
|
10034
|
+
readonly tenantDefaultFetchFn: _angular_core.InputSignal<FlyTenantDefaultCurrencyFetchFn | null>;
|
|
9920
10035
|
/** Restrict the offered set to these ISO 4217 codes (case-insensitive). Empty = offer everything. */
|
|
9921
10036
|
readonly allowedCodes: _angular_core.InputSignal<readonly string[]>;
|
|
9922
10037
|
/**
|
|
@@ -9975,6 +10090,12 @@ declare class FlyCurrencySelectorComponent implements ControlValueAccessor {
|
|
|
9975
10090
|
private readonly _selectedCodes;
|
|
9976
10091
|
private readonly _cvaDisabled;
|
|
9977
10092
|
private _fetchStarted;
|
|
10093
|
+
/** Guards the once-per-instance tenant-default resolve. */
|
|
10094
|
+
private _tenantDefaultStarted;
|
|
10095
|
+
/** Latches once the default has been applied, or ruled out by any commit (pick, clear, write). */
|
|
10096
|
+
private _tenantDefaultSettled;
|
|
10097
|
+
/** The resolved row, kept so a `writeValue(null)` arriving AFTER the fetch can still use it. */
|
|
10098
|
+
private _tenantDefaultRow;
|
|
9978
10099
|
private readonly searchEl?;
|
|
9979
10100
|
private readonly triggerEl?;
|
|
9980
10101
|
private _onChange;
|
|
@@ -10035,6 +10156,14 @@ declare class FlyCurrencySelectorComponent implements ControlValueAccessor {
|
|
|
10035
10156
|
onOptionHover(index: number): void;
|
|
10036
10157
|
retry(): void;
|
|
10037
10158
|
private _load;
|
|
10159
|
+
private _loadTenantDefault;
|
|
10160
|
+
/**
|
|
10161
|
+
* Applies the resolved default to a still-empty control.
|
|
10162
|
+
*
|
|
10163
|
+
* Called from both ends of a race with no fixed winner: the fetch may land before the forms
|
|
10164
|
+
* layer writes, or after it writes the empty value a form is built with.
|
|
10165
|
+
*/
|
|
10166
|
+
private _applyTenantDefaultIfEmpty;
|
|
10038
10167
|
writeValue(value: FlyCurrencySelectorValue): void;
|
|
10039
10168
|
registerOnChange(fn: (v: FlyCurrencySelectorValue) => void): void;
|
|
10040
10169
|
registerOnTouched(fn: () => void): void;
|
|
@@ -10044,7 +10173,7 @@ declare class FlyCurrencySelectorComponent implements ControlValueAccessor {
|
|
|
10044
10173
|
private _commit;
|
|
10045
10174
|
private _touch;
|
|
10046
10175
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FlyCurrencySelectorComponent, never>;
|
|
10047
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FlyCurrencySelectorComponent, "fly-currency-selector", never, { "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "currencies": { "alias": "currencies"; "required": false; "isSignal": true; }; "fetchFn": { "alias": "fetchFn"; "required": false; "isSignal": true; }; "allowedCodes": { "alias": "allowedCodes"; "required": false; "isSignal": true; }; "pinnedCodes": { "alias": "pinnedCodes"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "locked": { "alias": "locked"; "required": false; "isSignal": true; }; "lockedReasonKey": { "alias": "lockedReasonKey"; "required": false; "isSignal": true; }; "lockedReasonParams": { "alias": "lockedReasonParams"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "selectionChange": "selectionChange"; "selectionDetailChange": "selectionDetailChange"; "openedChange": "openedChange"; }, never, never, true, never>;
|
|
10176
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FlyCurrencySelectorComponent, "fly-currency-selector", never, { "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "currencies": { "alias": "currencies"; "required": false; "isSignal": true; }; "fetchFn": { "alias": "fetchFn"; "required": false; "isSignal": true; }; "applyTenantDefault": { "alias": "applyTenantDefault"; "required": false; "isSignal": true; }; "tenantDefaultFetchFn": { "alias": "tenantDefaultFetchFn"; "required": false; "isSignal": true; }; "allowedCodes": { "alias": "allowedCodes"; "required": false; "isSignal": true; }; "pinnedCodes": { "alias": "pinnedCodes"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "locked": { "alias": "locked"; "required": false; "isSignal": true; }; "lockedReasonKey": { "alias": "lockedReasonKey"; "required": false; "isSignal": true; }; "lockedReasonParams": { "alias": "lockedReasonParams"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "selectionChange": "selectionChange"; "selectionDetailChange": "selectionDetailChange"; "openedChange": "openedChange"; }, never, never, true, never>;
|
|
10048
10177
|
}
|
|
10049
10178
|
|
|
10050
10179
|
/** The platform endpoint the catalogue reads. Relative — the host's gateway + auth interceptors apply. */
|
|
@@ -10063,6 +10192,21 @@ declare const FLY_CURRENCIES_BRIEF_ENDPOINT = "/api/currencies/brief";
|
|
|
10063
10192
|
* `GET /api/currencies/brief` is allowed to return.
|
|
10064
10193
|
*/
|
|
10065
10194
|
declare function flyUnwrapCurrencies(res: unknown): readonly FlyCurrency[];
|
|
10195
|
+
/** The platform endpoint serving the CALLING TENANT's default currency. Relative, like its
|
|
10196
|
+
* catalogue sibling — the host's gateway + auth interceptors apply, and the answer is scoped to
|
|
10197
|
+
* whatever tenant that auth resolves to. */
|
|
10198
|
+
declare const FLY_CURRENCY_DEFAULT_ENDPOINT = "/api/currencies/default";
|
|
10199
|
+
/**
|
|
10200
|
+
* Unwraps the single-row shape of `GET /api/currencies/default`.
|
|
10201
|
+
*
|
|
10202
|
+
* `null` is a SUCCESS answer, not a failure: a tenant with no country has no default currency,
|
|
10203
|
+
* and a platform-scoped caller has no tenant whose currency could be meant. Anything that is not
|
|
10204
|
+
* recognisably a currency row — an envelope with `data: null`, an error body, an HTML login page
|
|
10205
|
+
* from a misrouted request — collapses to `null` for the same reason
|
|
10206
|
+
* {@link flyUnwrapCurrencies} returns `[]`: a picker must degrade to "no preselection", never
|
|
10207
|
+
* preselect something the platform did not vouch for.
|
|
10208
|
+
*/
|
|
10209
|
+
declare function flyUnwrapCurrency(res: unknown): FlyCurrency | null;
|
|
10066
10210
|
/**
|
|
10067
10211
|
* **`FlyCurrencyCatalogService`** — the one ISO-code → {@link FlyCurrency} adapter for the
|
|
10068
10212
|
* platform currency catalogue (`GET /api/currencies/brief`).
|
|
@@ -11594,9 +11738,43 @@ declare class FlyPaginationComponent {
|
|
|
11594
11738
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FlyPaginationComponent, "fly-pagination", never, { "page": { "alias": "page"; "required": true; "isSignal": true; }; "totalPages": { "alias": "totalPages"; "required": true; "isSignal": true; }; "rangeText": { "alias": "rangeText"; "required": false; "isSignal": true; }; "showEdges": { "alias": "showEdges"; "required": false; "isSignal": true; }; }, { "pageChange": "pageChange"; }, never, never, true, never>;
|
|
11595
11739
|
}
|
|
11596
11740
|
|
|
11741
|
+
declare function canGoPrev$1(page: number): boolean;
|
|
11742
|
+
declare function canGoNext$1(page: number, totalPages: number): boolean;
|
|
11743
|
+
/** Clamp a requested page into `[1, max(1, totalPages)]`. */
|
|
11744
|
+
declare function clampPage$1(page: number, totalPages: number): number;
|
|
11745
|
+
|
|
11746
|
+
/**
|
|
11747
|
+
* Numbered list pager — back arrow, one pill per page, forward arrow — for the
|
|
11748
|
+
* lists that want every page as a target rather than `fly-pagination`'s
|
|
11749
|
+
* «prev / page of total / next» band. Shares the list's surface and continues
|
|
11750
|
+
* its border (see `COMPONENTS.md`): pair with a list container that sets
|
|
11751
|
+
* `border-bottom: 0` so the two read as one panel.
|
|
11752
|
+
*
|
|
11753
|
+
* <fly-pager [page]="page()" [totalPages]="totalPages()" (goToPage)="goTo($event)" />
|
|
11754
|
+
*
|
|
11755
|
+
* `page`/the emitted target are 0-indexed (array-index pagination); buttons
|
|
11756
|
+
* display `page + 1`. This is the opposite convention from `fly-pagination`
|
|
11757
|
+
* (1-indexed) — the two are separate components for separate list shapes, not
|
|
11758
|
+
* a shared base, so pick the one matching how the caller already indexes its
|
|
11759
|
+
* pages rather than converting at the call site.
|
|
11760
|
+
*/
|
|
11761
|
+
declare class FlyPagerComponent {
|
|
11762
|
+
readonly page: _angular_core.InputSignal<number>;
|
|
11763
|
+
readonly totalPages: _angular_core.InputSignal<number>;
|
|
11764
|
+
/** Emits the target page (already clamped to bounds), 0-indexed. */
|
|
11765
|
+
readonly goToPage: _angular_core.OutputEmitterRef<number>;
|
|
11766
|
+
protected readonly prevEnabled: _angular_core.Signal<boolean>;
|
|
11767
|
+
protected readonly nextEnabled: _angular_core.Signal<boolean>;
|
|
11768
|
+
protected readonly pages: _angular_core.Signal<number[]>;
|
|
11769
|
+
protected goTo(target: number): void;
|
|
11770
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FlyPagerComponent, never>;
|
|
11771
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FlyPagerComponent, "fly-pager", never, { "page": { "alias": "page"; "required": true; "isSignal": true; }; "totalPages": { "alias": "totalPages"; "required": true; "isSignal": true; }; }, { "goToPage": "goToPage"; }, never, never, true, never>;
|
|
11772
|
+
}
|
|
11773
|
+
|
|
11774
|
+
/** 0-indexed sibling of `pagination.logic.ts` — see `pager.component.ts` for why. */
|
|
11597
11775
|
declare function canGoPrev(page: number): boolean;
|
|
11598
11776
|
declare function canGoNext(page: number, totalPages: number): boolean;
|
|
11599
|
-
/** Clamp a requested page into `[
|
|
11777
|
+
/** Clamp a requested page into `[0, max(0, totalPages - 1)]`. */
|
|
11600
11778
|
declare function clampPage(page: number, totalPages: number): number;
|
|
11601
11779
|
|
|
11602
11780
|
type CardLayout = 'row' | 'column';
|
|
@@ -13307,6 +13485,6 @@ declare const AUDIENCE_ERROR_CODES: {
|
|
|
13307
13485
|
};
|
|
13308
13486
|
type AudienceErrorCode = (typeof AUDIENCE_ERROR_CODES)[keyof typeof AUDIENCE_ERROR_CODES];
|
|
13309
13487
|
|
|
13310
|
-
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_DEPENDENCY_TYPES, GANTT_ROW_TINT_ALPHA, 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 };
|
|
13311
|
-
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, GanttDependencyDelete, GanttDependencyType, 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, SegmentedVariant, ShareOrgChartOption, ShareOuNode, SharePanelLevelOption, SharePermissionEntry, SharePrincipal, SharePrincipalKind, ShareUserResult, StateMessageKind, StepUpChallenge, StepUpReauthHandler, StepUpReauthRequest, TabsVariant, ToastAction, ToastEntry, ToastOptions, ToastVariant, User, UserPrincipal, UsersTerm, WindowHelpHint, WindowInstance, WindowState };
|
|
13488
|
+
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_CURRENCY_DEFAULT_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_BREADCRUMBS_EVENT, FLY_WINDOW_BREADCRUMBS_STORE_KEY, 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, FlyPagerComponent, 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_DEPENDENCY_TYPES, GANTT_ROW_TINT_ALPHA, 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, WindowBreadcrumbsRegistry, WindowManagerService, applySkinTone, applySuggestion, ariaSort, buildCron, canConfirm, canGoNext$1 as canGoNext, canGoPrev$1 as canGoPrev, captureFocus, clampMagicBarSearchWidth, clampPage$1 as 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, flyUnwrapCurrency, 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, canGoNext as pagerCanGoNext, canGoPrev as pagerCanGoPrev, clampPage as pagerClampPage, 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 };
|
|
13489
|
+
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, FlyTenantDefaultCurrencyFetchFn, FlyThemeMode, FlyTooltipPlacement, FlyTreeNavNode, FlyTypeaheadOption, FlyWindowHelpHintEventDetail, FlyWindowHelpPublisher, FlyWindowPageTitleEventDetail, FlyWindowTitlePublisher, FlyosPendingLaunches, FocusRestore, FormBannerKind, GanttDependency, GanttDependencyCreate, GanttDependencyDelete, GanttDependencyType, 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, SegmentedVariant, ShareOrgChartOption, ShareOuNode, SharePanelLevelOption, SharePermissionEntry, SharePrincipal, SharePrincipalKind, ShareUserResult, StateMessageKind, StepUpChallenge, StepUpReauthHandler, StepUpReauthRequest, TabsVariant, ToastAction, ToastEntry, ToastOptions, ToastVariant, User, UserPrincipal, UsersTerm, WindowBreadcrumb, WindowHelpHint, WindowInstance, WindowState };
|
|
13312
13490
|
//# sourceMappingURL=flyos-design-system.d.ts.map
|