@atlaskit/editor-plugin-emoji 11.2.5 → 11.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# @atlaskit/editor-plugin-emoji
|
|
2
2
|
|
|
3
|
+
## 11.3.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies
|
|
8
|
+
|
|
9
|
+
## 11.3.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- [`81637ec91afd1`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/81637ec91afd1) -
|
|
14
|
+
Represent standard emojis as native Unicode characters instead of images. Updates
|
|
15
|
+
EmojiNodeDataProvider to support Unicode representations.
|
|
16
|
+
|
|
17
|
+
### Patch Changes
|
|
18
|
+
|
|
19
|
+
- Updated dependencies
|
|
20
|
+
|
|
3
21
|
## 11.2.5
|
|
4
22
|
|
|
5
23
|
### Patch Changes
|
|
@@ -15,7 +15,9 @@ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits
|
|
|
15
15
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
16
|
var _coreUtils = require("@atlaskit/editor-common/core-utils");
|
|
17
17
|
var _emoji = require("@atlaskit/emoji");
|
|
18
|
+
var _emojiIdToEmoji = require("@atlaskit/emoji/emoji-id-to-emoji");
|
|
18
19
|
var _nodeDataProvider = require("@atlaskit/node-data-provider");
|
|
20
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
19
21
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
20
22
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
21
23
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
|
|
@@ -96,6 +98,26 @@ var EmojiNodeDataProvider = exports.EmojiNodeDataProvider = /*#__PURE__*/functio
|
|
|
96
98
|
break;
|
|
97
99
|
}
|
|
98
100
|
return _context2.abrupt("return", nodes.map(function (node) {
|
|
101
|
+
if ((0, _platformFeatureFlags.fg)('platform_twemoji_removal_unicode_emojis')) {
|
|
102
|
+
// Skip SSR for nodes without an Id
|
|
103
|
+
if (!node.attrs.id) {
|
|
104
|
+
return undefined;
|
|
105
|
+
}
|
|
106
|
+
var unicodeEmoji = (0, _emojiIdToEmoji.emojiIdToEmoji)(node.attrs.id);
|
|
107
|
+
if (unicodeEmoji) {
|
|
108
|
+
return {
|
|
109
|
+
id: node.attrs.id,
|
|
110
|
+
shortName: node.attrs.shortName,
|
|
111
|
+
fallback: node.attrs.text,
|
|
112
|
+
representation: {
|
|
113
|
+
unicodeEmoji: unicodeEmoji
|
|
114
|
+
},
|
|
115
|
+
searchable: true,
|
|
116
|
+
type: '',
|
|
117
|
+
category: ''
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
}
|
|
99
121
|
var emojiId = {
|
|
100
122
|
id: node.attrs.id,
|
|
101
123
|
shortName: node.attrs.shortName,
|
|
@@ -125,7 +147,7 @@ var EmojiNodeDataProvider = exports.EmojiNodeDataProvider = /*#__PURE__*/functio
|
|
|
125
147
|
emojiProvider = _context2.sent;
|
|
126
148
|
fetches = nodes.map( /*#__PURE__*/function () {
|
|
127
149
|
var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(node) {
|
|
128
|
-
var emojiId, result, optimisticImageURL;
|
|
150
|
+
var emojiId, result, unicodeEmoji, optimisticImageURL;
|
|
129
151
|
return _regenerator.default.wrap(function (_context) {
|
|
130
152
|
while (1) switch (_context.prev = _context.next) {
|
|
131
153
|
case 0:
|
|
@@ -138,13 +160,28 @@ var EmojiNodeDataProvider = exports.EmojiNodeDataProvider = /*#__PURE__*/functio
|
|
|
138
160
|
return emojiProvider.fetchByEmojiId(emojiId, true);
|
|
139
161
|
case 1:
|
|
140
162
|
result = _context.sent;
|
|
141
|
-
if (!(
|
|
163
|
+
if (!(node.attrs.id && result && (0, _platformFeatureFlags.fg)('platform_twemoji_removal_unicode_emojis'))) {
|
|
164
|
+
_context.next = 2;
|
|
165
|
+
break;
|
|
166
|
+
}
|
|
167
|
+
unicodeEmoji = (0, _emojiIdToEmoji.emojiIdToEmoji)(node.attrs.id);
|
|
168
|
+
if (!unicodeEmoji) {
|
|
142
169
|
_context.next = 2;
|
|
143
170
|
break;
|
|
144
171
|
}
|
|
172
|
+
return _context.abrupt("return", _objectSpread(_objectSpread({}, result), {}, {
|
|
173
|
+
representation: {
|
|
174
|
+
unicodeEmoji: unicodeEmoji
|
|
175
|
+
}
|
|
176
|
+
}));
|
|
177
|
+
case 2:
|
|
178
|
+
if (!(getOptimisticImageUrl && result)) {
|
|
179
|
+
_context.next = 3;
|
|
180
|
+
break;
|
|
181
|
+
}
|
|
145
182
|
optimisticImageURL = getOptimisticImageUrl(emojiId);
|
|
146
183
|
if (!(result.representation && 'imagePath' in result.representation)) {
|
|
147
|
-
_context.next =
|
|
184
|
+
_context.next = 3;
|
|
148
185
|
break;
|
|
149
186
|
}
|
|
150
187
|
return _context.abrupt("return", _objectSpread(_objectSpread({}, result), {}, {
|
|
@@ -152,9 +189,9 @@ var EmojiNodeDataProvider = exports.EmojiNodeDataProvider = /*#__PURE__*/functio
|
|
|
152
189
|
imagePath: optimisticImageURL
|
|
153
190
|
})
|
|
154
191
|
}));
|
|
155
|
-
case 2:
|
|
156
|
-
return _context.abrupt("return", result);
|
|
157
192
|
case 3:
|
|
193
|
+
return _context.abrupt("return", result);
|
|
194
|
+
case 4:
|
|
158
195
|
case "end":
|
|
159
196
|
return _context.stop();
|
|
160
197
|
}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
2
|
import { isSSR } from '@atlaskit/editor-common/core-utils';
|
|
3
3
|
import { defaultEmojiHeight } from '@atlaskit/emoji';
|
|
4
|
+
import { emojiIdToEmoji } from '@atlaskit/emoji/emoji-id-to-emoji';
|
|
4
5
|
import { NodeDataProvider } from '@atlaskit/node-data-provider';
|
|
6
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
5
7
|
export class EmojiNodeDataProvider extends NodeDataProvider {
|
|
6
8
|
constructor(resource) {
|
|
7
9
|
super();
|
|
@@ -55,6 +57,26 @@ export class EmojiNodeDataProvider extends NodeDataProvider {
|
|
|
55
57
|
const getOptimisticImageUrl = (_this$emojiResource$e = this.emojiResource.emojiProviderConfig.optimisticImageApi) === null || _this$emojiResource$e === void 0 ? void 0 : _this$emojiResource$e.getUrl;
|
|
56
58
|
if (isSSR() && getOptimisticImageUrl) {
|
|
57
59
|
return nodes.map(node => {
|
|
60
|
+
if (fg('platform_twemoji_removal_unicode_emojis')) {
|
|
61
|
+
// Skip SSR for nodes without an Id
|
|
62
|
+
if (!node.attrs.id) {
|
|
63
|
+
return undefined;
|
|
64
|
+
}
|
|
65
|
+
const unicodeEmoji = emojiIdToEmoji(node.attrs.id);
|
|
66
|
+
if (unicodeEmoji) {
|
|
67
|
+
return {
|
|
68
|
+
id: node.attrs.id,
|
|
69
|
+
shortName: node.attrs.shortName,
|
|
70
|
+
fallback: node.attrs.text,
|
|
71
|
+
representation: {
|
|
72
|
+
unicodeEmoji
|
|
73
|
+
},
|
|
74
|
+
searchable: true,
|
|
75
|
+
type: '',
|
|
76
|
+
category: ''
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
}
|
|
58
80
|
const emojiId = {
|
|
59
81
|
id: node.attrs.id,
|
|
60
82
|
shortName: node.attrs.shortName,
|
|
@@ -92,6 +114,20 @@ export class EmojiNodeDataProvider extends NodeDataProvider {
|
|
|
92
114
|
// This usually fast because the emojiProvider already has all emojis fetched.
|
|
93
115
|
const result = await emojiProvider.fetchByEmojiId(emojiId, true);
|
|
94
116
|
|
|
117
|
+
// For STANDARD emojis, return a UnicodeRepresentation so they are rendered
|
|
118
|
+
// as native text characters rather than images (twemoji removal).
|
|
119
|
+
if (node.attrs.id && result && fg('platform_twemoji_removal_unicode_emojis')) {
|
|
120
|
+
const unicodeEmoji = emojiIdToEmoji(node.attrs.id);
|
|
121
|
+
if (unicodeEmoji) {
|
|
122
|
+
return {
|
|
123
|
+
...result,
|
|
124
|
+
representation: {
|
|
125
|
+
unicodeEmoji
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
|
|
95
131
|
// If we have optimisticImageApi, we need to path response and set URL from it to match the URL used in SSR.
|
|
96
132
|
if (getOptimisticImageUrl && result) {
|
|
97
133
|
const optimisticImageURL = getOptimisticImageUrl(emojiId);
|
|
@@ -12,7 +12,9 @@ function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstruct
|
|
|
12
12
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
13
13
|
import { isSSR } from '@atlaskit/editor-common/core-utils';
|
|
14
14
|
import { defaultEmojiHeight } from '@atlaskit/emoji';
|
|
15
|
+
import { emojiIdToEmoji } from '@atlaskit/emoji/emoji-id-to-emoji';
|
|
15
16
|
import { NodeDataProvider } from '@atlaskit/node-data-provider';
|
|
17
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
16
18
|
export var EmojiNodeDataProvider = /*#__PURE__*/function (_NodeDataProvider) {
|
|
17
19
|
function EmojiNodeDataProvider(resource) {
|
|
18
20
|
var _this;
|
|
@@ -89,6 +91,26 @@ export var EmojiNodeDataProvider = /*#__PURE__*/function (_NodeDataProvider) {
|
|
|
89
91
|
break;
|
|
90
92
|
}
|
|
91
93
|
return _context2.abrupt("return", nodes.map(function (node) {
|
|
94
|
+
if (fg('platform_twemoji_removal_unicode_emojis')) {
|
|
95
|
+
// Skip SSR for nodes without an Id
|
|
96
|
+
if (!node.attrs.id) {
|
|
97
|
+
return undefined;
|
|
98
|
+
}
|
|
99
|
+
var unicodeEmoji = emojiIdToEmoji(node.attrs.id);
|
|
100
|
+
if (unicodeEmoji) {
|
|
101
|
+
return {
|
|
102
|
+
id: node.attrs.id,
|
|
103
|
+
shortName: node.attrs.shortName,
|
|
104
|
+
fallback: node.attrs.text,
|
|
105
|
+
representation: {
|
|
106
|
+
unicodeEmoji: unicodeEmoji
|
|
107
|
+
},
|
|
108
|
+
searchable: true,
|
|
109
|
+
type: '',
|
|
110
|
+
category: ''
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
}
|
|
92
114
|
var emojiId = {
|
|
93
115
|
id: node.attrs.id,
|
|
94
116
|
shortName: node.attrs.shortName,
|
|
@@ -118,7 +140,7 @@ export var EmojiNodeDataProvider = /*#__PURE__*/function (_NodeDataProvider) {
|
|
|
118
140
|
emojiProvider = _context2.sent;
|
|
119
141
|
fetches = nodes.map( /*#__PURE__*/function () {
|
|
120
142
|
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(node) {
|
|
121
|
-
var emojiId, result, optimisticImageURL;
|
|
143
|
+
var emojiId, result, unicodeEmoji, optimisticImageURL;
|
|
122
144
|
return _regeneratorRuntime.wrap(function (_context) {
|
|
123
145
|
while (1) switch (_context.prev = _context.next) {
|
|
124
146
|
case 0:
|
|
@@ -131,13 +153,28 @@ export var EmojiNodeDataProvider = /*#__PURE__*/function (_NodeDataProvider) {
|
|
|
131
153
|
return emojiProvider.fetchByEmojiId(emojiId, true);
|
|
132
154
|
case 1:
|
|
133
155
|
result = _context.sent;
|
|
134
|
-
if (!(
|
|
156
|
+
if (!(node.attrs.id && result && fg('platform_twemoji_removal_unicode_emojis'))) {
|
|
157
|
+
_context.next = 2;
|
|
158
|
+
break;
|
|
159
|
+
}
|
|
160
|
+
unicodeEmoji = emojiIdToEmoji(node.attrs.id);
|
|
161
|
+
if (!unicodeEmoji) {
|
|
135
162
|
_context.next = 2;
|
|
136
163
|
break;
|
|
137
164
|
}
|
|
165
|
+
return _context.abrupt("return", _objectSpread(_objectSpread({}, result), {}, {
|
|
166
|
+
representation: {
|
|
167
|
+
unicodeEmoji: unicodeEmoji
|
|
168
|
+
}
|
|
169
|
+
}));
|
|
170
|
+
case 2:
|
|
171
|
+
if (!(getOptimisticImageUrl && result)) {
|
|
172
|
+
_context.next = 3;
|
|
173
|
+
break;
|
|
174
|
+
}
|
|
138
175
|
optimisticImageURL = getOptimisticImageUrl(emojiId);
|
|
139
176
|
if (!(result.representation && 'imagePath' in result.representation)) {
|
|
140
|
-
_context.next =
|
|
177
|
+
_context.next = 3;
|
|
141
178
|
break;
|
|
142
179
|
}
|
|
143
180
|
return _context.abrupt("return", _objectSpread(_objectSpread({}, result), {}, {
|
|
@@ -145,9 +182,9 @@ export var EmojiNodeDataProvider = /*#__PURE__*/function (_NodeDataProvider) {
|
|
|
145
182
|
imagePath: optimisticImageURL
|
|
146
183
|
})
|
|
147
184
|
}));
|
|
148
|
-
case 2:
|
|
149
|
-
return _context.abrupt("return", result);
|
|
150
185
|
case 3:
|
|
186
|
+
return _context.abrupt("return", result);
|
|
187
|
+
case 4:
|
|
151
188
|
case "end":
|
|
152
189
|
return _context.stop();
|
|
153
190
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/editor-plugin-emoji",
|
|
3
|
-
"version": "11.
|
|
3
|
+
"version": "11.3.1",
|
|
4
4
|
"description": "Emoji plugin for @atlaskit/editor-core",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -32,12 +32,12 @@
|
|
|
32
32
|
"@atlaskit/editor-plugin-type-ahead": "^10.3.0",
|
|
33
33
|
"@atlaskit/editor-prosemirror": "^7.3.0",
|
|
34
34
|
"@atlaskit/editor-shared-styles": "^3.11.0",
|
|
35
|
-
"@atlaskit/emoji": "^70.
|
|
35
|
+
"@atlaskit/emoji": "^70.14.0",
|
|
36
36
|
"@atlaskit/icon": "^35.3.0",
|
|
37
37
|
"@atlaskit/node-data-provider": "^11.1.0",
|
|
38
38
|
"@atlaskit/platform-feature-flags": "^1.1.0",
|
|
39
39
|
"@atlaskit/prosemirror-input-rules": "^3.7.0",
|
|
40
|
-
"@atlaskit/tmp-editor-statsig": "^
|
|
40
|
+
"@atlaskit/tmp-editor-statsig": "^86.0.0",
|
|
41
41
|
"@atlaskit/tokens": "^13.1.0",
|
|
42
42
|
"@babel/runtime": "^7.0.0",
|
|
43
43
|
"@emotion/react": "^11.7.1",
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"react-loadable": "^5.1.0"
|
|
46
46
|
},
|
|
47
47
|
"peerDependencies": {
|
|
48
|
-
"@atlaskit/editor-common": "^114.
|
|
48
|
+
"@atlaskit/editor-common": "^114.54.0",
|
|
49
49
|
"react": "^18.2.0",
|
|
50
50
|
"react-dom": "^18.2.0",
|
|
51
51
|
"react-intl": "^5.25.1 || ^6.0.0 || ^7.0.0"
|
|
@@ -107,6 +107,9 @@
|
|
|
107
107
|
},
|
|
108
108
|
"platform_editor_adf_with_localid": {
|
|
109
109
|
"type": "boolean"
|
|
110
|
+
},
|
|
111
|
+
"platform_twemoji_removal_unicode_emojis": {
|
|
112
|
+
"type": "boolean"
|
|
110
113
|
}
|
|
111
114
|
}
|
|
112
115
|
}
|