@atlaskit/editor-common 111.8.3 → 111.8.5

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 (70) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/afm-products/tsconfig.json +1 -1
  3. package/dist/cjs/analytics/types/enums.js +1 -0
  4. package/dist/cjs/collab/index.js +1 -1
  5. package/dist/cjs/element-browser/components/ElementList/EmptyState.js +1 -1
  6. package/dist/cjs/extensibility/Extension/Extension/index.js +11 -7
  7. package/dist/cjs/extensibility/Extension/Lozenge/EditToggle.js +1 -1
  8. package/dist/cjs/extensibility/Extension/Lozenge/ExtensionLabel.js +1 -1
  9. package/dist/cjs/extensibility/MultiBodiedExtension/index.js +11 -5
  10. package/dist/cjs/extensibility/utils/should-extension-breakout.js +32 -0
  11. package/dist/cjs/link/LinkPicker/HyperlinkAddToolbar/HyperlinkAddToolbar.js +1 -1
  12. package/dist/cjs/messages/mentions.js +10 -0
  13. package/dist/cjs/messages/syncBlock.js +5 -0
  14. package/dist/cjs/monitoring/error.js +1 -1
  15. package/dist/cjs/react-node-view/generateUniqueNodeKey.js +1 -0
  16. package/dist/cjs/styles/shared/headings.js +1 -1
  17. package/dist/cjs/ui/DropList/index.js +1 -1
  18. package/dist/cjs/ui/unsupported-content-helper.js +3 -1
  19. package/dist/cjs/utils/breakout.js +1 -0
  20. package/dist/es2019/analytics/types/enums.js +1 -0
  21. package/dist/es2019/collab/index.js +1 -1
  22. package/dist/es2019/element-browser/components/ElementList/EmptyState.js +1 -1
  23. package/dist/es2019/extensibility/Extension/Extension/index.js +11 -7
  24. package/dist/es2019/extensibility/Extension/Lozenge/EditToggle.js +1 -1
  25. package/dist/es2019/extensibility/Extension/Lozenge/ExtensionLabel.js +1 -1
  26. package/dist/es2019/extensibility/MultiBodiedExtension/index.js +11 -5
  27. package/dist/es2019/extensibility/utils/should-extension-breakout.js +26 -0
  28. package/dist/es2019/link/LinkPicker/HyperlinkAddToolbar/HyperlinkAddToolbar.js +1 -1
  29. package/dist/es2019/messages/mentions.js +10 -0
  30. package/dist/es2019/messages/syncBlock.js +5 -0
  31. package/dist/es2019/monitoring/error.js +1 -1
  32. package/dist/es2019/react-node-view/generateUniqueNodeKey.js +2 -0
  33. package/dist/es2019/styles/shared/headings.js +1 -1
  34. package/dist/es2019/ui/DropList/index.js +1 -1
  35. package/dist/es2019/ui/MediaSingle/styled.js +3 -1
  36. package/dist/es2019/ui/unsupported-content-helper.js +3 -1
  37. package/dist/es2019/utils/breakout.js +1 -0
  38. package/dist/esm/analytics/types/enums.js +1 -0
  39. package/dist/esm/collab/index.js +1 -1
  40. package/dist/esm/element-browser/components/ElementList/EmptyState.js +1 -1
  41. package/dist/esm/extensibility/Extension/Extension/index.js +11 -7
  42. package/dist/esm/extensibility/Extension/Lozenge/EditToggle.js +1 -1
  43. package/dist/esm/extensibility/Extension/Lozenge/ExtensionLabel.js +1 -1
  44. package/dist/esm/extensibility/MultiBodiedExtension/index.js +11 -5
  45. package/dist/esm/extensibility/utils/should-extension-breakout.js +26 -0
  46. package/dist/esm/link/LinkPicker/HyperlinkAddToolbar/HyperlinkAddToolbar.js +1 -1
  47. package/dist/esm/messages/mentions.js +10 -0
  48. package/dist/esm/messages/syncBlock.js +5 -0
  49. package/dist/esm/monitoring/error.js +1 -1
  50. package/dist/esm/react-node-view/generateUniqueNodeKey.js +2 -0
  51. package/dist/esm/styles/shared/headings.js +1 -1
  52. package/dist/esm/ui/DropList/index.js +1 -1
  53. package/dist/esm/ui/unsupported-content-helper.js +3 -1
  54. package/dist/esm/utils/breakout.js +1 -0
  55. package/dist/types/analytics/types/ai-unified-events.d.ts +4 -1
  56. package/dist/types/analytics/types/enums.d.ts +1 -0
  57. package/dist/types/extensibility/utils/should-extension-breakout.d.ts +8 -0
  58. package/dist/types/messages/mentions.d.ts +10 -0
  59. package/dist/types/messages/syncBlock.d.ts +5 -0
  60. package/dist/types/provider-helpers/combine-providers.d.ts +1 -1
  61. package/dist/types/utils/breakout.d.ts +10 -10
  62. package/dist/types-ts4.5/analytics/types/ai-unified-events.d.ts +4 -1
  63. package/dist/types-ts4.5/analytics/types/enums.d.ts +1 -0
  64. package/dist/types-ts4.5/extensibility/utils/should-extension-breakout.d.ts +8 -0
  65. package/dist/types-ts4.5/messages/mentions.d.ts +10 -0
  66. package/dist/types-ts4.5/messages/syncBlock.d.ts +5 -0
  67. package/dist/types-ts4.5/provider-helpers/combine-providers.d.ts +1 -1
  68. package/dist/types-ts4.5/utils/breakout.d.ts +10 -10
  69. package/package.json +4 -4
  70. package/build/tsconfig.json +0 -23
package/CHANGELOG.md CHANGED
@@ -1,5 +1,26 @@
1
1
  # @atlaskit/editor-common
2
2
 
3
+ ## 111.8.5
4
+
5
+ ### Patch Changes
6
+
7
+ - [`498fc3298e069`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/498fc3298e069) -
8
+ [ux] EDITOR-3463: Keep extension breakout aligned with page width in full-width and max modes. The
9
+ rollout is guarded by `confluence_max_width_content_appearance` and the new
10
+ `confluence_max_width_breakout_extension_fix` experiment so the bugfix can be toggled
11
+ independently.
12
+ - [`b34b724d67362`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/b34b724d67362) -
13
+ Improve AI analytics by ensuring attributes are set and firing additional free gen events
14
+ - Updated dependencies
15
+
16
+ ## 111.8.4
17
+
18
+ ### Patch Changes
19
+
20
+ - [`7b1f7ff1a2235`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/7b1f7ff1a2235) -
21
+ [ux] [EDITOR-4536] Update synced location dropdown UI
22
+ - Updated dependencies
23
+
3
24
  ## 111.8.3
4
25
 
5
26
  ### Patch Changes
