@photon-ai/pho-ui 3.0.0 → 4.2.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.
Files changed (31) hide show
  1. package/dist/chunks/{basic-page-CYDwfVjO.js → basic-page-C3qjXfBe.js} +423 -419
  2. package/dist/chunks/basic-page-C3qjXfBe.js.map +1 -0
  3. package/dist/chunks/data-table-BeUwsjmX.js +297 -0
  4. package/dist/chunks/data-table-BeUwsjmX.js.map +1 -0
  5. package/dist/chunks/date-picker-Ddeo1fNE.js +422 -0
  6. package/dist/chunks/date-picker-Ddeo1fNE.js.map +1 -0
  7. package/dist/chunks/{ghost-search-BvBFa9su.js → ghost-search-AmVXd0zE.js} +2 -2
  8. package/dist/chunks/{ghost-search-BvBFa9su.js.map → ghost-search-AmVXd0zE.js.map} +1 -1
  9. package/dist/chunks/trace-Hku-rImp.js +1706 -0
  10. package/dist/chunks/trace-Hku-rImp.js.map +1 -0
  11. package/dist/components/data-table.js +2 -2
  12. package/dist/components/date-picker.js +1 -1
  13. package/dist/components/phone-input.js +3 -3
  14. package/dist/components/phone-input.js.map +1 -1
  15. package/dist/components/trace.js +38 -37
  16. package/dist/index.js +130 -129
  17. package/dist/sections/basic-page.js +2 -2
  18. package/dist/src/components/data-table/data-table.d.ts +8 -6
  19. package/dist/src/components/date-picker/date-picker.d.ts +28 -1
  20. package/dist/src/components/trace/index.d.ts +1 -1
  21. package/dist/src/components/trace/layout.d.ts +11 -5
  22. package/dist/src/components/trace/trace.d.ts +5 -27
  23. package/dist/src/sections/basic-page/basic-page.d.ts +12 -1
  24. package/package.json +1 -1
  25. package/dist/chunks/basic-page-CYDwfVjO.js.map +0 -1
  26. package/dist/chunks/data-table-DcwCgXJU.js +0 -293
  27. package/dist/chunks/data-table-DcwCgXJU.js.map +0 -1
  28. package/dist/chunks/date-picker-Bwa6J4ik.js +0 -381
  29. package/dist/chunks/date-picker-Bwa6J4ik.js.map +0 -1
  30. package/dist/chunks/trace-Ba1RMBfk.js +0 -1645
  31. package/dist/chunks/trace-Ba1RMBfk.js.map +0 -1
@@ -1,44 +1,45 @@
1
1
  "use client";
2
- import { A as s, B as e, C as i, D as n, E as r, F as l, I as t, L as o, M as p, N as c, O as T, P as I, R as S, S as m, T as u, _ as d, a as v, b, c as w, d as V, f, g as D, h as _, i as x, j as L, k as g, l as k, m as A, n as E, o as F, p as N, r as z, s as B, t as O, u as P, v as R, w as W, x as y, y as C, z as G } from "../chunks/trace-Ba1RMBfk.js";
2
+ import { A as s, B as e, C as i, D as n, E as l, F as r, I as t, L as o, M as p, N as c, O as T, P as u, R as I, S, T as m, V as d, _ as v, a as b, b as V, c as w, d as f, f as D, g as L, h as _, i as k, j as x, k as g, l as A, m as E, n as F, o as N, p as y, r as z, s as B, t as O, u as P, v as R, w as W, x as C, y as G, z as K } from "../chunks/trace-Hku-rImp.js";
3
3
  export {
4
- m as FULL_VIEW,
5
- f as GEN_AI_KINDS,
6
- i as MIN_VIEW_WIDTH,
7
- C as SpanPrimitive,
4
+ i as FULL_VIEW,
5
+ y as GEN_AI_KINDS,
6
+ W as MIN_VIEW_WIDTH,
7
+ V as SpanPrimitive,
8
8
  O as Trace,
9
- W as allCollapsed,
10
- u as ancestorIds,
11
- N as attribute,
12
- A as attributeText,
13
- x as axisTicks,
14
- v as barGeometry,
15
- r as buildSpanTree,
16
- n as clampView,
17
- T as collapseAllIds,
18
- g as collapseOneLevel,
19
- s as deriveSpanTree,
20
- L as expandOneLevel,
21
- p as filterSpans,
22
- E as footerTotals,
23
- F as formatDuration,
9
+ m as allCollapsed,
10
+ l as ancestorIds,
11
+ E as attribute,
12
+ _ as attributeText,
13
+ k as axisTicks,
14
+ b as barGeometry,
15
+ n as buildSpanTree,
16
+ T as clampView,
17
+ g as collapseAllIds,
18
+ s as collapseOneLevel,
19
+ x as deriveSpanTree,
20
+ p as expandOneLevel,
21
+ c as filterSpans,
22
+ F as footerTotals,
23
+ N as formatDuration,
24
24
  B as formatTick,
25
- _ as genAIKind,
26
- c as isFullView,
25
+ L as genAIKind,
26
+ u as isFullView,
27
27
  w as labeledTicks,
28
- k as niceStep,
29
- P as normalizeSpans,
30
- I as panView,
31
- D as peerService,
32
- d as spanDecorationIcon,
33
- V as spanDuration,
34
- R as spanPills,
35
- l as spanTimelineBarVars,
28
+ A as layoutTickLabels,
29
+ P as niceStep,
30
+ f as normalizeSpans,
31
+ r as panView,
32
+ v as peerService,
33
+ R as spanDecorationIcon,
34
+ D as spanDuration,
35
+ G as spanPills,
36
+ t as spanTimelineBarVars,
36
37
  z as traceBulletInset,
37
- t as traceRange,
38
- b as useSpan,
39
- y as useSpanTree,
40
- o as viewFraction,
41
- S as viewToRange,
42
- G as visibleSpans,
43
- e as zoomView
38
+ o as traceRange,
39
+ C as useSpan,
40
+ S as useSpanTree,
41
+ I as viewFraction,
42
+ K as viewToRange,
43
+ e as visibleSpans,
44
+ d as zoomView
44
45
  };
