@atlaskit/reactions 30.0.1 → 30.0.2

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 (88) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/afm-cc/tsconfig.json +3 -0
  3. package/afm-jira/tsconfig.json +3 -0
  4. package/afm-post-office/tsconfig.json +3 -0
  5. package/dist/cjs/analytics/index.js +1 -1
  6. package/dist/cjs/components/ShowMore/ShowMore.js +4 -10
  7. package/dist/cjs/components/compiled/EmojiButton.compiled.css +17 -0
  8. package/dist/cjs/components/compiled/EmojiButton.js +48 -0
  9. package/dist/cjs/components/compiled/ReactionButton.compiled.css +4 -5
  10. package/dist/cjs/components/compiled/ReactionButton.js +5 -3
  11. package/dist/cjs/components/compiled/ReactionPicker.compiled.css +11 -0
  12. package/dist/cjs/components/compiled/ReactionPicker.js +325 -0
  13. package/dist/cjs/components/compiled/ReactionSummaryButton.compiled.css +7 -0
  14. package/dist/cjs/components/compiled/ReactionSummaryButton.js +110 -0
  15. package/dist/cjs/components/compiled/ReactionSummaryView.compiled.css +5 -0
  16. package/dist/cjs/components/compiled/ReactionSummaryView.js +117 -0
  17. package/dist/cjs/components/compiled/Reactions.js +4 -4
  18. package/dist/cjs/components/compiled/Selector.compiled.css +13 -0
  19. package/dist/cjs/components/compiled/Selector.js +81 -0
  20. package/dist/cjs/components/compiled/StaticReaction.compiled.css +3 -1
  21. package/dist/cjs/components/compiled/StaticReaction.js +3 -4
  22. package/dist/cjs/components/compiled/Trigger.compiled.css +34 -0
  23. package/dist/cjs/components/compiled/Trigger.js +100 -0
  24. package/dist/cjs/containers/ConnectedReactionPicker/ConnectedReactionPicker.js +5 -1
  25. package/dist/cjs/index.js +3 -7
  26. package/dist/es2019/analytics/index.js +1 -1
  27. package/dist/es2019/components/ShowMore/ShowMore.js +3 -8
  28. package/dist/es2019/components/compiled/EmojiButton.compiled.css +17 -0
  29. package/dist/es2019/components/compiled/EmojiButton.js +40 -0
  30. package/dist/es2019/components/compiled/ReactionButton.compiled.css +4 -5
  31. package/dist/es2019/components/compiled/ReactionButton.js +5 -3
  32. package/dist/es2019/components/compiled/ReactionPicker.compiled.css +11 -0
  33. package/dist/es2019/components/compiled/ReactionPicker.js +295 -0
  34. package/dist/es2019/components/compiled/ReactionSummaryButton.compiled.css +7 -0
  35. package/dist/es2019/components/compiled/ReactionSummaryButton.js +88 -0
  36. package/dist/es2019/components/compiled/ReactionSummaryView.compiled.css +5 -0
  37. package/dist/es2019/components/compiled/ReactionSummaryView.js +87 -0
  38. package/dist/es2019/components/compiled/Reactions.js +3 -3
  39. package/dist/es2019/components/compiled/Selector.compiled.css +14 -0
  40. package/dist/es2019/components/compiled/Selector.js +69 -0
  41. package/dist/es2019/components/compiled/StaticReaction.compiled.css +3 -1
  42. package/dist/es2019/components/compiled/StaticReaction.js +4 -5
  43. package/dist/es2019/components/compiled/Trigger.compiled.css +34 -0
  44. package/dist/es2019/components/compiled/Trigger.js +90 -0
  45. package/dist/es2019/containers/ConnectedReactionPicker/ConnectedReactionPicker.js +5 -1
  46. package/dist/es2019/index.js +6 -2
  47. package/dist/esm/analytics/index.js +1 -1
  48. package/dist/esm/components/ShowMore/ShowMore.js +4 -9
  49. package/dist/esm/components/compiled/EmojiButton.compiled.css +17 -0
  50. package/dist/esm/components/compiled/EmojiButton.js +39 -0
  51. package/dist/esm/components/compiled/ReactionButton.compiled.css +4 -5
  52. package/dist/esm/components/compiled/ReactionButton.js +5 -3
  53. package/dist/esm/components/compiled/ReactionPicker.compiled.css +11 -0
  54. package/dist/esm/components/compiled/ReactionPicker.js +316 -0
  55. package/dist/esm/components/compiled/ReactionSummaryButton.compiled.css +7 -0
  56. package/dist/esm/components/compiled/ReactionSummaryButton.js +100 -0
  57. package/dist/esm/components/compiled/ReactionSummaryView.compiled.css +5 -0
  58. package/dist/esm/components/compiled/ReactionSummaryView.js +107 -0
  59. package/dist/esm/components/compiled/Reactions.js +3 -3
  60. package/dist/esm/components/compiled/Selector.compiled.css +13 -0
  61. package/dist/esm/components/compiled/Selector.js +71 -0
  62. package/dist/esm/components/compiled/StaticReaction.compiled.css +3 -1
  63. package/dist/esm/components/compiled/StaticReaction.js +4 -5
  64. package/dist/esm/components/compiled/Trigger.compiled.css +34 -0
  65. package/dist/esm/components/compiled/Trigger.js +93 -0
  66. package/dist/esm/containers/ConnectedReactionPicker/ConnectedReactionPicker.js +5 -1
  67. package/dist/esm/index.js +6 -2
  68. package/dist/types/components/ShowMore/ShowMore.d.ts +2 -7
  69. package/dist/types/components/compiled/EmojiButton.d.ts +21 -0
  70. package/dist/types/components/compiled/ReactionButton.d.ts +2 -1
  71. package/dist/types/components/compiled/ReactionPicker.d.ts +100 -0
  72. package/dist/types/components/compiled/ReactionSummaryButton.d.ts +34 -0
  73. package/dist/types/components/compiled/ReactionSummaryView.d.ts +58 -0
  74. package/dist/types/components/compiled/Reactions.d.ts +2 -2
  75. package/dist/types/components/compiled/Selector.d.ts +33 -0
  76. package/dist/types/components/compiled/Trigger.d.ts +64 -0
  77. package/dist/types/index.d.ts +4 -2
  78. package/dist/types-ts4.5/components/ShowMore/ShowMore.d.ts +2 -7
  79. package/dist/types-ts4.5/components/compiled/EmojiButton.d.ts +21 -0
  80. package/dist/types-ts4.5/components/compiled/ReactionButton.d.ts +2 -1
  81. package/dist/types-ts4.5/components/compiled/ReactionPicker.d.ts +100 -0
  82. package/dist/types-ts4.5/components/compiled/ReactionSummaryButton.d.ts +34 -0
  83. package/dist/types-ts4.5/components/compiled/ReactionSummaryView.d.ts +58 -0
  84. package/dist/types-ts4.5/components/compiled/Reactions.d.ts +2 -2
  85. package/dist/types-ts4.5/components/compiled/Selector.d.ts +33 -0
  86. package/dist/types-ts4.5/components/compiled/Trigger.d.ts +64 -0
  87. package/dist/types-ts4.5/index.d.ts +4 -2
  88. package/package.json +2 -1
