@atlaskit/reactions 30.0.0 → 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 (125) hide show
  1. package/CHANGELOG.md +16 -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/ReactionView.compiled.css +22 -0
  18. package/dist/cjs/components/compiled/ReactionView.js +77 -0
  19. package/dist/cjs/components/compiled/Reactions.js +6 -6
  20. package/dist/cjs/components/compiled/ReactionsDialog.compiled.css +14 -0
  21. package/dist/cjs/components/compiled/ReactionsDialog.js +125 -0
  22. package/dist/cjs/components/compiled/ReactionsDialogHeader.compiled.css +60 -0
  23. package/dist/cjs/components/compiled/ReactionsDialogHeader.js +203 -0
  24. package/dist/cjs/components/compiled/ReactionsDialogTrigger.compiled.css +16 -0
  25. package/dist/cjs/components/compiled/ReactionsDialogTrigger.js +39 -0
  26. package/dist/cjs/components/compiled/ReactionsList.js +26 -0
  27. package/dist/cjs/components/compiled/Selector.compiled.css +13 -0
  28. package/dist/cjs/components/compiled/Selector.js +81 -0
  29. package/dist/cjs/components/compiled/StaticReaction.compiled.css +3 -1
  30. package/dist/cjs/components/compiled/StaticReaction.js +3 -4
  31. package/dist/cjs/components/compiled/Trigger.compiled.css +34 -0
  32. package/dist/cjs/components/compiled/Trigger.js +100 -0
  33. package/dist/cjs/containers/ConnectedReactionPicker/ConnectedReactionPicker.js +5 -1
  34. package/dist/cjs/index.js +3 -7
  35. package/dist/es2019/analytics/index.js +1 -1
  36. package/dist/es2019/components/ShowMore/ShowMore.js +3 -8
  37. package/dist/es2019/components/compiled/EmojiButton.compiled.css +17 -0
  38. package/dist/es2019/components/compiled/EmojiButton.js +40 -0
  39. package/dist/es2019/components/compiled/ReactionButton.compiled.css +4 -5
  40. package/dist/es2019/components/compiled/ReactionButton.js +5 -3
  41. package/dist/es2019/components/compiled/ReactionPicker.compiled.css +11 -0
  42. package/dist/es2019/components/compiled/ReactionPicker.js +295 -0
  43. package/dist/es2019/components/compiled/ReactionSummaryButton.compiled.css +7 -0
  44. package/dist/es2019/components/compiled/ReactionSummaryButton.js +88 -0
  45. package/dist/es2019/components/compiled/ReactionSummaryView.compiled.css +5 -0
  46. package/dist/es2019/components/compiled/ReactionSummaryView.js +87 -0
  47. package/dist/es2019/components/compiled/ReactionView.compiled.css +22 -0
  48. package/dist/es2019/components/compiled/ReactionView.js +63 -0
  49. package/dist/es2019/components/compiled/Reactions.js +4 -4
  50. package/dist/es2019/components/compiled/ReactionsDialog.compiled.css +14 -0
  51. package/dist/es2019/components/compiled/ReactionsDialog.js +99 -0
  52. package/dist/es2019/components/compiled/ReactionsDialogHeader.compiled.css +60 -0
  53. package/dist/es2019/components/compiled/ReactionsDialogHeader.js +172 -0
  54. package/dist/es2019/components/compiled/ReactionsDialogTrigger.compiled.css +16 -0
  55. package/dist/es2019/components/compiled/ReactionsDialogTrigger.js +30 -0
  56. package/dist/es2019/components/compiled/ReactionsList.js +20 -0
  57. package/dist/es2019/components/compiled/Selector.compiled.css +14 -0
  58. package/dist/es2019/components/compiled/Selector.js +69 -0
  59. package/dist/es2019/components/compiled/StaticReaction.compiled.css +3 -1
  60. package/dist/es2019/components/compiled/StaticReaction.js +4 -5
  61. package/dist/es2019/components/compiled/Trigger.compiled.css +34 -0
  62. package/dist/es2019/components/compiled/Trigger.js +90 -0
  63. package/dist/es2019/containers/ConnectedReactionPicker/ConnectedReactionPicker.js +5 -1
  64. package/dist/es2019/index.js +6 -2
  65. package/dist/esm/analytics/index.js +1 -1
  66. package/dist/esm/components/ShowMore/ShowMore.js +4 -9
  67. package/dist/esm/components/compiled/EmojiButton.compiled.css +17 -0
  68. package/dist/esm/components/compiled/EmojiButton.js +39 -0
  69. package/dist/esm/components/compiled/ReactionButton.compiled.css +4 -5
  70. package/dist/esm/components/compiled/ReactionButton.js +5 -3
  71. package/dist/esm/components/compiled/ReactionPicker.compiled.css +11 -0
  72. package/dist/esm/components/compiled/ReactionPicker.js +316 -0
  73. package/dist/esm/components/compiled/ReactionSummaryButton.compiled.css +7 -0
  74. package/dist/esm/components/compiled/ReactionSummaryButton.js +100 -0
  75. package/dist/esm/components/compiled/ReactionSummaryView.compiled.css +5 -0
  76. package/dist/esm/components/compiled/ReactionSummaryView.js +107 -0
  77. package/dist/esm/components/compiled/ReactionView.compiled.css +22 -0
  78. package/dist/esm/components/compiled/ReactionView.js +67 -0
  79. package/dist/esm/components/compiled/Reactions.js +4 -4
  80. package/dist/esm/components/compiled/ReactionsDialog.compiled.css +14 -0
  81. package/dist/esm/components/compiled/ReactionsDialog.js +115 -0
  82. package/dist/esm/components/compiled/ReactionsDialogHeader.compiled.css +60 -0
  83. package/dist/esm/components/compiled/ReactionsDialogHeader.js +193 -0
  84. package/dist/esm/components/compiled/ReactionsDialogTrigger.compiled.css +16 -0
  85. package/dist/esm/components/compiled/ReactionsDialogTrigger.js +29 -0
  86. package/dist/esm/components/compiled/ReactionsList.js +19 -0
  87. package/dist/esm/components/compiled/Selector.compiled.css +13 -0
  88. package/dist/esm/components/compiled/Selector.js +71 -0
  89. package/dist/esm/components/compiled/StaticReaction.compiled.css +3 -1
  90. package/dist/esm/components/compiled/StaticReaction.js +4 -5
  91. package/dist/esm/components/compiled/Trigger.compiled.css +34 -0
  92. package/dist/esm/components/compiled/Trigger.js +93 -0
  93. package/dist/esm/containers/ConnectedReactionPicker/ConnectedReactionPicker.js +5 -1
  94. package/dist/esm/index.js +6 -2
  95. package/dist/types/components/ShowMore/ShowMore.d.ts +2 -7
  96. package/dist/types/components/compiled/EmojiButton.d.ts +21 -0
  97. package/dist/types/components/compiled/ReactionButton.d.ts +2 -1
  98. package/dist/types/components/compiled/ReactionPicker.d.ts +100 -0
  99. package/dist/types/components/compiled/ReactionSummaryButton.d.ts +34 -0
  100. package/dist/types/components/compiled/ReactionSummaryView.d.ts +58 -0
  101. package/dist/types/components/compiled/ReactionView.d.ts +13 -0
  102. package/dist/types/components/compiled/Reactions.d.ts +2 -2
  103. package/dist/types/components/compiled/ReactionsDialog.d.ts +33 -0
  104. package/dist/types/components/compiled/ReactionsDialogHeader.d.ts +16 -0
  105. package/dist/types/components/compiled/ReactionsDialogTrigger.d.ts +6 -0
  106. package/dist/types/components/compiled/ReactionsList.d.ts +20 -0
  107. package/dist/types/components/compiled/Selector.d.ts +33 -0
  108. package/dist/types/components/compiled/Trigger.d.ts +64 -0
  109. package/dist/types/index.d.ts +4 -2
  110. package/dist/types-ts4.5/components/ShowMore/ShowMore.d.ts +2 -7
  111. package/dist/types-ts4.5/components/compiled/EmojiButton.d.ts +21 -0
  112. package/dist/types-ts4.5/components/compiled/ReactionButton.d.ts +2 -1
  113. package/dist/types-ts4.5/components/compiled/ReactionPicker.d.ts +100 -0
  114. package/dist/types-ts4.5/components/compiled/ReactionSummaryButton.d.ts +34 -0
  115. package/dist/types-ts4.5/components/compiled/ReactionSummaryView.d.ts +58 -0
  116. package/dist/types-ts4.5/components/compiled/ReactionView.d.ts +13 -0
  117. package/dist/types-ts4.5/components/compiled/Reactions.d.ts +2 -2
  118. package/dist/types-ts4.5/components/compiled/ReactionsDialog.d.ts +33 -0
  119. package/dist/types-ts4.5/components/compiled/ReactionsDialogHeader.d.ts +16 -0
  120. package/dist/types-ts4.5/components/compiled/ReactionsDialogTrigger.d.ts +6 -0
  121. package/dist/types-ts4.5/components/compiled/ReactionsList.d.ts +20 -0
  122. package/dist/types-ts4.5/components/compiled/Selector.d.ts +33 -0
  123. package/dist/types-ts4.5/components/compiled/Trigger.d.ts +64 -0
  124. package/dist/types-ts4.5/index.d.ts +4 -2
  125. package/package.json +3 -2
