react-semaphor 0.1.453 → 0.1.454
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/analytics-protocol/index.cjs +1 -1
- package/dist/analytics-protocol/index.js +100 -99
- package/dist/brand-studio/index.cjs +1 -1
- package/dist/brand-studio/index.js +4 -4
- package/dist/briefings/index.cjs +1 -1
- package/dist/briefings/index.js +4 -4
- package/dist/chunks/{analyze-result-contract-GHKFwThg.js → analyze-result-contract-BbRJ-C06.js} +1 -1
- package/dist/chunks/{analyze-result-contract-Dxw66nUG.cjs → analyze-result-contract-LPDNldic.cjs} +1 -1
- package/dist/chunks/canonical-result-keys-BA0HCP4e.cjs +1 -0
- package/dist/chunks/{canonical-result-keys-KLk__J_O.js → canonical-result-keys-D6avdjpA.js} +14 -13
- package/dist/chunks/{common-types-Ci66eflG.cjs → common-types-C57kJ59w.cjs} +1 -1
- package/dist/chunks/{common-types-F6qk6PPS.js → common-types-H51FLKB7.js} +1 -1
- package/dist/chunks/{dashboard-briefing-launcher-mUXWuiOZ.cjs → dashboard-briefing-launcher-Dwj1i7lr.cjs} +1 -1
- package/dist/chunks/{dashboard-briefing-launcher-CFpX0WX3.js → dashboard-briefing-launcher-SYroFdae.js} +10 -10
- package/dist/chunks/{dashboard-controls-BeYAmOJc.js → dashboard-controls-1LpeU2sz.js} +10 -10
- package/dist/chunks/{dashboard-controls-SoNubIu1.cjs → dashboard-controls-CpFoh7-A.cjs} +1 -1
- package/dist/chunks/dashboard-date-comparison-definition-Ces4alFm.cjs +1 -0
- package/dist/chunks/{dashboard-date-comparison-definition-Ba-clViK.js → dashboard-date-comparison-definition-DC3ekV2S.js} +1 -1
- package/dist/chunks/{dashboard-json-DeLUagVV.js → dashboard-json-D-T-sQxU.js} +8 -8
- package/dist/chunks/{dashboard-json-BublPnQ4.cjs → dashboard-json-DwSQopc_.cjs} +1 -1
- package/dist/chunks/{edit-dashboard-visual-CrvPcO7A.cjs → edit-dashboard-visual-BEmoQAET.cjs} +1 -1
- package/dist/chunks/{edit-dashboard-visual-Go0h82DR.js → edit-dashboard-visual-DqxUq4Bs.js} +12 -12
- package/dist/chunks/{editor-action-buttons-1Lo0fIh7.cjs → editor-action-buttons-18r2xwei.cjs} +1 -1
- package/dist/chunks/{editor-action-buttons-BFNtjFzO.js → editor-action-buttons-B2l3WIRC.js} +6 -6
- package/dist/chunks/index-Bn5wlkHt.cjs +4 -0
- package/dist/chunks/{index-q12_nNUS.cjs → index-CLB_NGZ8.cjs} +231 -231
- package/dist/chunks/{index-B3ZugihZ.js → index-Ca784dpx.js} +93 -92
- package/dist/chunks/{index-BsH32bn1.js → index-DAoS4BNU.js} +36188 -35785
- package/dist/chunks/matrix-result-contract-CofATICL.js +437 -0
- package/dist/chunks/matrix-result-contract-zamd9euI.cjs +1 -0
- package/dist/chunks/{pivot-header-presentation-DcfPaCiy.cjs → pivot-header-presentation-DhyQXxKq.cjs} +1 -1
- package/dist/chunks/{pivot-header-presentation-nk604qc1.js → pivot-header-presentation-ckYOQ4aZ.js} +2 -2
- package/dist/chunks/{pivot-result-identity-CRUokNgm.cjs → pivot-result-identity-Bb4EixVN.cjs} +1 -1
- package/dist/chunks/{pivot-result-identity-C43Ai5Kr.js → pivot-result-identity-DU1v-5Xk.js} +1 -1
- package/dist/chunks/pivot-result-lifecycle-DmcF1ris.cjs +1 -0
- package/dist/chunks/{pivot-result-lifecycle-4kSe0Hk1.js → pivot-result-lifecycle-sjzIOpvp.js} +57 -58
- package/dist/chunks/{raw-temporal-contract-CxbRFwnd.cjs → raw-temporal-contract-BtjH_G-d.cjs} +1 -1
- package/dist/chunks/{raw-temporal-contract-BF7PjBY9.js → raw-temporal-contract-CxncLze5.js} +1 -1
- package/dist/chunks/{report-preferences-dialog-BEVZAE3m.cjs → report-preferences-dialog-BgSvlDXa.cjs} +1 -1
- package/dist/chunks/{report-preferences-dialog-BNV7qXYH.js → report-preferences-dialog-DDc2WUa0.js} +6 -6
- package/dist/chunks/{report-runtime-context-DjYqLV-c.cjs → report-runtime-context-DqxS4wbi.cjs} +1 -1
- package/dist/chunks/{report-runtime-context-BJQDu2fV.js → report-runtime-context-SM6YO61_.js} +5 -5
- package/dist/chunks/saved-temporal-bucket-format-CFfWXRl9.cjs +1 -0
- package/dist/chunks/{saved-temporal-bucket-format-DiZdQXOL.js → saved-temporal-bucket-format-SGAV0ivR.js} +33 -35
- package/dist/chunks/{switch-DgLwr7O-.js → switch-BeZW-HnS.js} +367 -369
- package/dist/chunks/{switch-CjJ6FHYJ.cjs → switch-D-CCcfhc.cjs} +28 -28
- package/dist/chunks/temporal-bucket-5UYEotyQ.js +810 -0
- package/dist/chunks/temporal-bucket-DHY1y9lq.cjs +1 -0
- package/dist/chunks/{temporal-bucket-authoring-FIRnJz0e.js → temporal-bucket-authoring-K1kE6R_z.js} +28 -27
- package/dist/chunks/temporal-bucket-authoring-o3Emn05L.cjs +1 -0
- package/dist/chunks/{temporal-bucket-contract-anl4h-vg.cjs → temporal-bucket-contract-D2-93DGr.cjs} +1 -1
- package/dist/chunks/{temporal-bucket-contract-BQOj6Frl.js → temporal-bucket-contract-D5d-xEl3.js} +1 -1
- package/dist/chunks/{token-types-D0i0IUX3.cjs → token-types-D7CaaI80.cjs} +1 -1
- package/dist/chunks/{token-types-CRpQJ4kv.js → token-types-GbxRUozo.js} +1 -1
- package/dist/chunks/{update-policy-C1i9bgsy.cjs → update-policy-BmiOd0PB.cjs} +1 -1
- package/dist/chunks/{update-policy-CaJz9aPG.js → update-policy-hednMF-0.js} +1 -1
- package/dist/chunks/validators-BDYprKI9.cjs +1 -0
- package/dist/chunks/{validators-DeMXwRON.js → validators-DEmd8Sin.js} +1544 -1200
- package/dist/dashboard/index.cjs +1 -1
- package/dist/dashboard/index.js +2 -2
- package/dist/dashboard-authoring/index.cjs +3 -3
- package/dist/dashboard-authoring/index.js +7 -7
- package/dist/data-app-builder/index.cjs +1 -1
- package/dist/data-app-builder/index.js +2 -2
- package/dist/data-app-codegen/index.cjs +1 -1
- package/dist/data-app-codegen/index.js +2 -2
- package/dist/data-app-codegen-node/index.cjs +1 -1
- package/dist/data-app-codegen-node/index.js +3 -3
- package/dist/data-app-sdk/index.cjs +1 -1
- package/dist/data-app-sdk/index.js +78 -77
- package/dist/data-app-sdk-adapters/index.cjs +1 -1
- package/dist/data-app-sdk-adapters/index.js +29 -30
- package/dist/data-app-sdk-validation/index.cjs +1 -1
- package/dist/data-app-sdk-validation/index.js +21 -21
- package/dist/format-utils/index.cjs +3 -3
- package/dist/format-utils/index.js +39 -40
- package/dist/index.cjs +1 -1
- package/dist/index.js +15 -15
- package/dist/report-runtime-context/index.cjs +1 -1
- package/dist/report-runtime-context/index.js +2 -2
- package/dist/surfboard/index.cjs +1 -1
- package/dist/surfboard/index.js +3 -3
- package/dist/types/analytics-protocol.d.ts +44 -11
- package/dist/types/briefings.d.ts +9 -12
- package/dist/types/dashboard-assistant.d.ts +19 -17
- package/dist/types/dashboard-authoring.d.ts +9 -12
- package/dist/types/dashboard.d.ts +9 -12
- package/dist/types/data-app-builder.d.ts +28 -2
- package/dist/types/data-app-codegen-node.d.ts +29 -3
- package/dist/types/data-app-codegen.d.ts +29 -3
- package/dist/types/data-app-sdk-adapters.d.ts +28 -2
- package/dist/types/data-app-sdk-validation.d.ts +38 -7
- package/dist/types/data-app-sdk.d.ts +42 -10
- package/dist/types/index.cjs +1 -1
- package/dist/types/index.js +4 -4
- package/dist/types/main.d.ts +25 -21
- package/dist/types/shared.d.ts +9 -12
- package/dist/types/surfboard.d.ts +9 -12
- package/dist/types/types.d.ts +19 -17
- package/package.json +1 -1
- package/dist/chunks/canonical-result-keys-Drc2x-lf.cjs +0 -1
- package/dist/chunks/catalog-field-grounding-Bnx-3tE0.cjs +0 -1
- package/dist/chunks/catalog-field-grounding-S2jKwKGD.js +0 -100
- package/dist/chunks/dashboard-date-comparison-definition-DZq0htjG.cjs +0 -1
- package/dist/chunks/dashboard-input-contract-DSt8dGzP.js +0 -18
- package/dist/chunks/dashboard-input-contract-DV3cshjz.cjs +0 -1
- package/dist/chunks/index-DjiIh_9n.cjs +0 -4
- package/dist/chunks/metric-comparison-D0T0MKRK.js +0 -387
- package/dist/chunks/metric-comparison-DYR3RXam.cjs +0 -1
- package/dist/chunks/pivot-result-lifecycle-BiJepH5S.cjs +0 -1
- package/dist/chunks/saved-temporal-bucket-format-Gfbh4IiP.cjs +0 -1
- package/dist/chunks/temporal-bucket-Dnj8qT9l.cjs +0 -1
- package/dist/chunks/temporal-bucket-FBZGrDCe.js +0 -560
- package/dist/chunks/temporal-bucket-authoring-7hv2laOG.cjs +0 -1
- package/dist/chunks/validators-Dm7Kpz6p.cjs +0 -1
|
@@ -264,6 +264,8 @@ declare type SemaphorMatrixAxisLevel = {
|
|
|
264
264
|
id?: string;
|
|
265
265
|
field: SemaphorFieldRef;
|
|
266
266
|
grain?: SemaphorMatrixTimeGrain;
|
|
267
|
+
format?: TemporalBucketFormat;
|
|
268
|
+
semanticTemporalPresentation?: SemaphorMatrixSemanticTemporalPresentation;
|
|
267
269
|
label?: string;
|
|
268
270
|
subtotal?: boolean | SemaphorMatrixSubtotalOptions;
|
|
269
271
|
sortBy?: SemaphorMatrixAxisSortRule;
|
|
@@ -274,7 +276,7 @@ declare type SemaphorMatrixAxisLevelInput = SemaphorQueryField | SemaphorMatrixA
|
|
|
274
276
|
declare type SemaphorMatrixAxisSortRule = {
|
|
275
277
|
direction: 'asc' | 'desc';
|
|
276
278
|
by: {
|
|
277
|
-
kind: '
|
|
279
|
+
kind: 'member';
|
|
278
280
|
} | {
|
|
279
281
|
kind: 'field';
|
|
280
282
|
field: SemaphorFieldRef;
|
|
@@ -342,12 +344,17 @@ declare type SemaphorMatrixQuerySpec = Omit<SemaphorMatrixIntent, 'kind' | 'vers
|
|
|
342
344
|
displayLimits?: SemaphorMatrixDisplayLimitOptions;
|
|
343
345
|
};
|
|
344
346
|
|
|
347
|
+
declare type SemaphorMatrixSemanticTemporalPresentation = {
|
|
348
|
+
granularity: SemaphorMatrixTimeGrain;
|
|
349
|
+
format: TemporalBucketFormat;
|
|
350
|
+
};
|
|
351
|
+
|
|
345
352
|
declare type SemaphorMatrixSortRule = {
|
|
346
353
|
axis: 'row' | 'column';
|
|
347
354
|
targetId?: string;
|
|
348
355
|
direction: 'asc' | 'desc';
|
|
349
356
|
by: {
|
|
350
|
-
kind: '
|
|
357
|
+
kind: 'member';
|
|
351
358
|
} | {
|
|
352
359
|
kind: 'field';
|
|
353
360
|
field: SemaphorFieldRef;
|
|
@@ -682,6 +689,25 @@ declare type SemaphorTimeGrain = (typeof SEMAPHOR_TIME_GRAINS)[number];
|
|
|
682
689
|
|
|
683
690
|
declare type SemaphorTimeWindow = SemaphorRelativeTimeWindow | SemaphorAbsoluteTimeWindow;
|
|
684
691
|
|
|
692
|
+
declare const TEMPORAL_BUCKET_PRESETS: readonly ["week_of_short", "week_of_long", "quarter_short", "quarter_long", "fiscal_quarter_short", "fiscal_year"];
|
|
693
|
+
|
|
694
|
+
declare type TemporalBucketFormat = {
|
|
695
|
+
type: 'temporal_bucket';
|
|
696
|
+
presentation: TemporalBucketPresentation;
|
|
697
|
+
};
|
|
698
|
+
|
|
699
|
+
declare type TemporalBucketPresentation = {
|
|
700
|
+
mode: 'auto';
|
|
701
|
+
} | {
|
|
702
|
+
mode: 'preset';
|
|
703
|
+
preset: TemporalBucketPreset;
|
|
704
|
+
} | {
|
|
705
|
+
mode: 'pattern';
|
|
706
|
+
pattern: string;
|
|
707
|
+
};
|
|
708
|
+
|
|
709
|
+
declare type TemporalBucketPreset = (typeof TEMPORAL_BUCKET_PRESETS)[number];
|
|
710
|
+
|
|
685
711
|
export declare function toSemaphorActiveInputSnapshots(inputs: SemaphorInputReference[] | undefined): SemaphorActiveInput[];
|
|
686
712
|
|
|
687
713
|
export declare function toSemaphorAnalysisIntent(spec: SemaphorAnalysisQuerySpec): SemaphorMetricIntent;
|
|
@@ -21,6 +21,7 @@ declare type MatrixAxisLevelDescriptor = {
|
|
|
21
21
|
label: string;
|
|
22
22
|
field: SemaphorFieldRef;
|
|
23
23
|
grain?: SemaphorMatrixTimeGrain;
|
|
24
|
+
temporalBucket?: TemporalBucketMetadata;
|
|
24
25
|
subtotal?: SemaphorMatrixSubtotalOptions;
|
|
25
26
|
};
|
|
26
27
|
|
|
@@ -95,7 +96,8 @@ declare type MatrixFormattingContext = {
|
|
|
95
96
|
|
|
96
97
|
declare type MatrixGridColumn = {
|
|
97
98
|
id: string;
|
|
98
|
-
|
|
99
|
+
/** Present only for measure and explicit total headings. */
|
|
100
|
+
label?: string;
|
|
99
101
|
columnNodeId?: string;
|
|
100
102
|
columnPath: MatrixMemberPathSegment[];
|
|
101
103
|
measureInstanceId: string;
|
|
@@ -104,7 +106,8 @@ declare type MatrixGridColumn = {
|
|
|
104
106
|
|
|
105
107
|
declare type MatrixGridHeaderCell = {
|
|
106
108
|
id: string;
|
|
107
|
-
|
|
109
|
+
/** Present only for non-member headings and explicit total labels. */
|
|
110
|
+
label?: string;
|
|
108
111
|
role: 'rowHeader' | 'columnHeader' | 'measureHeader' | 'subtotal' | 'grandTotal';
|
|
109
112
|
colSpan: number;
|
|
110
113
|
rowSpan: number;
|
|
@@ -166,7 +169,8 @@ declare type MatrixMemberPathSegment = {
|
|
|
166
169
|
instanceId: string;
|
|
167
170
|
fieldKey: string;
|
|
168
171
|
value: unknown;
|
|
169
|
-
label
|
|
172
|
+
/** Display-only source label for non-temporal members. */
|
|
173
|
+
label?: string;
|
|
170
174
|
};
|
|
171
175
|
|
|
172
176
|
declare type MatrixNode = {
|
|
@@ -174,7 +178,8 @@ declare type MatrixNode = {
|
|
|
174
178
|
axis: 'row' | 'column';
|
|
175
179
|
path: MatrixMemberPathSegment[];
|
|
176
180
|
level: number;
|
|
177
|
-
|
|
181
|
+
/** Present only for non-temporal members and explicit total labels. */
|
|
182
|
+
label?: string;
|
|
178
183
|
value: unknown;
|
|
179
184
|
parentId?: string;
|
|
180
185
|
hasChildren: boolean;
|
|
@@ -717,6 +722,8 @@ declare type SemaphorMatrixAxisLevel = {
|
|
|
717
722
|
id?: string;
|
|
718
723
|
field: SemaphorFieldRef;
|
|
719
724
|
grain?: SemaphorMatrixTimeGrain;
|
|
725
|
+
format?: TemporalBucketFormat;
|
|
726
|
+
semanticTemporalPresentation?: SemaphorMatrixSemanticTemporalPresentation;
|
|
720
727
|
label?: string;
|
|
721
728
|
subtotal?: boolean | SemaphorMatrixSubtotalOptions;
|
|
722
729
|
sortBy?: SemaphorMatrixAxisSortRule;
|
|
@@ -727,7 +734,7 @@ declare type SemaphorMatrixAxisLevelInput = SemaphorQueryField | SemaphorMatrixA
|
|
|
727
734
|
declare type SemaphorMatrixAxisSortRule = {
|
|
728
735
|
direction: 'asc' | 'desc';
|
|
729
736
|
by: {
|
|
730
|
-
kind: '
|
|
737
|
+
kind: 'member';
|
|
731
738
|
} | {
|
|
732
739
|
kind: 'field';
|
|
733
740
|
field: SemaphorFieldRef;
|
|
@@ -801,7 +808,7 @@ declare type SemaphorMatrixQuerySpec = Omit<SemaphorMatrixIntent, 'kind' | 'vers
|
|
|
801
808
|
|
|
802
809
|
declare type SemaphorMatrixResult = SemaphorAnalyticsResultBase & {
|
|
803
810
|
kind: 'matrix';
|
|
804
|
-
schemaVersion:
|
|
811
|
+
schemaVersion: 2;
|
|
805
812
|
intent?: SemaphorMatrixIntent;
|
|
806
813
|
shape: MatrixShape;
|
|
807
814
|
capabilities: MatrixCapability[];
|
|
@@ -823,12 +830,17 @@ declare type SemaphorMatrixResult = SemaphorAnalyticsResultBase & {
|
|
|
823
830
|
expansion?: MatrixExpansionResponseHints;
|
|
824
831
|
};
|
|
825
832
|
|
|
833
|
+
declare type SemaphorMatrixSemanticTemporalPresentation = {
|
|
834
|
+
granularity: SemaphorMatrixTimeGrain;
|
|
835
|
+
format: TemporalBucketFormat;
|
|
836
|
+
};
|
|
837
|
+
|
|
826
838
|
declare type SemaphorMatrixSortRule = {
|
|
827
839
|
axis: 'row' | 'column';
|
|
828
840
|
targetId?: string;
|
|
829
841
|
direction: 'asc' | 'desc';
|
|
830
842
|
by: {
|
|
831
|
-
kind: '
|
|
843
|
+
kind: 'member';
|
|
832
844
|
} | {
|
|
833
845
|
kind: 'field';
|
|
834
846
|
field: SemaphorFieldRef;
|
|
@@ -1309,12 +1321,31 @@ declare type SemaphorTimeGrain = (typeof SEMAPHOR_TIME_GRAINS)[number];
|
|
|
1309
1321
|
|
|
1310
1322
|
declare type SemaphorTimeWindow = SemaphorRelativeTimeWindow | SemaphorAbsoluteTimeWindow;
|
|
1311
1323
|
|
|
1324
|
+
declare const TEMPORAL_BUCKET_PRESETS: readonly ["week_of_short", "week_of_long", "quarter_short", "quarter_long", "fiscal_quarter_short", "fiscal_year"];
|
|
1325
|
+
|
|
1326
|
+
declare type TemporalBucketFormat = {
|
|
1327
|
+
type: 'temporal_bucket';
|
|
1328
|
+
presentation: TemporalBucketPresentation;
|
|
1329
|
+
};
|
|
1330
|
+
|
|
1312
1331
|
declare type TemporalBucketMetadata = {
|
|
1313
1332
|
kind: 'temporal_bucket';
|
|
1314
1333
|
granularity: SemaphorTimeGrain;
|
|
1315
1334
|
calendar: Pick<CalendarContext, 'tz' | 'weekStart' | 'fiscalCalendar'>;
|
|
1316
1335
|
};
|
|
1317
1336
|
|
|
1337
|
+
declare type TemporalBucketPresentation = {
|
|
1338
|
+
mode: 'auto';
|
|
1339
|
+
} | {
|
|
1340
|
+
mode: 'preset';
|
|
1341
|
+
preset: TemporalBucketPreset;
|
|
1342
|
+
} | {
|
|
1343
|
+
mode: 'pattern';
|
|
1344
|
+
pattern: string;
|
|
1345
|
+
};
|
|
1346
|
+
|
|
1347
|
+
declare type TemporalBucketPreset = (typeof TEMPORAL_BUCKET_PRESETS)[number];
|
|
1348
|
+
|
|
1318
1349
|
export declare function validateSemaphorDataAppQuerySpecs(input: {
|
|
1319
1350
|
queries: SemaphorDataAppQuerySpecEnvelope[];
|
|
1320
1351
|
fieldCatalogs?: SemaphorDataAppFieldCatalog[];
|
|
@@ -26,6 +26,7 @@ declare type MatrixAxisLevelDescriptor = {
|
|
|
26
26
|
label: string;
|
|
27
27
|
field: SemaphorFieldRef;
|
|
28
28
|
grain?: SemaphorMatrixTimeGrain;
|
|
29
|
+
temporalBucket?: TemporalBucketMetadata;
|
|
29
30
|
subtotal?: SemaphorMatrixSubtotalOptions;
|
|
30
31
|
};
|
|
31
32
|
|
|
@@ -146,7 +147,8 @@ declare type MatrixGridCell = {
|
|
|
146
147
|
|
|
147
148
|
declare type MatrixGridColumn = {
|
|
148
149
|
id: string;
|
|
149
|
-
|
|
150
|
+
/** Present only for measure and explicit total headings. */
|
|
151
|
+
label?: string;
|
|
150
152
|
columnNodeId?: string;
|
|
151
153
|
columnPath: MatrixMemberPathSegment[];
|
|
152
154
|
measureInstanceId: string;
|
|
@@ -155,7 +157,8 @@ declare type MatrixGridColumn = {
|
|
|
155
157
|
|
|
156
158
|
declare type MatrixGridHeaderCell = {
|
|
157
159
|
id: string;
|
|
158
|
-
|
|
160
|
+
/** Present only for non-member headings and explicit total labels. */
|
|
161
|
+
label?: string;
|
|
159
162
|
role: 'rowHeader' | 'columnHeader' | 'measureHeader' | 'subtotal' | 'grandTotal';
|
|
160
163
|
colSpan: number;
|
|
161
164
|
rowSpan: number;
|
|
@@ -169,7 +172,7 @@ declare type MatrixGridHeaderRow = {
|
|
|
169
172
|
};
|
|
170
173
|
|
|
171
174
|
export declare type MatrixGridProjection = {
|
|
172
|
-
schemaVersion:
|
|
175
|
+
schemaVersion: 2;
|
|
173
176
|
shape: MatrixShape;
|
|
174
177
|
rowHeaderLevels: MatrixGridRowHeaderLevel[];
|
|
175
178
|
columnHeaderRows: MatrixGridHeaderRow[];
|
|
@@ -182,7 +185,8 @@ declare type MatrixGridRow = {
|
|
|
182
185
|
rowNodeId: string;
|
|
183
186
|
rowPath: MatrixMemberPathSegment[];
|
|
184
187
|
depth: number;
|
|
185
|
-
|
|
188
|
+
/** Present only for non-temporal members and explicit total labels. */
|
|
189
|
+
label?: string;
|
|
186
190
|
role: 'value' | 'rowSubtotal' | 'rowGrandTotal';
|
|
187
191
|
isExpanded?: boolean;
|
|
188
192
|
hasChildren?: boolean;
|
|
@@ -238,7 +242,8 @@ declare type MatrixMemberPathSegment = {
|
|
|
238
242
|
instanceId: string;
|
|
239
243
|
fieldKey: string;
|
|
240
244
|
value: unknown;
|
|
241
|
-
label
|
|
245
|
+
/** Display-only source label for non-temporal members. */
|
|
246
|
+
label?: string;
|
|
242
247
|
};
|
|
243
248
|
|
|
244
249
|
declare type MatrixNode = {
|
|
@@ -246,7 +251,8 @@ declare type MatrixNode = {
|
|
|
246
251
|
axis: 'row' | 'column';
|
|
247
252
|
path: MatrixMemberPathSegment[];
|
|
248
253
|
level: number;
|
|
249
|
-
|
|
254
|
+
/** Present only for non-temporal members and explicit total labels. */
|
|
255
|
+
label?: string;
|
|
250
256
|
value: unknown;
|
|
251
257
|
parentId?: string;
|
|
252
258
|
hasChildren: boolean;
|
|
@@ -275,7 +281,7 @@ declare type MatrixPageInfo = {
|
|
|
275
281
|
|
|
276
282
|
export declare type MatrixPayload = {
|
|
277
283
|
kind: 'matrixPayload';
|
|
278
|
-
schemaVersion:
|
|
284
|
+
schemaVersion: 2;
|
|
279
285
|
shape: MatrixShape;
|
|
280
286
|
capabilities: MatrixCapability[];
|
|
281
287
|
executionMetadata: MatrixExecutionMetadata;
|
|
@@ -1071,6 +1077,8 @@ export declare type SemaphorMatrixAxisLevel = {
|
|
|
1071
1077
|
id?: string;
|
|
1072
1078
|
field: SemaphorFieldRef;
|
|
1073
1079
|
grain?: SemaphorMatrixTimeGrain;
|
|
1080
|
+
format?: TemporalBucketFormat;
|
|
1081
|
+
semanticTemporalPresentation?: SemaphorMatrixSemanticTemporalPresentation;
|
|
1074
1082
|
label?: string;
|
|
1075
1083
|
subtotal?: boolean | SemaphorMatrixSubtotalOptions;
|
|
1076
1084
|
sortBy?: SemaphorMatrixAxisSortRule;
|
|
@@ -1081,7 +1089,7 @@ export declare type SemaphorMatrixAxisLevelInput = SemaphorQueryField | Semaphor
|
|
|
1081
1089
|
declare type SemaphorMatrixAxisSortRule = {
|
|
1082
1090
|
direction: 'asc' | 'desc';
|
|
1083
1091
|
by: {
|
|
1084
|
-
kind: '
|
|
1092
|
+
kind: 'member';
|
|
1085
1093
|
} | {
|
|
1086
1094
|
kind: 'field';
|
|
1087
1095
|
field: SemaphorFieldRef;
|
|
@@ -1171,7 +1179,7 @@ export declare type SemaphorMatrixQuerySpec = Omit<SemaphorMatrixIntent, 'kind'
|
|
|
1171
1179
|
|
|
1172
1180
|
declare type SemaphorMatrixResult = SemaphorAnalyticsResultBase & {
|
|
1173
1181
|
kind: 'matrix';
|
|
1174
|
-
schemaVersion:
|
|
1182
|
+
schemaVersion: 2;
|
|
1175
1183
|
intent?: SemaphorMatrixIntent;
|
|
1176
1184
|
shape: MatrixShape;
|
|
1177
1185
|
capabilities: MatrixCapability[];
|
|
@@ -1193,12 +1201,17 @@ declare type SemaphorMatrixResult = SemaphorAnalyticsResultBase & {
|
|
|
1193
1201
|
expansion?: MatrixExpansionResponseHints;
|
|
1194
1202
|
};
|
|
1195
1203
|
|
|
1204
|
+
declare type SemaphorMatrixSemanticTemporalPresentation = {
|
|
1205
|
+
granularity: SemaphorMatrixTimeGrain;
|
|
1206
|
+
format: TemporalBucketFormat;
|
|
1207
|
+
};
|
|
1208
|
+
|
|
1196
1209
|
export declare type SemaphorMatrixSortRule = {
|
|
1197
1210
|
axis: 'row' | 'column';
|
|
1198
1211
|
targetId?: string;
|
|
1199
1212
|
direction: 'asc' | 'desc';
|
|
1200
1213
|
by: {
|
|
1201
|
-
kind: '
|
|
1214
|
+
kind: 'member';
|
|
1202
1215
|
} | {
|
|
1203
1216
|
kind: 'field';
|
|
1204
1217
|
field: SemaphorFieldRef;
|
|
@@ -1803,12 +1816,31 @@ export declare function SemaphorViewBoundary({ id, title, children, }: {
|
|
|
1803
1816
|
children: ReactNode;
|
|
1804
1817
|
}): ReactElement;
|
|
1805
1818
|
|
|
1819
|
+
declare const TEMPORAL_BUCKET_PRESETS: readonly ["week_of_short", "week_of_long", "quarter_short", "quarter_long", "fiscal_quarter_short", "fiscal_year"];
|
|
1820
|
+
|
|
1821
|
+
declare type TemporalBucketFormat = {
|
|
1822
|
+
type: 'temporal_bucket';
|
|
1823
|
+
presentation: TemporalBucketPresentation;
|
|
1824
|
+
};
|
|
1825
|
+
|
|
1806
1826
|
declare type TemporalBucketMetadata = {
|
|
1807
1827
|
kind: 'temporal_bucket';
|
|
1808
1828
|
granularity: SemaphorTimeGrain;
|
|
1809
1829
|
calendar: Pick<CalendarContext, 'tz' | 'weekStart' | 'fiscalCalendar'>;
|
|
1810
1830
|
};
|
|
1811
1831
|
|
|
1832
|
+
declare type TemporalBucketPresentation = {
|
|
1833
|
+
mode: 'auto';
|
|
1834
|
+
} | {
|
|
1835
|
+
mode: 'preset';
|
|
1836
|
+
preset: TemporalBucketPreset;
|
|
1837
|
+
} | {
|
|
1838
|
+
mode: 'pattern';
|
|
1839
|
+
pattern: string;
|
|
1840
|
+
};
|
|
1841
|
+
|
|
1842
|
+
declare type TemporalBucketPreset = (typeof TEMPORAL_BUCKET_PRESETS)[number];
|
|
1843
|
+
|
|
1812
1844
|
export declare function useClearInvalidSemaphorInputValue(input: SemaphorInputHandle, optionsResult: Pick<SemaphorInputOptionsQueryResult, 'options' | 'status'> | undefined): void;
|
|
1813
1845
|
|
|
1814
1846
|
export declare function useSemaphorDevtools(): SemaphorDataAppDevtoolsState;
|
package/dist/types/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../chunks/common-types-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../chunks/common-types-C57kJ59w.cjs"),l=require("../chunks/token-types-D7CaaI80.cjs"),t=require("../chunks/pivot-result-identity-Bb4EixVN.cjs"),E=require("../chunks/report-runtime-context-DqxS4wbi.cjs");exports.CALCULATED_FIELD_ENTITY_MARKER=e.CALCULATED_FIELD_ENTITY_MARKER;exports.CONTROL_CARD_DEFAULT_VALUE=e.CONTROL_CARD_DEFAULT_VALUE;exports.DATE_FORMAT_VALUES=e.DATE_FORMAT_VALUES;exports.EMPTY_SELECTION=e.EMPTY_SELECTION;exports.PivotMarkerEnum=e.PivotMarkerEnum;exports.getFieldRuntimeColumnName=e.getFieldRuntimeColumnName;exports.hasCalculatedFieldMarker=e.hasCalculatedFieldMarker;exports.hasCalculatedFormulaInputs=e.hasCalculatedFormulaInputs;exports.isCalculatedDimension=e.isCalculatedDimension;exports.isCalculatedField=e.isCalculatedField;exports.isCalculatedMetric=e.isCalculatedMetric;exports.DEFAULT_SEMANTIC_DOMAIN_ACCESS=l.DEFAULT_SEMANTIC_DOMAIN_ACCESS;exports.resolveQueryColumnKeyMapEntry=t.resolveQueryColumnKeyMapEntry;exports.resolveUniqueQueryColumnKeyMapEntry=t.resolveUniqueQueryColumnKeyMapEntry;exports.DEFAULT_CALENDAR_CONTEXT=E.DEFAULT_CALENDAR_CONTEXT;
|
package/dist/types/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { a as s, C as r, D as E, E as l, P as C, g as o, d as t, h as A, b as u, c as T, i as _ } from "../chunks/common-types-
|
|
2
|
-
import { D } from "../chunks/token-types-
|
|
3
|
-
import { r as n, a as L } from "../chunks/pivot-result-identity-
|
|
4
|
-
import { D as d } from "../chunks/report-runtime-context-
|
|
1
|
+
import { a as s, C as r, D as E, E as l, P as C, g as o, d as t, h as A, b as u, c as T, i as _ } from "../chunks/common-types-H51FLKB7.js";
|
|
2
|
+
import { D } from "../chunks/token-types-GbxRUozo.js";
|
|
3
|
+
import { r as n, a as L } from "../chunks/pivot-result-identity-DU1v-5Xk.js";
|
|
4
|
+
import { D as d } from "../chunks/report-runtime-context-SM6YO61_.js";
|
|
5
5
|
export {
|
|
6
6
|
s as CALCULATED_FIELD_ENTITY_MARKER,
|
|
7
7
|
r as CONTROL_CARD_DEFAULT_VALUE,
|
package/dist/types/main.d.ts
CHANGED
|
@@ -3863,11 +3863,6 @@ export declare interface GroupByColumn extends BaseColumn {
|
|
|
3863
3863
|
export declare interface GroupByField extends Field {
|
|
3864
3864
|
role: 'groupby';
|
|
3865
3865
|
granularity?: TimeGranularity;
|
|
3866
|
-
/**
|
|
3867
|
-
* Query transport policy for grouped temporal values. This is projected
|
|
3868
|
-
* into executable card config and is not persisted authoring state.
|
|
3869
|
-
*/
|
|
3870
|
-
dateValueMode?: 'canonical' | 'formatted';
|
|
3871
3866
|
/**
|
|
3872
3867
|
* Optional SQL expression for grouping (e.g., DATE_TRUNC('month', order_date)).
|
|
3873
3868
|
* If present, used in SELECT and GROUP BY instead of just the column name.
|
|
@@ -4202,6 +4197,7 @@ declare type MatrixAxisLevelDescriptor = {
|
|
|
4202
4197
|
label: string;
|
|
4203
4198
|
field: SemaphorFieldRef;
|
|
4204
4199
|
grain?: SemaphorMatrixTimeGrain;
|
|
4200
|
+
temporalBucket?: TemporalBucketMetadata;
|
|
4205
4201
|
subtotal?: SemaphorMatrixSubtotalOptions;
|
|
4206
4202
|
};
|
|
4207
4203
|
|
|
@@ -4352,7 +4348,8 @@ declare type MatrixGridCell = {
|
|
|
4352
4348
|
|
|
4353
4349
|
declare type MatrixGridColumn = {
|
|
4354
4350
|
id: string;
|
|
4355
|
-
|
|
4351
|
+
/** Present only for measure and explicit total headings. */
|
|
4352
|
+
label?: string;
|
|
4356
4353
|
columnNodeId?: string;
|
|
4357
4354
|
columnPath: MatrixMemberPathSegment[];
|
|
4358
4355
|
measureInstanceId: string;
|
|
@@ -4361,7 +4358,8 @@ declare type MatrixGridColumn = {
|
|
|
4361
4358
|
|
|
4362
4359
|
declare type MatrixGridHeaderCell = {
|
|
4363
4360
|
id: string;
|
|
4364
|
-
|
|
4361
|
+
/** Present only for non-member headings and explicit total labels. */
|
|
4362
|
+
label?: string;
|
|
4365
4363
|
role: 'rowHeader' | 'columnHeader' | 'measureHeader' | 'subtotal' | 'grandTotal';
|
|
4366
4364
|
colSpan: number;
|
|
4367
4365
|
rowSpan: number;
|
|
@@ -4375,7 +4373,7 @@ declare type MatrixGridHeaderRow = {
|
|
|
4375
4373
|
};
|
|
4376
4374
|
|
|
4377
4375
|
declare type MatrixGridProjection = {
|
|
4378
|
-
schemaVersion:
|
|
4376
|
+
schemaVersion: 2;
|
|
4379
4377
|
shape: MatrixShape;
|
|
4380
4378
|
rowHeaderLevels: MatrixGridRowHeaderLevel[];
|
|
4381
4379
|
columnHeaderRows: MatrixGridHeaderRow[];
|
|
@@ -4388,7 +4386,8 @@ declare type MatrixGridRow = {
|
|
|
4388
4386
|
rowNodeId: string;
|
|
4389
4387
|
rowPath: MatrixMemberPathSegment[];
|
|
4390
4388
|
depth: number;
|
|
4391
|
-
|
|
4389
|
+
/** Present only for non-temporal members and explicit total labels. */
|
|
4390
|
+
label?: string;
|
|
4392
4391
|
role: 'value' | 'rowSubtotal' | 'rowGrandTotal';
|
|
4393
4392
|
isExpanded?: boolean;
|
|
4394
4393
|
hasChildren?: boolean;
|
|
@@ -4444,7 +4443,8 @@ declare type MatrixMemberPathSegment = {
|
|
|
4444
4443
|
instanceId: string;
|
|
4445
4444
|
fieldKey: string;
|
|
4446
4445
|
value: unknown;
|
|
4447
|
-
label
|
|
4446
|
+
/** Display-only source label for non-temporal members. */
|
|
4447
|
+
label?: string;
|
|
4448
4448
|
};
|
|
4449
4449
|
|
|
4450
4450
|
declare type MatrixNode = {
|
|
@@ -4452,7 +4452,8 @@ declare type MatrixNode = {
|
|
|
4452
4452
|
axis: 'row' | 'column';
|
|
4453
4453
|
path: MatrixMemberPathSegment[];
|
|
4454
4454
|
level: number;
|
|
4455
|
-
|
|
4455
|
+
/** Present only for non-temporal members and explicit total labels. */
|
|
4456
|
+
label?: string;
|
|
4456
4457
|
value: unknown;
|
|
4457
4458
|
parentId?: string;
|
|
4458
4459
|
hasChildren: boolean;
|
|
@@ -4481,7 +4482,7 @@ declare type MatrixPageInfo = {
|
|
|
4481
4482
|
|
|
4482
4483
|
declare type MatrixPayload = {
|
|
4483
4484
|
kind: 'matrixPayload';
|
|
4484
|
-
schemaVersion:
|
|
4485
|
+
schemaVersion: 2;
|
|
4485
4486
|
shape: MatrixShape;
|
|
4486
4487
|
capabilities: MatrixCapability[];
|
|
4487
4488
|
executionMetadata: MatrixExecutionMetadata;
|
|
@@ -4526,7 +4527,7 @@ declare type MatrixResultCell = {
|
|
|
4526
4527
|
|
|
4527
4528
|
declare type MatrixShape = 'hierarchical' | 'pivot';
|
|
4528
4529
|
|
|
4529
|
-
export declare function MatrixTableVisual({ card, result, grid, payload, isLoading, expansionState, onExpansionChange, loadingRowPathKeys, onSortChange, onLoadMoreRows, }: MatrixTableVisualProps): JSX.Element;
|
|
4530
|
+
export declare function MatrixTableVisual({ card, result, grid, payload, isLoading, expansionState, onExpansionChange, loadingRowPathKeys, branchError, onSortChange, onLoadMoreRows, }: MatrixTableVisualProps): JSX.Element;
|
|
4530
4531
|
|
|
4531
4532
|
export declare type MatrixTableVisualProps = {
|
|
4532
4533
|
card?: TCard;
|
|
@@ -4537,6 +4538,7 @@ export declare type MatrixTableVisualProps = {
|
|
|
4537
4538
|
expansionState?: MatrixExpansionState;
|
|
4538
4539
|
onExpansionChange?: (update: MatrixExpansionStateUpdate | MatrixColumnExpansionStateUpdate | MatrixBulkColumnExpansionStateUpdate | MatrixBulkRowExpansionStateUpdate) => void;
|
|
4539
4540
|
loadingRowPathKeys?: Set<string>;
|
|
4541
|
+
branchError?: string;
|
|
4540
4542
|
onSortChange?: (sortRules: SemaphorMatrixSortRule[]) => void;
|
|
4541
4543
|
onLoadMoreRows?: (rowPath: MatrixMemberPathSegment[]) => void;
|
|
4542
4544
|
};
|
|
@@ -4850,11 +4852,6 @@ export declare interface PivotByField extends Field {
|
|
|
4850
4852
|
* so existing cards need no migration.
|
|
4851
4853
|
*/
|
|
4852
4854
|
memberOrder?: PivotMemberOrder;
|
|
4853
|
-
/**
|
|
4854
|
-
* Query transport policy for grouped temporal pivot members. This is
|
|
4855
|
-
* projected into executable config and is never persisted authoring state.
|
|
4856
|
-
*/
|
|
4857
|
-
dateValueMode?: 'canonical' | 'formatted';
|
|
4858
4855
|
}
|
|
4859
4856
|
|
|
4860
4857
|
export declare interface PivotColumnSchema {
|
|
@@ -5581,6 +5578,8 @@ declare type SemaphorMatrixAxisLevel = {
|
|
|
5581
5578
|
id?: string;
|
|
5582
5579
|
field: SemaphorFieldRef;
|
|
5583
5580
|
grain?: SemaphorMatrixTimeGrain;
|
|
5581
|
+
format?: TemporalBucketFormat;
|
|
5582
|
+
semanticTemporalPresentation?: SemaphorMatrixSemanticTemporalPresentation;
|
|
5584
5583
|
label?: string;
|
|
5585
5584
|
subtotal?: boolean | SemaphorMatrixSubtotalOptions;
|
|
5586
5585
|
sortBy?: SemaphorMatrixAxisSortRule;
|
|
@@ -5589,7 +5588,7 @@ declare type SemaphorMatrixAxisLevel = {
|
|
|
5589
5588
|
declare type SemaphorMatrixAxisSortRule = {
|
|
5590
5589
|
direction: 'asc' | 'desc';
|
|
5591
5590
|
by: {
|
|
5592
|
-
kind: '
|
|
5591
|
+
kind: 'member';
|
|
5593
5592
|
} | {
|
|
5594
5593
|
kind: 'field';
|
|
5595
5594
|
field: SemaphorFieldRef;
|
|
@@ -5646,7 +5645,7 @@ declare type SemaphorMatrixMemberPathSegment = {
|
|
|
5646
5645
|
|
|
5647
5646
|
declare type SemaphorMatrixResult = SemaphorAnalyticsResultBase & {
|
|
5648
5647
|
kind: 'matrix';
|
|
5649
|
-
schemaVersion:
|
|
5648
|
+
schemaVersion: 2;
|
|
5650
5649
|
intent?: SemaphorMatrixIntent;
|
|
5651
5650
|
shape: MatrixShape;
|
|
5652
5651
|
capabilities: MatrixCapability[];
|
|
@@ -5668,12 +5667,17 @@ declare type SemaphorMatrixResult = SemaphorAnalyticsResultBase & {
|
|
|
5668
5667
|
expansion?: MatrixExpansionResponseHints;
|
|
5669
5668
|
};
|
|
5670
5669
|
|
|
5670
|
+
declare type SemaphorMatrixSemanticTemporalPresentation = {
|
|
5671
|
+
granularity: SemaphorMatrixTimeGrain;
|
|
5672
|
+
format: TemporalBucketFormat;
|
|
5673
|
+
};
|
|
5674
|
+
|
|
5671
5675
|
declare type SemaphorMatrixSortRule = {
|
|
5672
5676
|
axis: 'row' | 'column';
|
|
5673
5677
|
targetId?: string;
|
|
5674
5678
|
direction: 'asc' | 'desc';
|
|
5675
5679
|
by: {
|
|
5676
|
-
kind: '
|
|
5680
|
+
kind: 'member';
|
|
5677
5681
|
} | {
|
|
5678
5682
|
kind: 'field';
|
|
5679
5683
|
field: SemaphorFieldRef;
|
package/dist/types/shared.d.ts
CHANGED
|
@@ -1384,11 +1384,6 @@ declare interface GroupByColumn extends BaseColumn {
|
|
|
1384
1384
|
declare interface GroupByField extends Field {
|
|
1385
1385
|
role: 'groupby';
|
|
1386
1386
|
granularity?: TimeGranularity;
|
|
1387
|
-
/**
|
|
1388
|
-
* Query transport policy for grouped temporal values. This is projected
|
|
1389
|
-
* into executable card config and is not persisted authoring state.
|
|
1390
|
-
*/
|
|
1391
|
-
dateValueMode?: 'canonical' | 'formatted';
|
|
1392
1387
|
/**
|
|
1393
1388
|
* Optional SQL expression for grouping (e.g., DATE_TRUNC('month', order_date)).
|
|
1394
1389
|
* If present, used in SELECT and GROUP BY instead of just the column name.
|
|
@@ -1677,11 +1672,6 @@ declare interface PivotByField extends Field {
|
|
|
1677
1672
|
* so existing cards need no migration.
|
|
1678
1673
|
*/
|
|
1679
1674
|
memberOrder?: PivotMemberOrder;
|
|
1680
|
-
/**
|
|
1681
|
-
* Query transport policy for grouped temporal pivot members. This is
|
|
1682
|
-
* projected into executable config and is never persisted authoring state.
|
|
1683
|
-
*/
|
|
1684
|
-
dateValueMode?: 'canonical' | 'formatted';
|
|
1685
1675
|
}
|
|
1686
1676
|
|
|
1687
1677
|
/**
|
|
@@ -1857,6 +1847,8 @@ declare type SemaphorMatrixAxisLevel = {
|
|
|
1857
1847
|
id?: string;
|
|
1858
1848
|
field: SemaphorFieldRef;
|
|
1859
1849
|
grain?: SemaphorMatrixTimeGrain;
|
|
1850
|
+
format?: TemporalBucketFormat;
|
|
1851
|
+
semanticTemporalPresentation?: SemaphorMatrixSemanticTemporalPresentation;
|
|
1860
1852
|
label?: string;
|
|
1861
1853
|
subtotal?: boolean | SemaphorMatrixSubtotalOptions;
|
|
1862
1854
|
sortBy?: SemaphorMatrixAxisSortRule;
|
|
@@ -1865,7 +1857,7 @@ declare type SemaphorMatrixAxisLevel = {
|
|
|
1865
1857
|
declare type SemaphorMatrixAxisSortRule = {
|
|
1866
1858
|
direction: 'asc' | 'desc';
|
|
1867
1859
|
by: {
|
|
1868
|
-
kind: '
|
|
1860
|
+
kind: 'member';
|
|
1869
1861
|
} | {
|
|
1870
1862
|
kind: 'field';
|
|
1871
1863
|
field: SemaphorFieldRef;
|
|
@@ -1920,12 +1912,17 @@ declare type SemaphorMatrixMemberPathSegment = {
|
|
|
1920
1912
|
value: unknown;
|
|
1921
1913
|
};
|
|
1922
1914
|
|
|
1915
|
+
declare type SemaphorMatrixSemanticTemporalPresentation = {
|
|
1916
|
+
granularity: SemaphorMatrixTimeGrain;
|
|
1917
|
+
format: TemporalBucketFormat;
|
|
1918
|
+
};
|
|
1919
|
+
|
|
1923
1920
|
declare type SemaphorMatrixSortRule = {
|
|
1924
1921
|
axis: 'row' | 'column';
|
|
1925
1922
|
targetId?: string;
|
|
1926
1923
|
direction: 'asc' | 'desc';
|
|
1927
1924
|
by: {
|
|
1928
|
-
kind: '
|
|
1925
|
+
kind: 'member';
|
|
1929
1926
|
} | {
|
|
1930
1927
|
kind: 'field';
|
|
1931
1928
|
field: SemaphorFieldRef;
|
|
@@ -1776,11 +1776,6 @@ declare interface GroupByColumn extends BaseColumn {
|
|
|
1776
1776
|
declare interface GroupByField extends Field {
|
|
1777
1777
|
role: 'groupby';
|
|
1778
1778
|
granularity?: TimeGranularity;
|
|
1779
|
-
/**
|
|
1780
|
-
* Query transport policy for grouped temporal values. This is projected
|
|
1781
|
-
* into executable card config and is not persisted authoring state.
|
|
1782
|
-
*/
|
|
1783
|
-
dateValueMode?: 'canonical' | 'formatted';
|
|
1784
1779
|
/**
|
|
1785
1780
|
* Optional SQL expression for grouping (e.g., DATE_TRUNC('month', order_date)).
|
|
1786
1781
|
* If present, used in SELECT and GROUP BY instead of just the column name.
|
|
@@ -2182,11 +2177,6 @@ declare interface PivotByField extends Field {
|
|
|
2182
2177
|
* so existing cards need no migration.
|
|
2183
2178
|
*/
|
|
2184
2179
|
memberOrder?: PivotMemberOrder;
|
|
2185
|
-
/**
|
|
2186
|
-
* Query transport policy for grouped temporal pivot members. This is
|
|
2187
|
-
* projected into executable config and is never persisted authoring state.
|
|
2188
|
-
*/
|
|
2189
|
-
dateValueMode?: 'canonical' | 'formatted';
|
|
2190
2180
|
}
|
|
2191
2181
|
|
|
2192
2182
|
/**
|
|
@@ -2594,6 +2584,8 @@ declare type SemaphorMatrixAxisLevel = {
|
|
|
2594
2584
|
id?: string;
|
|
2595
2585
|
field: SemaphorFieldRef;
|
|
2596
2586
|
grain?: SemaphorMatrixTimeGrain;
|
|
2587
|
+
format?: TemporalBucketFormat;
|
|
2588
|
+
semanticTemporalPresentation?: SemaphorMatrixSemanticTemporalPresentation;
|
|
2597
2589
|
label?: string;
|
|
2598
2590
|
subtotal?: boolean | SemaphorMatrixSubtotalOptions;
|
|
2599
2591
|
sortBy?: SemaphorMatrixAxisSortRule;
|
|
@@ -2602,7 +2594,7 @@ declare type SemaphorMatrixAxisLevel = {
|
|
|
2602
2594
|
declare type SemaphorMatrixAxisSortRule = {
|
|
2603
2595
|
direction: 'asc' | 'desc';
|
|
2604
2596
|
by: {
|
|
2605
|
-
kind: '
|
|
2597
|
+
kind: 'member';
|
|
2606
2598
|
} | {
|
|
2607
2599
|
kind: 'field';
|
|
2608
2600
|
field: SemaphorFieldRef;
|
|
@@ -2657,12 +2649,17 @@ declare type SemaphorMatrixMemberPathSegment = {
|
|
|
2657
2649
|
value: unknown;
|
|
2658
2650
|
};
|
|
2659
2651
|
|
|
2652
|
+
declare type SemaphorMatrixSemanticTemporalPresentation = {
|
|
2653
|
+
granularity: SemaphorMatrixTimeGrain;
|
|
2654
|
+
format: TemporalBucketFormat;
|
|
2655
|
+
};
|
|
2656
|
+
|
|
2660
2657
|
declare type SemaphorMatrixSortRule = {
|
|
2661
2658
|
axis: 'row' | 'column';
|
|
2662
2659
|
targetId?: string;
|
|
2663
2660
|
direction: 'asc' | 'desc';
|
|
2664
2661
|
by: {
|
|
2665
|
-
kind: '
|
|
2662
|
+
kind: 'member';
|
|
2666
2663
|
} | {
|
|
2667
2664
|
kind: 'field';
|
|
2668
2665
|
field: SemaphorFieldRef;
|