@verdaccio/ui-components 5.0.0-next-9.2 → 5.0.0-next-9.3

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 (813) hide show
  1. package/build/Theme/ResetStyles.js +29 -25
  2. package/build/Theme/ResetStyles.js.map +1 -1
  3. package/build/Theme/ResetStyles.mjs +32 -0
  4. package/build/Theme/ResetStyles.mjs.map +1 -0
  5. package/build/Theme/StyleBaseline.js +10 -7
  6. package/build/Theme/StyleBaseline.js.map +1 -1
  7. package/build/Theme/StyleBaseline.mjs +11 -0
  8. package/build/Theme/StyleBaseline.mjs.map +1 -0
  9. package/build/Theme/ThemeProvider.js +33 -23
  10. package/build/Theme/ThemeProvider.js.map +1 -1
  11. package/build/Theme/ThemeProvider.mjs +40 -0
  12. package/build/Theme/ThemeProvider.mjs.map +1 -0
  13. package/build/Theme/colors.js +26 -12
  14. package/build/Theme/colors.js.map +1 -1
  15. package/build/Theme/colors.mjs +22 -0
  16. package/build/Theme/colors.mjs.map +1 -0
  17. package/build/Theme/index.js +5 -5
  18. package/build/Theme/index.mjs +5 -0
  19. package/build/Theme/modes.js +15 -12
  20. package/build/Theme/modes.js.map +1 -1
  21. package/build/Theme/modes.mjs +30 -0
  22. package/build/Theme/modes.mjs.map +1 -0
  23. package/build/Theme/theme.js +19 -16
  24. package/build/Theme/theme.js.map +1 -1
  25. package/build/Theme/theme.mjs +22 -0
  26. package/build/Theme/theme.mjs.map +1 -0
  27. package/build/Theme/tokens.js +14 -8
  28. package/build/Theme/tokens.js.map +1 -1
  29. package/build/Theme/tokens.mjs +33 -0
  30. package/build/Theme/tokens.mjs.map +1 -0
  31. package/build/_virtual/_rolldown/runtime.js +29 -7
  32. package/build/_virtual/_rolldown/runtime.mjs +13 -0
  33. package/build/api/use-data-mutation.js +31 -24
  34. package/build/api/use-data-mutation.js.map +1 -1
  35. package/build/api/use-data-mutation.mjs +45 -0
  36. package/build/api/use-data-mutation.mjs.map +1 -0
  37. package/build/api/use-data.js +17 -12
  38. package/build/api/use-data.js.map +1 -1
  39. package/build/api/use-data.mjs +23 -0
  40. package/build/api/use-data.mjs.map +1 -0
  41. package/build/components/ActionBar/ActionBar.js +37 -28
  42. package/build/components/ActionBar/ActionBar.js.map +1 -1
  43. package/build/components/ActionBar/ActionBar.mjs +52 -0
  44. package/build/components/ActionBar/ActionBar.mjs.map +1 -0
  45. package/build/components/ActionBar/ActionBarAction.js +66 -52
  46. package/build/components/ActionBar/ActionBarAction.js.map +1 -1
  47. package/build/components/ActionBar/ActionBarAction.mjs +85 -0
  48. package/build/components/ActionBar/ActionBarAction.mjs.map +1 -0
  49. package/build/components/ActionBar/index.js +1 -1
  50. package/build/components/ActionBar/index.mjs +1 -0
  51. package/build/components/AppRoute/AppRoute.js +58 -47
  52. package/build/components/AppRoute/AppRoute.js.map +1 -1
  53. package/build/components/AppRoute/AppRoute.mjs +76 -0
  54. package/build/components/AppRoute/AppRoute.mjs.map +1 -0
  55. package/build/components/Author/Author.js +26 -22
  56. package/build/components/Author/Author.js.map +1 -1
  57. package/build/components/Author/Author.mjs +33 -0
  58. package/build/components/Author/Author.mjs.map +1 -0
  59. package/build/components/Author/index.js +1 -1
  60. package/build/components/Author/index.mjs +1 -0
  61. package/build/components/Author/styles.js +13 -8
  62. package/build/components/Author/styles.js.map +1 -1
  63. package/build/components/Author/styles.mjs +26 -0
  64. package/build/components/Author/styles.mjs.map +1 -0
  65. package/build/components/CopyClipboard/CopyToClipBoard.js +35 -28
  66. package/build/components/CopyClipboard/CopyToClipBoard.js.map +1 -1
  67. package/build/components/CopyClipboard/CopyToClipBoard.mjs +57 -0
  68. package/build/components/CopyClipboard/CopyToClipBoard.mjs.map +1 -0
  69. package/build/components/CopyClipboard/index.js +2 -2
  70. package/build/components/CopyClipboard/index.mjs +2 -0
  71. package/build/components/CopyClipboard/utils.js +4 -3
  72. package/build/components/CopyClipboard/utils.js.map +1 -1
  73. package/build/components/CopyClipboard/utils.mjs +9 -0
  74. package/build/components/CopyClipboard/utils.mjs.map +1 -0
  75. package/build/components/Dependencies/Dependencies.js +38 -26
  76. package/build/components/Dependencies/Dependencies.js.map +1 -1
  77. package/build/components/Dependencies/Dependencies.mjs +45 -0
  78. package/build/components/Dependencies/Dependencies.mjs.map +1 -0
  79. package/build/components/Dependencies/DependencyBlock.js +50 -38
  80. package/build/components/Dependencies/DependencyBlock.js.map +1 -1
  81. package/build/components/Dependencies/DependencyBlock.mjs +70 -0
  82. package/build/components/Dependencies/DependencyBlock.mjs.map +1 -0
  83. package/build/components/Dependencies/index.js +2 -2
  84. package/build/components/Dependencies/index.mjs +2 -0
  85. package/build/components/Dependencies/utits.js +3 -3
  86. package/build/components/Dependencies/utits.js.map +1 -1
  87. package/build/components/Dependencies/utits.mjs +8 -0
  88. package/build/components/Dependencies/utits.mjs.map +1 -0
  89. package/build/components/Deprecated/Deprecated.js +17 -12
  90. package/build/components/Deprecated/Deprecated.js.map +1 -1
  91. package/build/components/Deprecated/Deprecated.mjs +18 -0
  92. package/build/components/Deprecated/Deprecated.mjs.map +1 -0
  93. package/build/components/Deprecated/index.js +1 -1
  94. package/build/components/Deprecated/index.mjs +1 -0
  95. package/build/components/Developers/DeveloperType.js +5 -3
  96. package/build/components/Developers/DeveloperType.js.map +1 -1
  97. package/build/components/Developers/DeveloperType.mjs +10 -0
  98. package/build/components/Developers/DeveloperType.mjs.map +1 -0
  99. package/build/components/Developers/Developers.js +50 -37
  100. package/build/components/Developers/Developers.js.map +1 -1
  101. package/build/components/Developers/Developers.mjs +68 -0
  102. package/build/components/Developers/Developers.mjs.map +1 -0
  103. package/build/components/Developers/Title.js +23 -18
  104. package/build/components/Developers/Title.js.map +1 -1
  105. package/build/components/Developers/Title.mjs +32 -0
  106. package/build/components/Developers/Title.mjs.map +1 -0
  107. package/build/components/Developers/get-unique-developer-values.js +4 -3
  108. package/build/components/Developers/get-unique-developer-values.js.map +1 -1
  109. package/build/components/Developers/get-unique-developer-values.mjs +9 -0
  110. package/build/components/Developers/get-unique-developer-values.mjs.map +1 -0
  111. package/build/components/Developers/index.js +2 -2
  112. package/build/components/Developers/index.mjs +2 -0
  113. package/build/components/Distribution/Dist.js +32 -27
  114. package/build/components/Distribution/Dist.js.map +1 -1
  115. package/build/components/Distribution/Dist.mjs +42 -0
  116. package/build/components/Distribution/Dist.mjs.map +1 -0
  117. package/build/components/Distribution/index.js +1 -1
  118. package/build/components/Distribution/index.mjs +1 -0
  119. package/build/components/Distribution/styles.js +22 -13
  120. package/build/components/Distribution/styles.js.map +1 -1
  121. package/build/components/Distribution/styles.mjs +41 -0
  122. package/build/components/Distribution/styles.mjs.map +1 -0
  123. package/build/components/Engines/Engines.js +61 -43
  124. package/build/components/Engines/Engines.js.map +1 -1
  125. package/build/components/Engines/Engines.mjs +82 -0
  126. package/build/components/Engines/Engines.mjs.map +1 -0
  127. package/build/components/Engines/index.js +1 -1
  128. package/build/components/Engines/index.mjs +1 -0
  129. package/build/components/Engines/styles.js +16 -10
  130. package/build/components/Engines/styles.js.map +1 -1
  131. package/build/components/Engines/styles.mjs +29 -0
  132. package/build/components/Engines/styles.mjs.map +1 -0
  133. package/build/components/ErrorBoundary/ErrorBoundary.js +18 -14
  134. package/build/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
  135. package/build/components/ErrorBoundary/ErrorBoundary.mjs +31 -0
  136. package/build/components/ErrorBoundary/ErrorBoundary.mjs.map +1 -0
  137. package/build/components/ErrorBoundary/index.js +1 -1
  138. package/build/components/ErrorBoundary/index.mjs +1 -0
  139. package/build/components/Forbidden/Forbidden.js +37 -27
  140. package/build/components/Forbidden/Forbidden.js.map +1 -1
  141. package/build/components/Forbidden/Forbidden.mjs +70 -0
  142. package/build/components/Forbidden/Forbidden.mjs.map +1 -0
  143. package/build/components/Forbidden/index.js +1 -1
  144. package/build/components/Forbidden/index.mjs +1 -0
  145. package/build/components/FundButton/FundButton.js +38 -29
  146. package/build/components/FundButton/FundButton.js.map +1 -1
  147. package/build/components/FundButton/FundButton.mjs +60 -0
  148. package/build/components/FundButton/FundButton.mjs.map +1 -0
  149. package/build/components/FundButton/index.js +1 -1
  150. package/build/components/FundButton/index.mjs +1 -0
  151. package/build/components/HeaderInfoDialog/HeaderInfoDialog.js +52 -42
  152. package/build/components/HeaderInfoDialog/HeaderInfoDialog.js.map +1 -1
  153. package/build/components/HeaderInfoDialog/HeaderInfoDialog.mjs +71 -0
  154. package/build/components/HeaderInfoDialog/HeaderInfoDialog.mjs.map +1 -0
  155. package/build/components/HeaderInfoDialog/index.js +1 -1
  156. package/build/components/HeaderInfoDialog/index.mjs +1 -0
  157. package/build/components/Heading/Heading.js +12 -9
  158. package/build/components/Heading/Heading.js.map +1 -1
  159. package/build/components/Heading/Heading.mjs +15 -0
  160. package/build/components/Heading/Heading.mjs.map +1 -0
  161. package/build/components/Heading/index.js +1 -1
  162. package/build/components/Heading/index.mjs +1 -0
  163. package/build/components/Help/Help.js +42 -34
  164. package/build/components/Help/Help.js.map +1 -1
  165. package/build/components/Help/Help.mjs +60 -0
  166. package/build/components/Help/Help.mjs.map +1 -0
  167. package/build/components/Help/index.js +1 -1
  168. package/build/components/Help/index.mjs +1 -0
  169. package/build/components/Help/styles.js +9 -6
  170. package/build/components/Help/styles.js.map +1 -1
  171. package/build/components/Help/styles.mjs +21 -0
  172. package/build/components/Help/styles.mjs.map +1 -0
  173. package/build/components/Icons/DevsIcons/CommonJS2.js +9 -7
  174. package/build/components/Icons/DevsIcons/CommonJS2.js.map +1 -1
  175. package/build/components/Icons/DevsIcons/CommonJS2.mjs +16 -0
  176. package/build/components/Icons/DevsIcons/CommonJS2.mjs.map +1 -0
  177. package/build/components/Icons/DevsIcons/ES6Module2.js +9 -7
  178. package/build/components/Icons/DevsIcons/ES6Module2.js.map +1 -1
  179. package/build/components/Icons/DevsIcons/ES6Module2.mjs +16 -0
  180. package/build/components/Icons/DevsIcons/ES6Module2.mjs.map +1 -0
  181. package/build/components/Icons/DevsIcons/Git2.js +9 -7
  182. package/build/components/Icons/DevsIcons/Git2.js.map +1 -1
  183. package/build/components/Icons/DevsIcons/Git2.mjs +16 -0
  184. package/build/components/Icons/DevsIcons/Git2.mjs.map +1 -0
  185. package/build/components/Icons/DevsIcons/NodeJS2.js +9 -7
  186. package/build/components/Icons/DevsIcons/NodeJS2.js.map +1 -1
  187. package/build/components/Icons/DevsIcons/NodeJS2.mjs +16 -0
  188. package/build/components/Icons/DevsIcons/NodeJS2.mjs.map +1 -0
  189. package/build/components/Icons/DevsIcons/TypeScript2.js +9 -7
  190. package/build/components/Icons/DevsIcons/TypeScript2.js.map +1 -1
  191. package/build/components/Icons/DevsIcons/TypeScript2.mjs +16 -0
  192. package/build/components/Icons/DevsIcons/TypeScript2.mjs.map +1 -0
  193. package/build/components/Icons/DevsIcons/commonjs.js +2 -2
  194. package/build/components/Icons/DevsIcons/commonjs.js.map +1 -1
  195. package/build/components/Icons/DevsIcons/commonjs.mjs +6 -0
  196. package/build/components/Icons/DevsIcons/commonjs.mjs.map +1 -0
  197. package/build/components/Icons/DevsIcons/es6module.js +2 -2
  198. package/build/components/Icons/DevsIcons/es6module.js.map +1 -1
  199. package/build/components/Icons/DevsIcons/es6module.mjs +6 -0
  200. package/build/components/Icons/DevsIcons/es6module.mjs.map +1 -0
  201. package/build/components/Icons/DevsIcons/git.js +2 -2
  202. package/build/components/Icons/DevsIcons/git.js.map +1 -1
  203. package/build/components/Icons/DevsIcons/git.mjs +6 -0
  204. package/build/components/Icons/DevsIcons/git.mjs.map +1 -0
  205. package/build/components/Icons/DevsIcons/index.js +5 -5
  206. package/build/components/Icons/DevsIcons/index.mjs +5 -0
  207. package/build/components/Icons/DevsIcons/nodejs.js +2 -2
  208. package/build/components/Icons/DevsIcons/nodejs.js.map +1 -1
  209. package/build/components/Icons/DevsIcons/nodejs.mjs +6 -0
  210. package/build/components/Icons/DevsIcons/nodejs.mjs.map +1 -0
  211. package/build/components/Icons/DevsIcons/typescript.js +2 -2
  212. package/build/components/Icons/DevsIcons/typescript.js.map +1 -1
  213. package/build/components/Icons/DevsIcons/typescript.mjs +6 -0
  214. package/build/components/Icons/DevsIcons/typescript.mjs.map +1 -0
  215. package/build/components/Icons/Earth.js +19 -17
  216. package/build/components/Icons/Earth.js.map +1 -1
  217. package/build/components/Icons/Earth.mjs +41 -0
  218. package/build/components/Icons/Earth.mjs.map +1 -0
  219. package/build/components/Icons/FileBinary.js +12 -10
  220. package/build/components/Icons/FileBinary.js.map +1 -1
  221. package/build/components/Icons/FileBinary.mjs +17 -0
  222. package/build/components/Icons/FileBinary.mjs.map +1 -0
  223. package/build/components/Icons/Law.js +12 -10
  224. package/build/components/Icons/Law.js.map +1 -1
  225. package/build/components/Icons/Law.mjs +20 -0
  226. package/build/components/Icons/Law.mjs.map +1 -0
  227. package/build/components/Icons/License.js +12 -10
  228. package/build/components/Icons/License.js.map +1 -1
  229. package/build/components/Icons/License.mjs +17 -0
  230. package/build/components/Icons/License.mjs.map +1 -0
  231. package/build/components/Icons/Managers/Npm2.js +9 -7
  232. package/build/components/Icons/Managers/Npm2.js.map +1 -1
  233. package/build/components/Icons/Managers/Npm2.mjs +16 -0
  234. package/build/components/Icons/Managers/Npm2.mjs.map +1 -0
  235. package/build/components/Icons/Managers/Pnpm2.js +9 -7
  236. package/build/components/Icons/Managers/Pnpm2.js.map +1 -1
  237. package/build/components/Icons/Managers/Pnpm2.mjs +16 -0
  238. package/build/components/Icons/Managers/Pnpm2.mjs.map +1 -0
  239. package/build/components/Icons/Managers/Yarn2.js +9 -7
  240. package/build/components/Icons/Managers/Yarn2.js.map +1 -1
  241. package/build/components/Icons/Managers/Yarn2.mjs +16 -0
  242. package/build/components/Icons/Managers/Yarn2.mjs.map +1 -0
  243. package/build/components/Icons/Managers/index.js +3 -3
  244. package/build/components/Icons/Managers/index.mjs +3 -0
  245. package/build/components/Icons/Managers/npm.js +2 -2
  246. package/build/components/Icons/Managers/npm.js.map +1 -1
  247. package/build/components/Icons/Managers/npm.mjs +6 -0
  248. package/build/components/Icons/Managers/npm.mjs.map +1 -0
  249. package/build/components/Icons/Managers/pnpm.js +2 -2
  250. package/build/components/Icons/Managers/pnpm.js.map +1 -1
  251. package/build/components/Icons/Managers/pnpm.mjs +6 -0
  252. package/build/components/Icons/Managers/pnpm.mjs.map +1 -0
  253. package/build/components/Icons/Managers/yarn.js +2 -2
  254. package/build/components/Icons/Managers/yarn.js.map +1 -1
  255. package/build/components/Icons/Managers/yarn.mjs +6 -0
  256. package/build/components/Icons/Managers/yarn.mjs.map +1 -0
  257. package/build/components/Icons/SvgIcon.js +28 -19
  258. package/build/components/Icons/SvgIcon.js.map +1 -1
  259. package/build/components/Icons/SvgIcon.mjs +31 -0
  260. package/build/components/Icons/SvgIcon.mjs.map +1 -0
  261. package/build/components/Icons/Time.js +14 -12
  262. package/build/components/Icons/Time.js.map +1 -1
  263. package/build/components/Icons/Time.mjs +24 -0
  264. package/build/components/Icons/Time.mjs.map +1 -0
  265. package/build/components/Icons/Version.js +12 -10
  266. package/build/components/Icons/Version.js.map +1 -1
  267. package/build/components/Icons/Version.mjs +22 -0
  268. package/build/components/Icons/Version.mjs.map +1 -0
  269. package/build/components/Icons/index.js +38 -33
  270. package/build/components/Icons/index.mjs +38 -0
  271. package/build/components/Icons/index.mjs.map +1 -0
  272. package/build/components/Install/Install.js +44 -36
  273. package/build/components/Install/Install.js.map +1 -1
  274. package/build/components/Install/Install.mjs +66 -0
  275. package/build/components/Install/Install.mjs.map +1 -0
  276. package/build/components/Install/InstallListItem.js +66 -51
  277. package/build/components/Install/InstallListItem.js.map +1 -1
  278. package/build/components/Install/InstallListItem.mjs +109 -0
  279. package/build/components/Install/InstallListItem.mjs.map +1 -0
  280. package/build/components/Install/index.js +1 -1
  281. package/build/components/Install/index.mjs +1 -0
  282. package/build/components/Keywords/KeywordListItems.js +17 -12
  283. package/build/components/Keywords/KeywordListItems.js.map +1 -1
  284. package/build/components/Keywords/KeywordListItems.mjs +28 -0
  285. package/build/components/Keywords/KeywordListItems.mjs.map +1 -0
  286. package/build/components/Keywords/Keywords.js +22 -16
  287. package/build/components/Keywords/Keywords.js.map +1 -1
  288. package/build/components/Keywords/Keywords.mjs +29 -0
  289. package/build/components/Keywords/Keywords.mjs.map +1 -0
  290. package/build/components/Keywords/index.js +1 -1
  291. package/build/components/Keywords/index.mjs +1 -0
  292. package/build/components/Label/Label.js +20 -14
  293. package/build/components/Label/Label.js.map +1 -1
  294. package/build/components/Label/Label.mjs +23 -0
  295. package/build/components/Label/Label.mjs.map +1 -0
  296. package/build/components/Label/index.js +1 -1
  297. package/build/components/Label/index.mjs +1 -0
  298. package/build/components/Link/Link.js +23 -18
  299. package/build/components/Link/Link.js.map +1 -1
  300. package/build/components/Link/Link.mjs +37 -0
  301. package/build/components/Link/Link.mjs.map +1 -0
  302. package/build/components/Link/index.js +1 -1
  303. package/build/components/Link/index.mjs +1 -0
  304. package/build/components/LinkExternal/LinkExternal.js +15 -12
  305. package/build/components/LinkExternal/LinkExternal.js.map +1 -1
  306. package/build/components/LinkExternal/LinkExternal.mjs +21 -0
  307. package/build/components/LinkExternal/LinkExternal.mjs.map +1 -0
  308. package/build/components/LinkExternal/index.js +1 -1
  309. package/build/components/LinkExternal/index.mjs +1 -0
  310. package/build/components/Loading/Loading.js +12 -10
  311. package/build/components/Loading/Loading.js.map +1 -1
  312. package/build/components/Loading/Loading.mjs +16 -0
  313. package/build/components/Loading/Loading.mjs.map +1 -0
  314. package/build/components/Loading/Spinner/Spinner.js +20 -14
  315. package/build/components/Loading/Spinner/Spinner.js.map +1 -1
  316. package/build/components/Loading/Spinner/Spinner.mjs +32 -0
  317. package/build/components/Loading/Spinner/Spinner.mjs.map +1 -0
  318. package/build/components/Loading/Spinner/index.js +1 -1
  319. package/build/components/Loading/Spinner/index.mjs +1 -0
  320. package/build/components/Loading/index.js +1 -1
  321. package/build/components/Loading/index.mjs +1 -0
  322. package/build/components/Loading/styles.js +12 -8
  323. package/build/components/Loading/styles.js.map +1 -1
  324. package/build/components/Loading/styles.mjs +30 -0
  325. package/build/components/Loading/styles.mjs.map +1 -0
  326. package/build/components/LoginDialog/LoginDialog.js +25 -20
  327. package/build/components/LoginDialog/LoginDialog.js.map +1 -1
  328. package/build/components/LoginDialog/LoginDialog.mjs +31 -0
  329. package/build/components/LoginDialog/LoginDialog.mjs.map +1 -0
  330. package/build/components/LoginDialog/LoginDialogCloseButton.js +25 -18
  331. package/build/components/LoginDialog/LoginDialogCloseButton.js.map +1 -1
  332. package/build/components/LoginDialog/LoginDialogCloseButton.mjs +30 -0
  333. package/build/components/LoginDialog/LoginDialogCloseButton.mjs.map +1 -0
  334. package/build/components/LoginDialog/LoginDialogForm.js +15 -13
  335. package/build/components/LoginDialog/LoginDialogForm.js.map +1 -1
  336. package/build/components/LoginDialog/LoginDialogForm.mjs +19 -0
  337. package/build/components/LoginDialog/LoginDialogForm.mjs.map +1 -0
  338. package/build/components/LoginDialog/LoginDialogFormError.js +32 -22
  339. package/build/components/LoginDialog/LoginDialogFormError.js.map +1 -1
  340. package/build/components/LoginDialog/LoginDialogFormError.mjs +36 -0
  341. package/build/components/LoginDialog/LoginDialogFormError.mjs.map +1 -0
  342. package/build/components/LoginDialog/index.js +1 -1
  343. package/build/components/LoginDialog/index.mjs +1 -0
  344. package/build/components/LoginForm/Login.js +45 -36
  345. package/build/components/LoginForm/Login.js.map +1 -1
  346. package/build/components/LoginForm/Login.mjs +69 -0
  347. package/build/components/LoginForm/Login.mjs.map +1 -0
  348. package/build/components/LoginForm/PasswordField.js +24 -19
  349. package/build/components/LoginForm/PasswordField.js.map +1 -1
  350. package/build/components/LoginForm/PasswordField.mjs +34 -0
  351. package/build/components/LoginForm/PasswordField.mjs.map +1 -0
  352. package/build/components/LoginForm/UsernameField.js +24 -19
  353. package/build/components/LoginForm/UsernameField.js.map +1 -1
  354. package/build/components/LoginForm/UsernameField.mjs +32 -0
  355. package/build/components/LoginForm/UsernameField.mjs.map +1 -0
  356. package/build/components/LoginForm/styles.js +42 -32
  357. package/build/components/LoginForm/styles.js.map +1 -1
  358. package/build/components/LoginForm/styles.mjs +52 -0
  359. package/build/components/LoginForm/styles.mjs.map +1 -0
  360. package/build/components/LoginForm/useLoginForm.js +23 -18
  361. package/build/components/LoginForm/useLoginForm.js.map +1 -1
  362. package/build/components/LoginForm/useLoginForm.mjs +38 -0
  363. package/build/components/LoginForm/useLoginForm.mjs.map +1 -0
  364. package/build/components/Logo/Logo.js +44 -36
  365. package/build/components/Logo/Logo.js.map +1 -1
  366. package/build/components/Logo/Logo.mjs +74 -0
  367. package/build/components/Logo/Logo.mjs.map +1 -0
  368. package/build/components/Logo/img/logo-black-and-white.js +2 -2
  369. package/build/components/Logo/img/logo-black-and-white.js.map +1 -1
  370. package/build/components/Logo/img/logo-black-and-white.mjs +6 -0
  371. package/build/components/Logo/img/logo-black-and-white.mjs.map +1 -0
  372. package/build/components/Logo/img/logo.js +2 -2
  373. package/build/components/Logo/img/logo.js.map +1 -1
  374. package/build/components/Logo/img/logo.mjs +6 -0
  375. package/build/components/Logo/img/logo.mjs.map +1 -0
  376. package/build/components/Logo/index.js +1 -1
  377. package/build/components/Logo/index.mjs +1 -0
  378. package/build/components/MenuItem/MenuItem.js +18 -13
  379. package/build/components/MenuItem/MenuItem.js.map +1 -1
  380. package/build/components/MenuItem/MenuItem.mjs +30 -0
  381. package/build/components/MenuItem/MenuItem.mjs.map +1 -0
  382. package/build/components/MenuItem/index.js +1 -1
  383. package/build/components/MenuItem/index.mjs +1 -0
  384. package/build/components/NoItems/NoItems.js +13 -9
  385. package/build/components/NoItems/NoItems.js.map +1 -1
  386. package/build/components/NoItems/NoItems.mjs +16 -0
  387. package/build/components/NoItems/NoItems.mjs.map +1 -0
  388. package/build/components/NoItems/index.js +1 -1
  389. package/build/components/NoItems/index.mjs +1 -0
  390. package/build/components/NotFound/NotFound.js +37 -27
  391. package/build/components/NotFound/NotFound.js.map +1 -1
  392. package/build/components/NotFound/NotFound.mjs +70 -0
  393. package/build/components/NotFound/NotFound.mjs.map +1 -0
  394. package/build/components/NotFound/index.js +1 -1
  395. package/build/components/NotFound/index.mjs +1 -0
  396. package/build/components/Package/Package.js +146 -112
  397. package/build/components/Package/Package.js.map +1 -1
  398. package/build/components/Package/Package.mjs +188 -0
  399. package/build/components/Package/Package.mjs.map +1 -0
  400. package/build/components/Package/index.js +1 -1
  401. package/build/components/Package/index.mjs +1 -0
  402. package/build/components/Package/styles.js +70 -41
  403. package/build/components/Package/styles.js.map +1 -1
  404. package/build/components/Package/styles.mjs +142 -0
  405. package/build/components/Package/styles.mjs.map +1 -0
  406. package/build/components/PackageList/PackageList.js +64 -55
  407. package/build/components/PackageList/PackageList.js.map +1 -1
  408. package/build/components/PackageList/PackageList.mjs +71 -0
  409. package/build/components/PackageList/PackageList.mjs.map +1 -0
  410. package/build/components/PackageList/index.js +1 -1
  411. package/build/components/PackageList/index.mjs +1 -0
  412. package/build/components/Person/Person.js +28 -23
  413. package/build/components/Person/Person.js.map +1 -1
  414. package/build/components/Person/Person.mjs +39 -0
  415. package/build/components/Person/Person.mjs.map +1 -0
  416. package/build/components/Person/PersonTooltip.js +20 -17
  417. package/build/components/Person/PersonTooltip.js.map +1 -1
  418. package/build/components/Person/PersonTooltip.mjs +26 -0
  419. package/build/components/Person/PersonTooltip.mjs.map +1 -0
  420. package/build/components/Person/index.js +1 -1
  421. package/build/components/Person/index.mjs +1 -0
  422. package/build/components/Person/utils.js +11 -8
  423. package/build/components/Person/utils.js.map +1 -1
  424. package/build/components/Person/utils.mjs +14 -0
  425. package/build/components/Person/utils.mjs.map +1 -0
  426. package/build/components/RawViewer/RawViewer.js +40 -30
  427. package/build/components/RawViewer/RawViewer.js.map +1 -1
  428. package/build/components/RawViewer/RawViewer.mjs +57 -0
  429. package/build/components/RawViewer/RawViewer.mjs.map +1 -0
  430. package/build/components/RawViewer/index.js +1 -1
  431. package/build/components/RawViewer/index.mjs +1 -0
  432. package/build/components/Readme/Readme.js +30 -23
  433. package/build/components/Readme/Readme.js.map +1 -1
  434. package/build/components/Readme/Readme.mjs +45 -0
  435. package/build/components/Readme/Readme.mjs.map +1 -0
  436. package/build/components/Readme/index.js +1 -1
  437. package/build/components/Readme/index.mjs +1 -0
  438. package/build/components/Readme/utils.js +21 -18
  439. package/build/components/Readme/utils.js.map +1 -1
  440. package/build/components/Readme/utils.mjs +26 -0
  441. package/build/components/Readme/utils.mjs.map +1 -0
  442. package/build/components/RegistryInfoDialog/RegistryInfoDialog.js +23 -18
  443. package/build/components/RegistryInfoDialog/RegistryInfoDialog.js.map +1 -1
  444. package/build/components/RegistryInfoDialog/RegistryInfoDialog.mjs +32 -0
  445. package/build/components/RegistryInfoDialog/RegistryInfoDialog.mjs.map +1 -0
  446. package/build/components/RegistryInfoDialog/index.js +1 -1
  447. package/build/components/RegistryInfoDialog/index.mjs +1 -0
  448. package/build/components/RegistryInfoDialog/styles.js +19 -13
  449. package/build/components/RegistryInfoDialog/styles.js.map +1 -1
  450. package/build/components/RegistryInfoDialog/styles.mjs +25 -0
  451. package/build/components/RegistryInfoDialog/styles.mjs.map +1 -0
  452. package/build/components/Repository/Repository.js +63 -46
  453. package/build/components/Repository/Repository.js.map +1 -1
  454. package/build/components/Repository/Repository.mjs +96 -0
  455. package/build/components/Repository/Repository.mjs.map +1 -0
  456. package/build/components/Repository/index.js +1 -1
  457. package/build/components/Repository/index.mjs +1 -0
  458. package/build/components/Search/AutoComplete/AutoComplete.js +42 -27
  459. package/build/components/Search/AutoComplete/AutoComplete.js.map +1 -1
  460. package/build/components/Search/AutoComplete/AutoComplete.mjs +47 -0
  461. package/build/components/Search/AutoComplete/AutoComplete.mjs.map +1 -0
  462. package/build/components/Search/AutoComplete/index.js +1 -1
  463. package/build/components/Search/AutoComplete/index.mjs +1 -0
  464. package/build/components/Search/AutoComplete/styles.js +7 -5
  465. package/build/components/Search/AutoComplete/styles.js.map +1 -1
  466. package/build/components/Search/AutoComplete/styles.mjs +20 -0
  467. package/build/components/Search/AutoComplete/styles.mjs.map +1 -0
  468. package/build/components/Search/Search.js +121 -78
  469. package/build/components/Search/Search.js.map +1 -1
  470. package/build/components/Search/Search.mjs +133 -0
  471. package/build/components/Search/Search.mjs.map +1 -0
  472. package/build/components/Search/SearchItem.js +62 -47
  473. package/build/components/Search/SearchItem.js.map +1 -1
  474. package/build/components/Search/SearchItem.mjs +115 -0
  475. package/build/components/Search/SearchItem.mjs.map +1 -0
  476. package/build/components/Search/index.js +1 -1
  477. package/build/components/Search/index.mjs +1 -0
  478. package/build/components/Search/styles.js +17 -12
  479. package/build/components/Search/styles.js.map +1 -1
  480. package/build/components/Search/styles.mjs +32 -0
  481. package/build/components/Search/styles.mjs.map +1 -0
  482. package/build/components/Search/utils.js +13 -10
  483. package/build/components/Search/utils.js.map +1 -1
  484. package/build/components/Search/utils.mjs +19 -0
  485. package/build/components/Search/utils.mjs.map +1 -0
  486. package/build/components/SettingsMenu/SettingsMenu.js +84 -61
  487. package/build/components/SettingsMenu/SettingsMenu.js.map +1 -1
  488. package/build/components/SettingsMenu/SettingsMenu.mjs +111 -0
  489. package/build/components/SettingsMenu/SettingsMenu.mjs.map +1 -0
  490. package/build/components/SettingsMenu/index.js +1 -1
  491. package/build/components/SettingsMenu/index.mjs +1 -0
  492. package/build/components/SideBarTitle/SideBarTitle.js +47 -34
  493. package/build/components/SideBarTitle/SideBarTitle.js.map +1 -1
  494. package/build/components/SideBarTitle/SideBarTitle.mjs +79 -0
  495. package/build/components/SideBarTitle/SideBarTitle.mjs.map +1 -0
  496. package/build/components/SideBarTitle/index.js +1 -1
  497. package/build/components/SideBarTitle/index.mjs +1 -0
  498. package/build/components/SideBarTitle/utils.js +10 -7
  499. package/build/components/SideBarTitle/utils.js.map +1 -1
  500. package/build/components/SideBarTitle/utils.mjs +13 -0
  501. package/build/components/SideBarTitle/utils.mjs.map +1 -0
  502. package/build/components/UpLinks/UpLinks.js +46 -38
  503. package/build/components/UpLinks/UpLinks.js.map +1 -1
  504. package/build/components/UpLinks/UpLinks.mjs +60 -0
  505. package/build/components/UpLinks/UpLinks.mjs.map +1 -0
  506. package/build/components/UpLinks/UplinkLink.js +15 -13
  507. package/build/components/UpLinks/UplinkLink.js.map +1 -1
  508. package/build/components/UpLinks/UplinkLink.mjs +19 -0
  509. package/build/components/UpLinks/UplinkLink.mjs.map +1 -0
  510. package/build/components/UpLinks/index.js +2 -2
  511. package/build/components/UpLinks/index.mjs +2 -0
  512. package/build/components/UpLinks/styles.js +20 -12
  513. package/build/components/UpLinks/styles.js.map +1 -1
  514. package/build/components/UpLinks/styles.mjs +31 -0
  515. package/build/components/UpLinks/styles.mjs.map +1 -0
  516. package/build/components/Versions/HistoryList.js +51 -41
  517. package/build/components/Versions/HistoryList.js.map +1 -1
  518. package/build/components/Versions/HistoryList.mjs +67 -0
  519. package/build/components/Versions/HistoryList.mjs.map +1 -0
  520. package/build/components/Versions/TagList.js +26 -20
  521. package/build/components/Versions/TagList.js.map +1 -1
  522. package/build/components/Versions/TagList.mjs +33 -0
  523. package/build/components/Versions/TagList.mjs.map +1 -0
  524. package/build/components/Versions/Versions.js +73 -48
  525. package/build/components/Versions/Versions.js.map +1 -1
  526. package/build/components/Versions/Versions.mjs +92 -0
  527. package/build/components/Versions/Versions.mjs.map +1 -0
  528. package/build/components/Versions/index.js +2 -2
  529. package/build/components/Versions/index.mjs +2 -0
  530. package/build/components/Versions/styles.js +15 -10
  531. package/build/components/Versions/styles.js.map +1 -1
  532. package/build/components/Versions/styles.mjs +26 -0
  533. package/build/components/Versions/styles.mjs.map +1 -0
  534. package/build/configuration.js +6 -6
  535. package/build/configuration.js.map +1 -1
  536. package/build/configuration.mjs +23 -0
  537. package/build/configuration.mjs.map +1 -0
  538. package/build/hooks/index.js +2 -2
  539. package/build/hooks/index.mjs +2 -0
  540. package/build/hooks/useLocalStorage.js +28 -14
  541. package/build/hooks/useLocalStorage.js.map +1 -1
  542. package/build/hooks/useLocalStorage.mjs +37 -0
  543. package/build/hooks/useLocalStorage.mjs.map +1 -0
  544. package/build/hooks/useOnClickOutside.js +20 -9
  545. package/build/hooks/useOnClickOutside.js.map +1 -1
  546. package/build/hooks/useOnClickOutside.mjs +26 -0
  547. package/build/hooks/useOnClickOutside.mjs.map +1 -0
  548. package/build/index.js +225 -118
  549. package/build/index.mjs +118 -0
  550. package/build/layouts/Security/Dialog.js +14 -8
  551. package/build/layouts/Security/Dialog.js.map +1 -1
  552. package/build/layouts/Security/Dialog.mjs +23 -0
  553. package/build/layouts/Security/Dialog.mjs.map +1 -0
  554. package/build/layouts/Version/Version.js +31 -26
  555. package/build/layouts/Version/Version.js.map +1 -1
  556. package/build/layouts/Version/Version.mjs +32 -0
  557. package/build/layouts/Version/Version.mjs.map +1 -0
  558. package/build/layouts/Version/index.js +1 -1
  559. package/build/layouts/Version/index.mjs +1 -0
  560. package/build/pages/Front/Home.js +4 -4
  561. package/build/pages/Front/Home.js.map +1 -1
  562. package/build/pages/Front/Home.mjs +8 -0
  563. package/build/pages/Front/Home.mjs.map +1 -0
  564. package/build/pages/Front/index.js +2 -2
  565. package/build/pages/Front/index.mjs +2 -0
  566. package/build/pages/Security/AddUser.js +4 -4
  567. package/build/pages/Security/AddUser.js.map +1 -1
  568. package/build/pages/Security/AddUser.mjs +8 -0
  569. package/build/pages/Security/AddUser.mjs.map +1 -0
  570. package/build/pages/Security/ChangePassword.js +4 -4
  571. package/build/pages/Security/ChangePassword.js.map +1 -1
  572. package/build/pages/Security/ChangePassword.mjs +8 -0
  573. package/build/pages/Security/ChangePassword.mjs.map +1 -0
  574. package/build/pages/Security/Login.js +4 -4
  575. package/build/pages/Security/Login.js.map +1 -1
  576. package/build/pages/Security/Login.mjs +8 -0
  577. package/build/pages/Security/Login.mjs.map +1 -0
  578. package/build/pages/Security/Success.js +4 -4
  579. package/build/pages/Security/Success.js.map +1 -1
  580. package/build/pages/Security/Success.mjs +8 -0
  581. package/build/pages/Security/Success.mjs.map +1 -0
  582. package/build/pages/Security/index.js +4 -4
  583. package/build/pages/Security/index.mjs +4 -0
  584. package/build/pages/Version/Version.js +19 -13
  585. package/build/pages/Version/Version.js.map +1 -1
  586. package/build/pages/Version/Version.mjs +22 -0
  587. package/build/pages/Version/Version.mjs.map +1 -0
  588. package/build/pages/Version/index.js +2 -2
  589. package/build/pages/Version/index.mjs +2 -0
  590. package/build/providers/AppConfigurationProvider/AppConfigurationProvider.js +44 -34
  591. package/build/providers/AppConfigurationProvider/AppConfigurationProvider.js.map +1 -1
  592. package/build/providers/AppConfigurationProvider/AppConfigurationProvider.mjs +62 -0
  593. package/build/providers/AppConfigurationProvider/AppConfigurationProvider.mjs.map +1 -0
  594. package/build/providers/AppConfigurationProvider/index.js +1 -1
  595. package/build/providers/AppConfigurationProvider/index.mjs +1 -0
  596. package/build/providers/AuthProvider/AuthProvider.js +41 -25
  597. package/build/providers/AuthProvider/AuthProvider.js.map +1 -1
  598. package/build/providers/AuthProvider/AuthProvider.mjs +51 -0
  599. package/build/providers/AuthProvider/AuthProvider.mjs.map +1 -0
  600. package/build/providers/AuthProvider/index.js +1 -1
  601. package/build/providers/AuthProvider/index.mjs +1 -0
  602. package/build/providers/AuthProvider/utils.js +13 -12
  603. package/build/providers/AuthProvider/utils.js.map +1 -1
  604. package/build/providers/AuthProvider/utils.mjs +22 -0
  605. package/build/providers/AuthProvider/utils.mjs.map +1 -0
  606. package/build/providers/DownloadProvider/DownloadProvider.js +27 -21
  607. package/build/providers/DownloadProvider/DownloadProvider.js.map +1 -1
  608. package/build/providers/DownloadProvider/DownloadProvider.mjs +34 -0
  609. package/build/providers/DownloadProvider/DownloadProvider.mjs.map +1 -0
  610. package/build/providers/DownloadProvider/index.js +1 -1
  611. package/build/providers/DownloadProvider/index.mjs +1 -0
  612. package/build/providers/ManifestsProvider/ManifestsProvider.js +21 -15
  613. package/build/providers/ManifestsProvider/ManifestsProvider.js.map +1 -1
  614. package/build/providers/ManifestsProvider/ManifestsProvider.mjs +25 -0
  615. package/build/providers/ManifestsProvider/ManifestsProvider.mjs.map +1 -0
  616. package/build/providers/ManifestsProvider/index.js +1 -1
  617. package/build/providers/ManifestsProvider/index.mjs +1 -0
  618. package/build/providers/PersistenceSettingProvider/PersistenceSettingProvider.js +28 -19
  619. package/build/providers/PersistenceSettingProvider/PersistenceSettingProvider.js.map +1 -1
  620. package/build/providers/PersistenceSettingProvider/PersistenceSettingProvider.mjs +30 -0
  621. package/build/providers/PersistenceSettingProvider/PersistenceSettingProvider.mjs.map +1 -0
  622. package/build/providers/PersistenceSettingProvider/index.js +1 -1
  623. package/build/providers/PersistenceSettingProvider/index.mjs +1 -0
  624. package/build/providers/SearchProvider/SearchProvider.js +47 -36
  625. package/build/providers/SearchProvider/SearchProvider.js.map +1 -1
  626. package/build/providers/SearchProvider/SearchProvider.mjs +53 -0
  627. package/build/providers/SearchProvider/SearchProvider.mjs.map +1 -0
  628. package/build/providers/SearchProvider/index.js +1 -1
  629. package/build/providers/SearchProvider/index.mjs +1 -0
  630. package/build/providers/TranslatorProvider/TranslatorProvider.js +37 -24
  631. package/build/providers/TranslatorProvider/TranslatorProvider.js.map +1 -1
  632. package/build/providers/TranslatorProvider/TranslatorProvider.mjs +45 -0
  633. package/build/providers/TranslatorProvider/TranslatorProvider.mjs.map +1 -0
  634. package/build/providers/TranslatorProvider/index.js +1 -1
  635. package/build/providers/TranslatorProvider/index.mjs +1 -0
  636. package/build/providers/VersionProvider/VersionProvider.js +49 -36
  637. package/build/providers/VersionProvider/VersionProvider.js.map +1 -1
  638. package/build/providers/VersionProvider/VersionProvider.mjs +55 -0
  639. package/build/providers/VersionProvider/VersionProvider.mjs.map +1 -0
  640. package/build/providers/VersionProvider/index.js +1 -1
  641. package/build/providers/VersionProvider/index.mjs +1 -0
  642. package/build/providers/index.js +16 -16
  643. package/build/providers/index.mjs +16 -0
  644. package/build/sections/Detail/ContainerContent.js +28 -18
  645. package/build/sections/Detail/ContainerContent.js.map +1 -1
  646. package/build/sections/Detail/ContainerContent.mjs +34 -0
  647. package/build/sections/Detail/ContainerContent.mjs.map +1 -0
  648. package/build/sections/Detail/Detail.js +38 -26
  649. package/build/sections/Detail/Detail.js.map +1 -1
  650. package/build/sections/Detail/Detail.mjs +50 -0
  651. package/build/sections/Detail/Detail.mjs.map +1 -0
  652. package/build/sections/Detail/ReadmeSection.js +11 -6
  653. package/build/sections/Detail/ReadmeSection.js.map +1 -1
  654. package/build/sections/Detail/ReadmeSection.mjs +13 -0
  655. package/build/sections/Detail/ReadmeSection.mjs.map +1 -0
  656. package/build/sections/Detail/Tabs.js +36 -27
  657. package/build/sections/Detail/Tabs.js.map +1 -1
  658. package/build/sections/Detail/Tabs.mjs +59 -0
  659. package/build/sections/Detail/Tabs.mjs.map +1 -0
  660. package/build/sections/Detail/index.js +1 -1
  661. package/build/sections/Detail/index.mjs +1 -0
  662. package/build/sections/Footer/Footer.js +56 -46
  663. package/build/sections/Footer/Footer.js.map +1 -1
  664. package/build/sections/Footer/Footer.mjs +105 -0
  665. package/build/sections/Footer/Footer.mjs.map +1 -0
  666. package/build/sections/Footer/index.js +1 -1
  667. package/build/sections/Footer/index.mjs +1 -0
  668. package/build/sections/Footer/styles.js +31 -21
  669. package/build/sections/Footer/styles.js.map +1 -1
  670. package/build/sections/Footer/styles.mjs +65 -0
  671. package/build/sections/Footer/styles.mjs.map +1 -0
  672. package/build/sections/Header/Header.js +76 -63
  673. package/build/sections/Header/Header.js.map +1 -1
  674. package/build/sections/Header/Header.mjs +101 -0
  675. package/build/sections/Header/Header.mjs.map +1 -0
  676. package/build/sections/Header/HeaderGreetings.js +13 -11
  677. package/build/sections/Header/HeaderGreetings.js.map +1 -1
  678. package/build/sections/Header/HeaderGreetings.mjs +19 -0
  679. package/build/sections/Header/HeaderGreetings.mjs.map +1 -0
  680. package/build/sections/Header/HeaderLeft.js +17 -14
  681. package/build/sections/Header/HeaderLeft.js.map +1 -1
  682. package/build/sections/Header/HeaderLeft.mjs +33 -0
  683. package/build/sections/Header/HeaderLeft.mjs.map +1 -0
  684. package/build/sections/Header/HeaderMenu.js +27 -22
  685. package/build/sections/Header/HeaderMenu.js.map +1 -1
  686. package/build/sections/Header/HeaderMenu.mjs +45 -0
  687. package/build/sections/Header/HeaderMenu.mjs.map +1 -0
  688. package/build/sections/Header/HeaderRight.js +68 -47
  689. package/build/sections/Header/HeaderRight.js.map +1 -1
  690. package/build/sections/Header/HeaderRight.mjs +95 -0
  691. package/build/sections/Header/HeaderRight.mjs.map +1 -0
  692. package/build/sections/Header/HeaderSettingsDialog.js +70 -59
  693. package/build/sections/Header/HeaderSettingsDialog.js.map +1 -1
  694. package/build/sections/Header/HeaderSettingsDialog.mjs +99 -0
  695. package/build/sections/Header/HeaderSettingsDialog.mjs.map +1 -0
  696. package/build/sections/Header/HeaderToolTip.js +9 -7
  697. package/build/sections/Header/HeaderToolTip.js.map +1 -1
  698. package/build/sections/Header/HeaderToolTip.mjs +12 -0
  699. package/build/sections/Header/HeaderToolTip.mjs.map +1 -0
  700. package/build/sections/Header/HeaderToolTipIcon.js +38 -31
  701. package/build/sections/Header/HeaderToolTipIcon.js.map +1 -1
  702. package/build/sections/Header/HeaderToolTipIcon.mjs +58 -0
  703. package/build/sections/Header/HeaderToolTipIcon.mjs.map +1 -0
  704. package/build/sections/Header/LanguageSwitch.js +75 -51
  705. package/build/sections/Header/LanguageSwitch.js.map +1 -1
  706. package/build/sections/Header/LanguageSwitch.mjs +99 -0
  707. package/build/sections/Header/LanguageSwitch.mjs.map +1 -0
  708. package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.js +132 -101
  709. package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.js.map +1 -1
  710. package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.mjs +199 -0
  711. package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.mjs.map +1 -0
  712. package/build/sections/Header/RegistryInfoContent/index.js +1 -1
  713. package/build/sections/Header/RegistryInfoContent/index.mjs +1 -0
  714. package/build/sections/Header/RegistryInfoContent/styles.js +10 -6
  715. package/build/sections/Header/RegistryInfoContent/styles.js.map +1 -1
  716. package/build/sections/Header/RegistryInfoContent/styles.mjs +20 -0
  717. package/build/sections/Header/RegistryInfoContent/styles.mjs.map +1 -0
  718. package/build/sections/Header/index.js +1 -1
  719. package/build/sections/Header/index.mjs +1 -0
  720. package/build/sections/Header/styles.js +60 -37
  721. package/build/sections/Header/styles.js.map +1 -1
  722. package/build/sections/Header/styles.mjs +126 -0
  723. package/build/sections/Header/styles.mjs.map +1 -0
  724. package/build/sections/Home/Home.js +14 -11
  725. package/build/sections/Home/Home.js.map +1 -1
  726. package/build/sections/Home/Home.mjs +20 -0
  727. package/build/sections/Home/Home.mjs.map +1 -0
  728. package/build/sections/Home/index.js +1 -1
  729. package/build/sections/Home/index.mjs +1 -0
  730. package/build/sections/Security/AddUser.js +84 -68
  731. package/build/sections/Security/AddUser.js.map +1 -1
  732. package/build/sections/Security/AddUser.mjs +132 -0
  733. package/build/sections/Security/AddUser.mjs.map +1 -0
  734. package/build/sections/Security/ChangePassword.js +83 -71
  735. package/build/sections/Security/ChangePassword.js.map +1 -1
  736. package/build/sections/Security/ChangePassword.mjs +123 -0
  737. package/build/sections/Security/ChangePassword.mjs.map +1 -0
  738. package/build/sections/Security/Login.js +70 -54
  739. package/build/sections/Security/Login.js.map +1 -1
  740. package/build/sections/Security/Login.mjs +94 -0
  741. package/build/sections/Security/Login.mjs.map +1 -0
  742. package/build/sections/Security/Success.js +39 -26
  743. package/build/sections/Security/Success.js.map +1 -1
  744. package/build/sections/Security/Success.mjs +51 -0
  745. package/build/sections/Security/Success.mjs.map +1 -0
  746. package/build/sections/Security/index.js +4 -4
  747. package/build/sections/Security/index.mjs +4 -0
  748. package/build/sections/Security/styles.js +19 -14
  749. package/build/sections/Security/styles.js.map +1 -1
  750. package/build/sections/Security/styles.mjs +29 -0
  751. package/build/sections/Security/styles.mjs.map +1 -0
  752. package/build/sections/Security/utils.js +14 -11
  753. package/build/sections/Security/utils.js.map +1 -1
  754. package/build/sections/Security/utils.mjs +19 -0
  755. package/build/sections/Security/utils.mjs.map +1 -0
  756. package/build/sections/SideBar/Sidebar.js +73 -64
  757. package/build/sections/SideBar/Sidebar.js.map +1 -1
  758. package/build/sections/SideBar/Sidebar.mjs +93 -0
  759. package/build/sections/SideBar/Sidebar.mjs.map +1 -0
  760. package/build/sections/SideBar/index.js +1 -1
  761. package/build/sections/SideBar/index.mjs +1 -0
  762. package/build/sections/index.js +4 -4
  763. package/build/sections/index.mjs +4 -0
  764. package/build/store/api.js +57 -41
  765. package/build/store/api.js.map +1 -1
  766. package/build/store/api.mjs +76 -0
  767. package/build/store/api.mjs.map +1 -0
  768. package/build/store/index.js +1 -1
  769. package/build/store/index.mjs +1 -0
  770. package/build/store/routes.js +13 -3
  771. package/build/store/routes.js.map +1 -1
  772. package/build/store/routes.mjs +18 -0
  773. package/build/store/routes.mjs.map +1 -0
  774. package/build/store/storage.js +22 -13
  775. package/build/store/storage.js.map +1 -1
  776. package/build/store/storage.mjs +29 -0
  777. package/build/store/storage.mjs.map +1 -0
  778. package/build/store/utils.js +5 -4
  779. package/build/store/utils.js.map +1 -1
  780. package/build/store/utils.mjs +9 -0
  781. package/build/store/utils.mjs.map +1 -0
  782. package/build/ui-components.css +1198 -1
  783. package/build/utils/cli-utils.js +19 -16
  784. package/build/utils/cli-utils.js.map +1 -1
  785. package/build/utils/cli-utils.mjs +26 -0
  786. package/build/utils/cli-utils.mjs.map +1 -0
  787. package/build/utils/index.js +6 -6
  788. package/build/utils/index.mjs +6 -0
  789. package/build/utils/loadable.js +18 -7
  790. package/build/utils/loadable.js.map +1 -1
  791. package/build/utils/loadable.mjs +23 -0
  792. package/build/utils/loadable.mjs.map +1 -0
  793. package/build/utils/routes.js +26 -5
  794. package/build/utils/routes.js.map +1 -1
  795. package/build/utils/routes.mjs +30 -0
  796. package/build/utils/routes.mjs.map +1 -0
  797. package/build/utils/schemas.js +22 -14
  798. package/build/utils/schemas.js.map +1 -1
  799. package/build/utils/schemas.mjs +22 -0
  800. package/build/utils/schemas.mjs.map +1 -0
  801. package/build/utils/token.js +19 -15
  802. package/build/utils/token.js.map +1 -1
  803. package/build/utils/token.mjs +23 -0
  804. package/build/utils/token.mjs.map +1 -0
  805. package/build/utils/url.js +50 -30
  806. package/build/utils/url.js.map +1 -1
  807. package/build/utils/url.mjs +61 -0
  808. package/build/utils/url.mjs.map +1 -0
  809. package/build/utils/utils.js +93 -49
  810. package/build/utils/utils.js.map +1 -1
  811. package/build/utils/utils.mjs +93 -0
  812. package/build/utils/utils.mjs.map +1 -0
  813. package/package.json +15 -7
