inconel 0.1.29 → 0.1.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/HTMLTable/legacy/index.cjs +1 -1
- package/dist/cjs/components/HTMLTable/legacy/index.cjs.map +1 -1
- package/dist/cjs/styles.css +1 -1
- package/dist/components/HTMLTable/legacy/index.js +1 -1
- package/dist/components/HTMLTable/legacy/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("react/jsx-runtime"),u=require("react"),t=require("prop-types");;/* empty css */const k=(r,p,x="-")=>p?.split(".")?.reduce((g,h)=>g?.[h],r)??x,X=r=>Array.isArray(r)?r:Array.isArray(r?.items)?r.items:Array.isArray(r?.data)?r.data:Array.isArray(r?.content)?r.content:Array.isArray(r?.records)?r.records:[],D=({columns:r=[],data:p=[],rowKey:x="id",selectable:b=!1,pagination:g=!0,pageSize:h=10,pageSizeOptions:K=[5,10,20,30,50,100],total:m,currentPage:f,className:B="",rowClassName:v,onRowClick:P,onPageChange:C,onPageSizeChange:M,onSelectionChange:R})=>{const[d,_]=u.useState(null),[y,z]=u.useState([]),[E,q]=u.useState(1),[j,V]=u.useState(h),[G,H]=u.useState(!1);u.useEffect(()=>{V(h)},[h]);const N=u.useMemo(()=>X(p),[p]),A=u.useMemo(()=>d?[...N].sort((e,n)=>{const c=k(e,d.key,""),a=k(n,d.key,"");return c<a?d.direction==="asc"?-1:1:c>a?d.direction==="asc"?1:-1:0}):N,[N,d]),l=f??E,$=m!=null,L=$&&typeof C=="function",o=Math.ceil(($?m:A.length)/j),O=g&&!L?A.slice((l-1)*j,l*j):A,T=(e,n)=>k(e,x,n),F=e=>{e.sortable&&_(n=>n?.key===e.key?{key:e.key,direction:n.direction==="asc"?"desc":"asc"}:{key:e.key,direction:"asc"})},I=(e,n)=>{const c=T(e,n),a=y.includes(c)?y.filter(i=>i!==c):[...y,c];z(a),R?.(a)},J=()=>{const e=O.map((a,i)=>T(a,i)),c=e.every(a=>y.includes(a))?y.filter(a=>!e.includes(a)):[...new Set([...y,...e])];z(c),R?.(c)},S=e=>{e<1||e>o||e===l||(f==null&&q(e),C?.(e))},Q=e=>{const n=Number(e.target.value);if(V(n),f==null&&q(1),typeof M=="function"){M(n);return}C?.(1)},U=()=>{const e=[];if(o<=7)return Array.from({length:o},(i,W)=>W+1);const c=Math.max(2,l-1),a=Math.min(o-1,l+1);e.push(1),c>2&&e.push("...");for(let i=c;i<=a;i+=1)e.push(i);return a<o-1&&e.push("..."),e.push(o),e};return s.jsxs("div",{className:["ep-table-wrapper",G?"is-scrolled":"",B].filter(Boolean).join(" "),onScroll:e=>{H(e.currentTarget.scrollTop>0)},children:[s.jsxs("table",{
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("react/jsx-runtime"),u=require("react"),t=require("prop-types");;/* empty css */const k=(r,p,x="-")=>p?.split(".")?.reduce((g,h)=>g?.[h],r)??x,X=r=>Array.isArray(r)?r:Array.isArray(r?.items)?r.items:Array.isArray(r?.data)?r.data:Array.isArray(r?.content)?r.content:Array.isArray(r?.records)?r.records:[],D=({columns:r=[],data:p=[],rowKey:x="id",selectable:b=!1,pagination:g=!0,pageSize:h=10,pageSizeOptions:K=[5,10,20,30,50,100],total:m,currentPage:f,className:B="",rowClassName:v,onRowClick:P,onPageChange:C,onPageSizeChange:M,onSelectionChange:R})=>{const[d,_]=u.useState(null),[y,z]=u.useState([]),[E,q]=u.useState(1),[j,V]=u.useState(h),[G,H]=u.useState(!1);u.useEffect(()=>{V(h)},[h]);const N=u.useMemo(()=>X(p),[p]),A=u.useMemo(()=>d?[...N].sort((e,n)=>{const c=k(e,d.key,""),a=k(n,d.key,"");return c<a?d.direction==="asc"?-1:1:c>a?d.direction==="asc"?1:-1:0}):N,[N,d]),l=f??E,$=m!=null,L=$&&typeof C=="function",o=Math.ceil(($?m:A.length)/j),O=g&&!L?A.slice((l-1)*j,l*j):A,T=(e,n)=>k(e,x,n),F=e=>{e.sortable&&_(n=>n?.key===e.key?{key:e.key,direction:n.direction==="asc"?"desc":"asc"}:{key:e.key,direction:"asc"})},I=(e,n)=>{const c=T(e,n),a=y.includes(c)?y.filter(i=>i!==c):[...y,c];z(a),R?.(a)},J=()=>{const e=O.map((a,i)=>T(a,i)),c=e.every(a=>y.includes(a))?y.filter(a=>!e.includes(a)):[...new Set([...y,...e])];z(c),R?.(c)},S=e=>{e<1||e>o||e===l||(f==null&&q(e),C?.(e))},Q=e=>{const n=Number(e.target.value);if(V(n),f==null&&q(1),typeof M=="function"){M(n);return}C?.(1)},U=()=>{const e=[];if(o<=7)return Array.from({length:o},(i,W)=>W+1);const c=Math.max(2,l-1),a=Math.min(o-1,l+1);e.push(1),c>2&&e.push("...");for(let i=c;i<=a;i+=1)e.push(i);return a<o-1&&e.push("..."),e.push(o),e};return s.jsxs("div",{className:["ep-table-wrapper",G?"is-scrolled":"",B].filter(Boolean).join(" "),onScroll:e=>{H(e.currentTarget.scrollTop>0)},children:[s.jsxs("table",{children:[s.jsx("thead",{children:s.jsxs("tr",{children:[b&&s.jsx("th",{className:"ep-table-check",children:s.jsx("input",{type:"checkbox",onChange:J})}),r.map(e=>s.jsxs("th",{onClick:()=>F(e),className:`${e.sortable?"sortable":""} ${e.headerClassName||""}`,children:[e.title,d?.key===e.key&&s.jsx("span",{children:d.direction==="asc"?" ↑":" ↓"})]},e.key))]})}),s.jsx("tbody",{children:O.length>0?O.map((e,n)=>{const c=T(e,n),a=typeof v=="function"?v(e,n):v;return s.jsxs("tr",{onClick:()=>P?.(e),className:[P?"clickable":"",a].filter(Boolean).join(" "),children:[b&&s.jsx("td",{onClick:i=>i.stopPropagation(),children:s.jsx("input",{type:"checkbox",checked:y.includes(c),onChange:()=>I(e,n)})}),r.map(i=>s.jsx("td",{className:i.className||"",children:i.render?i.render(e,n):k(e,i.key)},i.key))]},c)}):s.jsx("tr",{children:s.jsx("td",{colSpan:r.length+(b?1:0),children:"Kayıt bulunamadı"})})})]}),g&&o>1&&s.jsxs("div",{className:"ep-table-pagination",children:[s.jsx("button",{type:"button",disabled:l===1,onClick:()=>S(l-1),children:"Geri"}),U().map((e,n)=>e==="..."?s.jsx("span",{children:"..."},`pagination-ellipsis-${n}`):s.jsx("button",{type:"button",className:e===l?"active":"",onClick:()=>S(e),children:e},`pagination-page-${e}`)),s.jsx("button",{type:"button",disabled:l===o,onClick:()=>S(l+1),children:"İleri"}),s.jsx("button",{type:"button",disabled:l===o,onClick:()=>S(o),children:"Son Sayfa"}),s.jsx("select",{value:j,onChange:Q,children:K.map(e=>s.jsx("option",{value:e,children:e},`page-size-${e}`))})]})]})};D.propTypes={columns:t.arrayOf(t.shape({key:t.string.isRequired,title:t.oneOfType([t.string,t.node]),sortable:t.bool,render:t.func,headerClassName:t.string,className:t.string})),data:t.oneOfType([t.arrayOf(t.object),t.shape({items:t.arrayOf(t.object),data:t.arrayOf(t.object),content:t.arrayOf(t.object),records:t.arrayOf(t.object)})]),rowKey:t.string,selectable:t.bool,pagination:t.bool,pageSize:t.number,pageSizeOptions:t.arrayOf(t.number),total:t.number,currentPage:t.number,onRowClick:t.func,onPageChange:t.func,onPageSizeChange:t.func,onSelectionChange:t.func,rowClassName:t.oneOfType([t.string,t.func]),className:t.string};exports.default=D;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","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":"wNAIA,MAAMA,EAAiB,CAACC,EAAKC,EAAMC,EAAe,MAChCD,GACR,MAAM,GAAG,GACT,OAAO,CAACE,EAASC,IAAQD,IAAUC,CAAG,EAAGJ,CAAG,GAElCE,EAGdG,EAAsBC,GACpB,MAAM,QAAQA,CAAI,EAAUA,EAE5B,MAAM,QAAQA,GAAM,KAAK,EAAUA,EAAK,MACxC,MAAM,QAAQA,GAAM,IAAI,EAAUA,EAAK,KACvC,MAAM,QAAQA,GAAM,OAAO,EAAUA,EAAK,QAC1C,MAAM,QAAQA,GAAM,OAAO,EAAUA,EAAK,QAEvC,CAAA,EAGLC,EAAmB,CAAC,CACtB,QAAAC,EAAU,CAAA,EACV,KAAAF,EAAO,CAAA,EACP,OAAAG,EAAS,KACT,WAAAC,EAAa,GACb,WAAAC,EAAa,GACb,SAAAC,EAAW,GACX,gBAAAC,EAAkB,CAAC,EAAG,GAAI,GAAI,GAAI,GAAI,GAAG,EACzC,MAAAC,EACA,YAAAC,EACA,UAAAC,EAAY,GACZ,aAAAC,EACA,WAAAC,EACA,aAAAC,EACA,iBAAAC,EACA,kBAAAC,CACJ,IAAM,CACF,KAAM,CAACC,EAAYC,CAAa,EAAIC,EAAAA,SAAS,IAAI,EAC3C,CAACC,EAAcC,CAAe,EAAIF,EAAAA,SAAS,CAAA,CAAE,EAC7C,CAACG,EAAMC,CAAO,EAAIJ,EAAAA,SAAS,CAAC,EAC5B,CAACK,EAAkBC,CAAmB,EAAIN,EAAAA,SAASZ,CAAQ,EAC3D,CAACmB,EAAYC,CAAa,EAAIR,EAAAA,SAAS,EAAK,EAElDS,EAAAA,UAAU,IAAM,CACZH,EAAoBlB,CAAQ,CAChC,EAAG,CAACA,CAAQ,CAAC,EAEb,MAAMsB,EAAYC,EAAAA,QAAQ,IAAM9B,EAAmBC,CAAI,EAAG,CAACA,CAAI,CAAC,EAE1D8B,EAAaD,EAAAA,QAAQ,IAClBb,EAEE,CAAC,GAAGY,CAAS,EAAE,KAAK,CAACG,EAAGC,IAAM,CACjC,MAAMC,EAAOxC,EAAesC,EAAGf,EAAW,IAAK,EAAE,EAC3CkB,EAAOzC,EAAeuC,EAAGhB,EAAW,IAAK,EAAE,EAEjD,OAAIiB,EAAOC,EAAalB,EAAW,YAAc,MAAQ,GAAK,EAC1DiB,EAAOC,EAAalB,EAAW,YAAc,MAAQ,EAAI,GACtD,CACX,CAAC,EATuBY,EAUzB,CAACA,EAAWZ,CAAU,CAAC,EAEpBmB,EAAa1B,GAAeY,EAC5Be,EAAkC5B,GAAU,KAC5C6B,EAAyBD,GAAY,OAAOvB,GAAiB,WAC7DyB,EAAY,KAAK,MAAMF,EAAW5B,EAAQsB,EAAW,QAAUP,CAAgB,EAE/EgB,EAAclC,GAAc,CAACgC,EAC7BP,EAAW,OAAOK,EAAa,GAAKZ,EAAkBY,EAAaZ,CAAgB,EACnFO,EAEAU,EAAY,CAACC,EAAKC,IACpBjD,EAAegD,EAAKtC,EAAQuC,CAAQ,EAGlCC,EAAcC,GAAW,CACtBA,EAAO,UAEZ3B,EAAe4B,GACPA,GAAM,MAAQD,EAAO,IACd,CACH,IAAKA,EAAO,IACZ,UAAWC,EAAK,YAAc,MAAQ,OAAS,KAAA,EAIhD,CACH,IAAKD,EAAO,IACZ,UAAW,KAAA,CAElB,CACL,EAEME,EAAe,CAACL,EAAKC,IAAa,CACpC,MAAM5C,EAAM0C,EAAUC,EAAKC,CAAQ,EAE7BK,EAAkB5B,EAAa,SAASrB,CAAG,EAC3CqB,EAAa,OAAQ6B,GAASA,IAASlD,CAAG,EAC1C,CAAC,GAAGqB,EAAcrB,CAAG,EAE3BsB,EAAgB2B,CAAe,EAC/BhC,IAAoBgC,CAAe,CACvC,EAEME,EAAkB,IAAM,CAC1B,MAAMC,EAAcX,EAAY,IAAI,CAACE,EAAKC,IAAaF,EAAUC,EAAKC,CAAQ,CAAC,EAGzEK,EAFcG,EAAY,MAAOpD,GAAQqB,EAAa,SAASrB,CAAG,CAAC,EAGnEqB,EAAa,OAAQrB,GAAQ,CAACoD,EAAY,SAASpD,CAAG,CAAC,EACvD,CAAC,OAAO,IAAI,CAAC,GAAGqB,EAAc,GAAG+B,CAAW,CAAC,CAAC,EAEpD9B,EAAgB2B,CAAe,EAC/BhC,IAAoBgC,CAAe,CACvC,EAEMI,EAAoBC,GAAY,CAC9BA,EAAU,GAAKA,EAAUd,GAAac,IAAYjB,IAErB1B,GAAgB,MAC7Ca,EAAQ8B,CAAO,EAGnBvC,IAAeuC,CAAO,EAC1B,EAEMC,EAAwBC,GAAU,CACpC,MAAMC,EAAc,OAAOD,EAAM,OAAO,KAAK,EAQ7C,GANA9B,EAAoB+B,CAAW,EAEE9C,GAAgB,MAC7Ca,EAAQ,CAAC,EAGT,OAAOR,GAAqB,WAAY,CACxCA,EAAiByC,CAAW,EAC5B,MACJ,CAEA1C,IAAe,CAAC,CACpB,EAEM2C,EAAqB,IAAM,CAC7B,MAAMC,EAAQ,CAAA,EAGd,GAAInB,GAAa,EACb,OAAO,MAAM,KAAK,CAAE,OAAQA,GAAa,CAACoB,EAAGC,IAAUA,EAAQ,CAAC,EAGpE,MAAMC,EAAY,KAAK,IAAI,EAAGzB,EAAa,CAAC,EACtC0B,EAAU,KAAK,IAAIvB,EAAY,EAAGH,EAAa,CAAC,EAEtDsB,EAAM,KAAK,CAAC,EAERG,EAAY,GACZH,EAAM,KAAK,KAAK,EAGpB,QAASK,EAAaF,EAAWE,GAAcD,EAASC,GAAc,EAClEL,EAAM,KAAKK,CAAU,EAGzB,OAAID,EAAUvB,EAAY,GACtBmB,EAAM,KAAK,KAAK,EAGpBA,EAAM,KAAKnB,CAAS,EAEbmB,CACX,EAEA,OACIM,EAAAA,KAAC,MAAA,CACG,UAAW,CACP,mBACAtC,EAAa,cAAgB,GAC7Bf,CAAA,EAEC,OAAO,OAAO,EACd,KAAK,GAAG,EACb,SAAW4C,GAAU,CACjB5B,EAAc4B,EAAM,cAAc,UAAY,CAAC,CACnD,EAEA,SAAA,CAAAS,EAAAA,KAAC,QAAA,CAAM,UAAU,uBACb,SAAA,CAAAC,EAAAA,IAAC,QAAA,CACG,gBAAC,KAAA,CACI,SAAA,CAAA5D,GACG4D,EAAAA,IAAC,KAAA,CAAG,UAAU,iBACV,SAAAA,EAAAA,IAAC,SAAM,KAAK,WAAW,SAAUf,CAAA,CAAiB,CAAA,CACtD,EAGH/C,EAAQ,IAAK0C,GACVmB,EAAAA,KAAC,KAAA,CAEG,QAAS,IAAMpB,EAAWC,CAAM,EAChC,UAAW,GAAGA,EAAO,SAAW,WAAa,EAAE,IAAIA,EAAO,iBAAmB,EAAE,GAE9E,SAAA,CAAAA,EAAO,MAEP5B,GAAY,MAAQ4B,EAAO,KACxBoB,EAAAA,IAAC,QACI,SAAAhD,EAAW,YAAc,MAAQ,KAAO,IAAA,CAC7C,CAAA,CAAA,EATC4B,EAAO,GAAA,CAYnB,CAAA,CAAA,CACL,CAAA,CACJ,EAEAoB,EAAAA,IAAC,SACI,SAAAzB,EAAY,OAAS,EAClBA,EAAY,IAAI,CAACE,EAAKC,IAAa,CAC/B,MAAM5C,EAAM0C,EAAUC,EAAKC,CAAQ,EAC7BuB,EAAW,OAAOtD,GAAiB,WACnCA,EAAa8B,EAAKC,CAAQ,EAC1B/B,EAEN,OACIoD,EAAAA,KAAC,KAAA,CAEG,QAAS,IAAMnD,IAAa6B,CAAG,EAC/B,UAAW,CACP7B,EAAa,YAAc,GAC3BqD,CAAA,EAEC,OAAO,OAAO,EACd,KAAK,GAAG,EAEZ,SAAA,CAAA7D,SACI,KAAA,CAAG,QAAU8D,GAAMA,EAAE,kBAClB,SAAAF,EAAAA,IAAC,QAAA,CACG,KAAK,WACL,QAAS7C,EAAa,SAASrB,CAAG,EAClC,SAAU,IAAMgD,EAAaL,EAAKC,CAAQ,CAAA,CAAA,EAElD,EAGHxC,EAAQ,IAAK0C,GACVoB,EAAAA,IAAC,KAAA,CAEG,UAAWpB,EAAO,WAAa,GAE9B,SAAAA,EAAO,OACFA,EAAO,OAAOH,EAAKC,CAAQ,EAC3BjD,EAAegD,EAAKG,EAAO,GAAG,CAAA,EAL/BA,EAAO,GAAA,CAOnB,CAAA,CAAA,EA5BI9C,CAAA,CA+BjB,CAAC,EAEDkE,EAAAA,IAAC,KAAA,CACG,eAAC,KAAA,CAAG,QAAS9D,EAAQ,QAAUE,EAAa,EAAI,GAAI,SAAA,kBAAA,CAEpD,EACJ,CAAA,CAER,CAAA,EACJ,EAECC,GAAciC,EAAY,GACvByB,EAAAA,KAAC,MAAA,CAAI,UAAU,sBACX,SAAA,CAAAC,EAAAA,IAAC,SAAA,CAAO,KAAK,SAAS,SAAU7B,IAAe,EAAG,QAAS,IAAMgB,EAAiBhB,EAAa,CAAC,EAAG,SAAA,OAEnG,EAECqB,EAAA,EAAqB,IAAI,CAACR,EAAMW,IAC7BX,IAAS,MACLgB,EAAAA,IAAC,OAAA,CAA0C,SAAA,OAAhC,uBAAuBL,CAAK,EAAO,EAE9CK,EAAAA,IAAC,SAAA,CACG,KAAK,SAEL,UAAWhB,IAASb,EAAa,SAAW,GAC5C,QAAS,IAAMgB,EAAiBH,CAAI,EAEnC,SAAAA,CAAA,EAJI,mBAAmBA,CAAI,EAAA,CAOvC,EAEDgB,EAAAA,IAAC,SAAA,CAAO,KAAK,SAAS,SAAU7B,IAAeG,EAAW,QAAS,IAAMa,EAAiBhB,EAAa,CAAC,EAAG,SAAA,QAE3G,EAEA6B,EAAAA,IAAC,SAAA,CAAO,KAAK,SAAS,SAAU7B,IAAeG,EAAW,QAAS,IAAMa,EAAiBb,CAAS,EAAG,SAAA,WAAA,CAEtG,QAEC,SAAA,CAAO,MAAOf,EAAkB,SAAU8B,EACtC,WAAgB,IAAKc,GAClBH,MAAC,SAAA,CAAmC,MAAOG,EACtC,SAAAA,GADQ,aAAaA,CAAM,EAEhC,CACH,CAAA,CACL,CAAA,CAAA,CACJ,CAAA,CAAA,CAAA,CAIhB,EAEAlE,EAAiB,UAAY,CACzB,QAASmE,EAAU,QACfA,EAAU,MAAM,CACZ,IAAKA,EAAU,OAAO,WACtB,MAAOA,EAAU,UAAU,CACvBA,EAAU,OACVA,EAAU,IAAA,CACb,EACD,SAAUA,EAAU,KACpB,OAAQA,EAAU,KAClB,gBAAiBA,EAAU,OAC3B,UAAWA,EAAU,MAAA,CACxB,CAAA,EAEL,KAAMA,EAAU,UAAU,CACtBA,EAAU,QAAQA,EAAU,MAAM,EAClCA,EAAU,MAAM,CACZ,MAAOA,EAAU,QAAQA,EAAU,MAAM,EACzC,KAAMA,EAAU,QAAQA,EAAU,MAAM,EACxC,QAASA,EAAU,QAAQA,EAAU,MAAM,EAC3C,QAASA,EAAU,QAAQA,EAAU,MAAM,CAAA,CAC9C,CAAA,CACJ,EACD,OAAQA,EAAU,OAClB,WAAYA,EAAU,KACtB,WAAYA,EAAU,KACtB,SAAUA,EAAU,OACpB,gBAAiBA,EAAU,QAAQA,EAAU,MAAM,EACnD,MAAOA,EAAU,OACjB,YAAaA,EAAU,OACvB,WAAYA,EAAU,KACtB,aAAcA,EAAU,KACxB,iBAAkBA,EAAU,KAC5B,kBAAmBA,EAAU,KAC7B,aAAcA,EAAU,UAAU,CAC9BA,EAAU,OACVA,EAAU,IAAA,CACb,EACD,UAAWA,EAAU,MACzB"}
|
|
1
|
+
{"version":3,"file":"index.cjs","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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"}
|