@atlaskit/emoji 67.0.4 → 67.0.6
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 +12 -0
- package/dist/cjs/admin.js +0 -2
- package/dist/cjs/api/EmojiLoader.js +1 -8
- package/dist/cjs/api/EmojiRepository.js +16 -80
- package/dist/cjs/api/EmojiRepositoryRegex.js +2 -0
- package/dist/cjs/api/EmojiResource.js +20 -170
- package/dist/cjs/api/EmojiUtils.js +27 -67
- package/dist/cjs/api/internal/Comparators.js +8 -62
- package/dist/cjs/api/internal/UsageFrequencyTracker.js +4 -34
- package/dist/cjs/api/media/MediaEmojiCache.js +8 -58
- package/dist/cjs/api/media/MediaImageLoader.js +4 -28
- package/dist/cjs/api/media/SiteEmojiResource.js +14 -55
- package/dist/cjs/api/media/TokenManager.js +4 -18
- package/dist/cjs/components/common/CachingEmoji.js +18 -52
- package/dist/cjs/components/common/DeleteButton.js +0 -10
- package/dist/cjs/components/common/Emoji.js +44 -102
- package/dist/cjs/components/common/EmojiActions.js +25 -61
- package/dist/cjs/components/common/EmojiButton.js +5 -18
- package/dist/cjs/components/common/EmojiDeletePreview.js +7 -38
- package/dist/cjs/components/common/EmojiErrorMessage.js +3 -9
- package/dist/cjs/components/common/EmojiPlaceholder.js +7 -16
- package/dist/cjs/components/common/EmojiPreviewComponent.js +1 -6
- package/dist/cjs/components/common/EmojiUploadPicker.js +31 -86
- package/dist/cjs/components/common/EmojiUploadPreview.js +7 -36
- package/dist/cjs/components/common/FileChooser.js +5 -18
- package/dist/cjs/components/common/LoadingEmojiComponent.js +5 -24
- package/dist/cjs/components/common/Popup.js +16 -44
- package/dist/cjs/components/common/RecordSelectionDefault.js +0 -7
- package/dist/cjs/components/common/ResourcedEmoji.js +0 -15
- package/dist/cjs/components/common/ResourcedEmojiComponent.js +29 -69
- package/dist/cjs/components/common/RetryableButton.js +4 -19
- package/dist/cjs/components/common/Scrollable.js +6 -36
- package/dist/cjs/components/common/ToneSelector.js +3 -24
- package/dist/cjs/components/common/UfoErrorBoundary.js +1 -19
- package/dist/cjs/components/common/UploadEmoji.js +2 -13
- package/dist/cjs/components/common/internal-types.js +0 -1
- package/dist/cjs/components/common/setSkinToneAriaLabelText.js +0 -6
- package/dist/cjs/components/common/styles.js +9 -17
- package/dist/cjs/components/hooks.js +0 -2
- package/dist/cjs/components/i18n.js +0 -2
- package/dist/cjs/components/picker/CategorySelector.js +4 -50
- package/dist/cjs/components/picker/CategoryTracker.js +3 -14
- package/dist/cjs/components/picker/EmojiPicker.js +3 -42
- package/dist/cjs/components/picker/EmojiPickerCategoryHeading.js +2 -10
- package/dist/cjs/components/picker/EmojiPickerComponent.js +59 -140
- package/dist/cjs/components/picker/EmojiPickerEmojiRow.js +7 -14
- package/dist/cjs/components/picker/EmojiPickerFooter.js +1 -8
- package/dist/cjs/components/picker/EmojiPickerList.js +32 -83
- package/dist/cjs/components/picker/EmojiPickerListSearch.js +11 -48
- package/dist/cjs/components/picker/EmojiPickerSizes.js +1 -2
- package/dist/cjs/components/picker/EmojiPickerVirtualItems.js +1 -38
- package/dist/cjs/components/picker/VirtualList.js +11 -41
- package/dist/cjs/components/picker/categories.js +0 -14
- package/dist/cjs/components/picker/styles.js +15 -20
- package/dist/cjs/components/picker/utils.js +0 -4
- package/dist/cjs/components/typeahead/EmojiTypeAhead.js +10 -45
- package/dist/cjs/components/typeahead/EmojiTypeAheadComponent.js +11 -74
- package/dist/cjs/components/typeahead/EmojiTypeAheadItem.js +7 -37
- package/dist/cjs/components/typeahead/EmojiTypeAheadList.js +10 -63
- package/dist/cjs/components/typeahead/styles.js +2 -4
- package/dist/cjs/components/uploader/EmojiUploadComponent.js +6 -42
- package/dist/cjs/components/uploader/EmojiUploader.js +3 -31
- package/dist/cjs/components/uploader/styles.js +3 -4
- package/dist/cjs/context/EmojiCommonProvider.js +0 -6
- package/dist/cjs/context/EmojiContext.js +0 -2
- package/dist/cjs/context/EmojiContextProvider.js +1 -17
- package/dist/cjs/element.js +0 -4
- package/dist/cjs/hooks/useEmoji.js +5 -20
- package/dist/cjs/hooks/useEmojiContext.js +0 -4
- package/dist/cjs/hooks/usePrevious.js +0 -2
- package/dist/cjs/i18n/cs.js +0 -1
- package/dist/cjs/i18n/da.js +0 -1
- package/dist/cjs/i18n/de.js +0 -1
- package/dist/cjs/i18n/en.js +0 -1
- package/dist/cjs/i18n/en_GB.js +0 -1
- package/dist/cjs/i18n/en_ZZ.js +0 -1
- package/dist/cjs/i18n/es.js +0 -1
- package/dist/cjs/i18n/et.js +0 -1
- package/dist/cjs/i18n/fi.js +0 -1
- package/dist/cjs/i18n/fr.js +0 -1
- package/dist/cjs/i18n/hu.js +0 -1
- package/dist/cjs/i18n/index.js +0 -30
- package/dist/cjs/i18n/it.js +0 -1
- package/dist/cjs/i18n/ja.js +0 -1
- package/dist/cjs/i18n/ko.js +0 -1
- package/dist/cjs/i18n/nb.js +0 -1
- package/dist/cjs/i18n/nl.js +0 -1
- package/dist/cjs/i18n/pl.js +0 -1
- package/dist/cjs/i18n/pt_BR.js +0 -1
- package/dist/cjs/i18n/pt_PT.js +0 -1
- package/dist/cjs/i18n/ru.js +0 -1
- package/dist/cjs/i18n/sk.js +0 -1
- package/dist/cjs/i18n/sv.js +0 -1
- package/dist/cjs/i18n/th.js +0 -1
- package/dist/cjs/i18n/tr.js +0 -1
- package/dist/cjs/i18n/uk.js +0 -1
- package/dist/cjs/i18n/vi.js +0 -1
- package/dist/cjs/i18n/zh.js +0 -1
- package/dist/cjs/i18n/zh_TW.js +0 -1
- package/dist/cjs/index.js +0 -24
- package/dist/cjs/picker.js +0 -2
- package/dist/cjs/resource.js +0 -5
- package/dist/cjs/typeahead.js +0 -3
- package/dist/cjs/types.js +0 -17
- package/dist/cjs/util/DuplicateLimitedQueue.js +13 -31
- package/dist/cjs/util/StoredDuplicateLimitedQueue.js +4 -26
- package/dist/cjs/util/analytics/analytics.js +14 -97
- package/dist/cjs/util/analytics/index.js +0 -4
- package/dist/cjs/util/analytics/samplingUfo.js +3 -59
- package/dist/cjs/util/analytics/ufoExperiences.js +0 -12
- package/dist/cjs/util/analytics/useSampledUFOComponentExperience.js +3 -10
- package/dist/cjs/util/constants.js +5 -5
- package/dist/cjs/util/filters.js +0 -4
- package/dist/cjs/util/image.js +3 -18
- package/dist/cjs/util/logger.js +0 -6
- package/dist/cjs/util/mouse.js +3 -6
- package/dist/cjs/util/shared-styles.js +0 -4
- package/dist/cjs/util/storage-available.js +10 -8
- package/dist/cjs/util/type-helpers.js +2 -57
- package/dist/cjs/util/useInView.js +0 -6
- package/dist/cjs/utils.js +0 -3
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/api/EmojiLoader.js +2 -4
- package/dist/es2019/api/EmojiRepository.js +15 -82
- package/dist/es2019/api/EmojiRepositoryRegex.js +2 -0
- package/dist/es2019/api/EmojiResource.js +21 -114
- package/dist/es2019/api/EmojiUtils.js +11 -18
- package/dist/es2019/api/internal/Comparators.js +12 -48
- package/dist/es2019/api/internal/UsageFrequencyTracker.js +7 -24
- package/dist/es2019/api/media/MediaEmojiCache.js +9 -52
- package/dist/es2019/api/media/MediaImageLoader.js +2 -16
- package/dist/es2019/api/media/SiteEmojiResource.js +11 -31
- package/dist/es2019/api/media/TokenManager.js +4 -14
- package/dist/es2019/components/common/CachingEmoji.js +5 -12
- package/dist/es2019/components/common/DeleteButton.js +2 -3
- package/dist/es2019/components/common/Emoji.js +19 -47
- package/dist/es2019/components/common/EmojiActions.js +3 -16
- package/dist/es2019/components/common/EmojiButton.js +0 -5
- package/dist/es2019/components/common/EmojiDeletePreview.js +0 -11
- package/dist/es2019/components/common/EmojiErrorMessage.js +1 -2
- package/dist/es2019/components/common/EmojiPlaceholder.js +0 -5
- package/dist/es2019/components/common/EmojiPreviewComponent.js +1 -0
- package/dist/es2019/components/common/EmojiUploadPicker.js +2 -25
- package/dist/es2019/components/common/EmojiUploadPreview.js +0 -6
- package/dist/es2019/components/common/FileChooser.js +0 -6
- package/dist/es2019/components/common/LoadingEmojiComponent.js +2 -14
- package/dist/es2019/components/common/Popup.js +4 -22
- package/dist/es2019/components/common/RecordSelectionDefault.js +1 -1
- package/dist/es2019/components/common/ResourcedEmoji.js +1 -6
- package/dist/es2019/components/common/ResourcedEmojiComponent.js +2 -13
- package/dist/es2019/components/common/RetryableButton.js +1 -8
- package/dist/es2019/components/common/Scrollable.js +2 -12
- package/dist/es2019/components/common/ToneSelector.js +2 -8
- package/dist/es2019/components/common/UfoErrorBoundary.js +0 -2
- package/dist/es2019/components/common/UploadEmoji.js +2 -3
- package/dist/es2019/components/common/internal-types.js +0 -1
- package/dist/es2019/components/common/styles.js +12 -8
- package/dist/es2019/components/picker/CategorySelector.js +0 -22
- package/dist/es2019/components/picker/CategoryTracker.js +3 -13
- package/dist/es2019/components/picker/EmojiPicker.js +3 -17
- package/dist/es2019/components/picker/EmojiPickerCategoryHeading.js +2 -3
- package/dist/es2019/components/picker/EmojiPickerComponent.js +10 -43
- package/dist/es2019/components/picker/EmojiPickerEmojiRow.js +0 -2
- package/dist/es2019/components/picker/EmojiPickerFooter.js +0 -2
- package/dist/es2019/components/picker/EmojiPickerList.js +10 -45
- package/dist/es2019/components/picker/EmojiPickerListSearch.js +2 -19
- package/dist/es2019/components/picker/EmojiPickerSizes.js +1 -0
- package/dist/es2019/components/picker/EmojiPickerVirtualItems.js +1 -8
- package/dist/es2019/components/picker/VirtualList.js +3 -24
- package/dist/es2019/components/picker/styles.js +22 -10
- package/dist/es2019/components/picker/utils.js +0 -1
- package/dist/es2019/components/typeahead/EmojiTypeAhead.js +4 -21
- package/dist/es2019/components/typeahead/EmojiTypeAheadComponent.js +0 -42
- package/dist/es2019/components/typeahead/EmojiTypeAheadItem.js +0 -7
- package/dist/es2019/components/typeahead/EmojiTypeAheadList.js +4 -45
- package/dist/es2019/components/typeahead/styles.js +2 -1
- package/dist/es2019/components/uploader/EmojiUploadComponent.js +2 -15
- package/dist/es2019/components/uploader/EmojiUploader.js +2 -10
- package/dist/es2019/components/uploader/styles.js +5 -2
- package/dist/es2019/context/EmojiCommonProvider.js +0 -2
- package/dist/es2019/context/EmojiContextProvider.js +0 -1
- package/dist/es2019/hooks/useEmoji.js +2 -6
- package/dist/es2019/hooks/useEmojiContext.js +1 -1
- package/dist/es2019/index.js +12 -6
- package/dist/es2019/types.js +1 -11
- package/dist/es2019/util/DuplicateLimitedQueue.js +13 -35
- package/dist/es2019/util/StoredDuplicateLimitedQueue.js +5 -12
- package/dist/es2019/util/analytics/analytics.js +7 -23
- package/dist/es2019/util/analytics/samplingUfo.js +6 -32
- package/dist/es2019/util/analytics/ufoExperiences.js +0 -3
- package/dist/es2019/util/analytics/useSampledUFOComponentExperience.js +3 -7
- package/dist/es2019/util/constants.js +5 -4
- package/dist/es2019/util/filters.js +0 -3
- package/dist/es2019/util/image.js +3 -8
- package/dist/es2019/util/mouse.js +3 -3
- package/dist/es2019/util/storage-available.js +10 -7
- package/dist/es2019/util/type-helpers.js +6 -9
- package/dist/es2019/util/useInView.js +0 -2
- package/dist/es2019/version.json +1 -1
- package/dist/esm/api/EmojiLoader.js +2 -6
- package/dist/esm/api/EmojiRepository.js +16 -71
- package/dist/esm/api/EmojiRepositoryRegex.js +2 -0
- package/dist/esm/api/EmojiResource.js +20 -158
- package/dist/esm/api/EmojiUtils.js +27 -47
- package/dist/esm/api/internal/Comparators.js +12 -53
- package/dist/esm/api/internal/UsageFrequencyTracker.js +5 -29
- package/dist/esm/api/media/MediaEmojiCache.js +9 -55
- package/dist/esm/api/media/MediaImageLoader.js +4 -27
- package/dist/esm/api/media/SiteEmojiResource.js +14 -43
- package/dist/esm/api/media/TokenManager.js +6 -16
- package/dist/esm/components/common/CachingEmoji.js +18 -30
- package/dist/esm/components/common/DeleteButton.js +2 -3
- package/dist/esm/components/common/Emoji.js +44 -78
- package/dist/esm/components/common/EmojiActions.js +25 -40
- package/dist/esm/components/common/EmojiButton.js +4 -9
- package/dist/esm/components/common/EmojiDeletePreview.js +7 -24
- package/dist/esm/components/common/EmojiErrorMessage.js +3 -4
- package/dist/esm/components/common/EmojiPlaceholder.js +6 -11
- package/dist/esm/components/common/EmojiPreviewComponent.js +1 -0
- package/dist/esm/components/common/EmojiUploadPicker.js +30 -64
- package/dist/esm/components/common/EmojiUploadPreview.js +7 -19
- package/dist/esm/components/common/FileChooser.js +5 -11
- package/dist/esm/components/common/LoadingEmojiComponent.js +4 -20
- package/dist/esm/components/common/Popup.js +16 -36
- package/dist/esm/components/common/RecordSelectionDefault.js +1 -1
- package/dist/esm/components/common/ResourcedEmoji.js +1 -6
- package/dist/esm/components/common/ResourcedEmojiComponent.js +29 -51
- package/dist/esm/components/common/RetryableButton.js +4 -11
- package/dist/esm/components/common/Scrollable.js +6 -29
- package/dist/esm/components/common/ToneSelector.js +3 -13
- package/dist/esm/components/common/UfoErrorBoundary.js +1 -13
- package/dist/esm/components/common/UploadEmoji.js +2 -3
- package/dist/esm/components/common/internal-types.js +0 -1
- package/dist/esm/components/common/setSkinToneAriaLabelText.js +0 -2
- package/dist/esm/components/common/styles.js +12 -9
- package/dist/esm/components/picker/CategorySelector.js +4 -32
- package/dist/esm/components/picker/CategoryTracker.js +3 -13
- package/dist/esm/components/picker/EmojiPicker.js +5 -27
- package/dist/esm/components/picker/EmojiPickerCategoryHeading.js +4 -5
- package/dist/esm/components/picker/EmojiPickerComponent.js +60 -114
- package/dist/esm/components/picker/EmojiPickerEmojiRow.js +6 -8
- package/dist/esm/components/picker/EmojiPickerFooter.js +0 -2
- package/dist/esm/components/picker/EmojiPickerList.js +32 -77
- package/dist/esm/components/picker/EmojiPickerListSearch.js +11 -35
- package/dist/esm/components/picker/EmojiPickerSizes.js +1 -0
- package/dist/esm/components/picker/EmojiPickerVirtualItems.js +2 -26
- package/dist/esm/components/picker/VirtualList.js +11 -28
- package/dist/esm/components/picker/styles.js +22 -11
- package/dist/esm/components/picker/utils.js +0 -1
- package/dist/esm/components/typeahead/EmojiTypeAhead.js +11 -39
- package/dist/esm/components/typeahead/EmojiTypeAheadComponent.js +11 -65
- package/dist/esm/components/typeahead/EmojiTypeAheadItem.js +7 -24
- package/dist/esm/components/typeahead/EmojiTypeAheadList.js +10 -53
- package/dist/esm/components/typeahead/styles.js +2 -1
- package/dist/esm/components/uploader/EmojiUploadComponent.js +5 -25
- package/dist/esm/components/uploader/EmojiUploader.js +4 -22
- package/dist/esm/components/uploader/styles.js +5 -2
- package/dist/esm/context/EmojiCommonProvider.js +0 -2
- package/dist/esm/context/EmojiContextProvider.js +1 -6
- package/dist/esm/hooks/useEmoji.js +5 -13
- package/dist/esm/hooks/useEmojiContext.js +1 -1
- package/dist/esm/index.js +12 -6
- package/dist/esm/types.js +1 -11
- package/dist/esm/util/DuplicateLimitedQueue.js +13 -29
- package/dist/esm/util/StoredDuplicateLimitedQueue.js +5 -22
- package/dist/esm/util/analytics/analytics.js +14 -50
- package/dist/esm/util/analytics/samplingUfo.js +3 -51
- package/dist/esm/util/analytics/ufoExperiences.js +0 -3
- package/dist/esm/util/analytics/useSampledUFOComponentExperience.js +3 -7
- package/dist/esm/util/constants.js +5 -4
- package/dist/esm/util/filters.js +0 -3
- package/dist/esm/util/image.js +3 -8
- package/dist/esm/util/logger.js +0 -2
- package/dist/esm/util/mouse.js +3 -3
- package/dist/esm/util/storage-available.js +10 -7
- package/dist/esm/util/type-helpers.js +2 -12
- package/dist/esm/util/useInView.js +0 -2
- package/dist/esm/version.json +1 -1
- package/package.json +6 -4
|
@@ -1,57 +1,35 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports.uploadEmojiNameInputTestId = exports.default = void 0;
|
|
11
|
-
|
|
12
9
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
13
|
-
|
|
14
10
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
15
|
-
|
|
16
11
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
17
|
-
|
|
18
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
19
|
-
|
|
20
13
|
var _react2 = require("@emotion/react");
|
|
21
|
-
|
|
22
14
|
var _reactIntlNext = require("react-intl-next");
|
|
23
|
-
|
|
24
15
|
var _textfield = _interopRequireDefault(require("@atlaskit/textfield"));
|
|
25
|
-
|
|
26
16
|
var _cross = _interopRequireDefault(require("@atlaskit/icon/glyph/cross"));
|
|
27
|
-
|
|
28
17
|
var _standardButton = _interopRequireDefault(require("@atlaskit/button/standard-button"));
|
|
29
|
-
|
|
30
18
|
var ImageUtil = _interopRequireWildcard(require("../../util/image"));
|
|
31
|
-
|
|
32
19
|
var _logger = _interopRequireDefault(require("../../util/logger"));
|
|
33
|
-
|
|
34
20
|
var _i18n = require("../i18n");
|
|
35
|
-
|
|
36
21
|
var _EmojiErrorMessage = _interopRequireDefault(require("./EmojiErrorMessage"));
|
|
37
|
-
|
|
38
22
|
var _EmojiUploadPreview = _interopRequireDefault(require("./EmojiUploadPreview"));
|
|
39
|
-
|
|
40
23
|
var _FileChooser = _interopRequireDefault(require("./FileChooser"));
|
|
41
|
-
|
|
42
24
|
var _internalTypes = require("./internal-types");
|
|
43
|
-
|
|
44
25
|
var _styles = require("./styles");
|
|
45
|
-
|
|
46
26
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
47
|
-
|
|
48
27
|
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; }
|
|
49
|
-
|
|
50
28
|
/** @jsx jsx */
|
|
29
|
+
|
|
51
30
|
var uploadEmojiNameInputTestId = 'upload-emoji-name-input';
|
|
52
31
|
exports.uploadEmojiNameInputTestId = uploadEmojiNameInputTestId;
|
|
53
32
|
var disallowedReplacementsMap = new Map([[':', ''], ['!', ''], ['@', ''], ['#', ''], ['%', ''], ['^', ''], ['&', ''], ['*', ''], ['(', ''], [')', ''], [' ', '_']]);
|
|
54
|
-
|
|
55
33
|
var sanitizeName = function sanitizeName(name) {
|
|
56
34
|
// prevent / replace certain characters, allow others
|
|
57
35
|
disallowedReplacementsMap.forEach(function (replaceWith, exclude) {
|
|
@@ -59,33 +37,28 @@ var sanitizeName = function sanitizeName(name) {
|
|
|
59
37
|
});
|
|
60
38
|
return name;
|
|
61
39
|
};
|
|
62
|
-
|
|
63
40
|
var maxNameLength = 50;
|
|
64
|
-
|
|
65
41
|
var toEmojiName = function toEmojiName(uploadName) {
|
|
66
42
|
var name = uploadName.split('_').join(' ');
|
|
67
43
|
return "".concat(name.substr(0, 1).toLocaleUpperCase()).concat(name.substr(1));
|
|
68
44
|
};
|
|
69
|
-
|
|
70
45
|
var ChooseEmojiFile = function ChooseEmojiFile(props) {
|
|
71
46
|
var _props$name = props.name,
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
47
|
+
name = _props$name === void 0 ? '' : _props$name,
|
|
48
|
+
onChooseFile = props.onChooseFile,
|
|
49
|
+
onClick = props.onClick,
|
|
50
|
+
onNameChange = props.onNameChange,
|
|
51
|
+
onUploadCancelled = props.onUploadCancelled,
|
|
52
|
+
errorMessage = props.errorMessage,
|
|
53
|
+
intl = props.intl;
|
|
79
54
|
var formatMessage = intl.formatMessage;
|
|
80
55
|
var disableChooser = !name;
|
|
81
56
|
var fileChooserButtonDescriptionId = 'choose.emoji.file.button.screen.reader.description.id';
|
|
82
|
-
|
|
83
57
|
var onKeyDownHandler = function onKeyDownHandler(event) {
|
|
84
58
|
if (event.key === 'Escape') {
|
|
85
59
|
onUploadCancelled();
|
|
86
60
|
}
|
|
87
61
|
};
|
|
88
|
-
|
|
89
62
|
return (0, _react2.jsx)("div", {
|
|
90
63
|
css: _styles.emojiUpload
|
|
91
64
|
}, (0, _react2.jsx)("div", {
|
|
@@ -140,40 +113,33 @@ var ChooseEmojiFile = function ChooseEmojiFile(props) {
|
|
|
140
113
|
message: errorMessage
|
|
141
114
|
})));
|
|
142
115
|
};
|
|
143
|
-
|
|
144
116
|
var EmojiUploadPicker = function EmojiUploadPicker(props) {
|
|
145
117
|
var errorMessage = props.errorMessage,
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
118
|
+
initialUploadName = props.initialUploadName,
|
|
119
|
+
onUploadEmoji = props.onUploadEmoji,
|
|
120
|
+
onFileChooserClicked = props.onFileChooserClicked,
|
|
121
|
+
onUploadCancelled = props.onUploadCancelled,
|
|
122
|
+
intl = props.intl;
|
|
152
123
|
var _useState = (0, _react.useState)(errorMessage ? _internalTypes.UploadStatus.Error : _internalTypes.UploadStatus.Waiting),
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
124
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
125
|
+
uploadStatus = _useState2[0],
|
|
126
|
+
setUploadStatus = _useState2[1];
|
|
157
127
|
var _useState3 = (0, _react.useState)(),
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
128
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
129
|
+
chooseEmojiErrorMessage = _useState4[0],
|
|
130
|
+
setChooseEmojiErrorMessage = _useState4[1];
|
|
162
131
|
var _useState5 = (0, _react.useState)(initialUploadName && sanitizeName(initialUploadName)),
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
132
|
+
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
133
|
+
name = _useState6[0],
|
|
134
|
+
setName = _useState6[1];
|
|
167
135
|
var _useState7 = (0, _react.useState)(),
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
136
|
+
_useState8 = (0, _slicedToArray2.default)(_useState7, 2),
|
|
137
|
+
filename = _useState8[0],
|
|
138
|
+
setFilename = _useState8[1];
|
|
172
139
|
var _useState9 = (0, _react.useState)(),
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
140
|
+
_useState10 = (0, _slicedToArray2.default)(_useState9, 2),
|
|
141
|
+
previewImage = _useState10[0],
|
|
142
|
+
setPreviewImage = _useState10[1];
|
|
177
143
|
(0, _react.useEffect)(function () {
|
|
178
144
|
if (errorMessage) {
|
|
179
145
|
setUploadStatus(_internalTypes.UploadStatus.Error);
|
|
@@ -189,24 +155,20 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
|
|
|
189
155
|
setName(sanitizeName(initialUploadName));
|
|
190
156
|
}
|
|
191
157
|
}, [initialUploadName]);
|
|
192
|
-
|
|
193
158
|
var onNameChange = function onNameChange(event) {
|
|
194
159
|
var newName = sanitizeName(event.target.value);
|
|
195
|
-
|
|
196
160
|
if (name !== newName) {
|
|
197
161
|
setName(newName);
|
|
198
162
|
}
|
|
199
163
|
};
|
|
200
|
-
|
|
201
164
|
var onAddEmoji = function onAddEmoji() {
|
|
202
165
|
if (uploadStatus === _internalTypes.UploadStatus.Uploading) {
|
|
203
166
|
return;
|
|
204
167
|
}
|
|
205
|
-
|
|
206
168
|
if (filename && name && previewImage) {
|
|
207
169
|
var notifyUpload = function notifyUpload(size) {
|
|
208
170
|
var width = size.width,
|
|
209
|
-
|
|
171
|
+
height = size.height;
|
|
210
172
|
setUploadStatus(_internalTypes.UploadStatus.Uploading);
|
|
211
173
|
onUploadEmoji({
|
|
212
174
|
name: toEmojiName(name),
|
|
@@ -217,13 +179,12 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
|
|
|
217
179
|
height: height
|
|
218
180
|
}, uploadStatus === _internalTypes.UploadStatus.Error, clearUploadPicker);
|
|
219
181
|
};
|
|
220
|
-
|
|
221
182
|
ImageUtil.getNaturalImageSize(previewImage).then(function (size) {
|
|
222
183
|
notifyUpload(size);
|
|
223
184
|
}).catch(function (error) {
|
|
224
|
-
(0, _logger.default)('getNaturalImageSize error', error);
|
|
185
|
+
(0, _logger.default)('getNaturalImageSize error', error);
|
|
186
|
+
// Just set arbitrary size, worse case is it may render
|
|
225
187
|
// in wrong aspect ratio in some circumstances.
|
|
226
|
-
|
|
227
188
|
notifyUpload({
|
|
228
189
|
width: 32,
|
|
229
190
|
height: 32
|
|
@@ -231,13 +192,11 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
|
|
|
231
192
|
});
|
|
232
193
|
}
|
|
233
194
|
};
|
|
234
|
-
|
|
235
195
|
var errorOnUpload = function errorOnUpload(event) {
|
|
236
196
|
(0, _logger.default)('File load error: ', event);
|
|
237
197
|
setChooseEmojiErrorMessage(_i18n.messages.emojiUploadFailed);
|
|
238
198
|
cancelChooseFile();
|
|
239
199
|
};
|
|
240
|
-
|
|
241
200
|
var onFileLoad = function onFileLoad(file) {
|
|
242
201
|
return /*#__PURE__*/function () {
|
|
243
202
|
var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(f) {
|
|
@@ -249,18 +208,15 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
|
|
|
249
208
|
setFilename(file.name);
|
|
250
209
|
_context.next = 4;
|
|
251
210
|
return ImageUtil.parseImage(f.target.result);
|
|
252
|
-
|
|
253
211
|
case 4:
|
|
254
212
|
setPreviewImage(f.target.result);
|
|
255
213
|
_context.next = 11;
|
|
256
214
|
break;
|
|
257
|
-
|
|
258
215
|
case 7:
|
|
259
216
|
_context.prev = 7;
|
|
260
217
|
_context.t0 = _context["catch"](0);
|
|
261
218
|
setChooseEmojiErrorMessage(_i18n.messages.emojiInvalidImage);
|
|
262
219
|
cancelChooseFile();
|
|
263
|
-
|
|
264
220
|
case 11:
|
|
265
221
|
case "end":
|
|
266
222
|
return _context.stop();
|
|
@@ -268,30 +224,24 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
|
|
|
268
224
|
}
|
|
269
225
|
}, _callee, null, [[0, 7]]);
|
|
270
226
|
}));
|
|
271
|
-
|
|
272
227
|
return function (_x) {
|
|
273
228
|
return _ref.apply(this, arguments);
|
|
274
229
|
};
|
|
275
230
|
}();
|
|
276
231
|
};
|
|
277
|
-
|
|
278
232
|
var cancelChooseFile = function cancelChooseFile() {
|
|
279
233
|
setPreviewImage(undefined);
|
|
280
234
|
};
|
|
281
|
-
|
|
282
235
|
var onChooseFile = function onChooseFile(event) {
|
|
283
236
|
var files = event.target.files;
|
|
284
|
-
|
|
285
237
|
if (files.length) {
|
|
286
238
|
var reader = new FileReader();
|
|
287
239
|
var file = files[0];
|
|
288
|
-
|
|
289
240
|
if (ImageUtil.hasFileExceededSize(file)) {
|
|
290
241
|
setChooseEmojiErrorMessage(_i18n.messages.emojiImageTooBig);
|
|
291
242
|
cancelChooseFile();
|
|
292
243
|
return;
|
|
293
244
|
}
|
|
294
|
-
|
|
295
245
|
reader.addEventListener('load', onFileLoad(file));
|
|
296
246
|
reader.addEventListener('abort', errorOnUpload);
|
|
297
247
|
reader.addEventListener('error', errorOnUpload);
|
|
@@ -300,18 +250,15 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
|
|
|
300
250
|
cancelChooseFile();
|
|
301
251
|
}
|
|
302
252
|
};
|
|
303
|
-
|
|
304
253
|
var clearUploadPicker = function clearUploadPicker() {
|
|
305
254
|
setName(undefined);
|
|
306
255
|
setPreviewImage(undefined);
|
|
307
256
|
setUploadStatus(_internalTypes.UploadStatus.Waiting);
|
|
308
257
|
};
|
|
309
|
-
|
|
310
258
|
var cancelUpload = function cancelUpload() {
|
|
311
259
|
clearUploadPicker();
|
|
312
260
|
onUploadCancelled();
|
|
313
261
|
};
|
|
314
|
-
|
|
315
262
|
return (0, _react2.jsx)(_react.default.Fragment, null, name && previewImage ? (0, _react2.jsx)(_EmojiUploadPreview.default, {
|
|
316
263
|
errorMessage: errorMessage,
|
|
317
264
|
name: name,
|
|
@@ -329,7 +276,5 @@ var EmojiUploadPicker = function EmojiUploadPicker(props) {
|
|
|
329
276
|
intl: intl
|
|
330
277
|
}));
|
|
331
278
|
};
|
|
332
|
-
|
|
333
279
|
var _default = (0, _reactIntlNext.injectIntl)(EmojiUploadPicker);
|
|
334
|
-
|
|
335
280
|
exports.default = _default;
|
|
@@ -1,79 +1,53 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.uploadPreviewTestId = exports.default = exports.cancelUploadButtonTestId = void 0;
|
|
9
|
-
|
|
10
8
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
-
|
|
12
9
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
13
|
-
|
|
14
10
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
15
|
-
|
|
16
11
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
17
|
-
|
|
18
12
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
19
|
-
|
|
20
13
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
21
|
-
|
|
22
14
|
var _react = require("react");
|
|
23
|
-
|
|
24
15
|
var _react2 = require("@emotion/react");
|
|
25
|
-
|
|
26
16
|
var _customThemeButton = _interopRequireDefault(require("@atlaskit/button/custom-theme-button"));
|
|
27
|
-
|
|
28
17
|
var _reactIntlNext = require("react-intl-next");
|
|
29
|
-
|
|
30
18
|
var _constants = require("../../util/constants");
|
|
31
|
-
|
|
32
19
|
var _i18n = require("../i18n");
|
|
33
|
-
|
|
34
20
|
var _Emoji = _interopRequireDefault(require("./Emoji"));
|
|
35
|
-
|
|
36
21
|
var _EmojiErrorMessage = _interopRequireDefault(require("./EmojiErrorMessage"));
|
|
37
|
-
|
|
38
22
|
var _internalTypes = require("./internal-types");
|
|
39
|
-
|
|
40
23
|
var _RetryableButton = _interopRequireDefault(require("./RetryableButton"));
|
|
41
|
-
|
|
42
24
|
var _styles = require("./styles");
|
|
43
|
-
|
|
44
25
|
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); }; }
|
|
45
|
-
|
|
46
26
|
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; } }
|
|
47
|
-
|
|
48
27
|
var uploadPreviewTestId = 'upload-preview';
|
|
49
28
|
exports.uploadPreviewTestId = uploadPreviewTestId;
|
|
50
29
|
var cancelUploadButtonTestId = 'cancel-upload-button';
|
|
51
30
|
exports.cancelUploadButtonTestId = cancelUploadButtonTestId;
|
|
52
|
-
|
|
53
31
|
var EmojiUploadPreview = /*#__PURE__*/function (_PureComponent) {
|
|
54
32
|
(0, _inherits2.default)(EmojiUploadPreview, _PureComponent);
|
|
55
|
-
|
|
56
33
|
var _super = _createSuper(EmojiUploadPreview);
|
|
57
|
-
|
|
58
34
|
function EmojiUploadPreview() {
|
|
59
35
|
(0, _classCallCheck2.default)(this, EmojiUploadPreview);
|
|
60
36
|
return _super.apply(this, arguments);
|
|
61
37
|
}
|
|
62
|
-
|
|
63
38
|
(0, _createClass2.default)(EmojiUploadPreview, [{
|
|
64
39
|
key: "render",
|
|
65
40
|
value: function render() {
|
|
66
41
|
var _this$props = this.props,
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
42
|
+
name = _this$props.name,
|
|
43
|
+
previewImage = _this$props.previewImage,
|
|
44
|
+
uploadStatus = _this$props.uploadStatus,
|
|
45
|
+
errorMessage = _this$props.errorMessage,
|
|
46
|
+
onAddEmoji = _this$props.onAddEmoji,
|
|
47
|
+
onUploadCancelled = _this$props.onUploadCancelled,
|
|
48
|
+
intl = _this$props.intl;
|
|
74
49
|
var formatMessage = intl.formatMessage;
|
|
75
50
|
var emojiComponent;
|
|
76
|
-
|
|
77
51
|
if (previewImage) {
|
|
78
52
|
var emoji = {
|
|
79
53
|
shortName: ":".concat(name, ":"),
|
|
@@ -90,7 +64,6 @@ var EmojiUploadPreview = /*#__PURE__*/function (_PureComponent) {
|
|
|
90
64
|
emoji: emoji
|
|
91
65
|
});
|
|
92
66
|
}
|
|
93
|
-
|
|
94
67
|
var uploading = uploadStatus === _internalTypes.UploadStatus.Uploading;
|
|
95
68
|
return (0, _react2.jsx)("div", {
|
|
96
69
|
css: _styles.uploadPreviewFooter
|
|
@@ -128,7 +101,5 @@ var EmojiUploadPreview = /*#__PURE__*/function (_PureComponent) {
|
|
|
128
101
|
}]);
|
|
129
102
|
return EmojiUploadPreview;
|
|
130
103
|
}(_react.PureComponent);
|
|
131
|
-
|
|
132
104
|
var _default = (0, _reactIntlNext.injectIntl)(EmojiUploadPreview);
|
|
133
|
-
|
|
134
105
|
exports.default = _default;
|
|
@@ -1,48 +1,36 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports.fileUploadInputTestId = exports.default = exports.chooseFileButtonTestId = void 0;
|
|
11
|
-
|
|
12
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
-
|
|
14
10
|
var _customThemeButton = _interopRequireDefault(require("@atlaskit/button/custom-theme-button"));
|
|
15
|
-
|
|
16
11
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
17
|
-
|
|
18
12
|
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; }
|
|
19
|
-
|
|
20
13
|
var chooseFileButtonTestId = 'choose-file-button';
|
|
21
14
|
exports.chooseFileButtonTestId = chooseFileButtonTestId;
|
|
22
15
|
var fileUploadInputTestId = 'file-upload';
|
|
23
16
|
exports.fileUploadInputTestId = fileUploadInputTestId;
|
|
24
|
-
|
|
25
17
|
var FileChooser = function FileChooser(props) {
|
|
26
18
|
var accept = props.accept,
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
19
|
+
ariaDescribedBy = props.ariaDescribedBy,
|
|
20
|
+
isDisabled = props.isDisabled,
|
|
21
|
+
label = props.label,
|
|
22
|
+
onChange = props.onChange,
|
|
23
|
+
onClick = props.onClick;
|
|
32
24
|
var filePickerRef = (0, _react.useRef)(null);
|
|
33
|
-
|
|
34
25
|
var handleOnChooseFile = function handleOnChooseFile() {
|
|
35
26
|
if (!filePickerRef.current) {
|
|
36
27
|
return;
|
|
37
28
|
}
|
|
38
|
-
|
|
39
29
|
if (onClick) {
|
|
40
30
|
onClick();
|
|
41
31
|
}
|
|
42
|
-
|
|
43
32
|
filePickerRef.current.click();
|
|
44
33
|
};
|
|
45
|
-
|
|
46
34
|
return /*#__PURE__*/_react.default.createElement("span", null, /*#__PURE__*/_react.default.createElement(_customThemeButton.default, {
|
|
47
35
|
onClick: handleOnChooseFile,
|
|
48
36
|
isDisabled: isDisabled,
|
|
@@ -60,6 +48,5 @@ var FileChooser = function FileChooser(props) {
|
|
|
60
48
|
"data-testid": fileUploadInputTestId
|
|
61
49
|
}));
|
|
62
50
|
};
|
|
63
|
-
|
|
64
51
|
var _default = FileChooser;
|
|
65
52
|
exports.default = _default;
|
|
@@ -1,32 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
|
|
12
9
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
-
|
|
14
10
|
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
15
|
-
|
|
16
11
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
17
|
-
|
|
18
12
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
19
|
-
|
|
20
13
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
21
|
-
|
|
22
14
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
23
|
-
|
|
24
15
|
var _react = require("react");
|
|
25
|
-
|
|
26
16
|
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); }; }
|
|
27
|
-
|
|
28
17
|
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; } }
|
|
29
|
-
|
|
30
18
|
/**
|
|
31
19
|
* A base class for components that don't want to start rendering
|
|
32
20
|
* until the EmojiProvider is resolved.
|
|
@@ -35,26 +23,22 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
|
|
|
35
23
|
*/
|
|
36
24
|
var LoadingEmojiComponent = /*#__PURE__*/function (_Component) {
|
|
37
25
|
(0, _inherits2.default)(LoadingEmojiComponent, _Component);
|
|
38
|
-
|
|
39
26
|
var _super = _createSuper(LoadingEmojiComponent);
|
|
40
|
-
|
|
41
27
|
function LoadingEmojiComponent(props, _state) {
|
|
42
28
|
var _this;
|
|
43
|
-
|
|
44
29
|
(0, _classCallCheck2.default)(this, LoadingEmojiComponent);
|
|
45
30
|
_this = _super.call(this, props);
|
|
46
31
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isUnmounted", false);
|
|
47
32
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "loaded", function (state) {
|
|
48
33
|
return !!state.asyncLoadedComponent && !!state.loadedEmojiProvider;
|
|
49
34
|
});
|
|
50
|
-
_this.state = _state;
|
|
51
|
-
// rerendering if emojiProvider resolves immediately.
|
|
35
|
+
_this.state = _state;
|
|
52
36
|
|
|
37
|
+
// initializing here instead of componentDidMount to avoid needless
|
|
38
|
+
// rerendering if emojiProvider resolves immediately.
|
|
53
39
|
_this.loadEmojiProvider(_this.props.emojiProvider);
|
|
54
|
-
|
|
55
40
|
return _this;
|
|
56
41
|
}
|
|
57
|
-
|
|
58
42
|
(0, _createClass2.default)(LoadingEmojiComponent, [{
|
|
59
43
|
key: "componentDidMount",
|
|
60
44
|
value: function componentDidMount() {
|
|
@@ -79,7 +63,6 @@ var LoadingEmojiComponent = /*#__PURE__*/function (_Component) {
|
|
|
79
63
|
key: "loadEmojiProvider",
|
|
80
64
|
value: function loadEmojiProvider(futureEmojiProvider) {
|
|
81
65
|
var _this2 = this;
|
|
82
|
-
|
|
83
66
|
futureEmojiProvider.then(function (loadedEmojiProvider) {
|
|
84
67
|
if (!_this2.isUnmounted) {
|
|
85
68
|
_this2.setState({
|
|
@@ -113,15 +96,13 @@ var LoadingEmojiComponent = /*#__PURE__*/function (_Component) {
|
|
|
113
96
|
value: function render() {
|
|
114
97
|
if (this.loaded(this.state)) {
|
|
115
98
|
var _this$state = this.state,
|
|
116
|
-
|
|
117
|
-
|
|
99
|
+
_loadedEmojiProvider = _this$state.loadedEmojiProvider,
|
|
100
|
+
_asyncLoadedComponent = _this$state.asyncLoadedComponent;
|
|
118
101
|
return this.renderLoaded(_loadedEmojiProvider, _asyncLoadedComponent);
|
|
119
102
|
}
|
|
120
|
-
|
|
121
103
|
return this.renderLoading();
|
|
122
104
|
}
|
|
123
105
|
}]);
|
|
124
106
|
return LoadingEmojiComponent;
|
|
125
107
|
}(_react.Component);
|
|
126
|
-
|
|
127
108
|
exports.default = LoadingEmojiComponent;
|