@gingkoo/pandora-metabase 1.0.58 → 1.0.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.
@@ -261,6 +261,9 @@
261
261
  }
262
262
  &.isError {
263
263
  background-color: red;
264
+ &:hover {
265
+ background-color: red;
266
+ }
264
267
  }
265
268
  }
266
269
 
@@ -1150,6 +1150,7 @@ var JoinData = function JoinData(props) {
1150
1150
  obj: newList,
1151
1151
  type: _types.ChangeType.subQuery
1152
1152
  });
1153
+ tableIsDel();
1153
1154
  o.close();
1154
1155
  } catch (e) {
1155
1156
  console.warn(e);
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports["default"] = void 0;
8
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/defineProperty"));
9
10
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
10
11
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
11
12
  var _jsxRuntime = require("react/jsx-runtime");
@@ -342,9 +343,9 @@ var GroupBy = function GroupBy(props) {
342
343
  },
343
344
  children: [v.quotes && (0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
344
345
  children: store.fieldEnableAlias && (0, _jsxRuntime.jsx)(_pandora.Tooltip, {
345
- title: (0, _locale.__)('SqlQueryBuilder.alias'),
346
+ title: !(0, _utils.isValidSQLAlias)(v === null || v === void 0 ? void 0 : v.fieldAlias) ? (0, _locale.__)('SqlQueryBuilder.aliasForRules') : (0, _locale.__)('SqlQueryBuilder.alias'),
346
347
  children: (0, _jsxRuntime.jsx)(_pandora.Button, {
347
- className: ':Sqb-TableName-as :Sqb-TableName green-name',
348
+ className: (0, _classnames["default"])(':Sqb-TableName-as :Sqb-TableName green-name', (0, _defineProperty2["default"])({}, 'isError', !(0, _utils.isValidSQLAlias)(v === null || v === void 0 ? void 0 : v.fieldAlias))),
348
349
  shape: 'circle',
349
350
  iconOnly: true,
350
351
  primary: true,
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports["default"] = void 0;
8
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/defineProperty"));
9
10
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
10
11
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
11
12
  var _jsxRuntime = require("react/jsx-runtime");
@@ -340,9 +341,9 @@ var SelectIndex = function SelectIndex(props) {
340
341
  },
341
342
  children: [v.quotes && (0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
342
343
  children: store.fieldEnableAlias && (0, _jsxRuntime.jsx)(_pandora.Tooltip, {
343
- title: (0, _locale.__)('SqlQueryBuilder.alias'),
344
+ title: !(0, _utils.isValidSQLAlias)(v === null || v === void 0 ? void 0 : v.fieldAlias) ? (0, _locale.__)('SqlQueryBuilder.aliasForRules') : (0, _locale.__)('SqlQueryBuilder.alias'),
344
345
  children: (0, _jsxRuntime.jsx)(_pandora.Button, {
345
- className: ':Sqb-TableName-as :Sqb-TableName green-name',
346
+ className: (0, _classnames["default"])(':Sqb-TableName-as :Sqb-TableName green-name', (0, _defineProperty2["default"])({}, 'isError', !(0, _utils.isValidSQLAlias)(v === null || v === void 0 ? void 0 : v.fieldAlias))),
346
347
  shape: 'circle',
347
348
  iconOnly: true,
348
349
  primary: true,
@@ -243,6 +243,7 @@ var TableData = function TableData(props) {
243
243
  obj: newList,
244
244
  type: _types.ChangeType.subQuery
245
245
  });
246
+ tableIsDel();
246
247
  o.close();
247
248
  } catch (e) {
248
249
  console.warn(e);
@@ -220,7 +220,9 @@ var useStore = function useStore() {
220
220
  return _context.abrupt("return", tables);
221
221
  case 1:
222
222
  _context.next = 2;
223
- return fetchDatasetFn.current(datasourceId);
223
+ return fetchDatasetFn.current(datasourceId, {
224
+ isExit: isExit
225
+ });
224
226
  case 2:
225
227
  _tables = _context.sent;
226
228
  setDataset(datasourceId, _tables);
@@ -280,7 +282,9 @@ var useStore = function useStore() {
280
282
  break;
281
283
  }
282
284
  _context2.next = 1;
283
- return fetchColumnsFn.current(extra, datasourceId);
285
+ return fetchColumnsFn.current(extra, datasourceId, {
286
+ isExit: isExit
287
+ });
284
288
  case 1:
285
289
  columns = _context2.sent;
286
290
  setColumns(tableName, columns);
@@ -330,9 +334,12 @@ var useStore = function useStore() {
330
334
  return _context3.abrupt("return");
331
335
  case 1:
332
336
  _context3.next = 2;
333
- return fetchChangeFn.current((0, _utils.splitByUnion)(_metaList), changeObj);
337
+ return fetchChangeFn.current((0, _utils.splitByUnion)(_metaList), changeObj, {
338
+ isExit: isExit
339
+ });
334
340
  case 2:
335
341
  isChange = _context3.sent;
342
+ // 是否还原
336
343
  if (isChange === false) {
337
344
  _setMeta(_metaList);
338
345
  }
@@ -8,16 +8,19 @@ export interface MetaListProps {
8
8
  subquery?: MetaListType[];
9
9
  list: MetaListType[];
10
10
  }
11
+ export interface FetchOptions {
12
+ isExit: boolean;
13
+ }
11
14
  export interface MetabaseProps {
12
15
  loading?: boolean;
13
16
  btnText?: string;
14
17
  showFields?: boolean;
15
18
  readonly?: boolean;
16
- getTables: (datasourceId: string) => Promise<any>;
19
+ getTables: (datasourceId: string, options: FetchOptions) => Promise<any>;
17
20
  getColumns: (table: {
18
21
  name: string;
19
22
  [key: string]: any;
20
- }, datasourceId: string) => Promise<any>;
23
+ }, datasourceId: string, options: FetchOptions) => Promise<any>;
21
24
  toolbar?: ToolbarType[];
22
25
  subToolbar?: ToolbarType[];
23
26
  tableNameTpl?: string;
@@ -38,10 +41,10 @@ export interface MetabaseProps {
38
41
  tableEnableAlias?: boolean;
39
42
  fieldEnableAlias?: boolean;
40
43
  isSelectFields?: boolean;
41
- onChange?: (newData: MetaListType[], curData?: {
44
+ onChange?: (newData: MetaListType[], curData: {
42
45
  data: any;
43
46
  type: ChangeType;
44
- }) => Promise<void | Boolean>;
47
+ }, options: FetchOptions) => Promise<void | Boolean>;
45
48
  }
46
49
  export interface OptionItem {
47
50
  value?: string;
@@ -261,6 +261,9 @@
261
261
  }
262
262
  &.isError {
263
263
  background-color: red;
264
+ &:hover {
265
+ background-color: red;
266
+ }
264
267
  }
265
268
  }
266
269
 
@@ -1145,6 +1145,7 @@ var JoinData = function JoinData(props) {
1145
1145
  obj: newList,
1146
1146
  type: ChangeType.subQuery
1147
1147
  });
1148
+ tableIsDel();
1148
1149
  o.close();
1149
1150
  } catch (e) {
1150
1151
  console.warn(e);
@@ -1,3 +1,4 @@
1
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
1
2
  import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
2
3
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
3
4
  import _regeneratorRuntime from "@babel/runtime/regenerator";
@@ -336,9 +337,9 @@ var GroupBy = function GroupBy(props) {
336
337
  },
337
338
  children: [v.quotes && _jsx(_Fragment, {
338
339
  children: store.fieldEnableAlias && _jsx(Tooltip, {
339
- title: __('SqlQueryBuilder.alias'),
340
+ title: !isValidSQLAlias(v === null || v === void 0 ? void 0 : v.fieldAlias) ? __('SqlQueryBuilder.aliasForRules') : __('SqlQueryBuilder.alias'),
340
341
  children: _jsx(Button, {
341
- className: ':Sqb-TableName-as :Sqb-TableName green-name',
342
+ className: cx(':Sqb-TableName-as :Sqb-TableName green-name', _defineProperty({}, 'isError', !isValidSQLAlias(v === null || v === void 0 ? void 0 : v.fieldAlias))),
342
343
  shape: 'circle',
343
344
  iconOnly: true,
344
345
  primary: true,
@@ -1,3 +1,4 @@
1
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
1
2
  import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
2
3
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
3
4
  import _regeneratorRuntime from "@babel/runtime/regenerator";
@@ -334,9 +335,9 @@ var SelectIndex = function SelectIndex(props) {
334
335
  },
335
336
  children: [v.quotes && _jsx(_Fragment, {
336
337
  children: store.fieldEnableAlias && _jsx(Tooltip, {
337
- title: __('SqlQueryBuilder.alias'),
338
+ title: !isValidSQLAlias(v === null || v === void 0 ? void 0 : v.fieldAlias) ? __('SqlQueryBuilder.aliasForRules') : __('SqlQueryBuilder.alias'),
338
339
  children: _jsx(Button, {
339
- className: ':Sqb-TableName-as :Sqb-TableName green-name',
340
+ className: cx(':Sqb-TableName-as :Sqb-TableName green-name', _defineProperty({}, 'isError', !isValidSQLAlias(v === null || v === void 0 ? void 0 : v.fieldAlias))),
340
341
  shape: 'circle',
341
342
  iconOnly: true,
342
343
  primary: true,
@@ -237,6 +237,7 @@ var TableData = function TableData(props) {
237
237
  obj: newList,
238
238
  type: ChangeType.subQuery
239
239
  });
240
+ tableIsDel();
240
241
  o.close();
241
242
  } catch (e) {
242
243
  console.warn(e);
@@ -214,7 +214,9 @@ var useStore = function useStore() {
214
214
  return _context.abrupt("return", tables);
215
215
  case 1:
216
216
  _context.next = 2;
217
- return fetchDatasetFn.current(datasourceId);
217
+ return fetchDatasetFn.current(datasourceId, {
218
+ isExit: isExit
219
+ });
218
220
  case 2:
219
221
  _tables = _context.sent;
220
222
  setDataset(datasourceId, _tables);
@@ -274,7 +276,9 @@ var useStore = function useStore() {
274
276
  break;
275
277
  }
276
278
  _context2.next = 1;
277
- return fetchColumnsFn.current(extra, datasourceId);
279
+ return fetchColumnsFn.current(extra, datasourceId, {
280
+ isExit: isExit
281
+ });
278
282
  case 1:
279
283
  columns = _context2.sent;
280
284
  setColumns(tableName, columns);
@@ -324,9 +328,12 @@ var useStore = function useStore() {
324
328
  return _context3.abrupt("return");
325
329
  case 1:
326
330
  _context3.next = 2;
327
- return fetchChangeFn.current(splitByUnion(_metaList), changeObj);
331
+ return fetchChangeFn.current(splitByUnion(_metaList), changeObj, {
332
+ isExit: isExit
333
+ });
328
334
  case 2:
329
335
  isChange = _context3.sent;
336
+ // 是否还原
330
337
  if (isChange === false) {
331
338
  _setMeta(_metaList);
332
339
  }
package/lib/es/types.d.ts CHANGED
@@ -8,16 +8,19 @@ export interface MetaListProps {
8
8
  subquery?: MetaListType[];
9
9
  list: MetaListType[];
10
10
  }
11
+ export interface FetchOptions {
12
+ isExit: boolean;
13
+ }
11
14
  export interface MetabaseProps {
12
15
  loading?: boolean;
13
16
  btnText?: string;
14
17
  showFields?: boolean;
15
18
  readonly?: boolean;
16
- getTables: (datasourceId: string) => Promise<any>;
19
+ getTables: (datasourceId: string, options: FetchOptions) => Promise<any>;
17
20
  getColumns: (table: {
18
21
  name: string;
19
22
  [key: string]: any;
20
- }, datasourceId: string) => Promise<any>;
23
+ }, datasourceId: string, options: FetchOptions) => Promise<any>;
21
24
  toolbar?: ToolbarType[];
22
25
  subToolbar?: ToolbarType[];
23
26
  tableNameTpl?: string;
@@ -38,10 +41,10 @@ export interface MetabaseProps {
38
41
  tableEnableAlias?: boolean;
39
42
  fieldEnableAlias?: boolean;
40
43
  isSelectFields?: boolean;
41
- onChange?: (newData: MetaListType[], curData?: {
44
+ onChange?: (newData: MetaListType[], curData: {
42
45
  data: any;
43
46
  type: ChangeType;
44
- }) => Promise<void | Boolean>;
47
+ }, options: FetchOptions) => Promise<void | Boolean>;
45
48
  }
46
49
  export interface OptionItem {
47
50
  value?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gingkoo/pandora-metabase",
3
- "version": "1.0.58",
3
+ "version": "1.0.60",
4
4
  "description": "",
5
5
  "main": "lib/es/index.js",
6
6
  "module": "lib/es/index.js",