package/dist/index.js CHANGED
@@ -3,181 +3,182 @@ import { t as s } from "./chunks/cn-ChIgwEl3.js";
3
3
  import { t as r } from "./chunks/is-react-component-DSnjtBmo.js";
4
4
  import { t as e } from "./chunks/resolve-variant-CcD8iG5l.js";
5
5
  import { n as E, t as S } from "./chunks/link-provider-DXzDQ08N.js";
6
- import { BAR_RISE_PX as n, BLUR_PX as m, EASE_POP as I, EASE_STACK as T, FADE_ENTRANCE as p, FADE_SWAP as A, PRESS_SCALE as R, PRESS_SCALE_ROW as l, RISE_PX as C, SPRING_ENTRANCE as B, SPRING_PRESS as f, SPRING_PRESS_INLINE as N, SPRING_PRESS_QUICK as P, SPRING_SETTLE as u, TRAVEL_LINEAR as L, fadeThroughBlur as D, riseIn as c } from "./motion.js";
6
+ import { BAR_RISE_PX as n, BLUR_PX as m, EASE_POP as I, EASE_STACK as T, FADE_ENTRANCE as p, FADE_SWAP as A, PRESS_SCALE as R, PRESS_SCALE_ROW as l, RISE_PX as C, SPRING_ENTRANCE as B, SPRING_PRESS as f, SPRING_PRESS_INLINE as N, SPRING_PRESS_QUICK as P, SPRING_SETTLE as u, TRAVEL_LINEAR as L, fadeThroughBlur as c, riseIn as D } from "./motion.js";
7
7
  import { n as V, r as d, t as U } from "./chunks/use-press-pulse-IbNstUT0.js";
8
- import { n as F, t as b } from "./chunks/use-copy-D6JwKUll.js";
8
+ import { n as b, t as F } from "./chunks/use-copy-D6JwKUll.js";
9
9
  import "./utils.js";
10
- import { a as h, c as v, d as k, i as w, l as W, n as x, o as H, r as z, s as K, t as y, u as X } from "./chunks/button-CdqS_t5a.js";
10
+ import { a as h, c as k, d as v, i as w, l as W, n as x, o as H, r as y, s as z, t as K, u as X } from "./chunks/button-CdqS_t5a.js";
11
11
  import { a as Z, c as j, i as J, l as Q, n as q, o as $, r as aa, s as sa, t as ta } from "./chunks/error-BAQgnde7.js";
