@matthieumordrel/chart-studio 0.2.0 → 0.2.2

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 (175) hide show
  1. package/README.md +1 -1
  2. package/dist/core/chart-capabilities.d.mts +48 -0
  3. package/dist/core/chart-capabilities.mjs +55 -0
  4. package/dist/core/{colors.d.ts → colors.d.mts} +5 -3
  5. package/dist/core/colors.mjs +55 -0
  6. package/dist/core/config-utils.mjs +79 -0
  7. package/dist/core/date-utils.mjs +49 -0
  8. package/dist/core/define-chart-schema.d.mts +106 -0
  9. package/dist/core/define-chart-schema.mjs +47 -0
  10. package/dist/core/formatting.mjs +349 -0
  11. package/dist/core/infer-columns.d.mts +9 -0
  12. package/dist/core/infer-columns.mjs +481 -0
  13. package/dist/core/metric-utils.d.mts +13 -0
  14. package/dist/core/metric-utils.mjs +121 -0
  15. package/dist/core/pipeline-data-points.mjs +212 -0
  16. package/dist/core/pipeline-helpers.mjs +85 -0
  17. package/dist/core/{pipeline.d.ts → pipeline.d.mts} +21 -24
  18. package/dist/core/pipeline.mjs +153 -0
  19. package/dist/core/types.d.mts +957 -0
  20. package/dist/core/use-chart-options.d.mts +64 -0
  21. package/dist/core/use-chart-options.mjs +7 -0
  22. package/dist/core/use-chart-resolvers.mjs +34 -0
  23. package/dist/core/{use-chart.d.ts → use-chart.d.mts} +12 -9
  24. package/dist/core/use-chart.mjs +299 -0
  25. package/dist/index.d.mts +10 -0
  26. package/dist/index.mjs +8 -0
  27. package/dist/ui/chart-axis-ticks.mjs +65 -0
  28. package/dist/ui/{chart-canvas.d.ts → chart-canvas.d.mts} +13 -6
  29. package/dist/ui/chart-canvas.mjs +461 -0
  30. package/dist/ui/chart-context.d.mts +92 -0
  31. package/dist/ui/chart-context.mjs +112 -0
  32. package/dist/ui/{chart-date-range-badge.d.ts → chart-date-range-badge.d.mts} +10 -4
  33. package/dist/ui/chart-date-range-badge.mjs +49 -0
  34. package/dist/ui/chart-date-range-panel.d.mts +18 -0
  35. package/dist/ui/chart-date-range-panel.mjs +208 -0
  36. package/dist/ui/{chart-date-range.d.ts → chart-date-range.d.mts} +10 -4
  37. package/dist/ui/chart-date-range.mjs +67 -0
  38. package/dist/ui/chart-debug.d.mts +17 -0
  39. package/dist/ui/chart-debug.mjs +169 -0
  40. package/dist/ui/chart-dropdown.mjs +92 -0
  41. package/dist/ui/{chart-filters-panel.d.ts → chart-filters-panel.d.mts} +12 -5
  42. package/dist/ui/chart-filters-panel.mjs +132 -0
  43. package/dist/ui/{chart-filters.d.ts → chart-filters.d.mts} +10 -4
  44. package/dist/ui/chart-filters.mjs +48 -0
  45. package/dist/ui/chart-group-by-selector.d.mts +14 -0
  46. package/dist/ui/chart-group-by-selector.mjs +29 -0
  47. package/dist/ui/{chart-metric-panel.d.ts → chart-metric-panel.d.mts} +12 -5
  48. package/dist/ui/chart-metric-panel.mjs +172 -0
  49. package/dist/ui/chart-metric-selector.d.mts +16 -0
  50. package/dist/ui/chart-metric-selector.mjs +50 -0
  51. package/dist/ui/chart-select.mjs +62 -0
  52. package/dist/ui/{chart-source-switcher.d.ts → chart-source-switcher.d.mts} +10 -4
  53. package/dist/ui/chart-source-switcher.mjs +54 -0
  54. package/dist/ui/chart-time-bucket-selector.d.mts +15 -0
  55. package/dist/ui/chart-time-bucket-selector.mjs +34 -0
  56. package/dist/ui/chart-toolbar-overflow.d.mts +28 -0
  57. package/dist/ui/chart-toolbar-overflow.mjs +209 -0
  58. package/dist/ui/chart-toolbar.d.mts +29 -0
  59. package/dist/ui/chart-toolbar.mjs +56 -0
  60. package/dist/ui/chart-type-selector.d.mts +14 -0
  61. package/dist/ui/chart-type-selector.mjs +33 -0
  62. package/dist/ui/chart-x-axis-selector.d.mts +14 -0
  63. package/dist/ui/chart-x-axis-selector.mjs +25 -0
  64. package/dist/ui/index.d.mts +19 -0
  65. package/dist/ui/index.mjs +18 -0
  66. package/dist/ui/toolbar-types.d.mts +7 -0
  67. package/dist/ui/toolbar-types.mjs +83 -0
  68. package/package.json +11 -10
  69. package/dist/core/chart-capabilities.d.ts +0 -60
  70. package/dist/core/chart-capabilities.d.ts.map +0 -1
  71. package/dist/core/chart-capabilities.js +0 -54
  72. package/dist/core/colors.d.ts.map +0 -1
  73. package/dist/core/colors.js +0 -54
  74. package/dist/core/config-utils.d.ts +0 -43
  75. package/dist/core/config-utils.d.ts.map +0 -1
  76. package/dist/core/config-utils.js +0 -80
  77. package/dist/core/date-utils.d.ts +0 -29
  78. package/dist/core/date-utils.d.ts.map +0 -1
  79. package/dist/core/date-utils.js +0 -58
  80. package/dist/core/define-chart-schema.d.ts +0 -105
  81. package/dist/core/define-chart-schema.d.ts.map +0 -1
  82. package/dist/core/define-chart-schema.js +0 -44
  83. package/dist/core/formatting.d.ts +0 -47
  84. package/dist/core/formatting.d.ts.map +0 -1
  85. package/dist/core/formatting.js +0 -396
  86. package/dist/core/index.d.ts +0 -17
  87. package/dist/core/index.d.ts.map +0 -1
  88. package/dist/core/index.js +0 -12
  89. package/dist/core/infer-columns.d.ts +0 -6
  90. package/dist/core/infer-columns.d.ts.map +0 -1
  91. package/dist/core/infer-columns.js +0 -512
  92. package/dist/core/metric-utils.d.ts +0 -43
  93. package/dist/core/metric-utils.d.ts.map +0 -1
  94. package/dist/core/metric-utils.js +0 -141
  95. package/dist/core/pipeline-data-points.d.ts +0 -23
  96. package/dist/core/pipeline-data-points.d.ts.map +0 -1
  97. package/dist/core/pipeline-data-points.js +0 -235
  98. package/dist/core/pipeline-helpers.d.ts +0 -38
  99. package/dist/core/pipeline-helpers.d.ts.map +0 -1
  100. package/dist/core/pipeline-helpers.js +0 -97
  101. package/dist/core/pipeline.d.ts.map +0 -1
  102. package/dist/core/pipeline.js +0 -156
  103. package/dist/core/types.d.ts +0 -1109
  104. package/dist/core/types.d.ts.map +0 -1
  105. package/dist/core/types.js +0 -14
  106. package/dist/core/use-chart-options.d.ts +0 -66
  107. package/dist/core/use-chart-options.d.ts.map +0 -1
  108. package/dist/core/use-chart-options.js +0 -4
  109. package/dist/core/use-chart-resolvers.d.ts +0 -14
  110. package/dist/core/use-chart-resolvers.d.ts.map +0 -1
  111. package/dist/core/use-chart-resolvers.js +0 -41
  112. package/dist/core/use-chart.d.ts.map +0 -1
  113. package/dist/core/use-chart.js +0 -265
  114. package/dist/index.d.ts +0 -36
  115. package/dist/index.d.ts.map +0 -1
  116. package/dist/index.js +0 -35
  117. package/dist/ui/chart-axis-ticks.d.ts +0 -35
  118. package/dist/ui/chart-axis-ticks.d.ts.map +0 -1
  119. package/dist/ui/chart-axis-ticks.js +0 -79
  120. package/dist/ui/chart-canvas.d.ts.map +0 -1
  121. package/dist/ui/chart-canvas.js +0 -337
  122. package/dist/ui/chart-context.d.ts +0 -89
  123. package/dist/ui/chart-context.d.ts.map +0 -1
  124. package/dist/ui/chart-context.js +0 -128
  125. package/dist/ui/chart-date-range-badge.d.ts.map +0 -1
  126. package/dist/ui/chart-date-range-badge.js +0 -30
  127. package/dist/ui/chart-date-range-panel.d.ts +0 -25
  128. package/dist/ui/chart-date-range-panel.d.ts.map +0 -1
  129. package/dist/ui/chart-date-range-panel.js +0 -125
  130. package/dist/ui/chart-date-range.d.ts.map +0 -1
  131. package/dist/ui/chart-date-range.js +0 -37
  132. package/dist/ui/chart-debug.d.ts +0 -10
  133. package/dist/ui/chart-debug.d.ts.map +0 -1
  134. package/dist/ui/chart-debug.js +0 -126
  135. package/dist/ui/chart-dropdown.d.ts +0 -35
  136. package/dist/ui/chart-dropdown.d.ts.map +0 -1
  137. package/dist/ui/chart-dropdown.js +0 -76
  138. package/dist/ui/chart-filters-panel.d.ts.map +0 -1
  139. package/dist/ui/chart-filters-panel.js +0 -46
  140. package/dist/ui/chart-filters.d.ts.map +0 -1
  141. package/dist/ui/chart-filters.js +0 -26
  142. package/dist/ui/chart-group-by-selector.d.ts +0 -8
  143. package/dist/ui/chart-group-by-selector.d.ts.map +0 -1
  144. package/dist/ui/chart-group-by-selector.js +0 -19
  145. package/dist/ui/chart-metric-panel.d.ts.map +0 -1
  146. package/dist/ui/chart-metric-panel.js +0 -118
  147. package/dist/ui/chart-metric-selector.d.ts +0 -10
  148. package/dist/ui/chart-metric-selector.d.ts.map +0 -1
  149. package/dist/ui/chart-metric-selector.js +0 -27
  150. package/dist/ui/chart-select.d.ts +0 -25
  151. package/dist/ui/chart-select.d.ts.map +0 -1
  152. package/dist/ui/chart-select.js +0 -35
  153. package/dist/ui/chart-source-switcher.d.ts.map +0 -1
  154. package/dist/ui/chart-source-switcher.js +0 -31
  155. package/dist/ui/chart-time-bucket-selector.d.ts +0 -9
  156. package/dist/ui/chart-time-bucket-selector.d.ts.map +0 -1
  157. package/dist/ui/chart-time-bucket-selector.js +0 -25
  158. package/dist/ui/chart-toolbar-overflow.d.ts +0 -29
  159. package/dist/ui/chart-toolbar-overflow.d.ts.map +0 -1
  160. package/dist/ui/chart-toolbar-overflow.js +0 -109
  161. package/dist/ui/chart-toolbar.d.ts +0 -45
  162. package/dist/ui/chart-toolbar.d.ts.map +0 -1
  163. package/dist/ui/chart-toolbar.js +0 -44
  164. package/dist/ui/chart-type-selector.d.ts +0 -8
  165. package/dist/ui/chart-type-selector.d.ts.map +0 -1
  166. package/dist/ui/chart-type-selector.js +0 -22
  167. package/dist/ui/chart-x-axis-selector.d.ts +0 -8
  168. package/dist/ui/chart-x-axis-selector.d.ts.map +0 -1
  169. package/dist/ui/chart-x-axis-selector.js +0 -14
  170. package/dist/ui/index.d.ts +0 -25
  171. package/dist/ui/index.d.ts.map +0 -1
  172. package/dist/ui/index.js +0 -23
  173. package/dist/ui/toolbar-types.d.ts +0 -43
  174. package/dist/ui/toolbar-types.d.ts.map +0 -1
  175. package/dist/ui/toolbar-types.js +0 -50
