@atlaskit/editor-core 189.0.6 → 189.0.10

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 (77) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/cjs/{labs/CollapsedEditor → CollapsedEditor}/index.js +2 -2
  3. package/dist/cjs/{labs/EditorWithActions → EditorWithActions}/index.js +3 -3
  4. package/dist/cjs/create-editor/create-preset.js +1 -1
  5. package/dist/cjs/editor.js +1 -1
  6. package/dist/cjs/labs-next.js +1 -1
  7. package/dist/cjs/plugins/tasks-and-decisions/index.js +15 -5
  8. package/dist/cjs/plugins/tasks-and-decisions/nodeviews/decisionItem.js +16 -5
  9. package/dist/cjs/plugins/tasks-and-decisions/nodeviews/hooks/use-show-placeholder.js +40 -0
  10. package/dist/cjs/plugins/tasks-and-decisions/nodeviews/taskItem.js +31 -31
  11. package/dist/cjs/preset-default.js +1 -1
  12. package/dist/cjs/preset-universal.js +1 -1
  13. package/dist/cjs/{labs/next/presets → presets}/default.js +7 -7
  14. package/dist/cjs/{labs/next/presets → presets}/universal.js +2 -2
  15. package/dist/cjs/{labs/next/presets → presets}/useUniversalPreset.js +2 -2
  16. package/dist/cjs/ui/CollapsedEditor/index.js +1 -1
  17. package/dist/cjs/version-wrapper.js +1 -1
  18. package/dist/es2019/{labs/CollapsedEditor → CollapsedEditor}/index.js +2 -2
  19. package/dist/es2019/{labs/EditorWithActions → EditorWithActions}/index.js +3 -3
  20. package/dist/es2019/create-editor/create-preset.js +1 -1
  21. package/dist/es2019/editor.js +1 -1
  22. package/dist/es2019/labs-next.js +1 -1
  23. package/dist/es2019/plugins/tasks-and-decisions/index.js +11 -1
  24. package/dist/es2019/plugins/tasks-and-decisions/nodeviews/decisionItem.js +16 -6
  25. package/dist/es2019/plugins/tasks-and-decisions/nodeviews/hooks/use-show-placeholder.js +36 -0
  26. package/dist/es2019/plugins/tasks-and-decisions/nodeviews/taskItem.js +29 -30
  27. package/dist/es2019/preset-default.js +1 -1
  28. package/dist/es2019/preset-universal.js +1 -1
  29. package/dist/es2019/{labs/next/presets → presets}/default.js +7 -7
  30. package/dist/es2019/{labs/next/presets → presets}/universal.js +2 -2
  31. package/dist/es2019/{labs/next/presets → presets}/useUniversalPreset.js +2 -2
  32. package/dist/es2019/ui/CollapsedEditor/index.js +1 -1
  33. package/dist/es2019/version-wrapper.js +1 -1
  34. package/dist/esm/{labs/CollapsedEditor → CollapsedEditor}/index.js +2 -2
  35. package/dist/esm/{labs/EditorWithActions → EditorWithActions}/index.js +3 -3
  36. package/dist/esm/create-editor/create-preset.js +1 -1
  37. package/dist/esm/editor.js +1 -1
  38. package/dist/esm/labs-next.js +1 -1
  39. package/dist/esm/plugins/tasks-and-decisions/index.js +11 -1
  40. package/dist/esm/plugins/tasks-and-decisions/nodeviews/decisionItem.js +16 -5
  41. package/dist/esm/plugins/tasks-and-decisions/nodeviews/hooks/use-show-placeholder.js +34 -0
  42. package/dist/esm/plugins/tasks-and-decisions/nodeviews/taskItem.js +31 -32
  43. package/dist/esm/preset-default.js +1 -1
  44. package/dist/esm/preset-universal.js +1 -1
  45. package/dist/esm/{labs/next/presets → presets}/default.js +7 -7
  46. package/dist/esm/{labs/next/presets → presets}/universal.js +2 -2
  47. package/dist/esm/{labs/next/presets → presets}/useUniversalPreset.js +2 -2
  48. package/dist/esm/ui/CollapsedEditor/index.js +1 -1
  49. package/dist/esm/version-wrapper.js +1 -1
  50. package/dist/types/{labs/CollapsedEditor → CollapsedEditor}/index.d.ts +1 -1
  51. package/dist/{types-ts4.5/labs → types}/EditorWithActions/index.d.ts +2 -2
  52. package/dist/types/create-editor/create-plugins-list.d.ts +2 -2
  53. package/dist/types/labs-next.d.ts +1 -1
  54. package/dist/types/plugins/tasks-and-decisions/nodeviews/hooks/use-show-placeholder.d.ts +11 -0
  55. package/dist/types/plugins/tasks-and-decisions/types.d.ts +4 -0
  56. package/dist/types/preset-default.d.ts +1 -1
  57. package/dist/types/preset-universal.d.ts +1 -1
  58. package/dist/types/{labs/next/presets → presets}/default.d.ts +4 -4
  59. package/dist/types/{labs/next/presets → presets}/types.d.ts +1 -1
  60. package/dist/types/{labs/next/presets → presets}/universal.d.ts +2 -2
  61. package/dist/types/{labs/next/presets → presets}/useUniversalPreset.d.ts +1 -1
  62. package/dist/types-ts4.5/{labs/CollapsedEditor → CollapsedEditor}/index.d.ts +1 -1
  63. package/dist/{types/labs → types-ts4.5}/EditorWithActions/index.d.ts +2 -2
  64. package/dist/types-ts4.5/create-editor/create-plugins-list.d.ts +2 -2
  65. package/dist/types-ts4.5/labs-next.d.ts +1 -1
  66. package/dist/types-ts4.5/plugins/tasks-and-decisions/nodeviews/hooks/use-show-placeholder.d.ts +11 -0
  67. package/dist/types-ts4.5/plugins/tasks-and-decisions/types.d.ts +4 -0
  68. package/dist/types-ts4.5/preset-default.d.ts +1 -1
  69. package/dist/types-ts4.5/preset-universal.d.ts +1 -1
  70. package/dist/types-ts4.5/{labs/next/presets → presets}/default.d.ts +4 -4
  71. package/dist/types-ts4.5/{labs/next/presets → presets}/types.d.ts +1 -1
  72. package/dist/types-ts4.5/{labs/next/presets → presets}/universal.d.ts +2 -2
  73. package/dist/types-ts4.5/{labs/next/presets → presets}/useUniversalPreset.d.ts +1 -1
  74. package/package.json +3 -3
  75. /package/dist/cjs/{labs/next/presets → presets}/types.js +0 -0
  76. /package/dist/es2019/{labs/next/presets → presets}/types.js +0 -0
  77. /package/dist/esm/{labs/next/presets → presets}/types.js +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @atlaskit/editor-core
