@zydon/common 2.7.78 → 2.7.80

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 (212) hide show
  1. package/dist/{chunk-ZGSSTXUO.js → chunk-6RC5O2YL.js} +3 -3
  2. package/dist/{chunk-FK4XGRYF.js → chunk-AVPFUSEB.js} +4 -4
  3. package/dist/chunk-AVPFUSEB.js.map +1 -0
  4. package/dist/chunk-BLVCNBTJ.js +7 -0
  5. package/dist/chunk-BLVCNBTJ.js.map +1 -0
  6. package/dist/chunk-BX2DSNRV.js +8 -0
  7. package/dist/chunk-BX2DSNRV.js.map +1 -0
  8. package/dist/{chunk-R76WTFYC.js → chunk-BYYU7ENX.js} +2 -2
  9. package/dist/{chunk-N4DW7EIC.js → chunk-DSFFQBLG.js} +2 -2
  10. package/dist/{chunk-LEMPYV5U.js → chunk-E6NUW3KZ.js} +2 -2
  11. package/dist/{chunk-UHXAPEIF.js → chunk-EDWQYAWG.js} +2 -2
  12. package/dist/chunk-F65ZXAGV.js +10 -0
  13. package/dist/chunk-F65ZXAGV.js.map +1 -0
  14. package/dist/{chunk-45OMMG7D.js → chunk-FBN7HCBY.js} +2 -2
  15. package/dist/chunk-FBN7HCBY.js.map +1 -0
  16. package/dist/chunk-FCXNL2OG.js +12 -0
  17. package/dist/chunk-FCXNL2OG.js.map +1 -0
  18. package/dist/{chunk-U7BH6DMJ.js → chunk-FYDTPVVK.js} +2 -2
  19. package/dist/{chunk-HWYA3EGC.js → chunk-HYJEAKVR.js} +2 -2
  20. package/dist/chunk-I5R4OVA5.js +26 -0
  21. package/dist/chunk-I5R4OVA5.js.map +1 -0
  22. package/dist/{chunk-KEOOC3EL.js → chunk-J2PFUGFW.js} +2 -2
  23. package/dist/{chunk-ATVM2YRB.js → chunk-J7JX2QOP.js} +2 -2
  24. package/dist/chunk-JWIITCIZ.js +20 -0
  25. package/dist/chunk-JWIITCIZ.js.map +1 -0
  26. package/dist/{chunk-WYJV57WG.js → chunk-LFZJKAV6.js} +2 -2
  27. package/dist/{chunk-SVJYA4Q6.js → chunk-MS6MTEJM.js} +4 -4
  28. package/dist/{chunk-VCHDZXTF.js → chunk-NB6Z5G2Q.js} +2 -2
  29. package/dist/{chunk-7HLCQRIH.js → chunk-O5HTDU3K.js} +3 -3
  30. package/dist/{chunk-5LQLLZ5L.js → chunk-PSWJSHGP.js} +2 -2
  31. package/dist/chunk-QGWIO2AX.js +18 -0
  32. package/dist/chunk-QGWIO2AX.js.map +1 -0
  33. package/dist/chunk-RTC7H5E5.js +10 -0
  34. package/dist/chunk-RTC7H5E5.js.map +1 -0
  35. package/dist/{chunk-RPPQBAVO.js → chunk-SHJKJLBQ.js} +2 -2
  36. package/dist/{chunk-XZFBTUAG.js → chunk-ULSLLFRH.js} +3 -3
  37. package/dist/{chunk-YDLDZVF5.js → chunk-UWW26H42.js} +7 -7
  38. package/dist/chunk-UWW26H42.js.map +1 -0
  39. package/dist/chunk-VJZTUPZB.js +12 -0
  40. package/dist/chunk-VJZTUPZB.js.map +1 -0
  41. package/dist/{chunk-NQNNMRLC.js → chunk-VPG46WNM.js} +5 -5
  42. package/dist/chunk-VPG46WNM.js.map +1 -0
  43. package/dist/chunk-VR3K2Y2C.js +11 -0
  44. package/dist/chunk-VR3K2Y2C.js.map +1 -0
  45. package/dist/chunk-W3CK33IH.js +10 -0
  46. package/dist/chunk-W3CK33IH.js.map +1 -0
  47. package/dist/{chunk-CWCEG2DZ.js → chunk-WVWLU3GP.js} +2 -2
  48. package/dist/chunk-X2GWFMP4.js +19 -0
  49. package/dist/chunk-X2GWFMP4.js.map +1 -0
  50. package/dist/{chunk-P6HORLPW.js → chunk-X64QHBVQ.js} +2 -2
  51. package/dist/components/ActionButton/index.js +2 -2
  52. package/dist/components/Autocomplete/index.d.ts +1 -1
  53. package/dist/components/Autocomplete/index.js +2 -2
  54. package/dist/components/AutocompleteDetailed/index.d.ts +1 -1
  55. package/dist/components/AutocompleteDetailed/index.js +2 -2
  56. package/dist/components/Avatar/index.d.ts +1 -3
  57. package/dist/components/Avatar/index.js +4 -4
  58. package/dist/components/Avatar/index.js.map +1 -1
  59. package/dist/components/AvatarButton/index.js +6 -6
  60. package/dist/components/BuilderLayout/index.js +2 -2
  61. package/dist/components/BuilderSidebar/index.js +1 -1
  62. package/dist/components/BulkEditModal/index.js +3 -3
  63. package/dist/components/CardBrand/index.js +1 -1
  64. package/dist/components/Common/index.js +3 -3
  65. package/dist/components/CopyButton/index.js +3 -3
  66. package/dist/components/CustomAvatar/index.d.ts +1 -1
  67. package/dist/components/CustomAvatar/index.js +1 -1
  68. package/dist/components/CustomAvatarGroup/index.d.ts +1 -1
  69. package/dist/components/CustomAvatarGroup/index.js +4 -4
  70. package/dist/components/CustomAvatarGroup/index.js.map +1 -1
  71. package/dist/components/DataCards/index.d.ts +4 -4
  72. package/dist/components/DataCards/index.js +4 -3
  73. package/dist/components/DataCards/index.js.map +1 -1
  74. package/dist/components/DataView/index.d.ts +12 -26
  75. package/dist/components/DataView/index.js +4 -4
  76. package/dist/components/DragButton/index.d.ts +1 -3
  77. package/dist/components/DragButton/index.js +2 -2
  78. package/dist/components/DragContainer/index.d.ts +1 -3
  79. package/dist/components/Drawer/index.js +2 -2
  80. package/dist/components/DynamicDataView/index.d.ts +2 -2
  81. package/dist/components/DynamicDataView/index.js +12 -11
  82. package/dist/components/DynamicDataView/index.js.map +1 -1
  83. package/dist/components/EasyCropModal/index.js +3 -3
  84. package/dist/components/Error/index.js +1 -1
  85. package/dist/components/ExpandableGroup/index.js +1 -1
  86. package/dist/components/FieldMentions/index.js +3 -3
  87. package/dist/components/FieldMentions/index.js.map +1 -1
  88. package/dist/components/FileUpload/index.js +7 -7
  89. package/dist/components/FrameSkeleton/index.js +5 -5
  90. package/dist/components/HelpButton/index.js +2 -2
  91. package/dist/components/Icon/index.d.ts +1 -1
  92. package/dist/components/Icon/index.js +1 -1
  93. package/dist/components/IconButton/index.d.ts +1 -1
  94. package/dist/components/IconButton/index.js +2 -2
  95. package/dist/components/ImageCropModal/index.js +2 -2
  96. package/dist/components/Incrementer/index.js +3 -3
  97. package/dist/components/InfoCircle/index.js +2 -2
  98. package/dist/components/Label/index.d.ts +1 -1
  99. package/dist/components/Label/index.js +1 -1
  100. package/dist/components/ListBundles/index.d.ts +2 -1
  101. package/dist/components/ListBundles/index.js +2 -2
  102. package/dist/components/MaskedInput/index.d.ts +1 -1
  103. package/dist/components/MaskedInput/index.js +1 -1
  104. package/dist/components/MenuItem/index.js +1 -1
  105. package/dist/components/Modal/index.js +2 -2
  106. package/dist/components/MoreMenu/index.js +1 -1
  107. package/dist/components/NumberInput/index.d.ts +1 -1
  108. package/dist/components/NumberInput/index.js +1 -1
  109. package/dist/components/PageHeader/index.js +4 -4
  110. package/dist/components/PageHeader/index.js.map +1 -1
  111. package/dist/components/PasswordRules/index.js +1 -1
  112. package/dist/components/PopoverSelect/index.js +1 -1
  113. package/dist/components/Result/index.d.ts +1 -1
  114. package/dist/components/Scrollbar/index.d.ts +1 -1
  115. package/dist/components/Scrollbar/index.js +1 -1
  116. package/dist/components/SearchInput/index.js +2 -2
  117. package/dist/components/SelectList/index.js +4 -4
  118. package/dist/components/SelectableCards/index.js +4 -4
  119. package/dist/components/SeoPreview/index.js +2 -2
  120. package/dist/components/StateDisplay/index.js +2 -2
  121. package/dist/components/Steps/index.js +1 -1
  122. package/dist/components/StyledTab/index.js +1 -1
  123. package/dist/components/SwapList/index.js +3 -3
  124. package/dist/components/TextMaxLine/index.d.ts +1 -1
  125. package/dist/components/TextMaxLine/index.js +1 -1
  126. package/dist/components/ToggleTheme/index.js +4 -4
  127. package/dist/components/Tooltip/index.js +1 -1
  128. package/dist/components/WebhookCard/index.js +2 -2
  129. package/dist/components/carousel/index.d.ts +3 -9
  130. package/dist/components/carousel/index.js +2 -2
  131. package/dist/components/form/Address/index.js +5 -5
  132. package/dist/components/form/Autocomplete/index.js +3 -3
  133. package/dist/components/form/AutocompleteDetailed/index.js +2 -2
  134. package/dist/components/form/Codes/index.js +1 -1
  135. package/dist/components/form/FileUpload/index.js +7 -7
  136. package/dist/components/form/Incrementer/index.js +3 -3
  137. package/dist/components/form/MaskedInput/index.js +2 -2
  138. package/dist/components/form/NumberInput/index.js +1 -1
  139. package/dist/components/form/Password/index.js +1 -1
  140. package/dist/components/form/SelectList/index.js +4 -4
  141. package/dist/components/form/SelectableCards/index.js +4 -4
  142. package/dist/components/form/Webhook/index.js +4 -4
  143. package/dist/components/lightbox/index.js +1 -1
  144. package/dist/components/table/index.js +2 -2
  145. package/dist/hooks/useCollapseSidebarOnMount.js +3 -3
  146. package/dist/hooks/useDatagrid.d.ts +2 -2
  147. package/dist/hooks/useDatagrid.js +2 -2
  148. package/dist/hooks/useDatagrid.js.map +1 -1
  149. package/dist/hooks/useDeepCompareEffect.js +2 -2
  150. package/dist/hooks/useDeepCompareEffect.js.map +1 -1
  151. package/dist/hooks/useEventListener.d.ts +2 -2
  152. package/dist/hooks/useEventListener.js +1 -1
  153. package/dist/hooks/useLocalStorage.js +2 -2
  154. package/dist/hooks/useOnClickOutside.js +1 -1
  155. package/dist/hooks/useScrollOffSetTop.d.ts +1 -1
  156. package/dist/hooks/useScrollOffSetTop.js +1 -1
  157. package/dist/hooks/useScrollOffSetTop.js.map +1 -1
  158. package/dist/hooks/useSnackbar.d.ts +8 -8
  159. package/dist/hooks/useThemeToggle.js +3 -3
  160. package/dist/index.js +3 -3
  161. package/dist/layouts/Admin/index.js +1 -1
  162. package/dist/theme/settings-provider.js +1 -1
  163. package/dist/theme/styles/index.d.ts +203 -116
  164. package/dist/theme/theme-provider.js +2 -2
  165. package/dist/types/sectionProps.d.ts +2 -2
  166. package/package.json +21 -19
  167. package/dist/chunk-23NOJPUV.js +0 -19
  168. package/dist/chunk-23NOJPUV.js.map +0 -1
  169. package/dist/chunk-2WG6OWB4.js +0 -8
  170. package/dist/chunk-2WG6OWB4.js.map +0 -1
  171. package/dist/chunk-45OMMG7D.js.map +0 -1
  172. package/dist/chunk-6LXCHHW2.js +0 -12
  173. package/dist/chunk-6LXCHHW2.js.map +0 -1
  174. package/dist/chunk-7R6ZYEQS.js +0 -11
  175. package/dist/chunk-7R6ZYEQS.js.map +0 -1
  176. package/dist/chunk-DHRVSWFW.js +0 -10
  177. package/dist/chunk-DHRVSWFW.js.map +0 -1
  178. package/dist/chunk-FK4XGRYF.js.map +0 -1
  179. package/dist/chunk-IGOVBLZ2.js +0 -19
  180. package/dist/chunk-IGOVBLZ2.js.map +0 -1
  181. package/dist/chunk-KIWSLR76.js +0 -10
  182. package/dist/chunk-KIWSLR76.js.map +0 -1
  183. package/dist/chunk-L5URMM57.js +0 -7
  184. package/dist/chunk-L5URMM57.js.map +0 -1
  185. package/dist/chunk-LNXA53QR.js +0 -12
  186. package/dist/chunk-LNXA53QR.js.map +0 -1
  187. package/dist/chunk-NQNNMRLC.js.map +0 -1
  188. package/dist/chunk-U4ZTAFZV.js +0 -18
  189. package/dist/chunk-U4ZTAFZV.js.map +0 -1
  190. package/dist/chunk-UJGDCLUU.js +0 -25
  191. package/dist/chunk-UJGDCLUU.js.map +0 -1
  192. package/dist/chunk-XWUVJ22J.js +0 -10
  193. package/dist/chunk-XWUVJ22J.js.map +0 -1
  194. package/dist/chunk-YDLDZVF5.js.map +0 -1
  195. /package/dist/{chunk-ZGSSTXUO.js.map → chunk-6RC5O2YL.js.map} +0 -0
  196. /package/dist/{chunk-R76WTFYC.js.map → chunk-BYYU7ENX.js.map} +0 -0
  197. /package/dist/{chunk-N4DW7EIC.js.map → chunk-DSFFQBLG.js.map} +0 -0
  198. /package/dist/{chunk-LEMPYV5U.js.map → chunk-E6NUW3KZ.js.map} +0 -0
  199. /package/dist/{chunk-UHXAPEIF.js.map → chunk-EDWQYAWG.js.map} +0 -0
  200. /package/dist/{chunk-U7BH6DMJ.js.map → chunk-FYDTPVVK.js.map} +0 -0
  201. /package/dist/{chunk-HWYA3EGC.js.map → chunk-HYJEAKVR.js.map} +0 -0
  202. /package/dist/{chunk-KEOOC3EL.js.map → chunk-J2PFUGFW.js.map} +0 -0
  203. /package/dist/{chunk-ATVM2YRB.js.map → chunk-J7JX2QOP.js.map} +0 -0
  204. /package/dist/{chunk-WYJV57WG.js.map → chunk-LFZJKAV6.js.map} +0 -0
  205. /package/dist/{chunk-SVJYA4Q6.js.map → chunk-MS6MTEJM.js.map} +0 -0
  206. /package/dist/{chunk-VCHDZXTF.js.map → chunk-NB6Z5G2Q.js.map} +0 -0
  207. /package/dist/{chunk-7HLCQRIH.js.map → chunk-O5HTDU3K.js.map} +0 -0
  208. /package/dist/{chunk-5LQLLZ5L.js.map → chunk-PSWJSHGP.js.map} +0 -0
  209. /package/dist/{chunk-RPPQBAVO.js.map → chunk-SHJKJLBQ.js.map} +0 -0
  210. /package/dist/{chunk-XZFBTUAG.js.map → chunk-ULSLLFRH.js.map} +0 -0
  211. /package/dist/{chunk-CWCEG2DZ.js.map → chunk-WVWLU3GP.js.map} +0 -0
  212. /package/dist/{chunk-P6HORLPW.js.map → chunk-X64QHBVQ.js.map} +0 -0
