@gingkoo/pandora-metabase 1.0.152 → 1.0.153
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/formula-list/CaseWhenGroup.d.ts +2 -1
- package/lib/cjs/components/dialog/formula-list/CaseWhenGroup.js +7 -5
- package/lib/cjs/components/dialog/formula-list/LogicGroup.d.ts +2 -1
- package/lib/cjs/components/dialog/formula-list/LogicGroup.js +4 -2
- package/lib/cjs/components/dialog/formula-list/index.js +14 -9
- package/lib/cjs/components/dialog/select-column/index.d.ts +2 -1
- package/lib/cjs/components/dialog/select-column/index.js +10 -1
- package/lib/cjs/components/metabase/index.js +30 -2
- package/lib/cjs/components/modules/components/header.js +1 -1
- package/lib/cjs/components/modules/components/item-name.js +4 -1
- package/lib/cjs/components/modules/components/item-wrapper.js +1 -1
- package/lib/cjs/components/modules/components/meta-icon.js +4 -2
- package/lib/cjs/components/modules/custom-column.js +2 -2
- package/lib/cjs/components/modules/join-data.js +40 -41
- package/lib/cjs/components/modules/permission-table.js +1 -0
- package/lib/cjs/components/modules/row-limit.js +1 -0
- package/lib/cjs/components/modules/sort.js +2 -2
- package/lib/cjs/components/modules/summarize/group-by.js +3 -3
- package/lib/cjs/components/modules/summarize/select-index.js +3 -3
- package/lib/cjs/components/modules/table-data.js +6 -4
- package/lib/cjs/components/modules/union.js +1 -1
- package/lib/cjs/hooks/use-state.js +66 -52
- package/lib/cjs/index.js +7 -2
- package/lib/cjs/types.d.ts +1 -0
- package/lib/es/components/dialog/formula-list/CaseWhenGroup.d.ts +2 -1
- package/lib/es/components/dialog/formula-list/CaseWhenGroup.js +7 -5
- package/lib/es/components/dialog/formula-list/LogicGroup.d.ts +2 -1
- package/lib/es/components/dialog/formula-list/LogicGroup.js +4 -2
- package/lib/es/components/dialog/formula-list/index.js +14 -9
- package/lib/es/components/dialog/select-column/index.d.ts +2 -1
- package/lib/es/components/dialog/select-column/index.js +10 -1
- package/lib/es/components/metabase/index.js +30 -2
- package/lib/es/components/modules/components/header.js +1 -1
- package/lib/es/components/modules/components/item-name.js +4 -1
- package/lib/es/components/modules/components/item-wrapper.js +1 -1
- package/lib/es/components/modules/components/meta-icon.js +4 -2
- package/lib/es/components/modules/custom-column.js +2 -2
- package/lib/es/components/modules/join-data.js +40 -41
- package/lib/es/components/modules/permission-table.js +1 -0
- package/lib/es/components/modules/row-limit.js +1 -0
- package/lib/es/components/modules/sort.js +2 -2
- package/lib/es/components/modules/summarize/group-by.js +3 -3
- package/lib/es/components/modules/summarize/select-index.js +3 -3
- package/lib/es/components/modules/table-data.js +6 -4
- package/lib/es/components/modules/union.js +1 -1
- package/lib/es/hooks/use-state.js +66 -52
- package/lib/es/index.js +7 -2
- package/lib/es/types.d.ts +1 -0
- package/package.json +1 -1
|
@@ -34,6 +34,7 @@ var Metabase = function Metabase(props) {
|
|
|
34
34
|
rightClickMenu = _props$rightClickMenu === void 0 ? EMPTY_ARRAY : _props$rightClickMenu,
|
|
35
35
|
onRightClickMenuClick = props.onRightClickMenuClick;
|
|
36
36
|
var store = useStore();
|
|
37
|
+
var readonlyMode = readonly || store.snapshotMode;
|
|
37
38
|
var _useState = useState(false),
|
|
38
39
|
_useState2 = _slicedToArray(_useState, 2),
|
|
39
40
|
saveLoading = _useState2[0],
|
|
@@ -153,7 +154,18 @@ var Metabase = function Metabase(props) {
|
|
|
153
154
|
store.setRightClickMenu(rightClickMenu || EMPTY_ARRAY);
|
|
154
155
|
store.setRightClickMenuClick(onRightClickMenuClick);
|
|
155
156
|
}, [rightClickMenu, onRightClickMenuClick]);
|
|
157
|
+
useEffect(function () {
|
|
158
|
+
if (!readonlyMode) return;
|
|
159
|
+
store.setPopup({
|
|
160
|
+
visible: false
|
|
161
|
+
});
|
|
162
|
+
store.setPopup2({
|
|
163
|
+
visible: false
|
|
164
|
+
});
|
|
165
|
+
store.setRightClickMenuState(null);
|
|
166
|
+
}, [readonlyMode]);
|
|
156
167
|
var copy = function copy() {
|
|
168
|
+
if (readonlyMode) return null;
|
|
157
169
|
return _jsxs(Space, {
|
|
158
170
|
children: [moduleCopy && _jsx(_Fragment, {
|
|
159
171
|
children: _jsx(Tooltip, {
|
|
@@ -213,10 +225,22 @@ var Metabase = function Metabase(props) {
|
|
|
213
225
|
})]
|
|
214
226
|
});
|
|
215
227
|
};
|
|
228
|
+
var stopReadonlyInteraction = function stopReadonlyInteraction(e) {
|
|
229
|
+
var _target$closest;
|
|
230
|
+
if (!readonlyMode) return;
|
|
231
|
+
var target = e.target;
|
|
232
|
+
if (target !== null && target !== void 0 && (_target$closest = target.closest) !== null && _target$closest !== void 0 && _target$closest.call(target, '[data-sqb-snapshot-allow="true"]')) return;
|
|
233
|
+
e.preventDefault();
|
|
234
|
+
e.stopPropagation();
|
|
235
|
+
};
|
|
216
236
|
return _jsx(VisualBox, {
|
|
217
237
|
ref: store.popupContainer,
|
|
218
238
|
onContextMenu: function onContextMenu(e) {
|
|
219
|
-
|
|
239
|
+
if (readonlyMode) {
|
|
240
|
+
e.preventDefault();
|
|
241
|
+
return;
|
|
242
|
+
}
|
|
243
|
+
openSqbRightClickMenu(store, e);
|
|
220
244
|
},
|
|
221
245
|
children: _jsxs("div", {
|
|
222
246
|
className: 'Sqb',
|
|
@@ -228,6 +252,8 @@ var Metabase = function Metabase(props) {
|
|
|
228
252
|
if (v.type === 'union' && v.union) {
|
|
229
253
|
return _jsx("div", {
|
|
230
254
|
className: cx("Sqb-list"),
|
|
255
|
+
onMouseDownCapture: stopReadonlyInteraction,
|
|
256
|
+
onClickCapture: stopReadonlyInteraction,
|
|
231
257
|
children: _jsx(Union, {
|
|
232
258
|
union: v.union,
|
|
233
259
|
meta: v,
|
|
@@ -237,6 +263,8 @@ var Metabase = function Metabase(props) {
|
|
|
237
263
|
}
|
|
238
264
|
return _jsx("div", {
|
|
239
265
|
className: cx("Sqb-list"),
|
|
266
|
+
onMouseDownCapture: stopReadonlyInteraction,
|
|
267
|
+
onClickCapture: stopReadonlyInteraction,
|
|
240
268
|
children: v === null || v === void 0 || (_v$list2 = v.list) === null || _v$list2 === void 0 ? void 0 : _v$list2.map(function (meta) {
|
|
241
269
|
var metaType = meta.type,
|
|
242
270
|
metaKey = meta.metaKey,
|
|
@@ -249,7 +277,7 @@ var Metabase = function Metabase(props) {
|
|
|
249
277
|
}, metaKey);
|
|
250
278
|
})
|
|
251
279
|
}, 'group' + index);
|
|
252
|
-
}), !
|
|
280
|
+
}), !readonlyMode && typeof onOk === 'function' ? _jsx(Button, {
|
|
253
281
|
type: 'primary',
|
|
254
282
|
className: ":Sqb-btn",
|
|
255
283
|
loading: saveLoading,
|
|
@@ -63,7 +63,7 @@ var Header = function Header(props) {
|
|
|
63
63
|
})
|
|
64
64
|
}), _jsx(Space, {
|
|
65
65
|
className: cx(':Sqb-item-actions'),
|
|
66
|
-
children: props.onClose && !store.isMetabaseCopy && _jsx(Tooltip, {
|
|
66
|
+
children: props.onClose && !store.isMetabaseCopy && !store.snapshotMode && _jsx(Tooltip, {
|
|
67
67
|
placement: 'top',
|
|
68
68
|
title: __('data.del'),
|
|
69
69
|
children: _jsx(CloseIcon2, {
|
|
@@ -2,12 +2,15 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { Badge, Button, Tooltip } from '@gingkoo/pandora';
|
|
3
3
|
import { ExclamationCircleFill } from '@gingkoo/pandora-icons';
|
|
4
4
|
import { __ } from '../../../locale';
|
|
5
|
+
import { useStore } from '../../../hooks/use-provider';
|
|
5
6
|
var ItemName = function ItemName(props) {
|
|
6
7
|
var children = props.children,
|
|
7
8
|
isError = props.isError,
|
|
8
9
|
message = props.message;
|
|
10
|
+
var store = useStore();
|
|
11
|
+
var showError = isError && !store.snapshotMode;
|
|
9
12
|
return _jsx(Badge, {
|
|
10
|
-
count:
|
|
13
|
+
count: showError ? _jsx(Tooltip, {
|
|
11
14
|
title: message || __('metabase.verify'),
|
|
12
15
|
children: _jsx(Button, {
|
|
13
16
|
className: 'isError',
|
|
@@ -23,7 +23,7 @@ var ItemWrapper = function ItemWrapper(props) {
|
|
|
23
23
|
store.setMetabaseCopyModule(data);
|
|
24
24
|
storage._metabaseCopyModule = data;
|
|
25
25
|
};
|
|
26
|
-
if (store.isMetabaseCopy && meta.type !== 'union' && meta.type !== 'data') {
|
|
26
|
+
if (store.isMetabaseCopy && !store.snapshotMode && meta.type !== 'union' && meta.type !== 'data') {
|
|
27
27
|
return _jsx(Checkbox, {
|
|
28
28
|
checked: metaIsCheck(store.metabaseCopyModule, meta),
|
|
29
29
|
onChange: function onChange(val) {
|
|
@@ -314,8 +314,9 @@ var NextDom = function NextDom(props) {
|
|
|
314
314
|
storage._metabaseCopyModule = [];
|
|
315
315
|
}
|
|
316
316
|
};
|
|
317
|
+
if (store.snapshotMode) return null;
|
|
317
318
|
return _jsxs(_Fragment, {
|
|
318
|
-
children: [store.metabaseCopyModule && store.metabaseCopyModule.length > 0 && isShowAdd && _jsx(Tooltip, {
|
|
319
|
+
children: [store.metabaseCopyModule && store.metabaseCopyModule.length > 0 && isShowAdd && !store.snapshotMode && _jsx(Tooltip, {
|
|
319
320
|
title: "\u5728\u6B64\u5904\u7C98\u8D34",
|
|
320
321
|
children: _jsxs(Button, {
|
|
321
322
|
className: cx(':Sqb-item-copy'),
|
|
@@ -339,7 +340,8 @@ var NextDom = function NextDom(props) {
|
|
|
339
340
|
large: size === IconSIzeEnum.LARGE
|
|
340
341
|
}),
|
|
341
342
|
onClick: function onClick() {
|
|
342
|
-
|
|
343
|
+
if (store.snapshotMode) return;
|
|
344
|
+
handleClick(v);
|
|
343
345
|
},
|
|
344
346
|
children: _jsxs("div", {
|
|
345
347
|
children: [info.icon, size === IconSIzeEnum.LARGE ? _jsx("div", {
|
|
@@ -318,7 +318,7 @@ var CustomColumn = function CustomColumn(props) {
|
|
|
318
318
|
onClick: function onClick(e) {
|
|
319
319
|
return showSubQuery(e, i);
|
|
320
320
|
},
|
|
321
|
-
children: [v.name, _jsx("span", {
|
|
321
|
+
children: [v.name, !store.snapshotMode && _jsx("span", {
|
|
322
322
|
style: {
|
|
323
323
|
fontSize: 0
|
|
324
324
|
},
|
|
@@ -330,7 +330,7 @@ var CustomColumn = function CustomColumn(props) {
|
|
|
330
330
|
})
|
|
331
331
|
})
|
|
332
332
|
}, i);
|
|
333
|
-
}), _jsx("div", {
|
|
333
|
+
}), !store.snapshotMode && _jsx("div", {
|
|
334
334
|
className: "Sqb-TableName gray-name",
|
|
335
335
|
onClick: function onClick(e) {
|
|
336
336
|
showSubQuery(e, -1);
|
|
@@ -373,6 +373,7 @@ var JoinData = function JoinData(props) {
|
|
|
373
373
|
table: meta.table2,
|
|
374
374
|
metaIndex: index,
|
|
375
375
|
groupIndex: groupIndex,
|
|
376
|
+
readonly: store.snapshotMode,
|
|
376
377
|
onChange: function onChange(data, newMetaList) {
|
|
377
378
|
var _newMetaList = newMetaList || store.metaList[groupIndex].list.slice();
|
|
378
379
|
_newMetaList[index].columns = data;
|
|
@@ -1302,6 +1303,33 @@ var JoinData = function JoinData(props) {
|
|
|
1302
1303
|
}
|
|
1303
1304
|
return false;
|
|
1304
1305
|
};
|
|
1306
|
+
var renderSwitchTypeButton = function renderSwitchTypeButton(position, expressionIndex) {
|
|
1307
|
+
if (store.snapshotMode) {
|
|
1308
|
+
return _jsx("span", {
|
|
1309
|
+
"aria-hidden": 'true',
|
|
1310
|
+
style: {
|
|
1311
|
+
display: 'inline-block',
|
|
1312
|
+
marginRight: 8
|
|
1313
|
+
}
|
|
1314
|
+
});
|
|
1315
|
+
}
|
|
1316
|
+
return _jsx(Tooltip, {
|
|
1317
|
+
title: __('SqlQueryBuilder.switch'),
|
|
1318
|
+
children: _jsx(Button, {
|
|
1319
|
+
disabled: meta.readonly,
|
|
1320
|
+
primary: true,
|
|
1321
|
+
ghost: true,
|
|
1322
|
+
className: 'mr-2 operator-icon',
|
|
1323
|
+
icon: _jsx(Repeat, {}),
|
|
1324
|
+
onClick: function onClick(e) {
|
|
1325
|
+
onChangeType(e, {
|
|
1326
|
+
position: position,
|
|
1327
|
+
index: expressionIndex
|
|
1328
|
+
});
|
|
1329
|
+
}
|
|
1330
|
+
})
|
|
1331
|
+
});
|
|
1332
|
+
};
|
|
1305
1333
|
return _jsx(Wrapper, {
|
|
1306
1334
|
className: cx("Sqb-item"),
|
|
1307
1335
|
children: _jsxs("div", {
|
|
@@ -1362,7 +1390,7 @@ var JoinData = function JoinData(props) {
|
|
|
1362
1390
|
},
|
|
1363
1391
|
children: [subQuerySelected && _jsx(_Fragment, {
|
|
1364
1392
|
children: function () {
|
|
1365
|
-
var showButton = store.tableEnableAlias || tableIsError() && isDel;
|
|
1393
|
+
var showButton = !store.snapshotMode && (store.tableEnableAlias || tableIsError() && isDel);
|
|
1366
1394
|
var icon = isDel ? _jsx(ExclamationCircleFill, {}) : store.tableEnableAlias ? 'As' : '';
|
|
1367
1395
|
return showButton ? _jsx(Tooltip, {
|
|
1368
1396
|
title: __(tableIsError() ? isDel ? 'metabase.verify' : 'SqlQueryBuilder.repeatAlias' : 'SqlQueryBuilder.alias'),
|
|
@@ -1403,7 +1431,7 @@ var JoinData = function JoinData(props) {
|
|
|
1403
1431
|
onClick: selectTable,
|
|
1404
1432
|
children: [table2Selected && _jsx(_Fragment, {
|
|
1405
1433
|
children: function () {
|
|
1406
|
-
var showButton = store.tableEnableAlias || tableIsError() && isDel;
|
|
1434
|
+
var showButton = !store.snapshotMode && (store.tableEnableAlias || tableIsError() && isDel);
|
|
1407
1435
|
var icon = isDel ? _jsx(ExclamationCircleFill, {}) : store.tableEnableAlias ? 'As' : '';
|
|
1408
1436
|
return showButton ? _jsx(Tooltip, {
|
|
1409
1437
|
title: __(tableIsError() ? isDel ? 'metabase.verify' : 'SqlQueryBuilder.repeatAlias' : 'SqlQueryBuilder.alias'),
|
|
@@ -1435,7 +1463,7 @@ var JoinData = function JoinData(props) {
|
|
|
1435
1463
|
}()
|
|
1436
1464
|
}), table2Selected ? "".concat(meta.table2.datasourceName, ".").concat(meta.table2.name, " ").concat((_meta$table7 = meta.table2) !== null && _meta$table7 !== void 0 && _meta$table7.alias && store.tableEnableAlias ? "as ".concat((_meta$table8 = meta.table2) === null || _meta$table8 === void 0 ? void 0 : _meta$table8.alias) : '') : __('SqlQueryBuilder.pickTable')]
|
|
1437
1465
|
})
|
|
1438
|
-
}), store.showSubquery && _jsx(Tooltip, {
|
|
1466
|
+
}), store.showSubquery && (!store.snapshotMode || meta.isSubquery) && _jsx(Tooltip, {
|
|
1439
1467
|
title: __('SqlQueryBuilder.switchSubQuery'),
|
|
1440
1468
|
children: _jsx(Button, {
|
|
1441
1469
|
disabled: meta.readonly,
|
|
@@ -1452,40 +1480,10 @@ var JoinData = function JoinData(props) {
|
|
|
1452
1480
|
children: [i == 0 && _jsx("span", {
|
|
1453
1481
|
className: 'ml-2 mr-4 text-gray-500',
|
|
1454
1482
|
children: "on"
|
|
1455
|
-
}), renderItem(v.lhs, ExpressionsEnum.LEFT, i), _jsx(
|
|
1456
|
-
title: __('SqlQueryBuilder.switch'),
|
|
1457
|
-
children: _jsx(Button, {
|
|
1458
|
-
disabled: meta.readonly,
|
|
1459
|
-
primary: true,
|
|
1460
|
-
ghost: true,
|
|
1461
|
-
className: 'mr-2 operator-icon',
|
|
1462
|
-
icon: _jsx(Repeat, {}),
|
|
1463
|
-
onClick: function onClick(e) {
|
|
1464
|
-
onChangeType(e, {
|
|
1465
|
-
position: ExpressionsEnum.LEFT,
|
|
1466
|
-
index: i
|
|
1467
|
-
});
|
|
1468
|
-
}
|
|
1469
|
-
})
|
|
1470
|
-
}), _jsx("span", {
|
|
1483
|
+
}), renderItem(v.lhs, ExpressionsEnum.LEFT, i), renderSwitchTypeButton(ExpressionsEnum.LEFT, i), _jsx("span", {
|
|
1471
1484
|
className: 'mr-2 text-gray-500',
|
|
1472
1485
|
children: "="
|
|
1473
|
-
}), renderItem(v.rhs, ExpressionsEnum.RIGHT, i), _jsx(Tooltip, {
|
|
1474
|
-
title: __('SqlQueryBuilder.switch'),
|
|
1475
|
-
children: _jsx(Button, {
|
|
1476
|
-
disabled: meta.readonly,
|
|
1477
|
-
primary: true,
|
|
1478
|
-
ghost: true,
|
|
1479
|
-
className: 'mr-2 operator-icon',
|
|
1480
|
-
icon: _jsx(Repeat, {}),
|
|
1481
|
-
onClick: function onClick(e) {
|
|
1482
|
-
onChangeType(e, {
|
|
1483
|
-
position: ExpressionsEnum.RIGHT,
|
|
1484
|
-
index: i
|
|
1485
|
-
});
|
|
1486
|
-
}
|
|
1487
|
-
})
|
|
1488
|
-
}), _jsx(Tooltip, {
|
|
1486
|
+
}), renderItem(v.rhs, ExpressionsEnum.RIGHT, i), renderSwitchTypeButton(ExpressionsEnum.RIGHT, i), !store.snapshotMode && _jsx(Tooltip, {
|
|
1489
1487
|
title: __('SqlQueryBuilder.add'),
|
|
1490
1488
|
children: _jsx(Dropdown, {
|
|
1491
1489
|
trigger: ['click'],
|
|
@@ -1501,7 +1499,7 @@ var JoinData = function JoinData(props) {
|
|
|
1501
1499
|
icon: _jsx(FfPlus, {})
|
|
1502
1500
|
})
|
|
1503
1501
|
})
|
|
1504
|
-
}), _jsx(Tooltip, {
|
|
1502
|
+
}), !store.snapshotMode && _jsx(Tooltip, {
|
|
1505
1503
|
title: __('SqlQueryBuilder.del'),
|
|
1506
1504
|
children: _jsx(Button, {
|
|
1507
1505
|
disabled: meta.readonly,
|
|
@@ -1557,7 +1555,7 @@ var JoinData = function JoinData(props) {
|
|
|
1557
1555
|
children: v.quotes || __('joinData.selectExpression')
|
|
1558
1556
|
}, i)
|
|
1559
1557
|
})
|
|
1560
|
-
}), _jsx(Tooltip, {
|
|
1558
|
+
}), !store.snapshotMode && _jsx(Tooltip, {
|
|
1561
1559
|
title: __('SqlQueryBuilder.add'),
|
|
1562
1560
|
children: _jsx(Dropdown, {
|
|
1563
1561
|
trigger: ['click'],
|
|
@@ -1573,7 +1571,7 @@ var JoinData = function JoinData(props) {
|
|
|
1573
1571
|
icon: _jsx(FfPlus, {})
|
|
1574
1572
|
})
|
|
1575
1573
|
})
|
|
1576
|
-
}), _jsx(Tooltip, {
|
|
1574
|
+
}), !store.snapshotMode && _jsx(Tooltip, {
|
|
1577
1575
|
title: __('SqlQueryBuilder.del'),
|
|
1578
1576
|
children: _jsx(Button, {
|
|
1579
1577
|
disabled: meta.readonly,
|
|
@@ -1608,7 +1606,7 @@ var JoinData = function JoinData(props) {
|
|
|
1608
1606
|
type: ChangeType.expressions
|
|
1609
1607
|
});
|
|
1610
1608
|
}
|
|
1611
|
-
}), _jsx(Tooltip, {
|
|
1609
|
+
}), !store.snapshotMode && _jsx(Tooltip, {
|
|
1612
1610
|
title: __('SqlQueryBuilder.add'),
|
|
1613
1611
|
children: _jsx(Dropdown, {
|
|
1614
1612
|
trigger: ['click'],
|
|
@@ -1624,7 +1622,7 @@ var JoinData = function JoinData(props) {
|
|
|
1624
1622
|
icon: _jsx(FfPlus, {})
|
|
1625
1623
|
})
|
|
1626
1624
|
})
|
|
1627
|
-
}), _jsx(Tooltip, {
|
|
1625
|
+
}), !store.snapshotMode && _jsx(Tooltip, {
|
|
1628
1626
|
title: __('SqlQueryBuilder.del'),
|
|
1629
1627
|
children: _jsx(Button, {
|
|
1630
1628
|
disabled: meta.readonly,
|
|
@@ -1638,7 +1636,7 @@ var JoinData = function JoinData(props) {
|
|
|
1638
1636
|
})]
|
|
1639
1637
|
}, i);
|
|
1640
1638
|
}
|
|
1641
|
-
})), ((_meta$table1 = meta.table2) === null || _meta$table1 === void 0 ? void 0 : _meta$table1.name) && ((_meta$table10 = meta.table1) === null || _meta$table10 === void 0 ? void 0 : _meta$table10.name) && (((_meta$expressions2 = meta.expressions) === null || _meta$expressions2 === void 0 ? void 0 : _meta$expressions2.length) || 0) < 1 && _jsx(Tooltip, {
|
|
1639
|
+
})), !store.snapshotMode && ((_meta$table1 = meta.table2) === null || _meta$table1 === void 0 ? void 0 : _meta$table1.name) && ((_meta$table10 = meta.table1) === null || _meta$table10 === void 0 ? void 0 : _meta$table10.name) && (((_meta$expressions2 = meta.expressions) === null || _meta$expressions2 === void 0 ? void 0 : _meta$expressions2.length) || 0) < 1 && _jsx(Tooltip, {
|
|
1642
1640
|
title: __('SqlQueryBuilder.add'),
|
|
1643
1641
|
children: _jsx(Dropdown, {
|
|
1644
1642
|
trigger: ['click'],
|
|
@@ -1656,6 +1654,7 @@ var JoinData = function JoinData(props) {
|
|
|
1656
1654
|
})
|
|
1657
1655
|
}), columnsSelected && (((_store$showMainColumn = store.showMainColumn[groupIndex]) === null || _store$showMainColumn === void 0 ? void 0 : _store$showMainColumn.showColumn) || ((_store$showMainColumn2 = store.showMainColumn[groupIndex]) === null || _store$showMainColumn2 === void 0 ? void 0 : _store$showMainColumn2.index) < index) && (!store.isExit || store.isSubquery) && store.showFields && _jsx("div", {
|
|
1658
1656
|
className: "Sqb-TableColumns",
|
|
1657
|
+
"data-sqb-snapshot-allow": 'true',
|
|
1659
1658
|
onClick: selectColumns,
|
|
1660
1659
|
children: __('SqlQueryBuilder.columns')
|
|
1661
1660
|
})]
|
|
@@ -22,6 +22,7 @@ var PermissionTable = function PermissionTable(props) {
|
|
|
22
22
|
var _getHelper = getHelper(store.metaList[groupIndex].list, meta),
|
|
23
23
|
prevTables = _getHelper.prevTables;
|
|
24
24
|
function selectTable(e) {
|
|
25
|
+
if (store.snapshotMode) return;
|
|
25
26
|
var _getHelper2 = getHelper(store.metaList[groupIndex].list, meta),
|
|
26
27
|
ExistAboveGroupBy = _getHelper2.ExistAboveGroupBy,
|
|
27
28
|
prevList = _getHelper2.prevList,
|
|
@@ -14,6 +14,7 @@ var RowLimit = function RowLimit(props) {
|
|
|
14
14
|
var store = useStore();
|
|
15
15
|
var index = findIndex(store.metaList[groupIndex].list, meta);
|
|
16
16
|
function handleChange(inputValue) {
|
|
17
|
+
if (store.snapshotMode) return;
|
|
17
18
|
var newMeta = store.metaList[groupIndex].list.slice();
|
|
18
19
|
newMeta[index].limit = inputValue;
|
|
19
20
|
store.setMeta(newMeta, groupIndex);
|
|
@@ -200,7 +200,7 @@ var Sort = function Sort(props) {
|
|
|
200
200
|
onClick: function onClick() {
|
|
201
201
|
return handleSort(i);
|
|
202
202
|
},
|
|
203
|
-
children: [v.sort === SortEnum.asc ? _jsx(UpArrowIcon, {}) : _jsx(DownArrowIcon, {}), getName(v.expression), _jsx("span", {
|
|
203
|
+
children: [v.sort === SortEnum.asc ? _jsx(UpArrowIcon, {}) : _jsx(DownArrowIcon, {}), getName(v.expression), !store.snapshotMode && _jsx("span", {
|
|
204
204
|
style: {
|
|
205
205
|
fontSize: 0
|
|
206
206
|
},
|
|
@@ -212,7 +212,7 @@ var Sort = function Sort(props) {
|
|
|
212
212
|
}, i)
|
|
213
213
|
})
|
|
214
214
|
}, i);
|
|
215
|
-
}), _jsx("div", {
|
|
215
|
+
}), !store.snapshotMode && _jsx("div", {
|
|
216
216
|
className: "Sqb-TableName gray-name",
|
|
217
217
|
onClick: addSortColumn,
|
|
218
218
|
children: _jsx(AddIcon, {})
|
|
@@ -522,7 +522,7 @@ var GroupBy = function GroupBy(props) {
|
|
|
522
522
|
return handleUpdate(e, i);
|
|
523
523
|
},
|
|
524
524
|
children: [v.quotes && _jsx(_Fragment, {
|
|
525
|
-
children: store.groupByEnableAlias && _jsx(Tooltip, {
|
|
525
|
+
children: store.groupByEnableAlias && !store.snapshotMode && _jsx(Tooltip, {
|
|
526
526
|
title: !isValidSQLAlias(v === null || v === void 0 ? void 0 : v.fieldAlias) ? __('SqlQueryBuilder.aliasForRules') : __('SqlQueryBuilder.alias'),
|
|
527
527
|
children: _jsx(Button, {
|
|
528
528
|
className: cx(':Sqb-TableName-as :Sqb-TableName green-name', _defineProperty({}, 'isError', !isValidSQLAlias(v === null || v === void 0 ? void 0 : v.fieldAlias))),
|
|
@@ -537,7 +537,7 @@ var GroupBy = function GroupBy(props) {
|
|
|
537
537
|
}
|
|
538
538
|
})
|
|
539
539
|
})
|
|
540
|
-
}), "".concat(v.quotes, " ").concat(v.fieldAlias ? "as ".concat(v.fieldAlias) : ''), _jsx("span", {
|
|
540
|
+
}), "".concat(v.quotes, " ").concat(v.fieldAlias ? "as ".concat(v.fieldAlias) : ''), !store.snapshotMode && _jsx("span", {
|
|
541
541
|
style: {
|
|
542
542
|
fontSize: 0
|
|
543
543
|
},
|
|
@@ -549,7 +549,7 @@ var GroupBy = function GroupBy(props) {
|
|
|
549
549
|
})
|
|
550
550
|
})
|
|
551
551
|
}, i);
|
|
552
|
-
}), _jsx("div", {
|
|
552
|
+
}), !store.snapshotMode && _jsx("div", {
|
|
553
553
|
className: cx("Sqb-TableName green-name", {
|
|
554
554
|
notSelected: notBySelected
|
|
555
555
|
}),
|
|
@@ -421,7 +421,7 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
421
421
|
return handleUpdate(e, i);
|
|
422
422
|
},
|
|
423
423
|
children: [v.quotes && _jsx(_Fragment, {
|
|
424
|
-
children: store.groupByEnableAlias && _jsx(Tooltip, {
|
|
424
|
+
children: store.groupByEnableAlias && !store.snapshotMode && _jsx(Tooltip, {
|
|
425
425
|
title: !isValidSQLAlias(v === null || v === void 0 ? void 0 : v.fieldAlias) ? __('SqlQueryBuilder.aliasForRules') : __('SqlQueryBuilder.alias'),
|
|
426
426
|
children: _jsx(Button, {
|
|
427
427
|
className: cx(':Sqb-TableName-as :Sqb-TableName green-name', _defineProperty({}, 'isError', !isValidSQLAlias(v === null || v === void 0 ? void 0 : v.fieldAlias))),
|
|
@@ -436,7 +436,7 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
436
436
|
}
|
|
437
437
|
})
|
|
438
438
|
})
|
|
439
|
-
}), "".concat(v.quotes, " ").concat(v.fieldAlias ? "as ".concat(v.fieldAlias) : ''), _jsx("span", {
|
|
439
|
+
}), "".concat(v.quotes, " ").concat(v.fieldAlias ? "as ".concat(v.fieldAlias) : ''), !store.snapshotMode && _jsx("span", {
|
|
440
440
|
style: {
|
|
441
441
|
fontSize: 0
|
|
442
442
|
},
|
|
@@ -448,7 +448,7 @@ var SelectIndex = function SelectIndex(props) {
|
|
|
448
448
|
})
|
|
449
449
|
})
|
|
450
450
|
}, i);
|
|
451
|
-
}), _jsx("div", {
|
|
451
|
+
}), !store.snapshotMode && _jsx("div", {
|
|
452
452
|
className: cx("Sqb-TableName green-name", {
|
|
453
453
|
notSelected: notGroupSelected
|
|
454
454
|
}),
|
|
@@ -79,7 +79,7 @@ var TableData = function TableData(props) {
|
|
|
79
79
|
}, 0);
|
|
80
80
|
}, [meta]);
|
|
81
81
|
function selectTable(e) {
|
|
82
|
-
!meta.readonly && store.setPopup({
|
|
82
|
+
!meta.readonly && !store.snapshotMode && store.setPopup({
|
|
83
83
|
visible: true,
|
|
84
84
|
node: e.currentTarget,
|
|
85
85
|
content: _jsx(SelectTable, {
|
|
@@ -122,6 +122,7 @@ var TableData = function TableData(props) {
|
|
|
122
122
|
groupIndex: groupIndex,
|
|
123
123
|
table: meta.table,
|
|
124
124
|
metaIndex: 0,
|
|
125
|
+
readonly: store.snapshotMode,
|
|
125
126
|
data: columns,
|
|
126
127
|
onChange: function onChange(data, newMetaList) {
|
|
127
128
|
var _newMetaList = newMetaList || store.metaList[groupIndex].list.slice();
|
|
@@ -304,7 +305,7 @@ var TableData = function TableData(props) {
|
|
|
304
305
|
},
|
|
305
306
|
children: [subQuerySelected && _jsx(_Fragment, {
|
|
306
307
|
children: function () {
|
|
307
|
-
var showButton = store.tableEnableAlias || tableIsError() && isDel;
|
|
308
|
+
var showButton = !store.snapshotMode && (store.tableEnableAlias || tableIsError() && isDel);
|
|
308
309
|
var icon = isDel ? _jsx(ExclamationCircleFill, {}) : store.tableEnableAlias ? 'As' : '';
|
|
309
310
|
return showButton ? _jsx(Tooltip, {
|
|
310
311
|
title: __(tableIsError() ? isDel ? 'metabase.verify' : 'SqlQueryBuilder.repeatAlias' : 'SqlQueryBuilder.alias'),
|
|
@@ -346,7 +347,7 @@ var TableData = function TableData(props) {
|
|
|
346
347
|
onClick: selectTable,
|
|
347
348
|
children: [selected && _jsx(_Fragment, {
|
|
348
349
|
children: function () {
|
|
349
|
-
var showButton = store.tableEnableAlias || tableIsError() && isDel;
|
|
350
|
+
var showButton = !store.snapshotMode && (store.tableEnableAlias || tableIsError() && isDel);
|
|
350
351
|
var icon = isDel ? _jsx(ExclamationCircleFill, {}) : store.tableEnableAlias ? 'As' : '';
|
|
351
352
|
return showButton ? _jsx(Tooltip, {
|
|
352
353
|
title: __(tableIsError() ? isDel ? 'metabase.verify' : 'SqlQueryBuilder.repeatAlias' : 'SqlQueryBuilder.alias'),
|
|
@@ -378,7 +379,7 @@ var TableData = function TableData(props) {
|
|
|
378
379
|
}()
|
|
379
380
|
}), selected ? "".concat(meta.table.datasourceName, ".").concat(meta.table.name, " ").concat((_meta$table7 = meta.table) !== null && _meta$table7 !== void 0 && _meta$table7.alias && store.tableEnableAlias ? "as ".concat((_meta$table8 = meta.table) === null || _meta$table8 === void 0 ? void 0 : _meta$table8.alias) : '') : __('SqlQueryBuilder.pickTable')]
|
|
380
381
|
})
|
|
381
|
-
}), store.showSubquery && _jsx(Tooltip, {
|
|
382
|
+
}), store.showSubquery && (!store.snapshotMode || meta.isSubquery) && _jsx(Tooltip, {
|
|
382
383
|
title: __('SqlQueryBuilder.switchSubQuery'),
|
|
383
384
|
children: _jsx(Button, {
|
|
384
385
|
disabled: meta.readonly,
|
|
@@ -390,6 +391,7 @@ var TableData = function TableData(props) {
|
|
|
390
391
|
})
|
|
391
392
|
}), selected && store.showFields && (!store.isExit || store.isSubquery) && ((_store$showMainColumn = store.showMainColumn[groupIndex]) === null || _store$showMainColumn === void 0 ? void 0 : _store$showMainColumn.showColumn) && _jsx("div", {
|
|
392
393
|
className: "Sqb-TableColumns",
|
|
394
|
+
"data-sqb-snapshot-allow": 'true',
|
|
393
395
|
onClick: selectColumns,
|
|
394
396
|
children: __('SqlQueryBuilder.columns')
|
|
395
397
|
})]
|
|
@@ -20,7 +20,7 @@ var RowLimit = function RowLimit(props) {
|
|
|
20
20
|
groupIndex = props.groupIndex;
|
|
21
21
|
var store = useStore();
|
|
22
22
|
function selectOperator(e) {
|
|
23
|
-
!meta.readonly && store.setPopup({
|
|
23
|
+
!meta.readonly && !store.snapshotMode && store.setPopup({
|
|
24
24
|
visible: true,
|
|
25
25
|
node: e.currentTarget,
|
|
26
26
|
content: _jsx(SelectList, {
|