@blazes/data-visualization 0.0.0-stage → 1.0.0-alpha.0

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 (170) hide show
  1. package/README.md +238 -2
  2. package/dist/.vite/manifest.json +129 -0
  3. package/dist/PivotTableS2Renderer-C-Urwhuv.js +109 -0
  4. package/dist/PivotTableS2Renderer-C-Urwhuv.js.map +1 -0
  5. package/dist/WordCloudRenderer-7tzJz57a.js +96 -0
  6. package/dist/WordCloudRenderer-7tzJz57a.js.map +1 -0
  7. package/dist/core/adapter/index.d.ts +5 -0
  8. package/dist/core/adapter/index.d.ts.map +1 -0
  9. package/dist/core/adapter/standard-adapters.d.ts +211 -0
  10. package/dist/core/adapter/standard-adapters.d.ts.map +1 -0
  11. package/dist/core/adapter/standard-definitions.d.ts +230 -0
  12. package/dist/core/adapter/standard-definitions.d.ts.map +1 -0
  13. package/dist/core/adapter/types.d.ts +44 -0
  14. package/dist/core/adapter/types.d.ts.map +1 -0
  15. package/dist/core/adapter/view-models.d.ts +101 -0
  16. package/dist/core/adapter/view-models.d.ts.map +1 -0
  17. package/dist/core/config/config-validator.d.ts +27 -0
  18. package/dist/core/config/config-validator.d.ts.map +1 -0
  19. package/dist/core/config/dashboard-config-schema.d.ts +1360 -0
  20. package/dist/core/config/dashboard-config-schema.d.ts.map +1 -0
  21. package/dist/core/config/dashboard-config.d.ts +410 -0
  22. package/dist/core/config/dashboard-config.d.ts.map +1 -0
  23. package/dist/core/config/index.d.ts +9 -0
  24. package/dist/core/config/index.d.ts.map +1 -0
  25. package/dist/core/config/json-value.d.ts +5 -0
  26. package/dist/core/config/json-value.d.ts.map +1 -0
  27. package/dist/core/config/runtime-schema.d.ts +28 -0
  28. package/dist/core/config/runtime-schema.d.ts.map +1 -0
  29. package/dist/core/config/schema-version.d.ts +3 -0
  30. package/dist/core/config/schema-version.d.ts.map +1 -0
  31. package/dist/core/config/serializable.d.ts +6 -0
  32. package/dist/core/config/serializable.d.ts.map +1 -0
  33. package/dist/core/config/value-path.d.ts +2 -0
  34. package/dist/core/config/value-path.d.ts.map +1 -0
  35. package/dist/core/dataset/dataset-runner.d.ts +28 -0
  36. package/dist/core/dataset/dataset-runner.d.ts.map +1 -0
  37. package/dist/core/dataset/index.d.ts +4 -0
  38. package/dist/core/dataset/index.d.ts.map +1 -0
  39. package/dist/core/dataset/normalize.d.ts +8 -0
  40. package/dist/core/dataset/normalize.d.ts.map +1 -0
  41. package/dist/core/dataset/types.d.ts +37 -0
  42. package/dist/core/dataset/types.d.ts.map +1 -0
  43. package/dist/core/export/csv.d.ts +11 -0
  44. package/dist/core/export/csv.d.ts.map +1 -0
  45. package/dist/core/export/index.d.ts +2 -0
  46. package/dist/core/export/index.d.ts.map +1 -0
  47. package/dist/core/formatter/index.d.ts +2 -0
  48. package/dist/core/formatter/index.d.ts.map +1 -0
  49. package/dist/core/formatter/value-formatter.d.ts +14 -0
  50. package/dist/core/formatter/value-formatter.d.ts.map +1 -0
  51. package/dist/core/index.d.ts +11 -0
  52. package/dist/core/index.d.ts.map +1 -0
  53. package/dist/core/index.js +111 -0
  54. package/dist/core/index.js.map +1 -0
  55. package/dist/core/provider/data-provider.d.ts +18 -0
  56. package/dist/core/provider/data-provider.d.ts.map +1 -0
  57. package/dist/core/provider/index.d.ts +5 -0
  58. package/dist/core/provider/index.d.ts.map +1 -0
  59. package/dist/core/provider/request-executor.d.ts +48 -0
  60. package/dist/core/provider/request-executor.d.ts.map +1 -0
  61. package/dist/core/provider/request-value-codec.d.ts +15 -0
  62. package/dist/core/provider/request-value-codec.d.ts.map +1 -0
  63. package/dist/core/provider/resolve-request-input.d.ts +12 -0
  64. package/dist/core/provider/resolve-request-input.d.ts.map +1 -0
  65. package/dist/core/registry/core-registries.d.ts +15 -0
  66. package/dist/core/registry/core-registries.d.ts.map +1 -0
  67. package/dist/core/registry/index.d.ts +4 -0
  68. package/dist/core/registry/index.d.ts.map +1 -0
  69. package/dist/core/registry/plugin-registry.d.ts +28 -0
  70. package/dist/core/registry/plugin-registry.d.ts.map +1 -0
  71. package/dist/core/registry/register-standard.d.ts +4 -0
  72. package/dist/core/registry/register-standard.d.ts.map +1 -0
  73. package/dist/core/runtime/dashboard-data-runtime.d.ts +26 -0
  74. package/dist/core/runtime/dashboard-data-runtime.d.ts.map +1 -0
  75. package/dist/core/runtime/dashboard-runtime.d.ts +458 -0
  76. package/dist/core/runtime/dashboard-runtime.d.ts.map +1 -0
  77. package/dist/core/runtime/dependency-graph.d.ts +11 -0
  78. package/dist/core/runtime/dependency-graph.d.ts.map +1 -0
  79. package/dist/core/runtime/index.d.ts +5 -0
  80. package/dist/core/runtime/index.d.ts.map +1 -0
  81. package/dist/core/runtime/types.d.ts +47 -0
  82. package/dist/core/runtime/types.d.ts.map +1 -0
  83. package/dist/core/telemetry/index.d.ts +2 -0
  84. package/dist/core/telemetry/index.d.ts.map +1 -0
  85. package/dist/core/telemetry/telemetry.d.ts +15 -0
  86. package/dist/core/telemetry/telemetry.d.ts.map +1 -0
  87. package/dist/core/variable/dashboard-context.d.ts +22 -0
  88. package/dist/core/variable/dashboard-context.d.ts.map +1 -0
  89. package/dist/core/variable/index.d.ts +3 -0
  90. package/dist/core/variable/index.d.ts.map +1 -0
  91. package/dist/core/variable/url-state.d.ts +17 -0
  92. package/dist/core/variable/url-state.d.ts.map +1 -0
  93. package/dist/csv-Dyrr2yMA.js +254 -0
  94. package/dist/csv-Dyrr2yMA.js.map +1 -0
  95. package/dist/dashboard-runtime-8a-9P8Ku.js +1540 -0
  96. package/dist/dashboard-runtime-8a-9P8Ku.js.map +1 -0
  97. package/dist/experimental/s2/PivotTableS2Renderer.vue.d.ts +18 -0
  98. package/dist/experimental/s2/PivotTableS2Renderer.vue.d.ts.map +1 -0
  99. package/dist/experimental/s2/index.d.ts +13 -0
  100. package/dist/experimental/s2/index.d.ts.map +1 -0
  101. package/dist/experimental/s2/index.js +66 -0
  102. package/dist/experimental/s2/index.js.map +1 -0
  103. package/dist/experimental/s2/pivot-table-s2.d.ts +23 -0
  104. package/dist/experimental/s2/pivot-table-s2.d.ts.map +1 -0
  105. package/dist/index.css +1 -0
  106. package/dist/index.d.ts +2 -0
  107. package/dist/index.d.ts.map +1 -0
  108. package/dist/index.js +111 -0
  109. package/dist/index.js.map +1 -0
  110. package/dist/renderers/word-cloud/WordCloudRenderer.vue.d.ts +20 -0
  111. package/dist/renderers/word-cloud/WordCloudRenderer.vue.d.ts.map +1 -0
  112. package/dist/renderers/word-cloud/index.d.ts +8 -0
  113. package/dist/renderers/word-cloud/index.d.ts.map +1 -0
  114. package/dist/renderers/word-cloud/index.js +17 -0
  115. package/dist/renderers/word-cloud/index.js.map +1 -0
  116. package/dist/runtime-schema-BO2qLlvE.js +580 -0
  117. package/dist/runtime-schema-BO2qLlvE.js.map +1 -0
  118. package/dist/serializable-DOOpLZyk.js +36 -0
  119. package/dist/serializable-DOOpLZyk.js.map +1 -0
  120. package/dist/standard-definitions-DHtaLAf1.js +351 -0
  121. package/dist/standard-definitions-DHtaLAf1.js.map +1 -0
  122. package/dist/value-formatter-D5QmLSMG.js +47 -0
  123. package/dist/value-formatter-D5QmLSMG.js.map +1 -0
  124. package/dist/visual-theme-DH-k3L51.js +23 -0
  125. package/dist/visual-theme-DH-k3L51.js.map +1 -0
  126. package/dist/vue/components/DashboardFilterBar.vue.d.ts +23 -0
  127. package/dist/vue/components/DashboardFilterBar.vue.d.ts.map +1 -0
  128. package/dist/vue/components/DashboardPanel.vue.d.ts +39 -0
  129. package/dist/vue/components/DashboardPanel.vue.d.ts.map +1 -0
  130. package/dist/vue/components/DashboardRenderer.vue.d.ts +57 -0
  131. package/dist/vue/components/DashboardRenderer.vue.d.ts.map +1 -0
  132. package/dist/vue/components/index.d.ts +4 -0
  133. package/dist/vue/components/index.d.ts.map +1 -0
  134. package/dist/vue/composables/index.d.ts +2 -0
  135. package/dist/vue/composables/index.d.ts.map +1 -0
  136. package/dist/vue/composables/use-dashboard-runtime.d.ts +17 -0
  137. package/dist/vue/composables/use-dashboard-runtime.d.ts.map +1 -0
  138. package/dist/vue/export/browser-download.d.ts +3 -0
  139. package/dist/vue/export/browser-download.d.ts.map +1 -0
  140. package/dist/vue/export/index.d.ts +2 -0
  141. package/dist/vue/export/index.d.ts.map +1 -0
  142. package/dist/vue/index.d.ts +7 -0
  143. package/dist/vue/index.d.ts.map +1 -0
  144. package/dist/vue/index.js +1064 -0
  145. package/dist/vue/index.js.map +1 -0
  146. package/dist/vue/registry/index.d.ts +3 -0
  147. package/dist/vue/registry/index.d.ts.map +1 -0
  148. package/dist/vue/registry/register-standard.d.ts +3 -0
  149. package/dist/vue/registry/register-standard.d.ts.map +1 -0
  150. package/dist/vue/registry/renderer-registry.d.ts +12 -0
  151. package/dist/vue/registry/renderer-registry.d.ts.map +1 -0
  152. package/dist/vue/renderers/BarRenderer.vue.d.ts +24 -0
  153. package/dist/vue/renderers/BarRenderer.vue.d.ts.map +1 -0
  154. package/dist/vue/renderers/LineRenderer.vue.d.ts +24 -0
  155. package/dist/vue/renderers/LineRenderer.vue.d.ts.map +1 -0
  156. package/dist/vue/renderers/MetricRenderer.vue.d.ts +17 -0
  157. package/dist/vue/renderers/MetricRenderer.vue.d.ts.map +1 -0
  158. package/dist/vue/renderers/PieRenderer.vue.d.ts +24 -0
  159. package/dist/vue/renderers/PieRenderer.vue.d.ts.map +1 -0
  160. package/dist/vue/renderers/TableRenderer.vue.d.ts +21 -0
  161. package/dist/vue/renderers/TableRenderer.vue.d.ts.map +1 -0
  162. package/dist/vue/renderers/chart-format.d.ts +8 -0
  163. package/dist/vue/renderers/chart-format.d.ts.map +1 -0
  164. package/dist/vue/renderers/index.d.ts +7 -0
  165. package/dist/vue/renderers/index.d.ts.map +1 -0
  166. package/dist/vue/theme/index.d.ts +2 -0
  167. package/dist/vue/theme/index.d.ts.map +1 -0
  168. package/dist/vue/theme/visual-theme.d.ts +46 -0
  169. package/dist/vue/theme/visual-theme.d.ts.map +1 -0
  170. package/package.json +129 -4
