@cubejs-client/react 0.30.30 → 0.30.60
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.
- package/CHANGELOG.md +27 -0
- package/dist/cubejs-client-react.esm.js +61 -134
- package/dist/cubejs-client-react.esm.js.map +1 -1
- package/dist/cubejs-client-react.js +62 -136
- package/dist/cubejs-client-react.js.map +1 -1
- package/dist/cubejs-client-react.umd.js +384 -5773
- package/dist/cubejs-client-react.umd.js.map +1 -1
- package/index.d.ts +1 -0
- package/package.json +3 -5
- package/src/QueryBuilder.jsx +10 -4
- package/src/QueryRenderer.jsx +1 -2
- package/src/hooks/cube-query.js +7 -12
- package/src/utils.js +0 -78
|
@@ -30,27 +30,24 @@ require('core-js/modules/es.regexp.to-string.js');
|
|
|
30
30
|
var React = require('react');
|
|
31
31
|
var ramda = require('ramda');
|
|
32
32
|
var core = require('@cubejs-client/core');
|
|
33
|
-
var _typeof = require('@babel/runtime/helpers/typeof');
|
|
34
|
-
require('core-js/modules/es.regexp.exec.js');
|
|
35
|
-
require('core-js/modules/es.string.split.js');
|
|
36
|
-
require('core-js/modules/es.string.replace.js');
|
|
37
|
-
require('core-js/modules/es.array.concat.js');
|
|
38
|
-
require('core-js/modules/es.object.from-entries.js');
|
|
39
|
-
require('core-js/modules/es.object.entries.js');
|
|
40
|
-
require('core-js/modules/es.array.is-array.js');
|
|
41
|
-
var Anser = require('anser');
|
|
42
|
-
var htmlEntities = require('html-entities');
|
|
43
33
|
var _extends = require('@babel/runtime/helpers/extends');
|
|
44
34
|
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
|
45
35
|
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
|
46
36
|
var _asyncToGenerator = require('@babel/runtime/helpers/asyncToGenerator');
|
|
47
37
|
var _assertThisInitialized = require('@babel/runtime/helpers/assertThisInitialized');
|
|
48
38
|
var _regeneratorRuntime = require('@babel/runtime/regenerator');
|
|
39
|
+
require('core-js/modules/es.regexp.exec.js');
|
|
40
|
+
require('core-js/modules/es.string.replace.js');
|
|
49
41
|
require('core-js/modules/es.function.name.js');
|
|
42
|
+
require('core-js/modules/es.array.concat.js');
|
|
50
43
|
require('core-js/modules/es.array.splice.js');
|
|
51
44
|
require('core-js/modules/es.array.sort.js');
|
|
45
|
+
require('core-js/modules/es.array.is-array.js');
|
|
46
|
+
require('core-js/modules/es.object.from-entries.js');
|
|
52
47
|
require('core-js/modules/es.array.find.js');
|
|
53
48
|
require('core-js/modules/es.array.reduce.js');
|
|
49
|
+
var _typeof = require('@babel/runtime/helpers/typeof');
|
|
50
|
+
require('core-js/modules/es.object.entries.js');
|
|
54
51
|
|
|
55
52
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
56
53
|
|
|
@@ -62,113 +59,16 @@ var _inherits__default = /*#__PURE__*/_interopDefaultLegacy(_inherits);
|
|
|
62
59
|
var _possibleConstructorReturn__default = /*#__PURE__*/_interopDefaultLegacy(_possibleConstructorReturn);
|
|
63
60
|
var _getPrototypeOf__default = /*#__PURE__*/_interopDefaultLegacy(_getPrototypeOf);
|
|
64
61
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
65
|
-
var _typeof__default = /*#__PURE__*/_interopDefaultLegacy(_typeof);
|
|
66
|
-
var Anser__default = /*#__PURE__*/_interopDefaultLegacy(Anser);
|
|
67
62
|
var _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
|
|
68
63
|
var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
|
|
69
64
|
var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumableArray);
|
|
70
65
|
var _asyncToGenerator__default = /*#__PURE__*/_interopDefaultLegacy(_asyncToGenerator);
|
|
71
66
|
var _assertThisInitialized__default = /*#__PURE__*/_interopDefaultLegacy(_assertThisInitialized);
|
|
72
67
|
var _regeneratorRuntime__default = /*#__PURE__*/_interopDefaultLegacy(_regeneratorRuntime);
|
|
68
|
+
var _typeof__default = /*#__PURE__*/_interopDefaultLegacy(_typeof);
|
|
73
69
|
|
|
74
70
|
var CubeContext = /*#__PURE__*/React.createContext(null);
|
|
75
71
|
|
|
76
|
-
var colors = {
|
|
77
|
-
reset: 'orange',
|
|
78
|
-
black: 'black',
|
|
79
|
-
red: 'red',
|
|
80
|
-
green: 'green',
|
|
81
|
-
yellow: 'orange',
|
|
82
|
-
blue: 'blue',
|
|
83
|
-
magenta: 'magenta',
|
|
84
|
-
cyan: 'cyan',
|
|
85
|
-
gray: 'gray',
|
|
86
|
-
lightgrey: 'lightgrey',
|
|
87
|
-
darkgrey: 'darkgrey'
|
|
88
|
-
};
|
|
89
|
-
var anserMap = {
|
|
90
|
-
'ansi-bright-black': 'black',
|
|
91
|
-
'ansi-bright-yellow': 'yellow',
|
|
92
|
-
'ansi-yellow': 'yellow',
|
|
93
|
-
'ansi-bright-green': 'green',
|
|
94
|
-
'ansi-green': 'green',
|
|
95
|
-
'ansi-bright-cyan': 'cyan',
|
|
96
|
-
'ansi-cyan': 'cyan',
|
|
97
|
-
'ansi-bright-red': 'red',
|
|
98
|
-
'ansi-red': 'red',
|
|
99
|
-
'ansi-bright-magenta': 'magenta',
|
|
100
|
-
'ansi-magenta': 'magenta',
|
|
101
|
-
'ansi-white': 'darkgrey'
|
|
102
|
-
};
|
|
103
|
-
function generateAnsiHTML(txt) {
|
|
104
|
-
var arr = new Anser__default['default']().ansiToJson(htmlEntities.encode(txt), {
|
|
105
|
-
use_classes: true
|
|
106
|
-
});
|
|
107
|
-
var result = '';
|
|
108
|
-
var open = false;
|
|
109
|
-
|
|
110
|
-
for (var index = 0; index < arr.length; ++index) {
|
|
111
|
-
var c = arr[index];
|
|
112
|
-
var content = c.content;
|
|
113
|
-
var fg = c.fg;
|
|
114
|
-
var contentParts = content.split('\n');
|
|
115
|
-
|
|
116
|
-
for (var j = 0; j < contentParts.length; ++j) {
|
|
117
|
-
if (!open) {
|
|
118
|
-
result += '<span data-ansi-line="true">';
|
|
119
|
-
open = true;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
var part = contentParts[j].replace('\r', '');
|
|
123
|
-
var color = colors[anserMap[fg]];
|
|
124
|
-
|
|
125
|
-
if (color != null) {
|
|
126
|
-
result += "<span style=\"color: ".concat(color, ";\">").concat(part, "</span>");
|
|
127
|
-
} else {
|
|
128
|
-
if (fg != null) {
|
|
129
|
-
console.log('Missing color mapping: ', fg);
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
result += "<span>".concat(part, "</span>");
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
if (j < contentParts.length - 1) {
|
|
136
|
-
result += '</span>';
|
|
137
|
-
open = false;
|
|
138
|
-
result += '<br/>';
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
if (open) {
|
|
144
|
-
result += '</span>';
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
return result;
|
|
148
|
-
}
|
|
149
|
-
function removeEmpty(obj) {
|
|
150
|
-
if (_typeof__default['default'](obj) !== 'object') {
|
|
151
|
-
return obj;
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
return Object.fromEntries(Object.entries(obj).filter(function (_ref) {
|
|
155
|
-
var _ref2 = _slicedToArray__default['default'](_ref, 2),
|
|
156
|
-
v = _ref2[1];
|
|
157
|
-
|
|
158
|
-
return v != null;
|
|
159
|
-
}).map(function (_ref3) {
|
|
160
|
-
var _ref4 = _slicedToArray__default['default'](_ref3, 2),
|
|
161
|
-
k = _ref4[0],
|
|
162
|
-
v = _ref4[1];
|
|
163
|
-
|
|
164
|
-
if (Array.isArray(v)) {
|
|
165
|
-
return [k, v.map(removeEmpty)];
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
return [k, _typeof__default['default'](v) === 'object' ? removeEmpty(v) : v];
|
|
169
|
-
}));
|
|
170
|
-
}
|
|
171
|
-
|
|
172
72
|
function ownKeys$6(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
173
73
|
|
|
174
74
|
function _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$6(Object(source), !0).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$6(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
@@ -372,6 +272,8 @@ var QueryRenderer = /*#__PURE__*/function (_React$Component) {
|
|
|
372
272
|
}, {
|
|
373
273
|
key: "render",
|
|
374
274
|
value: function render() {
|
|
275
|
+
var _error$response;
|
|
276
|
+
|
|
375
277
|
var _this$state = this.state,
|
|
376
278
|
error = _this$state.error,
|
|
377
279
|
queries = _this$state.queries,
|
|
@@ -380,7 +282,7 @@ var QueryRenderer = /*#__PURE__*/function (_React$Component) {
|
|
|
380
282
|
sqlQuery = _this$state.sqlQuery;
|
|
381
283
|
var render = this.props.render;
|
|
382
284
|
var loadState = {
|
|
383
|
-
error: error ? new Error(
|
|
285
|
+
error: error ? new Error(((_error$response = error.response) === null || _error$response === void 0 ? void 0 : _error$response.plainError) || error.message || error.toString()) : null,
|
|
384
286
|
resultSet: queries ? resultSet || {} : resultSet,
|
|
385
287
|
loadingState: {
|
|
386
288
|
isLoading: isLoading
|
|
@@ -447,6 +349,29 @@ QueryRendererWithTotals.defaultProps = {
|
|
|
447
349
|
loadSql: null
|
|
448
350
|
};
|
|
449
351
|
|
|
352
|
+
function removeEmpty(obj) {
|
|
353
|
+
if (_typeof__default['default'](obj) !== 'object') {
|
|
354
|
+
return obj;
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
return Object.fromEntries(Object.entries(obj).filter(function (_ref) {
|
|
358
|
+
var _ref2 = _slicedToArray__default['default'](_ref, 2),
|
|
359
|
+
v = _ref2[1];
|
|
360
|
+
|
|
361
|
+
return v != null;
|
|
362
|
+
}).map(function (_ref3) {
|
|
363
|
+
var _ref4 = _slicedToArray__default['default'](_ref3, 2),
|
|
364
|
+
k = _ref4[0],
|
|
365
|
+
v = _ref4[1];
|
|
366
|
+
|
|
367
|
+
if (Array.isArray(v)) {
|
|
368
|
+
return [k, v.map(removeEmpty)];
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
return [k, _typeof__default['default'](v) === 'object' ? removeEmpty(v) : v];
|
|
372
|
+
}));
|
|
373
|
+
}
|
|
374
|
+
|
|
450
375
|
function ownKeys$4(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
451
376
|
|
|
452
377
|
function _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$4(Object(source), !0).forEach(function (key) { _defineProperty__default['default'](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
@@ -496,7 +421,7 @@ var QueryBuilder = /*#__PURE__*/function (_React$Component) {
|
|
|
496
421
|
_this = _super.call(this, props);
|
|
497
422
|
|
|
498
423
|
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "fetchMeta", /*#__PURE__*/_asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee() {
|
|
499
|
-
var meta, metaError, metaErrorStack, _error$response, _error$
|
|
424
|
+
var meta, metaError, richMetaError, metaErrorStack, _error$response, _error$response2, _error$response2$stac;
|
|
500
425
|
|
|
501
426
|
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
502
427
|
while (1) {
|
|
@@ -511,31 +436,34 @@ var QueryBuilder = /*#__PURE__*/function (_React$Component) {
|
|
|
511
436
|
|
|
512
437
|
case 2:
|
|
513
438
|
metaError = null;
|
|
439
|
+
richMetaError = null;
|
|
514
440
|
metaErrorStack = null;
|
|
515
|
-
_context.prev =
|
|
441
|
+
_context.prev = 5;
|
|
516
442
|
|
|
517
443
|
_this.setState({
|
|
518
444
|
isFetchingMeta: true
|
|
519
445
|
});
|
|
520
446
|
|
|
521
|
-
_context.next =
|
|
447
|
+
_context.next = 9;
|
|
522
448
|
return _this.cubejsApi().meta();
|
|
523
449
|
|
|
524
|
-
case
|
|
450
|
+
case 9:
|
|
525
451
|
meta = _context.sent;
|
|
526
|
-
_context.next =
|
|
452
|
+
_context.next = 17;
|
|
527
453
|
break;
|
|
528
454
|
|
|
529
|
-
case
|
|
530
|
-
_context.prev =
|
|
531
|
-
_context.t0 = _context["catch"](
|
|
532
|
-
metaError = _context.t0;
|
|
533
|
-
|
|
455
|
+
case 12:
|
|
456
|
+
_context.prev = 12;
|
|
457
|
+
_context.t0 = _context["catch"](5);
|
|
458
|
+
metaError = ((_error$response = _context.t0.response) === null || _error$response === void 0 ? void 0 : _error$response.plainError) || _context.t0;
|
|
459
|
+
richMetaError = _context.t0;
|
|
460
|
+
metaErrorStack = ((_error$response2 = _context.t0.response) === null || _error$response2 === void 0 ? void 0 : (_error$response2$stac = _error$response2.stack) === null || _error$response2$stac === void 0 ? void 0 : _error$response2$stac.replace(_context.t0.message || '', '')) || '';
|
|
534
461
|
|
|
535
|
-
case
|
|
462
|
+
case 17:
|
|
536
463
|
_this.setState({
|
|
537
464
|
meta: meta,
|
|
538
|
-
metaError: metaError ? new Error(
|
|
465
|
+
metaError: metaError ? new Error(metaError.message || metaError.toString()) : null,
|
|
466
|
+
richMetaError: richMetaError,
|
|
539
467
|
metaErrorStack: metaErrorStack,
|
|
540
468
|
isFetchingMeta: false
|
|
541
469
|
}, function () {
|
|
@@ -544,12 +472,12 @@ var QueryBuilder = /*#__PURE__*/function (_React$Component) {
|
|
|
544
472
|
_this.updateQuery({});
|
|
545
473
|
});
|
|
546
474
|
|
|
547
|
-
case
|
|
475
|
+
case 18:
|
|
548
476
|
case "end":
|
|
549
477
|
return _context.stop();
|
|
550
478
|
}
|
|
551
479
|
}
|
|
552
|
-
}, _callee, null, [[
|
|
480
|
+
}, _callee, null, [[5, 12]]);
|
|
553
481
|
})));
|
|
554
482
|
|
|
555
483
|
_this.state = _objectSpread$4(_objectSpread$4({
|
|
@@ -773,6 +701,7 @@ var QueryBuilder = /*#__PURE__*/function (_React$Component) {
|
|
|
773
701
|
var _this$state = this.state,
|
|
774
702
|
meta = _this$state.meta,
|
|
775
703
|
metaError = _this$state.metaError,
|
|
704
|
+
richMetaError = _this$state.richMetaError,
|
|
776
705
|
query = _this$state.query,
|
|
777
706
|
queryError = _this$state.queryError,
|
|
778
707
|
chartType = _this$state.chartType,
|
|
@@ -869,6 +798,7 @@ var QueryBuilder = /*#__PURE__*/function (_React$Component) {
|
|
|
869
798
|
return _objectSpread$4({
|
|
870
799
|
meta: meta,
|
|
871
800
|
metaError: metaError,
|
|
801
|
+
richMetaError: richMetaError,
|
|
872
802
|
metaErrorStack: metaErrorStack,
|
|
873
803
|
query: query,
|
|
874
804
|
error: queryError,
|
|
@@ -988,7 +918,7 @@ var QueryBuilder = /*#__PURE__*/function (_React$Component) {
|
|
|
988
918
|
var _updateVizState = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee5(state) {
|
|
989
919
|
var _this4 = this;
|
|
990
920
|
|
|
991
|
-
var _this$props2, setQuery, setVizState, _this$state2, stateQuery, statePivotConfig, chartType, meta, finalState, vizStateSent, handleVizStateChange, runSetters, shouldFetchDryRun, response;
|
|
921
|
+
var _this$props2, setQuery, setVizState, _this$state2, stateQuery, statePivotConfig, chartType, meta, finalState, vizStateSent, handleVizStateChange, runSetters, shouldFetchDryRun, response, _error$response3;
|
|
992
922
|
|
|
993
923
|
return _regeneratorRuntime__default['default'].wrap(function _callee5$(_context5) {
|
|
994
924
|
while (1) {
|
|
@@ -1082,7 +1012,8 @@ var QueryBuilder = /*#__PURE__*/function (_React$Component) {
|
|
|
1082
1012
|
_context5.prev = 27;
|
|
1083
1013
|
_context5.t0 = _context5["catch"](16);
|
|
1084
1014
|
this.setState({
|
|
1085
|
-
queryError: new Error(
|
|
1015
|
+
queryError: new Error(((_error$response3 = _context5.t0.response) === null || _error$response3 === void 0 ? void 0 : _error$response3.plainError) || _context5.t0.message),
|
|
1016
|
+
richQueryError: new Error(_context5.t0.message || _context5.t0.toString())
|
|
1086
1017
|
});
|
|
1087
1018
|
|
|
1088
1019
|
case 30:
|
|
@@ -1439,7 +1370,7 @@ function useLazyDryRun(query) {
|
|
|
1439
1370
|
function useCubeQuery(query) {
|
|
1440
1371
|
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
1441
1372
|
var mutexRef = React.useRef({});
|
|
1442
|
-
var isMounted =
|
|
1373
|
+
var isMounted = useIsMounted();
|
|
1443
1374
|
|
|
1444
1375
|
var _useState = React.useState(null),
|
|
1445
1376
|
_useState2 = _slicedToArray__default['default'](_useState, 2),
|
|
@@ -1513,7 +1444,7 @@ function useCubeQuery(query) {
|
|
|
1513
1444
|
case 10:
|
|
1514
1445
|
response = _context2.sent;
|
|
1515
1446
|
|
|
1516
|
-
if (isMounted
|
|
1447
|
+
if (isMounted()) {
|
|
1517
1448
|
setResultSet(response);
|
|
1518
1449
|
setProgress(null);
|
|
1519
1450
|
}
|
|
@@ -1525,14 +1456,14 @@ function useCubeQuery(query) {
|
|
|
1525
1456
|
_context2.prev = 14;
|
|
1526
1457
|
_context2.t0 = _context2["catch"](7);
|
|
1527
1458
|
|
|
1528
|
-
if (isMounted
|
|
1459
|
+
if (isMounted()) {
|
|
1529
1460
|
setError(_context2.t0);
|
|
1530
1461
|
setResultSet(null);
|
|
1531
1462
|
setProgress(null);
|
|
1532
1463
|
}
|
|
1533
1464
|
|
|
1534
1465
|
case 17:
|
|
1535
|
-
if (isMounted
|
|
1466
|
+
if (isMounted()) {
|
|
1536
1467
|
setLoading(false);
|
|
1537
1468
|
}
|
|
1538
1469
|
|
|
@@ -1546,11 +1477,6 @@ function useCubeQuery(query) {
|
|
|
1546
1477
|
return _fetch.apply(this, arguments);
|
|
1547
1478
|
}
|
|
1548
1479
|
|
|
1549
|
-
React.useEffect(function () {
|
|
1550
|
-
return function () {
|
|
1551
|
-
isMounted.current = false;
|
|
1552
|
-
};
|
|
1553
|
-
}, []);
|
|
1554
1480
|
React.useEffect(function () {
|
|
1555
1481
|
var _options$skip = options.skip,
|
|
1556
1482
|
skip = _options$skip === void 0 ? false : _options$skip,
|
|
@@ -1610,7 +1536,7 @@ function useCubeQuery(query) {
|
|
|
1610
1536
|
mutexKey: 'query',
|
|
1611
1537
|
progressCallback: progressCallback
|
|
1612
1538
|
}, function (e, result) {
|
|
1613
|
-
if (isMounted
|
|
1539
|
+
if (isMounted()) {
|
|
1614
1540
|
if (e) {
|
|
1615
1541
|
setError(e);
|
|
1616
1542
|
} else {
|
|
@@ -1636,7 +1562,7 @@ function useCubeQuery(query) {
|
|
|
1636
1562
|
_context.prev = 17;
|
|
1637
1563
|
_context.t0 = _context["catch"](4);
|
|
1638
1564
|
|
|
1639
|
-
if (isMounted
|
|
1565
|
+
if (isMounted()) {
|
|
1640
1566
|
setError(_context.t0);
|
|
1641
1567
|
setResultSet(null);
|
|
1642
1568
|
setLoading(false);
|