@@ -1,25 +0,0 @@
1
- /**
2
- * UI exports for chart-studio.
3
- *
4
- * Composable React components that consume the useChart hook via context.
5
- * Use `<Chart>` as the root provider, then compose any combination of controls.
6
- */
7
- export { Chart, useChartContext, useTypedChartContext } from './chart-context.js';
8
- export { ChartCanvas } from './chart-canvas.js';
9
- export { ChartToolbar } from './chart-toolbar.js';
10
- export { ChartToolbarOverflow } from './chart-toolbar-overflow.js';
11
- export type { ControlId } from './toolbar-types.js';
12
- export { ChartSourceSwitcher } from './chart-source-switcher.js';
13
- export { ChartTypeSelector } from './chart-type-selector.js';
14
- export { ChartGroupBySelector } from './chart-group-by-selector.js';
15
- export { ChartTimeBucketSelector } from './chart-time-bucket-selector.js';
16
- export { ChartMetricSelector } from './chart-metric-selector.js';
17
- export { ChartMetricPanel } from './chart-metric-panel.js';
18
- export { ChartXAxisSelector } from './chart-x-axis-selector.js';
19
- export { ChartDateRange } from './chart-date-range.js';
20
- export { ChartDateRangeBadge } from './chart-date-range-badge.js';
21
- export { ChartDateRangePanel } from './chart-date-range-panel.js';
22
- export { ChartFilters } from './chart-filters.js';
23
- export { ChartFiltersPanel } from './chart-filters-panel.js';
24
- export { ChartDebug } from './chart-debug.js';
25
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAC,KAAK,EAAE,eAAe,EAAE,oBAAoB,EAAC,MAAM,oBAAoB,CAAA;AAC/E,OAAO,EAAC,WAAW,EAAC,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAC,oBAAoB,EAAC,MAAM,6BAA6B,CAAA;AAChE,YAAY,EAAC,SAAS,EAAC,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAC,mBAAmB,EAAC,MAAM,4BAA4B,CAAA;AAC9D,OAAO,EAAC,iBAAiB,EAAC,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAC,oBAAoB,EAAC,MAAM,8BAA8B,CAAA;AACjE,OAAO,EAAC,uBAAuB,EAAC,MAAM,iCAAiC,CAAA;AACvE,OAAO,EAAC,mBAAmB,EAAC,MAAM,4BAA4B,CAAA;AAC9D,OAAO,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAC,cAAc,EAAC,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAC,mBAAmB,EAAC,MAAM,6BAA6B,CAAA;AAC/D,OAAO,EAAC,mBAAmB,EAAC,MAAM,6BAA6B,CAAA;AAC/D,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAC,iBAAiB,EAAC,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAA"}
package/dist/ui/index.js DELETED
@@ -1,23 +0,0 @@
1
- /**
2
- * UI exports for chart-studio.
3
- *
4
- * Composable React components that consume the useChart hook via context.
5
- * Use `<Chart>` as the root provider, then compose any combination of controls.
6
- */
7
- export { Chart, useChartContext, useTypedChartContext } from './chart-context.js';
8
- export { ChartCanvas } from './chart-canvas.js';
9
- export { ChartToolbar } from './chart-toolbar.js';
10
- export { ChartToolbarOverflow } from './chart-toolbar-overflow.js';
11
- export { ChartSourceSwitcher } from './chart-source-switcher.js';
12
- export { ChartTypeSelector } from './chart-type-selector.js';
13
- export { ChartGroupBySelector } from './chart-group-by-selector.js';
14
- export { ChartTimeBucketSelector } from './chart-time-bucket-selector.js';
15
- export { ChartMetricSelector } from './chart-metric-selector.js';
16
- export { ChartMetricPanel } from './chart-metric-panel.js';
17
- export { ChartXAxisSelector } from './chart-x-axis-selector.js';
18
- export { ChartDateRange } from './chart-date-range.js';
19
- export { ChartDateRangeBadge } from './chart-date-range-badge.js';
20
- export { ChartDateRangePanel } from './chart-date-range-panel.js';
21
- export { ChartFilters } from './chart-filters.js';
22
- export { ChartFiltersPanel } from './chart-filters-panel.js';
23
- export { ChartDebug } from './chart-debug.js';
@@ -1,43 +0,0 @@
1
- /**
2
- * Toolbar control identifiers and registry.
3
- *
4
- * Each control has an ID, a label (for the overflow menu), a section
5
- * (for grouping in the overflow panel), and the React component to render.
6
- *
7
- * @property CONTROL_IDS - All valid control identifier strings
8
- * @property ControlId - Union type of all valid control identifiers
9
- * @property ControlEntry - Registry entry for a single toolbar control
10
- * @property CONTROL_REGISTRY - Ordered mapping of ControlId → ControlEntry
11
- */
12
- import type { ComponentType } from 'react';
13
- /** All valid toolbar control identifiers. */
14
- export declare const CONTROL_IDS: readonly ["source", "xAxis", "chartType", "groupBy", "timeBucket", "metric", "filters", "dateRange"];
15
- /** Union type of all valid toolbar control identifiers. */
16
- export type ControlId = (typeof CONTROL_IDS)[number];
17
- /** Section label for grouping controls in the overflow panel. */
18
- export type ControlSection = 'data' | 'visualization' | 'filters';
19
- /**
20
- * Registry entry for a single toolbar control.
21
- *
22
- * @property label - Human-readable label for the overflow menu
23
- * @property section - Section grouping in the overflow panel
24
- * @property component - React component to render
25
- */
26
- export type ControlEntry = {
27
- label: string;
28
- section: ControlSection;
29
- component: ComponentType<{
30
- className?: string;
31
- }>;
32
- };
33
- /**
34
- * Ordered registry of all toolbar controls.
35
- * Controls render in this order both pinned and inside the overflow menu.
36
- */
37
- export declare const CONTROL_REGISTRY: Record<ControlId, ControlEntry>;
38
- /** Section metadata for the overflow panel. */
39
- export declare const SECTIONS: Array<{
40
- id: ControlSection;
41
- label: string;
42
- }>;
43
- //# sourceMappingURL=toolbar-types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"toolbar-types.d.ts","sourceRoot":"","sources":["../../src/ui/toolbar-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,OAAO,CAAA;AAUxC,6CAA6C;AAC7C,eAAO,MAAM,WAAW,sGASd,CAAA;AAEV,2DAA2D;AAC3D,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAA;AAEpD,iEAAiE;AACjE,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,eAAe,GAAG,SAAS,CAAA;AAEjE;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,cAAc,CAAA;IACvB,SAAS,EAAE,aAAa,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAC,CAAC,CAAA;CAC/C,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,SAAS,EAAE,YAAY,CAS5D,CAAA;AAED,+CAA+C;AAC/C,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC;IAAC,EAAE,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAC,CAI/D,CAAA"}
@@ -1,50 +0,0 @@
1
- /**
2
- * Toolbar control identifiers and registry.
3
- *
4
- * Each control has an ID, a label (for the overflow menu), a section
5
- * (for grouping in the overflow panel), and the React component to render.
6
- *
7
- * @property CONTROL_IDS - All valid control identifier strings
8
- * @property ControlId - Union type of all valid control identifiers
9
- * @property ControlEntry - Registry entry for a single toolbar control
10
- * @property CONTROL_REGISTRY - Ordered mapping of ControlId → ControlEntry
11
- */
12
- import { ChartDateRange } from './chart-date-range.js';
13
- import { ChartFilters } from './chart-filters.js';
14
- import { ChartGroupBySelector } from './chart-group-by-selector.js';
15
- import { ChartMetricSelector } from './chart-metric-selector.js';
16
- import { ChartSourceSwitcher } from './chart-source-switcher.js';
17
- import { ChartTimeBucketSelector } from './chart-time-bucket-selector.js';
18
- import { ChartTypeSelector } from './chart-type-selector.js';
19
- import { ChartXAxisSelector } from './chart-x-axis-selector.js';
20
- /** All valid toolbar control identifiers. */
21
- export const CONTROL_IDS = [
22
- 'source',
23
- 'xAxis',
24
- 'chartType',
25
- 'groupBy',
26
- 'timeBucket',
27
- 'metric',
28
- 'filters',
29
- 'dateRange',
30
- ];
31
- /**
32
- * Ordered registry of all toolbar controls.
33
- * Controls render in this order both pinned and inside the overflow menu.
34
- */
35
- export const CONTROL_REGISTRY = {
36
- source: { label: 'Data source', section: 'data', component: ChartSourceSwitcher },
37
- xAxis: { label: 'X-axis', section: 'data', component: ChartXAxisSelector },
38
- chartType: { label: 'Chart type', section: 'visualization', component: ChartTypeSelector },
39
- groupBy: { label: 'Group by', section: 'visualization', component: ChartGroupBySelector },
40
- timeBucket: { label: 'Time bucket', section: 'visualization', component: ChartTimeBucketSelector },
41
- metric: { label: 'Metric', section: 'visualization', component: ChartMetricSelector },
42
- filters: { label: 'Filters', section: 'filters', component: ChartFilters },
43
- dateRange: { label: 'Date range', section: 'filters', component: ChartDateRange },
44
- };
45
- /** Section metadata for the overflow panel. */
46
- export const SECTIONS = [
47
- { id: 'data', label: 'Data' },
48
- { id: 'visualization', label: 'Visualization' },
49
- { id: 'filters', label: 'Filters' },
50
- ];