@mt-gloss/ui 0.1.81 → 0.1.82
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/{BaseAsyncButton-Cq_l7clO.js → BaseAsyncButton-BE4m1Eff.js} +25 -25
- package/COMMITS-BcbOliuF.js +223 -0
- package/{Expandable-Deyl6mWK.js → Expandable-8IsJX0iR.js} +174 -174
- package/{UIContext-DP6JGCto.js → UIContext-C7m-9sGv.js} +69 -69
- package/catalog.js +53 -53
- package/composites-panels.d.ts +12 -0
- package/composites-panels.js +13 -0
- package/index.d.ts +2 -0
- package/index.js +35 -24
- package/internals.js +3 -3
- package/lib/composites/panels/PanelChrome.d.ts +7 -0
- package/lib/composites/panels/PanelHost.d.ts +19 -0
- package/lib/composites/panels/PanelProvider.d.ts +6 -0
- package/lib/composites/panels/coordinator/COMMITS.d.ts +2 -0
- package/lib/composites/panels/coordinator/coordinator.d.ts +3 -0
- package/lib/composites/panels/coordinator/deriveSurfaceState.d.ts +2 -0
- package/lib/composites/panels/coordinator/types.d.ts +84 -0
- package/lib/composites/panels/hooks/usePanelContext.d.ts +4 -0
- package/lib/composites/panels/hooks/usePanelCoordinator.d.ts +8 -0
- package/lib/composites/panels/index.d.ts +21 -0
- package/package.json +12 -1
- package/ui.css +1 -1
- package/lib/primitives/dashboard/MetricCard/__tests__/_testSupport/gridHoverListeners.d.ts +0 -29
package/catalog.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { P as I, a as N, b as B, c as x, d as D, e as F, f as A, g as M, h as v, i as R, j as W, k as _, C as H, l as k, m as z, n as L, o as E, p as G, q as $, r as O } from "./Expandable-8IsJX0iR.js";
|
|
2
|
+
import { $ as Ne, b2 as Be, aL as xe, aF as De, b0 as Fe, ai as Ae, Q as Me, N as ve, au as Re, a2 as We, t as _e, aY as He, _ as ke, X as ze, a7 as Le, z as Ee, a_ as Ge, O as $e, K as Oe, av as Ve, aR as we, aJ as Xe, al as je, G as Ze, I as Ue, aT as qe, aw as Je, b4 as Ke, ax as Qe, a3 as Ye, ao as ea, ak as aa, aU as sa, b6 as ta, J as ra, ah as oa, b7 as ia, an as na, b9 as la, ay as da, a6 as ca, aX as ga, u as ma, aZ as pa, S as ua, aH as fa, M as ha, x as ba, aq as ya, W as Ta, a9 as Sa, aj as Pa, w as Ca, a4 as Ia, aW as Na, R as Ba, aB as xa, aP as Da, aG as Fa, aE as Aa, am as Ma, U as va, aV as Ra, T as Wa, az as _a, A as Ha, a$ as ka, F as za, L as La, aN as Ea, aC as Ga, aA as $a, D as Oa, y as Va, b3 as wa, at as Xa, ad as ja, ae as Za, af as Ua, ag as qa, E as Ja, b5 as Ka, a1 as Qa, ap as Ya, Z as es, ar as as, ac as ss, aa as ts, aD as rs, s as os, v as is, a5 as ns, H as ls, B as ds, V as cs, b1 as gs, as as ms, Y as ps, ab as us, a8 as fs, aM as hs, a0 as bs, aS as ys, aK as Ts, aI as Ss, aQ as Ps, aO as Cs, b8 as Is } from "./Expandable-8IsJX0iR.js";
|
|
3
3
|
import { jsx as c, jsxs as S } from "react/jsx-runtime";
|
|
4
|
-
import { C as e, T as a,
|
|
5
|
-
import { B as j, a as
|
|
4
|
+
import { C as e, T as a, aa as V, S as s, E as u, R as m, c as w, Z as X } from "./UIContext-C7m-9sGv.js";
|
|
5
|
+
import { B as j, a as Z, e as U, c as q, d as J, b as K } from "./BaseAsyncButton-BE4m1Eff.js";
|
|
6
6
|
import { formatDateRange as Bs, resolveEvent as xs, resolvePreset as Ds, smartDateFormat as Fs } from "@mt-gloss/utils/dateInterpretation";
|
|
7
7
|
const Q = {
|
|
8
8
|
page: {
|
|
@@ -145,7 +145,7 @@ const se = {
|
|
|
145
145
|
`gloss-preset-value--${r}`
|
|
146
146
|
].join(" ");
|
|
147
147
|
return /* @__PURE__ */ c(
|
|
148
|
-
|
|
148
|
+
Z,
|
|
149
149
|
{
|
|
150
150
|
as: o.as,
|
|
151
151
|
definition: t,
|
|
@@ -204,8 +204,8 @@ function ne(l) {
|
|
|
204
204
|
rightIcon: t,
|
|
205
205
|
children: g,
|
|
206
206
|
...p
|
|
207
|
-
} = l,
|
|
208
|
-
delete
|
|
207
|
+
} = l, h = { ...p };
|
|
208
|
+
delete h.className, delete h.style, delete h.definition;
|
|
209
209
|
const P = {
|
|
210
210
|
...ie,
|
|
211
211
|
...re[i],
|
|
@@ -216,14 +216,14 @@ function ne(l) {
|
|
|
216
216
|
`gloss-preset-async-button--${r}`
|
|
217
217
|
].join(" ");
|
|
218
218
|
return /* @__PURE__ */ S(
|
|
219
|
-
|
|
219
|
+
U,
|
|
220
220
|
{
|
|
221
|
-
as:
|
|
221
|
+
as: h.as,
|
|
222
222
|
definition: P,
|
|
223
223
|
loading: n,
|
|
224
224
|
disabled: d,
|
|
225
225
|
className: C,
|
|
226
|
-
...
|
|
226
|
+
...h,
|
|
227
227
|
children: [
|
|
228
228
|
o && /* @__PURE__ */ c("span", { className: "gloss-preset-async-button__icon gloss-preset-async-button__icon--left", children: o }),
|
|
229
229
|
g && /* @__PURE__ */ c("span", { className: "gloss-preset-async-button__label", children: g }),
|
|
@@ -339,7 +339,7 @@ const pe = {
|
|
|
339
339
|
}, ue = {
|
|
340
340
|
color: e.TextSecondary
|
|
341
341
|
};
|
|
342
|
-
function
|
|
342
|
+
function fe(l) {
|
|
343
343
|
const { separator: i = "/", size: r = "md", children: n } = l, d = {
|
|
344
344
|
...ue,
|
|
345
345
|
...pe[r]
|
|
@@ -357,20 +357,20 @@ function be(l) {
|
|
|
357
357
|
}
|
|
358
358
|
);
|
|
359
359
|
}
|
|
360
|
-
|
|
361
|
-
const
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
const
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
const
|
|
360
|
+
fe.displayName = "PresetBreadcrumbs";
|
|
361
|
+
const f = I;
|
|
362
|
+
f.Header = B;
|
|
363
|
+
f.Body = x;
|
|
364
|
+
f.Footer = D;
|
|
365
|
+
f.Media = F;
|
|
366
|
+
f.Title = A;
|
|
367
|
+
f.Subtitle = M;
|
|
368
|
+
f.Actions = v;
|
|
369
|
+
const b = N;
|
|
370
|
+
b.Item = R;
|
|
371
|
+
b.Trigger = W;
|
|
372
|
+
b.Content = _;
|
|
373
|
+
const he = {
|
|
374
374
|
info: {
|
|
375
375
|
bg: e.Blue50,
|
|
376
376
|
shadow: u.Hover,
|
|
@@ -396,7 +396,7 @@ const fe = {
|
|
|
396
396
|
padding: s.Md
|
|
397
397
|
}
|
|
398
398
|
};
|
|
399
|
-
function
|
|
399
|
+
function be({
|
|
400
400
|
open: l,
|
|
401
401
|
onDismiss: i,
|
|
402
402
|
variant: r = "info",
|
|
@@ -405,7 +405,7 @@ function he({
|
|
|
405
405
|
children: o
|
|
406
406
|
}) {
|
|
407
407
|
const t = {
|
|
408
|
-
...
|
|
408
|
+
...he[r],
|
|
409
409
|
zIndex: X.Toast,
|
|
410
410
|
position: n,
|
|
411
411
|
duration: d
|
|
@@ -421,17 +421,17 @@ function he({
|
|
|
421
421
|
}
|
|
422
422
|
);
|
|
423
423
|
}
|
|
424
|
-
|
|
425
|
-
const y =
|
|
426
|
-
y.Header =
|
|
427
|
-
y.Body =
|
|
424
|
+
be.displayName = "PresetToast";
|
|
425
|
+
const y = H;
|
|
426
|
+
y.Header = z;
|
|
427
|
+
y.Body = L;
|
|
428
428
|
y.Actions = E;
|
|
429
429
|
const T = k;
|
|
430
430
|
T.Group = G;
|
|
431
431
|
T.Item = $;
|
|
432
432
|
T.Divider = O;
|
|
433
433
|
export {
|
|
434
|
-
|
|
434
|
+
b as Accordion,
|
|
435
435
|
Ne as ActionStrip,
|
|
436
436
|
Be as Actionable,
|
|
437
437
|
xe as AddressGroup,
|
|
@@ -444,13 +444,13 @@ export {
|
|
|
444
444
|
ve as Badge,
|
|
445
445
|
Re as BarChartCard,
|
|
446
446
|
We as BarsBg,
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
447
|
+
fe as Breadcrumbs,
|
|
448
|
+
_e as Button,
|
|
449
|
+
He as ButtonGroup,
|
|
450
|
+
f as Card,
|
|
451
451
|
ke as CardBack,
|
|
452
|
-
|
|
453
|
-
|
|
452
|
+
ze as CardShell,
|
|
453
|
+
Le as ChartControlBar,
|
|
454
454
|
Ee as Checkbox,
|
|
455
455
|
Ge as CheckboxGroup,
|
|
456
456
|
$e as Chip,
|
|
@@ -459,8 +459,8 @@ export {
|
|
|
459
459
|
we as ContactForm,
|
|
460
460
|
Xe as CreditCardForm,
|
|
461
461
|
je as DataTable,
|
|
462
|
-
|
|
463
|
-
|
|
462
|
+
Ze as DatePicker,
|
|
463
|
+
Ue as DateRangePicker,
|
|
464
464
|
qe as DestructiveModal,
|
|
465
465
|
y as Dialog,
|
|
466
466
|
Je as DirectionCard,
|
|
@@ -484,9 +484,9 @@ export {
|
|
|
484
484
|
pa as InputGroup,
|
|
485
485
|
ae as Label,
|
|
486
486
|
ua as Link,
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
487
|
+
fa as LoginForm,
|
|
488
|
+
ha as MaskPresets,
|
|
489
|
+
ba as MaskedInput,
|
|
490
490
|
T as Menu,
|
|
491
491
|
ya as MergePrompt,
|
|
492
492
|
Ta as MetricCard,
|
|
@@ -504,11 +504,11 @@ export {
|
|
|
504
504
|
va as Popover,
|
|
505
505
|
Ra as ProfileCard,
|
|
506
506
|
Wa as ProgressBar,
|
|
507
|
-
|
|
508
|
-
|
|
507
|
+
_a as ProgressCard,
|
|
508
|
+
Ha as Radio,
|
|
509
509
|
ka as RadioGroup,
|
|
510
|
-
|
|
511
|
-
|
|
510
|
+
za as RangeSlider,
|
|
511
|
+
La as Rating,
|
|
512
512
|
Ea as RegistrationForm,
|
|
513
513
|
Ga as SearchInput,
|
|
514
514
|
$a as SegmentCard,
|
|
@@ -517,8 +517,8 @@ export {
|
|
|
517
517
|
wa as Selectable,
|
|
518
518
|
Xa as SimpleMetricCard,
|
|
519
519
|
ja as Skeleton,
|
|
520
|
-
|
|
521
|
-
|
|
520
|
+
Za as SkeletonCard,
|
|
521
|
+
Ua as SkeletonChart,
|
|
522
522
|
qa as SkeletonTable,
|
|
523
523
|
Ja as Slider,
|
|
524
524
|
Ka as Sortable,
|
|
@@ -534,17 +534,17 @@ export {
|
|
|
534
534
|
ns as TimeFrame,
|
|
535
535
|
ls as TimePicker,
|
|
536
536
|
Y as Title,
|
|
537
|
-
|
|
537
|
+
be as Toast,
|
|
538
538
|
ds as Toggle,
|
|
539
539
|
cs as Tooltip,
|
|
540
540
|
gs as Transition,
|
|
541
541
|
ms as TrendCard,
|
|
542
542
|
ps as TrendIndicator,
|
|
543
543
|
us as UnifiedBreakdownTable,
|
|
544
|
-
|
|
544
|
+
fs as UnifiedContextMenu,
|
|
545
545
|
te as Value,
|
|
546
|
-
|
|
547
|
-
|
|
546
|
+
hs as addressSchema,
|
|
547
|
+
bs as buildDefaultOverflow,
|
|
548
548
|
ys as contactSchema,
|
|
549
549
|
Ts as creditCardSchema,
|
|
550
550
|
Bs as formatDateRangeInterpretation,
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Composites/panels entry point — flat-root mirror for the subpath export
|
|
3
|
+
* '@mt-gloss/ui/composites/panels'.
|
|
4
|
+
*
|
|
5
|
+
* Mirrors the catalog.ts / internals.ts shape so that vite emits
|
|
6
|
+
* `dist/libs/gloss-ui/composites-panels.{js,d.ts}` at the package root,
|
|
7
|
+
* matching the package.json exports map (F12).
|
|
8
|
+
*
|
|
9
|
+
* Usage:
|
|
10
|
+
* import { PanelProvider, PanelHost } from '@mt-gloss/ui/composites/panels';
|
|
11
|
+
*/
|
|
12
|
+
export * from './lib/composites/panels/index';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { C as s, c as t, b as r, P as n, e as o, i, r as l, u as P, a as u, d as C } from "./COMMITS-BcbOliuF.js";
|
|
2
|
+
export {
|
|
3
|
+
s as COMMITS,
|
|
4
|
+
t as PanelChrome,
|
|
5
|
+
r as PanelHost,
|
|
6
|
+
n as PanelProvider,
|
|
7
|
+
o as deriveSurfaceState,
|
|
8
|
+
i as initialState,
|
|
9
|
+
l as reducer,
|
|
10
|
+
P as usePanelContext,
|
|
11
|
+
u as usePanelContextOptional,
|
|
12
|
+
C as usePanelCoordinator
|
|
13
|
+
};
|
package/index.d.ts
CHANGED
|
@@ -366,3 +366,5 @@ export { UIContext, UIContextProvider, useUIContext, ContainerCard, ContainerCar
|
|
|
366
366
|
export type { UIContextValue, UIRegion, UIDensity, UIContextProviderProps, ContainerCardProps, ContainerCardVariant, ContainerDialogProps, ContainerDialogHeaderProps, ContainerDialogBodyProps, ContainerDialogActionsProps, ContainerPanelProps, ContainerToolbarProps, ContainerFormSectionProps, ContainerTableProps, } from './lib/containers';
|
|
367
367
|
export { mergeRefs, mergeHandlers, Actionable, Selectable, Dismissible, Sortable, Expandable, } from './lib/wrappers';
|
|
368
368
|
export type { ActionableProps, SelectableProps, DismissibleProps, SortableProps, ExpandableProps, } from './lib/wrappers';
|
|
369
|
+
export { PanelProvider, usePanelContext, usePanelContextOptional, PanelHost, PanelChrome, usePanelCoordinator, reducer as panelsReducer, initialState as panelsInitialState, deriveSurfaceState as panelsDeriveSurfaceState, COMMITS as PANEL_COMMITS, } from './lib/composites/panels';
|
|
370
|
+
export type { PanelProviderProps, PanelHostProps, PanelChromeProps, PanelShellProps, UsePanelCoordinatorReturn, PanelId, PanelState, PanelAction, CloseReason, SurfaceState, TriggerContext, SideEffect, CloseLogEntry, LockHint, } from './lib/composites/panels';
|
package/index.js
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { ba as Ze, X as qe } from "./Expandable-8IsJX0iR.js";
|
|
2
|
+
import { a as Sr, k as kr, i as Dr, j as xr, $ as Tr, b2 as Rr, aL as Mr, aF as Pr, b0 as Ir, ai as Er, N as Ar, au as Fr, a2 as Or, t as Lr, aY as $r, bb as zr, P as Br, h as Kr, _ as Gr, c as Hr, d as Wr, b as Vr, e as jr, g as Ur, f as Yr, a7 as Zr, z as qr, a_ as Qr, O as Xr, K as Jr, av as es, aR as ts, P as as, h as ns, c as rs, d as ss, b as is, e as os, g as ls, f as cs, C as ds, o as us, n as ms, m as gs, R as ps, aJ as hs, bj as fs, bi as bs, al as vs, G as ys, I as ws, aT as _s, aw as Cs, b4 as Ns, ax as Ss, a3 as ks, ao as Ds, bQ as xs, bP as Ts, bR as Rs, ak as Ms, aU as Ps, b6 as Is, bT as Es, bH as As, J as Fs, ah as Os, bL as Ls, bE as $s, b7 as zs, an as Bs, b9 as Ks, bK as Gs, bW as Hs, bc as Ws, be as Vs, ay as js, a6 as Us, aX as Ys, u as Zs, bg as qs, aZ as Qs, S as Xs, aH as Js, bU as ei, M as ti, x as ai, l as ni, r as ri, p as si, q as ii, aq as oi, W as li, a9 as ci, bS as di, aj as ui, w as mi, a4 as gi, aW as pi, aB as hi, aP as fi, aG as bi, aE as vi, am as yi, aV as wi, az as _i, bk as Ci, A as Ni, a$ as Si, F as ki, L as Di, aN as xi, bI as Ti, bJ as Ri, aC as Mi, aA as Pi, D as Ii, y as Ei, b3 as Ai, at as Fi, bV as Oi, ad as Li, ae as $i, af as zi, ag as Bi, E as Ki, b5 as Gi, a1 as Hi, ap as Wi, Z as Vi, bB as ji, ar as Ui, ac as Yi, aa as Zi, aD as qi, v as Qi, a5 as Xi, H as Ji, B as eo, V as to, b1 as ao, bh as no, as as ro, Y as so, ab as io, a8 as oo, bm as lo, aM as co, a0 as uo, br as mo, aS as go, bn as po, aK as ho, bo as fo, bt as bo, bu as vo, bC as yo, bO as wo, bN as _o, bw as Co, bx as No, bl as So, aI as ko, bA as Do, bz as xo, by as To, bq as Ro, aQ as Mo, bv as Po, bp as Io, aO as Eo, bd as Ao, bM as Fo, bD as Oo, bF as Lo, bG as $o, bs as zo, b8 as Bo, bX as Ko, bf as Go } from "./Expandable-8IsJX0iR.js";
|
|
3
3
|
import { jsxs as w, jsx as r, Fragment as $ } from "react/jsx-runtime";
|
|
4
4
|
import * as B from "react";
|
|
5
5
|
import F, { useRef as P, useEffect as A, useState as E, useCallback as C, useId as Qe, forwardRef as Xe, useMemo as re, createContext as Je, useContext as et } from "react";
|
|
6
6
|
import { motion as G, useMotionValue as tt, AnimatePresence as at, useDragControls as nt } from "framer-motion";
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
7
|
+
import { ab as rt, a as X, a9 as ce, ai as fe } from "./UIContext-C7m-9sGv.js";
|
|
8
|
+
import { ah as Wo, aj as Vo } from "./UIContext-C7m-9sGv.js";
|
|
9
|
+
import { C as Uo, c as Yo, b as Zo, P as qo, e as Qo, i as Xo, r as Jo, u as el, a as tl, d as al } from "./COMMITS-BcbOliuF.js";
|
|
9
10
|
import { createPortal as st } from "react-dom";
|
|
10
|
-
import { DEFAULT_MARKET_PRESETS as
|
|
11
|
+
import { DEFAULT_MARKET_PRESETS as rl, DEFAULT_PINNED as sl, PERIOD_OPTIONS as il, ROLLING_OPTIONS as ol, TODAY_PRESET as ll, findPreset as cl, formatDateRange as dl, formatMarketDates as ul, formatTrend as ml, formatValue as gl, generateMarketId as pl, getAllPresets as hl, getDateRangeForPreset as fl, getPresetLabel as bl, isInRange as vl, isMarketActive as yl, isSameDay as wl, normalizePresetId as _l, toUppercasePresetId as Cl } from "@mt-gloss/utils";
|
|
11
12
|
import it from "@mui/icons-material/AccessTime";
|
|
12
13
|
import ot from "@mui/icons-material/Tune";
|
|
13
14
|
import lt from "@mui/icons-material/ViewColumn";
|
|
@@ -4686,9 +4687,9 @@ export {
|
|
|
4686
4687
|
hs as CreditCardForm,
|
|
4687
4688
|
fs as DEFAULT_FOOTER_IDS,
|
|
4688
4689
|
U as DEFAULT_GRID_INTERACTION_PHYSICS,
|
|
4689
|
-
|
|
4690
|
+
rl as DEFAULT_MARKET_PRESETS,
|
|
4690
4691
|
bs as DEFAULT_OVERFLOW_IDS,
|
|
4691
|
-
|
|
4692
|
+
sl as DEFAULT_PINNED,
|
|
4692
4693
|
_t as DEFAULT_RESIZE_PHYSICS,
|
|
4693
4694
|
Ie as DEFAULT_RESIZE_PILL_PHYSICS,
|
|
4694
4695
|
vs as DataTable,
|
|
@@ -4760,11 +4761,15 @@ export {
|
|
|
4760
4761
|
mi as NumberInput,
|
|
4761
4762
|
gi as ObjectArrow,
|
|
4762
4763
|
pi as OrderFilterBar,
|
|
4763
|
-
|
|
4764
|
+
Uo as PANEL_COMMITS,
|
|
4765
|
+
il as PERIOD_OPTIONS,
|
|
4764
4766
|
or as PaceCard,
|
|
4765
4767
|
lr as PaceTilePreview,
|
|
4766
4768
|
Et as PageChip,
|
|
4767
4769
|
Oe as PageDropdown,
|
|
4770
|
+
Yo as PanelChrome,
|
|
4771
|
+
Zo as PanelHost,
|
|
4772
|
+
qo as PanelProvider,
|
|
4768
4773
|
hi as PasswordInput,
|
|
4769
4774
|
fi as PaymentForm,
|
|
4770
4775
|
bi as PaymentMethodSelect,
|
|
@@ -4775,7 +4780,7 @@ export {
|
|
|
4775
4780
|
_i as ProgressCard,
|
|
4776
4781
|
Ci as QuickConfigPanel,
|
|
4777
4782
|
Bt as RECONFIG_BACKSIDE_LABELS,
|
|
4778
|
-
|
|
4783
|
+
ol as ROLLING_OPTIONS,
|
|
4779
4784
|
Ni as Radio,
|
|
4780
4785
|
Si as RadioGroup,
|
|
4781
4786
|
ki as RangeSlider,
|
|
@@ -4824,7 +4829,7 @@ export {
|
|
|
4824
4829
|
yt as StatusSlotChipMenu,
|
|
4825
4830
|
Ui as Stepper,
|
|
4826
4831
|
De as SwingReveal,
|
|
4827
|
-
|
|
4832
|
+
ll as TODAY_PRESET,
|
|
4828
4833
|
V as TUNING_DEFAULTS,
|
|
4829
4834
|
Be as TUNING_STORAGE_KEY,
|
|
4830
4835
|
Yi as TabGroup,
|
|
@@ -4879,26 +4884,26 @@ export {
|
|
|
4879
4884
|
Tt as errorFixture,
|
|
4880
4885
|
yo as evaluateTintCondition,
|
|
4881
4886
|
Rn as filteredState,
|
|
4882
|
-
|
|
4883
|
-
|
|
4884
|
-
|
|
4885
|
-
|
|
4886
|
-
|
|
4887
|
+
cl as findPreset,
|
|
4888
|
+
dl as formatDateRange,
|
|
4889
|
+
ul as formatMarketDates,
|
|
4890
|
+
ml as formatTrend,
|
|
4891
|
+
gl as formatValue,
|
|
4887
4892
|
Hn as fullLayout,
|
|
4888
|
-
|
|
4893
|
+
pl as generateMarketId,
|
|
4889
4894
|
wo as generateTabId,
|
|
4890
|
-
|
|
4891
|
-
|
|
4895
|
+
hl as getAllPresets,
|
|
4896
|
+
fl as getDateRangeForPreset,
|
|
4892
4897
|
_o as getMenuActions,
|
|
4893
4898
|
Ke as getMotionMode,
|
|
4894
|
-
|
|
4899
|
+
bl as getPresetLabel,
|
|
4895
4900
|
Co as getTransitionStyle,
|
|
4896
4901
|
Bn as gridCards,
|
|
4897
4902
|
cr as gridChannels,
|
|
4898
4903
|
No as interpolate,
|
|
4899
|
-
|
|
4900
|
-
|
|
4901
|
-
|
|
4904
|
+
vl as isInRange,
|
|
4905
|
+
yl as isMarketActive,
|
|
4906
|
+
wl as isSameDay,
|
|
4902
4907
|
Tn as itemColumns,
|
|
4903
4908
|
Dn as itemRows,
|
|
4904
4909
|
xt as loadingFixture,
|
|
@@ -4910,7 +4915,7 @@ export {
|
|
|
4910
4915
|
xo as mergeRefs,
|
|
4911
4916
|
sn as metricTabGroup,
|
|
4912
4917
|
Vn as mixedTabs,
|
|
4913
|
-
|
|
4918
|
+
_l as normalizePresetId,
|
|
4914
4919
|
zt as numericActions,
|
|
4915
4920
|
xn as orderColumns,
|
|
4916
4921
|
$t as orderIdActions,
|
|
@@ -4918,6 +4923,9 @@ export {
|
|
|
4918
4923
|
Wn as ordersTabs,
|
|
4919
4924
|
Me as paletteHex,
|
|
4920
4925
|
j as paletteVars,
|
|
4926
|
+
Qo as panelsDeriveSurfaceState,
|
|
4927
|
+
Xo as panelsInitialState,
|
|
4928
|
+
Jo as panelsReducer,
|
|
4921
4929
|
To as parseNumericValue,
|
|
4922
4930
|
Ro as paymentFormMetadata,
|
|
4923
4931
|
Mo as paymentSchema,
|
|
@@ -4950,7 +4958,7 @@ export {
|
|
|
4950
4958
|
gn as tableSamples,
|
|
4951
4959
|
dn as textSamples,
|
|
4952
4960
|
ln as timeFrameTabGroup,
|
|
4953
|
-
|
|
4961
|
+
Cl as toUppercasePresetId,
|
|
4954
4962
|
Ze as useAffordanceVisibility,
|
|
4955
4963
|
nn as useArrowNavigation,
|
|
4956
4964
|
Ao as useCheckboxGroupContext,
|
|
@@ -4962,6 +4970,9 @@ export {
|
|
|
4962
4970
|
zo as useFocusTrap,
|
|
4963
4971
|
Bo as useFormContext,
|
|
4964
4972
|
Ko as useGestureState,
|
|
4973
|
+
el as usePanelContext,
|
|
4974
|
+
tl as usePanelContextOptional,
|
|
4975
|
+
al as usePanelCoordinator,
|
|
4965
4976
|
Go as useRadioGroupContext,
|
|
4966
4977
|
yr as useResizeChoreography,
|
|
4967
4978
|
fn as useResizePill,
|
package/internals.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { B } from "./UIContext-C7m-9sGv.js";
|
|
2
|
+
import { z as A, F as I, A as H, D as M, ac as $, ae as R, a as E, f as F, r as O, y as U, t as z, u as W, s as L, v as j, x as G, w as V, i as X, af as Z, a3 as q, a6 as J, a5 as K, a4 as Q, a7 as Y, N as aa, P as sa, Q as ea, O as oa, X as ta, Y as la, c as ra, a0 as ia, a2 as da, a1 as na, e as ca, g as Ba, ag as ga, $ as ba, G as ma, J as ua, H as pa, I as ya, _ as ha, ab as _a, ad as fa, j as va, a8 as Ca, L as ka, M as Da, l as Ta, n as wa, p as xa, o as Sa, m as Na, q as Pa, b as Aa, a9 as Ia, h as Ha, U as Ma, W as $a, V as Ra, aa as Ea, k as Fa, K as Oa, d as Ua, C as za, E as Wa, R as La, S as ja, T as Ga, ah as Va, ai as Xa, Z as Za, aj as qa } from "./UIContext-C7m-9sGv.js";
|
|
3
3
|
import { jsx as d, jsxs as g, Fragment as b } from "react/jsx-runtime";
|
|
4
|
-
import { c as Ka, e as Qa, d as Ya, B as as, b as ss, a as es } from "./BaseAsyncButton-
|
|
4
|
+
import { c as Ka, e as Qa, d as Ya, B as as, b as ss, a as es } from "./BaseAsyncButton-BE4m1Eff.js";
|
|
5
5
|
const T = {
|
|
6
6
|
DurationFast: "var(--gloss-motion-duration-fast)",
|
|
7
7
|
DurationNormal: "var(--gloss-motion-duration-normal)",
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export interface PanelChromeProps {
|
|
3
|
+
children: ReactNode;
|
|
4
|
+
onClose: () => void;
|
|
5
|
+
isOpen?: boolean;
|
|
6
|
+
}
|
|
7
|
+
export declare function PanelChrome({ children, onClose, isOpen }: PanelChromeProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ComponentType } from 'react';
|
|
2
|
+
import { PanelId } from './coordinator/types';
|
|
3
|
+
/**
|
|
4
|
+
* Shape contract for panel shell components (F10).
|
|
5
|
+
* Receives `isOpen` so future plans may always-mount panels and rely on this
|
|
6
|
+
* prop for animation gating; P1 mounts only the active panel.
|
|
7
|
+
*/
|
|
8
|
+
export interface PanelShellProps {
|
|
9
|
+
isOpen: boolean;
|
|
10
|
+
}
|
|
11
|
+
export interface PanelHostProps {
|
|
12
|
+
/**
|
|
13
|
+
* Map of PanelId → shell component. Only the active panel mounts in P1.
|
|
14
|
+
* F8 — callers SHOULD declare this at module scope as a `const` for
|
|
15
|
+
* referential stability.
|
|
16
|
+
*/
|
|
17
|
+
panelComponents: Partial<Record<PanelId, ComponentType<PanelShellProps>>>;
|
|
18
|
+
}
|
|
19
|
+
export declare function PanelHost({ panelComponents }: PanelHostProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export interface PanelProviderProps {
|
|
3
|
+
children: ReactNode;
|
|
4
|
+
}
|
|
5
|
+
export declare function PanelProvider({ children }: PanelProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export { usePanelContext, usePanelContextOptional } from './hooks/usePanelContext';
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Panel system — type contract.
|
|
3
|
+
*
|
|
4
|
+
* Authority: `.planning/spikes/toolbar/panels/SPIKE-DELIVERABLES.md` §1.2 (PanelId),
|
|
5
|
+
* §1.3 (SurfaceState), §1.10/§1.15 (CloseReason taxonomy), §1.17 (TriggerContext).
|
|
6
|
+
*
|
|
7
|
+
* P1 reach: reducer only OPENs/CLOSEs `'notification-center'`; other PanelIds are
|
|
8
|
+
* present in the union but emit INVALID_DISPATCH per F15 branch 3. Surface-state
|
|
9
|
+
* derivation in P1 reaches `'idle'` + `'notif-center'` only; other branches return
|
|
10
|
+
* `'idle'` with a TODO until P2 extends the reducer to full 7-state.
|
|
11
|
+
*
|
|
12
|
+
* Plan refs:
|
|
13
|
+
* F1 — exhaustive types ship Day 1
|
|
14
|
+
* F4 — `lastClose` carries `{ panelId, reason }` so closeLog pump can append
|
|
15
|
+
* F6 — `SCHEDULE_TIMER` is a SideEffect, NOT a PanelAction (external callers
|
|
16
|
+
* cannot dispatch it). Only `OPEN_PANEL | CLOSE_PANEL | DRAIN_SIDE_EFFECTS`
|
|
17
|
+
* are dispatchable.
|
|
18
|
+
* F9 + F21 — `NAV_ESCAPE_HATCH` carries dual P1 meaning: backdrop-click AND
|
|
19
|
+
* page-nav escape; spike enum has no `BACKDROP_CLICK` literal.
|
|
20
|
+
*/
|
|
21
|
+
export type PanelId = 'settings' | 'catalog-add' | 'catalog-replace' | 'page-management' | 'notification-center';
|
|
22
|
+
export type CloseReason = 'cancel-button' | 'apply-button' | 'header-x' | 'escape-key' | 'page-nav' | 'mutex-handoff' | 'ghost-anchor' | 'viewport-collapse' | 'unmount' | 'nav-escape-hatch';
|
|
23
|
+
export type SurfaceState = 'idle' | 'bell-cutout-only' | 'panel-clean' | 'panel-dirty' | 'panel-clean+cutout' | 'panel-dirty+cutout' | 'notif-center';
|
|
24
|
+
export type TriggerContext = {
|
|
25
|
+
kind: 'bell';
|
|
26
|
+
} | {
|
|
27
|
+
kind: 'card-overflow';
|
|
28
|
+
cardId: string;
|
|
29
|
+
sectionIndex: number;
|
|
30
|
+
action: 'configure' | 'replace';
|
|
31
|
+
} | {
|
|
32
|
+
kind: 'empty-cell';
|
|
33
|
+
sectionIndex: number;
|
|
34
|
+
cellPosition: {
|
|
35
|
+
row: number;
|
|
36
|
+
col: number;
|
|
37
|
+
};
|
|
38
|
+
} | {
|
|
39
|
+
kind: 'manage-pages-action';
|
|
40
|
+
global: true;
|
|
41
|
+
align: 'left';
|
|
42
|
+
};
|
|
43
|
+
export interface CloseLogEntry {
|
|
44
|
+
panelId: PanelId;
|
|
45
|
+
reason: CloseReason;
|
|
46
|
+
at: number;
|
|
47
|
+
/**
|
|
48
|
+
* F21 — When `reason === 'nav-escape-hatch'`, the same enum literal fires for
|
|
49
|
+
* both backdrop-click AND page-nav escape. Future analytics MUST inspect this
|
|
50
|
+
* note before attributing UX intent.
|
|
51
|
+
*/
|
|
52
|
+
note?: string;
|
|
53
|
+
}
|
|
54
|
+
export type SideEffect = {
|
|
55
|
+
type: 'SCHEDULE_TIMER';
|
|
56
|
+
ms: number;
|
|
57
|
+
action: PanelAction;
|
|
58
|
+
} | {
|
|
59
|
+
type: 'INVALID_DISPATCH';
|
|
60
|
+
reason: string;
|
|
61
|
+
};
|
|
62
|
+
export interface PanelState {
|
|
63
|
+
activePanelId: PanelId | null;
|
|
64
|
+
lastClose: {
|
|
65
|
+
panelId: PanelId;
|
|
66
|
+
reason: CloseReason;
|
|
67
|
+
} | null;
|
|
68
|
+
pendingSideEffects: SideEffect[];
|
|
69
|
+
}
|
|
70
|
+
export type PanelAction = {
|
|
71
|
+
type: 'OPEN_PANEL';
|
|
72
|
+
panelId: PanelId;
|
|
73
|
+
trigger: TriggerContext;
|
|
74
|
+
} | {
|
|
75
|
+
type: 'CLOSE_PANEL';
|
|
76
|
+
reason: CloseReason;
|
|
77
|
+
} | {
|
|
78
|
+
type: 'DRAIN_SIDE_EFFECTS';
|
|
79
|
+
};
|
|
80
|
+
export interface LockHint {
|
|
81
|
+
blockedTrigger: TriggerContext;
|
|
82
|
+
activeCardId: string | null;
|
|
83
|
+
expiresAt: number;
|
|
84
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { UsePanelCoordinatorReturn } from './usePanelCoordinator';
|
|
2
|
+
export declare const PanelContext: import('react').Context<UsePanelCoordinatorReturn | null>;
|
|
3
|
+
export declare function usePanelContext(): UsePanelCoordinatorReturn;
|
|
4
|
+
export declare function usePanelContextOptional(): UsePanelCoordinatorReturn | null;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { CloseLogEntry, PanelAction, PanelState, SurfaceState } from '../coordinator/types';
|
|
2
|
+
export interface UsePanelCoordinatorReturn {
|
|
3
|
+
state: PanelState;
|
|
4
|
+
surfaceState: SurfaceState;
|
|
5
|
+
dispatch: React.Dispatch<PanelAction>;
|
|
6
|
+
getCloseLog: () => CloseLogEntry[];
|
|
7
|
+
}
|
|
8
|
+
export declare function usePanelCoordinator(): UsePanelCoordinatorReturn;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @mt-gloss/ui/composites/panels — panel-system foundation.
|
|
3
|
+
*
|
|
4
|
+
* Consumers (reptime-cloud P1) import:
|
|
5
|
+
* import { PanelProvider, PanelHost } from '@mt-gloss/ui/composites/panels';
|
|
6
|
+
*
|
|
7
|
+
* Subpath export wired in package.json (F12); flat package-root artifact
|
|
8
|
+
* `composites-panels.js` matching existing `internals` + `catalog` pattern.
|
|
9
|
+
*/
|
|
10
|
+
export { PanelProvider, usePanelContext, usePanelContextOptional } from './PanelProvider';
|
|
11
|
+
export { PanelHost } from './PanelHost';
|
|
12
|
+
export { PanelChrome } from './PanelChrome';
|
|
13
|
+
export type { PanelHostProps, PanelShellProps } from './PanelHost';
|
|
14
|
+
export type { PanelProviderProps } from './PanelProvider';
|
|
15
|
+
export type { PanelChromeProps } from './PanelChrome';
|
|
16
|
+
export { usePanelCoordinator } from './hooks/usePanelCoordinator';
|
|
17
|
+
export type { UsePanelCoordinatorReturn } from './hooks/usePanelCoordinator';
|
|
18
|
+
export { reducer, initialState } from './coordinator/coordinator';
|
|
19
|
+
export { deriveSurfaceState } from './coordinator/deriveSurfaceState';
|
|
20
|
+
export { COMMITS } from './coordinator/COMMITS';
|
|
21
|
+
export type { PanelId, PanelState, PanelAction, CloseReason, SurfaceState, TriggerContext, SideEffect, CloseLogEntry, LockHint, } from './coordinator/types';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mt-gloss/ui",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.82",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "restricted"
|
|
@@ -38,6 +38,17 @@
|
|
|
38
38
|
},
|
|
39
39
|
"default": "./catalog.js"
|
|
40
40
|
},
|
|
41
|
+
"./composites/panels": {
|
|
42
|
+
"import": {
|
|
43
|
+
"types": "./composites-panels.d.ts",
|
|
44
|
+
"default": "./composites-panels.js"
|
|
45
|
+
},
|
|
46
|
+
"require": {
|
|
47
|
+
"types": "./composites-panels.d.ts",
|
|
48
|
+
"default": "./composites-panels.js"
|
|
49
|
+
},
|
|
50
|
+
"default": "./composites-panels.js"
|
|
51
|
+
},
|
|
41
52
|
"./styles.css": "./ui.css"
|
|
42
53
|
},
|
|
43
54
|
"files": [
|