@envisiongroup/porygon 1.0.0-rc.9 → 1.0.0

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 (251) hide show
  1. package/README.md +50 -14
  2. package/dist/index.d.ts +9 -15
  3. package/dist/index.js +95 -55
  4. package/dist/react-components/buttons/EFWButton/EFWButton.d.ts +1 -1
  5. package/dist/react-components/buttons/EFWButton/EFWButton.hooks.js +32 -31
  6. package/dist/react-components/buttons/EFWButton/EFWButton.js +158 -90
  7. package/dist/react-components/buttons/EFWButton/EFWButton.types.d.ts +32 -6
  8. package/dist/react-components/buttons/EFWButton/index.d.ts +1 -1
  9. package/dist/react-components/buttons/EFWDrawerButton/EFWDrawerButton.d.ts +1 -1
  10. package/dist/react-components/buttons/EFWDrawerButton/EFWDrawerButton.types.d.ts +1 -1
  11. package/dist/react-components/buttons/EFWGroupButton/EFWGroupButton.d.ts +1 -63
  12. package/dist/react-components/buttons/EFWGroupButton/EFWGroupButton.js +120 -85
  13. package/dist/react-components/buttons/EFWGroupButton/EFWGroupButton.types.d.ts +7 -1
  14. package/dist/react-components/buttons/EFWGroupButton/index.d.ts +1 -1
  15. package/dist/react-components/commons/caretPositioning.d.ts +35 -0
  16. package/dist/react-components/commons/caretPositioning.js +28 -0
  17. package/dist/react-components/commons/utils.d.ts +1 -1
  18. package/dist/react-components/commons/utils.js +1 -1
  19. package/dist/react-components/commons/valueNormalization.d.ts +28 -0
  20. package/dist/react-components/commons/valueNormalization.js +6 -0
  21. package/dist/react-components/fields/Attachments/EFWAttachments.js +205 -0
  22. package/dist/react-components/fields/{EFWAttachments → Attachments}/EFWAttachments.types.d.ts +32 -2
  23. package/dist/react-components/fields/Attachments/EFWAttachments.utils.d.ts +8 -0
  24. package/dist/react-components/fields/Attachments/EFWAttachments.utils.js +4 -0
  25. package/dist/react-components/fields/{EFWAttachments/EFWAttachmentsCard → Attachments}/EFWAttachmentsCard.d.ts +2 -11
  26. package/dist/react-components/fields/Attachments/EFWAttachmentsCard.js +164 -0
  27. package/dist/react-components/fields/{EFWAttachments/EFWAttachmentsCard → Attachments}/EFWAttachmentsCard.types.d.ts +21 -1
  28. package/dist/react-components/fields/Attachments/EFWAttachmentsField.js +70 -0
  29. package/dist/react-components/fields/{EFWAttachmentsField → Attachments}/EFWAttachmentsField.types.d.ts +2 -2
  30. package/dist/react-components/fields/Attachments/index.d.ts +5 -0
  31. package/dist/react-components/fields/Attachments/index.js +8 -0
  32. package/dist/react-components/fields/{EFWDatePicker → DatePicker}/EFWDatePicker.d.ts +1 -3
  33. package/dist/react-components/fields/DatePicker/EFWDatePicker.js +134 -0
  34. package/dist/react-components/fields/{EFWDatePicker → DatePicker}/EFWDatePicker.types.d.ts +19 -7
  35. package/dist/react-components/fields/DatePicker/EFWDatePicker.utils.d.ts +19 -0
  36. package/dist/react-components/fields/DatePicker/EFWDatePicker.utils.js +179 -0
  37. package/dist/react-components/fields/DatePicker/EFWDatePickerField.js +251 -0
  38. package/dist/react-components/fields/DatePicker/EFWDatePickerField.types.d.ts +15 -0
  39. package/dist/react-components/fields/DatePicker/index.d.ts +6 -0
  40. package/dist/react-components/fields/DatePicker/index.js +11 -0
  41. package/dist/react-components/fields/Input/EFWInput.d.ts +10 -0
  42. package/dist/react-components/fields/Input/EFWInput.js +260 -0
  43. package/dist/react-components/fields/{EFWInput → Input}/EFWInput.types.d.ts +120 -25
  44. package/dist/react-components/fields/Input/EFWInput.utils.d.ts +101 -0
  45. package/dist/react-components/fields/Input/EFWInput.utils.js +222 -0
  46. package/dist/react-components/fields/Input/EFWInput.validation.d.ts +20 -0
  47. package/dist/react-components/fields/Input/EFWInput.validation.js +72 -0
  48. package/dist/react-components/fields/Input/EFWInputField.js +86 -0
  49. package/dist/react-components/fields/{EFWInputField → Input}/EFWInputField.types.d.ts +2 -2
  50. package/dist/react-components/fields/Input/index.d.ts +5 -0
  51. package/dist/react-components/fields/Input/index.js +8 -0
  52. package/dist/react-components/fields/NumberInput/EFWNumberInput.js +339 -0
  53. package/dist/react-components/fields/{EFWNumberInput → NumberInput}/EFWNumberInput.types.d.ts +33 -14
  54. package/dist/react-components/fields/{EFWNumberInput → NumberInput}/EFWNumberInput.utils.d.ts +20 -14
  55. package/dist/react-components/fields/NumberInput/EFWNumberInput.utils.js +86 -0
  56. package/dist/react-components/fields/NumberInput/EFWNumberInputField.js +84 -0
  57. package/dist/react-components/fields/{EFWNumberInputField → NumberInput}/EFWNumberInputField.types.d.ts +2 -2
  58. package/dist/react-components/fields/NumberInput/index.d.ts +5 -0
  59. package/dist/react-components/fields/NumberInput/index.js +8 -0
  60. package/dist/react-components/fields/Switch/EFWSwitch.js +75 -0
  61. package/dist/react-components/fields/{EFWSwitch → Switch}/EFWSwitch.types.d.ts +18 -10
  62. package/dist/react-components/fields/Switch/EFWSwitch.utils.d.ts +9 -0
  63. package/dist/react-components/fields/Switch/EFWSwitch.utils.js +4 -0
  64. package/dist/react-components/fields/Switch/EFWSwitchField.js +62 -0
  65. package/dist/react-components/fields/{EFWSwitchField → Switch}/EFWSwitchField.types.d.ts +6 -2
  66. package/dist/react-components/fields/Switch/index.d.ts +5 -0
  67. package/dist/react-components/fields/Switch/index.js +8 -0
  68. package/dist/react-components/fields/TagPicker/EFWTagPicker.js +384 -0
  69. package/dist/react-components/fields/{EFWTagPicker → TagPicker}/EFWTagPicker.types.d.ts +30 -17
  70. package/dist/react-components/fields/TagPicker/EFWTagPicker.utils.d.ts +6 -0
  71. package/dist/react-components/fields/TagPicker/EFWTagPicker.utils.js +4 -0
  72. package/dist/react-components/fields/TagPicker/EFWTagPickerField.js +83 -0
  73. package/dist/react-components/fields/{EFWTagPickerField → TagPicker}/EFWTagPickerField.types.d.ts +2 -2
  74. package/dist/react-components/fields/TagPicker/index.d.ts +5 -0
  75. package/dist/react-components/fields/TagPicker/index.js +8 -0
  76. package/dist/react-components/fields/TextArea/EFWTextArea.js +153 -0
  77. package/dist/react-components/fields/{EFWTextArea → TextArea}/EFWTextArea.types.d.ts +26 -8
  78. package/dist/react-components/fields/TextArea/EFWTextArea.utils.d.ts +6 -0
  79. package/dist/react-components/fields/TextArea/EFWTextArea.utils.js +4 -0
  80. package/dist/react-components/fields/TextArea/EFWTextAreaField.js +80 -0
  81. package/dist/react-components/fields/{EFWTextAreaField → TextArea}/EFWTextAreaField.types.d.ts +2 -2
  82. package/dist/react-components/fields/TextArea/index.d.ts +5 -0
  83. package/dist/react-components/fields/TextArea/index.js +8 -0
  84. package/dist/react-components/fields/_shared/EFWField/EFWField.js +119 -0
  85. package/dist/react-components/fields/{EFWField → _shared/EFWField}/EFWField.types.d.ts +24 -13
  86. package/dist/react-components/fields/_shared/EFWField/EFWField.utils.js +20 -0
  87. package/dist/react-components/fields/_shared/EFWField/useSyncedValidationState.d.ts +50 -0
  88. package/dist/react-components/fields/_shared/EFWField/useSyncedValidationState.js +41 -0
  89. package/dist/react-components/fields/test-utils/testUtils.js +10 -0
  90. package/dist/react-components/forms/EFWForm/EFWForm.converter.d.ts +16 -1
  91. package/dist/react-components/forms/EFWForm/EFWForm.converter.js +51 -20
  92. package/dist/react-components/forms/EFWForm/EFWForm.flatConverter.d.ts +130 -0
  93. package/dist/react-components/forms/EFWForm/EFWForm.flatConverter.js +279 -0
  94. package/dist/react-components/forms/EFWForm/EFWForm.hooks.js +21 -18
  95. package/dist/react-components/forms/EFWForm/EFWForm.js +866 -403
  96. package/dist/react-components/forms/EFWForm/EFWForm.types.d.ts +213 -89
  97. package/dist/react-components/forms/EFWForm/EFWForm.utils.d.ts +10 -5
  98. package/dist/react-components/forms/EFWForm/EFWForm.utils.js +356 -229
  99. package/dist/react-components/forms/EFWForm/index.d.ts +5 -2
  100. package/dist/react-components/forms/EFWForm/index.js +10 -6
  101. package/dist/react-components/forms/EFWFormMessageBarGroup/EFWFormMessageBarGroup.js +55 -55
  102. package/dist/react-components/forms/EFWMessageBarManager/EFWMessageBarManager.js +38 -29
  103. package/dist/react-components/hooks/useDrawer/component/EFWDrawer/EFWDrawer.js +49 -47
  104. package/dist/react-components/hooks/useDrawer/component/EFWDrawer/EFWDrawer.types.d.ts +1 -0
  105. package/dist/react-components/hooks/useDrawer/component/EFWDrawerLoader/EFWDrawerLoader.d.ts +5 -3
  106. package/dist/react-components/hooks/useDrawer/component/EFWDrawerLoader/EFWDrawerLoader.js +6 -6
  107. package/dist/react-components/hooks/useDrawer/index.d.ts +1 -1
  108. package/dist/react-components/hooks/useDrawer/useDrawer.d.ts +4 -2
  109. package/dist/react-components/hooks/useDrawer/useDrawer.js +216 -111
  110. package/dist/react-components/hooks/useDrawer/useDrawer.types.d.ts +15 -2
  111. package/dist/react-components/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.d.ts +42 -0
  112. package/dist/react-components/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +5 -0
  113. package/dist/react-components/i18n/PorygonI18nProvider.d.ts +13 -0
  114. package/dist/react-components/i18n/PorygonI18nProvider.js +145 -0
  115. package/dist/react-components/i18n/defaultLocaleText.d.ts +6 -0
  116. package/dist/react-components/i18n/defaultLocaleText.js +176 -0
  117. package/dist/react-components/i18n/index.d.ts +4 -0
  118. package/dist/react-components/i18n/index.js +19 -0
  119. package/dist/react-components/i18n/localePresets.d.ts +10 -0
  120. package/dist/react-components/i18n/localePresets.js +366 -0
  121. package/dist/react-components/i18n/porygonI18n.types.d.ts +169 -0
  122. package/dist/react-components/layout/MainNavItems/MainNavItems.js +13 -13
  123. package/dist/react-components/tables/EFWTable/EFWTable.d.ts +2 -5
  124. package/dist/react-components/tables/EFWTable/EFWTable.js +916 -525
  125. package/dist/react-components/tables/EFWTable/EFWTable.types.d.ts +256 -62
  126. package/dist/react-components/tables/EFWTable/components/EFWTableBody/EFWTableBody.d.ts +5 -1
  127. package/dist/react-components/tables/EFWTable/components/EFWTableBody/EFWTableBody.js +97 -52
  128. package/dist/react-components/tables/EFWTable/components/EFWTableBody/EFWTableBody.types.d.ts +4 -1
  129. package/dist/react-components/tables/EFWTable/components/EFWTableCell/EFWTableCell.d.ts +1 -12
  130. package/dist/react-components/tables/EFWTable/components/EFWTableCell/EFWTableCell.js +47 -22
  131. package/dist/react-components/tables/EFWTable/components/EFWTableCell/EFWTableCell.types.d.ts +13 -0
  132. package/dist/react-components/tables/EFWTable/components/EFWTableCommandBar/EFWTableCommandBar.d.ts +1 -1
  133. package/dist/react-components/tables/EFWTable/components/EFWTableCommandBar/EFWTableCommandBar.js +94 -69
  134. package/dist/react-components/tables/EFWTable/components/EFWTableCommandBar/EFWTableCommandBar.types.d.ts +7 -16
  135. package/dist/react-components/tables/EFWTable/components/EFWTableCommandBar/index.d.ts +1 -1
  136. package/dist/react-components/tables/EFWTable/components/EFWTableHeader/EFWTableHeader.d.ts +1 -1
  137. package/dist/react-components/tables/EFWTable/components/EFWTableHeader/EFWTableHeader.js +218 -83
  138. package/dist/react-components/tables/EFWTable/components/EFWTableHeader/EFWTableHeader.types.d.ts +3 -0
  139. package/dist/react-components/tables/EFWTable/components/EFWTableOverlay/EFWTableOverlay.js +90 -88
  140. package/dist/react-components/tables/EFWTable/components/EFWTableOverlay/EFWTableOverlay.types.d.ts +5 -0
  141. package/dist/react-components/tables/EFWTable/components/EFWTableRow/EFWTableRow.d.ts +1 -18
  142. package/dist/react-components/tables/EFWTable/components/EFWTableRow/EFWTableRow.js +83 -45
  143. package/dist/react-components/tables/EFWTable/components/EFWTableRow/EFWTableRow.types.d.ts +23 -0
  144. package/dist/react-components/tables/EFWTable/hooks/useDefaultAddButton/useDefaultAddButton.d.ts +2 -1
  145. package/dist/react-components/tables/EFWTable/hooks/useDefaultAddButton/useDefaultAddButton.js +65 -48
  146. package/dist/react-components/tables/EFWTable/hooks/useDefaultDeleteButton/useDefaultDeleteButton.d.ts +2 -1
  147. package/dist/react-components/tables/EFWTable/hooks/useDefaultDeleteButton/useDefaultDeleteButton.js +71 -48
  148. package/dist/react-components/tables/EFWTable/hooks/useDefaultFilterButton/useDefaultFilterButton.d.ts +17 -0
  149. package/dist/react-components/tables/EFWTable/hooks/useDefaultFilterButton/useDefaultFilterButton.js +255 -0
  150. package/dist/react-components/tables/EFWTable/hooks/useDefaultUpdateButton/useDefaultUpdateButton.d.ts +2 -1
  151. package/dist/react-components/tables/EFWTable/hooks/useDefaultUpdateButton/useDefaultUpdateButton.js +72 -52
  152. package/dist/react-components/tables/EFWTable/hooks/useStableColumnRenderers/useStableColumnRenderers.d.ts +10 -0
  153. package/dist/react-components/tables/EFWTable/hooks/useStableColumnRenderers/useStableColumnRenderers.js +28 -0
  154. package/dist/react-components/tables/EFWTable/hooks/useTableController/useTableController.js +151 -115
  155. package/dist/react-components/tables/EFWTable/hooks/useTableSelection/useTableSelection.d.ts +1 -1
  156. package/dist/react-components/tables/EFWTable/hooks/useTableSelection/useTableSelection.js +100 -53
  157. package/dist/react-components/tables/EFWTable/hooks/useTableSelection/useTableSelection.types.d.ts +5 -1
  158. package/dist/react-components/tables/EFWTable/index.d.ts +4 -1
  159. package/dist/react-components/tables/EFWTable/index.js +7 -5
  160. package/dist/react-components/tables/EFWTable/utils/CellRenderer/CellRenderer.js +26 -23
  161. package/dist/react-components/tables/EFWTable/utils/cache.d.ts +1 -8
  162. package/dist/react-components/tables/EFWTable/utils/cache.js +40 -49
  163. package/dist/react-components/tables/EFWTable/utils/filterFunctions.d.ts +16 -0
  164. package/dist/react-components/tables/EFWTable/utils/filterFunctions.js +52 -0
  165. package/dist/react-components/tables/EFWTable/utils/hashing.d.ts +2 -2
  166. package/dist/react-components/tables/EFWTable/utils/hashing.js +2 -2
  167. package/package.json +49 -22
  168. package/dist/react-components/fields/EFWAttachments/EFWAttachments.js +0 -125
  169. package/dist/react-components/fields/EFWAttachments/EFWAttachmentsCard/EFWAttachmentsCard.js +0 -107
  170. package/dist/react-components/fields/EFWAttachments/EFWAttachmentsCard/index.d.ts +0 -1
  171. package/dist/react-components/fields/EFWAttachments/index.d.ts +0 -2
  172. package/dist/react-components/fields/EFWAttachments/index.js +0 -4
  173. package/dist/react-components/fields/EFWAttachmentsField/EFWAttachmentsField.js +0 -57
  174. package/dist/react-components/fields/EFWAttachmentsField/index.d.ts +0 -2
  175. package/dist/react-components/fields/EFWAttachmentsField/index.js +0 -4
  176. package/dist/react-components/fields/EFWDatePicker/EFWDatePicker.js +0 -114
  177. package/dist/react-components/fields/EFWDatePicker/EFWDatePicker.utils.d.ts +0 -24
  178. package/dist/react-components/fields/EFWDatePicker/EFWDatePicker.utils.js +0 -90
  179. package/dist/react-components/fields/EFWDatePicker/index.d.ts +0 -2
  180. package/dist/react-components/fields/EFWDatePicker/index.js +0 -4
  181. package/dist/react-components/fields/EFWDatePickerField/EFWDatePickerField.js +0 -65
  182. package/dist/react-components/fields/EFWDatePickerField/EFWDatePickerField.types.d.ts +0 -7
  183. package/dist/react-components/fields/EFWDatePickerField/index.d.ts +0 -2
  184. package/dist/react-components/fields/EFWDatePickerField/index.js +0 -4
  185. package/dist/react-components/fields/EFWField/EFWField.js +0 -96
  186. package/dist/react-components/fields/EFWField/EFWField.utils.js +0 -17
  187. package/dist/react-components/fields/EFWInput/EFWInput.d.ts +0 -26
  188. package/dist/react-components/fields/EFWInput/EFWInput.js +0 -119
  189. package/dist/react-components/fields/EFWInput/EFWInput.utils.d.ts +0 -20
  190. package/dist/react-components/fields/EFWInput/EFWInput.utils.js +0 -83
  191. package/dist/react-components/fields/EFWInput/index.d.ts +0 -2
  192. package/dist/react-components/fields/EFWInput/index.js +0 -4
  193. package/dist/react-components/fields/EFWInputField/EFWInputField.js +0 -73
  194. package/dist/react-components/fields/EFWInputField/EFWInputField.utils.d.ts +0 -1
  195. package/dist/react-components/fields/EFWInputField/EFWInputField.utils.js +0 -0
  196. package/dist/react-components/fields/EFWInputField/index.d.ts +0 -2
  197. package/dist/react-components/fields/EFWInputField/index.js +0 -4
  198. package/dist/react-components/fields/EFWNumberInput/EFWNumberInput.js +0 -198
  199. package/dist/react-components/fields/EFWNumberInput/EFWNumberInput.utils.js +0 -76
  200. package/dist/react-components/fields/EFWNumberInput/index.d.ts +0 -2
  201. package/dist/react-components/fields/EFWNumberInput/index.js +0 -4
  202. package/dist/react-components/fields/EFWNumberInputField/EFWNumberInputField.js +0 -67
  203. package/dist/react-components/fields/EFWNumberInputField/EFWNumberInputField.utils.d.ts +0 -1
  204. package/dist/react-components/fields/EFWNumberInputField/EFWNumberInputField.utils.js +0 -0
  205. package/dist/react-components/fields/EFWNumberInputField/index.d.ts +0 -2
  206. package/dist/react-components/fields/EFWNumberInputField/index.js +0 -4
  207. package/dist/react-components/fields/EFWSwitch/EFWSwitch.js +0 -55
  208. package/dist/react-components/fields/EFWSwitch/index.d.ts +0 -2
  209. package/dist/react-components/fields/EFWSwitch/index.js +0 -4
  210. package/dist/react-components/fields/EFWSwitchField/EFWSwitchField.js +0 -55
  211. package/dist/react-components/fields/EFWSwitchField/index.d.ts +0 -2
  212. package/dist/react-components/fields/EFWSwitchField/index.js +0 -4
  213. package/dist/react-components/fields/EFWTagPicker/EFWTagPicker.js +0 -244
  214. package/dist/react-components/fields/EFWTagPicker/index.d.ts +0 -2
  215. package/dist/react-components/fields/EFWTagPicker/index.js +0 -4
  216. package/dist/react-components/fields/EFWTagPickerField/EFWTagPickerField.js +0 -74
  217. package/dist/react-components/fields/EFWTagPickerField/EFWTagPickerField.utils.d.ts +0 -1
  218. package/dist/react-components/fields/EFWTagPickerField/EFWTagPickerField.utils.js +0 -0
  219. package/dist/react-components/fields/EFWTagPickerField/index.d.ts +0 -2
  220. package/dist/react-components/fields/EFWTagPickerField/index.js +0 -4
  221. package/dist/react-components/fields/EFWTextArea/EFWTextArea.js +0 -105
  222. package/dist/react-components/fields/EFWTextArea/EFWTextArea.utils.d.ts +0 -1
  223. package/dist/react-components/fields/EFWTextArea/EFWTextArea.utils.js +0 -0
  224. package/dist/react-components/fields/EFWTextArea/index.d.ts +0 -2
  225. package/dist/react-components/fields/EFWTextArea/index.js +0 -4
  226. package/dist/react-components/fields/EFWTextAreaField/EFWTextAreaField.js +0 -71
  227. package/dist/react-components/fields/EFWTextAreaField/EFWTextAreaField.utils.d.ts +0 -1
  228. package/dist/react-components/fields/EFWTextAreaField/EFWTextAreaField.utils.js +0 -0
  229. package/dist/react-components/fields/EFWTextAreaField/index.d.ts +0 -2
  230. package/dist/react-components/fields/EFWTextAreaField/index.js +0 -4
  231. package/dist/react-components/fields/types.d.ts +0 -1
  232. package/dist/react-components/fields/types.js +0 -0
  233. package/dist/utils/htmlConverter.d.ts +0 -15
  234. package/dist/utils/htmlConverter.js +0 -12
  235. /package/dist/react-components/fields/{EFWAttachments → Attachments}/EFWAttachments.d.ts +0 -0
  236. /package/dist/react-components/fields/{EFWAttachmentsField → Attachments}/EFWAttachmentsField.d.ts +0 -0
  237. /package/dist/react-components/fields/{EFWDatePickerField → DatePicker}/EFWDatePickerField.d.ts +0 -0
  238. /package/dist/react-components/fields/{EFWInputField → Input}/EFWInputField.d.ts +0 -0
  239. /package/dist/react-components/fields/{EFWNumberInput → NumberInput}/EFWNumberInput.d.ts +0 -0
  240. /package/dist/react-components/fields/{EFWNumberInputField → NumberInput}/EFWNumberInputField.d.ts +0 -0
  241. /package/dist/react-components/fields/{EFWSwitch → Switch}/EFWSwitch.d.ts +0 -0
  242. /package/dist/react-components/fields/{EFWSwitchField → Switch}/EFWSwitchField.d.ts +0 -0
  243. /package/dist/react-components/fields/{EFWTagPicker → TagPicker}/EFWTagPicker.d.ts +0 -0
  244. /package/dist/react-components/fields/{EFWTagPickerField → TagPicker}/EFWTagPickerField.d.ts +0 -0
  245. /package/dist/react-components/fields/{EFWTextArea → TextArea}/EFWTextArea.d.ts +0 -0
  246. /package/dist/react-components/fields/{EFWTextAreaField → TextArea}/EFWTextAreaField.d.ts +0 -0
  247. /package/dist/react-components/fields/{EFWField → _shared/EFWField}/EFWField.d.ts +0 -0
  248. /package/dist/react-components/fields/{EFWField → _shared/EFWField}/EFWField.utils.d.ts +0 -0
  249. /package/dist/react-components/fields/{EFWField → _shared/EFWField}/index.d.ts +0 -0
  250. /package/dist/react-components/fields/{EFWField → _shared/EFWField}/index.js +0 -0
  251. /package/dist/{react-components/fields/EFWAttachments/EFWAttachmentsCard/index.js → vite-raw.d.js} +0 -0
