UNPKG

@thehappycoder/react-responsive-pagination

Version:
36 lines (35 loc) 1.62 kB
import { createTotalWidthCalculator } from './totalWidthCalculator'; import { createItemWidthCalculator } from './itemWidthCalculator'; import { createNavWidthCalculator } from './navWidthCalculator'; import { createPageWidthCalculator } from './pageWidthCalculator'; import { createNumberWidthCalculator } from './numberWidthCalculator'; export { createGraph as createWidthCalculator }; function createGraph(rootMetrics) { var itemWidths = rootMetrics.itemWidths, outerFrameWidth = rootMetrics.outerFrameWidth; return createTotalWidthCalculator({ getItemWidth: createItemWidthCalculator({ getPageWidth: createPageWidthCalculator({ getNormalPageWidth: createNumberWidthCalculator({ singleDigit: itemWidths.normalPageSingleDigit, doubleDigit: itemWidths.normalPageDoubleDigit, }), getActivePageWidth: createNumberWidthCalculator({ singleDigit: itemWidths.activePageSingleDigit, doubleDigit: itemWidths.activePageDoubleDigit, }), }), getNavWidth: createNavWidthCalculator({ previous: { enabled: itemWidths.navPreviousEnabled, disabled: itemWidths.navPreviousDisabled, }, next: { enabled: itemWidths.navNextEnabled, disabled: itemWidths.navNextDisabled, }, }), ellipsisWidth: itemWidths.ellipsis, }), outerFrameWidth: outerFrameWidth, }); }