@@ -1,24 +1,31 @@
1
- import { APIRoute as e, Route as t } from "../../utils/routes.js";
2
- import "../../utils/index.js";
3
- import { getConfiguration as n } from "../../configuration.js";
4
- import { stripTrailingSlash as r } from "../../store/utils.js";
5
- import { useDataMutation as i } from "../../api/use-data-mutation.js";
6
- import { normalizeAuthError as a } from "../../providers/AuthProvider/utils.js";
7
- import o from "../../components/LoginDialog/LoginDialogFormError.js";
8
- import { changePasswordSchema as s } from "../../utils/schemas.js";
9
- import c from "../../layouts/Security/Dialog.js";
10
- import { SecurityContainer as l, SecurityForm as u, SecurityTextField as d } from "./styles.js";
11
- import { MessageType as f } from "./Success.js";
12
- import { jsx as p, jsxs as m } from "react/jsx-runtime";
13
- import { useCallback as h, useEffect as g } from "react";
14
- import { useTranslation as _ } from "react-i18next";
15
- import { useNavigate as v } from "react-router";
16
- import { Button as y, Typography as b } from "@mui/material";
17
- import { yupResolver as x } from "@hookform/resolvers/yup";
18
- import { useForm as S } from "react-hook-form";
1
+ const require_runtime = require("../../_virtual/_rolldown/runtime.js");
2
+ const require_routes = require("../../utils/routes.js");
3
+ require("../../utils/index.js");
4
+ const require_configuration = require("../../configuration.js");
5
+ const require_utils = require("../../store/utils.js");
6
+ const require_use_data_mutation = require("../../api/use-data-mutation.js");
7
+ const require_utils$1 = require("../../providers/AuthProvider/utils.js");
8
+ const require_LoginDialogFormError = require("../../components/LoginDialog/LoginDialogFormError.js");
9
+ const require_schemas = require("../../utils/schemas.js");
10
+ const require_Dialog = require("../../layouts/Security/Dialog.js");
11
+ const require_styles = require("./styles.js");
12
+ const require_Success = require("./Success.js");
13
+ let react_jsx_runtime = require("react/jsx-runtime");
14
+ let react = require("react");
15
+ react = require_runtime.__toESM(react);
16
+ let react_i18next = require("react-i18next");
17
+ let react_router = require("react-router");
18
+ let _mui_material = require("@mui/material");
19
+ let _hookform_resolvers_yup = require("@hookform/resolvers/yup");
20
+ let react_hook_form = require("react-hook-form");
19
21
  //#region src/sections/Security/ChangePassword.tsx
