@titaui/pc 1.10.39 → 1.10.43

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 (104) hide show
  1. package/lib/components/dynamic/dynamic-item/dynamic-chart/index.js +18 -3
  2. package/lib/components/upload/index.js +2 -4
  3. package/lib/index.js +0 -8
  4. package/package.json +2 -20
  5. package/lib/components/rich-editor/basic/schema.js +0 -47
  6. package/lib/components/rich-editor/consts/events.js +0 -12
  7. package/lib/components/rich-editor/enums.js +0 -42
  8. package/lib/components/rich-editor/index.js +0 -58
  9. package/lib/components/rich-editor/keymap.js +0 -119
  10. package/lib/components/rich-editor/keymaps/index.js +0 -241
  11. package/lib/components/rich-editor/models/controller.js +0 -18
  12. package/lib/components/rich-editor/models/editor.js +0 -47
  13. package/lib/components/rich-editor/models/plugin.js +0 -20
  14. package/lib/components/rich-editor/models/schema.js +0 -121
  15. package/lib/components/rich-editor/plugins/block/block-quote/commond.js +0 -27
  16. package/lib/components/rich-editor/plugins/block/block-quote/index.js +0 -126
  17. package/lib/components/rich-editor/plugins/block/heading/commonds.js +0 -31
  18. package/lib/components/rich-editor/plugins/block/heading/index.js +0 -188
  19. package/lib/components/rich-editor/plugins/block/index.js +0 -57
  20. package/lib/components/rich-editor/plugins/block/lists/actions/conversions.js +0 -172
  21. package/lib/components/rich-editor/plugins/block/lists/actions/indent-list-items-selected.js +0 -163
  22. package/lib/components/rich-editor/plugins/block/lists/actions/indent-list.js +0 -59
  23. package/lib/components/rich-editor/plugins/block/lists/actions/join-list-items-forward.js +0 -74
  24. package/lib/components/rich-editor/plugins/block/lists/actions/join-list-items-scenarios/index.js +0 -45
  25. package/lib/components/rich-editor/plugins/block/lists/actions/join-list-items-scenarios/join-list-item-with-paragraph.js +0 -104
  26. package/lib/components/rich-editor/plugins/block/lists/actions/join-list-items-scenarios/join-list-item-with-parent-nested-list.js +0 -92
  27. package/lib/components/rich-editor/plugins/block/lists/actions/join-list-items-scenarios/join-nested-list-with-parent-list-item.js +0 -89
  28. package/lib/components/rich-editor/plugins/block/lists/actions/join-list-items-scenarios/join-paragraph-with-list.js +0 -48
  29. package/lib/components/rich-editor/plugins/block/lists/actions/join-list-items-scenarios/join-sibling-list-items.js +0 -61
  30. package/lib/components/rich-editor/plugins/block/lists/actions/merge-lists.js +0 -34
  31. package/lib/components/rich-editor/plugins/block/lists/actions/outdent-list-items-selected.js +0 -289
  32. package/lib/components/rich-editor/plugins/block/lists/actions/wrap-and-join-lists.js +0 -180
  33. package/lib/components/rich-editor/plugins/block/lists/baseCommand.js +0 -328
  34. package/lib/components/rich-editor/plugins/block/lists/commond/indent-list.js +0 -60
  35. package/lib/components/rich-editor/plugins/block/lists/commond/index.js +0 -398
  36. package/lib/components/rich-editor/plugins/block/lists/commond/join-list-item-forward.js +0 -45
  37. package/lib/components/rich-editor/plugins/block/lists/commond/listBackspace.js +0 -302
  38. package/lib/components/rich-editor/plugins/block/lists/commond/outdent-list.js +0 -43
  39. package/lib/components/rich-editor/plugins/block/lists/index.js +0 -222
  40. package/lib/components/rich-editor/plugins/block/lists/messages.js +0 -38
  41. package/lib/components/rich-editor/plugins/block/lists/pm-plugins/input-rule.js +0 -152
  42. package/lib/components/rich-editor/plugins/block/lists/pm-plugins/keymap.js +0 -33
  43. package/lib/components/rich-editor/plugins/block/lists/pm-plugins/main.js +0 -94
  44. package/lib/components/rich-editor/plugins/block/lists/styles.js +0 -15
  45. package/lib/components/rich-editor/plugins/block/lists/transforms.js +0 -347
  46. package/lib/components/rich-editor/plugins/block/lists/utils/analytics.js +0 -48
  47. package/lib/components/rich-editor/plugins/block/lists/utils/find.js +0 -126
  48. package/lib/components/rich-editor/plugins/block/lists/utils/indentation.js +0 -87
  49. package/lib/components/rich-editor/plugins/block/lists/utils/node.js +0 -144
  50. package/lib/components/rich-editor/plugins/block/lists/utils/replace-content.js +0 -31
  51. package/lib/components/rich-editor/plugins/block/lists/utils/selection.js +0 -201
  52. package/lib/components/rich-editor/plugins/block/lists/utils.js +0 -52
  53. package/lib/components/rich-editor/plugins/block/paragraph/index.js +0 -91
  54. package/lib/components/rich-editor/plugins/core/index.js +0 -90
  55. package/lib/components/rich-editor/plugins/core/pm-plugins/focus-handler.js +0 -67
  56. package/lib/components/rich-editor/plugins/core/pm-plugins/keymap.js +0 -29
  57. package/lib/components/rich-editor/plugins/core/pm-plugins/reactNodeView.js +0 -80
  58. package/lib/components/rich-editor/plugins/extension/alignment/commond.js +0 -24
  59. package/lib/components/rich-editor/plugins/extension/alignment/index.js +0 -111
  60. package/lib/components/rich-editor/plugins/extension/alignment/utils.js +0 -19
  61. package/lib/components/rich-editor/plugins/extension/index.js +0 -18
  62. package/lib/components/rich-editor/plugins/index.js +0 -44
  63. package/lib/components/rich-editor/plugins/inline/color/commond.js +0 -128
  64. package/lib/components/rich-editor/plugins/inline/color/consts.js +0 -43
  65. package/lib/components/rich-editor/plugins/inline/color/index.css +0 -61
  66. package/lib/components/rich-editor/plugins/inline/color/index.js +0 -209
  67. package/lib/components/rich-editor/plugins/inline/color/selector.js +0 -252
  68. package/lib/components/rich-editor/plugins/inline/delete-line/index.js +0 -147
  69. package/lib/components/rich-editor/plugins/inline/em/index.js +0 -93
  70. package/lib/components/rich-editor/plugins/inline/index.js +0 -83
  71. package/lib/components/rich-editor/plugins/inline/link/commands.js +0 -256
  72. package/lib/components/rich-editor/plugins/inline/link/index.js +0 -149
  73. package/lib/components/rich-editor/plugins/inline/link/pm-plugins/fake-cursor-for-toolbar.js +0 -77
  74. package/lib/components/rich-editor/plugins/inline/link/pm-plugins/main.js +0 -293
  75. package/lib/components/rich-editor/plugins/inline/link/ui/index.css +0 -79
  76. package/lib/components/rich-editor/plugins/inline/link/ui/linkEditor.js +0 -148
  77. package/lib/components/rich-editor/plugins/inline/link/ui/linkToolbar.js +0 -88
  78. package/lib/components/rich-editor/plugins/inline/link/ui/toolbarBtn.js +0 -117
  79. package/lib/components/rich-editor/plugins/inline/link/utils.js +0 -33
  80. package/lib/components/rich-editor/plugins/inline/strong/index.js +0 -137
  81. package/lib/components/rich-editor/plugins/inline/under-line/index.js +0 -145
  82. package/lib/components/rich-editor/plugins/util.js +0 -281
  83. package/lib/components/rich-editor/react/reactNodeView.js +0 -383
  84. package/lib/components/rich-editor/react/uiProvider.js +0 -185
  85. package/lib/components/rich-editor/schemas/basic.js +0 -309
  86. package/lib/components/rich-editor/schemas/index.js +0 -19
  87. package/lib/components/rich-editor/schemas/list.js +0 -342
  88. package/lib/components/rich-editor/types/commond.js +0 -5
  89. package/lib/components/rich-editor/types/index.js +0 -18
  90. package/lib/components/rich-editor/ui/Popup/index.js +0 -247
  91. package/lib/components/rich-editor/ui/Popup/utils.js +0 -399
  92. package/lib/components/rich-editor/ui/editor/index.css +0 -141
  93. package/lib/components/rich-editor/ui/editor/index.js +0 -130
  94. package/lib/components/rich-editor/ui/normal-toolbar/index.css +0 -28
  95. package/lib/components/rich-editor/ui/normal-toolbar/index.js +0 -109
  96. package/lib/components/rich-editor/utils/browser.js +0 -35
  97. package/lib/components/rich-editor/utils/commands.js +0 -266
  98. package/lib/components/rich-editor/utils/document.js +0 -160
  99. package/lib/components/rich-editor/utils/event.js +0 -79
  100. package/lib/components/rich-editor/utils/helpers.js +0 -16
  101. package/lib/components/rich-editor/utils/mark.js +0 -168
  102. package/lib/components/rich-editor/utils/slice.js +0 -85
  103. package/lib/components/rich-editor/utils/toolbar.js +0 -228
  104. package/yarn-error.log +0 -22184
