@thoughtspot/ts-chart-sdk 0.0.1-alpha.0 → 0.0.1-alpha.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 (104) hide show
  1. package/README.md +782 -0
  2. package/cjs/index.d.ts +8 -0
  3. package/cjs/index.d.ts.map +1 -0
  4. package/cjs/index.js +24 -0
  5. package/cjs/index.js.map +1 -0
  6. package/cjs/main/custom-chart-context.d.ts +39 -0
  7. package/cjs/main/custom-chart-context.d.ts.map +1 -0
  8. package/cjs/main/custom-chart-context.js +211 -0
  9. package/cjs/main/custom-chart-context.js.map +1 -0
  10. package/cjs/main/custom-chart-context.spec.d.ts +2 -0
  11. package/cjs/main/custom-chart-context.spec.d.ts.map +1 -0
  12. package/cjs/main/custom-chart-context.spec.js +379 -0
  13. package/cjs/main/custom-chart-context.spec.js.map +1 -0
  14. package/cjs/main/post-message-event-bridge.d.ts +6 -0
  15. package/cjs/main/post-message-event-bridge.d.ts.map +1 -0
  16. package/cjs/main/post-message-event-bridge.js +46 -0
  17. package/cjs/main/post-message-event-bridge.js.map +1 -0
  18. package/cjs/main/post-message-event-bridge.spec.d.ts +2 -0
  19. package/cjs/main/post-message-event-bridge.spec.d.ts.map +1 -0
  20. package/cjs/main/post-message-event-bridge.spec.js +124 -0
  21. package/cjs/main/post-message-event-bridge.spec.js.map +1 -0
  22. package/cjs/react/custom-chart-context-service.d.ts +33 -0
  23. package/cjs/react/custom-chart-context-service.d.ts.map +1 -0
  24. package/cjs/react/custom-chart-context-service.js +118 -0
  25. package/cjs/react/custom-chart-context-service.js.map +1 -0
  26. package/cjs/react/custom-chart.context.d.ts +26 -0
  27. package/cjs/react/custom-chart.context.d.ts.map +1 -0
  28. package/cjs/react/custom-chart.context.js +105 -0
  29. package/cjs/react/custom-chart.context.js.map +1 -0
  30. package/cjs/react/custom-chart.spec.d.ts +2 -0
  31. package/cjs/react/custom-chart.spec.d.ts.map +1 -0
  32. package/cjs/react/custom-chart.spec.js +72 -0
  33. package/cjs/react/custom-chart.spec.js.map +1 -0
  34. package/cjs/test/test-utils.d.ts +7 -0
  35. package/cjs/test/test-utils.d.ts.map +1 -0
  36. package/cjs/test/test-utils.js +14 -0
  37. package/cjs/test/test-utils.js.map +1 -0
  38. package/cjs/types/answer-column.types.d.ts +69 -0
  39. package/cjs/types/answer-column.types.d.ts.map +1 -0
  40. package/cjs/types/answer-column.types.js +59 -0
  41. package/cjs/types/answer-column.types.js.map +1 -0
  42. package/cjs/types/chart-to-ts-event.types.d.ts +63 -0
  43. package/cjs/types/chart-to-ts-event.types.d.ts.map +1 -0
  44. package/cjs/types/chart-to-ts-event.types.js +22 -0
  45. package/cjs/types/chart-to-ts-event.types.js.map +1 -0
  46. package/cjs/types/common.types.d.ts +50 -0
  47. package/cjs/types/common.types.d.ts.map +1 -0
  48. package/cjs/types/common.types.js +3 -0
  49. package/cjs/types/common.types.js.map +1 -0
  50. package/cjs/types/configurator.types.d.ts +15 -0
  51. package/cjs/types/configurator.types.d.ts.map +1 -0
  52. package/cjs/types/configurator.types.js +3 -0
  53. package/cjs/types/configurator.types.js.map +1 -0
  54. package/cjs/types/ts-to-chart-event.types.d.ts +69 -0
  55. package/cjs/types/ts-to-chart-event.types.d.ts.map +1 -0
  56. package/cjs/types/ts-to-chart-event.types.js +16 -0
  57. package/cjs/types/ts-to-chart-event.types.js.map +1 -0
  58. package/cjs/types/visual-prop.types.d.ts +47 -0
  59. package/cjs/types/visual-prop.types.d.ts.map +1 -0
  60. package/cjs/types/visual-prop.types.js +3 -0
  61. package/cjs/types/visual-prop.types.js.map +1 -0
  62. package/lib/main/custom-chart-context.d.ts +2 -1
  63. package/lib/main/custom-chart-context.d.ts.map +1 -1
  64. package/lib/main/custom-chart-context.js +11 -7
  65. package/lib/main/custom-chart-context.js.map +1 -1
  66. package/lib/main/custom-chart-context.spec.js +64 -25
  67. package/lib/main/custom-chart-context.spec.js.map +1 -1
  68. package/lib/main/post-message-event-bridge.js +1 -1
  69. package/lib/main/post-message-event-bridge.js.map +1 -1
  70. package/lib/main/post-message-event-bridge.spec.js +5 -3
  71. package/lib/main/post-message-event-bridge.spec.js.map +1 -1
  72. package/lib/react/custom-chart-context-service.d.ts +33 -0
  73. package/lib/react/custom-chart-context-service.d.ts.map +1 -0
  74. package/lib/react/custom-chart-context-service.js +91 -0
  75. package/lib/react/custom-chart-context-service.js.map +1 -0
  76. package/lib/react/custom-chart.context.d.ts +26 -0
  77. package/lib/react/custom-chart.context.d.ts.map +1 -0
  78. package/lib/react/custom-chart.context.js +78 -0
  79. package/lib/react/custom-chart.context.js.map +1 -0
  80. package/lib/react/custom-chart.spec.d.ts +2 -0
  81. package/lib/react/custom-chart.spec.d.ts.map +1 -0
  82. package/lib/react/custom-chart.spec.js +67 -0
  83. package/lib/react/custom-chart.spec.js.map +1 -0
  84. package/lib/types/chart-to-ts-event.types.d.ts +26 -11
  85. package/lib/types/chart-to-ts-event.types.d.ts.map +1 -1
  86. package/lib/types/chart-to-ts-event.types.js +3 -0
  87. package/lib/types/chart-to-ts-event.types.js.map +1 -1
  88. package/lib/types/common.types.d.ts +7 -8
  89. package/lib/types/common.types.d.ts.map +1 -1
  90. package/lib/types/ts-to-chart-event.types.d.ts +2 -0
  91. package/lib/types/ts-to-chart-event.types.d.ts.map +1 -1
  92. package/lib/types/ts-to-chart-event.types.js +1 -0
  93. package/lib/types/ts-to-chart-event.types.js.map +1 -1
  94. package/package.json +2 -2
  95. package/src/main/custom-chart-context.spec.ts +87 -26
  96. package/src/main/custom-chart-context.ts +26 -16
  97. package/src/main/post-message-event-bridge.spec.ts +5 -3
  98. package/src/main/post-message-event-bridge.ts +3 -3
  99. package/src/types/answer-column.types.ts +5 -5
  100. package/src/types/chart-to-ts-event.types.ts +68 -30
  101. package/src/types/common.types.ts +22 -25
  102. package/src/types/configurator.types.ts +8 -8
  103. package/src/types/ts-to-chart-event.types.ts +10 -4
  104. package/src/types/visual-prop.types.ts +11 -11
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.useChartContext = void 0;
27
+ const react_1 = __importStar(require("react"));
28
+ const custom_chart_context_1 = require("../main/custom-chart-context");
29
+ const chart_to_ts_event_types_1 = require("../types/chart-to-ts-event.types");
30
+ const ts_to_chart_event_types_1 = require("../types/ts-to-chart-event.types");
31
+ const emitter = (ctx) => {
32
+ function reducerFn(acc, eventKey) {
33
+ if (eventKey in chart_to_ts_event_types_1.ChartToTSEvent) {
34
+ const eventName = eventKey;
35
+ const emitterKey = `emit${eventKey}`;
36
+ acc[emitterKey] = (args) => {
37
+ return ctx.emitEvent(eventName, ...args);
38
+ };
39
+ }
40
+ return acc;
41
+ }
42
+ return Object.keys(chart_to_ts_event_types_1.ChartToTSEvent).reduce(reducerFn, {});
43
+ };
44
+ const eventListener = (ctx) => {
45
+ function reducerFn(acc, eventKey) {
46
+ if (eventKey in ts_to_chart_event_types_1.TSToChartEvent) {
47
+ const eventName = eventKey;
48
+ const emitterKey = `on${eventKey}`;
49
+ acc[emitterKey] = (callbackFn) => {
50
+ ctx.on(eventName, callbackFn);
51
+ return Promise.resolve();
52
+ };
53
+ }
54
+ return acc;
55
+ }
56
+ return Object.keys(ts_to_chart_event_types_1.TSToChartEvent).reduce(reducerFn, {});
57
+ };
58
+ const useChartContext = (props) => {
59
+ const [hasInitialized, setHasInitialized] = (0, react_1.useState)(false);
60
+ const [key, setKey] = (0, react_1.useState)(0);
61
+ const [ctx, setContextState] = (0, react_1.useState)({});
62
+ const [chartModel, setChartModel] = (0, react_1.useState)();
63
+ const [emitters, setEmitters] = (0, react_1.useState)(emitter({
64
+ emitEvent: () => {
65
+ },
66
+ }));
67
+ const [listeners, setListeners] = (0, react_1.useState)(eventListener({
68
+ on: () => {
69
+ },
70
+ }));
71
+ const initializeProvider = async (context) => {
72
+ return context.initialize().then(() => {
73
+ setHasInitialized(true);
74
+ setContextState(context);
75
+ setChartModel(context.getChartModel());
76
+ setEmitters(emitter(context));
77
+ setListeners(eventListener(context));
78
+ listeners.onChartModelUpdate((payload) => {
79
+ setChartModel(context.getChartModel());
80
+ });
81
+ listeners.onVisualPropsUpdate((payload) => {
82
+ setChartModel(context.getChartModel());
83
+ return {
84
+ triggerRenderChart: true,
85
+ };
86
+ });
87
+ listeners.onDataUpdate((payload) => {
88
+ setChartModel(context.getChartModel());
89
+ });
90
+ return true;
91
+ });
92
+ };
93
+ const renderChart = (0, react_1.useCallback)((ctx) => {
94
+ console.log('Here', key);
95
+ setKey(key + 1);
96
+ return Promise.resolve();
97
+ }, [key]);
98
+ const WrapperComponent = (0, react_1.useCallback)(({ children }) => {
99
+ console.log(key);
100
+ return react_1.default.createElement("div", { key: key }, children);
101
+ }, [key]);
102
+ (0, react_1.useEffect)(() => {
103
+ const context = new custom_chart_context_1.CustomChartContext({
104
+ ...props,
105
+ renderChart,
106
+ });
107
+ initializeProvider(context);
108
+ }, []);
109
+ return {
110
+ hasInitialized,
111
+ chartModel,
112
+ ...emitters,
113
+ ...listeners,
114
+ WrapperComponent,
115
+ };
116
+ };
117
+ exports.useChartContext = useChartContext;
118
+ //# sourceMappingURL=custom-chart-context-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-chart-context-service.js","sourceRoot":"","sources":["../../src/react/custom-chart-context-service.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import React from 'react';
2
+ import { CustomChartContextProps } from '../main/custom-chart-context';
3
+ import { ChartToTSEventsPayloadMap } from '../types/chart-to-ts-event.types';
4
+ import { ChartModel } from '../types/common.types';
5
+ import { TSToChartEventsPayloadMap } from '../types/ts-to-chart-event.types';
6
+ export type ChartToTSEventEmitters = {
7
+ [key in keyof ChartToTSEventsPayloadMap as `emit${Capitalize<key>}`]: (args: ChartToTSEventsPayloadMap[key]) => Promise<void>;
8
+ };
9
+ export type TSToChartEventListener = {
10
+ [key in keyof TSToChartEventsPayloadMap as `on${Capitalize<key>}`]: (args: TSToChartEventsPayloadMap[key]) => Promise<void>;
11
+ };
12
+ interface ChartContextProps extends ChartToTSEventEmitters, TSToChartEventListener {
13
+ hasInitialized: boolean;
14
+ chartModel: ChartModel | undefined;
15
+ }
16
+ interface ChartProviderProps {
17
+ contextProps: CustomChartContextProps;
18
+ children: React.ReactElement;
19
+ }
20
+ export interface AppChartRef {
21
+ render: () => void;
22
+ }
23
+ declare const ChartContext: React.Context<ChartContextProps>;
24
+ declare const ChartProvider: React.FC<ChartProviderProps>;
25
+ export { ChartContext, ChartProvider };
26
+ //# sourceMappingURL=custom-chart.context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-chart.context.d.ts","sourceRoot":"","sources":["../../src/react/custom-chart.context.tsx"],"names":[],"mappings":"AACA,OAAO,KAA+C,MAAM,OAAO,CAAC;AACpE,OAAO,EAEH,uBAAuB,EAC1B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAEH,yBAAyB,EAC5B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAIH,yBAAyB,EAE5B,MAAM,kCAAkC,CAAC;AAE1C,MAAM,MAAM,sBAAsB,GAAG;KAChC,GAAG,IAAI,MAAM,yBAAyB,IAAI,OAAO,UAAU,CAAC,GAAG,CAAC,EAAE,GAAG,CAClE,IAAI,EAAE,yBAAyB,CAAC,GAAG,CAAC,KACnC,OAAO,CAAC,IAAI,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;KAChC,GAAG,IAAI,MAAM,yBAAyB,IAAI,KAAK,UAAU,CAAC,GAAG,CAAC,EAAE,GAAG,CAChE,IAAI,EAAE,yBAAyB,CAAC,GAAG,CAAC,KACnC,OAAO,CAAC,IAAI,CAAC;CACrB,CAAC;AAEF,UAAU,iBACN,SAAQ,sBAAsB,EAC1B,sBAAsB;IAC1B,cAAc,EAAE,OAAO,CAAC;IACxB,UAAU,EAAE,UAAU,GAAG,SAAS,CAAC;CACtC;AAED,UAAU,kBAAkB;IACxB,YAAY,EAAE,uBAAuB,CAAC;IACtC,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC;CAChC;AAED,MAAM,WAAW,WAAW;IACxB,MAAM,EAAE,MAAM,IAAI,CAAC;CACtB;AAqDD,QAAA,MAAM,YAAY,kCAA4D,CAAC;AAE/E,QAAA,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAmE/C,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC"}
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.ChartProvider = exports.ChartContext = void 0;
27
+ const react_1 = __importStar(require("react"));
28
+ const custom_chart_context_1 = require("../main/custom-chart-context");
29
+ const chart_to_ts_event_types_1 = require("../types/chart-to-ts-event.types");
30
+ const ts_to_chart_event_types_1 = require("../types/ts-to-chart-event.types");
31
+ const emitter = (ctx) => {
32
+ function reducerFn(acc, eventKey) {
33
+ if (eventKey in chart_to_ts_event_types_1.ChartToTSEvent) {
34
+ const eventName = eventKey;
35
+ const emitterKey = `emit${eventKey}`;
36
+ acc[emitterKey] = (args) => {
37
+ console.log("sds");
38
+ return ctx.emitEvent(eventName, ...args);
39
+ };
40
+ }
41
+ return acc;
42
+ }
43
+ return Object.keys(chart_to_ts_event_types_1.ChartToTSEvent).reduce(reducerFn, {});
44
+ };
45
+ const eventListener = (ctx) => {
46
+ function reducerFn(acc, eventKey) {
47
+ if (eventKey in ts_to_chart_event_types_1.TSToChartEvent) {
48
+ const eventName = eventKey;
49
+ const emitterKey = `on${eventKey}`;
50
+ acc[emitterKey] = (callbackFn) => {
51
+ ctx.on(eventName, callbackFn);
52
+ return Promise.resolve();
53
+ };
54
+ }
55
+ return acc;
56
+ }
57
+ return Object.keys(ts_to_chart_event_types_1.TSToChartEvent).reduce(reducerFn, {});
58
+ };
59
+ const ChartContext = (0, react_1.createContext)({});
60
+ exports.ChartContext = ChartContext;
61
+ const ChartProvider = ({ contextProps, children, }) => {
62
+ const [hasInitialized, setHasInitialized] = (0, react_1.useState)(false);
63
+ const [ctx, setContextState] = (0, react_1.useState)({});
64
+ const [chartModel, setChartModel] = (0, react_1.useState)();
65
+ const initializeProvider = async (context) => {
66
+ return context.initialize().then(() => {
67
+ setHasInitialized(true);
68
+ setContextState(context);
69
+ return true;
70
+ });
71
+ };
72
+ const getChartContextValues = (0, react_1.useCallback)((ctx) => ({
73
+ hasInitialized,
74
+ chartModel,
75
+ ...emitter(ctx),
76
+ ...eventListener(ctx),
77
+ }), [ctx, chartModel]);
78
+ react_1.default.useEffect(() => {
79
+ const context = new custom_chart_context_1.CustomChartContext({
80
+ ...contextProps,
81
+ });
82
+ initializeProvider(context);
83
+ getChartContextValues(context).onChartModelUpdate((payload) => {
84
+ setChartModel(payload.chartModel);
85
+ });
86
+ getChartContextValues(context).onVisualPropsUpdate((payload) => {
87
+ setChartModel({
88
+ ...context.getChartModel(),
89
+ visualProps: payload.visualProps,
90
+ });
91
+ return {
92
+ triggerRenderChart: true,
93
+ };
94
+ });
95
+ getChartContextValues(context).onDataUpdate((payload) => {
96
+ setChartModel({
97
+ ...context.getChartModel(),
98
+ data: payload.data,
99
+ });
100
+ });
101
+ }, []);
102
+ return (react_1.default.createElement(ChartContext.Provider, { value: getChartContextValues(ctx) }, children));
103
+ };
104
+ exports.ChartProvider = ChartProvider;
105
+ //# sourceMappingURL=custom-chart.context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-chart.context.js","sourceRoot":"","sources":["../../src/react/custom-chart.context.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=custom-chart.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-chart.spec.d.ts","sourceRoot":"","sources":["../../src/react/custom-chart.spec.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const react_1 = require("@testing-library/react");
7
+ const react_2 = __importDefault(require("react"));
8
+ const chart_to_ts_event_types_1 = require("../types/chart-to-ts-event.types");
9
+ const ts_to_chart_event_types_1 = require("../types/ts-to-chart-event.types");
10
+ const custom_chart_context_1 = require("./custom-chart.context");
11
+ describe('ChartProvider', () => {
12
+ afterEach(() => {
13
+ jest.clearAllMocks();
14
+ });
15
+ test('renders children correctly for empty data', () => {
16
+ const { getByTestId } = (0, react_1.render)(react_2.default.createElement(custom_chart_context_1.ChartProvider, { contextProps: {
17
+ getDefaultChartConfig: (chartModel) => [],
18
+ getQueriesFromChartConfig: (chartConfig) => [],
19
+ renderChart: () => Promise.resolve(),
20
+ } },
21
+ react_2.default.createElement("div", { "data-testid": "child-component" }, "Test Child")));
22
+ const childContent = getByTestId('child-component').textContent;
23
+ expect(childContent).toBe('Test Child');
24
+ });
25
+ test.only('emitters and event listeners work as expected', async () => {
26
+ const emitEvent = jest.fn().mockResolvedValue(true);
27
+ const on = jest.fn();
28
+ jest.mock('../main/custom-chart-context', () => {
29
+ return {
30
+ CustomChartContext: jest.fn().mockImplementation(() => ({
31
+ initialize: jest.fn().mockImplementation(async () => {
32
+ return Promise.resolve();
33
+ }),
34
+ emitEvent,
35
+ on,
36
+ getChartModel: jest.fn().mockReturnValue({}),
37
+ })),
38
+ };
39
+ });
40
+ const TestComponent = () => {
41
+ const chartContext = react_2.default.useContext(custom_chart_context_1.ChartContext);
42
+ const emitRenderChart = async () => {
43
+ await chartContext.emitRenderStart([]);
44
+ };
45
+ if (!chartContext.hasInitialized) {
46
+ return react_2.default.createElement("div", null, "Loading...");
47
+ }
48
+ return (react_2.default.createElement("div", null,
49
+ react_2.default.createElement("button", { onClick: emitRenderChart }, "Emit Event")));
50
+ };
51
+ const { getByRole } = (0, react_1.render)(react_2.default.createElement(custom_chart_context_1.ChartProvider, { contextProps: {
52
+ getDefaultChartConfig: (chartModel) => [],
53
+ getQueriesFromChartConfig: (chartModel) => [],
54
+ renderChart: (ctx) => Promise.resolve(),
55
+ } },
56
+ react_2.default.createElement(TestComponent, null)));
57
+ await (0, react_1.waitFor)(() => {
58
+ expect(getByRole('button')).toBeDefined();
59
+ });
60
+ const button = getByRole('button');
61
+ react_1.fireEvent.click(button);
62
+ expect(emitEvent).toHaveBeenCalledWith(chart_to_ts_event_types_1.ChartToTSEvent.RenderStart);
63
+ const chartModelUpdateCallback = jest.fn();
64
+ on.mockImplementation((event, callback) => {
65
+ if (event === ts_to_chart_event_types_1.TSToChartEvent.ChartModelUpdate) {
66
+ chartModelUpdateCallback();
67
+ }
68
+ });
69
+ expect(chartModelUpdateCallback).toHaveBeenCalled();
70
+ });
71
+ });
72
+ //# sourceMappingURL=custom-chart.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-chart.spec.js","sourceRoot":"","sources":["../../src/react/custom-chart.spec.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { ChartModel } from '../types/common.types';
2
+ export declare const mockInitializeContextPayload: {
3
+ componentId: string;
4
+ hostUrl: string;
5
+ chartModel: ChartModel;
6
+ };
7
+ //# sourceMappingURL=test-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-utils.d.ts","sourceRoot":"","sources":["../../src/test/test-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAQnD,eAAO,MAAM,4BAA4B;;;;CAIxC,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mockInitializeContextPayload = void 0;
4
+ const mockChartModel = {
5
+ config: {
6
+ chartConfig: {},
7
+ },
8
+ };
9
+ exports.mockInitializeContextPayload = {
10
+ componentId: 'COMPONENT_ID',
11
+ hostUrl: 'https://some.chart.app',
12
+ chartModel: mockChartModel,
13
+ };
14
+ //# sourceMappingURL=test-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-utils.js","sourceRoot":"","sources":["../../src/test/test-utils.ts"],"names":[],"mappings":";;;AAEA,MAAM,cAAc,GAAG;IACnB,MAAM,EAAE;QACJ,WAAW,EAAE,EAAE;KAClB;CACU,CAAC;AAEH,QAAA,4BAA4B,GAAG;IACxC,WAAW,EAAE,cAAc;IAC3B,OAAO,EAAE,wBAAwB;IACjC,UAAU,EAAE,cAAc;CAC7B,CAAC"}
@@ -0,0 +1,69 @@
1
+ export declare enum ColumnType {
2
+ UNKNOWN = 0,
3
+ MEASURE = 1,
4
+ ATTRIBUTE = 2
5
+ }
6
+ export declare enum DataType {
7
+ UNKNOWN = 0,
8
+ BOOL = 1,
9
+ CHAR = 2,
10
+ INT32 = 3,
11
+ INT64 = 4,
12
+ FLOAT = 5,
13
+ DOUBLE = 6,
14
+ DATE = 7,
15
+ DATE_TIME = 8,
16
+ TIME = 9,
17
+ MAX_TYPE = 10
18
+ }
19
+ export declare enum ColumnTimeBucket {
20
+ NO_BUCKET = 0,
21
+ DAILY = 1,
22
+ WEEKLY = 2,
23
+ MONTHLY = 3,
24
+ QUARTERLY = 4,
25
+ YEARLY = 5,
26
+ HOURLY = 6,
27
+ AUTO = 7,
28
+ HOUR_OF_DAY = 8,
29
+ DAY_OF_WEEK = 9,
30
+ DAY_OF_MONTH = 10,
31
+ DAY_OF_QUARTER = 11,
32
+ DAY_OF_YEAR = 12,
33
+ WEEK_OF_MONTH = 13,
34
+ WEEK_OF_QUARTER = 14,
35
+ WEEK_OF_YEAR = 15,
36
+ MONTH_OF_QUARTER = 16,
37
+ MONTH_OF_YEAR = 17,
38
+ QUARTER_OF_YEAR = 18
39
+ }
40
+ export declare enum FormatType {
41
+ NONE = 0,
42
+ PATTERN = 1,
43
+ PERCENTAGE = 2,
44
+ CURRENCY = 3
45
+ }
46
+ export declare enum CurrencyFormatType {
47
+ USER_LOCALE = 0,
48
+ COLUMN = 1,
49
+ ISO_CODE = 2
50
+ }
51
+ export interface CurrencyFormat {
52
+ type: CurrencyFormatType;
53
+ column: string;
54
+ isoCode: string;
55
+ }
56
+ export interface ColumnFormat {
57
+ type: FormatType;
58
+ pattern?: string;
59
+ currencyFormat?: CurrencyFormat;
60
+ }
61
+ export interface ChartColumn {
62
+ id: string;
63
+ name: string;
64
+ type: ColumnType;
65
+ timeBucket: ColumnTimeBucket;
66
+ dataType: DataType;
67
+ format?: ColumnFormat;
68
+ }
69
+ //# sourceMappingURL=answer-column.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"answer-column.types.d.ts","sourceRoot":"","sources":["../../src/types/answer-column.types.ts"],"names":[],"mappings":"AAAA,oBAAY,UAAU;IAClB,OAAO,IAAA;IACP,OAAO,IAAA;IACP,SAAS,IAAA;CACZ;AAKD,oBAAY,QAAQ;IAChB,OAAO,IAAA;IAEP,IAAI,IAAA;IAEJ,IAAI,IAAA;IAEJ,KAAK,IAAA;IACL,KAAK,IAAA;IACL,KAAK,IAAA;IACL,MAAM,IAAA;IAEN,IAAI,IAAA;IACJ,SAAS,IAAA;IACT,IAAI,IAAA;IAEJ,QAAQ,KAAA;CACX;AAED,oBAAY,gBAAgB;IACxB,SAAS,IAAA;IACT,KAAK,IAAA;IACL,MAAM,IAAA;IACN,OAAO,IAAA;IACP,SAAS,IAAA;IACT,MAAM,IAAA;IACN,MAAM,IAAA;IACN,IAAI,IAAA;IACJ,WAAW,IAAA;IACX,WAAW,IAAA;IACX,YAAY,KAAA;IACZ,cAAc,KAAA;IACd,WAAW,KAAA;IACX,aAAa,KAAA;IACb,eAAe,KAAA;IACf,YAAY,KAAA;IACZ,gBAAgB,KAAA;IAChB,aAAa,KAAA;IACb,eAAe,KAAA;CAClB;AAOD,oBAAY,UAAU;IAClB,IAAI,IAAA;IACJ,OAAO,IAAA;IACP,UAAU,IAAA;IACV,QAAQ,IAAA;CACX;AAOD,oBAAY,kBAAkB;IAC1B,WAAW,IAAA;IACX,MAAM,IAAA;IACN,QAAQ,IAAA;CACX;AAOD,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,kBAAkB,CAAC;IAMzB,MAAM,EAAE,MAAM,CAAC;IAMf,OAAO,EAAE,MAAM,CAAC;CACnB;AAQD,MAAM,WAAW,YAAY;IACzB,IAAI,EAAE,UAAU,CAAC;IAOjB,OAAO,CAAC,EAAE,MAAM,CAAC;IAOjB,cAAc,CAAC,EAAE,cAAc,CAAC;CACnC;AAED,MAAM,WAAW,WAAW;IAMxB,EAAE,EAAE,MAAM,CAAC;IAMX,IAAI,EAAE,MAAM,CAAC;IAMb,IAAI,EAAE,UAAU,CAAC;IAQjB,UAAU,EAAE,gBAAgB,CAAC;IAO7B,QAAQ,EAAE,QAAQ,CAAC;IAqBnB,MAAM,CAAC,EAAE,YAAY,CAAC;CACzB"}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CurrencyFormatType = exports.FormatType = exports.ColumnTimeBucket = exports.DataType = exports.ColumnType = void 0;
4
+ var ColumnType;
5
+ (function (ColumnType) {
6
+ ColumnType[ColumnType["UNKNOWN"] = 0] = "UNKNOWN";
7
+ ColumnType[ColumnType["MEASURE"] = 1] = "MEASURE";
8
+ ColumnType[ColumnType["ATTRIBUTE"] = 2] = "ATTRIBUTE";
9
+ })(ColumnType = exports.ColumnType || (exports.ColumnType = {}));
10
+ var DataType;
11
+ (function (DataType) {
12
+ DataType[DataType["UNKNOWN"] = 0] = "UNKNOWN";
13
+ DataType[DataType["BOOL"] = 1] = "BOOL";
14
+ DataType[DataType["CHAR"] = 2] = "CHAR";
15
+ DataType[DataType["INT32"] = 3] = "INT32";
16
+ DataType[DataType["INT64"] = 4] = "INT64";
17
+ DataType[DataType["FLOAT"] = 5] = "FLOAT";
18
+ DataType[DataType["DOUBLE"] = 6] = "DOUBLE";
19
+ DataType[DataType["DATE"] = 7] = "DATE";
20
+ DataType[DataType["DATE_TIME"] = 8] = "DATE_TIME";
21
+ DataType[DataType["TIME"] = 9] = "TIME";
22
+ DataType[DataType["MAX_TYPE"] = 10] = "MAX_TYPE";
23
+ })(DataType = exports.DataType || (exports.DataType = {}));
24
+ var ColumnTimeBucket;
25
+ (function (ColumnTimeBucket) {
26
+ ColumnTimeBucket[ColumnTimeBucket["NO_BUCKET"] = 0] = "NO_BUCKET";
27
+ ColumnTimeBucket[ColumnTimeBucket["DAILY"] = 1] = "DAILY";
28
+ ColumnTimeBucket[ColumnTimeBucket["WEEKLY"] = 2] = "WEEKLY";
29
+ ColumnTimeBucket[ColumnTimeBucket["MONTHLY"] = 3] = "MONTHLY";
30
+ ColumnTimeBucket[ColumnTimeBucket["QUARTERLY"] = 4] = "QUARTERLY";
31
+ ColumnTimeBucket[ColumnTimeBucket["YEARLY"] = 5] = "YEARLY";
32
+ ColumnTimeBucket[ColumnTimeBucket["HOURLY"] = 6] = "HOURLY";
33
+ ColumnTimeBucket[ColumnTimeBucket["AUTO"] = 7] = "AUTO";
34
+ ColumnTimeBucket[ColumnTimeBucket["HOUR_OF_DAY"] = 8] = "HOUR_OF_DAY";
35
+ ColumnTimeBucket[ColumnTimeBucket["DAY_OF_WEEK"] = 9] = "DAY_OF_WEEK";
36
+ ColumnTimeBucket[ColumnTimeBucket["DAY_OF_MONTH"] = 10] = "DAY_OF_MONTH";
37
+ ColumnTimeBucket[ColumnTimeBucket["DAY_OF_QUARTER"] = 11] = "DAY_OF_QUARTER";
38
+ ColumnTimeBucket[ColumnTimeBucket["DAY_OF_YEAR"] = 12] = "DAY_OF_YEAR";
39
+ ColumnTimeBucket[ColumnTimeBucket["WEEK_OF_MONTH"] = 13] = "WEEK_OF_MONTH";
40
+ ColumnTimeBucket[ColumnTimeBucket["WEEK_OF_QUARTER"] = 14] = "WEEK_OF_QUARTER";
41
+ ColumnTimeBucket[ColumnTimeBucket["WEEK_OF_YEAR"] = 15] = "WEEK_OF_YEAR";
42
+ ColumnTimeBucket[ColumnTimeBucket["MONTH_OF_QUARTER"] = 16] = "MONTH_OF_QUARTER";
43
+ ColumnTimeBucket[ColumnTimeBucket["MONTH_OF_YEAR"] = 17] = "MONTH_OF_YEAR";
44
+ ColumnTimeBucket[ColumnTimeBucket["QUARTER_OF_YEAR"] = 18] = "QUARTER_OF_YEAR";
45
+ })(ColumnTimeBucket = exports.ColumnTimeBucket || (exports.ColumnTimeBucket = {}));
46
+ var FormatType;
47
+ (function (FormatType) {
48
+ FormatType[FormatType["NONE"] = 0] = "NONE";
49
+ FormatType[FormatType["PATTERN"] = 1] = "PATTERN";
50
+ FormatType[FormatType["PERCENTAGE"] = 2] = "PERCENTAGE";
51
+ FormatType[FormatType["CURRENCY"] = 3] = "CURRENCY";
52
+ })(FormatType = exports.FormatType || (exports.FormatType = {}));
53
+ var CurrencyFormatType;
54
+ (function (CurrencyFormatType) {
55
+ CurrencyFormatType[CurrencyFormatType["USER_LOCALE"] = 0] = "USER_LOCALE";
56
+ CurrencyFormatType[CurrencyFormatType["COLUMN"] = 1] = "COLUMN";
57
+ CurrencyFormatType[CurrencyFormatType["ISO_CODE"] = 2] = "ISO_CODE";
58
+ })(CurrencyFormatType = exports.CurrencyFormatType || (exports.CurrencyFormatType = {}));
59
+ //# sourceMappingURL=answer-column.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"answer-column.types.js","sourceRoot":"","sources":["../../src/types/answer-column.types.ts"],"names":[],"mappings":";;;AAAA,IAAY,UAIX;AAJD,WAAY,UAAU;IAClB,iDAAO,CAAA;IACP,iDAAO,CAAA;IACP,qDAAS,CAAA;AACb,CAAC,EAJW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAIrB;AAKD,IAAY,QAiBX;AAjBD,WAAY,QAAQ;IAChB,6CAAO,CAAA;IAEP,uCAAI,CAAA;IAEJ,uCAAI,CAAA;IAEJ,yCAAK,CAAA;IACL,yCAAK,CAAA;IACL,yCAAK,CAAA;IACL,2CAAM,CAAA;IAEN,uCAAI,CAAA;IACJ,iDAAS,CAAA;IACT,uCAAI,CAAA;IAEJ,gDAAQ,CAAA;AACZ,CAAC,EAjBW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAiBnB;AAED,IAAY,gBAoBX;AApBD,WAAY,gBAAgB;IACxB,iEAAS,CAAA;IACT,yDAAK,CAAA;IACL,2DAAM,CAAA;IACN,6DAAO,CAAA;IACP,iEAAS,CAAA;IACT,2DAAM,CAAA;IACN,2DAAM,CAAA;IACN,uDAAI,CAAA;IACJ,qEAAW,CAAA;IACX,qEAAW,CAAA;IACX,wEAAY,CAAA;IACZ,4EAAc,CAAA;IACd,sEAAW,CAAA;IACX,0EAAa,CAAA;IACb,8EAAe,CAAA;IACf,wEAAY,CAAA;IACZ,gFAAgB,CAAA;IAChB,0EAAa,CAAA;IACb,8EAAe,CAAA;AACnB,CAAC,EApBW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAoB3B;AAOD,IAAY,UAKX;AALD,WAAY,UAAU;IAClB,2CAAI,CAAA;IACJ,iDAAO,CAAA;IACP,uDAAU,CAAA;IACV,mDAAQ,CAAA;AACZ,CAAC,EALW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAKrB;AAOD,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC1B,yEAAW,CAAA;IACX,+DAAM,CAAA;IACN,mEAAQ,CAAA;AACZ,CAAC,EAJW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAI7B"}
@@ -0,0 +1,63 @@
1
+ import { VisualProps } from './common.types';
2
+ import { Query } from './ts-to-chart-event.types';
3
+ export declare enum ChartToTSEvent {
4
+ OpenContextMenu = "OpenContextMenu",
5
+ CloseContextMenu = "CloseContextMenu",
6
+ OpenAxisMenu = "OpenAxisMenu",
7
+ CloseAxisMenu = "CloseAxisMenu",
8
+ RenderStart = "RenderStart",
9
+ RenderError = "RenderError",
10
+ RenderComplete = "RenderComplete",
11
+ UpdateVisualProps = "UpdateVisualProps",
12
+ GetTMLString = "GetTMLString",
13
+ SetTMLString = "SetTMLString",
14
+ GetDataForQuery = "GetDataForQuery"
15
+ }
16
+ export interface ChartToTSEventsPayloadMap {
17
+ [ChartToTSEvent.OpenContextMenu]: [OpenContextMenuEventPayload];
18
+ [ChartToTSEvent.CloseContextMenu]: [];
19
+ [ChartToTSEvent.RenderStart]: [];
20
+ [ChartToTSEvent.RenderComplete]: [];
21
+ [ChartToTSEvent.RenderError]: [RenderErrorEventPayload];
22
+ [ChartToTSEvent.UpdateVisualProps]: [UpdateVisualPropsEventPayload];
23
+ [ChartToTSEvent.GetTMLString]: [];
24
+ [ChartToTSEvent.SetTMLString]: [SetTMLStringEventPayload];
25
+ [ChartToTSEvent.GetDataForQuery]: [GetDataForQueryEventPayload];
26
+ }
27
+ interface UpdateVisualPropsEventPayload {
28
+ visualProps: VisualProps;
29
+ }
30
+ export interface SetTMLStringEventPayload {
31
+ tmlString: string;
32
+ }
33
+ export interface PointVal {
34
+ columnId: string;
35
+ value: any;
36
+ }
37
+ export interface Point {
38
+ tuple: PointVal[];
39
+ }
40
+ export interface CustomAction {
41
+ id: string;
42
+ label: string;
43
+ icon?: string;
44
+ onClick: (...args: any[]) => void;
45
+ }
46
+ export interface OpenContextMenuEventPayload {
47
+ event: Pick<PointerEvent, 'clientX' | 'clientY'>;
48
+ clickedPoint: Point;
49
+ selectedPoints?: Point[];
50
+ customActions?: CustomAction[];
51
+ }
52
+ interface RenderErrorEventPayload {
53
+ hasError: boolean;
54
+ error: any;
55
+ }
56
+ export interface GetDataForQueryEventPayload {
57
+ queries: Query[];
58
+ }
59
+ export declare enum ErrorType {
60
+ MultipleContextsNotSupported = "MultipleContextsNotSupported"
61
+ }
62
+ export {};
63
+ //# sourceMappingURL=chart-to-ts-event.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chart-to-ts-event.types.d.ts","sourceRoot":"","sources":["../../src/types/chart-to-ts-event.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAMlD,oBAAY,cAAc;IAItB,eAAe,oBAAoB;IACnC,gBAAgB,qBAAqB;IAKrC,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;IAK/B,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,cAAc,mBAAmB;IAKjC,iBAAiB,sBAAsB;IAKvC,YAAY,iBAAiB;IAC7B,YAAY,iBAAiB;IAK7B,eAAe,oBAAoB;CACtC;AAQD,MAAM,WAAW,yBAAyB;IAMtC,CAAC,cAAc,CAAC,eAAe,CAAC,EAAE,CAAC,2BAA2B,CAAC,CAAC;IAMhE,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC;IAOtC,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC;IAMjC,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;IAMpC,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC,uBAAuB,CAAC,CAAC;IAMxD,CAAC,cAAc,CAAC,iBAAiB,CAAC,EAAE,CAAC,6BAA6B,CAAC,CAAC;IAOpE,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;IAMlC,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC,wBAAwB,CAAC,CAAC;IAK1D,CAAC,cAAc,CAAC,eAAe,CAAC,EAAE,CAAC,2BAA2B,CAAC,CAAC;CACnE;AAMD,UAAU,6BAA6B;IACnC,WAAW,EAAE,WAAW,CAAC;CAC5B;AAMD,MAAM,WAAW,wBAAwB;IAErC,SAAS,EAAE,MAAM,CAAC;CACrB;AAMD,MAAM,WAAW,QAAQ;IAErB,QAAQ,EAAE,MAAM,CAAC;IAGjB,KAAK,EAAE,GAAG,CAAC;CACd;AAKD,MAAM,WAAW,KAAK;IAClB,KAAK,EAAE,QAAQ,EAAE,CAAC;CACrB;AAMD,MAAM,WAAW,YAAY;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IASd,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;CACrC;AAMD,MAAM,WAAW,2BAA2B;IACxC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,SAAS,GAAG,SAAS,CAAC,CAAC;IACjD,YAAY,EAAE,KAAK,CAAC;IACpB,cAAc,CAAC,EAAE,KAAK,EAAE,CAAC;IACzB,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;CAClC;AAMD,UAAU,uBAAuB;IAC7B,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,GAAG,CAAC;CACd;AAKD,MAAM,WAAW,2BAA2B;IACxC,OAAO,EAAE,KAAK,EAAE,CAAC;CACpB;AAMD,oBAAY,SAAS;IACjB,4BAA4B,iCAAiC;CAChE"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ErrorType = exports.ChartToTSEvent = void 0;
4
+ var ChartToTSEvent;
5
+ (function (ChartToTSEvent) {
6
+ ChartToTSEvent["OpenContextMenu"] = "OpenContextMenu";
7
+ ChartToTSEvent["CloseContextMenu"] = "CloseContextMenu";
8
+ ChartToTSEvent["OpenAxisMenu"] = "OpenAxisMenu";
9
+ ChartToTSEvent["CloseAxisMenu"] = "CloseAxisMenu";
10
+ ChartToTSEvent["RenderStart"] = "RenderStart";
11
+ ChartToTSEvent["RenderError"] = "RenderError";
12
+ ChartToTSEvent["RenderComplete"] = "RenderComplete";
13
+ ChartToTSEvent["UpdateVisualProps"] = "UpdateVisualProps";
14
+ ChartToTSEvent["GetTMLString"] = "GetTMLString";
15
+ ChartToTSEvent["SetTMLString"] = "SetTMLString";
16
+ ChartToTSEvent["GetDataForQuery"] = "GetDataForQuery";
17
+ })(ChartToTSEvent = exports.ChartToTSEvent || (exports.ChartToTSEvent = {}));
18
+ var ErrorType;
19
+ (function (ErrorType) {
20
+ ErrorType["MultipleContextsNotSupported"] = "MultipleContextsNotSupported";
21
+ })(ErrorType = exports.ErrorType || (exports.ErrorType = {}));
22
+ //# sourceMappingURL=chart-to-ts-event.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chart-to-ts-event.types.js","sourceRoot":"","sources":["../../src/types/chart-to-ts-event.types.ts"],"names":[],"mappings":";;;AAOA,IAAY,cAmCX;AAnCD,WAAY,cAAc;IAItB,qDAAmC,CAAA;IACnC,uDAAqC,CAAA;IAKrC,+CAA6B,CAAA;IAC7B,iDAA+B,CAAA;IAK/B,6CAA2B,CAAA;IAC3B,6CAA2B,CAAA;IAC3B,mDAAiC,CAAA;IAKjC,yDAAuC,CAAA;IAKvC,+CAA6B,CAAA;IAC7B,+CAA6B,CAAA;IAK7B,qDAAmC,CAAA;AACvC,CAAC,EAnCW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAmCzB;AAwJD,IAAY,SAEX;AAFD,WAAY,SAAS;IACjB,0EAA6D,CAAA;AACjE,CAAC,EAFW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAEpB"}