2
2
 
3
+ ## 189.0.10
4
+
5
+ ### Patch Changes
6
+
7
+ - [#42139](https://bitbucket.org/atlassian/atlassian-frontend/pull-requests/42139) [`9474db7141c`](https://bitbucket.org/atlassian/atlassian-frontend/commits/9474db7141c) - [ED-20622] Fix task and decision placeholder been removed when the TypeAhead was open
8
+
9
+ ## 189.0.9
10
+
11
+ ### Patch Changes
12
+
13
+ - [#42137](https://bitbucket.org/atlassian/atlassian-frontend/pull-requests/42137) [`88058fc0fcb`](https://bitbucket.org/atlassian/atlassian-frontend/commits/88058fc0fcb) - ED-20197 moved editor preset and other prod code out of labs
14
+
3
15
  ## 189.0.6
4
16
 
5
17
  ### Patch Changes
@@ -15,7 +15,7 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
15
15
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
16
16
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
17
  var _react = _interopRequireDefault(require("react"));
18
- var _ChromeCollapsed = _interopRequireDefault(require("../../ui/ChromeCollapsed"));
18
+ var _ChromeCollapsed = _interopRequireDefault(require("../ui/ChromeCollapsed"));
19
19
  var _excluded = ["Editor"];
20
20
  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); }
21
21
  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; }