12
- import { A as oa, B as ea, C as ia, D as Ea, E as Sa, F as _a, I as na, L as ma, M as Ia, N as Ta, O as pa, P as Aa, R as Ra, S as la, T as Ca, _ as Ba, a as fa, b as Na, c as Pa, d as ua, f as La, g as Da, h as ca, i as Oa, j as Va, k as da, l as Ua, m as Ga, n as Fa, o as ba, p as Ma, r as ga, s as ha, t as va, u as ka, v as wa, w as Wa, x as xa, y as Ha, z as za } from "./chunks/trace-Ba1RMBfk.js";
13
- import { n as ya, t as Xa } from "./chunks/date-picker-Bwa6J4ik.js";
14
- import { n as Za, t as ja } from "./chunks/copy-button-B_B15mEi.js";
15
- import { a as Qa, c as qa, d as $a, i as as, l as ss, n as ts, o as rs, r as os, s as es, t as is, u as Es } from "./chunks/sidebar-DRPe5CAh.js";
16
- import { t as _s } from "./chunks/input-DjvZoF8v.js";
17
- import { i as ms, n as Is, r as Ts, t as ps } from "./chunks/filter-bar-D9lBBr4z.js";
18
- import { a as Rs } from "./chunks/data-table-DcwCgXJU.js";
19
- import { n as Cs, t as Bs } from "./chunks/code-block-BuDIo8Q0.js";
20
- import { n as Ns, t as Ps } from "./chunks/stat-hnNqjWVG.js";
21
- import { t as Ls } from "./chunks/calendar-4OFiCLAv.js";
22
- import { t as cs } from "./chunks/close-button-GvqWbLl0.js";
23
- import { t as Vs } from "./chunks/input-group-fc9_jD4d.js";
24
- import { n as Us, t as Gs } from "./chunks/card-DhDwtSi9.js";
25
- import { n as bs, t as Ms } from "./chunks/dialog-BwfUFn6B.js";
26
- import { i as hs, n as vs, r as ks, t as ws } from "./chunks/status-view-C8tabjDu.js";
27
- import { a as xs, c as Hs, d as zs, f as Ks, i as ys, l as Xs, m as Ys, n as Zs, o as js, p as Js, r as Qs, s as qs, t as $s, u as at } from "./chunks/basic-page-CYDwfVjO.js";
28
- import { i as tt, n as rt, r as ot, t as et } from "./chunks/legend-C0mU7dqd.js";
12
+ import { A as oa, B as ea, C as ia, D as Ea, E as Sa, F as _a, I as na, L as ma, M as Ia, N as Ta, O as pa, P as Aa, R as Ra, S as la, T as Ca, V as Ba, _ as fa, a as Na, b as Pa, c as ua, d as La, f as ca, g as Da, h as Oa, i as Va, j as da, k as Ua, l as Ga, m as ba, n as Fa, o as Ma, p as ga, r as ha, s as ka, t as va, u as wa, v as Wa, w as xa, x as Ha, y as ya, z as za } from "./chunks/trace-Hku-rImp.js";
13
+ import { n as Xa, t as Ya } from "./chunks/date-picker-Ddeo1fNE.js";
14
+ import { n as ja, t as Ja } from "./chunks/copy-button-B_B15mEi.js";
15
+ import { a as qa, c as $a, d as as, i as ss, l as ts, n as rs, o as os, r as es, s as is, t as Es, u as Ss } from "./chunks/sidebar-DRPe5CAh.js";
16
+ import { t as ns } from "./chunks/input-DjvZoF8v.js";
17
+ import { i as Is, n as Ts, r as ps, t as As } from "./chunks/filter-bar-D9lBBr4z.js";
18
+ import { a as ls } from "./chunks/data-table-BeUwsjmX.js";
19
+ import { n as Bs, t as fs } from "./chunks/code-block-BuDIo8Q0.js";
20
+ import { n as Ps, t as us } from "./chunks/stat-hnNqjWVG.js";
21
+ import { t as cs } from "./chunks/calendar-4OFiCLAv.js";
22
+ import { t as Os } from "./chunks/close-button-GvqWbLl0.js";
23
+ import { t as ds } from "./chunks/input-group-fc9_jD4d.js";
24
+ import { n as Gs, t as bs } from "./chunks/card-DhDwtSi9.js";
25
+ import { n as Ms, t as gs } from "./chunks/dialog-BwfUFn6B.js";
26
+ import { i as ks, n as vs, r as ws, t as Ws } from "./chunks/status-view-C8tabjDu.js";
27
+ import { a as Hs, c as ys, d as zs, f as Ks, i as Xs, l as Ys, m as Zs, n as js, o as Js, p as Qs, r as qs, s as $s, t as at, u as st } from "./chunks/basic-page-C3qjXfBe.js";
28
+ import { i as rt, n as ot, r as et, t as it } from "./chunks/legend-C0mU7dqd.js";
29
29
  import "./components/chart.js";
