@bigbinary/neeto-molecules 3.15.46 → 3.15.48

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.
@@ -34,7 +34,7 @@ var ActivityIcon = function ActivityIcon(_ref) {
34
34
  return /*#__PURE__*/jsx("div", {
35
35
  className: "flex-shrink-0",
36
36
  children: /*#__PURE__*/jsxs("span", {
37
- className: classnames("neeto-ui-bg-gray-200 neeto-ui-text-gray-600 neeto-ui-rounded-full relative z-10 flex h-7 w-7 items-center justify-center p-1", {
37
+ className: classnames("neeto-ui-bg-gray-200 neeto-ui-text-gray-600 neeto-ui-rounded-full neeto-molecules-activity-node-icon relative z-10 flex h-7 w-7 items-center justify-center p-1", {
38
38
  "neeto-ui-text-primary-600 neeto-ui-bg-primary-100": unread
39
39
  }),
40
40
  children: [icon, unread && /*#__PURE__*/jsx("span", {
@@ -82,7 +82,7 @@ var CommentHeader = function CommentHeader(_ref) {
82
82
  return /*#__PURE__*/jsxs("div", {
83
83
  className: "neeto-ui-bg-gray-100 neeto-ui-border-gray-300 flex items-center justify-between rounded-t-md border-b py-2 pl-4 pr-2",
84
84
  children: [/*#__PURE__*/jsxs("div", {
85
- className: "flex items-center gap-2",
85
+ className: "flex min-w-0 flex-grow flex-wrap items-center gap-2",
86
86
  children: [/*#__PURE__*/jsx(Avatar, {
87
87
  size: "medium",
88
88
  user: avatar
@@ -113,6 +113,9 @@ var CommentHeader = function CommentHeader(_ref) {
113
113
  }
114
114
  })]
115
115
  }), isPresent(actions) && /*#__PURE__*/jsx(MoreDropdown, {
116
+ dropdownButtonProps: {
117
+ className: "self-start fles-shrink-0"
118
+ },
116
119
  dropdownProps: {
117
120
  position: "bottom-start"
118
121
  },
@@ -260,7 +263,7 @@ Comment.propTypes = {
260
263
  onRemoveReaction: PropTypes.func
261
264
  };
262
265
 
263
- var css = ".neeto-molecules-comments-node{position:relative}.neeto-molecules-comments-node:before{background-color:rgb(var(--neeto-ui-gray-200));content:\"\";height:1rem;left:13px;position:absolute;top:calc(100% + 1px);transform:translateX(-50%);width:2px}.neeto-molecules-comments-node:last-child:before{display:none}.neeto-molecules-engagements-node{position:relative}.neeto-molecules-engagements-node:before{background-color:rgb(var(--neeto-ui-gray-200));content:\"\";height:100%;left:14px;position:absolute;top:0;transform:translateX(-50%);width:2px}";
266
+ var css = ".neeto-molecules-comments-node{position:relative}.neeto-molecules-comments-node:before{background-color:rgb(var(--neeto-ui-gray-200));content:\"\";height:1rem;left:13px;position:absolute;top:calc(100% + 1px);transform:translateX(-50%);width:2px}.neeto-molecules-comments-node:last-child:before{display:none}.neeto-molecules-engagements-node{position:relative}.neeto-molecules-engagements-node:before{background-color:rgb(var(--neeto-ui-gray-200));content:\"\";height:100%;left:14px;position:absolute;top:0;transform:translateX(-50%);width:2px}.neeto-molecules-activity-node-icon svg{height:16px;width:16px}";
264
267
  n(css,{});
265
268
 
266
269
  var Engagements = function Engagements(_ref) {
@@ -1 +1 @@
1
- {"version":3,"file":"Engagements.js","sources":["../src/components/Engagements/Activity/Icon.jsx","../src/components/Engagements/Activity/index.jsx","../src/components/Engagements/Comment/Header.jsx","../src/components/Engagements/Comment/Reactions.jsx","../src/components/Engagements/constants.js","../src/components/Engagements/utils.js","../src/components/Engagements/Comment/index.jsx","../src/components/Engagements/index.jsx"],"sourcesContent":["import classNames from \"classnames\";\n\nconst ActivityIcon = ({ icon, unread }) => (\n <div className=\"flex-shrink-0\">\n <span\n className={classNames(\n \"neeto-ui-bg-gray-200 neeto-ui-text-gray-600 neeto-ui-rounded-full relative z-10 flex h-7 w-7 items-center justify-center p-1\",\n {\n \"neeto-ui-text-primary-600 neeto-ui-bg-primary-100\": unread,\n }\n )}\n >\n {icon}\n {unread && (\n <span className=\"neeto-ui-rounded-full neeto-ui-bg-primary-800 absolute -right-0.5 -top-0.5 h-2 w-2\" />\n )}\n </span>\n </div>\n);\n\nexport default ActivityIcon;\n","import classNames from \"classnames\";\nimport { Avatar } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport ActivityIcon from \"./Icon\";\n\nconst Activity = ({ user, icon, unread = false, className, children }) => {\n const avatar = { name: user.name, imageUrl: user.profileImageUrl };\n\n return (\n <div\n className={classNames(\n \"neeto-molecules-engagements-node relative -mt-4 flex items-center gap-2 py-4\",\n className\n )}\n >\n <ActivityIcon {...{ icon, unread }} />\n <Avatar size=\"small\" user={avatar} />\n <div className=\"pt-0.5\">{children}</div>\n </div>\n );\n};\n\nActivity.propTypes = {\n /** Object representing the user information */\n user: PropTypes.shape({ name: PropTypes.string.isRequired }).isRequired,\n\n /** Element to render as the icon */\n icon: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired,\n\n /** Boolean indicating if the activity is unread to show unread badge */\n unread: PropTypes.bool,\n\n /** Additional classes passed on to the board view. */\n className: PropTypes.string,\n};\n\nexport default Activity;\n","import { isPresent } from \"neetocist\";\nimport { Avatar, Typography } from \"neetoui\";\n\nimport DateFormat from \"components/DateFormat\";\nimport MoreDropdown from \"components/MoreDropdown\";\n\nconst CommentHeader = ({ user, comment, info, actions }) => {\n const avatar = { name: user.name, imageUrl: user.profileImageUrl };\n\n return (\n <div className=\"neeto-ui-bg-gray-100 neeto-ui-border-gray-300 flex items-center justify-between rounded-t-md border-b py-2 pl-4 pr-2\">\n <div className=\"flex items-center gap-2\">\n <Avatar size=\"medium\" user={avatar} />\n <Typography\n className=\"neeto-ui-text-gray-700\"\n style=\"body2\"\n weight=\"semibold\"\n >\n {user.name}\n </Typography>\n <Typography className=\"neeto-ui-text-gray-700\" style=\"body2\">\n •\n </Typography>\n {info && (\n <>\n <Typography\n className=\"neeto-ui-text-gray-500 lowercase\"\n style=\"body2\"\n >\n {info}\n </Typography>\n <Typography className=\"neeto-ui-text-gray-700\" style=\"body2\">\n •\n </Typography>\n </>\n )}\n {comment.createdAt && (\n <DateFormat.FromNow\n date={comment.createdAt}\n typographyProps={{\n style: \"body2\",\n className: \"neeto-ui-text-gray-500\",\n }}\n />\n )}\n </div>\n {isPresent(actions) && (\n <MoreDropdown\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 classNames from \"classnames\";\nimport { findIndexBy } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Tooltip, Typography } from \"neetoui\";\nimport { collectBy, eqProps, pathEq, pluck, prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport EmojiPicker from \"components/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 // Try to find group to which emoji belongs in existing reactions.\n const group = groups.find(pathEq(emoji.unified, [0, \"unified\"]));\n if (group && findOwnIndex(group) >= 0) return; // User already reacted with same emoji.\n onAdd({ ...emoji, emoji: emoji.native });\n };\n\n return (\n <div className=\"mt-2 flex flex-wrap gap-0.5\">\n <div className=\"neeto-ui-rounded-full neeto-ui-bg-gray-200 mr-2\">\n <EmojiPicker {...{ onSelect }} />\n </div>\n {groups.map(reactions => {\n const ownIndex = findOwnIndex(reactions);\n const selected = ownIndex >= 0;\n const reaction = selected ? reactions[ownIndex] : reactions[0];\n const names = pluck(\"reactor\", reactions).join(\", \");\n\n return (\n <Tooltip\n key={reaction.unified}\n position=\"top\"\n content={\n <p className=\"text-center text-xs\">\n {t(\"neetoMolecules.common.reacted\", { names })}\n </p>\n }\n >\n <div\n className={classNames(\n \"neeto-ui-rounded-full mx-1 flex cursor-pointer items-center justify-center px-2 py-1\",\n {\n \"neeto-ui-bg-accent-100\": selected,\n \"neeto-ui-bg-gray-100\": !selected,\n }\n )}\n onClick={() => (selected ? onRemove : onAdd)(reaction)}\n >\n <Typography className=\"space-x-1 text-sm\" style=\"body2\">\n <span className=\"text-sm\">{reaction.emoji}</span>\n <span className=\"text-sm\">{reactions.length}</span>\n </Typography>\n </div>\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 `neeto-molecules-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 \"neeto-ui-bg-white neeto-ui-rounded-md neeto-ui-border-gray-300 neeto-molecules-comments-node mb-4 w-full border\",\n className\n )}\n >\n <CommentHeader {...{ actions, comment, info, user }} />\n <div className=\"neeto-molecules-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 /** Object representing the user information */\n user: PropTypes.shape({ name: PropTypes.string.isRequired }).isRequired,\n\n /** Object representing the comment item. */\n comment: PropTypes.shape({\n id: PropTypes.string.isRequired,\n createdAt: PropTypes.string.isRequired,\n }).isRequired,\n\n /** Array of reactions. Settings this to `false` will disable reactions for the item */\n reactions: PropTypes.oneOfType([PropTypes.array, PropTypes.bool]),\n\n /** Optional text label to be displayed in the header. */\n info: PropTypes.string,\n\n /** Optional action items to be passed to the menuItems prop of the actions dropdown */\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\n /** Additional classes passed on to the board view. */\n className: PropTypes.string,\n\n /** Callback function triggered when a reaction (emoji) is added */\n onAddReaction: PropTypes.func,\n\n /** Callback function triggered when a reaction (emoji) is removed*/\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 \"./engagements.scss\";\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 /** An array of engagement items */\n data: PropTypes.arrayOf(PropTypes.shape({ id: PropTypes.string.isRequired }))\n .isRequired,\n\n /** Boolean, determines whether activities are rendered. Defaults to false */\n isActivitiesEnabled: PropTypes.bool,\n\n /** Optional function to match the item type. Receives item as argument and should return one of Engagements.TYPES.*/\n matchType: PropTypes.func,\n\n /** A function to render individual comment item. Receives comment and index as arguments */\n renderComment: PropTypes.func.isRequired,\n\n /** A function to render individual activity item. Receives comment and index as arguments */\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","avatar","name","imageUrl","profileImageUrl","Avatar","size","CommentHeader","comment","info","actions","Typography","style","weight","_Fragment","createdAt","DateFormat","FromNow","date","typographyProps","isPresent","MoreDropdown","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","ownIndex","selected","reaction","names","pluck","join","Tooltip","content","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/components/Engagements/Activity/Icon.jsx","../src/components/Engagements/Activity/index.jsx","../src/components/Engagements/Comment/Header.jsx","../src/components/Engagements/Comment/Reactions.jsx","../src/components/Engagements/constants.js","../src/components/Engagements/utils.js","../src/components/Engagements/Comment/index.jsx","../src/components/Engagements/index.jsx"],"sourcesContent":["import classNames from \"classnames\";\n\nconst ActivityIcon = ({ icon, unread }) => (\n <div className=\"flex-shrink-0\">\n <span\n className={classNames(\n \"neeto-ui-bg-gray-200 neeto-ui-text-gray-600 neeto-ui-rounded-full neeto-molecules-activity-node-icon relative z-10 flex h-7 w-7 items-center justify-center p-1\",\n {\n \"neeto-ui-text-primary-600 neeto-ui-bg-primary-100\": unread,\n }\n )}\n >\n {icon}\n {unread && (\n <span className=\"neeto-ui-rounded-full neeto-ui-bg-primary-800 absolute -right-0.5 -top-0.5 h-2 w-2\" />\n )}\n </span>\n </div>\n);\n\nexport default ActivityIcon;\n","import classNames from \"classnames\";\nimport { Avatar } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport ActivityIcon from \"./Icon\";\n\nconst Activity = ({ user, icon, unread = false, className, children }) => {\n const avatar = { name: user.name, imageUrl: user.profileImageUrl };\n\n return (\n <div\n className={classNames(\n \"neeto-molecules-engagements-node relative -mt-4 flex items-center gap-2 py-4\",\n className\n )}\n >\n <ActivityIcon {...{ icon, unread }} />\n <Avatar size=\"small\" user={avatar} />\n <div className=\"pt-0.5\">{children}</div>\n </div>\n );\n};\n\nActivity.propTypes = {\n /** Object representing the user information */\n user: PropTypes.shape({ name: PropTypes.string.isRequired }).isRequired,\n\n /** Element to render as the icon */\n icon: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired,\n\n /** Boolean indicating if the activity is unread to show unread badge */\n unread: PropTypes.bool,\n\n /** Additional classes passed on to the board view. */\n className: PropTypes.string,\n};\n\nexport default Activity;\n","import { isPresent } from \"neetocist\";\nimport { Avatar, Typography } from \"neetoui\";\n\nimport DateFormat from \"components/DateFormat\";\nimport MoreDropdown from \"components/MoreDropdown\";\n\nconst CommentHeader = ({ user, comment, info, actions }) => {\n const avatar = { name: user.name, imageUrl: user.profileImageUrl };\n\n return (\n <div className=\"neeto-ui-bg-gray-100 neeto-ui-border-gray-300 flex items-center justify-between rounded-t-md border-b py-2 pl-4 pr-2\">\n <div className=\"flex min-w-0 flex-grow flex-wrap items-center gap-2\">\n <Avatar size=\"medium\" user={avatar} />\n <Typography\n className=\"neeto-ui-text-gray-700\"\n style=\"body2\"\n weight=\"semibold\"\n >\n {user.name}\n </Typography>\n <Typography className=\"neeto-ui-text-gray-700\" style=\"body2\">\n •\n </Typography>\n {info && (\n <>\n <Typography\n className=\"neeto-ui-text-gray-500 lowercase\"\n style=\"body2\"\n >\n {info}\n </Typography>\n <Typography className=\"neeto-ui-text-gray-700\" style=\"body2\">\n •\n </Typography>\n </>\n )}\n {comment.createdAt && (\n <DateFormat.FromNow\n date={comment.createdAt}\n typographyProps={{\n style: \"body2\",\n className: \"neeto-ui-text-gray-500\",\n }}\n />\n )}\n </div>\n {isPresent(actions) && (\n <MoreDropdown\n dropdownButtonProps={{ className: \"self-start fles-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 classNames from \"classnames\";\nimport { findIndexBy } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Tooltip, Typography } from \"neetoui\";\nimport { collectBy, eqProps, pathEq, pluck, prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport EmojiPicker from \"components/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 // Try to find group to which emoji belongs in existing reactions.\n const group = groups.find(pathEq(emoji.unified, [0, \"unified\"]));\n if (group && findOwnIndex(group) >= 0) return; // User already reacted with same emoji.\n onAdd({ ...emoji, emoji: emoji.native });\n };\n\n return (\n <div className=\"mt-2 flex flex-wrap gap-0.5\">\n <div className=\"neeto-ui-rounded-full neeto-ui-bg-gray-200 mr-2\">\n <EmojiPicker {...{ onSelect }} />\n </div>\n {groups.map(reactions => {\n const ownIndex = findOwnIndex(reactions);\n const selected = ownIndex >= 0;\n const reaction = selected ? reactions[ownIndex] : reactions[0];\n const names = pluck(\"reactor\", reactions).join(\", \");\n\n return (\n <Tooltip\n key={reaction.unified}\n position=\"top\"\n content={\n <p className=\"text-center text-xs\">\n {t(\"neetoMolecules.common.reacted\", { names })}\n </p>\n }\n >\n <div\n className={classNames(\n \"neeto-ui-rounded-full mx-1 flex cursor-pointer items-center justify-center px-2 py-1\",\n {\n \"neeto-ui-bg-accent-100\": selected,\n \"neeto-ui-bg-gray-100\": !selected,\n }\n )}\n onClick={() => (selected ? onRemove : onAdd)(reaction)}\n >\n <Typography className=\"space-x-1 text-sm\" style=\"body2\">\n <span className=\"text-sm\">{reaction.emoji}</span>\n <span className=\"text-sm\">{reactions.length}</span>\n </Typography>\n </div>\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 `neeto-molecules-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 \"neeto-ui-bg-white neeto-ui-rounded-md neeto-ui-border-gray-300 neeto-molecules-comments-node mb-4 w-full border\",\n className\n )}\n >\n <CommentHeader {...{ actions, comment, info, user }} />\n <div className=\"neeto-molecules-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 /** Object representing the user information */\n user: PropTypes.shape({ name: PropTypes.string.isRequired }).isRequired,\n\n /** Object representing the comment item. */\n comment: PropTypes.shape({\n id: PropTypes.string.isRequired,\n createdAt: PropTypes.string.isRequired,\n }).isRequired,\n\n /** Array of reactions. Settings this to `false` will disable reactions for the item */\n reactions: PropTypes.oneOfType([PropTypes.array, PropTypes.bool]),\n\n /** Optional text label to be displayed in the header. */\n info: PropTypes.string,\n\n /** Optional action items to be passed to the menuItems prop of the actions dropdown */\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\n /** Additional classes passed on to the board view. */\n className: PropTypes.string,\n\n /** Callback function triggered when a reaction (emoji) is added */\n onAddReaction: PropTypes.func,\n\n /** Callback function triggered when a reaction (emoji) is removed*/\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 \"./engagements.scss\";\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 /** An array of engagement items */\n data: PropTypes.arrayOf(PropTypes.shape({ id: PropTypes.string.isRequired }))\n .isRequired,\n\n /** Boolean, determines whether activities are rendered. Defaults to false */\n isActivitiesEnabled: PropTypes.bool,\n\n /** Optional function to match the item type. Receives item as argument and should return one of Engagements.TYPES.*/\n matchType: PropTypes.func,\n\n /** A function to render individual comment item. Receives comment and index as arguments */\n renderComment: PropTypes.func.isRequired,\n\n /** A function to render individual activity item. Receives comment and index as arguments */\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","avatar","name","imageUrl","profileImageUrl","Avatar","size","CommentHeader","comment","info","actions","Typography","style","weight","_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","ownIndex","selected","reaction","names","pluck","join","Tooltip","content","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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"}
package/dist/Metadata.js CHANGED
@@ -88,6 +88,7 @@ var DetailsBlock = function DetailsBlock(_ref) {
88
88
  });
89
89
  }
90
90
  return /*#__PURE__*/jsx("span", {
91
+ className: "min-w-0 flex-grow",
91
92
  children: value
92
93
  });
93
94
  };
@@ -108,7 +109,7 @@ var DetailsBlock = function DetailsBlock(_ref) {
108
109
  }) : /*#__PURE__*/jsxs("div", {
109
110
  "data-testid": "details-card-detail-wrapper",
110
111
  className: classnames("flex", {
111
- "space-x-4": style === STYLES.inline,
112
+ "items-center space-x-4": style === STYLES.inline,
112
113
  "flex-col": style === STYLES.multiline
113
114
  }),
114
115
  children: [/*#__PURE__*/jsx(Typography, {
@@ -1 +1 @@
1
- {"version":3,"file":"Metadata.js","sources":["../src/components/Metadata/Block.jsx","../src/components/Metadata/constants.js","../src/components/Metadata/DetailsBlock.jsx","../src/components/Metadata/index.jsx"],"sourcesContent":["import classnames from \"classnames\";\nimport { Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nconst Block = ({ title, actionBlock, children, className = \"\" }) => (\n <div\n className=\"neeto-molecules-metadata__block neeto-ui-border-gray-200 mb-4 w-full border-b pb-4\"\n data-cy=\"neeto-molecules-metadata-block\"\n data-testid=\"metadata-block\"\n >\n {(title || actionBlock) && (\n <div className=\"mb-2 flex w-full items-center justify-between gap-2\">\n {title && (\n <div className=\"flex w-60 items-center gap-2 break-all\">\n <Typography\n className=\"neeto-ui-text-gray-700\"\n data-testid=\"metadata-block-title\"\n style=\"h5\"\n textTransform=\"uppercase\"\n weight=\"bold\"\n >\n {title}\n </Typography>\n </div>\n )}\n {actionBlock && <div className=\"ml-auto\">{actionBlock}</div>}\n </div>\n )}\n {!!children && (\n <div\n data-testid=\"metadata-card\"\n className={classnames(\n \"neeto-ui-bg-white neeto-molecules-metadata__card\",\n className\n )}\n >\n {children}\n </div>\n )}\n </div>\n);\n\nBlock.propTypes = {\n /**\n * To specify the content to be rendered on the right side of the title.\n */\n actionBlock: PropTypes.node,\n /**\n * To specify the title of the block.\n */\n title: PropTypes.string,\n /**\n * The content to be rendered inside the block.\n */\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]),\n /**\n * To specify external classNames as overrides to the `Block` component.\n */\n className: PropTypes.string,\n};\n\nexport default Block;\n","export const STYLES = { inline: \"inline\", multiline: \"multiline\" };\n\nexport const SIZES = { small: \"small\", medium: \"medium\" };\n\nexport const DEFAULT_TRUNCATE_AT = 3;\n","import { Fragment, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isNotEmpty } from \"neetocist\";\nimport { Down, Up } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Block from \"./Block\";\nimport { DEFAULT_TRUNCATE_AT, STYLES } from \"./constants\";\n\nconst DetailsBlock = ({\n title,\n actionBlock,\n details = [],\n className,\n style = STYLES.inline,\n truncate = false,\n truncateAt = DEFAULT_TRUNCATE_AT,\n children,\n}) => {\n const [showTruncated, setShowTruncated] = useState(false);\n\n const { t } = useTranslation();\n\n const [visibleDetails, truncatedDetails] = truncate\n ? [details.slice(0, truncateAt), details.slice(truncateAt)]\n : [details];\n\n const renderDetailsValue = value => {\n if (typeof value === \"string\") {\n return (\n <Typography className=\"break-anywhere\" style=\"body2\">\n {value}\n </Typography>\n );\n }\n\n return <span>{value}</span>;\n };\n\n return (\n <Block\n {...{ actionBlock, className }}\n title={title ?? t(\"neetoMolecules.metadata.detailsTitle\")}\n >\n <div\n className=\"flex flex-col space-y-3\"\n data-cy=\"neeto-molecules-metadata-details-block\"\n >\n {visibleDetails.map(({ label, value, type }, index) => (\n <Fragment key={index}>\n {type === \"divider\" ? (\n <hr className=\"neeto-ui-border-gray-200\" />\n ) : (\n <div\n data-testid=\"details-card-detail-wrapper\"\n className={classnames(\"flex\", {\n \"space-x-4\": style === STYLES.inline,\n \"flex-col\": style === STYLES.multiline,\n })}\n >\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n {label}\n </Typography>\n {renderDetailsValue(value)}\n </div>\n )}\n </Fragment>\n ))}\n {!truncate && children}\n {showTruncated && (\n <>\n {truncatedDetails.map(({ label, value, type }, index) => (\n <Fragment key={index}>\n {type === \"divider\" ? (\n <hr className=\"neeto-ui-border-gray-200\" />\n ) : (\n <div\n className={classnames(\"flex\", {\n \"space-x-4\": style === STYLES.inline,\n \"flex-col\": style === STYLES.multiline,\n })}\n >\n <Typography\n className=\"neeto-ui-text-gray-600\"\n style=\"body2\"\n >\n {label}\n </Typography>\n {renderDetailsValue(value)}\n </div>\n )}\n </Fragment>\n ))}\n {children}\n </>\n )}\n {truncate && isNotEmpty(truncatedDetails) && (\n <Button\n data-testid=\"expand-button\"\n icon={showTruncated ? Up : Down}\n style=\"link\"\n label={\n showTruncated\n ? t(\"neetoMolecules.metadata.card.viewLess\")\n : t(\"neetoMolecules.metadata.card.viewMore\")\n }\n onClick={() => setShowTruncated(showTruncated => !showTruncated)}\n />\n )}\n </div>\n </Block>\n );\n};\n\nDetailsBlock.propTypes = {\n /**\n * To specify the content to be rendered on the right side of the title.\n */\n actionBlock: PropTypes.node,\n /**\n * To specify the title of the block.\n */\n title: PropTypes.string,\n /**\n * The details to be rendered inside the block.\n */\n details: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.node,\n type: PropTypes.string,\n })\n ),\n /**\n * To specify whether the label and value should be rendered in a single line or in two lines.\n */\n style: PropTypes.oneOf([\"inline\", \"multiline\"]),\n /**\n * To specify whether the visible details should be truncated at a specific point.\n */\n truncate: PropTypes.bool,\n /**\n * To specify the position at which the details should be truncated and `View more` button should be shown.\n */\n truncateAt: PropTypes.number,\n /**\n * To specify external classNames as overrides to the `DetailsBlock` component.\n */\n className: PropTypes.string,\n /**\n * The additional content to be rendered inside the block.\n */\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]),\n};\n\nexport default DetailsBlock;\n","import { useEffect, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport { Collapse } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport Block from \"./Block\";\nimport { SIZES } from \"./constants\";\nimport DetailsBlock from \"./DetailsBlock\";\nimport \"./metadata.scss\";\n\nconst Metadata = ({\n headerBlock,\n size = SIZES.medium,\n children,\n className = \"\",\n}) => {\n const { isSize } = useBreakpoints();\n const isLargerScreen = isSize(\"desktop\") || isSize(\"largeDesktop\");\n const [isElementsPanelCollapsed, setIsElementsPanelCollapsed] = useState(\n !isLargerScreen\n );\n\n useEffect(() => {\n setIsElementsPanelCollapsed(!isLargerScreen);\n }, [isLargerScreen]);\n\n return (\n <>\n {!isElementsPanelCollapsed && (\n <div\n className=\"neeto-molecules-metadata-panel__backdrop\"\n onClick={() => {\n setIsElementsPanelCollapsed(!isElementsPanelCollapsed);\n }}\n />\n )}\n <div\n className={classnames(\"neeto-molecules-metadata-list-panel__wrapper\", {\n \"neeto-molecules-metadata-list-panel__wrapper--collapsed\":\n isElementsPanelCollapsed,\n })}\n >\n <div className=\"neeto-molecules-metadata-list-panel__container\">\n <div\n data-cy=\"neeto-molecules-metadata-wrapper\"\n data-testid=\"metadata-wrapper\"\n className={classnames(\n \"neeto-ui-bg-white neeto-molecules-metadata neeto-ui-border-gray-200 h-screen flex-shrink-0 overflow-y-auto overflow-x-hidden border-l\",\n {\n \"neeto-molecules-metadata--size-large\": size === SIZES.medium,\n \"neeto-molecules-metadata--size-small\": size === SIZES.small,\n },\n className\n )}\n >\n {headerBlock && (\n <div\n className=\"neeto-molecules-metadata__header mb-5 flex w-full justify-center\"\n data-cy=\"neeto-molecules-metadata-header\"\n data-testid=\"metadata-header\"\n >\n {headerBlock}\n </div>\n )}\n {children}\n </div>\n </div>\n <Button\n className=\"neeto-molecules-metadata-list-panel__toggler\"\n icon={Collapse}\n style=\"secondary\"\n onClick={() => {\n setIsElementsPanelCollapsed(!isElementsPanelCollapsed);\n }}\n />\n </div>\n </>\n );\n};\n\nMetadata.Block = Block;\nMetadata.DetailsBlock = DetailsBlock;\n\nMetadata.propTypes = {\n /**\n * To specify the content to be rendered as the title of the `Metadata` wrapper.\n */\n headerBlock: PropTypes.node,\n /**\n * The content to be rendered inside the `Metadata` wrapper.\n */\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]),\n /**\n * To specify external classNames as overrides to the `Metadata` component.\n */\n className: PropTypes.string,\n /**\n * To set the size of the `Metadata` wrapper.\n */\n size: PropTypes.oneOf([\"small\", \"medium\"]),\n};\n\nexport default Metadata;\n"],"names":["Block","_ref","title","actionBlock","children","_ref$className","className","_jsxs","_jsx","Typography","style","textTransform","weight","classnames","STYLES","inline","multiline","SIZES","small","medium","DEFAULT_TRUNCATE_AT","DetailsBlock","_ref$details","details","_ref$style","_ref$truncate","truncate","_ref$truncateAt","truncateAt","_useState","useState","_useState2","_slicedToArray","showTruncated","setShowTruncated","_useTranslation","useTranslation","t","_ref2","slice","_ref3","visibleDetails","truncatedDetails","renderDetailsValue","value","map","_ref4","index","label","type","Fragment","_Fragment","_ref5","isNotEmpty","Button","icon","Up","Down","onClick","Metadata","headerBlock","_ref$size","size","_useBreakpoints","useBreakpoints","isSize","isLargerScreen","isElementsPanelCollapsed","setIsElementsPanelCollapsed","useEffect","Collapse"],"mappings":"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"}
1
+ {"version":3,"file":"Metadata.js","sources":["../src/components/Metadata/Block.jsx","../src/components/Metadata/constants.js","../src/components/Metadata/DetailsBlock.jsx","../src/components/Metadata/index.jsx"],"sourcesContent":["import classnames from \"classnames\";\nimport { Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nconst Block = ({ title, actionBlock, children, className = \"\" }) => (\n <div\n className=\"neeto-molecules-metadata__block neeto-ui-border-gray-200 mb-4 w-full border-b pb-4\"\n data-cy=\"neeto-molecules-metadata-block\"\n data-testid=\"metadata-block\"\n >\n {(title || actionBlock) && (\n <div className=\"mb-2 flex w-full items-center justify-between gap-2\">\n {title && (\n <div className=\"flex w-60 items-center gap-2 break-all\">\n <Typography\n className=\"neeto-ui-text-gray-700\"\n data-testid=\"metadata-block-title\"\n style=\"h5\"\n textTransform=\"uppercase\"\n weight=\"bold\"\n >\n {title}\n </Typography>\n </div>\n )}\n {actionBlock && <div className=\"ml-auto\">{actionBlock}</div>}\n </div>\n )}\n {!!children && (\n <div\n data-testid=\"metadata-card\"\n className={classnames(\n \"neeto-ui-bg-white neeto-molecules-metadata__card\",\n className\n )}\n >\n {children}\n </div>\n )}\n </div>\n);\n\nBlock.propTypes = {\n /**\n * To specify the content to be rendered on the right side of the title.\n */\n actionBlock: PropTypes.node,\n /**\n * To specify the title of the block.\n */\n title: PropTypes.string,\n /**\n * The content to be rendered inside the block.\n */\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]),\n /**\n * To specify external classNames as overrides to the `Block` component.\n */\n className: PropTypes.string,\n};\n\nexport default Block;\n","export const STYLES = { inline: \"inline\", multiline: \"multiline\" };\n\nexport const SIZES = { small: \"small\", medium: \"medium\" };\n\nexport const DEFAULT_TRUNCATE_AT = 3;\n","import { Fragment, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isNotEmpty } from \"neetocist\";\nimport { Down, Up } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Block from \"./Block\";\nimport { DEFAULT_TRUNCATE_AT, STYLES } from \"./constants\";\n\nconst DetailsBlock = ({\n title,\n actionBlock,\n details = [],\n className,\n style = STYLES.inline,\n truncate = false,\n truncateAt = DEFAULT_TRUNCATE_AT,\n children,\n}) => {\n const [showTruncated, setShowTruncated] = useState(false);\n\n const { t } = useTranslation();\n\n const [visibleDetails, truncatedDetails] = truncate\n ? [details.slice(0, truncateAt), details.slice(truncateAt)]\n : [details];\n\n const renderDetailsValue = value => {\n if (typeof value === \"string\") {\n return (\n <Typography className=\"break-anywhere\" style=\"body2\">\n {value}\n </Typography>\n );\n }\n\n return <span className=\"min-w-0 flex-grow\">{value}</span>;\n };\n\n return (\n <Block\n {...{ actionBlock, className }}\n title={title ?? t(\"neetoMolecules.metadata.detailsTitle\")}\n >\n <div\n className=\"flex flex-col space-y-3\"\n data-cy=\"neeto-molecules-metadata-details-block\"\n >\n {visibleDetails.map(({ label, value, type }, index) => (\n <Fragment key={index}>\n {type === \"divider\" ? (\n <hr className=\"neeto-ui-border-gray-200\" />\n ) : (\n <div\n data-testid=\"details-card-detail-wrapper\"\n className={classnames(\"flex\", {\n \"items-center space-x-4\": style === STYLES.inline,\n \"flex-col\": style === STYLES.multiline,\n })}\n >\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n {label}\n </Typography>\n {renderDetailsValue(value)}\n </div>\n )}\n </Fragment>\n ))}\n {!truncate && children}\n {showTruncated && (\n <>\n {truncatedDetails.map(({ label, value, type }, index) => (\n <Fragment key={index}>\n {type === \"divider\" ? (\n <hr className=\"neeto-ui-border-gray-200\" />\n ) : (\n <div\n className={classnames(\"flex\", {\n \"space-x-4\": style === STYLES.inline,\n \"flex-col\": style === STYLES.multiline,\n })}\n >\n <Typography\n className=\"neeto-ui-text-gray-600\"\n style=\"body2\"\n >\n {label}\n </Typography>\n {renderDetailsValue(value)}\n </div>\n )}\n </Fragment>\n ))}\n {children}\n </>\n )}\n {truncate && isNotEmpty(truncatedDetails) && (\n <Button\n data-testid=\"expand-button\"\n icon={showTruncated ? Up : Down}\n style=\"link\"\n label={\n showTruncated\n ? t(\"neetoMolecules.metadata.card.viewLess\")\n : t(\"neetoMolecules.metadata.card.viewMore\")\n }\n onClick={() => setShowTruncated(showTruncated => !showTruncated)}\n />\n )}\n </div>\n </Block>\n );\n};\n\nDetailsBlock.propTypes = {\n /**\n * To specify the content to be rendered on the right side of the title.\n */\n actionBlock: PropTypes.node,\n /**\n * To specify the title of the block.\n */\n title: PropTypes.string,\n /**\n * The details to be rendered inside the block.\n */\n details: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.node,\n type: PropTypes.string,\n })\n ),\n /**\n * To specify whether the label and value should be rendered in a single line or in two lines.\n */\n style: PropTypes.oneOf([\"inline\", \"multiline\"]),\n /**\n * To specify whether the visible details should be truncated at a specific point.\n */\n truncate: PropTypes.bool,\n /**\n * To specify the position at which the details should be truncated and `View more` button should be shown.\n */\n truncateAt: PropTypes.number,\n /**\n * To specify external classNames as overrides to the `DetailsBlock` component.\n */\n className: PropTypes.string,\n /**\n * The additional content to be rendered inside the block.\n */\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]),\n};\n\nexport default DetailsBlock;\n","import { useEffect, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport { Collapse } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport Block from \"./Block\";\nimport { SIZES } from \"./constants\";\nimport DetailsBlock from \"./DetailsBlock\";\nimport \"./metadata.scss\";\n\nconst Metadata = ({\n headerBlock,\n size = SIZES.medium,\n children,\n className = \"\",\n}) => {\n const { isSize } = useBreakpoints();\n const isLargerScreen = isSize(\"desktop\") || isSize(\"largeDesktop\");\n const [isElementsPanelCollapsed, setIsElementsPanelCollapsed] = useState(\n !isLargerScreen\n );\n\n useEffect(() => {\n setIsElementsPanelCollapsed(!isLargerScreen);\n }, [isLargerScreen]);\n\n return (\n <>\n {!isElementsPanelCollapsed && (\n <div\n className=\"neeto-molecules-metadata-panel__backdrop\"\n onClick={() => {\n setIsElementsPanelCollapsed(!isElementsPanelCollapsed);\n }}\n />\n )}\n <div\n className={classnames(\"neeto-molecules-metadata-list-panel__wrapper\", {\n \"neeto-molecules-metadata-list-panel__wrapper--collapsed\":\n isElementsPanelCollapsed,\n })}\n >\n <div className=\"neeto-molecules-metadata-list-panel__container\">\n <div\n data-cy=\"neeto-molecules-metadata-wrapper\"\n data-testid=\"metadata-wrapper\"\n className={classnames(\n \"neeto-ui-bg-white neeto-molecules-metadata neeto-ui-border-gray-200 h-screen flex-shrink-0 overflow-y-auto overflow-x-hidden border-l\",\n {\n \"neeto-molecules-metadata--size-large\": size === SIZES.medium,\n \"neeto-molecules-metadata--size-small\": size === SIZES.small,\n },\n className\n )}\n >\n {headerBlock && (\n <div\n className=\"neeto-molecules-metadata__header mb-5 flex w-full justify-center\"\n data-cy=\"neeto-molecules-metadata-header\"\n data-testid=\"metadata-header\"\n >\n {headerBlock}\n </div>\n )}\n {children}\n </div>\n </div>\n <Button\n className=\"neeto-molecules-metadata-list-panel__toggler\"\n icon={Collapse}\n style=\"secondary\"\n onClick={() => {\n setIsElementsPanelCollapsed(!isElementsPanelCollapsed);\n }}\n />\n </div>\n </>\n );\n};\n\nMetadata.Block = Block;\nMetadata.DetailsBlock = DetailsBlock;\n\nMetadata.propTypes = {\n /**\n * To specify the content to be rendered as the title of the `Metadata` wrapper.\n */\n headerBlock: PropTypes.node,\n /**\n * The content to be rendered inside the `Metadata` wrapper.\n */\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]),\n /**\n * To specify external classNames as overrides to the `Metadata` component.\n */\n className: PropTypes.string,\n /**\n * To set the size of the `Metadata` wrapper.\n */\n size: PropTypes.oneOf([\"small\", \"medium\"]),\n};\n\nexport default Metadata;\n"],"names":["Block","_ref","title","actionBlock","children","_ref$className","className","_jsxs","_jsx","Typography","style","textTransform","weight","classnames","STYLES","inline","multiline","SIZES","small","medium","DEFAULT_TRUNCATE_AT","DetailsBlock","_ref$details","details","_ref$style","_ref$truncate","truncate","_ref$truncateAt","truncateAt","_useState","useState","_useState2","_slicedToArray","showTruncated","setShowTruncated","_useTranslation","useTranslation","t","_ref2","slice","_ref3","visibleDetails","truncatedDetails","renderDetailsValue","value","map","_ref4","index","label","type","Fragment","_Fragment","_ref5","isNotEmpty","Button","icon","Up","Down","onClick","Metadata","headerBlock","_ref$size","size","_useBreakpoints","useBreakpoints","isSize","isLargerScreen","isElementsPanelCollapsed","setIsElementsPanelCollapsed","useEffect","Collapse"],"mappings":"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"}
@@ -144,7 +144,7 @@ var NavigationLinks = function NavigationLinks(_ref) {
144
144
  });
145
145
  };
146
146
 
147
- var css = ".standalone-publish-preview-button{border-radius:var(--neeto-ui-rounded)!important}.neeto-molecules-navigation-header .neeto-ui-text-h4{color:inherit}@media screen and (max-width:1024px){.neeto-molecules-navigation-header .neeto-ui-text-h4{font-size:.875rem;font-weight:var(--neeto-ui-font-medium)}}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link{color:rgb(var(--neeto-ui-gray-500))}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link--more{background-color:transparent!important;box-shadow:none!important;flex-shrink:0;padding-bottom:0!important;padding-top:0!important}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link.active{color:rgb(var(--neeto-ui-black))}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link:hover:not(.active){color:rgb(var(--neeto-ui-gray-600))}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link.disabled{color:rgb(var(--neeto-ui-gray-300));cursor:not-allowed}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link.disabled:hover{color:rgb(var(--neeto-ui-gray-300))}";
147
+ var css = ".standalone-publish-preview-button{border-radius:var(--neeto-ui-rounded)!important}.neeto-molecules-navigation-header .neeto-molecules-breadcrumbs-wrap{flex-wrap:nowrap}.neeto-molecules-navigation-header .neeto-ui-text-h4{color:inherit}@media screen and (max-width:1024px){.neeto-molecules-navigation-header .neeto-ui-text-h4{font-size:.875rem;font-weight:var(--neeto-ui-font-medium)}}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link{color:rgb(var(--neeto-ui-gray-500))}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link--more{background-color:transparent!important;box-shadow:none!important;flex-shrink:0;padding-bottom:0!important;padding-top:0!important}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link.active{color:rgb(var(--neeto-ui-black))}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link:hover:not(.active){color:rgb(var(--neeto-ui-gray-600))}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link.disabled{color:rgb(var(--neeto-ui-gray-300));cursor:not-allowed}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link.disabled:hover{color:rgb(var(--neeto-ui-gray-300))}";
148
148
  n(css,{});
149
149
 
150
150
  var isAbsoluteUrl = function isAbsoluteUrl(url) {
@@ -237,6 +237,9 @@ var NavigationHeader = function NavigationHeader(_ref) {
237
237
  isSize = _useBreakpoints.isSize;
238
238
  var isMobile = isSize("mobile");
239
239
  var numberOfChildren = length(filter(isPresent, [leftActionBlock, navigationLinks, rightActionBlock]));
240
+ var gridStyle = {
241
+ gridTemplateColumns: isMobile ? "repeat(".concat(navigationLinks ? numberOfChildren - 1 : numberOfChildren, ", auto)") : "repeat(".concat(numberOfChildren, ", 1fr)")
242
+ };
240
243
  return /*#__PURE__*/jsxs("div", {
241
244
  className: "w-full",
242
245
  children: [/*#__PURE__*/jsx("div", {
@@ -245,13 +248,11 @@ var NavigationHeader = function NavigationHeader(_ref) {
245
248
  "data-testid": "navigation-header",
246
249
  children: /*#__PURE__*/jsxs("div", {
247
250
  className: "grid w-full gap-4",
248
- style: {
249
- gridTemplateColumns: isMobile ? "repeat(".concat(numberOfChildren - 1, ", 1fr)") : "repeat(".concat(numberOfChildren, ", 1fr)")
250
- },
251
+ style: gridStyle,
251
252
  children: [leftActionBlock, !isMobile && navigationLinks, rightActionBlock]
252
253
  })
253
254
  }), isMobile && /*#__PURE__*/jsx("div", {
254
- className: "neeto-molecules-navigation-header neeto-ui-border-gray-200 neeto-ui-bg-white \xDFflex-shrink-0 flex items-center overflow-x-auto border-b px-4 py-2 lg:px-6",
255
+ className: "neeto-molecules-navigation-header neeto-ui-border-gray-200 neeto-ui-bg-white flex flex-shrink-0 items-center overflow-x-auto border-b px-4 py-2 lg:px-6",
255
256
  children: navigationLinks
256
257
  })]
257
258
  });
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationHeader.js","sources":["../src/components/NavigationHeader/constants.jsx","../src/components/NavigationHeader/LeftBlock.jsx","../src/components/NavigationHeader/Navigation.jsx","../src/components/NavigationHeader/utils.js","../src/components/NavigationHeader/RightBlock.jsx","../src/components/NavigationHeader/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { Home } from \"neetoicons\";\n\nexport const DEFAULT_HOME_BUTTON_PROPS = {\n tooltip: {\n content: t(\"neetoMolecules.navigationHeader.home\"),\n position: \"bottom\",\n },\n homeUrl: \"/\",\n icon: <Home />,\n};\n","import { isPresent } from \"neetocist\";\nimport { Tooltip } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { mergeDeepRight } from \"ramda\";\nimport { Link } from \"react-router-dom\";\n\nimport Rename from \"components/Rename\";\n\nimport { DEFAULT_HOME_BUTTON_PROPS } from \"./constants\";\n\nconst LeftBlock = ({\n homeButtonProps: customHomeButtonProps,\n homeUrl,\n renameProps,\n children,\n}) => {\n const homeButtonProps = mergeDeepRight(\n DEFAULT_HOME_BUTTON_PROPS,\n customHomeButtonProps\n );\n\n return (\n <div\n className=\"flex items-center gap-1 md:gap-2\"\n data-cy=\"navigation-header-left-block\"\n data-testid=\"navigation-header-left-block\"\n >\n <Tooltip\n content={homeButtonProps.tooltip.content}\n position={homeButtonProps.tooltip.position}\n touch={[\"hold\", 500]}\n >\n <Link data-cy=\"home-button\" data-testid=\"home-button\" to={homeUrl}>\n <div className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-200 p-1\">\n {homeButtonProps.icon}\n </div>\n </Link>\n </Tooltip>\n {isPresent(renameProps) && (\n <Rename\n dropdownItems={renameProps.dropdownItems}\n value={renameProps.value}\n {...renameProps}\n />\n )}\n {children}\n </div>\n );\n};\n\nLeftBlock.propTypes = {\n /**\n * Object containing the home button icon and the props to be passed to the tooltip of the home button.\n */\n homeButtonProps: PropTypes.shape({\n tooltip: PropTypes.shape({\n content: PropTypes.string,\n postition: PropTypes.string,\n }),\n icon: PropTypes.node,\n }),\n /**\n * URL to navigate when the home button is clicked.\n */\n homeUrl: PropTypes.string.isRequired,\n /**\n * Props to be passed to the `Rename` component. Please check the `Rename` component props for more details\n */\n renameProps: PropTypes.object,\n /**\n * To render extra content in the block.\n */\n children: PropTypes.node,\n};\n\nexport default LeftBlock;\n","import classNames from \"classnames\";\nimport { existsBy, isNotEmpty } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Dropdown, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\nimport { NavLink, useLocation } from \"react-router-dom\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst NavigationLinks = ({ headerLinks, maxVisibleLinks = 5 }) => {\n const { pathname } = useLocation();\n const { t } = useTranslation();\n\n const visibleLinks = headerLinks.slice(0, maxVisibleLinks);\n const overflowLinks = headerLinks.slice(maxVisibleLinks);\n\n const isMoreButtonActive = existsBy({ to: pathname }, overflowLinks);\n\n return (\n <div\n className=\"font- flex w-full items-center justify-between gap-4 md:justify-center md:gap-3 lg:gap-6\"\n data-cy=\"navigation-header-navigation-links\"\n data-testid=\"navigation-header-navigation-links\"\n >\n {visibleLinks.map(headerLink => (\n <NavLink\n activeClassName=\"active\"\n className=\"neeto-molecules-navigation-header__link px-2 capitalize no-underline md:px-0\"\n data-cy={`${joinHyphenCase(headerLink.key)}-tab`}\n key={headerLink.key}\n {...headerLink}\n >\n <Typography\n component=\"span\"\n lineHeight=\"normal\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {headerLink.label}\n </Typography>\n </NavLink>\n ))}\n {isNotEmpty(overflowLinks) && (\n <Dropdown\n buttonStyle=\"text\"\n label={t(\"neetoMolecules.navigationHeader.more\")}\n position=\"bottom-end\"\n buttonProps={{\n className: classNames(\n \"neeto-molecules-navigation-header__link neeto-molecules-navigation-header__link--more neeto-ui-typography neeto-ui-text-h4 neeto-ui-font-semibold neeto-ui-leading-normal px-2 capitalize no-underline md:px-0\",\n { active: isMoreButtonActive }\n ),\n }}\n >\n <Menu>\n {overflowLinks.map(headerLink => (\n <MenuItem.Button\n data-cy={`${joinHyphenCase(headerLink.key)}-more-tab`}\n isActive={headerLink.to === pathname}\n key={headerLink.key}\n to={headerLink.to}\n {...headerLink}\n >\n {headerLink.label}\n </MenuItem.Button>\n ))}\n </Menu>\n </Dropdown>\n )}\n </div>\n );\n};\n\nNavigationLinks.propTypes = {\n /**\n * Links to be rendered in the center of the navigation header. It is an array of objects.\n * Each object should have the properties `key`, `to` and `label`. Other props will be passed on to the `Navlink` component from\n `react-router-dom`.\n */\n headerLinks: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n to: PropTypes.string,\n label: PropTypes.string,\n })\n ),\n /**\n * Maximum number of links to be visible in the navigation header. Remaining links will be shown in a more dropdown.\n */\n maxVisibleLinks: PropTypes.number,\n};\n\nexport default NavigationLinks;\n","export const isAbsoluteUrl = url => /^https?:\\/\\//.test(url);\n","import classNames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport PublishBlock from \"components/PublishBlock\";\n\nimport \"./navigation-header.scss\";\nimport { isAbsoluteUrl } from \"./utils\";\n\nconst RightBlock = ({\n isDraftBlockHidden,\n previewDraftUrl,\n isResetDraftButtonVisible,\n onResetClick,\n isResetting,\n isPublishDisabled,\n isPublishing,\n handlePublish,\n isPublishPreviewDisabled,\n previewPublishedUrl,\n isPublishButtonVisible,\n isResetAlertOpen,\n setIsResetAlertOpen,\n handleReset,\n publishAlertTitle,\n publishAlertDescription,\n publishButtonProps = {},\n}) => {\n const { t } = useTranslation();\n\n const renderDraftButtons = ({ ViewDraftButton, ResetDraftButton }) =>\n !isDraftBlockHidden && (\n <>\n <ViewDraftButton\n {...(isAbsoluteUrl(previewDraftUrl)\n ? { href: previewDraftUrl }\n : { to: previewDraftUrl })}\n />\n {isResetDraftButtonVisible && (\n <ResetDraftButton\n loading={isResetting}\n onClick={() => onResetClick()}\n />\n )}\n </>\n );\n\n const renderPublishButtons = ({ PublishButton, PublishPreviewButton }) => (\n <>\n {isPublishButtonVisible && (\n <PublishButton\n disabled={isPublishDisabled}\n loading={isPublishing}\n onClick={() => handlePublish()}\n {...publishButtonProps}\n />\n )}\n <PublishPreviewButton\n {...(isAbsoluteUrl(previewPublishedUrl)\n ? { href: previewPublishedUrl }\n : { to: previewPublishedUrl })}\n disabled={isPublishPreviewDisabled}\n className={classNames({\n \"standalone-publish-preview-button\": !isPublishButtonVisible,\n })}\n />\n </>\n );\n\n return (\n <>\n <PublishBlock {...{ renderDraftButtons, renderPublishButtons }} />\n <PublishBlock.Alert\n isOpen={isResetAlertOpen}\n isSubmitting={isResetting}\n message={\n publishAlertDescription ||\n t(\"neetoMolecules.navigationHeader.resetDescription\")\n }\n title={\n publishAlertTitle || t(\"neetoMolecules.navigationHeader.resetTitle\")\n }\n onClose={() => setIsResetAlertOpen(false)}\n onSubmit={handleReset}\n />\n </>\n );\n};\n\nRightBlock.propTypes = {\n /**\n * To show/hide the draft block.\n */\n isDraftBlockHidden: PropTypes.bool,\n /**\n * Draft preview URL, when the draft button is clicked user will be redirected to this URL.\n */\n previewDraftUrl: PropTypes.string,\n /**\n * Boolean to control the visibility of reset draft button.\n */\n isResetDraftButtonVisible: PropTypes.bool,\n /**\n * Callback function that will be called when the reset button is clicked.\n */\n onResetClick: PropTypes.func,\n /**\n * Setting this to `true` will show a spinner on the reset button. Use when the reset process is in progress.\n */\n isResetting: PropTypes.bool,\n /**\n * To disable the publish button.\n */\n isPublishDisabled: PropTypes.bool,\n /**\n * Setting this to `true` will show a spinner on the publish button. Use when the publish process is in progress.\n */\n isPublishing: PropTypes.bool,\n /**\n * Callback function that will be called when the publish button is clicked.\n */\n handlePublish: PropTypes.func,\n /**\n * To disable the publish preview button.\n */\n isPublishPreviewDisabled: PropTypes.bool,\n /**\n * Publish preview URL, when the preview publish button is clicked user will be redirected to this URL.\n */\n previewPublishedUrl: PropTypes.string,\n /**\n * Boolean to control whether the user have the ability to publish.\n */\n isPublishButtonVisible: PropTypes.bool,\n /**\n * Boolean to control whether the reset alert is open.\n */\n isResetAlertOpen: PropTypes.bool,\n /**\n * Handler to control the `isResetAlert` state variable.\n */\n setIsResetAlertOpen: PropTypes.func,\n /**\n * Callback function that will be called when the reset button is clicked.\n */\n handleReset: PropTypes.func,\n /**\n * Description to be shown in the publish alert\n */\n publishAlertDescription: PropTypes.string,\n /**\n * Title of the publish alert\n */\n publishAlertTitle: PropTypes.string,\n /**\n * Props to be passed to the publish button\n */\n publishButtonProps: PropTypes.object,\n};\n\nexport default RightBlock;\n","import { isPresent } from \"neetocist\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport PropTypes from \"prop-types\";\nimport { filter, length } from \"ramda\";\n\nimport LeftBlock from \"./LeftBlock\";\nimport NavigationLinks from \"./Navigation\";\nimport RightBlock from \"./RightBlock\";\n\nconst NavigationHeader = ({\n leftActionBlock,\n navigationLinks,\n rightActionBlock,\n}) => {\n const { isSize } = useBreakpoints();\n const isMobile = isSize(\"mobile\");\n\n const numberOfChildren = length(\n filter(isPresent, [leftActionBlock, navigationLinks, rightActionBlock])\n );\n\n return (\n <div className=\"w-full\">\n <div\n className=\"neeto-molecules-navigation-header neeto-ui-border-gray-200 neeto-ui-bg-white flex h-16 w-full flex-shrink-0 items-center overflow-x-auto border-b px-2 py-2 md:px-4 lg:px-6\"\n data-cy=\"navigation-header\"\n data-testid=\"navigation-header\"\n >\n <div\n className=\"grid w-full gap-4\"\n style={{\n gridTemplateColumns: isMobile\n ? `repeat(${numberOfChildren - 1}, 1fr)`\n : `repeat(${numberOfChildren}, 1fr)`,\n }}\n >\n {leftActionBlock}\n {!isMobile && navigationLinks}\n {rightActionBlock}\n </div>\n </div>\n {isMobile && (\n <div className=\"neeto-molecules-navigation-header neeto-ui-border-gray-200 neeto-ui-bg-white ßflex-shrink-0 flex items-center overflow-x-auto border-b px-4 py-2 lg:px-6\">\n {navigationLinks}\n </div>\n )}\n </div>\n );\n};\n\nNavigationHeader.LeftActionBlock = LeftBlock;\nNavigationHeader.NavigationLinks = NavigationLinks;\nNavigationHeader.RightActionBlock = RightBlock;\n\nNavigationHeader.propTypes = {\n /**\n * To specify the content to be rendered in the left side of the `NavigationHeader`.\n */\n leftActionBlock: PropTypes.node,\n /**\n * To specify the content to be rendered at the center of the `NavigationHeader`.\n */\n navigationLinks: PropTypes.node,\n /**\n * To specify the content to be rendered in the right side of the `NavigationHeader`.\n */\n rightActionBlock: PropTypes.node,\n};\n\nexport default NavigationHeader;\n"],"names":["DEFAULT_HOME_BUTTON_PROPS","tooltip","content","t","position","homeUrl","icon","_jsx","Home","LeftBlock","_ref","customHomeButtonProps","homeButtonProps","renameProps","children","mergeDeepRight","_jsxs","className","Tooltip","touch","Link","to","isPresent","Rename","_objectSpread","dropdownItems","value","Menu","Dropdown","MenuItem","NavigationLinks","headerLinks","_ref$maxVisibleLinks","maxVisibleLinks","_useLocation","useLocation","pathname","_useTranslation","useTranslation","visibleLinks","slice","overflowLinks","isMoreButtonActive","existsBy","map","headerLink","NavLink","activeClassName","concat","joinHyphenCase","key","Typography","component","lineHeight","style","weight","label","isNotEmpty","buttonStyle","buttonProps","classNames","active","Button","isActive","isAbsoluteUrl","url","test","RightBlock","isDraftBlockHidden","previewDraftUrl","isResetDraftButtonVisible","onResetClick","isResetting","isPublishDisabled","isPublishing","handlePublish","isPublishPreviewDisabled","previewPublishedUrl","isPublishButtonVisible","isResetAlertOpen","setIsResetAlertOpen","handleReset","publishAlertTitle","publishAlertDescription","_ref$publishButtonPro","publishButtonProps","renderDraftButtons","_ref2","ViewDraftButton","ResetDraftButton","_Fragment","href","loading","onClick","renderPublishButtons","_ref3","PublishButton","PublishPreviewButton","disabled","PublishBlock","Alert","isOpen","isSubmitting","message","title","onClose","onSubmit","NavigationHeader","leftActionBlock","navigationLinks","rightActionBlock","_useBreakpoints","useBreakpoints","isSize","isMobile","numberOfChildren","length","filter","gridTemplateColumns","LeftActionBlock","RightActionBlock"],"mappings":"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"}
1
+ {"version":3,"file":"NavigationHeader.js","sources":["../src/components/NavigationHeader/constants.jsx","../src/components/NavigationHeader/LeftBlock.jsx","../src/components/NavigationHeader/Navigation.jsx","../src/components/NavigationHeader/utils.js","../src/components/NavigationHeader/RightBlock.jsx","../src/components/NavigationHeader/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { Home } from \"neetoicons\";\n\nexport const DEFAULT_HOME_BUTTON_PROPS = {\n tooltip: {\n content: t(\"neetoMolecules.navigationHeader.home\"),\n position: \"bottom\",\n },\n homeUrl: \"/\",\n icon: <Home />,\n};\n","import { isPresent } from \"neetocist\";\nimport { Tooltip } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { mergeDeepRight } from \"ramda\";\nimport { Link } from \"react-router-dom\";\n\nimport Rename from \"components/Rename\";\n\nimport { DEFAULT_HOME_BUTTON_PROPS } from \"./constants\";\n\nconst LeftBlock = ({\n homeButtonProps: customHomeButtonProps,\n homeUrl,\n renameProps,\n children,\n}) => {\n const homeButtonProps = mergeDeepRight(\n DEFAULT_HOME_BUTTON_PROPS,\n customHomeButtonProps\n );\n\n return (\n <div\n className=\"flex items-center gap-1 md:gap-2\"\n data-cy=\"navigation-header-left-block\"\n data-testid=\"navigation-header-left-block\"\n >\n <Tooltip\n content={homeButtonProps.tooltip.content}\n position={homeButtonProps.tooltip.position}\n touch={[\"hold\", 500]}\n >\n <Link data-cy=\"home-button\" data-testid=\"home-button\" to={homeUrl}>\n <div className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-200 p-1\">\n {homeButtonProps.icon}\n </div>\n </Link>\n </Tooltip>\n {isPresent(renameProps) && (\n <Rename\n dropdownItems={renameProps.dropdownItems}\n value={renameProps.value}\n {...renameProps}\n />\n )}\n {children}\n </div>\n );\n};\n\nLeftBlock.propTypes = {\n /**\n * Object containing the home button icon and the props to be passed to the tooltip of the home button.\n */\n homeButtonProps: PropTypes.shape({\n tooltip: PropTypes.shape({\n content: PropTypes.string,\n postition: PropTypes.string,\n }),\n icon: PropTypes.node,\n }),\n /**\n * URL to navigate when the home button is clicked.\n */\n homeUrl: PropTypes.string.isRequired,\n /**\n * Props to be passed to the `Rename` component. Please check the `Rename` component props for more details\n */\n renameProps: PropTypes.object,\n /**\n * To render extra content in the block.\n */\n children: PropTypes.node,\n};\n\nexport default LeftBlock;\n","import classNames from \"classnames\";\nimport { existsBy, isNotEmpty } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Dropdown, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\nimport { NavLink, useLocation } from \"react-router-dom\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst NavigationLinks = ({ headerLinks, maxVisibleLinks = 5 }) => {\n const { pathname } = useLocation();\n const { t } = useTranslation();\n\n const visibleLinks = headerLinks.slice(0, maxVisibleLinks);\n const overflowLinks = headerLinks.slice(maxVisibleLinks);\n\n const isMoreButtonActive = existsBy({ to: pathname }, overflowLinks);\n\n return (\n <div\n className=\"font- flex w-full items-center justify-between gap-4 md:justify-center md:gap-3 lg:gap-6\"\n data-cy=\"navigation-header-navigation-links\"\n data-testid=\"navigation-header-navigation-links\"\n >\n {visibleLinks.map(headerLink => (\n <NavLink\n activeClassName=\"active\"\n className=\"neeto-molecules-navigation-header__link px-2 capitalize no-underline md:px-0\"\n data-cy={`${joinHyphenCase(headerLink.key)}-tab`}\n key={headerLink.key}\n {...headerLink}\n >\n <Typography\n component=\"span\"\n lineHeight=\"normal\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {headerLink.label}\n </Typography>\n </NavLink>\n ))}\n {isNotEmpty(overflowLinks) && (\n <Dropdown\n buttonStyle=\"text\"\n label={t(\"neetoMolecules.navigationHeader.more\")}\n position=\"bottom-end\"\n buttonProps={{\n className: classNames(\n \"neeto-molecules-navigation-header__link neeto-molecules-navigation-header__link--more neeto-ui-typography neeto-ui-text-h4 neeto-ui-font-semibold neeto-ui-leading-normal px-2 capitalize no-underline md:px-0\",\n { active: isMoreButtonActive }\n ),\n }}\n >\n <Menu>\n {overflowLinks.map(headerLink => (\n <MenuItem.Button\n data-cy={`${joinHyphenCase(headerLink.key)}-more-tab`}\n isActive={headerLink.to === pathname}\n key={headerLink.key}\n to={headerLink.to}\n {...headerLink}\n >\n {headerLink.label}\n </MenuItem.Button>\n ))}\n </Menu>\n </Dropdown>\n )}\n </div>\n );\n};\n\nNavigationLinks.propTypes = {\n /**\n * Links to be rendered in the center of the navigation header. It is an array of objects.\n * Each object should have the properties `key`, `to` and `label`. Other props will be passed on to the `Navlink` component from\n `react-router-dom`.\n */\n headerLinks: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n to: PropTypes.string,\n label: PropTypes.string,\n })\n ),\n /**\n * Maximum number of links to be visible in the navigation header. Remaining links will be shown in a more dropdown.\n */\n maxVisibleLinks: PropTypes.number,\n};\n\nexport default NavigationLinks;\n","export const isAbsoluteUrl = url => /^https?:\\/\\//.test(url);\n","import classNames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport PublishBlock from \"components/PublishBlock\";\n\nimport \"./navigation-header.scss\";\nimport { isAbsoluteUrl } from \"./utils\";\n\nconst RightBlock = ({\n isDraftBlockHidden,\n previewDraftUrl,\n isResetDraftButtonVisible,\n onResetClick,\n isResetting,\n isPublishDisabled,\n isPublishing,\n handlePublish,\n isPublishPreviewDisabled,\n previewPublishedUrl,\n isPublishButtonVisible,\n isResetAlertOpen,\n setIsResetAlertOpen,\n handleReset,\n publishAlertTitle,\n publishAlertDescription,\n publishButtonProps = {},\n}) => {\n const { t } = useTranslation();\n\n const renderDraftButtons = ({ ViewDraftButton, ResetDraftButton }) =>\n !isDraftBlockHidden && (\n <>\n <ViewDraftButton\n {...(isAbsoluteUrl(previewDraftUrl)\n ? { href: previewDraftUrl }\n : { to: previewDraftUrl })}\n />\n {isResetDraftButtonVisible && (\n <ResetDraftButton\n loading={isResetting}\n onClick={() => onResetClick()}\n />\n )}\n </>\n );\n\n const renderPublishButtons = ({ PublishButton, PublishPreviewButton }) => (\n <>\n {isPublishButtonVisible && (\n <PublishButton\n disabled={isPublishDisabled}\n loading={isPublishing}\n onClick={() => handlePublish()}\n {...publishButtonProps}\n />\n )}\n <PublishPreviewButton\n {...(isAbsoluteUrl(previewPublishedUrl)\n ? { href: previewPublishedUrl }\n : { to: previewPublishedUrl })}\n disabled={isPublishPreviewDisabled}\n className={classNames({\n \"standalone-publish-preview-button\": !isPublishButtonVisible,\n })}\n />\n </>\n );\n\n return (\n <>\n <PublishBlock {...{ renderDraftButtons, renderPublishButtons }} />\n <PublishBlock.Alert\n isOpen={isResetAlertOpen}\n isSubmitting={isResetting}\n message={\n publishAlertDescription ||\n t(\"neetoMolecules.navigationHeader.resetDescription\")\n }\n title={\n publishAlertTitle || t(\"neetoMolecules.navigationHeader.resetTitle\")\n }\n onClose={() => setIsResetAlertOpen(false)}\n onSubmit={handleReset}\n />\n </>\n );\n};\n\nRightBlock.propTypes = {\n /**\n * To show/hide the draft block.\n */\n isDraftBlockHidden: PropTypes.bool,\n /**\n * Draft preview URL, when the draft button is clicked user will be redirected to this URL.\n */\n previewDraftUrl: PropTypes.string,\n /**\n * Boolean to control the visibility of reset draft button.\n */\n isResetDraftButtonVisible: PropTypes.bool,\n /**\n * Callback function that will be called when the reset button is clicked.\n */\n onResetClick: PropTypes.func,\n /**\n * Setting this to `true` will show a spinner on the reset button. Use when the reset process is in progress.\n */\n isResetting: PropTypes.bool,\n /**\n * To disable the publish button.\n */\n isPublishDisabled: PropTypes.bool,\n /**\n * Setting this to `true` will show a spinner on the publish button. Use when the publish process is in progress.\n */\n isPublishing: PropTypes.bool,\n /**\n * Callback function that will be called when the publish button is clicked.\n */\n handlePublish: PropTypes.func,\n /**\n * To disable the publish preview button.\n */\n isPublishPreviewDisabled: PropTypes.bool,\n /**\n * Publish preview URL, when the preview publish button is clicked user will be redirected to this URL.\n */\n previewPublishedUrl: PropTypes.string,\n /**\n * Boolean to control whether the user have the ability to publish.\n */\n isPublishButtonVisible: PropTypes.bool,\n /**\n * Boolean to control whether the reset alert is open.\n */\n isResetAlertOpen: PropTypes.bool,\n /**\n * Handler to control the `isResetAlert` state variable.\n */\n setIsResetAlertOpen: PropTypes.func,\n /**\n * Callback function that will be called when the reset button is clicked.\n */\n handleReset: PropTypes.func,\n /**\n * Description to be shown in the publish alert\n */\n publishAlertDescription: PropTypes.string,\n /**\n * Title of the publish alert\n */\n publishAlertTitle: PropTypes.string,\n /**\n * Props to be passed to the publish button\n */\n publishButtonProps: PropTypes.object,\n};\n\nexport default RightBlock;\n","import { isPresent } from \"neetocist\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport PropTypes from \"prop-types\";\nimport { filter, length } from \"ramda\";\n\nimport LeftBlock from \"./LeftBlock\";\nimport NavigationLinks from \"./Navigation\";\nimport RightBlock from \"./RightBlock\";\n\nconst NavigationHeader = ({\n leftActionBlock,\n navigationLinks,\n rightActionBlock,\n}) => {\n const { isSize } = useBreakpoints();\n const isMobile = isSize(\"mobile\");\n\n const numberOfChildren = length(\n filter(isPresent, [leftActionBlock, navigationLinks, rightActionBlock])\n );\n\n const gridStyle = {\n gridTemplateColumns: isMobile\n ? `repeat(${\n navigationLinks ? numberOfChildren - 1 : numberOfChildren\n }, auto)`\n : `repeat(${numberOfChildren}, 1fr)`,\n };\n\n return (\n <div className=\"w-full\">\n <div\n className=\"neeto-molecules-navigation-header neeto-ui-border-gray-200 neeto-ui-bg-white flex h-16 w-full flex-shrink-0 items-center overflow-x-auto border-b px-2 py-2 md:px-4 lg:px-6\"\n data-cy=\"navigation-header\"\n data-testid=\"navigation-header\"\n >\n <div className=\"grid w-full gap-4\" style={gridStyle}>\n {leftActionBlock}\n {!isMobile && navigationLinks}\n {rightActionBlock}\n </div>\n </div>\n {isMobile && (\n <div className=\"neeto-molecules-navigation-header neeto-ui-border-gray-200 neeto-ui-bg-white flex flex-shrink-0 items-center overflow-x-auto border-b px-4 py-2 lg:px-6\">\n {navigationLinks}\n </div>\n )}\n </div>\n );\n};\n\nNavigationHeader.LeftActionBlock = LeftBlock;\nNavigationHeader.NavigationLinks = NavigationLinks;\nNavigationHeader.RightActionBlock = RightBlock;\n\nNavigationHeader.propTypes = {\n /**\n * To specify the content to be rendered in the left side of the `NavigationHeader`.\n */\n leftActionBlock: PropTypes.node,\n /**\n * To specify the content to be rendered at the center of the `NavigationHeader`.\n */\n navigationLinks: PropTypes.node,\n /**\n * To specify the content to be rendered in the right side of the `NavigationHeader`.\n */\n rightActionBlock: PropTypes.node,\n};\n\nexport default NavigationHeader;\n"],"names":["DEFAULT_HOME_BUTTON_PROPS","tooltip","content","t","position","homeUrl","icon","_jsx","Home","LeftBlock","_ref","customHomeButtonProps","homeButtonProps","renameProps","children","mergeDeepRight","_jsxs","className","Tooltip","touch","Link","to","isPresent","Rename","_objectSpread","dropdownItems","value","Menu","Dropdown","MenuItem","NavigationLinks","headerLinks","_ref$maxVisibleLinks","maxVisibleLinks","_useLocation","useLocation","pathname","_useTranslation","useTranslation","visibleLinks","slice","overflowLinks","isMoreButtonActive","existsBy","map","headerLink","NavLink","activeClassName","concat","joinHyphenCase","key","Typography","component","lineHeight","style","weight","label","isNotEmpty","buttonStyle","buttonProps","classNames","active","Button","isActive","isAbsoluteUrl","url","test","RightBlock","isDraftBlockHidden","previewDraftUrl","isResetDraftButtonVisible","onResetClick","isResetting","isPublishDisabled","isPublishing","handlePublish","isPublishPreviewDisabled","previewPublishedUrl","isPublishButtonVisible","isResetAlertOpen","setIsResetAlertOpen","handleReset","publishAlertTitle","publishAlertDescription","_ref$publishButtonPro","publishButtonProps","renderDraftButtons","_ref2","ViewDraftButton","ResetDraftButton","_Fragment","href","loading","onClick","renderPublishButtons","_ref3","PublishButton","PublishPreviewButton","disabled","PublishBlock","Alert","isOpen","isSubmitting","message","title","onClose","onSubmit","NavigationHeader","leftActionBlock","navigationLinks","rightActionBlock","_useBreakpoints","useBreakpoints","isSize","isMobile","numberOfChildren","length","filter","gridStyle","gridTemplateColumns","LeftActionBlock","RightActionBlock"],"mappings":"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"}
package/dist/Schedule.js CHANGED
@@ -728,13 +728,12 @@ var Fields = function Fields(_ref) {
728
728
  scheduleRef = _ref.scheduleRef;
729
729
  var _useContext = useContext(ScheduleContext),
730
730
  firstDay = _useContext.firstDay;
731
- var _useFormikContext = useFormikContext(),
732
- values = _useFormikContext.values,
733
- resetForm = _useFormikContext.resetForm,
734
- errors = _useFormikContext.errors,
735
- dirty = _useFormikContext.dirty;
731
+ var formikBag = useFormikContext();
732
+ var values = formikBag.values,
733
+ resetForm = formikBag.resetForm,
734
+ errors = formikBag.errors;
736
735
  useEffect(function () {
737
- handleValuesChanged(processFormValues(values, firstDay), dirty);
736
+ handleValuesChanged(processFormValues(values, firstDay), formikBag);
738
737
  }, [values]);
739
738
  useImperativeHandle(scheduleRef, function () {
740
739
  return {