sccoreui 6.2.40 → 6.2.41

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 (103) hide show
  1. package/dist/App.js +0 -1
  2. package/dist/components/ag-grid/AgGrid.js +13 -2
  3. package/dist/components/ag-grid/parent-for-grid.js +11 -5
  4. package/dist/components/form/form-fields/form-fields.js +4 -4
  5. package/dist/pages/aggrid/AgGrid.js +740 -0
  6. package/dist/pages/aggrid/BulkAction.js +7 -0
  7. package/dist/pages/aggrid/RowGroupTrail.js +114 -0
  8. package/dist/pages/aggrid/fakeServer.js +95 -0
  9. package/dist/pages/aggrid/id-cell.js +9 -0
  10. package/dist/pages/aggrid/interface.js +2 -0
  11. package/dist/pages/avatar/avatar.js +338 -0
  12. package/dist/pages/badges/badge.js +73 -0
  13. package/dist/pages/breadcrumb/breadcrumb.js +14 -0
  14. package/dist/pages/button/button.js +10 -0
  15. package/dist/pages/button-group/button-group.js +10 -0
  16. package/dist/pages/chart/chart.js +257 -0
  17. package/dist/pages/checkbox/checkbox.js +26 -0
  18. package/dist/pages/checkbox-group/checkbox-group-component.js +21 -0
  19. package/dist/pages/color-picker/color-picker.js +13 -0
  20. package/dist/pages/content-dividers/content-dividers.js +11 -0
  21. package/dist/pages/custom-color-picker/custom-color-picker.js +12 -0
  22. package/dist/pages/custom-multiselect/CustomMultiSelect.js +37 -0
  23. package/dist/pages/date-picker/date-picker.js +20 -0
  24. package/dist/pages/dropdown/dropdown-component.js +39 -0
  25. package/dist/pages/file-upload/file-upload.js +34 -0
  26. package/dist/pages/flex.js +15 -0
  27. package/dist/pages/formulaTemplate/formulaTemplate.js +154 -0
  28. package/dist/pages/frolaTextEditor/froala-text-editor.js +12 -0
  29. package/dist/pages/home.js +50 -0
  30. package/dist/pages/input/input-text.js +112 -0
  31. package/dist/pages/list-box-dropdown/listboxdropdown.js +55 -0
  32. package/dist/pages/loader-indicator/loader-indicator.js +10 -0
  33. package/dist/pages/mega-mennu/mega-menu.js +84 -0
  34. package/dist/pages/multi-select-dropdown/multi-select-dropdown.js +51 -0
  35. package/dist/pages/not-found/not-found.js +10 -0
  36. package/dist/pages/paginator/pagination.js +122 -0
  37. package/dist/pages/progress-bar/progress-bar.js +27 -0
  38. package/dist/pages/progress-steps/progress-steps.js +24 -0
  39. package/dist/pages/radio-button/radio-button-component.js +11 -0
  40. package/dist/pages/shadows/shadows.js +7 -0
  41. package/dist/pages/slideout-menus/slideout-menus.js +104 -0
  42. package/dist/pages/sliders/slider.js +39 -0
  43. package/dist/pages/tabels/table-data.js +2193 -0
  44. package/dist/pages/tabels/table.js +98 -0
  45. package/dist/pages/tabs/tabs.js +9 -0
  46. package/dist/pages/tags/tags.js +70 -0
  47. package/dist/pages/testingcomponents/TestComponent.js +82 -0
  48. package/dist/pages/testingcomponents/data.js +30 -0
  49. package/dist/pages/toast/toast.js +47 -0
  50. package/dist/pages/toggle/toggle.js +10 -0
  51. package/dist/pages/tooltip/tooltip.js +13 -0
  52. package/dist/pages/treeDropdownSelect/treedropdowselect.js +34 -0
  53. package/dist/pages/types/type.js +2 -0
  54. package/dist/types/pages/aggrid/AgGrid.d.ts +2 -0
  55. package/dist/types/pages/aggrid/BulkAction.d.ts +2 -0
  56. package/dist/types/pages/aggrid/RowGroupTrail.d.ts +4 -0
  57. package/dist/types/pages/aggrid/fakeServer.d.ts +7 -0
  58. package/dist/types/pages/aggrid/id-cell.d.ts +2 -0
  59. package/dist/types/pages/aggrid/interface.d.ts +12 -0
  60. package/dist/types/pages/avatar/avatar.d.ts +2 -0
  61. package/dist/types/pages/badges/badge.d.ts +3 -0
  62. package/dist/types/pages/breadcrumb/breadcrumb.d.ts +2 -0
  63. package/dist/types/pages/button/button.d.ts +2 -0
  64. package/dist/types/pages/button-group/button-group.d.ts +2 -0
  65. package/dist/types/pages/chart/chart.d.ts +2 -0
  66. package/dist/types/pages/checkbox/checkbox.d.ts +2 -0
  67. package/dist/types/pages/checkbox-group/checkbox-group-component.d.ts +3 -0
  68. package/dist/types/pages/color-picker/color-picker.d.ts +2 -0
  69. package/dist/types/pages/content-dividers/content-dividers.d.ts +2 -0
  70. package/dist/types/pages/custom-color-picker/custom-color-picker.d.ts +2 -0
  71. package/dist/types/pages/custom-multiselect/CustomMultiSelect.d.ts +2 -0
  72. package/dist/types/pages/date-picker/date-picker.d.ts +2 -0
  73. package/dist/types/pages/dropdown/dropdown-component.d.ts +2 -0
  74. package/dist/types/pages/file-upload/file-upload.d.ts +3 -0
  75. package/dist/types/pages/flex.d.ts +2 -0
  76. package/dist/types/pages/formulaTemplate/formulaTemplate.d.ts +2 -0
  77. package/dist/types/pages/frolaTextEditor/froala-text-editor.d.ts +2 -0
  78. package/dist/types/pages/home.d.ts +2 -0
  79. package/dist/types/pages/input/input-text.d.ts +3 -0
  80. package/dist/types/pages/list-box-dropdown/listboxdropdown.d.ts +2 -0
  81. package/dist/types/pages/loader-indicator/loader-indicator.d.ts +3 -0
  82. package/dist/types/pages/mega-mennu/mega-menu.d.ts +2 -0
  83. package/dist/types/pages/multi-select-dropdown/multi-select-dropdown.d.ts +2 -0
  84. package/dist/types/pages/not-found/not-found.d.ts +2 -0
  85. package/dist/types/pages/paginator/pagination.d.ts +2 -0
  86. package/dist/types/pages/progress-bar/progress-bar.d.ts +3 -0
  87. package/dist/types/pages/progress-steps/progress-steps.d.ts +2 -0
  88. package/dist/types/pages/radio-button/radio-button-component.d.ts +2 -0
  89. package/dist/types/pages/shadows/shadows.d.ts +2 -0
  90. package/dist/types/pages/slideout-menus/slideout-menus.d.ts +2 -0
  91. package/dist/types/pages/sliders/slider.d.ts +1 -0
  92. package/dist/types/pages/tabels/table-data.d.ts +3 -0
  93. package/dist/types/pages/tabels/table.d.ts +2 -0
  94. package/dist/types/pages/tabs/tabs.d.ts +3 -0
  95. package/dist/types/pages/tags/tags.d.ts +3 -0
  96. package/dist/types/pages/testingcomponents/TestComponent.d.ts +4 -0
  97. package/dist/types/pages/testingcomponents/data.d.ts +7 -0
  98. package/dist/types/pages/toast/toast.d.ts +2 -0
  99. package/dist/types/pages/toggle/toggle.d.ts +2 -0
  100. package/dist/types/pages/tooltip/tooltip.d.ts +2 -0
  101. package/dist/types/pages/treeDropdownSelect/treedropdowselect.d.ts +2 -0
  102. package/dist/types/pages/types/type.d.ts +64 -0
  103. package/package.json +1 -1
