@gingkoo/pandora-metabase 1.0.126 → 1.0.127
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/lib/cjs/components/dialog/expression/index.js +15 -5
- package/lib/cjs/components/dialog/expression/index.less +31 -16
- package/lib/cjs/components/dialog/formula-list/CaseWhenGroup.d.ts +14 -5
- package/lib/cjs/components/dialog/formula-list/CaseWhenGroup.js +236 -62
- package/lib/cjs/components/dialog/formula-list/LogicGroup.d.ts +3 -2
- package/lib/cjs/components/dialog/formula-list/LogicGroup.js +19 -11
- package/lib/cjs/components/dialog/formula-list/index.d.ts +1 -0
- package/lib/cjs/components/dialog/formula-list/index.js +658 -174
- package/lib/cjs/components/dialog/formula-list/index.less +1438 -145
- package/lib/cjs/components/dialog/formula-list/utils.js +50 -19
- package/lib/cjs/components/dialog/select-column-multiple/index.d.ts +1 -0
- package/lib/cjs/components/dialog/select-column-multiple/index.js +42 -22
- package/lib/cjs/components/dialog/select-summarize/index.js +10 -2
- package/lib/cjs/components/dialog/select-table/index.d.ts +2 -1
- package/lib/cjs/components/dialog/select-table/index.js +197 -52
- package/lib/cjs/components/dialog/select-table/index.less +45 -2
- package/lib/cjs/components/metabase/index.less +156 -39
- package/lib/cjs/components/modules/custom-column.js +7 -3
- package/lib/cjs/components/modules/filter.js +6 -3
- package/lib/cjs/components/modules/join-data.js +62 -14
- package/lib/cjs/components/modules/permission-table.js +8 -4
- package/lib/cjs/components/modules/sort.js +2 -1
- package/lib/cjs/components/modules/summarize/group-by.js +20 -6
- package/lib/cjs/components/modules/summarize/select-index.js +9 -5
- package/lib/cjs/components/modules/table-data.js +21 -3
- package/lib/cjs/hooks/use-state.js +143 -17
- package/lib/cjs/index.js +7 -1
- package/lib/cjs/store/types.d.ts +14 -7
- package/lib/cjs/types.d.ts +8 -0
- package/lib/cjs/utils/transformSql.js +44 -21
- package/lib/cjs/utils.d.ts +2 -2
- package/lib/cjs/utils.js +347 -56
- package/lib/es/components/dialog/expression/index.js +15 -5
- package/lib/es/components/dialog/expression/index.less +31 -16
- package/lib/es/components/dialog/formula-list/CaseWhenGroup.d.ts +14 -5
- package/lib/es/components/dialog/formula-list/CaseWhenGroup.js +238 -64
- package/lib/es/components/dialog/formula-list/LogicGroup.d.ts +3 -2
- package/lib/es/components/dialog/formula-list/LogicGroup.js +19 -11
- package/lib/es/components/dialog/formula-list/index.d.ts +1 -0
- package/lib/es/components/dialog/formula-list/index.js +660 -176
- package/lib/es/components/dialog/formula-list/index.less +1438 -145
- package/lib/es/components/dialog/formula-list/utils.js +50 -19
- package/lib/es/components/dialog/select-column-multiple/index.d.ts +1 -0
- package/lib/es/components/dialog/select-column-multiple/index.js +42 -22
- package/lib/es/components/dialog/select-summarize/index.js +10 -2
- package/lib/es/components/dialog/select-table/index.d.ts +2 -1
- package/lib/es/components/dialog/select-table/index.js +197 -52
- package/lib/es/components/dialog/select-table/index.less +45 -2
- package/lib/es/components/metabase/index.less +156 -39
- package/lib/es/components/modules/custom-column.js +7 -3
- package/lib/es/components/modules/filter.js +6 -3
- package/lib/es/components/modules/join-data.js +62 -14
- package/lib/es/components/modules/permission-table.js +8 -4
- package/lib/es/components/modules/sort.js +2 -1
- package/lib/es/components/modules/summarize/group-by.js +21 -7
- package/lib/es/components/modules/summarize/select-index.js +10 -6
- package/lib/es/components/modules/table-data.js +21 -3
- package/lib/es/hooks/use-state.js +143 -17
- package/lib/es/index.js +7 -1
- package/lib/es/store/types.d.ts +14 -7
- package/lib/es/types.d.ts +8 -0
- package/lib/es/utils/transformSql.js +45 -22
- package/lib/es/utils.d.ts +2 -2
- package/lib/es/utils.js +348 -57
- package/package.json +1 -1
|
@@ -7,8 +7,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports["default"] = void 0;
|
|
9
9
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
10
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
|
11
10
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
|
|
11
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
|
12
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
13
13
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
14
14
|
require("./index.less");
|
|
@@ -29,6 +29,7 @@ var SelectTable = function SelectTable(_ref) {
|
|
|
29
29
|
value = _ref.value,
|
|
30
30
|
_ref$onChange = _ref.onChange,
|
|
31
31
|
onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange,
|
|
32
|
+
onDatasourceTypeChange = _ref.onDatasourceTypeChange,
|
|
32
33
|
didUpdate = _ref.didUpdate,
|
|
33
34
|
_ref$tableFlat = _ref.tableFlat,
|
|
34
35
|
tableFlat = _ref$tableFlat === void 0 ? false : _ref$tableFlat;
|
|
@@ -42,50 +43,198 @@ var SelectTable = function SelectTable(_ref) {
|
|
|
42
43
|
datasource = _useState4[0];
|
|
43
44
|
var _useState5 = (0, _react.useState)(sourceTable.slice()),
|
|
44
45
|
_useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
var _useState7 = (0, _react.useState)(
|
|
46
|
+
originDatasourceTable = _useState6[0],
|
|
47
|
+
setOriginDatasourceTable = _useState6[1];
|
|
48
|
+
var _useState7 = (0, _react.useState)(sourceTable.slice()),
|
|
48
49
|
_useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
|
|
49
|
-
|
|
50
|
-
|
|
50
|
+
datasourceTable = _useState8[0],
|
|
51
|
+
setDatasourceTable = _useState8[1];
|
|
51
52
|
var _useState9 = (0, _react.useState)([]),
|
|
52
53
|
_useState0 = (0, _slicedToArray2["default"])(_useState9, 2),
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
var _useState1 = (0, _react.useState)(
|
|
54
|
+
list = _useState0[0],
|
|
55
|
+
setList = _useState0[1];
|
|
56
|
+
var _useState1 = (0, _react.useState)([]),
|
|
56
57
|
_useState10 = (0, _slicedToArray2["default"])(_useState1, 2),
|
|
57
|
-
|
|
58
|
-
|
|
58
|
+
originList = _useState10[0],
|
|
59
|
+
setOriginList = _useState10[1];
|
|
60
|
+
var _useState11 = (0, _react.useState)(value),
|
|
61
|
+
_useState12 = (0, _slicedToArray2["default"])(_useState11, 2),
|
|
62
|
+
val = _useState12[0],
|
|
63
|
+
setVal = _useState12[1];
|
|
64
|
+
var _useState13 = (0, _react.useState)(''),
|
|
65
|
+
_useState14 = (0, _slicedToArray2["default"])(_useState13, 2),
|
|
66
|
+
tableFilterValue = _useState14[0],
|
|
67
|
+
setTableFilterValue = _useState14[1];
|
|
59
68
|
(0, _react.useEffect)(function () {
|
|
60
69
|
if (value.datasourceId) {
|
|
61
|
-
|
|
70
|
+
var datasourceItem = getDatasource(value.datasourceId);
|
|
71
|
+
var _datasourceType = value.datasourceType || getDefaultDatasourceType(datasourceItem);
|
|
72
|
+
var nextVal = (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, value), {}, {
|
|
73
|
+
datasourceType: _datasourceType
|
|
74
|
+
});
|
|
75
|
+
setVal(nextVal);
|
|
76
|
+
if (!value.datasourceType && _datasourceType) {
|
|
77
|
+
emitDatasourceTypeChange(nextVal);
|
|
78
|
+
}
|
|
79
|
+
loadTables(value.datasourceId, _datasourceType);
|
|
62
80
|
}
|
|
63
81
|
}, []);
|
|
64
|
-
function
|
|
65
|
-
|
|
82
|
+
function getDefaultDatasourceType(datasource) {
|
|
83
|
+
var _datasource$datasourc;
|
|
84
|
+
return (datasource === null || datasource === void 0 ? void 0 : datasource.defaultDatasourceType) || (datasource === null || datasource === void 0 ? void 0 : datasource.datasourceType) || (datasource === null || datasource === void 0 || (_datasource$datasourc = datasource.datasourceTypeList) === null || _datasource$datasourc === void 0 || (_datasource$datasourc = _datasource$datasourc[0]) === null || _datasource$datasourc === void 0 ? void 0 : _datasource$datasourc.value) || '';
|
|
85
|
+
}
|
|
86
|
+
function getDatasource(datasourceId) {
|
|
87
|
+
return datasource.find(function (v) {
|
|
88
|
+
return v.datasourceId === datasourceId;
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
function filterDatasourceTables(tables, keyword) {
|
|
92
|
+
var searchVal = keyword.toLocaleLowerCase();
|
|
93
|
+
if (!searchVal) return tables.slice();
|
|
94
|
+
return (0, _cloneDeep["default"])(tables.slice()).map(function (v) {
|
|
95
|
+
var _v$children;
|
|
96
|
+
return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, v), {}, {
|
|
97
|
+
children: v === null || v === void 0 || (_v$children = v.children) === null || _v$children === void 0 ? void 0 : _v$children.filter(function (vv) {
|
|
98
|
+
return ~(vv.name + (vv.name_zh || '')).toLocaleLowerCase().indexOf(searchVal);
|
|
99
|
+
})
|
|
100
|
+
});
|
|
101
|
+
}).filter(function (v) {
|
|
102
|
+
return (v.children || []).length > 0;
|
|
103
|
+
});
|
|
66
104
|
}
|
|
67
|
-
function
|
|
68
|
-
|
|
69
|
-
|
|
105
|
+
function loadTables(_x) {
|
|
106
|
+
return _loadTables.apply(this, arguments);
|
|
107
|
+
}
|
|
108
|
+
function _loadTables() {
|
|
109
|
+
_loadTables = (0, _asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(datasourceId) {
|
|
110
|
+
var datasourceType,
|
|
111
|
+
force,
|
|
112
|
+
tables,
|
|
113
|
+
_args = arguments;
|
|
70
114
|
return _regenerator["default"].wrap(function (_context) {
|
|
71
115
|
while (1) switch (_context.prev = _context.next) {
|
|
72
116
|
case 0:
|
|
117
|
+
datasourceType = _args.length > 1 && _args[1] !== undefined ? _args[1] : '';
|
|
118
|
+
force = _args.length > 2 && _args[2] !== undefined ? _args[2] : false;
|
|
73
119
|
setLoading(true);
|
|
74
120
|
_context.next = 1;
|
|
75
|
-
return store.fetchDataset(datasourceId);
|
|
121
|
+
return store.fetchDataset(datasourceId, datasourceType, force);
|
|
76
122
|
case 1:
|
|
77
123
|
tables = _context.sent;
|
|
78
124
|
setLoading(false);
|
|
79
125
|
setList(tables);
|
|
80
126
|
setOriginList(tables);
|
|
127
|
+
return _context.abrupt("return", tables);
|
|
81
128
|
case 2:
|
|
82
129
|
case "end":
|
|
83
130
|
return _context.stop();
|
|
84
131
|
}
|
|
85
132
|
}, _callee);
|
|
86
133
|
}));
|
|
87
|
-
return
|
|
134
|
+
return _loadTables.apply(this, arguments);
|
|
135
|
+
}
|
|
136
|
+
function emitDatasourceTypeChange(nextVal) {
|
|
137
|
+
if (!nextVal.datasourceId || !nextVal.name) return;
|
|
138
|
+
onDatasourceTypeChange === null || onDatasourceTypeChange === void 0 || onDatasourceTypeChange(nextVal);
|
|
139
|
+
}
|
|
140
|
+
function handleSelectDatasource(datasource, datasourceType) {
|
|
141
|
+
var force = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
142
|
+
var nextDatasourceType = datasourceType || getDefaultDatasourceType(datasource);
|
|
143
|
+
setVal({
|
|
144
|
+
datasourceId: datasource.datasourceId,
|
|
145
|
+
datasourceName: datasource.datasourceName,
|
|
146
|
+
datasourceType: nextDatasourceType,
|
|
147
|
+
name: '',
|
|
148
|
+
name_zh: '',
|
|
149
|
+
id: '',
|
|
150
|
+
tableUuid: (0, _helper.uuidv4)('table'),
|
|
151
|
+
alias: ''
|
|
152
|
+
});
|
|
153
|
+
loadTables(datasource.datasourceId, nextDatasourceType, force);
|
|
154
|
+
}
|
|
155
|
+
function handleDatasourceTypeChange(datasourceType) {
|
|
156
|
+
var nextVal = (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, val), {}, {
|
|
157
|
+
datasourceType: datasourceType
|
|
158
|
+
});
|
|
159
|
+
setVal(nextVal);
|
|
160
|
+
emitDatasourceTypeChange(nextVal);
|
|
161
|
+
loadTables(nextVal.datasourceId, datasourceType, true);
|
|
162
|
+
}
|
|
163
|
+
function handleFlatDatasourceTypeChange(_x2, _x3) {
|
|
164
|
+
return _handleFlatDatasourceTypeChange.apply(this, arguments);
|
|
165
|
+
}
|
|
166
|
+
function _handleFlatDatasourceTypeChange() {
|
|
167
|
+
_handleFlatDatasourceTypeChange = (0, _asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2(datasourceItem, datasourceType) {
|
|
168
|
+
var nextVal, tables, updateDatasourceTable, nextOriginDatasourceTable;
|
|
169
|
+
return _regenerator["default"].wrap(function (_context2) {
|
|
170
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
171
|
+
case 0:
|
|
172
|
+
if (val.datasourceId === datasourceItem.datasourceId) {
|
|
173
|
+
nextVal = (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, val), {}, {
|
|
174
|
+
datasourceType: datasourceType
|
|
175
|
+
});
|
|
176
|
+
setVal(nextVal);
|
|
177
|
+
emitDatasourceTypeChange(nextVal);
|
|
178
|
+
}
|
|
179
|
+
_context2.next = 1;
|
|
180
|
+
return loadTables(datasourceItem.datasourceId, datasourceType, true);
|
|
181
|
+
case 1:
|
|
182
|
+
tables = _context2.sent;
|
|
183
|
+
updateDatasourceTable = function updateDatasourceTable(tablesData) {
|
|
184
|
+
return tablesData.map(function (v) {
|
|
185
|
+
if (v.datasourceId !== datasourceItem.datasourceId) return v;
|
|
186
|
+
return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, v), {}, {
|
|
187
|
+
datasourceType: datasourceType,
|
|
188
|
+
children: tables
|
|
189
|
+
});
|
|
190
|
+
});
|
|
191
|
+
};
|
|
192
|
+
nextOriginDatasourceTable = updateDatasourceTable(originDatasourceTable);
|
|
193
|
+
setOriginDatasourceTable(nextOriginDatasourceTable);
|
|
194
|
+
setDatasourceTable(filterDatasourceTables(nextOriginDatasourceTable, tableFilterValue));
|
|
195
|
+
case 2:
|
|
196
|
+
case "end":
|
|
197
|
+
return _context2.stop();
|
|
198
|
+
}
|
|
199
|
+
}, _callee2);
|
|
200
|
+
}));
|
|
201
|
+
return _handleFlatDatasourceTypeChange.apply(this, arguments);
|
|
202
|
+
}
|
|
203
|
+
function renderDatasourceTypeSelector(datasourceItem, datasourceType, onChange) {
|
|
204
|
+
var datasourceTypeList = datasourceItem.datasourceTypeList || [];
|
|
205
|
+
if (!datasourceTypeList.length) return null;
|
|
206
|
+
return (0, _jsxRuntime.jsx)("div", {
|
|
207
|
+
className: 'Sqb-DatasourceType-radio',
|
|
208
|
+
onClick: function onClick(e) {
|
|
209
|
+
return e.stopPropagation();
|
|
210
|
+
},
|
|
211
|
+
children: datasourceTypeList.map(function (item) {
|
|
212
|
+
var checked = datasourceType === item.value;
|
|
213
|
+
var handleChangeType = function handleChangeType(e) {
|
|
214
|
+
e.preventDefault();
|
|
215
|
+
e.stopPropagation();
|
|
216
|
+
if (!checked) onChange(item.value);
|
|
217
|
+
};
|
|
218
|
+
return (0, _jsxRuntime.jsxs)("label", {
|
|
219
|
+
className: 'Sqb-DatasourceType-radio-item',
|
|
220
|
+
onMouseDown: handleChangeType,
|
|
221
|
+
onClick: handleChangeType,
|
|
222
|
+
children: [(0, _jsxRuntime.jsx)("input", {
|
|
223
|
+
type: 'radio',
|
|
224
|
+
name: "datasourceType_".concat(datasourceItem.datasourceId || 'current'),
|
|
225
|
+
checked: checked,
|
|
226
|
+
readOnly: true
|
|
227
|
+
}), (0, _jsxRuntime.jsx)("span", {
|
|
228
|
+
children: item.label
|
|
229
|
+
})]
|
|
230
|
+
}, item.value);
|
|
231
|
+
})
|
|
232
|
+
});
|
|
88
233
|
}
|
|
234
|
+
(0, _react.useEffect)(function () {
|
|
235
|
+
setOriginDatasourceTable(sourceTable.slice());
|
|
236
|
+
setDatasourceTable(filterDatasourceTables(sourceTable.slice(), tableFilterValue));
|
|
237
|
+
}, [sourceTable]);
|
|
89
238
|
(0, _react.useEffect)(function () {
|
|
90
239
|
didUpdate === null || didUpdate === void 0 || didUpdate();
|
|
91
240
|
}, [list, loading, datasource]);
|
|
@@ -98,23 +247,14 @@ var SelectTable = function SelectTable(_ref) {
|
|
|
98
247
|
}
|
|
99
248
|
function onInput1(e) {
|
|
100
249
|
var val = e.target.value;
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
var _v$children;
|
|
104
|
-
return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, v), {}, {
|
|
105
|
-
children: v === null || v === void 0 || (_v$children = v.children) === null || _v$children === void 0 ? void 0 : _v$children.filter(function (v) {
|
|
106
|
-
return ~(v.name + (v.name_zh || '')).toLocaleLowerCase().indexOf(val.toLocaleLowerCase());
|
|
107
|
-
})
|
|
108
|
-
});
|
|
109
|
-
}).filter(function (v) {
|
|
110
|
-
return v.children.length > 0;
|
|
111
|
-
});
|
|
112
|
-
setDatasourceTable(_new);
|
|
250
|
+
setTableFilterValue(val);
|
|
251
|
+
setDatasourceTable(filterDatasourceTables(originDatasourceTable, val));
|
|
113
252
|
}
|
|
114
253
|
function goPrevPage() {
|
|
115
254
|
setVal({
|
|
116
255
|
datasourceId: '',
|
|
117
256
|
datasourceName: '',
|
|
257
|
+
datasourceType: '',
|
|
118
258
|
name: '',
|
|
119
259
|
name_zh: '',
|
|
120
260
|
tableUuid: '',
|
|
@@ -150,14 +290,20 @@ var SelectTable = function SelectTable(_ref) {
|
|
|
150
290
|
})
|
|
151
291
|
}), datasourceTable.map(function (table) {
|
|
152
292
|
var _table$children;
|
|
293
|
+
var datasourceType = table.datasourceType || getDefaultDatasourceType(table);
|
|
153
294
|
return (0, _jsxRuntime.jsxs)(_react["default"].Fragment, {
|
|
154
|
-
children: [(0, _jsxRuntime.
|
|
295
|
+
children: [(0, _jsxRuntime.jsxs)("div", {
|
|
155
296
|
className: (0, _classnames["default"])("Sqb-List-title mx-4 pb-2 pt-2"),
|
|
156
|
-
children:
|
|
297
|
+
children: [(0, _jsxRuntime.jsx)("span", {
|
|
298
|
+
children: table.datasourceName
|
|
299
|
+
}), renderDatasourceTypeSelector(table, datasourceType, function (type) {
|
|
300
|
+
return handleFlatDatasourceTypeChange(table, type);
|
|
301
|
+
})]
|
|
157
302
|
}), Array.isArray(table.children) && (table === null || table === void 0 || (_table$children = table.children) === null || _table$children === void 0 ? void 0 : _table$children.map(function (v) {
|
|
158
303
|
var _val = {
|
|
159
304
|
datasourceId: table.datasourceId,
|
|
160
305
|
datasourceName: table.datasourceName,
|
|
306
|
+
datasourceType: datasourceType,
|
|
161
307
|
name: '',
|
|
162
308
|
name_zh: '',
|
|
163
309
|
id: '',
|
|
@@ -168,10 +314,12 @@ var SelectTable = function SelectTable(_ref) {
|
|
|
168
314
|
className: (0, _classnames["default"])("Sqb-List-section"),
|
|
169
315
|
children: (0, _jsxRuntime.jsx)("div", {
|
|
170
316
|
className: (0, _classnames["default"])("Sqb-List-item mx-2", {
|
|
171
|
-
active:
|
|
317
|
+
active: val.datasourceId === table.datasourceId && val.name === v.name && (val.datasourceType || datasourceType) === datasourceType
|
|
172
318
|
}),
|
|
173
319
|
onClick: function onClick() {
|
|
174
|
-
onChange((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _val), v)
|
|
320
|
+
onChange((0, _objectSpread2["default"])((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _val), v), {}, {
|
|
321
|
+
datasourceType: datasourceType
|
|
322
|
+
}));
|
|
175
323
|
},
|
|
176
324
|
children: (0, _jsxRuntime.jsxs)("a", {
|
|
177
325
|
className: 'p-2',
|
|
@@ -186,9 +334,9 @@ var SelectTable = function SelectTable(_ref) {
|
|
|
186
334
|
})]
|
|
187
335
|
})
|
|
188
336
|
})
|
|
189
|
-
}, v.name);
|
|
337
|
+
}, "".concat(datasourceType, "_").concat(v.name));
|
|
190
338
|
}))]
|
|
191
|
-
}, table.datasourceId);
|
|
339
|
+
}, "".concat(table.datasourceId, "_").concat(datasourceType));
|
|
192
340
|
})]
|
|
193
341
|
})
|
|
194
342
|
})
|
|
@@ -214,16 +362,7 @@ var SelectTable = function SelectTable(_ref) {
|
|
|
214
362
|
active: val.datasourceId === v.datasourceId
|
|
215
363
|
}),
|
|
216
364
|
onClick: function onClick() {
|
|
217
|
-
|
|
218
|
-
datasourceId: v.datasourceId,
|
|
219
|
-
datasourceName: v.datasourceName,
|
|
220
|
-
name: '',
|
|
221
|
-
name_zh: '',
|
|
222
|
-
id: '',
|
|
223
|
-
tableUuid: (0, _helper.uuidv4)('table'),
|
|
224
|
-
alias: ''
|
|
225
|
-
});
|
|
226
|
-
getTables(v.datasourceId);
|
|
365
|
+
handleSelectDatasource(v);
|
|
227
366
|
},
|
|
228
367
|
children: (0, _jsxRuntime.jsxs)("a", {
|
|
229
368
|
className: 'p-2',
|
|
@@ -244,6 +383,8 @@ var SelectTable = function SelectTable(_ref) {
|
|
|
244
383
|
})
|
|
245
384
|
});
|
|
246
385
|
}
|
|
386
|
+
var selectedDatasource = getDatasource(val.datasourceId) || val;
|
|
387
|
+
var datasourceType = val.datasourceType || getDefaultDatasourceType(selectedDatasource);
|
|
247
388
|
return (0, _jsxRuntime.jsx)("div", {
|
|
248
389
|
className: (0, _classnames["default"])("Sqb-SelectTable--box pb-2"),
|
|
249
390
|
children: (0, _jsxRuntime.jsx)("div", {
|
|
@@ -256,12 +397,14 @@ var SelectTable = function SelectTable(_ref) {
|
|
|
256
397
|
},
|
|
257
398
|
children: [(0, _jsxRuntime.jsx)("div", {
|
|
258
399
|
className: 'header',
|
|
259
|
-
children: (0, _jsxRuntime.
|
|
400
|
+
children: (0, _jsxRuntime.jsxs)("div", {
|
|
260
401
|
className: 'left-info',
|
|
261
|
-
children: (0, _jsxRuntime.jsxs)("span", {
|
|
402
|
+
children: [(0, _jsxRuntime.jsxs)("span", {
|
|
262
403
|
onClick: goPrevPage,
|
|
263
404
|
children: [(0, _jsxRuntime.jsx)(_icons.LeftArrowIcon, {}), val.datasourceName]
|
|
264
|
-
})
|
|
405
|
+
}), renderDatasourceTypeSelector(selectedDatasource, datasourceType, function (type) {
|
|
406
|
+
return handleDatasourceTypeChange(type);
|
|
407
|
+
})]
|
|
265
408
|
})
|
|
266
409
|
}), loading ? (0, _jsxRuntime.jsx)("div", {
|
|
267
410
|
className: 'Sqb-SelectTable-loading',
|
|
@@ -290,10 +433,12 @@ var SelectTable = function SelectTable(_ref) {
|
|
|
290
433
|
className: (0, _classnames["default"])("Sqb-List-section"),
|
|
291
434
|
children: (0, _jsxRuntime.jsx)("div", {
|
|
292
435
|
className: (0, _classnames["default"])("Sqb-List-item mx-2", {
|
|
293
|
-
active: value.name === v.name
|
|
436
|
+
active: val.datasourceId === value.datasourceId && val.name === v.name && (val.datasourceType || datasourceType) === datasourceType
|
|
294
437
|
}),
|
|
295
438
|
onClick: function onClick() {
|
|
296
|
-
onChange((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, val), v)
|
|
439
|
+
onChange((0, _objectSpread2["default"])((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, val), v), {}, {
|
|
440
|
+
datasourceType: datasourceType
|
|
441
|
+
}));
|
|
297
442
|
},
|
|
298
443
|
children: (0, _jsxRuntime.jsxs)("a", {
|
|
299
444
|
className: 'p-2',
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
color: #4c5773;
|
|
29
29
|
margin-top: 0;
|
|
30
30
|
margin-bottom: 0;
|
|
31
|
-
font-size:
|
|
31
|
+
font-size: 13px;
|
|
32
32
|
font-weight: 600;
|
|
33
33
|
}
|
|
34
34
|
&:not(.disabled):hover,
|
|
@@ -64,10 +64,16 @@
|
|
|
64
64
|
color: #949aab;
|
|
65
65
|
border-bottom: 1px solid #f0f0f0;
|
|
66
66
|
.left-info {
|
|
67
|
+
flex: 1;
|
|
67
68
|
padding: 0.5rem 0.5rem 0.5rem 0;
|
|
68
69
|
display: flex;
|
|
69
70
|
align-items: center;
|
|
70
|
-
|
|
71
|
+
flex-wrap: wrap;
|
|
72
|
+
gap: 0.5rem;
|
|
73
|
+
.Sqb-DatasourceType-radio {
|
|
74
|
+
margin-left: auto;
|
|
75
|
+
}
|
|
76
|
+
> span {
|
|
71
77
|
font-weight: 900;
|
|
72
78
|
font-size: 16px;
|
|
73
79
|
color: #4c5773;
|
|
@@ -95,6 +101,13 @@
|
|
|
95
101
|
.Sqb-List-section {
|
|
96
102
|
}
|
|
97
103
|
|
|
104
|
+
.Sqb-List-title {
|
|
105
|
+
display: flex;
|
|
106
|
+
align-items: center;
|
|
107
|
+
justify-content: space-between;
|
|
108
|
+
gap: 0.75rem;
|
|
109
|
+
}
|
|
110
|
+
|
|
98
111
|
.Sqb-List-item {
|
|
99
112
|
display: flex;
|
|
100
113
|
border-radius: 4px;
|
|
@@ -167,3 +180,33 @@
|
|
|
167
180
|
}
|
|
168
181
|
}
|
|
169
182
|
}
|
|
183
|
+
|
|
184
|
+
.Sqb-DatasourceType-radio {
|
|
185
|
+
display: flex;
|
|
186
|
+
align-items: center;
|
|
187
|
+
flex-wrap: wrap;
|
|
188
|
+
gap: 0.375rem;
|
|
189
|
+
justify-content: flex-end;
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
.Sqb-DatasourceType-radio-item {
|
|
193
|
+
display: inline-flex;
|
|
194
|
+
align-items: center;
|
|
195
|
+
gap: 2px;
|
|
196
|
+
color: #4c5773;
|
|
197
|
+
cursor: pointer;
|
|
198
|
+
font-size: 13px !important;
|
|
199
|
+
font-weight: 600;
|
|
200
|
+
line-height: 1.2;
|
|
201
|
+
|
|
202
|
+
span {
|
|
203
|
+
font-size: 13px !important;
|
|
204
|
+
line-height: 15px;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
input {
|
|
208
|
+
margin: 0;
|
|
209
|
+
width: 13px;
|
|
210
|
+
height: 13px;
|
|
211
|
+
}
|
|
212
|
+
}
|