@gingkoo/pandora-metabase 1.0.38 → 1.0.40

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.
@@ -73,7 +73,9 @@ var CaseEditor = function CaseEditor(props) {
73
73
  };
74
74
  // 确定
75
75
  var _onOk = function _onOk() {
76
- typeof onOk === 'function' && (onOk === null || onOk === void 0 ? void 0 : onOk(fun));
76
+ typeof onOk === 'function' && (onOk === null || onOk === void 0 ? void 0 : onOk((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, fun), {}, {
77
+ quotes: getQuotes(fun.args)
78
+ })));
77
79
  };
78
80
  // 选择公式名
79
81
  var handleFunName = function handleFunName(name) {
@@ -85,6 +87,21 @@ var CaseEditor = function CaseEditor(props) {
85
87
  name: name
86
88
  }));
87
89
  };
90
+ var getQuotes = function getQuotes(_args) {
91
+ var quotes = _args.map(function (v) {
92
+ var quotes = v.list.map(function (vv, i) {
93
+ if (vv !== null && vv !== void 0 && vv.quotes) {
94
+ return vv === null || vv === void 0 ? void 0 : vv.quotes;
95
+ } else if (vv !== null && vv !== void 0 && vv.fieldName) {
96
+ return vv === null || vv === void 0 ? void 0 : vv.fieldName;
97
+ } else {
98
+ return vv.val;
99
+ }
100
+ }).join(' ');
101
+ return quotes;
102
+ }).join(' , ');
103
+ return fun.name + ' ( ' + quotes + ' ) ';
104
+ };
88
105
  var addParams = function addParams(index) {
89
106
  var _args = (0, _cloneDeep["default"])(fun.args);
90
107
  var tem = (0, _utils2.getTemArgs)(formulaList === null || formulaList === void 0 ? void 0 : formulaList[fun.name].args)[index + 1] || {
@@ -93,6 +110,7 @@ var CaseEditor = function CaseEditor(props) {
93
110
  };
94
111
  _args.splice(index + 1, 0, tem);
95
112
  setFun((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, fun), {}, {
113
+ quotes: getQuotes(_args),
96
114
  args: _args
97
115
  }));
98
116
  };
@@ -100,6 +118,7 @@ var CaseEditor = function CaseEditor(props) {
100
118
  var _args = (0, _cloneDeep["default"])(fun.args);
101
119
  _args.splice(index, 1);
102
120
  setFun((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, fun), {}, {
121
+ quotes: getQuotes(_args),
103
122
  args: _args
104
123
  }));
105
124
  };
@@ -138,11 +157,19 @@ var CaseEditor = function CaseEditor(props) {
138
157
  onChange: function onChange(val) {
139
158
  handleFunName(val);
140
159
  },
141
- children: (_store$formulaTemplat = store.formulaTemplates) === null || _store$formulaTemplat === void 0 ? void 0 : _store$formulaTemplat.map(function (option, index) {
142
- return (0, _jsxRuntime.jsx)(_pandora.Select.Option, {
143
- value: option.name,
144
- children: option.name
160
+ children: (_store$formulaTemplat = store.formulaTemplates) === null || _store$formulaTemplat === void 0 ? void 0 : _store$formulaTemplat.map(function (options, index) {
161
+ return (0, _jsxRuntime.jsx)(_pandora.Select.OptGroup, {
162
+ label: options.name,
163
+ children: Array.from(options.children || []).map(function (option, ind) {
164
+ return (0, _jsxRuntime.jsx)(_pandora.Select.Option, {
165
+ value: option.name,
166
+ children: option.name
167
+ }, String(option.name + ind));
168
+ })
145
169
  }, index);
170
+ // <Select.Option key={index} value={option.name}>
171
+ // {option.name}
172
+ // </Select.Option>
146
173
  })
147
174
  })
148
175
  }), fun.name && (0, _jsxRuntime.jsxs)("div", {
@@ -179,12 +206,15 @@ var CaseEditor = function CaseEditor(props) {
179
206
  onChange: function onChange(data, _quotes) {
180
207
  var _args = (0, _cloneDeep["default"])(fun.args);
181
208
  _args[i].list = data;
182
- _args[i].quotes = _quotes || '';
183
- var quotes = _args.map(function (v) {
184
- return v.quotes;
185
- }).join(' , ');
209
+ // (_args[i] as AtomsCollection).quotes = _quotes || '';
210
+ // const quotes = (_args as AtomsCollection[])
211
+ // .map((v) => {
212
+ // return v.quotes;
213
+ // })
214
+ // .join(' , ');
186
215
  setFun((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, fun), {}, {
187
- quotes: fun.name + ' ( ' + quotes + ' ) ',
216
+ quotes: getQuotes(_args),
217
+ //fun.name + ' ( ' + quotes + ' ) ',
188
218
  args: _args
189
219
  }));
190
220
  }
@@ -11,9 +11,11 @@ var _utils = require("../formula-list/utils");
11
11
  var getObjTem = exports.getObjTem = function getObjTem(arr) {
12
12
  var obj = {};
13
13
  arr === null || arr === void 0 || arr.map(function (v) {
14
- if (v.name) {
15
- obj[v.name] = v;
16
- }
14
+ v.children.map(function (vv) {
15
+ if (vv.name) {
16
+ obj[vv.name] = vv;
17
+ }
18
+ });
17
19
  });
18
20
  return obj;
19
21
  };
@@ -285,7 +285,7 @@ var _isOk = exports.isOk = function isOk(rhsVal) {
285
285
  }
286
286
  return _isOk(v.args || []);
287
287
  } else {
288
- return Boolean(v.val); // 兜底,确保 val 存在
288
+ return Boolean(v.val) || v.val === 0; // 兜底,确保 val 存在
289
289
  }
290
290
  });
