@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.
Files changed (245) hide show
  1. package/docs/adding-an-operation.md +4 -2
  2. package/docs/demo/README.md +1 -1
  3. package/docs/hosting.md +40 -9
  4. package/lib/__lib__/LegendCubeHelpText.d.ts.map +1 -1
  5. package/lib/__lib__/LegendCubeHelpText.js +3 -1
  6. package/lib/__lib__/LegendCubeHelpText.js.map +1 -1
  7. package/lib/__lib__/LegendCubeLabels.d.ts +34 -5
  8. package/lib/__lib__/LegendCubeLabels.d.ts.map +1 -1
  9. package/lib/__lib__/LegendCubeLabels.js +45 -8
  10. package/lib/__lib__/LegendCubeLabels.js.map +1 -1
  11. package/lib/__lib__/LegendCubeNavigation.d.ts +23 -0
  12. package/lib/__lib__/LegendCubeNavigation.d.ts.map +1 -0
  13. package/lib/__lib__/LegendCubeNavigation.js +33 -0
  14. package/lib/__lib__/LegendCubeNavigation.js.map +1 -0
  15. package/lib/__lib__/LegendCubeTesting.d.ts +3 -1
  16. package/lib/__lib__/LegendCubeTesting.d.ts.map +1 -1
  17. package/lib/__lib__/LegendCubeTesting.js +2 -0
  18. package/lib/__lib__/LegendCubeTesting.js.map +1 -1
  19. package/lib/__lib__/LegendCubeTour.d.ts +62 -0
  20. package/lib/__lib__/LegendCubeTour.d.ts.map +1 -0
  21. package/lib/__lib__/LegendCubeTour.js +149 -0
  22. package/lib/__lib__/LegendCubeTour.js.map +1 -0
  23. package/lib/__test-utils__/CubeExampleTestUtils.d.ts +34 -0
  24. package/lib/__test-utils__/CubeExampleTestUtils.d.ts.map +1 -0
  25. package/lib/__test-utils__/CubeExampleTestUtils.js +72 -0
  26. package/lib/__test-utils__/CubeExampleTestUtils.js.map +1 -0
  27. package/lib/__test-utils__/CubeVariantTestUtils.d.ts +16 -0
  28. package/lib/__test-utils__/CubeVariantTestUtils.d.ts.map +1 -0
  29. package/lib/__test-utils__/CubeVariantTestUtils.js +66 -0
  30. package/lib/__test-utils__/CubeVariantTestUtils.js.map +1 -0
  31. package/lib/components/CubeAddItems.d.ts.map +1 -1
  32. package/lib/components/CubeAddItems.js +2 -1
  33. package/lib/components/CubeAddItems.js.map +1 -1
  34. package/lib/components/CubeEditor.d.ts.map +1 -1
  35. package/lib/components/CubeEditor.js +11 -5
  36. package/lib/components/CubeEditor.js.map +1 -1
  37. package/lib/components/CubeFileMenu.d.ts.map +1 -1
  38. package/lib/components/CubeFileMenu.js +2 -1
  39. package/lib/components/CubeFileMenu.js.map +1 -1
  40. package/lib/components/CubeNodeIcon.d.ts.map +1 -1
  41. package/lib/components/CubeNodeIcon.js +2 -1
  42. package/lib/components/CubeNodeIcon.js.map +1 -1
  43. package/lib/components/canvas/CubeCanvas.d.ts.map +1 -1
  44. package/lib/components/canvas/CubeCanvas.js +3 -2
  45. package/lib/components/canvas/CubeCanvas.js.map +1 -1
  46. package/lib/components/canvas/CubeCanvasNode.d.ts.map +1 -1
  47. package/lib/components/canvas/CubeCanvasNode.js +4 -1
  48. package/lib/components/canvas/CubeCanvasNode.js.map +1 -1
  49. package/lib/components/dev-settings/CubeDevSettings.d.ts +2 -2
  50. package/lib/components/dev-settings/CubeDevSettings.d.ts.map +1 -1
  51. package/lib/components/dev-settings/CubeDevSettings.js +12 -8
  52. package/lib/components/dev-settings/CubeDevSettings.js.map +1 -1
  53. package/lib/components/editors/CubeColumnPicker.d.ts.map +1 -1
  54. package/lib/components/editors/CubeColumnPicker.js +3 -1
  55. package/lib/components/editors/CubeColumnPicker.js.map +1 -1
  56. package/lib/components/editors/CubeExplodeEditor.d.ts +26 -0
  57. package/lib/components/editors/CubeExplodeEditor.d.ts.map +1 -0
  58. package/lib/components/editors/CubeExplodeEditor.js +61 -0
  59. package/lib/components/editors/CubeExplodeEditor.js.map +1 -0
  60. package/lib/components/editors/CubeExpressionFilterEditor.d.ts.map +1 -1
  61. package/lib/components/editors/CubeExpressionFilterEditor.js +8 -5
  62. package/lib/components/editors/CubeExpressionFilterEditor.js.map +1 -1
  63. package/lib/components/editors/CubeExtendEditor.d.ts +0 -2
  64. package/lib/components/editors/CubeExtendEditor.d.ts.map +1 -1
  65. package/lib/components/editors/CubeExtendEditor.js +12 -11
  66. package/lib/components/editors/CubeExtendEditor.js.map +1 -1
  67. package/lib/components/editors/CubeJsonFieldsTree.d.ts +46 -0
  68. package/lib/components/editors/CubeJsonFieldsTree.d.ts.map +1 -0
  69. package/lib/components/editors/CubeJsonFieldsTree.js +93 -0
  70. package/lib/components/editors/CubeJsonFieldsTree.js.map +1 -0
  71. package/lib/components/editors/CubeNodeEditorRegistry.d.ts.map +1 -1
  72. package/lib/components/editors/CubeNodeEditorRegistry.js +3 -1
  73. package/lib/components/editors/CubeNodeEditorRegistry.js.map +1 -1
  74. package/lib/components/grid/CubeGridRegion.d.ts.map +1 -1
  75. package/lib/components/grid/CubeGridRegion.js +5 -4
  76. package/lib/components/grid/CubeGridRegion.js.map +1 -1
  77. package/lib/components/grid/CubeGridValues.d.ts +5 -3
  78. package/lib/components/grid/CubeGridValues.d.ts.map +1 -1
  79. package/lib/components/grid/CubeGridValues.js +8 -3
  80. package/lib/components/grid/CubeGridValues.js.map +1 -1
  81. package/lib/components/grid/CubeJsonExplorerDialog.d.ts +27 -0
  82. package/lib/components/grid/CubeJsonExplorerDialog.d.ts.map +1 -0
  83. package/lib/components/grid/CubeJsonExplorerDialog.js +102 -0
  84. package/lib/components/grid/CubeJsonExplorerDialog.js.map +1 -0
  85. package/lib/components/grid/CubeJsonViewerDialog.d.ts +27 -0
  86. package/lib/components/grid/CubeJsonViewerDialog.d.ts.map +1 -0
  87. package/lib/components/grid/CubeJsonViewerDialog.js +68 -0
  88. package/lib/components/grid/CubeJsonViewerDialog.js.map +1 -0
  89. package/lib/components/grid/CubeResultGrid.d.ts +15 -3
  90. package/lib/components/grid/CubeResultGrid.d.ts.map +1 -1
  91. package/lib/components/grid/CubeResultGrid.js +95 -3
  92. package/lib/components/grid/CubeResultGrid.js.map +1 -1
  93. package/lib/components/grid/CubeServerSideGrid.d.ts.map +1 -1
  94. package/lib/components/grid/CubeServerSideGrid.js +4 -2
  95. package/lib/components/grid/CubeServerSideGrid.js.map +1 -1
  96. package/lib/components/palette/CubePalette.d.ts.map +1 -1
  97. package/lib/components/palette/CubePalette.js +4 -1
  98. package/lib/components/palette/CubePalette.js.map +1 -1
  99. package/lib/components/source-picker/CubeIngestTab.d.ts +2 -2
  100. package/lib/components/source-picker/CubeIngestTab.d.ts.map +1 -1
  101. package/lib/components/source-picker/CubeIngestTab.js +19 -13
  102. package/lib/components/source-picker/CubeIngestTab.js.map +1 -1
  103. package/lib/components/tour/CubeTour.d.ts +36 -0
  104. package/lib/components/tour/CubeTour.d.ts.map +1 -0
  105. package/lib/components/tour/CubeTour.js +183 -0
  106. package/lib/components/tour/CubeTour.js.map +1 -0
  107. package/lib/index.css +1 -1
  108. package/lib/index.d.ts +1 -0
  109. package/lib/index.d.ts.map +1 -1
  110. package/lib/index.js +1 -0
  111. package/lib/index.js.map +1 -1
  112. package/lib/stores/CubeEditorState.d.ts +17 -1
  113. package/lib/stores/CubeEditorState.d.ts.map +1 -1
  114. package/lib/stores/CubeEditorState.js +35 -5
  115. package/lib/stores/CubeEditorState.js.map +1 -1
  116. package/lib/stores/CubeExamples.d.ts.map +1 -1
  117. package/lib/stores/CubeExamples.js +101 -4
  118. package/lib/stores/CubeExamples.js.map +1 -1
  119. package/lib/stores/CubeExamplesState.d.ts.map +1 -1
  120. package/lib/stores/CubeExamplesState.js +4 -1
  121. package/lib/stores/CubeExamplesState.js.map +1 -1
  122. package/lib/stores/CubeGridQuickActions.d.ts +7 -0
  123. package/lib/stores/CubeGridQuickActions.d.ts.map +1 -1
  124. package/lib/stores/CubeGridQuickActions.js +20 -11
  125. package/lib/stores/CubeGridQuickActions.js.map +1 -1
  126. package/lib/stores/CubePureText.d.ts +20 -0
  127. package/lib/stores/CubePureText.d.ts.map +1 -0
  128. package/lib/stores/CubePureText.js +24 -0
  129. package/lib/stores/CubePureText.js.map +1 -0
  130. package/lib/stores/CubeTourState.d.ts +49 -0
  131. package/lib/stores/CubeTourState.d.ts.map +1 -0
  132. package/lib/stores/CubeTourState.js +92 -0
  133. package/lib/stores/CubeTourState.js.map +1 -0
  134. package/lib/stores/LegendCubeHost.d.ts +88 -0
  135. package/lib/stores/LegendCubeHost.d.ts.map +1 -0
  136. package/lib/stores/LegendCubeHost.js +149 -0
  137. package/lib/stores/LegendCubeHost.js.map +1 -0
  138. package/lib/stores/editors/CubeExplodeDraft.d.ts +87 -0
  139. package/lib/stores/editors/CubeExplodeDraft.d.ts.map +1 -0
  140. package/lib/stores/editors/CubeExplodeDraft.js +221 -0
  141. package/lib/stores/editors/CubeExplodeDraft.js.map +1 -0
  142. package/lib/stores/editors/CubeExpressionFilterDraft.d.ts +3 -0
  143. package/lib/stores/editors/CubeExpressionFilterDraft.d.ts.map +1 -1
  144. package/lib/stores/editors/CubeExpressionFilterDraft.js +4 -0
  145. package/lib/stores/editors/CubeExpressionFilterDraft.js.map +1 -1
  146. package/lib/stores/editors/CubeExtendDraft.d.ts +9 -0
  147. package/lib/stores/editors/CubeExtendDraft.d.ts.map +1 -1
  148. package/lib/stores/editors/CubeExtendDraft.js +26 -0
  149. package/lib/stores/editors/CubeExtendDraft.js.map +1 -1
  150. package/lib/stores/editors/CubeNodeDraftRegistry.d.ts.map +1 -1
  151. package/lib/stores/editors/CubeNodeDraftRegistry.js +6 -1
  152. package/lib/stores/editors/CubeNodeDraftRegistry.js.map +1 -1
  153. package/lib/stores/fixtures/CubeSalesDuckDbModel.d.ts +1 -0
  154. package/lib/stores/fixtures/CubeSalesDuckDbModel.d.ts.map +1 -1
  155. package/lib/stores/fixtures/CubeSalesDuckDbModel.js +8 -2
  156. package/lib/stores/fixtures/CubeSalesDuckDbModel.js.map +1 -1
  157. package/lib/stores/source-picker/CubeIngestTabState.d.ts +48 -14
  158. package/lib/stores/source-picker/CubeIngestTabState.d.ts.map +1 -1
  159. package/lib/stores/source-picker/CubeIngestTabState.js +159 -62
  160. package/lib/stores/source-picker/CubeIngestTabState.js.map +1 -1
  161. package/lib/stores/variant/CubeJson.d.ts +48 -0
  162. package/lib/stores/variant/CubeJson.d.ts.map +1 -0
  163. package/lib/stores/variant/CubeJson.js +207 -0
  164. package/lib/stores/variant/CubeJson.js.map +1 -0
  165. package/lib/stores/variant/CubeJsonExplorerState.d.ts +88 -0
  166. package/lib/stores/variant/CubeJsonExplorerState.d.ts.map +1 -0
  167. package/lib/stores/variant/CubeJsonExplorerState.js +297 -0
  168. package/lib/stores/variant/CubeJsonExplorerState.js.map +1 -0
  169. package/lib/stores/variant/CubeJsonFieldsState.d.ts +83 -0
  170. package/lib/stores/variant/CubeJsonFieldsState.d.ts.map +1 -0
  171. package/lib/stores/variant/CubeJsonFieldsState.js +207 -0
  172. package/lib/stores/variant/CubeJsonFieldsState.js.map +1 -0
  173. package/lib/stores/variant/CubeJsonOffers.d.ts +76 -0
  174. package/lib/stores/variant/CubeJsonOffers.d.ts.map +1 -0
  175. package/lib/stores/variant/CubeJsonOffers.js +250 -0
  176. package/lib/stores/variant/CubeJsonOffers.js.map +1 -0
  177. package/lib/stores/variant/CubeJsonParse.d.ts +28 -0
  178. package/lib/stores/variant/CubeJsonParse.d.ts.map +1 -0
  179. package/lib/stores/variant/CubeJsonParse.js +53 -0
  180. package/lib/stores/variant/CubeJsonParse.js.map +1 -0
  181. package/lib/stores/variant/CubeJsonSampling.d.ts +41 -0
  182. package/lib/stores/variant/CubeJsonSampling.d.ts.map +1 -0
  183. package/lib/stores/variant/CubeJsonSampling.js +59 -0
  184. package/lib/stores/variant/CubeJsonSampling.js.map +1 -0
  185. package/lib/stores/variant/CubeJsonShape.d.ts +87 -0
  186. package/lib/stores/variant/CubeJsonShape.d.ts.map +1 -0
  187. package/lib/stores/variant/CubeJsonShape.js +209 -0
  188. package/lib/stores/variant/CubeJsonShape.js.map +1 -0
  189. package/lib/stores/variant/CubeJsonViewerState.d.ts +33 -0
  190. package/lib/stores/variant/CubeJsonViewerState.d.ts.map +1 -0
  191. package/lib/stores/variant/CubeJsonViewerState.js +53 -0
  192. package/lib/stores/variant/CubeJsonViewerState.js.map +1 -0
  193. package/package.json +2 -2
  194. package/src/__lib__/LegendCubeHelpText.ts +4 -0
  195. package/src/__lib__/LegendCubeLabels.ts +60 -8
  196. package/src/__lib__/LegendCubeNavigation.ts +48 -0
  197. package/src/__lib__/LegendCubeTesting.ts +2 -0
  198. package/src/__lib__/LegendCubeTour.ts +173 -0
  199. package/src/__test-utils__/CubeExampleTestUtils.ts +119 -0
  200. package/src/__test-utils__/CubeVariantTestUtils.ts +103 -0
  201. package/src/components/CubeAddItems.tsx +2 -0
  202. package/src/components/CubeEditor.tsx +15 -0
  203. package/src/components/CubeFileMenu.tsx +2 -0
  204. package/src/components/CubeNodeIcon.tsx +2 -0
  205. package/src/components/canvas/CubeCanvas.tsx +17 -1
  206. package/src/components/canvas/CubeCanvasNode.tsx +7 -0
  207. package/src/components/dev-settings/CubeDevSettings.tsx +17 -2
  208. package/src/components/editors/CubeColumnPicker.tsx +3 -0
  209. package/src/components/editors/CubeExplodeEditor.tsx +207 -0
  210. package/src/components/editors/CubeExpressionFilterEditor.tsx +25 -8
  211. package/src/components/editors/CubeExtendEditor.tsx +32 -19
  212. package/src/components/editors/CubeJsonFieldsTree.tsx +316 -0
  213. package/src/components/editors/CubeNodeEditorRegistry.ts +3 -0
  214. package/src/components/grid/CubeGridRegion.tsx +21 -3
  215. package/src/components/grid/CubeGridValues.ts +8 -3
  216. package/src/components/grid/CubeJsonExplorerDialog.tsx +304 -0
  217. package/src/components/grid/CubeJsonViewerDialog.tsx +190 -0
  218. package/src/components/grid/CubeResultGrid.tsx +144 -2
  219. package/src/components/grid/CubeServerSideGrid.tsx +13 -0
  220. package/src/components/palette/CubePalette.tsx +9 -0
  221. package/src/components/source-picker/CubeIngestTab.tsx +62 -30
  222. package/src/components/tour/CubeTour.tsx +317 -0
  223. package/src/index.ts +7 -0
  224. package/src/stores/CubeEditorState.ts +36 -5
  225. package/src/stores/CubeExamples.ts +120 -2
  226. package/src/stores/CubeExamplesState.ts +9 -1
  227. package/src/stores/CubeGridQuickActions.ts +23 -12
  228. package/src/stores/CubePureText.ts +28 -0
  229. package/src/stores/CubeTourState.ts +116 -0
  230. package/src/stores/LegendCubeHost.ts +243 -0
  231. package/src/stores/editors/CubeExplodeDraft.ts +272 -0
  232. package/src/stores/editors/CubeExpressionFilterDraft.ts +4 -0
  233. package/src/stores/editors/CubeExtendDraft.ts +29 -0
  234. package/src/stores/editors/CubeNodeDraftRegistry.ts +7 -0
  235. package/src/stores/fixtures/CubeSalesDuckDbModel.ts +8 -2
  236. package/src/stores/source-picker/CubeIngestTabState.ts +253 -102
  237. package/src/stores/variant/CubeJson.ts +229 -0
  238. package/src/stores/variant/CubeJsonExplorerState.ts +378 -0
  239. package/src/stores/variant/CubeJsonFieldsState.ts +252 -0
  240. package/src/stores/variant/CubeJsonOffers.ts +359 -0
  241. package/src/stores/variant/CubeJsonParse.ts +75 -0
  242. package/src/stores/variant/CubeJsonSampling.ts +90 -0
  243. package/src/stores/variant/CubeJsonShape.ts +279 -0
  244. package/src/stores/variant/CubeJsonViewerState.ts +59 -0
  245. package/tsconfig.json +22 -1