@@ -0,0 +1,63 @@
1
+ /* ReactionView.tsx generated by @compiled/babel-plugin v0.36.1 */
2
+ import "./ReactionView.compiled.css";
3
+ import * as React from 'react';
4
+ import { ax, ix } from "@compiled/react/runtime";
5
+ import { useMemo } from 'react';
6
+ import { N500 } from '@atlaskit/theme/colors';
7
+ import Avatar from '@atlaskit/avatar/Avatar';
8
+ import Spinner from '@atlaskit/spinner';
9
+ import { TabPanel } from '@atlaskit/tabs';
10
+ import { Box, Flex } from '@atlaskit/primitives/compiled';
11
+ const userListStyle = null;
12
+ const userStyle = null;
13
+ const styles = {
14
+ userDescriptionStyle: "_18u0utpp",
15
+ profileWrapperStyle: "_18u0ze3t",
16
+ reactionViewStyle: "_19pkutpp _1tke1mjv _1ul91deq",
17
+ centerSpinnerStyle: "_1e0c1txw _1bah1h6o _4cvr1h6o _4t3i1osq _19pk1ejb"
18
+ };
19
+ export const ReactionView = ({
20
+ reaction,
21
+ ProfileCardWrapper
22
+ }) => {
23
+ const alphabeticalNames = useMemo(() => {
24
+ var _reactionObj$users;
25
+ const reactionObj = reaction;
26
+ return ((_reactionObj$users = reactionObj.users) === null || _reactionObj$users === void 0 ? void 0 : _reactionObj$users.sort((a, b) => a.displayName.localeCompare(b.displayName))) || [];
27
+ }, [reaction]);
28
+ return /*#__PURE__*/React.createElement(TabPanel, null, /*#__PURE__*/React.createElement(Flex, {
29
+ direction: "column",
30
+ xcss: styles.reactionViewStyle
31
+ }, alphabeticalNames.length === 0 ? /*#__PURE__*/React.createElement(Box, {
32
+ xcss: styles.centerSpinnerStyle
33
+ }, /*#__PURE__*/React.createElement(Spinner, {
34
+ size: "large",
35
+ interactionName: "reactions-spinner"
36
+ })) : /*#__PURE__*/React.createElement("ul", {
37
+ className: ax(["_qtt8glyw _ca0qidpf _u5f3idpf _n3tdidpf _19bvidpf _19pkpxbi _y3gn1e5h _nccu2smr _thoc10s3"])
38
+ }, alphabeticalNames.map(user => {
39
+ var _user$profilePicture;
40
+ const profile = (_user$profilePicture = user.profilePicture) === null || _user$profilePicture === void 0 ? void 0 : _user$profilePicture.path;
41
+ return /*#__PURE__*/React.createElement("li", {
42
+ key: user.id,
43
+ className: ax(["_1e0c1txw _4cvr1h6o _ca0q1b66 _n3td1b66 _19bvidpf _u5f3idpf _24rcpxbi"])
44
+ }, ProfileCardWrapper && user.accountId ? /*#__PURE__*/React.createElement(Box, {
45
+ xcss: styles.profileWrapperStyle
46
+ }, /*#__PURE__*/React.createElement(ProfileCardWrapper, {
47
+ userId: user.accountId,
48
+ isAnonymous: false,
49
+ canViewProfile: true,
50
+ position: "left-start"
51
+ }, /*#__PURE__*/React.createElement(Avatar, {
52
+ size: "medium",
53
+ src: profile,
54
+ testId: "profile"
55
+ }))) : /*#__PURE__*/React.createElement(Avatar, {
56
+ size: "medium",
57
+ src: profile,
58
+ testId: "profile"
59
+ }), /*#__PURE__*/React.createElement(Flex, {
60
+ xcss: styles.userDescriptionStyle
61
+ }, /*#__PURE__*/React.createElement("div", null, user.displayName)));
62
+ }))));
63
+ };
@@ -13,9 +13,9 @@ import { messages } from '../../shared/i18n';
13
13
  import { ReactionStatus } from '../../types';
