{"version":3,"file":"useDisplayPagination.mjs","sources":["../../../../../../../../web/src/adminPortal/utils/useDisplayPagination.ts"],"sourcesContent":["import { useMemo } from 'react';\n\nimport { noop } from '../shared/utils/noop';\nimport { ItemsPerPageOption, itemsPerPageOptions, useItemsPerPage } from './useItemsPerPage';\nimport { usePagination } from './usePagination';\n\nexport const useDisplayPagination = <T>({\n  items,\n  defaultItemsPerPage = 15,\n  viewId,\n}: {\n  items: T[];\n  defaultItemsPerPage?: ItemsPerPageOption;\n  viewId: string;\n}) => {\n  const [itemsPerPage, handleItemsPerPageChange] = useItemsPerPage({ viewId, defaultItemsPerPage });\n\n  const { currentPage, setCurrentPage } = usePagination({ itemsCount: items.length, itemsPerPage });\n  const metadata = useMemo(() => ({ total: items.length, cursor: 'none' }), [items.length]);\n\n  return {\n    items,\n    currentPage,\n    setCurrentPage,\n    loadNext: noop,\n    metadata,\n    rowsPerPage: itemsPerPage,\n    rowsPerPageOptions: itemsPerPageOptions,\n    onRowsPerPageChange: handleItemsPerPageChange,\n  };\n};\n"],"names":["useDisplayPagination","items","defaultItemsPerPage","viewId","itemsPerPage","handleItemsPerPageChange","useItemsPerPage","currentPage","setCurrentPage","usePagination","itemsCount","length","metadata","useMemo","total","cursor","loadNext","noop","rowsPerPage","rowsPerPageOptions","itemsPerPageOptions","onRowsPerPageChange"],"mappings":";;;;;;AAMO,MAAMA,oBAAAA,GAAuB,CAAI,EACtCC,KAAK,EACLC,mBAAAA,GAAsB,EAAE,EACxBC,MAAM,EAKP,GAAA;AACC,IAAA,MAAM,CAACC,YAAAA,EAAcC,wBAAAA,CAAyB,GAAGC,eAAAA,CAAgB;AAAEH,QAAAA,MAAAA;AAAQD,QAAAA;AAAoB,KAAA,CAAA;AAE/F,IAAA,MAAM,EAAEK,WAAW,EAAEC,cAAc,EAAE,GAAGC,aAAAA,CAAc;AAAEC,QAAAA,UAAAA,EAAYT,MAAMU,MAAM;AAAEP,QAAAA;AAAa,KAAA,CAAA;IAC/F,MAAMQ,QAAAA,GAAWC,CAAAA,CAAQ,KAAO;AAAEC,YAAAA,KAAAA,EAAOb,MAAMU,MAAM;YAAEI,MAAAA,EAAQ;AAAO,SAAA,CAAA,EAAI;AAACd,QAAAA,KAAAA,CAAMU;AAAO,KAAA,CAAA;IAExF,OAAO;AACLV,QAAAA,KAAAA;AACAM,QAAAA,WAAAA;AACAC,QAAAA,cAAAA;QACAQ,QAAAA,EAAUC,IAAAA;AACVL,QAAAA,QAAAA;QACAM,WAAAA,EAAad,YAAAA;QACbe,kBAAAA,EAAoBC,mBAAAA;QACpBC,mBAAAA,EAAqBhB;AACvB,KAAA;AACF;;;;"}