@@ -1,5 +1,5 @@
1
1
  {
2
- "extends": "../../../../tsconfig.entry-points.products.json",
2
+ "extends": "../../../../tsconfig.local-consumption.json",
3
3
  "compilerOptions": {
4
4
  "declaration": true,
5
5
  "target": "es5",
@@ -43,6 +43,7 @@ var ACTION = exports.ACTION = /*#__PURE__*/function (ACTION) {
43
43
  ACTION["DECREMENTED"] = "decremented";
44
44
  ACTION["DELETED"] = "deleted";
45
45
  ACTION["DISCARDED_INVALID_STEPS_FROM_TRANSACTION"] = "discardedInvalidStepsFromTransaction";
46
+ ACTION["DISCARDED"] = "discarded";
46
47
  /** used in @atlassian/editor-referentiality */
47
48
  ACTION["DISCONNECTED_SOURCE"] = "disconnectedSource";
48
49
  /** used in @atlassian/editor-referentiality */
@@ -141,7 +141,7 @@ var TELEPOINTER_DATA_SESSION_ID_ATTR = exports.TELEPOINTER_DATA_SESSION_ID_ATTR
141
141
  // ED-22557: Safely convert to object styling
142
142
  // Disable top: -14px since it is necessary to align to cursor
143
143
  // eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview, @atlaskit/design-system/no-css-tagged-template-expression, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
144
- var telepointerStyle = exports.telepointerStyle = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n\t@keyframes pulseIn {\n\t\t0%,\n\t\t100% {\n\t\t\ttransform: scaleX(0);\n\t\t\topacity: 0;\n\t\t}\n\t\t10% {\n\t\t\ttransform: scaleX(1.4);\n\t\t\topacity: 1;\n\t\t}\n\t\t15%,\n\t\t85% {\n\t\t\ttransform: scaleX(1);\n\t\t\topacity: 1;\n\t\t}\n\t}\n\n\t@keyframes pulseOut {\n\t\t0%,\n\t\t90%,\n\t\t100% {\n\t\t\ttransform: scaleX(1);\n\t\t\topacity: 1;\n\t\t}\n\t\t10%,\n\t\t80% {\n\t\t\ttransform: scaleX(0);\n\t\t\topacity: 0;\n\t\t}\n\t}\n\n\t@keyframes pulseInDuringTr {\n\t\t0%,\n\t\t95% {\n\t\t\ttransform: scaleX(1);\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\ttransform: scaleX(0);\n\t\t\topacity: 0;\n\t\t}\n\t}\n\n\t@keyframes pulseOutDuringTr {\n\t\t100% {\n\t\t\ttransform: scaleX(1);\n\t\t\topacity: 1;\n\t\t}\n\t\t0%,\n\t\t90% {\n\t\t\ttransform: scaleX(0);\n\t\t\topacity: 0;\n\t\t}\n\t}\n\n\t.ProseMirror .telepointer {\n\t\tposition: relative;\n\t\ttransition: opacity 200ms;\n\n\t\t&.telepointer-selection:not(.inlineNodeView) {\n\t\t\tline-height: 1.2;\n\t\t\tpointer-events: none;\n\t\t\tuser-select: none;\n\t\t}\n\n\t\t&.telepointer-selection-badge {\n\t\t\t.telepointer-initial,\n\t\t\t.telepointer-fullname {\n\t\t\t\tposition: absolute;\n\t\t\t\tdisplay: block;\n\t\t\t\tuser-select: none;\n\t\t\t\twhite-space: pre;\n\t\t\t\ttop: -14px;\n\t\t\t\tleft: 0px;\n\t\t\t\tfont: ", ";\n\t\t\t\tpadding-left: ", ";\n\t\t\t\tpadding-right: ", ";\n\t\t\t\tborder-radius: 0 2px 2px 0;\n\t\t\t}\n\n\t\t\t.telepointer-initial {\n\t\t\t\topacity: 1;\n\t\t\t\ttransition: opacity 0.15s ease-out;\n\t\t\t}\n\n\t\t\t.telepointer-fullname {\n\t\t\t\topacity: 0;\n\t\t\t\ttransform: scaleX(0);\n\t\t\t\ttransform-origin: top left;\n\t\t\t\ttransition:\n\t\t\t\t\ttransform 0.15s ease-out,\n\t\t\t\t\topacity 0.15s ease-out;\n\t\t\t}\n\t\t}\n\n\t\t&.", " {\n\t\t\t.telepointer-initial {\n\t\t\t\tanimation: pulseOut 2.5s ease-in-out;\n\t\t\t}\n\n\t\t\t.telepointer-fullname {\n\t\t\t\tanimation: pulseIn 2.5s ease-in-out;\n\t\t\t}\n\t\t}\n\n\t\t&.", " {\n\t\t\t.telepointer-initial {\n\t\t\t\tanimation: pulseOutDuringTr ", "ms ease-in-out;\n\t\t\t}\n\n\t\t\t.telepointer-fullname {\n\t\t\t\tanimation: pulseInDuringTr ", "ms ease-in-out;\n\t\t\t}\n\t\t}\n\n\t\t&:hover {\n\t\t\t.telepointer-initial {\n\t\t\t\topacity: 0;\n\t\t\t\ttransition-delay: 150ms;\n\t\t\t}\n\n\t\t\t.telepointer-fullname {\n\t\t\t\ttransform: scaleX(1);\n\t\t\t\topacity: 1;\n\t\t\t\tz-index: 1;\n\t\t\t}\n\t\t}\n\n\t\t&.", " {\n\t\t\topacity: 0.2;\n\t\t}\n\n\t\t", ";\n\t}\n"])), "var(--ds-font-body-small, normal 400 11px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)", "var(--ds-space-050, 4px)", "var(--ds-space-050, 4px)", TELEPOINTER_PULSE_CLASS, TELEPOINTER_PULSE_DURING_TR_CLASS, TELEPOINTER_PULSE_DURING_TR_DURATION_MS, TELEPOINTER_PULSE_DURING_TR_DURATION_MS, TELEPOINTER_DIM_CLASS, _editorSharedStyles.participantColors.map(function (participantColor, index) {
144
+ var telepointerStyle = exports.telepointerStyle = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n\t@keyframes pulseIn {\n\t\t0%,\n\t\t100% {\n\t\t\ttransform: scaleX(0);\n\t\t\topacity: 0;\n\t\t}\n\t\t10% {\n\t\t\ttransform: scaleX(1.4);\n\t\t\topacity: 1;\n\t\t}\n\t\t15%,\n\t\t85% {\n\t\t\ttransform: scaleX(1);\n\t\t\topacity: 1;\n\t\t}\n\t}\n\n\t@keyframes pulseOut {\n\t\t0%,\n\t\t90%,\n\t\t100% {\n\t\t\ttransform: scaleX(1);\n\t\t\topacity: 1;\n\t\t}\n\t\t10%,\n\t\t80% {\n\t\t\ttransform: scaleX(0);\n\t\t\topacity: 0;\n\t\t}\n\t}\n\n\t@keyframes pulseInDuringTr {\n\t\t0%,\n\t\t95% {\n\t\t\ttransform: scaleX(1);\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\ttransform: scaleX(0);\n\t\t\topacity: 0;\n\t\t}\n\t}\n\n\t@keyframes pulseOutDuringTr {\n\t\t100% {\n\t\t\ttransform: scaleX(1);\n\t\t\topacity: 1;\n\t\t}\n\t\t0%,\n\t\t90% {\n\t\t\ttransform: scaleX(0);\n\t\t\topacity: 0;\n\t\t}\n\t}\n\n\t.ProseMirror .telepointer {\n\t\tposition: relative;\n\t\ttransition: opacity 200ms;\n\n\t\t&.telepointer-selection:not(.inlineNodeView) {\n\t\t\tline-height: 1.2;\n\t\t\tpointer-events: none;\n\t\t\tuser-select: none;\n\t\t}\n\n\t\t&.telepointer-selection-badge {\n\t\t\t.telepointer-initial,\n\t\t\t.telepointer-fullname {\n\t\t\t\tposition: absolute;\n\t\t\t\tdisplay: block;\n\t\t\t\tuser-select: none;\n\t\t\t\twhite-space: pre;\n\t\t\t\ttop: -14px;\n\t\t\t\tleft: 0px;\n\t\t\t\tfont: ", ";\n\t\t\t\tpadding-left: ", ";\n\t\t\t\tpadding-right: ", ";\n\t\t\t\tborder-radius: 0 2px 2px 0;\n\t\t\t}\n\n\t\t\t.telepointer-initial {\n\t\t\t\topacity: 1;\n\t\t\t\ttransition: opacity 0.15s ease-out;\n\t\t\t}\n\n\t\t\t.telepointer-fullname {\n\t\t\t\topacity: 0;\n\t\t\t\ttransform: scaleX(0);\n\t\t\t\ttransform-origin: top left;\n\t\t\t\ttransition:\n\t\t\t\t\ttransform 0.15s ease-out,\n\t\t\t\t\topacity 0.15s ease-out;\n\t\t\t}\n\t\t}\n\n\t\t&.", " {\n\t\t\t.telepointer-initial {\n\t\t\t\tanimation: pulseOut 2.5s ease-in-out;\n\t\t\t}\n\n\t\t\t.telepointer-fullname {\n\t\t\t\tanimation: pulseIn 2.5s ease-in-out;\n\t\t\t}\n\t\t}\n\n\t\t&.", " {\n\t\t\t.telepointer-initial {\n\t\t\t\tanimation: pulseOutDuringTr ", "ms ease-in-out;\n\t\t\t}\n\n\t\t\t.telepointer-fullname {\n\t\t\t\tanimation: pulseInDuringTr ", "ms ease-in-out;\n\t\t\t}\n\t\t}\n\n\t\t&:hover {\n\t\t\t.telepointer-initial {\n\t\t\t\topacity: 0;\n\t\t\t\ttransition-delay: 150ms;\n\t\t\t}\n\n\t\t\t.telepointer-fullname {\n\t\t\t\ttransform: scaleX(1);\n\t\t\t\topacity: 1;\n\t\t\t\tz-index: 1;\n\t\t\t}\n\t\t}\n\n\t\t&.", " {\n\t\t\topacity: 0.2;\n\t\t}\n\n\t\t", ";\n\t}\n"])), "var(--ds-font-body-small, normal 400 12px/16px \"Atlassian Sans\", ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)", "var(--ds-space-050, 4px)", "var(--ds-space-050, 4px)", TELEPOINTER_PULSE_CLASS, TELEPOINTER_PULSE_DURING_TR_CLASS, TELEPOINTER_PULSE_DURING_TR_DURATION_MS, TELEPOINTER_PULSE_DURING_TR_DURATION_MS, TELEPOINTER_DIM_CLASS, _editorSharedStyles.participantColors.map(function (participantColor, index) {
145
145
  return telepointerColorStyle(participantColor.backgroundColor, participantColor.textColor, index);
146
146
  }));
147
147
  var tintKey = 'collab:isDirtyTransaction';
@@ -59,7 +59,7 @@ function EmptyState(_ref) {
59
59
  })))));
60
60
  }
61
61
  var emptyStateHeading = (0, _react2.css)({
62
- font: "var(--ds-font-heading-medium, normal 500 20px/24px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
62
+ font: "var(--ds-font-heading-medium, normal 653 20px/24px \"Atlassian Sans\", ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
63
63
  color: "var(--ds-text, rgb(23, 43, 77))",
64
64
  marginTop: "var(--ds-space-300, 24px)"
65
65
  });
@@ -17,6 +17,7 @@ var _expValEquals = require("@atlaskit/tmp-editor-statsig/exp-val-equals");
17
17
  var _hooks = require("../../../hooks");
18
18
  var _ui = require("../../../ui");
19
19
  var _utils = require("../../../utils");
20
+ var _shouldExtensionBreakout = require("../../utils/should-extension-breakout");
20
21
  var _LegacyContentHeader = require("../LegacyContentHeader");
21
22
  var _Lozenge = _interopRequireDefault(require("../Lozenge"));
22
23
  var _styles = require("../styles");
@@ -82,13 +83,16 @@ function ExtensionWithPluginState(props) {
82
83
  var pos = typeof getPos === 'function' ? getPos() : undefined;
83
84
  return typeof pos !== 'undefined' && !isNaN(pos) && view.state.doc.resolve(pos).depth === 0;
84
85
  }, [view, getPos]);
85
- var shouldBreakout =
86
- // Extension should breakout when the layout is set to 'full-width' or 'wide'.
87
- ['full-width', 'wide'].includes(node.attrs.layout) &&
88
- // Extension breakout state should only be respected for top level nodes.
89
- isTopLevelNode &&
90
- // Extension breakout state should not be respected when the editor appearance is full-width mode
91
- editorAppearance !== 'full-width';
86
+ var layout = node.attrs.layout;
87
+ var legacyShouldBreakout = ['full-width', 'wide'].includes(layout) && isTopLevelNode && editorAppearance !== 'full-width';
88
+ var tinymceFullWidthModeEnabled = (0, _expValEquals.expValEquals)('confluence_max_width_content_appearance', 'isEnabled', true);
89
+ var breakoutExtensionFixEnabled = (0, _expValEquals.expValEquals)('confluence_max_width_breakout_extension_fix', 'isEnabled', true);
90
+ var shouldUseBreakoutFix = tinymceFullWidthModeEnabled && breakoutExtensionFixEnabled;
91
+ var shouldBreakout = shouldUseBreakoutFix ? (0, _shouldExtensionBreakout.shouldExtensionBreakout)({
92
+ layout: layout,
93
+ isTopLevelNode: isTopLevelNode,
94
+ editorAppearance: editorAppearance
95
+ }) : legacyShouldBreakout;
92
96
 
93
97
  // We don't want to show border for non-empty 1p bodied extensions in live pages
94
98
  var show1PBodiedExtensionBorder = showUpdatedLivePages1PBodiedExtensionUI ? (0, _extensionUtils.isEmptyBodiedMacro)(node) : true;
