react-semaphor 0.1.311 → 0.1.313

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 (49) hide show
  1. package/dist/brand-studio/index.cjs +1 -1
  2. package/dist/brand-studio/index.js +4 -4
  3. package/dist/chunks/{braces-DwaAt32i.js → braces-NfG5hX2c.js} +1 -1
  4. package/dist/chunks/{braces-CSECDaJQ.js → braces-raPCNcS4.js} +1 -1
  5. package/dist/chunks/{chevrons-up-down-DJhB8JNW.js → chevrons-up-down-BYzO4q5w.js} +1 -1
  6. package/dist/chunks/{chevrons-up-down-3vBEM7eI.js → chevrons-up-down-DiWloubI.js} +1 -1
  7. package/dist/chunks/dashboard-controls-DMsmUQkB.js +2043 -0
  8. package/dist/chunks/dashboard-controls-wPVXTTiH.js +57 -0
  9. package/dist/chunks/dashboard-filter-controls-launcher-CqXgWEa1.js +1540 -0
  10. package/dist/chunks/dashboard-filter-controls-launcher-DBmNn4EY.js +11 -0
  11. package/dist/chunks/{dashboard-json-GL_IXTCk.js → dashboard-json-CHoCrAp0.js} +2 -2
  12. package/dist/chunks/{dashboard-json-B_rQbUUz.js → dashboard-json-DMFZLkws.js} +1 -1
  13. package/dist/chunks/{dashboard-summary-settings-dialog-CcszMc1A.js → dashboard-summary-settings-dialog-CZkn4rtm.js} +3 -3
  14. package/dist/chunks/{dashboard-summary-settings-dialog-DgqFlYl9.js → dashboard-summary-settings-dialog-DoxcpXjk.js} +1 -1
  15. package/dist/chunks/{edit-dashboard-visual-nGSsSTYx.js → edit-dashboard-visual-B0Ae_O25.js} +4534 -4470
  16. package/dist/chunks/edit-dashboard-visual-CIP9G-Bu.js +183 -0
  17. package/dist/chunks/{index-9v7DehZd.js → index-D7e2Eyp_.js} +34869 -34317
  18. package/dist/chunks/{index-CGCrm-dj.js → index-DjZqoaV5.js} +228 -228
  19. package/dist/chunks/{palette-CI2J34i6.js → palette-7yJYVEvk.js} +1 -1
  20. package/dist/chunks/{palette-C5o9bLo6.js → palette-CJTdBzJB.js} +1 -1
  21. package/dist/chunks/{resource-management-panel-CNmVHnCz.js → resource-management-panel-B1mhnY97.js} +1 -1
  22. package/dist/chunks/{resource-management-panel-DTg9_DI9.js → resource-management-panel-CSkNW3es.js} +3 -3
  23. package/dist/chunks/{save-CMv91_Hz.js → save-B8x5Vi0W.js} +1 -1
  24. package/dist/chunks/{save-Cpz6BWx9.js → save-DDX_vrED.js} +1 -1
  25. package/dist/chunks/{switch-Dhoqe3OE.js → switch-DEPWsRhf.js} +114 -113
  26. package/dist/chunks/{switch-otrSiyjH.js → switch-DPaKnsb8.js} +14 -14
  27. package/dist/chunks/use-create-flow-overlay-state-7LiC_vaL.js +16 -0
  28. package/dist/chunks/{use-create-flow-overlay-state-C8WGfC8T.js → use-create-flow-overlay-state-BHQjJwik.js} +511 -483
  29. package/dist/chunks/{use-visual-utils-BeJ73yvV.js → use-visual-utils-Bz7kjSrk.js} +1 -1
  30. package/dist/chunks/{use-visual-utils-RkPa2gqQ.js → use-visual-utils-Dw-uLgop.js} +2 -2
  31. package/dist/dashboard/index.cjs +1 -1
  32. package/dist/dashboard/index.js +1 -1
  33. package/dist/index.cjs +1 -1
  34. package/dist/index.js +76 -74
  35. package/dist/style.css +1 -1
  36. package/dist/surfboard/index.cjs +1 -1
  37. package/dist/surfboard/index.js +2 -2
  38. package/dist/types/dashboard.d.ts +1 -1
  39. package/dist/types/main.d.ts +76 -23
  40. package/dist/types/shared.d.ts +1 -1
  41. package/dist/types/surfboard.d.ts +1 -1
  42. package/dist/types/types.d.ts +1 -1
  43. package/package.json +1 -1
  44. package/dist/chunks/dashboard-controls-CeKjYa7s.js +0 -2274
  45. package/dist/chunks/dashboard-controls-Ds8Hmo3Q.js +0 -57
  46. package/dist/chunks/dashboard-filter-controls-button-CWL2jJcu.js +0 -11
  47. package/dist/chunks/dashboard-filter-controls-button-Tk5lhwVV.js +0 -1116
  48. package/dist/chunks/edit-dashboard-visual-Bu2rxJjm.js +0 -183
  49. package/dist/chunks/use-create-flow-overlay-state-DiH6M1Cd.js +0 -16
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../chunks/index-CGCrm-dj.js"),e=require("../chunks/common-types-C73-Ud1-.js"),r=require("../chunks/dashboard-summary-settings-dialog-DgqFlYl9.js");exports.Surfboard=a.DashboardPlus;exports.CONTROL_CARD_DEFAULT_VALUE=e.CONTROL_CARD_DEFAULT_VALUE;exports.EMPTY_SELECTION=e.EMPTY_SELECTION;exports.CalendarPreferencesDialog=r.CalendarPreferencesDialog;exports.DashboardSummarySettingsDialog=r.DashboardSummarySettingsDialog;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../chunks/index-DjZqoaV5.js"),e=require("../chunks/common-types-C73-Ud1-.js"),r=require("../chunks/dashboard-summary-settings-dialog-DoxcpXjk.js");exports.Surfboard=a.DashboardPlus;exports.CONTROL_CARD_DEFAULT_VALUE=e.CONTROL_CARD_DEFAULT_VALUE;exports.EMPTY_SELECTION=e.EMPTY_SELECTION;exports.CalendarPreferencesDialog=r.CalendarPreferencesDialog;exports.DashboardSummarySettingsDialog=r.DashboardSummarySettingsDialog;
@@ -1,6 +1,6 @@
1
- import { a as o } from "../chunks/index-9v7DehZd.js";
1
+ import { a as o } from "../chunks/index-D7e2Eyp_.js";
2
2
  import { C as s, E as C } from "../chunks/common-types-4bjoIgvm.js";