@@ -0,0 +1,211 @@
1
+ import type { BarBinding, LineBinding, MetricBinding, PieBinding, TableBinding, VisualizationEnhancement, WordCloudBinding } from "../config";
2
+ import type { VisualizationAdapter } from "./types";
3
+ import type { BarViewModel, LineViewModel, MetricViewModel, PieViewModel, TableViewModel, WordCloudViewModel } from "./view-models";
4
+ type EnhancementFor<TType extends VisualizationEnhancement["type"]> = Extract<VisualizationEnhancement, {
5
+ type: TType;
6
+ }>;
7
+ export declare const metricAdapter: VisualizationAdapter<MetricBinding, EnhancementFor<"metric">, MetricViewModel>;
8
+ export declare const lineAdapter: VisualizationAdapter<LineBinding, EnhancementFor<"line">, LineViewModel>;
9
+ export declare const barAdapter: VisualizationAdapter<BarBinding, EnhancementFor<"bar">, BarViewModel>;
10
+ export declare const pieAdapter: VisualizationAdapter<PieBinding, EnhancementFor<"pie">, PieViewModel>;
11
+ export declare const wordCloudAdapter: VisualizationAdapter<WordCloudBinding, EnhancementFor<"wordCloud">, WordCloudViewModel>;
12
+ export declare const tableAdapter: VisualizationAdapter<TableBinding, EnhancementFor<"table">, TableViewModel>;
13
+ export declare const STANDARD_ADAPTERS: readonly (VisualizationAdapter<{
14
+ compareField?: string;
15
+ type: "metric";
16
+ datasetId: string;
17
+ valueField: string;
18
+ }, {
19
+ metric?: {
20
+ showComparison?: boolean;
21
+ compareLabel?: string;
22
+ comparisonColorMode?: "meaning" | "direction";
23
+ compareMeaning?: "neutral" | "positive" | "negative";
24
+ };
25
+ common?: {
26
+ formatOverrides?: {
27
+ [x: string]: {
28
+ precision?: number;
29
+ unit?: string;
30
+ emptyText?: string;
31
+ useGrouping?: boolean;
32
+ type: "number" | "integer" | "decimal" | "percent" | "currency" | "date" | "datetime";
33
+ };
34
+ };
35
+ presetIds?: string[];
36
+ interactions?: {
37
+ event: "dataPointClick" | "rowClick" | "legendChange";
38
+ actionId: string;
39
+ }[];
40
+ };
41
+ type: "metric";
42
+ }, MetricViewModel> | VisualizationAdapter<{
43
+ seriesField?: string;
44
+ type: "line";
45
+ datasetId: string;
46
+ xField: string;
47
+ yFields: string[];
48
+ }, {
49
+ line?: {
50
+ showLabels?: boolean;
51
+ smooth?: number | boolean;
52
+ markCategories?: (string | number)[];
53
+ markValues?: number[];
54
+ };
55
+ common?: {
56
+ formatOverrides?: {
57
+ [x: string]: {
58
+ precision?: number;
59
+ unit?: string;
60
+ emptyText?: string;
61
+ useGrouping?: boolean;
62
+ type: "number" | "integer" | "decimal" | "percent" | "currency" | "date" | "datetime";
63
+ };
64
+ };
65
+ presetIds?: string[];
66
+ interactions?: {
67
+ event: "dataPointClick" | "rowClick" | "legendChange";
68
+ actionId: string;
69
+ }[];
70
+ };
71
+ type: "line";
72
+ }, LineViewModel> | VisualizationAdapter<{
73
+ seriesField?: string;
74
+ type: "bar";
75
+ datasetId: string;
76
+ categoryField: string;
77
+ valueFields: string[];
78
+ }, {
79
+ bar?: {
80
+ showLabels?: boolean;
81
+ orientation?: "vertical" | "horizontal";
82
+ visibleCount?: number;
83
+ sort?: "none" | "ascending" | "descending";
84
+ stacked?: boolean;
85
+ };
86
+ common?: {
87
+ formatOverrides?: {
88
+ [x: string]: {
89
+ precision?: number;
90
+ unit?: string;
91
+ emptyText?: string;
92
+ useGrouping?: boolean;
93
+ type: "number" | "integer" | "decimal" | "percent" | "currency" | "date" | "datetime";
94
+ };
95
+ };
96
+ presetIds?: string[];
97
+ interactions?: {
98
+ event: "dataPointClick" | "rowClick" | "legendChange";
99
+ actionId: string;
100
+ }[];
101
+ };
102
+ type: "bar";
103
+ }, BarViewModel> | VisualizationAdapter<{
104
+ type: "pie";
105
+ datasetId: string;
106
+ valueField: string;
107
+ nameField: string;
108
+ }, {
109
+ pie?: {
110
+ maxItems?: number;
111
+ othersLabel?: string;
112
+ donut?: boolean;
113
+ showLegend?: boolean;
114
+ };
115
+ common?: {
116
+ formatOverrides?: {
117
+ [x: string]: {
118
+ precision?: number;
119
+ unit?: string;
120
+ emptyText?: string;
121
+ useGrouping?: boolean;
122
+ type: "number" | "integer" | "decimal" | "percent" | "currency" | "date" | "datetime";
123
+ };
124
+ };
125
+ presetIds?: string[];
126
+ interactions?: {
127
+ event: "dataPointClick" | "rowClick" | "legendChange";
128
+ actionId: string;
129
+ }[];
130
+ };
131
+ type: "pie";
132
+ }, PieViewModel> | VisualizationAdapter<{
133
+ type: "table";
134
+ datasetId: string;
135
+ columns: string[];
136
+ }, {
137
+ table?: {
138
+ pageSize?: number;
139
+ showPagination?: boolean;
140
+ sortableFields?: string[];
141
+ filterableFields?: string[];
142
+ columnWidths?: {
143
+ [x: string]: number;
144
+ };
145
+ columnDisplays?: {
146
+ [x: string]: {
147
+ max?: number;
148
+ type: "progress";
149
+ } | {
150
+ positiveTone?: "neutral" | "info" | "success" | "warning" | "danger";
151
+ negativeTone?: "neutral" | "info" | "success" | "warning" | "danger";
152
+ zeroTone?: "neutral" | "info" | "success" | "warning" | "danger";
153
+ type: "trend";
154
+ } | {
155
+ toneByValue?: {
156
+ [x: string]: "neutral" | "info" | "success" | "warning" | "danger";
157
+ };
158
+ defaultTone?: "neutral" | "info" | "success" | "warning" | "danger";
159
+ type: "tag";
160
+ };
161
+ };
162
+ };
163
+ common?: {
164
+ formatOverrides?: {
165
+ [x: string]: {
166
+ precision?: number;
167
+ unit?: string;
168
+ emptyText?: string;
169
+ useGrouping?: boolean;
170
+ type: "number" | "integer" | "decimal" | "percent" | "currency" | "date" | "datetime";
171
+ };
172
+ };
173
+ presetIds?: string[];
174
+ interactions?: {
175
+ event: "dataPointClick" | "rowClick" | "legendChange";
176
+ actionId: string;
177
+ }[];
178
+ };
179
+ type: "table";
180
+ }, TableViewModel> | VisualizationAdapter<{
181
+ semanticField?: string;
182
+ type: "wordCloud";
183
+ datasetId: string;
184
+ valueField: string;
185
+ labelFields: string[];
186
+ }, {
187
+ wordCloud?: {
188
+ maxItems?: number;
189
+ minFontSize?: number;
190
+ maxFontSize?: number;
191
+ };
192
+ common?: {
193
+ formatOverrides?: {
194
+ [x: string]: {
195
+ precision?: number;
196
+ unit?: string;
197
+ emptyText?: string;
198
+ useGrouping?: boolean;
199
+ type: "number" | "integer" | "decimal" | "percent" | "currency" | "date" | "datetime";
200
+ };
201
+ };
202
+ presetIds?: string[];
203
+ interactions?: {
204
+ event: "dataPointClick" | "rowClick" | "legendChange";
205
+ actionId: string;
206
+ }[];
207
+ };
208
+ type: "wordCloud";
209
+ }, WordCloudViewModel>)[];
210
+ export {};
211
+ //# sourceMappingURL=standard-adapters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"standard-adapters.d.ts","sourceRoot":"","sources":["../../../src/core/adapter/standard-adapters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EAGV,WAAW,EAEX,aAAa,EAEb,UAAU,EAEV,YAAY,EAIZ,wBAAwB,EACxB,gBAAgB,EAEjB,MAAM,WAAW,CAAC;AAGnB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,KAAK,EACV,YAAY,EAEZ,aAAa,EACb,eAAe,EAEf,YAAY,EACZ,cAAc,EACd,kBAAkB,EAEnB,MAAM,eAAe,CAAC;AAEvB,KAAK,cAAc,CAAC,KAAK,SAAS,wBAAwB,CAAC,MAAM,CAAC,IAAI,OAAO,CAC3E,wBAAwB,EACxB;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,CAChB,CAAC;AAoIF,eAAO,MAAM,aAAa,EAAE,oBAAoB,CAAC,aAAa,EAAE,cAAc,CAAC,QAAQ,CAAC,EAAE,eAAe,CAiCxG,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,oBAAoB,CAAC,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC,EAAE,aAAa,CAsBhG,CAAC;AAsBF,eAAO,MAAM,UAAU,EAAE,oBAAoB,CAAC,UAAU,EAAE,cAAc,CAAC,KAAK,CAAC,EAAE,YAAY,CAuB5F,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,oBAAoB,CAAC,UAAU,EAAE,cAAc,CAAC,KAAK,CAAC,EAAE,YAAY,CA0C5F,CAAC;AASF,eAAO,MAAM,gBAAgB,EAAE,oBAAoB,CACjD,gBAAgB,EAChB,cAAc,CAAC,WAAW,CAAC,EAC3B,kBAAkB,CAyCnB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,oBAAoB,CAAC,YAAY,EAAE,cAAc,CAAC,OAAO,CAAC,EAAE,cAAc,CAmCpG,CAAC;AAOF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAO5B,CAAC"}
@@ -0,0 +1,230 @@
1
+ import type { VisualizationRendererDefinition } from "./types";
2
+ export declare const metricRendererDefinition: VisualizationRendererDefinition;
3
+ export declare const lineRendererDefinition: VisualizationRendererDefinition;
4
+ export declare const barRendererDefinition: VisualizationRendererDefinition;
5
+ export declare const pieRendererDefinition: VisualizationRendererDefinition;
6
+ export declare const tableRendererDefinition: VisualizationRendererDefinition;
7
+ export declare const wordCloudRendererDefinition: VisualizationRendererDefinition;
8
+ export declare const STANDARD_RENDERER_DEFINITIONS: readonly VisualizationRendererDefinition<{
9
+ compareField?: string;
10
+ type: "metric";
11
+ datasetId: string;
12
+ valueField: string;
13
+ } | {
14
+ seriesField?: string;
15
+ type: "line";
16
+ datasetId: string;
17
+ xField: string;
18
+ yFields: string[];
19
+ } | {
20
+ seriesField?: string;
21
+ type: "bar";
22
+ datasetId: string;
23
+ categoryField: string;
24
+ valueFields: string[];
25
+ } | {
26
+ type: "pie";
27
+ datasetId: string;
28
+ valueField: string;
29
+ nameField: string;
30
+ } | {
31
+ type: "table";
32
+ datasetId: string;
33
+ columns: string[];
34
+ } | {
35
+ semanticField?: string;
36
+ type: "wordCloud";
37
+ datasetId: string;
38
+ valueField: string;
39
+ labelFields: string[];
40
+ } | {
41
+ type: "pivotTableS2";
42
+ datasetId: string;
43
+ valueFields: string[];
44
+ rowFields: string[];
45
+ columnFields: string[];
46
+ }, {
47
+ metric?: {
48
+ showComparison?: boolean;
49
+ compareLabel?: string;
50
+ comparisonColorMode?: "meaning" | "direction";
51
+ compareMeaning?: "neutral" | "positive" | "negative";
52
+ };
53
+ common?: {
54
+ formatOverrides?: {
55
+ [x: string]: {
56
+ precision?: number;
57
+ unit?: string;
58
+ emptyText?: string;
59
+ useGrouping?: boolean;
60
+ type: "number" | "integer" | "decimal" | "percent" | "currency" | "date" | "datetime";
61
+ };
62
+ };
63
+ presetIds?: string[];
64
+ interactions?: {
65
+ event: "dataPointClick" | "rowClick" | "legendChange";
66
+ actionId: string;
67
+ }[];
68
+ };
69
+ type: "metric";
70
+ } | {
71
+ line?: {
72
+ showLabels?: boolean;
73
+ smooth?: number | boolean;
74
+ markCategories?: (string | number)[];
75
+ markValues?: number[];
76
+ };
77
+ common?: {
78
+ formatOverrides?: {
79
+ [x: string]: {
80
+ precision?: number;
81
+ unit?: string;
82
+ emptyText?: string;
83
+ useGrouping?: boolean;
84
+ type: "number" | "integer" | "decimal" | "percent" | "currency" | "date" | "datetime";
85
+ };
86
+ };
87
+ presetIds?: string[];
88
+ interactions?: {
89
+ event: "dataPointClick" | "rowClick" | "legendChange";
90
+ actionId: string;
91
+ }[];
92
+ };
93
+ type: "line";
94
+ } | {
95
+ bar?: {
96
+ showLabels?: boolean;
97
+ orientation?: "vertical" | "horizontal";
98
+ visibleCount?: number;
99
+ sort?: "none" | "ascending" | "descending";
100
+ stacked?: boolean;
101
+ };
102
+ common?: {
103
+ formatOverrides?: {
104
+ [x: string]: {
105
+ precision?: number;
106
+ unit?: string;
107
+ emptyText?: string;
108
+ useGrouping?: boolean;
109
+ type: "number" | "integer" | "decimal" | "percent" | "currency" | "date" | "datetime";
110
+ };
111
+ };
112
+ presetIds?: string[];
113
+ interactions?: {
114
+ event: "dataPointClick" | "rowClick" | "legendChange";
115
+ actionId: string;
116
+ }[];
117
+ };
118
+ type: "bar";
119
+ } | {
120
+ pie?: {
121
+ maxItems?: number;
122
+ othersLabel?: string;
123
+ donut?: boolean;
124
+ showLegend?: boolean;
125
+ };
126
+ common?: {
127
+ formatOverrides?: {
128
+ [x: string]: {
129
+ precision?: number;
130
+ unit?: string;
131
+ emptyText?: string;
132
+ useGrouping?: boolean;
133
+ type: "number" | "integer" | "decimal" | "percent" | "currency" | "date" | "datetime";
134
+ };
135
+ };
136
+ presetIds?: string[];
137
+ interactions?: {
138
+ event: "dataPointClick" | "rowClick" | "legendChange";
139
+ actionId: string;
140
+ }[];
141
+ };
142
+ type: "pie";
143
+ } | {
144
+ table?: {
145
+ pageSize?: number;
146
+ showPagination?: boolean;
147
+ sortableFields?: string[];
148
+ filterableFields?: string[];
149
+ columnWidths?: {
150
+ [x: string]: number;
151
+ };
152
+ columnDisplays?: {
153
+ [x: string]: {
154
+ max?: number;
155
+ type: "progress";
156
+ } | {
157
+ positiveTone?: "neutral" | "info" | "success" | "warning" | "danger";
158
+ negativeTone?: "neutral" | "info" | "success" | "warning" | "danger";
159
+ zeroTone?: "neutral" | "info" | "success" | "warning" | "danger";
160
+ type: "trend";
161
+ } | {
162
+ toneByValue?: {
163
+ [x: string]: "neutral" | "info" | "success" | "warning" | "danger";
164
+ };
165
+ defaultTone?: "neutral" | "info" | "success" | "warning" | "danger";
166
+ type: "tag";
167
+ };
168
+ };
169
+ };
170
+ common?: {
171
+ formatOverrides?: {
172
+ [x: string]: {
173
+ precision?: number;
174
+ unit?: string;
175
+ emptyText?: string;
176
+ useGrouping?: boolean;
177
+ type: "number" | "integer" | "decimal" | "percent" | "currency" | "date" | "datetime";
178
+ };
179
+ };
180
+ presetIds?: string[];
181
+ interactions?: {
182
+ event: "dataPointClick" | "rowClick" | "legendChange";
183
+ actionId: string;
184
+ }[];
185
+ };
186
+ type: "table";
187
+ } | {
188
+ wordCloud?: {
189
+ maxItems?: number;
190
+ minFontSize?: number;
191
+ maxFontSize?: number;
192
+ };
193
+ common?: {
194
+ formatOverrides?: {
195
+ [x: string]: {
196
+ precision?: number;
197
+ unit?: string;
198
+ emptyText?: string;
199
+ useGrouping?: boolean;
200
+ type: "number" | "integer" | "decimal" | "percent" | "currency" | "date" | "datetime";
201
+ };
202
+ };
203
+ presetIds?: string[];
204
+ interactions?: {
205
+ event: "dataPointClick" | "rowClick" | "legendChange";
206
+ actionId: string;
207
+ }[];
208
+ };
209
+ type: "wordCloud";
210
+ } | {
211
+ pivotTableS2?: {};
212
+ common?: {
213
+ formatOverrides?: {
214
+ [x: string]: {
215
+ precision?: number;
216
+ unit?: string;
217
+ emptyText?: string;
218
+ useGrouping?: boolean;
219
+ type: "number" | "integer" | "decimal" | "percent" | "currency" | "date" | "datetime";
220
+ };
221
+ };
222
+ presetIds?: string[];
223
+ interactions?: {
224
+ event: "dataPointClick" | "rowClick" | "legendChange";
225
+ actionId: string;
226
+ }[];
227
+ };
228
+ type: "pivotTableS2";
229
+ }>[];
230
+ //# sourceMappingURL=standard-definitions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"standard-definitions.d.ts","sourceRoot":"","sources":["../../../src/core/adapter/standard-definitions.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,SAAS,CAAC;AAQ/D,eAAO,MAAM,wBAAwB,EAAE,+BAMrC,CAAC;AAEH,eAAO,MAAM,sBAAsB,EAAE,+BAMnC,CAAC;AAEH,eAAO,MAAM,qBAAqB,EAAE,+BAMlC,CAAC;AAEH,eAAO,MAAM,qBAAqB,EAAE,+BAMlC,CAAC;AAEH,eAAO,MAAM,uBAAuB,EAAE,+BAMpC,CAAC;AAEH,eAAO,MAAM,2BAA2B,EAAE,+BAMxC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAOxC,CAAC"}
@@ -0,0 +1,44 @@
1
+ import type { PanelBinding, VisualizationEnhancement } from "../config";
2
+ import type { DatasetResult } from "../dataset";
3
+ import type { RuntimeSchema } from "../config/runtime-schema";
4
+ import type { DashboardContext } from "../variable";
5
+ export interface VisualizationAdapterInput<TBinding extends PanelBinding = PanelBinding, TEnhancement extends VisualizationEnhancement = VisualizationEnhancement> {
6
+ dataset: DatasetResult;
7
+ binding: TBinding;
8
+ enhancement?: TEnhancement;
9
+ context: DashboardContext;
10
+ }
11
+ export interface VisualizationAdapter<TBinding extends PanelBinding = PanelBinding, TEnhancement extends VisualizationEnhancement = VisualizationEnhancement, TViewModel = unknown> {
12
+ id: string;
13
+ adapt(input: VisualizationAdapterInput<TBinding, TEnhancement>): TViewModel;
14
+ }
15
+ export interface RendererCapabilities {
16
+ responsive: boolean;
17
+ csv: boolean;
18
+ png: boolean;
19
+ selection: boolean;
20
+ }
21
+ export interface VisualizationRendererDefinition<TBinding extends PanelBinding = PanelBinding, TEnhancement extends VisualizationEnhancement = VisualizationEnhancement> {
22
+ id: string;
23
+ bindingSchema: RuntimeSchema<TBinding>;
24
+ enhancementSchema: RuntimeSchema<TEnhancement>;
25
+ defaultAdapterId: string;
26
+ capabilities: Readonly<RendererCapabilities>;
27
+ }
28
+ export interface VisualizationPreset {
29
+ id: string;
30
+ rendererId?: string;
31
+ apply(enhancement: VisualizationEnhancement | undefined): VisualizationEnhancement;
32
+ }
33
+ export type VisualizationEventType = "dataPointClick" | "rowClick" | "legendChange";
34
+ export interface VisualizationEvent {
35
+ type: VisualizationEventType;
36
+ panelId: string;
37
+ datasetId: string;
38
+ fields: Readonly<Record<string, unknown>>;
39
+ }
40
+ export interface VisualizationAction {
41
+ id: string;
42
+ execute(event: VisualizationEvent, context: DashboardContext): void | Promise<void>;
43
+ }
44
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/adapter/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AACxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,MAAM,WAAW,yBAAyB,CACxC,QAAQ,SAAS,YAAY,GAAG,YAAY,EAC5C,YAAY,SAAS,wBAAwB,GAAG,wBAAwB;IAExE,OAAO,EAAE,aAAa,CAAC;IACvB,OAAO,EAAE,QAAQ,CAAC;IAClB,WAAW,CAAC,EAAE,YAAY,CAAC;IAC3B,OAAO,EAAE,gBAAgB,CAAC;CAC3B;AAED,MAAM,WAAW,oBAAoB,CACnC,QAAQ,SAAS,YAAY,GAAG,YAAY,EAC5C,YAAY,SAAS,wBAAwB,GAAG,wBAAwB,EACxE,UAAU,GAAG,OAAO;IAEpB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,KAAK,EAAE,yBAAyB,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG,UAAU,CAAC;CAC7E;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,OAAO,CAAC;IACpB,GAAG,EAAE,OAAO,CAAC;IACb,GAAG,EAAE,OAAO,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,+BAA+B,CAC9C,QAAQ,SAAS,YAAY,GAAG,YAAY,EAC5C,YAAY,SAAS,wBAAwB,GAAG,wBAAwB;IAExE,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IACvC,iBAAiB,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IAC/C,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,WAAW,EAAE,wBAAwB,GAAG,SAAS,GAAG,wBAAwB,CAAC;CACpF;AAED,MAAM,MAAM,sBAAsB,GAAG,gBAAgB,GAAG,UAAU,GAAG,cAAc,CAAC;AAEpF,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,sBAAsB,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,gBAAgB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrF"}
@@ -0,0 +1,101 @@
1
+ import type { DatasetDiagnostic } from "../dataset";
2
+ import type { TableCellDisplay, ValueFormat } from "../config";
3
+ export interface VisualizationViewModelBase {
4
+ type: string;
5
+ empty: boolean;
6
+ }
7
+ export interface MetricComparisonViewModel {
8
+ label: string;
9
+ value: number;
10
+ direction: "up" | "down" | "flat";
11
+ meaning: "positive" | "negative" | "neutral";
12
+ colorMode: "meaning" | "direction";
13
+ format: ValueFormat;
14
+ }
15
+ export interface MetricViewModel extends VisualizationViewModelBase {
16
+ type: "metric";
17
+ label: string;
18
+ value: number | null;
19
+ format: ValueFormat;
20
+ unit?: string;
21
+ comparison?: MetricComparisonViewModel;
22
+ }
23
+ export interface CartesianSeriesViewModel {
24
+ id: string;
25
+ valueFieldId: string;
26
+ axisKey: string;
27
+ label: string;
28
+ values: ReadonlyArray<number | null>;
29
+ format: ValueFormat;
30
+ unit?: string;
31
+ }
32
+ export interface LineAnnotationViewModel {
33
+ type: "category" | "value";
34
+ value: string | number;
35
+ }
36
+ export interface LineViewModel extends VisualizationViewModelBase {
37
+ type: "line";
38
+ categories: ReadonlyArray<string | number>;
39
+ categoryFormat?: ValueFormat;
40
+ series: ReadonlyArray<CartesianSeriesViewModel>;
41
+ showLabels: boolean;
42
+ smooth: boolean | number;
43
+ annotations: ReadonlyArray<LineAnnotationViewModel>;
44
+ }
45
+ export interface BarViewModel extends VisualizationViewModelBase {
46
+ type: "bar";
47
+ categories: ReadonlyArray<string>;
48
+ series: ReadonlyArray<CartesianSeriesViewModel>;
49
+ orientation: "vertical" | "horizontal";
50
+ visibleCount?: number;
51
+ showLabels: boolean;
52
+ stacked: boolean;
53
+ }
54
+ export interface PieItemViewModel {
55
+ id: string;
56
+ label: string;
57
+ value: number;
58
+ }
59
+ export interface PieViewModel extends VisualizationViewModelBase {
60
+ type: "pie";
61
+ items: ReadonlyArray<PieItemViewModel>;
62
+ valueFormat: ValueFormat;
63
+ unit?: string;
64
+ donut: boolean;
65
+ showLegend: boolean;
66
+ }
67
+ export interface WordCloudWordViewModel {
68
+ id: string;
69
+ label: string;
70
+ value: number;
71
+ semantic?: string;
72
+ }
73
+ export interface WordCloudViewModel extends VisualizationViewModelBase {
74
+ type: "wordCloud";
75
+ words: ReadonlyArray<WordCloudWordViewModel>;
76
+ valueFormat: ValueFormat;
77
+ unit?: string;
78
+ minFontSize: number;
79
+ maxFontSize: number;
80
+ }
81
+ export interface TableColumnViewModel {
82
+ field: string;
83
+ label: string;
84
+ dataType: "string" | "number" | "boolean" | "date" | "datetime";
85
+ format?: ValueFormat;
86
+ unit?: string;
87
+ width?: number;
88
+ display?: TableCellDisplay;
89
+ sortable: boolean;
90
+ filterable: boolean;
91
+ }
92
+ export interface TableViewModel extends VisualizationViewModelBase {
93
+ type: "table";
94
+ columns: ReadonlyArray<TableColumnViewModel>;
95
+ rows: ReadonlyArray<Readonly<Record<string, unknown>>>;
96
+ pageSize: number;
97
+ showPagination: boolean;
98
+ diagnostics: ReadonlyArray<DatasetDiagnostic>;
99
+ }
100
+ export type StandardVisualizationViewModel = MetricViewModel | LineViewModel | BarViewModel | PieViewModel | TableViewModel | WordCloudViewModel;
101
+ //# sourceMappingURL=view-models.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view-models.d.ts","sourceRoot":"","sources":["../../../src/core/adapter/view-models.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type { CoreRegistries } from "../registry";
2
+ import type { VisualizationTelemetrySink } from "../telemetry";
3
+ import type { DashboardConfig } from "./dashboard-config-schema";
4
+ export interface ConfigDiagnostic {
5
+ level: "error";
6
+ code: string;
7
+ message: string;
8
+ path: string;
9
+ }
10
+ export type DashboardConfigValidationResult = {
11
+ valid: true;
12
+ config: DashboardConfig;
13
+ diagnostics: readonly [];
14
+ } | {
15
+ valid: false;
16
+ diagnostics: ReadonlyArray<ConfigDiagnostic>;
17
+ };
18
+ export interface ValidateDashboardConfigOptions {
19
+ telemetry?: VisualizationTelemetrySink;
20
+ }
21
+ export declare class DashboardConfigValidationError extends Error {
22
+ readonly diagnostics: ReadonlyArray<ConfigDiagnostic>;
23
+ constructor(diagnostics: ReadonlyArray<ConfigDiagnostic>);
24
+ }
25
+ export declare function validateDashboardConfig(value: unknown, registries: CoreRegistries, options?: ValidateDashboardConfigOptions): DashboardConfigValidationResult;
26
+ export declare function assertDashboardConfig(value: unknown, registries: CoreRegistries, options?: ValidateDashboardConfigOptions): DashboardConfig;
27
+ //# sourceMappingURL=config-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-validator.d.ts","sourceRoot":"","sources":["../../../src/core/config/config-validator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAG/D,OAAO,KAAK,EAAE,eAAe,EAAiD,MAAM,2BAA2B,CAAC;AAGhH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,+BAA+B,GACvC;IAAE,KAAK,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,eAAe,CAAC;IAAC,WAAW,EAAE,SAAS,EAAE,CAAA;CAAE,GAClE;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,WAAW,EAAE,aAAa,CAAC,gBAAgB,CAAC,CAAA;CAAE,CAAC;AAEnE,MAAM,WAAW,8BAA8B;IAC7C,SAAS,CAAC,EAAE,0BAA0B,CAAC;CACxC;AAED,qBAAa,8BAA+B,SAAQ,KAAK;IACvD,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,gBAAgB,CAAC,CAAC;gBAE1C,WAAW,EAAE,aAAa,CAAC,gBAAgB,CAAC;CAKzD;AAuLD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,OAAO,EACd,UAAU,EAAE,cAAc,EAC1B,OAAO,GAAE,8BAAmC,GAC3C,+BAA+B,CAyVjC;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,OAAO,EACd,UAAU,EAAE,cAAc,EAC1B,OAAO,GAAE,8BAAmC,GAC3C,eAAe,CAMjB"}