{"version":3,"file":"scripts/frontend/frontend.min.js","mappings":"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","sources":["webpack://google-spreadsheet-to-wp-table-sync/./assets/src/scripts/Chunk/Frontend/create_tab.js","webpack://google-spreadsheet-to-wp-table-sync/webpack/bootstrap","webpack://google-spreadsheet-to-wp-table-sync/./assets/src/scripts/Chunk/Frontend/common_func.js","webpack://google-spreadsheet-to-wp-table-sync/./assets/src/scripts/Chunk/Frontend/data_tables_async.js","webpack://google-spreadsheet-to-wp-table-sync/./assets/src/scripts/Chunk/Frontend/data_table_default.js"],"sourcesContent":["jQuery(document).ready(function ($) {\r\n    class ManageTab {\r\n        constructor() {\r\n            this.events();\r\n            this.showFirstTabContent();\r\n        }\r\n        events() {\r\n            var buttons = $('.tab_hidden_input');\r\n\r\n            buttons.each(function () {\r\n                $(this).on(\"click\", function (e) {\r\n                    let target = e.currentTarget;\r\n\r\n                    $(target)\r\n                        .parents(\".tabs_container\")\r\n                        .find(`.tab_contents .tab-content`)\r\n                        .removeClass(\"active\");\r\n\r\n                    let inputID = $(target).data(\"id\");\r\n\r\n                    $(`#${inputID}`).addClass('active');\r\n                });\r\n            })\r\n        }\r\n\r\n        showContent(e) {\r\n            target\r\n                .parents(\".tab_bottom_side\")\r\n                .find(`.tab_contents .tab-content`)\r\n                .removeClass(\"active\");\r\n\r\n            let inputID = target.attr(\"id\").match(/(\\d+)/)[0];\r\n\r\n            target\r\n                .parents(\".tab_bottom_side\")\r\n                .find(`.tab_contents #tab-content${inputID}`)\r\n                .addClass(\"active\");\r\n        }\r\n\r\n        // Add checked in tabs and get the design.\r\n          showFirstTabContent() {\r\n            $(\".tabs_container\").each(function () {\r\n              $(this)\r\n                .find(\".tab_hidden_input:first\")\r\n                .prop(\"checked\", true);\r\n            });\r\n          }\r\n\r\n    }\r\n    new ManageTab();\r\n});\r\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// Frontend Data table design and other config applied like pagination, shorting and so on \r\n\r\nexport default class Global_Table_Config {\r\n\r\n    constructor() {\r\n        this.PaginationTailwindBack1 = `\r\n        <svg width=\"6\" height=\"9\" viewBox=\"0 0 6 9\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n        <path d=\"M5.77056 8.8019C5.91747 8.67501 6 8.50294 6 8.32353C6 8.14411 5.91747 7.97205 5.77056 7.84516L1.89154 4.49592L5.77056 1.14667C5.91331 1.01906 5.99229 0.848143 5.99051 0.670736C5.98872 0.49333 5.90631 0.323626 5.76101 0.198175C5.61572 0.0727263 5.41917 0.00156787 5.21371 2.57836e-05C5.00824 -0.00151535 4.81029 0.0666838 4.66249 0.189935L0.229439 4.01755C0.0825293 4.14443 -2.04722e-07 4.3165 -1.9688e-07 4.49592C-1.89037e-07 4.67533 0.0825294 4.8474 0.229439 4.97428L4.66249 8.8019C4.80945 8.92874 5.00873 9 5.21653 9C5.42432 9 5.62361 8.92874 5.77056 8.8019Z\" fill=\"#FFFFFF\"/>\r\n        </svg>\r\n\r\n        `;\r\n        this.PaginationTainwildNext1 = `\r\n        <svg width=\"6\" height=\"9\" viewBox=\"0 0 6 9\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n        <path d=\"M0.229439 8.8019C0.0825295 8.67501 2.1727e-08 8.50294 2.95695e-08 8.32353C3.74119e-08 8.14411 0.0825296 7.97205 0.229439 7.84516L4.10846 4.49592L0.22944 1.14667C0.0866933 1.01906 0.00770646 0.848143 0.00949193 0.670736C0.0112774 0.49333 0.0936922 0.323626 0.238986 0.198175C0.384279 0.0727263 0.580825 0.00156787 0.786293 2.57836e-05C0.991761 -0.00151535 1.18971 0.0666838 1.33751 0.189935L5.77056 4.01755C5.91747 4.14443 6 4.3165 6 4.49592C6 4.67533 5.91747 4.8474 5.77056 4.97428L1.33751 8.8019C1.19055 8.92874 0.991266 9 0.783473 9C0.57568 9 0.376394 8.92874 0.229439 8.8019Z\" fill=\"#FFFFFF\"/>\r\n        </svg>\r\n\r\n        `;\r\n\r\n\r\n        this.PaginationTailwindBack2 = `\r\n        <svg width=\"12\" height=\"9\" viewBox=\"0 0 12 9\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n        <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.35416 0.854143C5.40065 0.807655 5.43753 0.752466 5.46268 0.691727C5.48784 0.630987 5.50079 0.565887 5.50079 0.500143C5.50079 0.434399 5.48784 0.369299 5.46268 0.30856C5.43753 0.24782 5.40065 0.192631 5.35416 0.146143C5.30767 0.0996553 5.25248 0.0627792 5.19174 0.0376201C5.13101 0.012461 5.06591 -0.000488282 5.00016 -0.000488281C4.93442 -0.00048828 4.86932 0.012461 4.80858 0.0376201C4.74784 0.0627792 4.69265 0.0996553 4.64616 0.146143L0.646161 4.14614C0.599598 4.19259 0.562655 4.24776 0.537449 4.30851C0.512242 4.36926 0.499268 4.43438 0.499268 4.50014C0.499268 4.56591 0.512242 4.63103 0.537449 4.69178C0.562655 4.75252 0.599598 4.8077 0.646161 4.85414L4.64616 8.85414C4.74005 8.94803 4.86739 9.00077 5.00016 9.00077C5.13294 9.00077 5.26027 8.94803 5.35416 8.85414C5.44805 8.76026 5.50079 8.63292 5.50079 8.50014C5.50079 8.36737 5.44805 8.24003 5.35416 8.14614L1.70716 4.50014L5.35416 0.854143ZM11.3542 0.854143C11.4006 0.807655 11.4375 0.752466 11.4627 0.691727C11.4878 0.630987 11.5008 0.565887 11.5008 0.500143C11.5008 0.434399 11.4878 0.369299 11.4627 0.30856C11.4375 0.24782 11.4006 0.192631 11.3542 0.146143C11.3077 0.0996553 11.2525 0.0627792 11.1917 0.0376201C11.131 0.012461 11.0659 -0.000488281 11.0002 -0.000488281C10.9344 -0.000488281 10.8693 0.012461 10.8086 0.0376201C10.7478 0.0627792 10.6926 0.0996553 10.6462 0.146143L6.64616 4.14614C6.5996 4.19259 6.56266 4.24776 6.53745 4.30851C6.51224 4.36926 6.49927 4.43438 6.49927 4.50014C6.49927 4.56591 6.51224 4.63103 6.53745 4.69178C6.56266 4.75252 6.5996 4.8077 6.64616 4.85414L10.6462 8.85414C10.74 8.94803 10.8674 9.00077 11.0002 9.00077C11.1329 9.00077 11.2603 8.94803 11.3542 8.85414C11.448 8.76026 11.5008 8.63292 11.5008 8.50014C11.5008 8.36737 11.448 8.24003 11.3542 8.14614L7.70716 4.50014L11.3542 0.854143Z\" fill=\"#333333\"/>\r\n        </svg>\r\n        `;\r\n        this.PaginationTainwildNext2 = `\r\n        <svg width=\"12\" height=\"9\" viewBox=\"0 0 12 9\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n        <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.64587 0.854143C6.59938 0.807655 6.5625 0.752466 6.53735 0.691727C6.51219 0.630987 6.49924 0.565887 6.49924 0.500143C6.49924 0.434399 6.51219 0.369299 6.53735 0.30856C6.5625 0.24782 6.59938 0.192631 6.64587 0.146143C6.69236 0.0996553 6.74755 0.0627792 6.80829 0.0376201C6.86903 0.012461 6.93413 -0.000488282 6.99987 -0.000488281C7.06561 -0.00048828 7.13071 0.012461 7.19145 0.0376201C7.25219 0.0627792 7.30738 0.0996553 7.35387 0.146143L11.3539 4.14614C11.4004 4.19259 11.4374 4.24776 11.4626 4.30851C11.4878 4.36926 11.5008 4.43438 11.5008 4.50014C11.5008 4.56591 11.4878 4.63103 11.4626 4.69178C11.4374 4.75252 11.4004 4.8077 11.3539 4.85414L7.35387 8.85414C7.25998 8.94803 7.13265 9.00077 6.99987 9.00077C6.86709 9.00077 6.73976 8.94803 6.64587 8.85414C6.55198 8.76026 6.49924 8.63292 6.49924 8.50014C6.49924 8.36737 6.55198 8.24003 6.64587 8.14614L10.2929 4.50014L6.64587 0.854143ZM0.645869 0.854143C0.599381 0.807655 0.562505 0.752466 0.537346 0.691727C0.512187 0.630987 0.499238 0.565887 0.499238 0.500143C0.499238 0.434399 0.512187 0.369299 0.537346 0.30856C0.562505 0.24782 0.599381 0.192631 0.645869 0.146143C0.692357 0.0996553 0.747546 0.0627792 0.808286 0.0376201C0.869025 0.012461 0.934126 -0.000488281 0.999869 -0.000488281C1.06561 -0.000488281 1.13071 0.012461 1.19145 0.0376201C1.25219 0.0627792 1.30738 0.0996553 1.35387 0.146143L5.35387 4.14614C5.40043 4.19259 5.43738 4.24776 5.46258 4.30851C5.48779 4.36926 5.50076 4.43438 5.50076 4.50014C5.50076 4.56591 5.48779 4.63103 5.46258 4.69178C5.43738 4.75252 5.40043 4.8077 5.35387 4.85414L1.35387 8.85414C1.25998 8.94803 1.13264 9.00077 0.999869 9.00077C0.867094 9.00077 0.739756 8.94803 0.645869 8.85414C0.551983 8.76026 0.499238 8.63292 0.499238 8.50014C0.499238 8.36737 0.551983 8.24003 0.645869 8.14614L4.29287 4.50014L0.645869 0.854143Z\" fill=\"#333333\"/>\r\n        </svg>\r\n        `;\r\n    }\r\n\r\n    table_configuration($, i, elem, table_name, table_settings, sheetUrl) {\r\n        let dom = `<\"filtering_input filtering_input_${i}\"${\r\n                table_settings?.show_x_entries ? \"l\" : \"\"\r\n            }${\r\n                table_settings?.search_bar ? \"f\" : \"\"\r\n            }>rt<\"bottom_options bottom_options_${i}\"${\r\n                table_settings?.show_info_block ? \"i\" : \"\"\r\n            }${  table_settings?.pagination ? \"p\" : \"\"}>`;\r\n\r\n        if (this.isProPluginActive()) {\r\n            dom = `B<\"filtering_input filtering_input_${i}\"${\r\n                table_settings?.show_x_entries ? \"l\" : \"\"\r\n            }${\r\n                table_settings?.search_bar ? \"f\" : \"\"\r\n            }>rt<\"bottom_options bottom_options_${i}\"${\r\n                table_settings?.show_info_block ? \"i\" : \"\"\r\n            }${  table_settings?.pagination ? \"p\" : \"\"}>`;\r\n\r\n            // change the cell format according to feature saved at database\r\n            this.changeRedirectionType(\r\n                table_settings?.redirection_type,\r\n                $(elem).find(\"#create_tables a\"),\r\n                $\r\n            );\r\n        }\r\n\r\n         // For free it need to use without pro checked\r\n         this.changeCellFormat(\r\n            table_settings?.cell_format,\r\n            $(elem).find(\"#create_tables th, td\"),\r\n            $\r\n        );\r\n\r\n        if (table_settings.table_view_mode === 'default-mode') {\r\n            // Without search \r\n            if ($.fn.DataTable && $(elem).find(\"#create_tables\").length) {\r\n                $(elem).find(\"#create_tables\").DataTable(this.table_obj($, table_name, table_settings, dom));\r\n            }\r\n        } else if (table_settings.table_view_mode === 'search-only-mode') {\r\n        \r\n            if ($.fn.DataTable && $(elem).find(\"#create_tables\").length) {\r\n                // Initialize DataTable and capture the instance\r\n                let table = $(elem).find(\"#create_tables\").DataTable(this.table_obj($, table_name, table_settings, dom));\r\n        \r\n                // Implement Custom Global Search\r\n                $.fn.dataTable.ext.search.push((settings, data, dataIndex) => {\r\n                    // Ensure the search applies only to this specific table\r\n                    if (settings.nTable !== table.table().node()) {\r\n                        return true;\r\n                    }\r\n        \r\n                    // Get the global search term\r\n                    let searchTerm = $(elem).find(\"#create_tables_filter input\").val().toLowerCase();\r\n        \r\n                    // If there's no search term, do not filter\r\n                    if (!searchTerm) {\r\n                        return true;\r\n                    }\r\n        \r\n                   \r\n                    // Check if enable_column_specific_search is true\r\n                    if (table_settings.enable_column_specific_search) {\r\n                        // If table_search_column is not empty, search only in those columns\r\n                        if (table_settings.table_search_column.length > 0) {\r\n                            for (let i = 0; i < table_settings.table_search_column.length; i++) {\r\n                                let colIndex = table_settings.table_search_column[i]; // Use the index directly\r\n                                let colValue = data[colIndex].toLowerCase();\r\n\r\n                                // If the search term is found in this column, return true\r\n                                if (colValue.includes(searchTerm)) {\r\n                                    return true;\r\n                                }\r\n                            }\r\n                        }else{\r\n                            // If table_search_column is empty, search across all columns\r\n                            for (let i = 0; i < data.length; i++) {\r\n                                let colValue = data[i].toLowerCase();\r\n                                if (colValue.includes(searchTerm)) {\r\n                                    return true;\r\n                                }\r\n                            }\r\n                        }\r\n                    } else {\r\n                        // If enable_column_specific_search is false, search across all columns\r\n                        for (let i = 0; i < data.length; i++) {\r\n                            let colValue = data[i].toLowerCase();\r\n                            if (colValue.includes(searchTerm)) {\r\n                                return true;\r\n                            }\r\n                        }\r\n                    }\r\n                    \r\n                    // If the search term is not found in any of the specified columns, filter out the row.\r\n                    return false;\r\n                });\r\n            }\r\n        } else {\r\n            // Without search \r\n            if ($.fn.DataTable && $(elem).find(\"#create_tables\").length) {\r\n                $(elem).find(\"#create_tables\").DataTable(this.table_obj($, table_name, table_settings, dom));\r\n            }\r\n        }\r\n        \r\n\r\n        \r\n        this.setPdfUrl(sheetUrl, $(elem).find(\".dt-buttons\"));\r\n\r\n        if (this.isProPluginActive()) {\r\n            this.reveal_export_btns($, elem, table_settings);\r\n        }\r\n\r\n        this.swap_input_filter($, i, table_settings);\r\n\r\n        this.swap_bottom_options($, i, table_settings);\r\n    }\r\n\r\n    changeRedirectionType(type, links, $) {\r\n        if (!links.length) return;\r\n        $.each(links, function (i, link) {\r\n            $(link).attr(\"target\", type);\r\n        });\r\n    }\r\n\r\n    changeCellFormat(formatStyle, tableCell, $) {\r\n        switch (formatStyle) {\r\n            case \"wrap\":\r\n                $.each(tableCell, function (i, cell) {\r\n                    $(cell).removeClass(\"clip_style\");\r\n                    $(cell).removeClass(\"expanded_style\");\r\n                    $(cell).addClass(\"wrap_style\");\r\n                });\r\n                break;\r\n\r\n            case \"clip\":\r\n                $.each(tableCell, function (i, cell) {\r\n                    $(cell).removeClass(\"wrap_style\");\r\n                    $(cell).removeClass(\"expanded_style\");\r\n                    $(cell).addClass(\"clip_style\");\r\n                });\r\n                break;\r\n            case \"expand\":\r\n                $.each(tableCell, function (i, cell) {\r\n                    $(cell).removeClass(\"clip_style\");\r\n                    $(cell).removeClass(\"wrap_style\");\r\n                    $(cell).addClass(\"expanded_style\");\r\n                });\r\n                break;\r\n\r\n            default:\r\n                break;\r\n        }\r\n    }\r\n\r\n    isProPluginActive() {\r\n        if (front_end_data.isProActive || front_end_data.isProActive != '') {\r\n            return true;\r\n        } else {\r\n            return false;\r\n        }\r\n    }\r\n\r\n    getSpreadsheetID(url) {\r\n        if (!url || url == \"\") return;\r\n\r\n        let sheetID = null;\r\n\r\n        sheetID = url.split(/\\//)[5];\r\n\r\n        if (sheetID) return sheetID;\r\n\r\n        return null;\r\n    }\r\n\r\n    getGridID(url) {\r\n        if (!url || url == \"\") return;\r\n\r\n        let gridID = null;\r\n\r\n        gridID = url.match(/gid=(\\w+)/);\r\n\r\n        if ( gridID != null ) {\r\n            gridID = gridID[1];\r\n        }\r\n\r\n        if (gridID) {\r\n            return gridID;\r\n        }\r\n\r\n        return null;\r\n    }\r\n\r\n    //PDF Export as PDF\r\n    setPdfUrl(url, elem) {\r\n        let spreadsheetID = this.getSpreadsheetID(url);\r\n        let gridID = this.getGridID(url);\r\n        let pdfUrl = `https://docs.google.com/spreadsheets/d/${spreadsheetID}/export?format=pdf&id=${spreadsheetID}&gid=${gridID}`;\r\n        // Forntend part design `<a class=\"ui dt-button inverted button transition pdf_btn\"\r\n        elem.append(\r\n            `<a class=\"ui inverted button export_btns pdf_btn\"\r\n                href=\"${pdfUrl}\"\r\n                download\r\n                title=\"${front_end_data.strings['export-pdf']}\"\r\n                >\r\n                <span>\r\n                    <img src=\"${front_end_data.iconsURL.filePdf}\" />\r\n                </span>\r\n            </a>`\r\n        );\r\n    }\r\n\r\n    getPaginateSettings = (tableSettings) => {\r\n        const theme = tableSettings?.table_style || \"default-style\";\r\n        const themePageStyles = tableSettings?.import_styles_theme_colors?.[theme] || {};\r\n        const PageStyles = themePageStyles.paginationStyle || 'default_pagination';\r\n\r\n\r\n        if (PageStyles === 'default_pagination') {\r\n\t\t\treturn {\r\n\t\t\t\tfirst: `<span class='paging-first-${PageStyles}'>${front_end_data.strings['first']}</span>`,\r\n\t\t\t\tprevious: `<span class='paging-backward-${PageStyles}'>${front_end_data.strings['previous']}</span>`,\r\n\t\t\t\tnext: `<span class='paging-forward-${PageStyles}'>${front_end_data.strings['next']}</span>`,\r\n\t\t\t\tlast: `<span class='paging-last-${PageStyles}'>${front_end_data.strings['last']}</span>`\r\n\t\t\t};\r\n\t\t} \r\n        else if(PageStyles === 'tailwind_pagination') {\r\n\t\t\treturn {\r\n\t\t\t\tfirst: `<span class='paging-first-${PageStyles}'>${front_end_data.strings['first']}</span>`,\r\n\t\t\t\tprevious: `<span class='paging-backward-${PageStyles}'>${this.PaginationTailwindBack2}</span>`,\r\n\t\t\t\tnext: `<span class='paging-forward-${PageStyles}'>${this.PaginationTainwildNext2}</span>`,\r\n\t\t\t\tlast: `<span class='paging-last-${PageStyles}'>${front_end_data.strings['last']}</span>`\r\n\t\t\t};\r\n\t\t}\r\n        else if(PageStyles === 'outlined_pagination') {\r\n\t\t\treturn {\r\n\t\t\t\tfirst: `<span class='paging-first-${PageStyles}'>${front_end_data.strings['first']}</span>`,\r\n\t\t\t\tprevious: `<span class='paging-backward-${PageStyles}'>${this.PaginationTailwindBack1}</span>`,\r\n\t\t\t\tnext: `<span class='paging-forward-${PageStyles}'>${this.PaginationTainwildNext1}</span>`,\r\n\t\t\t\tlast: `<span class='paging-last-${PageStyles}'>${front_end_data.strings['last']}</span>`\r\n\t\t\t};\r\n\t\t}\r\n        \r\n        else {\r\n\t\t\treturn {\r\n\t\t\t\tfirst: `<span class='paging-first-${PageStyles}'>${front_end_data.strings['first']}</span>`,\r\n\t\t\t\tprevious: `<span class='paging-backward-${PageStyles}'>‹</span>`,\r\n\t\t\t\tnext: `<span class='paging-forward-${PageStyles}'>›</span>`,\r\n\t\t\t\tlast: `<span class='paging-last-${PageStyles}'>${front_end_data.strings['last']}</span>`\r\n\t\t\t};\r\n\t\t}\r\n\r\n    }\r\n    \r\n    table_obj($, table_name, table_settings, dom) {\r\n\r\n         // Register the date format\r\n        $.fn.dataTable.moment('dd, MM, YYYY');\r\n        $.fn.dataTable.moment('HH:mm MMM D, YY');\r\n        $.fn.dataTable.moment('dddd, MMMM Do, YYYY');\r\n        $.fn.dataTable.moment('D.M.YYYY');\r\n        $.fn.dataTable.moment('DD/MM/YYYY');\r\n        $.fn.dataTable.moment('DD-MM-YYYY');\r\n        $.fn.dataTable.moment('D-MMM-YY');\r\n        $.fn.dataTable.moment('D-MMM-YYYY');\r\n        $.fn.dataTable.moment('MM/DD/YYYY');\r\n        $.fn.dataTable.moment('MM-DD-YYYY'); \r\n        $.fn.dataTable.moment('D MMM YYYY'); \r\n        $.fn.dataTable.moment('YYYY/MM/DD');\r\n        $.fn.dataTable.moment('YYYY-MM-DD');\r\n        $.fn.dataTable.moment('YYYY-MM-DD');  \r\n        $.fn.dataTable.moment('Do MMMM YYYY');\r\n        $.fn.dataTable.moment('D MMMM YYYY');\r\n        $.fn.dataTable.moment('MMMM Do, YYYY');\r\n        $.fn.dataTable.moment('dddd, MMMM D, YYYY'); \r\n        $.fn.dataTable.moment('ddd, MMM D, YYYY');\r\n        $.fn.dataTable.moment('MMMM D, YYYY');\r\n        \r\n\r\n        let table_object = {\r\n            dom: dom,\r\n        \r\n            // order: [[2, 'desc']],\r\n            order: table_settings.allow_singleshort\r\n\t\t\t\t\t\t? [[(table_settings.columnnumber ? table_settings.columnnumber : 0), table_settings.sorting_mode ? table_settings.sorting_mode : 'desc']]\r\n\t\t\t\t\t\t: (table_settings.allow_sorting ? [] : []),\r\n            \r\n            responsive: true,\r\n            lengthMenu: [\r\n                [1, 5, 10, 15, 30, 50],\r\n                [\r\n                    front_end_data.strings['1'],\r\n                    front_end_data.strings['5'],\r\n                    front_end_data.strings['10'],\r\n                    front_end_data.strings['15'],\r\n                    front_end_data.strings['30'],\r\n                    front_end_data.strings['50'],\r\n                ]\r\n            ],\r\n\r\n            language: {\r\n                search: front_end_data.strings['search'], \r\n                searchPlaceholder: front_end_data.strings['search-items'],\r\n                lengthMenu: front_end_data.strings['filtering_show'] + \" _MENU_ \" + front_end_data.strings['filtering_entries'],\r\n                info: front_end_data.strings['dataTables_info_showing'] + \" _START_ \" + front_end_data.strings['dataTables_info_to'] + \" _END_ \" + front_end_data.strings['dataTables_info_of'] + \" _TOTAL_ \" + front_end_data.strings['filtering_entries'],\r\n\r\n                emptyTable: front_end_data.strings['data-empty-notice'],\r\n                zeroRecords: front_end_data.strings['data-empty-notice'],\r\n                paginate: this.getPaginateSettings(table_settings),\r\n            },\r\n           \r\n            pagingType: 'simple_numbers', // simple_numbers // simple // numbers // full  // first_last_numbers // full_numbers\r\n            pageLength: parseInt(table_settings.default_rows_per_page),\r\n            lengthChange: true,\r\n            ordering: table_settings.allow_sorting,\r\n            destroy: true,\r\n            scrollX: true,\r\n        };\r\n\r\n        $('.gswpts_tables_container').each(function () {\r\n            let numberOfColumns = $(this).find('thead th').length;\r\n            let table_object = {\r\n                order: []\r\n            };\r\n        \r\n            for (let i = 0; i < numberOfColumns; i++) {\r\n                // table_object.order.push([i, 'asc']);\r\n                table_object.order.push([i, '']);\r\n            }\r\n        });\r\n\r\n        if (this.isProPluginActive()) {\r\n            table_object.buttons = [\r\n                {\r\n                    text: `<img src=\"${front_end_data.iconsURL.curlyBrackets}\" />`,\r\n                    className: \"ui inverted button export_btns json_btn\",\r\n                    action: function (e, dt, button, config) {\r\n                        var data = dt.buttons.exportData();\r\n                        $.fn.dataTable.fileSave(\r\n                            new Blob([JSON.stringify(data)]),\r\n                            `${table_name}.json`\r\n                        );\r\n                    },\r\n                    titleAttr: front_end_data.strings['export-json']\r\n                },\r\n                {\r\n                    text: `<img src=\"${front_end_data.iconsURL.fileCSV}\" />`,\r\n                    extend: \"csv\",\r\n                    className: \"ui inverted button export_btns csv_btn\",\r\n                    title: `${table_name}`,\r\n                    // titleAttr: \"Export as CSV\",\r\n                    titleAttr: front_end_data.strings['export-csv'],\r\n                },\r\n                {\r\n                    text: `<img src=\"${front_end_data.iconsURL.fileExcel}\" />`,\r\n                    extend: \"excel\",\r\n                    className: \"ui inverted button export_btns excel_btn\",\r\n                    title: `${table_name}`,\r\n                    titleAttr: front_end_data.strings['export-excel']\r\n                },\r\n                {\r\n                    text: `<img src=\"${front_end_data.iconsURL.printIcon}\" />`,\r\n                    extend: \"print\",\r\n                    className: \"ui inverted button export_btns print_btn\",\r\n                    title: `${table_name}`,\r\n                    titleAttr: front_end_data.strings['print']\r\n                },\r\n                {\r\n                    text: `<img src=\"${front_end_data.iconsURL.copySolid}\" />`,\r\n                    extend: \"copy\",\r\n                    className: \"ui inverted button export_btns copy_btn\",\r\n                    title: `${table_name}`,\r\n                    titleAttr: front_end_data.strings['copy']\r\n                },\r\n            ];\r\n\r\n            table_object.lengthMenu = [\r\n                [1, 5, 10, 15, 30, 50, 100, -1],\r\n                [\r\n                    front_end_data.strings['1'],\r\n                    front_end_data.strings['5'],\r\n                    front_end_data.strings['10'],\r\n                    front_end_data.strings['15'],\r\n                    front_end_data.strings['30'],\r\n                    front_end_data.strings['50'],\r\n                    front_end_data.strings['100'],\r\n                    front_end_data.strings['All']\r\n                ]\r\n            ];\r\n \r\n            //Column is needed to hide and backend code is not used actually to hide.\r\n            if ((table_settings?.hide_on_desktop_col && this.screenSize() === \"desktop\") || (table_settings?.hide_on_mobile_col && this.screenSize() === \"mobile\")) {\r\n                if (this.screenSize() === \"desktop\" && table_settings.hide_column) {\r\n                    table_object.columnDefs = this.hideColumnByScreen(\r\n                        table_settings.hide_column\r\n                    );\r\n                } else if (this.screenSize() === \"mobile\" && table_settings.hide_column_mobile) {\r\n                    table_object.columnDefs = this.hideColumnByScreen(\r\n                        table_settings.hide_column_mobile\r\n                    );\r\n                }\r\n            } \r\n        }\r\n        \r\n        // Table height \r\n        if (table_settings.vertical_scrolling) {\r\n            table_object.scrollY = `${table_settings.vertical_scrolling}px`;\r\n        }\r\n\r\n        return table_object;\r\n    }\r\n\r\n    // Return an array that will define the columns to hide\r\n    hideColumnByScreen(arrayValues) {\r\n        return [\r\n            {\r\n                targets: this.convertArrayStringToInteger(arrayValues),\r\n                visible: false,\r\n                searchable: false,\r\n            },\r\n        ];\r\n    }\r\n\r\n    // get the current screen size of user if greater than 740 return desktop or return mobile\r\n    screenSize() {\r\n        // Desktop screen size\r\n        if (screen.width > 740) {\r\n            return \"desktop\";\r\n        } else {\r\n            return \"mobile\";\r\n        }\r\n    }\r\n\r\n    // convert string to integer from arrays\r\n    convertArrayStringToInteger(arr) {\r\n        if (!arr) return [];\r\n        return arr.map((val) => parseInt(val));\r\n    }\r\n\r\n    reveal_export_btns($, elem, table_settings) {\r\n        if (!table_settings) return;\r\n\r\n        let export_btns = table_settings.table_export;\r\n\r\n        if (export_btns != \"empty\" && export_btns) {\r\n            export_btns.forEach((btn) => {\r\n                $(elem)\r\n                    .find(\".\" + btn + \"_btn\")\r\n                    .removeClass(\"export_btns\");\r\n            });\r\n        }\r\n    }\r\n\r\n    swap_input_filter($, i, table_settings) {\r\n        /* If checkbox is checked then swap filter */\r\n        if (table_settings?.swap_filter_inputs) {\r\n            $(\".filtering_input_\" + i + \"\").css(\"flex-direction\", \"row-reverse\");\r\n            $(\".filtering_input_\" + i + \" > #create_tables_length\").css({\r\n                \"margin-right\": \"0\",\r\n                \"margin-left\": \"auto\",\r\n            });\r\n            $(\".filtering_input_\" + i + \" > #create_tables_filter\").css({\r\n                \"margin-left\": \"0\",\r\n                \"margin-right\": \"auto\",\r\n            });\r\n        } else {\r\n            /* Set back to default position */\r\n            $(\".filtering_input_\" + i + \"\").css(\"flex-direction\", \"row\");\r\n            $(\".filtering_input_\" + i + \" > #create_tables_length\").css({\r\n                \"margin-right\": \"auto\",\r\n                \"margin-left\": \"0\",\r\n            });\r\n            $(\".filtering_input_\" + i + \" > #create_tables_filter\").css({\r\n                \"margin-left\": \"auto\",\r\n                \"margin-right\": \"0\",\r\n            });\r\n        }\r\n    }\r\n\r\n    swap_bottom_options($, i, table_settings) {\r\n        let style = {\r\n            flex_direction: \"row-reverse\",\r\n            table_info_style: {\r\n                margin_left: \"auto\",\r\n                margin_right: 0,\r\n            },\r\n            table_paginate_style: {\r\n                margin_left: 0,\r\n                margin_right: \"auto\",\r\n            },\r\n        };\r\n\r\n        if (table_settings?.swap_bottom_options) {\r\n            this.bottom_option_style($, style, i);\r\n        } else {\r\n            style[\"flex_direction\"] = \"row\";\r\n\r\n            style.table_info_style[\"margin_left\"] = 0;\r\n            style.table_info_style[\"margin_right\"] = \"auto\";\r\n\r\n            style.table_paginate_style[\"margin_left\"] = \"auto\";\r\n            style.table_paginate_style[\"margin_right\"] = 0;\r\n\r\n            this.bottom_option_style($, style, i);\r\n        }\r\n    }\r\n\r\n    bottom_option_style($, $arg, i) {\r\n        $(\".bottom_options_\" + i + \"\").css(\"flex-direction\", $arg[\"flex_direction\"]);\r\n        $(\".bottom_options_\" + i + \" > #create_tables_info\").css({\r\n            \"margin-left\": $arg[\"table_info_style\"][\"margin_left\"],\r\n            \"margin-right\": $arg[\"table_info_style\"][\"margin_right\"],\r\n        });\r\n        $(\".bottom_options_\" + i + \" > #create_tables_paginate\").css({\r\n            \"margin-left\": $arg[\"table_paginate_style\"][\"margin_left\"],\r\n            \"margin-right\": $arg[\"table_paginate_style\"][\"margin_right\"],\r\n        });\r\n    }\r\n\r\n    /**\r\n     * Header merge \r\n     */\r\n    handleHeaderMergedCells($, elem) {\r\n        var tableHeaders = $(elem).find('.thead-item[data-merge]');\r\n        \r\n        if(tableHeaders){\r\n            tableHeaders.each(function (index, header) {\r\n                // Check if the current header has the data-merge attribute.\r\n                var dataMerge = $(header).attr('data-merge');\r\n        \r\n                if (dataMerge) {\r\n                    dataMerge = JSON.parse(dataMerge);\r\n                    var startCol = dataMerge[0];\r\n                    var numCols = dataMerge[1];\r\n        \r\n                    // Add parentCellstart class to the starting cell\r\n                    $(header).addClass('parentCellstart');\r\n                    \r\n                    $(header).css({\r\n                        'text-align': 'center',\r\n                    });\r\n        \r\n                    // Update colspan attribute\r\n                    $(header).attr('colspan', numCols);\r\n        \r\n                    // Get the next cell in the row\r\n                    var nextCell = $(header).next();\r\n        \r\n                    // Loop through numCols starting from 1\r\n                    for (var i = 1; i < numCols; i++) {\r\n                        if (nextCell && nextCell.length) {\r\n                            $(nextCell).addClass('childCell');\r\n                            // nextCell.style.display = 'none'; \r\n                            nextCell = $(nextCell).next();\r\n                        }\r\n                    }\r\n    \r\n                    $(elem).find('.childCell').css('display', 'none');\r\n    \r\n                }\r\n            });\r\n        }\r\n    }\r\n\r\n    /**\r\n     * Table body merge\r\n     * @param {* table body merge} $ \r\n     * @param {*} elem \r\n     */\r\n\r\n    handleMergedCells($, elem) {\r\n        var tableRows = $(elem).find('.gswpts_rows');\r\n    \r\n        tableRows.each(function () {\r\n            var cells = $(this).find('td');\r\n    \r\n            cells.each(function () {\r\n                if ($(this).hasClass('parentCellstart')) {\r\n\r\n                    // Apply the logic from the previous conversation here\r\n                    var dataMerge = JSON.parse($(this).attr('data-merge'));\r\n                    var dataIndex = JSON.parse($(this).attr('data-index'));\r\n    \r\n                    for (var i = 0; i < dataMerge[0]; i++) {\r\n                        for (var j = 0; j < dataMerge[1]; j++) {\r\n                            var targetIndex = [\r\n                                dataIndex[0] + i,\r\n                                dataIndex[1] + j\r\n                            ];\r\n    \r\n                            var targetCell = $(elem).find('[data-index=\"[' + targetIndex.join(',') + ']\"]');\r\n    \r\n                            if (targetCell) {\r\n                                var cellDivContent = targetCell.find('.cell_div').text().trim();\r\n                                if (cellDivContent === '') {\r\n                                    targetCell.addClass('merged-cell');\r\n                                    targetCell.hide();\r\n\r\n                                    if ($(this).hasClass('parentCellstart')) {\r\n                                        $(this).css({\r\n                                            'text-align': 'center',\r\n                                            'vertical-align': 'middle'\r\n                                        });\r\n                                    }\r\n                                } else {\r\n                                    targetCell.addClass('normal-cell');\r\n                                }\r\n                            }\r\n                        }\r\n                    }\r\n                }\r\n            });\r\n        });\r\n    }\r\n\r\n    /**\r\n     * \r\n     * @param {Calculate the width and fixed the header issues, zoom in/out issues} $ \r\n     * @param {*} Add dynamic table width in header from body td calculated on tr\r\n     * @returns \r\n     */\r\n    handleTableWidth($, elem) {\r\n        // Store the original table widths to prevent continuous reduction.\r\n        if (!window.originalTableWidths) {\r\n            window.originalTableWidths = {};\r\n        }\r\n    \r\n        function setConsistentTableWidth(container) {\r\n            var tableId = $(container).attr('id') || 'table-' + Math.random().toString(36).substring(2, 10);\r\n\r\n            var table = $(container).find(\".ui.celled.display.table.gswpts_tables.dataTable.no-footer\");\r\n            \r\n            // Get container width as a fallback.\r\n            var containerWidth = $(container).width();\r\n            \r\n            // Get the first visible row.\r\n            var row = $(container).find(\"tr.gswpts_rows:visible\").first();\r\n            \r\n            if (row.length > 0) {\r\n                var rect = row[0].getBoundingClientRect();\r\n                var rowWidth = rect.width;\r\n                \r\n                // Check if this is the first time we're setting width for this table.\r\n                if (!window.originalTableWidths[tableId]) {\r\n                    // For tables with 4 or fewer columns, use container width instead of row width\r\n                    if ($(row).find('td, th').length <= 4) {\r\n                        window.originalTableWidths[tableId] = containerWidth;\r\n                    } else {\r\n                        window.originalTableWidths[tableId] = rowWidth;\r\n                    }\r\n                }\r\n                \r\n                // Use the stored original width\r\n                var targetWidth = window.originalTableWidths[tableId];\r\n                \r\n                // Make sure the width is never less than the container\r\n                if (targetWidth < containerWidth * 0.95) {\r\n                    targetWidth = containerWidth;\r\n                }\r\n                \r\n                // Apply the width to the table\r\n                table.css('width', targetWidth + \"px\");\r\n                \r\n                // Ensure headers have proper width\r\n                var headers = table.find(\"th\");\r\n                if (headers.length > 0) {\r\n                    headers.each(function() {\r\n                        var headerWidth = $(this).width();\r\n                        if (headerWidth === 0) {\r\n                            $(this).css('width', 'auto');\r\n                        }\r\n                    });\r\n                }\r\n            } else {\r\n                // If no visible rows, use container width\r\n                table.css('width', containerWidth + \"px\");\r\n            }\r\n        }\r\n        \r\n        if (elem.prevObject && elem.prevObject.length > 0) {\r\n            elem = elem.prevObject;\r\n        }\r\n        \r\n        if (elem.length === 0) {\r\n            return;\r\n        }\r\n        \r\n        // Apply width setting to each table container\r\n        elem.each(function(index, container) {\r\n            setConsistentTableWidth(container);\r\n        });\r\n        \r\n        // Handle resize events\r\n        $(window).off('resize.tableWidth').on('resize.tableWidth', function() {\r\n            elem.each(function(index, container) {\r\n                setConsistentTableWidth(container);\r\n            });\r\n        });\r\n    }\r\n\r\n        \r\n\r\n    /**\r\n     * Handle paginations\r\n     */\r\n    handlePaginations($, elem) {\r\n        function updatePaginationContent(container, style) {\r\n            container.find('span').each(function () {\r\n                var span = $(this);\r\n                if (span.hasClass('paging-backward-default_pagination') || span.hasClass('paging-backward-modern_pagination') || span.hasClass('paging-backward-simple_pagination') || span.hasClass('paging-backward-tailwind_pagination') || span.hasClass('paging-backward-outlined_pagination') || span.hasClass('paging-backward-undefined')) {\r\n                    if (style === 'simple_pagination') {\r\n                        // span.html('‹');\r\n                        //span.empty().append((this.PaginationTailwindBack1);\r\n                        span.html(this.PaginationTailwindBack1);\r\n                    } \r\n                    else if (style === 'modern_pagination') {\r\n                        span.html('← PREV');\r\n                    } \r\n                    else if(style === 'tailwind_pagination'){\r\n                        // span.html('‹‹');\r\n                        span.html(this.PaginationTailwindBack2);\r\n                    }\r\n\r\n                    else if(style === 'outlined_pagination'){\r\n                        // span.html('‹');\r\n                        span.html(this.PaginationTailwindBack1);\r\n                    }\r\n\r\n                    else {\r\n                        span.html('Previous');\r\n                    }\r\n                }\r\n                if (span.hasClass('paging-forward-default_pagination') || span.hasClass('paging-forward-modern_pagination') || span.hasClass('paging-forward-simple_pagination') || span.hasClass('paging-forward-tailwind_pagination') || span.hasClass('paging-forward-outlined_pagination') || span.hasClass('paging-forward-undefined')) {\r\n                    if (style === 'simple_pagination') {\r\n                        // span.html('›');\r\n                        span.html(this.PaginationTainwildNext1);\r\n                    } \r\n                    else if (style === 'modern_pagination') {\r\n                        span.html('NEXT →');\r\n                    } \r\n                    else if(style === 'tailwind_pagination'){\r\n                        // span.html('››');\r\n                        span.html(this.PaginationTainwildNext2);\r\n                    }\r\n                    else if(style === 'outlined_pagination'){\r\n                        // span.html('›');\r\n                        span.html(this.PaginationTainwildNext1);\r\n                    }\r\n                    else {\r\n                        span.html('Next');\r\n                    }\r\n                }\r\n            });\r\n        }\r\n        \r\n\r\n        // Find the pagination containers within the specified element\r\n        var tablePage = $(elem).find('.dataTables_paginate.paging_simple_numbers');\r\n\r\n        if (tablePage.length) {\r\n            tablePage.each(function () {\r\n                var container = $(this);\r\n                // console.log(container)\r\n                var style = ''; // Variable to store the detected style\r\n\r\n                // Check for simple pagination\r\n                if (container.find('.paging-forward-simple_pagination, .paging-backward-simple_pagination, .paging-first-simple_pagination, .paging-last-simple_pagination').length) {\r\n                    container.addClass('simple-pagination-active');\r\n                    style = 'simple_pagination';\r\n                } \r\n                \r\n                else if (container.find('.paging-forward-modern_pagination, .paging-backward-modern_pagination, .paging-first-modern_pagination, .paging-last-modern_pagination').length) {\r\n                    container.addClass('modern-pagination-active');\r\n                    style = 'modern_pagination';\r\n                }\r\n                \r\n                else if (container.find('.paging-forward-tailwind_pagination, .paging-backward-tailwind_pagination, .paging-first-tailwind_pagination, .paging-last-tailwind_pagination').length) {\r\n                    container.addClass('tailwind-pagination-active');\r\n                    style = 'tailwind_pagination';\r\n                }\r\n\r\n                else if (container.find('.paging-forward-outlined_pagination, .paging-backward-outlined_pagination, .paging-first-outlined_pagination, .paging-last-outlined_pagination').length) {\r\n                    container.addClass('outlined-pagination-active');\r\n                    style = 'outlined_pagination';\r\n                }\r\n                \r\n                else if (container.find('.paging-forward-default_pagination, .paging-backward-default_pagination, .paging-first-default_pagination, .paging-last-default_pagination').length) {\r\n                    container.addClass('default-pagination-active');\r\n                    style = 'default_pagination';\r\n                } \r\n                \r\n                else if (container.find('.paging-forward-undefined, .paging-backward-undefined, .paging-first-undefined, .paging-last-undefined').length) {\r\n                    container.addClass('default-preset-pagination-active');\r\n                    style = 'default_preset_pagination';\r\n                }\r\n\r\n                // Initial update of the pagination content\r\n                updatePaginationContent(container, style);\r\n\r\n                // Attach event listener to update content on pagination click\r\n                container.on('click', function () {\r\n                    updatePaginationContent(container, style);\r\n                });\r\n\r\n\r\n                // Trigger pagination design \r\n                var sortingElements = document.querySelectorAll('.sorting');\r\n                var dataTablesLength = document.querySelectorAll('.dataTables_length');\r\n                var dataTables_filter = document.querySelectorAll('.dataTables_filter');\r\n                var createTablesFilterInputs = document.querySelectorAll('.dataTables_filter input');\r\n\r\n                sortingElements.forEach(function (sortingElement) {\r\n                    sortingElement.addEventListener('click', function () {\r\n                        updatePaginationContent(container, style);\r\n                    });\r\n                });\r\n            \r\n                // Add a click event listener to each dataTablesLength element\r\n                dataTablesLength.forEach(function (LengthElement) {\r\n                    LengthElement.addEventListener('click', function () {\r\n                        updatePaginationContent(container, style);\r\n                        \r\n                    });\r\n                });\r\n            \r\n                // Add a click event listener to each dataTables_filter element\r\n                dataTables_filter.forEach(function (FilterElement) {\r\n                    FilterElement.addEventListener('click', function () {\r\n                        updatePaginationContent(container, style);\r\n                    });\r\n                });\r\n\r\n                createTablesFilterInputs.forEach(function (createTablesFilterInput) {\r\n                    createTablesFilterInput.addEventListener('input',function () {\r\n                        updatePaginationContent(container, style);\r\n                       \r\n                    });\r\n                });\r\n\r\n                \r\n            });\r\n        }\r\n    }\r\n\r\n\r\n\r\n\r\n    /**\r\n     * Generate and load theme style into head\r\n     * @param {string} themeName - The theme name to be used in the CSS class names.\r\n     */\r\n    loadThemeStyle($, elem) {\r\n        let themeName = '';\r\n        let classList = $(elem).attr('class').split(/\\s+/);\r\n        let gswptsCount = 0;\r\n\r\n        for (let className of classList) {\r\n            if (className.startsWith('gswpts_')) {\r\n                gswptsCount++;\r\n                if (gswptsCount === 3) {\r\n                    themeName = className.replace('gswpts_', '');\r\n                    break;\r\n                }\r\n            }\r\n        }\r\n\r\n        // Check if the themeName is a default style\r\n        if (['default-style', 'style-1', 'style-2', 'style-3', 'style-4', 'style-5', 'style-6', 'style-7', 'style-8'].includes(themeName)) {\r\n            \r\n            // Find the table element within the provided elem\r\n            const tableElem = $(elem).find('table.ui.celled.display.table.gswpts_tables');\r\n\r\n            if (tableElem.length === 0) {\r\n                console.error('Table element not found');\r\n                return;\r\n            }\r\n\r\n            const tableStyles = tableElem.attr('style');\r\n\r\n            function getCustomPropertyValue(styleString, propertyName) {\r\n                const regex = new RegExp(`${propertyName}:\\\\s*([^;]+);?`, 'i');\r\n                const match = styleString.match(regex);\r\n                return match ? match[1].trim() : null;\r\n            }\r\n            \r\n\r\n            const paginationColors = getCustomPropertyValue(tableStyles, '--pagination-colors');\r\n\r\n            const hexToRgba = (hex, opacity) => {\r\n\t\t\t\tconst bigint = parseInt(hex.slice(1), 16);\r\n\t\t\t\tconst r = (bigint >> 16) & 255;\r\n\t\t\t\tconst g = (bigint >> 8) & 255;\r\n\t\t\t\tconst b = bigint & 255;\r\n\t\t\t\r\n\t\t\t\treturn `rgba(${r}, ${g}, ${b}, ${opacity})`;\r\n\t\t\t}\r\n\r\n\r\n            let backgroundColor;\r\n\t\t\tlet textColor;\r\n\r\n            if(paginationColors){\r\n                backgroundColor = hexToRgba(paginationColors, 0.1); \r\n                textColor = hexToRgba(paginationColors, 0.9); \r\n            }\r\n\r\n            let defaultPaginationColor = paginationColors || '#828282';\r\n            let simplePaginationColor = paginationColors || '#000'; \r\n\r\n\r\n\r\n            let styleContent = `\r\n                .gswpts_${themeName} .dataTables_paginate a.paginate_button.item {\r\n                    color: #000;\r\n                }\r\n\r\n                .gswpts_${themeName} .dataTables_paginate.default-pagination-active .paginate_button.item.active {\r\n                    background-color: ${defaultPaginationColor} !important;\r\n                    color: #ffffff !important;\r\n                }\r\n\r\n                // Simple pagination free -------------------\r\n                .gswpts_${themeName} .simple-pagination-active .paginate_button, \r\n                .gswpts_${themeName} .simple-pagination-active .paginate_button.disabled, \r\n                .gswpts_${themeName} .simple-pagination-active .ellipsis{\r\n\r\n                    font-size: 14px;\r\n                    border: none;\r\n                    // margin: 0;\r\n                    // padding: 9px 16px;\r\n                    margin: 5px;\r\n                    padding: 5px 11px 4px 11px;\r\n\r\n                    font-weight: bold;\r\n                    display: flex;\r\n                    justify-content: center;\r\n                    align-items: center;\r\n                    flex-wrap: wrap;\r\n\r\n                }\r\n\r\n                .gswpts_${themeName} .simple-pagination-active .pagination.menu a{\r\n                    text-decoration: none;\r\n                }\r\n\r\n                .gswpts_${themeName} .dataTables_paginate.simple-pagination-active .paginate_button.item.active {\r\n                    background-color: ${simplePaginationColor} !important;\r\n                    color: #ffffff !important;\r\n                }\r\n\r\n                    \r\n                // Tailwind -----------------------------------------\r\n                .gswpts_${themeName} .tailwind-pagination-active .paginate_button.item.previous.disabled,\r\n                .gswpts_${themeName} .tailwind-pagination-active .paginate_button.item.next.disabled{\r\n                    border: unset !important;\r\n                    box-shadow: unset !important;\r\n                }\r\n\r\n                .gswpts_${themeName} .dataTables_paginate.tailwind-pagination-active .paginate_button.item.active {\r\n                    background-color: ${backgroundColor} !important;\r\n                    color: ${textColor} !important;\r\n                    border-radius: 5px !important;\r\n                }\r\n\r\n                .gswpts_${themeName} .dataTables_paginate.modern-pagination-active .paginate_button.item.active {\r\n                    background-color: ${paginationColors} !important;\r\n                    color: #ffffff !important;\r\n                }\r\n\r\n                // outlined\r\n               \r\n\r\n                .gswpts_${themeName} .outlined-pagination-active .paginate_button.item.previous.disabled,\r\n                .gswpts_${themeName} .outlined-pagination-active .paginate_button.item.next.disabled{\r\n                    border: unset !important;\r\n                    box-shadow: unset !important;\r\n                }\r\n\r\n                .gswpts_${themeName} .dataTables_paginate.outlined-pagination-active .paginate_button.item.active {\r\n                    background-color: #fff !important;\r\n                    border: 1px solid ${paginationColors} !important;\r\n                    color: ${paginationColors} !important;\r\n                }\r\n\r\n                .gswpts_${themeName} .dataTables_paginate.outlined-pagination-active .pagination.menu .previous\r\n                {\r\n                    background-color: ${paginationColors} !important;\r\n                    color: #fff !important;\r\n                }\r\n\r\n                .gswpts_${themeName} .dataTables_paginate.outlined-pagination-active .pagination.menu .previous.disabled\r\n                {\r\n                    background-color: #F2F2F2 !important;\r\n                    color: #666 !important;\r\n                     svg path {\r\n                        fill: #666 !important\r\n                    }\r\n                }\r\n\r\n                .gswpts_${themeName} .dataTables_paginate.outlined-pagination-active .pagination.menu .next\r\n                {\r\n                    background-color: ${paginationColors} !important;\r\n                    color: #fff !important;\r\n                }\r\n\r\n                .gswpts_${themeName} .dataTables_paginate.outlined-pagination-active .pagination.menu .next.disabled\r\n                {\r\n                    background-color: #F2F2F2 !important;\r\n                    color: #666 !important;\r\n                     svg path {\r\n                        fill: #666 !important;\r\n                    }\r\n                }\r\n\r\n                \r\n\r\n            `;\r\n            \r\n\r\n            if (tableStyles.includes('--pagination_center: 1;')) {\r\n                // console.log(\"Found\");\r\n                styleContent += `\r\n                    .gswpts_${themeName} #create_tables_paginate#create_tables_paginate {\r\n                        margin-left: 40% !important;\r\n                        position: absolute;\r\n                        margin-top: 30px;\r\n                        margin-right: 28% !important;\r\n                    }\r\n                    \r\n                `;\r\n            }\r\n\r\n            // Create a <style> element and append it to the head\r\n            const styleElement = document.createElement('style');\r\n            styleElement.id = `swptls-default-theme-pagination-${themeName}`;\r\n            styleElement.textContent = styleContent;\r\n            document.head.appendChild(styleElement);\r\n        \r\n            // return;\r\n        }\r\n        else{\r\n            // Find the table element within the provided elem\r\n            const tableElem = $(elem).find('table.ui.celled.display.table.gswpts_tables');\r\n\r\n            if (tableElem.length === 0) {\r\n                console.error('Table element not found');\r\n                return;\r\n            }\r\n\r\n            const tableStyles = tableElem.attr('style');\r\n\r\n            function getCustomPropertyValue(styleString, propertyName) {\r\n                // Create a regular expression to find the property name followed by its value\r\n                const regex = new RegExp(`${propertyName}:\\\\s*([^;]+);?`, 'i');\r\n                const match = styleString.match(regex);\r\n                return match ? match[1].trim() : null;\r\n            }\r\n            const paginationColors = getCustomPropertyValue(tableStyles, '--pagination-colors');\r\n\r\n            const hexToRgba = (hex, opacity) => {\r\n\t\t\t\tconst bigint = parseInt(hex.slice(1), 16);\r\n\t\t\t\tconst r = (bigint >> 16) & 255;\r\n\t\t\t\tconst g = (bigint >> 8) & 255;\r\n\t\t\t\tconst b = bigint & 255;\r\n\t\t\t\r\n\t\t\t\treturn `rgba(${r}, ${g}, ${b}, ${opacity})`;\r\n\t\t\t}\r\n\r\n\r\n            let backgroundColor;\r\n\t\t\tlet textColor;\r\n\r\n            backgroundColor = hexToRgba(paginationColors, 0.1); \r\n\t\t\ttextColor = hexToRgba(paginationColors, 0.9); \r\n\r\n\r\n            let styleContent = `\r\n                \r\n                .gswpts_${themeName} table.ui.celled.display {\r\n                    border: none;\r\n                    border-collapse: unset;\r\n                }   \r\n                    \r\n                // Pagination \r\n                // Default pagination -------------------------------------------//\r\n\r\n                .gswpts_${themeName} .default-pagination-active .paginate_button.item.previous.disabled,\r\n                .gswpts_${themeName} .default-pagination-active .paginate_button.item.next.disabled\r\n                {\r\n                    border: 1px solid rgba(169,161,161,0.23922) !important;\r\n                    box-shadow: unset !important;\r\n                }\r\n\r\n                .gswpts_${themeName} .dataTables_paginate.default-pagination-active{\r\n                --pagination-colors: ${paginationColors};\r\n                    a.paginate_button.item.active {\r\n                        background-color: var(--pagination-colors) !important;\r\n                        color: #ffffff !important;\r\n                    }\r\n                }\r\n\r\n                // Modern pagination -------------------------------------------//\r\n                \r\n                .gswpts_${themeName} .modern-pagination-active .paginate_button.item.previous.disabled,\r\n                .gswpts_${themeName} .modern-pagination-active .paginate_button.item.next.disabled{\r\n                    border: unset !important;\r\n                    box-shadow: unset !important;\r\n                }\r\n                \r\n                .gswpts_${themeName} .dataTables_paginate.modern-pagination-active{\r\n                --pagination-colors: ${paginationColors};\r\n                    a.paginate_button.item.active {\r\n                        background-color: var(--pagination-colors) !important;\r\n                        color: #ffffff !important;\r\n                        border-radius: 50%;\r\n                        border: transparent;\r\n\r\n                    }\r\n                }\r\n\r\n                .paginate_button.previous.disabled {\r\n                    opacity: 0.5;\r\n                }\r\n\r\n                .paginate_button.next.disabled .paging-forward-modern_pagination{\r\n                    opacity: 0.5;\r\n                }\r\n\r\n                .gswpts_${themeName} .dataTables_paginate.modern-pagination-active .paginate_button{\r\n                    box-sizing: border-box;\r\n                    display: inline-block;\r\n                    min-width: 1.5em;\r\n                    padding: .5em 1em;\r\n                    margin-left: 2px;\r\n                    text-align: center;\r\n                    text-decoration: none !important;\r\n                    cursor: pointer;\r\n                    color: inherit !important;\r\n                    border: 1px solid transparent;\r\n                    border-radius: 2px;\r\n                    background: transparent;\r\n\r\n                }\r\n\r\n                // Simple pagination -------------------------------------------//\r\n                \r\n                .gswpts_${themeName} .simple-pagination-active .paginate_button.item.previous.disabled,\r\n                .gswpts_${themeName} .simple-pagination-active .paginate_button.item.next.disabled{\r\n                    border: unset !important;\r\n                    box-shadow: unset !important;\r\n                }\r\n                \r\n                .gswpts_${themeName} .dataTables_paginate.simple-pagination-active{\r\n                --pagination-colors: ${paginationColors};\r\n                    a.paginate_button.item.active {\r\n                        background-color: var(--pagination-colors) !important;\r\n                        color: #ffffff !important;\r\n                        border-radius: 4px;\r\n                        border: transparent;\r\n\r\n                    }\r\n                }\r\n\r\n                .paginate_button.previous.disabled {\r\n                    opacity: 0.5;\r\n                }\r\n\r\n                .paginate_button.next.disabled .paging-forward-simple_pagination{\r\n                    opacity: 0.5;\r\n                }\r\n\r\n                .gswpts_${themeName} .dataTables_paginate.simple-pagination-active .paginate_button{\r\n                    box-sizing: border-box;\r\n                    display: inline-block;\r\n                    min-width: 1.5em;\r\n                    padding: .5em 1em;\r\n                    margin-left: 2px;\r\n                    text-align: center;\r\n                    text-decoration: none !important;\r\n                    cursor: pointer;\r\n                    color: inherit !important;\r\n                    border: 1px solid transparent;\r\n                    border-radius: 2px;\r\n                    background: transparent;\r\n\r\n                }\r\n\r\n                // Tailwind pagination -------------------------------------------//\r\n                \r\n                .gswpts_${themeName} .tailwind-pagination-active .paginate_button.item.previous.disabled,\r\n                .gswpts_${themeName} .tailwind-pagination-active .paginate_button.item.next.disabled{\r\n                    border: unset !important;\r\n                    box-shadow: unset !important;\r\n                }\r\n                \r\n                .gswpts_${themeName} .dataTables_paginate.tailwind-pagination-active{\r\n                --pagination-colors: ${paginationColors};\r\n                    a.paginate_button.item.active {\r\n                        background-color: ${backgroundColor} !important;\r\n                        color: ${textColor} !important;\r\n                        border-radius: 4px;\r\n                        border: transparent;\r\n\r\n                    }\r\n                }\r\n\r\n                .paginate_button.previous.disabled {\r\n                    opacity: 0.5;\r\n                }\r\n\r\n                .paginate_button.next.disabled .paging-forward-tailwind_pagination{\r\n                    opacity: 0.5;\r\n                }\r\n\r\n                .gswpts_${themeName} .dataTables_paginate.tailwind-pagination-active .paginate_button{\r\n                    box-sizing: border-box;\r\n                    display: inline-block;\r\n                    min-width: 1.5em;\r\n                    padding: .5em 1em;\r\n                    margin-left: 2px;\r\n                    text-align: center;\r\n                    text-decoration: none !important;\r\n                    cursor: pointer;\r\n                    color: inherit !important;\r\n                    border: 1px solid transparent;\r\n                    border-radius: 2px;\r\n                    background: transparent;\r\n\r\n                }\r\n\r\n                // Outline pagination -------------------------------------------//\r\n                \r\n                .gswpts_${themeName} .outlined-pagination-active .paginate_button.item.previous.disabled,\r\n                .gswpts_${themeName} .outlined-pagination-active .paginate_button.item.next.disabled{\r\n                    border: unset !important;\r\n                    box-shadow: unset !important;\r\n                }\r\n                \r\n                .gswpts_${themeName} .dataTables_paginate.outlined-pagination-active{\r\n                --pagination-colors: ${paginationColors};\r\n                    a.paginate_button.item.active {\r\n                        background-color: #ffffff !important;\r\n                        color: var(--pagination-colors) !important;\r\n                        border: 1px solid var(--pagination-colors) !important;\r\n                        border-radius: 5px !important;\r\n\r\n                    }\r\n\r\n                    span.paging-forward-outlined_pagination{\r\n                        background-color: var(--pagination-colors) !important;\r\n                        color: #ffffff !important;\r\n                        border-radius: 5px !important;\r\n                        padding: 10px 18px;\r\n                    }\r\n\r\n                    .paginate_button.previous{\r\n                        background-color: var(--pagination-colors) !important;\r\n                        border-radius: 5px !important;\r\n                        \r\n                        svg path {\r\n                            fill: #ffffff !important;\r\n                        }\r\n                    }\r\n\r\n                    .paginate_button.previous.disabled {\r\n                        background-color: #F2F2F2 !important;\r\n                        color: #666 !important; \r\n                        svg path {\r\n                            fill: #666 !important;\r\n                        }\r\n                    }\r\n\r\n                    .paginate_button.next.disabled .paging-forward-outlined_pagination{\r\n                        background-color: #F2F2F2 !important;\r\n                        color: #666 !important; \r\n                        svg path {\r\n                            fill: #666 !important;\r\n                        }\r\n                    }\r\n                }\r\n                    \r\n                .gswpts_${themeName} .dataTables_paginate.outlined-pagination-active .paginate_button{\r\n                    box-sizing: border-box;\r\n                    display: inline-block;\r\n                    min-width: 1.5em;\r\n                    padding: .5em 1em;\r\n                    margin-left: 2px;\r\n                    text-align: center;\r\n                    text-decoration: none !important;\r\n                    cursor: pointer;\r\n                    color: inherit !important;\r\n                    border: 1px solid transparent;\r\n                    border-radius: 2px;\r\n                    background: transparent;\r\n\r\n                }\r\n                   \r\n            `;\r\n\r\n\r\n            // Check for border type\r\n            if (tableStyles.includes('--border-type: rounded;')) {\r\n                styleContent += `\r\n                    .gswpts_${themeName} thead th:first-child {\r\n                        border-radius: var(--border-radius) 0 0 0 !important\r\n                    }\r\n                    .gswpts_${themeName} thead th:last-child {\r\n                        border-radius: 0 var(--border-radius) 0 0 !important\r\n                    }\r\n                    .gswpts_${themeName} tr:last-child td:first-child {\r\n                        border-radius: 0 0 0 var(--border-radius) !important\r\n                    }\r\n                    .gswpts_${themeName} tr:last-child td:last-child {\r\n                        border-radius: 0 0 var(--border-radius) 0 !important\r\n                    }\r\n                `;\r\n            }\r\n\r\n            \r\n            // Outside border \r\n            styleContent += `\r\n                /* .gswpts_${themeName} tbody tr td:first-child {\r\n                    border-left: 1px solid var(--outside-border-color) !important;\r\n                }\r\n\r\n                .gswpts_${themeName}  tbody tr td:last-child {\r\n                    border-right: 1px solid var(--outside-border-color) !important;\r\n                } */\r\n\r\n                .gswpts_${themeName} tbody tr:last-child td {\r\n                    border-bottom: 1px solid var(--outside-border-color) !important;\r\n                }\r\n\r\n            `;\r\n\r\n            // Roundeed border \r\n            if (tableStyles.includes('--border-type: rounded;')) {\r\n                styleContent += `\r\n                    .gswpts_${themeName} thead th:first-child {\r\n                        border-radius: var(--border-radius) 0 0 0 !important;\r\n                        border-right: none !important;\r\n                    }\r\n\r\n                    .gswpts_${themeName} thead th:last-child {\r\n                        border-radius: 0 var(--border-radius) 0 0 !important;\r\n                        border-left: none !important;\r\n                    }\r\n\r\n                    .gswpts_${themeName} tr:last-child td:first-child {\r\n                        border-radius: 0 0 0 var(--border-radius) !important;\r\n                    }\r\n\r\n                    .gswpts_${themeName} tr:last-child td:last-child {\r\n                        border-radius: 0 0 var(--border-radius) 0 !important;\r\n                    }\r\n                `;\r\n            }\r\n\r\n            // Check for column color activation\r\n            if (tableStyles.includes('--active-row-column-mode: 1;') && tableStyles.includes('--column-color-active: 1;')) {\r\n                styleContent += `\r\n                    .gswpts_${themeName} tbody td:nth-child(odd) {\r\n                        background-color: var(--body-bg-color-odd) !important;\r\n                    }\r\n                    .gswpts_${themeName} tbody td:nth-child(even) {\r\n                        background-color: var(--body-bg-color-even) !important;\r\n                    }\r\n                `;\r\n            }\r\n\r\n            // Check for row color activation\r\n            if (tableStyles.includes('--active-row-column-mode: 1;') && tableStyles.includes('--row-color-active: 1;')) {\r\n                styleContent += `\r\n                    .gswpts_${themeName} tbody tr:nth-child(even) > td {\r\n                        background-color: var(--body-bg-color-even) !important;\r\n                    }\r\n                    .gswpts_${themeName} tbody tr:nth-child(odd) > td {\r\n                        background-color: var(--body-bg-color-odd) !important;\r\n                    }\r\n                `;\r\n                \r\n            }\r\n\r\n        \r\n\r\n            // Hover \r\n            // Check for column hover activation\r\n            if (tableStyles.includes('--hover-mode-row: 1;')) {\r\n                styleContent += `\r\n                    .gswpts_${themeName} tbody tr:hover td,\r\n                    .gswpts_${themeName} tbody tr:hover th {\r\n                        background-color: var(--hover-bg-color) !important;\r\n                        color: var(--hover-text-color) !important;\r\n                    }\r\n                `;\r\n            }\r\n\r\n            if (tableStyles.includes('--hover-mode-col: 1;')) {\r\n                styleContent += `\r\n                    .gswpts_${themeName} table {\r\n                        overflow: hidden;\r\n                    }\r\n                    .gswpts_${themeName} td, th{\r\n                        border: 1px solid #999;\r\n                        padding: 10px;\r\n                        position: relative;\r\n                    }\r\n                    .gswpts_${themeName} td:hover::after { \r\n                        background-color: var(--hover-bg-color) !important;\r\n                        opacity: 0.2; \r\n                        content: '';  \r\n                        height: 10000px;    \r\n                        left: 0;\r\n                        position: absolute;  \r\n                        top: -5000px;\r\n                        width: 100%;\r\n                        z-index: 1;     \r\n                        transition: 300ms;  \r\n                    }\r\n                `;\r\n            }\r\n            \r\n\r\n            if (tableStyles.includes('--hover-mode-none: 1;')) {\r\n                styleContent += `\r\n                    .gswpts_${themeName} tbody td:hover,\r\n                    .gswpts_${themeName} tbody th:hover {\r\n                        background-color: var(--body-bg-color);\r\n                            color: var(--body-text-color);\r\n                    }\r\n                `;\r\n            }\r\n\r\n            if (tableStyles.includes('--pagination_center: 1;')) {\r\n                // console.log(\"Found\");\r\n                styleContent += `\r\n                    .gswpts_${themeName} #create_tables_paginate#create_tables_paginate {\r\n                        margin-left: 40% !important;\r\n                    }\r\n                    \r\n                `;\r\n            }\r\n            \r\n\r\n            // Create a <style> element and append it to the head\r\n            const styleElement = document.createElement('style');\r\n            styleElement.id = `swptls-custom-theme-style-${themeName}`;\r\n            styleElement.textContent = styleContent;\r\n            document.head.appendChild(styleElement);\r\n        }\r\n        \r\n\r\n        \r\n    }\r\n\r\n\r\n    /**\r\n     * Sort disable and hide from table\r\n     * @returns \r\n     */\r\n\r\n    handleSortingDisable($, elem) {\r\n        // Check if elem has a prevObject, and use it if present\r\n        if (elem.prevObject && elem.prevObject.length > 0) {\r\n            elem = elem.prevObject;\r\n        }\r\n    \r\n        // Check if the element exists\r\n        if (elem.length === 0) {\r\n            console.log(\"No element found within the given object.\");\r\n            return;\r\n        }\r\n    \r\n        // Iterate over the table containers\r\n        elem.each(function (index, container) {\r\n            var wrapper = $(container).find(\"#create_tables_wrapper\");\r\n    \r\n            // Find the headers and cells with sorting functionality\r\n            // var sortingHeaders = wrapper.find(\"th.sorting\"); // for all column without specific column\r\n            var sortingHeaders = wrapper.find(\"th.thead-item, th.sorting_asc, th.sorting_desc\"); // to hide full sorting \r\n    \r\n            // Disable click and pointer events\r\n            sortingHeaders.css({\r\n                \"pointer-events\": \"none\", \r\n                \"cursor\": \"default\",     \r\n            });\r\n    \r\n            // Add a class to hide the sorting icon\r\n            sortingHeaders.each(function () {\r\n                var element = $(this);\r\n    \r\n                // Add class to hide ::after icons\r\n                element.addClass(\"sorting-icon-hidden\");\r\n            });\r\n        });\r\n    }\r\n\r\n\r\n    // Updaet one with fix empty search click issues \r\n    /**\r\n     * Search wise table show and hide \r\n     * @returns \r\n     */\r\n    handleSearchoptions($, elem, search_by) {\r\n        if (elem.prevObject && elem.prevObject.length > 0) {\r\n            elem = elem.prevObject;\r\n        }\r\n\r\n        if (elem.length === 0) {\r\n            console.log(\"No element found within the given object.\");\r\n            return;\r\n        }\r\n\r\n        elem.each(function (index, container) {\r\n            var wrapper = $(container).find(\"#create_tables_wrapper\");\r\n            var searchInput = wrapper.find(\"#create_tables_filter input[type='search']\");\r\n            var tableContainer = wrapper.find(\".dataTables_scroll\");\r\n\r\n            if (searchInput.length === 0) {\r\n                console.log('Search input not found inside #create_tables_filter for container:', container);\r\n                return;\r\n            }\r\n            if (tableContainer.length === 0) {\r\n                console.log('Table container not found for container:', container);\r\n                return;\r\n            }\r\n\r\n            wrapper.find(\".dataTables_length\").hide();\r\n            wrapper.find(\".bottom_options.bottom_options_0\").hide();\r\n\r\n            function toggleTableVisibility() {\r\n                var searchTerm = searchInput.val();\r\n                \r\n                // Condition for `search-by-typing`\r\n                if ( search_by === 'search-by-typing' ) {\r\n                    if (!searchTerm || searchTerm.length < 2) {\r\n                        tableContainer.hide();\r\n                    } else {\r\n                        tableContainer.show();\r\n                    }\r\n                } \r\n                // Condition for `search-by-press`\r\n                else if (search_by === 'search-by-press') {\r\n                    tableContainer.hide(); // Initially hide the table\r\n                    \r\n                    // Wait for the button click or Enter key event to show the table\r\n                    $(document).on('keypress', function (event) {\r\n                        if (event.which == 13) { // Enter key press\r\n                            var searchTerm = searchInput.val(); // Check the value again\r\n                            if (searchTerm && searchTerm.length >= 2) {\r\n                                tableContainer.show(); // Show the table only if search term is valid\r\n                            } else {\r\n                                tableContainer.hide(); // Keep table hidden if search is empty\r\n                                console.log(\"Search is empty. Table will not be shown.\");\r\n                            }\r\n                        }\r\n                    });\r\n                }\r\n            }\r\n\r\n            toggleTableVisibility();\r\n            \r\n            searchInput.on('input', function () {\r\n                toggleTableVisibility();\r\n            });\r\n\r\n            wrapper.find(\"#create_tables_filter\").css({ width: '100%' });\r\n        });\r\n    }\r\n\r\n     /**\r\n     * Sticky header and column \r\n     * @returns \r\n     */\r\n    handleSticky($, elem, enable_fixed_columns, left_columns, right_columns, enable_fixed_headers, header_offset) {\r\n        if (elem.prevObject && elem.prevObject.length > 0) {\r\n            elem = elem.prevObject;\r\n        }\r\n    \r\n        if (elem.length === 0) {\r\n            console.log(\"No element found within the given object.\");\r\n            return;\r\n        }\r\n    \r\n        // Find the table and scroll elements\r\n        const tableElem = $(elem).find('div.dataTables_scrollHead thead th');\r\n        const bodyElem = $(elem).find('div.dataTables_scrollBody tbody td');\r\n        const scrollElem = $(elem).find('div.dataTables_scroll');\r\n    \r\n        if (tableElem.length === 0) {\r\n            console.error('Table element not found');\r\n            return;\r\n        }\r\n    \r\n        // Enable fixed headers\r\n        if (enable_fixed_headers) {\r\n            $(elem).find('div.dataTables_scrollHead').addClass('fixed-header-active').css({\r\n                position: 'sticky',\r\n                top: `${header_offset}px`,\r\n                zIndex: 100,\r\n                boxShadow: '0px 2px 5px rgba(0,0,0,0.1)',\r\n            });\r\n        }\r\n    \r\n        // Handle left sticky columns\r\n        if (enable_fixed_columns && left_columns > 0) {\r\n            let leftWidth = 0;\r\n    \r\n            $(tableElem).each(function (index) {\r\n                if (index < left_columns) {\r\n                    const columnWidth = $(this).outerWidth();\r\n                    leftWidth += columnWidth;\r\n    \r\n                    // Apply sticky position for headers and add a class\r\n                    $(this).addClass(`sticky-applied-lft sticky-left-head sticky-left-col-${index + 1}`).css({\r\n                        position: 'sticky',\r\n                        left: `${leftWidth - columnWidth}px`,\r\n                        zIndex: 2,\r\n                        boxShadow: '2px 0px 5px rgba(0,0,0,0.1)', \r\n                    });\r\n    \r\n                    // Apply sticky position for body cells and add a class\r\n                    $(bodyElem).each(function () {\r\n                        const cell = $(this).parent().children(`:nth-child(${index + 1})`);\r\n                        cell.addClass(`sticky-applied-lft sticky-left-body sticky-left-col-${index + 1}`).css({\r\n                            position: 'sticky',\r\n                            left: `${leftWidth - columnWidth}px`,\r\n                            zIndex: 1,\r\n                            boxShadow: '2px 0px 5px rgba(0,0,0,0.1)', \r\n                        });\r\n                    });\r\n                }\r\n            });\r\n        }\r\n    \r\n        // Handle right sticky columns\r\n        if (enable_fixed_columns && right_columns > 0) {\r\n            let rightWidth = 0;\r\n    \r\n            $(tableElem.get().reverse()).each(function (reverseIndex) {\r\n                const totalColumns = tableElem.length;\r\n                const columnIndex = totalColumns - reverseIndex - 1;\r\n    \r\n                if (reverseIndex < right_columns) {\r\n                    const columnWidth = $(this).outerWidth();\r\n                    rightWidth += columnWidth;\r\n    \r\n                    // Apply sticky position for headers and add a class\r\n                    $(this).addClass(`sticky-applied-rgt sticky-right-head sticky-right-col-${reverseIndex + 1}`).css({\r\n                        position: 'sticky',\r\n                        right: `${rightWidth - columnWidth}px`,\r\n                        zIndex: 2,\r\n                        boxShadow: '-2px 0px 5px rgba(0,0,0,0.1)', \r\n                    });\r\n    \r\n                    // Apply sticky position for body cells and add a class\r\n                    $(bodyElem).each(function () {\r\n                        const cell = $(this).parent().children(`:nth-child(${columnIndex + 1})`);\r\n                        cell.addClass(`sticky-applied-rgt sticky-right-body sticky-right-col-${reverseIndex + 1}`).css({\r\n                            position: 'sticky',\r\n                            right: `${rightWidth - columnWidth}px`,\r\n                            zIndex: 1,\r\n                            boxShadow: '-2px 0px 5px rgba(0,0,0,0.1)', \r\n                        });\r\n                    });\r\n                }\r\n            });\r\n        }\r\n    \r\n        // Add fixed columns class for easier styling\r\n        if (enable_fixed_columns) {\r\n            scrollElem.addClass('fixed-col-active');\r\n        }\r\n    }\r\n\r\n    \r\n\r\n\r\n    /**\r\n     * Create search button and disable the search auto and serch using search button\r\n     * @returns Search button empty press issue fix \r\n     */\r\n    CreateSearchoptions($, elem, search_by) {\r\n        if (elem.prevObject && elem.prevObject.length > 0) {\r\n            elem = elem.prevObject;\r\n        }\r\n    \r\n        if (elem.length === 0) {\r\n            console.log(\"No element found within the given object.\");\r\n            return;\r\n        }\r\n    \r\n        elem.each(function (index, container) {\r\n            var table = $(container).find('#create_tables').DataTable();\r\n            var filter_input = $(container).find('#create_tables_filter input[type=\"search\"]').unbind();\r\n    \r\n            // Check if search_by is 'search-by-press' and add the class\r\n            if (search_by === 'search-by-press') {\r\n                $(container).find('#create_tables_filter').addClass('searchBypress');\r\n            }\r\n    \r\n            // Create Search button front_end_data.strings['search']\r\n            var search_button = $('<button type=\"button\" class=\"ui button search-by-press search-btn\"></button>')\r\n            .text(front_end_data.strings['search-btn'])\r\n            .click(function () {\r\n                var searchTerm = filter_input.val();\r\n\r\n                // Ensure the search only triggers if there is a valid input\r\n                if (searchTerm && searchTerm.trim().length > 0) {\r\n                    table.search(searchTerm).draw();\r\n\r\n                    // Show table if there is valid input\r\n                    if (search_by === 'search-by-press') {\r\n                        $(container).find(\".dataTables_scroll\").show();\r\n                    }\r\n                } else {\r\n                    // Keep the table hidden if search input is empty\r\n                    $(container).find(\".dataTables_scroll\").hide();\r\n                    /* console.log(\"Search input is empty. Table will not be shown.\"); */\r\n                }\r\n            });\r\n    \r\n            // Create Clear button front_end_data.strings['clear']\r\n            var clear_button = $('<button type=\"button\" class=\"ui button search-by-press clear-btn\"></button>')\r\n            .text(front_end_data.strings['clear-btn'])\r\n            .click(function () {\r\n                filter_input.val('');\r\n                table.search('').draw();\r\n\r\n                // Hide table when cleared\r\n                if (search_by === 'search-by-press') {\r\n                    $(container).find(\".dataTables_scroll\").hide();\r\n                }\r\n            });\r\n    \r\n            // Append the search and clear buttons\r\n            $(container).find('#create_tables_filter').append(search_button, clear_button);\r\n    \r\n            // Handle Enter keypress event\r\n            $(document).keypress(function (event) {\r\n                if (event.which == 13) { // Enter key is pressed\r\n                    search_button.click();\r\n                }\r\n            });\r\n        });\r\n    }\r\n\r\n    \r\n        \r\n    html_loader() {\r\n        let loader = `\r\n               <div class=\"ui segment gswpts_table_loader\">\r\n                        <div class=\"ui active inverted dimmer\">\r\n                            <div class=\"ui large text loader\">Loading</div>\r\n                        </div>\r\n                        <p></p>\r\n                        <p></p>\r\n                        <p></p>\r\n                </div>\r\n            `;\r\n        return loader;\r\n    }\r\n\r\n    clearOverflow() {\r\n        if (\r\n            /Android|webOS|iPhone|iPad|Mac|Macintosh|iPod|BlackBerry|IEMobile|Opera Mini/i.test(\r\n                navigator.userAgent\r\n            )\r\n        ) {\r\n            if (\r\n                this.detectBrowser() == \"Chrome\" ||\r\n                this.detectBrowser() == \"Safari\" ||\r\n                this.detectBrowser() == \"MSIE\"\r\n            ) {\r\n                let tableScrollBody = document.querySelectorAll(\r\n                    \".gswpts_tables_container .dataTables_scrollBody\"\r\n                );\r\n\r\n                if (tableScrollBody) {\r\n                    tableScrollBody.forEach((element) => {\r\n                        if (\r\n                            element.parentElement.parentElement.parentElement.parentElement.classList.contains(\r\n                                \"collapse_style\"\r\n                            )\r\n                        ) {\r\n                            element.style.overflow = \"unset\";\r\n                            element.style.height = \"unset\";\r\n                            element.style.maxHeight = \"unset\";\r\n                        }\r\n                    });\r\n                }\r\n\r\n                // this.hideEmptyCell();\r\n            }\r\n        }\r\n    }\r\n\r\n    detectBrowser() {\r\n        if ((navigator.userAgent.indexOf(\"Opera\") || navigator.userAgent.indexOf(\"OPR\")) != -1) {\r\n            return \"Opera\";\r\n        } else if (navigator.userAgent.indexOf(\"Chrome\") != -1) {\r\n            return \"Chrome\";\r\n        } else if (navigator.userAgent.indexOf(\"Safari\") != -1) {\r\n            return \"Safari\";\r\n        } else if (navigator.userAgent.indexOf(\"Firefox\") != -1) {\r\n            return \"Firefox\";\r\n        } else if (navigator.userAgent.indexOf(\"MSIE\") != -1 || !!document.documentMode == true) {\r\n            return \"IE\"; //crap\r\n        } else {\r\n            return \"Unknown\";\r\n        }\r\n    }\r\n\r\n    hideEmptyCell() {\r\n        let tableCells = document.querySelectorAll(\".gswpts_tables_container td\");\r\n        if (!tableCells) return;\r\n\r\n        tableCells.forEach((element) => {\r\n            if (element.innerText == \"\") {\r\n                // element.style.display = \"none\";\r\n                element.innerText = \"No data\";\r\n            }\r\n        });\r\n    }\r\n\r\n    bindDragScroll($container, $scroller) {\r\n        var $window = jQuery(window);\r\n\r\n        var x = 0;\r\n        var y = 0;\r\n\r\n        var x2 = 0;\r\n        var y2 = 0;\r\n        var t = 0;\r\n\r\n        $container.on(\"mousedown\", down);\r\n        $container.on(\"click\", preventDefault);\r\n        $scroller.on(\"mousewheel\", horizontalMouseWheel); // prevent macbook trigger prev/next page while scrolling\r\n\r\n        function down(evt) {\r\n            if (evt.button === 0) {\r\n                t = Date.now();\r\n                x = x2 = evt.pageX;\r\n                y = y2 = evt.pageY;\r\n\r\n                $container.addClass(\"down\");\r\n                $window.on(\"mousemove\", move);\r\n                $window.on(\"mouseup\", up);\r\n\r\n                evt.preventDefault();\r\n            }\r\n        }\r\n\r\n        function move(evt) {\r\n            // alert(\"move\");\r\n            if ($container.hasClass(\"down\")) {\r\n                var _x = evt.pageX;\r\n                var _y = evt.pageY;\r\n                var deltaX = _x - x;\r\n                var deltaY = _y - y;\r\n\r\n                $scroller[0].scrollLeft -= deltaX;\r\n\r\n                x = _x;\r\n                y = _y;\r\n            }\r\n        }\r\n\r\n        function up(evt) {\r\n            $window.off(\"mousemove\", move);\r\n            $window.off(\"mouseup\", up);\r\n\r\n            var deltaT = Date.now() - t;\r\n            var deltaX = evt.pageX - x2;\r\n            var deltaY = evt.pageY - y2;\r\n            if (deltaT <= 300) {\r\n                $scroller.stop().animate(\r\n                    {\r\n                        scrollTop: \"-=\" + deltaY * 3,\r\n                        scrollLeft: \"-=\" + deltaX * 3,\r\n                    },\r\n                    500,\r\n                    function (x, t, b, c, d) {\r\n                        // easeOutCirc function from http://gsgd.co.uk/sandbox/jquery/easing/\r\n                        return c * Math.sqrt(1 - (t = t / d - 1) * t) + b;\r\n                    }\r\n                );\r\n            }\r\n\r\n            t = 0;\r\n\r\n            $container.removeClass(\"down\");\r\n        }\r\n\r\n        function preventDefault(evt) {\r\n            if (x2 !== evt.pageX || y2 !== evt.pageY) {\r\n                evt.preventDefault();\r\n                return false;\r\n            }\r\n        }\r\n\r\n        function horizontalMouseWheel(evt) {\r\n            evt = evt.originalEvent;\r\n            var x = $scroller.scrollLeft();\r\n            var max = $scroller[0].scrollWidth - $scroller[0].offsetWidth;\r\n            var dir = evt.deltaX || evt.wheelDeltaX;\r\n            var stop = dir > 0 ? x >= max : x <= 0;\r\n            if (stop && dir) {\r\n                evt.preventDefault();\r\n            }\r\n        }\r\n    }\r\n\r\n    addGrabCursonOnMouseDown(elem) {\r\n        elem.mousedown((e) => {\r\n            elem.css({\r\n                cursor: \"grab\",\r\n            });\r\n        });\r\n        elem.mouseup((e) => {\r\n            elem.css({\r\n                cursor: \"auto\",\r\n            });\r\n        });\r\n    }\r\n}\r\n","import Global_Table_Config from \"./common_func\";\r\n\r\njQuery(document).ready(function ($) {\r\n    class Data_Tables_Async {\r\n        constructor() {\r\n            this.frontend_table = $(\".gswpts_tables_container\");\r\n\r\n            if (front_end_data.asynchronous_loading == \"on\") {\r\n                this.events();\r\n            } else {\r\n                return;\r\n            }\r\n        }\r\n        events() {\r\n            this.get_frontend_table();\r\n        }\r\n\r\n        get_frontend_table() {\r\n            $.each(this.frontend_table, function (i, elem) {\r\n                let id = $(elem).attr(\"id\");\r\n                $.ajax({\r\n                    url  : front_end_data.admin_ajax,\r\n                    data : {\r\n                        action : \"gswpts_sheet_fetch\",\r\n                        id     : id,\r\n                        nonce  : window?.front_end_data?.nonce,\r\n                    },\r\n                    type: \"post\",\r\n                    success: (res) => {\r\n                        let tableClass = new Global_Table_Config();\r\n                        let table_settings = res.data.table_settings;\r\n\r\n                        // if (tableClass.isProPluginActive()) {\r\n                        if (table_settings?.responsive_style) {\r\n                            $(elem).addClass(table_settings?.responsive_style);\r\n                        }\r\n\r\n                        if (table_settings?.import_styles) {\r\n                            $(elem).addClass(`gswpts_default-style`);\r\n                        } else {\r\n                            $(elem).addClass(\r\n                                `gswpts_${\r\n                                    table_settings?.table_style\r\n                                        ? table_settings?.table_style\r\n                                        : \"default-style\"\r\n                                }`\r\n                            );\r\n                        }\r\n\r\n                        $(elem).addClass(`gswpts_default-style`);\r\n                        // }\r\n\r\n                        if (table_settings?.show_title == \"true\") {\r\n                            $(elem).find(\"h3\").html(res.data.table_name);\r\n                        }\r\n\r\n                        $(elem).find(\".gswpts_tables_content\").html(res.data.output);\r\n\r\n                        let table_name = res.data.name;\r\n                        let sheetUrl   = res.data.source_url;\r\n\r\n                        tableClass.table_configuration(\r\n                            $,\r\n                            i,\r\n                            elem,\r\n                            table_name,\r\n                            table_settings,\r\n                            sheetUrl\r\n                        );\r\n\r\n                        let scrollerContainer = $(elem).find(\".dataTables_scroll\");\r\n                        let scrollerElement = $(elem).find(\".dataTables_scrollBody\");\r\n\r\n                        if (scrollerElement) {\r\n\r\n                            //Extra header issue fix it how it was before when click the sort icon and has header merge\r\n                            function handleCommonActions(theadElement) {\r\n                                console.clear(); // Clearing a few basic logs that are not needed to show\r\n                                if (theadElement) {\r\n                                    // Select all tr elements within theadElement\r\n                                    var trElements = theadElement.querySelectorAll('tr');\r\n                            \r\n                                    // Iterate through each trElement\r\n                                    trElements.forEach(function(trElement) {\r\n                                        // Apply height style to each trElement\r\n                                        trElement.style.height = '0px';\r\n                            \r\n                                        // Select all th elements within theadElement\r\n                                        var thElements = trElement.querySelectorAll('th');\r\n                            \r\n                                        // Iterate through each thElement\r\n                                        thElements.forEach(function(thElement) {\r\n                                            // Create a new div element with the required styles\r\n                                            var divElement = document.createElement('div');\r\n                                            divElement.className = 'dataTables_sizing';\r\n                                            divElement.style.height = '0px';\r\n                                            divElement.style.overflow = 'hidden';\r\n                                            divElement.innerText = thElement.innerText; // Copy the text content\r\n                            \r\n                                            // Empty the thElement and append the divElement\r\n                                            thElement.innerHTML = '';\r\n                                            thElement.appendChild(divElement);\r\n                            \r\n                                            // Apply styles to each thElement\r\n                                            thElement.style.paddingTop = '0px';\r\n                                            thElement.style.paddingBottom = '0px';\r\n                                            thElement.style.borderTopWidth = '0px';\r\n                                            thElement.style.borderBottomWidth = '0px';\r\n                                            thElement.style.height = '0px';\r\n                                            thElement.style.textAlign = 'center';\r\n                                            // thElement.style.display = 'none';\r\n                                        });\r\n                                    });\r\n                                }\r\n                            }\r\n                            \r\n                            function handlePagination() {\r\n                                var createTablesPaginate = document.getElementById('create_tables_paginate');\r\n                                if (createTablesPaginate) {\r\n                                    var container = createTablesPaginate.closest(\".gswpts_tables_container\");\r\n                                    var scrollBody = container.querySelector('.dataTables_scrollBody');\r\n                                    var thead = scrollBody.querySelector('thead');\r\n                                    handleCommonActions(thead);\r\n                                }\r\n                            }\r\n    \r\n    \r\n                            var tableHeaders = document.querySelectorAll('.thead-item[data-merge]');\r\n                            tableHeaders.forEach(function (header) {\r\n                                // Check if the current header has the data-merge attribute.\r\n                                var dataMerge = header.getAttribute('data-merge');\r\n                                if (dataMerge) {\r\n                                    var sortingElements = document.querySelectorAll('.sorting');\r\n                                    var dataTablesLength = document.querySelectorAll('.dataTables_length');\r\n                                    var dataTables_filter = document.querySelectorAll('.dataTables_filter');\r\n                                    var createTablesFilterInputs = document.querySelectorAll('.dataTables_filter input');\r\n                                    var paginateContainer = document.getElementById('create_tables_paginate');\r\n    \r\n                                    // Add a click event listener to each sorting element\r\n                                    sortingElements.forEach(function (sortingElement) {\r\n                                        sortingElement.addEventListener('click', function () {\r\n                                            // Find the .dataTables_scrollBody element within the same container\r\n                                            var container = sortingElement.closest(\".gswpts_tables_container\");\r\n                                            var scrollBody = container.querySelector('.dataTables_scrollBody');\r\n                                            // Find the <thead> element within the .dataTables_scrollBody\r\n                                            var thead = scrollBody.querySelector('thead');\r\n                                            handleCommonActions(thead);\r\n                                        });\r\n                                    });\r\n                                \r\n                                    // Add a click event listener to each dataTablesLength element\r\n                                    dataTablesLength.forEach(function (LengthElement) {\r\n                                        LengthElement.addEventListener('click', function () {\r\n                                            var container = LengthElement.closest(\".gswpts_tables_container\");\r\n                                            var scrollBody = container.querySelector('.dataTables_scrollBody');\r\n                                            var thead = scrollBody.querySelector('thead');\r\n                                            handleCommonActions(thead);\r\n                                            // console.log(\"click on dataTablesLength\");\r\n                                        });\r\n                                    });\r\n                                \r\n                                    // Add a click event listener to each dataTables_filter element\r\n                                    dataTables_filter.forEach(function (FilterElement) {\r\n                                        FilterElement.addEventListener('click', function () {\r\n                                            var container = FilterElement.closest(\".gswpts_tables_container\");\r\n                                            var scrollBody = container.querySelector('.dataTables_scrollBody');\r\n                                            var thead = scrollBody.querySelector('thead');\r\n                                            handleCommonActions(thead);\r\n                                            // console.log(\"click on dataTables_filter\");\r\n                                        });\r\n                                    });\r\n                \r\n                                    createTablesFilterInputs.forEach(function (createTablesFilterInput) {\r\n                                        createTablesFilterInput.addEventListener('input',function () {\r\n                                            var container = createTablesFilterInput.closest(\".gswpts_tables_container\");\r\n                                            var scrollBody = container.querySelector('.dataTables_scrollBody');\r\n                                            var thead = scrollBody.querySelector('thead');\r\n                                            handleCommonActions(thead);\r\n                                            // console.log(\"click on handleSearchFilter\");\r\n                                        });\r\n                                    });\r\n    \r\n                                    if (paginateContainer) {\r\n                                        paginateContainer.addEventListener('click', function (event) {\r\n                                            // Check if the clicked element is a paginate button\r\n                                            if (event.target.classList.contains('paginate_button')) {\r\n                                                handlePagination();\r\n                                                // console.log(\"click on paginate\");\r\n                                            }\r\n                                        });\r\n                                    }   \r\n                                }\r\n                            });\r\n                            \r\n                        }\r\n\r\n                        // END \r\n\r\n                        // Additional code for handling merged cells and text alignment\r\n                        tableClass.handleMergedCells($, elem);\r\n\r\n                        //Additional code for handling header merged cells and text alignment\r\n                        tableClass.handleHeaderMergedCells($, elem);\r\n                        \r\n                        tableClass.loadThemeStyle($, elem);\r\n\r\n                        if (front_end_data.isProActive) {\r\n                            if (table_settings?.cursor_behavior == \"left_right\") {\r\n                                // Add functionality of scrolling the table.\r\n                                tableClass.bindDragScroll(scrollerContainer, scrollerElement);\r\n                            }\r\n                            tableClass.addGrabCursonOnMouseDown($(elem).find(\"#create_tables\"));\r\n                        }\r\n                        \r\n                        // table width fixing \r\n                        /* if (table_settings?.merged_support) {\r\n                            tableClass.handleTableWidth($, $(elem).find(\".gswpts_tables_container\"));\r\n                        } */\r\n\r\n                        setInterval(function() {\r\n                            tableClass.handleTableWidth($, $(elem).find(\".gswpts_tables_container\"));\r\n                        }, 600);\r\n\r\n                        tableClass.handlePaginations($, elem);\r\n                        // tableClass.defaultThemepaginationStyle($, elem);\r\n\r\n                         // Disable sorting from the table\r\n                        if (table_settings?.hide_sorting_icon) {\r\n                            tableClass.handleSortingDisable($, $(elem).find(\".gswpts_tables_container\"));\r\n                        }\r\n                        \r\n                        // Makes the table hide and unhide\r\n                        if (table_settings?.table_view_mode === 'search-only-mode') {\r\n                            tableClass.handleSearchoptions($, $(elem).find(\".gswpts_tables_container\"), table_settings.search_by);\r\n                        }\r\n                        \r\n                        // Condition to load the search button and disable search in type and show search value once search button click or enter press        \r\n                        if (table_settings?.table_view_mode === 'search-only-mode' && table_settings?.search_by === 'search-by-press') {\r\n                            tableClass.CreateSearchoptions($, $(elem).find(\".gswpts_tables_container\"), table_settings.search_by);\r\n                        }\r\n\r\n                        if (tableClass.isProPluginActive()) {\r\n\r\n                            if (table_settings?.enable_fixed_columns || table_settings?.fixed_headers) {\r\n                                tableClass.handleSticky($, $(elem).find(\".gswpts_tables_container\"), table_settings.enable_fixed_columns, table_settings.left_columns, table_settings.right_columns, table_settings.fixed_headers, table_settings.header_offset );\r\n                            }\r\n                        }\r\n\r\n                        \r\n                        tableClass.clearOverflow();\r\n\r\n                        /**\r\n                         * FE Sorting fix by disable the sorting when has vertical merge \r\n                         */\r\n                        var tableRows = document.querySelectorAll('.gswpts_rows');\r\n                        var verticalMergeFound = false;\r\n                        if(tableRows){\r\n                            tableRows.forEach(function (row) {\r\n                                var cells = row.querySelectorAll('td');\r\n                                cells.forEach(function (cell, index) {\r\n                                    var rowspan = cell.getAttribute('rowspan');\r\n\r\n                                    if (rowspan && parseInt(rowspan) > 1) {\r\n                                        verticalMergeFound = true;\r\n                                    }\r\n                                });\r\n                            });\r\n                        }\r\n\r\n                        if (verticalMergeFound) {\r\n                            $.ajax({\r\n                                url  : front_end_data.admin_ajax,\r\n                                data : {\r\n                                    action : \"swptls_update_sorting_fe\",\r\n                                    id     : id,\r\n                                    nonce  : window?.front_end_data?.nonce,\r\n                                    allow_sorting: false,  \r\n                                },\r\n                                type: \"post\",\r\n                                success: (res) => {\r\n                                    \r\n                                },\r\n                                error: (err) => {\r\n                                \r\n                                },\r\n                            });\r\n\r\n                        }\r\n                        // END \r\n                        \r\n                    },\r\n                    error: (err) => {\r\n                        alert(\"Something went wrong\");\r\n                        console.error(err);\r\n                        $(elem)\r\n                            .find(\".gswpts_tables_content\")\r\n                            .html(\"<strong>Table could not be loaded. Try again</strong>\");\r\n                    },\r\n                });\r\n\r\n\r\n                \r\n\r\n            });\r\n        }\r\n    }\r\n\r\n    new Data_Tables_Async();\r\n});\r\n\r\n","import Global_Table_Config from \"./common_func\";\r\n\r\njQuery(document).ready(function ($) {\r\n    class Data_Tables_Default {\r\n        constructor() {\r\n            this.frontend_table = $(\".gswpts_tables_container\");\r\n            if (front_end_data.asynchronous_loading == \"off\") {\r\n                this.events();\r\n            } else {\r\n                return;\r\n            }\r\n        }\r\n        events() {\r\n            this.get_frontend_table();\r\n        }\r\n\r\n        get_frontend_table() {\r\n            $.each(this.frontend_table, function (i, elem) {\r\n                let table_settings = JSON.parse($(elem).attr(\"data-table_settings\"));\r\n\r\n                let table_name = $(elem).attr(\"data-table_name\");\r\n                let sheetUrl = $(elem).attr(\"data-url\");\r\n\r\n                let table_obj = new Global_Table_Config();\r\n\r\n                table_obj.table_configuration($, i, elem, table_name, table_settings, sheetUrl);\r\n\r\n                let scrollerContainer = $(elem).find(\".dataTables_scroll\");\r\n                let scrollerElement = $(elem).find(\".dataTables_scrollBody\");\r\n\r\n                    \r\n                \r\n                // Fix extra header when clicking the sort icon and has header merge\r\n                if (scrollerElement) {\r\n\r\n                    //Extra header issue fix it how it was before when click the sort icon and has header merge\r\n                    function handleCommonActions(theadElement) {\r\n                        console.clear(); // Clearing a few basic logs that are not needed to show\r\n                        if (theadElement) {\r\n                            // Select all tr elements within theadElement\r\n                            var trElements = theadElement.querySelectorAll('tr');\r\n                    \r\n                            // Iterate through each trElement\r\n                            trElements.forEach(function(trElement) {\r\n                                // Apply height style to each trElement\r\n                                trElement.style.height = '0px';\r\n                    \r\n                                // Select all th elements within theadElement\r\n                                var thElements = trElement.querySelectorAll('th');\r\n                    \r\n                                // Iterate through each thElement\r\n                                thElements.forEach(function(thElement) {\r\n                                    // Create a new div element with the required styles\r\n                                    var divElement = document.createElement('div');\r\n                                    divElement.className = 'dataTables_sizing';\r\n                                    divElement.style.height = '0px';\r\n                                    divElement.style.overflow = 'hidden';\r\n                                    divElement.innerText = thElement.innerText; // Copy the text content\r\n                    \r\n                                    // Empty the thElement and append the divElement\r\n                                    thElement.innerHTML = '';\r\n                                    thElement.appendChild(divElement);\r\n                    \r\n                                    // Apply styles to each thElement\r\n                                    thElement.style.paddingTop = '0px';\r\n                                    thElement.style.paddingBottom = '0px';\r\n                                    thElement.style.borderTopWidth = '0px';\r\n                                    thElement.style.borderBottomWidth = '0px';\r\n                                    thElement.style.height = '0px';\r\n                                    thElement.style.textAlign = 'center';\r\n                                    // thElement.style.display = 'none';\r\n                                });\r\n                            });\r\n                        }\r\n                    }\r\n                    \r\n                    function handlePagination() {\r\n                        var createTablesPaginate = document.getElementById('create_tables_paginate');\r\n                        if (createTablesPaginate) {\r\n                            var container = createTablesPaginate.closest(\".gswpts_tables_container\");\r\n                            var scrollBody = container.querySelector('.dataTables_scrollBody');\r\n                            var thead = scrollBody.querySelector('thead');\r\n                            handleCommonActions(thead);\r\n                        }\r\n                    }\r\n\r\n\r\n                    var tableHeaders = document.querySelectorAll('.thead-item[data-merge]');\r\n                    tableHeaders.forEach(function (header) {\r\n                        // Check if the current header has the data-merge attribute.\r\n                        var dataMerge = header.getAttribute('data-merge');\r\n                        if (dataMerge) {\r\n                            var sortingElements = document.querySelectorAll('.sorting');\r\n                            var dataTablesLength = document.querySelectorAll('.dataTables_length');\r\n                            var dataTables_filter = document.querySelectorAll('.dataTables_filter');\r\n                            var createTablesFilterInputs = document.querySelectorAll('.dataTables_filter input');\r\n                            var paginateContainer = document.getElementById('create_tables_paginate');\r\n\r\n                            // Add a click event listener to each sorting element\r\n                            sortingElements.forEach(function (sortingElement) {\r\n                                sortingElement.addEventListener('click', function () {\r\n                                    // Find the .dataTables_scrollBody element within the same container\r\n                                    var container = sortingElement.closest(\".gswpts_tables_container\");\r\n                                    var scrollBody = container.querySelector('.dataTables_scrollBody');\r\n                                    // Find the <thead> element within the .dataTables_scrollBody\r\n                                    var thead = scrollBody.querySelector('thead');\r\n                                    handleCommonActions(thead);\r\n                                });\r\n                            });\r\n                        \r\n                            // Add a click event listener to each dataTablesLength element\r\n                            dataTablesLength.forEach(function (LengthElement) {\r\n                                LengthElement.addEventListener('click', function () {\r\n                                    var container = LengthElement.closest(\".gswpts_tables_container\");\r\n                                    var scrollBody = container.querySelector('.dataTables_scrollBody');\r\n                                    var thead = scrollBody.querySelector('thead');\r\n                                    handleCommonActions(thead);\r\n                                    // console.log(\"click on dataTablesLength\");\r\n                                });\r\n                            });\r\n                        \r\n                            // Add a click event listener to each dataTables_filter element\r\n                            dataTables_filter.forEach(function (FilterElement) {\r\n                                FilterElement.addEventListener('click', function () {\r\n                                    var container = FilterElement.closest(\".gswpts_tables_container\");\r\n                                    var scrollBody = container.querySelector('.dataTables_scrollBody');\r\n                                    var thead = scrollBody.querySelector('thead');\r\n                                    handleCommonActions(thead);\r\n                                    // console.log(\"click on dataTables_filter\");\r\n                                });\r\n                            });\r\n        \r\n                            createTablesFilterInputs.forEach(function (createTablesFilterInput) {\r\n                                createTablesFilterInput.addEventListener('input',function () {\r\n                                    var container = createTablesFilterInput.closest(\".gswpts_tables_container\");\r\n                                    var scrollBody = container.querySelector('.dataTables_scrollBody');\r\n                                    var thead = scrollBody.querySelector('thead');\r\n                                    handleCommonActions(thead);\r\n                                    // console.log(\"click on handleSearchFilter\");\r\n                                });\r\n                            });\r\n\r\n                            if (paginateContainer) {\r\n                                paginateContainer.addEventListener('click', function (event) {\r\n                                    // Check if the clicked element is a paginate button\r\n                                    if (event.target.classList.contains('paginate_button')) {\r\n                                        handlePagination();\r\n                                        // console.log(\"click on paginate\");\r\n                                    }\r\n                                });\r\n                            }   \r\n                        }\r\n                    });\r\n                    \r\n                }\r\n\r\n                if (front_end_data.isProActive) {\r\n                    if (table_settings?.cursor_behavior == \"left_right\") {\r\n                        // Add functionality of scrolling the table.\r\n                        table_obj.bindDragScroll(scrollerContainer, scrollerElement);\r\n                    }\r\n                    table_obj.addGrabCursonOnMouseDown($(elem).find(\"#create_tables\"));\r\n                }\r\n                \r\n                // Additional code for handling merged cells and text alignment\r\n                table_obj.handleMergedCells($, elem);\r\n                table_obj.loadThemeStyle($, elem);\r\n                // table_obj.defaultThemepaginationStyle($, elem);\r\n                table_obj.handleHeaderMergedCells($, elem);\r\n\r\n                \r\n                /* if (table_settings?.merged_support) {\r\n                    table_obj.handleTableWidth($, $(elem).find(\".gswpts_tables_container\"));\r\n                } */\r\n\r\n                setInterval(function() {\r\n                    table_obj.handleTableWidth($, $(elem).find(\".gswpts_tables_container\"));\r\n                }, 600);\r\n\r\n                /* $(window).on('resize', function () {\r\n                    table_obj.handleTableWidth($, $(elem).find(\".gswpts_tables_container\"));\r\n                }); */\r\n\r\n                table_obj.handlePaginations($, elem);\r\n\r\n                 // Disable sorting from the table\r\n                 if (table_settings?.hide_sorting_icon) {\r\n                    table_obj.handleSortingDisable($, $(elem).find(\".gswpts_tables_container\"));\r\n                }\r\n\r\n                if (table_settings?.table_view_mode === 'search-only-mode') {\r\n                    table_obj.handleSearchoptions($, $(elem).find(\".gswpts_tables_container\"), table_settings.search_by);\r\n                }\r\n                \r\n                // Condition to load the search button and disable search in type and show search value once search button click or enter press        \r\n                if (table_settings?.table_view_mode === 'search-only-mode' && table_settings?.search_by === 'search-by-press') {\r\n                    table_obj.CreateSearchoptions($, $(elem).find(\".gswpts_tables_container\"), table_settings.search_by);\r\n                }\r\n\r\n                // Sticky feature development\r\n                if (table_obj.isProPluginActive()) {\r\n                    if (table_settings?.enable_fixed_columns || table_settings?.fixed_headers) {\r\n                        table_obj.handleSticky($, $(elem).find(\".gswpts_tables_container\"), table_settings.enable_fixed_columns, table_settings.left_columns, table_settings.right_columns, table_settings.fixed_headers, table_settings.header_offset );\r\n                    }\r\n                }\r\n                    \r\n\r\n                table_obj.clearOverflow();\r\n            });\r\n        }\r\n    }\r\n\r\n    new Data_Tables_Default();\r\n});\r\n\r\n"],"names":["jQuery","document","ready","$","this","events","showFirstTabContent","each","on","e","target","currentTarget","parents","find","removeClass","inputID","data","addClass","attr","match","prop","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","Global_Table_Config","tableSettings","theme","table_style","PageStyles","import_styles_theme_colors","paginationStyle","first","front_end_data","strings","previous","next","last","PaginationTailwindBack2","PaginationTainwildNext2","PaginationTailwindBack1","PaginationTainwildNext1","i","elem","table_name","table_settings","sheetUrl","dom","show_x_entries","search_bar","show_info_block","pagination","isProPluginActive","changeRedirectionType","redirection_type","changeCellFormat","cell_format","table_view_mode","fn","DataTable","length","table_obj","table","dataTable","ext","search","push","settings","dataIndex","nTable","node","searchTerm","val","toLowerCase","enable_column_specific_search","table_search_column","includes","setPdfUrl","reveal_export_btns","swap_input_filter","swap_bottom_options","type","links","link","formatStyle","tableCell","cell","isProActive","url","split","gridID","spreadsheetID","getSpreadsheetID","getGridID","pdfUrl","append","iconsURL","filePdf","moment","table_object","order","allow_singleshort","columnnumber","sorting_mode","allow_sorting","responsive","lengthMenu","language","searchPlaceholder","info","emptyTable","zeroRecords","paginate","getPaginateSettings","pagingType","pageLength","parseInt","default_rows_per_page","lengthChange","ordering","destroy","scrollX","numberOfColumns","buttons","text","curlyBrackets","className","action","dt","button","config","exportData","fileSave","Blob","JSON","stringify","titleAttr","fileCSV","extend","title","fileExcel","printIcon","copySolid","hide_on_desktop_col","screenSize","hide_on_mobile_col","hide_column","columnDefs","hideColumnByScreen","hide_column_mobile","vertical_scrolling","scrollY","arrayValues","targets","convertArrayStringToInteger","visible","searchable","screen","width","arr","map","export_btns","table_export","forEach","btn","swap_filter_inputs","css","style","flex_direction","table_info_style","margin_left","margin_right","table_paginate_style","bottom_option_style","$arg","tableHeaders","index","header","dataMerge","parse","numCols","nextCell","hasClass","j","targetIndex","targetCell","join","trim","hide","setConsistentTableWidth","container","tableId","Math","random","toString","substring","containerWidth","row","rowWidth","getBoundingClientRect","window","originalTableWidths","targetWidth","headers","prevObject","off","updatePaginationContent","span","html","tablePage","sortingElements","querySelectorAll","dataTablesLength","dataTables_filter","createTablesFilterInputs","sortingElement","addEventListener","LengthElement","FilterElement","createTablesFilterInput","styleString","regex","themeName","gswptsCount","startsWith","replace","tableElem","console","error","backgroundColor","textColor","tableStyles","paginationColors","RegExp","hexToRgba","hex","opacity","bigint","slice","g","b","defaultPaginationColor","simplePaginationColor","styleContent","styleElement","createElement","id","textContent","head","appendChild","propertyName","getCustomPropertyValue","sortingHeaders","log","search_by","wrapper","searchInput","tableContainer","toggleTableVisibility","show","event","which","enable_fixed_columns","left_columns","right_columns","enable_fixed_headers","header_offset","bodyElem","scrollElem","position","top","zIndex","boxShadow","leftWidth","columnWidth","outerWidth","left","parent","children","rightWidth","get","reverse","reverseIndex","columnIndex","right","filter_input","unbind","search_button","click","draw","clear_button","keypress","test","navigator","userAgent","detectBrowser","tableScrollBody","element","parentElement","classList","contains","overflow","height","maxHeight","indexOf","documentMode","tableCells","innerText","$container","$scroller","$window","x","x2","y2","t","move","evt","_x","pageX","deltaX","pageY","scrollLeft","up","deltaT","Date","now","deltaY","stop","animate","scrollTop","c","d","sqrt","preventDefault","originalEvent","max","scrollWidth","offsetWidth","dir","wheelDeltaX","mousedown","cursor","mouseup","frontend_table","asynchronous_loading","get_frontend_table","ajax","admin_ajax","nonce","success","res","tableClass","responsive_style","import_styles","show_title","output","name","source_url","table_configuration","scrollerContainer","scrollerElement","handleCommonActions","theadElement","clear","trElement","thElement","divElement","innerHTML","paddingTop","paddingBottom","borderTopWidth","borderBottomWidth","textAlign","getAttribute","paginateContainer","getElementById","thead","closest","querySelector","createTablesPaginate","handlePagination","handleMergedCells","handleHeaderMergedCells","loadThemeStyle","cursor_behavior","bindDragScroll","addGrabCursonOnMouseDown","setInterval","handleTableWidth","handlePaginations","hide_sorting_icon","handleSortingDisable","handleSearchoptions","CreateSearchoptions","fixed_headers","handleSticky","clearOverflow","tableRows","verticalMergeFound","rowspan","err","alert"],"sourceRoot":""}