@@ -48,7 +48,7 @@ var CollapsedEditor = exports.default = /*#__PURE__*/function (_React$Component)
48
48
  value: function loadEditorModules() {
49
49
  var _this2 = this;
50
50
  Promise.resolve().then(function () {
51
- return _interopRequireWildcard(require( /* webpackChunkName:"@atlaskit-internal_editor-core-async" */'../../'));
51
+ return _interopRequireWildcard(require( /* webpackChunkName:"@atlaskit-internal_editor-core-async" */'../'));
52
52
  }).then(function (modules) {
53
53
  CollapsedEditor.editorModules = modules;
54
54
  _this2.setState({
@@ -15,9 +15,9 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
15
15
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
16
  var _react = _interopRequireDefault(require("react"));
17
17
  var _propTypes = _interopRequireDefault(require("prop-types"));
18
- var _editor = _interopRequireDefault(require("../../editor"));
19
- var _EditorContext = _interopRequireDefault(require("../../ui/EditorContext"));
20
- var _WithEditorActions = _interopRequireDefault(require("../../ui/WithEditorActions"));
18
+ var _editor = _interopRequireDefault(require("../editor"));
19
+ var _EditorContext = _interopRequireDefault(require("../ui/EditorContext"));
20
+ var _WithEditorActions = _interopRequireDefault(require("../ui/WithEditorActions"));
21
21
  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); }; }
22
22
  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; } }
23
23
  var EditorWithActions = exports.default = /*#__PURE__*/function (_React$Component) {
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.createPreset = createPreset;
8
- var _universal = _interopRequireDefault(require("../labs/next/presets/universal"));
8
+ var _universal = _interopRequireDefault(require("../presets/universal"));
9
9
  var _createPluginsList = require("./create-plugins-list");
10
10
  var _featureFlagsFromProps = require("./feature-flags-from-props");
11
11
  // Separate file, we should not accidentally import this into the `ComposableEditor`
@@ -16,7 +16,7 @@ var _react = _interopRequireDefault(require("react"));
16
16
  var _react2 = require("@emotion/react");
17
17
  var _editorDeprecationWarnings = _interopRequireDefault(require("./utils/editorDeprecationWarnings"));
18
18
  var _composableEditor = require("./composable-editor");
19
- var _useUniversalPreset = _interopRequireDefault(require("./labs/next/presets/useUniversalPreset"));
19
+ var _useUniversalPreset = _interopRequireDefault(require("./presets/useUniversalPreset"));
20
20
  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); }; }
21
21
  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; } } /** @jsx jsx */
22
22
  var ComposableEditorWrapper = function ComposableEditorWrapper(_ref) {
@@ -9,4 +9,4 @@ Object.defineProperty(exports, "createDefaultPreset", {
9
9
  return _default.createDefaultPreset;
10
10
  }
11
11
  });
12
- var _default = require("./labs/next/presets/default");
12
+ var _default = require("./presets/default");
@@ -9,8 +9,9 @@ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/hel
9
9
  var _react = require("@emotion/react");
10
10
  var _adfSchema = require("@atlaskit/adf-schema");
11
11
  var _analytics = require("@atlaskit/editor-common/analytics");
12
- var _messages = require("../insert-block/ui/ToolbarInsertBlock/messages");
12
+ var _messages = require("@atlaskit/editor-common/messages");
13
13
  var _quickInsert = require("@atlaskit/editor-common/quick-insert");
14
+ var _pluginKey = require("./pm-plugins/plugin-key");
14
15
  var _commands = require("./commands");
15
16
  var _inputRules = _interopRequireDefault(require("./pm-plugins/input-rules"));
16
17
  var _keymaps = _interopRequireDefault(require("./pm-plugins/keymaps"));
@@ -58,6 +59,15 @@ var tasksAndDecisionsPlugin = function tasksAndDecisionsPlugin(_ref2) {
58
59
  node: _adfSchema.taskItem
59
60
  }];
60
61
  },