@@ -0,0 +1,100 @@
1
+ /**
2
+ * @jsxRuntime classic
3
+ * @jsx jsx
4
+ */
5
+ import React, { type PropsWithChildren } from 'react';
6
+ import { type PickerSize } from '@atlaskit/emoji/types';
7
+ import { type EmojiProvider } from '@atlaskit/emoji/resource';
8
+ import { type PopperProps, type Placement } from '@atlaskit/popper';
9
+ import { type ReactionSource } from '../../types';
10
+ import { type SelectorProps } from './Selector';
11
+ import { type TriggerProps } from './Trigger';
12
+ /**
13
+ * Test id for wrapper ReactionPicker div
14
+ */
15
+ export declare const RENDER_REACTIONPICKER_TESTID = "reactionPicker-testid";
16
+ /**
17
+ * Test id for ReactionPicker panel div
18
+ */
19
+ export declare const RENDER_REACTIONPICKERPANEL_TESTID = "reactionPickerPanel-testid";
20
+ export interface ReactionPickerProps extends Pick<SelectorProps, 'pickerQuickReactionEmojiIds'>, Partial<Pick<TriggerProps, 'tooltipContent' | 'miniMode'>> {
21
+ /**
22
+ * Provider for loading emojis
23
+ */
24
+ emojiProvider: Promise<EmojiProvider>;
25
+ /**
26
+ * Event callback when an emoji button is selected
27
+ * @param emojiId emoji unique id
28
+ * @param source source where the reaction was picked (either the initial default reactions or the custom reactions picker)
29
+ */
30
+ onSelection: (emojiId: string, source: ReactionSource) => void;
31
+ /**
32
+ * Optional class name
33
+ */
34
+ className?: string;
35
+ /**
36
+ * Optional Show the "more emoji" selector icon for choosing emoji beyond the default list of emojis (defaults to false)
37
+ */
38
+ allowAllEmojis?: boolean;
39
+ /**
40
+ * Enable/Disable the button to be clickable (defaults to false)
41
+ */
42
+ disabled?: boolean;
43
+ /**
44
+ * Optional event handler when the emoji picker is opened
45
+ */
46
+ onOpen?: () => void;
47
+ /**
48
+ * Optional event handler when the emoji picker is clicked outside and closed
49
+ */
50
+ onCancel?: () => void;
51
+ /**
52
+ * Optional event handler when the custom emoji picker icon is selected
53
+ */
54
+ onShowMore?: () => void;
55
+ /**
56
+ * Optional emoji picker size to control the size of emoji picker
57
+ */
58
+ emojiPickerSize?: PickerSize;
59
+ /**
60
+ * Optional prop for using an opaque button background instead of a transparent background
61
+ */
62
+ showOpaqueBackground?: boolean;
63
+ /**
64
+ * Optional prop for applying subtle styling to reaction summary and picker
65
+ */
66
+ subtleReactionsSummaryAndPicker?: boolean;
67
+ /**
68
+ * Optional prop for displaying text to add a reaction
69
+ */
70
+ showAddReactionText?: boolean;
71
+ /**
72
+ * Optional prop for controlling if the picker hover border will be rounded
73
+ */
74
+ showRoundTrigger?: boolean;
75
+ /**
76
+ * Optional prop for controlling the picker location, gets overrided by showRoundTrigger
77
+ */
78
+ reactionPickerPlacement?: Placement;
79
+ /**
80
+ * Optional prop for controlling the overflow of the reaction picker
81
+ */
82
+ reactionsPickerPreventOverflowOptions?: Record<string, any>;
83
+ /**
84
+ * Optional prop for controlling icon inside Trigger
85
+ */
86
+ reactionPickerTriggerIcon?: React.ReactNode;
87
+ }
88
+ /**
89
+ * Picker component for adding reactions
90
+ */
91
+ export declare const ReactionPicker: React.MemoExoticComponent<(props: ReactionPickerProps) => JSX.Element>;
92
+ export interface PopperWrapperProps {
93
+ settings: {
94
+ isOpen: boolean;
95
+ showFullPicker: boolean;
96
+ popperPlacement: Placement;
97
+ };
98
+ popperModifiers?: PopperProps<{}>['modifiers'];
99
+ }
100
+ export declare const PopperWrapper: (props: PropsWithChildren<PopperWrapperProps>) => JSX.Element;
@@ -0,0 +1,34 @@
1
+ /// <reference types="react" />
2
+ import { type ReactionsProps } from './Reactions';
3
+ interface ReactionSummaryButtonProps extends Pick<ReactionsProps, 'emojiProvider' | 'reactions' | 'useButtonAlignmentStyling'> {
4
+ /**
5
+ * event handler when the summary button is clicked to view all reactions
6
+ */
7
+ onClick: () => void;
8
+ /**
9
+ * The number of emojis to show in the summary button
10
+ */
11
+ emojisToShow?: number;
12
+ /**
13
+ * Optional prop for using an opaque button background instead of a transparent background
14
+ */
15
+ showOpaqueBackground?: boolean;
16
+ /**
17
+ * Optional prop for applying subtle styling to reaction summary button
18
+ */
19
+ subtleReactionsSummaryAndPicker?: boolean;
20
+ /**
21
+ * Optional prop to apply compact styling
22
+ */
23
+ useCompactStyles?: boolean;
24
+ }
25
+ /**
26
+ * Test id for summary reaction wrapper button
27
+ */
28
+ export declare const RENDER_SUMMARY_BUTTON_TESTID = "reaction-summary-button";
29
+ /**
30
+ * Test id for emojis displayed inside summary button. All emoji's in the summary button will have this test id
31
+ */
32
+ export declare const RENDER_SUMMARY_EMOJI_TESTID = "summary-emoji-display";
33
+ export declare const ReactionSummaryButton: import("react").ForwardRefExoticComponent<ReactionSummaryButtonProps & import("react").RefAttributes<HTMLDivElement>>;
34
+ export {};
@@ -0,0 +1,58 @@
1
+ /// <reference types="react" />
2
+ import { type Placement } from '@atlaskit/popper';
3
+ import { type ReactionClick, type ReactionFocused, type ReactionMouseEnter, type ReactionSource } from '../../types';
4
+ import { type ReactionsProps, type OpenReactionsDialogOptions } from './Reactions';
5
+ import { type TriggerProps } from './Trigger';
6
+ /**
7
+ * Test id for the Reactions summary view popup
8
+ */
9
+ export declare const RENDER_SUMMARY_VIEW_POPUP_TESTID = "render-summary-view-popup";
10
+ interface ReactionSummaryViewProps extends Pick<ReactionsProps, 'emojiProvider' | 'reactions' | 'flash' | 'particleEffectByEmoji' | 'allowUserDialog' | 'allowSelectFromSummaryView' | 'emojiPickerSize' | 'useButtonAlignmentStyling'>, Pick<TriggerProps, 'tooltipContent' | 'reactionPickerTriggerIcon' | 'disabled'> {
11
+ /**
12
+ * Optional prop to change the placement of the summary popup reaction list
13
+ */
14
+ placement?: Placement;
15
+ /**
16
+ * event handler when a a reaction button is clicked inside the summary
17
+ */
18
+ onReactionClick: ReactionClick;
19
+ /**
20
+ * Event callback when an emoji button is selected
21
+ * @param emojiId emoji unique id
22
+ * @param source source where the reaction was picked (either the initial default reactions or the custom reactions picker)
23
+ */
24
+ onSelection: (emojiId: string, source: ReactionSource) => void;
25
+ /**
26
+ * Optional event when the mouse cursor hovers over a reaction button inside the summary
27
+ */
28
+ onReactionMouseEnter?: ReactionMouseEnter;
29
+ /**
30
+ * Optional event when focused a reaction inside the summary
31
+ */
32
+ onReactionFocused?: ReactionFocused;
33
+ /**
34
+ * Optional prop for using an opaque button background instead of a transparent background
35
+ */
36
+ showOpaqueBackground?: boolean;
37
+ /**
38
+ * Optional prop for applying subtle styling to reaction picker
39
+ */
40
+ subtleReactionsSummaryAndPicker?: boolean;
41
+ /**
42
+ * Optional prop for enabling the Reactions Dialog
43
+ */
44
+ allowUserDialog?: boolean;
45
+ /**
46
+ * Optional function when the user wants to open the Reactions Dialog
47
+ */
48
+ handleOpenReactionsDialog?: (options?: OpenReactionsDialogOptions) => void /**
49
+ * Optional prop for controlling if the reactions component is view only, disabling adding reactions
50
+ */;
51
+ isViewOnly?: boolean;
52
+ /**
53
+ * Optional event handler when the emoji picker is opened
54
+ */
55
+ onOpen?: () => void;
56
+ }
57
+ export declare const ReactionSummaryView: ({ emojiProvider, reactions, flash, particleEffectByEmoji, placement, onReactionClick, onReactionFocused, onReactionMouseEnter, showOpaqueBackground, subtleReactionsSummaryAndPicker, allowUserDialog, handleOpenReactionsDialog, isViewOnly, allowSelectFromSummaryView, disabled, emojiPickerSize, onSelection, tooltipContent, reactionPickerTriggerIcon, onOpen, useButtonAlignmentStyling, }: ReactionSummaryViewProps) => JSX.Element;
58
+ export {};
@@ -6,8 +6,8 @@ import React from 'react';
6
6
  import { type OnCloseHandler } from '@atlaskit/modal-dialog';
