@lokalise/harmony 1.40.2 → 1.40.3-exp-epic2x.2

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 (390) hide show
  1. package/dist/harmony.css +110 -317
  2. package/dist/harmony100.cjs +9 -10
  3. package/dist/harmony100.cjs.map +1 -1
  4. package/dist/harmony100.mjs +11 -12
  5. package/dist/harmony100.mjs.map +1 -1
  6. package/dist/harmony101.cjs +20 -11
  7. package/dist/harmony101.cjs.map +1 -1
  8. package/dist/harmony101.mjs +20 -11
  9. package/dist/harmony101.mjs.map +1 -1
  10. package/dist/harmony102.cjs +99 -6
  11. package/dist/harmony102.cjs.map +1 -1
  12. package/dist/harmony102.mjs +81 -5
  13. package/dist/harmony102.mjs.map +1 -1
  14. package/dist/harmony103.cjs +14 -9
  15. package/dist/harmony103.cjs.map +1 -1
  16. package/dist/harmony103.mjs +13 -8
  17. package/dist/harmony103.mjs.map +1 -1
  18. package/dist/harmony104.cjs +21 -10
  19. package/dist/harmony104.cjs.map +1 -1
  20. package/dist/harmony104.mjs +20 -9
  21. package/dist/harmony104.mjs.map +1 -1
  22. package/dist/harmony105.cjs +85 -55
  23. package/dist/harmony105.cjs.map +1 -1
  24. package/dist/harmony105.mjs +85 -55
  25. package/dist/harmony105.mjs.map +1 -1
  26. package/dist/harmony106.cjs +29 -41
  27. package/dist/harmony106.cjs.map +1 -1
  28. package/dist/harmony106.mjs +29 -41
  29. package/dist/harmony106.mjs.map +1 -1
  30. package/dist/harmony107.cjs +10 -6
  31. package/dist/harmony107.cjs.map +1 -1
  32. package/dist/harmony107.mjs +9 -5
  33. package/dist/harmony107.mjs.map +1 -1
  34. package/dist/harmony108.cjs +12 -9
  35. package/dist/harmony108.cjs.map +1 -1
  36. package/dist/harmony108.mjs +11 -8
  37. package/dist/harmony108.mjs.map +1 -1
  38. package/dist/harmony109.cjs +15 -24
  39. package/dist/harmony109.cjs.map +1 -1
  40. package/dist/harmony109.mjs +14 -23
  41. package/dist/harmony109.mjs.map +1 -1
  42. package/dist/harmony110.cjs +19 -6
  43. package/dist/harmony110.cjs.map +1 -1
  44. package/dist/harmony110.mjs +18 -5
  45. package/dist/harmony110.mjs.map +1 -1
  46. package/dist/harmony111.cjs +7 -18
  47. package/dist/harmony111.cjs.map +1 -1
  48. package/dist/harmony111.mjs +9 -20
  49. package/dist/harmony111.mjs.map +1 -1
  50. package/dist/harmony112.cjs +27 -12
  51. package/dist/harmony112.cjs.map +1 -1
  52. package/dist/harmony112.mjs +26 -11
  53. package/dist/harmony112.mjs.map +1 -1
  54. package/dist/harmony113.cjs +10 -12
  55. package/dist/harmony113.cjs.map +1 -1
  56. package/dist/harmony113.mjs +10 -12
  57. package/dist/harmony113.mjs.map +1 -1
  58. package/dist/harmony114.cjs +38 -18
  59. package/dist/harmony114.cjs.map +1 -1
  60. package/dist/harmony114.mjs +38 -18
  61. package/dist/harmony114.mjs.map +1 -1
  62. package/dist/harmony115.cjs +11 -98
  63. package/dist/harmony115.cjs.map +1 -1
  64. package/dist/harmony115.mjs +11 -81
  65. package/dist/harmony115.mjs.map +1 -1
  66. package/dist/harmony116.cjs +19 -84
  67. package/dist/harmony116.cjs.map +1 -1
  68. package/dist/harmony116.mjs +19 -84
  69. package/dist/harmony116.mjs.map +1 -1
  70. package/dist/harmony117.cjs +35 -29
  71. package/dist/harmony117.cjs.map +1 -1
  72. package/dist/harmony117.mjs +35 -29
  73. package/dist/harmony117.mjs.map +1 -1
  74. package/dist/harmony119.cjs +20 -5
  75. package/dist/harmony119.cjs.map +1 -1
  76. package/dist/harmony119.mjs +20 -5
  77. package/dist/harmony119.mjs.map +1 -1
  78. package/dist/harmony120.cjs +6 -132
  79. package/dist/harmony120.cjs.map +1 -1
  80. package/dist/harmony120.mjs +5 -131
  81. package/dist/harmony120.mjs.map +1 -1
  82. package/dist/harmony121.cjs +12 -9
  83. package/dist/harmony121.cjs.map +1 -1
  84. package/dist/harmony121.mjs +12 -9
  85. package/dist/harmony121.mjs.map +1 -1
  86. package/dist/harmony122.cjs +6 -6
  87. package/dist/harmony122.cjs.map +1 -1
  88. package/dist/harmony122.mjs +5 -5
  89. package/dist/harmony122.mjs.map +1 -1
  90. package/dist/harmony123.cjs +6 -41
  91. package/dist/harmony123.cjs.map +1 -1
  92. package/dist/harmony123.mjs +5 -40
  93. package/dist/harmony123.mjs.map +1 -1
  94. package/dist/harmony124.cjs +96 -60
  95. package/dist/harmony124.cjs.map +1 -1
  96. package/dist/harmony124.mjs +96 -60
  97. package/dist/harmony124.mjs.map +1 -1
  98. package/dist/harmony125.cjs +13 -7
  99. package/dist/harmony125.cjs.map +1 -1
  100. package/dist/harmony125.mjs +13 -7
  101. package/dist/harmony125.mjs.map +1 -1
  102. package/dist/harmony126.cjs +15 -7
  103. package/dist/harmony126.cjs.map +1 -1
  104. package/dist/harmony126.mjs +14 -6
  105. package/dist/harmony126.mjs.map +1 -1
  106. package/dist/harmony127.cjs +37 -6
  107. package/dist/harmony127.cjs.map +1 -1
  108. package/dist/harmony127.mjs +36 -5
  109. package/dist/harmony127.mjs.map +1 -1
  110. package/dist/harmony128.cjs +29 -6
  111. package/dist/harmony128.cjs.map +1 -1
  112. package/dist/harmony128.mjs +28 -5
  113. package/dist/harmony128.mjs.map +1 -1
  114. package/dist/harmony130.cjs +10 -63
  115. package/dist/harmony130.cjs.map +1 -1
  116. package/dist/harmony130.mjs +9 -62
  117. package/dist/harmony130.mjs.map +1 -1
  118. package/dist/harmony131.cjs +6 -88
  119. package/dist/harmony131.cjs.map +1 -1
  120. package/dist/harmony131.mjs +5 -87
  121. package/dist/harmony131.mjs.map +1 -1
  122. package/dist/harmony132.cjs +6 -15
  123. package/dist/harmony132.cjs.map +1 -1
  124. package/dist/harmony132.mjs +6 -15
  125. package/dist/harmony132.mjs.map +1 -1
  126. package/dist/harmony133.cjs +25 -97
  127. package/dist/harmony133.cjs.map +1 -1
  128. package/dist/harmony133.mjs +24 -96
  129. package/dist/harmony133.mjs.map +1 -1
  130. package/dist/harmony134.cjs +7 -14
  131. package/dist/harmony134.cjs.map +1 -1
  132. package/dist/harmony134.mjs +6 -13
  133. package/dist/harmony134.mjs.map +1 -1
  134. package/dist/harmony135.cjs +13 -15
  135. package/dist/harmony135.cjs.map +1 -1
  136. package/dist/harmony135.mjs +12 -14
  137. package/dist/harmony135.mjs.map +1 -1
  138. package/dist/harmony136.cjs +7 -37
  139. package/dist/harmony136.cjs.map +1 -1
  140. package/dist/harmony136.mjs +6 -36
  141. package/dist/harmony136.mjs.map +1 -1
  142. package/dist/harmony137.cjs +12 -27
  143. package/dist/harmony137.cjs.map +1 -1
  144. package/dist/harmony137.mjs +12 -27
  145. package/dist/harmony137.mjs.map +1 -1
  146. package/dist/harmony138.cjs +14 -12
  147. package/dist/harmony138.cjs.map +1 -1
  148. package/dist/harmony138.mjs +14 -12
  149. package/dist/harmony138.mjs.map +1 -1
  150. package/dist/harmony139.cjs +14 -13
  151. package/dist/harmony139.cjs.map +1 -1
  152. package/dist/harmony139.mjs +14 -13
  153. package/dist/harmony139.mjs.map +1 -1
  154. package/dist/harmony14.cjs +1 -1
  155. package/dist/harmony14.mjs +1 -1
  156. package/dist/harmony140.cjs +10 -15
  157. package/dist/harmony140.cjs.map +1 -1
  158. package/dist/harmony140.mjs +10 -15
  159. package/dist/harmony140.mjs.map +1 -1
  160. package/dist/harmony141.cjs +16 -7
  161. package/dist/harmony141.cjs.map +1 -1
  162. package/dist/harmony141.mjs +16 -7
  163. package/dist/harmony141.mjs.map +1 -1
  164. package/dist/harmony142.cjs +20 -56
  165. package/dist/harmony142.cjs.map +1 -1
  166. package/dist/harmony142.mjs +20 -56
  167. package/dist/harmony142.mjs.map +1 -1
  168. package/dist/harmony143.cjs +11 -59
  169. package/dist/harmony143.cjs.map +1 -1
  170. package/dist/harmony143.mjs +11 -59
  171. package/dist/harmony143.mjs.map +1 -1
  172. package/dist/harmony144.cjs +7 -19
  173. package/dist/harmony144.cjs.map +1 -1
  174. package/dist/harmony144.mjs +6 -18
  175. package/dist/harmony144.mjs.map +1 -1
  176. package/dist/harmony145.cjs +11 -10
  177. package/dist/harmony145.cjs.map +1 -1
  178. package/dist/harmony145.mjs +11 -10
  179. package/dist/harmony145.mjs.map +1 -1
  180. package/dist/harmony146.cjs +29 -13
  181. package/dist/harmony146.cjs.map +1 -1
  182. package/dist/harmony146.mjs +29 -13
  183. package/dist/harmony146.mjs.map +1 -1
  184. package/dist/harmony147.cjs +12 -19
  185. package/dist/harmony147.cjs.map +1 -1
  186. package/dist/harmony147.mjs +12 -19
  187. package/dist/harmony147.mjs.map +1 -1
  188. package/dist/harmony17.cjs +1 -1
  189. package/dist/harmony17.mjs +1 -1
  190. package/dist/harmony25.cjs +1 -1
  191. package/dist/harmony25.mjs +1 -1
  192. package/dist/harmony26.cjs +1 -1
  193. package/dist/harmony26.mjs +1 -1
  194. package/dist/harmony4.cjs +5 -24
  195. package/dist/harmony4.cjs.map +1 -1
  196. package/dist/harmony4.mjs +5 -24
  197. package/dist/harmony4.mjs.map +1 -1
  198. package/dist/harmony5.cjs +1 -1
  199. package/dist/harmony5.mjs +1 -1
  200. package/dist/harmony6.cjs +3 -3
  201. package/dist/harmony6.mjs +3 -3
  202. package/dist/harmony7.cjs +1 -1
  203. package/dist/harmony7.mjs +1 -1
  204. package/dist/harmony75.cjs +1 -1
  205. package/dist/harmony75.mjs +1 -1
  206. package/dist/harmony76.cjs +39 -6
  207. package/dist/harmony76.cjs.map +1 -1
  208. package/dist/harmony76.mjs +38 -5
  209. package/dist/harmony76.mjs.map +1 -1
  210. package/dist/harmony77.cjs +36 -8
  211. package/dist/harmony77.cjs.map +1 -1
  212. package/dist/harmony77.mjs +37 -9
  213. package/dist/harmony77.mjs.map +1 -1
  214. package/dist/harmony78.cjs +9 -18
  215. package/dist/harmony78.cjs.map +1 -1
  216. package/dist/harmony78.mjs +8 -17
  217. package/dist/harmony78.mjs.map +1 -1
  218. package/dist/harmony79.cjs +6 -21
  219. package/dist/harmony79.cjs.map +1 -1
  220. package/dist/harmony79.mjs +8 -23
  221. package/dist/harmony79.mjs.map +1 -1
  222. package/dist/harmony8.cjs +5 -5
  223. package/dist/harmony8.mjs +5 -5
  224. package/dist/harmony80.cjs +28 -4
  225. package/dist/harmony80.cjs.map +1 -1
  226. package/dist/harmony80.mjs +28 -4
  227. package/dist/harmony80.mjs.map +1 -1
  228. package/dist/harmony81.cjs +3 -32
  229. package/dist/harmony81.cjs.map +1 -1
  230. package/dist/harmony81.mjs +3 -32
  231. package/dist/harmony81.mjs.map +1 -1
  232. package/dist/harmony82.cjs +30 -29
  233. package/dist/harmony82.cjs.map +1 -1
  234. package/dist/harmony82.mjs +31 -30
  235. package/dist/harmony82.mjs.map +1 -1
  236. package/dist/harmony83.cjs +43 -19
  237. package/dist/harmony83.cjs.map +1 -1
  238. package/dist/harmony83.mjs +43 -19
  239. package/dist/harmony83.mjs.map +1 -1
  240. package/dist/harmony84.cjs +27 -29
  241. package/dist/harmony84.cjs.map +1 -1
  242. package/dist/harmony84.mjs +27 -29
  243. package/dist/harmony84.mjs.map +1 -1
  244. package/dist/harmony85.cjs +64 -57
  245. package/dist/harmony85.cjs.map +1 -1
  246. package/dist/harmony85.mjs +64 -57
  247. package/dist/harmony85.mjs.map +1 -1
  248. package/dist/harmony86.cjs +15 -9
  249. package/dist/harmony86.cjs.map +1 -1
  250. package/dist/harmony86.mjs +14 -8
  251. package/dist/harmony86.mjs.map +1 -1
  252. package/dist/harmony87.cjs +3 -8
  253. package/dist/harmony87.cjs.map +1 -1
  254. package/dist/harmony87.mjs +3 -8
  255. package/dist/harmony87.mjs.map +1 -1
  256. package/dist/harmony88.cjs +163 -26
  257. package/dist/harmony88.cjs.map +1 -1
  258. package/dist/harmony88.mjs +164 -27
  259. package/dist/harmony88.mjs.map +1 -1
  260. package/dist/harmony89.cjs +44 -3
  261. package/dist/harmony89.cjs.map +1 -1
  262. package/dist/harmony89.mjs +44 -3
  263. package/dist/harmony89.mjs.map +1 -1
  264. package/dist/harmony90.cjs +9 -30
  265. package/dist/harmony90.cjs.map +1 -1
  266. package/dist/harmony90.mjs +11 -32
  267. package/dist/harmony90.mjs.map +1 -1
  268. package/dist/harmony91.cjs +13 -44
  269. package/dist/harmony91.cjs.map +1 -1
  270. package/dist/harmony91.mjs +12 -43
  271. package/dist/harmony91.mjs.map +1 -1
  272. package/dist/harmony92.cjs +2 -28
  273. package/dist/harmony92.cjs.map +1 -1
  274. package/dist/harmony92.mjs +3 -29
  275. package/dist/harmony92.mjs.map +1 -1
  276. package/dist/harmony93.cjs +15 -63
  277. package/dist/harmony93.cjs.map +1 -1
  278. package/dist/harmony93.mjs +15 -63
  279. package/dist/harmony93.mjs.map +1 -1
  280. package/dist/harmony94.cjs +74 -13
  281. package/dist/harmony94.cjs.map +1 -1
  282. package/dist/harmony94.mjs +75 -14
  283. package/dist/harmony94.mjs.map +1 -1
  284. package/dist/harmony95.cjs +12 -3
  285. package/dist/harmony95.cjs.map +1 -1
  286. package/dist/harmony95.mjs +12 -3
  287. package/dist/harmony95.mjs.map +1 -1
  288. package/dist/harmony96.cjs +30 -11
  289. package/dist/harmony96.cjs.map +1 -1
  290. package/dist/harmony96.mjs +30 -11
  291. package/dist/harmony96.mjs.map +1 -1
  292. package/dist/harmony97.cjs +10 -22
  293. package/dist/harmony97.cjs.map +1 -1
  294. package/dist/harmony97.mjs +9 -21
  295. package/dist/harmony97.mjs.map +1 -1
  296. package/dist/harmony98.cjs +44 -163
  297. package/dist/harmony98.cjs.map +1 -1
  298. package/dist/harmony98.mjs +44 -163
  299. package/dist/harmony98.mjs.map +1 -1
  300. package/dist/harmony99.cjs +9 -44
  301. package/dist/harmony99.cjs.map +1 -1
  302. package/dist/harmony99.mjs +8 -43
  303. package/dist/harmony99.mjs.map +1 -1
  304. package/dist/types/src/components/Sidebar/Sidebar.d.ts +15 -49
  305. package/dist/types/src/components/Sidebar/SidebarContent/SidebarContent.d.ts +7 -0
  306. package/dist/types/src/components/Sidebar/SidebarContext.d.ts +3 -0
  307. package/dist/types/src/components/Sidebar/SidebarProvider.d.ts +3 -0
  308. package/dist/types/src/components/Sidebar/Widgets/Avatar/Avatar.d.ts +5 -0
  309. package/dist/types/src/components/Sidebar/Widgets/HelpMenu/HelpMenu.d.ts +13 -0
  310. package/dist/types/src/components/Sidebar/Widgets/HelpMenu/HelpMenu.test.d.ts +1 -0
  311. package/dist/types/src/components/Sidebar/Widgets/IconLink/IconLink.test.d.ts +1 -0
  312. package/dist/types/src/components/Sidebar/Widgets/Menu/Menu.d.ts +3 -2
  313. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/BillingMenuItem/BillingMenuItem.d.ts +13 -0
  314. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/CreateNewTeam/CreateNewTeam.d.ts +17 -0
  315. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/CreateNewTeam/CreateNewTeam.test.d.ts +1 -0
  316. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/CreateNewTeamPlaceholder/CreateNewTeamPlaceholder.d.ts +17 -0
  317. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/CreateNewTeamPlaceholder/CreateNewTeamPlaceholder.test.d.ts +1 -0
  318. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/DarkModeToggle/DarkModeToggle.d.ts +18 -0
  319. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileMenu.d.ts +11 -24
  320. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileMenu.stories.d.ts +3 -5
  321. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileSettingsMenuItem/ProfileSettingsMenuItem.d.ts +10 -35
  322. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileSettingsMenuItem/ProfileSettingsMenuItem.test.d.ts +1 -0
  323. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProviderMenuItem/ProviderMenuItem.d.ts +13 -0
  324. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProviderMenuItem/ProviderMenuItem.test.d.ts +1 -0
  325. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamMenuItem/TeamMenuItem.d.ts +1 -3
  326. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamMenuItem/TeamMenuItem.test.d.ts +1 -0
  327. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamSettingsMenuItem/TeamSettingsMenuItem.d.ts +13 -0
  328. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamSettingsMenuItem/TeamSettingsMenuItem.test.d.ts +1 -0
  329. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamSwitch/TeamSwitch.d.ts +5 -7
  330. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamSwitch/TeamSwitch.test.d.ts +1 -0
  331. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/UpgradeMenuItem/UpgradeMenuItem.d.ts +6 -9
  332. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/UpgradeMenuItem/UpgradeMenuItem.test.d.ts +1 -0
  333. package/dist/types/src/components/Sidebar/Widgets/Tasks/utils/content.d.ts +4 -0
  334. package/dist/types/src/components/Sidebar/hooks/useSidebar.d.ts +1 -0
  335. package/dist/types/src/components/Sidebar/hooks/useSidebarDataLoader.d.ts +5 -0
  336. package/dist/types/src/components/Sidebar/types.d.ts +70 -0
  337. package/dist/types/src/features/auth/core/types/jwtTokenPayload.d.ts +16 -10
  338. package/dist/types/src/features/auth/core/types/jwtTokenPayload.fixture.d.ts +15 -11
  339. package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedSessionPayload.d.ts +7 -5
  340. package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedUser.d.ts +1 -1
  341. package/dist/types/src/features/publicApi/hooks/useGetProjectPermissionMetaQuery.d.ts +3 -3
  342. package/dist/types/src/features/publicApi/hooks/useGetTeamUsersQuery.d.ts +1 -1
  343. package/dist/types/src/features/publicApi/hooks/useListPermissionTemplates.d.ts +2 -2
  344. package/dist/types/src/features/publicApi/hooks/useListTeamUsersQuery.d.ts +1 -1
  345. package/dist/types/src/features/publicApi/permissionTemplates.d.ts +8 -8
  346. package/dist/types/src/features/publicApi/projects.d.ts +12 -12
  347. package/dist/types/src/features/publicApi/teamUsers.d.ts +8 -8
  348. package/dist/types/src/features/publicApi/types/permissionTemplateTypes.d.ts +12 -12
  349. package/dist/types/src/features/publicApi/types/permissionTypes.d.ts +2 -2
  350. package/dist/types/src/features/publicApi/types/projectTypes.d.ts +18 -18
  351. package/dist/types/src/features/publicApi/types/teamUserTypes.d.ts +10 -10
  352. package/dist/types/src/utils/user/permissions.d.ts +9 -0
  353. package/dist/types/src/utils/user/permissions.test.d.ts +1 -0
  354. package/dist/types/tests/mocks/sidebar/sidebar.d.ts +14 -0
  355. package/dist/types/tests/utils/sidebar.d.ts +4 -0
  356. package/package.json +1 -1
  357. package/dist/harmony148.cjs +0 -15
  358. package/dist/harmony148.cjs.map +0 -1
  359. package/dist/harmony148.mjs +0 -15
  360. package/dist/harmony148.mjs.map +0 -1
  361. package/dist/harmony149.cjs +0 -9
  362. package/dist/harmony149.cjs.map +0 -1
  363. package/dist/harmony149.mjs +0 -9
  364. package/dist/harmony149.mjs.map +0 -1
  365. package/dist/harmony150.cjs +0 -15
  366. package/dist/harmony150.cjs.map +0 -1
  367. package/dist/harmony150.mjs +0 -15
  368. package/dist/harmony150.mjs.map +0 -1
  369. package/dist/harmony151.cjs +0 -35
  370. package/dist/harmony151.cjs.map +0 -1
  371. package/dist/harmony151.mjs +0 -35
  372. package/dist/harmony151.mjs.map +0 -1
  373. package/dist/harmony152.cjs +0 -17
  374. package/dist/harmony152.cjs.map +0 -1
  375. package/dist/harmony152.mjs +0 -17
  376. package/dist/harmony152.mjs.map +0 -1
  377. package/dist/harmony153.cjs +0 -49
  378. package/dist/harmony153.cjs.map +0 -1
  379. package/dist/harmony153.mjs +0 -49
  380. package/dist/harmony153.mjs.map +0 -1
  381. package/dist/harmony154.cjs +0 -15
  382. package/dist/harmony154.cjs.map +0 -1
  383. package/dist/harmony154.mjs +0 -15
  384. package/dist/harmony154.mjs.map +0 -1
  385. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileMenuContent.d.ts +0 -6
  386. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileMenuContext.d.ts +0 -3
  387. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileMenuProvider.d.ts +0 -7
  388. package/dist/types/src/components/Sidebar/utils/index.d.ts +0 -4
  389. /package/dist/types/src/components/Sidebar/Widgets/{ProfileMenu/ProfileMenu.test.d.ts → Avatar/Avatar.test.d.ts} +0 -0
  390. /package/dist/types/src/components/Sidebar/{UpgradeIcon → Widgets/ProfileMenu/UpgradeIcon}/UpgradeIcon.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"harmony4.mjs","sources":["../src/components/Sidebar/Sidebar.tsx"],"sourcesContent":["import type { HTMLProps, PropsWithChildren, ReactNode } from 'react'\nimport styles from './Sidebar.module.css'\nimport { Avatar } from './Widgets/Avatar/Avatar'\nimport { IconLink } from './Widgets/IconLink/IconLink'\nimport { Menu } from './Widgets/Menu/Menu'\nimport { ProfileMenu } from './Widgets/ProfileMenu/ProfileMenu'\nimport { ProfileSettingsMenuItem } from './Widgets/ProfileMenu/ProfileSettingsMenuItem/ProfileSettingsMenuItem'\nimport { TeamMenuItem } from './Widgets/ProfileMenu/TeamMenuItem/TeamMenuItem'\nimport { TeamSwitch } from './Widgets/ProfileMenu/TeamSwitch/TeamSwitch'\nimport { UpgradeMenuItem } from './Widgets/ProfileMenu/UpgradeMenuItem/UpgradeMenuItem'\nimport { Tasks } from './Widgets/Tasks'\n\ntype SidebarProps = HTMLProps<HTMLElement> & {\n\tchildren: ReactNode\n}\n\n/**\n * Sidebar is a self-contained component using widgets\n */\nconst Sidebar = ({ children, ...navProps }: SidebarProps) => (\n\t<nav {...navProps} className={styles.sidebarContainer}>\n\t\t{children}\n\t</nav>\n)\n\n/**\n * Use to wrap elements to the top section of the Sidebar\n */\nconst Top = ({ children }: PropsWithChildren) => <div>{children}</div>\nSidebar.Top = Top\n\n/**\n * Use to wrap elements to the bottom section of the Sidebar\n */\nconst Bottom = ({ children }: PropsWithChildren) => <div>{children}</div>\nSidebar.Bottom = Bottom\n\nSidebar.Avatar = Avatar\nSidebar.IconLink = IconLink\nSidebar.Menu = Menu\nSidebar.ProfileMenu = ProfileMenu\nSidebar.TeamSwitch = TeamSwitch\nSidebar.TeamMenuItem = TeamMenuItem\nSidebar.UpgradeMenuItem = UpgradeMenuItem\nSidebar.ProfileSettingsMenuItem = ProfileSettingsMenuItem\nSidebar.Tasks = Tasks\n\nexport { Sidebar }\n"],"names":[],"mappings":";;;;;;;;;;;AAmBA,MAAM,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,MACvC,oBAAA,OAAA,EAAK,GAAG,UAAU,WAAW,OAAO,kBACnC,SACF,CAAA;AAMD,MAAM,MAAM,CAAC,EAAE,SAAkC,MAAA,oBAAC,SAAK,UAAS;AAChE,QAAQ,MAAM;AAKd,MAAM,SAAS,CAAC,EAAE,SAAkC,MAAA,oBAAC,SAAK,UAAS;AACnE,QAAQ,SAAS;AAEjB,QAAQ,SAAS;AACjB,QAAQ,WAAW;AACnB,QAAQ,OAAO;AACf,QAAQ,cAAc;AACtB,QAAQ,aAAa;AACrB,QAAQ,eAAe;AACvB,QAAQ,kBAAkB;AAC1B,QAAQ,0BAA0B;AAClC,QAAQ,QAAQ;"}
