rez-table-listing-mui 0.0.25 → 0.0.27

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 (47) hide show
  1. package/.env.uat +1 -0
  2. package/.eslintrc.cjs +11 -9
  3. package/dist/index.d.ts +102 -8
  4. package/dist/index.js +1 -1
  5. package/dist/index.mjs +1 -1
  6. package/package.json +25 -11
  7. package/src/App.tsx +172 -129
  8. package/src/assets/svg.tsx +65 -2
  9. package/src/components/common/confirm-modal/index.tsx +200 -0
  10. package/src/components/filter/components/attributes-filter.tsx +28 -0
  11. package/src/components/filter/components/forms/components/Attributes-select.tsx +182 -0
  12. package/src/components/filter/components/forms/components/Date.tsx +58 -0
  13. package/src/components/filter/components/forms/components/Dropdown.tsx +62 -0
  14. package/src/components/filter/components/forms/components/Filter-criteria.tsx +164 -0
  15. package/src/components/filter/components/forms/components/Multi-Select.tsx +57 -0
  16. package/src/components/filter/components/forms/components/Select.tsx +53 -0
  17. package/src/components/filter/components/forms/components/Textfield.tsx +43 -0
  18. package/src/components/filter/components/forms/components/styles.tsx +11 -0
  19. package/src/components/filter/components/forms/index.tsx +444 -0
  20. package/src/components/filter/components/main-filter.tsx +66 -0
  21. package/src/components/filter/components/saved-edit-filter.tsx +107 -0
  22. package/src/components/filter/components/saved-filter.tsx +150 -0
  23. package/src/components/filter/components/search/index.tsx +56 -0
  24. package/src/components/filter/components/tabs/custom-tab-panel.tsx +29 -0
  25. package/src/components/filter/components/tabs/index.tsx +85 -0
  26. package/src/components/filter/index.tsx +261 -0
  27. package/src/components/index-table.tsx +3 -6
  28. package/src/components/index.scss +4 -0
  29. package/src/components/login/index.tsx +49 -0
  30. package/src/components/table-body.tsx +6 -4
  31. package/src/components/table-head.tsx +0 -10
  32. package/src/components/topbar/index.scss +5 -0
  33. package/src/components/topbar/index.tsx +54 -19
  34. package/src/components/viewmore/index.tsx +2 -2
  35. package/src/libs/hooks/useCraftTable.tsx +29 -5
  36. package/src/libs/hooks/useDefaultColumns.tsx +2 -2
  37. package/src/libs/hooks/useEntityTableAPI.tsx +183 -0
  38. package/src/libs/hooks/useEntityTableHooks.ts +25 -0
  39. package/src/libs/utils/apiColumn.ts +123 -0
  40. package/src/libs/utils/common.ts +42 -0
  41. package/src/main.tsx +6 -3
  42. package/src/types/common.ts +67 -0
  43. package/src/types/filter.ts +215 -0
  44. package/src/types/table-options.ts +15 -2
  45. package/src/types/table.ts +5 -5
  46. package/tsconfig.json +1 -1
  47. package/vite.config.ts +3 -3
package/.env.uat ADDED
@@ -0,0 +1 @@
1
+ VITE_API_BASE_URL = 'http://13.200.182.92:9090/api'
package/.eslintrc.cjs CHANGED
@@ -2,17 +2,19 @@ module.exports = {
2
2
  root: true,
3
3
  env: { browser: true, es2020: true },
4
4
  extends: [
5
- 'eslint:recommended',
6
- 'plugin:@typescript-eslint/recommended',
7
- 'plugin:react-hooks/recommended',
5
+ "eslint:recommended",
6
+ "plugin:@typescript-eslint/recommended",
7
+ "plugin:react-hooks/recommended",
8
8
  ],
9
- ignorePatterns: ['dist', '.eslintrc.cjs'],
10
- parser: '@typescript-eslint/parser',
11
- plugins: ['react-refresh'],
9
+ ignorePatterns: ["dist", ".eslintrc.cjs"],
10
+ parser: "@typescript-eslint/parser",
11
+ plugins: ["react-refresh"],
12
12
  rules: {
13
- 'react-refresh/only-export-components': [
14
- 'warn',
13
+ "react-refresh/only-export-components": [
14
+ "warn",
15
15
  { allowConstantExport: true },
16
16
  ],
17
+ "@typescript-eslint/no-unused-vars": "off",
18
+ "@typescript-eslint/explicit-module-boundary-types": "off",
17
19
  },
18
- }
20
+ };
package/dist/index.d.ts CHANGED
@@ -1,7 +1,94 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { SortingState, PaginationState, RowSelectionState, ExpandedState, Row, Table, ColumnOrderState, Header, ColumnDef } from '@tanstack/react-table';
2
+ import { SortingState, PaginationState, RowSelectionState, ExpandedState, ColumnDef, Row, Table, ColumnOrderState, Header } from '@tanstack/react-table';
3
3
  import React, { Dispatch, SetStateAction } from 'react';
4
4
 
