react-semaphor 0.1.515 → 0.1.516

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 (210) hide show
  1. package/dist/analytics-protocol/index.cjs +1 -1
  2. package/dist/analytics-protocol/index.js +226 -225
  3. package/dist/brand-studio/index.cjs +1 -1
  4. package/dist/brand-studio/index.js +4 -4
  5. package/dist/briefings/index.cjs +1 -1
  6. package/dist/briefings/index.js +8 -8
  7. package/dist/chunks/{calculated-field-identity-BiTGmnST.cjs → calculated-field-identity-5bg9oHTw.cjs} +1 -1
  8. package/dist/chunks/{calculated-field-identity-DnRd4YIY.js → calculated-field-identity-DzJBs2J8.js} +4 -4
  9. package/dist/chunks/{card-config-utils-B2cDWQqB.js → card-config-utils-Cxnq2R6z.js} +14 -14
  10. package/dist/chunks/{card-config-utils-CMO4_zVs.cjs → card-config-utils-z86y6tSq.cjs} +1 -1
  11. package/dist/chunks/column-bands-CU0byntA.cjs +1 -0
  12. package/dist/chunks/column-bands-RdM-kjDe.js +47 -0
  13. package/dist/chunks/{dashboard-briefing-launcher-BA_bl05p.js → dashboard-briefing-launcher-BCEHJ_eD.js} +15 -12
  14. package/dist/chunks/{dashboard-briefing-launcher-B7zqm8P1.cjs → dashboard-briefing-launcher-CjZ4aE34.cjs} +2 -2
  15. package/dist/chunks/{dashboard-controls-QMW17RKx.js → dashboard-controls-DFfit5KH.js} +12 -12
  16. package/dist/chunks/{dashboard-controls-x_v9wLOU.cjs → dashboard-controls-f9aJ70Zu.cjs} +1 -1
  17. package/dist/chunks/{dashboard-date-comparison-definition-D7Bl-YAl.js → dashboard-date-comparison-definition-BqNhECUr.js} +6 -6
  18. package/dist/chunks/{dashboard-date-comparison-definition-C_w-GO_5.cjs → dashboard-date-comparison-definition-Y6JZwpcr.cjs} +1 -1
  19. package/dist/chunks/{dashboard-json-DRnpkNwO.js → dashboard-json-DVtcA02f.js} +7 -7
  20. package/dist/chunks/{dashboard-json-0ZLLBlHj.cjs → dashboard-json-deqQC-UR.cjs} +1 -1
  21. package/dist/chunks/edit-dashboard-visual-DK6lSC_p.cjs +172 -0
  22. package/dist/chunks/{edit-dashboard-visual-1ISjhwry.js → edit-dashboard-visual-lJ6rDH3w.js} +4338 -4324
  23. package/dist/chunks/{editor-action-buttons-BTCKZERI.js → editor-action-buttons-Bnxxa439.js} +7 -7
  24. package/dist/chunks/{editor-action-buttons-Czq5SnA9.cjs → editor-action-buttons-CmDaQbPN.cjs} +1 -1
  25. package/dist/chunks/{field-aggregations-CzuQKtqx.js → field-aggregations-Dl2A3rbV.js} +461 -358
  26. package/dist/chunks/field-aggregations-pH_3kymD.cjs +1 -0
  27. package/dist/chunks/{field-dependencies-DIab72rQ.cjs → field-dependencies-EB485TdB.cjs} +1 -1
  28. package/dist/chunks/{field-dependencies-DXW4jtvJ.js → field-dependencies-v-lJNzC7.js} +1 -1
  29. package/dist/chunks/{index-Dlic9KZs.js → index-BVVl2JDK.js} +57730 -54586
  30. package/dist/chunks/index-DfqMtR9S.cjs +4 -0
  31. package/dist/chunks/index-UNKSfi7s.cjs +1434 -0
  32. package/dist/chunks/{index-v1OE4-eA.js → index-ylOpKRDu.js} +877 -849
  33. package/dist/chunks/{matrix-analytical-definition-Ct5Tu8np.cjs → matrix-analytical-definition-BWd159lN.cjs} +1 -1
  34. package/dist/chunks/{matrix-analytical-definition-BDAK2aEi.js → matrix-analytical-definition-BimC4XIV.js} +1 -1
  35. package/dist/chunks/{matrix-card-U4c72doZ.cjs → matrix-card-C2RjEYZ8.cjs} +1 -1
  36. package/dist/chunks/{matrix-card-DOIeTmjh.js → matrix-card-CIlz0Dnp.js} +2 -2
  37. package/dist/chunks/{matrix-control-sources-FjxGIbqk.cjs → matrix-control-sources-BvEJF7d3.cjs} +1 -1
  38. package/dist/chunks/{matrix-control-sources-BxKH2yu2.js → matrix-control-sources-KbZe1gj_.js} +51 -51
  39. package/dist/chunks/{matrix-definition-CBJW_4ii.cjs → matrix-definition-DanUT11P.cjs} +1 -1
  40. package/dist/chunks/{matrix-definition-I9rHB9zN.js → matrix-definition-E5gXXSTZ.js} +1 -1
  41. package/dist/chunks/matrix-formatter-BJTO8ky9.cjs +1 -0
  42. package/dist/chunks/{matrix-formatter-BdIsE7Qu.js → matrix-formatter-CCXNRt3s.js} +81 -81
  43. package/dist/chunks/{matrix-member-presentation-DO1VSqfh.js → matrix-member-presentation-Bw7-JCrr.js} +64 -64
  44. package/dist/chunks/matrix-member-presentation-DvXDEo0U.cjs +1 -0
  45. package/dist/chunks/{matrix-operation-contract-DoiWTUbT.cjs → matrix-operation-contract-0RxoU_M3.cjs} +1 -1
  46. package/dist/chunks/{matrix-operation-contract-D0HfzwZg.js → matrix-operation-contract-D32U2CSw.js} +19 -19
  47. package/dist/chunks/{metric-comparison-Dqc7_tnW.js → metric-comparison-BphoJ9bq.js} +1 -1
  48. package/dist/chunks/{metric-comparison-DBQ3EJTz.cjs → metric-comparison-CUmltzpz.cjs} +1 -1
  49. package/dist/chunks/pivot-header-presentation-BSZhB1g-.js +661 -0
  50. package/dist/chunks/pivot-header-presentation-EoUS5ze5.cjs +5 -0
  51. package/dist/chunks/{pivot-result-identity-8M-bZrw9.js → pivot-result-identity-BzUQiCEV.js} +4 -4
  52. package/dist/chunks/{pivot-result-identity-uTiylUNr.cjs → pivot-result-identity-gquWljbd.cjs} +1 -1
  53. package/dist/chunks/{pivot-result-lifecycle-vg_suUNb.cjs → pivot-result-lifecycle-gl9cBfB-.cjs} +1 -1
  54. package/dist/chunks/{pivot-result-lifecycle-CEmyU2At.js → pivot-result-lifecycle-kRhiJkzg.js} +8 -8
  55. package/dist/chunks/{raw-temporal-Bj6_w9cG.js → raw-temporal-BqOfk-xN.js} +16 -16
  56. package/dist/chunks/{raw-temporal-contract-CFLGwTiI.js → raw-temporal-contract-BQZIJ1fn.js} +1 -1
  57. package/dist/chunks/{raw-temporal-contract-DECbTuzA.cjs → raw-temporal-contract-CklMVG_1.cjs} +1 -1
  58. package/dist/chunks/{raw-temporal-CeblVJbu.cjs → raw-temporal-eJXecCyJ.cjs} +1 -1
  59. package/dist/chunks/{report-preferences-dialog-b8J6KjSy.js → report-preferences-dialog-CHXPEl7v.js} +6 -6
  60. package/dist/chunks/{report-preferences-dialog-Dr1BYwuf.cjs → report-preferences-dialog-Cto0vDwI.cjs} +1 -1
  61. package/dist/chunks/{report-runtime-context-Cs65Mrxj.js → report-runtime-context-CxIoGyNM.js} +1 -1
  62. package/dist/chunks/{report-runtime-context-DzvHBPxl.cjs → report-runtime-context-CzSrCBsu.cjs} +1 -1
  63. package/dist/chunks/{selection-reducer-BIiQXbGM.js → selection-reducer-CvCBQbl2.js} +1 -1
  64. package/dist/chunks/{selection-reducer-CGKKsaPa.cjs → selection-reducer-Kl22OzIk.cjs} +1 -1
  65. package/dist/chunks/{semantic-format-Dt-nUxFB.js → semantic-format-DwqGYx4V.js} +2 -2
  66. package/dist/chunks/{semantic-format-DFI1iszk.cjs → semantic-format-mVI32OJH.cjs} +1 -1
  67. package/dist/chunks/{source-entity-resolution-D7vnmDwm.js → source-entity-resolution-Bzefiive.js} +7 -7
  68. package/dist/chunks/{source-entity-resolution-CjbgnwyX.cjs → source-entity-resolution-R46X34SE.cjs} +1 -1
  69. package/dist/chunks/switch-DNbWXEOP.cjs +134 -0
  70. package/dist/chunks/{switch-D5_tjsIS.js → switch-DNv-hVmt.js} +8230 -7681
  71. package/dist/chunks/{temporal-bucket-B9hMwemw.js → temporal-bucket-DlFuhCnT.js} +6 -6
  72. package/dist/chunks/{temporal-bucket-contract-IWDgyTMw.js → temporal-bucket-contract-DTLDRzgV.js} +1 -1
  73. package/dist/chunks/{temporal-bucket-contract-ZctiyXYk.cjs → temporal-bucket-contract-nTv6gvX5.cjs} +1 -1
  74. package/dist/chunks/{token-types-Dl0hcKBX.js → token-types-BC6RcUY8.js} +1 -1
  75. package/dist/chunks/{token-types-Ahh5u4iT.cjs → token-types-aWrzwonf.cjs} +1 -1
  76. package/dist/chunks/{update-policy-COjFudhl.cjs → update-policy-DRDLWe7Y.cjs} +1 -1
  77. package/dist/chunks/{update-policy-BeQqjupC.js → update-policy-DhAUtiC8.js} +2 -2
  78. package/dist/chunks/{validators-CkHsAvwB.js → validators-CsdOtZI6.js} +411 -397
  79. package/dist/chunks/validators-DFeDcdpA.cjs +1 -0
  80. package/dist/dashboard/index.cjs +1 -1
  81. package/dist/dashboard/index.js +1 -1
  82. package/dist/dashboard-authoring/index.cjs +3 -3
  83. package/dist/dashboard-authoring/index.js +233 -227
  84. package/dist/data-app-builder/index.cjs +1 -1
  85. package/dist/data-app-builder/index.js +3 -3
  86. package/dist/data-app-codegen/index.cjs +1 -1
  87. package/dist/data-app-codegen/index.js +2 -2
  88. package/dist/data-app-codegen-node/index.cjs +1 -1
  89. package/dist/data-app-codegen-node/index.js +3 -3
  90. package/dist/data-app-sdk/index.cjs +1 -1
  91. package/dist/data-app-sdk/index.js +5 -5
  92. package/dist/data-app-sdk-adapters/index.cjs +1 -1
  93. package/dist/data-app-sdk-adapters/index.js +2 -2
  94. package/dist/data-app-sdk-validation/index.cjs +1 -1
  95. package/dist/data-app-sdk-validation/index.js +5 -5
  96. package/dist/format-utils/index.cjs +3 -3
  97. package/dist/format-utils/index.js +291 -402
  98. package/dist/index.cjs +1 -1
  99. package/dist/index.js +15 -15
  100. package/dist/pdf-table-layout/index.cjs +1 -0
  101. package/dist/pdf-table-layout/index.js +993 -0
  102. package/dist/report-runtime-context/index.cjs +1 -1
  103. package/dist/report-runtime-context/index.js +2 -2
  104. package/dist/style.css +1 -1
  105. package/dist/surfboard/index.cjs +1 -1
  106. package/dist/surfboard/index.js +2 -2
  107. package/dist/types/briefings/index.d.ts +1 -1
  108. package/dist/types/components/document-sheet/document-input-bar.d.ts +1 -3
  109. package/dist/types/components/document-sheet/document-insert-picker.d.ts +37 -0
  110. package/dist/types/components/document-sheet/document-kpi-section.d.ts +17 -0
  111. package/dist/types/components/document-sheet/document-matrix-layout-context.d.ts +10 -0
  112. package/dist/types/components/document-sheet/document-matrix-section.d.ts +27 -0
  113. package/dist/types/components/document-sheet/document-measure-layer.d.ts +45 -0
  114. package/dist/types/components/document-sheet/document-outline.d.ts +7 -1
  115. package/dist/types/components/document-sheet/document-page-navigation.d.ts +22 -0
  116. package/dist/types/components/document-sheet/document-page.d.ts +9 -5
  117. package/dist/types/components/document-sheet/document-panel/document-side-panel.d.ts +36 -0
  118. package/dist/types/components/document-sheet/document-panel/inputs-panel.d.ts +9 -0
  119. package/dist/types/components/document-sheet/document-panel/page-panel.d.ts +5 -0
  120. package/dist/types/components/document-sheet/document-panel/panel-controls.d.ts +14 -0
  121. package/dist/types/components/document-sheet/document-panel/region-panels.d.ts +11 -0
  122. package/dist/types/components/document-sheet/document-panel/section-panel.d.ts +25 -0
  123. package/dist/types/components/document-sheet/document-section-print-boundary.d.ts +9 -0
  124. package/dist/types/components/document-sheet/document-table-chrome.d.ts +22 -0
  125. package/dist/types/components/document-sheet/document-table-section.d.ts +3 -7
  126. package/dist/types/components/document-sheet/document-text-preview-context.d.ts +8 -0
  127. package/dist/types/components/document-sheet/use-first-fitting-variant.d.ts +18 -0
  128. package/dist/types/components/editor/editor-main/dashboard-variable-node.d.ts +12 -2
  129. package/dist/types/components/explorer/chart-configuration/matrix-authoring-controls.d.ts +7 -2
  130. package/dist/types/components/text-variables/variable-chip-plugin.d.ts +23 -0
  131. package/dist/types/components/text-variables/variable-chip.d.ts +18 -0
  132. package/dist/types/components/text-variables/variable-picker.d.ts +27 -0
  133. package/dist/types/components/visual/settings/table-presentation-settings.d.ts +27 -1
  134. package/dist/types/index.cjs +1 -1
  135. package/dist/types/index.js +5 -5
  136. package/dist/types/lib/dashboard-inputs/text-variable-options.d.ts +15 -0
  137. package/dist/types/lib/document/document-canvas-actions.d.ts +22 -0
  138. package/dist/types/lib/document/document-edits.d.ts +119 -0
  139. package/dist/types/lib/document/document-kpi-figure.d.ts +27 -0
  140. package/dist/types/lib/document/document-kpi-layout.d.ts +29 -0
  141. package/dist/types/lib/document/document-kpi-section-edits.d.ts +15 -0
  142. package/dist/types/lib/document/document-matrix-bands.d.ts +66 -0
  143. package/dist/types/lib/document/document-matrix-print.d.ts +11 -0
  144. package/dist/types/lib/document/document-pagination.d.ts +56 -3
  145. package/dist/types/lib/document/document-panel-target.d.ts +19 -0
  146. package/dist/types/lib/document/document-section-editor.d.ts +8 -7
  147. package/dist/types/lib/document/document-section-kinds.d.ts +49 -0
  148. package/dist/types/lib/document/document-section-query-options.d.ts +25 -0
  149. package/dist/types/lib/document/document-section-render-state.d.ts +26 -0
  150. package/dist/types/lib/document/document-section-utils.d.ts +11 -4
  151. package/dist/types/lib/document/document-table-dom.d.ts +4 -6
  152. package/dist/types/lib/document/document-table-pagination-model.d.ts +0 -5
  153. package/dist/types/lib/document/document-table-print-model.d.ts +4 -3
  154. package/dist/types/lib/document/document-table-style.d.ts +15 -4
  155. package/dist/types/lib/document/document-table-surface.d.ts +15 -0
  156. package/dist/types/lib/document/document-variables.d.ts +40 -6
  157. package/dist/types/lib/document/use-document-section-data.d.ts +39 -0
  158. package/dist/types/lib/document/use-measured-document-table-layout.d.ts +50 -0
  159. package/dist/types/lib/formatters/kpi-result-values.d.ts +20 -0
  160. package/dist/types/lib/hooks/query-context/use-dashboard-card-execution-snapshot.d.ts +8 -2
  161. package/dist/types/lib/hooks/use-dashboard-frame-query.d.ts +6 -0
  162. package/dist/types/lib/hooks/use-dashboard-kpi-actions.d.ts +1 -1
  163. package/dist/types/lib/hooks/use-document-section-editor.d.ts +2 -2
  164. package/dist/types/lib/hooks/use-document-section-session.d.ts +36 -0
  165. package/dist/types/lib/hooks/use-editor-preview.d.ts +17 -0
  166. package/dist/types/lib/hooks/use-is-editing-card.d.ts +7 -0
  167. package/dist/types/lib/matrix-table/matrix-card-adapter.d.ts +2 -0
  168. package/dist/types/lib/matrix-table/matrix-card-draft.d.ts +2 -0
  169. package/dist/types/lib/matrix-table/matrix-delivery.d.ts +4 -0
  170. package/dist/types/lib/matrix-table/matrix-layout-read.d.ts +68 -0
  171. package/dist/types/lib/query-context/build-dashboard-execution-snapshot.d.ts +8 -1
  172. package/dist/types/lib/query-context/build-dashboard-frame-base-query-contexts.d.ts +4 -2
  173. package/dist/types/lib/query-context/card-execution.d.ts +30 -0
  174. package/dist/types/lib/query-context/document-section-card-query.d.ts +37 -0
  175. package/dist/types/lib/stores/dashboard-store.d.ts +12 -8
  176. package/dist/types/lib/stores/editor-store.d.ts +2 -0
  177. package/dist/types/lib/text-variables/text-variable-types.d.ts +39 -0
  178. package/dist/types/lib/types/common-types.d.ts +34 -1
  179. package/dist/types/lib/utils/card-definition.d.ts +2 -0
  180. package/dist/types/lib/utils/card-utils.d.ts +13 -6
  181. package/dist/types/pdf-table-layout.d.ts +2 -0
  182. package/dist/types/shared/analytics-protocol/index.d.ts +1 -1
  183. package/dist/types/shared/analytics-protocol/matrix-definition-contract.d.ts +45 -0
  184. package/dist/types/shared/analytics-protocol/matrix-member-presentation.d.ts +4 -0
  185. package/dist/types/shared/dashboard-authoring/document-section-cards.d.ts +56 -0
  186. package/dist/types/shared/dashboard-authoring/index.d.ts +1 -0
  187. package/dist/types/shared/dashboard-authoring/matrix-delivery.d.ts +36 -1
  188. package/dist/types/shared/format-utils/formatters/matrix-formatter.d.ts +5 -0
  189. package/dist/types/shared/format-utils/index.d.ts +1 -0
  190. package/dist/types/shared/format-utils/matrix-export-presentation.d.ts +690 -1
  191. package/dist/types/shared/format-utils/matrix-print.d.ts +38 -0
  192. package/dist/types/shared/format-utils/pdf-table-layout/column-bands.d.ts +55 -0
  193. package/dist/types/shared/format-utils/pdf-table-layout/index.d.ts +6 -0
  194. package/dist/types/shared/format-utils/pdf-table-layout/page-size.d.ts +7 -0
  195. package/dist/types/shared/format-utils/pdf-table-layout/table-column-semantics.d.ts +106 -0
  196. package/dist/types/shared/format-utils/pdf-table-layout/table-column-widths.d.ts +13 -0
  197. package/dist/types/shared/format-utils/pdf-table-layout/table-page-geometry.d.ts +19 -0
  198. package/dist/types/shared/format-utils/pdf-table-layout/wide-table-layout.d.ts +46 -0
  199. package/dist/types/shared/format-utils/table-structure.d.ts +9 -0
  200. package/package.json +6 -1
  201. package/dist/chunks/edit-dashboard-visual-CI0EqzKj.cjs +0 -172
  202. package/dist/chunks/field-aggregations-jSi77h9Z.cjs +0 -1
  203. package/dist/chunks/index-BMMXKK3G.cjs +0 -4
  204. package/dist/chunks/index-C6_xef4P.cjs +0 -1424
  205. package/dist/chunks/matrix-formatter-Dajj91Ni.cjs +0 -1
  206. package/dist/chunks/matrix-member-presentation-CFHjdrxT.cjs +0 -1
  207. package/dist/chunks/pivot-header-presentation-BIf4HW3L.js +0 -414
  208. package/dist/chunks/pivot-header-presentation-B_N11CgN.cjs +0 -5
  209. package/dist/chunks/switch-Ced9ZZwI.cjs +0 -134
  210. package/dist/chunks/validators-DVYAnnX0.cjs +0 -1
