@tap-payments/os-micro-frontend-shared 0.1.372-test.4 → 0.1.373-test.1

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.
Files changed (54) hide show
  1. package/build/components/Sandbox/style.js +3 -2
  2. package/build/components/TableHeader/FiltersRow.d.ts +1 -1
  3. package/build/components/TableHeader/FiltersRow.js +4 -2
  4. package/build/components/TableHeader/TableHeader.d.ts +1 -1
  5. package/build/components/TableHeader/TableHeader.js +2 -2
  6. package/build/components/TableHeader/TableView/CreateViewDialog.d.ts +3 -0
  7. package/build/components/TableHeader/TableView/CreateViewDialog.js +92 -0
  8. package/build/components/TableHeader/TableView/CustomViews.js +1 -1
  9. package/build/components/TableHeader/TableView/TableView.js +0 -1
  10. package/build/components/TableHeader/TableView/ViewSelector.d.ts +5 -0
  11. package/build/components/TableHeader/TableView/ViewSelector.js +44 -0
  12. package/build/components/TableHeader/TableView/ViewsDropdown.d.ts +5 -0
  13. package/build/components/TableHeader/TableView/ViewsDropdown.js +206 -0
  14. package/build/components/TableHeader/TableView/components/ColumnList.d.ts +3 -0
  15. package/build/components/TableHeader/TableView/components/ColumnList.js +70 -0
  16. package/build/components/TableHeader/TableView/components/ViewsSubmenu.d.ts +3 -0
  17. package/build/components/TableHeader/TableView/components/ViewsSubmenu.js +52 -0
  18. package/build/components/TableHeader/TableView/components/index.d.ts +2 -0
  19. package/build/components/TableHeader/TableView/components/index.js +2 -0
  20. package/build/components/TableHeader/TableView/constants.d.ts +10 -0
  21. package/build/components/TableHeader/TableView/constants.js +10 -0
  22. package/build/components/TableHeader/TableView/data.d.ts +5 -0
  23. package/build/components/TableHeader/TableView/data.js +48 -0
  24. package/build/components/TableHeader/TableView/hooks/index.d.ts +6 -0
  25. package/build/components/TableHeader/TableView/hooks/index.js +6 -0
  26. package/build/components/TableHeader/TableView/hooks/useCreateViewDialog.d.ts +22 -0
  27. package/build/components/TableHeader/TableView/hooks/useCreateViewDialog.js +88 -0
  28. package/build/components/TableHeader/TableView/hooks/useDialogPosition.d.ts +8 -0
  29. package/build/components/TableHeader/TableView/hooks/useDialogPosition.js +16 -0
  30. package/build/components/TableHeader/TableView/hooks/useNestedSubmenu.d.ts +7 -0
  31. package/build/components/TableHeader/TableView/hooks/useNestedSubmenu.js +34 -0
  32. package/build/components/TableHeader/TableView/hooks/useOriginalColumns.d.ts +6 -0
  33. package/build/components/TableHeader/TableView/hooks/useOriginalColumns.js +18 -0
  34. package/build/components/TableHeader/TableView/hooks/useSubmenuHover.d.ts +8 -0
  35. package/build/components/TableHeader/TableView/hooks/useSubmenuHover.js +43 -0
  36. package/build/components/TableHeader/TableView/hooks/useViewSelector.d.ts +56 -0
  37. package/build/components/TableHeader/TableView/hooks/useViewSelector.js +177 -0
  38. package/build/components/TableHeader/TableView/hooks/useViewsManager.d.ts +12 -0
  39. package/build/components/TableHeader/TableView/hooks/useViewsManager.js +106 -0
  40. package/build/components/TableHeader/TableView/index.d.ts +12 -3
  41. package/build/components/TableHeader/TableView/index.js +13 -3
  42. package/build/components/TableHeader/TableView/styles.d.ts +127 -0
  43. package/build/components/TableHeader/TableView/styles.js +417 -0
  44. package/build/components/TableHeader/TableView/types.d.ts +179 -0
  45. package/build/components/TableHeader/TableView/types.js +1 -0
  46. package/build/components/TableHeader/TableView/utils.d.ts +121 -0
  47. package/build/components/TableHeader/TableView/utils.js +457 -0
  48. package/build/components/TableHeader/type.d.ts +21 -1
  49. package/build/components/Toolbar/Toolbar.js +1 -1
  50. package/build/constants/apps.js +0 -1
  51. package/build/constants/assets.d.ts +1 -0
  52. package/build/constants/assets.js +1 -0
  53. package/build/types/reports.d.ts +0 -21
  54. package/package.json +2 -2
