@bigbinary/neeto-molecules 5.3.13 → 5.3.14
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/dist/FloatingActionMenu.js +94 -97
- package/dist/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/FloatingActionMenu.js +93 -96
- package/dist/cjs/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/urls-CC4qs7hW.js +11 -0
- package/dist/cjs/urls-CC4qs7hW.js.map +1 -0
- package/dist/cjs/v2/Engagements.js +1 -1
- package/dist/cjs/v2/Engagements.js.map +1 -1
- package/dist/cjs/v2/FloatingActionMenu.js +69 -73
- package/dist/cjs/v2/FloatingActionMenu.js.map +1 -1
- package/dist/urls-CN1MpSwF.js +9 -0
- package/dist/urls-CN1MpSwF.js.map +1 -0
- package/dist/v2/Engagements.js +1 -1
- package/dist/v2/Engagements.js.map +1 -1
- package/dist/v2/FloatingActionMenu.js +70 -74
- package/dist/v2/FloatingActionMenu.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { toLower } from 'ramda';
|
|
2
|
+
|
|
3
|
+
var getNeetoUrl = function getNeetoUrl(subdomain) {
|
|
4
|
+
var _globalProps;
|
|
5
|
+
return "https://".concat(subdomain, ".").concat(toLower(((_globalProps = globalProps) === null || _globalProps === void 0 ? void 0 : _globalProps.appName) || ""), ".com");
|
|
6
|
+
};
|
|
7
|
+
|
|
8
|
+
export { getNeetoUrl as g };
|
|
9
|
+
//# sourceMappingURL=urls-CN1MpSwF.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"urls-CN1MpSwF.js","sources":["../src/utils/urls.js"],"sourcesContent":["import { toLower } from \"ramda\";\n\nexport const getNeetoUrl = subdomain =>\n `https://${subdomain}.${toLower(globalProps?.appName || \"\")}.com`;\n"],"names":["getNeetoUrl","subdomain","_globalProps","concat","toLower","globalProps","appName"],"mappings":";;IAEaA,WAAW,GAAG,SAAdA,WAAWA,CAAGC,SAAS,EAAA;AAAA,EAAA,IAAAC,YAAA;EAAA,OAAA,UAAA,CAAAC,MAAA,CACvBF,SAAS,EAAA,GAAA,CAAA,CAAAE,MAAA,CAAIC,OAAO,CAAC,CAAA,CAAAF,YAAA,GAAAG,WAAW,MAAA,IAAA,IAAAH,YAAA,KAAA,MAAA,GAAA,MAAA,GAAXA,YAAA,CAAaI,OAAO,KAAI,EAAE,CAAC,EAAA,MAAA,CAAA;AAAA;;;;"}
|
package/dist/v2/Engagements.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Engagements.js","sources":["../../src/v2/components/Engagements/Activity/Icon.jsx","../../src/v2/components/Engagements/Activity/index.jsx","../../src/v2/components/Engagements/Comment/Header.jsx","../../src/v2/components/Engagements/Comment/Reactions.jsx","../../src/v2/components/Engagements/constants.js","../../src/v2/components/Engagements/utils.js","../../src/v2/components/Engagements/Comment/index.jsx","../../src/v2/components/Engagements/index.jsx"],"sourcesContent":["import classNames from \"classnames\";\n\nconst ActivityIcon = ({ icon, unread }) => (\n <div className=\"bg-card relative z-10 mx-0.5 flex-shrink-0 rounded-full\">\n <span\n className={classNames(\n \"nm-activity-node-icon bg-muted text-muted-foreground relative flex h-7 w-7 items-center justify-center rounded-full p-1 [&>svg]:size-4\",\n { \"text-primary bg-primary/10\": unread }\n )}\n >\n {icon}\n {unread && (\n <span className=\"bg-primary absolute -end-0.5 -top-0.5 h-2 w-2 rounded-full\" />\n )}\n </span>\n </div>\n);\n\nexport default ActivityIcon;\n","import { Avatar } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport ActivityIcon from \"./Icon\";\n\nconst Activity = ({\n user,\n icon,\n unread = false,\n className,\n children,\n userIcon,\n}) => (\n <div\n className={classNames(\n \"nm-engagements-node relative -mt-4 flex items-center gap-2 px-4 py-4\",\n \"before:bg-border before:absolute before:start-[31px] before:top-0 before:h-full before:w-0.5 before:content-['']\",\n className\n )}\n >\n <ActivityIcon {...{ icon, unread }} />\n {userIcon || (\n <Avatar\n className=\"!size-[18px] [&_[data-slot=avatar-fallback]]:text-[10px]\"\n size=\"sm\"\n user={{ name: user.name, imageUrl: user.profileImageUrl }}\n />\n )}\n <div className=\"nm-engagements-node__children\">{children}</div>\n </div>\n);\n\nActivity.propTypes = {\n user: PropTypes.shape({ name: PropTypes.string.isRequired }).isRequired,\n icon: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired,\n unread: PropTypes.bool,\n className: PropTypes.string,\n};\n\nexport default Activity;\n","import { Avatar, Typography } from \"@bigbinary/neeto-atoms\";\nimport { isPresent } from \"neetocist\";\n\nimport DateFormat from \"../../DateFormat\";\nimport MoreDropdown from \"../../MoreDropdown\";\n\nconst CommentHeader = ({ user, comment, info, actions }) => {\n const avatar = { name: user.name, imageUrl: user.profileImageUrl };\n\n return (\n <div className=\"bg-muted/40 border-border flex items-center justify-between rounded-t-md border-b py-1 ps-4 pe-1\">\n <div className=\"flex min-w-0 flex-grow flex-wrap items-center gap-2\">\n <Avatar size=\"sm\" user={avatar} />\n <Typography as=\"span\" variant=\"body3\" weight=\"semibold\">\n {user.name}\n </Typography>\n <Typography as=\"span\" color=\"muted\" variant=\"body3\">\n •\n </Typography>\n {info && (\n <>\n <Typography\n as=\"span\"\n className=\"lowercase\"\n color=\"muted\"\n variant=\"body3\"\n >\n {info}\n </Typography>\n <Typography as=\"span\" color=\"muted\" variant=\"body3\">\n •\n </Typography>\n </>\n )}\n {comment.createdAt && (\n <DateFormat.FromNow\n date={comment.createdAt}\n typographyProps={{ color: \"muted\", variant: \"body3\" }}\n />\n )}\n </div>\n {isPresent(actions) && (\n <MoreDropdown\n dropdownButtonProps={{ className: \"self-start flex-shrink-0\" }}\n dropdownProps={{ position: \"bottom-start\" }}\n menuItems={actions}\n />\n )}\n </div>\n );\n};\n\nexport default CommentHeader;\n","import { memo } from \"react\";\n\nimport { Button, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\nimport { findIndexBy } from \"neetocist\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport { collectBy, eqProps, pathEq, prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport EmojiPicker from \"../../EmojiPicker\";\n\nconst findOwnIndex = findIndexBy({ userId: globalProps.user.id });\nconst groupReactions = collectBy(prop(\"unified\"));\n\nconst Reactions = ({ reactions, onAdd, onRemove }) => {\n const { t } = useTranslation();\n const groups = groupReactions(reactions);\n\n const onSelect = emoji => {\n const group = groups.find(pathEq(emoji.unified, [0, \"unified\"]));\n if (group && findOwnIndex(group) >= 0) return;\n onAdd({ ...emoji, emoji: emoji.native });\n };\n\n return (\n <div className=\"mt-3 flex flex-wrap items-center gap-1\">\n <div className=\"bg-muted rounded-full\">\n <EmojiPicker {...{ onSelect }} />\n </div>\n {groups.map(reactionsGroup => {\n const ownIndex = findOwnIndex(reactionsGroup);\n const selected = ownIndex >= 0;\n const reaction = selected\n ? reactionsGroup[ownIndex]\n : reactionsGroup[0];\n\n const names = reactionsGroup\n .map(({ reactor }) =>\n typeof reactor === \"string\" ? reactor : reactor?.name\n )\n .filter(Boolean)\n .join(\", \");\n\n return (\n <Tooltip\n content={t(\"neetoMolecules.engagements.namesReacted\", { names })}\n key={reaction.unified}\n position=\"top\"\n >\n <Button\n aria-pressed={selected}\n size=\"xs\"\n variant=\"ghost\"\n className={classNames(\n \"h-7 rounded-full px-2 text-sm font-normal\",\n {\n \"!bg-muted !hover:bg-muted/80\": selected,\n \"!bg-muted/50\": !selected,\n }\n )}\n onClick={() => (selected ? onRemove : onAdd)(reaction)}\n >\n <span>{reaction.emoji}</span>\n <span>{reactionsGroup.length}</span>\n </Button>\n </Tooltip>\n );\n })}\n </div>\n );\n};\n\nexport default memo(Reactions, eqProps(\"reactions\"));\n","export const ACTIVITY_TYPES = {\n TIMELINE: \"Timeline\",\n FIELD_VALUE: \"FieldValue\",\n TASK: \"Task\",\n ASSIGNEE: \"Assignee\",\n CHECKLIST: \"Checklist\",\n FIELD: \"Field\",\n PROJECT: \"Project\",\n COMMENT: \"Comment\",\n DOCUMENT: \"Document\",\n CHAT_MESSAGE: \"ChatMessage\",\n MESSAGE: \"Message\",\n SECTION: \"Section\",\n PROJECT_MEMBER: \"ProjectMember\",\n PULL_REQUEST: \"NeetoGithubEngine::PullRequest\",\n};\n\nexport const ENGAGEMENT_TYPES = {\n COMMENT: \"comment\",\n ACTIVITY: \"activity\",\n};\n","import { ENGAGEMENT_TYPES } from \"./constants\";\n\nexport const createCommentElementId = comment =>\n `nm-engagement-comment--${comment.id}`;\n\nexport const defaultMatchType = engagement => {\n if (engagement.commenter) return ENGAGEMENT_TYPES.COMMENT;\n else if (engagement.creator) return ENGAGEMENT_TYPES.ACTIVITY;\n\n return null;\n};\n","import { forwardRef } from \"react\";\n\nimport classNames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport CommentHeader from \"./Header\";\nimport Reactions from \"./Reactions\";\n\nimport { createCommentElementId } from \"../utils\";\n\nconst Comment = forwardRef(\n (\n {\n user,\n comment,\n reactions,\n info,\n actions,\n className,\n children,\n onAddReaction,\n onRemoveReaction,\n },\n ref\n ) => (\n <div\n {...{ ref }}\n id={createCommentElementId(comment)}\n className={classNames(\n \"nm-comments-node bg-card border-border relative mb-4 w-full rounded-md border\",\n \"before:bg-border before:absolute before:start-[30px] before:top-[calc(100%+1px)] before:h-4 before:w-0.5 before:content-['']\",\n className\n )}\n >\n <CommentHeader {...{ actions, comment, info, user }} />\n <div className=\"nm-comments-node__inner p-4\">\n {children}\n {reactions !== false && (\n <Reactions\n {...{ reactions }}\n onAdd={onAddReaction}\n onRemove={onRemoveReaction}\n />\n )}\n </div>\n </div>\n )\n);\n\nComment.displayName = \"Comment\";\nComment.propTypes = {\n user: PropTypes.shape({ name: PropTypes.string.isRequired }).isRequired,\n comment: PropTypes.shape({\n id: PropTypes.string.isRequired,\n createdAt: PropTypes.string,\n }).isRequired,\n reactions: PropTypes.oneOfType([PropTypes.array, PropTypes.bool]),\n info: PropTypes.string,\n actions: PropTypes.arrayOf(\n PropTypes.shape({\n isVisible: PropTypes.bool,\n key: PropTypes.string.isRequired,\n label: PropTypes.string.isRequired,\n onClick: PropTypes.func.isRequired,\n })\n ),\n className: PropTypes.string,\n onAddReaction: PropTypes.func,\n onRemoveReaction: PropTypes.func,\n};\n\nexport default Comment;\n","import React from \"react\";\n\nimport { noop } from \"neetocist\";\nimport PropTypes from \"prop-types\";\n\nimport Activity from \"./Activity\";\nimport Comment from \"./Comment\";\nimport { ENGAGEMENT_TYPES } from \"./constants\";\nimport { defaultMatchType } from \"./utils\";\n\nconst Engagements = ({\n data,\n isActivitiesEnabled = false,\n matchType = defaultMatchType,\n renderComment,\n renderActivity,\n}) => {\n const rendererHashmap = {\n [ENGAGEMENT_TYPES.COMMENT]: renderComment,\n [ENGAGEMENT_TYPES.ACTIVITY]: isActivitiesEnabled ? renderActivity : noop,\n };\n\n return (\n <>\n {data.map((engagement, index) => {\n const type = matchType(engagement);\n const renderer = rendererHashmap[type];\n if (!renderer) return null;\n\n return (\n <React.Fragment key={engagement.id}>\n {renderer(engagement, index)}\n </React.Fragment>\n );\n })}\n </>\n );\n};\n\nEngagements.displayName = \"Engagements\";\nEngagements.Comment = Comment;\nEngagements.Activity = Activity;\nEngagements.TYPES = ENGAGEMENT_TYPES;\n\nEngagements.propTypes = {\n data: PropTypes.arrayOf(PropTypes.shape({ id: PropTypes.string.isRequired }))\n .isRequired,\n isActivitiesEnabled: PropTypes.bool,\n matchType: PropTypes.func,\n renderComment: PropTypes.func.isRequired,\n renderActivity: PropTypes.func.isRequired,\n};\n\nexport default Engagements;\n"],"names":["ActivityIcon","_ref","icon","unread","_jsx","className","children","_jsxs","classNames","Activity","user","_ref$unread","userIcon","Avatar","size","name","imageUrl","profileImageUrl","CommentHeader","comment","info","actions","avatar","Typography","as","variant","weight","color","_Fragment","createdAt","DateFormat","FromNow","date","typographyProps","isPresent","MoreDropdown","dropdownButtonProps","dropdownProps","position","menuItems","findOwnIndex","findIndexBy","userId","globalProps","id","groupReactions","collectBy","prop","Reactions","reactions","onAdd","onRemove","_useTranslation","useTranslation","t","groups","onSelect","emoji","group","find","pathEq","unified","_objectSpread","EmojiPicker","map","reactionsGroup","ownIndex","selected","reaction","names","_ref2","reactor","filter","Boolean","join","Tooltip","content","Button","onClick","length","memo","eqProps","ENGAGEMENT_TYPES","COMMENT","ACTIVITY","createCommentElementId","concat","defaultMatchType","engagement","commenter","creator","Comment","forwardRef","ref","onAddReaction","onRemoveReaction","displayName","propTypes","PropTypes","shape","string","isRequired","oneOfType","array","bool","arrayOf","isVisible","key","label","func","Engagements","data","_ref$isActivitiesEnab","isActivitiesEnabled","_ref$matchType","matchType","renderComment","renderActivity","rendererHashmap","_defineProperty","noop","index","type","renderer","React","Fragment","TYPES"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Engagements.js","sources":["../../src/v2/components/Engagements/Activity/Icon.jsx","../../src/v2/components/Engagements/Activity/index.jsx","../../src/v2/components/Engagements/Comment/Header.jsx","../../src/v2/components/Engagements/Comment/Reactions.jsx","../../src/v2/components/Engagements/constants.js","../../src/v2/components/Engagements/utils.js","../../src/v2/components/Engagements/Comment/index.jsx","../../src/v2/components/Engagements/index.jsx"],"sourcesContent":["import classNames from \"classnames\";\n\nconst ActivityIcon = ({ icon, unread }) => (\n <div className=\"bg-card relative z-10 mx-0.5 flex-shrink-0 rounded-full\">\n <span\n className={classNames(\n \"nm-activity-node-icon bg-muted text-muted-foreground relative flex h-7 w-7 items-center justify-center rounded-full p-1 [&>svg]:size-4\",\n { \"text-primary bg-primary/10\": unread }\n )}\n >\n {icon}\n {unread && (\n <span className=\"bg-primary absolute -end-0.5 -top-0.5 h-2 w-2 rounded-full\" />\n )}\n </span>\n </div>\n);\n\nexport default ActivityIcon;\n","import { Avatar } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport ActivityIcon from \"./Icon\";\n\nconst Activity = ({\n user,\n icon,\n unread = false,\n className,\n children,\n userIcon,\n}) => (\n <div\n className={classNames(\n \"nm-engagements-node relative -mt-4 flex items-center gap-2 px-4 py-4\",\n \"before:bg-border before:absolute before:start-[31px] before:top-0 before:h-full before:w-0.5 before:content-['']\",\n className\n )}\n >\n <ActivityIcon {...{ icon, unread }} />\n {userIcon || (\n <Avatar\n className=\"!size-[18px] [&_[data-slot=avatar-fallback]]:text-[10px]\"\n size=\"sm\"\n user={{ name: user.name, imageUrl: user.profileImageUrl }}\n />\n )}\n <div className=\"nm-engagements-node__children\">{children}</div>\n </div>\n);\n\nActivity.propTypes = {\n user: PropTypes.shape({ name: PropTypes.string.isRequired }).isRequired,\n icon: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired,\n unread: PropTypes.bool,\n className: PropTypes.string,\n};\n\nexport default Activity;\n","import { Avatar, Typography } from \"@bigbinary/neeto-atoms\";\nimport { isPresent } from \"neetocist\";\n\nimport DateFormat from \"../../DateFormat\";\nimport MoreDropdown from \"../../MoreDropdown\";\n\nconst CommentHeader = ({ user, comment, info, actions }) => {\n const avatar = { name: user.name, imageUrl: user.profileImageUrl };\n\n return (\n <div className=\"bg-muted/40 border-border flex items-center justify-between rounded-t-md border-b py-1 ps-4 pe-1\">\n <div className=\"flex min-w-0 flex-grow flex-wrap items-center gap-2\">\n <Avatar size=\"sm\" user={avatar} />\n <Typography as=\"span\" variant=\"body3\" weight=\"medium\">\n {user.name}\n </Typography>\n <Typography as=\"span\" color=\"muted\" variant=\"body3\">\n •\n </Typography>\n {info && (\n <>\n <Typography\n as=\"span\"\n className=\"lowercase\"\n color=\"muted\"\n variant=\"body3\"\n >\n {info}\n </Typography>\n <Typography as=\"span\" color=\"muted\" variant=\"body3\">\n •\n </Typography>\n </>\n )}\n {comment.createdAt && (\n <DateFormat.FromNow\n date={comment.createdAt}\n typographyProps={{ color: \"muted\", variant: \"body3\" }}\n />\n )}\n </div>\n {isPresent(actions) && (\n <MoreDropdown\n dropdownButtonProps={{ className: \"self-start flex-shrink-0\" }}\n dropdownProps={{ position: \"bottom-start\" }}\n menuItems={actions}\n />\n )}\n </div>\n );\n};\n\nexport default CommentHeader;\n","import { memo } from \"react\";\n\nimport { Button, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\nimport { findIndexBy } from \"neetocist\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport { collectBy, eqProps, pathEq, prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport EmojiPicker from \"../../EmojiPicker\";\n\nconst findOwnIndex = findIndexBy({ userId: globalProps.user.id });\nconst groupReactions = collectBy(prop(\"unified\"));\n\nconst Reactions = ({ reactions, onAdd, onRemove }) => {\n const { t } = useTranslation();\n const groups = groupReactions(reactions);\n\n const onSelect = emoji => {\n const group = groups.find(pathEq(emoji.unified, [0, \"unified\"]));\n if (group && findOwnIndex(group) >= 0) return;\n onAdd({ ...emoji, emoji: emoji.native });\n };\n\n return (\n <div className=\"mt-3 flex flex-wrap items-center gap-1\">\n <div className=\"bg-muted rounded-full\">\n <EmojiPicker {...{ onSelect }} />\n </div>\n {groups.map(reactionsGroup => {\n const ownIndex = findOwnIndex(reactionsGroup);\n const selected = ownIndex >= 0;\n const reaction = selected\n ? reactionsGroup[ownIndex]\n : reactionsGroup[0];\n\n const names = reactionsGroup\n .map(({ reactor }) =>\n typeof reactor === \"string\" ? reactor : reactor?.name\n )\n .filter(Boolean)\n .join(\", \");\n\n return (\n <Tooltip\n content={t(\"neetoMolecules.engagements.namesReacted\", { names })}\n key={reaction.unified}\n position=\"top\"\n >\n <Button\n aria-pressed={selected}\n size=\"xs\"\n variant=\"ghost\"\n className={classNames(\n \"h-7 rounded-full px-2 text-sm font-normal\",\n {\n \"!bg-muted !hover:bg-muted/80\": selected,\n \"!bg-muted/50\": !selected,\n }\n )}\n onClick={() => (selected ? onRemove : onAdd)(reaction)}\n >\n <span>{reaction.emoji}</span>\n <span>{reactionsGroup.length}</span>\n </Button>\n </Tooltip>\n );\n })}\n </div>\n );\n};\n\nexport default memo(Reactions, eqProps(\"reactions\"));\n","export const ACTIVITY_TYPES = {\n TIMELINE: \"Timeline\",\n FIELD_VALUE: \"FieldValue\",\n TASK: \"Task\",\n ASSIGNEE: \"Assignee\",\n CHECKLIST: \"Checklist\",\n FIELD: \"Field\",\n PROJECT: \"Project\",\n COMMENT: \"Comment\",\n DOCUMENT: \"Document\",\n CHAT_MESSAGE: \"ChatMessage\",\n MESSAGE: \"Message\",\n SECTION: \"Section\",\n PROJECT_MEMBER: \"ProjectMember\",\n PULL_REQUEST: \"NeetoGithubEngine::PullRequest\",\n};\n\nexport const ENGAGEMENT_TYPES = {\n COMMENT: \"comment\",\n ACTIVITY: \"activity\",\n};\n","import { ENGAGEMENT_TYPES } from \"./constants\";\n\nexport const createCommentElementId = comment =>\n `nm-engagement-comment--${comment.id}`;\n\nexport const defaultMatchType = engagement => {\n if (engagement.commenter) return ENGAGEMENT_TYPES.COMMENT;\n else if (engagement.creator) return ENGAGEMENT_TYPES.ACTIVITY;\n\n return null;\n};\n","import { forwardRef } from \"react\";\n\nimport classNames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport CommentHeader from \"./Header\";\nimport Reactions from \"./Reactions\";\n\nimport { createCommentElementId } from \"../utils\";\n\nconst Comment = forwardRef(\n (\n {\n user,\n comment,\n reactions,\n info,\n actions,\n className,\n children,\n onAddReaction,\n onRemoveReaction,\n },\n ref\n ) => (\n <div\n {...{ ref }}\n id={createCommentElementId(comment)}\n className={classNames(\n \"nm-comments-node bg-card border-border relative mb-4 w-full rounded-md border\",\n \"before:bg-border before:absolute before:start-[30px] before:top-[calc(100%+1px)] before:h-4 before:w-0.5 before:content-['']\",\n className\n )}\n >\n <CommentHeader {...{ actions, comment, info, user }} />\n <div className=\"nm-comments-node__inner p-4\">\n {children}\n {reactions !== false && (\n <Reactions\n {...{ reactions }}\n onAdd={onAddReaction}\n onRemove={onRemoveReaction}\n />\n )}\n </div>\n </div>\n )\n);\n\nComment.displayName = \"Comment\";\nComment.propTypes = {\n user: PropTypes.shape({ name: PropTypes.string.isRequired }).isRequired,\n comment: PropTypes.shape({\n id: PropTypes.string.isRequired,\n createdAt: PropTypes.string,\n }).isRequired,\n reactions: PropTypes.oneOfType([PropTypes.array, PropTypes.bool]),\n info: PropTypes.string,\n actions: PropTypes.arrayOf(\n PropTypes.shape({\n isVisible: PropTypes.bool,\n key: PropTypes.string.isRequired,\n label: PropTypes.string.isRequired,\n onClick: PropTypes.func.isRequired,\n })\n ),\n className: PropTypes.string,\n onAddReaction: PropTypes.func,\n onRemoveReaction: PropTypes.func,\n};\n\nexport default Comment;\n","import React from \"react\";\n\nimport { noop } from \"neetocist\";\nimport PropTypes from \"prop-types\";\n\nimport Activity from \"./Activity\";\nimport Comment from \"./Comment\";\nimport { ENGAGEMENT_TYPES } from \"./constants\";\nimport { defaultMatchType } from \"./utils\";\n\nconst Engagements = ({\n data,\n isActivitiesEnabled = false,\n matchType = defaultMatchType,\n renderComment,\n renderActivity,\n}) => {\n const rendererHashmap = {\n [ENGAGEMENT_TYPES.COMMENT]: renderComment,\n [ENGAGEMENT_TYPES.ACTIVITY]: isActivitiesEnabled ? renderActivity : noop,\n };\n\n return (\n <>\n {data.map((engagement, index) => {\n const type = matchType(engagement);\n const renderer = rendererHashmap[type];\n if (!renderer) return null;\n\n return (\n <React.Fragment key={engagement.id}>\n {renderer(engagement, index)}\n </React.Fragment>\n );\n })}\n </>\n );\n};\n\nEngagements.displayName = \"Engagements\";\nEngagements.Comment = Comment;\nEngagements.Activity = Activity;\nEngagements.TYPES = ENGAGEMENT_TYPES;\n\nEngagements.propTypes = {\n data: PropTypes.arrayOf(PropTypes.shape({ id: PropTypes.string.isRequired }))\n .isRequired,\n isActivitiesEnabled: PropTypes.bool,\n matchType: PropTypes.func,\n renderComment: PropTypes.func.isRequired,\n renderActivity: PropTypes.func.isRequired,\n};\n\nexport default Engagements;\n"],"names":["ActivityIcon","_ref","icon","unread","_jsx","className","children","_jsxs","classNames","Activity","user","_ref$unread","userIcon","Avatar","size","name","imageUrl","profileImageUrl","CommentHeader","comment","info","actions","avatar","Typography","as","variant","weight","color","_Fragment","createdAt","DateFormat","FromNow","date","typographyProps","isPresent","MoreDropdown","dropdownButtonProps","dropdownProps","position","menuItems","findOwnIndex","findIndexBy","userId","globalProps","id","groupReactions","collectBy","prop","Reactions","reactions","onAdd","onRemove","_useTranslation","useTranslation","t","groups","onSelect","emoji","group","find","pathEq","unified","_objectSpread","EmojiPicker","map","reactionsGroup","ownIndex","selected","reaction","names","_ref2","reactor","filter","Boolean","join","Tooltip","content","Button","onClick","length","memo","eqProps","ENGAGEMENT_TYPES","COMMENT","ACTIVITY","createCommentElementId","concat","defaultMatchType","engagement","commenter","creator","Comment","forwardRef","ref","onAddReaction","onRemoveReaction","displayName","propTypes","PropTypes","shape","string","isRequired","oneOfType","array","bool","arrayOf","isVisible","key","label","func","Engagements","data","_ref$isActivitiesEnab","isActivitiesEnabled","_ref$matchType","matchType","renderComment","renderActivity","rendererHashmap","_defineProperty","noop","index","type","renderer","React","Fragment","TYPES"],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ import { Collapsible, CollapsibleTrigger, DropdownMenuItem, CollapsibleContent,
|
|
|
9
9
|
import { isNotEmpty, isNotPresent, isPresent, truncate, humanize } from '@bigbinary/neeto-cist';
|
|
10
10
|
import useHotkeys from '@bigbinary/neeto-hotkeys';
|
|
11
11
|
import Profile from '@bigbinary/neeto-team-members-frontend/v2/Profile';
|
|
12
|
-
import { isEmpty,
|
|
12
|
+
import { isEmpty, mergeDeepLeft, not } from 'ramda';
|
|
13
13
|
import KeyboardShortcuts from './KeyboardShortcuts.js';
|
|
14
14
|
import SubscriptionUpgradeRequestModal from './SubscriptionUpgradeRequestModal.js';
|
|
15
15
|
import { withT } from '@bigbinary/neeto-commons-frontend/v2/react-utils';
|
|
@@ -22,15 +22,16 @@ import { useQuery } from '@tanstack/react-query';
|
|
|
22
22
|
import axios from 'axios';
|
|
23
23
|
import { S as Search } from '../search-H0uYy0W-.js';
|
|
24
24
|
import useBreakpoints from '@bigbinary/neeto-commons-frontend/v2/react-utils/useBreakpoints';
|
|
25
|
+
import { g as getNeetoUrl } from '../urls-CN1MpSwF.js';
|
|
25
26
|
import { t } from 'i18next';
|
|
26
|
-
import { getFromLocalStorage } from '@bigbinary/neeto-commons-frontend/v2/utils';
|
|
27
|
-
import { resetAuthTokens } from '@bigbinary/neeto-commons-frontend/v2/utils/axios';
|
|
28
|
-
import { removeFromLocalStorage } from '@bigbinary/neeto-commons-frontend/v2/utils/general';
|
|
29
27
|
import { c as createLucideIcon } from '../createLucideIcon--oLqczpc.js';
|
|
30
28
|
import { C as CircleQuestionMark } from '../circle-question-mark-B807GLZf.js';
|
|
31
29
|
import { C as ChevronRight } from '../chevron-right-CEsVcNLw.js';
|
|
32
30
|
import { U as User } from '../user-Dhw9zdMR.js';
|
|
33
31
|
import useLocalStorage from '@bigbinary/neeto-commons-frontend/v2/react-utils/useLocalStorage';
|
|
32
|
+
import { getFromLocalStorage } from '@bigbinary/neeto-commons-frontend/v2/utils';
|
|
33
|
+
import { resetAuthTokens } from '@bigbinary/neeto-commons-frontend/v2/utils/axios';
|
|
34
|
+
import { removeFromLocalStorage } from '@bigbinary/neeto-commons-frontend/v2/utils/general';
|
|
34
35
|
import CopyToClipboardButton from './CopyToClipboardButton.js';
|
|
35
36
|
import '../useKeyboardShortcutsPaneState-BlyFMEtW.js';
|
|
36
37
|
import 'zustand/shallow';
|
|
@@ -584,72 +585,6 @@ var MENU_ITEM_CLASSES = "gap-2.5 px-2.5 py-2 font-medium [&>[data-slot=menu-item
|
|
|
584
585
|
var THEME_BUTTON_BASE = "relative z-10 flex items-center justify-center gap-1 rounded-md px-2.5 py-1.5 text-xs font-medium transition-colors focus-visible:outline-none";
|
|
585
586
|
var THEME_ICON_BASE = "transition-transform duration-300 ease-out";
|
|
586
587
|
|
|
587
|
-
var getSidebarStateLocalStorageKey = function getSidebarStateLocalStorageKey() {
|
|
588
|
-
var _globalProps$user, _globalProps$user2;
|
|
589
|
-
var user = ((_globalProps$user = globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.email) || ((_globalProps$user2 = globalProps.user) === null || _globalProps$user2 === void 0 ? void 0 : _globalProps$user2.phoneNumber);
|
|
590
|
-
return "sidebarState-".concat(user);
|
|
591
|
-
};
|
|
592
|
-
var getUserProfileInfo = function getUserProfileInfo() {
|
|
593
|
-
var _globalProps$user$fir, _globalProps$user3, _globalProps$user$las, _globalProps$user4, _globalProps$user5, _globalProps$user6, _globalProps$user7;
|
|
594
|
-
return {
|
|
595
|
-
name: "".concat((_globalProps$user$fir = (_globalProps$user3 = globalProps.user) === null || _globalProps$user3 === void 0 ? void 0 : _globalProps$user3.firstName) !== null && _globalProps$user$fir !== void 0 ? _globalProps$user$fir : "", " ").concat((_globalProps$user$las = (_globalProps$user4 = globalProps.user) === null || _globalProps$user4 === void 0 ? void 0 : _globalProps$user4.lastName) !== null && _globalProps$user$las !== void 0 ? _globalProps$user$las : ""),
|
|
596
|
-
imageUrl: globalProps.authenticated ? (_globalProps$user5 = globalProps.user) === null || _globalProps$user5 === void 0 ? void 0 : _globalProps$user5.profileImageUrl : "https://d2v7kzglnr2dnh.cloudfront.net/others/profile-pic.jpg",
|
|
597
|
-
email: ((_globalProps$user6 = globalProps.user) === null || _globalProps$user6 === void 0 ? void 0 : _globalProps$user6.email) || ((_globalProps$user7 = globalProps.user) === null || _globalProps$user7 === void 0 ? void 0 : _globalProps$user7.phoneNumber),
|
|
598
|
-
isAuthenticated: globalProps.authenticated
|
|
599
|
-
};
|
|
600
|
-
};
|
|
601
|
-
var getConsumerProfileInfo = function getConsumerProfileInfo() {
|
|
602
|
-
var _globalProps$consumer, _globalProps$consumer2, _globalProps$consumer3, _globalProps$consumer4, _globalProps$consumer5, _globalProps$consumer6, _globalProps$consumer7;
|
|
603
|
-
return {
|
|
604
|
-
name: "".concat((_globalProps$consumer = (_globalProps$consumer2 = globalProps.consumer) === null || _globalProps$consumer2 === void 0 ? void 0 : _globalProps$consumer2.firstName) !== null && _globalProps$consumer !== void 0 ? _globalProps$consumer : "", " ").concat((_globalProps$consumer3 = (_globalProps$consumer4 = globalProps.consumer) === null || _globalProps$consumer4 === void 0 ? void 0 : _globalProps$consumer4.lastName) !== null && _globalProps$consumer3 !== void 0 ? _globalProps$consumer3 : ""),
|
|
605
|
-
imageUrl: ((_globalProps$consumer5 = globalProps.consumer) === null || _globalProps$consumer5 === void 0 ? void 0 : _globalProps$consumer5.profileImageUrl) || "https://d2v7kzglnr2dnh.cloudfront.net/others/profile-pic.jpg",
|
|
606
|
-
email: ((_globalProps$consumer6 = globalProps.consumer) === null || _globalProps$consumer6 === void 0 ? void 0 : _globalProps$consumer6.email) || ((_globalProps$consumer7 = globalProps.consumer) === null || _globalProps$consumer7 === void 0 ? void 0 : _globalProps$consumer7.phoneNumber),
|
|
607
|
-
isAuthenticated: globalProps.isConsumer
|
|
608
|
-
};
|
|
609
|
-
};
|
|
610
|
-
var getDefaultBottomLinks = function getDefaultBottomLinks(isAuthenticated, isConsumer) {
|
|
611
|
-
return [isAuthenticated ? {
|
|
612
|
-
label: t("neetoMolecules.sidebar.logout"),
|
|
613
|
-
icon: LogOut,
|
|
614
|
-
onClick: function onClick() {
|
|
615
|
-
resetAuthTokens();
|
|
616
|
-
removeFromLocalStorage(getSidebarStateLocalStorageKey());
|
|
617
|
-
isConsumer ? window.location.href = "/consumers/logout?redirect_uri=".concat(window.location.href) : window.location.href = "/logout";
|
|
618
|
-
},
|
|
619
|
-
"data-testid": "profile-logout-button"
|
|
620
|
-
} : {
|
|
621
|
-
label: t("neetoMolecules.sidebar.login"),
|
|
622
|
-
onClick: function onClick() {
|
|
623
|
-
window.location.href = "/login";
|
|
624
|
-
},
|
|
625
|
-
"data-testid": "profile-login-button"
|
|
626
|
-
}];
|
|
627
|
-
};
|
|
628
|
-
var getProfileInfo = function getProfileInfo(profileInfoOverrides, isConsumer) {
|
|
629
|
-
return mergeDeepLeft(profileInfoOverrides, isConsumer ? getConsumerProfileInfo() : getUserProfileInfo());
|
|
630
|
-
};
|
|
631
|
-
|
|
632
|
-
// Theme switcher utils.
|
|
633
|
-
var setDarkTheme = function setDarkTheme() {
|
|
634
|
-
if (!document.body) return;
|
|
635
|
-
document.body.classList.remove(THEMES.LIGHT, LEGACY_THEMES.LIGHT);
|
|
636
|
-
document.body.classList.add(THEMES.DARK, LEGACY_THEMES.DARK);
|
|
637
|
-
};
|
|
638
|
-
var setLightTheme = function setLightTheme() {
|
|
639
|
-
if (!document.body) return;
|
|
640
|
-
document.body.classList.remove(THEMES.DARK, LEGACY_THEMES.DARK);
|
|
641
|
-
document.body.classList.add(THEMES.LIGHT, LEGACY_THEMES.LIGHT);
|
|
642
|
-
};
|
|
643
|
-
var setAppTheme = function setAppTheme() {
|
|
644
|
-
var storedTheme = getFromLocalStorage(APP_THEME_LOCALSTORAGE_KEY);
|
|
645
|
-
var isDarkTheme = storedTheme === THEMES.DARK || storedTheme === LEGACY_THEMES.DARK;
|
|
646
|
-
isDarkTheme ? setDarkTheme() : setLightTheme();
|
|
647
|
-
};
|
|
648
|
-
var getRoadmapUrl = function getRoadmapUrl() {
|
|
649
|
-
var _globalProps;
|
|
650
|
-
return "https://roadmap.".concat(toLower(((_globalProps = globalProps) === null || _globalProps === void 0 ? void 0 : _globalProps.appName) || ""), ".com");
|
|
651
|
-
};
|
|
652
|
-
|
|
653
588
|
var _excluded$2 = ["className"];
|
|
654
589
|
function ownKeys$4(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
655
590
|
function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
@@ -664,12 +599,11 @@ var MenuItem = /*#__PURE__*/forwardRef(function (_ref, forwardedRef) {
|
|
|
664
599
|
MenuItem.displayName = "FloatingActionMenu.MenuItem";
|
|
665
600
|
|
|
666
601
|
var HelpItems = withT(function (_ref) {
|
|
667
|
-
var _globalProps;
|
|
668
602
|
var t = _ref.t;
|
|
669
603
|
return /*#__PURE__*/jsxs(Fragment, {
|
|
670
604
|
children: [/*#__PURE__*/jsx(MenuItem, {
|
|
671
605
|
"data-testid": "help-link-help-articles-button",
|
|
672
|
-
href: "
|
|
606
|
+
href: "".concat(getNeetoUrl("help"), "/"),
|
|
673
607
|
prefix: /*#__PURE__*/jsx(BookOpen, {
|
|
674
608
|
size: 18
|
|
675
609
|
}),
|
|
@@ -698,7 +632,7 @@ var HelpItems = withT(function (_ref) {
|
|
|
698
632
|
children: t("neetoMolecules.sidebar.helpLinks.askTheCommunity")
|
|
699
633
|
}), /*#__PURE__*/jsx(MenuItem, {
|
|
700
634
|
"data-testid": "help-link-request-feature-button",
|
|
701
|
-
href: "".concat(
|
|
635
|
+
href: "".concat(getNeetoUrl("engage"), "/feature-requests"),
|
|
702
636
|
prefix: /*#__PURE__*/jsx(Lightbulb, {
|
|
703
637
|
size: 18
|
|
704
638
|
}),
|
|
@@ -707,7 +641,7 @@ var HelpItems = withT(function (_ref) {
|
|
|
707
641
|
children: t("neetoMolecules.sidebar.helpLinks.requestFeature")
|
|
708
642
|
}), /*#__PURE__*/jsx(MenuItem, {
|
|
709
643
|
"data-testid": "help-link-roadmap-button",
|
|
710
|
-
href: "".concat(
|
|
644
|
+
href: "".concat(getNeetoUrl("engage"), "/product-roadmap"),
|
|
711
645
|
prefix: /*#__PURE__*/jsx(Map, {
|
|
712
646
|
size: 18
|
|
713
647
|
}),
|
|
@@ -1131,6 +1065,68 @@ var ProfileExpandMenu = function ProfileExpandMenu(_ref) {
|
|
|
1131
1065
|
});
|
|
1132
1066
|
};
|
|
1133
1067
|
|
|
1068
|
+
var getSidebarStateLocalStorageKey = function getSidebarStateLocalStorageKey() {
|
|
1069
|
+
var _globalProps$user, _globalProps$user2;
|
|
1070
|
+
var user = ((_globalProps$user = globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.email) || ((_globalProps$user2 = globalProps.user) === null || _globalProps$user2 === void 0 ? void 0 : _globalProps$user2.phoneNumber);
|
|
1071
|
+
return "sidebarState-".concat(user);
|
|
1072
|
+
};
|
|
1073
|
+
var getUserProfileInfo = function getUserProfileInfo() {
|
|
1074
|
+
var _globalProps$user$fir, _globalProps$user3, _globalProps$user$las, _globalProps$user4, _globalProps$user5, _globalProps$user6, _globalProps$user7;
|
|
1075
|
+
return {
|
|
1076
|
+
name: "".concat((_globalProps$user$fir = (_globalProps$user3 = globalProps.user) === null || _globalProps$user3 === void 0 ? void 0 : _globalProps$user3.firstName) !== null && _globalProps$user$fir !== void 0 ? _globalProps$user$fir : "", " ").concat((_globalProps$user$las = (_globalProps$user4 = globalProps.user) === null || _globalProps$user4 === void 0 ? void 0 : _globalProps$user4.lastName) !== null && _globalProps$user$las !== void 0 ? _globalProps$user$las : ""),
|
|
1077
|
+
imageUrl: globalProps.authenticated ? (_globalProps$user5 = globalProps.user) === null || _globalProps$user5 === void 0 ? void 0 : _globalProps$user5.profileImageUrl : "https://d2v7kzglnr2dnh.cloudfront.net/others/profile-pic.jpg",
|
|
1078
|
+
email: ((_globalProps$user6 = globalProps.user) === null || _globalProps$user6 === void 0 ? void 0 : _globalProps$user6.email) || ((_globalProps$user7 = globalProps.user) === null || _globalProps$user7 === void 0 ? void 0 : _globalProps$user7.phoneNumber),
|
|
1079
|
+
isAuthenticated: globalProps.authenticated
|
|
1080
|
+
};
|
|
1081
|
+
};
|
|
1082
|
+
var getConsumerProfileInfo = function getConsumerProfileInfo() {
|
|
1083
|
+
var _globalProps$consumer, _globalProps$consumer2, _globalProps$consumer3, _globalProps$consumer4, _globalProps$consumer5, _globalProps$consumer6, _globalProps$consumer7;
|
|
1084
|
+
return {
|
|
1085
|
+
name: "".concat((_globalProps$consumer = (_globalProps$consumer2 = globalProps.consumer) === null || _globalProps$consumer2 === void 0 ? void 0 : _globalProps$consumer2.firstName) !== null && _globalProps$consumer !== void 0 ? _globalProps$consumer : "", " ").concat((_globalProps$consumer3 = (_globalProps$consumer4 = globalProps.consumer) === null || _globalProps$consumer4 === void 0 ? void 0 : _globalProps$consumer4.lastName) !== null && _globalProps$consumer3 !== void 0 ? _globalProps$consumer3 : ""),
|
|
1086
|
+
imageUrl: ((_globalProps$consumer5 = globalProps.consumer) === null || _globalProps$consumer5 === void 0 ? void 0 : _globalProps$consumer5.profileImageUrl) || "https://d2v7kzglnr2dnh.cloudfront.net/others/profile-pic.jpg",
|
|
1087
|
+
email: ((_globalProps$consumer6 = globalProps.consumer) === null || _globalProps$consumer6 === void 0 ? void 0 : _globalProps$consumer6.email) || ((_globalProps$consumer7 = globalProps.consumer) === null || _globalProps$consumer7 === void 0 ? void 0 : _globalProps$consumer7.phoneNumber),
|
|
1088
|
+
isAuthenticated: globalProps.isConsumer
|
|
1089
|
+
};
|
|
1090
|
+
};
|
|
1091
|
+
var getDefaultBottomLinks = function getDefaultBottomLinks(isAuthenticated, isConsumer) {
|
|
1092
|
+
return [isAuthenticated ? {
|
|
1093
|
+
label: t("neetoMolecules.sidebar.logout"),
|
|
1094
|
+
icon: LogOut,
|
|
1095
|
+
onClick: function onClick() {
|
|
1096
|
+
resetAuthTokens();
|
|
1097
|
+
removeFromLocalStorage(getSidebarStateLocalStorageKey());
|
|
1098
|
+
isConsumer ? window.location.href = "/consumers/logout?redirect_uri=".concat(window.location.href) : window.location.href = "/logout";
|
|
1099
|
+
},
|
|
1100
|
+
"data-testid": "profile-logout-button"
|
|
1101
|
+
} : {
|
|
1102
|
+
label: t("neetoMolecules.sidebar.login"),
|
|
1103
|
+
onClick: function onClick() {
|
|
1104
|
+
window.location.href = "/login";
|
|
1105
|
+
},
|
|
1106
|
+
"data-testid": "profile-login-button"
|
|
1107
|
+
}];
|
|
1108
|
+
};
|
|
1109
|
+
var getProfileInfo = function getProfileInfo(profileInfoOverrides, isConsumer) {
|
|
1110
|
+
return mergeDeepLeft(profileInfoOverrides, isConsumer ? getConsumerProfileInfo() : getUserProfileInfo());
|
|
1111
|
+
};
|
|
1112
|
+
|
|
1113
|
+
// Theme switcher utils.
|
|
1114
|
+
var setDarkTheme = function setDarkTheme() {
|
|
1115
|
+
if (!document.body) return;
|
|
1116
|
+
document.body.classList.remove(THEMES.LIGHT, LEGACY_THEMES.LIGHT);
|
|
1117
|
+
document.body.classList.add(THEMES.DARK, LEGACY_THEMES.DARK);
|
|
1118
|
+
};
|
|
1119
|
+
var setLightTheme = function setLightTheme() {
|
|
1120
|
+
if (!document.body) return;
|
|
1121
|
+
document.body.classList.remove(THEMES.DARK, LEGACY_THEMES.DARK);
|
|
1122
|
+
document.body.classList.add(THEMES.LIGHT, LEGACY_THEMES.LIGHT);
|
|
1123
|
+
};
|
|
1124
|
+
var setAppTheme = function setAppTheme() {
|
|
1125
|
+
var storedTheme = getFromLocalStorage(APP_THEME_LOCALSTORAGE_KEY);
|
|
1126
|
+
var isDarkTheme = storedTheme === THEMES.DARK || storedTheme === LEGACY_THEMES.DARK;
|
|
1127
|
+
isDarkTheme ? setDarkTheme() : setLightTheme();
|
|
1128
|
+
};
|
|
1129
|
+
|
|
1134
1130
|
var ThemeSwitcher = function ThemeSwitcher() {
|
|
1135
1131
|
var _useTranslation = useTranslation(),
|
|
1136
1132
|
t = _useTranslation.t;
|