14
14
  import { ReactionDialogOpened, ReactionDialogSelectedReactionChanged } from '../../ufo';
15
15
  import { Reaction } from './Reaction';
16
- import { ReactionsDialog } from '../ReactionDialog';
17
- import { ReactionPicker } from '../ReactionPicker';
18
- import { ReactionSummaryView } from '../ReactionSummary/';
16
+ import { ReactionsDialog } from './ReactionsDialog';
17
+ import { ReactionPicker } from './ReactionPicker';
18
+ import { ReactionSummaryView } from './ReactionSummaryView';
19
19
  const wrapperStyle = null;
20
20
  const noFlexWrapStyles = null;
21
21
  const noContainerPositionStyles = null;
@@ -108,7 +108,7 @@ export const Reactions = /*#__PURE__*/React.memo(({
108
108
  allowSelectFromSummaryView = false,
109
109
  useButtonAlignmentStyling = false
110
110
  }) => {
111
- const [selectedEmojiId, setSelectedEmojiId] = useState();
111
+ const [selectedEmojiId, setSelectedEmojiId] = useState('');
112
112
  const {
113
113
  createAnalyticsEvent
114
114
  } = useAnalyticsEvents();
@@ -0,0 +1,14 @@
1
+ ._18m915vq{overflow-y:hidden}
2
+ ._18postnw:after{position:absolute}
3
+ ._1bahv2br{justify-content:start}
4
+ ._1bqqidpf:after{z-index:0}
5
+ ._1dm8q5uf{scroll-behavior:smooth}
6
+ ._1e0c1txw{display:flex}
7
+ ._1reo15vq{overflow-x:hidden}
8
+ ._1x88idpf:after{bottom:0}
9
+ ._1yd81osq:after{min-width:100%}
10
+ ._1ywu1ule:after{display:block}
11
+ ._4t3i1osq{height:100%}
12
+ ._aetrb3bt:after{content:""}
13
+ ._kqswh2mm{position:relative}
14
+ ._otyr1ejb{margin-bottom:var(--ds-space-300,24px)}
@@ -0,0 +1,99 @@
1
+ /* ReactionsDialog.tsx generated by @compiled/babel-plugin v0.36.1 */
2
+ import "./ReactionsDialog.compiled.css";
3
+ import * as React from 'react';
4
+ import { ax, ix } from "@compiled/react/runtime";
5
+ import { useEffect, useState, useCallback, useMemo } from 'react';
6
+ import Tabs from '@atlaskit/tabs';
7
+ import Modal, { ModalBody } from '@atlaskit/modal-dialog';
8
+ import { Box } from '@atlaskit/primitives/compiled';
9
+ import { NUMBER_OF_REACTIONS_TO_DISPLAY } from '../../shared/constants';
10
+ import { ReactionsList } from './ReactionsList';
11
+ import { ReactionsDialogHeader } from './ReactionsDialogHeader';
12
+ const styles = {
13
+ modalBodyStyle: "_otyr1ejb"
14
+ };
15
+
16
+ /* Reactions Container. Using pseudo Element :after to set border since with onClick of Reaction to higlight the
17
+ border blue below the reaction. */
18
+ const containerStyle = null;
19
+
20
+ /**
21
+ * Test id for the Reactions modal dialog
22
+ */
23
+ export const RENDER_MODAL_TESTID = 'render-reactions-modal';
24
+ export const ReactionsDialog = ({
25
+ reactions = [],
26
+ handleCloseReactionsDialog = () => {},
27
+ emojiProvider,
28
+ selectedEmojiId,
29
+ handleSelectReaction = () => {},
30
+ handlePaginationChange = () => {},
31
+ ProfileCardWrapper
32
+ }) => {
33
+ var _currentReactions$;
34
+ const [hasNavigatedPages, setHasNavigatedPages] = useState(false);
35
+ const [currentPage, setCurrentPage] = useState(1);
36
+ const totalReactionsCount = useMemo(() => {
37
+ return reactions.reduce((accum, current) => {
38
+ return accum += current === null || current === void 0 ? void 0 : current.count;
39
+ }, 0);
40
+ }, [reactions]);
41
+ const maxPages = Math.max(1, Math.ceil(reactions.length / NUMBER_OF_REACTIONS_TO_DISPLAY));
42
+ const currentReactions = useMemo(() => {
43
+ const start = (currentPage - 1) * NUMBER_OF_REACTIONS_TO_DISPLAY;
44
+ const end = start + NUMBER_OF_REACTIONS_TO_DISPLAY;
45
+ return reactions.slice(start, end);
46
+ }, [reactions, currentPage]);
47
+ const handleNextPage = () => {
48
+ setCurrentPage(prevPage => Math.min(prevPage + 1, maxPages));
49
+ setHasNavigatedPages(true);
50
+ };
51
+ const handlePreviousPage = () => {
52
+ setCurrentPage(prevPage => Math.max(prevPage - 1, 1));
53
+ setHasNavigatedPages(true);
54
+ };
55
+ const firstEmojiOnPage = (_currentReactions$ = currentReactions[0]) === null || _currentReactions$ === void 0 ? void 0 : _currentReactions$.emojiId;
56
+ useEffect(() => {
57
+ // trigger the handler with the first emoji when the page changes
58
+ if (hasNavigatedPages && firstEmojiOnPage) {
59
+ handlePaginationChange(firstEmojiOnPage, currentPage, maxPages);
60
+ }
61
+ }, [hasNavigatedPages, currentPage, maxPages, firstEmojiOnPage, handlePaginationChange]);
62
+ const selectedIndex = currentReactions.findIndex(reaction => reaction.emojiId === selectedEmojiId);
63
+ const onTabChange = useCallback(index => {
64
+ if (index === selectedIndex) {
65
+ return;
66
+ }
67
+ const emojiId = currentReactions[index].emojiId;
68
+ handleSelectReaction(emojiId);
69
+ }, [selectedIndex, currentReactions, handleSelectReaction]);
70
+ return /*#__PURE__*/React.createElement(Modal, {
71
+ onClose: handleCloseReactionsDialog,
72
+ height: 600,
73
+ testId: RENDER_MODAL_TESTID
74
+ // eslint-disable-next-line jsx-a11y/no-autofocus
75
+ ,
76
+ autoFocus: false
77
+ }, /*#__PURE__*/React.createElement(Tabs, {
78
+ id: "reactions-dialog-tabs",
79
+ onChange: onTabChange,
80
+ selected: selectedIndex
81
+ }, /*#__PURE__*/React.createElement(ReactionsDialogHeader, {
82
+ totalReactionsCount: totalReactionsCount,
83
+ maxPages: maxPages,
84
+ handlePreviousPage: handlePreviousPage,
85
+ handleNextPage: handleNextPage,
86
+ currentPage: currentPage,
87
+ emojiProvider: emojiProvider,
88
+ currentReactions: currentReactions,
89
+ handleCloseReactionsDialog: handleCloseReactionsDialog
90
+ }), /*#__PURE__*/React.createElement(ModalBody, null, /*#__PURE__*/React.createElement(Box, {
91
+ xcss: styles.modalBodyStyle
92
+ }, /*#__PURE__*/React.createElement("div", {
93
+ className: ax(["_1reo15vq _18m915vq _4t3i1osq _1e0c1txw _1bahv2br _kqswh2mm _1dm8q5uf _aetrb3bt _1bqqidpf _1ywu1ule _1yd81osq _1x88idpf _18postnw"])
94
+ }, /*#__PURE__*/React.createElement(ReactionsList, {
95
+ selectedEmojiId: selectedEmojiId,
96
+ reactions: currentReactions,
97
+ ProfileCardWrapper: ProfileCardWrapper
98
+ }))))));
99
+ };
@@ -0,0 +1,60 @@
1
+
2
+ ._j5n7hco4.disabled+._j5n7hco4.disabled:after{background:linear-gradient(90deg,rgba(34,39,43,.95) 40.23%,rgba(34,39,43,.55) 58.33%,rgba(34,39,43,0) 77.49%)}
3
+ ._j5n7ii5y.disabled+._j5n7ii5y.disabled:after{background:linear-gradient(90deg,hsla(0,0%,100%,.95) 40.23%,hsla(0,0%,100%,.55) 58.33%,hsla(0,0%,100%,0) 77.49%)}
4
+ ._nhkt1ts8.disabled:after{background:linear-gradient(270deg,rgba(34,39,43,.95) 40.23%,rgba(34,39,43,.55) 58.33%,rgba(34,39,43,0) 77.49%)}
5
+ ._nhktlyvf.disabled:after{background:linear-gradient(270deg,hsla(0,0%,100%,.95) 40.23%,hsla(0,0%,100%,.55) 58.33%,hsla(0,0%,100%,0) 77.49%)}
6
+ ._1rjc1b66{padding-block:var(--ds-space-050,4px)}
7
+ ._80wau2gc div[role=tablist]{padding-inline:var(--ds-space-100,8px)}
8
+ ._n7zl1l7n{border-bottom:1px solid var(--ds-border,#ebecf0)}._10d67vkz>span{min-height:1pc}
9
+ ._141m1j28 div[role=tablist]:before{background-color:transparent}
10
+ ._18m91wug{overflow-y:auto}
11
+ ._18u01wug{margin-left:auto}
12
+ ._19bv1ejb{padding-left:var(--ds-space-300,24px)}
13
+ ._19bvpxbi{padding-left:var(--ds-space-200,1pc)}
14
+ ._19pk1b66{margin-top:var(--ds-space-050,4px)}
15
+ ._19pkv77o{margin-top:var(--ds-space-025,2px)}
16
+ ._1bah1h6o{justify-content:center}
17
+ ._1bsb1osq{width:100%}
18
+ ._1cezgrf3 >div{padding-bottom:0!important}
19
+ ._1e0c1txw{display:flex}
20
+ ._1gbg8vuz.disabled:after{width:56px}
21
+ ._1ira1ylp.disabled+._1ira1ylp.disabled:after{height:40px}
22
+ ._1jzxidpf.disabled:after{z-index:0}
23
+ ._1ks28vuz.disabled+._1ks28vuz.disabled:after{width:56px}
24
+ ._1o9zidpf{flex-shrink:0}
25
+ ._1reo1wug{overflow-x:auto}
26
+ ._1ul98vuz{min-width:56px}
27
+ ._1wpzynz6{align-self:self-start}
28
+ ._1wqistnw.disabled+._1wqistnw.disabled:after{position:absolute}
29
+ ._1xogidpf.disabled:after{top:0}
30
+ ._1yfp1ylp >div{min-height:40px}
31
+ ._2hwxu2gc{margin-right:var(--ds-space-100,8px)}
32
+ ._2lx21bp4{flex-direction:column}
33
+ ._2t1tb3bt.disabled:after{content:""}
34
+ ._4cvr1h6o{align-items:center}
35
+ ._4cvr1y6m{align-items:flex-start}
36
+ ._5e04idpf.disabled+._5e04idpf.disabled:after{left:0}
37
+ ._6kbe8vuz >div{min-width:56px}
38
+ ._6tingrf3 >div{padding-right:0!important}
39
+ ._85i5xy5q{padding-block-end:var(--ds-space-400,2pc)}
40
+ ._8bggidpf.disabled+._8bggidpf.disabled:after{z-index:0}
41
+ ._8hrz1nam{transform-origin:center center 0}
42
+ ._aezr7vkz>span{min-width:1pc}
43
+ ._axenidpf.disabled:after{left:0}
44
+ ._bozgu2gc{padding-inline-start:var(--ds-space-100,8px)}
45
+ ._c0nrb3bt.disabled+._c0nrb3bt.disabled:after{content:""}
46
+ ._ca0q1ejb{padding-top:var(--ds-space-300,24px)}
47
+ ._clnfidpf.disabled+._clnfidpf.disabled:after{top:0}
48
+ ._dzc21h6o >div{align-items:center}
49
+ ._kqswh2mm{position:relative}
50
+ ._m3zkgrf3 >div{padding-left:0!important}
51
+ ._mwnsstnw.disabled:after{position:absolute}
52
+ ._n3tdutpp{padding-bottom:var(--ds-space-150,9pt)}
53
+ ._ogwtgrf3 >div{padding-top:0!important}
54
+ ._rqy31ylp.disabled:after{height:40px}
55
+ ._s2c4kb7n div[role=tablist]{flex-grow:1}
56
+ ._tij01h6o >div{justify-content:center}
57
+ ._u5f31ejb{padding-right:var(--ds-space-300,24px)}
58
+ ._vchhusvi{box-sizing:border-box}
59
+ ._y3gn1h6o{text-align:center}
60
+ ._y4ti1b66{padding-inline-end:var(--ds-space-050,4px)}
@@ -0,0 +1,172 @@
1
+ /* ReactionsDialogHeader.tsx generated by @compiled/babel-plugin v0.36.1 */
2
+ import "./ReactionsDialogHeader.compiled.css";
3
+ import * as React from 'react';
4
+ import { ax, ix } from "@compiled/react/runtime";
5
+ import { useState } from 'react';
6
+ import { useIntl } from 'react-intl-next';
7
+ import { useThemeObserver } from '@atlaskit/tokens';
8
+ import { Tab, TabList } from '@atlaskit/tabs';
9
+ import { Box, Flex, Inline, Stack } from '@atlaskit/primitives/compiled';
10
+ import { IconButton } from '@atlaskit/button/new';
11
+ import Heading from '@atlaskit/heading';
12
+ import { useModal } from '@atlaskit/modal-dialog';
13
+ import Tooltip from '@atlaskit/tooltip';
14
+ import ChevronLeftIcon from '@atlaskit/icon/utility/chevron-left';
15
+ import ChevronRightIcon from '@atlaskit/icon/utility/chevron-right';
16
+ import CloseIcon from '@atlaskit/icon/core/close';
17
+ import { ResourcedEmoji } from '@atlaskit/emoji/element';
18
+ import { messages } from '../../shared/i18n';
19
+ import { Counter } from './Counter';
20
+ const styles = {
21
+ leftNavigationStyle: "_19pk1b66 _1wpzynz6 _19bvpxbi _n3tdutpp",
22
+ rightNavigationStyle: "_19pk1b66 _1wpzynz6 _18u01wug _2hwxu2gc",
23
+ fullWidthStyle: "_1bsb1osq _ca0q1ejb _19bv1ejb _u5f31ejb _85i5xy5q",
24
+ emoji: "_1rjc1b66 _8hrz1nam _bozgu2gc _y4ti1b66",
25
+ counterStyle: "_19pkv77o"
26
+ };
27
+ const REACTIONS_CONTAINER_WIDTH = 56;
28
+ const REACTION_CONTAINER_HEIGHT = 40;
29
+ const customTabListStyles = null;
30
+ const customTabWrapper = {
31
+ base: "_1o9zidpf _1e0c1txw _2lx21bp4 _y3gn1h6o _4cvr1h6o _1bah1h6o _1ul98vuz _vchhusvi _kqswh2mm _ogwtgrf3 _6tingrf3 _1cezgrf3 _m3zkgrf3 _6kbe8vuz _1yfp1ylp _dzc21h6o _tij01h6o _nhktlyvf _2t1tb3bt _mwnsstnw _axenidpf _1xogidpf _1gbg8vuz _rqy31ylp _1jzxidpf _j5n7ii5y _c0nrb3bt _1wqistnw _5e04idpf _clnfidpf _1ks28vuz _1ira1ylp _8bggidpf _10d67vkz _aezr7vkz",
32
+ darkTheme: "_nhkt1ts8 _j5n7hco4"
33
+ };
34
+ const firstElement = null;
35
+ const CloseButton = ({
36
+ handleCloseReactionsDialog
37
+ }) => {
38
+ const intl = useIntl();
39
+ return /*#__PURE__*/React.createElement(IconButton, {
40
+ onClick: handleCloseReactionsDialog,
41
+ icon: CloseIcon,
42
+ label: intl.formatMessage(messages.closeReactionsDialog),
43
+ appearance: "subtle",
44
+ isTooltipDisabled: false
45
+ });
46
+ };
47
+ const LeftNavigationButton = ({
48
+ handlePreviousPage
49
+ }) => {
50
+ const intl = useIntl();
51
+ return /*#__PURE__*/React.createElement(Flex, {
52
+ xcss: styles.leftNavigationStyle
53
+ }, /*#__PURE__*/React.createElement(IconButton, {
54
+ spacing: "compact",
55
+ onClick: handlePreviousPage,
56
+ icon: ChevronLeftIcon,
57
+ label: intl.formatMessage(messages.leftNavigateLabel),
58
+ isTooltipDisabled: false
59
+ }));
60
+ };
61
+ const RightNavigationButton = ({
62
+ handleNextPage
63
+ }) => {
64
+ const intl = useIntl();
65
+ return /*#__PURE__*/React.createElement(Flex, {
66
+ xcss: styles.rightNavigationStyle
67
+ }, /*#__PURE__*/React.createElement(IconButton, {
68
+ spacing: "compact",
69
+ onClick: handleNextPage,
70
+ icon: ChevronRightIcon,
71
+ label: intl.formatMessage(messages.rightNavigateLabel),
72
+ isTooltipDisabled: false
73
+ }));
74
+ };
75
+ export const ReactionsDialogHeader = ({
76
+ totalReactionsCount,
77
+ handlePreviousPage,
78
+ handleNextPage,
79
+ currentPage,
80
+ maxPages,
81
+ currentReactions,
82
+ emojiProvider,
83
+ handleCloseReactionsDialog
84
+ }) => {
85
+ const [cache, setCache] = useState({});
86
+ const {
87
+ titleId
88
+ } = useModal();
89
+ const intl = useIntl();
90
+ const {
91
+ colorMode
92
+ } = useThemeObserver();
93
+ const isSinglePage = maxPages === 1;
94
+ const isOnFirstPage = currentPage === 1;
95
+ const isOnLastPage = currentPage === maxPages;
96
+ const handleMouseEnter = reaction => {
97
+ const {
98
+ emojiId
99
+ } = reaction;
100
+ if (!emojiId || cache[emojiId]) {
101
+ return;
102
+ }
103
+ (async () => {
104
+ // Note: not a network request e.g. ReactedUsersQuery
105
+ const provider = await emojiProvider;
106
+ const emoji = await provider.findByEmojiId({
107
+ shortName: '',
108
+ id: emojiId
109
+ });
110
+ if (emoji !== null && emoji !== void 0 && emoji.name) {
111
+ // capitalize first letter of each string
112
+ const capitalizedName = emoji.name.replace(/\b\w/g, char => char.toUpperCase());
113
+ setCache(prevCache => ({
114
+ ...prevCache,
115
+ [emojiId]: capitalizedName
116
+ }));
117
+ }
118
+ })();
119
+ };
120
+ return /*#__PURE__*/React.createElement(Stack, null, /*#__PURE__*/React.createElement(Flex, {
121
+ direction: "row",
122
+ justifyContent: "space-between",
123
+ alignItems: "center",
124
+ xcss: styles.fullWidthStyle
125
+ }, /*#__PURE__*/React.createElement(Heading, {
126
+ size: "medium",
127
+ id: titleId
128
+ }, intl.formatMessage(messages.reactionsCount, {
129
+ count: totalReactionsCount
130
+ })), /*#__PURE__*/React.createElement(CloseButton, {
131
+ handleCloseReactionsDialog: handleCloseReactionsDialog
132
+ })), /*#__PURE__*/React.createElement(Inline, null, /*#__PURE__*/React.createElement("div", {
133
+ id: "reactions-dialog-tabs-list",
134
+ className: ax(["_1reo1wug _18m91wug _n7zl1l7n _1e0c1txw _1bsb1osq _4cvr1y6m _80wau2gc _s2c4kb7n _141m1j28"])
135
+ }, !isSinglePage && !isOnFirstPage && /*#__PURE__*/React.createElement(LeftNavigationButton, {
136
+ handlePreviousPage: handlePreviousPage
137
+ }), /*#__PURE__*/React.createElement(TabList, null, currentReactions.map((reaction, index) => {
138
+ const emojiId = {
139
+ id: reaction.emojiId,
140
+ shortName: ''
141
+ };
142
+ return /*#__PURE__*/React.createElement("div", {
143
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
144
+ className: ax([customTabWrapper.base, colorMode === 'dark' && customTabWrapper.darkTheme, index === 0 && "_19bvpxbi", "reaction-elements"]),
145
+ key: reaction.emojiId,
146
+ "data-testid": emojiId === null || emojiId === void 0 ? void 0 : emojiId.id,
147
+ onMouseEnter: () => {
148
+ handleMouseEnter(reaction);
149
+ }
150
+ }, /*#__PURE__*/React.createElement(Tab, null, /*#__PURE__*/React.createElement(Tooltip, {
151
+ content: cache[reaction.emojiId],
152
+ canAppear: () => !!cache[reaction.emojiId]
153
+ }, /*#__PURE__*/React.createElement(Flex, {
154
+ justifyContent: "center",
155
+ alignItems: "center",
156
+ direction: "row"
157
+ }, /*#__PURE__*/React.createElement(Box, {
158
+ xcss: styles.emoji
159
+ }, /*#__PURE__*/React.createElement(ResourcedEmoji, {
160
+ emojiProvider: emojiProvider,
161
+ emojiId: emojiId,
162
+ fitToHeight: 16,
163
+ showTooltip: true
164
+ })), /*#__PURE__*/React.createElement(Box, {
165
+ xcss: styles.counterStyle
166
+ }, /*#__PURE__*/React.createElement(Counter, {
167
+ value: reaction.count
168
+ }))))));
169
+ }), !isSinglePage && !isOnLastPage && /*#__PURE__*/React.createElement(RightNavigationButton, {
170
+ handleNextPage: handleNextPage
171
+ })))));
172
+ };
@@ -0,0 +1,16 @@
1
+
2
+ ._2rkoiti9{border-radius:var(--ds-border-radius-100,4px)}
3
+ ._1h6dmuej{border-color:var(--ds-border,#091e4224)}._19bvze3t{padding-left:var(--ds-space-0,0)}
4
+ ._19pk1b66{margin-top:var(--ds-space-050,4px)}
5
+ ._1bah1h6o{justify-content:center}
6
+ ._1e0c1txw{display:flex}
7
+ ._1ul9zwfg{min-width:2pc}
8
+ ._2hwx1b66{margin-right:var(--ds-space-050,4px)}
9
+ ._4cvr1h6o{align-items:center}
10
+ ._4t3i1tcg{height:24px}
11
+ ._bfhksm61{background-color:var(--ds-background-neutral-subtle,#00000000)}
12
+ ._ca0qze3t{padding-top:var(--ds-space-0,0)}
13
+ ._n3tdze3t{padding-bottom:var(--ds-space-0,0)}
14
+ ._u5f3ze3t{padding-right:var(--ds-space-0,0)}
15
+ ._irr3166n:hover{background-color:var(--ds-background-neutral-subtle-hovered,#091e420f)}
16
+ ._1di61dty:active{background-color:var(--ds-background-neutral-subtle-pressed,#091e4224)}
@@ -0,0 +1,30 @@
1
+ /* ReactionsDialogTrigger.tsx generated by @compiled/babel-plugin v0.36.1 */
2
+ import "./ReactionsDialogTrigger.compiled.css";
3
+ import * as React from 'react';
4
+ import { ax, ix } from "@compiled/react/runtime";
5
+ import Tooltip from '@atlaskit/tooltip';
6
+ import { cx } from '@compiled/react';
7
+ import { Pressable } from '@atlaskit/primitives/compiled';
8
+ import ShowMoreHorizontalIcon from '@atlaskit/icon/core/show-more-horizontal';
9
+ import { useIntl } from 'react-intl-next';
10
+ import { messages } from '../../shared/i18n';
11
+ const styles = {
12
+ trigger: "_2rkoiti9 _2hwx1b66 _19pk1b66 _1ul9zwfg _4t3i1tcg _1e0c1txw _1bah1h6o _4cvr1h6o _bfhksm61 _ca0qze3t _n3tdze3t _19bvze3t _u5f3ze3t",
13
+ transparentEnabledTrigger: "_1h6dmuej _irr3166n _1di61dty"
14
+ };
15
+ // Currently not in use due to Reactions Dialog trigger being moved to tooltip
16
+ // Similar to platform/packages/elements/reactions/src/components/Trigger/Trigger.tsx
17
+ export const ReactionsDialogTrigger = ({
18
+ onClick
19
+ }) => {
20
+ const intl = useIntl();
21
+ return /*#__PURE__*/React.createElement(Pressable, {
22
+ xcss: cx(styles.trigger, styles.transparentEnabledTrigger),
23
+ onClick: onClick,
24
+ "aria-label": intl.formatMessage(messages.seeWhoReactedTooltip)
25
+ }, /*#__PURE__*/React.createElement(Tooltip, {
26
+ content: intl.formatMessage(messages.seeWhoReactedTooltip)
27
+ }, /*#__PURE__*/React.createElement(ShowMoreHorizontalIcon, {
28
+ label: intl.formatMessage(messages.seeWhoReacted)
29
+ })));
30
+ };
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ import { Box } from '@atlaskit/primitives/compiled';
3
+ import { ReactionView } from './ReactionView';
4
+ export const ReactionsList = ({
5
+ reactions,
6
+ selectedEmojiId,
7
+ ProfileCardWrapper
8
+ }) => {
9
+ return /*#__PURE__*/React.createElement(Box, null, reactions.map(reaction => {
10
+ if (reaction.emojiId === selectedEmojiId) {
11
+ return /*#__PURE__*/React.createElement(ReactionView, {
12
+ key: reaction.emojiId,
13
+ reaction: reaction,
14
+ ProfileCardWrapper: ProfileCardWrapper
15
+ });
16
+ } else {
17
+ return null;
18
+ }
19
+ }));
20
+ };
@@ -0,0 +1,14 @@
1
+
2
+ ._y44v8out{animation:k12q5x3s .15s ease-in-out forwards}._12l2u2gc{margin-inline-end:var(--ds-space-100,8px)}
3
+ ._19bv1b66{padding-left:var(--ds-space-050,4px)}
4
+ ._1e0c1o8l{display:inline-block}
5
+ ._1p3lnqa1{border-left-style:solid}
6
+ ._4t3i1tcg{height:24px}
7
+ ._5wramuej{border-left-color:var(--ds-border,#091e4224)}
8
+ ._ahbq1b66{margin-inline-start:var(--ds-space-050,4px)}
9
+ ._ca0q1b66{padding-top:var(--ds-space-050,4px)}
10
+ ._n3td1b66{padding-bottom:var(--ds-space-050,4px)}
11
+ ._t6vde4h9{border-left-width:var(--ds-border-width,1px)}
12
+ ._tzy4idpf{opacity:0}
13
+ ._u5f31b66{padding-right:var(--ds-space-050,4px)}
14
+ @keyframes k12q5x3s{0%{opacity:1;transform:scale(.5)}75%{transform:scale(1.25)}to{opacity:1;transform:scale(1)}}
@@ -0,0 +1,69 @@
1
+ /* Selector.tsx generated by @compiled/babel-plugin v0.36.1 */
2
+ import "./Selector.compiled.css";
3
+ import * as React from 'react';
4
+ import { ax, ix } from "@compiled/react/runtime";
5
+ import { Fragment } from 'react';
6
+ import Tooltip from '@atlaskit/tooltip';
7
+ import { DefaultReactions } from '../../shared/constants';
8
+ import { EmojiButton } from './EmojiButton';
9
+ import { ShowMore } from '../ShowMore';
10
+ import { Box, Inline } from '@atlaskit/primitives/compiled';
11
+ const styles = {
12
+ container: "_ca0q1b66 _u5f31b66 _n3td1b66 _19bv1b66",
13
+ separator: "_t6vde4h9 _5wramuej _1p3lnqa1 _ahbq1b66 _12l2u2gc _4t3i1tcg _1e0c1o8l"
14
+ };
15
+ const revealAnimation = null;
16
+ const revealStyle = null;
17
+
18
+ /**
19
+ * Test id for wrapper Selector div
20
+ */
21
+ export const RENDER_SELECTOR_TESTID = 'render-selector';
22
+ const Reveal = ({
23
+ children,
24
+ testId
25
+ }) => {
26
+ return /*#__PURE__*/React.createElement("div", {
27
+ "data-testid": testId,
28
+ className: ax(["_y44v8out _tzy4idpf"])
29
+ }, children);
30
+ };
31
+
32
+ /**
33
+ * Reactions picker panel part of the <ReactionPicker /> component
34
+ */
35
+ export const Selector = ({
36
+ emojiProvider,
37
+ onMoreClick,
38
+ onSelection,
39
+ showMore,
40
+ pickerQuickReactionEmojiIds = DefaultReactions
41
+ }) => {
42
+ /**
43
+ * Render the default emoji icon
44
+ * @param emoji emoji item
45
+ * @param index location of the emoji in the array
46
+ */
47
+ const renderEmoji = (emoji, index) => {
48
+ var _emoji$id;
49
+ return /*#__PURE__*/React.createElement(Reveal, {
50
+ key: (_emoji$id = emoji.id) !== null && _emoji$id !== void 0 ? _emoji$id : emoji.shortName,
51
+ testId: RENDER_SELECTOR_TESTID
52
+ }, /*#__PURE__*/React.createElement(Tooltip, {
53
+ content: emoji.shortName
54
+ }, /*#__PURE__*/React.createElement(EmojiButton, {
55
+ emojiId: emoji,
56
+ emojiProvider: emojiProvider,
57
+ onClick: onSelection
58
+ })));
59
+ };
60
+ return /*#__PURE__*/React.createElement(Inline, {
61
+ alignBlock: "center",
62
+ xcss: styles.container
63
+ }, pickerQuickReactionEmojiIds ? pickerQuickReactionEmojiIds.map(renderEmoji) : null, showMore ? /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(Box, {
64
+ xcss: styles.separator
65
+ }), /*#__PURE__*/React.createElement(Reveal, null, /*#__PURE__*/React.createElement(ShowMore, {
66
+ key: "more",
67
+ onClick: onMoreClick
68
+ }))) : null);
69
+ };
@@ -10,8 +10,10 @@
10
10
  ._2lx2vrvc{flex-direction:row}
11
11
  ._4cvr1y6m{align-items:flex-start}
12
12
  ._4t3i1tcg{height:24px}
13
+ ._bfhksm61{background-color:var(--ds-background-neutral-subtle,#00000000)}
13
14
  ._ca0qze3t{padding-top:var(--ds-space-0,0)}
14
15
  ._n3tdze3t{padding-bottom:var(--ds-space-0,0)}
15
16
  ._syaz1gjq{color:var(--ds-text-subtle,#44546f)}
16
17
  ._u5f3ze3t{padding-right:var(--ds-space-0,0)}
17
- ._d0al73ad:hover{cursor:default}
18
+ ._d0al73ad:hover{cursor:default}
19
+ ._irr3166n:hover{background-color:var(--ds-background-neutral-subtle-hovered,#091e420f)}
@@ -3,9 +3,9 @@ import _extends from "@babel/runtime/helpers/extends";
3
3
  import "./StaticReaction.compiled.css";
4
4
  import * as React from 'react';
5
5
  import { ax, ix } from "@compiled/react/runtime";
6
- import { Box } from '@atlaskit/primitives/compiled';
6
+ import { Pressable } from '@atlaskit/primitives/compiled';
7
7
  const styles = {
8
- staticReaction: "_1reo15vq _18m915vq _19itglyw _2rkoglpi _1e0c1txw _2lx2vrvc _4cvr1y6m _1ul914no _4t3i1tcg _syaz1gjq _1pfh1b66 _12l21b66 _ca0qze3t _u5f3ze3t _n3tdze3t _19bvze3t _d0al73ad"
8
+ staticReaction: "_1reo15vq _18m915vq _19itglyw _2rkoglpi _1e0c1txw _2lx2vrvc _4cvr1y6m _1ul914no _4t3i1tcg _bfhksm61 _syaz1gjq _1pfh1b66 _12l21b66 _ca0qze3t _u5f3ze3t _n3tdze3t _19bvze3t _d0al73ad _irr3166n"
9
9
  };
10
10
  export const StaticReaction = ({
11
11
  onMouseEnter,
@@ -14,11 +14,10 @@ export const StaticReaction = ({
14
14
  testId,
15
15
  dataAttributes = {}
16
16
  }) => {
17
- return /*#__PURE__*/React.createElement(Box, _extends({
17
+ return /*#__PURE__*/React.createElement(Pressable, _extends({
18
18
  onMouseEnter: onMouseEnter,
19
19
  onFocus: onFocus,
20
20
  testId: testId,
21
- xcss: styles.staticReaction,
22
- backgroundColor: "color.background.neutral.subtle"
21
+ xcss: styles.staticReaction
23
22
  }, dataAttributes), children);
24
23
  };
@@ -0,0 +1,34 @@
1
+ ._11c8dcr7{font:var(--ds-font-body-UNSAFE_small,normal 400 9pt/1pc ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Ubuntu,"Helvetica Neue",sans-serif)}
2
+ ._2rko14q2{border-radius:var(--ds-border-radius-circle,2002pc)}
3
+ ._2rkoglpi{border-radius:var(--ds-border-radius,4px)}
4
+ ._189ee4h9{border-width:var(--ds-border-width,1px)}
5
+ ._1dqoglyw{border-style:none}
6
+ ._1dqonqa1{border-style:solid}
7
+ ._1h6d13gt{border-color:var(--ds-border-disabled,#091e420f)}
8
+ ._1h6dmuej{border-color:var(--ds-border,#091e4224)}
9
+ ._18u01b66{margin-left:var(--ds-space-050,4px)}
10
+ ._19bv1b66{padding-left:var(--ds-space-050,4px)}
11
+ ._19bvze3t{padding-left:var(--ds-space-0,0)}
12
+ ._1bah1h6o{justify-content:center}
13
+ ._1bsbviql{width:2rem}
14
+ ._1e0c1txw{display:flex}
15
+ ._1ul9146b{min-width:110px}
16
+ ._1ul91tcg{min-width:24px}
17
+ ._1ul9zwfg{min-width:2pc}
18
+ ._4cvr1h6o{align-items:center}
19
+ ._4t3i1tcg{height:24px}
20
+ ._4t3iviql{height:2rem}
21
+ ._bfhksm61{background-color:var(--ds-background-neutral-subtle,#00000000)}
22
+ ._bfhksyzs{background-color:var(--ds-background-disabled,#091e4208)}
23
+ ._bfhkvuon{background-color:var(--ds-surface,#fff)}
24
+ ._ca0q1b66{padding-top:var(--ds-space-050,4px)}
25
+ ._ca0qze3t{padding-top:var(--ds-space-0,0)}
26
+ ._n3td1b66{padding-bottom:var(--ds-space-050,4px)}
27
+ ._n3tdze3t{padding-bottom:var(--ds-space-0,0)}
28
+ ._syaz1gjq{color:var(--ds-text-subtle,#44546f)}
29
+ ._u5f31b66{padding-right:var(--ds-space-050,4px)}
30
+ ._u5f3ze3t{padding-right:var(--ds-space-0,0)}
31
+ ._irr3108i:hover{background-color:var(--ds-surface-hovered,#f1f2f4)}
32
+ ._irr3166n:hover{background-color:var(--ds-background-neutral-subtle-hovered,#091e420f)}
33
+ ._1di61dty:active{background-color:var(--ds-background-neutral-subtle-pressed,#091e4224)}
34
+ ._1di61ji5:active{background-color:var(--ds-surface-pressed,#dcdfe4)}