@cubejs-client/react 0.29.51 → 0.30.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.
package/index.d.ts CHANGED
@@ -30,6 +30,8 @@ declare module '@cubejs-client/react' {
30
30
  DateRange,
31
31
  UnaryOperator,
32
32
  BinaryOperator,
33
+ DeeplyReadonly,
34
+ QueryRecordType,
33
35
  } from '@cubejs-client/core';
34
36
 
35
37
  type CubeProviderProps = {
@@ -238,6 +240,7 @@ declare module '@cubejs-client/react' {
238
240
 
239
241
  meta: Meta | undefined;
240
242
  metaError?: Error | null;
243
+ metaErrorStack?: string | null;
241
244
  isFetchingMeta: boolean;
242
245
  /**
243
246
  * Indicates whether the query is ready to be displayed or not
@@ -426,7 +429,16 @@ declare module '@cubejs-client/react' {
426
429
  * @order 1
427
430
  * @stickyTypes
428
431
  */
429
- export function useCubeQuery<TData>(query: Query | Query[], options?: UseCubeQueryOptions): UseCubeQueryResult<TData>;
432
+ export function useCubeQuery<
433
+ TData,
434
+ TQuery extends DeeplyReadonly<Query | Query[]> = DeeplyReadonly<Query | Query[]>>(
435
+ query: TQuery,
436
+ options?: UseCubeQueryOptions,
437
+ ): UseCubeQueryResult<
438
+ unknown extends TData
439
+ ? QueryRecordType<TQuery>
440
+ : TData
441
+ >;
430
442
 
431
443
  type UseCubeQueryOptions = {
432
444
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cubejs-client/react",
3
- "version": "0.29.51",
3
+ "version": "0.30.0",
4
4
  "author": "Cube Dev, Inc.",
5
5
  "license": "MIT",
6
6
  "engines": {},
@@ -24,7 +24,7 @@
24
24
  ],
25
25
  "dependencies": {
26
26
  "@babel/runtime": "^7.1.2",
27
- "@cubejs-client/core": "^0.29.51",
27
+ "@cubejs-client/core": "^0.30.0",
28
28
  "anser": "^2.0.1",
29
29
  "core-js": "^3.6.5",
30
30
  "html-entities": "^2.3.2",
@@ -44,5 +44,5 @@
44
44
  "peerDependencies": {
45
45
  "react": ">=16.10.2"
46
46
  },
47
- "gitHead": "44469b8ce956df50c2288194b550407bdb70c22d"
47
+ "gitHead": "bc4774e0945cdf0141e344657406115e8a4597f7"
48
48
  }
@@ -146,18 +146,21 @@ export default class QueryBuilder extends React.Component {
146
146
 
147
147
  let meta;
148
148
  let metaError = null;
149
+ let metaErrorStack = null;
149
150
 
150
151
  try {
151
152
  this.setState({ isFetchingMeta: true });
152
153
  meta = await this.cubejsApi().meta();
153
154
  } catch (error) {
154
155
  metaError = error;
156
+ metaErrorStack = error.response?.stack?.replace(error.message || '', '') || '';
155
157
  }
156
158
 
157
159
  this.setState(
158
160
  {
159
161
  meta,
160
162
  metaError: metaError ? new Error(generateAnsiHTML(metaError.message || metaError.toString())) : null,
163
+ metaErrorStack,
161
164
  isFetchingMeta: false,
162
165
  },
163
166
  () => {
@@ -249,6 +252,7 @@ export default class QueryBuilder extends React.Component {
249
252
  missingMembers,
250
253
  isFetchingMeta,
251
254
  dryRunResponse,
255
+ metaErrorStack
252
256
  } = this.state;
253
257
 
254
258
  const flatFilters = uniqBy((filter) => `${prop('member', filter)}${prop('operator', filter)}`,
@@ -331,6 +335,7 @@ export default class QueryBuilder extends React.Component {
331
335
  return {
332
336
  meta,
333
337
  metaError,
338
+ metaErrorStack,
334
339
  query,
335
340
  error: queryError, // Match same name as QueryRenderer prop
336
341
  validatedQuery,