veza/apps/web/dist_verification/assets/Pagination-MmdnmGQ0.js
senke 203cb5d5e5 refactor: Phase 8 — Update docs, ESLint, Storybook config for SUMI
- DESIGN_TOKENS.md: Complete rewrite to document --sumi-* token system
- APP_SHELL.md: Update layout shell docs (glass bg, backdrop-blur, z-index)
- DESIGN_DIRECTION.md: Update aesthetic direction to SUMI philosophy
- .storybook/preview.tsx: Remove deleted CSS imports, update bg colors
- eslint.config.js: Update color rule message from Kodo to SUMI tokens
- tailwind.config.ts: Fix comment referencing deleted design-tokens.css

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-12 02:15:11 +01:00

1 line
3 KiB
JavaScript

import{a as K,j as n}from"./vendor-react-Dkpvlwai.js";import{d as k,B as d}from"./index-jE2AGx2y.js";import{r as x,a1 as C,s as m}from"./vendor-icons-CbmLcMl-.js";function B({currentPage:e,totalPages:s,onPageChange:a,maxVisiblePages:t=5,showFirstLast:c=!1,className:A,totalItems:l,itemsPerPage:u,showItemsInfo:y=!1}){const M=K.useMemo(()=>{if(s<=t)return Array.from({length:s},(p,z)=>z+1);const i=[],h=Math.floor(t/2);let r=Math.max(1,e-h);const f=Math.min(s,r+t-1);f===s&&(r=Math.max(1,s-t+1)),(c&&r>1||r>1)&&(i.push(1),r>2&&i.push("ellipsis-start"));for(let p=r;p<=f;p++)i.push(p);return f<s&&(f<s-1&&i.push("ellipsis-end"),i.push(s)),i},[e,s,t,c]),j=()=>{e>1&&a(e-1)},v=()=>{e<s&&a(e+1)},N=()=>{a(1)},w=()=>{a(s)},o=(i,h,r)=>{if(i.key==="ArrowLeft"||i.key==="ArrowUp"){i.preventDefault(),j();return}if(i.key==="ArrowRight"||i.key==="ArrowDown"){i.preventDefault(),v();return}if(i.key==="Home"){i.preventDefault(),N();return}if(i.key==="End"){i.preventDefault(),w();return}},b=l&&u?(e-1)*u+1:null,D=l&&u?Math.min(e*u,l):null;return s<=1&&!y?null:n.jsxs("div",{className:k("flex flex-col gap-4",A),children:[y&&l!==void 0&&b!==null&&D!==null&&n.jsxs("div",{className:"text-sm text-muted-foreground text-center",children:["Affichage de ",b," à ",D," sur ",l," résultat",l>1?"s":""]}),s>1&&n.jsxs("nav",{"aria-label":"Navigation de pagination",role:"navigation",className:"flex items-center justify-center gap-1",children:[c&&n.jsxs(d,{type:"button",variant:"outline",size:"icon",onClick:N,disabled:e===1,"aria-label":"Première page",onKeyDown:i=>o(i),children:[n.jsx(x,{className:"h-4 w-4","aria-hidden":"true"}),n.jsx(x,{className:"h-4 w-4 -ml-2","aria-hidden":"true"}),n.jsx("span",{className:"sr-only",children:"Première page"})]}),n.jsxs(d,{type:"button",variant:"outline",size:"icon",onClick:j,disabled:e===1,"aria-label":"Page précédente",onKeyDown:i=>o(i),children:[n.jsx(x,{className:"h-4 w-4","aria-hidden":"true"}),n.jsx("span",{className:"sr-only",children:"Page précédente"})]}),M.map((i,h)=>i==="ellipsis-start"||i==="ellipsis-end"?n.jsx("div",{className:"flex h-9 w-9 items-center justify-center",children:n.jsx(C,{className:"h-4 w-4 text-muted-foreground"})},`ellipsis-${h}`):n.jsx(d,{type:"button",variant:e===i?"default":"outline",size:"icon",onClick:()=>a(i),"aria-label":`Aller à la page ${i}`,"aria-current":e===i?"page":void 0,onKeyDown:r=>o(r),className:k("h-9 w-9",e===i&&"bg-primary text-primary-foreground"),children:i},i)),n.jsxs(d,{type:"button",variant:"outline",size:"icon",onClick:v,disabled:e===s,"aria-label":"Page suivante",onKeyDown:i=>o(i),children:[n.jsx(m,{className:"h-4 w-4","aria-hidden":"true"}),n.jsx("span",{className:"sr-only",children:"Page suivante"})]}),c&&n.jsxs(d,{type:"button",variant:"outline",size:"icon",onClick:w,disabled:e===s,"aria-label":"Dernière page",onKeyDown:i=>o(i),children:[n.jsx(m,{className:"h-4 w-4","aria-hidden":"true"}),n.jsx(m,{className:"h-4 w-4 -ml-2","aria-hidden":"true"}),n.jsx("span",{className:"sr-only",children:"Dernière page"})]})]})]})}export{B as P};