@@ -0,0 +1,740 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const constants_1 = require("../../components/ag-grid/constants");
6
+ const react_1 = require("react");
7
+ const BulkAction_1 = tslib_1.__importDefault(require("./BulkAction"));
8
+ const parent_for_grid_1 = tslib_1.__importDefault(require("../../components/ag-grid/parent-for-grid"));
9
+ const axios_1 = tslib_1.__importDefault(require("axios"));
10
+ // import { Dropdown } from "primereact/dropdown";
11
+ // import CustomDropDown from "../../components/ag-grid/custom-dropdown";
12
+ // import { FakeServer } from "./fakeServer";
13
+ // import IdCell from "./id-cell";
14
+ // import { Dropdown } from "primereact/dropdown";
15
+ // import { FilterDataType } from "../../components/ag-grid/constants";
16
+ const AgGridPage = () => {
17
+ const [rowData, setRowData] = (0, react_1.useState)([]);
18
+ const [shouldRefetch, setShouldRefetch] = (0, react_1.useState)(false);
19
+ const [defaultFilters, setDefaultFilters] = (0, react_1.useState)([]);
20
+ const [storeResult, setStoreResult] = (0, react_1.useState)();
21
+ const [updateRowData, setUpdateRowData] = (0, react_1.useState)({
22
+ rowData: [],
23
+ shouldUpdate: false,
24
+ });
25
+ const [editMode, setEditMode] = (0, react_1.useState)(false);
26
+ const [editedRecords, setEditedRecords] = (0, react_1.useState)([]);
27
+ const [emptyCheckboxStatus, setEmptyCheckboxStatus] = (0, react_1.useState)(false);
28
+ // const deleteComponent = () => {
29
+ // return (
30
+ // <div>
31
+ // <button className="bg-white" onClick={() => setShouldRefetch(true)}>
32
+ // Delete
33
+ // </button>
34
+ // </div>
35
+ // );
36
+ // };
37
+ // const AdvancedFilter = () => {
38
+ // return <p>Advnaced Filter</p>;
39
+ // };
40
+ const initialConditions = {
41
+ displayFilter: true,
42
+ displayAdvancedFilter: false,
43
+ displaySort: true,
44
+ displaySearch: true,
45
+ displayRefresh: true,
46
+ displayRemoveItems: true,
47
+ displayBulkAction: true,
48
+ enableViewCreate: true,
49
+ displaySidePanel: true,
50
+ enableFillHandle: true,
51
+ displayBulkEdit: true,
52
+ displayDiscardEdit: false,
53
+ displaySaveEditButton: false,
54
+ displayRecords: false,
55
+ displayEditHeading: false,
56
+ displayFeaturesHeader: true,
57
+ displayCheckboxOnRight: false,
58
+ displayGroupCount: true,
59
+ displayCheckboxForGroupChild: true,
60
+ displayCheckboxForGroups: true,
61
+ displayRowGroupingElement: true,
62
+ isGridAutoHeight: false
63
+ };
64
+ const [conditionsToDisplay, setConditionsToDisplay] = (0, react_1.useState)(initialConditions);
65
+ // const updateRows = (row) => {
66
+ // setUpdateRowData({ rowData: row, shouldUpdate: true })
67
+ // }
68
+ // const statusDropDwon = (params) => {
69
+ // return <Dropdown
70
+ // onChange={(e) => { params.data.status = e.value, console.log(e.value, 'value updating on change'), updateRows(params.data) }}
71
+ // value={params.data?.status}
72
+ // options={[{ id: 1, label: "Draft", value: 1 },
73
+ // { id: 2, label: "Active", value: 2 },
74
+ // {
75
+ // id: 3,
76
+ // label: "Inactive",
77
+ // value: 3,
78
+ // }]}
79
+ // />
80
+ // }
81
+ const [shouldClearFilters, setShouldClearFilters] = (0, react_1.useState)(false);
82
+ // Callback for remove button click
83
+ const removeCallBack = (featureDetails) => {
84
+ console.log(featureDetails, "feature details in products on remove click");
85
+ };
86
+ // const groupColumns = [
87
+ // {
88
+ // id: "1",
89
+ // seq: 1,
90
+ // field: "rank",
91
+ // headerName: "rank",
92
+ // rowGroup: true,
93
+ // },
94
+ // {
95
+ // id: "2",
96
+ // seq: 2,
97
+ // field: "name",
98
+ // headerName: "Name",
99
+ // },
100
+ // ];
101
+ const [columnDefs] = (0, react_1.useState)(
102
+ // [
103
+ // {
104
+ // seq: 1,
105
+ // // pinned: "left",
106
+ // // lockPosition: "left",
107
+ // // cellClass: "lock-pinned",
108
+ // // suppressMovable: true,
109
+ // enableHeaderCheckbox: true,
110
+ // hide: false,
111
+ // enableChildCheckbox: true,
112
+ // id: "101",
113
+ // headerName: "ID",
114
+ // field: "id",
115
+ // isSortable: false,
116
+ // code: 1,
117
+ // dataType: FilterDataType.STRING,
118
+ // editable: true,
119
+ // isFilterable: false,
120
+ // cellStyle: { borderRight: "1px solid #ccc" },
121
+ // visibleInPanel: true,
122
+ // cellRendererSelector: (params) => {
123
+ // if (params.node.rowPinned) {
124
+ // return {
125
+ // component: CustomDropDown,
126
+ // params: {
127
+ // style: { color: "#5577CC" },
128
+ // },
129
+ // };
130
+ // } else {
131
+ // return undefined;
132
+ // }
133
+ // },
134
+ // suppressFillHandle: true,
135
+ // isEditable: false
136
+ // },
137
+ // {
138
+ // id: "111",
139
+ // seq: 3,
140
+ // headerName: "Email",
141
+ // dataType: FilterDataType.STRING,
142
+ // editable: true,
143
+ // visibleInPanel: true,
144
+ // isFilterable: false,
145
+ // field: "email",
146
+ // suppressFillHandle: false,
147
+ // isEditable: true,
148
+ // filter: "agTextColumnFilter",
149
+ // },
150
+ // {
151
+ // seq: 3,
152
+ // filter: "agTextColumnFilter",
153
+ // // lockPinned: true,
154
+ // hide: false,
155
+ // id: "102",
156
+ // headerName: "Title",
157
+ // cellRendererSelector: (params) => {
158
+ // if (params.node.rowPinned) {
159
+ // return {
160
+ // component: CustomDropDown,
161
+ // params: {
162
+ // style: { color: "#5577CC" },
163
+ // },
164
+ // };
165
+ // } else {
166
+ // return undefined;
167
+ // }
168
+ // },
169
+ // field: "name",
170
+ // isSortable: true,
171
+ // code: 1,
172
+ // dataType: FilterDataType.STRING,
173
+ // editable: true,
174
+ // visibleInPanel: true,
175
+ // isFilterable: false,
176
+ // suppressFillHandle: false,
177
+ // isEditable: true
178
+ // },
179
+ // {
180
+ // seq: 2,
181
+ // hide: true,
182
+ // // lockPinned: true,
183
+ // id: "103",
184
+ // headerName: "Body",
185
+ // field: "body",
186
+ // isSortable: true,
187
+ // code: 1,
188
+ // dataType: FilterDataType.STRING,
189
+ // editable: true,
190
+ // visibleInPanel: true,
191
+ // isFilterable: true,
192
+ // suppressFillHandle: false,
193
+ // isEditable: true,
194
+ // filter: "agTextColumnFilter",
195
+ // },
196
+ // {
197
+ // seq: 4,
198
+ // hide: false,
199
+ // id: "104",
200
+ // headerName: "Status",
201
+ // field: "status",
202
+ // isSortable: true,
203
+ // visibleInPanel: true,
204
+ // columnType: "single",
205
+ // filter: true,
206
+ // rowGroup: false,
207
+ // filterParams: {
208
+ // values: [
209
+ // 1,
210
+ // 2,
211
+ // 3
212
+ // ]
213
+ // },
214
+ // options: [
215
+ // { id: 1, label: "Draft", value: 1 },
216
+ // { id: 2, label: "Active", value: 2 },
217
+ // { id: 3, label: "Inactive", value: 3 },
218
+ // ],
219
+ // code: 1,
220
+ // dataType: FilterDataType.SELECT,
221
+ // editable: false,
222
+ // isFilterable: true,
223
+ // cellRenderer: statusDropDwon,
224
+ // suppressFillHandle: false,
225
+ // isEditable: true
226
+ // },
227
+ // {
228
+ // seq: 6,
229
+ // hide: false,
230
+ // // lockPinned: true,
231
+ // id: "555",
232
+ // headerName: "Price",
233
+ // field: "price",
234
+ // isSortable: true,
235
+ // code: 1,
236
+ // dataType: FilterDataType.INTEGER,
237
+ // editable: true,
238
+ // visibleInPanel: true,
239
+ // isFilterable: true,
240
+ // suppressFillHandle: false,
241
+ // isEditable: true,
242
+ // filter: "agNumberColumnFilter",
243
+ // },
244
+ // {
245
+ // seq: 6,
246
+ // hide: false,
247
+ // // lockPinned: true,
248
+ // id: "666",
249
+ // headerName: "Date",
250
+ // field: "date",
251
+ // isSortable: true,
252
+ // code: 1,
253
+ // dataType: FilterDataType.DATE,
254
+ // editable: false,
255
+ // visibleInPanel: true,
256
+ // isFilterable: true,
257
+ // suppressFillHandle: false,
258
+ // isEditable: true,
259
+ // filter: true,
260
+ // },
261
+ // {
262
+ // seq: 5,
263
+ // id: "105",
264
+ // hide: false,
265
+ // isEditable: false,
266
+ // // pinned: "right",
267
+ // // lockPosition: "rigth",
268
+ // // cellClass: "lock-pinned",
269
+ // visibleInPanel: false,
270
+ // suppressFillHandle: true,
271
+ // cellRendererSelector: (params) => {
272
+ // if (params.node.rowPinned) {
273
+ // return () => null;
274
+ // } else {
275
+ // return { component: deleteComponent };
276
+ // }
277
+ // },
278
+ // },
279
+ // ]
280
+ []);
281
+ const [columnsToDisplay, setColumnsToDisplay] = (0, react_1.useState)([]);
282
+ const commonFieldsTemplate = (row, field) => {
283
+ return ((0, jsx_runtime_1.jsx)("div", Object.assign({ title: row[field], className: "overflow-hidden white-space-nowrap text-overflow-ellipsis max-w-16rem text-base line-heignt-3" }, { children: row[field] ? row[field] : "--" })));
284
+ };
285
+ // const statusData = () => {
286
+ // return (
287
+ // <>
288
+ // <p>{"cell renderer"}</p>
289
+ // </>
290
+ // );
291
+ // };
292
+ const DeleteRow = (params) => {
293
+ console.log(params, 'params in delete');
294
+ return (0, jsx_runtime_1.jsx)("p", Object.assign({ onClick: () => deleteRow(params) }, { children: "delete" }));
295
+ };
296
+ const AddRow = (params) => {
297
+ return (0, jsx_runtime_1.jsx)("p", Object.assign({ onClick: () => addRow(params) }, { children: "Add" }));
298
+ };
299
+ const deleteRow = (params) => {
300
+ const { node } = params;
301
+ const api = params === null || params === void 0 ? void 0 : params.api;
302
+ api.applyTransaction({ remove: [node.data] });
303
+ };
304
+ const addRow = (params) => {
305
+ const api = params.api;
306
+ const newRow = { id: "101", status: 3, name: "New Product" };
307
+ api.applyTransaction({ add: [newRow] });
308
+ };
309
+ const fillDynamicColumns = () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
310
+ const result = yield axios_1.default.get("https://productservice.easyfastnow.com/products/views/66b25ea28f4115f40bb7587f");
311
+ const options = yield axios_1.default.post("https://productservice.easyfastnow.com/options", []);
312
+ let x = result.data.response.gridColumns.map((col, index) => {
313
+ console.log(col, "columns in page for status");
314
+ let obj = {
315
+ headerName: col.fieldDisplayName,
316
+ suppressMovable: true,
317
+ enableHeaderCheckbox: col.enableHeaderCheckbox,
318
+ enableChildCheckbox: col.enableChildCheckbox,
319
+ hide: col.fieldName === "status" ? false : col.hide,
320
+ isFilterable: col.isFilterable,
321
+ isSortable: col.isSortable,
322
+ field: col.fieldName,
323
+ visibleInPanel: true,
324
+ dataType: col.datatype,
325
+ id: index + index,
326
+ seq: index,
327
+ attributeType: col.isCustomAttribute ? 2 : 1,
328
+ body: (data) => ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: commonFieldsTemplate(data.data, col.fieldName) })),
329
+ // cellRenderer: statusData,
330
+ };
331
+ if (col.isCustomAttribute) {
332
+ obj = Object.assign(Object.assign({}, obj), { visibleInPanel: true, field: col.fieldID, isFilterable: true });
333
+ }
334
+ if (col.pinned) {
335
+ obj = Object.assign(Object.assign({}, obj), { pinned: "left", lockPosition: "left", cellClass: "lock-pinned", minWidth: 350 });
336
+ }
337
+ if (col.datatype === 14 || col.datatype === 12) {
338
+ obj["options"] = [
339
+ { id: 1, label: "Draft", value: "DRAFT" },
340
+ { id: 2, label: "Active", value: "Active" },
341
+ { id: 3, label: "Inactive", value: "Inactive" },
342
+ ];
343
+ }
344
+ return obj;
345
+ });
346
+ options.data.response.data.filter((x) => !x.isMerged).map((option) => {
347
+ let obj = {
348
+ headerName: option.name,
349
+ suppressMovable: true,
350
+ enableHeaderCheckbox: false,
351
+ enableChildCheckbox: false,
352
+ hide: true,
353
+ isFilterable: true,
354
+ isSortable: false,
355
+ field: option.id,
356
+ dataType: 14,
357
+ visibleInPanel: false,
358
+ attributeType: 3,
359
+ options: option.optionValues ? option.optionValues.map((option1) => (Object.assign(Object.assign({}, option1), { label: option1.name, value: option1.id, minWidth: 200 }))) : []
360
+ };
361
+ x.push(obj);
362
+ return obj;
363
+ });
364
+ const deleteColumn = {
365
+ cellRenderer: DeleteRow
366
+ };
367
+ const addColumn = {
368
+ cellRenderer: AddRow
369
+ };
370
+ x.splice(3, x.length - 1);
371
+ x.push(deleteColumn);
372
+ x.push(addColumn);
373
+ setColumnsToDisplay(x);
374
+ });
375
+ (0, react_1.useEffect)(() => {
376
+ fillDynamicColumns();
377
+ }, []);
378
+ const noRowsOverlayComponent = () => {
379
+ return ((0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)("p", { children: "No Rows, message from products" }) }));
380
+ };
381
+ const updateCell = (selectedRowsToUpdate) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
382
+ console.log(selectedRowsToUpdate, "selected rows to update");
383
+ setRowData(rowData);
384
+ setStoreResult(rowData);
385
+ const output = {
386
+ isSuccess: true,
387
+ };
388
+ return output;
389
+ });
390
+ // const [selectedCity, setSelectedCity] = useState(null);
391
+ const pinnedTopRowData = (0, react_1.useMemo)(() => {
392
+ return [{ id: "1", name: "nitesh", body: "working out" }];
393
+ }, []);
394
+ // Update columns based on hide panel
395
+ const updateColumns = (updatedColumns) => {
396
+ console.log(updatedColumns, "updated columns in products");
397
+ setColumnsToDisplay(updatedColumns.columns);
398
+ };
399
+ console.log(setColumnsToDisplay);
400
+ // Remove items from - button
401
+ // const removeItem = (checkboxSelectionDetails) => {
402
+ // const unSelectedData = checkboxSelectionDetails?.excludedRecords;
403
+ // const selectedData = checkboxSelectionDetails?.includedRecords;
404
+ // const isIternminite = checkboxSelectionDetails?.isIndeterminate;
405
+ // console.log(checkboxSelectionDetails, "coming in remove item products");
406
+ // let updatedRowData = [];
407
+ // if (isIternminite) {
408
+ // updatedRowData = unSelectedData;
409
+ // } else if (selectedData?.length && !isIternminite) {
410
+ // const childIds = new Set(selectedData?.map((child) => child.id));
411
+ // updatedRowData = rowData.filter((parent) => !childIds.has(parent.id));
412
+ // }
413
+ // console.log(updatedRowData, "result data from remove items in products");
414
+ // return updatedRowData;
415
+ // };
416
+ const getCheckedRows = (checkedRows) => {
417
+ console.log(checkedRows, "checked rows in products");
418
+ };
419
+ // const updateForFillOperation =(fillSelected)=>{
420
+ // console.log('store row data in update fill',storeResult,fillSelected)
421
+ // const updatedResult = JSON.parse(JSON.stringify(storeResult.rowData))?.map((item)=>{
422
+ // fillSelected.childRows?.filter((fillItem)=>{
423
+ // console.log(item.id ,fillItem.id)
424
+ // if(item.id===fillItem.id){
425
+ // console.log('coming in satisfied item')
426
+ // console.log(item[fillSelected.column.field],fillItem[fillSelected.column.field],'field in item and fill item')
427
+ // item[fillSelected.column.field] = fillSelected.parentRow[fillSelected.column.field]
428
+ // }
429
+ // })
430
+ // return item
431
+ // })
432
+ // const newOutput = {
433
+ // rowData : updatedResult,
434
+ // totalRecords:storeResult.totalRecords
435
+ // }
436
+ // console.log(updatedResult,'updated result on fill')
437
+ // return newOutput
438
+ // // const updatedRowData = storeResult.rowData.map
439
+ // }
440
+ const SaveEdit = (params) => {
441
+ console.log(params, "params in save edit");
442
+ console.log(editedRecords, "edited records in page");
443
+ const saveChanges = () => {
444
+ setEmptyCheckboxStatus(true);
445
+ console.log("changes saved", editedRecords);
446
+ setColumnsToDisplay(columnDefs);
447
+ setShouldRefetch(true);
448
+ setEditMode(false);
449
+ setConditionsToDisplay(initialConditions);
450
+ };
451
+ return ((0, jsx_runtime_1.jsx)("button", Object.assign({ disabled: !editedRecords.length, onClick: saveChanges, className: "bg-white" }, { children: "Save Changes" })));
452
+ };
453
+ // Discard component for bulk edit
454
+ const DiscardEdit = () => {
455
+ const discard = () => {
456
+ setColumnsToDisplay(columnDefs);
457
+ setShouldRefetch(true);
458
+ setEditMode(false);
459
+ setConditionsToDisplay(initialConditions);
460
+ };
461
+ return ((0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)("p", Object.assign({ onClick: discard }, { children: "Discard" })) }));
462
+ };
463
+ // Edit headeing details
464
+ const EditHeadingDetails = () => {
465
+ return ((0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)("p", { children: "Bulk Edit 4 products 4 variants" }) }));
466
+ };
467
+ // Bulk edit component
468
+ const BulkEdit = () => {
469
+ const updateColumns = () => {
470
+ const tempColumns = [...columnsToDisplay].filter((column) => column.isEditable);
471
+ console.log(tempColumns, "temp columsn");
472
+ setColumnsToDisplay(tempColumns);
473
+ setShouldRefetch(true);
474
+ setEditMode(true);
475
+ const tempConditions = conditionsToDisplay;
476
+ tempConditions.displayFilter = false;
477
+ tempConditions.displaySort = false;
478
+ tempConditions.displayBulkAction = false;
479
+ tempConditions.enableFillHandle = true;
480
+ tempConditions.displayDiscardEdit = true;
481
+ tempConditions.displayRefresh = false;
482
+ tempConditions.displayRemoveItems = false;
483
+ tempConditions.displayBulkEdit = false;
484
+ tempConditions.displaySaveEditButton = true;
485
+ tempConditions.displayEditHeading = true;
486
+ setConditionsToDisplay(tempConditions);
487
+ };
488
+ return ((0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)("p", Object.assign({ onClick: updateColumns }, { children: "Bulk Edit" })) }));
489
+ };
490
+ // const getRowData = async (startRow, endRow, featureDetails, params?: any) => {
491
+ const getRowData = () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
492
+ // const dummyRecordForGroup = [
493
+ // {name:"nitesh",rank:1,id:"01"},
494
+ // {name:"pawan",rank:1,id:"02"},
495
+ // {name:"harish",rank:2,id:"03"},
496
+ // {name:"nitesh",rank:3,id:"04"},
497
+ // {name:"nitesh",rank:2,id:"05"},
498
+ // {name:"nitesh",rank:3,id:"06"},
499
+ // {name:"nitesh",rank:3,id:"07"},
500
+ // {name:"nitesh",rank:3,id:"08"},
501
+ // ]
502
+ // console.log(params, "params in page");
503
+ // console.log(featureDetails, "feature details in page for filter queries");
504
+ var _a, _b, _c;
505
+ // if(featureDetails?.fillSelected?.childRows?.length){
506
+ // return updateForFillOperation(featureDetails.fillSelected)
507
+ // }
508
+ // const features: Features = featureDetails;
509
+ // const conditionToRemoveItem = features.checkBoxSelection.allBoxChecked || features.checkBoxSelection.isIndeterminate || features.checkBoxSelection.includedRecords.length || features.checkBoxSelection.excludedRecords.length
510
+ // if (featureDetails.isRemoveClicked) {
511
+ // const result = removeItem(features.checkBoxSelection);
512
+ // const output = {
513
+ // totalRecords: result.length,
514
+ // rowData: result,
515
+ // };
516
+ // return await output;
517
+ // }
518
+ // let totalRecords = 500;
519
+ // const serverSideUrl = `https://jsonplaceholder.typicode.com/comments?_start=${startRow}&_end=${endRow}`;
520
+ // const clientSideUrl = "https://jsonplaceholder.typicode.com/comments?_limit=200";
521
+ // console.log(serverSideUrl, clientSideUrl);
522
+ // const { startRow, featureDetails } = payload
523
+ // const stringWithoutZeros = String(startRow).replace(/00/g, '');
524
+ // const numberWithoutZeros = parseInt(stringWithoutZeros) + 1
525
+ // const requestObject: any = { pageIndex: numberWithoutZeros, pageSize: 100 }
526
+ // debugger
527
+ // // Add sort info if given any by gird component
528
+ // if (featureDetails?.sort?.isSortable) {
529
+ // const sortInfo = featureDetails?.sort
530
+ // requestObject.sortOrder = {
531
+ // direction: sortInfo?.orderToSort?.sortId,
532
+ // propertyName: sortInfo?.columnToSort?.field
533
+ // }
534
+ // }
535
+ // // Add search info if given any by gird component
536
+ // if (featureDetails?.searchedText?.length) {
537
+ // requestObject.searchString = featureDetails?.searchedText
538
+ // }
539
+ // // Add filter info if given any by gird component
540
+ // const filterFromGrid = featureDetails?.filterQueries ?? [];
541
+ // if (filterFromGrid.length > 0) {
542
+ // const requestFilters: any[] = filterFromGrid.map((element: any) => ({
543
+ // fieldName: element?.selectedColumn?.code,
544
+ // fieldValue: element?.value.toString(),
545
+ // conditionalOperator: element?.selectedOperation,
546
+ // logicalOperator: element.logicalOperator
547
+ // }));
548
+ // requestObject.filters = requestFilters;
549
+ // }
550
+ const result = yield axios_1.default.post("https://productservice.easyfastnow.com/products/search", {});
551
+ console.log("resulttt in ag grid", result);
552
+ const treeData = (_c = (_b = (_a = result === null || result === void 0 ? void 0 : result.data) === null || _a === void 0 ? void 0 : _a.response) === null || _b === void 0 ? void 0 : _b.data) === null || _c === void 0 ? void 0 : _c.map((row, idx) => {
553
+ // row.orgHierarchy = [row.id]
554
+ if (idx < 4) {
555
+ row.orgHierarchy = [row.id];
556
+ }
557
+ else {
558
+ row.orgHierarchy = [row.id];
559
+ }
560
+ return row;
561
+ });
562
+ console.log(result, treeData, "row data api call");
563
+ // debugger
564
+ // Enable row group local server
565
+ // const grouping = false;
566
+ // const outputData = result?.data
567
+ // .map((item, idx) => {
568
+ // if (idx == 2 || idx == 3) {
569
+ // item.type = 2
570
+ // item.price = "--"
571
+ // } else {
572
+ // item.type = 1
573
+ // item.status = 3
574
+ // item.price = 500;
575
+ // }
576
+ // delete item.postId;
577
+ // return item;
578
+ // });
579
+ // const dummyData = [
580
+ // {status:3,name:"product 1", id:1},
581
+ // {status:4,name:"product 2", id:2},
582
+ // {status:5,name:"product 3", id:3},
583
+ // {status:2,name:"product 4", id:4},
584
+ // {status:1,name:"product 5", id:5},
585
+ // {status:3,name:"product 6", id:6},
586
+ // ]
587
+ // const dummy = treeData.map((item, index) => {
588
+ // return {
589
+ // ...item,
590
+ // status:index % 2 == 0 ? "--" : item.status
591
+ // };
592
+ // });
593
+ const dummy = treeData.splice(0, 6);
594
+ console.log(dummy);
595
+ let output = {
596
+ totalRecords: dummy,
597
+ rowData: dummy,
598
+ };
599
+ // Performs when grouping is present
600
+ // if (grouping) {
601
+ // const result: any = await axios.get(serverSideUrl);
602
+ // result?.data.map((item) => {
603
+ // item.status = "Active";
604
+ // return item;
605
+ // });
606
+ // let fakeServer = FakeServer(result.data, ["status"]);
607
+ // const groupingResponse = fakeServer.getData(params);
608
+ // console.log(groupingResponse, 'grouping response')
609
+ // const lastRow =
610
+ // params.groupKeys?.length == 0
611
+ // ? groupingResponse?.lastRow
612
+ // : totalRecords;
613
+ // output.rowData = groupingResponse.rows;
614
+ // output.totalRecords = lastRow;
615
+ // }
616
+ setStoreResult(output);
617
+ setRowData(result.data);
618
+ setShouldRefetch(false);
619
+ setShouldClearFilters(false);
620
+ return output;
621
+ });
622
+ const style = {
623
+ height: "900px",
624
+ width: "100%",
625
+ };
626
+ console.log(pinnedTopRowData, defaultFilters);
627
+ const createView = (viewDetails) => {
628
+ console.log(viewDetails, "parsed value for create view");
629
+ };
630
+ console.log(storeResult, "sotred result");
631
+ const selectFilter = () => {
632
+ const defaultFilters = [
633
+ {
634
+ columnName: {
635
+ name: "Body",
636
+ code: "body",
637
+ dataType: "string",
638
+ },
639
+ condition: 5,
640
+ value: "data",
641
+ id: "0.028544677566825438",
642
+ isActive: true,
643
+ logicalOperator: 1, // number
644
+ },
645
+ ];
646
+ setShouldRefetch(true);
647
+ setDefaultFilters(defaultFilters);
648
+ };
649
+ const dynamicText = {
650
+ filterModelText: {
651
+ header: "Filter",
652
+ subHeader: "Streamline Your Search With Filters",
653
+ resetFilterAction: "Reset Filter",
654
+ createViewInputPlaceHolder: "Enter",
655
+ createViewAction: "Create View",
656
+ applyAction: "Apply",
657
+ elementOnePlaceHolder: "Select",
658
+ elementTwoPlaceHolder: "Select",
659
+ elementThreePlaceHolder_Input: "Enter Text",
660
+ elementThreePlaceHolder_Input_Number: "Enter Number",
661
+ elementThreePlaceHolder_DropDown: "Select",
662
+ elementThreePlaceHolder_MultiSelect: "Select",
663
+ elementThreePlaceHolder_Calender: "Select Date",
664
+ onSelectedFilter: "Selected",
665
+ },
666
+ sortModelText: {
667
+ header: "Column Sorting",
668
+ clearAction: "Clear",
669
+ applyAction: "Apply",
670
+ onSelectedSort: "Selected",
671
+ },
672
+ recordDetailModelText: {
673
+ totalRecordHeader: "Total Records",
674
+ },
675
+ sidePanelText: {
676
+ header: "Configure Columns",
677
+ disacrd_button: "Discard",
678
+ update_button: "Update",
679
+ apply_to_all_views: "Apply to all views",
680
+ apply_subHeading: "Apply the chosen column selection to all available views",
681
+ search_placeHolder: "Search by column name",
682
+ selected_attributes: "Selected Attributes",
683
+ unselected_attributes: "Unselected Attributes",
684
+ },
685
+ bulkEditAction: {
686
+ discard: "Discard",
687
+ save: "Save Changes",
688
+ },
689
+ };
690
+ // const GroupHeaderComponent = (params) =>{
691
+ // console.log(params)
692
+ // return <><p>Group Header</p> </>
693
+ // }
694
+ const getGroupedColumnsWithOrder = (params) => {
695
+ var _a;
696
+ // Get all row group columns in the order they are grouped
697
+ const rowGroupColumns = ((_a = params === null || params === void 0 ? void 0 : params.api) === null || _a === void 0 ? void 0 : _a.getRowGroupColumns()) || [];
698
+ // Extract column details including ID and field
699
+ const groupedColumnsInOrder = rowGroupColumns.map(col => ({
700
+ field: col.getColDef().headerName
701
+ }));
702
+ console.log("Grouped Columns in Order:", rowGroupColumns);
703
+ return groupedColumnsInOrder;
704
+ };
705
+ const GroupHeaderName = (props) => {
706
+ var _a, _b, _c, _d, _e, _f, _g;
707
+ const { params } = props;
708
+ // const level = params.node.level;
709
+ const groupId = params.node.key; // The unique key for the current group
710
+ const parentGroupId = (_a = params === null || params === void 0 ? void 0 : params.node) === null || _a === void 0 ? void 0 : _a.key; // The unique key for the parent group, if available
711
+ // Get the grouped columns with their details
712
+ const columnsSelectedForGroup = getGroupedColumnsWithOrder(params);
713
+ // Custom names for groups and subgroups
714
+ const customNames = {
715
+ group1: `GROUP BY - ${(_c = (_b = columnsSelectedForGroup[0]) === null || _b === void 0 ? void 0 : _b.field) === null || _c === void 0 ? void 0 : _c.toUpperCase()} : ${groupId}`,
716
+ group2: `${(_e = (_d = columnsSelectedForGroup[1]) === null || _d === void 0 ? void 0 : _d.field) === null || _e === void 0 ? void 0 : _e.toUpperCase()} BY ${parentGroupId}`,
717
+ };
718
+ // Determine the group name based on the level
719
+ // const groupName = params?.node?.level === 0 ? customNames.group1 : customNames.group2;
720
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [((_f = params === null || params === void 0 ? void 0 : params.node) === null || _f === void 0 ? void 0 : _f.level) === 0 && customNames.group1, ((_g = params === null || params === void 0 ? void 0 : params.node) === null || _g === void 0 ? void 0 : _g.level) === 1 && customNames.group2] }));
721
+ };
722
+ // Store ref and update grid
723
+ const getGridRef = (gridRef) => {
724
+ console.log(gridRef, 'grid ref in products');
725
+ const newRow = { name: "nitesh", id: "101", status: "199" };
726
+ console.log(newRow);
727
+ if (gridRef === null || gridRef === void 0 ? void 0 : gridRef.current) {
728
+ // gridRef.current?.api?.applyTransaction({ add: [newRow] })
729
+ }
730
+ };
731
+ return ((0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("button", Object.assign({ onClick: selectFilter }, { children: "Select Filter" })), (0, jsx_runtime_1.jsx)("button", Object.assign({ onClick: () => setShouldClearFilters(true) }, { children: "clear filter" })), columnsToDisplay.length > 0 && ((0, jsx_runtime_1.jsx)(parent_for_grid_1.default, { columnData: columnsToDisplay, style: style, getRowData: getRowData, conditionsToDisplay: conditionsToDisplay, rowModelType: constants_1.ROWMODELTYPE.CLIENT_SIDE, pinnedTopRowData: pinnedTopRowData, bulkActionComponent: BulkAction_1.default, getCheckedRows: getCheckedRows, shouldRefetch: shouldRefetch, noRowsOverlayComponent: noRowsOverlayComponent, defaultFilters: defaultFilters, createView: createView, dynamicText: dynamicText, sortOptions: constants_1.COLUMN_SORT_OPTIONS, filterConditions: [
732
+ { id: 1, label: "AND" },
733
+ { id: 2, label: "OR" },
734
+ ], enableManageColumnsCallback: true, clearFilters: shouldClearFilters, updateColumnsForGrid: updateColumns, updateCell: updateCell, BulkEditComponent: BulkEdit, updateRowData: updateRowData, setUpdateRowData: setUpdateRowData, editMode: editMode, discardEditComponent: DiscardEdit, SaveEdit: SaveEdit, setEditedRecords: setEditedRecords, editedRecords: editedRecords, emptyCheckboxStatus: emptyCheckboxStatus, EditHeadingDetails: EditHeadingDetails, groupName: "status", enableTree: false, treeHeaderName: "Product Name", groupField: "name",
735
+ // GroupHeaderComponent={GroupHeaderComponent}
736
+ enableCheckboxForGroupHeader: true,
737
+ // AdvancedFilter={AdvancedFilter}
738
+ removeCallBack: removeCallBack, rowGroupHeaderComponent: GroupHeaderName, serverSideInitialRowCount: 3, getGridRef: getGridRef }))] }));
739
+ };
740
+ exports.default = AgGridPage;