@apia/components 2.0.8 → 2.0.9

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 (398) hide show
  1. package/dist/index.d.ts +1658 -69
  2. package/dist/index.js +7198 -58
  3. package/dist/index.js.map +1 -1
  4. package/package.json +2 -2
  5. package/dist/components/IconsList/Icon.js +0 -42
  6. package/dist/components/IconsList/Icon.js.map +0 -1
  7. package/dist/components/IconsList/IconWrapper.js +0 -24
  8. package/dist/components/IconsList/IconWrapper.js.map +0 -1
  9. package/dist/components/IconsList/KeyHandler.js +0 -147
  10. package/dist/components/IconsList/KeyHandler.js.map +0 -1
  11. package/dist/components/IconsList/context.js +0 -14
  12. package/dist/components/IconsList/context.js.map +0 -1
  13. package/dist/components/IconsList/index.d.ts +0 -12
  14. package/dist/components/IconsList/index.d.ts.map +0 -1
  15. package/dist/components/IconsList/index.js +0 -119
  16. package/dist/components/IconsList/index.js.map +0 -1
  17. package/dist/components/IconsList/renderers/DefaultIconRenderer.d.ts +0 -7
  18. package/dist/components/IconsList/renderers/DefaultIconRenderer.d.ts.map +0 -1
  19. package/dist/components/IconsList/renderers/DefaultIconRenderer.js +0 -30
  20. package/dist/components/IconsList/renderers/DefaultIconRenderer.js.map +0 -1
  21. package/dist/components/IconsList/store/context.js +0 -9
  22. package/dist/components/IconsList/store/context.js.map +0 -1
  23. package/dist/components/IconsList/store/distinctors.js +0 -42
  24. package/dist/components/IconsList/store/distinctors.js.map +0 -1
  25. package/dist/components/IconsList/store/keysMaker.js +0 -8
  26. package/dist/components/IconsList/store/keysMaker.js.map +0 -1
  27. package/dist/components/IconsList/store/operations.js +0 -138
  28. package/dist/components/IconsList/store/operations.js.map +0 -1
  29. package/dist/components/IconsList/store/state.js +0 -9
  30. package/dist/components/IconsList/store/state.js.map +0 -1
  31. package/dist/components/IconsList/store/useStore.js +0 -52
  32. package/dist/components/IconsList/store/useStore.js.map +0 -1
  33. package/dist/components/IconsList/styles.js +0 -48
  34. package/dist/components/IconsList/styles.js.map +0 -1
  35. package/dist/components/IconsList/types.d.ts +0 -98
  36. package/dist/components/IconsList/types.d.ts.map +0 -1
  37. package/dist/components/IconsList/util.js +0 -46
  38. package/dist/components/IconsList/util.js.map +0 -1
  39. package/dist/components/ListBox/Combobox.js +0 -52
  40. package/dist/components/ListBox/Combobox.js.map +0 -1
  41. package/dist/components/ListBox/ListboxContext.d.ts +0 -35
  42. package/dist/components/ListBox/ListboxContext.d.ts.map +0 -1
  43. package/dist/components/ListBox/ListboxContext.js +0 -6
  44. package/dist/components/ListBox/ListboxContext.js.map +0 -1
  45. package/dist/components/ListBox/ListboxItem.d.ts +0 -17
  46. package/dist/components/ListBox/ListboxItem.d.ts.map +0 -1
  47. package/dist/components/ListBox/ListboxItem.js +0 -67
  48. package/dist/components/ListBox/ListboxItem.js.map +0 -1
  49. package/dist/components/ListBox/ListboxKeyhandler.js +0 -154
  50. package/dist/components/ListBox/ListboxKeyhandler.js.map +0 -1
  51. package/dist/components/ListBox/common.d.ts +0 -46
  52. package/dist/components/ListBox/common.d.ts.map +0 -1
  53. package/dist/components/ListBox/common.js +0 -118
  54. package/dist/components/ListBox/common.js.map +0 -1
  55. package/dist/components/ListBox/index.d.ts +0 -21
  56. package/dist/components/ListBox/index.d.ts.map +0 -1
  57. package/dist/components/ListBox/index.js +0 -71
  58. package/dist/components/ListBox/index.js.map +0 -1
  59. package/dist/components/ListBox/listbox.js +0 -46
  60. package/dist/components/ListBox/listbox.js.map +0 -1
  61. package/dist/components/ListBox/operations.js +0 -330
  62. package/dist/components/ListBox/operations.js.map +0 -1
  63. package/dist/components/ListBox/useIndexedChildren.js +0 -25
  64. package/dist/components/ListBox/useIndexedChildren.js.map +0 -1
  65. package/dist/components/ListBox/useListboxAutofocus.js +0 -48
  66. package/dist/components/ListBox/useListboxAutofocus.js.map +0 -1
  67. package/dist/components/ListBox/useListboxContextValue.js +0 -8
  68. package/dist/components/ListBox/useListboxContextValue.js.map +0 -1
  69. package/dist/components/ListBox/useShoutSelectionChange.js +0 -26
  70. package/dist/components/ListBox/useShoutSelectionChange.js.map +0 -1
  71. package/dist/components/ListBox/useStore.js +0 -36
  72. package/dist/components/ListBox/useStore.js.map +0 -1
  73. package/dist/components/ListBox/useUpdateRowCount.js +0 -19
  74. package/dist/components/ListBox/useUpdateRowCount.js.map +0 -1
  75. package/dist/components/SortableList/SortableListHandler.js +0 -161
  76. package/dist/components/SortableList/SortableListHandler.js.map +0 -1
  77. package/dist/components/SortableList/SortableListItem.d.ts +0 -14
  78. package/dist/components/SortableList/SortableListItem.d.ts.map +0 -1
  79. package/dist/components/SortableList/SortableListItem.js +0 -24
  80. package/dist/components/SortableList/SortableListItem.js.map +0 -1
  81. package/dist/components/SortableList/index.d.ts +0 -21
  82. package/dist/components/SortableList/index.d.ts.map +0 -1
  83. package/dist/components/SortableList/index.js +0 -53
  84. package/dist/components/SortableList/index.js.map +0 -1
  85. package/dist/components/Toolbar/ToolbarController.d.ts +0 -24
  86. package/dist/components/Toolbar/ToolbarController.d.ts.map +0 -1
  87. package/dist/components/Toolbar/ToolbarController.js +0 -50
  88. package/dist/components/Toolbar/ToolbarController.js.map +0 -1
  89. package/dist/components/Toolbar/ToolbarIconButton.d.ts +0 -7
  90. package/dist/components/Toolbar/ToolbarIconButton.d.ts.map +0 -1
  91. package/dist/components/Toolbar/ToolbarIconButton.js +0 -108
  92. package/dist/components/Toolbar/ToolbarIconButton.js.map +0 -1
  93. package/dist/components/Toolbar/ToolbarInput.d.ts +0 -7
  94. package/dist/components/Toolbar/ToolbarInput.d.ts.map +0 -1
  95. package/dist/components/Toolbar/ToolbarInput.js +0 -13
  96. package/dist/components/Toolbar/ToolbarInput.js.map +0 -1
  97. package/dist/components/Toolbar/ToolbarSelect.d.ts +0 -7
  98. package/dist/components/Toolbar/ToolbarSelect.d.ts.map +0 -1
  99. package/dist/components/Toolbar/ToolbarSelect.js +0 -17
  100. package/dist/components/Toolbar/ToolbarSelect.js.map +0 -1
  101. package/dist/components/Toolbar/ToolbarSeparator.d.ts +0 -6
  102. package/dist/components/Toolbar/ToolbarSeparator.d.ts.map +0 -1
  103. package/dist/components/Toolbar/ToolbarSeparator.js +0 -9
  104. package/dist/components/Toolbar/ToolbarSeparator.js.map +0 -1
  105. package/dist/components/Toolbar/ToolbarTextButton.d.ts +0 -9
  106. package/dist/components/Toolbar/ToolbarTextButton.d.ts.map +0 -1
  107. package/dist/components/Toolbar/ToolbarTextButton.js +0 -18
  108. package/dist/components/Toolbar/ToolbarTextButton.js.map +0 -1
  109. package/dist/components/Toolbar/index.d.ts +0 -19
  110. package/dist/components/Toolbar/index.d.ts.map +0 -1
  111. package/dist/components/Toolbar/index.js +0 -23
  112. package/dist/components/Toolbar/index.js.map +0 -1
  113. package/dist/components/Toolbar/styles.js +0 -84
  114. package/dist/components/Toolbar/styles.js.map +0 -1
  115. package/dist/components/Toolbar/types.d.ts +0 -39
  116. package/dist/components/Toolbar/types.d.ts.map +0 -1
  117. package/dist/components/accordion/Accordion.d.ts +0 -21
  118. package/dist/components/accordion/Accordion.d.ts.map +0 -1
  119. package/dist/components/accordion/Accordion.js +0 -66
  120. package/dist/components/accordion/Accordion.js.map +0 -1
  121. package/dist/components/accordion/AccordionItem.d.ts +0 -20
  122. package/dist/components/accordion/AccordionItem.d.ts.map +0 -1
  123. package/dist/components/accordion/AccordionItem.js +0 -26
  124. package/dist/components/accordion/AccordionItem.js.map +0 -1
  125. package/dist/components/accordion/AccordionItemButton.d.ts +0 -10
  126. package/dist/components/accordion/AccordionItemButton.d.ts.map +0 -1
  127. package/dist/components/accordion/AccordionItemButton.js +0 -8
  128. package/dist/components/accordion/AccordionItemButton.js.map +0 -1
  129. package/dist/components/accordion/AccordionItemContent.d.ts +0 -7
  130. package/dist/components/accordion/AccordionItemContent.d.ts.map +0 -1
  131. package/dist/components/accordion/AccordionItemContent.js +0 -50
  132. package/dist/components/accordion/AccordionItemContent.js.map +0 -1
  133. package/dist/components/accordion/KeyHandler.js +0 -82
  134. package/dist/components/accordion/KeyHandler.js.map +0 -1
  135. package/dist/components/accordion/context.d.ts +0 -10
  136. package/dist/components/accordion/context.d.ts.map +0 -1
  137. package/dist/components/accordion/context.js +0 -13
  138. package/dist/components/accordion/context.js.map +0 -1
  139. package/dist/components/accordion/defaultElements/Checkbox.js +0 -22
  140. package/dist/components/accordion/defaultElements/Checkbox.js.map +0 -1
  141. package/dist/components/accordion/defaultElements/DefaultAccordionItemButton.d.ts +0 -40
  142. package/dist/components/accordion/defaultElements/DefaultAccordionItemButton.d.ts.map +0 -1
  143. package/dist/components/accordion/defaultElements/DefaultAccordionItemButton.js +0 -77
  144. package/dist/components/accordion/defaultElements/DefaultAccordionItemButton.js.map +0 -1
  145. package/dist/components/accordion/defaultElements/useIsChecked.js +0 -25
  146. package/dist/components/accordion/defaultElements/useIsChecked.js.map +0 -1
  147. package/dist/components/accordion/handler.d.ts +0 -40
  148. package/dist/components/accordion/handler.d.ts.map +0 -1
  149. package/dist/components/accordion/handler.js +0 -126
  150. package/dist/components/accordion/handler.js.map +0 -1
  151. package/dist/components/accordion/index.d.ts +0 -8
  152. package/dist/components/accordion/index.d.ts.map +0 -1
  153. package/dist/components/accordion/types.d.ts +0 -11
  154. package/dist/components/accordion/types.d.ts.map +0 -1
  155. package/dist/components/apia/ApiaDateFilter.js +0 -57
  156. package/dist/components/apia/ApiaDateFilter.js.map +0 -1
  157. package/dist/components/apia/ApiaFilter.d.ts +0 -13
  158. package/dist/components/apia/ApiaFilter.d.ts.map +0 -1
  159. package/dist/components/apia/ApiaFilter.js +0 -128
  160. package/dist/components/apia/ApiaFilter.js.map +0 -1
  161. package/dist/components/buttons/useOtherTagButton.d.ts +0 -28
  162. package/dist/components/buttons/useOtherTagButton.d.ts.map +0 -1
  163. package/dist/components/buttons/useOtherTagButton.js +0 -38
  164. package/dist/components/buttons/useOtherTagButton.js.map +0 -1
  165. package/dist/components/collapsiblePanel/index.d.ts +0 -7
  166. package/dist/components/collapsiblePanel/index.d.ts.map +0 -1
  167. package/dist/components/collapsiblePanel/index.js +0 -130
  168. package/dist/components/collapsiblePanel/index.js.map +0 -1
  169. package/dist/components/collapsiblePanel/styles.js +0 -4
  170. package/dist/components/collapsiblePanel/styles.js.map +0 -1
  171. package/dist/components/collapsiblePanel/types.d.ts +0 -23
  172. package/dist/components/collapsiblePanel/types.d.ts.map +0 -1
  173. package/dist/components/dialogs/AlertModal.d.ts +0 -11
  174. package/dist/components/dialogs/AlertModal.d.ts.map +0 -1
  175. package/dist/components/dialogs/AlertModal.js +0 -42
  176. package/dist/components/dialogs/AlertModal.js.map +0 -1
  177. package/dist/components/dialogs/ConfirmModal.d.ts +0 -25
  178. package/dist/components/dialogs/ConfirmModal.d.ts.map +0 -1
  179. package/dist/components/dialogs/ConfirmModal.js +0 -45
  180. package/dist/components/dialogs/ConfirmModal.js.map +0 -1
  181. package/dist/components/forms/Captcha.d.ts +0 -12
  182. package/dist/components/forms/Captcha.d.ts.map +0 -1
  183. package/dist/components/forms/Captcha.js +0 -66
  184. package/dist/components/forms/Captcha.js.map +0 -1
  185. package/dist/components/forms/Checkbox.d.ts +0 -21
  186. package/dist/components/forms/Checkbox.d.ts.map +0 -1
  187. package/dist/components/forms/Checkbox.js +0 -124
  188. package/dist/components/forms/Checkbox.js.map +0 -1
  189. package/dist/components/forms/DateInput.d.ts +0 -44
  190. package/dist/components/forms/DateInput.d.ts.map +0 -1
  191. package/dist/components/forms/DateInput.js +0 -246
  192. package/dist/components/forms/DateInput.js.map +0 -1
  193. package/dist/components/forms/FieldErrorMessage.d.ts +0 -10
  194. package/dist/components/forms/FieldErrorMessage.d.ts.map +0 -1
  195. package/dist/components/forms/FieldErrorMessage.js +0 -34
  196. package/dist/components/forms/FieldErrorMessage.js.map +0 -1
  197. package/dist/components/forms/FieldLabel.d.ts +0 -40
  198. package/dist/components/forms/FieldLabel.d.ts.map +0 -1
  199. package/dist/components/forms/FieldLabel.js +0 -66
  200. package/dist/components/forms/FieldLabel.js.map +0 -1
  201. package/dist/components/forms/IconInput.d.ts +0 -28
  202. package/dist/components/forms/IconInput.d.ts.map +0 -1
  203. package/dist/components/forms/IconInput.js +0 -80
  204. package/dist/components/forms/IconInput.js.map +0 -1
  205. package/dist/components/forms/NumberInput.d.ts +0 -37
  206. package/dist/components/forms/NumberInput.d.ts.map +0 -1
  207. package/dist/components/forms/NumberInput.js +0 -149
  208. package/dist/components/forms/NumberInput.js.map +0 -1
  209. package/dist/components/forms/RequiredMark.d.ts +0 -14
  210. package/dist/components/forms/RequiredMark.d.ts.map +0 -1
  211. package/dist/components/forms/RequiredMark.js +0 -13
  212. package/dist/components/forms/RequiredMark.js.map +0 -1
  213. package/dist/components/forms/buttons/BaseButton.d.ts +0 -24
  214. package/dist/components/forms/buttons/BaseButton.d.ts.map +0 -1
  215. package/dist/components/forms/buttons/BaseButton.js +0 -58
  216. package/dist/components/forms/buttons/BaseButton.js.map +0 -1
  217. package/dist/components/forms/buttons/IconButton.d.ts +0 -37
  218. package/dist/components/forms/buttons/IconButton.d.ts.map +0 -1
  219. package/dist/components/forms/buttons/IconButton.js +0 -79
  220. package/dist/components/forms/buttons/IconButton.js.map +0 -1
  221. package/dist/components/forms/buttons/SimpleButton.d.ts +0 -21
  222. package/dist/components/forms/buttons/SimpleButton.d.ts.map +0 -1
  223. package/dist/components/forms/buttons/SimpleButton.js +0 -94
  224. package/dist/components/forms/buttons/SimpleButton.js.map +0 -1
  225. package/dist/components/forms/util/style.d.ts +0 -7
  226. package/dist/components/forms/util/style.d.ts.map +0 -1
  227. package/dist/components/forms/util/style.js +0 -17
  228. package/dist/components/forms/util/style.js.map +0 -1
  229. package/dist/components/importComponent.d.ts +0 -11
  230. package/dist/components/importComponent.d.ts.map +0 -1
  231. package/dist/components/importComponent.js +0 -25
  232. package/dist/components/importComponent.js.map +0 -1
  233. package/dist/components/loaders/LinearLoader.d.ts +0 -6
  234. package/dist/components/loaders/LinearLoader.d.ts.map +0 -1
  235. package/dist/components/loaders/LinearLoader.js +0 -33
  236. package/dist/components/loaders/LinearLoader.js.map +0 -1
  237. package/dist/components/loaders/LoaderSpinner.d.ts +0 -10
  238. package/dist/components/loaders/LoaderSpinner.d.ts.map +0 -1
  239. package/dist/components/loaders/LoaderSpinner.js +0 -26
  240. package/dist/components/loaders/LoaderSpinner.js.map +0 -1
  241. package/dist/components/loaders/ProgressBar.d.ts +0 -11
  242. package/dist/components/loaders/ProgressBar.d.ts.map +0 -1
  243. package/dist/components/loaders/ProgressBar.js +0 -39
  244. package/dist/components/loaders/ProgressBar.js.map +0 -1
  245. package/dist/components/modals/CalendarModal.d.ts +0 -13
  246. package/dist/components/modals/CalendarModal.d.ts.map +0 -1
  247. package/dist/components/modals/CalendarModal.js +0 -43
  248. package/dist/components/modals/CalendarModal.js.map +0 -1
  249. package/dist/components/modals/Modal.d.ts +0 -178
  250. package/dist/components/modals/Modal.d.ts.map +0 -1
  251. package/dist/components/modals/Modal.js +0 -19
  252. package/dist/components/modals/Modal.js.map +0 -1
  253. package/dist/components/modals/ModalContext.d.ts +0 -9
  254. package/dist/components/modals/ModalContext.d.ts.map +0 -1
  255. package/dist/components/modals/ModalContext.js +0 -12
  256. package/dist/components/modals/ModalContext.js.map +0 -1
  257. package/dist/components/modals/Overlay.d.ts +0 -21
  258. package/dist/components/modals/Overlay.d.ts.map +0 -1
  259. package/dist/components/modals/Overlay.js +0 -74
  260. package/dist/components/modals/Overlay.js.map +0 -1
  261. package/dist/components/modals/StaticModal.js +0 -203
  262. package/dist/components/modals/StaticModal.js.map +0 -1
  263. package/dist/components/modals/WindowModal.js +0 -229
  264. package/dist/components/modals/WindowModal.js.map +0 -1
  265. package/dist/components/modals/hooks/useEscapeKey.js +0 -36
  266. package/dist/components/modals/hooks/useEscapeKey.js.map +0 -1
  267. package/dist/components/modals/hooks/useInitialFocus.js +0 -37
  268. package/dist/components/modals/hooks/useInitialFocus.js.map +0 -1
  269. package/dist/components/modals/hooks/useModal.d.ts +0 -97
  270. package/dist/components/modals/hooks/useModal.d.ts.map +0 -1
  271. package/dist/components/modals/hooks/useModal.js +0 -73
  272. package/dist/components/modals/hooks/useModal.js.map +0 -1
  273. package/dist/components/modals/hooks/useStyleState.js +0 -44
  274. package/dist/components/modals/hooks/useStyleState.js.map +0 -1
  275. package/dist/components/modals/layout/Confirm.d.ts +0 -7
  276. package/dist/components/modals/layout/Confirm.d.ts.map +0 -1
  277. package/dist/components/modals/layout/Confirm.js +0 -96
  278. package/dist/components/modals/layout/Confirm.js.map +0 -1
  279. package/dist/components/modals/layout/DialogButtonBar.d.ts +0 -10
  280. package/dist/components/modals/layout/DialogButtonBar.d.ts.map +0 -1
  281. package/dist/components/modals/layout/DialogButtonBar.js +0 -19
  282. package/dist/components/modals/layout/DialogButtonBar.js.map +0 -1
  283. package/dist/components/modals/layout/DialogHeader.d.ts +0 -18
  284. package/dist/components/modals/layout/DialogHeader.d.ts.map +0 -1
  285. package/dist/components/modals/layout/DialogHeader.js +0 -116
  286. package/dist/components/modals/layout/DialogHeader.js.map +0 -1
  287. package/dist/components/responsive/AutoEllipsis.d.ts +0 -21
  288. package/dist/components/responsive/AutoEllipsis.d.ts.map +0 -1
  289. package/dist/components/responsive/AutoEllipsis.js +0 -128
  290. package/dist/components/responsive/AutoEllipsis.js.map +0 -1
  291. package/dist/components/responsive/makeResponsiveComponent.d.ts +0 -38
  292. package/dist/components/responsive/makeResponsiveComponent.d.ts.map +0 -1
  293. package/dist/components/responsive/makeResponsiveComponent.js +0 -88
  294. package/dist/components/responsive/makeResponsiveComponent.js.map +0 -1
  295. package/dist/components/types.d.ts +0 -5
  296. package/dist/components/types.d.ts.map +0 -1
  297. package/dist/components/waiAriaHelpers/typeAhead.d.ts +0 -44
  298. package/dist/components/waiAriaHelpers/typeAhead.d.ts.map +0 -1
  299. package/dist/components/waiAriaHelpers/typeAhead.js +0 -75
  300. package/dist/components/waiAriaHelpers/typeAhead.js.map +0 -1
  301. package/dist/globalFocus.js +0 -95
  302. package/dist/globalFocus.js.map +0 -1
  303. package/dist/hooks/useBodyScrollLock.js +0 -106
  304. package/dist/hooks/useBodyScrollLock.js.map +0 -1
  305. package/dist/objects/ApiaUtil/dialogs/ApiaUtilDialogs.d.ts +0 -18
  306. package/dist/objects/ApiaUtil/dialogs/ApiaUtilDialogs.d.ts.map +0 -1
  307. package/dist/objects/ApiaUtil/dialogs/ApiaUtilDialogs.js +0 -116
  308. package/dist/objects/ApiaUtil/dialogs/ApiaUtilDialogs.js.map +0 -1
  309. package/dist/objects/ApiaUtil/index.d.ts +0 -27
  310. package/dist/objects/ApiaUtil/index.d.ts.map +0 -1
  311. package/dist/objects/ApiaUtil/index.js +0 -89
  312. package/dist/objects/ApiaUtil/index.js.map +0 -1
  313. package/dist/objects/ApiaUtil/menu/ApiaUtilMenu.d.ts +0 -23
  314. package/dist/objects/ApiaUtil/menu/ApiaUtilMenu.d.ts.map +0 -1
  315. package/dist/objects/ApiaUtil/menu/ApiaUtilMenu.js +0 -108
  316. package/dist/objects/ApiaUtil/menu/ApiaUtilMenu.js.map +0 -1
  317. package/dist/objects/ApiaUtil/modals/ApiaUtilModals.d.ts +0 -17
  318. package/dist/objects/ApiaUtil/modals/ApiaUtilModals.d.ts.map +0 -1
  319. package/dist/objects/ApiaUtil/modals/ApiaUtilModals.js +0 -111
  320. package/dist/objects/ApiaUtil/modals/ApiaUtilModals.js.map +0 -1
  321. package/dist/objects/ApiaUtil/modals/OpenModal.d.ts +0 -38
  322. package/dist/objects/ApiaUtil/modals/OpenModal.d.ts.map +0 -1
  323. package/dist/objects/ApiaUtil/modals/OpenModal.js +0 -37
  324. package/dist/objects/ApiaUtil/modals/OpenModal.js.map +0 -1
  325. package/dist/objects/ApiaUtil/mouse/ApiaUtilMouse.d.ts +0 -19
  326. package/dist/objects/ApiaUtil/mouse/ApiaUtilMouse.d.ts.map +0 -1
  327. package/dist/objects/ApiaUtil/mouse/ApiaUtilMouse.js +0 -26
  328. package/dist/objects/ApiaUtil/mouse/ApiaUtilMouse.js.map +0 -1
  329. package/dist/objects/ApiaUtil/notifications/ApiaUtilNotifications.d.ts +0 -14
  330. package/dist/objects/ApiaUtil/notifications/ApiaUtilNotifications.d.ts.map +0 -1
  331. package/dist/objects/ApiaUtil/notifications/ApiaUtilNotifications.js +0 -33
  332. package/dist/objects/ApiaUtil/notifications/ApiaUtilNotifications.js.map +0 -1
  333. package/dist/objects/ApiaUtil/parsers/ApiaUtilParsers.d.ts +0 -23
  334. package/dist/objects/ApiaUtil/parsers/ApiaUtilParsers.d.ts.map +0 -1
  335. package/dist/objects/ApiaUtil/parsers/ApiaUtilParsers.js +0 -79
  336. package/dist/objects/ApiaUtil/parsers/ApiaUtilParsers.js.map +0 -1
  337. package/dist/objects/ApiaUtil/tabs/ApiaUtilCurrentTab.d.ts +0 -33
  338. package/dist/objects/ApiaUtil/tabs/ApiaUtilCurrentTab.d.ts.map +0 -1
  339. package/dist/objects/ApiaUtil/tabs/ApiaUtilCurrentTab.js +0 -50
  340. package/dist/objects/ApiaUtil/tabs/ApiaUtilCurrentTab.js.map +0 -1
  341. package/dist/objects/ApiaUtil/tabs/ApiaUtilTabsController.d.ts +0 -20
  342. package/dist/objects/ApiaUtil/tabs/ApiaUtilTabsController.d.ts.map +0 -1
  343. package/dist/objects/ApiaUtil/tabs/ApiaUtilTabsController.js +0 -37
  344. package/dist/objects/ApiaUtil/tabs/ApiaUtilTabsController.js.map +0 -1
  345. package/dist/objects/ApiaUtil/tabs/util.js +0 -17
  346. package/dist/objects/ApiaUtil/tabs/util.js.map +0 -1
  347. package/dist/objects/ApiaUtil/tooltips/ApiaUtilTooltip.d.ts +0 -11
  348. package/dist/objects/ApiaUtil/tooltips/ApiaUtilTooltip.d.ts.map +0 -1
  349. package/dist/objects/ApiaUtil/tooltips/ApiaUtilTooltip.js +0 -17
  350. package/dist/objects/ApiaUtil/tooltips/ApiaUtilTooltip.js.map +0 -1
  351. package/dist/objects/ApiaUtil/tooltips/ApiaUtilTooltips.d.ts +0 -22
  352. package/dist/objects/ApiaUtil/tooltips/ApiaUtilTooltips.d.ts.map +0 -1
  353. package/dist/objects/ApiaUtil/tooltips/ApiaUtilTooltips.js +0 -104
  354. package/dist/objects/ApiaUtil/tooltips/ApiaUtilTooltips.js.map +0 -1
  355. package/dist/objects/ApiaUtil/tooltips/AutomaticTooltip.d.ts +0 -13
  356. package/dist/objects/ApiaUtil/tooltips/AutomaticTooltip.d.ts.map +0 -1
  357. package/dist/objects/ApiaUtil/tooltips/AutomaticTooltip.js +0 -79
  358. package/dist/objects/ApiaUtil/tooltips/AutomaticTooltip.js.map +0 -1
  359. package/dist/objects/ApiaUtil/tooltips/tooltip/Tooltip.js +0 -62
  360. package/dist/objects/ApiaUtil/tooltips/tooltip/Tooltip.js.map +0 -1
  361. package/dist/objects/ApiaUtil/tooltips/tooltip/types.d.ts +0 -117
  362. package/dist/objects/ApiaUtil/tooltips/tooltip/types.d.ts.map +0 -1
  363. package/dist/objects/ApiaUtil/tooltips/tooltip/util.js +0 -273
  364. package/dist/objects/ApiaUtil/tooltips/tooltip/util.js.map +0 -1
  365. package/dist/objects/ScreenLocker/index.d.ts +0 -37
  366. package/dist/objects/ScreenLocker/index.d.ts.map +0 -1
  367. package/dist/objects/ScreenLocker/index.js +0 -92
  368. package/dist/objects/ScreenLocker/index.js.map +0 -1
  369. package/dist/tabs/Content.d.ts +0 -7
  370. package/dist/tabs/Content.d.ts.map +0 -1
  371. package/dist/tabs/Content.js +0 -52
  372. package/dist/tabs/Content.js.map +0 -1
  373. package/dist/tabs/ContextMenu.js +0 -76
  374. package/dist/tabs/ContextMenu.js.map +0 -1
  375. package/dist/tabs/Item.js +0 -63
  376. package/dist/tabs/Item.js.map +0 -1
  377. package/dist/tabs/Tabs.d.ts +0 -8
  378. package/dist/tabs/Tabs.d.ts.map +0 -1
  379. package/dist/tabs/Tabs.js +0 -78
  380. package/dist/tabs/Tabs.js.map +0 -1
  381. package/dist/tabs/TabsList.d.ts +0 -8
  382. package/dist/tabs/TabsList.d.ts.map +0 -1
  383. package/dist/tabs/TabsList.js +0 -138
  384. package/dist/tabs/TabsList.js.map +0 -1
  385. package/dist/tabs/renderers/DefaultTabsLabelRenderer.d.ts +0 -6
  386. package/dist/tabs/renderers/DefaultTabsLabelRenderer.d.ts.map +0 -1
  387. package/dist/tabs/renderers/DefaultTabsLabelRenderer.js +0 -71
  388. package/dist/tabs/renderers/DefaultTabsLabelRenderer.js.map +0 -1
  389. package/dist/tabs/tabsController.d.ts +0 -41
  390. package/dist/tabs/tabsController.d.ts.map +0 -1
  391. package/dist/tabs/tabsController.js +0 -303
  392. package/dist/tabs/tabsController.js.map +0 -1
  393. package/dist/tabs/types.d.ts +0 -115
  394. package/dist/tabs/types.d.ts.map +0 -1
  395. package/dist/tabs/useTabsList.js +0 -20
  396. package/dist/tabs/useTabsList.js.map +0 -1
  397. package/dist/tabs/util.js +0 -11
  398. package/dist/tabs/util.js.map +0 -1
