@nivaro/react 0.2.17 → 0.2.18

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 (3) hide show
  1. package/dist/index.d.ts +29 -1
  2. package/dist/index.js +21020 -20887
  3. package/package.json +1 -1
package/dist/index.d.ts CHANGED
@@ -5028,6 +5028,16 @@ declare interface QuerySheetDef {
5028
5028
  title?: string;
5029
5029
  width?: number | string;
5030
5030
  config?: QueryWidgetConfig;
5031
+ /** Figures above the tabs from a query of their own (same param tokens as a tab). */
5032
+ header?: {
5033
+ query_slug: string;
5034
+ params?: Record<string, unknown>;
5035
+ stats: QueryWidgetStat[];
5036
+ /** "As of" line under the tiles: label + the latest value of field. */
5037
+ as_of?: SheetHeaderAsOf;
5038
+ };
5039
+ /** Zero-based tab to open first (clamped into range). */
5040
+ initial_tab?: number;
5031
5041
  /** A tab is a nested query view OR a MatrixEditor (`matrix`): its scope is
5032
5042
  * seeded from the clicked row — `scope: {project: '$row.id'}` — and those
5033
5043
  * fields render as fixed context, not pickers. */
@@ -5051,7 +5061,7 @@ export declare function QueryStatStrip({ stats, rows, effectiveParams, loading }
5051
5061
  loading: boolean;
5052
5062
  }): JSX.Element | null;
5053
5063
 
5054
- export declare function QueryTable({ rows, config, onRowClick, pivotYear, rowActions, emptyLabel }: {
5064
+ export declare function QueryTable({ rows, config, onRowClick, pivotYear, rowActions, emptyLabel, emptyText }: {
5055
5065
  rows: Array<Record<string, unknown>>;
5056
5066
  config?: QueryTableConfig;
5057
5067
  /** Makes rows clickable (hover highlight); receives the (post-grouping) row. */
@@ -5060,6 +5070,8 @@ export declare function QueryTable({ rows, config, onRowClick, pivotYear, rowAct
5060
5070
  pivotYear?: number;
5061
5071
  /** Names the empty state ("No deployments yet") instead of a bare "No data". */
5062
5072
  emptyLabel?: string;
5073
+ /** The whole empty-state sentence, rendered as written (beats emptyLabel). */
5074
+ emptyText?: string;
5063
5075
  /** Trailing action buttons per row (and on the totals row, receiving null). */
5064
5076
  rowActions?: Array<{
5065
5077
  label: string;
@@ -5219,6 +5231,8 @@ declare interface QueryWidgetConfig {
5219
5231
  row_click?: QueryRowClick;
5220
5232
  filters?: QueryWidgetFilter[];
5221
5233
  stats?: QueryWidgetStat[];
5234
+ /** Sentence shown, as written, when the query returns no rows. */
5235
+ empty_label?: string;
5222
5236
  /** Trailing action buttons per row (and totals row) opening nested sheets. */
5223
5237
  row_actions?: Array<{
5224
5238
  label: string;
@@ -6339,6 +6353,20 @@ export declare function setNumberFormat(opts: {
6339
6353
 
6340
6354
  export declare function setTimeDisplay(mode: string | null | undefined): void;
6341
6355
 
6356
+ /**
6357
+ * The pure part of opening a query sheet: which tabs it has, which tab opens
6358
+ * first, and the optional header strip (a query of its own, rendered above
6359
+ * the tabs as stat tiles). `resolveConfig` is the caller's token resolver —
6360
+ * '$row.' / '$param.' / '$filters.' — applied to the header exactly as to a
6361
+ * tab, so the two cannot drift.
6362
+ */
6363
+ /** A quiet "as of" line under the header tiles: `label` followed by the
6364
+ * latest `field` value among the header rows (omitted when no row has one). */
6365
+ declare interface SheetHeaderAsOf {
6366
+ field: string;
6367
+ label: string;
6368
+ }
6369
+
6342
6370
  declare interface SheetItem {
6343
6371
  collection: string;
6344
6372
  item_id: string;