291
291
  };
@@ -202,6 +202,126 @@ var JoinData = function JoinData(props) {
202
202
  });
203
203
  return data;
204
204
  };
205
+ var getCollectionTableColumns = function getCollectionTableColumns() {
206
+ var data = [];
207
+ var _getHelper3 = (0, _utils.getHelper)(store.metaList[groupIndex].list, meta),
208
+ ExistAboveGroupBy = _getHelper3.ExistAboveGroupBy,
209
+ prevList = _getHelper3.prevList,
210
+ prevGroupBy = _getHelper3.prevGroupBy;
211
+ // 获取左侧表
212
+ if (ExistAboveGroupBy) {
213
+ var _prevGroupBy$group2, _prevGroupBy$by2;
214
+ var _data = {
215
+ alias: prevGroupBy.alias,
216
+ id: prevGroupBy.alias,
217
+ tableUuid: prevGroupBy.tableUuid || (0, _helper.uuidv4)('table'),
218
+ name: prevGroupBy.alias,
219
+ name_zh: prevGroupBy.alias,
220
+ datasourceId: '',
221
+ datasourceName: '',
222
+ columns: []
223
+ };
224
+ if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$group2 = prevGroupBy.group) !== null && _prevGroupBy$group2 !== void 0 && _prevGroupBy$group2.length) {
225
+ _data.columns = _data.columns.concat(prevGroupBy.group.map(function (v) {
226
+ return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, v), {}, {
227
+ name: v.name || v.quotes,
228
+ name_zh: v.name_zh || v.quotes,
229
+ id: v.id || v.fieldId,
230
+ database_type: (v === null || v === void 0 ? void 0 : v.database_type) || _enum.SQL_COLUMN_TYPE.FLOAT,
231
+ special_type: '',
232
+ sql: v.sql,
233
+ select: true
234
+ });
235
+ }));
236
+ }
237
+ if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$by2 = prevGroupBy.by) !== null && _prevGroupBy$by2 !== void 0 && _prevGroupBy$by2.length) {
238
+ _data.columns = _data.columns.concat(prevGroupBy.by.map(function (v) {
239
+ return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, v), {}, {
240
+ name: v.name || v.quotes,
241
+ name_zh: v.name_zh || v.quotes,
242
+ id: v.id || v.fieldId,
243
+ database_type: (v === null || v === void 0 ? void 0 : v.database_type) || _enum.SQL_COLUMN_TYPE.FLOAT,
244
+ special_type: '',
245
+ sql: v.sql,
246
+ select: true
247
+ });
248
+ }));
249
+ }
250
+ data = [_data];
251
+ var joinData = prevList.filter(function (v) {
252
+ return v.type === _enum.TypeEnum.joinData;
253
+ }).filter(function (v) {
254
+ return v && v.table2.name;
255
+ });
256
+ if (joinData !== null && joinData !== void 0 && joinData.length) {
257
+ data = data.concat(joinData.map(function (v) {
258
+ return {
259
+ alias: v.table2.alias,
260
+ name: v.table2.name,
261
+ name_zh: v.table2.name_zh,
262
+ id: v.table2.id,
263
+ tableUuid: v.table2.tableUuid || (0, _helper.uuidv4)('table'),
264
+ datasourceId: v.table2.datasourceId,
265
+ datasourceName: v.table2.datasourceName,
266
+ columns: v.columns || []
267
+ };
268
+ }));
269
+ }
270
+ } else {
271
+ data = store.metaList[groupIndex].list.slice(0, index).reduce(function (mo, v) {
272
+ if (v.type === _enum.TypeEnum.data) {
273
+ mo.push((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, v.table), {}, {
274
+ alias: v.table.alias,
275
+ name: v.table.name,
276
+ name_zh: v.table.name_zh,
277
+ id: v.table.id,
278
+ tableUuid: v.table.tableUuid || (0, _helper.uuidv4)('table'),
279
+ columns: v.columns,
280
+ datasourceId: v.table.datasourceId,
281
+ datasourceName: v.table.datasourceName
282
+ }));
283
+ } else if (v.type === _enum.TypeEnum.joinData) {
284
+ mo.push({
285
+ alias: v.table2.alias,
286
+ name: v.table2.name,
287
+ name_zh: v.table2.name_zh,
288
+ id: v.table2.id,
289
+ tableUuid: v.table2.tableUuid || (0, _helper.uuidv4)('table'),
290
+ columns: v.columns,
291
+ datasourceId: v.table2.datasourceId,
292
+ datasourceName: v.table2.datasourceName
293
+ });
294
+ }
295
+ return mo;
296
+ }, []);
297
+ // .filter((v: DataType) => v.tableUuid === meta.table1.tableUuid);
298
+ }
299
+ // 获取右侧表
300
+ // 添加table2
301
+ data = data.concat([{
302
+ alias: meta.table2.alias,
303
+ name: meta.table2.name,
304
+ name_zh: meta.table2.name_zh,
305
+ id: meta.table2.id,
306
+ tableUuid: meta.table2.tableUuid || (0, _helper.uuidv4)('table'),
307
+ datasourceId: meta.table2.datasourceId,
308
+ datasourceName: meta.table2.datasourceName,
309
+ columns: meta.columns
310
+ }]);
311
+ // 过滤为table1选中的表
312
+ // let newMeta = store.metaList[groupIndex].list.slice();
313
+ // data = data.filter((v) => {
314
+ // return (
315
+ // ((newMeta[index] as MetaJoin)[FlagLocation.TABLE_1] as MetaJoin_TalbeType).tableUuid ==
316
+ // v.tableUuid ||
317
+ // ((newMeta[index] as MetaJoin)[FlagLocation.TABLE_1] as MetaJoin_TalbeType).name ==
318
+ // SummarizeAlias ||
319
+ // ((newMeta[index] as MetaJoin)[FlagLocation.TABLE_2] as MetaJoin_TalbeType).tableUuid ==
320
+ // v.tableUuid
321
+ // );
322
+ // });
323
+ return data;
324
+ };
205
325
  // 字段列表
