react-semaphor 0.1.474 → 0.1.476
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/brand-studio/index.cjs +1 -1
- package/dist/brand-studio/index.js +1 -1
- package/dist/briefings/index.cjs +1 -1
- package/dist/briefings/index.js +20 -20
- package/dist/chunks/{dashboard-briefing-launcher-BjCkA5vw.cjs → dashboard-briefing-launcher-ZfuxdRN2.cjs} +1 -1
- package/dist/chunks/{dashboard-briefing-launcher-B0f28WrK.js → dashboard-briefing-launcher-eBsB9kr8.js} +5 -5
- package/dist/chunks/{dashboard-controls-CMJqSLgo.js → dashboard-controls-BX6p6z8a.js} +5 -5
- package/dist/chunks/{dashboard-controls-BRclCQEX.cjs → dashboard-controls-DwjEc7sO.cjs} +1 -1
- package/dist/chunks/dashboard-filter-value-compatibility-BCVF9IHg.js +1026 -0
- package/dist/chunks/dashboard-filter-value-compatibility-DLkdeypb.cjs +1 -0
- package/dist/chunks/{dashboard-json-1ohpjO_q.js → dashboard-json-BfgitBXc.js} +3 -3
- package/dist/chunks/{dashboard-json-DmtGHdDq.cjs → dashboard-json-CdwYFOsc.cjs} +1 -1
- package/dist/chunks/{edit-dashboard-visual-DNqJHdHE.cjs → edit-dashboard-visual-Cbougpzc.cjs} +1 -1
- package/dist/chunks/{edit-dashboard-visual-D9oKtOo6.js → edit-dashboard-visual-D80DLF7C.js} +6 -6
- package/dist/chunks/{editor-action-buttons-DwI3FcSw.cjs → editor-action-buttons-BDRLfaW-.cjs} +1 -1
- package/dist/chunks/{editor-action-buttons-C_B8Wzkf.js → editor-action-buttons-DjsEDQok.js} +3 -3
- package/dist/chunks/index-CneWIz__.cjs +1404 -0
- package/dist/chunks/{index-DsvIlrI-.js → index-D9S3j7_z.js} +532 -463
- package/dist/chunks/{index-DalKzjEZ.js → index-Dv5hbC1r.js} +40833 -40225
- package/dist/chunks/index-v2MZLyus.cjs +4 -0
- package/dist/chunks/{pivot-header-presentation-Be3FyR0N.js → pivot-header-presentation-CaERAWpl.js} +144 -128
- package/dist/chunks/pivot-header-presentation-CePk1R6g.cjs +4 -0
- package/dist/chunks/{pivot-result-lifecycle-PxmbJWkm.js → pivot-result-lifecycle-B9FTybxN.js} +176 -165
- package/dist/chunks/pivot-result-lifecycle-CcGt_29N.cjs +1 -0
- package/dist/chunks/{report-preferences-dialog-C9mJffNQ.js → report-preferences-dialog-BXBlvW79.js} +2 -2
- package/dist/chunks/{report-preferences-dialog-DGMd-eTT.cjs → report-preferences-dialog-cSMJYqns.cjs} +1 -1
- package/dist/chunks/switch-B1mZx2k9.cjs +138 -0
- package/dist/chunks/{switch-D20CIzj6.js → switch-C8NihGV4.js} +3326 -3318
- package/dist/dashboard/index.cjs +1 -1
- package/dist/dashboard/index.js +1 -1
- package/dist/dashboard-authoring/index.cjs +3 -3
- package/dist/dashboard-authoring/index.js +298 -287
- package/dist/data-app-builder/index.cjs +1 -1
- package/dist/data-app-builder/index.js +2 -2
- package/dist/format-utils/index.cjs +3 -3
- package/dist/format-utils/index.js +92 -82
- package/dist/index.cjs +1 -1
- package/dist/index.js +6 -6
- package/dist/pdf-export-policy/index.cjs +1 -0
- package/dist/pdf-export-policy/index.js +32 -0
- package/dist/surfboard/index.cjs +1 -1
- package/dist/surfboard/index.js +2 -2
- package/dist/types/briefings.d.ts +13 -1
- package/dist/types/dashboard-assistant.d.ts +2 -0
- package/dist/types/dashboard-authoring.d.ts +13 -1
- package/dist/types/dashboard.d.ts +19 -1
- package/dist/types/format-utils.d.ts +46 -0
- package/dist/types/main.d.ts +19 -1
- package/dist/types/pdf-export-policy.d.ts +28 -0
- package/dist/types/shared.d.ts +13 -1
- package/dist/types/surfboard.d.ts +19 -1
- package/dist/types/types.d.ts +19 -1
- package/package.json +6 -1
- package/dist/chunks/dashboard-filter-value-compatibility-9W8Ckcle.js +0 -846
- package/dist/chunks/dashboard-filter-value-compatibility-Co1dn9Bc.cjs +0 -1
- package/dist/chunks/index-B4VxBoJg.cjs +0 -4
- package/dist/chunks/index-B6zSYUN4.cjs +0 -1404
- package/dist/chunks/pivot-header-presentation-Cr6pU5JL.cjs +0 -4
- package/dist/chunks/pivot-result-lifecycle-DJgO2P0H.cjs +0 -1
- package/dist/chunks/switch-B4eH4guz.cjs +0 -138
|
@@ -70,6 +70,8 @@ declare type BaseFilter = {
|
|
|
70
70
|
valueType: 'string' | 'number' | 'date' | 'boolean';
|
|
71
71
|
connectionType?: 'database' | 'api';
|
|
72
72
|
dataType?: string;
|
|
73
|
+
/** Exact database type retained across dashboard-to-query transport. */
|
|
74
|
+
nativeDataType?: string;
|
|
73
75
|
fieldMeta?: FilterFieldMeta;
|
|
74
76
|
semanticContext?: FilterSemanticContext;
|
|
75
77
|
/** Governed meaning for canonical grouped-temporal filter values. */
|
|
@@ -1512,6 +1514,8 @@ declare interface Field {
|
|
|
1512
1514
|
sourceField?: string;
|
|
1513
1515
|
qualifiedFieldName: string;
|
|
1514
1516
|
dataType: string;
|
|
1517
|
+
/** Exact database type when dataType is normalized for analytics/UI use. */
|
|
1518
|
+
nativeDataType?: string;
|
|
1515
1519
|
description?: string;
|
|
1516
1520
|
qualifiedEntityName?: string;
|
|
1517
1521
|
dateFormat?: DateFormatValue;
|
|
@@ -1601,6 +1605,8 @@ declare type FilterDisplayMode = 'canvas' | 'toolbar' | 'inherit';
|
|
|
1601
1605
|
declare type FilterFieldMeta = Pick<Field, 'name' | 'qualifiedFieldName'> & Partial<Pick<Field, 'id' | 'qualifiedEntityName' | 'entityId' | 'dataType' | 'role' | 'fieldScope'>> & {
|
|
1602
1606
|
entityName?: Field['entityName'];
|
|
1603
1607
|
entityType?: string;
|
|
1608
|
+
/** Exact database type used by server-side predicate formatting. */
|
|
1609
|
+
nativeDataType?: string;
|
|
1604
1610
|
expression?: string;
|
|
1605
1611
|
calculatedFormula?: CalculatedFieldFormula;
|
|
1606
1612
|
};
|
|
@@ -2118,8 +2124,10 @@ declare interface PaginationConfig {
|
|
|
2118
2124
|
pageSize: number;
|
|
2119
2125
|
}
|
|
2120
2126
|
|
|
2121
|
-
declare type PersistedColumnSettings = Omit<Partial<ColumnSettings>, 'numberFormat'> & {
|
|
2127
|
+
declare type PersistedColumnSettings = Omit<Partial<ColumnSettings>, 'numberFormat' | 'dateFormat'> & {
|
|
2122
2128
|
numberFormat?: Partial<ColumnSettings['numberFormat']>;
|
|
2129
|
+
/** Sparse persisted date settings; conditional requirements are enforced by the serializer. */
|
|
2130
|
+
dateFormat?: Partial<ColumnSettings['dateFormat']>;
|
|
2123
2131
|
};
|
|
2124
2132
|
|
|
2125
2133
|
declare type PersistedColumnSettingsMap = Record<string, PersistedColumnSettings>;
|
|
@@ -3604,6 +3612,8 @@ declare type TFilter = {
|
|
|
3604
3612
|
title: string;
|
|
3605
3613
|
column: string;
|
|
3606
3614
|
dataType: string;
|
|
3615
|
+
/** Exact database type retained when dataType is a normalized UI category. */
|
|
3616
|
+
nativeDataType?: string;
|
|
3607
3617
|
table?: string;
|
|
3608
3618
|
database?: string;
|
|
3609
3619
|
qualifiedTableName?: string;
|
|
@@ -3741,6 +3751,8 @@ declare type TInlineFilter = {
|
|
|
3741
3751
|
column: string;
|
|
3742
3752
|
title: string;
|
|
3743
3753
|
dataType: string;
|
|
3754
|
+
/** Exact database type retained when dataType is a normalized UI category. */
|
|
3755
|
+
nativeDataType?: string;
|
|
3744
3756
|
table: string;
|
|
3745
3757
|
database: string;
|
|
3746
3758
|
qualifiedTableName?: string;
|
|
@@ -136,6 +136,8 @@ declare type BaseFilter = {
|
|
|
136
136
|
valueType: 'string' | 'number' | 'date' | 'boolean';
|
|
137
137
|
connectionType?: 'database' | 'api';
|
|
138
138
|
dataType?: string;
|
|
139
|
+
/** Exact database type retained across dashboard-to-query transport. */
|
|
140
|
+
nativeDataType?: string;
|
|
139
141
|
fieldMeta?: FilterFieldMeta;
|
|
140
142
|
semanticContext?: FilterSemanticContext;
|
|
141
143
|
/** Governed meaning for canonical grouped-temporal filter values. */
|
|
@@ -1538,6 +1540,8 @@ declare interface Field {
|
|
|
1538
1540
|
sourceField?: string;
|
|
1539
1541
|
qualifiedFieldName: string;
|
|
1540
1542
|
dataType: string;
|
|
1543
|
+
/** Exact database type when dataType is normalized for analytics/UI use. */
|
|
1544
|
+
nativeDataType?: string;
|
|
1541
1545
|
description?: string;
|
|
1542
1546
|
qualifiedEntityName?: string;
|
|
1543
1547
|
dateFormat?: DateFormatValue;
|
|
@@ -1627,6 +1631,8 @@ declare type FilterDisplayMode = 'canvas' | 'toolbar' | 'inherit';
|
|
|
1627
1631
|
declare type FilterFieldMeta = Pick<Field, 'name' | 'qualifiedFieldName'> & Partial<Pick<Field, 'id' | 'qualifiedEntityName' | 'entityId' | 'dataType' | 'role' | 'fieldScope'>> & {
|
|
1628
1632
|
entityName?: Field['entityName'];
|
|
1629
1633
|
entityType?: string;
|
|
1634
|
+
/** Exact database type used by server-side predicate formatting. */
|
|
1635
|
+
nativeDataType?: string;
|
|
1630
1636
|
expression?: string;
|
|
1631
1637
|
calculatedFormula?: CalculatedFieldFormula;
|
|
1632
1638
|
};
|
|
@@ -2215,8 +2221,10 @@ declare type Params = {
|
|
|
2215
2221
|
[key: string]: string | number | string[] | number[];
|
|
2216
2222
|
};
|
|
2217
2223
|
|
|
2218
|
-
declare type PersistedColumnSettings = Omit<Partial<ColumnSettings>, 'numberFormat'> & {
|
|
2224
|
+
declare type PersistedColumnSettings = Omit<Partial<ColumnSettings>, 'numberFormat' | 'dateFormat'> & {
|
|
2219
2225
|
numberFormat?: Partial<ColumnSettings['numberFormat']>;
|
|
2226
|
+
/** Sparse persisted date settings; conditional requirements are enforced by the serializer. */
|
|
2227
|
+
dateFormat?: Partial<ColumnSettings['dateFormat']>;
|
|
2220
2228
|
};
|
|
2221
2229
|
|
|
2222
2230
|
declare type PersistedColumnSettingsMap = Record<string, PersistedColumnSettings>;
|
|
@@ -3469,6 +3477,12 @@ export declare type TDashboard = {
|
|
|
3469
3477
|
export declare type TDataColumn = {
|
|
3470
3478
|
column_name: string;
|
|
3471
3479
|
data_type: string;
|
|
3480
|
+
/** Exact catalog type when the columns API can prove it independently. */
|
|
3481
|
+
nativeDataType?: string;
|
|
3482
|
+
/** @deprecated Use the API contract spelling `nativeDataType`. */
|
|
3483
|
+
native_data_type?: string;
|
|
3484
|
+
/** Whether `data_type` came from semantic metadata or physical introspection. */
|
|
3485
|
+
dataTypeProvenance?: 'semantic' | 'physical';
|
|
3472
3486
|
is_nullable?: string;
|
|
3473
3487
|
label?: string;
|
|
3474
3488
|
description?: string;
|
|
@@ -3692,6 +3706,8 @@ declare type TFilter = {
|
|
|
3692
3706
|
title: string;
|
|
3693
3707
|
column: string;
|
|
3694
3708
|
dataType: string;
|
|
3709
|
+
/** Exact database type retained when dataType is a normalized UI category. */
|
|
3710
|
+
nativeDataType?: string;
|
|
3695
3711
|
table?: string;
|
|
3696
3712
|
database?: string;
|
|
3697
3713
|
qualifiedTableName?: string;
|
|
@@ -3837,6 +3853,8 @@ export declare type TInlineFilter = {
|
|
|
3837
3853
|
column: string;
|
|
3838
3854
|
title: string;
|
|
3839
3855
|
dataType: string;
|
|
3856
|
+
/** Exact database type retained when dataType is a normalized UI category. */
|
|
3857
|
+
nativeDataType?: string;
|
|
3840
3858
|
table: string;
|
|
3841
3859
|
database: string;
|
|
3842
3860
|
qualifiedTableName?: string;
|
|
@@ -297,6 +297,20 @@ export declare interface ExportFormattingConfig {
|
|
|
297
297
|
visibleColumns: string[];
|
|
298
298
|
}
|
|
299
299
|
|
|
300
|
+
/**
|
|
301
|
+
* Shared structured Fast PDF routing and safety policy.
|
|
302
|
+
*
|
|
303
|
+
* These values are product policy, not deployment configuration. Keep this
|
|
304
|
+
* module React-free so browser, app, and renderer adapters can enforce the
|
|
305
|
+
* same limits at their trust boundaries.
|
|
306
|
+
*/
|
|
307
|
+
export declare const FAST_PDF_POLICY: Readonly<{
|
|
308
|
+
maxRows: 5000;
|
|
309
|
+
maxRequestBytes: 2621440;
|
|
310
|
+
maxPages: 100;
|
|
311
|
+
maxOutputBytes: 52428800;
|
|
312
|
+
}>;
|
|
313
|
+
|
|
300
314
|
export declare function findResolvedNumericFormat(input: {
|
|
301
315
|
snapshot: PresentationExecutionSnapshot;
|
|
302
316
|
scope: PresentationScope;
|
|
@@ -533,6 +547,9 @@ export declare function getTimezoneAbbreviation(timezone: string, date?: Date):
|
|
|
533
547
|
*/
|
|
534
548
|
export declare function getTimezoneName(timezone: string): string;
|
|
535
549
|
|
|
550
|
+
/** Exact UTF-8 bytes used by the structured POST body. */
|
|
551
|
+
export declare function getUtf8ByteLength(value: string): number;
|
|
552
|
+
|
|
536
553
|
export declare interface GroupByField {
|
|
537
554
|
name: string;
|
|
538
555
|
alias: string;
|
|
@@ -547,6 +564,14 @@ declare type IdentifiedMetricField = IdentifiedField & MetricResultAliasInput;
|
|
|
547
564
|
|
|
548
565
|
export declare function isAggregateTotalMemberMarker(value: unknown): value is typeof AGGREGATE_TOTAL_MEMBER_MARKER;
|
|
549
566
|
|
|
567
|
+
export declare function isFastPdfOutputSizeEligible(byteLength: number): boolean;
|
|
568
|
+
|
|
569
|
+
export declare function isFastPdfPageCountEligible(pageCount: number): boolean;
|
|
570
|
+
|
|
571
|
+
export declare function isFastPdfRequestSizeEligible(byteLength: number): boolean;
|
|
572
|
+
|
|
573
|
+
export declare function isFastPdfRowCountEligible(rowCount: number): boolean;
|
|
574
|
+
|
|
550
575
|
export declare function isNumericCanonicalFormat(format: unknown): format is NumericCanonicalFormat;
|
|
551
576
|
|
|
552
577
|
export declare function isPivotEmptyTupleAllowed(input: {
|
|
@@ -723,6 +748,8 @@ export declare function parseTemporalBucketValue(value: TemporalBucketValue, met
|
|
|
723
748
|
*/
|
|
724
749
|
export declare function parseWithSourceTimezone(dateString: string, sourceTimezone?: string): Date;
|
|
725
750
|
|
|
751
|
+
export declare const PDF_SAFETY_LIMIT_EXCEEDED: "PDF_SAFETY_LIMIT_EXCEEDED";
|
|
752
|
+
|
|
726
753
|
export declare interface PivotByColumn {
|
|
727
754
|
name: string;
|
|
728
755
|
alias: string;
|
|
@@ -1304,6 +1331,18 @@ declare type SemaphorSourceRef = {
|
|
|
1304
1331
|
|
|
1305
1332
|
declare type SemaphorTimeGrain = (typeof SEMAPHOR_TIME_GRAINS)[number];
|
|
1306
1333
|
|
|
1334
|
+
/**
|
|
1335
|
+
* Returns whether an aggregate group value starts a new visible group at its
|
|
1336
|
+
* hierarchy level. A nested value repeats only when its complete parent prefix
|
|
1337
|
+
* also repeats. Subtotals and grand totals are presentation boundaries.
|
|
1338
|
+
*/
|
|
1339
|
+
export declare function shouldPresentAggregateGroupValue(input: {
|
|
1340
|
+
row: Record<string, unknown>;
|
|
1341
|
+
previousRow?: Record<string, unknown>;
|
|
1342
|
+
context: AggregateTablePresentationContext;
|
|
1343
|
+
columnKey: string;
|
|
1344
|
+
}): boolean;
|
|
1345
|
+
|
|
1307
1346
|
export declare type SqlTemporalColumnClassification = {
|
|
1308
1347
|
status: 'empty';
|
|
1309
1348
|
} | {
|
|
@@ -1434,6 +1473,13 @@ export declare function validateCardExportPresentationSnapshot(input: {
|
|
|
1434
1473
|
useFormattedValues: boolean;
|
|
1435
1474
|
}): void;
|
|
1436
1475
|
|
|
1476
|
+
/** Validates an authored pattern without formatting or inventing a fallback. */
|
|
1477
|
+
export declare function validateRawTemporalPattern(input: {
|
|
1478
|
+
valueKind?: RawTemporalValueKind;
|
|
1479
|
+
dialect: RawTemporalPatternDialect;
|
|
1480
|
+
pattern: string;
|
|
1481
|
+
}): void;
|
|
1482
|
+
|
|
1437
1483
|
/**
|
|
1438
1484
|
* Validates descriptor exclusivity and datatype compatibility without
|
|
1439
1485
|
* inferring temporal meaning from a value or display label.
|
package/dist/types/main.d.ts
CHANGED
|
@@ -547,6 +547,8 @@ declare type BaseFilter = {
|
|
|
547
547
|
valueType: 'string' | 'number' | 'date' | 'boolean';
|
|
548
548
|
connectionType?: 'database' | 'api';
|
|
549
549
|
dataType?: string;
|
|
550
|
+
/** Exact database type retained across dashboard-to-query transport. */
|
|
551
|
+
nativeDataType?: string;
|
|
550
552
|
fieldMeta?: FilterFieldMeta;
|
|
551
553
|
semanticContext?: FilterSemanticContext;
|
|
552
554
|
/** Governed meaning for canonical grouped-temporal filter values. */
|
|
@@ -3671,6 +3673,8 @@ export declare interface Field {
|
|
|
3671
3673
|
sourceField?: string;
|
|
3672
3674
|
qualifiedFieldName: string;
|
|
3673
3675
|
dataType: string;
|
|
3676
|
+
/** Exact database type when dataType is normalized for analytics/UI use. */
|
|
3677
|
+
nativeDataType?: string;
|
|
3674
3678
|
description?: string;
|
|
3675
3679
|
qualifiedEntityName?: string;
|
|
3676
3680
|
dateFormat?: DateFormatValue;
|
|
@@ -3760,6 +3764,8 @@ declare type FilterDisplayMode = 'canvas' | 'toolbar' | 'inherit';
|
|
|
3760
3764
|
declare type FilterFieldMeta = Pick<Field, 'name' | 'qualifiedFieldName'> & Partial<Pick<Field, 'id' | 'qualifiedEntityName' | 'entityId' | 'dataType' | 'role' | 'fieldScope'>> & {
|
|
3761
3765
|
entityName?: Field['entityName'];
|
|
3762
3766
|
entityType?: string;
|
|
3767
|
+
/** Exact database type used by server-side predicate formatting. */
|
|
3768
|
+
nativeDataType?: string;
|
|
3763
3769
|
expression?: string;
|
|
3764
3770
|
calculatedFormula?: CalculatedFieldFormula;
|
|
3765
3771
|
};
|
|
@@ -5034,8 +5040,10 @@ export declare function pauseBriefing(apiServiceUrl: string, token: string, brie
|
|
|
5034
5040
|
briefing: BriefingDetail;
|
|
5035
5041
|
}>;
|
|
5036
5042
|
|
|
5037
|
-
declare type PersistedColumnSettings = Omit<Partial<ColumnSettings>, 'numberFormat'> & {
|
|
5043
|
+
declare type PersistedColumnSettings = Omit<Partial<ColumnSettings>, 'numberFormat' | 'dateFormat'> & {
|
|
5038
5044
|
numberFormat?: Partial<ColumnSettings['numberFormat']>;
|
|
5045
|
+
/** Sparse persisted date settings; conditional requirements are enforced by the serializer. */
|
|
5046
|
+
dateFormat?: Partial<ColumnSettings['dateFormat']>;
|
|
5039
5047
|
};
|
|
5040
5048
|
|
|
5041
5049
|
declare type PersistedColumnSettingsMap = Record<string, PersistedColumnSettings>;
|
|
@@ -6957,6 +6965,12 @@ export declare type TDashboard = {
|
|
|
6957
6965
|
export declare type TDataColumn = {
|
|
6958
6966
|
column_name: string;
|
|
6959
6967
|
data_type: string;
|
|
6968
|
+
/** Exact catalog type when the columns API can prove it independently. */
|
|
6969
|
+
nativeDataType?: string;
|
|
6970
|
+
/** @deprecated Use the API contract spelling `nativeDataType`. */
|
|
6971
|
+
native_data_type?: string;
|
|
6972
|
+
/** Whether `data_type` came from semantic metadata or physical introspection. */
|
|
6973
|
+
dataTypeProvenance?: 'semantic' | 'physical';
|
|
6960
6974
|
is_nullable?: string;
|
|
6961
6975
|
label?: string;
|
|
6962
6976
|
description?: string;
|
|
@@ -7182,6 +7196,8 @@ export declare type TFilter = {
|
|
|
7182
7196
|
title: string;
|
|
7183
7197
|
column: string;
|
|
7184
7198
|
dataType: string;
|
|
7199
|
+
/** Exact database type retained when dataType is a normalized UI category. */
|
|
7200
|
+
nativeDataType?: string;
|
|
7185
7201
|
table?: string;
|
|
7186
7202
|
database?: string;
|
|
7187
7203
|
qualifiedTableName?: string;
|
|
@@ -7327,6 +7343,8 @@ export declare type TInlineFilter = {
|
|
|
7327
7343
|
column: string;
|
|
7328
7344
|
title: string;
|
|
7329
7345
|
dataType: string;
|
|
7346
|
+
/** Exact database type retained when dataType is a normalized UI category. */
|
|
7347
|
+
nativeDataType?: string;
|
|
7330
7348
|
table: string;
|
|
7331
7349
|
database: string;
|
|
7332
7350
|
qualifiedTableName?: string;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared structured Fast PDF routing and safety policy.
|
|
3
|
+
*
|
|
4
|
+
* These values are product policy, not deployment configuration. Keep this
|
|
5
|
+
* module React-free so browser, app, and renderer adapters can enforce the
|
|
6
|
+
* same limits at their trust boundaries.
|
|
7
|
+
*/
|
|
8
|
+
export declare const FAST_PDF_POLICY: Readonly<{
|
|
9
|
+
maxRows: 5000;
|
|
10
|
+
maxRequestBytes: 2621440;
|
|
11
|
+
maxPages: 100;
|
|
12
|
+
maxOutputBytes: 52428800;
|
|
13
|
+
}>;
|
|
14
|
+
|
|
15
|
+
/** Exact UTF-8 bytes used by the structured POST body. */
|
|
16
|
+
export declare function getUtf8ByteLength(value: string): number;
|
|
17
|
+
|
|
18
|
+
export declare function isFastPdfOutputSizeEligible(byteLength: number): boolean;
|
|
19
|
+
|
|
20
|
+
export declare function isFastPdfPageCountEligible(pageCount: number): boolean;
|
|
21
|
+
|
|
22
|
+
export declare function isFastPdfRequestSizeEligible(byteLength: number): boolean;
|
|
23
|
+
|
|
24
|
+
export declare function isFastPdfRowCountEligible(rowCount: number): boolean;
|
|
25
|
+
|
|
26
|
+
export declare const PDF_SAFETY_LIMIT_EXCEEDED: "PDF_SAFETY_LIMIT_EXCEEDED";
|
|
27
|
+
|
|
28
|
+
export { }
|
package/dist/types/shared.d.ts
CHANGED
|
@@ -62,6 +62,8 @@ declare type BaseFilter = {
|
|
|
62
62
|
valueType: 'string' | 'number' | 'date' | 'boolean';
|
|
63
63
|
connectionType?: 'database' | 'api';
|
|
64
64
|
dataType?: string;
|
|
65
|
+
/** Exact database type retained across dashboard-to-query transport. */
|
|
66
|
+
nativeDataType?: string;
|
|
65
67
|
fieldMeta?: FilterFieldMeta;
|
|
66
68
|
semanticContext?: FilterSemanticContext;
|
|
67
69
|
/** Governed meaning for canonical grouped-temporal filter values. */
|
|
@@ -1179,6 +1181,8 @@ declare interface Field {
|
|
|
1179
1181
|
sourceField?: string;
|
|
1180
1182
|
qualifiedFieldName: string;
|
|
1181
1183
|
dataType: string;
|
|
1184
|
+
/** Exact database type when dataType is normalized for analytics/UI use. */
|
|
1185
|
+
nativeDataType?: string;
|
|
1182
1186
|
description?: string;
|
|
1183
1187
|
qualifiedEntityName?: string;
|
|
1184
1188
|
dateFormat?: DateFormatValue;
|
|
@@ -1268,6 +1272,8 @@ declare type FilterDisplayMode = 'canvas' | 'toolbar' | 'inherit';
|
|
|
1268
1272
|
declare type FilterFieldMeta = Pick<Field, 'name' | 'qualifiedFieldName'> & Partial<Pick<Field, 'id' | 'qualifiedEntityName' | 'entityId' | 'dataType' | 'role' | 'fieldScope'>> & {
|
|
1269
1273
|
entityName?: Field['entityName'];
|
|
1270
1274
|
entityType?: string;
|
|
1275
|
+
/** Exact database type used by server-side predicate formatting. */
|
|
1276
|
+
nativeDataType?: string;
|
|
1271
1277
|
expression?: string;
|
|
1272
1278
|
calculatedFormula?: CalculatedFieldFormula;
|
|
1273
1279
|
};
|
|
@@ -1712,8 +1718,10 @@ declare interface PaginationConfig {
|
|
|
1712
1718
|
pageSize: number;
|
|
1713
1719
|
}
|
|
1714
1720
|
|
|
1715
|
-
declare type PersistedColumnSettings = Omit<Partial<ColumnSettings>, 'numberFormat'> & {
|
|
1721
|
+
declare type PersistedColumnSettings = Omit<Partial<ColumnSettings>, 'numberFormat' | 'dateFormat'> & {
|
|
1716
1722
|
numberFormat?: Partial<ColumnSettings['numberFormat']>;
|
|
1723
|
+
/** Sparse persisted date settings; conditional requirements are enforced by the serializer. */
|
|
1724
|
+
dateFormat?: Partial<ColumnSettings['dateFormat']>;
|
|
1717
1725
|
};
|
|
1718
1726
|
|
|
1719
1727
|
declare type PersistedColumnSettingsMap = Record<string, PersistedColumnSettings>;
|
|
@@ -2861,6 +2869,8 @@ declare type TFilter = {
|
|
|
2861
2869
|
title: string;
|
|
2862
2870
|
column: string;
|
|
2863
2871
|
dataType: string;
|
|
2872
|
+
/** Exact database type retained when dataType is a normalized UI category. */
|
|
2873
|
+
nativeDataType?: string;
|
|
2864
2874
|
table?: string;
|
|
2865
2875
|
database?: string;
|
|
2866
2876
|
qualifiedTableName?: string;
|
|
@@ -2998,6 +3008,8 @@ declare type TInlineFilter = {
|
|
|
2998
3008
|
column: string;
|
|
2999
3009
|
title: string;
|
|
3000
3010
|
dataType: string;
|
|
3011
|
+
/** Exact database type retained when dataType is a normalized UI category. */
|
|
3012
|
+
nativeDataType?: string;
|
|
3001
3013
|
table: string;
|
|
3002
3014
|
database: string;
|
|
3003
3015
|
qualifiedTableName?: string;
|
|
@@ -136,6 +136,8 @@ declare type BaseFilter = {
|
|
|
136
136
|
valueType: 'string' | 'number' | 'date' | 'boolean';
|
|
137
137
|
connectionType?: 'database' | 'api';
|
|
138
138
|
dataType?: string;
|
|
139
|
+
/** Exact database type retained across dashboard-to-query transport. */
|
|
140
|
+
nativeDataType?: string;
|
|
139
141
|
fieldMeta?: FilterFieldMeta;
|
|
140
142
|
semanticContext?: FilterSemanticContext;
|
|
141
143
|
/** Governed meaning for canonical grouped-temporal filter values. */
|
|
@@ -1551,6 +1553,8 @@ declare interface Field {
|
|
|
1551
1553
|
sourceField?: string;
|
|
1552
1554
|
qualifiedFieldName: string;
|
|
1553
1555
|
dataType: string;
|
|
1556
|
+
/** Exact database type when dataType is normalized for analytics/UI use. */
|
|
1557
|
+
nativeDataType?: string;
|
|
1554
1558
|
description?: string;
|
|
1555
1559
|
qualifiedEntityName?: string;
|
|
1556
1560
|
dateFormat?: DateFormatValue;
|
|
@@ -1640,6 +1644,8 @@ declare type FilterDisplayMode = 'canvas' | 'toolbar' | 'inherit';
|
|
|
1640
1644
|
declare type FilterFieldMeta = Pick<Field, 'name' | 'qualifiedFieldName'> & Partial<Pick<Field, 'id' | 'qualifiedEntityName' | 'entityId' | 'dataType' | 'role' | 'fieldScope'>> & {
|
|
1641
1645
|
entityName?: Field['entityName'];
|
|
1642
1646
|
entityType?: string;
|
|
1647
|
+
/** Exact database type used by server-side predicate formatting. */
|
|
1648
|
+
nativeDataType?: string;
|
|
1643
1649
|
expression?: string;
|
|
1644
1650
|
calculatedFormula?: CalculatedFieldFormula;
|
|
1645
1651
|
};
|
|
@@ -2228,8 +2234,10 @@ declare type Params = {
|
|
|
2228
2234
|
[key: string]: string | number | string[] | number[];
|
|
2229
2235
|
};
|
|
2230
2236
|
|
|
2231
|
-
declare type PersistedColumnSettings = Omit<Partial<ColumnSettings>, 'numberFormat'> & {
|
|
2237
|
+
declare type PersistedColumnSettings = Omit<Partial<ColumnSettings>, 'numberFormat' | 'dateFormat'> & {
|
|
2232
2238
|
numberFormat?: Partial<ColumnSettings['numberFormat']>;
|
|
2239
|
+
/** Sparse persisted date settings; conditional requirements are enforced by the serializer. */
|
|
2240
|
+
dateFormat?: Partial<ColumnSettings['dateFormat']>;
|
|
2233
2241
|
};
|
|
2234
2242
|
|
|
2235
2243
|
declare type PersistedColumnSettingsMap = Record<string, PersistedColumnSettings>;
|
|
@@ -3491,6 +3499,12 @@ export declare type TDashboard = {
|
|
|
3491
3499
|
export declare type TDataColumn = {
|
|
3492
3500
|
column_name: string;
|
|
3493
3501
|
data_type: string;
|
|
3502
|
+
/** Exact catalog type when the columns API can prove it independently. */
|
|
3503
|
+
nativeDataType?: string;
|
|
3504
|
+
/** @deprecated Use the API contract spelling `nativeDataType`. */
|
|
3505
|
+
native_data_type?: string;
|
|
3506
|
+
/** Whether `data_type` came from semantic metadata or physical introspection. */
|
|
3507
|
+
dataTypeProvenance?: 'semantic' | 'physical';
|
|
3494
3508
|
is_nullable?: string;
|
|
3495
3509
|
label?: string;
|
|
3496
3510
|
description?: string;
|
|
@@ -3714,6 +3728,8 @@ declare type TFilter = {
|
|
|
3714
3728
|
title: string;
|
|
3715
3729
|
column: string;
|
|
3716
3730
|
dataType: string;
|
|
3731
|
+
/** Exact database type retained when dataType is a normalized UI category. */
|
|
3732
|
+
nativeDataType?: string;
|
|
3717
3733
|
table?: string;
|
|
3718
3734
|
database?: string;
|
|
3719
3735
|
qualifiedTableName?: string;
|
|
@@ -3859,6 +3875,8 @@ export declare type TInlineFilter = {
|
|
|
3859
3875
|
column: string;
|
|
3860
3876
|
title: string;
|
|
3861
3877
|
dataType: string;
|
|
3878
|
+
/** Exact database type retained when dataType is a normalized UI category. */
|
|
3879
|
+
nativeDataType?: string;
|
|
3862
3880
|
table: string;
|
|
3863
3881
|
database: string;
|
|
3864
3882
|
qualifiedTableName?: string;
|
package/dist/types/types.d.ts
CHANGED
|
@@ -145,6 +145,8 @@ declare type BaseFilter = {
|
|
|
145
145
|
valueType: 'string' | 'number' | 'date' | 'boolean';
|
|
146
146
|
connectionType?: 'database' | 'api';
|
|
147
147
|
dataType?: string;
|
|
148
|
+
/** Exact database type retained across dashboard-to-query transport. */
|
|
149
|
+
nativeDataType?: string;
|
|
148
150
|
fieldMeta?: FilterFieldMeta;
|
|
149
151
|
semanticContext?: FilterSemanticContext;
|
|
150
152
|
/** Governed meaning for canonical grouped-temporal filter values. */
|
|
@@ -2133,6 +2135,8 @@ export declare interface Field {
|
|
|
2133
2135
|
sourceField?: string;
|
|
2134
2136
|
qualifiedFieldName: string;
|
|
2135
2137
|
dataType: string;
|
|
2138
|
+
/** Exact database type when dataType is normalized for analytics/UI use. */
|
|
2139
|
+
nativeDataType?: string;
|
|
2136
2140
|
description?: string;
|
|
2137
2141
|
qualifiedEntityName?: string;
|
|
2138
2142
|
dateFormat?: DateFormatValue;
|
|
@@ -2222,6 +2226,8 @@ declare type FilterDisplayMode = 'canvas' | 'toolbar' | 'inherit';
|
|
|
2222
2226
|
export declare type FilterFieldMeta = Pick<Field, 'name' | 'qualifiedFieldName'> & Partial<Pick<Field, 'id' | 'qualifiedEntityName' | 'entityId' | 'dataType' | 'role' | 'fieldScope'>> & {
|
|
2223
2227
|
entityName?: Field['entityName'];
|
|
2224
2228
|
entityType?: string;
|
|
2229
|
+
/** Exact database type used by server-side predicate formatting. */
|
|
2230
|
+
nativeDataType?: string;
|
|
2225
2231
|
expression?: string;
|
|
2226
2232
|
calculatedFormula?: CalculatedFieldFormula;
|
|
2227
2233
|
};
|
|
@@ -3129,8 +3135,10 @@ declare type Params = {
|
|
|
3129
3135
|
[key: string]: string | number | string[] | number[];
|
|
3130
3136
|
};
|
|
3131
3137
|
|
|
3132
|
-
declare type PersistedColumnSettings = Omit<Partial<ColumnSettings>, 'numberFormat'> & {
|
|
3138
|
+
declare type PersistedColumnSettings = Omit<Partial<ColumnSettings>, 'numberFormat' | 'dateFormat'> & {
|
|
3133
3139
|
numberFormat?: Partial<ColumnSettings['numberFormat']>;
|
|
3140
|
+
/** Sparse persisted date settings; conditional requirements are enforced by the serializer. */
|
|
3141
|
+
dateFormat?: Partial<ColumnSettings['dateFormat']>;
|
|
3134
3142
|
};
|
|
3135
3143
|
|
|
3136
3144
|
declare type PersistedColumnSettingsMap = Record<string, PersistedColumnSettings>;
|
|
@@ -4681,6 +4689,12 @@ export declare type TDashboard = {
|
|
|
4681
4689
|
export declare type TDataColumn = {
|
|
4682
4690
|
column_name: string;
|
|
4683
4691
|
data_type: string;
|
|
4692
|
+
/** Exact catalog type when the columns API can prove it independently. */
|
|
4693
|
+
nativeDataType?: string;
|
|
4694
|
+
/** @deprecated Use the API contract spelling `nativeDataType`. */
|
|
4695
|
+
native_data_type?: string;
|
|
4696
|
+
/** Whether `data_type` came from semantic metadata or physical introspection. */
|
|
4697
|
+
dataTypeProvenance?: 'semantic' | 'physical';
|
|
4684
4698
|
is_nullable?: string;
|
|
4685
4699
|
label?: string;
|
|
4686
4700
|
description?: string;
|
|
@@ -4906,6 +4920,8 @@ export declare type TFilter = {
|
|
|
4906
4920
|
title: string;
|
|
4907
4921
|
column: string;
|
|
4908
4922
|
dataType: string;
|
|
4923
|
+
/** Exact database type retained when dataType is a normalized UI category. */
|
|
4924
|
+
nativeDataType?: string;
|
|
4909
4925
|
table?: string;
|
|
4910
4926
|
database?: string;
|
|
4911
4927
|
qualifiedTableName?: string;
|
|
@@ -5051,6 +5067,8 @@ export declare type TInlineFilter = {
|
|
|
5051
5067
|
column: string;
|
|
5052
5068
|
title: string;
|
|
5053
5069
|
dataType: string;
|
|
5070
|
+
/** Exact database type retained when dataType is a normalized UI category. */
|
|
5071
|
+
nativeDataType?: string;
|
|
5054
5072
|
table: string;
|
|
5055
5073
|
database: string;
|
|
5056
5074
|
qualifiedTableName?: string;
|
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"email": "support@semaphor.cloud"
|
|
6
6
|
},
|
|
7
7
|
"license": "MIT",
|
|
8
|
-
"version": "0.1.
|
|
8
|
+
"version": "0.1.476",
|
|
9
9
|
"description": "Fully interactive and customizable dashboards for your apps.",
|
|
10
10
|
"keywords": [
|
|
11
11
|
"react",
|
|
@@ -127,6 +127,11 @@
|
|
|
127
127
|
"import": "./dist/format-utils/index.js",
|
|
128
128
|
"require": "./dist/format-utils/index.cjs"
|
|
129
129
|
},
|
|
130
|
+
"./format-utils/pdf-export-policy": {
|
|
131
|
+
"types": "./dist/types/pdf-export-policy.d.ts",
|
|
132
|
+
"import": "./dist/pdf-export-policy/index.js",
|
|
133
|
+
"require": "./dist/pdf-export-policy/index.cjs"
|
|
134
|
+
},
|
|
130
135
|
"./value-format-preferences": {
|
|
131
136
|
"types": "./dist/types/value-format-preferences.d.ts",
|
|
132
137
|
"import": "./dist/value-format-preferences/index.js",
|