@atlaskit/util-data-test 17.6.7 → 17.6.9
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/emoji/emoji-from-upload.js +4 -10
- package/dist/cjs/emoji/emoji-repository-usage-clear.js +0 -16
- package/dist/cjs/emoji/emoji-resource-usage-clear.js +0 -15
- package/dist/cjs/emoji/get-atlassian-emoji-data.js +0 -2
- package/dist/cjs/emoji/get-atlassian-emojis.js +0 -6
- package/dist/cjs/emoji/get-emoji-provider.js +5 -28
- package/dist/cjs/emoji/get-emoji-repository.js +0 -4
- package/dist/cjs/emoji/get-emoji-resource-standard-atlassian.js +0 -8
- package/dist/cjs/emoji/get-emoji-resource-usage-clear.js +0 -4
- package/dist/cjs/emoji/get-emoji-resource.js +0 -4
- package/dist/cjs/emoji/get-emojis.js +0 -12
- package/dist/cjs/emoji/get-site-emoji-data.js +0 -3
- package/dist/cjs/emoji/get-site-emojis.js +0 -5
- package/dist/cjs/emoji/get-standard-emoji-data.js +0 -2
- package/dist/cjs/emoji/get-standard-emojis.js +0 -6
- package/dist/cjs/emoji/mock-emoji-resource-factory.js +0 -5
- package/dist/cjs/emoji/mock-emoji-resource.js +2 -37
- package/dist/cjs/emoji/mock-non-uploading-emoji-resource-factory.js +0 -5
- package/dist/cjs/emoji/mock-non-uploading-emoji-resource.js +4 -46
- package/dist/cjs/emoji-test/emoji-samples.js +0 -24
- package/dist/cjs/emoji-test/expires-at.js +0 -2
- package/dist/cjs/emoji-test/filter-to-searchable.js +0 -2
- package/dist/cjs/emoji-test/get-non-uploading-emoji-resource.js +0 -4
- package/dist/cjs/emoji-test/get-test-atlassian-emojis.js +0 -3
- package/dist/cjs/emoji-test/get-test-atlassian-service-emojis.js +0 -3
- package/dist/cjs/emoji-test/get-test-emoji-repository.js +0 -4
- package/dist/cjs/emoji-test/get-test-emoji-resource-from-repository.js +0 -3
- package/dist/cjs/emoji-test/get-test-emoji-resource-non-uploading.js +0 -4
- package/dist/cjs/emoji-test/get-test-emoji-resource.js +0 -4
- package/dist/cjs/emoji-test/get-test-emojis.js +0 -8
- package/dist/cjs/emoji-test/get-test-image-emoji.js +0 -2
- package/dist/cjs/emoji-test/get-test-media-api-token.js +0 -5
- package/dist/cjs/emoji-test/get-test-searchable-emojis.js +0 -4
- package/dist/cjs/emoji-test/get-test-site-emoji-foo.js +0 -2
- package/dist/cjs/emoji-test/get-test-site-emoji-repository.js +0 -4
- package/dist/cjs/emoji-test/get-test-site-emoji-wtf.js +0 -2
- package/dist/cjs/emoji-test/get-test-site-emojis.js +0 -4
- package/dist/cjs/emoji-test/get-test-site-service-emojis.js +0 -4
- package/dist/cjs/emoji-test/get-test-sprite-emoji.js +0 -2
- package/dist/cjs/emoji-test/get-test-standard-emojis.js +0 -3
- package/dist/cjs/emoji-test/get-test-standard-service-emojis.js +0 -3
- package/dist/cjs/emoji-test/media-emoji.js +0 -8
- package/dist/cjs/emoji-test/media-service-emoji.js +0 -2
- package/dist/cjs/emoji-test/test-emoji-repository.js +0 -16
- package/dist/cjs/logger.js +1 -6
- package/dist/cjs/mention/create-mock-mention-name-resolver.js +2 -6
- package/dist/cjs/mention/mention-story-data.js +0 -5
- package/dist/cjs/mention/mention-test-data.js +0 -3
- package/dist/cjs/mention/mock-mention-name-client.js +0 -10
- package/dist/cjs/mention/mock-mention-resource-with-info-hints.js +2 -35
- package/dist/cjs/mention/mock-mention-resource.js +2 -39
- package/dist/cjs/mention/mock-presence-resource.js +2 -22
- package/dist/cjs/mention/presence-data.js +0 -4
- package/dist/cjs/mention/utils.js +0 -4
- package/dist/cjs/profilecard/get-mock-profilecard-client.js +4 -40
- package/dist/cjs/profilecard/profilecard-data.js +0 -5
- package/dist/cjs/profilecard/util.js +0 -7
- package/dist/cjs/slack-data/index.js +0 -3
- package/dist/cjs/slack-data/slack-conversations-data.js +0 -2
- package/dist/cjs/slack-data/slack-workspaces-data.js +0 -2
- package/dist/cjs/task-decision/mock-task-decision-resource.js +3 -34
- package/dist/cjs/task-decision/task-decision-story-data.js +0 -7
- package/dist/cjs/task-decision/utils.js +1 -8
- package/dist/cjs/user-picker/ChevronRight.js +4 -13
- package/dist/cjs/user-picker/index.js +0 -3
- package/dist/cjs/user-picker/user-picker-custom-data.js +0 -4
- package/dist/cjs/user-picker/user-picker-data.js +0 -3
- package/dist/cjs/user-picker/user-picker-team-data.js +0 -4
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/emoji/emoji-repository-usage-clear.js +0 -2
- package/dist/es2019/emoji/emoji-resource-usage-clear.js +0 -2
- package/dist/es2019/emoji/get-atlassian-emojis.js +0 -1
- package/dist/es2019/emoji/get-emoji-provider.js +0 -2
- package/dist/es2019/emoji/get-emojis.js +2 -2
- package/dist/es2019/emoji/get-standard-emojis.js +0 -1
- package/dist/es2019/emoji/mock-emoji-resource-factory.js +0 -2
- package/dist/es2019/emoji/mock-emoji-resource.js +2 -18
- package/dist/es2019/emoji/mock-non-uploading-emoji-resource-factory.js +0 -2
- package/dist/es2019/emoji/mock-non-uploading-emoji-resource.js +0 -34
- package/dist/es2019/emoji-test/get-test-media-api-token.js +0 -1
- package/dist/es2019/emoji-test/media-emoji.js +2 -1
- package/dist/es2019/emoji-test/test-emoji-repository.js +0 -1
- package/dist/es2019/logger.js +1 -0
- package/dist/es2019/mention/create-mock-mention-name-resolver.js +2 -1
- package/dist/es2019/mention/mock-mention-name-client.js +0 -5
- package/dist/es2019/mention/mock-mention-resource-with-info-hints.js +2 -14
- package/dist/es2019/mention/mock-mention-resource.js +2 -23
- package/dist/es2019/mention/mock-presence-resource.js +2 -11
- package/dist/es2019/mention/utils.js +0 -1
- package/dist/es2019/profilecard/get-mock-profilecard-client.js +6 -13
- package/dist/es2019/profilecard/profilecard-data.js +0 -1
- package/dist/es2019/profilecard/util.js +0 -1
- package/dist/es2019/slack-data/slack-conversations-data.js +0 -1
- package/dist/es2019/slack-data/slack-workspaces-data.js +0 -1
- package/dist/es2019/task-decision/mock-task-decision-resource.js +4 -29
- package/dist/es2019/task-decision/task-decision-story-data.js +2 -1
- package/dist/es2019/task-decision/utils.js +0 -1
- package/dist/es2019/version.json +1 -1
- package/dist/esm/emoji/emoji-from-upload.js +4 -4
- package/dist/esm/emoji/emoji-repository-usage-clear.js +0 -8
- package/dist/esm/emoji/emoji-resource-usage-clear.js +0 -8
- package/dist/esm/emoji/get-atlassian-emojis.js +0 -1
- package/dist/esm/emoji/get-emoji-provider.js +5 -16
- package/dist/esm/emoji/get-emojis.js +0 -4
- package/dist/esm/emoji/get-standard-emojis.js +0 -1
- package/dist/esm/emoji/mock-emoji-resource-factory.js +0 -2
- package/dist/esm/emoji/mock-emoji-resource.js +2 -27
- package/dist/esm/emoji/mock-non-uploading-emoji-resource-factory.js +0 -2
- package/dist/esm/emoji/mock-non-uploading-emoji-resource.js +4 -38
- package/dist/esm/emoji-test/get-test-media-api-token.js +0 -1
- package/dist/esm/emoji-test/media-emoji.js +0 -3
- package/dist/esm/emoji-test/test-emoji-repository.js +0 -8
- package/dist/esm/logger.js +1 -2
- package/dist/esm/mention/create-mock-mention-name-resolver.js +2 -1
- package/dist/esm/mention/mock-mention-name-client.js +0 -4
- package/dist/esm/mention/mock-mention-resource-with-info-hints.js +2 -25
- package/dist/esm/mention/mock-mention-resource.js +2 -30
- package/dist/esm/mention/mock-presence-resource.js +2 -16
- package/dist/esm/mention/utils.js +0 -1
- package/dist/esm/profilecard/get-mock-profilecard-client.js +4 -29
- package/dist/esm/profilecard/profilecard-data.js +0 -1
- package/dist/esm/profilecard/util.js +0 -1
- package/dist/esm/slack-data/slack-conversations-data.js +0 -1
- package/dist/esm/slack-data/slack-workspaces-data.js +0 -1
- package/dist/esm/task-decision/mock-task-decision-resource.js +3 -32
- package/dist/esm/task-decision/task-decision-story-data.js +2 -1
- package/dist/esm/task-decision/utils.js +1 -2
- package/dist/esm/user-picker/ChevronRight.js +3 -5
- package/dist/esm/version.json +1 -1
- package/package.json +4 -4
package/dist/cjs/version.json
CHANGED
|
@@ -4,11 +4,9 @@ export class EmojiResourceUsageClear extends MockNonUploadingEmojiResource {
|
|
|
4
4
|
constructor(emojis) {
|
|
5
5
|
super(new EmojiRepositoryUsageClear(emojis));
|
|
6
6
|
}
|
|
7
|
-
|
|
8
7
|
clearFrequentlyUsed() {
|
|
9
8
|
if (isUsageClearEmojiRepository(this.emojiRepository)) {
|
|
10
9
|
this.emojiRepository.clear();
|
|
11
10
|
}
|
|
12
11
|
}
|
|
13
|
-
|
|
14
12
|
}
|
|
@@ -3,7 +3,6 @@ import { denormaliseEmojiServiceResponse } from '@atlaskit/emoji/utils';
|
|
|
3
3
|
import { getAtlassianEmojiData } from './get-atlassian-emoji-data';
|
|
4
4
|
export const getAtlassianEmojis = memoizeOne(() => {
|
|
5
5
|
var _atlassianEmojis$meta, _atlassianEmojis$meta2;
|
|
6
|
-
|
|
7
6
|
const atlassianEmojis = getAtlassianEmojiData();
|
|
8
7
|
const atlassianSprites = (_atlassianEmojis$meta = atlassianEmojis === null || atlassianEmojis === void 0 ? void 0 : (_atlassianEmojis$meta2 = atlassianEmojis.meta) === null || _atlassianEmojis$meta2 === void 0 ? void 0 : _atlassianEmojis$meta2.spriteSheets) !== null && _atlassianEmojis$meta !== void 0 ? _atlassianEmojis$meta : {};
|
|
9
8
|
return denormaliseEmojiServiceResponse({
|
|
@@ -7,11 +7,9 @@ export const currentUser = {
|
|
|
7
7
|
};
|
|
8
8
|
export const defaultFetch = async () => {
|
|
9
9
|
const response = await fetch('./emoji/emoji-all.json');
|
|
10
|
-
|
|
11
10
|
if (!response.ok) {
|
|
12
11
|
throw new Error(`Could not fetch emoji data: ${response.status} ${response.statusText}`);
|
|
13
12
|
}
|
|
14
|
-
|
|
15
13
|
return response.json();
|
|
16
14
|
};
|
|
17
15
|
export const getEmojiProvider = async function getEmojiProvider(config, fn = defaultFetch) {
|
|
@@ -4,7 +4,6 @@ import { getSiteEmojiData } from './get-site-emoji-data';
|
|
|
4
4
|
import { getStandardEmojiData } from './get-standard-emoji-data';
|
|
5
5
|
export const getEmojis = () => {
|
|
6
6
|
var _standardEmojis$meta$, _standardEmojis$meta, _atlassianEmojis$meta, _atlassianEmojis$meta2;
|
|
7
|
-
|
|
8
7
|
const standardEmojis = getStandardEmojiData();
|
|
9
8
|
const atlassianEmojis = getAtlassianEmojiData();
|
|
10
9
|
const siteEmojis = getSiteEmojiData();
|
|
@@ -13,7 +12,8 @@ export const getEmojis = () => {
|
|
|
13
12
|
return denormaliseEmojiServiceResponse({
|
|
14
13
|
emojis: [...standardEmojis.emojis, ...atlassianEmojis.emojis, ...siteEmojis.emojis],
|
|
15
14
|
meta: {
|
|
16
|
-
spriteSheets: {
|
|
15
|
+
spriteSheets: {
|
|
16
|
+
...standardSprites,
|
|
17
17
|
...atlassianSprites
|
|
18
18
|
}
|
|
19
19
|
}
|
|
@@ -3,7 +3,6 @@ import { denormaliseEmojiServiceResponse } from '@atlaskit/emoji/utils';
|
|
|
3
3
|
import { getStandardEmojiData } from './get-standard-emoji-data';
|
|
4
4
|
export const getStandardEmojis = memoizeOne(() => {
|
|
5
5
|
var _standardEmojis$meta$, _standardEmojis$meta;
|
|
6
|
-
|
|
7
6
|
const standardEmojis = getStandardEmojiData();
|
|
8
7
|
const standardSprites = (_standardEmojis$meta$ = standardEmojis === null || standardEmojis === void 0 ? void 0 : (_standardEmojis$meta = standardEmojis.meta) === null || _standardEmojis$meta === void 0 ? void 0 : _standardEmojis$meta.spriteSheets) !== null && _standardEmojis$meta$ !== void 0 ? _standardEmojis$meta$ : {};
|
|
9
8
|
return denormaliseEmojiServiceResponse({
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import { MockEmojiResource } from './mock-emoji-resource';
|
|
2
2
|
export const mockEmojiResourceFactory = (emojiRepository, config, promiseBuilder) => {
|
|
3
3
|
const mockEmojiResource = new MockEmojiResource(emojiRepository, config);
|
|
4
|
-
|
|
5
4
|
if (promiseBuilder) {
|
|
6
5
|
return promiseBuilder(mockEmojiResource, 'mockEmojiResourceFactory');
|
|
7
6
|
}
|
|
8
|
-
|
|
9
7
|
return Promise.resolve(mockEmojiResource);
|
|
10
8
|
};
|
|
@@ -4,46 +4,35 @@ import { MockNonUploadingEmojiResource } from './mock-non-uploading-emoji-resour
|
|
|
4
4
|
export class MockEmojiResource extends MockNonUploadingEmojiResource {
|
|
5
5
|
constructor(emojiService, config) {
|
|
6
6
|
super(emojiService, config);
|
|
7
|
-
|
|
8
7
|
_defineProperty(this, "uploads", []);
|
|
9
|
-
|
|
10
8
|
this.uploadSupported = false;
|
|
11
|
-
|
|
12
9
|
if (config) {
|
|
13
10
|
this.uploadSupported = !!config.uploadSupported;
|
|
14
11
|
this.uploadError = config.uploadError;
|
|
15
12
|
}
|
|
16
13
|
}
|
|
17
|
-
|
|
18
14
|
async getMediaEmojiDescriptionURLWithInlineToken(emoji) {
|
|
19
15
|
if (this.promiseBuilder) {
|
|
20
16
|
return this.promiseBuilder(emoji, 'getMediaEmojiDescriptionURLWithInlineToken');
|
|
21
17
|
}
|
|
22
|
-
|
|
23
18
|
return emoji;
|
|
24
19
|
}
|
|
25
|
-
|
|
26
20
|
async fetchEmojiProvider(force) {
|
|
27
21
|
return Promise.resolve(this.emojiRepository);
|
|
28
22
|
}
|
|
29
|
-
|
|
30
23
|
async fetchByEmojiId(emojiId, optimistic) {
|
|
31
24
|
return this.findByEmojiId(emojiId);
|
|
32
25
|
}
|
|
33
|
-
|
|
34
26
|
getOptimisticImageURL(emojiId) {
|
|
35
27
|
return undefined;
|
|
36
28
|
}
|
|
37
|
-
|
|
38
29
|
isUploadSupported() {
|
|
39
30
|
return this.promiseBuilder(this.uploadSupported, 'isUploadSupported');
|
|
40
31
|
}
|
|
41
|
-
|
|
42
32
|
uploadCustomEmoji(upload) {
|
|
43
33
|
if (this.uploadError) {
|
|
44
34
|
return Promise.reject(this.uploadError);
|
|
45
35
|
}
|
|
46
|
-
|
|
47
36
|
const emoji = emojiFromUpload(upload);
|
|
48
37
|
this.uploads.push({
|
|
49
38
|
upload,
|
|
@@ -53,26 +42,21 @@ export class MockEmojiResource extends MockNonUploadingEmojiResource {
|
|
|
53
42
|
this.filter(this.lastQuery);
|
|
54
43
|
return this.promiseBuilder(emoji, 'uploadCustomEmoji');
|
|
55
44
|
}
|
|
56
|
-
|
|
57
45
|
getUploads() {
|
|
58
46
|
return this.uploads;
|
|
59
47
|
}
|
|
60
|
-
|
|
61
48
|
prepareForUpload() {
|
|
62
49
|
return Promise.resolve();
|
|
63
|
-
}
|
|
64
|
-
|
|
50
|
+
}
|
|
65
51
|
|
|
52
|
+
// Make public for testing
|
|
66
53
|
notifyNotReady() {
|
|
67
54
|
super.notifyNotReady();
|
|
68
55
|
}
|
|
69
|
-
|
|
70
56
|
loadMediaEmoji(emoji) {
|
|
71
57
|
if (this.promiseBuilder) {
|
|
72
58
|
return this.promiseBuilder(emoji, 'loadMediaEmoji');
|
|
73
59
|
}
|
|
74
|
-
|
|
75
60
|
return emoji;
|
|
76
61
|
}
|
|
77
|
-
|
|
78
62
|
}
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import { MockNonUploadingEmojiResource } from './mock-non-uploading-emoji-resource';
|
|
2
2
|
export const mockNonUploadingEmojiResourceFactory = (emojiRepository, config, promiseBuilder) => {
|
|
3
3
|
const mockEmojiResource = new MockNonUploadingEmojiResource(emojiRepository, config);
|
|
4
|
-
|
|
5
4
|
if (promiseBuilder) {
|
|
6
5
|
return promiseBuilder(mockEmojiResource, 'mockNonUploadingEmojiResourceFactory');
|
|
7
6
|
}
|
|
8
|
-
|
|
9
7
|
return Promise.resolve(mockEmojiResource);
|
|
10
8
|
};
|
|
@@ -4,136 +4,105 @@ import { selectedToneStorageKey } from '../emoji-constants';
|
|
|
4
4
|
export class MockNonUploadingEmojiResource extends AbstractResource {
|
|
5
5
|
constructor(emojiService, config) {
|
|
6
6
|
super();
|
|
7
|
-
|
|
8
7
|
_defineProperty(this, "lastQuery", '');
|
|
9
|
-
|
|
10
8
|
_defineProperty(this, "recordedSelections", []);
|
|
11
|
-
|
|
12
9
|
this.currentUser = config && config.currentUser || undefined;
|
|
13
10
|
this.emojiRepository = emojiService;
|
|
14
|
-
|
|
15
11
|
this.promiseBuilder = result => Promise.resolve(result);
|
|
16
|
-
|
|
17
12
|
if (config) {
|
|
18
13
|
if (config.promiseBuilder) {
|
|
19
14
|
this.promiseBuilder = config.promiseBuilder;
|
|
20
15
|
}
|
|
21
|
-
|
|
22
16
|
this.optimisticRendering = config.optimisticRendering;
|
|
23
17
|
}
|
|
24
|
-
|
|
25
18
|
if (typeof window !== 'undefined' && window.localStorage) {
|
|
26
19
|
const storedTone = window.localStorage.getItem(selectedToneStorageKey);
|
|
27
20
|
this.selectedTone = storedTone ? parseInt(storedTone, 10) : undefined;
|
|
28
21
|
}
|
|
29
22
|
}
|
|
30
|
-
|
|
31
23
|
async fetchEmojiProvider(force) {
|
|
32
24
|
return Promise.resolve(this.emojiRepository);
|
|
33
25
|
}
|
|
34
|
-
|
|
35
26
|
getOptimisticImageURL(emojiId) {
|
|
36
27
|
return undefined;
|
|
37
28
|
}
|
|
38
|
-
|
|
39
29
|
getCurrentUser() {
|
|
40
30
|
return this.currentUser;
|
|
41
31
|
}
|
|
42
|
-
|
|
43
32
|
filter(query, options) {
|
|
44
33
|
if (query) {
|
|
45
34
|
this.lastQuery = query;
|
|
46
35
|
} else {
|
|
47
36
|
this.lastQuery = '';
|
|
48
37
|
}
|
|
49
|
-
|
|
50
38
|
this.promiseBuilder(this.emojiRepository.search(query, options), 'filter').then(result => {
|
|
51
39
|
this.notifyResult(result);
|
|
52
40
|
});
|
|
53
41
|
}
|
|
54
|
-
|
|
55
42
|
findByShortName(shortName) {
|
|
56
43
|
const emoji = this.emojiRepository.findByShortName(shortName);
|
|
57
44
|
return this.promiseBuilder(emoji, 'findByShortName');
|
|
58
45
|
}
|
|
59
|
-
|
|
60
46
|
fetchByEmojiId(emojiId, optimistic) {
|
|
61
47
|
const {
|
|
62
48
|
id,
|
|
63
49
|
shortName
|
|
64
50
|
} = emojiId;
|
|
65
|
-
|
|
66
51
|
if (id) {
|
|
67
52
|
const emoji = this.emojiRepository.findById(id);
|
|
68
53
|
return this.promiseBuilder(emoji, 'fetchByEmojiId');
|
|
69
54
|
}
|
|
70
|
-
|
|
71
55
|
return this.emojiRepository.findByShortName(shortName);
|
|
72
56
|
}
|
|
73
|
-
|
|
74
57
|
findByEmojiId(emojiId) {
|
|
75
58
|
const {
|
|
76
59
|
id,
|
|
77
60
|
shortName
|
|
78
61
|
} = emojiId;
|
|
79
|
-
|
|
80
62
|
if (id) {
|
|
81
63
|
const emoji = this.emojiRepository.findById(id);
|
|
82
64
|
return this.promiseBuilder(emoji, 'findByEmojiId');
|
|
83
65
|
}
|
|
84
|
-
|
|
85
66
|
return this.emojiRepository.findByShortName(shortName);
|
|
86
67
|
}
|
|
87
|
-
|
|
88
68
|
findById(id) {
|
|
89
69
|
const emoji = this.emojiRepository.findById(id);
|
|
90
70
|
return this.promiseBuilder(emoji, 'findById');
|
|
91
71
|
}
|
|
92
|
-
|
|
93
72
|
findInCategory(categoryId) {
|
|
94
73
|
const emojis = this.emojiRepository.findInCategory(categoryId);
|
|
95
74
|
return this.promiseBuilder(emojis, 'findInCategory');
|
|
96
75
|
}
|
|
97
|
-
|
|
98
76
|
getAsciiMap() {
|
|
99
77
|
return this.promiseBuilder(this.emojiRepository.getAsciiMap(), 'getAsciiMap');
|
|
100
78
|
}
|
|
101
|
-
|
|
102
79
|
async getFrequentlyUsed(options) {
|
|
103
80
|
return this.promiseBuilder(this.emojiRepository.getFrequentlyUsed(options), 'getFrequentlyUsed');
|
|
104
81
|
}
|
|
105
|
-
|
|
106
82
|
async getMediaEmojiDescriptionURLWithInlineToken(emoji) {
|
|
107
83
|
return emoji;
|
|
108
84
|
}
|
|
109
|
-
|
|
110
85
|
recordSelection(emoji) {
|
|
111
86
|
this.recordedSelections.push(emoji);
|
|
112
87
|
this.emojiRepository.used(emoji);
|
|
113
88
|
return this.promiseBuilder(undefined, 'recordSelection');
|
|
114
89
|
}
|
|
115
|
-
|
|
116
90
|
deleteSiteEmoji(emoji) {
|
|
117
91
|
this.emojiRepository.delete(emoji);
|
|
118
92
|
this.filter(this.lastQuery);
|
|
119
93
|
return this.promiseBuilder(true, 'deleteSiteEmoji');
|
|
120
94
|
}
|
|
121
|
-
|
|
122
95
|
loadMediaEmoji(emoji) {
|
|
123
96
|
return emoji;
|
|
124
97
|
}
|
|
125
|
-
|
|
126
98
|
optimisticMediaRendering(emoji) {
|
|
127
99
|
return emoji && !!this.optimisticRendering;
|
|
128
100
|
}
|
|
129
|
-
|
|
130
101
|
getSelectedTone() {
|
|
131
102
|
return this.selectedTone;
|
|
132
103
|
}
|
|
133
|
-
|
|
134
104
|
setSelectedTone(tone) {
|
|
135
105
|
this.selectedTone = tone;
|
|
136
|
-
|
|
137
106
|
if (window.localStorage) {
|
|
138
107
|
try {
|
|
139
108
|
window.localStorage.setItem(selectedToneStorageKey, tone ? tone.toString() : '');
|
|
@@ -143,13 +112,10 @@ export class MockNonUploadingEmojiResource extends AbstractResource {
|
|
|
143
112
|
}
|
|
144
113
|
}
|
|
145
114
|
}
|
|
146
|
-
|
|
147
115
|
calculateDynamicCategories() {
|
|
148
116
|
if (!this.emojiRepository) {
|
|
149
117
|
return Promise.resolve([]);
|
|
150
118
|
}
|
|
151
|
-
|
|
152
119
|
return Promise.resolve(this.emojiRepository.getDynamicCategoryList());
|
|
153
120
|
}
|
|
154
|
-
|
|
155
121
|
}
|
package/dist/es2019/logger.js
CHANGED
|
@@ -3,7 +3,8 @@ import { UIAnalyticsEvent } from '@atlaskit/analytics-next';
|
|
|
3
3
|
import { MockMentionNameClient } from './mock-mention-name-client';
|
|
4
4
|
export const createMockMentionNameResolver = () => {
|
|
5
5
|
const analyticsProps = {
|
|
6
|
-
createAnalyticsEvent: (
|
|
6
|
+
createAnalyticsEvent: (
|
|
7
|
+
// error TS7006: Parameter 'payload' implicitly has an 'any' type.
|
|
7
8
|
// @ts-ignore @fixme TypeScript 4.2.4 upgrade
|
|
8
9
|
payload) => {
|
|
9
10
|
// eslint-disable-next-line no-console
|
|
@@ -2,11 +2,9 @@ import { MentionNameStatus } from '@atlaskit/mention/resource';
|
|
|
2
2
|
import debug from '../logger';
|
|
3
3
|
export class MockMentionNameClient {
|
|
4
4
|
constructor() {}
|
|
5
|
-
|
|
6
5
|
getLookupLimit() {
|
|
7
6
|
return 10;
|
|
8
7
|
}
|
|
9
|
-
|
|
10
8
|
lookupMentionNames(ids) {
|
|
11
9
|
debug('lookupMentionNames', ids);
|
|
12
10
|
return new Promise(resolve => {
|
|
@@ -18,14 +16,12 @@ export class MockMentionNameClient {
|
|
|
18
16
|
status: MentionNameStatus.UNKNOWN
|
|
19
17
|
};
|
|
20
18
|
}
|
|
21
|
-
|
|
22
19
|
if (id === 'service_error') {
|
|
23
20
|
return {
|
|
24
21
|
id,
|
|
25
22
|
status: MentionNameStatus.SERVICE_ERROR
|
|
26
23
|
};
|
|
27
24
|
}
|
|
28
|
-
|
|
29
25
|
return {
|
|
30
26
|
id,
|
|
31
27
|
name: `Hydrated ${id} name`,
|
|
@@ -35,5 +31,4 @@ export class MockMentionNameClient {
|
|
|
35
31
|
}, 1500);
|
|
36
32
|
});
|
|
37
33
|
}
|
|
38
|
-
|
|
39
34
|
}
|
|
@@ -6,9 +6,7 @@ import { mentionTestResult } from './mention-test-data';
|
|
|
6
6
|
export class MockMentionResourceWithInfoHints extends AbstractMentionResource {
|
|
7
7
|
constructor(config) {
|
|
8
8
|
super();
|
|
9
|
-
|
|
10
9
|
_defineProperty(this, "search", new Search('id'));
|
|
11
|
-
|
|
12
10
|
this.search.addIndex('name');
|
|
13
11
|
this.search.addIndex('mentionName');
|
|
14
12
|
this.search.addIndex('nickname');
|
|
@@ -16,14 +14,11 @@ export class MockMentionResourceWithInfoHints extends AbstractMentionResource {
|
|
|
16
14
|
this.config = config;
|
|
17
15
|
this.lastReturnedSearch = 0;
|
|
18
16
|
}
|
|
19
|
-
|
|
20
17
|
filter(query) {
|
|
21
18
|
const searchTime = Date.now();
|
|
22
|
-
|
|
23
19
|
const notify = mentions => {
|
|
24
20
|
if (searchTime >= this.lastReturnedSearch) {
|
|
25
21
|
this.lastReturnedSearch = searchTime;
|
|
26
|
-
|
|
27
22
|
this._notifyListeners(mentions);
|
|
28
23
|
} else {
|
|
29
24
|
const date = new Date(searchTime).toISOString().substr(17, 6);
|
|
@@ -32,44 +27,37 @@ export class MockMentionResourceWithInfoHints extends AbstractMentionResource {
|
|
|
32
27
|
|
|
33
28
|
this._notifyAllResultsListeners(mentions);
|
|
34
29
|
};
|
|
35
|
-
|
|
36
30
|
const notifyInfo = info => {
|
|
37
31
|
this._notifyInfoListeners(info);
|
|
38
32
|
};
|
|
39
|
-
|
|
40
33
|
const notifyErrors = error => {
|
|
41
34
|
this._notifyErrorListeners(error);
|
|
42
35
|
};
|
|
43
|
-
|
|
44
36
|
const minWait = this.config.minWait || 0;
|
|
45
37
|
const randomTime = (this.config.maxWait || 0) - minWait;
|
|
46
38
|
const waitTime = Math.random() * randomTime + minWait;
|
|
47
39
|
window.setTimeout(() => {
|
|
48
40
|
let mentions = [];
|
|
49
|
-
|
|
50
41
|
if (query === 'error') {
|
|
51
42
|
notifyErrors(new Error('mock-error'));
|
|
52
43
|
return;
|
|
53
44
|
} else if (query && query.length >= 3) {
|
|
54
45
|
mentions = this.search.search(query);
|
|
55
|
-
|
|
56
46
|
if (!mentions.length) {
|
|
57
47
|
notifyInfo(`Found no matches for ${query}`);
|
|
58
48
|
}
|
|
59
49
|
} else {
|
|
60
50
|
notifyInfo('Continue typing to search for a user');
|
|
61
51
|
}
|
|
62
|
-
|
|
63
52
|
notify({
|
|
64
53
|
mentions,
|
|
65
54
|
query
|
|
66
55
|
});
|
|
67
56
|
}, waitTime + 1);
|
|
68
|
-
}
|
|
69
|
-
|
|
57
|
+
}
|
|
70
58
|
|
|
59
|
+
// eslint-disable-next-line class-methods-use-this
|
|
71
60
|
recordMentionSelection(mention) {
|
|
72
61
|
debug(`Record mention selection ${mention.id}`);
|
|
73
62
|
}
|
|
74
|
-
|
|
75
63
|
}
|
|
@@ -7,13 +7,9 @@ import { HttpError } from './utils';
|
|
|
7
7
|
export class MockMentionResource extends AbstractMentionResource {
|
|
8
8
|
constructor(config) {
|
|
9
9
|
super();
|
|
10
|
-
|
|
11
10
|
_defineProperty(this, "search", new Search('id'));
|
|
12
|
-
|
|
13
11
|
_defineProperty(this, "mentionTypeaheadHighlightEnabled", () => this.config.enableTeamMentionHighlight || false);
|
|
14
|
-
|
|
15
12
|
_defineProperty(this, "mentionTypeaheadCreateTeamPath", () => '/people/search#createTeam');
|
|
16
|
-
|
|
17
13
|
this.search.addIndex('name');
|
|
18
14
|
this.search.addIndex('mentionName');
|
|
19
15
|
this.search.addIndex('nickname');
|
|
@@ -26,21 +22,17 @@ export class MockMentionResource extends AbstractMentionResource {
|
|
|
26
22
|
this.onInviteItemClick = config.onInviteItemClick;
|
|
27
23
|
this.userRole = config.userRole || 'basic';
|
|
28
24
|
}
|
|
29
|
-
|
|
30
25
|
filter(query) {
|
|
31
26
|
const searchTime = Date.now();
|
|
32
|
-
|
|
33
27
|
const notify = mentions => {
|
|
34
28
|
if (searchTime >= this.lastReturnedSearch) {
|
|
35
29
|
this.lastReturnedSearch = searchTime;
|
|
36
30
|
let stats = {};
|
|
37
|
-
|
|
38
31
|
if (query === 'team') {
|
|
39
32
|
stats.teamMentionDuration = 200;
|
|
40
33
|
} else {
|
|
41
34
|
stats.duration = 100;
|
|
42
35
|
}
|
|
43
|
-
|
|
44
36
|
this._notifyListeners(mentions, stats);
|
|
45
37
|
} else {
|
|
46
38
|
const date = new Date(searchTime).toISOString().substr(17, 6);
|
|
@@ -49,21 +41,17 @@ export class MockMentionResource extends AbstractMentionResource {
|
|
|
49
41
|
|
|
50
42
|
this._notifyAllResultsListeners(mentions);
|
|
51
43
|
};
|
|
52
|
-
|
|
53
44
|
const notifyErrors = error => {
|
|
54
45
|
this._notifyErrorListeners(error);
|
|
55
46
|
};
|
|
56
|
-
|
|
57
47
|
const notifyAnalytics = (eventType, sliName, action) => {
|
|
58
48
|
this._notifyAnalyticsListeners(eventType, sliName, action);
|
|
59
49
|
};
|
|
60
|
-
|
|
61
50
|
const minWait = this.config.minWait || 0;
|
|
62
51
|
const randomTime = (this.config.maxWait || 0) - minWait;
|
|
63
52
|
const waitTime = Math.random() * randomTime + minWait;
|
|
64
53
|
setTimeout(() => {
|
|
65
54
|
let mentions;
|
|
66
|
-
|
|
67
55
|
if (query === 'error') {
|
|
68
56
|
notifyErrors(new Error('mock-error'));
|
|
69
57
|
notifyAnalytics(SLI_EVENT_TYPE, 'searchUser', 'failed');
|
|
@@ -77,7 +65,6 @@ export class MockMentionResource extends AbstractMentionResource {
|
|
|
77
65
|
} else {
|
|
78
66
|
mentions = mentionTestResult;
|
|
79
67
|
}
|
|
80
|
-
|
|
81
68
|
notify({
|
|
82
69
|
mentions,
|
|
83
70
|
query
|
|
@@ -85,16 +72,14 @@ export class MockMentionResource extends AbstractMentionResource {
|
|
|
85
72
|
notifyAnalytics(SLI_EVENT_TYPE, 'searchUser', 'succeeded');
|
|
86
73
|
}, waitTime + 1);
|
|
87
74
|
return Promise.resolve();
|
|
88
|
-
}
|
|
89
|
-
|
|
75
|
+
}
|
|
90
76
|
|
|
77
|
+
// eslint-disable-next-line class-methods-use-this
|
|
91
78
|
recordMentionSelection(mention) {
|
|
92
79
|
debug(`Record mention selection ${mention.id}`);
|
|
93
80
|
}
|
|
94
|
-
|
|
95
81
|
resolveMentionName(id) {
|
|
96
82
|
debug('(mock)resolveMentionName', id);
|
|
97
|
-
|
|
98
83
|
if (!this.config.mentionNameResolver) {
|
|
99
84
|
return {
|
|
100
85
|
id,
|
|
@@ -102,26 +87,20 @@ export class MockMentionResource extends AbstractMentionResource {
|
|
|
102
87
|
status: MentionNameStatus.UNKNOWN
|
|
103
88
|
};
|
|
104
89
|
}
|
|
105
|
-
|
|
106
90
|
return this.config.mentionNameResolver.lookupName(id);
|
|
107
91
|
}
|
|
108
|
-
|
|
109
92
|
cacheMentionName(id, name) {
|
|
110
93
|
debug('(mock)cacheMentionName', id, name);
|
|
111
|
-
|
|
112
94
|
if (this.config.mentionNameResolver) {
|
|
113
95
|
this.config.mentionNameResolver.cacheName(id, name);
|
|
114
96
|
}
|
|
115
97
|
}
|
|
116
|
-
|
|
117
98
|
supportsMentionNameResolving() {
|
|
118
99
|
const supported = !!this.config.mentionNameResolver;
|
|
119
100
|
debug('supportsMentionNameResolving', supported);
|
|
120
101
|
return supported;
|
|
121
102
|
}
|
|
122
|
-
|
|
123
103
|
shouldHighlightMention(mention) {
|
|
124
104
|
return mention.id === 'oscar';
|
|
125
105
|
}
|
|
126
|
-
|
|
127
106
|
}
|
|
@@ -6,40 +6,33 @@ export class MockPresenceResource extends AbstractPresenceResource {
|
|
|
6
6
|
this.maxTimeout = maxTimeout || 0;
|
|
7
7
|
this.statuses = ['online', 'offline', 'busy', 'focus', undefined];
|
|
8
8
|
}
|
|
9
|
-
|
|
10
9
|
getTimeout() {
|
|
11
10
|
return this.minTimeout + (this.maxTimeout - this.minTimeout) * Math.random();
|
|
12
11
|
}
|
|
13
|
-
|
|
14
12
|
getStatus() {
|
|
15
13
|
return this.statuses[Math.floor(Math.random() * this.statuses.length)];
|
|
16
|
-
}
|
|
17
|
-
|
|
14
|
+
}
|
|
18
15
|
|
|
16
|
+
// eslint-disable-next-line class-methods-use-this
|
|
19
17
|
getTime() {
|
|
20
18
|
const minFormat = new Intl.NumberFormat('us-EN', {
|
|
21
19
|
minimumIntegerDigits: 2
|
|
22
20
|
});
|
|
23
21
|
let time;
|
|
24
|
-
|
|
25
22
|
if (Math.random() > 0.5) {
|
|
26
23
|
const hour = Math.floor(Math.random() * 12) + 1;
|
|
27
24
|
const min = minFormat.format(new Date().getMinutes());
|
|
28
25
|
const ampm = ['am', 'pm'][Math.floor(Math.random() * 2)];
|
|
29
26
|
time = `${hour}:${min}${ampm}`;
|
|
30
27
|
}
|
|
31
|
-
|
|
32
28
|
return time;
|
|
33
29
|
}
|
|
34
|
-
|
|
35
30
|
refreshPresence(ids) {
|
|
36
31
|
const presences = {};
|
|
37
|
-
|
|
38
32
|
for (let i = 0; i < ids.length; i++) {
|
|
39
33
|
const id = ids[i];
|
|
40
34
|
const status = this.getStatus();
|
|
41
35
|
const time = this.getTime();
|
|
42
|
-
|
|
43
36
|
if (status || time) {
|
|
44
37
|
presences[id] = {
|
|
45
38
|
status,
|
|
@@ -47,10 +40,8 @@ export class MockPresenceResource extends AbstractPresenceResource {
|
|
|
47
40
|
};
|
|
48
41
|
}
|
|
49
42
|
}
|
|
50
|
-
|
|
51
43
|
window.setTimeout(() => {
|
|
52
44
|
this.notifyListeners(presences);
|
|
53
45
|
}, this.getTimeout());
|
|
54
46
|
}
|
|
55
|
-
|
|
56
47
|
}
|