@fileverse-dev/fortune-react 1.0.2-mod-23 → 1.0.2-mod-20-patch-2

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/dist/index.js CHANGED
@@ -6,7 +6,6 @@ var fortuneCore = require('@fileverse-dev/fortune-core');
6
6
  var React = require('react');
7
7
  var produce = require('immer');
8
8
  var _ = require('lodash');
9
- var ui = require('@fileverse/ui');
10
9
  var regeneratorRuntime = require('regenerator-runtime');
11
10
 
12
11
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -1240,39 +1239,35 @@ var Dialog = function Dialog(_ref) {
1240
1239
  className: "fortune-dialog",
1241
1240
  style: containerStyle
1242
1241
  }, /*#__PURE__*/React__default['default'].createElement("div", {
1243
- className: "flex items-center justify-end border-b color-border-default py-3 px-6"
1244
- }, /*#__PURE__*/React__default['default'].createElement(ui.IconButton, {
1245
- icon: "X",
1246
- variant: "ghost",
1242
+ className: "fortune-modal-dialog-header"
1243
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
1244
+ className: "fortune-modal-dialog-icon-close",
1247
1245
  onClick: onCancel,
1248
1246
  tabIndex: 0
1249
- })), /*#__PURE__*/React__default['default'].createElement("div", {
1250
- className: "px-6 pb-6 pt-4 text-body-sm",
1247
+ }, /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
1248
+ name: "close",
1249
+ style: {
1250
+ padding: 7,
1251
+ cursor: "pointer"
1252
+ }
1253
+ }))), /*#__PURE__*/React__default['default'].createElement("div", {
1254
+ className: "fortune-dialog-box-content",
1251
1255
  style: contentStyle
1252
1256
  }, children), type != null && (/*#__PURE__*/React__default['default'].createElement("div", {
1253
- className: "px-6 pb-6 flex flex-row gap-2 justify-end"
1254
- }, type === "ok" ? (/*#__PURE__*/React__default['default'].createElement(ui.Button, {
1255
- variant: "default",
1256
- style: {
1257
- minWidth: "80px"
1258
- },
1257
+ className: "fortune-dialog-box-button-container"
1258
+ }, type === "ok" ? (/*#__PURE__*/React__default['default'].createElement("div", {
1259
+ className: "fortune-message-box-button button-default",
1259
1260
  onClick: onOk,
1260
1261
  tabIndex: 0
1261
- }, button.confirm)) : (/*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(ui.Button, {
1262
- variant: "secondary",
1263
- style: {
1264
- minWidth: "80px"
1265
- },
1266
- onClick: onCancel,
1267
- tabIndex: 0
1268
- }, button.cancel), /*#__PURE__*/React__default['default'].createElement(ui.Button, {
1269
- variant: "default",
1270
- style: {
1271
- minWidth: "80px"
1272
- },
1262
+ }, button.confirm)) : (/*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement("div", {
1263
+ className: "fortune-message-box-button button-primary",
1273
1264
  onClick: onOk,
1274
1265
  tabIndex: 0
1275
- }, button.confirm))))));
1266
+ }, button.confirm), /*#__PURE__*/React__default['default'].createElement("div", {
1267
+ className: "fortune-message-box-button button-default",
1268
+ onClick: onCancel,
1269
+ tabIndex: 0
1270
+ }, button.cancel))))));
1276
1271
  };
1277
1272
 
