react-semaphor 0.1.555 → 0.1.557
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/DATA_APP_SDK.md +6 -29
- package/dist/analytics-protocol/index.js +20 -21
- package/dist/assistant-context/index.js +1 -1
- package/dist/assistant-protocol/index.js +5 -5
- package/dist/brand-studio/index.js +426 -444
- package/dist/briefings/index.js +56 -57
- package/dist/chunks/{analytics-base-schemas-BKs3flFS.js → analytics-base-schemas-BUFUoO6G.js} +2 -2
- package/dist/chunks/{assistant-chat-8NZP6m-u.js → assistant-chat-WMTpYirZ.js} +79 -81
- package/dist/chunks/{bookmark-state-BAeGKd3s.js → bookmark-state-PjQpxbG7.js} +3 -3
- package/dist/chunks/{braces-o9UiRQes.js → braces-BOErQVyi.js} +1 -1
- package/dist/chunks/comparison-window-caption-Dc7BaCMz.js +1218 -0
- package/dist/chunks/{context-BerEBuFR.js → context-DVy4HOU0.js} +1 -1
- package/dist/chunks/{custom-visual-inputs-Gw-Ggg3O.js → custom-visual-inputs-CxYI-gFa.js} +31 -33
- package/dist/chunks/{dashboard-Ds68ckO3.js → dashboard-4D8Vy4pL.js} +1 -1
- package/dist/chunks/{dashboard-briefing-launcher-DlTr-VGc.js → dashboard-briefing-launcher-C4EmOfxs.js} +149 -151
- package/dist/chunks/{dashboard-controls-oNXJZN6x.js → dashboard-controls-DBWykmvL.js} +171 -173
- package/dist/chunks/{dashboard-json-CW7Q_efH.js → dashboard-json-DiX-p0F7.js} +21 -22
- package/dist/chunks/{document-dashboard-inputs-C21mL3ib.js → document-dashboard-inputs-DP5hquBR.js} +32 -32
- package/dist/chunks/{edit-dashboard-visual-BnnT_oKR.js → edit-dashboard-visual-n1jLV_7V.js} +5842 -5955
- package/dist/chunks/{filter-reach-copy-DlNPHbE-.js → filter-reach-copy-BB9iakLA.js} +915 -986
- package/dist/chunks/{filter-value-text-DMrpj4h9.js → filter-value-text-CUBpotVN.js} +5 -5
- package/dist/chunks/{global-date-filter-utils-7OboTgrM.js → global-date-filter-utils-Cc5tqkoW.js} +2908 -3112
- package/dist/chunks/{index-B2k6KtUN.js → index-CgjhzkKM.js} +72 -80
- package/dist/chunks/{index-CtoK1Lgu.js → index-dIV-Gdsb.js} +159 -161
- package/dist/chunks/{layout-grid-Bgzth8vd.js → layout-grid-CcNklCwL.js} +1 -1
- package/dist/chunks/{list-filter-DsaTbM3J.js → list-filter-Ds_4UTpD.js} +1 -1
- package/dist/chunks/{matrix-analytical-definition-DPVGg1mU.js → matrix-analytical-definition-4GTUDheD.js} +22 -22
- package/dist/chunks/{matrix-card-D9bsdAye.js → matrix-card-fS_4O7zA.js} +3 -3
- package/dist/chunks/{matrix-member-presentation-DRWcJ8Mi.js → matrix-member-presentation-Dj7HaAHC.js} +1 -1
- package/dist/chunks/{matrix-operation-contract--lMaLlpV.js → matrix-operation-contract-CpgLZ7E5.js} +52 -52
- package/dist/chunks/{metric-comparison-CYIt2F5X.js → metric-comparison-C8LY7GG5.js} +4 -4
- package/dist/chunks/{model-change-B0rAK-5w.js → model-change-CJEj3ZD6.js} +1 -1
- package/dist/chunks/{palette-D10o_yYX.js → palette-DMkIhagj.js} +1 -1
- package/dist/chunks/{matrix-formatter-K2OVPJQI.js → pivot-result-contract-expectations-DMk-mKhG.js} +451 -402
- package/dist/chunks/pivot-result-identity-CrQ54Xbj.js +77 -0
- package/dist/chunks/{raw-temporal-presentation-CivONfcO.js → raw-temporal-presentation-DdEpgPRB.js} +25 -26
- package/dist/chunks/report-preferences-dialog-CFg5VFLk.js +2109 -0
- package/dist/chunks/{report-runtime-context-BaIKSaja.js → report-runtime-context-CohdtiMg.js} +2 -2
- package/dist/chunks/{resolve-dashboard-input-context-CIm9A8_j.js → resolve-dashboard-input-context-Djl3kCFL.js} +1396 -1550
- package/dist/chunks/{save-CfJpQQ68.js → save-D1EpMcwT.js} +1 -1
- package/dist/chunks/{saved-dashboard-context-akb9JfOL.js → saved-dashboard-context-umlQFevH.js} +9 -9
- package/dist/chunks/selection-reducer-_d6aKJnj.js +46 -0
- package/dist/chunks/{semaphor-ready-indicator-Ba7dwP5_.js → semaphor-ready-indicator-4cOp6sla.js} +54479 -63899
- package/dist/chunks/{shelf-drop-preview-context-5rg3pJHW.js → shelf-drop-preview-context-DAtRuvR7.js} +7 -7
- package/dist/chunks/{source-entity-resolution-CGymm5td.js → source-entity-resolution-DXW1HpKf.js} +1 -1
- package/dist/chunks/{switch-B-UTI6v-.js → switch-9CJt5EF_.js} +1431 -1342
- package/dist/chunks/{table-export-sheet-CgO6gaSM.js → table-export-sheet-CTCTA_bd.js} +1 -1
- package/dist/chunks/{table-settings-DOT_Bv1m.js → table-settings-DF1gdVQR.js} +3 -3
- package/dist/chunks/temporal-input-presentation-DoSniQj1.js +2939 -0
- package/dist/chunks/{token-types-DYECHYGH.js → token-types-DFyLflLY.js} +1 -1
- package/dist/chunks/{upload-BFX7apKV.js → upload-LSNKpt0w.js} +1 -1
- package/dist/chunks/{use-create-flow-overlay-state-BHNs0wl7.js → use-create-flow-overlay-state-esyMT9vU.js} +125 -127
- package/dist/chunks/{validators-ClKLGDGZ.js → validators-hmfNNQz8.js} +305 -307
- package/dist/chunks/zoned-wall-clock-E35Frf9v.js +191 -0
- package/dist/dashboard/index.js +2 -2
- package/dist/dashboard-authoring/index.js +168 -169
- package/dist/data-app-sdk/index.js +789 -4154
- package/dist/data-app-sdk-adapters/index.js +3 -3
- package/dist/data-app-sdk-validation/index.js +6 -6
- package/dist/format-utils/index.js +234 -253
- package/dist/index.js +233 -235
- package/dist/layouts/index.js +1 -1
- package/dist/pdf-export-policy/index.js +9 -11
- package/dist/report-runtime-context/index.js +2 -2
- package/dist/style.css +1 -1
- package/dist/surfboard/index.js +2 -2
- package/dist/types/brand-studio/brand-studio-draft.d.ts +0 -3
- package/dist/types/brand-studio/index.d.ts +1 -1
- package/dist/types/components/visual/data-table/types/data-table.d.ts +0 -1
- package/dist/types/components/visual/shared/utils/table-column-order.d.ts +0 -6
- package/dist/types/data-app-sdk/contracts.d.ts +0 -146
- package/dist/types/data-app-sdk/index.d.ts +0 -2
- package/dist/types/index.js +27 -28
- package/dist/types/lib/api/exports-api.d.ts +1 -1
- package/dist/types/lib/charts/table-chart-types.d.ts +1 -1
- package/dist/types/lib/charts/types.d.ts +2 -2
- package/dist/types/lib/dashboard-viewer/export-table-view.d.ts +0 -3
- package/dist/types/lib/document/document-edits.d.ts +1 -1
- package/dist/types/lib/document/document-section-kinds.d.ts +2 -4
- package/dist/types/lib/document/document-table-data-policy.d.ts +1 -2
- package/dist/types/lib/formatters/grouped-temporal-activation.d.ts +3 -3
- package/dist/types/lib/formatters/grouped-temporal-presentation.d.ts +0 -6
- package/dist/types/lib/query-context/card-server-request.d.ts +0 -1
- package/dist/types/lib/table-formatting/table-formatting-types.d.ts +1 -1
- package/dist/types/lib/types/common-types.d.ts +0 -7
- package/dist/types/lib/types/explorer-types.d.ts +1 -14
- package/dist/types/lib/utils/card-config-utils.d.ts +11 -1
- package/dist/types/shared/dashboard-authoring/card-export-request.d.ts +1 -2
- package/dist/types/shared/dashboard-authoring/filter-model/filter-definitions.d.ts +1 -7
- package/dist/types/shared/dashboard-authoring/legacy-table-routing.d.ts +9 -4
- package/dist/types/shared/format-utils/grouped-table-presentation.d.ts +0 -14
- package/dist/types/shared/format-utils/index.d.ts +0 -2
- package/dist/types/shared/format-utils/pdf-export-policy.d.ts +1 -1
- package/dist/types/shared/format-utils/pivot-result-contract-expectations.d.ts +2 -20
- package/dist/types/shared/format-utils/pivot-result-identity.d.ts +0 -20
- package/dist/types/shared/format-utils/table-export/prepare-table-export.d.ts +0 -1
- package/dist/types/shared/format-utils/table-export/table-export-result.d.ts +0 -4
- package/package.json +2 -4
- package/src/data-app-sdk/README.md +7 -31
- package/dist/chunks/comparison-window-caption-C2WNTlxK.js +0 -1433
- package/dist/chunks/pivot-header-presentation-CX4fkRuG.js +0 -42
- package/dist/chunks/pivot-result-identity-BHJGZwIc.js +0 -94
- package/dist/chunks/pivot-result-lifecycle-BygCpOhk.js +0 -1238
- package/dist/chunks/raw-temporal-contract-WuXA8jBP.js +0 -64
- package/dist/chunks/report-preferences-dialog-D_KyuEFx.js +0 -2261
- package/dist/chunks/selection-reducer-yw_JgICP.js +0 -111
- package/dist/chunks/temporal-bucket-C4rqmwaQ.js +0 -2071
- package/dist/chunks/x-4f5U2XwU.js +0 -100
- package/dist/chunks/zoned-wall-clock-MulfA26h.js +0 -129
- package/dist/types/components/visual/pivot-table/types.d.ts +0 -80
- package/dist/types/data-app-sdk/devtools/index.d.ts +0 -49
- package/dist/types/data-app-sdk/devtools.d.ts +0 -1
- package/dist/types/shared/format-utils/aggregate-table-row-presentation.d.ts +0 -85
- package/dist/types/shared/format-utils/pivot-result-lifecycle.d.ts +0 -55
package/dist/surfboard/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { a, R as s, D as o } from "../chunks/report-preferences-dialog-
|
|
2
|
-
import { C as f, E as D } from "../chunks/table-settings-
|
|
1
|
+
import { a, R as s, D as o } from "../chunks/report-preferences-dialog-CFg5VFLk.js";
|
|
2
|
+
import { C as f, E as D } from "../chunks/table-settings-DF1gdVQR.js";
|
|
3
3
|
export {
|
|
4
4
|
f as CONTROL_CARD_DEFAULT_VALUE,
|
|
5
5
|
a as DisplayFormatPreferencesFields,
|
|
@@ -34,8 +34,6 @@ type RequiredBrandStudioComponents = {
|
|
|
34
34
|
interactive: NonNullable<AppearanceComponents['interactive']>;
|
|
35
35
|
chart: Required<NonNullable<AppearanceComponents['chart']>>;
|
|
36
36
|
table: RequiredTableAppearance;
|
|
37
|
-
aggregateTable: RequiredTableAppearance;
|
|
38
|
-
pivotTable: RequiredTableAppearance;
|
|
39
37
|
pagination: NonNullable<AppearanceComponents['pagination']>;
|
|
40
38
|
};
|
|
41
39
|
type RequiredTableAppearance = {
|
|
@@ -77,7 +75,6 @@ export declare const BRAND_STUDIO_PRESETS: BrandStudioPreset[];
|
|
|
77
75
|
export declare function createBrandStudioDraft(appearance?: AppearanceSpec | null): BrandStudioDraft;
|
|
78
76
|
export declare function buildAppearanceSpecFromDraft(draft: BrandStudioDraft): AppearanceSpec;
|
|
79
77
|
export declare function applyBrandStudioPreset(draft: BrandStudioDraft, presetId: string): BrandStudioDraft;
|
|
80
|
-
export declare function mirrorTableAppearance(scheme: RequiredBrandStudioScheme, target: 'aggregateTable' | 'pivotTable'): void;
|
|
81
78
|
export declare function applyBrandStudioColorToken(scheme: RequiredBrandStudioScheme, token: BrandStudioColorToken, value: string): void;
|
|
82
79
|
export declare function applyBrandStudioRadiusToken(scheme: RequiredBrandStudioScheme, token: BrandStudioRadiusToken, value: number): void;
|
|
83
80
|
export {};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { BrandStudioEditor, type BrandStudioEditorProps, } from './brand-studio-editor.js';
|
|
2
|
-
export { applyBrandStudioPreset, BRAND_STUDIO_PRESETS, buildAppearanceSpecFromDraft, createBrandStudioDraft,
|
|
2
|
+
export { applyBrandStudioPreset, BRAND_STUDIO_PRESETS, buildAppearanceSpecFromDraft, createBrandStudioDraft, type BrandStudioDraft, type RequiredBrandStudioScheme, } from './brand-studio-draft.js';
|
|
@@ -210,7 +210,6 @@ export interface DataTableColumnSettingsProps {
|
|
|
210
210
|
open: boolean;
|
|
211
211
|
onOpenChange: (open: boolean) => void;
|
|
212
212
|
availableColumns?: string[];
|
|
213
|
-
tableType?: 'data' | 'pivot' | 'aggregate';
|
|
214
213
|
/** Whether this is a raw SQL card (bypasses timezone-aware query pipeline) */
|
|
215
214
|
isSqlCard?: boolean;
|
|
216
215
|
/** Sparse authored bytes before default hydration. */
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { TCard } from '../../../../lib/types/common-types.js';
|
|
2
2
|
import { CardConfig, DetailField, GroupByField, MetricField, QueryColumnKeyMap, QueryColumnKeyRole } from '../../../../lib/types/explorer-types.js';
|
|
3
|
-
import { PivotColumnSchema } from '../../pivot-table/types.js';
|
|
4
3
|
import { ComparisonMetadataMap } from '../../../../lib/types/query-types.js';
|
|
5
4
|
import { SemaphorResultColumn } from '../../../../shared/analytics-protocol/index.js';
|
|
6
5
|
import { GroupedTemporalPresentation } from '../../../../lib/formatters/grouped-temporal-presentation.js';
|
|
@@ -12,12 +11,10 @@ export interface ColumnReorderRequest {
|
|
|
12
11
|
}
|
|
13
12
|
export declare function resolveTablePresentationCard(card: TCard, effectiveCardConfig?: CardConfig): TCard;
|
|
14
13
|
type ConfigField = DetailField | GroupByField | MetricField;
|
|
15
|
-
export declare function getMetricSchemaOrderIndex(schema: PivotColumnSchema, metricFields: MetricField[]): number;
|
|
16
14
|
export declare function reorderTableCardConfig(card: TCard, request: ColumnReorderRequest, columnKeyMap?: QueryColumnKeyMap): CardConfig | null;
|
|
17
15
|
export declare function hasConfigOwnedTableFields(card: TCard | undefined): boolean;
|
|
18
16
|
export declare function hasConfigBackedTableColumnOrder(card: TCard | undefined, columnKeyMap: QueryColumnKeyMap | undefined): boolean;
|
|
19
17
|
export declare function getConfigBackedTableOutputColumnIds(card: TCard | undefined, columnKeyMap: QueryColumnKeyMap | undefined): string[];
|
|
20
|
-
export declare function reorderAggregateCardConfig(card: TCard, request: ColumnReorderRequest, columnKeyMap?: QueryColumnKeyMap): CardConfig | null;
|
|
21
18
|
export declare function resolveDataTableFieldOutputKey(field: ConfigField, role: QueryColumnKeyRole, availableKeys: string[], columnKeyMap?: QueryColumnKeyMap): string | undefined;
|
|
22
19
|
export declare function resolveDataTableColumnDisplayLabel(columnId: string, card: TCard | undefined, columnKeyMap?: QueryColumnKeyMap): string | undefined;
|
|
23
20
|
export declare function buildDataTableColumnDisplayLabels(columnIds: readonly string[], card: TCard | undefined, columnKeyMap?: QueryColumnKeyMap, resultColumns?: readonly SemaphorResultColumn[], temporalPresentation?: GroupedTemporalPresentation): {
|
|
@@ -45,7 +42,6 @@ export declare function resolvePivotColumnDisplayLabel(input: {
|
|
|
45
42
|
/** A viewer's name for the metric; replaces the metric part of the header. */
|
|
46
43
|
metricLabelOverride?: string;
|
|
47
44
|
}): string | undefined;
|
|
48
|
-
export declare function resolveMetricSchemaDisplayLabel(schema: PivotColumnSchema | undefined, card: TCard | undefined, columnKeyMap?: QueryColumnKeyMap, fallback?: string): string;
|
|
49
45
|
export declare function orderDataTableKeysByCardConfig(keys: string[], card: TCard | undefined, getComparisonKey?: (metricLabel: string) => string | null, columnKeyMap?: QueryColumnKeyMap): string[];
|
|
50
46
|
export type DataTableColumnOrderInput = {
|
|
51
47
|
keys: readonly string[];
|
|
@@ -55,6 +51,4 @@ export type DataTableColumnOrderInput = {
|
|
|
55
51
|
resultColumns?: readonly SemaphorResultColumn[];
|
|
56
52
|
};
|
|
57
53
|
export declare function orderDataTableOutputKeys(input: DataTableColumnOrderInput): string[];
|
|
58
|
-
export declare function orderGroupByColumnsByCardConfig(groupByColumns: GroupByField[], card: TCard | undefined, columnKeyMap?: QueryColumnKeyMap): GroupByField[];
|
|
59
|
-
export declare function orderPivotSchemaByCardConfig(pivotSchema: PivotColumnSchema[], card: TCard | undefined, columnKeyMap?: QueryColumnKeyMap): PivotColumnSchema[];
|
|
60
54
|
export {};
|
|
@@ -238,40 +238,13 @@ export type SemaphorDataAppDefinition = {
|
|
|
238
238
|
queries?: Record<string, SemaphorQueryDefinition>;
|
|
239
239
|
views: SemaphorDataAppViewDefinition[];
|
|
240
240
|
};
|
|
241
|
-
export type SemaphorDataAppDevtoolsUiConfig = {
|
|
242
|
-
buttonPosition?: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' | 'relative';
|
|
243
|
-
initialIsOpen?: boolean;
|
|
244
|
-
panelPosition?: 'bottom' | 'right';
|
|
245
|
-
};
|
|
246
241
|
export type SemaphorDataAppDebugConfig = boolean | {
|
|
247
242
|
enabled?: boolean;
|
|
248
|
-
exposeWindowBridge?: boolean;
|
|
249
|
-
autoRenderDevtools?: boolean | SemaphorDataAppDevtoolsUiConfig;
|
|
250
243
|
requestServerDebug?: boolean;
|
|
251
|
-
maxQueries?: number;
|
|
252
|
-
maxEventsPerQuery?: number;
|
|
253
|
-
};
|
|
254
|
-
export type SemaphorDataAppSourceHint = {
|
|
255
|
-
file?: string;
|
|
256
|
-
line?: number;
|
|
257
|
-
column?: number;
|
|
258
|
-
exportName?: string;
|
|
259
|
-
component?: string;
|
|
260
|
-
note?: string;
|
|
261
|
-
};
|
|
262
|
-
export type SemaphorQueryDebugOptions = {
|
|
263
|
-
viewId?: string;
|
|
264
|
-
viewTitle?: string;
|
|
265
|
-
visualType?: string;
|
|
266
|
-
sectionTitle?: string;
|
|
267
|
-
title?: string;
|
|
268
|
-
sourceHint?: SemaphorDataAppSourceHint;
|
|
269
|
-
sourceHints?: SemaphorDataAppSourceHint[];
|
|
270
244
|
};
|
|
271
245
|
export type SemaphorQueryRuntimeOptions = {
|
|
272
246
|
inputs?: SemaphorInputReference[];
|
|
273
247
|
selections?: SemaphorSelectionReference[];
|
|
274
|
-
debug?: SemaphorQueryDebugOptions;
|
|
275
248
|
};
|
|
276
249
|
export type SemaphorQueryStatus = 'idle' | 'loading' | 'success' | 'error';
|
|
277
250
|
export type SemaphorDataAppQueryError = Error & {
|
|
@@ -282,124 +255,6 @@ export type SemaphorDataAppQueryError = Error & {
|
|
|
282
255
|
validation?: SemaphorAnalyticsValidationResult;
|
|
283
256
|
validationIssues?: SemaphorAnalyticsValidationIssue[];
|
|
284
257
|
};
|
|
285
|
-
export type SemaphorDataAppTraceEvent = {
|
|
286
|
-
type: 'query_started';
|
|
287
|
-
queryId: string;
|
|
288
|
-
requestId?: string;
|
|
289
|
-
at: string;
|
|
290
|
-
} | {
|
|
291
|
-
type: 'query_succeeded';
|
|
292
|
-
queryId: string;
|
|
293
|
-
requestId?: string;
|
|
294
|
-
at: string;
|
|
295
|
-
rowCount?: number;
|
|
296
|
-
durationMs?: number;
|
|
297
|
-
} | {
|
|
298
|
-
type: 'query_failed';
|
|
299
|
-
queryId: string;
|
|
300
|
-
requestId?: string;
|
|
301
|
-
at: string;
|
|
302
|
-
errorMessage: string;
|
|
303
|
-
} | {
|
|
304
|
-
type: 'query_ignored_stale';
|
|
305
|
-
queryId: string;
|
|
306
|
-
requestId?: string;
|
|
307
|
-
at: string;
|
|
308
|
-
reason: 'newer_inputs' | 'unmounted' | 'superseded';
|
|
309
|
-
} | {
|
|
310
|
-
type: 'input_changed';
|
|
311
|
-
inputId: string;
|
|
312
|
-
at: string;
|
|
313
|
-
valuePreview?: string;
|
|
314
|
-
};
|
|
315
|
-
export type SemaphorDataAppTrace = {
|
|
316
|
-
traceId: string;
|
|
317
|
-
viewId?: string;
|
|
318
|
-
viewTitle?: string;
|
|
319
|
-
visualType?: string;
|
|
320
|
-
sectionTitle?: string;
|
|
321
|
-
queryId: string;
|
|
322
|
-
queryLabel?: string;
|
|
323
|
-
queryKind: SemaphorQueryDefinition['queryKind'];
|
|
324
|
-
builder: 'semaphor.metric' | 'semaphor.records' | 'semaphor.matrix' | 'semaphor.analysis' | 'semaphor.inputOptions' | 'semaphor.sql';
|
|
325
|
-
sourceRefs: SemaphorSourceRef[];
|
|
326
|
-
sourceHints?: SemaphorDataAppSourceHint[];
|
|
327
|
-
projectionFieldRefs?: SemaphorFieldRef[];
|
|
328
|
-
inputFieldRefs?: SemaphorFieldRef[];
|
|
329
|
-
fieldRefs: SemaphorFieldRef[];
|
|
330
|
-
inputsApplied: Array<{
|
|
331
|
-
inputId: string;
|
|
332
|
-
inputLabel?: string;
|
|
333
|
-
fieldRef?: SemaphorFieldRef;
|
|
334
|
-
operator?: string;
|
|
335
|
-
valuePreview?: string;
|
|
336
|
-
}>;
|
|
337
|
-
latestAttempt?: {
|
|
338
|
-
requestId?: string;
|
|
339
|
-
status: SemaphorQueryStatus;
|
|
340
|
-
durationMs?: number;
|
|
341
|
-
rowCount?: number;
|
|
342
|
-
columnCount?: number;
|
|
343
|
-
cacheStatus?: 'hit' | 'miss' | 'unknown';
|
|
344
|
-
metricCoverage?: {
|
|
345
|
-
populatedMetricKeys?: string[];
|
|
346
|
-
missingMeasures?: string[];
|
|
347
|
-
};
|
|
348
|
-
resultPreview?: SemaphorDataAppResultPreview;
|
|
349
|
-
executionResult?: SemaphorAnalyticsExecutionResult;
|
|
350
|
-
errorMessage?: string;
|
|
351
|
-
};
|
|
352
|
-
recentEvents: SemaphorDataAppTraceEvent[];
|
|
353
|
-
server?: {
|
|
354
|
-
compiledSql?: string;
|
|
355
|
-
dialect?: string;
|
|
356
|
-
sqlHash?: string;
|
|
357
|
-
executionPlanSummary?: string;
|
|
358
|
-
};
|
|
359
|
-
clientWarnings: string[];
|
|
360
|
-
};
|
|
361
|
-
export type SemaphorDataAppResultPreviewColumn = {
|
|
362
|
-
key: string;
|
|
363
|
-
label: string;
|
|
364
|
-
};
|
|
365
|
-
export type SemaphorDataAppResultPreview = {
|
|
366
|
-
title: string;
|
|
367
|
-
summary: string;
|
|
368
|
-
columns: SemaphorDataAppResultPreviewColumn[];
|
|
369
|
-
rows: Array<Record<string, unknown>>;
|
|
370
|
-
truncatedRows: boolean;
|
|
371
|
-
truncatedColumns: boolean;
|
|
372
|
-
};
|
|
373
|
-
export type SemaphorDataAppDevtoolsIssue = {
|
|
374
|
-
traceId: string;
|
|
375
|
-
queryId: string;
|
|
376
|
-
viewId?: string;
|
|
377
|
-
viewTitle?: string;
|
|
378
|
-
queryLabel?: string;
|
|
379
|
-
severity: 'error' | 'warning';
|
|
380
|
-
title: string;
|
|
381
|
-
message: string;
|
|
382
|
-
code?: string;
|
|
383
|
-
path?: string;
|
|
384
|
-
};
|
|
385
|
-
export type SemaphorDataAppDevtoolsState = {
|
|
386
|
-
enabled: boolean;
|
|
387
|
-
queries: SemaphorDataAppTrace[];
|
|
388
|
-
issues: SemaphorDataAppDevtoolsIssue[];
|
|
389
|
-
getQuery(queryId: string): SemaphorDataAppTrace | undefined;
|
|
390
|
-
getQueries(queryId: string): SemaphorDataAppTrace[];
|
|
391
|
-
};
|
|
392
|
-
export type SemaphorDataAppDevtoolsWindowBridge = {
|
|
393
|
-
snapshot(): SemaphorDataAppDevtoolsState;
|
|
394
|
-
getQuery(queryId: string): SemaphorDataAppTrace | undefined;
|
|
395
|
-
getQueries(queryId: string): SemaphorDataAppTrace[];
|
|
396
|
-
getIssues(): SemaphorDataAppDevtoolsIssue[];
|
|
397
|
-
};
|
|
398
|
-
declare global {
|
|
399
|
-
interface Window {
|
|
400
|
-
__SEMAPHOR_DEVTOOLS__?: SemaphorDataAppDevtoolsWindowBridge;
|
|
401
|
-
}
|
|
402
|
-
}
|
|
403
258
|
export type SemaphorQueryState = {
|
|
404
259
|
status: SemaphorQueryStatus;
|
|
405
260
|
executionStatus?: SemaphorAnalyticsExecutionStatus;
|
|
@@ -414,7 +269,6 @@ export type SemaphorQueryState = {
|
|
|
414
269
|
isStale: boolean;
|
|
415
270
|
isValidated: boolean;
|
|
416
271
|
error: SemaphorDataAppQueryError | null;
|
|
417
|
-
trace?: SemaphorDataAppTrace;
|
|
418
272
|
};
|
|
419
273
|
export type SemaphorMetricPayload = {
|
|
420
274
|
primaryValue: number | string | null;
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
export { defineSemaphorDataApp, defineSemaphorInput, semaphor, } from './builders.js';
|
|
2
|
-
export { SemaphorDevtools, SemaphorDevtoolsInspectButton, SemaphorViewBoundary, useSemaphorDevtools, } from './devtools.js';
|
|
3
|
-
export type { SemaphorDevtoolsInspectButtonProps, SemaphorDevtoolsProps, } from './devtools.js';
|
|
4
2
|
export { createSemaphorQueryExecutor } from './executor.js';
|
|
5
3
|
export { semaphorMetricAggregate, semaphorMetricMeasureBindingKey, } from '../shared/analytics-protocol/index.js';
|
|
6
4
|
export { isSemaphorInputValueValidForOptions, useClearInvalidSemaphorInputValue, useSemaphorInput, useSemaphorInputs, useSemaphorQuery, } from './hooks.js';
|
package/dist/types/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { C as s, E as r, V as l, i as o, c as i, g as n, f as d, b as m, e as u, d as
|
|
2
|
-
import { C as y, D as
|
|
3
|
-
import { D as q } from "../chunks/token-types-
|
|
4
|
-
import { B as
|
|
5
|
-
import { r as
|
|
6
|
-
import { D as
|
|
1
|
+
import { C as s, E as r, V as l, i as o, c as i, g as n, f as d, b as m, e as u, d as c, a as E, u as p, s as C, h as T, j as D, q as A, o as I, m as _, n as F, p as S, k as b, l as L, r as f, t as N } from "../chunks/table-settings-DF1gdVQR.js";
|
|
2
|
+
import { C as y, D as g, L as h, e as x, g as M, j as O, h as V, k, d as w, b as U, i as B, c as K, n as z, f as v } from "../chunks/validators-hmfNNQz8.js";
|
|
3
|
+
import { D as q } from "../chunks/token-types-DFyLflLY.js";
|
|
4
|
+
import { B as P, a as Q, p as j, r as W } from "../chunks/bookmark-state-PjQpxbG7.js";
|
|
5
|
+
import { r as X, a as H } from "../chunks/pivot-result-identity-CrQ54Xbj.js";
|
|
6
|
+
import { D as $ } from "../chunks/report-runtime-context-CohdtiMg.js";
|
|
7
7
|
const e = [
|
|
8
8
|
"concatenate",
|
|
9
9
|
"conditional-category",
|
|
@@ -37,17 +37,16 @@ const e = [
|
|
|
37
37
|
"is-blank"
|
|
38
38
|
];
|
|
39
39
|
export {
|
|
40
|
-
|
|
41
|
-
|
|
40
|
+
P as BOOKMARK_STATE_VERSION,
|
|
41
|
+
Q as BOOKMARK_VISIBILITIES,
|
|
42
42
|
y as CALCULATED_FIELD_ENTITY_MARKER,
|
|
43
43
|
e as CALCULATED_FIELD_TEMPLATE_IDS,
|
|
44
44
|
s as CONTROL_CARD_DEFAULT_VALUE,
|
|
45
|
-
|
|
46
|
-
|
|
45
|
+
g as DATE_FORMAT_VALUES,
|
|
46
|
+
$ as DEFAULT_CALENDAR_CONTEXT,
|
|
47
47
|
q as DEFAULT_SEMANTIC_DOMAIN_ACCESS,
|
|
48
48
|
r as EMPTY_SELECTION,
|
|
49
|
-
|
|
50
|
-
h as PivotMarkerEnum,
|
|
49
|
+
h as LEGACY_CALCULATED_FIELD_ENTITY_MARKER,
|
|
51
50
|
l as VIEWER_LIMITS,
|
|
52
51
|
o as VIEWER_TABLE_SETTINGS_VERSION,
|
|
53
52
|
i as collectDatasetNamesFromExplorerField,
|
|
@@ -55,34 +54,34 @@ export {
|
|
|
55
54
|
d as collectExecutionDatasetNamesFromExplorerField,
|
|
56
55
|
m as collectPreferredDatasetNamesFromExplorerField,
|
|
57
56
|
u as collectQualifiedDatasetNamesFromExplorerField,
|
|
58
|
-
|
|
59
|
-
|
|
57
|
+
c as datasetRefFromSource,
|
|
58
|
+
E as dependencyDisplayIdentity,
|
|
60
59
|
x as getCalculatedFieldComputeStage,
|
|
61
60
|
p as getCustomizableTableCardIds,
|
|
62
|
-
|
|
61
|
+
M as getFieldRuntimeColumnName,
|
|
63
62
|
C as getSortableTableCardIds,
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
63
|
+
O as hasCalculatedFieldMarker,
|
|
64
|
+
V as hasCalculatedFormulaInputs,
|
|
65
|
+
k as hasSyntheticCalculatedFieldOwner,
|
|
67
66
|
T as humanizeDatasetName,
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
67
|
+
w as inspectCalculatedField,
|
|
68
|
+
U as isCalculatedDimension,
|
|
69
|
+
B as isCalculatedMetric,
|
|
70
|
+
K as isDerivedField,
|
|
72
71
|
D as isEmptyViewerTableSettings,
|
|
73
72
|
A as isTableCardCustomizable,
|
|
74
73
|
I as isTableCardSortable,
|
|
75
74
|
_ as measureJsonBytes,
|
|
76
|
-
|
|
75
|
+
z as normalizeCalculatedFieldRepresentation,
|
|
77
76
|
F as normalizeViewerTableSettings,
|
|
78
|
-
|
|
77
|
+
j as parseBookmarkState,
|
|
79
78
|
S as parseTableColumnId,
|
|
80
79
|
b as parseViewerTableSettings,
|
|
81
80
|
L as parseViewerTableSettingsMap,
|
|
82
|
-
|
|
81
|
+
W as readBookmarkState,
|
|
83
82
|
f as resolveFieldDatasetDependencies,
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
83
|
+
X as resolveQueryColumnKeyMapEntry,
|
|
84
|
+
H as resolveUniqueQueryColumnKeyMapEntry,
|
|
85
|
+
v as shouldDropInheritedCalculationAggregate,
|
|
87
86
|
N as toTableColumnId
|
|
88
87
|
};
|
|
@@ -2,7 +2,7 @@ import { ExportFileFormat } from '../../shared/format-utils/index.js';
|
|
|
2
2
|
import { MatrixFileExportRequest } from '../matrix-table/matrix-delivery.js';
|
|
3
3
|
import { CreateExportRequest } from '../../shared/dashboard-authoring/card-export-request.js';
|
|
4
4
|
export type ExportStatus = 'pending' | 'processing' | 'chunking' | 'compacting' | 'completed' | 'failed' | 'cancelled';
|
|
5
|
-
export type CardType = 'table' | '
|
|
5
|
+
export type CardType = 'table' | 'detailTable';
|
|
6
6
|
/** Response from creating an export job */
|
|
7
7
|
export interface CreateExportResponse {
|
|
8
8
|
exportId: string;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { TChartType } from './types.js';
|
|
2
2
|
/** The chart types that render as tables. No runtime imports: server-safe code reads these. */
|
|
3
|
-
export declare const TABLE_CHART_TYPES: readonly ["table", "
|
|
3
|
+
export declare const TABLE_CHART_TYPES: readonly ["table", "matrixTable", "detailTable"];
|
|
4
4
|
export declare function isTableChartType(chartType: TChartType | string | undefined | null): boolean;
|
|
@@ -49,10 +49,10 @@ export type BlurEffectProps = {
|
|
|
49
49
|
apply: boolean;
|
|
50
50
|
blurColor?: string;
|
|
51
51
|
};
|
|
52
|
-
export type TChartType = 'bar' | 'horizontalBar' | 'line' | 'area' | 'stackedArea' | 'combo' | 'pie' | 'doughnut' | 'radar' | 'polarArea' | 'bubble' | 'scatter' | 'stackedBar' | 'stackedLine' | 'table' | '
|
|
52
|
+
export type TChartType = 'bar' | 'horizontalBar' | 'line' | 'area' | 'stackedArea' | 'combo' | 'pie' | 'doughnut' | 'radar' | 'polarArea' | 'bubble' | 'scatter' | 'stackedBar' | 'stackedLine' | 'table' | 'matrixTable' | 'detailTable' | 'kpi' | 'pyramid' | 'tornado' | 'range' | 'text' | 'map' | 'funnel' | 'bullet' | 'heatmap' | 'treemap' | 'custom';
|
|
53
53
|
export { TABLE_CHART_TYPES, isTableChartType };
|
|
54
54
|
export declare function isChartJsVisualType(chartType: TChartType | string | undefined | null): boolean;
|
|
55
|
-
export declare const REGULAR_TABLE_SETTINGS_CHART_TYPES: readonly ["table", "matrixTable", "
|
|
55
|
+
export declare const REGULAR_TABLE_SETTINGS_CHART_TYPES: readonly ["table", "matrixTable", "detailTable"];
|
|
56
56
|
export declare function supportsRegularTableSettings(chartType: TChartType | string | undefined | null): boolean;
|
|
57
57
|
/**
|
|
58
58
|
* Chart types that support comparison mode.
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { TCard, TDashboard } from '../types/common-types.js';
|
|
2
|
-
import { TablePreferences } from '../../components/visual/data-table/types/data-table.js';
|
|
3
2
|
import { QueryColumnKeyMap } from '../types/explorer-types.js';
|
|
4
3
|
import { ComparisonMetadataMap } from '../types/query-types.js';
|
|
5
4
|
import { SemaphorResultColumn } from '../../shared/analytics-protocol/index.js';
|
|
@@ -41,5 +40,3 @@ export declare function resolveExportTableView(input: {
|
|
|
41
40
|
readonly comparisonMetadata?: ComparisonMetadataMap;
|
|
42
41
|
readonly viewerTable?: ExportViewerTable;
|
|
43
42
|
}): TableView;
|
|
44
|
-
/** The card with the author's table preferences an export was given (they decide what the author hid). */
|
|
45
|
-
export declare function withTablePreferences(card: TCard, tablePreferences: TablePreferences | undefined): TCard;
|
|
@@ -108,7 +108,7 @@ export declare function clampDocumentSpacerHeight(heightPx: number): number;
|
|
|
108
108
|
*/
|
|
109
109
|
export declare function getDocumentSectionDropIndex(sections: readonly Pick<DocumentSection, 'id'>[], sectionId: string, targetSectionId: string, placement: 'before' | 'after'): number;
|
|
110
110
|
/**
|
|
111
|
-
* Cards a Document can copy: every executable table,
|
|
111
|
+
* Cards a Document can copy: every executable table, Matrix or KPI in
|
|
112
112
|
* the dashboard, including other document sections, except the given
|
|
113
113
|
* section's own cards. Linked library visuals are not offered: their stored
|
|
114
114
|
* card is completed by hydration, so a copy could be incomplete.
|
|
@@ -2,12 +2,10 @@ import { TChartType } from '../charts/types.js';
|
|
|
2
2
|
import { DocumentSection, TCard } from '../types/common-types.js';
|
|
3
3
|
/**
|
|
4
4
|
* Author-facing identity of a Document section. It differs from the storage
|
|
5
|
-
* `type`: Table
|
|
6
|
-
*
|
|
5
|
+
* `type`: Table and Matrix are both stored as `type: 'table'` and are told
|
|
6
|
+
* apart by `card.type`.
|
|
7
7
|
*/
|
|
8
8
|
export type DocumentSectionKindId = 'text' | 'table' | 'matrix' | 'kpi' | 'spacer' | 'page_break'
|
|
9
|
-
/** Existing sections only. */
|
|
10
|
-
| 'pivot'
|
|
11
9
|
/** Contract-only: not addable, not rendered. */
|
|
12
10
|
| 'chart';
|
|
13
11
|
export type DocumentIdFactory = {
|
|
@@ -6,10 +6,9 @@ export declare const DOCUMENT_TABLE_PREVIEW_QUERY_CHUNK_SIZE = 250;
|
|
|
6
6
|
export declare function isDocumentFlatTableAcquisitionCard(card: TCard): boolean;
|
|
7
7
|
export declare function isDocumentSqlTablePaginationEnabled(card: TCard): boolean;
|
|
8
8
|
export declare function getDocumentTableQueryPageSize(policy: DocumentTableDataPolicy): 500 | 250;
|
|
9
|
-
export declare function shouldUseServerPaginationForDashboardCardQuery({ card, isTablePrintMode,
|
|
9
|
+
export declare function shouldUseServerPaginationForDashboardCardQuery({ card, isTablePrintMode, isDocumentSectionRuntime, documentTableDataPolicy, }: {
|
|
10
10
|
card: TCard;
|
|
11
11
|
isTablePrintMode: boolean;
|
|
12
|
-
isPrintDisplayMode: boolean;
|
|
13
12
|
isDocumentSectionRuntime: boolean;
|
|
14
13
|
documentTableDataPolicy?: DocumentTableDataPolicy;
|
|
15
14
|
}): boolean;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { TCard } from '../types/common-types.js';
|
|
2
|
-
import { CardConfig, GroupByField
|
|
2
|
+
import { CardConfig, GroupByField } from '../types/explorer-types.js';
|
|
3
3
|
import { ShelfCard } from '../utils/card-definition.js';
|
|
4
4
|
export type GroupedTemporalActivation = {
|
|
5
5
|
cardType: string;
|
|
6
6
|
cardConfig: CardConfig;
|
|
7
|
-
fields:
|
|
7
|
+
fields: GroupByField[];
|
|
8
8
|
};
|
|
9
9
|
export declare class AmbiguousGroupedTemporalGrainError extends Error {
|
|
10
10
|
readonly code = "ambiguous_temporal_grain";
|
|
@@ -16,7 +16,7 @@ export declare class AmbiguousGroupedTemporalGrainError extends Error {
|
|
|
16
16
|
* dashboard families. DATE plus saved presentation and no grain is an
|
|
17
17
|
* unambiguous day bucket; DATETIME/timestamp remains ambiguous.
|
|
18
18
|
*/
|
|
19
|
-
export declare function normalizeGroupedTemporalField<T extends GroupByField
|
|
19
|
+
export declare function normalizeGroupedTemporalField<T extends GroupByField>(field: T): T | undefined;
|
|
20
20
|
export declare function resolveShelfTemporalActivation(input: {
|
|
21
21
|
card: ShelfCard;
|
|
22
22
|
cardConfig?: CardConfig;
|
|
@@ -111,12 +111,6 @@ export declare function resolveGroupedTemporalPresentation(input: {
|
|
|
111
111
|
attachmentIndex?: number;
|
|
112
112
|
valueFormatPreferences?: GroupedTemporalViewerPreferences | null;
|
|
113
113
|
}): GroupedTemporalPresentation;
|
|
114
|
-
export declare function formatGroupedTemporalFieldValue(input: {
|
|
115
|
-
fieldId: string;
|
|
116
|
-
role?: GroupByField['role'] | PivotByField['role'];
|
|
117
|
-
value: unknown;
|
|
118
|
-
presentation: GroupedTemporalPresentation | undefined;
|
|
119
|
-
}): string;
|
|
120
114
|
export declare function formatGroupedTemporalValue(input: {
|
|
121
115
|
value: unknown;
|
|
122
116
|
presentation: GroupedTemporalColumnPresentation;
|
|
@@ -3,7 +3,7 @@ import { ExactNumericValue } from '../../shared/analytics-protocol/scalar-value.
|
|
|
3
3
|
import { MatrixAxis, MatrixPath } from '../../shared/analytics-protocol/matrix-path-contract.js';
|
|
4
4
|
import { ColumnSettings, ColumnSettingsMap, TablePreferences } from '../../components/visual/data-table/types/data-table.js';
|
|
5
5
|
export type TableFormattingVersion = 1;
|
|
6
|
-
export type TableKind = 'table' | 'detailTable' | '
|
|
6
|
+
export type TableKind = 'table' | 'detailTable' | 'matrixTable';
|
|
7
7
|
export type TablePart = 'body' | 'header' | 'footer' | 'subtotal' | 'grandTotal';
|
|
8
8
|
export type ConditionalFormatValueType = 'text' | 'number' | 'date' | 'boolean' | 'unknown';
|
|
9
9
|
export type ConditionalFormatColumn = {
|
|
@@ -765,13 +765,6 @@ export type TCardPreferences = {
|
|
|
765
765
|
*/
|
|
766
766
|
queryComparisonPolarity?: MetricComparisonPolarity;
|
|
767
767
|
};
|
|
768
|
-
pivotTableOptions?: {
|
|
769
|
-
showRowTotals?: boolean;
|
|
770
|
-
showColumnTotals?: boolean;
|
|
771
|
-
showGrandTotal?: boolean;
|
|
772
|
-
sortRowsBy?: 'label' | 'total' | 'metric';
|
|
773
|
-
sortColumnsBy?: 'label' | 'total' | 'metric';
|
|
774
|
-
};
|
|
775
768
|
displayOptions?: {
|
|
776
769
|
showFilterInfo?: boolean;
|
|
777
770
|
showCardToolbar?: boolean;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { TimeDrillStep } from './interaction-types.js';
|
|
2
2
|
import { SemaphorDerivedFieldDefinition, MatrixConfig, SemaphorSourceRef, SemaphorResultColumn, SemaphorPivotValue, SemaphorTimeGrain, SemanticGroupedTemporalInput, TemporalBucketMetadata, TemporalBucketFormat, MetricComparisonConfig, MetricComparisonPolarity } from '../../shared/analytics-protocol/index.js';
|
|
3
|
-
import {
|
|
3
|
+
import { FlatTableExportTotalsBehavior, FlatTableExportTotalsRequest, QueryColumnKeyMap as SharedQueryColumnKeyMap } from '../../shared/format-utils/index.js';
|
|
4
4
|
import { CardQuerySourceRowEvidence, TemporalResultOwner } from '../../shared/dashboard-authoring/index.js';
|
|
5
5
|
import { RelativeDateFilter } from '../../shared/analytics-protocol/relative-date-filter.js';
|
|
6
6
|
/**
|
|
@@ -620,11 +620,6 @@ const config: CardConfig = {
|
|
|
620
620
|
}
|
|
621
621
|
};
|
|
622
622
|
*/
|
|
623
|
-
export declare enum PivotMarkerEnum {
|
|
624
|
-
SUBTOTAL = "__SUBTOTAL__",
|
|
625
|
-
TOTAL = "__TOTAL__",
|
|
626
|
-
ALL = "__ALL__"
|
|
627
|
-
}
|
|
628
623
|
export interface CardConfig {
|
|
629
624
|
/** Sole persisted Matrix definition; runtime windows are not card configuration. */
|
|
630
625
|
matrix?: MatrixConfig;
|
|
@@ -688,9 +683,6 @@ export interface PivotColumnSchema {
|
|
|
688
683
|
pivotFieldIds?: string[];
|
|
689
684
|
pivotFields?: string[];
|
|
690
685
|
displayLabel?: string;
|
|
691
|
-
isPivotColumn?: boolean;
|
|
692
|
-
isMetricColumn?: boolean;
|
|
693
|
-
isGroupByColumn?: boolean;
|
|
694
686
|
aggregate?: AggregateFunction;
|
|
695
687
|
}
|
|
696
688
|
/**
|
|
@@ -728,8 +720,6 @@ export interface QueryExecutionResponse extends CardQuerySourceRowEvidence {
|
|
|
728
720
|
records: any[];
|
|
729
721
|
/** Execution owner captured with these exact result rows. */
|
|
730
722
|
resultOwner?: TemporalResultOwner;
|
|
731
|
-
pivotResultState?: CanonicalPivotResultState;
|
|
732
|
-
pivotResultContract?: CanonicalPivotResultContract;
|
|
733
723
|
columns?: SemaphorResultColumn[];
|
|
734
724
|
output: string;
|
|
735
725
|
rowLimitExceeded: boolean;
|
|
@@ -737,9 +727,6 @@ export interface QueryExecutionResponse extends CardQuerySourceRowEvidence {
|
|
|
737
727
|
userSql?: string;
|
|
738
728
|
pivotSchema?: any;
|
|
739
729
|
pagination?: PaginationMetadata;
|
|
740
|
-
subtotalColumns?: string[];
|
|
741
|
-
columnSubtotalMeta?: any;
|
|
742
|
-
columnMetadata?: Record<string, any>;
|
|
743
730
|
columnKeyMap?: QueryColumnKeyMap;
|
|
744
731
|
tableTotalsByColumnId?: Record<string, string | number | null>;
|
|
745
732
|
documentTableTotalsBaseSql?: string;
|
|
@@ -7,7 +7,17 @@ export declare function hasEditorInfoView(cardType: TCard['type']): boolean;
|
|
|
7
7
|
/** The deprecated table types every saved card of which loads as Matrix (pivot-aggregate-to-matrix). */
|
|
8
8
|
export declare const LEGACY_TABLE_CARD_TYPES: readonly ["pivotTable", "aggregateTable"];
|
|
9
9
|
export type LegacyTableCardType = (typeof LEGACY_TABLE_CARD_TYPES)[number];
|
|
10
|
-
|
|
10
|
+
/**
|
|
11
|
+
* A card as stored. Saved templates may still hold the retired table types,
|
|
12
|
+
* which no runtime reader handles: routing turns each into Matrix or Table on
|
|
13
|
+
* read (pivot-aggregate-removal LR-D10), so only routing takes this type.
|
|
14
|
+
*/
|
|
15
|
+
export type StoredCard = Omit<TCard, 'type'> & {
|
|
16
|
+
type: TCard['type'] | LegacyTableCardType;
|
|
17
|
+
};
|
|
18
|
+
export declare function isLegacyTableCard<T extends {
|
|
19
|
+
type: string;
|
|
20
|
+
}>(card: T): card is T & {
|
|
11
21
|
type: LegacyTableCardType;
|
|
12
22
|
};
|
|
13
23
|
/**
|
|
@@ -6,7 +6,7 @@ import { ResolvedPrimaryDateField } from '../../lib/types/semantic-runtime-types
|
|
|
6
6
|
import { ComparisonMetadataMap } from '../../lib/types/query-types.js';
|
|
7
7
|
import { ComparisonPresentationSpec, GlobalDateComparisonContext, SemaphorResultColumn } from '../analytics-protocol/index.js';
|
|
8
8
|
import { ReportRuntimeContext } from '../report-runtime-context/index.js';
|
|
9
|
-
import {
|
|
9
|
+
import { CsvDelimiter, CsvEncoding, ExportFileFormat, PresentationExecutionSnapshot } from '../format-utils/index.js';
|
|
10
10
|
import { TemporalResultOwner } from './temporal-result-owner.js';
|
|
11
11
|
import { ExportViewerTable } from '../../lib/dashboard-viewer/export-table-view.js';
|
|
12
12
|
/** Formatting configuration passed to the export job */
|
|
@@ -127,7 +127,6 @@ type CardExportPresentationParams = {
|
|
|
127
127
|
requestPayloadBase: DashboardCardQueryRequestPayloadBase;
|
|
128
128
|
resultColumns?: SemaphorResultColumn[];
|
|
129
129
|
columnKeyMap?: QueryColumnKeyMap;
|
|
130
|
-
canonicalPivotResult?: CanonicalPivotResultTransport;
|
|
131
130
|
effectiveCardConfig?: CardConfig;
|
|
132
131
|
};
|
|
133
132
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { TFilter } from '../../../components/surfboard/filter/types.js';
|
|
2
|
-
import {
|
|
2
|
+
import { TDashboard } from '../../../lib/types/common-types.js';
|
|
3
3
|
import { FilterInputEntry } from './read-dashboard-filter-model.js';
|
|
4
4
|
/** One definition per filter input, in model order. The same array for the same dashboard object. */
|
|
5
5
|
export declare function listDashboardFilterDefinitions(dashboard: TDashboard): readonly TFilter[];
|
|
@@ -11,12 +11,6 @@ export declare function getDashboardGlobalDateFilter(dashboard: TDashboard): TFi
|
|
|
11
11
|
* own kind. None for an unknown tab.
|
|
12
12
|
*/
|
|
13
13
|
export declare function listDashboardFilterInputsOnTab(dashboard: TDashboard, sheetId: string | null | undefined, sheetKind?: 'dashboard' | 'document'): readonly FilterInputEntry[];
|
|
14
|
-
/**
|
|
15
|
-
* A filter hidden from the toolbar and not attached to a visual: a toolbar
|
|
16
|
-
* filter's `hide`, or an input placed `hidden` (OF-D14). The edit-mode strip
|
|
17
|
-
* of hidden filters lists these.
|
|
18
|
-
*/
|
|
19
|
-
export declare function isHiddenFilterInput(input: NormalizedFilterDashboardInput): boolean;
|
|
20
14
|
/**
|
|
21
15
|
* Every filter definition the stored template holds, as stored: toolbar
|
|
22
16
|
* filters, stored inputs' filters and prototype Document inputs' filters,
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { TCard, TDashboard, TFrame } from '../../lib/types/common-types.js';
|
|
2
2
|
import { CardTypeChangeGap } from '../../lib/utils/card-type-change.js';
|
|
3
|
+
import { StoredCard } from '../../lib/utils/card-config-utils.js';
|
|
3
4
|
import { DashboardCardLocation } from './document-section-cards.js';
|
|
4
|
-
export { LEGACY_TABLE_CARD_TYPES, isLegacyTableCard, type LegacyTableCardType, } from '../../lib/utils/card-config-utils.js';
|
|
5
|
+
export { LEGACY_TABLE_CARD_TYPES, isLegacyTableCard, type LegacyTableCardType, type StoredCard, } from '../../lib/utils/card-config-utils.js';
|
|
5
6
|
/**
|
|
6
7
|
* Load routing of Pivot and Hierarchical cards
|
|
7
8
|
* (semaphor-app docs/implementation-plans/pivot-aggregate-to-matrix). Every
|
|
@@ -43,9 +44,13 @@ export type LegacyTableCardRouting =
|
|
|
43
44
|
* query builder compiles the same SQL for both types). Every other Pivot and
|
|
44
45
|
* every Hierarchical card becomes Matrix.
|
|
45
46
|
*/
|
|
46
|
-
export declare function legacyTableRoutingTarget(card:
|
|
47
|
-
/**
|
|
48
|
-
|
|
47
|
+
export declare function legacyTableRoutingTarget(card: StoredCard): 'table' | 'matrixTable';
|
|
48
|
+
/**
|
|
49
|
+
* One card: always routed, with what the conversion could not keep (PM-D3).
|
|
50
|
+
* It takes a stored card, the one place a retired table type is accepted
|
|
51
|
+
* (LR-D10); every card it returns is a runtime card.
|
|
52
|
+
*/
|
|
53
|
+
export declare function routeLegacyTableCard(input: TCard | StoredCard): LegacyTableCardRouting;
|
|
49
54
|
/** Each card of a library frame. Returns the input object when nothing routed. */
|
|
50
55
|
export declare function routeLegacyTableFrame<T extends Pick<TFrame, 'cards'>>(frame: T): T;
|
|
51
56
|
/** A routed card that dropped data parts, where it sits, and what it dropped. */
|