@atlaskit/reactions 22.6.2 → 22.7.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 (35) hide show
  1. package/CHANGELOG.md +1188 -782
  2. package/dist/cjs/analytics/index.js +1 -1
  3. package/dist/cjs/components/Reaction/Reaction.js +11 -5
  4. package/dist/cjs/components/Reaction/styles.js +7 -1
  5. package/dist/cjs/components/ReactionParticleEffect/ReactionParticleEffect.js +30 -0
  6. package/dist/cjs/components/ReactionParticleEffect/index.js +12 -0
  7. package/dist/cjs/components/ReactionParticleEffect/styles.js +58 -0
  8. package/dist/cjs/components/Reactions/Reactions.js +4 -1
  9. package/dist/es2019/analytics/index.js +1 -1
  10. package/dist/es2019/components/Reaction/Reaction.js +11 -6
  11. package/dist/es2019/components/Reaction/styles.js +6 -0
  12. package/dist/es2019/components/ReactionParticleEffect/ReactionParticleEffect.js +20 -0
  13. package/dist/es2019/components/ReactionParticleEffect/index.js +1 -0
  14. package/dist/es2019/components/ReactionParticleEffect/styles.js +52 -0
  15. package/dist/es2019/components/Reactions/Reactions.js +3 -1
  16. package/dist/esm/analytics/index.js +1 -1
  17. package/dist/esm/components/Reaction/Reaction.js +12 -6
  18. package/dist/esm/components/Reaction/styles.js +6 -0
  19. package/dist/esm/components/ReactionParticleEffect/ReactionParticleEffect.js +22 -0
  20. package/dist/esm/components/ReactionParticleEffect/index.js +1 -0
  21. package/dist/esm/components/ReactionParticleEffect/styles.js +52 -0
  22. package/dist/esm/components/Reactions/Reactions.js +4 -1
  23. package/dist/types/components/Reaction/Reaction.d.ts +9 -5
  24. package/dist/types/components/Reaction/styles.d.ts +2 -0
  25. package/dist/types/components/ReactionParticleEffect/ReactionParticleEffect.d.ts +16 -0
  26. package/dist/types/components/ReactionParticleEffect/index.d.ts +1 -0
  27. package/dist/types/components/ReactionParticleEffect/styles.d.ts +2 -0
  28. package/dist/types/components/Reactions/Reactions.d.ts +11 -6
  29. package/dist/types-ts4.5/components/Reaction/Reaction.d.ts +9 -5
  30. package/dist/types-ts4.5/components/Reaction/styles.d.ts +2 -0
  31. package/dist/types-ts4.5/components/ReactionParticleEffect/ReactionParticleEffect.d.ts +16 -0
  32. package/dist/types-ts4.5/components/ReactionParticleEffect/index.d.ts +1 -0
  33. package/dist/types-ts4.5/components/ReactionParticleEffect/styles.d.ts +2 -0
  34. package/dist/types-ts4.5/components/Reactions/Reactions.d.ts +11 -6
  35. package/package.json +8 -8
@@ -1,11 +1,11 @@
1
1
  /** @jsx jsx */
2
2
  import React from 'react';
3
3
  import { jsx } from '@emotion/react';
4
- import { OnCloseHandler } from '@atlaskit/modal-dialog';
5
- import { onDialogSelectReactionChange, ReactionStatus, ReactionClick, ReactionSummary, QuickReactionEmojiSummary } from '../../types';
6
- import { ReactionProps } from '../Reaction';
7
- import { ReactionPickerProps } from '../ReactionPicker';
8
- import { SelectorProps } from '../Selector';
4
+ import { type OnCloseHandler } from '@atlaskit/modal-dialog';
5
+ import { type onDialogSelectReactionChange, ReactionStatus, type ReactionClick, type ReactionSummary, type QuickReactionEmojiSummary } from '../../types';
6
+ import { type ReactionProps } from '../Reaction';
7
+ import { type ReactionPickerProps } from '../ReactionPicker';
8
+ import { type SelectorProps } from '../Selector';
9
9
  /**
10
10
  * Set of all available UFO experiences relating to reactions dialog
11
11
  */
@@ -56,6 +56,11 @@ export interface ReactionsProps extends Pick<ReactionPickerProps, 'allowAllEmoji
56
56
  * Optional emoji reactions list to show custom animation or render as standard (key => emoji string "id", value => true/false to show custom animation)
57
57
  */
58
58
  flash?: Record<string, boolean>;
59
+ /**
60
+ * Optional emoji reactions list to show floating emoji particle effect (key => emoji string "id", value => true/false to show the particle effect).
61
+ * Generally used for newly added reactions.
62
+ */
63
+ particleEffectByEmoji?: Record<string, boolean>;
59
64
  /**
60
65
  * Optional event to get reaction details for an emoji
61
66
  * @param emojiId current reaction emoji id
@@ -93,4 +98,4 @@ export declare function getTooltip(status: ReactionStatus, errorMessage?: string
93
98
  /**
94
99
  * Renders list of reactions
95
100
  */
