From e0f79657d2860842e3335eb8b63c6165863fa15d Mon Sep 17 00:00:00 2001 From: Guilherme Gazzo Date: Tue, 28 Dec 2021 22:20:24 -0300 Subject: [PATCH] Chore: Bump fuselage 0.31.0 (#24046) Co-authored-by: Tasso Evangelista --- client/components/GenericModal.tsx | 4 +- client/components/GenericTable/NoResults.tsx | 4 +- client/components/Header/HeaderTagIcon.tsx | 6 +- client/components/Message/Actions/Action.tsx | 7 +- .../OmnichannelCoreSourceRoomIcon.tsx | 2 +- client/lib/banners.ts | 4 +- client/views/InfoPanel/Action.tsx | 8 +- client/views/InfoPanel/Title.tsx | 6 +- client/views/banners/UiKitBanner.tsx | 4 +- .../chats/contextualBar/SourceField.tsx | 7 +- .../CannedResponse/TextEditor/IconButton.tsx | 4 +- package-lock.json | 253 +++++++----------- package.json | 26 +- 13 files changed, 146 insertions(+), 189 deletions(-) diff --git a/client/components/GenericModal.tsx b/client/components/GenericModal.tsx index a37cf0dd683..1ae3eabd6d4 100644 --- a/client/components/GenericModal.tsx +++ b/client/components/GenericModal.tsx @@ -12,14 +12,14 @@ type GenericModalProps = RequiredModalProps & { cancelText?: string; confirmText?: string; title?: string | ReactElement; - icon?: string | ReactElement | null; + icon?: ComponentProps['name'] | ReactElement | null; confirmDisabled?: boolean; onCancel?: () => void; onClose: () => void; onConfirm: () => void; }; -const iconMap = { +const iconMap: Record['name']> = { danger: 'modal-warning', warning: 'modal-warning', info: 'info', diff --git a/client/components/GenericTable/NoResults.tsx b/client/components/GenericTable/NoResults.tsx index fc58ffe1a29..ad596db61c6 100644 --- a/client/components/GenericTable/NoResults.tsx +++ b/client/components/GenericTable/NoResults.tsx @@ -1,8 +1,8 @@ import { Box, Tile, Button, Icon } from '@rocket.chat/fuselage'; -import React, { FC } from 'react'; +import React, { ComponentProps, FC } from 'react'; type NoResultsProps = { - icon: string; + icon: ComponentProps['name']; title: string; description: string; buttonTitle?: string; diff --git a/client/components/Header/HeaderTagIcon.tsx b/client/components/Header/HeaderTagIcon.tsx index 8e006985b63..00609b23dfe 100644 --- a/client/components/Header/HeaderTagIcon.tsx +++ b/client/components/Header/HeaderTagIcon.tsx @@ -1,8 +1,10 @@ import { Box, Icon } from '@rocket.chat/fuselage'; import colors from '@rocket.chat/fuselage-tokens/colors'; -import React, { FC, isValidElement, ReactElement } from 'react'; +import React, { ComponentProps, FC, isValidElement, ReactElement } from 'react'; -type HeaderIconProps = { icon: ReactElement | { name: string; color?: string } | null }; +type HeaderIconProps = { + icon: ReactElement | Pick, 'name' | 'color'> | null; +}; const HeaderTagIcon: FC = ({ icon }) => icon ? ( diff --git a/client/components/Message/Actions/Action.tsx b/client/components/Message/Actions/Action.tsx index f983d5df3d4..57bf9489a31 100644 --- a/client/components/Message/Actions/Action.tsx +++ b/client/components/Message/Actions/Action.tsx @@ -15,14 +15,15 @@ type ActionOptions = { danger?: boolean; }; -const resolveLegacyIcon = (legacyIcon: IconProps['name']): IconProps['name'] => { +const resolveLegacyIcon = ( + legacyIcon: IconProps['name'] | `icon-${IconProps['name'] | 'videocam'}`, +): IconProps['name'] => { if (legacyIcon === 'icon-videocam') { return 'video'; } - return legacyIcon?.replace(/^icon-/, ''); + return legacyIcon?.replace(/^icon-/, '') as IconProps['name']; }; - const Action: FC = ({ id, icon, i18nLabel, label, mid, runAction, danger }) => { const t = useTranslation(); diff --git a/client/components/RoomIcon/OmnichannelRoomIcon/OmnichannelCoreSourceRoomIcon.tsx b/client/components/RoomIcon/OmnichannelRoomIcon/OmnichannelCoreSourceRoomIcon.tsx index 468f6d85ad6..12f99b5a894 100644 --- a/client/components/RoomIcon/OmnichannelRoomIcon/OmnichannelCoreSourceRoomIcon.tsx +++ b/client/components/RoomIcon/OmnichannelRoomIcon/OmnichannelCoreSourceRoomIcon.tsx @@ -17,7 +17,7 @@ const iconMap = { app: 'headset', api: 'headset', other: 'headset', -}; +} as const; export const OmnichannelCoreSourceRoomIcon = ({ room, diff --git a/client/lib/banners.ts b/client/lib/banners.ts index 06e29891702..dff0a7f8612 100644 --- a/client/lib/banners.ts +++ b/client/lib/banners.ts @@ -1,4 +1,6 @@ import { Emitter } from '@rocket.chat/emitter'; +import { Icon } from '@rocket.chat/fuselage'; +import { ComponentProps } from 'react'; import { Subscription } from 'use-subscription'; import { UiKitBannerPayload } from '../../definition/UIKit'; @@ -9,7 +11,7 @@ export type LegacyBannerPayload = { title?: string; text?: string; html?: string; - icon?: string; + icon?: ComponentProps['name']; modifiers?: ('large' | 'danger')[]; timer?: number; action?: () => void; diff --git a/client/views/InfoPanel/Action.tsx b/client/views/InfoPanel/Action.tsx index 8dec038f828..ec556157b37 100644 --- a/client/views/InfoPanel/Action.tsx +++ b/client/views/InfoPanel/Action.tsx @@ -1,11 +1,9 @@ import { Icon, Button } from '@rocket.chat/fuselage'; import React, { ComponentProps, FC } from 'react'; -const Action: FC & { icon: string; label: string }> = ({ - label, - icon, - ...props -}) => ( +const Action: FC< + ComponentProps & { icon: ComponentProps['name']; label: string } +> = ({ label, icon, ...props }) => (