@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.
- package/CHANGELOG.md +16 -0
- package/afm-cc/tsconfig.json +3 -0
- package/afm-jira/tsconfig.json +3 -0
- package/afm-post-office/tsconfig.json +3 -0
- package/dist/cjs/analytics/index.js +1 -1
- package/dist/cjs/components/ShowMore/ShowMore.js +4 -10
- package/dist/cjs/components/compiled/EmojiButton.compiled.css +17 -0
- package/dist/cjs/components/compiled/EmojiButton.js +48 -0
- package/dist/cjs/components/compiled/ReactionButton.compiled.css +4 -5
- package/dist/cjs/components/compiled/ReactionButton.js +5 -3
- package/dist/cjs/components/compiled/ReactionPicker.compiled.css +11 -0
- package/dist/cjs/components/compiled/ReactionPicker.js +325 -0
- package/dist/cjs/components/compiled/ReactionSummaryButton.compiled.css +7 -0
- package/dist/cjs/components/compiled/ReactionSummaryButton.js +110 -0
- package/dist/cjs/components/compiled/ReactionSummaryView.compiled.css +5 -0
- package/dist/cjs/components/compiled/ReactionSummaryView.js +117 -0
- package/dist/cjs/components/compiled/ReactionView.compiled.css +22 -0
- package/dist/cjs/components/compiled/ReactionView.js +77 -0
- package/dist/cjs/components/compiled/Reactions.js +6 -6
- package/dist/cjs/components/compiled/ReactionsDialog.compiled.css +14 -0
- package/dist/cjs/components/compiled/ReactionsDialog.js +125 -0
- package/dist/cjs/components/compiled/ReactionsDialogHeader.compiled.css +60 -0
- package/dist/cjs/components/compiled/ReactionsDialogHeader.js +203 -0
- package/dist/cjs/components/compiled/ReactionsDialogTrigger.compiled.css +16 -0
- package/dist/cjs/components/compiled/ReactionsDialogTrigger.js +39 -0
- package/dist/cjs/components/compiled/ReactionsList.js +26 -0
- package/dist/cjs/components/compiled/Selector.compiled.css +13 -0
- package/dist/cjs/components/compiled/Selector.js +81 -0
- package/dist/cjs/components/compiled/StaticReaction.compiled.css +3 -1
- package/dist/cjs/components/compiled/StaticReaction.js +3 -4
- package/dist/cjs/components/compiled/Trigger.compiled.css +34 -0
- package/dist/cjs/components/compiled/Trigger.js +100 -0
- package/dist/cjs/containers/ConnectedReactionPicker/ConnectedReactionPicker.js +5 -1
- package/dist/cjs/index.js +3 -7
- package/dist/es2019/analytics/index.js +1 -1
- package/dist/es2019/components/ShowMore/ShowMore.js +3 -8
- package/dist/es2019/components/compiled/EmojiButton.compiled.css +17 -0
- package/dist/es2019/components/compiled/EmojiButton.js +40 -0
- package/dist/es2019/components/compiled/ReactionButton.compiled.css +4 -5
- package/dist/es2019/components/compiled/ReactionButton.js +5 -3
- package/dist/es2019/components/compiled/ReactionPicker.compiled.css +11 -0
- package/dist/es2019/components/compiled/ReactionPicker.js +295 -0
- package/dist/es2019/components/compiled/ReactionSummaryButton.compiled.css +7 -0
- package/dist/es2019/components/compiled/ReactionSummaryButton.js +88 -0
- package/dist/es2019/components/compiled/ReactionSummaryView.compiled.css +5 -0
- package/dist/es2019/components/compiled/ReactionSummaryView.js +87 -0
- package/dist/es2019/components/compiled/ReactionView.compiled.css +22 -0
- package/dist/es2019/components/compiled/ReactionView.js +63 -0
- package/dist/es2019/components/compiled/Reactions.js +4 -4
- package/dist/es2019/components/compiled/ReactionsDialog.compiled.css +14 -0
- package/dist/es2019/components/compiled/ReactionsDialog.js +99 -0
- package/dist/es2019/components/compiled/ReactionsDialogHeader.compiled.css +60 -0
- package/dist/es2019/components/compiled/ReactionsDialogHeader.js +172 -0
- package/dist/es2019/components/compiled/ReactionsDialogTrigger.compiled.css +16 -0
- package/dist/es2019/components/compiled/ReactionsDialogTrigger.js +30 -0
- package/dist/es2019/components/compiled/ReactionsList.js +20 -0
- package/dist/es2019/components/compiled/Selector.compiled.css +14 -0
- package/dist/es2019/components/compiled/Selector.js +69 -0
- package/dist/es2019/components/compiled/StaticReaction.compiled.css +3 -1
- package/dist/es2019/components/compiled/StaticReaction.js +4 -5
- package/dist/es2019/components/compiled/Trigger.compiled.css +34 -0
- package/dist/es2019/components/compiled/Trigger.js +90 -0
- package/dist/es2019/containers/ConnectedReactionPicker/ConnectedReactionPicker.js +5 -1
- package/dist/es2019/index.js +6 -2
- package/dist/esm/analytics/index.js +1 -1
- package/dist/esm/components/ShowMore/ShowMore.js +4 -9
- package/dist/esm/components/compiled/EmojiButton.compiled.css +17 -0
- package/dist/esm/components/compiled/EmojiButton.js +39 -0
- package/dist/esm/components/compiled/ReactionButton.compiled.css +4 -5
- package/dist/esm/components/compiled/ReactionButton.js +5 -3
- package/dist/esm/components/compiled/ReactionPicker.compiled.css +11 -0
- package/dist/esm/components/compiled/ReactionPicker.js +316 -0
- package/dist/esm/components/compiled/ReactionSummaryButton.compiled.css +7 -0
- package/dist/esm/components/compiled/ReactionSummaryButton.js +100 -0
- package/dist/esm/components/compiled/ReactionSummaryView.compiled.css +5 -0
- package/dist/esm/components/compiled/ReactionSummaryView.js +107 -0
- package/dist/esm/components/compiled/ReactionView.compiled.css +22 -0
- package/dist/esm/components/compiled/ReactionView.js +67 -0
- package/dist/esm/components/compiled/Reactions.js +4 -4
- package/dist/esm/components/compiled/ReactionsDialog.compiled.css +14 -0
- package/dist/esm/components/compiled/ReactionsDialog.js +115 -0
- package/dist/esm/components/compiled/ReactionsDialogHeader.compiled.css +60 -0
- package/dist/esm/components/compiled/ReactionsDialogHeader.js +193 -0
- package/dist/esm/components/compiled/ReactionsDialogTrigger.compiled.css +16 -0
- package/dist/esm/components/compiled/ReactionsDialogTrigger.js +29 -0
- package/dist/esm/components/compiled/ReactionsList.js +19 -0
- package/dist/esm/components/compiled/Selector.compiled.css +13 -0
- package/dist/esm/components/compiled/Selector.js +71 -0
- package/dist/esm/components/compiled/StaticReaction.compiled.css +3 -1
- package/dist/esm/components/compiled/StaticReaction.js +4 -5
- package/dist/esm/components/compiled/Trigger.compiled.css +34 -0
- package/dist/esm/components/compiled/Trigger.js +93 -0
- package/dist/esm/containers/ConnectedReactionPicker/ConnectedReactionPicker.js +5 -1
- package/dist/esm/index.js +6 -2
- package/dist/types/components/ShowMore/ShowMore.d.ts +2 -7
- package/dist/types/components/compiled/EmojiButton.d.ts +21 -0
- package/dist/types/components/compiled/ReactionButton.d.ts +2 -1
- package/dist/types/components/compiled/ReactionPicker.d.ts +100 -0
- package/dist/types/components/compiled/ReactionSummaryButton.d.ts +34 -0
- package/dist/types/components/compiled/ReactionSummaryView.d.ts +58 -0
- package/dist/types/components/compiled/ReactionView.d.ts +13 -0
- package/dist/types/components/compiled/Reactions.d.ts +2 -2
- package/dist/types/components/compiled/ReactionsDialog.d.ts +33 -0
- package/dist/types/components/compiled/ReactionsDialogHeader.d.ts +16 -0
- package/dist/types/components/compiled/ReactionsDialogTrigger.d.ts +6 -0
- package/dist/types/components/compiled/ReactionsList.d.ts +20 -0
- package/dist/types/components/compiled/Selector.d.ts +33 -0
- package/dist/types/components/compiled/Trigger.d.ts +64 -0
- package/dist/types/index.d.ts +4 -2
- package/dist/types-ts4.5/components/ShowMore/ShowMore.d.ts +2 -7
- package/dist/types-ts4.5/components/compiled/EmojiButton.d.ts +21 -0
- package/dist/types-ts4.5/components/compiled/ReactionButton.d.ts +2 -1
- package/dist/types-ts4.5/components/compiled/ReactionPicker.d.ts +100 -0
- package/dist/types-ts4.5/components/compiled/ReactionSummaryButton.d.ts +34 -0
- package/dist/types-ts4.5/components/compiled/ReactionSummaryView.d.ts +58 -0
- package/dist/types-ts4.5/components/compiled/ReactionView.d.ts +13 -0
- package/dist/types-ts4.5/components/compiled/Reactions.d.ts +2 -2
- package/dist/types-ts4.5/components/compiled/ReactionsDialog.d.ts +33 -0
- package/dist/types-ts4.5/components/compiled/ReactionsDialogHeader.d.ts +16 -0
- package/dist/types-ts4.5/components/compiled/ReactionsDialogTrigger.d.ts +6 -0
- package/dist/types-ts4.5/components/compiled/ReactionsList.d.ts +20 -0
- package/dist/types-ts4.5/components/compiled/Selector.d.ts +33 -0
- package/dist/types-ts4.5/components/compiled/Trigger.d.ts +64 -0
- package/dist/types-ts4.5/index.d.ts +4 -2
- 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 '
|
|
17
|
-
import { ReactionPicker } from '
|
|
18
|
-
import { ReactionSummaryView } from '
|
|
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 {
|
|
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(
|
|
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)}
|