20
- var C = () => {
21
- let { t: C } = _(), w = v(), T = n(), E = r(T.base), D = T?.flags?.changePassword, { setError: O, handleSubmit: k, register: A, formState: { isValid: j, errors: M } } = S({
22
+ var ChangePassword = () => {
23
+ const { t } = (0, react_i18next.useTranslation)();
24
+ const navigate = (0, react_router.useNavigate)();
25
+ const configuration = require_configuration.getConfiguration();
26
+ const basePath = require_utils.stripTrailingSlash(configuration.base);
27
+ const changePasswordEnabled = configuration?.flags?.changePassword;
28
+ const { setError, handleSubmit, register, formState: { isValid, errors } } = (0, react_hook_form.useForm)({
22
29
  mode: "onChange",
23
30
  defaultValues: {
24
31
  username: "",
@@ -26,88 +33,93 @@ var C = () => {
26
33
  newPassword: "",
27
34
  confirmPassword: ""
28
35
  },
29
- resolver: x(s)
30
- }), { trigger: N } = i(E, e.RESET_PASSWORD, "PUT"), P = h(async (e) => {
36
+ resolver: (0, _hookform_resolvers_yup.yupResolver)(require_schemas.changePasswordSchema)
37
+ });
38
+ const { trigger } = require_use_data_mutation.useDataMutation(basePath, require_routes.APIRoute.RESET_PASSWORD, "PUT");
39
+ const handleChangePassword = (0, react.useCallback)(async (body) => {
31
40
  try {
32
- await N(e);
33
- } catch (e) {
34
- throw a(e);
41
+ await trigger(body);
42
+ } catch (err) {
43
+ throw require_utils$1.normalizeAuthError(err);
35
44
  }
36
- }, [N]), F = h(async (e) => {
45
+ }, [trigger]);
46
+ const onSubmit = (0, react.useCallback)(async (data) => {
37
47
  try {
38
- await P({ password: {
39
- old: e.oldPassword,
40
- new: e.newPassword
41
- } }), w(`${t.SUCCESS}?messageType=${f.ChangePassword}`);
48
+ await handleChangePassword({ password: {
49
+ old: data.oldPassword,
50
+ new: data.newPassword
51
+ } });
52
+ navigate(`${require_routes.Route.SUCCESS}?messageType=${require_Success.MessageType.ChangePassword}`);
42
53
  } catch {
43
- O("root", {
54
+ setError("root", {
44
55
  type: "server",
45
56
  message: "Failed to change password"
46
57
  });
47
58
  }
48
59
  }, [
49
- P,
50
- O,
51
- w
60
+ handleChangePassword,
61
+ setError,
62
+ navigate
52
63
  ]);
53
- return g(() => {
54
- D || w("/");
55
- }, [D, w]), D ? /* @__PURE__ */ p(c, { children: /* @__PURE__ */ p(l, { children: /* @__PURE__ */ m(u, {
64
+ (0, react.useEffect)(() => {
65
+ if (!changePasswordEnabled) navigate("/");
66
+ }, [changePasswordEnabled, navigate]);
67
+ return changePasswordEnabled ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Dialog.default, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_styles.SecurityContainer, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_styles.SecurityForm, {
56
68
  component: "form",
57
- onSubmit: k(F),
69
+ onSubmit: handleSubmit(onSubmit),
58
70
  children: [
59
- /* @__PURE__ */ p(b, {
71
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mui_material.Typography, {
60
72
  align: "center",
61
73
  component: "h1",
62
- gutterBottom: !0,
74
+ gutterBottom: true,
63
75
  variant: "h4",
64
- children: C("security.changePassword.title")
76
+ children: t("security.changePassword.title")
65
77
  }),
66
- /* @__PURE__ */ p(d, {
67
- error: !!M.username,
68
- helperText: M.username?.message,
69
- label: C("security.changePassword.username"),
70
- ...A("username"),
71
- required: !0
78
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_styles.SecurityTextField, {
79
+ error: !!errors.username,
80
+ helperText: errors.username?.message,
81
+ label: t("security.changePassword.username"),
82
+ ...register("username"),
83
+ required: true
72
84
  }),
73
- /* @__PURE__ */ p(d, {
74
- error: !!M.oldPassword,
75
- helperText: M.oldPassword?.message,
76
- label: C("security.changePassword.oldPassword"),
77
- ...A("oldPassword"),
78
- required: !0,
85
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_styles.SecurityTextField, {
86
+ error: !!errors.oldPassword,
87
+ helperText: errors.oldPassword?.message,
88
+ label: t("security.changePassword.oldPassword"),
89
+ ...register("oldPassword"),
90
+ required: true,
79
91
  type: "password"
80
92
  }),
81
- /* @__PURE__ */ p(d, {
82
- error: !!M.newPassword,
83
- helperText: M.newPassword?.message,
84
- label: C("security.changePassword.newPassword"),
85
- ...A("newPassword"),
86
- required: !0,
93
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_styles.SecurityTextField, {
94
+ error: !!errors.newPassword,
95
+ helperText: errors.newPassword?.message,
96
+ label: t("security.changePassword.newPassword"),
97
+ ...register("newPassword"),
98
+ required: true,
87
99
  type: "password"
88
100
  }),
89
- /* @__PURE__ */ p(d, {
90
- error: !!M.confirmPassword,
91
- helperText: M.confirmPassword?.message,
92
- label: C("security.changePassword.confirmPassword"),
93
- ...A("confirmPassword"),
94
- required: !0,
101
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_styles.SecurityTextField, {
102
+ error: !!errors.confirmPassword,
103
+ helperText: errors.confirmPassword?.message,
104
+ label: t("security.changePassword.confirmPassword"),
105
+ ...register("confirmPassword"),
106
+ required: true,
95
107
  type: "password"
96
108
  }),
97
- M.root && /* @__PURE__ */ p(o, { error: M.root }),
98
- /* @__PURE__ */ p(y, {
109
+ errors.root && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_LoginDialogFormError.default, { error: errors.root }),
110
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mui_material.Button, {
99
111
  color: "primary",
100
- disabled: !j,
101
- fullWidth: !0,
112
+ disabled: !isValid,
113
+ fullWidth: true,
102
114
  sx: { mt: 2 },
103
115
  type: "submit",
104
116
  variant: "contained",
105
- children: C("security.changePassword.submit")
117
+ children: t("security.changePassword.submit")
106
118
  })
107
119
  ]
108
120
  }) }) }) : null;
109
121
  };
110
122
  //#endregion
111
- export { C as default };
123
+ exports.default = ChangePassword;
112
124
 
113
125
  //# sourceMappingURL=ChangePassword.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChangePassword.js","names":["yupResolver","Button","Typography","React","useCallback","useEffect","useForm","useTranslation","useNavigate","useDataMutation","LoginDialogFormError","getConfiguration","SecurityLayout","normalizeAuthError","stripTrailingSlash","Route","APIRoute","ChangePasswordFormValues","changePasswordSchema","MessageType","SecurityContainer","SecurityForm","SecurityTextField","ChangePassword","FC","t","navigate","configuration","basePath","base","changePasswordEnabled","flags","changePassword","form","mode","defaultValues","username","oldPassword","newPassword","confirmPassword","resolver","setError","handleSubmit","register","formState","isValid","errors","trigger","ok","RESET_PASSWORD","handleChangePassword","body","password","old","new","err","onSubmit","data","SUCCESS","type","message","root","mt"],"sources":["../../../src/sections/Security/ChangePassword.tsx"],"sourcesContent":["import { yupResolver } from '@hookform/resolvers/yup';\nimport { Button, Typography } from '@mui/material';\nimport React, { useCallback, useEffect } from 'react';\nimport { useForm } from 'react-hook-form';\nimport { useTranslation } from 'react-i18next';\nimport { useNavigate } from 'react-router';\n\nimport { useDataMutation } from '../../api/use-data-mutation';\nimport LoginDialogFormError from '../../components/LoginDialog/LoginDialogFormError';\nimport { getConfiguration } from '../../configuration';\nimport SecurityLayout from '../../layouts/Security/Dialog';\nimport { normalizeAuthError } from '../../providers/AuthProvider/utils';\nimport { stripTrailingSlash } from '../../store/utils';\nimport { Route } from '../../utils';\nimport { APIRoute } from '../../utils/routes';\nimport type { ChangePasswordFormValues } from '../../utils/schemas';\nimport { changePasswordSchema } from '../../utils/schemas';\nimport { MessageType } from './Success';\nimport { SecurityContainer, SecurityForm, SecurityTextField } from './styles';\n\nconst ChangePassword: React.FC = () => {\n const { t } = useTranslation();\n const navigate = useNavigate();\n const configuration = getConfiguration();\n const basePath = stripTrailingSlash(configuration.base);\n const changePasswordEnabled = configuration?.flags?.changePassword;\n\n const form = useForm<ChangePasswordFormValues>({\n mode: 'onChange',\n defaultValues: {\n username: '',\n oldPassword: '',\n newPassword: '',\n confirmPassword: '',\n },\n resolver: yupResolver(changePasswordSchema),\n });\n\n const {\n setError,\n handleSubmit,\n register,\n formState: { isValid, errors },\n } = form;\n\n const { trigger } = useDataMutation<{ ok: string }>(basePath, APIRoute.RESET_PASSWORD, 'PUT');\n\n const handleChangePassword = useCallback(\n async (body: { password: { old: string; new: string } }) => {\n try {\n await trigger(body);\n } catch (err) {\n throw normalizeAuthError(err);\n }\n },\n [trigger]\n );\n\n const onSubmit = useCallback(\n async (data: ChangePasswordFormValues) => {\n try {\n await handleChangePassword({\n password: {\n old: data.oldPassword,\n new: data.newPassword,\n },\n });\n navigate(`${Route.SUCCESS}?messageType=${MessageType.ChangePassword}`);\n } catch {\n setError('root', {\n type: 'server',\n message: 'Failed to change password',\n });\n }\n },\n [handleChangePassword, setError, navigate]\n );\n\n useEffect(() => {\n if (!changePasswordEnabled) {\n navigate('/');\n }\n }, [changePasswordEnabled, navigate]);\n\n return changePasswordEnabled ? (\n <SecurityLayout>\n <SecurityContainer>\n <SecurityForm component=\"form\" onSubmit={handleSubmit(onSubmit)}>\n <Typography align=\"center\" component=\"h1\" gutterBottom={true} variant=\"h4\">\n {t('security.changePassword.title')}\n </Typography>\n <SecurityTextField\n error={!!errors.username}\n helperText={errors.username?.message}\n label={t('security.changePassword.username')}\n {...register('username')}\n required={true}\n />\n <SecurityTextField\n error={!!errors.oldPassword}\n helperText={errors.oldPassword?.message}\n label={t('security.changePassword.oldPassword')}\n {...register('oldPassword')}\n required={true}\n type=\"password\"\n />\n <SecurityTextField\n error={!!errors.newPassword}\n helperText={errors.newPassword?.message}\n label={t('security.changePassword.newPassword')}\n {...register('newPassword')}\n required={true}\n type=\"password\"\n />\n <SecurityTextField\n error={!!errors.confirmPassword}\n helperText={errors.confirmPassword?.message}\n label={t('security.changePassword.confirmPassword')}\n {...register('confirmPassword')}\n required={true}\n type=\"password\"\n />\n {errors.root && <LoginDialogFormError error={errors.root} />}\n <Button\n color=\"primary\"\n disabled={!isValid}\n fullWidth={true}\n sx={{ mt: 2 }}\n type=\"submit\"\n variant=\"contained\"\n >\n {t('security.changePassword.submit')}\n </Button>\n </SecurityForm>\n </SecurityContainer>\n </SecurityLayout>\n ) : null;\n};\n\nexport default ChangePassword;\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAoBA,IAAMuB,UAAiC;CACrC,IAAM,EAAEE,SAAMlB,GAAgB,EACxBmB,IAAWlB,GAAa,EACxBmB,IAAgBhB,GAAkB,EAClCiB,IAAWd,EAAmBa,EAAcE,KAAK,EACjDC,IAAwBH,GAAeI,OAAOC,gBAa9C,EACJS,aACAC,iBACAC,aACAC,WAAW,EAAEC,YAASC,gBAfXxC,EAAkC;EAC7C4B,MAAM;EACNC,eAAe;GACbC,UAAU;GACVC,aAAa;GACbC,aAAa;GACbC,iBAAiB;GAClB;EACDC,UAAUxC,EAAYkB,EAAoB;EAC3C,CAAC,EASI,EAAE6B,eAAYtC,EAAgCmB,GAAUZ,EAASiC,gBAAgB,MAAM,EAEvFC,IAAuB9C,EAC3B,OAAO+C,MAAqD;AAC1D,MAAI;AACF,SAAMJ,EAAQI,EAAK;WACZI,GAAK;AACZ,SAAM1C,EAAmB0C,EAAI;;IAGjC,CAACR,EACH,CAAC,EAEKS,IAAWpD,EACf,OAAOqD,MAAmC;AACxC,MAAI;AAOF/B,GANA,MAAMwB,EAAqB,EACzBE,UAAU;IACRC,KAAKI,EAAKpB;IACViB,KAAKG,EAAKnB;IACZ,EACD,CAAC,EACFZ,EAAS,GAAGX,EAAM2C,QAAO,eAAgBvC,EAAYI,iBAAiB;UAChE;AACNkB,KAAS,QAAQ;IACfkB,MAAM;IACNC,SAAS;IACV,CAAC;;IAGN;EAACV;EAAsBT;EAAUf;EACnC,CAAC;AAQD,QANArB,QAAgB;AACd,EAAKyB,KACHJ,EAAS,IAAI;IAEd,CAACI,GAAuBJ,EAAS,CAAC,EAE9BI,IACL,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;EAAc,WAAU;EAAO,UAAUY,EAAac,EAAS;YAA/D;GACE,kBAAC,GAAD;IAAY,OAAM;IAAS,WAAU;IAAK,cAAc;IAAM,SAAQ;cACnE/B,EAAE,gCAAgC;IACzB,CAAA;GACZ,kBAAC,GAAD;IACE,OAAO,CAAC,CAACqB,EAAOV;IAChB,YAAYU,EAAOV,UAAUwB;IAC7B,OAAOnC,EAAE,mCAAmC;IAC5C,GAAIkB,EAAS,WAAW;IACxB,UAAU;IAAK,CAAA;GAEjB,kBAAC,GAAD;IACE,OAAO,CAAC,CAACG,EAAOT;IAChB,YAAYS,EAAOT,aAAauB;IAChC,OAAOnC,EAAE,sCAAsC;IAC/C,GAAIkB,EAAS,cAAc;IAC3B,UAAU;IACV,MAAK;IAAU,CAAA;GAEjB,kBAAC,GAAD;IACE,OAAO,CAAC,CAACG,EAAOR;IAChB,YAAYQ,EAAOR,aAAasB;IAChC,OAAOnC,EAAE,sCAAsC;IAC/C,GAAIkB,EAAS,cAAc;IAC3B,UAAU;IACV,MAAK;IAAU,CAAA;GAEjB,kBAAC,GAAD;IACE,OAAO,CAAC,CAACG,EAAOP;IAChB,YAAYO,EAAOP,iBAAiBqB;IACpC,OAAOnC,EAAE,0CAA0C;IACnD,GAAIkB,EAAS,kBAAkB;IAC/B,UAAU;IACV,MAAK;IAAU,CAAA;GAEhBG,EAAOe,QAAQ,kBAAC,GAAD,EAAsB,OAAOf,EAAOe,MAAQ,CAAA;GAC5D,kBAAC,GAAD;IACE,OAAM;IACN,UAAU,CAAChB;IACX,WAAW;IACX,IAAI,EAAEiB,IAAI,GAAG;IACb,MAAK;IACL,SAAQ;cAEPrC,EAAE,iCAAiC;IAC9B,CAAA;GACI;KACG,CAAA,EACJ,CAAA,GACf"}
1
+ {"version":3,"file":"ChangePassword.js","names":["yupResolver","Button","Typography","React","useCallback","useEffect","useForm","useTranslation","useNavigate","useDataMutation","LoginDialogFormError","getConfiguration","SecurityLayout","normalizeAuthError","stripTrailingSlash","Route","APIRoute","ChangePasswordFormValues","changePasswordSchema","MessageType","SecurityContainer","SecurityForm","SecurityTextField","ChangePassword","FC","t","navigate","configuration","basePath","base","changePasswordEnabled","flags","changePassword","form","mode","defaultValues","username","oldPassword","newPassword","confirmPassword","resolver","setError","handleSubmit","register","formState","isValid","errors","trigger","ok","RESET_PASSWORD","handleChangePassword","body","password","old","new","err","onSubmit","data","SUCCESS","type","message","root","mt"],"sources":["../../../src/sections/Security/ChangePassword.tsx"],"sourcesContent":["import { yupResolver } from '@hookform/resolvers/yup';\nimport { Button, Typography } from '@mui/material';\nimport React, { useCallback, useEffect } from 'react';\nimport { useForm } from 'react-hook-form';\nimport { useTranslation } from 'react-i18next';\nimport { useNavigate } from 'react-router';\n\nimport { useDataMutation } from '../../api/use-data-mutation';\nimport LoginDialogFormError from '../../components/LoginDialog/LoginDialogFormError';\nimport { getConfiguration } from '../../configuration';\nimport SecurityLayout from '../../layouts/Security/Dialog';\nimport { normalizeAuthError } from '../../providers/AuthProvider/utils';\nimport { stripTrailingSlash } from '../../store/utils';\nimport { Route } from '../../utils';\nimport { APIRoute } from '../../utils/routes';\nimport type { ChangePasswordFormValues } from '../../utils/schemas';\nimport { changePasswordSchema } from '../../utils/schemas';\nimport { MessageType } from './Success';\nimport { SecurityContainer, SecurityForm, SecurityTextField } from './styles';\n\nconst ChangePassword: React.FC = () => {\n const { t } = useTranslation();\n const navigate = useNavigate();\n const configuration = getConfiguration();\n const basePath = stripTrailingSlash(configuration.base);\n const changePasswordEnabled = configuration?.flags?.changePassword;\n\n const form = useForm<ChangePasswordFormValues>({\n mode: 'onChange',\n defaultValues: {\n username: '',\n oldPassword: '',\n newPassword: '',\n confirmPassword: '',\n },\n resolver: yupResolver(changePasswordSchema),\n });\n\n const {\n setError,\n handleSubmit,\n register,\n formState: { isValid, errors },\n } = form;\n\n const { trigger } = useDataMutation<{ ok: string }>(basePath, APIRoute.RESET_PASSWORD, 'PUT');\n\n const handleChangePassword = useCallback(\n async (body: { password: { old: string; new: string } }) => {\n try {\n await trigger(body);\n } catch (err) {\n throw normalizeAuthError(err);\n }\n },\n [trigger]\n );\n\n const onSubmit = useCallback(\n async (data: ChangePasswordFormValues) => {\n try {\n await handleChangePassword({\n password: {\n old: data.oldPassword,\n new: data.newPassword,\n },\n });\n navigate(`${Route.SUCCESS}?messageType=${MessageType.ChangePassword}`);\n } catch {\n setError('root', {\n type: 'server',\n message: 'Failed to change password',\n });\n }\n },\n [handleChangePassword, setError, navigate]\n );\n\n useEffect(() => {\n if (!changePasswordEnabled) {\n navigate('/');\n }\n }, [changePasswordEnabled, navigate]);\n\n return changePasswordEnabled ? (\n <SecurityLayout>\n <SecurityContainer>\n <SecurityForm component=\"form\" onSubmit={handleSubmit(onSubmit)}>\n <Typography align=\"center\" component=\"h1\" gutterBottom={true} variant=\"h4\">\n {t('security.changePassword.title')}\n </Typography>\n <SecurityTextField\n error={!!errors.username}\n helperText={errors.username?.message}\n label={t('security.changePassword.username')}\n {...register('username')}\n required={true}\n />\n <SecurityTextField\n error={!!errors.oldPassword}\n helperText={errors.oldPassword?.message}\n label={t('security.changePassword.oldPassword')}\n {...register('oldPassword')}\n required={true}\n type=\"password\"\n />\n <SecurityTextField\n error={!!errors.newPassword}\n helperText={errors.newPassword?.message}\n label={t('security.changePassword.newPassword')}\n {...register('newPassword')}\n required={true}\n type=\"password\"\n />\n <SecurityTextField\n error={!!errors.confirmPassword}\n helperText={errors.confirmPassword?.message}\n label={t('security.changePassword.confirmPassword')}\n {...register('confirmPassword')}\n required={true}\n type=\"password\"\n />\n {errors.root && <LoginDialogFormError error={errors.root} />}\n <Button\n color=\"primary\"\n disabled={!isValid}\n fullWidth={true}\n sx={{ mt: 2 }}\n type=\"submit\"\n variant=\"contained\"\n >\n {t('security.changePassword.submit')}\n </Button>\n </SecurityForm>\n </SecurityContainer>\n </SecurityLayout>\n ) : null;\n};\n\nexport default ChangePassword;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAoBA,IAAMuB,uBAAiC;CACrC,MAAM,EAAEE,OAAAA,GAAAA,cAAAA,iBAAsB;CAC9B,MAAMC,YAAAA,GAAAA,aAAAA,cAAwB;CAC9B,MAAMC,gBAAgBhB,sBAAAA,kBAAkB;CACxC,MAAMiB,WAAWd,cAAAA,mBAAmBa,cAAcE,KAAK;CACvD,MAAMC,wBAAwBH,eAAeI,OAAOC;CAapD,MAAM,EACJS,UACAC,cACAC,UACAC,WAAW,EAAEC,SAASC,cAAAA,GAAAA,gBAAAA,SAfuB;EAC7CZ,MAAM;EACNC,eAAe;GACbC,UAAU;GACVC,aAAa;GACbC,aAAa;GACbC,iBAAiB;GAClB;EACDC,WAAAA,GAAAA,wBAAAA,aAAsBtB,gBAAAA,qBAAoB;EAC3C,CAAC;CASF,MAAM,EAAE6B,YAAYtC,0BAAAA,gBAAgCmB,UAAUZ,eAAAA,SAASiC,gBAAgB,MAAM;CAE7F,MAAMC,wBAAAA,GAAAA,MAAAA,aACJ,OAAOC,SAAqD;AAC1D,MAAI;AACF,SAAMJ,QAAQI,KAAK;WACZI,KAAK;AACZ,SAAM1C,gBAAAA,mBAAmB0C,IAAI;;IAGjC,CAACR,QACH,CAAC;CAED,MAAMS,YAAAA,GAAAA,MAAAA,aACJ,OAAOC,SAAmC;AACxC,MAAI;AACF,SAAMP,qBAAqB,EACzBE,UAAU;IACRC,KAAKI,KAAKpB;IACViB,KAAKG,KAAKnB;IACZ,EACD,CAAC;AACFZ,YAAS,GAAGX,eAAAA,MAAM2C,QAAO,eAAgBvC,gBAAAA,YAAYI,iBAAiB;UAChE;AACNkB,YAAS,QAAQ;IACfkB,MAAM;IACNC,SAAS;IACV,CAAC;;IAGN;EAACV;EAAsBT;EAAUf;EACnC,CAAC;AAEDrB,EAAAA,GAAAA,MAAAA,iBAAgB;AACd,MAAI,CAACyB,sBACHJ,UAAS,IAAI;IAEd,CAACI,uBAAuBJ,SAAS,CAAC;AAErC,QAAOI,wBACL,iBAAA,GAAA,kBAAA,KAAC,eAAA,SAAD,EAAA,UACE,iBAAA,GAAA,kBAAA,KAAC,eAAA,mBAAD,EAAA,UACE,iBAAA,GAAA,kBAAA,MAAC,eAAA,cAAD;EAAc,WAAU;EAAO,UAAUY,aAAac,SAAS;YAA/D;GACE,iBAAA,GAAA,kBAAA,KAAC,cAAA,YAAD;IAAY,OAAM;IAAS,WAAU;IAAK,cAAc;IAAM,SAAQ;cACnE/B,EAAE,gCAAgC;IACzB,CAAA;GACZ,iBAAA,GAAA,kBAAA,KAAC,eAAA,mBAAD;IACE,OAAO,CAAC,CAACqB,OAAOV;IAChB,YAAYU,OAAOV,UAAUwB;IAC7B,OAAOnC,EAAE,mCAAmC;IAC5C,GAAIkB,SAAS,WAAW;IACxB,UAAU;IAAK,CAAA;GAEjB,iBAAA,GAAA,kBAAA,KAAC,eAAA,mBAAD;IACE,OAAO,CAAC,CAACG,OAAOT;IAChB,YAAYS,OAAOT,aAAauB;IAChC,OAAOnC,EAAE,sCAAsC;IAC/C,GAAIkB,SAAS,cAAc;IAC3B,UAAU;IACV,MAAK;IAAU,CAAA;GAEjB,iBAAA,GAAA,kBAAA,KAAC,eAAA,mBAAD;IACE,OAAO,CAAC,CAACG,OAAOR;IAChB,YAAYQ,OAAOR,aAAasB;IAChC,OAAOnC,EAAE,sCAAsC;IAC/C,GAAIkB,SAAS,cAAc;IAC3B,UAAU;IACV,MAAK;IAAU,CAAA;GAEjB,iBAAA,GAAA,kBAAA,KAAC,eAAA,mBAAD;IACE,OAAO,CAAC,CAACG,OAAOP;IAChB,YAAYO,OAAOP,iBAAiBqB;IACpC,OAAOnC,EAAE,0CAA0C;IACnD,GAAIkB,SAAS,kBAAkB;IAC/B,UAAU;IACV,MAAK;IAAU,CAAA;GAEhBG,OAAOe,QAAQ,iBAAA,GAAA,kBAAA,KAAC,6BAAA,SAAD,EAAsB,OAAOf,OAAOe,MAAQ,CAAA;GAC5D,iBAAA,GAAA,kBAAA,KAAC,cAAA,QAAD;IACE,OAAM;IACN,UAAU,CAAChB;IACX,WAAW;IACX,IAAI,EAAEiB,IAAI,GAAG;IACb,MAAK;IACL,SAAQ;cAEPrC,EAAE,iCAAiC;IAC9B,CAAA;GACI;KACG,CAAA,EACJ,CAAA,GACf"}
@@ -0,0 +1,123 @@
1
+ import { APIRoute, Route as Route$1 } from "../../utils/routes.mjs";
2
+ import "../../utils/index.mjs";
3
+ import { getConfiguration } from "../../configuration.mjs";
4
+ import { stripTrailingSlash } from "../../store/utils.mjs";
5
+ import { useDataMutation } from "../../api/use-data-mutation.mjs";
6
+ import { normalizeAuthError } from "../../providers/AuthProvider/utils.mjs";
7
+ import LoginDialogFormError from "../../components/LoginDialog/LoginDialogFormError.mjs";
8
+ import { changePasswordSchema } from "../../utils/schemas.mjs";
9
+ import SecurityLayout from "../../layouts/Security/Dialog.mjs";
10
+ import { SecurityContainer, SecurityForm, SecurityTextField } from "./styles.mjs";
11
+ import { MessageType } from "./Success.mjs";
12
+ import { jsx, jsxs } from "react/jsx-runtime";
13
+ import { useCallback, useEffect } from "react";
14
+ import { useTranslation } from "react-i18next";
15
+ import { useNavigate } from "react-router";
16
+ import { Button, Typography } from "@mui/material";
17
+ import { yupResolver } from "@hookform/resolvers/yup";
18
+ import { useForm } from "react-hook-form";
19
+ //#region src/sections/Security/ChangePassword.tsx
20
+ var ChangePassword = () => {
21
+ const { t } = useTranslation();
22
+ const navigate = useNavigate();
23
+ const configuration = getConfiguration();
24
+ const basePath = stripTrailingSlash(configuration.base);
25
+ const changePasswordEnabled = configuration?.flags?.changePassword;
26
+ const { setError, handleSubmit, register, formState: { isValid, errors } } = useForm({
27
+ mode: "onChange",
28
+ defaultValues: {
29
+ username: "",
30
+ oldPassword: "",
31
+ newPassword: "",
32
+ confirmPassword: ""
33
+ },
34
+ resolver: yupResolver(changePasswordSchema)
35
+ });
36
+ const { trigger } = useDataMutation(basePath, APIRoute.RESET_PASSWORD, "PUT");
37
+ const handleChangePassword = useCallback(async (body) => {
38
+ try {
39
+ await trigger(body);
40
+ } catch (err) {
41
+ throw normalizeAuthError(err);
42
+ }
43
+ }, [trigger]);
44
+ const onSubmit = useCallback(async (data) => {
45
+ try {
46
+ await handleChangePassword({ password: {
47
+ old: data.oldPassword,
48
+ new: data.newPassword
49
+ } });
50
+ navigate(`${Route$1.SUCCESS}?messageType=${MessageType.ChangePassword}`);
51
+ } catch {
52
+ setError("root", {
53
+ type: "server",
54
+ message: "Failed to change password"
55
+ });
56
+ }
57
+ }, [
58
+ handleChangePassword,
59
+ setError,
60
+ navigate
61
+ ]);
62
+ useEffect(() => {
63
+ if (!changePasswordEnabled) navigate("/");
64
+ }, [changePasswordEnabled, navigate]);
65
+ return changePasswordEnabled ? /* @__PURE__ */ jsx(SecurityLayout, { children: /* @__PURE__ */ jsx(SecurityContainer, { children: /* @__PURE__ */ jsxs(SecurityForm, {
66
+ component: "form",
67
+ onSubmit: handleSubmit(onSubmit),
68
+ children: [
69
+ /* @__PURE__ */ jsx(Typography, {
70
+ align: "center",
71
+ component: "h1",
72
+ gutterBottom: true,
73
+ variant: "h4",
74
+ children: t("security.changePassword.title")
75
+ }),
76
+ /* @__PURE__ */ jsx(SecurityTextField, {
77
+ error: !!errors.username,
78
+ helperText: errors.username?.message,
79
+ label: t("security.changePassword.username"),
80
+ ...register("username"),
81
+ required: true
82
+ }),
83
+ /* @__PURE__ */ jsx(SecurityTextField, {
84
+ error: !!errors.oldPassword,
85
+ helperText: errors.oldPassword?.message,
86
+ label: t("security.changePassword.oldPassword"),
87
+ ...register("oldPassword"),
88
+ required: true,
89
+ type: "password"
90
+ }),
91
+ /* @__PURE__ */ jsx(SecurityTextField, {
92
+ error: !!errors.newPassword,
93
+ helperText: errors.newPassword?.message,
94
+ label: t("security.changePassword.newPassword"),
95
+ ...register("newPassword"),
96
+ required: true,
97
+ type: "password"
98
+ }),
99
+ /* @__PURE__ */ jsx(SecurityTextField, {
100
+ error: !!errors.confirmPassword,
101
+ helperText: errors.confirmPassword?.message,
102
+ label: t("security.changePassword.confirmPassword"),
103
+ ...register("confirmPassword"),
104
+ required: true,
105
+ type: "password"
106
+ }),
107
+ errors.root && /* @__PURE__ */ jsx(LoginDialogFormError, { error: errors.root }),
108
+ /* @__PURE__ */ jsx(Button, {
109
+ color: "primary",
110
+ disabled: !isValid,
111
+ fullWidth: true,
112
+ sx: { mt: 2 },
113
+ type: "submit",
114
+ variant: "contained",
115
+ children: t("security.changePassword.submit")
116
+ })
117
+ ]
118
+ }) }) }) : null;
119
+ };
120
+ //#endregion
121
+ export { ChangePassword as default };
122
+
123
+ //# sourceMappingURL=ChangePassword.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChangePassword.mjs","names":["yupResolver","Button","Typography","React","useCallback","useEffect","useForm","useTranslation","useNavigate","useDataMutation","LoginDialogFormError","getConfiguration","SecurityLayout","normalizeAuthError","stripTrailingSlash","Route","APIRoute","ChangePasswordFormValues","changePasswordSchema","MessageType","SecurityContainer","SecurityForm","SecurityTextField","ChangePassword","FC","t","navigate","configuration","basePath","base","changePasswordEnabled","flags","changePassword","form","mode","defaultValues","username","oldPassword","newPassword","confirmPassword","resolver","setError","handleSubmit","register","formState","isValid","errors","trigger","ok","RESET_PASSWORD","handleChangePassword","body","password","old","new","err","onSubmit","data","SUCCESS","type","message","root","mt"],"sources":["../../../src/sections/Security/ChangePassword.tsx"],"sourcesContent":["import { yupResolver } from '@hookform/resolvers/yup';\nimport { Button, Typography } from '@mui/material';\nimport React, { useCallback, useEffect } from 'react';\nimport { useForm } from 'react-hook-form';\nimport { useTranslation } from 'react-i18next';\nimport { useNavigate } from 'react-router';\n\nimport { useDataMutation } from '../../api/use-data-mutation';\nimport LoginDialogFormError from '../../components/LoginDialog/LoginDialogFormError';\nimport { getConfiguration } from '../../configuration';\nimport SecurityLayout from '../../layouts/Security/Dialog';\nimport { normalizeAuthError } from '../../providers/AuthProvider/utils';\nimport { stripTrailingSlash } from '../../store/utils';\nimport { Route } from '../../utils';\nimport { APIRoute } from '../../utils/routes';\nimport type { ChangePasswordFormValues } from '../../utils/schemas';\nimport { changePasswordSchema } from '../../utils/schemas';\nimport { MessageType } from './Success';\nimport { SecurityContainer, SecurityForm, SecurityTextField } from './styles';\n\nconst ChangePassword: React.FC = () => {\n const { t } = useTranslation();\n const navigate = useNavigate();\n const configuration = getConfiguration();\n const basePath = stripTrailingSlash(configuration.base);\n const changePasswordEnabled = configuration?.flags?.changePassword;\n\n const form = useForm<ChangePasswordFormValues>({\n mode: 'onChange',\n defaultValues: {\n username: '',\n oldPassword: '',\n newPassword: '',\n confirmPassword: '',\n },\n resolver: yupResolver(changePasswordSchema),\n });\n\n const {\n setError,\n handleSubmit,\n register,\n formState: { isValid, errors },\n } = form;\n\n const { trigger } = useDataMutation<{ ok: string }>(basePath, APIRoute.RESET_PASSWORD, 'PUT');\n\n const handleChangePassword = useCallback(\n async (body: { password: { old: string; new: string } }) => {\n try {\n await trigger(body);\n } catch (err) {\n throw normalizeAuthError(err);\n }\n },\n [trigger]\n );\n\n const onSubmit = useCallback(\n async (data: ChangePasswordFormValues) => {\n try {\n await handleChangePassword({\n password: {\n old: data.oldPassword,\n new: data.newPassword,\n },\n });\n navigate(`${Route.SUCCESS}?messageType=${MessageType.ChangePassword}`);\n } catch {\n setError('root', {\n type: 'server',\n message: 'Failed to change password',\n });\n }\n },\n [handleChangePassword, setError, navigate]\n );\n\n useEffect(() => {\n if (!changePasswordEnabled) {\n navigate('/');\n }\n }, [changePasswordEnabled, navigate]);\n\n return changePasswordEnabled ? (\n <SecurityLayout>\n <SecurityContainer>\n <SecurityForm component=\"form\" onSubmit={handleSubmit(onSubmit)}>\n <Typography align=\"center\" component=\"h1\" gutterBottom={true} variant=\"h4\">\n {t('security.changePassword.title')}\n </Typography>\n <SecurityTextField\n error={!!errors.username}\n helperText={errors.username?.message}\n label={t('security.changePassword.username')}\n {...register('username')}\n required={true}\n />\n <SecurityTextField\n error={!!errors.oldPassword}\n helperText={errors.oldPassword?.message}\n label={t('security.changePassword.oldPassword')}\n {...register('oldPassword')}\n required={true}\n type=\"password\"\n />\n <SecurityTextField\n error={!!errors.newPassword}\n helperText={errors.newPassword?.message}\n label={t('security.changePassword.newPassword')}\n {...register('newPassword')}\n required={true}\n type=\"password\"\n />\n <SecurityTextField\n error={!!errors.confirmPassword}\n helperText={errors.confirmPassword?.message}\n label={t('security.changePassword.confirmPassword')}\n {...register('confirmPassword')}\n required={true}\n type=\"password\"\n />\n {errors.root && <LoginDialogFormError error={errors.root} />}\n <Button\n color=\"primary\"\n disabled={!isValid}\n fullWidth={true}\n sx={{ mt: 2 }}\n type=\"submit\"\n variant=\"contained\"\n >\n {t('security.changePassword.submit')}\n </Button>\n </SecurityForm>\n </SecurityContainer>\n </SecurityLayout>\n ) : null;\n};\n\nexport default ChangePassword;\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAoBA,IAAMuB,uBAAiC;CACrC,MAAM,EAAEE,MAAMlB,gBAAgB;CAC9B,MAAMmB,WAAWlB,aAAa;CAC9B,MAAMmB,gBAAgBhB,kBAAkB;CACxC,MAAMiB,WAAWd,mBAAmBa,cAAcE,KAAK;CACvD,MAAMC,wBAAwBH,eAAeI,OAAOC;CAapD,MAAM,EACJS,UACAC,cACAC,UACAC,WAAW,EAAEC,SAASC,aAfXxC,QAAkC;EAC7C4B,MAAM;EACNC,eAAe;GACbC,UAAU;GACVC,aAAa;GACbC,aAAa;GACbC,iBAAiB;GAClB;EACDC,UAAUxC,YAAYkB,qBAAoB;EAC3C,CAAC;CASF,MAAM,EAAE6B,YAAYtC,gBAAgCmB,UAAUZ,SAASiC,gBAAgB,MAAM;CAE7F,MAAMC,uBAAuB9C,YAC3B,OAAO+C,SAAqD;AAC1D,MAAI;AACF,SAAMJ,QAAQI,KAAK;WACZI,KAAK;AACZ,SAAM1C,mBAAmB0C,IAAI;;IAGjC,CAACR,QACH,CAAC;CAED,MAAMS,WAAWpD,YACf,OAAOqD,SAAmC;AACxC,MAAI;AACF,SAAMP,qBAAqB,EACzBE,UAAU;IACRC,KAAKI,KAAKpB;IACViB,KAAKG,KAAKnB;IACZ,EACD,CAAC;AACFZ,YAAS,GAAGX,QAAM2C,QAAO,eAAgBvC,YAAYI,iBAAiB;UAChE;AACNkB,YAAS,QAAQ;IACfkB,MAAM;IACNC,SAAS;IACV,CAAC;;IAGN;EAACV;EAAsBT;EAAUf;EACnC,CAAC;AAEDrB,iBAAgB;AACd,MAAI,CAACyB,sBACHJ,UAAS,IAAI;IAEd,CAACI,uBAAuBJ,SAAS,CAAC;AAErC,QAAOI,wBACL,oBAAC,gBAAD,EAAA,UACE,oBAAC,mBAAD,EAAA,UACE,qBAAC,cAAD;EAAc,WAAU;EAAO,UAAUY,aAAac,SAAS;YAA/D;GACE,oBAAC,YAAD;IAAY,OAAM;IAAS,WAAU;IAAK,cAAc;IAAM,SAAQ;cACnE/B,EAAE,gCAAgC;IACzB,CAAA;GACZ,oBAAC,mBAAD;IACE,OAAO,CAAC,CAACqB,OAAOV;IAChB,YAAYU,OAAOV,UAAUwB;IAC7B,OAAOnC,EAAE,mCAAmC;IAC5C,GAAIkB,SAAS,WAAW;IACxB,UAAU;IAAK,CAAA;GAEjB,oBAAC,mBAAD;IACE,OAAO,CAAC,CAACG,OAAOT;IAChB,YAAYS,OAAOT,aAAauB;IAChC,OAAOnC,EAAE,sCAAsC;IAC/C,GAAIkB,SAAS,cAAc;IAC3B,UAAU;IACV,MAAK;IAAU,CAAA;GAEjB,oBAAC,mBAAD;IACE,OAAO,CAAC,CAACG,OAAOR;IAChB,YAAYQ,OAAOR,aAAasB;IAChC,OAAOnC,EAAE,sCAAsC;IAC/C,GAAIkB,SAAS,cAAc;IAC3B,UAAU;IACV,MAAK;IAAU,CAAA;GAEjB,oBAAC,mBAAD;IACE,OAAO,CAAC,CAACG,OAAOP;IAChB,YAAYO,OAAOP,iBAAiBqB;IACpC,OAAOnC,EAAE,0CAA0C;IACnD,GAAIkB,SAAS,kBAAkB;IAC/B,UAAU;IACV,MAAK;IAAU,CAAA;GAEhBG,OAAOe,QAAQ,oBAAC,sBAAD,EAAsB,OAAOf,OAAOe,MAAQ,CAAA;GAC5D,oBAAC,QAAD;IACE,OAAM;IACN,UAAU,CAAChB;IACX,WAAW;IACX,IAAI,EAAEiB,IAAI,GAAG;IACb,MAAK;IACL,SAAQ;cAEPrC,EAAE,iCAAiC;IAC9B,CAAA;GACI;KACG,CAAA,EACJ,CAAA,GACf"}
@@ -1,80 +1,96 @@
1
- import { Route as e } from "../../utils/routes.js";
2
- import "../../utils/index.js";
3
- import { saveAuth as t } from "../../store/storage.js";
4
- import { getConfiguration as n } from "../../configuration.js";
5
- import { stripTrailingSlash as r } from "../../store/utils.js";
6
- import { useDataMutation as i } from "../../api/use-data-mutation.js";
7
- import { normalizeAuthError as a } from "../../providers/AuthProvider/utils.js";
8
- import o from "../../components/NotFound/NotFound.js";
9
- import "../../components/NotFound/index.js";
10
- import s from "../../components/LoginForm/styles.js";
11
- import c from "../../components/LoginForm/Login.js";
12
- import { loginSchema as l } from "../../utils/schemas.js";
13
- import u from "../../layouts/Security/Dialog.js";
14
- import { SecurityContainer as d, SecurityForm as f } from "./styles.js";
15
- import { MessageType as p } from "./Success.js";
16
- import { getSecurityUrlParams as m } from "./utils.js";
17
- import { jsx as h, jsxs as g } from "react/jsx-runtime";
18
- import { useCallback as _, useEffect as v } from "react";
19
- import { useTranslation as y } from "react-i18next";
20
- import { useLocation as b, useNavigate as x } from "react-router";
21
- import { Link as S, Typography as C } from "@mui/material";
22
- import { yupResolver as w } from "@hookform/resolvers/yup";
23
- import { useForm as T } from "react-hook-form";
1
+ const require_runtime = require("../../_virtual/_rolldown/runtime.js");
2
+ const require_routes = require("../../utils/routes.js");
3
+ require("../../utils/index.js");
4
+ const require_storage = require("../../store/storage.js");
5
+ const require_configuration = require("../../configuration.js");
6
+ const require_utils = require("../../store/utils.js");
7
+ const require_use_data_mutation = require("../../api/use-data-mutation.js");
8
+ const require_utils$1 = require("../../providers/AuthProvider/utils.js");
9
+ const require_NotFound = require("../../components/NotFound/NotFound.js");
10
+ require("../../components/NotFound/index.js");
11
+ const require_styles = require("../../components/LoginForm/styles.js");
12
+ const require_Login = require("../../components/LoginForm/Login.js");
13
+ const require_schemas = require("../../utils/schemas.js");
14
+ const require_Dialog = require("../../layouts/Security/Dialog.js");
15
+ const require_styles$1 = require("./styles.js");
16
+ const require_Success = require("./Success.js");
17
+ const require_utils$2 = require("./utils.js");
18
+ let react_jsx_runtime = require("react/jsx-runtime");
19
+ let react = require("react");
20
+ react = require_runtime.__toESM(react);
21
+ let react_i18next = require("react-i18next");
22
+ let react_router = require("react-router");
23
+ let _mui_material = require("@mui/material");
24
+ let _hookform_resolvers_yup = require("@hookform/resolvers/yup");
25
+ let react_hook_form = require("react-hook-form");
24
26
  //#region src/sections/Security/Login.tsx
25
- var E = n(), D = r(E.base), O = () => {
26
- let { t: n } = y(), r = b(), O = x(), { next: k } = m(r), A = E?.flags?.createUser, j = e.ADD_USER + (k ? "?next=" + k : ""), { data: M, isMutating: N, trigger: P } = i(D, k, "POST"), { setError: F, handleSubmit: I, register: L, formState: { isValid: R, errors: z } } = T({
27
+ var configuration = require_configuration.getConfiguration();
28
+ var basePath = require_utils.stripTrailingSlash(configuration.base);
29
+ var Login = () => {
30
+ const { t } = (0, react_i18next.useTranslation)();
31
+ const location = (0, react_router.useLocation)();
32
+ const navigate = (0, react_router.useNavigate)();
33
+ const { next } = require_utils$2.getSecurityUrlParams(location);
34
+ const createUserEnabled = configuration?.flags?.createUser;
35
+ const addUserLink = require_routes.Route.ADD_USER + (next ? "?next=" + next : "");
36
+ const { data, isMutating, trigger } = require_use_data_mutation.useDataMutation(basePath, next, "POST");
37
+ const { setError, handleSubmit, register, formState: { isValid, errors } } = (0, react_hook_form.useForm)({
27
38
  mode: "onChange",
28
- resolver: w(l)
29
- }), B = async (e) => {
39
+ resolver: (0, _hookform_resolvers_yup.yupResolver)(require_schemas.loginSchema)
40
+ });
41
+ const handleLogin = async (body) => {
30
42
  try {
31
- await P(e);
32
- } catch (e) {
33
- throw a(e);
43
+ await trigger(body);
44
+ } catch (err) {
45
+ throw require_utils$1.normalizeAuthError(err);
34
46
  }
35
- }, V = _(() => {
36
- O(`${e.SUCCESS}?messageType=${p.Login}`);
37
- }, [O]), H = _(async (e) => {
47
+ };
48
+ const onSuccess = (0, react.useCallback)(() => {
49
+ navigate(`${require_routes.Route.SUCCESS}?messageType=${require_Success.MessageType.Login}`);
50
+ }, [navigate]);
51
+ const onSubmit = (0, react.useCallback)(async (data) => {
38
52
  try {
39
- await B?.(e), V();
53
+ await handleLogin?.(data);
54
+ onSuccess();
40
55
  } catch {
41
- F("root", {
56
+ setError("root", {
42
57
  type: "server",
43
58
  message: "Invalid username or password"
44
59
  });
45
60
  }
46
61
  }, [
47
- B,
48
- F,
49
- V
62
+ handleLogin,
63
+ setError,
64
+ onSuccess
50
65
  ]);
51
- return v(() => {
52
- M && !N && M.username && M.token && t(M.username, M.token);
53
- }, [M, N]), k ? /* @__PURE__ */ h(u, { children: /* @__PURE__ */ h(d, { children: /* @__PURE__ */ g(f, { children: [
54
- /* @__PURE__ */ h(s, {}),
55
- /* @__PURE__ */ h(c, {
56
- errors: z,
57
- handleSubmit: I,
58
- isValid: R,
59
- onSubmit: H,
60
- register: L
66
+ (0, react.useEffect)(() => {
67
+ if (data && !isMutating && data.username && data.token) require_storage.saveAuth(data.username, data.token);
68
+ }, [data, isMutating]);
69
+ return !next ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_NotFound.default, {}) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Dialog.default, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_styles$1.SecurityContainer, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_styles$1.SecurityForm, { children: [
70
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_styles.default, {}),
71
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Login.default, {
72
+ errors,
73
+ handleSubmit,
74
+ isValid,
75
+ onSubmit,
76
+ register
61
77
  }),
62
- A && /* @__PURE__ */ g(C, {
78
+ createUserEnabled && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_mui_material.Typography, {
63
79
  align: "center",
64
80
  sx: {
65
81
  mt: 2,
66
82
  fontSize: 12
67
83
  },
68
84
  variant: "body2",
69
- children: [n("security.login.noUserQuestion"), /* @__PURE__ */ h(S, {
70
- href: j,
85
+ children: [t("security.login.noUserQuestion"), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mui_material.Link, {
86
+ href: addUserLink,
71
87
  sx: { ml: 1 },
72
- children: n("security.login.createUser")
88
+ children: t("security.login.createUser")
73
89
  })]
74
90
  })
75
- ] }) }) }) : /* @__PURE__ */ h(o, {});
91
+ ] }) }) });
76
92
  };
77
93
  //#endregion
78
- export { O as default };
94
+ exports.default = Login;
79
95
 
80
96
  //# sourceMappingURL=Login.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Login.js","names":["yupResolver","Link","Typography","React","useCallback","useEffect","useForm","useTranslation","useLocation","useNavigate","useDataMutation","LoginFormValues","LoginForm","LoginFormHeader","NotFound","getConfiguration","SecurityLayout","LoginBody","normalizeAuthError","saveAuth","stripTrailingSlash","Route","loginSchema","MessageType","SecurityContainer","SecurityForm","getSecurityUrlParams","configuration","basePath","base","Login","FC","t","location","navigate","next","createUserEnabled","flags","createUser","addUserLink","ADD_USER","data","isMutating","trigger","form","mode","resolver","setError","handleSubmit","register","formState","isValid","errors","handleLogin","body","username","password","err","onSuccess","SUCCESS","onSubmit","type","message","token","mt","fontSize","ml"],"sources":["../../../src/sections/Security/Login.tsx"],"sourcesContent":["import { yupResolver } from '@hookform/resolvers/yup';\nimport { Link, Typography } from '@mui/material';\nimport React, { useCallback, useEffect } from 'react';\nimport { useForm } from 'react-hook-form';\nimport { useTranslation } from 'react-i18next';\nimport { useLocation, useNavigate } from 'react-router';\n\nimport { useDataMutation } from '../../api/use-data-mutation';\nimport type { LoginFormValues } from '../../components/LoginForm/Login';\nimport LoginForm from '../../components/LoginForm/Login';\nimport LoginFormHeader from '../../components/LoginForm/styles';\nimport NotFound from '../../components/NotFound';\nimport { getConfiguration } from '../../configuration';\nimport SecurityLayout from '../../layouts/Security/Dialog';\nimport type { LoginBody } from '../../providers/AuthProvider/types';\nimport { normalizeAuthError } from '../../providers/AuthProvider/utils';\nimport { saveAuth } from '../../store/storage';\nimport { stripTrailingSlash } from '../../store/utils';\nimport { Route } from '../../utils';\nimport { loginSchema } from '../../utils/schemas';\nimport { MessageType } from './Success';\nimport { SecurityContainer, SecurityForm } from './styles';\nimport { getSecurityUrlParams } from './utils';\n\nconst configuration = getConfiguration();\nconst basePath = stripTrailingSlash(configuration.base);\n\nconst Login: React.FC = () => {\n const { t } = useTranslation();\n const location = useLocation();\n const navigate = useNavigate();\n const { next } = getSecurityUrlParams(location);\n const createUserEnabled = configuration?.flags?.createUser;\n const addUserLink = Route.ADD_USER + (next ? '?next=' + next : '');\n\n const { data, isMutating, trigger } = useDataMutation<LoginBody>(basePath, next, 'POST');\n\n const form = useForm<LoginFormValues>({\n mode: 'onChange',\n resolver: yupResolver(loginSchema),\n });\n\n const {\n setError,\n handleSubmit,\n register,\n formState: { isValid, errors },\n } = form;\n\n const handleLogin = async (body: { username: string; password: string }) => {\n try {\n await trigger(body);\n } catch (err) {\n throw normalizeAuthError(err);\n }\n };\n\n const onSuccess = useCallback(() => {\n navigate(`${Route.SUCCESS}?messageType=${MessageType.Login}`);\n }, [navigate]);\n\n const onSubmit = useCallback(\n async (data: LoginFormValues) => {\n try {\n await handleLogin?.(data);\n onSuccess();\n } catch {\n setError('root', {\n type: 'server',\n // TODO: add translation key\n message: 'Invalid username or password',\n });\n }\n },\n [handleLogin, setError, onSuccess]\n );\n\n useEffect(() => {\n if (data && !isMutating && data.username && data.token) {\n saveAuth(data.username, data.token);\n }\n }, [data, isMutating]);\n\n return !next ? (\n <NotFound />\n ) : (\n <SecurityLayout>\n <SecurityContainer>\n <SecurityForm>\n <LoginFormHeader />\n <LoginForm\n errors={errors}\n handleSubmit={handleSubmit}\n isValid={isValid}\n onSubmit={onSubmit}\n register={register}\n />\n {createUserEnabled && (\n <Typography align=\"center\" sx={{ mt: 2, fontSize: 12 }} variant=\"body2\">\n {t('security.login.noUserQuestion')}\n <Link href={addUserLink} sx={{ ml: 1 }}>\n {t('security.login.createUser')}\n </Link>\n </Typography>\n )}\n </SecurityForm>\n </SecurityContainer>\n </SecurityLayout>\n );\n};\n\nexport default Login;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAwBA,IAAM2B,IAAgBZ,GAAkB,EAClCa,IAAWR,EAAmBO,EAAcE,KAAK,EAEjDC,UAAwB;CAC5B,IAAM,EAAEE,SAAMzB,GAAgB,EACxB0B,IAAWzB,GAAa,EACxB0B,IAAWzB,GAAa,EACxB,EAAE0B,YAAST,EAAqBO,EAAS,EACzCG,IAAoBT,GAAeU,OAAOC,YAC1CC,IAAclB,EAAMmB,YAAYL,IAAO,WAAWA,IAAO,KAEzD,EAAEM,SAAMC,eAAYC,eAAYjC,EAA2BkB,GAAUO,GAAM,OAAO,EAOlF,EACJY,aACAC,iBACAC,aACAC,WAAW,EAAEC,YAASC,gBATX9C,EAAyB;EACpCuC,MAAM;EACNC,UAAU9C,EAAYsB,EAAW;EAClC,CAAC,EASI+B,IAAc,OAAOC,MAAiD;AAC1E,MAAI;AACF,SAAMX,EAAQW,EAAK;WACZG,GAAK;AACZ,SAAMvC,EAAmBuC,EAAI;;IAI3BC,IAAYtD,QAAkB;AAClC8B,IAAS,GAAGb,EAAMsC,QAAO,eAAgBpC,EAAYO,QAAQ;IAC5D,CAACI,EAAS,CAAC,EAER0B,IAAWxD,EACf,OAAOqC,MAA0B;AAC/B,MAAI;AAEFiB,GADA,MAAML,IAAcZ,EAAK,EACzBiB,GAAW;UACL;AACNX,KAAS,QAAQ;IACfc,MAAM;IAENC,SAAS;IACV,CAAC;;IAGN;EAACT;EAAaN;EAAUW;EAC1B,CAAC;AAQD,QANArD,QAAgB;AACd,EAAIoC,KAAQ,CAACC,KAAcD,EAAKc,YAAYd,EAAKsB,SAC/C5C,EAASsB,EAAKc,UAAUd,EAAKsB,MAAM;IAEpC,CAACtB,GAAMC,EAAW,CAAC,EAEdP,IAGN,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD,EAAA,UAAA;EACE,kBAAC,GAAD,EAAgB,CAAA;EAChB,kBAAC,GAAD;GACUiB;GACMJ;GACLG;GACCS;GACAX;GAAS,CAAA;EAEpBb,KACC,kBAAC,GAAD;GAAY,OAAM;GAAS,IAAI;IAAE4B,IAAI;IAAGC,UAAU;IAAI;GAAE,SAAQ;aAAhE,CACGjC,EAAE,gCAAgC,EACnC,kBAAC,GAAD;IAAM,MAAMO;IAAa,IAAI,EAAE2B,IAAI,GAAG;cACnClC,EAAE,4BAA4B;IAC3B,CAAA,CAET;;EACW,EAAA,CAAA,EACG,CAAA,EAEtB,CAAA,GAxBC,kBAAC,GAAD,EAAY,CAAA"}
1
+ {"version":3,"file":"Login.js","names":["yupResolver","Link","Typography","React","useCallback","useEffect","useForm","useTranslation","useLocation","useNavigate","useDataMutation","LoginFormValues","LoginForm","LoginFormHeader","NotFound","getConfiguration","SecurityLayout","LoginBody","normalizeAuthError","saveAuth","stripTrailingSlash","Route","loginSchema","MessageType","SecurityContainer","SecurityForm","getSecurityUrlParams","configuration","basePath","base","Login","FC","t","location","navigate","next","createUserEnabled","flags","createUser","addUserLink","ADD_USER","data","isMutating","trigger","form","mode","resolver","setError","handleSubmit","register","formState","isValid","errors","handleLogin","body","username","password","err","onSuccess","SUCCESS","onSubmit","type","message","token","mt","fontSize","ml"],"sources":["../../../src/sections/Security/Login.tsx"],"sourcesContent":["import { yupResolver } from '@hookform/resolvers/yup';\nimport { Link, Typography } from '@mui/material';\nimport React, { useCallback, useEffect } from 'react';\nimport { useForm } from 'react-hook-form';\nimport { useTranslation } from 'react-i18next';\nimport { useLocation, useNavigate } from 'react-router';\n\nimport { useDataMutation } from '../../api/use-data-mutation';\nimport type { LoginFormValues } from '../../components/LoginForm/Login';\nimport LoginForm from '../../components/LoginForm/Login';\nimport LoginFormHeader from '../../components/LoginForm/styles';\nimport NotFound from '../../components/NotFound';\nimport { getConfiguration } from '../../configuration';\nimport SecurityLayout from '../../layouts/Security/Dialog';\nimport type { LoginBody } from '../../providers/AuthProvider/types';\nimport { normalizeAuthError } from '../../providers/AuthProvider/utils';\nimport { saveAuth } from '../../store/storage';\nimport { stripTrailingSlash } from '../../store/utils';\nimport { Route } from '../../utils';\nimport { loginSchema } from '../../utils/schemas';\nimport { MessageType } from './Success';\nimport { SecurityContainer, SecurityForm } from './styles';\nimport { getSecurityUrlParams } from './utils';\n\nconst configuration = getConfiguration();\nconst basePath = stripTrailingSlash(configuration.base);\n\nconst Login: React.FC = () => {\n const { t } = useTranslation();\n const location = useLocation();\n const navigate = useNavigate();\n const { next } = getSecurityUrlParams(location);\n const createUserEnabled = configuration?.flags?.createUser;\n const addUserLink = Route.ADD_USER + (next ? '?next=' + next : '');\n\n const { data, isMutating, trigger } = useDataMutation<LoginBody>(basePath, next, 'POST');\n\n const form = useForm<LoginFormValues>({\n mode: 'onChange',\n resolver: yupResolver(loginSchema),\n });\n\n const {\n setError,\n handleSubmit,\n register,\n formState: { isValid, errors },\n } = form;\n\n const handleLogin = async (body: { username: string; password: string }) => {\n try {\n await trigger(body);\n } catch (err) {\n throw normalizeAuthError(err);\n }\n };\n\n const onSuccess = useCallback(() => {\n navigate(`${Route.SUCCESS}?messageType=${MessageType.Login}`);\n }, [navigate]);\n\n const onSubmit = useCallback(\n async (data: LoginFormValues) => {\n try {\n await handleLogin?.(data);\n onSuccess();\n } catch {\n setError('root', {\n type: 'server',\n // TODO: add translation key\n message: 'Invalid username or password',\n });\n }\n },\n [handleLogin, setError, onSuccess]\n );\n\n useEffect(() => {\n if (data && !isMutating && data.username && data.token) {\n saveAuth(data.username, data.token);\n }\n }, [data, isMutating]);\n\n return !next ? (\n <NotFound />\n ) : (\n <SecurityLayout>\n <SecurityContainer>\n <SecurityForm>\n <LoginFormHeader />\n <LoginForm\n errors={errors}\n handleSubmit={handleSubmit}\n isValid={isValid}\n onSubmit={onSubmit}\n register={register}\n />\n {createUserEnabled && (\n <Typography align=\"center\" sx={{ mt: 2, fontSize: 12 }} variant=\"body2\">\n {t('security.login.noUserQuestion')}\n <Link href={addUserLink} sx={{ ml: 1 }}>\n {t('security.login.createUser')}\n </Link>\n </Typography>\n )}\n </SecurityForm>\n </SecurityContainer>\n </SecurityLayout>\n );\n};\n\nexport default Login;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,IAAM2B,gBAAgBZ,sBAAAA,kBAAkB;AACxC,IAAMa,WAAWR,cAAAA,mBAAmBO,cAAcE,KAAK;AAEvD,IAAMC,cAAwB;CAC5B,MAAM,EAAEE,OAAAA,GAAAA,cAAAA,iBAAsB;CAC9B,MAAMC,YAAAA,GAAAA,aAAAA,cAAwB;CAC9B,MAAMC,YAAAA,GAAAA,aAAAA,cAAwB;CAC9B,MAAM,EAAEC,SAAST,gBAAAA,qBAAqBO,SAAS;CAC/C,MAAMG,oBAAoBT,eAAeU,OAAOC;CAChD,MAAMC,cAAclB,eAAAA,MAAMmB,YAAYL,OAAO,WAAWA,OAAO;CAE/D,MAAM,EAAEM,MAAMC,YAAYC,YAAYjC,0BAAAA,gBAA2BkB,UAAUO,MAAM,OAAO;CAOxF,MAAM,EACJY,UACAC,cACAC,UACAC,WAAW,EAAEC,SAASC,cAAAA,GAAAA,gBAAAA,SATc;EACpCP,MAAM;EACNC,WAAAA,GAAAA,wBAAAA,aAAsBxB,gBAAAA,YAAW;EAClC,CAAC;CASF,MAAM+B,cAAc,OAAOC,SAAiD;AAC1E,MAAI;AACF,SAAMX,QAAQW,KAAK;WACZG,KAAK;AACZ,SAAMvC,gBAAAA,mBAAmBuC,IAAI;;;CAIjC,MAAMC,aAAAA,GAAAA,MAAAA,mBAA8B;AAClCxB,WAAS,GAAGb,eAAAA,MAAMsC,QAAO,eAAgBpC,gBAAAA,YAAYO,QAAQ;IAC5D,CAACI,SAAS,CAAC;CAEd,MAAM0B,YAAAA,GAAAA,MAAAA,aACJ,OAAOnB,SAA0B;AAC/B,MAAI;AACF,SAAMY,cAAcZ,KAAK;AACzBiB,cAAW;UACL;AACNX,YAAS,QAAQ;IACfc,MAAM;IAENC,SAAS;IACV,CAAC;;IAGN;EAACT;EAAaN;EAAUW;EAC1B,CAAC;AAEDrD,EAAAA,GAAAA,MAAAA,iBAAgB;AACd,MAAIoC,QAAQ,CAACC,cAAcD,KAAKc,YAAYd,KAAKsB,MAC/C5C,iBAAAA,SAASsB,KAAKc,UAAUd,KAAKsB,MAAM;IAEpC,CAACtB,MAAMC,WAAW,CAAC;AAEtB,QAAO,CAACP,OACN,iBAAA,GAAA,kBAAA,KAAC,iBAAA,SAAD,EAAY,CAAA,GAEZ,iBAAA,GAAA,kBAAA,KAAC,eAAA,SAAD,EAAA,UACE,iBAAA,GAAA,kBAAA,KAAC,iBAAA,mBAAD,EAAA,UACE,iBAAA,GAAA,kBAAA,MAAC,iBAAA,cAAD,EAAA,UAAA;EACE,iBAAA,GAAA,kBAAA,KAAC,eAAA,SAAD,EAAgB,CAAA;EAChB,iBAAA,GAAA,kBAAA,KAAC,cAAA,SAAD;GACUiB;GACMJ;GACLG;GACCS;GACAX;GAAS,CAAA;EAEpBb,qBACC,iBAAA,GAAA,kBAAA,MAAC,cAAA,YAAD;GAAY,OAAM;GAAS,IAAI;IAAE4B,IAAI;IAAGC,UAAU;IAAI;GAAE,SAAQ;aAAhE,CACGjC,EAAE,gCAAgC,EACnC,iBAAA,GAAA,kBAAA,KAAC,cAAA,MAAD;IAAM,MAAMO;IAAa,IAAI,EAAE2B,IAAI,GAAG;cACnClC,EAAE,4BAA4B;IAC3B,CAAA,CAET;;EACW,EAAA,CAAA,EACG,CAAA,EAEtB,CAAA"}