drizzle-cube 0.1.68 → 0.2.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 (107) hide show
  1. package/dist/adapters/{compiler-CghsDLXl.cjs → compiler-DP1pPIcg.cjs} +9 -9
  2. package/dist/adapters/{compiler-BnHK-nxh.js → compiler-gcKytLwd.js} +12 -13
  3. package/dist/adapters/express/index.cjs +1 -1
  4. package/dist/adapters/express/index.js +1 -1
  5. package/dist/adapters/fastify/index.cjs +1 -1
  6. package/dist/adapters/fastify/index.js +1 -1
  7. package/dist/adapters/hono/index.cjs +1 -1
  8. package/dist/adapters/hono/index.js +1 -1
  9. package/dist/adapters/nextjs/index.cjs +1 -1
  10. package/dist/adapters/nextjs/index.js +1 -1
  11. package/dist/client/charts/ChartLoader.d.ts +56 -0
  12. package/dist/client/charts/lazyChartConfigRegistry.d.ts +90 -0
  13. package/dist/client/charts.d.ts +6 -0
  14. package/dist/client/charts.js +38 -15
  15. package/dist/client/charts.js.map +1 -1
  16. package/dist/client/chunks/chart-activitygridchart-BRk9BNnp.js +3713 -0
  17. package/dist/client/chunks/chart-activitygridchart-BRk9BNnp.js.map +1 -0
  18. package/dist/client/chunks/chart-activitygridchart-config-D9CgNH02.js +51 -0
  19. package/dist/client/chunks/chart-activitygridchart-config-D9CgNH02.js.map +1 -0
  20. package/dist/client/chunks/chart-areachart-Beu8sO9v.js +204 -0
  21. package/dist/client/chunks/chart-areachart-Beu8sO9v.js.map +1 -0
  22. package/dist/client/chunks/chart-areachart-config-InZgxubz.js +66 -0
  23. package/dist/client/chunks/chart-areachart-config-InZgxubz.js.map +1 -0
  24. package/dist/client/chunks/chart-barchart-BzoejYkT.js +177 -0
  25. package/dist/client/chunks/chart-barchart-BzoejYkT.js.map +1 -0
  26. package/dist/client/chunks/chart-barchart-config-DxatOnVV.js +59 -0
  27. package/dist/client/chunks/chart-barchart-config-DxatOnVV.js.map +1 -0
  28. package/dist/client/chunks/chart-bubblechart-Dg7sT_Mm.js +210 -0
  29. package/dist/client/chunks/chart-bubblechart-Dg7sT_Mm.js.map +1 -0
  30. package/dist/client/chunks/chart-bubblechart-config-CcZTMTCx.js +59 -0
  31. package/dist/client/chunks/chart-bubblechart-config-CcZTMTCx.js.map +1 -0
  32. package/dist/client/chunks/chart-chartcontainer-CdwzIKP1.js +103 -0
  33. package/dist/client/chunks/chart-chartcontainer-CdwzIKP1.js.map +1 -0
  34. package/dist/client/chunks/chart-charttooltip-NrFVM1cJ.js +26 -0
  35. package/dist/client/chunks/chart-charttooltip-NrFVM1cJ.js.map +1 -0
  36. package/dist/client/chunks/chart-datatable-BvV7gLPZ.js +57 -0
  37. package/dist/client/chunks/chart-datatable-BvV7gLPZ.js.map +1 -0
  38. package/dist/client/chunks/chart-datatable-config-D7mojhYA.js +22 -0
  39. package/dist/client/chunks/chart-datatable-config-D7mojhYA.js.map +1 -0
  40. package/dist/client/chunks/chart-kpidelta-config-icJXuFxe.js +99 -0
  41. package/dist/client/chunks/chart-kpidelta-config-icJXuFxe.js.map +1 -0
  42. package/dist/client/chunks/chart-kpidelta-p1lVVG5v.js +434 -0
  43. package/dist/client/chunks/chart-kpidelta-p1lVVG5v.js.map +1 -0
  44. package/dist/client/chunks/chart-kpinumber-BFtxFeqq.js +398 -0
  45. package/dist/client/chunks/chart-kpinumber-BFtxFeqq.js.map +1 -0
  46. package/dist/client/chunks/chart-kpinumber-config-T39g03ud.js +77 -0
  47. package/dist/client/chunks/chart-kpinumber-config-T39g03ud.js.map +1 -0
  48. package/dist/client/chunks/chart-kpitext-CX1s1u8B.js +165 -0
  49. package/dist/client/chunks/chart-kpitext-CX1s1u8B.js.map +1 -0
  50. package/dist/client/chunks/chart-kpitext-config-BbJGXAVk.js +49 -0
  51. package/dist/client/chunks/chart-kpitext-config-BbJGXAVk.js.map +1 -0
  52. package/dist/client/chunks/chart-linechart-Dgb10zbj.js +155 -0
  53. package/dist/client/chunks/chart-linechart-Dgb10zbj.js.map +1 -0
  54. package/dist/client/chunks/chart-linechart-config-BS1qVC8K.js +54 -0
  55. package/dist/client/chunks/chart-linechart-config-BS1qVC8K.js.map +1 -0
  56. package/dist/client/chunks/chart-markdownchart-C3FAQFuO.js +254 -0
  57. package/dist/client/chunks/chart-markdownchart-C3FAQFuO.js.map +1 -0
  58. package/dist/client/chunks/chart-markdownchart-config-DMCD8phf.js +62 -0
  59. package/dist/client/chunks/chart-markdownchart-config-DMCD8phf.js.map +1 -0
  60. package/dist/client/chunks/chart-piechart-B-0BQh-d.js +121 -0
  61. package/dist/client/chunks/chart-piechart-B-0BQh-d.js.map +1 -0
  62. package/dist/client/chunks/chart-piechart-config-6ZK8XaSX.js +32 -0
  63. package/dist/client/chunks/chart-piechart-config-6ZK8XaSX.js.map +1 -0
  64. package/dist/client/chunks/chart-radarchart-BwZM1yTd.js +124 -0
  65. package/dist/client/chunks/chart-radarchart-BwZM1yTd.js.map +1 -0
  66. package/dist/client/chunks/chart-radarchart-config-CCWOkkwO.js +38 -0
  67. package/dist/client/chunks/chart-radarchart-config-CCWOkkwO.js.map +1 -0
  68. package/dist/client/chunks/chart-radialbarchart-CythI1zx.js +109 -0
  69. package/dist/client/chunks/chart-radialbarchart-CythI1zx.js.map +1 -0
  70. package/dist/client/chunks/chart-radialbarchart-config-DicXYrMW.js +31 -0
  71. package/dist/client/chunks/chart-radialbarchart-config-DicXYrMW.js.map +1 -0
  72. package/dist/client/chunks/chart-scatterchart-config-DgYa-5vm.js +41 -0
  73. package/dist/client/chunks/chart-scatterchart-config-DgYa-5vm.js.map +1 -0
  74. package/dist/client/chunks/chart-scatterchart-om9-qmtE.js +201 -0
  75. package/dist/client/chunks/chart-scatterchart-om9-qmtE.js.map +1 -0
  76. package/dist/client/chunks/chart-treemapchart-Dc35Miif.js +253 -0
  77. package/dist/client/chunks/chart-treemapchart-Dc35Miif.js.map +1 -0
  78. package/dist/client/chunks/chart-treemapchart-config-DGhteyBe.js +40 -0
  79. package/dist/client/chunks/chart-treemapchart-config-DGhteyBe.js.map +1 -0
  80. package/dist/client/chunks/charts-DL9XOlaK.js +286 -0
  81. package/dist/client/chunks/charts-DL9XOlaK.js.map +1 -0
  82. package/dist/client/chunks/{icons-Bky5w1eH.js → icons-D-n_woAP.js} +833 -783
  83. package/dist/client/chunks/icons-D-n_woAP.js.map +1 -0
  84. package/dist/client/chunks/index-DpEuGmcW.js +8707 -0
  85. package/dist/client/chunks/index-DpEuGmcW.js.map +1 -0
  86. package/dist/client/components/QueryBuilder/ShareWarningModal.d.ts +9 -0
  87. package/dist/client/components/QueryBuilder/shareUtils.d.ts +59 -0
  88. package/dist/client/components/QueryBuilder/types.d.ts +21 -1
  89. package/dist/client/components.js +11 -11
  90. package/dist/client/hooks.js +3 -3
  91. package/dist/client/index.d.ts +18 -1
  92. package/dist/client/index.js +9135 -39
  93. package/dist/client/index.js.map +1 -1
  94. package/dist/client/providers.js +4 -4
  95. package/dist/client/styles.css +1 -1
  96. package/dist/client-bundle-stats.html +1 -1
  97. package/dist/server/index.cjs +16 -16
  98. package/dist/server/index.d.ts +0 -286
  99. package/dist/server/index.js +767 -881
  100. package/package.json +8 -2
  101. package/dist/client/chunks/charts-jwgcWeFt.js +0 -2580
  102. package/dist/client/chunks/charts-jwgcWeFt.js.map +0 -1
  103. package/dist/client/chunks/components-fN-QOY6G.js +0 -21835
  104. package/dist/client/chunks/components-fN-QOY6G.js.map +0 -1
  105. package/dist/client/chunks/icons-Bky5w1eH.js.map +0 -1
  106. package/dist/client/chunks/providers-D7zRgZrO.js +0 -308
  107. package/dist/client/chunks/providers-D7zRgZrO.js.map +0 -1
