@atlaskit/editor-common 89.1.2 → 89.2.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.
- package/CHANGELOG.md +16 -0
- package/dist/cjs/monitoring/error.js +1 -1
- package/dist/cjs/ui/DropList/index.js +1 -1
- package/dist/cjs/ui/Emoji/index.js +58 -11
- package/dist/cjs/ui/MediaSingle/styled.js +1 -1
- package/dist/cjs/utils/processRawValue.js +5 -0
- package/dist/es2019/monitoring/error.js +1 -1
- package/dist/es2019/ui/DropList/index.js +1 -1
- package/dist/es2019/ui/Emoji/index.js +54 -5
- package/dist/es2019/ui/MediaSingle/styled.js +1 -1
- package/dist/es2019/utils/processRawValue.js +4 -0
- package/dist/esm/monitoring/error.js +1 -1
- package/dist/esm/ui/DropList/index.js +1 -1
- package/dist/esm/ui/Emoji/index.js +57 -11
- package/dist/esm/ui/MediaSingle/styled.js +1 -1
- package/dist/esm/utils/processRawValue.js +4 -0
- package/dist/types/ui/Emoji/index.d.ts +5 -13
- package/dist/types/utils/processRawValue.d.ts +1 -0
- package/dist/types-ts4.5/ui/Emoji/index.d.ts +5 -13
- package/dist/types-ts4.5/utils/processRawValue.d.ts +1 -0
- package/package.json +5 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# @atlaskit/editor-common
|
|
2
2
|
|
|
3
|
+
## 89.2.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#140949](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/140949)
|
|
8
|
+
[`f0496e4dd21b2`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/f0496e4dd21b2) -
|
|
9
|
+
Make Panel Plugin use Emoji component from editor-plugin-emoji
|
|
10
|
+
|
|
11
|
+
## 89.1.3
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- [#140717](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/140717)
|
|
16
|
+
[`142a506a3f170`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/142a506a3f170) -
|
|
17
|
+
ED-24958 prevent confluence full page editor crashing when loading from draft doc
|
|
18
|
+
|
|
3
19
|
## 89.1.2
|
|
4
20
|
|
|
5
21
|
### Patch Changes
|
|
@@ -17,7 +17,7 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
|
|
|
17
17
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
18
18
|
var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
|
|
19
19
|
var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
|
|
20
|
-
var packageVersion = "89.
|
|
20
|
+
var packageVersion = "89.2.0";
|
|
21
21
|
var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
|
|
22
22
|
// Remove URL as it has UGC
|
|
23
23
|
// TODO: Sanitise the URL instead of just removing it
|
|
@@ -25,7 +25,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
|
|
|
25
25
|
* @jsx jsx
|
|
26
26
|
*/ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
27
27
|
var packageName = "@atlaskit/editor-common";
|
|
28
|
-
var packageVersion = "89.
|
|
28
|
+
var packageVersion = "89.2.0";
|
|
29
29
|
var halfFocusRing = 1;
|
|
30
30
|
var dropOffset = '0, 8';
|
|
31
31
|
var DropList = /*#__PURE__*/function (_Component) {
|
|
@@ -15,18 +15,18 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
|
|
|
15
15
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
16
|
var _react = _interopRequireWildcard(require("react"));
|
|
17
17
|
var _element = require("@atlaskit/emoji/element");
|
|
18
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
18
19
|
var _providerFactory = require("../../provider-factory");
|
|
19
20
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
20
21
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
21
22
|
function _createSuper(t) { var r = _isNativeReflectConstruct(); return function () { var e, o = (0, _getPrototypeOf2.default)(t); if (r) { var s = (0, _getPrototypeOf2.default)(this).constructor; e = Reflect.construct(o, arguments, s); } else e = o.apply(this, arguments); return (0, _possibleConstructorReturn2.default)(this, e); }; }
|
|
22
23
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
function EmojiNode(props) {
|
|
24
|
+
var EmojiNodeClass = /*#__PURE__*/function (_PureComponent) {
|
|
25
|
+
(0, _inherits2.default)(EmojiNodeClass, _PureComponent);
|
|
26
|
+
var _super = _createSuper(EmojiNodeClass);
|
|
27
|
+
function EmojiNodeClass(props) {
|
|
28
28
|
var _this;
|
|
29
|
-
(0, _classCallCheck2.default)(this,
|
|
29
|
+
(0, _classCallCheck2.default)(this, EmojiNodeClass);
|
|
30
30
|
_this = _super.call(this, props);
|
|
31
31
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "renderWithProvider", function (providers) {
|
|
32
32
|
var _resourceConfig$optim;
|
|
@@ -69,7 +69,7 @@ var EmojiNode = exports.default = /*#__PURE__*/function (_PureComponent) {
|
|
|
69
69
|
_this.providerFactory = props.providers || new _providerFactory.ProviderFactory();
|
|
70
70
|
return _this;
|
|
71
71
|
}
|
|
72
|
-
(0, _createClass2.default)(
|
|
72
|
+
(0, _createClass2.default)(EmojiNodeClass, [{
|
|
73
73
|
key: "componentWillUnmount",
|
|
74
74
|
value: function componentWillUnmount() {
|
|
75
75
|
if (!this.props.providers) {
|
|
@@ -88,9 +88,56 @@ var EmojiNode = exports.default = /*#__PURE__*/function (_PureComponent) {
|
|
|
88
88
|
});
|
|
89
89
|
}
|
|
90
90
|
}]);
|
|
91
|
-
return
|
|
91
|
+
return EmojiNodeClass;
|
|
92
92
|
}(_react.PureComponent);
|
|
93
|
-
(0, _defineProperty2.default)(
|
|
94
|
-
(0, _defineProperty2.default)(
|
|
93
|
+
(0, _defineProperty2.default)(EmojiNodeClass, "displayName", 'EmojiNode');
|
|
94
|
+
(0, _defineProperty2.default)(EmojiNodeClass, "defaultProps", {
|
|
95
95
|
showTooltip: true
|
|
96
|
-
});
|
|
96
|
+
});
|
|
97
|
+
var EmojiNodeFunctional = function EmojiNodeFunctional(props) {
|
|
98
|
+
var _resourceConfig$optim2;
|
|
99
|
+
var allowTextFallback = props.allowTextFallback,
|
|
100
|
+
shortName = props.shortName,
|
|
101
|
+
id = props.id,
|
|
102
|
+
fallback = props.fallback,
|
|
103
|
+
fitToHeight = props.fitToHeight,
|
|
104
|
+
showTooltip = props.showTooltip,
|
|
105
|
+
resourceConfig = props.resourceConfig,
|
|
106
|
+
emojiProvider = props.emojiProvider;
|
|
107
|
+
if (allowTextFallback && !emojiProvider) {
|
|
108
|
+
return /*#__PURE__*/_react.default.createElement("span", {
|
|
109
|
+
"data-emoji-id": id,
|
|
110
|
+
"data-emoji-short-name": shortName,
|
|
111
|
+
"data-emoji-text": fallback || shortName
|
|
112
|
+
}, fallback || shortName);
|
|
113
|
+
}
|
|
114
|
+
if (!emojiProvider) {
|
|
115
|
+
return null;
|
|
116
|
+
}
|
|
117
|
+
return /*#__PURE__*/_react.default.createElement(_element.ResourcedEmoji, {
|
|
118
|
+
emojiId: {
|
|
119
|
+
id: id,
|
|
120
|
+
fallback: fallback,
|
|
121
|
+
shortName: shortName
|
|
122
|
+
},
|
|
123
|
+
emojiProvider: Promise.resolve(emojiProvider),
|
|
124
|
+
showTooltip: showTooltip,
|
|
125
|
+
fitToHeight: fitToHeight,
|
|
126
|
+
optimistic: true,
|
|
127
|
+
optimisticImageURL: resourceConfig === null || resourceConfig === void 0 || (_resourceConfig$optim2 = resourceConfig.optimisticImageApi) === null || _resourceConfig$optim2 === void 0 ? void 0 : _resourceConfig$optim2.getUrl({
|
|
128
|
+
id: id,
|
|
129
|
+
fallback: fallback,
|
|
130
|
+
shortName: shortName
|
|
131
|
+
}),
|
|
132
|
+
editorEmoji: true
|
|
133
|
+
});
|
|
134
|
+
};
|
|
135
|
+
var EmojiNode = function EmojiNode(props) {
|
|
136
|
+
if ((0, _platformFeatureFlags.fg)('platform_editor_get_emoji_provider_from_config')) {
|
|
137
|
+
if (props.emojiProvider) {
|
|
138
|
+
return /*#__PURE__*/_react.default.createElement(EmojiNodeFunctional, props);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
return /*#__PURE__*/_react.default.createElement(EmojiNodeClass, props);
|
|
142
|
+
};
|
|
143
|
+
var _default = exports.default = EmojiNode;
|
|
@@ -211,7 +211,7 @@ var RenderFallbackContainer = function RenderFallbackContainer(_ref2) {
|
|
|
211
211
|
|
|
212
212
|
// eslint-disable-next-line @atlaskit/design-system/no-css-tagged-template-expression -- Needs manual remediation
|
|
213
213
|
var mediaWrapperStyle = exports.mediaWrapperStyle = function mediaWrapperStyle(props) {
|
|
214
|
-
return (0, _react2.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n\tposition: relative;\n\n\t", "\n\n\t/* Editor */\n & > figure {\n\t\tposition: ", ";\n\t\theight: 100%;\n\t\twidth: 100%;\n\t}\n\n\t// Comments on media project adds comment badge as child of the media wrapper,\n\t// thus we need to exclude it so that style is applied to intended div\n\t// remove [data-comment-badge='true'] when ff
|
|
214
|
+
return (0, _react2.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n\tposition: relative;\n\n\t", "\n\n\t/* Editor */\n & > figure {\n\t\tposition: ", ";\n\t\theight: 100%;\n\t\twidth: 100%;\n\t}\n\n\t// Comments on media project adds comment badge as child of the media wrapper,\n\t// thus we need to exclude it so that style is applied to intended div\n\t// remove [data-comment-badge='true'] when ff platform_editor_add_media_from_url is cleaned up\n\t& > div:not([data-comment-badge='true'], [data-media-badges='true']) {\n\t\tposition: ", ";\n\t\theight: 100%;\n\t\twidth: 100%;\n\t}\n\n\t& * [data-mark-annotation-type='inlineComment'] {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t}\n\n\t&[data-node-type='embedCard'] > div {\n\t\twidth: 100%;\n\t}\n\n\t/* Renderer */\n\t[data-node-type='media'] {\n\t\tposition: static !important;\n\n\t\t> div {\n\t\t\tposition: absolute;\n\t\t\theight: 100%;\n\t\t}\n\t}\n"])), RenderFallbackContainer(props), props.hasFallbackContainer ? 'absolute' : 'relative', props.hasFallbackContainer ? 'absolute' : 'relative');
|
|
215
215
|
};
|
|
216
216
|
var MediaWrapper = exports.MediaWrapper = function MediaWrapper(_ref3) {
|
|
217
217
|
var children = _ref3.children,
|
|
@@ -4,12 +4,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.processRawValue = processRawValue;
|
|
7
|
+
exports.processRawValueWithoutTransformation = processRawValueWithoutTransformation;
|
|
7
8
|
var _transforms = require("@atlaskit/adf-utils/transforms");
|
|
8
9
|
var _model = require("@atlaskit/editor-prosemirror/model");
|
|
9
10
|
var _analytics = require("../analytics");
|
|
10
11
|
var _privacyFilter = require("./filter/privacy-filter");
|
|
11
12
|
var _trackUnsupportedContent = require("./track-unsupported-content");
|
|
12
13
|
var _validateUsingSpec = require("./validate-using-spec");
|
|
14
|
+
function processRawValueWithoutTransformation(schema, value) {
|
|
15
|
+
var parsedDoc = _model.Node.fromJSON(schema, value);
|
|
16
|
+
return parsedDoc;
|
|
17
|
+
}
|
|
13
18
|
function processRawValue(schema, value, providerFactory, sanitizePrivateContent, contentTransformer, dispatchAnalyticsEvent) {
|
|
14
19
|
if (!value) {
|
|
15
20
|
return;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { isFedRamp } from './environment';
|
|
2
2
|
const SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
|
|
3
3
|
const packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
|
|
4
|
-
const packageVersion = "89.
|
|
4
|
+
const packageVersion = "89.2.0";
|
|
5
5
|
const sanitiseSentryEvents = (data, _hint) => {
|
|
6
6
|
// Remove URL as it has UGC
|
|
7
7
|
// TODO: Sanitise the URL instead of just removing it
|
|
@@ -14,7 +14,7 @@ import withAnalyticsEvents from '@atlaskit/analytics-next/withAnalyticsEvents';
|
|
|
14
14
|
import { N0, N50A, N60A, N900 } from '@atlaskit/theme/colors';
|
|
15
15
|
import Layer from '../Layer';
|
|
16
16
|
const packageName = "@atlaskit/editor-common";
|
|
17
|
-
const packageVersion = "89.
|
|
17
|
+
const packageVersion = "89.2.0";
|
|
18
18
|
const halfFocusRing = 1;
|
|
19
19
|
const dropOffset = '0, 8';
|
|
20
20
|
class DropList extends Component {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
2
|
import React, { PureComponent } from 'react';
|
|
3
3
|
import { ResourcedEmoji } from '@atlaskit/emoji/element';
|
|
4
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
4
5
|
import { ProviderFactory, WithProviders } from '../../provider-factory';
|
|
5
|
-
|
|
6
|
-
export default class EmojiNode extends PureComponent {
|
|
6
|
+
class EmojiNodeClass extends PureComponent {
|
|
7
7
|
constructor(props) {
|
|
8
8
|
super(props);
|
|
9
9
|
_defineProperty(this, "renderWithProvider", providers => {
|
|
@@ -62,7 +62,56 @@ export default class EmojiNode extends PureComponent {
|
|
|
62
62
|
});
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
|
-
_defineProperty(
|
|
66
|
-
_defineProperty(
|
|
65
|
+
_defineProperty(EmojiNodeClass, "displayName", 'EmojiNode');
|
|
66
|
+
_defineProperty(EmojiNodeClass, "defaultProps", {
|
|
67
67
|
showTooltip: true
|
|
68
|
-
});
|
|
68
|
+
});
|
|
69
|
+
const EmojiNodeFunctional = props => {
|
|
70
|
+
var _resourceConfig$optim2;
|
|
71
|
+
const {
|
|
72
|
+
allowTextFallback,
|
|
73
|
+
shortName,
|
|
74
|
+
id,
|
|
75
|
+
fallback,
|
|
76
|
+
fitToHeight,
|
|
77
|
+
showTooltip,
|
|
78
|
+
resourceConfig,
|
|
79
|
+
emojiProvider
|
|
80
|
+
} = props;
|
|
81
|
+
if (allowTextFallback && !emojiProvider) {
|
|
82
|
+
return /*#__PURE__*/React.createElement("span", {
|
|
83
|
+
"data-emoji-id": id,
|
|
84
|
+
"data-emoji-short-name": shortName,
|
|
85
|
+
"data-emoji-text": fallback || shortName
|
|
86
|
+
}, fallback || shortName);
|
|
87
|
+
}
|
|
88
|
+
if (!emojiProvider) {
|
|
89
|
+
return null;
|
|
90
|
+
}
|
|
91
|
+
return /*#__PURE__*/React.createElement(ResourcedEmoji, {
|
|
92
|
+
emojiId: {
|
|
93
|
+
id,
|
|
94
|
+
fallback,
|
|
95
|
+
shortName
|
|
96
|
+
},
|
|
97
|
+
emojiProvider: Promise.resolve(emojiProvider),
|
|
98
|
+
showTooltip: showTooltip,
|
|
99
|
+
fitToHeight: fitToHeight,
|
|
100
|
+
optimistic: true,
|
|
101
|
+
optimisticImageURL: resourceConfig === null || resourceConfig === void 0 ? void 0 : (_resourceConfig$optim2 = resourceConfig.optimisticImageApi) === null || _resourceConfig$optim2 === void 0 ? void 0 : _resourceConfig$optim2.getUrl({
|
|
102
|
+
id,
|
|
103
|
+
fallback,
|
|
104
|
+
shortName
|
|
105
|
+
}),
|
|
106
|
+
editorEmoji: true
|
|
107
|
+
});
|
|
108
|
+
};
|
|
109
|
+
const EmojiNode = props => {
|
|
110
|
+
if (fg('platform_editor_get_emoji_provider_from_config')) {
|
|
111
|
+
if (props.emojiProvider) {
|
|
112
|
+
return /*#__PURE__*/React.createElement(EmojiNodeFunctional, props);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
return /*#__PURE__*/React.createElement(EmojiNodeClass, props);
|
|
116
|
+
};
|
|
117
|
+
export default EmojiNode;
|
|
@@ -249,7 +249,7 @@ export const mediaWrapperStyle = props => css`
|
|
|
249
249
|
|
|
250
250
|
// Comments on media project adds comment badge as child of the media wrapper,
|
|
251
251
|
// thus we need to exclude it so that style is applied to intended div
|
|
252
|
-
// remove [data-comment-badge='true'] when ff
|
|
252
|
+
// remove [data-comment-badge='true'] when ff platform_editor_add_media_from_url is cleaned up
|
|
253
253
|
& > div:not([data-comment-badge='true'], [data-media-badges='true']) {
|
|
254
254
|
position: ${props.hasFallbackContainer ? 'absolute' : 'relative'};
|
|
255
255
|
height: 100%;
|
|
@@ -4,6 +4,10 @@ import { ACTION, ACTION_SUBJECT, EVENT_TYPE } from '../analytics';
|
|
|
4
4
|
import { sanitizeNodeForPrivacy } from './filter/privacy-filter';
|
|
5
5
|
import { findAndTrackUnsupportedContentNodes } from './track-unsupported-content';
|
|
6
6
|
import { validateADFEntity } from './validate-using-spec';
|
|
7
|
+
export function processRawValueWithoutTransformation(schema, value) {
|
|
8
|
+
const parsedDoc = Node.fromJSON(schema, value);
|
|
9
|
+
return parsedDoc;
|
|
10
|
+
}
|
|
7
11
|
export function processRawValue(schema, value, providerFactory, sanitizePrivateContent, contentTransformer, dispatchAnalyticsEvent) {
|
|
8
12
|
if (!value) {
|
|
9
13
|
return;
|
|
@@ -7,7 +7,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
7
7
|
import { isFedRamp } from './environment';
|
|
8
8
|
var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
|
|
9
9
|
var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
|
|
10
|
-
var packageVersion = "89.
|
|
10
|
+
var packageVersion = "89.2.0";
|
|
11
11
|
var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
|
|
12
12
|
// Remove URL as it has UGC
|
|
13
13
|
// TODO: Sanitise the URL instead of just removing it
|
|
@@ -22,7 +22,7 @@ import withAnalyticsEvents from '@atlaskit/analytics-next/withAnalyticsEvents';
|
|
|
22
22
|
import { N0, N50A, N60A, N900 } from '@atlaskit/theme/colors';
|
|
23
23
|
import Layer from '../Layer';
|
|
24
24
|
var packageName = "@atlaskit/editor-common";
|
|
25
|
-
var packageVersion = "89.
|
|
25
|
+
var packageVersion = "89.2.0";
|
|
26
26
|
var halfFocusRing = 1;
|
|
27
27
|
var dropOffset = '0, 8';
|
|
28
28
|
var DropList = /*#__PURE__*/function (_Component) {
|
|
@@ -9,14 +9,14 @@ function _createSuper(t) { var r = _isNativeReflectConstruct(); return function
|
|
|
9
9
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
10
10
|
import React, { PureComponent } from 'react';
|
|
11
11
|
import { ResourcedEmoji } from '@atlaskit/emoji/element';
|
|
12
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
12
13
|
import { ProviderFactory, WithProviders } from '../../provider-factory';
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
function EmojiNode(props) {
|
|
14
|
+
var EmojiNodeClass = /*#__PURE__*/function (_PureComponent) {
|
|
15
|
+
_inherits(EmojiNodeClass, _PureComponent);
|
|
16
|
+
var _super = _createSuper(EmojiNodeClass);
|
|
17
|
+
function EmojiNodeClass(props) {
|
|
18
18
|
var _this;
|
|
19
|
-
_classCallCheck(this,
|
|
19
|
+
_classCallCheck(this, EmojiNodeClass);
|
|
20
20
|
_this = _super.call(this, props);
|
|
21
21
|
_defineProperty(_assertThisInitialized(_this), "renderWithProvider", function (providers) {
|
|
22
22
|
var _resourceConfig$optim;
|
|
@@ -59,7 +59,7 @@ var EmojiNode = /*#__PURE__*/function (_PureComponent) {
|
|
|
59
59
|
_this.providerFactory = props.providers || new ProviderFactory();
|
|
60
60
|
return _this;
|
|
61
61
|
}
|
|
62
|
-
_createClass(
|
|
62
|
+
_createClass(EmojiNodeClass, [{
|
|
63
63
|
key: "componentWillUnmount",
|
|
64
64
|
value: function componentWillUnmount() {
|
|
65
65
|
if (!this.props.providers) {
|
|
@@ -78,10 +78,56 @@ var EmojiNode = /*#__PURE__*/function (_PureComponent) {
|
|
|
78
78
|
});
|
|
79
79
|
}
|
|
80
80
|
}]);
|
|
81
|
-
return
|
|
81
|
+
return EmojiNodeClass;
|
|
82
82
|
}(PureComponent);
|
|
83
|
-
_defineProperty(
|
|
84
|
-
_defineProperty(
|
|
83
|
+
_defineProperty(EmojiNodeClass, "displayName", 'EmojiNode');
|
|
84
|
+
_defineProperty(EmojiNodeClass, "defaultProps", {
|
|
85
85
|
showTooltip: true
|
|
86
86
|
});
|
|
87
|
-
|
|
87
|
+
var EmojiNodeFunctional = function EmojiNodeFunctional(props) {
|
|
88
|
+
var _resourceConfig$optim2;
|
|
89
|
+
var allowTextFallback = props.allowTextFallback,
|
|
90
|
+
shortName = props.shortName,
|
|
91
|
+
id = props.id,
|
|
92
|
+
fallback = props.fallback,
|
|
93
|
+
fitToHeight = props.fitToHeight,
|
|
94
|
+
showTooltip = props.showTooltip,
|
|
95
|
+
resourceConfig = props.resourceConfig,
|
|
96
|
+
emojiProvider = props.emojiProvider;
|
|
97
|
+
if (allowTextFallback && !emojiProvider) {
|
|
98
|
+
return /*#__PURE__*/React.createElement("span", {
|
|
99
|
+
"data-emoji-id": id,
|
|
100
|
+
"data-emoji-short-name": shortName,
|
|
101
|
+
"data-emoji-text": fallback || shortName
|
|
102
|
+
}, fallback || shortName);
|
|
103
|
+
}
|
|
104
|
+
if (!emojiProvider) {
|
|
105
|
+
return null;
|
|
106
|
+
}
|
|
107
|
+
return /*#__PURE__*/React.createElement(ResourcedEmoji, {
|
|
108
|
+
emojiId: {
|
|
109
|
+
id: id,
|
|
110
|
+
fallback: fallback,
|
|
111
|
+
shortName: shortName
|
|
112
|
+
},
|
|
113
|
+
emojiProvider: Promise.resolve(emojiProvider),
|
|
114
|
+
showTooltip: showTooltip,
|
|
115
|
+
fitToHeight: fitToHeight,
|
|
116
|
+
optimistic: true,
|
|
117
|
+
optimisticImageURL: resourceConfig === null || resourceConfig === void 0 || (_resourceConfig$optim2 = resourceConfig.optimisticImageApi) === null || _resourceConfig$optim2 === void 0 ? void 0 : _resourceConfig$optim2.getUrl({
|
|
118
|
+
id: id,
|
|
119
|
+
fallback: fallback,
|
|
120
|
+
shortName: shortName
|
|
121
|
+
}),
|
|
122
|
+
editorEmoji: true
|
|
123
|
+
});
|
|
124
|
+
};
|
|
125
|
+
var EmojiNode = function EmojiNode(props) {
|
|
126
|
+
if (fg('platform_editor_get_emoji_provider_from_config')) {
|
|
127
|
+
if (props.emojiProvider) {
|
|
128
|
+
return /*#__PURE__*/React.createElement(EmojiNodeFunctional, props);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
return /*#__PURE__*/React.createElement(EmojiNodeClass, props);
|
|
132
|
+
};
|
|
133
|
+
export default EmojiNode;
|
|
@@ -201,7 +201,7 @@ var RenderFallbackContainer = function RenderFallbackContainer(_ref2) {
|
|
|
201
201
|
|
|
202
202
|
// eslint-disable-next-line @atlaskit/design-system/no-css-tagged-template-expression -- Needs manual remediation
|
|
203
203
|
export var mediaWrapperStyle = function mediaWrapperStyle(props) {
|
|
204
|
-
return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n\tposition: relative;\n\n\t", "\n\n\t/* Editor */\n & > figure {\n\t\tposition: ", ";\n\t\theight: 100%;\n\t\twidth: 100%;\n\t}\n\n\t// Comments on media project adds comment badge as child of the media wrapper,\n\t// thus we need to exclude it so that style is applied to intended div\n\t// remove [data-comment-badge='true'] when ff
|
|
204
|
+
return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n\tposition: relative;\n\n\t", "\n\n\t/* Editor */\n & > figure {\n\t\tposition: ", ";\n\t\theight: 100%;\n\t\twidth: 100%;\n\t}\n\n\t// Comments on media project adds comment badge as child of the media wrapper,\n\t// thus we need to exclude it so that style is applied to intended div\n\t// remove [data-comment-badge='true'] when ff platform_editor_add_media_from_url is cleaned up\n\t& > div:not([data-comment-badge='true'], [data-media-badges='true']) {\n\t\tposition: ", ";\n\t\theight: 100%;\n\t\twidth: 100%;\n\t}\n\n\t& * [data-mark-annotation-type='inlineComment'] {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t}\n\n\t&[data-node-type='embedCard'] > div {\n\t\twidth: 100%;\n\t}\n\n\t/* Renderer */\n\t[data-node-type='media'] {\n\t\tposition: static !important;\n\n\t\t> div {\n\t\t\tposition: absolute;\n\t\t\theight: 100%;\n\t\t}\n\t}\n"])), RenderFallbackContainer(props), props.hasFallbackContainer ? 'absolute' : 'relative', props.hasFallbackContainer ? 'absolute' : 'relative');
|
|
205
205
|
};
|
|
206
206
|
export var MediaWrapper = function MediaWrapper(_ref3) {
|
|
207
207
|
var children = _ref3.children,
|
|
@@ -4,6 +4,10 @@ import { ACTION, ACTION_SUBJECT, EVENT_TYPE } from '../analytics';
|
|
|
4
4
|
import { sanitizeNodeForPrivacy } from './filter/privacy-filter';
|
|
5
5
|
import { findAndTrackUnsupportedContentNodes } from './track-unsupported-content';
|
|
6
6
|
import { validateADFEntity } from './validate-using-spec';
|
|
7
|
+
export function processRawValueWithoutTransformation(schema, value) {
|
|
8
|
+
var parsedDoc = Node.fromJSON(schema, value);
|
|
9
|
+
return parsedDoc;
|
|
10
|
+
}
|
|
7
11
|
export function processRawValue(schema, value, providerFactory, sanitizePrivateContent, contentTransformer, dispatchAnalyticsEvent) {
|
|
8
12
|
if (!value) {
|
|
9
13
|
return;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
import type { EmojiResourceConfig } from '@atlaskit/emoji/resource';
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import type { EmojiProvider, EmojiResourceConfig } from '@atlaskit/emoji/resource';
|
|
3
3
|
import type { EmojiId } from '@atlaskit/emoji/types';
|
|
4
4
|
import { ProviderFactory } from '../../provider-factory';
|
|
5
5
|
export interface EmojiProps extends EmojiId {
|
|
@@ -8,15 +8,7 @@ export interface EmojiProps extends EmojiId {
|
|
|
8
8
|
fitToHeight?: number;
|
|
9
9
|
showTooltip?: boolean;
|
|
10
10
|
resourceConfig?: EmojiResourceConfig;
|
|
11
|
+
emojiProvider?: EmojiProvider;
|
|
11
12
|
}
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
static defaultProps: {
|
|
15
|
-
showTooltip: boolean;
|
|
16
|
-
};
|
|
17
|
-
private providerFactory;
|
|
18
|
-
constructor(props: EmojiProps);
|
|
19
|
-
componentWillUnmount(): void;
|
|
20
|
-
private renderWithProvider;
|
|
21
|
-
render(): JSX.Element;
|
|
22
|
-
}
|
|
13
|
+
declare const EmojiNode: (props: EmojiProps) => JSX.Element;
|
|
14
|
+
export default EmojiNode;
|
|
@@ -3,4 +3,5 @@ import { Node } from '@atlaskit/editor-prosemirror/model';
|
|
|
3
3
|
import type { DispatchAnalyticsEvent } from '../analytics';
|
|
4
4
|
import type { ProviderFactory } from '../provider-factory';
|
|
5
5
|
import type { ReplaceRawValue, Transformer } from '../types';
|
|
6
|
+
export declare function processRawValueWithoutTransformation(schema: Schema, value?: ReplaceRawValue): Node;
|
|
6
7
|
export declare function processRawValue(schema: Schema, value?: ReplaceRawValue, providerFactory?: ProviderFactory, sanitizePrivateContent?: boolean, contentTransformer?: Transformer<string>, dispatchAnalyticsEvent?: DispatchAnalyticsEvent): Node | undefined;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
import type { EmojiResourceConfig } from '@atlaskit/emoji/resource';
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import type { EmojiProvider, EmojiResourceConfig } from '@atlaskit/emoji/resource';
|
|
3
3
|
import type { EmojiId } from '@atlaskit/emoji/types';
|
|
4
4
|
import { ProviderFactory } from '../../provider-factory';
|
|
5
5
|
export interface EmojiProps extends EmojiId {
|
|
@@ -8,15 +8,7 @@ export interface EmojiProps extends EmojiId {
|
|
|
8
8
|
fitToHeight?: number;
|
|
9
9
|
showTooltip?: boolean;
|
|
10
10
|
resourceConfig?: EmojiResourceConfig;
|
|
11
|
+
emojiProvider?: EmojiProvider;
|
|
11
12
|
}
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
static defaultProps: {
|
|
15
|
-
showTooltip: boolean;
|
|
16
|
-
};
|
|
17
|
-
private providerFactory;
|
|
18
|
-
constructor(props: EmojiProps);
|
|
19
|
-
componentWillUnmount(): void;
|
|
20
|
-
private renderWithProvider;
|
|
21
|
-
render(): JSX.Element;
|
|
22
|
-
}
|
|
13
|
+
declare const EmojiNode: (props: EmojiProps) => JSX.Element;
|
|
14
|
+
export default EmojiNode;
|
|
@@ -3,4 +3,5 @@ import { Node } from '@atlaskit/editor-prosemirror/model';
|
|
|
3
3
|
import type { DispatchAnalyticsEvent } from '../analytics';
|
|
4
4
|
import type { ProviderFactory } from '../provider-factory';
|
|
5
5
|
import type { ReplaceRawValue, Transformer } from '../types';
|
|
6
|
+
export declare function processRawValueWithoutTransformation(schema: Schema, value?: ReplaceRawValue): Node;
|
|
6
7
|
export declare function processRawValue(schema: Schema, value?: ReplaceRawValue, providerFactory?: ProviderFactory, sanitizePrivateContent?: boolean, contentTransformer?: Transformer<string>, dispatchAnalyticsEvent?: DispatchAnalyticsEvent): Node | undefined;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/editor-common",
|
|
3
|
-
"version": "89.
|
|
3
|
+
"version": "89.2.0",
|
|
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/"
|
|
@@ -150,7 +150,7 @@
|
|
|
150
150
|
"@atlaskit/textfield": "^6.5.0",
|
|
151
151
|
"@atlaskit/theme": "^13.0.0",
|
|
152
152
|
"@atlaskit/tmp-editor-statsig": "*",
|
|
153
|
-
"@atlaskit/tokens": "^1.
|
|
153
|
+
"@atlaskit/tokens": "^1.60.0",
|
|
154
154
|
"@atlaskit/tooltip": "^18.7.0",
|
|
155
155
|
"@atlaskit/ufo": "^0.3.0",
|
|
156
156
|
"@atlaskit/width-detector": "^4.3.0",
|
|
@@ -287,6 +287,9 @@
|
|
|
287
287
|
},
|
|
288
288
|
"platform_editor_allow_annotation_triple_click": {
|
|
289
289
|
"type": "boolean"
|
|
290
|
+
},
|
|
291
|
+
"platform_editor_get_emoji_provider_from_config": {
|
|
292
|
+
"type": "boolean"
|
|
290
293
|
}
|
|
291
294
|
}
|
|
292
295
|
}
|