@elliemae/ds-pagination 3.57.0-next.5 → 3.57.0-next.51

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.
Files changed (392) hide show
  1. package/dist/cjs/{Pagination.js → DSPagination.js} +8 -8
  2. package/dist/cjs/DSPagination.js.map +7 -0
  3. package/dist/cjs/config/usePagination.js +51 -0
  4. package/dist/cjs/config/usePagination.js.map +7 -0
  5. package/dist/cjs/{PaginationDataTestID.js → config/useValidateProps.js} +9 -13
  6. package/dist/cjs/config/useValidateProps.js.map +7 -0
  7. package/dist/cjs/{DSPaginationDefinitions.js → constants/index.js} +22 -19
  8. package/dist/cjs/constants/index.js.map +7 -0
  9. package/dist/cjs/index.js +29 -18
  10. package/dist/cjs/index.js.map +3 -3
  11. package/dist/cjs/package.json +4 -1
  12. package/dist/cjs/parts/{DSPageNextButton.js → DSPageNextButton/DSPageNextButton.js} +46 -18
  13. package/dist/cjs/parts/DSPageNextButton/DSPageNextButton.js.map +7 -0
  14. package/dist/cjs/parts/DSPageNextButton/config/usePageNextButton.js +55 -0
  15. package/dist/cjs/parts/DSPageNextButton/config/usePageNextButton.js.map +7 -0
  16. package/dist/cjs/parts/DSPageNextButton/config/useValidateProps.js +40 -0
  17. package/dist/cjs/parts/DSPageNextButton/config/useValidateProps.js.map +7 -0
  18. package/dist/cjs/parts/DSPageNextButton/constants/index.js +48 -0
  19. package/dist/cjs/parts/DSPageNextButton/constants/index.js.map +7 -0
  20. package/dist/cjs/parts/DSPageNextButton/index.js +41 -0
  21. package/dist/cjs/parts/DSPageNextButton/index.js.map +7 -0
  22. package/dist/cjs/parts/DSPageNextButton/react-desc-prop-types.js +51 -0
  23. package/dist/cjs/parts/DSPageNextButton/react-desc-prop-types.js.map +7 -0
  24. package/dist/cjs/parts/DSPageNextButton/typescript-testing/slot-props.js +32 -0
  25. package/dist/cjs/parts/DSPageNextButton/typescript-testing/slot-props.js.map +7 -0
  26. package/dist/cjs/{typescript-testing/typescript-page-next-button-valid.js → parts/DSPageNextButton/typescript-testing/typescript-testing.js} +1 -1
  27. package/dist/cjs/parts/DSPageNextButton/typescript-testing/typescript-testing.js.map +7 -0
  28. package/dist/cjs/parts/{DSPagePrevButton.js → DSPagePrevButton/DSPagePrevButton.js} +46 -18
  29. package/dist/cjs/parts/DSPagePrevButton/DSPagePrevButton.js.map +7 -0
  30. package/dist/cjs/parts/DSPagePrevButton/config/usePagePrevButton.js +55 -0
  31. package/dist/cjs/parts/DSPagePrevButton/config/usePagePrevButton.js.map +7 -0
  32. package/dist/cjs/parts/DSPagePrevButton/config/useValidateProps.js +40 -0
  33. package/dist/cjs/parts/DSPagePrevButton/config/useValidateProps.js.map +7 -0
  34. package/dist/cjs/parts/DSPagePrevButton/constants/index.js +48 -0
  35. package/dist/cjs/parts/DSPagePrevButton/constants/index.js.map +7 -0
  36. package/dist/cjs/parts/DSPagePrevButton/index.js +41 -0
  37. package/dist/cjs/parts/DSPagePrevButton/index.js.map +7 -0
  38. package/dist/cjs/parts/DSPagePrevButton/react-desc-prop-types.js +51 -0
  39. package/dist/cjs/parts/DSPagePrevButton/react-desc-prop-types.js.map +7 -0
  40. package/dist/cjs/parts/DSPagePrevButton/typescript-testing/slot-props.js +32 -0
  41. package/dist/cjs/parts/DSPagePrevButton/typescript-testing/slot-props.js.map +7 -0
  42. package/dist/cjs/{typescript-testing/typescript-page-prev-button-valid.js → parts/DSPagePrevButton/typescript-testing/typescript-testing.js} +1 -1
  43. package/dist/cjs/parts/DSPagePrevButton/typescript-testing/typescript-testing.js.map +7 -0
  44. package/dist/cjs/parts/{DSPaginationContainer.js → DSPaginationContainer/DSPaginationContainer.js} +26 -12
  45. package/dist/cjs/parts/DSPaginationContainer/DSPaginationContainer.js.map +7 -0
  46. package/dist/cjs/parts/DSPaginationContainer/config/usePaginationContainer.js +60 -0
  47. package/dist/cjs/parts/DSPaginationContainer/config/usePaginationContainer.js.map +7 -0
  48. package/dist/cjs/parts/DSPaginationContainer/config/useValidateProps.js +40 -0
  49. package/dist/cjs/parts/DSPaginationContainer/config/useValidateProps.js.map +7 -0
  50. package/dist/cjs/parts/DSPaginationContainer/constants/index.js +50 -0
  51. package/dist/cjs/parts/DSPaginationContainer/constants/index.js.map +7 -0
  52. package/dist/cjs/parts/DSPaginationContainer/index.js +41 -0
  53. package/dist/cjs/parts/DSPaginationContainer/index.js.map +7 -0
  54. package/dist/cjs/parts/DSPaginationContainer/react-desc-prop-types.js +48 -0
  55. package/dist/cjs/parts/DSPaginationContainer/react-desc-prop-types.js.map +7 -0
  56. package/dist/cjs/parts/DSPaginationContainer/typescript-testing/slot-props.js +34 -0
  57. package/dist/cjs/parts/DSPaginationContainer/typescript-testing/slot-props.js.map +7 -0
  58. package/dist/cjs/parts/DSPaginationSeparator/DSPaginationSeparator.js +68 -0
  59. package/dist/cjs/parts/DSPaginationSeparator/DSPaginationSeparator.js.map +7 -0
  60. package/dist/cjs/parts/DSPaginationSeparator/config/usePaginationSeparator.js +60 -0
  61. package/dist/cjs/parts/DSPaginationSeparator/config/usePaginationSeparator.js.map +7 -0
  62. package/dist/cjs/parts/DSPaginationSeparator/config/useValidateProps.js +40 -0
  63. package/dist/cjs/parts/DSPaginationSeparator/config/useValidateProps.js.map +7 -0
  64. package/dist/cjs/parts/DSPaginationSeparator/constants/index.js +45 -0
  65. package/dist/cjs/parts/DSPaginationSeparator/constants/index.js.map +7 -0
  66. package/dist/cjs/parts/DSPaginationSeparator/index.js +41 -0
  67. package/dist/cjs/parts/DSPaginationSeparator/index.js.map +7 -0
  68. package/dist/cjs/parts/DSPaginationSeparator/react-desc-prop-types.js +46 -0
  69. package/dist/cjs/parts/DSPaginationSeparator/react-desc-prop-types.js.map +7 -0
  70. package/dist/cjs/parts/DSPaginator/DSPaginator.js +212 -0
  71. package/dist/cjs/parts/DSPaginator/DSPaginator.js.map +7 -0
  72. package/dist/cjs/parts/DSPaginator/{createPaginatorHeader.js → config/createPaginatorHeader.js} +11 -6
  73. package/dist/cjs/parts/DSPaginator/config/createPaginatorHeader.js.map +7 -0
  74. package/dist/cjs/parts/DSPaginator/{getOptions.js → config/getOptions.js} +4 -4
  75. package/dist/cjs/parts/DSPaginator/config/getOptions.js.map +7 -0
  76. package/dist/cjs/parts/DSPaginator/{usePaginationSearch.js.map → config/usePaginationSearch.js.map} +1 -1
  77. package/dist/cjs/parts/DSPaginator/{usePaginator.js → config/usePaginator.js} +62 -38
  78. package/dist/cjs/parts/DSPaginator/config/usePaginator.js.map +7 -0
  79. package/dist/cjs/parts/DSPaginator/config/useValidateProps.js +40 -0
  80. package/dist/cjs/parts/DSPaginator/config/useValidateProps.js.map +7 -0
  81. package/dist/cjs/parts/DSPaginator/constants/index.js +45 -0
  82. package/dist/cjs/parts/DSPaginator/constants/index.js.map +7 -0
  83. package/dist/cjs/parts/DSPaginator/index.js +7 -112
  84. package/dist/cjs/parts/DSPaginator/index.js.map +3 -3
  85. package/dist/cjs/parts/DSPaginator/react-desc-prop-types.js +59 -0
  86. package/dist/cjs/parts/DSPaginator/react-desc-prop-types.js.map +7 -0
  87. package/dist/cjs/parts/DSPaginator/styled.js +135 -0
  88. package/dist/cjs/parts/DSPaginator/styled.js.map +7 -0
  89. package/dist/cjs/parts/DSPaginator/typescript-testing/slot-props.js +32 -0
  90. package/dist/cjs/parts/DSPaginator/typescript-testing/slot-props.js.map +7 -0
  91. package/dist/cjs/{typescript-testing/typescript-paginator-valid.js → parts/DSPaginator/typescript-testing/typescript-testing.js} +1 -1
  92. package/dist/cjs/parts/DSPaginator/typescript-testing/typescript-testing.js.map +7 -0
  93. package/dist/cjs/parts/DSPerPageSelector/DSPerPageSelector.js +125 -0
  94. package/dist/cjs/parts/DSPerPageSelector/DSPerPageSelector.js.map +7 -0
  95. package/dist/cjs/parts/DSPerPageSelector/{getOptions.js.map → config/getOptions.js.map} +1 -1
  96. package/dist/cjs/parts/DSPerPageSelector/{usePerPageSelector.js → config/usePerPageSelector.js} +29 -19
  97. package/dist/cjs/parts/DSPerPageSelector/config/usePerPageSelector.js.map +7 -0
  98. package/dist/cjs/parts/DSPerPageSelector/config/useValidateProps.js +40 -0
  99. package/dist/cjs/parts/DSPerPageSelector/config/useValidateProps.js.map +7 -0
  100. package/dist/cjs/parts/DSPerPageSelector/constants/index.js +50 -0
  101. package/dist/cjs/parts/DSPerPageSelector/constants/index.js.map +7 -0
  102. package/dist/cjs/parts/DSPerPageSelector/index.js +7 -70
  103. package/dist/cjs/parts/DSPerPageSelector/index.js.map +3 -3
  104. package/dist/cjs/parts/DSPerPageSelector/react-desc-prop-types.js +58 -0
  105. package/dist/cjs/parts/DSPerPageSelector/react-desc-prop-types.js.map +7 -0
  106. package/dist/cjs/{styled.js → parts/DSPerPageSelector/styled.js} +36 -41
  107. package/dist/cjs/parts/DSPerPageSelector/styled.js.map +7 -0
  108. package/dist/cjs/parts/DSPerPageSelector/typescript-testing/slots-props.js +32 -0
  109. package/dist/cjs/parts/DSPerPageSelector/typescript-testing/slots-props.js.map +7 -0
  110. package/dist/cjs/{typescript-testing/typescript-per-page-selector-valid.js → parts/DSPerPageSelector/typescript-testing/typescript-testing.js} +1 -1
  111. package/dist/cjs/parts/DSPerPageSelector/typescript-testing/typescript-testing.js.map +7 -0
  112. package/dist/cjs/parts/PaginationContent.js +7 -9
  113. package/dist/cjs/parts/PaginationContent.js.map +2 -2
  114. package/dist/cjs/parts/index.js +25 -4
  115. package/dist/cjs/parts/index.js.map +2 -2
  116. package/dist/cjs/parts/{DSPaginator → shared}/useOnElementOnResize.js.map +1 -1
  117. package/dist/cjs/react-desc-prop-types.js +1 -86
  118. package/dist/cjs/react-desc-prop-types.js.map +2 -2
  119. package/dist/esm/{Pagination.js → DSPagination.js} +6 -6
  120. package/dist/esm/DSPagination.js.map +7 -0
  121. package/dist/esm/config/usePagination.js +21 -0
  122. package/dist/esm/config/usePagination.js.map +7 -0
  123. package/dist/esm/config/useValidateProps.js +10 -0
  124. package/dist/esm/config/useValidateProps.js.map +7 -0
  125. package/dist/esm/constants/index.js +27 -0
  126. package/dist/esm/constants/index.js.map +7 -0
  127. package/dist/esm/index.js +45 -13
  128. package/dist/esm/index.js.map +3 -3
  129. package/dist/esm/package.json +4 -1
  130. package/dist/esm/parts/DSPageNextButton/DSPageNextButton.js +74 -0
  131. package/dist/esm/parts/DSPageNextButton/DSPageNextButton.js.map +7 -0
  132. package/dist/esm/parts/DSPageNextButton/config/usePageNextButton.js +30 -0
  133. package/dist/esm/parts/DSPageNextButton/config/usePageNextButton.js.map +7 -0
  134. package/dist/esm/parts/DSPageNextButton/config/useValidateProps.js +10 -0
  135. package/dist/esm/parts/DSPageNextButton/config/useValidateProps.js.map +7 -0
  136. package/dist/esm/parts/DSPageNextButton/constants/index.js +18 -0
  137. package/dist/esm/parts/DSPageNextButton/constants/index.js.map +7 -0
  138. package/dist/esm/parts/DSPageNextButton/index.js +11 -0
  139. package/dist/esm/parts/DSPageNextButton/index.js.map +7 -0
  140. package/dist/esm/parts/DSPageNextButton/react-desc-prop-types.js +26 -0
  141. package/dist/esm/parts/DSPageNextButton/react-desc-prop-types.js.map +7 -0
  142. package/dist/esm/parts/DSPageNextButton/typescript-testing/slot-props.js +9 -0
  143. package/dist/esm/parts/DSPageNextButton/typescript-testing/slot-props.js.map +7 -0
  144. package/dist/esm/{typescript-testing/typescript-page-next-button-valid.js → parts/DSPageNextButton/typescript-testing/typescript-testing.js} +1 -1
  145. package/dist/esm/parts/DSPageNextButton/typescript-testing/typescript-testing.js.map +7 -0
  146. package/dist/esm/parts/DSPagePrevButton/DSPagePrevButton.js +74 -0
  147. package/dist/esm/parts/DSPagePrevButton/DSPagePrevButton.js.map +7 -0
  148. package/dist/esm/parts/DSPagePrevButton/config/usePagePrevButton.js +30 -0
  149. package/dist/esm/parts/DSPagePrevButton/config/usePagePrevButton.js.map +7 -0
  150. package/dist/esm/parts/DSPagePrevButton/config/useValidateProps.js +10 -0
  151. package/dist/esm/parts/DSPagePrevButton/config/useValidateProps.js.map +7 -0
  152. package/dist/esm/parts/DSPagePrevButton/constants/index.js +18 -0
  153. package/dist/esm/parts/DSPagePrevButton/constants/index.js.map +7 -0
  154. package/dist/esm/parts/DSPagePrevButton/index.js +11 -0
  155. package/dist/esm/parts/DSPagePrevButton/index.js.map +7 -0
  156. package/dist/esm/parts/DSPagePrevButton/react-desc-prop-types.js +26 -0
  157. package/dist/esm/parts/DSPagePrevButton/react-desc-prop-types.js.map +7 -0
  158. package/dist/esm/parts/DSPagePrevButton/typescript-testing/slot-props.js +9 -0
  159. package/dist/esm/parts/DSPagePrevButton/typescript-testing/slot-props.js.map +7 -0
  160. package/dist/esm/{typescript-testing/typescript-page-prev-button-valid.js → parts/DSPagePrevButton/typescript-testing/typescript-testing.js} +1 -1
  161. package/dist/esm/parts/DSPagePrevButton/typescript-testing/typescript-testing.js.map +7 -0
  162. package/dist/esm/parts/DSPaginationContainer/DSPaginationContainer.js +50 -0
  163. package/dist/esm/parts/DSPaginationContainer/DSPaginationContainer.js.map +7 -0
  164. package/dist/esm/parts/DSPaginationContainer/config/usePaginationContainer.js +38 -0
  165. package/dist/esm/parts/DSPaginationContainer/config/usePaginationContainer.js.map +7 -0
  166. package/dist/esm/parts/DSPaginationContainer/config/useValidateProps.js +10 -0
  167. package/dist/esm/parts/DSPaginationContainer/config/useValidateProps.js.map +7 -0
  168. package/dist/esm/parts/DSPaginationContainer/constants/index.js +20 -0
  169. package/dist/esm/parts/DSPaginationContainer/constants/index.js.map +7 -0
  170. package/dist/esm/parts/DSPaginationContainer/index.js +15 -0
  171. package/dist/esm/parts/DSPaginationContainer/index.js.map +7 -0
  172. package/dist/esm/parts/DSPaginationContainer/react-desc-prop-types.js +18 -0
  173. package/dist/esm/parts/DSPaginationContainer/react-desc-prop-types.js.map +7 -0
  174. package/dist/esm/parts/DSPaginationContainer/typescript-testing/slot-props.js +11 -0
  175. package/dist/esm/parts/DSPaginationContainer/typescript-testing/slot-props.js.map +7 -0
  176. package/dist/esm/parts/DSPaginationSeparator/DSPaginationSeparator.js +43 -0
  177. package/dist/esm/parts/DSPaginationSeparator/DSPaginationSeparator.js.map +7 -0
  178. package/dist/esm/parts/DSPaginationSeparator/config/usePaginationSeparator.js +38 -0
  179. package/dist/esm/parts/DSPaginationSeparator/config/usePaginationSeparator.js.map +7 -0
  180. package/dist/esm/parts/DSPaginationSeparator/config/useValidateProps.js +10 -0
  181. package/dist/esm/parts/DSPaginationSeparator/config/useValidateProps.js.map +7 -0
  182. package/dist/esm/parts/DSPaginationSeparator/constants/index.js +15 -0
  183. package/dist/esm/parts/DSPaginationSeparator/constants/index.js.map +7 -0
  184. package/dist/esm/parts/DSPaginationSeparator/index.js +15 -0
  185. package/dist/esm/parts/DSPaginationSeparator/index.js.map +7 -0
  186. package/dist/esm/parts/DSPaginationSeparator/react-desc-prop-types.js +16 -0
  187. package/dist/esm/parts/DSPaginationSeparator/react-desc-prop-types.js.map +7 -0
  188. package/dist/esm/parts/DSPaginator/DSPaginator.js +182 -0
  189. package/dist/esm/parts/DSPaginator/DSPaginator.js.map +7 -0
  190. package/dist/esm/parts/DSPaginator/config/createPaginatorHeader.js +24 -0
  191. package/dist/esm/parts/DSPaginator/config/createPaginatorHeader.js.map +7 -0
  192. package/dist/esm/parts/DSPaginator/{getOptions.js → config/getOptions.js} +4 -4
  193. package/dist/esm/parts/DSPaginator/config/getOptions.js.map +7 -0
  194. package/dist/esm/parts/DSPaginator/{usePaginationSearch.js.map → config/usePaginationSearch.js.map} +1 -1
  195. package/dist/esm/parts/DSPaginator/config/usePaginator.js +88 -0
  196. package/dist/esm/parts/DSPaginator/config/usePaginator.js.map +7 -0
  197. package/dist/esm/parts/DSPaginator/config/useValidateProps.js +10 -0
  198. package/dist/esm/parts/DSPaginator/config/useValidateProps.js.map +7 -0
  199. package/dist/esm/parts/DSPaginator/constants/index.js +15 -0
  200. package/dist/esm/parts/DSPaginator/constants/index.js.map +7 -0
  201. package/dist/esm/parts/DSPaginator/index.js +6 -111
  202. package/dist/esm/parts/DSPaginator/index.js.map +3 -3
  203. package/dist/esm/parts/DSPaginator/react-desc-prop-types.js +34 -0
  204. package/dist/esm/parts/DSPaginator/react-desc-prop-types.js.map +7 -0
  205. package/dist/esm/parts/DSPaginator/styled.js +105 -0
  206. package/dist/esm/parts/DSPaginator/styled.js.map +7 -0
  207. package/dist/esm/parts/DSPaginator/typescript-testing/slot-props.js +9 -0
  208. package/dist/esm/parts/DSPaginator/typescript-testing/slot-props.js.map +7 -0
  209. package/dist/esm/{typescript-testing/typescript-paginator-valid.js → parts/DSPaginator/typescript-testing/typescript-testing.js} +1 -1
  210. package/dist/esm/parts/DSPaginator/typescript-testing/typescript-testing.js.map +7 -0
  211. package/dist/esm/parts/DSPerPageSelector/DSPerPageSelector.js +95 -0
  212. package/dist/esm/parts/DSPerPageSelector/DSPerPageSelector.js.map +7 -0
  213. package/dist/esm/parts/DSPerPageSelector/{getOptions.js.map → config/getOptions.js.map} +1 -1
  214. package/dist/esm/parts/DSPerPageSelector/config/usePerPageSelector.js +55 -0
  215. package/dist/esm/parts/DSPerPageSelector/config/usePerPageSelector.js.map +7 -0
  216. package/dist/esm/parts/DSPerPageSelector/config/useValidateProps.js +10 -0
  217. package/dist/esm/parts/DSPerPageSelector/config/useValidateProps.js.map +7 -0
  218. package/dist/esm/parts/DSPerPageSelector/constants/index.js +20 -0
  219. package/dist/esm/parts/DSPerPageSelector/constants/index.js.map +7 -0
  220. package/dist/esm/parts/DSPerPageSelector/index.js +6 -69
  221. package/dist/esm/parts/DSPerPageSelector/index.js.map +3 -3
  222. package/dist/esm/parts/DSPerPageSelector/react-desc-prop-types.js +33 -0
  223. package/dist/esm/parts/DSPerPageSelector/react-desc-prop-types.js.map +7 -0
  224. package/dist/esm/parts/DSPerPageSelector/styled.js +87 -0
  225. package/dist/esm/parts/DSPerPageSelector/styled.js.map +7 -0
  226. package/dist/esm/parts/DSPerPageSelector/typescript-testing/slots-props.js +9 -0
  227. package/dist/esm/parts/DSPerPageSelector/typescript-testing/slots-props.js.map +7 -0
  228. package/dist/esm/{typescript-testing/typescript-per-page-selector-valid.js → parts/DSPerPageSelector/typescript-testing/typescript-testing.js} +1 -1
  229. package/dist/esm/parts/DSPerPageSelector/typescript-testing/typescript-testing.js.map +7 -0
  230. package/dist/esm/parts/PaginationContent.js +7 -9
  231. package/dist/esm/parts/PaginationContent.js.map +2 -2
  232. package/dist/esm/parts/index.js +63 -6
  233. package/dist/esm/parts/index.js.map +2 -2
  234. package/dist/esm/parts/{DSPaginator → shared}/useOnElementOnResize.js.map +1 -1
  235. package/dist/esm/react-desc-prop-types.js +1 -86
  236. package/dist/esm/react-desc-prop-types.js.map +2 -2
  237. package/dist/types/config/usePagination.d.ts +5 -0
  238. package/dist/types/config/useValidateProps.d.ts +3 -0
  239. package/dist/types/constants/index.d.ts +29 -0
  240. package/dist/types/index.d.ts +3 -7
  241. package/dist/types/parts/DSPageNextButton/DSPageNextButton.d.ts +5 -0
  242. package/dist/types/parts/DSPageNextButton/config/usePageNextButton.d.ts +377 -0
  243. package/dist/types/parts/DSPageNextButton/config/useValidateProps.d.ts +3 -0
  244. package/dist/types/parts/DSPageNextButton/constants/index.d.ts +9 -0
  245. package/dist/types/parts/DSPageNextButton/index.d.ts +3 -0
  246. package/dist/types/parts/DSPageNextButton/react-desc-prop-types.d.ts +23 -0
  247. package/dist/types/parts/DSPageNextButton/tests/DSPageNextButton.get-owner-props.test.d.ts +1 -0
  248. package/dist/types/parts/DSPageNextButton/tests/DSPageNextButton.keyboard.test.d.ts +1 -0
  249. package/dist/types/parts/DSPageNextButton/tests/utils/NextButtonTestRender.d.ts +2 -0
  250. package/dist/types/parts/DSPageNextButton/typescript-testing/slot-props.d.ts +1 -0
  251. package/dist/types/parts/DSPageNextButton/typescript-testing/typescript-testing.d.ts +1 -0
  252. package/dist/types/parts/DSPagePrevButton/DSPagePrevButton.d.ts +5 -0
  253. package/dist/types/parts/DSPagePrevButton/config/usePagePrevButton.d.ts +377 -0
  254. package/dist/types/parts/DSPagePrevButton/config/useValidateProps.d.ts +3 -0
  255. package/dist/types/parts/DSPagePrevButton/constants/index.d.ts +9 -0
  256. package/dist/types/parts/DSPagePrevButton/index.d.ts +3 -0
  257. package/dist/types/parts/DSPagePrevButton/react-desc-prop-types.d.ts +23 -0
  258. package/dist/types/parts/DSPagePrevButton/tests/DSPagePrevButton.a11y.test.d.ts +1 -0
  259. package/dist/types/parts/DSPagePrevButton/tests/DSPagePrevButton.callbacks.test.d.ts +1 -0
  260. package/dist/types/parts/DSPagePrevButton/tests/DSPagePrevButton.data-testid.test.d.ts +1 -0
  261. package/dist/types/parts/DSPagePrevButton/tests/DSPagePrevButton.export.test.d.ts +1 -0
  262. package/dist/types/parts/DSPagePrevButton/tests/DSPagePrevButton.get-owner-props.test.d.ts +1 -0
  263. package/dist/types/parts/DSPagePrevButton/tests/DSPagePrevButton.keyboard.test.d.ts +1 -0
  264. package/dist/types/parts/DSPagePrevButton/tests/utils/PrevButtonTestRender.d.ts +1 -0
  265. package/dist/types/parts/DSPagePrevButton/typescript-testing/slot-props.d.ts +1 -0
  266. package/dist/types/parts/DSPagePrevButton/typescript-testing/typescript-testing.d.ts +1 -0
  267. package/dist/types/parts/DSPaginationContainer/DSPaginationContainer.d.ts +5 -0
  268. package/dist/types/parts/DSPaginationContainer/config/usePaginationContainer.d.ts +377 -0
  269. package/dist/types/parts/DSPaginationContainer/config/useValidateProps.d.ts +3 -0
  270. package/dist/types/parts/DSPaginationContainer/constants/index.d.ts +11 -0
  271. package/dist/types/parts/DSPaginationContainer/index.d.ts +3 -0
  272. package/dist/types/parts/DSPaginationContainer/react-desc-prop-types.d.ts +22 -0
  273. package/dist/types/parts/DSPaginationContainer/tests/DSPaginationContainer.data-testid.test.d.ts +1 -0
  274. package/dist/types/parts/DSPaginationContainer/tests/DSPaginationContainer.exports.test.d.ts +1 -0
  275. package/dist/types/parts/DSPaginationContainer/tests/DSPaginationContainer.get-owner-props.test.d.ts +1 -0
  276. package/dist/types/parts/DSPaginationContainer/tests/utils/PaginationContainerRender.d.ts +1 -0
  277. package/dist/types/parts/DSPaginationContainer/typescript-testing/slot-props.d.ts +1 -0
  278. package/dist/types/parts/DSPaginationSeparator/DSPaginationSeparator.d.ts +7 -0
  279. package/dist/types/parts/DSPaginationSeparator/config/usePaginationSeparator.d.ts +377 -0
  280. package/dist/types/parts/DSPaginationSeparator/config/useValidateProps.d.ts +3 -0
  281. package/dist/types/parts/DSPaginationSeparator/constants/index.d.ts +9 -0
  282. package/dist/types/parts/DSPaginationSeparator/index.d.ts +3 -0
  283. package/dist/types/parts/DSPaginationSeparator/react-desc-prop-types.d.ts +18 -0
  284. package/dist/types/parts/DSPaginationSeparator/tests/DSPaginationSeparator.data-testid.test.d.ts +1 -0
  285. package/dist/types/parts/DSPaginationSeparator/tests/DSPaginationSeparator.exports.test.d.ts +1 -0
  286. package/dist/types/parts/DSPaginationSeparator/tests/DSPaginationSeparator.get-owner-props.test.d.ts +1 -0
  287. package/dist/types/parts/DSPaginationSeparator/tests/utils/DSPaginationSeparatorTestRender.d.ts +1 -0
  288. package/dist/types/parts/DSPaginator/DSPaginator.d.ts +5 -0
  289. package/dist/types/parts/DSPaginator/config/createPaginatorHeader.d.ts +8 -0
  290. package/dist/types/parts/DSPaginator/{getOptions.d.ts → config/getOptions.d.ts} +1 -0
  291. package/dist/types/parts/DSPaginator/config/usePaginator.d.ts +390 -0
  292. package/dist/types/parts/DSPaginator/config/useValidateProps.d.ts +3 -0
  293. package/dist/types/parts/DSPaginator/constants/index.d.ts +9 -0
  294. package/dist/types/parts/DSPaginator/index.d.ts +3 -4
  295. package/dist/types/parts/DSPaginator/react-desc-prop-types.d.ts +27 -0
  296. package/dist/types/parts/DSPaginator/styled.d.ts +5 -0
  297. package/dist/types/parts/DSPaginator/tests/DSPaginator.a11y.test.d.ts +1 -0
  298. package/dist/types/parts/DSPaginator/tests/DSPaginator.data-testid.test.d.ts +1 -0
  299. package/dist/types/parts/DSPaginator/tests/DSPaginator.exports.test.d.ts +1 -0
  300. package/dist/types/parts/DSPaginator/tests/DSPaginator.get-owner-props.test.d.ts +1 -0
  301. package/dist/types/parts/DSPaginator/tests/DSPaginator.keyboard.test.d.ts +1 -0
  302. package/dist/types/parts/DSPaginator/tests/utils/DSPaginatorTestRender.d.ts +1 -0
  303. package/dist/types/parts/DSPaginator/typescript-testing/slot-props.d.ts +1 -0
  304. package/dist/types/parts/DSPaginator/typescript-testing/typescript-testing.d.ts +1 -0
  305. package/dist/types/parts/DSPerPageSelector/DSPerPageSelector.d.ts +5 -0
  306. package/dist/types/parts/DSPerPageSelector/config/usePerPageSelector.d.ts +384 -0
  307. package/dist/types/parts/DSPerPageSelector/config/useValidateProps.d.ts +3 -0
  308. package/dist/types/parts/DSPerPageSelector/constants/index.d.ts +13 -0
  309. package/dist/types/parts/DSPerPageSelector/index.d.ts +3 -4
  310. package/dist/types/parts/DSPerPageSelector/react-desc-prop-types.d.ts +28 -0
  311. package/dist/types/parts/DSPerPageSelector/styled.d.ts +3 -0
  312. package/dist/types/parts/DSPerPageSelector/tests/DSPerPageSelector.a11y.test.d.ts +1 -0
  313. package/dist/types/parts/DSPerPageSelector/tests/DSPerPageSelector.data-testid.test.d.ts +1 -0
  314. package/dist/types/parts/DSPerPageSelector/tests/DSPerPageSelector.exports.test.d.ts +1 -0
  315. package/dist/types/parts/DSPerPageSelector/tests/DSPerPageSelector.get-owner-props.test.d.ts +1 -0
  316. package/dist/types/parts/DSPerPageSelector/tests/DSPerPageSelector.keyboard.test.d.ts +1 -0
  317. package/dist/types/parts/DSPerPageSelector/tests/utils/PerPageSelectorTestRender.d.ts +1 -0
  318. package/dist/types/parts/DSPerPageSelector/typescript-testing/slots-props.d.ts +1 -0
  319. package/dist/types/parts/DSPerPageSelector/typescript-testing/typescript-testing.d.ts +1 -0
  320. package/dist/types/parts/index.d.ts +6 -5
  321. package/dist/types/react-desc-prop-types.d.ts +9 -540
  322. package/dist/types/tests/DSPagination.data-testid.test.d.ts +1 -0
  323. package/dist/types/tests/DSPagination.exports.test.d.ts +1 -0
  324. package/dist/types/tests/DSPagination.get-owner-props.test.d.ts +1 -0
  325. package/package.json +35 -31
  326. package/dist/cjs/DSPaginationDefinitions.js.map +0 -7
  327. package/dist/cjs/Pagination.js.map +0 -7
  328. package/dist/cjs/PaginationDataTestID.js.map +0 -7
  329. package/dist/cjs/parts/DSPageNextButton.js.map +0 -7
  330. package/dist/cjs/parts/DSPagePrevButton.js.map +0 -7
  331. package/dist/cjs/parts/DSPaginationContainer.js.map +0 -7
  332. package/dist/cjs/parts/DSPaginator/createPaginatorHeader.js.map +0 -7
  333. package/dist/cjs/parts/DSPaginator/getOptions.js.map +0 -7
  334. package/dist/cjs/parts/DSPaginator/usePaginator.js.map +0 -7
  335. package/dist/cjs/parts/DSPerPageSelector/usePerPageSelector.js.map +0 -7
  336. package/dist/cjs/props.js +0 -85
  337. package/dist/cjs/props.js.map +0 -7
  338. package/dist/cjs/styled.js.map +0 -7
  339. package/dist/cjs/typescript-testing/typescript-page-next-button-valid.js.map +0 -7
  340. package/dist/cjs/typescript-testing/typescript-page-prev-button-valid.js.map +0 -7
  341. package/dist/cjs/typescript-testing/typescript-paginator-valid.js.map +0 -7
  342. package/dist/cjs/typescript-testing/typescript-per-page-selector-valid.js.map +0 -7
  343. package/dist/esm/DSPaginationDefinitions.js +0 -24
  344. package/dist/esm/DSPaginationDefinitions.js.map +0 -7
  345. package/dist/esm/Pagination.js.map +0 -7
  346. package/dist/esm/PaginationDataTestID.js +0 -14
  347. package/dist/esm/PaginationDataTestID.js.map +0 -7
  348. package/dist/esm/parts/DSPageNextButton.js +0 -47
  349. package/dist/esm/parts/DSPageNextButton.js.map +0 -7
  350. package/dist/esm/parts/DSPagePrevButton.js +0 -47
  351. package/dist/esm/parts/DSPagePrevButton.js.map +0 -7
  352. package/dist/esm/parts/DSPaginationContainer.js +0 -31
  353. package/dist/esm/parts/DSPaginationContainer.js.map +0 -7
  354. package/dist/esm/parts/DSPaginator/createPaginatorHeader.js +0 -19
  355. package/dist/esm/parts/DSPaginator/createPaginatorHeader.js.map +0 -7
  356. package/dist/esm/parts/DSPaginator/getOptions.js.map +0 -7
  357. package/dist/esm/parts/DSPaginator/usePaginator.js +0 -59
  358. package/dist/esm/parts/DSPaginator/usePaginator.js.map +0 -7
  359. package/dist/esm/parts/DSPerPageSelector/usePerPageSelector.js +0 -40
  360. package/dist/esm/parts/DSPerPageSelector/usePerPageSelector.js.map +0 -7
  361. package/dist/esm/props.js +0 -55
  362. package/dist/esm/props.js.map +0 -7
  363. package/dist/esm/styled.js +0 -92
  364. package/dist/esm/styled.js.map +0 -7
  365. package/dist/esm/typescript-testing/typescript-page-next-button-valid.js.map +0 -7
  366. package/dist/esm/typescript-testing/typescript-page-prev-button-valid.js.map +0 -7
  367. package/dist/esm/typescript-testing/typescript-paginator-valid.js.map +0 -7
  368. package/dist/esm/typescript-testing/typescript-per-page-selector-valid.js.map +0 -7
  369. package/dist/types/DSPaginationDefinitions.d.ts +0 -12
  370. package/dist/types/PaginationDataTestID.d.ts +0 -9
  371. package/dist/types/parts/DSPageNextButton.d.ts +0 -4
  372. package/dist/types/parts/DSPagePrevButton.d.ts +0 -4
  373. package/dist/types/parts/DSPaginationContainer.d.ts +0 -4
  374. package/dist/types/parts/DSPaginator/createPaginatorHeader.d.ts +0 -6
  375. package/dist/types/parts/DSPaginator/usePaginator.d.ts +0 -381
  376. package/dist/types/parts/DSPerPageSelector/usePerPageSelector.d.ts +0 -377
  377. package/dist/types/props.d.ts +0 -20
  378. package/dist/types/styled.d.ts +0 -7
  379. /package/dist/cjs/parts/DSPaginator/{usePaginationSearch.js → config/usePaginationSearch.js} +0 -0
  380. /package/dist/cjs/parts/DSPerPageSelector/{getOptions.js → config/getOptions.js} +0 -0
  381. /package/dist/cjs/parts/{DSPaginator → shared}/useOnElementOnResize.js +0 -0
  382. /package/dist/esm/parts/DSPaginator/{usePaginationSearch.js → config/usePaginationSearch.js} +0 -0
  383. /package/dist/esm/parts/DSPerPageSelector/{getOptions.js → config/getOptions.js} +0 -0
  384. /package/dist/esm/parts/{DSPaginator → shared}/useOnElementOnResize.js +0 -0
  385. /package/dist/types/{Pagination.d.ts → DSPagination.d.ts} +0 -0
  386. /package/dist/types/{typescript-testing/typescript-page-next-button-valid.d.ts → parts/DSPageNextButton/tests/DSPageNextButton.a11y.test.d.ts} +0 -0
  387. /package/dist/types/{typescript-testing/typescript-page-prev-button-valid.d.ts → parts/DSPageNextButton/tests/DSPageNextButton.callbacks.test.d.ts} +0 -0
  388. /package/dist/types/{typescript-testing/typescript-paginator-valid.d.ts → parts/DSPageNextButton/tests/DSPageNextButton.data-testid.test.d.ts} +0 -0
  389. /package/dist/types/{typescript-testing/typescript-per-page-selector-valid.d.ts → parts/DSPageNextButton/tests/DSPageNextButton.export.test.d.ts} +0 -0
  390. /package/dist/types/parts/DSPaginator/{usePaginationSearch.d.ts → config/usePaginationSearch.d.ts} +0 -0
  391. /package/dist/types/parts/DSPerPageSelector/{getOptions.d.ts → config/getOptions.d.ts} +0 -0
  392. /package/dist/types/parts/{DSPaginator → shared}/useOnElementOnResize.d.ts +0 -0
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __copyProps = (to, from, except, desc) => {
9
+ if (from && typeof from === "object" || typeof from === "function") {
10
+ for (let key of __getOwnPropNames(from))
11
+ if (!__hasOwnProp.call(to, key) && key !== except)
12
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
13
+ }
14
+ return to;
15
+ };
16
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
17
+ // If the importer is in node compatibility mode or this is not an ESM
18
+ // file that has been converted to a CommonJS file using a Babel-
19
+ // compatible transform (i.e. "__esModule" has not been set), then set
20
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
+ mod
23
+ ));
24
+ var React = __toESM(require("react"));
25
+ const SlotPropsAsObj = {
26
+ dsPaginationPaginator: { "aria-label": "just a typescript test" }
27
+ };
28
+ const SlotPropsAsFunctions = {
29
+ dsPaginationPaginator: () => ({ "aria-label": "just a typescript test" })
30
+ };
31
+ const EnsureAllSlotsExistInSlotFunctionArguments = SlotPropsAsFunctions;
32
+ //# sourceMappingURL=slot-props.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/parts/DSPaginator/typescript-testing/slot-props.ts"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable @typescript-eslint/no-unused-vars, no-unused-vars */\n\nimport type { TypescriptHelpersT } from '@elliemae/ds-typescript-helpers';\nimport type { DSPaginationName, PAGINATOR_SLOTS } from '../constants/index.js';\nimport type { DSPaginatorT } from '../react-desc-prop-types.js';\n\nconst SlotPropsAsObj: Partial<DSPaginatorT.Props> = {\n dsPaginationPaginator: { 'aria-label': 'just a typescript test' },\n};\nconst SlotPropsAsFunctions: DSPaginatorT.SlotFunctionArguments = {\n dsPaginationPaginator: () => ({ 'aria-label': 'just a typescript test' }),\n};\nconst EnsureAllSlotsExistInSlotFunctionArguments: Required<\n TypescriptHelpersT.PropsForSlots<typeof DSPaginationName, typeof PAGINATOR_SLOTS>\n> = SlotPropsAsFunctions;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA,YAAuB;ACMvB,MAAM,iBAA8C;AAAA,EAClD,uBAAuB,EAAE,cAAc,yBAAyB;AAClE;AACA,MAAM,uBAA2D;AAAA,EAC/D,uBAAuB,OAAO,EAAE,cAAc,yBAAyB;AACzE;AACA,MAAM,6CAEF;",
6
+ "names": []
7
+ }
@@ -99,4 +99,4 @@ const ExampleUsageComponent = () => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)
99
99
  }
