@seafile/sdoc-editor 0.1.55 → 0.1.57-test0

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 (42) hide show
  1. package/dist/basic-sdk/editor.js +3 -12
  2. package/dist/basic-sdk/extension/constants/element-type.js +5 -1
  3. package/dist/basic-sdk/extension/constants/index.js +14 -2
  4. package/dist/basic-sdk/extension/core/queries/index.js +8 -0
  5. package/dist/basic-sdk/extension/plugins/blockquote/render-elem.js +6 -1
  6. package/dist/basic-sdk/extension/plugins/check-list/render-elem.js +8 -4
  7. package/dist/basic-sdk/extension/plugins/header/render-elem.js +6 -2
  8. package/dist/basic-sdk/extension/plugins/html/plugin.js +8 -6
  9. package/dist/basic-sdk/extension/plugins/index.js +3 -2
  10. package/dist/basic-sdk/extension/plugins/list/render-elem.js +16 -2
  11. package/dist/basic-sdk/extension/plugins/table/constants/index.js +5 -1
  12. package/dist/basic-sdk/extension/plugins/table/helpers.js +159 -22
  13. package/dist/basic-sdk/extension/plugins/table/menu/active-table-menu/index.js +3 -3
  14. package/dist/basic-sdk/extension/plugins/table/plugin.js +2 -2
  15. package/dist/basic-sdk/extension/plugins/table/render/hooks.js +17 -0
  16. package/dist/basic-sdk/extension/plugins/table/render/index.css +137 -0
  17. package/dist/basic-sdk/extension/plugins/table/render/index.js +161 -0
  18. package/dist/basic-sdk/extension/plugins/table/render/render-cell.js +48 -14
  19. package/dist/basic-sdk/extension/plugins/table/render/render-row.js +122 -7
  20. package/dist/basic-sdk/extension/plugins/table/render/resize-handler.js +109 -0
  21. package/dist/basic-sdk/extension/plugins/table/render/resize-handlers.js +27 -0
  22. package/dist/basic-sdk/extension/plugins/table/render/table-root.js +38 -0
  23. package/dist/basic-sdk/extension/plugins/table/render-elem.js +1 -1
  24. package/dist/basic-sdk/extension/plugins/text-align/helpers.js +43 -0
  25. package/dist/basic-sdk/extension/plugins/text-align/index.js +2 -0
  26. package/dist/basic-sdk/extension/plugins/text-align/menu/index.js +105 -0
  27. package/dist/basic-sdk/extension/plugins/text-align/menu/style.css +61 -0
  28. package/dist/basic-sdk/extension/render/render-element.js +9 -3
  29. package/dist/basic-sdk/extension/toolbar/index.js +19 -1
  30. package/dist/basic-sdk/socket/with-socket-io.js +5 -0
  31. package/dist/basic-sdk/utils/mouse-event.js +59 -0
  32. package/dist/basic-sdk/utils/object-utils.js +1 -0
  33. package/dist/components/doc-info/index.js +19 -4
  34. package/dist/config.js +16 -0
  35. package/dist/constants/index.js +1 -0
  36. package/dist/pages/simple-editor.js +3 -1
  37. package/package.json +1 -1
  38. package/public/locales/en/sdoc-editor.json +5 -1
  39. package/public/media/sdoc-editor-font.css +2 -2
  40. package/dist/basic-sdk/extension/plugins/table/render/context.js +0 -5
  41. package/dist/basic-sdk/extension/plugins/table/render/render-table/index.css +0 -72
  42. package/dist/basic-sdk/extension/plugins/table/render/render-table/index.js +0 -94
