@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.
Files changed (49) hide show
  1. package/lib/cjs/components/dialog/formula-list/CaseWhenGroup.d.ts +2 -1
  2. package/lib/cjs/components/dialog/formula-list/CaseWhenGroup.js +7 -5
  3. package/lib/cjs/components/dialog/formula-list/LogicGroup.d.ts +2 -1
  4. package/lib/cjs/components/dialog/formula-list/LogicGroup.js +4 -2
  5. package/lib/cjs/components/dialog/formula-list/index.js +14 -9
  6. package/lib/cjs/components/dialog/select-column/index.d.ts +2 -1
  7. package/lib/cjs/components/dialog/select-column/index.js +10 -1
  8. package/lib/cjs/components/metabase/index.js +30 -2
  9. package/lib/cjs/components/modules/components/header.js +1 -1
  10. package/lib/cjs/components/modules/components/item-name.js +4 -1
  11. package/lib/cjs/components/modules/components/item-wrapper.js +1 -1
  12. package/lib/cjs/components/modules/components/meta-icon.js +4 -2
  13. package/lib/cjs/components/modules/custom-column.js +2 -2
  14. package/lib/cjs/components/modules/join-data.js +40 -41
  15. package/lib/cjs/components/modules/permission-table.js +1 -0
  16. package/lib/cjs/components/modules/row-limit.js +1 -0
  17. package/lib/cjs/components/modules/sort.js +2 -2
  18. package/lib/cjs/components/modules/summarize/group-by.js +3 -3
  19. package/lib/cjs/components/modules/summarize/select-index.js +3 -3
  20. package/lib/cjs/components/modules/table-data.js +6 -4
  21. package/lib/cjs/components/modules/union.js +1 -1
  22. package/lib/cjs/hooks/use-state.js +66 -52
  23. package/lib/cjs/index.js +7 -2
  24. package/lib/cjs/types.d.ts +1 -0
  25. package/lib/es/components/dialog/formula-list/CaseWhenGroup.d.ts +2 -1
  26. package/lib/es/components/dialog/formula-list/CaseWhenGroup.js +7 -5
  27. package/lib/es/components/dialog/formula-list/LogicGroup.d.ts +2 -1
  28. package/lib/es/components/dialog/formula-list/LogicGroup.js +4 -2
  29. package/lib/es/components/dialog/formula-list/index.js +14 -9
  30. package/lib/es/components/dialog/select-column/index.d.ts +2 -1
  31. package/lib/es/components/dialog/select-column/index.js +10 -1
  32. package/lib/es/components/metabase/index.js +30 -2
  33. package/lib/es/components/modules/components/header.js +1 -1
  34. package/lib/es/components/modules/components/item-name.js +4 -1
  35. package/lib/es/components/modules/components/item-wrapper.js +1 -1
  36. package/lib/es/components/modules/components/meta-icon.js +4 -2
  37. package/lib/es/components/modules/custom-column.js +2 -2
  38. package/lib/es/components/modules/join-data.js +40 -41
  39. package/lib/es/components/modules/permission-table.js +1 -0
  40. package/lib/es/components/modules/row-limit.js +1 -0
  41. package/lib/es/components/modules/sort.js +2 -2
  42. package/lib/es/components/modules/summarize/group-by.js +3 -3
  43. package/lib/es/components/modules/summarize/select-index.js +3 -3
  44. package/lib/es/components/modules/table-data.js +6 -4
  45. package/lib/es/components/modules/union.js +1 -1
  46. package/lib/es/hooks/use-state.js +66 -52
  47. package/lib/es/index.js +7 -2
  48. package/lib/es/types.d.ts +1 -0
  49. 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
- return openSqbRightClickMenu(store, e);
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
- }), !readonly && typeof onOk === 'function' ? _jsx(Button, {
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: isError ? _jsx(Tooltip, {
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
- return handleClick(v);
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(Tooltip, {
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, {