@@ -0,0 +1,417 @@
1
+ import { Box, styled, Button, Paper, TextField } from '@mui/material';
2
+ export const ButtonStyled = styled(Box)(({ theme }) => ({
3
+ display: 'flex',
4
+ alignItems: 'center',
5
+ justifyContent: 'space-between',
6
+ borderRadius: '4px',
7
+ background: theme.palette.common.white,
8
+ padding: '8px',
9
+ border: '1px solid',
10
+ borderColor: theme.palette.divider,
11
+ gap: 8,
12
+ height: 32,
13
+ cursor: 'pointer',
14
+ '&:hover': {
15
+ border: '1px solid',
16
+ borderColor: theme.palette.info.dark,
17
+ boxShadow: theme.shadows[7],
18
+ },
19
+ }));
20
+ export const ViewWrapper = styled(Box)(({ theme }) => ({
21
+ background: theme.palette.common.white,
22
+ display: 'flex',
23
+ gap: theme.spacing(1),
24
+ alignItems: 'center',
25
+ color: theme.palette.text.primary,
26
+ fontSize: '11px',
27
+ fontWeight: theme.typography.fontWeightRegular,
28
+ textTransform: 'capitalize',
29
+ position: 'relative',
30
+ transition: '0.5s',
31
+ paddingRight: 0,
32
+ marginRight: 0,
33
+ '&:after': {
34
+ content: '""',
35
+ position: 'absolute',
36
+ left: -8,
37
+ right: 0,
38
+ width: '100%',
39
+ height: '100%',
40
+ boxShadow: theme.shadows[11],
41
+ borderRadius: theme.spacing(0.5),
42
+ paddingInlineStart: theme.spacing(1),
43
+ paddingTop: '9px',
44
+ paddingBottom: '9px',
45
+ paddingInlineEnd: '9px',
46
+ zIndex: -1,
47
+ },
48
+ '& > *:last-child': {
49
+ marginRight: 0,
50
+ paddingRight: 0,
51
+ },
52
+ }));
53
+ export const ListStyled = styled(Box)(({ theme }) => ({
54
+ background: theme.palette.common.white,
55
+ borderRadius: theme.spacing(1),
56
+ boxShadow: theme.shadows[5],
57
+ border: '1px solid',
58
+ borderColor: theme.palette.divider,
59
+ zIndex: 5,
60
+ fontSize: '11px',
61
+ width: 192,
62
+ }));
63
+ export const DropdownStyled = styled(Box)(() => ({
64
+ minWidth: 160,
65
+ position: 'relative',
66
+ marginRight: 0,
67
+ paddingRight: 0,
68
+ }));
69
+ export const MenuItem = styled(Box, { shouldForwardProp: (props) => props !== 'addColumnViewEl' })(({ theme }) => ({
70
+ padding: theme.spacing(1),
71
+ paddingInlineEnd: 2,
72
+ borderBottom: '1px solid',
73
+ borderColor: theme.palette.divider,
74
+ display: 'flex',
75
+ alignItems: 'center',
76
+ height: 32,
77
+ cursor: 'pointer',
78
+ img: {
79
+ height: 12,
80
+ },
81
+ '.check-icon': {
82
+ height: 'auto',
83
+ marginInlineEnd: theme.spacing(1),
84
+ },
85
+ '&:hover': {
86
+ color: theme.palette.info.dark,
87
+ fontWeight: theme.typography.fontWeightBold,
88
+ },
89
+ '&.add-column': {
90
+ justifyContent: 'space-between',
91
+ paddingInlineEnd: theme.spacing(1),
92
+ position: 'relative',
93
+ border: 'none',
94
+ zIndex: 5,
95
+ borderBottom: '1px solid',
96
+ borderColor: theme.palette.divider,
97
+ borderTopRightRadius: theme.spacing(1),
98
+ borderTopLeftRadius: theme.spacing(1),
99
+ '&:hover': {
100
+ boxShadow: theme.shadows[6],
101
+ },
102
+ },
103
+ }));
104
+ export const Space = styled(Box)(({ theme }) => ({
105
+ width: 12,
106
+ marginInlineEnd: theme.spacing(1),
107
+ }));
108
+ export const SpaceAfter = styled(Box)(() => ({
109
+ width: 16,
110
+ }));
111
+ export const DialogContentWrapper = styled(Box)(({ theme }) => ({
112
+ display: 'flex',
113
+ flexDirection: 'column',
114
+ height: 'calc(100% - 32px)',
115
+ backgroundColor: theme.palette.background.paper,
116
+ position: 'relative',
117
+ }));
118
+ export const ScrollableContent = styled(Box)(() => ({
119
+ flex: 1,
120
+ overflowY: 'auto',
121
+ paddingLeft: 16,
122
+ paddingRight: 16,
123
+ paddingBottom: 64,
124
+ }));
125
+ export const TitleSection = styled(Box)(() => ({
126
+ padding: '24px 0',
127
+ display: 'flex',
128
+ justifyContent: 'space-between',
129
+ alignItems: 'center',
130
+ }));
131
+ export const ColumnListContainer = styled(Box)(({ theme }) => ({
132
+ border: '1px solid',
133
+ borderColor: theme.palette.divider,
134
+ borderRadius: '8px',
135
+ overflow: 'hidden',
136
+ display: 'flex',
137
+ flexDirection: 'column',
138
+ flex: 1,
139
+ minHeight: 0,
140
+ }));
141
+ export const SelectAllHeader = styled(Box)(({ theme }) => ({
142
+ display: 'flex',
143
+ alignItems: 'center',
144
+ padding: '12px',
145
+ borderBottom: '1px solid',
146
+ borderColor: theme.palette.divider,
147
+ backgroundColor: '#FAFAFA',
148
+ cursor: 'pointer',
149
+ '&:hover': {
150
+ backgroundColor: '#F0F0F0',
151
+ },
152
+ }));
153
+ export const ColumnItemRow = styled(Box, {
154
+ shouldForwardProp: (prop) => prop !== 'isHovered' && prop !== 'isDate',
155
+ })(({ theme, isHovered, isDate }) => ({
156
+ display: 'flex',
157
+ alignItems: 'center',
158
+ padding: '12px',
159
+ borderBottom: '1px solid',
160
+ borderColor: theme.palette.divider,
161
+ backgroundColor: isHovered ? theme.palette.action.hover : theme.palette.background.paper,
162
+ cursor: isDate ? 'default' : 'grab',
163
+ '&:hover': {
164
+ backgroundColor: isDate ? theme.palette.background.paper : theme.palette.action.hover,
165
+ },
166
+ '&:last-child': {
167
+ borderBottom: 'none',
168
+ },
169
+ }));
170
+ export const DragIconWrapper = styled(Box)(() => ({
171
+ width: 20,
172
+ height: 20,
173
+ marginRight: 8,
174
+ display: 'flex',
175
+ alignItems: 'center',
176
+ justifyContent: 'center',
177
+ flexShrink: 0,
178
+ }));
179
+ export const CheckboxWrapper = styled(Box)(() => ({
180
+ display: 'flex',
181
+ alignItems: 'center',
182
+ justifyContent: 'center',
183
+ padding: 0,
184
+ width: 14,
185
+ height: 14,
186
+ minWidth: 14,
187
+ minHeight: 14,
188
+ flexShrink: 0,
189
+ }));
190
+ export const FooterBar = styled(Box)(({ theme }) => ({
191
+ position: 'absolute',
192
+ bottom: 0,
193
+ left: 0,
194
+ right: 0,
195
+ height: 35,
196
+ backgroundColor: '#F8F9FB',
197
+ borderTop: '1px solid',
198
+ borderColor: theme.palette.divider,
199
+ }));
200
+ export const CreateButtonWrapper = styled(Box)(() => ({
201
+ position: 'absolute',
202
+ bottom: 12,
203
+ right: 16,
204
+ padding: 6,
205
+ backgroundColor: 'white',
206
+ }));
207
+ export const SubmenuPaper = styled(Paper)(() => ({
208
+ paddingTop: 4,
209
+ paddingBottom: 4,
210
+ minWidth: 180,
211
+ boxShadow: '0 4px 12px rgba(0,0,0,0.15)',
212
+ borderRadius: '8px',
213
+ }));
214
+ export const SubmenuItem = styled(Box)(({ theme }) => ({
215
+ display: 'flex',
216
+ alignItems: 'center',
217
+ padding: '8px 12px',
218
+ cursor: 'pointer',
219
+ }));
220
+ export const DeleteButton = styled(Button)(() => ({
221
+ color: '#FF0000',
222
+ textTransform: 'none',
223
+ fontSize: 10,
224
+ fontWeight: 500,
225
+ borderRadius: '4px',
226
+ border: '1px solid #F4F4F4',
227
+ paddingLeft: 8,
228
+ paddingRight: 8,
229
+ paddingTop: 4,
230
+ paddingBottom: 4,
231
+ '&:hover': {
232
+ backgroundColor: 'transparent',
233
+ },
234
+ }));
235
+ export const CreateButton = styled(Button)(({ theme }) => ({
236
+ fontSize: 9,
237
+ fontWeight: 600,
238
+ borderRadius: 4,
239
+ paddingLeft: 20,
240
+ paddingRight: 20,
241
+ paddingTop: 8,
242
+ paddingBottom: 8,
243
+ textTransform: 'none',
244
+ backgroundColor: '#1F88D0',
245
+ '&:hover': {
246
+ backgroundColor: '#1A7BC0',
247
+ },
248
+ '&.Mui-disabled': {
249
+ backgroundColor: theme.palette.grey[300],
250
+ color: theme.palette.grey[500],
251
+ },
252
+ }));
253
+ export const NameTextField = styled(TextField)(({ theme }) => ({
254
+ '& .MuiFilledInput-root': {
255
+ borderRadius: '8px',
256
+ backgroundColor: theme.palette.background.paper,
257
+ border: '1px solid',
258
+ borderColor: theme.palette.divider,
259
+ '&:hover': {
260
+ backgroundColor: theme.palette.background.paper,
261
+ },
262
+ '&.Mui-focused': {
263
+ backgroundColor: theme.palette.background.paper,
264
+ },
265
+ '&::before, &::after': {
266
+ display: 'none',
267
+ },
268
+ },
269
+ }));
270
+ export const checkboxSx = {
271
+ display: 'flex',
272
+ alignItems: 'center',
273
+ justifyContent: 'center',
274
+ padding: 0,
275
+ width: 14,
276
+ height: 14,
277
+ minWidth: 14,
278
+ minHeight: 14,
279
+ flexShrink: 0,
280
+ color: 'grey.A400',
281
+ '&.Mui-checked': {
282
+ color: 'info.dark',
283
+ },
284
+ '&.MuiCheckbox-indeterminate': {
285
+ color: 'info.dark',
286
+ },
287
+ '&.Mui-disabled.Mui-checked': {
288
+ color: 'grey.500',
289
+ '& .MuiSvgIcon-root': {
290
+ backgroundColor: 'grey.500',
291
+ borderRadius: '3px',
292
+ color: '#fff',
293
+ },
294
+ },
295
+ '& .MuiSvgIcon-root': {
296
+ width: 14,
297
+ height: 14,
298
+ },
299
+ '& img': {
300
+ width: 14,
301
+ height: 14,
302
+ },
303
+ };
304
+ export const getDialogPaperStyle = (width, height) => ({
305
+ margin: 0,
306
+ maxHeight: '100%',
307
+ maxWidth: 'none',
308
+ width,
309
+ height,
310
+ borderRadius: 12,
311
+ overflow: 'hidden',
312
+ boxShadow: '0px 8px 32px rgba(0, 0, 0, 0.15)',
313
+ });
314
+ export const dialogSx = {
315
+ backgroundColor: 'transparent',
316
+ pointerEvents: 'none',
317
+ zIndex: 1300,
318
+ '& .MuiDialog-container': {
319
+ transition: 'none !important',
320
+ zIndex: 1300,
321
+ },
322
+ '& .MuiDialog-paper': {
323
+ transition: 'none !important',
324
+ pointerEvents: 'auto',
325
+ zIndex: 1300,
326
+ },
327
+ };
328
+ export const ResetHeaderBox = styled(Box)(({ theme }) => ({
329
+ display: 'flex',
330
+ alignItems: 'center',
331
+ justifyContent: 'space-between',
332
+ paddingLeft: theme.spacing(1.5),
333
+ paddingRight: theme.spacing(1.5),
334
+ paddingTop: theme.spacing(1),
335
+ paddingBottom: theme.spacing(1),
336
+ cursor: 'pointer',
337
+ '&:hover': {
338
+ backgroundColor: theme.palette.action.hover,
339
+ },
340
+ }));
341
+ export const ResetCheckboxSx = {
342
+ p: 0,
343
+ width: 14,
344
+ height: 14,
345
+ minWidth: 14,
346
+ minHeight: 14,
347
+ '&.Mui-checked': { color: 'info.dark' },
348
+ '&.MuiCheckbox-indeterminate': { color: 'info.dark' },
349
+ '& .MuiSvgIcon-root': { width: 14, height: 14 },
350
+ };
351
+ export const SubmenuContainer = styled(Box)(() => ({
352
+ minWidth: 200,
353
+ }));
354
+ export const ColumnItemsContainer = styled(Box)(() => ({
355
+ maxHeight: 300,
356
+ overflowY: 'auto',
357
+ paddingLeft: 6,
358
+ paddingRight: 6,
359
+ }));
360
+ export const SaveCustomViewBox = styled(Box)(() => ({
361
+ paddingLeft: 8,
362
+ paddingRight: 8,
363
+ paddingTop: 8,
364
+ paddingBottom: 8,
365
+ }));
366
+ export const SaveCustomViewInnerBox = styled(Box)(({ disabled }) => ({
367
+ width: '100%',
368
+ borderRadius: '8px',
369
+ backgroundColor: '#1F88D00D',
370
+ padding: '8px',
371
+ marginLeft: 6,
372
+ marginRight: 6,
373
+ display: 'flex',
374
+ flexDirection: 'column',
375
+ gap: '6px',
376
+ cursor: disabled ? 'not-allowed' : 'pointer',
377
+ opacity: disabled ? 0.5 : 1,
378
+ }));
379
+ export const ButtonsContainer = styled(Box)(() => ({
380
+ display: 'flex',
381
+ justifyContent: 'flex-end',
382
+ gap: 12,
383
+ paddingTop: 8,
384
+ paddingBottom: 8,
385
+ paddingLeft: 12,
386
+ paddingRight: 12,
387
+ }));
388
+ export const CancelButtonSx = {
389
+ fontSize: 11,
390
+ fontWeight: 400,
391
+ textTransform: 'none',
392
+ color: 'text.primary',
393
+ minWidth: 80,
394
+ height: 38,
395
+ borderRadius: '8px',
396
+ border: '1px solid #F2F2F2',
397
+ };
398
+ export const OkayButtonSx = {
399
+ fontSize: 11,
400
+ fontWeight: 500,
401
+ textTransform: 'none',
402
+ backgroundColor: '#1F88D0',
403
+ minWidth: 80,
404
+ height: 38,
405
+ borderRadius: '8px',
406
+ boxShadow: 'none',
407
+ '&:hover': {
408
+ backgroundColor: '#1976B8',
409
+ boxShadow: 'none',
410
+ },
411
+ };
412
+ export const ModifiedTextSx = {
413
+ color: '#20232B80',
414
+ fontSize: '9px',
415
+ fontWeight: 500,
416
+ marginLeft: '4px',
417
+ };
@@ -0,0 +1,179 @@
1
+ /// <reference types="react" />
2
+ import type { ColumnViewProps } from '../../../types/index.js';
3
+ import type { TableHeaderProps, ViewOption } from '../type';
4
+ export type ViewMode = 'advanced' | 'sheet';
5
+ export interface ViewMenuItem {
6
+ label: string;
7
+ id: string;
8
+ templateId?: string;
9
+ columns?: string[];
10
+ submenu?: ColumnViewProps[];
11
+ isCustom?: boolean;
12
+ default?: boolean;
13
+ }
14
+ export interface FieldItem {
15
+ code: string;
16
+ name: {
17
+ text: string;
18
+ lang: string;
19
+ }[];
20
+ order?: number | null;
21
+ default?: boolean;
22
+ }
23
+ export interface ColumnItem {
24
+ code: string;
25
+ name: {
26
+ text: string;
27
+ lang: string;
28
+ }[];
29
+ order?: number;
30
+ default?: boolean;
31
+ fields?: FieldItem[];
32
+ }
33
+ export interface LayoutSection {
34
+ code: string;
35
+ columns: ColumnItem[];
36
+ }
37
+ export interface TemplateResponse {
38
+ templateId: string;
39
+ segment: string;
40
+ app: string;
41
+ service: string;
42
+ name: string;
43
+ layout: LayoutSection[];
44
+ id: {
45
+ timestamp: number;
46
+ date: string;
47
+ };
48
+ masterTemplateId: string;
49
+ user: {
50
+ id: string;
51
+ };
52
+ created: number;
53
+ updated: number;
54
+ default: boolean;
55
+ object?: string;
56
+ master?: boolean;
57
+ live_mode?: boolean;
58
+ api_version?: string;
59
+ feature_version?: string;
60
+ }
61
+ export interface TemplatesListResponse {
62
+ object: string;
63
+ live_mode: boolean;
64
+ api_version: string;
65
+ feature_version: string;
66
+ count: number;
67
+ has_more: boolean;
68
+ templates: TemplateResponse[];
69
+ }
70
+ export interface CreateCustomViewDialogProps {
71
+ open: boolean;
72
+ onClose: () => void;
73
+ onCreate?: (data: {
74
+ name: string;
75
+ selectedColumns: ColumnViewProps[];
76
+ layout: LayoutSection;
77
+ }) => Promise<void>;
78
+ availableColumns?: ColumnViewProps[];
79
+ defaultColumns?: ColumnViewProps[];
80
+ editingView?: {
81
+ id: string;
82
+ label: string;
83
+ templateId?: string;
84
+ submenu?: ColumnViewProps[];
85
+ } | null;
86
+ onDelete?: (viewId: string) => Promise<void>;
87
+ tableViews?: ColumnViewProps[];
88
+ mode?: ViewMode;
89
+ }
90
+ export interface ColumnCheckState {
91
+ checked: boolean;
92
+ indeterminate: boolean;
93
+ }
94
+ export interface ViewSelectorProps {
95
+ onViewChange?: TableHeaderProps['onViewChange'];
96
+ setIsViewVisible: (visible: boolean) => void;
97
+ setTableViews?: TableHeaderProps['setTableViews'];
98
+ tableViews?: TableHeaderProps['tableViews'];
99
+ resetTableViews?: TableHeaderProps['resetTableViews'];
100
+ customViews?: ViewMenuItem[];
101
+ onCreateCustomView?: (data: {
102
+ name: string;
103
+ selectedColumns: ColumnViewProps[];
104
+ layout: LayoutSection;
105
+ }) => Promise<void>;
106
+ onEditCustomView?: (viewId: string, data: {
107
+ name: string;
108
+ selectedColumns: ColumnViewProps[];
109
+ layout: LayoutSection;
110
+ }) => Promise<void>;
111
+ onDeleteCustomView?: (viewId: string) => Promise<void>;
112
+ tableMode?: import('../../../types/index.js').TableMode;
113
+ onTableViewsChange?: (tableViews: ColumnViewProps[]) => void;
114
+ initialTableViews?: ColumnViewProps[];
115
+ onCustomViewsChange?: (customViews: ViewMenuItem[]) => void;
116
+ initialCustomViews?: ViewMenuItem[];
117
+ layoutData?: LayoutSection[];
118
+ templates?: TemplatesListResponse | TemplateResponse[];
119
+ lang?: string;
120
+ }
121
+ export interface ViewsDropdownProps {
122
+ open: boolean;
123
+ selectedViewInfo: ViewOption;
124
+ setSelectedViewInfo: (selected: ViewOption, viewMenuItem?: ViewMenuItem) => void;
125
+ onSelect: (e: React.MouseEvent<HTMLDivElement>, selectedView?: ViewMenuItem) => void;
126
+ setViews?: (views: string[]) => void;
127
+ anchorEl: Element | null;
128
+ tableViews?: ColumnViewProps[];
129
+ setTableViews?: (columns: ColumnViewProps[]) => void;
130
+ onCreateCustomView?: (useCurrentState?: boolean) => void;
131
+ customViews?: ViewMenuItem[];
132
+ onEditCustomView?: (view: ViewMenuItem) => void;
133
+ defaultColumns?: ColumnViewProps[];
134
+ setDefaultColumns?: (columns: ColumnViewProps[]) => void;
135
+ }
136
+ export interface ColumnListProps {
137
+ selectedColumns: ColumnViewProps[];
138
+ columnNames: string[];
139
+ allSelected: boolean;
140
+ someSelected: boolean;
141
+ hoveredColumn: string | null;
142
+ anchorEl: HTMLElement | null;
143
+ onReorder: (reorderedNames: string[]) => void;
144
+ onColumnToggle: (columnName: string) => void;
145
+ onSubItemToggle: (columnName: string, subItemName: string) => void;
146
+ onSelectAll: () => void;
147
+ onResetToDefault: () => void;
148
+ onSubmenuEnter: (columnName: string, element: HTMLElement) => void;
149
+ onSubmenuLeave: () => void;
150
+ onCancelClose: () => void;
151
+ hasChanges?: boolean;
152
+ }
153
+ export interface ViewsSubmenuProps {
154
+ columns: ColumnViewProps[];
155
+ allCurrentSelected: boolean;
156
+ someCurrentSelected: boolean;
157
+ onSelectAll: () => void;
158
+ onReset: () => void;
159
+ onColumnToggle: (columnName: string) => void;
160
+ onNestedItemToggle: (columnName: string, subItemName: string) => void;
161
+ anchorEl: HTMLElement | null;
162
+ isModified?: boolean;
163
+ }
164
+ export interface UseCreateViewDialogProps {
165
+ open: boolean;
166
+ availableColumns: ColumnViewProps[];
167
+ defaultColumns: ColumnViewProps[];
168
+ editingView?: {
169
+ id: string;
170
+ label: string;
171
+ submenu?: ColumnViewProps[];
172
+ } | null;
173
+ tableViews?: ColumnViewProps[];
174
+ }
175
+ export interface UseViewsManagerProps {
176
+ mode: ViewMode;
177
+ templates?: TemplatesListResponse | TemplateResponse[];
178
+ lang?: string;
179
+ }
@@ -0,0 +1 @@
1
+ export {};