206
326
  function selectColumns(e) {
207
327
  var columns = meta.columns;
@@ -226,12 +346,12 @@ var JoinData = function JoinData(props) {
226
346
  var index = (0, _utils.findIndex)(store.metaList[groupIndex].list, meta);
227
347
  var table_type = FlagLocation.TABLE_1;
228
348
  var data = [];
229
- var _getHelper3 = (0, _utils.getHelper)(store.metaList[groupIndex].list, meta),
230
- ExistAboveGroupBy = _getHelper3.ExistAboveGroupBy,
231
- prevList = _getHelper3.prevList,
232
- prevGroupBy = _getHelper3.prevGroupBy;
349
+ var _getHelper4 = (0, _utils.getHelper)(store.metaList[groupIndex].list, meta),
350
+ ExistAboveGroupBy = _getHelper4.ExistAboveGroupBy,
351
+ prevList = _getHelper4.prevList,
352
+ prevGroupBy = _getHelper4.prevGroupBy;
233
353
  if (ExistAboveGroupBy) {
234
- var _prevGroupBy$group2, _prevGroupBy$by2;
354
+ var _prevGroupBy$group3, _prevGroupBy$by3;
235
355
  var _data = {
236
356
  alias: prevGroupBy.alias,
237
357
  id: prevGroupBy.alias,
@@ -242,7 +362,7 @@ var JoinData = function JoinData(props) {
242
362
  datasourceName: ''
243
363
  // columns: [],
244
364
  };
245
- if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$group2 = prevGroupBy.group) !== null && _prevGroupBy$group2 !== void 0 && _prevGroupBy$group2.length) {
365
+ if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$group3 = prevGroupBy.group) !== null && _prevGroupBy$group3 !== void 0 && _prevGroupBy$group3.length) {
246
366
  // _data.columns = _data.columns.concat(
247
367
  // prevGroupBy.group.map((v: MetaSummarize_Group) => {
248
368
  // return {
@@ -258,7 +378,7 @@ var JoinData = function JoinData(props) {
258
378
  // }),
259
379
  // );
260
380
  }
261
- if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$by2 = prevGroupBy.by) !== null && _prevGroupBy$by2 !== void 0 && _prevGroupBy$by2.length) {
381
+ if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$by3 = prevGroupBy.by) !== null && _prevGroupBy$by3 !== void 0 && _prevGroupBy$by3.length) {
262
382
  // _data.columns = _data.columns.concat(
263
383
  // prevGroupBy.by.map((v: MetaSummarize_By) => {
264
384
  // return {
@@ -501,13 +621,13 @@ var JoinData = function JoinData(props) {
501
621
  }
502
622
  function getColumns(_position) {
503
623
  var data = [];
504
- var _getHelper4 = (0, _utils.getHelper)(store.metaList[groupIndex].list, meta),
505
- ExistAboveGroupBy = _getHelper4.ExistAboveGroupBy,
506
- prevList = _getHelper4.prevList,
507
- prevGroupBy = _getHelper4.prevGroupBy;
624
+ var _getHelper5 = (0, _utils.getHelper)(store.metaList[groupIndex].list, meta),
625
+ ExistAboveGroupBy = _getHelper5.ExistAboveGroupBy,
626
+ prevList = _getHelper5.prevList,
627
+ prevGroupBy = _getHelper5.prevGroupBy;
508
628
  if (_position === ExpressionsEnum.LEFT) {
509
629
  if (ExistAboveGroupBy) {
510
- var _prevGroupBy$group3, _prevGroupBy$by3;
630
+ var _prevGroupBy$group4, _prevGroupBy$by4;
511
631
  var _data = {
512
632
  name: prevGroupBy.alias,
513
633
  name_zh: prevGroupBy.alias,
@@ -518,7 +638,7 @@ var JoinData = function JoinData(props) {
518
638
  datasourceName: '',
519
639
  columns: []
520
640
  };
521
- if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$group3 = prevGroupBy.group) !== null && _prevGroupBy$group3 !== void 0 && _prevGroupBy$group3.length) {
641
+ if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$group4 = prevGroupBy.group) !== null && _prevGroupBy$group4 !== void 0 && _prevGroupBy$group4.length) {
522
642
  _data.columns = _data.columns.concat(prevGroupBy.group.map(function (v) {
523
643
  return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, v), {}, {
524
644
  name: v.name || v.quotes,
@@ -531,7 +651,7 @@ var JoinData = function JoinData(props) {
531
651
  });
532
652
  }));
533
653
  }
534
- if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$by3 = prevGroupBy.by) !== null && _prevGroupBy$by3 !== void 0 && _prevGroupBy$by3.length) {
654
+ if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$by4 = prevGroupBy.by) !== null && _prevGroupBy$by4 !== void 0 && _prevGroupBy$by4.length) {
535
655
  _data.columns = _data.columns.concat(prevGroupBy.by.map(function (v) {
536
656
  return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, v), {}, {
537
657
  name: v.name || v.quotes,
@@ -621,13 +741,13 @@ var JoinData = function JoinData(props) {
621
741
  var _ind2 = Number(node.getAttribute('v-index2'));
622
742
  var index = (0, _utils.findIndex)(store.metaList[groupIndex].list, meta);
623
743
  var data = [];
624
- var _getHelper5 = (0, _utils.getHelper)(store.metaList[groupIndex].list, meta),
625
- ExistAboveGroupBy = _getHelper5.ExistAboveGroupBy,
626
- prevList = _getHelper5.prevList,
627
- prevGroupBy = _getHelper5.prevGroupBy;
744
+ var _getHelper6 = (0, _utils.getHelper)(store.metaList[groupIndex].list, meta),
745
+ ExistAboveGroupBy = _getHelper6.ExistAboveGroupBy,
746
+ prevList = _getHelper6.prevList,
747
+ prevGroupBy = _getHelper6.prevGroupBy;
628
748
  if (_position === ExpressionsEnum.LEFT) {
629
749
  if (ExistAboveGroupBy) {
630
- var _prevGroupBy$group4, _prevGroupBy$by4;
750
+ var _prevGroupBy$group5, _prevGroupBy$by5;
631
751
  var _data = {
632
752
  name: prevGroupBy.alias,
633
753
  name_zh: prevGroupBy.alias,
@@ -638,7 +758,7 @@ var JoinData = function JoinData(props) {
638
758
  datasourceName: '',
639
759
  columns: []
640
760
  };
641
- if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$group4 = prevGroupBy.group) !== null && _prevGroupBy$group4 !== void 0 && _prevGroupBy$group4.length) {
761
+ if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$group5 = prevGroupBy.group) !== null && _prevGroupBy$group5 !== void 0 && _prevGroupBy$group5.length) {
642
762
  _data.columns = _data.columns.concat(prevGroupBy.group.map(function (v) {
643
763
  return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, v), {}, {
644
764
  name: v.name || v.quotes,
@@ -651,7 +771,7 @@ var JoinData = function JoinData(props) {
651
771
  });
652
772
  }));
653
773
  }
654
- if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$by4 = prevGroupBy.by) !== null && _prevGroupBy$by4 !== void 0 && _prevGroupBy$by4.length) {
774
+ if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$by5 = prevGroupBy.by) !== null && _prevGroupBy$by5 !== void 0 && _prevGroupBy$by5.length) {
655
775
  _data.columns = _data.columns.concat(prevGroupBy.by.map(function (v) {
656
776
  return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, v), {}, {
657
777
  name: v.name || v.quotes,
@@ -1537,7 +1657,7 @@ var JoinData = function JoinData(props) {
1537
1657
  // showPreview={false}
1538
1658
  // check={formulaList?.[fun.name]?.args?.[i]?.check || ''}
1539
1659
  value: v.list,
1540
- data: getTableColumns(),
1660
+ data: getCollectionTableColumns(),
1541
1661
  // ref={ref}
1542
1662
  onChange: function onChange(data, _quotes) {
1543
1663
  var newMeta = store.metaList[groupIndex].list.slice();
@@ -331,6 +331,10 @@ export interface FormulaTemplatesItem {
331
331
  description?: string;
332
332
  example?: string;
333
333
  }
334
+ export interface FormulaTemplates {
335
+ name: string;
336
+ children: FormulaTemplatesItem[];
337
+ }
334
338
  export {};
335
339
  /**
336
340
  let a = {
@@ -67,7 +67,9 @@ var CaseEditor = function CaseEditor(props) {
67
67
  };
68
68
  // 确定
69
69
  var _onOk = function _onOk() {
70
- typeof onOk === 'function' && (onOk === null || onOk === void 0 ? void 0 : onOk(fun));
70
+ typeof onOk === 'function' && (onOk === null || onOk === void 0 ? void 0 : onOk(_objectSpread(_objectSpread({}, fun), {}, {
71
+ quotes: getQuotes(fun.args)
72
+ })));
71
73
  };
72
74
  // 选择公式名
73
75
  var handleFunName = function handleFunName(name) {
@@ -79,6 +81,21 @@ var CaseEditor = function CaseEditor(props) {
79
81
  name: name
80
82
  }));
81
83
  };
84
+ var getQuotes = function getQuotes(_args) {
85
+ var quotes = _args.map(function (v) {
86
+ var quotes = v.list.map(function (vv, i) {
87
+ if (vv !== null && vv !== void 0 && vv.quotes) {
88
+ return vv === null || vv === void 0 ? void 0 : vv.quotes;
89
+ } else if (vv !== null && vv !== void 0 && vv.fieldName) {
90
+ return vv === null || vv === void 0 ? void 0 : vv.fieldName;
91
+ } else {
92
+ return vv.val;
93
+ }
94
+ }).join(' ');
95
+ return quotes;
96
+ }).join(' , ');
97
+ return fun.name + ' ( ' + quotes + ' ) ';
98
+ };
82
99
  var addParams = function addParams(index) {
83
100
  var _args = cloneDeep(fun.args);
84
101
  var tem = getTemArgs(formulaList === null || formulaList === void 0 ? void 0 : formulaList[fun.name].args)[index + 1] || {
@@ -87,6 +104,7 @@ var CaseEditor = function CaseEditor(props) {
87
104
  };
88
105
  _args.splice(index + 1, 0, tem);
89
106
  setFun(_objectSpread(_objectSpread({}, fun), {}, {
107
+ quotes: getQuotes(_args),
90
108
  args: _args
91
109
  }));
92
110
  };
@@ -94,6 +112,7 @@ var CaseEditor = function CaseEditor(props) {
94
112
  var _args = cloneDeep(fun.args);
95
113
  _args.splice(index, 1);
96
114
  setFun(_objectSpread(_objectSpread({}, fun), {}, {
115
+ quotes: getQuotes(_args),
97
116
  args: _args
98
117
  }));
99
118
  };
@@ -132,11 +151,19 @@ var CaseEditor = function CaseEditor(props) {
132
151
  onChange: function onChange(val) {
133
152
  handleFunName(val);
134
153
  },
135
- children: (_store$formulaTemplat = store.formulaTemplates) === null || _store$formulaTemplat === void 0 ? void 0 : _store$formulaTemplat.map(function (option, index) {
136
- return _jsx(Select.Option, {
137
- value: option.name,
138
- children: option.name
154
+ children: (_store$formulaTemplat = store.formulaTemplates) === null || _store$formulaTemplat === void 0 ? void 0 : _store$formulaTemplat.map(function (options, index) {
155
+ return _jsx(Select.OptGroup, {
156
+ label: options.name,
157
+ children: Array.from(options.children || []).map(function (option, ind) {
158
+ return _jsx(Select.Option, {
159
+ value: option.name,
160
+ children: option.name
161
+ }, String(option.name + ind));
162
+ })
139
163
  }, index);
164
+ // <Select.Option key={index} value={option.name}>
165
+ // {option.name}
166
+ // </Select.Option>
140
167
  })
141
168
  })
142
169
  }), fun.name && _jsxs("div", {
@@ -173,12 +200,15 @@ var CaseEditor = function CaseEditor(props) {
173
200
  onChange: function onChange(data, _quotes) {
174
201
  var _args = cloneDeep(fun.args);
175
202
  _args[i].list = data;
176
- _args[i].quotes = _quotes || '';
177
- var quotes = _args.map(function (v) {
178
- return v.quotes;
179
- }).join(' , ');
203
+ // (_args[i] as AtomsCollection).quotes = _quotes || '';
204
+ // const quotes = (_args as AtomsCollection[])
205
+ // .map((v) => {
206
+ // return v.quotes;
207
+ // })
208
+ // .join(' , ');
180
209
  setFun(_objectSpread(_objectSpread({}, fun), {}, {
181
- quotes: fun.name + ' ( ' + quotes + ' ) ',
210
+ quotes: getQuotes(_args),
211
+ //fun.name + ' ( ' + quotes + ' ) ',
182
212
  args: _args
183
213
  }));
184
214
  }
@@ -3,9 +3,11 @@ import { getTemplateItem } from '../formula-list/utils';
3
3
  export var getObjTem = function getObjTem(arr) {
4
4
  var obj = {};
5
5
  arr === null || arr === void 0 || arr.map(function (v) {
6
- if (v.name) {
7
- obj[v.name] = v;
8
- }
6
+ v.children.map(function (vv) {
7
+ if (vv.name) {
8
+ obj[vv.name] = vv;
9
+ }
10
+ });
9
11
  });
10
12
  return obj;
11
13
  };
@@ -278,7 +278,7 @@ var _isOk = function isOk(rhsVal) {
278
278
  }
279
279
  return _isOk(v.args || []);
280
280
  } else {
281
- return Boolean(v.val); // 兜底,确保 val 存在
281
+ return Boolean(v.val) || v.val === 0; // 兜底,确保 val 存在
282
282
  }
283
283
  });
284
284
  };
@@ -196,6 +196,126 @@ var JoinData = function JoinData(props) {
196
196
  });
197
197
  return data;
198
198
  };
199
+ var getCollectionTableColumns = function getCollectionTableColumns() {
200
+ var data = [];
201
+ var _getHelper3 = getHelper(store.metaList[groupIndex].list, meta),
202
+ ExistAboveGroupBy = _getHelper3.ExistAboveGroupBy,
203
+ prevList = _getHelper3.prevList,
204
+ prevGroupBy = _getHelper3.prevGroupBy;
205
+ // 获取左侧表
206
+ if (ExistAboveGroupBy) {
207
+ var _prevGroupBy$group2, _prevGroupBy$by2;
208
+ var _data = {
209
+ alias: prevGroupBy.alias,
210
+ id: prevGroupBy.alias,
211
+ tableUuid: prevGroupBy.tableUuid || uuidv4('table'),
212
+ name: prevGroupBy.alias,
213
+ name_zh: prevGroupBy.alias,
214
+ datasourceId: '',
215
+ datasourceName: '',
216
+ columns: []
217
+ };
218
+ if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$group2 = prevGroupBy.group) !== null && _prevGroupBy$group2 !== void 0 && _prevGroupBy$group2.length) {
219
+ _data.columns = _data.columns.concat(prevGroupBy.group.map(function (v) {
220
+ return _objectSpread(_objectSpread({}, v), {}, {
221
+ name: v.name || v.quotes,
222
+ name_zh: v.name_zh || v.quotes,
223
+ id: v.id || v.fieldId,
224
+ database_type: (v === null || v === void 0 ? void 0 : v.database_type) || SQL_COLUMN_TYPE.FLOAT,
225
+ special_type: '',
226
+ sql: v.sql,
227
+ select: true
228
+ });
229
+ }));
230
+ }
231
+ if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$by2 = prevGroupBy.by) !== null && _prevGroupBy$by2 !== void 0 && _prevGroupBy$by2.length) {
232
+ _data.columns = _data.columns.concat(prevGroupBy.by.map(function (v) {
233
+ return _objectSpread(_objectSpread({}, v), {}, {
234
+ name: v.name || v.quotes,
235
+ name_zh: v.name_zh || v.quotes,
236
+ id: v.id || v.fieldId,
237
+ database_type: (v === null || v === void 0 ? void 0 : v.database_type) || SQL_COLUMN_TYPE.FLOAT,
238
+ special_type: '',
239
+ sql: v.sql,
240
+ select: true
241
+ });
242
+ }));
243
+ }
244
+ data = [_data];
245
+ var joinData = prevList.filter(function (v) {
246
+ return v.type === TypeEnum.joinData;
247
+ }).filter(function (v) {
248
+ return v && v.table2.name;
249
+ });
250
+ if (joinData !== null && joinData !== void 0 && joinData.length) {
251
+ data = data.concat(joinData.map(function (v) {
252
+ return {
253
+ alias: v.table2.alias,
254
+ name: v.table2.name,
255
+ name_zh: v.table2.name_zh,
256
+ id: v.table2.id,
257
+ tableUuid: v.table2.tableUuid || uuidv4('table'),
258
+ datasourceId: v.table2.datasourceId,
259
+ datasourceName: v.table2.datasourceName,
260
+ columns: v.columns || []
261
+ };
262
+ }));
263
+ }
264
+ } else {
265
+ data = store.metaList[groupIndex].list.slice(0, index).reduce(function (mo, v) {
266
+ if (v.type === TypeEnum.data) {
267
+ mo.push(_objectSpread(_objectSpread({}, v.table), {}, {
268
+ alias: v.table.alias,
269
+ name: v.table.name,
270
+ name_zh: v.table.name_zh,
271
+ id: v.table.id,
272
+ tableUuid: v.table.tableUuid || uuidv4('table'),
273
+ columns: v.columns,
274
+ datasourceId: v.table.datasourceId,
275
+ datasourceName: v.table.datasourceName
276
+ }));
277
+ } else if (v.type === TypeEnum.joinData) {
278
+ mo.push({
279
+ alias: v.table2.alias,
280
+ name: v.table2.name,
281
+ name_zh: v.table2.name_zh,
282
+ id: v.table2.id,
283
+ tableUuid: v.table2.tableUuid || uuidv4('table'),
284
+ columns: v.columns,
285
+ datasourceId: v.table2.datasourceId,
286
+ datasourceName: v.table2.datasourceName
287
+ });
288
+ }
289
+ return mo;
290
+ }, []);
291
+ // .filter((v: DataType) => v.tableUuid === meta.table1.tableUuid);
292
+ }
293
+ // 获取右侧表
294
+ // 添加table2
295
+ data = data.concat([{
296
+ alias: meta.table2.alias,
297
+ name: meta.table2.name,
298
+ name_zh: meta.table2.name_zh,
299
+ id: meta.table2.id,
300
+ tableUuid: meta.table2.tableUuid || uuidv4('table'),
301
+ datasourceId: meta.table2.datasourceId,
302
+ datasourceName: meta.table2.datasourceName,
303
+ columns: meta.columns
304
+ }]);
305
+ // 过滤为table1选中的表
306
+ // let newMeta = store.metaList[groupIndex].list.slice();
307
+ // data = data.filter((v) => {
308
+ // return (
309
+ // ((newMeta[index] as MetaJoin)[FlagLocation.TABLE_1] as MetaJoin_TalbeType).tableUuid ==
310
+ // v.tableUuid ||
311
+ // ((newMeta[index] as MetaJoin)[FlagLocation.TABLE_1] as MetaJoin_TalbeType).name ==
312
+ // SummarizeAlias ||
313
+ // ((newMeta[index] as MetaJoin)[FlagLocation.TABLE_2] as MetaJoin_TalbeType).tableUuid ==
314
+ // v.tableUuid
315
+ // );
316
+ // });
317
+ return data;
318
+ };
199
319
  // 字段列表
200
320
  function selectColumns(e) {
201
321
  var columns = meta.columns;
@@ -220,12 +340,12 @@ var JoinData = function JoinData(props) {
220
340
  var index = findIndex(store.metaList[groupIndex].list, meta);
221
341
  var table_type = FlagLocation.TABLE_1;
222
342
  var data = [];
223
- var _getHelper3 = getHelper(store.metaList[groupIndex].list, meta),
224
- ExistAboveGroupBy = _getHelper3.ExistAboveGroupBy,
225
- prevList = _getHelper3.prevList,
226
- prevGroupBy = _getHelper3.prevGroupBy;
343
+ var _getHelper4 = getHelper(store.metaList[groupIndex].list, meta),
344
+ ExistAboveGroupBy = _getHelper4.ExistAboveGroupBy,
345
+ prevList = _getHelper4.prevList,
346
+ prevGroupBy = _getHelper4.prevGroupBy;
227
347
  if (ExistAboveGroupBy) {
228
- var _prevGroupBy$group2, _prevGroupBy$by2;
348
+ var _prevGroupBy$group3, _prevGroupBy$by3;
229
349
  var _data = {
230
350
  alias: prevGroupBy.alias,
231
351
  id: prevGroupBy.alias,
@@ -236,7 +356,7 @@ var JoinData = function JoinData(props) {
236
356
  datasourceName: ''
237
357
  // columns: [],
238
358
  };
239
- if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$group2 = prevGroupBy.group) !== null && _prevGroupBy$group2 !== void 0 && _prevGroupBy$group2.length) {
359
+ if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$group3 = prevGroupBy.group) !== null && _prevGroupBy$group3 !== void 0 && _prevGroupBy$group3.length) {
240
360
  // _data.columns = _data.columns.concat(
241
361
  // prevGroupBy.group.map((v: MetaSummarize_Group) => {
242
362
  // return {
@@ -252,7 +372,7 @@ var JoinData = function JoinData(props) {
252
372
  // }),
253
373
  // );
254
374
  }
255
- if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$by2 = prevGroupBy.by) !== null && _prevGroupBy$by2 !== void 0 && _prevGroupBy$by2.length) {
375
+ if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$by3 = prevGroupBy.by) !== null && _prevGroupBy$by3 !== void 0 && _prevGroupBy$by3.length) {
256
376
  // _data.columns = _data.columns.concat(
257
377
  // prevGroupBy.by.map((v: MetaSummarize_By) => {
258
378
  // return {
@@ -495,13 +615,13 @@ var JoinData = function JoinData(props) {
495
615
  }
496
616
  function getColumns(_position) {
497
617
  var data = [];
498
- var _getHelper4 = getHelper(store.metaList[groupIndex].list, meta),
499
- ExistAboveGroupBy = _getHelper4.ExistAboveGroupBy,
500
- prevList = _getHelper4.prevList,
501
- prevGroupBy = _getHelper4.prevGroupBy;
618
+ var _getHelper5 = getHelper(store.metaList[groupIndex].list, meta),
619
+ ExistAboveGroupBy = _getHelper5.ExistAboveGroupBy,
620
+ prevList = _getHelper5.prevList,
621
+ prevGroupBy = _getHelper5.prevGroupBy;
502
622
  if (_position === ExpressionsEnum.LEFT) {
503
623
  if (ExistAboveGroupBy) {
504
- var _prevGroupBy$group3, _prevGroupBy$by3;
624
+ var _prevGroupBy$group4, _prevGroupBy$by4;
505
625
  var _data = {
506
626
  name: prevGroupBy.alias,
507
627
  name_zh: prevGroupBy.alias,
@@ -512,7 +632,7 @@ var JoinData = function JoinData(props) {
512
632
  datasourceName: '',
513
633
  columns: []
514
634
  };
515
- if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$group3 = prevGroupBy.group) !== null && _prevGroupBy$group3 !== void 0 && _prevGroupBy$group3.length) {
635
+ if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$group4 = prevGroupBy.group) !== null && _prevGroupBy$group4 !== void 0 && _prevGroupBy$group4.length) {
516
636
  _data.columns = _data.columns.concat(prevGroupBy.group.map(function (v) {
517
637
  return _objectSpread(_objectSpread({}, v), {}, {
518
638
  name: v.name || v.quotes,
@@ -525,7 +645,7 @@ var JoinData = function JoinData(props) {
525
645
  });
526
646
  }));
527
647
  }
528
- if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$by3 = prevGroupBy.by) !== null && _prevGroupBy$by3 !== void 0 && _prevGroupBy$by3.length) {
648
+ if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$by4 = prevGroupBy.by) !== null && _prevGroupBy$by4 !== void 0 && _prevGroupBy$by4.length) {
529
649
  _data.columns = _data.columns.concat(prevGroupBy.by.map(function (v) {
530
650
  return _objectSpread(_objectSpread({}, v), {}, {
531
651
  name: v.name || v.quotes,
@@ -615,13 +735,13 @@ var JoinData = function JoinData(props) {
615
735
  var _ind2 = Number(node.getAttribute('v-index2'));
616
736
  var index = findIndex(store.metaList[groupIndex].list, meta);
617
737
  var data = [];
618
- var _getHelper5 = getHelper(store.metaList[groupIndex].list, meta),
619
- ExistAboveGroupBy = _getHelper5.ExistAboveGroupBy,
620
- prevList = _getHelper5.prevList,
621
- prevGroupBy = _getHelper5.prevGroupBy;
738
+ var _getHelper6 = getHelper(store.metaList[groupIndex].list, meta),
739
+ ExistAboveGroupBy = _getHelper6.ExistAboveGroupBy,
740
+ prevList = _getHelper6.prevList,
741
+ prevGroupBy = _getHelper6.prevGroupBy;
622
742
  if (_position === ExpressionsEnum.LEFT) {
623
743
  if (ExistAboveGroupBy) {
624
- var _prevGroupBy$group4, _prevGroupBy$by4;
744
+ var _prevGroupBy$group5, _prevGroupBy$by5;
625
745
  var _data = {
626
746
  name: prevGroupBy.alias,
627
747
  name_zh: prevGroupBy.alias,
@@ -632,7 +752,7 @@ var JoinData = function JoinData(props) {
632
752
  datasourceName: '',
633
753
  columns: []
634
754
  };
635
- if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$group4 = prevGroupBy.group) !== null && _prevGroupBy$group4 !== void 0 && _prevGroupBy$group4.length) {
755
+ if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$group5 = prevGroupBy.group) !== null && _prevGroupBy$group5 !== void 0 && _prevGroupBy$group5.length) {
636
756
  _data.columns = _data.columns.concat(prevGroupBy.group.map(function (v) {
637
757
  return _objectSpread(_objectSpread({}, v), {}, {
638
758
  name: v.name || v.quotes,
@@ -645,7 +765,7 @@ var JoinData = function JoinData(props) {
645
765
  });
646
766
  }));
647
767
  }
648
- if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$by4 = prevGroupBy.by) !== null && _prevGroupBy$by4 !== void 0 && _prevGroupBy$by4.length) {
768
+ if (prevGroupBy !== null && prevGroupBy !== void 0 && (_prevGroupBy$by5 = prevGroupBy.by) !== null && _prevGroupBy$by5 !== void 0 && _prevGroupBy$by5.length) {
649
769
  _data.columns = _data.columns.concat(prevGroupBy.by.map(function (v) {
650
770
  return _objectSpread(_objectSpread({}, v), {}, {
651
771
  name: v.name || v.quotes,
@@ -1531,7 +1651,7 @@ var JoinData = function JoinData(props) {
1531
1651
  // showPreview={false}
1532
1652
  // check={formulaList?.[fun.name]?.args?.[i]?.check || ''}
1533
1653
  value: v.list,
1534
- data: getTableColumns(),
1654
+ data: getCollectionTableColumns(),
1535
1655
  // ref={ref}
1536
1656
  onChange: function onChange(data, _quotes) {
1537
1657
  var newMeta = store.metaList[groupIndex].list.slice();
@@ -331,6 +331,10 @@ export interface FormulaTemplatesItem {
331
331
  description?: string;
332
332
  example?: string;
333
333
  }
334
+ export interface FormulaTemplates {
335
+ name: string;
336
+ children: FormulaTemplatesItem[];
337
+ }
334
338
  export {};
335
339
  /**
336
340
  let a = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gingkoo/pandora-metabase",
3
- "version": "1.0.38",
3
+ "version": "1.0.40",
4
4
  "description": "",
5
5
  "main": "lib/es/index.js",
6
6
  "module": "lib/es/index.js",