@@ -1,94 +0,0 @@
1
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
- import React, { useRef, useState, useEffect } from 'react';
3
- import classnames from 'classnames';
4
- import throttle from 'lodash.throttle';
5
- import { useSelected } from '@seafile/slate-react';
6
- import { EMPTY_SELECTED_RANGE } from '../../constants';
7
- import { TableContext } from '../context';
8
- import EventBus from '../../../../../utils/event-bus';
9
- import { EXTERNAL_EVENT } from '../../../../../../constants';
10
- import { setTableSelectedRange } from '../../helpers';
11
- import ObjectUtils from '../../../../../utils/object-utils';
12
- import './index.css';
13
- var Table = function Table(_ref) {
14
- var className = _ref.className,
15
- attributes = _ref.attributes,
16
- children = _ref.children,
17
- isSelected = _ref.isSelected,
18
- editor = _ref.editor;
19
- var table = useRef(null);
20
- var startRowIndex = 0;
21
- var startColIndex = 0;
22
- var _selectedRange = EMPTY_SELECTED_RANGE;
23
- var _useState = useState(EMPTY_SELECTED_RANGE),
24
- _useState2 = _slicedToArray(_useState, 2),
25
- selectedRange = _useState2[0],
26
- setSelectedRange = _useState2[1];
27
- var eventBus = EventBus.getInstance();
28
- useEffect(function () {
29
- var cancelTableSelectRangeSubscribe = eventBus.subscribe(EXTERNAL_EVENT.CANCEL_TABLE_SELECT_RANGE, clearRange);
30
- return function () {
31
- cancelTableSelectRangeSubscribe();
32
- };
33
- // eslint-disable-next-line react-hooks/exhaustive-deps
34
- }, []);
35
- var clearRange = function clearRange() {
36
- _selectedRange = EMPTY_SELECTED_RANGE;
37
- setSelectedRange(EMPTY_SELECTED_RANGE);
38
- };
39
- var onMouseMove = throttle(function (event) {
40
- // if event.target not in the table, clear the mouseMove event
41
- if (event.target.nodeName === 'TBODY' || !table.current.contains(event.target)) {
42
- return;
43
- }
44
- var endRowIndex = Number(event.target.getAttribute('row-index'));
45
- var endColIndex = Number(event.target.getAttribute('cell-index'));
46
- var newSelectedRange = {
47
- minRowIndex: Math.min(startRowIndex, endRowIndex),
48
- maxRowIndex: Math.max(startRowIndex, endRowIndex),
49
- minColIndex: Math.min(startColIndex, endColIndex),
50
- maxColIndex: Math.max(startColIndex, endColIndex)
51
- };
52
-
53
- // same cell
54
- if (newSelectedRange.minRowIndex === newSelectedRange.maxRowIndex && newSelectedRange.minColIndex === newSelectedRange.maxColIndex) return;
55
- _selectedRange = newSelectedRange;
56
- setSelectedRange(newSelectedRange);
57
- setTableSelectedRange(editor, newSelectedRange);
58
- }, 200);
59
- var onMouseUp = function onMouseUp(event) {
60
- if (!ObjectUtils.isSameObject(_selectedRange, EMPTY_SELECTED_RANGE)) {
61
- window.getSelection().collapseToEnd();
62
- }
63
- window.document.removeEventListener('mousemove', onMouseMove);
64
- window.document.removeEventListener('mouseup', onMouseUp);
65
- };
66
- var onMouseDown = function onMouseDown(event) {
67
- if (event.button !== 0) return; // right click not deal
68
- startRowIndex = Number(event.target.getAttribute('row-index'));
69
- startColIndex = Number(event.target.getAttribute('cell-index'));
70
- setSelectedRange(EMPTY_SELECTED_RANGE);
71
- setTableSelectedRange(editor, EMPTY_SELECTED_RANGE);
72
- window.document.addEventListener('mousemove', onMouseMove);
73
- window.document.addEventListener('mouseup', onMouseUp);
74
- };
75
- return /*#__PURE__*/React.createElement(TableContext.Provider, {
76
- value: selectedRange
77
- }, /*#__PURE__*/React.createElement("div", Object.assign({}, attributes, {
78
- className: classnames('sdoc-table-wrapper', attributes.className, className, {
79
- 'sdoc-table-selected': isSelected
80
- })
81
- }), /*#__PURE__*/React.createElement("table", {
82
- onMouseDown: onMouseDown,
83
- ref: table
84
- }, /*#__PURE__*/React.createElement("tbody", null, children))));
85
- };
86
- function renderTable(props, editor) {
87
- // eslint-disable-next-line react-hooks/rules-of-hooks
88
- var isSelected = useSelected();
89
- return /*#__PURE__*/React.createElement(Table, Object.assign({}, props, {
90
- editor: editor,
91
- isSelected: isSelected
92
- }));
93
- }
94
- export default renderTable;