30
- import { t as St } from "./chunks/bar-chart-DIALC2_z.js";
31
- import { t as nt } from "./chunks/line-chart-VuMYKzW3.js";
32
- import { i as It, n as Tt, r as pt, t as At } from "./chunks/log-list-BERiO4UJ.js";
33
- import { t as lt } from "./chunks/description-list-C-mwe4ki.js";
30
+ import { t as _t } from "./chunks/bar-chart-DIALC2_z.js";
31
+ import { t as mt } from "./chunks/line-chart-VuMYKzW3.js";
32
+ import { i as Tt, n as pt, r as At, t as Rt } from "./chunks/log-list-BERiO4UJ.js";
33
+ import { t as Ct } from "./chunks/description-list-C-mwe4ki.js";
34
34
  export {
35
- $s as AUTO_SAVE_DELAY_MS,
35
+ at as AUTO_SAVE_DELAY_MS,
36
36
  n as BAR_RISE_PX,
37
- Zs as BASIC_PAGE_CALLOUT,
38
- Qs as BASIC_PAGE_CARD,
39
- ys as BASIC_PAGE_ITEM,
40
- xs as BASIC_PAGE_ITEM_PANEL,
41
- js as BASIC_PAGE_ITEM_PANEL_DIVIDED,
42
- qs as BASIC_PAGE_ROW,
37
+ js as BASIC_PAGE_CALLOUT,
38
+ qs as BASIC_PAGE_CARD,
39
+ Xs as BASIC_PAGE_ITEM,
40
+ Hs as BASIC_PAGE_ITEM_PANEL,
41
+ Js as BASIC_PAGE_ITEM_PANEL_DIVIDED,
42
+ $s as BASIC_PAGE_ROW,
43
43
  m as BLUR_PX,
44
- y as BUTTON_COLORS,
44
+ K as BUTTON_COLORS,
45
45
  x as BUTTON_SHAPES,
46
- z as BUTTON_SIZES,
46
+ y as BUTTON_SIZES,
47
47
  w as BUTTON_VARIANTS,
48
- St as BarChart,
49
- Hs as BasicPage,
48
+ _t as BarChart,
49
+ ys as BasicPage,
50
50
  h as Button,
51
51
  H as ButtonLink,
52
- Gs as CARD_SURFACE,
53
- ot as CHART_SLOTS,
54
- Xs as CONDENSE_BAR_ENTER,
55
- at as CONDENSE_BAR_RISE_PX,
52
+ bs as CARD_SURFACE,
53
+ et as CHART_SLOTS,
54
+ Ys as CONDENSE_BAR_ENTER,
55
+ st as CONDENSE_BAR_RISE_PX,
56
56
  zs as CONDENSE_BAR_TRAVEL,
57
57
  U as CONTROL_PRESS_SCALE,
58
58
  V as CONTROL_PRESS_SPRING,
59
- ja as COPY_BUTTON_SIZES,
60
- b as COPY_FEEDBACK_MS,
61
- Ls as Calendar,
62
- Us as Card,
63
- et as ChartLegend,
64
- rt as ChartSwatch,
65
- cs as CloseButton,
66
- Bs as CodeBlock,
67
- Za as CopyButton,
68
- Xa as DatePicker,
69
- lt as DescriptionList,
70
- Ms as Dialog,
59
+ Ja as COPY_BUTTON_SIZES,
60
+ F as COPY_FEEDBACK_MS,
61
+ cs as Calendar,
62
+ Gs as Card,
63
+ it as ChartLegend,
64
+ ot as ChartSwatch,
65
+ Os as CloseButton,
66
+ fs as CodeBlock,
67
+ ja as CopyButton,
68
+ Ya as DatePicker,
69
+ Ct as DescriptionList,
70
+ gs as Dialog,
71
71
  I as EASE_POP,
72
72
  T as EASE_STACK,
73
- K as EFFECT_BUTTON_SIZES,
74
- v as EffectButton,
73
+ z as EFFECT_BUTTON_SIZES,
74
+ k as EffectButton,
75
75
  W as EffectButtonLink,
76
76
  ta as Error,
77
77
  q as ErrorView,
78
78
  p as FADE_ENTRANCE,
79
79
  A as FADE_SWAP,
80
- ps as FILTER_DATE_PRESETS,
81
- la as FULL_VIEW,
82
- Is as FilterBar,
80
+ As as FILTER_DATE_PRESETS,
81
+ ia as FULL_VIEW,
82
+ Ts as FilterBar,
83
83
  aa as GENERIC_ERROR_TITLE,
84
- La as GEN_AI_KINDS,
85
- _s as Input,
86
- Vs as InputGroup,
87
- nt as LineChart,
84
+ ga as GEN_AI_KINDS,
85
+ ns as Input,
86
+ ds as InputGroup,
87
+ mt as LineChart,
88
88
  S as LinkProvider,
89
- At as LogList,
90
- ia as MIN_VIEW_WIDTH,
89
+ Rt as LogList,
90
+ xa as MIN_VIEW_WIDTH,
91
91
  R as PRESS_SCALE,
92
92
  l as PRESS_SCALE_ROW,
93
93
  C as RISE_PX,
94
- is as SIDEBAR_HEADER_INSET,
95
- ts as SIDEBAR_ITEM,
96
- os as SIDEBAR_ITEM_ACTIVE,
97
- as as SIDEBAR_ITEM_INACTIVE,
98
- Qa as SIDEBAR_ROOT,
99
- rs as SIDEBAR_ROOT_BASE,
100
- es as SIDEBAR_ROOT_INSET,
101
- qa as SIDEBAR_SUBMENU_CHEVRON,
102
- ss as SIDEBAR_SUBMENU_LIST_INDENT,
103
- Es as SIDEBAR_SUBMENU_TRIGGER_CHILD_ACTIVE,
94
+ Es as SIDEBAR_HEADER_INSET,
95
+ rs as SIDEBAR_ITEM,
96
+ es as SIDEBAR_ITEM_ACTIVE,
97
+ ss as SIDEBAR_ITEM_INACTIVE,
98
+ qa as SIDEBAR_ROOT,
99
+ os as SIDEBAR_ROOT_BASE,
100
+ is as SIDEBAR_ROOT_INSET,
101
+ $a as SIDEBAR_SUBMENU_CHEVRON,
102
+ ts as SIDEBAR_SUBMENU_LIST_INDENT,
103
+ Ss as SIDEBAR_SUBMENU_TRIGGER_CHILD_ACTIVE,
104
104
  B as SPRING_ENTRANCE,
105
105
  f as SPRING_PRESS,
106
106
  N as SPRING_PRESS_INLINE,
107
107
  P as SPRING_PRESS_QUICK,
108
108
  u as SPRING_SETTLE,
109
- ws as STATUS_VIEW,
109
+ Ws as STATUS_VIEW,
110
110
  vs as STATUS_VIEW_COPY,
111
- ks as STATUS_VIEW_SIZES,
112
- $a as Sidebar,
113
- Ha as SpanPrimitive,
114
- Ps as Stat,
115
- Ns as StatGroup,
116
- hs as StatusView,
111
+ ws as STATUS_VIEW_SIZES,
112
+ as as Sidebar,
113
+ Pa as SpanPrimitive,
114
+ us as Stat,
115
+ Ps as StatGroup,
116
+ ks as StatusView,
117
117
  L as TRAVEL_LINEAR,
118
118
  va as Trace,
119
- Wa as allCollapsed,
120
- Ca as ancestorIds,
121
- Ma as attribute,
122
- Ga as attributeText,
123
- Oa as axisTicks,
124
- fa as barGeometry,
125
- Sa as buildSpanTree,
119
+ Ca as allCollapsed,
120
+ Sa as ancestorIds,
121
+ ba as attribute,
122
+ Oa as attributeText,
123
+ Va as axisTicks,
124
+ Na as barGeometry,
125
+ Ea as buildSpanTree,
126
126
  X as buttonVariants,
127
127
  J as capitalizeFirst,
128
- tt as chartColor,
129
- Ea as clampView,
128
+ rt as chartColor,
129
+ pa as clampView,
130
130
  s as cn,
131
- pa as collapseAllIds,
132
- da as collapseOneLevel,
133
- Rs as createColumns,
134
- oa as deriveSpanTree,
131
+ Ua as collapseAllIds,
132
+ oa as collapseOneLevel,
133
+ ls as createColumns,
134
+ da as deriveSpanTree,
135
135
  Z as describeError,
136
- k as effectButtonVariants,
137
- Va as expandOneLevel,
138
- D as fadeThroughBlur,
139
- Ia as filterSpans,
136
+ v as effectButtonVariants,
137
+ Ia as expandOneLevel,
138
+ c as fadeThroughBlur,
139
+ Ta as filterSpans,
140
140
  Fa as footerTotals,
141
141
  Ks as formToasts,
142
- ya as formatDateLabel,
143
- ba as formatDuration,
144
- Ts as formatFilterValue,
145
- ha as formatTick,
146
- ca as genAIKind,
142
+ Xa as formatDateLabel,
143
+ Ma as formatDuration,
144
+ ps as formatFilterValue,
145
+ ka as formatTick,
146
+ Da as genAIKind,
147
147
  $ as httpReasonPhrase,
148
148
  sa as httpStatusExplanation,
149
- ms as isFilterSet,
150
- Ta as isFullView,
149
+ Is as isFilterSet,
150
+ Aa as isFullView,
151
151
  j as isProblem,
152
152
  r as isReactComponent,
153
- Pa as labeledTicks,
154
- Tt as logStatusColor,
155
- pt as logStatusLabel,
156
- Ua as niceStep,
157
- ka as normalizeSpans,
158
- Aa as panView,
153
+ ua as labeledTicks,
154
+ Ga as layoutTickLabels,
155
+ pt as logStatusColor,
156
+ At as logStatusLabel,
157
+ wa as niceStep,
158
+ La as normalizeSpans,
159
+ _a as panView,
159
160
  Q as parseProblem,
160
- Da as peerService,
161
+ fa as peerService,
161
162
  e as resolveVariant,
162
- c as riseIn,
163
- Ba as spanDecorationIcon,
164
- ua as spanDuration,
165
- wa as spanPills,
166
- _a as spanTimelineBarVars,
167
- Cs as tokenizeJson,
168
- ga as traceBulletInset,
169
- na as traceRange,
170
- It as truncateMiddle,
171
- Js as useAutoSave,
172
- Ys as useCondense,
173
- F as useCopy,
174
- bs as useDialogPending,
163
+ D as riseIn,
164
+ Wa as spanDecorationIcon,
165
+ ca as spanDuration,
166
+ ya as spanPills,
167
+ na as spanTimelineBarVars,
168
+ Bs as tokenizeJson,
169
+ ha as traceBulletInset,
170
+ ma as traceRange,
171
+ Tt as truncateMiddle,
172
+ Qs as useAutoSave,
173
+ Zs as useCondense,
174
+ b as useCopy,
175
+ Ms as useDialogPending,
175
176
  E as useLinkComponent,
176
177
  d as usePressPulse,
177
- Na as useSpan,
178
- xa as useSpanTree,
179
- ma as viewFraction,
180
- Ra as viewToRange,
181
- za as visibleSpans,
182
- ea as zoomView
178
+ Ha as useSpan,
179
+ la as useSpanTree,
180
+ Ra as viewFraction,
181
+ za as viewToRange,
182
+ ea as visibleSpans,
183
+ Ba as zoomView
183
184
  };