3
- import { C as E, D as f } from "../chunks/dashboard-summary-settings-dialog-CcszMc1A.js";
3
+ import { C as E, D as f } from "../chunks/dashboard-summary-settings-dialog-CZkn4rtm.js";
4
4
  export {
5
5
  s as CONTROL_CARD_DEFAULT_VALUE,
6
6
  E as CalendarPreferencesDialog,
@@ -241,7 +241,6 @@ declare interface CardConfig {
241
241
  showOnCard?: boolean;
242
242
  includeInDashboardSummary?: boolean;
243
243
  breakdownDimensions?: GroupByField[];
244
- anomalyEnabled?: boolean;
245
244
  };
246
245
  rowAggregates?: Array<{
247
246
  label?: string;
@@ -2062,6 +2061,7 @@ declare type TableStylePreferences = {
2062
2061
  headerStyle?: TableHeaderStyle;
2063
2062
  headerBackgroundColor?: string;
2064
2063
  headerTextColor?: string;
2064
+ headerWrapText?: boolean;
2065
2065
  stripedRows?: boolean;
2066
2066
  gridLines?: TableGridLines;
2067
2067
  wrapText?: boolean;
@@ -982,7 +982,6 @@ export declare interface CardConfig {
982
982
  showOnCard?: boolean;
983
983
  includeInDashboardSummary?: boolean;
984
984
  breakdownDimensions?: GroupByField[];
985
- anomalyEnabled?: boolean;
986
985
  };
987
986
  rowAggregates?: Array<{
988
987
  label?: string;
@@ -1570,19 +1569,65 @@ declare interface DashboardExportDialogProps {
1570
1569
  onOpenChange: (open: boolean) => void;
1571
1570
  }
1572
1571
 
1573
- export declare function DashboardFilterControlsButton({ showFilters, onToggleFilters, onAddFilter, onAddControl, onManageControls, size, className, primaryButtonClassName, secondaryButtonClassName, dropdownContentClassName, }: DashboardFilterControlsButtonProps): JSX.Element;
1572
+ export declare function DashboardFilterControlsButton({ showFilters, onShowFiltersChange, pickerContent, settingsContent, size, className, primaryButtonClassName, secondaryButtonClassName, pickerContentClassName, settingsContentClassName, }: DashboardFilterControlsButtonProps): JSX.Element;
1574
1573
 
1574
+ /**
1575
+ * DashboardFilterControlsButton — split-button shell for the toolbar.
1576
+ *
1577
+ * Two halves, each a Popover trigger:
1578
+ *
1579
+ * - Primary half: opens the *picker* popover (whose content is passed
1580
+ * in via `pickerContent`). Open state is controlled — the launcher
1581
+ * wires it to the `showFilters` store field so existing close
1582
+ * handlers (e.g. semaphor-app's dashboard-controls cleanup paths)
1583
+ * continue to work without change.
1584
+ *
1585
+ * - Chevron half: opens the *actions / settings* popover (passed in
1586
+ * via `settingsContent`). Open state is local; the chevron has no
1587
+ * external consumers that need to drive it.
1588
+ *
1589
+ * Floating popovers replace the legacy 320px FilterAside that mounted as
1590
+ * a flex sibling and shifted the dashboard. Width / height live on the
1591
+ * popover content components — this shell only owns the button chrome.
1592
+ */
1575
1593
  declare type DashboardFilterControlsButtonProps = {
1576
1594
  showFilters: boolean;
1577
- onToggleFilters: () => void;
1578
- onAddFilter: () => void;
1579
- onAddControl: () => void;
1580
- onManageControls: () => void;
1595
+ onShowFiltersChange: (show: boolean) => void;
1596
+ pickerContent: ReactNode;
1597
+ settingsContent: (closeSettings: () => void) => ReactNode;
1598
+ size?: 'default' | 'toolbar';
1599
+ className?: string;
1600
+ primaryButtonClassName?: string;
1601
+ secondaryButtonClassName?: string;
1602
+ pickerContentClassName?: string;
1603
+ settingsContentClassName?: string;
1604
+ };
1605
+
1606
+ /**
1607
+ * DashboardFilterControlsLauncher — composition root for the toolbar
1608
+ * Filter control. Decides which surfaces to show based on whether the
1609
+ * selected sheet is a document sheet (different inspector path) or a
1610
+ * standard dashboard sheet (popover picker + chevron settings).
1611
+ *
1612
+ * Behavior preserved from the legacy aside-based version:
1613
+ * - Document sheets route to the document inspector instead of the
1614
+ * filter picker.
1615
+ * - Opening the filter picker collapses the AI assistant rail.
1616
+ * - `showFilters` in the dashboard store is the source of truth for
1617
+ * whether the picker popover is open. External code that calls
1618
+ * `setShowFilters(false)` (e.g. semaphor-app's close / save / discard
1619
+ * handlers) will close the popover the same way it used to close the
1620
+ * aside.
1621
+ */
1622
+ export declare function DashboardFilterControlsLauncher({ size, className, primaryButtonClassName, secondaryButtonClassName, pickerContentClassName, settingsContentClassName, }: DashboardFilterControlsLauncherProps): JSX.Element;
1623
+
1624
+ declare type DashboardFilterControlsLauncherProps = {
1581
1625
  size?: 'default' | 'toolbar';
1582
1626
  className?: string;
1583
1627
  primaryButtonClassName?: string;
1584
1628
  secondaryButtonClassName?: string;
1585
- dropdownContentClassName?: string;
1629
+ pickerContentClassName?: string;
1630
+ settingsContentClassName?: string;
1586
1631
  };
1587
1632
 
1588
1633
  export declare type DashboardInput = FilterDashboardInput | ControlDashboardInput;
@@ -2065,6 +2110,14 @@ export declare type DocumentControlInputDefinition = DocumentInputBase & {
2065
2110
  exports?: DocumentInputExportKey[];
2066
2111
  };
2067
2112
 
2113
+ export declare function DocumentControlsSettings({ open, onOpenChange, initialMode, }: DocumentControlsSettingsProps): JSX.Element | null;
2114
+
2115
+ declare type DocumentControlsSettingsProps = {
2116
+ open: boolean;
2117
+ onOpenChange: (open: boolean) => void;
2118
+ initialMode?: 'manage' | 'create';
2119
+ };
2120
+
2068
2121
  export declare type DocumentDefinition = {
2069
2122
  version: 1;
2070
2123
  page: DocumentPageSetup;
@@ -4151,15 +4204,6 @@ declare type SummaryAction = {
4151
4204
 
4152
4205
  declare type SummaryActionType = 'apply_filter' | 'change_comparison' | 'open_schedule' | 'refresh';
4153
4206
 
4154
- declare type SummaryAnomaly = {
4155
- metricId: string;
4156
- severity: 'low' | 'medium' | 'high';
4157
- reason: 'z_score_spike' | 'trend_break' | 'threshold_breach' | 'insufficient_baseline';
4158
- score: number;
4159
- confidence: number;
4160
- message: string;
4161
- };
4162
-
4163
4207
  export declare function SummaryCard(): JSX.Element | null;
4164
4208
 
4165
4209
  declare type SummaryCardSummary = {
@@ -4168,17 +4212,26 @@ declare type SummaryCardSummary = {
4168
4212
  summary: Omit<SummaryResponse, 'cardSummaries'>;
4169
4213
  };
4170
4214
 
4215
+ declare type SummaryDirection = 'up' | 'down' | 'flat';
4216
+
4171
4217
  declare type SummaryDriver = {
4218
+ kind: SummaryDriverKind;
4172
4219
  metricId: string;
4173
4220
  dimension: string;
4174
4221
  key: string;
4175
- direction: 'up' | 'down';
4176
- delta: number;
4222
+ direction: SummaryDirection;
4223
+ current: number;
4224
+ comparison: number | null;
4225
+ delta: number | null;
4177
4226
  contributionPct: number;
4178
- basis: 'gross_decline' | 'gross_growth' | 'net_change';
4227
+ basis: SummaryDriverBasis;
4179
4228
  action: SummaryAction;
4180
4229
  };
4181
4230
 
4231
+ declare type SummaryDriverBasis = 'gross_decline' | 'gross_growth' | 'net_change' | 'current_value';
4232
+
4233
+ declare type SummaryDriverKind = 'period_delta_driver' | 'value_contributor';
4234
+
4182
4235
  export declare type SummaryResponse = {
4183
4236
  narrative: string;
4184
4237
  generatedAt: string;
@@ -4189,14 +4242,13 @@ export declare type SummaryResponse = {
4189
4242
  comparison: number | null;
4190
4243
  delta: number | null;
4191
4244
  deltaPct: number | null;
4192
- direction: 'up' | 'down' | 'flat';
4245
+ direction: SummaryDirection;
4193
4246
  }>;
4194
4247
  drivers: SummaryDriver[];
4195
- anomalies: SummaryAnomaly[];
4196
4248
  suggestedActions: SummaryAction[];
4197
4249
  cardSummaries?: SummaryCardSummary[];
4198
4250
  metadata: {
4199
- contractVersion: '1.0';
4251
+ contractVersion: '1.1';
4200
4252
  cacheHit: boolean;
4201
4253
  generationMs: number;
4202
4254
  partial: boolean;
@@ -4204,7 +4256,7 @@ export declare type SummaryResponse = {
4204
4256
  };
4205
4257
  };
4206
4258
 
4207
- declare type SummaryWarningCode = 'PARTIAL_TIMEOUT' | 'LLM_TIMEOUT_FALLBACK' | 'ANOMALY_MODULE_UNAVAILABLE' | 'DRIVER_DATA_INSUFFICIENT' | 'UNSUPPORTED_CARD_EXCLUDED' | 'CARD_QUERY_FAILED';
4259
+ declare type SummaryWarningCode = 'PARTIAL_TIMEOUT' | 'LLM_TIMEOUT_FALLBACK' | 'DRIVER_DATA_INSUFFICIENT' | 'UNSUPPORTED_CARD_EXCLUDED' | 'CARD_QUERY_FAILED';
4208
4260
 
4209
4261
  export declare function Surfboard({ showControls, showFooter, ...rest }: DashboardPlusProps): JSX.Element;
4210
4262
 
@@ -4336,6 +4388,7 @@ declare type TableStylePreferences = {
4336
4388
  headerStyle?: TableHeaderStyle;
4337
4389
  headerBackgroundColor?: string;
4338
4390
  headerTextColor?: string;
4391
+ headerWrapText?: boolean;
4339
4392
  stripedRows?: boolean;
4340
4393
  gridLines?: TableGridLines;
4341
4394
  wrapText?: boolean;
@@ -156,7 +156,6 @@ declare interface CardConfig {
156
156
  showOnCard?: boolean;
157
157
  includeInDashboardSummary?: boolean;
158
158
  breakdownDimensions?: GroupByField[];
159
- anomalyEnabled?: boolean;
160
159
  };
161
160
  rowAggregates?: Array<{
162
161
  label?: string;
@@ -1666,6 +1665,7 @@ declare type TableStylePreferences = {
1666
1665
  headerStyle?: TableHeaderStyle;
1667
1666
  headerBackgroundColor?: string;
1668
1667
  headerTextColor?: string;
1668
+ headerWrapText?: boolean;
1669
1669
  stripedRows?: boolean;
1670
1670
  gridLines?: TableGridLines;
1671
1671
  wrapText?: boolean;
@@ -248,7 +248,6 @@ declare interface CardConfig {
248
248
  showOnCard?: boolean;
249
249
  includeInDashboardSummary?: boolean;
250
250
  breakdownDimensions?: GroupByField[];
251
- anomalyEnabled?: boolean;
252
251
  };
253
252
  rowAggregates?: Array<{
254
253
  label?: string;
@@ -2084,6 +2083,7 @@ declare type TableStylePreferences = {
2084
2083
  headerStyle?: TableHeaderStyle;
2085
2084
  headerBackgroundColor?: string;
2086
2085
  headerTextColor?: string;
2086
+ headerWrapText?: boolean;
2087
2087
  stripedRows?: boolean;
2088
2088
  gridLines?: TableGridLines;
2089
2089
  wrapText?: boolean;
@@ -497,7 +497,6 @@ export declare interface CardConfig {
497
497
  showOnCard?: boolean;
498
498
  includeInDashboardSummary?: boolean;
499
499
  breakdownDimensions?: GroupByField[];
500
- anomalyEnabled?: boolean;
501
500
  };
502
501
  rowAggregates?: Array<{
503
502
  label?: string;
@@ -2643,6 +2642,7 @@ declare type TableStylePreferences = {
2643
2642
  headerStyle?: TableHeaderStyle;
2644
2643
  headerBackgroundColor?: string;
2645
2644
  headerTextColor?: string;
2645
+ headerWrapText?: boolean;
2646
2646
  stripedRows?: boolean;
2647
2647
  gridLines?: TableGridLines;
2648
2648
  wrapText?: boolean;
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "email": "support@semaphor.cloud"
6
6
  },
7
7
  "license": "MIT",
8
- "version": "0.1.311",
8
+ "version": "0.1.313",
9
9
  "description": "Fully interactive and customizable dashboards for your apps.",
10
10
  "keywords": [
11
11
  "react",