UNPKG

sccoreui

Version:

ui-sccore

244 lines (243 loc) 14.8 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const jsx_runtime_1 = require("react/jsx-runtime"); const react_1 = require("react"); const parent_for_grid_1 = tslib_1.__importDefault(require("../../components/ag-grid/parent-for-grid")); const type_1 = require("../../components/types/type"); const constants_1 = require("../../components/ag-grid/constants"); const Template_1 = tslib_1.__importDefault(require("./Template")); const accesToken = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6InBhdmFua3VtYXJAc2VsbGVyc2NvbW1lcmNlLmNvbSIsImVtYWlsIjoicGF2YW5rdW1hckBzZWxsZXJzY29tbWVyY2UuY29tIiwibmFtZWlkIjoiYTljYjhhMjQtZGMwNS00YjI3LWIyMWEtMDM0NTVmNjVmNzYwIiwiRmlyc3ROYW1lIjoiUGF2YW4iLCJMYXN0TmFtZSI6Ikt1bWFyIiwiU2Vzc2lvbiI6IjEzZjNhMzhjLWI2ZmMtNDFjZS1hNWI5LTk0NDIzNzdhMTI4NCIsIk9yaWdpbiI6Im9yZzIuZWFzeWZhc3Rub3cuY29tIiwiQXBwUmVmZXJlbmNlIjoiOWE1NjI3ZDQtNGI2Yi00OWFiLTg0MzItMjE4MzkyY2UzMmYxIiwiYXVkIjpbIkNDRGV2Q01TQ29tbWFuZEFQSSIsIkRldk9uZVNvdXJjZUFQSSIsIk5vZGVDb21tb25TZXJ2aWNlIiwiQ0NEZXZDTVNRdWVyaWVzQVBJIiwiQ0NEZXZDTVNDb21tYW5kQVBJIiwiQ0NEZXZBY2NvdW50Q29tbWFuZEFQSSIsIkNDRGV2QWNjb3V0UXVlcmllc0FQSSIsIkNDRGV2QXV0aFN5bmNDb21tYW5kQVBJIiwiQ0NEZXZDb3JlQ29udHJvbENvbW1hbmRBUEkiLCJDQ0RldkNvcmVDb250cm9sUXVlcmllc0FQSSIsIkNDRGV2Q3VzdG9tZXJDb21tYW5kQVBJIiwiQ0NEZXZDdXN0b21lclF1ZXJpZXNBUEkiLCJDQ0RldlBheW1lbnRDb25maWdDb21tYW5kQVBJIiwiQ0NEZXZQYXltZW50Q29uZmlnUXVlcmllc0FQSSIsIkNDRGV2UE1Db21tYW5kQVBJIiwiQ0NEZXZQTVF1ZXJpZXNBUEkiLCJDQ0RldlByb2R1Y3RzQ29tbWFuZEFQSSIsIkNDRGV2UnVsZUNvbW1hbmRBUEkiLCJDQ0RldlJ1bGVRdWVyaWVzQVBJIiwiQ0NEZXZTYWxlc0NvbW1hbmRBUEkiLCJDQ0RldlNlYXJjaENvbW1hbmRBUEkiLCJDQ0RldlNlYXJjaFF1ZXJpZXNBUEkiLCJDQ0RldlNoaXBwaW5nQ29tbWFuZEFQSSIsIkNDRGV2U2hpcHBpbmdRdWVyaWVzQVBJIiwiQ0NEZXZUYXhDb25maWdDb21tYW5kQVBJIiwiQ0NEZXZUYXhDb25maWdRdWVyaWVzQVBJIiwiQ0NEZXZVTVF1ZXJpZXNBUEkiLCJDQ0RldldJQ29tbWFuZEFQSSIsIkNDRGV2V0lRdWVyaWVzQVBJIiwiQ0NEZXZXZWJzaXRlQ29tbWFuZEFQSSIsIkNDRGV2V2Vic2l0ZVF1ZXJpZXNBUEkiLCJDQ0Rldk1hcmtldGluZ0NvbW1hbmRBUEkiLCJDQ0Rldk1hcmtldGluZ1F1ZXJpZXNBUEkiLCJDQ0RldkltcG9ydHNDb21tYW5kQVBJIiwiQ0NEZXZJbXBvcnRzUXVlcmllc0FQSSIsIkNDRGV2TWFjcm9zQ29tbWFuZEFQSSIsIkNDRGV2TWFjcm9zUXVlcmllc0FQSSIsIkRldkltcG9ydENvbW1hbmRBUEkiLCJEZXZJbXBvcnRRdWVyaWVzQVBJIiwiQ0NEZXZFdmVudFJlZ2lzdGVyQ29tbWFuZEFQSSJdLCJzY29wZSI6IiIsIm5iZiI6MTc0MzYyMDE3MSwiZXhwIjoxNzQzNjIzNzcxLCJpYXQiOjE3NDM2MjAxNzEsImlzcyI6ImVkZ2UtZGV2LWlzc3VlciJ9.cxsVnlUPpzC3RQe6lzbZV1gu2DxKVTOP30My57MgZI4z_x_Ca0iR-jLoA8en1laCdU--9jFw-yyMz-BdfjMR-yRfCv-WBG00Y7p7ItYaSXgQCnWrrNYT49ZZfyQLsTq8jbK1Cdz2F7OrHDgdaAK-YCvvgzlcgj7ZPY3QDJ0cwOZCz0Kt1YfiZ4ICsIq9RWxyIrLT9VD3_28d0joTahxSpEgRVL0NRxA3J7vSl7CWvoyNLr1hXwtKTci2YkVvA7n6ZCJOMktbuMcWOssb4bFrk3n6GhfBfbsqCo968I3N-v-L1nGqHap8OiSe6YdpDV9BpQr8T0TpkmiHouezgD42IQ"; const dynamicText = { filterModelText: { header: "Filter", subHeader: "Streamline Your Search With Filters", resetFilterAction: "Reset Filter", createViewInputPlaceHolder: "Enter", createViewAction: "Create View", applyAction: "Apply", elementOnePlaceHolder: "Select", elementTwoPlaceHolder: "Select", elementThreePlaceHolder_Input: "Enter Text", elementThreePlaceHolder_Input_Number: "Enter Number", elementThreePlaceHolder_DropDown: "Select", elementThreePlaceHolder_MultiSelect: "Select", elementThreePlaceHolder_Calender: "Select Date", onSelectedFilter: "Selected", }, sortModelText: { header: "Column Sorting", clearAction: "Clear", applyAction: "Apply", onSelectedSort: "Selected", }, recordDetailModelText: { totalRecordHeader: "Total Records", }, sidePanelText: { header: "Configure Columns", disacrd_button: "Discard", update_button: "Update", apply_to_all_views: "Apply to all views", apply_subHeading: "Apply the chosen column selection to all available views", search_placeHolder: "Search by column name", selected_attributes: "Selected Attributes", unselected_attributes: " Attributes", }, }; const DataTableComponent = () => { const [activeColumns, setActiveColumns] = (0, react_1.useState)([]); const [gridKey, setGridKey] = (0, react_1.useState)(1); const [isColumnsLoading, setIsColumnsLoading] = (0, react_1.useState)(true); // const noRowsTemplateRef = useRef<any>(); const [initCall,] = (0, react_1.useState)(true); const [gridForEdit,] = (0, react_1.useState)(false); const [isCheckboxEmpty,] = (0, react_1.useState)(false); const [clearFilters,] = (0, react_1.useState)([]); // const [gridRefresh, setGridRefresh] = useState<boolean>(false) // const { // refetch, // data: activeView, // isLoading: isViewsLoading, // } = useQuery({ // queryKey: ["views", gridUniqueKey], // queryFn: () => getGridColumns({ // queryKey: [ // "views", // { screenId: columnQueryKey || queryKey, viewId: allViewId, interCeptorPost, interCeptorGet, gridUniqueKey }, // ] // }), // enabled: false, // }); const getColumns = () => tslib_1.__awaiter(void 0, void 0, void 0, function* () { var _a, _b, _c; try { const response = yield fetch("https://paymentconfig_queriesapi.easyfastnow.com/api/grid/get-meta-data?screenId=1&viewId=1", { method: 'GET', headers: { 'Content-Type': 'application/json', 'Authorization': `Bearer ${accesToken}`, 'x-origin-url': 'https://org2.easyfastnow.com', // Add an extra custom header } }); const data = yield response.json(); if ((_a = data === null || data === void 0 ? void 0 : data.response) === null || _a === void 0 ? void 0 : _a.columns) { getAllRenderedColumns((_b = data === null || data === void 0 ? void 0 : data.response) === null || _b === void 0 ? void 0 : _b.columns); console.log((_c = data === null || data === void 0 ? void 0 : data.response) === null || _c === void 0 ? void 0 : _c.columns, "response-data"); } } catch (error) { } }); function generateUniqueId() { const timestamp = Date.now().toString().slice(-4); // Last 4 digits of timestamp const randomPart = Math.floor(100000 + Math.random() * 900000).toString(); // 6 random digits return timestamp + randomPart; // 10-digit unique ID } const getAllRenderedColumns = (columnsData) => tslib_1.__awaiter(void 0, void 0, void 0, function* () { if (columnsData) { const columns = columnsData.map((column, index) => { var _a, _b; const fieldDisplayName = column.fieldDisplayName || ""; const capitalizedDisplayName = fieldDisplayName .toLowerCase() .split(" ") .map((word) => word.charAt(0).toUpperCase() + word.slice(1)) .join(" "); const obj = { enableHeaderCheckbox: column.isEnableHeaderCheckbox, enableChildCheckbox: column.isEnableHeaderCheckbox, hide: column === null || column === void 0 ? void 0 : column.isHide, isFilterable: column.isFilterable, isSortable: column.isSortable, field: column.fieldName, dataType: (column === null || column === void 0 ? void 0 : column.datatype) ? column.datatype : 1, visibleInPanel: column.isDisplayInPanel, suppressMovable: true, minWidth: 200, id: (column === null || column === void 0 ? void 0 : column.fieldId) || generateUniqueId(), headerName: capitalizedDisplayName, headerTooltip: capitalizedDisplayName, columnType: "", seq: (column === null || column === void 0 ? void 0 : column.seq) || index + 1, suppressFillHandle: (_b = (_a = column === null || column === void 0 ? void 0 : column.suppressFillHandle) !== null && _a !== void 0 ? _a : gridForEdit) !== null && _b !== void 0 ? _b : true, }; if (column.isPinned) { Object.assign(obj, { pinned: "left", lockPosition: "left", cellClass: "lock-pinned", minWidth: 350, visibleInPanel: false, }); } return obj; }); setActiveColumns(columns); } // setGridRefresh(true) setGridKey((state) => state + 1); setIsColumnsLoading(false); }); const BulkAction = (0, react_1.useCallback)(() => { return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {})); }, []); (0, react_1.useEffect)(() => { getColumns(); // refetch(); }, []); // useEffect(() => { // if (activeView) { // getAllRenderedColumns(activeView); // setAllFilters([activeView]); // } // }, [activeView]); const setSelectedColumnsFun = () => { // setBulkSelection(data); }; const getGridRef = (0, react_1.useRef)(null); // const NoDataTemplateForSearch = () => { // const rowCount: number = getGridRef?.current!.api?.getDisplayedRowCount(); // const filterText: string = getGridRef?.current!.api?.getQuickFilter(); // const searchCondtion = Boolean(filterText) && rowCount === 0; // if (searchCondtion) { // return ( // <div className={`flex flex-column align-items-center h-10rem`}> // <span className="py-0 my-0">No data found for your search results</span> // </div> // ); // } else { // return ( // <div className={`flex flex-column align-items-center h-10rem`}> // <h2 className="py-0 my-0">No data</h2> // <span>Description</span> // </div> // ); // } // }; const fetchDetails = (start, end, params) => tslib_1.__awaiter(void 0, void 0, void 0, function* () { console.log(start, end, params, "params-changes"); const body = { "pageIndex": 1, "pageSize": 100, "screenId": 1 }; try { const response = yield fetch("https://paymentconfig_queriesapi.easyfastnow.com/api/grid/get-data", { method: 'POST', headers: { 'Content-Type': 'application/json', 'Authorization': `Bearer ${accesToken}`, 'x-origin-url': 'https://org2.easyfastnow.com', // Add an extra custom header }, body: JSON.stringify(body) // Convert JavaScript object to JSON string }); const data = yield response.json(); // if (data?.response?.columns) { // getAllRenderedColumns(data?.response?.columns) // console.log(data?.response?.columns, "response-data") // } if (data === null || data === void 0 ? void 0 : data.response) { return yield { rowData: [], totalRecords: 0 }; } return yield { rowData: [], totalRecords: 0 }; } catch (error) { return yield { rowData: [], totalRecords: 0 }; } }); const conditionsToDisplay = { displayFilter: type_1.VisibilityState.ENABLE, displaySort: type_1.VisibilityState.ENABLE, displaySearch: type_1.VisibilityState.ENABLE, displayBulkAction: type_1.VisibilityState.ENABLE, displayRecords: type_1.VisibilityState.ENABLE, displayRefresh: type_1.VisibilityState.ENABLE, displaySidePanel: type_1.VisibilityState.HIDE, displayRemoveItems: type_1.VisibilityState.ENABLE, displayBulkEdit: type_1.VisibilityState.HIDE, displayRowGroupingElement: type_1.VisibilityState.HIDE, enableViewCreate: false, enableFillHandle: false, displayFeaturesHeader: true, isGridAutoHeight: type_1.VisibilityState.ENABLE, displayGridViewListView: type_1.VisibilityState.ENABLE }; const style = { height: "550px" }; const rowModelType = constants_1.ROWMODELTYPE.CLIENT_SIDE; const updateColumnsForGrid = () => ""; const BackupComponent = () => { return (0, jsx_runtime_1.jsx)("div", { children: "jasdbf" }); }; (0, react_1.useEffect)(() => { var _a, _b; if (getGridRef.current) { (_b = (_a = getGridRef === null || getGridRef === void 0 ? void 0 : getGridRef.current) === null || _a === void 0 ? void 0 : _a.api) === null || _b === void 0 ? void 0 : _b.showLoadingOverlay(); } }, [getGridRef.current]); return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsx)("section", Object.assign({ style: { height: "calc(100vh - 64px)" } }, { children: false ? ((0, jsx_runtime_1.jsx)(BackupComponent, {})) : !isColumnsLoading ? ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: false ? "p-4 h-full" : "h-full" }, { children: !initCall ? ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: "Empty" })) : ((0, jsx_runtime_1.jsx)(parent_for_grid_1.default, { selectColumns: setSelectedColumnsFun, bulkActionComponent: BulkAction, gridKey: gridKey, columnData: activeColumns, clearFilters: clearFilters, dynamicText: dynamicText, placeholder: "Search by code or name", getRowData: fetchDetails, defaultFilters: [], enableManageColumnsCallback: false, conditionsToDisplay: conditionsToDisplay, rowModelType: rowModelType, style: { height: style.height, width: "100%", }, gridViewTemplate: () => { }, updateColumnsForGrid: updateColumnsForGrid, shouldRefetch: true, noRowsOverlayComponent: () => { return (0, jsx_runtime_1.jsx)("div", { children: "Helo" }); }, getGridRef: getGridRef, emptyCheckboxStatus: isCheckboxEmpty, quickSearch: true, template: Template_1.default })) }))) : ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: "jkasfd" })) })) })); }; exports.default = DataTableComponent;