100
100
  )
101
101
  ] });
102
- //# sourceMappingURL=typescript-paginator-valid.js.map
102
+ //# sourceMappingURL=typescript-testing.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/parts/DSPaginator/typescript-testing/typescript-testing.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable @typescript-eslint/no-unused-vars, no-unused-vars */\nimport { DSPaginator } from '../index.js';\nimport type { DSPaginatorT } from '../index.js';\n\n// test we expose the namespace and the namespace follows our deliverable conventions\ntype ComponentPropsForApp = DSPaginatorT.Props;\ntype ComponentPropsInternals = DSPaginatorT.InternalProps;\ntype ComponentPropsDefaultProps = DSPaginatorT.DefaultProps;\ntype ComponentPropsOptionalProps = DSPaginatorT.OptionalProps;\ntype ComponentPropsRequiredProps = DSPaginatorT.RequiredProps;\n\nconst testRequiredProps: ComponentPropsRequiredProps = {};\n\nconst testOptionalProps: ComponentPropsOptionalProps = {};\n\n// difference Props and InternalProps is that InternalProps has all the default props filled in\n// Props allows for partial defaults\nconst testPartialDefaults: Partial<ComponentPropsDefaultProps> = {\n pageCount: 0,\n isLoadingPageCount: false,\n onPageChange: () => null,\n};\n\nconst testProps: ComponentPropsForApp = {\n ...testRequiredProps,\n ...testOptionalProps,\n ...testPartialDefaults,\n};\n\nconst testPropsAsSyntax = {\n ...testRequiredProps,\n ...testOptionalProps,\n ...testPartialDefaults,\n} as ComponentPropsForApp;\n\n// InternalProps requires all defaults to be filled in\nconst testCompleteDefaults: Required<ComponentPropsDefaultProps> = {\n pageCount: 0,\n isLoadingPageCount: false,\n pageIndex: 1,\n onPageChange: () => null,\n pageDetails: [],\n pageDetailsTitle: '',\n};\n\nconst testInternalProps: ComponentPropsInternals = {\n ...testRequiredProps,\n ...testOptionalProps,\n ...testCompleteDefaults,\n};\n\nconst testInternalPropsAsSyntax = {\n ...testRequiredProps,\n ...testOptionalProps,\n ...testCompleteDefaults,\n} as ComponentPropsInternals;\n\n// using the explicit type definition, if there is an error, it will be marked on the key that is wrong\nconst testExplicitDefinition: ComponentPropsForApp = {\n pageCount: 0,\n isLoadingPageCount: false,\n pageIndex: 1,\n onPageChange: () => null,\n pageDetails: [],\n pageDetailsTitle: '',\n};\n\n// using the \"as\" syntax, if there is an error, it will be marking the whole object as wrong because it is not compatible with the type\nconst testInferedTypeCompatibility = {\n pageCount: 0,\n isLoadingPageCount: false,\n pageIndex: 1,\n onPageChange: () => null,\n pageDetails: [],\n pageDetailsTitle: '',\n} as ComponentPropsForApp;\n\nconst testDefinitionAsConst = {\n pageCount: 0,\n isLoadingPageCount: false,\n pageIndex: 1,\n onPageChange: () => null,\n pageDetails: [],\n pageDetailsTitle: '',\n} as const;\n\nconst ExampleUsageComponent = () => (\n <>\n {/* works with explicitly casted props, all syntaxes */}\n <DSPaginator {...testExplicitDefinition} />\n <DSPaginator {...testInferedTypeCompatibility} />\n <DSPaginator {...testDefinitionAsConst} />\n {/* works with inline values */}\n <DSPaginator\n pageCount={0}\n isLoadingPageCount={false}\n pageIndex={1}\n onPageChange={() => null}\n pageDetails={[]}\n pageDetailsTitle=\"\"\n />\n </>\n);\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA,YAAuB;ACuFrB;AAtFF,eAA4B;AAU5B,MAAM,oBAAiD,CAAC;AAExD,MAAM,oBAAiD,CAAC;AAIxD,MAAM,sBAA2D;AAAA,EAC/D,WAAW;AAAA,EACX,oBAAoB;AAAA,EACpB,cAAc,MAAM;AACtB;AAEA,MAAM,YAAkC;AAAA,EACtC,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AACL;AAEA,MAAM,oBAAoB;AAAA,EACxB,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AACL;AAGA,MAAM,uBAA6D;AAAA,EACjE,WAAW;AAAA,EACX,oBAAoB;AAAA,EACpB,WAAW;AAAA,EACX,cAAc,MAAM;AAAA,EACpB,aAAa,CAAC;AAAA,EACd,kBAAkB;AACpB;AAEA,MAAM,oBAA6C;AAAA,EACjD,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AACL;AAEA,MAAM,4BAA4B;AAAA,EAChC,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AACL;AAGA,MAAM,yBAA+C;AAAA,EACnD,WAAW;AAAA,EACX,oBAAoB;AAAA,EACpB,WAAW;AAAA,EACX,cAAc,MAAM;AAAA,EACpB,aAAa,CAAC;AAAA,EACd,kBAAkB;AACpB;AAGA,MAAM,+BAA+B;AAAA,EACnC,WAAW;AAAA,EACX,oBAAoB;AAAA,EACpB,WAAW;AAAA,EACX,cAAc,MAAM;AAAA,EACpB,aAAa,CAAC;AAAA,EACd,kBAAkB;AACpB;AAEA,MAAM,wBAAwB;AAAA,EAC5B,WAAW;AAAA,EACX,oBAAoB;AAAA,EACpB,WAAW;AAAA,EACX,cAAc,MAAM;AAAA,EACpB,aAAa,CAAC;AAAA,EACd,kBAAkB;AACpB;AAEA,MAAM,wBAAwB,MAC5B,4EAEE;AAAA,8CAAC,wBAAa,GAAG,wBAAwB;AAAA,EACzC,4CAAC,wBAAa,GAAG,8BAA8B;AAAA,EAC/C,4CAAC,wBAAa,GAAG,uBAAuB;AAAA,EAExC;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,MACX,oBAAoB;AAAA,MACpB,WAAW;AAAA,MACX,cAAc,MAAM;AAAA,MACpB,aAAa,CAAC;AAAA,MACd,kBAAiB;AAAA;AAAA,EACnB;AAAA,GACF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,125 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var DSPerPageSelector_exports = {};
30
+ __export(DSPerPageSelector_exports, {
31
+ DSPerPageSelector: () => DSPerPageSelector,
32
+ DSPerPageSelectorWithSchema: () => DSPerPageSelectorWithSchema
33
+ });
34
+ module.exports = __toCommonJS(DSPerPageSelector_exports);
35
+ var React = __toESM(require("react"));
36
+ var import_jsx_runtime = require("react/jsx-runtime");
37
+ var import_ds_dropdownmenu_v2 = require("@elliemae/ds-dropdownmenu-v2");
38
+ var import_ds_icons = require("@elliemae/ds-icons");
39
+ var import_ds_props_helpers = require("@elliemae/ds-props-helpers");
40
+ var import_ds_typography = require("@elliemae/ds-typography");
41
+ var import_react = require("react");
42
+ var import_usePerPageSelector = require("./config/usePerPageSelector.js");
43
+ var import_constants = require("./constants/index.js");
44
+ var import_react_desc_prop_types = require("./react-desc-prop-types.js");
45
+ var import_styled = require("./styled.js");
46
+ const Header = () => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.StyledHeader, { children: "Per Page" });
47
+ const DSPerPageSelector = (props) => {
48
+ const {
49
+ propsWithDefault: { pageSize, onPageSizeChange },
50
+ xstyledProps,
51
+ globalAttributes,
52
+ ownerPropsConfig,
53
+ actionRef,
54
+ btnRef,
55
+ chevronRef,
56
+ chevronWidth,
57
+ isOpened,
58
+ options,
59
+ setIsOpened
60
+ } = (0, import_usePerPageSelector.usePerPageSelector)(props);
61
+ const buttonOnClick = (0, import_react.useMemo)(() => {
62
+ if (globalAttributes.onClick) return globalAttributes.onClick;
63
+ return () => setIsOpened((prev) => !prev);
64
+ }, [globalAttributes.onClick, setIsOpened]);
65
+ const maxOptionsLength = (0, import_react.useMemo)(() => {
66
+ const maxLength = options.reduce((acc, cur) => Math.max(acc, ("label" in cur ? cur.label : "").length), 0);
67
+ return maxLength;
68
+ }, [options]);
69
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
70
+ import_ds_dropdownmenu_v2.DSDropdownMenuV2,
71
+ {
72
+ isOpened,
73
+ options,
74
+ selectedOptions: { [pageSize.toString()]: true },
75
+ onOptionClick: (_, clickedOption) => {
76
+ onPageSizeChange(clickedOption.value);
77
+ setIsOpened(false);
78
+ btnRef.current?.focus();
79
+ },
80
+ onClickOutside: () => {
81
+ setIsOpened(false);
82
+ btnRef.current?.focus();
83
+ },
84
+ customOffset: [-(chevronWidth + 7), 2],
85
+ startPlacementPreference: "top-start",
86
+ actionRef,
87
+ minWidth: `calc(${chevronWidth + 60}px + ${maxOptionsLength}ch)`,
88
+ maxHeight: 300,
89
+ HeaderComp: Header,
90
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
91
+ import_styled.PaginationDropdownButtonPerPageSelector,
92
+ {
93
+ buttonType: "raw",
94
+ innerRef: btnRef,
95
+ "aria-pressed": isOpened,
96
+ "aria-label": `${pageSize} rows per page. Press to select rows per page`,
97
+ "data-testid": import_constants.PER_PAGE_SELECTOR_DATA_TESTID.PER_PAGE_SELECTOR,
98
+ ...globalAttributes,
99
+ ...xstyledProps,
100
+ ...ownerPropsConfig,
101
+ onClick: buttonOnClick,
102
+ children: [
103
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
104
+ import_ds_typography.DSTypography,
105
+ {
106
+ variant: "b1",
107
+ as: "span",
108
+ className: "typography-per-page-selector",
109
+ children: [
110
+ pageSize,
111
+ " / page"
112
+ ]
113
+ }
114
+ ),
115
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_icons.ChevronDown, { color: ["brand-primary", "700"], innerRef: chevronRef })
116
+ ]
117
+ }
118
+ )
119
+ }
120
+ );
121
+ };
122
+ DSPerPageSelector.displayName = import_constants.DSPerPageSelectorName;
123
+ const DSPerPageSelectorWithSchema = (0, import_ds_props_helpers.describe)(DSPerPageSelector);
124
+ DSPerPageSelectorWithSchema.propTypes = import_react_desc_prop_types.DSPerPageSelectorPropTypesSchema;
125
+ //# sourceMappingURL=DSPerPageSelector.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/parts/DSPerPageSelector/DSPerPageSelector.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["import type { DSButtonT } from '@elliemae/ds-button-v2';\nimport { DSDropdownMenuV2, type DSDropdownMenuT } from '@elliemae/ds-dropdownmenu-v2';\nimport { ChevronDown } from '@elliemae/ds-icons';\nimport { describe } from '@elliemae/ds-props-helpers';\nimport { DSTypography } from '@elliemae/ds-typography';\nimport React, { useMemo } from 'react';\nimport { usePerPageSelector } from './config/usePerPageSelector.js';\nimport { DSPerPageSelectorName, PER_PAGE_SELECTOR_DATA_TESTID } from './constants/index.js';\nimport { DSPerPageSelectorPropTypesSchema, type DSPerPageSelectorT } from './react-desc-prop-types.js';\nimport { PaginationDropdownButtonPerPageSelector, StyledHeader } from './styled.js';\n\nconst Header = () => <StyledHeader>Per Page</StyledHeader>;\n\nconst DSPerPageSelector: React.ComponentType<DSPerPageSelectorT.Props> = (props) => {\n const {\n propsWithDefault: { pageSize, onPageSizeChange },\n xstyledProps,\n globalAttributes,\n ownerPropsConfig,\n actionRef,\n btnRef,\n chevronRef,\n chevronWidth,\n isOpened,\n options,\n setIsOpened,\n } = usePerPageSelector(props);\n const buttonOnClick: DSButtonT.Props['onClick'] = useMemo(() => {\n if (globalAttributes.onClick) return globalAttributes.onClick as DSButtonT.Props['onClick'];\n return () => setIsOpened((prev) => !prev);\n }, [globalAttributes.onClick, setIsOpened]);\n\n const maxOptionsLength = useMemo(() => {\n const maxLength = options.reduce((acc, cur) => Math.max(acc, ('label' in cur ? cur.label : '').length), 0);\n return maxLength;\n }, [options]);\n\n return (\n <DSDropdownMenuV2\n isOpened={isOpened}\n options={options}\n selectedOptions={{ [pageSize.toString()]: true }}\n onOptionClick={(_, clickedOption) => {\n onPageSizeChange((clickedOption as DSDropdownMenuT.ItemSingleOptions).value as number);\n setIsOpened(false);\n btnRef.current?.focus();\n }}\n onClickOutside={() => {\n setIsOpened(false);\n btnRef.current?.focus();\n }}\n customOffset={[-(chevronWidth + 7), 2]}\n startPlacementPreference=\"top-start\"\n actionRef={actionRef}\n /**\n * Calculate the dynamic minWidth for the Dropdown:\n *\n * Structure of the width:\n * 16px (left padding)\n * + chevronWidth (size of the chevron icon)\n * + 8px (spacing between chevron and text)\n * + maxOptionsLength ch (longest option label measured in characters)\n * + 16px (right padding)\n * + a small scrollbar placeholder (to avoid text wrapping when scrollbars appear)\n *\n * Why `calc()`?\n * - When using pure px values, the initial render works correctly.\n * - But when switching between different stories in Storybook \u2014 especially those\n * that modify font-size or typography scale \u2014 the measured width from the ref\n * becomes outdated and ends up returning a smaller value than it should.\n * - That incorrect (underestimated) width causes the longest option label to wrap,\n * even though there is actually enough space.\n *\n * By using `calc()` + `ch` units, the component stays responsive to font-size changes\n * without requiring an extra ref to measure the page size text width.\n */\n minWidth={`calc(${chevronWidth + 60}px + ${maxOptionsLength}ch)`}\n maxHeight={300}\n HeaderComp={Header}\n >\n <PaginationDropdownButtonPerPageSelector\n buttonType=\"raw\"\n innerRef={btnRef}\n aria-pressed={isOpened}\n aria-label={`${pageSize} rows per page. Press to select rows per page`}\n data-testid={PER_PAGE_SELECTOR_DATA_TESTID.PER_PAGE_SELECTOR}\n {...globalAttributes}\n {...xstyledProps}\n {...ownerPropsConfig}\n onClick={buttonOnClick}\n >\n <DSTypography\n variant=\"b1\"\n as=\"span\"\n /**\n * Pagination uses DSTypography internally, but each typography variant defines\n * its own font-size. When these components are placed inside a styled() wrapper,\n * trying to style them via styled(DSTypography) triggers TypeScript errors\n * because DSTypography exposes \"as\" props and variant-specific overrides.\n *\n * Instead of wrapping DSTypography directly in styled(), we target the\n * underlying rendered elements via className/id. This avoids the TS conflicts\n * while still allowing us to override their font-size reliably.\n */\n className=\"typography-per-page-selector\"\n >\n {pageSize} / page\n </DSTypography>\n\n <ChevronDown color={['brand-primary', '700']} innerRef={chevronRef} />\n </PaginationDropdownButtonPerPageSelector>\n </DSDropdownMenuV2>\n );\n};\n\nDSPerPageSelector.displayName = DSPerPageSelectorName;\nconst DSPerPageSelectorWithSchema = describe(DSPerPageSelector);\nDSPerPageSelectorWithSchema.propTypes = DSPerPageSelectorPropTypesSchema;\n\nexport { DSPerPageSelector, DSPerPageSelectorWithSchema };\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADWF;AAVrB,gCAAuD;AACvD,sBAA4B;AAC5B,8BAAyB;AACzB,2BAA6B;AAC7B,mBAA+B;AAC/B,gCAAmC;AACnC,uBAAqE;AACrE,mCAA0E;AAC1E,oBAAsE;AAEtE,MAAM,SAAS,MAAM,4CAAC,8BAAa,sBAAQ;AAE3C,MAAM,oBAAmE,CAAC,UAAU;AAClF,QAAM;AAAA,IACJ,kBAAkB,EAAE,UAAU,iBAAiB;AAAA,IAC/C;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,QAAI,8CAAmB,KAAK;AAC5B,QAAM,oBAA4C,sBAAQ,MAAM;AAC9D,QAAI,iBAAiB,QAAS,QAAO,iBAAiB;AACtD,WAAO,MAAM,YAAY,CAAC,SAAS,CAAC,IAAI;AAAA,EAC1C,GAAG,CAAC,iBAAiB,SAAS,WAAW,CAAC;AAE1C,QAAM,uBAAmB,sBAAQ,MAAM;AACrC,UAAM,YAAY,QAAQ,OAAO,CAAC,KAAK,QAAQ,KAAK,IAAI,MAAM,WAAW,MAAM,IAAI,QAAQ,IAAI,MAAM,GAAG,CAAC;AACzG,WAAO;AAAA,EACT,GAAG,CAAC,OAAO,CAAC;AAEZ,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA,iBAAiB,EAAE,CAAC,SAAS,SAAS,CAAC,GAAG,KAAK;AAAA,MAC/C,eAAe,CAAC,GAAG,kBAAkB;AACnC,yBAAkB,cAAoD,KAAe;AACrF,oBAAY,KAAK;AACjB,eAAO,SAAS,MAAM;AAAA,MACxB;AAAA,MACA,gBAAgB,MAAM;AACpB,oBAAY,KAAK;AACjB,eAAO,SAAS,MAAM;AAAA,MACxB;AAAA,MACA,cAAc,CAAC,EAAE,eAAe,IAAI,CAAC;AAAA,MACrC,0BAAyB;AAAA,MACzB;AAAA,MAuBA,UAAU,QAAQ,eAAe,EAAE,QAAQ,gBAAgB;AAAA,MAC3D,WAAW;AAAA,MACX,YAAY;AAAA,MAEZ;AAAA,QAAC;AAAA;AAAA,UACC,YAAW;AAAA,UACX,UAAU;AAAA,UACV,gBAAc;AAAA,UACd,cAAY,GAAG,QAAQ;AAAA,UACvB,eAAa,+CAA8B;AAAA,UAC1C,GAAG;AAAA,UACH,GAAG;AAAA,UACH,GAAG;AAAA,UACJ,SAAS;AAAA,UAET;AAAA;AAAA,cAAC;AAAA;AAAA,gBACC,SAAQ;AAAA,gBACR,IAAG;AAAA,gBAWH,WAAU;AAAA,gBAET;AAAA;AAAA,kBAAS;AAAA;AAAA;AAAA,YACZ;AAAA,YAEA,4CAAC,+BAAY,OAAO,CAAC,iBAAiB,KAAK,GAAG,UAAU,YAAY;AAAA;AAAA;AAAA,MACtE;AAAA;AAAA,EACF;AAEJ;AAEA,kBAAkB,cAAc;AAChC,MAAM,kCAA8B,kCAAS,iBAAiB;AAC9D,4BAA4B,YAAY;",
6
+ "names": []
7
+ }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../../src/parts/DSPerPageSelector/getOptions.ts", "../../../../../../../scripts/build/transpile/react-shim.js"],
3
+ "sources": ["../../../../../src/parts/DSPerPageSelector/config/getOptions.ts", "../../../../../../../../scripts/build/transpile/react-shim.js"],
4
4
  "sourcesContent": ["import { range } from 'lodash-es';\nimport type { DSDropdownMenuT } from '@elliemae/ds-dropdownmenu-v2';\n\nexport const generateOption = (\n value: number | DSDropdownMenuT.ItemSingleOptions,\n): DSDropdownMenuT.ItemSingleOptions => {\n if (typeof value === 'object') {\n return value;\n }\n return {\n dsId: value.toString(),\n value,\n label: value.toString(),\n type: 'single',\n } as const;\n};\n\nexport const getOptions = (step: number, min: number, max: number) => {\n const options = range(min, max + step, step).map(generateOption);\n return min === 0 ? options.slice(1, options.length) : options;\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
5
  "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,uBAAsB;AAGf,MAAM,iBAAiB,CAC5B,UACsC;AACtC,MAAI,OAAO,UAAU,UAAU;AAC7B,WAAO;AAAA,EACT;AACA,SAAO;AAAA,IACL,MAAM,MAAM,SAAS;AAAA,IACrB;AAAA,IACA,OAAO,MAAM,SAAS;AAAA,IACtB,MAAM;AAAA,EACR;AACF;AAEO,MAAM,aAAa,CAAC,MAAc,KAAa,QAAgB;AACpE,QAAM,cAAU,wBAAM,KAAK,MAAM,MAAM,IAAI,EAAE,IAAI,cAAc;AAC/D,SAAO,QAAQ,IAAI,QAAQ,MAAM,GAAG,QAAQ,MAAM,IAAI;AACxD;",
6
6
  "names": []
@@ -32,11 +32,19 @@ __export(usePerPageSelector_exports, {
32
32
  });
33
33
  module.exports = __toCommonJS(usePerPageSelector_exports);
34
34
  var React = __toESM(require("react"));
35
- var import_react = require("react");
36
35
  var import_ds_props_helpers = require("@elliemae/ds-props-helpers");
36
+ var import_react = __toESM(require("react"));
37
+ var import_react_desc_prop_types = require("../react-desc-prop-types.js");
38
+ var import_useValidateProps = require("./useValidateProps.js");
37
39
  var import_getOptions = require("./getOptions.js");
38
- const usePerPageSelector = (props) => {
39
- const { pageSize, perPageOptions, perPageStep, minPerPage, maxPerPage } = props;
40
+ var import_useOnElementOnResize = require("../../shared/useOnElementOnResize.js");
41
+ const usePerPageSelector = (propsFromUser) => {
42
+ const propsWithDefault = (0, import_ds_props_helpers.useMemoMergePropsWithDefault)(propsFromUser, import_react_desc_prop_types.defaultProps);
43
+ (0, import_useValidateProps.useValidateProps)(propsWithDefault, import_react_desc_prop_types.DSPerPageSelectorPropTypesSchema);
44
+ const xstyledProps = (0, import_ds_props_helpers.useGetXstyledProps)(propsWithDefault);
45
+ const globalAttributes = (0, import_ds_props_helpers.useGetGlobalAttributes)(propsWithDefault);
46
+ const ownerPropsConfig = (0, import_ds_props_helpers.useOwnerProps)(propsWithDefault);
47
+ const { pageSize, perPageOptions, perPageStep, minPerPage, maxPerPage } = propsWithDefault;
40
48
  const [isOpened, setIsOpened] = (0, import_react.useState)(false);
41
49
  const options = (0, import_react.useMemo)(() => {
42
50
  if (perPageOptions) return perPageOptions.map(import_getOptions.generateOption);
@@ -44,27 +52,29 @@ const usePerPageSelector = (props) => {
44
52
  }, [maxPerPage, minPerPage, perPageOptions, perPageStep]);
45
53
  const actionRef = (0, import_react.useRef)({});
46
54
  const btnRef = (0, import_react.useRef)(null);
55
+ const chevronRef = (0, import_react.useRef)(null);
56
+ const { width: chevronWidth } = (0, import_useOnElementOnResize.useOnElementResize)(chevronRef);
47
57
  (0, import_react.useEffect)(() => {
48
58
  if (isOpened) {
49
59
  actionRef.current.setActiveDescendant(pageSize.toString());
50
60
  actionRef.current.scrollOptionIntoView(pageSize.toString());
51
61
  }
52
62
  }, [isOpened]);
53
- const width = (0, import_react.useMemo)(() => {
54
- const maxLength = options.reduce((acc, cur) => Math.max(acc, ("label" in cur ? cur.label : "").length), 0);
55
- return maxLength * 6 + 90;
56
- }, [options]);
57
- const globalAttributes = (0, import_ds_props_helpers.useGetGlobalAttributes)(props);
58
- const xstyledAttributes = (0, import_ds_props_helpers.useGetXstyledProps)(props);
59
- return {
60
- actionRef,
61
- btnRef,
62
- width,
63
- isOpened,
64
- setIsOpened,
65
- options,
66
- globalAttributes,
67
- xstyledAttributes
68
- };
63
+ return import_react.default.useMemo(
64
+ () => ({
65
+ propsWithDefault,
66
+ xstyledProps,
67
+ globalAttributes,
68
+ ownerPropsConfig,
69
+ actionRef,
70
+ btnRef,
71
+ chevronRef,
72
+ chevronWidth,
73
+ isOpened,
74
+ options,
75
+ setIsOpened
76
+ }),
77
+ [propsWithDefault, xstyledProps, globalAttributes, ownerPropsConfig, isOpened, options, chevronRef, chevronWidth]
78
+ );
69
79
  };
70
80
  //# sourceMappingURL=usePerPageSelector.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/parts/DSPerPageSelector/config/usePerPageSelector.ts", "../../../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["import type { DSButtonV3T } from '@elliemae/ds-button-v2';\nimport {\n useGetGlobalAttributes,\n useGetXstyledProps,\n useMemoMergePropsWithDefault,\n useOwnerProps,\n} from '@elliemae/ds-props-helpers';\nimport React, { useEffect, useMemo, useRef, useState } from 'react';\n\nimport { type DSPerPageSelectorT, DSPerPageSelectorPropTypesSchema, defaultProps } from '../react-desc-prop-types.js';\nimport { useValidateProps } from './useValidateProps.js';\nimport { generateOption, getOptions } from './getOptions.js';\nimport { useOnElementResize } from '../../shared/useOnElementOnResize.js';\n\nexport const usePerPageSelector = (propsFromUser: DSPerPageSelectorT.Props) => {\n // =============================================================================\n // MERGE WITH DEFAULT AND VALIDATE PROPS\n // =============================================================================\n const propsWithDefault = useMemoMergePropsWithDefault<DSPerPageSelectorT.InternalProps>(propsFromUser, defaultProps);\n useValidateProps(propsWithDefault, DSPerPageSelectorPropTypesSchema);\n // =============================================================================\n // XSTYLED PROPS\n // =============================================================================\n const xstyledProps = useGetXstyledProps(propsWithDefault);\n // =============================================================================\n // GLOBAL ATTRIBUTES\n // =============================================================================\n const globalAttributes = useGetGlobalAttributes<\n DSPerPageSelectorT.InternalProps,\n HTMLButtonElement,\n DSButtonV3T.Props\n >(propsWithDefault);\n // =============================================================================\n // OWNER PROPS\n // =============================================================================\n const ownerPropsConfig = useOwnerProps(propsWithDefault);\n // AD HOC PER COMPONENT LOGIC\n // =============================================================================\n // custom code goes here, this is an example\n // const instanceUid = React.useMemo(() => `ds-per-page-selector-${uid(5)}`, []);\n\n const { pageSize, perPageOptions, perPageStep, minPerPage, maxPerPage } = propsWithDefault;\n const [isOpened, setIsOpened] = useState(false);\n const options = useMemo(() => {\n if (perPageOptions) return perPageOptions.map(generateOption);\n return getOptions(perPageStep, minPerPage, maxPerPage);\n }, [maxPerPage, minPerPage, perPageOptions, perPageStep]);\n\n const actionRef = useRef<Record<string, (dsId: string) => void>>({});\n const btnRef = useRef<HTMLButtonElement>(null);\n\n const chevronRef = useRef<HTMLElement>(null);\n const { width: chevronWidth } = useOnElementResize(chevronRef);\n\n useEffect(() => {\n if (isOpened) {\n actionRef.current.setActiveDescendant(pageSize.toString());\n actionRef.current.scrollOptionIntoView(pageSize.toString());\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isOpened]);\n\n // =============================================================================\n // HELPERS HOOKS CONFIGS\n // =============================================================================\n // const eventHandlers = useEventHandlers({ propsWithDefault, instanceUid }); // <-- complex logic should be made atomics this way\n\n return React.useMemo(\n () => ({\n propsWithDefault,\n xstyledProps,\n globalAttributes,\n ownerPropsConfig,\n actionRef,\n btnRef,\n chevronRef,\n chevronWidth,\n isOpened,\n options,\n setIsOpened,\n }),\n [propsWithDefault, xstyledProps, globalAttributes, ownerPropsConfig, isOpened, options, chevronRef, chevronWidth],\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADCvB,8BAKO;AACP,mBAA4D;AAE5D,mCAAwF;AACxF,8BAAiC;AACjC,wBAA2C;AAC3C,kCAAmC;AAE5B,MAAM,qBAAqB,CAAC,kBAA4C;AAI7E,QAAM,uBAAmB,sDAA+D,eAAe,yCAAY;AACnH,gDAAiB,kBAAkB,6DAAgC;AAInE,QAAM,mBAAe,4CAAmB,gBAAgB;AAIxD,QAAM,uBAAmB,gDAIvB,gBAAgB;AAIlB,QAAM,uBAAmB,uCAAc,gBAAgB;AAMvD,QAAM,EAAE,UAAU,gBAAgB,aAAa,YAAY,WAAW,IAAI;AAC1E,QAAM,CAAC,UAAU,WAAW,QAAI,uBAAS,KAAK;AAC9C,QAAM,cAAU,sBAAQ,MAAM;AAC5B,QAAI,eAAgB,QAAO,eAAe,IAAI,gCAAc;AAC5D,eAAO,8BAAW,aAAa,YAAY,UAAU;AAAA,EACvD,GAAG,CAAC,YAAY,YAAY,gBAAgB,WAAW,CAAC;AAExD,QAAM,gBAAY,qBAA+C,CAAC,CAAC;AACnE,QAAM,aAAS,qBAA0B,IAAI;AAE7C,QAAM,iBAAa,qBAAoB,IAAI;AAC3C,QAAM,EAAE,OAAO,aAAa,QAAI,gDAAmB,UAAU;AAE7D,8BAAU,MAAM;AACd,QAAI,UAAU;AACZ,gBAAU,QAAQ,oBAAoB,SAAS,SAAS,CAAC;AACzD,gBAAU,QAAQ,qBAAqB,SAAS,SAAS,CAAC;AAAA,IAC5D;AAAA,EAEF,GAAG,CAAC,QAAQ,CAAC;AAOb,SAAO,aAAAA,QAAM;AAAA,IACX,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,IACA,CAAC,kBAAkB,cAAc,kBAAkB,kBAAkB,UAAU,SAAS,YAAY,YAAY;AAAA,EAClH;AACF;",
6
+ "names": ["React"]
7
+ }
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var useValidateProps_exports = {};
30
+ __export(useValidateProps_exports, {
31
+ useValidateProps: () => useValidateProps
32
+ });
33
+ module.exports = __toCommonJS(useValidateProps_exports);
34
+ var React = __toESM(require("react"));
35
+ var import_ds_props_helpers = require("@elliemae/ds-props-helpers");
36
+ var import_constants = require("../constants/index.js");
37
+ const useValidateProps = (props, propTypes) => {
38
+ (0, import_ds_props_helpers.useValidateTypescriptPropTypes)(props, propTypes, import_constants.DSPerPageSelectorName);
39
+ };
40
+ //# sourceMappingURL=useValidateProps.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/parts/DSPerPageSelector/config/useValidateProps.ts", "../../../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["import { useValidateTypescriptPropTypes } from '@elliemae/ds-props-helpers';\nimport type { ValidationMap } from '@elliemae/ds-props-helpers';\nimport { type DSPerPageSelectorT } from '../react-desc-prop-types.js';\nimport { DSPerPageSelectorName } from '../constants/index.js';\n\nexport const useValidateProps = (\n props: DSPerPageSelectorT.InternalProps,\n propTypes: ValidationMap<DSPerPageSelectorT.Props>,\n): void => {\n // we validate the \"required if\" via 'isRequiredIf from our custom PropTypes\n useValidateTypescriptPropTypes(props, propTypes, DSPerPageSelectorName);\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,8BAA+C;AAG/C,uBAAsC;AAE/B,MAAM,mBAAmB,CAC9B,OACA,cACS;AAET,8DAA+B,OAAO,WAAW,sCAAqB;AACxE;",
6
+ "names": []
7
+ }
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var constants_exports = {};
30
+ __export(constants_exports, {
31
+ DSPaginationName: () => import_constants.DSPaginationName,
32
+ DSPerPageSelectorName: () => DSPerPageSelectorName,
33
+ EXAMPLE_CONSTANTS: () => EXAMPLE_CONSTANTS,
34
+ PER_PAGE_SELECTOR_DATA_TESTID: () => PER_PAGE_SELECTOR_DATA_TESTID,
35
+ PER_PAGE_SELECTOR_SLOTS: () => PER_PAGE_SELECTOR_SLOTS
36
+ });
37
+ module.exports = __toCommonJS(constants_exports);
38
+ var React = __toESM(require("react"));
39
+ var import_ds_system = require("@elliemae/ds-system");
40
+ var import_constants = require("../../../constants/index.js");
41
+ const DSPerPageSelectorName = "DSPerPageSelector";
42
+ const EXAMPLE_CONSTANTS = {
43
+ HELLO: "WORLD",
44
+ FOO: "BAR"
45
+ };
46
+ const PER_PAGE_SELECTOR_SLOTS = {
47
+ PER_PAGE_SELECTOR: "per-page-selector"
48
+ };
49
+ const PER_PAGE_SELECTOR_DATA_TESTID = (0, import_ds_system.slotObjectToDataTestIds)(import_constants.DSPaginationName, PER_PAGE_SELECTOR_SLOTS);
50
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/parts/DSPerPageSelector/constants/index.ts", "../../../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["import { slotObjectToDataTestIds } from '@elliemae/ds-system';\nimport { DSPaginationName } from '../../../constants/index.js';\nexport { DSPaginationName };\n\n// This should be used only for displayName, and useValidateProps.\n// For slots definition, use parent component name\nexport const DSPerPageSelectorName = 'DSPerPageSelector';\n\nexport const EXAMPLE_CONSTANTS = {\n HELLO: 'WORLD',\n FOO: 'BAR',\n} as const;\n\n// we are naming this with the ${component_name}_slots convention to namespace & avoid errors on duplicate exports variables in aggregators\nexport const PER_PAGE_SELECTOR_SLOTS = {\n PER_PAGE_SELECTOR: 'per-page-selector',\n} as const;\n\n// we are naming this with the ${component_name}_data_testid convention to namespace & avoid errors on duplicate exports variables in aggregators\nexport const PER_PAGE_SELECTOR_DATA_TESTID = slotObjectToDataTestIds(DSPaginationName, PER_PAGE_SELECTOR_SLOTS);\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,uBAAwC;AACxC,uBAAiC;AAK1B,MAAM,wBAAwB;AAE9B,MAAM,oBAAoB;AAAA,EAC/B,OAAO;AAAA,EACP,KAAK;AACP;AAGO,MAAM,0BAA0B;AAAA,EACrC,mBAAmB;AACrB;AAGO,MAAM,oCAAgC,0CAAwB,mCAAkB,uBAAuB;",
6
+ "names": []
7
+ }
@@ -28,77 +28,14 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
29
  var DSPerPageSelector_exports = {};
30
30
  __export(DSPerPageSelector_exports, {
31
- DSPerPageSelector: () => DSPerPageSelector,
32
- DSPerPageSelectorWithSchema: () => DSPerPageSelectorWithSchema
31
+ DSPerPageSelector: () => import_DSPerPageSelector.DSPerPageSelector,
32
+ DSPerPageSelectorName: () => import_constants.DSPerPageSelectorName,
33
+ DSPerPageSelectorWithSchema: () => import_DSPerPageSelector.DSPerPageSelectorWithSchema,
34
+ PER_PAGE_SELECTOR_DATA_TESTID: () => import_constants.PER_PAGE_SELECTOR_DATA_TESTID,
35
+ PER_PAGE_SELECTOR_SLOTS: () => import_constants.PER_PAGE_SELECTOR_SLOTS
33
36
  });
34
37
  module.exports = __toCommonJS(DSPerPageSelector_exports);
35
38
  var React = __toESM(require("react"));
36
- var import_jsx_runtime = require("react/jsx-runtime");
37
- var import_react = require("react");
38
- var import_ds_props_helpers = require("@elliemae/ds-props-helpers");
39
- var import_ds_dropdownmenu_v2 = require("@elliemae/ds-dropdownmenu-v2");
40
- var import_ds_icons = require("@elliemae/ds-icons");
41
- var import_react_desc_prop_types = require("../../react-desc-prop-types.js");
42
- var import_styled = require("../../styled.js");
43
- var import_DSPaginationDefinitions = require("../../DSPaginationDefinitions.js");
44
- var import_usePerPageSelector = require("./usePerPageSelector.js");
45
- var import_PaginationDataTestID = require("../../PaginationDataTestID.js");
46
- const Header = () => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children: "Per Page" });
47
- const DSPerPageSelector = (props) => {
48
- const propsWithDefault = (0, import_ds_props_helpers.useMemoMergePropsWithDefault)(
49
- props,
50
- import_react_desc_prop_types.perPageSelectorDefaultProps
51
- );
52
- (0, import_ds_props_helpers.useValidateTypescriptPropTypes)(propsWithDefault, import_react_desc_prop_types.DSPerPageSelectorPropTypesSchema, import_DSPaginationDefinitions.PerPageSelectorName);
53
- const { pageSize, onPageSizeChange } = propsWithDefault;
54
- const { actionRef, btnRef, width, isOpened, setIsOpened, options, globalAttributes, xstyledAttributes } = (0, import_usePerPageSelector.usePerPageSelector)(propsWithDefault);
55
- const buttonOnClick = (0, import_react.useMemo)(() => {
56
- if (globalAttributes.onClick) return globalAttributes.onClick;
57
- return () => setIsOpened((prev) => !prev);
58
- }, [globalAttributes.onClick, setIsOpened]);
59
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
60
- import_ds_dropdownmenu_v2.DSDropdownMenuV2,
61
- {
62
- isOpened,
63
- options,
64
- selectedOptions: { [pageSize.toString()]: true },
65
- onOptionClick: (_, clickedOption) => {
66
- onPageSizeChange(clickedOption.value);
67
- setIsOpened(false);
68
- btnRef.current?.focus();
69
- },
70
- onClickOutside: () => {
71
- setIsOpened(false);
72
- btnRef.current?.focus();
73
- },
74
- customOffset: [-23, 2],
75
- startPlacementPreference: "top-start",
76
- actionRef,
77
- minWidth: width,
78
- maxHeight: 300,
79
- HeaderComp: Header,
80
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
81
- import_styled.PaginationDropdownButton,
82
- {
83
- buttonType: "raw",
84
- innerRef: btnRef,
85
- "aria-pressed": isOpened,
86
- "aria-label": `${pageSize} rows per page. Press to select rows per page`,
87
- "data-testid": import_PaginationDataTestID.PAGINATION_DATA_TESTID.PER_PAGE_SELECTOR,
88
- ...globalAttributes,
89
- ...xstyledAttributes,
90
- onClick: buttonOnClick,
91
- children: [
92
- pageSize,
93
- " / page",
94
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_icons.ChevronDown, { color: ["brand-primary", "700"] })
95
- ]
96
- }
97
- )
98
- }
99
- );
100
- };
101
- DSPerPageSelector.displayName = import_DSPaginationDefinitions.PerPageSelectorName;
102
- const DSPerPageSelectorWithSchema = (0, import_ds_props_helpers.describe)(DSPerPageSelector).description("Per Page Selector");
103
- DSPerPageSelectorWithSchema.propTypes = import_react_desc_prop_types.DSPerPageSelectorPropTypesSchema;
39
+ var import_DSPerPageSelector = require("./DSPerPageSelector.js");
40
+ var import_constants = require("./constants/index.js");
104
41
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../../src/parts/DSPerPageSelector/index.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["import React, { useMemo } from 'react';\nimport { describe, useMemoMergePropsWithDefault, useValidateTypescriptPropTypes } from '@elliemae/ds-props-helpers';\nimport type { DSDropdownMenuT } from '@elliemae/ds-dropdownmenu-v2';\nimport { DSDropdownMenuV2 } from '@elliemae/ds-dropdownmenu-v2';\nimport { ChevronDown } from '@elliemae/ds-icons';\nimport type { DSButtonT } from '@elliemae/ds-button-v2';\nimport { perPageSelectorDefaultProps, DSPerPageSelectorPropTypesSchema } from '../../react-desc-prop-types.js';\nimport { PaginationDropdownButton } from '../../styled.js';\nimport { PerPageSelectorName } from '../../DSPaginationDefinitions.js';\nimport { usePerPageSelector } from './usePerPageSelector.js';\nimport { PAGINATION_DATA_TESTID } from '../../PaginationDataTestID.js';\nimport type { DSPaginationT } from '../../react-desc-prop-types.js';\n\nconst Header = () => <>Per Page</>;\n\nexport const DSPerPageSelector: React.ComponentType<DSPaginationT.PerPageSelectorProps> = (props) => {\n const propsWithDefault = useMemoMergePropsWithDefault<DSPaginationT.PerPageSelectorInternalProps>(\n props,\n perPageSelectorDefaultProps,\n );\n useValidateTypescriptPropTypes(propsWithDefault, DSPerPageSelectorPropTypesSchema, PerPageSelectorName);\n\n const { pageSize, onPageSizeChange } = propsWithDefault;\n\n const { actionRef, btnRef, width, isOpened, setIsOpened, options, globalAttributes, xstyledAttributes } =\n usePerPageSelector(propsWithDefault);\n\n const buttonOnClick: DSButtonT.Props['onClick'] = useMemo(() => {\n if (globalAttributes.onClick) return globalAttributes.onClick as DSButtonT.Props['onClick'];\n return () => setIsOpened((prev) => !prev);\n }, [globalAttributes.onClick, setIsOpened]);\n\n return (\n <DSDropdownMenuV2\n isOpened={isOpened}\n options={options}\n selectedOptions={{ [pageSize.toString()]: true }}\n onOptionClick={(_, clickedOption) => {\n onPageSizeChange((clickedOption as DSDropdownMenuT.ItemSingleOptions).value as number);\n setIsOpened(false);\n btnRef.current?.focus();\n }}\n onClickOutside={() => {\n setIsOpened(false);\n btnRef.current?.focus();\n }}\n customOffset={[-23, 2]}\n startPlacementPreference=\"top-start\"\n actionRef={actionRef}\n minWidth={width}\n maxHeight={300}\n HeaderComp={Header}\n >\n <PaginationDropdownButton\n buttonType=\"raw\"\n innerRef={btnRef}\n aria-pressed={isOpened}\n aria-label={`${pageSize} rows per page. Press to select rows per page`}\n data-testid={PAGINATION_DATA_TESTID.PER_PAGE_SELECTOR}\n {...globalAttributes}\n {...xstyledAttributes}\n onClick={buttonOnClick}\n >\n {pageSize} / page\n <ChevronDown color={['brand-primary', '700']} />\n </PaginationDropdownButton>\n </DSDropdownMenuV2>\n );\n};\n\nDSPerPageSelector.displayName = PerPageSelectorName;\nexport const DSPerPageSelectorWithSchema = describe(DSPerPageSelector).description('Per Page Selector');\nDSPerPageSelectorWithSchema.propTypes = DSPerPageSelectorPropTypesSchema;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADaF;AAbrB,mBAA+B;AAC/B,8BAAuF;AAEvF,gCAAiC;AACjC,sBAA4B;AAE5B,mCAA8E;AAC9E,oBAAyC;AACzC,qCAAoC;AACpC,gCAAmC;AACnC,kCAAuC;AAGvC,MAAM,SAAS,MAAM,2EAAE,sBAAQ;AAExB,MAAM,oBAA6E,CAAC,UAAU;AACnG,QAAM,uBAAmB;AAAA,IACvB;AAAA,IACA;AAAA,EACF;AACA,8DAA+B,kBAAkB,+DAAkC,kDAAmB;AAEtG,QAAM,EAAE,UAAU,iBAAiB,IAAI;AAEvC,QAAM,EAAE,WAAW,QAAQ,OAAO,UAAU,aAAa,SAAS,kBAAkB,kBAAkB,QACpG,8CAAmB,gBAAgB;AAErC,QAAM,oBAA4C,sBAAQ,MAAM;AAC9D,QAAI,iBAAiB,QAAS,QAAO,iBAAiB;AACtD,WAAO,MAAM,YAAY,CAAC,SAAS,CAAC,IAAI;AAAA,EAC1C,GAAG,CAAC,iBAAiB,SAAS,WAAW,CAAC;AAE1C,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA,iBAAiB,EAAE,CAAC,SAAS,SAAS,CAAC,GAAG,KAAK;AAAA,MAC/C,eAAe,CAAC,GAAG,kBAAkB;AACnC,yBAAkB,cAAoD,KAAe;AACrF,oBAAY,KAAK;AACjB,eAAO,SAAS,MAAM;AAAA,MACxB;AAAA,MACA,gBAAgB,MAAM;AACpB,oBAAY,KAAK;AACjB,eAAO,SAAS,MAAM;AAAA,MACxB;AAAA,MACA,cAAc,CAAC,KAAK,CAAC;AAAA,MACrB,0BAAyB;AAAA,MACzB;AAAA,MACA,UAAU;AAAA,MACV,WAAW;AAAA,MACX,YAAY;AAAA,MAEZ;AAAA,QAAC;AAAA;AAAA,UACC,YAAW;AAAA,UACX,UAAU;AAAA,UACV,gBAAc;AAAA,UACd,cAAY,GAAG,QAAQ;AAAA,UACvB,eAAa,mDAAuB;AAAA,UACnC,GAAG;AAAA,UACH,GAAG;AAAA,UACJ,SAAS;AAAA,UAER;AAAA;AAAA,YAAS;AAAA,YACV,4CAAC,+BAAY,OAAO,CAAC,iBAAiB,KAAK,GAAG;AAAA;AAAA;AAAA,MAChD;AAAA;AAAA,EACF;AAEJ;AAEA,kBAAkB,cAAc;AACzB,MAAM,kCAA8B,kCAAS,iBAAiB,EAAE,YAAY,mBAAmB;AACtG,4BAA4B,YAAY;",
3
+ "sources": ["../../../../src/parts/DSPerPageSelector/index.ts", "../../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["export { DSPerPageSelector, DSPerPageSelectorWithSchema } from './DSPerPageSelector.js';\nexport { DSPerPageSelectorName, PER_PAGE_SELECTOR_DATA_TESTID, PER_PAGE_SELECTOR_SLOTS } from './constants/index.js';\nexport type { DSPerPageSelectorT } from './react-desc-prop-types.js';\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,+BAA+D;AAC/D,uBAA8F;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var react_desc_prop_types_exports = {};
30
+ __export(react_desc_prop_types_exports, {
31
+ DSPerPageSelectorPropTypes: () => DSPerPageSelectorPropTypes,
32
+ DSPerPageSelectorPropTypesSchema: () => DSPerPageSelectorPropTypesSchema,
33
+ defaultProps: () => defaultProps
34
+ });
35
+ module.exports = __toCommonJS(react_desc_prop_types_exports);
36
+ var React = __toESM(require("react"));
37
+ var import_ds_props_helpers = require("@elliemae/ds-props-helpers");
38
+ var import_constants = require("./constants/index.js");
39
+ const defaultProps = {
40
+ pageSize: 10,
41
+ onPageSizeChange: () => null,
42
+ perPageStep: 5,
43
+ minPerPage: 0,
44
+ maxPerPage: 100
45
+ };
46
+ const DSPerPageSelectorPropTypes = {
47
+ ...(0, import_ds_props_helpers.getPropsPerSlotPropTypes)(import_constants.DSPaginationName, import_constants.PER_PAGE_SELECTOR_SLOTS),
48
+ ...import_ds_props_helpers.globalAttributesPropTypes,
49
+ ...import_ds_props_helpers.xstyledPropTypes,
50
+ pageSize: import_ds_props_helpers.PropTypes.number.description("The current page size").defaultValue(10),
51
+ onPageSizeChange: import_ds_props_helpers.PropTypes.func.description("Function invoked when the page size changes").defaultValue(() => null),
52
+ perPageOptions: import_ds_props_helpers.PropTypes.arrayOf(import_ds_props_helpers.PropTypes.oneOfType([import_ds_props_helpers.PropTypes.number, import_ds_props_helpers.PropTypes.object])).description("The available options for page size").defaultValue([10]),
53
+ minPerPage: import_ds_props_helpers.PropTypes.number.description("Min for the per page options").defaultValue(0),
54
+ maxPerPage: import_ds_props_helpers.PropTypes.number.description("Max for the per page options").defaultValue(100),
55
+ perPageStep: import_ds_props_helpers.PropTypes.number.description("Step for the per page options").defaultValue(5)
56
+ };
57
+ const DSPerPageSelectorPropTypesSchema = DSPerPageSelectorPropTypes;
58
+ //# sourceMappingURL=react-desc-prop-types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/parts/DSPerPageSelector/react-desc-prop-types.ts", "../../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["/* eslint-disable @typescript-eslint/no-empty-interface */\nimport type { DSDropdownMenuT } from '@elliemae/ds-dropdownmenu-v2';\nimport type { DSPropTypesSchema, GlobalAttributesT, ValidationMap, XstyledProps } from '@elliemae/ds-props-helpers';\nimport {\n PropTypes,\n getPropsPerSlotPropTypes,\n globalAttributesPropTypes,\n xstyledPropTypes,\n} from '@elliemae/ds-props-helpers';\nimport { type TypescriptHelpersT } from '@elliemae/ds-typescript-helpers';\nimport { DSPaginationName, PER_PAGE_SELECTOR_SLOTS } from './constants/index.js';\n\nexport declare namespace DSPerPageSelectorT {\n export type SlotFunctionArguments = {\n dsPaginationPerPageSelector: () => object;\n };\n export interface RequiredProps {}\n\n export interface DefaultProps {\n pageSize: number;\n onPageSizeChange: (pageSize: number) => void;\n perPageStep: number;\n minPerPage: number;\n maxPerPage: number;\n }\n\n export interface OptionalProps\n extends TypescriptHelpersT.PropsForGlobalOnSlots<typeof DSPaginationName, typeof PER_PAGE_SELECTOR_SLOTS> {\n perPageOptions?: (number | DSDropdownMenuT.ItemSingleOptions)[];\n }\n export interface Props\n extends Partial<DefaultProps>,\n OptionalProps,\n Omit<GlobalAttributesT<HTMLElement>, keyof DefaultProps | keyof XstyledProps>,\n XstyledProps,\n RequiredProps {}\n\n export interface InternalProps\n extends DefaultProps,\n OptionalProps,\n Omit<GlobalAttributesT<HTMLElement>, keyof DefaultProps | keyof XstyledProps>,\n XstyledProps,\n RequiredProps {}\n}\n\nexport const defaultProps: DSPerPageSelectorT.DefaultProps = {\n pageSize: 10,\n onPageSizeChange: () => null,\n perPageStep: 5,\n minPerPage: 0,\n maxPerPage: 100,\n};\n\nexport const DSPerPageSelectorPropTypes: DSPropTypesSchema<DSPerPageSelectorT.Props> = {\n ...getPropsPerSlotPropTypes(DSPaginationName, PER_PAGE_SELECTOR_SLOTS),\n ...globalAttributesPropTypes,\n ...xstyledPropTypes,\n pageSize: PropTypes.number.description('The current page size').defaultValue(10),\n onPageSizeChange: PropTypes.func.description('Function invoked when the page size changes').defaultValue(() => null),\n perPageOptions: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.object]))\n .description('The available options for page size')\n .defaultValue([10]),\n minPerPage: PropTypes.number.description('Min for the per page options').defaultValue(0),\n maxPerPage: PropTypes.number.description('Max for the per page options').defaultValue(100),\n perPageStep: PropTypes.number.description('Step for the per page options').defaultValue(5),\n};\n\nexport const DSPerPageSelectorPropTypesSchema =\n DSPerPageSelectorPropTypes as unknown as ValidationMap<DSPerPageSelectorT.Props>;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADGvB,8BAKO;AAEP,uBAA0D;AAmCnD,MAAM,eAAgD;AAAA,EAC3D,UAAU;AAAA,EACV,kBAAkB,MAAM;AAAA,EACxB,aAAa;AAAA,EACb,YAAY;AAAA,EACZ,YAAY;AACd;AAEO,MAAM,6BAA0E;AAAA,EACrF,OAAG,kDAAyB,mCAAkB,wCAAuB;AAAA,EACrE,GAAG;AAAA,EACH,GAAG;AAAA,EACH,UAAU,kCAAU,OAAO,YAAY,uBAAuB,EAAE,aAAa,EAAE;AAAA,EAC/E,kBAAkB,kCAAU,KAAK,YAAY,6CAA6C,EAAE,aAAa,MAAM,IAAI;AAAA,EACnH,gBAAgB,kCAAU,QAAQ,kCAAU,UAAU,CAAC,kCAAU,QAAQ,kCAAU,MAAM,CAAC,CAAC,EACxF,YAAY,qCAAqC,EACjD,aAAa,CAAC,EAAE,CAAC;AAAA,EACpB,YAAY,kCAAU,OAAO,YAAY,8BAA8B,EAAE,aAAa,CAAC;AAAA,EACvF,YAAY,kCAAU,OAAO,YAAY,8BAA8B,EAAE,aAAa,GAAG;AAAA,EACzF,aAAa,kCAAU,OAAO,YAAY,+BAA+B,EAAE,aAAa,CAAC;AAC3F;AAEO,MAAM,mCACX;",
6
+ "names": []
7
+ }