@@ -0,0 +1,9 @@
1
+ import { default as React } from 'react';
2
+ export interface ShareWarningModalProps {
3
+ isOpen: boolean;
4
+ onClose: () => void;
5
+ size: number;
6
+ maxSize: number;
7
+ }
8
+ declare const ShareWarningModal: React.FC<ShareWarningModalProps>;
9
+ export default ShareWarningModal;
@@ -0,0 +1,59 @@
1
+ import { CubeQuery, ChartType, ChartAxisConfig, ChartDisplayConfig } from '../../types';
2
+ /**
3
+ * State that can be shared via URL
4
+ * Query is required, chart config is optional (may be dropped if too large)
5
+ */
6
+ export interface ShareableState {
7
+ query: CubeQuery;
8
+ chartType?: ChartType;
9
+ chartConfig?: ChartAxisConfig;
10
+ displayConfig?: ChartDisplayConfig;
11
+ activeView?: 'table' | 'chart';
12
+ }
13
+ /**
14
+ * Result of compression with fallback
15
+ */
16
+ export interface CompressionResult {
17
+ encoded: string | null;
18
+ queryOnly: boolean;
19
+ }
20
+ /**
21
+ * Compress state to URL-safe encoded string
22
+ */
23
+ export declare function compressAndEncode(state: ShareableState): string;
24
+ /**
25
+ * Decompress URL-safe encoded string back to state
26
+ * Returns null if decompression or parsing fails
27
+ */
28
+ export declare function decodeAndDecompress(encoded: string): ShareableState | null;
29
+ /**
30
+ * Check if compressed state fits within URL length limit
31
+ */
32
+ export declare function isShareableSize(state: ShareableState): {
33
+ ok: boolean;
34
+ size: number;
35
+ maxSize: number;
36
+ };
37
+ /**
38
+ * Compress state with automatic fallback
39
+ * If full state is too large, tries with query only
40
+ * Returns null encoded if even query-only is too large
41
+ */
42
+ export declare function compressWithFallback(state: ShareableState): CompressionResult;
43
+ /**
44
+ * Generate full share URL with compressed state in hash
45
+ */
46
+ export declare function generateShareUrl(state: ShareableState): string | null;
47
+ /**
48
+ * Parse share hash from current URL
49
+ * Returns encoded string if #share= is present, null otherwise
50
+ */
51
+ export declare function parseShareHash(): string | null;
52
+ /**
53
+ * Clear share hash from URL without page reload
54
+ */
55
+ export declare function clearShareHash(): void;
56
+ /**
57
+ * Get the maximum allowed hash length
58
+ */
59
+ export declare function getMaxHashLength(): number;
@@ -1,4 +1,4 @@
1
- import { CubeQuery, FilterOperator, Filter, SimpleFilter, GroupFilter } from '../../types';
1
+ import { CubeQuery, FilterOperator, Filter, SimpleFilter, GroupFilter, ChartType, ChartAxisConfig, ChartDisplayConfig } from '../../types';
2
2
  export interface MetaField {
3
3
  name: string;
4
4
  title: string;
@@ -126,6 +126,8 @@ export interface QueryBuilderProps {
126
126
  initialQuery?: CubeQuery;
127
127
  disableLocalStorage?: boolean;
128
128
  hideSettings?: boolean;
129
+ enableSharing?: boolean;
130
+ onShare?: (url: string) => void;
129
131
  }
130
132
  export interface QueryBuilderRef {
131
133
  getCurrentQuery: () => CubeQuery;
@@ -152,6 +154,7 @@ export interface CubeMetaExplorerProps {
152
154
  onViewTypeChange?: (viewType: 'tree' | 'diagram') => void;
153
155
  isExpanded?: boolean;
154
156
  }
157
+ export type ShareButtonState = 'idle' | 'copied' | 'copied-no-chart';
155
158
  export interface QueryPanelProps {
156
159
  query: CubeQuery;
157
160
  schema: MetaResponse | null;
@@ -175,6 +178,14 @@ export interface QueryPanelProps {
175
178
  onSettingsClick?: () => void;
176
179
  onAIAssistantClick?: () => void;
177
180
  onSchemaClick?: () => void;
181
+ onShareClick?: () => void;
182
+ shareButtonState?: ShareButtonState;
183
+ isViewingShared?: boolean;
184
+ }
185
+ export interface AvailableFields {
186
+ dimensions: string[];
187
+ timeDimensions: string[];
188
+ measures: string[];
178
189
  }
179
190
  export interface ResultsPanelProps {
180
191
  executionStatus: ExecutionStatus;
@@ -185,6 +196,15 @@ export interface ResultsPanelProps {
185
196
  onDisplayLimitChange?: (limit: number) => void;
186
197
  totalRowCount?: number | null;
187
198
  totalRowCountStatus?: 'idle' | 'loading' | 'success' | 'error';
199
+ chartType?: ChartType;
200
+ chartConfig?: ChartAxisConfig;
201
+ displayConfig?: ChartDisplayConfig;
202
+ availableFields?: AvailableFields | null;
203
+ onChartTypeChange?: (type: ChartType) => void;
204
+ onChartConfigChange?: (config: ChartAxisConfig) => void;
205
+ onDisplayConfigChange?: (config: ChartDisplayConfig) => void;
206
+ activeView?: 'table' | 'chart';
207
+ onActiveViewChange?: (view: 'table' | 'chart') => void;
188
208
  }
189
209
  export declare const TIME_GRANULARITIES: readonly [{
190
210
  readonly value: "hour";
@@ -1,19 +1,19 @@
1
- import { a as t, A as s, c as o, D as r, M as d, P as l, b as i, Q as n } from "./chunks/components-fN-QOY6G.js";
2
- import { c as b, H as c, F as u, E as y, z as D, G as h } from "./chunks/charts-jwgcWeFt.js";
1
+ import { AnalyticsDashboard as t, AnalyticsPortlet as o, DashboardEditModal as r, DashboardGrid as s, Modal as d, PortletContainer as l, PortletEditModal as i, QueryBuilder as n } from "./index.js";
2
+ import { c as y, j as P, h as b, e as c, d as h, v as p } from "./chunks/charts-DL9XOlaK.js";
3
3
  export {
4
4
  t as AnalyticsDashboard,
5
- s as AnalyticsPortlet,
6
- o as DashboardEditModal,
7
- r as DashboardGrid,
5
+ o as AnalyticsPortlet,
6
+ r as DashboardEditModal,
7
+ s as DashboardGrid,
8
8
  d as Modal,
9
9
  l as PortletContainer,
10
10
  i as PortletEditModal,
11
11
  n as QueryBuilder,
12
- b as createDashboardLayout,
13
- c as createSamplePortlet,
14
- u as findNextPosition,
15
- y as generatePortletId,
16
- D as generateResponsiveLayouts,
17
- h as validateCubeQuery
12
+ y as createDashboardLayout,
13
+ P as createSamplePortlet,
14
+ b as findNextPosition,
15
+ c as generatePortletId,
16
+ h as generateResponsiveLayouts,
17
+ p as validateCubeQuery
18
18
  };
19
19
  //# sourceMappingURL=components.js.map
@@ -1,6 +1,6 @@
1
1
  import { useState as b, useRef as w, useEffect as y, useCallback as C, useMemo as m } from "react";
2
- import { u as L } from "./chunks/providers-D7zRgZrO.js";
3
- import { a as F } from "./chunks/providers-D7zRgZrO.js";
2
+ import { u as L } from "./chunks/chart-activitygridchart-BRk9BNnp.js";
3
+ import { A } from "./chunks/chart-activitygridchart-BRk9BNnp.js";
4
4
  function W(e, r = {}) {
5
5
  const { cubeApi: s, batchCoordinator: u, enableBatching: a } = L(), [l, d] = b({
6
6
  resultSet: null,
@@ -164,7 +164,7 @@ function k() {
164
164
  };
165
165
  }
166
166
  export {
167
- F as useCubeMeta,
167
+ A as useCubeMeta,
168
168
  W as useCubeQuery,
169
169
  Q as useDebounce,
170
170
  D as useFilterValues,
@@ -1,8 +1,25 @@
1
+ /**
2
+ * Drizzle Cube Client Components
3
+ *
4
+ * React components for building analytics dashboards with minimal dependencies.
5
+ * Designed to be embedded in existing applications with their own auth/navigation.
6
+ *
7
+ * For modular imports, consider using:
8
+ * - 'drizzle-cube/client/charts' - Chart components only
9
+ * - 'drizzle-cube/client/hooks' - React hooks only
10
+ * - 'drizzle-cube/client/providers' - Context providers only
11
+ * - 'drizzle-cube/client/components' - UI components (no charts)
12
+ * - 'drizzle-cube/client/utils' - Utility functions only
13
+ *
14
+ * IMPORTANT: CSS is NOT auto-imported. Add to your app entry:
15
+ * import 'drizzle-cube/client/styles.css'
16
+ */
1
17
  export { default as AnalyticsPortlet } from './components/AnalyticsPortlet';
2
18
  export { default as AnalyticsDashboard } from './components/AnalyticsDashboard';
3
19
  export { default as LoadingIndicator } from './components/LoadingIndicator';
4
20
  export type { LoadingIndicatorProps } from './components/LoadingIndicator';
5
- export { RechartsBarChart, RechartsLineChart, RechartsAreaChart, RechartsPieChart, RechartsScatterChart, RechartsRadarChart, RechartsRadialBarChart, RechartsTreeMapChart, DataTable } from './components/charts';
21
+ export { LazyChart, preloadChart, preloadCharts, isValidChartType, getAvailableChartTypes } from './charts/ChartLoader';
22
+ export type { LazyChartProps } from './charts/ChartLoader';
6
23
  export { default as DashboardGrid } from './components/DashboardGrid';
7
24
  export { default as PortletContainer } from './components/PortletContainer';
8
25
  export { default as PortletEditModal } from './components/PortletEditModal';