@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.
@@ -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(generateAnsiHTML(error.message || error.toString())) : null,
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$response$stack;
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 = 4;
441
+ _context.prev = 5;
516
442
 
517
443
  _this.setState({
518
444
  isFetchingMeta: true
519
445
  });
520
446
 
521
- _context.next = 8;
447
+ _context.next = 9;
522
448
  return _this.cubejsApi().meta();
523
449
 
524
- case 8:
450
+ case 9:
525
451
  meta = _context.sent;
526
- _context.next = 15;
452
+ _context.next = 17;
527
453
  break;
528
454
 
529
- case 11:
530
- _context.prev = 11;
531
- _context.t0 = _context["catch"](4);
532
- metaError = _context.t0;
533
- metaErrorStack = ((_error$response = _context.t0.response) === null || _error$response === void 0 ? void 0 : (_error$response$stack = _error$response.stack) === null || _error$response$stack === void 0 ? void 0 : _error$response$stack.replace(_context.t0.message || '', '')) || '';
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 15:
462
+ case 17:
536
463
  _this.setState({
537
464
  meta: meta,
538
- metaError: metaError ? new Error(generateAnsiHTML(metaError.message || metaError.toString())) : null,
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 16:
475
+ case 18:
548
476
  case "end":
549
477
  return _context.stop();
550
478
  }
551
479
  }
552
- }, _callee, null, [[4, 11]]);
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(generateAnsiHTML(_context5.t0.message || _context5.t0.toString()))
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 = React.useRef(true);
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.current) {
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.current) {
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.current) {
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.current) {
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.current) {
1565
+ if (isMounted()) {
1640
1566
  setError(_context.t0);
1641
1567
  setResultSet(null);
1642
1568
  setLoading(false);