@gingkoo/pandora-metabase 1.0.118 → 1.0.120
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/common/Portal/index.js +0 -2
- package/lib/cjs/common/SplitView/index.d.ts +0 -4
- package/lib/cjs/common/SplitView/index.js +0 -10
- package/lib/cjs/components/dialog/custom-column/config.js +4 -48
- package/lib/cjs/components/dialog/custom-column/expression-editor.js +3 -14
- package/lib/cjs/components/dialog/custom-column/expressions/suggest.d.ts +2 -34
- package/lib/cjs/components/dialog/custom-column/expressions/suggest.js +2 -43
- package/lib/cjs/components/dialog/custom-column/expressions/tokenizer.js +8 -65
- package/lib/cjs/components/dialog/custom-column/index.js +2 -4
- package/lib/cjs/components/dialog/custom-column/tokenized-expression.js +2 -3
- package/lib/cjs/components/dialog/custom-column/tokenizedI-input.js +1 -1
- package/lib/cjs/components/dialog/custom-editor/index.js +2 -7
- package/lib/cjs/components/dialog/diff-viewer/index copy.js +1 -16
- package/lib/cjs/components/dialog/expression/date-format-picker.js +2 -20
- package/lib/cjs/components/dialog/expression/date-format.js +2 -8
- package/lib/cjs/components/dialog/expression/index.d.ts +0 -3
- package/lib/cjs/components/dialog/expression/index.js +2 -83
- package/lib/cjs/components/dialog/formula/index.js +6 -31
- package/lib/cjs/components/dialog/formula/utils.js +2 -10
- package/lib/cjs/components/dialog/formula-list/CaseWhenGroup.d.ts +19 -0
- package/lib/cjs/components/dialog/formula-list/CaseWhenGroup.js +109 -0
- package/lib/cjs/components/dialog/formula-list/LogicGroup.d.ts +9 -0
- package/lib/cjs/components/dialog/formula-list/LogicGroup.js +43 -0
- package/lib/cjs/components/dialog/formula-list/index.d.ts +3 -0
- package/lib/cjs/components/dialog/formula-list/index.js +970 -504
- package/lib/cjs/components/dialog/formula-list/index.less +724 -0
- package/lib/cjs/components/dialog/formula-list/utils.d.ts +0 -7
- package/lib/cjs/components/dialog/formula-list/utils.js +117 -113
- package/lib/cjs/components/dialog/select-column/index.d.ts +0 -6
- package/lib/cjs/components/dialog/select-column/index.js +4 -15
- package/lib/cjs/components/dialog/select-column-multiple/index.d.ts +0 -8
- package/lib/cjs/components/dialog/select-column-multiple/index.js +6 -45
- package/lib/cjs/components/dialog/select-join/index.d.ts +0 -5
- package/lib/cjs/components/dialog/select-join/index.js +0 -6
- package/lib/cjs/components/dialog/select-join-column/index.d.ts +0 -8
- package/lib/cjs/components/dialog/select-join-column/index.js +7 -21
- package/lib/cjs/components/dialog/select-join-column-multiple/index.d.ts +0 -8
- package/lib/cjs/components/dialog/select-join-column-multiple/index.js +5 -35
- package/lib/cjs/components/dialog/select-permission-table/index.d.ts +0 -5
- package/lib/cjs/components/dialog/select-permission-table/index.js +0 -6
- package/lib/cjs/components/dialog/select-summarize/index.d.ts +7 -4
- package/lib/cjs/components/dialog/select-summarize/index.js +105 -18
- package/lib/cjs/components/dialog/select-summarize/index.less +23 -0
- package/lib/cjs/components/dialog/select-table/index.d.ts +0 -6
- package/lib/cjs/components/dialog/select-table/index.js +1 -9
- package/lib/cjs/components/metabase/index.js +72 -86
- package/lib/cjs/components/metabase/index.less +7 -7
- package/lib/cjs/components/modules/components/Wrapper.js +1 -1
- package/lib/cjs/components/modules/components/header.js +2 -2
- package/lib/cjs/components/modules/components/meta-icon.d.ts +0 -3
- package/lib/cjs/components/modules/components/meta-icon.js +2 -47
- package/lib/cjs/components/modules/custom-column.js +3 -29
- package/lib/cjs/components/modules/enum/filter-enum.js +9 -88
- package/lib/cjs/components/modules/filter.js +2 -20
- package/lib/cjs/components/modules/index.d.ts +4 -2
- package/lib/cjs/components/modules/index.js +24 -1
- package/lib/cjs/components/modules/join-data.js +13 -291
- package/lib/cjs/components/modules/row-limit.js +0 -1
- package/lib/cjs/components/modules/sort.js +1 -61
- package/lib/cjs/components/modules/summarize/group-by.d.ts +0 -5
- package/lib/cjs/components/modules/summarize/group-by.js +251 -89
- package/lib/cjs/components/modules/summarize/select-index.js +116 -59
- package/lib/cjs/components/modules/table-data.js +11 -64
- package/lib/cjs/components/popup.js +26 -32
- package/lib/cjs/hooks/patch.d.ts +1 -0
- package/lib/cjs/hooks/patch.js +104 -6
- package/lib/cjs/hooks/patch2.js +3 -165
- package/lib/cjs/hooks/use-provider.js +0 -3
- package/lib/cjs/hooks/use-state.js +55 -135
- package/lib/cjs/index.js +0 -15
- package/lib/cjs/locale/en.js +5 -0
- package/lib/cjs/locale/index.js +1 -4
- package/lib/cjs/locale/zh.js +5 -0
- package/lib/cjs/sql-formula.js +0 -1
- package/lib/cjs/store/enum.d.ts +6 -6
- package/lib/cjs/store/enum.js +0 -13
- package/lib/cjs/store/helper.d.ts +2 -1
- package/lib/cjs/store/helper.js +15 -225
- package/lib/cjs/store/types.d.ts +45 -67
- package/lib/cjs/store/types.js +3 -49
- package/lib/cjs/types.d.ts +1 -0
- package/lib/cjs/utils/cookies.js +0 -3
- package/lib/cjs/utils/event.js +1 -1
- package/lib/cjs/utils/helper-dom.d.ts +1 -0
- package/lib/cjs/utils/helper-dom.js +17 -10
- package/lib/cjs/utils/helper.js +1 -24
- package/lib/cjs/utils/keydown.js +4 -7
- package/lib/cjs/utils/platform.d.ts +0 -9
- package/lib/cjs/utils/platform.js +0 -10
- package/lib/cjs/utils/selection.js +0 -6
- package/lib/cjs/utils/storage.d.ts +0 -9
- package/lib/cjs/utils/storage.js +1 -11
- package/lib/cjs/utils/transformSql.d.ts +5 -0
- package/lib/cjs/utils/transformSql.js +40 -101
- package/lib/cjs/utils.d.ts +1 -6
- package/lib/cjs/utils.js +126 -255
- package/lib/es/common/Portal/index.js +0 -2
- package/lib/es/common/SplitView/index.d.ts +0 -4
- package/lib/es/common/SplitView/index.js +0 -10
- package/lib/es/components/dialog/custom-column/config.js +4 -48
- package/lib/es/components/dialog/custom-column/expression-editor.js +3 -14
- package/lib/es/components/dialog/custom-column/expressions/suggest.d.ts +2 -34
- package/lib/es/components/dialog/custom-column/expressions/suggest.js +2 -43
- package/lib/es/components/dialog/custom-column/expressions/tokenizer.js +8 -65
- package/lib/es/components/dialog/custom-column/index.js +2 -4
- package/lib/es/components/dialog/custom-column/tokenized-expression.js +1 -3
- package/lib/es/components/dialog/custom-column/tokenizedI-input.js +1 -1
- package/lib/es/components/dialog/custom-editor/index.js +1 -7
- package/lib/es/components/dialog/diff-viewer/index copy.js +1 -15
- package/lib/es/components/dialog/expression/date-format-picker.js +2 -20
- package/lib/es/components/dialog/expression/date-format.js +2 -8
- package/lib/es/components/dialog/expression/index.d.ts +0 -3
- package/lib/es/components/dialog/expression/index.js +2 -82
- package/lib/es/components/dialog/formula/index.js +5 -31
- package/lib/es/components/dialog/formula/utils.js +2 -10
- package/lib/es/components/dialog/formula-list/CaseWhenGroup.d.ts +19 -0
- package/lib/es/components/dialog/formula-list/CaseWhenGroup.js +102 -0
- package/lib/es/components/dialog/formula-list/LogicGroup.d.ts +9 -0
- package/lib/es/components/dialog/formula-list/LogicGroup.js +36 -0
- package/lib/es/components/dialog/formula-list/index.d.ts +3 -0
- package/lib/es/components/dialog/formula-list/index.js +969 -504
- package/lib/es/components/dialog/formula-list/index.less +724 -0
- package/lib/es/components/dialog/formula-list/utils.d.ts +0 -7
- package/lib/es/components/dialog/formula-list/utils.js +117 -113
- package/lib/es/components/dialog/index.js +3 -3
- package/lib/es/components/dialog/select-column/index.d.ts +0 -6
- package/lib/es/components/dialog/select-column/index.js +4 -14
- package/lib/es/components/dialog/select-column-multiple/index.d.ts +0 -8
- package/lib/es/components/dialog/select-column-multiple/index.js +7 -47
- package/lib/es/components/dialog/select-join/index.d.ts +0 -5
- package/lib/es/components/dialog/select-join/index.js +0 -5
- package/lib/es/components/dialog/select-join-column/index.d.ts +0 -8
- package/lib/es/components/dialog/select-join-column/index.js +7 -20
- package/lib/es/components/dialog/select-join-column-multiple/index.d.ts +0 -8
- package/lib/es/components/dialog/select-join-column-multiple/index.js +5 -34
- package/lib/es/components/dialog/select-permission-table/index.d.ts +0 -5
- package/lib/es/components/dialog/select-permission-table/index.js +0 -5
- package/lib/es/components/dialog/select-summarize/index.d.ts +7 -4
- package/lib/es/components/dialog/select-summarize/index.js +106 -18
- package/lib/es/components/dialog/select-summarize/index.less +23 -0
- package/lib/es/components/dialog/select-table/index.d.ts +0 -6
- package/lib/es/components/dialog/select-table/index.js +1 -8
- package/lib/es/components/metabase/index.js +72 -87
- package/lib/es/components/metabase/index.less +7 -7
- package/lib/es/components/modules/components/Wrapper.js +1 -1
- package/lib/es/components/modules/components/header.js +2 -2
- package/lib/es/components/modules/components/meta-icon.d.ts +0 -3
- package/lib/es/components/modules/components/meta-icon.js +2 -46
- package/lib/es/components/modules/custom-column.js +3 -29
- package/lib/es/components/modules/enum/filter-enum.js +9 -88
- package/lib/es/components/modules/filter.js +2 -19
- package/lib/es/components/modules/index.d.ts +4 -2
- package/lib/es/components/modules/index.js +24 -1
- package/lib/es/components/modules/join-data.js +13 -291
- package/lib/es/components/modules/row-limit.js +0 -1
- package/lib/es/components/modules/sort.js +1 -61
- package/lib/es/components/modules/summarize/group-by.d.ts +0 -5
- package/lib/es/components/modules/summarize/group-by.js +253 -91
- package/lib/es/components/modules/summarize/select-index.js +116 -59
- package/lib/es/components/modules/table-data.js +11 -64
- package/lib/es/components/popup.js +27 -33
- package/lib/es/hooks/patch.d.ts +1 -0
- package/lib/es/hooks/patch.js +103 -5
- package/lib/es/hooks/patch2.js +2 -164
- package/lib/es/hooks/use-provider.js +0 -3
- package/lib/es/hooks/use-state.js +55 -135
- package/lib/es/index.js +0 -14
- package/lib/es/locale/en.js +5 -0
- package/lib/es/locale/index.js +1 -4
- package/lib/es/locale/zh.js +5 -0
- package/lib/es/sql-formula.js +0 -1
- package/lib/es/store/enum.d.ts +6 -6
- package/lib/es/store/enum.js +0 -13
- package/lib/es/store/helper.d.ts +2 -1
- package/lib/es/store/helper.js +13 -224
- package/lib/es/store/types.d.ts +45 -67
- package/lib/es/store/types.js +3 -49
- package/lib/es/types.d.ts +1 -0
- package/lib/es/types.js +1 -18
- package/lib/es/utils/cookies.js +0 -3
- package/lib/es/utils/event.js +1 -1
- package/lib/es/utils/helper-dom.d.ts +1 -0
- package/lib/es/utils/helper-dom.js +16 -9
- package/lib/es/utils/helper.js +1 -24
- package/lib/es/utils/keydown.js +4 -7
- package/lib/es/utils/platform.d.ts +0 -9
- package/lib/es/utils/platform.js +0 -10
- package/lib/es/utils/selection.js +0 -6
- package/lib/es/utils/storage.d.ts +0 -9
- package/lib/es/utils/storage.js +1 -10
- package/lib/es/utils/transformSql.d.ts +5 -0
- package/lib/es/utils/transformSql.js +40 -100
- package/lib/es/utils.d.ts +1 -6
- package/lib/es/utils.js +127 -255
- package/package.json +1 -1
|
@@ -7,6 +7,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports["default"] = void 0;
|
|
8
8
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/defineProperty"));
|
|
10
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/toConsumableArray"));
|
|
11
|
+
var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createForOfIteratorHelper"));
|
|
10
12
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
|
|
11
13
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
|
12
14
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
@@ -30,6 +32,7 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
30
32
|
var group = meta.group;
|
|
31
33
|
var index = (0, _utils.findIndex)(store.metaList[groupIndex].list, meta);
|
|
32
34
|
var notGroupSelected = !group.length;
|
|
35
|
+
var summarizeWithoutArgument = ['总行数', '累积行数'];
|
|
33
36
|
function getColumns() {
|
|
34
37
|
var _getHelper = (0, _utils.getHelper)(store.metaList[groupIndex].list, meta),
|
|
35
38
|
ExistAboveGroupBy = _getHelper.ExistAboveGroupBy,
|
|
@@ -39,8 +42,9 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
39
42
|
if (ExistAboveGroupBy) {
|
|
40
43
|
var _prevGroupBy$group, _prevGroupBy$by;
|
|
41
44
|
var _data = {
|
|
42
|
-
|
|
43
|
-
|
|
45
|
+
name: prevGroupBy.alias,
|
|
46
|
+
id: prevGroupBy.alias,
|
|
47
|
+
name_zh: prevGroupBy.alias,
|
|
44
48
|
tableUuid: prevGroupBy.tableUuid || (0, _helper2.uuidv4)('table'),
|
|
45
49
|
alias: prevGroupBy.alias,
|
|
46
50
|
columns: []
|
|
@@ -55,7 +59,6 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
55
59
|
fieldUuid: (0, _helper2.uuidv4)('field'),
|
|
56
60
|
fieldAlias: v.fieldAlias || '',
|
|
57
61
|
realName: ((_v$sql = v.sql) === null || _v$sql === void 0 || (_v$sql = _v$sql.split(' AS ')) === null || _v$sql === void 0 ? void 0 : _v$sql[1]) || '',
|
|
58
|
-
// name_zh: '',
|
|
59
62
|
database_type: (v === null || v === void 0 ? void 0 : v.database_type) || _enum.SQL_COLUMN_TYPE.FLOAT,
|
|
60
63
|
special_type: '',
|
|
61
64
|
select: true
|
|
@@ -70,7 +73,6 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
70
73
|
name_zh: v.name_zh || v.quotes,
|
|
71
74
|
id: v.id || v.fieldId,
|
|
72
75
|
realName: ((_v$sql2 = v.sql) === null || _v$sql2 === void 0 || (_v$sql2 = _v$sql2.split(' AS ')) === null || _v$sql2 === void 0 ? void 0 : _v$sql2[1]) || '',
|
|
73
|
-
// name_zh: '',
|
|
74
76
|
database_type: (v === null || v === void 0 ? void 0 : v.database_type) || _enum.SQL_COLUMN_TYPE.FLOAT,
|
|
75
77
|
special_type: '',
|
|
76
78
|
fieldUuid: (0, _helper2.uuidv4)('field'),
|
|
@@ -82,50 +84,53 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
82
84
|
data = [_data];
|
|
83
85
|
var joinData = prevList.filter(function (v) {
|
|
84
86
|
return v.type === _enum.TypeEnum.joinData;
|
|
85
|
-
})
|
|
86
|
-
// @ts-ignore
|
|
87
|
-
.filter(function (v) {
|
|
87
|
+
}).filter(function (v) {
|
|
88
88
|
return v && v.table2.name;
|
|
89
89
|
});
|
|
90
90
|
if (joinData.length) {
|
|
91
|
-
data = data.concat(
|
|
92
|
-
// @ts-ignore
|
|
93
|
-
joinData.map(function (v) {
|
|
91
|
+
data = data.concat(joinData.map(function (v) {
|
|
94
92
|
return {
|
|
93
|
+
name: v.table2.name,
|
|
94
|
+
id: v.table2.id,
|
|
95
|
+
name_zh: v.table2.name_zh || v.table2.name,
|
|
95
96
|
alias: v.table2.alias,
|
|
96
|
-
table: v.table2.name,
|
|
97
97
|
tableUuid: v.table2.tableUuid,
|
|
98
|
-
tableId: v.table2.id,
|
|
99
98
|
columns: v.columns
|
|
100
99
|
};
|
|
101
100
|
}));
|
|
102
101
|
}
|
|
103
102
|
} else {
|
|
104
|
-
// @ts-ignore
|
|
105
103
|
data = store.metaList[groupIndex].list.slice(0, index).map(function (v) {
|
|
106
104
|
if (v.type === _enum.TypeEnum.data) {
|
|
107
105
|
return {
|
|
106
|
+
name: v.table.name,
|
|
107
|
+
id: v.table.id,
|
|
108
|
+
name_zh: v.table.name_zh || v.table.name,
|
|
108
109
|
alias: v.table.alias,
|
|
109
|
-
table: v.table.name,
|
|
110
110
|
tableUuid: v.table.tableUuid,
|
|
111
|
-
tableId: v.table.id,
|
|
112
111
|
columns: v.columns
|
|
113
112
|
};
|
|
114
113
|
} else if (v.type === _enum.TypeEnum.joinData) {
|
|
115
114
|
return {
|
|
115
|
+
name: v.table2.name,
|
|
116
|
+
id: v.table2.id,
|
|
117
|
+
name_zh: v.table2.name_zh || v.table2.name,
|
|
116
118
|
alias: v.table2.alias,
|
|
117
|
-
table: v.table2.name,
|
|
118
119
|
tableUuid: v.table2.tableUuid,
|
|
119
|
-
tableId: v.table2.id,
|
|
120
120
|
columns: v.columns
|
|
121
121
|
};
|
|
122
122
|
} else {
|
|
123
123
|
return {
|
|
124
|
-
|
|
124
|
+
name: '',
|
|
125
|
+
id: '',
|
|
126
|
+
name_zh: '',
|
|
127
|
+
alias: '',
|
|
128
|
+
tableUuid: '',
|
|
129
|
+
columns: []
|
|
125
130
|
};
|
|
126
131
|
}
|
|
127
132
|
}).filter(function (v) {
|
|
128
|
-
return v.
|
|
133
|
+
return Boolean(v.name);
|
|
129
134
|
});
|
|
130
135
|
}
|
|
131
136
|
return data;
|
|
@@ -134,7 +139,7 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
134
139
|
var newMeta = store.metaList[groupIndex].list.slice();
|
|
135
140
|
var data = getColumns();
|
|
136
141
|
var value = group[i];
|
|
137
|
-
store.
|
|
142
|
+
store.setPopup2({
|
|
138
143
|
visible: true,
|
|
139
144
|
node: e.currentTarget,
|
|
140
145
|
content: (0, _jsxRuntime.jsx)(_dialog.SelectSummarize, {
|
|
@@ -142,23 +147,17 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
142
147
|
value: value,
|
|
143
148
|
ignoreGroupByType: store.ignoreGroupByType,
|
|
144
149
|
onChange: function onChange(data) {
|
|
145
|
-
|
|
146
|
-
newMeta[index].group.splice(i, 1, data);
|
|
147
|
-
//@ts-ignore
|
|
150
|
+
newMeta[index].group.splice(i, 1, normalizeGroupRecord(data));
|
|
148
151
|
newMeta[index].group = newMeta[index].group.map(function (v) {
|
|
149
152
|
var _summarizeToSql = (0, _helper.summarizeToSql)(newMeta[index].group, v),
|
|
150
153
|
sql = _summarizeToSql.sql,
|
|
151
154
|
fieldAlias = _summarizeToSql.fieldAlias;
|
|
152
155
|
return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, v), {}, {
|
|
153
156
|
name: v.name || v.quotes,
|
|
154
|
-
//@ts-ignore
|
|
155
157
|
sql: sql,
|
|
156
158
|
fieldAlias: fieldAlias
|
|
157
159
|
});
|
|
158
160
|
});
|
|
159
|
-
// if (value.quotes !== data.quotes) {
|
|
160
|
-
// newMeta = newMeta.filter((_: MetaListType, _i: number) => _i <= index);
|
|
161
|
-
// }
|
|
162
161
|
store.setMeta(newMeta, groupIndex, {
|
|
163
162
|
obj: newMeta[index].group,
|
|
164
163
|
type: _types.ChangeType.group
|
|
@@ -186,11 +185,9 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
186
185
|
quotes: '',
|
|
187
186
|
datasourceId: '',
|
|
188
187
|
datasourceName: '',
|
|
189
|
-
// column: '',
|
|
190
|
-
// column_id: '',
|
|
191
188
|
summarizeType: _types.MetaSummarize_Enum.GROUP
|
|
192
189
|
};
|
|
193
|
-
store.
|
|
190
|
+
store.setPopup2({
|
|
194
191
|
visible: true,
|
|
195
192
|
node: e.currentTarget,
|
|
196
193
|
content: (0, _jsxRuntime.jsx)(_dialog.SelectSummarize, {
|
|
@@ -198,9 +195,7 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
198
195
|
value: value,
|
|
199
196
|
ignoreGroupByType: store.ignoreGroupByType,
|
|
200
197
|
onChange: function onChange(data) {
|
|
201
|
-
|
|
202
|
-
newMeta[index].group.push(data);
|
|
203
|
-
// @ts-ignore
|
|
198
|
+
newMeta[index].group.push(normalizeGroupRecord(data));
|
|
204
199
|
newMeta[index].group = newMeta[index].group.map(function (v) {
|
|
205
200
|
var _summarizeToSql2 = (0, _helper.summarizeToSql)(newMeta[index].group, v),
|
|
206
201
|
sql = _summarizeToSql2.sql,
|
|
@@ -226,15 +221,13 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
226
221
|
e.stopPropagation();
|
|
227
222
|
closePopup();
|
|
228
223
|
var newMeta = store.metaList[groupIndex].list.slice();
|
|
229
|
-
// @ts-ignore
|
|
230
224
|
newMeta[index].group = group.filter(function (_, i) {
|
|
231
225
|
return i !== itemId;
|
|
232
226
|
});
|
|
233
|
-
// newMeta = newMeta.filter((_: MetaListType, _i: number) => _i <= index);
|
|
234
227
|
store.setMeta(newMeta, groupIndex);
|
|
235
228
|
}
|
|
236
229
|
function closePopup() {
|
|
237
|
-
store.
|
|
230
|
+
store.setPopup2({
|
|
238
231
|
visible: false
|
|
239
232
|
});
|
|
240
233
|
}
|
|
@@ -242,7 +235,6 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
242
235
|
var fieldAlias = val || '';
|
|
243
236
|
_pandora.Modal.confirm({
|
|
244
237
|
title: (0, _locale.__)('SqlQueryBuilder.alias'),
|
|
245
|
-
// 设置别名
|
|
246
238
|
content: (0, _jsxRuntime.jsx)(_pandora.Input, {
|
|
247
239
|
defaultValue: fieldAlias,
|
|
248
240
|
onChange: function onChange(val) {
|
|
@@ -251,7 +243,7 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
251
243
|
}),
|
|
252
244
|
icon: false,
|
|
253
245
|
onOk: function () {
|
|
254
|
-
var _onOk = (0, _asyncToGenerator2["default"])(
|
|
246
|
+
var _onOk = (0, _asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee() {
|
|
255
247
|
var newMeta;
|
|
256
248
|
return _regenerator["default"].wrap(function (_context) {
|
|
257
249
|
while (1) switch (_context.prev = _context.next) {
|
|
@@ -263,9 +255,9 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
263
255
|
_pandora.Toast.warning((0, _locale.__)('SqlQueryBuilder.aliasForRules'));
|
|
264
256
|
return _context.abrupt("return", false);
|
|
265
257
|
case 1:
|
|
266
|
-
newMeta = store.metaList[groupIndex].list.slice();
|
|
258
|
+
newMeta = store.metaList[groupIndex].list.slice();
|
|
267
259
|
newMeta[index].group[i].fieldAlias = fieldAlias;
|
|
268
|
-
newMeta[index].group[i].sql = newMeta[index].group[i].sql.split('AS ')[0] + "AS ".concat(fieldAlias);
|
|
260
|
+
newMeta[index].group[i].sql = newMeta[index].group[i].sql.split('AS ')[0] + "AS ".concat(fieldAlias);
|
|
269
261
|
newMeta = (0, _utils.changeFieldAlias)(newMeta, newMeta[index].group[i]);
|
|
270
262
|
store.setMeta(newMeta, groupIndex, {
|
|
271
263
|
obj: newMeta[index].group,
|
|
@@ -288,15 +280,11 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
288
280
|
var _getColumns = function _getColumns() {
|
|
289
281
|
return getColumns().map(function (v) {
|
|
290
282
|
return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, v), {}, {
|
|
291
|
-
|
|
292
|
-
id: v.tableId,
|
|
293
|
-
name_zh: '',
|
|
283
|
+
name_zh: v.name_zh || '',
|
|
294
284
|
tableUuid: v.tableUuid,
|
|
295
285
|
alias: v.alias,
|
|
296
|
-
// 线上的都为空,默认会标红。 等统一格式后可隐藏
|
|
297
286
|
datasourceName: '',
|
|
298
|
-
|
|
299
|
-
datasourceId: '' // 数据源id
|
|
287
|
+
datasourceId: ''
|
|
300
288
|
});
|
|
301
289
|
});
|
|
302
290
|
};
|
|
@@ -304,36 +292,105 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
304
292
|
var _v = (0, _cloneDeep["default"])(v);
|
|
305
293
|
return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _v), {}, {
|
|
306
294
|
fieldName: v.name,
|
|
307
|
-
// 字段名
|
|
308
295
|
fieldNameZh: v.name_zh,
|
|
309
|
-
// 字段中文名
|
|
310
296
|
fieldAlias: v.fieldAlias,
|
|
311
|
-
// 别名
|
|
312
297
|
fieldUuid: v.fieldUuid,
|
|
313
|
-
// uuid
|
|
314
298
|
fieldId: v.fieldId,
|
|
315
|
-
// 字段id
|
|
316
299
|
tableName: v.table,
|
|
317
|
-
// 表名
|
|
318
300
|
tableNameZh: '',
|
|
319
301
|
tableId: v.tableId,
|
|
320
|
-
// 表名
|
|
321
302
|
tableAlias: v.alias,
|
|
322
|
-
// 别名
|
|
323
303
|
tableUuid: v.tableUuid,
|
|
324
|
-
// 表唯一标识
|
|
325
|
-
// 线上的都为空,默认会标红。 等统一格式后可隐藏
|
|
326
304
|
datasourceName: '',
|
|
327
|
-
// 数据源名
|
|
328
305
|
datasourceId: '',
|
|
329
|
-
// 数据源id
|
|
330
306
|
type: _types.AtomsTypeEnum.FIELD
|
|
331
307
|
});
|
|
332
308
|
};
|
|
309
|
+
var isFormulaMetric = function isFormulaMetric(record) {
|
|
310
|
+
return !!record.condition && !summarizeWithoutArgument.includes(record.condition);
|
|
311
|
+
};
|
|
312
|
+
var _getFirstField = function getFirstField() {
|
|
313
|
+
var list = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
314
|
+
var _iterator = (0, _createForOfIteratorHelper2["default"])(list),
|
|
315
|
+
_step;
|
|
316
|
+
try {
|
|
317
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
318
|
+
var item = _step.value;
|
|
319
|
+
if (!item) continue;
|
|
320
|
+
if (item.type === _types.AtomsTypeEnum.FIELD) return item;
|
|
321
|
+
if (item.type === _types.AtomsTypeEnum.EXPRESSION) {
|
|
322
|
+
var found = _getFirstField([].concat((0, _toConsumableArray2["default"])(item.lhs || []), (0, _toConsumableArray2["default"])(item.rhs || [])));
|
|
323
|
+
if (found) return found;
|
|
324
|
+
}
|
|
325
|
+
if (item.type === _types.AtomsTypeEnum.FORMULA) {
|
|
326
|
+
var _found = (item.args || []).map(function (arg) {
|
|
327
|
+
return _getFirstField((arg === null || arg === void 0 ? void 0 : arg.list) || []);
|
|
328
|
+
}).find(Boolean);
|
|
329
|
+
if (_found) return _found;
|
|
330
|
+
}
|
|
331
|
+
if (item.type === _types.AtomsTypeEnum.AND_OR) {
|
|
332
|
+
var _found2 = _getFirstField(item.list || []);
|
|
333
|
+
if (_found2) return _found2;
|
|
334
|
+
}
|
|
335
|
+
if (item.type === _types.AtomsTypeEnum.CASE_WHEN) {
|
|
336
|
+
var _found3 = _getFirstField(item.caseValue || []) || (item.branches || []).map(function (branch) {
|
|
337
|
+
return _getFirstField([].concat((0, _toConsumableArray2["default"])(branch.when || []), (0, _toConsumableArray2["default"])(branch.then || [])));
|
|
338
|
+
}).find(Boolean) || _getFirstField(item.elseValue || []);
|
|
339
|
+
if (_found3) return _found3;
|
|
340
|
+
}
|
|
341
|
+
if (item.type === _types.AtomsTypeEnum.EXISTS || item.type === _types.AtomsTypeEnum.NOT_EXISTS) {
|
|
342
|
+
var _found4 = _getFirstField(item.notExists || []);
|
|
343
|
+
if (_found4) return _found4;
|
|
344
|
+
}
|
|
345
|
+
if (item.type === _types.AtomsTypeEnum.COLLECTION) {
|
|
346
|
+
var _found5 = _getFirstField(item.list || []);
|
|
347
|
+
if (_found5) return _found5;
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
} catch (err) {
|
|
351
|
+
_iterator.e(err);
|
|
352
|
+
} finally {
|
|
353
|
+
_iterator.f();
|
|
354
|
+
}
|
|
355
|
+
return null;
|
|
356
|
+
};
|
|
357
|
+
var getAtomsValue = function getAtomsValue(record) {
|
|
358
|
+
var _record$atoms;
|
|
359
|
+
if (!isFormulaMetric(record)) return [];
|
|
360
|
+
if ((_record$atoms = record.atoms) !== null && _record$atoms !== void 0 && _record$atoms.length) return record.atoms;
|
|
361
|
+
var field = getField(record);
|
|
362
|
+
return field.fieldName ? [field] : [];
|
|
363
|
+
};
|
|
364
|
+
var normalizeGroupRecord = function normalizeGroupRecord(record) {
|
|
365
|
+
var atoms = getAtomsValue(record);
|
|
366
|
+
var firstField = _getFirstField(atoms);
|
|
367
|
+
var nextRecord = (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, record), {}, {
|
|
368
|
+
atoms: atoms.length ? atoms : undefined
|
|
369
|
+
});
|
|
370
|
+
if (firstField) {
|
|
371
|
+
nextRecord.table = firstField.tableName || nextRecord.table;
|
|
372
|
+
nextRecord.tableId = firstField.tableId || nextRecord.tableId;
|
|
373
|
+
nextRecord.tableUuid = firstField.tableUuid || nextRecord.tableUuid;
|
|
374
|
+
nextRecord.alias = firstField.tableAlias || nextRecord.alias;
|
|
375
|
+
nextRecord.name = firstField.fieldName || nextRecord.name;
|
|
376
|
+
nextRecord.id = firstField.fieldId || nextRecord.id;
|
|
377
|
+
nextRecord.realName = firstField.fieldName || nextRecord.realName;
|
|
378
|
+
nextRecord.fieldUuid = firstField.fieldUuid || nextRecord.fieldUuid;
|
|
379
|
+
nextRecord.datasourceId = firstField.datasourceId || nextRecord.datasourceId;
|
|
380
|
+
nextRecord.datasourceName = firstField.datasourceName || nextRecord.datasourceName;
|
|
381
|
+
nextRecord.database_type = firstField.database_type || nextRecord.database_type;
|
|
382
|
+
if (!nextRecord.quotes || nextRecord.quotes === nextRecord.condition) {
|
|
383
|
+
nextRecord.quotes = "".concat(nextRecord.condition, " ").concat(firstField.fieldAlias || firstField.fieldName || '').trim();
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
return nextRecord;
|
|
387
|
+
};
|
|
333
388
|
return (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
334
389
|
children: [meta.group.map(function (v, i) {
|
|
390
|
+
var atomsValue = getAtomsValue(v);
|
|
391
|
+
var showAtoms = isFormulaMetric(v);
|
|
335
392
|
return (0, _jsxRuntime.jsx)(_itemName["default"], {
|
|
336
|
-
isError: (0, _utils.isError)(getField(v), _getColumns()),
|
|
393
|
+
isError: (0, _utils.isError)(showAtoms ? atomsValue : getField(v), _getColumns()),
|
|
337
394
|
children: (0, _jsxRuntime.jsxs)("div", {
|
|
338
395
|
className: "Sqb-TableName green-name",
|
|
339
396
|
onClick: function onClick(e) {
|
|
@@ -19,6 +19,7 @@ var _types = require("../../store/types");
|
|
|
19
19
|
var _pandora = require("@gingkoo/pandora");
|
|
20
20
|
var _index = _interopRequireDefault(require("../../index"));
|
|
21
21
|
var _helper = require("../../utils/helper");
|
|
22
|
+
var _helperDom = require("../../utils/helper-dom");
|
|
22
23
|
var _utils = require("../../utils");
|
|
23
24
|
var _pandoraIcons = require("@gingkoo/pandora-icons");
|
|
24
25
|
var _cloneDeep = _interopRequireDefault(require("lodash/cloneDeep"));
|
|
@@ -42,8 +43,8 @@ var TableData = function TableData(props) {
|
|
|
42
43
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
43
44
|
isDel = _useState2[0],
|
|
44
45
|
setIsDel = _useState2[1];
|
|
45
|
-
var tableIsDel =
|
|
46
|
-
var _ref = (0, _asyncToGenerator2["default"])(
|
|
46
|
+
var tableIsDel = function () {
|
|
47
|
+
var _ref = (0, _asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee() {
|
|
47
48
|
var _meta$table, _meta$table2;
|
|
48
49
|
var tableName, tables, names;
|
|
49
50
|
return _regenerator["default"].wrap(function (_context) {
|
|
@@ -103,14 +104,12 @@ var TableData = function TableData(props) {
|
|
|
103
104
|
});
|
|
104
105
|
store.fetchColumns(data, data.datasourceId, [], function (columns) {
|
|
105
106
|
newMetaList.columns = columns;
|
|
106
|
-
// ① 主表动了 其他都得重新选
|
|
107
107
|
var newMetas = store.metaList[groupIndex].list.slice();
|
|
108
108
|
newMetas[0] = newMetaList;
|
|
109
109
|
store.setMeta(newMetas, groupIndex, {
|
|
110
110
|
obj: data,
|
|
111
111
|
type: _types.ChangeType.datasource
|
|
112
112
|
});
|
|
113
|
-
// store.setMeta([newMetaList], groupIndex);
|
|
114
113
|
});
|
|
115
114
|
}
|
|
116
115
|
store.setPopup({
|
|
@@ -130,9 +129,7 @@ var TableData = function TableData(props) {
|
|
|
130
129
|
groupIndex: groupIndex,
|
|
131
130
|
data: columns,
|
|
132
131
|
onChange: function onChange(data, newMetaList) {
|
|
133
|
-
// 当前值已改变。必须以传入的数组为准,改变别名
|
|
134
132
|
var _newMetaList = newMetaList || store.metaList[groupIndex].list.slice();
|
|
135
|
-
// @ts-ignore
|
|
136
133
|
_newMetaList[0].columns = data;
|
|
137
134
|
if (!newMetaList) {
|
|
138
135
|
store.setMeta(_newMetaList, groupIndex, {
|
|
@@ -148,7 +145,6 @@ var TableData = function TableData(props) {
|
|
|
148
145
|
var alias = val || '';
|
|
149
146
|
_pandora.Modal.confirm({
|
|
150
147
|
title: (0, _locale.__)('SqlQueryBuilder.alias'),
|
|
151
|
-
// 设置别名
|
|
152
148
|
content: (0, _jsxRuntime.jsx)(_pandora.Input, {
|
|
153
149
|
defaultValue: alias,
|
|
154
150
|
onChange: function onChange(val) {
|
|
@@ -156,7 +152,7 @@ var TableData = function TableData(props) {
|
|
|
156
152
|
}
|
|
157
153
|
}),
|
|
158
154
|
onOk: function () {
|
|
159
|
-
var _onOk = (0, _asyncToGenerator2["default"])(
|
|
155
|
+
var _onOk = (0, _asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee2() {
|
|
160
156
|
var newMetaList;
|
|
161
157
|
return _regenerator["default"].wrap(function (_context2) {
|
|
162
158
|
while (1) switch (_context2.prev = _context2.next) {
|
|
@@ -168,7 +164,7 @@ var TableData = function TableData(props) {
|
|
|
168
164
|
_pandora.Toast.warning((0, _locale.__)('SqlQueryBuilder.aliasForRules'));
|
|
169
165
|
return _context2.abrupt("return", false);
|
|
170
166
|
case 1:
|
|
171
|
-
newMetaList = store.metaList[groupIndex].list.slice();
|
|
167
|
+
newMetaList = store.metaList[groupIndex].list.slice();
|
|
172
168
|
newMetaList[0].table.alias = alias;
|
|
173
169
|
newMetaList = (0, _utils.changeTableAlias)(newMetaList, newMetaList[0].table);
|
|
174
170
|
store.setMeta(newMetaList, groupIndex, {
|
|
@@ -189,7 +185,6 @@ var TableData = function TableData(props) {
|
|
|
189
185
|
onCancel: function onCancel() {}
|
|
190
186
|
});
|
|
191
187
|
};
|
|
192
|
-
// 子查询弹窗
|
|
193
188
|
var showSubQuery = function showSubQuery() {
|
|
194
189
|
var val = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
195
190
|
var _store$preProps2 = store.preProps,
|
|
@@ -198,23 +193,24 @@ var TableData = function TableData(props) {
|
|
|
198
193
|
isExit = _store$preProps2.isExit,
|
|
199
194
|
toolbar = _store$preProps2.toolbar,
|
|
200
195
|
other = (0, _objectWithoutProperties2["default"])(_store$preProps2, _excluded);
|
|
196
|
+
var childModalZIndex = (0, _helperDom.getTopLayerZIndex)() + 1;
|
|
201
197
|
var newMetaList = store.metaList[groupIndex].list.slice()[0];
|
|
202
198
|
var newMeta = store.metaList[groupIndex].list.slice();
|
|
203
199
|
var oldList = (0, _cloneDeep["default"])(newMetaList.subquery);
|
|
204
200
|
var _toolbar = subToolbar || toolbar;
|
|
205
|
-
// _toolbar = _toolbar.filter((v: string) => v !== 'group'); // 子查询不需要分组
|
|
206
201
|
var o = _pandora.Modal2.openModal({
|
|
202
|
+
zIndex: childModalZIndex,
|
|
207
203
|
title: (0, _locale.__)('SqlQueryBuilder.subquery'),
|
|
208
204
|
transparentMask: true,
|
|
209
205
|
content: (0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
|
|
210
206
|
children: (0, _jsxRuntime.jsx)(_index["default"], (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, other), {}, {
|
|
207
|
+
popupZIndex: childModalZIndex + 1,
|
|
211
208
|
showSubquery: store._showSubquery,
|
|
212
209
|
toolbar: _toolbar,
|
|
213
210
|
btnText: (0, _locale.__)('SqlQueryBuilder.confirm'),
|
|
214
211
|
value: (0, _cloneDeep["default"])(val),
|
|
215
212
|
onOk: function onOk(newList) {
|
|
216
213
|
try {
|
|
217
|
-
// 子查询未改变不做操作
|
|
218
214
|
if ((0, _isEqual["default"])(newList, oldList)) {
|
|
219
215
|
o.close();
|
|
220
216
|
return;
|
|
@@ -232,18 +228,14 @@ var TableData = function TableData(props) {
|
|
|
232
228
|
select: false
|
|
233
229
|
});
|
|
234
230
|
});
|
|
235
|
-
// newMetaList.columns = newColumns;
|
|
236
231
|
newMetaList.columns = newColumns.map(function (newCol) {
|
|
237
|
-
// 查找旧列中是否有相同 name 的列
|
|
238
232
|
var existingCol = newMetaList.columns.find(function (oldCol) {
|
|
239
233
|
return oldCol.name === newCol.name;
|
|
240
234
|
});
|
|
241
235
|
var _column = existingCol ? existingCol : newCol;
|
|
242
236
|
_column.select = store.isSelectFields || _column.select;
|
|
243
|
-
// 如果存在,返回旧列;否则返回新列
|
|
244
237
|
return _column;
|
|
245
238
|
});
|
|
246
|
-
// (newMeta[index] as MetaJoin).expressions = [];
|
|
247
239
|
var newMetas = store.metaList[groupIndex].list.slice();
|
|
248
240
|
newMetas[0] = newMetaList;
|
|
249
241
|
store.setMeta(newMetas, groupIndex, {
|
|
@@ -252,9 +244,7 @@ var TableData = function TableData(props) {
|
|
|
252
244
|
});
|
|
253
245
|
tableIsDel();
|
|
254
246
|
o.close();
|
|
255
|
-
} catch (e) {
|
|
256
|
-
console.warn(e);
|
|
257
|
-
} finally {
|
|
247
|
+
} catch (e) {} finally {
|
|
258
248
|
o.close();
|
|
259
249
|
}
|
|
260
250
|
}
|
|
@@ -263,25 +253,18 @@ var TableData = function TableData(props) {
|
|
|
263
253
|
onClose: function onClose() {}
|
|
264
254
|
});
|
|
265
255
|
};
|
|
266
|
-
// 切换子查询
|
|
267
256
|
var switchSubQuery = function switchSubQuery() {
|
|
268
257
|
var newMetaList = store.metaList[groupIndex].list.slice();
|
|
269
258
|
newMetaList[0].isSubquery = !newMetaList[0].isSubquery;
|
|
270
|
-
//重置表数据
|
|
271
259
|
newMetaList[0].subquery = [];
|
|
272
260
|
newMetaList[0].table = {
|
|
273
261
|
name: '',
|
|
274
|
-
// 表名
|
|
275
262
|
name_zh: '',
|
|
276
|
-
// 表名
|
|
277
263
|
tableUuid: '',
|
|
278
264
|
id: '',
|
|
279
|
-
// 表名
|
|
280
265
|
alias: '',
|
|
281
|
-
// 表别名
|
|
282
266
|
datasourceName: '',
|
|
283
|
-
|
|
284
|
-
datasourceId: '' // 数据源id
|
|
267
|
+
datasourceId: ''
|
|
285
268
|
};
|
|
286
269
|
store.setMeta(newMetaList, groupIndex);
|
|
287
270
|
};
|
|
@@ -392,43 +375,7 @@ var TableData = function TableData(props) {
|
|
|
392
375
|
})
|
|
393
376
|
}) : null;
|
|
394
377
|
}()
|
|
395
|
-
})
|
|
396
|
-
// <Tooltip
|
|
397
|
-
// title={__(
|
|
398
|
-
// tableIsError()
|
|
399
|
-
// ? isDel
|
|
400
|
-
// ? 'metabase.verify'
|
|
401
|
-
// : 'SqlQueryBuilder.repeatAlias'
|
|
402
|
-
// : 'SqlQueryBuilder.alias',
|
|
403
|
-
// )}
|
|
404
|
-
// >
|
|
405
|
-
// <Button
|
|
406
|
-
// danger={tableIsError()}
|
|
407
|
-
// className={cx(':Sqb-TableName-as', {
|
|
408
|
-
// isError: tableIsError(),
|
|
409
|
-
// })}
|
|
410
|
-
// shape='circle'
|
|
411
|
-
// style={
|
|
412
|
-
// isDel
|
|
413
|
-
// ? {
|
|
414
|
-
// fontSize: 18,
|
|
415
|
-
// backgroundColor: '#fff',
|
|
416
|
-
// width: 'auto',
|
|
417
|
-
// height: 'auto',
|
|
418
|
-
// }
|
|
419
|
-
// : {}
|
|
420
|
-
// }
|
|
421
|
-
// iconOnly
|
|
422
|
-
// primary={!isDel}
|
|
423
|
-
// icon={isDel ? <ExclamationCircleFill /> : 'As'}
|
|
424
|
-
// size='small'
|
|
425
|
-
// onClick={(e) => {
|
|
426
|
-
// e.stopPropagation();
|
|
427
|
-
// onChangeTableAlias(meta.table?.alias || '');
|
|
428
|
-
// }}
|
|
429
|
-
// ></Button>
|
|
430
|
-
// </Tooltip>
|
|
431
|
-
, selected ? "".concat(meta.table.datasourceName, ".").concat(meta.table.name, " ").concat((_meta$table8 = meta.table) !== null && _meta$table8 !== void 0 && _meta$table8.alias && store.tableEnableAlias ? "as ".concat((_meta$table9 = meta.table) === null || _meta$table9 === void 0 ? void 0 : _meta$table9.alias) : '') : (0, _locale.__)('SqlQueryBuilder.pickTable')]
|
|
378
|
+
}), selected ? "".concat(meta.table.datasourceName, ".").concat(meta.table.name, " ").concat((_meta$table8 = meta.table) !== null && _meta$table8 !== void 0 && _meta$table8.alias && store.tableEnableAlias ? "as ".concat((_meta$table9 = meta.table) === null || _meta$table9 === void 0 ? void 0 : _meta$table9.alias) : '') : (0, _locale.__)('SqlQueryBuilder.pickTable')]
|
|
432
379
|
}), store.showSubquery && (0, _jsxRuntime.jsx)(_pandora.Tooltip, {
|
|
433
380
|
title: (0, _locale.__)('SqlQueryBuilder.switchSubQuery'),
|
|
434
381
|
children: (0, _jsxRuntime.jsx)(_pandora.Button, {
|