@atlaskit/mention 27.17.1 → 27.18.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.
Files changed (225) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/cjs/api/AbstractMentionResource.js +111 -0
  3. package/dist/cjs/api/AbstractPresenceResource.js +41 -0
  4. package/dist/cjs/api/AbstractResource.js +48 -0
  5. package/dist/cjs/api/Callback.js +5 -0
  6. package/dist/cjs/api/DefaultMentionNameResolver.js +178 -0
  7. package/dist/cjs/api/DefaultPresenceCache.js +159 -0
  8. package/dist/cjs/api/DefaultPresenceParser.js +91 -0
  9. package/dist/cjs/api/HttpError.js +16 -0
  10. package/dist/cjs/api/MentionNameResolver.js +13 -201
  11. package/dist/cjs/api/MentionResource.js +52 -157
  12. package/dist/cjs/api/PresenceResource.js +39 -263
  13. package/dist/cjs/api/Queue.js +5 -0
  14. package/dist/cjs/api/isResolvingMentionProvider.js +9 -0
  15. package/dist/cjs/api/mergeNameResolverQueues.js +36 -0
  16. package/dist/cjs/components/Mention/MentionInternal.js +247 -0
  17. package/dist/cjs/components/Mention/ResourcedMention.js +5 -4
  18. package/dist/cjs/components/Mention/index.js +29 -243
  19. package/dist/cjs/components/MentionAvatar/index.js +5 -4
  20. package/dist/cjs/components/MentionItem/index.js +18 -12
  21. package/dist/cjs/components/MentionList/index.js +4 -3
  22. package/dist/cjs/components/MentionPicker/MentionPicker.js +231 -0
  23. package/dist/cjs/components/MentionPicker/index.js +18 -225
  24. package/dist/cjs/components/MessagesIntlProvider/index.js +2 -2
  25. package/dist/cjs/components/ResourcedMentionList/ResourcedMentionListWithoutAnalytics.js +228 -0
  26. package/dist/cjs/components/ResourcedMentionList/index.js +14 -223
  27. package/dist/cjs/index.js +17 -15
  28. package/dist/cjs/is-agent-mention.js +12 -0
  29. package/dist/cjs/is-app-mention.js +10 -0
  30. package/dist/cjs/is-promise.js +9 -0
  31. package/dist/cjs/is-restricted.js +10 -0
  32. package/dist/cjs/is-special-mention-text.js +9 -0
  33. package/dist/cjs/is-special-mention.js +10 -0
  34. package/dist/cjs/is-team-mention.js +10 -0
  35. package/dist/cjs/resource.js +15 -12
  36. package/dist/cjs/team-resource.js +9 -9
  37. package/dist/cjs/typeahead.js +4 -0
  38. package/dist/cjs/types.js +71 -30
  39. package/dist/cjs/util/actual-mouse-move.js +14 -0
  40. package/dist/cjs/util/analytics.js +91 -107
  41. package/dist/cjs/util/build-sli-payload.js +27 -0
  42. package/dist/cjs/util/fire-analytics-mention-event.js +32 -0
  43. package/dist/cjs/util/fire-analytics-mention-hydration-event.js +33 -0
  44. package/dist/cjs/util/fire-analytics-mention-typeahead-event.js +34 -0
  45. package/dist/cjs/util/fire-analytics.js +18 -0
  46. package/dist/cjs/util/fire-sli-analytics-event.js +16 -0
  47. package/dist/cjs/util/get-messages-for-locale.js +233 -0
  48. package/dist/cjs/util/i18n.js +9 -254
  49. package/dist/cjs/util/left-click.js +9 -0
  50. package/dist/cjs/util/mouse-location.js +12 -0
  51. package/dist/cjs/util/mouse.js +1 -26
  52. package/dist/cjs/util/package-name.js +7 -0
  53. package/dist/cjs/util/package-version.js +7 -0
  54. package/dist/cjs/util/prop-formatter.js +25 -0
  55. package/dist/es2019/api/AbstractMentionResource.js +73 -0
  56. package/dist/es2019/api/AbstractPresenceResource.js +17 -0
  57. package/dist/es2019/api/AbstractResource.js +33 -0
  58. package/dist/es2019/api/Callback.js +1 -0
  59. package/dist/es2019/api/DefaultMentionNameResolver.js +152 -0
  60. package/dist/es2019/api/DefaultPresenceCache.js +111 -0
  61. package/dist/es2019/api/DefaultPresenceParser.js +58 -0
  62. package/dist/es2019/api/HttpError.js +8 -0
  63. package/dist/es2019/api/MentionNameResolver.js +13 -176
  64. package/dist/es2019/api/MentionResource.js +28 -122
  65. package/dist/es2019/api/PresenceResource.js +19 -185
  66. package/dist/es2019/api/Queue.js +1 -0
  67. package/dist/es2019/api/isResolvingMentionProvider.js +1 -0
  68. package/dist/es2019/api/mergeNameResolverQueues.js +25 -0
  69. package/dist/es2019/components/Mention/MentionInternal.js +225 -0
  70. package/dist/es2019/components/Mention/ResourcedMention.js +4 -3
  71. package/dist/es2019/components/Mention/index.js +19 -223
  72. package/dist/es2019/components/MentionAvatar/index.js +3 -2
  73. package/dist/es2019/components/MentionItem/index.js +14 -8
  74. package/dist/es2019/components/MentionList/index.js +2 -1
  75. package/dist/es2019/components/MentionPicker/MentionPicker.js +198 -0
  76. package/dist/es2019/components/MentionPicker/index.js +15 -198
  77. package/dist/es2019/components/MessagesIntlProvider/index.js +1 -1
  78. package/dist/es2019/components/ResourcedMentionList/ResourcedMentionListWithoutAnalytics.js +187 -0
  79. package/dist/es2019/components/ResourcedMentionList/index.js +9 -187
  80. package/dist/es2019/element.js +5 -0
  81. package/dist/es2019/index.js +13 -9
  82. package/dist/es2019/is-agent-mention.js +6 -0
  83. package/dist/es2019/is-app-mention.js +4 -0
  84. package/dist/es2019/is-promise.js +1 -0
  85. package/dist/es2019/is-restricted.js +4 -0
  86. package/dist/es2019/is-special-mention-text.js +3 -0
  87. package/dist/es2019/is-special-mention.js +4 -0
  88. package/dist/es2019/is-team-mention.js +4 -0
  89. package/dist/es2019/item.js +5 -0
  90. package/dist/es2019/resource.js +15 -5
  91. package/dist/es2019/team-resource.js +10 -4
  92. package/dist/es2019/typeahead.js +5 -0
  93. package/dist/es2019/types.js +30 -21
  94. package/dist/es2019/util/actual-mouse-move.js +8 -0
  95. package/dist/es2019/util/analytics.js +35 -91
  96. package/dist/es2019/util/build-sli-payload.js +18 -0
  97. package/dist/es2019/util/fire-analytics-mention-event.js +24 -0
  98. package/dist/es2019/util/fire-analytics-mention-hydration-event.js +25 -0
  99. package/dist/es2019/util/fire-analytics-mention-typeahead-event.js +24 -0
  100. package/dist/es2019/util/fire-analytics.js +10 -0
  101. package/dist/es2019/util/fire-sli-analytics-event.js +8 -0
  102. package/dist/es2019/util/get-messages-for-locale.js +145 -0
  103. package/dist/es2019/util/i18n.js +2 -165
  104. package/dist/es2019/util/left-click.js +3 -0
  105. package/dist/es2019/util/mouse-location.js +6 -0
  106. package/dist/es2019/util/mouse.js +0 -18
  107. package/dist/es2019/util/package-name.js +1 -0
  108. package/dist/es2019/util/package-version.js +1 -0
  109. package/dist/es2019/util/prop-formatter.js +18 -0
  110. package/dist/esm/api/AbstractMentionResource.js +104 -0
  111. package/dist/esm/api/AbstractPresenceResource.js +34 -0
  112. package/dist/esm/api/AbstractResource.js +41 -0
  113. package/dist/esm/api/Callback.js +1 -0
  114. package/dist/esm/api/DefaultMentionNameResolver.js +171 -0
  115. package/dist/esm/api/DefaultPresenceCache.js +152 -0
  116. package/dist/esm/api/DefaultPresenceParser.js +84 -0
  117. package/dist/esm/api/HttpError.js +9 -0
  118. package/dist/esm/api/MentionNameResolver.js +13 -198
  119. package/dist/esm/api/MentionResource.js +30 -154
  120. package/dist/esm/api/PresenceResource.js +22 -256
  121. package/dist/esm/api/Queue.js +1 -0
  122. package/dist/esm/api/isResolvingMentionProvider.js +3 -0
  123. package/dist/esm/api/mergeNameResolverQueues.js +29 -0
  124. package/dist/esm/components/Mention/MentionInternal.js +242 -0
  125. package/dist/esm/components/Mention/ResourcedMention.js +4 -3
  126. package/dist/esm/components/Mention/index.js +19 -240
  127. package/dist/esm/components/MentionAvatar/index.js +3 -2
  128. package/dist/esm/components/MentionItem/index.js +14 -8
  129. package/dist/esm/components/MentionList/index.js +2 -1
  130. package/dist/esm/components/MentionPicker/MentionPicker.js +225 -0
  131. package/dist/esm/components/MentionPicker/index.js +15 -225
  132. package/dist/esm/components/MessagesIntlProvider/index.js +1 -1
  133. package/dist/esm/components/ResourcedMentionList/ResourcedMentionListWithoutAnalytics.js +221 -0
  134. package/dist/esm/components/ResourcedMentionList/index.js +9 -221
  135. package/dist/esm/element.js +5 -0
  136. package/dist/esm/index.js +13 -9
  137. package/dist/esm/is-agent-mention.js +6 -0
  138. package/dist/esm/is-app-mention.js +4 -0
  139. package/dist/esm/is-promise.js +3 -0
  140. package/dist/esm/is-restricted.js +4 -0
  141. package/dist/esm/is-special-mention-text.js +3 -0
  142. package/dist/esm/is-special-mention.js +4 -0
  143. package/dist/esm/is-team-mention.js +4 -0
  144. package/dist/esm/item.js +5 -0
  145. package/dist/esm/resource.js +15 -5
  146. package/dist/esm/team-resource.js +10 -4
  147. package/dist/esm/typeahead.js +5 -0
  148. package/dist/esm/types.js +30 -23
  149. package/dist/esm/util/actual-mouse-move.js +8 -0
  150. package/dist/esm/util/analytics.js +35 -105
  151. package/dist/esm/util/build-sli-payload.js +20 -0
  152. package/dist/esm/util/fire-analytics-mention-event.js +26 -0
  153. package/dist/esm/util/fire-analytics-mention-hydration-event.js +27 -0
  154. package/dist/esm/util/fire-analytics-mention-typeahead-event.js +28 -0
  155. package/dist/esm/util/fire-analytics.js +12 -0
  156. package/dist/esm/util/fire-sli-analytics-event.js +10 -0
  157. package/dist/esm/util/get-messages-for-locale.js +163 -0
  158. package/dist/esm/util/i18n.js +2 -183
  159. package/dist/esm/util/left-click.js +3 -0
  160. package/dist/esm/util/mouse-location.js +6 -0
  161. package/dist/esm/util/mouse.js +0 -18
  162. package/dist/esm/util/package-name.js +1 -0
  163. package/dist/esm/util/package-version.js +1 -0
  164. package/dist/esm/util/prop-formatter.js +18 -0
  165. package/dist/types/api/AbstractMentionResource.d.ts +15 -0
  166. package/dist/types/api/AbstractPresenceResource.d.ts +6 -0
  167. package/dist/types/api/AbstractResource.d.ts +11 -0
  168. package/dist/types/api/Callback.d.ts +4 -0
  169. package/dist/types/api/DefaultMentionNameResolver.d.ts +27 -0
  170. package/dist/types/api/DefaultPresenceCache.d.ts +57 -0
  171. package/dist/types/api/DefaultPresenceParser.d.ts +8 -0
  172. package/dist/types/api/HttpError.d.ts +7 -0
  173. package/dist/types/api/MentionNameResolver.d.ts +14 -35
  174. package/dist/types/api/MentionResource.d.ts +18 -33
  175. package/dist/types/api/PresenceResource.d.ts +15 -69
  176. package/dist/types/api/Queue.d.ts +2 -0
  177. package/dist/types/api/isResolvingMentionProvider.d.ts +2 -0
  178. package/dist/types/api/mergeNameResolverQueues.d.ts +6 -0
  179. package/dist/types/components/Mention/MentionInternal.d.ts +27 -0
  180. package/dist/types/components/Mention/ResourcedMention.d.ts +1 -1
  181. package/dist/types/components/Mention/index.d.ts +9 -20
  182. package/dist/types/components/MentionAvatar/index.d.ts +1 -1
  183. package/dist/types/components/MentionItem/index.d.ts +4 -1
  184. package/dist/types/components/MentionPicker/MentionPicker.d.ts +46 -0
  185. package/dist/types/components/MentionPicker/index.d.ts +5 -42
  186. package/dist/types/components/ResourcedMentionList/ResourcedMentionListWithoutAnalytics.d.ts +30 -0
  187. package/dist/types/components/ResourcedMentionList/index.d.ts +5 -27
  188. package/dist/types/element.d.ts +3 -0
  189. package/dist/types/index.d.ts +15 -10
  190. package/dist/types/is-agent-mention.d.ts +2 -0
  191. package/dist/types/is-app-mention.d.ts +2 -0
  192. package/dist/types/is-promise.d.ts +1 -0
  193. package/dist/types/is-restricted.d.ts +1 -0
  194. package/dist/types/is-special-mention-text.d.ts +1 -0
  195. package/dist/types/is-special-mention.d.ts +2 -0
  196. package/dist/types/is-team-mention.d.ts +2 -0
  197. package/dist/types/item.d.ts +3 -0
  198. package/dist/types/resource.d.ts +15 -6
  199. package/dist/types/team-resource.d.ts +10 -4
  200. package/dist/types/typeahead.d.ts +3 -0
  201. package/dist/types/types.d.ts +28 -8
  202. package/dist/types/util/actual-mouse-move.d.ts +2 -0
  203. package/dist/types/util/analytics.d.ts +33 -10
  204. package/dist/types/util/build-sli-payload.d.ts +4 -0
  205. package/dist/types/util/fire-analytics-mention-event.d.ts +1 -0
  206. package/dist/types/util/fire-analytics-mention-hydration-event.d.ts +1 -0
  207. package/dist/types/util/fire-analytics-mention-typeahead-event.d.ts +1 -0
  208. package/dist/types/util/fire-analytics.d.ts +1 -0
  209. package/dist/types/util/fire-sli-analytics-event.d.ts +1 -0
  210. package/dist/types/util/get-messages-for-locale.d.ts +11 -0
  211. package/dist/types/util/i18n.d.ts +0 -15
  212. package/dist/types/util/left-click.d.ts +2 -0
  213. package/dist/types/util/mouse-location.d.ts +3 -0
  214. package/dist/types/util/mouse.d.ts +0 -4
  215. package/dist/types/util/package-name.d.ts +1 -0
  216. package/dist/types/util/package-version.d.ts +1 -0
  217. package/dist/types/util/prop-formatter.d.ts +5 -0
  218. package/package.json +1 -1
  219. package/dist/cjs/i18n/index.js +0 -216
  220. package/dist/es2019/i18n/index.js +0 -37
  221. package/dist/esm/i18n/index.js +0 -37
  222. package/dist/types/i18n/index.d.ts +0 -37
  223. /package/dist/cjs/components/Mention/{index.compiled.css → MentionInternal.compiled.css} +0 -0
  224. /package/dist/es2019/components/Mention/{index.compiled.css → MentionInternal.compiled.css} +0 -0
  225. /package/dist/esm/components/Mention/{index.compiled.css → MentionInternal.compiled.css} +0 -0