1278
1273
  var MessageBox = function MessageBox(_ref) {
@@ -1284,7 +1279,15 @@ var MessageBox = function MessageBox(_ref) {
1284
1279
  return /*#__PURE__*/React__default['default'].createElement(Dialog, {
1285
1280
  type: type,
1286
1281
  onOk: onOk,
1287
- onCancel: onCancel
1282
+ onCancel: onCancel,
1283
+ contentStyle: {
1284
+ width: 300,
1285
+ paddingTop: 20,
1286
+ paddingBottom: 30,
1287
+ display: "flex",
1288
+ justifyContent: "center",
1289
+ alignItems: "center"
1290
+ }
1288
1291
  }, children);
1289
1292
  };
1290
1293
 
@@ -1358,7 +1361,8 @@ var SearchReplace = function SearchReplace(_ref) {
1358
1361
  setContext = _useContext.setContext,
1359
1362
  refs = _useContext.refs;
1360
1363
  var _locale = fortuneCore.locale(context),
1361
- findAndReplace = _locale.findAndReplace;
1364
+ findAndReplace = _locale.findAndReplace,
1365
+ button = _locale.button;
1362
1366
  var _useState = React.useState(""),
1363
1367
  _useState2 = _slicedToArray(_useState, 2),
1364
1368
  searchText = _useState2[0],
@@ -1367,27 +1371,28 @@ var SearchReplace = function SearchReplace(_ref) {
1367
1371
  _useState4 = _slicedToArray(_useState3, 2),
1368
1372
  replaceText = _useState4[0],
1369
1373
  setReplaceText = _useState4[1];
1370
- var _useState5 = React.useState([]),
1374
+ var _useState5 = React.useState(context.showReplace),
1371
1375
  _useState6 = _slicedToArray(_useState5, 2),
1372
- searchResult = _useState6[0],
1373
- setSearchResult = _useState6[1];
1374
- var _useState7 = React.useState(),
1376
+ showReplace = _useState6[0],
1377
+ setShowReplace = _useState6[1];
1378
+ var _useState7 = React.useState([]),
1375
1379
  _useState8 = _slicedToArray(_useState7, 2),
1376
- selectedCell = _useState8[0],
1377
- setSelectedCell = _useState8[1];
1380
+ searchResult = _useState8[0],
1381
+ setSearchResult = _useState8[1];
1382
+ var _useState9 = React.useState(),
1383
+ _useState0 = _slicedToArray(_useState9, 2),
1384
+ selectedCell = _useState0[0],
1385
+ setSelectedCell = _useState0[1];
1378
1386
  var _useAlert = useAlert(),
1379
1387
  showAlert = _useAlert.showAlert;
1380
- var tableContainerRef = React.useRef(null);
1381
- var searchInputRef = React.useRef(null);
1382
- var replaceInputRef = React.useRef(null);
1383
- var _useState9 = React.useState({
1388
+ var _useState1 = React.useState({
1384
1389
  regCheck: false,
1385
1390
  wordCheck: false,
1386
1391
  caseCheck: false
1387
1392
  }),
1388
- _useState0 = _slicedToArray(_useState9, 2),
1389
- checkMode = _useState0[0],
1390
- checkModeReplace = _useState0[1];
1393
+ _useState10 = _slicedToArray(_useState1, 2),
1394
+ checkMode = _useState10[0],
1395
+ checkModeReplace = _useState10[1];
1391
1396
  var closeDialog = React.useCallback(function () {
1392
1397
  ___default['default'].set(refs.globalCache, "searchDialog.mouseEnter", false);
1393
1398
  setContext(function (draftCtx) {
@@ -1422,110 +1427,98 @@ var SearchReplace = function SearchReplace(_ref) {
1422
1427
  fortuneCore.onSearchDialogMoveStart(refs.globalCache, nativeEvent, getContainer());
1423
1428
  e.stopPropagation();
1424
1429
  }
1425
- }, /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement("div", {
1426
- className: "flex items-center justify-between border-b color-border-default py-3 px-6"
1427
- }, /*#__PURE__*/React__default['default'].createElement("h3", {
1428
- className: "text-heading-sm"
1429
- }, "Find and replace"), /*#__PURE__*/React__default['default'].createElement(ui.IconButton, {
1430
- icon: "X",
1431
- variant: "ghost",
1430
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
1431
+ className: "container",
1432
+ onMouseDown: function onMouseDown(e) {
1433
+ return e.stopPropagation();
1434
+ }
1435
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
1436
+ className: "icon-close fortune-modal-dialog-icon-close",
1432
1437
  onClick: closeDialog,
1433
1438
  tabIndex: 0
1439
+ }, /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
1440
+ name: "close",
1441
+ style: {
1442
+ padding: 7,
1443
+ cursor: "pointer"
1444
+ }
1434
1445
  })), /*#__PURE__*/React__default['default'].createElement("div", {
1435
- className: "px-6 pb-6 pt-4"
1446
+ className: "tabBox"
1447
+ }, /*#__PURE__*/React__default['default'].createElement("span", {
1448
+ id: "searchTab",
1449
+ className: showReplace ? "" : "on",
1450
+ onClick: function onClick() {
1451
+ return setShowReplace(false);
1452
+ },
1453
+ tabIndex: 0
1454
+ }, findAndReplace.find), /*#__PURE__*/React__default['default'].createElement("span", {
1455
+ id: "replaceTab",
1456
+ className: showReplace ? "on" : "",
1457
+ onClick: function onClick() {
1458
+ return setShowReplace(true);
1459
+ },
1460
+ tabIndex: 0
1461
+ }, findAndReplace.replace)), /*#__PURE__*/React__default['default'].createElement("div", {
1462
+ className: "ctBox"
1436
1463
  }, /*#__PURE__*/React__default['default'].createElement("div", {
1437
- className: "flex flex-col gap-4"
1464
+ className: "row"
1438
1465
  }, /*#__PURE__*/React__default['default'].createElement("div", {
1439
- className: "flex flex-col gap-4"
1466
+ className: "inputBox"
1440
1467
  }, /*#__PURE__*/React__default['default'].createElement("div", {
1441
- id: "searchInput",
1442
- className: "flex flex-row gap-2 items-center"
1443
- }, /*#__PURE__*/React__default['default'].createElement("span", {
1444
- className: "find-replace-label text-heading-xsm"
1445
- }, findAndReplace.findTextbox, "\uFF1A"), /*#__PURE__*/React__default['default'].createElement(ui.TextField, {
1446
- ref: searchInputRef,
1468
+ className: "textboxs",
1469
+ id: "searchInput"
1470
+ }, findAndReplace.findTextbox, "\uFF1A", /*#__PURE__*/React__default['default'].createElement("input", {
1447
1471
  className: "formulaInputFocus",
1448
1472
  autoFocus: true,
1449
1473
  spellCheck: "false",
1450
1474
  onKeyDown: function onKeyDown(e) {
1451
1475
  return e.stopPropagation();
1452
1476
  },
1453
- onMouseDown: function onMouseDown(e) {
1454
- var _searchInputRef$curre;
1455
- if (e.target === searchInputRef.current || ((_searchInputRef$curre = searchInputRef.current) === null || _searchInputRef$curre === void 0 ? void 0 : _searchInputRef$curre.contains(e.target))) {
1456
- e.stopPropagation();
1457
- }
1458
- },
1459
1477
  value: searchText,
1460
1478
  onChange: function onChange(e) {
1461
- if (e.target.value.length === 0) {
1462
- setSearchResult([]);
1463
- }
1464
- setSearchText(e.target.value);
1479
+ return setSearchText(e.target.value);
1465
1480
  }
1466
- })), /*#__PURE__*/React__default['default'].createElement("div", {
1467
- id: "replaceInput",
1468
- className: "flex flex-row gap-2 items-center"
1469
- }, /*#__PURE__*/React__default['default'].createElement("span", {
1470
- className: "find-replace-label text-heading-xsm"
1471
- }, findAndReplace.replaceTextbox, "\uFF1A"), /*#__PURE__*/React__default['default'].createElement(ui.TextField, {
1472
- ref: replaceInputRef,
1481
+ })), showReplace && (/*#__PURE__*/React__default['default'].createElement("div", {
1482
+ className: "textboxs",
1483
+ id: "replaceInput"
1484
+ }, findAndReplace.replaceTextbox, "\uFF1A", /*#__PURE__*/React__default['default'].createElement("input", {
1473
1485
  className: "formulaInputFocus",
1474
1486
  spellCheck: "false",
1475
1487
  onKeyDown: function onKeyDown(e) {
1476
1488
  return e.stopPropagation();
1477
1489
  },
1478
- onMouseDown: function onMouseDown(e) {
1479
- var _replaceInputRef$curr;
1480
- if (e.target === replaceInputRef.current || ((_replaceInputRef$curr = replaceInputRef.current) === null || _replaceInputRef$curr === void 0 ? void 0 : _replaceInputRef$curr.contains(e.target))) {
1481
- e.stopPropagation();
1482
- }
1483
- },
1484
1490
  value: replaceText,
1485
1491
  onChange: function onChange(e) {
1486
1492
  return setReplaceText(e.target.value);
1487
1493
  }
1488
- }))), /*#__PURE__*/React__default['default'].createElement("div", {
1489
- className: "flex flex-row gap-2"
1490
- }, /*#__PURE__*/React__default['default'].createElement("div", {
1491
- className: "find-replace-label"
1492
- }), /*#__PURE__*/React__default['default'].createElement("div", {
1493
- className: "flex flex-col gap-2 text-body-sm"
1494
+ })))), /*#__PURE__*/React__default['default'].createElement("div", {
1495
+ className: "checkboxs"
1494
1496
  }, /*#__PURE__*/React__default['default'].createElement("div", {
1495
- id: "regCheck",
1496
- className: "flex flex-row gap-2 items-center"
1497
- }, /*#__PURE__*/React__default['default'].createElement(ui.Checkbox, {
1498
- className: "border-2",
1499
- checked: checkMode.regCheck,
1500
- onCheckedChange: function onCheckedChange(e) {
1497
+ id: "regCheck"
1498
+ }, /*#__PURE__*/React__default['default'].createElement("input", {
1499
+ type: "checkbox",
1500
+ onChange: function onChange(e) {
1501
1501
  return setCheckMode("regCheck", e.target.checked);
1502
1502
  }
1503
1503
  }), /*#__PURE__*/React__default['default'].createElement("span", null, findAndReplace.regexTextbox)), /*#__PURE__*/React__default['default'].createElement("div", {
1504
- id: "caseCheck",
1505
- className: "flex flex-row gap-2 items-center"
1506
- }, /*#__PURE__*/React__default['default'].createElement(ui.Checkbox, {
1507
- className: "border-2",
1508
- checked: checkMode.caseCheck,
1509
- onCheckedChange: function onCheckedChange(e) {
1510
- return setCheckMode("caseCheck", e.target.checked);
1511
- }
1512
- }), /*#__PURE__*/React__default['default'].createElement("span", null, findAndReplace.distinguishTextbox)), /*#__PURE__*/React__default['default'].createElement("div", {
1513
- id: "wordCheck",
1514
- className: "flex flex-row gap-2 items-center"
1515
- }, /*#__PURE__*/React__default['default'].createElement(ui.Checkbox, {
1516
- className: "border-2",
1517
- checked: checkMode.wordCheck,
1518
- onCheckedChange: function onCheckedChange(e) {
1504
+ id: "wordCheck"
1505
+ }, /*#__PURE__*/React__default['default'].createElement("input", {
1506
+ type: "checkbox",
1507
+ onChange: function onChange(e) {
1519
1508
  return setCheckMode("wordCheck", e.target.checked);
1520
1509
  }
1521
- }), /*#__PURE__*/React__default['default'].createElement("span", null, findAndReplace.wholeTextbox)))), /*#__PURE__*/React__default['default'].createElement(ui.Divider, {
1522
- className: "w-full border-t-[1px]"
1523
- }), /*#__PURE__*/React__default['default'].createElement("div", {
1524
- className: "flex flex-row gap-2 justify-center items-center mb-4"
1525
- }, /*#__PURE__*/React__default['default'].createElement(ui.Button, {
1510
+ }), /*#__PURE__*/React__default['default'].createElement("span", null, findAndReplace.wholeTextbox)), /*#__PURE__*/React__default['default'].createElement("div", {
1511
+ id: "caseCheck"
1512
+ }, /*#__PURE__*/React__default['default'].createElement("input", {
1513
+ type: "checkbox",
1514
+ onChange: function onChange(e) {
1515
+ return setCheckMode("caseCheck", e.target.checked);
1516
+ }
1517
+ }), /*#__PURE__*/React__default['default'].createElement("span", null, findAndReplace.distinguishTextbox)))), /*#__PURE__*/React__default['default'].createElement("div", {
1518
+ className: "btnBox"
1519
+ }, showReplace && (/*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement("div", {
1526
1520
  id: "replaceAllBtn",
1527
- variant: "secondary",
1528
- className: "min-w-fit",
1521
+ className: "fortune-message-box-button button-default",
1529
1522
  onClick: function onClick() {
1530
1523
  setContext(function (draftCtx) {
1531
1524
  setSelectedCell(undefined);
@@ -1533,12 +1526,10 @@ var SearchReplace = function SearchReplace(_ref) {
1533
1526
  showAlert(alertMsg);
1534
1527
  });
1535
1528
  },
1536
- tabIndex: 0,
1537
- disabled: searchText.length === 0 || replaceText.length === 0
1538
- }, findAndReplace.allReplaceBtn), /*#__PURE__*/React__default['default'].createElement(ui.Button, {
1529
+ tabIndex: 0
1530
+ }, findAndReplace.allReplaceBtn), /*#__PURE__*/React__default['default'].createElement("div", {
1539
1531
  id: "replaceBtn",
1540
- variant: "secondary",
1541
- className: "min-w-fit",
1532
+ className: "fortune-message-box-button button-default",
1542
1533
  onClick: function onClick() {
1543
1534
  return setContext(function (draftCtx) {
1544
1535
  setSelectedCell(undefined);
@@ -1548,12 +1539,10 @@ var SearchReplace = function SearchReplace(_ref) {
1548
1539
  }
1549
1540
  });
1550
1541
  },
1551
- tabIndex: 0,
1552
- disabled: searchText.length === 0 || replaceText.length === 0
1553
- }, findAndReplace.replaceBtn), /*#__PURE__*/React__default['default'].createElement(ui.Button, {
1542
+ tabIndex: 0
1543
+ }, findAndReplace.replaceBtn))), /*#__PURE__*/React__default['default'].createElement("div", {
1554
1544
  id: "searchAllBtn",
1555
- variant: "secondary",
1556
- className: "min-w-fit",
1545
+ className: "fortune-message-box-button button-default",
1557
1546
  onClick: function onClick() {
1558
1547
  return setContext(function (draftCtx) {
1559
1548
  setSelectedCell(undefined);
@@ -1563,12 +1552,10 @@ var SearchReplace = function SearchReplace(_ref) {
1563
1552
  if (___default['default'].isEmpty(res)) showAlert(findAndReplace.noFindTip);
1564
1553
  });
1565
1554
  },
1566
- tabIndex: 0,
1567
- disabled: searchText.length === 0
1568
- }, findAndReplace.allFindBtn), /*#__PURE__*/React__default['default'].createElement(ui.Button, {
1555
+ tabIndex: 0
1556
+ }, findAndReplace.allFindBtn), /*#__PURE__*/React__default['default'].createElement("div", {
1569
1557
  id: "searchNextBtn",
1570
- variant: "default",
1571
- className: "min-w-fit",
1558
+ className: "fortune-message-box-button button-default",
1572
1559
  onClick: function onClick() {
1573
1560
  return setContext(function (draftCtx) {
1574
1561
  setSearchResult([]);
@@ -1576,45 +1563,23 @@ var SearchReplace = function SearchReplace(_ref) {
1576
1563
  if (alertMsg != null) showAlert(alertMsg);
1577
1564
  });
1578
1565
  },
1579
- tabIndex: 0,
1580
- disabled: searchText.length === 0
1581
- }, findAndReplace.findBtn))), searchResult.length > 0 && (/*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(ui.Divider, {
1582
- className: "w-full border-t-[1px] mb-4"
1583
- }), /*#__PURE__*/React__default['default'].createElement("div", {
1584
- ref: tableContainerRef,
1585
- className: "mb-6 table-container max-h-[300px] overflow-y-auto",
1586
- onMouseDown: function onMouseDown(e) {
1587
- var _tableContainerRef$cu;
1588
- if (e.target === tableContainerRef.current || ((_tableContainerRef$cu = tableContainerRef.current) === null || _tableContainerRef$cu === void 0 ? void 0 : _tableContainerRef$cu.contains(e.target))) {
1589
- var _tableContainerRef$cu2;
1590
- e.stopPropagation();
1591
- (_tableContainerRef$cu2 = tableContainerRef.current) === null || _tableContainerRef$cu2 === void 0 ? void 0 : _tableContainerRef$cu2.focus();
1592
- }
1593
- },
1594
- onWheel: function onWheel(e) {
1595
- e.preventDefault();
1596
- e.stopPropagation();
1597
- if (tableContainerRef.current) {
1598
- tableContainerRef.current.scrollTop += e.deltaY;
1599
- }
1600
- },
1601
- onTouchStart: function onTouchStart(e) {
1602
- e.stopPropagation();
1603
- },
1604
- onTouchMove: function onTouchMove(e) {
1605
- e.stopPropagation();
1606
- },
1607
1566
  tabIndex: 0
1608
- }, /*#__PURE__*/React__default['default'].createElement(ui.Table, {
1567
+ }, findAndReplace.findBtn))), /*#__PURE__*/React__default['default'].createElement("div", {
1568
+ className: "close-button fortune-message-box-button button-default",
1569
+ onClick: closeDialog,
1570
+ tabIndex: 0
1571
+ }, button.close), searchResult.length > 0 && (/*#__PURE__*/React__default['default'].createElement("div", {
1609
1572
  id: "searchAllbox"
1610
- }, /*#__PURE__*/React__default['default'].createElement(ui.TableHeader, {
1611
- className: "color-bg-secondary"
1612
- }, /*#__PURE__*/React__default['default'].createElement(ui.TableRow, null, /*#__PURE__*/React__default['default'].createElement(ui.TableHead, null, findAndReplace.searchTargetSheet), /*#__PURE__*/React__default['default'].createElement(ui.TableHead, null, findAndReplace.searchTargetCell), /*#__PURE__*/React__default['default'].createElement(ui.TableHead, null, findAndReplace.searchTargetValue))), /*#__PURE__*/React__default['default'].createElement(ui.TableBody, null, searchResult.map(function (v) {
1613
- return /*#__PURE__*/React__default['default'].createElement(ui.TableRow, {
1614
- className: ui.cn(___default['default'].isEqual(selectedCell, {
1573
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
1574
+ className: "boxTitle"
1575
+ }, /*#__PURE__*/React__default['default'].createElement("span", null, findAndReplace.searchTargetSheet), /*#__PURE__*/React__default['default'].createElement("span", null, findAndReplace.searchTargetCell), /*#__PURE__*/React__default['default'].createElement("span", null, findAndReplace.searchTargetValue)), /*#__PURE__*/React__default['default'].createElement("div", {
1576
+ className: "boxMain"
1577
+ }, searchResult.map(function (v) {
1578
+ return /*#__PURE__*/React__default['default'].createElement("div", {
1579
+ className: "boxItem ".concat(___default['default'].isEqual(selectedCell, {
1615
1580
  r: v.r,
1616
1581
  c: v.c
1617
- }) ? "color-bg-default-selected" : ""),
1582
+ }) ? "on" : ""),
1618
1583
  key: v.cellPosition,
1619
1584
  onClick: function onClick() {
1620
1585
  setContext(function (draftCtx) {
@@ -1630,14 +1595,8 @@ var SearchReplace = function SearchReplace(_ref) {
1630
1595
  });
1631
1596
  },
1632
1597
  tabIndex: 0
1633
- }, /*#__PURE__*/React__default['default'].createElement(ui.TableCell, {
1634
- className: "find-replace-table-cell"
1635
- }, v.sheetName), /*#__PURE__*/React__default['default'].createElement(ui.TableCell, {
1636
- className: "find-replace-table-cell"
1637
- }, v.cellPosition), /*#__PURE__*/React__default['default'].createElement(ui.TableCell, {
1638
- className: "find-replace-table-cell"
1639
- }, v.value));
1640
- })))))))));
1598
+ }, /*#__PURE__*/React__default['default'].createElement("span", null, v.sheetName), /*#__PURE__*/React__default['default'].createElement("span", null, v.cellPosition), /*#__PURE__*/React__default['default'].createElement("span", null, v.value));
1599
+ }))))));
1641
1600
  };