62
+ getSharedState: function getSharedState(editorState) {
63
+ if (!editorState) {
64
+ return undefined;
65
+ }
66
+ var pluginState = _pluginKey.stateKey.getState(editorState);
67
+ return {
68
+ focusedTaskItemLocalId: (pluginState === null || pluginState === void 0 ? void 0 : pluginState.focusedTaskItemLocalId) || null
69
+ };
70
+ },
61
71
  pmPlugins: function pmPlugins() {
62
72
  return [{
63
73
  name: 'tasksAndDecisions',
@@ -107,8 +117,8 @@ var tasksAndDecisionsPlugin = function tasksAndDecisionsPlugin(_ref2) {
107
117
  var formatMessage = _ref7.formatMessage;
108
118
  return [{
109
119
  id: 'action',
110
- title: formatMessage(_messages.messages.action),
111
- description: formatMessage(_messages.messages.actionDescription),
120
+ title: formatMessage(_messages.toolbarInsertBlockMessages.action),
121
+ description: formatMessage(_messages.toolbarInsertBlockMessages.actionDescription),
112
122
  priority: 100,
113
123
  keywords: ['checkbox', 'task', 'todo'],
114
124
  keyshortcut: '[]',
@@ -121,8 +131,8 @@ var tasksAndDecisionsPlugin = function tasksAndDecisionsPlugin(_ref2) {
121
131
  }
122
132
  }, {
123
133
  id: 'decision',
124
- title: formatMessage(_messages.messages.decision),
125
- description: formatMessage(_messages.messages.decisionDescription),
134
+ title: formatMessage(_messages.toolbarInsertBlockMessages.decision),
135
+ description: formatMessage(_messages.toolbarInsertBlockMessages.decisionDescription),
126
136
  priority: 900,
127
137
  keyshortcut: '<>',
128
138
  icon: function icon() {
@@ -13,19 +13,25 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
13
13
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
14
14
  var _react = _interopRequireDefault(require("react"));
15
15
  var _reactNodeView = _interopRequireDefault(require("@atlaskit/editor-common/react-node-view"));
16
- var _hooks = require("@atlaskit/editor-common/hooks");
16
+ var _useShowPlaceholder = require("./hooks/use-show-placeholder");
17
17
  var _Decision = _interopRequireDefault(require("../ui/Decision"));
18
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
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
20
  var DecisionItemWrapper = function DecisionItemWrapper(_ref) {
21
21
  var api = _ref.api,
22
+ editorView = _ref.editorView,
22
23
  forwardRef = _ref.forwardRef,
23
- isContentNodeEmpty = _ref.isContentNodeEmpty;
24
- var _useSharedPluginState = (0, _hooks.useSharedPluginState)(api, ['typeAhead']),
25
- typeAheadState = _useSharedPluginState.typeAheadState;
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
+ });
26
32
  return /*#__PURE__*/_react.default.createElement(_Decision.default, {
27
33
  contentRef: forwardRef,
28
- showPlaceholder: isContentNodeEmpty && !(typeAheadState !== null && typeAheadState !== void 0 && typeAheadState.isOpen)
34
+ showPlaceholder: showPlaceholder
29
35
  });
30
36
  };
31
37
  var Decision = /*#__PURE__*/function (_ReactNodeView) {
@@ -73,6 +79,11 @@ var Decision = /*#__PURE__*/function (_ReactNodeView) {
73
79
  forwardRef: forwardRef,
74
80
  isContentNodeEmpty: isContentNodeEmpty,
75
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
76
87
  });
77
88
  }
78
89
  }, {
@@ -0,0 +1,40 @@
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
+ };
@@ -16,35 +16,40 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
16
16
  var _react = _interopRequireDefault(require("react"));
17
17
  var _analyticsNext = require("@atlaskit/analytics-next");
18
18
  var _steps = require("@atlaskit/adf-schema/steps");
19
- var _hooks = require("@atlaskit/editor-common/hooks");
20
19
  var _reactNodeView = _interopRequireDefault(require("@atlaskit/editor-common/react-node-view"));
21
- var _withPluginState = require("@atlaskit/editor-common/with-plugin-state");
22
- var _pluginKey = require("../pm-plugins/plugin-key");
20
+ var _hooks = require("@atlaskit/editor-common/hooks");
21
+ var _useShowPlaceholder = require("./hooks/use-show-placeholder");
23
22
  var _Task = _interopRequireDefault(require("../ui/Task"));
24
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; }
25
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; }
26
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); }; }
27
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; } }
28
- //import { isTypeAheadOpen } from '../../type-ahead/utils';
29
-
30
27
  var TaskItemWrapper = function TaskItemWrapper(_ref) {
31
28
  var localId = _ref.localId,
32
29
  forwardRef = _ref.forwardRef,
33
30
  isDone = _ref.isDone,
34
31
  onChange = _ref.onChange,
35
- isFocused = _ref.isFocused,
36
- isContentNodeEmpty = _ref.isContentNodeEmpty,
37
32
  providerFactory = _ref.providerFactory,
38
- api = _ref.api;
39
- var _useSharedPluginState = (0, _hooks.useSharedPluginState)(api, ['typeAhead']),
40
- typeAheadState = _useSharedPluginState.typeAheadState;
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
+ });
41
46
  return /*#__PURE__*/_react.default.createElement(_Task.default, {
42
47
  taskId: localId,
43
48
  contentRef: forwardRef,
44
49
  isDone: isDone,
45
50
  onChange: onChange,
46
51
  isFocused: isFocused,
47
- showPlaceholder: isContentNodeEmpty && !(typeAheadState !== null && typeAheadState !== void 0 && typeAheadState.isOpen),
52
+ showPlaceholder: showPlaceholder,
48
53
  providers: providerFactory
49
54
  });