1
+ {"version":3,"file":"harmony4.mjs","sources":["../src/components/Sidebar/Sidebar.tsx"],"sourcesContent":["import { SidebarProvider } from '@components/Sidebar/SidebarProvider'\nimport type { HTMLProps } from 'react'\nimport { SidebarContent, type SidebarContentProps } from './SidebarContent/SidebarContent'\nimport type { SidebarConfig } from './types'\n\ntype SidebarProps = HTMLProps<HTMLElement> & {\n\tconfig: SidebarConfig\n\tchildren?: SidebarContentProps['children']\n}\n\n/**\n * The main Sidebar component. Wraps children with SidebarProvider and renders SidebarContent.\n *\n * @example\n * ```\n * <Sidebar config={sidebarConfig}>\n * <YourAppContent />\n * </Sidebar>\n * ```\n */\n\nexport const Sidebar = ({ config, children, ...navProps }: SidebarProps) => {\n\treturn (\n\t\t<SidebarProvider data={config.data} jwt={config.jwt}>\n\t\t\t<SidebarContent widgetsConfig={config.widgets} {...navProps}>\n\t\t\t\t{children}\n\t\t\t</SidebarContent>\n\t\t</SidebarProvider>\n\t)\n}\n"],"names":[],"mappings":";;;AAqBO,MAAM,UAAU,CAAC,EAAE,QAAQ,UAAU,GAAG,eAA6B;AAC3E,6BACE,iBAAgB,EAAA,MAAM,OAAO,MAAM,KAAK,OAAO,KAC/C,UAAC,oBAAA,gBAAA,EAAe,eAAe,OAAO,SAAU,GAAG,UACjD,SACF,CAAA,GACD;AAEF;"}
package/dist/harmony5.cjs CHANGED
@@ -3,7 +3,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const louis = require("@lokalise/louis");
5
5
  const React = require("react");