1642
1601
 
1643
1602
  var LinkEditCard = function LinkEditCard(_ref) {
@@ -7450,65 +7409,6 @@ var ContextMenu = function ContextMenu() {
7450
7409
  key: "divider-".concat(i)
7451
7410
  });
7452
7411
  }
7453
- if (name === "freeze-row") {
7454
- var freezeState = fortuneCore.getFreezeState(context);
7455
- var isFrozen = freezeState.isRowFrozen;
7456
- var isEntireRowSelected = (selection === null || selection === void 0 ? void 0 : selection.row_select) === true;
7457
- if (!isEntireRowSelected) return null;
7458
- return /*#__PURE__*/React__default['default'].createElement(Menu, {
7459
- key: "freeze-row",
7460
- onClick: function onClick() {
7461
- setContext(function (draftCtx) {
7462
- if (isFrozen) {
7463
- fortuneCore.toggleFreeze(draftCtx, "unfreeze-row");
7464
- } else {
7465
- fortuneCore.toggleFreeze(draftCtx, "row");
7466
- }
7467
- draftCtx.contextMenu = {};
7468
- });
7469
- }
7470
- }, /*#__PURE__*/React__default['default'].createElement("div", {
7471
- className: "context-item"
7472
- }, /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
7473
- name: "freeze-flv",
7474
- width: 18,
7475
- height: 18,
7476
- style: {
7477
- marginTop: "4px",
7478
- marginRight: "4px"
7479
- }
7480
- }), isFrozen ? "Unfreeze row" : "Freeze to current row"));
7481
- }
7482
- if (name === "freeze-column") {
7483
- var _freezeState = fortuneCore.getFreezeState(context);
7484
- var _isFrozen = _freezeState.isColFrozen;
7485
- var isEntireColumnSelected = (selection === null || selection === void 0 ? void 0 : selection.column_select) === true;
7486
- if (!isEntireColumnSelected) return null;
7487
- return /*#__PURE__*/React__default['default'].createElement(Menu, {
7488
- key: "freeze-column",
7489
- onClick: function onClick() {
7490
- setContext(function (draftCtx) {
7491
- if (_isFrozen) {
7492
- fortuneCore.toggleFreeze(draftCtx, "unfreeze-column");
7493
- } else {
7494
- fortuneCore.toggleFreeze(draftCtx, "column");
7495
- fortuneCore.jfrefreshgrid(draftCtx, null, undefined, false);
7496
- }
7497
- draftCtx.contextMenu = {};
7498
- });
7499
- }
7500
- }, /*#__PURE__*/React__default['default'].createElement("div", {
7501
- className: "context-item"
7502
- }, /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
7503
- name: "freeze-flv",
7504
- width: 18,
7505
- height: 18,
7506
- style: {
7507
- marginTop: "4px",
7508
- marginRight: "4px"
7509
- }
7510
- }), /*#__PURE__*/React__default['default'].createElement("p", null, _isFrozen ? "Unfreeze column" : "Freeze to current column")));
7511
- }
7512
7412
  if (name === "comment") {
7513
7413
  return /*#__PURE__*/React__default['default'].createElement(Menu, {
7514
7414
  key: name,
@@ -9644,20 +9544,6 @@ var SVGDefines = function SVGDefines(_ref) {
9644
9544
  "clip-rule": "evenodd",
9645
9545
  d: "M3.75 1.5C3.15326 1.5 2.58097 1.73705 2.15901 2.15901C1.73705 2.58097 1.5 3.15326 1.5 3.75V15.75C1.5 16.0533 1.68273 16.3268 1.96299 16.4429C2.24324 16.559 2.56583 16.4948 2.78033 16.2803L5.56066 13.5H14.25C14.8467 13.5 15.419 13.2629 15.841 12.841C16.2629 12.419 16.5 11.8467 16.5 11.25V3.75C16.5 3.15326 16.2629 2.58097 15.841 2.15901C15.419 1.73705 14.8467 1.5 14.25 1.5H3.75ZM3.21967 3.21967C3.36032 3.07902 3.55109 3 3.75 3H14.25C14.4489 3 14.6397 3.07902 14.7803 3.21967C14.921 3.36032 15 3.55109 15 3.75V11.25C15 11.4489 14.921 11.6397 14.7803 11.7803C14.6397 11.921 14.4489 12 14.25 12H5.25C5.05109 12 4.86032 12.079 4.71967 12.2197L3 13.9393V3.75C3 3.55109 3.07902 3.36032 3.21967 3.21967Z",
9646
9546
  fill: "#363B3F"
9647
- }))), /*#__PURE__*/React__default['default'].createElement("symbol", {
9648
- id: "freeze-flv",
9649
- viewBox: "0 0 24 24"
9650
- }, /*#__PURE__*/React__default['default'].createElement("svg", {
9651
- width: "18",
9652
- height: "16",
9653
- viewBox: "0 0 18 16",
9654
- fill: "none",
9655
- xmlns: "http://www.w3.org/2000/svg"
9656
- }, /*#__PURE__*/React__default['default'].createElement("path", {
9657
- "fill-rule": "evenodd",
9658
- "clip-rule": "evenodd",
9659
- d: "M13.4208 1.58557C13.6061 1.21509 13.4559 0.764586 13.0854 0.579344C12.7149 0.394102 12.2644 0.54427 12.0792 0.914754L11.4375 2.19811L11.1708 1.66475C10.9856 1.29427 10.5351 1.1441 10.1646 1.32934C9.79411 1.51459 9.64394 1.96509 9.82918 2.33557L10.599 3.87516L10.0365 5.00016H7.96353L7.40103 3.87516L8.17083 2.33557C8.35607 1.96509 8.2059 1.51459 7.83541 1.32934C7.46493 1.1441 7.01443 1.29427 6.82918 1.66475L6.5625 2.19811L5.92082 0.914754C5.73558 0.54427 5.28508 0.394102 4.91459 0.579344C4.54411 0.764586 4.39394 1.21509 4.57918 1.58557L5.22086 2.86893L4.63417 2.76226C4.22664 2.68817 3.8362 2.95847 3.7621 3.366C3.688 3.77353 3.95831 4.16397 4.36584 4.23807L6.05939 4.54598L6.66148 5.75016L5.91147 7.25016H4.49999L3.6 6.05018C3.35147 5.71881 2.88137 5.65165 2.55 5.90018C2.21863 6.14871 2.15147 6.61881 2.4 6.95018L2.62499 7.25016H1.5C1.08579 7.25016 0.75 7.58595 0.75 8.00016C0.75 8.41438 1.08579 8.75016 1.5 8.75016H2.62501L2.4 9.05018C2.15147 9.38155 2.21863 9.85165 2.55 10.1002C2.88137 10.3487 3.35147 10.2816 3.6 9.95018L4.50001 8.75016H5.91148L6.66148 10.2502L6.05938 11.4544L4.36584 11.7623C3.95831 11.8364 3.688 12.2268 3.7621 12.6344C3.8362 13.0419 4.22664 13.3122 4.63417 13.2381L5.22085 13.1314L4.57918 14.4148C4.39394 14.7852 4.54411 15.2357 4.91459 15.421C5.28508 15.6062 5.73558 15.4561 5.92082 15.0856L6.5625 13.8022L6.82918 14.3356C7.01443 14.7061 7.46493 14.8562 7.83541 14.671C8.2059 14.4858 8.35607 14.0353 8.17083 13.6648L7.40102 12.1252L7.96352 11.0002H10.0365L10.599 12.1252L9.82918 13.6648C9.64394 14.0353 9.79411 14.4858 10.1646 14.671C10.5351 14.8562 10.9856 14.7061 11.1708 14.3356L11.4375 13.8022L12.0792 15.0856C12.2644 15.4561 12.7149 15.6062 13.0854 15.421C13.4559 15.2358 13.6061 14.7853 13.4208 14.4148L12.7791 13.1314L13.3658 13.2381C13.7734 13.3122 14.1638 13.0419 14.2379 12.6344C14.312 12.2268 14.0417 11.8364 13.6342 11.7623L11.9406 11.4544L11.3385 10.2502L12.0885 8.75018H13.5L14.4 9.95018C14.6485 10.2816 15.1186 10.3487 15.45 10.1002C15.7814 9.85165 15.8485 9.38155 15.6 9.05018L15.375 8.75018H16.5C16.9142 8.75018 17.25 8.4144 17.25 8.00018C17.25 7.58597 16.9142 7.25018 16.5 7.25018H15.375L15.6 6.95018C15.8485 6.61881 15.7814 6.14871 15.45 5.90018C15.1186 5.65165 14.6485 5.71881 14.4 6.05018L13.5 7.25018H12.0885L11.3385 5.75016L11.9406 4.54599L13.6342 4.23807C14.0417 4.16397 14.312 3.77353 14.2379 3.366C14.1638 2.95847 13.7734 2.68817 13.3658 2.76226L12.7791 2.86893L13.4208 1.58557ZM7.96353 6.50016L7.21353 8.00016L7.96354 9.50018H10.0365L10.7865 8.00018L10.0365 6.50016H7.96353Z",
9660
- fill: "#363B3F"
9661
9547
  }))), /*#__PURE__*/React__default['default'].createElement("symbol", {
9662
9548
  viewBox: "0 0 1024 1024",
9663
9549
  id: "tab"
@@ -9966,7 +9852,7 @@ var MoreItemsContaier = function MoreItemsContaier(_ref) {
9966
9852
  }, children);
9967
9853
  };
