rez-table-listing-mui 1.3.38 → 1.3.39
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/index.d.ts +2 -45
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/listing/components/filter/components/forms/components/Date.tsx +25 -4
- package/src/listing/components/filter/components/forms/components/filter-criteria-list.tsx +0 -1
- package/src/listing/components/filter/components/forms/index.tsx +13 -582
- package/src/listing/components/filter/components/main-filter.tsx +6 -6
- package/src/listing/components/filter/components/saved-edit-filter.tsx +3 -5
- package/src/listing/components/filter/components/saved-filter.tsx +124 -300
- package/src/listing/components/filter/components/search/index.tsx +0 -1
- package/src/listing/components/filter/components/single-filter-rendering.tsx +3 -3
- package/src/listing/components/filter/index.tsx +5 -130
- package/src/listing/components/login/index.tsx +6 -3
- package/src/listing/libs/hooks/useEntityTableAPI.tsx +0 -3
- package/src/listing/libs/utils/common.ts +0 -1
- package/src/listing/types/filter.ts +1 -48
- package/src/view/FIlterWrapper.tsx +0 -15
- package/src/view/ListingView.tsx +1 -1
- package/src/listing/components/common/saved-filter-modal/index.tsx +0 -517
|
@@ -15,7 +15,6 @@ import AttributesFilter from "./components/attributes-filter";
|
|
|
15
15
|
import { filterStyles } from "./style";
|
|
16
16
|
import { deepMergeObjects } from "../../libs/utils/deep-merge-objects";
|
|
17
17
|
import SingleFilterRendering from "./components/single-filter-rendering";
|
|
18
|
-
import SavedFilterModalView from "../common/saved-filter-modal";
|
|
19
18
|
|
|
20
19
|
export function TableFilter({
|
|
21
20
|
onClose,
|
|
@@ -33,8 +32,6 @@ export function TableFilter({
|
|
|
33
32
|
|
|
34
33
|
// remove this
|
|
35
34
|
const [saveFilterModalOpen, setSaveFilterModalOpen] = useState(false);
|
|
36
|
-
const [savedFilterModalOpen, setSavedFilterModalOpen] = useState(false);
|
|
37
|
-
|
|
38
35
|
const [deleteFilterModalOpen, setDeleteFilterModalOpen] = useState(false);
|
|
39
36
|
|
|
40
37
|
const [searchTerm, setSearchTerm] = useState<string>("");
|
|
@@ -117,97 +114,6 @@ export function TableFilter({
|
|
|
117
114
|
type: "text",
|
|
118
115
|
};
|
|
119
116
|
|
|
120
|
-
const hasSavedFilterRecords = Boolean(columnsData?.saved_filter?.length);
|
|
121
|
-
|
|
122
|
-
// const handleSaveFilterButtonClick = () => {
|
|
123
|
-
// if (editMode) {
|
|
124
|
-
// setSavedFilterModalOpen(true);
|
|
125
|
-
// return;
|
|
126
|
-
// }
|
|
127
|
-
|
|
128
|
-
// setSavedFilterModalOpen(true);
|
|
129
|
-
// };
|
|
130
|
-
|
|
131
|
-
// const handleSaveFilterButtonClick = () => {
|
|
132
|
-
// // Reset filterMaster fields when creating a new filter
|
|
133
|
-
// if (!editMode) {
|
|
134
|
-
// setFilterMaster((prev) => ({
|
|
135
|
-
// ...prev,
|
|
136
|
-
// saved_filters: {
|
|
137
|
-
// selectedId: "",
|
|
138
|
-
// selectedName: "",
|
|
139
|
-
// selectedCode: "",
|
|
140
|
-
// description: "",
|
|
141
|
-
// shareWithTeam: false,
|
|
142
|
-
// allowTeamEdit: false,
|
|
143
|
-
// },
|
|
144
|
-
// }));
|
|
145
|
-
// }
|
|
146
|
-
|
|
147
|
-
// setSavedFilterModalOpen(true);
|
|
148
|
-
// };
|
|
149
|
-
|
|
150
|
-
const handleSaveFilterButtonClick = () => {
|
|
151
|
-
if (!editMode) {
|
|
152
|
-
setFilterMaster((prev) => {
|
|
153
|
-
if (!prev) return prev;
|
|
154
|
-
|
|
155
|
-
return {
|
|
156
|
-
...prev,
|
|
157
|
-
saved_filters: {
|
|
158
|
-
...prev.saved_filters,
|
|
159
|
-
shareWithTeam: false,
|
|
160
|
-
allowTeamEdit: false,
|
|
161
|
-
},
|
|
162
|
-
};
|
|
163
|
-
});
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
setSavedFilterModalOpen(true);
|
|
167
|
-
};
|
|
168
|
-
|
|
169
|
-
const handleSavedFilterModalSave = () => {
|
|
170
|
-
const selectedId = filterMaster?.saved_filters?.selectedId;
|
|
171
|
-
const selectedName = filterMaster?.saved_filters?.selectedName || "";
|
|
172
|
-
const description = filterMaster?.saved_filters?.description || "";
|
|
173
|
-
|
|
174
|
-
const selectedCode = filterMaster?.saved_filters?.selectedCode;
|
|
175
|
-
|
|
176
|
-
const newFilterMasterState = {
|
|
177
|
-
...filterMaster,
|
|
178
|
-
saved_filters: {
|
|
179
|
-
...(filterMaster?.saved_filters ?? {}),
|
|
180
|
-
selectedId,
|
|
181
|
-
selectedName,
|
|
182
|
-
selectedCode,
|
|
183
|
-
description,
|
|
184
|
-
},
|
|
185
|
-
} as FilterMasterStateProps;
|
|
186
|
-
|
|
187
|
-
setFilterMaster(newFilterMasterState);
|
|
188
|
-
|
|
189
|
-
const newState = {
|
|
190
|
-
filterMaster: newFilterMasterState,
|
|
191
|
-
filters,
|
|
192
|
-
};
|
|
193
|
-
|
|
194
|
-
onChangeFunction && onChangeFunction(newState);
|
|
195
|
-
|
|
196
|
-
if (editMode) {
|
|
197
|
-
onUpdateFilter && onUpdateFilter(selectedName);
|
|
198
|
-
const isSingleSavedFilterEditMode =
|
|
199
|
-
filterComponentOptions?.tabOptions?.savedFilter?.editMode;
|
|
200
|
-
if (!isSingleSavedFilterEditMode) {
|
|
201
|
-
setEditMode(false);
|
|
202
|
-
}
|
|
203
|
-
} else {
|
|
204
|
-
onSaveFilter && onSaveFilter(selectedName);
|
|
205
|
-
setTabValue(1);
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
setSavedFilterModalOpen(false);
|
|
209
|
-
};
|
|
210
|
-
|
|
211
117
|
const handleTabChange = (_: React.SyntheticEvent, newValue: number) => {
|
|
212
118
|
const tabType = tabMapping[newValue]?.label;
|
|
213
119
|
|
|
@@ -216,22 +122,6 @@ export function TableFilter({
|
|
|
216
122
|
}
|
|
217
123
|
|
|
218
124
|
setTabValue(newValue);
|
|
219
|
-
if (newValue === 0) {
|
|
220
|
-
setFilterMaster((prev) => {
|
|
221
|
-
if (!prev) return prev;
|
|
222
|
-
return {
|
|
223
|
-
...prev,
|
|
224
|
-
saved_filters: {
|
|
225
|
-
...(prev.saved_filters ?? {}),
|
|
226
|
-
selectedId: "",
|
|
227
|
-
selectedName: "",
|
|
228
|
-
description: "",
|
|
229
|
-
is_shared: false,
|
|
230
|
-
is_editable: false,
|
|
231
|
-
},
|
|
232
|
-
};
|
|
233
|
-
});
|
|
234
|
-
}
|
|
235
125
|
|
|
236
126
|
if (tabType === "Filter") {
|
|
237
127
|
setEditMode(false);
|
|
@@ -254,12 +144,9 @@ export function TableFilter({
|
|
|
254
144
|
|
|
255
145
|
if (tabType?.label === "Saved Filter") {
|
|
256
146
|
patches.saved_filters = {
|
|
257
|
-
...(filterMaster?.saved_filters ?? {}),
|
|
258
147
|
selectedId: "",
|
|
259
148
|
selectedName: "",
|
|
260
149
|
selectedCode: "",
|
|
261
|
-
is_shared: undefined,
|
|
262
|
-
is_editable: undefined,
|
|
263
150
|
};
|
|
264
151
|
} else if (tabType?.label === "Attributes") {
|
|
265
152
|
patches.attributes = { radio: [], selected: "" };
|
|
@@ -331,7 +218,7 @@ export function TableFilter({
|
|
|
331
218
|
{...commonProps}
|
|
332
219
|
{...savedFilterProps}
|
|
333
220
|
{...attributesProps}
|
|
334
|
-
|
|
221
|
+
setSavedFilterModalOpen={setSaveFilterModalOpen}
|
|
335
222
|
filterComponentOptions={finalComponentOptions}
|
|
336
223
|
/>
|
|
337
224
|
)}
|
|
@@ -344,7 +231,7 @@ export function TableFilter({
|
|
|
344
231
|
>
|
|
345
232
|
<MainFilter
|
|
346
233
|
{...commonProps}
|
|
347
|
-
|
|
234
|
+
setSavedFilterModalOpen={setSaveFilterModalOpen}
|
|
348
235
|
filterComponentOptions={finalComponentOptions}
|
|
349
236
|
/>
|
|
350
237
|
</CustomTabPanel>
|
|
@@ -359,7 +246,7 @@ export function TableFilter({
|
|
|
359
246
|
<SavedFilter
|
|
360
247
|
{...commonProps}
|
|
361
248
|
{...savedFilterProps}
|
|
362
|
-
|
|
249
|
+
setSavedFilterModalOpen={setSaveFilterModalOpen}
|
|
363
250
|
filterComponentOptions={finalComponentOptions}
|
|
364
251
|
/>
|
|
365
252
|
</CustomTabPanel>
|
|
@@ -411,17 +298,14 @@ export function TableFilter({
|
|
|
411
298
|
inputValue || filterMaster?.saved_filters?.selectedName;
|
|
412
299
|
const selectedCode =
|
|
413
300
|
filterMaster?.saved_filters?.selectedCode;
|
|
414
|
-
const description =
|
|
415
|
-
inputValue || filterMaster?.saved_filters?.description;
|
|
416
301
|
|
|
417
302
|
const newFilterMasterState = {
|
|
418
303
|
...filterMaster,
|
|
419
304
|
saved_filters: {
|
|
420
|
-
...
|
|
305
|
+
...filterMaster?.attributes,
|
|
421
306
|
selectedId,
|
|
422
307
|
selectedName,
|
|
423
308
|
selectedCode,
|
|
424
|
-
description,
|
|
425
309
|
},
|
|
426
310
|
} as FilterMasterStateProps;
|
|
427
311
|
|
|
@@ -545,7 +429,7 @@ export function TableFilter({
|
|
|
545
429
|
const newFilterMasterState = {
|
|
546
430
|
...filterMaster,
|
|
547
431
|
saved_filters: {
|
|
548
|
-
...
|
|
432
|
+
...filterMaster?.attributes,
|
|
549
433
|
selectedId,
|
|
550
434
|
selectedName,
|
|
551
435
|
selectedCode,
|
|
@@ -636,15 +520,6 @@ export function TableFilter({
|
|
|
636
520
|
maxWidth="xs"
|
|
637
521
|
/>
|
|
638
522
|
)}
|
|
639
|
-
<SavedFilterModalView
|
|
640
|
-
open={savedFilterModalOpen}
|
|
641
|
-
onClose={() => setSavedFilterModalOpen(false)}
|
|
642
|
-
onSave={handleSavedFilterModalSave}
|
|
643
|
-
filterMaster={tableStates.filterMaster}
|
|
644
|
-
setFilterMaster={tableStates.setFilterMaster}
|
|
645
|
-
hasSavedFilters={hasSavedFilterRecords}
|
|
646
|
-
columnsData={columnsData}
|
|
647
|
-
/>
|
|
648
523
|
</Box>
|
|
649
524
|
);
|
|
650
525
|
}
|
|
@@ -7,9 +7,9 @@ const LoginButton = () => {
|
|
|
7
7
|
|
|
8
8
|
const handleLogin = async () => {
|
|
9
9
|
setLoading(true);
|
|
10
|
-
const api_url = "https://api.eth-qa.rezolut.in/api/
|
|
11
|
-
// const api_url = "http://localhost:
|
|
12
|
-
const email_id = "
|
|
10
|
+
const api_url = "https://api.eth-qa.rezolut.in/api/admin/auth";
|
|
11
|
+
// const api_url = "http://localhost:4011/api/admin/auth";
|
|
12
|
+
const email_id = "kartik.shetty@rezolut.in";
|
|
13
13
|
const email_otp = "123456";
|
|
14
14
|
const sub_domain = "universal";
|
|
15
15
|
|
|
@@ -21,6 +21,8 @@ const LoginButton = () => {
|
|
|
21
21
|
subdomain: sub_domain,
|
|
22
22
|
})
|
|
23
23
|
.then(async (emailAPIResponse) => {
|
|
24
|
+
console.log(emailAPIResponse.data);
|
|
25
|
+
|
|
24
26
|
await axios
|
|
25
27
|
.post(`${api_url}/sso/otp/generate`, {
|
|
26
28
|
identifier: email_id,
|
|
@@ -38,6 +40,7 @@ const LoginButton = () => {
|
|
|
38
40
|
subdomain: "universal",
|
|
39
41
|
})
|
|
40
42
|
.then((otpVerifyResponse) => {
|
|
43
|
+
console.log(otpVerifyResponse.data);
|
|
41
44
|
const token = otpVerifyResponse.data.accessToken;
|
|
42
45
|
|
|
43
46
|
if (token) {
|
|
@@ -163,12 +163,9 @@ export const useDeleteFilterAPI = (tableStates: CraftTableOptionsProps) => {
|
|
|
163
163
|
const newFilterMasterState = {
|
|
164
164
|
...filterMaster,
|
|
165
165
|
saved_filters: {
|
|
166
|
-
...(filterMaster?.saved_filters ?? {}),
|
|
167
166
|
selectedId: "",
|
|
168
167
|
selectedName: "",
|
|
169
168
|
selectedCode: "",
|
|
170
|
-
shareWithTeam: undefined,
|
|
171
|
-
allowTeamEdit: undefined,
|
|
172
169
|
},
|
|
173
170
|
activeFilterTabIndex: -1,
|
|
174
171
|
};
|
|
@@ -80,7 +80,6 @@ export function customDebounce<T extends (...args: any[]) => any>(
|
|
|
80
80
|
const ENVIRONMENT = "uat";
|
|
81
81
|
export const ENTITY_TYPE = "LEAD";
|
|
82
82
|
export const MAPPED_ENTITY_TYPE = "LYPR"; // LAP OR LYPR
|
|
83
|
-
export const USER_ID = 226;
|
|
84
83
|
|
|
85
84
|
const environments = {
|
|
86
85
|
adm_dev: "http://localhost:4010/api",
|
|
@@ -15,38 +15,6 @@ export interface FilterOperationListProps {
|
|
|
15
15
|
code: string;
|
|
16
16
|
label: string;
|
|
17
17
|
value: string;
|
|
18
|
-
is_shared: boolean;
|
|
19
|
-
is_editable: boolean;
|
|
20
|
-
is_owner: boolean;
|
|
21
|
-
created_by: string;
|
|
22
|
-
// user_id: number;
|
|
23
|
-
description: string | null;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
export interface FilterSharedListProps {
|
|
27
|
-
created_date: string; // ISO date string
|
|
28
|
-
entity_type: string;
|
|
29
|
-
id: string;
|
|
30
|
-
name: string;
|
|
31
|
-
status: string;
|
|
32
|
-
parent_type: string | null;
|
|
33
|
-
parent_id: string | number | null;
|
|
34
|
-
code: string;
|
|
35
|
-
created_by: string;
|
|
36
|
-
modified_by: string | null;
|
|
37
|
-
modified_date: string | null;
|
|
38
|
-
enterprise_id: number;
|
|
39
|
-
organization_id: number;
|
|
40
|
-
appcode: string | null;
|
|
41
|
-
level_id: string;
|
|
42
|
-
level_type: string;
|
|
43
|
-
mapped_entity_type: string;
|
|
44
|
-
user_id: number;
|
|
45
|
-
is_default: boolean;
|
|
46
|
-
filter_scope: string;
|
|
47
|
-
is_shared: boolean;
|
|
48
|
-
is_editable: boolean | string; // API gives "true" (string) so support both
|
|
49
|
-
description: string | null;
|
|
50
18
|
}
|
|
51
19
|
|
|
52
20
|
export type FilterInputDataTypes =
|
|
@@ -90,7 +58,6 @@ export interface FilterColumnsDataProps {
|
|
|
90
58
|
column_list: FilterColumnsListProps[];
|
|
91
59
|
operation_list: OperationMapProps;
|
|
92
60
|
saved_filter: FilterOperationListProps[];
|
|
93
|
-
shared_filter: FilterOperationListProps[];
|
|
94
61
|
}
|
|
95
62
|
|
|
96
63
|
export interface FilterDropdownDataProps {
|
|
@@ -248,7 +215,6 @@ export interface createSavedFilterPayload {
|
|
|
248
215
|
enterprise_id?: number;
|
|
249
216
|
user_id?: number;
|
|
250
217
|
is_default: boolean;
|
|
251
|
-
description: string | null;
|
|
252
218
|
mapped_entity_type: string;
|
|
253
219
|
status?: string;
|
|
254
220
|
entity_type: string;
|
|
@@ -268,7 +234,6 @@ export interface updateSavedFilterPayload {
|
|
|
268
234
|
name: string;
|
|
269
235
|
is_default: boolean;
|
|
270
236
|
id: string | number;
|
|
271
|
-
|
|
272
237
|
status?: string;
|
|
273
238
|
entity_type: string;
|
|
274
239
|
mapped_entity_type: string;
|
|
@@ -277,14 +242,12 @@ export interface updateSavedFilterPayload {
|
|
|
277
242
|
|
|
278
243
|
export interface FilterFormComponentProps {
|
|
279
244
|
columnsData: FilterColumnsDataProps;
|
|
280
|
-
saved_filter?: any;
|
|
281
|
-
shared_filter?: any;
|
|
282
245
|
dropdownData: FilterDropdownDataProps;
|
|
283
246
|
tableStates: CraftTableOptionsProps;
|
|
284
247
|
editMode?: boolean;
|
|
285
248
|
setEditMode?: React.Dispatch<React.SetStateAction<boolean>>;
|
|
286
249
|
setDeleteFilterModalOpen?: React.Dispatch<React.SetStateAction<boolean>>;
|
|
287
|
-
|
|
250
|
+
setSavedFilterModalOpen?: React.Dispatch<React.SetStateAction<boolean>>;
|
|
288
251
|
tabValue?: number;
|
|
289
252
|
onChangeFunction: ({
|
|
290
253
|
updatedFilters,
|
|
@@ -293,11 +256,6 @@ export interface FilterFormComponentProps {
|
|
|
293
256
|
filterComponentOptions?: FilterComponentOptions;
|
|
294
257
|
}
|
|
295
258
|
|
|
296
|
-
export interface SavedFilterSharingPreference {
|
|
297
|
-
shareWithTeam?: boolean;
|
|
298
|
-
allowTeamEdit?: boolean;
|
|
299
|
-
}
|
|
300
|
-
|
|
301
259
|
export interface FilterMasterStateProps {
|
|
302
260
|
attributes: {
|
|
303
261
|
selected: string;
|
|
@@ -307,13 +265,8 @@ export interface FilterMasterStateProps {
|
|
|
307
265
|
selectedId: string;
|
|
308
266
|
selectedName: string;
|
|
309
267
|
selectedCode?: string;
|
|
310
|
-
description?: string;
|
|
311
|
-
is_shared?: boolean;
|
|
312
|
-
is_editable?: boolean;
|
|
313
|
-
is_owner?: boolean;
|
|
314
268
|
};
|
|
315
269
|
activeFilterTabIndex: number;
|
|
316
|
-
shared_filters_meta?: Record<string, SavedFilterSharingPreference>;
|
|
317
270
|
}
|
|
318
271
|
|
|
319
272
|
export interface AttributesFilterProps {
|
|
@@ -87,9 +87,6 @@ const CraftTableFilterWrapper = ({
|
|
|
87
87
|
// API to handle saving a filter
|
|
88
88
|
const handleSaveFilter = (name: string) => {
|
|
89
89
|
const quickFilter = filters.map((f: any) => ({ ...f }));
|
|
90
|
-
const shareWithTeam = filterMaster?.saved_filters?.is_shared ?? false;
|
|
91
|
-
const allowTeamEdit = filterMaster?.saved_filters?.is_editable ?? false;
|
|
92
|
-
const description = filterMaster?.saved_filters?.description ?? "";
|
|
93
90
|
|
|
94
91
|
const payload = {
|
|
95
92
|
name,
|
|
@@ -97,10 +94,7 @@ const CraftTableFilterWrapper = ({
|
|
|
97
94
|
mapped_entity_type: ENTITY_TYPE, // For that entity type
|
|
98
95
|
status: "ACTIVE",
|
|
99
96
|
entity_type: "SFM", // FIXED entity type
|
|
100
|
-
description: description,
|
|
101
97
|
filterDetails: quickFilter,
|
|
102
|
-
is_shared: shareWithTeam,
|
|
103
|
-
is_editable: allowTeamEdit,
|
|
104
98
|
};
|
|
105
99
|
const entity_type = "SFM";
|
|
106
100
|
savedMutation.mutate(
|
|
@@ -117,9 +111,6 @@ const CraftTableFilterWrapper = ({
|
|
|
117
111
|
...prev?.saved_filters,
|
|
118
112
|
selectedId: newFilterId.toString(),
|
|
119
113
|
selectedName: name,
|
|
120
|
-
description: description,
|
|
121
|
-
is_shared: shareWithTeam,
|
|
122
|
-
is_editable: allowTeamEdit,
|
|
123
114
|
},
|
|
124
115
|
activeFilterTabIndex: 1,
|
|
125
116
|
} as FilterMasterStateProps)
|
|
@@ -136,9 +127,6 @@ const CraftTableFilterWrapper = ({
|
|
|
136
127
|
filter_operator: f.filter_operator,
|
|
137
128
|
filter_value: f.filter_value,
|
|
138
129
|
}));
|
|
139
|
-
const shareWithTeam = filterMaster?.saved_filters?.is_shared ?? false;
|
|
140
|
-
const allowTeamEdit = filterMaster?.saved_filters?.is_editable ?? false;
|
|
141
|
-
const description = filterMaster?.saved_filters?.description ?? "";
|
|
142
130
|
|
|
143
131
|
const payload = {
|
|
144
132
|
name: filterMaster?.saved_filters?.selectedName, // Name of the filter
|
|
@@ -146,11 +134,8 @@ const CraftTableFilterWrapper = ({
|
|
|
146
134
|
id: filterMaster?.saved_filters?.selectedId,
|
|
147
135
|
mapped_entity_type: ENTITY_TYPE,
|
|
148
136
|
status: "ACTIVE",
|
|
149
|
-
description: description,
|
|
150
137
|
entity_type: "SFM",
|
|
151
138
|
filterDetails: quickFilter,
|
|
152
|
-
is_shared: shareWithTeam, // Now true/false from state
|
|
153
|
-
is_editable: allowTeamEdit,
|
|
154
139
|
};
|
|
155
140
|
const entity_type = "SFM";
|
|
156
141
|
updateMutation.mutate({ entity_type, payload });
|