6
- const Breadcrumbs_module = require("./harmony86.cjs");
6
+ const Breadcrumbs_module = require("./harmony78.cjs");
7
7
  const Breadcrumbs = ({ items }) => {
8
8
  return /* @__PURE__ */ jsxRuntime.jsx("nav", { "aria-label": "breadcrumb", className: Breadcrumbs_module.default.breadcrumbs, children: items.map((item, index) => /* @__PURE__ */ jsxRuntime.jsxs(React.Fragment, { children: [
9
9
  /* @__PURE__ */ jsxRuntime.jsx(louis.Link, { className: Breadcrumbs_module.default.breadcrumbsItem, href: item.link, rel: "noreferrer", children: item.name }),
package/dist/harmony5.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { Link } from "@lokalise/louis";
3
3
  import { Fragment } from "react";
4
- import classes from "./harmony86.mjs";
4
+ import classes from "./harmony78.mjs";
5
5
  const Breadcrumbs = ({ items }) => {
6
6
  return /* @__PURE__ */ jsx("nav", { "aria-label": "breadcrumb", className: classes.breadcrumbs, children: items.map((item, index) => /* @__PURE__ */ jsxs(Fragment, { children: [
7
7
  /* @__PURE__ */ jsx(Link, { className: classes.breadcrumbsItem, href: item.link, rel: "noreferrer", children: item.name }),
package/dist/harmony6.cjs CHANGED
@@ -3,9 +3,9 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const louis = require("@lokalise/louis");
5
5
  const styles_module = require("./harmony74.cjs");
6
- const DropdownContent = require("./harmony87.cjs");
7
- const NavigationTabsItem = require("./harmony88.cjs");
8
- const helpers = require("./harmony89.cjs");
6
+ const DropdownContent = require("./harmony79.cjs");
7
+ const NavigationTabsItem = require("./harmony80.cjs");
8
+ const helpers = require("./harmony81.cjs");
9
9
  const NavigationTabs = ({ navigation, activeItem }) => /* @__PURE__ */ jsxRuntime.jsx("nav", { "aria-label": "Project", children: /* @__PURE__ */ jsxRuntime.jsx("ul", { className: styles_module.default.navigationTabList, "aria-orientation": "horizontal", children: navigation.filter(helpers.isNavigationItemVisible).map((item) => {
10
10
  var _a, _b, _c;
11
11
  if (item.dropdown) {
package/dist/harmony6.mjs CHANGED
@@ -1,9 +1,9 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import { Menu, MenuList } from "@lokalise/louis";
3
3
  import classes from "./harmony74.mjs";
4
- import { DropdownContent } from "./harmony87.mjs";
5
- import { NavigationTabsItem } from "./harmony88.mjs";
6
- import { isNavigationItemVisible } from "./harmony89.mjs";
4
+ import { DropdownContent } from "./harmony79.mjs";
5
+ import { NavigationTabsItem } from "./harmony80.mjs";
6
+ import { isNavigationItemVisible } from "./harmony81.mjs";
7
7
  const NavigationTabs = ({ navigation, activeItem }) => /* @__PURE__ */ jsx("nav", { "aria-label": "Project", children: /* @__PURE__ */ jsx("ul", { className: classes.navigationTabList, "aria-orientation": "horizontal", children: navigation.filter(isNavigationItemVisible).map((item) => {
8
8
  var _a, _b, _c;
9
9
  if (item.dropdown) {
package/dist/harmony7.cjs CHANGED
@@ -3,7 +3,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const louis = require("@lokalise/louis");
5
5
  const reactTable = require("@tanstack/react-table");
6
- const TableHeaderCell = require("./harmony90.cjs");
6
+ const TableHeaderCell = require("./harmony82.cjs");
7
7
  const Table = ({ headers, rows, tbodyRef }) => {
8
8
  return /* @__PURE__ */ jsxRuntime.jsxs(louis.Table, { children: [
9
9
  /* @__PURE__ */ jsxRuntime.jsx(louis.TableHeader, { children: headers.map((headerGroup) => /* @__PURE__ */ jsxRuntime.jsx(louis.TableRow, { children: headerGroup.headers.map((header) => /* @__PURE__ */ jsxRuntime.jsx(
package/dist/harmony7.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  import { jsxs, jsx } from "react/jsx-runtime";
2
2
  import { Table as Table$1, TableHeader, TableRow, TableBody, TableCell } from "@lokalise/louis";
3
3
  import { flexRender } from "@tanstack/react-table";
4
- import { TableHeaderCell } from "./harmony90.mjs";
4
+ import { TableHeaderCell } from "./harmony82.mjs";
5
5
  const Table = ({ headers, rows, tbodyRef }) => {
6
6
  return /* @__PURE__ */ jsxs(Table$1, { children: [
7
7
  /* @__PURE__ */ jsx(TableHeader, { children: headers.map((headerGroup) => /* @__PURE__ */ jsx(TableRow, { children: headerGroup.headers.map((header) => /* @__PURE__ */ jsx(
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const React = require("react");
4
- const utils = require("./harmony115.cjs");
4
+ const utils = require("./harmony102.cjs");
5
5
  function useResizeDetector({ skipOnMount = false, refreshMode, refreshRate = 1e3, refreshOptions, handleWidth = true, handleHeight = true, targetRef, observerOptions, onResize } = {}) {
6
6
  const skipResize = React.useRef(skipOnMount);
7
7
  const onResizeRef = utils.useCallbackRef(onResize);
@@ -1,5 +1,5 @@
1
1
  import { useRef, useState, useCallback, useEffect } from "react";
2
- import { useCallbackRef, useRefProxy, getDimensions, patchResizeCallback } from "./harmony115.mjs";
2
+ import { useCallbackRef, useRefProxy, getDimensions, patchResizeCallback } from "./harmony102.mjs";
3
3
  function useResizeDetector({ skipOnMount = false, refreshMode, refreshRate = 1e3, refreshOptions, handleWidth = true, handleHeight = true, targetRef, observerOptions, onResize } = {}) {
4
4
  const skipResize = useRef(skipOnMount);
5
5
  const onResizeRef = useCallbackRef(onResize);
@@ -1,9 +1,42 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const sidebarContainer = "_sidebarContainer_bmdti_1";
4
- const styles = {
5
- sidebarContainer
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const React = require("react");
5
+ const SidebarContext = require("./harmony92.cjs");
6
+ const SidebarProvider = ({
7
+ data,
8
+ jwt,
9
+ children
10
+ }) => {
11
+ const { userTeams, currentTeam } = data;
12
+ const otherTeams = React.useMemo(() => {
13
+ var _a;
14
+ if (((_a = currentTeam.result) == null ? void 0 : _a.id) && userTeams.result) {
15
+ const currentTeamId = currentTeam.result.id;
16
+ return {
17
+ result: userTeams.result.filter((userTeam) => userTeam.id !== currentTeamId),
18
+ loading: false,
19
+ error: false
20
+ };
21
+ }
22
+ return {
23
+ result: null,
24
+ loading: true,
25
+ error: false
26
+ };
27
+ }, [currentTeam, userTeams]);
28
+ const providerValue = React.useMemo(
29
+ () => ({
30
+ jwt,
31
+ data: {
32
+ userTeams,
33
+ currentTeam,
34
+ otherTeams
35
+ }
36
+ }),
37
+ [jwt, userTeams, currentTeam, otherTeams]
38
+ );
39
+ return /* @__PURE__ */ jsxRuntime.jsx(SidebarContext.SidebarContext.Provider, { value: providerValue, children });
6
40
  };
7
- exports.default = styles;
8
- exports.sidebarContainer = sidebarContainer;
41
+ exports.SidebarProvider = SidebarProvider;
9
42
  //# sourceMappingURL=harmony76.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony76.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
1
+ {"version":3,"file":"harmony76.cjs","sources":["../src/components/Sidebar/SidebarProvider.tsx"],"sourcesContent":["import { type PropsWithChildren, useMemo } from 'react'\nimport { SidebarContext } from './SidebarContext'\nimport type {\n\tSidebarContextProps,\n\tSidebarDataItem,\n\tSidebarProviderProps,\n\tSidebarTeam,\n} from './types'\n\nexport const SidebarProvider = ({\n\tdata,\n\tjwt,\n\tchildren,\n}: PropsWithChildren<SidebarProviderProps>) => {\n\tconst { userTeams, currentTeam } = data\n\n\tconst otherTeams: SidebarDataItem<SidebarTeam[]> = useMemo(() => {\n\t\tif (currentTeam.result?.id && userTeams.result) {\n\t\t\tconst currentTeamId = currentTeam.result.id\n\t\t\treturn {\n\t\t\t\tresult: userTeams.result.filter((userTeam) => userTeam.id !== currentTeamId),\n\t\t\t\tloading: false,\n\t\t\t\terror: false,\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\tresult: null,\n\t\t\tloading: true,\n\t\t\terror: false,\n\t\t}\n\t}, [currentTeam, userTeams])\n\n\tconst providerValue = useMemo<SidebarContextProps>(\n\t\t() => ({\n\t\t\tjwt,\n\t\t\tdata: {\n\t\t\t\tuserTeams,\n\t\t\t\tcurrentTeam,\n\t\t\t\totherTeams,\n\t\t\t},\n\t\t}),\n\t\t[jwt, userTeams, currentTeam, otherTeams],\n\t)\n\n\treturn <SidebarContext.Provider value={providerValue}>{children}</SidebarContext.Provider>\n}\n"],"names":["useMemo","SidebarContext"],"mappings":";;;;;AASO,MAAM,kBAAkB,CAAC;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AACD,MAA+C;AACxC,QAAA,EAAE,WAAW,YAAA,IAAgB;AAE7B,QAAA,aAA6CA,MAAAA,QAAQ,MAAM;;AAChE,UAAI,iBAAY,WAAZ,mBAAoB,OAAM,UAAU,QAAQ;AACzC,YAAA,gBAAgB,YAAY,OAAO;AAClC,aAAA;AAAA,QACN,QAAQ,UAAU,OAAO,OAAO,CAAC,aAAa,SAAS,OAAO,aAAa;AAAA,QAC3E,SAAS;AAAA,QACT,OAAO;AAAA,MACR;AAAA,IAAA;AAGM,WAAA;AAAA,MACN,QAAQ;AAAA,MACR,SAAS;AAAA,MACT,OAAO;AAAA,IACR;AAAA,EAAA,GACE,CAAC,aAAa,SAAS,CAAC;AAE3B,QAAM,gBAAgBA,MAAA;AAAA,IACrB,OAAO;AAAA,MACN;AAAA,MACA,MAAM;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,MAAA;AAAA,IACD;AAAA,IAED,CAAC,KAAK,WAAW,aAAa,UAAU;AAAA,EACzC;AAEA,wCAAQC,eAAAA,eAAe,UAAf,EAAwB,OAAO,eAAgB,UAAS;AACjE;;"}
@@ -1,9 +1,42 @@
1
- const sidebarContainer = "_sidebarContainer_bmdti_1";
2
- const styles = {
3
- sidebarContainer
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useMemo } from "react";
3
+ import { SidebarContext } from "./harmony92.mjs";
4
+ const SidebarProvider = ({
5
+ data,
6
+ jwt,
7
+ children
8
+ }) => {
9
+ const { userTeams, currentTeam } = data;
10
+ const otherTeams = useMemo(() => {
11
+ var _a;
12
+ if (((_a = currentTeam.result) == null ? void 0 : _a.id) && userTeams.result) {
13
+ const currentTeamId = currentTeam.result.id;
14
+ return {
15
+ result: userTeams.result.filter((userTeam) => userTeam.id !== currentTeamId),
16
+ loading: false,
17
+ error: false
18
+ };
19
+ }
20
+ return {
21
+ result: null,
22
+ loading: true,
23
+ error: false
24
+ };
25
+ }, [currentTeam, userTeams]);
26
+ const providerValue = useMemo(
27
+ () => ({
28
+ jwt,
29
+ data: {
30
+ userTeams,
31
+ currentTeam,
32
+ otherTeams
33
+ }
34
+ }),
35
+ [jwt, userTeams, currentTeam, otherTeams]
36
+ );
37
+ return /* @__PURE__ */ jsx(SidebarContext.Provider, { value: providerValue, children });
4
38
  };
5
39
  export {
6
- styles as default,
7
- sidebarContainer
40
+ SidebarProvider
8
41
  };
9
42
  //# sourceMappingURL=harmony76.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony76.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
1
+ {"version":3,"file":"harmony76.mjs","sources":["../src/components/Sidebar/SidebarProvider.tsx"],"sourcesContent":["import { type PropsWithChildren, useMemo } from 'react'\nimport { SidebarContext } from './SidebarContext'\nimport type {\n\tSidebarContextProps,\n\tSidebarDataItem,\n\tSidebarProviderProps,\n\tSidebarTeam,\n} from './types'\n\nexport const SidebarProvider = ({\n\tdata,\n\tjwt,\n\tchildren,\n}: PropsWithChildren<SidebarProviderProps>) => {\n\tconst { userTeams, currentTeam } = data\n\n\tconst otherTeams: SidebarDataItem<SidebarTeam[]> = useMemo(() => {\n\t\tif (currentTeam.result?.id && userTeams.result) {\n\t\t\tconst currentTeamId = currentTeam.result.id\n\t\t\treturn {\n\t\t\t\tresult: userTeams.result.filter((userTeam) => userTeam.id !== currentTeamId),\n\t\t\t\tloading: false,\n\t\t\t\terror: false,\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\tresult: null,\n\t\t\tloading: true,\n\t\t\terror: false,\n\t\t}\n\t}, [currentTeam, userTeams])\n\n\tconst providerValue = useMemo<SidebarContextProps>(\n\t\t() => ({\n\t\t\tjwt,\n\t\t\tdata: {\n\t\t\t\tuserTeams,\n\t\t\t\tcurrentTeam,\n\t\t\t\totherTeams,\n\t\t\t},\n\t\t}),\n\t\t[jwt, userTeams, currentTeam, otherTeams],\n\t)\n\n\treturn <SidebarContext.Provider value={providerValue}>{children}</SidebarContext.Provider>\n}\n"],"names":[],"mappings":";;;AASO,MAAM,kBAAkB,CAAC;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AACD,MAA+C;AACxC,QAAA,EAAE,WAAW,YAAA,IAAgB;AAE7B,QAAA,aAA6C,QAAQ,MAAM;;AAChE,UAAI,iBAAY,WAAZ,mBAAoB,OAAM,UAAU,QAAQ;AACzC,YAAA,gBAAgB,YAAY,OAAO;AAClC,aAAA;AAAA,QACN,QAAQ,UAAU,OAAO,OAAO,CAAC,aAAa,SAAS,OAAO,aAAa;AAAA,QAC3E,SAAS;AAAA,QACT,OAAO;AAAA,MACR;AAAA,IAAA;AAGM,WAAA;AAAA,MACN,QAAQ;AAAA,MACR,SAAS;AAAA,MACT,OAAO;AAAA,IACR;AAAA,EAAA,GACE,CAAC,aAAa,SAAS,CAAC;AAE3B,QAAM,gBAAgB;AAAA,IACrB,OAAO;AAAA,MACN;AAAA,MACA,MAAM;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,MAAA;AAAA,IACD;AAAA,IAED,CAAC,KAAK,WAAW,aAAa,UAAU;AAAA,EACzC;AAEA,6BAAQ,eAAe,UAAf,EAAwB,OAAO,eAAgB,UAAS;AACjE;"}
@@ -1,12 +1,40 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
- const Avatar_module = require("./harmony102.cjs");
5
- const Avatar = ({
6
- src,
7
- href = "/",
8
- ariaLabel = "Lokalise App Home",
9
- alt = "Lokalise Logo"
10
- }) => /* @__PURE__ */ jsxRuntime.jsx("a", { className: Avatar_module.default.logoLink, href, "aria-label": ariaLabel, children: /* @__PURE__ */ jsxRuntime.jsx("img", { src, alt }) });
11
- exports.Avatar = Avatar;
4
+ const IconLink = require("./harmony93.cjs");
5
+ const ProfileMenu = require("./harmony94.cjs");
6
+ const useSidebar = require("./harmony95.cjs");
7
+ const louis = require("@lokalise/louis");
8
+ const permissions = require("./harmony96.cjs");
9
+ const Avatar = require("./harmony97.cjs");
10
+ const HelpMenu = require("./harmony98.cjs");
11
+ const SidebarContent_module = require("./harmony99.cjs");
12
+ const SidebarContent = ({ widgetsConfig, children, ...navProps }) => {
13
+ const sidebarContextProps = useSidebar.useSidebar();
14
+ const { jwt } = sidebarContextProps;
15
+ const { avatar } = widgetsConfig;
16
+ return /* @__PURE__ */ jsxRuntime.jsxs("nav", { ...navProps, className: SidebarContent_module.default.sidebarContainer, children: [
17
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
18
+ /* @__PURE__ */ jsxRuntime.jsx(Avatar.Avatar, { ...avatar }),
19
+ jwt.loading ? /* @__PURE__ */ jsxRuntime.jsx(louis.Skeleton, { description: "Top Section Loader", animated: true, className: SidebarContent_module.default.sidebarSkeleton, children: Array.from({ length: 3 }).map(() => /* @__PURE__ */ jsxRuntime.jsx(
20
+ louis.Rectangle,
21
+ {
22
+ height: 40,
23
+ width: 40
24
+ },
25
+ `sidebar-top-widget-loader-${crypto.randomUUID()}`
26
+ )) }) : /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: jwt.result && !jwt.result.isEndOfTrialActive && !jwt.result.isTeamSuspended && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
27
+ /* @__PURE__ */ jsxRuntime.jsx(IconLink.IconLink, { to: "/projects", label: "Projects", icon: louis.ProjectIcon }),
28
+ /* @__PURE__ */ jsxRuntime.jsx(IconLink.IconLink, { to: "/order", label: "Order", icon: louis.ShoppingBagIcon }),
29
+ permissions.canAccessReporting(jwt.result) && /* @__PURE__ */ jsxRuntime.jsx(IconLink.IconLink, { to: "/analytics", label: "Analytics", icon: louis.ChartLineIcon })
30
+ ] }) }),
31
+ /* @__PURE__ */ jsxRuntime.jsx(HelpMenu.HelpMenu, { ...widgetsConfig.helpMenu })
32
+ ] }),
33
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
34
+ children && typeof children === "function" ? children(sidebarContextProps) : children,
35
+ /* @__PURE__ */ jsxRuntime.jsx(ProfileMenu.ProfileMenu, { config: widgetsConfig.profileMenu })
36
+ ] })
37
+ ] });
38
+ };
39
+ exports.SidebarContent = SidebarContent;
12
40
  //# sourceMappingURL=harmony77.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony77.cjs","sources":["../src/components/Sidebar/Widgets/Avatar/Avatar.tsx"],"sourcesContent":["import styles from './Avatar.module.css'\n\ntype AvatarProps = {\n\t/** URL of the avatar/logo image */\n\tsrc: string\n\t/** Link destination when avatar is clicked. Defaults to '/' */\n\thref?: string\n\t/** Accessibility label for the avatar link. Defaults to 'Home' */\n\tariaLabel?: string\n\t/** Alt text for the avatar image. Defaults to 'Lokalise' */\n\talt?: string\n}\n\n/**\n * Display company main avatar / logo in the top section of the Sidebar.\n * Used as the main branding element and home navigation link.\n */\nexport const Avatar = ({\n\tsrc,\n\thref = '/',\n\tariaLabel = 'Lokalise App Home',\n\talt = 'Lokalise Logo',\n}: AvatarProps) => (\n\t<a className={styles.logoLink} href={href} aria-label={ariaLabel}>\n\t\t<img src={src} alt={alt} />\n\t</a>\n)\n"],"names":["jsx","styles"],"mappings":";;;;AAiBO,MAAM,SAAS,CAAC;AAAA,EACtB;AAAA,EACA,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,MAAM;AACP,MACEA,2BAAAA,IAAA,KAAA,EAAE,WAAWC,cAAA,QAAO,UAAU,MAAY,cAAY,WACtD,UAACD,2BAAAA,IAAA,OAAA,EAAI,KAAU,IAAA,CAAU,EAC1B,CAAA;;"}
1
+ {"version":3,"file":"harmony77.cjs","sources":["../src/components/Sidebar/SidebarContent/SidebarContent.tsx"],"sourcesContent":["import { IconLink } from '@components/Sidebar/Widgets/IconLink/IconLink'\nimport { ProfileMenu } from '@components/Sidebar/Widgets/ProfileMenu/ProfileMenu'\nimport { useSidebar } from '@components/Sidebar/hooks/useSidebar'\nimport type { SidebarWidgetsConfig } from '@components/Sidebar/types'\nimport type { SidebarContextProps } from '@components/Sidebar/types'\nimport { ChartLineIcon, ProjectIcon, Rectangle, ShoppingBagIcon, Skeleton } from '@lokalise/louis'\nimport { canAccessReporting } from '@utils/user/permissions'\nimport type { HTMLProps, ReactNode } from 'react'\nimport { Avatar } from '../Widgets/Avatar/Avatar'\nimport { HelpMenu } from '../Widgets/HelpMenu/HelpMenu'\nimport styles from './SidebarContent.module.css'\n\nexport type SidebarContentProps = HTMLProps<HTMLElement> & {\n\twidgetsConfig: SidebarWidgetsConfig\n\tchildren?: ((props: SidebarContextProps) => ReactNode) | ReactNode\n}\n\nexport const SidebarContent = ({ widgetsConfig, children, ...navProps }: SidebarContentProps) => {\n\tconst sidebarContextProps = useSidebar()\n\n\tconst { jwt } = sidebarContextProps\n\n\tconst { avatar } = widgetsConfig\n\n\treturn (\n\t\t<nav {...navProps} className={styles.sidebarContainer}>\n\t\t\t<div>\n\t\t\t\t<Avatar {...avatar} />\n\n\t\t\t\t{jwt.loading ? (\n\t\t\t\t\t<Skeleton description={'Top Section Loader'} animated className={styles.sidebarSkeleton}>\n\t\t\t\t\t\t{Array.from({ length: 3 }).map(() => (\n\t\t\t\t\t\t\t<Rectangle\n\t\t\t\t\t\t\t\tkey={`sidebar-top-widget-loader-${crypto.randomUUID()}`}\n\t\t\t\t\t\t\t\theight={40}\n\t\t\t\t\t\t\t\twidth={40}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</Skeleton>\n\t\t\t\t) : (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{jwt.result && !jwt.result.isEndOfTrialActive && !jwt.result.isTeamSuspended && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{/** TODO - All URLs should be pointing to Expert here. We need resolve URL function to deal with this */}\n\t\t\t\t\t\t\t\t<IconLink to=\"/projects\" label={'Projects'} icon={ProjectIcon} />\n\t\t\t\t\t\t\t\t<IconLink to=\"/order\" label=\"Order\" icon={ShoppingBagIcon} />\n\n\t\t\t\t\t\t\t\t{canAccessReporting(jwt.result) && (\n\t\t\t\t\t\t\t\t\t<IconLink to=\"/analytics\" label=\"Analytics\" icon={ChartLineIcon} />\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t\t<HelpMenu {...widgetsConfig.helpMenu} />\n\t\t\t</div>\n\t\t\t<div>\n\t\t\t\t{children && typeof children === 'function' ? children(sidebarContextProps) : children}\n\t\t\t\t<ProfileMenu config={widgetsConfig.profileMenu} />\n\t\t\t</div>\n\t\t</nav>\n\t)\n}\n"],"names":["useSidebar","styles","jsxs","jsx","Avatar","Skeleton","Rectangle","Fragment","IconLink","ProjectIcon","ShoppingBagIcon","canAccessReporting","ChartLineIcon","HelpMenu","ProfileMenu"],"mappings":";;;;;;;;;;;AAiBO,MAAM,iBAAiB,CAAC,EAAE,eAAe,UAAU,GAAG,eAAoC;AAChG,QAAM,sBAAsBA,WAAAA,WAAW;AAEjC,QAAA,EAAE,QAAQ;AAEV,QAAA,EAAE,WAAW;AAEnB,yCACE,OAAK,EAAA,GAAG,UAAU,WAAWC,8BAAO,kBACpC,UAAA;AAAA,IAAAC,gCAAC,OACA,EAAA,UAAA;AAAA,MAACC,2BAAAA,IAAAC,OAAA,QAAA,EAAQ,GAAG,QAAQ;AAAA,MAEnB,IAAI,UACJD,2BAAAA,IAACE,kBAAS,aAAa,sBAAsB,UAAQ,MAAC,WAAWJ,8BAAO,iBACtE,UAAA,MAAM,KAAK,EAAE,QAAQ,EAAG,CAAA,EAAE,IAAI,MAC9BE,2BAAA;AAAA,QAACG,MAAA;AAAA,QAAA;AAAA,UAEA,QAAQ;AAAA,UACR,OAAO;AAAA,QAAA;AAAA,QAFF,6BAA6B,OAAO,YAAY;AAAA,MAAA,CAItD,EAAA,CACF,IAEAH,+BAAAI,WAAAA,UAAA,EACE,cAAI,UAAU,CAAC,IAAI,OAAO,sBAAsB,CAAC,IAAI,OAAO,mBAG3DL,gCAAAK,WAAAA,UAAA,EAAA,UAAA;AAAA,QAAAJ,+BAACK,SAAAA,YAAS,IAAG,aAAY,OAAO,YAAY,MAAMC,MAAAA,aAAa;AAAA,uCAC9DD,SAAAA,UAAS,EAAA,IAAG,UAAS,OAAM,SAAQ,MAAME,MAAAA,iBAAiB;AAAA,QAE1DC,YAAAA,mBAAmB,IAAI,MAAM,KAC7BR,2BAAA,IAACK,SAAS,UAAA,EAAA,IAAG,cAAa,OAAM,aAAY,MAAMI,MAAAA,cAAe,CAAA;AAAA,MAAA,EAAA,CAEnE,EAEF,CAAA;AAAA,MAEAT,2BAAAA,IAAAU,SAAA,UAAA,EAAU,GAAG,cAAc,SAAU,CAAA;AAAA,IAAA,GACvC;AAAA,oCACC,OACC,EAAA,UAAA;AAAA,MAAA,YAAY,OAAO,aAAa,aAAa,SAAS,mBAAmB,IAAI;AAAA,MAC7EV,2BAAAA,IAAAW,YAAAA,aAAA,EAAY,QAAQ,cAAc,YAAa,CAAA;AAAA,IAAA,EACjD,CAAA;AAAA,EAAA,GACD;AAEF;;"}
@@ -1,12 +1,40 @@
1
- import { jsx } from "react/jsx-runtime";
2
- import styles from "./harmony102.mjs";
3
- const Avatar = ({
4
- src,
5
- href = "/",
6
- ariaLabel = "Lokalise App Home",
7
- alt = "Lokalise Logo"
8
- }) => /* @__PURE__ */ jsx("a", { className: styles.logoLink, href, "aria-label": ariaLabel, children: /* @__PURE__ */ jsx("img", { src, alt }) });
1
+ import { jsxs, jsx, Fragment } from "react/jsx-runtime";
2
+ import { IconLink } from "./harmony93.mjs";
3
+ import { ProfileMenu } from "./harmony94.mjs";
4
+ import { useSidebar } from "./harmony95.mjs";
5
+ import { Skeleton, Rectangle, ProjectIcon, ShoppingBagIcon, ChartLineIcon } from "@lokalise/louis";
6
+ import { canAccessReporting } from "./harmony96.mjs";
7
+ import { Avatar } from "./harmony97.mjs";
8
+ import { HelpMenu } from "./harmony98.mjs";
9
+ import styles from "./harmony99.mjs";
10
+ const SidebarContent = ({ widgetsConfig, children, ...navProps }) => {
11
+ const sidebarContextProps = useSidebar();
12
+ const { jwt } = sidebarContextProps;
13
+ const { avatar } = widgetsConfig;
14
+ return /* @__PURE__ */ jsxs("nav", { ...navProps, className: styles.sidebarContainer, children: [
15
+ /* @__PURE__ */ jsxs("div", { children: [
16
+ /* @__PURE__ */ jsx(Avatar, { ...avatar }),
17
+ jwt.loading ? /* @__PURE__ */ jsx(Skeleton, { description: "Top Section Loader", animated: true, className: styles.sidebarSkeleton, children: Array.from({ length: 3 }).map(() => /* @__PURE__ */ jsx(
18
+ Rectangle,
19
+ {
20
+ height: 40,
21
+ width: 40
22
+ },
23
+ `sidebar-top-widget-loader-${crypto.randomUUID()}`
24
+ )) }) : /* @__PURE__ */ jsx(Fragment, { children: jwt.result && !jwt.result.isEndOfTrialActive && !jwt.result.isTeamSuspended && /* @__PURE__ */ jsxs(Fragment, { children: [
25
+ /* @__PURE__ */ jsx(IconLink, { to: "/projects", label: "Projects", icon: ProjectIcon }),
26
+ /* @__PURE__ */ jsx(IconLink, { to: "/order", label: "Order", icon: ShoppingBagIcon }),
27
+ canAccessReporting(jwt.result) && /* @__PURE__ */ jsx(IconLink, { to: "/analytics", label: "Analytics", icon: ChartLineIcon })
28
+ ] }) }),
29
+ /* @__PURE__ */ jsx(HelpMenu, { ...widgetsConfig.helpMenu })
30
+ ] }),
31
+ /* @__PURE__ */ jsxs("div", { children: [
32
+ children && typeof children === "function" ? children(sidebarContextProps) : children,
33
+ /* @__PURE__ */ jsx(ProfileMenu, { config: widgetsConfig.profileMenu })
34
+ ] })
35
+ ] });
36
+ };
9
37
  export {
10
- Avatar
38
+ SidebarContent
11
39
  };
12
40
  //# sourceMappingURL=harmony77.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony77.mjs","sources":["../src/components/Sidebar/Widgets/Avatar/Avatar.tsx"],"sourcesContent":["import styles from './Avatar.module.css'\n\ntype AvatarProps = {\n\t/** URL of the avatar/logo image */\n\tsrc: string\n\t/** Link destination when avatar is clicked. Defaults to '/' */\n\thref?: string\n\t/** Accessibility label for the avatar link. Defaults to 'Home' */\n\tariaLabel?: string\n\t/** Alt text for the avatar image. Defaults to 'Lokalise' */\n\talt?: string\n}\n\n/**\n * Display company main avatar / logo in the top section of the Sidebar.\n * Used as the main branding element and home navigation link.\n */\nexport const Avatar = ({\n\tsrc,\n\thref = '/',\n\tariaLabel = 'Lokalise App Home',\n\talt = 'Lokalise Logo',\n}: AvatarProps) => (\n\t<a className={styles.logoLink} href={href} aria-label={ariaLabel}>\n\t\t<img src={src} alt={alt} />\n\t</a>\n)\n"],"names":[],"mappings":";;AAiBO,MAAM,SAAS,CAAC;AAAA,EACtB;AAAA,EACA,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,MAAM;AACP,MACE,oBAAA,KAAA,EAAE,WAAW,OAAO,UAAU,MAAY,cAAY,WACtD,UAAC,oBAAA,OAAA,EAAI,KAAU,IAAA,CAAU,EAC1B,CAAA;"}
1
+ {"version":3,"file":"harmony77.mjs","sources":["../src/components/Sidebar/SidebarContent/SidebarContent.tsx"],"sourcesContent":["import { IconLink } from '@components/Sidebar/Widgets/IconLink/IconLink'\nimport { ProfileMenu } from '@components/Sidebar/Widgets/ProfileMenu/ProfileMenu'\nimport { useSidebar } from '@components/Sidebar/hooks/useSidebar'\nimport type { SidebarWidgetsConfig } from '@components/Sidebar/types'\nimport type { SidebarContextProps } from '@components/Sidebar/types'\nimport { ChartLineIcon, ProjectIcon, Rectangle, ShoppingBagIcon, Skeleton } from '@lokalise/louis'\nimport { canAccessReporting } from '@utils/user/permissions'\nimport type { HTMLProps, ReactNode } from 'react'\nimport { Avatar } from '../Widgets/Avatar/Avatar'\nimport { HelpMenu } from '../Widgets/HelpMenu/HelpMenu'\nimport styles from './SidebarContent.module.css'\n\nexport type SidebarContentProps = HTMLProps<HTMLElement> & {\n\twidgetsConfig: SidebarWidgetsConfig\n\tchildren?: ((props: SidebarContextProps) => ReactNode) | ReactNode\n}\n\nexport const SidebarContent = ({ widgetsConfig, children, ...navProps }: SidebarContentProps) => {\n\tconst sidebarContextProps = useSidebar()\n\n\tconst { jwt } = sidebarContextProps\n\n\tconst { avatar } = widgetsConfig\n\n\treturn (\n\t\t<nav {...navProps} className={styles.sidebarContainer}>\n\t\t\t<div>\n\t\t\t\t<Avatar {...avatar} />\n\n\t\t\t\t{jwt.loading ? (\n\t\t\t\t\t<Skeleton description={'Top Section Loader'} animated className={styles.sidebarSkeleton}>\n\t\t\t\t\t\t{Array.from({ length: 3 }).map(() => (\n\t\t\t\t\t\t\t<Rectangle\n\t\t\t\t\t\t\t\tkey={`sidebar-top-widget-loader-${crypto.randomUUID()}`}\n\t\t\t\t\t\t\t\theight={40}\n\t\t\t\t\t\t\t\twidth={40}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</Skeleton>\n\t\t\t\t) : (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{jwt.result && !jwt.result.isEndOfTrialActive && !jwt.result.isTeamSuspended && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{/** TODO - All URLs should be pointing to Expert here. We need resolve URL function to deal with this */}\n\t\t\t\t\t\t\t\t<IconLink to=\"/projects\" label={'Projects'} icon={ProjectIcon} />\n\t\t\t\t\t\t\t\t<IconLink to=\"/order\" label=\"Order\" icon={ShoppingBagIcon} />\n\n\t\t\t\t\t\t\t\t{canAccessReporting(jwt.result) && (\n\t\t\t\t\t\t\t\t\t<IconLink to=\"/analytics\" label=\"Analytics\" icon={ChartLineIcon} />\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t\t<HelpMenu {...widgetsConfig.helpMenu} />\n\t\t\t</div>\n\t\t\t<div>\n\t\t\t\t{children && typeof children === 'function' ? children(sidebarContextProps) : children}\n\t\t\t\t<ProfileMenu config={widgetsConfig.profileMenu} />\n\t\t\t</div>\n\t\t</nav>\n\t)\n}\n"],"names":[],"mappings":";;;;;;;;;AAiBO,MAAM,iBAAiB,CAAC,EAAE,eAAe,UAAU,GAAG,eAAoC;AAChG,QAAM,sBAAsB,WAAW;AAEjC,QAAA,EAAE,QAAQ;AAEV,QAAA,EAAE,WAAW;AAEnB,8BACE,OAAK,EAAA,GAAG,UAAU,WAAW,OAAO,kBACpC,UAAA;AAAA,IAAA,qBAAC,OACA,EAAA,UAAA;AAAA,MAAC,oBAAA,QAAA,EAAQ,GAAG,QAAQ;AAAA,MAEnB,IAAI,UACJ,oBAAC,YAAS,aAAa,sBAAsB,UAAQ,MAAC,WAAW,OAAO,iBACtE,UAAA,MAAM,KAAK,EAAE,QAAQ,EAAG,CAAA,EAAE,IAAI,MAC9B;AAAA,QAAC;AAAA,QAAA;AAAA,UAEA,QAAQ;AAAA,UACR,OAAO;AAAA,QAAA;AAAA,QAFF,6BAA6B,OAAO,YAAY;AAAA,MAAA,CAItD,EAAA,CACF,IAEA,oBAAA,UAAA,EACE,cAAI,UAAU,CAAC,IAAI,OAAO,sBAAsB,CAAC,IAAI,OAAO,mBAG3D,qBAAA,UAAA,EAAA,UAAA;AAAA,QAAA,oBAAC,YAAS,IAAG,aAAY,OAAO,YAAY,MAAM,aAAa;AAAA,4BAC9D,UAAS,EAAA,IAAG,UAAS,OAAM,SAAQ,MAAM,iBAAiB;AAAA,QAE1D,mBAAmB,IAAI,MAAM,KAC7B,oBAAC,UAAS,EAAA,IAAG,cAAa,OAAM,aAAY,MAAM,cAAe,CAAA;AAAA,MAAA,EAAA,CAEnE,EAEF,CAAA;AAAA,MAEA,oBAAA,UAAA,EAAU,GAAG,cAAc,SAAU,CAAA;AAAA,IAAA,GACvC;AAAA,yBACC,OACC,EAAA,UAAA;AAAA,MAAA,YAAY,OAAO,aAAa,aAAa,SAAS,mBAAmB,IAAI;AAAA,MAC7E,oBAAA,aAAA,EAAY,QAAQ,cAAc,YAAa,CAAA;AAAA,IAAA,EACjD,CAAA;AAAA,EAAA,GACD;AAEF;"}
@@ -1,21 +1,12 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const jsxRuntime = require("react/jsx-runtime");
4
- const louis = require("@lokalise/louis");
5
- const clsx = require("./harmony73.cjs");
6
- const IconLink_module = require("./harmony103.cjs");
7
- const IconLink = ({ label, to, icon: Icon }) => {
8
- return /* @__PURE__ */ jsxRuntime.jsx(louis.Tooltip, { placement: "right", tooltip: label, children: /* @__PURE__ */ jsxRuntime.jsx(
9
- louis.Link,
10
- {
11
- "aria-label": label,
12
- className: clsx.clsx(IconLink_module.default.link, {
13
- [IconLink_module.default.active]: typeof window !== "undefined" && window.location.pathname.startsWith(to)
14
- }),
15
- href: to,
16
- children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { size: "25px" })
17
- }
18
- ) });
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ const breadcrumbsItem = "_breadcrumbsItem_1hm6a_1";
4
+ const breadcrumbs = "_breadcrumbs_1hm6a_1";
5
+ const classes = {
6
+ breadcrumbsItem,
7
+ breadcrumbs
19
8
  };
20
- exports.IconLink = IconLink;
9
+ exports.breadcrumbs = breadcrumbs;
10
+ exports.breadcrumbsItem = breadcrumbsItem;
11
+ exports.default = classes;
21
12
  //# sourceMappingURL=harmony78.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony78.cjs","sources":["../src/components/Sidebar/Widgets/IconLink/IconLink.tsx"],"sourcesContent":["import { Link, type SvgIconProps, Tooltip } from '@lokalise/louis'\nimport clsx from 'clsx'\nimport type { FC } from 'react'\nimport styles from './IconLink.module.css'\n\ntype IconLinkProps = {\n\t/** URL destination for the link */\n\tto: string\n\t/** Text to display in the tooltip when hovering over the icon */\n\tlabel: string\n\t/** Icon component from @lokalise/louis to display */\n\ticon: FC<SvgIconProps>\n}\n\n/**\n * A navigation link component that displays an icon with a tooltip.\n * When hovered, shows a tooltip with the label text.\n * The link is highlighted when the current URL matches its destination.\n *\n * @example\n * ```tsx\n * <IconLink to=\"/projects\" label=\"Projects\" icon={FolderOpenIcon} />\n * ```\n */\nexport const IconLink = ({ label, to, icon: Icon }: IconLinkProps) => {\n\treturn (\n\t\t<Tooltip placement=\"right\" tooltip={label}>\n\t\t\t<Link\n\t\t\t\taria-label={label}\n\t\t\t\tclassName={clsx(styles.link, {\n\t\t\t\t\t[styles.active]: typeof window !== 'undefined' && window.location.pathname.startsWith(to),\n\t\t\t\t})}\n\t\t\t\thref={to}\n\t\t\t>\n\t\t\t\t<Icon size=\"25px\" />\n\t\t\t</Link>\n\t\t</Tooltip>\n\t)\n}\n"],"names":["jsx","Tooltip","Link","clsx","styles"],"mappings":";;;;;;AAwBO,MAAM,WAAW,CAAC,EAAE,OAAO,IAAI,MAAM,WAA0B;AACrE,SACEA,2BAAA,IAAAC,MAAA,SAAA,EAAQ,WAAU,SAAQ,SAAS,OACnC,UAAAD,2BAAA;AAAA,IAACE,MAAA;AAAA,IAAA;AAAA,MACA,cAAY;AAAA,MACZ,WAAWC,KAAAA,KAAKC,gBAAA,QAAO,MAAM;AAAA,QAC5B,CAACA,gBAAO,QAAA,MAAM,GAAG,OAAO,WAAW,eAAe,OAAO,SAAS,SAAS,WAAW,EAAE;AAAA,MAAA,CACxF;AAAA,MACD,MAAM;AAAA,MAEN,UAAAJ,2BAAAA,IAAC,MAAK,EAAA,MAAK,OAAO,CAAA;AAAA,IAAA;AAAA,EAAA,GAEpB;AAEF;;"}
1
+ {"version":3,"file":"harmony78.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
@@ -1,21 +1,12 @@
1
- import { jsx } from "react/jsx-runtime";
2
- import { Tooltip, Link } from "@lokalise/louis";
3
- import { clsx } from "./harmony73.mjs";
4
- import styles from "./harmony103.mjs";
5
- const IconLink = ({ label, to, icon: Icon }) => {
6
- return /* @__PURE__ */ jsx(Tooltip, { placement: "right", tooltip: label, children: /* @__PURE__ */ jsx(
7
- Link,
8
- {
9
- "aria-label": label,
10
- className: clsx(styles.link, {
11
- [styles.active]: typeof window !== "undefined" && window.location.pathname.startsWith(to)
12
- }),
13
- href: to,
14
- children: /* @__PURE__ */ jsx(Icon, { size: "25px" })
15
- }
16
- ) });
1
+ const breadcrumbsItem = "_breadcrumbsItem_1hm6a_1";
2
+ const breadcrumbs = "_breadcrumbs_1hm6a_1";
3
+ const classes = {
4
+ breadcrumbsItem,
5
+ breadcrumbs
17
6
  };
18
7
  export {
19
- IconLink
8
+ breadcrumbs,
9
+ breadcrumbsItem,
10
+ classes as default
20
11
  };
21
12
  //# sourceMappingURL=harmony78.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony78.mjs","sources":["../src/components/Sidebar/Widgets/IconLink/IconLink.tsx"],"sourcesContent":["import { Link, type SvgIconProps, Tooltip } from '@lokalise/louis'\nimport clsx from 'clsx'\nimport type { FC } from 'react'\nimport styles from './IconLink.module.css'\n\ntype IconLinkProps = {\n\t/** URL destination for the link */\n\tto: string\n\t/** Text to display in the tooltip when hovering over the icon */\n\tlabel: string\n\t/** Icon component from @lokalise/louis to display */\n\ticon: FC<SvgIconProps>\n}\n\n/**\n * A navigation link component that displays an icon with a tooltip.\n * When hovered, shows a tooltip with the label text.\n * The link is highlighted when the current URL matches its destination.\n *\n * @example\n * ```tsx\n * <IconLink to=\"/projects\" label=\"Projects\" icon={FolderOpenIcon} />\n * ```\n */\nexport const IconLink = ({ label, to, icon: Icon }: IconLinkProps) => {\n\treturn (\n\t\t<Tooltip placement=\"right\" tooltip={label}>\n\t\t\t<Link\n\t\t\t\taria-label={label}\n\t\t\t\tclassName={clsx(styles.link, {\n\t\t\t\t\t[styles.active]: typeof window !== 'undefined' && window.location.pathname.startsWith(to),\n\t\t\t\t})}\n\t\t\t\thref={to}\n\t\t\t>\n\t\t\t\t<Icon size=\"25px\" />\n\t\t\t</Link>\n\t\t</Tooltip>\n\t)\n}\n"],"names":[],"mappings":";;;;AAwBO,MAAM,WAAW,CAAC,EAAE,OAAO,IAAI,MAAM,WAA0B;AACrE,SACE,oBAAA,SAAA,EAAQ,WAAU,SAAQ,SAAS,OACnC,UAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,cAAY;AAAA,MACZ,WAAW,KAAK,OAAO,MAAM;AAAA,QAC5B,CAAC,OAAO,MAAM,GAAG,OAAO,WAAW,eAAe,OAAO,SAAS,SAAS,WAAW,EAAE;AAAA,MAAA,CACxF;AAAA,MACD,MAAM;AAAA,MAEN,UAAA,oBAAC,MAAK,EAAA,MAAK,OAAO,CAAA;AAAA,IAAA;AAAA,EAAA,GAEpB;AAEF;"}
1
+ {"version":3,"file":"harmony78.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -2,25 +2,10 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const louis = require("@lokalise/louis");
5
- const clsx = require("./harmony73.cjs");
6
- const Menu_module = require("./harmony104.cjs");
7
- const Menu = ({ children, icon: Icon }) => {
8
- return /* @__PURE__ */ jsxRuntime.jsx(
9
- louis.Menu,
10
- {
11
- menuButton: ({ opened }) => /* @__PURE__ */ jsxRuntime.jsx(louis.Tooltip, { placement: "right", tooltip: "Help", children: /* @__PURE__ */ jsxRuntime.jsx(
12
- "button",
13
- {
14
- type: "button",
15
- className: clsx.clsx(Menu_module.default.dropdownButton, {
16
- [Menu_module.default.dropdownButtonActive]: opened
17
- }),
18
- children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { size: "25px" })
19
- }
20
- ) }),
21
- children: /* @__PURE__ */ jsxRuntime.jsx(louis.MenuList, { placement: "right-start", children })
22
- }
23
- );
24
- };
25
- exports.Menu = Menu;
5
+ const React = require("react");
6
+ const DropdownContent = ({ items }) => /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: items.map((item, index) => /* @__PURE__ */ jsxRuntime.jsxs(React.Fragment, { children: [
7
+ !!index && item.some((value) => value.visible) && /* @__PURE__ */ jsxRuntime.jsx(louis.MenuDivider, {}),
8
+ item.filter(({ visible }) => visible).map(({ link, label, onClick }) => /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { href: link || "#", "aria-label": label, onClick, children: label }, label))
9
+ ] }, item[0].label)) });
10
+ exports.DropdownContent = DropdownContent;
26
11
  //# sourceMappingURL=harmony79.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony79.cjs","sources":["../src/components/Sidebar/Widgets/Menu/Menu.tsx"],"sourcesContent":["import { MenuList, type SvgIconProps, Tooltip, Menu as UIMenu } from '@lokalise/louis'\nimport clsx from 'clsx'\nimport type { FC, PropsWithChildren } from 'react'\nimport styles from './Menu.module.css'\n\ntype MenuProps = PropsWithChildren<{\n\t/** Icon component from @lokalise/louis to display in the menu button */\n\ticon: FC<SvgIconProps>\n}>\n\n/**\n * A dropdown menu component that displays an icon button which reveals a menu list when clicked.\n * The menu is positioned to the right of the button and includes a tooltip.\n *\n * Used primarily for dropdown menus in the Sidebar, such as the Help menu.\n *\n * @example\n * ```tsx\n * <Menu icon={HelpCenterIcon}>\n * <MenuItem href=\"/docs\">Documentation</MenuItem>\n * <MenuItem href=\"/tutorial\">Tutorials</MenuItem>\n * <MenuDivider />\n * <MenuItem href=\"/blog\">Blog</MenuItem>\n * </Menu>\n * ```\n */\nexport const Menu = ({ children, icon: Icon }: MenuProps) => {\n\treturn (\n\t\t<UIMenu\n\t\t\tmenuButton={({ opened }) => (\n\t\t\t\t<Tooltip placement=\"right\" tooltip=\"Help\">\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName={clsx(styles.dropdownButton, {\n\t\t\t\t\t\t\t[styles.dropdownButtonActive]: opened,\n\t\t\t\t\t\t})}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Icon size=\"25px\" />\n\t\t\t\t\t</button>\n\t\t\t\t</Tooltip>\n\t\t\t)}\n\t\t>\n\t\t\t<MenuList placement=\"right-start\">{children}</MenuList>\n\t\t</UIMenu>\n\t)\n}\n"],"names":["jsx","UIMenu","Tooltip","clsx","styles","MenuList"],"mappings":";;;;;;AA0BO,MAAM,OAAO,CAAC,EAAE,UAAU,MAAM,WAAsB;AAE3D,SAAAA,2BAAA;AAAA,IAACC,MAAA;AAAA,IAAA;AAAA,MACA,YAAY,CAAC,EAAE,OAAO,qCACpBC,MAAQ,SAAA,EAAA,WAAU,SAAQ,SAAQ,QAClC,UAAAF,2BAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACA,MAAK;AAAA,UACL,WAAWG,KAAAA,KAAKC,YAAA,QAAO,gBAAgB;AAAA,YACtC,CAACA,YAAAA,QAAO,oBAAoB,GAAG;AAAA,UAAA,CAC/B;AAAA,UAED,UAAAJ,2BAAAA,IAAC,MAAK,EAAA,MAAK,OAAO,CAAA;AAAA,QAAA;AAAA,MAAA,GAEpB;AAAA,MAGD,UAACA,2BAAA,IAAAK,MAAA,UAAA,EAAS,WAAU,eAAe,SAAS,CAAA;AAAA,IAAA;AAAA,EAC7C;AAEF;;"}
1
+ {"version":3,"file":"harmony79.cjs","sources":["../src/components/NavigationPanel/components/DropdownContent/DropdownContent.tsx"],"sourcesContent":["import type { DropdownItem } from '@features/navigation/types/navigation'\nimport { MenuDivider, MenuItem } from '@lokalise/louis'\nimport { Fragment } from 'react'\n\nexport const DropdownContent = ({ items }: { items: DropdownItem[][] }) => (\n\t<>\n\t\t{items.map((item, index) => (\n\t\t\t<Fragment key={item[0].label}>\n\t\t\t\t{!!index && item.some((value) => value.visible) && <MenuDivider />}\n\t\t\t\t{item\n\t\t\t\t\t.filter(({ visible }) => visible)\n\t\t\t\t\t.map(({ link, label, onClick }) => (\n\t\t\t\t\t\t<MenuItem key={label} href={link || '#'} aria-label={label} onClick={onClick}>\n\t\t\t\t\t\t\t{label}\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t))}\n\t\t\t</Fragment>\n\t\t))}\n\t</>\n)\n"],"names":["jsx","Fragment","jsxs","MenuDivider","MenuItem"],"mappings":";;;;;AAIO,MAAM,kBAAkB,CAAC,EAAE,MAAA,MACjCA,2BAAAA,IAAAC,WAAAA,UAAA,EACE,UAAM,MAAA,IAAI,CAAC,MAAM,UACjBC,2BAAAA,KAACD,MAAAA,UAAA,EACC,UAAA;AAAA,EAAC,CAAA,CAAC,SAAS,KAAK,KAAK,CAAC,UAAU,MAAM,OAAO,KAAKD,+BAACG,MAAAA,aAAY,CAAA,CAAA;AAAA,EAC/D,KACC,OAAO,CAAC,EAAE,cAAc,OAAO,EAC/B,IAAI,CAAC,EAAE,MAAM,OAAO,QAAQ,MAC3BH,+BAAAI,MAAAA,UAAA,EAAqB,MAAM,QAAQ,KAAK,cAAY,OAAO,SAC1D,UADa,MAAA,GAAA,KAEf,CACA;AAAA,EAAA,GARY,KAAK,CAAC,EAAE,KASvB,CACA,EACF,CAAA;;"}
@@ -1,26 +1,11 @@
1
- import { jsx } from "react/jsx-runtime";
2
- import { Menu as Menu$1, MenuList, Tooltip } from "@lokalise/louis";
3
- import { clsx } from "./harmony73.mjs";
4
- import styles from "./harmony104.mjs";
5
- const Menu = ({ children, icon: Icon }) => {
6
- return /* @__PURE__ */ jsx(
7
- Menu$1,
8
- {
9
- menuButton: ({ opened }) => /* @__PURE__ */ jsx(Tooltip, { placement: "right", tooltip: "Help", children: /* @__PURE__ */ jsx(
10
- "button",
11
- {
12
- type: "button",
13
- className: clsx(styles.dropdownButton, {
14
- [styles.dropdownButtonActive]: opened
15
- }),
16
- children: /* @__PURE__ */ jsx(Icon, { size: "25px" })
17
- }
18
- ) }),
19
- children: /* @__PURE__ */ jsx(MenuList, { placement: "right-start", children })
20
- }
21
- );
22
- };
1
+ import { jsx, Fragment, jsxs } from "react/jsx-runtime";
2
+ import { MenuDivider, MenuItem } from "@lokalise/louis";
3
+ import { Fragment as Fragment$1 } from "react";
4
+ const DropdownContent = ({ items }) => /* @__PURE__ */ jsx(Fragment, { children: items.map((item, index) => /* @__PURE__ */ jsxs(Fragment$1, { children: [
5
+ !!index && item.some((value) => value.visible) && /* @__PURE__ */ jsx(MenuDivider, {}),
6
+ item.filter(({ visible }) => visible).map(({ link, label, onClick }) => /* @__PURE__ */ jsx(MenuItem, { href: link || "#", "aria-label": label, onClick, children: label }, label))
7
+ ] }, item[0].label)) });
23
8
  export {
24
- Menu
9
+ DropdownContent
25
10
  };
26
11
  //# sourceMappingURL=harmony79.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony79.mjs","sources":["../src/components/Sidebar/Widgets/Menu/Menu.tsx"],"sourcesContent":["import { MenuList, type SvgIconProps, Tooltip, Menu as UIMenu } from '@lokalise/louis'\nimport clsx from 'clsx'\nimport type { FC, PropsWithChildren } from 'react'\nimport styles from './Menu.module.css'\n\ntype MenuProps = PropsWithChildren<{\n\t/** Icon component from @lokalise/louis to display in the menu button */\n\ticon: FC<SvgIconProps>\n}>\n\n/**\n * A dropdown menu component that displays an icon button which reveals a menu list when clicked.\n * The menu is positioned to the right of the button and includes a tooltip.\n *\n * Used primarily for dropdown menus in the Sidebar, such as the Help menu.\n *\n * @example\n * ```tsx\n * <Menu icon={HelpCenterIcon}>\n * <MenuItem href=\"/docs\">Documentation</MenuItem>\n * <MenuItem href=\"/tutorial\">Tutorials</MenuItem>\n * <MenuDivider />\n * <MenuItem href=\"/blog\">Blog</MenuItem>\n * </Menu>\n * ```\n */\nexport const Menu = ({ children, icon: Icon }: MenuProps) => {\n\treturn (\n\t\t<UIMenu\n\t\t\tmenuButton={({ opened }) => (\n\t\t\t\t<Tooltip placement=\"right\" tooltip=\"Help\">\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName={clsx(styles.dropdownButton, {\n\t\t\t\t\t\t\t[styles.dropdownButtonActive]: opened,\n\t\t\t\t\t\t})}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Icon size=\"25px\" />\n\t\t\t\t\t</button>\n\t\t\t\t</Tooltip>\n\t\t\t)}\n\t\t>\n\t\t\t<MenuList placement=\"right-start\">{children}</MenuList>\n\t\t</UIMenu>\n\t)\n}\n"],"names":["UIMenu"],"mappings":";;;;AA0BO,MAAM,OAAO,CAAC,EAAE,UAAU,MAAM,WAAsB;AAE3D,SAAA;AAAA,IAACA;AAAAA,IAAA;AAAA,MACA,YAAY,CAAC,EAAE,OAAO,0BACpB,SAAQ,EAAA,WAAU,SAAQ,SAAQ,QAClC,UAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACA,MAAK;AAAA,UACL,WAAW,KAAK,OAAO,gBAAgB;AAAA,YACtC,CAAC,OAAO,oBAAoB,GAAG;AAAA,UAAA,CAC/B;AAAA,UAED,UAAA,oBAAC,MAAK,EAAA,MAAK,OAAO,CAAA;AAAA,QAAA;AAAA,MAAA,GAEpB;AAAA,MAGD,UAAC,oBAAA,UAAA,EAAS,WAAU,eAAe,SAAS,CAAA;AAAA,IAAA;AAAA,EAC7C;AAEF;"}
1
+ {"version":3,"file":"harmony79.mjs","sources":["../src/components/NavigationPanel/components/DropdownContent/DropdownContent.tsx"],"sourcesContent":["import type { DropdownItem } from '@features/navigation/types/navigation'\nimport { MenuDivider, MenuItem } from '@lokalise/louis'\nimport { Fragment } from 'react'\n\nexport const DropdownContent = ({ items }: { items: DropdownItem[][] }) => (\n\t<>\n\t\t{items.map((item, index) => (\n\t\t\t<Fragment key={item[0].label}>\n\t\t\t\t{!!index && item.some((value) => value.visible) && <MenuDivider />}\n\t\t\t\t{item\n\t\t\t\t\t.filter(({ visible }) => visible)\n\t\t\t\t\t.map(({ link, label, onClick }) => (\n\t\t\t\t\t\t<MenuItem key={label} href={link || '#'} aria-label={label} onClick={onClick}>\n\t\t\t\t\t\t\t{label}\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t))}\n\t\t\t</Fragment>\n\t\t))}\n\t</>\n)\n"],"names":["Fragment"],"mappings":";;;AAIO,MAAM,kBAAkB,CAAC,EAAE,MAAA,MACjC,oBAAA,UAAA,EACE,UAAM,MAAA,IAAI,CAAC,MAAM,UACjB,qBAACA,YAAA,EACC,UAAA;AAAA,EAAC,CAAA,CAAC,SAAS,KAAK,KAAK,CAAC,UAAU,MAAM,OAAO,KAAK,oBAAC,aAAY,CAAA,CAAA;AAAA,EAC/D,KACC,OAAO,CAAC,EAAE,cAAc,OAAO,EAC/B,IAAI,CAAC,EAAE,MAAM,OAAO,QAAQ,MAC3B,oBAAA,UAAA,EAAqB,MAAM,QAAQ,KAAK,cAAY,OAAO,SAC1D,UADa,MAAA,GAAA,KAEf,CACA;AAAA,EAAA,GARY,KAAK,CAAC,EAAE,KASvB,CACA,EACF,CAAA;"}
package/dist/harmony8.cjs CHANGED
@@ -4,13 +4,13 @@ const jsxRuntime = require("react/jsx-runtime");
4
4
  const NavigationPanel = require("./harmony3.cjs");
5
5
  const Breadcrumbs = require("./harmony5.cjs");
6
6
  const NavigationTabs = require("./harmony6.cjs");
7
- const NavigationClient = require("./harmony91.cjs");
8
- const useNavigation = require("./harmony92.cjs");
9
- const useNavigationQueries = require("./harmony93.cjs");
10
- const NavigationClientProvider = require("./harmony94.cjs");
7
+ const NavigationClient = require("./harmony83.cjs");
8
+ const useNavigation = require("./harmony84.cjs");
9
+ const useNavigationQueries = require("./harmony85.cjs");
10
+ const NavigationClientProvider = require("./harmony86.cjs");
11
11
  const reactQuery = require("@tanstack/react-query");
12
12
  const React = require("react");
13
- const queryClient = require("./harmony95.cjs");
13
+ const queryClient = require("./harmony87.cjs");
14
14
  const ProjectNavigationPanelInner = ({
15
15
  page,
16
16
  projectId
package/dist/harmony8.mjs CHANGED
@@ -2,13 +2,13 @@ import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { NavigationPanel } from "./harmony3.mjs";
3
3
  import { Breadcrumbs } from "./harmony5.mjs";
4
4
  import { NavigationTabs } from "./harmony6.mjs";
5
- import { NavigationClient } from "./harmony91.mjs";
6
- import { useNavigation } from "./harmony92.mjs";
7
- import { useNavigationData } from "./harmony93.mjs";
8
- import { NavigationClientProvider } from "./harmony94.mjs";
5
+ import { NavigationClient } from "./harmony83.mjs";
6
+ import { useNavigation } from "./harmony84.mjs";
7
+ import { useNavigationData } from "./harmony85.mjs";
8
+ import { NavigationClientProvider } from "./harmony86.mjs";
9
9
  import { QueryClientProvider } from "@tanstack/react-query";
10
10
  import { useMemo } from "react";
11
- import { queryClient } from "./harmony95.mjs";
11
+ import { queryClient } from "./harmony87.mjs";
12
12
  const ProjectNavigationPanelInner = ({
13
13
  page,
14
14
  projectId