@atlaskit/editor-common 74.13.0 → 74.14.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 (76) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/cjs/card/LinkToolbarButtonGroup.js +63 -0
  3. package/dist/cjs/card/index.js +18 -1
  4. package/dist/cjs/card/link-toolbar-button-group-options.js +52 -0
  5. package/dist/cjs/card/types.js +5 -0
  6. package/dist/cjs/card/ui/assets/card.js +30 -0
  7. package/dist/cjs/card/ui/assets/embed.js +30 -0
  8. package/dist/cjs/card/ui/assets/inline.js +30 -0
  9. package/dist/cjs/card/ui/assets/url.js +32 -0
  10. package/dist/cjs/messages/card.js +90 -0
  11. package/dist/cjs/messages/index.js +7 -0
  12. package/dist/cjs/monitoring/error.js +1 -1
  13. package/dist/cjs/styles/index.js +39 -1
  14. package/dist/cjs/styles/shared/embedCard.js +16 -0
  15. package/dist/cjs/styles/shared/smartCard.js +19 -0
  16. package/dist/cjs/ui/DropList/index.js +1 -1
  17. package/dist/cjs/version.json +1 -1
  18. package/dist/es2019/card/LinkToolbarButtonGroup.js +61 -0
  19. package/dist/es2019/card/index.js +4 -1
  20. package/dist/es2019/card/link-toolbar-button-group-options.js +45 -0
  21. package/dist/es2019/card/types.js +1 -0
  22. package/dist/es2019/card/ui/assets/card.js +22 -0
  23. package/dist/es2019/card/ui/assets/embed.js +22 -0
  24. package/dist/es2019/card/ui/assets/inline.js +22 -0
  25. package/dist/es2019/card/ui/assets/url.js +24 -0
  26. package/dist/es2019/messages/card.js +83 -0
  27. package/dist/es2019/messages/index.js +1 -0
  28. package/dist/es2019/monitoring/error.js +1 -1
  29. package/dist/es2019/styles/index.js +3 -1
  30. package/dist/es2019/styles/shared/embedCard.js +27 -0
  31. package/dist/es2019/styles/shared/smartCard.js +131 -0
  32. package/dist/es2019/ui/DropList/index.js +1 -1
  33. package/dist/es2019/version.json +1 -1
  34. package/dist/esm/card/LinkToolbarButtonGroup.js +56 -0
  35. package/dist/esm/card/index.js +4 -1
  36. package/dist/esm/card/link-toolbar-button-group-options.js +45 -0
  37. package/dist/esm/card/types.js +1 -0
  38. package/dist/esm/card/ui/assets/card.js +22 -0
  39. package/dist/esm/card/ui/assets/embed.js +22 -0
  40. package/dist/esm/card/ui/assets/inline.js +22 -0
  41. package/dist/esm/card/ui/assets/url.js +24 -0
  42. package/dist/esm/messages/card.js +83 -0
  43. package/dist/esm/messages/index.js +1 -0
  44. package/dist/esm/monitoring/error.js +1 -1
  45. package/dist/esm/styles/index.js +3 -1
  46. package/dist/esm/styles/shared/embedCard.js +6 -0
  47. package/dist/esm/styles/shared/smartCard.js +9 -0
  48. package/dist/esm/ui/DropList/index.js +1 -1
  49. package/dist/esm/version.json +1 -1
  50. package/dist/types/card/LinkToolbarButtonGroup.d.ts +16 -0
  51. package/dist/types/card/index.d.ts +4 -0
  52. package/dist/types/card/link-toolbar-button-group-options.d.ts +5 -0
  53. package/dist/types/card/types.d.ts +27 -0
  54. package/dist/types/card/ui/assets/card.d.ts +3 -0
  55. package/dist/types/card/ui/assets/embed.d.ts +3 -0
  56. package/dist/types/card/ui/assets/inline.d.ts +3 -0
  57. package/dist/types/card/ui/assets/url.d.ts +3 -0
  58. package/dist/types/messages/card.d.ts +82 -0
  59. package/dist/types/messages/index.d.ts +1 -0
  60. package/dist/types/styles/index.d.ts +2 -0
  61. package/dist/types/styles/shared/embedCard.d.ts +3 -0
  62. package/dist/types/styles/shared/smartCard.d.ts +3 -0
  63. package/dist/types-ts4.5/card/LinkToolbarButtonGroup.d.ts +16 -0
  64. package/dist/types-ts4.5/card/index.d.ts +4 -0
  65. package/dist/types-ts4.5/card/link-toolbar-button-group-options.d.ts +5 -0
  66. package/dist/types-ts4.5/card/types.d.ts +27 -0
  67. package/dist/types-ts4.5/card/ui/assets/card.d.ts +3 -0
  68. package/dist/types-ts4.5/card/ui/assets/embed.d.ts +3 -0
  69. package/dist/types-ts4.5/card/ui/assets/inline.d.ts +3 -0
  70. package/dist/types-ts4.5/card/ui/assets/url.d.ts +3 -0
  71. package/dist/types-ts4.5/messages/card.d.ts +82 -0
  72. package/dist/types-ts4.5/messages/index.d.ts +1 -0
  73. package/dist/types-ts4.5/styles/index.d.ts +2 -0
  74. package/dist/types-ts4.5/styles/shared/embedCard.d.ts +3 -0
  75. package/dist/types-ts4.5/styles/shared/smartCard.d.ts +3 -0
  76. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @atlaskit/editor-common
