@pega/cosmos-react-social 9.16.2 → 9.17.1
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeedContentHeader.js","sourceRoot":"","sources":["../../../src/components/Feed/FeedContentHeader.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useContext, useEffect, useMemo, useRef } from 'react';\nimport type { FC, MouseEvent } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport {\n Avatar,\n Button,\n calculateFontSize,\n DateTimeDisplay,\n defaultThemeProp,\n Icon,\n isValidDate,\n MenuButton,\n MetaList,\n NoValue,\n registerIcon,\n Status,\n StyledSecondary,\n SummaryItem,\n Text,\n Tooltip,\n useConfiguration,\n useElement,\n useI18n,\n useModalManager\n} from '@pega/cosmos-react-core';\nimport type { FontSize, MetaListProps, ModalMethods } from '@pega/cosmos-react-core';\nimport { parseToDate } from '@pega/cosmos-react-core/lib/components/DateTime/Input/utils';\nimport { formatDateTime } from '@pega/cosmos-react-core/lib/components/DateTime/utils';\nimport { formatListToLocaleString } from '@pega/cosmos-react-core/lib/utils';\nimport * as usersSolidIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/users-solid.icon';\n\nimport AutopilotAvatar from '../Autopilot/AutopilotAvatar';\n\nimport { FeedContext } from './Feed.context';\nimport FeedModalList from './FeedModalList';\nimport FeedButton from './FeedButton';\nimport type { FeedContentHeaderProps, FeedModalListProps } from './Feed.types';\n\nregisterIcon(usersSolidIcon);\n\nconst StyledFeedContentHeader = styled.div(({ theme }) => {\n return css`\n margin-block-end: ${theme.base.spacing};\n column-gap: ${theme.base.spacing};\n\n ${StyledSecondary} {\n ${FeedButton} {\n /* Negative margin needed to align the icon with the author name on the line above. */\n margin-inline-start: calc(-0.75 * ${theme.base.spacing});\n }\n }\n `;\n});\n\nStyledFeedContentHeader.defaultProps = defaultThemeProp;\n\nconst StyledName = styled(Text)`\n display: inline-block;\n`;\n\nconst StyledIcon = styled(Icon)(({ theme }) => {\n const fontSizes = calculateFontSize(theme.base['font-size'], theme.base['font-scale']);\n\n return css`\n height: ${fontSizes[theme.components.text.secondary['font-size'] as FontSize]};\n fill: ${theme.base.palette['foreground-color']};\n padding-inline-end: calc(0.5 * ${theme.base.spacing});\n `;\n});\n\nStyledIcon.defaultProps = defaultThemeProp;\n\nconst FeedContentHeader: FC<FeedContentHeaderProps> = (props: FeedContentHeaderProps) => {\n const {\n variant,\n id,\n fullname,\n username,\n postTimestamp,\n avatarSrc,\n icon,\n userStatus,\n visibility,\n postType,\n customPostType,\n postContext,\n recipients = [],\n recipientsCount = 0,\n menuItems,\n edited,\n editTimestamp,\n recipientsLoading,\n onEdit,\n onLoadMoreRecipients,\n onRecipientInteraction,\n onUserClick\n } = props;\n\n const {\n autopilotInfo: { id: autopilotId, label: autopilotLabel },\n userInfo: loggedInUser\n } = useContext(FeedContext);\n const t = useI18n();\n const { locale } = useConfiguration();\n const { create } = useModalManager();\n\n const recipientsModalRef = useRef<ModalMethods<FeedModalListProps>>();\n const [postTimestampEl, setPostTimestampEl] = useElement<HTMLSpanElement>();\n const [editTimestampEl, setEditTimestampEl] = useElement<HTMLSpanElement>();\n\n const autopilotAuthor = username === autopilotId;\n\n const metaData: MetaListProps['items'] = [];\n\n if (postType && customPostType) {\n metaData.push(<Status variant='warn'>{postType.label}</Status>);\n }\n\n metaData.push(\n <>\n <DateTimeDisplay ref={setPostTimestampEl} value={postTimestamp} variant='relative' />\n {postTimestamp && (\n <Tooltip target={postTimestampEl}>\n {formatDateTime(parseToDate(postTimestamp), {\n t,\n locale,\n format: 'medium',\n variant: 'datetime',\n timeZone: loggedInUser.timeZone\n })}\n </Tooltip>\n )}\n </>\n );\n\n if (edited) {\n metaData.push(\n <>\n <Text ref={setEditTimestampEl} variant='secondary'>\n {t('edited', [\n (editTimestamp || editTimestamp === 0) && isValidDate(parseToDate(editTimestamp)) ? (\n formatDateTime(parseToDate(editTimestamp), {\n t,\n locale,\n format: 'medium',\n variant: 'relative'\n })\n ) : (\n <NoValue />\n )\n ])}\n </Text>\n {editTimestamp && (\n <Tooltip target={editTimestampEl}>\n {formatDateTime(parseToDate(editTimestamp), {\n t,\n locale,\n format: 'medium',\n variant: 'datetime',\n timeZone: loggedInUser.timeZone\n })}\n </Tooltip>\n )}\n </>\n );\n }\n\n if (postType && !customPostType) {\n if (postType.icon) {\n metaData.push(\n <>\n <StyledIcon name={postType.icon} />\n <Text variant='secondary'>{postType.label}</Text>\n </>\n );\n } else {\n metaData.push(postType.label);\n }\n }\n\n if (visibility === 'private') {\n const recipientsList = recipients.map(x => x.primary);\n\n if (recipientsList.length === 0) {\n metaData.push(`${t('feed_visible_to')} ${t('you').toLowerCase()}`);\n } else if (recipientsList.length === 1) {\n metaData.push(`${t('feed_visible_to')} ${recipients[0].primary}`);\n } else {\n metaData.push(\n <>\n <Text variant='secondary'>{t('feed_visible_to')} </Text>\n <Button\n variant='link'\n onClick={() => {\n recipientsModalRef.current = create(FeedModalList, {\n heading: t('feed_visible_to'),\n listItems: recipients,\n onLoadMore: onLoadMoreRecipients,\n loading: recipientsLoading\n });\n }}\n onFocus={onRecipientInteraction}\n onMouseOver={onRecipientInteraction}\n aria-label={`${t('feed_private')} ${t('feed_visible_to')} ${formatListToLocaleString(\n recipientsList,\n t,\n locale,\n {\n count: recipientsCount\n }\n )}`}\n label={formatListToLocaleString(recipientsList, t, locale, {\n count: recipientsCount,\n separator: '\\n'\n })}\n >\n {recipientsCount} {t('feed_users').toLowerCase()}\n </Button>\n </>\n );\n }\n }\n\n const userVisual = autopilotAuthor ? (\n <AutopilotAvatar />\n ) : (\n <Avatar\n name={fullname}\n size={variant === 'post' ? 'l' : 'm'}\n imageSrc={avatarSrc}\n icon={icon}\n status={userStatus}\n />\n );\n\n const actionMenuItems = useMemo(() => {\n let actions: FeedContentHeaderProps['menuItems'] = [];\n\n if (username === loggedInUser.username && onEdit) {\n actions.push({\n primary: t('edit'),\n id: 'edit',\n onClick: () => onEdit({ id, postType, visibility, recipients })\n });\n }\n\n if (menuItems) {\n actions = actions.concat(menuItems);\n }\n\n return actions;\n }, [menuItems, username, loggedInUser.username, onEdit, id, postType, visibility, recipients]);\n\n useEffect(() => {\n if (recipients.length) {\n recipientsModalRef.current?.update({\n heading: t('feed_visible_to'),\n listItems: recipients,\n onLoadMore: onLoadMoreRecipients,\n loading: recipientsLoading\n });\n }\n }, [recipients, onLoadMoreRecipients, recipientsLoading]);\n\n return (\n <SummaryItem\n as={StyledFeedContentHeader}\n visual={userVisual}\n primary={\n <div>\n {onUserClick ? (\n <Button\n variant='text'\n onClick={(event: MouseEvent) => {\n onUserClick?.({ id, username }, event);\n }}\n >\n <Text variant={variant === 'post' ? 'h3' : 'h4'}>\n {autopilotAuthor ? autopilotLabel : fullname}\n </Text>\n </Button>\n ) : (\n <StyledName variant={variant === 'post' ? 'h3' : 'h4'}>\n {autopilotAuthor ? autopilotLabel : fullname}\n </StyledName>\n )}\n {postContext && <Text variant='primary'> {t('feed_context', [postContext])}</Text>}\n </div>\n }\n secondary={<MetaList items={metaData} />}\n actions={\n actionMenuItems.length ? (\n <MenuButton\n text={t('actions')}\n aria-label={t('actions_for', [fullname])}\n menu={{\n items: actionMenuItems\n }}\n icon='more'\n iconOnly\n variant='simple'\n />\n ) : undefined\n }\n />\n );\n};\n\nexport default FeedContentHeader;\n"]}
|
|
1
|
+
{"version":3,"file":"FeedContentHeader.js","sourceRoot":"","sources":["../../../src/components/Feed/FeedContentHeader.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useContext, useEffect, useMemo, useRef } from 'react';\nimport type { FC, MouseEvent } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport {\n Avatar,\n Button,\n calculateFontSize,\n DateTimeDisplay,\n defaultThemeProp,\n Icon,\n isValidDate,\n MenuButton,\n MetaList,\n NoValue,\n registerIcon,\n Status,\n StyledSecondary,\n SummaryItem,\n Text,\n Tooltip,\n useConfiguration,\n useElement,\n useI18n,\n useModalManager\n} from '@pega/cosmos-react-core';\nimport type { FontSize, MetaListProps, ModalMethods } from '@pega/cosmos-react-core';\nimport { parseToDate } from '@pega/cosmos-react-core/lib/components/DateTime/Input/utils';\nimport { formatDateTime } from '@pega/cosmos-react-core/lib/components/DateTime/utils';\nimport { formatListToLocaleString } from '@pega/cosmos-react-core/lib/utils';\nimport * as usersSolidIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/users-solid.icon';\n\nimport AutopilotAvatar from '../Autopilot/AutopilotAvatar';\n\nimport { FeedContext } from './Feed.context';\nimport FeedModalList from './FeedModalList';\nimport FeedButton from './FeedButton';\nimport type { FeedContentHeaderProps, FeedModalListProps } from './Feed.types';\n\nregisterIcon(usersSolidIcon);\n\nconst StyledFeedContentHeader = styled.div(({ theme }) => {\n return css`\n margin-block-end: ${theme.base.spacing};\n column-gap: ${theme.base.spacing};\n\n ${StyledSecondary} {\n ${FeedButton} {\n /* Negative margin needed to align the icon with the author name on the line above. */\n margin-inline-start: calc(-0.75 * ${theme.base.spacing});\n }\n }\n `;\n});\n\nStyledFeedContentHeader.defaultProps = defaultThemeProp;\n\nconst StyledName = styled(Text)`\n display: inline-block;\n`;\n\nconst StyledIcon = styled(Icon)(({ theme }) => {\n const fontSizes = calculateFontSize(theme.base['font-size'], theme.base['font-scale']);\n\n return css`\n height: ${fontSizes[theme.components.text.secondary['font-size'] as FontSize]};\n fill: ${theme.base.palette['foreground-color']};\n padding-inline-end: calc(0.5 * ${theme.base.spacing});\n `;\n});\n\nStyledIcon.defaultProps = defaultThemeProp;\n\nconst FeedContentHeader: FC<FeedContentHeaderProps> = (props: FeedContentHeaderProps) => {\n const {\n variant,\n id,\n fullname,\n username,\n postTimestamp,\n avatarSrc,\n icon,\n userStatus,\n visibility,\n postType,\n customPostType,\n postContext,\n recipients = [],\n recipientsCount = 0,\n menuItems,\n edited,\n editTimestamp,\n recipientsLoading,\n onEdit,\n onLoadMoreRecipients,\n onRecipientInteraction,\n onUserClick\n } = props;\n\n const {\n autopilotInfo: { id: autopilotId, label: autopilotLabel },\n userInfo: loggedInUser\n } = useContext(FeedContext);\n const t = useI18n();\n const { locale } = useConfiguration();\n const { create } = useModalManager();\n\n const recipientsModalRef = useRef<ModalMethods<FeedModalListProps>>();\n const [postTimestampEl, setPostTimestampEl] = useElement<HTMLTimeElement>();\n const [editTimestampEl, setEditTimestampEl] = useElement<HTMLSpanElement>();\n\n const autopilotAuthor = username === autopilotId;\n\n const metaData: MetaListProps['items'] = [];\n\n if (postType && customPostType) {\n metaData.push(<Status variant='warn'>{postType.label}</Status>);\n }\n\n metaData.push(\n <>\n <DateTimeDisplay ref={setPostTimestampEl} value={postTimestamp} variant='relative' />\n {postTimestamp && (\n <Tooltip target={postTimestampEl}>\n {formatDateTime(parseToDate(postTimestamp), {\n t,\n locale,\n format: 'medium',\n variant: 'datetime',\n timeZone: loggedInUser.timeZone\n })}\n </Tooltip>\n )}\n </>\n );\n\n if (edited) {\n metaData.push(\n <>\n <Text ref={setEditTimestampEl} variant='secondary'>\n {t('edited', [\n (editTimestamp || editTimestamp === 0) && isValidDate(parseToDate(editTimestamp)) ? (\n formatDateTime(parseToDate(editTimestamp), {\n t,\n locale,\n format: 'medium',\n variant: 'relative'\n })\n ) : (\n <NoValue />\n )\n ])}\n </Text>\n {editTimestamp && (\n <Tooltip target={editTimestampEl}>\n {formatDateTime(parseToDate(editTimestamp), {\n t,\n locale,\n format: 'medium',\n variant: 'datetime',\n timeZone: loggedInUser.timeZone\n })}\n </Tooltip>\n )}\n </>\n );\n }\n\n if (postType && !customPostType) {\n if (postType.icon) {\n metaData.push(\n <>\n <StyledIcon name={postType.icon} />\n <Text variant='secondary'>{postType.label}</Text>\n </>\n );\n } else {\n metaData.push(postType.label);\n }\n }\n\n if (visibility === 'private') {\n const recipientsList = recipients.map(x => x.primary);\n\n if (recipientsList.length === 0) {\n metaData.push(`${t('feed_visible_to')} ${t('you').toLowerCase()}`);\n } else if (recipientsList.length === 1) {\n metaData.push(`${t('feed_visible_to')} ${recipients[0].primary}`);\n } else {\n metaData.push(\n <>\n <Text variant='secondary'>{t('feed_visible_to')} </Text>\n <Button\n variant='link'\n onClick={() => {\n recipientsModalRef.current = create(FeedModalList, {\n heading: t('feed_visible_to'),\n listItems: recipients,\n onLoadMore: onLoadMoreRecipients,\n loading: recipientsLoading\n });\n }}\n onFocus={onRecipientInteraction}\n onMouseOver={onRecipientInteraction}\n aria-label={`${t('feed_private')} ${t('feed_visible_to')} ${formatListToLocaleString(\n recipientsList,\n t,\n locale,\n {\n count: recipientsCount\n }\n )}`}\n label={formatListToLocaleString(recipientsList, t, locale, {\n count: recipientsCount,\n separator: '\\n'\n })}\n >\n {recipientsCount} {t('feed_users').toLowerCase()}\n </Button>\n </>\n );\n }\n }\n\n const userVisual = autopilotAuthor ? (\n <AutopilotAvatar />\n ) : (\n <Avatar\n name={fullname}\n size={variant === 'post' ? 'l' : 'm'}\n imageSrc={avatarSrc}\n icon={icon}\n status={userStatus}\n />\n );\n\n const actionMenuItems = useMemo(() => {\n let actions: FeedContentHeaderProps['menuItems'] = [];\n\n if (username === loggedInUser.username && onEdit) {\n actions.push({\n primary: t('edit'),\n id: 'edit',\n onClick: () => onEdit({ id, postType, visibility, recipients })\n });\n }\n\n if (menuItems) {\n actions = actions.concat(menuItems);\n }\n\n return actions;\n }, [menuItems, username, loggedInUser.username, onEdit, id, postType, visibility, recipients]);\n\n useEffect(() => {\n if (recipients.length) {\n recipientsModalRef.current?.update({\n heading: t('feed_visible_to'),\n listItems: recipients,\n onLoadMore: onLoadMoreRecipients,\n loading: recipientsLoading\n });\n }\n }, [recipients, onLoadMoreRecipients, recipientsLoading]);\n\n return (\n <SummaryItem\n as={StyledFeedContentHeader}\n visual={userVisual}\n primary={\n <div>\n {onUserClick ? (\n <Button\n variant='text'\n onClick={(event: MouseEvent) => {\n onUserClick?.({ id, username }, event);\n }}\n >\n <Text variant={variant === 'post' ? 'h3' : 'h4'}>\n {autopilotAuthor ? autopilotLabel : fullname}\n </Text>\n </Button>\n ) : (\n <StyledName variant={variant === 'post' ? 'h3' : 'h4'}>\n {autopilotAuthor ? autopilotLabel : fullname}\n </StyledName>\n )}\n {postContext && <Text variant='primary'> {t('feed_context', [postContext])}</Text>}\n </div>\n }\n secondary={<MetaList items={metaData} />}\n actions={\n actionMenuItems.length ? (\n <MenuButton\n text={t('actions')}\n aria-label={t('actions_for', [fullname])}\n menu={{\n items: actionMenuItems\n }}\n icon='more'\n iconOnly\n variant='simple'\n />\n ) : undefined\n }\n />\n );\n};\n\nexport default FeedContentHeader;\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pega/cosmos-react-social",
|
|
3
|
-
"version": "9.
|
|
3
|
+
"version": "9.17.1",
|
|
4
4
|
"license": "SEE LICENSE IN LICENSE",
|
|
5
5
|
"author": "Pegasystems",
|
|
6
6
|
"sideEffects": [
|
|
@@ -17,9 +17,9 @@
|
|
|
17
17
|
"build": "tsc -b tsconfig.build.json"
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@pega/cosmos-react-core": "9.
|
|
21
|
-
"@pega/cosmos-react-rte": "9.
|
|
22
|
-
"@pega/cosmos-react-work": "9.
|
|
20
|
+
"@pega/cosmos-react-core": "9.17.1",
|
|
21
|
+
"@pega/cosmos-react-rte": "9.17.1",
|
|
22
|
+
"@pega/cosmos-react-work": "9.17.1",
|
|
23
23
|
"@types/parse5": "^6.0.0",
|
|
24
24
|
"@types/react": "^17.0.62 || ^18.3.3",
|
|
25
25
|
"@types/react-dom": "^17.0.20 || ^18.3.0",
|