react-semaphor 0.1.537 → 0.1.539
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.js +352 -341
- package/dist/assistant-context/index.js +10 -0
- package/dist/assistant-protocol/index.js +104 -0
- package/dist/brand-studio/index.js +35 -31
- package/dist/briefings/index.js +46 -45
- package/dist/chunks/_commonjsHelpers-BkfeUUK-.js +28 -0
- package/dist/chunks/add-to-dashboard-CxtTfISD.js +56 -0
- package/dist/chunks/aggregate-table-row-presentation-BjK9YfMI.js +979 -0
- package/dist/chunks/analytics-base-schemas-BFAoRlkU.js +472 -0
- package/dist/chunks/apply-dashboard-operations-C-iahGka.js +402 -0
- package/dist/chunks/assistant-chat-DgiSuFT4.js +8083 -0
- package/dist/chunks/availability-Bp5Gfu1I.js +44 -0
- package/dist/chunks/{bookmark-state-B-I9BDD0.js → bookmark-state-k7y5SNGf.js} +9 -9
- package/dist/chunks/{braces-8TRlDwDw.js → braces-o9UiRQes.js} +1 -1
- package/dist/chunks/calculated-field-identity-DcBS2NPP.js +2161 -0
- package/dist/chunks/calendar-day-equality-Bpl15IBo.js +487 -0
- package/dist/chunks/class-utils-Df1OVOT1.js +2315 -0
- package/dist/chunks/{field-dependencies-CpRUwr9J.js → common-types-CUf03Htv.js} +65 -58
- package/dist/chunks/context-HD9usB1P.js +349 -0
- package/dist/chunks/conversation-sQiWYUOb.js +16 -0
- package/dist/chunks/csv-utils-GUfKyT1J.js +56 -0
- package/dist/chunks/custom-visual-inputs-BrUOIwln.js +3288 -0
- package/dist/chunks/{dashboard-briefing-launcher-A2uVpHCp.js → dashboard-briefing-launcher-Bl3gCeBR.js} +580 -556
- package/dist/chunks/{dashboard-controls-DxTuVis_.js → dashboard-controls-0EX0HiJt.js} +683 -686
- package/dist/chunks/{common-types-g7yS12Cg.js → dashboard-filter-value-compatibility-D95O4nd7.js} +18 -24
- package/dist/chunks/dashboard-json-6X_2BDiL.js +69 -0
- package/dist/chunks/{dashboard-BPJo-Fnd.js → dashboard-y5BwcvzT.js} +1 -1
- package/dist/chunks/document-dashboard-inputs-BrYYlRVo.js +10678 -0
- package/dist/chunks/document-sheet-utils-C1eEldxs.js +1076 -0
- package/dist/chunks/{edit-dashboard-visual-ByV0OwSp.js → edit-dashboard-visual-Bzchfgga.js} +4744 -4746
- package/dist/chunks/editor-draft-sync-BN5qYHPF.js +15 -0
- package/dist/chunks/filter-value-text-BhWugPWE.js +163 -0
- package/dist/chunks/index-CqMiAkay.js +3164 -0
- package/dist/chunks/index-CuHybtft.js +51 -0
- package/dist/chunks/layout-grid-Bgzth8vd.js +16 -0
- package/dist/chunks/{matrix-analytical-definition-CgBTD6H8.js → matrix-analytical-definition-bcprSe4u.js} +1 -1
- package/dist/chunks/{matrix-card-CAdizkUl.js → matrix-card-CJn1hB5V.js} +13 -12
- package/dist/chunks/matrix-definition-DQDI2okF.js +206 -0
- package/dist/chunks/{matrix-formatter-DJCk8Znf.js → matrix-formatter-DQ8avoIQ.js} +648 -457
- package/dist/chunks/matrix-member-presentation-BNPSDKBG.js +105 -0
- package/dist/chunks/{matrix-operation-contract-BKupLHXL.js → matrix-operation-contract-B8PBF1Gd.js} +134 -133
- package/dist/chunks/{metric-comparison-BKHyvnAy.js → metric-comparison-CojWeLqx.js} +1 -1
- package/dist/chunks/{palette-Cp1hqZtm.js → palette-D10o_yYX.js} +1 -1
- package/dist/chunks/pivot-header-presentation-MkcKnjn3.js +42 -0
- package/dist/chunks/{pivot-result-identity-Bs4tLtLo.js → pivot-result-identity-D6hhcRXi.js} +1 -1
- package/dist/chunks/pivot-result-lifecycle-8qCDmpKc.js +804 -0
- package/dist/chunks/raw-temporal-D61lr48Y.js +1464 -0
- package/dist/chunks/{raw-temporal-contract-mLFS-9wk.js → raw-temporal-contract-C51YG48G.js} +1 -1
- package/dist/chunks/report-preferences-dialog-CWhSbc5_.js +1808 -0
- package/dist/chunks/{report-runtime-context-CG_I0PPW.js → report-runtime-context-B984Nq1E.js} +8 -7
- package/dist/chunks/save-CfJpQQ68.js +21 -0
- package/dist/chunks/saved-dashboard-context-Dqve2jlB.js +566 -0
- package/dist/chunks/{selection-reducer-CiDEtmAq.js → selection-reducer-vKIb_jS6.js} +2 -2
- package/dist/chunks/{semaphor-ready-indicator-CHu1L-lo.js → semaphor-ready-indicator-ldcwmLoY.js} +65803 -62954
- package/dist/chunks/{shelf-drop-preview-context-i-H6DFyU.js → shelf-drop-preview-context-BWxunXTq.js} +199 -196
- package/dist/chunks/{source-entity-resolution-C-oNyYMp.js → source-entity-resolution-CVA1a85c.js} +8 -8
- package/dist/chunks/switch-CvItuC1Q.js +8199 -0
- package/dist/chunks/{temporal-bucket-DlFuhCnT.js → temporal-bucket-D8JF7zKz.js} +86 -71
- package/dist/chunks/{temporal-bucket-contract-D2OuaVZ7.js → temporal-bucket-contract-DaOajRC7.js} +1 -1
- package/dist/chunks/{token-types-DtSJOUjh.js → token-types-bxUxXDX2.js} +1 -1
- package/dist/chunks/{upload-CAIpsti1.js → upload-BFX7apKV.js} +1 -1
- package/dist/chunks/{use-create-flow-overlay-state-Bj63WwHc.js → use-create-flow-overlay-state-RHgzVfcz.js} +331 -339
- package/dist/chunks/{validators-DMSH81OM.js → validators-Ej1DdCXa.js} +1050 -1510
- package/dist/chunks/visual-choice-JiJ-_3bi.js +204 -0
- package/dist/chunks/x-4f5U2XwU.js +100 -0
- package/dist/chunks/{zoned-wall-clock-1qlWCE20.js → zoned-wall-clock-MulfA26h.js} +2 -2
- package/dist/dashboard/index.js +2 -2
- package/dist/dashboard-authoring/index.js +823 -661
- package/dist/data-app-sdk/index.js +32 -30
- package/dist/data-app-sdk-adapters/index.js +23 -22
- package/dist/data-app-sdk-validation/index.js +23 -22
- package/dist/format-utils/index.js +173 -168
- package/dist/index.js +267 -258
- package/dist/layouts/index.js +236 -24
- 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/assistant-context.d.ts +2 -0
- package/dist/types/assistant-protocol.d.ts +2 -0
- package/dist/types/components/assistant/assistant-entry-points.d.ts +18 -0
- package/dist/types/components/assistant/assistant-provider.d.ts +19 -0
- package/dist/types/components/assistant/assistant-store.d.ts +52 -0
- package/dist/types/components/assistant/use-assistant.d.ts +38 -0
- package/dist/types/components/index.d.ts +5 -1
- package/dist/types/components/surfboard/filter/types.d.ts +5 -2
- package/dist/types/index.js +50 -51
- package/dist/types/lib/api/invalidate-token.d.ts +7 -0
- package/dist/types/lib/charts/cartesian-fields.d.ts +64 -0
- package/dist/types/lib/charts/types.d.ts +7 -0
- package/dist/types/lib/dashboard-inputs/dashboard-filter-mapping-storage-transition.d.ts +14 -2
- package/dist/types/lib/dashboard-inputs/dashboard-input-target-context.d.ts +5 -6
- package/dist/types/lib/dashboard-inputs/dashboard-input-values.d.ts +8 -3
- package/dist/types/lib/dashboard-inputs/resolve-dashboard-input-context.d.ts +11 -6
- package/dist/types/lib/dashboard-pagination/dashboard-card-pagination.d.ts +7 -0
- package/dist/types/lib/dashboard-viewer/compatibility-input-storage.d.ts +79 -0
- package/dist/types/lib/dashboard-viewer/viewer-state.d.ts +3 -2
- package/dist/types/lib/document/document-table-data-policy.d.ts +15 -0
- package/dist/types/lib/filter-values/filter-mode.d.ts +22 -0
- package/dist/types/lib/hooks/use-calendar-context.d.ts +5 -0
- package/dist/types/lib/hooks/use-filter-option-browse.d.ts +5 -0
- package/dist/types/lib/hooks/use-text-filter.d.ts +9 -0
- package/dist/types/lib/print/print-inputs.d.ts +4 -2
- package/dist/types/lib/query-context/build-card-query-context.d.ts +12 -4
- package/dist/types/lib/query-context/build-dashboard-execution-snapshot.d.ts +93 -0
- package/dist/types/lib/query-context/card-server-request.d.ts +72 -0
- package/dist/types/lib/query-context/compile-dashboard-card-filters.d.ts +7 -0
- package/dist/types/lib/query-context/describe-card-execution-snapshot.d.ts +56 -0
- package/dist/types/lib/query-context/document-section-card-query.d.ts +45 -0
- package/dist/types/lib/query-context/resolve-runtime-card-filters.d.ts +17 -2
- package/dist/types/lib/stores/dashboard-store.d.ts +34 -11
- package/dist/types/lib/stores/editor-store.d.ts +4 -2
- package/dist/types/lib/types/token-types.d.ts +11 -0
- package/dist/types/lib/utils/card-type-change.d.ts +30 -0
- package/dist/types/lib/utils/comparison-window-caption.d.ts +12 -0
- package/dist/types/lib/utils/filter-default-value-utils.d.ts +13 -2
- package/dist/types/shared/analytics-protocol/applied-constraints.d.ts +74 -0
- package/dist/types/shared/analytics-protocol/contracts.d.ts +3 -0
- package/dist/types/shared/analytics-protocol/filter-field-ownership.d.ts +43 -0
- package/dist/types/shared/analytics-protocol/index.d.ts +3 -0
- package/dist/types/shared/analytics-protocol/matrix-window-contract.d.ts +1 -1
- package/dist/types/shared/analytics-protocol/visual-choice.d.ts +75 -0
- package/dist/types/shared/assistant-context/index.d.ts +9 -0
- package/dist/types/shared/assistant-context/project-context.d.ts +55 -0
- package/dist/types/shared/assistant-context/saved-dashboard-context.d.ts +130 -0
- package/dist/types/shared/assistant-protocol/add-to-dashboard.d.ts +17 -0
- package/dist/types/shared/assistant-protocol/artifact.d.ts +63 -0
- package/dist/types/shared/assistant-protocol/availability.d.ts +39 -0
- package/dist/types/shared/assistant-protocol/context.d.ts +952 -0
- package/dist/types/shared/assistant-protocol/conversation.d.ts +38 -0
- package/dist/types/shared/assistant-protocol/index.d.ts +16 -0
- package/dist/types/shared/assistant-protocol/limits.d.ts +53 -0
- package/dist/types/shared/assistant-protocol/parts.d.ts +140 -0
- package/dist/types/shared/assistant-protocol/request.d.ts +77 -0
- package/dist/types/shared/assistant-protocol/sources.d.ts +27 -0
- package/dist/types/shared/assistant-protocol/token-config.d.ts +32 -0
- package/dist/types/shared/assistant-protocol/transcript.d.ts +40 -0
- package/dist/types/shared/dashboard-authoring/card-query-request.d.ts +112 -0
- package/dist/types/shared/dashboard-authoring/control-execution-contract.d.ts +1794 -0
- package/dist/types/shared/dashboard-authoring/index.d.ts +5 -0
- package/dist/types/shared/dashboard-authoring/new-card.d.ts +10 -0
- package/dist/types/shared/dashboard-authoring/operations/apply-dashboard-operations.d.ts +40 -0
- package/dist/types/shared/dashboard-authoring/resolved-primary-date-field-validation.d.ts +16 -0
- package/dist/types/shared/format-utils/filter-detail.d.ts +70 -0
- package/dist/types/shared/format-utils/filter-value-text.d.ts +15 -0
- package/dist/types/shared/format-utils/index.d.ts +3 -0
- package/dist/types/shared/format-utils/raw-temporal.d.ts +7 -0
- package/dist/types/shared/format-utils/temporal-bucket.d.ts +7 -0
- package/dist/types/shared/layouts/frame-layouts.d.ts +23 -0
- package/dist/types/shared/layouts/index.d.ts +1 -0
- package/package.json +12 -2
- package/dist/chunks/calculated-field-identity-BptYhyOP.js +0 -1326
- package/dist/chunks/calendar-day-equality-BRjN1S9h.js +0 -383
- package/dist/chunks/card-config-utils-BOM1dxCk.js +0 -1150
- package/dist/chunks/constants-DNWVy8Y3.js +0 -9
- package/dist/chunks/dashboard-json-B1dEQu98.js +0 -65
- package/dist/chunks/field-aggregations-CoLzYHeL.js +0 -1229
- package/dist/chunks/index-DTcTAGGM.js +0 -4101
- package/dist/chunks/matrix-continuation-C4sRcjZU.js +0 -72
- package/dist/chunks/matrix-control-sources-DTqcA2_L.js +0 -636
- package/dist/chunks/matrix-definition-D9iShKZI.js +0 -87
- package/dist/chunks/matrix-member-presentation-Ct8GuxHt.js +0 -209
- package/dist/chunks/numeric-presentation-CWu3gunq.js +0 -537
- package/dist/chunks/pivot-header-presentation-CHs2GFrM.js +0 -753
- package/dist/chunks/pivot-result-lifecycle-DQz_gjGu.js +0 -789
- package/dist/chunks/raw-temporal-iMXRK-Qz.js +0 -930
- package/dist/chunks/report-preferences-dialog-DXPjteCU.js +0 -1623
- package/dist/chunks/save-kO6cIaob.js +0 -34
- package/dist/chunks/semantic-format-DiqYeKwU.js +0 -192
- package/dist/chunks/switch-DO8a0EfJ.js +0 -25004
- package/dist/chunks/temporal-input-presentation-BD7YNUzu.js +0 -195
- package/dist/chunks/x-CXDkqdur.js +0 -149
- package/dist/types/lib/class-utils.d.ts +0 -2
- package/dist/types/lib/document/document-input-runtime.d.ts +0 -26
- package/dist/types/lib/utils.d.ts +0 -51
|
@@ -25,9 +25,14 @@ export * from './matrix-definition.js';
|
|
|
25
25
|
export * from './matrix-authoring.js';
|
|
26
26
|
export * from './field-aggregations.js';
|
|
27
27
|
export * from './control-value-resolution.js';
|
|
28
|
+
export * from './control-execution-contract.js';
|
|
29
|
+
export * from './resolved-primary-date-field-validation.js';
|
|
30
|
+
export * from './card-query-request.js';
|
|
28
31
|
export * from './calculated-field-identity.js';
|
|
29
32
|
export * from './calculated-field-placement.js';
|
|
30
33
|
export * from './matrix-control-resolution.js';
|
|
31
34
|
export { readMatrixCardConfig, matrixDefinitionFields, matrixDefinitionSources } from './matrix-card.js';
|
|
32
35
|
export { matrixCatalogSources, matrixExecutionSources } from './matrix-control-sources.js';
|
|
33
36
|
export * from './dashboard-option-dependencies.js';
|
|
37
|
+
export * from './new-card.js';
|
|
38
|
+
export * from './operations/apply-dashboard-operations.js';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { TCard } from '../../lib/types/common-types.js';
|
|
2
|
+
/**
|
|
3
|
+
* The type a card starts as before anyone picks one: a table shows any mix of
|
|
4
|
+
* fields, where a chart needs a specific shape (P4-11). Clear returns a card
|
|
5
|
+
* to it. Saved cards keep their own type.
|
|
6
|
+
*/
|
|
7
|
+
export declare const NEW_CARD_TYPE = "table";
|
|
8
|
+
export type NewCardInput = Pick<TCard, 'id' | 'title'> & Partial<Pick<TCard, 'description' | 'tabTitle' | 'connectionId' | 'dataSource' | 'preferences'>>;
|
|
9
|
+
/** The one assembly of an empty card; callers pass their differences in. */
|
|
10
|
+
export declare function createNewCard({ preferences, ...input }: NewCardInput): TCard;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { TDashboard, TFrame } from '../../../lib/types/common-types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Edits to a dashboard as operations on one pure reducer (analytics agent
|
|
4
|
+
* Plan 1, AG-D14, Phase 7a). Every writer of these edits calls it: the
|
|
5
|
+
* store's actions in the browser, and later an API or MCP edit on the
|
|
6
|
+
* server. Callers that differ pass their differences in (placement, ids);
|
|
7
|
+
* none keeps its own copy of the edit.
|
|
8
|
+
*/
|
|
9
|
+
/** Where a new frame goes on its sheet: first, last, or right after a frame and beside it. */
|
|
10
|
+
export type DashboardFramePlacement = 'start' | 'end' | {
|
|
11
|
+
beside: string;
|
|
12
|
+
};
|
|
13
|
+
export type DashboardOperation = {
|
|
14
|
+
op: 'frame.add';
|
|
15
|
+
sheetId: string;
|
|
16
|
+
/** The frame with its cards, ids included. */
|
|
17
|
+
frame: TFrame;
|
|
18
|
+
/** Default `end`. */
|
|
19
|
+
placement?: DashboardFramePlacement;
|
|
20
|
+
};
|
|
21
|
+
export type DashboardOperationFailureCode = 'sheet_not_found'
|
|
22
|
+
/** A document sheet places cards through its document, not its grid. */
|
|
23
|
+
| 'sheet_not_a_grid' | 'frame_id_taken';
|
|
24
|
+
export type DashboardOperationResult = {
|
|
25
|
+
ok: true;
|
|
26
|
+
dashboard: TDashboard;
|
|
27
|
+
} | {
|
|
28
|
+
ok: false;
|
|
29
|
+
failedAt: {
|
|
30
|
+
index: number;
|
|
31
|
+
op: DashboardOperation['op'];
|
|
32
|
+
code: DashboardOperationFailureCode;
|
|
33
|
+
message: string;
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* Applies the operations in order, all or nothing. Never changes its input:
|
|
38
|
+
* the result shares every sheet it did not touch.
|
|
39
|
+
*/
|
|
40
|
+
export declare function applyDashboardOperations(dashboard: TDashboard, operations: DashboardOperation[]): DashboardOperationResult;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The shape check of a request's resolved primary date field (the semantic
|
|
3
|
+
* model's primary date the card query assembly sends). One owner for the
|
|
4
|
+
* query route, CSV export and the card replay parser.
|
|
5
|
+
*/
|
|
6
|
+
export type ResolvedPrimaryDateFieldIssue = {
|
|
7
|
+
path: string;
|
|
8
|
+
message: string;
|
|
9
|
+
};
|
|
10
|
+
export declare function validateResolvedPrimaryDateFieldShape(value: unknown): {
|
|
11
|
+
ok: true;
|
|
12
|
+
} | {
|
|
13
|
+
ok: false;
|
|
14
|
+
issues: ResolvedPrimaryDateFieldIssue[];
|
|
15
|
+
};
|
|
16
|
+
export declare function formatResolvedPrimaryDateFieldIssues(issues: ResolvedPrimaryDateFieldIssue[]): string;
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { Operator } from '../../lib/types/explorer-types.js';
|
|
2
|
+
import { TemporalBucketMetadata } from '../analytics-protocol/contracts.js';
|
|
3
|
+
import { RelativeDateFilter } from '../analytics-protocol/relative-date-filter.js';
|
|
4
|
+
/**
|
|
5
|
+
* Filter conditions in full detail, for readers that restate a condition
|
|
6
|
+
* rather than glance at it (analytics agent Plan 1, D3a-4): the one renderer
|
|
7
|
+
* for a card's filters and a sheet's inputs alike. Every operator has its
|
|
8
|
+
* words; literals keep their type; a temporal literal is kept as written and
|
|
9
|
+
* never read in this machine's time zone; instants that span whole days read
|
|
10
|
+
* as dates with the zone named; a relative window carries its definition and
|
|
11
|
+
* a bucketed value its calendar. The compact filter line keeps its own
|
|
12
|
+
* localized wording. Pure, React-free.
|
|
13
|
+
*/
|
|
14
|
+
/** How a condition's values read. */
|
|
15
|
+
export type FilterLiteralReading = {
|
|
16
|
+
kind: 'plain';
|
|
17
|
+
} | {
|
|
18
|
+
kind: 'temporal';
|
|
19
|
+
}
|
|
20
|
+
/** Canonical bucket coordinates in the bucket's governed calendar. */
|
|
21
|
+
| {
|
|
22
|
+
kind: 'bucket';
|
|
23
|
+
bucket: TemporalBucketMetadata;
|
|
24
|
+
};
|
|
25
|
+
export declare const PLAIN_LITERALS: FilterLiteralReading;
|
|
26
|
+
export declare const TEMPORAL_LITERALS: FilterLiteralReading;
|
|
27
|
+
/** What a card's condition and a dashboard filter value both reduce to. */
|
|
28
|
+
export type FullDetailCondition = {
|
|
29
|
+
/** What the condition is on, as the reader should name it. */
|
|
30
|
+
subject: string;
|
|
31
|
+
operator: Operator;
|
|
32
|
+
values: readonly unknown[];
|
|
33
|
+
reading: FilterLiteralReading;
|
|
34
|
+
/** A relative window, authoritative over the bounds it last resolved to. */
|
|
35
|
+
relative?: RelativeDateFilter;
|
|
36
|
+
/** Compared with the field's latest value, resolved at run time. */
|
|
37
|
+
latestValue?: boolean;
|
|
38
|
+
/** The label a visual showed for the value. */
|
|
39
|
+
shownAs?: string;
|
|
40
|
+
};
|
|
41
|
+
export type FullDetailOptions = {
|
|
42
|
+
/** Values listed before "and N more values"; all by default. */
|
|
43
|
+
maxListedValues?: number;
|
|
44
|
+
/** Instants spanning whole days in this zone read as those dates. */
|
|
45
|
+
timeZone?: string;
|
|
46
|
+
};
|
|
47
|
+
export type FilterClauseText = {
|
|
48
|
+
text: string;
|
|
49
|
+
/** Values left out of `text` by `maxListedValues`. */
|
|
50
|
+
omittedValues: number;
|
|
51
|
+
};
|
|
52
|
+
/** One condition in full detail, with the count of values it left out. */
|
|
53
|
+
export declare function describeConditionInFullDetail(condition: FullDetailCondition, options?: FullDetailOptions): FilterClauseText;
|
|
54
|
+
/**
|
|
55
|
+
* A setting's value (a control's, a SQL parameter's) in full detail: a list
|
|
56
|
+
* of literals up to the cap, "no value" when unset.
|
|
57
|
+
*/
|
|
58
|
+
export declare function describeSettingValue(value: unknown, options?: Pick<FullDetailOptions, 'maxListedValues'>): FilterClauseText;
|
|
59
|
+
/** One value as a literal: strings quoted, so commas and types stay visible. */
|
|
60
|
+
export declare function formatFilterLiteral(value: unknown, reading?: FilterLiteralReading): string;
|
|
61
|
+
/** Values as literals, at most `max` of them, then "and N more values". */
|
|
62
|
+
export declare function formatFilterLiteralList(values: readonly unknown[], reading?: FilterLiteralReading, max?: number): string;
|
|
63
|
+
/** How many of `count` values a list of at most `max` leaves out. */
|
|
64
|
+
export declare function omittedValueCount(count: number, max?: number): number;
|
|
65
|
+
/**
|
|
66
|
+
* What a relative window covers, in words that leave nothing to a preset
|
|
67
|
+
* name: its anchor (now, or the latest date in the data) and whether it keeps
|
|
68
|
+
* only whole periods.
|
|
69
|
+
*/
|
|
70
|
+
export declare function describeRelativeDateDefinition(relative: RelativeDateFilter): string;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Operation } from '../../components/surfboard/filter/types.js';
|
|
2
|
+
import { FilterClauseText, FullDetailOptions } from './filter-detail.js';
|
|
3
|
+
/**
|
|
4
|
+
* A dashboard filter value in full-detail words (analytics agent Plan 1,
|
|
5
|
+
* D3a-3, D3a-4): through the same renderer as a card's own conditions, so a
|
|
6
|
+
* sheet input and the same input on a card read alike. Pure, React-free.
|
|
7
|
+
*/
|
|
8
|
+
/** The fields of a dashboard filter value the full-detail text reads. */
|
|
9
|
+
export type FullDetailFilterValue = {
|
|
10
|
+
operation: Operation;
|
|
11
|
+
values: readonly unknown[];
|
|
12
|
+
valueType?: string;
|
|
13
|
+
relativeMeta?: unknown;
|
|
14
|
+
};
|
|
15
|
+
export declare function describeFilterValueInFullDetail(value: FullDetailFilterValue, subject: string, options?: FullDetailOptions): FilterClauseText;
|
|
@@ -31,6 +31,9 @@ export * from './raw-temporal.js';
|
|
|
31
31
|
export * from './temporal-input-presentation.js';
|
|
32
32
|
export * from './flat-table-export-totals.js';
|
|
33
33
|
export * from './filter-line.js';
|
|
34
|
+
export { describeFilterValueInFullDetail, type FullDetailFilterValue, } from './filter-value-text.js';
|
|
35
|
+
export { describeConditionInFullDetail, type FilterClauseText } from './filter-detail.js';
|
|
36
|
+
export { formatCanonicalComparisonRange } from '../../lib/utils/comparison-window-caption.js';
|
|
34
37
|
export * from './aggregate-table-row-presentation.js';
|
|
35
38
|
export { PDF_GROUP_CONTINUATION_CLASS } from './grouped-table-presentation.js';
|
|
36
39
|
export { SEMAPHOR_GENERATED_COUNT_METRIC_ID } from '../analytics-protocol/contracts.js';
|
|
@@ -64,6 +64,13 @@ export declare function resolveRawTemporalFormat(input: {
|
|
|
64
64
|
preferences: ResolvedValueFormatPreferences;
|
|
65
65
|
calendar: Pick<CalendarContext, 'tz'>;
|
|
66
66
|
}): ResolvedRawTemporalFormat;
|
|
67
|
+
/**
|
|
68
|
+
* What a temporal literal is by its text alone: a calendar date, a wall-clock
|
|
69
|
+
* date-time with no zone, or an instant with a zone or offset. Undefined for
|
|
70
|
+
* any other text. Readers keep a date and a wall date-time as written; only an
|
|
71
|
+
* instant names a moment.
|
|
72
|
+
*/
|
|
73
|
+
export declare function classifyTemporalLiteral(value: string): RawTemporalValueKind | undefined;
|
|
67
74
|
export declare function classifyDeclaredSqlTemporalColumn(input: {
|
|
68
75
|
columnKey: string;
|
|
69
76
|
values: readonly (string | null)[];
|
|
@@ -68,6 +68,13 @@ export declare class TemporalBucketContractError extends Error {
|
|
|
68
68
|
constructor(code: TemporalBucketContractError['code'], message: string);
|
|
69
69
|
}
|
|
70
70
|
export declare function parseTemporalBucketValue(value: TemporalBucketValue, metadata: TemporalBucketMetadata): TemporalBucketValueParseResult;
|
|
71
|
+
/**
|
|
72
|
+
* A bucket's grain and governed calendar in words, for a reader that restates
|
|
73
|
+
* a bucketed condition ("by hour in the America/Chicago calendar; each value
|
|
74
|
+
* is a bucket's start"): the time zone always, the week start for weeks, the
|
|
75
|
+
* fiscal year start for quarters and years.
|
|
76
|
+
*/
|
|
77
|
+
export declare function describeTemporalBucketCalendar(metadata: TemporalBucketMetadata): string;
|
|
71
78
|
export declare function parseResolvedTemporalBucketFormat(input: unknown): ResolvedTemporalBucketFormatParseResult;
|
|
72
79
|
export declare function resolveTemporalBucketPresentation(input: ResolveTemporalBucketPresentationInput): ResolvedTemporalBucketPresentation;
|
|
73
80
|
export declare function formatTemporalBucket(input: {
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Breakpoint, TFrame } from '../../lib/types/common-types.js';
|
|
2
|
+
import { PersistedFrameLayoutItem, PersistedFrameLayouts } from './create-frame-layouts.js';
|
|
3
|
+
export declare function resizeFrameLayoutsForFrameTypeChange({ layouts, previousFrame, nextFrame, }: {
|
|
4
|
+
layouts: PersistedFrameLayouts | undefined;
|
|
5
|
+
previousFrame: TFrame | undefined;
|
|
6
|
+
nextFrame: TFrame;
|
|
7
|
+
}): PersistedFrameLayouts | undefined;
|
|
8
|
+
export declare function addToLayout({ id, layouts, initialHeight, y, x, w, minH, frame, }: {
|
|
9
|
+
id: string;
|
|
10
|
+
layouts: PersistedFrameLayouts | undefined;
|
|
11
|
+
initialHeight?: number;
|
|
12
|
+
x?: number;
|
|
13
|
+
y?: number;
|
|
14
|
+
w?: number;
|
|
15
|
+
minH?: number;
|
|
16
|
+
frame?: TFrame;
|
|
17
|
+
}): Partial<Record<Breakpoint, PersistedFrameLayoutItem[]>>;
|
|
18
|
+
export declare function removeFromLayout(id: string, layouts: PersistedFrameLayouts | undefined): PersistedFrameLayouts | undefined;
|
|
19
|
+
export declare function duplicateLayoutItem({ sourceId, duplicatedId, layouts, }: {
|
|
20
|
+
sourceId: string;
|
|
21
|
+
duplicatedId: string;
|
|
22
|
+
layouts: PersistedFrameLayouts | undefined;
|
|
23
|
+
}): PersistedFrameLayouts | undefined;
|
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.539",
|
|
9
9
|
"description": "Fully interactive and customizable dashboards for your apps.",
|
|
10
10
|
"keywords": [
|
|
11
11
|
"react",
|
|
@@ -56,6 +56,14 @@
|
|
|
56
56
|
"types": "./dist/types/analytics-protocol.d.ts",
|
|
57
57
|
"import": "./dist/analytics-protocol/index.js"
|
|
58
58
|
},
|
|
59
|
+
"./assistant-protocol": {
|
|
60
|
+
"types": "./dist/types/assistant-protocol.d.ts",
|
|
61
|
+
"import": "./dist/assistant-protocol/index.js"
|
|
62
|
+
},
|
|
63
|
+
"./assistant-context": {
|
|
64
|
+
"types": "./dist/types/assistant-context.d.ts",
|
|
65
|
+
"import": "./dist/assistant-context/index.js"
|
|
66
|
+
},
|
|
59
67
|
"./data-app-sdk": {
|
|
60
68
|
"types": "./dist/types/data-app-sdk.d.ts",
|
|
61
69
|
"import": "./dist/data-app-sdk/index.js"
|
|
@@ -111,7 +119,7 @@
|
|
|
111
119
|
"build": "node scripts/build.mjs",
|
|
112
120
|
"lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
|
|
113
121
|
"lint:regressions": "node scripts/lint-regressions.mjs",
|
|
114
|
-
"check:guards": "node scripts/card-config-consumers.mjs && node scripts/components-entry-imports.mjs && node scripts/types-entry-imports.mjs",
|
|
122
|
+
"check:guards": "node scripts/card-config-consumers.mjs && node scripts/components-entry-imports.mjs && node scripts/types-entry-imports.mjs && node scripts/card-query-assembly-imports.mjs && node scripts/assistant-chat-imports.mjs",
|
|
115
123
|
"preview": "vite preview",
|
|
116
124
|
"test": "vitest run",
|
|
117
125
|
"test:changed": "vitest run --changed",
|
|
@@ -140,6 +148,7 @@
|
|
|
140
148
|
"link:restore": "./scripts/link-helper.sh restore"
|
|
141
149
|
},
|
|
142
150
|
"dependencies": {
|
|
151
|
+
"@ai-sdk/react": "^4.0.140",
|
|
143
152
|
"@dnd-kit/core": "^6.3.1",
|
|
144
153
|
"@dnd-kit/sortable": "^10.0.0",
|
|
145
154
|
"@dnd-kit/utilities": "^3.2.2",
|
|
@@ -179,6 +188,7 @@
|
|
|
179
188
|
"@tanstack/react-query": "^5.62.15",
|
|
180
189
|
"@tanstack/react-table": "^8.11.7",
|
|
181
190
|
"@tanstack/react-virtual": "^3.13.26",
|
|
191
|
+
"ai": "^7.0.137",
|
|
182
192
|
"chart.js": "^4.4.1",
|
|
183
193
|
"chartjs-chart-funnel": "^4.2.4",
|
|
184
194
|
"chartjs-chart-geo": "^4.3.4",
|