@ansible/ansible-ui-framework 0.0.703 → 0.0.705

Sign up to get free protection for your applications and to get access to all the features.
@@ -2,4 +2,5 @@ import { ReactNode } from 'react';
2
2
  export declare function PageDetails(props: {
3
3
  children?: ReactNode;
4
4
  disablePadding?: boolean;
5
+ numberOfColumns?: 'multiple' | 'single';
5
6
  }): JSX.Element;
@@ -3,4 +3,6 @@ import { ITableColumn } from '../PageTable/PageTableColumn';
3
3
  export declare function PageDetailsFromColumns<T extends object>(props: {
4
4
  item: T | undefined;
5
5
  columns: ITableColumn<T>[];
6
+ disablePadding?: boolean;
7
+ numberOfColumns?: 'multiple' | 'single';
6
8
  }): JSX.Element;
@@ -32,7 +32,6 @@ export type PageTableProps<T extends object> = {
32
32
  selectItems?: (items: T[]) => void;
33
33
  unselectAll?: () => void;
34
34
  onSelect?: (item: T) => void;
35
- selectNoneText?: string;
36
35
  errorStateTitle: string;
37
36
  error?: Error;
38
37
  emptyStateTitle: string;
@@ -1,6 +1,30 @@
1
1
  import { ReactNode } from 'react';
2
- type CellFn<T extends object, R> = (item: T) => R;
3
- export interface ITableColumnCommon<T extends object> {
2
+ import { PageTableViewTypeE } from './PageTableViewType';
3
+ export declare enum ColumnTableOption {
4
+ Key = "key",
5
+ Description = "description",
6
+ Expanded = "expanded",
7
+ Hidden = "hidden",
8
+ Id = "id"
9
+ }
10
+ export declare enum ColumnListOption {
11
+ Name = "name",
12
+ Subtitle = "subtitle",
13
+ Description = "description",
14
+ Hidden = "hidden",
15
+ Primary = "primary",
16
+ Secondary = "secondary"
17
+ }
18
+ export declare enum ColumnCardOption {
19
+ Name = "name",
20
+ Subtitle = "subtitle",
21
+ Description = "description",
22
+ Hidden = "hidden"
23
+ }
24
+ export declare enum ColumnModalOption {
25
+ Hidden = "hidden"
26
+ }
27
+ interface ITableColumnCommon<T extends object> {
4
28
  id?: string;
5
29
  header: string;
6
30
  minWidth?: number;
@@ -11,19 +35,24 @@ export interface ITableColumnCommon<T extends object> {
11
35
  defaultSortDirection?: 'asc' | 'desc';
12
36
  defaultSort?: boolean;
13
37
  icon?: (item: T) => ReactNode;
14
- card?: 'name' | 'subtitle' | 'description' | 'hidden';
38
+ table?: ColumnTableOption;
15
39
  list?: 'name' | 'subtitle' | 'description' | 'hidden' | 'primary' | 'secondary';
16
- }
17
- export declare enum TableColumnCardType {
18
- 'description' = 0,
19
- 'hidden' = 1,
20
- 'count' = 2
40
+ card?: 'name' | 'subtitle' | 'description' | 'hidden';
41
+ modal?: ColumnModalOption;
21
42
  }
22
43
  export interface ITableColumnTypeReactNode<T extends object> extends ITableColumnCommon<T> {
23
44
  type?: undefined;
24
45
  value?: CellFn<T, string | string[] | number | boolean>;
25
46
  cell: CellFn<T, ReactNode | undefined>;
26
47
  }
48
+ export interface ITableColumnTypeText<T extends object> extends ITableColumnCommon<T> {
49
+ type: 'text';
50
+ value: CellFn<T, string | null | undefined>;
51
+ }
52
+ export interface ITableColumnTypeDescription<T extends object> extends ITableColumnCommon<T> {
53
+ type: 'description';
54
+ value: CellFn<T, string | undefined | null>;
55
+ }
27
56
  export interface ITableColumnTypeCount<T extends object> extends ITableColumnCommon<T> {
28
57
  type: 'count';
29
58
  value: CellFn<T, number | undefined>;
@@ -36,17 +65,17 @@ export interface ITableColumnTypeDateTime<T extends object> extends ITableColumn
36
65
  type: 'datetime';
37
66
  value: CellFn<T, number | string | undefined>;
38
67
  }
39
- export interface ITableColumnTypeDescription<T extends object> extends ITableColumnCommon<T> {
40
- type: 'description';
41
- value: CellFn<T, string | undefined | null>;
42
- }
43
- export interface ITableColumnTypeText<T extends object> extends ITableColumnCommon<T> {
44
- type: 'text';
45
- value: CellFn<T, string | null | undefined>;
46
- }
47
- export type ITableColumn<T extends object> = ITableColumnTypeReactNode<T> | ITableColumnTypeDateTime<T> | ITableColumnTypeLabels<T> | ITableColumnTypeCount<T> | ITableColumnTypeText<T> | ITableColumnTypeDescription<T>;
68
+ export type ITableColumn<T extends object> = ITableColumnTypeReactNode<T> | ITableColumnTypeText<T> | ITableColumnTypeDescription<T> | ITableColumnTypeDateTime<T> | ITableColumnTypeLabels<T> | ITableColumnTypeCount<T>;
48
69
  export declare function TableColumnCell<T extends object>(props: {
49
70
  item: T;
50
71
  column?: ITableColumn<T>;
51
72
  }): JSX.Element;
73
+ export declare function useVisibleTableColumns<T extends object>(columns: ITableColumn<T>[]): ITableColumn<T>[];
74
+ export declare function useVisibleListColumns<T extends object>(columns: ITableColumn<T>[]): ITableColumn<T>[];
75
+ export declare function useVisibleCardColumns<T extends object>(columns: ITableColumn<T>[]): ITableColumn<T>[];
76
+ export declare function useVisibleModalColumns<T extends object>(columns: ITableColumn<T>[]): ITableColumn<T>[];
77
+ export declare function useVisibleColumns<T extends object>(columns: ITableColumn<T>[], viewType: PageTableViewTypeE): ITableColumn<T>[];
78
+ export declare function useDescriptionColumns<T extends object>(columns: ITableColumn<T>[]): ITableColumn<T>[];
79
+ export declare function useExpandedColumns<T extends object>(columns: ITableColumn<T>[]): ITableColumn<T>[];
80
+ type CellFn<T extends object, R> = (item: T) => R;
52
81
  export {};