inconel 0.1.30 → 0.1.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/HTMLTable/legacy/index.jsx"],"sourcesContent":["import { useEffect, useMemo, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport './index.scss';\n\nconst getValueByPath = (obj, path, defaultValue = '-') => {\n const value = path\n ?.split('.')\n ?.reduce((current, key) => current?.[key], obj);\n\n return value ?? defaultValue;\n};\n\nconst normalizeTableData = (data) => {\n if (Array.isArray(data)) return data;\n\n if (Array.isArray(data?.items)) return data.items;\n if (Array.isArray(data?.data)) return data.data;\n if (Array.isArray(data?.content)) return data.content;\n if (Array.isArray(data?.records)) return data.records;\n\n return [];\n};\n\nconst InconelHTMLTable = ({\n columns = [],\n data = [],\n rowKey = 'id',\n selectable = false,\n pagination = true,\n pageSize = 10,\n pageSizeOptions = [5, 10, 20, 30, 50, 100],\n total,\n currentPage,\n className = '',\n rowClassName,\n onRowClick,\n onPageChange,\n onPageSizeChange,\n onSelectionChange\n}) => {\n const [sortConfig, setSortConfig] = useState(null);\n const [selectedRows, setSelectedRows] = useState([]);\n const [page, setPage] = useState(1);\n const [selectedPageSize, setSelectedPageSize] = useState(pageSize);\n const [isScrolled, setIsScrolled] = useState(false);\n\n useEffect(() => {\n setSelectedPageSize(pageSize);\n }, [pageSize]);\n\n const tableData = useMemo(() => normalizeTableData(data), [data]);\n\n const sortedData = useMemo(() => {\n if (!sortConfig) return tableData;\n\n return [...tableData].sort((a, b) => {\n const aVal = getValueByPath(a, sortConfig.key, '');\n const bVal = getValueByPath(b, sortConfig.key, '');\n\n if (aVal < bVal) return sortConfig.direction === 'asc' ? -1 : 1;\n if (aVal > bVal) return sortConfig.direction === 'asc' ? 1 : -1;\n return 0;\n });\n }, [tableData, sortConfig]);\n\n const activePage = currentPage ?? page;\n const hasTotal = total !== undefined && total !== null;\n const isServerSidePagination = hasTotal && typeof onPageChange === 'function';\n const totalPage = Math.ceil((hasTotal ? total : sortedData.length) / selectedPageSize);\n\n const visibleData = pagination && !isServerSidePagination\n ? sortedData.slice((activePage - 1) * selectedPageSize, activePage * selectedPageSize)\n : sortedData;\n\n const getRowKey = (row, rowIndex) => (\n getValueByPath(row, rowKey, rowIndex)\n );\n\n const handleSort = (column) => {\n if (!column.sortable) return;\n\n setSortConfig((prev) => {\n if (prev?.key === column.key) {\n return {\n key: column.key,\n direction: prev.direction === 'asc' ? 'desc' : 'asc'\n };\n }\n\n return {\n key: column.key,\n direction: 'asc'\n };\n });\n };\n\n const handleSelect = (row, rowIndex) => {\n const key = getRowKey(row, rowIndex);\n\n const newSelectedRows = selectedRows.includes(key)\n ? selectedRows.filter((item) => item !== key)\n : [...selectedRows, key];\n\n setSelectedRows(newSelectedRows);\n onSelectionChange?.(newSelectedRows);\n };\n\n const handleSelectAll = () => {\n const visibleKeys = visibleData.map((row, rowIndex) => getRowKey(row, rowIndex));\n const allSelected = visibleKeys.every((key) => selectedRows.includes(key));\n\n const newSelectedRows = allSelected\n ? selectedRows.filter((key) => !visibleKeys.includes(key))\n : [...new Set([...selectedRows, ...visibleKeys])];\n\n setSelectedRows(newSelectedRows);\n onSelectionChange?.(newSelectedRows);\n };\n\n const handlePageChange = (newPage) => {\n if (newPage < 1 || newPage > totalPage || newPage === activePage) return;\n\n if (currentPage === undefined || currentPage === null) {\n setPage(newPage);\n }\n\n onPageChange?.(newPage);\n };\n\n const handlePageSizeChange = (event) => {\n const newPageSize = Number(event.target.value);\n\n setSelectedPageSize(newPageSize);\n\n if (currentPage === undefined || currentPage === null) {\n setPage(1);\n }\n\n if (typeof onPageSizeChange === 'function') {\n onPageSizeChange(newPageSize);\n return;\n }\n\n onPageChange?.(1);\n };\n\n const getPaginationItems = () => {\n const pages = [];\n const maxVisiblePages = 5;\n\n if (totalPage <= maxVisiblePages + 2) {\n return Array.from({ length: totalPage }, (_, index) => index + 1);\n }\n\n const startPage = Math.max(2, activePage - 1);\n const endPage = Math.min(totalPage - 1, activePage + 1);\n\n pages.push(1);\n\n if (startPage > 2) {\n pages.push('...');\n }\n\n for (let pageNumber = startPage; pageNumber <= endPage; pageNumber += 1) {\n pages.push(pageNumber);\n }\n\n if (endPage < totalPage - 1) {\n pages.push('...');\n }\n\n pages.push(totalPage);\n\n return pages;\n };\n\n return (\n <div\n className={[\n 'ep-table-wrapper',\n isScrolled ? 'is-scrolled' : '',\n className\n ]\n .filter(Boolean)\n .join(' ')}\n onScroll={(event) => {\n setIsScrolled(event.currentTarget.scrollTop > 0);\n }}\n >\n <table className=\"table table-bordered\">\n <thead>\n <tr>\n {selectable && (\n <th className=\"ep-table-check\">\n <input type=\"checkbox\" onChange={handleSelectAll} />\n </th>\n )}\n\n {columns.map((column) => (\n <th\n key={column.key}\n onClick={() => handleSort(column)}\n className={`${column.sortable ? 'sortable' : ''} ${column.headerClassName || ''}`}\n >\n {column.title}\n\n {sortConfig?.key === column.key && (\n <span>\n {sortConfig.direction === 'asc' ? ' ↑' : ' ↓'}\n </span>\n )}\n </th>\n ))}\n </tr>\n </thead>\n\n <tbody>\n {visibleData.length > 0 ? (\n visibleData.map((row, rowIndex) => {\n const key = getRowKey(row, rowIndex);\n const rowClass = typeof rowClassName === 'function'\n ? rowClassName(row, rowIndex)\n : rowClassName;\n\n return (\n <tr\n key={key}\n onClick={() => onRowClick?.(row)}\n className={[\n onRowClick ? 'clickable' : '',\n rowClass\n ]\n .filter(Boolean)\n .join(' ')}\n >\n {selectable && (\n <td onClick={(e) => e.stopPropagation()}>\n <input\n type=\"checkbox\"\n checked={selectedRows.includes(key)}\n onChange={() => handleSelect(row, rowIndex)}\n />\n </td>\n )}\n\n {columns.map((column) => (\n <td\n key={column.key}\n className={column.className || ''}\n >\n {column.render\n ? column.render(row, rowIndex)\n : getValueByPath(row, column.key)}\n </td>\n ))}\n </tr>\n );\n })\n ) : (\n <tr>\n <td colSpan={columns.length + (selectable ? 1 : 0)}>\n Kayıt bulunamadı\n </td>\n </tr>\n )}\n </tbody>\n </table>\n\n {pagination && totalPage > 1 && (\n <div className=\"ep-table-pagination\">\n <button type=\"button\" disabled={activePage === 1} onClick={() => handlePageChange(activePage - 1)}>\n Geri\n </button>\n\n {getPaginationItems().map((item, index) => (\n item === '...' ? (\n <span key={`pagination-ellipsis-${index}`}>...</span>\n ) : (\n <button\n type=\"button\"\n key={`pagination-page-${item}`}\n className={item === activePage ? 'active' : ''}\n onClick={() => handlePageChange(item)}\n >\n {item}\n </button>\n )\n ))}\n\n <button type=\"button\" disabled={activePage === totalPage} onClick={() => handlePageChange(activePage + 1)}>\n İleri\n </button>\n\n <button type=\"button\" disabled={activePage === totalPage} onClick={() => handlePageChange(totalPage)}>\n Son Sayfa\n </button>\n\n <select value={selectedPageSize} onChange={handlePageSizeChange}>\n {pageSizeOptions.map((option) => (\n <option key={`page-size-${option}`} value={option}>\n {option}\n </option>\n ))}\n </select>\n </div>\n )}\n </div>\n );\n};\n\nInconelHTMLTable.propTypes = {\n columns: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string.isRequired,\n title: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node\n ]),\n sortable: PropTypes.bool,\n render: PropTypes.func,\n headerClassName: PropTypes.string,\n className: PropTypes.string\n })\n ),\n data: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.object),\n PropTypes.shape({\n items: PropTypes.arrayOf(PropTypes.object),\n data: PropTypes.arrayOf(PropTypes.object),\n content: PropTypes.arrayOf(PropTypes.object),\n records: PropTypes.arrayOf(PropTypes.object)\n })\n ]),\n rowKey: PropTypes.string,\n selectable: PropTypes.bool,\n pagination: PropTypes.bool,\n pageSize: PropTypes.number,\n pageSizeOptions: PropTypes.arrayOf(PropTypes.number),\n total: PropTypes.number,\n currentPage: PropTypes.number,\n onRowClick: PropTypes.func,\n onPageChange: PropTypes.func,\n onPageSizeChange: PropTypes.func,\n onSelectionChange: PropTypes.func,\n rowClassName: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func\n ]),\n className: PropTypes.string\n};\n\nexport default InconelHTMLTable;\n"],"names":["getValueByPath","obj","path","defaultValue","current","key","normalizeTableData","data","InconelHTMLTable","columns","rowKey","selectable","pagination","pageSize","pageSizeOptions","total","currentPage","className","rowClassName","onRowClick","onPageChange","onPageSizeChange","onSelectionChange","sortConfig","setSortConfig","useState","selectedRows","setSelectedRows","page","setPage","selectedPageSize","setSelectedPageSize","isScrolled","setIsScrolled","useEffect","tableData","useMemo","sortedData","a","b","aVal","bVal","activePage","hasTotal","isServerSidePagination","totalPage","visibleData","getRowKey","row","rowIndex","handleSort","column","prev","handleSelect","newSelectedRows","item","handleSelectAll","visibleKeys","handlePageChange","newPage","handlePageSizeChange","event","newPageSize","getPaginationItems","pages","_","index","startPage","endPage","pageNumber","jsxs","jsx","rowClass","e","option","PropTypes"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/HTMLTable/legacy/index.jsx"],"sourcesContent":["import { useEffect, useMemo, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport './index.scss';\n\nconst getValueByPath = (obj, path, defaultValue = '-') => {\n const value = path\n ?.split('.')\n ?.reduce((current, key) => current?.[key], obj);\n\n return value ?? defaultValue;\n};\n\nconst normalizeTableData = (data) => {\n if (Array.isArray(data)) return data;\n\n if (Array.isArray(data?.items)) return data.items;\n if (Array.isArray(data?.data)) return data.data;\n if (Array.isArray(data?.content)) return data.content;\n if (Array.isArray(data?.records)) return data.records;\n\n return [];\n};\n\nconst InconelHTMLTable = ({\n columns = [],\n data = [],\n rowKey = 'id',\n selectable = false,\n pagination = true,\n pageSize = 10,\n pageSizeOptions = [5, 10, 20, 30, 50, 100],\n total,\n currentPage,\n className = '',\n rowClassName,\n onRowClick,\n onPageChange,\n onPageSizeChange,\n onSelectionChange\n}) => {\n const [sortConfig, setSortConfig] = useState(null);\n const [selectedRows, setSelectedRows] = useState([]);\n const [page, setPage] = useState(1);\n const [selectedPageSize, setSelectedPageSize] = useState(pageSize);\n const [isScrolled, setIsScrolled] = useState(false);\n\n useEffect(() => {\n setSelectedPageSize(pageSize);\n }, [pageSize]);\n\n const tableData = useMemo(() => normalizeTableData(data), [data]);\n\n const sortedData = useMemo(() => {\n if (!sortConfig) return tableData;\n\n return [...tableData].sort((a, b) => {\n const aVal = getValueByPath(a, sortConfig.key, '');\n const bVal = getValueByPath(b, sortConfig.key, '');\n\n if (aVal < bVal) return sortConfig.direction === 'asc' ? -1 : 1;\n if (aVal > bVal) return sortConfig.direction === 'asc' ? 1 : -1;\n return 0;\n });\n }, [tableData, sortConfig]);\n\n const activePage = currentPage ?? page;\n const hasTotal = total !== undefined && total !== null;\n const isServerSidePagination = hasTotal && typeof onPageChange === 'function';\n const totalPage = Math.ceil((hasTotal ? total : sortedData.length) / selectedPageSize);\n\n const visibleData = pagination && !isServerSidePagination\n ? sortedData.slice((activePage - 1) * selectedPageSize, activePage * selectedPageSize)\n : sortedData;\n\n const getRowKey = (row, rowIndex) => (\n getValueByPath(row, rowKey, rowIndex)\n );\n\n const handleSort = (column) => {\n if (!column.sortable) return;\n\n setSortConfig((prev) => {\n if (prev?.key === column.key) {\n return {\n key: column.key,\n direction: prev.direction === 'asc' ? 'desc' : 'asc'\n };\n }\n\n return {\n key: column.key,\n direction: 'asc'\n };\n });\n };\n\n const handleSelect = (row, rowIndex) => {\n const key = getRowKey(row, rowIndex);\n\n const newSelectedRows = selectedRows.includes(key)\n ? selectedRows.filter((item) => item !== key)\n : [...selectedRows, key];\n\n setSelectedRows(newSelectedRows);\n onSelectionChange?.(newSelectedRows);\n };\n\n const handleSelectAll = () => {\n const visibleKeys = visibleData.map((row, rowIndex) => getRowKey(row, rowIndex));\n const allSelected = visibleKeys.every((key) => selectedRows.includes(key));\n\n const newSelectedRows = allSelected\n ? selectedRows.filter((key) => !visibleKeys.includes(key))\n : [...new Set([...selectedRows, ...visibleKeys])];\n\n setSelectedRows(newSelectedRows);\n onSelectionChange?.(newSelectedRows);\n };\n\n const handlePageChange = (newPage) => {\n if (newPage < 1 || newPage > totalPage || newPage === activePage) return;\n\n if (currentPage === undefined || currentPage === null) {\n setPage(newPage);\n }\n\n onPageChange?.(newPage);\n };\n\n const handlePageSizeChange = (event) => {\n const newPageSize = Number(event.target.value);\n\n setSelectedPageSize(newPageSize);\n\n if (currentPage === undefined || currentPage === null) {\n setPage(1);\n }\n\n if (typeof onPageSizeChange === 'function') {\n onPageSizeChange(newPageSize);\n return;\n }\n\n onPageChange?.(1);\n };\n\n const getPaginationItems = () => {\n const pages = [];\n const maxVisiblePages = 5;\n\n if (totalPage <= maxVisiblePages + 2) {\n return Array.from({ length: totalPage }, (_, index) => index + 1);\n }\n\n const startPage = Math.max(2, activePage - 1);\n const endPage = Math.min(totalPage - 1, activePage + 1);\n\n pages.push(1);\n\n if (startPage > 2) {\n pages.push('...');\n }\n\n for (let pageNumber = startPage; pageNumber <= endPage; pageNumber += 1) {\n pages.push(pageNumber);\n }\n\n if (endPage < totalPage - 1) {\n pages.push('...');\n }\n\n pages.push(totalPage);\n\n return pages;\n };\n\n return (\n <div\n className={[\n 'ep-table-wrapper',\n isScrolled ? 'is-scrolled' : '',\n className\n ]\n .filter(Boolean)\n .join(' ')}\n onScroll={(event) => {\n setIsScrolled(event.currentTarget.scrollTop > 0);\n }}\n >\n <table>\n <thead>\n <tr>\n {selectable && (\n <th className=\"ep-table-check\">\n <input type=\"checkbox\" onChange={handleSelectAll} />\n </th>\n )}\n\n {columns.map((column) => (\n <th\n key={column.key}\n onClick={() => handleSort(column)}\n className={`${column.sortable ? 'sortable' : ''} ${column.headerClassName || ''}`}\n >\n {column.title}\n\n {sortConfig?.key === column.key && (\n <span>\n {sortConfig.direction === 'asc' ? ' ↑' : ' ↓'}\n </span>\n )}\n </th>\n ))}\n </tr>\n </thead>\n\n <tbody>\n {visibleData.length > 0 ? (\n visibleData.map((row, rowIndex) => {\n const key = getRowKey(row, rowIndex);\n const rowClass = typeof rowClassName === 'function'\n ? rowClassName(row, rowIndex)\n : rowClassName;\n\n return (\n <tr\n key={key}\n onClick={() => onRowClick?.(row)}\n className={[\n onRowClick ? 'clickable' : '',\n rowClass\n ]\n .filter(Boolean)\n .join(' ')}\n >\n {selectable && (\n <td onClick={(e) => e.stopPropagation()}>\n <input\n type=\"checkbox\"\n checked={selectedRows.includes(key)}\n onChange={() => handleSelect(row, rowIndex)}\n />\n </td>\n )}\n\n {columns.map((column) => (\n <td\n key={column.key}\n className={column.className || ''}\n >\n {column.render\n ? column.render(row, rowIndex)\n : getValueByPath(row, column.key)}\n </td>\n ))}\n </tr>\n );\n })\n ) : (\n <tr>\n <td colSpan={columns.length + (selectable ? 1 : 0)}>\n Kayıt bulunamadı\n </td>\n </tr>\n )}\n </tbody>\n </table>\n\n {pagination && totalPage > 1 && (\n <div className=\"ep-table-pagination\">\n <button type=\"button\" disabled={activePage === 1} onClick={() => handlePageChange(activePage - 1)}>\n Geri\n </button>\n\n {getPaginationItems().map((item, index) => (\n item === '...' ? (\n <span key={`pagination-ellipsis-${index}`}>...</span>\n ) : (\n <button\n type=\"button\"\n key={`pagination-page-${item}`}\n className={item === activePage ? 'active' : ''}\n onClick={() => handlePageChange(item)}\n >\n {item}\n </button>\n )\n ))}\n\n <button type=\"button\" disabled={activePage === totalPage} onClick={() => handlePageChange(activePage + 1)}>\n İleri\n </button>\n\n <button type=\"button\" disabled={activePage === totalPage} onClick={() => handlePageChange(totalPage)}>\n Son Sayfa\n </button>\n\n <select value={selectedPageSize} onChange={handlePageSizeChange}>\n {pageSizeOptions.map((option) => (\n <option key={`page-size-${option}`} value={option}>\n {option}\n </option>\n ))}\n </select>\n </div>\n )}\n </div>\n );\n};\n\nInconelHTMLTable.propTypes = {\n columns: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string.isRequired,\n title: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node\n ]),\n sortable: PropTypes.bool,\n render: PropTypes.func,\n headerClassName: PropTypes.string,\n className: PropTypes.string\n })\n ),\n data: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.object),\n PropTypes.shape({\n items: PropTypes.arrayOf(PropTypes.object),\n data: PropTypes.arrayOf(PropTypes.object),\n content: PropTypes.arrayOf(PropTypes.object),\n records: PropTypes.arrayOf(PropTypes.object)\n })\n ]),\n rowKey: PropTypes.string,\n selectable: PropTypes.bool,\n pagination: PropTypes.bool,\n pageSize: PropTypes.number,\n pageSizeOptions: PropTypes.arrayOf(PropTypes.number),\n total: PropTypes.number,\n currentPage: PropTypes.number,\n onRowClick: PropTypes.func,\n onPageChange: PropTypes.func,\n onPageSizeChange: PropTypes.func,\n onSelectionChange: PropTypes.func,\n rowClassName: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func\n ]),\n className: PropTypes.string\n};\n\nexport default InconelHTMLTable;\n"],"names":["getValueByPath","obj","path","defaultValue","current","key","normalizeTableData","data","InconelHTMLTable","columns","rowKey","selectable","pagination","pageSize","pageSizeOptions","total","currentPage","className","rowClassName","onRowClick","onPageChange","onPageSizeChange","onSelectionChange","sortConfig","setSortConfig","useState","selectedRows","setSelectedRows","page","setPage","selectedPageSize","setSelectedPageSize","isScrolled","setIsScrolled","useEffect","tableData","useMemo","sortedData","a","b","aVal","bVal","activePage","hasTotal","isServerSidePagination","totalPage","visibleData","getRowKey","row","rowIndex","handleSort","column","prev","handleSelect","newSelectedRows","item","handleSelectAll","visibleKeys","handlePageChange","newPage","handlePageSizeChange","event","newPageSize","getPaginationItems","pages","_","index","startPage","endPage","pageNumber","jsxs","jsx","rowClass","e","option","PropTypes"],"mappings":"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"}