96
- export declare const Reactions: React.MemoExoticComponent<({ flash, status, errorMessage, loadReaction, quickReactionEmojis, pickerQuickReactionEmojiIds, getReactionDetails, onReactionHover, onSelection, reactions, emojiProvider, allowAllEmojis, onReactionClick, allowUserDialog, onDialogOpenCallback, onDialogCloseCallback, onDialogSelectReactionCallback, emojiPickerSize, miniMode, }: ReactionsProps) => jsx.JSX.Element>;
101
+ export declare const Reactions: React.MemoExoticComponent<({ flash, particleEffectByEmoji, status, errorMessage, loadReaction, quickReactionEmojis, pickerQuickReactionEmojiIds, getReactionDetails, onReactionHover, onSelection, reactions, emojiProvider, allowAllEmojis, onReactionClick, allowUserDialog, onDialogOpenCallback, onDialogCloseCallback, onDialogSelectReactionCallback, emojiPickerSize, miniMode, }: ReactionsProps) => jsx.JSX.Element>;
@@ -1,8 +1,8 @@
1
1
  import { jsx } from '@emotion/react';
2
- import { EmojiProvider } from '@atlaskit/emoji';
3
- import { ReactionSummary, ReactionClick, ReactionMouseEnter } from '../../types';
4
- import { ReactionTooltipProps } from '../ReactionTooltip';
5
- import { ReactionFocused } from '../../types/reaction';
2
+ import { type EmojiProvider } from '@atlaskit/emoji';
3
+ import { type ReactionSummary, type ReactionClick, type ReactionMouseEnter } from '../../types';
4
+ import { type ReactionTooltipProps } from '../ReactionTooltip';
5
+ import { type ReactionFocused } from '../../types/reaction';
6
6
  /**
7
7
  * Test id for Reaction item wrapper div
8
8
  */
@@ -36,6 +36,10 @@ export interface ReactionProps extends Pick<ReactionTooltipProps, 'allowUserDial
36
36
  * Show custom animation or render as standard without animation (defaults to false)
37
37
  */
38
38
  flash?: boolean;
39
+ /**
40
+ * Show a floating emoji particle effect (usually in response to a new reaction) (defaults to false)
41
+ */
42
+ showParticleEffect?: boolean;
39
43
  /**
40
44
  * Optional function when the user wants to see more users in a modal
41
45
  */
@@ -44,4 +48,4 @@ export interface ReactionProps extends Pick<ReactionTooltipProps, 'allowUserDial
44
48
  /**
45
49
  * Render an emoji reaction button
46
50
  */
47
- export declare const Reaction: ({ emojiProvider, onClick, reaction, onMouseEnter, onFocused, className, flash, handleUserListClick, allowUserDialog, }: ReactionProps) => jsx.JSX.Element;
51
+ export declare const Reaction: ({ emojiProvider, onClick, reaction, onMouseEnter, onFocused, className, flash, showParticleEffect, handleUserListClick, allowUserDialog, }: ReactionProps) => jsx.JSX.Element;
@@ -3,8 +3,10 @@
3
3
  * Padding and line height are set within the child components
4
4
  * of FlashAnimation b/c it otherwise throws off the flash styling
5
5
  */
6
+ export declare const containerStyle: import("@emotion/react").SerializedStyles;
6
7
  export declare const emojiStyle: import("@emotion/react").SerializedStyles;
7
8
  export declare const reactionStyle: import("@emotion/react").SerializedStyles;
8
9
  export declare const reactedStyle: import("@emotion/react").SerializedStyles;
9
10
  export declare const flashHeight: number;
10
11
  export declare const flashStyle: import("@emotion/react").SerializedStyles;
12
+ export declare const emojiNoReactionStyle: import("@emotion/react").SerializedStyles;
@@ -0,0 +1,16 @@
1
+ /** @jsx jsx */
2
+ import { type EmojiProvider, type EmojiId } from '@atlaskit/emoji';
3
+ import { jsx } from '@emotion/react';
4
+ export declare const PARTICLE_COUNT = 4;
5
+ interface ReactionParticleEffectProps {
6
+ /**
7
+ * ID of the emoji to show within the particle effect
8
+ */
9
+ emojiId: EmojiId;
10
+ /**
11
+ * Provider for loading emojis
12
+ */
13
+ emojiProvider: Promise<EmojiProvider>;
14
+ }
15
+ export declare const ReactionParticleEffect: ({ emojiProvider, emojiId }: ReactionParticleEffectProps) => jsx.JSX.Element;
16
+ export {};
@@ -0,0 +1 @@
1
+ export { ReactionParticleEffect } from './ReactionParticleEffect';
@@ -0,0 +1,2 @@
1
+ export declare const containerStyle: import("@emotion/react").SerializedStyles;
2
+ export declare const reactionParticleStyle: import("@emotion/react").SerializedStyles;
@@ -1,11 +1,11 @@
1
1
  /** @jsx jsx */
2
2
  import React from 'react';