@@ -1,9 +1,9 @@
1
- export { b as default } from '../chunk-U4ZTAFZV.js';
1
+ export { b as default } from '../chunk-QGWIO2AX.js';
2
2
  import '../chunk-373WGZZL.js';
3
3
  import '../chunk-TWSAWMZ3.js';
4
4
  import '../chunk-ROVD7OGE.js';
5
5
  import '../chunk-WUFEPE2G.js';
6
- export { b as useSettingsContext } from '../chunk-2WG6OWB4.js';
6
+ export { b as useSettingsContext } from '../chunk-BX2DSNRV.js';
7
7
  import '../chunk-6W52DPH4.js';
8
8
  import '../chunk-EQYL7U3J.js';
9
9
  export { a as THEME_CONFIG } from '../chunk-GLRLKFPS.js';
@@ -1,10 +1,10 @@
1
- import { MutableRefObject, ReactNode } from 'react';
1
+ import { RefObject, ReactNode } from 'react';
2
2
  import { StackProps } from '@mui/material/Stack';
3
3
 
4
4
  interface SectionProps {
5
5
  title?: string;
6
6
  id?: string;
7
- ref: MutableRefObject<HTMLElement | null>;
7
+ ref: RefObject<HTMLElement | null>;
8
8
  subTitle?: string;
9
9
  isRequired?: boolean;
10
10
  child: ReactNode;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zydon/common",
3
- "version": "2.7.78",
3
+ "version": "2.7.80",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "module": "./dist/index.js",
@@ -91,12 +91,13 @@
91
91
  },
92
92
  "sideEffects": false,
93
93
  "devDependencies": {
94
- "@emotion/react": "^11.13.3",
95
- "@emotion/styled": "^11.13.0",
96
- "@mui/lab": "5.0.0-alpha.173",
97
- "@mui/material": "^5.16.7",
98
- "@mui/x-data-grid-premium": "^7.14.0",
99
- "@mui/x-date-pickers-pro": "^7.14.0",
94
+ "@emotion/react": "^11.14.0",
95
+ "@emotion/styled": "^11.14.1",
96
+ "@mui/lab": "5.0.0-alpha.177",
97
+ "@mui/material": "^5.18.0",
98
+ "@mui/system": "^5.18.0",
99
+ "@mui/x-data-grid-premium": "^7.29.12",
100
+ "@mui/x-date-pickers-pro": "^7.29.4",
100
101
  "@testing-library/dom": "10.0.0",
101
102
  "@testing-library/jest-dom": "^6.6.3",
102
103
  "@testing-library/react": "^16.1.0",
@@ -107,9 +108,9 @@
107
108
  "@types/jest-axe": "^3.5.9",
108
109
  "@types/lodash": "^4.17.20",
109
110
  "@types/node": "^20.0.0",
110
- "@types/react": "^18.3.4",
111
+ "@types/react": "^19.2.7",
111
112
  "@types/react-color": "^3.0.13",
112
- "@types/react-dom": "^18.3.0",
113
+ "@types/react-dom": "^19.2.3",
113
114
  "@types/react-window": "^1.8.8",
114
115
  "@typescript-eslint/eslint-plugin": "^6.4.1",
115
116
  "@typescript-eslint/parser": "^6.4.1",
@@ -132,8 +133,8 @@
132
133
  "postcss": "^8.4.41",
133
134
  "postcss-import": "^16.1.0",
134
135
  "prettier": "^3.0.2",
135
- "react": "^18.3.1",
136
- "react-dom": "^18.3.1",
136
+ "react": "^19.2.1",
137
+ "react-dom": "^19.2.1",
137
138
  "react-hook-form": "^7.53.0",
138
139
  "ts-jest": "^29.2.5",
139
140
  "tsup": "6.6.0",
@@ -169,14 +170,15 @@
169
170
  "yet-another-react-lightbox": "^3.21.4"
170
171
  },
171
172
  "peerDependencies": {
172
- "@emotion/react": "^11.13.3",
173
- "@emotion/styled": "^11.13.0",
174
- "@mui/lab": "^5.0.0-alpha.173",
175
- "@mui/material": "^5.16.7",
176
- "@mui/x-data-grid-premium": "^7.14.0",
177
- "@mui/x-date-pickers-pro": "^7.14.0",
178
- "react": "^18.3.1",
179
- "react-dom": "^18.3.1",
173
+ "@emotion/react": "^11.14.0",
174
+ "@emotion/styled": "^11.14.1",
175
+ "@mui/lab": "^5.0.0-alpha.177",
176
+ "@mui/material": "^5.16.7 || ^5.17.0 || ^5.18.0",
177
+ "@mui/system": "^5.15.14 || ^5.16.0 || ^5.17.0 || ^5.18.0",
178
+ "@mui/x-data-grid-premium": "^7.29.12",
179
+ "@mui/x-date-pickers-pro": "^7.29.4",
180
+ "react": "^17.0.0 || ^18.0.0 || ^19.0.0",
181
+ "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0",
180
182
  "react-hook-form": "^7.53.0"
181
183
  },