@@ -0,0 +1,27 @@
1
+ import { OPERATIONAL_EVENT_TYPE } from '@atlaskit/analytics-gas-types';
2
+ import { ELEMENTS_CHANNEL } from '../_constants';
3
+ import { ComponentNames } from '../types';
4
+ import { packageName } from './package-name';
5
+ import { packageVersion } from './package-version';
6
+ export var fireAnalyticsMentionHydrationEvent = function fireAnalyticsMentionHydrationEvent(props) {
7
+ return function (action, userId, fromCache, duration) {
8
+ if (props.createAnalyticsEvent) {
9
+ var eventPayload = {
10
+ action: action,
11
+ actionSubject: ComponentNames.MENTION,
12
+ actionSubjectId: 'hydration',
13
+ attributes: {
14
+ packageName: packageName,
15
+ packageVersion: packageVersion,
16
+ componentName: ComponentNames.MENTION,
17
+ userId: userId,
18
+ fromCache: fromCache,
19
+ duration: Math.round(duration)
20
+ },
21
+ eventType: OPERATIONAL_EVENT_TYPE
22
+ };
23
+ var analyticsEvent = props.createAnalyticsEvent(eventPayload);
24
+ analyticsEvent.fire(ELEMENTS_CHANNEL);
25
+ }
26
+ };
27
+ };
@@ -0,0 +1,28 @@
1
+ import { OPERATIONAL_EVENT_TYPE } from '@atlaskit/analytics-gas-types';
2
+ import { ELEMENTS_CHANNEL } from '../_constants';
3
+ import { ComponentNames } from '../types';
4
+ import { packageName } from './package-name';
5
+ import { packageVersion } from './package-version';
6
+ export var fireAnalyticsMentionTypeaheadEvent = function fireAnalyticsMentionTypeaheadEvent(props) {
7
+ return function (action, duration) {
8
+ var userIds = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
9
+ var query = arguments.length > 3 ? arguments[3] : undefined;
10
+ if (props.createAnalyticsEvent) {
11
+ var eventPayload = {
12
+ action: action,
13
+ actionSubject: ComponentNames.TYPEAHEAD,
14
+ attributes: {
15
+ packageName: packageName,
16
+ packageVersion: packageVersion,
17
+ componentName: ComponentNames.MENTION,
18
+ duration: Math.round(duration),
19
+ userIds: userIds,
20
+ queryLength: query ? query.length : 0
21
+ },
22
+ eventType: OPERATIONAL_EVENT_TYPE
23
+ };
24
+ var analyticsEvent = props.createAnalyticsEvent(eventPayload);
25
+ analyticsEvent.fire(ELEMENTS_CHANNEL);
26
+ }
27
+ };
28
+ };
@@ -0,0 +1,12 @@
1
+ import { isSpecialMentionText } from '../is-special-mention-text';
2
+ import { MENTION_ANALYTICS_PREFIX } from './analytics';
3
+ export var fireAnalytics = function fireAnalytics(firePrivateAnalyticsEvent) {
4
+ return function (eventName, text, accessLevel) {
5
+ if (firePrivateAnalyticsEvent) {
6
+ firePrivateAnalyticsEvent("".concat(MENTION_ANALYTICS_PREFIX, ".").concat(eventName), {
7
+ accessLevel: accessLevel,
8
+ isSpecial: isSpecialMentionText(text)
9
+ });
10
+ }
11
+ };
12
+ };
@@ -0,0 +1,10 @@
1
+ import { ELEMENTS_CHANNEL } from '../_constants';
2
+ import { buildSliPayload } from './build-sli-payload';
3
+ export var fireSliAnalyticsEvent = function fireSliAnalyticsEvent(props) {
4
+ return function (actionSubject, action) {
5
+ if (props.createAnalyticsEvent) {
6
+ var eventPayload = buildSliPayload(actionSubject, action);
7
+ props.createAnalyticsEvent(eventPayload).fire(ELEMENTS_CHANNEL);
8
+ }
9
+ };
10
+ };
@@ -0,0 +1,163 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
3
+ /**
4
+ * Tries to get the most specific messages bundle for a given locale.
5
+ *
6
+ * Strategy:
7
+ * 1. Try to find messages with the exact string (i.e. 'fr_FR')
8
+ * 2. If that doesn't work, try to find messages for the country locale (i.e. 'fr')
9
+ * 3. If that doesn't work, return english messages as a fallback.
10
+ *
11
+ * @param locale string specifying the locale like 'en_GB', or 'fr'.
12
+ */
13
+ var _getMessagesForLocale = /*#__PURE__*/function () {
14
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(locale) {
15
+ var fragments, _t;
16
+ return _regeneratorRuntime.wrap(function (_context) {
17
+ while (1) switch (_context.prev = _context.next) {
18
+ case 0:
19
+ _t = locale;
20
+ _context.next = _t === 'cs' ? 1 : _t === 'da' ? 2 : _t === 'de' ? 3 : _t === 'en' ? 4 : _t === 'en_GB' ? 5 : _t === 'en_ZZ' ? 6 : _t === 'es' ? 7 : _t === 'et' ? 8 : _t === 'fi' ? 9 : _t === 'fr' ? 10 : _t === 'hu' ? 11 : _t === 'is' ? 12 : _t === 'it' ? 13 : _t === 'ja' ? 14 : _t === 'ko' ? 15 : _t === 'nb' ? 16 : _t === 'nl' ? 17 : _t === 'pl' ? 18 : _t === 'pt_BR' ? 19 : _t === 'pt-BR' ? 19 : _t === 'pt_PT' ? 20 : _t === 'pt-PT' ? 20 : _t === 'ro' ? 21 : _t === 'ru' ? 22 : _t === 'sk' ? 23 : _t === 'sv' ? 24 : _t === 'th' ? 25 : _t === 'tr' ? 26 : _t === 'uk' ? 27 : _t === 'vi' ? 28 : _t === 'zh_TW' ? 29 : _t === 'zh' ? 30 : 31;
21
+ break;
22
+ case 1:
23
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-cs" */'../i18n/cs').then(function (mod) {
24
+ return mod.default;
25
+ }));
26
+ case 2:
27
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-da" */'../i18n/da').then(function (mod) {
28
+ return mod.default;
29
+ }));
30
+ case 3:
31
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-de" */'../i18n/de').then(function (mod) {
32
+ return mod.default;
33
+ }));
34
+ case 4:
35
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-en" */'../i18n/en').then(function (mod) {
36
+ return mod.default;
37
+ }));
38
+ case 5:
39
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-en_GB" */'../i18n/en_GB').then(function (mod) {
40
+ return mod.default;
41
+ }));
42
+ case 6:
43
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-en_ZZ" */'../i18n/en_ZZ').then(function (mod) {
44
+ return mod.default;
45
+ }));
46
+ case 7:
47
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-es" */'../i18n/es').then(function (mod) {
48
+ return mod.default;
49
+ }));
50
+ case 8:
51
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-et" */'../i18n/et').then(function (mod) {
52
+ return mod.default;
53
+ }));
54
+ case 9:
55
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-fi" */'../i18n/fi').then(function (mod) {
56
+ return mod.default;
57
+ }));
58
+ case 10:
59
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-fr" */'../i18n/fr').then(function (mod) {
60
+ return mod.default;
61
+ }));
62
+ case 11:
63
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-hu" */'../i18n/hu').then(function (mod) {
64
+ return mod.default;
65
+ }));
66
+ case 12:
67
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-is" */'../i18n/is').then(function (mod) {
68
+ return mod.default;
69
+ }));
70
+ case 13:
71
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-it" */'../i18n/it').then(function (mod) {
72
+ return mod.default;
73
+ }));
74
+ case 14:
75
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-ja" */'../i18n/ja').then(function (mod) {
76
+ return mod.default;
77
+ }));
78
+ case 15:
79
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-ko" */'../i18n/ko').then(function (mod) {
80
+ return mod.default;
81
+ }));
82
+ case 16:
83
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-nb" */'../i18n/nb').then(function (mod) {
84
+ return mod.default;
85
+ }));
86
+ case 17:
87
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-nl" */'../i18n/nl').then(function (mod) {
88
+ return mod.default;
89
+ }));
90
+ case 18:
91
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-pl" */'../i18n/pl').then(function (mod) {
92
+ return mod.default;
93
+ }));
94
+ case 19:
95
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-pt_BR" */'../i18n/pt_BR').then(function (mod) {
96
+ return mod.default;
97
+ }));
98
+ case 20:
99
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-pt_PT" */'../i18n/pt_PT').then(function (mod) {
100
+ return mod.default;
101
+ }));
102
+ case 21:
103
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-ro" */'../i18n/ro').then(function (mod) {
104
+ return mod.default;
105
+ }));
106
+ case 22:
107
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-ru" */'../i18n/ru').then(function (mod) {
108
+ return mod.default;
109
+ }));
110
+ case 23:
111
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-sk" */'../i18n/sk').then(function (mod) {
112
+ return mod.default;
113
+ }));
114
+ case 24:
115
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-sv" */'../i18n/sv').then(function (mod) {
116
+ return mod.default;
117
+ }));
118
+ case 25:
119
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-th" */'../i18n/th').then(function (mod) {
120
+ return mod.default;
121
+ }));
122
+ case 26:
123
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-tr" */'../i18n/tr').then(function (mod) {
124
+ return mod.default;
125
+ }));
126
+ case 27:
127
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-uk" */'../i18n/uk').then(function (mod) {
128
+ return mod.default;
129
+ }));
130
+ case 28:
131
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-vi" */'../i18n/vi').then(function (mod) {
132
+ return mod.default;
133
+ }));
134
+ case 29:
135
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-zh_TW" */'../i18n/zh_TW').then(function (mod) {
136
+ return mod.default;
137
+ }));
138
+ case 30:
139
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-zh" */'../i18n/zh').then(function (mod) {
140
+ return mod.default;
141
+ }));
142
+ case 31:
143
+ fragments = locale.split(/[_-]/);
144
+ if (!(fragments.length === 2)) {
145
+ _context.next = 32;
146
+ break;
147
+ }
148
+ return _context.abrupt("return", _getMessagesForLocale(fragments[0]));
149
+ case 32:
150
+ return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-en" */'../i18n/en').then(function (mod) {
151
+ return mod.default;
152
+ }));
153
+ case 33:
154
+ case "end":
155
+ return _context.stop();
156
+ }
157
+ }, _callee);
158
+ }));
159
+ return function getMessagesForLocale(_x) {
160
+ return _ref.apply(this, arguments);
161
+ };
162
+ }();
163
+ export { _getMessagesForLocale as getMessagesForLocale };
@@ -1,190 +1,9 @@
1
- import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
- import _extends from "@babel/runtime/helpers/extends";
3
- import _regeneratorRuntime from "@babel/runtime/regenerator";
4
- import React from 'react';
5
- import { FormattedMessage, useIntl } from 'react-intl';
6
1
  import { messages } from '../components/i18n';