9968
9854
 
9969
- function generateAPIs(context, setContext, handleUndo, handleRedo, settings, cellInput, scrollbarX, scrollbarY) {
9855
+ function generateAPIs(context, setContext, handleUndo, handleRedo, settings, cellInput, scrollbarX, scrollbarY, globalCache) {
9970
9856
  return {
9971
9857
  applyOp: function applyOp(ops) {
9972
9858
  setContext(function (ctx_) {
@@ -10267,6 +10153,50 @@ function generateAPIs(context, setContext, handleUndo, handleRedo, settings, cel
10267
10153
  },
10268
10154
  celldataToData: function celldataToData(celldata, rowCount, colCount) {
10269
10155
  return fortuneCore.api.celldataToData(celldata, rowCount, colCount);
10156
+ },
10157
+ insertFunction: function insertFunction(selectedFuncIndex, filteredFunctionList, callback) {
10158
+ var _context$luckysheet_s2;
10159
+ var last = (_context$luckysheet_s2 = context.luckysheet_select_save) === null || _context$luckysheet_s2 === void 0 ? void 0 : _context$luckysheet_s2[context.luckysheet_select_save.length - 1];
10160
+ var row_index = last === null || last === void 0 ? void 0 : last.row_focus;
10161
+ var col_index = last === null || last === void 0 ? void 0 : last.column_focus;
10162
+ if (!last) {
10163
+ row_index = 0;
10164
+ col_index = 0;
10165
+ } else {
10166
+ if (row_index == null) {
10167
+ var _last$row2 = _slicedToArray(last.row, 1);
10168
+ row_index = _last$row2[0];
10169
+ }
10170
+ if (col_index == null) {
10171
+ var _last$column2 = _slicedToArray(last.column, 1);
10172
+ col_index = _last$column2[0];
10173
+ }
10174
+ }
10175
+ var formulaTxt = "<span dir=\"auto\" class=\"luckysheet-formula-text-color\">=</span><span dir=\"auto\" class=\"luckysheet-formula-text-color\">".concat(filteredFunctionList[selectedFuncIndex].n.toUpperCase(), "</span><span dir=\"auto\" class=\"luckysheet-formula-text-color\">(</span>");
10176
+ var _locale2 = fortuneCore.locale(context),
10177
+ functionlist = _locale2.functionlist;
10178
+ setContext(function (ctx) {
10179
+ if (cellInput != null && globalCache != null) {
10180
+ ctx.luckysheetCellUpdate = [row_index, col_index];
10181
+ globalCache.doNotUpdateCell = true;
10182
+ cellInput.innerHTML = formulaTxt;
10183
+ var spans = cellInput.childNodes;
10184
+ if (!___default['default'].isEmpty(spans)) {
10185
+ fortuneCore.setCaretPosition(ctx, spans[spans.length - 1], 0, 1);
10186
+ }
10187
+ ctx.functionHint = filteredFunctionList[selectedFuncIndex].n.toUpperCase();
10188
+ ctx.functionCandidates = [];
10189
+ if (___default['default'].isEmpty(ctx.formulaCache.functionlistMap)) {
10190
+ for (var i = 0; i < functionlist.length; i += 1) {
10191
+ ctx.formulaCache.functionlistMap[functionlist[i].n] = functionlist[i];
10192
+ }
10193
+ }
10194
+ callback === null || callback === void 0 ? void 0 : callback();
10195
+ }
10196
+ });
10197
+ },
10198
+ getLocaleContext: function getLocaleContext() {
10199
+ return fortuneCore.locale(context);
10270
10200
  }
10271
10201
  };
10272
10202
  }
@@ -11474,8 +11404,8 @@ var Workbook = /*#__PURE__*/React__default['default'].forwardRef(function (_ref,
11474
11404
  };
11475
11405
  }, [onPaste]);
11476
11406
  React.useImperativeHandle(ref, function () {
11477
- return generateAPIs(context, setContextWithProduce, handleUndo, handleRedo, mergedSettings, cellInput.current, scrollbarX.current, scrollbarY.current);
11478
- }, [context, setContextWithProduce, handleUndo, handleRedo, mergedSettings]);
11407
+ return generateAPIs(context, setContextWithProduce, handleUndo, handleRedo, mergedSettings, cellInput.current, scrollbarX.current, scrollbarY.current, globalCache.current);
11408
+ }, [context, setContextWithProduce, handleUndo, handleRedo, mergedSettings, globalCache]);
11479
11409
  var i = fortuneCore.getSheetIndex(context, context.currentSheetId);
11480
11410
  if (i == null) {
11481
11411
  return null;