@@ -42,7 +42,7 @@ var buttonStyles = (0, _react2.css)({
42
42
  borderRadius: "var(--ds-radius-small, 4px)",
43
43
  paddingLeft: "var(--ds-space-150, 12px)",
44
44
  paddingRight: "var(--ds-space-150, 12px)",
45
- font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
45
+ font: "var(--ds-font-body, normal 400 14px/20px \"Atlassian Sans\", ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
46
46
  '&:hover': {
47
47
  backgroundColor: "var(--ds-background-input-hovered, #F8F8F8)"
48
48
  },
@@ -88,7 +88,7 @@ var labelStyles = (0, _react.css)({
88
88
  '&.remove-nested-left-margin': {
89
89
  marginLeft: 0
90
90
  },
91
- font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
91
+ font: "var(--ds-font-body, normal 400 14px/20px \"Atlassian Sans\", ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
92
92
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
93
93
  '&.with-bodied-macro-live-page-styles': {
94
94
  backgroundColor: "var(--ds-background-input, #FFFFFF)",
@@ -20,6 +20,7 @@ var _hooks = require("../../hooks");
20
20
  var _MultiBodiedExtension = require("../../ui/MultiBodiedExtension");
21
21
  var _utils = require("../../utils");
22
22
  var _Lozenge = _interopRequireDefault(require("../Extension/Lozenge"));
23
+ var _shouldExtensionBreakout = require("../utils/should-extension-breakout");
23
24
  var _actionApi = require("./action-api");
24
25
  var _styles = require("./styles");
25
26
  var _excluded = ["url"];
@@ -152,11 +153,16 @@ var MultiBodiedExtensionWithWidth = function MultiBodiedExtensionWithWidth(_ref2
152
153
  var extensionHandlerResult = _react.default.useMemo(function () {
153
154
  return tryExtensionHandler(actions);
154
155
  }, [tryExtensionHandler, actions]);
155
- var shouldBreakout =
156
- // Extension should breakout when the layout is set to 'full-width' or 'wide'.
157
- ['full-width', 'wide'].includes(node.attrs.layout) &&
158
- // Extension breakout state should not be respected when the editor appearance is full-width mode
159
- editorAppearance !== 'full-width';
156
+ var layout = node.attrs.layout;
157
+ var legacyShouldBreakout = ['full-width', 'wide'].includes(layout) && editorAppearance !== 'full-width';
158
+ var tinymceFullWidthModeEnabled = (0, _expValEquals.expValEquals)('confluence_max_width_content_appearance', 'isEnabled', true);
159
+ var breakoutExtensionFixEnabled = (0, _expValEquals.expValEquals)('confluence_max_width_breakout_extension_fix', 'isEnabled', true);
160
+ var shouldUseBreakoutFix = tinymceFullWidthModeEnabled && breakoutExtensionFixEnabled;
161
+ var shouldBreakout = shouldUseBreakoutFix ? (0, _shouldExtensionBreakout.shouldExtensionBreakout)({
162
+ layout: layout,
163
+ editorAppearance: editorAppearance,
164
+ isTopLevelNode: true
165
+ }) : legacyShouldBreakout;
160
166
  var mbeWrapperStyles = {};
161
167
  if (shouldBreakout) {
162
168
  var _calculateBreakoutSty = (0, _utils.calculateBreakoutStyles)({
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.shouldExtensionBreakout = void 0;
7
+ var breakoutLayouts = new Set(['full-width', 'wide']);
8
+ var shouldRespectBreakoutForAppearance = function shouldRespectBreakoutForAppearance(appearance) {
9
+ if (!appearance) {
10
+ return true;
11
+ }
12
+ if (appearance === 'full-width') {
13
+ return false;
14
+ }
15
+ if (appearance === 'max') {
16
+ return false;
17
+ }
18
+ return true;
19
+ };
20
+ var shouldExtensionBreakout = exports.shouldExtensionBreakout = function shouldExtensionBreakout(_ref) {
21
+ var layout = _ref.layout,
22
+ _ref$isTopLevelNode = _ref.isTopLevelNode,
23
+ isTopLevelNode = _ref$isTopLevelNode === void 0 ? true : _ref$isTopLevelNode,
24
+ editorAppearance = _ref.editorAppearance;
25
+ if (!layout || !breakoutLayouts.has(layout)) {
26
+ return false;
27
+ }
28
+ if (!isTopLevelNode) {
29
+ return false;
30
+ }
31
+ return shouldRespectBreakoutForAppearance(editorAppearance);
32
+ };
@@ -79,7 +79,7 @@ var textLabelMargin = (0, _react2.css)({
79
79
  var inputLabel = (0, _react2.css)({
80
80
  color: "var(--ds-text-subtlest, #6B6E76)",
81
81
  paddingBottom: "var(--ds-space-050, 4px)",
82
- font: "var(--ds-font-body-small, normal 400 11px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
82
+ font: "var(--ds-font-body-small, normal 400 12px/16px \"Atlassian Sans\", ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
83
83
  fontWeight: "var(--ds-font-weight-medium, 500)"
84
84
  });
85
85
  var inputWrapperPosition = (0, _react2.css)({
@@ -30,5 +30,15 @@ var mentionMessages = exports.mentionMessages = (0, _reactIntlNext.defineMessage
30
30
  id: 'fabric.editor.unknown.label',
31
31
  defaultMessage: 'Unknown',
32
32
  description: 'Label to indicate unknown mention node'
33
+ },
34
+ inviteTeammateInvalidEmail: {
35
+ id: 'fabric.editor.inviteItem.invalidEmail',
36
+ defaultMessage: 'Enter a valid email address',
37
+ description: 'By line text for invite teammate option shown in mentions when the email is invalid. This is a placeholder for the actual error message that will be shown to the user.'
38
+ },
39
+ sendInvite: {
40
+ id: 'fabric.editor.inviteItem.sendInvite',
41
+ defaultMessage: 'Send request to invite teammate',
42
+ description: 'By line text for send request to invite teammate option shown in mentions.'
33
43
  }
34
44
  });
@@ -250,5 +250,10 @@ var syncBlockMessages = exports.syncBlockMessages = (0, _reactIntlNext.defineMes
250
250
  id: 'fabric.editor.syncedLocationDropdownSourceLozenge',
251
251
  defaultMessage: 'Source',
252
252
  description: 'Lozenge label shown in the synced location dropdown option when the sync block is source'
253
+ },
254
+ syncedLocationDropdownRequestAccess: {
255
+ id: 'fabric.editor.syncedLocationDropdownRequestAccess',
256
+ defaultMessage: 'Request access',
257
+ description: 'Label shown in the synced location dropdown option when the sync block is not accessible to the user'
253
258
  }
254
259
  });
@@ -19,7 +19,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
19
19
  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); }
20
20
  var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
21
21
  var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
22
- var packageVersion = "0.0.0-development";
22
+ var packageVersion = "111.8.4";
23
23
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
24
24
  // Remove URL as it has UGC
25
25
  // Ignored via go/ees007
@@ -8,6 +8,7 @@ exports.generateUniqueNodeKey = void 0;
8
8
  var _v = _interopRequireDefault(require("uuid/v4"));
9
9
  // eslint-disable-next-line @atlaskit/platform/prefer-crypto-random-uuid -- Use crypto.randomUUID instead
10
10
 
11
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
11
12
  var generateUniqueNodeKey = exports.generateUniqueNodeKey = function generateUniqueNodeKey() {
12
13
  // eslint-disable-next-line @atlaskit/platform/prefer-crypto-random-uuid -- Use crypto.randomUUID instead
13
14
  return (0, _v.default)();
@@ -154,7 +154,7 @@ var headingsSharedStyles = exports.headingsSharedStyles = function headingsShare
154
154
  fontStyle: 'inherit',
155
155
  lineHeight: 16 / 11,
156
156
  color: "var(--ds-text-subtlest, #6B6E76)",
157
- fontWeight: "var(--ds-font-weight-bold, 700)",
157
+ fontWeight: "var(--ds-font-weight-bold, 653)",
158
158
  marginTop: '1.455em',
159
159
  textTransform: 'none'
160
160
  }
@@ -24,7 +24,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
24
24
  * @jsx jsx
25
25
  */ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
26
26
  var packageName = "@atlaskit/editor-common";
27
- var packageVersion = "0.0.0-development";
27
+ var packageVersion = "111.8.4";
28
28
  var halfFocusRing = 1;
29
29
  var dropOffset = '0, 8';
30
30
  var fadeIn = (0, _react2.keyframes)({
@@ -7,7 +7,9 @@ exports.getUnsupportedContent = getUnsupportedContent;
7
7
  function getUnsupportedContent(
8
8
  // Ignored via go/ees005
9
9
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
10
- message, prefix, node, intl) {
10
+ message, prefix, node, intl
11
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
12
+ ) {
11
13
  var defaultLocale = 'en';
12
14
  var canTranslateToLocale = true;
13
15
  var locale = intl ? intl.locale : defaultLocale;
@@ -108,6 +108,7 @@ var absoluteBreakoutWidth = exports.absoluteBreakoutWidth = function absoluteBre
108
108
  return parseInt(breakoutWidth, 10);
109
109
  };
110
110
  var calcWideWidth = exports.calcWideWidth = breakoutConsts.calcWideWidth(breakoutConsts);
111
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
111
112
  var calcBreakoutWidth = exports.calcBreakoutWidth = breakoutConsts.calcBreakoutWidth(breakoutConsts);
112
113
  var calcBreakoutWithCustomWidth = exports.calcBreakoutWithCustomWidth = breakoutConsts.calcBreakoutWithCustomWidth(breakoutConsts);
113
114
  function calculateBreakoutStyles(_ref) {
@@ -37,6 +37,7 @@ export let ACTION = /*#__PURE__*/function (ACTION) {
37
37
  ACTION["DECREMENTED"] = "decremented";
38
38
  ACTION["DELETED"] = "deleted";
39
39
  ACTION["DISCARDED_INVALID_STEPS_FROM_TRANSACTION"] = "discardedInvalidStepsFromTransaction";
40
+ ACTION["DISCARDED"] = "discarded";
40
41
  /** used in @atlassian/editor-referentiality */
41
42
  ACTION["DISCONNECTED_SOURCE"] = "disconnectedSource";
42
43
  /** used in @atlassian/editor-referentiality */
@@ -241,7 +241,7 @@ export const telepointerStyle = css`
241
241
  white-space: pre;
242
242
  top: -14px;
243
243
  left: 0px;
244
- font: ${"var(--ds-font-body-small, normal 400 11px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)"};
244
+ font: ${"var(--ds-font-body-small, normal 400 12px/16px \"Atlassian Sans\", ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)"};
245
245
  padding-left: ${"var(--ds-space-050, 4px)"};
246
246
  padding-right: ${"var(--ds-space-050, 4px)"};
247
247
  border-radius: 0 2px 2px 0;
@@ -51,7 +51,7 @@ export default function EmptyState({
51
51
  })))));
52
52
  }
53
53
  const emptyStateHeading = css({
54
- font: "var(--ds-font-heading-medium, normal 500 20px/24px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
54
+ font: "var(--ds-font-heading-medium, normal 653 20px/24px \"Atlassian Sans\", ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
55
55
  color: "var(--ds-text, rgb(23, 43, 77))",
56
56
  marginTop: "var(--ds-space-300, 24px)"
57
57
  });
@@ -14,6 +14,7 @@ import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
14
14
  import { useSharedPluginStateWithSelector } from '../../../hooks';
15
15
  import { overflowShadow } from '../../../ui';
16
16
  import { calculateBreakoutStyles } from '../../../utils';
17
+ import { shouldExtensionBreakout } from '../../utils/should-extension-breakout';
17
18
  import { LegacyContentHeader } from '../LegacyContentHeader';
18
19
  import ExtensionLozenge from '../Lozenge';
19
20
  import { overlay } from '../styles';
@@ -75,13 +76,16 @@ function ExtensionWithPluginState(props) {
75
76
  const pos = typeof getPos === 'function' ? getPos() : undefined;
76
77
  return typeof pos !== 'undefined' && !isNaN(pos) && view.state.doc.resolve(pos).depth === 0;
77
78
  }, [view, getPos]);
78
- const shouldBreakout =
79
- // Extension should breakout when the layout is set to 'full-width' or 'wide'.
80
- ['full-width', 'wide'].includes(node.attrs.layout) &&
81
- // Extension breakout state should only be respected for top level nodes.
82
- isTopLevelNode &&
83
- // Extension breakout state should not be respected when the editor appearance is full-width mode
84
- editorAppearance !== 'full-width';
79
+ const layout = node.attrs.layout;
80
+ const legacyShouldBreakout = ['full-width', 'wide'].includes(layout) && isTopLevelNode && editorAppearance !== 'full-width';
81
+ const tinymceFullWidthModeEnabled = expValEquals('confluence_max_width_content_appearance', 'isEnabled', true);
82
+ const breakoutExtensionFixEnabled = expValEquals('confluence_max_width_breakout_extension_fix', 'isEnabled', true);
83
+ const shouldUseBreakoutFix = tinymceFullWidthModeEnabled && breakoutExtensionFixEnabled;
84
+ const shouldBreakout = shouldUseBreakoutFix ? shouldExtensionBreakout({
85
+ layout,
86
+ isTopLevelNode,
87
+ editorAppearance
88
+ }) : legacyShouldBreakout;
85
89
 
86
90
  // We don't want to show border for non-empty 1p bodied extensions in live pages
87
91
  const show1PBodiedExtensionBorder = showUpdatedLivePages1PBodiedExtensionUI ? isEmptyBodiedMacro(node) : true;
@@ -34,7 +34,7 @@ const buttonStyles = css({
34
34
  borderRadius: "var(--ds-radius-small, 4px)",
35
35
  paddingLeft: "var(--ds-space-150, 12px)",
36
36
  paddingRight: "var(--ds-space-150, 12px)",
37
- font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
37
+ font: "var(--ds-font-body, normal 400 14px/20px \"Atlassian Sans\", ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
38
38
  '&:hover': {
39
39
  backgroundColor: "var(--ds-background-input-hovered, #F8F8F8)"
40
40
  },
@@ -78,7 +78,7 @@ const labelStyles = css({
78
78
  '&.remove-nested-left-margin': {
79
79
  marginLeft: 0
80
80
  },
81
- font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
81
+ font: "var(--ds-font-body, normal 400 14px/20px \"Atlassian Sans\", ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
82
82
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
83
83
  '&.with-bodied-macro-live-page-styles': {
84
84
  backgroundColor: "var(--ds-background-input, #FFFFFF)",
@@ -16,6 +16,7 @@ import { useSharedPluginStateWithSelector } from '../../hooks';
16
16
  import { removeMarginsAndBorder, sharedMultiBodiedExtensionStyles } from '../../ui/MultiBodiedExtension';
17
17
  import { calculateBreakoutStyles, getExtensionLozengeData } from '../../utils';
18
18
  import ExtensionLozenge from '../Extension/Lozenge';
19
+ import { shouldExtensionBreakout } from '../utils/should-extension-breakout';
19
20
  import { useMultiBodiedExtensionActions } from './action-api';
20
21
  import { mbeExtensionWrapperCSSStyles, overlayStyles } from './styles';
21
22
  const getContainerCssExtendedStyles = (activeChildIndex, showMacroInteractionDesignUpdates) =>
@@ -142,11 +143,16 @@ const MultiBodiedExtensionWithWidth = ({
142
143
  const extensionHandlerResult = React.useMemo(() => {
143
144
  return tryExtensionHandler(actions);
144
145
  }, [tryExtensionHandler, actions]);
145
- const shouldBreakout =
146
- // Extension should breakout when the layout is set to 'full-width' or 'wide'.
147
- ['full-width', 'wide'].includes(node.attrs.layout) &&
148
- // Extension breakout state should not be respected when the editor appearance is full-width mode
149
- editorAppearance !== 'full-width';
146
+ const layout = node.attrs.layout;
147
+ const legacyShouldBreakout = ['full-width', 'wide'].includes(layout) && editorAppearance !== 'full-width';
148
+ const tinymceFullWidthModeEnabled = expValEquals('confluence_max_width_content_appearance', 'isEnabled', true);
149
+ const breakoutExtensionFixEnabled = expValEquals('confluence_max_width_breakout_extension_fix', 'isEnabled', true);
150
+ const shouldUseBreakoutFix = tinymceFullWidthModeEnabled && breakoutExtensionFixEnabled;
151
+ const shouldBreakout = shouldUseBreakoutFix ? shouldExtensionBreakout({
152
+ layout,
153
+ editorAppearance,
154
+ isTopLevelNode: true
155
+ }) : legacyShouldBreakout;
150
156
  let mbeWrapperStyles = {};
151
157
  if (shouldBreakout) {
152
158
  const {
@@ -0,0 +1,26 @@
1
+ const breakoutLayouts = new Set(['full-width', 'wide']);
2
+ const shouldRespectBreakoutForAppearance = appearance => {
3
+ if (!appearance) {
4
+ return true;
5
+ }
6
+ if (appearance === 'full-width') {
7
+ return false;
8
+ }
9
+ if (appearance === 'max') {
10
+ return false;
11
+ }
12
+ return true;
13
+ };
14
+ export const shouldExtensionBreakout = ({
15
+ layout,
16
+ isTopLevelNode = true,
17
+ editorAppearance
18
+ }) => {
19
+ if (!layout || !breakoutLayouts.has(layout)) {
20
+ return false;
21
+ }
22
+ if (!isTopLevelNode) {
23
+ return false;
24
+ }
25
+ return shouldRespectBreakoutForAppearance(editorAppearance);
26
+ };
@@ -64,7 +64,7 @@ const textLabelMargin = css({
64
64
  const inputLabel = css({
65
65
  color: "var(--ds-text-subtlest, #6B6E76)",
66
66
  paddingBottom: "var(--ds-space-050, 4px)",
67
- font: "var(--ds-font-body-small, normal 400 11px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
67
+ font: "var(--ds-font-body-small, normal 400 12px/16px \"Atlassian Sans\", ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
68
68
  fontWeight: "var(--ds-font-weight-medium, 500)"
69
69
  });
70
70
  const inputWrapperPosition = css({
@@ -24,5 +24,15 @@ export const mentionMessages = defineMessages({
24
24
  id: 'fabric.editor.unknown.label',
25
25
  defaultMessage: 'Unknown',
26
26
  description: 'Label to indicate unknown mention node'
27
+ },
28
+ inviteTeammateInvalidEmail: {
29
+ id: 'fabric.editor.inviteItem.invalidEmail',
30
+ defaultMessage: 'Enter a valid email address',
31
+ description: 'By line text for invite teammate option shown in mentions when the email is invalid. This is a placeholder for the actual error message that will be shown to the user.'
32
+ },
33
+ sendInvite: {
34
+ id: 'fabric.editor.inviteItem.sendInvite',
35
+ defaultMessage: 'Send request to invite teammate',
36
+ description: 'By line text for send request to invite teammate option shown in mentions.'
27
37
  }
28
38
  });
@@ -244,5 +244,10 @@ export const syncBlockMessages = defineMessages({
244
244
  id: 'fabric.editor.syncedLocationDropdownSourceLozenge',
245
245
  defaultMessage: 'Source',
246
246
  description: 'Lozenge label shown in the synced location dropdown option when the sync block is source'
247
+ },
248
+ syncedLocationDropdownRequestAccess: {
249
+ id: 'fabric.editor.syncedLocationDropdownRequestAccess',
250
+ defaultMessage: 'Request access',
251
+ description: 'Label shown in the synced location dropdown option when the sync block is not accessible to the user'
247
252
  }
248
253
  });
@@ -4,7 +4,7 @@ import { isFedRamp } from './environment';
4
4
  import { normaliseSentryBreadcrumbs, SERIALIZABLE_ATTRIBUTES } from './normalise-sentry-breadcrumbs';
5
5
  const SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
6
6
  const packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
7
- const packageVersion = "0.0.0-development";
7
+ const packageVersion = "111.8.4";
8
8
  const sanitiseSentryEvents = (data, _hint) => {
9
9
  // Remove URL as it has UGC
10
10
  // Ignored via go/ees007
@@ -1,5 +1,7 @@
1
1
  // eslint-disable-next-line @atlaskit/platform/prefer-crypto-random-uuid -- Use crypto.randomUUID instead
2
2
  import uuid from 'uuid/v4';
3
+
4
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3
5
  export const generateUniqueNodeKey = () => {
4
6
  // eslint-disable-next-line @atlaskit/platform/prefer-crypto-random-uuid -- Use crypto.randomUUID instead
5
7
  return uuid();
@@ -148,7 +148,7 @@ export const headingsSharedStyles = _typographyTheme => {
148
148
  fontStyle: 'inherit',
149
149
  lineHeight: 16 / 11,
150
150
  color: "var(--ds-text-subtlest, #6B6E76)",
151
- fontWeight: "var(--ds-font-weight-bold, 700)",
151
+ fontWeight: "var(--ds-font-weight-bold, 653)",
152
152
  marginTop: '1.455em',
153
153
  textTransform: 'none'
154
154
  },
@@ -14,7 +14,7 @@ import withAnalyticsEvents from '@atlaskit/analytics-next/withAnalyticsEvents';
14
14
  import { fg } from '@atlaskit/platform-feature-flags';
15
15
  import Layer from '../Layer';
16
16
  const packageName = "@atlaskit/editor-common";
17
- const packageVersion = "0.0.0-development";
17
+ const packageVersion = "111.8.4";
18
18
  const halfFocusRing = 1;
19
19
  const dropOffset = '0, 8';
20
20
  const fadeIn = keyframes({
@@ -103,7 +103,9 @@ export function calcLegacyWidthForInline(layout, width, containerWidth = 0, full
103
103
  * @param containerWidth
104
104
  * @example
105
105
  */
106
- export function calcResizedWidth(layout, width, containerWidth = 0) {
106
+ export function calcResizedWidth(layout, width, containerWidth = 0
107
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
108
+ ) {
107
109
  switch (layout) {
108
110
  case 'wide':
109
111
  return calcWideWidth(containerWidth);
@@ -1,7 +1,9 @@
1
1
  export function getUnsupportedContent(
2
2
  // Ignored via go/ees005
3
3
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
4
- message, prefix, node, intl) {
4
+ message, prefix, node, intl
5
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
6
+ ) {
5
7
  const defaultLocale = 'en';
6
8
  let canTranslateToLocale = true;
7
9
  const locale = intl ? intl.locale : defaultLocale;
@@ -85,6 +85,7 @@ export const absoluteBreakoutWidth = (layout, containerWidth) => {
85
85
  };
86
86
  export { breakoutConsts };
87
87
  export const calcWideWidth = breakoutConsts.calcWideWidth(breakoutConsts);
88
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
88
89
  export const calcBreakoutWidth = breakoutConsts.calcBreakoutWidth(breakoutConsts);
89
90
  export const calcBreakoutWithCustomWidth = breakoutConsts.calcBreakoutWithCustomWidth(breakoutConsts);
90
91
  export function calculateBreakoutStyles({
@@ -37,6 +37,7 @@ export var ACTION = /*#__PURE__*/function (ACTION) {
37
37
  ACTION["DECREMENTED"] = "decremented";
38
38
  ACTION["DELETED"] = "deleted";
39
39
  ACTION["DISCARDED_INVALID_STEPS_FROM_TRANSACTION"] = "discardedInvalidStepsFromTransaction";
40
+ ACTION["DISCARDED"] = "discarded";
40
41
  /** used in @atlassian/editor-referentiality */
41
42
  ACTION["DISCONNECTED_SOURCE"] = "disconnectedSource";
42
43
  /** used in @atlassian/editor-referentiality */
@@ -158,7 +158,7 @@ export var TELEPOINTER_DATA_SESSION_ID_ATTR = 'data-telepointer-sessionid';
158
158
  // ED-22557: Safely convert to object styling
159
159
  // Disable top: -14px since it is necessary to align to cursor
160
160
  // eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview, @atlaskit/design-system/no-css-tagged-template-expression, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
161
- export var telepointerStyle = css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n\t@keyframes pulseIn {\n\t\t0%,\n\t\t100% {\n\t\t\ttransform: scaleX(0);\n\t\t\topacity: 0;\n\t\t}\n\t\t10% {\n\t\t\ttransform: scaleX(1.4);\n\t\t\topacity: 1;\n\t\t}\n\t\t15%,\n\t\t85% {\n\t\t\ttransform: scaleX(1);\n\t\t\topacity: 1;\n\t\t}\n\t}\n\n\t@keyframes pulseOut {\n\t\t0%,\n\t\t90%,\n\t\t100% {\n\t\t\ttransform: scaleX(1);\n\t\t\topacity: 1;\n\t\t}\n\t\t10%,\n\t\t80% {\n\t\t\ttransform: scaleX(0);\n\t\t\topacity: 0;\n\t\t}\n\t}\n\n\t@keyframes pulseInDuringTr {\n\t\t0%,\n\t\t95% {\n\t\t\ttransform: scaleX(1);\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\ttransform: scaleX(0);\n\t\t\topacity: 0;\n\t\t}\n\t}\n\n\t@keyframes pulseOutDuringTr {\n\t\t100% {\n\t\t\ttransform: scaleX(1);\n\t\t\topacity: 1;\n\t\t}\n\t\t0%,\n\t\t90% {\n\t\t\ttransform: scaleX(0);\n\t\t\topacity: 0;\n\t\t}\n\t}\n\n\t.ProseMirror .telepointer {\n\t\tposition: relative;\n\t\ttransition: opacity 200ms;\n\n\t\t&.telepointer-selection:not(.inlineNodeView) {\n\t\t\tline-height: 1.2;\n\t\t\tpointer-events: none;\n\t\t\tuser-select: none;\n\t\t}\n\n\t\t&.telepointer-selection-badge {\n\t\t\t.telepointer-initial,\n\t\t\t.telepointer-fullname {\n\t\t\t\tposition: absolute;\n\t\t\t\tdisplay: block;\n\t\t\t\tuser-select: none;\n\t\t\t\twhite-space: pre;\n\t\t\t\ttop: -14px;\n\t\t\t\tleft: 0px;\n\t\t\t\tfont: ", ";\n\t\t\t\tpadding-left: ", ";\n\t\t\t\tpadding-right: ", ";\n\t\t\t\tborder-radius: 0 2px 2px 0;\n\t\t\t}\n\n\t\t\t.telepointer-initial {\n\t\t\t\topacity: 1;\n\t\t\t\ttransition: opacity 0.15s ease-out;\n\t\t\t}\n\n\t\t\t.telepointer-fullname {\n\t\t\t\topacity: 0;\n\t\t\t\ttransform: scaleX(0);\n\t\t\t\ttransform-origin: top left;\n\t\t\t\ttransition:\n\t\t\t\t\ttransform 0.15s ease-out,\n\t\t\t\t\topacity 0.15s ease-out;\n\t\t\t}\n\t\t}\n\n\t\t&.", " {\n\t\t\t.telepointer-initial {\n\t\t\t\tanimation: pulseOut 2.5s ease-in-out;\n\t\t\t}\n\n\t\t\t.telepointer-fullname {\n\t\t\t\tanimation: pulseIn 2.5s ease-in-out;\n\t\t\t}\n\t\t}\n\n\t\t&.", " {\n\t\t\t.telepointer-initial {\n\t\t\t\tanimation: pulseOutDuringTr ", "ms ease-in-out;\n\t\t\t}\n\n\t\t\t.telepointer-fullname {\n\t\t\t\tanimation: pulseInDuringTr ", "ms ease-in-out;\n\t\t\t}\n\t\t}\n\n\t\t&:hover {\n\t\t\t.telepointer-initial {\n\t\t\t\topacity: 0;\n\t\t\t\ttransition-delay: 150ms;\n\t\t\t}\n\n\t\t\t.telepointer-fullname {\n\t\t\t\ttransform: scaleX(1);\n\t\t\t\topacity: 1;\n\t\t\t\tz-index: 1;\n\t\t\t}\n\t\t}\n\n\t\t&.", " {\n\t\t\topacity: 0.2;\n\t\t}\n\n\t\t", ";\n\t}\n"])), "var(--ds-font-body-small, normal 400 11px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)", "var(--ds-space-050, 4px)", "var(--ds-space-050, 4px)", TELEPOINTER_PULSE_CLASS, TELEPOINTER_PULSE_DURING_TR_CLASS, TELEPOINTER_PULSE_DURING_TR_DURATION_MS, TELEPOINTER_PULSE_DURING_TR_DURATION_MS, TELEPOINTER_DIM_CLASS, participantColors.map(function (participantColor, index) {
161
+ export var telepointerStyle = css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n\t@keyframes pulseIn {\n\t\t0%,\n\t\t100% {\n\t\t\ttransform: scaleX(0);\n\t\t\topacity: 0;\n\t\t}\n\t\t10% {\n\t\t\ttransform: scaleX(1.4);\n\t\t\topacity: 1;\n\t\t}\n\t\t15%,\n\t\t85% {\n\t\t\ttransform: scaleX(1);\n\t\t\topacity: 1;\n\t\t}\n\t}\n\n\t@keyframes pulseOut {\n\t\t0%,\n\t\t90%,\n\t\t100% {\n\t\t\ttransform: scaleX(1);\n\t\t\topacity: 1;\n\t\t}\n\t\t10%,\n\t\t80% {\n\t\t\ttransform: scaleX(0);\n\t\t\topacity: 0;\n\t\t}\n\t}\n\n\t@keyframes pulseInDuringTr {\n\t\t0%,\n\t\t95% {\n\t\t\ttransform: scaleX(1);\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\ttransform: scaleX(0);\n\t\t\topacity: 0;\n\t\t}\n\t}\n\n\t@keyframes pulseOutDuringTr {\n\t\t100% {\n\t\t\ttransform: scaleX(1);\n\t\t\topacity: 1;\n\t\t}\n\t\t0%,\n\t\t90% {\n\t\t\ttransform: scaleX(0);\n\t\t\topacity: 0;\n\t\t}\n\t}\n\n\t.ProseMirror .telepointer {\n\t\tposition: relative;\n\t\ttransition: opacity 200ms;\n\n\t\t&.telepointer-selection:not(.inlineNodeView) {\n\t\t\tline-height: 1.2;\n\t\t\tpointer-events: none;\n\t\t\tuser-select: none;\n\t\t}\n\n\t\t&.telepointer-selection-badge {\n\t\t\t.telepointer-initial,\n\t\t\t.telepointer-fullname {\n\t\t\t\tposition: absolute;\n\t\t\t\tdisplay: block;\n\t\t\t\tuser-select: none;\n\t\t\t\twhite-space: pre;\n\t\t\t\ttop: -14px;\n\t\t\t\tleft: 0px;\n\t\t\t\tfont: ", ";\n\t\t\t\tpadding-left: ", ";\n\t\t\t\tpadding-right: ", ";\n\t\t\t\tborder-radius: 0 2px 2px 0;\n\t\t\t}\n\n\t\t\t.telepointer-initial {\n\t\t\t\topacity: 1;\n\t\t\t\ttransition: opacity 0.15s ease-out;\n\t\t\t}\n\n\t\t\t.telepointer-fullname {\n\t\t\t\topacity: 0;\n\t\t\t\ttransform: scaleX(0);\n\t\t\t\ttransform-origin: top left;\n\t\t\t\ttransition:\n\t\t\t\t\ttransform 0.15s ease-out,\n\t\t\t\t\topacity 0.15s ease-out;\n\t\t\t}\n\t\t}\n\n\t\t&.", " {\n\t\t\t.telepointer-initial {\n\t\t\t\tanimation: pulseOut 2.5s ease-in-out;\n\t\t\t}\n\n\t\t\t.telepointer-fullname {\n\t\t\t\tanimation: pulseIn 2.5s ease-in-out;\n\t\t\t}\n\t\t}\n\n\t\t&.", " {\n\t\t\t.telepointer-initial {\n\t\t\t\tanimation: pulseOutDuringTr ", "ms ease-in-out;\n\t\t\t}\n\n\t\t\t.telepointer-fullname {\n\t\t\t\tanimation: pulseInDuringTr ", "ms ease-in-out;\n\t\t\t}\n\t\t}\n\n\t\t&:hover {\n\t\t\t.telepointer-initial {\n\t\t\t\topacity: 0;\n\t\t\t\ttransition-delay: 150ms;\n\t\t\t}\n\n\t\t\t.telepointer-fullname {\n\t\t\t\ttransform: scaleX(1);\n\t\t\t\topacity: 1;\n\t\t\t\tz-index: 1;\n\t\t\t}\n\t\t}\n\n\t\t&.", " {\n\t\t\topacity: 0.2;\n\t\t}\n\n\t\t", ";\n\t}\n"])), "var(--ds-font-body-small, normal 400 12px/16px \"Atlassian Sans\", ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)", "var(--ds-space-050, 4px)", "var(--ds-space-050, 4px)", TELEPOINTER_PULSE_CLASS, TELEPOINTER_PULSE_DURING_TR_CLASS, TELEPOINTER_PULSE_DURING_TR_DURATION_MS, TELEPOINTER_PULSE_DURING_TR_DURATION_MS, TELEPOINTER_DIM_CLASS, participantColors.map(function (participantColor, index) {
162
162
  return telepointerColorStyle(participantColor.backgroundColor, participantColor.textColor, index);
163
163
  }));
164
164
  var tintKey = 'collab:isDirtyTransaction';
@@ -50,7 +50,7 @@ export default function EmptyState(_ref) {
50
50
  })))));
51
51
  }
52
52
  var emptyStateHeading = css({
53
- font: "var(--ds-font-heading-medium, normal 500 20px/24px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
53
+ font: "var(--ds-font-heading-medium, normal 653 20px/24px \"Atlassian Sans\", ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
54
54
  color: "var(--ds-text, rgb(23, 43, 77))",
55
55
  marginTop: "var(--ds-space-300, 24px)"
56
56
  });
@@ -19,6 +19,7 @@ import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
19
19
  import { useSharedPluginStateWithSelector } from '../../../hooks';
20
20
  import { overflowShadow } from '../../../ui';
21
21
  import { calculateBreakoutStyles } from '../../../utils';
22
+ import { shouldExtensionBreakout } from '../../utils/should-extension-breakout';
22
23
  import { LegacyContentHeader } from '../LegacyContentHeader';
23
24
  import ExtensionLozenge from '../Lozenge';
24
25
  import { overlay } from '../styles';
@@ -75,13 +76,16 @@ function ExtensionWithPluginState(props) {
75
76
  var pos = typeof getPos === 'function' ? getPos() : undefined;
76
77
  return typeof pos !== 'undefined' && !isNaN(pos) && view.state.doc.resolve(pos).depth === 0;
77
78
  }, [view, getPos]);
78
- var shouldBreakout =
79
- // Extension should breakout when the layout is set to 'full-width' or 'wide'.
80
- ['full-width', 'wide'].includes(node.attrs.layout) &&
81
- // Extension breakout state should only be respected for top level nodes.
82
- isTopLevelNode &&
83
- // Extension breakout state should not be respected when the editor appearance is full-width mode
84
- editorAppearance !== 'full-width';
79
+ var layout = node.attrs.layout;
80
+ var legacyShouldBreakout = ['full-width', 'wide'].includes(layout) && isTopLevelNode && editorAppearance !== 'full-width';
81
+ var tinymceFullWidthModeEnabled = expValEquals('confluence_max_width_content_appearance', 'isEnabled', true);
82
+ var breakoutExtensionFixEnabled = expValEquals('confluence_max_width_breakout_extension_fix', 'isEnabled', true);
83
+ var shouldUseBreakoutFix = tinymceFullWidthModeEnabled && breakoutExtensionFixEnabled;
84
+ var shouldBreakout = shouldUseBreakoutFix ? shouldExtensionBreakout({
85
+ layout: layout,
86
+ isTopLevelNode: isTopLevelNode,
87
+ editorAppearance: editorAppearance
88
+ }) : legacyShouldBreakout;
85
89
 
86
90
  // We don't want to show border for non-empty 1p bodied extensions in live pages
87
91
  var show1PBodiedExtensionBorder = showUpdatedLivePages1PBodiedExtensionUI ? isEmptyBodiedMacro(node) : true;
@@ -34,7 +34,7 @@ var buttonStyles = css({
34
34
  borderRadius: "var(--ds-radius-small, 4px)",
35
35
  paddingLeft: "var(--ds-space-150, 12px)",
36
36
  paddingRight: "var(--ds-space-150, 12px)",
37
- font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
37
+ font: "var(--ds-font-body, normal 400 14px/20px \"Atlassian Sans\", ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
38
38
  '&:hover': {
39
39
  backgroundColor: "var(--ds-background-input-hovered, #F8F8F8)"
40
40
  },
@@ -79,7 +79,7 @@ var labelStyles = css({
79
79
  '&.remove-nested-left-margin': {
80
80
  marginLeft: 0
81
81
  },
82
- font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
82
+ font: "var(--ds-font-body, normal 400 14px/20px \"Atlassian Sans\", ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
83
83
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
84
84
  '&.with-bodied-macro-live-page-styles': {
85
85
  backgroundColor: "var(--ds-background-input, #FFFFFF)",
@@ -21,6 +21,7 @@ import { useSharedPluginStateWithSelector } from '../../hooks';
21
21
  import { removeMarginsAndBorder, sharedMultiBodiedExtensionStyles } from '../../ui/MultiBodiedExtension';
22
22
  import { calculateBreakoutStyles, getExtensionLozengeData } from '../../utils';
23
23
  import ExtensionLozenge from '../Extension/Lozenge';
24
+ import { shouldExtensionBreakout } from '../utils/should-extension-breakout';
24
25
  import { useMultiBodiedExtensionActions } from './action-api';
25
26
  import { mbeExtensionWrapperCSSStyles, overlayStyles } from './styles';
26
27
  var getContainerCssExtendedStyles = function getContainerCssExtendedStyles(activeChildIndex, showMacroInteractionDesignUpdates) {
@@ -145,11 +146,16 @@ var MultiBodiedExtensionWithWidth = function MultiBodiedExtensionWithWidth(_ref2
145
146
  var extensionHandlerResult = React.useMemo(function () {
146
147
  return tryExtensionHandler(actions);
147
148
  }, [tryExtensionHandler, actions]);
148
- var shouldBreakout =
149
- // Extension should breakout when the layout is set to 'full-width' or 'wide'.
150
- ['full-width', 'wide'].includes(node.attrs.layout) &&
151
- // Extension breakout state should not be respected when the editor appearance is full-width mode
152
- editorAppearance !== 'full-width';
149
+ var layout = node.attrs.layout;
150
+ var legacyShouldBreakout = ['full-width', 'wide'].includes(layout) && editorAppearance !== 'full-width';
151
+ var tinymceFullWidthModeEnabled = expValEquals('confluence_max_width_content_appearance', 'isEnabled', true);
152
+ var breakoutExtensionFixEnabled = expValEquals('confluence_max_width_breakout_extension_fix', 'isEnabled', true);
153
+ var shouldUseBreakoutFix = tinymceFullWidthModeEnabled && breakoutExtensionFixEnabled;
154
+ var shouldBreakout = shouldUseBreakoutFix ? shouldExtensionBreakout({
155
+ layout: layout,
156
+ editorAppearance: editorAppearance,
157
+ isTopLevelNode: true
158
+ }) : legacyShouldBreakout;
153
159
  var mbeWrapperStyles = {};
154
160
  if (shouldBreakout) {
155
161
  var _calculateBreakoutSty = calculateBreakoutStyles({
@@ -0,0 +1,26 @@
1
+ var breakoutLayouts = new Set(['full-width', 'wide']);
2
+ var shouldRespectBreakoutForAppearance = function shouldRespectBreakoutForAppearance(appearance) {
3
+ if (!appearance) {
4
+ return true;
5
+ }
6
+ if (appearance === 'full-width') {
7
+ return false;
8
+ }
9
+ if (appearance === 'max') {
10
+ return false;
11
+ }
12
+ return true;
13
+ };
14
+ export var shouldExtensionBreakout = function shouldExtensionBreakout(_ref) {
15
+ var layout = _ref.layout,
16
+ _ref$isTopLevelNode = _ref.isTopLevelNode,
17
+ isTopLevelNode = _ref$isTopLevelNode === void 0 ? true : _ref$isTopLevelNode,
18
+ editorAppearance = _ref.editorAppearance;
19
+ if (!layout || !breakoutLayouts.has(layout)) {
20
+ return false;
21
+ }
22
+ if (!isTopLevelNode) {
23
+ return false;
24
+ }
25
+ return shouldRespectBreakoutForAppearance(editorAppearance);
26
+ };
@@ -75,7 +75,7 @@ var textLabelMargin = css({
75
75
  var inputLabel = css({
76
76
  color: "var(--ds-text-subtlest, #6B6E76)",
77
77
  paddingBottom: "var(--ds-space-050, 4px)",
78
- font: "var(--ds-font-body-small, normal 400 11px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
78
+ font: "var(--ds-font-body-small, normal 400 12px/16px \"Atlassian Sans\", ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
79
79
  fontWeight: "var(--ds-font-weight-medium, 500)"
80
80
  });
81
81
  var inputWrapperPosition = css({
@@ -24,5 +24,15 @@ export var mentionMessages = defineMessages({
24
24
  id: 'fabric.editor.unknown.label',
25
25
  defaultMessage: 'Unknown',
26
26
  description: 'Label to indicate unknown mention node'
27
+ },
28
+ inviteTeammateInvalidEmail: {
29
+ id: 'fabric.editor.inviteItem.invalidEmail',
30
+ defaultMessage: 'Enter a valid email address',
31
+ description: 'By line text for invite teammate option shown in mentions when the email is invalid. This is a placeholder for the actual error message that will be shown to the user.'
32
+ },
33
+ sendInvite: {
34
+ id: 'fabric.editor.inviteItem.sendInvite',
35
+ defaultMessage: 'Send request to invite teammate',
36
+ description: 'By line text for send request to invite teammate option shown in mentions.'
27
37
  }
28
38
  });
@@ -244,5 +244,10 @@ export var syncBlockMessages = defineMessages({
244
244
  id: 'fabric.editor.syncedLocationDropdownSourceLozenge',
245
245
  defaultMessage: 'Source',
246
246
  description: 'Lozenge label shown in the synced location dropdown option when the sync block is source'
247
+ },
248
+ syncedLocationDropdownRequestAccess: {
249
+ id: 'fabric.editor.syncedLocationDropdownRequestAccess',
250
+ defaultMessage: 'Request access',
251
+ description: 'Label shown in the synced location dropdown option when the sync block is not accessible to the user'
247
252
  }
248
253
  });
@@ -10,7 +10,7 @@ import { isFedRamp } from './environment';
10
10
  import { normaliseSentryBreadcrumbs, SERIALIZABLE_ATTRIBUTES } from './normalise-sentry-breadcrumbs';
11
11
  var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
12
12
  var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
13
- var packageVersion = "0.0.0-development";
13
+ var packageVersion = "111.8.4";
14
14
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
15
15
  // Remove URL as it has UGC
16
16
  // Ignored via go/ees007
@@ -1,5 +1,7 @@
1
1
  // eslint-disable-next-line @atlaskit/platform/prefer-crypto-random-uuid -- Use crypto.randomUUID instead
2
2
  import uuid from 'uuid/v4';
3
+
4
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3
5
  export var generateUniqueNodeKey = function generateUniqueNodeKey() {
4
6
  // eslint-disable-next-line @atlaskit/platform/prefer-crypto-random-uuid -- Use crypto.randomUUID instead
5
7
  return uuid();
@@ -153,7 +153,7 @@ export var headingsSharedStyles = function headingsSharedStyles(_typographyTheme
153
153
  fontStyle: 'inherit',
154
154
  lineHeight: 16 / 11,
155
155
  color: "var(--ds-text-subtlest, #6B6E76)",
156
- fontWeight: "var(--ds-font-weight-bold, 700)",
156
+ fontWeight: "var(--ds-font-weight-bold, 653)",
157
157
  marginTop: '1.455em',
158
158
  textTransform: 'none'
159
159
  }
@@ -21,7 +21,7 @@ import withAnalyticsEvents from '@atlaskit/analytics-next/withAnalyticsEvents';
21
21
  import { fg } from '@atlaskit/platform-feature-flags';
22
22
  import Layer from '../Layer';
23
23
  var packageName = "@atlaskit/editor-common";
24
- var packageVersion = "0.0.0-development";
24
+ var packageVersion = "111.8.4";
25
25
  var halfFocusRing = 1;
26
26
  var dropOffset = '0, 8';
27
27
  var fadeIn = keyframes({
@@ -1,7 +1,9 @@
1
1
  export function getUnsupportedContent(
2
2
  // Ignored via go/ees005
3
3
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
4
- message, prefix, node, intl) {
4
+ message, prefix, node, intl
5
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
6
+ ) {
5
7
  var defaultLocale = 'en';
6
8
  var canTranslateToLocale = true;
7
9
  var locale = intl ? intl.locale : defaultLocale;
@@ -98,6 +98,7 @@ export var absoluteBreakoutWidth = function absoluteBreakoutWidth(layout, contai
98
98
  };
99
99
  export { breakoutConsts };
100
100
  export var calcWideWidth = breakoutConsts.calcWideWidth(breakoutConsts);
101
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
101
102
  export var calcBreakoutWidth = breakoutConsts.calcBreakoutWidth(breakoutConsts);
102
103
  export var calcBreakoutWithCustomWidth = breakoutConsts.calcBreakoutWithCustomWidth(breakoutConsts);
103
104
  export function calculateBreakoutStyles(_ref) {
@@ -35,12 +35,15 @@ type AIUnifiedAgentAttributes = {
35
35
  };
36
36
  type AIInteractionInitiatedAEP = TrackAEP<ACTION.INITIATED, ACTION_SUBJECT.AI_INTERACTION, ACTION_SUBJECT_ID.EDITOR_PLUGIN_AI, AIUnifiedCommonAttributes & AIUnifiedAgentAttributes, undefined>;
37
37
  type AIInteractionDismissedAEP = TrackAEP<ACTION.DISMISSED, ACTION_SUBJECT.AI_INTERACTION, ACTION_SUBJECT_ID.EDITOR_PLUGIN_AI, AIUnifiedCommonAttributes & AIUnifiedAgentAttributes, undefined>;
38
+ type AIInteractionDiscardedAEP = TrackAEP<ACTION.DISCARDED, ACTION_SUBJECT.AI_RESULT, ACTION_SUBJECT_ID.EDITOR_PLUGIN_AI, AIUnifiedCommonAttributes & AIUnifiedAgentAttributes, undefined>;
38
39
  type AIResultViewedAEP = TrackAEP<ACTION.VIEWED, ACTION_SUBJECT.AI_RESULT, ACTION_SUBJECT_ID.EDITOR_PLUGIN_AI, AIUnifiedCommonAttributes & AIUnifiedAgentAttributes, undefined>;
39
40
  type AIResultActionedAEP = TrackAEP<ACTION.ACTIONED, ACTION_SUBJECT.AI_RESULT, ACTION_SUBJECT_ID.EDITOR_PLUGIN_AI, AIUnifiedCommonAttributes & AIUnifiedAgentAttributes & {
40
41
  aiActionedType?: string;
42
+ aiGroupId: string | undefined;
41
43
  aiResultAction: string;
42
44
  promptType?: string;
43
45
  refinementCount?: number;
46
+ wasRedone?: Boolean;
44
47
  }, undefined>;
45
48
  type AIResultErrorAEP = TrackAEP<ACTION.ERROR, ACTION_SUBJECT.AI_RESULT, ACTION_SUBJECT_ID.EDITOR_PLUGIN_AI, AIUnifiedCommonAttributes & AIUnifiedAgentAttributes & {
46
49
  aiErrorCode?: number;
@@ -49,5 +52,5 @@ type AIResultErrorAEP = TrackAEP<ACTION.ERROR, ACTION_SUBJECT.AI_RESULT, ACTION_
49
52
  type AIFeedbackSubmittedAEP = TrackAEP<ACTION.SUBMITTED, ACTION_SUBJECT.AI_FEEDBACK, ACTION_SUBJECT_ID.EDITOR_PLUGIN_AI, AIUnifiedCommonAttributes & AIUnifiedAgentAttributes & {
50
53
  aiFeedbackResult: 'up' | 'down';
51
54
  }, undefined>;
52
- export type AIUnifiedEventPayload = AIInteractionInitiatedAEP | AIResultViewedAEP | AIResultErrorAEP | AIInteractionDismissedAEP | AIResultActionedAEP | AIFeedbackSubmittedAEP;
55
+ export type AIUnifiedEventPayload = AIInteractionInitiatedAEP | AIResultViewedAEP | AIResultErrorAEP | AIInteractionDismissedAEP | AIResultActionedAEP | AIFeedbackSubmittedAEP | AIInteractionDiscardedAEP;
53
56
  export {};
@@ -36,6 +36,7 @@ export declare enum ACTION {
36
36
  DECREMENTED = "decremented",
37
37
  DELETED = "deleted",
38
38
  DISCARDED_INVALID_STEPS_FROM_TRANSACTION = "discardedInvalidStepsFromTransaction",
39
+ DISCARDED = "discarded",
39
40
  /** used in @atlassian/editor-referentiality */
40
41
  DISCONNECTED_SOURCE = "disconnectedSource",
41
42
  /** used in @atlassian/editor-referentiality */
@@ -0,0 +1,8 @@
1
+ import type { EditorAppearance } from '../../types';
2
+ interface ShouldExtensionBreakoutArgs {
3
+ editorAppearance?: EditorAppearance;
4
+ isTopLevelNode?: boolean;
5
+ layout?: string;
6
+ }
7
+ export declare const shouldExtensionBreakout: ({ layout, isTopLevelNode, editorAppearance, }: ShouldExtensionBreakoutArgs) => boolean;
8
+ export {};
@@ -24,4 +24,14 @@ export declare const mentionMessages: {
24
24
  defaultMessage: string;
25
25
  description: string;
26
26
  };
27
+ inviteTeammateInvalidEmail: {
28
+ id: string;
29
+ defaultMessage: string;
30
+ description: string;
31
+ };
32
+ sendInvite: {
33
+ id: string;
34
+ defaultMessage: string;
35
+ description: string;
36
+ };
27
37
  };
@@ -244,4 +244,9 @@ export declare const syncBlockMessages: {
244
244
  defaultMessage: string;
245
245
  description: string;
246
246
  };
247
+ syncedLocationDropdownRequestAccess: {
248
+ id: string;
249
+ defaultMessage: string;
250
+ description: string;
251
+ };
247
252
  };
@@ -3,7 +3,7 @@
3
3
  * Handles promise racing and discards rejected promises safely.
4
4
  */
5
5
  declare const _default: <P>(providers: (P | Promise<P>)[]) => {
6
- invokeSingle: <T>(methodName: keyof P, args?: any[]) => Promise<T>;
7
6
  invokeList: <T>(methodName: keyof P, args?: any[]) => Promise<T[]>;
7
+ invokeSingle: <T>(methodName: keyof P, args?: any[]) => Promise<T>;
8
8
  };
9
9
  export default _default;
@@ -43,23 +43,23 @@ export declare function calculateBreakoutStyles({ mode, widthStateLineLength, wi
43
43
  */
44
44
  widthStateWidth?: number;
45
45
  }): {
46
- type: "line-length-unknown";
47
- width: any;
48
- minWidth: number;
49
46
  display: string;
50
47
  justifyContent: string;
51
- transform: string;
52
- transition: string;
53
48
  marginLeft?: undefined;
54
- } | {
55
- type: "line-length-known";
56
- width: any;
57
49
  minWidth: number;
58
- transition: string;
59
50
  transform: string;
60
- marginLeft: string;
51
+ transition: string;
52
+ type: 'line-length-unknown';
53
+ width: any;
54
+ } | {
61
55
  display?: undefined;
62
56
  justifyContent?: undefined;
57
+ marginLeft: string;
58
+ minWidth: number;
59
+ transform: string;
60
+ transition: string;
61
+ type: 'line-length-known';
62
+ width: any;
63
63
  };
64
64
  export declare function calcBreakoutWidthPx(mode: BreakoutMarkAttrs['mode'], widthStateWidth?: number, padding?: number): number;
65
65
  export declare const getNextBreakoutMode: (currentMode?: BreakoutMode) => Exclude<BreakoutMode, "max">;
@@ -35,12 +35,15 @@ type AIUnifiedAgentAttributes = {
35
35
  };
36
36
  type AIInteractionInitiatedAEP = TrackAEP<ACTION.INITIATED, ACTION_SUBJECT.AI_INTERACTION, ACTION_SUBJECT_ID.EDITOR_PLUGIN_AI, AIUnifiedCommonAttributes & AIUnifiedAgentAttributes, undefined>;
37
37
  type AIInteractionDismissedAEP = TrackAEP<ACTION.DISMISSED, ACTION_SUBJECT.AI_INTERACTION, ACTION_SUBJECT_ID.EDITOR_PLUGIN_AI, AIUnifiedCommonAttributes & AIUnifiedAgentAttributes, undefined>;
38
+ type AIInteractionDiscardedAEP = TrackAEP<ACTION.DISCARDED, ACTION_SUBJECT.AI_RESULT, ACTION_SUBJECT_ID.EDITOR_PLUGIN_AI, AIUnifiedCommonAttributes & AIUnifiedAgentAttributes, undefined>;
38
39
  type AIResultViewedAEP = TrackAEP<ACTION.VIEWED, ACTION_SUBJECT.AI_RESULT, ACTION_SUBJECT_ID.EDITOR_PLUGIN_AI, AIUnifiedCommonAttributes & AIUnifiedAgentAttributes, undefined>;
39
40
  type AIResultActionedAEP = TrackAEP<ACTION.ACTIONED, ACTION_SUBJECT.AI_RESULT, ACTION_SUBJECT_ID.EDITOR_PLUGIN_AI, AIUnifiedCommonAttributes & AIUnifiedAgentAttributes & {
40
41
  aiActionedType?: string;
42
+ aiGroupId: string | undefined;
41
43
  aiResultAction: string;
42
44
  promptType?: string;
43
45
  refinementCount?: number;
46
+ wasRedone?: Boolean;
44
47
  }, undefined>;
45
48
  type AIResultErrorAEP = TrackAEP<ACTION.ERROR, ACTION_SUBJECT.AI_RESULT, ACTION_SUBJECT_ID.EDITOR_PLUGIN_AI, AIUnifiedCommonAttributes & AIUnifiedAgentAttributes & {
46
49
  aiErrorCode?: number;
@@ -49,5 +52,5 @@ type AIResultErrorAEP = TrackAEP<ACTION.ERROR, ACTION_SUBJECT.AI_RESULT, ACTION_
49
52
  type AIFeedbackSubmittedAEP = TrackAEP<ACTION.SUBMITTED, ACTION_SUBJECT.AI_FEEDBACK, ACTION_SUBJECT_ID.EDITOR_PLUGIN_AI, AIUnifiedCommonAttributes & AIUnifiedAgentAttributes & {
50
53
  aiFeedbackResult: 'up' | 'down';
51
54
  }, undefined>;
52
- export type AIUnifiedEventPayload = AIInteractionInitiatedAEP | AIResultViewedAEP | AIResultErrorAEP | AIInteractionDismissedAEP | AIResultActionedAEP | AIFeedbackSubmittedAEP;
55
+ export type AIUnifiedEventPayload = AIInteractionInitiatedAEP | AIResultViewedAEP | AIResultErrorAEP | AIInteractionDismissedAEP | AIResultActionedAEP | AIFeedbackSubmittedAEP | AIInteractionDiscardedAEP;
53
56
  export {};
@@ -36,6 +36,7 @@ export declare enum ACTION {
36
36
  DECREMENTED = "decremented",
37
37
  DELETED = "deleted",
38
38
  DISCARDED_INVALID_STEPS_FROM_TRANSACTION = "discardedInvalidStepsFromTransaction",
39
+ DISCARDED = "discarded",
39
40
  /** used in @atlassian/editor-referentiality */
40
41
  DISCONNECTED_SOURCE = "disconnectedSource",
41
42
  /** used in @atlassian/editor-referentiality */
@@ -0,0 +1,8 @@
1
+ import type { EditorAppearance } from '../../types';
2
+ interface ShouldExtensionBreakoutArgs {
3
+ editorAppearance?: EditorAppearance;
4
+ isTopLevelNode?: boolean;
5
+ layout?: string;
6
+ }
7
+ export declare const shouldExtensionBreakout: ({ layout, isTopLevelNode, editorAppearance, }: ShouldExtensionBreakoutArgs) => boolean;
8
+ export {};
@@ -24,4 +24,14 @@ export declare const mentionMessages: {
24
24
  defaultMessage: string;
25
25
  description: string;
26
26
  };
27
+ inviteTeammateInvalidEmail: {
28
+ id: string;
29
+ defaultMessage: string;
30
+ description: string;
31
+ };
32
+ sendInvite: {
33
+ id: string;
34
+ defaultMessage: string;
35
+ description: string;
36
+ };
27
37
  };
@@ -244,4 +244,9 @@ export declare const syncBlockMessages: {
244
244
  defaultMessage: string;
245
245
  description: string;
246
246
  };
247
+ syncedLocationDropdownRequestAccess: {
248
+ id: string;
249
+ defaultMessage: string;
250
+ description: string;
251
+ };
247
252
  };
@@ -3,7 +3,7 @@
3
3
  * Handles promise racing and discards rejected promises safely.
4
4
  */
5
5
  declare const _default: <P>(providers: (P | Promise<P>)[]) => {
6
- invokeSingle: <T>(methodName: keyof P, args?: any[]) => Promise<T>;
7
6
  invokeList: <T>(methodName: keyof P, args?: any[]) => Promise<T[]>;
7
+ invokeSingle: <T>(methodName: keyof P, args?: any[]) => Promise<T>;
8
8
  };
9
9
  export default _default;
@@ -43,23 +43,23 @@ export declare function calculateBreakoutStyles({ mode, widthStateLineLength, wi
43
43
  */
44
44
  widthStateWidth?: number;
45
45
  }): {
46
- type: "line-length-unknown";
47
- width: any;
48
- minWidth: number;
49
46
  display: string;
50
47
  justifyContent: string;
51
- transform: string;
52
- transition: string;
53
48
  marginLeft?: undefined;
54
- } | {
55
- type: "line-length-known";
56
- width: any;
57
49
  minWidth: number;
58
- transition: string;
59
50
  transform: string;
60
- marginLeft: string;
51
+ transition: string;
52
+ type: 'line-length-unknown';
53
+ width: any;
54
+ } | {
61
55
  display?: undefined;
62
56
  justifyContent?: undefined;
57
+ marginLeft: string;
58
+ minWidth: number;
59
+ transform: string;
60
+ transition: string;
61
+ type: 'line-length-known';
62
+ width: any;
63
63
  };
64
64
  export declare function calcBreakoutWidthPx(mode: BreakoutMarkAttrs['mode'], widthStateWidth?: number, padding?: number): number;
65
65
  export declare const getNextBreakoutMode: (currentMode?: BreakoutMode) => Exclude<BreakoutMode, "max">;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-common",
3
- "version": "111.8.3",
3
+ "version": "111.8.5",
4
4
  "description": "A package that contains common classes and components for editor and renderer",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -48,7 +48,7 @@
48
48
  "@atlaskit/editor-shared-styles": "^3.10.0",
49
49
  "@atlaskit/editor-tables": "^2.9.0",
50
50
  "@atlaskit/editor-toolbar": "^0.19.0",
51
- "@atlaskit/editor-toolbar-model": "^0.2.0",
51
+ "@atlaskit/editor-toolbar-model": "^0.3.0",
52
52
  "@atlaskit/emoji": "^69.10.0",
53
53
  "@atlaskit/icon": "^29.4.0",
54
54
  "@atlaskit/icon-object": "^7.4.0",
@@ -81,8 +81,8 @@
81
81
  "@atlaskit/task-decision": "^19.2.0",
82
82
  "@atlaskit/textfield": "^8.2.0",
83
83
  "@atlaskit/theme": "^21.0.0",
84
- "@atlaskit/tmp-editor-statsig": "^16.23.0",
85
- "@atlaskit/tokens": "^9.1.0",
84
+ "@atlaskit/tmp-editor-statsig": "^16.24.0",
85
+ "@atlaskit/tokens": "^10.0.0",
86
86
  "@atlaskit/tooltip": "^20.14.0",
87
87
  "@atlaskit/width-detector": "^5.0.0",
88
88
  "@babel/runtime": "^7.0.0",
@@ -1,23 +0,0 @@
1
- {
2
- "extends": "../tsconfig",
3
- "compilerOptions": {
4
- "declaration": true,
5
- "target": "es5",
6
- "paths": {}
7
- },
8
- "include": [
9
- "../src/**/*.ts",
10
- "../src/**/*.tsx"
11
- ],
12
- "exclude": [
13
- "../src/**/__tests__/*",
14
- "../src/**/*.test.*",
15
- "../src/**/test.*",
16
- "../src/**/examples.*",
17
- "../src/**/examples/*",
18
- "../src/**/examples/**/*",
19
- "../src/**/*.stories.*",
20
- "../src/**/stories/*",
21
- "../src/**/stories/**/*"
22
- ]
23
- }