5
+ interface OperationProps {
6
+ label: string;
7
+ value: string;
8
+ }
9
+ type OperationMapProps = {
10
+ [key in FilterInputDataTypes]?: OperationProps[];
11
+ };
12
+ interface FilterOperationListProps {
13
+ label: string;
14
+ value: string;
15
+ }
16
+ type FilterInputDataTypes = "text" | "select" | "multiselect" | "date" | "number";
17
+ interface FilterColumnsListProps {
18
+ created_date: string | null;
19
+ entity_type: string;
20
+ id: string;
21
+ name: string;
22
+ status: string | null;
23
+ parent_type: string;
24
+ parent_id: string;
25
+ code: string | null;
26
+ created_by: string | null;
27
+ modified_by: string | null;
28
+ modified_date: string | null;
29
+ enterprise_id: string | null;
30
+ organization_id: string | null;
31
+ app_code: string | null;
32
+ mapped_entity_type: string;
33
+ menu_code: string | null;
34
+ table_name: string | null;
35
+ col_position: number;
36
+ sortable: string | null;
37
+ searchable: string | null;
38
+ attribute_key: string;
39
+ sort_type: string | null;
40
+ data_type: FilterInputDataTypes;
41
+ data_source_type: string | null;
42
+ datasource_list: any | null;
43
+ visible: string;
44
+ }
45
+ interface FilterColumnsDataProps {
46
+ column_list: FilterColumnsListProps[];
47
+ operation_list: OperationMapProps;
48
+ saved_filter: FilterOperationListProps[];
49
+ }
50
+ interface FilterDropdownDataProps {
51
+ [key: string]: FilterOperationListProps[];
52
+ }
53
+ interface FilterDrawerProps {
54
+ tableStates: CraftTableOptionsProps;
55
+ open?: boolean;
56
+ onClose?: () => void;
57
+ onDeleteFilter?: () => void;
58
+ onSaveFilter?: (name: string) => void;
59
+ onUpdateFilter?: (name: string) => void;
60
+ columnsData: FilterColumnsDataProps;
61
+ dropdownData: FilterDropdownDataProps;
62
+ defaultFilters?: Array<{
63
+ filter_attribute: string;
64
+ filter_operator: string;
65
+ filter_value: string;
66
+ }>;
67
+ savedFilters?: Array<{
68
+ label: string;
69
+ value: string;
70
+ }>;
71
+ tableData?: {
72
+ entity_list: any[];
73
+ };
74
+ }
75
+ interface FilterStateProps {
76
+ filter_attribute: string;
77
+ filter_operator: string;
78
+ filter_value: string | string[];
79
+ }
80
+ interface FilterMasterStateProps {
81
+ attributes: {
82
+ selected: string;
83
+ radio: string;
84
+ };
85
+ saved_filters: {
86
+ selectedId: string;
87
+ selectedName: string;
88
+ };
89
+ activeFilterTabIndex: number;
90
+ }
91
+
5
92
  interface CraftTableOptionsProps {
6
93
  sorting: SortingState;
7
94
  setSorting: Dispatch<SetStateAction<SortingState>>;
@@ -15,8 +102,16 @@ interface CraftTableOptionsProps {
15
102
  setExpanded: Dispatch<SetStateAction<ExpandedState>>;
16
103
  wrapColumns: Record<string, boolean>;
17
104
  setWrapColumns: Dispatch<SetStateAction<Record<string, boolean>>>;
18
- globalWrapColumns: boolean | null;
19
- setGlobalWrapColumns: Dispatch<SetStateAction<boolean | null>>;
105
+ filters: FilterStateProps[];
106
+ setFilters: Dispatch<SetStateAction<FilterStateProps[]>>;
107
+ savedFilterEditValue: string | number;
108
+ setSavedFilterEditValue: Dispatch<SetStateAction<string | number>>;
109
+ filterToDelete: FilterOperationListProps | null;
110
+ setFilterToDelete: Dispatch<SetStateAction<FilterOperationListProps | null>>;
111
+ filterSelectedAttributeValue: string;
112
+ setFilterSelectedAttributeValue: Dispatch<SetStateAction<string>>;
113
+ filterMaster: FilterMasterStateProps | null;
114
+ setFilterMaster: Dispatch<SetStateAction<FilterMasterStateProps | null>>;
20
115
  }
21
116
  interface CraftTableFeatureProps {
22
117
  enableSorting?: boolean;
@@ -47,20 +142,19 @@ interface LoadingOptionsProps {
47
142
  loadingComponent?: React.ReactNode;
48
143
  }
49
144
  interface TopbarOptionsProps {
145
+ tableStates: CraftTableOptionsProps;
50
146
  leftSideComponent?: React.ReactNode;
51
147
  rightSideComponent?: React.ReactNode;
52
- showFullscreenToggle?: boolean;
53
148
  showColumnToggle?: boolean;
54
149
  showCompactTableToggle?: boolean;
55
150
  showChangeLayoutToggle?: boolean;
56
151
  viewMoreToggle?: boolean;
57
- showAddNewButton?: boolean;
58
152
  showSearch?: boolean;
59
- showFilter?: boolean;
60
- showCustomizationToggle?: boolean;
61
- tableStates: CraftTableOptionsProps;
153
+ showSortingToggle?: boolean;
154
+ showFilterToggle?: boolean;
62
155
  searchValue?: string;
63
156
  onSearchChange?: (val: string) => void;
157
+ filterOptions?: FilterDrawerProps;
64
158
  }
65
159
  interface CustomRenderContext<T> {
66
160
  value: unknown;