50
55
  };
@@ -150,7 +155,6 @@ var Task = /*#__PURE__*/function (_ReactNodeView) {
150
155
  }, {
151
156
  key: "render",
152
157
  value: function render(props, forwardRef) {
153
- var _this2 = this;
154
158
  var _this$node$attrs = this.node.attrs,
155
159
  localId = _this$node$attrs.localId,
156
160
  state = _this$node$attrs.state;
@@ -158,23 +162,19 @@ var Task = /*#__PURE__*/function (_ReactNodeView) {
158
162
  return /*#__PURE__*/_react.default.createElement(_analyticsNext.AnalyticsListener, {
159
163
  channel: "fabric-elements",
160
164
  onEvent: this.addListAnalyticsData
161
- }, /*#__PURE__*/_react.default.createElement(_withPluginState.WithPluginState, {
162
- plugins: {
163
- taskDecisionPlugin: _pluginKey.stateKey
164
- },
165
- render: function render(_ref2) {
166
- var taskDecisionPlugin = _ref2.taskDecisionPlugin;
167
- return /*#__PURE__*/_react.default.createElement(TaskItemWrapper, {
168
- localId: localId,
169
- forwardRef: forwardRef,
170
- isDone: state === 'DONE',
171
- onChange: _this2.handleOnChange,
172
- isFocused: Boolean((taskDecisionPlugin === null || taskDecisionPlugin === void 0 ? void 0 : taskDecisionPlugin.focusedTaskItemLocalId) === localId),
173
- isContentNodeEmpty: isContentNodeEmpty,
174
- providerFactory: props.providerFactory,
175
- api: _this2.api
176
- });
177
- }
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
178
  }));
179
179
  }
180
180
  }, {
@@ -190,11 +190,11 @@ var Task = /*#__PURE__*/function (_ReactNodeView) {
190
190
  }, {
191
191
  key: "update",
192
192
  value: function update(node, decorations) {
193
- var _this3 = this;
193
+ var _this2 = this;
194
194
  return (0, _get2.default)((0, _getPrototypeOf2.default)(Task.prototype), "update", this).call(this, node, decorations, undefined, function (currentNode, newNode) {
195
195
  return (
196
196
  // Toggle the placeholder based on whether user input exists
197
- !_this3.isContentEmpty(newNode) && !!(currentNode.attrs.state === newNode.attrs.state)
197
+ !_this2.isContentEmpty(newNode) && !!(currentNode.attrs.state === newNode.attrs.state)
198
198
  );
199
199
  });
200
200
  }
@@ -9,4 +9,4 @@ Object.defineProperty(exports, "createDefaultPreset", {
9
9
  return _default.createDefaultPreset;
10
10
  }
11
11
  });
12
- var _default = require("./labs/next/presets/default");
12
+ var _default = require("./presets/default");
@@ -10,4 +10,4 @@ Object.defineProperty(exports, "useUniversalPreset", {
10
10
  return _useUniversalPreset.default;
11
11
  }
12
12
  });
13
- var _useUniversalPreset = _interopRequireDefault(require("./labs/next/presets/useUniversalPreset"));
13
+ var _useUniversalPreset = _interopRequireDefault(require("./presets/useUniversalPreset"));
@@ -6,9 +6,9 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.createDefaultPreset = createDefaultPreset;
8
8
  exports.useDefaultPreset = useDefaultPreset;
9
- var _paste = _interopRequireDefault(require("../../../plugins/paste"));
9
+ var _paste = _interopRequireDefault(require("../plugins/paste"));
10
10
  var _editorPluginBlockType = require("@atlaskit/editor-plugin-block-type");
11
- var _clearMarksOnChangeToEmptyDocument = _interopRequireDefault(require("../../../plugins/clear-marks-on-change-to-empty-document"));
11
+ var _clearMarksOnChangeToEmptyDocument = _interopRequireDefault(require("../plugins/clear-marks-on-change-to-empty-document"));
12
12
  var _editorPluginHyperlink = require("@atlaskit/editor-plugin-hyperlink");
13
13
  var _editorPluginTextFormatting = require("@atlaskit/editor-plugin-text-formatting");
14
14
  var _editorPluginBetterTypeHistory = require("@atlaskit/editor-plugin-better-type-history");
@@ -19,20 +19,20 @@ var _editorPluginFocus = require("@atlaskit/editor-plugin-focus");
19
19
  var _editorPluginEditorDisabled = require("@atlaskit/editor-plugin-editor-disabled");
20
20
  var _editorPluginTypeAhead = require("@atlaskit/editor-plugin-type-ahead");
21
21
  var _editorPluginSubmitEditor = require("@atlaskit/editor-plugin-submit-editor");
22
- var _fakeTextCursor = _interopRequireDefault(require("../../../plugins/fake-text-cursor"));
22
+ var _fakeTextCursor = _interopRequireDefault(require("../plugins/fake-text-cursor"));
23
23
  var _editorPluginFeatureFlags = require("@atlaskit/editor-plugin-feature-flags");
24
24
  var _editorPluginCopyButton = require("@atlaskit/editor-plugin-copy-button");
25
25
  var _editorPluginFloatingToolbar = require("@atlaskit/editor-plugin-floating-toolbar");
26
26
  var _editorPluginClipboard = require("@atlaskit/editor-plugin-clipboard");
27
- var _plugins = require("../../../plugins");
27
+ var _plugins = require("../plugins");
28
28
  var _editorPluginAnalytics = require("@atlaskit/editor-plugin-analytics");
29
29
  var _editorPluginPlaceholder = require("@atlaskit/editor-plugin-placeholder");
30
- var _annotation = _interopRequireDefault(require("../../../plugins/annotation"));
30
+ var _annotation = _interopRequireDefault(require("../plugins/annotation"));
31
31
  var _editorPluginComposition = require("@atlaskit/editor-plugin-composition");
32
32
  var _editorPluginQuickInsert = require("@atlaskit/editor-plugin-quick-insert");
33
33
  var _editorPluginSelection = require("@atlaskit/editor-plugin-selection");
34
- var _codeBlock = _interopRequireDefault(require("../../../plugins/code-block"));
35
- var _undoRedo = _interopRequireDefault(require("../../../plugins/undo-redo"));
34
+ var _codeBlock = _interopRequireDefault(require("../plugins/code-block"));
35
+ var _undoRedo = _interopRequireDefault(require("../plugins/undo-redo"));
36
36
  var _editorPluginDecorations = require("@atlaskit/editor-plugin-decorations");
37
37
  var _preset = require("@atlaskit/editor-common/preset");
38
38
  // #region Imports
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.default = createUniversalPreset;
8
8
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
9
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
- var _plugins = require("../../../plugins");
10
+ var _plugins = require("../plugins");
11
11
  var _editorPluginHistory = require("@atlaskit/editor-plugin-history");
12
12
  var _editorPluginStatus = require("@atlaskit/editor-plugin-status");
13
13
  var _editorPluginDate = require("@atlaskit/editor-plugin-date");
@@ -31,7 +31,7 @@ var _editorPluginSaveOnEnter = require("@atlaskit/editor-plugin-save-on-enter");
31
31
  var _editorPluginScrollIntoView = require("@atlaskit/editor-plugin-scroll-into-view");
32
32
  var _editorPluginMentions = require("@atlaskit/editor-plugin-mentions");
33
33
  var _editorPluginSelectionToolbar = require("@atlaskit/editor-plugin-selection-toolbar");
34
- var _isFullPage = require("../../../utils/is-full-page");
34
+ var _isFullPage = require("../utils/is-full-page");
35
35
  var _mediaCommon = require("@atlaskit/media-common");
36
36
  var _default = require("./default");
37
37
  var _utils = require("@atlaskit/editor-common/utils");
@@ -8,8 +8,8 @@ exports.default = useUniversalPreset;
8
8
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
9
  var _react = require("react");
10
10
  var _hooks = require("@atlaskit/editor-common/hooks");
11
- var _createPreset = require("../../../create-editor/create-preset");
12
- var _presetUtils = require("../../../create-editor/preset-utils");
11
+ var _createPreset = require("../create-editor/create-preset");
12
+ var _presetUtils = require("../create-editor/preset-utils");
13
13
  function useUniversalPreset(_ref) {
14
14
  var props = _ref.props;
15
15
  var previousEditorProps = (0, _hooks.usePreviousState)(props);
@@ -16,7 +16,7 @@ var _ui = require("@atlaskit/editor-common/ui");
16
16
  var _react = _interopRequireDefault(require("react"));
17
17
  var _editor = _interopRequireDefault(require("../../editor"));
18
18
  var _composableEditor = require("../../composable-editor");
19
- var _EditorWithActions = _interopRequireDefault(require("../../labs/EditorWithActions"));
19
+ var _EditorWithActions = _interopRequireDefault(require("../../EditorWithActions"));
20
20
  var _ChromeCollapsed = _interopRequireDefault(require("../ChromeCollapsed"));
21
21
  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); }; }
