@ntbjs/react-components 2.0.14 → 2.0.15-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/data/LiveBadge/LiveBadge.js +67 -0
- package/build/data/LiveBadge/LiveBadge.js.map +1 -0
- package/build/data/Tab/Tab.js +2 -1
- package/build/data/Tab/Tab.js.map +1 -1
- package/build/data/Tabs/Tabs.js +11 -3
- package/build/data/Tabs/Tabs.js.map +1 -1
- package/build/data/index.js +1 -0
- package/build/data/index.js.map +1 -1
- package/build/inputs/CompactAutocompleteSelect/CompactAutocompleteSelect.js +1 -0
- package/build/inputs/CompactAutocompleteSelect/CompactAutocompleteSelect.js.map +1 -1
- package/build/inputs/CompactStarRating/CompactStarRating.js +1 -0
- package/build/inputs/CompactStarRating/CompactStarRating.js.map +1 -1
- package/build/inputs/CompactTextInput/CompactTextInput.js +1 -0
- package/build/inputs/CompactTextInput/CompactTextInput.js.map +1 -1
- package/build/inputs/MultiLevelCheckboxSelect/MultiLevelCheckboxSelect.js +1 -0
- package/build/inputs/MultiLevelCheckboxSelect/MultiLevelCheckboxSelect.js.map +1 -1
- package/build/inputs/TextArea/TextArea.js +1 -0
- package/build/inputs/TextArea/TextArea.js.map +1 -1
- package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryCompactCard/AssetGalleryCompactCard.js +6 -3
- package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryCompactCard/AssetGalleryCompactCard.js.map +1 -1
- package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryCompactCard/AssetGalleryCompactCard.styled.js +8 -1
- package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryCompactCard/AssetGalleryCompactCard.styled.js.map +1 -1
- package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.js +5 -2
- package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.js.map +1 -1
- package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.styled.js +1 -0
- package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.styled.js.map +1 -1
- package/build/widgets/AssetGallery/asset.propType.js +2 -0
- package/build/widgets/AssetGallery/asset.propType.js.map +1 -1
- package/package.json +1 -1
package/build/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssetGalleryGridCard.js","sources":["../../../../../src/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.js"],"sourcesContent":["import { get, isEmpty, isFunction, mapKeys, omit } from 'lodash';\nimport PropTypes from 'prop-types';\nimport React, { useCallback, useEffect, useRef } from 'react';\nimport {\n LazyLoadComponent,\n LazyLoadImage,\n trackWindowScroll\n} from 'react-lazy-load-image-component';\nimport { HeadsetIcon, LayersIcon, PlayIcon } from '../../../../../icons';\nimport { convertMsToHMS } from '../../../../../utils/dateTime';\nimport { Badge, Popover, Tooltip } from '../../../../data';\nimport { ActionButton, Checkbox } from '../../../../inputs';\nimport ContextMenu from '../../../ContextMenu/ContextMenu';\nimport ContextMenuItem from '../../../ContextMenu/ContextMenuItem/ContextMenuItem';\nimport { assetShapeWithLayout } from '../../asset.propType';\nimport * as S from './AssetGalleryGridCard.styled';\nimport InstructionSeverityDisplay from '../../../InstructionSeverityDisplay';\n\n/**\n >>> Section 1: renderThumbnail():\n┌─────────────────────────────────────────┐ ← S.AssetGalleryGridCard (Root)\n│[renderversionsBadge] [severityIcon]│ ← S.HorizontalBar (Top)\n├─────────────────────────────────────────┤\n│ │ │ │\n│ (spacer) │ [renderPreview]│ [action]│ ← S.ThumbnailRow (Inc. ComputedActionButton)\n│ │ │ [action]│ ← S.ActionsContainer\n│ │ │ │\n├─────────────────────────────────────────┤\n│ [renderMediaBadge] │ ← S.HorizontalBar (Bottom)\n├─────────────────────────────────────────┤\n│ | >>> Section 2: renderDetails():\n│ [asset.title] │ ← S.CardTitle\n│ [asset.description] │ ← S.CardDescription\n├─────────────────────────────────────────┤\n│ [InstructionSeverityDisplay] │ ← S.InstructionsWrapper\n| |\n| | >>> Section 3:renderConsentSummaryInfo():\n├─────────────────────────────────────────┤ ← S.CardDivider\n│ [footerLeft] [footerRight] │ ← S.CardFooter\n├─────────────────────────────────────────┤ ← S.CardDivider\n| |\n│ | >>> Section 4:renderCheckboxRow():\n│ [CheckRectangleIcon / Outline] │ ← S.CheckboxRow\n└─────────────────────────────────────────┘\n Approx Height: 536px (Updated severity card takes more space than XD Design)\n Note: Every block renders ALWAYS to maintain same height+alignment in gallery\n */\n\n// eslint-disable-next-line react/prop-types\nconst ComputedRootComponent = ({ component, asset, ...props }) => {\n // Omit props we don't need\n const newProps = mapKeys(\n omit(props, [\n 'theme',\n 'extendedSelectMode',\n 'softSelected',\n '$softSelected',\n 'customSelectedBorder',\n '$customSelectedBorder',\n 'isCardHovered',\n '$isCardHovered',\n 'completed',\n '$hasError'\n ]),\n (_, key) => (key === 'innerRef' ? 'ref' : key)\n );\n\n if (component) {\n if (!isFunction(component)) throw Error('Expected a function in component-prop');\n\n if (React.isValidElement(component(asset, newProps.children))) {\n return React.cloneElement(component(asset, newProps.children), omit(newProps, ['children']));\n }\n }\n\n const { ref, ...rest } = newProps;\n return <div ref={ref} {...rest} />;\n};\n\n/* eslint-disable react/prop-types */\nconst ComputedActionButton = React.forwardRef(function ComputedActionButton(\n // eslint-disable-next-line react/prop-types\n { component, className, subActions = [], isSubActionsOpened, ...props },\n forwardedRef\n) {\n const newProps = props;\n if (!isEmpty(subActions)) {\n const contextMenuItems = subActions.map((subAction, key) => {\n const { onClick, title, icon } = subAction;\n return <ContextMenuItem key={key} onClickEffect={onClick} title={title} icon={icon} />;\n });\n const contextMenu = <ContextMenu>{contextMenuItems}</ContextMenu>;\n newProps.children = (\n <Popover\n contextMenu={true}\n content={contextMenu}\n placement={'bottom-end'}\n visible={isSubActionsOpened}\n zIndex={10001}\n offset={[0, -8]}\n >\n <ActionButton\n useShadow={false}\n active={true}\n ref={forwardedRef}\n className={className}\n icon={newProps.icon}\n backgroundColors={['black', 'white']}\n onClick={newProps.onClick}\n actionWidthHeight={[40, 40]}\n />\n </Popover>\n );\n } else {\n newProps.children = (\n <ActionButton\n useShadow={false}\n active={true}\n ref={forwardedRef}\n className={className}\n icon={newProps.icon}\n onClick={newProps.onClick}\n backgroundColors={['black', 'white']}\n actionWidthHeight={[40, 40]}\n />\n );\n }\n\n if (component) {\n if (!isFunction(component)) throw Error('Expected a function in component-prop');\n\n if (React.isValidElement(component())) {\n return React.cloneElement(component(), { ...omit(newProps, 'icon') });\n }\n }\n\n return <React.Fragment>{newProps.children}</React.Fragment>;\n});\n/* eslint-disable react/prop-types */\n\nconst AssetGalleryGridCard = props => {\n const {\n asset,\n selectable,\n selected,\n customSelectedBorder,\n extendedSelectMode,\n onAssetSelected,\n onAssetUnselected,\n softSelected,\n component,\n scrollPosition,\n hideConsentSummary\n } = props;\n\n const [isCardHovered, setIsCardHovered] = React.useState(false);\n const [openedSubActions, updateOpenedSubActions] = React.useState([]);\n useEffect(() => {\n const newOpenedSubActions = (asset?.actions ?? []).map(() => false);\n updateOpenedSubActions(newOpenedSubActions);\n }, [asset]);\n\n useEffect(() => {\n if (!isCardHovered && openedSubActions?.length) {\n updateOpenedSubActions(openedSubActions.map(() => false));\n }\n }, [isCardHovered]);\n\n const mouseHasEnteredCard = useCallback(() => {\n setIsCardHovered(true);\n }, []);\n\n const mouseHasLeftCard = useCallback(() => {\n setIsCardHovered(false);\n }, []);\n\n const onSubActionsViewToggle = useCallback(\n actionIndex => {\n const newOpenedSubActions = openedSubActions.map((isOpened, index) => {\n if (index !== actionIndex) {\n return false;\n }\n return !isOpened;\n });\n updateOpenedSubActions(newOpenedSubActions);\n },\n [openedSubActions]\n );\n\n const videoPlayerRef = useRef();\n const cardRef = useRef();\n const dragRef = useRef(null);\n\n function onMouseEnter(event) {\n if (videoPlayerRef.current) {\n const playPromise = videoPlayerRef.current.play();\n if (playPromise !== undefined) {\n playPromise\n .then(() => {\n // Playback started!\n })\n .catch(() => {\n // Play was prevented - silently swallow play errors\n });\n }\n }\n\n if (isFunction(asset.onMouseEnter)) {\n asset.onMouseEnter(event, asset);\n }\n\n mouseHasEnteredCard();\n }\n\n function onMouseLeave() {\n if (videoPlayerRef.current) {\n videoPlayerRef.current.pause();\n }\n\n mouseHasLeftCard();\n }\n\n function onClick(event) {\n if (extendedSelectMode) {\n return onSelectClick(event);\n }\n\n if (isFunction(asset.onClick)) {\n asset.onClick(event, asset);\n }\n }\n\n function onSelectClick(event) {\n event.preventDefault();\n event.stopPropagation();\n\n if (selected) {\n return onAssetUnselected(asset.key);\n }\n\n return onAssetSelected(asset.key);\n }\n\n const onActionClick = useCallback(\n (event, action, index) => {\n event.preventDefault();\n event.stopPropagation();\n\n if (isFunction(action?.onClick)) {\n action.onClick(asset);\n }\n\n if (!isEmpty(action?.subActions)) {\n onSubActionsViewToggle(index);\n }\n },\n [onSubActionsViewToggle]\n );\n\n const shouldOpenSubActions = useCallback(\n actionIndex => openedSubActions[actionIndex],\n [openedSubActions]\n );\n\n function onContextMenu(event) {\n event.preventDefault();\n asset.onContextMenu(event);\n }\n\n function renderPreview(asset) {\n let previewContent = null;\n\n if (asset.fileType?.toLowerCase() === 'video') {\n previewContent = (\n <LazyLoadComponent scrollPosition={scrollPosition}>\n <video ref={videoPlayerRef} loop muted>\n <source src={asset.previewUrl} type=\"video/mp4\" />\n </video>\n </LazyLoadComponent>\n );\n } else if (asset.fileType?.toLowerCase() === 'audio') {\n previewContent = (\n <LazyLoadComponent scrollPosition={scrollPosition}>\n <div className=\"audio\">\n <HeadsetIcon />\n </div>\n </LazyLoadComponent>\n );\n } else {\n previewContent = (\n <LazyLoadImage\n alt={asset.title}\n src={asset.previewUrl}\n height=\"100%\"\n width=\"100%\"\n delayMethod=\"debounce\"\n delayTime={0}\n threshold={1500}\n scrollPosition={scrollPosition}\n />\n );\n }\n\n return previewContent;\n }\n\n useEffect(() => {\n if (isFunction(asset.onContextMenu)) {\n if (cardRef.current) {\n cardRef.current.addEventListener('contextmenu', onContextMenu);\n }\n return () => {\n if (cardRef.current) {\n cardRef.current.removeEventListener('contextmenu', onContextMenu);\n }\n };\n }\n }, []);\n\n function onDragstart(event) {\n asset.onDragstart(event);\n }\n\n useEffect(() => {\n if (isFunction(asset.onDragstart)) {\n if (dragRef.current) {\n dragRef.current.addEventListener('dragstart', onDragstart);\n }\n return () => {\n if (dragRef.current) {\n dragRef.current.removeEventListener('dragstart', onDragstart);\n }\n };\n }\n }, []);\n\n // If this asset is soft selected we will scroll it into the viewport if it's outside\n useEffect(() => {\n if (softSelected) {\n cardRef.current.scrollIntoView({ behavior: 'smooth', block: 'nearest' });\n }\n }, [softSelected]);\n\n const renderVersionsBadge = useCallback(() => {\n if (!asset?.versions) return null;\n\n return (\n <Badge\n badgeIcon={<LayersIcon />}\n badgeContent={asset.versions}\n backgroundColors={['black', 'black']}\n colors={['#f7f8f9', '#f7f8f9']}\n fontSize={12}\n fontWeight={500}\n lineHeight={16}\n verticalPadding={4}\n horizontalPadding={8}\n />\n );\n }, [asset]);\n\n const renderMediaBadge = useCallback(() => {\n let badgeIcon = null;\n let badgeContent = null;\n\n if (asset?.fileType === 'video') {\n badgeIcon = <PlayIcon />;\n }\n\n if (asset?.duration) {\n badgeContent = convertMsToHMS(asset.duration);\n }\n\n if (!badgeIcon && !badgeContent) return null;\n return (\n <Badge\n badgeIcon={badgeIcon}\n badgeContent={badgeContent}\n backgroundColors={['black', 'black']}\n colors={['#f7f8f9', '#f7f8f9']}\n fontSize={12}\n fontWeight={500}\n lineHeight={16}\n verticalPadding={4}\n horizontalPadding={8}\n minWidth={32}\n height={24}\n />\n );\n }, [asset]);\n\n const renderThumbnail = () => {\n return (\n <S.ThumbnailSection>\n <S.ThumbnailSelectedOverlay selected={selected} />\n {asset.overlay && <S.ConsumerOverlay>{asset.overlay}</S.ConsumerOverlay>}\n {/* Thumbnail Top bar */}\n <S.HorizontalBar>\n <S.HorizontalBarLeft>{renderVersionsBadge()}</S.HorizontalBarLeft>\n <S.HorizontalBarRight>\n {asset.statusIcon && <S.StatusIconCircle>{asset.statusIcon}</S.StatusIconCircle>}\n </S.HorizontalBarRight>\n </S.HorizontalBar>\n <S.ThumbnailRow>\n <S.ThumbnailSpacer />\n {/* Thumbnail */}\n <S.ThumbnailWrapper>\n <S.ThumbnailBox>{renderPreview(asset)}</S.ThumbnailBox>\n </S.ThumbnailWrapper>\n <S.ThumbnailActions>\n <S.ActionsContainer>\n {!extendedSelectMode &&\n (asset.actions ?? []).map((action, index) => (\n <Tooltip key={`${asset.key}-${action.title}`} content={action.title}>\n <S.Action>\n <ComputedActionButton\n component={action.component}\n className={action.className}\n icon={action.icon}\n isSubActionsOpened={shouldOpenSubActions(index)}\n onClick={event => onActionClick(event, action, index)}\n subActions={action?.subActions}\n actionWidthHeight={action.actionWidthHeight}\n />\n </S.Action>\n </Tooltip>\n ))}\n </S.ActionsContainer>\n </S.ThumbnailActions>\n </S.ThumbnailRow>\n {/* Thumbnail Bottom bar */}\n <S.HorizontalBar>\n <S.HorizontalBarLeft></S.HorizontalBarLeft>\n <S.HorizontalBarRight>{renderMediaBadge()}</S.HorizontalBarRight>\n </S.HorizontalBar>\n </S.ThumbnailSection>\n );\n };\n\n const renderDetails = () => {\n return (\n <S.CardBody>\n <S.CardTitle title={asset.title || ''}>{asset.title || ''}</S.CardTitle>\n <S.CardDescription title={asset.description || ''}>\n {asset.description || ''}\n </S.CardDescription>\n <S.InstructionsWrapper $hasContent={Boolean(asset.imageRights?.toString().trim())}>\n {asset.imageRights && (\n <InstructionSeverityDisplay\n labels={asset.instructionLabels}\n instructionText={asset.imageRights}\n severity={asset.instructionSeverity}\n showCard={false}\n padding=\"16px\"\n detailsFontSize=\"12px\"\n bgLight=\"transparent\"\n bgDark=\"transparent\"\n maxLines={2}\n />\n )}\n </S.InstructionsWrapper>\n </S.CardBody>\n );\n };\n\n const renderConsentSummaryInfo = () => {\n if (hideConsentSummary) {\n return <S.CardDivider />;\n }\n return (\n <>\n <S.CardFooter>\n <S.CardFooterLeft>{asset.summary?.footerLeft || null}</S.CardFooterLeft>\n <S.CardFooterRight>{asset.summary?.footerRight || null}</S.CardFooterRight>\n </S.CardFooter>\n <S.CardDivider />\n </>\n );\n };\n\n const renderCheckboxRow = () => {\n return (\n <S.CheckboxRow>\n {selectable && (\n <div onClick={onSelectClick}>\n <Checkbox\n variant=\"black\"\n checked={selected}\n onChange={event => {\n if (event.target.checked) {\n onAssetSelected(asset.key);\n } else {\n onAssetUnselected(asset.key);\n }\n }}\n />\n </div>\n )}\n </S.CheckboxRow>\n );\n };\n\n return (\n <S.AssetGalleryWrapper disabled={asset.disabled} ref={cardRef}>\n <S.AssetGalleryGridCard\n as={ComputedRootComponent}\n component={component}\n asset={asset}\n disabled={asset.disabled}\n onClick={onClick}\n extendedSelectMode={extendedSelectMode}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n draggable={asset.draggable}\n innerRef={dragRef}\n selected={selected}\n $softSelected={softSelected}\n completed={asset?.completed}\n $hasError={asset?.hasError}\n $customSelectedBorder={customSelectedBorder}\n >\n {renderThumbnail()}\n {renderDetails()}\n {renderConsentSummaryInfo()}\n {renderCheckboxRow()}\n </S.AssetGalleryGridCard>\n </S.AssetGalleryWrapper>\n );\n};\n\nAssetGalleryGridCard.propTypes = {\n /**\n * An array of assets to display in the gallery.\n */\n asset: PropTypes.shape(assetShapeWithLayout).isRequired,\n\n /**\n * Whether or not the asset gallery should have selectable asset cards\n */\n selectable: PropTypes.bool,\n\n /**\n * Is the asset selected\n */\n selected: PropTypes.bool,\n\n /**\n * Whether or not the asset gallery should have custom borders on selected asset\n */\n customSelectedBorder: PropTypes.arrayOf(PropTypes.string),\n\n /**\n * Makes the whole asset card into a selectable area\n */\n extendedSelectMode: PropTypes.bool,\n\n /**\n * The callback function when an asset is selected - returns the selected asset key\n */\n onAssetSelected: PropTypes.func.isRequired,\n\n /**\n * The callback function when an asset is unselected - returns the unselected asset key\n */\n onAssetUnselected: PropTypes.func.isRequired,\n\n /**\n * Is the asset soft selected\n */\n softSelected: PropTypes.bool.isRequired,\n\n /**\n * A function that returns a custom component to use for the card in the gallery - The function provides\n * `asset` as its first argument\n */\n component: PropTypes.func,\n\n /**\n * Internal prop used by the gallery to determine if the card is in the viewport - This prop is\n * not intended to be used by consumers\n */\n scrollPosition: PropTypes.number,\n\n /**\n * When true, hides the consent summary footer (CardFooter + CardDivider). Default: false.\n */\n hideConsentSummary: PropTypes.bool\n};\n\nAssetGalleryGridCard.defaultProps = {};\n\nexport default trackWindowScroll(\n React.memo(AssetGalleryGridCard, (prevProps, nextProps) => {\n // The asset card will only re-render if any of the following props change.\n const reactiveProps = [\n 'selectable',\n 'selected',\n 'extendedSelectMode',\n 'softSelected',\n 'asset.previewUrl',\n 'asset.overlay',\n 'asset.statusIcon',\n 'asset.layout',\n 'asset.imageRights',\n 'asset.instructionSeverity',\n 'asset.description',\n 'asset.title'\n ];\n\n return reactiveProps.every(propKey => get(prevProps, propKey) === get(nextProps, propKey));\n })\n);\n"],"names":["ComputedRootComponent","component","asset","props","newProps","mapKeys","omit","_","key","isFunction","Error","React","isValidElement","children","cloneElement","ref","rest","createElement","_extends","ComputedActionButton","forwardRef","className","subActions","isSubActionsOpened","forwardedRef","isEmpty","contextMenuItems","map","subAction","onClick","title","icon","ContextMenuItem","onClickEffect","contextMenu","ContextMenu","Popover","content","placement","visible","zIndex","offset","ActionButton","useShadow","active","backgroundColors","actionWidthHeight","Fragment","AssetGalleryGridCard","selectable","selected","customSelectedBorder","extendedSelectMode","onAssetSelected","onAssetUnselected","softSelected","scrollPosition","hideConsentSummary","isCardHovered","setIsCardHovered","useState","openedSubActions","updateOpenedSubActions","useEffect","newOpenedSubActions","actions","length","mouseHasEnteredCard","useCallback","mouseHasLeftCard","onSubActionsViewToggle","actionIndex","isOpened","index","videoPlayerRef","useRef","cardRef","dragRef","onMouseEnter","event","current","playPromise","play","undefined","then","catch","onMouseLeave","pause","onSelectClick","preventDefault","stopPropagation","onActionClick","action","shouldOpenSubActions","onContextMenu","renderPreview","previewContent","fileType","toLowerCase","LazyLoadComponent","loop","muted","src","previewUrl","type","HeadsetIcon","LazyLoadImage","alt","height","width","delayMethod","delayTime","threshold","addEventListener","removeEventListener","onDragstart","scrollIntoView","behavior","block","renderVersionsBadge","versions","Badge","badgeIcon","LayersIcon","badgeContent","colors","fontSize","fontWeight","lineHeight","verticalPadding","horizontalPadding","renderMediaBadge","PlayIcon","duration","convertMsToHMS","minWidth","renderThumbnail","S","overlay","statusIcon","Tooltip","renderDetails","description","$hasContent","Boolean","imageRights","toString","trim","InstructionSeverityDisplay","labels","instructionLabels","instructionText","severity","instructionSeverity","showCard","padding","detailsFontSize","bgLight","bgDark","maxLines","renderConsentSummaryInfo","summary","footerLeft","footerRight","renderCheckboxRow","Checkbox","variant","checked","onChange","target","disabled","as","draggable","innerRef","$softSelected","completed","$hasError","hasError","$customSelectedBorder","propTypes","process","env","NODE_ENV","PropTypes","shape","assetShapeWithLayout","isRequired","bool","arrayOf","string","func","number","defaultProps","trackWindowScroll","memo","prevProps","nextProps","reactiveProps","every","propKey","get"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AssetGalleryGridCard.js","sources":["../../../../../src/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.js"],"sourcesContent":["import { get, isEmpty, isFunction, mapKeys, omit } from 'lodash';\nimport PropTypes from 'prop-types';\nimport React, { useCallback, useEffect, useRef } from 'react';\nimport {\n LazyLoadComponent,\n LazyLoadImage,\n trackWindowScroll\n} from 'react-lazy-load-image-component';\nimport { HeadsetIcon, LayersIcon, PlayIcon } from '../../../../../icons';\nimport { convertMsToHMS } from '../../../../../utils/dateTime';\nimport { Badge, LiveBadge, Popover, Tooltip } from '../../../../data';\nimport { ActionButton, Checkbox } from '../../../../inputs';\nimport ContextMenu from '../../../ContextMenu/ContextMenu';\nimport ContextMenuItem from '../../../ContextMenu/ContextMenuItem/ContextMenuItem';\nimport { assetShapeWithLayout } from '../../asset.propType';\nimport * as S from './AssetGalleryGridCard.styled';\nimport InstructionSeverityDisplay from '../../../InstructionSeverityDisplay';\n\n/**\n >>> Section 1: renderThumbnail():\n┌─────────────────────────────────────────┐ ← S.AssetGalleryGridCard (Root)\n│[renderversionsBadge] [severityIcon]│ ← S.HorizontalBar (Top)\n├─────────────────────────────────────────┤\n│ │ │ │\n│ (spacer) │ [renderPreview]│ [action]│ ← S.ThumbnailRow (Inc. ComputedActionButton)\n│ │ │ [action]│ ← S.ActionsContainer\n│ │ │ │\n├─────────────────────────────────────────┤\n│ [renderMediaBadge] │ ← S.HorizontalBar (Bottom)\n├─────────────────────────────────────────┤\n│ | >>> Section 2: renderDetails():\n│ [asset.title] │ ← S.CardTitle\n│ [asset.description] │ ← S.CardDescription\n├─────────────────────────────────────────┤\n│ [InstructionSeverityDisplay] │ ← S.InstructionsWrapper\n| |\n| | >>> Section 3:renderConsentSummaryInfo():\n├─────────────────────────────────────────┤ ← S.CardDivider\n│ [footerLeft] [footerRight] │ ← S.CardFooter\n├─────────────────────────────────────────┤ ← S.CardDivider\n| |\n│ | >>> Section 4:renderCheckboxRow():\n│ [CheckRectangleIcon / Outline] │ ← S.CheckboxRow\n└─────────────────────────────────────────┘\n Approx Height: 536px (Updated severity card takes more space than XD Design)\n Note: Every block renders ALWAYS to maintain same height+alignment in gallery\n */\n\n// eslint-disable-next-line react/prop-types\nconst ComputedRootComponent = ({ component, asset, ...props }) => {\n // Omit props we don't need\n const newProps = mapKeys(\n omit(props, [\n 'theme',\n 'extendedSelectMode',\n 'softSelected',\n '$softSelected',\n 'customSelectedBorder',\n '$customSelectedBorder',\n 'isCardHovered',\n '$isCardHovered',\n 'completed',\n '$hasError'\n ]),\n (_, key) => (key === 'innerRef' ? 'ref' : key)\n );\n\n if (component) {\n if (!isFunction(component)) throw Error('Expected a function in component-prop');\n\n if (React.isValidElement(component(asset, newProps.children))) {\n return React.cloneElement(component(asset, newProps.children), omit(newProps, ['children']));\n }\n }\n\n const { ref, ...rest } = newProps;\n return <div ref={ref} {...rest} />;\n};\n\n/* eslint-disable react/prop-types */\nconst ComputedActionButton = React.forwardRef(function ComputedActionButton(\n // eslint-disable-next-line react/prop-types\n { component, className, subActions = [], isSubActionsOpened, ...props },\n forwardedRef\n) {\n const newProps = props;\n if (!isEmpty(subActions)) {\n const contextMenuItems = subActions.map((subAction, key) => {\n const { onClick, title, icon } = subAction;\n return <ContextMenuItem key={key} onClickEffect={onClick} title={title} icon={icon} />;\n });\n const contextMenu = <ContextMenu>{contextMenuItems}</ContextMenu>;\n newProps.children = (\n <Popover\n contextMenu={true}\n content={contextMenu}\n placement={'bottom-end'}\n visible={isSubActionsOpened}\n zIndex={10001}\n offset={[0, -8]}\n >\n <ActionButton\n useShadow={false}\n active={true}\n ref={forwardedRef}\n className={className}\n icon={newProps.icon}\n backgroundColors={['black', 'white']}\n onClick={newProps.onClick}\n actionWidthHeight={[40, 40]}\n />\n </Popover>\n );\n } else {\n newProps.children = (\n <ActionButton\n useShadow={false}\n active={true}\n ref={forwardedRef}\n className={className}\n icon={newProps.icon}\n onClick={newProps.onClick}\n backgroundColors={['black', 'white']}\n actionWidthHeight={[40, 40]}\n />\n );\n }\n\n if (component) {\n if (!isFunction(component)) throw Error('Expected a function in component-prop');\n\n if (React.isValidElement(component())) {\n return React.cloneElement(component(), { ...omit(newProps, 'icon') });\n }\n }\n\n return <React.Fragment>{newProps.children}</React.Fragment>;\n});\n/* eslint-disable react/prop-types */\n\nconst AssetGalleryGridCard = props => {\n const {\n asset,\n selectable,\n selected,\n customSelectedBorder,\n extendedSelectMode,\n onAssetSelected,\n onAssetUnselected,\n softSelected,\n component,\n scrollPosition,\n hideConsentSummary\n } = props;\n\n const [isCardHovered, setIsCardHovered] = React.useState(false);\n const [openedSubActions, updateOpenedSubActions] = React.useState([]);\n useEffect(() => {\n const newOpenedSubActions = (asset?.actions ?? []).map(() => false);\n updateOpenedSubActions(newOpenedSubActions);\n }, [asset]);\n\n useEffect(() => {\n if (!isCardHovered && openedSubActions?.length) {\n updateOpenedSubActions(openedSubActions.map(() => false));\n }\n }, [isCardHovered]);\n\n const mouseHasEnteredCard = useCallback(() => {\n setIsCardHovered(true);\n }, []);\n\n const mouseHasLeftCard = useCallback(() => {\n setIsCardHovered(false);\n }, []);\n\n const onSubActionsViewToggle = useCallback(\n actionIndex => {\n const newOpenedSubActions = openedSubActions.map((isOpened, index) => {\n if (index !== actionIndex) {\n return false;\n }\n return !isOpened;\n });\n updateOpenedSubActions(newOpenedSubActions);\n },\n [openedSubActions]\n );\n\n const videoPlayerRef = useRef();\n const cardRef = useRef();\n const dragRef = useRef(null);\n\n function onMouseEnter(event) {\n if (videoPlayerRef.current) {\n const playPromise = videoPlayerRef.current.play();\n if (playPromise !== undefined) {\n playPromise\n .then(() => {\n // Playback started!\n })\n .catch(() => {\n // Play was prevented - silently swallow play errors\n });\n }\n }\n\n if (isFunction(asset.onMouseEnter)) {\n asset.onMouseEnter(event, asset);\n }\n\n mouseHasEnteredCard();\n }\n\n function onMouseLeave() {\n if (videoPlayerRef.current) {\n videoPlayerRef.current.pause();\n }\n\n mouseHasLeftCard();\n }\n\n function onClick(event) {\n if (extendedSelectMode) {\n return onSelectClick(event);\n }\n\n if (isFunction(asset.onClick)) {\n asset.onClick(event, asset);\n }\n }\n\n function onSelectClick(event) {\n event.preventDefault();\n event.stopPropagation();\n\n if (selected) {\n return onAssetUnselected(asset.key);\n }\n\n return onAssetSelected(asset.key);\n }\n\n const onActionClick = useCallback(\n (event, action, index) => {\n event.preventDefault();\n event.stopPropagation();\n\n if (isFunction(action?.onClick)) {\n action.onClick(asset);\n }\n\n if (!isEmpty(action?.subActions)) {\n onSubActionsViewToggle(index);\n }\n },\n [onSubActionsViewToggle]\n );\n\n const shouldOpenSubActions = useCallback(\n actionIndex => openedSubActions[actionIndex],\n [openedSubActions]\n );\n\n function onContextMenu(event) {\n event.preventDefault();\n asset.onContextMenu(event);\n }\n\n function renderPreview(asset) {\n let previewContent = null;\n\n if (asset.fileType?.toLowerCase() === 'video') {\n previewContent = (\n <LazyLoadComponent scrollPosition={scrollPosition}>\n <video ref={videoPlayerRef} loop muted>\n <source src={asset.previewUrl} type=\"video/mp4\" />\n </video>\n </LazyLoadComponent>\n );\n } else if (asset.fileType?.toLowerCase() === 'audio') {\n previewContent = (\n <LazyLoadComponent scrollPosition={scrollPosition}>\n <div className=\"audio\">\n <HeadsetIcon />\n </div>\n </LazyLoadComponent>\n );\n } else {\n previewContent = (\n <LazyLoadImage\n alt={asset.title}\n src={asset.previewUrl}\n height=\"100%\"\n width=\"100%\"\n delayMethod=\"debounce\"\n delayTime={0}\n threshold={1500}\n scrollPosition={scrollPosition}\n />\n );\n }\n\n return previewContent;\n }\n\n useEffect(() => {\n if (isFunction(asset.onContextMenu)) {\n if (cardRef.current) {\n cardRef.current.addEventListener('contextmenu', onContextMenu);\n }\n return () => {\n if (cardRef.current) {\n cardRef.current.removeEventListener('contextmenu', onContextMenu);\n }\n };\n }\n }, []);\n\n function onDragstart(event) {\n asset.onDragstart(event);\n }\n\n useEffect(() => {\n if (isFunction(asset.onDragstart)) {\n if (dragRef.current) {\n dragRef.current.addEventListener('dragstart', onDragstart);\n }\n return () => {\n if (dragRef.current) {\n dragRef.current.removeEventListener('dragstart', onDragstart);\n }\n };\n }\n }, []);\n\n // If this asset is soft selected we will scroll it into the viewport if it's outside\n useEffect(() => {\n if (softSelected) {\n cardRef.current.scrollIntoView({ behavior: 'smooth', block: 'nearest' });\n }\n }, [softSelected]);\n\n const renderVersionsBadge = useCallback(() => {\n if (!asset?.versions) return null;\n\n return (\n <Badge\n badgeIcon={<LayersIcon />}\n badgeContent={asset.versions}\n backgroundColors={['black', 'black']}\n colors={['#f7f8f9', '#f7f8f9']}\n fontSize={12}\n fontWeight={500}\n lineHeight={16}\n verticalPadding={4}\n horizontalPadding={8}\n />\n );\n }, [asset]);\n\n const renderMediaBadge = useCallback(() => {\n let badgeIcon = null;\n let badgeContent = null;\n\n if (asset?.fileType === 'video') {\n badgeIcon = <PlayIcon />;\n }\n\n if (asset?.duration) {\n badgeContent = convertMsToHMS(asset.duration);\n }\n\n if (!badgeIcon && !badgeContent) return null;\n return (\n <Badge\n badgeIcon={badgeIcon}\n badgeContent={badgeContent}\n backgroundColors={['black', 'black']}\n colors={['#f7f8f9', '#f7f8f9']}\n fontSize={12}\n fontWeight={500}\n lineHeight={16}\n verticalPadding={4}\n horizontalPadding={8}\n minWidth={32}\n height={24}\n />\n );\n }, [asset]);\n\n const renderThumbnail = () => {\n return (\n <S.ThumbnailSection>\n <S.ThumbnailSelectedOverlay selected={selected} />\n {asset.overlay && <S.ConsumerOverlay>{asset.overlay}</S.ConsumerOverlay>}\n {/* Thumbnail Top bar */}\n <S.HorizontalBar>\n <S.HorizontalBarLeft>\n {asset.isLive && <LiveBadge label={asset.liveLabel} />}\n {renderVersionsBadge()}\n </S.HorizontalBarLeft>\n <S.HorizontalBarRight>\n {asset.statusIcon && <S.StatusIconCircle>{asset.statusIcon}</S.StatusIconCircle>}\n </S.HorizontalBarRight>\n </S.HorizontalBar>\n <S.ThumbnailRow>\n <S.ThumbnailSpacer />\n {/* Thumbnail */}\n <S.ThumbnailWrapper>\n <S.ThumbnailBox>{renderPreview(asset)}</S.ThumbnailBox>\n </S.ThumbnailWrapper>\n <S.ThumbnailActions>\n <S.ActionsContainer>\n {!extendedSelectMode &&\n (asset.actions ?? []).map((action, index) => (\n <Tooltip key={`${asset.key}-${action.title}`} content={action.title}>\n <S.Action>\n <ComputedActionButton\n component={action.component}\n className={action.className}\n icon={action.icon}\n isSubActionsOpened={shouldOpenSubActions(index)}\n onClick={event => onActionClick(event, action, index)}\n subActions={action?.subActions}\n actionWidthHeight={action.actionWidthHeight}\n />\n </S.Action>\n </Tooltip>\n ))}\n </S.ActionsContainer>\n </S.ThumbnailActions>\n </S.ThumbnailRow>\n {/* Thumbnail Bottom bar */}\n <S.HorizontalBar>\n <S.HorizontalBarLeft></S.HorizontalBarLeft>\n <S.HorizontalBarRight>{!asset.isLive && renderMediaBadge()}</S.HorizontalBarRight>\n </S.HorizontalBar>\n </S.ThumbnailSection>\n );\n };\n\n const renderDetails = () => {\n return (\n <S.CardBody>\n <S.CardTitle title={asset.title || ''}>{asset.title || ''}</S.CardTitle>\n <S.CardDescription title={asset.description || ''}>\n {asset.description || ''}\n </S.CardDescription>\n <S.InstructionsWrapper $hasContent={Boolean(asset.imageRights?.toString().trim())}>\n {asset.imageRights && (\n <InstructionSeverityDisplay\n labels={asset.instructionLabels}\n instructionText={asset.imageRights}\n severity={asset.instructionSeverity}\n showCard={false}\n padding=\"16px\"\n detailsFontSize=\"12px\"\n bgLight=\"transparent\"\n bgDark=\"transparent\"\n maxLines={2}\n />\n )}\n </S.InstructionsWrapper>\n </S.CardBody>\n );\n };\n\n const renderConsentSummaryInfo = () => {\n if (hideConsentSummary) {\n return <S.CardDivider />;\n }\n return (\n <>\n <S.CardFooter>\n <S.CardFooterLeft>{asset.summary?.footerLeft || null}</S.CardFooterLeft>\n <S.CardFooterRight>{asset.summary?.footerRight || null}</S.CardFooterRight>\n </S.CardFooter>\n <S.CardDivider />\n </>\n );\n };\n\n const renderCheckboxRow = () => {\n return (\n <S.CheckboxRow>\n {selectable && (\n <div onClick={onSelectClick}>\n <Checkbox\n variant=\"black\"\n checked={selected}\n onChange={event => {\n if (event.target.checked) {\n onAssetSelected(asset.key);\n } else {\n onAssetUnselected(asset.key);\n }\n }}\n />\n </div>\n )}\n </S.CheckboxRow>\n );\n };\n\n return (\n <S.AssetGalleryWrapper disabled={asset.disabled} ref={cardRef}>\n <S.AssetGalleryGridCard\n as={ComputedRootComponent}\n component={component}\n asset={asset}\n disabled={asset.disabled}\n onClick={onClick}\n extendedSelectMode={extendedSelectMode}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n draggable={asset.draggable}\n innerRef={dragRef}\n selected={selected}\n $softSelected={softSelected}\n completed={asset?.completed}\n $hasError={asset?.hasError}\n $customSelectedBorder={customSelectedBorder}\n >\n {renderThumbnail()}\n {renderDetails()}\n {renderConsentSummaryInfo()}\n {renderCheckboxRow()}\n </S.AssetGalleryGridCard>\n </S.AssetGalleryWrapper>\n );\n};\n\nAssetGalleryGridCard.propTypes = {\n /**\n * An array of assets to display in the gallery.\n */\n asset: PropTypes.shape(assetShapeWithLayout).isRequired,\n\n /**\n * Whether or not the asset gallery should have selectable asset cards\n */\n selectable: PropTypes.bool,\n\n /**\n * Is the asset selected\n */\n selected: PropTypes.bool,\n\n /**\n * Whether or not the asset gallery should have custom borders on selected asset\n */\n customSelectedBorder: PropTypes.arrayOf(PropTypes.string),\n\n /**\n * Makes the whole asset card into a selectable area\n */\n extendedSelectMode: PropTypes.bool,\n\n /**\n * The callback function when an asset is selected - returns the selected asset key\n */\n onAssetSelected: PropTypes.func.isRequired,\n\n /**\n * The callback function when an asset is unselected - returns the unselected asset key\n */\n onAssetUnselected: PropTypes.func.isRequired,\n\n /**\n * Is the asset soft selected\n */\n softSelected: PropTypes.bool.isRequired,\n\n /**\n * A function that returns a custom component to use for the card in the gallery - The function provides\n * `asset` as its first argument\n */\n component: PropTypes.func,\n\n /**\n * Internal prop used by the gallery to determine if the card is in the viewport - This prop is\n * not intended to be used by consumers\n */\n scrollPosition: PropTypes.number,\n\n /**\n * When true, hides the consent summary footer (CardFooter + CardDivider). Default: false.\n */\n hideConsentSummary: PropTypes.bool\n};\n\nAssetGalleryGridCard.defaultProps = {};\n\nexport default trackWindowScroll(\n React.memo(AssetGalleryGridCard, (prevProps, nextProps) => {\n // The asset card will only re-render if any of the following props change.\n const reactiveProps = [\n 'selectable',\n 'selected',\n 'extendedSelectMode',\n 'softSelected',\n 'asset.previewUrl',\n 'asset.overlay',\n 'asset.statusIcon',\n 'asset.layout',\n 'asset.imageRights',\n 'asset.instructionSeverity',\n 'asset.description',\n 'asset.title'\n ];\n\n return reactiveProps.every(propKey => get(prevProps, propKey) === get(nextProps, propKey));\n })\n);\n"],"names":["ComputedRootComponent","component","asset","props","newProps","mapKeys","omit","_","key","isFunction","Error","React","isValidElement","children","cloneElement","ref","rest","createElement","_extends","ComputedActionButton","forwardRef","className","subActions","isSubActionsOpened","forwardedRef","isEmpty","contextMenuItems","map","subAction","onClick","title","icon","ContextMenuItem","onClickEffect","contextMenu","ContextMenu","Popover","content","placement","visible","zIndex","offset","ActionButton","useShadow","active","backgroundColors","actionWidthHeight","Fragment","AssetGalleryGridCard","selectable","selected","customSelectedBorder","extendedSelectMode","onAssetSelected","onAssetUnselected","softSelected","scrollPosition","hideConsentSummary","isCardHovered","setIsCardHovered","useState","openedSubActions","updateOpenedSubActions","useEffect","newOpenedSubActions","actions","length","mouseHasEnteredCard","useCallback","mouseHasLeftCard","onSubActionsViewToggle","actionIndex","isOpened","index","videoPlayerRef","useRef","cardRef","dragRef","onMouseEnter","event","current","playPromise","play","undefined","then","catch","onMouseLeave","pause","onSelectClick","preventDefault","stopPropagation","onActionClick","action","shouldOpenSubActions","onContextMenu","renderPreview","previewContent","fileType","toLowerCase","LazyLoadComponent","loop","muted","src","previewUrl","type","HeadsetIcon","LazyLoadImage","alt","height","width","delayMethod","delayTime","threshold","addEventListener","removeEventListener","onDragstart","scrollIntoView","behavior","block","renderVersionsBadge","versions","Badge","badgeIcon","LayersIcon","badgeContent","colors","fontSize","fontWeight","lineHeight","verticalPadding","horizontalPadding","renderMediaBadge","PlayIcon","duration","convertMsToHMS","minWidth","renderThumbnail","S","overlay","isLive","LiveBadge","label","liveLabel","statusIcon","Tooltip","renderDetails","description","$hasContent","Boolean","imageRights","toString","trim","InstructionSeverityDisplay","labels","instructionLabels","instructionText","severity","instructionSeverity","showCard","padding","detailsFontSize","bgLight","bgDark","maxLines","renderConsentSummaryInfo","summary","footerLeft","footerRight","renderCheckboxRow","Checkbox","variant","checked","onChange","target","disabled","as","draggable","innerRef","$softSelected","completed","$hasError","hasError","$customSelectedBorder","propTypes","process","env","NODE_ENV","PropTypes","shape","assetShapeWithLayout","isRequired","bool","arrayOf","string","func","number","defaultProps","trackWindowScroll","memo","prevProps","nextProps","reactiveProps","every","propKey","get"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssetGalleryGridCard.styled.js","sources":["../../../../../src/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.styled.js"],"sourcesContent":["import { rgba } from 'polished';\nimport styled, { css } from 'styled-components';\nimport { applyDefaultTheme } from '../../../../../utils/defaultTheme';\n\nconst darkBorderColor = '#52525B';\nconst darkBgColor = '#27272A';\nconst darkHoverBgColor = '#3F3F46';\nconst lightHoverBgColor = '#E4E4E7';\n\nexport const AssetGalleryWrapper = styled.div.attrs(applyDefaultTheme)`\n width: 100%;\n height: 100%;\n ${props =>\n props.disabled &&\n css`\n cursor: not-allowed;\n `};\n`;\n\nconst ringState = props => {\n if (props.selected) return props.$customSelectedBorder ? 'custom' : 'selected';\n if (props.$softSelected) return 'soft';\n if (props.completed) return 'completed';\n if (props.$hasError) return 'error';\n return 'idle';\n};\n\nexport const AssetGalleryGridCard = styled.div.attrs(props => ({\n ...applyDefaultTheme(props),\n 'data-ring': ringState(props),\n style: {\n ...(props.style || {}),\n ...(props.$customSelectedBorder && props.selected\n ? {\n '--ring-dark': props.$customSelectedBorder[0],\n '--ring-light': props.$customSelectedBorder[1]\n }\n : {})\n }\n}))`\n display: block;\n position: relative;\n height: 100%;\n margin: 0;\n box-sizing: border-box;\n text-decoration: none;\n cursor: pointer;\n transition: box-shadow 220ms;\n overflow: hidden;\n ${props =>\n props.theme.themeProp(\n 'color',\n props.theme.getColor('gray-300'),\n props.theme.getColor('gray-700')\n )}\n\n ${props =>\n props.disabled &&\n css`\n pointer-events: none;\n opacity: 0.4;\n `};\n\n ${props =>\n props.extendedSelectMode &&\n css`\n cursor: pointer;\n `}\n\n &:hover {\n box-shadow: 0px 3px 6px #00000029;\n }\n\n &::after {\n content: '';\n position: absolute;\n inset: 0;\n pointer-events: none;\n box-sizing: border-box;\n z-index: 10;\n border-style: solid;\n border-width: 1px;\n }\n &[data-ring='soft']::after,\n &[data-ring='selected']::after,\n &[data-ring='custom']::after,\n &[data-ring='completed']::after,\n &[data-ring='error']::after {\n border-width: 3px;\n }\n\n ${props => {\n const gray100 = props.theme.getColor('gray-100');\n const gray300 = props.theme.getColor('gray-300');\n const gray700 = props.theme.getColor('gray-700');\n const emerald = props.theme.getColor('emerald-500');\n const red500 = props.theme.getColor('red-500');\n const red600 = props.theme.getColor('red-600');\n return css`\n &[data-ring='idle']::after {\n border-color: ${gray300};\n }\n &[data-ring='soft']::after {\n border-color: ${rgba(gray700, 0.5)};\n }\n &[data-ring='selected']::after {\n border-color: ${darkBorderColor};\n }\n &[data-ring='custom']::after {\n border-color: var(--ring-light);\n }\n &[data-ring='completed']::after {\n border-color: ${rgba(emerald, 0.7)};\n }\n &[data-ring='error']::after {\n border-color: ${rgba(red500, 0.7)};\n }\n\n @media (prefers-color-scheme: dark) {\n &[data-ring='idle']::after {\n border-color: ${darkBorderColor};\n }\n &[data-ring='soft']::after {\n border-color: ${rgba(gray100, 0.5)};\n }\n &[data-ring='selected']::after {\n border-color: ${gray100};\n }\n &[data-ring='custom']::after {\n border-color: var(--ring-dark);\n }\n &[data-ring='completed']::after {\n border-color: ${emerald};\n }\n &[data-ring='error']::after {\n border-color: ${red600};\n }\n }\n body.light-theme &[data-ring='idle']::after {\n border-color: ${gray300};\n }\n body.light-theme &[data-ring='soft']::after {\n border-color: ${rgba(gray700, 0.5)};\n }\n body.light-theme &[data-ring='selected']::after {\n border-color: ${darkBorderColor};\n }\n body.light-theme &[data-ring='custom']::after {\n border-color: var(--ring-light);\n }\n body.light-theme &[data-ring='completed']::after {\n border-color: ${rgba(emerald, 0.7)};\n }\n body.light-theme &[data-ring='error']::after {\n border-color: ${rgba(red500, 0.7)};\n }\n body.dark-theme &[data-ring='idle']::after {\n border-color: ${darkBorderColor};\n }\n body.dark-theme &[data-ring='soft']::after {\n border-color: ${rgba(gray100, 0.5)};\n }\n body.dark-theme &[data-ring='selected']::after {\n border-color: ${gray100};\n }\n body.dark-theme &[data-ring='custom']::after {\n border-color: var(--ring-dark);\n }\n body.dark-theme &[data-ring='completed']::after {\n border-color: ${emerald};\n }\n body.dark-theme &[data-ring='error']::after {\n border-color: ${red600};\n }\n `;\n }};\n`;\n\nexport const ThumbnailSection = styled.div.attrs(applyDefaultTheme)`\n position: relative;\n overflow: hidden;\n transition: background 220ms;\n ${props => props.theme.themeProp('background', darkBgColor, props.theme.getColor('gray-50'))}\n ${AssetGalleryGridCard}:hover & {\n ${props => props.theme.themeProp('background', darkHoverBgColor, lightHoverBgColor, 1)}\n }\n`;\n\n// ── Top bar ──────────────────────────────────────────────────────────────────\n\nexport const HorizontalBar = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px;\n height: 40px;\n box-sizing: border-box;\n flex-shrink: 0;\n position: relative;\n z-index: 2;\n`;\n\nexport const HorizontalBarLeft = styled.div`\n display: flex;\n align-items: center;\n`;\n\nexport const HorizontalBarRight = styled.div`\n display: flex;\n align-items: center;\n`;\n\nexport const StatusIconCircle = styled.span.attrs(applyDefaultTheme)`\n display: inline-flex;\n justify-content: center;\n align-items: center;\n width: 28px;\n height: 28px;\n border-radius: 50%;\n pointer-events: none;\n svg {\n width: 100%;\n height: 100%;\n }\n`;\n\n// ── Thumbnail ─────────────────────────────────────────────────────────────────\n\nexport const ThumbnailRow = styled.div`\n position: relative;\n display: flex;\n width: 100%;\n`;\n\nexport const ThumbnailSpacer = styled.div`\n flex: 1;\n`;\n\nexport const ThumbnailWrapper = styled.div`\n width: max(66%, 268px);\n flex-shrink: 0;\n`;\n\nexport const ThumbnailBox = styled.div.attrs(applyDefaultTheme)`\n position: relative;\n height: 168px;\n\n flex-shrink: 0;\n overflow: hidden;\n\n img,\n video {\n width: 100%;\n height: 100%;\n object-fit: contain;\n display: block;\n }\n\n .audio {\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n svg {\n width: 35%;\n ${props =>\n props.theme.themeProp(\n 'color',\n props.theme.getColor('gray-400'),\n props.theme.getColor('gray-400')\n )}\n }\n }\n`;\n\nexport const ThumbnailSelectedOverlay = styled.div.attrs(applyDefaultTheme)`\n position: absolute;\n inset: 0;\n pointer-events: none;\n opacity: ${props => (props.selected ? 0.6 : 0)};\n background-color: #accef7;\n transition: opacity 220ms;\n z-index: 1;\n`;\n\nexport const ThumbnailActions = styled.div`\n flex: 1;\n`;\n\nexport const ActionsContainer = styled.div.attrs(applyDefaultTheme)`\n display: flex;\n align-items: end;\n flex-direction: column;\n gap: 8px;\n opacity: 0;\n transition: opacity 220ms;\n z-index: 1;\n position: absolute;\n right: 8px;\n ${AssetGalleryGridCard}:hover & {\n opacity: 1;\n }\n\n ${AssetGalleryGridCard}:focus-within & {\n opacity: 1;\n }\n`;\n\nexport const Action = styled.div`\n margin: 0;\n\n button {\n box-shadow: 0px 3px 6px #00000033;\n }\n svg {\n width: 16px;\n height: 16px;\n max-height: unset;\n max-width: unset;\n }\n`;\n\nexport const ConsumerOverlay = styled.div`\n position: absolute;\n inset: 0;\n pointer-events: none;\n z-index: 1;\n`;\n\n// ── Card body ─────────────────────────────────────────────────────────────────\n\nexport const CardBody = styled.div.attrs(applyDefaultTheme)`\n display: flex;\n flex-direction: column;\n flex: 1;\n padding: 16px 0px 0px 0px;\n`;\n\nexport const CardTitle = styled.span.attrs(applyDefaultTheme)`\n display: -webkit-box;\n -webkit-line-clamp: 1;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n padding: 0px 16px;\n font: normal normal 500 14px/19px Roboto;\n letter-spacing: 0.28px;\n height: 19px;\n box-sizing: border-box;\n\n ${props =>\n props.theme.themeProp('color', props.theme.getColor('white'), props.theme.getColor('gray-700'))}\n`;\n\nexport const CardDescription = styled.span.attrs(applyDefaultTheme)`\n display: -webkit-box;\n -webkit-line-clamp: 3;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n padding: 6px 16px;\n font: normal normal normal 12px/1.286em Roboto;\n letter-spacing: 0.24px;\n height: 52px;\n box-sizing: border-box;\n overflow-wrap: break-word;\n word-break: break-word;\n\n ${props =>\n props.theme.themeProp('color', props.theme.getColor('white'), props.theme.getColor('gray-700'))}\n`;\n\nexport const InstructionsWrapper = styled.div.attrs(applyDefaultTheme)`\n min-height: 96px;\n margin-top: 16px;\n box-sizing: border-box;\n flex-shrink: 0;\n transition: background 220ms;\n opacity: 0;\n ${props =>\n props.$hasContent &&\n css`\n opacity: 1;\n border-top: 0.56px solid;\n border-bottom: 0.56px solid;\n ${props.theme.themeProp('border-color', darkBorderColor, props.theme.getColor('gray-300'))}\n `}\n\n ${props =>\n props.$hasContent &&\n css`\n opacity: 1;\n ${props.theme.themeProp('background', darkBgColor, props.theme.getColor('gray-50'))}\n ${AssetGalleryGridCard}:hover & {\n ${props.theme.themeProp('background', darkHoverBgColor, lightHoverBgColor, 1)}\n }\n `}\n`;\n\nexport const CardFooter = styled.div.attrs(applyDefaultTheme)`\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 0px 16px;\n min-height: 52px;\n box-sizing: border-box;\n`;\n\nexport const CardFooterLeft = styled.div`\n display: flex;\n align-items: center;\n > * {\n margin-right: 4px;\n }\n`;\n\nexport const CardFooterRight = styled.div`\n display: flex;\n align-items: center;\n > * {\n margin-left: 4px;\n }\n`;\n\nexport const CardDivider = styled.div.attrs(applyDefaultTheme)`\n height: 1px;\n flex-shrink: 0;\n opacity: ${props => (props.invisible ? 0 : 1)};\n ${props => props.theme.themeProp('background', darkBorderColor, props.theme.getColor('gray-300'))}\n`;\n\nexport const CheckboxRow = styled.div`\n display: flex;\n padding: 0px 16px;\n align-items: center;\n height: 56px;\n box-sizing: border-box;\n flex-shrink: 0;\n`;\n\nexport const CheckboxButton = styled.div.attrs(applyDefaultTheme)`\n opacity: 1;\n flex-shrink: 0;\n cursor: pointer;\n transition: opacity 220ms;\n ${props => props.theme.themeProp('color', 'white', 'black')}\n > svg {\n width: 23px;\n height: 100%;\n }\n`;\n"],"names":["darkBorderColor","darkBgColor","darkHoverBgColor","lightHoverBgColor","AssetGalleryWrapper","styled","div","attrs","applyDefaultTheme","props","disabled","css","ringState","selected","$customSelectedBorder","$softSelected","completed","$hasError","AssetGalleryGridCard","style","theme","themeProp","getColor","extendedSelectMode","gray100","gray300","gray700","emerald","red500","red600","rgba","ThumbnailSection","HorizontalBar","HorizontalBarLeft","HorizontalBarRight","StatusIconCircle","span","ThumbnailRow","ThumbnailSpacer","ThumbnailWrapper","ThumbnailBox","ThumbnailSelectedOverlay","ThumbnailActions","ActionsContainer","Action","ConsumerOverlay","CardBody","CardTitle","CardDescription","InstructionsWrapper","$hasContent","CardFooter","CardFooterLeft","CardFooterRight","CardDivider","invisible","CheckboxRow"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AssetGalleryGridCard.styled.js","sources":["../../../../../src/components/widgets/AssetGallery/AssetGalleryBase/AssetGalleryGridCard/AssetGalleryGridCard.styled.js"],"sourcesContent":["import { rgba } from 'polished';\nimport styled, { css } from 'styled-components';\nimport { applyDefaultTheme } from '../../../../../utils/defaultTheme';\n\nconst darkBorderColor = '#52525B';\nconst darkBgColor = '#27272A';\nconst darkHoverBgColor = '#3F3F46';\nconst lightHoverBgColor = '#E4E4E7';\n\nexport const AssetGalleryWrapper = styled.div.attrs(applyDefaultTheme)`\n width: 100%;\n height: 100%;\n ${props =>\n props.disabled &&\n css`\n cursor: not-allowed;\n `};\n`;\n\nconst ringState = props => {\n if (props.selected) return props.$customSelectedBorder ? 'custom' : 'selected';\n if (props.$softSelected) return 'soft';\n if (props.completed) return 'completed';\n if (props.$hasError) return 'error';\n return 'idle';\n};\n\nexport const AssetGalleryGridCard = styled.div.attrs(props => ({\n ...applyDefaultTheme(props),\n 'data-ring': ringState(props),\n style: {\n ...(props.style || {}),\n ...(props.$customSelectedBorder && props.selected\n ? {\n '--ring-dark': props.$customSelectedBorder[0],\n '--ring-light': props.$customSelectedBorder[1]\n }\n : {})\n }\n}))`\n display: block;\n position: relative;\n height: 100%;\n margin: 0;\n box-sizing: border-box;\n text-decoration: none;\n cursor: pointer;\n transition: box-shadow 220ms;\n overflow: hidden;\n ${props =>\n props.theme.themeProp(\n 'color',\n props.theme.getColor('gray-300'),\n props.theme.getColor('gray-700')\n )}\n\n ${props =>\n props.disabled &&\n css`\n pointer-events: none;\n opacity: 0.4;\n `};\n\n ${props =>\n props.extendedSelectMode &&\n css`\n cursor: pointer;\n `}\n\n &:hover {\n box-shadow: 0px 3px 6px #00000029;\n }\n\n &::after {\n content: '';\n position: absolute;\n inset: 0;\n pointer-events: none;\n box-sizing: border-box;\n z-index: 10;\n border-style: solid;\n border-width: 1px;\n }\n &[data-ring='soft']::after,\n &[data-ring='selected']::after,\n &[data-ring='custom']::after,\n &[data-ring='completed']::after,\n &[data-ring='error']::after {\n border-width: 3px;\n }\n\n ${props => {\n const gray100 = props.theme.getColor('gray-100');\n const gray300 = props.theme.getColor('gray-300');\n const gray700 = props.theme.getColor('gray-700');\n const emerald = props.theme.getColor('emerald-500');\n const red500 = props.theme.getColor('red-500');\n const red600 = props.theme.getColor('red-600');\n return css`\n &[data-ring='idle']::after {\n border-color: ${gray300};\n }\n &[data-ring='soft']::after {\n border-color: ${rgba(gray700, 0.5)};\n }\n &[data-ring='selected']::after {\n border-color: ${darkBorderColor};\n }\n &[data-ring='custom']::after {\n border-color: var(--ring-light);\n }\n &[data-ring='completed']::after {\n border-color: ${rgba(emerald, 0.7)};\n }\n &[data-ring='error']::after {\n border-color: ${rgba(red500, 0.7)};\n }\n\n @media (prefers-color-scheme: dark) {\n &[data-ring='idle']::after {\n border-color: ${darkBorderColor};\n }\n &[data-ring='soft']::after {\n border-color: ${rgba(gray100, 0.5)};\n }\n &[data-ring='selected']::after {\n border-color: ${gray100};\n }\n &[data-ring='custom']::after {\n border-color: var(--ring-dark);\n }\n &[data-ring='completed']::after {\n border-color: ${emerald};\n }\n &[data-ring='error']::after {\n border-color: ${red600};\n }\n }\n body.light-theme &[data-ring='idle']::after {\n border-color: ${gray300};\n }\n body.light-theme &[data-ring='soft']::after {\n border-color: ${rgba(gray700, 0.5)};\n }\n body.light-theme &[data-ring='selected']::after {\n border-color: ${darkBorderColor};\n }\n body.light-theme &[data-ring='custom']::after {\n border-color: var(--ring-light);\n }\n body.light-theme &[data-ring='completed']::after {\n border-color: ${rgba(emerald, 0.7)};\n }\n body.light-theme &[data-ring='error']::after {\n border-color: ${rgba(red500, 0.7)};\n }\n body.dark-theme &[data-ring='idle']::after {\n border-color: ${darkBorderColor};\n }\n body.dark-theme &[data-ring='soft']::after {\n border-color: ${rgba(gray100, 0.5)};\n }\n body.dark-theme &[data-ring='selected']::after {\n border-color: ${gray100};\n }\n body.dark-theme &[data-ring='custom']::after {\n border-color: var(--ring-dark);\n }\n body.dark-theme &[data-ring='completed']::after {\n border-color: ${emerald};\n }\n body.dark-theme &[data-ring='error']::after {\n border-color: ${red600};\n }\n `;\n }};\n`;\n\nexport const ThumbnailSection = styled.div.attrs(applyDefaultTheme)`\n position: relative;\n overflow: hidden;\n transition: background 220ms;\n ${props => props.theme.themeProp('background', darkBgColor, props.theme.getColor('gray-50'))}\n ${AssetGalleryGridCard}:hover & {\n ${props => props.theme.themeProp('background', darkHoverBgColor, lightHoverBgColor, 1)}\n }\n`;\n\n// ── Top bar ──────────────────────────────────────────────────────────────────\n\nexport const HorizontalBar = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px;\n height: 40px;\n box-sizing: border-box;\n flex-shrink: 0;\n position: relative;\n z-index: 2;\n`;\n\nexport const HorizontalBarLeft = styled.div`\n display: flex;\n align-items: center;\n gap: 6px;\n`;\n\nexport const HorizontalBarRight = styled.div`\n display: flex;\n align-items: center;\n`;\n\nexport const StatusIconCircle = styled.span.attrs(applyDefaultTheme)`\n display: inline-flex;\n justify-content: center;\n align-items: center;\n width: 28px;\n height: 28px;\n border-radius: 50%;\n pointer-events: none;\n svg {\n width: 100%;\n height: 100%;\n }\n`;\n\n// ── Thumbnail ─────────────────────────────────────────────────────────────────\n\nexport const ThumbnailRow = styled.div`\n position: relative;\n display: flex;\n width: 100%;\n`;\n\nexport const ThumbnailSpacer = styled.div`\n flex: 1;\n`;\n\nexport const ThumbnailWrapper = styled.div`\n width: max(66%, 268px);\n flex-shrink: 0;\n`;\n\nexport const ThumbnailBox = styled.div.attrs(applyDefaultTheme)`\n position: relative;\n height: 168px;\n\n flex-shrink: 0;\n overflow: hidden;\n\n img,\n video {\n width: 100%;\n height: 100%;\n object-fit: contain;\n display: block;\n }\n\n .audio {\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n svg {\n width: 35%;\n ${props =>\n props.theme.themeProp(\n 'color',\n props.theme.getColor('gray-400'),\n props.theme.getColor('gray-400')\n )}\n }\n }\n`;\n\nexport const ThumbnailSelectedOverlay = styled.div.attrs(applyDefaultTheme)`\n position: absolute;\n inset: 0;\n pointer-events: none;\n opacity: ${props => (props.selected ? 0.6 : 0)};\n background-color: #accef7;\n transition: opacity 220ms;\n z-index: 1;\n`;\n\nexport const ThumbnailActions = styled.div`\n flex: 1;\n`;\n\nexport const ActionsContainer = styled.div.attrs(applyDefaultTheme)`\n display: flex;\n align-items: end;\n flex-direction: column;\n gap: 8px;\n opacity: 0;\n transition: opacity 220ms;\n z-index: 1;\n position: absolute;\n right: 8px;\n ${AssetGalleryGridCard}:hover & {\n opacity: 1;\n }\n\n ${AssetGalleryGridCard}:focus-within & {\n opacity: 1;\n }\n`;\n\nexport const Action = styled.div`\n margin: 0;\n\n button {\n box-shadow: 0px 3px 6px #00000033;\n }\n svg {\n width: 16px;\n height: 16px;\n max-height: unset;\n max-width: unset;\n }\n`;\n\nexport const ConsumerOverlay = styled.div`\n position: absolute;\n inset: 0;\n pointer-events: none;\n z-index: 1;\n`;\n\n// ── Card body ─────────────────────────────────────────────────────────────────\n\nexport const CardBody = styled.div.attrs(applyDefaultTheme)`\n display: flex;\n flex-direction: column;\n flex: 1;\n padding: 16px 0px 0px 0px;\n`;\n\nexport const CardTitle = styled.span.attrs(applyDefaultTheme)`\n display: -webkit-box;\n -webkit-line-clamp: 1;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n padding: 0px 16px;\n font: normal normal 500 14px/19px Roboto;\n letter-spacing: 0.28px;\n height: 19px;\n box-sizing: border-box;\n\n ${props =>\n props.theme.themeProp('color', props.theme.getColor('white'), props.theme.getColor('gray-700'))}\n`;\n\nexport const CardDescription = styled.span.attrs(applyDefaultTheme)`\n display: -webkit-box;\n -webkit-line-clamp: 3;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n padding: 6px 16px;\n font: normal normal normal 12px/1.286em Roboto;\n letter-spacing: 0.24px;\n height: 52px;\n box-sizing: border-box;\n overflow-wrap: break-word;\n word-break: break-word;\n\n ${props =>\n props.theme.themeProp('color', props.theme.getColor('white'), props.theme.getColor('gray-700'))}\n`;\n\nexport const InstructionsWrapper = styled.div.attrs(applyDefaultTheme)`\n min-height: 96px;\n margin-top: 16px;\n box-sizing: border-box;\n flex-shrink: 0;\n transition: background 220ms;\n opacity: 0;\n ${props =>\n props.$hasContent &&\n css`\n opacity: 1;\n border-top: 0.56px solid;\n border-bottom: 0.56px solid;\n ${props.theme.themeProp('border-color', darkBorderColor, props.theme.getColor('gray-300'))}\n `}\n\n ${props =>\n props.$hasContent &&\n css`\n opacity: 1;\n ${props.theme.themeProp('background', darkBgColor, props.theme.getColor('gray-50'))}\n ${AssetGalleryGridCard}:hover & {\n ${props.theme.themeProp('background', darkHoverBgColor, lightHoverBgColor, 1)}\n }\n `}\n`;\n\nexport const CardFooter = styled.div.attrs(applyDefaultTheme)`\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 0px 16px;\n min-height: 52px;\n box-sizing: border-box;\n`;\n\nexport const CardFooterLeft = styled.div`\n display: flex;\n align-items: center;\n > * {\n margin-right: 4px;\n }\n`;\n\nexport const CardFooterRight = styled.div`\n display: flex;\n align-items: center;\n > * {\n margin-left: 4px;\n }\n`;\n\nexport const CardDivider = styled.div.attrs(applyDefaultTheme)`\n height: 1px;\n flex-shrink: 0;\n opacity: ${props => (props.invisible ? 0 : 1)};\n ${props => props.theme.themeProp('background', darkBorderColor, props.theme.getColor('gray-300'))}\n`;\n\nexport const CheckboxRow = styled.div`\n display: flex;\n padding: 0px 16px;\n align-items: center;\n height: 56px;\n box-sizing: border-box;\n flex-shrink: 0;\n`;\n\nexport const CheckboxButton = styled.div.attrs(applyDefaultTheme)`\n opacity: 1;\n flex-shrink: 0;\n cursor: pointer;\n transition: opacity 220ms;\n ${props => props.theme.themeProp('color', 'white', 'black')}\n > svg {\n width: 23px;\n height: 100%;\n }\n`;\n"],"names":["darkBorderColor","darkBgColor","darkHoverBgColor","lightHoverBgColor","AssetGalleryWrapper","styled","div","attrs","applyDefaultTheme","props","disabled","css","ringState","selected","$customSelectedBorder","$softSelected","completed","$hasError","AssetGalleryGridCard","style","theme","themeProp","getColor","extendedSelectMode","gray100","gray300","gray700","emerald","red500","red600","rgba","ThumbnailSection","HorizontalBar","HorizontalBarLeft","HorizontalBarRight","StatusIconCircle","span","ThumbnailRow","ThumbnailSpacer","ThumbnailWrapper","ThumbnailBox","ThumbnailSelectedOverlay","ThumbnailActions","ActionsContainer","Action","ConsumerOverlay","CardBody","CardTitle","CardDescription","InstructionsWrapper","$hasContent","CardFooter","CardFooterLeft","CardFooterRight","CardDivider","invisible","CheckboxRow"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asset.propType.js","sources":["../../../src/components/widgets/AssetGallery/asset.propType.js"],"sourcesContent":["import PropTypes from 'prop-types';\n\nexport const assetShape = {\n key: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,\n previewUrl: PropTypes.string,\n title: PropTypes.string,\n note: PropTypes.shape({\n icon: PropTypes.element,\n message: PropTypes.string\n }),\n width: PropTypes.number,\n height: PropTypes.number,\n fileType: PropTypes.oneOf(['image', 'video', 'pdf', 'file', 'audio']).isRequired,\n fileTypeIconPosition: PropTypes.oneOf(['top-left', 'top-right']),\n group: PropTypes.string,\n actions: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string.isRequired,\n icon: PropTypes.element.isRequired,\n onClick: PropTypes.func.isRequired,\n className: PropTypes.shape,\n component: PropTypes.func\n })\n ),\n statusIcon: PropTypes.element,\n overlay: PropTypes.element,\n completed: PropTypes.bool,\n hasError: PropTypes.bool,\n disabled: PropTypes.bool,\n onClick: PropTypes.func,\n onContextMenu: PropTypes.func,\n onMouseEnter: PropTypes.func,\n instructionSeverity: PropTypes.oneOf([1, 2, 3, 4, 5]),\n summary: PropTypes.shape({\n title: PropTypes.string,\n description: PropTypes.string,\n instructions: PropTypes.string,\n instructionSeverity: PropTypes.oneOf([1, 2, 3, 4, 5]),\n headerLeft: PropTypes.node,\n headerRight: PropTypes.node,\n footerLeft: PropTypes.node,\n footerRight: PropTypes.node\n })\n};\n\nexport const assetShapeWithLayout = {\n ...assetShape,\n layout: PropTypes.shape({\n width: PropTypes.number.isRequired,\n height: PropTypes.number.isRequired,\n translateX: PropTypes.number.isRequired,\n translateY: PropTypes.number.isRequired,\n type: PropTypes.oneOf(['groupLabel', 'asset']).isRequired,\n hasHeightAndWidth: PropTypes.bool\n }).isRequired\n};\n"],"names":["assetShape","key","PropTypes","oneOfType","string","number","isRequired","previewUrl","title","note","shape","icon","element","message","width","height","fileType","oneOf","fileTypeIconPosition","group","actions","arrayOf","onClick","func","className","component","statusIcon","overlay","
|
|
1
|
+
{"version":3,"file":"asset.propType.js","sources":["../../../src/components/widgets/AssetGallery/asset.propType.js"],"sourcesContent":["import PropTypes from 'prop-types';\n\nexport const assetShape = {\n key: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,\n previewUrl: PropTypes.string,\n title: PropTypes.string,\n note: PropTypes.shape({\n icon: PropTypes.element,\n message: PropTypes.string\n }),\n width: PropTypes.number,\n height: PropTypes.number,\n fileType: PropTypes.oneOf(['image', 'video', 'pdf', 'file', 'audio']).isRequired,\n fileTypeIconPosition: PropTypes.oneOf(['top-left', 'top-right']),\n group: PropTypes.string,\n actions: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string.isRequired,\n icon: PropTypes.element.isRequired,\n onClick: PropTypes.func.isRequired,\n className: PropTypes.shape,\n component: PropTypes.func\n })\n ),\n statusIcon: PropTypes.element,\n overlay: PropTypes.element,\n isLive: PropTypes.bool,\n liveLabel: PropTypes.string,\n completed: PropTypes.bool,\n hasError: PropTypes.bool,\n disabled: PropTypes.bool,\n onClick: PropTypes.func,\n onContextMenu: PropTypes.func,\n onMouseEnter: PropTypes.func,\n instructionSeverity: PropTypes.oneOf([1, 2, 3, 4, 5]),\n summary: PropTypes.shape({\n title: PropTypes.string,\n description: PropTypes.string,\n instructions: PropTypes.string,\n instructionSeverity: PropTypes.oneOf([1, 2, 3, 4, 5]),\n headerLeft: PropTypes.node,\n headerRight: PropTypes.node,\n footerLeft: PropTypes.node,\n footerRight: PropTypes.node\n })\n};\n\nexport const assetShapeWithLayout = {\n ...assetShape,\n layout: PropTypes.shape({\n width: PropTypes.number.isRequired,\n height: PropTypes.number.isRequired,\n translateX: PropTypes.number.isRequired,\n translateY: PropTypes.number.isRequired,\n type: PropTypes.oneOf(['groupLabel', 'asset']).isRequired,\n hasHeightAndWidth: PropTypes.bool\n }).isRequired\n};\n"],"names":["assetShape","key","PropTypes","oneOfType","string","number","isRequired","previewUrl","title","note","shape","icon","element","message","width","height","fileType","oneOf","fileTypeIconPosition","group","actions","arrayOf","onClick","func","className","component","statusIcon","overlay","isLive","bool","liveLabel","completed","hasError","disabled","onContextMenu","onMouseEnter","instructionSeverity","summary","description","instructions","headerLeft","node","headerRight","footerLeft","footerRight","assetShapeWithLayout","layout","translateX","translateY","type","hasHeightAndWidth"],"mappings":"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"}
|