@@ -1,9 +1,10 @@
1
- import { jsx as s } from "react/jsx-runtime";
2
- import * as C from "react";
3
- import { makeStyles as q, tokens as t, Tooltip as v, Spinner as K, Button as Q } from "@fluentui/react-components";
4
- import { ErrorCircleRegular as U, CheckmarkRegular as V } from "@fluentui/react-icons";
5
- import { useEFWButton as X } from "./EFWButton.hooks.js";
6
- const Y = q({
1
+ import { jsx as c } from "react/jsx-runtime";
2
+ import * as y from "react";
3
+ import { makeStyles as ne, tokens as t, Tooltip as se, Spinner as ae, Button as ie } from "@fluentui/react-components";
4
+ import { ErrorCircleRegular as ce, CheckmarkRegular as le } from "@fluentui/react-icons";
5
+ import { useEFWButton as ue } from "./EFWButton.hooks.js";
6
+ import { useButtonsLocaleText as de } from "../../i18n/PorygonI18nProvider.js";
7
+ const ge = ne({
7
8
  /**
8
9
  * Estilo para botón no interactivo (estado de carga con deshabilitación).
9
10
  * Aplica opacidad reducida y deshabilita eventos de puntero.
@@ -39,126 +40,193 @@ const Y = q({
39
40
  "& .ms-Button-icon": {
40
41
  color: `${t.colorStatusSuccessForeground1} !important`
41
42
  }
43
+ },
44
+ /**
45
+ * Oculta el label cuando el contenedor padre es ≤ 480px.
46
+ * Requiere que un ancestro tenga `container-type: inline-size`.
47
+ */
48
+ collapseLabelXs: {
49
+ "@container (max-width: 480px)": {
50
+ padding: "5px",
51
+ "& .efw-button__label": { display: "none" },
52
+ "& .fui-Button__icon": { marginRight: 0 },
53
+ minWidth: "auto"
54
+ }
55
+ },
56
+ /**
57
+ * Oculta el label cuando el contenedor padre es ≤ 640px.
58
+ * Requiere que un ancestro tenga `container-type: inline-size`.
59
+ */
60
+ collapseLabelSm: {
61
+ "@container (max-width: 640px)": {
62
+ padding: "5px",
63
+ "& .efw-button__label": { display: "none" },
64
+ "& .fui-Button__icon": { marginRight: 0 },
65
+ minWidth: "auto"
66
+ }
67
+ },
68
+ /**
69
+ * Oculta el label cuando el contenedor padre es ≤ 768px.
70
+ * Requiere que un ancestro tenga `container-type: inline-size`.
71
+ */
72
+ collapseLabelMd: {
73
+ "@container (max-width: 768px)": {
74
+ padding: "5px",
75
+ "& .efw-button__label": { display: "none" },
76
+ "& .fui-Button__icon": { marginRight: 0 },
77
+ minWidth: "auto"
78
+ }
79
+ },
80
+ /**
81
+ * Oculta el label cuando el contenedor padre es ≤ 1024px.
82
+ * Requiere que un ancestro tenga `container-type: inline-size`.
83
+ */
84
+ collapseLabelLg: {
85
+ "@container (max-width: 1024px)": {
86
+ padding: "5px",
87
+ "& .efw-button__label": { display: "none" },
88
+ "& .fui-Button__icon": { marginRight: 0 },
89
+ minWidth: "auto"
90
+ }
42
91
  }
43
92
  });
44
- function Z(r) {
45
- return r instanceof Error ? r : _(r) ? r === void 0 ? new Error("Operación fallida sin detalles (void)") : r.success ? new Error("Operación reportada como exitosa en un error") : r.error instanceof Error ? r.error : new Error(r.error || "Operación fallida sin mensaje") : new Error(String(r) || "Error desconocido");
93
+ function pe(e, r) {
94
+ return e instanceof Error ? e : fe(e) ? e === void 0 ? new Error(r.operationFailedMessage) : e.success ? new Error(r.operationFailedMessage) : e.error instanceof Error ? e.error : new Error(e.error || r.operationFailedMessage) : new Error(String(e) || r.unknownErrorMessage);
46
95
  }
47
- function _(r) {
48
- return r === void 0 ? !0 : typeof r == "object" && r !== null && "success" in r && typeof r.success == "boolean" && (r.error === void 0 || typeof r.error == "string" || r.error instanceof Error);
96
+ function fe(e) {
97
+ return e === void 0 ? !0 : typeof e == "object" && e !== null && "success" in e && typeof e.success == "boolean" && (e.error === void 0 || typeof e.error == "string" || e.error instanceof Error);
49
98
  }
50
- const L = (r) => {
51
- if (!r) return "Ha ocurrido un error";
52
- if (r instanceof Error) return r.message;
53
- if (typeof r == "string") return r;
54
- if (typeof r == "object" && r !== null) {
55
- const n = r;
56
- if (typeof n.message == "string") return n.message;
57
- if (typeof n.error == "string") return n.error;
99
+ const me = (e, r) => {
100
+ if (!e) return r.defaultErrorMessage;
101
+ if (e instanceof Error) return e.message || r.defaultErrorMessage;
102
+ if (typeof e == "string") return e;
103
+ if (typeof e == "object" && e !== null) {
104
+ const n = e;
105
+ if (typeof n.message == "string") return n.message || r.defaultErrorMessage;
106
+ if (typeof n.error == "string") return n.error || r.defaultErrorMessage;
58
107
  try {
59
- return JSON.stringify(r);
108
+ return JSON.stringify(e);
60
109
  } catch {
61
- return "Error: No es posible parsear error";
110
+ return r.parseErrorMessage;
62
111
  }
63
112
  }
64
- return String(r) || "Ha ocurrido un error";
65
- }, sr = ({
66
- onClick: r,
67
- loadingText: n = "Procesando...",
68
- disableOnLoading: u = !0,
69
- autoLoading: l = !1,
70
- successConfig: $ = {},
71
- errorConfig: h = {},
72
- tooltips: c,
73
- showStatusIcons: d = !0,
74
- autoReset: R = !0,
75
- children: f,
76
- disabled: m,
77
- className: F,
78
- appearance: P = "secondary",
79
- icon: i,
80
- ...T
113
+ return String(e) || r.defaultErrorMessage;
114
+ }, Ee = {}, be = {}, Fe = ({
115
+ onClick: e,
116
+ disableOnLoading: r = !0,
117
+ autoLoading: n = !1,
118
+ successConfig: I = Ee,
119
+ errorConfig: U = be,
120
+ labels: l,
121
+ tooltips: g,
122
+ showStatusIcons: E = !0,
123
+ autoReset: v = !0,
124
+ collapseLabel: p,
125
+ children: b,
126
+ disabled: M,
127
+ className: X,
128
+ appearance: Y = "secondary",
129
+ icon: u,
130
+ ...z
81
131
  }) => {
82
- const p = Y(), { onSuccess: x, timeout: w = 2e3, text: O } = $, { onError: W, timeout: G = 2e3, text: D } = h, { currentState: y, isLoading: g, error: H, setLoading: k, stopLoading: S, setSuccess: N, setError: a } = X({
83
- onError: W,
84
- onSuccess: x,
85
- successTimeout: w,
86
- errorTimeout: G,
87
- autoReset: R
88
- }), b = C.useCallback(
132
+ const s = ge(), d = de().button.labels, _ = d.loadingText, w = d.defaultErrorMessage, F = d.operationFailedMessage, S = d.unknownErrorMessage, T = d.parseErrorMessage, B = l?.loadingText, C = l?.defaultErrorMessage, N = l?.operationFailedMessage, R = l?.unknownErrorMessage, L = l?.parseErrorMessage, a = y.useMemo(() => ({
133
+ loadingText: B ?? _,
134
+ defaultErrorMessage: C ?? w,
135
+ operationFailedMessage: N ?? F,
136
+ unknownErrorMessage: R ?? S,
137
+ parseErrorMessage: L ?? T
138
+ }), [
139
+ B,
140
+ C,
141
+ N,
142
+ R,
143
+ L,
144
+ _,
145
+ w,
146
+ F,
147
+ S,
148
+ T
149
+ ]), { onSuccess: A, timeout: J = 2e3, text: q } = I, { onError: H, timeout: K = 2e3, text: Q } = U, { currentState: j, isLoading: x, error: V, setLoading: P, stopLoading: $, setSuccess: W, setError: f } = ue({
150
+ onError: H,
151
+ onSuccess: A,
152
+ successTimeout: J,
153
+ errorTimeout: K,
154
+ autoReset: v,
155
+ fallbackErrorMessage: a.operationFailedMessage
156
+ }), k = y.useCallback(
89
157
  (o) => {
90
158
  if (!o)
91
- S();
159
+ $();
92
160
  else if (typeof o == "object")
93
161
  if (o.success)
94
- N();
162
+ W();
95
163
  else {
96
- const e = o.error instanceof Error ? o.error : new Error(String(o.error || "Operación fallida"));
97
- a(e);
164
+ const i = o.error instanceof Error ? o.error : new Error(String(o.error || a.operationFailedMessage));
165
+ f(i);
98
166
  }
99
167
  },
100
- [S, N, a]
101
- ), z = C.useCallback(async (o) => {
102
- if (!(!r || g || m))
168
+ [$, W, f, a.operationFailedMessage]
169
+ ), Z = y.useCallback(async (o) => {
170
+ if (!(!e || x || M))
103
171
  try {
104
- const e = r(o);
105
- if (e instanceof Promise) {
106
- l && k();
107
- const E = await e;
108
- l && b(E);
172
+ const i = e(o);
173
+ if (i instanceof Promise) {
174
+ n && P();
175
+ const h = await i;
176
+ n && k(h);
109
177
  } else
110
- b(e);
111
- } catch (e) {
112
- const E = Z(e);
113
- a(E);
178
+ k(i);
179
+ } catch (i) {
180
+ const h = pe(i, a);
181
+ f(h);
114
182
  }
115
- }, [r, g, m, l, k, b, a]), A = () => {
116
- const o = [F].filter(Boolean);
117
- switch (y) {
183
+ }, [e, x, M, n, P, k, f, a]), O = u && p ? p === "sm" ? s.collapseLabelSm : p === "md" ? s.collapseLabelMd : p === "lg" ? s.collapseLabelLg : s.collapseLabelXs : void 0, m = (o) => O ? o ? /* @__PURE__ */ c("span", { className: "efw-button__label", children: o }) : void 0 : o, ee = () => {
184
+ const o = [X, O].filter(Boolean);
185
+ switch (j) {
118
186
  case "loading":
119
187
  return {
120
- content: n,
121
- icon: d ? /* @__PURE__ */ s(K, { size: "tiny" }) : i,
122
- className: u ? [...o, p.buttonNonInteractive].join(" ") : o.join(" "),
123
- tooltip: c?.loading
188
+ content: m(a.loadingText),
189
+ icon: E ? /* @__PURE__ */ c(ae, { size: "tiny" }) : u,
190
+ className: r ? [...o, s.buttonNonInteractive].join(" ") : o.join(" "),
191
+ tooltip: g?.loading
124
192
  };
125
193
  case "success":
126
194
  return {
127
- content: O ?? f,
128
- icon: d ? /* @__PURE__ */ s(V, {}) : i,
129
- className: [...o, p.buttonSuccess].join(" "),
130
- tooltip: c?.success
195
+ content: m(q ?? b),
196
+ icon: E ? /* @__PURE__ */ c(le, {}) : u,
197
+ className: [...o, s.buttonSuccess].join(" "),
198
+ tooltip: g?.success
131
199
  };
132
200
  case "error":
133
201
  return {
134
- content: D ?? f,
135
- icon: d ? /* @__PURE__ */ s(U, {}) : i,
136
- className: [...o, p.buttonError].join(" "),
137
- tooltip: c?.error ?? L(H)
202
+ content: m(Q ?? b),
203
+ icon: E ? /* @__PURE__ */ c(ce, {}) : u,
204
+ className: [...o, s.buttonError].join(" "),
205
+ tooltip: g?.error ?? me(V, a)
138
206
  };
139
207
  default:
140
208
  return {
141
- content: f,
142
- icon: i,
209
+ content: m(b),
210
+ icon: u,
143
211
  className: o.join(" "),
144
- tooltip: c?.idle
212
+ tooltip: g?.idle
145
213
  };
146
214
  }
147
- }, { content: I, icon: J, className: M, tooltip: B } = A(), j = /* @__PURE__ */ s(
148
- Q,
215
+ }, { content: oe, icon: re, className: te, tooltip: G } = ee(), D = /* @__PURE__ */ c(
216
+ ie,
149
217
  {
150
- ...T,
151
- appearance: P,
152
- className: M,
153
- disabled: m || u && g,
154
- disabledFocusable: y === "loading" && u,
155
- icon: J,
156
- onClick: z,
157
- children: I
218
+ ...z,
219
+ appearance: Y,
220
+ className: te,
221
+ disabled: M || r && x,
222
+ disabledFocusable: j === "loading" && r,
223
+ icon: re,
224
+ onClick: Z,
225
+ children: oe
158
226
  }
159
227
  );
160
- return B ? /* @__PURE__ */ s(v, { content: B, relationship: "label", children: j }) : j;
228
+ return G ? /* @__PURE__ */ c(se, { content: G, relationship: "label", children: D }) : D;
161
229
  };
162
230
  export {
163
- sr as EFWButton
231
+ Fe as EFWButton
164
232
  };
@@ -108,6 +108,18 @@ export interface TooltipConfig {
108
108
  /** Tooltip mostrado cuando ocurrió un error */
109
109
  error?: string;
110
110
  }
111
+ export interface EFWButtonLabels {
112
+ /** Texto mostrado cuando el botón está en estado de carga */
113
+ loadingText?: string;
114
+ /** Mensaje de error genérico mostrado al usuario */
115
+ defaultErrorMessage?: string;
116
+ /** Mensaje usado cuando una operación falla sin mensaje específico */
117
+ operationFailedMessage?: string;
118
+ /** Mensaje usado cuando no es posible determinar el error */
119
+ unknownErrorMessage?: string;
120
+ /** Mensaje usado cuando no se puede serializar un error de objeto */
121
+ parseErrorMessage?: string;
122
+ }
111
123
  type EFWButtonClickEvent = Parameters<NonNullable<ButtonProps['onClick']>>[0];
112
124
  /**
113
125
  * Propiedades del componente EFWButton.
@@ -124,7 +136,7 @@ type EFWButtonClickEvent = Parameters<NonNullable<ButtonProps['onClick']>>[0];
124
136
  * await saveData();
125
137
  * return { success: true };
126
138
  * }}
127
- * loadingText="Guardando..."
139
+ * labels={{ loadingText: "Guardando..." }}
128
140
  * autoLoading={true}
129
141
  * successConfig={{
130
142
  * text: 'Guardado',
@@ -141,11 +153,6 @@ export interface EFWButtonProps extends Omit<ButtonProps, "onClick"> {
141
153
  * Puede retornar una Promise o un valor directo con el resultado de la operación.
142
154
  */
143
155
  onClick?: (event: EFWButtonClickEvent) => Promise<EFWButtonActionResult> | EFWButtonActionResult;
144
- /**
145
- * Texto personalizado a mostrar durante el estado de carga.
146
- * @default "Cargando..."
147
- */
148
- loadingText?: string;
149
156
  /**
150
157
  * Desactiva el botón durante el estado de carga para evitar múltiples clics.
151
158
  * @default true
@@ -172,6 +179,20 @@ export interface EFWButtonProps extends Omit<ButtonProps, "onClick"> {
172
179
  * @default true
173
180
  */
174
181
  autoReset?: boolean;
182
+ /**
183
+ * Oculta el label del botón cuando su contenedor padre es menor al breakpoint,
184
+ * mostrando solo el icono para optimizar espacio. Usa CSS Container Queries.
185
+ * Solo aplica cuando el botón tiene la prop `icon` definida.
186
+ * Requiere que un ancestro tenga `container-type: inline-size`.
187
+ * - true | "xs": oculta en contenedor ≤ 480px (default)
188
+ * - "sm": oculta en contenedor ≤ 640px
189
+ * - "md": oculta en contenedor ≤ 768px
190
+ * - "lg": oculta en contenedor ≤ 1024px
191
+ * @default undefined
192
+ */
193
+ collapseLabel?: boolean | "xs" | "sm" | "md" | "lg";
194
+ /** Textos de UI internos del componente para localización. */
195
+ labels?: EFWButtonLabels;
175
196
  }
176
197
  /**
177
198
  * Interfaz para los métodos expuestos por el hook useEFWButton.
@@ -278,5 +299,10 @@ export interface UseEFWButtonOptions {
278
299
  * @default true
279
300
  */
280
301
  autoReset?: boolean;
302
+ /**
303
+ * Mensaje usado cuando una operación falla sin mensaje específico.
304
+ * @default "Operation failed"
305
+ */
306
+ fallbackErrorMessage?: string;
281
307
  }
282
308
  export {};
@@ -1,3 +1,3 @@
1
1
  export { EFWButton } from './EFWButton';
2
2
  export { useEFWButton } from './EFWButton.hooks';
3
- export type { EFWButtonProps, EFWButtonHandle, EFWButtonActionResult, UseEFWButtonOptions } from './EFWButton.types';
3
+ export type { EFWButtonProps, EFWButtonHandle, EFWButtonActionResult, UseEFWButtonOptions, EFWButtonLabels } from './EFWButton.types';
@@ -28,7 +28,7 @@ import * as React from 'react';
28
28
  * return { success: true };
29
29
  * }}
30
30
  * drawerConfig={{ position: 'end' }}
31
- * loadingText="Cargando perfil..."
31
+ * labels={{ loadingText: "Cargando perfil..." }}
32
32
  * >
33
33
  * Ver perfil
34
34
  * </EFWDrawerButton>
@@ -44,7 +44,7 @@ export type EFWDrawerButtonClickHandler = (event: React.MouseEvent<HTMLButtonEle
44
44
  * },
45
45
  * drawerConfig: { size: 'medium', position: 'end' },
46
46
  * autoOpenDrawer: true,
47
- * loadingText: 'Processing...',
47
+ * labels: { loadingText: 'Processing...' },
48
48
  * appearance: 'primary',
49
49
  * };
50
50
  */
@@ -1,65 +1,3 @@
1
1
  import { EFWGroupButtonProps } from './EFWGroupButton.types';
2
2
 
3
- /**
4
- * Componente de grupo de botones que permite renderizar múltiples tipos de botones
5
- * de Fluent UI, EFWButton y EFWDrawerButton en un contenedor flexible.
6
- *
7
- * @template T - Tipo de los parámetros que se pasarán a los manejadores onClick.
8
- * Debe extender Record<string, any> para asegurar que sea un objeto.
9
- *
10
- * @description
11
- * Este componente proporciona:
12
- * - Renderizado unificado de diferentes tipos de botones
13
- * - Inyección automática de parámetros contextuales a los handlers
14
- * - Detección inteligente del tipo de botón para manejo especializado
15
- * - Layout flexible con espaciado personalizable
16
- * - Soporte para EFWDrawerButton con manejo específico de callbacks del drawer
17
- *
18
- * **¿Por qué T extends Record<string, any>?**
19
- * La restricción asegura que T sea un objeto, lo cual es lógico para parámetros
20
- * contextuales que típicamente contienen múltiples propiedades (userId, action, etc.)
21
- *
22
- * @param props - Propiedades del componente
23
- * @returns JSX.Element - Contenedor div con los botones renderizados
24
- *
25
- * @example
26
- * ```tsx
27
- * interface UserActionParams {
28
- * userId: string;
29
- * action: 'edit' | 'delete' | 'view';
30
- * }
31
- *
32
- * <EFWGroupButton<UserActionParams>
33
- * buttons={[
34
- * {
35
- * component: Button,
36
- * props: {
37
- * children: 'Edit',
38
- * onClick: (event, params) => handleEdit(params.userId)
39
- * }
40
- * },
41
- * {
42
- * component: EFWButton,
43
- * props: {
44
- * children: 'Delete',
45
- * onClick: async (event, params) => {
46
- * return await deleteUser(params.userId);
47
- * }
48
- * }
49
- * },
50
- * {
51
- * component: EFWDrawerButton,
52
- * props: {
53
- * children: 'View Details',
54
- * drawerTitle: 'User Details',
55
- * drawerBody: <UserDetails />,
56
- * drawerOnOpen: (params) => console.log('Opening drawer for:', params.userId)
57
- * }
58
- * }
59
- * ]}
60
- * onClickParams={{ userId: '123', action: 'edit' }}
61
- * gap="12px"
62
- * />
63
- * ```
64
- */
65
- export declare const EFWGroupButton: <T extends Record<string, any>>({ buttons, onClickParams, style, gap, className }: EFWGroupButtonProps<T>) => import("react/jsx-runtime").JSX.Element;
3
+ export declare const EFWGroupButton: <T extends Record<string, any>>({ buttons, onClickParams, style, gap, className, labels, }: EFWGroupButtonProps<T>) => import("react/jsx-runtime").JSX.Element;