package/dist/index.d.ts CHANGED
@@ -1,72 +1,1661 @@
1
- export { TAccordionHandler } from './components/accordion/index.js';
2
- export { ApiaFilter, IApiaFilter } from './components/apia/ApiaFilter.js';
3
- export { CollapsiblePanel } from './components/collapsiblePanel/index.js';
4
- export { AlertModal, IAlert } from './components/dialogs/AlertModal.js';
5
- export { ConfirmModal, IConfirm } from './components/dialogs/ConfirmModal.js';
6
- export { BaseButton } from './components/forms/buttons/BaseButton.js';
7
- export { IconButton, TApiaIconButton, TIconButton, TIconSize } from './components/forms/buttons/IconButton.js';
8
- export { ISimpleButton, SimpleButton } from './components/forms/buttons/SimpleButton.js';
9
- export { useOtherTagButton } from './components/buttons/useOtherTagButton.js';
10
- export { Captcha } from './components/forms/Captcha.js';
11
- export { Checkbox, TCheckbox } from './components/forms/Checkbox.js';
12
- export { DateInput, TDateProps } from './components/forms/DateInput.js';
13
- export { FieldErrorMessage, IFieldErrorMessage } from './components/forms/FieldErrorMessage.js';
14
- export { IField, IIconInput, IconInput } from './components/forms/IconInput.js';
15
- export { NumberInput, TNumberInput, TNumberInputChangeEvent, parseNumberInputValueToNumber, parseNumberValueToNumberInput } from './components/forms/NumberInput.js';
16
- export { IRequiredMark, RequiredMark } from './components/forms/RequiredMark.js';
17
- export { getFieldErrorStyles, getFieldTouchedStyles } from './components/forms/util/style.js';
18
- export { FieldLabel, TFieldLabel } from './components/forms/FieldLabel.js';
19
- export { Listbox, TOnClickNode, TOnConfirmSelection, TOnSelectionChange } from './components/ListBox/index.js';
20
- export { default as LinearLoader } from './components/loaders/LinearLoader.js';
21
- export { default as ProgressBar } from './components/loaders/ProgressBar.js';
22
- export { default as LoaderSpinner } from './components/loaders/LoaderSpinner.js';
23
- export { useModalContext } from './components/modals/ModalContext.js';
24
- export { CalendarModal, ICalendarModal } from './components/modals/CalendarModal.js';
25
- export { TUseModalConfiguration, useModal } from './components/modals/hooks/useModal.js';
26
- export { Confirm } from './components/modals/layout/Confirm.js';
27
- export { DialogButtonBar, IDialogButtonBar } from './components/modals/layout/DialogButtonBar.js';
28
- export { IDialogHeader } from './components/modals/layout/DialogHeader.js';
29
- export { Modal, TModal } from './components/modals/Modal.js';
30
- export { IOverlay, Overlay } from './components/modals/Overlay.js';
31
- export { AutoEllipsis } from './components/responsive/AutoEllipsis.js';
32
- export { IResponsiveComponent, makeResponsiveComponent } from './components/responsive/makeResponsiveComponent.js';
33
- export { TApiaButtonType, TModalSize } from './components/types.js';
34
- export { WaiTypeAhead } from './components/waiAriaHelpers/typeAhead.js';
35
- export { IconsList } from './components/IconsList/index.js';
36
- export { importComponent } from './components/importComponent.js';
37
- export { Toolbar } from './components/Toolbar/index.js';
38
- export { SortableList, UnstyledSortableList } from './components/SortableList/index.js';
39
- export { TabsList } from './tabs/TabsList.js';
40
- export { DefaultTabsLabelRenderer } from './tabs/renderers/DefaultTabsLabelRenderer.js';
41
- export { default as TabsController } from './tabs/tabsController.js';
42
- export { TabsContent } from './tabs/Content.js';
43
- export { TTab, TTabRenderer } from './tabs/types.js';
44
- export { Tabs } from './tabs/Tabs.js';
45
- export { ApiaUtil } from './objects/ApiaUtil/index.js';
1
+ import { ThemeUIStyleObject, IconButtonProps, ButtonProps, ThemeUICSSObject, InputProps, BoxProps, SelectProps } from '@apia/theme';
2
+ import * as _apia_util from '@apia/util';
3
+ import { TModify, TId, TApiaFilter, TApiaFilterValue, IOnFocusConfiguration, TFocusRetriever, EventEmitter, PropsStore, StatefulEmitter } from '@apia/util';
4
+ import * as React$1 from 'react';
5
+ import React__default, { ChangeEventHandler, MouseEvent as MouseEvent$1, KeyboardEvent, ReactNode, FC, Ref, FunctionComponent, ForwardedRef, ComponentType, ReactElement, RefObject } from 'react';
6
+ import { TIconType, TIconName } from '@apia/icons';
7
+ import { Args } from 'react-cool-portal';
8
+ import * as _apia_notifications from '@apia/notifications';
9
+ import { TNotificationId, INotification, TDispatchedNotification, TNotificationSelector } from '@apia/notifications';
46
10
  export { INotification, TDispatchedNotification } from '@apia/notifications';