@@ -1,6 +1,6 @@
1
1
  "use client";
2
- import { a as s } from "../chunks/data-table-DcwCgXJU.js";
3
- import { a as E, c as a, d as C, f as S, i as I, l as e, m as o, n as B, o as P, p as N, r, s as t, t as D, u as R } from "../chunks/basic-page-CYDwfVjO.js";
2
+ import { a as s } from "../chunks/data-table-BeUwsjmX.js";
3
+ import { a as E, c as a, d as C, f as S, i as I, l as e, m as o, n as B, o as P, p as N, r, s as t, t as D, u as R } from "../chunks/basic-page-C3qjXfBe.js";
4
4
  export {
5
5
  D as AUTO_SAVE_DELAY_MS,
6
6
  B as BASIC_PAGE_CALLOUT,
@@ -77,13 +77,13 @@ declare const features: {
77
77
  columnMeta: DataTableColumnMeta;
78
78
  };
79
79
  export type DataTableFeatures = typeof features;
80
- /** Body row height — header stays `h-10` on every size. */
80
+ /** Body row height — the header keeps its own `h-10` on every size. */
81
81
  export declare const DATA_TABLE_SIZES: {
82
82
  sm: {
83
83
  classes: string;
84
84
  description: string;
85
85
  };
86
- md: {
86
+ base: {
87
87
  classes: string;
88
88
  description: string;
89
89
  };
@@ -218,10 +218,12 @@ export interface DataTableProps<TData extends RowData> extends Omit<ComponentPro
218
218
  */
219
219
  layout?: "auto" | "fixed";
220
220
  /**
221
- * Body row height. `md` (the default) is 48px — one line of body type.
222
- * `sm` is 40px, the header's own height, for a dense list scanned more
223
- * than read. `lg` is 56px, for a two-line cell (a number and a caption)
224
- * that would crowd `md`. The header row stays 40px on every size.
221
+ * Body row height and the type that comes with it. `base` (the default)
222
+ * is 48px rows at 14px — one line of body type. `sm` is 40px at 13px,
223
+ * the header's own height, for a dense list scanned more than read.
224
+ * `lg` is 56px at 16px, for a two-line cell (a number and a caption)
225
+ * that would crowd `base`. The header row keeps its 40px on every size
226
+ * and follows the type.
225
227
  */
226
228
  size?: DataTableSize;
227
229
  ref?: Ref<HTMLDivElement>;
@@ -16,7 +16,7 @@ export type DatePickerTime = "hour" | "minute" | "second";
16
16
  */
17
17
  export declare function dateFieldMask(locales?: Intl.LocalesArgument, time?: DatePickerTime): string;
18
18
  /**
19
- * The figures in the field — `09/12/2026`, or `09/10/2026 – 09/13/2026` for a
19
+ * The figures in the field — `09/12/2026`, or `09/10/2026–09/13/2026` for a
20
20
  * span, in the viewer's locale. An empty or half-finished range prints just
21
21
  * the day that is settled; nothing selected prints nothing. Pass `time` to
22
22
  * print the clock too, at the precision that was asked for.
@@ -25,6 +25,15 @@ export declare function dateFieldMask(locales?: Intl.LocalesArgument, time?: Dat
25
25
  * a month's name is the one part of a date nobody wants to spell.
26
26
  */
27
27
  export declare function formatDateLabel(value: Date | DateRange | undefined, locales?: Intl.LocalesArgument, time?: DatePickerTime): string;
28
+ /**
29
+ * A window the page offers by name — `Last 7 days` — beside the calendar.
30
+ * Pass a function for anything measured from now, so it is resolved at the
31
+ * click rather than at render.
32
+ */
33
+ export interface DatePickerPreset<T> {
34
+ label: string;
35
+ value: T | (() => T);
36
+ }
28
37
  interface DatePickerBaseProps {
29
38
  /** Field label (associated for accessibility). */
30
39
  label?: ReactNode;
@@ -42,6 +51,13 @@ interface DatePickerBaseProps {
42
51
  required?: boolean;
43
52
  /** Size variant. @default "md" */
44
53
  size?: DatePickerSize;
54
+ /**
55
+ * `fill` takes the column it is in, like every other field. `hug` shrinks
56
+ * to the words it is showing, for a field that sits in a toolbar or beside
57
+ * a title rather than in a form.
58
+ * @default "fill"
59
+ */
60
+ width?: "fill" | "hug";
45
61
  /**
46
62
  * Ask for a time as well as a day, this fine. `hour` sets the hour and
47
63
  * zeroes the rest, `minute` the hour and minute, `second` all three. Omit
@@ -66,12 +82,23 @@ export interface DatePickerSingleProps extends DatePickerBaseProps {
66
82
  value?: Date;
67
83
  defaultValue?: Date;
68
84
  onValueChange?: (value: Date | undefined) => void;
85
+ /** Named days offered beside the calendar. */
86
+ presets?: DatePickerPreset<Date>[];
69
87
  }
70
88
  export interface DatePickerRangeProps extends DatePickerBaseProps {
71
89
  mode: "range";
72
90
  value?: DateRange;
73
91
  defaultValue?: DateRange;
74
92
  onValueChange?: (value: DateRange | undefined) => void;
93
+ /** Named windows offered beside the calendar — `Last 7 days`, and so on. */
94
+ presets?: DatePickerPreset<DateRange>[];
95
+ /**
96
+ * Shortest and longest span the viewer may pick, counted in days. A pick
97
+ * that would break either restarts the span from the day just clicked, so
98
+ * the bound is felt rather than explained.
99
+ */
100
+ minDays?: number;
101
+ maxDays?: number;
75
102
  }
76
103
  export type DatePickerProps = DatePickerSingleProps | DatePickerRangeProps;
77
104
  /**
@@ -2,4 +2,4 @@ export { Trace, traceBulletInset, footerTotals, type TraceWaterfallProps, type T
2
2
  export { SpanPrimitive, useSpan, useSpanTree, type SpanTreeContextValue, type SpanProviderProps, type SpanChildrenProps, type SpanRootProps, type SpanIndentProps, type SpanCollapseToggleProps, type SpanStatusIndicatorProps, type SpanTypeBadgeProps, type SpanNameProps, type SpanTimelineProps, type SpanTimelineBarProps, } from './span-primitive';
3
3
  export { deriveSpanTree, visibleSpans, buildSpanTree, ancestorIds, collapseAllIds, collapseOneLevel, expandOneLevel, allCollapsed, traceRange, clampView, viewToRange, zoomView, panView, viewFraction, isFullView, spanTimelineBarVars, filterSpans, FULL_VIEW, MIN_VIEW_WIDTH, type SpanData, type SpanStatus, type SpanKind, type SpanItemState, type SpanTree, type SpanTimelineRange, type SpanView, } from './span-tree';
4
4
  export { spanDecorationIcon, spanPills, genAIKind, peerService, attribute, attributeText, GEN_AI_KINDS, type SpanPill, type SpanDecorationIcon, type GenAIKind, } from './decorations';
5
- export { normalizeSpans, spanDuration, barGeometry, axisTicks, niceStep, formatDuration, formatTick, labeledTicks, type AxisTick, type TraceWaterfallSpan, type TraceSpanStatus, type TraceSpanKind, type TraceRange, } from './layout';
5
+ export { normalizeSpans, spanDuration, barGeometry, axisTicks, niceStep, formatDuration, formatTick, labeledTicks, layoutTickLabels, type AxisTick, type TickLabel, type TraceWaterfallSpan, type TraceSpanStatus, type TraceSpanKind, type TraceRange, } from './layout';
@@ -64,13 +64,19 @@ export declare function axisTicks(startMs: number, endMs: number): AxisTick[];
64
64
  export declare function formatDuration(ms: number): string;
65
65
  /** An axis tick's label: whole numbers where the step allows, "2 s" past a second. */
66
66
  export declare function formatTick(ms: number): string;
67
+ export interface TickLabel extends AxisTick {
68
+ /** Which side of the mark the label sits: after it, or ending at it. */
69
+ align: "start" | "end";
70
+ }
67
71
  /**
68
- * Which tick marks get a label at this track width. Marks themselves
69
- * always draw; a label hides when it would overlap the previous one.
70
- * The last tick is treated as right-aligned so it never runs past the
71
- * track's edge — at a narrow axis that often means dropping the label
72
- * before it (`40 ms` next to `50 ms` on a ~335px track).
72
+ * Which tick marks get a label at this track width, and on which side.
73
+ * Marks themselves always draw; a label hides when it would overlap the
74
+ * previous one. A label that would run past the track's end ends at its
75
+ * mark instead, and the label before it yields if the two would touch
76
+ * (`40 ms` next to `50 ms` on a ~335px track).
73
77
  */
78
+ export declare function layoutTickLabels(ticks: readonly AxisTick[], trackPx: number): TickLabel[];
79
+ /** The ticks that get a label, in ms — `layoutTickLabels` without the sides. */
74
80
  export declare function labeledTicks(ticks: readonly AxisTick[], trackPx: number): number[];
75
81
  /** A fraction as a CSS percentage, rounded so floats never leak into styles. */
76
82
  export declare function percent(fraction: number): string;
@@ -7,7 +7,7 @@ import { TraceWaterfallSpan } from './layout';
7
7
  */
8
8
  export declare function traceBulletInset(depth: number): string;
9
9
  export type TraceWaterfallShortcuts = "focus" | "global" | false;
10
- export interface TraceWaterfallProps extends Omit<ComponentProps<"section">, "children" | "onSelect" | "title"> {
10
+ export interface TraceWaterfallProps extends Omit<ComponentProps<"section">, "children" | "onSelect"> {
11
11
  spans: readonly TraceWaterfallSpan[];
12
12
  /**
13
13
  * The current time on the spans' clock, for running spans: their bars
@@ -58,19 +58,6 @@ export interface TraceWaterfallProps extends Omit<ComponentProps<"section">, "ch
58
58
  * outside a field, `false` for none. @default "focus"
59
59
  */
60
60
  shortcuts?: TraceWaterfallShortcuts;
61
- /** The lead on the axis row — "Waterfall". Omit for none. */
62
- title?: ReactNode;
63
- /**
64
- * Optional copy after `title` on the axis row. Totals live in the
65
- * footer by default; pass a node here only to put something else
66
- * beside the title.
67
- */
68
- summary?: ReactNode;
69
- /**
70
- * Wall-clock start of the trace, in ms. The footer prints
71
- * `Started 12:59:07.206` when this is a readable time.
72
- */
73
- startedAt?: number;
74
61
  /**
75
62
  * The legend and totals under the rows. Default when there are
76
63
  * spans; pass `null` to hide it, or a node (`<Trace.Waterfall.Footer />`)
@@ -79,29 +66,20 @@ export interface TraceWaterfallProps extends Omit<ComponentProps<"section">, "ch
79
66
  footer?: ReactNode;
80
67
  ref?: Ref<HTMLElement>;
81
68
  }
82
- declare function Waterfall({ spans, now: nowProp, selectedId, onSelect, renderSpanDetail, defaultCollapsed, collapsed, onCollapsedChange, foldControls, search, query: queryProp, onQueryChange, defaultView, view, onViewChange, shortcuts, title, summary, startedAt, footer, className, ...props }: TraceWaterfallProps): import("react").JSX.Element;
83
- export declare function footerTotals({ spanCount, errorCount, orphanCount, durationMs, window, startedAt, }: {
69
+ declare function Waterfall({ spans, now: nowProp, selectedId, onSelect, renderSpanDetail, defaultCollapsed, collapsed, onCollapsedChange, foldControls, search, query: queryProp, onQueryChange, defaultView, view, onViewChange, shortcuts, footer, className, ...props }: TraceWaterfallProps): import("react").JSX.Element;
70
+ export declare function footerTotals({ spanCount, errorCount, orphanCount, durationMs, }: {
84
71
  spanCount: number;
85
72
  errorCount: number;
86
73
  orphanCount?: number;
87
74
  durationMs: number;
88
- /** The zoom window, in ms from the trace's start, when zoomed. */
89
- window?: {
90
- startMs: number;
91
- endMs: number;
92
- } | null;
93
- startedAt?: number;
94
75
  }): string[];
95
- export interface WaterfallFooterProps extends ComponentProps<"div"> {
96
- /** Wall-clock start; falls back to the waterfall's `startedAt`. */
97
- startedAt?: number;
98
- }
76
+ export type WaterfallFooterProps = ComponentProps<"div">;
99
77
  /**
100
78
  * The waterfall's legend and totals. Renders inside `Trace.Waterfall`
101
79
  * so it can read the spans; pass it as `footer` to keep the default
102
80
  * chrome when replacing the slot.
103
81
  */
104
- declare function WaterfallFooter({ startedAt: startedAtProp, className, ...props }: WaterfallFooterProps): import("react").JSX.Element;
82
+ declare function WaterfallFooter({ className, ...props }: WaterfallFooterProps): import("react").JSX.Element;
105
83
  export type TraceLogLevel = "debug" | "info" | "warn" | "error";
106
84
  export interface TraceLog {
107
85
  id?: string;
@@ -95,6 +95,11 @@ export interface BasicPageRootProps extends ComponentProps<"div"> {
95
95
  * starting values would blink it out. The React page taking over from
96
96
  * it stays put too — it finds the marker in the document at its first
97
97
  * render, while the twin is still there.
98
+ *
99
+ * Not needed for markup React hydrates in place (a server-rendered
100
+ * page): the parts know a hydration pass from a mount and stay at rest
101
+ * on their own. This is for the twin that mounts fresh, beside or over
102
+ * markup it does not hydrate.
98
103
  */
99
104
  prerendered?: boolean;
100
105
  }
@@ -222,7 +227,8 @@ export interface BasicPageStackProps extends Omit<ComponentProps<"div">, RevealM
222
227
  * second the page was painted before React and is already there. A
223
228
  * loading part in some other page (one still on screen while this one
224
229
  * mounts) does not count. `true` always enters, except inside a
225
- * `Root prerendered`; `false` never does.
230
+ * `Root prerendered` or while hydrating server markup (the page is on
231
+ * screen either way); `false` never does.
226
232
  */
227
233
  enter?: boolean;
228
234
  ref?: Ref<HTMLDivElement>;
@@ -253,6 +259,11 @@ export interface BasicPageStackProps extends Omit<ComponentProps<"div">, RevealM
253
259
  * nothing inside that root does either, and the React page taking over
254
260
  * finds the marker in the document and stays put on its own;
255
261
  * `enter={false}` says so outright for markup that must never move.
262
+ * - **A page the server rendered and React hydrates** stays put with no
263
+ * flag at all: the hydration pass renders what the server did, at rest,
264
+ * and the entrance waits for a page React mounts itself (a navigation).
265
+ * An `enter` on a hydrating stack does not override this either: the
266
+ * page is on screen, and starting values would blink it out.
256
267
  * - **A region the skeleton couldn't predict** (a list of unknown length)
257
268
  * — `Reveal` rises that region in once its shape is known.
258
269
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@photon-ai/pho-ui",
3
- "version": "3.0.0",
3
+ "version": "4.2.0",
4
4
  "description": "Pho Design System — Photon's React component library, built on Base UI",
5
5
  "license": "UNLICENSED",
6
6
  "repository": {