@atlaskit/editor-common 71.0.2 → 72.0.0

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 (130) hide show
  1. package/CHANGELOG.md +77 -0
  2. package/dist/cjs/analytics/types/enums.js +20 -1
  3. package/dist/cjs/i18n/index.js +13 -5
  4. package/dist/cjs/i18n/languages.js +42 -0
  5. package/dist/cjs/keymaps/index.js +55 -3
  6. package/dist/cjs/styles/index.js +8 -2
  7. package/dist/cjs/styles/shared/annotation.js +4 -7
  8. package/dist/cjs/styles/shared/block-marks.js +1 -1
  9. package/dist/cjs/styles/shared/code-block.js +3 -4
  10. package/dist/cjs/styles/shared/lists.js +55 -4
  11. package/dist/cjs/styles/shared/panel.js +6 -12
  12. package/dist/cjs/styles/shared/shadow.js +3 -1
  13. package/dist/cjs/styles/shared/table.js +2 -2
  14. package/dist/cjs/types/next-editor-plugin.js +5 -0
  15. package/dist/cjs/ui/DropList/index.js +1 -1
  16. package/dist/cjs/ui/Emoji/index.js +11 -2
  17. package/dist/cjs/ui/Popup/index.js +72 -2
  18. package/dist/cjs/ui/Popup/utils.js +13 -6
  19. package/dist/cjs/ui/UnsupportedBlock/index.js +2 -2
  20. package/dist/cjs/ui/UnsupportedInline/index.js +2 -2
  21. package/dist/cjs/ui-color/ColorPalette/Palettes/paletteMessagesTokenModeNames.js +138 -0
  22. package/dist/cjs/ui-color/ColorPalette/index.js +19 -1
  23. package/dist/cjs/ui-menu/DropdownMenu/index.js +2 -0
  24. package/dist/cjs/ui-menu/ToolbarButton/index.js +3 -1
  25. package/dist/cjs/utils/analytics.js +1 -38
  26. package/dist/cjs/utils/builder.js +44 -0
  27. package/dist/cjs/utils/compareNodes.js +86 -33
  28. package/dist/cjs/utils/index.js +47 -1
  29. package/dist/cjs/utils/list.js +47 -0
  30. package/dist/cjs/utils/plugin-state-factory.js +9 -9
  31. package/dist/cjs/utils/referentiality.js +281 -2
  32. package/dist/cjs/utils/track-unsupported-content.js +19 -20
  33. package/dist/cjs/utils/validate-using-spec.js +8 -2
  34. package/dist/cjs/version.json +1 -1
  35. package/dist/es2019/analytics/types/enums.js +20 -1
  36. package/dist/es2019/i18n/index.js +4 -3
  37. package/dist/es2019/i18n/languages.js +34 -0
  38. package/dist/es2019/keymaps/index.js +47 -0
  39. package/dist/es2019/styles/index.js +1 -1
  40. package/dist/es2019/styles/shared/annotation.js +4 -7
  41. package/dist/es2019/styles/shared/block-marks.js +8 -1
  42. package/dist/es2019/styles/shared/code-block.js +7 -6
  43. package/dist/es2019/styles/shared/lists.js +44 -2
  44. package/dist/es2019/styles/shared/panel.js +6 -11
  45. package/dist/es2019/styles/shared/shadow.js +21 -6
  46. package/dist/es2019/styles/shared/table.js +2 -3
  47. package/dist/es2019/types/next-editor-plugin.js +1 -0
  48. package/dist/es2019/ui/DropList/index.js +1 -1
  49. package/dist/es2019/ui/Emoji/index.js +11 -2
  50. package/dist/es2019/ui/Popup/index.js +68 -2
  51. package/dist/es2019/ui/Popup/utils.js +13 -6
  52. package/dist/es2019/ui/UnsupportedBlock/index.js +1 -1
  53. package/dist/es2019/ui/UnsupportedInline/index.js +1 -1
  54. package/dist/es2019/ui-color/ColorPalette/Palettes/paletteMessagesTokenModeNames.js +120 -0
  55. package/dist/es2019/ui-color/ColorPalette/index.js +28 -12
  56. package/dist/es2019/ui-menu/DropdownMenu/index.js +2 -0
  57. package/dist/es2019/ui-menu/ToolbarButton/index.js +3 -1
  58. package/dist/es2019/utils/analytics.js +0 -33
  59. package/dist/es2019/utils/builder.js +16 -0
  60. package/dist/es2019/utils/compareNodes.js +79 -28
  61. package/dist/es2019/utils/index.js +4 -2
  62. package/dist/es2019/utils/list.js +31 -0
  63. package/dist/es2019/utils/plugin-state-factory.js +9 -9
  64. package/dist/es2019/utils/referentiality.js +240 -0
  65. package/dist/es2019/utils/track-unsupported-content.js +20 -16
  66. package/dist/es2019/utils/validate-using-spec.js +8 -2
  67. package/dist/es2019/version.json +1 -1
  68. package/dist/esm/analytics/types/enums.js +20 -1
  69. package/dist/esm/i18n/index.js +4 -3
  70. package/dist/esm/i18n/languages.js +34 -0
  71. package/dist/esm/keymaps/index.js +48 -0
  72. package/dist/esm/styles/index.js +1 -1
  73. package/dist/esm/styles/shared/annotation.js +4 -7
  74. package/dist/esm/styles/shared/block-marks.js +1 -1
  75. package/dist/esm/styles/shared/code-block.js +3 -4
  76. package/dist/esm/styles/shared/lists.js +49 -2
  77. package/dist/esm/styles/shared/panel.js +6 -11
  78. package/dist/esm/styles/shared/shadow.js +2 -2
  79. package/dist/esm/styles/shared/table.js +2 -3
  80. package/dist/esm/types/next-editor-plugin.js +1 -0
  81. package/dist/esm/ui/DropList/index.js +1 -1
  82. package/dist/esm/ui/Emoji/index.js +11 -2
  83. package/dist/esm/ui/Popup/index.js +73 -2
  84. package/dist/esm/ui/Popup/utils.js +13 -6
  85. package/dist/esm/ui/UnsupportedBlock/index.js +1 -1
  86. package/dist/esm/ui/UnsupportedInline/index.js +1 -1
  87. package/dist/esm/ui-color/ColorPalette/Palettes/paletteMessagesTokenModeNames.js +124 -0
  88. package/dist/esm/ui-color/ColorPalette/index.js +18 -2
  89. package/dist/esm/ui-menu/DropdownMenu/index.js +2 -0
  90. package/dist/esm/ui-menu/ToolbarButton/index.js +3 -1
  91. package/dist/esm/utils/analytics.js +0 -33
  92. package/dist/esm/utils/builder.js +30 -0
  93. package/dist/esm/utils/compareNodes.js +83 -32
  94. package/dist/esm/utils/index.js +4 -2
  95. package/dist/esm/utils/list.js +31 -0
  96. package/dist/esm/utils/plugin-state-factory.js +9 -9
  97. package/dist/esm/utils/referentiality.js +269 -0
  98. package/dist/esm/utils/track-unsupported-content.js +19 -20
  99. package/dist/esm/utils/validate-using-spec.js +8 -2
  100. package/dist/esm/version.json +1 -1
  101. package/dist/types/analytics/types/enums.d.ts +23 -4
  102. package/dist/types/collab/types.d.ts +1 -1
  103. package/dist/types/i18n/index.d.ts +4 -3
  104. package/dist/types/i18n/languages.d.ts +35 -0
  105. package/dist/types/keymaps/index.d.ts +1 -0
  106. package/dist/types/styles/index.d.ts +1 -1
  107. package/dist/types/styles/shared/lists.d.ts +3 -1
  108. package/dist/types/types/collab.d.ts +1 -1
  109. package/dist/types/types/copy-button.d.ts +4 -0
  110. package/dist/types/types/feature-flags.d.ts +30 -25
  111. package/dist/types/types/floating-toolbar.d.ts +26 -1
  112. package/dist/types/types/index.d.ts +2 -1
  113. package/dist/types/types/next-editor-plugin.d.ts +61 -0
  114. package/dist/types/ui/Emoji/index.d.ts +2 -0
  115. package/dist/types/ui/Popup/index.d.ts +19 -0
  116. package/dist/types/ui/Popup/utils.d.ts +3 -3
  117. package/dist/types/ui-color/ColorPalette/Palettes/paletteMessagesTokenModeNames.d.ts +214 -0
  118. package/dist/types/ui-color/ColorPalette/index.d.ts +7 -0
  119. package/dist/types/ui-menu/DropdownMenu/types.d.ts +1 -0
  120. package/dist/types/ui-menu/ToolbarButton/index.d.ts +3 -1
  121. package/dist/types/utils/analytics.d.ts +1 -21
  122. package/dist/types/utils/builder.d.ts +8 -0
  123. package/dist/types/utils/compareNodes.d.ts +16 -0
  124. package/dist/types/utils/index.d.ts +3 -1
  125. package/dist/types/utils/list.d.ts +10 -0
  126. package/dist/types/utils/plugin-state-factory.d.ts +1 -1
  127. package/dist/types/utils/referentiality.d.ts +4 -0
  128. package/dist/types/utils/track-unsupported-content.d.ts +14 -2
  129. package/package.json +15 -12
  130. package/report.api.md +1 -1