7
7
  import { type Placement } from '@atlaskit/popper';
8
8
  import { ReactionStatus, type ReactionClick, type ReactionSummary, type QuickReactionEmojiSummary, type ProfileCardWrapper } from '../../types';
9
- import { type ReactionPickerProps } from '../ReactionPicker';
10
- import { type SelectorProps } from '../Selector';
9
+ import { type ReactionPickerProps } from './ReactionPicker';
10
+ import { type SelectorProps } from './Selector';
11
11
  /**
12
12
  * Set of all available UFO experiences relating to Reactions Dialog
13
13
  */
@@ -0,0 +1,33 @@
1
+ /// <reference types="react" />
2
+ import { type EmojiId, type OnEmojiEvent } from '@atlaskit/emoji/types';
3
+ import { type EmojiProvider } from '@atlaskit/emoji/resource';
4
+ /**
5
+ * Test id for wrapper Selector div
6
+ */
7
+ export declare const RENDER_SELECTOR_TESTID = "render-selector";
8
+ export interface SelectorProps {
9
+ /**
10
+ * Provider for loading emojis
11
+ */
12
+ emojiProvider: Promise<EmojiProvider>;
13
+ /**
14
+ * Event handler when an emoji gets selected
15
+ */
16
+ onSelection: OnEmojiEvent;
17
+ /**
18
+ * Enable/Disable selection of extra custom emoji beyond default list (defaults to false)
19
+ */
20
+ showMore?: boolean;
21
+ /**
22
+ * Optional event when extra custom emojis icon is selected
23
+ */
24
+ onMoreClick?: React.MouseEventHandler<HTMLElement>;
25
+ /**
26
+ * Optional emojis shown for user to select from when the reaction add button is clicked (defaults to pre-defined list of emojis {@link DefaultReactions})
27
+ */
28
+ pickerQuickReactionEmojiIds?: EmojiId[];
29
+ }
30
+ /**
31
+ * Reactions picker panel part of the <ReactionPicker /> component
32
+ */
33
+ export declare const Selector: ({ emojiProvider, onMoreClick, onSelection, showMore, pickerQuickReactionEmojiIds, }: SelectorProps) => JSX.Element;
@@ -0,0 +1,64 @@
1
+ /**
2
+ * @jsxRuntime classic
3
+ * @jsx jsx
4
+ */
5
+ import { type AriaAttributes } from 'react';
6
+ import { type AnalyticsEvent } from '@atlaskit/analytics-next';
7
+ import React from 'react';
8
+ /**
9
+ * Test id for the tooltip
10
+ */
11
+ export declare const RENDER_TOOLTIP_TRIGGER_TESTID = "render-tooltip-trigger";
12
+ export declare const RENDER_TRIGGER_BUTTON_TESTID = "render-trigger-button";
13
+ export interface TriggerProps {
14
+ /**
15
+ * Optional Event handler when the button to open the picker is clicked
16
+ * @param e Mouse Dom event
17
+ * @param analyticsEvent atlaskit analytics event payload of the button
18
+ */
19
+ onClick?: (e: React.MouseEvent<HTMLElement>, analyticsEvent: AnalyticsEvent) => void;
20
+ /**
21
+ * apply "miniMode" className to the button
22
+ */
23
+ miniMode?: boolean;
24
+ /**
25
+ * Enable/Disable the button to be clickable (defaults to false)
26
+ */
27
+ disabled?: boolean;
28
+ /**
29
+ * Tooltip content for trigger button
30
+ */
31
+ tooltipContent: React.ReactNode;
32
+ /**
33
+ * Aria accessibility attributes that will be added to the button
34
+ */
35
+ ariaAttributes?: AriaAttributes;
36
+ /**
37
+ * Optional prop for using an opaque button background instead of a transparent background
38
+ */
39
+ showOpaqueBackground?: boolean;
40
+ /**
41
+ * Optional prop for displaying text to add a reaction
42
+ */
43
+ showAddReactionText?: boolean;
44
+ /**
45
+ * Optional prop for applying subtle styling to reaction picker
46
+ */
47
+ subtleReactionsSummaryAndPicker?: boolean;
48
+ /**
49
+ * Optional prop for controlling if the picker hover border will be rounded
50
+ */
51
+ showRoundTrigger?: boolean;
52
+ /**
53
+ * Optional prop for controlling icon inside Trigger
54
+ */
55
+ reactionPickerTriggerIcon?: React.ReactNode;
56
+ /**
57
+ * Optional prop for controlling if reaction picker is opened
58
+ */
59
+ isSelected?: boolean;
60
+ }
61
+ /**
62
+ * Render an emoji button to open the reactions select picker
63
+ */
64
+ export declare const Trigger: React.ForwardRefExoticComponent<TriggerProps & React.RefAttributes<HTMLButtonElement>>;
@@ -2,9 +2,11 @@
2
2
  import { ComponentName, ExperienceName } from './ufo';
