@proef/common-ui 0.0.0-stage → 2.2.1

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 (452) hide show
  1. package/dist/esm/assets/imagem-6ee08a37d9.png +0 -0
  2. package/dist/esm/assets/imagem-6fcae1b87b.png +0 -0
  3. package/dist/esm/index.js +324 -0
  4. package/dist/esm/index.js.map +1 -0
  5. package/dist/esm/legacy/assets/svgs/proef-footer-logo.svg.js +5 -0
  6. package/dist/esm/legacy/assets/svgs/proef-footer-logo.svg.js.map +1 -0
  7. package/dist/esm/legacy/components/atoms/Acronym/Acronym.css +43 -0
  8. package/dist/esm/legacy/components/atoms/Acronym/Acronym.js +31 -0
  9. package/dist/esm/legacy/components/atoms/Acronym/Acronym.js.map +1 -0
  10. package/dist/esm/legacy/components/atoms/BreadCrumb/BreadCrumb.css +36 -0
  11. package/dist/esm/legacy/components/atoms/BreadCrumb/BreadCrumb.js +57 -0
  12. package/dist/esm/legacy/components/atoms/BreadCrumb/BreadCrumb.js.map +1 -0
  13. package/dist/esm/legacy/components/atoms/Button/variants/ActionButton.css +218 -0
  14. package/dist/esm/legacy/components/atoms/Button/variants/ActionButton.js +50 -0
  15. package/dist/esm/legacy/components/atoms/Button/variants/ActionButton.js.map +1 -0
  16. package/dist/esm/legacy/components/atoms/Button/variants/FilterButton.css +56 -0
  17. package/dist/esm/legacy/components/atoms/Button/variants/FilterButton.js +34 -0
  18. package/dist/esm/legacy/components/atoms/Button/variants/FilterButton.js.map +1 -0
  19. package/dist/esm/legacy/components/atoms/Button/variants/IconButton.css +74 -0
  20. package/dist/esm/legacy/components/atoms/Button/variants/IconButton.js +29 -0
  21. package/dist/esm/legacy/components/atoms/Button/variants/IconButton.js.map +1 -0
  22. package/dist/esm/legacy/components/atoms/Button/variants/MainButton.css +99 -0
  23. package/dist/esm/legacy/components/atoms/Button/variants/MainButton.js +36 -0
  24. package/dist/esm/legacy/components/atoms/Button/variants/MainButton.js.map +1 -0
  25. package/dist/esm/legacy/components/atoms/Button/variants/TabButton.css +63 -0
  26. package/dist/esm/legacy/components/atoms/Button/variants/TabButton.js +21 -0
  27. package/dist/esm/legacy/components/atoms/Button/variants/TabButton.js.map +1 -0
  28. package/dist/esm/legacy/components/atoms/Field/Field.css +171 -0
  29. package/dist/esm/legacy/components/atoms/Field/Field.js +70 -0
  30. package/dist/esm/legacy/components/atoms/Field/Field.js.map +1 -0
  31. package/dist/esm/legacy/components/atoms/IconText/IconText.css +10 -0
  32. package/dist/esm/legacy/components/atoms/IconText/IconText.js +25 -0
  33. package/dist/esm/legacy/components/atoms/IconText/IconText.js.map +1 -0
  34. package/dist/esm/legacy/components/atoms/Icone/Icone.js +24 -0
  35. package/dist/esm/legacy/components/atoms/Icone/Icone.js.map +1 -0
  36. package/dist/esm/legacy/components/atoms/Input/Input.css +12 -0
  37. package/dist/esm/legacy/components/atoms/Input/Input.js +28 -0
  38. package/dist/esm/legacy/components/atoms/Input/Input.js.map +1 -0
  39. package/dist/esm/legacy/components/atoms/InputData/InputData.js +25 -0
  40. package/dist/esm/legacy/components/atoms/InputData/InputData.js.map +1 -0
  41. package/dist/esm/legacy/components/atoms/Label/Label.css +192 -0
  42. package/dist/esm/legacy/components/atoms/Label/Label.js +13 -0
  43. package/dist/esm/legacy/components/atoms/Label/Label.js.map +1 -0
  44. package/dist/esm/legacy/components/atoms/MultiTagPickerTag/MultiTagPickerTag.css +40 -0
  45. package/dist/esm/legacy/components/atoms/MultiTagPickerTag/MultiTagPickerTag.js +21 -0
  46. package/dist/esm/legacy/components/atoms/MultiTagPickerTag/MultiTagPickerTag.js.map +1 -0
  47. package/dist/esm/legacy/components/atoms/Select/Select.css +16 -0
  48. package/dist/esm/legacy/components/atoms/Select/Select.js +27 -0
  49. package/dist/esm/legacy/components/atoms/Select/Select.js.map +1 -0
  50. package/dist/esm/legacy/components/atoms/Stack/Stack.js +20 -0
  51. package/dist/esm/legacy/components/atoms/Stack/Stack.js.map +1 -0
  52. package/dist/esm/legacy/components/atoms/Switch/CustomSwitch.css +36 -0
  53. package/dist/esm/legacy/components/atoms/Switch/CustomSwitch.js +29 -0
  54. package/dist/esm/legacy/components/atoms/Switch/CustomSwitch.js.map +1 -0
  55. package/dist/esm/legacy/components/charts/Charts.js +349 -0
  56. package/dist/esm/legacy/components/charts/Charts.js.map +1 -0
  57. package/dist/esm/legacy/components/layout/AppLauncher/AppLauncher.js +100 -0
  58. package/dist/esm/legacy/components/layout/AppLauncher/AppLauncher.js.map +1 -0
  59. package/dist/esm/legacy/components/layout/Error/Error.css +20 -0
  60. package/dist/esm/legacy/components/layout/Error/Error.js +12 -0
  61. package/dist/esm/legacy/components/layout/Error/Error.js.map +1 -0
  62. package/dist/esm/legacy/components/layout/Footer/Footer.css +42 -0
  63. package/dist/esm/legacy/components/layout/Footer/Footer.js +23 -0
  64. package/dist/esm/legacy/components/layout/Footer/Footer.js.map +1 -0
  65. package/dist/esm/legacy/components/layout/Header/Header.css +66 -0
  66. package/dist/esm/legacy/components/layout/Header/Header.js +37 -0
  67. package/dist/esm/legacy/components/layout/Header/Header.js.map +1 -0
  68. package/dist/esm/legacy/components/layout/Layout/Layout.js +31 -0
  69. package/dist/esm/legacy/components/layout/Layout/Layout.js.map +1 -0
  70. package/dist/esm/legacy/components/layout/Sidebar/Sidebar.js +38 -0
  71. package/dist/esm/legacy/components/layout/Sidebar/Sidebar.js.map +1 -0
  72. package/dist/esm/legacy/components/layout/Spinner/Spinner.css +10 -0
  73. package/dist/esm/legacy/components/layout/Spinner/Spinner.js +19 -0
  74. package/dist/esm/legacy/components/layout/Spinner/Spinner.js.map +1 -0
  75. package/dist/esm/legacy/components/layout/TopBar/TopBar.js +34 -0
  76. package/dist/esm/legacy/components/layout/TopBar/TopBar.js.map +1 -0
  77. package/dist/esm/legacy/components/layout/TopNavLayout/TopNavLayout.js +82 -0
  78. package/dist/esm/legacy/components/layout/TopNavLayout/TopNavLayout.js.map +1 -0
  79. package/dist/esm/legacy/components/molecules/BarraValor/BarraValor.js +25 -0
  80. package/dist/esm/legacy/components/molecules/BarraValor/BarraValor.js.map +1 -0
  81. package/dist/esm/legacy/components/molecules/ColumnPicker/ColumnPicker.js +246 -0
  82. package/dist/esm/legacy/components/molecules/ColumnPicker/ColumnPicker.js.map +1 -0
  83. package/dist/esm/legacy/components/molecules/ConfirmModal/ConfirmModal.css +3 -0
  84. package/dist/esm/legacy/components/molecules/ConfirmModal/ConfirmModal.js +33 -0
  85. package/dist/esm/legacy/components/molecules/ConfirmModal/ConfirmModal.js.map +1 -0
  86. package/dist/esm/legacy/components/molecules/DataTable/DataTable.js +1259 -0
  87. package/dist/esm/legacy/components/molecules/DataTable/DataTable.js.map +1 -0
  88. package/dist/esm/legacy/components/molecules/FileDropzone/FileDropzone.js +68 -0
  89. package/dist/esm/legacy/components/molecules/FileDropzone/FileDropzone.js.map +1 -0
  90. package/dist/esm/legacy/components/molecules/LanguageSwitcher/LanguageSwitcher.js +96 -0
  91. package/dist/esm/legacy/components/molecules/LanguageSwitcher/LanguageSwitcher.js.map +1 -0
  92. package/dist/esm/legacy/components/molecules/Modal/Modal.css +54 -0
  93. package/dist/esm/legacy/components/molecules/Modal/Modal.js +64 -0
  94. package/dist/esm/legacy/components/molecules/Modal/Modal.js.map +1 -0
  95. package/dist/esm/legacy/components/molecules/MultiTagPicker/MultiTagPicker.css +97 -0
  96. package/dist/esm/legacy/components/molecules/MultiTagPicker/MultiTagPicker.js +113 -0
  97. package/dist/esm/legacy/components/molecules/MultiTagPicker/MultiTagPicker.js.map +1 -0
  98. package/dist/esm/legacy/components/molecules/PhotoAvatar/PhotoAvatar.js +114 -0
  99. package/dist/esm/legacy/components/molecules/PhotoAvatar/PhotoAvatar.js.map +1 -0
  100. package/dist/esm/legacy/components/molecules/SeletorPesquisa/SeletorPesquisa.js +116 -0
  101. package/dist/esm/legacy/components/molecules/SeletorPesquisa/SeletorPesquisa.js.map +1 -0
  102. package/dist/esm/legacy/components/molecules/Sidebar/Sidebar.css +69 -0
  103. package/dist/esm/legacy/components/molecules/Sidebar/Sidebar.js +62 -0
  104. package/dist/esm/legacy/components/molecules/Sidebar/Sidebar.js.map +1 -0
  105. package/dist/esm/legacy/components/molecules/UserAvatar/UserAvatar.js +23 -0
  106. package/dist/esm/legacy/components/molecules/UserAvatar/UserAvatar.js.map +1 -0
  107. package/dist/esm/legacy/components/organisms/GanttChart/GanttChart.js +162 -0
  108. package/dist/esm/legacy/components/organisms/GanttChart/GanttChart.js.map +1 -0
  109. package/dist/esm/legacy/components/organisms/Kanban/Kanban.js +88 -0
  110. package/dist/esm/legacy/components/organisms/Kanban/Kanban.js.map +1 -0
  111. package/dist/esm/legacy/components/organisms/LazyLoader/LazyLoader.js +87 -0
  112. package/dist/esm/legacy/components/organisms/LazyLoader/LazyLoader.js.map +1 -0
  113. package/dist/esm/legacy/components/organisms/MapaPontos/MapaPontos.js +427 -0
  114. package/dist/esm/legacy/components/organisms/MapaPontos/MapaPontos.js.map +1 -0
  115. package/dist/esm/legacy/components/organisms/PainelFiltros/PainelFiltros.js +218 -0
  116. package/dist/esm/legacy/components/organisms/PainelFiltros/PainelFiltros.js.map +1 -0
  117. package/dist/esm/legacy/components/organisms/PesquisaRapida/PesquisaRapida.js +147 -0
  118. package/dist/esm/legacy/components/organisms/PesquisaRapida/PesquisaRapida.js.map +1 -0
  119. package/dist/esm/legacy/components/organisms/Profile/Profile.css +26 -0
  120. package/dist/esm/legacy/components/organisms/Profile/Profile.js +26 -0
  121. package/dist/esm/legacy/components/organisms/Profile/Profile.js.map +1 -0
  122. package/dist/esm/legacy/components/organisms/RoleGuard/RoleGuard.js +79 -0
  123. package/dist/esm/legacy/components/organisms/RoleGuard/RoleGuard.js.map +1 -0
  124. package/dist/esm/legacy/components/organisms/Selector/Selector.css +87 -0
  125. package/dist/esm/legacy/components/organisms/Selector/Selector.js +181 -0
  126. package/dist/esm/legacy/components/organisms/Selector/Selector.js.map +1 -0
  127. package/dist/esm/legacy/components/organisms/StatusMatrix/StatusMatrix.js +115 -0
  128. package/dist/esm/legacy/components/organisms/StatusMatrix/StatusMatrix.js.map +1 -0
  129. package/dist/esm/legacy/components/ui/Avisos.js +33 -0
  130. package/dist/esm/legacy/components/ui/Avisos.js.map +1 -0
  131. package/dist/esm/legacy/components/ui/BarraAcoes.js +19 -0
  132. package/dist/esm/legacy/components/ui/BarraAcoes.js.map +1 -0
  133. package/dist/esm/legacy/components/ui/CabecalhoPagina.js +19 -0
  134. package/dist/esm/legacy/components/ui/CabecalhoPagina.js.map +1 -0
  135. package/dist/esm/legacy/components/ui/CaixaPesquisa.js +9 -0
  136. package/dist/esm/legacy/components/ui/CaixaPesquisa.js.map +1 -0
  137. package/dist/esm/legacy/components/ui/Confirmacao.js +34 -0
  138. package/dist/esm/legacy/components/ui/Confirmacao.js.map +1 -0
  139. package/dist/esm/legacy/components/ui/Escolha.js +41 -0
  140. package/dist/esm/legacy/components/ui/Escolha.js.map +1 -0
  141. package/dist/esm/legacy/components/ui/FaixaAviso.js +19 -0
  142. package/dist/esm/legacy/components/ui/FaixaAviso.js.map +1 -0
  143. package/dist/esm/legacy/components/ui/MenuAcoes.js +116 -0
  144. package/dist/esm/legacy/components/ui/MenuAcoes.js.map +1 -0
  145. package/dist/esm/legacy/components/ui/Passos.js +32 -0
  146. package/dist/esm/legacy/components/ui/Passos.js.map +1 -0
  147. package/dist/esm/legacy/components/ui/Separadores.js +17 -0
  148. package/dist/esm/legacy/components/ui/Separadores.js.map +1 -0
  149. package/dist/esm/legacy/components/ui/TextoAuto.js +33 -0
  150. package/dist/esm/legacy/components/ui/TextoAuto.js.map +1 -0
  151. package/dist/esm/legacy/components/ui/Ui.js +263 -0
  152. package/dist/esm/legacy/components/ui/Ui.js.map +1 -0
  153. package/dist/esm/legacy/components/ui/painelFlutuante.js +13 -0
  154. package/dist/esm/legacy/components/ui/painelFlutuante.js.map +1 -0
  155. package/dist/esm/legacy/constants/Colors.js +33 -0
  156. package/dist/esm/legacy/constants/Colors.js.map +1 -0
  157. package/dist/esm/legacy/constants/FontWeight.js +35 -0
  158. package/dist/esm/legacy/constants/FontWeight.js.map +1 -0
  159. package/dist/esm/legacy/contexts/apiContext.js +25 -0
  160. package/dist/esm/legacy/contexts/apiContext.js.map +1 -0
  161. package/dist/esm/legacy/contexts/authContext.js +85 -0
  162. package/dist/esm/legacy/contexts/authContext.js.map +1 -0
  163. package/dist/esm/legacy/contexts/socketContext.js +34 -0
  164. package/dist/esm/legacy/contexts/socketContext.js.map +1 -0
  165. package/dist/esm/legacy/hooks/useApi.js +62 -0
  166. package/dist/esm/legacy/hooks/useApi.js.map +1 -0
  167. package/dist/esm/legacy/pages/Error/ErrorPage.css +18 -0
  168. package/dist/esm/legacy/pages/Error/ErrorPage.js +50 -0
  169. package/dist/esm/legacy/pages/Error/ErrorPage.js.map +1 -0
  170. package/dist/esm/legacy/pages/Loading/Loading.css +46 -0
  171. package/dist/esm/legacy/pages/Loading/Loading.js +9 -0
  172. package/dist/esm/legacy/pages/Loading/Loading.js.map +1 -0
  173. package/dist/esm/legacy/pages/Login/LoginScreen.js +46 -0
  174. package/dist/esm/legacy/pages/Login/LoginScreen.js.map +1 -0
  175. package/dist/esm/legacy/pages/NotFound/NotFound.css +21 -0
  176. package/dist/esm/legacy/pages/NotFound/NotFound.js +24 -0
  177. package/dist/esm/legacy/pages/NotFound/NotFound.js.map +1 -0
  178. package/dist/esm/legacy/styles/themes/ButtonThemes.js +28 -0
  179. package/dist/esm/legacy/styles/themes/ButtonThemes.js.map +1 -0
  180. package/dist/esm/legacy/styles/utils/utils.js +7 -0
  181. package/dist/esm/legacy/styles/utils/utils.js.map +1 -0
  182. package/dist/esm/legacy/utils/stringUtils.js +35 -0
  183. package/dist/esm/legacy/utils/stringUtils.js.map +1 -0
  184. package/dist/esm/v1/capabilities/documents/QRScanning/scanQRCodes.js +157 -0
  185. package/dist/esm/v1/capabilities/documents/QRScanning/scanQRCodes.js.map +1 -0
  186. package/dist/esm/v1/capabilities/overlay/useFloatingPanel.js +52 -0
  187. package/dist/esm/v1/capabilities/overlay/useFloatingPanel.js.map +1 -0
  188. package/dist/esm/v1/capabilities/theme/useIsDark.js +15 -0
  189. package/dist/esm/v1/capabilities/theme/useIsDark.js.map +1 -0
  190. package/dist/esm/v1/capabilities/theme/useTheme.js +66 -0
  191. package/dist/esm/v1/capabilities/theme/useTheme.js.map +1 -0
  192. package/dist/esm/v1/components/data/Pagination/Pagination.js +66 -0
  193. package/dist/esm/v1/components/data/Pagination/Pagination.js.map +1 -0
  194. package/dist/esm/v1/components/documents/DocumentDropzone/DocumentDropzone.js +307 -0
  195. package/dist/esm/v1/components/documents/DocumentDropzone/DocumentDropzone.js.map +1 -0
  196. package/dist/esm/v1/components/feedback/Toast/Toast.js +105 -0
  197. package/dist/esm/v1/components/feedback/Toast/Toast.js.map +1 -0
  198. package/dist/esm/v1/components/forms/FormField/FormField.js +59 -0
  199. package/dist/esm/v1/components/forms/FormField/FormField.js.map +1 -0
  200. package/dist/esm/v1/components/forms/FormGrid/FormGrid.js +20 -0
  201. package/dist/esm/v1/components/forms/FormGrid/FormGrid.js.map +1 -0
  202. package/dist/esm/v1/components/layout/AppShell/AppShell.js +89 -0
  203. package/dist/esm/v1/components/layout/AppShell/AppShell.js.map +1 -0
  204. package/dist/esm/v1/components/layout/Page/Page.js +16 -0
  205. package/dist/esm/v1/components/layout/Page/Page.js.map +1 -0
  206. package/dist/esm/v1/components/layout/PageHeader/PageHeader.js +26 -0
  207. package/dist/esm/v1/components/layout/PageHeader/PageHeader.js.map +1 -0
  208. package/dist/esm/v1/components/layout/SideNav/SideNav.js +287 -0
  209. package/dist/esm/v1/components/layout/SideNav/SideNav.js.map +1 -0
  210. package/dist/esm/v1/components/layout/navTrail.js +19 -0
  211. package/dist/esm/v1/components/layout/navTrail.js.map +1 -0
  212. package/dist/esm/v1/components/lists/ListFinder/ListFinder.js +271 -0
  213. package/dist/esm/v1/components/lists/ListFinder/ListFinder.js.map +1 -0
  214. package/dist/esm/v1/components/lists/ListFinder/labels.js +18 -0
  215. package/dist/esm/v1/components/lists/ListFinder/labels.js.map +1 -0
  216. package/dist/esm/v1/components/overlays/ConfirmDialog/ConfirmDialog.js +95 -0
  217. package/dist/esm/v1/components/overlays/ConfirmDialog/ConfirmDialog.js.map +1 -0
  218. package/dist/esm/v1/components/overlays/Dialog/Dialog.js +141 -0
  219. package/dist/esm/v1/components/overlays/Dialog/Dialog.js.map +1 -0
  220. package/dist/esm/v1/components/overlays/Tooltip/Tooltip.js +98 -0
  221. package/dist/esm/v1/components/overlays/Tooltip/Tooltip.js.map +1 -0
  222. package/dist/esm/v1/components/overlays/Tooltip/TooltipLayer.js +84 -0
  223. package/dist/esm/v1/components/overlays/Tooltip/TooltipLayer.js.map +1 -0
  224. package/dist/esm/v1/components/overlays/Tooltip/TooltipPanel.js +33 -0
  225. package/dist/esm/v1/components/overlays/Tooltip/TooltipPanel.js.map +1 -0
  226. package/dist/esm/v1/components/overlays/topLayer.js +28 -0
  227. package/dist/esm/v1/components/overlays/topLayer.js.map +1 -0
  228. package/dist/esm/v1/components/tables/PaginatedTable/PaginatedTable.js +50 -0
  229. package/dist/esm/v1/components/tables/PaginatedTable/PaginatedTable.js.map +1 -0
  230. package/dist/esm/v1/components/tables/Table/ColumnFilter.js +292 -0
  231. package/dist/esm/v1/components/tables/Table/ColumnFilter.js.map +1 -0
  232. package/dist/esm/v1/components/tables/Table/OverlayScrollbar.js +129 -0
  233. package/dist/esm/v1/components/tables/Table/OverlayScrollbar.js.map +1 -0
  234. package/dist/esm/v1/components/tables/Table/Table.js +1410 -0
  235. package/dist/esm/v1/components/tables/Table/Table.js.map +1 -0
  236. package/dist/esm/v1/components/tables/Table/labels.js +44 -0
  237. package/dist/esm/v1/components/tables/Table/labels.js.map +1 -0
  238. package/dist/esm/v1/foundations/icons/icons.js +227 -0
  239. package/dist/esm/v1/foundations/icons/icons.js.map +1 -0
  240. package/dist/esm/v1/primitives/buttons/Button/Button.js +41 -0
  241. package/dist/esm/v1/primitives/buttons/Button/Button.js.map +1 -0
  242. package/dist/esm/v1/primitives/buttons/SegmentedControl/SegmentedControl.js +65 -0
  243. package/dist/esm/v1/primitives/buttons/SegmentedControl/SegmentedControl.js.map +1 -0
  244. package/dist/esm/v1/primitives/buttons/SegmentedControl/segmentedStyles.js +10 -0
  245. package/dist/esm/v1/primitives/buttons/SegmentedControl/segmentedStyles.js.map +1 -0
  246. package/dist/esm/v1/primitives/display/Avatar/Avatar.js +120 -0
  247. package/dist/esm/v1/primitives/display/Avatar/Avatar.js.map +1 -0
  248. package/dist/esm/v1/primitives/display/Badge/Badge.js +23 -0
  249. package/dist/esm/v1/primitives/display/Badge/Badge.js.map +1 -0
  250. package/dist/esm/v1/primitives/display/Card/Card.js +22 -0
  251. package/dist/esm/v1/primitives/display/Card/Card.js.map +1 -0
  252. package/dist/esm/v1/primitives/display/FilterChips/FilterChips.js +45 -0
  253. package/dist/esm/v1/primitives/display/FilterChips/FilterChips.js.map +1 -0
  254. package/dist/esm/v1/primitives/display/Kpi/Kpi.js +103 -0
  255. package/dist/esm/v1/primitives/display/Kpi/Kpi.js.map +1 -0
  256. package/dist/esm/v1/primitives/display/Notice/Notice.js +71 -0
  257. package/dist/esm/v1/primitives/display/Notice/Notice.js.map +1 -0
  258. package/dist/esm/v1/primitives/display/Person/Person.js +14 -0
  259. package/dist/esm/v1/primitives/display/Person/Person.js.map +1 -0
  260. package/dist/esm/v1/primitives/display/RichText/RichText.js +12 -0
  261. package/dist/esm/v1/primitives/display/RichText/RichText.js.map +1 -0
  262. package/dist/esm/v1/primitives/display/RichText/utils.js +56 -0
  263. package/dist/esm/v1/primitives/display/RichText/utils.js.map +1 -0
  264. package/dist/esm/v1/primitives/documents/PdfPreview/PdfPreview.js +137 -0
  265. package/dist/esm/v1/primitives/documents/PdfPreview/PdfPreview.js.map +1 -0
  266. package/dist/esm/v1/primitives/documents/PdfPreview/pdfjs.js +26 -0
  267. package/dist/esm/v1/primitives/documents/PdfPreview/pdfjs.js.map +1 -0
  268. package/dist/esm/v1/primitives/forms/Checkbox/Checkbox.js +37 -0
  269. package/dist/esm/v1/primitives/forms/Checkbox/Checkbox.js.map +1 -0
  270. package/dist/esm/v1/primitives/forms/DateInput/DateInput.js +150 -0
  271. package/dist/esm/v1/primitives/forms/DateInput/DateInput.js.map +1 -0
  272. package/dist/esm/v1/primitives/forms/LookupInput/LookupInput.js +37 -0
  273. package/dist/esm/v1/primitives/forms/LookupInput/LookupInput.js.map +1 -0
  274. package/dist/esm/v1/primitives/forms/RichTextEditor/RichTextEditor.js +253 -0
  275. package/dist/esm/v1/primitives/forms/RichTextEditor/RichTextEditor.js.map +1 -0
  276. package/dist/esm/v1/primitives/forms/SearchInput/SearchInput.js +43 -0
  277. package/dist/esm/v1/primitives/forms/SearchInput/SearchInput.js.map +1 -0
  278. package/dist/esm/v1/primitives/forms/SelectInput/SelectInput.js +207 -0
  279. package/dist/esm/v1/primitives/forms/SelectInput/SelectInput.js.map +1 -0
  280. package/dist/esm/v1/primitives/forms/TextArea/TextArea.js +75 -0
  281. package/dist/esm/v1/primitives/forms/TextArea/TextArea.js.map +1 -0
  282. package/dist/esm/v1/primitives/forms/TextInput/TextInput.js +21 -0
  283. package/dist/esm/v1/primitives/forms/TextInput/TextInput.js.map +1 -0
  284. package/dist/esm/v1/primitives/forms/field.js +14 -0
  285. package/dist/esm/v1/primitives/forms/field.js.map +1 -0
  286. package/dist/esm/v1/primitives/lists/ListItem/ListItem.js +73 -0
  287. package/dist/esm/v1/primitives/lists/ListItem/ListItem.js.map +1 -0
  288. package/dist/esm/v1/primitives/navigation/Tabs/Tabs.js +96 -0
  289. package/dist/esm/v1/primitives/navigation/Tabs/Tabs.js.map +1 -0
  290. package/dist/style.components.css +3 -0
  291. package/dist/style.css +2 -0
  292. package/dist/style.layered.css +2 -0
  293. package/dist/tailwind.css +24 -0
  294. package/dist/theme-boot.js +1 -0
  295. package/dist/theme.css +265 -0
  296. package/dist/tokens.css +121 -0
  297. package/dist/types/index.d.ts +14 -0
  298. package/dist/types/legacy/components/atoms/Acronym/Acronym.d.ts +11 -0
  299. package/dist/types/legacy/components/atoms/BreadCrumb/BreadCrumb.d.ts +9 -0
  300. package/dist/types/legacy/components/atoms/Button/variants/ActionButton.d.ts +14 -0
  301. package/dist/types/legacy/components/atoms/Button/variants/FilterButton.d.ts +12 -0
  302. package/dist/types/legacy/components/atoms/Button/variants/IconButton.d.ts +22 -0
  303. package/dist/types/legacy/components/atoms/Button/variants/MainButton.d.ts +17 -0
  304. package/dist/types/legacy/components/atoms/Button/variants/TabButton.d.ts +14 -0
  305. package/dist/types/legacy/components/atoms/Field/Field.d.ts +15 -0
  306. package/dist/types/legacy/components/atoms/IconText/IconText.d.ts +12 -0
  307. package/dist/types/legacy/components/atoms/Icone/Icone.d.ts +31 -0
  308. package/dist/types/legacy/components/atoms/Input/Input.d.ts +13 -0
  309. package/dist/types/legacy/components/atoms/InputData/InputData.d.ts +38 -0
  310. package/dist/types/legacy/components/atoms/Label/Label.d.ts +11 -0
  311. package/dist/types/legacy/components/atoms/MultiTagPickerTag/MultiTagPickerTag.d.ts +10 -0
  312. package/dist/types/legacy/components/atoms/SearchSelect/SearchSelect.d.ts +15 -0
  313. package/dist/types/legacy/components/atoms/Select/Select.d.ts +16 -0
  314. package/dist/types/legacy/components/atoms/Stack/Stack.d.ts +9 -0
  315. package/dist/types/legacy/components/atoms/Switch/CustomSwitch.d.ts +12 -0
  316. package/dist/types/legacy/components/charts/Charts.d.ts +149 -0
  317. package/dist/types/legacy/components/layout/AppLauncher/AppLauncher.d.ts +35 -0
  318. package/dist/types/legacy/components/layout/Error/Error.d.ts +8 -0
  319. package/dist/types/legacy/components/layout/Footer/Footer.d.ts +11 -0
  320. package/dist/types/legacy/components/layout/Header/Header.d.ts +16 -0
  321. package/dist/types/legacy/components/layout/Layout/Layout.d.ts +35 -0
  322. package/dist/types/legacy/components/layout/Sidebar/Sidebar.d.ts +56 -0
  323. package/dist/types/legacy/components/layout/Spinner/Spinner.d.ts +5 -0
  324. package/dist/types/legacy/components/layout/TopBar/TopBar.d.ts +10 -0
  325. package/dist/types/legacy/components/layout/TopNavLayout/TopNavLayout.d.ts +43 -0
  326. package/dist/types/legacy/components/molecules/BarraValor/BarraValor.d.ts +28 -0
  327. package/dist/types/legacy/components/molecules/ColumnPicker/ColumnPicker.d.ts +116 -0
  328. package/dist/types/legacy/components/molecules/ConfirmModal/ConfirmModal.d.ts +13 -0
  329. package/dist/types/legacy/components/molecules/DataTable/DataTable.d.ts +344 -0
  330. package/dist/types/legacy/components/molecules/FileDropzone/FileDropzone.d.ts +25 -0
  331. package/dist/types/legacy/components/molecules/LanguageSwitcher/LanguageSwitcher.d.ts +33 -0
  332. package/dist/types/legacy/components/molecules/Modal/Modal.d.ts +22 -0
  333. package/dist/types/legacy/components/molecules/MultiTagPicker/MultiTagPicker.d.ts +25 -0
  334. package/dist/types/legacy/components/molecules/PhotoAvatar/PhotoAvatar.d.ts +34 -0
  335. package/dist/types/legacy/components/molecules/SeletorPesquisa/SeletorPesquisa.d.ts +48 -0
  336. package/dist/types/legacy/components/molecules/Sidebar/Sidebar.d.ts +12 -0
  337. package/dist/types/legacy/components/molecules/UserAvatar/UserAvatar.d.ts +19 -0
  338. package/dist/types/legacy/components/organisms/GanttChart/GanttChart.d.ts +62 -0
  339. package/dist/types/legacy/components/organisms/Kanban/Kanban.d.ts +44 -0
  340. package/dist/types/legacy/components/organisms/LazyLoader/LazyLoader.d.ts +16 -0
  341. package/dist/types/legacy/components/organisms/MapaPontos/MapaPontos.d.ts +206 -0
  342. package/dist/types/legacy/components/organisms/PainelFiltros/PainelFiltros.d.ts +69 -0
  343. package/dist/types/legacy/components/organisms/PesquisaRapida/PesquisaRapida.d.ts +53 -0
  344. package/dist/types/legacy/components/organisms/Profile/Profile.d.ts +12 -0
  345. package/dist/types/legacy/components/organisms/RoleGuard/RoleGuard.d.ts +37 -0
  346. package/dist/types/legacy/components/organisms/Selector/Selector.d.ts +20 -0
  347. package/dist/types/legacy/components/organisms/StatusMatrix/StatusMatrix.d.ts +54 -0
  348. package/dist/types/legacy/components/ui/Avisos.d.ts +33 -0
  349. package/dist/types/legacy/components/ui/BarraAcoes.d.ts +19 -0
  350. package/dist/types/legacy/components/ui/CabecalhoPagina.d.ts +23 -0
  351. package/dist/types/legacy/components/ui/CaixaPesquisa.d.ts +14 -0
  352. package/dist/types/legacy/components/ui/Confirmacao.d.ts +24 -0
  353. package/dist/types/legacy/components/ui/Escolha.d.ts +35 -0
  354. package/dist/types/legacy/components/ui/FaixaAviso.d.ts +19 -0
  355. package/dist/types/legacy/components/ui/MenuAcoes.d.ts +31 -0
  356. package/dist/types/legacy/components/ui/Passos.d.ts +31 -0
  357. package/dist/types/legacy/components/ui/Separadores.d.ts +19 -0
  358. package/dist/types/legacy/components/ui/TextoAuto.d.ts +23 -0
  359. package/dist/types/legacy/components/ui/Ui.d.ts +181 -0
  360. package/dist/types/legacy/components/ui/painelFlutuante.d.ts +16 -0
  361. package/dist/types/legacy/constants/Colors.d.ts +28 -0
  362. package/dist/types/legacy/constants/FontWeight.d.ts +9 -0
  363. package/dist/types/legacy/contexts/apiContext.d.ts +10 -0
  364. package/dist/types/legacy/contexts/authContext.d.ts +31 -0
  365. package/dist/types/legacy/contexts/socketContext.d.ts +16 -0
  366. package/dist/types/legacy/exports/assets.d.ts +0 -0
  367. package/dist/types/legacy/exports/atoms.d.ts +19 -0
  368. package/dist/types/legacy/exports/charts.d.ts +2 -0
  369. package/dist/types/legacy/exports/constants.d.ts +0 -0
  370. package/dist/types/legacy/exports/contexts.d.ts +3 -0
  371. package/dist/types/legacy/exports/hooks.d.ts +4 -0
  372. package/dist/types/legacy/exports/layout.d.ts +14 -0
  373. package/dist/types/legacy/exports/molecules.d.ts +21 -0
  374. package/dist/types/legacy/exports/organisms.d.ts +17 -0
  375. package/dist/types/legacy/exports/pages.d.ts +5 -0
  376. package/dist/types/legacy/exports/styles.d.ts +2 -0
  377. package/dist/types/legacy/exports/types.d.ts +7 -0
  378. package/dist/types/legacy/exports/ui.d.ts +24 -0
  379. package/dist/types/legacy/exports/utils.d.ts +1 -0
  380. package/dist/types/legacy/hooks/useApi.d.ts +19 -0
  381. package/dist/types/legacy/pages/Error/ErrorPage.d.ts +16 -0
  382. package/dist/types/legacy/pages/Loading/Loading.d.ts +8 -0
  383. package/dist/types/legacy/pages/Login/LoginScreen.d.ts +42 -0
  384. package/dist/types/legacy/pages/NotFound/NotFound.d.ts +8 -0
  385. package/dist/types/legacy/styles/themes/ButtonThemes.d.ts +6 -0
  386. package/dist/types/legacy/styles/utils/utils.d.ts +2 -0
  387. package/dist/types/legacy/types/Fetcher.d.ts +5 -0
  388. package/dist/types/legacy/types/LoggedUser.d.ts +10 -0
  389. package/dist/types/legacy/types/SelectableElement.d.ts +6 -0
  390. package/dist/types/legacy/types/SidebarMenu.d.ts +12 -0
  391. package/dist/types/legacy/types/themes/AcronymThemes.d.ts +4 -0
  392. package/dist/types/legacy/types/themes/ButtonThemes.d.ts +21 -0
  393. package/dist/types/legacy/types/themes/CustomSwitchThemes.d.ts +4 -0
  394. package/dist/types/legacy/types/themes/IconTextThemes.d.ts +6 -0
  395. package/dist/types/legacy/utils/keycloak.d.ts +0 -0
  396. package/dist/types/legacy/utils/stringUtils.d.ts +6 -0
  397. package/dist/types/v1/capabilities/documents/QRScanning/scanQRCodes.d.ts +25 -0
  398. package/dist/types/v1/capabilities/overlay/useFloatingPanel.d.ts +20 -0
  399. package/dist/types/v1/capabilities/theme/useIsDark.d.ts +10 -0
  400. package/dist/types/v1/capabilities/theme/useTheme.d.ts +29 -0
  401. package/dist/types/v1/components/data/Pagination/Pagination.d.ts +33 -0
  402. package/dist/types/v1/components/documents/DocumentDropzone/DocumentDropzone.d.ts +60 -0
  403. package/dist/types/v1/components/feedback/Toast/Toast.d.ts +51 -0
  404. package/dist/types/v1/components/forms/FormField/FormField.d.ts +44 -0
  405. package/dist/types/v1/components/forms/FormGrid/FormGrid.d.ts +23 -0
  406. package/dist/types/v1/components/layout/AppShell/AppShell.d.ts +35 -0
  407. package/dist/types/v1/components/layout/Page/Page.d.ts +23 -0
  408. package/dist/types/v1/components/layout/PageHeader/PageHeader.d.ts +35 -0
  409. package/dist/types/v1/components/layout/SideNav/SideNav.d.ts +92 -0
  410. package/dist/types/v1/components/layout/navTrail.d.ts +15 -0
  411. package/dist/types/v1/components/lists/ListFinder/ListFinder.d.ts +86 -0
  412. package/dist/types/v1/components/lists/ListFinder/labels.d.ts +24 -0
  413. package/dist/types/v1/components/overlays/ConfirmDialog/ConfirmDialog.d.ts +59 -0
  414. package/dist/types/v1/components/overlays/Dialog/Dialog.d.ts +66 -0
  415. package/dist/types/v1/components/overlays/Tooltip/Tooltip.d.ts +34 -0
  416. package/dist/types/v1/components/overlays/Tooltip/TooltipLayer.d.ts +18 -0
  417. package/dist/types/v1/components/overlays/Tooltip/TooltipPanel.d.ts +23 -0
  418. package/dist/types/v1/components/overlays/topLayer.d.ts +23 -0
  419. package/dist/types/v1/components/tables/PaginatedTable/PaginatedTable.d.ts +41 -0
  420. package/dist/types/v1/components/tables/Table/ColumnFilter.d.ts +48 -0
  421. package/dist/types/v1/components/tables/Table/OverlayScrollbar.d.ts +34 -0
  422. package/dist/types/v1/components/tables/Table/Table.d.ts +250 -0
  423. package/dist/types/v1/components/tables/Table/labels.d.ts +54 -0
  424. package/dist/types/v1/foundations/icons/icons.d.ts +81 -0
  425. package/dist/types/v1/index.d.ts +86 -0
  426. package/dist/types/v1/primitives/buttons/Button/Button.d.ts +35 -0
  427. package/dist/types/v1/primitives/buttons/SegmentedControl/SegmentedControl.d.ts +28 -0
  428. package/dist/types/v1/primitives/buttons/SegmentedControl/segmentedStyles.d.ts +16 -0
  429. package/dist/types/v1/primitives/display/Avatar/Avatar.d.ts +30 -0
  430. package/dist/types/v1/primitives/display/Badge/Badge.d.ts +25 -0
  431. package/dist/types/v1/primitives/display/Card/Card.d.ts +22 -0
  432. package/dist/types/v1/primitives/display/FilterChips/FilterChips.d.ts +33 -0
  433. package/dist/types/v1/primitives/display/Kpi/Kpi.d.ts +68 -0
  434. package/dist/types/v1/primitives/display/Notice/Notice.d.ts +29 -0
  435. package/dist/types/v1/primitives/display/Person/Person.d.ts +15 -0
  436. package/dist/types/v1/primitives/display/RichText/RichText.d.ts +17 -0
  437. package/dist/types/v1/primitives/display/RichText/utils.d.ts +22 -0
  438. package/dist/types/v1/primitives/documents/PdfPreview/PdfPreview.d.ts +17 -0
  439. package/dist/types/v1/primitives/documents/PdfPreview/pdfjs.d.ts +11 -0
  440. package/dist/types/v1/primitives/forms/Checkbox/Checkbox.d.ts +25 -0
  441. package/dist/types/v1/primitives/forms/DateInput/DateInput.d.ts +43 -0
  442. package/dist/types/v1/primitives/forms/LookupInput/LookupInput.d.ts +28 -0
  443. package/dist/types/v1/primitives/forms/RichTextEditor/RichTextEditor.d.ts +64 -0
  444. package/dist/types/v1/primitives/forms/SearchInput/SearchInput.d.ts +23 -0
  445. package/dist/types/v1/primitives/forms/SelectInput/SelectInput.d.ts +70 -0
  446. package/dist/types/v1/primitives/forms/TextArea/TextArea.d.ts +40 -0
  447. package/dist/types/v1/primitives/forms/TextInput/TextInput.d.ts +16 -0
  448. package/dist/types/v1/primitives/forms/field.d.ts +22 -0
  449. package/dist/types/v1/primitives/lists/ListItem/ListItem.d.ts +67 -0
  450. package/dist/types/v1/primitives/navigation/Tabs/Tabs.d.ts +58 -0
  451. package/package.json +125 -6
  452. package/README.md +0 -3