47
- export { TOpenModal } from './objects/ApiaUtil/modals/OpenModal.js';
11
+ import { MenuItemProps, ControlledMenuProps } from '@szhsin/react-menu';
48
12
  export { ControlledMenuProps, MenuItemProps } from '@szhsin/react-menu';
49
- export { ApiaUtilTooltip } from './objects/ApiaUtil/tooltips/ApiaUtilTooltip.js';
50
- export { ApiaUtilModalHandler } from './objects/ApiaUtil/modals/ApiaUtilModals.js';
51
- export { TMenuItem, TSubmenu } from './objects/ApiaUtil/menu/ApiaUtilMenu.js';
52
- export { TTooltip } from './objects/ApiaUtil/tooltips/tooltip/types.js';
53
- export { ScreenLocker } from './objects/ScreenLocker/index.js';
54
- export { Accordion, IAccordionProps } from './components/accordion/Accordion.js';
55
- export { AccordionItem, IAccordionItemProps } from './components/accordion/AccordionItem.js';
56
- export { AccordionItemButton, TAccordionItemButton } from './components/accordion/AccordionItemButton.js';
57
- export { AccordionItemContent } from './components/accordion/AccordionItemContent.js';
58
- export { AccordionContext, AccordionItemContext, useAccordionContext } from './components/accordion/context.js';
59
- export { DefaultAccordionItemButton, IAccordionItemButton } from './components/accordion/defaultElements/DefaultAccordionItemButton.js';
60
- export { TListbox } from './components/ListBox/ListboxContext.js';
61
- export { ListboxItem } from './components/ListBox/ListboxItem.js';
62
- export { TIcon, TIconRenderer, TIconsList } from './components/IconsList/types.js';
63
- export { DefaultIconRenderer } from './components/IconsList/renderers/DefaultIconRenderer.js';
64
- export { TToolbarIconButton as TToolDefinition } from './components/Toolbar/types.js';
65
- export { ToolbarIconButton } from './components/Toolbar/ToolbarIconButton.js';
66
- export { ToolbarInput } from './components/Toolbar/ToolbarInput.js';
67
- export { ToolbarTextButton } from './components/Toolbar/ToolbarTextButton.js';
68
- export { ToolbarController } from './components/Toolbar/ToolbarController.js';
69
- export { ToolbarSeparator } from './components/Toolbar/ToolbarSeparator.js';
70
- export { ToolbarSelect } from './components/Toolbar/ToolbarSelect.js';
71
- export { SortableListItem } from './components/SortableList/SortableListItem.js';
13
+
14
+ type TModalSize = 'editGrid' | 'sm' | 'md' | 'md-fixed' | 'lg' | 'lg-fixed' | 'xl' | 'xl-fixed' | 'xxl' | 'xxxl' | 'xxxl-fixed' | 'flex' | 'cal' | 'finder';
15
+ type TApiaButtonType = 'primary' | 'primary-sm' | 'secondary' | 'light-secondary' | 'secondary-sm' | 'danger' | 'danger-sm' | 'outline' | 'outline-sm' | 'warning' | 'warning-sm' | 'link';
16
+
17
+ interface IBaseButton {
18
+ text?: string;
19
+ children?: string;
20
+ loadingChildren?: string;
21
+ id?: string;
22
+ name?: string;
23
+ onClick?: React.MouseEventHandler<HTMLButtonElement>;
24
+ isLoading?: boolean;
25
+ disabled?: boolean;
26
+ variant?: TApiaButtonType | string;
27
+ type?: 'button' | 'submit' | 'reset';
28
+ SXProps?: ThemeUIStyleObject;
29
+ }
30
+ /**
31
+ * The world's most **basic** button
32
+ */
33
+ declare const BaseButton: ({ id, name, onClick, isLoading, loadingChildren, disabled, children, text, variant, type, SXProps, ...buttonProps }: IBaseButton) => React$1.JSX.Element;
34
+
35
+ type TIconSize = number | 'Xs' | 'Sm' | 'Md' | 'Lg' | 'Xl';
36
+ type TApiaIconButton = 'icon' | 'icon-primary' | 'icon-outline' | 'icon-only';
37
+ type TIconButton = Omit<IconButtonProps, 'sx'> & React$1.AriaAttributes & {
38
+ className?: string;
39
+ /**
40
+ * Es posible pasar explícitamente un ícono o el nombre del ícono de
41
+ * acuerdo a la librería de la aplicación. Ver Icon.tsx
42
+ */
43
+ icon: TIconType | TIconName;
44
+ iconSize?: TIconSize;
45
+ id?: string;
46
+ disabled?: boolean;
47
+ href?: string;
48
+ isLoading?: boolean;
49
+ isToggled?: boolean;
50
+ onClick?: React$1.MouseEventHandler<HTMLButtonElement>;
51
+ onMouseOut?: React$1.MouseEventHandler<HTMLButtonElement>;
52
+ onMouseOver?: React$1.MouseEventHandler<HTMLButtonElement>;
53
+ size?: TIconSize;
54
+ title?: string;
55
+ variant?: string;
56
+ };
57
+ /**
58
+ * Renderiza un botón con un ícono adentro.
59
+ *
60
+ * La variante por defecto de este componente es buttons.icon
61
+ *
62
+ * Si se pasa solamente size, el iconSize será
63
+ */
64
+ declare const IconButton: React$1.ForwardRefExoticComponent<Omit<TIconButton, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
65
+
66
+ interface ISimpleButton extends ButtonProps {
67
+ buttonSx?: ThemeUICSSObject;
68
+ icon?: TIconType;
69
+ iconColor?: string;
70
+ iconPosition?: 'left' | 'right';
71
+ iconSize?: number;
72
+ isLoading?: boolean;
73
+ onClick?: React$1.MouseEventHandler<HTMLButtonElement>;
74
+ size?: 'sm' | 'md' | 'lg';
75
+ variant?: string;
76
+ spinnerSize?: number;
77
+ type?: 'button' | 'submit' | 'reset';
78
+ }
79
+ declare const SimpleButton: React$1.ForwardRefExoticComponent<Omit<ISimpleButton, "ref"> & React$1.RefAttributes<unknown>>;
80
+
81
+ /**
82
+ * Este hook está pensado para crear un botón utilizando un tag cualquiera.
83
+ *
84
+ * @example
85
+ *
86
+ * const buttonProps = useOtherTagButton(React.useMemo(()=>({
87
+ * onClick(ev) { console.log(ev.target) },
88
+ * onKeyDown(ev) { console.log(ev.code) }
89
+ * }),[])
90
+ *
91
+ * return <div {...buttonProps}>Esto es un botón</div>
92
+ */
93
+ declare function useOtherTagButton(props?: Partial<{
94
+ className?: string;
95
+ onClick: React__default.MouseEventHandler;
96
+ onKeyDown: React__default.KeyboardEventHandler;
97
+ }>): {
98
+ className: string;
99
+ onClick: (ev: React__default.MouseEvent) => void;
100
+ onKeyDown: (ev: React__default.KeyboardEvent) => void;
101
+ role: string;
102
+ tabIndex: number;
103
+ };
104
+
105
+ declare const Captcha: ({ name, imageUrl, onChange, value, className, }: {
106
+ name: string;
107
+ className?: string | undefined;
108
+ imageUrl: string;
109
+ onChange: React.ChangeEventHandler<HTMLInputElement>;
110
+ value: string;
111
+ }) => React$1.JSX.Element;
112
+
113
+ type TCheckbox = TModify<ButtonProps, {
114
+ background?: string;
115
+ checked?: boolean;
116
+ color?: string;
117
+ defaultChecked?: boolean;
118
+ icon?: TIconName;
119
+ indeterminate?: boolean;
120
+ native?: boolean;
121
+ onChange?: ChangeEventHandler<HTMLInputElement>;
122
+ readOnly?: boolean;
123
+ required?: boolean;
124
+ type?: string;
125
+ }>;
126
+ declare const Checkbox: React$1.ForwardRefExoticComponent<Omit<TCheckbox, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
127
+
128
+ interface IField {
129
+ className?: string;
130
+ disabled?: boolean;
131
+ isLoading?: boolean;
132
+ readOnly?: boolean;
133
+ }
134
+ interface IIconInput extends IField {
135
+ additionalButtons?: React__default.ReactNode;
136
+ additionalButtonsPosition?: 'before' | 'after';
137
+ buttonProps?: Partial<React__default.ComponentProps<typeof IconButton>>;
138
+ buttonRef?: React__default.RefObject<HTMLButtonElement>;
139
+ hideButton?: boolean;
140
+ icon?: TIconType | TIconName;
141
+ inputProps?: Partial<InputProps>;
142
+ inputRef?: React__default.RefObject<HTMLInputElement>;
143
+ onClick?: (ev: React__default.MouseEvent) => void;
144
+ onBlur?: React__default.FocusEventHandler;
145
+ [key: string]: unknown;
146
+ }
147
+ declare const IconInput: ({ additionalButtons, additionalButtonsPosition, buttonProps, buttonRef, className, disabled, hideButton, icon, inputProps, inputRef, isLoading, mask, onClick, onBlur, readOnly, ...rest }: IIconInput) => React__default.JSX.Element;
148
+
149
+ declare global {
150
+ interface Window {
151
+ LANG_CODE: string;
152
+ MSG_INVALID_DATE: string;
153
+ MSG_FEC_FIN_MAY_FEC_INI: string;
154
+ LBL_PICK_DATE: string;
155
+ }
156
+ }
157
+ type TDateProps = TModify<InputProps, {
158
+ allowPickBeforeToday?: boolean;
159
+ error?: string | null;
160
+ /**
161
+ * Con esta propiedad se puede proveer una función que será utilizada para
162
+ * determinar qué máscara debe utilizar el input
163
+ */
164
+ getCustomMask?: () => string;
165
+ isLoading?: boolean;
166
+ /**
167
+ * Recibe la nueva fecha. En caso de devolver
168
+ * false desde este método, el nuevo valor no
169
+ * se persistirá.
170
+ */
171
+ onChange?: (newValue: string) => boolean | string | void;
172
+ /**
173
+ * Es llamado cada vez que alguien presiona el botón de eliminar fecha.
174
+ */
175
+ onDelete?: () => void;
176
+ onError?: (error: string | null) => unknown;
177
+ /**
178
+ * Con esta propiedad se puede proveer una función que recibirá como
179
+ * parámetro el valor actual del cmapo y debe devolver el valor a mostrar.
180
+ */
181
+ renderLabel?: (value: string) => string;
182
+ value?: string;
183
+ }> & Pick<IIconInput, 'buttonProps'>;
184
+ declare const DateInput: React__default.ForwardRefExoticComponent<Omit<TDateProps, "ref"> & React__default.RefAttributes<HTMLInputElement>>;
185
+
186
+ interface IFieldErrorMessage {
187
+ children: React$1.ReactNode | string;
188
+ name?: string;
189
+ }
190
+ declare const FieldErrorMessage: ({ children, name }: IFieldErrorMessage) => React$1.JSX.Element | null;
191
+
192
+ /**
193
+ * El NumberInput respeta los parámetros de ambiente:
194
+ * - AMOUNT_DECIMAL_SEPARATOR
195
+ * - AMOUNT_DECIMAL_ZEROS
196
+ * - CHAR_DECIMAL_SEPARATOR
197
+ * - CHAR_THOUS_SEPARATOR
198
+ * - ADD_THOUSAND_SEPARATOR
199
+ */
200
+
201
+ type TNumberInputChangeEvent = {
202
+ error: boolean;
203
+ value: string;
204
+ };
205
+ type TNumberInput = Omit<InputProps, 'type' | 'onChange' | 'onBlur' | 'value' | 'defaultValue'> & {
206
+ onChange?: (ev: TNumberInputChangeEvent) => unknown;
207
+ value?: string;
208
+ defaultValue?: string;
209
+ avoidDecimalRestriction?: boolean;
210
+ };
211
+ declare global {
212
+ interface Window {
213
+ AMOUNT_DECIMAL_SEPARATOR: string;
214
+ AMOUNT_DECIMAL_ZEROS: string;
215
+ CHAR_DECIMAL_SEPARATOR: string;
216
+ CHAR_THOUS_SEPARATOR: string;
217
+ ADD_THOUSAND_SEPARATOR: boolean;
218
+ }
219
+ }
220
+ declare function parseNumberInputValueToNumber(value: string): number;
221
+ declare function parseNumberValueToNumberInput(value: string | number): string;
222
+ declare const NumberInput: React__default.ForwardRefExoticComponent<Omit<TNumberInput, "ref"> & React__default.RefAttributes<HTMLInputElement>>;
223
+
224
+ interface IRequiredMark {
225
+ isFormReadonly?: boolean;
226
+ isRequired?: boolean;
227
+ isReadonly?: boolean;
228
+ }
229
+ /**
230
+ * Muestra el * en los campos de requerido.
231
+ */
232
+ declare const RequiredMark: ({ isFormReadonly, isRequired, isReadonly, }: IRequiredMark) => React$1.JSX.Element | null;
233
+
234
+ declare const getFieldErrorStyles: (isValid: boolean) => ThemeUICSSObject;
235
+ declare const getFieldTouchedStyles: (isTouched: boolean) => ThemeUICSSObject;
236
+
237
+ type TFieldLabel = {
238
+ avoidSemicolon?: boolean;
239
+ /**
240
+ * Permite mostrar un mensaje de error debajo del campo
241
+ */
242
+ error?: string;
243
+ hideRequiredMark?: boolean;
244
+ label: string;
245
+ /**
246
+ * La propiedad required se utiliza para mostrar el * de requerido.
247
+ *
248
+ * @see requiredMarkPosition
249
+ * @see hideRequiredMark
250
+ */
251
+ required?: boolean;
252
+ requiredMarkPosition?: 'before' | 'after';
253
+ } & BoxProps;
254
+ declare const FieldLabel: React$1.ForwardRefExoticComponent<{
255
+ avoidSemicolon?: boolean | undefined;
256
+ /**
257
+ * Permite mostrar un mensaje de error debajo del campo
258
+ */
259
+ error?: string | undefined;
260
+ hideRequiredMark?: boolean | undefined;
261
+ label: string;
262
+ /**
263
+ * La propiedad required se utiliza para mostrar el * de requerido.
264
+ *
265
+ * @see requiredMarkPosition
266
+ * @see hideRequiredMark
267
+ */
268
+ required?: boolean | undefined;
269
+ requiredMarkPosition?: "after" | "before" | undefined;
270
+ } & BoxProps & React$1.RefAttributes<HTMLDivElement>>;
271
+
272
+ interface IAccordionItemButton {
273
+ ariaLabel: string;
274
+ /**
275
+ * Si checked !== undefined => se mostrará un checkbox.
276
+ */
277
+ checked?: boolean;
278
+ /**
279
+ * Solamente se utiliza en conjunto con el checkbox y permite evitar que el
280
+ * usuario pueda marcar o desmarcar el checkbox.
281
+ */
282
+ className?: string;
283
+ disableSelection?: boolean;
284
+ domButtonProps?: ISimpleButton;
285
+ label: string;
286
+ /**
287
+ * Evento que se dispara cuando el usuario hace click en el checkbox o
288
+ * presiona espacio sobre el botón del acordeón.
289
+ */
290
+ onChange?: (checked: boolean) => unknown;
291
+ onClick?: (ev: MouseEvent$1) => unknown;
292
+ onUserPressEnter?: (ev: KeyboardEvent) => unknown;
293
+ rightButtons?: ReactNode;
294
+ rightIcons?: TIconName[] | TIconName;
295
+ tabIndex?: number;
296
+ /**
297
+ * Si no se pasa title se usará ariaLabel.
298
+ */
299
+ title?: string;
300
+ }
301
+ declare const DefaultAccordionItemButton: (props: IAccordionItemButton) => React$1.JSX.Element;
302
+
303
+ interface IAccordionProps {
304
+ /**
305
+ * Tiempo en ms que dura la animación. Por defecto se usa 150.
306
+ */
307
+ animationDuration?: number;
308
+ children?: ReactNode;
309
+ className?: string;
310
+ getHandler?: (handler: AccordionHandler) => unknown;
311
+ singleExpand?: boolean;
312
+ /**
313
+ * Por defecto usa la variante layout.common.components.accordion.primary
314
+ */
315
+ variant?: string;
316
+ }
317
+ declare const Accordion: FC<IAccordionProps>;
318
+
319
+ type TItemState$1 = {
320
+ isChecked: boolean;
321
+ isExpanded: boolean;
322
+ };
323
+ type TItemStateListener = (state: TItemState$1) => unknown;
324
+ type TPropsListener = (props: IAccordionProps) => unknown;
325
+
326
+ type TSelectionComparator<T> = (prev: T, next: T) => boolean;
327
+ type TItemUpdater = Partial<TItemState$1> | ((currentProps: TItemState$1) => Partial<TItemState$1>);
328
+ declare class AccordionHandler {
329
+ id: string;
330
+ props: IAccordionProps;
331
+ itemsState: Record<TId, TItemState$1>;
332
+ itemsStateListeners: Record<TId, TItemStateListener[]>;
333
+ propsListeners: TPropsListener[];
334
+ constructor(id: string, props: IAccordionProps);
335
+ registerItem(itemId: TId, initialState: TItemState$1): void;
336
+ toggleItem(itemId: TId, expanded?: boolean): void;
337
+ unregisterItem(itemId: TId): void;
338
+ /**
339
+ * Permite actualizar parcialmente el estado de un item
340
+ */
341
+ udpateItem(itemId: TId, updater: TItemUpdater): void;
342
+ updateProps(props: IAccordionProps): void;
343
+ hooks: {
344
+ useAccordionContextProvider: () => ({ children }: {
345
+ children: ReactNode;
346
+ }) => React$1.JSX.Element;
347
+ useItemContextProvider: (itemId: TId) => ({ children }: {
348
+ children: ReactNode;
349
+ }) => React$1.JSX.Element;
350
+ useItemId: () => TId;
351
+ useItemStateSelector: <T>(selector: (props: TItemState$1) => T, comparator?: TSelectionComparator<T>) => T;
352
+ useItemStateUpdate: (cb: TItemStateListener) => void;
353
+ usePropsSelector: <T_1>(selector: (props: IAccordionProps) => T_1, comparator?: TSelectionComparator<T_1>) => T_1;
354
+ usePropsUpdate: (cb: TPropsListener) => void;
355
+ };
356
+ }
357
+
358
+ interface IAccordionItemProps {
359
+ /**
360
+ * Cada elemento del acordeón tiene dos formas de renderizar el botón. O bien
361
+ * se pasa un elemento AccordionItemButton como hijo o bien se pasan
362
+ * buttonProps. En caso contrario, el elemento no tendrá botón.
363
+ */
364
+ buttonProps?: IAccordionItemButton;
365
+ children?: ReactNode;
366
+ defaultExpanded?: boolean;
367
+ id: TId;
368
+ }
369
+ declare const AccordionItem: ({ children, id, defaultExpanded, ...props }: IAccordionItemProps) => React$1.JSX.Element;
370
+
371
+ type TAccordionItemButton = {
372
+ children?: ReactNode;
373
+ };
374
+ declare const AccordionItemButton: ({ children }: TAccordionItemButton) => React$1.JSX.Element;
375
+
376
+ declare const AccordionItemContent: ({ children, buttonProps, }: IAccordionItemProps) => React$1.JSX.Element;
377
+
378
+ declare const AccordionContext: React$1.Context<AccordionHandler | null>;
379
+ declare const AccordionItemContext: React$1.Context<TId | null>;
380
+ declare const useAccordionContext: () => AccordionHandler;
381
+
382
+ type TAccordionHandler = AccordionHandler;
383
+
384
+ interface IApiaFilter {
385
+ filter: TApiaFilter;
386
+ onBlur?: (ev: TApiaFilterValue) => void;
387
+ onChange?: (ev: TApiaFilterValue) => void | boolean | string | Promise<boolean | string>;
388
+ onPressEnter?: (ev: TApiaFilterValue) => void;
389
+ }
390
+ declare const ApiaFilter: React$1.MemoExoticComponent<React$1.ForwardRefExoticComponent<IApiaFilter & React$1.RefAttributes<HTMLInputElement | HTMLSelectElement>>>;
391
+
392
+ interface ILabelBox {
393
+ className?: string;
394
+ label: string;
395
+ tooltip?: string;
396
+ closeTooltip?: string;
397
+ onClose?: () => unknown;
398
+ }
399
+ type TLabelBox = ILabelBox & BoxProps;
400
+ declare const LabelBox: ({ className, label, tooltip, closeTooltip, onClose, ...props }: TLabelBox) => React__default.JSX.Element;
401
+
402
+ interface ICollapsiblePanel {
403
+ 'aria-hidden'?: boolean;
404
+ children: React.ReactNode;
405
+ className?: string;
406
+ closedIcon?: TIconType | TIconName;
407
+ collapsed?: boolean;
408
+ defaultCollapsed?: boolean;
409
+ disableChildrenFocus?: boolean;
410
+ iconSize?: string | number;
411
+ id?: string;
412
+ minHeight?: number;
413
+ onClose?: () => unknown;
414
+ onOpen?: (ev?: React.MouseEvent) => void | Promise<boolean>;
415
+ openIcon?: TIconType | TIconName;
416
+ label: React.ReactNode;
417
+ rememberCollapsedState?: boolean;
418
+ titleButtons?: React.ReactNode;
419
+ }
420
+
421
+ declare const CollapsiblePanel: React__default.ForwardRefExoticComponent<ICollapsiblePanel & React__default.RefAttributes<HTMLDivElement>>;
422
+
423
+ interface IAlert {
424
+ children: React.ReactNode;
425
+ onClose: () => void;
426
+ title?: string;
427
+ }
428
+ declare const AlertModal: ({ children, onClose, title }: IAlert) => React$1.JSX.Element;
429
+
430
+ interface IConfirm {
431
+ additionalButtons?: ReactNode;
432
+ additionalButtonsOnRight?: ReactNode;
433
+ cancelButtonText?: string;
434
+ children: ReactNode;
435
+ className?: string;
436
+ confirmButtonText?: string;
437
+ confirmButtonVariant?: TApiaButtonType;
438
+ contentRef?: Ref<HTMLDivElement>;
439
+ disabled?: boolean;
440
+ hideCancelButton?: boolean;
441
+ hideConfirmButton?: boolean;
442
+ isLoading?: boolean;
443
+ onConfirm?: () => unknown;
444
+ onCancel?: () => unknown;
445
+ title?: string;
446
+ variant?: string;
447
+ }
448
+ declare const ConfirmModal: ({ onConfirm, onCancel, title, ...props }: IConfirm) => JSX.Element;
449
+
450
+ type TListboxItem = {
451
+ children?: ReactNode;
452
+ rowIndex?: number;
453
+ } & BoxProps & {
454
+ /**
455
+ * El label se usa en aria-label por motivos de accesibilidad y además en
456
+ * la funcionalidad de búsqueda.
457
+ */
458
+ label: string;
459
+ };
460
+ declare const ListboxItem: FC<TListboxItem>;
461
+
462
+ type TListboxState = {
463
+ /**
464
+ * El múltipleSearch está de acuerdo a la especificación de wai-aria. Está
465
+ * habilitado por defecto e implica que si el usuario presiona una "rápida
466
+ * sucesión" (según palabras de wai-aria) de caracteres, se irá
467
+ * alternando el foco entre los elementos que comiencen con la cadena
468
+ * introducida.
469
+ */
470
+ allowMultipleCharacterSearch?: boolean;
471
+ allowSelection: boolean;
472
+ /**
473
+ * El singleCharacterSearch está de acuerdo a la especificación de wai-aria.
474
+ * Está habilitado por defecto e implica que si el usuario presiona una
475
+ * "lenta sucesión" (según palabras de wai-aria) de caracteres, se irá
476
+ * alternando el foco entre los elementos que comiencen con la letra
477
+ * introducida.
478
+ */
479
+ allowSingleCharacterSearch?: boolean;
480
+ focusedRow: number;
481
+ hiddenRows: number[];
482
+ id: string;
483
+ isEverythingSelected: boolean;
484
+ isMultipleSelection: boolean;
485
+ lastSelectedRow: number;
486
+ rowsCount: number;
487
+ /**
488
+ * La función de búsqueda debe tomar el label de un campo y el texto
489
+ * introducido en el campo de búsqueda y determinar si el mismo debe ser
490
+ * mostrado o no. Por defecto, se usa una función de matcheo estricto.
491
+ */
492
+ searchFunction: (label: string, searchString: string) => boolean;
493
+ selectedRows: number[];
494
+ shownRows: number[];
495
+ showSearchbox: boolean;
496
+ /**
497
+ * Este método permite determinar si un elemento comienza con una cadena de
498
+ * texto en particular. Por defecto se usa String.startsWith, sin embargo se
499
+ * permite el pasaje de este método para situaciones particulares, ejemplo
500
+ * si se deseara incluir elementos sin tomar en cuenta los espacios.
501
+ */
502
+ startsWithFunction: (label: string, searchString: string) => boolean;
503
+ typing: string | null;
504
+ };
505
+
506
+ type TListbox = {
507
+ children: ReactNode | ReactNode[];
508
+ className?: string;
509
+ /**
510
+ * Permite remover los estilos por defecto de la lista a fin de personalizar
511
+ * su aspecto
512
+ */
513
+ unstyled?: boolean;
514
+ onClickNode?: (ev: MouseEvent$1<HTMLElement>) => unknown;
515
+ onDoubleClickNode?: (ev: MouseEvent$1<HTMLElement>) => unknown;
516
+ /**
517
+ * Este evento es lanzado cuando el usuario estando en foco en la lista
518
+ * presiona:
519
+ *
520
+ * - Enter si la selección múltiple está deshabilitada
521
+ * - ctrl+Enter si la selección múltiple está habilitada
522
+ */
523
+ onConfirmSelection?: (ev: TOnConfirmSelection) => unknown;
524
+ onPressEnterOnNode?: (ev: KeyboardEvent<HTMLElement>) => unknown;
525
+ onPressKeyOnNode?: (ev: KeyboardEvent<HTMLElement>) => unknown;
526
+ onSelectionChange?: (ev: TOnSelectionChange) => unknown;
527
+ /**
528
+ * onKeyDown e id no son permitidas dado que se usan para generar el
529
+ * comportamiento correcto del componente
530
+ */
531
+ ulProps?: Omit<BoxProps, 'id' | 'onKeyDown' | 'sx'>;
532
+ } & Partial<Pick<TListboxState, 'allowMultipleCharacterSearch' | 'allowSelection' | 'allowSingleCharacterSearch' | 'isMultipleSelection' | 'searchFunction' | 'startsWithFunction' | 'showSearchbox'>>;
533
+
534
+ type TOnConfirmSelection = {
535
+ originalEvent: KeyboardEvent;
536
+ selectedElements: HTMLElement[];
537
+ focusedElement: HTMLElement;
538
+ };
539
+ type TOnSelectionChange = {
540
+ focusedElement: HTMLElement;
541
+ selectedElements: HTMLElement[];
542
+ };
543
+ type TOnClickNode = MouseEvent$1;
544
+
545
+ declare const Listbox: React$1.MemoExoticComponent<((props: TListbox) => React$1.JSX.Element) & {
546
+ displayName: string;
547
+ }>;
548
+
549
+ declare const LinearLoader: () => React$1.JSX.Element;
550
+
551
+ interface IProgressBar {
552
+ id: string;
553
+ progress?: number;
554
+ loading?: boolean;
555
+ }
556
+ declare const ProgressBar: FC<IProgressBar>;
557
+
558
+ declare const LoaderSpinner: ((props: {
559
+ className?: string | undefined;
560
+ }) => React__default.JSX.Element) & {
561
+ displayName: string;
562
+ };
563
+
564
+ type TModalContext = {
565
+ changeTitle: (newTitle: string) => void;
566
+ close: () => unknown;
567
+ descriptionId: string;
568
+ };
569
+ declare function useModalContext(): TModalContext;
570
+
571
+ interface IDialogHeader {
572
+ className?: string;
573
+ close: () => void;
574
+ hideCloseButton?: boolean;
575
+ id?: string;
576
+ NavBar?: React__default.ReactNode;
577
+ title?: string;
578
+ }
579
+ declare global {
580
+ interface Window {
581
+ BTN_CLOSE: string;
582
+ }
583
+ }
584
+
585
+ type TModal = {
586
+ animationDuration?: number;
587
+ /**
588
+ * Aplica solamente para modales que tengan draggable=true.
589
+ */
590
+ defaultPosition?: {
591
+ left?: string;
592
+ right?: string;
593
+ top?: string;
594
+ bottom?: string;
595
+ };
596
+ /**
597
+ * Si esta variable está en true, el modal se comportará más como una ventana
598
+ * que como un modal
599
+ */
600
+ draggable?: boolean;
601
+ children?: React__default.ReactNode;
602
+ className?: string;
603
+ id?: string;
604
+ initialFocusConfiguration?: IOnFocusConfiguration;
605
+ /**
606
+ * Este retriever será pasado al método focus.on para realizar el foco en el
607
+ * elemento inicial del modal.
608
+ *
609
+ * @see focus
610
+ */
611
+ initialFocusGetter?: (modalInnerRef: HTMLElement) => ReturnType<TFocusRetriever>;
612
+ /**
613
+ * Si se pasa un ref, el modal hará foco sobre el elemento una vez que haya
614
+ * abierto.
615
+ */
616
+ initialFocusRef?: React__default.RefObject<unknown>;
617
+ /**
618
+ * Controla el estado del modal, indicando a la transición de apertura o
619
+ * cierre que debe comenzar, dependiendo de si cambia a true o false
620
+ * respectivamente.
621
+ */
622
+ isOpen?: boolean;
623
+ maxWidth?: number | string;
624
+ /**
625
+ * Permite pasar un componente React que se mostrará a la derecha del título,
626
+ * con el fin de incorporar botones en el header del modal.
627
+ */
628
+ NavBar?: React__default.ReactNode;
629
+ noFocus?: boolean;
630
+ noHeader?: boolean;
631
+ /**
632
+ * Permite definir un callback que será llamado solamente cuando el modal se
633
+ * cierre por medio del click en el overlay, al presionar escape o mediante
634
+ * el botón cerrar del header (La X).
635
+ */
636
+ onClose?: () => void;
637
+ /**
638
+ * Este método recibe el evento del mousedown utilizado para controllar el dragstart. Si el usuario devuelve false, el drag no será realizado.
639
+ */
640
+ onDragStart?: (ev: MouseEvent) => boolean;
641
+ /**
642
+ * Permite definir un callback que será llamado siempre que el modal se
643
+ * cierre, una vez que la animación haya terminado.
644
+ */
645
+ onExited?: () => unknown;
646
+ /**
647
+ * Al pasar un Portal, el modal se abrirá dentro de éste y no directamente en
648
+ * la posición actual dentro del árbol de componentes. Normalmente, este
649
+ * Portal es pasado automáticamente por el hook useModal (No el de la
650
+ * librería, sino el nuestro).
651
+ *
652
+ * @see useModal
653
+ */
654
+ Portal?: React__default.FC<{
655
+ children: React__default.ReactNode;
656
+ }>;
657
+ /**
658
+ * Si es true, el modal será cerrado al presionar escape.
659
+ */
660
+ shouldCloseOnEsc?: boolean;
661
+ /**
662
+ * Si es true, el modal será cerrado al hacer clic en el overlay.
663
+ */
664
+ shouldCloseOnOverlayClick?: boolean;
665
+ size?: TModalSize;
666
+ stretch?: boolean;
667
+ title?: string;
668
+ variant?: string;
669
+ } & Pick<IDialogHeader, 'hideCloseButton'>;
670
+ declare const Modal: React__default.ForwardRefExoticComponent<{
671
+ animationDuration?: number | undefined;
672
+ /**
673
+ * Aplica solamente para modales que tengan draggable=true.
674
+ */
675
+ defaultPosition?: {
676
+ left?: string | undefined;
677
+ right?: string | undefined;
678
+ top?: string | undefined;
679
+ bottom?: string | undefined;
680
+ } | undefined;
681
+ /**
682
+ * Si esta variable está en true, el modal se comportará más como una ventana
683
+ * que como un modal
684
+ */
685
+ draggable?: boolean | undefined;
686
+ children?: React__default.ReactNode;
687
+ className?: string | undefined;
688
+ id?: string | undefined;
689
+ initialFocusConfiguration?: IOnFocusConfiguration | undefined;
690
+ /**
691
+ * Este retriever será pasado al método focus.on para realizar el foco en el
692
+ * elemento inicial del modal.
693
+ *
694
+ * @see focus
695
+ */
696
+ initialFocusGetter?: ((modalInnerRef: HTMLElement) => ReturnType<TFocusRetriever>) | undefined;
697
+ /**
698
+ * Si se pasa un ref, el modal hará foco sobre el elemento una vez que haya
699
+ * abierto.
700
+ */
701
+ initialFocusRef?: React__default.RefObject<unknown> | undefined;
702
+ /**
703
+ * Controla el estado del modal, indicando a la transición de apertura o
704
+ * cierre que debe comenzar, dependiendo de si cambia a true o false
705
+ * respectivamente.
706
+ */
707
+ isOpen?: boolean | undefined;
708
+ maxWidth?: string | number | undefined;
709
+ /**
710
+ * Permite pasar un componente React que se mostrará a la derecha del título,
711
+ * con el fin de incorporar botones en el header del modal.
712
+ */
713
+ NavBar?: React__default.ReactNode;
714
+ noFocus?: boolean | undefined;
715
+ noHeader?: boolean | undefined;
716
+ /**
717
+ * Permite definir un callback que será llamado solamente cuando el modal se
718
+ * cierre por medio del click en el overlay, al presionar escape o mediante
719
+ * el botón cerrar del header (La X).
720
+ */
721
+ onClose?: (() => void) | undefined;
722
+ /**
723
+ * Este método recibe el evento del mousedown utilizado para controllar el dragstart. Si el usuario devuelve false, el drag no será realizado.
724
+ */
725
+ onDragStart?: ((ev: MouseEvent) => boolean) | undefined;
726
+ /**
727
+ * Permite definir un callback que será llamado siempre que el modal se
728
+ * cierre, una vez que la animación haya terminado.
729
+ */
730
+ onExited?: (() => unknown) | undefined;
731
+ /**
732
+ * Al pasar un Portal, el modal se abrirá dentro de éste y no directamente en
733
+ * la posición actual dentro del árbol de componentes. Normalmente, este
734
+ * Portal es pasado automáticamente por el hook useModal (No el de la
735
+ * librería, sino el nuestro).
736
+ *
737
+ * @see useModal
738
+ */
739
+ Portal?: React__default.FC<{
740
+ children: React__default.ReactNode;
741
+ }> | undefined;
742
+ /**
743
+ * Si es true, el modal será cerrado al presionar escape.
744
+ */
745
+ shouldCloseOnEsc?: boolean | undefined;
746
+ /**
747
+ * Si es true, el modal será cerrado al hacer clic en el overlay.
748
+ */
749
+ shouldCloseOnOverlayClick?: boolean | undefined;
750
+ size?: TModalSize | undefined;
751
+ stretch?: boolean | undefined;
752
+ title?: string | undefined;
753
+ variant?: string | undefined;
754
+ } & Pick<IDialogHeader, "hideCloseButton"> & React__default.RefAttributes<HTMLDivElement>>;
755
+
756
+ interface ICalendarModal extends TModal {
757
+ handleClickDay: (date: Date) => void;
758
+ onCancel: () => void;
759
+ calValue?: Date;
760
+ locale: string;
761
+ }
762
+ declare const CalendarModal: React__default.ForwardRefExoticComponent<ICalendarModal & React__default.RefAttributes<HTMLDivElement>>;
763
+
764
+ type TUseModalConfiguration = Pick<TModal, 'onClose' | 'onExited'> & {
765
+ debugPerformanceName?: string;
766
+ isDefaultOpen?: boolean;
767
+ onOpen?: () => unknown;
768
+ portalArgs?: Omit<Args, 'containerId'>;
769
+ preFetcher?: () => Promise<void>;
770
+ };
771
+ /**
772
+ * Este hook provee una forma muy sencilla de utilizar nuestro modal. Provee
773
+ * varias funcionalidades interesantes para poder manipular el modal en
774
+ * distintas circunstancias:
775
+ *
776
+ * Objeto parámetro:
777
+ *
778
+ * - **defaultOpen**, Boolean, si es true el modal aparecerá abierto al montar
779
+ * y sino aparecerá cerrado.
780
+ * - **onOpen**: Event listener que será llamado en el momento exacto en que la
781
+ * orden de apertura del modal fue dada.
782
+ * - **onClose**: Event listener que será llamado en el momento exacto en que
783
+ * el modal es cerrado, ya sea por un click en el overlay o porque la tecla
784
+ * escape fue presionada.
785
+ * - **onExited**, Event listener que será llamado luego de que la animación de
786
+ * cierre del modal terminó.
787
+ * - **preFetcher**, este método deberá devolver una promesa y en dicha promesa
788
+ * deberá realizar cualquier operación que fuera necesaria antes de abrir el
789
+ * modal, ejemplo: cargar la información que el modal debe mostrar. Si este
790
+ * método es pasado, será llamado antes de abrir el modal y la vista se pondrá
791
+ * en modo de carga (la propiedad isLoading devuelta y la propiedad isLoading
792
+ * del OpenModalContextProvider estarán en true), hasta que la promesa sea
793
+ * resuelta, momento en que se abrirá el modal e isLoading será puesto en false.
794
+ * - **portalArgs**, objeto de configuración aceptado por el hook usePortal de
795
+ * **react-cool-portal**.
796
+ *
797
+ * Objeto devuelto:
798
+ *
799
+ * - Para un modal en donde el botón de abrir el modal esté inserto dentro del
800
+ * componente que lo utiliza, se devuelven los métodos **show** y **hide**.
801
+ * - Para un modal en donde el botón de abrir el modal esté fuera del
802
+ * componente, se devuelve **openModalContextValue**, que es el valor que debe
803
+ * pasarse al contexto de tipo OpenModalContextProvider, un contexto que
804
+ * puede ser utilizado para renderizar el botón encargado de abrir el modal,
805
+ * fuera del alcance del componente que define el modal en sí. Se muestra un
806
+ * ejemplo más abajo.
807
+ * - Todos los demás elementos devueltos son para pasar directamente al modal,
808
+ * entre ellos se encuentran las propiedades que el modal utiliza para saber si
809
+ * debe estar abierto, los event listeners correspondientes y un portal, que el
810
+ * modal usará para mostrarse dentro del área de modales, lo cual es sumamente
811
+ * importante para que el focusController funcione correctamente.
812
+ *
813
+ * @see OpenModalContextProvider
814
+ * @see usePortal
815
+ *
816
+ * @example
817
+ *
818
+ const { openModalContextValue, ...modalProps } = useModal(
819
+ React.useMemo(() => ({
820
+ onClose: () => console.log("Al presionar en cerrar."),
821
+ onExited: () => console.log("Al terminar la animación de cierre."),
822
+ onOpen: () => console.log("Al abrir."),
823
+ }), [])
824
+ );
825
+
826
+ return (
827
+ <OpenModalContext.Provider value={openModalContextValue}>
828
+ <OpenModalContext.Consumer>
829
+ {({ isLoading, show }) => (
830
+ <Button isLoading={isLoading} onClick={show}>Open modal</Button>
831
+ )}
832
+ </OpenModalContext.Consumer>
833
+ <Modal shouldCloseOnEsc shouldCloseOnOverlayClick {...modalProps}>
834
+ Hello world
835
+ </Modal>
836
+ </OpenModalContext.Provider>
837
+ );
838
+ */
839
+ declare function useModal(configuration?: TUseModalConfiguration): {
840
+ hide: () => void;
841
+ isLoading: boolean;
842
+ isOpen: boolean;
843
+ onClose: () => void;
844
+ onExited: () => void;
845
+ openModalContextValue: {
846
+ isLoading: boolean;
847
+ show: () => void;
848
+ };
849
+ Portal: React__default.FC<{
850
+ children: React__default.ReactNode;
851
+ }>;
852
+ show: () => void;
853
+ };
854
+
855
+ declare const Confirm: ({ children, additionalButtons, additionalButtonsOnRight, cancelButtonText: cancelText, className, confirmButtonText: confirmText, confirmButtonVariant, contentRef, disabled, hideCancelButton, hideConfirmButton, isLoading, onCancel, onConfirm, variant, }: Omit<IConfirm, 'title'>) => React$1.JSX.Element;
856
+
857
+ interface IDialogButtonBar {
858
+ children: React$1.ReactNode;
859
+ className?: string;
860
+ }
861
+ declare const DialogButtonBar: React$1.FC<IDialogButtonBar>;
862
+
863
+ interface IOverlay extends BoxProps {
864
+ children: React$1.ReactNode;
865
+ className?: string;
866
+ onOverlayClicked: (event: React$1.MouseEvent<HTMLDivElement>) => void;
867
+ /**
868
+ * Permite pasar un callback que será llamado una vez que el overlay termine
869
+ * de cerrarse.
870
+ */
871
+ onExited: () => void;
872
+ isOpen?: boolean;
873
+ shouldAvoidInitialFocusTrap?: boolean;
874
+ stretch?: boolean;
875
+ transitionDuration?: number;
876
+ }
877
+ declare const Overlay: React$1.ForwardRefExoticComponent<IOverlay & React$1.RefAttributes<unknown>>;
878
+
879
+ declare const AutoEllipsis: ({ children, findParent, overrideStyles, }: {
880
+ children: ReactNode;
881
+ /**
882
+ * Si se pasa el método findParent, será invocado con el nodo de AutoEllipsis
883
+ * para dar control sobre cuál es el elemento al que se le clonarán los
884
+ * estilos.
885
+ */
886
+ findParent?: ((currentElement: HTMLElement) => HTMLElement) | undefined;
887
+ /**
888
+ * Si se pasa overrideStyles, será invocado con el nodo actual de
889
+ * AutoEllipsis para tomar decisiones acerca de cuáles estilos serán
890
+ * aplicados.
891
+ */
892
+ overrideStyles?: ((currentElement: HTMLElement) => Partial<CSSStyleDeclaration>) | undefined;
893
+ }) => React$1.JSX.Element;
894
+
895
+ interface IMakeResponsiveComponent<P extends Record<string, unknown>> {
896
+ breakPoints: number[];
897
+ Component: FunctionComponent<P & {
898
+ breakPoint: number;
899
+ breakPointWidth: number;
900
+ containerWidth: number;
901
+ }>;
902
+ /**
903
+ * Este HOC hace un setState cada vez que cambia el ancho del contenedor. Hay
904
+ * situaciones en las que es deseable agregar un debounce a este
905
+ * comportamiento para mejorar la performance. *Por defecto usa 100*
906
+ */
907
+ debounce?: number;
908
+ /**
909
+ * Por defecto usa 4.
910
+ */
911
+ defaultBreakpoint?: number;
912
+ }
913
+ interface IResponsiveComponent<P> extends FC<P> {
914
+ setBreakpoints: {
915
+ current: (breakPoints: number[]) => void;
916
+ };
917
+ }
918
+ /**
919
+ * El método makeResponsiveComponent agrega un wrapper alrededor de un
920
+ * componente para conocer el ancho del contenedor del mismo. De esta forma, es
921
+ * fácil predecir qué ancho dispone el mismo para renderizarse y de esa forma
922
+ * poder tomar decisiones de responsividad que no dependen del ancho de la
923
+ * pantalla sino del espacio donde se encuentra.
924
+ */
925
+ declare const makeResponsiveComponent: <P extends Record<string, unknown>>({ breakPoints, Component, defaultBreakpoint, }: IMakeResponsiveComponent<P>) => IResponsiveComponent<P & {
926
+ breakPoints?: number[] | undefined;
927
+ }>;
928
+
929
+ /**
930
+ * Type-ahead is a behavior pattern which helps the user in the lists and trees
931
+ * (and literally says: "especially those with more than seven options")
932
+ * navigation. The literal description in Wai-Aria documentation is:
933
+ *
934
+ * - Type a character: focus moves to the next item with a name that starts
935
+ * with the typed character.
936
+ *
937
+ * - Type multiple characters in rapid succession:
938
+ * focus moves to the next item with a name that starts with the string of
939
+ * characters typed.
940
+ *
941
+ * It is a little arbitrary what is rapid succession. As I couln't find any
942
+ * documentation about what rapid succession means, I will make some tests in
943
+ * order to determine what is more comfortable to accomplish one situation or
944
+ * the other.
945
+ *
946
+ * To callibrate this function it is suficient to override the frequency
947
+ * parameter, which after some tests I understand is best at 2.5 (keys per
948
+ * second).
949
+ */
950
+
951
+ declare class WaiTypeAhead extends EventEmitter<{
952
+ multipleKeys: string;
953
+ singleKey: string;
954
+ typeUpdate: string;
955
+ }> {
956
+ #private;
957
+ frequency: number;
958
+ timeout: number;
959
+ typing: string;
960
+ constructor(props?: {
961
+ onMultipleKeys?: (value: string) => unknown;
962
+ onSingleKey?: (value: string) => unknown;
963
+ onTypeUpdate?: (value: string) => unknown;
964
+ });
965
+ type(ev: KeyboardEvent): void;
966
+ }
967
+
968
+ type TIcon<P = Record<string, unknown>> = {
969
+ /**
970
+ * Permite el pasaje de propoiedades arbitrarias a cada nodo. Se podría usar
971
+ * por ejemplo para almacenar la url que debe ser llamada cuando se hace doble
972
+ * click en un ícono.
973
+ */
974
+ additionalProps?: P;
975
+ /**
976
+ * Se pide un ariaLabel como requerido por motivos de accesibilidad.
977
+ */
978
+ ariaLabel: string;
979
+ /**
980
+ * Permite el pasaje de clases arbitrarias a cada ícono.
981
+ */
982
+ className?: string;
983
+ id: TId;
984
+ icon?: TIconName | TIconType;
985
+ imageUrl?: string;
986
+ /**
987
+ * Es el texto que se mostrará debajo de la imagen.
988
+ */
989
+ label: string;
990
+ /**
991
+ * Permite modificar el color individual de un ícono.
992
+ */
993
+ textColor?: string;
994
+ };
995
+ type TIconsList<P = Record<string, unknown>> = {
996
+ /**
997
+ * Listado de íconos
998
+ */
999
+ icons: TIcon<P>[];
1000
+ iconRenderer?: TIconRenderer<P>;
1001
+ /**
1002
+ * Por defecto se usa iconWidth=100.
1003
+ *
1004
+ * El iconSize indica el ancho del contenedor del ícono.
1005
+ */
1006
+ iconWidth?: number;
1007
+ /**
1008
+ * Si bien el gap horizontal es calculado automáticamente, es posible
1009
+ * especificar cuál es el mínimo gap que debe mostrarse. *Por defecto se usará
1010
+ * 30*
1011
+ */
1012
+ minHorizontalGap?: number;
1013
+ /**
1014
+ * Este callback es llamado cuando se hace click en un ícono
1015
+ */
1016
+ onIconClick?: (ev: MouseEvent$1<HTMLElement>, icon: TIcon<P>) => unknown;
1017
+ /**
1018
+ * Este callback es llamado cuando se hace doble click en un ícono
1019
+ */
1020
+ onIconDoubleClick?: (ev: MouseEvent$1<HTMLElement>, icon: TIcon<P>) => unknown;
1021
+ /**
1022
+ * Este método se usa para obtener detalles de un ícono. Es llamado cuando se
1023
+ * hace foco o cuando se posiciona el mouse en un ícono. Si no está declarado
1024
+ * los íconos no mostrarán detalles. Si está declarado deberá devolver un
1025
+ *
1026
+ * Record<string, ReactNode> y cada entrada será mostrada como una fila de
1027
+ * detalle.
1028
+ */
1029
+ onIconGetDetails?: (icon: TIcon<P>) => ReactNode;
1030
+ /**
1031
+ * Permite agregar comportamiento personalizado a los eventos de teclado.
1032
+ */
1033
+ onIconKeyDown?: (ev: KeyboardEvent<HTMLElement>, icon: TIcon<P>) => unknown;
1034
+ /**
1035
+ * Normalmente el listado coloca padding horizontal para distribuir
1036
+ * uniformemente los íconos, de forma que la distancia entre ellos sea la
1037
+ * misma que la existente en la izquierda y derecha. Si se pasa esta
1038
+ * propiedad, el primer y úlitmo ícono estarán colocados sobre los bordes y el
1039
+ * espacio restante se distribuirá entre los gaps existnetes
1040
+ */
1041
+ removeHorizontalPadding?: boolean;
1042
+ /**
1043
+ * El espaciado horizontal se calcula automáticamente, sin embargo si es
1044
+ * posible definir el vertical. Por defecto se usa 0.
1045
+ */
1046
+ verticalGap?: number;
1047
+ };
1048
+ /**
1049
+ * Por defecto se usa DefaultIconRenderer. El pasaje de un nuevo IconRenderer
1050
+ * permite modificar la forma en que se distribuyen en pantalla los distintos
1051
+ * atributos de cada ícono.
1052
+ *
1053
+ * Una particularidad es cómo se definen los estilos cuando el ícono está en
1054
+ * foco: Se usa el selector **'.iconsList__keyHandler:focus .focused
1055
+ * .iconsList__icon__wrapper'**, que es donde se aplican los estilos
1056
+ * correspondientes al foco.
1057
+ */
1058
+ type TIconRenderer<P = Record<string, unknown>> = FunctionComponent<TIcon<P>>;
1059
+
1060
+ declare const DefaultIconRenderer: React$1.NamedExoticComponent<TIcon<Record<string, unknown>>>;
1061
+
1062
+ declare const IconsList: {
1063
+ <P extends Record<string, unknown>>(props: TIconsList<P>, ref: ForwardedRef<HTMLDivElement>): React$1.JSX.Element;
1064
+ displayName: string;
1065
+ };
1066
+
1067
+ /**
1068
+ * Permite importar un componente en forma dinámica con ruta relativa a
1069
+ * /customComponents
1070
+ */
1071
+ declare function importComponent<T = unknown>(path: string): React$1.LazyExoticComponent<ComponentType<T>>;
1072
+
1073
+ type TClickListener = () => unknown;
1074
+ type TItemState = Pick<TToolbarIconButton, 'disabled' | 'toggled' | 'isLoading'>;
1075
+ declare class ToolbarController extends EventEmitter<{
1076
+ pressEnter: string;
1077
+ updateItemState: string;
1078
+ }> {
1079
+ eventListeners: Record<string, TClickListener[]>;
1080
+ itemsState: Record<string, TItemState>;
1081
+ hooks: {
1082
+ useItemState: (id: string, initialState: TItemState) => TItemState;
1083
+ };
1084
+ setItemState: (id: string, newState: Partial<TItemState>) => void;
1085
+ Context: ({ children }: {
1086
+ children: ReactNode;
1087
+ }) => React$1.JSX.Element;
1088
+ }
1089
+
1090
+ type TToolEventState = {
1091
+ isLoading: boolean;
1092
+ isToggled: boolean;
1093
+ };
1094
+ type TToolbarIconButton = {
1095
+ action: (props: TToolEventState, controller: ToolbarController) => unknown;
1096
+ actionSource?: 'click' | 'mousedown';
1097
+ /**
1098
+ * Si se pasa allowToggle y no se pasa toggled ( ni en true ni en false ),
1099
+ * entonces el estado de toggle será controlado internamente en el toolbar
1100
+ */
1101
+ allowToggle?: boolean;
1102
+ /**
1103
+ * Si se desea usar defaultToggled, debería pasarse también allowToggle
1104
+ */
1105
+ defaultToggled?: boolean;
1106
+ disabled?: boolean;
1107
+ icon: TIconType | TIconName;
1108
+ iconSize?: 'Xs' | 'Sm' | 'Md' | 'Lg' | 'Xl' | undefined;
1109
+ id: string;
1110
+ isLoading?: boolean;
1111
+ title: string;
1112
+ /**
1113
+ * Siempre que se pase toggled, no importa si en true o en false, el
1114
+ * usuario del toolbar deberá mantener la lógica de persistencia del
1115
+ * toggle
1116
+ */
1117
+ toggled?: boolean;
1118
+ };
1119
+ type TToolInput = {
1120
+ inputProps?: InputProps;
1121
+ label?: string;
1122
+ };
1123
+
1124
+ declare const ToolbarTextButton: (props: ISimpleButton) => React$1.JSX.Element;
1125
+
1126
+ declare const ToolbarIconButton: ({ id, action, actionSource, allowToggle, defaultToggled, disabled, icon, iconSize, isLoading: outerIsLoading, title, toggled: toggledProp, }: TToolbarIconButton) => React$1.JSX.Element;
1127
+
1128
+ declare const ToolbarInput: (tool: TToolInput) => React$1.JSX.Element;
1129
+
1130
+ declare const ToolbarSeparator: () => React$1.JSX.Element;
1131
+
1132
+ declare const ToolbarSelect: (props: SelectProps) => React$1.JSX.Element;
1133
+
1134
+ declare const Toolbar: ({ children, getController, }: {
1135
+ children: ReactNode;
1136
+ /**
1137
+ * El controlador permite gestionar el estado de los distintos elementos de
1138
+ * la toolbar
1139
+ */
1140
+ getController?: ((newController: ToolbarController) => unknown) | undefined;
1141
+ }) => React$1.JSX.Element;
1142
+
1143
+ type TSortableListItem = {
1144
+ additionalProps?: any;
1145
+ boxProps?: Omit<BoxProps, 'id'>;
1146
+ id: string;
1147
+ children: ReactNode;
1148
+ };
1149
+ declare const SortableListItem: React$1.MemoExoticComponent<({ boxProps, id, children }: TSortableListItem) => React$1.JSX.Element>;
1150
+
1151
+ declare const UnstyledSortableList: ({ boxProps, children, onSortChange, }: {
1152
+ boxProps?: BoxProps | undefined;
1153
+ children: ReactNode;
1154
+ onSortChange?: ((items: ReactElement<TSortableListItem>[]) => unknown) | undefined;
1155
+ }) => React$1.JSX.Element;
1156
+ declare const SortableList: ((props: {
1157
+ boxProps?: BoxProps | undefined;
1158
+ children: ReactNode;
1159
+ onSortChange?: ((items: ReactElement<TSortableListItem>[]) => unknown) | undefined;
1160
+ }) => React$1.JSX.Element) & {
1161
+ displayName: string;
1162
+ };
1163
+
1164
+ declare const TabsList: ({ arrowsBehavior, }: {
1165
+ arrowsBehavior?: "open" | "focus" | undefined;
1166
+ }) => React__default.JSX.Element;
1167
+
1168
+ declare class TabsController<AdditionalPropsType extends Record<string, unknown> = Record<string, unknown>, TabType extends TTab<AdditionalPropsType> = TTab<AdditionalPropsType>> {
1169
+ #private;
1170
+ private props;
1171
+ propsStore: PropsStore<TTab<AdditionalPropsType>>;
1172
+ stateKey: string;
1173
+ get stateStore(): PropsStore<TTabsListState>;
1174
+ get activeTabs(): TId[];
1175
+ get tabsList(): TId[];
1176
+ constructor(name: string, props: TTabs<AdditionalPropsType>, initialTabs?: TabType[]);
1177
+ /**
1178
+ * Obviamente agrega un tab al listado de tabs
1179
+ */
1180
+ append(tab: Omit<TabType, 'tabAdditionalProps'> & Partial<Pick<TabType, 'tabAdditionalProps'>>): void;
1181
+ closeAll(closeFixedTabsAsWell?: boolean, force?: boolean): Promise<void>;
1182
+ closeToRight(targetId: TId): Promise<void>;
1183
+ closeToLeft(targetId: TId): Promise<void>;
1184
+ closeOthers(targetId: TId): Promise<void>;
1185
+ closeTab(tabId: TId, force?: boolean): Promise<boolean>;
1186
+ focusNextTab(): TId | null;
1187
+ focusPreviousTab(): TId | null;
1188
+ focusTab(tabId: TId): void;
1189
+ getTabById(tabId: TId): TTab<AdditionalPropsType>;
1190
+ getTabElement(tabId: TId): Element | null;
1191
+ handleKeyDown(ev: React__default.KeyboardEvent): void;
1192
+ openNextTab(): TId | null;
1193
+ openPreviousTab(): TId | null;
1194
+ get state(): TTabsListState;
1195
+ /**
1196
+ * Se utiliza para hacer que el tab aparezca visible en el listado
1197
+ *
1198
+ * @param justThis Normalmente las tabs se abren de a una, pero si este parámetro se pasa en false, es posible abrir más de una a la vez.
1199
+ */
1200
+ openTab(tabId: TId, justThis?: boolean): void;
1201
+ }
1202
+
1203
+ type TTab<AdditionalPropsType extends Record<string, unknown> = Record<string, unknown>> = {
1204
+ addEvent?: (ev: 'onFocusTab', cb: (ev: {
1205
+ stop: () => void;
1206
+ }) => unknown) => unknown;
1207
+ content: React__default.FunctionComponent<{
1208
+ tab: TTab<AdditionalPropsType>;
1209
+ }>;
1210
+ icon?: TIconName | TIconType;
1211
+ /**
1212
+ * El id es importante ya que se utiliza por temas de accesibilidad. Es
1213
+ * importante asegurarse de que sea único.
1214
+ */
1215
+ id: TId;
1216
+ isClosable?: boolean;
1217
+ isDisabled?: boolean;
1218
+ /**
1219
+ * Los tabs que estén marcados como fixed aparecerán al inicio del listado.
1220
+ */
1221
+ isFixed?: boolean;
1222
+ isFocused?: boolean;
1223
+ /**
1224
+ * Si se marca como iconTab, se oculta el label y solamente se muestra el
1225
+ * ícono.
1226
+ */
1227
+ isIconTab?: boolean;
1228
+ isLoading?: boolean;
1229
+ isOpen?: boolean;
1230
+ /**
1231
+ * Si un tab se marca como lazy, el iframe no se inicializará hasta que no
1232
+ * sea abierta por primera vez.
1233
+ */
1234
+ lazy?: boolean;
1235
+ /**
1236
+ * Cuando se cierra un tab que tiene un método onBeforeClose, el mismo será
1237
+ * llamado y deberá devolver un boolean o un string. Si devuelve true, se
1238
+ * cierra. Si devuelve false, se muestra un cartel de confirmación genérico y
1239
+ * si se devuelve un string, se muestra un cartel de confirmación con el
1240
+ * string devuelto. En caso de que el usuario confirme el cuadro de diálogo,
1241
+ * el tab será cerrado de todas formas. Es decir, no hay forma de evitar que
1242
+ * el tab sea cerrado si el usuario decide continuar con la acción. Para
1243
+ * evitar que un tab sea cerrado, debe pasarse isClosable=false
1244
+ */
1245
+ onBeforeClose?: () => boolean | string | Promise<boolean | string>;
1246
+ /**
1247
+ * Este callback será llamado cada vez que el tab sea abierto
1248
+ */
1249
+ onFocus?: (ev: TTab<AdditionalPropsType>) => unknown;
1250
+ /**
1251
+ * Es el texto que se va a mostrar en el tab
1252
+ */
1253
+ label: string;
1254
+ labelRenderer?: TTabRenderer;
1255
+ /**
1256
+ * Se pueden pasar propiedades adicionales que serán recibidas en cada
1257
+ * evento, de forma de poder compartir piezas de información útiles en las
1258
+ * distintas partes de la aplicación.
1259
+ */
1260
+ tabAdditionalProps: AdditionalPropsType;
1261
+ tabId: TId;
1262
+ title?: string;
1263
+ };
1264
+ type TTabs<AdditionalPropsType extends Record<string, unknown> = Record<string, unknown>> = {
1265
+ getHandler?: (handler: TabsController<AdditionalPropsType>) => unknown;
1266
+ /**
1267
+ * Este id se utiliza para asignar un prefijo a los ids de los distintos
1268
+ * grupos de tabs, de forma que aún habiendo dos tabs con mismo id en
1269
+ * distintos grupos, el id generado sea distinto.
1270
+ */
1271
+ id: TId;
1272
+ /**
1273
+ * Permite abrir varias tabs al mismo tiempo
1274
+ */
1275
+ isMultiple?: boolean;
1276
+ /**
1277
+ * Este evento es llamado cada vez que un tab fue cerrado. En caso de que el
1278
+ * callback onRequestClose haya sido provisto, el orden de llamado es:
1279
+ * onRequestClose === true ? onCloseTab : doNothing
1280
+ */
1281
+ onCloseTab?: (tab: TTab<AdditionalPropsType>) => unknown;
1282
+ /**
1283
+ * Este evento es llamado cada vez que un tab es abierto por acción del
1284
+ * usuario, es decir, cuando se hace click en su label y éste es mostrado.
1285
+ */
1286
+ onOpenTab?: (tab: TTab<AdditionalPropsType>) => unknown;
1287
+ /**
1288
+ * Este callback es llamado cada vez que se hace click en el botón cerrar. Se
1289
+ * utiliza para permitir o denegar el cierre del tab, por lo que debe
1290
+ * retornar un boolean o una promesa de booleano. Es útil por ejemplo para
1291
+ * abrir un cuadro de diálogo de confirmación antes de continuar.
1292
+ */
1293
+ onRequestClose?: (tab: TTab<AdditionalPropsType>) => boolean | Promise<boolean>;
1294
+ orientation?: 'horizontal' | 'vertical';
1295
+ /**
1296
+ * Esta prop solo será tomada en cuenta al montar. Para agregar tabs luego,
1297
+ * es necesario hacer uso de getHandler.
1298
+ */
1299
+ initialTabs?: TTab<AdditionalPropsType>[];
1300
+ };
1301
+ type TTabRenderer<AdditionalPropsType extends Record<string, unknown> = Record<string, unknown>> = (props: {
1302
+ tab: TTab<AdditionalPropsType>;
1303
+ }) => React__default.ReactElement;
1304
+ type TTabsListState = {
1305
+ focusedTab: TId | null;
1306
+ openTabs: TId[];
1307
+ tabs: TId[];
1308
+ timestamp: number;
1309
+ };
1310
+
1311
+ declare const DefaultTabsLabelRenderer: TTabRenderer;
1312
+
1313
+ declare const TabsContent: (props: Omit<BoxProps, 'children'>) => React__default.JSX.Element;
1314
+
1315
+ declare const Tabs: <AdditionalPropsType extends Record<string, unknown> = Record<string, unknown>>({ id, onCloseTab, onOpenTab, onRequestClose, className, orientation, getHandler, initialTabs, isMultiple, onKeyDown, ...props }: TTabs<AdditionalPropsType> & Omit<BoxProps, 'id' | 'as' | 'role'>, ref: React__default.ForwardedRef<HTMLDivElement>) => React__default.JSX.Element;
1316
+
1317
+ type TOpenModal = Pick<TModal, 'NavBar' | 'Portal' | 'children' | 'className' | 'hideCloseButton' | 'initialFocusGetter' | 'initialFocusConfiguration' | 'maxWidth' | 'noHeader' | 'onExited' | 'shouldCloseOnEsc' | 'shouldCloseOnOverlayClick' | 'size' | 'stretch' | 'title' | 'variant' | 'draggable' | 'onClose' | 'onDragStart' | 'defaultPosition'> & {
1318
+ id?: string;
1319
+ children?: React__default.ReactNode;
1320
+ confirmProps?: Omit<IConfirm, 'onConfirmOk' | 'onConfirmCancel' | 'children'>;
1321
+ /**
1322
+ * Determina si el modal debe abrirse al ser montado o no.
1323
+ */
1324
+ isDefaultOpen?: boolean;
1325
+ /**
1326
+ * El método onConfirm permite pasar un callback que devuelva una promesa. En
1327
+ * caso de ser así, si esta promesa resuelve a true, el modal será cerrado o
1328
+ * en caso contrario permanecerá abierto. Es útil en situaciones en donde es
1329
+ * necesario corroborar una condición antes de cerrar el modal. En la
1330
+ * situación en que se decida mantener el modal abierto, está a cargo del
1331
+ * usuario del componente realizar las indicaciones visuales correspondientes
1332
+ * para indicar al usuario el motivo por el cual el modal no fue cerrado.
1333
+ */
1334
+ onConfirm?: () => Promise<boolean> | boolean | void;
1335
+ /**
1336
+ * El método onCancel será llamado siempre que un usuario cierre el modal,
1337
+ * excepto cuando haya presionado en onConfirm.
1338
+ */
1339
+ onCancel?: () => void;
1340
+ /**
1341
+ * Permite introducir html directamente dentro del contenedor del modal.
1342
+ */
1343
+ html?: string;
1344
+ };
1345
+
1346
+ declare class ApiaUtilModalHandler {
1347
+ private id;
1348
+ close: () => void;
1349
+ constructor(id: string, close: () => void);
1350
+ }
1351
+ declare class ApiaUtilModals {
1352
+ #private;
1353
+ constructor();
1354
+ open(props: TOpenModal): ApiaUtilModalHandler;
1355
+ Component: () => React$1.JSX.Element;
1356
+ }
1357
+
1358
+ declare class ApiaUtilNotifications {
1359
+ close: (id: TNotificationId | INotification) => void;
1360
+ closeAll: () => void;
1361
+ notify: (notification: TDispatchedNotification) => void;
1362
+ useSelector: (selector: TNotificationSelector<any>) => INotification<_apia_notifications.TNotificationType>[];
1363
+ Component: () => React$1.JSX.Element;
1364
+ }
1365
+
1366
+ declare global {
1367
+ interface Window {
1368
+ TAB_ID: string;
1369
+ }
1370
+ interface HTMLIFrameElement {
1371
+ tabId: TId;
1372
+ }
1373
+ }
1374
+ declare class ApiaUtilCurrentTab {
1375
+ /**
1376
+ * Este método se usa para establecer un callback que será llamado al momento
1377
+ * de cerrar la pestaña. Este callback podrá devolver false indicando que hay
1378
+ * cambios no guardados, en cuyo caso el sistema alertará al usuario acerca de
1379
+ * ello con un cartel de confirmación.
1380
+ */
1381
+ canClose(cb: () => boolean): void;
1382
+ changeTitle(newTitle: string): void;
1383
+ /**
1384
+ * El parámetro force sirve para las situaciones en las que el tab podría
1385
+ * preguntar si se desean perder los cambios. En caso de que se pase en true,
1386
+ * no se preguntará nada y se cerrará la pestaña.
1387
+ */
1388
+ close(force?: boolean): void;
1389
+ getId(): TId;
1390
+ getProps(): TTab<Record<string, unknown>> | undefined;
1391
+ update(props: Partial<Partial<TTab>>): void;
1392
+ }
1393
+
1394
+ declare class ApiaUtilTabsController {
1395
+ currentTab: ApiaUtilCurrentTab;
1396
+ closeTab(tabId: string, force?: boolean): void;
1397
+ getHandler(): TabsController<Record<string, unknown>, TTab<Record<string, unknown>>>;
1398
+ /**
1399
+ * openApiaTab y openTab son sinónimos.
1400
+ */
1401
+ openTab(title: string, url: string): Promise<TId>;
1402
+ }
1403
+
1404
+ type TApiaUtilConfirm = Pick<IConfirm, 'additionalButtons' | 'additionalButtonsOnRight' | 'cancelButtonText' | 'children' | 'className' | 'confirmButtonText' | 'confirmButtonVariant' | 'contentRef' | 'hideCancelButton' | 'hideConfirmButton' | 'title' | 'variant'>;
1405
+ type TAlert = {
1406
+ children: ReactNode;
1407
+ title: string;
1408
+ };
1409
+ declare class ApiaUtilDialogs {
1410
+ #private;
1411
+ alert(props: TAlert): Promise<void>;
1412
+ confirm(props: TApiaUtilConfirm): Promise<boolean>;
1413
+ Component: () => React$1.JSX.Element;
1414
+ }
1415
+
1416
+ declare class ApiaUtilParsers {
1417
+ /**
1418
+ * Toma un número sin separadores de miles y lo devuelve en el formato
1419
+ * establecido por los parámetros de Apia para separadores de miles y
1420
+ * separadores de decimales.
1421
+ */
1422
+ addThousSeparator(nStr: string | number): string;
1423
+ apiaNumber(pValue: number): number | string;
1424
+ /**
1425
+ * Toma un número en formato Apia y lo devuelve como float en javascript.
1426
+ */
1427
+ jsNumber(value: string): number | string;
1428
+ /**
1429
+ * Hay muchos valores que podrían querer ser interpretados como booleano
1430
+ *
1431
+ * Devuelve true si el valor coincide con true|T|t|1 y false si coincide con
1432
+ * false|F|f|0. Si no coincide con ninguna de éstas hace throw de un error.
1433
+ */
1434
+ parseBool(val: string): boolean;
1435
+ }
1436
+
1437
+ type TAttachToElement = (() => HTMLElement) | RefObject<HTMLElement>;
1438
+ type TPreferredOrientationX = 'left' | 'right';
1439
+ type TPreferredOrientationY = 'top' | 'bottom';
1440
+ type TSize = {
1441
+ width: number;
1442
+ height: number;
1443
+ };
1444
+ type TSizeWithAuto = {
1445
+ width: number | 'auto';
1446
+ height: number | 'auto';
1447
+ };
1448
+ type TPosition = {
1449
+ left: number;
1450
+ top: number;
1451
+ };
1452
+ type TAttachToElementAnchorPoint = 'center' | 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight';
1453
+ type TTooltip = {
1454
+ /** Define el contenido del tooltip */
1455
+ children?: ReactNode;
1456
+ /**
1457
+ * Indica si el tooltip se cierra con escape. Valor por defecto: true.
1458
+ */
1459
+ closeOnEscape?: boolean;
1460
+ /**
1461
+ * Indica si el tooltip se cierra al desplazar el puntero del mouse fuera del
1462
+ * tooltip. Valor por defecto: true.
1463
+ */
1464
+ closeOnMouseLeaveTooltip?: boolean | ((ev: MouseEvent) => boolean);
1465
+ /**
1466
+ * Indica si el tooltip se cierra al desplazar el puntero del mouse fuera del
1467
+ * elemento al que el tooltip está anclado. Valor por defecto: true.
1468
+ */
1469
+ closeOnMouseLeaveAttachedElement?: boolean | ((ev: MouseEvent) => boolean);
1470
+ /**
1471
+ * Indica si el tooltip se cierra al hacerle click. Valor por defecto: false.
1472
+ */
1473
+ closeOnClick?: boolean;
1474
+ /**
1475
+ * Indica si el tooltip se cierra al hacer click fuera de él. Valor por
1476
+ * defecto: true.
1477
+ */
1478
+ closeOnClickOut?: boolean | ((ev: MouseEvent) => boolean);
1479
+ /**
1480
+ * Indica si el tooltip se cierra al hacer scroll en un elemento externo al
1481
+ * tooltip. Valor por defecto: true.
1482
+ */
1483
+ closeOnScrollOut?: boolean;
1484
+ /**
1485
+ * Por defecto está en true. Cierra los demás tooltips al abrirse
1486
+ */
1487
+ closeOthers?: boolean;
1488
+ /**
1489
+ * Permite determinar sobre qué elemento se abre el tooltip
1490
+ */
1491
+ attachToElement?: TAttachToElement;
1492
+ /**
1493
+ * Cuando se desea hacer attach a un elemento, es posible posicionar el menú
1494
+ * en cualquiera de los cuatro vétices definidos por el box que lo contiene o
1495
+ * bien ubicarlo exactamente en el centro.
1496
+ *
1497
+ * Por defecto se colocará en topRight.
1498
+ *
1499
+ * Además el tooltip se extenderá según la orientación definida en los
1500
+ * parámetros preferredOrientationX y preferredOrientationY.
1501
+ */
1502
+ attachToElementAnchorPoint?: TAttachToElementAnchorPoint;
1503
+ attachToMousePosition?: boolean;
1504
+ /**
1505
+ * Permite indicar que el tooltip se abrirá en un punto específico. En caso
1506
+ * de no indicar anchorPoint ni attachToElement se abrirá en {0,0}
1507
+ */
1508
+ anchorPoint?: TPosition;
1509
+ /**
1510
+ * El minSize define el espacio mínimo que debe existir para mostrar el
1511
+ * tooltip. En caso de que en la orientación definida no exista espacio
1512
+ * suficiente, el tooltip se mostrará en otra orientación que si lo permita.
1513
+ */
1514
+ minSize?: TSize;
1515
+ /**
1516
+ * El preferredSize define el espacio deseado que debería ocupar el tooltip.
1517
+ * En caso de no haber espacio suficiente para cubrir este espacio en la
1518
+ * orientación definida, se cubrirá todo el espacio disponible, siempre y
1519
+ * cuando sea mayor o igual que minSize, en cuyo caso entrará en juego el
1520
+ * comportamiento de minSize.
1521
+ *
1522
+ * Por defecto usa { height: 'auto', width: 'auto' }.
1523
+ */
1524
+ preferredSize?: TSizeWithAuto;
1525
+ /**
1526
+ * Posición en la que el tooltip se muestra en caso de que haya espacio
1527
+ * suficiente, por defecto usa right.
1528
+ */
1529
+ preferredOrientationX?: TPreferredOrientationX;
1530
+ /**
1531
+ * Posición en la que el tooltip se muestra en caso de que haya espacio
1532
+ * suficiente, por defecto usa bottom.
1533
+ */
1534
+ preferredOrientationY?: TPreferredOrientationY;
1535
+ /**
1536
+ * Permite agregar classNames al box contenedor.
1537
+ */
1538
+ className?: string;
1539
+ /**
1540
+ * Será llamado cuando el tooltip sea cerrado.
1541
+ */
1542
+ onClose?: () => unknown;
1543
+ /**
1544
+ * Variante del box contenedor. Por defecto usa
1545
+ * layout.common.tooltips.primary.
1546
+ */
1547
+ variant?: string;
1548
+ };
1549
+
1550
+ declare class ApiaUtilTooltip {
1551
+ props: TTooltip;
1552
+ close: () => void;
1553
+ id: string;
1554
+ constructor(props: TTooltip, close: () => void);
1555
+ }
1556
+
1557
+ declare class AutomaticTooltip {
1558
+ #private;
1559
+ private handler;
1560
+ ref: (el: HTMLElement | null) => void;
1561
+ constructor(tooltip: Partial<TTooltip> | null | undefined, handler: ApiaUtilTooltips);
1562
+ update: (tooltip: Partial<TTooltip>) => void;
1563
+ }
1564
+
1565
+ declare class ApiaUtilTooltips {
1566
+ #private;
1567
+ tooltips: ApiaUtilTooltip[];
1568
+ constructor();
1569
+ /**
1570
+ * Permite crear un tooltip que se abrirá automáticamente al estar parado
1571
+ * sobre un elemento durante 300ms
1572
+ */
1573
+ useHover: (tooltip?: Partial<TTooltip>) => AutomaticTooltip;
1574
+ close: (id: string) => void;
1575
+ closeAll: () => void;
1576
+ open: (tooltip: TTooltip) => ApiaUtilTooltip;
1577
+ Component: () => React$1.JSX.Element;
1578
+ }
1579
+
1580
+ type TSubmenu = {
1581
+ label: string;
1582
+ items: TMenuItems;
1583
+ };
1584
+ type TMenuItem = (MenuItemProps & {
1585
+ key: string;
1586
+ }) | 'separator' | TSubmenu;
1587
+ type TMenuItems = TMenuItem[];
1588
+ declare class ApiaUtilMenu {
1589
+ #private;
1590
+ menuProps: ControlledMenuProps | null;
1591
+ close: () => void;
1592
+ open: ({ menuProps, items, }: {
1593
+ menuProps: ControlledMenuProps;
1594
+ items: TMenuItems;
1595
+ }) => void;
1596
+ Component: () => React$1.JSX.Element | null;
1597
+ }
1598
+
1599
+ declare class ApiaUtilMouse extends EventEmitter<{
1600
+ updatePosition: {
1601
+ x: number;
1602
+ y: number;
1603
+ };
1604
+ }> {
1605
+ x: number;
1606
+ y: number;
1607
+ get position(): {
1608
+ x: number;
1609
+ y: number;
1610
+ };
1611
+ constructor();
1612
+ }
1613
+
1614
+ declare class ApiaUtil {
1615
+ #private;
1616
+ static get instance(): ApiaUtil;
1617
+ private constructor();
1618
+ dialogs: ApiaUtilDialogs;
1619
+ menu: ApiaUtilMenu;
1620
+ modals: ApiaUtilModals;
1621
+ mouse: ApiaUtilMouse;
1622
+ notifications: ApiaUtilNotifications;
1623
+ parsers: ApiaUtilParsers;
1624
+ tabs: ApiaUtilTabsController;
1625
+ tooltips: ApiaUtilTooltips;
1626
+ Component: () => React$1.JSX.Element;
1627
+ }
1628
+
1629
+ type LockTypes = 'linear' | 'white' | 'common';
1630
+ type Lock = {
1631
+ count: number;
1632
+ };
1633
+ type LockOptions = Partial<{
1634
+ type: LockTypes;
1635
+ }>;
1636
+ declare class ScreenLocker {
1637
+ protected emitter: StatefulEmitter<{
1638
+ locks: Record<LockTypes, Lock>;
1639
+ release: true;
1640
+ }>;
1641
+ lock: (options?: LockOptions) => () => void;
1642
+ protected hasReleased: boolean;
1643
+ /**
1644
+ * This method will work once, then, the action will be ignored. The ScreenLocker starts always locked on white, when this method is called, all listeners of onRelease will be called and the lock will be released.
1645
+ */
1646
+ release: () => void;
1647
+ /**
1648
+ * This method notifies when the screenLock is released by the first time.
1649
+ */
1650
+ onRelease: (cb: _apia_util.Callback<{
1651
+ locks: Record<LockTypes, Lock>;
1652
+ release: true;
1653
+ }, "locks" | "release">) => _apia_util.UnSubscriber;
1654
+ /**
1655
+ * This component is the responsible for putting the lock courtain in the browser when it's required. It must be used once per application.
1656
+ */
1657
+ Component: () => React$1.JSX.Element | null;
1658
+ }
1659
+
1660
+ export { Accordion, AccordionContext, AccordionItem, AccordionItemButton, AccordionItemContent, AccordionItemContext, AlertModal, ApiaFilter, ApiaUtil, ApiaUtilModalHandler, ApiaUtilTooltip, AutoEllipsis, BaseButton, CalendarModal, Captcha, Checkbox, CollapsiblePanel, Confirm, ConfirmModal, DateInput, DefaultAccordionItemButton, DefaultIconRenderer, DefaultTabsLabelRenderer, DialogButtonBar, FieldErrorMessage, FieldLabel, type IAccordionItemButton, type IAccordionItemProps, type IAccordionProps, type IAlert, type IApiaFilter, type ICalendarModal, type IConfirm, type IDialogButtonBar, type IDialogHeader, type IField, type IFieldErrorMessage, type IIconInput, type IOverlay, type IRequiredMark, type IResponsiveComponent, type ISimpleButton, IconButton, IconInput, IconsList, LabelBox, LinearLoader, Listbox, ListboxItem, LoaderSpinner, Modal, NumberInput, Overlay, ProgressBar, RequiredMark, ScreenLocker, SimpleButton, SortableList, SortableListItem, type TAccordionHandler, type TAccordionItemButton, type TApiaButtonType, type TApiaIconButton, type TCheckbox, type TDateProps, type TFieldLabel, type TIcon, type TIconButton, type TIconRenderer, type TIconSize, type TIconsList, type TListbox, type TMenuItem, type TModal, type TModalSize, type TNumberInput, type TNumberInputChangeEvent, type TOnClickNode, type TOnConfirmSelection, type TOnSelectionChange, type TOpenModal, type TSubmenu, type TTab, type TTabRenderer, type TToolbarIconButton as TToolDefinition, type TTooltip, type TUseModalConfiguration, Tabs, TabsContent, TabsController, TabsList, Toolbar, ToolbarController, ToolbarIconButton, ToolbarInput, ToolbarSelect, ToolbarSeparator, ToolbarTextButton, UnstyledSortableList, WaiTypeAhead, getFieldErrorStyles, getFieldTouchedStyles, importComponent, makeResponsiveComponent, parseNumberInputValueToNumber, parseNumberValueToNumberInput, useAccordionContext, useModal, useModalContext, useOtherTagButton };
72
1661
  //# sourceMappingURL=index.d.ts.map