3
3
  import { jsx } from '@emotion/react';
4
- import { OnCloseHandler } from '@atlaskit/modal-dialog';
5
- import { onDialogSelectReactionChange, ReactionStatus, ReactionClick, ReactionSummary, QuickReactionEmojiSummary } from '../../types';
6
- import { ReactionProps } from '../Reaction';
7
- import { ReactionPickerProps } from '../ReactionPicker';
8
- import { SelectorProps } from '../Selector';
4
+ import { type OnCloseHandler } from '@atlaskit/modal-dialog';
5
+ import { type onDialogSelectReactionChange, ReactionStatus, type ReactionClick, type ReactionSummary, type QuickReactionEmojiSummary } from '../../types';
6
+ import { type ReactionProps } from '../Reaction';
7
+ import { type ReactionPickerProps } from '../ReactionPicker';
8
+ import { type SelectorProps } from '../Selector';
9
9
  /**
10
10
  * Set of all available UFO experiences relating to reactions dialog
11
11
  */
@@ -56,6 +56,11 @@ export interface ReactionsProps extends Pick<ReactionPickerProps, 'allowAllEmoji
56
56
  * Optional emoji reactions list to show custom animation or render as standard (key => emoji string "id", value => true/false to show custom animation)
57
57
  */
58
58
  flash?: Record<string, boolean>;
59
+ /**
60
+ * Optional emoji reactions list to show floating emoji particle effect (key => emoji string "id", value => true/false to show the particle effect).
61
+ * Generally used for newly added reactions.
62
+ */
63
+ particleEffectByEmoji?: Record<string, boolean>;
59
64
  /**
60
65
  * Optional event to get reaction details for an emoji
61
66
  * @param emojiId current reaction emoji id
@@ -93,4 +98,4 @@ export declare function getTooltip(status: ReactionStatus, errorMessage?: string
93
98
  /**
94
99
  * Renders list of reactions
95
100
  */
96
- export declare const Reactions: React.MemoExoticComponent<({ flash, status, errorMessage, loadReaction, quickReactionEmojis, pickerQuickReactionEmojiIds, getReactionDetails, onReactionHover, onSelection, reactions, emojiProvider, allowAllEmojis, onReactionClick, allowUserDialog, onDialogOpenCallback, onDialogCloseCallback, onDialogSelectReactionCallback, emojiPickerSize, miniMode, }: ReactionsProps) => jsx.JSX.Element>;
101
+ export declare const Reactions: React.MemoExoticComponent<({ flash, particleEffectByEmoji, status, errorMessage, loadReaction, quickReactionEmojis, pickerQuickReactionEmojiIds, getReactionDetails, onReactionHover, onSelection, reactions, emojiProvider, allowAllEmojis, onReactionClick, allowUserDialog, onDialogOpenCallback, onDialogCloseCallback, onDialogSelectReactionCallback, emojiPickerSize, miniMode, }: ReactionsProps) => jsx.JSX.Element>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/reactions",
3
- "version": "22.6.2",
3
+ "version": "22.7.0",
4
4
  "description": "Reactions component",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -22,7 +22,7 @@
22
22
  },
23
23
  "atlaskit:src": "src/index.ts",
24
24
  "atlassian": {
25
- "team": "Foundational Elements",
25
+ "team": "Editor: Collaboration",
26
26
  "releaseModel": "continuous",
27
27
  "website": {
28
28
  "name": "Reactions"
@@ -36,18 +36,18 @@
36
36
  "@atlaskit/analytics-gas-types": "^5.1.0",
37
37
  "@atlaskit/analytics-namespaced-context": "^6.9.0",
38
38
  "@atlaskit/analytics-next": "^9.3.0",
39
- "@atlaskit/avatar": "^21.5.0",
39
+ "@atlaskit/avatar": "^21.6.0",
40
40
  "@atlaskit/button": "^17.14.0",
41
41
  "@atlaskit/emoji": "^67.6.0",
42
42
  "@atlaskit/icon": "^22.1.0",
43
- "@atlaskit/modal-dialog": "^12.11.0",
43
+ "@atlaskit/modal-dialog": "^12.13.0",
44
44
  "@atlaskit/motion": "^1.5.0",
45
45
  "@atlaskit/popper": "^5.5.0",
46
- "@atlaskit/spinner": "^16.0.0",
47
- "@atlaskit/tabs": "^16.0.0",
46
+ "@atlaskit/spinner": "^16.1.0",
47
+ "@atlaskit/tabs": "^16.1.0",
48
48
  "@atlaskit/theme": "^12.7.0",
49
- "@atlaskit/tokens": "^1.43.0",
50
- "@atlaskit/tooltip": "^18.2.0",
49
+ "@atlaskit/tokens": "^1.45.0",
50
+ "@atlaskit/tooltip": "^18.3.0",
51
51
  "@atlaskit/ufo": "^0.2.0",
52
52
  "@atlaskit/util-service-support": "^6.2.0",
53
53
  "@babel/runtime": "^7.0.0",