react-semaphor 0.1.368 → 0.1.370
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 +1 -1
- package/dist/brand-studio/index.cjs +5 -5
- package/dist/brand-studio/index.js +24 -23
- package/dist/chunks/{braces-Cc86y9Ov.js → braces-C3-w6xDL.js} +1 -1
- package/dist/chunks/{braces-CXvY9MwQ.js → braces-C8QqW4wu.js} +1 -1
- package/dist/chunks/{calendar-preferences-dialog-BOFlzOJg.js → calendar-preferences-dialog-6q51A6XC.js} +3 -3
- package/dist/chunks/{calendar-preferences-dialog-ZzwfJv2J.js → calendar-preferences-dialog-CUGzkNcE.js} +1 -1
- package/dist/chunks/{chevrons-up-down-CUZL1zaU.js → chevrons-up-down-CnCSGY02.js} +1 -1
- package/dist/chunks/{chevrons-up-down-qQMadOWA.js → chevrons-up-down-DSvLu4Ye.js} +1 -1
- package/dist/chunks/{dashboard-briefing-launcher-9-PCYMjR.js → dashboard-briefing-launcher-BEZnvIla.js} +1 -1
- package/dist/chunks/{dashboard-briefing-launcher-D2lBFqAd.js → dashboard-briefing-launcher-ptERmNJr.js} +176 -177
- package/dist/chunks/{dashboard-controls-D4bUHAjX.js → dashboard-controls-CGt6_hMf.js} +11 -11
- package/dist/chunks/{dashboard-controls-BIk094Ah.js → dashboard-controls-CqKC5oEk.js} +77 -77
- package/dist/chunks/{dashboard-json-DImOf512.js → dashboard-json-6SgPm_QW.js} +13 -14
- package/dist/chunks/dashboard-json-CYSbOdmE.js +1 -0
- package/dist/chunks/{edit-dashboard-visual-DTxkV6Fl.js → edit-dashboard-visual-ByQx_M2i.js} +8 -9
- package/dist/chunks/{edit-dashboard-visual-BHKlcqQR.js → edit-dashboard-visual-w6hKbjlw.js} +1 -1
- package/dist/chunks/index-BtqYNH_S.js +1361 -0
- package/dist/chunks/{index-BVEIk-rB.js → index-CPyEi9gS.js} +72498 -76193
- package/dist/chunks/{palette-DPuAc82h.js → palette-D-f4-82S.js} +1 -1
- package/dist/chunks/{palette-C1k347Tb.js → palette-DUGktM-M.js} +1 -1
- package/dist/chunks/{resource-management-panel-BeHceP2D.js → resource-management-panel-Bf8-3eUf.js} +1 -1
- package/dist/chunks/{resource-management-panel-BOfbSf48.js → resource-management-panel-mJ84NxzC.js} +152 -152
- package/dist/chunks/save-D3YYinDz.js +6 -0
- package/dist/chunks/save-kkBEBeLg.js +21 -0
- package/dist/chunks/{switch-xcWLtWs0.js → switch-Dkx2qEOr.js} +758 -776
- package/dist/chunks/{switch-C0S63HAv.js → switch-fIkmwzUt.js} +27 -32
- package/dist/chunks/{use-create-flow-overlay-state-B5FygfQL.js → use-create-flow-overlay-state-BfoXDDrd.js} +190 -189
- package/dist/chunks/use-create-flow-overlay-state-c6rCm36x.js +26 -0
- package/dist/chunks/{use-visual-utils-DxDE8S8M.js → use-visual-utils-C_c-aiqi.js} +1 -1
- package/dist/chunks/{use-visual-utils-CszWnFBW.js → use-visual-utils-NN0e3fBP.js} +13 -13
- package/dist/chunks/validation-DYL3ArlL.js +1 -0
- package/dist/chunks/validation-PPSpYtVf.js +900 -0
- package/dist/chunks/validators-CgxWT8UX.js +1 -0
- package/dist/chunks/validators-DBNa-eb1.js +1799 -0
- package/dist/dashboard/index.cjs +1 -1
- package/dist/dashboard/index.js +1 -1
- package/dist/dashboard-authoring/index.cjs +1 -1
- package/dist/dashboard-authoring/index.js +1 -1
- package/dist/data-app-builder/index.cjs +51 -1
- package/dist/data-app-builder/index.js +3666 -2
- package/dist/data-app-sdk/index.cjs +1 -1
- package/dist/data-app-sdk/index.js +661 -389
- package/dist/data-app-sdk-validation/index.cjs +1 -1
- package/dist/data-app-sdk-validation/index.js +4 -4
- package/dist/index.cjs +1 -1
- package/dist/index.js +14 -14
- package/dist/surfboard/index.cjs +1 -1
- package/dist/surfboard/index.js +2 -2
- package/dist/types/analytics-protocol.d.ts +472 -3
- package/dist/types/dashboard-assistant.d.ts +469 -3
- package/dist/types/dashboard-authoring.d.ts +170 -2
- package/dist/types/data-app-builder.d.ts +167 -2
- package/dist/types/data-app-sdk-validation.d.ts +576 -25
- package/dist/types/data-app-sdk.d.ts +655 -37
- package/dist/types/main.d.ts +167 -2
- package/package.json +1 -1
- package/dist/chunks/dashboard-json-Bo1kX6W1.js +0 -1
- package/dist/chunks/index-HjDeEytV.js +0 -1411
- package/dist/chunks/use-create-flow-overlay-state-DOXTbTcQ.js +0 -26
- package/dist/chunks/validation-CrUjNWby.js +0 -689
- package/dist/chunks/validation-DGl8wnTt.js +0 -1
- package/dist/chunks/validators-Dq5X4mp0.js +0 -1
- package/dist/chunks/validators-L0xEXtjf.js +0 -965
|
@@ -1828,7 +1828,7 @@ declare type SemaphorAnalyticsFilterBase = {
|
|
|
1828
1828
|
|
|
1829
1829
|
declare type SemaphorAnalyticsFilterOperator = SemaphorInputOperator | 'not_contains' | 'is_null' | 'is_not_null';
|
|
1830
1830
|
|
|
1831
|
-
declare type SemaphorAnalyticsIntent = SemaphorMetricIntent | SemaphorRecordsIntent | SemaphorInputOptionsIntent | SemaphorSqlIntent;
|
|
1831
|
+
declare type SemaphorAnalyticsIntent = SemaphorMetricIntent | SemaphorRecordsIntent | SemaphorInputOptionsIntent | SemaphorSqlIntent | SemaphorMatrixIntent;
|
|
1832
1832
|
|
|
1833
1833
|
declare type SemaphorAnalyticsNullFilter = SemaphorAnalyticsFilterBase & {
|
|
1834
1834
|
operator: SemaphorAnalyticsNullFilterOperator;
|
|
@@ -1871,6 +1871,14 @@ declare type SemaphorDashboardViewIntent = {
|
|
|
1871
1871
|
|
|
1872
1872
|
declare type SemaphorDialect = 'postgres' | 'mysql' | 'mssql' | 'snowflake' | 'clickhouse' | 'bigquery' | 'redshift' | 'duckdb' | 'sqlite' | 'unknown';
|
|
1873
1873
|
|
|
1874
|
+
/**
|
|
1875
|
+
* Explorer-backed table source. This is intentionally distinct from raw SQL:
|
|
1876
|
+
* matrix planning needs stable source metadata, fields, and dialect context.
|
|
1877
|
+
*/
|
|
1878
|
+
declare type SemaphorExplorerSourceRef = Extract<SemaphorSourceRef, {
|
|
1879
|
+
kind: 'physical';
|
|
1880
|
+
}>;
|
|
1881
|
+
|
|
1874
1882
|
declare type SemaphorFieldRef = {
|
|
1875
1883
|
name: string;
|
|
1876
1884
|
label?: string;
|
|
@@ -1882,6 +1890,9 @@ declare type SemaphorFieldRef = {
|
|
|
1882
1890
|
|
|
1883
1891
|
declare type SemaphorInputBinding = {
|
|
1884
1892
|
inputId: string;
|
|
1893
|
+
kind?: 'filter' | 'control';
|
|
1894
|
+
controlRole?: 'grain' | 'metric' | 'dimension' | 'aggregation' | 'sqlParam';
|
|
1895
|
+
operator?: SemaphorInputOperator;
|
|
1885
1896
|
field?: SemaphorFieldRef;
|
|
1886
1897
|
};
|
|
1887
1898
|
|
|
@@ -1925,6 +1936,149 @@ declare type SemaphorInputSpec = {
|
|
|
1925
1936
|
scope?: SemaphorInputScope;
|
|
1926
1937
|
};
|
|
1927
1938
|
|
|
1939
|
+
declare type SemaphorMatrixAxisExpansionOptions = {
|
|
1940
|
+
defaultDepth?: number;
|
|
1941
|
+
lazy?: boolean;
|
|
1942
|
+
expandedPaths?: SemaphorMatrixMemberPathSegment[][];
|
|
1943
|
+
};
|
|
1944
|
+
|
|
1945
|
+
declare type SemaphorMatrixAxisLevel = {
|
|
1946
|
+
id?: string;
|
|
1947
|
+
field: SemaphorFieldRef;
|
|
1948
|
+
grain?: SemaphorTimeGrain;
|
|
1949
|
+
label?: string;
|
|
1950
|
+
subtotal?: boolean | SemaphorMatrixSubtotalOptions;
|
|
1951
|
+
sortBy?: SemaphorMatrixAxisSortRule;
|
|
1952
|
+
};
|
|
1953
|
+
|
|
1954
|
+
declare type SemaphorMatrixAxisSortRule = {
|
|
1955
|
+
direction: 'asc' | 'desc';
|
|
1956
|
+
by: {
|
|
1957
|
+
kind: 'label';
|
|
1958
|
+
} | {
|
|
1959
|
+
kind: 'field';
|
|
1960
|
+
field: SemaphorFieldRef;
|
|
1961
|
+
aggregate?: SemaphorAggregateFunction;
|
|
1962
|
+
};
|
|
1963
|
+
nulls?: 'warehouseDefault' | 'first' | 'last';
|
|
1964
|
+
scope?: 'global' | 'withinParent';
|
|
1965
|
+
};
|
|
1966
|
+
|
|
1967
|
+
declare type SemaphorMatrixDisplayLimitOptions = {
|
|
1968
|
+
rows?: SemaphorMatrixDisplayLimitRule;
|
|
1969
|
+
columns?: SemaphorMatrixDisplayLimitRule;
|
|
1970
|
+
};
|
|
1971
|
+
|
|
1972
|
+
declare type SemaphorMatrixDisplayLimitRule = {
|
|
1973
|
+
limit: number;
|
|
1974
|
+
by?: 'label' | 'value';
|
|
1975
|
+
direction?: 'top' | 'bottom';
|
|
1976
|
+
others?: boolean | {
|
|
1977
|
+
label?: string;
|
|
1978
|
+
};
|
|
1979
|
+
};
|
|
1980
|
+
|
|
1981
|
+
declare type SemaphorMatrixExpansionOptions = {
|
|
1982
|
+
rows?: SemaphorMatrixAxisExpansionOptions;
|
|
1983
|
+
columns?: SemaphorMatrixAxisExpansionOptions;
|
|
1984
|
+
};
|
|
1985
|
+
|
|
1986
|
+
declare type SemaphorMatrixIntent = {
|
|
1987
|
+
kind: 'matrix';
|
|
1988
|
+
version?: SemaphorProtocolVersion;
|
|
1989
|
+
id?: string;
|
|
1990
|
+
label?: string;
|
|
1991
|
+
source: SemaphorMatrixSourceRef;
|
|
1992
|
+
rows: SemaphorMatrixAxisLevel[];
|
|
1993
|
+
columns?: SemaphorMatrixAxisLevel[];
|
|
1994
|
+
values: SemaphorMatrixValueField[];
|
|
1995
|
+
filters?: SemaphorAnalyticsFilter[];
|
|
1996
|
+
inputs?: SemaphorInputBinding[];
|
|
1997
|
+
totals?: SemaphorMatrixTotalOptions;
|
|
1998
|
+
sort?: SemaphorMatrixSortRule[];
|
|
1999
|
+
expansion?: SemaphorMatrixExpansionOptions;
|
|
2000
|
+
layout?: SemaphorMatrixLayoutOptions;
|
|
2001
|
+
displayLimits?: SemaphorMatrixDisplayLimitOptions;
|
|
2002
|
+
};
|
|
2003
|
+
|
|
2004
|
+
declare type SemaphorMatrixLayoutOptions = {
|
|
2005
|
+
hierarchy?: 'compact' | 'tabular' | 'outline';
|
|
2006
|
+
valuesPlacement?: 'columns' | 'rows';
|
|
2007
|
+
stickyRowHeaders?: boolean;
|
|
2008
|
+
stickyColumnHeaders?: boolean;
|
|
2009
|
+
};
|
|
2010
|
+
|
|
2011
|
+
declare type SemaphorMatrixMemberPathSegment = {
|
|
2012
|
+
levelId: string;
|
|
2013
|
+
value: unknown;
|
|
2014
|
+
};
|
|
2015
|
+
|
|
2016
|
+
declare type SemaphorMatrixSortRule = {
|
|
2017
|
+
axis: 'row' | 'column';
|
|
2018
|
+
targetId?: string;
|
|
2019
|
+
direction: 'asc' | 'desc';
|
|
2020
|
+
by: {
|
|
2021
|
+
kind: 'label';
|
|
2022
|
+
} | {
|
|
2023
|
+
kind: 'field';
|
|
2024
|
+
field: SemaphorFieldRef;
|
|
2025
|
+
aggregate?: SemaphorAggregateFunction;
|
|
2026
|
+
} | {
|
|
2027
|
+
kind: 'value';
|
|
2028
|
+
valueId: string;
|
|
2029
|
+
rowPath?: SemaphorMatrixMemberPathSegment[];
|
|
2030
|
+
columnPath?: SemaphorMatrixMemberPathSegment[];
|
|
2031
|
+
};
|
|
2032
|
+
nulls?: 'warehouseDefault' | 'first' | 'last';
|
|
2033
|
+
scope?: 'global' | 'withinParent';
|
|
2034
|
+
};
|
|
2035
|
+
|
|
2036
|
+
declare type SemaphorMatrixSourceRef = SemaphorSemanticSourceRef | SemaphorExplorerSourceRef;
|
|
2037
|
+
|
|
2038
|
+
declare type SemaphorMatrixSubtotalOptions = {
|
|
2039
|
+
enabled?: boolean;
|
|
2040
|
+
position?: 'before' | 'after';
|
|
2041
|
+
label?: string;
|
|
2042
|
+
};
|
|
2043
|
+
|
|
2044
|
+
declare type SemaphorMatrixTotalCalculation = {
|
|
2045
|
+
kind: 'defaultAggregate';
|
|
2046
|
+
} | {
|
|
2047
|
+
kind: 'blank';
|
|
2048
|
+
} | {
|
|
2049
|
+
kind: 'labelOnly';
|
|
2050
|
+
label?: string;
|
|
2051
|
+
} | {
|
|
2052
|
+
kind: 'customAggregate';
|
|
2053
|
+
aggregate: SemaphorAggregateFunction;
|
|
2054
|
+
} | {
|
|
2055
|
+
kind: 'percentOfParent';
|
|
2056
|
+
} | {
|
|
2057
|
+
kind: 'percentOfGrandTotal';
|
|
2058
|
+
} | {
|
|
2059
|
+
kind: 'customExpression';
|
|
2060
|
+
expressionId: string;
|
|
2061
|
+
};
|
|
2062
|
+
|
|
2063
|
+
declare type SemaphorMatrixTotalOptions = {
|
|
2064
|
+
rows?: boolean | 'perLevel';
|
|
2065
|
+
columns?: boolean | 'perLevel';
|
|
2066
|
+
grandTotal?: boolean | {
|
|
2067
|
+
rows?: boolean;
|
|
2068
|
+
columns?: boolean;
|
|
2069
|
+
};
|
|
2070
|
+
rowPosition?: 'top' | 'bottom';
|
|
2071
|
+
columnPosition?: 'left' | 'right';
|
|
2072
|
+
};
|
|
2073
|
+
|
|
2074
|
+
declare type SemaphorMatrixValueField = {
|
|
2075
|
+
id?: string;
|
|
2076
|
+
field: SemaphorFieldRef;
|
|
2077
|
+
aggregate?: SemaphorAggregateFunction;
|
|
2078
|
+
label?: string;
|
|
2079
|
+
totalBehavior?: SemaphorMatrixTotalCalculation;
|
|
2080
|
+
};
|
|
2081
|
+
|
|
1928
2082
|
declare type SemaphorMetricAnalysis = {
|
|
1929
2083
|
kind: 'period_change';
|
|
1930
2084
|
orderBy?: 'absolute_change' | 'positive_change' | 'negative_change' | 'period';
|
|
@@ -1958,6 +2112,11 @@ declare type SemaphorMetricIntent = {
|
|
|
1958
2112
|
limit?: number;
|
|
1959
2113
|
};
|
|
1960
2114
|
|
|
2115
|
+
declare type SemaphorPaginationRequest = {
|
|
2116
|
+
page: number;
|
|
2117
|
+
pageSize: number;
|
|
2118
|
+
};
|
|
2119
|
+
|
|
1961
2120
|
declare type SemaphorProtocolVersion = 1;
|
|
1962
2121
|
|
|
1963
2122
|
declare type SemaphorRecordsIntent = {
|
|
@@ -1972,6 +2131,7 @@ declare type SemaphorRecordsIntent = {
|
|
|
1972
2131
|
timeWindow?: SemaphorTimeWindow;
|
|
1973
2132
|
filters?: SemaphorAnalyticsFilter[];
|
|
1974
2133
|
limit?: number;
|
|
2134
|
+
pagination?: SemaphorPaginationRequest;
|
|
1975
2135
|
orderBy?: {
|
|
1976
2136
|
field: SemaphorFieldRef;
|
|
1977
2137
|
direction: 'asc' | 'desc';
|
|
@@ -1987,6 +2147,10 @@ declare type SemaphorRelativeTimeWindow = {
|
|
|
1987
2147
|
completeness?: 'include_partial' | 'complete_periods';
|
|
1988
2148
|
};
|
|
1989
2149
|
|
|
2150
|
+
declare type SemaphorSemanticSourceRef = Extract<SemaphorSourceRef, {
|
|
2151
|
+
kind: 'semantic';
|
|
2152
|
+
}>;
|
|
2153
|
+
|
|
1990
2154
|
declare type SemaphorSourceRef = {
|
|
1991
2155
|
kind: 'semantic';
|
|
1992
2156
|
domainId: string;
|
|
@@ -2019,9 +2183,10 @@ declare type SemaphorSqlIntent = {
|
|
|
2019
2183
|
kind: 'sql';
|
|
2020
2184
|
}>;
|
|
2021
2185
|
sql: string;
|
|
2022
|
-
|
|
2186
|
+
defaultParameters?: Record<string, unknown>;
|
|
2023
2187
|
pythonCode?: string;
|
|
2024
2188
|
limit?: number;
|
|
2189
|
+
pagination?: SemaphorPaginationRequest;
|
|
2025
2190
|
rationale?: string;
|
|
2026
2191
|
fields?: SemaphorFieldRef[];
|
|
2027
2192
|
inputs?: SemaphorInputBinding[];
|
|
@@ -2041,6 +2206,9 @@ declare type SemaphorViewPresentation = {
|
|
|
2041
2206
|
} | {
|
|
2042
2207
|
kind: 'table';
|
|
2043
2208
|
columns?: string[];
|
|
2209
|
+
} | {
|
|
2210
|
+
kind: 'matrixTable';
|
|
2211
|
+
mode?: 'auto' | 'pivot' | 'hierarchical';
|
|
2044
2212
|
} | {
|
|
2045
2213
|
kind: 'text';
|
|
2046
2214
|
};
|
|
@@ -564,7 +564,7 @@ declare type SemaphorAnalyticsFilterBase = {
|
|
|
564
564
|
|
|
565
565
|
declare type SemaphorAnalyticsFilterOperator = SemaphorInputOperator | 'not_contains' | 'is_null' | 'is_not_null';
|
|
566
566
|
|
|
567
|
-
declare type SemaphorAnalyticsIntent = SemaphorMetricIntent | SemaphorRecordsIntent | SemaphorInputOptionsIntent | SemaphorSqlIntent;
|
|
567
|
+
declare type SemaphorAnalyticsIntent = SemaphorMetricIntent | SemaphorRecordsIntent | SemaphorInputOptionsIntent | SemaphorSqlIntent | SemaphorMatrixIntent;
|
|
568
568
|
|
|
569
569
|
declare type SemaphorAnalyticsNullFilter = SemaphorAnalyticsFilterBase & {
|
|
570
570
|
operator: SemaphorAnalyticsNullFilterOperator;
|
|
@@ -582,6 +582,14 @@ declare type SemaphorAnalyticsValueFilterOperator = Exclude<SemaphorAnalyticsFil
|
|
|
582
582
|
|
|
583
583
|
declare type SemaphorDialect = 'postgres' | 'mysql' | 'mssql' | 'snowflake' | 'clickhouse' | 'bigquery' | 'redshift' | 'duckdb' | 'sqlite' | 'unknown';
|
|
584
584
|
|
|
585
|
+
/**
|
|
586
|
+
* Explorer-backed table source. This is intentionally distinct from raw SQL:
|
|
587
|
+
* matrix planning needs stable source metadata, fields, and dialect context.
|
|
588
|
+
*/
|
|
589
|
+
declare type SemaphorExplorerSourceRef = Extract<SemaphorSourceRef, {
|
|
590
|
+
kind: 'physical';
|
|
591
|
+
}>;
|
|
592
|
+
|
|
585
593
|
declare type SemaphorFieldRef = {
|
|
586
594
|
name: string;
|
|
587
595
|
label?: string;
|
|
@@ -593,6 +601,9 @@ declare type SemaphorFieldRef = {
|
|
|
593
601
|
|
|
594
602
|
declare type SemaphorInputBinding = {
|
|
595
603
|
inputId: string;
|
|
604
|
+
kind?: 'filter' | 'control';
|
|
605
|
+
controlRole?: 'grain' | 'metric' | 'dimension' | 'aggregation' | 'sqlParam';
|
|
606
|
+
operator?: SemaphorInputOperator;
|
|
596
607
|
field?: SemaphorFieldRef;
|
|
597
608
|
};
|
|
598
609
|
|
|
@@ -609,6 +620,149 @@ declare type SemaphorInputOptionsIntent = {
|
|
|
609
620
|
limit?: number;
|
|
610
621
|
};
|
|
611
622
|
|
|
623
|
+
declare type SemaphorMatrixAxisExpansionOptions = {
|
|
624
|
+
defaultDepth?: number;
|
|
625
|
+
lazy?: boolean;
|
|
626
|
+
expandedPaths?: SemaphorMatrixMemberPathSegment[][];
|
|
627
|
+
};
|
|
628
|
+
|
|
629
|
+
declare type SemaphorMatrixAxisLevel = {
|
|
630
|
+
id?: string;
|
|
631
|
+
field: SemaphorFieldRef;
|
|
632
|
+
grain?: SemaphorTimeGrain;
|
|
633
|
+
label?: string;
|
|
634
|
+
subtotal?: boolean | SemaphorMatrixSubtotalOptions;
|
|
635
|
+
sortBy?: SemaphorMatrixAxisSortRule;
|
|
636
|
+
};
|
|
637
|
+
|
|
638
|
+
declare type SemaphorMatrixAxisSortRule = {
|
|
639
|
+
direction: 'asc' | 'desc';
|
|
640
|
+
by: {
|
|
641
|
+
kind: 'label';
|
|
642
|
+
} | {
|
|
643
|
+
kind: 'field';
|
|
644
|
+
field: SemaphorFieldRef;
|
|
645
|
+
aggregate?: SemaphorAggregateFunction;
|
|
646
|
+
};
|
|
647
|
+
nulls?: 'warehouseDefault' | 'first' | 'last';
|
|
648
|
+
scope?: 'global' | 'withinParent';
|
|
649
|
+
};
|
|
650
|
+
|
|
651
|
+
declare type SemaphorMatrixDisplayLimitOptions = {
|
|
652
|
+
rows?: SemaphorMatrixDisplayLimitRule;
|
|
653
|
+
columns?: SemaphorMatrixDisplayLimitRule;
|
|
654
|
+
};
|
|
655
|
+
|
|
656
|
+
declare type SemaphorMatrixDisplayLimitRule = {
|
|
657
|
+
limit: number;
|
|
658
|
+
by?: 'label' | 'value';
|
|
659
|
+
direction?: 'top' | 'bottom';
|
|
660
|
+
others?: boolean | {
|
|
661
|
+
label?: string;
|
|
662
|
+
};
|
|
663
|
+
};
|
|
664
|
+
|
|
665
|
+
declare type SemaphorMatrixExpansionOptions = {
|
|
666
|
+
rows?: SemaphorMatrixAxisExpansionOptions;
|
|
667
|
+
columns?: SemaphorMatrixAxisExpansionOptions;
|
|
668
|
+
};
|
|
669
|
+
|
|
670
|
+
declare type SemaphorMatrixIntent = {
|
|
671
|
+
kind: 'matrix';
|
|
672
|
+
version?: SemaphorProtocolVersion;
|
|
673
|
+
id?: string;
|
|
674
|
+
label?: string;
|
|
675
|
+
source: SemaphorMatrixSourceRef;
|
|
676
|
+
rows: SemaphorMatrixAxisLevel[];
|
|
677
|
+
columns?: SemaphorMatrixAxisLevel[];
|
|
678
|
+
values: SemaphorMatrixValueField[];
|
|
679
|
+
filters?: SemaphorAnalyticsFilter[];
|
|
680
|
+
inputs?: SemaphorInputBinding[];
|
|
681
|
+
totals?: SemaphorMatrixTotalOptions;
|
|
682
|
+
sort?: SemaphorMatrixSortRule[];
|
|
683
|
+
expansion?: SemaphorMatrixExpansionOptions;
|
|
684
|
+
layout?: SemaphorMatrixLayoutOptions;
|
|
685
|
+
displayLimits?: SemaphorMatrixDisplayLimitOptions;
|
|
686
|
+
};
|
|
687
|
+
|
|
688
|
+
declare type SemaphorMatrixLayoutOptions = {
|
|
689
|
+
hierarchy?: 'compact' | 'tabular' | 'outline';
|
|
690
|
+
valuesPlacement?: 'columns' | 'rows';
|
|
691
|
+
stickyRowHeaders?: boolean;
|
|
692
|
+
stickyColumnHeaders?: boolean;
|
|
693
|
+
};
|
|
694
|
+
|
|
695
|
+
declare type SemaphorMatrixMemberPathSegment = {
|
|
696
|
+
levelId: string;
|
|
697
|
+
value: unknown;
|
|
698
|
+
};
|
|
699
|
+
|
|
700
|
+
declare type SemaphorMatrixSortRule = {
|
|
701
|
+
axis: 'row' | 'column';
|
|
702
|
+
targetId?: string;
|
|
703
|
+
direction: 'asc' | 'desc';
|
|
704
|
+
by: {
|
|
705
|
+
kind: 'label';
|
|
706
|
+
} | {
|
|
707
|
+
kind: 'field';
|
|
708
|
+
field: SemaphorFieldRef;
|
|
709
|
+
aggregate?: SemaphorAggregateFunction;
|
|
710
|
+
} | {
|
|
711
|
+
kind: 'value';
|
|
712
|
+
valueId: string;
|
|
713
|
+
rowPath?: SemaphorMatrixMemberPathSegment[];
|
|
714
|
+
columnPath?: SemaphorMatrixMemberPathSegment[];
|
|
715
|
+
};
|
|
716
|
+
nulls?: 'warehouseDefault' | 'first' | 'last';
|
|
717
|
+
scope?: 'global' | 'withinParent';
|
|
718
|
+
};
|
|
719
|
+
|
|
720
|
+
declare type SemaphorMatrixSourceRef = SemaphorSemanticSourceRef | SemaphorExplorerSourceRef;
|
|
721
|
+
|
|
722
|
+
declare type SemaphorMatrixSubtotalOptions = {
|
|
723
|
+
enabled?: boolean;
|
|
724
|
+
position?: 'before' | 'after';
|
|
725
|
+
label?: string;
|
|
726
|
+
};
|
|
727
|
+
|
|
728
|
+
declare type SemaphorMatrixTotalCalculation = {
|
|
729
|
+
kind: 'defaultAggregate';
|
|
730
|
+
} | {
|
|
731
|
+
kind: 'blank';
|
|
732
|
+
} | {
|
|
733
|
+
kind: 'labelOnly';
|
|
734
|
+
label?: string;
|
|
735
|
+
} | {
|
|
736
|
+
kind: 'customAggregate';
|
|
737
|
+
aggregate: SemaphorAggregateFunction;
|
|
738
|
+
} | {
|
|
739
|
+
kind: 'percentOfParent';
|
|
740
|
+
} | {
|
|
741
|
+
kind: 'percentOfGrandTotal';
|
|
742
|
+
} | {
|
|
743
|
+
kind: 'customExpression';
|
|
744
|
+
expressionId: string;
|
|
745
|
+
};
|
|
746
|
+
|
|
747
|
+
declare type SemaphorMatrixTotalOptions = {
|
|
748
|
+
rows?: boolean | 'perLevel';
|
|
749
|
+
columns?: boolean | 'perLevel';
|
|
750
|
+
grandTotal?: boolean | {
|
|
751
|
+
rows?: boolean;
|
|
752
|
+
columns?: boolean;
|
|
753
|
+
};
|
|
754
|
+
rowPosition?: 'top' | 'bottom';
|
|
755
|
+
columnPosition?: 'left' | 'right';
|
|
756
|
+
};
|
|
757
|
+
|
|
758
|
+
declare type SemaphorMatrixValueField = {
|
|
759
|
+
id?: string;
|
|
760
|
+
field: SemaphorFieldRef;
|
|
761
|
+
aggregate?: SemaphorAggregateFunction;
|
|
762
|
+
label?: string;
|
|
763
|
+
totalBehavior?: SemaphorMatrixTotalCalculation;
|
|
764
|
+
};
|
|
765
|
+
|
|
612
766
|
declare type SemaphorMetricAnalysis = {
|
|
613
767
|
kind: 'period_change';
|
|
614
768
|
orderBy?: 'absolute_change' | 'positive_change' | 'negative_change' | 'period';
|
|
@@ -642,6 +796,11 @@ declare type SemaphorMetricIntent = {
|
|
|
642
796
|
limit?: number;
|
|
643
797
|
};
|
|
644
798
|
|
|
799
|
+
declare type SemaphorPaginationRequest = {
|
|
800
|
+
page: number;
|
|
801
|
+
pageSize: number;
|
|
802
|
+
};
|
|
803
|
+
|
|
645
804
|
declare type SemaphorProtocolVersion = 1;
|
|
646
805
|
|
|
647
806
|
declare type SemaphorRecordsIntent = {
|
|
@@ -656,6 +815,7 @@ declare type SemaphorRecordsIntent = {
|
|
|
656
815
|
timeWindow?: SemaphorTimeWindow;
|
|
657
816
|
filters?: SemaphorAnalyticsFilter[];
|
|
658
817
|
limit?: number;
|
|
818
|
+
pagination?: SemaphorPaginationRequest;
|
|
659
819
|
orderBy?: {
|
|
660
820
|
field: SemaphorFieldRef;
|
|
661
821
|
direction: 'asc' | 'desc';
|
|
@@ -671,6 +831,10 @@ declare type SemaphorRelativeTimeWindow = {
|
|
|
671
831
|
completeness?: 'include_partial' | 'complete_periods';
|
|
672
832
|
};
|
|
673
833
|
|
|
834
|
+
declare type SemaphorSemanticSourceRef = Extract<SemaphorSourceRef, {
|
|
835
|
+
kind: 'semantic';
|
|
836
|
+
}>;
|
|
837
|
+
|
|
674
838
|
declare type SemaphorSourceRef = {
|
|
675
839
|
kind: 'semantic';
|
|
676
840
|
domainId: string;
|
|
@@ -703,9 +867,10 @@ declare type SemaphorSqlIntent = {
|
|
|
703
867
|
kind: 'sql';
|
|
704
868
|
}>;
|
|
705
869
|
sql: string;
|
|
706
|
-
|
|
870
|
+
defaultParameters?: Record<string, unknown>;
|
|
707
871
|
pythonCode?: string;
|
|
708
872
|
limit?: number;
|
|
873
|
+
pagination?: SemaphorPaginationRequest;
|
|
709
874
|
rationale?: string;
|
|
710
875
|
fields?: SemaphorFieldRef[];
|
|
711
876
|
inputs?: SemaphorInputBinding[];
|