@box/metadata-view 0.39.4 → 0.41.0
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/dist/chunks/form-filter-chip.js +75 -50
- package/dist/esm/lib/components/filter-row/all-filters-chip.js +35 -30
- package/dist/esm/lib/components/filter-row/filter-row.js +34 -42
- package/dist/esm/lib/components/filter-row/form-filter-chip.js +2 -2
- package/dist/esm/lib/components/filter-row/initial-field-values.js +15 -13
- package/dist/esm/lib/components/filter-row/metadata-filter-chip.js +51 -34
- package/dist/esm/lib/components/filter-sidepanel/filter.js +32 -29
- package/dist/esm/lib/components/metadata-table/messages.js +6 -2
- package/dist/esm/lib/components/metadata-table/table-body/inline-editing-cell/inline-editing-cell.js +46 -33
- package/dist/esm/lib/components/metadata-table/table-body/table-body-with-data.js +83 -99
- package/dist/esm/lib/components/metadata-table/table-renderer.js +6 -6
- package/dist/i18n/bn-IN.js +1 -0
- package/dist/i18n/da-DK.js +1 -0
- package/dist/i18n/de-DE.js +1 -0
- package/dist/i18n/en-AU.js +1 -0
- package/dist/i18n/en-CA.js +1 -0
- package/dist/i18n/en-GB.js +1 -0
- package/dist/i18n/en-US.js +1 -0
- package/dist/i18n/en-US.properties +2 -0
- package/dist/i18n/en-x-pseudo.js +1 -0
- package/dist/i18n/es-419.js +1 -0
- package/dist/i18n/es-ES.js +1 -0
- package/dist/i18n/fi-FI.js +1 -0
- package/dist/i18n/fr-CA.js +1 -0
- package/dist/i18n/fr-FR.js +1 -0
- package/dist/i18n/hi-IN.js +1 -0
- package/dist/i18n/it-IT.js +1 -0
- package/dist/i18n/ja-JP.js +1 -0
- package/dist/i18n/json/src/lib/components/metadata-table/messages.json +1 -1
- package/dist/i18n/ko-KR.js +1 -0
- package/dist/i18n/nb-NO.js +1 -0
- package/dist/i18n/nl-NL.js +1 -0
- package/dist/i18n/pl-PL.js +1 -0
- package/dist/i18n/pt-BR.js +1 -0
- package/dist/i18n/ru-RU.js +1 -0
- package/dist/i18n/sv-SE.js +1 -0
- package/dist/i18n/tr-TR.js +1 -0
- package/dist/i18n/zh-CN.js +1 -0
- package/dist/i18n/zh-TW.js +1 -0
- package/dist/styles/form-filter-chip.css +1 -1
- package/dist/types/lib/components/filter-row/all-filters-chip.d.ts +1 -2
- package/dist/types/lib/components/filter-row/form-filter-chip.d.ts +1 -2
- package/dist/types/lib/components/filter-row/initial-field-values.d.ts +2 -0
- package/dist/types/lib/components/filter-row/metadata-filter-chip.d.ts +1 -2
- package/dist/types/lib/components/filter-row/types.d.ts +19 -0
- package/dist/types/lib/components/metadata-table/messages.d.ts +5 -0
- package/dist/types/lib/components/metadata-table/metadata-table.d.ts +2 -3
- package/dist/types/lib/components/metadata-table/table-body/inline-editing-cell/inline-editing-cell.d.ts +3 -4
- package/dist/types/lib/components/metadata-table/table-body/table-body-with-data.d.ts +3 -5
- package/dist/types/lib/components/metadata-table/table-renderer.d.ts +2 -3
- package/package.json +2 -2
package/dist/i18n/tr-TR.js
CHANGED
|
@@ -19,6 +19,7 @@ export default {
|
|
|
19
19
|
"groupSharedFeatures.metadataView.filterSidepanel.filtersHeader": "Filtreler",
|
|
20
20
|
"groupSharedFeatures.metadataView.filterSidepanel.showResultsButton": "Ara",
|
|
21
21
|
"groupSharedFeatures.metadataView.gridList.gridView": "Kılavuz Görünümü",
|
|
22
|
+
"groupSharedFeatures.metadataView.inlineEditingCell.unselectedOptionLabel": "--",
|
|
22
23
|
"groupSharedFeatures.metadataView.itemActionMenu.actionMenu": "İşlem menüsü",
|
|
23
24
|
"groupSharedFeatures.metadataView.itemList.errorMessage": "Bir hata oluştu. Lütfen bu sayfayı yenileyin.",
|
|
24
25
|
"groupSharedFeatures.metadataView.itemList.listView": "Liste görünümü",
|
package/dist/i18n/zh-CN.js
CHANGED
|
@@ -19,6 +19,7 @@ export default {
|
|
|
19
19
|
"groupSharedFeatures.metadataView.filterSidepanel.filtersHeader": "筛选",
|
|
20
20
|
"groupSharedFeatures.metadataView.filterSidepanel.showResultsButton": "搜索",
|
|
21
21
|
"groupSharedFeatures.metadataView.gridList.gridView": "网格视图",
|
|
22
|
+
"groupSharedFeatures.metadataView.inlineEditingCell.unselectedOptionLabel": "--",
|
|
22
23
|
"groupSharedFeatures.metadataView.itemActionMenu.actionMenu": "操作菜单",
|
|
23
24
|
"groupSharedFeatures.metadataView.itemList.errorMessage": "发生错误。请刷新此页面。",
|
|
24
25
|
"groupSharedFeatures.metadataView.itemList.listView": "列表视图",
|
package/dist/i18n/zh-TW.js
CHANGED
|
@@ -19,6 +19,7 @@ export default {
|
|
|
19
19
|
"groupSharedFeatures.metadataView.filterSidepanel.filtersHeader": "篩選",
|
|
20
20
|
"groupSharedFeatures.metadataView.filterSidepanel.showResultsButton": "搜尋",
|
|
21
21
|
"groupSharedFeatures.metadataView.gridList.gridView": "方格檢視",
|
|
22
|
+
"groupSharedFeatures.metadataView.inlineEditingCell.unselectedOptionLabel": "--",
|
|
22
23
|
"groupSharedFeatures.metadataView.itemActionMenu.actionMenu": "動作選單",
|
|
23
24
|
"groupSharedFeatures.metadataView.itemList.errorMessage": "出了點問題。請重新整理此頁面。",
|
|
24
25
|
"groupSharedFeatures.metadataView.itemList.listView": "清單檢視",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.
|
|
1
|
+
._popoverFooter_z1gpu_1{display:flex;flex-direction:row;gap:var(--space-2);align-items:center;justify-content:flex-end}._popoverContent_z1gpu_9{width:320px}._filterChipGroup_z1gpu_13{display:flex;flex-wrap:wrap}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { FilterGroup } from './types';
|
|
2
2
|
interface AllFiltersChipProps {
|
|
3
|
-
activeFilterCount: number;
|
|
4
3
|
filterGroups: Array<FilterGroup>;
|
|
5
4
|
}
|
|
6
|
-
declare const AllFiltersChip: ({
|
|
5
|
+
declare const AllFiltersChip: ({ filterGroups }: AllFiltersChipProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
6
|
export default AllFiltersChip;
|
|
@@ -4,7 +4,6 @@ export interface FormFilterChipProps {
|
|
|
4
4
|
icon?: React.ForwardRefExoticComponent<Omit<React.SVGProps<SVGSVGElement>, 'ref'> & React.RefAttributes<SVGSVGElement>>;
|
|
5
5
|
id: string;
|
|
6
6
|
name: string;
|
|
7
|
-
selected: boolean;
|
|
8
7
|
}
|
|
9
|
-
export declare const FormFilterChip: ({ children, formRef, icon, id, name
|
|
8
|
+
export declare const FormFilterChip: ({ children, formRef, icon, id, name }: FormFilterChipProps) => import("react/jsx-runtime").JSX.Element;
|
|
10
9
|
export default FormFilterChip;
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { MetadataFormFieldValue, MetadataTemplateFieldOption } from '@box/metadata-filter';
|
|
2
|
+
import { MetadataFieldType } from '../../types';
|
|
2
3
|
import { FilterOption, FilterValues } from './types';
|
|
3
4
|
export declare const getInitialFieldValues: (filterOptions: FilterOption[], customFieldValues?: FilterValues) => {
|
|
4
5
|
metadata: {
|
|
5
6
|
fields: Record<string, {
|
|
7
|
+
fieldType: MetadataFieldType;
|
|
6
8
|
value: MetadataFormFieldValue;
|
|
7
9
|
options?: Array<MetadataTemplateFieldOption>;
|
|
8
10
|
}>;
|
|
@@ -2,7 +2,6 @@ import { FilterOption } from './types';
|
|
|
2
2
|
export interface MetadataFilterChipProps {
|
|
3
3
|
filterOption: FilterOption;
|
|
4
4
|
formRef: React.RefObject<HTMLFormElement>;
|
|
5
|
-
selected: boolean;
|
|
6
5
|
}
|
|
7
|
-
export declare const MetadataFilterChip: ({ filterOption, formRef
|
|
6
|
+
export declare const MetadataFilterChip: ({ filterOption, formRef }: MetadataFilterChipProps) => import("react/jsx-runtime").JSX.Element;
|
|
8
7
|
export default MetadataFilterChip;
|
|
@@ -1,6 +1,18 @@
|
|
|
1
1
|
import { MetadataFormFieldValue } from '@box/metadata-filter';
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
3
|
import { FilterVariant, MetadataFieldType } from '../../types';
|
|
4
|
+
export interface CustomDateFilterOption {
|
|
5
|
+
name: string;
|
|
6
|
+
from: number;
|
|
7
|
+
to: number;
|
|
8
|
+
}
|
|
9
|
+
export interface CustomDateFilterOptionsProps {
|
|
10
|
+
name: string;
|
|
11
|
+
type: string;
|
|
12
|
+
options?: Array<CustomDateFilterOption>;
|
|
13
|
+
from?: number;
|
|
14
|
+
to?: number;
|
|
15
|
+
}
|
|
4
16
|
export interface FilterGroup {
|
|
5
17
|
filters: Array<FilterOption>;
|
|
6
18
|
title?: string;
|
|
@@ -14,6 +26,8 @@ export interface FilterOption {
|
|
|
14
26
|
name?: string;
|
|
15
27
|
options?: string[];
|
|
16
28
|
placeholder?: string;
|
|
29
|
+
canUseRelativeDates?: boolean;
|
|
30
|
+
customDateFilterOptions?: Array<CustomDateFilterOptionsProps>;
|
|
17
31
|
selected: boolean;
|
|
18
32
|
shouldRenderChip?: boolean;
|
|
19
33
|
variant?: FilterVariant;
|
|
@@ -30,3 +44,8 @@ export interface FilterChipProps {
|
|
|
30
44
|
export type FilterValues = Record<string, {
|
|
31
45
|
value: MetadataFormFieldValue;
|
|
32
46
|
}>;
|
|
47
|
+
export type MetadataFormValues = {
|
|
48
|
+
metadata: {
|
|
49
|
+
fields: FilterValues;
|
|
50
|
+
};
|
|
51
|
+
};
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import { TableProps } from '@box/blueprint-web';
|
|
2
|
-
import { Item } from '@box/types';
|
|
3
2
|
import { IconColumnVariant, Column, MetadataProps } from '../../types';
|
|
4
|
-
|
|
3
|
+
import { InlineEditingCellProps } from './table-body/inline-editing-cell/inline-editing-cell';
|
|
4
|
+
export interface MetadataTableProps extends TableProps, MetadataProps, Pick<InlineEditingCellProps, 'onInlineEditChange'> {
|
|
5
5
|
columns: Column[];
|
|
6
6
|
iconColumnVariant?: IconColumnVariant;
|
|
7
7
|
isSelectAllEnabled?: boolean;
|
|
8
8
|
isInfiniteScrollEnabled?: boolean;
|
|
9
9
|
hasNextPage?: boolean;
|
|
10
10
|
onGetNextPage?: () => void;
|
|
11
|
-
onInlineEditChange?: (item: Item, value: string, columnId: string) => void;
|
|
12
11
|
placeholderRowsCount?: number;
|
|
13
12
|
zoomLevel?: number;
|
|
14
13
|
}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { Item } from '@box/types';
|
|
2
2
|
import { Column } from '../../../../types';
|
|
3
|
-
interface InlineEditingCellProps {
|
|
3
|
+
export interface InlineEditingCellProps {
|
|
4
4
|
column: Column;
|
|
5
5
|
item: Item;
|
|
6
|
-
onInlineEditChange
|
|
7
|
-
type: 'multiSelect' | 'enum';
|
|
6
|
+
onInlineEditChange?: (item: Item, value: string | string[] | null, columnId: string) => void;
|
|
8
7
|
}
|
|
9
|
-
declare const InlineEditingCell: ({ column, item, onInlineEditChange
|
|
8
|
+
declare const InlineEditingCell: ({ column, item, onInlineEditChange }: InlineEditingCellProps) => import("react/jsx-runtime").JSX.Element;
|
|
10
9
|
export default InlineEditingCell;
|
|
@@ -3,18 +3,16 @@ import { Item } from '@box/types';
|
|
|
3
3
|
import { VirtualItem } from '@tanstack/react-virtual';
|
|
4
4
|
import { IconColumnVariant, Column } from '../../../types';
|
|
5
5
|
import { MetadataTableProps } from '../metadata-table';
|
|
6
|
-
|
|
6
|
+
import { InlineEditingCellProps } from './inline-editing-cell/inline-editing-cell';
|
|
7
|
+
interface TableBodyWithDataProps extends Omit<MetadataTableProps, keyof TableProps>, Pick<InlineEditingCellProps, 'onInlineEditChange'> {
|
|
7
8
|
virtualItems?: VirtualItem[];
|
|
8
9
|
columnCount?: number;
|
|
9
|
-
onInlineEditChange?: (item: Item, value: string, columnId: string) => void;
|
|
10
10
|
}
|
|
11
11
|
type CellProps = {
|
|
12
12
|
item: Item;
|
|
13
13
|
column: Column;
|
|
14
14
|
iconColumnVariant: IconColumnVariant;
|
|
15
15
|
};
|
|
16
|
-
export
|
|
17
|
-
onInlineEditChange?: (item: Item, value: string, columnId: string) => void;
|
|
18
|
-
}
|
|
16
|
+
export type DataCellProps = CellProps & Pick<InlineEditingCellProps, 'onInlineEditChange'>;
|
|
19
17
|
declare const TableBodyWithData: ({ columns, iconColumnVariant, isSelectAllEnabled, items, itemActionMenuProps, virtualItems, columnCount, zoomLevel, onInlineEditChange, }: TableBodyWithDataProps) => import("react/jsx-runtime").JSX.Element;
|
|
20
18
|
export default TableBodyWithData;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { VirtualItem } from '@tanstack/react-virtual';
|
|
2
2
|
import { useIntl } from 'react-intl';
|
|
3
3
|
import { TableProps } from '@box/blueprint-web';
|
|
4
|
-
import { Item } from '@box/types';
|
|
5
4
|
import { IconColumnVariant, Column, MetadataProps } from '../../types';
|
|
6
|
-
|
|
5
|
+
import { InlineEditingCellProps } from './table-body/inline-editing-cell/inline-editing-cell';
|
|
6
|
+
export interface TableRendererProps extends Pick<InlineEditingCellProps, 'onInlineEditChange'> {
|
|
7
7
|
tableHeader: React.ReactNode;
|
|
8
8
|
columns: Column[];
|
|
9
9
|
iconColumnVariant?: IconColumnVariant;
|
|
@@ -17,7 +17,6 @@ export interface TableRendererProps {
|
|
|
17
17
|
style?: React.CSSProperties;
|
|
18
18
|
columnCount?: number;
|
|
19
19
|
zoomLevel?: number;
|
|
20
|
-
onInlineEditChange?: (item: Item, value: string, columnId: string) => void;
|
|
21
20
|
}
|
|
22
21
|
declare const TableRenderer: ({ tableHeader, columns, iconColumnVariant, isSelectAllEnabled, itemActionMenuProps, items, isLoading, formatMessage, tableProps, virtualItems, style, columnCount: passedColumnCount, zoomLevel, onInlineEditChange, }: TableRendererProps) => import("react/jsx-runtime").JSX.Element;
|
|
23
22
|
export default TableRenderer;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@box/metadata-view",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.41.0",
|
|
4
4
|
"license": "SEE LICENSE IN LICENSE",
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"@box/blueprint-web": "^11.12.0",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"@box/box-item-type-selector": "^0.63.10",
|
|
24
24
|
"@box/eslint-plugin-blueprint": "*",
|
|
25
25
|
"@box/item-icon": "^0.17.13",
|
|
26
|
-
"@box/metadata-filter": "^1.
|
|
26
|
+
"@box/metadata-filter": "^1.19.0",
|
|
27
27
|
"@box/storybook-utils": "0.13.18",
|
|
28
28
|
"@box/types": "0.2.1",
|
|
29
29
|
"@tanstack/react-virtual": "^3.10.8",
|