3
3
  declare const Reaction: import("react").FC<import("./components/compiled/Reaction").ReactionProps & import("./components/Reaction").ReactionProps>;
4
4
  declare const Reactions: import("react").FC<import("./components/compiled/Reactions").ReactionsProps & import("./components/Reactions").ReactionsProps>;
5
+ declare const ReactionPicker: import("react").FC<import("./components/ReactionPicker/ReactionPicker").ReactionPickerProps>;
5
6
  export { ReactionServiceClient } from './client';
6
- export { Reaction, Reactions };
7
- export { ReactionPicker } from './components/ReactionPicker/ReactionPicker';
7
+ export { Reaction };
8
+ export { Reactions };
9
+ export { ReactionPicker };
8
10
  export { useCloseManager } from './hooks/useCloseManager';
9
11
  export { ConnectedReactionPicker, ConnectedReactionsView } from './containers';
10
12
  export { MemoryReactionsStore, ReactionConsumer } from './store';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/reactions",
3
- "version": "30.0.1",
3
+ "version": "30.0.2",
4
4
  "description": "Reactions component",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -37,6 +37,7 @@
37
37
  "@atlaskit/analytics-next": "^11.0.0",
38
38
  "@atlaskit/avatar": "^25.0.0",
39
39
  "@atlaskit/button": "^21.1.0",
40
+ "@atlaskit/css": "^0.10.0",
40
41
  "@atlaskit/emoji": "^69.0.0",
41
42
  "@atlaskit/heading": "^5.1.0",
42
43
  "@atlaskit/icon": "^25.1.0",