@@ -3,6 +3,7 @@ import { TFilter, TFilterValue } from '../../components/surfboard/filter/types.j
3
3
  import { ControlDefinition, DashboardInputValues, TCard, TDashboard, TFrame } from '../types/common-types.js';
4
4
  import { TransientInputContext } from '../dashboard-inputs/transient-input-context.js';
5
5
  import { CardQueryContext } from './build-card-query-context.js';
6
+ import { CardExecution } from './card-execution.js';
6
7
  export type DashboardFrameDocumentQueryState = {
7
8
  isExplicitDocumentSectionRuntime: boolean;
8
9
  isDocumentSectionEditing: boolean;
@@ -41,7 +42,8 @@ export type BuildDashboardFrameBaseQueryContextsParams = {
41
42
  cardViewStates: CardViewStateMap | undefined;
42
43
  filteringCards?: TCard[];
43
44
  selectedSheetId?: string | null;
44
- isVisualEditing: boolean;
45
+ /** How this call's queries run (tech spec M7). */
46
+ execution: CardExecution;
45
47
  getCardFrame: (cardId: string) => TFrame | undefined;
46
48
  lastRequestPayloadMap?: Map<string, Record<string, unknown>>;
47
49
  documentState: DashboardFrameDocumentQueryState;
@@ -55,4 +57,4 @@ export type DashboardFrameBaseQueryContext = CardQueryContext & {
55
57
  missingRequiredInputLabels: string[];
56
58
  dashboardInputMissingRequiredLabels: string[];
57
59
  };
58
- export declare function buildDashboardFrameBaseQueryContexts({ cards, dashboard, filters, dashboardControls, filterValues, controlValues, dashboardInputValues, dashboardInlineFilterValuesMap, editorInlineFilterValuesMap, dashboardCardControlValuesMap, transientContexts, cardViewStates, filteringCards, selectedSheetId, isVisualEditing, getCardFrame, lastRequestPayloadMap, documentState, }: BuildDashboardFrameBaseQueryContextsParams): DashboardFrameBaseQueryContext[];
60
+ export declare function buildDashboardFrameBaseQueryContexts({ cards, dashboard, filters, dashboardControls, filterValues, controlValues, dashboardInputValues, dashboardInlineFilterValuesMap, editorInlineFilterValuesMap, dashboardCardControlValuesMap, transientContexts, cardViewStates, filteringCards, selectedSheetId, execution, getCardFrame, lastRequestPayloadMap, documentState, }: BuildDashboardFrameBaseQueryContextsParams): DashboardFrameBaseQueryContext[];
@@ -0,0 +1,30 @@
1
+ import { SemanticExecutionPayloadAuthority } from './use-semantic-execution-payload-for-cards.js';
2
+ /**
3
+ * How one card's query runs, decided once per card (tech spec M7). Every gate
4
+ * in `useDashboardFrameQuery` and the base query-context builder reads this
5
+ * instead of the global `isVisualEditing` flag.
6
+ */
7
+ export type CardExecution = {
8
+ /** The editor shows a failed query inline; a dashboard or report throws to its boundary. */
9
+ errorMode: 'throw' | 'inline';
10
+ refetchOnInterval: boolean;
11
+ /**
12
+ * `editor`: config cards run unless the editor is in dev mode, and dev mode
13
+ * uses the card's own connection. `runtime`: any card with a connection and
14
+ * SQL or a valid config runs.
15
+ */
16
+ gating: 'editor' | 'runtime';
17
+ /** `editor` waits for fresh semantic metadata before querying. */
18
+ metadataAuthority: SemanticExecutionPayloadAuthority;
19
+ /** `editorSnapshot`: the editor's inline filter values and the document inputs captured when it opened. */
20
+ inputSource: 'host' | 'editorSnapshot';
21
+ };
22
+ /**
23
+ * - `isEditorPreview`: the card renders inside `<Editor>`.
24
+ * - `requestedAuthority`: the caller's explicit choice. Inside the editor some
25
+ * components query with runtime metadata, so it is kept as is.
26
+ */
27
+ export declare function resolveCardExecution({ isEditorPreview, requestedAuthority, }: {
28
+ isEditorPreview: boolean;
29
+ requestedAuthority?: SemanticExecutionPayloadAuthority;
30
+ }): CardExecution;
@@ -0,0 +1,37 @@
1
+ import { TFilterValue } from '../../components/surfboard/filter/types.js';
2
+ import { DashboardInputRuntimeValues } from '../dashboard-inputs/resolve-dashboard-input-context.js';
3
+ import { ControlDefinition, DashboardInputValues, TCard, TDashboard } from '../types/common-types.js';
4
+ import { BuildCardQueryContextParams } from './build-card-query-context.js';
5
+ /** What a Document sheet resolved for one section, as one card's query sees it. */
6
+ export type DocumentSectionCardRuntime = {
7
+ sheetId: string | undefined;
8
+ sectionId: string | undefined;
9
+ documentFilterValues: TFilterValue[];
10
+ documentControlDefinitions: ControlDefinition[];
11
+ documentControlValues: Record<string, unknown>;
12
+ /** The page's own input values; the editor's query uses the dashboard's. */
13
+ documentDashboardInputValues?: DashboardInputValues;
14
+ /** The editor's card filters, for the editor's query of the card it edits. */
15
+ editorFilterValues?: TFilterValue[];
16
+ /** `editor` for the editor's query of the card it edits, else `print`. */
17
+ mode: 'print' | 'editor';
18
+ };
19
+ /**
20
+ * The `buildCardQueryContext` inputs for a card that runs as a Document
21
+ * section. A section is its own runtime:
22
+ * - nothing is carried in (no transient contexts, no drill state);
23
+ * - the dashboard's toolbar filters and controls do not apply;
24
+ * - the section's scoped dashboard inputs apply when the dashboard has any,
25
+ * otherwise the document's filter and control values do.
26
+ *
27
+ * The one owner of these rules, for frame queries and the Matrix execution
28
+ * snapshot alike.
29
+ */
30
+ export declare function buildDocumentSectionCardQueryParams({ card, dashboard, runtime, dashboardRuntimeValues, timezone, }: {
31
+ card: TCard;
32
+ dashboard: TDashboard;
33
+ runtime: DocumentSectionCardRuntime;
34
+ /** The dashboard's runtime values, which scoped input resolution reads. */
35
+ dashboardRuntimeValues: Omit<DashboardInputRuntimeValues, 'cardViewState'>;
36
+ timezone?: string;
37
+ }): Omit<BuildCardQueryContextParams, 'selectedSheetId' | 'includeAuthoredFilters'>;
@@ -6,6 +6,8 @@ import { DashboardAIContext } from '../types/assistant-types.js';
6
6
  import { FilterGroup, Field } from '../types/explorer-types.js';
7
7
  import { DashboardControlsModelOptions } from '../controls/control-authoring-types.js';
8
8
  import { SemanticExecutionPayload } from '../types/semantic-runtime-types.js';
9
+ import { DocumentPanelTarget } from '../document/document-panel-target.js';
10
+ import { DocumentEdit, DocumentEditResult } from '../document/document-edits.js';
9
11
  import { DocumentFilterMode } from '../document/document-input-runtime.js';
10
12
  import { DashboardInputRuntimeTarget } from '../dashboard-inputs/dashboard-input-values.js';
11
13
  import { DashboardFilterMappingAuthoringIssue, DashboardFilterInputAcceptanceResult, DashboardFilterMappingAcceptanceResult, DashboardFilterMappingAuthoringRequest, DashboardFilterMappingDisableResult } from '../dashboard-inputs/dashboard-filter-mapping-authoring.js';
@@ -61,8 +63,8 @@ export type DashboardStore = {
61
63
  selectedFrameId?: string | null;
62
64
  selectedCardId?: string | null;
63
65
  selectedCard?: TCard | null;
64
- selectedDocumentSectionIdsBySheetId: Record<string, string | null>;
65
- documentInspectorTabsBySheetId: Record<string, DocumentInspectorTab>;
66
+ /** What each Document sheet's side panel shows; also its section selection. */
67
+ documentPanelTargetBySheetId: Record<string, DocumentPanelTarget>;
66
68
  documentInputRuntimeBySheetId: Record<string, DocumentInputRuntimeState>;
67
69
  /**
68
70
  * Pending sheet-wide frame rewrites produced while visual editing. These stay
@@ -139,7 +141,6 @@ export type DashboardStore = {
139
141
  onRemoveCard?: (card: TCard, sheetId: string) => void;
140
142
  actions: Actions;
141
143
  };
142
- export type DocumentInspectorTab = 'section' | 'page' | 'header' | 'footer' | 'inputs';
143
144
  export type DocumentInputRuntimeState = {
144
145
  filterValuesByInputId: Record<string, TFilterValue | undefined>;
145
146
  filterModesByInputId: Record<string, DocumentFilterMode>;
@@ -227,11 +228,14 @@ type Actions = {
227
228
  deleteSheet: (sheetId: string) => void;
228
229
  setSheetTitle: (sheetId: string, title: string) => void;
229
230
  updateSheetDocument: (sheetId: string, updater: (document: DocumentDefinition) => DocumentDefinition) => void;
230
- updateDocumentSectionCard: (sheetId: string, sectionId: string, card: TCard, options?: {
231
- calculatedFields?: Field[];
232
- }) => void;
233
- setSelectedDocumentSectionId: (sheetId: string, sectionId: string | null) => void;
234
- setDocumentInspectorTab: (sheetId: string, tab: DocumentInspectorTab) => void;
231
+ /**
232
+ * The one write for a Document's sections (see `applyDocumentEdit`).
233
+ * Persists the edited document, any sheet calculated fields a copy brought,
234
+ * and card reference cleanup. Throws `DocumentEditError` for a refused edit
235
+ * without changing state.
236
+ */
237
+ editDocument: (sheetId: string, edit: DocumentEdit) => DocumentEditResult;
238
+ setDocumentPanelTarget: (sheetId: string, target: DocumentPanelTarget) => void;
235
239
  setDocumentInputFilterValues: (sheetId: string, valuesByInputId: Record<string, TFilterValue | undefined>) => void;
236
240
  setDocumentInputFilterValue: (sheetId: string, inputId: string, filterValue: TFilterValue) => void;
237
241
  removeDocumentInputFilterValue: (sheetId: string, inputId: string) => void;
@@ -28,6 +28,8 @@ export type EditorContext = {
28
28
  sheetId: string;
29
29
  sectionId: string;
30
30
  cardId: string;
31
+ /** The card type at open. The section's kind cannot change in the editor. */
32
+ lockedKind: TChartType;
31
33
  documentFilterValues?: TFilterValue[];
32
34
  documentControlDefinitions?: ControlDefinition[];
33
35
  documentControlValues?: Record<string, unknown>;
@@ -0,0 +1,39 @@
1
+ /** What kind of value a variable holds; picks the chip's icon. */
2
+ export type TextVariableKind = 'filter' | 'date' | 'control' | 'report';
3
+ /** How one variable reference reads as a chip. */
4
+ export type TextVariableChipFace = {
5
+ /** The input's name ("State"), or "Missing input". */
6
+ name: string;
7
+ kind: TextVariableKind;
8
+ /** Shown after the name when the chip shows a part other than the default. */
9
+ partLabel?: string;
10
+ /** The reference points at an input that no longer exists. */
11
+ missing?: boolean;
12
+ };
13
+ /** One part of an input a chip can show, with what it holds now. */
14
+ export type TextVariablePart = {
15
+ key: string;
16
+ label: string;
17
+ preview?: string;
18
+ };
19
+ /** One input (or report value) the picker offers. */
20
+ export type TextVariableOption = {
21
+ id: string;
22
+ name: string;
23
+ kind: TextVariableKind;
24
+ parts: TextVariablePart[];
25
+ defaultPart: string;
26
+ };
27
+ /** What a chip shows: an option and one of its parts. */
28
+ export type TextVariableSelection = {
29
+ optionId: string;
30
+ part: string;
31
+ };
32
+ export declare const TEXT_VARIABLE_PART_LABELS: Record<string, string>;
33
+ /** The picker's groups, in order. */
34
+ export declare function textVariableGroup(kind: TextVariableKind): "Filters" | "Controls" | "Report";
35
+ /**
36
+ * Options whose name matches `query`, in the picker's order: filters, then
37
+ * controls, then report values.
38
+ */
39
+ export declare function filterTextVariableOptions(options: readonly TextVariableOption[], query: string): TextVariableOption[];
@@ -1435,7 +1435,7 @@ export type DocumentTextStyle = {
1435
1435
  color?: string;
1436
1436
  align?: 'left' | 'center' | 'right';
1437
1437
  };
1438
- export type DocumentSection = DocumentTextSection | DocumentTableSection | DocumentChartSection | DocumentSpacerSection | DocumentPageBreakSection;
1438
+ export type DocumentSection = DocumentTextSection | DocumentTableSection | DocumentKpiSection | DocumentChartSection | DocumentSpacerSection | DocumentPageBreakSection;
1439
1439
  export type DocumentTextSection = {
1440
1440
  id: string;
1441
1441
  type: 'text';
@@ -1452,6 +1452,39 @@ export type DocumentTableSection = {
1452
1452
  columnFormatting?: Record<string, unknown>;
1453
1453
  repeatHeaderOnPageBreak?: boolean;
1454
1454
  rowHeightPx?: number;
1455
+ /** Print nothing, and take no space, while the result is empty (Plan 2). */
1456
+ hideWhenEmpty?: boolean;
1457
+ /** Matrix sections only: how the Document prints the Matrix (Plan 2). */
1458
+ matrix?: {
1459
+ /** `tabular`: one column per row level. `outline`: one indented column. */
1460
+ rowLabels?: 'tabular' | 'outline';
1461
+ /** Where each group's subtotal prints. */
1462
+ subtotals?: 'after' | 'before';
1463
+ /**
1464
+ * A Matrix too wide for the page prints in column bands. `across`: each
1465
+ * slice of rows prints in every band before the next slice. `down`:
1466
+ * each band runs through every row before the next band.
1467
+ */
1468
+ bandOrder?: 'across' | 'down';
1469
+ };
1470
+ };
1471
+ };
1472
+ /**
1473
+ * Headline numbers. Each card is an ordinary `kpi` card with its own query.
1474
+ * Read and rewrite its cards through `getDocumentSectionCards` and
1475
+ * `mapDocumentSectionCards` (`react-semaphor/dashboard-authoring`).
1476
+ */
1477
+ export type DocumentKpiSection = {
1478
+ id: string;
1479
+ type: 'kpi';
1480
+ title?: string;
1481
+ /** 1 to 8 cards, each `card.type === 'kpi'`, with unique ids. Order is display order. */
1482
+ cards: TCard[];
1483
+ kpi: {
1484
+ /** `tiles` holds at most 6 cards; a section with more uses `lines`. */
1485
+ layout: 'tiles' | 'lines';
1486
+ /** Used by `lines`, default 2. Kept but ignored on `tiles`. */
1487
+ columns?: 1 | 2;
1455
1488
  };
1456
1489
  };
1457
1490
  export type DocumentChartSection = {
@@ -43,6 +43,7 @@ export declare function getCardDefinition(card: DefinitionCard, catalog?: Matrix
43
43
  position: "before" | "after";
44
44
  label?: string | undefined;
45
45
  }>>;
46
+ skipRedundant?: boolean | undefined;
46
47
  };
47
48
  rows: {
48
49
  grand: {
@@ -55,6 +56,7 @@ export declare function getCardDefinition(card: DefinitionCard, catalog?: Matrix
55
56
  position: "before" | "after";
56
57
  label?: string | undefined;
57
58
  }>>;
59
+ skipRedundant?: boolean | undefined;
58
60
  };
59
61
  };
60
62
  layout: {
@@ -2,19 +2,20 @@ import { TDashboard, TCard, TSheet } from '../types/common-types.js';
2
2
  export type DashboardCardEntry = {
3
3
  card: TCard;
4
4
  sheet: TSheet;
5
- };
6
- export declare function getDashboardCardEntries(dashboard: Pick<TDashboard, 'sheets'>): DashboardCardEntry[];
7
- export type DashboardCardLocation = DashboardCardEntry & {
8
- /** Set when the card is the visual of a document section. */
5
+ /** Set when the card sits in a frame. */
6
+ frameId?: string;
7
+ /** Set when the card belongs to a document section (a section may own several cards). */
9
8
  sectionId?: string;
10
9
  };
10
+ /** Dashboard cards: sheet cards and frame cards. Document section cards are not included. */
11
+ export declare function getDashboardCardEntries(dashboard: Pick<TDashboard, 'sheets'>): DashboardCardEntry[];
11
12
  /**
12
13
  * Every card a dashboard hosts, with where it sits: sheet cards, frame cards,
13
- * and the table or chart of a document section. Use this, not
14
+ * and every card of a document section. Use this, not
14
15
  * `getDashboardCardEntries`, when a card may be reached by a scope that names
15
16
  * document sections.
16
17
  */
17
- export declare function getDashboardCardLocations(dashboard: Pick<TDashboard, 'sheets'>): DashboardCardLocation[];
18
+ export declare function getDashboardCardLocations(dashboard: Pick<TDashboard, 'sheets'>): DashboardCardEntry[];
18
19
  export declare function getDashboardCards(dashboard: Pick<TDashboard, 'sheets'>): TCard[];
19
20
  /**
20
21
  * Check if a card ID is unique across the entire dashboard
@@ -53,6 +54,12 @@ export declare function getAllCardIds(dashboard: TDashboard): string[];
53
54
  * @returns The card if found, undefined otherwise
54
55
  */
55
56
  export declare function findCardById(dashboard: TDashboard, cardId: string): TCard | undefined;
57
+ /**
58
+ * A dashboard card (sheet or frame) by id. Document section cards are not
59
+ * included: they need their section for input resolution, so they are found
60
+ * through section-aware lookups (for example the dashboard input snapshot's
61
+ * section targets). Phase 1.2 routes KPI card execution through those.
62
+ */
56
63
  export declare function findCardLocationById(dashboard: TDashboard, cardId: string): {
57
64
  card: TCard;
58
65
  sheet: TSheet;
@@ -0,0 +1,2 @@
1
+ export * from './shared/format-utils/pdf-table-layout/index.js'
2
+ export {}
@@ -26,7 +26,7 @@ export * from './matrix-window-contract.js';
26
26
  export * from './matrix-member-presentation.js';
27
27
  export { matrixFormattingRoleSchema, type MatrixFormattingRole } from './matrix-path-contract.js';
28
28
  export { getMatrixAnalyticalDefinition } from './matrix-analytical-definition.js';
29
- export { matrixAxisSchema, matrixAggregateSchema, matrixFieldSchema, matrixLevelSchema, matrixMeasureSchema, matrixMemberSchema, matrixPathSchema, matrixCoordinateSchema, matrixSortTargetSchema, matrixSortSchema, matrixRankingSchema, matrixPathKey, matrixSortKey, matrixSpecSchema, matrixTotalPresentationSchema, matrixPresentationSchema, matrixExpansionSchema, matrixDefaultViewSchema, matrixViewStateSchema, matrixDefinitionInputSchema, matrixConfigSchema, matrixExportRequestSchema, } from './matrix-definition-contract.js';
29
+ export { matrixAxisSchema, matrixAggregateSchema, matrixFieldSchema, matrixLevelSchema, matrixMeasureSchema, matrixMemberSchema, matrixPathSchema, matrixCoordinateSchema, matrixSortTargetSchema, matrixSortSchema, matrixRankingSchema, matrixPathKey, matrixSortKey, matrixSpecSchema, matrixTotalPresentationSchema, MATRIX_TOTAL_MEMBER_PLACEHOLDER, matrixPresentationSchema, matrixExpansionSchema, matrixDefaultViewSchema, matrixViewStateSchema, matrixDefinitionInputSchema, matrixConfigSchema, matrixExportRequestSchema, } from './matrix-definition-contract.js';
30
30
  export type { MatrixLevelId, MatrixMeasureId, MatrixAxis, MatrixAggregate, MatrixField, MatrixLevel, MatrixMeasure, MatrixMember, MatrixPath, MatrixCoordinate, MatrixSortTarget, MatrixSort, MatrixRanking, MatrixSpec, MatrixTotalPresentation, MatrixPresentation, MatrixExpansion, MatrixViewState, MatrixConfig, MatrixDefinitionInput, MatrixExportRequest, } from './matrix-definition-contract.js';
31
31
  export * from './matrix-operation-contract.js';
32
32
  export { configSourceRefSchema } from './execution-input-schemas.js';
@@ -794,9 +794,12 @@ declare const analyticalIntentShape: z.ZodObject<{
794
794
  type MatrixAnalyticalIntentSchema = z.ZodEffects<typeof analyticalIntentShape>;
795
795
  /** Analytical definition only; acquisition windows are sibling operation inputs. */
796
796
  export declare const matrixAnalyticalIntentSchema: MatrixAnalyticalIntentSchema;
797
+ /** The placeholder a subtotal label uses for its member's name. */
798
+ export declare const MATRIX_TOTAL_MEMBER_PLACEHOLDER = "{member}";
797
799
  export declare const matrixTotalPresentationSchema: z.ZodObject<{
798
800
  visible: z.ZodBoolean;
799
801
  position: z.ZodEnum<["before", "after"]>;
802
+ /** As written; a subtotal's `{member}` becomes its member's name. */
800
803
  label: z.ZodOptional<z.ZodString>;
801
804
  }, "strict", z.ZodTypeAny, {
802
805
  visible: boolean;
@@ -2255,6 +2258,7 @@ declare const presentationFields: {
2255
2258
  grand: z.ZodObject<{
2256
2259
  visible: z.ZodBoolean;
2257
2260
  position: z.ZodEnum<["before", "after"]>;
2261
+ /** As written; a subtotal's `{member}` becomes its member's name. */
2258
2262
  label: z.ZodOptional<z.ZodString>;
2259
2263
  }, "strict", z.ZodTypeAny, {
2260
2264
  visible: boolean;
@@ -2268,6 +2272,7 @@ declare const presentationFields: {
2268
2272
  levels: z.ZodReadonly<z.ZodRecord<z.ZodString, z.ZodObject<{
2269
2273
  visible: z.ZodBoolean;
2270
2274
  position: z.ZodEnum<["before", "after"]>;
2275
+ /** As written; a subtotal's `{member}` becomes its member's name. */
2271
2276
  label: z.ZodOptional<z.ZodString>;
2272
2277
  }, "strict", z.ZodTypeAny, {
2273
2278
  visible: boolean;
@@ -2278,6 +2283,11 @@ declare const presentationFields: {
2278
2283
  position: "before" | "after";
2279
2284
  label?: string | undefined;
2280
2285
  }>>>;
2286
+ /**
2287
+ * Skip a subtotal that only repeats one row: an expanded group with
2288
+ * exactly one child shows no subtotal. Off when absent.
2289
+ */
2290
+ skipRedundant: z.ZodOptional<z.ZodBoolean>;
2281
2291
  }, "strict", z.ZodTypeAny, {
2282
2292
  grand: {
2283
2293
  visible: boolean;
@@ -2289,6 +2299,7 @@ declare const presentationFields: {
2289
2299
  position: "before" | "after";
2290
2300
  label?: string | undefined;
2291
2301
  }>>;
2302
+ skipRedundant?: boolean | undefined;
2292
2303
  }, {
2293
2304
  grand: {
2294
2305
  visible: boolean;
@@ -2300,11 +2311,13 @@ declare const presentationFields: {
2300
2311
  position: "before" | "after";
2301
2312
  label?: string | undefined;
2302
2313
  }>>;
2314
+ skipRedundant?: boolean | undefined;
2303
2315
  }>;
2304
2316
  columns: z.ZodObject<{
2305
2317
  grand: z.ZodObject<{
2306
2318
  visible: z.ZodBoolean;
2307
2319
  position: z.ZodEnum<["before", "after"]>;
2320
+ /** As written; a subtotal's `{member}` becomes its member's name. */
2308
2321
  label: z.ZodOptional<z.ZodString>;
2309
2322
  }, "strict", z.ZodTypeAny, {
2310
2323
  visible: boolean;
@@ -2318,6 +2331,7 @@ declare const presentationFields: {
2318
2331
  levels: z.ZodReadonly<z.ZodRecord<z.ZodString, z.ZodObject<{
2319
2332
  visible: z.ZodBoolean;
2320
2333
  position: z.ZodEnum<["before", "after"]>;
2334
+ /** As written; a subtotal's `{member}` becomes its member's name. */
2321
2335
  label: z.ZodOptional<z.ZodString>;
2322
2336
  }, "strict", z.ZodTypeAny, {
2323
2337
  visible: boolean;
@@ -2328,6 +2342,11 @@ declare const presentationFields: {
2328
2342
  position: "before" | "after";
2329
2343
  label?: string | undefined;
2330
2344
  }>>>;
2345
+ /**
2346
+ * Skip a subtotal that only repeats one row: an expanded group with
2347
+ * exactly one child shows no subtotal. Off when absent.
2348
+ */
2349
+ skipRedundant: z.ZodOptional<z.ZodBoolean>;
2331
2350
  }, "strict", z.ZodTypeAny, {
2332
2351
  grand: {
2333
2352
  visible: boolean;
@@ -2339,6 +2358,7 @@ declare const presentationFields: {
2339
2358
  position: "before" | "after";
2340
2359
  label?: string | undefined;
2341
2360
  }>>;
2361
+ skipRedundant?: boolean | undefined;
2342
2362
  }, {
2343
2363
  grand: {
2344
2364
  visible: boolean;
@@ -2350,6 +2370,7 @@ declare const presentationFields: {
2350
2370
  position: "before" | "after";
2351
2371
  label?: string | undefined;
2352
2372
  }>>;
2373
+ skipRedundant?: boolean | undefined;
2353
2374
  }>;
2354
2375
  }, "strict", z.ZodTypeAny, {
2355
2376
  columns: {
@@ -2363,6 +2384,7 @@ declare const presentationFields: {
2363
2384
  position: "before" | "after";
2364
2385
  label?: string | undefined;
2365
2386
  }>>;
2387
+ skipRedundant?: boolean | undefined;
2366
2388
  };
2367
2389
  rows: {
2368
2390
  grand: {
@@ -2375,6 +2397,7 @@ declare const presentationFields: {
2375
2397
  position: "before" | "after";
2376
2398
  label?: string | undefined;
2377
2399
  }>>;
2400
+ skipRedundant?: boolean | undefined;
2378
2401
  };
2379
2402
  }, {
2380
2403
  columns: {
@@ -2388,6 +2411,7 @@ declare const presentationFields: {
2388
2411
  position: "before" | "after";
2389
2412
  label?: string | undefined;
2390
2413
  }>>;
2414
+ skipRedundant?: boolean | undefined;
2391
2415
  };
2392
2416
  rows: {
2393
2417
  grand: {
@@ -2400,6 +2424,7 @@ declare const presentationFields: {
2400
2424
  position: "before" | "after";
2401
2425
  label?: string | undefined;
2402
2426
  }>>;
2427
+ skipRedundant?: boolean | undefined;
2403
2428
  };
2404
2429
  }>;
2405
2430
  conditionalFormatting: z.ZodOptional<z.ZodEffects<z.ZodObject<{
@@ -3907,6 +3932,7 @@ declare const definitionInputShape: z.ZodObject<{
3907
3932
  position: "before" | "after";
3908
3933
  label?: string | undefined;
3909
3934
  }>>;
3935
+ skipRedundant?: boolean | undefined;
3910
3936
  };
3911
3937
  rows: {
3912
3938
  grand: {
@@ -3919,6 +3945,7 @@ declare const definitionInputShape: z.ZodObject<{
3919
3945
  position: "before" | "after";
3920
3946
  label?: string | undefined;
3921
3947
  }>>;
3948
+ skipRedundant?: boolean | undefined;
3922
3949
  };
3923
3950
  };
3924
3951
  layout: {
@@ -4306,6 +4333,7 @@ declare const definitionInputShape: z.ZodObject<{
4306
4333
  position: "before" | "after";
4307
4334
  label?: string | undefined;
4308
4335
  }>>;
4336
+ skipRedundant?: boolean | undefined;
4309
4337
  };
4310
4338
  rows: {
4311
4339
  grand: {
@@ -4318,6 +4346,7 @@ declare const definitionInputShape: z.ZodObject<{
4318
4346
  position: "before" | "after";
4319
4347
  label?: string | undefined;
4320
4348
  }>>;
4349
+ skipRedundant?: boolean | undefined;
4321
4350
  };
4322
4351
  };
4323
4352
  layout: {
@@ -4714,6 +4743,7 @@ declare const configShape: z.ZodObject<{
4714
4743
  position: "before" | "after";
4715
4744
  label?: string | undefined;
4716
4745
  }>>;
4746
+ skipRedundant?: boolean | undefined;
4717
4747
  };
4718
4748
  rows: {
4719
4749
  grand: {
@@ -4726,6 +4756,7 @@ declare const configShape: z.ZodObject<{
4726
4756
  position: "before" | "after";
4727
4757
  label?: string | undefined;
4728
4758
  }>>;
4759
+ skipRedundant?: boolean | undefined;
4729
4760
  };
4730
4761
  };
4731
4762
  layout: {
@@ -5046,6 +5077,7 @@ declare const configShape: z.ZodObject<{
5046
5077
  position: "before" | "after";
5047
5078
  label?: string | undefined;
5048
5079
  }>>;
5080
+ skipRedundant?: boolean | undefined;
5049
5081
  };
5050
5082
  rows: {
5051
5083
  grand: {
@@ -5058,6 +5090,7 @@ declare const configShape: z.ZodObject<{
5058
5090
  position: "before" | "after";
5059
5091
  label?: string | undefined;
5060
5092
  }>>;
5093
+ skipRedundant?: boolean | undefined;
5061
5094
  };
5062
5095
  };
5063
5096
  layout: {
@@ -5388,6 +5421,7 @@ declare const authoringConfigShape: z.ZodObject<{
5388
5421
  position: "before" | "after";
5389
5422
  label?: string | undefined;
5390
5423
  }>>;
5424
+ skipRedundant?: boolean | undefined;
5391
5425
  };
5392
5426
  rows: {
5393
5427
  grand: {
@@ -5400,6 +5434,7 @@ declare const authoringConfigShape: z.ZodObject<{
5400
5434
  position: "before" | "after";
5401
5435
  label?: string | undefined;
5402
5436
  }>>;
5437
+ skipRedundant?: boolean | undefined;
5403
5438
  };
5404
5439
  };
5405
5440
  layout: {
@@ -5720,6 +5755,7 @@ declare const authoringConfigShape: z.ZodObject<{
5720
5755
  position: "before" | "after";
5721
5756
  label?: string | undefined;
5722
5757
  }>>;
5758
+ skipRedundant?: boolean | undefined;
5723
5759
  };
5724
5760
  rows: {
5725
5761
  grand: {
@@ -5732,6 +5768,7 @@ declare const authoringConfigShape: z.ZodObject<{
5732
5768
  position: "before" | "after";
5733
5769
  label?: string | undefined;
5734
5770
  }>>;
5771
+ skipRedundant?: boolean | undefined;
5735
5772
  };
5736
5773
  };
5737
5774
  layout: {
@@ -6158,6 +6195,7 @@ declare const exportRequestShape: z.ZodUnion<[z.ZodObject<{
6158
6195
  position: "before" | "after";
6159
6196
  label?: string | undefined;
6160
6197
  }>>;
6198
+ skipRedundant?: boolean | undefined;
6161
6199
  };
6162
6200
  rows: {
6163
6201
  grand: {
@@ -6170,6 +6208,7 @@ declare const exportRequestShape: z.ZodUnion<[z.ZodObject<{
6170
6208
  position: "before" | "after";
6171
6209
  label?: string | undefined;
6172
6210
  }>>;
6211
+ skipRedundant?: boolean | undefined;
6173
6212
  };
6174
6213
  };
6175
6214
  layout: {
@@ -6494,6 +6533,7 @@ declare const exportRequestShape: z.ZodUnion<[z.ZodObject<{
6494
6533
  position: "before" | "after";
6495
6534
  label?: string | undefined;
6496
6535
  }>>;
6536
+ skipRedundant?: boolean | undefined;
6497
6537
  };
6498
6538
  rows: {
6499
6539
  grand: {
@@ -6506,6 +6546,7 @@ declare const exportRequestShape: z.ZodUnion<[z.ZodObject<{
6506
6546
  position: "before" | "after";
6507
6547
  label?: string | undefined;
6508
6548
  }>>;
6549
+ skipRedundant?: boolean | undefined;
6509
6550
  };
6510
6551
  };
6511
6552
  layout: {
@@ -6836,6 +6877,7 @@ declare const exportRequestShape: z.ZodUnion<[z.ZodObject<{
6836
6877
  position: "before" | "after";
6837
6878
  label?: string | undefined;
6838
6879
  }>>;
6880
+ skipRedundant?: boolean | undefined;
6839
6881
  };
6840
6882
  rows: {
6841
6883
  grand: {
@@ -6848,6 +6890,7 @@ declare const exportRequestShape: z.ZodUnion<[z.ZodObject<{
6848
6890
  position: "before" | "after";
6849
6891
  label?: string | undefined;
6850
6892
  }>>;
6893
+ skipRedundant?: boolean | undefined;
6851
6894
  };
6852
6895
  };
6853
6896
  layout: {
@@ -7127,6 +7170,7 @@ declare const exportRequestShape: z.ZodUnion<[z.ZodObject<{
7127
7170
  position: "before" | "after";
7128
7171
  label?: string | undefined;
7129
7172
  }>>;
7173
+ skipRedundant?: boolean | undefined;
7130
7174
  };
7131
7175
  rows: {
7132
7176
  grand: {
@@ -7139,6 +7183,7 @@ declare const exportRequestShape: z.ZodUnion<[z.ZodObject<{
7139
7183
  position: "before" | "after";
7140
7184
  label?: string | undefined;
7141
7185
  }>>;
7186
+ skipRedundant?: boolean | undefined;
7142
7187
  };
7143
7188
  };
7144
7189
  layout: {
@@ -10,6 +10,10 @@ export declare function resolveMatrixMemberPresentation(input: {
10
10
  total?: MatrixTotalPresentation;
11
11
  childrenEmpty?: boolean;
12
12
  rowLayout?: 'compact' | 'tabular';
13
+ /** The axis's `totals.skipRedundant`. */
14
+ skipRedundant?: boolean;
15
+ /** The group has exactly one child: its first child page holds one member and no cursor after it. */
16
+ singleChild?: boolean;
13
17
  }): {
14
18
  expandable: boolean;
15
19
  expanded: boolean;