@@ -48,13 +48,16 @@ var EmojiNode = /*#__PURE__*/function (_PureComponent) {
48
48
  (0, _classCallCheck2.default)(this, EmojiNode);
49
49
  _this = _super.call(this, props);
50
50
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "renderWithProvider", function (providers) {
51
+ var _resourceConfig$optim;
52
+
51
53
  var _this$props = _this.props,
52
54
  allowTextFallback = _this$props.allowTextFallback,
53
55
  shortName = _this$props.shortName,
54
56
  id = _this$props.id,
55
57
  fallback = _this$props.fallback,
56
58
  fitToHeight = _this$props.fitToHeight,
57
- showTooltip = _this$props.showTooltip;
59
+ showTooltip = _this$props.showTooltip,
60
+ resourceConfig = _this$props.resourceConfig;
58
61
 
59
62
  if (allowTextFallback && !providers.emojiProvider) {
60
63
  return /*#__PURE__*/_react.default.createElement("span", {
@@ -76,7 +79,13 @@ var EmojiNode = /*#__PURE__*/function (_PureComponent) {
76
79
  },
77
80
  emojiProvider: providers.emojiProvider,
78
81
  showTooltip: showTooltip,
79
- fitToHeight: fitToHeight
82
+ fitToHeight: fitToHeight,
83
+ optimistic: true,
84
+ optimisticImageURL: resourceConfig === null || resourceConfig === void 0 ? void 0 : (_resourceConfig$optim = resourceConfig.optimisticImageApi) === null || _resourceConfig$optim === void 0 ? void 0 : _resourceConfig$optim.getUrl({
85
+ id: id,
86
+ fallback: fallback,
87
+ shortName: shortName
88
+ })
80
89
  });
81
90
  });
82
91
  _this.providerFactory = props.providers || new _providerFactory.ProviderFactory();
@@ -29,6 +29,8 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
29
29
 
30
30
  var _react = _interopRequireDefault(require("react"));
31
31
 
32
+ var _focusTrap = _interopRequireDefault(require("focus-trap"));
33
+
32
34
  var _rafSchd = _interopRequireDefault(require("raf-schd"));
33
35
 
34
36
  var _reactDom = require("react-dom");
@@ -66,6 +68,7 @@ var Popup = /*#__PURE__*/function (_React$Component) {
66
68
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "state", {
67
69
  validPosition: true
68
70
  });
71
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "popupRef", /*#__PURE__*/_react.default.createRef());
69
72
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "placement", ['', '']);
70
73
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleRef", function (popup) {
71
74
  if (!popup) {
@@ -83,6 +86,24 @@ var Popup = /*#__PURE__*/function (_React$Component) {
83
86
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "resizeObserver", (_window = window) !== null && _window !== void 0 && _window.ResizeObserver ? new ResizeObserver(function () {
84
87
  _this.scheduledUpdatePosition(_this.props);
85
88
  }) : undefined);
89
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "initFocusTrap", (0, _rafSchd.default)(function () {
90
+ var popup = _this.popupRef.current;
91
+
92
+ if (!popup) {
93
+ return;
94
+ }
95
+
96
+ var trapConfig = {
97
+ clickOutsideDeactivates: true,
98
+ escapeDeactivates: true,
99
+ initialFocus: popup,
100
+ fallbackFocus: popup,
101
+ returnFocusOnDeactivate: false
102
+ };
103
+ _this.focusTrap = (0, _focusTrap.default)(popup, trapConfig);
104
+
105
+ _this.focusTrap.activate();
106
+ }));
86
107
  return _this;
