@atlaskit/editor-plugin-tasks-and-decisions 9.1.20 → 9.1.22

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 CHANGED
@@ -1,5 +1,20 @@
1
1
  # @atlaskit/editor-plugin-tasks-and-decisions
2
2
 
3
+ ## 9.1.22
4
+
5
+ ### Patch Changes
6
+
7
+ - [`90abe9b926a6f`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/90abe9b926a6f) -
8
+ Icon entrypoint migration
9
+ - Updated dependencies
10
+
11
+ ## 9.1.21
12
+
13
+ ### Patch Changes
14
+
15
+ - [`f494ec7455464`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/f494ec7455464) -
16
+ ED-29712: Insert a new action item on empty selection when clicking on Task list
17
+
3
18
  ## 9.1.20
4
19
 
5
20
  ### Patch Changes
@@ -4,13 +4,41 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.toggleTaskList = void 0;
7
+ var _adfSchema = require("@atlaskit/adf-schema");
7
8
  var _transforms = require("@atlaskit/editor-common/transforms");
9
+ var _state = require("@atlaskit/editor-prosemirror/state");
10
+ var _utils = require("@atlaskit/editor-prosemirror/utils");
11
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
8
12
  var toggleTaskList = exports.toggleTaskList = function toggleTaskList() {
9
13
  var targetType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'paragraph';
10
14
  return function (_ref) {
11
15
  var tr = _ref.tr;
12
16
  var nodes = tr.doc.type.schema.nodes;
13
17
  var selection = tr.selection;
18
+
19
+ // Handle empty selection: insert a new task item
20
+ if ((0, _platformFeatureFlags.fg)('platform_editor_toolbar_aifc_ga_blockers')) {
21
+ var $from = selection.$from;
22
+ var isEmpty = $from.parent.content.size === 0;
23
+ if (isEmpty && nodes.taskList && nodes.taskItem) {
24
+ // Create an empty task list with one empty task item
25
+ var listLocalId = _adfSchema.uuid.generate();
26
+ var itemLocalId = _adfSchema.uuid.generate();
27
+ var emptyList = nodes.taskList.create({
28
+ localId: listLocalId
29
+ }, [nodes.taskItem.create({
30
+ localId: itemLocalId
31
+ })]);
32
+
33
+ // Insert the empty list at the current selection
34
+ var insertTr = (0, _utils.safeInsert)(emptyList)(tr);
35
+ if (insertTr !== tr) {
36
+ // Set cursor inside the new task item
37
+ var insertPos = insertTr.selection.$from.pos;
38
+ return insertTr.setSelection(_state.TextSelection.near(insertTr.doc.resolve(insertPos)));
39
+ }
40
+ }
41
+ }
14
42
  var _getFormattedNode = (0, _transforms.getFormattedNode)(tr),
15
43
  node = _getFormattedNode.node,
16
44
  pos = _getFormattedNode.pos;
@@ -33,9 +61,9 @@ var toggleTaskList = exports.toggleTaskList = function toggleTaskList() {
33
61
  };
34
62
  return targetType === 'paragraph' ? (0, _transforms.transformTaskListToBlockNodes)(_context) : (0, _transforms.transformBetweenListTypes)(_context);
35
63
  }
36
- var $from = selection.$from,
64
+ var _$from = selection.$from,
37
65
  $to = selection.$to;
38
- var range = $from.blockRange($to);
66
+ var range = _$from.blockRange($to);
39
67
  if (range) {
40
68
  return (0, _transforms.transformToTaskList)(tr, range, nodes.taskList, undefined, nodes);
41
69
  }
@@ -20,7 +20,7 @@ var _uiReact = require("@atlaskit/editor-common/ui-react");
20
20
  var _useSharedPluginStateSelector = require("@atlaskit/editor-common/use-shared-plugin-state-selector");
21
21
  var _editorSharedStyles = require("@atlaskit/editor-shared-styles");
22
22
  var _heading = _interopRequireDefault(require("@atlaskit/heading"));
23
- var _checkMarkEditorDone = _interopRequireDefault(require("@atlaskit/icon/core/migration/check-mark--editor-done"));
23
+ var _checkMark = _interopRequireDefault(require("@atlaskit/icon/core/check-mark"));
24
24
  var _compiled = require("@atlaskit/primitives/compiled");
25
25
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
26
26
  // import Popup from '@atlaskit/popup';
@@ -48,7 +48,7 @@ var anaylyticsEventPayload = function anaylyticsEventPayload(action) {
48
48
  var RequestedMessage = function RequestedMessage() {
49
49
  var _useIntl = (0, _reactIntlNext.useIntl)(),
50
50
  formatMessage = _useIntl.formatMessage;
51
- return /*#__PURE__*/React.createElement(React.Fragment, null, formatMessage(_messages.tasksAndDecisionsMessages.requestToEdit), /*#__PURE__*/React.createElement(_checkMarkEditorDone.default, {
51
+ return /*#__PURE__*/React.createElement(React.Fragment, null, formatMessage(_messages.tasksAndDecisionsMessages.requestToEdit), /*#__PURE__*/React.createElement(_checkMark.default, {
52
52
  label: "requested-to-edit",
53
53
  color: "var(--ds-icon-disabled, #080F214A)"
54
54
  }));
@@ -9,7 +9,7 @@ var _react = _interopRequireDefault(require("react"));
9
9
  var _reactIntlNext = require("react-intl-next");
10
10
  var _messages = require("@atlaskit/editor-common/messages");
11
11
  var _uiMenu = require("@atlaskit/editor-common/ui-menu");
12
- var _decisionEditorDecision = _interopRequireDefault(require("@atlaskit/icon/core/migration/decision--editor-decision"));
12
+ var _decision = _interopRequireDefault(require("@atlaskit/icon/core/decision"));
13
13
  var _insertCommands = require("../../pm-plugins/insert-commands");
14
14
  var ToolbarDecision = function ToolbarDecision(_ref) {
15
15
  var isDisabled = _ref.isDisabled,
@@ -37,7 +37,7 @@ var ToolbarDecision = function ToolbarDecision(_ref) {
37
37
  spacing: isReducedSpacing ? 'none' : 'default',
38
38
  title: "".concat(label, " <>"),
39
39
  "aria-keyshortcuts": "Shift+, Shift+. space",
40
- iconBefore: /*#__PURE__*/_react.default.createElement(_decisionEditorDecision.default, {
40
+ iconBefore: /*#__PURE__*/_react.default.createElement(_decision.default, {
41
41
  label: label
42
42
  })
43
43
  });
@@ -9,7 +9,7 @@ var _react = _interopRequireDefault(require("react"));
9
9
  var _reactIntlNext = require("react-intl-next");
10
10
  var _messages = require("@atlaskit/editor-common/messages");
11
11
  var _uiMenu = require("@atlaskit/editor-common/ui-menu");
12
- var _checkboxCheckedEditorTask = _interopRequireDefault(require("@atlaskit/icon/core/migration/checkbox-checked--editor-task"));
12
+ var _checkboxChecked = _interopRequireDefault(require("@atlaskit/icon/core/checkbox-checked"));
13
13
  var _insertCommands = require("../../pm-plugins/insert-commands");
14
14
  var ToolbarTask = function ToolbarTask(_ref) {
15
15
  var isDisabled = _ref.isDisabled,
@@ -36,7 +36,7 @@ var ToolbarTask = function ToolbarTask(_ref) {
36
36
  disabled: isDisabled,
37
37
  spacing: isReducedSpacing ? 'none' : 'default',
38
38
  title: "".concat(label, " []"),
39
- iconBefore: /*#__PURE__*/_react.default.createElement(_checkboxCheckedEditorTask.default, {
39
+ iconBefore: /*#__PURE__*/_react.default.createElement(_checkboxChecked.default, {
40
40
  label: label
41
41
  })
42
42
  });
@@ -1,4 +1,8 @@
1
+ import { uuid } from '@atlaskit/adf-schema';
1
2
  import { transformBetweenListTypes, transformToTaskList, transformTaskListToBlockNodes, isBulletOrOrderedList, isTaskList, getFormattedNode } from '@atlaskit/editor-common/transforms';
3
+ import { TextSelection } from '@atlaskit/editor-prosemirror/state';
4
+ import { safeInsert } from '@atlaskit/editor-prosemirror/utils';
5
+ import { fg } from '@atlaskit/platform-feature-flags';
2
6
  export const toggleTaskList = (targetType = 'paragraph') => ({
3
7
  tr
4
8
  }) => {
@@ -8,6 +12,32 @@ export const toggleTaskList = (targetType = 'paragraph') => ({
8
12
  const {
9
13
  selection
10
14
  } = tr;
15
+
16
+ // Handle empty selection: insert a new task item
17
+ if (fg('platform_editor_toolbar_aifc_ga_blockers')) {
18
+ const {
19
+ $from
20
+ } = selection;
21
+ const isEmpty = $from.parent.content.size === 0;
22
+ if (isEmpty && nodes.taskList && nodes.taskItem) {
23
+ // Create an empty task list with one empty task item
24
+ const listLocalId = uuid.generate();
25
+ const itemLocalId = uuid.generate();
26
+ const emptyList = nodes.taskList.create({
27
+ localId: listLocalId
28
+ }, [nodes.taskItem.create({
29
+ localId: itemLocalId
30
+ })]);
31
+
32
+ // Insert the empty list at the current selection
33
+ const insertTr = safeInsert(emptyList)(tr);
34
+ if (insertTr !== tr) {
35
+ // Set cursor inside the new task item
36
+ const insertPos = insertTr.selection.$from.pos;
37
+ return insertTr.setSelection(TextSelection.near(insertTr.doc.resolve(insertPos)));
38
+ }
39
+ }
40
+ }
11
41
  const {
12
42
  node,
13
43
  pos
@@ -12,7 +12,7 @@ import { OutsideClickTargetRefContext, withReactEditorViewOuterListeners as with
12
12
  import { useSharedPluginStateSelector } from '@atlaskit/editor-common/use-shared-plugin-state-selector';
13
13
  import { akEditorFloatingDialogZIndex } from '@atlaskit/editor-shared-styles';
14
14
  import Heading from '@atlaskit/heading';
15
- import EditorDoneIcon from '@atlaskit/icon/core/migration/check-mark--editor-done';
15
+ import EditorDoneIcon from '@atlaskit/icon/core/check-mark';
16
16
  import { Box, Pressable, Stack } from '@atlaskit/primitives/compiled';
17
17
  const PopupWithListeners = withOuterListeners(Popup);
18
18
  const TRYING_REQUEST_TIMEOUT = 3000;
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import { injectIntl } from 'react-intl-next';
3
3
  import { toolbarInsertBlockMessages as messages } from '@atlaskit/editor-common/messages';
4
4
  import { TOOLBAR_BUTTON, ToolbarButton } from '@atlaskit/editor-common/ui-menu';
5
- import DecisionIcon from '@atlaskit/icon/core/migration/decision--editor-decision';
5
+ import DecisionIcon from '@atlaskit/icon/core/decision';
6
6
  import { insertTaskDecisionCommand } from '../../pm-plugins/insert-commands';
7
7
  const ToolbarDecision = ({
8
8
  isDisabled,
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import { injectIntl } from 'react-intl-next';
3
3
  import { toolbarInsertBlockMessages as messages } from '@atlaskit/editor-common/messages';
4
4
  import { TOOLBAR_BUTTON, ToolbarButton } from '@atlaskit/editor-common/ui-menu';
5
- import TaskIcon from '@atlaskit/icon/core/migration/checkbox-checked--editor-task';
5
+ import TaskIcon from '@atlaskit/icon/core/checkbox-checked';
6
6
  import { insertTaskDecisionCommand } from '../../pm-plugins/insert-commands';
7
7
  const ToolbarTask = ({
8
8
  isDisabled,
@@ -1,10 +1,38 @@
1
+ import { uuid } from '@atlaskit/adf-schema';
1
2
  import { transformBetweenListTypes, transformToTaskList, transformTaskListToBlockNodes, isBulletOrOrderedList, isTaskList, getFormattedNode } from '@atlaskit/editor-common/transforms';
3
+ import { TextSelection } from '@atlaskit/editor-prosemirror/state';
4
+ import { safeInsert } from '@atlaskit/editor-prosemirror/utils';
5
+ import { fg } from '@atlaskit/platform-feature-flags';
2
6
  export var toggleTaskList = function toggleTaskList() {
3
7
  var targetType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'paragraph';
4
8
  return function (_ref) {
5
9
  var tr = _ref.tr;
6
10
  var nodes = tr.doc.type.schema.nodes;
7
11
  var selection = tr.selection;
12
+
13
+ // Handle empty selection: insert a new task item
14
+ if (fg('platform_editor_toolbar_aifc_ga_blockers')) {
15
+ var $from = selection.$from;
16
+ var isEmpty = $from.parent.content.size === 0;
17
+ if (isEmpty && nodes.taskList && nodes.taskItem) {
18
+ // Create an empty task list with one empty task item
19
+ var listLocalId = uuid.generate();
20
+ var itemLocalId = uuid.generate();
21
+ var emptyList = nodes.taskList.create({
22
+ localId: listLocalId
23
+ }, [nodes.taskItem.create({
24
+ localId: itemLocalId
25
+ })]);
26
+
27
+ // Insert the empty list at the current selection
28
+ var insertTr = safeInsert(emptyList)(tr);
29
+ if (insertTr !== tr) {
30
+ // Set cursor inside the new task item
31
+ var insertPos = insertTr.selection.$from.pos;
32
+ return insertTr.setSelection(TextSelection.near(insertTr.doc.resolve(insertPos)));
33
+ }
34
+ }
35
+ }
8
36
  var _getFormattedNode = getFormattedNode(tr),
9
37
  node = _getFormattedNode.node,
10
38
  pos = _getFormattedNode.pos;
@@ -27,9 +55,9 @@ export var toggleTaskList = function toggleTaskList() {
27
55
  };
28
56
  return targetType === 'paragraph' ? transformTaskListToBlockNodes(_context) : transformBetweenListTypes(_context);
29
57
  }
30
- var $from = selection.$from,
58
+ var _$from = selection.$from,
31
59
  $to = selection.$to;
32
- var range = $from.blockRange($to);
60
+ var range = _$from.blockRange($to);
33
61
  if (range) {
34
62
  return transformToTaskList(tr, range, nodes.taskList, undefined, nodes);
35
63
  }
@@ -13,7 +13,7 @@ import { OutsideClickTargetRefContext, withReactEditorViewOuterListeners as with
13
13
  import { useSharedPluginStateSelector } from '@atlaskit/editor-common/use-shared-plugin-state-selector';
14
14
  import { akEditorFloatingDialogZIndex } from '@atlaskit/editor-shared-styles';
15
15
  import Heading from '@atlaskit/heading';
16
- import EditorDoneIcon from '@atlaskit/icon/core/migration/check-mark--editor-done';
16
+ import EditorDoneIcon from '@atlaskit/icon/core/check-mark';
17
17
  import { Box, Pressable, Stack } from '@atlaskit/primitives/compiled';
18
18
  var PopupWithListeners = withOuterListeners(Popup);
19
19
  var TRYING_REQUEST_TIMEOUT = 3000;
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import { injectIntl } from 'react-intl-next';
3
3
  import { toolbarInsertBlockMessages as messages } from '@atlaskit/editor-common/messages';
4
4
  import { TOOLBAR_BUTTON, ToolbarButton } from '@atlaskit/editor-common/ui-menu';
5
- import DecisionIcon from '@atlaskit/icon/core/migration/decision--editor-decision';
5
+ import DecisionIcon from '@atlaskit/icon/core/decision';
6
6
  import { insertTaskDecisionCommand } from '../../pm-plugins/insert-commands';
7
7
  var ToolbarDecision = function ToolbarDecision(_ref) {
8
8
  var isDisabled = _ref.isDisabled,
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import { injectIntl } from 'react-intl-next';
3
3
  import { toolbarInsertBlockMessages as messages } from '@atlaskit/editor-common/messages';
4
4
  import { TOOLBAR_BUTTON, ToolbarButton } from '@atlaskit/editor-common/ui-menu';
5
- import TaskIcon from '@atlaskit/icon/core/migration/checkbox-checked--editor-task';
5
+ import TaskIcon from '@atlaskit/icon/core/checkbox-checked';
6
6
  import { insertTaskDecisionCommand } from '../../pm-plugins/insert-commands';
7
7
  var ToolbarTask = function ToolbarTask(_ref) {
8
8
  var isDisabled = _ref.isDisabled,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-plugin-tasks-and-decisions",
3
- "version": "9.1.20",
3
+ "version": "9.1.22",
4
4
  "description": "Tasks and decisions plugin for @atlaskit/editor-core",
5
5
  "author": "Atlassian Pty Ltd",
6
6
  "license": "Apache-2.0",
@@ -29,40 +29,40 @@
29
29
  ],
30
30
  "atlaskit:src": "src/index.ts",
31
31
  "dependencies": {
32
- "@atlaskit/adf-schema": "^51.5.1",
32
+ "@atlaskit/adf-schema": "^51.5.0",
33
33
  "@atlaskit/analytics-namespaced-context": "^7.2.0",
34
34
  "@atlaskit/css": "^0.17.0",
35
35
  "@atlaskit/editor-plugin-analytics": "^6.2.0",
36
- "@atlaskit/editor-plugin-block-menu": "^5.1.0",
36
+ "@atlaskit/editor-plugin-block-menu": "^5.2.0",
37
37
  "@atlaskit/editor-plugin-context-identifier": "^6.0.0",
38
38
  "@atlaskit/editor-plugin-editor-viewmode": "^8.0.0",
39
39
  "@atlaskit/editor-plugin-selection": "^6.1.0",
40
40
  "@atlaskit/editor-plugin-toolbar": "^3.4.0",
41
41
  "@atlaskit/editor-plugin-type-ahead": "^6.5.0",
42
- "@atlaskit/editor-prosemirror": "7.0.0",
42
+ "@atlaskit/editor-prosemirror": "^7.2.0",
43
43
  "@atlaskit/editor-shared-styles": "^3.10.0",
44
44
  "@atlaskit/editor-toolbar": "^0.18.0",
45
45
  "@atlaskit/editor-toolbar-model": "^0.2.0",
46
46
  "@atlaskit/heading": "^5.2.0",
47
- "@atlaskit/icon": "^29.0.0",
47
+ "@atlaskit/icon": "^29.1.0",
48
48
  "@atlaskit/platform-feature-flags": "^1.1.0",
49
49
  "@atlaskit/primitives": "^16.4.0",
50
50
  "@atlaskit/prosemirror-input-rules": "^3.6.0",
51
51
  "@atlaskit/task-decision": "^19.2.0",
52
- "@atlaskit/tmp-editor-statsig": "^15.0.0",
53
- "@atlaskit/tokens": "^8.4.0",
52
+ "@atlaskit/tmp-editor-statsig": "^15.12.0",
53
+ "@atlaskit/tokens": "^8.5.0",
54
54
  "@babel/runtime": "^7.0.0",
55
55
  "@compiled/react": "^0.18.6",
56
56
  "bind-event-listener": "^3.0.0"
57
57
  },
58
58
  "peerDependencies": {
59
- "@atlaskit/editor-common": "^110.40.0",
59
+ "@atlaskit/editor-common": "^110.44.0",
60
60
  "react": "^18.2.0",
61
61
  "react-dom": "^18.2.0",
62
62
  "react-intl-next": "npm:react-intl@^5.18.1"
63
63
  },
64
64
  "devDependencies": {
65
- "@testing-library/react": "^13.4.0",
65
+ "@testing-library/react": "^16.3.0",
66
66
  "wait-for-expect": "^1.2.0"
67
67
  },
68
68
  "techstack": {
@@ -106,6 +106,9 @@
106
106
  },
107
107
  "platform_editor_blocktaskitem_patch_3": {
108
108
  "type": "boolean"
109
+ },
110
+ "platform_editor_toolbar_aifc_ga_blockers": {
111
+ "type": "boolean"
109
112
  }
110
113
  }
111
114
  }