@box/metadata-view 2.4.30 → 2.4.32
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
|
-
import{t as IconColumnVariant}from"../../../../../chunks/types.js";import{THUMBNAIL_LIST_VIEW_HEIGHTS}from"../../constants.js";import{GhostTableRow}from"./ghost-table-row/ghost-table-row.js";import{ActionCellContent}from"./action-cell-content.js";import{t as InlineEditingCell}from"../../../../../chunks/inline-editing-cell.js";import{n as metadata_table_module_default,t as TableRow}from"../../../../../chunks/table-row.js";import{Cell,Row,TableBody,Text}from"@box/blueprint-web";import React from"react";import{jsx,jsxs}from"react/jsx-runtime";import{ItemTypeIcon}from"@box/item-icon";import clsx from"clsx";import get from"lodash/get";var getItemMetadataField=(item,columnId,isItemMetadata)=>get(item,isItemMetadata?columnId.split(`.`)[1]:columnId),NameCellWithIcon=React.memo(({column,iconColumnVariant,item})=>{let{id:columnId,isItemMetadata,subtitle,textValue}=column,key=`${textValue}-${item.id}`;return jsx(Cell,{children:jsxs(`div`,{className:metadata_table_module_default.tableNameCell,children:[jsx(ItemTypeIcon,{className:metadata_table_module_default.tableNameCellIconInline,item}),jsxs(`div`,{className:clsx(metadata_table_module_default.tableNameCellTitle,{[metadata_table_module_default.hasSubtitle]:iconColumnVariant===IconColumnVariant.INLINE_SUBTITLE}),children:[jsx(Text,{as:`span`,className:metadata_table_module_default.tableNameCellText,children:getItemMetadataField(item,columnId,isItemMetadata)}),iconColumnVariant===IconColumnVariant.INLINE_SUBTITLE&&jsx(Text,{as:`span`,className:metadata_table_module_default.tableNameCellText,color:`textOnLightSecondary`,children:subtitle})]})]})},key)}),CustomCell=React.memo(({column,item})=>{let key=`${column.textValue}-${item.id}`;return jsx(Cell,{children:column.cellRenderer?.(item,column)},key)}),MultiSelectCell=React.memo(({column,item})=>{let key=`${column.textValue}-${item.id}`,options=get(item,column.id);return options?jsx(Cell,{children:options.join(` `)},key):jsx(Cell,{},key)}),DefaultCell=React.memo(({column,item})=>{let{id:columnId,isItemMetadata,textValue}=column,key=`${textValue}-${item.id}`;return jsx(Cell,{children:jsx(Text,{as:`span`,children:getItemMetadataField(item,columnId,isItemMetadata)})},key)}),DataCell=React.memo(({column,iconColumnVariant,item,onInlineEditChange})=>{let{cellRenderer,id:columnId,isInlineEditingEnabled,type}=column,isNameColumnWithInlineIcon=columnId===`item.name`&&(iconColumnVariant===IconColumnVariant.INLINE||iconColumnVariant===IconColumnVariant.INLINE_SUBTITLE);return cellRenderer?jsx(CustomCell,{column,item}):isNameColumnWithInlineIcon?jsx(NameCellWithIcon,{column,iconColumnVariant,item}):isInlineEditingEnabled&&(type===`multiSelect`||type===`enum`)?jsx(InlineEditingCell,{column,item,onInlineEditChange},`${column.id}-${item.id}`):jsx(type===`multiSelect`?MultiSelectCell:DefaultCell,{column,item})}),IconColumn=React.memo(({item,zoomLevel})=>jsx(Cell,{style:{height:THUMBNAIL_LIST_VIEW_HEIGHTS[zoomLevel]},children:jsx(ItemTypeIcon,{className:metadata_table_module_default.iconCell,item})},`item-type-icon-${item.id}`)),TableBodyWithData=({areSelectionCheckboxesDisabled,columnCount,columns,dataTargetPrefix,iconColumnVariant,items,itemActionMenuProps,onInlineEditChange,onTableRowClick,renderActionCell,shouldRenderActionColumn,virtualItems,totalVirtualSize,zoomLevel})=>{let shouldShowIconColumn=iconColumnVariant===IconColumnVariant.COLUMN;if(virtualItems){let renderGhostRow=index=>jsx(GhostTableRow,{columnLength:columnCount||0,rowKey:`ghost-${index}`}),renderRow=item=>jsx(TableRow,{areSelectionCheckboxesDisabled,columns,dataTargetPrefix,iconColumnVariant,item,itemActionMenuProps,onTableRowClick,renderActionCell,shouldRenderActionColumn,zoomLevel}),getTopContentOffset=()=>virtualItems[0]?.start||0,getBottomContentOffset=()=>{let lastEnd=virtualItems[virtualItems.length-1]?.end||0;return Math.max((totalVirtualSize||0)-lastEnd,0)},topOffset=getTopContentOffset(),bottomOffset=getBottomContentOffset();return jsxs(TableBody,{children:[!!topOffset&&jsx(Row,{isDisabled:!0,style:{height:`${topOffset}px`}}),virtualItems.map(({index})=>index>=items.length?renderGhostRow(index):renderRow(items[index])),!!bottomOffset&&jsx(Row,{isDisabled:!0,style:{height:`${bottomOffset}px`}})]})}return jsx(TableBody,{items:items.map(item=>({key:item.id,...item})),children:item=>jsxs(Row,{className:clsx(metadata_table_module_default.tableRow,{[metadata_table_module_default.isClickable]:onTableRowClick}),"data-target-id":dataTargetPrefix?`${dataTargetPrefix}-itemRow-${item.id}`:void 0,id:item.id,onAction:()=>onTableRowClick?.(item),children:[shouldShowIconColumn&&jsx(IconColumn,{item,zoomLevel}),columns.map(column=>jsx(DataCell,{column,iconColumnVariant,item,onInlineEditChange},`${column.textValue}-${item.id}`)),shouldRenderActionColumn&&jsx(ActionCellContent,{isCheckboxDisabled:areSelectionCheckboxesDisabled,item,itemActionMenuProps,renderActionCell})]},item.id)})};export{TableBodyWithData as default};
|
|
1
|
+
import{t as IconColumnVariant}from"../../../../../chunks/types.js";import{THUMBNAIL_LIST_VIEW_HEIGHTS}from"../../constants.js";import{GhostTableRow}from"./ghost-table-row/ghost-table-row.js";import{ActionCellContent}from"./action-cell-content.js";import{t as InlineEditingCell}from"../../../../../chunks/inline-editing-cell.js";import{n as metadata_table_module_default,t as TableRow}from"../../../../../chunks/table-row.js";import{Cell,Row,TableBody,Text}from"@box/blueprint-web";import React from"react";import{jsx,jsxs}from"react/jsx-runtime";import{ItemTypeIcon}from"@box/item-icon";import clsx from"clsx";import get from"lodash/get";var getItemMetadataField=(item,columnId,isItemMetadata)=>get(item,isItemMetadata?columnId.split(`.`)[1]:columnId),NameCellWithIcon=React.memo(({column,iconColumnVariant,item})=>{let{id:columnId,isItemMetadata,subtitle,textValue}=column,key=`${textValue}-${item.id}`;return jsx(Cell,{children:jsxs(`div`,{className:metadata_table_module_default.tableNameCell,children:[jsx(ItemTypeIcon,{className:metadata_table_module_default.tableNameCellIconInline,item}),jsxs(`div`,{className:clsx(metadata_table_module_default.tableNameCellTitle,{[metadata_table_module_default.hasSubtitle]:iconColumnVariant===IconColumnVariant.INLINE_SUBTITLE}),children:[jsx(Text,{as:`span`,className:metadata_table_module_default.tableNameCellText,children:getItemMetadataField(item,columnId,isItemMetadata)}),iconColumnVariant===IconColumnVariant.INLINE_SUBTITLE&&jsx(Text,{as:`span`,className:metadata_table_module_default.tableNameCellText,color:`textOnLightSecondary`,children:subtitle})]})]})},key)}),CustomCell=React.memo(({column,item})=>{let key=`${column.textValue}-${item.id}`;return jsx(Cell,{children:column.cellRenderer?.(item,column)},key)}),MultiSelectCell=React.memo(({column,item})=>{let key=`${column.textValue}-${item.id}`,options=get(item,column.id);return options?jsx(Cell,{children:options.join(` `)},key):jsx(Cell,{},key)}),DefaultCell=React.memo(({column,item})=>{let{id:columnId,isItemMetadata,textValue}=column,key=`${textValue}-${item.id}`;return jsx(Cell,{children:jsx(Text,{as:`span`,children:getItemMetadataField(item,columnId,isItemMetadata)})},key)}),DataCell=React.memo(({column,iconColumnVariant,item,onInlineEditChange})=>{let{cellRenderer,id:columnId,isInlineEditingEnabled,type}=column,isNameColumnWithInlineIcon=columnId===`item.name`&&(iconColumnVariant===IconColumnVariant.INLINE||iconColumnVariant===IconColumnVariant.INLINE_SUBTITLE);return cellRenderer?jsx(CustomCell,{column,item}):isNameColumnWithInlineIcon?jsx(NameCellWithIcon,{column,iconColumnVariant,item}):isInlineEditingEnabled&&(type===`multiSelect`||type===`enum`)?jsx(InlineEditingCell,{column,item,onInlineEditChange},`${column.id}-${item.id}`):jsx(type===`multiSelect`?MultiSelectCell:DefaultCell,{column,item})}),IconColumn=React.memo(({item,zoomLevel})=>jsx(Cell,{style:{height:THUMBNAIL_LIST_VIEW_HEIGHTS[zoomLevel]},children:jsx(ItemTypeIcon,{className:metadata_table_module_default.iconCell,item})},`item-type-icon-${item.id}`)),TableBodyWithData=({areSelectionCheckboxesDisabled,columnCount,columns,dataTargetPrefix,iconColumnVariant,items,itemActionMenuProps,onInlineEditChange,onTableRowClick,renderActionCell,shouldRenderActionColumn,virtualItems,totalVirtualSize,zoomLevel=0})=>{let shouldShowIconColumn=iconColumnVariant===IconColumnVariant.COLUMN;if(virtualItems){let renderGhostRow=index=>jsx(GhostTableRow,{columnLength:columnCount||0,rowKey:`ghost-${index}`}),renderRow=item=>jsx(TableRow,{areSelectionCheckboxesDisabled,columns,dataTargetPrefix,iconColumnVariant,item,itemActionMenuProps,onTableRowClick,renderActionCell,shouldRenderActionColumn,zoomLevel}),getTopContentOffset=()=>virtualItems[0]?.start||0,getBottomContentOffset=()=>{let lastEnd=virtualItems[virtualItems.length-1]?.end||0;return Math.max((totalVirtualSize||0)-lastEnd,0)},topOffset=getTopContentOffset(),bottomOffset=getBottomContentOffset();return jsxs(TableBody,{children:[!!topOffset&&jsx(Row,{"aria-hidden":!0,isDisabled:!0,style:{height:`${topOffset}px`}}),virtualItems.map(({index})=>index>=items.length?renderGhostRow(index):renderRow(items[index])),!!bottomOffset&&jsx(Row,{"aria-hidden":!0,isDisabled:!0,style:{height:`${bottomOffset}px`}})]})}return jsx(TableBody,{items:items.map(item=>({key:item.id,...item})),children:item=>jsxs(Row,{className:clsx(metadata_table_module_default.tableRow,{[metadata_table_module_default.isClickable]:onTableRowClick}),"data-target-id":dataTargetPrefix?`${dataTargetPrefix}-itemRow-${item.id}`:void 0,id:item.id,onAction:()=>onTableRowClick?.(item),children:[shouldShowIconColumn&&jsx(IconColumn,{item,zoomLevel}),columns.map(column=>jsx(DataCell,{column,iconColumnVariant,item,onInlineEditChange},`${column.textValue}-${item.id}`)),shouldRenderActionColumn&&jsx(ActionCellContent,{isCheckboxDisabled:areSelectionCheckboxesDisabled,item,itemActionMenuProps,renderActionCell})]},item.id)})};export{TableBodyWithData as default};
|
|
@@ -14,7 +14,7 @@ interface TableBodyWithDataProps extends Omit<MetadataTableProps, keyof TablePro
|
|
|
14
14
|
type CellProps = {
|
|
15
15
|
item: Item;
|
|
16
16
|
column: Column;
|
|
17
|
-
iconColumnVariant
|
|
17
|
+
iconColumnVariant?: IconColumnVariant;
|
|
18
18
|
};
|
|
19
19
|
export type DataCellProps = CellProps & Pick<InlineEditingCellProps, 'onInlineEditChange'>;
|
|
20
20
|
declare const TableBodyWithData: ({ areSelectionCheckboxesDisabled, columnCount, columns, dataTargetPrefix, iconColumnVariant, items, itemActionMenuProps, onInlineEditChange, onTableRowClick, renderActionCell, shouldRenderActionColumn, virtualItems, totalVirtualSize, zoomLevel, }: TableBodyWithDataProps) => import("react/jsx-runtime").JSX.Element;
|
package/package.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@box/metadata-view",
|
|
3
|
-
"version": "2.4.
|
|
3
|
+
"version": "2.4.32",
|
|
4
4
|
"license": "SEE LICENSE IN LICENSE",
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"@box/blueprint-web": "^18.6.0",
|
|
7
7
|
"@box/blueprint-web-assets": "^5.13.4",
|
|
8
8
|
"@box/box-item-type-selector": "^2.3.28",
|
|
9
|
-
"@box/content-field": "^3.1.
|
|
9
|
+
"@box/content-field": "^3.1.29",
|
|
10
10
|
"@box/item-icon": "^3.6.28",
|
|
11
|
-
"@box/metadata-filter": "^2.6.
|
|
11
|
+
"@box/metadata-filter": "^2.6.31",
|
|
12
12
|
"@box/types": "^3.2.33",
|
|
13
13
|
"@tanstack/react-virtual": "^3.10.8",
|
|
14
14
|
"formik": "^2.4.5",
|
|
@@ -22,10 +22,10 @@
|
|
|
22
22
|
"@box/blueprint-web": "^18.6.0",
|
|
23
23
|
"@box/blueprint-web-assets": "^5.13.4",
|
|
24
24
|
"@box/box-item-type-selector": "^2.3.28",
|
|
25
|
-
"@box/content-field": "^3.1.
|
|
26
|
-
"@box/eslint-plugin-blueprint": "2.3.
|
|
25
|
+
"@box/content-field": "^3.1.29",
|
|
26
|
+
"@box/eslint-plugin-blueprint": "2.3.1",
|
|
27
27
|
"@box/item-icon": "^3.6.28",
|
|
28
|
-
"@box/metadata-filter": "^2.6.
|
|
28
|
+
"@box/metadata-filter": "^2.6.31",
|
|
29
29
|
"@box/storybook-utils": "1.4.23",
|
|
30
30
|
"@box/types": "^3.2.33",
|
|
31
31
|
"@tanstack/react-virtual": "^3.10.8",
|