@@ -0,0 +1,92 @@
1
+ import React from 'react';
2
+ export type SideNavTheme = 'light' | 'dark' | 'system';
3
+ export interface SideNavBadge {
4
+ count: number;
5
+ /** `attention` (amarelo, por omissão): coisas à espera da pessoa. `alert` (laranja): à espera de outro circuito (ex: CAB). */
6
+ tone?: 'attention' | 'alert';
7
+ /** O que o número conta, para o tooltip e leitores de ecrã (ex: "Aprovações pendentes"). */
8
+ label?: string;
9
+ }
10
+ export interface SideNavItem {
11
+ /** Rota da app, ou URL completo com `external`. */
12
+ to: string;
13
+ label: string;
14
+ /** Componente de ícone que aceita `size` e `className` (ex: um ícone do lucide-react). */
15
+ icon: React.ComponentType<{
16
+ size?: number;
17
+ className?: string;
18
+ }>;
19
+ /** Chave do grupo. Os itens do mesmo grupo aparecem juntos, por baixo do título do grupo. */
20
+ group?: string;
21
+ /** Só fica ativo na rota exata (como o `end` do NavLink). */
22
+ end?: boolean;
23
+ /** Abre num separador novo, fora da app. */
24
+ external?: boolean;
25
+ /** Contadores ao lado do texto. Os que têm `count` 0 não aparecem. */
26
+ badges?: SideNavBadge[];
27
+ }
28
+ export interface SideNavLabels {
29
+ closeMenu: string;
30
+ expandMenu: string;
31
+ collapseMenu: string;
32
+ /** Antes do nome do grupo, no botão que o abre/fecha (ex: "Abrir Recursos"). */
33
+ openGroup: string;
34
+ closeGroup: string;
35
+ theme: string;
36
+ light: string;
37
+ dark: string;
38
+ system: string;
39
+ language: string;
40
+ logout: string;
41
+ deployedAt: string;
42
+ }
43
+ export declare const SIDENAV_LABELS: SideNavLabels;
44
+ export interface SideNavProps {
45
+ menu: SideNavItem[];
46
+ /** Título de cada grupo do menu, pela chave (`group`). Sem título, aparece a chave. */
47
+ groupLabels?: Record<string, string>;
48
+ /** Por baixo do logótipo (ex: "IT Portal"). */
49
+ appTitle?: string;
50
+ /** Foto ou iniciais da pessoa, no topo do menu. */
51
+ avatar?: React.ReactNode;
52
+ /** Sem isto, não há botão de terminar sessão. */
53
+ onLogout?: () => void;
54
+ /** Escolha de idioma no rodapé. Só aparece com `languages` e `onLanguageChange`. */
55
+ languages?: {
56
+ code: string;
57
+ label: string;
58
+ }[];
59
+ currentLanguage?: string;
60
+ onLanguageChange?: (code: string) => void;
61
+ /**
62
+ * Escolha de tema no rodapé. Só aparece com `onThemeChange`. O menu só
63
+ * mostra a escolha: pôr a classe `.dark` no `<html>` é da app.
64
+ */
65
+ theme?: SideNavTheme;
66
+ onThemeChange?: (theme: SideNavTheme) => void;
67
+ /** Quando foi feito o build, no fundo do menu. A app decide a quem o mostra (ex: só administradores). */
68
+ deployedAt?: string | number | Date;
69
+ /** Conteúdo extra no rodapé, por cima do tema (ex: um filtro global). Recebe se o menu está expandido. */
70
+ footer?: (expanded: boolean) => React.ReactNode;
71
+ labels?: Partial<SideNavLabels>;
72
+ /** Aberto (256px) ou fechado (só ícones; em ecrãs pequenos, escondido). A app guarda este estado. */
73
+ open: boolean;
74
+ onOpenChange: (open: boolean) => void;
75
+ }
76
+ /** Abaixo desta largura o menu é uma gaveta por cima da página; acima ocupa espaço (aberto ou só ícones). */
77
+ export declare const DRAWER_MAX = 1024;
78
+ export declare const isDrawer: () => boolean;
79
+ /**
80
+ * Menu lateral navy da app, fixo à esquerda. Normalmente usa-se através do
81
+ * `AppShell`, que também trata da página ao lado.
82
+ *
83
+ * - **Ecrãs grandes** (≥ 1024px): aberto ocupa 256px; fechado fica só com os
84
+ * ícones (80px) e abre por cima da página ao passar o rato.
85
+ * - **Ecrãs pequenos**: escondido quando fechado; aberto fica por cima da
86
+ * página e fecha ao escolher uma página.
87
+ * - **Grupos**: abertos por omissão, fecham com um clique no título. Só com os
88
+ * ícones, fica aberto apenas o grupo da página atual.
89
+ *
90
+ * Precisa de estar dentro de um Router do react-router.
91
+ */
92
+ export default function SideNav({ menu, groupLabels, appTitle, avatar, onLogout, languages, currentLanguage, onLanguageChange, theme, onThemeChange, deployedAt, footer, labels: labelsProp, open, onOpenChange, }: SideNavProps): React.JSX.Element;
@@ -0,0 +1,15 @@
1
+ import type { SideNavItem } from './SideNav/SideNav';
2
+ /** Onde a página atual está no menu: o grupo (se tiver) e o nome da entrada. Uso interno. */
3
+ export interface NavTrail {
4
+ group?: string;
5
+ page: string;
6
+ }
7
+ export declare const NavTrailContext: import("react").Context<NavTrail | null>;
8
+ /** O lugar da página atual no menu do `AppShell`; `null` fora de um `AppShell` ou fora do menu. */
9
+ export declare const useNavTrail: () => NavTrail | null;
10
+ /**
11
+ * A entrada do menu da rota atual: a de caminho mais comprido que é o início da
12
+ * rota (ex: `/equipamentos/rececao` antes de `/equipamentos`). Ligações
13
+ * externas não contam.
14
+ */
15
+ export declare function findNavTrail(menu: SideNavItem[], groupLabels: Record<string, string>, pathname: string): NavTrail | null;
@@ -0,0 +1,86 @@
1
+ import React from 'react';
2
+ import { type ListItemContent } from '../../../primitives/lists/ListItem/ListItem';
3
+ import { type ListFinderLabels } from './labels';
4
+ export interface ListFinderProps<T> {
5
+ /** As linhas: todas, ou só a página atual quando o servidor pagina (com `total`). */
6
+ items: T[];
7
+ /** Uma chave única por linha (ex: o id). */
8
+ itemKey: (item: T) => string;
9
+ /** O que cada linha mostra: as partes do [ListItem](?path=/docs/v1-primitives-lists-listitem--docs). */
10
+ itemContent: (item: T) => ListItemContent;
11
+ /** A linha aberta (fica realçada). */
12
+ activeKey?: string | null;
13
+ /** Ao clicar numa linha: normalmente, abri-la ao lado. */
14
+ onItemClick?: (item: T) => void;
15
+ /** As marcadas. Só há caixas de marcar com `onSelectionChange`. */
16
+ selectedKeys?: ReadonlySet<string>;
17
+ onSelectionChange?: (keys: Set<string>) => void;
18
+ /** Filtros ao lado do voltar, por cima da pesquisa (ex: um ou dois selects, no traço fino da pesquisa). */
19
+ filters?: React.ReactNode;
20
+ /** Com isto aparece um ‹ à esquerda, para fechar ou esconder a lista. */
21
+ onBack?: () => void;
22
+ /** Com a caixa de pesquisa (o normal). Sem ela, a lista mostra tudo o que recebe. */
23
+ searchable?: boolean;
24
+ /** O texto da pesquisa. Sem ele, a pesquisa guarda o seu. */
25
+ search?: string;
26
+ onSearchChange?: (search: string) => void;
27
+ /**
28
+ * O texto onde a pesquisa procura, em cada linha. Com isto, a lista filtra-se
29
+ * sozinha (sem acentos nem maiúsculas); sem isto, quem filtra é a app (ex: o
30
+ * servidor, com `onSearchChange`). Uma lista colada (uma por linha, ou
31
+ * separadas por vírgulas) mostra as que tiverem qualquer uma delas.
32
+ */
33
+ searchText?: (item: T) => string;
34
+ /**
35
+ * Como se chega ao resto da lista:
36
+ * - `'pages'` (o normal): páginas numeradas no rodapé;
37
+ * - `'scroll'`: uma lista só, que vai mostrando mais `pageSize` linhas ao
38
+ * chegar ao fundo. Com o servidor a paginar, `items` são as que já vieram e
39
+ * pede-se o lote seguinte com `onLoadMore`.
40
+ */
41
+ mode?: 'pages' | 'scroll';
42
+ /** Com `mode="scroll"` e o servidor a paginar: buscar o lote seguinte (junta-o a `items`). */
43
+ onLoadMore?: () => void;
44
+ /** O servidor pagina: quantas linhas há lá ao todo. `items` é só a página atual (ou, a rolar, as que já vieram). */
45
+ total?: number;
46
+ /** A página atual (1, 2, ...), quando o servidor pagina. */
47
+ page?: number;
48
+ onPageChange?: (page: number) => void;
49
+ /** Quantas linhas por página. Com o servidor a paginar, quantas ele manda. */
50
+ pageSize?: number;
51
+ /** A carregar: sem linhas ainda, mostra o esqueleto delas. A rolar, com linhas, é o lote seguinte a chegar. */
52
+ loading?: boolean;
53
+ labels?: Partial<ListFinderLabels>;
54
+ /** No rodapé, a seguir à contagem: algo pequeno da app (ex: um ícone de ajuda com as regras da lista). */
55
+ footerExtra?: React.ReactNode;
56
+ /** Com a moldura à volta (o normal). Sem ela, para ir dentro de um painel que já tem a sua. */
57
+ bordered?: boolean;
58
+ className?: string;
59
+ }
60
+ /**
61
+ * Parte o texto da pesquisa nos termos a procurar: vírgula, ponto e vírgula,
62
+ * tab e mudança de linha. O espaço só separa quando tudo o que lá está são
63
+ * números de 6 ou mais dígitos (uma coluna colada de uma folha de cálculo);
64
+ * fora disso "vila real" é uma coisa só, e não "vila" ou "real".
65
+ */
66
+ export declare function termosDaPesquisa(texto: string): string[];
67
+ /**
68
+ * Uma lista para encontrar e escolher: filtros e pesquisa em cima, as linhas
69
+ * ([ListItem](?path=/docs/v1-primitives-lists-listitem--docs)) a rolar no meio e
70
+ * as páginas (ou a contagem, a rolar) em baixo. Pensada para a coluna ao lado do que se abre (a lista à
71
+ * esquerda, o detalhe da linha escolhida à direita).
72
+ *
73
+ * Enche a altura do pai. O topo, a barra de "selecionar todos" e o rodapé
74
+ * ficam sempre no sítio: só as linhas rolam.
75
+ *
76
+ * - **Pesquisa**: com `searchText` filtra sozinha; sem ele, a app filtra
77
+ * (`search`/`onSearchChange`).
78
+ * - **Páginas**: pagina sozinha (`pageSize`), ou é o servidor (`total`, `page`,
79
+ * `onPageChange`).
80
+ * - **A rolar** (`mode="scroll"`): sem páginas, vai mostrando mais ao descer;
81
+ * com o servidor, `items` são as que já vieram e `onLoadMore` pede mais.
82
+ * - **Realce**: o que se procurou realça-se no código e no título das linhas.
83
+ * - **Marcar vários**: com `onSelectionChange`. O "selecionar todos" só marca
84
+ * as linhas à vista, nunca as que não se veem.
85
+ */
86
+ export default function ListFinder<T>({ items, itemKey, itemContent, activeKey, onItemClick, selectedKeys, onSelectionChange, filters, onBack, searchable, search: pesquisaDeFora, onSearchChange, searchText, mode, onLoadMore, total, page, onPageChange, pageSize, loading, labels, footerExtra, bordered, className, }: ListFinderProps<T>): React.JSX.Element;
@@ -0,0 +1,24 @@
1
+ /** Os textos do ListFinder. A app troca os que quiser pela prop `labels`. */
2
+ export interface ListFinderLabels {
3
+ /** Dentro da caixa de pesquisa. */
4
+ searchPlaceholder: string;
5
+ /** O nome da caixa de pesquisa, para leitores de ecrã. */
6
+ search: string;
7
+ /** O botão de voltar (só com `onBack`). */
8
+ back: string;
9
+ /** O nome do que a lista tem, no singular ou plural (ex: "1 ordem", "20 ordens"). */
10
+ itemsNoun: (count: number) => string;
11
+ /** A caixa de cima, sem nenhuma marcada. */
12
+ selectVisible: (count: number) => string;
13
+ /** A caixa de cima, com algumas marcadas. */
14
+ selectedCount: (selected: number, visible: number) => string;
15
+ clearSelection: string;
16
+ /** A caixa de marcar de cada linha (ex: "Marcar P-020000"). */
17
+ checkItem: (key: string) => string;
18
+ /** Sem nada para mostrar. */
19
+ empty: string;
20
+ loading: string;
21
+ pagination: string;
22
+ page: string;
23
+ }
24
+ export declare const DEFAULT_LIST_FINDER_LABELS: ListFinderLabels;
@@ -0,0 +1,59 @@
1
+ import React from 'react';
2
+ export interface ConfirmDialogProps {
3
+ open: boolean;
4
+ /** Curto: a ação ou a pergunta (ex: "Apagar despesa"). */
5
+ title: React.ReactNode;
6
+ /** A pergunta ou o que vai acontecer (ex: "Tem a certeza que pretende apagar esta despesa?"). */
7
+ message?: React.ReactNode;
8
+ /** Consequência que a pessoa não adivinha sozinha (ex: "Não se pode desfazer."). Em letra mais pequena. */
9
+ detail?: React.ReactNode;
10
+ /** `danger`: apaga ou não se pode desfazer. O botão fica vermelho e aparece o sinal de atenção. */
11
+ tone?: 'default' | 'danger';
12
+ /** Por omissão: "Confirmar". */
13
+ confirmLabel?: string;
14
+ /** Por omissão: "Cancelar". */
15
+ cancelLabel?: string;
16
+ /** Nome do botão ×, para leitores de ecrã. Por omissão: "Fechar". */
17
+ closeLabel?: string;
18
+ /** A confirmar (ex: à espera do servidor): o botão mostra a roda e a janela não fecha. */
19
+ loading?: boolean;
20
+ /** Uma segunda saída (ex: "Desativar" em vez de apagar). Não fecha a janela sozinha. */
21
+ secondaryAction?: {
22
+ label: string;
23
+ onClick: () => void;
24
+ };
25
+ onConfirm: () => void;
26
+ /** Cancelar, ×, Esc ou clique fora. */
27
+ onCancel: () => void;
28
+ }
29
+ /**
30
+ * Pergunta de sim/não antes de uma ação (ex: apagar, enviar, fechar sem
31
+ * guardar). Substitui o `window.confirm` do browser, que mostra o endereço do
32
+ * servidor, não diz que registo é e só tem "OK".
33
+ *
34
+ * Com `tone="danger"` o foco começa em Cancelar: um Enter por engano não apaga
35
+ * nada. Nos outros casos começa em Confirmar.
36
+ *
37
+ * Para não ter de guardar o estado em cada ecrã, usar `useConfirm()` (com o
38
+ * `ConfirmProvider` à volta da app).
39
+ */
40
+ export default function ConfirmDialog({ open, title, message, detail, tone, confirmLabel, cancelLabel, closeLabel, loading, secondaryAction, onConfirm, onCancel, }: ConfirmDialogProps): React.JSX.Element;
41
+ export type ConfirmOptions = Omit<ConfirmDialogProps, 'open' | 'onConfirm' | 'onCancel' | 'loading'>;
42
+ export interface ConfirmProviderProps {
43
+ children: React.ReactNode;
44
+ /** Textos por omissão dos botões, para a app os traduzir. */
45
+ confirmLabel?: string;
46
+ cancelLabel?: string;
47
+ closeLabel?: string;
48
+ }
49
+ /**
50
+ * Dá o `useConfirm()` a toda a app. Monta-se uma vez, à volta da app.
51
+ */
52
+ export declare function ConfirmProvider({ children, confirmLabel, cancelLabel, closeLabel }: ConfirmProviderProps): React.JSX.Element;
53
+ /**
54
+ * Pergunta e espera pela resposta: `true` se confirmou, `false` se cancelou.
55
+ *
56
+ * const confirm = useConfirm()
57
+ * if (await confirm({ title: 'Apagar despesa', message: 'Tem a certeza?', tone: 'danger', confirmLabel: 'Apagar' })) apagar()
58
+ */
59
+ export declare function useConfirm(): (options: ConfirmOptions) => Promise<boolean>;
@@ -0,0 +1,66 @@
1
+ import React from 'react';
2
+ /**
3
+ * O elemento da janela, para usar como destino de `createPortal` (ex: avisos,
4
+ * confirmações, sobreposições) quando o conteúdo deve ficar junto dela. Um
5
+ * portal para `document.body` também funciona, desde que fique por cima
6
+ * (`z-index` acima de 200). Fora de um Dialog devolve `null`.
7
+ *
8
+ * `createPortal(conteudo, useDialogContainer() ?? document.body)`
9
+ */
10
+ export declare const useDialogContainer: () => HTMLElement | null;
11
+ export interface DialogProps {
12
+ /** Aberta ou fechada. A app guarda este estado. */
13
+ open: boolean;
14
+ /** Pedido para fechar (×, Esc ou clique fora): a app põe `open` a `false`. */
15
+ onClose: () => void;
16
+ /** Normalmente texto; aceita JSX (ex: um nome em negrito). */
17
+ title: React.ReactNode;
18
+ /** Linha por baixo do título (ex: nome · departamento). */
19
+ subtitle?: React.ReactNode;
20
+ /** Botões no rodapé, sempre visíveis (ex: Confirmar, Fechar). */
21
+ footer?: React.ReactNode;
22
+ /**
23
+ * Largura máxima: `sm` 480px, `md` 720px, `lg` 1000px, `xl` até 1600px (95% do ecrã, para janelas com
24
+ * mapa e tabela lado a lado). Nunca passa o ecrã.
25
+ */
26
+ size?: 'sm' | 'md' | 'lg' | 'xl';
27
+ /**
28
+ * Altura: `auto` (por omissão) cresce com o conteúdo; `full` ocupa sempre a
29
+ * altura disponível (útil quando o conteúdo muda de tamanho e a janela não
30
+ * deve saltar). Em ambos, se o conteúdo não couber, o corpo faz scroll.
31
+ */
32
+ height?: 'auto' | 'full';
33
+ /** Fechar ao clicar fora da janela. Por omissão sim; num formulário longo pode valer a pena desligar. */
34
+ closeOnBackdrop?: boolean;
35
+ /** Nome do botão ×, para leitores de ecrã. Por omissão: "Fechar". */
36
+ closeLabel?: string;
37
+ /**
38
+ * Corpo sem margens e sem scroll: o conteúdo ocupa-o todo e gere o seu próprio
39
+ * scroll (ex: passos que deslizam, rodapé próprio de cada passo).
40
+ */
41
+ flush?: boolean;
42
+ children: React.ReactNode;
43
+ }
44
+ /**
45
+ * Janela por cima da página: cabeçalho navy com título, corpo que faz scroll e
46
+ * rodapé com os botões ([Button](?path=/docs/v1-primitives-buttons-button--docs)).
47
+ *
48
+ * É a janela modal da V1 (substitui o `Modal` legacy).
49
+ *
50
+ * Fundo escurecido, Esc para fechar e, ao fechar, o foco volta ao sítio onde
51
+ * estava. Enquanto está aberta, o resto da página fica
52
+ * [inert](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Global_attributes/inert):
53
+ * nem rato, nem teclado, nem leitores de ecrã lhe chegam. Os portais abertos
54
+ * depois dela (seletores, confirmações) continuam a responder.
55
+ *
56
+ * O conteúdo fica montado mesmo com a janela fechada, para poder carregar antes
57
+ * de ela abrir.
58
+ *
59
+ * O tamanho adapta-se ao ecrã só com CSS: nunca passa a largura nem a altura
60
+ * da janela do browser (com uma margem), e acompanha-a quando é
61
+ * redimensionada. O que não couber faz scroll no corpo; o cabeçalho e o
62
+ * rodapé ficam sempre visíveis.
63
+ *
64
+ * **Exemplo completo:** [Formulário em modal](?path=/docs/v1-patterns-forms-formulário-em-modal--docs).
65
+ */
66
+ export default function Dialog({ open, onClose, title, subtitle, footer, size, height, closeOnBackdrop, closeLabel, flush, children, }: DialogProps): React.ReactPortal;
@@ -0,0 +1,34 @@
1
+ import React from 'react';
2
+ export interface TooltipProps {
3
+ /** O que aparece no painel. Aceita JSX (ex: uma lista, um link com `interactive`). Vazio: sem tooltip. */
4
+ content?: React.ReactNode;
5
+ /** @deprecated Nome antigo de `content` (Tooltip legacy). */
6
+ tip?: React.ReactNode;
7
+ /** @deprecated Já não é preciso (o id é gerado); fica para não partir o código legacy. */
8
+ id?: string;
9
+ /** Cabeçalho opcional, separado por uma linha. */
10
+ title?: React.ReactNode;
11
+ /** O elemento que mostra o tooltip ao passar o rato ou com o foco. */
12
+ children: React.ReactNode;
13
+ /** O painel aceita o rato (para clicar em links lá dentro) e fecha com um pequeno atraso. */
14
+ interactive?: boolean;
15
+ /**
16
+ * O painel segue o rato, em vez de ficar por cima do elemento. Para elementos
17
+ * grandes ou células de grelhas (ex: um cronograma), onde o centro do
18
+ * elemento fica longe do rato.
19
+ */
20
+ followCursor?: boolean;
21
+ /** Desliga o tooltip (o elemento aparece na mesma). */
22
+ disabled?: boolean;
23
+ /** Classes do invólucro (um `<span>`), ex: `cursor-help` ou `block`. */
24
+ className?: string;
25
+ }
26
+ /**
27
+ * Tooltip com conteúdo rico à volta de um elemento: aparece por cima dele (ou
28
+ * por baixo, se não couber) ao passar o rato ou com o foco do teclado; Esc
29
+ * fecha. As quebras de linha (`\n`) do texto mantêm-se.
30
+ *
31
+ * Para texto simples, basta o atributo `data-tip` com o `TooltipLayer`
32
+ * montado na raiz, sem embrulhar nada. O painel é o mesmo.
33
+ */
34
+ export default function Tooltip({ content: contentProp, tip, title, children, interactive, followCursor, disabled, className, }: TooltipProps): React.JSX.Element;
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ /**
3
+ * Tooltips de toda a app, por atributo: qualquer elemento com `data-tip` mostra
4
+ * o texto num painel escuro ao passar o rato ou ao receber o foco do teclado.
5
+ * Monta-se uma vez na raiz.
6
+ *
7
+ * <button data-tip="Registar horas" aria-label="Registar horas">…</button>
8
+ * <span data-tip={nome} data-tip-title="Requisitante">…</span>
9
+ *
10
+ * - `data-tip-title`: cabeçalho opcional, separado por uma linha.
11
+ * - Texto com `\n` aparece em várias linhas.
12
+ * - Para conteúdo rico (JSX, links), usar o `Tooltip`.
13
+ * - Substitui o `title` do browser (lento, sem tema, corta texto longo). O
14
+ * tooltip não é lido pelos leitores de ecrã: o elemento continua a precisar
15
+ * do seu nome (`aria-label` ou texto).
16
+ * - Aparece por cima de uma janela (Dialog) aberta.
17
+ */
18
+ export default function TooltipLayer(): React.JSX.Element;
@@ -0,0 +1,23 @@
1
+ import React from 'react';
2
+ /**
3
+ * O painel escuro das tooltips (uso interno): o mesmo para a camada `data-tip`
4
+ * (TooltipLayer) e para o `Tooltip` com conteúdo rico. Fica na camada de cima
5
+ * do browser (`popover`), por cima de uma janela aberta.
6
+ */
7
+ declare const TooltipPanel: React.ForwardRefExoticComponent<{
8
+ id?: string;
9
+ title?: React.ReactNode;
10
+ children: React.ReactNode;
11
+ visible: boolean;
12
+ /** Aceita o rato (para se poder clicar em links lá dentro). */
13
+ interactive?: boolean;
14
+ style?: React.CSSProperties;
15
+ onMouseEnter?: () => void;
16
+ onMouseLeave?: () => void;
17
+ } & React.RefAttributes<HTMLDivElement>>;
18
+ export default TooltipPanel;
19
+ /** Distância ao cursor/elemento e margem mínima ao bordo da janela. */
20
+ export declare const OFFSET = 10;
21
+ export declare const MARGIN = 12;
22
+ /** Encosta o painel dentro da janela. */
23
+ export declare const clamp: (value: number, size: number, max: number) => number;
@@ -0,0 +1,23 @@
1
+ import { type RefObject } from 'react';
2
+ /**
3
+ * Põe um elemento na camada de cima do browser (top layer), por cima de um
4
+ * Dialog aberto. Só para uso interno (avisos, tooltips): o elemento tem de ter
5
+ * `popover="manual"`.
6
+ *
7
+ * Um `<dialog>` aberto com `showModal()` fica por cima de tudo o que está na
8
+ * página, incluindo `position: fixed` com `z-index` alto. Um popover também vai
9
+ * para essa camada, e fica por cima de quem lá entrou antes: por isso `raise()`
10
+ * volta a mostrá-lo quando é preciso que apareça à frente de uma janela que
11
+ * abriu depois.
12
+ *
13
+ * Em browsers sem popover (e no jsdom dos testes) não faz nada: o elemento
14
+ * continua com o seu `z-index`.
15
+ */
16
+ export declare function useTopLayer(ref: RefObject<HTMLElement | null>, visible: boolean): () => void;
17
+ /**
18
+ * Anula a margem, a borda e o scroll que o browser dá aos popovers. O fundo e o
19
+ * espaçamento ficam com cada componente: pôr aqui `bg-transparent`/`p-0` junto
20
+ * com o `bg-…`/`px-…` do componente deixava o resultado à mercê da ordem do CSS
21
+ * (numa app com Tailwind próprio, a tooltip ficava transparente).
22
+ */
23
+ export declare const popoverReset = "m-0 border-0 overflow-visible";
@@ -0,0 +1,41 @@
1
+ import React from 'react';
2
+ import { type TableProps } from '../Table/Table';
3
+ export interface PaginatedTableProps<T> extends TableProps<T> {
4
+ /**
5
+ * Total de linhas no servidor, quando é ele que pagina (`page` e
6
+ * `onPageChange`). É o número da contagem e dá o número de páginas.
7
+ */
8
+ total?: number;
9
+ /**
10
+ * Página atual (a contar de 1), quando é o servidor que pagina: a app pede a
11
+ * página e dá-a em `data`. Sem isto, a tabela pagina-se a si mesma com todas
12
+ * as linhas de `data`.
13
+ */
14
+ page?: number;
15
+ onPageChange?: (page: number) => void;
16
+ /** Tamanhos de página à escolha (ex: `[60, 120, 250, 500]`). Sem isto não há escolha. */
17
+ pageSizeOptions?: number[];
18
+ /**
19
+ * A pessoa escolheu outro tamanho de página. Quando é o servidor que pagina,
20
+ * a app volta à página 1 (ficar na 7.ª com 500 por página caía fora da lista).
21
+ * Sem isto, a tabela guarda a escolha ela própria.
22
+ */
23
+ onPageSizeChange?: (pageSize: number) => void;
24
+ }
25
+ /**
26
+ * A [Table](?path=/docs/v1-components-tables-table--docs) para listas de página inteira: a paginação fica EM CIMA, numa
27
+ * barra com a contagem de linhas, o tamanho de página e os números de página,
28
+ * em vez de no fundo.
29
+ *
30
+ * Funciona de duas maneiras:
31
+ * - **O servidor pagina** (`page`, `onPageChange`, `total`): `data` é a
32
+ * página atual. Com filtros, ordenação ou agrupamento no cabeçalho, a tabela
33
+ * passa a paginar o conjunto completo (`allData`) e a barra mostra as
34
+ * páginas dela.
35
+ * - **Todas as linhas de uma vez** (só `data`): a tabela pagina-se a si mesma.
36
+ *
37
+ * Por omissão ocupa a altura do pai (`fillHeight`), com as barras de scroll
38
+ * por cima das linhas, linhas-esqueleto a carregar e a aresta direita
39
+ * esbatida. Qualquer uma pode ser desligada.
40
+ */
41
+ export default function PaginatedTable<T>({ total, page, onPageChange, pageSizeOptions, onPageSizeChange, pageSize, data, allData, alwaysClient, fillHeight, overlayScrollbars, horizontalScrollbarBelow, skeleton, fadeRight, ...resto }: PaginatedTableProps<T>): React.JSX.Element;
@@ -0,0 +1,48 @@
1
+ import React from 'react';
2
+ import type { TableLabels } from './labels';
3
+ /**
4
+ * O filtro de uma coluna: ordenar, procurar, escolher valores, aplicar.
5
+ *
6
+ * Vive fora do `Table` de propósito. Lá dentro era uma função declarada no
7
+ * corpo do componente, logo uma função NOVA a cada render — e o React
8
+ * desmontava e remontava o popup a cada tecla escrita e a cada opção marcada.
9
+ * Era isso que devolvia a lista de valores ao topo a meio de uma escolha.
10
+ *
11
+ * Nada se aplica até ao "Aplicar". Com a aplicação imediata, cada visto refazia
12
+ * a tabela por baixo: mudava-lhe o tamanho e o conteúdo enquanto se escolhia, e
13
+ * a lista de onde se estava a escolher encolhia à medida que se escolhia.
14
+ *
15
+ * `position: fixed` no `<body>`: como filho da célula, o `overflow` da tabela
16
+ * cortava-o — e era por isso que a caixa da tabela tinha de perder o tecto de
17
+ * altura enquanto um filtro estivesse aberto, o que empurrava a página inteira.
18
+ */
19
+ export declare function ColumnFilter({ labels: L, label, canSort, tipo, valores, seleccionados, intervalo, numero, ordenadaPor, aCarregar, ancora, onOrdenar, onAplicar, onAplicarDatas, onAplicarNumeros, onLimpar, onFechar, }: {
20
+ labels: TableLabels;
21
+ label?: string;
22
+ canSort?: boolean;
23
+ /** `texto` = lista de valores; `data` = De/Até; `numero` = Mín/Máx, ou a lista (botão no topo). */
24
+ tipo: 'texto' | 'data' | 'numero';
25
+ /** Valores distintos da coluna, já contados com os outros filtros activos. */
26
+ valores: string[];
27
+ /** O que está aplicado neste momento — o ponto de partida do rascunho. */
28
+ seleccionados: Set<string>;
29
+ intervalo: {
30
+ from?: string;
31
+ to?: string;
32
+ };
33
+ /** Intervalo numérico aplicado, quando `tipo` é `numero`. */
34
+ numero?: {
35
+ min?: string;
36
+ max?: string;
37
+ };
38
+ ordenadaPor: 'asc' | 'desc' | null;
39
+ aCarregar: boolean;
40
+ /** Rect do botão que abriu isto. */
41
+ ancora: DOMRect;
42
+ onOrdenar?: (dir: 'asc' | 'desc') => void;
43
+ onAplicar: (vals: Set<string>) => void;
44
+ onAplicarDatas?: (de: string, ate: string) => void;
45
+ onAplicarNumeros?: (min: string, max: string) => void;
46
+ onLimpar: () => void;
47
+ onFechar: () => void;
48
+ }): React.ReactPortal;
@@ -0,0 +1,34 @@
1
+ import React from 'react';
2
+ export type Eixo = 'vertical' | 'horizontal';
3
+ /**
4
+ * Barra de scroll desenhada POR CIMA do conteúdo (a da Table com
5
+ * `overlayScrollbars`, nos dois eixos).
6
+ *
7
+ * A barra do browser ocupa espaço: numa grelha de colunas `1fr` nascia ao
8
+ * expandir uma secção e a grelha inteira reflowia de lado; na tabela obrigava
9
+ * o cabeçalho a reservar-lhe uma goteira, e a horizontal punha uma faixa
10
+ * cinzenta por baixo das linhas. Guardar-lhe o espaço de véspera
11
+ * (scrollbar-gutter) deixava uma faixa vazia. Por cima não ocupa nada, e não
12
+ * há nem salto nem faixa.
13
+ *
14
+ * A caixa que rola tem de estar num pai `relative`, e a barra do browser tem
15
+ * de estar escondida (classe `scrollbar-none`). Onde o browser não a souber
16
+ * esconder, fica também a dele — pior, mas não partido.
17
+ *
18
+ * Cinzento médio de propósito: passa por cima de linhas escuras e de linhas
19
+ * brancas, e tem de se ver nas duas.
20
+ */
21
+ export declare function OverlayScrollbar({ alvo, eixo, borda, canto, naBorda }: {
22
+ alvo: HTMLElement | null;
23
+ eixo?: Eixo;
24
+ /** Espessura da borda da caixa do lado onde a pista começa — o cursor começa depois dela. */
25
+ borda?: number;
26
+ /** A outra barra também é sobreposta: deixar-lhe o canto livre. */
27
+ canto?: boolean;
28
+ /**
29
+ * Horizontal: centrada na aresta de baixo da caixa em vez de 3px acima dela —
30
+ * meio por cima das linhas, meio por cima do que vem a seguir (ex: o rodapé da
31
+ * tabela). Tira menos altura visível às linhas.
32
+ */
33
+ naBorda?: boolean;
34
+ }): React.JSX.Element | null;