7
- export var propFormatter = function propFormatter(messageDescriptor) {
8
- return function (_ref) {
9
- var values = _ref.values,
10
- children = _ref.children;
11
- var _useIntl = useIntl(),
12
- formatMessage = _useIntl.formatMessage;
13
- var message = formatMessage(messageDescriptor, values);
14
- if (typeof children === 'function') {
15
- return children(message);
16
- }
17
- return /*#__PURE__*/React.createElement(FormattedMessage, _extends({
18
- values: values
19
- }, messageDescriptor));
20
- };
21
- };
2
+ import { propFormatter } from './prop-formatter';
22
3
  export var UnknownUserError = propFormatter(messages.unknownUserError);
23
4
  export var NoAccessWarning = propFormatter(messages.noAccessWarning);
24
5
  export var NoAccessLabel = propFormatter(messages.noAccessLabel);
25
6
  export var DefaultHeadline = propFormatter(messages.defaultHeadline);
26
7
  export var DefaultAdvisedAction = propFormatter(messages.defaultAdvisedAction);
27
8
  export var LoginAgain = propFormatter(messages.loginAgain);
28
- export var DifferentText = propFormatter(messages.differentText);
29
-
30
- /**
31
- * Tries to get the most specific messages bundle for a given locale.
32
- *
33
- * Strategy:
34
- * 1. Try to find messages with the exact string (i.e. 'fr_FR')
35
- * 2. If that doesn't work, try to find messages for the country locale (i.e. 'fr')
36
- * 3. If that doesn't work, return english messages as a fallback.
37
- *
38
- * @param locale string specifying the locale like 'en_GB', or 'fr'.
39
- */
40
- var _getMessagesForLocale = /*#__PURE__*/function () {
41
- var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(locale) {
42
- var fragments, _t;
43
- return _regeneratorRuntime.wrap(function (_context) {
44
- while (1) switch (_context.prev = _context.next) {
45
- case 0:
46
- _t = locale;
47
- _context.next = _t === 'cs' ? 1 : _t === 'da' ? 2 : _t === 'de' ? 3 : _t === 'en' ? 4 : _t === 'en_GB' ? 5 : _t === 'en_ZZ' ? 6 : _t === 'es' ? 7 : _t === 'et' ? 8 : _t === 'fi' ? 9 : _t === 'fr' ? 10 : _t === 'hu' ? 11 : _t === 'is' ? 12 : _t === 'it' ? 13 : _t === 'ja' ? 14 : _t === 'ko' ? 15 : _t === 'nb' ? 16 : _t === 'nl' ? 17 : _t === 'pl' ? 18 : _t === 'pt_BR' ? 19 : _t === 'pt-BR' ? 19 : _t === 'pt_PT' ? 20 : _t === 'pt-PT' ? 20 : _t === 'ro' ? 21 : _t === 'ru' ? 22 : _t === 'sk' ? 23 : _t === 'sv' ? 24 : _t === 'th' ? 25 : _t === 'tr' ? 26 : _t === 'uk' ? 27 : _t === 'vi' ? 28 : _t === 'zh_TW' ? 29 : _t === 'zh' ? 30 : 31;
48
- break;
49
- case 1:
50
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-cs" */'../i18n/cs').then(function (mod) {
51
- return mod.default;
52
- }));
53
- case 2:
54
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-da" */'../i18n/da').then(function (mod) {
55
- return mod.default;
56
- }));
57
- case 3:
58
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-de" */'../i18n/de').then(function (mod) {
59
- return mod.default;
60
- }));
61
- case 4:
62
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-en" */'../i18n/en').then(function (mod) {
63
- return mod.default;
64
- }));
65
- case 5:
66
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-en_GB" */'../i18n/en_GB').then(function (mod) {
67
- return mod.default;
68
- }));
69
- case 6:
70
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-en_ZZ" */'../i18n/en_ZZ').then(function (mod) {
71
- return mod.default;
72
- }));
73
- case 7:
74
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-es" */'../i18n/es').then(function (mod) {
75
- return mod.default;
76
- }));
77
- case 8:
78
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-et" */'../i18n/et').then(function (mod) {
79
- return mod.default;
80
- }));
81
- case 9:
82
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-fi" */'../i18n/fi').then(function (mod) {
83
- return mod.default;
84
- }));
85
- case 10:
86
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-fr" */'../i18n/fr').then(function (mod) {
87
- return mod.default;
88
- }));
89
- case 11:
90
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-hu" */'../i18n/hu').then(function (mod) {
91
- return mod.default;
92
- }));
93
- case 12:
94
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-is" */'../i18n/is').then(function (mod) {
95
- return mod.default;
96
- }));
97
- case 13:
98
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-it" */'../i18n/it').then(function (mod) {
99
- return mod.default;
100
- }));
101
- case 14:
102
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-ja" */'../i18n/ja').then(function (mod) {
103
- return mod.default;
104
- }));
105
- case 15:
106
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-ko" */'../i18n/ko').then(function (mod) {
107
- return mod.default;
108
- }));
109
- case 16:
110
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-nb" */'../i18n/nb').then(function (mod) {
111
- return mod.default;
112
- }));
113
- case 17:
114
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-nl" */'../i18n/nl').then(function (mod) {
115
- return mod.default;
116
- }));
117
- case 18:
118
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-pl" */'../i18n/pl').then(function (mod) {
119
- return mod.default;
120
- }));
121
- case 19:
122
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-pt_BR" */'../i18n/pt_BR').then(function (mod) {
123
- return mod.default;
124
- }));
125
- case 20:
126
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-pt_PT" */'../i18n/pt_PT').then(function (mod) {
127
- return mod.default;
128
- }));
129
- case 21:
130
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-ro" */'../i18n/ro').then(function (mod) {
131
- return mod.default;
132
- }));
133
- case 22:
134
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-ru" */'../i18n/ru').then(function (mod) {
135
- return mod.default;
136
- }));
137
- case 23:
138
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-sk" */'../i18n/sk').then(function (mod) {
139
- return mod.default;
140
- }));
141
- case 24:
142
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-sv" */'../i18n/sv').then(function (mod) {
143
- return mod.default;
144
- }));
145
- case 25:
146
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-th" */'../i18n/th').then(function (mod) {
147
- return mod.default;
148
- }));
149
- case 26:
150
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-tr" */'../i18n/tr').then(function (mod) {
151
- return mod.default;
152
- }));
153
- case 27:
154
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-uk" */'../i18n/uk').then(function (mod) {
155
- return mod.default;
156
- }));
157
- case 28:
158
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-vi" */'../i18n/vi').then(function (mod) {
159
- return mod.default;
160
- }));
161
- case 29:
162
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-zh_TW" */'../i18n/zh_TW').then(function (mod) {
163
- return mod.default;
164
- }));
165
- case 30:
166
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-zh" */'../i18n/zh').then(function (mod) {
167
- return mod.default;
168
- }));
169
- case 31:
170
- fragments = locale.split(/[_-]/);
171
- if (!(fragments.length === 2)) {
172
- _context.next = 32;
173
- break;
174
- }
175
- return _context.abrupt("return", _getMessagesForLocale(fragments[0]));
176
- case 32:
177
- return _context.abrupt("return", import( /* webpackChunkName: "@atlaskit-internal_mention-i18n-en" */'../i18n/en').then(function (mod) {
178
- return mod.default;
179
- }));
180
- case 33:
181
- case "end":
182
- return _context.stop();
183
- }
184
- }, _callee);
185
- }));
186
- return function getMessagesForLocale(_x) {
187
- return _ref2.apply(this, arguments);
188
- };
189
- }();
190
- export { _getMessagesForLocale as getMessagesForLocale };
9
+ export var DifferentText = propFormatter(messages.differentText);
@@ -0,0 +1,3 @@
1
+ export function leftClick(event) {
2
+ return event.button === 0 && !event.altKey && !event.ctrlKey && !event.metaKey && !event.shiftKey;
3
+ }
@@ -0,0 +1,6 @@
1
+ export function mouseLocation(event) {
2
+ return {
3
+ x: event.clientX,
4
+ y: event.clientY
5
+ };
6
+ }
@@ -1,18 +0,0 @@
1
- export function mouseLocation(event) {
2
- return {
3
- x: event.clientX,
4
- y: event.clientY
5
- };
6
- }
7
-
8
- // Used to prevent invalid mouse move detection on scroll
9
- // lastPosition is object (x, y)
10
- export function actualMouseMove(oldPosition, newPosition) {
11
- if (!oldPosition || oldPosition.x !== newPosition.x || oldPosition.y !== newPosition.y) {
12
- return true;
13
- }
14
- return false;
15
- }
16
- export function leftClick(event) {
17
- return event.button === 0 && !event.altKey && !event.ctrlKey && !event.metaKey && !event.shiftKey;
18
- }
@@ -0,0 +1 @@
1
+ export var packageName = "@atlaskit/mention";
@@ -0,0 +1 @@
1
+ export var packageVersion = "27.17.1";
@@ -0,0 +1,18 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import React from 'react';
3
+ import { FormattedMessage, useIntl } from 'react-intl';
4
+ export var propFormatter = function propFormatter(messageDescriptor) {
5
+ return function (_ref) {
6
+ var values = _ref.values,
7
+ children = _ref.children;
8
+ var _useIntl = useIntl(),
9
+ formatMessage = _useIntl.formatMessage;
10
+ var message = formatMessage(messageDescriptor, values);
11
+ if (typeof children === 'function') {
12
+ return children(message);
13
+ }
14
+ return /*#__PURE__*/React.createElement(FormattedMessage, _extends({
15
+ values: values
16
+ }, messageDescriptor));
17
+ };
18
+ };
@@ -0,0 +1,15 @@
1
+ import { type MentionDescription, type MentionProvider, type MentionsResult, type MentionStats } from '../types';
2
+ import { AbstractResource } from './AbstractResource';
3
+ export declare class AbstractMentionResource extends AbstractResource<MentionDescription[]> implements MentionProvider {
4
+ shouldHighlightMention(_mention: MentionDescription): boolean;
5
+ filter(query?: string): void;
6
+ recordMentionSelection(_mention: MentionDescription): void;
7
+ isFiltering(_query: string): boolean;
8
+ protected _notifyListeners(mentionsResult: MentionsResult, stats?: MentionStats): void;
9
+ protected _notifyAllResultsListeners(mentionsResult: MentionsResult): void;
10
+ protected _notifyErrorListeners(error: Error, query?: string): void;
11
+ protected _notifyInfoListeners(info: string): void;
12
+ protected _notifyAnalyticsListeners(event: string, actionSubject: string, action: string, attributes?: {
13
+ [key: string]: any;
14
+ }): void;
15
+ }
@@ -0,0 +1,6 @@
1
+ import { AbstractResource } from './AbstractResource';
2
+ import type { PresenceMap, PresenceProvider } from './PresenceResource';
3
+ export declare class AbstractPresenceResource extends AbstractResource<PresenceMap> implements PresenceProvider {
4
+ refreshPresence(userIds: string[]): void;
5
+ protected notifyListeners(presences: PresenceMap): void;
6
+ }
@@ -0,0 +1,11 @@
1
+ import { type AnalyticsCallback, type ErrorCallback, type InfoCallback, type ResourceProvider, type ResultCallback } from '../types';
2
+ export declare class AbstractResource<Result> implements ResourceProvider<Result> {
3
+ protected changeListeners: Map<string, ResultCallback<Result>>;
4
+ protected errListeners: Map<string, ErrorCallback>;
5
+ protected infoListeners: Map<string, InfoCallback>;
6
+ protected allResultsListeners: Map<string, ResultCallback<Result>>;
7
+ protected analyticsListeners: Map<string, AnalyticsCallback>;
8
+ constructor();
9
+ subscribe(key: string, callback?: ResultCallback<Result>, errCallback?: ErrorCallback, infoCallback?: InfoCallback, allResultsCallback?: ResultCallback<Result>, analyticsListeners?: AnalyticsCallback): void;
10
+ unsubscribe(key: string): void;
11
+ }
@@ -0,0 +1,4 @@
1
+ import { type MentionNameDetails } from '../types';
2
+ export interface Callback {
3
+ (value: MentionNameDetails): void;
4
+ }
@@ -0,0 +1,27 @@
1
+ import { type WithAnalyticsEventsProps } from '@atlaskit/analytics-next';
2
+ import { type MentionNameDetails, type MentionNameResolver } from '../types';
3
+ import { type MentionNameClient } from './MentionNameClient';
4
+ export declare class DefaultMentionNameResolver implements MentionNameResolver {
5
+ static waitForBatch: number;
6
+ private static waitForResolveAll;
7
+ private client;
8
+ private nameCache;
9
+ private nameQueue;
10
+ private nameStartTime;
11
+ private processingQueue;
12
+ private debounce;
13
+ private debounceOnResolve;
14
+ private onResolvedAll;
15
+ private isOnResolvedAllCalled;
16
+ private fireHydrationEvent;
17
+ constructor(client: MentionNameClient, analyticsProps?: WithAnalyticsEventsProps, onResolvedAll?: () => void);
18
+ lookupName(id: string): Promise<MentionNameDetails> | MentionNameDetails;
19
+ cacheName(id: string, name: string): void;
20
+ private scheduleProcessQueue;
21
+ private scheduleOnAllResolved;
22
+ private isQueueAtLimit;
23
+ private splitQueueAtLimit;
24
+ private resolveQueueItem;
25
+ private processQueue;
26
+ private fireAnalytics;
27
+ }
@@ -0,0 +1,57 @@
1
+ import { type Presence } from '../types';
2
+ import type { PresenceCache, PresenceMap } from './PresenceResource';
3
+ export declare class DefaultPresenceCache implements PresenceCache {
4
+ private static readonly defaultTimeout;
5
+ private static readonly defaultFlushTrigger;
6
+ private cache;
7
+ private size;
8
+ private expiryInMillis;
9
+ private flushTrigger;
10
+ constructor(cacheTimeout?: number, cacheTrigger?: number);
11
+ /**
12
+ * Precondition: _delete is only called internally if userId exists in cache
13
+ * Removes cache entry
14
+ * @param userId
15
+ */
16
+ private _delete;
17
+ /**
18
+ * Checks a cache entry and calls delete if the info has expired
19
+ * @param userId
20
+ */
21
+ private _deleteIfExpired;
22
+ /**
23
+ * Cleans expired entries from cache
24
+ */
25
+ private _removeExpired;
26
+ /**
27
+ * Checks if a user exists in the cache
28
+ * @param userId
29
+ */
30
+ contains(userId: string): boolean;
31
+ /**
32
+ * Retrieves a presence from the cache after checking for expired entries
33
+ * @param userId - to index the cache
34
+ * @returns Presence - the presence that matches the userId
35
+ */
36
+ get(userId: string): Presence;
37
+ /**
38
+ * Retrieve multiple presences at once from the cache
39
+ * @param userIds - to index the cache
40
+ * @returns PresenceMap - A map of userIds to cached Presences
41
+ */
42
+ getBulk(userIds: string[]): PresenceMap;
43
+ /**
44
+ * For a given list of ids, returns a subset
45
+ * of all the ids with missing cache entries.
46
+ * @param userIds - to index the cache
47
+ * @returns string[] - ids missing from the cache
48
+ */
49
+ getMissingUserIds(userIds: string[]): string[];
50
+ /**
51
+ * Precondition: presMap only contains ids of users not in cache
52
+ * expired users must first be removed then reinserted with updated presence
53
+ * Updates the cache by adding the new Presence entries and setting the expiry time
54
+ * @param presMap
55
+ */
56
+ update(presMap: PresenceMap): void;
57
+ }
@@ -0,0 +1,8 @@
1
+ import type { PresenceMap, PresenceParser, PresenceResponse } from './PresenceResource';
2
+ export declare class DefaultPresenceParser implements PresenceParser {
3
+ static FOCUS_STATE: string;
4
+ mapState(state: string): string;
5
+ parse(response: PresenceResponse): PresenceMap;
6
+ private static extractState;
7
+ private static isFocusState;
8
+ }
@@ -0,0 +1,7 @@
1
+ export declare class HttpError implements Error {
2
+ name: string;
3
+ message: string;
4
+ statusCode: number;
5
+ stack?: string;
6
+ constructor(statusCode: number, statusMessage: string);
7
+ }