@finos/legend-cube-builder 0.0.5 → 0.0.6
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/docs/adding-an-operation.md +4 -2
- package/docs/demo/README.md +1 -1
- package/docs/hosting.md +40 -9
- package/lib/__lib__/LegendCubeHelpText.d.ts.map +1 -1
- package/lib/__lib__/LegendCubeHelpText.js +3 -1
- package/lib/__lib__/LegendCubeHelpText.js.map +1 -1
- package/lib/__lib__/LegendCubeLabels.d.ts +34 -5
- package/lib/__lib__/LegendCubeLabels.d.ts.map +1 -1
- package/lib/__lib__/LegendCubeLabels.js +45 -8
- package/lib/__lib__/LegendCubeLabels.js.map +1 -1
- package/lib/__lib__/LegendCubeNavigation.d.ts +23 -0
- package/lib/__lib__/LegendCubeNavigation.d.ts.map +1 -0
- package/lib/__lib__/LegendCubeNavigation.js +33 -0
- package/lib/__lib__/LegendCubeNavigation.js.map +1 -0
- package/lib/__lib__/LegendCubeTesting.d.ts +3 -1
- package/lib/__lib__/LegendCubeTesting.d.ts.map +1 -1
- package/lib/__lib__/LegendCubeTesting.js +2 -0
- package/lib/__lib__/LegendCubeTesting.js.map +1 -1
- package/lib/__lib__/LegendCubeTour.d.ts +62 -0
- package/lib/__lib__/LegendCubeTour.d.ts.map +1 -0
- package/lib/__lib__/LegendCubeTour.js +149 -0
- package/lib/__lib__/LegendCubeTour.js.map +1 -0
- package/lib/__test-utils__/CubeExampleTestUtils.d.ts +34 -0
- package/lib/__test-utils__/CubeExampleTestUtils.d.ts.map +1 -0
- package/lib/__test-utils__/CubeExampleTestUtils.js +72 -0
- package/lib/__test-utils__/CubeExampleTestUtils.js.map +1 -0
- package/lib/__test-utils__/CubeVariantTestUtils.d.ts +16 -0
- package/lib/__test-utils__/CubeVariantTestUtils.d.ts.map +1 -0
- package/lib/__test-utils__/CubeVariantTestUtils.js +66 -0
- package/lib/__test-utils__/CubeVariantTestUtils.js.map +1 -0
- package/lib/components/CubeAddItems.d.ts.map +1 -1
- package/lib/components/CubeAddItems.js +2 -1
- package/lib/components/CubeAddItems.js.map +1 -1
- package/lib/components/CubeEditor.d.ts.map +1 -1
- package/lib/components/CubeEditor.js +11 -5
- package/lib/components/CubeEditor.js.map +1 -1
- package/lib/components/CubeFileMenu.d.ts.map +1 -1
- package/lib/components/CubeFileMenu.js +2 -1
- package/lib/components/CubeFileMenu.js.map +1 -1
- package/lib/components/CubeNodeIcon.d.ts.map +1 -1
- package/lib/components/CubeNodeIcon.js +2 -1
- package/lib/components/CubeNodeIcon.js.map +1 -1
- package/lib/components/canvas/CubeCanvas.d.ts.map +1 -1
- package/lib/components/canvas/CubeCanvas.js +3 -2
- package/lib/components/canvas/CubeCanvas.js.map +1 -1
- package/lib/components/canvas/CubeCanvasNode.d.ts.map +1 -1
- package/lib/components/canvas/CubeCanvasNode.js +4 -1
- package/lib/components/canvas/CubeCanvasNode.js.map +1 -1
- package/lib/components/dev-settings/CubeDevSettings.d.ts +2 -2
- package/lib/components/dev-settings/CubeDevSettings.d.ts.map +1 -1
- package/lib/components/dev-settings/CubeDevSettings.js +12 -8
- package/lib/components/dev-settings/CubeDevSettings.js.map +1 -1
- package/lib/components/editors/CubeColumnPicker.d.ts.map +1 -1
- package/lib/components/editors/CubeColumnPicker.js +3 -1
- package/lib/components/editors/CubeColumnPicker.js.map +1 -1
- package/lib/components/editors/CubeExplodeEditor.d.ts +26 -0
- package/lib/components/editors/CubeExplodeEditor.d.ts.map +1 -0
- package/lib/components/editors/CubeExplodeEditor.js +61 -0
- package/lib/components/editors/CubeExplodeEditor.js.map +1 -0
- package/lib/components/editors/CubeExpressionFilterEditor.d.ts.map +1 -1
- package/lib/components/editors/CubeExpressionFilterEditor.js +8 -5
- package/lib/components/editors/CubeExpressionFilterEditor.js.map +1 -1
- package/lib/components/editors/CubeExtendEditor.d.ts +0 -2
- package/lib/components/editors/CubeExtendEditor.d.ts.map +1 -1
- package/lib/components/editors/CubeExtendEditor.js +12 -11
- package/lib/components/editors/CubeExtendEditor.js.map +1 -1
- package/lib/components/editors/CubeJsonFieldsTree.d.ts +46 -0
- package/lib/components/editors/CubeJsonFieldsTree.d.ts.map +1 -0
- package/lib/components/editors/CubeJsonFieldsTree.js +93 -0
- package/lib/components/editors/CubeJsonFieldsTree.js.map +1 -0
- package/lib/components/editors/CubeNodeEditorRegistry.d.ts.map +1 -1
- package/lib/components/editors/CubeNodeEditorRegistry.js +3 -1
- package/lib/components/editors/CubeNodeEditorRegistry.js.map +1 -1
- package/lib/components/grid/CubeGridRegion.d.ts.map +1 -1
- package/lib/components/grid/CubeGridRegion.js +5 -4
- package/lib/components/grid/CubeGridRegion.js.map +1 -1
- package/lib/components/grid/CubeGridValues.d.ts +5 -3
- package/lib/components/grid/CubeGridValues.d.ts.map +1 -1
- package/lib/components/grid/CubeGridValues.js +8 -3
- package/lib/components/grid/CubeGridValues.js.map +1 -1
- package/lib/components/grid/CubeJsonExplorerDialog.d.ts +27 -0
- package/lib/components/grid/CubeJsonExplorerDialog.d.ts.map +1 -0
- package/lib/components/grid/CubeJsonExplorerDialog.js +102 -0
- package/lib/components/grid/CubeJsonExplorerDialog.js.map +1 -0
- package/lib/components/grid/CubeJsonViewerDialog.d.ts +27 -0
- package/lib/components/grid/CubeJsonViewerDialog.d.ts.map +1 -0
- package/lib/components/grid/CubeJsonViewerDialog.js +68 -0
- package/lib/components/grid/CubeJsonViewerDialog.js.map +1 -0
- package/lib/components/grid/CubeResultGrid.d.ts +15 -3
- package/lib/components/grid/CubeResultGrid.d.ts.map +1 -1
- package/lib/components/grid/CubeResultGrid.js +95 -3
- package/lib/components/grid/CubeResultGrid.js.map +1 -1
- package/lib/components/grid/CubeServerSideGrid.d.ts.map +1 -1
- package/lib/components/grid/CubeServerSideGrid.js +4 -2
- package/lib/components/grid/CubeServerSideGrid.js.map +1 -1
- package/lib/components/palette/CubePalette.d.ts.map +1 -1
- package/lib/components/palette/CubePalette.js +4 -1
- package/lib/components/palette/CubePalette.js.map +1 -1
- package/lib/components/source-picker/CubeIngestTab.d.ts +2 -2
- package/lib/components/source-picker/CubeIngestTab.d.ts.map +1 -1
- package/lib/components/source-picker/CubeIngestTab.js +19 -13
- package/lib/components/source-picker/CubeIngestTab.js.map +1 -1
- package/lib/components/tour/CubeTour.d.ts +36 -0
- package/lib/components/tour/CubeTour.d.ts.map +1 -0
- package/lib/components/tour/CubeTour.js +183 -0
- package/lib/components/tour/CubeTour.js.map +1 -0
- package/lib/index.css +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/stores/CubeEditorState.d.ts +17 -1
- package/lib/stores/CubeEditorState.d.ts.map +1 -1
- package/lib/stores/CubeEditorState.js +35 -5
- package/lib/stores/CubeEditorState.js.map +1 -1
- package/lib/stores/CubeExamples.d.ts.map +1 -1
- package/lib/stores/CubeExamples.js +101 -4
- package/lib/stores/CubeExamples.js.map +1 -1
- package/lib/stores/CubeExamplesState.d.ts.map +1 -1
- package/lib/stores/CubeExamplesState.js +4 -1
- package/lib/stores/CubeExamplesState.js.map +1 -1
- package/lib/stores/CubeGridQuickActions.d.ts +7 -0
- package/lib/stores/CubeGridQuickActions.d.ts.map +1 -1
- package/lib/stores/CubeGridQuickActions.js +20 -11
- package/lib/stores/CubeGridQuickActions.js.map +1 -1
- package/lib/stores/CubePureText.d.ts +20 -0
- package/lib/stores/CubePureText.d.ts.map +1 -0
- package/lib/stores/CubePureText.js +24 -0
- package/lib/stores/CubePureText.js.map +1 -0
- package/lib/stores/CubeTourState.d.ts +49 -0
- package/lib/stores/CubeTourState.d.ts.map +1 -0
- package/lib/stores/CubeTourState.js +92 -0
- package/lib/stores/CubeTourState.js.map +1 -0
- package/lib/stores/LegendCubeHost.d.ts +88 -0
- package/lib/stores/LegendCubeHost.d.ts.map +1 -0
- package/lib/stores/LegendCubeHost.js +149 -0
- package/lib/stores/LegendCubeHost.js.map +1 -0
- package/lib/stores/editors/CubeExplodeDraft.d.ts +87 -0
- package/lib/stores/editors/CubeExplodeDraft.d.ts.map +1 -0
- package/lib/stores/editors/CubeExplodeDraft.js +221 -0
- package/lib/stores/editors/CubeExplodeDraft.js.map +1 -0
- package/lib/stores/editors/CubeExpressionFilterDraft.d.ts +3 -0
- package/lib/stores/editors/CubeExpressionFilterDraft.d.ts.map +1 -1
- package/lib/stores/editors/CubeExpressionFilterDraft.js +4 -0
- package/lib/stores/editors/CubeExpressionFilterDraft.js.map +1 -1
- package/lib/stores/editors/CubeExtendDraft.d.ts +9 -0
- package/lib/stores/editors/CubeExtendDraft.d.ts.map +1 -1
- package/lib/stores/editors/CubeExtendDraft.js +26 -0
- package/lib/stores/editors/CubeExtendDraft.js.map +1 -1
- package/lib/stores/editors/CubeNodeDraftRegistry.d.ts.map +1 -1
- package/lib/stores/editors/CubeNodeDraftRegistry.js +6 -1
- package/lib/stores/editors/CubeNodeDraftRegistry.js.map +1 -1
- package/lib/stores/fixtures/CubeSalesDuckDbModel.d.ts +1 -0
- package/lib/stores/fixtures/CubeSalesDuckDbModel.d.ts.map +1 -1
- package/lib/stores/fixtures/CubeSalesDuckDbModel.js +8 -2
- package/lib/stores/fixtures/CubeSalesDuckDbModel.js.map +1 -1
- package/lib/stores/source-picker/CubeIngestTabState.d.ts +48 -14
- package/lib/stores/source-picker/CubeIngestTabState.d.ts.map +1 -1
- package/lib/stores/source-picker/CubeIngestTabState.js +159 -62
- package/lib/stores/source-picker/CubeIngestTabState.js.map +1 -1
- package/lib/stores/variant/CubeJson.d.ts +48 -0
- package/lib/stores/variant/CubeJson.d.ts.map +1 -0
- package/lib/stores/variant/CubeJson.js +207 -0
- package/lib/stores/variant/CubeJson.js.map +1 -0
- package/lib/stores/variant/CubeJsonExplorerState.d.ts +88 -0
- package/lib/stores/variant/CubeJsonExplorerState.d.ts.map +1 -0
- package/lib/stores/variant/CubeJsonExplorerState.js +297 -0
- package/lib/stores/variant/CubeJsonExplorerState.js.map +1 -0
- package/lib/stores/variant/CubeJsonFieldsState.d.ts +83 -0
- package/lib/stores/variant/CubeJsonFieldsState.d.ts.map +1 -0
- package/lib/stores/variant/CubeJsonFieldsState.js +207 -0
- package/lib/stores/variant/CubeJsonFieldsState.js.map +1 -0
- package/lib/stores/variant/CubeJsonOffers.d.ts +76 -0
- package/lib/stores/variant/CubeJsonOffers.d.ts.map +1 -0
- package/lib/stores/variant/CubeJsonOffers.js +250 -0
- package/lib/stores/variant/CubeJsonOffers.js.map +1 -0
- package/lib/stores/variant/CubeJsonParse.d.ts +28 -0
- package/lib/stores/variant/CubeJsonParse.d.ts.map +1 -0
- package/lib/stores/variant/CubeJsonParse.js +53 -0
- package/lib/stores/variant/CubeJsonParse.js.map +1 -0
- package/lib/stores/variant/CubeJsonSampling.d.ts +41 -0
- package/lib/stores/variant/CubeJsonSampling.d.ts.map +1 -0
- package/lib/stores/variant/CubeJsonSampling.js +59 -0
- package/lib/stores/variant/CubeJsonSampling.js.map +1 -0
- package/lib/stores/variant/CubeJsonShape.d.ts +87 -0
- package/lib/stores/variant/CubeJsonShape.d.ts.map +1 -0
- package/lib/stores/variant/CubeJsonShape.js +209 -0
- package/lib/stores/variant/CubeJsonShape.js.map +1 -0
- package/lib/stores/variant/CubeJsonViewerState.d.ts +33 -0
- package/lib/stores/variant/CubeJsonViewerState.d.ts.map +1 -0
- package/lib/stores/variant/CubeJsonViewerState.js +53 -0
- package/lib/stores/variant/CubeJsonViewerState.js.map +1 -0
- package/package.json +2 -2
- package/src/__lib__/LegendCubeHelpText.ts +4 -0
- package/src/__lib__/LegendCubeLabels.ts +60 -8
- package/src/__lib__/LegendCubeNavigation.ts +48 -0
- package/src/__lib__/LegendCubeTesting.ts +2 -0
- package/src/__lib__/LegendCubeTour.ts +173 -0
- package/src/__test-utils__/CubeExampleTestUtils.ts +119 -0
- package/src/__test-utils__/CubeVariantTestUtils.ts +103 -0
- package/src/components/CubeAddItems.tsx +2 -0
- package/src/components/CubeEditor.tsx +15 -0
- package/src/components/CubeFileMenu.tsx +2 -0
- package/src/components/CubeNodeIcon.tsx +2 -0
- package/src/components/canvas/CubeCanvas.tsx +17 -1
- package/src/components/canvas/CubeCanvasNode.tsx +7 -0
- package/src/components/dev-settings/CubeDevSettings.tsx +17 -2
- package/src/components/editors/CubeColumnPicker.tsx +3 -0
- package/src/components/editors/CubeExplodeEditor.tsx +207 -0
- package/src/components/editors/CubeExpressionFilterEditor.tsx +25 -8
- package/src/components/editors/CubeExtendEditor.tsx +32 -19
- package/src/components/editors/CubeJsonFieldsTree.tsx +316 -0
- package/src/components/editors/CubeNodeEditorRegistry.ts +3 -0
- package/src/components/grid/CubeGridRegion.tsx +21 -3
- package/src/components/grid/CubeGridValues.ts +8 -3
- package/src/components/grid/CubeJsonExplorerDialog.tsx +304 -0
- package/src/components/grid/CubeJsonViewerDialog.tsx +190 -0
- package/src/components/grid/CubeResultGrid.tsx +144 -2
- package/src/components/grid/CubeServerSideGrid.tsx +13 -0
- package/src/components/palette/CubePalette.tsx +9 -0
- package/src/components/source-picker/CubeIngestTab.tsx +62 -30
- package/src/components/tour/CubeTour.tsx +317 -0
- package/src/index.ts +7 -0
- package/src/stores/CubeEditorState.ts +36 -5
- package/src/stores/CubeExamples.ts +120 -2
- package/src/stores/CubeExamplesState.ts +9 -1
- package/src/stores/CubeGridQuickActions.ts +23 -12
- package/src/stores/CubePureText.ts +28 -0
- package/src/stores/CubeTourState.ts +116 -0
- package/src/stores/LegendCubeHost.ts +243 -0
- package/src/stores/editors/CubeExplodeDraft.ts +272 -0
- package/src/stores/editors/CubeExpressionFilterDraft.ts +4 -0
- package/src/stores/editors/CubeExtendDraft.ts +29 -0
- package/src/stores/editors/CubeNodeDraftRegistry.ts +7 -0
- package/src/stores/fixtures/CubeSalesDuckDbModel.ts +8 -2
- package/src/stores/source-picker/CubeIngestTabState.ts +253 -102
- package/src/stores/variant/CubeJson.ts +229 -0
- package/src/stores/variant/CubeJsonExplorerState.ts +378 -0
- package/src/stores/variant/CubeJsonFieldsState.ts +252 -0
- package/src/stores/variant/CubeJsonOffers.ts +359 -0
- package/src/stores/variant/CubeJsonParse.ts +75 -0
- package/src/stores/variant/CubeJsonSampling.ts +90 -0
- package/src/stores/variant/CubeJsonShape.ts +279 -0
- package/src/stores/variant/CubeJsonViewerState.ts +59 -0
- package/tsconfig.json +22 -1
|
@@ -11,8 +11,10 @@ the icon name the node's definition gives. Join and Filter are the examples to f
|
|
|
11
11
|
(`CubePartitionEditor`, `CubePartitionDraft`), Difference for a two-input editor sharing Join's key rows
|
|
12
12
|
(`CubeDifferenceEditor`, `CubeDifferenceDraft`), Extend for an editor that asks the engine before Apply
|
|
13
13
|
(`CubeExtendEditor`, `CubeExtendDraft`), Filter by Expression for one condition the engine checks
|
|
14
|
-
(`CubeExpressionFilterEditor`, `CubeExpressionFilterDraft`),
|
|
15
|
-
through `runCubeQuery` (`CubePivotEditor`, `CubePivotDraft`)
|
|
14
|
+
(`CubeExpressionFilterEditor`, `CubeExpressionFilterDraft`), Pivot for an editor that loads values from the engine
|
|
15
|
+
through `runCubeQuery` (`CubePivotEditor`, `CubePivotDraft`), and Explode Array for one that reads a sample of a column
|
|
16
|
+
after the node's input, as Explore JSON does (`readCubeJsonSample`), greying its button with the database's reason
|
|
17
|
+
(`CubeExplodeEditor`, `CubeExplodeDraft`; PLAN §11.20). A node type a database can't run is greyed, with the
|
|
16
18
|
reason, in the palette and the Add menus (`getCubeAddDatabaseProblem` in `CubeAddPlacement.ts`): nothing to add for a
|
|
17
19
|
new type but the core's rule.
|
|
18
20
|
|
package/docs/demo/README.md
CHANGED
|
@@ -44,7 +44,7 @@ The question: which desk trades most, and how does each rank in its region?
|
|
|
44
44
|
**Descending**; function **Rank** named **RANK_IN_REGION**. **Apply**, **F9**: Americas is Commodities 1, Rates 2,
|
|
45
45
|
Equities Cash 3; Europe is Equity Derivatives 1, Credit 2; Asia is FX 1. _(`trades-desks-3-ranked`.)_
|
|
46
46
|
5. **Add Items ▾ → Extend Columns**: name **NOTIONAL_MM**, expression `x | $x.TOTAL_NOTIONAL_USD / 1000000`,
|
|
47
|
-
**Validate** (_"Float,
|
|
47
|
+
**Validate** (_"Float, optional"_), **Apply**, **F9**: Commodities 31,102,024.71 → **31.10**.
|
|
48
48
|
_(`trades-desks-4-extended`.)_
|
|
49
49
|
6. **Add Items ▾ → Filter by Expression**: `x | $x.NOTIONAL_MM > 25`, **Validate**, **Apply**, **F9**: **4 desks**
|
|
50
50
|
(Commodities, Equity Derivatives, FX, Rates), their ranks unchanged. _(`trades-desks-5-final`.)_
|
package/docs/hosting.md
CHANGED
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
# Hosting the Cube page
|
|
2
2
|
|
|
3
|
-
A Legend application hosts the page by giving it a `CubeHost` and contributing its shortcuts.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
A Legend application hosts the page by giving it a `CubeHost` and contributing its shortcuts. Three applications
|
|
4
|
+
host it today:
|
|
5
|
+
|
|
6
|
+
- **Legend Query**, at `/query/cube`: `LegendQueryCubeHost` (`src/stores/cube/`), and the lazy route and page
|
|
7
|
+
(`src/components/cube/`) of `@finos/legend-application-query`.
|
|
8
|
+
- **Legend Analytics**, at `/analytics/`, an application of its own: `createLegendAnalyticsCubeHost`
|
|
9
|
+
(`src/stores/`) and the page at its root (`src/components/`) of `@finos/legend-application-analytics`, with its
|
|
10
|
+
bootstrap and deployment (PLAN §11.19).
|
|
11
|
+
- **Legend Studio**, from an ingest definition's editor (see [Legend Studio](#legend-studio-create-matview)).
|
|
12
|
+
|
|
13
|
+
Legend Query and Legend Analytics build their hosts on one `LegendCubeHost` (below).
|
|
7
14
|
|
|
8
15
|
## The host
|
|
9
16
|
|
|
@@ -19,9 +26,21 @@ interface CubeHost {
|
|
|
19
26
|
readonly serviceCatalog?: CubeServiceCatalog | undefined;
|
|
20
27
|
/** False to leave out the Sample Data tab and the Examples, as Studio does */
|
|
21
28
|
readonly offersSampleData?: boolean | undefined;
|
|
29
|
+
readonly engineClientSettings?: CubeEngineClientSettings | undefined;
|
|
22
30
|
}
|
|
23
31
|
```
|
|
24
32
|
|
|
33
|
+
**A Legend deployment's host:** `new LegendCubeHost(applicationStore, config, parts?)` builds every part below from
|
|
34
|
+
a plain `LegendCubeHostConfig`, the deployment's servers: `engine` (a `CubeEngineConfig`), and `depotServerUrl`,
|
|
35
|
+
`lakehouseContractUrl`, `lakehousePlatformUrl`, `marketplaceServerUrl`, `marketplaceApplicationUrl`,
|
|
36
|
+
`marketplaceProductionParallelUrl`, `enterpriseStereotype` and `getPreferredEnvironment`, each only where the
|
|
37
|
+
deployment has it. It offers each source by the rules below (no lakehouse, no data products; no platform, no ingest
|
|
38
|
+
data sets; no depot, no projects), links data products to the marketplace of their deployment's class, and registers
|
|
39
|
+
every engine client with its `engineClientSettings`, which Dev Settings changes. Tests give an engine, a connection
|
|
40
|
+
explorer or a project catalog as `parts`. Legend Query passes `buildLegendQueryCubeHostConfig`, Legend Analytics
|
|
41
|
+
`buildLegendAnalyticsCubeHostConfig`; a host whose sources are its own builds its parts
|
|
42
|
+
with the functions below instead.
|
|
43
|
+
|
|
25
44
|
- **The application store** gives the page its commands, user data, clipboard, theme, notifications and alerts, and
|
|
26
45
|
its telemetry service, which Cube doesn't use yet: it sends no events. Cube keeps no auth or config of its own.
|
|
27
46
|
- **The engine:** `buildCubeEngine(config, tracerService)` builds Legend's implementation of the `CubeEngine` port.
|
|
@@ -65,6 +84,9 @@ interface CubeHost {
|
|
|
65
84
|
dialog's Project tab (PLAN §6.3). It reads nothing until the tab opens. Project cubes save the engine's pointer, so
|
|
66
85
|
the engine must fetch from the same depot. Legend Query builds it from `depot.url`.
|
|
67
86
|
|
|
87
|
+
Legend Analytics mounts the page at its root with no flag: deploying the application is the opt-in. Its config takes
|
|
88
|
+
the keys below as Legend Query's does, with `depot` optional too, and only `engine` required.
|
|
89
|
+
|
|
68
90
|
Legend Query mounts the Cube page at `/query/cube` only where its config turns on non-production features,
|
|
69
91
|
since Cube is still a proof of concept: `"extensions": { "core": { "NonProductionFeatureFlag": true } }`. Without
|
|
70
92
|
it, as in production, the address shows nothing. To see it locally, add it to the deployment's
|
|
@@ -117,8 +139,8 @@ run.
|
|
|
117
139
|
|
|
118
140
|
## Legend Studio: Create MatView
|
|
119
141
|
|
|
120
|
-
An ingest definition's editor in Studio offers **Create MatView**
|
|
121
|
-
(`EmbeddedCubeState`, `src/stores/editor/embedded-cube/` of `@finos/legend-application-studio`). The page opens full
|
|
142
|
+
An ingest definition's editor in Studio offers **Create MatView** in every deployment: unlike Legend Query's
|
|
143
|
+
`/query/cube`, it doesn't depend on `NonProductionFeatureFlag` (`EmbeddedCubeState`, `src/stores/editor/embedded-cube/` of `@finos/legend-application-studio`). The page opens full
|
|
122
144
|
screen over the editor, as the embedded query builder does, with `LegendStudioCubeHost`:
|
|
123
145
|
|
|
124
146
|
- **The project:** `CubeHost.project` (`LegendStudioCubeWorkspace`) says the page reads one project's own sources. The
|
|
@@ -139,14 +161,16 @@ screen over the editor, as the embedded query builder does, with `LegendStudioCu
|
|
|
139
161
|
which starts as the runtime's.
|
|
140
162
|
- **Add MatView:** a button the host adds to the header (`headerActions` on `CubeEditor`) takes the step that runs
|
|
141
163
|
as a lambda with no runtime and no row limit (`buildCubeRunningStepLambda`), asks for a name, a classification of
|
|
142
|
-
its data and a primary key among the step's columns (`analysis.schemas` of the selected step),
|
|
164
|
+
its data and a primary key among the step's columns (`analysis.schemas` of the selected step), but the
|
|
165
|
+
milestoning columns a write mode adds (`LAKE_IN_ID`, `LAKE_DIGEST`, …), and appends a
|
|
143
166
|
`FunctionSource` data set to the definition. Studio sees it as a local change; Lineage and View SQL work on it.
|
|
144
167
|
- **Edit MatView:** the button's menu lists the definition's materialized views. Cube opens on one, read back into
|
|
145
168
|
its steps (`initialLambda` on `CubeEditor`, Import Pure, PLAN §11.18): the host binds its sources as the source
|
|
146
169
|
dialog would add them, and a banner says when Cube writes the view another way. The header button is then
|
|
147
170
|
**Save MatView**, which replaces that view's lambda in place, keeping its name, place and other keys, and adding
|
|
148
171
|
the empty lists the engine reads that it lacks. When the view has no classification of its data, or its primary
|
|
149
|
-
key has a column the step no longer has, Save MatView first asks for them again in Add
|
|
172
|
+
key has a column the step no longer has or a milestoning one, Save MatView first asks for them again in Add
|
|
173
|
+
MatView's dialog.
|
|
150
174
|
- **Loading:** Studio loads Cube with the dialog, on its first opening (`React.lazy`), so Cube's code stays out of
|
|
151
175
|
Studio's main bundle.
|
|
152
176
|
|
|
@@ -176,6 +200,11 @@ The page registers the commands while it is open: F9 runs the query, and Ctrl+Z
|
|
|
176
200
|
scans `../legend-*/src/**/*.tsx`. So Tailwind classes go in `.tsx` files only.
|
|
177
201
|
- React Flow's stylesheet comes with the canvas. Load the page lazily, as Legend Query does, to keep it and the page's
|
|
178
202
|
libraries out of the host's main bundle.
|
|
203
|
+
- In the legacy light theme, the legend-art components the page uses (dialogs, menus, form fields, inputs, tooltips,
|
|
204
|
+
notifications) take their light look from the application's own stylesheet: Legend Query's light mode
|
|
205
|
+
(`legend-application-query/style/light-mode.scss`), whose matching rules Legend Analytics copies into
|
|
206
|
+
`legend-application-analytics-bootstrap/style/light-mode.scss`, imported after every other style. A new host
|
|
207
|
+
defaulting to the light theme needs the same.
|
|
179
208
|
|
|
180
209
|
## The dev loop
|
|
181
210
|
|
|
@@ -184,7 +213,9 @@ The page registers the commands while it is open: F9 runs the query, and Ctrl+Z
|
|
|
184
213
|
(`fixtures/legend-docker-setup/grammar-test-setup/grammar-test-setup-docker-compose.yml`). Check it with
|
|
185
214
|
`curl -s localhost:6300/api/server/v1/info`.
|
|
186
215
|
2. Run `yarn build` once: `yarn dev:ts` doesn't build the stylesheets.
|
|
187
|
-
3. Run `yarn dev:ts` and `yarn dev:query`, and open `http://localhost:9001/query/cube
|
|
216
|
+
3. Run `yarn dev:ts` and `yarn dev:query`, and open `http://localhost:9001/query/cube`; or `yarn dev:analytics`, and
|
|
217
|
+
open `http://localhost:9009/analytics/` (run `yarn workspace @finos/legend-application-analytics-deployment setup`
|
|
218
|
+
once for its local config).
|
|
188
219
|
4. Run `yarn workspace @finos/legend-cube-builder dev:sass` to rebuild the stylesheet as you change it (the root
|
|
189
220
|
`yarn dev:ts` already rebuilds the TypeScript).
|
|
190
221
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegendCubeHelpText.d.ts","sourceRoot":"","sources":["../../src/__lib__/LegendCubeHelpText.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"LegendCubeHelpText.d.ts","sourceRoot":"","sources":["../../src/__lib__/LegendCubeHelpText.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAiCH,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAkDhE,CAAC;AAEF,2DAA2D;AAC3D,eAAO,MAAM,mBAAmB,sEACqC,CAAC;AAEtE,wEAAwE;AACxE,eAAO,MAAM,kBAAkB,SAAS,CAAC;AAEzC,sEAAsE;AACtE,eAAO,MAAM,mBAAmB,kBAAkB,CAAC"}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { Concat, DataProductAccessPointSource, Difference, IngestDatasetSource, Distinct, Drop, ExpressionFilter, Extend, Filter, FunctionSource, Group, Join, Limit, Partition, Pivot, RelationalTableSource, Rename, Restrict, ServiceSource, Slice, Sort, UnknownNode, } from '@finos/legend-cube';
|
|
16
|
+
import { Concat, DataProductAccessPointSource, Difference, IngestDatasetSource, Distinct, Drop, ExpressionFilter, Explode, Extend, Filter, FunctionSource, Group, Join, Limit, Partition, Pivot, RelationalTableSource, Rename, Restrict, ServiceSource, Slice, Sort, UnknownNode, } from '@finos/legend-cube';
|
|
17
17
|
// The node editor's help text, verbatim from the original (spec §17.9), but
|
|
18
18
|
// Slice's, which counts rows from 0 and leaves the stop row out (D5, PLAN
|
|
19
19
|
// §11.4), and Concat's, which matches columns by position (PLAN §11.5, Q8).
|
|
@@ -33,6 +33,8 @@ export const CUBE_NODE_HELP_TEXT = {
|
|
|
33
33
|
[Distinct.TYPE]: 'Removes duplicate rows from the previous data set.',
|
|
34
34
|
[Drop.TYPE]: 'Reduces the number of rows in the previous data set, removing the specified number of rows from the beginning of the data set.',
|
|
35
35
|
[Extend.TYPE]: 'Extends outgoing data set with new columns produced by expressions.',
|
|
36
|
+
/** Added by Cube: the original has no JSON operations (PLAN §11.20) */
|
|
37
|
+
[Explode.TYPE]: 'Makes a row for each element of an array in a JSON (Variant) column of the previous data set, keeping its columns and adding the element as a new column. A row whose array is empty, or missing, is kept once, with an empty element.',
|
|
36
38
|
[Filter.TYPE]: 'Reduces the number of rows in the previous data set, keeping only rows matching the specified criteria.',
|
|
37
39
|
/** Added by Cube: the original has no filter by expression (PLAN §11.11) */
|
|
38
40
|
[ExpressionFilter.TYPE]: 'Reduces the number of rows in the previous data set, keeping only rows for which the expression is true.',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegendCubeHelpText.js","sourceRoot":"","sources":["../../src/__lib__/LegendCubeHelpText.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,MAAM,EACN,4BAA4B,EAC5B,UAAU,EACV,mBAAmB,EACnB,QAAQ,EACR,IAAI,EACJ,gBAAgB,EAChB,MAAM,EACN,MAAM,EACN,cAAc,EACd,KAAK,EACL,IAAI,EACJ,KAAK,EACL,SAAS,EACT,KAAK,EACL,qBAAqB,EACrB,MAAM,EACN,QAAQ,EACR,aAAa,EACb,KAAK,EACL,IAAI,EACJ,WAAW,GACZ,MAAM,oBAAoB,CAAC;AAE5B,4EAA4E;AAC5E,0EAA0E;AAC1E,4EAA4E;AAC5E,uCAAuC;AAEvC,MAAM,CAAC,MAAM,mBAAmB,GAAqC;IACnE,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,8CAA8C;IAC5E,4EAA4E;IAC5E,CAAC,cAAc,CAAC,IAAI,CAAC,EACnB,4GAA4G;IAC9G,yEAAyE;IACzE,CAAC,4BAA4B,CAAC,IAAI,CAAC,EACjC,+DAA+D;IACjE,4EAA4E;IAC5E,CAAC,mBAAmB,CAAC,IAAI,CAAC,EACxB,+DAA+D;IACjE,kGAAkG;IAClG,CAAC,aAAa,CAAC,IAAI,CAAC,EAClB,kFAAkF;IACpF,CAAC,MAAM,CAAC,IAAI,CAAC,EACX,uLAAuL;IACzL,CAAC,UAAU,CAAC,IAAI,CAAC,EACf,2EAA2E;IAC7E,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,oDAAoD;IACrE,CAAC,IAAI,CAAC,IAAI,CAAC,EACT,gIAAgI;IAClI,CAAC,MAAM,CAAC,IAAI,CAAC,EACX,qEAAqE;IACvE,CAAC,MAAM,CAAC,IAAI,CAAC,EACX,yGAAyG;IAC3G,4EAA4E;IAC5E,CAAC,gBAAgB,CAAC,IAAI,CAAC,EACrB,0GAA0G;IAC5G,CAAC,KAAK,CAAC,IAAI,CAAC,EACV,uGAAuG;IACzG,2EAA2E;IAC3E,CAAC,KAAK,CAAC,IAAI,CAAC,EACV,uMAAuM;IACzM,CAAC,IAAI,CAAC,IAAI,CAAC,EACT,oEAAoE;IACtE,CAAC,SAAS,CAAC,IAAI,CAAC,EACd,4FAA4F;IAC9F,CAAC,KAAK,CAAC,IAAI,CAAC,EACV,+HAA+H;IACjI,CAAC,MAAM,CAAC,IAAI,CAAC,EACX,kEAAkE;IACpE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,4DAA4D;IAC7E,CAAC,KAAK,CAAC,IAAI,CAAC,EACV,8JAA8J;IAChK,CAAC,IAAI,CAAC,IAAI,CAAC,EACT,oHAAoH;IACtH,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,sDAAsD;CAC3E,CAAC;AAEF,2DAA2D;AAC3D,MAAM,CAAC,MAAM,mBAAmB,GAC9B,mEAAmE,CAAC;AAEtE,wEAAwE;AACxE,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAEzC,sEAAsE;AACtE,MAAM,CAAC,MAAM,mBAAmB,GAAG,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"LegendCubeHelpText.js","sourceRoot":"","sources":["../../src/__lib__/LegendCubeHelpText.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,MAAM,EACN,4BAA4B,EAC5B,UAAU,EACV,mBAAmB,EACnB,QAAQ,EACR,IAAI,EACJ,gBAAgB,EAChB,OAAO,EACP,MAAM,EACN,MAAM,EACN,cAAc,EACd,KAAK,EACL,IAAI,EACJ,KAAK,EACL,SAAS,EACT,KAAK,EACL,qBAAqB,EACrB,MAAM,EACN,QAAQ,EACR,aAAa,EACb,KAAK,EACL,IAAI,EACJ,WAAW,GACZ,MAAM,oBAAoB,CAAC;AAE5B,4EAA4E;AAC5E,0EAA0E;AAC1E,4EAA4E;AAC5E,uCAAuC;AAEvC,MAAM,CAAC,MAAM,mBAAmB,GAAqC;IACnE,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,8CAA8C;IAC5E,4EAA4E;IAC5E,CAAC,cAAc,CAAC,IAAI,CAAC,EACnB,4GAA4G;IAC9G,yEAAyE;IACzE,CAAC,4BAA4B,CAAC,IAAI,CAAC,EACjC,+DAA+D;IACjE,4EAA4E;IAC5E,CAAC,mBAAmB,CAAC,IAAI,CAAC,EACxB,+DAA+D;IACjE,kGAAkG;IAClG,CAAC,aAAa,CAAC,IAAI,CAAC,EAClB,kFAAkF;IACpF,CAAC,MAAM,CAAC,IAAI,CAAC,EACX,uLAAuL;IACzL,CAAC,UAAU,CAAC,IAAI,CAAC,EACf,2EAA2E;IAC7E,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,oDAAoD;IACrE,CAAC,IAAI,CAAC,IAAI,CAAC,EACT,gIAAgI;IAClI,CAAC,MAAM,CAAC,IAAI,CAAC,EACX,qEAAqE;IACvE,uEAAuE;IACvE,CAAC,OAAO,CAAC,IAAI,CAAC,EACZ,wOAAwO;IAC1O,CAAC,MAAM,CAAC,IAAI,CAAC,EACX,yGAAyG;IAC3G,4EAA4E;IAC5E,CAAC,gBAAgB,CAAC,IAAI,CAAC,EACrB,0GAA0G;IAC5G,CAAC,KAAK,CAAC,IAAI,CAAC,EACV,uGAAuG;IACzG,2EAA2E;IAC3E,CAAC,KAAK,CAAC,IAAI,CAAC,EACV,uMAAuM;IACzM,CAAC,IAAI,CAAC,IAAI,CAAC,EACT,oEAAoE;IACtE,CAAC,SAAS,CAAC,IAAI,CAAC,EACd,4FAA4F;IAC9F,CAAC,KAAK,CAAC,IAAI,CAAC,EACV,+HAA+H;IACjI,CAAC,MAAM,CAAC,IAAI,CAAC,EACX,kEAAkE;IACpE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,4DAA4D;IAC7E,CAAC,KAAK,CAAC,IAAI,CAAC,EACV,8JAA8J;IAChK,CAAC,IAAI,CAAC,IAAI,CAAC,EACT,oHAAoH;IACtH,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,sDAAsD;CAC3E,CAAC;AAEF,2DAA2D;AAC3D,MAAM,CAAC,MAAM,mBAAmB,GAC9B,mEAAmE,CAAC;AAEtE,wEAAwE;AACxE,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAEzC,sEAAsE;AACtE,MAAM,CAAC,MAAM,mBAAmB,GAAG,eAAe,CAAC"}
|
|
@@ -80,9 +80,9 @@ export declare const CUBE_TABLE_FLAG_LABELS: Readonly<Record<CubeTableFlag, {
|
|
|
80
80
|
export declare const getExactColumnTypeLabel: (column: SchemaColumn) => string;
|
|
81
81
|
/**
|
|
82
82
|
* A column's type as the editors show it: the kind of value, and whether it
|
|
83
|
-
* can be empty, e.g. `Text,
|
|
84
|
-
* doesn't know, by its name. The exact type
|
|
85
|
-
* on hover.
|
|
83
|
+
* is optional (can be empty), e.g. `Text, optional`; an enumeration, or a
|
|
84
|
+
* type Cube doesn't know, by its name. The exact type
|
|
85
|
+
* (`getExactColumnTypeLabel`) is on hover.
|
|
86
86
|
*/
|
|
87
87
|
export declare const getColumnTypeLabel: (column: SchemaColumn) => string;
|
|
88
88
|
/** Why Execute (and Show Pure) can't run, one reason a line, for a tooltip */
|
|
@@ -97,6 +97,11 @@ export declare const CUBE_SORT_COLUMN_DISABLED_REASON: {
|
|
|
97
97
|
TAKEN: string;
|
|
98
98
|
};
|
|
99
99
|
/** Why the grid's quick actions (spec §12.4) can't be used */
|
|
100
|
+
/** Why a Variant cell's Open JSON can't be used (PLAN §11.20) */
|
|
101
|
+
export declare const CUBE_JSON_DISABLED_REASON: {
|
|
102
|
+
NOT_A_ROW: string;
|
|
103
|
+
EMPTY: string;
|
|
104
|
+
};
|
|
100
105
|
export declare const CUBE_QUICK_ACTION_DISABLED_REASON: {
|
|
101
106
|
STALE_ROWS: string;
|
|
102
107
|
RUNNING: string;
|
|
@@ -180,6 +185,30 @@ export declare const PIVOT_VALUE_DISABLED_REASON: {
|
|
|
180
185
|
};
|
|
181
186
|
/** What the Pivot editor says (PLAN §11.12) */
|
|
182
187
|
export declare const PIVOT_EDITOR_NOTES: readonly ["Each picked value becomes a column, named by the value, holding the aggregation of its rows; each combination of the row columns with a picked value becomes a row. Values not picked, and combinations holding only them, are left out.", "Load values lists the pivot column's values, each once, up to 100. An empty value can't be pivoted, nor one that can't name a column; of two values that differ only in case, one can be ticked, as some databases would mix up their columns.", "Pivot runs on Snowflake, Databricks, SingleStore and DuckDB; other databases, such as H2 and Postgres, can't run it."];
|
|
188
|
+
/** Why the Explode Array editor won't pick a column (PLAN §11.20) */
|
|
189
|
+
export declare const EXPLODE_COLUMN_DISABLED_REASON: {
|
|
190
|
+
/** a column of another type than Variant */
|
|
191
|
+
readonly NOT_JSON: "not JSON";
|
|
192
|
+
};
|
|
193
|
+
/** Under the Explode Array editor (PLAN §11.20) */
|
|
194
|
+
export declare const EXPLODE_EDITOR_NOTES: readonly ["One row per element of the array, the other columns repeated on each. A row whose array is empty, or that has none, is kept once, with an empty element.", "Find arrays reads the column's first values, as Explore JSON does, and lists the arrays they hold. Keys can be typed too: none when the column is the array.", "The element is JSON: Explore JSON, in its column menu, makes columns of its fields. Explode Array runs on Snowflake, Databricks, Postgres and DuckDB."];
|
|
195
|
+
/** Explore JSON's one row per element offer, as its tooltip explains it (PLAN §11.20) */
|
|
196
|
+
export declare const CUBE_JSON_EXPLODE_OFFER_TITLE = "Adds an Explode Array node: a row for each element, the element as a new JSON column. One array at a time.";
|
|
197
|
+
/** The tooltips of a Variant column's fields in an expression editor (PLAN §11.20, V.9) */
|
|
198
|
+
export declare const CUBE_JSON_FIELDS_TITLE: {
|
|
199
|
+
readonly OPEN: "Show its fields, read from its first values just before this step: listed in Runs; a field clicked is written into the expression";
|
|
200
|
+
readonly FORMS: "Other forms of the field: counts, lists, the first element, totals, as JSON";
|
|
201
|
+
readonly EXPLODE: "One row per element is a step of its own: add Explode Array from the palette, or from Explore JSON in the grid";
|
|
202
|
+
readonly READ_AGAIN: "Read the column again";
|
|
203
|
+
readonly EVERY_ROW: "Read every value of the column, for the shape of the whole column: listed in Runs, and it can be stopped";
|
|
204
|
+
};
|
|
205
|
+
/** What a Variant column's fields were read from, in an expression editor (PLAN §11.20, V.9) */
|
|
206
|
+
export declare const getCubeJsonFieldsStatus: (sample: {
|
|
207
|
+
readonly rows: number;
|
|
208
|
+
readonly complete: boolean;
|
|
209
|
+
}) => string;
|
|
210
|
+
/** Says that Find arrays found none in the values read (PLAN §11.20) */
|
|
211
|
+
export declare const EXPLODE_NO_ARRAYS_NOTICE = "No array in the values read: type the keys to one.";
|
|
183
212
|
/** Says that Load values found no value to list (PLAN §11.12) */
|
|
184
213
|
export declare const PIVOT_NO_VALUES_NOTICE = "The pivot column has no value to list: its rows are all empty, or there are none.";
|
|
185
214
|
/** Says that the engine has more values than the Pivot editor lists (PLAN §11.12) */
|
|
@@ -224,9 +253,9 @@ export declare const EXPRESSION_FILTER_APPLY_DISABLED_REASON: Readonly<{
|
|
|
224
253
|
*/
|
|
225
254
|
export declare const EXPRESSION_FILTER_PARENTHESES_HINT = "Put each comparison in parentheses: ($x.A > 1) && ($x.B > 3).";
|
|
226
255
|
/** What the Filter by Expression editor says about conditions (PLAN §11.11) */
|
|
227
|
-
export declare const EXPRESSION_FILTER_EDITOR_NOTES: readonly ["A condition of one row, written as in Query's text mode: x | $x.SHIPPED_DATE > $x.REQUIRED_DATE. The rows for which it is true are kept, in their order.", "Put each comparison in parentheses when you combine them: ($x.A > 1) && ($x.B > 3). In Pure, &&, || and ! bind as tightly as >, <, >= and <=; == binds tighter.", "
|
|
256
|
+
export declare const EXPRESSION_FILTER_EDITOR_NOTES: readonly ["A condition of one row, written as in Query's text mode: x | $x.SHIPPED_DATE > $x.REQUIRED_DATE. The rows for which it is true are kept, in their order.", "Put each comparison in parentheses when you combine them: ($x.A > 1) && ($x.B > 3). In Pure, &&, || and ! bind as tightly as >, <, >= and <=; == binds tighter.", "An optional column, compared directly ($x.A > 6), fails the condition when it is empty and passes its negation. After ->toOne(), an empty value fails both.", "Validate (F10) checks the condition with the engine and plans it for the cube's database.", "startsWith, endsWith and contains can't take a value with a backslash (\\) yet, nor, on DuckDB, one with % or _.", "A JSON (Variant) column’s {} opens its fields, read from its first values just before this step: a field clicked is written into the condition."];
|
|
228
257
|
/** The hint after an engine error on a column that can be empty, in arithmetic (PLAN §11.7) */
|
|
229
|
-
export declare const EXTEND_TO_ONE_HINT = "
|
|
258
|
+
export declare const EXTEND_TO_ONE_HINT = "An optional column needs ->toOne() first, such as $x.QTY->toOne() + 1.";
|
|
230
259
|
/** The problem a database refusing an Extend's or a Filter by Expression's plan gives (PLAN §11.7, §11.11) */
|
|
231
260
|
export declare const getExtendPlanProblem: (databaseType: string | undefined, detail: string) => string;
|
|
232
261
|
/** Under the Rename editor's rows: the rule for new column names (PLAN §11.4) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegendCubeLabels.d.ts","sourceRoot":"","sources":["../../src/__lib__/LegendCubeLabels.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"LegendCubeLabels.d.ts","sourceRoot":"","sources":["../../src/__lib__/LegendCubeLabels.ts"],"names":[],"mappings":"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"}
|
|
@@ -110,11 +110,11 @@ const TYPE_FAMILY_LABELS = {
|
|
|
110
110
|
};
|
|
111
111
|
/**
|
|
112
112
|
* A column's type as the editors show it: the kind of value, and whether it
|
|
113
|
-
* can be empty, e.g. `Text,
|
|
114
|
-
* doesn't know, by its name. The exact type
|
|
115
|
-
* on hover.
|
|
113
|
+
* is optional (can be empty), e.g. `Text, optional`; an enumeration, or a
|
|
114
|
+
* type Cube doesn't know, by its name. The exact type
|
|
115
|
+
* (`getExactColumnTypeLabel`) is on hover.
|
|
116
116
|
*/
|
|
117
|
-
export const getColumnTypeLabel = (column) => `${TYPE_FAMILY_LABELS[column.type.family] ?? column.type.displayName}${column.nullable ? ',
|
|
117
|
+
export const getColumnTypeLabel = (column) => `${TYPE_FAMILY_LABELS[column.type.family] ?? column.type.displayName}${column.nullable ? ', optional' : ''}`;
|
|
118
118
|
const listColumns = (columns) => columns.map((column) => column.name).join(', ');
|
|
119
119
|
/** Why Execute (and Show Pure) can't run, one reason a line, for a tooltip */
|
|
120
120
|
export const formatDisabledReasons = (reasons) => reasons.map((reason) => `• ${reason}`).join('\n');
|
|
@@ -142,6 +142,11 @@ export const CUBE_SORT_COLUMN_DISABLED_REASON = {
|
|
|
142
142
|
TAKEN: 'already sorted on',
|
|
143
143
|
};
|
|
144
144
|
/** Why the grid's quick actions (spec §12.4) can't be used */
|
|
145
|
+
/** Why a Variant cell's Open JSON can't be used (PLAN §11.20) */
|
|
146
|
+
export const CUBE_JSON_DISABLED_REASON = {
|
|
147
|
+
NOT_A_ROW: "A group row's cell holds no row's document.",
|
|
148
|
+
EMPTY: 'This cell is empty.',
|
|
149
|
+
};
|
|
145
150
|
export const CUBE_QUICK_ACTION_DISABLED_REASON = {
|
|
146
151
|
STALE_ROWS: 'Execute again: these rows are from an earlier version of the query.',
|
|
147
152
|
RUNNING: 'Wait for the run to finish.',
|
|
@@ -243,6 +248,36 @@ export const PIVOT_EDITOR_NOTES = [
|
|
|
243
248
|
"Load values lists the pivot column's values, each once, up to 100. An empty value can't be pivoted, nor one that can't name a column; of two values that differ only in case, one can be ticked, as some databases would mix up their columns.",
|
|
244
249
|
"Pivot runs on Snowflake, Databricks, SingleStore and DuckDB; other databases, such as H2 and Postgres, can't run it.",
|
|
245
250
|
];
|
|
251
|
+
/** Why the Explode Array editor won't pick a column (PLAN §11.20) */
|
|
252
|
+
export const EXPLODE_COLUMN_DISABLED_REASON = {
|
|
253
|
+
/** a column of another type than Variant */
|
|
254
|
+
NOT_JSON: 'not JSON',
|
|
255
|
+
};
|
|
256
|
+
/** Under the Explode Array editor (PLAN §11.20) */
|
|
257
|
+
export const EXPLODE_EDITOR_NOTES = [
|
|
258
|
+
'One row per element of the array, the other columns repeated on each. A row whose array is empty, or that has none, is kept once, with an empty element.',
|
|
259
|
+
"Find arrays reads the column's first values, as Explore JSON does, and lists the arrays they hold. Keys can be typed too: none when the column is the array.",
|
|
260
|
+
'The element is JSON: Explore JSON, in its column menu, makes columns of its fields. Explode Array runs on Snowflake, Databricks, Postgres and DuckDB.',
|
|
261
|
+
];
|
|
262
|
+
/** Explore JSON's one row per element offer, as its tooltip explains it (PLAN §11.20) */
|
|
263
|
+
export const CUBE_JSON_EXPLODE_OFFER_TITLE = 'Adds an Explode Array node: a row for each element, the element as a new JSON column. One array at a time.';
|
|
264
|
+
/** The tooltips of a Variant column's fields in an expression editor (PLAN §11.20, V.9) */
|
|
265
|
+
export const CUBE_JSON_FIELDS_TITLE = {
|
|
266
|
+
OPEN: 'Show its fields, read from its first values just before this step: listed in Runs; a field clicked is written into the expression',
|
|
267
|
+
FORMS: 'Other forms of the field: counts, lists, the first element, totals, as JSON',
|
|
268
|
+
EXPLODE: 'One row per element is a step of its own: add Explode Array from the palette, or from Explore JSON in the grid',
|
|
269
|
+
READ_AGAIN: 'Read the column again',
|
|
270
|
+
EVERY_ROW: 'Read every value of the column, for the shape of the whole column: listed in Runs, and it can be stopped',
|
|
271
|
+
};
|
|
272
|
+
/** What a Variant column's fields were read from, in an expression editor (PLAN §11.20, V.9) */
|
|
273
|
+
export const getCubeJsonFieldsStatus = (sample) => {
|
|
274
|
+
const count = sample.rows.toLocaleString('en-US');
|
|
275
|
+
return sample.complete
|
|
276
|
+
? `All ${count} values read, just before this step`
|
|
277
|
+
: `The first ${count} values read, just before this step`;
|
|
278
|
+
};
|
|
279
|
+
/** Says that Find arrays found none in the values read (PLAN §11.20) */
|
|
280
|
+
export const EXPLODE_NO_ARRAYS_NOTICE = 'No array in the values read: type the keys to one.';
|
|
246
281
|
/** Says that Load values found no value to list (PLAN §11.12) */
|
|
247
282
|
export const PIVOT_NO_VALUES_NOTICE = 'The pivot column has no value to list: its rows are all empty, or there are none.';
|
|
248
283
|
/** Says that the engine has more values than the Pivot editor lists (PLAN §11.12) */
|
|
@@ -257,7 +292,7 @@ export const PARTITION_EDITOR_NOTES = [
|
|
|
257
292
|
"Rank, Dense Rank and Row Number need a sort column. Tied rows share a rank: Rank then skips numbers and Dense Rank doesn't. Row Number numbers every row, and rows tied on this node's sort columns get their numbers in no set order: add a sort column that tells them apart, such as an id, for a stable top N.",
|
|
258
293
|
'NTile, Percent Rank and Cumulative Distribution need a sort column too. NTile splits each partition into buckets of near-equal size, numbered from 1 in the sort order; Percent Rank and Cumulative Distribution give each row its place in its partition, from 0 to 1.',
|
|
259
294
|
"Lag and Lead read a column from the row so many rows before or after in the sort order, and are empty at the partition's edges. First and Last read it from the partition's first and last rows, the same on every row. They need a sort column, and rows tied on it may give any of them.",
|
|
260
|
-
"On ClickHouse, First and Last skip empty values, and Lag and Lead show a column's default, such as 0, at the partition's edges instead of empty, unless the column
|
|
295
|
+
"On ClickHouse, First and Last skip empty values, and Lag and Lead show a column's default, such as 0, at the partition's edges instead of empty, unless the column is optional there.",
|
|
261
296
|
"Their sort columns also make this node's other functions run. For totals over the whole partition, add another Apply Window Functions without sort columns.",
|
|
262
297
|
'Empty sort values come last when ascending and first when descending on H2; other databases may differ.',
|
|
263
298
|
"A Sort before this node doesn't order the window: its sort columns do. The rows keep the order they came in.",
|
|
@@ -280,8 +315,9 @@ export const DIFFERENCE_EDITOR_NOTES = [
|
|
|
280
315
|
/** What the Extend editor says about its expressions (PLAN §11.7) */
|
|
281
316
|
export const EXTEND_EDITOR_NOTES = [
|
|
282
317
|
'Write each expression as a lambda of one row, such as x | $x.PRICE * $x.QTY: $x.PRICE reads the column PRICE. A column can use the new columns above it.',
|
|
283
|
-
'
|
|
318
|
+
'An optional column needs ->toOne() before arithmetic, such as $x.QTY->toOne() * 2; an empty value still gives an empty result. Every new column is optional.',
|
|
284
319
|
"Validate (F10) checks the expressions with the engine, types them, and plans them for this cube's database: some functions type, but not every database runs them.",
|
|
320
|
+
'A JSON (Variant) column’s {} opens its fields, read from its first values just before this step: a field clicked is written into the expression last used, and + column adds it as a new column.',
|
|
285
321
|
];
|
|
286
322
|
/** Why the Extend editor's Apply waits (PLAN §11.7) */
|
|
287
323
|
export const EXTEND_APPLY_DISABLED_REASON = Object.freeze({
|
|
@@ -309,12 +345,13 @@ export const EXPRESSION_FILTER_PARENTHESES_HINT = 'Put each comparison in parent
|
|
|
309
345
|
export const EXPRESSION_FILTER_EDITOR_NOTES = [
|
|
310
346
|
"A condition of one row, written as in Query's text mode: x | $x.SHIPPED_DATE > $x.REQUIRED_DATE. The rows for which it is true are kept, in their order.",
|
|
311
347
|
'Put each comparison in parentheses when you combine them: ($x.A > 1) && ($x.B > 3). In Pure, &&, || and ! bind as tightly as >, <, >= and <=; == binds tighter.',
|
|
312
|
-
'
|
|
348
|
+
'An optional column, compared directly ($x.A > 6), fails the condition when it is empty and passes its negation. After ->toOne(), an empty value fails both.',
|
|
313
349
|
"Validate (F10) checks the condition with the engine and plans it for the cube's database.",
|
|
314
350
|
"startsWith, endsWith and contains can't take a value with a backslash (\\) yet, nor, on DuckDB, one with % or _.",
|
|
351
|
+
'A JSON (Variant) column’s {} opens its fields, read from its first values just before this step: a field clicked is written into the condition.',
|
|
315
352
|
];
|
|
316
353
|
/** The hint after an engine error on a column that can be empty, in arithmetic (PLAN §11.7) */
|
|
317
|
-
export const EXTEND_TO_ONE_HINT = '
|
|
354
|
+
export const EXTEND_TO_ONE_HINT = 'An optional column needs ->toOne() first, such as $x.QTY->toOne() + 1.';
|
|
318
355
|
/** The problem a database refusing an Extend's or a Filter by Expression's plan gives (PLAN §11.7, §11.11) */
|
|
319
356
|
export const getExtendPlanProblem = (databaseType, detail) => `${databaseType ? `${databaseType} can't run it` : "The database can't run it"}: ${detail}`;
|
|
320
357
|
/** Under the Rename editor's rows: the rule for new column names (PLAN §11.4) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegendCubeLabels.js","sourceRoot":"","sources":["../../src/__lib__/LegendCubeLabels.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"LegendCubeLabels.js","sourceRoot":"","sources":["../../src/__lib__/LegendCubeLabels.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2026-present, Goldman Sachs
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
/**
|
|
17
|
+
* A deployed data product's page in Legend Marketplace, at its access point
|
|
18
|
+
* group when one is given, as Legend Query links to it (PLAN §11.18)
|
|
19
|
+
*
|
|
20
|
+
* @external_application_navigation This depends on Legend Marketplace routing and is hardcoded so it's potentially brittle
|
|
21
|
+
*/
|
|
22
|
+
export declare const EXTERNAL_APPLICATION_NAVIGATION__generateCubeMarketplaceDataProductUrl: (marketplaceApplicationUrl: string, dataProductId: string, deploymentId: string, accessPointGroupId?: string | undefined) => string;
|
|
23
|
+
//# sourceMappingURL=LegendCubeNavigation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LegendCubeNavigation.d.ts","sourceRoot":"","sources":["../../src/__lib__/LegendCubeNavigation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAgBH;;;;;GAKG;AACH,eAAO,MAAM,sEAAsE,GAE/E,2BAA2B,MAAM,EACjC,eAAe,MAAM,EACrB,cAAc,MAAM,EACpB,qBAAqB,MAAM,GAAG,SAAS,KACtC,MAKC,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2026-present, Goldman Sachs
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
/**
|
|
17
|
+
* The anchor Legend Marketplace's data product viewer gives an access point
|
|
18
|
+
* group, which it reads from the URL hash on load: as Legend Query writes it
|
|
19
|
+
* (`EXTERNAL_APPLICATION_NAVIGATION__generateMarketplaceDataProductUrl`)
|
|
20
|
+
*
|
|
21
|
+
* @external_application_navigation This depends on Legend Marketplace routing and is hardcoded so it's potentially brittle
|
|
22
|
+
*/
|
|
23
|
+
const EXTERNAL_APPLICATION_NAVIGATION__generateCubeAccessPointGroupAnchor = (accessPointGroupId) => encodeURIComponent(`apg-${accessPointGroupId}`.trim().toLowerCase().replace(/\s+/gu, '-'));
|
|
24
|
+
/**
|
|
25
|
+
* A deployed data product's page in Legend Marketplace, at its access point
|
|
26
|
+
* group when one is given, as Legend Query links to it (PLAN §11.18)
|
|
27
|
+
*
|
|
28
|
+
* @external_application_navigation This depends on Legend Marketplace routing and is hardcoded so it's potentially brittle
|
|
29
|
+
*/
|
|
30
|
+
export const EXTERNAL_APPLICATION_NAVIGATION__generateCubeMarketplaceDataProductUrl = (marketplaceApplicationUrl, dataProductId, deploymentId, accessPointGroupId) => `${marketplaceApplicationUrl}/dataProduct/deployed/${dataProductId}/${deploymentId}${accessPointGroupId
|
|
31
|
+
? `#${EXTERNAL_APPLICATION_NAVIGATION__generateCubeAccessPointGroupAnchor(accessPointGroupId)}`
|
|
32
|
+
: ''}`;
|
|
33
|
+
//# sourceMappingURL=LegendCubeNavigation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LegendCubeNavigation.js","sourceRoot":"","sources":["../../src/__lib__/LegendCubeNavigation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;;;GAMG;AACH,MAAM,mEAAmE,GAAG,CAC1E,kBAA0B,EAClB,EAAE,CACV,kBAAkB,CAChB,OAAO,kBAAkB,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CACvE,CAAC;AAEJ;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sEAAsE,GACjF,CACE,yBAAiC,EACjC,aAAqB,EACrB,YAAoB,EACpB,kBAAuC,EAC/B,EAAE,CACV,GAAG,yBAAyB,yBAAyB,aAAa,IAAI,YAAY,GAChF,kBAAkB;IAChB,CAAC,CAAC,IAAI,mEAAmE,CAAC,kBAAkB,CAAC,EAAE;IAC/F,CAAC,CAAC,EACN,EAAE,CAAC"}
|
|
@@ -36,6 +36,8 @@ export declare enum LEGEND_CUBE_TEST_ID {
|
|
|
36
36
|
DRILLDOWN_SETTINGS = "legend-cube__drilldown-settings",
|
|
37
37
|
GRID_TOOLBAR = "legend-cube__grid-toolbar",
|
|
38
38
|
EXECUTION_ERROR = "legend-cube__execution-error",
|
|
39
|
-
SQL_PANEL = "legend-cube__sql-panel"
|
|
39
|
+
SQL_PANEL = "legend-cube__sql-panel",
|
|
40
|
+
JSON_VIEWER = "legend-cube__json-viewer",
|
|
41
|
+
JSON_EXPLORER = "legend-cube__json-explorer"
|
|
40
42
|
}
|
|
41
43
|
//# sourceMappingURL=LegendCubeTesting.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegendCubeTesting.d.ts","sourceRoot":"","sources":["../../src/__lib__/LegendCubeTesting.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,oBAAY,mBAAmB;IAC7B,kBAAkB,oCAAoC;IACtD,MAAM,wBAAwB;IAC9B,YAAY,8BAA8B;IAC1C,WAAW,6BAA6B;IACxC,MAAM,wBAAwB;IAC9B,WAAW,6BAA6B;IACxC,iBAAiB,mCAAmC;IACpD,OAAO,yBAAyB;IAChC,YAAY,8BAA8B;IAC1C,WAAW,6BAA6B;IACxC,aAAa,+BAA+B;IAC5C,kBAAkB,oCAAoC;IACtD,aAAa,+BAA+B;IAC5C,WAAW,6BAA6B;IACxC,gBAAgB,kCAAkC;IAClD,WAAW,6BAA6B;IACxC,aAAa,+BAA+B;IAC5C,SAAS,2BAA2B;IACpC,aAAa,+BAA+B;IAC5C,kBAAkB,oCAAoC;IACtD,YAAY,8BAA8B;IAC1C,eAAe,iCAAiC;IAChD,SAAS,2BAA2B;
|
|
1
|
+
{"version":3,"file":"LegendCubeTesting.d.ts","sourceRoot":"","sources":["../../src/__lib__/LegendCubeTesting.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,oBAAY,mBAAmB;IAC7B,kBAAkB,oCAAoC;IACtD,MAAM,wBAAwB;IAC9B,YAAY,8BAA8B;IAC1C,WAAW,6BAA6B;IACxC,MAAM,wBAAwB;IAC9B,WAAW,6BAA6B;IACxC,iBAAiB,mCAAmC;IACpD,OAAO,yBAAyB;IAChC,YAAY,8BAA8B;IAC1C,WAAW,6BAA6B;IACxC,aAAa,+BAA+B;IAC5C,kBAAkB,oCAAoC;IACtD,aAAa,+BAA+B;IAC5C,WAAW,6BAA6B;IACxC,gBAAgB,kCAAkC;IAClD,WAAW,6BAA6B;IACxC,aAAa,+BAA+B;IAC5C,SAAS,2BAA2B;IACpC,aAAa,+BAA+B;IAC5C,kBAAkB,oCAAoC;IACtD,YAAY,8BAA8B;IAC1C,eAAe,iCAAiC;IAChD,SAAS,2BAA2B;IACpC,WAAW,6BAA6B;IACxC,aAAa,+BAA+B;CAC7C"}
|
|
@@ -38,5 +38,7 @@ export var LEGEND_CUBE_TEST_ID;
|
|
|
38
38
|
LEGEND_CUBE_TEST_ID["GRID_TOOLBAR"] = "legend-cube__grid-toolbar";
|
|
39
39
|
LEGEND_CUBE_TEST_ID["EXECUTION_ERROR"] = "legend-cube__execution-error";
|
|
40
40
|
LEGEND_CUBE_TEST_ID["SQL_PANEL"] = "legend-cube__sql-panel";
|
|
41
|
+
LEGEND_CUBE_TEST_ID["JSON_VIEWER"] = "legend-cube__json-viewer";
|
|
42
|
+
LEGEND_CUBE_TEST_ID["JSON_EXPLORER"] = "legend-cube__json-explorer";
|
|
41
43
|
})(LEGEND_CUBE_TEST_ID || (LEGEND_CUBE_TEST_ID = {}));
|
|
42
44
|
//# sourceMappingURL=LegendCubeTesting.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegendCubeTesting.js","sourceRoot":"","sources":["../../src/__lib__/LegendCubeTesting.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"LegendCubeTesting.js","sourceRoot":"","sources":["../../src/__lib__/LegendCubeTesting.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,CAAN,IAAY,mBA0BX;AA1BD,WAAY,mBAAmB;IAC7B,6EAAsD,CAAA;IACtD,qDAA8B,CAAA;IAC9B,iEAA0C,CAAA;IAC1C,+DAAwC,CAAA;IACxC,qDAA8B,CAAA;IAC9B,+DAAwC,CAAA;IACxC,2EAAoD,CAAA;IACpD,uDAAgC,CAAA;IAChC,iEAA0C,CAAA;IAC1C,+DAAwC,CAAA;IACxC,mEAA4C,CAAA;IAC5C,6EAAsD,CAAA;IACtD,mEAA4C,CAAA;IAC5C,+DAAwC,CAAA;IACxC,yEAAkD,CAAA;IAClD,+DAAwC,CAAA;IACxC,mEAA4C,CAAA;IAC5C,2DAAoC,CAAA;IACpC,mEAA4C,CAAA;IAC5C,6EAAsD,CAAA;IACtD,iEAA0C,CAAA;IAC1C,uEAAgD,CAAA;IAChD,2DAAoC,CAAA;IACpC,+DAAwC,CAAA;IACxC,mEAA4C,CAAA;AAC9C,CAAC,EA1BW,mBAAmB,KAAnB,mBAAmB,QA0B9B"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2026-present, Goldman Sachs
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
/** The attribute that marks a control as a tour step's */
|
|
17
|
+
export declare const CUBE_TOUR_ANCHOR_ATTRIBUTE = "data-cube-tour";
|
|
18
|
+
export declare enum CUBE_TOUR_ANCHOR {
|
|
19
|
+
SOURCES = "sources",
|
|
20
|
+
STEPS = "steps",
|
|
21
|
+
CANVAS = "canvas",
|
|
22
|
+
RUNNING_STEP = "running-step",
|
|
23
|
+
EXECUTE = "execute",
|
|
24
|
+
GRID_MODE = "grid-mode",
|
|
25
|
+
RESULTS = "results",
|
|
26
|
+
SHOW_SQL = "show-sql",
|
|
27
|
+
RUNS = "runs",
|
|
28
|
+
CUBE_MENU = "cube-menu",
|
|
29
|
+
ADD_ITEMS = "add-items",
|
|
30
|
+
EXAMPLES = "examples",
|
|
31
|
+
VIEW = "view",
|
|
32
|
+
PAGE_MENU = "page-menu"
|
|
33
|
+
}
|
|
34
|
+
/** The props that mark a control as a tour step's */
|
|
35
|
+
export declare const cubeTourAnchor: (anchor: CUBE_TOUR_ANCHOR) => {
|
|
36
|
+
[CUBE_TOUR_ANCHOR_ATTRIBUTE]: string;
|
|
37
|
+
};
|
|
38
|
+
/** Where a step's card sits beside its controls */
|
|
39
|
+
export type CubeTourPlacement = 'top' | 'bottom' | 'left' | 'right';
|
|
40
|
+
export interface CubeTourStep {
|
|
41
|
+
readonly title: string;
|
|
42
|
+
readonly text: string;
|
|
43
|
+
/** The controls it points at; none for a card in the middle of the page */
|
|
44
|
+
readonly anchor?: CUBE_TOUR_ANCHOR | undefined;
|
|
45
|
+
readonly placement?: CubeTourPlacement | undefined;
|
|
46
|
+
}
|
|
47
|
+
/** The example the tour opens on an empty cube, where examples are offered */
|
|
48
|
+
export declare const CUBE_TOUR_EXAMPLE_ID = "northwind-top-customers";
|
|
49
|
+
export declare const CUBE_EDITOR_TOUR: readonly CubeTourStep[];
|
|
50
|
+
export declare const CUBE_TOUR_LABEL: {
|
|
51
|
+
START: string;
|
|
52
|
+
/** The empty canvas's offer */
|
|
53
|
+
OFFER: string;
|
|
54
|
+
NEXT: string;
|
|
55
|
+
BACK: string;
|
|
56
|
+
DONE: string;
|
|
57
|
+
END: string;
|
|
58
|
+
progress: (step: number, steps: number) => string;
|
|
59
|
+
/** Added to the first step when the tour opened its example */
|
|
60
|
+
EXAMPLE_OPENED: string;
|
|
61
|
+
};
|
|
62
|
+
//# sourceMappingURL=LegendCubeTour.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LegendCubeTour.d.ts","sourceRoot":"","sources":["../../src/__lib__/LegendCubeTour.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAcH,0DAA0D;AAC1D,eAAO,MAAM,0BAA0B,mBAAmB,CAAC;AAE3D,oBAAY,gBAAgB;IAC1B,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,YAAY,iBAAiB;IAC7B,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,IAAI,SAAS;IACb,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,IAAI,SAAS;IACb,SAAS,cAAc;CACxB;AAED,qDAAqD;AACrD,eAAO,MAAM,cAAc,GACzB,QAAQ,gBAAgB,KACvB;IAAE,CAAC,0BAA0B,CAAC,EAAE,MAAM,CAAA;CAEvC,CAAC;AAEH,mDAAmD;AACnD,MAAM,MAAM,iBAAiB,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;AAEpE,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,QAAQ,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAC/C,QAAQ,CAAC,SAAS,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAC;CACpD;AAED,8EAA8E;AAC9E,eAAO,MAAM,oBAAoB,4BAA4B,CAAC;AAE9D,eAAO,MAAM,gBAAgB,EAAE,SAAS,YAAY,EAyFlD,CAAC;AAEH,eAAO,MAAM,eAAe;;IAE1B,+BAA+B;;;;;;qBAMd,MAAM,SAAS,MAAM,KAAG,MAAM;IAC/C,+DAA+D;;CAGhE,CAAC"}
|