@atlaskit/emoji 67.3.1 → 67.4.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 +17 -0
- package/dist/cjs/api/EmojiRepository.js +2 -0
- package/dist/cjs/api/EmojiResource.js +184 -191
- package/dist/cjs/api/media/SiteEmojiResource.js +24 -26
- package/dist/cjs/components/common/Emoji.js +1 -1
- package/dist/cjs/components/common/EmojiDeletePreview.js +1 -1
- package/dist/cjs/components/common/EmojiUploadPicker.js +18 -20
- package/dist/cjs/components/common/EmojiUploadPreview.js +1 -1
- package/dist/cjs/components/common/ResourcedEmoji.js +1 -1
- package/dist/cjs/components/common/ResourcedEmojiComponent.js +48 -50
- package/dist/cjs/components/common/Scrollable.js +3 -1
- package/dist/cjs/components/common/ToneSelector.js +1 -1
- package/dist/cjs/components/common/UfoErrorBoundary.js +1 -1
- package/dist/cjs/components/common/internal-types.js +4 -4
- package/dist/cjs/components/picker/EmojiPicker.js +4 -5
- package/dist/cjs/components/picker/EmojiPickerComponent.js +1 -1
- package/dist/cjs/components/picker/EmojiPickerList.js +17 -1
- package/dist/cjs/components/picker/EmojiPickerVirtualItems.js +1 -1
- package/dist/cjs/components/picker/VirtualList.js +1 -1
- package/dist/cjs/components/typeahead/EmojiTypeAhead.js +3 -4
- package/dist/cjs/components/typeahead/EmojiTypeAheadComponent.js +1 -1
- package/dist/cjs/components/typeahead/EmojiTypeAheadItem.js +2 -1
- package/dist/cjs/components/typeahead/EmojiTypeAheadList.js +2 -3
- package/dist/cjs/components/uploader/EmojiUploadComponent.js +36 -38
- package/dist/cjs/components/uploader/EmojiUploader.js +3 -4
- package/dist/cjs/context/EmojiContextProvider.js +15 -17
- package/dist/cjs/hooks/useEmoji.js +17 -19
- package/dist/cjs/types.js +28 -28
- package/dist/cjs/util/StoredDuplicateLimitedQueue.js +3 -0
- package/dist/cjs/util/analytics/samplingUfo.js +65 -73
- package/dist/cjs/util/constants.js +8 -8
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/api/EmojiRepository.js +2 -0
- package/dist/es2019/api/EmojiResource.js +3 -0
- package/dist/es2019/components/common/ResourcedEmojiComponent.js +3 -3
- package/dist/es2019/components/common/Scrollable.js +1 -0
- package/dist/es2019/components/common/internal-types.js +3 -3
- package/dist/es2019/components/picker/EmojiPicker.js +2 -3
- package/dist/es2019/components/picker/EmojiPickerList.js +16 -0
- package/dist/es2019/components/typeahead/EmojiTypeAhead.js +2 -3
- package/dist/es2019/components/typeahead/EmojiTypeAheadItem.js +1 -0
- package/dist/es2019/components/typeahead/EmojiTypeAheadList.js +1 -3
- package/dist/es2019/components/uploader/EmojiUploader.js +2 -3
- package/dist/es2019/types.js +21 -21
- package/dist/es2019/util/constants.js +8 -8
- package/dist/es2019/version.json +1 -1
- package/dist/esm/api/EmojiRepository.js +2 -0
- package/dist/esm/api/EmojiResource.js +184 -191
- package/dist/esm/api/media/SiteEmojiResource.js +24 -26
- package/dist/esm/components/common/EmojiUploadPicker.js +18 -20
- package/dist/esm/components/common/ResourcedEmojiComponent.js +48 -50
- package/dist/esm/components/common/Scrollable.js +1 -0
- package/dist/esm/components/common/UfoErrorBoundary.js +1 -1
- package/dist/esm/components/common/internal-types.js +3 -3
- package/dist/esm/components/picker/EmojiPicker.js +2 -3
- package/dist/esm/components/picker/EmojiPickerList.js +16 -0
- package/dist/esm/components/typeahead/EmojiTypeAhead.js +2 -3
- package/dist/esm/components/typeahead/EmojiTypeAheadComponent.js +1 -1
- package/dist/esm/components/typeahead/EmojiTypeAheadItem.js +1 -0
- package/dist/esm/components/typeahead/EmojiTypeAheadList.js +1 -2
- package/dist/esm/components/uploader/EmojiUploadComponent.js +36 -38
- package/dist/esm/components/uploader/EmojiUploader.js +2 -3
- package/dist/esm/context/EmojiContextProvider.js +15 -17
- package/dist/esm/hooks/useEmoji.js +17 -19
- package/dist/esm/types.js +21 -21
- package/dist/esm/util/analytics/samplingUfo.js +65 -73
- package/dist/esm/util/constants.js +8 -8
- package/dist/esm/version.json +1 -1
- package/package.json +18 -18
|
@@ -13,12 +13,12 @@ import EmojiPlaceholder from './EmojiPlaceholder';
|
|
|
13
13
|
import { sampledUfoRenderedEmoji } from '../../util/analytics';
|
|
14
14
|
import { EmojiCommonProvider } from '../../context/EmojiCommonProvider';
|
|
15
15
|
import { hasUfoMarked } from '../../util/analytics/ufoExperiences';
|
|
16
|
-
var ResourcedEmojiComponentRenderStatesEnum
|
|
17
|
-
(function (ResourcedEmojiComponentRenderStatesEnum) {
|
|
16
|
+
var ResourcedEmojiComponentRenderStatesEnum = /*#__PURE__*/function (ResourcedEmojiComponentRenderStatesEnum) {
|
|
18
17
|
ResourcedEmojiComponentRenderStatesEnum["INITIAL"] = "INITIAL";
|
|
19
18
|
ResourcedEmojiComponentRenderStatesEnum["FALLBACK"] = "FALLBACK";
|
|
20
19
|
ResourcedEmojiComponentRenderStatesEnum["EMOJI"] = "EMOJI";
|
|
21
|
-
|
|
20
|
+
return ResourcedEmojiComponentRenderStatesEnum;
|
|
21
|
+
}(ResourcedEmojiComponentRenderStatesEnum || {});
|
|
22
22
|
export var ResourcedEmojiComponent = function ResourcedEmojiComponent(props) {
|
|
23
23
|
var emojiProvider = props.emojiProvider,
|
|
24
24
|
emojiId = props.emojiId,
|
|
@@ -57,45 +57,29 @@ export var ResourcedEmojiComponent = function ResourcedEmojiComponent(props) {
|
|
|
57
57
|
foundEmoji,
|
|
58
58
|
_args = arguments;
|
|
59
59
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
60
|
-
while (1) {
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
// emoji is undefined
|
|
81
|
-
sampledUfoRenderedEmoji(emojiId).failure({
|
|
82
|
-
metadata: {
|
|
83
|
-
reason: 'failed to find',
|
|
84
|
-
source: 'ResourcedEmojiComponent',
|
|
85
|
-
data: {
|
|
86
|
-
emoji: {
|
|
87
|
-
id: emojiId.id,
|
|
88
|
-
shortName: emojiId.shortName
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
}).catch(function () {
|
|
95
|
-
setEmoji(undefined);
|
|
60
|
+
while (1) switch (_context.prev = _context.next) {
|
|
61
|
+
case 0:
|
|
62
|
+
optimisticFetch = _args.length > 2 && _args[2] !== undefined ? _args[2] : false;
|
|
63
|
+
if (!_emojiProvider.fetchByEmojiId) {
|
|
64
|
+
setEmoji(undefined);
|
|
65
|
+
sampledUfoRenderedEmoji(emojiId).failure({
|
|
66
|
+
metadata: {
|
|
67
|
+
reason: 'missing fetchByEmojiId interface',
|
|
68
|
+
source: 'ResourcedEmojiComponent'
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
foundEmoji = _emojiProvider.fetchByEmojiId(emojiId, optimisticFetch);
|
|
73
|
+
sampledUfoRenderedEmoji(emojiId).mark(UfoEmojiTimings.METADATA_START);
|
|
74
|
+
if (isPromise(foundEmoji)) {
|
|
75
|
+
setLoaded(false);
|
|
76
|
+
foundEmoji.then(function (emoji) {
|
|
77
|
+
setEmoji(emoji);
|
|
78
|
+
if (!emoji) {
|
|
79
|
+
// emoji is undefined
|
|
96
80
|
sampledUfoRenderedEmoji(emojiId).failure({
|
|
97
81
|
metadata: {
|
|
98
|
-
reason: 'failed to
|
|
82
|
+
reason: 'failed to find',
|
|
99
83
|
source: 'ResourcedEmojiComponent',
|
|
100
84
|
data: {
|
|
101
85
|
emoji: {
|
|
@@ -105,19 +89,33 @@ export var ResourcedEmojiComponent = function ResourcedEmojiComponent(props) {
|
|
|
105
89
|
}
|
|
106
90
|
}
|
|
107
91
|
});
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
|
|
92
|
+
}
|
|
93
|
+
}).catch(function () {
|
|
94
|
+
setEmoji(undefined);
|
|
95
|
+
sampledUfoRenderedEmoji(emojiId).failure({
|
|
96
|
+
metadata: {
|
|
97
|
+
reason: 'failed to load',
|
|
98
|
+
source: 'ResourcedEmojiComponent',
|
|
99
|
+
data: {
|
|
100
|
+
emoji: {
|
|
101
|
+
id: emojiId.id,
|
|
102
|
+
shortName: emojiId.shortName
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
111
106
|
});
|
|
112
|
-
}
|
|
113
|
-
setEmoji(foundEmoji);
|
|
107
|
+
}).finally(function () {
|
|
114
108
|
setLoaded(true);
|
|
115
109
|
sampledUfoRenderedEmoji(emojiId).mark(UfoEmojiTimings.METADATA_END);
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
110
|
+
});
|
|
111
|
+
} else {
|
|
112
|
+
setEmoji(foundEmoji);
|
|
113
|
+
setLoaded(true);
|
|
114
|
+
sampledUfoRenderedEmoji(emojiId).mark(UfoEmojiTimings.METADATA_END);
|
|
115
|
+
}
|
|
116
|
+
case 5:
|
|
117
|
+
case "end":
|
|
118
|
+
return _context.stop();
|
|
121
119
|
}
|
|
122
120
|
}, _callee);
|
|
123
121
|
}));
|
|
@@ -25,6 +25,7 @@ var Scrollable = /*#__PURE__*/function (_PureComponent) {
|
|
|
25
25
|
}
|
|
26
26
|
_this = _super.call.apply(_super, [this].concat(args));
|
|
27
27
|
_defineProperty(_assertThisInitialized(_this), "scrollableDiv", null);
|
|
28
|
+
// API
|
|
28
29
|
_defineProperty(_assertThisInitialized(_this), "reveal", function (child, forceToTop) {
|
|
29
30
|
if (child && _this.scrollableDiv) {
|
|
30
31
|
var childNode = findDOMNode(child);
|
|
@@ -5,7 +5,7 @@ import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstruct
|
|
|
5
5
|
import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
|
|
6
6
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
7
7
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
8
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++)
|
|
8
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
9
9
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
10
10
|
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; } }
|
|
11
11
|
import React from 'react';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export var UploadStatus
|
|
2
|
-
(function (UploadStatus) {
|
|
1
|
+
export var UploadStatus = /*#__PURE__*/function (UploadStatus) {
|
|
3
2
|
UploadStatus[UploadStatus["Waiting"] = 0] = "Waiting";
|
|
4
3
|
UploadStatus[UploadStatus["Uploading"] = 1] = "Uploading";
|
|
5
4
|
UploadStatus[UploadStatus["Error"] = 2] = "Error";
|
|
6
|
-
|
|
5
|
+
return UploadStatus;
|
|
6
|
+
}({});
|
|
@@ -31,9 +31,6 @@ var emojiPickerLoader = function emojiPickerLoader() {
|
|
|
31
31
|
export var EmojiPickerInternal = /*#__PURE__*/function (_LoadingEmojiComponen) {
|
|
32
32
|
_inherits(EmojiPickerInternal, _LoadingEmojiComponen);
|
|
33
33
|
var _super = _createSuper(EmojiPickerInternal);
|
|
34
|
-
// state initialised with static component to prevent
|
|
35
|
-
// rerender when the module has already been loaded
|
|
36
|
-
|
|
37
34
|
function EmojiPickerInternal(props) {
|
|
38
35
|
var _this;
|
|
39
36
|
_classCallCheck(this, EmojiPickerInternal);
|
|
@@ -84,6 +81,8 @@ export var EmojiPickerInternal = /*#__PURE__*/function (_LoadingEmojiComponen) {
|
|
|
84
81
|
}]);
|
|
85
82
|
return EmojiPickerInternal;
|
|
86
83
|
}(LoadingEmojiComponent);
|
|
84
|
+
// state initialised with static component to prevent
|
|
85
|
+
// rerender when the module has already been loaded
|
|
87
86
|
_defineProperty(EmojiPickerInternal, "defaultProps", {
|
|
88
87
|
size: defaultEmojiPickerSize
|
|
89
88
|
});
|
|
@@ -30,6 +30,11 @@ import { EmojiPickerListContextProvider } from '../../context/EmojiPickerListCon
|
|
|
30
30
|
*/
|
|
31
31
|
export var RENDER_EMOJI_PICKER_LIST_TESTID = 'render-emoji-picker-list';
|
|
32
32
|
var categoryClassname = 'emoji-category';
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Emoji grouped by a category title ie. Frequent, Your Uploads, All Uploads
|
|
36
|
+
*/
|
|
37
|
+
|
|
33
38
|
var byOrder = function byOrder(orderableA, orderableB) {
|
|
34
39
|
return (orderableA.order || 0) - (orderableB.order || 0);
|
|
35
40
|
};
|
|
@@ -229,6 +234,12 @@ var EmojiPickerVirtualListInternal = /*#__PURE__*/function (_PureComponent2) {
|
|
|
229
234
|
}
|
|
230
235
|
return category;
|
|
231
236
|
});
|
|
237
|
+
/**
|
|
238
|
+
* onRowsRendered callback function
|
|
239
|
+
*
|
|
240
|
+
* Check the category of top of rendered row and inform category selector to change active category
|
|
241
|
+
* Rove index of emoji picker list
|
|
242
|
+
*/
|
|
232
243
|
_defineProperty(_assertThisInitialized(_this), "onRowsRendered", function (indexes) {
|
|
233
244
|
var startIndex = indexes.startIndex;
|
|
234
245
|
var rowItem = _this.virtualItems[startIndex];
|
|
@@ -259,6 +270,11 @@ var EmojiPickerVirtualListInternal = /*#__PURE__*/function (_PureComponent2) {
|
|
|
259
270
|
_defineProperty(_assertThisInitialized(_this), "renderRow", function (context) {
|
|
260
271
|
return virtualItemRenderer(_this.virtualItems, context);
|
|
261
272
|
});
|
|
273
|
+
/**
|
|
274
|
+
* After deleting emoji, we'll update the focus index to the first emoji of last row of your uploads, so when user navigate back focus will still work
|
|
275
|
+
* if last emoji in your uploads is deleted, the updated focus index will be outdated, as there will be no your uploads section
|
|
276
|
+
* however, it'll trigger onChange from VirtualList, which will update focus index automatically for us
|
|
277
|
+
*/
|
|
262
278
|
_defineProperty(_assertThisInitialized(_this), "handleOnCloseDelete", function () {
|
|
263
279
|
var list = _this.listRef.current;
|
|
264
280
|
list === null || list === void 0 ? void 0 : list.updateFocusIndex(_this.lastYourUploadsRow);
|
|
@@ -25,13 +25,12 @@ var emojiTypeAheadComponentLoader = function emojiTypeAheadComponentLoader() {
|
|
|
25
25
|
var EmojiTypeahead = /*#__PURE__*/function (_LoadingEmojiComponen) {
|
|
26
26
|
_inherits(EmojiTypeahead, _LoadingEmojiComponen);
|
|
27
27
|
var _super = _createSuper(EmojiTypeahead);
|
|
28
|
-
// state initialised with static component to prevent
|
|
29
|
-
// rerender when the module has already been loaded
|
|
30
|
-
|
|
31
28
|
function EmojiTypeahead(props) {
|
|
32
29
|
var _this;
|
|
33
30
|
_classCallCheck(this, EmojiTypeahead);
|
|
34
31
|
_this = _super.call(this, props, {});
|
|
32
|
+
// state initialised with static component to prevent
|
|
33
|
+
// rerender when the module has already been loaded
|
|
35
34
|
_defineProperty(_assertThisInitialized(_this), "state", {
|
|
36
35
|
asyncLoadedComponent: EmojiTypeahead.AsyncLoadedComponent
|
|
37
36
|
});
|
|
@@ -9,7 +9,7 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
|
|
|
9
9
|
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; } }
|
|
10
10
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
11
11
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
12
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++)
|
|
12
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
13
13
|
/** @jsx jsx */
|
|
14
14
|
import { PureComponent } from 'react';
|
|
15
15
|
import uuid from 'uuid';
|
|
@@ -26,6 +26,7 @@ var EmojiTypeAheadItem = /*#__PURE__*/function (_PureComponent) {
|
|
|
26
26
|
args[_key] = arguments[_key];
|
|
27
27
|
}
|
|
28
28
|
_this = _super.call.apply(_super, [this].concat(args));
|
|
29
|
+
// internal, used for callbacks
|
|
29
30
|
_defineProperty(_assertThisInitialized(_this), "onEmojiSelected", function (event) {
|
|
30
31
|
var _this$props = _this.props,
|
|
31
32
|
emoji = _this$props.emoji,
|
|
@@ -43,6 +43,7 @@ var EmojiTypeAheadList = /*#__PURE__*/function (_PureComponent) {
|
|
|
43
43
|
var _this;
|
|
44
44
|
_classCallCheck(this, EmojiTypeAheadList);
|
|
45
45
|
_this = _super.call(this, props);
|
|
46
|
+
// API
|
|
46
47
|
_defineProperty(_assertThisInitialized(_this), "selectNext", function () {
|
|
47
48
|
var newIndex = wrapIndex(_this.props.emojis, _this.state.selectedIndex + 1);
|
|
48
49
|
_this.selectIndex(newIndex);
|
|
@@ -118,8 +119,6 @@ var EmojiTypeAheadList = /*#__PURE__*/function (_PureComponent) {
|
|
|
118
119
|
this.revealItem(selectedEmoji.id || selectedEmoji.shortName);
|
|
119
120
|
}
|
|
120
121
|
}
|
|
121
|
-
|
|
122
|
-
// API
|
|
123
122
|
}, {
|
|
124
123
|
key: "revealItem",
|
|
125
124
|
value:
|
|
@@ -39,46 +39,44 @@ var EmojiUploadComponent = function EmojiUploadComponent(props) {
|
|
|
39
39
|
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(upload, retry, onSuccessHandler) {
|
|
40
40
|
var errorSetter, message;
|
|
41
41
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
42
|
-
while (1) {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
if (!supportsUploadFeature(emojiProvider)) {
|
|
50
|
-
_context.next = 16;
|
|
51
|
-
break;
|
|
52
|
-
}
|
|
53
|
-
fireAnalytics(uploadConfirmButton({
|
|
54
|
-
retry: retry
|
|
55
|
-
}));
|
|
56
|
-
_context.prev = 4;
|
|
57
|
-
_context.next = 7;
|
|
58
|
-
return emojiProvider.prepareForUpload();
|
|
59
|
-
case 7:
|
|
60
|
-
errorSetter = function errorSetter(message) {
|
|
61
|
-
setUploadErrorMessage(message);
|
|
62
|
-
}; // internally handled error from upload callback
|
|
63
|
-
uploadEmoji(upload, emojiProvider, errorSetter, onUploaded(onSuccessHandler), fireAnalytics, retry);
|
|
42
|
+
while (1) switch (_context.prev = _context.next) {
|
|
43
|
+
case 0:
|
|
44
|
+
ufoExperiences['emoji-uploaded'].start();
|
|
45
|
+
ufoExperiences['emoji-uploaded'].addMetadata({
|
|
46
|
+
retry: retry
|
|
47
|
+
});
|
|
48
|
+
if (!supportsUploadFeature(emojiProvider)) {
|
|
64
49
|
_context.next = 16;
|
|
65
50
|
break;
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
51
|
+
}
|
|
52
|
+
fireAnalytics(uploadConfirmButton({
|
|
53
|
+
retry: retry
|
|
54
|
+
}));
|
|
55
|
+
_context.prev = 4;
|
|
56
|
+
_context.next = 7;
|
|
57
|
+
return emojiProvider.prepareForUpload();
|
|
58
|
+
case 7:
|
|
59
|
+
errorSetter = function errorSetter(message) {
|
|
60
|
+
setUploadErrorMessage(message);
|
|
61
|
+
}; // internally handled error from upload callback
|
|
62
|
+
uploadEmoji(upload, emojiProvider, errorSetter, onUploaded(onSuccessHandler), fireAnalytics, retry);
|
|
63
|
+
_context.next = 16;
|
|
64
|
+
break;
|
|
65
|
+
case 11:
|
|
66
|
+
_context.prev = 11;
|
|
67
|
+
_context.t0 = _context["catch"](4);
|
|
68
|
+
// error from upload token generation
|
|
69
|
+
message = _context.t0 instanceof Error ? _context.t0.message : 'Issue with generating upload token';
|
|
70
|
+
ufoExperiences['emoji-uploaded'].failure({
|
|
71
|
+
metadata: {
|
|
72
|
+
source: 'EmojiUploadComponent',
|
|
73
|
+
error: message
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
setUploadErrorMessage(messages.emojiUploadFailed);
|
|
77
|
+
case 16:
|
|
78
|
+
case "end":
|
|
79
|
+
return _context.stop();
|
|
82
80
|
}
|
|
83
81
|
}, _callee, null, [[4, 11]]);
|
|
84
82
|
}));
|
|
@@ -24,13 +24,12 @@ var emojiUploadLoader = function emojiUploadLoader() {
|
|
|
24
24
|
export var EmojiUploaderInternal = /*#__PURE__*/function (_LoadingEmojiComponen) {
|
|
25
25
|
_inherits(EmojiUploaderInternal, _LoadingEmojiComponen);
|
|
26
26
|
var _super = _createSuper(EmojiUploaderInternal);
|
|
27
|
-
// state initialised with static component to prevent
|
|
28
|
-
// rerender when the module has already been loaded
|
|
29
|
-
|
|
30
27
|
function EmojiUploaderInternal(props) {
|
|
31
28
|
var _this;
|
|
32
29
|
_classCallCheck(this, EmojiUploaderInternal);
|
|
33
30
|
_this = _super.call(this, props, {});
|
|
31
|
+
// state initialised with static component to prevent
|
|
32
|
+
// rerender when the module has already been loaded
|
|
34
33
|
_defineProperty(_assertThisInitialized(_this), "state", {
|
|
35
34
|
asyncLoadedComponent: EmojiUploaderInternal.AsyncLoadedComponent
|
|
36
35
|
});
|
|
@@ -17,23 +17,21 @@ export var EmojiContextProvider = function EmojiContextProvider(_ref) {
|
|
|
17
17
|
function _fetchEmojiProvider() {
|
|
18
18
|
_fetchEmojiProvider = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
19
19
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
20
|
-
while (1) {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
return _context.stop();
|
|
36
|
-
}
|
|
20
|
+
while (1) switch (_context.prev = _context.next) {
|
|
21
|
+
case 0:
|
|
22
|
+
_context.prev = 0;
|
|
23
|
+
_context.next = 3;
|
|
24
|
+
return memoizedEmojiContextValue === null || memoizedEmojiContextValue === void 0 ? void 0 : memoizedEmojiContextValue.emoji.emojiProvider.fetchEmojiProvider();
|
|
25
|
+
case 3:
|
|
26
|
+
_context.next = 8;
|
|
27
|
+
break;
|
|
28
|
+
case 5:
|
|
29
|
+
_context.prev = 5;
|
|
30
|
+
_context.t0 = _context["catch"](0);
|
|
31
|
+
debug('fetchEmojiProvider error catched from outside', _context.t0);
|
|
32
|
+
case 8:
|
|
33
|
+
case "end":
|
|
34
|
+
return _context.stop();
|
|
37
35
|
}
|
|
38
36
|
}, _callee, null, [[0, 5]]);
|
|
39
37
|
}));
|
|
@@ -25,25 +25,23 @@ export var useEmoji = function useEmoji() {
|
|
|
25
25
|
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
26
26
|
var supported;
|
|
27
27
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
28
|
-
while (1) {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
return _context.stop();
|
|
46
|
-
}
|
|
28
|
+
while (1) switch (_context.prev = _context.next) {
|
|
29
|
+
case 0:
|
|
30
|
+
_context.prev = 0;
|
|
31
|
+
_context.next = 3;
|
|
32
|
+
return emojiProvider.isUploadSupported();
|
|
33
|
+
case 3:
|
|
34
|
+
supported = _context.sent;
|
|
35
|
+
setIsUploadSupported(supported);
|
|
36
|
+
_context.next = 10;
|
|
37
|
+
break;
|
|
38
|
+
case 7:
|
|
39
|
+
_context.prev = 7;
|
|
40
|
+
_context.t0 = _context["catch"](0);
|
|
41
|
+
return _context.abrupt("return", false);
|
|
42
|
+
case 10:
|
|
43
|
+
case "end":
|
|
44
|
+
return _context.stop();
|
|
47
45
|
}
|
|
48
46
|
}, _callee, null, [[0, 7]]);
|
|
49
47
|
}));
|
package/dist/esm/types.js
CHANGED
|
@@ -28,50 +28,49 @@
|
|
|
28
28
|
* The expected response from an Emoji service.
|
|
29
29
|
*/
|
|
30
30
|
|
|
31
|
-
export var SearchSort
|
|
32
|
-
(function (SearchSort) {
|
|
31
|
+
export var SearchSort = /*#__PURE__*/function (SearchSort) {
|
|
33
32
|
SearchSort[SearchSort["None"] = 0] = "None";
|
|
34
33
|
SearchSort[SearchSort["Default"] = 1] = "Default";
|
|
35
34
|
SearchSort[SearchSort["UsageFrequency"] = 2] = "UsageFrequency";
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
35
|
+
return SearchSort;
|
|
36
|
+
}({});
|
|
37
|
+
export var SearchSourceTypes = /*#__PURE__*/function (SearchSourceTypes) {
|
|
39
38
|
SearchSourceTypes["PICKER"] = "picker";
|
|
40
39
|
SearchSourceTypes["TYPEAHEAD"] = "typeahead";
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
40
|
+
return SearchSourceTypes;
|
|
41
|
+
}({});
|
|
42
|
+
export var ProviderTypes = /*#__PURE__*/function (ProviderTypes) {
|
|
44
43
|
ProviderTypes["SITE"] = "SITE";
|
|
45
44
|
ProviderTypes["STANDARD"] = "STANDARD";
|
|
46
45
|
ProviderTypes["ATLASSIAN"] = "ATLASSIAN";
|
|
47
46
|
ProviderTypes["UNKNOWN"] = "UNKNOWN";
|
|
48
47
|
ProviderTypes["SINGLE"] = "SINGLE";
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
48
|
+
return ProviderTypes;
|
|
49
|
+
}({});
|
|
50
|
+
export var UfoExperienceName = /*#__PURE__*/function (UfoExperienceName) {
|
|
52
51
|
UfoExperienceName["EMOJI_RENDERED"] = "emoji-rendered";
|
|
53
52
|
UfoExperienceName["EMOJI_RESOURCE_FETCHED"] = "emoji-resource-fetched";
|
|
54
53
|
UfoExperienceName["EMOJI_PICKER_OPENED"] = "emoji-picker-opened";
|
|
55
54
|
UfoExperienceName["EMOJI_SELECTION_RECORDED"] = "emoji-selection-recorded";
|
|
56
55
|
UfoExperienceName["EMOJI_UPLOADED"] = "emoji-uploaded";
|
|
57
56
|
UfoExperienceName["EMOJI_SEARCHED"] = "emoji-searched";
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
57
|
+
return UfoExperienceName;
|
|
58
|
+
}({});
|
|
59
|
+
export var UfoComponentName = /*#__PURE__*/function (UfoComponentName) {
|
|
61
60
|
UfoComponentName["EMOJI"] = "emoji";
|
|
62
61
|
UfoComponentName["EMOJI_PICKER"] = "emoji-picker";
|
|
63
62
|
UfoComponentName["EMOJI_PROVIDER"] = "emoji-provider";
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
63
|
+
return UfoComponentName;
|
|
64
|
+
}({});
|
|
65
|
+
export var UfoEmojiTimingsKeys = /*#__PURE__*/function (UfoEmojiTimingsKeys) {
|
|
67
66
|
UfoEmojiTimingsKeys["FMP"] = "fmp";
|
|
68
67
|
UfoEmojiTimingsKeys["MOUNTED"] = "emoji-mount";
|
|
69
68
|
UfoEmojiTimingsKeys["METADATA"] = "emoji-metadata";
|
|
70
69
|
UfoEmojiTimingsKeys["MEDIADATA"] = "emoji-media";
|
|
71
70
|
UfoEmojiTimingsKeys["ONLOAD"] = "emoji-onload";
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
71
|
+
return UfoEmojiTimingsKeys;
|
|
72
|
+
}({});
|
|
73
|
+
export var UfoEmojiTimings = /*#__PURE__*/function (UfoEmojiTimings) {
|
|
75
74
|
UfoEmojiTimings["FMP_END"] = "fmp";
|
|
76
75
|
UfoEmojiTimings["MOUNTED_END"] = "emoji-mount_end";
|
|
77
76
|
UfoEmojiTimings["METADATA_START"] = "emoji-metadata_start";
|
|
@@ -80,4 +79,5 @@ export var UfoEmojiTimings;
|
|
|
80
79
|
UfoEmojiTimings["MEDIA_END"] = "emoji-media_end";
|
|
81
80
|
UfoEmojiTimings["ONLOAD_START"] = "emoji-onload_start";
|
|
82
81
|
UfoEmojiTimings["ONLOAD_END"] = "emoji-onload_end";
|
|
83
|
-
|
|
82
|
+
return UfoEmojiTimings;
|
|
83
|
+
}({});
|