@@ -28,13 +28,19 @@ export interface CubeIngestTabError {
28
28
  export declare const CUBE_INGEST_TAB_MESSAGE: {
29
29
  readonly CUBE_CHANGED: "The cube changed while the data set was being added; pick it again.";
30
30
  };
31
+ /** A data set picked to add: the URN of its definition, and its name */
32
+ export interface CubeIngestPick {
33
+ readonly definitionUrn: string;
34
+ readonly dataSet: string;
35
+ }
31
36
  /**
32
37
  * The source dialog's Ingest tab (PLAN §6.7), as Data Cube's producer
33
38
  * source picks: the Mode (class), the viewer's environment for it, a
34
- * producer deployment, one of its SDLC-deployed definitions, then one or
35
- * several of its data sets, typed from what the definition declares. The
36
- * first Add saves the class, the producer deployment and the warehouse as
37
- * the cube's model; then the tab offers only that deployment's definitions.
39
+ * producer deployment, one of its SDLC-deployed definitions, or several
40
+ * ticked, then one or several of their data sets, typed from what each
41
+ * definition declares. The first Add saves the class, the producer
42
+ * deployment and the warehouse as the cube's model; then the tab offers only
43
+ * that deployment's definitions.
38
44
  */
39
45
  export declare class CubeIngestTabState implements CubeSourcePickerTab {
40
46
  readonly key = CubeSourcePickerTabKey.INGEST;
@@ -46,19 +52,22 @@ export declare class CubeIngestTabState implements CubeSourcePickerTab {
46
52
  producerDeploymentId: string | undefined;
47
53
  definitionList: CubeIngestDefinitionList | undefined;
48
54
  definitionSearch: string;
49
- definition: CubeIngestDefinitionCandidate | undefined;
50
- dataSets: readonly CubeIngestDataSet[] | undefined;
51
- /** The picked data sets, by name, in the order picked; several are added at once */
52
- dataSetNames: readonly string[];
55
+ /** The definitions opened, in the order opened: one picked alone, or several ticked */
56
+ definitions: readonly CubeIngestDefinitionCandidate[];
57
+ /** The data sets of each opened definition, by its URN, once read */
58
+ dataSetsByDefinition: ReadonlyMap<string, readonly CubeIngestDataSet[]>;
59
+ /** The picked data sets, in the order picked, of any opened definition; several are added at once */
60
+ picks: readonly CubeIngestPick[];
53
61
  /** The warehouse of a cube without one yet: the one the viewer last picked, else the default */
54
62
  warehouse: string;
55
63
  isLoadingEnvironment: boolean;
56
64
  isListingDefinitions: boolean;
57
- isDescribing: boolean;
58
65
  isAdding: boolean;
59
66
  error: CubeIngestTabError | undefined;
60
67
  /** The class the environment and producers were read for */
61
68
  private loadedEnvironmentType;
69
+ /** The definitions whose data sets are being read, by URN, each with its request */
70
+ private describing;
62
71
  /** Each counts its calls: a later call, or closing the dialog, drops an earlier answer */
63
72
  private environmentRequest;
64
73
  private definitionsRequest;
@@ -70,19 +79,33 @@ export declare class CubeIngestTabState implements CubeSourcePickerTab {
70
79
  get isAvailable(): boolean;
71
80
  /** The cube's class, producer deployment and warehouse, once its first data set is added */
72
81
  get fixedSettings(): CubeIngestSettings | undefined;
82
+ /** Whether data sets of an opened definition are being read */
83
+ get isDescribing(): boolean;
73
84
  get isBusy(): boolean;
74
85
  ownsContext(context: CubeContext): boolean;
75
86
  /** The deployment's definitions whose path or project holds the search text */
76
87
  get shownDefinitions(): readonly CubeIngestDefinitionCandidate[];
88
+ /** The definition opened last */
89
+ get definition(): CubeIngestDefinitionCandidate | undefined;
90
+ /** The data sets of the definition opened last, once read */
91
+ get dataSets(): readonly CubeIngestDataSet[] | undefined;
92
+ isDefinitionOpened(candidate: CubeIngestDefinitionCandidate): boolean;
93
+ /** The data sets of an opened definition, once read */
94
+ getDataSets(definitionUrn: string): readonly CubeIngestDataSet[] | undefined;
95
+ /** The names of the picked data sets, in the order picked */
96
+ get dataSetNames(): readonly string[];
77
97
  /** The data set picked last, the one previewed */
78
98
  get dataSetName(): string | undefined;
79
99
  /** The data set picked last, the one previewed */
80
100
  get dataSet(): CubeIngestDataSet | undefined;
101
+ /** The definition of the data set picked last */
102
+ get previewedDefinition(): CubeIngestDefinitionCandidate | undefined;
81
103
  /** The picked data sets, in the order picked */
82
104
  get pickedDataSets(): readonly (CubeIngestDataSet | undefined)[];
83
105
  /** How many data sets Add adds */
84
106
  get pickedCount(): number;
85
- isDataSetPicked(name: string): boolean;
107
+ /** Whether a data set of an opened definition, by default the one opened last, is picked */
108
+ isDataSetPicked(name: string, definitionUrn?: string | undefined): boolean;
86
109
  private findDataSet;
87
110
  get canConfirm(): boolean;
88
111
  /** The class of a cube without one yet: its environment and producers are read again */
@@ -90,12 +113,20 @@ export declare class CubeIngestTabState implements CubeSourcePickerTab {
90
113
  /** The producer deployment of a cube without one yet: its definitions are listed */
91
114
  selectProducer(deploymentId: string | undefined): void;
92
115
  setDefinitionSearch(search: string): void;
93
- /** Picks a definition and reads its data sets */
116
+ /**
117
+ * Opens a definition alone, in place of any opened, and reads its data
118
+ * sets; one already opened among others keeps its data sets and picks
119
+ */
94
120
  selectDefinition(candidate: CubeIngestDefinitionCandidate | undefined): void;
121
+ /**
122
+ * Opens a definition beside those opened, to add data sets of several at
123
+ * once, and reads its data sets; or closes it, its picks dropped
124
+ */
125
+ toggleDefinition(candidate: CubeIngestDefinitionCandidate): void;
95
126
  /** Picks a data set that can be added, alone, in place of any picked */
96
- selectDataSet(name: string): void;
127
+ selectDataSet(name: string, definitionUrn?: string | undefined): void;
97
128
  /** Adds a data set that can be added to the picked ones, or takes it out */
98
- toggleDataSet(name: string): void;
129
+ toggleDataSet(name: string, definitionUrn?: string | undefined): void;
99
130
  /** The warehouse of a cube without one yet; a saved cube's is kept */
100
131
  setWarehouse(warehouse: string): void;
101
132
  /** Reads again the step that failed: the environment, the definitions or the data sets */
@@ -111,7 +142,7 @@ export declare class CubeIngestTabState implements CubeSourcePickerTab {
111
142
  loadEnvironment(): GeneratorFn<void>;
112
143
  /** Lists the producer deployment's definitions */
113
144
  listDefinitions(): GeneratorFn<void>;
114
- /** Reads the definition's data sets */
145
+ /** Reads an opened definition's data sets */
115
146
  describeDefinition(candidate: CubeIngestDefinitionCandidate): GeneratorFn<void>;
116
147
  /**
117
148
  * Adds the picked data sets, already typed, in one undo step; the first
@@ -123,5 +154,8 @@ export declare class CubeIngestTabState implements CubeSourcePickerTab {
123
154
  private resetEnvironment;
124
155
  private resetDefinitions;
125
156
  private resetDefinition;
157
+ private openDefinition;
158
+ /** Closes the opened definitions given, their data sets, reads and picks dropped */
159
+ private closeDefinitions;
126
160
  }
127
161
  //# sourceMappingURL=CubeIngestTabState.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CubeIngestTabState.d.ts","sourceRoot":"","sources":["../../../src/stores/source-picker/CubeIngestTabState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CubeIngestTabState.d.ts","sourceRoot":"","sources":["../../../src/stores/source-picker/CubeIngestTabState.ts"],"names":[],"mappings":"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"}
@@ -34,10 +34,11 @@ const toError = (error) => {
34
34
  /**
35
35
  * The source dialog's Ingest tab (PLAN §6.7), as Data Cube's producer
36
36
  * source picks: the Mode (class), the viewer's environment for it, a
37
- * producer deployment, one of its SDLC-deployed definitions, then one or
38
- * several of its data sets, typed from what the definition declares. The
39
- * first Add saves the class, the producer deployment and the warehouse as
40
- * the cube's model; then the tab offers only that deployment's definitions.
37
+ * producer deployment, one of its SDLC-deployed definitions, or several
38
+ * ticked, then one or several of their data sets, typed from what each
39
+ * definition declares. The first Add saves the class, the producer
40
+ * deployment and the warehouse as the cube's model; then the tab offers only
41
+ * that deployment's definitions.
41
42
  */
42
43
  export class CubeIngestTabState {
43
44
  key = CubeSourcePickerTabKey.INGEST;
@@ -49,19 +50,22 @@ export class CubeIngestTabState {
49
50
  producerDeploymentId;
50
51
  definitionList;
51
52
  definitionSearch = '';
52
- definition;
53
- dataSets;
54
- /** The picked data sets, by name, in the order picked; several are added at once */
55
- dataSetNames = [];
53
+ /** The definitions opened, in the order opened: one picked alone, or several ticked */
54
+ definitions = [];
55
+ /** The data sets of each opened definition, by its URN, once read */
56
+ dataSetsByDefinition = new Map();
57
+ /** The picked data sets, in the order picked, of any opened definition; several are added at once */
58
+ picks = [];
56
59
  /** The warehouse of a cube without one yet: the one the viewer last picked, else the default */
57
60
  warehouse = CUBE_DEFAULT_CONSUMER_WAREHOUSE;
58
61
  isLoadingEnvironment = false;
59
62
  isListingDefinitions = false;
60
- isDescribing = false;
61
63
  isAdding = false;
62
64
  error;
63
65
  /** The class the environment and producers were read for */
64
66
  loadedEnvironmentType;
67
+ /** The definitions whose data sets are being read, by URN, each with its request */
68
+ describing = new Map();
65
69
  /** Each counts its calls: a later call, or closing the dialog, drops an earlier answer */
66
70
  environmentRequest = 0;
67
71
  definitionsRequest = 0;
@@ -75,18 +79,23 @@ export class CubeIngestTabState {
75
79
  producerDeploymentId: observable,
76
80
  definitionList: observable.ref,
77
81
  definitionSearch: observable,
78
- definition: observable.ref,
79
- dataSets: observable.ref,
80
- dataSetNames: observable.ref,
82
+ definitions: observable.ref,
83
+ dataSetsByDefinition: observable.ref,
84
+ picks: observable.ref,
85
+ definition: computed,
86
+ dataSets: computed,
87
+ dataSetNames: computed,
81
88
  dataSetName: computed,
82
89
  pickedDataSets: computed,
90
+ previewedDefinition: computed,
83
91
  warehouse: observable,
84
92
  isLoadingEnvironment: observable,
85
93
  isListingDefinitions: observable,
86
- isDescribing: observable,
94
+ isDescribing: computed,
87
95
  isAdding: observable,
88
96
  error: observable.ref,
89
97
  loadedEnvironmentType: observable,
98
+ describing: observable.ref,
90
99
  fixedSettings: computed,
91
100
  isAvailable: computed,
92
101
  isBusy: computed,
@@ -97,6 +106,7 @@ export class CubeIngestTabState {
97
106
  selectProducer: action,
98
107
  setDefinitionSearch: action,
99
108
  selectDefinition: action,
109
+ toggleDefinition: action,
100
110
  selectDataSet: action,
101
111
  toggleDataSet: action,
102
112
  setWarehouse: action,
@@ -122,6 +132,10 @@ export class CubeIngestTabState {
122
132
  const model = this.editorState.document.context?.model;
123
133
  return model ? getCubeIngestSettings(model) : undefined;
124
134
  }
135
+ /** Whether data sets of an opened definition are being read */
136
+ get isDescribing() {
137
+ return this.describing.size > 0;
138
+ }
125
139
  get isBusy() {
126
140
  return (this.isLoadingEnvironment ||
127
141
  this.isListingDefinitions ||
@@ -139,29 +153,59 @@ export class CubeIngestTabState {
139
153
  `${candidate.groupId}:${candidate.artifactId}`,
140
154
  ].some((text) => text.toLowerCase().includes(search)));
141
155
  }
156
+ /** The definition opened last */
157
+ get definition() {
158
+ return this.definitions.at(-1);
159
+ }
160
+ /** The data sets of the definition opened last, once read */
161
+ get dataSets() {
162
+ const { definition } = this;
163
+ return definition
164
+ ? this.dataSetsByDefinition.get(definition.urn)
165
+ : undefined;
166
+ }
167
+ isDefinitionOpened(candidate) {
168
+ return this.definitions.some((each) => each.urn === candidate.urn);
169
+ }
170
+ /** The data sets of an opened definition, once read */
171
+ getDataSets(definitionUrn) {
172
+ return this.dataSetsByDefinition.get(definitionUrn);
173
+ }
174
+ /** The names of the picked data sets, in the order picked */
175
+ get dataSetNames() {
176
+ return this.picks.map((pick) => pick.dataSet);
177
+ }
142
178
  /** The data set picked last, the one previewed */
143
179
  get dataSetName() {
144
- return this.dataSetNames.at(-1);
180
+ return this.picks.at(-1)?.dataSet;
145
181
  }
146
182
  /** The data set picked last, the one previewed */
147
183
  get dataSet() {
148
- return this.findDataSet(this.dataSetName);
184
+ return this.findDataSet(this.picks.at(-1));
185
+ }
186
+ /** The definition of the data set picked last */
187
+ get previewedDefinition() {
188
+ const urn = this.picks.at(-1)?.definitionUrn;
189
+ return this.definitions.find((each) => each.urn === urn);
149
190
  }
150
191
  /** The picked data sets, in the order picked */
151
192
  get pickedDataSets() {
152
- return this.dataSetNames.map((name) => this.findDataSet(name));
193
+ return this.picks.map((pick) => this.findDataSet(pick));
153
194
  }
154
195
  /** How many data sets Add adds */
155
196
  get pickedCount() {
156
- return this.dataSetNames.length;
197
+ return this.picks.length;
157
198
  }
158
- isDataSetPicked(name) {
159
- return this.dataSetNames.includes(name);
199
+ /** Whether a data set of an opened definition, by default the one opened last, is picked */
200
+ isDataSetPicked(name, definitionUrn = this.definition?.urn) {
201
+ return this.picks.some((pick) => pick.definitionUrn === definitionUrn && pick.dataSet === name);
160
202
  }
161
- findDataSet(name) {
162
- return name === undefined
163
- ? undefined
164
- : this.dataSets?.find((each) => each.name === name);
203
+ findDataSet(pick) {
204
+ return pick
205
+ ? this.dataSetsByDefinition
206
+ .get(pick.definitionUrn)
207
+ ?.find((each) => each.name === pick.dataSet)
208
+ : undefined;
165
209
  }
166
210
  get canConfirm() {
167
211
  return (this.isAvailable &&
@@ -169,7 +213,6 @@ export class CubeIngestTabState {
169
213
  !this.isDescribing &&
170
214
  !this.isAdding &&
171
215
  this.producerDeploymentId !== undefined &&
172
- this.definition !== undefined &&
173
216
  this.pickedDataSets.length > 0 &&
174
217
  this.pickedDataSets.every((each) => each?.isPickable === true) &&
175
218
  this.warehouse.trim() !== '');
@@ -197,30 +240,53 @@ export class CubeIngestTabState {
197
240
  setDefinitionSearch(search) {
198
241
  this.definitionSearch = search;
199
242
  }
200
- /** Picks a definition and reads its data sets */
243
+ /**
244
+ * Opens a definition alone, in place of any opened, and reads its data
245
+ * sets; one already opened among others keeps its data sets and picks
246
+ */
201
247
  selectDefinition(candidate) {
202
- if (candidate?.urn === this.definition?.urn) {
248
+ if (this.definitions.length <= 1 &&
249
+ candidate?.urn === this.definition?.urn) {
250
+ return;
251
+ }
252
+ if (candidate && this.isDefinitionOpened(candidate)) {
253
+ this.closeDefinitions((each) => each.urn !== candidate.urn);
203
254
  return;
204
255
  }
205
256
  this.resetDefinition();
206
- this.definition = candidate;
207
257
  if (candidate) {
208
- flowResult(this.describeDefinition(candidate)).catch(this.editorState.host.applicationStore.alertUnhandledError);
258
+ this.openDefinition(candidate);
259
+ }
260
+ }
261
+ /**
262
+ * Opens a definition beside those opened, to add data sets of several at
263
+ * once, and reads its data sets; or closes it, its picks dropped
264
+ */
265
+ toggleDefinition(candidate) {
266
+ if (this.isDefinitionOpened(candidate)) {
267
+ this.closeDefinitions((each) => each.urn === candidate.urn);
268
+ }
269
+ else {
270
+ this.openDefinition(candidate);
209
271
  }
210
272
  }
211
273
  /** Picks a data set that can be added, alone, in place of any picked */
212
- selectDataSet(name) {
213
- if (this.findDataSet(name)?.isPickable) {
214
- this.dataSetNames = [name];
274
+ selectDataSet(name, definitionUrn = this.definition?.urn) {
275
+ if (definitionUrn !== undefined &&
276
+ this.findDataSet({ definitionUrn, dataSet: name })?.isPickable) {
277
+ this.picks = [{ definitionUrn, dataSet: name }];
215
278
  }
216
279
  }
217
280
  /** Adds a data set that can be added to the picked ones, or takes it out */
218
- toggleDataSet(name) {
219
- if (this.isDataSetPicked(name)) {
220
- this.dataSetNames = this.dataSetNames.filter((each) => each !== name);
281
+ toggleDataSet(name, definitionUrn = this.definition?.urn) {
282
+ if (definitionUrn === undefined) {
283
+ return;
284
+ }
285
+ if (this.isDataSetPicked(name, definitionUrn)) {
286
+ this.picks = this.picks.filter((pick) => pick.definitionUrn !== definitionUrn || pick.dataSet !== name);
221
287
  }
222
- else if (this.findDataSet(name)?.isPickable) {
223
- this.dataSetNames = [...this.dataSetNames, name];
288
+ else if (this.findDataSet({ definitionUrn, dataSet: name })?.isPickable) {
289
+ this.picks = [...this.picks, { definitionUrn, dataSet: name }];
224
290
  }
225
291
  }
226
292
  /** The warehouse of a cube without one yet; a saved cube's is kept */
@@ -240,8 +306,13 @@ export class CubeIngestTabState {
240
306
  !this.definitionList) {
241
307
  flowResult(this.listDefinitions()).catch(alertUnhandledError);
242
308
  }
243
- else if (this.definition && !this.dataSets) {
244
- flowResult(this.describeDefinition(this.definition)).catch(alertUnhandledError);
309
+ else {
310
+ this.definitions
311
+ .filter((each) => !this.dataSetsByDefinition.has(each.urn) &&
312
+ !this.describing.has(each.urn))
313
+ .forEach((each) => {
314
+ flowResult(this.describeDefinition(each)).catch(alertUnhandledError);
315
+ });
245
316
  }
246
317
  }
247
318
  /**
@@ -285,10 +356,8 @@ export class CubeIngestTabState {
285
356
  this.isListingDefinitions = false;
286
357
  this.isAdding = false;
287
358
  // a definition whose data sets haven't arrived would show none
288
- if (this.definition && !this.dataSets) {
289
- this.resetDefinition();
290
- }
291
- this.isDescribing = false;
359
+ this.describing = new Map();
360
+ this.closeDefinitions((each) => !this.dataSetsByDefinition.has(each.urn));
292
361
  // read again on reopening
293
362
  if (!this.environment || !this.producers) {
294
363
  this.loadedEnvironmentType = undefined;
@@ -370,33 +439,44 @@ export class CubeIngestTabState {
370
439
  }
371
440
  }
372
441
  }
373
- /** Reads the definition's data sets */
442
+ /** Reads an opened definition's data sets */
374
443
  *describeDefinition(candidate) {
375
444
  const { catalog } = this;
376
445
  if (!catalog) {
377
446
  return;
378
447
  }
379
448
  const request = ++this.describeRequest;
380
- this.isDescribing = true;
449
+ this.describing = new Map([...this.describing, [candidate.urn, request]]);
381
450
  this.error = undefined;
451
+ // an answer counts while the definition is open and this is its last read
452
+ const isCurrent = () => this.describing.get(candidate.urn) === request;
382
453
  try {
383
454
  const dataSets = (yield catalog.describe(candidate.urn, this.environmentType));
384
- if (request === this.describeRequest) {
385
- this.dataSets = dataSets;
386
- // the only data set that can be added is picked
455
+ if (isCurrent()) {
456
+ this.dataSetsByDefinition = new Map([
457
+ ...this.dataSetsByDefinition,
458
+ [candidate.urn, dataSets],
459
+ ]);
460
+ // the only data set of it that can be added is picked
387
461
  const [onlyPickable, ...otherPickable] = dataSets.filter((each) => each.isPickable);
388
- this.dataSetNames =
389
- onlyPickable && !otherPickable.length ? [onlyPickable.name] : [];
462
+ if (onlyPickable &&
463
+ !otherPickable.length &&
464
+ !this.isDataSetPicked(onlyPickable.name, candidate.urn)) {
465
+ this.picks = [
466
+ ...this.picks,
467
+ { definitionUrn: candidate.urn, dataSet: onlyPickable.name },
468
+ ];
469
+ }
390
470
  }
391
471
  }
392
472
  catch (error) {
393
- if (request === this.describeRequest) {
473
+ if (isCurrent()) {
394
474
  this.error = toError(error);
395
475
  }
396
476
  }
397
477
  finally {
398
- if (request === this.describeRequest) {
399
- this.isDescribing = false;
478
+ if (isCurrent()) {
479
+ this.describing = new Map([...this.describing].filter(([urn]) => urn !== candidate.urn));
400
480
  }
401
481
  }
402
482
  }
@@ -411,8 +491,11 @@ export class CubeIngestTabState {
411
491
  return false;
412
492
  }
413
493
  const { editorState } = this;
414
- const definition = this.definition;
415
- const picked = this.pickedDataSets;
494
+ // each picked data set with its definition, as picked
495
+ const picked = this.picks.map((pick) => ({
496
+ definition: this.definitions.find((each) => each.urn === pick.definitionUrn),
497
+ dataSet: this.findDataSet(pick),
498
+ }));
416
499
  const producerDeploymentId = this.producerDeploymentId;
417
500
  const warehouse = this.warehouse.trim();
418
501
  const request = ++this.confirmRequest;
@@ -426,7 +509,7 @@ export class CubeIngestTabState {
426
509
  }
427
510
  const { document } = editorState;
428
511
  const ids = generateCubeNodeIds(document.query, IngestDatasetSource.TYPE, picked.length);
429
- const nodes = picked.map((dataSet, index) => INGEST_DATASET_SOURCE_DEFINITION.resolve(INGEST_DATASET_SOURCE_DEFINITION.fromCoordinates(ids[index], {
512
+ const nodes = picked.map(({ definition, dataSet }, index) => INGEST_DATASET_SOURCE_DEFINITION.resolve(INGEST_DATASET_SOURCE_DEFINITION.fromCoordinates(ids[index], {
430
513
  ingestDefinitionUrn: definition.urn,
431
514
  ingestDefinition: definition.definition,
432
515
  dataSet: dataSet.name,
@@ -465,8 +548,8 @@ export class CubeIngestTabState {
465
548
  if (!settings) {
466
549
  editorState.dataProductRuntime.remember(warehouse);
467
550
  }
468
- // the definition stays open, to add others of its data sets
469
- this.dataSetNames = [];
551
+ // the definitions stay open, to add others of their data sets
552
+ this.picks = [];
470
553
  return true;
471
554
  }
472
555
  catch (error) {
@@ -500,11 +583,25 @@ export class CubeIngestTabState {
500
583
  this.resetDefinition();
501
584
  }
502
585
  resetDefinition() {
503
- this.describeRequest++;
504
- this.isDescribing = false;
505
- this.definition = undefined;
506
- this.dataSets = undefined;
507
- this.dataSetNames = [];
586
+ this.describing = new Map();
587
+ this.definitions = [];
588
+ this.dataSetsByDefinition = new Map();
589
+ this.picks = [];
590
+ }
591
+ openDefinition(candidate) {
592
+ this.definitions = [...this.definitions, candidate];
593
+ flowResult(this.describeDefinition(candidate)).catch(this.editorState.host.applicationStore.alertUnhandledError);
594
+ }
595
+ /** Closes the opened definitions given, their data sets, reads and picks dropped */
596
+ closeDefinitions(closes) {
597
+ const closed = new Set(this.definitions.filter(closes).map((each) => each.urn));
598
+ if (!closed.size) {
599
+ return;
600
+ }
601
+ this.definitions = this.definitions.filter((each) => !closed.has(each.urn));
602
+ this.dataSetsByDefinition = new Map([...this.dataSetsByDefinition].filter(([urn]) => !closed.has(urn)));
603
+ this.describing = new Map([...this.describing].filter(([urn]) => !closed.has(urn)));
604
+ this.picks = this.picks.filter((pick) => !closed.has(pick.definitionUrn));
508
605
  }
509
606
  }
510
607
  //# sourceMappingURL=CubeIngestTabState.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CubeIngestTabState.js","sourceRoot":"","sources":["../../../src/stores/source-picker/CubeIngestTabState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CubeIngestTabState.js","sourceRoot":"","sources":["../../../src/stores/source-picker/CubeIngestTabState.ts"],"names":[],"mappings":"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"}