87
108
  }
88
109
 
@@ -105,13 +126,14 @@ var Popup = /*#__PURE__*/function (_React$Component) {
105
126
  stick = props.stick,
106
127
  forcePlacement = props.forcePlacement,
107
128
  allowOutOfBounds = props.allowOutOfBounds,
108
- rect = props.rect;
129
+ rect = props.rect,
130
+ preventOverflow = props.preventOverflow;
109
131
 
110
132
  if (!target || !popup) {
111
133
  return {};
112
134
  }
113
135
 
114
- var placement = (0, _utils.calculatePlacement)(target, boundariesElement || document.body, fitWidth, fitHeight, alignX, alignY, forcePlacement);
136
+ var placement = (0, _utils.calculatePlacement)(target, boundariesElement || document.body, fitWidth, fitHeight, alignX, alignY, forcePlacement, preventOverflow);
115
137
 
116
138
  if (onPlacementChanged && this.placement.join('') !== placement.join('')) {
117
139
  onPlacementChanged(placement);
@@ -172,6 +194,7 @@ var Popup = /*#__PURE__*/function (_React$Component) {
172
194
  }, {
173
195
  key: "initPopup",
174
196
  value: function initPopup(popup) {
197
+ this.popupRef.current = popup;
175
198
  var target = this.props.target;
176
199
  var overflowScrollParent = (0, _utils.findOverflowScrollParent)(popup);
177
200
 
@@ -195,6 +218,10 @@ var Popup = /*#__PURE__*/function (_React$Component) {
195
218
  */
196
219
 
197
220
  this.scheduledUpdatePosition(this.props);
221
+
222
+ if (this.props.focusTrap) {
223
+ this.initFocusTrap();
224
+ }
198
225
  }
199
226
  }, {
200
227
  key: "UNSAFE_componentWillReceiveProps",
@@ -203,6 +230,48 @@ var Popup = /*#__PURE__*/function (_React$Component) {
203
230
  // get rendered and we end up with a wrong position
204
231
  this.scheduledUpdatePosition(newProps);
205
232
  }
233
+ }, {
234
+ key: "destroyFocusTrap",
235
+ value:
236
+ /**
237
+ * Cancels the initialisation of the focus trap if it has not yet occured
238
+ * Deactivates the focus trap if it exists
239
+ */
240
+ function destroyFocusTrap() {
241
+ var _this$focusTrap;
242
+
243
+ this.initFocusTrap.cancel();
244
+ (_this$focusTrap = this.focusTrap) === null || _this$focusTrap === void 0 ? void 0 : _this$focusTrap.deactivate();
245
+ }
246
+ /**
247
+ * Handle pausing, unpausing, and initialising (if not yet initialised) of the focus trap
248
+ */
249
+
250
+ }, {
251
+ key: "handleChangedFocusTrapProp",
252
+ value: function handleChangedFocusTrapProp(prevProps) {
253
+ if (prevProps.focusTrap !== this.props.focusTrap) {
254
+ // If currently set to disable, then pause the trap if it exists
255
+ if (!this.props.focusTrap) {
256
+ var _this$focusTrap2;
257
+
258
+ return (_this$focusTrap2 = this.focusTrap) === null || _this$focusTrap2 === void 0 ? void 0 : _this$focusTrap2.pause();
259
+ } // If set to enabled and trap already exists, unpause
260
+
261
+
262
+ if (this.focusTrap) {
263
+ this.focusTrap.unpause();
264
+ } // Else initialise the focus trap
265
+
266
+
267
+ return this.initFocusTrap();
268
+ }
269
+ }
270
+ }, {
271
+ key: "componentDidUpdate",
272
+ value: function componentDidUpdate(prevProps) {
273
+ this.handleChangedFocusTrapProp(prevProps);
274
+ }
206
275
  }, {
207
276
  key: "componentDidMount",
208
277
  value: function componentDidMount() {
@@ -238,6 +307,7 @@ var Popup = /*#__PURE__*/function (_React$Component) {
238
307
  }
239
308
 
240
309
  this.scheduledUpdatePosition.cancel();
310
+ this.destroyFocusTrap();
241
311
  }
242
312
  }, {
243
313
  key: "renderPopup",
@@ -34,7 +34,7 @@ function isTextNode(elem) {
34
34
  */
35
35
 
36
36
 
37
- function getVerticalPlacement(target, boundariesElement, fitHeight, alignY, forcePlacement) {
37
+ function getVerticalPlacement(target, boundariesElement, fitHeight, alignY, forcePlacement, preventOverflow) {
38
38
  if (forcePlacement && alignY) {
39
39
  return alignY;
40
40
  }
@@ -56,7 +56,13 @@ function getVerticalPlacement(target, boundariesElement, fitHeight, alignY, forc
56
56
  targetHeight = _target$getBoundingCl.height;
57
57
 
58
58
  var spaceAbove = targetTop - (boundariesTop - boundariesElement.scrollTop);
59
- var spaceBelow = boundariesTop + boundariesHeight - (targetTop + targetHeight);
59
+ var spaceBelow = boundariesTop + boundariesHeight - (targetTop + targetHeight); // Force vertical placement to bottom if the space above doesn't accomodate the fitHeight
60
+
61
+ if (preventOverflow) {
62
+ if (spaceAbove <= fitHeight) {
63
+ return 'bottom';
64
+ }
65
+ }
60
66
 
61
67
  if (spaceBelow >= fitHeight || spaceBelow >= spaceAbove) {
62
68
  return 'bottom';
@@ -69,8 +75,9 @@ function getVerticalPlacement(target, boundariesElement, fitHeight, alignY, forc
69
75
  */
70
76
 
71
77
 
72
- function getHorizontalPlacement(target, boundariesElement, fitWidth, alignX, forcePlacement) {
73
- if (forcePlacement && alignX) {
78
+ function getHorizontalPlacement(target, boundariesElement, fitWidth, alignX, forcePlacement, preventOverflow) {
79
+ // force placement unless preventOverflow is enabled
80
+ if (forcePlacement && alignX && !preventOverflow) {
74
81
  return alignX;
75
82
  }
76
83
 
@@ -102,8 +109,8 @@ function getHorizontalPlacement(target, boundariesElement, fitWidth, alignX, for
102
109
  return 'right';
103
110
  }
104
111
 
105
- function calculatePlacement(target, boundariesElement, fitWidth, fitHeight, alignX, alignY, forcePlacement) {
106
- return [getVerticalPlacement(target, boundariesElement, fitHeight, alignY, forcePlacement), getHorizontalPlacement(target, boundariesElement, fitWidth, alignX, forcePlacement)];
112
+ function calculatePlacement(target, boundariesElement, fitWidth, fitHeight, alignX, alignY, forcePlacement, preventOverflow) {
113
+ return [getVerticalPlacement(target, boundariesElement, fitHeight, alignY, forcePlacement, preventOverflow), getHorizontalPlacement(target, boundariesElement, fitWidth, alignX, forcePlacement, preventOverflow)];
107
114
  }
108
115
 
109
116
  var calculateHorizontalPlacement = function calculateHorizontalPlacement(_ref) {
@@ -29,9 +29,9 @@ var _tokens = require("@atlaskit/tokens");
29
29
 
30
30
  var _tooltip = _interopRequireDefault(require("@atlaskit/tooltip"));
31
31
 
32
- var _unsupportedContent = require("../../messages/unsupportedContent");
32
+ var _analytics = require("../../analytics");
33
33
 
34
- var _analytics = require("../../utils/analytics");
34
+ var _unsupportedContent = require("../../messages/unsupportedContent");
35
35
 
36
36
  var _trackUnsupportedContent = require("../../utils/track-unsupported-content");
37
37
 
@@ -29,9 +29,9 @@ var _tokens = require("@atlaskit/tokens");
29
29
 
30
30
  var _tooltip = _interopRequireDefault(require("@atlaskit/tooltip"));
31
31
 
32
- var _unsupportedContent = require("../../messages/unsupportedContent");
32
+ var _analytics = require("../../analytics");
33
33
 
34
- var _analytics = require("../../utils/analytics");
34
+ var _unsupportedContent = require("../../messages/unsupportedContent");
35
35
 
36
36
  var _trackUnsupportedContent = require("../../utils/track-unsupported-content");
37
37
 
@@ -0,0 +1,138 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.newLightPalette = exports.newDarkPalette = void 0;
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ var _reactIntlNext = require("react-intl-next");
13
+
14
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
15
+
16
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
17
+
18
+ // These messages are only to be used when useSomewhatSemanticTextColorNames feature flag is true.
19
+ // They are used only in Jira and are part of work for https://product-fabric.atlassian.net/wiki/spaces/EUXQ/pages/3365994869/EXTERNAL+MAKE+PP+COMMIT-5058+Enable+dark+mode+usage+of+text+colors+in+UGC+and+non+custom+panels+in+Jira
20
+ var newLightPalette = (0, _reactIntlNext.defineMessages)({
21
+ '#FFFFFF': {
22
+ id: 'fabric.theme.white',
23
+ defaultMessage: 'White',
24
+ description: 'Name of a color'
25
+ },
26
+ '#B3D4FF': {
27
+ id: 'fabric.theme.subtle-blue',
28
+ defaultMessage: 'Subtle blue',
29
+ description: 'Name of a color'
30
+ },
31
+ '#B3F5FF': {
32
+ id: 'fabric.theme.subtle-teal',
33
+ defaultMessage: 'Subtle teal',
34
+ description: 'Name of a color'
35
+ },
36
+ '#ABF5D1': {
37
+ id: 'fabric.theme.subtle-green',
38
+ defaultMessage: 'Subtle green',
39
+ description: 'Name of a color'
40
+ },
41
+ '#FFF0B3': {
42
+ id: 'fabric.theme.subtle-yellow',
43
+ defaultMessage: 'Subtle yellow',
44
+ description: 'Name of a color'
45
+ },
46
+ '#FFBDAD': {
47
+ id: 'fabric.theme.subtle-red',
48
+ defaultMessage: 'Subtle red',
49
+ description: 'Name of a color'
50
+ },
51
+ '#EAE6FF': {
52
+ id: 'fabric.theme.subtle-purple',
53
+ defaultMessage: 'Subtle purple',
54
+ description: 'Name of a color'
55
+ },
56
+ '#97A0AF': {
57
+ id: 'fabric.theme.gray',
58
+ defaultMessage: 'Gray',
59
+ description: 'Name of a color'
60
+ },
61
+ '#4C9AFF': {
62
+ id: 'fabric.theme.blue',
63
+ defaultMessage: 'Blue',
64
+ description: 'Name of a color'
65
+ },
66
+ '#00B8D9': {
67
+ id: 'fabric.theme.teal',
68
+ defaultMessage: 'Teal',
69
+ description: 'Name of a color'
70
+ },
71
+ '#36B37E': {
72
+ id: 'fabric.theme.green',
73
+ defaultMessage: 'Green',
74
+ description: 'Name of a color'
75
+ },
76
+ '#FFC400': {
77
+ id: 'fabric.theme.yellow',
78
+ defaultMessage: 'Yellow',
79
+ description: 'Name of a color'
80
+ },
81
+ '#FF5630': {
82
+ id: 'fabric.theme.red',
83
+ defaultMessage: 'Red',
84
+ description: 'Name of a color'
85
+ },
86
+ '#FF991F': {
87
+ id: 'fabric.theme.bold-orange',
88
+ defaultMessage: 'Bold orange',
89
+ description: 'Name of a color.'
90
+ },
91
+ '#6554C0': {
92
+ id: 'fabric.theme.purple',
93
+ defaultMessage: 'Purple',
94
+ description: 'Name of a color'
95
+ },
96
+ '#0747A6': {
97
+ id: 'fabric.theme.bold-blue',
98
+ defaultMessage: 'Bold blue',
99
+ description: 'Name of a color'
100
+ },
101
+ '#008DA6': {
102
+ id: 'fabric.theme.bold-teal',
103
+ defaultMessage: 'Bold teal',
104
+ description: 'Name of a color'
105
+ },
106
+ '#006644': {
107
+ id: 'fabric.theme.bold-green',
108
+ defaultMessage: 'Bold green',
109
+ description: 'Name of a color'
110
+ },
111
+ '#BF2600': {
112
+ id: 'fabric.theme.bold-red',
113
+ defaultMessage: 'Bold red',
114
+ description: 'Name of a color'
115
+ },
116
+ '#403294': {
117
+ id: 'fabric.theme.bold-purple',
118
+ defaultMessage: 'Bold purple',
119
+ description: 'Name of a color'
120
+ },
121
+ '#172B4D': {
122
+ id: 'fabric.theme.default',
123
+ defaultMessage: 'Default',
124
+ description: 'Name of a color'
125
+ }
126
+ });
127
+ exports.newLightPalette = newLightPalette;
128
+ var darkModeWhite = (0, _reactIntlNext.defineMessages)({
129
+ '#FFFFFF': {
130
+ id: 'fabric.theme.dark-gray',
131
+ defaultMessage: 'Dark gray',
132
+ description: 'Name of a color'
133
+ }
134
+ });
135
+
136
+ var newDarkPalette = _objectSpread(_objectSpread({}, newLightPalette), darkModeWhite);
137
+
138
+ exports.newDarkPalette = newDarkPalette;
@@ -21,6 +21,10 @@ var _tokens = require("@atlaskit/tokens");
21
21
 
22
22
  var _Color = _interopRequireDefault(require("./Color"));
23
23
 
24
+ var _getColorMessage = _interopRequireDefault(require("./Palettes/getColorMessage"));
25
+
26
+ var _paletteMessagesTokenModeNames = require("./Palettes/paletteMessagesTokenModeNames");
27
+
24
28
  var _styles = require("./styles");
25
29
 
26
30
  /** @jsx jsx */
@@ -58,7 +62,10 @@ var ColorPalette = function ColorPalette(props) {
58
62
  className = props.className,
59
63
  formatMessage = props.intl.formatMessage,
60
64
  _props$textPalette = props.textPalette,
61
- textPalette = _props$textPalette === void 0 ? false : _props$textPalette;
65
+ textPalette = _props$textPalette === void 0 ? false : _props$textPalette,
66
+ _props$useSomewhatSem = props.useSomewhatSemanticTextColorNames,
67
+ useSomewhatSemanticTextColorNames = _props$useSomewhatSem === void 0 ? false : _props$useSomewhatSem;
68
+ var tokenTheme = (0, _tokens.useThemeObserver)();
62
69
 
63
70
  var colorsPerRow = _react.default.useMemo(function () {
64
71
  return palette.reduce(function (resultArray, item, index) {
@@ -81,6 +88,17 @@ var ColorPalette = function ColorPalette(props) {
81
88
  label = _ref.label,
82
89
  border = _ref.border,
83
90
  message = _ref.message;
91
+
92
+ if (textPalette === true && useSomewhatSemanticTextColorNames) {
93
+ if (tokenTheme === 'dark') {
94
+ message = (0, _getColorMessage.default)(_paletteMessagesTokenModeNames.newDarkPalette, value.toUpperCase());
95
+ }
96
+
97
+ if (tokenTheme === 'light') {
98
+ message = (0, _getColorMessage.default)(_paletteMessagesTokenModeNames.newLightPalette, value.toUpperCase());
99
+ }
100
+ }
101
+
84
102
  return (0, _react2.jsx)(_Color.default, {
85
103
  key: value,
86
104
  value: value,
@@ -272,6 +272,7 @@ function DropdownMenuItem(_ref) {
272
272
  }, (0, _react2.jsx)(_menu.CustomItem, {
273
273
  item: item,
274
274
  key: (_item$key2 = item.key) !== null && _item$key2 !== void 0 ? _item$key2 : String(item.content),
275
+ testId: "dropdown-item__".concat(String(item.content)),
275
276
  role: shouldUseDefaultRole ? 'button' : 'menuitem',
276
277
  iconBefore: item.elemBefore,
277
278
  iconAfter: item.elemAfter,
@@ -283,6 +284,7 @@ function DropdownMenuItem(_ref) {
283
284
  },
284
285
  "aria-label": item['aria-label'] || String(item.content),
285
286
  "aria-pressed": shouldUseDefaultRole ? item.isActive : undefined,
287
+ "aria-keyshortcuts": item['aria-keyshortcuts'],
286
288
  onMouseDown: function onMouseDown(e) {
287
289
  e.preventDefault();
288
290
  },
@@ -61,6 +61,7 @@ var ToolbarButton = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
61
61
  ariaHasPopup = props['aria-haspopup'],
62
62
  ariaExpanded = props['aria-expanded'],
63
63
  ariaPressed = props['aria-pressed'],
64
+ ariaKeyShortcuts = props['aria-keyshortcuts'],
64
65
  onClick = props.onClick,
65
66
  onItemClick = props.onItemClick;
66
67
  var handleClick = (0, _react.useCallback)(function (event, analyticsEvent) {
@@ -106,7 +107,8 @@ var ToolbarButton = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
106
107
  "aria-expanded": ariaExpanded,
107
108
  "aria-haspopup": ariaHasPopup,
108
109
  "aria-label": ariaLabel,
109
- "aria-pressed": ariaPressed
110
+ "aria-pressed": ariaPressed,
111
+ "aria-keyshortcuts": ariaKeyShortcuts
110
112
  }, children);
111
113
 
112
114
  if (!title) {
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.SEVERITY = exports.EVENT_TYPE = exports.ACTION_SUBJECT_ID = exports.ACTION_SUBJECT = exports.ACTION = void 0;
6
+ exports.SEVERITY = void 0;
7
7
  Object.defineProperty(exports, "UNSUPPORTED_CONTENT_LEVEL_SEVERITY", {
8
8
  enumerable: true,
9
9
  get: function get() {
@@ -71,42 +71,5 @@ exports.SEVERITY = SEVERITY;
71
71
  SEVERITY["BLOCKING"] = "blocking";
72
72
  })(SEVERITY || (exports.SEVERITY = SEVERITY = {}));
73
73
 
74
- var EVENT_TYPE;
75
- exports.EVENT_TYPE = EVENT_TYPE;
76
-
77
- (function (EVENT_TYPE) {
78
- EVENT_TYPE["TRACK"] = "track";
79
- EVENT_TYPE["UI"] = "ui";
80
- })(EVENT_TYPE || (exports.EVENT_TYPE = EVENT_TYPE = {}));
81
-
82
- var ACTION;
83
- exports.ACTION = ACTION;
84
-
85
- (function (ACTION) {
86
- ACTION["UNSUPPORTED_CONTENT_ENCOUNTERED"] = "unsupportedContentEncountered";
87
- ACTION["UNSUPPORTED_TOOLTIP_VIEWED"] = "viewed";
88
- })(ACTION || (exports.ACTION = ACTION = {}));
89
-
90
- var ACTION_SUBJECT;
91
- exports.ACTION_SUBJECT = ACTION_SUBJECT;
92
-
93
- (function (ACTION_SUBJECT) {
94
- ACTION_SUBJECT["DOCUMENT"] = "document";
95
- ACTION_SUBJECT["TOOLTIP"] = "tooltip";
96
- })(ACTION_SUBJECT || (exports.ACTION_SUBJECT = ACTION_SUBJECT = {}));
97
-
98
- var ACTION_SUBJECT_ID;
99
- exports.ACTION_SUBJECT_ID = ACTION_SUBJECT_ID;
100
-
101
- (function (ACTION_SUBJECT_ID) {
102
- ACTION_SUBJECT_ID["UNSUPPORTED_BLOCK"] = "unsupportedBlock";
103
- ACTION_SUBJECT_ID["UNSUPPORTED_INLINE"] = "unsupportedInline";
104
- ACTION_SUBJECT_ID["UNSUPPORTED_MARK"] = "unsupportedMark";
105
- ACTION_SUBJECT_ID["UNSUPPORTED_ERROR"] = "unsupportedUnhandled";
106
- ACTION_SUBJECT_ID["UNSUPPORTED_NODE_ATTRIBUTE"] = "unsupportedNodeAttribute";
107
- ACTION_SUBJECT_ID["ON_UNSUPPORTED_INLINE"] = "onUnsupportedInline";
108
- ACTION_SUBJECT_ID["ON_UNSUPPORTED_BLOCK"] = "onUnsupportedBlock";
109
- })(ACTION_SUBJECT_ID || (exports.ACTION_SUBJECT_ID = ACTION_SUBJECT_ID = {}));
110
-
111
74
  var analyticsEventKey = 'EDITOR_ANALYTICS_EVENT';
112
75
  exports.analyticsEventKey = analyticsEventKey;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.Builder = void 0;
9
+
10
+ var _construct2 = _interopRequireDefault(require("@babel/runtime/helpers/construct"));
11
+
12
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
+
14
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
+
16
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
+
18
+ var Builder = /*#__PURE__*/function () {
19
+ function Builder() {
20
+ (0, _classCallCheck2.default)(this, Builder);
21
+
22
+ for (var _len = arguments.length, more = new Array(_len), _key = 0; _key < _len; _key++) {
23
+ more[_key] = arguments[_key];
24
+ }
25
+
26
+ this.data = [].concat(more) || [];
27
+ }
28
+
29
+ (0, _createClass2.default)(Builder, [{
30
+ key: "add",
31
+ value: function add(nextOrTuple) {
32
+ return (0, _construct2.default)(Builder, [
33
+ /**
34
+ * re-cast this to NewPlugin as we've done all the type
35
+ * safety, dependency checking, narrowing, during
36
+ * `SafePresetCheck & VerifyPluginDependencies`
37
+ */
38
+ nextOrTuple].concat((0, _toConsumableArray2.default)(this.data)));
39
+ }
40
+ }]);
41
+ return Builder;
42
+ }();
43
+
44
+ exports.Builder = Builder;