@difizen/libro-core 0.1.18 → 0.1.20
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/es/cell/libro-cell-view.js +2 -2
- package/es/command/document-commands.d.ts.map +1 -1
- package/es/command/document-commands.js +6 -1
- package/es/command/libro-command-contribution.d.ts.map +1 -1
- package/es/command/libro-command-contribution.js +75 -45
- package/es/components/dnd-component/default-dnd-content.d.ts.map +1 -1
- package/es/components/dnd-component/default-dnd-content.js +3 -24
- package/es/components/libro-virtualized-render.js +1 -1
- package/es/libro-model.d.ts +7 -8
- package/es/libro-model.d.ts.map +1 -1
- package/es/libro-model.js +32 -21
- package/es/libro-protocol.d.ts +28 -6
- package/es/libro-protocol.d.ts.map +1 -1
- package/es/libro-service.d.ts +36 -3
- package/es/libro-service.d.ts.map +1 -1
- package/es/libro-service.js +97 -2
- package/es/libro-view.d.ts +5 -0
- package/es/libro-view.d.ts.map +1 -1
- package/es/libro-view.js +26 -61
- package/es/toolbar/libro-toolbar.d.ts.map +1 -1
- package/es/toolbar/libro-toolbar.js +16 -0
- package/es/virtualized-manager.d.ts +4 -0
- package/es/virtualized-manager.d.ts.map +1 -1
- package/es/virtualized-manager.js +7 -3
- package/package.json +5 -5
- package/src/cell/libro-cell-view.tsx +2 -2
- package/src/command/document-commands.ts +6 -1
- package/src/command/libro-command-contribution.ts +20 -1
- package/src/components/dnd-component/default-dnd-content.tsx +3 -19
- package/src/components/libro-virtualized-render.tsx +1 -1
- package/src/libro-model.ts +27 -20
- package/src/libro-protocol.ts +31 -8
- package/src/libro-service.ts +109 -3
- package/src/libro-view.tsx +22 -46
- package/src/toolbar/libro-toolbar.tsx +13 -0
- package/src/virtualized-manager.ts +14 -1
|
@@ -86,12 +86,12 @@ export var LibroCellView = (_dec = view('libro-cell-view'), _dec2 = prop(), _dec
|
|
|
86
86
|
this.toDispose.push(watch(this.model, 'value', function () {
|
|
87
87
|
var _this2$parent$model$o, _this2$parent$model, _this2$parent$model$o2, _this2$parent$model2;
|
|
88
88
|
(_this2$parent$model$o = (_this2$parent$model = _this2.parent.model).onChange) === null || _this2$parent$model$o === void 0 || _this2$parent$model$o.call(_this2$parent$model);
|
|
89
|
-
(_this2$parent$model$o2 = (_this2$parent$model2 = _this2.parent.model).onSourceChange) === null || _this2$parent$model$o2 === void 0 || _this2$parent$model$o2.call(_this2$parent$model2);
|
|
89
|
+
(_this2$parent$model$o2 = (_this2$parent$model2 = _this2.parent.model).onSourceChange) === null || _this2$parent$model$o2 === void 0 || _this2$parent$model$o2.call(_this2$parent$model2, [_this2]);
|
|
90
90
|
}));
|
|
91
91
|
this.toDispose.push(watch(this.model, 'type', function () {
|
|
92
92
|
var _this2$parent$model$o3, _this2$parent$model3, _this2$parent$model$o4, _this2$parent$model4;
|
|
93
93
|
(_this2$parent$model$o3 = (_this2$parent$model3 = _this2.parent.model).onChange) === null || _this2$parent$model$o3 === void 0 || _this2$parent$model$o3.call(_this2$parent$model3);
|
|
94
|
-
(_this2$parent$model$o4 = (_this2$parent$model4 = _this2.parent.model).onSourceChange) === null || _this2$parent$model$o4 === void 0 || _this2$parent$model$o4.call(_this2$parent$model4);
|
|
94
|
+
(_this2$parent$model$o4 = (_this2$parent$model4 = _this2.parent.model).onSourceChange) === null || _this2$parent$model$o4 === void 0 || _this2$parent$model$o4.call(_this2$parent$model4, [_this2]);
|
|
95
95
|
}));
|
|
96
96
|
if (ExecutableCellModel.is(this.model)) {
|
|
97
97
|
this.toDispose.push(watch(this.model, 'executeCount', function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"document-commands.d.ts","sourceRoot":"","sources":["../../src/command/document-commands.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEjD,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"document-commands.d.ts","sourceRoot":"","sources":["../../src/command/document-commands.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEjD,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAiB3E,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SaveOutlined, SettingOutlined } from '@ant-design/icons';
|
|
1
|
+
import { ClearOutlined, SaveOutlined, SettingOutlined } from '@ant-design/icons';
|
|
2
2
|
export var DocumentCommands = {
|
|
3
3
|
Save: {
|
|
4
4
|
id: 'document:save',
|
|
@@ -10,5 +10,10 @@ export var DocumentCommands = {
|
|
|
10
10
|
id: 'document.notebook.open_setting',
|
|
11
11
|
icon: SettingOutlined,
|
|
12
12
|
label: 'Setting'
|
|
13
|
+
},
|
|
14
|
+
FormatCell: {
|
|
15
|
+
id: 'document.notebook.format_cell',
|
|
16
|
+
icon: ClearOutlined,
|
|
17
|
+
label: 'format cell code'
|
|
13
18
|
}
|
|
14
19
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"libro-command-contribution.d.ts","sourceRoot":"","sources":["../../src/command/libro-command-contribution.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"libro-command-contribution.d.ts","sourceRoot":"","sources":["../../src/command/libro-command-contribution.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAEL,YAAY,EAEZ,mBAAmB,EACpB,MAAM,mBAAmB,CAAC;AAM3B,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG1D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAOnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAGnE,qBACa,wBAAyB,YAAW,mBAAmB;IAC5C,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACtC,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,oBAAoB,CAAC;IAC9D,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IAC3C,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAE7E,gBAAgB,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;CA4zCjD"}
|
|
@@ -11,10 +11,11 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
|
|
|
11
11
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
12
12
|
function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }
|
|
13
13
|
function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'transform-class-properties is enabled and runs after the decorators transform.'); }
|
|
14
|
+
import { MIME } from '@difizen/libro-common';
|
|
14
15
|
import { inject, ModalService, singleton, CommandContribution } from '@difizen/mana-app';
|
|
15
16
|
import { equals } from '@difizen/mana-app';
|
|
16
17
|
import { v4 } from 'uuid';
|
|
17
|
-
import { LibroCellView, ExecutableCellModel } from "../cell/index.js";
|
|
18
|
+
import { LibroCellView, ExecutableCellModel, EditorCellView } from "../cell/index.js";
|
|
18
19
|
import { LirboContextKey } from "../libro-context-key.js";
|
|
19
20
|
import { LibroToolbarArea } from "../libro-protocol.js";
|
|
20
21
|
import { LibroService } from "../libro-service.js";
|
|
@@ -1512,27 +1513,56 @@ export var LibroCommandContribution = (_dec = singleton({
|
|
|
1512
1513
|
return !(libro !== null && libro !== void 0 && libro.model.readOnly) && path === LibroToolbarArea.HeaderRight;
|
|
1513
1514
|
}
|
|
1514
1515
|
});
|
|
1515
|
-
this.libroCommand.registerLibroCommand(command,
|
|
1516
|
+
this.libroCommand.registerLibroCommand(command, DocumentCommands['FormatCell'], {
|
|
1516
1517
|
execute: function () {
|
|
1517
|
-
var _execute45 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee45(cell
|
|
1518
|
+
var _execute45 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee45(cell) {
|
|
1519
|
+
var _cell$editor;
|
|
1520
|
+
var _cell$editor2;
|
|
1518
1521
|
return _regeneratorRuntime().wrap(function _callee45$(_context45) {
|
|
1519
1522
|
while (1) switch (_context45.prev = _context45.next) {
|
|
1523
|
+
case 0:
|
|
1524
|
+
if (EditorCellView.is(cell) && ((_cell$editor = cell.editor) === null || _cell$editor === void 0 ? void 0 : _cell$editor.model.mimeType) === MIME.python) {
|
|
1525
|
+
(_cell$editor2 = cell.editor) === null || _cell$editor2 === void 0 || _cell$editor2.format();
|
|
1526
|
+
}
|
|
1527
|
+
case 1:
|
|
1528
|
+
case "end":
|
|
1529
|
+
return _context45.stop();
|
|
1530
|
+
}
|
|
1531
|
+
}, _callee45);
|
|
1532
|
+
}));
|
|
1533
|
+
function execute(_x87) {
|
|
1534
|
+
return _execute45.apply(this, arguments);
|
|
1535
|
+
}
|
|
1536
|
+
return execute;
|
|
1537
|
+
}(),
|
|
1538
|
+
isVisible: function isVisible(cell, libro, path) {
|
|
1539
|
+
if (!libro || !(libro instanceof LibroView)) {
|
|
1540
|
+
return false;
|
|
1541
|
+
}
|
|
1542
|
+
return !(libro !== null && libro !== void 0 && libro.model.readOnly) && EditorCellView.is(cell) && cell.model.mimeType === MIME.python && path === LibroToolbarArea.CellRight;
|
|
1543
|
+
}
|
|
1544
|
+
});
|
|
1545
|
+
this.libroCommand.registerLibroCommand(command, NotebookCommands['UndoCellAction'], {
|
|
1546
|
+
execute: function () {
|
|
1547
|
+
var _execute46 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee46(cell, libro) {
|
|
1548
|
+
return _regeneratorRuntime().wrap(function _callee46$(_context46) {
|
|
1549
|
+
while (1) switch (_context46.prev = _context46.next) {
|
|
1520
1550
|
case 0:
|
|
1521
1551
|
if (!(!libro || !(libro instanceof LibroView))) {
|
|
1522
|
-
|
|
1552
|
+
_context46.next = 2;
|
|
1523
1553
|
break;
|
|
1524
1554
|
}
|
|
1525
|
-
return
|
|
1555
|
+
return _context46.abrupt("return");
|
|
1526
1556
|
case 2:
|
|
1527
1557
|
libro.model.undo();
|
|
1528
1558
|
case 3:
|
|
1529
1559
|
case "end":
|
|
1530
|
-
return
|
|
1560
|
+
return _context46.stop();
|
|
1531
1561
|
}
|
|
1532
|
-
},
|
|
1562
|
+
}, _callee46);
|
|
1533
1563
|
}));
|
|
1534
|
-
function execute(
|
|
1535
|
-
return
|
|
1564
|
+
function execute(_x88, _x89) {
|
|
1565
|
+
return _execute46.apply(this, arguments);
|
|
1536
1566
|
}
|
|
1537
1567
|
return execute;
|
|
1538
1568
|
}(),
|
|
@@ -1552,25 +1582,25 @@ export var LibroCommandContribution = (_dec = singleton({
|
|
|
1552
1582
|
});
|
|
1553
1583
|
this.libroCommand.registerLibroCommand(command, NotebookCommands['RedoCellAction'], {
|
|
1554
1584
|
execute: function () {
|
|
1555
|
-
var
|
|
1556
|
-
return _regeneratorRuntime().wrap(function
|
|
1557
|
-
while (1) switch (
|
|
1585
|
+
var _execute47 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee47(cell, libro) {
|
|
1586
|
+
return _regeneratorRuntime().wrap(function _callee47$(_context47) {
|
|
1587
|
+
while (1) switch (_context47.prev = _context47.next) {
|
|
1558
1588
|
case 0:
|
|
1559
1589
|
if (!(!libro || !(libro instanceof LibroView))) {
|
|
1560
|
-
|
|
1590
|
+
_context47.next = 2;
|
|
1561
1591
|
break;
|
|
1562
1592
|
}
|
|
1563
|
-
return
|
|
1593
|
+
return _context47.abrupt("return");
|
|
1564
1594
|
case 2:
|
|
1565
1595
|
libro.model.redo();
|
|
1566
1596
|
case 3:
|
|
1567
1597
|
case "end":
|
|
1568
|
-
return
|
|
1598
|
+
return _context47.stop();
|
|
1569
1599
|
}
|
|
1570
|
-
},
|
|
1600
|
+
}, _callee47);
|
|
1571
1601
|
}));
|
|
1572
|
-
function execute(
|
|
1573
|
-
return
|
|
1602
|
+
function execute(_x90, _x91) {
|
|
1603
|
+
return _execute47.apply(this, arguments);
|
|
1574
1604
|
}
|
|
1575
1605
|
return execute;
|
|
1576
1606
|
}(),
|
|
@@ -1604,25 +1634,25 @@ export var LibroCommandContribution = (_dec = singleton({
|
|
|
1604
1634
|
});
|
|
1605
1635
|
this.libroCommand.registerLibroCommand(command, NotebookCommands['Redo'], {
|
|
1606
1636
|
execute: function () {
|
|
1607
|
-
var
|
|
1608
|
-
return _regeneratorRuntime().wrap(function
|
|
1609
|
-
while (1) switch (
|
|
1637
|
+
var _execute48 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee48(cell) {
|
|
1638
|
+
return _regeneratorRuntime().wrap(function _callee48$(_context48) {
|
|
1639
|
+
while (1) switch (_context48.prev = _context48.next) {
|
|
1610
1640
|
case 0:
|
|
1611
1641
|
if (!(!cell || !(cell instanceof LibroCellView))) {
|
|
1612
|
-
|
|
1642
|
+
_context48.next = 2;
|
|
1613
1643
|
break;
|
|
1614
1644
|
}
|
|
1615
|
-
return
|
|
1645
|
+
return _context48.abrupt("return");
|
|
1616
1646
|
case 2:
|
|
1617
1647
|
cell.redo();
|
|
1618
1648
|
case 3:
|
|
1619
1649
|
case "end":
|
|
1620
|
-
return
|
|
1650
|
+
return _context48.stop();
|
|
1621
1651
|
}
|
|
1622
|
-
},
|
|
1652
|
+
}, _callee48);
|
|
1623
1653
|
}));
|
|
1624
|
-
function execute(
|
|
1625
|
-
return
|
|
1654
|
+
function execute(_x92) {
|
|
1655
|
+
return _execute48.apply(this, arguments);
|
|
1626
1656
|
}
|
|
1627
1657
|
return execute;
|
|
1628
1658
|
}(),
|
|
@@ -1635,25 +1665,25 @@ export var LibroCommandContribution = (_dec = singleton({
|
|
|
1635
1665
|
});
|
|
1636
1666
|
this.libroCommand.registerLibroCommand(command, NotebookCommands['Undo'], {
|
|
1637
1667
|
execute: function () {
|
|
1638
|
-
var
|
|
1639
|
-
return _regeneratorRuntime().wrap(function
|
|
1640
|
-
while (1) switch (
|
|
1668
|
+
var _execute49 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee49(cell) {
|
|
1669
|
+
return _regeneratorRuntime().wrap(function _callee49$(_context49) {
|
|
1670
|
+
while (1) switch (_context49.prev = _context49.next) {
|
|
1641
1671
|
case 0:
|
|
1642
1672
|
if (!(!cell || !(cell instanceof LibroCellView))) {
|
|
1643
|
-
|
|
1673
|
+
_context49.next = 2;
|
|
1644
1674
|
break;
|
|
1645
1675
|
}
|
|
1646
|
-
return
|
|
1676
|
+
return _context49.abrupt("return");
|
|
1647
1677
|
case 2:
|
|
1648
1678
|
cell.undo();
|
|
1649
1679
|
case 3:
|
|
1650
1680
|
case "end":
|
|
1651
|
-
return
|
|
1681
|
+
return _context49.stop();
|
|
1652
1682
|
}
|
|
1653
|
-
},
|
|
1683
|
+
}, _callee49);
|
|
1654
1684
|
}));
|
|
1655
|
-
function execute(
|
|
1656
|
-
return
|
|
1685
|
+
function execute(_x93) {
|
|
1686
|
+
return _execute49.apply(this, arguments);
|
|
1657
1687
|
}
|
|
1658
1688
|
return execute;
|
|
1659
1689
|
}(),
|
|
@@ -1750,23 +1780,23 @@ export var LibroCommandContribution = (_dec = singleton({
|
|
|
1750
1780
|
});
|
|
1751
1781
|
this.libroCommand.registerLibroCommand(command, NotebookCommands['More'], {
|
|
1752
1782
|
execute: function () {
|
|
1753
|
-
var
|
|
1754
|
-
return _regeneratorRuntime().wrap(function
|
|
1755
|
-
while (1) switch (
|
|
1783
|
+
var _execute50 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee50(cell, libro) {
|
|
1784
|
+
return _regeneratorRuntime().wrap(function _callee50$(_context50) {
|
|
1785
|
+
while (1) switch (_context50.prev = _context50.next) {
|
|
1756
1786
|
case 0:
|
|
1757
1787
|
if (!(!libro || !(libro instanceof LibroView))) {
|
|
1758
|
-
|
|
1788
|
+
_context50.next = 2;
|
|
1759
1789
|
break;
|
|
1760
1790
|
}
|
|
1761
|
-
return
|
|
1791
|
+
return _context50.abrupt("return");
|
|
1762
1792
|
case 2:
|
|
1763
1793
|
case "end":
|
|
1764
|
-
return
|
|
1794
|
+
return _context50.stop();
|
|
1765
1795
|
}
|
|
1766
|
-
},
|
|
1796
|
+
}, _callee50);
|
|
1767
1797
|
}));
|
|
1768
|
-
function execute(
|
|
1769
|
-
return
|
|
1798
|
+
function execute(_x94, _x95) {
|
|
1799
|
+
return _execute50.apply(this, arguments);
|
|
1770
1800
|
}
|
|
1771
1801
|
return execute;
|
|
1772
1802
|
}(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-dnd-content.d.ts","sourceRoot":"","sources":["../../../src/components/dnd-component/default-dnd-content.tsx"],"names":[],"mappings":"AAIA,OAAO,KAQN,MAAM,OAAO,CAAC;AAGf,OAAO,0BAA0B,CAAC;AAMlC,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"default-dnd-content.d.ts","sourceRoot":"","sources":["../../../src/components/dnd-component/default-dnd-content.tsx"],"names":[],"mappings":"AAIA,OAAO,KAQN,MAAM,OAAO,CAAC;AAGf,OAAO,0BAA0B,CAAC;AAMlC,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAIzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAmStD,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,mBAIrC,CAAC"}
|
|
@@ -22,7 +22,6 @@ import { CellCollapsible } from "../../collapse-service.js";
|
|
|
22
22
|
import { DragAreaKey, isCellView } from "../../libro-protocol.js";
|
|
23
23
|
import { MultiSelectionWhenShiftClick } from "../../libro-setting.js";
|
|
24
24
|
import { HolderOutlined, PlusOutlined } from "../../material-from-designer.js";
|
|
25
|
-
import { VirtualizedManagerHelper } from "../../virtualized-manager-helper.js";
|
|
26
25
|
import { BetweenCellProvider } from "../cell-protocol.js";
|
|
27
26
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
28
27
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
@@ -37,8 +36,6 @@ export var DndCellContainer = function DndCellContainer(_ref) {
|
|
|
37
36
|
multiSelectionWhenShiftClick = _useConfigurationValu2[0];
|
|
38
37
|
var BetweenCellContent = useInject(BetweenCellProvider);
|
|
39
38
|
var cellService = useInject(LibroCellService);
|
|
40
|
-
var virtualizedManagerHelper = useInject(VirtualizedManagerHelper);
|
|
41
|
-
var virtualizedManager = virtualizedManagerHelper.getOrCreate(cell.parent.model);
|
|
42
39
|
var dragDropManager = useDragDropManager();
|
|
43
40
|
var dragDropMonitor = dragDropManager.getMonitor();
|
|
44
41
|
var ItemRender = getOrigin(instance.dndItemRender);
|
|
@@ -193,35 +190,17 @@ export var DndCellContainer = function DndCellContainer(_ref) {
|
|
|
193
190
|
}
|
|
194
191
|
if (isDragInSelections) {
|
|
195
192
|
instance.model.exchangeCells(instance.model.selections, dropIndex);
|
|
196
|
-
|
|
197
|
-
instance.model.scrollToCellView({
|
|
198
|
-
cellIndex: dropIndex
|
|
199
|
-
});
|
|
200
|
-
} else {
|
|
201
|
-
instance.model.scrollToView(cell);
|
|
202
|
-
}
|
|
193
|
+
instance.model.scrollToView(cell);
|
|
203
194
|
return;
|
|
204
195
|
}
|
|
205
196
|
}
|
|
206
197
|
if (dragIndex < dropIndex) {
|
|
207
198
|
instance.model.exchangeCell(dragIndex, dropIndex - 1);
|
|
208
|
-
|
|
209
|
-
instance.model.scrollToCellView({
|
|
210
|
-
cellIndex: dropIndex
|
|
211
|
-
});
|
|
212
|
-
} else {
|
|
213
|
-
instance.model.scrollToView(cell);
|
|
214
|
-
}
|
|
199
|
+
instance.model.scrollToView(cell);
|
|
215
200
|
}
|
|
216
201
|
if (dragIndex > dropIndex) {
|
|
217
202
|
instance.model.exchangeCell(dragIndex, dropIndex);
|
|
218
|
-
|
|
219
|
-
instance.model.scrollToCellView({
|
|
220
|
-
cellIndex: dropIndex
|
|
221
|
-
});
|
|
222
|
-
} else {
|
|
223
|
-
instance.model.scrollToView(cell);
|
|
224
|
-
}
|
|
203
|
+
instance.model.scrollToView(cell);
|
|
225
204
|
}
|
|
226
205
|
}
|
|
227
206
|
return;
|
|
@@ -88,7 +88,7 @@ export var LibroCellsOutputRender = function LibroCellsOutputRender(_ref2) {
|
|
|
88
88
|
}
|
|
89
89
|
libroView.model.onScrollToCellView(function (params) {
|
|
90
90
|
// listRef.current!.scrollToRow(index);
|
|
91
|
-
listRef.current.
|
|
91
|
+
listRef.current.scrollToCellPosition(params.cellIndex, params.cellOffset);
|
|
92
92
|
});
|
|
93
93
|
return function () {
|
|
94
94
|
libroView.model.disposeScrollToCellViewEmitter();
|
package/es/libro-model.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ import { ConfigurationService } from '@difizen/mana-app';
|
|
|
4
4
|
import { Emitter } from '@difizen/mana-app';
|
|
5
5
|
import { LibroContentService } from './content/index.js';
|
|
6
6
|
import { NotebookOption } from './libro-protocol.js';
|
|
7
|
-
import type { CellOptions, CellViewChange, DndListModel, NotebookModel,
|
|
7
|
+
import type { CellOptions, CellViewChange, DndListModel, NotebookModel, CellView, MouseMode, ICellContentChange } from './libro-protocol.js';
|
|
8
8
|
import { VirtualizedManagerHelper } from './virtualized-manager-helper.js';
|
|
9
9
|
export declare class LibroModel implements NotebookModel, DndListModel {
|
|
10
10
|
options: NotebookOption;
|
|
@@ -15,14 +15,16 @@ export declare class LibroModel implements NotebookModel, DndListModel {
|
|
|
15
15
|
get onScrollToCellView(): import("@difizen/mana-app").Event<any>;
|
|
16
16
|
protected cellViewChangeEmitter: Emitter<CellViewChange>;
|
|
17
17
|
get onCellViewChanged(): import("@difizen/mana-app").Event<CellViewChange>;
|
|
18
|
-
scrollToCellView: (params: ScrollParams) => void;
|
|
19
18
|
disposeScrollToCellViewEmitter(): void;
|
|
20
19
|
protected onCommandModeChangedEmitter: Emitter<boolean>;
|
|
21
20
|
get onCommandModeChanged(): import("@difizen/mana-app").Event<boolean>;
|
|
22
|
-
protected
|
|
23
|
-
get
|
|
21
|
+
protected onChangedEmitter: Emitter<boolean>;
|
|
22
|
+
get onChanged(): import("@difizen/mana-app").Event<boolean>;
|
|
24
23
|
protected onSourceChangedEmitter: Emitter<boolean>;
|
|
25
24
|
get onSourceChanged(): import("@difizen/mana-app").Event<boolean>;
|
|
25
|
+
protected onCellContentChangedEmitter: Emitter<ICellContentChange>;
|
|
26
|
+
get onCellContentChanged(): import("@difizen/mana-app").Event<ICellContentChange>;
|
|
27
|
+
onCellContentChange(change: ICellContentChange): void;
|
|
26
28
|
id: string;
|
|
27
29
|
/**
|
|
28
30
|
* The shared notebook model.
|
|
@@ -83,9 +85,6 @@ export declare class LibroModel implements NotebookModel, DndListModel {
|
|
|
83
85
|
* Should emit a [contentChanged] signal.
|
|
84
86
|
*/
|
|
85
87
|
fromJSON(value: INotebookContent): void;
|
|
86
|
-
/**
|
|
87
|
-
* cell list change or cell content change
|
|
88
|
-
*/
|
|
89
88
|
onChange(): void;
|
|
90
89
|
onSourceChange(): void;
|
|
91
90
|
/**
|
|
@@ -101,7 +100,7 @@ export declare class LibroModel implements NotebookModel, DndListModel {
|
|
|
101
100
|
/**
|
|
102
101
|
* 自动滚动到可视范围内
|
|
103
102
|
*/
|
|
104
|
-
scrollToView(cell: CellView): void;
|
|
103
|
+
scrollToView(cell: CellView, cellOffset?: number): void;
|
|
105
104
|
addCell: (cell: CellView, position?: number, mode?: string) => void;
|
|
106
105
|
insertCells: (cells: CellView[], position?: number, mode?: string) => void;
|
|
107
106
|
invertCell: (toAddcell: CellView, position: number) => void;
|
package/es/libro-model.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"libro-model.d.ts","sourceRoot":"","sources":["../src/libro-model.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,cAAc,EACf,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAa,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAK5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAc,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,YAAY,EACZ,aAAa,
|
|
1
|
+
{"version":3,"file":"libro-model.d.ts","sourceRoot":"","sources":["../src/libro-model.ts"],"names":[],"mappings":"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"}
|
package/es/libro-model.js
CHANGED
|
@@ -39,12 +39,10 @@ export var LibroModel = (_dec = transient(), _dec2 = inject(NotebookOption), _de
|
|
|
39
39
|
_initializerDefineProperty(this, "configurationService", _descriptor4, this);
|
|
40
40
|
this.scrollToCellViewEmitter = void 0;
|
|
41
41
|
this.cellViewChangeEmitter = new Emitter();
|
|
42
|
-
this.scrollToCellView = function (params) {
|
|
43
|
-
_this.scrollToCellViewEmitter.fire(params);
|
|
44
|
-
};
|
|
45
42
|
this.onCommandModeChangedEmitter = new Emitter();
|
|
46
|
-
this.
|
|
43
|
+
this.onChangedEmitter = new Emitter();
|
|
47
44
|
this.onSourceChangedEmitter = new Emitter();
|
|
45
|
+
this.onCellContentChangedEmitter = new Emitter();
|
|
48
46
|
this.id = void 0;
|
|
49
47
|
/**
|
|
50
48
|
* The shared notebook model.
|
|
@@ -106,11 +104,13 @@ export var LibroModel = (_dec = transient(), _dec2 = inject(NotebookOption), _de
|
|
|
106
104
|
}
|
|
107
105
|
});
|
|
108
106
|
} else if (delta.delete !== null && delta.delete !== undefined) {
|
|
107
|
+
var _cellViews = _this.cells.slice(currpos, currpos + delta.delete);
|
|
109
108
|
_this.removeRange(currpos, currpos + delta.delete);
|
|
110
109
|
_this.cellViewChangeEmitter.fire({
|
|
111
110
|
delete: {
|
|
112
111
|
index: currpos,
|
|
113
|
-
number: delta.delete
|
|
112
|
+
number: delta.delete,
|
|
113
|
+
cells: _cellViews
|
|
114
114
|
}
|
|
115
115
|
});
|
|
116
116
|
} else if (delta.retain !== null && delta.retain !== undefined) {
|
|
@@ -294,15 +294,25 @@ export var LibroModel = (_dec = transient(), _dec2 = inject(NotebookOption), _de
|
|
|
294
294
|
return this.onCommandModeChangedEmitter.event;
|
|
295
295
|
}
|
|
296
296
|
}, {
|
|
297
|
-
key: "
|
|
297
|
+
key: "onChanged",
|
|
298
298
|
get: function get() {
|
|
299
|
-
return this.
|
|
299
|
+
return this.onChangedEmitter.event;
|
|
300
300
|
}
|
|
301
301
|
}, {
|
|
302
302
|
key: "onSourceChanged",
|
|
303
303
|
get: function get() {
|
|
304
304
|
return this.onSourceChangedEmitter.event;
|
|
305
305
|
}
|
|
306
|
+
}, {
|
|
307
|
+
key: "onCellContentChanged",
|
|
308
|
+
get: function get() {
|
|
309
|
+
return this.onCellContentChangedEmitter.event;
|
|
310
|
+
}
|
|
311
|
+
}, {
|
|
312
|
+
key: "onCellContentChange",
|
|
313
|
+
value: function onCellContentChange(change) {
|
|
314
|
+
this.onCellContentChangedEmitter.fire(change);
|
|
315
|
+
}
|
|
306
316
|
}, {
|
|
307
317
|
key: "getCells",
|
|
308
318
|
value: function getCells() {
|
|
@@ -374,15 +384,11 @@ export var LibroModel = (_dec = transient(), _dec2 = inject(NotebookOption), _de
|
|
|
374
384
|
_this2.sharedModel.deleteCellRange(0, _this2.sharedModel.cells.length);
|
|
375
385
|
});
|
|
376
386
|
}
|
|
377
|
-
|
|
378
|
-
/**
|
|
379
|
-
* cell list change or cell content change
|
|
380
|
-
*/
|
|
381
387
|
}, {
|
|
382
388
|
key: "onChange",
|
|
383
389
|
value: function onChange() {
|
|
384
390
|
this.dirty = true;
|
|
385
|
-
this.
|
|
391
|
+
this.onChangedEmitter.fire(true);
|
|
386
392
|
}
|
|
387
393
|
}, {
|
|
388
394
|
key: "onSourceChange",
|
|
@@ -496,12 +502,24 @@ export var LibroModel = (_dec = transient(), _dec2 = inject(NotebookOption), _de
|
|
|
496
502
|
*/
|
|
497
503
|
function scrollToView(cell) {
|
|
498
504
|
var _target, _target2, _target7;
|
|
505
|
+
var cellOffset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
506
|
+
var virtualizedManager = this.virtualizedManagerHelper.getOrCreate(this);
|
|
507
|
+
if (virtualizedManager.isVirtualized) {
|
|
508
|
+
var cellIndex = this.cells.findIndex(function (_cell) {
|
|
509
|
+
return _cell.id === cell.id;
|
|
510
|
+
});
|
|
511
|
+
this.scrollToCellViewEmitter.fire({
|
|
512
|
+
cellIndex: cellIndex,
|
|
513
|
+
cellOffset: cellOffset
|
|
514
|
+
});
|
|
515
|
+
return;
|
|
516
|
+
}
|
|
499
517
|
var target = document.getElementById(cell.id);
|
|
500
518
|
if (!target) {
|
|
501
519
|
return;
|
|
502
520
|
}
|
|
503
521
|
var _targetheight = ((_target = target) === null || _target === void 0 ? void 0 : _target.offsetHeight) || 0;
|
|
504
|
-
var offsetTop = ((_target2 = target) === null || _target2 === void 0 ? void 0 : _target2.offsetTop) || 0;
|
|
522
|
+
var offsetTop = (((_target2 = target) === null || _target2 === void 0 ? void 0 : _target2.offsetTop) || 0) + cellOffset;
|
|
505
523
|
while ((_target3 = target) !== null && _target3 !== void 0 && _target3.offsetParent && !((_target4 = target) !== null && _target4 !== void 0 && (_target4 = _target4.offsetParent) !== null && _target4 !== void 0 && (_target4 = _target4.className) !== null && _target4 !== void 0 && _target4.includes('libro-view-content-left'))) {
|
|
506
524
|
var _target3, _target4, _target5, _target6;
|
|
507
525
|
target = (_target5 = target) === null || _target5 === void 0 ? void 0 : _target5.offsetParent;
|
|
@@ -648,16 +666,9 @@ export var LibroModel = (_dec = transient(), _dec2 = inject(NotebookOption), _de
|
|
|
648
666
|
cells.splice(sourceIndex, 1);
|
|
649
667
|
cells.splice(targetIndex, 0, sourceItem);
|
|
650
668
|
this.cells = cells;
|
|
651
|
-
var virtualizedManager = this.virtualizedManagerHelper.getOrCreate(this);
|
|
652
669
|
setTimeout(function () {
|
|
653
670
|
// 上下移动也需要调整可视区域范围
|
|
654
|
-
|
|
655
|
-
_this6.scrollToCellView({
|
|
656
|
-
cellIndex: sourceIndex
|
|
657
|
-
});
|
|
658
|
-
} else {
|
|
659
|
-
_this6.scrollToView(sourceItem);
|
|
660
|
-
}
|
|
671
|
+
_this6.scrollToView(sourceItem);
|
|
661
672
|
}, 300);
|
|
662
673
|
return true;
|
|
663
674
|
}
|
package/es/libro-protocol.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" resolution-mode="require"/>
|
|
2
|
-
import type { IModel } from '@difizen/libro-code-editor';
|
|
2
|
+
import type { IModel, IModelContentChange } from '@difizen/libro-code-editor';
|
|
3
3
|
import type { CellType, ICell, ICellMetadata, INotebookContent, INotebookMetadata } from '@difizen/libro-common';
|
|
4
4
|
import type { ISharedNotebook } from '@difizen/libro-shared-model';
|
|
5
5
|
import type { Disposable, Event } from '@difizen/mana-app';
|
|
@@ -45,9 +45,13 @@ export type Options = {
|
|
|
45
45
|
};
|
|
46
46
|
export interface ScrollParams {
|
|
47
47
|
cellIndex: number;
|
|
48
|
-
|
|
48
|
+
cellOffset?: number;
|
|
49
49
|
}
|
|
50
50
|
export type NotebookModel = BaseNotebookModel & DndListModel;
|
|
51
|
+
export interface ICellContentChange {
|
|
52
|
+
cell: CellView;
|
|
53
|
+
changes: IModelContentChange[];
|
|
54
|
+
}
|
|
51
55
|
export interface BaseNotebookModel {
|
|
52
56
|
id: string;
|
|
53
57
|
/**
|
|
@@ -77,9 +81,22 @@ export interface BaseNotebookModel {
|
|
|
77
81
|
commandMode: boolean;
|
|
78
82
|
trusted: boolean;
|
|
79
83
|
onCommandModeChanged: Event<boolean>;
|
|
80
|
-
|
|
84
|
+
/**
|
|
85
|
+
* all changes
|
|
86
|
+
*/
|
|
87
|
+
onChanged: Event<boolean>;
|
|
88
|
+
/**
|
|
89
|
+
* cell content & type
|
|
90
|
+
*/
|
|
81
91
|
onSourceChanged: Event<boolean>;
|
|
92
|
+
/**
|
|
93
|
+
* cell create & delete
|
|
94
|
+
*/
|
|
82
95
|
onCellViewChanged: Event<CellViewChange>;
|
|
96
|
+
/**
|
|
97
|
+
* cell content change detail
|
|
98
|
+
*/
|
|
99
|
+
onCellContentChanged: Event<ICellContentChange>;
|
|
83
100
|
getCells: () => CellView[];
|
|
84
101
|
/**
|
|
85
102
|
* Serialize the model to a string.
|
|
@@ -130,8 +147,13 @@ export interface BaseNotebookModel {
|
|
|
130
147
|
*/
|
|
131
148
|
enterCommandMode?: () => void;
|
|
132
149
|
enterEditMode?: () => void;
|
|
150
|
+
/**
|
|
151
|
+
* all changes: cell value\cell type\cell output\ cell executecount\ cell or notebook metadata\cell create & delete
|
|
152
|
+
* @returns
|
|
153
|
+
*/
|
|
133
154
|
onChange?: () => void;
|
|
134
|
-
onSourceChange?: () => void;
|
|
155
|
+
onSourceChange?: (cells: CellView[]) => void;
|
|
156
|
+
onCellContentChange: (changes: ICellContentChange) => void;
|
|
135
157
|
interrupt?: () => void;
|
|
136
158
|
canRun?: () => boolean;
|
|
137
159
|
restart?: () => void;
|
|
@@ -139,13 +161,12 @@ export interface BaseNotebookModel {
|
|
|
139
161
|
undo: () => void;
|
|
140
162
|
redo: () => void;
|
|
141
163
|
readonly sharedModel: ISharedNotebook;
|
|
142
|
-
scrollToView: (cell: CellView) => void;
|
|
164
|
+
scrollToView: (cell: CellView, cellOffset?: number) => void;
|
|
143
165
|
customParams: Record<string, any>;
|
|
144
166
|
getCustomKey: (key: string) => any;
|
|
145
167
|
setCustomKey: (key: string, val: any) => void;
|
|
146
168
|
libroViewClass: string;
|
|
147
169
|
onScrollToCellView: Event<ScrollParams>;
|
|
148
|
-
scrollToCellView: (params: ScrollParams) => void;
|
|
149
170
|
disposeScrollToCellViewEmitter: () => void;
|
|
150
171
|
}
|
|
151
172
|
export declare const notebookViewFactoryId = "notebook-view-factory";
|
|
@@ -201,6 +222,7 @@ export interface CellViewChange {
|
|
|
201
222
|
delete?: {
|
|
202
223
|
index: number;
|
|
203
224
|
number: number;
|
|
225
|
+
cells: CellView[];
|
|
204
226
|
};
|
|
205
227
|
}
|
|
206
228
|
export interface CellModel extends IModel, Disposable {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"libro-protocol.d.ts","sourceRoot":"","sources":["../src/libro-protocol.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"libro-protocol.d.ts","sourceRoot":"","sources":["../src/libro-protocol.ts"],"names":[],"mappings":"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"}
|