@elliemae/ds-page-number 1.61.12 → 1.61.13

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":"DSPageNumber.js","sources":["../../src/DSPageNumber.tsx"],"sourcesContent":["/* eslint-disable max-lines */\nimport React, { useState, useRef, useEffect } from 'react';\nimport { describe, PropTypes } from 'react-desc';\nimport { aggregatedClasses, convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { ChevronSmallDown, ChevronSmallUp } from '@elliemae/ds-icons';\nimport DSButton from '@elliemae/ds-button';\nimport { DSInput, DSInputGroup } from '@elliemae/ds-form';\nimport { lengthToSize, cleanPage } from './components/utils';\n\nconst blockName = 'page-number-block';\nconst PageNumberInputContainer = aggregatedClasses(DSInputGroup)(blockName);\n\nconst DSPageNumber = ({\n className,\n disabled,\n value,\n onChange,\n containerProps,\n currentPage,\n totalPages,\n separator,\n ...otherProps\n}) => {\n const safeTotal = cleanPage(totalPages);\n const ref = useRef(null);\n const { cssClassName, classNameElement } = convertPropToCssClassName('page-number', className, {\n disabled,\n });\n const [page, setPage] = useState(cleanPage(currentPage) || 1);\n const [size, setSize] = useState(null);\n useEffect(() => {\n const { width } = ref.current.getBoundingClientRect();\n const calculatedWidth = lengthToSize(width, page);\n setSize(calculatedWidth);\n }, [page, safeTotal]);\n\n function handleUpdateInput(e) {\n const newValue = cleanPage(e.target.value);\n if (newValue > safeTotal || newValue === 0) return;\n setPage(newValue);\n onChange(newValue);\n }\n function handleIncrease() {\n const newValue = page ? parseInt(page, 10) + 1 : 1;\n if (newValue > safeTotal) return;\n setPage(newValue);\n onChange(newValue);\n }\n function handleDecrease() {\n const newValue = page ? parseInt(page, 10) - 1 : 1;\n if (newValue < 1) return;\n setPage(newValue);\n onChange(newValue);\n }\n\n return (\n <div data-testid=\"ds-page-number\" className={`${cssClassName}`} {...containerProps} {...otherProps}>\n <PageNumberInputContainer>\n <div className={`${classNameElement('pages')}`}>\n <DSInput\n className={`${classNameElement('input')}`}\n data-testid=\"page-number__current-page\"\n onChange={handleUpdateInput}\n style={{\n width: `${size}px`,\n }}\n value={page}\n />\n <div className={`${classNameElement('separator')}`}>{separator}</div>\n <div className={`${classNameElement('total')}`} data-testid=\"page-number__total-pages\">\n {totalPages}\n </div>\n <div ref={ref} className={`${classNameElement('ref')}`} />\n </div>\n <div className={`${classNameElement('limiter')}`} />\n <DSButton\n aria-label=\"dropdown-indicator\"\n buttonType=\"text\"\n className=\"dropdown-indicator\"\n data-testid=\"page-number__increase\"\n icon={<ChevronSmallUp />}\n onClick={handleIncrease}\n />\n <DSButton\n aria-label=\"dropdown-indicator\"\n buttonType=\"text\"\n className=\"dropdown-indicator\"\n data-testid=\"page-number__decrease\"\n icon={<ChevronSmallDown />}\n onClick={handleDecrease}\n />\n </PageNumberInputContainer>\n </div>\n );\n};\n\nconst pageNumberProps = {\n className: PropTypes.string.description('html class attribute'),\n containerProps: PropTypes.object.description('Set of Properties attached to the main container'),\n disabled: PropTypes.bool.description('Whether the component is disabled or not').defaultValue(false),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.object]).description('page number value'),\n onChange: PropTypes.func.description('function executed when the page number changes'),\n currentPage: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).description('Value of the current page'),\n totalPages: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).description('Amount of pages').defaultValue(1),\n separator: PropTypes.oneOfType([PropTypes.string, PropTypes.number])\n .description('Separator between current page and total pages')\n .defaultValue('/'),\n};\n\nDSPageNumber.propTypes = pageNumberProps;\n\nconst PageNumberWithSchema = describe(DSPageNumber);\nPageNumberWithSchema.propTypes = pageNumberProps;\n\nDSPageNumber.defaultProps = {\n className: '',\n disabled: false,\n onChange: () => null,\n containerProps: {},\n value: undefined,\n currentPage: undefined,\n totalPages: 1,\n separator: '/',\n};\n\nexport { DSPageNumber, PageNumberWithSchema };\nexport default DSPageNumber;\n"],"names":["blockName","PageNumberInputContainer","aggregatedClasses","DSInputGroup","DSPageNumber","className","disabled","value","onChange","containerProps","currentPage","totalPages","separator","otherProps","safeTotal","cleanPage","ref","useRef","convertPropToCssClassName","cssClassName","classNameElement","useState","page","setPage","size","setSize","useEffect","current","getBoundingClientRect","width","calculatedWidth","lengthToSize","handleUpdateInput","e","newValue","target","handleIncrease","parseInt","handleDecrease","React","DSInput","DSButton","ChevronSmallUp","ChevronSmallDown","pageNumberProps","PropTypes","string","description","object","bool","defaultValue","oneOfType","number","func","propTypes","PageNumberWithSchema","describe","defaultProps","undefined"],"mappings":"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"}
1
+ {"version":3,"file":"DSPageNumber.js","sources":["../../src/DSPageNumber.tsx"],"sourcesContent":["/* eslint-disable max-lines */\nimport React, { useState, useRef, useEffect } from 'react';\nimport { describe, PropTypes } from 'react-desc';\nimport { aggregatedClasses, convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { ChevronSmallDown, ChevronSmallUp } from '@elliemae/ds-icons';\nimport DSButton from '@elliemae/ds-button';\nimport { DSInput, DSInputGroup } from '@elliemae/ds-form';\nimport { lengthToSize, cleanPage } from './components/utils';\n\nconst blockName = 'page-number-block';\nconst PageNumberInputContainer = aggregatedClasses(DSInputGroup)(blockName);\n\nconst DSPageNumber = ({\n className,\n disabled,\n value,\n onChange,\n containerProps,\n currentPage,\n totalPages,\n separator,\n ...otherProps\n}) => {\n const safeTotal = cleanPage(totalPages);\n const ref = useRef(null);\n const { cssClassName, classNameElement } = convertPropToCssClassName('page-number', className, {\n disabled,\n });\n const [page, setPage] = useState(cleanPage(currentPage) || 1);\n const [size, setSize] = useState(null);\n useEffect(() => {\n const { width } = ref.current.getBoundingClientRect();\n const calculatedWidth = lengthToSize(width, page);\n setSize(calculatedWidth);\n }, [page, safeTotal]);\n\n function handleUpdateInput(e) {\n const newValue = cleanPage(e.target.value);\n if (newValue > safeTotal || newValue === 0) return;\n setPage(newValue);\n onChange(newValue);\n }\n function handleIncrease() {\n const newValue = page ? parseInt(page, 10) + 1 : 1;\n if (newValue > safeTotal) return;\n setPage(newValue);\n onChange(newValue);\n }\n function handleDecrease() {\n const newValue = page ? parseInt(page, 10) - 1 : 1;\n if (newValue < 1) return;\n setPage(newValue);\n onChange(newValue);\n }\n\n return (\n <div data-testid=\"ds-page-number\" className={`${cssClassName}`} {...containerProps} {...otherProps}>\n <PageNumberInputContainer>\n <div className={`${classNameElement('pages')}`}>\n <DSInput\n className={`${classNameElement('input')}`}\n data-testid=\"page-number__current-page\"\n onChange={handleUpdateInput}\n style={{\n width: `${size}px`,\n }}\n value={page}\n />\n <div className={`${classNameElement('separator')}`}>{separator}</div>\n <div className={`${classNameElement('total')}`} data-testid=\"page-number__total-pages\">\n {totalPages}\n </div>\n <div ref={ref} className={`${classNameElement('ref')}`} />\n </div>\n <div className={`${classNameElement('limiter')}`} />\n <DSButton\n aria-label=\"dropdown-indicator\"\n buttonType=\"text\"\n className=\"dropdown-indicator\"\n data-testid=\"page-number__increase\"\n icon={<ChevronSmallUp />}\n onClick={handleIncrease}\n />\n <DSButton\n aria-label=\"dropdown-indicator\"\n buttonType=\"text\"\n className=\"dropdown-indicator\"\n data-testid=\"page-number__decrease\"\n icon={<ChevronSmallDown />}\n onClick={handleDecrease}\n />\n </PageNumberInputContainer>\n </div>\n );\n};\n\nconst pageNumberProps = {\n className: PropTypes.string.description('html class attribute'),\n containerProps: PropTypes.object.description('Set of Properties attached to the main container'),\n disabled: PropTypes.bool.description('Whether the component is disabled or not').defaultValue(false),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.object]).description('page number value'),\n onChange: PropTypes.func.description('function executed when the page number changes'),\n currentPage: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).description('Value of the current page'),\n totalPages: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).description('Amount of pages').defaultValue(1),\n separator: PropTypes.oneOfType([PropTypes.string, PropTypes.number])\n .description('Separator between current page and total pages')\n .defaultValue('/'),\n};\n\nDSPageNumber.propTypes = pageNumberProps;\n\nconst PageNumberWithSchema = describe(DSPageNumber);\nPageNumberWithSchema.propTypes = pageNumberProps;\n\nDSPageNumber.defaultProps = {\n className: '',\n disabled: false,\n onChange: () => null,\n containerProps: {},\n value: undefined,\n currentPage: undefined,\n totalPages: 1,\n separator: '/',\n};\n\nexport { DSPageNumber, PageNumberWithSchema };\nexport default DSPageNumber;\n"],"names":["blockName","PageNumberInputContainer","aggregatedClasses","DSInputGroup","DSPageNumber","className","disabled","value","onChange","containerProps","currentPage","totalPages","separator","otherProps","safeTotal","cleanPage","ref","useRef","convertPropToCssClassName","cssClassName","classNameElement","useState","page","setPage","size","setSize","useEffect","current","getBoundingClientRect","width","calculatedWidth","lengthToSize","handleUpdateInput","e","newValue","target","handleIncrease","parseInt","handleDecrease","React","DSInput","DSButton","ChevronSmallUp","ChevronSmallDown","pageNumberProps","PropTypes","string","description","object","bool","defaultValue","oneOfType","number","func","propTypes","PageNumberWithSchema","describe","defaultProps","undefined"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../src/components/utils.tsx"],"sourcesContent":["export const lengthToSize = (referenceWidth, value) =>\n referenceWidth + (referenceWidth / 7) * String(value).length;\n\nexport const cleanPage = value => {\n if (!value || value === '' || isNaN(parseInt(value))) return '';\n return parseInt(String(value || 1).replace(/\\D/g, ''), 10);\n};\n"],"names":["lengthToSize","referenceWidth","value","String","length","cleanPage","isNaN","parseInt","replace"],"mappings":";;;;IAAaA,YAAY,GAAG,SAAfA,YAAe,CAACC,cAAD,EAAiBC,KAAjB;AAAA,SAC1BD,cAAc,GAAIA,cAAc,GAAG,CAAlB,GAAuBE,MAAM,CAACD,KAAD,CAAN,CAAcE,MAD5B;AAAA;IAGfC,SAAS,GAAG,SAAZA,SAAY,CAAAH,KAAK,EAAI;AAChC,MAAI,CAACA,KAAD,IAAUA,KAAK,KAAK,EAApB,IAA0BI,KAAK,CAACC,QAAQ,CAACL,KAAD,CAAT,CAAnC,EAAsD,OAAO,EAAP;AACtD,SAAOK,QAAQ,CAACJ,MAAM,CAACD,KAAK,IAAI,CAAV,CAAN,CAAmBM,OAAnB,CAA2B,KAA3B,EAAkC,EAAlC,CAAD,EAAwC,EAAxC,CAAf;AACD;;;;;"}
1
+ {"version":3,"file":"utils.js","sources":["../../../src/components/utils.tsx"],"sourcesContent":["export const lengthToSize = (referenceWidth, value) =>\n referenceWidth + (referenceWidth / 7) * String(value).length;\n\nexport const cleanPage = value => {\n if (!value || value === '' || isNaN(parseInt(value))) return '';\n return parseInt(String(value || 1).replace(/\\D/g, ''), 10);\n};\n"],"names":["lengthToSize","referenceWidth","value","String","length","cleanPage","isNaN","parseInt","replace"],"mappings":";;;;IAAaA,YAAY,GAAG,SAAfA,YAAe,CAACC,cAAD,EAAiBC,KAAjB;EAAA,OAC1BD,cAAc,GAAIA,cAAc,GAAG,CAAlB,GAAuBE,MAAM,CAACD,KAAD,CAAN,CAAcE,MAD5B;AAAA;IAGfC,SAAS,GAAG,SAAZA,SAAY,CAAAH,KAAK,EAAI;EAChC,IAAI,CAACA,KAAD,IAAUA,KAAK,KAAK,EAApB,IAA0BI,KAAK,CAACC,QAAQ,CAACL,KAAD,CAAT,CAAnC,EAAsD,OAAO,EAAP;EACtD,OAAOK,QAAQ,CAACJ,MAAM,CAACD,KAAK,IAAI,CAAV,CAAN,CAAmBM,OAAnB,CAA2B,KAA3B,EAAkC,EAAlC,CAAD,EAAwC,EAAxC,CAAf;AACD;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"DSPageNumber.js","sources":["../../src/DSPageNumber.tsx"],"sourcesContent":["/* eslint-disable max-lines */\nimport React, { useState, useRef, useEffect } from 'react';\nimport { describe, PropTypes } from 'react-desc';\nimport { aggregatedClasses, convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { ChevronSmallDown, ChevronSmallUp } from '@elliemae/ds-icons';\nimport DSButton from '@elliemae/ds-button';\nimport { DSInput, DSInputGroup } from '@elliemae/ds-form';\nimport { lengthToSize, cleanPage } from './components/utils';\n\nconst blockName = 'page-number-block';\nconst PageNumberInputContainer = aggregatedClasses(DSInputGroup)(blockName);\n\nconst DSPageNumber = ({\n className,\n disabled,\n value,\n onChange,\n containerProps,\n currentPage,\n totalPages,\n separator,\n ...otherProps\n}) => {\n const safeTotal = cleanPage(totalPages);\n const ref = useRef(null);\n const { cssClassName, classNameElement } = convertPropToCssClassName('page-number', className, {\n disabled,\n });\n const [page, setPage] = useState(cleanPage(currentPage) || 1);\n const [size, setSize] = useState(null);\n useEffect(() => {\n const { width } = ref.current.getBoundingClientRect();\n const calculatedWidth = lengthToSize(width, page);\n setSize(calculatedWidth);\n }, [page, safeTotal]);\n\n function handleUpdateInput(e) {\n const newValue = cleanPage(e.target.value);\n if (newValue > safeTotal || newValue === 0) return;\n setPage(newValue);\n onChange(newValue);\n }\n function handleIncrease() {\n const newValue = page ? parseInt(page, 10) + 1 : 1;\n if (newValue > safeTotal) return;\n setPage(newValue);\n onChange(newValue);\n }\n function handleDecrease() {\n const newValue = page ? parseInt(page, 10) - 1 : 1;\n if (newValue < 1) return;\n setPage(newValue);\n onChange(newValue);\n }\n\n return (\n <div data-testid=\"ds-page-number\" className={`${cssClassName}`} {...containerProps} {...otherProps}>\n <PageNumberInputContainer>\n <div className={`${classNameElement('pages')}`}>\n <DSInput\n className={`${classNameElement('input')}`}\n data-testid=\"page-number__current-page\"\n onChange={handleUpdateInput}\n style={{\n width: `${size}px`,\n }}\n value={page}\n />\n <div className={`${classNameElement('separator')}`}>{separator}</div>\n <div className={`${classNameElement('total')}`} data-testid=\"page-number__total-pages\">\n {totalPages}\n </div>\n <div ref={ref} className={`${classNameElement('ref')}`} />\n </div>\n <div className={`${classNameElement('limiter')}`} />\n <DSButton\n aria-label=\"dropdown-indicator\"\n buttonType=\"text\"\n className=\"dropdown-indicator\"\n data-testid=\"page-number__increase\"\n icon={<ChevronSmallUp />}\n onClick={handleIncrease}\n />\n <DSButton\n aria-label=\"dropdown-indicator\"\n buttonType=\"text\"\n className=\"dropdown-indicator\"\n data-testid=\"page-number__decrease\"\n icon={<ChevronSmallDown />}\n onClick={handleDecrease}\n />\n </PageNumberInputContainer>\n </div>\n );\n};\n\nconst pageNumberProps = {\n className: PropTypes.string.description('html class attribute'),\n containerProps: PropTypes.object.description('Set of Properties attached to the main container'),\n disabled: PropTypes.bool.description('Whether the component is disabled or not').defaultValue(false),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.object]).description('page number value'),\n onChange: PropTypes.func.description('function executed when the page number changes'),\n currentPage: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).description('Value of the current page'),\n totalPages: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).description('Amount of pages').defaultValue(1),\n separator: PropTypes.oneOfType([PropTypes.string, PropTypes.number])\n .description('Separator between current page and total pages')\n .defaultValue('/'),\n};\n\nDSPageNumber.propTypes = pageNumberProps;\n\nconst PageNumberWithSchema = describe(DSPageNumber);\nPageNumberWithSchema.propTypes = pageNumberProps;\n\nDSPageNumber.defaultProps = {\n className: '',\n disabled: false,\n onChange: () => null,\n containerProps: {},\n value: undefined,\n currentPage: undefined,\n totalPages: 1,\n separator: '/',\n};\n\nexport { DSPageNumber, PageNumberWithSchema };\nexport default DSPageNumber;\n"],"names":["blockName","PageNumberInputContainer","aggregatedClasses","DSInputGroup","DSPageNumber","className","disabled","value","onChange","containerProps","currentPage","totalPages","separator","otherProps","safeTotal","cleanPage","ref","useRef","convertPropToCssClassName","cssClassName","classNameElement","useState","page","setPage","size","setSize","useEffect","current","getBoundingClientRect","width","calculatedWidth","lengthToSize","handleUpdateInput","e","newValue","target","handleIncrease","parseInt","handleDecrease","pageNumberProps","PropTypes","string","description","object","bool","defaultValue","oneOfType","number","func","propTypes","PageNumberWithSchema","describe","defaultProps","undefined"],"mappings":"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"}
1
+ {"version":3,"file":"DSPageNumber.js","sources":["../../src/DSPageNumber.tsx"],"sourcesContent":["/* eslint-disable max-lines */\nimport React, { useState, useRef, useEffect } from 'react';\nimport { describe, PropTypes } from 'react-desc';\nimport { aggregatedClasses, convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { ChevronSmallDown, ChevronSmallUp } from '@elliemae/ds-icons';\nimport DSButton from '@elliemae/ds-button';\nimport { DSInput, DSInputGroup } from '@elliemae/ds-form';\nimport { lengthToSize, cleanPage } from './components/utils';\n\nconst blockName = 'page-number-block';\nconst PageNumberInputContainer = aggregatedClasses(DSInputGroup)(blockName);\n\nconst DSPageNumber = ({\n className,\n disabled,\n value,\n onChange,\n containerProps,\n currentPage,\n totalPages,\n separator,\n ...otherProps\n}) => {\n const safeTotal = cleanPage(totalPages);\n const ref = useRef(null);\n const { cssClassName, classNameElement } = convertPropToCssClassName('page-number', className, {\n disabled,\n });\n const [page, setPage] = useState(cleanPage(currentPage) || 1);\n const [size, setSize] = useState(null);\n useEffect(() => {\n const { width } = ref.current.getBoundingClientRect();\n const calculatedWidth = lengthToSize(width, page);\n setSize(calculatedWidth);\n }, [page, safeTotal]);\n\n function handleUpdateInput(e) {\n const newValue = cleanPage(e.target.value);\n if (newValue > safeTotal || newValue === 0) return;\n setPage(newValue);\n onChange(newValue);\n }\n function handleIncrease() {\n const newValue = page ? parseInt(page, 10) + 1 : 1;\n if (newValue > safeTotal) return;\n setPage(newValue);\n onChange(newValue);\n }\n function handleDecrease() {\n const newValue = page ? parseInt(page, 10) - 1 : 1;\n if (newValue < 1) return;\n setPage(newValue);\n onChange(newValue);\n }\n\n return (\n <div data-testid=\"ds-page-number\" className={`${cssClassName}`} {...containerProps} {...otherProps}>\n <PageNumberInputContainer>\n <div className={`${classNameElement('pages')}`}>\n <DSInput\n className={`${classNameElement('input')}`}\n data-testid=\"page-number__current-page\"\n onChange={handleUpdateInput}\n style={{\n width: `${size}px`,\n }}\n value={page}\n />\n <div className={`${classNameElement('separator')}`}>{separator}</div>\n <div className={`${classNameElement('total')}`} data-testid=\"page-number__total-pages\">\n {totalPages}\n </div>\n <div ref={ref} className={`${classNameElement('ref')}`} />\n </div>\n <div className={`${classNameElement('limiter')}`} />\n <DSButton\n aria-label=\"dropdown-indicator\"\n buttonType=\"text\"\n className=\"dropdown-indicator\"\n data-testid=\"page-number__increase\"\n icon={<ChevronSmallUp />}\n onClick={handleIncrease}\n />\n <DSButton\n aria-label=\"dropdown-indicator\"\n buttonType=\"text\"\n className=\"dropdown-indicator\"\n data-testid=\"page-number__decrease\"\n icon={<ChevronSmallDown />}\n onClick={handleDecrease}\n />\n </PageNumberInputContainer>\n </div>\n );\n};\n\nconst pageNumberProps = {\n className: PropTypes.string.description('html class attribute'),\n containerProps: PropTypes.object.description('Set of Properties attached to the main container'),\n disabled: PropTypes.bool.description('Whether the component is disabled or not').defaultValue(false),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.object]).description('page number value'),\n onChange: PropTypes.func.description('function executed when the page number changes'),\n currentPage: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).description('Value of the current page'),\n totalPages: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).description('Amount of pages').defaultValue(1),\n separator: PropTypes.oneOfType([PropTypes.string, PropTypes.number])\n .description('Separator between current page and total pages')\n .defaultValue('/'),\n};\n\nDSPageNumber.propTypes = pageNumberProps;\n\nconst PageNumberWithSchema = describe(DSPageNumber);\nPageNumberWithSchema.propTypes = pageNumberProps;\n\nDSPageNumber.defaultProps = {\n className: '',\n disabled: false,\n onChange: () => null,\n containerProps: {},\n value: undefined,\n currentPage: undefined,\n totalPages: 1,\n separator: '/',\n};\n\nexport { DSPageNumber, PageNumberWithSchema };\nexport default DSPageNumber;\n"],"names":["blockName","PageNumberInputContainer","aggregatedClasses","DSInputGroup","DSPageNumber","className","disabled","value","onChange","containerProps","currentPage","totalPages","separator","otherProps","safeTotal","cleanPage","ref","useRef","convertPropToCssClassName","cssClassName","classNameElement","useState","page","setPage","size","setSize","useEffect","current","getBoundingClientRect","width","calculatedWidth","lengthToSize","handleUpdateInput","e","newValue","target","handleIncrease","parseInt","handleDecrease","pageNumberProps","PropTypes","string","description","object","bool","defaultValue","oneOfType","number","func","propTypes","PageNumberWithSchema","describe","defaultProps","undefined"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../src/components/utils.tsx"],"sourcesContent":["export const lengthToSize = (referenceWidth, value) =>\n referenceWidth + (referenceWidth / 7) * String(value).length;\n\nexport const cleanPage = value => {\n if (!value || value === '' || isNaN(parseInt(value))) return '';\n return parseInt(String(value || 1).replace(/\\D/g, ''), 10);\n};\n"],"names":["lengthToSize","referenceWidth","value","String","length","cleanPage","isNaN","parseInt","replace"],"mappings":"IAAaA,YAAY,GAAG,SAAfA,YAAe,CAACC,cAAD,EAAiBC,KAAjB;AAAA,SAC1BD,cAAc,GAAIA,cAAc,GAAG,CAAlB,GAAuBE,MAAM,CAACD,KAAD,CAAN,CAAcE,MAD5B;AAAA;IAGfC,SAAS,GAAG,SAAZA,SAAY,CAAAH,KAAK,EAAI;AAChC,MAAI,CAACA,KAAD,IAAUA,KAAK,KAAK,EAApB,IAA0BI,KAAK,CAACC,QAAQ,CAACL,KAAD,CAAT,CAAnC,EAAsD,OAAO,EAAP;AACtD,SAAOK,QAAQ,CAACJ,MAAM,CAACD,KAAK,IAAI,CAAV,CAAN,CAAmBM,OAAnB,CAA2B,KAA3B,EAAkC,EAAlC,CAAD,EAAwC,EAAxC,CAAf;AACD;;;;"}
1
+ {"version":3,"file":"utils.js","sources":["../../../src/components/utils.tsx"],"sourcesContent":["export const lengthToSize = (referenceWidth, value) =>\n referenceWidth + (referenceWidth / 7) * String(value).length;\n\nexport const cleanPage = value => {\n if (!value || value === '' || isNaN(parseInt(value))) return '';\n return parseInt(String(value || 1).replace(/\\D/g, ''), 10);\n};\n"],"names":["lengthToSize","referenceWidth","value","String","length","cleanPage","isNaN","parseInt","replace"],"mappings":"IAAaA,YAAY,GAAG,SAAfA,YAAe,CAACC,cAAD,EAAiBC,KAAjB;EAAA,OAC1BD,cAAc,GAAIA,cAAc,GAAG,CAAlB,GAAuBE,MAAM,CAACD,KAAD,CAAN,CAAcE,MAD5B;AAAA;IAGfC,SAAS,GAAG,SAAZA,SAAY,CAAAH,KAAK,EAAI;EAChC,IAAI,CAACA,KAAD,IAAUA,KAAK,KAAK,EAApB,IAA0BI,KAAK,CAACC,QAAQ,CAACL,KAAD,CAAT,CAAnC,EAAsD,OAAO,EAAP;EACtD,OAAOK,QAAQ,CAACJ,MAAM,CAACD,KAAK,IAAI,CAAV,CAAN,CAAmBM,OAAnB,CAA2B,KAA3B,EAAkC,EAAlC,CAAD,EAAwC,EAAxC,CAAf;AACD;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliemae/ds-page-number",
3
- "version": "1.61.12",
3
+ "version": "1.61.13",
4
4
  "license": "MIT",
5
5
  "description": "Ellie Mae - Dim Sum - Page Number",
6
6
  "module": "esm/index.js",
@@ -16,10 +16,10 @@
16
16
  "build": "node ../../scripts/build/build.js"
17
17
  },
18
18
  "dependencies": {
19
- "@elliemae/ds-button": "1.61.12",
20
- "@elliemae/ds-classnames": "1.61.12",
21
- "@elliemae/ds-form": "1.61.12",
22
- "@elliemae/ds-icons": "1.61.12",
19
+ "@elliemae/ds-button": "1.61.13",
20
+ "@elliemae/ds-classnames": "1.61.13",
21
+ "@elliemae/ds-form": "1.61.13",
22
+ "@elliemae/ds-icons": "1.61.13",
23
23
  "react-desc": "^4.1.2"
24
24
  },
25
25
  "devDependencies": {