@atlaskit/editor-core 189.3.29 → 189.3.30
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/CHANGELOG.md +7 -0
- package/dist/cjs/plugins/index.js +0 -7
- package/dist/cjs/presets/universal.js +2 -1
- package/dist/cjs/utils/document.js +0 -6
- package/dist/cjs/utils/index.js +0 -6
- package/dist/cjs/version-wrapper.js +1 -1
- package/dist/es2019/plugins/index.js +0 -1
- package/dist/es2019/presets/universal.js +2 -1
- package/dist/es2019/utils/document.js +1 -1
- package/dist/es2019/utils/index.js +1 -1
- package/dist/es2019/version-wrapper.js +1 -1
- package/dist/esm/plugins/index.js +0 -1
- package/dist/esm/presets/universal.js +2 -1
- package/dist/esm/utils/document.js +1 -1
- package/dist/esm/utils/index.js +1 -1
- package/dist/esm/version-wrapper.js +1 -1
- package/dist/types/plugins/index.d.ts +0 -1
- package/dist/types/plugins/insert-block/types.d.ts +2 -2
- package/dist/types/plugins/toolbar-lists-indentation/index.d.ts +2 -2
- package/dist/types/utils/document.d.ts +1 -1
- package/dist/types/utils/index.d.ts +1 -1
- package/dist/types-ts4.5/plugins/index.d.ts +0 -1
- package/dist/types-ts4.5/plugins/insert-block/types.d.ts +2 -2
- package/dist/types-ts4.5/plugins/toolbar-lists-indentation/index.d.ts +2 -2
- package/dist/types-ts4.5/utils/document.d.ts +1 -1
- package/dist/types-ts4.5/utils/index.d.ts +1 -1
- package/package.json +4 -4
- package/dist/cjs/plugins/tasks-and-decisions/commands.js +0 -288
- package/dist/cjs/plugins/tasks-and-decisions/index.js +0 -166
- package/dist/cjs/plugins/tasks-and-decisions/nodeviews/decisionItem.js +0 -117
- package/dist/cjs/plugins/tasks-and-decisions/nodeviews/hooks/use-show-placeholder.js +0 -40
- package/dist/cjs/plugins/tasks-and-decisions/nodeviews/taskItem.js +0 -211
- package/dist/cjs/plugins/tasks-and-decisions/pm-plugins/commands.js +0 -96
- package/dist/cjs/plugins/tasks-and-decisions/pm-plugins/helpers.js +0 -299
- package/dist/cjs/plugins/tasks-and-decisions/pm-plugins/input-rules.js +0 -94
- package/dist/cjs/plugins/tasks-and-decisions/pm-plugins/keymaps.js +0 -376
- package/dist/cjs/plugins/tasks-and-decisions/pm-plugins/main.js +0 -263
- package/dist/cjs/plugins/tasks-and-decisions/pm-plugins/plugin-key.js +0 -8
- package/dist/cjs/plugins/tasks-and-decisions/pm-plugins/types.js +0 -11
- package/dist/cjs/plugins/tasks-and-decisions/types.js +0 -5
- package/dist/cjs/plugins/tasks-and-decisions/ui/Decision/index.js +0 -51
- package/dist/cjs/plugins/tasks-and-decisions/ui/Task/index.js +0 -80
- package/dist/cjs/plugins/tasks-and-decisions/ui/Task/task-item-with-providers.js +0 -137
- package/dist/cjs/plugins/tasks-and-decisions/ui/ToolbarDecision/index.js +0 -76
- package/dist/cjs/plugins/tasks-and-decisions/ui/ToolbarTask/index.js +0 -75
- package/dist/cjs/plugins/tasks-and-decisions/utils.js +0 -41
- package/dist/es2019/plugins/tasks-and-decisions/commands.js +0 -279
- package/dist/es2019/plugins/tasks-and-decisions/index.js +0 -155
- package/dist/es2019/plugins/tasks-and-decisions/nodeviews/decisionItem.js +0 -76
- package/dist/es2019/plugins/tasks-and-decisions/nodeviews/hooks/use-show-placeholder.js +0 -36
- package/dist/es2019/plugins/tasks-and-decisions/nodeviews/taskItem.js +0 -173
- package/dist/es2019/plugins/tasks-and-decisions/pm-plugins/commands.js +0 -94
- package/dist/es2019/plugins/tasks-and-decisions/pm-plugins/helpers.js +0 -316
- package/dist/es2019/plugins/tasks-and-decisions/pm-plugins/input-rules.js +0 -91
- package/dist/es2019/plugins/tasks-and-decisions/pm-plugins/keymaps.js +0 -370
- package/dist/es2019/plugins/tasks-and-decisions/pm-plugins/main.js +0 -262
- package/dist/es2019/plugins/tasks-and-decisions/pm-plugins/plugin-key.js +0 -2
- package/dist/es2019/plugins/tasks-and-decisions/pm-plugins/types.js +0 -5
- package/dist/es2019/plugins/tasks-and-decisions/types.js +0 -1
- package/dist/es2019/plugins/tasks-and-decisions/ui/Decision/index.js +0 -30
- package/dist/es2019/plugins/tasks-and-decisions/ui/Task/index.js +0 -54
- package/dist/es2019/plugins/tasks-and-decisions/ui/Task/task-item-with-providers.js +0 -71
- package/dist/es2019/plugins/tasks-and-decisions/ui/ToolbarDecision/index.js +0 -52
- package/dist/es2019/plugins/tasks-and-decisions/ui/ToolbarTask/index.js +0 -51
- package/dist/es2019/plugins/tasks-and-decisions/utils.js +0 -32
- package/dist/esm/plugins/tasks-and-decisions/commands.js +0 -281
- package/dist/esm/plugins/tasks-and-decisions/index.js +0 -156
- package/dist/esm/plugins/tasks-and-decisions/nodeviews/decisionItem.js +0 -110
- package/dist/esm/plugins/tasks-and-decisions/nodeviews/hooks/use-show-placeholder.js +0 -34
- package/dist/esm/plugins/tasks-and-decisions/nodeviews/taskItem.js +0 -204
- package/dist/esm/plugins/tasks-and-decisions/pm-plugins/commands.js +0 -90
- package/dist/esm/plugins/tasks-and-decisions/pm-plugins/helpers.js +0 -285
- package/dist/esm/plugins/tasks-and-decisions/pm-plugins/input-rules.js +0 -87
- package/dist/esm/plugins/tasks-and-decisions/pm-plugins/keymaps.js +0 -368
- package/dist/esm/plugins/tasks-and-decisions/pm-plugins/main.js +0 -256
- package/dist/esm/plugins/tasks-and-decisions/pm-plugins/plugin-key.js +0 -2
- package/dist/esm/plugins/tasks-and-decisions/pm-plugins/types.js +0 -5
- package/dist/esm/plugins/tasks-and-decisions/types.js +0 -1
- package/dist/esm/plugins/tasks-and-decisions/ui/Decision/index.js +0 -44
- package/dist/esm/plugins/tasks-and-decisions/ui/Task/index.js +0 -70
- package/dist/esm/plugins/tasks-and-decisions/ui/Task/task-item-with-providers.js +0 -128
- package/dist/esm/plugins/tasks-and-decisions/ui/ToolbarDecision/index.js +0 -66
- package/dist/esm/plugins/tasks-and-decisions/ui/ToolbarTask/index.js +0 -65
- package/dist/esm/plugins/tasks-and-decisions/utils.js +0 -30
- package/dist/types/plugins/tasks-and-decisions/commands.d.ts +0 -16
- package/dist/types/plugins/tasks-and-decisions/index.d.ts +0 -3
- package/dist/types/plugins/tasks-and-decisions/nodeviews/decisionItem.d.ts +0 -10
- package/dist/types/plugins/tasks-and-decisions/nodeviews/hooks/use-show-placeholder.d.ts +0 -11
- package/dist/types/plugins/tasks-and-decisions/nodeviews/taskItem.d.ts +0 -14
- package/dist/types/plugins/tasks-and-decisions/pm-plugins/commands.d.ts +0 -15
- package/dist/types/plugins/tasks-and-decisions/pm-plugins/helpers.d.ts +0 -76
- package/dist/types/plugins/tasks-and-decisions/pm-plugins/input-rules.d.ts +0 -6
- package/dist/types/plugins/tasks-and-decisions/pm-plugins/keymaps.d.ts +0 -11
- package/dist/types/plugins/tasks-and-decisions/pm-plugins/main.d.ts +0 -7
- package/dist/types/plugins/tasks-and-decisions/pm-plugins/plugin-key.d.ts +0 -2
- package/dist/types/plugins/tasks-and-decisions/pm-plugins/types.d.ts +0 -8
- package/dist/types/plugins/tasks-and-decisions/types.d.ts +0 -49
- package/dist/types/plugins/tasks-and-decisions/ui/Decision/index.d.ts +0 -14
- package/dist/types/plugins/tasks-and-decisions/ui/Task/index.d.ts +0 -28
- package/dist/types/plugins/tasks-and-decisions/ui/Task/task-item-with-providers.d.ts +0 -29
- package/dist/types/plugins/tasks-and-decisions/ui/ToolbarDecision/index.d.ts +0 -23
- package/dist/types/plugins/tasks-and-decisions/ui/ToolbarTask/index.d.ts +0 -23
- package/dist/types/plugins/tasks-and-decisions/utils.d.ts +0 -4
- package/dist/types-ts4.5/plugins/tasks-and-decisions/commands.d.ts +0 -16
- package/dist/types-ts4.5/plugins/tasks-and-decisions/index.d.ts +0 -3
- package/dist/types-ts4.5/plugins/tasks-and-decisions/nodeviews/decisionItem.d.ts +0 -10
- package/dist/types-ts4.5/plugins/tasks-and-decisions/nodeviews/hooks/use-show-placeholder.d.ts +0 -11
- package/dist/types-ts4.5/plugins/tasks-and-decisions/nodeviews/taskItem.d.ts +0 -14
- package/dist/types-ts4.5/plugins/tasks-and-decisions/pm-plugins/commands.d.ts +0 -15
- package/dist/types-ts4.5/plugins/tasks-and-decisions/pm-plugins/helpers.d.ts +0 -76
- package/dist/types-ts4.5/plugins/tasks-and-decisions/pm-plugins/input-rules.d.ts +0 -6
- package/dist/types-ts4.5/plugins/tasks-and-decisions/pm-plugins/keymaps.d.ts +0 -11
- package/dist/types-ts4.5/plugins/tasks-and-decisions/pm-plugins/main.d.ts +0 -7
- package/dist/types-ts4.5/plugins/tasks-and-decisions/pm-plugins/plugin-key.d.ts +0 -2
- package/dist/types-ts4.5/plugins/tasks-and-decisions/pm-plugins/types.d.ts +0 -8
- package/dist/types-ts4.5/plugins/tasks-and-decisions/types.d.ts +0 -49
- package/dist/types-ts4.5/plugins/tasks-and-decisions/ui/Decision/index.d.ts +0 -14
- package/dist/types-ts4.5/plugins/tasks-and-decisions/ui/Task/index.d.ts +0 -28
- package/dist/types-ts4.5/plugins/tasks-and-decisions/ui/Task/task-item-with-providers.d.ts +0 -29
- package/dist/types-ts4.5/plugins/tasks-and-decisions/ui/ToolbarDecision/index.d.ts +0 -23
- package/dist/types-ts4.5/plugins/tasks-and-decisions/ui/ToolbarTask/index.d.ts +0 -23
- package/dist/types-ts4.5/plugins/tasks-and-decisions/utils.d.ts +0 -4
|
@@ -1,166 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.default = void 0;
|
|
9
|
-
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
10
|
-
var _react = require("@emotion/react");
|
|
11
|
-
var _adfSchema = require("@atlaskit/adf-schema");
|
|
12
|
-
var _analytics = require("@atlaskit/editor-common/analytics");
|
|
13
|
-
var _messages = require("@atlaskit/editor-common/messages");
|
|
14
|
-
var _quickInsert = require("@atlaskit/editor-common/quick-insert");
|
|
15
|
-
var _pluginKey = require("./pm-plugins/plugin-key");
|
|
16
|
-
var _commands = require("./commands");
|
|
17
|
-
var _inputRules = _interopRequireDefault(require("./pm-plugins/input-rules"));
|
|
18
|
-
var _keymaps = _interopRequireWildcard(require("./pm-plugins/keymaps"));
|
|
19
|
-
var _main = require("./pm-plugins/main");
|
|
20
|
-
var _ToolbarDecision = _interopRequireDefault(require("./ui/ToolbarDecision"));
|
|
21
|
-
var _ToolbarTask = _interopRequireDefault(require("./ui/ToolbarTask"));
|
|
22
|
-
var _helpers = require("./pm-plugins/helpers");
|
|
23
|
-
var _indentation = require("@atlaskit/editor-common/indentation");
|
|
24
|
-
var _templateObject;
|
|
25
|
-
/** @jsx jsx */
|
|
26
|
-
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); }
|
|
27
|
-
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; }
|
|
28
|
-
var taskDecisionToolbarGroup = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n"])));
|
|
29
|
-
var addItem = function addItem(insert, listType, schema) {
|
|
30
|
-
return function (_ref) {
|
|
31
|
-
var listLocalId = _ref.listLocalId,
|
|
32
|
-
itemLocalId = _ref.itemLocalId;
|
|
33
|
-
var _getListTypes = (0, _commands.getListTypes)(listType, schema),
|
|
34
|
-
list = _getListTypes.list,
|
|
35
|
-
item = _getListTypes.item;
|
|
36
|
-
return insert(list.createChecked({
|
|
37
|
-
localId: listLocalId
|
|
38
|
-
}, item.createChecked({
|
|
39
|
-
localId: itemLocalId
|
|
40
|
-
})));
|
|
41
|
-
};
|
|
42
|
-
};
|
|
43
|
-
var tasksAndDecisionsPlugin = function tasksAndDecisionsPlugin(_ref2) {
|
|
44
|
-
var _api$analytics, _api$analytics2, _api$analytics3;
|
|
45
|
-
var _ref2$config = _ref2.config,
|
|
46
|
-
_ref2$config2 = _ref2$config === void 0 ? {} : _ref2$config,
|
|
47
|
-
allowNestedTasks = _ref2$config2.allowNestedTasks,
|
|
48
|
-
consumeTabs = _ref2$config2.consumeTabs,
|
|
49
|
-
useLongPressSelection = _ref2$config2.useLongPressSelection,
|
|
50
|
-
api = _ref2.api;
|
|
51
|
-
return {
|
|
52
|
-
name: 'taskDecision',
|
|
53
|
-
nodes: function nodes() {
|
|
54
|
-
return [{
|
|
55
|
-
name: 'decisionList',
|
|
56
|
-
node: _adfSchema.decisionList
|
|
57
|
-
}, {
|
|
58
|
-
name: 'decisionItem',
|
|
59
|
-
node: _adfSchema.decisionItem
|
|
60
|
-
}, {
|
|
61
|
-
name: 'taskList',
|
|
62
|
-
node: _adfSchema.taskList
|
|
63
|
-
}, {
|
|
64
|
-
name: 'taskItem',
|
|
65
|
-
node: _adfSchema.taskItem
|
|
66
|
-
}];
|
|
67
|
-
},
|
|
68
|
-
getSharedState: function getSharedState(editorState) {
|
|
69
|
-
if (!editorState) {
|
|
70
|
-
return undefined;
|
|
71
|
-
}
|
|
72
|
-
var pluginState = _pluginKey.stateKey.getState(editorState);
|
|
73
|
-
var indentLevel = (0, _helpers.getCurrentIndentLevel)(editorState.selection) || 0;
|
|
74
|
-
var itemIndex = (0, _helpers.getTaskItemIndex)(editorState);
|
|
75
|
-
return {
|
|
76
|
-
focusedTaskItemLocalId: (pluginState === null || pluginState === void 0 ? void 0 : pluginState.focusedTaskItemLocalId) || null,
|
|
77
|
-
isInsideTask: (0, _helpers.isInsideTask)(editorState),
|
|
78
|
-
indentDisabled: itemIndex === 0 || indentLevel >= _indentation.MAX_INDENTATION_LEVEL,
|
|
79
|
-
outdentDisabled: indentLevel <= 1
|
|
80
|
-
};
|
|
81
|
-
},
|
|
82
|
-
actions: {
|
|
83
|
-
insertTaskDecision: (0, _commands.insertTaskDecisionCommand)(api === null || api === void 0 || (_api$analytics = api.analytics) === null || _api$analytics === void 0 ? void 0 : _api$analytics.actions),
|
|
84
|
-
indentTaskList: (0, _keymaps.getIndentCommand)(api === null || api === void 0 || (_api$analytics2 = api.analytics) === null || _api$analytics2 === void 0 ? void 0 : _api$analytics2.actions),
|
|
85
|
-
outdentTaskList: (0, _keymaps.getUnindentCommand)(api === null || api === void 0 || (_api$analytics3 = api.analytics) === null || _api$analytics3 === void 0 ? void 0 : _api$analytics3.actions)
|
|
86
|
-
},
|
|
87
|
-
pmPlugins: function pmPlugins() {
|
|
88
|
-
return [{
|
|
89
|
-
name: 'tasksAndDecisions',
|
|
90
|
-
plugin: function plugin(_ref3) {
|
|
91
|
-
var portalProviderAPI = _ref3.portalProviderAPI,
|
|
92
|
-
providerFactory = _ref3.providerFactory,
|
|
93
|
-
eventDispatcher = _ref3.eventDispatcher,
|
|
94
|
-
dispatch = _ref3.dispatch;
|
|
95
|
-
return (0, _main.createPlugin)(portalProviderAPI, eventDispatcher, providerFactory, dispatch, api, useLongPressSelection);
|
|
96
|
-
}
|
|
97
|
-
}, {
|
|
98
|
-
name: 'tasksAndDecisionsInputRule',
|
|
99
|
-
plugin: function plugin(_ref4) {
|
|
100
|
-
var _api$analytics4;
|
|
101
|
-
var schema = _ref4.schema,
|
|
102
|
-
featureFlags = _ref4.featureFlags;
|
|
103
|
-
return (0, _inputRules.default)(api === null || api === void 0 || (_api$analytics4 = api.analytics) === null || _api$analytics4 === void 0 ? void 0 : _api$analytics4.actions)(schema, featureFlags);
|
|
104
|
-
}
|
|
105
|
-
}, {
|
|
106
|
-
name: 'tasksAndDecisionsKeyMap',
|
|
107
|
-
plugin: function plugin(_ref5) {
|
|
108
|
-
var schema = _ref5.schema;
|
|
109
|
-
return (0, _keymaps.default)(schema, api, allowNestedTasks, consumeTabs);
|
|
110
|
-
}
|
|
111
|
-
} // Needs to be after "save-on-enter"
|
|
112
|
-
];
|
|
113
|
-
},
|
|
114
|
-
secondaryToolbarComponent: function secondaryToolbarComponent(_ref6) {
|
|
115
|
-
var editorView = _ref6.editorView,
|
|
116
|
-
disabled = _ref6.disabled;
|
|
117
|
-
return (0, _react.jsx)("div", {
|
|
118
|
-
css: taskDecisionToolbarGroup
|
|
119
|
-
}, (0, _react.jsx)(_ToolbarDecision.default, {
|
|
120
|
-
editorView: editorView,
|
|
121
|
-
isDisabled: disabled,
|
|
122
|
-
isReducedSpacing: true,
|
|
123
|
-
editorAPI: api
|
|
124
|
-
}), (0, _react.jsx)(_ToolbarTask.default, {
|
|
125
|
-
editorView: editorView,
|
|
126
|
-
isDisabled: disabled,
|
|
127
|
-
isReducedSpacing: true,
|
|
128
|
-
editorAPI: api
|
|
129
|
-
}));
|
|
130
|
-
},
|
|
131
|
-
pluginsOptions: {
|
|
132
|
-
quickInsert: function quickInsert(_ref7) {
|
|
133
|
-
var formatMessage = _ref7.formatMessage;
|
|
134
|
-
return [{
|
|
135
|
-
id: 'action',
|
|
136
|
-
title: formatMessage(_messages.toolbarInsertBlockMessages.action),
|
|
137
|
-
description: formatMessage(_messages.toolbarInsertBlockMessages.actionDescription),
|
|
138
|
-
priority: 100,
|
|
139
|
-
keywords: ['checkbox', 'task', 'todo'],
|
|
140
|
-
keyshortcut: '[]',
|
|
141
|
-
icon: function icon() {
|
|
142
|
-
return (0, _react.jsx)(_quickInsert.IconAction, null);
|
|
143
|
-
},
|
|
144
|
-
action: function action(insert, state) {
|
|
145
|
-
var _api$analytics5;
|
|
146
|
-
return (0, _commands.insertTaskDecisionAction)(api === null || api === void 0 || (_api$analytics5 = api.analytics) === null || _api$analytics5 === void 0 ? void 0 : _api$analytics5.actions)(state, 'taskList', _analytics.INPUT_METHOD.QUICK_INSERT, addItem(insert, 'taskList', state.schema));
|
|
147
|
-
}
|
|
148
|
-
}, {
|
|
149
|
-
id: 'decision',
|
|
150
|
-
title: formatMessage(_messages.toolbarInsertBlockMessages.decision),
|
|
151
|
-
description: formatMessage(_messages.toolbarInsertBlockMessages.decisionDescription),
|
|
152
|
-
priority: 900,
|
|
153
|
-
keyshortcut: '<>',
|
|
154
|
-
icon: function icon() {
|
|
155
|
-
return (0, _react.jsx)(_quickInsert.IconDecision, null);
|
|
156
|
-
},
|
|
157
|
-
action: function action(insert, state) {
|
|
158
|
-
var _api$analytics6;
|
|
159
|
-
return (0, _commands.insertTaskDecisionAction)(api === null || api === void 0 || (_api$analytics6 = api.analytics) === null || _api$analytics6 === void 0 ? void 0 : _api$analytics6.actions)(state, 'decisionList', _analytics.INPUT_METHOD.QUICK_INSERT, addItem(insert, 'decisionList', state.schema));
|
|
160
|
-
}
|
|
161
|
-
}];
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
};
|
|
165
|
-
};
|
|
166
|
-
var _default = exports.default = tasksAndDecisionsPlugin;
|
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.decisionItemNodeView = void 0;
|
|
8
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
9
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
10
|
-
var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
|
|
11
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
12
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
13
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
14
|
-
var _react = _interopRequireDefault(require("react"));
|
|
15
|
-
var _reactNodeView = _interopRequireDefault(require("@atlaskit/editor-common/react-node-view"));
|
|
16
|
-
var _useShowPlaceholder = require("./hooks/use-show-placeholder");
|
|
17
|
-
var _Decision = _interopRequireDefault(require("../ui/Decision"));
|
|
18
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
19
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
20
|
-
var DecisionItemWrapper = function DecisionItemWrapper(_ref) {
|
|
21
|
-
var api = _ref.api,
|
|
22
|
-
editorView = _ref.editorView,
|
|
23
|
-
forwardRef = _ref.forwardRef,
|
|
24
|
-
isContentNodeEmpty = _ref.isContentNodeEmpty,
|
|
25
|
-
getPos = _ref.getPos;
|
|
26
|
-
var showPlaceholder = (0, _useShowPlaceholder.useShowPlaceholder)({
|
|
27
|
-
editorView: editorView,
|
|
28
|
-
isContentNodeEmpty: isContentNodeEmpty,
|
|
29
|
-
getPos: getPos,
|
|
30
|
-
api: api
|
|
31
|
-
});
|
|
32
|
-
return /*#__PURE__*/_react.default.createElement(_Decision.default, {
|
|
33
|
-
contentRef: forwardRef,
|
|
34
|
-
showPlaceholder: showPlaceholder
|
|
35
|
-
});
|
|
36
|
-
};
|
|
37
|
-
var Decision = /*#__PURE__*/function (_ReactNodeView) {
|
|
38
|
-
(0, _inherits2.default)(Decision, _ReactNodeView);
|
|
39
|
-
var _super = _createSuper(Decision);
|
|
40
|
-
function Decision() {
|
|
41
|
-
(0, _classCallCheck2.default)(this, Decision);
|
|
42
|
-
return _super.apply(this, arguments);
|
|
43
|
-
}
|
|
44
|
-
(0, _createClass2.default)(Decision, [{
|
|
45
|
-
key: "isContentEmpty",
|
|
46
|
-
value: function isContentEmpty(node) {
|
|
47
|
-
return node.content.childCount === 0;
|
|
48
|
-
}
|
|
49
|
-
}, {
|
|
50
|
-
key: "initWithAPI",
|
|
51
|
-
value: function initWithAPI(api) {
|
|
52
|
-
this.api = api;
|
|
53
|
-
this.init();
|
|
54
|
-
return this;
|
|
55
|
-
}
|
|
56
|
-
}, {
|
|
57
|
-
key: "createDomRef",
|
|
58
|
-
value: function createDomRef() {
|
|
59
|
-
var domRef = document.createElement('li');
|
|
60
|
-
domRef.style['list-style-type'] = 'none';
|
|
61
|
-
return domRef;
|
|
62
|
-
}
|
|
63
|
-
}, {
|
|
64
|
-
key: "getContentDOM",
|
|
65
|
-
value: function getContentDOM() {
|
|
66
|
-
var dom = document.createElement('div');
|
|
67
|
-
// setting a className prevents PM/Chrome mutation observer from
|
|
68
|
-
// incorrectly deleting nodes
|
|
69
|
-
dom.className = 'decision-item';
|
|
70
|
-
return {
|
|
71
|
-
dom: dom
|
|
72
|
-
};
|
|
73
|
-
}
|
|
74
|
-
}, {
|
|
75
|
-
key: "render",
|
|
76
|
-
value: function render(_props, forwardRef) {
|
|
77
|
-
var isContentNodeEmpty = this.isContentEmpty(this.node);
|
|
78
|
-
return /*#__PURE__*/_react.default.createElement(DecisionItemWrapper, {
|
|
79
|
-
forwardRef: forwardRef,
|
|
80
|
-
isContentNodeEmpty: isContentNodeEmpty,
|
|
81
|
-
api: this.api
|
|
82
|
-
// The getPosHandler type is wrong, there is no `boolean` in the real implementation
|
|
83
|
-
// @ts-expect-error 2322: Type 'getPosHandler' is not assignable to type '() => number | undefined'.
|
|
84
|
-
,
|
|
85
|
-
getPos: this.getPos,
|
|
86
|
-
editorView: this.view
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
}, {
|
|
90
|
-
key: "viewShouldUpdate",
|
|
91
|
-
value: function viewShouldUpdate(nextNode) {
|
|
92
|
-
/**
|
|
93
|
-
* To ensure the placeholder is correctly toggled we need to allow react to re-render
|
|
94
|
-
* on first character insertion.
|
|
95
|
-
* Note: last character deletion is handled externally and automatically re-renders.
|
|
96
|
-
*/
|
|
97
|
-
return this.isContentEmpty(this.node) && !!nextNode.content.childCount;
|
|
98
|
-
}
|
|
99
|
-
}, {
|
|
100
|
-
key: "update",
|
|
101
|
-
value: function update(node, decorations) {
|
|
102
|
-
var _this = this;
|
|
103
|
-
return (0, _get2.default)((0, _getPrototypeOf2.default)(Decision.prototype), "update", this).call(this, node, decorations, undefined,
|
|
104
|
-
// Toggle the placeholder based on whether user input exists.
|
|
105
|
-
function (_currentNode, _newNode) {
|
|
106
|
-
return !_this.isContentEmpty(_newNode);
|
|
107
|
-
});
|
|
108
|
-
}
|
|
109
|
-
}]);
|
|
110
|
-
return Decision;
|
|
111
|
-
}(_reactNodeView.default);
|
|
112
|
-
var decisionItemNodeView = exports.decisionItemNodeView = function decisionItemNodeView(portalProviderAPI, eventDispatcher, api) {
|
|
113
|
-
return function (node, view, getPos) {
|
|
114
|
-
var hasIntlContext = true;
|
|
115
|
-
return new Decision(node, view, getPos, portalProviderAPI, eventDispatcher, {}, undefined, undefined, undefined, hasIntlContext).initWithAPI(api);
|
|
116
|
-
};
|
|
117
|
-
};
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.useShowPlaceholder = void 0;
|
|
7
|
-
var _react = require("react");
|
|
8
|
-
var _state = require("@atlaskit/editor-prosemirror/state");
|
|
9
|
-
var _hooks = require("@atlaskit/editor-common/hooks");
|
|
10
|
-
var useShowPlaceholder = exports.useShowPlaceholder = function useShowPlaceholder(_ref) {
|
|
11
|
-
var editorView = _ref.editorView,
|
|
12
|
-
api = _ref.api,
|
|
13
|
-
isContentNodeEmpty = _ref.isContentNodeEmpty,
|
|
14
|
-
getPos = _ref.getPos;
|
|
15
|
-
var _useSharedPluginState = (0, _hooks.useSharedPluginState)(api, ['typeAhead']),
|
|
16
|
-
typeAheadState = _useSharedPluginState.typeAheadState;
|
|
17
|
-
var isTypeAheadOpen = Boolean(typeAheadState === null || typeAheadState === void 0 ? void 0 : typeAheadState.isOpen);
|
|
18
|
-
var isTypeAheadOpenedInsideItem = (0, _react.useMemo)(function () {
|
|
19
|
-
var _selection$$cursor;
|
|
20
|
-
if (!isTypeAheadOpen) {
|
|
21
|
-
return false;
|
|
22
|
-
}
|
|
23
|
-
var itemPosition = getPos();
|
|
24
|
-
if (typeof itemPosition !== 'number') {
|
|
25
|
-
return false;
|
|
26
|
-
}
|
|
27
|
-
var selection = editorView.state.selection;
|
|
28
|
-
if (!(selection instanceof _state.TextSelection)) {
|
|
29
|
-
return false;
|
|
30
|
-
}
|
|
31
|
-
var maybeItemNode = editorView.state.doc.nodeAt(itemPosition);
|
|
32
|
-
var maybeParentItemNode = (_selection$$cursor = selection.$cursor) === null || _selection$$cursor === void 0 ? void 0 : _selection$$cursor.node();
|
|
33
|
-
if (maybeItemNode && maybeParentItemNode && maybeItemNode.eq(maybeParentItemNode)) {
|
|
34
|
-
return true;
|
|
35
|
-
}
|
|
36
|
-
return false;
|
|
37
|
-
}, [isTypeAheadOpen, getPos, editorView]);
|
|
38
|
-
var showPlaceholder = Boolean(!isTypeAheadOpenedInsideItem && isContentNodeEmpty);
|
|
39
|
-
return showPlaceholder;
|
|
40
|
-
};
|
|
@@ -1,211 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.taskItemNodeViewFactory = taskItemNodeViewFactory;
|
|
8
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
9
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
10
|
-
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
11
|
-
var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
|
|
12
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
13
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
14
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
15
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
|
-
var _react = _interopRequireDefault(require("react"));
|
|
17
|
-
var _analyticsNext = require("@atlaskit/analytics-next");
|
|
18
|
-
var _steps = require("@atlaskit/adf-schema/steps");
|
|
19
|
-
var _reactNodeView = _interopRequireDefault(require("@atlaskit/editor-common/react-node-view"));
|
|
20
|
-
var _hooks = require("@atlaskit/editor-common/hooks");
|
|
21
|
-
var _useShowPlaceholder = require("./hooks/use-show-placeholder");
|
|
22
|
-
var _Task = _interopRequireDefault(require("../ui/Task"));
|
|
23
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
24
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
25
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
26
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
27
|
-
var TaskItemWrapper = function TaskItemWrapper(_ref) {
|
|
28
|
-
var localId = _ref.localId,
|
|
29
|
-
forwardRef = _ref.forwardRef,
|
|
30
|
-
isDone = _ref.isDone,
|
|
31
|
-
onChange = _ref.onChange,
|
|
32
|
-
providerFactory = _ref.providerFactory,
|
|
33
|
-
isContentNodeEmpty = _ref.isContentNodeEmpty,
|
|
34
|
-
api = _ref.api,
|
|
35
|
-
getPos = _ref.getPos,
|
|
36
|
-
editorView = _ref.editorView;
|
|
37
|
-
var _useSharedPluginState = (0, _hooks.useSharedPluginState)(api, ['taskDecision']),
|
|
38
|
-
taskDecisionState = _useSharedPluginState.taskDecisionState;
|
|
39
|
-
var isFocused = Boolean((taskDecisionState === null || taskDecisionState === void 0 ? void 0 : taskDecisionState.focusedTaskItemLocalId) === localId);
|
|
40
|
-
var showPlaceholder = (0, _useShowPlaceholder.useShowPlaceholder)({
|
|
41
|
-
editorView: editorView,
|
|
42
|
-
isContentNodeEmpty: isContentNodeEmpty,
|
|
43
|
-
getPos: getPos,
|
|
44
|
-
api: api
|
|
45
|
-
});
|
|
46
|
-
return /*#__PURE__*/_react.default.createElement(_Task.default, {
|
|
47
|
-
taskId: localId,
|
|
48
|
-
contentRef: forwardRef,
|
|
49
|
-
isDone: isDone,
|
|
50
|
-
onChange: onChange,
|
|
51
|
-
isFocused: isFocused,
|
|
52
|
-
showPlaceholder: showPlaceholder,
|
|
53
|
-
providers: providerFactory
|
|
54
|
-
});
|
|
55
|
-
};
|
|
56
|
-
var Task = /*#__PURE__*/function (_ReactNodeView) {
|
|
57
|
-
(0, _inherits2.default)(Task, _ReactNodeView);
|
|
58
|
-
var _super = _createSuper(Task);
|
|
59
|
-
function Task() {
|
|
60
|
-
var _this;
|
|
61
|
-
(0, _classCallCheck2.default)(this, Task);
|
|
62
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
63
|
-
args[_key] = arguments[_key];
|
|
64
|
-
}
|
|
65
|
-
_this = _super.call.apply(_super, [this].concat(args));
|
|
66
|
-
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleOnChange", function (taskId, isChecked) {
|
|
67
|
-
var tr = _this.view.state.tr;
|
|
68
|
-
var nodePos = _this.getPos();
|
|
69
|
-
if (typeof nodePos !== 'number') {
|
|
70
|
-
return false;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
// SetAttrsStep should be used to prevent task updates from being dropped when mapping task ticks
|
|
74
|
-
// from a previous version of the document, such as a published page.
|
|
75
|
-
tr.step(new _steps.SetAttrsStep(nodePos, {
|
|
76
|
-
state: isChecked ? 'DONE' : 'TODO',
|
|
77
|
-
localId: taskId
|
|
78
|
-
}));
|
|
79
|
-
tr.setMeta('scrollIntoView', false);
|
|
80
|
-
_this.view.dispatch(tr);
|
|
81
|
-
});
|
|
82
|
-
/**
|
|
83
|
-
* Dynamically generates analytics data relating to the parent list.
|
|
84
|
-
*
|
|
85
|
-
* Required to be dynamic, as list (in prosemirror model) may have
|
|
86
|
-
* changed (e.g. item movements, or additional items in list).
|
|
87
|
-
* This node view will have not rerendered for those changes, so
|
|
88
|
-
* cannot render the position and listSize into the
|
|
89
|
-
* AnalyticsContext at initial render time.
|
|
90
|
-
*/
|
|
91
|
-
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "addListAnalyticsData", function (event) {
|
|
92
|
-
try {
|
|
93
|
-
var nodePos = _this.getPos();
|
|
94
|
-
if (typeof nodePos !== 'number') {
|
|
95
|
-
return false;
|
|
96
|
-
}
|
|
97
|
-
var resolvedPos = _this.view.state.doc.resolve(nodePos);
|
|
98
|
-
var position = resolvedPos.index();
|
|
99
|
-
var listSize = resolvedPos.parent.childCount;
|
|
100
|
-
var listLocalId = resolvedPos.parent.attrs.localId;
|
|
101
|
-
event.update(function (payload) {
|
|
102
|
-
var _payload$attributes = payload.attributes,
|
|
103
|
-
attributes = _payload$attributes === void 0 ? {} : _payload$attributes,
|
|
104
|
-
actionSubject = payload.actionSubject;
|
|
105
|
-
if (actionSubject !== 'action') {
|
|
106
|
-
// Not action related, ignore
|
|
107
|
-
return payload;
|
|
108
|
-
}
|
|
109
|
-
return _objectSpread(_objectSpread({}, payload), {}, {
|
|
110
|
-
attributes: _objectSpread(_objectSpread({}, attributes), {}, {
|
|
111
|
-
position: position,
|
|
112
|
-
listSize: listSize,
|
|
113
|
-
listLocalId: listLocalId
|
|
114
|
-
})
|
|
115
|
-
});
|
|
116
|
-
});
|
|
117
|
-
} catch (e) {
|
|
118
|
-
// This can occur if pos is NaN (seen it in some test cases)
|
|
119
|
-
// Act defensively here, and lose some analytics data rather than
|
|
120
|
-
// cause any user facing error.
|
|
121
|
-
}
|
|
122
|
-
});
|
|
123
|
-
return _this;
|
|
124
|
-
}
|
|
125
|
-
(0, _createClass2.default)(Task, [{
|
|
126
|
-
key: "initWithAPI",
|
|
127
|
-
value: function initWithAPI(api) {
|
|
128
|
-
this.api = api;
|
|
129
|
-
this.init();
|
|
130
|
-
return this;
|
|
131
|
-
}
|
|
132
|
-
}, {
|
|
133
|
-
key: "isContentEmpty",
|
|
134
|
-
value: function isContentEmpty(node) {
|
|
135
|
-
return node.content.childCount === 0;
|
|
136
|
-
}
|
|
137
|
-
}, {
|
|
138
|
-
key: "createDomRef",
|
|
139
|
-
value: function createDomRef() {
|
|
140
|
-
var domRef = document.createElement('div');
|
|
141
|
-
domRef.style['list-style-type'] = 'none';
|
|
142
|
-
return domRef;
|
|
143
|
-
}
|
|
144
|
-
}, {
|
|
145
|
-
key: "getContentDOM",
|
|
146
|
-
value: function getContentDOM() {
|
|
147
|
-
var dom = document.createElement('div');
|
|
148
|
-
// setting a className prevents PM/Chrome mutation observer from
|
|
149
|
-
// incorrectly deleting nodes
|
|
150
|
-
dom.className = 'task-item';
|
|
151
|
-
return {
|
|
152
|
-
dom: dom
|
|
153
|
-
};
|
|
154
|
-
}
|
|
155
|
-
}, {
|
|
156
|
-
key: "render",
|
|
157
|
-
value: function render(props, forwardRef) {
|
|
158
|
-
var _this$node$attrs = this.node.attrs,
|
|
159
|
-
localId = _this$node$attrs.localId,
|
|
160
|
-
state = _this$node$attrs.state;
|
|
161
|
-
var isContentNodeEmpty = this.isContentEmpty(this.node);
|
|
162
|
-
return /*#__PURE__*/_react.default.createElement(_analyticsNext.AnalyticsListener, {
|
|
163
|
-
channel: "fabric-elements",
|
|
164
|
-
onEvent: this.addListAnalyticsData
|
|
165
|
-
}, /*#__PURE__*/_react.default.createElement(TaskItemWrapper, {
|
|
166
|
-
localId: localId,
|
|
167
|
-
forwardRef: forwardRef,
|
|
168
|
-
isDone: state === 'DONE',
|
|
169
|
-
onChange: this.handleOnChange,
|
|
170
|
-
isContentNodeEmpty: isContentNodeEmpty,
|
|
171
|
-
providerFactory: props.providerFactory
|
|
172
|
-
// The getPosHandler type is wrong, there is no `boolean` in the real implementation
|
|
173
|
-
// @ts-expect-error 2322: Type 'getPosHandler' is not assignable to type '() => number | undefined'.
|
|
174
|
-
,
|
|
175
|
-
getPos: this.getPos,
|
|
176
|
-
editorView: this.view,
|
|
177
|
-
api: this.api
|
|
178
|
-
}));
|
|
179
|
-
}
|
|
180
|
-
}, {
|
|
181
|
-
key: "viewShouldUpdate",
|
|
182
|
-
value: function viewShouldUpdate(nextNode) {
|
|
183
|
-
/**
|
|
184
|
-
* To ensure the placeholder is correctly toggled we need to allow react to re-render
|
|
185
|
-
* on first character insertion.
|
|
186
|
-
* Note: last character deletion is handled externally and automatically re-renders.
|
|
187
|
-
*/
|
|
188
|
-
return this.isContentEmpty(this.node) && !!nextNode.content.childCount;
|
|
189
|
-
}
|
|
190
|
-
}, {
|
|
191
|
-
key: "update",
|
|
192
|
-
value: function update(node, decorations) {
|
|
193
|
-
var _this2 = this;
|
|
194
|
-
return (0, _get2.default)((0, _getPrototypeOf2.default)(Task.prototype), "update", this).call(this, node, decorations, undefined, function (currentNode, newNode) {
|
|
195
|
-
return (
|
|
196
|
-
// Toggle the placeholder based on whether user input exists
|
|
197
|
-
!_this2.isContentEmpty(newNode) && !!(currentNode.attrs.state === newNode.attrs.state)
|
|
198
|
-
);
|
|
199
|
-
});
|
|
200
|
-
}
|
|
201
|
-
}]);
|
|
202
|
-
return Task;
|
|
203
|
-
}(_reactNodeView.default);
|
|
204
|
-
function taskItemNodeViewFactory(portalProviderAPI, eventDispatcher, providerFactory, api) {
|
|
205
|
-
return function (node, view, getPos) {
|
|
206
|
-
var hasIntlContext = true;
|
|
207
|
-
return new Task(node, view, getPos, portalProviderAPI, eventDispatcher, {
|
|
208
|
-
providerFactory: providerFactory
|
|
209
|
-
}, undefined, undefined, undefined, hasIntlContext).initWithAPI(api);
|
|
210
|
-
};
|
|
211
|
-
}
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.wrapSelectionInTaskList = exports.liftSelection = exports.joinAtCut = void 0;
|
|
7
|
-
var _transform = require("@atlaskit/editor-prosemirror/transform");
|
|
8
|
-
var _commands = require("@atlaskit/editor-common/commands");
|
|
9
|
-
var _helpers = require("./helpers");
|
|
10
|
-
var _utils = require("../utils");
|
|
11
|
-
var liftSelection = exports.liftSelection = function liftSelection(state, dispatch) {
|
|
12
|
-
var normalizedSelection = (0, _utils.normalizeTaskItemsSelection)(state.selection);
|
|
13
|
-
var $from = normalizedSelection.$from,
|
|
14
|
-
$to = normalizedSelection.$to;
|
|
15
|
-
var tr = (0, _helpers.liftBlock)(state.tr, $from, $to);
|
|
16
|
-
if (dispatch && tr) {
|
|
17
|
-
dispatch(tr);
|
|
18
|
-
}
|
|
19
|
-
return !!tr;
|
|
20
|
-
};
|
|
21
|
-
var wrapSelectionInTaskList = exports.wrapSelectionInTaskList = function wrapSelectionInTaskList(state, dispatch) {
|
|
22
|
-
var _normalizeTaskItemsSe = (0, _utils.normalizeTaskItemsSelection)(state.selection),
|
|
23
|
-
$from = _normalizeTaskItemsSe.$from,
|
|
24
|
-
$to = _normalizeTaskItemsSe.$to;
|
|
25
|
-
|
|
26
|
-
// limit ui indentation to 6 levels
|
|
27
|
-
var _state$schema$nodes = state.schema.nodes,
|
|
28
|
-
taskList = _state$schema$nodes.taskList,
|
|
29
|
-
taskItem = _state$schema$nodes.taskItem;
|
|
30
|
-
var maxDepth = (0, _helpers.subtreeHeight)($from, $to, [taskList, taskItem]);
|
|
31
|
-
if (maxDepth >= 6) {
|
|
32
|
-
return true;
|
|
33
|
-
}
|
|
34
|
-
var blockRange = (0, _helpers.getBlockRange)($from, $to);
|
|
35
|
-
if (!blockRange) {
|
|
36
|
-
return true;
|
|
37
|
-
}
|
|
38
|
-
var wrapping = (0, _transform.findWrapping)(blockRange, state.schema.nodes.taskList);
|
|
39
|
-
if (!wrapping) {
|
|
40
|
-
return true;
|
|
41
|
-
}
|
|
42
|
-
if (dispatch) {
|
|
43
|
-
dispatch(state.tr.wrap(blockRange, wrapping).scrollIntoView());
|
|
44
|
-
}
|
|
45
|
-
return true;
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* Tries to move the paragraph content near the given position into the taskItem or decisionItem
|
|
50
|
-
* before it.
|
|
51
|
-
*
|
|
52
|
-
* Looks backwards from the given position to find the "cut point" between the last taskItem and the
|
|
53
|
-
* following paragraph. Then tries to move the content from that paragraph into the taskItem.
|
|
54
|
-
*
|
|
55
|
-
* @param $pos Position at the end of, or anywhere in paragraph following, the last taskItem
|
|
56
|
-
* @see {joinToPreviousListItem}
|
|
57
|
-
*/
|
|
58
|
-
var joinAtCut = exports.joinAtCut = function joinAtCut($pos) {
|
|
59
|
-
return function (state, dispatch) {
|
|
60
|
-
var $cut = (0, _commands.findCutBefore)($pos);
|
|
61
|
-
if (!$cut) {
|
|
62
|
-
return false;
|
|
63
|
-
}
|
|
64
|
-
var paragraph = $cut.doc.type.schema.nodes.paragraph;
|
|
65
|
-
|
|
66
|
-
// find the boundary between the taskList and paragraph
|
|
67
|
-
if ($cut.nodeBefore && (0, _helpers.isActionOrDecisionList)($cut.nodeBefore) && $cut.nodeAfter && $cut.nodeAfter.type === paragraph) {
|
|
68
|
-
// we'll find the boundary of a taskList
|
|
69
|
-
// so resolve -1 to find the inside end of the last taskItem
|
|
70
|
-
var $lastNode = $cut.doc.resolve($cut.pos - 1);
|
|
71
|
-
|
|
72
|
-
// might have deeply nested taskList, keep trying to find it
|
|
73
|
-
while (!(0, _helpers.isActionOrDecisionItem)($lastNode.parent)) {
|
|
74
|
-
$lastNode = state.doc.resolve($lastNode.pos - 1);
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
// grab the structure between the taskItem and the paragraph
|
|
78
|
-
// note: structure = true in ReplaceAroundStep
|
|
79
|
-
var slice = state.tr.doc.slice($lastNode.pos, $cut.pos);
|
|
80
|
-
|
|
81
|
-
// collapse the range between end of last taskItem and after the paragraph
|
|
82
|
-
// with the gap being the paragraph's content (i.e. take that content)
|
|
83
|
-
//
|
|
84
|
-
// we pass the structure we found earlier to join the p and taskItem nodes
|
|
85
|
-
//
|
|
86
|
-
// see https://prosemirror.net/docs/ref/#transform.ReplaceStep.constructor
|
|
87
|
-
// see https://prosemirror.net/docs/ref/#transform.ReplaceAroundStep.constructor
|
|
88
|
-
var tr = state.tr.step(new _transform.ReplaceAroundStep($lastNode.pos, $cut.pos + $cut.nodeAfter.nodeSize, $cut.pos + 1, $cut.pos + $cut.nodeAfter.nodeSize - 1, slice, 0, true));
|
|
89
|
-
if (dispatch) {
|
|
90
|
-
dispatch(tr);
|
|
91
|
-
}
|
|
92
|
-
return true;
|
|
93
|
-
}
|
|
94
|
-
return false;
|
|
95
|
-
};
|
|
96
|
-
};
|