182
184
  "jest-junit": {
@@ -1,19 +0,0 @@
1
- import { a } from './chunk-7R6ZYEQS.js';
2
- import { b } from './chunk-RPO7AI5K.js';
3
- import P, { forwardRef, useState, useMemo, useEffect } from 'react';
4
- import ge, { autocompleteClasses } from '@mui/material/Autocomplete';
5
- import he from '@mui/material/CircularProgress';
6
- import be from '@mui/material/TextField';
7
- import { VariableSizeList } from 'react-window';
8
- import W from '@mui/material/Typography';
9
- import ne from '@mui/material/Divider';
10
- import O from '@mui/material/Stack';
11
- import oe from '@mui/material/Popper';
12
- import { styled } from '@mui/material/styles';
13
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
14
-
15
- var H=styled(oe)({[`& .${autocompleteClasses.listbox}`]:{boxSizing:"border-box","& ul":{padding:0,margin:0}}}),M=styled(O)(({theme:t})=>({flex:1,width:"100%",gap:6,[t.breakpoints.down("md")]:{flexDirection:"column"},[t.breakpoints.up("md")]:{flexDirection:"row"}})),T=styled(O)(({theme:t})=>({flex:1,maxWidth:"100%",gap:6,[t.breakpoints.up("md")]:{flex:"1 1 calc(50% - 8px)",width:"calc(50% - 8px)",minWidth:"calc(50% - 8px)",maxWidth:"calc(50% - 8px)"}})),D=styled(O)(({theme:t})=>({position:"relative",alignItems:"center",justifyContent:"center",width:68,height:68,borderRadius:8,overflow:"hidden",img:{position:"absolute",width:"100%",height:"100%",objectFit:"cover"},[t.breakpoints.down("sm")]:{display:"none"}}));var ie=({option:t})=>{let r=Object.keys(t).filter(o=>o.startsWith("field")).map((o,l)=>{let a=t[o];if(a&&typeof a=="object"){let s="label"in a?a.label:null,d="value"in a?a.value:null;return jsxs(W,{component:"span",variant:"body2",color:"textPrimary",noWrap:!0,children:[s,": ",d]},`${o}:${l}`)}}),i=t.image?jsx("img",{alt:"Imagem",src:t.image}):jsx(a,{alt:t.label||t.value.toString(),name:t.label||t.value.toString(),sx:{width:68,height:68,borderRadius:1}});return jsxs(Fragment,{children:[jsxs(O,{direction:"row",gap:2,margin:2,children:[jsx(D,{children:i}),jsxs(O,{flex:1,overflow:"hidden",children:[jsxs(W,{variant:"subtitle2",color:"textPrimary",noWrap:!0,flex:1,children:[t.value," - ",t.label]}),r.length>0&&jsxs(M,{width:1,children:[jsxs(T,{children:[r[0]?r[0]:void 0,r[1]?r[1]:void 0]}),(r[2]||r[3])&&jsxs(T,{children:[r[2]?r[2]:void 0,r[3]?r[3]:void 0]})]})]})]}),jsx(ne,{className:"border",sx:{borderStyle:"dashed",position:"absolute",bottom:0,width:1}})]})},C=ie;var N=8,me=t=>{let{data:r,index:i,style:o}=t,l=r[i],a={...o,top:o.top+N,paddingTop:8,display:"block"};return jsx(W,{component:"li",...l.props,noWrap:!0,style:a,children:jsx(C,{...l?.props?.children?.props})})},B=P.createContext({}),X=forwardRef((t,r)=>{let i=P.useContext(B);return jsx("div",{ref:r,...t,...i})});X.displayName="OuterElementType";var de=t=>{let r=P.useRef(null);return useEffect(()=>{r.current!=null&&r.current.resetAfterIndex(0,!0);},[t]),r},ue=forwardRef(function(r,i){let{children:o,"data-item-height":l,...a}=r,s=[];o.forEach(p=>{s.push(p),s.push(...p.children||[]);});let d=s.length,b=l>112?l:112,y=p=>Object.prototype.hasOwnProperty.call(p,"group")?48:b,g=()=>d>8?8*b:s.map(y).reduce((p,u)=>p+u,0),v=de(d);return jsx("div",{ref:i,children:jsx(B.Provider,{value:a,children:jsx(VariableSizeList,{itemData:s,height:g()+2*N,width:"100%",ref:v,outerElementType:X,innerElementType:"ul",itemSize:p=>y(s[p]),overscanCount:5,itemCount:d,children:me})})})}),J=ue;var j=forwardRef(({name:t,label:r,value:i,options:o=[],loading:l,noOptionsText:a="Nenhum resultado encontrado.",loadingText:s="Carregando op\xE7\xF5es...",error:d,helperText:b$1,placeholder:y,onChange:g,groupBy:v,disabled:p,multiple:u,required:U,renderOption:G,tabIndex:V,onSearch:I,onInputChange:A,..._},F)=>{let[q,E]=useState(),K=b("down","md"),Q=e=>e&&typeof e=="object"?e.value.toString():e.toString(),L=useMemo(()=>new Map(o.map(e=>[e.value.toString(),e])),[o]),Y=useMemo(()=>o.map(e=>({...e,searchString:`${e.field1?.value||""} ${e.field1?.label||""} ${e.field2?.label||""} ${e.field2?.value||""} ${e.field3?.label||""} ${e.field3?.value||""} ${e.field4?.label||""} ${e.field4?.value||""} ${e.field5?.label||""} ${e.field5?.value||""} ${e.label}${e.value}`.toLocaleUpperCase().trim()})),[o]),Z=useMemo(()=>u?(Array.isArray(i)?i:[]).map(n=>L.get(n.toString())).filter(Boolean):(i?.toString()?L.get(i.toString()):null)||null,[L,i,u]),ee=K&&o[0]?Object.keys(o[0]).length*24:void 0;return jsx(ge,{ref:F,value:q||Z,onInputChange:(e,n,c)=>{if(A&&A(e,n,c),c==="input"){I&&I(n),E(n);return}E(void 0);},options:Y,loading:l,noOptionsText:a,loadingText:s,disabled:l||p,disableListWrap:!0,PopperComponent:H,ListboxProps:{"data-item-height":ee},ListboxComponent:G?void 0:J,filterOptions:(e,n)=>{let c=n.inputValue.toLocaleUpperCase();return e.filter(te=>te.searchString.includes(c))},onChange:(e,n)=>{if(!n){g(u?[]:null);return}if(Array.isArray(n)){g(n.map(Q));return}g(typeof n=="string"?n.toString():n.value.toString());},renderOption:({key:e,...n},c)=>jsx("li",{...n,style:{display:"block"},children:jsx(C,{option:c})},e),renderGroup:e=>e,groupBy:v,multiple:u,renderInput:e=>jsx(be,{...e,name:t,placeholder:y,fullWidth:!0,error:!!d,helperText:b$1,label:r,required:U,InputProps:{...e.InputProps,endAdornment:jsxs(Fragment,{children:[l?jsx(he,{color:"primary",size:20}):null,e.InputProps.endAdornment]})},inputProps:{...e.inputProps,name:t,tabIndex:V}}),..._})});j.displayName="Autocomplete";var Ke=j;
16
-
17
- export { Ke as a };
18
- //# sourceMappingURL=out.js.map
19
- //# sourceMappingURL=chunk-23NOJPUV.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/AutocompleteDetailed/index.tsx","../src/components/AutocompleteDetailed/Listbox.tsx","../src/components/AutocompleteDetailed/ListItem.tsx","../src/components/AutocompleteDetailed/styles.ts"],"names":["forwardRef","useMemo","useState","MuiAutocomplete","CircularProgress","TextField","React","useEffect","VariableSizeList","Typography","Divider","Stack","autocompleteClasses","Popper","styled","StyledPopper","OptionBox","theme","OptionContent","ImageContainer","Fragment","jsx","jsxs","ListItem","option","options","key","index","data","label","value","image","CustomAvatar_default","ListItem_default","LISTBOX_PADDING","renderRow","props","style","dataSet","inlineStyle","OuterElementContext","OuterElementType","ref","outerProps","useResetCache","ListboxComponent","children","dataItemHeight","other","itemData","item","itemCount","itemSize","getChildSize","child","getHeight","a","b","gridRef","Listbox_default","AutocompleteDetailed","name","loading","noOptionsText","loadingText","error","helperText","placeholder","onChange","groupBy","disabled","multiple","required","renderOption","tabIndex","onSearch","onInputChange","inputValue","setInputValue","mdDown","useResponsive_default","getOptionValue","optionValue","optionsMap","opt","optionsWithSearch","formattedValue","v","OPTION_HEIGHT","event","eventValue","reason","opts","state","searchUpper","_","params","AutocompleteDetailed_default"],"mappings":"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","sourcesContent":["import {\n forwardRef,\n HTMLAttributes,\n ReactNode,\n useMemo,\n useState,\n} from 'react';\nimport MuiAutocomplete from '@mui/material/Autocomplete';\nimport CircularProgress from '@mui/material/CircularProgress';\nimport TextField from '@mui/material/TextField';\n\nimport useResponsive from 'hooks/useResponsive';\nimport { Option } from 'types/option';\n\nimport ListboxComponent from './Listbox';\nimport ListItem from './ListItem';\nimport { AutocompleteDetailedProps } from './props';\nimport { StyledPopper } from './styles';\n\nconst AutocompleteDetailed = forwardRef<unknown, AutocompleteDetailedProps>(\n (\n {\n name,\n label,\n value,\n options = [],\n loading,\n noOptionsText = 'Nenhum resultado encontrado.',\n loadingText = 'Carregando opções...',\n error,\n helperText,\n placeholder,\n onChange,\n groupBy,\n disabled,\n multiple,\n required,\n renderOption,\n tabIndex,\n onSearch,\n onInputChange,\n ...other\n },\n ref,\n ) => {\n const [inputValue, setInputValue] = useState<string>();\n\n const mdDown = useResponsive('down', 'md');\n\n const getOptionValue = (optionValue: Option | string | number) =>\n optionValue && typeof optionValue === 'object'\n ? optionValue.value.toString()\n : optionValue.toString();\n\n const optionsMap = useMemo(\n () => new Map(options.map(opt => [opt.value.toString(), opt])),\n [options],\n );\n\n const optionsWithSearch = useMemo(\n () =>\n options.map(opt => ({\n ...opt,\n searchString:\n `${opt.field1?.value || ''} ${opt.field1?.label || ''} ${opt.field2?.label || ''} ${opt.field2?.value || ''} ${opt.field3?.label || ''} ${opt.field3?.value || ''} ${opt.field4?.label || ''} ${opt.field4?.value || ''} ${opt.field5?.label || ''} ${opt.field5?.value || ''} ${opt.label}${opt.value}`\n .toLocaleUpperCase()\n .trim(),\n })) as Array<Option & { searchString: string }>,\n [options],\n );\n\n const formattedValue = useMemo(() => {\n if (multiple) {\n const values = Array.isArray(value) ? value : [];\n return values\n .map(v => optionsMap.get(v.toString()))\n .filter(Boolean) as Option[];\n }\n\n return (\n (value?.toString() ? optionsMap.get(value.toString()) : null) || null\n );\n }, [optionsMap, value, multiple]);\n\n const OPTION_HEIGHT =\n mdDown && options[0] ? Object.keys(options[0]).length * 24 : undefined;\n\n return (\n <MuiAutocomplete\n ref={ref}\n value={inputValue || formattedValue}\n onInputChange={(event, eventValue, reason) => {\n if (onInputChange) onInputChange(event, eventValue, reason);\n\n if (reason === 'input') {\n if (onSearch) onSearch(eventValue);\n setInputValue(eventValue);\n\n return;\n }\n\n setInputValue(undefined);\n }}\n options={optionsWithSearch}\n loading={loading}\n noOptionsText={noOptionsText}\n loadingText={loadingText}\n disabled={loading || disabled}\n disableListWrap\n PopperComponent={StyledPopper}\n ListboxProps={\n {\n 'data-item-height': OPTION_HEIGHT,\n } as HTMLAttributes<HTMLUListElement>\n }\n ListboxComponent={renderOption ? undefined : ListboxComponent}\n filterOptions={(opts, state) => {\n const searchUpper = state.inputValue.toLocaleUpperCase();\n return opts.filter(opt =>\n (opt as Option & { searchString: string }).searchString.includes(\n searchUpper,\n ),\n );\n }}\n onChange={(_, option) => {\n if (!option) {\n onChange(multiple ? [] : null);\n return;\n }\n\n if (Array.isArray(option)) {\n onChange(option.map(getOptionValue));\n return;\n }\n\n onChange(\n typeof option === 'string'\n ? option.toString()\n : option.value.toString(),\n );\n }}\n renderOption={({ key, ...props }, option) => {\n return (\n <li key={key} {...props} style={{ display: 'block' }}>\n <ListItem option={option} />\n </li>\n );\n }}\n renderGroup={params => params as unknown as ReactNode}\n groupBy={groupBy}\n multiple={multiple}\n renderInput={params => (\n <TextField\n {...params}\n name={name}\n placeholder={placeholder}\n fullWidth\n error={!!error}\n helperText={helperText}\n label={label}\n required={required}\n InputProps={{\n ...params.InputProps,\n endAdornment: (\n <>\n {loading ? (\n <CircularProgress color=\"primary\" size={20} />\n ) : null}\n {params.InputProps.endAdornment}\n </>\n ),\n }}\n inputProps={{\n ...params.inputProps,\n name,\n tabIndex,\n }}\n />\n )}\n {...other}\n />\n );\n },\n);\n\nAutocompleteDetailed.displayName = 'Autocomplete';\n\nexport default AutocompleteDetailed;\n","import React, { forwardRef, HTMLAttributes, useEffect } from 'react';\nimport { ListChildComponentProps, VariableSizeList } from 'react-window';\nimport Typography from '@mui/material/Typography';\n\nimport ListItem from './ListItem';\n\nconst LISTBOX_PADDING = 8;\n\nconst renderRow = (props: ListChildComponentProps) => {\n const { data, index, style } = props;\n const dataSet = data[index];\n\n const inlineStyle = {\n ...style,\n top: (style.top as number) + LISTBOX_PADDING,\n paddingTop: 8,\n display: 'block',\n };\n\n return (\n <Typography component=\"li\" {...dataSet.props} noWrap style={inlineStyle}>\n <ListItem {...dataSet?.props?.children?.props} />\n </Typography>\n );\n};\n\nconst OuterElementContext = React.createContext({});\n\nconst OuterElementType = forwardRef<HTMLDivElement>((props, ref) => {\n const outerProps = React.useContext(OuterElementContext);\n return <div ref={ref} {...props} {...outerProps} />;\n});\n\nOuterElementType.displayName = 'OuterElementType';\n\nconst useResetCache = (data: number) => {\n const ref = React.useRef<VariableSizeList>(null);\n\n useEffect(() => {\n if (ref.current != null) {\n ref.current.resetAfterIndex(0, true);\n }\n }, [data]);\n\n return ref;\n};\n\nconst ListboxComponent = forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLElement>\n>(function ListboxComponent(props, ref) {\n const {\n children,\n // eslint-disable-next-line react/prop-types\n 'data-item-height': dataItemHeight,\n ...other\n } = props as { 'data-item-height': number } & HTMLAttributes<HTMLElement>;\n const itemData: JSX.Element[] = [];\n (children as JSX.Element[]).forEach(\n (item: JSX.Element & { children?: JSX.Element[] }) => {\n itemData.push(item);\n itemData.push(...(item.children || []));\n },\n );\n const itemCount = itemData.length;\n const itemSize = dataItemHeight > 112 ? dataItemHeight : 112;\n\n const getChildSize = (child: JSX.Element) => {\n if (Object.prototype.hasOwnProperty.call(child, 'group')) {\n return 48;\n }\n\n return itemSize;\n };\n\n const getHeight = () => {\n if (itemCount > 8) {\n return 8 * itemSize;\n }\n return itemData.map(getChildSize).reduce((a, b) => a + b, 0);\n };\n\n const gridRef = useResetCache(itemCount);\n\n return (\n <div ref={ref}>\n <OuterElementContext.Provider value={other}>\n <VariableSizeList\n itemData={itemData}\n height={getHeight() + 2 * LISTBOX_PADDING}\n width=\"100%\"\n ref={gridRef}\n outerElementType={OuterElementType}\n innerElementType=\"ul\"\n itemSize={index => getChildSize(itemData[index])}\n overscanCount={5}\n itemCount={itemCount}\n >\n {renderRow}\n </VariableSizeList>\n </OuterElementContext.Provider>\n </div>\n );\n});\n\nexport default ListboxComponent;\n","import Divider from '@mui/material/Divider';\nimport Stack from '@mui/material/Stack';\nimport Typography from '@mui/material/Typography';\n\nimport CustomAvatar from 'components/CustomAvatar';\n\nimport { ListItemProps } from './props';\nimport { ImageContainer, OptionBox, OptionContent } from './styles';\n\nconst ListItem = ({ option }: ListItemProps) => {\n const options = Object.keys(option)\n .filter(key => key.startsWith('field'))\n .map((key, index) => {\n const data = option[key];\n\n if (data && typeof data === 'object') {\n const label = ('label' in data ? data.label : null) as string;\n const value = ('value' in data ? data.value : null) as string;\n\n return (\n <Typography\n key={`${key}:${index}`}\n component=\"span\"\n variant=\"body2\"\n color=\"textPrimary\"\n noWrap\n >\n {label}: {value}\n </Typography>\n );\n }\n });\n\n const image = option.image ? (\n <img alt=\"Imagem\" src={option.image} />\n ) : (\n <CustomAvatar\n alt={option.label || option.value.toString()}\n name={option.label || option.value.toString()}\n sx={{ width: 68, height: 68, borderRadius: 1 }}\n />\n );\n\n return (\n <>\n <Stack direction=\"row\" gap={2} margin={2}>\n <ImageContainer>{image}</ImageContainer>\n\n <Stack flex={1} overflow=\"hidden\">\n <Typography variant=\"subtitle2\" color=\"textPrimary\" noWrap flex={1}>\n {option.value} - {option.label}\n </Typography>\n\n {options.length > 0 && (\n <OptionBox width={1}>\n <OptionContent>\n {options[0] ? options[0] : undefined}\n {options[1] ? options[1] : undefined}\n </OptionContent>\n\n {(options[2] || options[3]) && (\n <OptionContent>\n {options[2] ? options[2] : undefined}\n {options[3] ? options[3] : undefined}\n </OptionContent>\n )}\n </OptionBox>\n )}\n </Stack>\n </Stack>\n\n <Divider\n className=\"border\"\n sx={{\n borderStyle: 'dashed',\n position: 'absolute',\n bottom: 0,\n width: 1,\n }}\n />\n </>\n );\n};\n\nexport default ListItem;\n","import { autocompleteClasses } from '@mui/material/Autocomplete';\nimport Popper from '@mui/material/Popper';\nimport Stack from '@mui/material/Stack';\nimport { styled } from '@mui/material/styles';\n\nexport const StyledPopper = styled(Popper)({\n [`& .${autocompleteClasses.listbox}`]: {\n boxSizing: 'border-box',\n '& ul': {\n padding: 0,\n margin: 0,\n },\n },\n});\n\nexport const OptionBox = styled(Stack)(({ theme }) => ({\n flex: 1,\n width: '100%',\n gap: 6,\n\n [theme.breakpoints.down('md')]: {\n flexDirection: 'column',\n },\n\n [theme.breakpoints.up('md')]: {\n flexDirection: 'row',\n },\n}));\n\nexport const OptionContent = styled(Stack)(({ theme }) => ({\n flex: 1,\n maxWidth: '100%',\n gap: 6,\n\n [theme.breakpoints.up('md')]: {\n flex: '1 1 calc(50% - 8px)',\n width: 'calc(50% - 8px)',\n minWidth: 'calc(50% - 8px)',\n maxWidth: 'calc(50% - 8px)',\n },\n}));\n\nexport const ImageContainer = styled(Stack)(({ theme }) => ({\n position: 'relative',\n alignItems: 'center',\n justifyContent: 'center',\n width: 68,\n height: 68,\n borderRadius: 8,\n overflow: 'hidden',\n\n img: {\n position: 'absolute',\n width: '100%',\n height: '100%',\n objectFit: 'cover',\n },\n\n [theme.breakpoints.down('sm')]: {\n display: 'none',\n },\n}));\n"]}
@@ -1,8 +0,0 @@
1
- import { createContext, memo, useContext, useState, useMemo } from 'react';
2
- import { jsx } from 'react/jsx-runtime';
3
-
4
- var o=createContext(void 0),E=()=>{let t=useContext(o);if(!t)throw new Error("useSettingsContext deve ser usado dentro de um SettingsProvider");return t},V=({children:t,primaryColor:r,fontFamily:s,compactLayout:i,colorScheme:S,contrast:a,navColor:d,navLayout:u,cssVarPrefix:g,storageKey:x})=>{let[e,C]=useState(()=>({primaryColor:r,fontFamily:s,compactLayout:i,colorScheme:S,contrast:a,navColor:d,navLayout:u,cssVarPrefix:g,storageKey:x})),l=p=>{C(n=>({...n,...p,primaryColor:n.primaryColor}));},m=useMemo(()=>({settings:e,updateSettings:l}),[e]);return jsx(o.Provider,{value:m,children:t})},M=memo(V);
5
-
6
- export { o as a, E as b, M as c };
7
- //# sourceMappingURL=out.js.map
8
- //# sourceMappingURL=chunk-2WG6OWB4.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/theme/settings-provider.tsx"],"names":["createContext","memo","useContext","useMemo","useState","jsx","SettingsContext","useSettingsContext","context","SettingsProvider","children","primaryColor","fontFamily","compactLayout","colorScheme","contrast","navColor","navLayout","cssVarPrefix","storageKey","settings","setSettings","handleUpdateSettings","newSettings","prevSettings","contextValue","settings_provider_default"],"mappings":"AAAA,OACE,iBAAAA,EACA,QAAAC,EAEA,cAAAC,EACA,WAAAC,EACA,YAAAC,MACK,QA8DH,cAAAC,MAAA,oBAxDG,IAAMC,EAAkBN,EAC7B,MACF,EAEaO,EAAqB,IAA4B,CAC5D,IAAMC,EAAUN,EAAWI,CAAe,EAE1C,GAAI,CAACE,EACH,MAAM,IAAI,MACR,iEACF,EAGF,OAAOA,CACT,EAIMC,EAAmB,CAAC,CACxB,SAAAC,EACA,aAAAC,EACA,WAAAC,EACA,cAAAC,EACA,YAAAC,EACA,SAAAC,EACA,SAAAC,EACA,UAAAC,EACA,aAAAC,EACA,WAAAC,CACF,IAAwC,CACtC,GAAM,CAACC,EAAUC,CAAW,EAAIjB,EAAwB,KAAO,CAC7D,aAAAO,EACA,WAAAC,EACA,cAAAC,EACA,YAAAC,EACA,SAAAC,EACA,SAAAC,EACA,UAAAC,EACA,aAAAC,EACA,WAAAC,CACF,EAAE,EAEIG,EAAwBC,GAAwC,CACpEF,EAAYG,IAAiB,CAC3B,GAAGA,EACH,GAAGD,EACH,aAAcC,EAAa,YAC7B,EAAE,CACJ,EAEMC,EAAetB,EACnB,KAAO,CAAE,SAAAiB,EAAU,eAAgBE,CAAqB,GACxD,CAACF,CAAQ,CACX,EAEA,OACEf,EAACC,EAAgB,SAAhB,CAAyB,MAAOmB,EAC9B,SAAAf,EACH,CAEJ,EAEOgB,EAAQzB,EAAKQ,CAAgB","sourcesContent":["import {\n createContext,\n memo,\n PropsWithChildren,\n useContext,\n useMemo,\n useState,\n} from 'react';\n\nimport { SettingsState } from 'types/settings';\n\nimport { SettingsContextValue } from './props';\n\nexport const SettingsContext = createContext<SettingsContextValue | undefined>(\n undefined,\n);\n\nexport const useSettingsContext = (): SettingsContextValue => {\n const context = useContext(SettingsContext);\n\n if (!context) {\n throw new Error(\n 'useSettingsContext deve ser usado dentro de um SettingsProvider',\n );\n }\n\n return context;\n};\n\n// ----------------------------------------------------------------------\n\nconst SettingsProvider = ({\n children,\n primaryColor,\n fontFamily,\n compactLayout,\n colorScheme,\n contrast,\n navColor,\n navLayout,\n cssVarPrefix,\n storageKey,\n}: PropsWithChildren<SettingsState>) => {\n const [settings, setSettings] = useState<SettingsState>(() => ({\n primaryColor,\n fontFamily,\n compactLayout,\n colorScheme,\n contrast,\n navColor,\n navLayout,\n cssVarPrefix,\n storageKey,\n }));\n\n const handleUpdateSettings = (newSettings: Partial<SettingsState>) => {\n setSettings(prevSettings => ({\n ...prevSettings,\n ...newSettings,\n primaryColor: prevSettings.primaryColor,\n }));\n };\n\n const contextValue = useMemo(\n () => ({ settings, updateSettings: handleUpdateSettings }),\n [settings],\n );\n\n return (\n <SettingsContext.Provider value={contextValue}>\n {children}\n </SettingsContext.Provider>\n );\n};\n\nexport default memo(SettingsProvider);\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/Tooltip/index.tsx"],"names":["cloneElement","MuiTooltip","jsx","Tooltip","children","props","childElement","Tooltip_default"],"mappings":"AAAA,OAAS,gBAAAA,MAAkC,QAC3C,OAAOC,MAAkC,wBAMrC,cAAAC,MAAA,oBAJJ,IAAMC,EAAU,CAAC,CAAE,SAAAC,EAAU,GAAGC,CAAM,IAAoB,CACxD,IAAMC,EAAeF,EAErB,OACEF,EAACD,EAAA,CAAY,GAAGI,EACb,SAAAL,EAAaM,EAAc,CAC1B,MAAO,CAAE,WAAY,OAAQ,GAAGA,EAAa,MAAM,KAAM,CAC3D,CAAC,EACH,CAEJ,EAEOC,EAAQJ","sourcesContent":["import { cloneElement, ReactElement } from 'react';\nimport MuiTooltip, { TooltipProps } from '@mui/material/Tooltip';\n\nconst Tooltip = ({ children, ...props }: TooltipProps) => {\n const childElement = children as ReactElement;\n\n return (\n <MuiTooltip {...props}>\n {cloneElement(childElement, {\n style: { userSelect: 'none', ...childElement.props.style },\n })}\n </MuiTooltip>\n );\n};\n\nexport default Tooltip;\n"]}
@@ -1,12 +0,0 @@
1
- import { a } from './chunk-RPO7AI5K.js';
2
- import { forwardRef } from 'react';
3
- import u from '@mui/material/Link';
4
- import T from '@mui/material/Typography';
5
- import { useTheme } from '@mui/material/styles';
6
- import { jsx } from 'react/jsx-runtime';
7
-
8
- function x(o){return Math.round(parseFloat(o)*16)}function y(o){let e=useTheme(),t=a(),p=e.breakpoints.up(t==="xl"?"lg":t),h=(o==="h1"||o==="h2"||o==="h3"||o==="h4"||o==="h5"||o==="h6")&&e.typography[o][p]?e.typography[o][p]:e.typography[o],r=x(h.fontSize),i=Number(e.typography[o].lineHeight)*r,{fontWeight:f,letterSpacing:n}=e.typography[o];return {fontSize:r,lineHeight:i,fontWeight:f,letterSpacing:n}}var g=forwardRef(({asLink:o,variant:e="body1",line:t=2,persistent:p=!1,children:s,sx:h,...r},i)=>{let{lineHeight:f}=y(e),n={overflow:"hidden",textOverflow:"ellipsis",display:"-webkit-box",WebkitLineClamp:t,WebkitBoxOrient:"vertical",...p&&{height:f*t},...h};return o?jsx(u,{color:"inherit",ref:i,variant:e,sx:{...n},...r,children:s}):jsx(T,{ref:i,variant:e,sx:{...n},...r,children:s})});g.displayName="TextMaxLine";var W=g;
9
-
10
- export { W as a };
11
- //# sourceMappingURL=out.js.map
12
- //# sourceMappingURL=chunk-6LXCHHW2.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/TextMaxLine/index.tsx","../src/components/TextMaxLine/useTypography.ts"],"names":["forwardRef","Link","Typography","useTheme","remToPx","value","useTypography_default","variant","theme","breakpoints","useWidth","key","getFont","fontSize","lineHeight","fontWeight","letterSpacing","jsx","TextMaxLine","asLink","line","persistent","children","sx","other","ref","styles","TextMaxLine_default"],"mappings":"wCAAA,OAAS,cAAAA,MAAkB,QAC3B,OAAOC,MAAU,qBACjB,OAAOC,MAAgB,2BCFvB,OAAS,YAAAC,MAAgB,uBAOzB,SAASC,EAAQC,EAAe,CAC9B,OAAO,KAAK,MAAM,WAAWA,CAAK,EAAI,EAAE,CAC1C,CAEe,SAARC,EAAkBC,EAAkB,CACzC,IAAMC,EAAQL,EAAS,EAEjBM,EAAcC,EAAS,EAEvBC,EAAMH,EAAM,YAAY,GAAGC,IAAgB,KAAO,KAAOA,CAAW,EAWpEG,GARJL,IAAY,MACZA,IAAY,MACZA,IAAY,MACZA,IAAY,MACZA,IAAY,MACZA,IAAY,OAIKC,EAAM,WAAWD,CAAO,EAAEI,CAAG,EAC1CH,EAAM,WAAWD,CAAO,EAAEI,CAAG,EAC7BH,EAAM,WAAWD,CAAO,EAExBM,EAAWT,EAAQQ,EAAQ,QAAQ,EAEnCE,EAAa,OAAON,EAAM,WAAWD,CAAO,EAAE,UAAU,EAAIM,EAE5D,CAAE,WAAAE,EAAY,cAAAC,CAAc,EAAIR,EAAM,WAAWD,CAAO,EAE9D,MAAO,CAAE,SAAAM,EAAU,WAAAC,EAAY,WAAAC,EAAY,cAAAC,CAAc,CAC3D,CDHQ,cAAAC,MAAA,oBA7BR,IAAMC,EAAclB,EAClB,CACE,CACE,OAAAmB,EACA,QAAAZ,EAAU,QACV,KAAAa,EAAO,EACP,WAAAC,EAAa,GACb,SAAAC,EACA,GAAAC,EACA,GAAGC,CACL,EACAC,IACG,CACH,GAAM,CAAE,WAAAX,CAAW,EAAIR,EAAcC,CAAO,EAEtCmB,EAAS,CACb,SAAU,SACV,aAAc,WACd,QAAS,cACT,gBAAiBN,EACjB,gBAAiB,WACjB,GAAIC,GAAc,CAChB,OAAQP,EAAaM,CACvB,EACA,GAAGG,CACL,EAEA,OAAIJ,EAEAF,EAAChB,EAAA,CACC,MAAM,UACN,IAAKwB,EACL,QAASlB,EACT,GAAI,CAAE,GAAGmB,CAAO,EACf,GAAGF,EAEH,SAAAF,EACH,EAKFL,EAACf,EAAA,CAAW,IAAKuB,EAAK,QAASlB,EAAS,GAAI,CAAE,GAAGmB,CAAO,EAAI,GAAGF,EAC5D,SAAAF,EACH,CAEJ,CACF,EAEAJ,EAAY,YAAc,cAE1B,IAAOS,EAAQT","sourcesContent":["import { forwardRef } from 'react';\nimport Link from '@mui/material/Link';\nimport Typography from '@mui/material/Typography';\n\nimport { TextMaxLineProps } from './props';\nimport useTypography from './useTypography';\n\nconst TextMaxLine = forwardRef<HTMLAnchorElement, TextMaxLineProps>(\n (\n {\n asLink,\n variant = 'body1',\n line = 2,\n persistent = false,\n children,\n sx,\n ...other\n },\n ref,\n ) => {\n const { lineHeight } = useTypography(variant);\n\n const styles = {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n display: '-webkit-box',\n WebkitLineClamp: line,\n WebkitBoxOrient: 'vertical',\n ...(persistent && {\n height: lineHeight * line,\n }),\n ...sx,\n } as const;\n\n if (asLink) {\n return (\n <Link\n color=\"inherit\"\n ref={ref}\n variant={variant}\n sx={{ ...styles }}\n {...other}\n >\n {children}\n </Link>\n );\n }\n\n return (\n <Typography ref={ref} variant={variant} sx={{ ...styles }} {...other}>\n {children}\n </Typography>\n );\n },\n);\n\nTextMaxLine.displayName = 'TextMaxLine';\n\nexport default TextMaxLine;\n","import { useTheme } from '@mui/material/styles';\nimport { Variant } from '@mui/material/styles/createTypography';\n\nimport { useWidth } from 'hooks/useResponsive';\n\n// ----------------------------------------------------------------------\n\nfunction remToPx(value: string) {\n return Math.round(parseFloat(value) * 16);\n}\n\nexport default function (variant: Variant) {\n const theme = useTheme();\n\n const breakpoints = useWidth();\n\n const key = theme.breakpoints.up(breakpoints === 'xl' ? 'lg' : breakpoints);\n\n const hasResponsive =\n variant === 'h1' ||\n variant === 'h2' ||\n variant === 'h3' ||\n variant === 'h4' ||\n variant === 'h5' ||\n variant === 'h6';\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const getFont: any =\n hasResponsive && theme.typography[variant][key]\n ? theme.typography[variant][key]\n : theme.typography[variant];\n\n const fontSize = remToPx(getFont.fontSize);\n\n const lineHeight = Number(theme.typography[variant].lineHeight) * fontSize;\n\n const { fontWeight, letterSpacing } = theme.typography[variant];\n\n return { fontSize, lineHeight, fontWeight, letterSpacing };\n}\n"]}
@@ -1,11 +0,0 @@
1
- import { forwardRef } from 'react';
2
- import m from '@mui/material/Avatar';
3
- import v from '@mui/material/Badge';
4
- import { useTheme } from '@mui/material/styles';
5
- import { jsxs, jsx } from 'react/jsx-runtime';
6
-
7
- var t=r=>r&&r.charAt(0).toUpperCase(),C=r=>["A","N","H","L","Q"].includes(t(r))?"primary":["F","G","T","I","J"].includes(t(r))?"info":["K","D","Y","B","O"].includes(t(r))?"success":["P","E","R","S","U"].includes(t(r))?"warning":["V","W","X","M","Z"].includes(t(r))?"error":"default",d=forwardRef(({color:r,name:o="",BadgeProps:i,children:n,sx:s,...c},u)=>{let e=useTheme(),l=t(o),g=C(o),a=r||g,f=a==="default"?jsxs(m,{ref:u,sx:s,...c,children:[o&&l,n]}):jsxs(m,{ref:u,sx:{color:e.palette[a]?.contrastText,backgroundColor:e.palette[a]?.main,fontWeight:e.typography.fontWeightMedium,...s},...c,children:[o&&l,n]});return i?jsx(v,{overlap:"circular",anchorOrigin:{vertical:"bottom",horizontal:"right"},...i,children:f}):f});d.displayName="CustomAvatar";var W=d;
8
-
9
- export { W as a };
10
- //# sourceMappingURL=out.js.map
11
- //# sourceMappingURL=chunk-7R6ZYEQS.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/CustomAvatar/index.tsx"],"names":["forwardRef","Avatar","Badge","useTheme","jsx","jsxs","getCharAtName","name","getColorByName","CustomAvatar","color","BadgeProps","children","sx","other","ref","theme","charAtName","colorByName","colr","renderContent","CustomAvatar_default"],"mappings":"AAAA,OAAS,cAAAA,MAAkB,QAC3B,OAAOC,MAAY,uBACnB,OAAOC,MAAW,sBAClB,OAAS,YAAAC,MAAgB,uBA2BjB,OAqBF,OAAAC,EArBE,QAAAC,MAAA,oBAvBR,IAAMC,EAAiBC,GAAiBA,GAAQA,EAAK,OAAO,CAAC,EAAE,YAAY,EAErEC,EAAkBD,GAClB,CAAC,IAAK,IAAK,IAAK,IAAK,GAAG,EAAE,SAASD,EAAcC,CAAI,CAAC,EAAU,UAChE,CAAC,IAAK,IAAK,IAAK,IAAK,GAAG,EAAE,SAASD,EAAcC,CAAI,CAAC,EAAU,OAChE,CAAC,IAAK,IAAK,IAAK,IAAK,GAAG,EAAE,SAASD,EAAcC,CAAI,CAAC,EAAU,UAChE,CAAC,IAAK,IAAK,IAAK,IAAK,GAAG,EAAE,SAASD,EAAcC,CAAI,CAAC,EAAU,UAChE,CAAC,IAAK,IAAK,IAAK,IAAK,GAAG,EAAE,SAASD,EAAcC,CAAI,CAAC,EAAU,QAC7D,UAGHE,EAAeT,EACnB,CAAC,CAAE,MAAAU,EAAO,KAAAH,EAAO,GAAI,WAAAI,EAAY,SAAAC,EAAU,GAAAC,EAAI,GAAGC,CAAM,EAAGC,IAAQ,CACjE,IAAMC,EAAQb,EAAS,EAEjBc,EAAaX,EAAcC,CAAI,EAE/BW,EAAcV,EAAeD,CAAI,EAEjCY,EAAOT,GAASQ,EAEhBE,EACJD,IAAS,UACPd,EAACJ,EAAA,CAAO,IAAKc,EAAK,GAAIF,EAAK,GAAGC,EAC3B,UAAAP,GAAQU,EACRL,GACH,EAEAP,EAACJ,EAAA,CACC,IAAKc,EACL,GAAI,CACF,MAAOC,EAAM,QAAQG,CAAI,GAAG,aAC5B,gBAAiBH,EAAM,QAAQG,CAAI,GAAG,KACtC,WAAYH,EAAM,WAAW,iBAC7B,GAAGH,CACL,EACC,GAAGC,EAEH,UAAAP,GAAQU,EACRL,GACH,EAGJ,OAAOD,EACLP,EAACF,EAAA,CACC,QAAQ,WACR,aAAc,CAAE,SAAU,SAAU,WAAY,OAAQ,EACvD,GAAGS,EAEH,SAAAS,EACH,EAEAA,CAEJ,CACF,EAEAX,EAAa,YAAc,eAE3B,IAAOY,EAAQZ","sourcesContent":["import { forwardRef } from 'react';\nimport Avatar from '@mui/material/Avatar';\nimport Badge from '@mui/material/Badge';\nimport { useTheme } from '@mui/material/styles';\n\nimport { CustomAvatarProps } from './props';\n\nconst getCharAtName = (name: string) => name && name.charAt(0).toUpperCase();\n\nconst getColorByName = (name: string) => {\n if (['A', 'N', 'H', 'L', 'Q'].includes(getCharAtName(name))) return 'primary';\n if (['F', 'G', 'T', 'I', 'J'].includes(getCharAtName(name))) return 'info';\n if (['K', 'D', 'Y', 'B', 'O'].includes(getCharAtName(name))) return 'success';\n if (['P', 'E', 'R', 'S', 'U'].includes(getCharAtName(name))) return 'warning';\n if (['V', 'W', 'X', 'M', 'Z'].includes(getCharAtName(name))) return 'error';\n return 'default';\n};\n\nconst CustomAvatar = forwardRef<HTMLDivElement, CustomAvatarProps>(\n ({ color, name = '', BadgeProps, children, sx, ...other }, ref) => {\n const theme = useTheme();\n\n const charAtName = getCharAtName(name);\n\n const colorByName = getColorByName(name);\n\n const colr = color || colorByName;\n\n const renderContent =\n colr === 'default' ? (\n <Avatar ref={ref} sx={sx} {...other}>\n {name && charAtName}\n {children}\n </Avatar>\n ) : (\n <Avatar\n ref={ref}\n sx={{\n color: theme.palette[colr]?.contrastText,\n backgroundColor: theme.palette[colr]?.main,\n fontWeight: theme.typography.fontWeightMedium,\n ...sx,\n }}\n {...other}\n >\n {name && charAtName}\n {children}\n </Avatar>\n );\n\n return BadgeProps ? (\n <Badge\n overlap=\"circular\"\n anchorOrigin={{ vertical: 'bottom', horizontal: 'right' }}\n {...BadgeProps}\n >\n {renderContent}\n </Badge>\n ) : (\n renderContent\n );\n },\n);\n\nCustomAvatar.displayName = 'CustomAvatar';\n\nexport default CustomAvatar;\n"]}
@@ -1,10 +0,0 @@
1
- import { forwardRef, useState } from 'react';
2
- import { IMaskMixin } from 'react-imask';
3
- import f from '@mui/material/TextField';
4
- import { jsx } from 'react/jsx-runtime';
5
-
6
- var k=IMaskMixin(t=>{let{inputRef:e,"data-value":n,defaultValue:u,tabIndex:p,name:s,...a}=t;return jsx(f,{inputRef:e,fullWidth:!0,...a,inputProps:{...a.inputProps,name:s,tabIndex:p},value:n,"data-testid":"masked-input-wrapper"})}),d=forwardRef(({onChange:t,name:e,...n},u)=>{let[p,s]=useState("");return jsx(k,{inputRef:u,name:e,"data-value":p,...n,onAccept:(a,o)=>{s(a),t({target:{name:e,value:o._unmaskedValue}});}})});d.displayName="MaskedInput";var P=d;
7
-
8
- export { P as a };
9
- //# sourceMappingURL=out.js.map
10
- //# sourceMappingURL=chunk-DHRVSWFW.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/MaskedInput/index.tsx"],"names":["forwardRef","useState","IMaskMixin","TextField","jsx","MaskedStyledInput","props","inputRef","value","defaultValue","tabIndex","name","other","MaskedInput","onChange","others","ref","maskedValue","setMaskedValue","v","mask","MaskedInput_default"],"mappings":"AAEA,OAAS,cAAAA,EAAY,YAAAC,MAAgB,QACrC,OAAS,cAAAC,MAAkB,cAC3B,OAAOC,MAAmC,0BAetC,cAAAC,MAAA,oBAXJ,IAAMC,EAAoBH,EAAWI,GAAS,CAC5C,GAAM,CACJ,SAAAC,EACA,aAAcC,EACd,aAAAC,EACA,SAAAC,EACA,KAAAC,EACA,GAAGC,CACL,EAAIN,EAEJ,OACEF,EAACD,EAAA,CACC,SAAUI,EACV,UAAS,GACR,GAAIK,EACL,WAAY,CACV,GAAGA,EAAM,WACT,KAAAD,EACA,SAAAD,CACF,EACA,MAAOF,EACP,cAAY,uBACd,CAEJ,CAAC,EAEKK,EAAcb,EAClB,CAAC,CAAE,SAAAc,EAAU,KAAAH,EAAM,GAAGI,CAAO,EAAGC,IAAQ,CACtC,GAAM,CAACC,EAAaC,CAAc,EAAIjB,EAAS,EAAE,EACjD,OACEG,EAACC,EAAA,CACC,SAAUW,EACV,KAAML,EACN,aAAYM,EACX,GAAIF,EACL,SAAU,CAACI,EAAQC,IAAc,CAC/BF,EAAeC,CAAC,EAEhBL,EAAS,CACP,OAAQ,CACN,KAAAH,EACA,MAAOS,EAAK,cACd,CACF,CAAC,CACH,EACF,CAEJ,CACF,EAEAP,EAAY,YAAc,cAE1B,IAAOQ,EAAQR","sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { forwardRef, useState } from 'react';\nimport { IMaskMixin } from 'react-imask';\nimport TextField, { TextFieldProps } from '@mui/material/TextField';\n\nimport { MaskedInputProps } from './props';\n\nconst MaskedStyledInput = IMaskMixin(props => {\n const {\n inputRef,\n 'data-value': value,\n defaultValue,\n tabIndex,\n name,\n ...other\n } = props as any;\n\n return (\n <TextField\n inputRef={inputRef}\n fullWidth\n {...(other as TextFieldProps)}\n inputProps={{\n ...other.inputProps,\n name,\n tabIndex,\n }}\n value={value}\n data-testid=\"masked-input-wrapper\"\n />\n );\n});\n\nconst MaskedInput = forwardRef<HTMLDivElement, MaskedInputProps>(\n ({ onChange, name, ...others }, ref) => {\n const [maskedValue, setMaskedValue] = useState('');\n return (\n <MaskedStyledInput\n inputRef={ref}\n name={name}\n data-value={maskedValue}\n {...(others as any)}\n onAccept={(v: any, mask: any) => {\n setMaskedValue(v);\n\n onChange({\n target: {\n name,\n value: mask._unmaskedValue,\n },\n });\n }}\n />\n );\n },\n);\n\nMaskedInput.displayName = 'MaskedInput';\n\nexport default MaskedInput;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/Label/index.tsx","../src/components/Label/classes.ts","../src/components/Label/styles.ts"],"names":["forwardRef","Box","useTheme","labelClasses","lighten","styled","StyledLabel","theme","color","variant","defaultColor","stylesMode","styleColors","jsx","jsxs","sentenceCase","string","Label","children","startIcon","endIcon","sx","other","ref","iconStyles","Label_default"],"mappings":"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","sourcesContent":["import { forwardRef } from 'react';\nimport Box from '@mui/material/Box';\nimport { useTheme } from '@mui/material/styles';\n\nimport { labelClasses } from './classes';\nimport type { LabelProps } from './props';\nimport { StyledLabel } from './styles';\n\nconst sentenceCase = (string: string) => {\n return string.charAt(0).toUpperCase() + string.slice(1);\n};\n\nconst Label = forwardRef<HTMLSpanElement, LabelProps>(\n (\n {\n children,\n color = 'default',\n variant = 'soft',\n startIcon,\n endIcon,\n sx,\n ...other\n },\n ref,\n ) => {\n const theme = useTheme();\n\n const iconStyles = {\n width: 16,\n height: 16,\n '& svg, img': {\n width: 1,\n height: 1,\n objectFit: 'cover',\n },\n };\n\n return (\n <StyledLabel\n ref={ref}\n component=\"span\"\n className={labelClasses.root}\n ownerState={{ color, variant }}\n sx={{\n ...(startIcon && { pl: 0.75 }),\n ...(endIcon && { pr: 0.75 }),\n ...sx,\n }}\n theme={theme}\n {...other}\n >\n {startIcon && (\n <Box\n component=\"span\"\n className={labelClasses.icon}\n sx={{ mr: 0.75, ...iconStyles }}\n >\n {startIcon}\n </Box>\n )}\n\n {typeof children === 'string' ? sentenceCase(children) : children}\n\n {endIcon && (\n <Box\n component=\"span\"\n className={labelClasses.icon}\n sx={{ ml: 0.75, ...iconStyles }}\n >\n {endIcon}\n </Box>\n )}\n </StyledLabel>\n );\n },\n);\n\nLabel.displayName = 'Label';\n\nexport default Label;\n","export const labelClasses = {\n root: 'mnl__label__root',\n icon: 'mnl__label__icon',\n};\n","import Box from '@mui/material/Box';\nimport type { Theme } from '@mui/material/styles';\nimport { lighten, styled } from '@mui/material/styles';\n\nimport { stylesMode } from 'theme/styles';\n\nimport type { LabelColor, LabelVariant } from './props';\n\nexport const StyledLabel = styled(Box)(({\n theme,\n ownerState: { color, variant },\n}: {\n theme: Theme;\n ownerState: {\n color: LabelColor;\n variant: LabelVariant;\n };\n}) => {\n const defaultColor = {\n ...(color === 'default' && {\n /**\n * @variant filled\n */\n ...(variant === 'filled' && {\n color: theme.vars.palette.common.white,\n backgroundColor: theme.vars.palette.text.primary,\n [stylesMode.dark]: { color: theme.vars.palette.grey[800] },\n }),\n /**\n * @variant outlined\n */\n ...(variant === 'outlined' && {\n backgroundColor: 'transparent',\n color: theme.vars.palette.text.primary,\n border: `2px solid ${theme.vars.palette.text.primary}`,\n }),\n /**\n * @variant soft\n */\n ...(variant === 'soft' && {\n color: theme.vars.palette.text.secondary,\n border: `1px solid ${lighten(theme.palette.grey[500], 0.32)}`,\n }),\n /**\n * @variant inverted\n */\n ...(variant === 'inverted' && {\n color: theme.vars.palette.grey[800],\n backgroundColor: theme.vars.palette.grey[300],\n }),\n }),\n };\n\n const styleColors = {\n ...(color !== 'default' && {\n /**\n * @variant filled\n */\n ...(variant === 'filled' && {\n color: theme.vars.palette[color].contrastText,\n backgroundColor: theme.vars.palette[color].main,\n }),\n /**\n * @variant outlined\n */\n ...(variant === 'outlined' && {\n backgroundColor: 'transparent',\n color: theme.vars.palette[color].main,\n border: `2px solid ${theme.vars.palette[color].main}`,\n }),\n /**\n * @variant soft\n */\n ...(variant === 'soft' && {\n color: theme.vars.palette[color].dark,\n backgroundColor: lighten(theme.palette[color].main, 0.84),\n [stylesMode.dark]: { color: theme.vars.palette[color].light },\n }),\n /**\n * @variant inverted\n */\n ...(variant === 'inverted' && {\n color: theme.vars.palette[color].darker,\n backgroundColor: theme.vars.palette[color].lighter,\n }),\n }),\n };\n\n return {\n height: 24,\n minWidth: 24,\n lineHeight: 0,\n cursor: 'default',\n alignItems: 'center',\n whiteSpace: 'nowrap',\n display: 'inline-flex',\n justifyContent: 'center',\n padding: theme.spacing(0, 0.75),\n fontSize: theme.typography.pxToRem(12),\n fontWeight: theme.typography.fontWeightBold,\n borderRadius: theme.shape.borderRadius * 0.75,\n transition: theme.transitions.create('all', {\n duration: theme.transitions.duration.shorter,\n }),\n ...defaultColor,\n ...styleColors,\n };\n});\n"]}
@@ -1,19 +0,0 @@
1
- import { a } from './chunk-NQNNMRLC.js';
2
- import { createContext, forwardRef, useContext, useMemo, useCallback, useRef, useEffect } from 'react';
3
- import ft, { autocompleteClasses } from '@mui/material/Autocomplete';
4
- import yt from '@mui/material/CircularProgress';
5
- import gt from '@mui/material/TextField';
6
- import { VariableSizeList } from 'react-window';
7
- import ot from '@mui/material/ListSubheader';
8
- import nt from '@mui/material/Stack';
9
- import { useTheme, styled } from '@mui/material/styles';
10
- import H from '@mui/material/Typography';
11
- import st from '@mui/material/useMediaQuery';
12
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
13
- import lt from '@mui/material/Popper';
14
-
15
- var D=8,pt=r=>{let{data:n,index:i,style:c}=r,o=n[i],{showValueInLabel:s,key:y,...g}=o[0],u={...c,top:c.top+D,paddingTop:8};return Object.prototype.hasOwnProperty.call(o,"group")?jsx(ot,{component:"div",style:u,children:o.group},`list-box-item-group-${y}`):jsx(H,{component:"li",...g,noWrap:!0,style:u,children:jsxs(nt,{component:"div",direction:"row",flex:1,gap:1,justifyContent:"start",children:[o[1].icon&&jsx(a,{icon:o[1].icon}),o[1].label,s&&jsxs(H,{variant:"inherit",color:"grey.400",children:["(",o[1].value,")"]})]})},`list-box-item-${y}`)},X=createContext({}),J=forwardRef((r,n)=>{let i=useContext(X);return jsx("div",{ref:n,...r,...i})});J.displayName="OuterElementType";var ut=r=>{let n=useRef(null);return useEffect(()=>{n.current!=null&&n.current.resetAfterIndex(0,!0);},[r]),n},at=forwardRef(function(n,i){let{children:c,...o}=n,s=[];c.forEach(p=>{s.push(p),s.push(...p.children||[]);});let y=useTheme(),g=st(y.breakpoints.up("sm")),u=s.length,h=g?36:48,l=p=>Object.prototype.hasOwnProperty.call(p,"group")?48:h,x=()=>u>8?8*h:s.map(l).reduce((p,a)=>p+a,0),A=ut(u);return jsx("div",{ref:i,children:jsx(X.Provider,{value:o,children:jsx(VariableSizeList,{itemData:s,height:x()+2*D,width:"100%",ref:A,outerElementType:J,innerElementType:"ul",itemSize:p=>l(s[p]),overscanCount:5,itemCount:u,children:pt})})})}),W=at;var $=styled(lt)({[`& .${autocompleteClasses.listbox}`]:{boxSizing:"border-box","& ul":{padding:0,margin:0}}});var ht=r=>r&&typeof r=="object"?r.value.toString():r.toString(),U=forwardRef(({name:r,label:n,value:i,options:c=[],loading:o,noOptionsText:s="Nenhum resultado encontrado.",loadingText:y="Carregando op\xE7\xF5es...",error:g,helperText:u,placeholder:h,onChange:l,groupBy:x,showValueInLabel:A,disabled:p,multiple:a$1,required:I,renderOption:S,tabIndex:M,onInputChange:O,onSearch:T,onBlur:R,InputLabelProps:k,...B},V)=>{let v=useMemo(()=>new Map(c.map(t=>[t.value.toString(),t])),[c]),m=useMemo(()=>a$1?(Array.isArray(i)?i:[]).map(e=>v.get(e.toString())).filter(Boolean):i?.toString()&&v.get(i.toString())||null,[v,i,a$1]),j=(t,e)=>{let d=e.inputValue.toLocaleUpperCase();return t.filter(C=>`${C.value} ${C.label}`.toLocaleUpperCase().includes(d))},F=useMemo(()=>S?void 0:W,[S]),w=useMemo(()=>{let t=typeof m=="string",e=Array.isArray(m);return m&&!t&&!e&&m?.icon?jsx(a,{icon:m.icon}):null},[m]),G=useCallback((t,e,d)=>{if(O&&O(t,e,d),d==="input"){T&&T(e);return}},[O,T]),_=useCallback((t,e)=>{if(!e){l(a$1?[]:null);return}if(Array.isArray(e)){l(e.map(ht));return}if(typeof e=="string"){l(e.toString());return}l(e.value.toString());},[l,a$1]),Q=useCallback(t=>{R&&R(t);},[R]),q=useCallback(t=>jsx(gt,{...t,name:r,placeholder:h,fullWidth:!0,error:!!g,helperText:u,label:n,required:I,InputProps:{...t.InputProps,...!a$1&&{startAdornment:w},endAdornment:jsxs(Fragment,{children:[o?jsx(yt,{color:"primary",size:20}):null,t.InputProps.endAdornment]})},inputProps:{...t.inputProps,name:r,tabIndex:M},InputLabelProps:k}),[r,h,g,u,n,I,a$1,w,o,M,k]),K=useCallback((t,e,d,C)=>S?S(t,e,d,C):[{...t,showValueInLabel:A},e],[S,A]);return jsx(ft,{ref:V,value:m,onInputChange:G,options:c,loading:o,noOptionsText:s,loadingText:y,disabled:o||p,disableListWrap:!0,PopperComponent:$,ListboxComponent:F,filterOptions:j,onChange:_,onBlur:Q,renderOption:K,renderGroup:t=>t,groupBy:x,multiple:a$1,renderInput:q,...B})});U.displayName="Autocomplete";var Qt=U;
16
-
17
- export { Qt as a };
18
- //# sourceMappingURL=out.js.map
19
- //# sourceMappingURL=chunk-IGOVBLZ2.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/Autocomplete/index.tsx","../src/components/Autocomplete/Listbox.tsx","../src/components/Autocomplete/styles.ts"],"names":["forwardRef","useCallback","useMemo","MuiAutocomplete","CircularProgress","TextField","createContext","useContext","useEffect","useRef","VariableSizeList","ListSubheader","Stack","useTheme","Typography","useMediaQuery","jsx","jsxs","LISTBOX_PADDING","renderRow","props","data","index","style","dataSet","showValueInLabel","key","itemProps","inlineStyle","Icon_default","OuterElementContext","OuterElementType","ref","outerProps","useResetCache","ListboxComponent","children","other","itemData","item","theme","smUp","itemCount","itemSize","getChildSize","child","getHeight","a","b","gridRef","Listbox_default","autocompleteClasses","Popper","styled","StyledPopper","Fragment","getOptionValue","optionValue","Autocomplete","name","label","value","options","loading","noOptionsText","loadingText","error","helperText","placeholder","onChange","groupBy","disabled","multiple","required","renderOption","tabIndex","onInputChange","onSearch","onBlur","InputLabelProps","optionsMap","opt","formattedValue","v","filterOptions","optionsFilter","state","searchUpper","listboxComponentWithoutRenderOption","startAdornment","isString","isArray","handleInputChange","event","eventValue","reason","handleChange","_event","option","handleBlur","renderInput","params","renderOptionWrapper","ownerState","Autocomplete_default"],"mappings":"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","sourcesContent":["import { forwardRef, ReactNode, useCallback, useMemo } from 'react';\nimport MuiAutocomplete, {\n AutocompleteInputChangeReason,\n AutocompleteRenderInputParams,\n AutocompleteRenderOptionState,\n} from '@mui/material/Autocomplete';\nimport CircularProgress from '@mui/material/CircularProgress';\nimport TextField from '@mui/material/TextField';\n\nimport { AutocompleteProps } from 'types/autoCompleteProps';\nimport { Option } from 'types/option';\n\nimport Icon, { IconEnum } from '../Icon';\n\nimport ListboxComponent from './Listbox';\nimport { StyledPopper } from './styles';\n\nconst getOptionValue = (optionValue: Option | string | number) =>\n optionValue && typeof optionValue === 'object'\n ? optionValue.value.toString()\n : optionValue.toString();\n\nconst Autocomplete = forwardRef<unknown, AutocompleteProps>(\n (\n {\n name,\n label,\n value,\n options = [],\n loading,\n noOptionsText = 'Nenhum resultado encontrado.',\n loadingText = 'Carregando opções...',\n error,\n helperText,\n placeholder,\n onChange,\n groupBy,\n showValueInLabel,\n disabled,\n multiple,\n required,\n renderOption,\n tabIndex,\n onInputChange,\n onSearch,\n onBlur,\n InputLabelProps,\n ...other\n },\n ref,\n ) => {\n\n const optionsMap = useMemo(\n () => new Map(options.map(opt => [opt.value.toString(), opt])),\n [options],\n );\n\n const formattedValue = useMemo(() => {\n if (multiple) {\n const values = Array.isArray(value) ? value : [];\n return values\n .map(v => optionsMap.get(v.toString()))\n .filter(Boolean) as Option[];\n }\n\n if (value?.toString()) return optionsMap.get(value.toString()) || null;\n\n return null;\n }, [optionsMap, value, multiple]);\n\n const filterOptions = (\n optionsFilter: Option[],\n state: { inputValue: string },\n ) => {\n const searchUpper = state.inputValue.toLocaleUpperCase();\n return optionsFilter.filter(opt => {\n const search = `${opt.value} ${opt.label}`;\n return search.toLocaleUpperCase().includes(searchUpper);\n });\n };\n\n const listboxComponentWithoutRenderOption = useMemo(\n () => (renderOption ? undefined : ListboxComponent),\n [renderOption],\n );\n\n const startAdornment = useMemo(() => {\n const isString = typeof formattedValue === 'string';\n const isArray = Array.isArray(formattedValue);\n const existsIcon =\n formattedValue && !isString && !isArray && formattedValue?.icon;\n\n if (existsIcon) {\n return <Icon icon={formattedValue.icon as IconEnum} />;\n }\n\n return null;\n }, [formattedValue]);\n\n const handleInputChange = useCallback(\n (\n event: React.SyntheticEvent,\n eventValue: string,\n reason: AutocompleteInputChangeReason,\n ) => {\n if (onInputChange) onInputChange(event, eventValue, reason);\n\n if (reason === 'input') {\n if (onSearch) {\n onSearch(eventValue);\n }\n\n return;\n }\n },\n [onInputChange, onSearch],\n );\n\n const handleChange = useCallback(\n (\n _event: React.SyntheticEvent,\n option: NonNullable<string | Option> | (string | Option)[] | null,\n ) => {\n if (!option) {\n onChange(multiple ? [] : null);\n return;\n }\n\n if (Array.isArray(option)) {\n onChange(option.map(getOptionValue));\n return;\n }\n\n if (typeof option === 'string') {\n onChange(option.toString());\n return;\n }\n\n onChange(option.value.toString());\n return;\n },\n [onChange, multiple],\n );\n\n const handleBlur = useCallback(\n (event: React.FocusEvent<HTMLInputElement>) => {\n if (onBlur) onBlur(event);\n },\n [onBlur],\n );\n\n const renderInput = useCallback(\n (params: AutocompleteRenderInputParams) => (\n <TextField\n {...params}\n name={name}\n placeholder={placeholder}\n fullWidth\n error={!!error}\n helperText={helperText}\n label={label}\n required={required}\n InputProps={{\n ...params.InputProps,\n ...(!multiple && { startAdornment }),\n endAdornment: (\n <>\n {loading ? (\n <CircularProgress color=\"primary\" size={20} />\n ) : null}\n {params.InputProps.endAdornment}\n </>\n ),\n }}\n inputProps={{\n ...params.inputProps,\n name,\n tabIndex,\n }}\n InputLabelProps={InputLabelProps}\n />\n ),\n [\n name,\n placeholder,\n error,\n helperText,\n label,\n required,\n multiple,\n startAdornment,\n loading,\n tabIndex,\n InputLabelProps,\n ],\n );\n\n const renderOptionWrapper = useCallback(\n (\n props: React.HTMLAttributes<HTMLLIElement> & { key: unknown },\n option: Option,\n state: AutocompleteRenderOptionState,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ownerState: any,\n ) =>\n renderOption\n ? renderOption(props, option, state, ownerState)\n : ([{ ...props, showValueInLabel }, option] as ReactNode),\n [renderOption, showValueInLabel],\n );\n\n return (\n <MuiAutocomplete\n ref={ref}\n value={formattedValue}\n onInputChange={handleInputChange}\n options={options}\n loading={loading}\n noOptionsText={noOptionsText}\n loadingText={loadingText}\n disabled={loading || disabled}\n disableListWrap\n PopperComponent={StyledPopper}\n ListboxComponent={listboxComponentWithoutRenderOption}\n filterOptions={filterOptions}\n onChange={handleChange}\n onBlur={handleBlur}\n renderOption={renderOptionWrapper}\n renderGroup={params => params as unknown as ReactNode}\n groupBy={groupBy}\n multiple={multiple}\n renderInput={renderInput}\n {...other}\n />\n );\n },\n);\n\nAutocomplete.displayName = 'Autocomplete';\n\nexport default Autocomplete;\n","import {\n createContext,\n forwardRef,\n HTMLAttributes,\n useContext,\n useEffect,\n useRef,\n} from 'react';\nimport { ListChildComponentProps, VariableSizeList } from 'react-window';\nimport ListSubheader from '@mui/material/ListSubheader';\nimport Stack from '@mui/material/Stack';\nimport { useTheme } from '@mui/material/styles';\nimport Typography from '@mui/material/Typography';\nimport useMediaQuery from '@mui/material/useMediaQuery';\n\nimport Icon from '../Icon';\n\nconst LISTBOX_PADDING = 8;\n\nconst renderRow = (props: ListChildComponentProps) => {\n const { data, index, style } = props;\n const dataSet = data[index];\n const { showValueInLabel, key, ...itemProps } = dataSet[0];\n\n const inlineStyle = {\n ...style,\n top: (style.top as number) + LISTBOX_PADDING,\n paddingTop: 8,\n };\n\n if (Object.prototype.hasOwnProperty.call(dataSet, 'group'))\n return (\n <ListSubheader\n key={`list-box-item-group-${key}`}\n component=\"div\"\n style={inlineStyle}\n >\n {dataSet.group}\n </ListSubheader>\n );\n\n return (\n <Typography\n component=\"li\"\n key={`list-box-item-${key}`}\n {...itemProps}\n noWrap\n style={inlineStyle}\n >\n <Stack\n component=\"div\"\n direction=\"row\"\n flex={1}\n gap={1}\n justifyContent=\"start\"\n >\n {dataSet[1].icon && <Icon icon={dataSet[1].icon} />}\n {dataSet[1].label}\n\n {showValueInLabel && (\n <Typography variant=\"inherit\" color=\"grey.400\">\n ({dataSet[1].value})\n </Typography>\n )}\n </Stack>\n </Typography>\n );\n};\n\nconst OuterElementContext = createContext({});\n\nconst OuterElementType = forwardRef<HTMLDivElement>((props, ref) => {\n const outerProps = useContext(OuterElementContext);\n return <div ref={ref} {...props} {...outerProps} />;\n});\n\nOuterElementType.displayName = 'OuterElementType';\n\nconst useResetCache = (data: number) => {\n const ref = useRef<VariableSizeList>(null);\n\n useEffect(() => {\n if (ref.current != null) {\n ref.current.resetAfterIndex(0, true);\n }\n }, [data]);\n\n return ref;\n};\n\nconst ListboxComponent = forwardRef<\n HTMLDivElement,\n HTMLAttributes<HTMLElement>\n>(function ListboxComponent(props, ref) {\n const { children, ...other } = props;\n const itemData: JSX.Element[] = [];\n (children as JSX.Element[]).forEach(\n (item: JSX.Element & { children?: JSX.Element[] }) => {\n itemData.push(item);\n itemData.push(...(item.children || []));\n },\n );\n\n const theme = useTheme();\n const smUp = useMediaQuery(theme.breakpoints.up('sm'));\n const itemCount = itemData.length;\n const itemSize = smUp ? 36 : 48;\n\n const getChildSize = (child: JSX.Element) => {\n if (Object.prototype.hasOwnProperty.call(child, 'group')) {\n return 48;\n }\n\n return itemSize;\n };\n\n const getHeight = () => {\n if (itemCount > 8) {\n return 8 * itemSize;\n }\n return itemData.map(getChildSize).reduce((a, b) => a + b, 0);\n };\n\n const gridRef = useResetCache(itemCount);\n\n return (\n <div ref={ref}>\n <OuterElementContext.Provider value={other}>\n <VariableSizeList\n itemData={itemData}\n height={getHeight() + 2 * LISTBOX_PADDING}\n width=\"100%\"\n ref={gridRef}\n outerElementType={OuterElementType}\n innerElementType=\"ul\"\n itemSize={index => getChildSize(itemData[index])}\n overscanCount={5}\n itemCount={itemCount}\n >\n {renderRow}\n </VariableSizeList>\n </OuterElementContext.Provider>\n </div>\n );\n});\n\nexport default ListboxComponent;\n","import { autocompleteClasses } from '@mui/material/Autocomplete';\nimport Popper from '@mui/material/Popper';\nimport { styled } from '@mui/material/styles';\n\nexport const StyledPopper = styled(Popper)({\n [`& .${autocompleteClasses.listbox}`]: {\n boxSizing: 'border-box',\n '& ul': {\n padding: 0,\n margin: 0,\n },\n },\n});\n"]}
@@ -1,10 +0,0 @@
1
- import { forwardRef, useState, useRef, useEffect } from 'react';
2
- import { NumericFormat } from 'react-number-format';
3
- import B from '@mui/material/TextField';
4
- import { jsx } from 'react/jsx-runtime';
5
-
6
- var s=forwardRef(({decimalScale:c=0,fixedDecimalScale:m=!0,prefix:d,suffix:I,allowNegative:N,minValue:u,maxValue:n=1/0,maxLength:T,value:b,inputProps:g,InputProps:y,size:S,disabled:h,name:t,helperText:x,error:R,fullWidth:v,label:w,required:D,onChange:r,tabIndex:F,placeholder:P,margin:k,className:E,delay:l},L)=>{let[V,q]=useState(Date.now()),e=useRef(null),i=()=>q(Date.now()),z=(C,o)=>{if(!r)return;e.current&&clearTimeout(e.current);let f=()=>{let{floatValue:a}=C,p=a||0;if(u!==void 0&&u>p){r({target:{name:t,value:u},event:o}),i();return}if(a!==void 0&&n<p){r({target:{name:t,value:n},event:o}),i();return}r({target:{name:t,value:a},event:o});};l===0?f():e.current=setTimeout(f,l||1e3);};return useEffect(()=>()=>{e.current&&clearTimeout(e.current);},[]),jsx(NumericFormat,{getInputRef:L,value:b,prefix:d,suffix:I,decimalSeparator:",",thousandSeparator:".",decimalScale:c,fixedDecimalScale:m,autoComplete:"off",allowNegative:N,maxLength:T,onValueChange:z,customInput:B,InputProps:{...y},inputProps:{...g,name:t,tabIndex:F},disabled:h,size:S,helperText:x,error:R,fullWidth:v,label:w,required:D,placeholder:P,margin:k,className:E},V)});s.displayName="NumberInput";var Y=s;
7
-
8
- export { Y as a };
9
- //# sourceMappingURL=out.js.map
10
- //# sourceMappingURL=chunk-KIWSLR76.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/NumberInput/index.tsx"],"names":["forwardRef","useEffect","useRef","useState","NumericFormat","TextField","jsx","NumberInput","decimalScale","fixedDecimalScale","prefix","suffix","allowNegative","minValue","maxValue","maxLength","value","inputProps","InputProps","size","disabled","name","helperText","error","fullWidth","label","required","onChange","tabIndex","placeholder","margin","className","delay","ref","inputkey","setInputKey","delayTimer","reRenderInput","handleChange","values","event","executeChange","floatValue","comparisonValue","NumberInput_default"],"mappings":"AAAA,OAAS,cAAAA,EAAY,aAAAC,EAAW,UAAAC,EAAQ,YAAAC,MAAgB,QACxD,OAEE,iBAAAC,MAEK,sBACP,OAAOC,MAAe,0BAwFhB,cAAAC,MAAA,oBApFN,IAAMC,EAAcP,EAClB,CACE,CACE,aAAAQ,EAAe,EACf,kBAAAC,EAAoB,GACpB,OAAAC,EACA,OAAAC,EACA,cAAAC,EACA,SAAAC,EACA,SAAAC,EAAW,IACX,UAAAC,EACA,MAAAC,EACA,WAAAC,EACA,WAAAC,EACA,KAAAC,EACA,SAAAC,EACA,KAAAC,EACA,WAAAC,EACA,MAAAC,EACA,UAAAC,EACA,MAAAC,EACA,SAAAC,EACA,SAAAC,EACA,SAAAC,EACA,YAAAC,EACA,OAAAC,EACA,UAAAC,EACA,MAAAC,CACF,EACAC,IACG,CACH,GAAM,CAACC,EAAUC,CAAW,EAAIhC,EAAS,KAAK,IAAI,CAAC,EAC7CiC,EAAalC,EAA6C,IAAI,EAE9DmC,EAAgB,IAAMF,EAAY,KAAK,IAAI,CAAC,EAE5CG,EAAe,CAACC,EAA4BC,IAAsB,CACtE,GAAI,CAACb,EAAU,OAEXS,EAAW,SAAS,aAAaA,EAAW,OAAO,EAEvD,IAAMK,EAAgB,IAAM,CAC1B,GAAM,CAAE,WAAAC,CAAW,EAAIH,EACjBI,EAAkBD,GAAc,EAEtC,GAAI7B,IAAa,QAAaA,EAAW8B,EAAiB,CACxDhB,EAAS,CAAE,OAAQ,CAAE,KAAAN,EAAM,MAAOR,CAAS,EAAG,MAAA2B,CAAM,CAAC,EACrDH,EAAc,EAEd,OAGF,GAAIK,IAAe,QAAa5B,EAAW6B,EAAiB,CAC1DhB,EAAS,CAAE,OAAQ,CAAE,KAAAN,EAAM,MAAOP,CAAS,EAAG,MAAA0B,CAAM,CAAC,EACrDH,EAAc,EAEd,OAGFV,EAAS,CACP,OAAQ,CACN,KAAAN,EACA,MAAOqB,CACT,EACA,MAAAF,CACF,CAAC,CACH,EAEIR,IAAU,EACZS,EAAc,EAEdL,EAAW,QAAU,WAAWK,EAAeT,GAAS,GAAI,CAEhE,EAEA,OAAA/B,EAAU,IACD,IAAM,CACPmC,EAAW,SACb,aAAaA,EAAW,OAAO,CAEnC,EACC,CAAC,CAAC,EAGH9B,EAACF,EAAA,CAEC,YAAa6B,EACb,MAAOjB,EACP,OAAQN,EACR,OAAQC,EACR,iBAAiB,IACjB,kBAAkB,IAClB,aAAcH,EACd,kBAAmBC,EACnB,aAAa,MACb,cAAeG,EACf,UAAWG,EACX,cAAeuB,EACf,YAAajC,EACb,WAAY,CACV,GAAGa,CACL,EACA,WAAY,CAAE,GAAGD,EAAY,KAAAI,EAAM,SAAAO,CAAS,EAC5C,SAAUR,EACV,KAAMD,EACN,WAAYG,EACZ,MAAOC,EACP,UAAWC,EACX,MAAOC,EACP,SAAUC,EACV,YAAaG,EACb,OAAQC,EACR,UAAWC,GA3BNG,CA4BP,CAEJ,CACF,EAEA3B,EAAY,YAAc,cAE1B,IAAOqC,EAAQrC","sourcesContent":["import { forwardRef, useEffect, useRef, useState } from 'react';\nimport {\n NumberFormatValues,\n NumericFormat,\n SourceInfo,\n} from 'react-number-format';\nimport TextField from '@mui/material/TextField';\n\nimport { NumberInputProps } from 'types/numberInputProps';\n\nconst NumberInput = forwardRef<HTMLDivElement, NumberInputProps>(\n (\n {\n decimalScale = 0,\n fixedDecimalScale = true,\n prefix,\n suffix,\n allowNegative,\n minValue,\n maxValue = Infinity,\n maxLength,\n value,\n inputProps,\n InputProps,\n size,\n disabled,\n name,\n helperText,\n error,\n fullWidth,\n label,\n required,\n onChange,\n tabIndex,\n placeholder,\n margin,\n className,\n delay,\n },\n ref,\n ) => {\n const [inputkey, setInputKey] = useState(Date.now());\n const delayTimer = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n const reRenderInput = () => setInputKey(Date.now());\n\n const handleChange = (values: NumberFormatValues, event: SourceInfo) => {\n if (!onChange) return;\n\n if (delayTimer.current) clearTimeout(delayTimer.current);\n\n const executeChange = () => {\n const { floatValue } = values;\n const comparisonValue = floatValue || 0;\n\n if (minValue !== undefined && minValue > comparisonValue) {\n onChange({ target: { name, value: minValue }, event });\n reRenderInput();\n\n return;\n }\n\n if (floatValue !== undefined && maxValue < comparisonValue) {\n onChange({ target: { name, value: maxValue }, event });\n reRenderInput();\n\n return;\n }\n\n onChange({\n target: {\n name,\n value: floatValue,\n },\n event,\n });\n };\n\n if (delay === 0) {\n executeChange();\n } else {\n delayTimer.current = setTimeout(executeChange, delay || 1000);\n }\n };\n\n useEffect(() => {\n return () => {\n if (delayTimer.current) {\n clearTimeout(delayTimer.current);\n }\n };\n }, []);\n\n return (\n <NumericFormat\n key={inputkey}\n getInputRef={ref}\n value={value}\n prefix={prefix}\n suffix={suffix}\n decimalSeparator=\",\"\n thousandSeparator=\".\"\n decimalScale={decimalScale}\n fixedDecimalScale={fixedDecimalScale}\n autoComplete=\"off\"\n allowNegative={allowNegative}\n maxLength={maxLength}\n onValueChange={handleChange}\n customInput={TextField}\n InputProps={{\n ...InputProps,\n }}\n inputProps={{ ...inputProps, name, tabIndex }}\n disabled={disabled}\n size={size}\n helperText={helperText}\n error={error}\n fullWidth={fullWidth}\n label={label}\n required={required}\n placeholder={placeholder}\n margin={margin}\n className={className}\n />\n );\n },\n);\n\nNumberInput.displayName = 'NumberInput';\n\nexport default NumberInput;\n"]}
@@ -1,7 +0,0 @@
1
- import { useRef, useEffect, useLayoutEffect } from 'react';
2
-
3
- var a=typeof window<"u"?useLayoutEffect:useEffect;function u(n,t,o,d){let i=useRef(t);a(()=>{i.current=t;},[t]),useEffect(()=>{let e=o?.current||window;if(!(e&&e.addEventListener))return;let v=E=>i.current(E);return e.addEventListener(n,v,d),()=>{e.removeEventListener(n,v);}},[n,o,d]);}var L=u;
4
-
5
- export { L as a };
6
- //# sourceMappingURL=out.js.map
7
- //# sourceMappingURL=chunk-L5URMM57.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/hooks/useEventListener.ts"],"names":["useEffect","useLayoutEffect","useRef","useIsomorphicLayoutEffect","useEventListener","eventName","handler","element","options","savedHandler","targetElement","eventListener","event","useEventListener_default"],"mappings":"AAAA,OAAoB,aAAAA,EAAW,mBAAAC,EAAiB,UAAAC,MAAc,QAE9D,IAAMC,EACJ,OAAO,OAAW,IAAcF,EAAkBD,EA6BpD,SAASI,EAKPC,EACAC,EAGAC,EACAC,EACA,CAEA,IAAMC,EAAeP,EAAOI,CAAO,EAEnCH,EAA0B,IAAM,CAC9BM,EAAa,QAAUH,CACzB,EAAG,CAACA,CAAO,CAAC,EAEZN,EAAU,IAAM,CAEd,IAAMU,EAA4BH,GAAS,SAAW,OACtD,GAAI,EAAEG,GAAiBA,EAAc,kBACnC,OAIF,IAAMC,EAAgCC,GAASH,EAAa,QAAQG,CAAK,EAEzE,OAAAF,EAAc,iBAAiBL,EAAWM,EAAeH,CAAO,EAGzD,IAAM,CACXE,EAAc,oBAAoBL,EAAWM,CAAa,CAC5D,CACF,EAAG,CAACN,EAAWE,EAASC,CAAO,CAAC,CAClC,CAEA,IAAOK,EAAQT","sourcesContent":["import { RefObject, useEffect, useLayoutEffect, useRef } from 'react';\n\nconst useIsomorphicLayoutEffect =\n typeof window !== 'undefined' ? useLayoutEffect : useEffect;\n\n// Window Event based useEventListener interface\nfunction useEventListener<K extends keyof WindowEventMap>(\n eventName: K,\n handler: (event: WindowEventMap[K]) => void,\n element?: undefined,\n options?: boolean | AddEventListenerOptions,\n): void;\n\n// Element Event based useEventListener interface\nfunction useEventListener<\n K extends keyof HTMLElementEventMap,\n T extends HTMLElement = HTMLDivElement,\n>(\n eventName: K,\n handler: (event: HTMLElementEventMap[K]) => void,\n element: RefObject<T>,\n options?: boolean | AddEventListenerOptions,\n): void;\n\n// Document Event based useEventListener interface\nfunction useEventListener<K extends keyof DocumentEventMap>(\n eventName: K,\n handler: (event: DocumentEventMap[K]) => void,\n element: RefObject<Document>,\n options?: boolean | AddEventListenerOptions,\n): void;\n\nfunction useEventListener<\n KW extends keyof WindowEventMap,\n KH extends keyof HTMLElementEventMap,\n T extends HTMLElement | void = void,\n>(\n eventName: KW | KH,\n handler: (\n event: WindowEventMap[KW] | HTMLElementEventMap[KH] | Event,\n ) => void,\n element?: RefObject<T>,\n options?: boolean | AddEventListenerOptions,\n) {\n // Create a ref that stores handler\n const savedHandler = useRef(handler);\n\n useIsomorphicLayoutEffect(() => {\n savedHandler.current = handler;\n }, [handler]);\n\n useEffect(() => {\n // Define the listening target\n const targetElement: T | Window = element?.current || window;\n if (!(targetElement && targetElement.addEventListener)) {\n return;\n }\n\n // Create event listener that calls handler function stored in ref\n const eventListener: typeof handler = event => savedHandler.current(event);\n\n targetElement.addEventListener(eventName, eventListener, options);\n\n // Remove event listener on cleanup\n return () => {\n targetElement.removeEventListener(eventName, eventListener);\n };\n }, [eventName, element, options]);\n}\n\nexport default useEventListener;\n"]}
@@ -1,12 +0,0 @@
1
- import { a } from './chunk-NQNNMRLC.js';
2
- import { forwardRef, useMemo } from 'react';
3
- import M from '@mui/material/Box';
4
- import w from '@mui/material/CircularProgress';
5
- import R from '@mui/material/IconButton';
6
- import { jsx } from 'react/jsx-runtime';
7
-
8
- var p=forwardRef(({icon:o,label:n,loading:r=!1,disabled:u=!1,iconProps:i={},children:e,color:a$1="primary.main",boxProps:f={},tooltipProps:l,...B},I)=>{if(!o&&!e)throw new Error("IconButton: icon or children is required");l&&process.env.NODE_ENV==="development"&&console.warn("IconButton: tooltipProps \xE9 obsoleto. Remova a prop.");let m=useMemo(()=>o?jsx(a,{icon:o,...i}):e,[o,e,i]),d=useMemo(()=>r?jsx(w,{size:20,color:"inherit"}):m,[r,m]);return jsx(M,{color:a$1,...f,children:jsx(R,{ref:I,color:"inherit","aria-label":n,title:n,disabled:r||u,...B,children:d})})});p.displayName="IconButton";var x=p;
9
-
10
- export { x as a };
11
- //# sourceMappingURL=out.js.map
12
- //# sourceMappingURL=chunk-LNXA53QR.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/IconButton/index.tsx"],"names":["forwardRef","useMemo","Box","CircularProgress","MuiIconButton","jsx","IconButton","icon","label","loading","disabled","iconProps","children","color","boxProps","tooltipProps","props","ref","content","Icon_default","loadingContent","IconButton_default"],"mappings":"wCAAA,OAAS,cAAAA,EAAY,WAAAC,MAAe,QACpC,OAAOC,MAAS,oBAChB,OAAOC,MAAsB,iCAC7B,OAAOC,MAAmB,2BA8BN,cAAAC,MAAA,oBAxBpB,IAAMC,EAAaN,EACjB,CACE,CACE,KAAAO,EACA,MAAAC,EACA,QAAAC,EAAU,GACV,SAAAC,EAAW,GACX,UAAAC,EAAY,CAAC,EACb,SAAAC,EACA,MAAAC,EAAQ,eACR,SAAAC,EAAW,CAAC,EACZ,aAAAC,EACA,GAAGC,CACL,EACAC,IACG,CACH,GAAI,CAACV,GAAQ,CAACK,EACZ,MAAM,IAAI,MAAM,0CAA0C,EACxDG,GAAgB,QAAQ,IAAI,WAAa,eAE3C,QAAQ,KAAK,wDAAqD,EAGpE,IAAMG,EAAUjB,EACd,IAAOM,EAAOF,EAACc,EAAA,CAAK,KAAMZ,EAAO,GAAGI,EAAW,EAAKC,EACpD,CAACL,EAAMK,EAAUD,CAAS,CAC5B,EAEMS,EAAiBnB,EACrB,IACEQ,EAAUJ,EAACF,EAAA,CAAiB,KAAM,GAAI,MAAM,UAAU,EAAKe,EAC7D,CAACT,EAASS,CAAO,CACnB,EAEA,OACEb,EAACH,EAAA,CAAI,MAAOW,EAAQ,GAAGC,EACrB,SAAAT,EAACD,EAAA,CACC,IAAKa,EACL,MAAM,UACN,aAAYT,EACZ,MAAOA,EACP,SAAUC,GAAWC,EACpB,GAAGM,EAEH,SAAAI,EACH,EACF,CAEJ,CACF,EAEAd,EAAW,YAAc,aAEzB,IAAOe,EAAQf","sourcesContent":["import { forwardRef, useMemo } from 'react';\nimport Box from '@mui/material/Box';\nimport CircularProgress from '@mui/material/CircularProgress';\nimport MuiIconButton from '@mui/material/IconButton';\n\nimport Icon from 'components/Icon';\n\nimport { IconButtonProps } from './props';\n\nconst IconButton = forwardRef<HTMLButtonElement, IconButtonProps>(\n (\n {\n icon,\n label,\n loading = false,\n disabled = false,\n iconProps = {},\n children,\n color = 'primary.main',\n boxProps = {},\n tooltipProps,\n ...props\n },\n ref,\n ) => {\n if (!icon && !children)\n throw new Error('IconButton: icon or children is required');\n if (tooltipProps && process.env.NODE_ENV === 'development') {\n // eslint-disable-next-line no-console\n console.warn('IconButton: tooltipProps é obsoleto. Remova a prop.');\n }\n\n const content = useMemo(\n () => (icon ? <Icon icon={icon} {...iconProps} /> : children),\n [icon, children, iconProps],\n );\n\n const loadingContent = useMemo(\n () =>\n loading ? <CircularProgress size={20} color=\"inherit\" /> : content,\n [loading, content],\n );\n\n return (\n <Box color={color} {...boxProps}>\n <MuiIconButton\n ref={ref as React.Ref<HTMLButtonElement>}\n color=\"inherit\"\n aria-label={label}\n title={label}\n disabled={loading || disabled}\n {...props}\n >\n {loadingContent}\n </MuiIconButton>\n </Box>\n );\n },\n);\n\nIconButton.displayName = 'IconButton';\n\nexport default IconButton;\n"]}