22
22
  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; } }
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.version = exports.nextMajorVersion = exports.name = void 0;
7
7
  var name = exports.name = "@atlaskit/editor-core";
8
- var version = exports.version = "189.0.6";
8
+ var version = exports.version = "189.0.10";
9
9
  var nextMajorVersion = exports.nextMajorVersion = function nextMajorVersion() {
10
10
  return [Number(version.split('.')[0]) + 1, 0, 0].join('.');
11
11
  };
@@ -1,6 +1,6 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
2
  import React from 'react';
3
- import ChromeCollapsed from '../../ui/ChromeCollapsed';
3
+ import ChromeCollapsed from '../ui/ChromeCollapsed';
4
4
  export default class CollapsedEditor extends React.Component {
5
5
  constructor(...args) {
6
6
  super(...args);
@@ -14,7 +14,7 @@ export default class CollapsedEditor extends React.Component {
14
14
  }
15
15
  }
16
16
  loadEditorModules() {
17
- import( /* webpackChunkName:"@atlaskit-internal_editor-core-async" */'../../').then(modules => {
17
+ import( /* webpackChunkName:"@atlaskit-internal_editor-core-async" */'../').then(modules => {
18
18
  CollapsedEditor.editorModules = modules;
19
19
  this.setState({
20
20
  editorModules: modules
@@ -2,9 +2,9 @@ import _extends from "@babel/runtime/helpers/extends";
2
2
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
3
  import React from 'react';
4
4
  import PropTypes from 'prop-types';
5
- import Editor from '../../editor';
6
- import EditorContext from '../../ui/EditorContext';
7
- import WithEditorActions from '../../ui/WithEditorActions';
5
+ import Editor from '../editor';
6
+ import EditorContext from '../ui/EditorContext';
7
+ import WithEditorActions from '../ui/WithEditorActions';
8
8
  export default class EditorWithActions extends React.Component {
9
9
  constructor(...args) {
10
10
  super(...args);
@@ -1,4 +1,4 @@
1
- import createUniversalPreset from '../labs/next/presets/universal';
1
+ import createUniversalPreset from '../presets/universal';
2
2
  import { getDefaultPresetOptionsFromEditorProps } from './create-plugins-list';
3
3
  import { createFeatureFlagsFromProps } from './feature-flags-from-props';
4
4
  // Separate file, we should not accidentally import this into the `ComposableEditor`
@@ -5,7 +5,7 @@ import React from 'react';
5
5
  import { jsx } from '@emotion/react';
6
6
  import editorDeprecationWarnings from './utils/editorDeprecationWarnings';
7
7
  import { ComposableEditor } from './composable-editor';
8
- import useUniversalPreset from './labs/next/presets/useUniversalPreset';
8
+ import useUniversalPreset from './presets/useUniversalPreset';
9
9
  const ComposableEditorWrapper = ({
10
10
  props
11
11
  }) => {
@@ -1 +1 @@
1
- export { createDefaultPreset } from './labs/next/presets/default';
1
+ export { createDefaultPreset } from './presets/default';
@@ -2,8 +2,9 @@
2
2
  import { css, jsx } from '@emotion/react';
3
3
  import { decisionItem, decisionList, taskItem, taskList } from '@atlaskit/adf-schema';
4
4
  import { INPUT_METHOD } from '@atlaskit/editor-common/analytics';
5
- import { messages as insertBlockMessages } from '../insert-block/ui/ToolbarInsertBlock/messages';
5
+ import { toolbarInsertBlockMessages as insertBlockMessages } from '@atlaskit/editor-common/messages';
6
6
  import { IconAction, IconDecision } from '@atlaskit/editor-common/quick-insert';
7
+ import { stateKey as taskPluginKey } from './pm-plugins/plugin-key';
7
8
  import { insertTaskDecisionAction, getListTypes } from './commands';
8
9
  import inputRulePlugin from './pm-plugins/input-rules';
9
10
  import keymap from './pm-plugins/keymaps';
@@ -51,6 +52,15 @@ const tasksAndDecisionsPlugin = ({
51
52
  node: taskItem
52
53
  }];
53
54
  },
55
+ getSharedState(editorState) {
56
+ if (!editorState) {
57
+ return undefined;
58
+ }
59
+ const pluginState = taskPluginKey.getState(editorState);
60
+ return {
61
+ focusedTaskItemLocalId: (pluginState === null || pluginState === void 0 ? void 0 : pluginState.focusedTaskItemLocalId) || null
62
+ };
63
+ },
54
64
  pmPlugins() {
55
65
  return [{
56
66
  name: 'tasksAndDecisions',
@@ -1,18 +1,23 @@
1
1
  import React from 'react';
2
2
  import ReactNodeView from '@atlaskit/editor-common/react-node-view';
3
- import { useSharedPluginState } from '@atlaskit/editor-common/hooks';
3
+ import { useShowPlaceholder } from './hooks/use-show-placeholder';
4
4
  import DecisionItem from '../ui/Decision';
5
5
  const DecisionItemWrapper = ({
6
6
  api,
7
+ editorView,
7
8
  forwardRef,
8
- isContentNodeEmpty
9
+ isContentNodeEmpty,
10
+ getPos
9
11
  }) => {
10
- const {
11
- typeAheadState
12
- } = useSharedPluginState(api, ['typeAhead']);
12
+ const showPlaceholder = useShowPlaceholder({
13
+ editorView,
14
+ isContentNodeEmpty,
15
+ getPos,
16
+ api
17
+ });
13
18
  return /*#__PURE__*/React.createElement(DecisionItem, {
14
19
  contentRef: forwardRef,
15
- showPlaceholder: isContentNodeEmpty && !(typeAheadState !== null && typeAheadState !== void 0 && typeAheadState.isOpen)
20
+ showPlaceholder: showPlaceholder
16
21
  });
17
22
  };
18
23
  class Decision extends ReactNodeView {
@@ -44,6 +49,11 @@ class Decision extends ReactNodeView {
44
49
  forwardRef: forwardRef,
45
50
  isContentNodeEmpty: isContentNodeEmpty,
46
51
  api: this.api
52
+ // The getPosHandler type is wrong, there is no `boolean` in the real implementation
53
+ // @ts-expect-error 2322: Type 'getPosHandler' is not assignable to type '() => number | undefined'.
54
+ ,
55
+ getPos: this.getPos,
56
+ editorView: this.view
47
57
  });
48
58
  }
49
59
  viewShouldUpdate(nextNode) {
@@ -0,0 +1,36 @@
1
+ import { useMemo } from 'react';
2
+ import { TextSelection } from '@atlaskit/editor-prosemirror/state';
3
+ import { useSharedPluginState } from '@atlaskit/editor-common/hooks';
4
+ export const useShowPlaceholder = ({
5
+ editorView,
6
+ api,
7
+ isContentNodeEmpty,
8
+ getPos
9
+ }) => {
10
+ const {
11
+ typeAheadState
12
+ } = useSharedPluginState(api, ['typeAhead']);
13
+ const isTypeAheadOpen = Boolean(typeAheadState === null || typeAheadState === void 0 ? void 0 : typeAheadState.isOpen);
14
+ const isTypeAheadOpenedInsideItem = useMemo(() => {
15
+ var _selection$$cursor;
16
+ if (!isTypeAheadOpen) {
17
+ return false;
18
+ }
19
+ const itemPosition = getPos();
20
+ if (typeof itemPosition !== 'number') {
21
+ return false;
22
+ }
23
+ const selection = editorView.state.selection;
24
+ if (!(selection instanceof TextSelection)) {
25
+ return false;
26
+ }
27
+ const maybeItemNode = editorView.state.doc.nodeAt(itemPosition);
28
+ const maybeParentItemNode = (_selection$$cursor = selection.$cursor) === null || _selection$$cursor === void 0 ? void 0 : _selection$$cursor.node();
29
+ if (maybeItemNode && maybeParentItemNode && maybeItemNode.eq(maybeParentItemNode)) {
30
+ return true;
31
+ }
32
+ return false;
33
+ }, [isTypeAheadOpen, getPos, editorView]);
34
+ const showPlaceholder = Boolean(!isTypeAheadOpenedInsideItem && isContentNodeEmpty);
35
+ return showPlaceholder;
36
+ };