2
2
 
3
+ ## 74.14.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [`9fc1422dec1`](https://bitbucket.org/atlassian/atlassian-frontend/commits/9fc1422dec1) - Make `hyperlink` plugin an explicit dependency of `card` plugin. Move card styles and types into editor-common.
8
+
3
9
  ## 74.13.0
4
10
 
5
11
  ### Minor Changes
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.LinkToolbarButtonGroup = void 0;
8
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
9
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _react2 = require("@emotion/react");
12
+ var _button = require("@atlaskit/button");
13
+ var _ui = require("../ui");
14
+ var _excluded = ["disabled"];
15
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4;
16
+ /** @jsx jsx */
17
+ /**
18
+ * Applying `pointer-events: none;` when disabled allows the Tooltip to be displayed
19
+ */
20
+ var buttonStyle = (0, _react2.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n pointer-events: auto;\n"])));
21
+ var buttonStyleNoneEvent = (0, _react2.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n pointer-events: none;\n"])));
22
+ var DisallowedWrapper = function DisallowedWrapper(_ref) {
23
+ var disabled = _ref.disabled,
24
+ props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
25
+ return (0, _react2.jsx)("div", props);
26
+ };
27
+
28
+ /**
29
+ * The button requires `pointer-events: none;` in order to fix the tooltip, hence
30
+ * leaving us without a disabled cursor, the following fixes this:
31
+ */
32
+ var defaultWrapperStyle = (0, _react2.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n cursor: pointer;\n"])));
33
+ var disallowedWrapperStyle = (0, _react2.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n cursor: not-allowed;\n"])));
34
+ var LinkToolbarButtonGroup = function LinkToolbarButtonGroup(_ref2) {
35
+ var options = _ref2.options;
36
+ return (0, _react2.jsx)(_button.ButtonGroup, null, options.map(function (_ref3) {
37
+ var onClick = _ref3.onClick,
38
+ selected = _ref3.selected,
39
+ disabled = _ref3.disabled,
40
+ testId = _ref3.testId,
41
+ tooltipContent = _ref3.tooltipContent,
42
+ title = _ref3.title,
43
+ Icon = _ref3.icon;
44
+ return (0, _react2.jsx)(DisallowedWrapper, {
45
+ css: disabled ? disallowedWrapperStyle : defaultWrapperStyle,
46
+ key: testId,
47
+ disabled: disabled
48
+ }, (0, _react2.jsx)(_ui.FloatingToolbarButton, {
49
+ css: disabled ? buttonStyleNoneEvent : buttonStyle,
50
+ title: title,
51
+ icon: (0, _react2.jsx)(Icon, {
52
+ size: "medium",
53
+ label: title
54
+ }),
55
+ selected: selected,
56
+ onClick: onClick,
57
+ testId: testId,
58
+ disabled: disabled,
59
+ tooltipContent: tooltipContent
60
+ }));
61
+ }));
62
+ };
63
+ exports.LinkToolbarButtonGroup = LinkToolbarButtonGroup;
@@ -4,6 +4,13 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
+ exports.DATASOURCE_INNER_CONTAINER_CLASSNAME = void 0;
8
+ Object.defineProperty(exports, "LinkToolbarButtonGroup", {
9
+ enumerable: true,
10
+ get: function get() {
11
+ return _LinkToolbarButtonGroup.LinkToolbarButtonGroup;
12
+ }
13
+ });
7
14
  Object.defineProperty(exports, "addLinkMetadata", {
8
15
  enumerable: true,
9
16
  get: function get() {
@@ -22,6 +29,12 @@ Object.defineProperty(exports, "commandWithMetadata", {
22
29
  return _utils.commandWithMetadata;
23
30
  }
24
31
  });
32
+ Object.defineProperty(exports, "getButtonGroupOption", {
33
+ enumerable: true,
34
+ get: function get() {
35
+ return _linkToolbarButtonGroupOptions.getButtonGroupOption;
36
+ }
37
+ });
25
38
  Object.defineProperty(exports, "getLinkMetadataFromTransaction", {
26
39
  enumerable: true,
27
40
  get: function get() {
@@ -29,4 +42,8 @@ Object.defineProperty(exports, "getLinkMetadataFromTransaction", {
29
42
  }
30
43
  });
31
44
  var _utils = require("./utils");
32
- var _MediaAndEmbedsToolbar = _interopRequireDefault(require("./MediaAndEmbedsToolbar"));
45
+ var _MediaAndEmbedsToolbar = _interopRequireDefault(require("./MediaAndEmbedsToolbar"));
46
+ var _LinkToolbarButtonGroup = require("./LinkToolbarButtonGroup");
47
+ var _linkToolbarButtonGroupOptions = require("./link-toolbar-button-group-options");
48
+ var DATASOURCE_INNER_CONTAINER_CLASSNAME = 'datasourceView-content-inner-wrap';
49
+ exports.DATASOURCE_INNER_CONTAINER_CLASSNAME = DATASOURCE_INNER_CONTAINER_CLASSNAME;
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getButtonGroupOption = void 0;
7
+ var _messages = require("../messages");
8
+ var _card = require("./ui/assets/card");
9
+ var _embed = require("./ui/assets/embed");
10
+ var _inline = require("./ui/assets/inline");
11
+ var _url = require("./ui/assets/url");
12
+ var appearancePropsMap = {
13
+ url: {
14
+ title: _messages.cardMessages.urlTitle,
15
+ icon: _url.IconUrl
16
+ },
17
+ inline: {
18
+ title: _messages.cardMessages.inlineTitle,
19
+ icon: _inline.IconInline
20
+ },
21
+ block: {
22
+ title: _messages.cardMessages.blockTitle,
23
+ icon: _card.IconCard
24
+ },
25
+ embed: {
26
+ title: _messages.cardMessages.embedTitle,
27
+ icon: _embed.IconEmbed
28
+ }
29
+ };
30
+ var getButtonGroupOption = function getButtonGroupOption(intl, dispatchCommand, _ref) {
31
+ var disabled = _ref.disabled,
32
+ _onClick = _ref.onClick,
33
+ selected = _ref.selected,
34
+ appearance = _ref.appearance,
35
+ testId = _ref.testId,
36
+ tooltip = _ref.tooltip;
37
+ var _appearancePropsMap = appearancePropsMap[appearance !== null && appearance !== void 0 ? appearance : 'url'],
38
+ title = _appearancePropsMap.title,
39
+ icon = _appearancePropsMap.icon;
40
+ return {
41
+ title: intl.formatMessage(title),
42
+ icon: icon,
43
+ onClick: function onClick() {
44
+ return dispatchCommand(_onClick);
45
+ },
46
+ disabled: Boolean(disabled),
47
+ tooltipContent: tooltip || null,
48
+ testId: testId,
49
+ selected: selected
50
+ };
51
+ };
52
+ exports.getButtonGroupOption = getButtonGroupOption;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.IconCard = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _icon = _interopRequireDefault(require("@atlaskit/icon"));
11
+ var IconCardGlyph = function IconCardGlyph(props) {
12
+ return /*#__PURE__*/_react.default.createElement("svg", (0, _extends2.default)({
13
+ width: "32",
14
+ height: "32",
15
+ viewBox: "0 0 32 32",
16
+ fill: "none",
17
+ xmlns: "http://www.w3.org/2000/svg"
18
+ }, props), /*#__PURE__*/_react.default.createElement("path", {
19
+ fillRule: "evenodd",
20
+ clipRule: "evenodd",
21
+ d: "M8 9c-1.10457 0-2 .89543-2 2v10c0 1.1046.89543 2 2 2h16c1.1046 0 2-.8954 2-2V11c0-1.10457-.8954-2-2-2H8Zm0 3c0-.5523.44772-1 1-1h2c.5523 0 1 .4477 1 1v2c0 .5523-.4477 1-1 1H9c-.55228 0-1-.4477-1-1v-2Zm5 1c0-.2761.2239-.5.5-.5h10c.2761 0 .5.2239.5.5s-.2239.5-.5.5h-10c-.2761 0-.5-.2239-.5-.5Zm-4 3c-.55228 0-1 .4477-1 1s.44772 1 1 1h14c.5523 0 1-.4477 1-1s-.4477-1-1-1H9Zm-1 4c0-.5523.44772-1 1-1h6c.5523 0 1 .4477 1 1s-.4477 1-1 1H9c-.55228 0-1-.4477-1-1Z",
22
+ fill: "currentColor"
23
+ }));
24
+ };
25
+ var IconCard = function IconCard(props) {
26
+ return /*#__PURE__*/_react.default.createElement(_icon.default, (0, _extends2.default)({
27
+ glyph: IconCardGlyph
28
+ }, props));
29
+ };
30
+ exports.IconCard = IconCard;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.IconEmbed = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _icon = _interopRequireDefault(require("@atlaskit/icon"));
11
+ var IconEmbedGlyph = function IconEmbedGlyph(props) {
12
+ return /*#__PURE__*/_react.default.createElement("svg", (0, _extends2.default)({
13
+ width: "32",
14
+ height: "32",
15
+ viewBox: "0 0 32 32",
16
+ fill: "none",
17
+ xmlns: "http://www.w3.org/2000/svg"
18
+ }, props), /*#__PURE__*/_react.default.createElement("path", {
19
+ fillRule: "evenodd",
20
+ clipRule: "evenodd",
21
+ d: "M8 6c-1.10457 0-2 .89543-2 2v16c0 1.1046.89543 2 2 2h16c1.1046 0 2-.8954 2-2V8c0-1.10457-.8954-2-2-2H8Zm1 2c-.55228 0-1 .44772-1 1v2c0 .5523.44772 1 1 1h2c.5523 0 1-.4477 1-1V9c0-.55228-.4477-1-1-1H9Zm4.5 1.5c-.2761 0-.5.22386-.5.5 0 .2761.2239.5.5.5h10c.2761 0 .5-.2239.5-.5 0-.27614-.2239-.5-.5-.5h-10ZM9 14c-.55228 0-1 .4477-1 1v8c0 .5523.44772 1 1 1h14c.5523 0 1-.4477 1-1v-8c0-.5523-.4477-1-1-1H9Zm6 2.5c0 .8284-.6716 1.5-1.5 1.5s-1.5-.6716-1.5-1.5.6716-1.5 1.5-1.5 1.5.6716 1.5 1.5Zm0 5.5-1-1-2 2h8v-1.8L18 19l-3 3Z",
22
+ fill: "currentColor"
23
+ }));
24
+ };
25
+ var IconEmbed = function IconEmbed(props) {
26
+ return /*#__PURE__*/_react.default.createElement(_icon.default, (0, _extends2.default)({
27
+ glyph: IconEmbedGlyph
28
+ }, props));
29
+ };
30
+ exports.IconEmbed = IconEmbed;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.IconInline = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _icon = _interopRequireDefault(require("@atlaskit/icon"));
11
+ var IconInlineGlyph = function IconInlineGlyph(props) {
12
+ return /*#__PURE__*/_react.default.createElement("svg", (0, _extends2.default)({
13
+ width: "32",
14
+ height: "32",
15
+ viewBox: "0 0 32 32",
16
+ fill: "none",
17
+ xmlns: "http://www.w3.org/2000/svg"
18
+ }, props), /*#__PURE__*/_react.default.createElement("path", {
19
+ fillRule: "evenodd",
20
+ clipRule: "evenodd",
21
+ d: "M8 12c-1.10457 0-2 .8954-2 2v4c0 1.1046.89543 2 2 2h16c1.1046 0 2-.8954 2-2v-4c0-1.1046-.8954-2-2-2H8Zm0 3c0-.5523.44772-1 1-1h2c.5523 0 1 .4477 1 1v2c0 .5523-.4477 1-1 1H9c-.55228 0-1-.4477-1-1v-2Zm5 1c0-.2761.2239-.5.5-.5h10c.2761 0 .5.2239.5.5s-.2239.5-.5.5h-10c-.2761 0-.5-.2239-.5-.5Z",
22
+ fill: "currentColor"
23
+ }));
24
+ };
25
+ var IconInline = function IconInline(props) {
26
+ return /*#__PURE__*/_react.default.createElement(_icon.default, (0, _extends2.default)({
27
+ glyph: IconInlineGlyph
28
+ }, props));
29
+ };
30
+ exports.IconInline = IconInline;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.IconUrl = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _icon = _interopRequireDefault(require("@atlaskit/icon"));
11
+ var IconUrlGlyph = function IconUrlGlyph(props) {
12
+ return /*#__PURE__*/_react.default.createElement("svg", (0, _extends2.default)({
13
+ width: "32",
14
+ height: "32",
15
+ viewBox: "0 0 32 32",
16
+ fill: "none",
17
+ xmlns: "http://www.w3.org/2000/svg"
18
+ }, props), /*#__PURE__*/_react.default.createElement("rect", {
19
+ x: "6",
20
+ y: "15",
21
+ width: "20",
22
+ height: "2",
23
+ rx: "1",
24
+ fill: "currentColor"
25
+ }));
26
+ };
27
+ var IconUrl = function IconUrl(props) {
28
+ return /*#__PURE__*/_react.default.createElement(_icon.default, (0, _extends2.default)({
29
+ glyph: IconUrlGlyph
30
+ }, props));
31
+ };
32
+ exports.IconUrl = IconUrl;
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.messages = void 0;
7
+ var _reactIntlNext = require("react-intl-next");
8
+ var messages = (0, _reactIntlNext.defineMessages)({
9
+ url: {
10
+ id: 'fabric.editor.url',
11
+ defaultMessage: 'Display URL',
12
+ description: 'Convert the card to become a regular text-based hyperlink.'
13
+ },
14
+ block: {
15
+ id: 'fabric.editor.displayBlock',
16
+ defaultMessage: 'Display card',
17
+ description: 'Display link as a card with a rich preview similar to in a Facebook feed with page title, description, and potentially an image.'
18
+ },
19
+ inline: {
20
+ id: 'fabric.editor.displayInline',
21
+ defaultMessage: 'Display inline',
22
+ description: 'Display link with the title only.'
23
+ },
24
+ embed: {
25
+ id: 'fabric.editor.displayEmbed',
26
+ defaultMessage: 'Display embed',
27
+ description: 'Display link as an embedded object'
28
+ },
29
+ link: {
30
+ id: 'fabric.editor.displayLink',
31
+ defaultMessage: 'Display as text',
32
+ description: 'Convert the card to become a regular text-based hyperlink.'
33
+ },
34
+ card: {
35
+ id: 'fabric.editor.cardFloatingControls',
36
+ defaultMessage: 'Card options',
37
+ description: 'Options to change card type'
38
+ },
39
+ blockCardUnavailable: {
40
+ id: 'fabric.editor.blockCardUnavailable',
41
+ defaultMessage: 'The inline link is inside {node} and cannot have its view changed',
42
+ description: 'Warning message to show the user that this node cannot change its view'
43
+ },
44
+ displayOptionUnavailableInParentNode: {
45
+ id: 'fabric.editor.displayOptionUnavailableInParentNode',
46
+ defaultMessage: "This display option isn't available inside {node}",
47
+ description: 'Warning message to show the user that this node option is not available inside a parent node type'
48
+ },
49
+ urlTitle: {
50
+ id: 'fabric.editor.urlTitle',
51
+ defaultMessage: 'URL',
52
+ description: 'Title for option to convert the card to become a regular text-based hyperlink.'
53
+ },
54
+ blockTitle: {
55
+ id: 'fabric.editor.blockTitle',
56
+ defaultMessage: 'Card',
57
+ description: 'Title for option to display link in the card view.'
58
+ },
59
+ inlineTitle: {
60
+ id: 'fabric.editor.inlineTitle',
61
+ defaultMessage: 'Inline',
62
+ description: 'Title for option to display link in the inline view.'
63
+ },
64
+ embedTitle: {
65
+ id: 'fabric.editor.embedTitle',
66
+ defaultMessage: 'Embed',
67
+ description: 'Title for option to display link as an embedded object.'
68
+ },
69
+ urlDescription: {
70
+ id: 'fabric.editor.urlDescription',
71
+ defaultMessage: 'Display link as URL',
72
+ description: 'Description for option to convert the card to become a regular text-based hyperlink.'
73
+ },
74
+ blockDescription: {
75
+ id: 'fabric.editor.blockDescription',
76
+ defaultMessage: 'Display more information about a link, including a summary and actions',
77
+ description: 'Description for option to display link in the card view.'
78
+ },
79
+ inlineDescription: {
80
+ id: 'fabric.editor.inlineDescription',
81
+ defaultMessage: 'Display link as inline text',
82
+ description: 'Description for option to display link in the inline view.'
83
+ },
84
+ embedDescription: {
85
+ id: 'fabric.editor.ecombedDescription',
86
+ defaultMessage: 'Display an interactive preview of a link',
87
+ description: 'Description for option to display link as an embedded object.'
88
+ }
89
+ });
90
+ exports.messages = messages;
@@ -3,6 +3,12 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ Object.defineProperty(exports, "cardMessages", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _card.messages;
10
+ }
11
+ });
6
12
  Object.defineProperty(exports, "codeBidiWarningMessages", {
7
13
  enumerable: true,
8
14
  get: function get() {
@@ -54,6 +60,7 @@ var _unsupportedContent = require("./unsupportedContent");
54
60
  var _codeBlockButton = require("./codeBlockButton");
55
61
  var _insertBlock = require("./insert-block");
56
62
  var _mediaAndEmbedToolbar = require("./media-and-embed-toolbar");
63
+ var _card = require("./card");
57
64
  var _default = (0, _reactIntlNext.defineMessages)({
58
65
  layoutFixedWidth: {
59
66
  id: 'fabric.editor.layoutFixedWidth',
@@ -16,7 +16,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
16
16
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
17
17
  var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
18
18
  var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
19
- var packageVersion = "74.13.0";
19
+ var packageVersion = "74.14.0";
20
20
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
21
21
  // Remove URL as it has UGC
22
22
  // TODO: Sanitise the URL instead of just removing it
@@ -27,6 +27,12 @@ Object.defineProperty(exports, "CodeBlockSharedCssClassName", {
27
27
  return _codeBlock.CodeBlockSharedCssClassName;
28
28
  }
29
29
  });
30
+ Object.defineProperty(exports, "DATASOURCE_INNER_CONTAINER_CLASSNAME", {
31
+ enumerable: true,
32
+ get: function get() {
33
+ return _smartCard2.DATASOURCE_INNER_CONTAINER_CLASSNAME;
34
+ }
35
+ });
30
36
  Object.defineProperty(exports, "DateSharedCssClassName", {
31
37
  enumerable: true,
32
38
  get: function get() {
@@ -45,6 +51,12 @@ Object.defineProperty(exports, "EXTENSION_PADDING", {
45
51
  return _extension.EXTENSION_PADDING;
46
52
  }
47
53
  });
54
+ Object.defineProperty(exports, "FLOATING_TOOLBAR_LINKPICKER_CLASSNAME", {
55
+ enumerable: true,
56
+ get: function get() {
57
+ return _smartCard2.FLOATING_TOOLBAR_LINKPICKER_CLASSNAME;
58
+ }
59
+ });
48
60
  Object.defineProperty(exports, "GRID_GUTTER", {
49
61
  enumerable: true,
50
62
  get: function get() {
@@ -141,6 +153,24 @@ Object.defineProperty(exports, "dateSharedStyle", {
141
153
  return _date.dateSharedStyle;
142
154
  }
143
155
  });
156
+ Object.defineProperty(exports, "editIconStyles", {
157
+ enumerable: true,
158
+ get: function get() {
159
+ return _embedCard.editIconStyles;
160
+ }
161
+ });
162
+ Object.defineProperty(exports, "embedCardStyles", {
163
+ enumerable: true,
164
+ get: function get() {
165
+ return _embedCard.embedCardStyles;
166
+ }
167
+ });
168
+ Object.defineProperty(exports, "embedSpacingStyles", {
169
+ enumerable: true,
170
+ get: function get() {
171
+ return _embedCard.embedSpacingStyles;
172
+ }
173
+ });
144
174
  Object.defineProperty(exports, "getOrderedListInlineStyles", {
145
175
  enumerable: true,
146
176
  get: function get() {
@@ -225,6 +255,12 @@ Object.defineProperty(exports, "smartCardSharedStyles", {
225
255
  return _smartCard.smartCardSharedStyles;
226
256
  }
227
257
  });
258
+ Object.defineProperty(exports, "smartCardStyles", {
259
+ enumerable: true,
260
+ get: function get() {
261
+ return _smartCard2.smartCardStyles;
262
+ }
263
+ });
228
264
  Object.defineProperty(exports, "tableCellBorderWidth", {
229
265
  enumerable: true,
230
266
  get: function get() {
@@ -328,4 +364,6 @@ var _codeBlock = require("./shared/code-block");
328
364
  var _layout = require("./shared/layout");
329
365
  var _extension = require("./shared/extension");
330
366
  var _resizer = require("./shared/resizer");
331
- var _grid = require("./shared/grid");
367
+ var _grid = require("./shared/grid");
368
+ var _smartCard2 = require("./shared/smartCard");
369
+ var _embedCard = require("./shared/embedCard");
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.embedSpacingStyles = exports.embedCardStyles = exports.editIconStyles = void 0;
8
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
9
+ var _react = require("@emotion/react");
10
+ var _templateObject, _templateObject2, _templateObject3;
11
+ var embedCardStyles = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n .ProseMirror {\n .embedCardView-content-wrap[layout^='wrap-'] {\n max-width: 100%;\n }\n\n .embedCardView-content-wrap[layout='wrap-left'] {\n float: left;\n }\n\n .embedCardView-content-wrap[layout='wrap-right'] {\n float: right;\n }\n\n .embedCardView-content-wrap[layout='wrap-right']\n + .embedCardView-content-wrap[layout='wrap-left'] {\n clear: both;\n }\n }\n"])));
12
+ exports.embedCardStyles = embedCardStyles;
13
+ var embedSpacingStyles = (0, _react.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n margin: 0 10px;\n"])));
14
+ exports.embedSpacingStyles = embedSpacingStyles;
15
+ var editIconStyles = (0, _react.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n width: 20px;\n"])));
16
+ exports.editIconStyles = editIconStyles;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.smartCardStyles = exports.FLOATING_TOOLBAR_LINKPICKER_CLASSNAME = exports.DATASOURCE_INNER_CONTAINER_CLASSNAME = void 0;
8
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
9
+ var _react = require("@emotion/react");
10
+ var _editorSharedStyles = require("@atlaskit/editor-shared-styles");
11
+ var _colors = require("@atlaskit/theme/colors");
12
+ var _smartCard = require("./smart-card");
13
+ var _templateObject;
14
+ var DATASOURCE_INNER_CONTAINER_CLASSNAME = 'datasourceView-content-inner-wrap';
15
+ exports.DATASOURCE_INNER_CONTAINER_CLASSNAME = DATASOURCE_INNER_CONTAINER_CLASSNAME;
16
+ var FLOATING_TOOLBAR_LINKPICKER_CLASSNAME = 'card-floating-toolbar--link-picker';
17
+ exports.FLOATING_TOOLBAR_LINKPICKER_CLASSNAME = FLOATING_TOOLBAR_LINKPICKER_CLASSNAME;
18
+ var smartCardStyles = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n .", " {\n max-width: calc(100% - 20px);\n vertical-align: top;\n word-break: break-all;\n\n .card {\n padding-left: 2px;\n padding-right: 2px;\n padding-top: 0.5em;\n padding-bottom: 0.5em;\n margin-bottom: -0.5em;\n\n .", " > a:focus {\n ", "\n }\n }\n\n &.", "\n .", "\n > a {\n ", "\n }\n .", " > a {\n /* EDM-1717: box-shadow Safari fix start */\n z-index: 1;\n position: relative;\n /* EDM-1717: box-shadow Safari fix end */\n }\n\n &.danger {\n .", " > a {\n box-shadow: 0 0 0 1px\n ", ";\n /* EDM-1717: box-shadow Safari fix start */\n z-index: 2;\n /* EDM-1717: box-shadow Safari fix end */\n }\n }\n }\n\n .", " {\n .", " > div {\n cursor: pointer;\n &:hover {\n background-color: ", ";\n }\n }\n\n &.", "\n .", "\n > div {\n ", "\n }\n\n &.danger {\n .", " > div {\n box-shadow: 0 0 0 1px\n ", " !important;\n }\n }\n }\n\n .", ".", " {\n max-width: 100%;\n display: flex;\n justify-content: center;\n\n .", " {\n cursor: pointer;\n background-color: ", ";\n border-radius: ", ";\n border: 1px solid ", ";\n }\n\n &.", " {\n .", " {\n ", "\n }\n }\n\n &.danger {\n .", " {\n box-shadow: 0 0 0 1px\n ", ";\n }\n }\n }\n\n .", " {\n .", " > div {\n cursor: pointer;\n &::after {\n transition: box-shadow 0s;\n }\n }\n &.", "\n .", "\n > div {\n ", "\n }\n\n &.", "\n .", "\n > div::after {\n ", "\n }\n\n &.danger {\n .media-card-frame::after {\n box-shadow: 0 0 0 1px\n ", " !important;\n background: ", " !important;\n }\n .richMedia-resize-handle-right::after,\n .richMedia-resize-handle-left::after {\n background: ", ";\n }\n }\n }\n\n .", " {\n padding: 0;\n }\n"])), _smartCard.SmartCardSharedCssClassName.INLINE_CARD_CONTAINER, _smartCard.SmartCardSharedCssClassName.LOADER_WRAPPER, (0, _editorSharedStyles.getSelectionStyles)([_editorSharedStyles.SelectionStyle.BoxShadow]), _editorSharedStyles.akEditorSelectedNodeClassName, _smartCard.SmartCardSharedCssClassName.LOADER_WRAPPER, (0, _editorSharedStyles.getSelectionStyles)([_editorSharedStyles.SelectionStyle.BoxShadow]), _smartCard.SmartCardSharedCssClassName.LOADER_WRAPPER, _smartCard.SmartCardSharedCssClassName.LOADER_WRAPPER, "var(--ds-border-danger, ".concat(_editorSharedStyles.akEditorDeleteBorder, ")"), _smartCard.SmartCardSharedCssClassName.BLOCK_CARD_CONTAINER, _smartCard.SmartCardSharedCssClassName.LOADER_WRAPPER, "var(--ds-background-neutral-subtle-hovered, ".concat(_colors.N20, ")"), _editorSharedStyles.akEditorSelectedNodeClassName, _smartCard.SmartCardSharedCssClassName.LOADER_WRAPPER, (0, _editorSharedStyles.getSelectionStyles)([_editorSharedStyles.SelectionStyle.BoxShadow]), _smartCard.SmartCardSharedCssClassName.LOADER_WRAPPER, "var(--ds-border-danger, ".concat(_editorSharedStyles.akEditorDeleteBorder, ")"), _smartCard.SmartCardSharedCssClassName.DATASOURCE_CONTAINER, _smartCard.SmartCardSharedCssClassName.BLOCK_CARD_CONTAINER, DATASOURCE_INNER_CONTAINER_CLASSNAME, "var(--ds-background-neutral-subtle, ".concat(_colors.N0, ")"), "var(--ds-border-radius-100, ".concat(_editorSharedStyles.akEditorRuleBorderRadius, ")"), "var(--ds-border, ".concat(_colors.N40, ")"), _editorSharedStyles.akEditorSelectedNodeClassName, DATASOURCE_INNER_CONTAINER_CLASSNAME, (0, _editorSharedStyles.getSelectionStyles)([_editorSharedStyles.SelectionStyle.BoxShadow]), DATASOURCE_INNER_CONTAINER_CLASSNAME, "var(--ds-border-danger, ".concat(_editorSharedStyles.akEditorDeleteBorder, ")"), _smartCard.SmartCardSharedCssClassName.EMBED_CARD_CONTAINER, _smartCard.SmartCardSharedCssClassName.LOADER_WRAPPER, _editorSharedStyles.akEditorSelectedNodeClassName, _smartCard.SmartCardSharedCssClassName.LOADER_WRAPPER, (0, _editorSharedStyles.getSelectionStyles)([_editorSharedStyles.SelectionStyle.BoxShadow]), _editorSharedStyles.akEditorSelectedNodeClassName, _smartCard.SmartCardSharedCssClassName.LOADER_WRAPPER, (0, _editorSharedStyles.getSelectionStyles)([_editorSharedStyles.SelectionStyle.BoxShadow]), "var(--ds-border-danger, ".concat(_editorSharedStyles.akEditorDeleteBorder, ")"), "var(--ds-background-danger, ".concat(_editorSharedStyles.akEditorDeleteBackground, ")"), "var(--ds-border-danger, ".concat(_editorSharedStyles.akEditorDeleteBorder, ")"), FLOATING_TOOLBAR_LINKPICKER_CLASSNAME);
19
+ exports.smartCardStyles = smartCardStyles;
@@ -24,7 +24,7 @@ var _templateObject, _templateObject2, _templateObject3;
24
24
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
25
25
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } /** @jsx jsx */
26
26
  var packageName = "@atlaskit/editor-common";
27
- var packageVersion = "74.13.0";
27
+ var packageVersion = "74.14.0";
28
28
  var halfFocusRing = 1;
29
29
  var dropOffset = '0, 8';
30
30
  var DropList = /*#__PURE__*/function (_Component) {
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-common",
3
- "version": "74.13.0",
3
+ "version": "74.14.0",
4
4
  "sideEffects": false
5
5
  }
@@ -0,0 +1,61 @@
1
+ /** @jsx jsx */
2
+ import React from 'react';
3
+ import { css, jsx } from '@emotion/react';
4
+ import { ButtonGroup } from '@atlaskit/button';
5
+ import { FloatingToolbarButton as Button } from '../ui';
6
+
7
+ /**
8
+ * Applying `pointer-events: none;` when disabled allows the Tooltip to be displayed
9
+ */
10
+ const buttonStyle = css`
11
+ pointer-events: auto;
12
+ `;
13
+ const buttonStyleNoneEvent = css`
14
+ pointer-events: none;
15
+ `;
16
+ const DisallowedWrapper = ({
17
+ disabled,
18
+ ...props
19
+ }) => {
20
+ return jsx("div", props);
21
+ };
22
+
23
+ /**
24
+ * The button requires `pointer-events: none;` in order to fix the tooltip, hence
25
+ * leaving us without a disabled cursor, the following fixes this:
26
+ */
27
+ const defaultWrapperStyle = css`
28
+ cursor: pointer;
29
+ `;
30
+ const disallowedWrapperStyle = css`
31
+ cursor: not-allowed;
32
+ `;
33
+ export const LinkToolbarButtonGroup = ({
34
+ options
35
+ }) => {
36
+ return jsx(ButtonGroup, null, options.map(({
37
+ onClick,
38
+ selected,
39
+ disabled,
40
+ testId,
41
+ tooltipContent,
42
+ title,
43
+ icon: Icon
44
+ }) => jsx(DisallowedWrapper, {
45
+ css: disabled ? disallowedWrapperStyle : defaultWrapperStyle,
46
+ key: testId,
47
+ disabled: disabled
48
+ }, jsx(Button, {
49
+ css: disabled ? buttonStyleNoneEvent : buttonStyle,
50
+ title: title,
51
+ icon: jsx(Icon, {
52
+ size: "medium",
53
+ label: title
54
+ }),
55
+ selected: selected,
56
+ onClick: onClick,
57
+ testId: testId,
58
+ disabled: disabled,
59
+ tooltipContent: tooltipContent
60
+ }))));
61
+ };
@@ -1,2 +1,5 @@
1
1
  export { addLinkMetadata, getLinkMetadataFromTransaction, commandWithMetadata } from './utils';
2
- export { default as buildLayoutButtons } from './MediaAndEmbedsToolbar';
2
+ export { default as buildLayoutButtons } from './MediaAndEmbedsToolbar';
3
+ export { LinkToolbarButtonGroup } from './LinkToolbarButtonGroup';
4
+ export { getButtonGroupOption } from './link-toolbar-button-group-options';
5
+ export const DATASOURCE_INNER_CONTAINER_CLASSNAME = 'datasourceView-content-inner-wrap';