@@ -1,152 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createInputRule = createInputRule;
7
- exports["default"] = inputRulePlugin;
8
- exports.insertList = void 0;
9
-
10
- var _prosemirrorInputrules = require("prosemirror-inputrules");
11
-
12
- var _analytics = require("../../../analytics");
13
-
14
- var _inputRules = require("../../../utils/input-rules");
15
-
16
- var _analytics2 = require("../../analytics");
17
-
18
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
19
-
20
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
21
-
22
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
23
-
24
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
25
-
26
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
27
-
28
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
29
-
30
- function createInputRule(regexp, nodeType) {
31
- return (0, _prosemirrorInputrules.wrappingInputRule)(regexp, nodeType, {}, function (_, node) {
32
- return node.type === nodeType;
33
- });
34
- }
35
-
36
- var insertList = function insertList(state, listType, listTypeName, start, end) {
37
- // To ensure that match is done after HardBreak.
38
- var hardBreak = state.schema.nodes.hardBreak;
39
-
40
- if (state.doc.resolve(start).nodeAfter.type !== hardBreak) {
41
- return null;
42
- } // To ensure no nesting is done.
43
-
44
-
45
- if (state.doc.resolve(start).depth > 1) {
46
- return null;
47
- } // Track event
48
-
49
-
50
- _analytics.analyticsService.trackEvent("atlassian.editor.format.list.".concat(listTypeName, ".autoformatting")); // Split at the start of autoformatting and delete formatting characters.
51
-
52
-
53
- var tr = state.tr["delete"](start, end).split(start); // If node has more content split at the end of autoformatting.
54
-
55
- var currentNode = tr.doc.nodeAt(start + 1);
56
- tr.doc.nodesBetween(start, start + currentNode.nodeSize, function (node, pos) {
57
- if (node.type === hardBreak) {
58
- tr = tr.split(pos + 1)["delete"](pos, pos + 1);
59
- }
60
- }); // Wrap content in list node
61
-
62
- var listItem = state.schema.nodes.listItem;
63
- var position = tr.doc.resolve(start + 2);
64
- var range = position.blockRange(position);
65
- tr = tr.wrap(range, [{
66
- type: listType
67
- }, {
68
- type: listItem
69
- }]);
70
- return tr;
71
- };
72
- /**
73
- * Create input rules for bullet list node
74
- *
75
- * @param {Schema} schema
76
- * @returns {InputRule[]}
77
- */
78
-
79
-
80
- exports.insertList = insertList;
81
-
82
- function getBulletListInputRules(schema) {
83
- var ruleWithBulletListAnalytics = (0, _analytics2.ruleWithAnalytics)(function () {
84
- return {
85
- action: _analytics2.ACTION.FORMATTED,
86
- actionSubject: _analytics2.ACTION_SUBJECT.TEXT,
87
- actionSubjectId: _analytics2.ACTION_SUBJECT_ID.FORMAT_LIST_BULLET,
88
- eventType: _analytics2.EVENT_TYPE.TRACK,
89
- attributes: {
90
- inputMethod: _analytics2.INPUT_METHOD.FORMATTING
91
- }
92
- };
93
- }); // NOTE: we decided to restrict the creation of bullet lists to only "*"x
94
-
95
- var asteriskRule = (0, _inputRules.defaultInputRuleHandler)(createInputRule(/^\s*([\*\-]) $/, schema.nodes.bulletList), true);
96
- asteriskRule.handler = (0, _analytics.trackAndInvoke)('atlassian.editor.format.list.bullet.autoformatting', asteriskRule.handler);
97
- var leafNodeAsteriskRule = (0, _inputRules.createInputRule)(new RegExp("".concat(_inputRules.leafNodeReplacementCharacter, "\\s*([\\*\\-]) $")), function (state, _match, start, end) {
98
- return insertList(state, schema.nodes.bulletList, 'bullet', start, end);
99
- }, true);
100
- return [ruleWithBulletListAnalytics(asteriskRule), ruleWithBulletListAnalytics(leafNodeAsteriskRule)];
101
- }
102
- /**
103
- * Create input rules for strong mark
104
- *
105
- * @param {Schema} schema
106
- * @returns {InputRule[]}
107
- */
108
-
109
-
110
- function getOrderedListInputRules(schema) {
111
- var ruleWithOrderedListAnalytics = (0, _analytics2.ruleWithAnalytics)(function () {
112
- return {
113
- action: _analytics2.ACTION.FORMATTED,
114
- actionSubject: _analytics2.ACTION_SUBJECT.TEXT,
115
- actionSubjectId: _analytics2.ACTION_SUBJECT_ID.FORMAT_LIST_NUMBER,
116
- eventType: _analytics2.EVENT_TYPE.TRACK,
117
- attributes: {
118
- inputMethod: _analytics2.INPUT_METHOD.FORMATTING
119
- }
120
- };
121
- }); // NOTE: There is a built in input rule for ordered lists in ProseMirror. However, that
122
- // input rule will allow for a list to start at any given number, which isn't allowed in
123
- // markdown (where a ordered list will always start on 1). This is a slightly modified
124
- // version of that input rule.
125
-
126
- var numberOneRule = (0, _inputRules.defaultInputRuleHandler)(createInputRule(/^(1)[\.\)] $/, schema.nodes.orderedList), true);
127
- numberOneRule.handler = (0, _analytics.trackAndInvoke)('atlassian.editor.format.list.numbered.autoformatting', numberOneRule.handler);
128
- var leafNodeNumberOneRule = (0, _inputRules.createInputRule)(new RegExp("".concat(_inputRules.leafNodeReplacementCharacter, "(1)[\\.\\)] $")), function (state, _match, start, end) {
129
- return insertList(state, schema.nodes.orderedList, 'numbered', start, end);
130
- }, true);
131
- return [ruleWithOrderedListAnalytics(numberOneRule), ruleWithOrderedListAnalytics(leafNodeNumberOneRule)];
132
- }
133
-
134
- function inputRulePlugin(schema) {
135
- var rules = [];
136
-
137
- if (schema.nodes.bulletList) {
138
- rules.push.apply(rules, _toConsumableArray(getBulletListInputRules(schema)));
139
- }
140
-
141
- if (schema.nodes.orderedList) {
142
- rules.push.apply(rules, _toConsumableArray(getOrderedListInputRules(schema)));
143
- }
144
-
145
- if (rules.length !== 0) {
146
- return (0, _prosemirrorInputrules.inputRules)({
147
- rules: rules
148
- });
149
- }
150
-
151
- return;
152
- }
@@ -1,33 +0,0 @@
1
- "use strict";
2
-
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = void 0;
9
- exports.keymapPlugin = keymapPlugin;
10
-
11
- var _prosemirrorKeymap = require("prosemirror-keymap");
12
-
13
- var keymaps = _interopRequireWildcard(require("../../../../keymaps"));
14
-
15
- var _commond = require("../commond");
16
-
17
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
18
-
19
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
20
-
21
- function keymapPlugin() {
22
- var list = {};
23
- keymaps.bindKeymapWithCommand(keymaps.findShortcutByKeymap(keymaps.toggleOrderedList), (0, _commond.toggleList)('orderedList'), list);
24
- keymaps.bindKeymapWithCommand(keymaps.findShortcutByKeymap(keymaps.toggleBulletList), (0, _commond.toggleList)('bulletList'), list);
25
- keymaps.bindKeymapWithCommand(keymaps.indentList.common, (0, _commond.indentList)(), list);
26
- keymaps.bindKeymapWithCommand(keymaps.outdentList.common, (0, _commond.outdentList)(), list);
27
- keymaps.bindKeymapWithCommand(keymaps.enter.common, _commond.enterKeyCommand, list);
28
- keymaps.bindKeymapWithCommand(keymaps.backspace.common, _commond.backspaceKeyCommand, list);
29
- return (0, _prosemirrorKeymap.keymap)(list);
30
- }
31
-
32
- var _default = keymapPlugin;
33
- exports["default"] = _default;
@@ -1,94 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.pluginKey = exports["default"] = exports.PmListPlugin = void 0;
7
-
8
- var _prosemirrorState = require("prosemirror-state");
9
-
10
- var _prosemirrorUtils = require("prosemirror-utils");
11
-
12
- var _utils = require("../utils");
13
-
14
- var _mark = require("../../../../utils/mark");
15
-
16
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
17
-
18
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19
-
20
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
21
-
22
- var pluginKey = new _prosemirrorState.PluginKey('listsPlugin');
23
- exports.pluginKey = pluginKey;
24
-
25
- var PmListPlugin = function PmListPlugin(dispatch) {
26
- return new _prosemirrorState.Plugin({
27
- state: {
28
- init: function init() {
29
- return {
30
- bulletListActive: false,
31
- bulletListDisabled: false,
32
- orderedListActive: false,
33
- orderedListDisabled: false
34
- };
35
- },
36
- apply: function apply(tr, pluginState, _, state) {
37
- var _state$schema$nodes = state.schema.nodes,
38
- bulletList = _state$schema$nodes.bulletList,
39
- orderedList = _state$schema$nodes.orderedList;
40
- var listParent = (0, _prosemirrorUtils.findParentNodeOfType)([bulletList, orderedList])(tr.selection);
41
- var bulletListActive = !!listParent && listParent.node.type === bulletList;
42
- var orderedListActive = !!listParent && listParent.node.type === orderedList;
43
- var bulletListDisabled = !(bulletListActive || orderedListActive || (0, _utils.isWrappingPossible)(bulletList, state));
44
- var orderedListDisabled = !(bulletListActive || orderedListActive || (0, _utils.isWrappingPossible)(orderedList, state));
45
-
46
- if (bulletListActive !== pluginState.bulletListActive || orderedListActive !== pluginState.orderedListActive || bulletListDisabled !== pluginState.bulletListDisabled || orderedListDisabled !== pluginState.orderedListDisabled) {
47
- var nextPluginState = _objectSpread(_objectSpread({}, pluginState), {}, {
48
- bulletListActive: bulletListActive,
49
- orderedListActive: orderedListActive,
50
- bulletListDisabled: bulletListDisabled,
51
- orderedListDisabled: orderedListDisabled
52
- });
53
-
54
- dispatch(pluginKey, nextPluginState);
55
- return nextPluginState;
56
- }
57
-
58
- return pluginState;
59
- }
60
- },
61
- view: function view() {
62
- return {
63
- update: function update(_ref) {
64
- var state = _ref.state,
65
- dispatch = _ref.dispatch;
66
- var _state$schema$nodes2 = state.schema.nodes,
67
- bulletList = _state$schema$nodes2.bulletList,
68
- orderedList = _state$schema$nodes2.orderedList;
69
- var _state$schema$marks = state.schema.marks,
70
- alignment = _state$schema$marks.alignment,
71
- indentation = _state$schema$marks.indentation;
72
- var listParent = (0, _prosemirrorUtils.findParentNodeOfType)([bulletList, orderedList])(state.tr.selection);
73
-
74
- if (!listParent) {
75
- return;
76
- }
77
- /** Block mark if exists should be removed when toggled to list items */
78
-
79
-
80
- var removeMarks = (0, _mark.removeBlockMarks)(state, [alignment, indentation]);
81
-
82
- if (removeMarks) {
83
- dispatch(removeMarks);
84
- }
85
- }
86
- };
87
- },
88
- key: pluginKey
89
- });
90
- };
91
-
92
- exports.PmListPlugin = PmListPlugin;
93
- var _default = PmListPlugin;
94
- exports["default"] = _default;
@@ -1,15 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.listsStyles = void 0;
7
-
8
- var _styledComponents = require("styled-components");
9
-
10
- var _templateObject;
11
-
12
- function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
13
-
14
- var listsStyles = (0, _styledComponents.css)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n .ProseMirror li {\n position: relative;\n\n > p:not(:first-child) {\n margin: 4px 0 0 0;\n }\n }\n\n /* Make sure li selections wrap around markers */\n li.ProseMirror-selectednode {\n outline: none;\n }\n\n li.ProseMirror-selectednode::after {\n content: '';\n position: absolute;\n left: -32px;\n right: -2px;\n top: -2px;\n bottom: -2px;\n border: 2px solid #8cf;\n pointer-events: none;\n }\n"])));
15
- exports.listsStyles = listsStyles;
@@ -1,347 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.liftFollowingList = liftFollowingList;
7
- exports.liftSelectionList = liftSelectionList;
8
- exports.upgradeTextToLists = exports.splitParagraphs = void 0;
9
-
10
- var _prosemirrorModel = require("prosemirror-model");
11
-
12
- var _prosemirrorState = require("prosemirror-state");
13
-
14
- var _prosemirrorTransform = require("prosemirror-transform");
15
-
16
- var _prosemirrorCommands = require("prosemirror-commands");
17
-
18
- var _node = require("./utils/node");
19
-
20
- var _slice = require("../../../utils/slice");
21
-
22
- var _indentation = require("./utils/indentation");
23
-
24
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
25
-
26
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
27
-
28
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
29
-
30
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
31
-
32
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
33
-
34
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
35
-
36
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
37
-
38
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
39
-
40
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
41
-
42
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
43
-
44
- function liftListItem(selection, tr) {
45
- var $from = selection.$from,
46
- $to = selection.$to;
47
- var nodeType = tr.doc.type.schema.nodes.listItem;
48
- var range = $from.blockRange($to, function (node) {
49
- return !!node.childCount && !!node.firstChild && node.firstChild.type === nodeType;
50
- });
51
-
52
- if (!range || range.depth < 2 || $from.node(range.depth - 1).type !== nodeType) {
53
- return tr;
54
- }
55
-
56
- var end = range.end;
57
- var endOfList = $to.end(range.depth);
58
-
59
- if (end < endOfList) {
60
- tr.step(new _prosemirrorTransform.ReplaceAroundStep(end - 1, endOfList, end, endOfList, new _prosemirrorModel.Slice(_prosemirrorModel.Fragment.from(nodeType.create(undefined, range.parent.copy())), 1, 0), 1, true));
61
- range = new _prosemirrorModel.NodeRange(tr.doc.resolve($from.pos), tr.doc.resolve(endOfList), range.depth);
62
- }
63
-
64
- return tr.lift(range, (0, _prosemirrorTransform.liftTarget)(range)).scrollIntoView();
65
- } // Function will lift list item following selection to level-1.
66
-
67
-
68
- function liftFollowingList(from, to, rootListDepth, tr) {
69
- var listItem = tr.doc.type.schema.nodes.listItem;
70
- var lifted = false;
71
- tr.doc.nodesBetween(from, to, function (node, pos) {
72
- if (!lifted && node.type === listItem && pos > from) {
73
- lifted = true;
74
- var listDepth = rootListDepth + 3;
75
-
76
- while (listDepth > rootListDepth + 2) {
77
- var start = tr.doc.resolve(tr.mapping.map(pos));
78
- listDepth = start.depth;
79
- var end = tr.doc.resolve(tr.mapping.map(pos + node.textContent.length));
80
- var sel = new _prosemirrorState.TextSelection(start, end);
81
- tr = liftListItem(sel, tr);
82
- }
83
- }
84
- });
85
- return tr;
86
- } // The function will list paragraphs in selection out to level 1 below root list.
87
-
88
-
89
- function liftSelectionList(selection, tr) {
90
- var from = selection.from,
91
- to = selection.to;
92
- var paragraph = tr.doc.type.schema.nodes.paragraph;
93
- var listCol = [];
94
- tr.doc.nodesBetween(from, to, function (node, pos) {
95
- if (node.type === paragraph) {
96
- listCol.push({
97
- node: node,
98
- pos: pos
99
- });
100
- }
101
- });
102
-
103
- for (var i = listCol.length - 1; i >= 0; i--) {
104
- var _paragraph = listCol[i];
105
- var start = tr.doc.resolve(tr.mapping.map(_paragraph.pos));
106
-
107
- if (start.depth > 0) {
108
- var end = void 0;
109
-
110
- if (_paragraph.node.textContent && _paragraph.node.textContent.length > 0) {
111
- end = tr.doc.resolve(tr.mapping.map(_paragraph.pos + _paragraph.node.textContent.length));
112
- } else {
113
- end = tr.doc.resolve(tr.mapping.map(_paragraph.pos + 1));
114
- }
115
-
116
- var range = start.blockRange(end);
117
-
118
- if (range) {
119
- tr.lift(range, (0, _indentation.getListLiftTarget)(start));
120
- }
121
- }
122
- }
123
-
124
- return tr;
125
- } // matchers for text lists
126
-
127
-
128
- var bullets = /^\s*[\*\-\u2022](\s+|\s+$)/;
129
- var numbers = /^\s*\d[\.\)](\s+|$)/;
130
-
131
- var getListType = function getListType(node, schema) {
132
- if (!node.text) {
133
- return null;
134
- }
135
-
136
- var _schema$nodes = schema.nodes,
137
- bulletList = _schema$nodes.bulletList,
138
- orderedList = _schema$nodes.orderedList;
139
- return [{
140
- node: bulletList,
141
- matcher: bullets
142
- }, {
143
- node: orderedList,
144
- matcher: numbers
145
- }].reduce(function (lastMatch, listType) {
146
- if (lastMatch) {
147
- return lastMatch;
148
- }
149
-
150
- var match = node.text.match(listType.matcher);
151
- return match ? [listType.node, match[0].length] : lastMatch;
152
- }, null);
153
- };
154
-
155
- var extractListFromParagraph = function extractListFromParagraph(node, parent, schema) {
156
- var _schema$nodes2 = schema.nodes,
157
- hardBreak = _schema$nodes2.hardBreak,
158
- bulletList = _schema$nodes2.bulletList,
159
- orderedList = _schema$nodes2.orderedList;
160
- var content = (0, _slice.mapChildren)(node.content, function (node) {
161
- return node;
162
- });
163
- var listTypes = [bulletList, orderedList]; // wrap each line into a listItem and a containing list
164
-
165
- var listified = content.map(function (child, index) {
166
- var listMatch = getListType(child, schema);
167
- var prevChild = index > 0 && content[index - 1]; // only extract list when preceded by a hardbreak
168
-
169
- if (prevChild && prevChild.type !== hardBreak) {
170
- return child;
171
- }
172
-
173
- if (!listMatch || !child.text) {
174
- return child;
175
- }
176
-
177
- var _listMatch = _slicedToArray(listMatch, 2),
178
- nodeType = _listMatch[0],
179
- length = _listMatch[1]; // convert to list item
180
-
181
-
182
- var newText = child.text.substr(length);
183
- var listItemNode = schema.nodes.listItem.createAndFill(undefined, schema.nodes.paragraph.createChecked(undefined, newText.length ? schema.text(newText) : undefined));
184
-
185
- if (!listItemNode) {
186
- return child;
187
- }
188
-
189
- var newList = nodeType.createChecked(undefined, [listItemNode]); // Check whether our new list is valid content in our current structure,
190
- // otherwise dont convert.
191
-
192
- if (parent && !parent.type.validContent(_prosemirrorModel.Fragment.from(newList))) {
193
- return child;
194
- }
195
-
196
- return newList;
197
- }).filter(function (child, idx, arr) {
198
- // remove hardBreaks that have a list node on either side
199
- // wasn't hardBreak, leave as-is
200
- if (child.type !== hardBreak) {
201
- return child;
202
- }
203
-
204
- if (idx > 0 && listTypes.indexOf(arr[idx - 1].type) > -1) {
205
- // list node on the left
206
- return null;
207
- }
208
-
209
- if (idx < arr.length - 1 && listTypes.indexOf(arr[idx + 1].type) > -1) {
210
- // list node on the right
211
- return null;
212
- }
213
-
214
- return child;
215
- }); // try to join
216
-
217
- var mockState = _prosemirrorState.EditorState.create({
218
- schema: schema
219
- });
220
-
221
- var joinedListsTr;
222
-
223
- var mockDispatch = function mockDispatch(tr) {
224
- joinedListsTr = tr;
225
- };
226
-
227
- (0, _prosemirrorCommands.autoJoin)(function (state, dispatch) {
228
- if (!dispatch) {
229
- return false;
230
- } // Return false to prevent replaceWith from wrapping the text node in a paragraph
231
- // paragraph since that will be done later. If it's done here, it will fail
232
- // the paragraph.validContent check.
233
- // Dont return false if there are lists, as they arent validContent for paragraphs
234
- // and will result in hanging textNodes
235
-
236
-
237
- var containsList = listified.some(function (node) {
238
- return node.type === bulletList || node.type === orderedList;
239
- });
240
-
241
- if (listified.some(function (node) {
242
- return node.isText;
243
- }) && !containsList) {
244
- return false;
245
- }
246
-
247
- dispatch(state.tr.replaceWith(0, 2, listified));
248
- return true;
249
- }, function (before, after) {
250
- return (0, _node.isListNode)(before) && (0, _node.isListNode)(after);
251
- })(mockState, mockDispatch);
252
- var fragment = joinedListsTr ? joinedListsTr.doc.content : _prosemirrorModel.Fragment.from(listified); // try to re-wrap fragment in paragraph (which is the original node we unwrapped)
253
-
254
- var paragraph = schema.nodes.paragraph;
255
-
256
- if (paragraph.validContent(fragment)) {
257
- return _prosemirrorModel.Fragment.from(paragraph.create(node.attrs, fragment, node.marks));
258
- } // fragment now contains other nodes, get Prosemirror to wrap with ContentMatch later
259
-
260
-
261
- return fragment;
262
- };
263
- /**
264
- * Walks the slice, creating paragraphs that were previously separated by hardbreaks.
265
- * Returns the original paragraph node (as a fragment), or a fragment containing multiple nodes.
266
- */
267
-
268
-
269
- var splitIntoParagraphs = function splitIntoParagraphs(_ref) {
270
- var fragment = _ref.fragment,
271
- _ref$blockMarks = _ref.blockMarks,
272
- blockMarks = _ref$blockMarks === void 0 ? [] : _ref$blockMarks,
273
- schema = _ref.schema;
274
- var paragraphs = [];
275
- var curChildren = [];
276
- var lastNode = null;
277
- var _schema$nodes3 = schema.nodes,
278
- hardBreak = _schema$nodes3.hardBreak,
279
- paragraph = _schema$nodes3.paragraph;
280
- fragment.forEach(function (node) {
281
- if (lastNode && lastNode.type === hardBreak && node.type === hardBreak) {
282
- // double hardbreak
283
- // backtrack a little; remove the trailing hardbreak we added last loop
284
- curChildren.pop(); // create a new paragraph
285
-
286
- paragraphs.push(paragraph.createChecked(undefined, curChildren, _toConsumableArray(blockMarks)));
287
- curChildren = [];
288
- return;
289
- } // add to this paragraph
290
-
291
-
292
- curChildren.push(node);
293
- lastNode = node;
294
- });
295
-
296
- if (curChildren.length) {
297
- paragraphs.push(paragraph.createChecked(undefined, curChildren, _toConsumableArray(blockMarks)));
298
- }
299
-
300
- return _prosemirrorModel.Fragment.from(paragraphs.length ? paragraphs : [paragraph.createAndFill(undefined, undefined, _toConsumableArray(blockMarks))]);
301
- };
302
-
303
- var splitParagraphs = function splitParagraphs(slice, schema) {
304
- // exclude Text nodes with a code mark, since we transform those later
305
- // into a codeblock
306
- var hasCodeMark = false;
307
- slice.content.forEach(function (child) {
308
- hasCodeMark = hasCodeMark || child.marks.some(function (mark) {
309
- return mark.type === schema.marks.code;
310
- });
311
- }); // slice might just be a raw text string
312
-
313
- if (schema.nodes.paragraph.validContent(slice.content) && !hasCodeMark) {
314
- var replSlice = splitIntoParagraphs({
315
- fragment: slice.content,
316
- schema: schema
317
- });
318
- return new _prosemirrorModel.Slice(replSlice, slice.openStart + 1, slice.openEnd + 1);
319
- }
320
-
321
- return (0, _slice.mapSlice)(slice, function (node) {
322
- if (node.type === schema.nodes.paragraph) {
323
- return splitIntoParagraphs({
324
- fragment: node.content,
325
- blockMarks: node.marks,
326
- schema: schema
327
- });
328
- }
329
-
330
- return node;
331
- });
332
- }; // above will wrap everything in paragraphs for us
333
-
334
-
335
- exports.splitParagraphs = splitParagraphs;
336
-
337
- var upgradeTextToLists = function upgradeTextToLists(slice, schema) {
338
- return (0, _slice.mapSlice)(slice, function (node, parent) {
339
- if (node.type === schema.nodes.paragraph) {
340
- return extractListFromParagraph(node, parent, schema);
341
- }
342
-
343
- return node;
344
- });
345
- };
346
-
347
- exports.upgradeTextToLists = upgradeTextToLists;