@lokalise/harmony 1.37.1-exp-epic2x.1 → 1.39.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (691) hide show
  1. package/dist/harmony.cjs +71 -62
  2. package/dist/harmony.cjs.map +1 -1
  3. package/dist/harmony.css +317 -110
  4. package/dist/harmony.mjs +71 -62
  5. package/dist/harmony.mjs.map +1 -1
  6. package/dist/harmony10.cjs +16 -45
  7. package/dist/harmony10.cjs.map +1 -1
  8. package/dist/harmony10.mjs +16 -45
  9. package/dist/harmony10.mjs.map +1 -1
  10. package/dist/harmony100.cjs +5 -10
  11. package/dist/harmony100.cjs.map +1 -1
  12. package/dist/harmony100.mjs +5 -10
  13. package/dist/harmony100.mjs.map +1 -1
  14. package/dist/harmony101.cjs +9 -29
  15. package/dist/harmony101.cjs.map +1 -1
  16. package/dist/harmony101.mjs +8 -28
  17. package/dist/harmony101.mjs.map +1 -1
  18. package/dist/harmony102.cjs +24 -14
  19. package/dist/harmony102.cjs.map +1 -1
  20. package/dist/harmony102.mjs +23 -13
  21. package/dist/harmony102.mjs.map +1 -1
  22. package/dist/harmony103.cjs +6 -37
  23. package/dist/harmony103.cjs.map +1 -1
  24. package/dist/harmony103.mjs +5 -36
  25. package/dist/harmony103.mjs.map +1 -1
  26. package/dist/harmony104.cjs +18 -11
  27. package/dist/harmony104.cjs.map +1 -1
  28. package/dist/harmony104.mjs +19 -12
  29. package/dist/harmony104.mjs.map +1 -1
  30. package/dist/harmony105.cjs +12 -22
  31. package/dist/harmony105.cjs.map +1 -1
  32. package/dist/harmony105.mjs +11 -21
  33. package/dist/harmony105.mjs.map +1 -1
  34. package/dist/harmony106.cjs +164 -33
  35. package/dist/harmony106.cjs.map +1 -1
  36. package/dist/harmony106.mjs +164 -33
  37. package/dist/harmony106.mjs.map +1 -1
  38. package/dist/harmony107.cjs +44 -21
  39. package/dist/harmony107.cjs.map +1 -1
  40. package/dist/harmony107.mjs +43 -20
  41. package/dist/harmony107.mjs.map +1 -1
  42. package/dist/harmony108.cjs +9 -18
  43. package/dist/harmony108.cjs.map +1 -1
  44. package/dist/harmony108.mjs +10 -19
  45. package/dist/harmony108.mjs.map +1 -1
  46. package/dist/harmony109.cjs +9 -3
  47. package/dist/harmony109.cjs.map +1 -1
  48. package/dist/harmony109.mjs +9 -3
  49. package/dist/harmony109.mjs.map +1 -1
  50. package/dist/harmony11.cjs +51 -8
  51. package/dist/harmony11.cjs.map +1 -1
  52. package/dist/harmony11.mjs +51 -8
  53. package/dist/harmony11.mjs.map +1 -1
  54. package/dist/harmony110.cjs +12 -16
  55. package/dist/harmony110.cjs.map +1 -1
  56. package/dist/harmony110.mjs +11 -15
  57. package/dist/harmony110.mjs.map +1 -1
  58. package/dist/harmony111.cjs +21 -5
  59. package/dist/harmony111.cjs.map +1 -1
  60. package/dist/harmony111.mjs +21 -5
  61. package/dist/harmony111.mjs.map +1 -1
  62. package/dist/harmony112.cjs +15 -6
  63. package/dist/harmony112.cjs.map +1 -1
  64. package/dist/harmony112.mjs +14 -5
  65. package/dist/harmony112.mjs.map +1 -1
  66. package/dist/harmony113.cjs +19 -10
  67. package/dist/harmony113.cjs.map +1 -1
  68. package/dist/harmony113.mjs +18 -9
  69. package/dist/harmony113.mjs.map +1 -1
  70. package/dist/harmony114.cjs +18 -3
  71. package/dist/harmony114.cjs.map +1 -1
  72. package/dist/harmony114.mjs +18 -3
  73. package/dist/harmony114.mjs.map +1 -1
  74. package/dist/harmony115.cjs +6 -9
  75. package/dist/harmony115.cjs.map +1 -1
  76. package/dist/harmony115.mjs +5 -8
  77. package/dist/harmony115.mjs.map +1 -1
  78. package/dist/harmony116.cjs +132 -24
  79. package/dist/harmony116.cjs.map +1 -1
  80. package/dist/harmony116.mjs +131 -23
  81. package/dist/harmony116.mjs.map +1 -1
  82. package/dist/harmony117.cjs +9 -3
  83. package/dist/harmony117.cjs.map +1 -1
  84. package/dist/harmony117.mjs +9 -3
  85. package/dist/harmony117.mjs.map +1 -1
  86. package/dist/harmony118.cjs +6 -13
  87. package/dist/harmony118.cjs.map +1 -1
  88. package/dist/harmony118.mjs +5 -12
  89. package/dist/harmony118.mjs.map +1 -1
  90. package/dist/harmony119.cjs +40 -6
  91. package/dist/harmony119.cjs.map +1 -1
  92. package/dist/harmony119.mjs +39 -5
  93. package/dist/harmony119.mjs.map +1 -1
  94. package/dist/harmony12.cjs +8 -4
  95. package/dist/harmony12.cjs.map +1 -1
  96. package/dist/harmony12.mjs +8 -4
  97. package/dist/harmony12.mjs.map +1 -1
  98. package/dist/harmony120.cjs +60 -96
  99. package/dist/harmony120.cjs.map +1 -1
  100. package/dist/harmony120.mjs +60 -96
  101. package/dist/harmony120.mjs.map +1 -1
  102. package/dist/harmony121.cjs +7 -13
  103. package/dist/harmony121.cjs.map +1 -1
  104. package/dist/harmony121.mjs +7 -13
  105. package/dist/harmony121.mjs.map +1 -1
  106. package/dist/harmony122.cjs +98 -13
  107. package/dist/harmony122.cjs.map +1 -1
  108. package/dist/harmony122.mjs +81 -13
  109. package/dist/harmony122.mjs.map +1 -1
  110. package/dist/harmony123.cjs +86 -35
  111. package/dist/harmony123.cjs.map +1 -1
  112. package/dist/harmony123.mjs +86 -35
  113. package/dist/harmony123.mjs.map +1 -1
  114. package/dist/harmony124.cjs +29 -27
  115. package/dist/harmony124.cjs.map +1 -1
  116. package/dist/harmony124.mjs +29 -27
  117. package/dist/harmony124.mjs.map +1 -1
  118. package/dist/harmony125.cjs +7 -14
  119. package/dist/harmony125.cjs.map +1 -1
  120. package/dist/harmony125.mjs +6 -13
  121. package/dist/harmony125.mjs.map +1 -1
  122. package/dist/harmony126.cjs +6 -16
  123. package/dist/harmony126.cjs.map +1 -1
  124. package/dist/harmony126.mjs +5 -15
  125. package/dist/harmony126.mjs.map +1 -1
  126. package/dist/harmony127.cjs +6 -17
  127. package/dist/harmony127.cjs.map +1 -1
  128. package/dist/harmony127.mjs +5 -16
  129. package/dist/harmony127.mjs.map +1 -1
  130. package/dist/harmony128.cjs +62 -11
  131. package/dist/harmony128.cjs.map +1 -1
  132. package/dist/harmony128.mjs +61 -10
  133. package/dist/harmony128.mjs.map +1 -1
  134. package/dist/harmony129.cjs +88 -16
  135. package/dist/harmony129.cjs.map +1 -1
  136. package/dist/harmony129.mjs +88 -16
  137. package/dist/harmony129.mjs.map +1 -1
  138. package/dist/harmony13.cjs +5 -32
  139. package/dist/harmony13.cjs.map +1 -1
  140. package/dist/harmony13.mjs +5 -32
  141. package/dist/harmony13.mjs.map +1 -1
  142. package/dist/harmony130.cjs +19 -22
  143. package/dist/harmony130.cjs.map +1 -1
  144. package/dist/harmony130.mjs +18 -21
  145. package/dist/harmony130.mjs.map +1 -1
  146. package/dist/harmony131.cjs +10 -12
  147. package/dist/harmony131.cjs.map +1 -1
  148. package/dist/harmony131.mjs +10 -12
  149. package/dist/harmony131.mjs.map +1 -1
  150. package/dist/harmony132.cjs +95 -5
  151. package/dist/harmony132.cjs.map +1 -1
  152. package/dist/harmony132.mjs +95 -5
  153. package/dist/harmony132.mjs.map +1 -1
  154. package/dist/harmony133.cjs +12 -11
  155. package/dist/harmony133.cjs.map +1 -1
  156. package/dist/harmony133.mjs +12 -11
  157. package/dist/harmony133.mjs.map +1 -1
  158. package/dist/harmony134.cjs +13 -31
  159. package/dist/harmony134.cjs.map +1 -1
  160. package/dist/harmony134.mjs +13 -31
  161. package/dist/harmony134.mjs.map +1 -1
  162. package/dist/harmony135.cjs +34 -12
  163. package/dist/harmony135.cjs.map +1 -1
  164. package/dist/harmony135.mjs +34 -12
  165. package/dist/harmony135.mjs.map +1 -1
  166. package/dist/harmony136.cjs +31 -0
  167. package/dist/harmony136.cjs.map +1 -0
  168. package/dist/harmony136.mjs +31 -0
  169. package/dist/harmony136.mjs.map +1 -0
  170. package/dist/harmony137.cjs +10 -0
  171. package/dist/harmony137.cjs.map +1 -0
  172. package/dist/harmony137.mjs +10 -0
  173. package/dist/harmony137.mjs.map +1 -0
  174. package/dist/harmony138.cjs +60 -0
  175. package/dist/harmony138.cjs.map +1 -0
  176. package/dist/harmony138.mjs +60 -0
  177. package/dist/harmony138.mjs.map +1 -0
  178. package/dist/harmony139.cjs +63 -0
  179. package/dist/harmony139.cjs.map +1 -0
  180. package/dist/harmony139.mjs +63 -0
  181. package/dist/harmony139.mjs.map +1 -0
  182. package/dist/harmony14.cjs +32 -5
  183. package/dist/harmony14.cjs.map +1 -1
  184. package/dist/harmony14.mjs +32 -5
  185. package/dist/harmony14.mjs.map +1 -1
  186. package/dist/harmony140.cjs +21 -0
  187. package/dist/harmony140.cjs.map +1 -0
  188. package/dist/harmony140.mjs +21 -0
  189. package/dist/harmony140.mjs.map +1 -0
  190. package/dist/harmony141.cjs +16 -0
  191. package/dist/harmony141.cjs.map +1 -0
  192. package/dist/harmony141.mjs +16 -0
  193. package/dist/harmony141.mjs.map +1 -0
  194. package/dist/harmony142.cjs +18 -0
  195. package/dist/harmony142.cjs.map +1 -0
  196. package/dist/harmony142.mjs +18 -0
  197. package/dist/harmony142.mjs.map +1 -0
  198. package/dist/harmony143.cjs +19 -0
  199. package/dist/harmony143.cjs.map +1 -0
  200. package/dist/harmony143.mjs +19 -0
  201. package/dist/harmony143.mjs.map +1 -0
  202. package/dist/harmony144.cjs +14 -0
  203. package/dist/harmony144.cjs.map +1 -0
  204. package/dist/harmony144.mjs +14 -0
  205. package/dist/harmony144.mjs.map +1 -0
  206. package/dist/harmony145.cjs +19 -0
  207. package/dist/harmony145.cjs.map +1 -0
  208. package/dist/harmony145.mjs +19 -0
  209. package/dist/harmony145.mjs.map +1 -0
  210. package/dist/harmony146.cjs +24 -0
  211. package/dist/harmony146.cjs.map +1 -0
  212. package/dist/harmony146.mjs +24 -0
  213. package/dist/harmony146.mjs.map +1 -0
  214. package/dist/harmony147.cjs +15 -0
  215. package/dist/harmony147.cjs.map +1 -0
  216. package/dist/harmony147.mjs +15 -0
  217. package/dist/harmony147.mjs.map +1 -0
  218. package/dist/harmony148.cjs +9 -0
  219. package/dist/harmony148.cjs.map +1 -0
  220. package/dist/harmony148.mjs +9 -0
  221. package/dist/harmony148.mjs.map +1 -0
  222. package/dist/harmony149.cjs +15 -0
  223. package/dist/harmony149.cjs.map +1 -0
  224. package/dist/harmony149.mjs +15 -0
  225. package/dist/harmony149.mjs.map +1 -0
  226. package/dist/harmony15.cjs +5 -11
  227. package/dist/harmony15.cjs.map +1 -1
  228. package/dist/harmony15.mjs +5 -11
  229. package/dist/harmony15.mjs.map +1 -1
  230. package/dist/harmony150.cjs +35 -0
  231. package/dist/harmony150.cjs.map +1 -0
  232. package/dist/harmony150.mjs +35 -0
  233. package/dist/harmony150.mjs.map +1 -0
  234. package/dist/harmony151.cjs +17 -0
  235. package/dist/harmony151.cjs.map +1 -0
  236. package/dist/harmony151.mjs +17 -0
  237. package/dist/harmony151.mjs.map +1 -0
  238. package/dist/harmony152.cjs +49 -0
  239. package/dist/harmony152.cjs.map +1 -0
  240. package/dist/harmony152.mjs +49 -0
  241. package/dist/harmony152.mjs.map +1 -0
  242. package/dist/harmony153.cjs +15 -0
  243. package/dist/harmony153.cjs.map +1 -0
  244. package/dist/harmony153.mjs +15 -0
  245. package/dist/harmony153.mjs.map +1 -0
  246. package/dist/harmony16.cjs +9 -9
  247. package/dist/harmony16.cjs.map +1 -1
  248. package/dist/harmony16.mjs +9 -9
  249. package/dist/harmony16.mjs.map +1 -1
  250. package/dist/harmony17.cjs +9 -16
  251. package/dist/harmony17.cjs.map +1 -1
  252. package/dist/harmony17.mjs +9 -16
  253. package/dist/harmony17.mjs.map +1 -1
  254. package/dist/harmony18.cjs +16 -14
  255. package/dist/harmony18.cjs.map +1 -1
  256. package/dist/harmony18.mjs +16 -14
  257. package/dist/harmony18.mjs.map +1 -1
  258. package/dist/harmony19.cjs +13 -139
  259. package/dist/harmony19.cjs.map +1 -1
  260. package/dist/harmony19.mjs +13 -139
  261. package/dist/harmony19.mjs.map +1 -1
  262. package/dist/harmony20.cjs +141 -13
  263. package/dist/harmony20.cjs.map +1 -1
  264. package/dist/harmony20.mjs +141 -13
  265. package/dist/harmony20.mjs.map +1 -1
  266. package/dist/harmony21.cjs +20 -17
  267. package/dist/harmony21.cjs.map +1 -1
  268. package/dist/harmony21.mjs +20 -17
  269. package/dist/harmony21.mjs.map +1 -1
  270. package/dist/harmony22.cjs +13 -17
  271. package/dist/harmony22.cjs.map +1 -1
  272. package/dist/harmony22.mjs +13 -17
  273. package/dist/harmony22.mjs.map +1 -1
  274. package/dist/harmony23.cjs +15 -18
  275. package/dist/harmony23.cjs.map +1 -1
  276. package/dist/harmony23.mjs +15 -18
  277. package/dist/harmony23.mjs.map +1 -1
  278. package/dist/harmony24.cjs +17 -19
  279. package/dist/harmony24.cjs.map +1 -1
  280. package/dist/harmony24.mjs +17 -19
  281. package/dist/harmony24.mjs.map +1 -1
  282. package/dist/harmony25.cjs +18 -8
  283. package/dist/harmony25.cjs.map +1 -1
  284. package/dist/harmony25.mjs +18 -8
  285. package/dist/harmony25.mjs.map +1 -1
  286. package/dist/harmony26.cjs +19 -10
  287. package/dist/harmony26.cjs.map +1 -1
  288. package/dist/harmony26.mjs +19 -10
  289. package/dist/harmony26.mjs.map +1 -1
  290. package/dist/harmony27.cjs +10 -55
  291. package/dist/harmony27.cjs.map +1 -1
  292. package/dist/harmony27.mjs +10 -55
  293. package/dist/harmony27.mjs.map +1 -1
  294. package/dist/harmony28.cjs +11 -31
  295. package/dist/harmony28.cjs.map +1 -1
  296. package/dist/harmony28.mjs +11 -31
  297. package/dist/harmony28.mjs.map +1 -1
  298. package/dist/harmony29.cjs +54 -10
  299. package/dist/harmony29.cjs.map +1 -1
  300. package/dist/harmony29.mjs +54 -10
  301. package/dist/harmony29.mjs.map +1 -1
  302. package/dist/harmony3.cjs +9 -5
  303. package/dist/harmony3.cjs.map +1 -1
  304. package/dist/harmony3.mjs +9 -5
  305. package/dist/harmony3.mjs.map +1 -1
  306. package/dist/harmony30.cjs +26 -50
  307. package/dist/harmony30.cjs.map +1 -1
  308. package/dist/harmony30.mjs +27 -51
  309. package/dist/harmony30.mjs.map +1 -1
  310. package/dist/harmony31.cjs +8 -27
  311. package/dist/harmony31.cjs.map +1 -1
  312. package/dist/harmony31.mjs +9 -28
  313. package/dist/harmony31.mjs.map +1 -1
  314. package/dist/harmony32.cjs +52 -15
  315. package/dist/harmony32.cjs.map +1 -1
  316. package/dist/harmony32.mjs +53 -16
  317. package/dist/harmony32.mjs.map +1 -1
  318. package/dist/harmony33.cjs +27 -15
  319. package/dist/harmony33.cjs.map +1 -1
  320. package/dist/harmony33.mjs +28 -16
  321. package/dist/harmony33.mjs.map +1 -1
  322. package/dist/harmony34.cjs +16 -12
  323. package/dist/harmony34.cjs.map +1 -1
  324. package/dist/harmony34.mjs +17 -13
  325. package/dist/harmony34.mjs.map +1 -1
  326. package/dist/harmony35.cjs +28 -14
  327. package/dist/harmony35.cjs.map +1 -1
  328. package/dist/harmony35.mjs +28 -14
  329. package/dist/harmony35.mjs.map +1 -1
  330. package/dist/harmony36.cjs +14 -14
  331. package/dist/harmony36.cjs.map +1 -1
  332. package/dist/harmony36.mjs +14 -14
  333. package/dist/harmony36.mjs.map +1 -1
  334. package/dist/harmony37.cjs +6 -6
  335. package/dist/harmony37.cjs.map +1 -1
  336. package/dist/harmony37.mjs +6 -6
  337. package/dist/harmony37.mjs.map +1 -1
  338. package/dist/harmony38.cjs +6 -6
  339. package/dist/harmony38.cjs.map +1 -1
  340. package/dist/harmony38.mjs +6 -6
  341. package/dist/harmony38.mjs.map +1 -1
  342. package/dist/harmony39.cjs +5 -4
  343. package/dist/harmony39.cjs.map +1 -1
  344. package/dist/harmony39.mjs +5 -4
  345. package/dist/harmony39.mjs.map +1 -1
  346. package/dist/harmony4.cjs +24 -15
  347. package/dist/harmony4.cjs.map +1 -1
  348. package/dist/harmony4.mjs +24 -15
  349. package/dist/harmony4.mjs.map +1 -1
  350. package/dist/harmony40.cjs +7 -15
  351. package/dist/harmony40.cjs.map +1 -1
  352. package/dist/harmony40.mjs +8 -16
  353. package/dist/harmony40.mjs.map +1 -1
  354. package/dist/harmony41.cjs +6 -6
  355. package/dist/harmony41.cjs.map +1 -1
  356. package/dist/harmony41.mjs +7 -7
  357. package/dist/harmony41.mjs.map +1 -1
  358. package/dist/harmony42.cjs +16 -7
  359. package/dist/harmony42.cjs.map +1 -1
  360. package/dist/harmony42.mjs +16 -7
  361. package/dist/harmony42.mjs.map +1 -1
  362. package/dist/harmony43.cjs +7 -11
  363. package/dist/harmony43.cjs.map +1 -1
  364. package/dist/harmony43.mjs +9 -13
  365. package/dist/harmony43.mjs.map +1 -1
  366. package/dist/harmony44.cjs +6 -10
  367. package/dist/harmony44.cjs.map +1 -1
  368. package/dist/harmony44.mjs +8 -12
  369. package/dist/harmony44.mjs.map +1 -1
  370. package/dist/harmony45.cjs +14 -12
  371. package/dist/harmony45.cjs.map +1 -1
  372. package/dist/harmony45.mjs +14 -12
  373. package/dist/harmony45.mjs.map +1 -1
  374. package/dist/harmony46.cjs +14 -12
  375. package/dist/harmony46.cjs.map +1 -1
  376. package/dist/harmony46.mjs +15 -13
  377. package/dist/harmony46.mjs.map +1 -1
  378. package/dist/harmony47.cjs +9 -9
  379. package/dist/harmony47.cjs.map +1 -1
  380. package/dist/harmony47.mjs +9 -9
  381. package/dist/harmony47.mjs.map +1 -1
  382. package/dist/harmony48.cjs +12 -14
  383. package/dist/harmony48.cjs.map +1 -1
  384. package/dist/harmony48.mjs +13 -15
  385. package/dist/harmony48.mjs.map +1 -1
  386. package/dist/harmony49.cjs +12 -14
  387. package/dist/harmony49.cjs.map +1 -1
  388. package/dist/harmony49.mjs +12 -14
  389. package/dist/harmony49.mjs.map +1 -1
  390. package/dist/harmony5.cjs +1 -1
  391. package/dist/harmony5.mjs +1 -1
  392. package/dist/harmony50.cjs +10 -10
  393. package/dist/harmony50.cjs.map +1 -1
  394. package/dist/harmony50.mjs +10 -10
  395. package/dist/harmony50.mjs.map +1 -1
  396. package/dist/harmony51.cjs +8 -8
  397. package/dist/harmony51.cjs.map +1 -1
  398. package/dist/harmony51.mjs +8 -8
  399. package/dist/harmony51.mjs.map +1 -1
  400. package/dist/harmony52.cjs +8 -8
  401. package/dist/harmony52.cjs.map +1 -1
  402. package/dist/harmony52.mjs +8 -8
  403. package/dist/harmony52.mjs.map +1 -1
  404. package/dist/harmony53.cjs +14 -12
  405. package/dist/harmony53.cjs.map +1 -1
  406. package/dist/harmony53.mjs +14 -12
  407. package/dist/harmony53.mjs.map +1 -1
  408. package/dist/harmony54.cjs +8 -8
  409. package/dist/harmony54.cjs.map +1 -1
  410. package/dist/harmony54.mjs +8 -8
  411. package/dist/harmony54.mjs.map +1 -1
  412. package/dist/harmony55.cjs +12 -14
  413. package/dist/harmony55.cjs.map +1 -1
  414. package/dist/harmony55.mjs +12 -14
  415. package/dist/harmony55.mjs.map +1 -1
  416. package/dist/harmony56.cjs +10 -7
  417. package/dist/harmony56.cjs.map +1 -1
  418. package/dist/harmony56.mjs +12 -9
  419. package/dist/harmony56.mjs.map +1 -1
  420. package/dist/harmony57.cjs +10 -7
  421. package/dist/harmony57.cjs.map +1 -1
  422. package/dist/harmony57.mjs +12 -9
  423. package/dist/harmony57.mjs.map +1 -1
  424. package/dist/harmony58.cjs +13 -123
  425. package/dist/harmony58.cjs.map +1 -1
  426. package/dist/harmony58.mjs +13 -123
  427. package/dist/harmony58.mjs.map +1 -1
  428. package/dist/harmony59.cjs +13 -81
  429. package/dist/harmony59.cjs.map +1 -1
  430. package/dist/harmony59.mjs +13 -81
  431. package/dist/harmony59.mjs.map +1 -1
  432. package/dist/harmony6.cjs +4 -4
  433. package/dist/harmony6.cjs.map +1 -1
  434. package/dist/harmony6.mjs +4 -4
  435. package/dist/harmony6.mjs.map +1 -1
  436. package/dist/harmony60.cjs +122 -4
  437. package/dist/harmony60.cjs.map +1 -1
  438. package/dist/harmony60.mjs +122 -4
  439. package/dist/harmony60.mjs.map +1 -1
  440. package/dist/harmony61.cjs +81 -22
  441. package/dist/harmony61.cjs.map +1 -1
  442. package/dist/harmony61.mjs +80 -21
  443. package/dist/harmony61.mjs.map +1 -1
  444. package/dist/harmony62.cjs +4 -18
  445. package/dist/harmony62.cjs.map +1 -1
  446. package/dist/harmony62.mjs +4 -18
  447. package/dist/harmony62.mjs.map +1 -1
  448. package/dist/harmony63.cjs +11 -131
  449. package/dist/harmony63.cjs.map +1 -1
  450. package/dist/harmony63.mjs +11 -131
  451. package/dist/harmony63.mjs.map +1 -1
  452. package/dist/harmony64.cjs +37 -34
  453. package/dist/harmony64.cjs.map +1 -1
  454. package/dist/harmony64.mjs +37 -34
  455. package/dist/harmony64.mjs.map +1 -1
  456. package/dist/harmony65.cjs +143 -24
  457. package/dist/harmony65.cjs.map +1 -1
  458. package/dist/harmony65.mjs +143 -24
  459. package/dist/harmony65.mjs.map +1 -1
  460. package/dist/harmony66.cjs +35 -7
  461. package/dist/harmony66.cjs.map +1 -1
  462. package/dist/harmony66.mjs +35 -7
  463. package/dist/harmony66.mjs.map +1 -1
  464. package/dist/harmony67.cjs +24 -82
  465. package/dist/harmony67.cjs.map +1 -1
  466. package/dist/harmony67.mjs +24 -82
  467. package/dist/harmony67.mjs.map +1 -1
  468. package/dist/harmony68.cjs +7 -32
  469. package/dist/harmony68.cjs.map +1 -1
  470. package/dist/harmony68.mjs +7 -32
  471. package/dist/harmony68.mjs.map +1 -1
  472. package/dist/harmony69.cjs +82 -16
  473. package/dist/harmony69.cjs.map +1 -1
  474. package/dist/harmony69.mjs +82 -16
  475. package/dist/harmony69.mjs.map +1 -1
  476. package/dist/harmony7.cjs +1 -1
  477. package/dist/harmony7.mjs +1 -1
  478. package/dist/harmony70.cjs +55 -16
  479. package/dist/harmony70.cjs.map +1 -1
  480. package/dist/harmony70.mjs +54 -15
  481. package/dist/harmony70.mjs.map +1 -1
  482. package/dist/harmony71.cjs +19 -19
  483. package/dist/harmony71.cjs.map +1 -1
  484. package/dist/harmony71.mjs +18 -18
  485. package/dist/harmony71.mjs.map +1 -1
  486. package/dist/harmony72.cjs +14 -60
  487. package/dist/harmony72.cjs.map +1 -1
  488. package/dist/harmony72.mjs +14 -60
  489. package/dist/harmony72.mjs.map +1 -1
  490. package/dist/harmony73.cjs +18 -51
  491. package/dist/harmony73.cjs.map +1 -1
  492. package/dist/harmony73.mjs +17 -50
  493. package/dist/harmony73.mjs.map +1 -1
  494. package/dist/harmony74.cjs +62 -40
  495. package/dist/harmony74.cjs.map +1 -1
  496. package/dist/harmony74.mjs +61 -39
  497. package/dist/harmony74.mjs.map +1 -1
  498. package/dist/harmony75.cjs +5 -8
  499. package/dist/harmony75.cjs.map +1 -1
  500. package/dist/harmony75.mjs +5 -8
  501. package/dist/harmony75.mjs.map +1 -1
  502. package/dist/harmony76.cjs +8 -7
  503. package/dist/harmony76.cjs.map +1 -1
  504. package/dist/harmony76.mjs +9 -8
  505. package/dist/harmony76.mjs.map +1 -1
  506. package/dist/harmony77.cjs +14 -25
  507. package/dist/harmony77.cjs.map +1 -1
  508. package/dist/harmony77.mjs +15 -26
  509. package/dist/harmony77.mjs.map +1 -1
  510. package/dist/harmony78.cjs +23 -3
  511. package/dist/harmony78.cjs.map +1 -1
  512. package/dist/harmony78.mjs +23 -3
  513. package/dist/harmony78.mjs.map +1 -1
  514. package/dist/harmony79.cjs +4 -32
  515. package/dist/harmony79.cjs.map +1 -1
  516. package/dist/harmony79.mjs +5 -33
  517. package/dist/harmony79.mjs.map +1 -1
  518. package/dist/harmony8.cjs +59 -30
  519. package/dist/harmony8.cjs.map +1 -1
  520. package/dist/harmony8.mjs +59 -30
  521. package/dist/harmony8.mjs.map +1 -1
  522. package/dist/harmony80.cjs +30 -25
  523. package/dist/harmony80.cjs.map +1 -1
  524. package/dist/harmony80.mjs +30 -25
  525. package/dist/harmony80.mjs.map +1 -1
  526. package/dist/harmony81.cjs +32 -3
  527. package/dist/harmony81.cjs.map +1 -1
  528. package/dist/harmony81.mjs +32 -3
  529. package/dist/harmony81.mjs.map +1 -1
  530. package/dist/harmony82.cjs +15 -14
  531. package/dist/harmony82.cjs.map +1 -1
  532. package/dist/harmony82.mjs +15 -14
  533. package/dist/harmony82.mjs.map +1 -1
  534. package/dist/harmony83.cjs +25 -69
  535. package/dist/harmony83.cjs.map +1 -1
  536. package/dist/harmony83.mjs +27 -71
  537. package/dist/harmony83.mjs.map +1 -1
  538. package/dist/harmony84.cjs +58 -11
  539. package/dist/harmony84.cjs.map +1 -1
  540. package/dist/harmony84.mjs +59 -12
  541. package/dist/harmony84.mjs.map +1 -1
  542. package/dist/harmony85.cjs +10 -31
  543. package/dist/harmony85.cjs.map +1 -1
  544. package/dist/harmony85.mjs +9 -30
  545. package/dist/harmony85.mjs.map +1 -1
  546. package/dist/harmony86.cjs +7 -8
  547. package/dist/harmony86.cjs.map +1 -1
  548. package/dist/harmony86.mjs +8 -9
  549. package/dist/harmony86.mjs.map +1 -1
  550. package/dist/harmony87.cjs +20 -38
  551. package/dist/harmony87.cjs.map +1 -1
  552. package/dist/harmony87.mjs +22 -40
  553. package/dist/harmony87.mjs.map +1 -1
  554. package/dist/harmony88.cjs +4 -10
  555. package/dist/harmony88.cjs.map +1 -1
  556. package/dist/harmony88.mjs +3 -9
  557. package/dist/harmony88.mjs.map +1 -1
  558. package/dist/harmony89.cjs +31 -9
  559. package/dist/harmony89.cjs.map +1 -1
  560. package/dist/harmony89.mjs +32 -10
  561. package/dist/harmony89.mjs.map +1 -1
  562. package/dist/harmony9.cjs +30 -23
  563. package/dist/harmony9.cjs.map +1 -1
  564. package/dist/harmony9.mjs +30 -23
  565. package/dist/harmony9.mjs.map +1 -1
  566. package/dist/harmony90.cjs +44 -22
  567. package/dist/harmony90.cjs.map +1 -1
  568. package/dist/harmony90.mjs +43 -21
  569. package/dist/harmony90.mjs.map +1 -1
  570. package/dist/harmony91.cjs +28 -11
  571. package/dist/harmony91.cjs.map +1 -1
  572. package/dist/harmony91.mjs +28 -11
  573. package/dist/harmony91.mjs.map +1 -1
  574. package/dist/harmony92.cjs +67 -13
  575. package/dist/harmony92.cjs.map +1 -1
  576. package/dist/harmony92.mjs +66 -12
  577. package/dist/harmony92.mjs.map +1 -1
  578. package/dist/harmony93.cjs +11 -95
  579. package/dist/harmony93.cjs.map +1 -1
  580. package/dist/harmony93.mjs +12 -79
  581. package/dist/harmony93.mjs.map +1 -1
  582. package/dist/harmony94.cjs +3 -14
  583. package/dist/harmony94.cjs.map +1 -1
  584. package/dist/harmony94.mjs +3 -14
  585. package/dist/harmony94.mjs.map +1 -1
  586. package/dist/harmony95.cjs +7 -21
  587. package/dist/harmony95.cjs.map +1 -1
  588. package/dist/harmony95.mjs +6 -20
  589. package/dist/harmony95.mjs.map +1 -1
  590. package/dist/harmony97.cjs +9 -14
  591. package/dist/harmony97.cjs.map +1 -1
  592. package/dist/harmony97.mjs +8 -13
  593. package/dist/harmony97.mjs.map +1 -1
  594. package/dist/harmony98.cjs +53 -13
  595. package/dist/harmony98.cjs.map +1 -1
  596. package/dist/harmony98.mjs +55 -15
  597. package/dist/harmony98.mjs.map +1 -1
  598. package/dist/harmony99.cjs +40 -19
  599. package/dist/harmony99.cjs.map +1 -1
  600. package/dist/harmony99.mjs +41 -20
  601. package/dist/harmony99.mjs.map +1 -1
  602. package/dist/types/src/components/NavigationPanel/components/DropdownContent/DropdownContent.d.ts +1 -1
  603. package/dist/types/src/components/NavigationPanel/components/NavigationTabs/NavigationTabs.d.ts +1 -1
  604. package/dist/types/src/components/NavigationPanel/components/NavigationTabs/__fixtures__/navigationMock.d.ts +1 -1
  605. package/dist/types/src/components/NavigationPanel/components/NavigationTabs/helpers.d.ts +1 -1
  606. package/dist/types/src/components/Sidebar/Sidebar.d.ts +49 -15
  607. package/dist/types/src/components/Sidebar/Widgets/Avatar/Avatar.d.ts +0 -5
  608. package/dist/types/src/components/Sidebar/Widgets/Menu/Menu.d.ts +2 -3
  609. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileMenu.d.ts +24 -11
  610. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileMenu.stories.d.ts +5 -3
  611. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileMenuContent.d.ts +6 -0
  612. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileMenuContext.d.ts +3 -0
  613. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileMenuProvider.d.ts +7 -0
  614. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileSettingsMenuItem/ProfileSettingsMenuItem.d.ts +35 -10
  615. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamMenuItem/TeamMenuItem.d.ts +3 -1
  616. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamSwitch/TeamSwitch.d.ts +7 -5
  617. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/UpgradeMenuItem/UpgradeMenuItem.d.ts +9 -6
  618. package/dist/types/src/components/Sidebar/Widgets/Tasks/utils/content.d.ts +0 -4
  619. package/dist/types/src/components/Sidebar/types.d.ts +0 -72
  620. package/dist/types/src/components/Sidebar/utils/index.d.ts +4 -0
  621. package/dist/types/src/features/auth/core/types/jwtTokenPayload.d.ts +10 -16
  622. package/dist/types/src/features/auth/core/types/jwtTokenPayload.fixture.d.ts +11 -15
  623. package/dist/types/src/features/auth/factories/headerBuilderFactories.d.ts +9 -0
  624. package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedProjectContributor.d.ts +1 -1
  625. package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedSessionPayload.d.ts +5 -7
  626. package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedUser.d.ts +1 -1
  627. package/dist/types/src/features/auth/node.d.ts +1 -0
  628. package/dist/types/src/features/auth/utils/permissions.d.ts +2 -0
  629. package/dist/types/src/features/navigation/ProjectNavigationPanel.d.ts +13 -0
  630. package/dist/types/src/features/navigation/core/NavigationClient.d.ts +23 -0
  631. package/dist/types/src/features/navigation/hooks/useExpertNavigation.d.ts +8 -0
  632. package/dist/types/src/features/navigation/hooks/useNavigation.d.ts +18 -0
  633. package/dist/types/src/features/navigation/hooks/useNavigationQueries.d.ts +279 -0
  634. package/dist/types/src/features/navigation/hooks/useNextgenNavigation.d.ts +16 -0
  635. package/dist/types/src/features/navigation/providers/NavigationClientProvider.d.ts +9 -0
  636. package/dist/types/src/features/navigation/schemas/navigationSchema.d.ts +22 -0
  637. package/dist/types/src/{components/NavigationPanel → features/navigation}/types/navigation.d.ts +1 -0
  638. package/dist/types/src/features/navigation/utils/toolbarVisibility.d.ts +28 -0
  639. package/dist/types/src/features/publicApi/contributors.d.ts +16 -16
  640. package/dist/types/src/features/publicApi/hooks/useAddContributorsMutation.d.ts +1 -1
  641. package/dist/types/src/features/publicApi/hooks/useCreateProjectMutation.d.ts +3 -2
  642. package/dist/types/src/features/publicApi/hooks/useGetProjectPermissionMetaQuery.d.ts +2 -2
  643. package/dist/types/src/features/publicApi/hooks/useGetTeamUsersQuery.d.ts +1 -1
  644. package/dist/types/src/features/publicApi/hooks/useListContributorsQuery.d.ts +1 -1
  645. package/dist/types/src/features/publicApi/hooks/useListPermissionTemplates.d.ts +1 -1
  646. package/dist/types/src/features/publicApi/hooks/useListProjectsQuery.d.ts +3 -2
  647. package/dist/types/src/features/publicApi/hooks/useListTeamUsersQuery.d.ts +1 -1
  648. package/dist/types/src/features/publicApi/hooks/useRetrieveContributorQuery.d.ts +1 -1
  649. package/dist/types/src/features/publicApi/hooks/useRetrieveProjectQuery.d.ts +2 -1
  650. package/dist/types/src/features/publicApi/hooks/useRetrieveUserPermissions.d.ts +23 -0
  651. package/dist/types/src/features/publicApi/hooks/useUpdateContributorMutation.d.ts +1 -1
  652. package/dist/types/src/features/publicApi/hooks/useUpdateProjectMutation.d.ts +2 -1
  653. package/dist/types/src/features/publicApi/permissionTemplates.d.ts +4 -4
  654. package/dist/types/src/features/publicApi/projects.d.ts +50 -28
  655. package/dist/types/src/features/publicApi/teamUsers.d.ts +119 -8
  656. package/dist/types/src/features/publicApi/types/contributorTypes.d.ts +18 -18
  657. package/dist/types/src/features/publicApi/types/permissionTemplateTypes.d.ts +6 -6
  658. package/dist/types/src/features/publicApi/types/permissionTypes.d.ts +3 -2
  659. package/dist/types/src/features/publicApi/types/projectTypes.d.ts +42 -27
  660. package/dist/types/src/features/publicApi/types/teamUserTypes.d.ts +76 -10
  661. package/dist/types/src/node.d.ts +2 -0
  662. package/dist/types/src/shared/queryClient.d.ts +2 -0
  663. package/package.json +2 -1
  664. package/dist/types/src/components/Sidebar/SidebarContent/SidebarContent.d.ts +0 -7
  665. package/dist/types/src/components/Sidebar/SidebarContext.d.ts +0 -3
  666. package/dist/types/src/components/Sidebar/SidebarProvider.d.ts +0 -3
  667. package/dist/types/src/components/Sidebar/Widgets/HelpMenu/HelpMenu.d.ts +0 -13
  668. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/BillingMenuItem/BillingMenuItem.d.ts +0 -13
  669. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/CreateNewTeam/CreateNewTeam.d.ts +0 -17
  670. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/CreateNewTeam/CreateNewTeam.test.d.ts +0 -1
  671. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/CreateNewTeamPlaceholder/CreateNewTeamPlaceholder.d.ts +0 -17
  672. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/CreateNewTeamPlaceholder/CreateNewTeamPlaceholder.test.d.ts +0 -1
  673. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/DarkModeToggle/DarkModeToggle.d.ts +0 -18
  674. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileSettingsMenuItem/ProfileSettingsMenuItem.test.d.ts +0 -1
  675. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProviderMenuItem/ProviderMenuItem.d.ts +0 -13
  676. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProviderMenuItem/ProviderMenuItem.test.d.ts +0 -1
  677. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamMenuItem/TeamMenuItem.test.d.ts +0 -1
  678. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamSettingsMenuItem/TeamSettingsMenuItem.d.ts +0 -13
  679. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamSettingsMenuItem/TeamSettingsMenuItem.test.d.ts +0 -1
  680. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamSwitch/TeamSwitch.test.d.ts +0 -1
  681. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/UpgradeMenuItem/UpgradeMenuItem.test.d.ts +0 -1
  682. package/dist/types/src/components/Sidebar/hooks/useSidebar.d.ts +0 -1
  683. package/dist/types/src/components/Sidebar/hooks/useSidebarDataLoader.d.ts +0 -5
  684. package/dist/types/src/utils/user/permissions.d.ts +0 -9
  685. package/dist/types/src/utils/user/permissions.test.d.ts +0 -1
  686. package/dist/types/tests/mocks/sidebar/sidebar.d.ts +0 -19
  687. package/dist/types/tests/utils/sidebar.d.ts +0 -4
  688. /package/dist/types/src/components/{Sidebar/Widgets/Avatar/Avatar.test.d.ts → NavigationPanel/NavigationPanel.test.d.ts} +0 -0
  689. /package/dist/types/src/components/Sidebar/{Widgets/ProfileMenu/UpgradeIcon → UpgradeIcon}/UpgradeIcon.d.ts +0 -0
  690. /package/dist/types/src/components/Sidebar/Widgets/{HelpMenu/HelpMenu.test.d.ts → ProfileMenu/ProfileMenu.test.d.ts} +0 -0
  691. /package/dist/types/src/{components/Sidebar/Widgets/IconLink/IconLink.test.d.ts → shared/queryClient.test.d.ts} +0 -0
@@ -1,17 +1,12 @@
1
- import { jsx } from "react/jsx-runtime";
2
- import { useSidebar } from "./harmony84.mjs";
3
- import { MenuItem } from "@lokalise/louis";
4
- import { canChangeBilling } from "./harmony85.mjs";
5
- const BillingMenuItem = () => {
6
- const {
7
- data: { jwt }
8
- } = useSidebar();
9
- if (!canChangeBilling(jwt.result)) {
10
- return null;
11
- }
12
- return /* @__PURE__ */ jsx(MenuItem, { href: "/team#billing", children: "Billing" });
1
+ const dropdownButton = "_dropdownButton_1naek_1";
2
+ const dropdownButtonActive = "_dropdownButtonActive_1naek_19";
3
+ const styles = {
4
+ dropdownButton,
5
+ dropdownButtonActive
13
6
  };
14
7
  export {
15
- BillingMenuItem
8
+ styles as default,
9
+ dropdownButton,
10
+ dropdownButtonActive
16
11
  };
17
12
  //# sourceMappingURL=harmony97.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony97.mjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/BillingMenuItem/BillingMenuItem.tsx"],"sourcesContent":["import { useSidebar } from '@components/Sidebar/hooks/useSidebar'\nimport { MenuItem } from '@lokalise/louis'\nimport { canChangeBilling } from '@utils/user/permissions'\n\n/**\n * A menu item component for navigating to the billing section.\n * Checks the user's permissions using the Sidebar context and renders\n * nothing if the user does not have access.\n *\n * @example\n * ```\n * <BillingMenuItem />\n * ```\n *\n * @note This component must be used within a Sidebar Context.\n */\n\nexport const BillingMenuItem = () => {\n\tconst {\n\t\tdata: { jwt },\n\t} = useSidebar()\n\n\tif (!canChangeBilling(jwt.result)) {\n\t\treturn null\n\t}\n\n\treturn <MenuItem href=\"/team#billing\">Billing</MenuItem>\n}\n"],"names":[],"mappings":";;;;AAiBO,MAAM,kBAAkB,MAAM;AAC9B,QAAA;AAAA,IACL,MAAM,EAAE,IAAI;AAAA,MACT,WAAW;AAEf,MAAI,CAAC,iBAAiB,IAAI,MAAM,GAAG;AAC3B,WAAA;AAAA,EAAA;AAGR,SAAQ,oBAAA,UAAA,EAAS,MAAK,iBAAgB,UAAO,WAAA;AAC9C;"}
1
+ {"version":3,"file":"harmony97.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -1,20 +1,60 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
- const useSidebar = require("./harmony84.cjs");
5
4
  const louis = require("@lokalise/louis");
6
- const permissions = require("./harmony85.cjs");
7
- const CreateNewTeam = ({ onCreateTeam }) => {
5
+ const clsx = require("./harmony72.cjs");
6
+ const UpgradeIcon = require("./harmony104.cjs");
7
+ const ProfileMenuContent_module = require("./harmony114.cjs");
8
+ const ProfileMenuContext = require("./harmony100.cjs");
9
+ const ProfileMenuContent = ({ children }) => {
8
10
  const {
9
- data: { jwt }
10
- } = useSidebar.useSidebar();
11
- if (!permissions.canCreateTeam(jwt.result)) {
12
- return null;
13
- }
14
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
15
- /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { onClick: onCreateTeam, children: "Create new team" }),
16
- /* @__PURE__ */ jsxRuntime.jsx(louis.MenuDivider, {})
17
- ] });
11
+ currentTeam,
12
+ otherTeams,
13
+ showUpgradeCta,
14
+ showBillingButton,
15
+ allowTeamCreation,
16
+ isProviderAlpha,
17
+ canAccessTeamSettings,
18
+ isEndOfTrialActive,
19
+ isTeamSuspended,
20
+ isFullyAuthenticated
21
+ } = ProfileMenuContext.useProfileMenu();
22
+ return /* @__PURE__ */ jsxRuntime.jsx(
23
+ louis.Menu,
24
+ {
25
+ menuButton: () => /* @__PURE__ */ jsxRuntime.jsxs("button", { className: ProfileMenuContent_module.default.profileButton, "aria-label": "Profile menu", type: "button", children: [
26
+ (currentTeam == null ? void 0 : currentTeam.logoUrl) ? /* @__PURE__ */ jsxRuntime.jsx(
27
+ "img",
28
+ {
29
+ src: currentTeam.logoUrl,
30
+ className: clsx.clsx(ProfileMenuContent_module.default.profileImage, {
31
+ [ProfileMenuContent_module.default.profileImageHighlight]: showUpgradeCta
32
+ }),
33
+ alt: "Team Logo"
34
+ }
35
+ ) : /* @__PURE__ */ jsxRuntime.jsx(
36
+ "div",
37
+ {
38
+ className: clsx.clsx(ProfileMenuContent_module.default.userIconWrapper, "flex-row", "align-center", "items-center", {
39
+ [ProfileMenuContent_module.default.profileImageHighlight]: showUpgradeCta
40
+ }),
41
+ children: /* @__PURE__ */ jsxRuntime.jsx(louis.UserIcon, { size: "25px" })
42
+ }
43
+ ),
44
+ showUpgradeCta && /* @__PURE__ */ jsxRuntime.jsx(UpgradeIcon.UpgradeIcon, { className: ProfileMenuContent_module.default.profileImageUpgradeIcon })
45
+ ] }),
46
+ children: /* @__PURE__ */ jsxRuntime.jsx(louis.MenuList, { placement: "right-end", className: ProfileMenuContent_module.default.menuContainer, children: children({
47
+ allowTeamCreation,
48
+ otherTeams,
49
+ canAccessTeamSettings,
50
+ isEndOfTrialActive,
51
+ isTeamSuspended,
52
+ showBillingButton,
53
+ isProviderAlpha,
54
+ isFullyAuthenticated
55
+ }) })
56
+ }
57
+ );
18
58
  };
19
- exports.CreateNewTeam = CreateNewTeam;
59
+ exports.ProfileMenuContent = ProfileMenuContent;
20
60
  //# sourceMappingURL=harmony98.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony98.cjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/CreateNewTeam/CreateNewTeam.tsx"],"sourcesContent":["import { useSidebar } from '@components/Sidebar/hooks/useSidebar'\nimport { MenuDivider, MenuItem } from '@lokalise/louis'\nimport { canCreateTeam } from '@utils/user/permissions'\n\ntype CreateNewTeamProps = {\n\tonCreateTeam: () => void\n}\n\n/**\n * A menu item component for creating a new team.\n * Checks the user's permissions using the Sidebar context and renders\n * nothing if the user does not have access.\n *\n * @example\n * ```\n * <CreateNewTeam onCreateTeam={handleCreateTeam} />\n * ```\n *\n * @note This component must be used within a Sidebar Context.\n */\n\nexport const CreateNewTeam = ({ onCreateTeam }: CreateNewTeamProps) => {\n\tconst {\n\t\tdata: { jwt },\n\t} = useSidebar()\n\n\tif (!canCreateTeam(jwt.result)) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem onClick={onCreateTeam}>Create new team</MenuItem>\n\t\t\t<MenuDivider />\n\t\t</>\n\t)\n}\n"],"names":["useSidebar","canCreateTeam","jsxs","Fragment","jsx","MenuItem","MenuDivider"],"mappings":";;;;;;AAqBO,MAAM,gBAAgB,CAAC,EAAE,mBAAuC;AAChE,QAAA;AAAA,IACL,MAAM,EAAE,IAAI;AAAA,MACTA,sBAAW;AAEf,MAAI,CAACC,YAAA,cAAc,IAAI,MAAM,GAAG;AACxB,WAAA;AAAA,EAAA;AAGR,SAEEC,2BAAA,KAAAC,qBAAA,EAAA,UAAA;AAAA,IAACC,2BAAA,IAAAC,MAAA,UAAA,EAAS,SAAS,cAAc,UAAe,mBAAA;AAAA,mCAC/CC,MAAY,aAAA,CAAA,CAAA;AAAA,EAAA,GACd;AAEF;;"}
1
+ {"version":3,"file":"harmony98.cjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/ProfileMenuContent.tsx"],"sourcesContent":["import { Menu, MenuList, UserIcon } from '@lokalise/louis'\nimport clsx from 'clsx'\nimport type { ReactNode } from 'react'\nimport { UpgradeIcon } from '../../UpgradeIcon/UpgradeIcon'\nimport styles from './ProfileMenuContent.module.css'\nimport { useProfileMenu } from './ProfileMenuContext'\nimport type { SidebarProfileMenuRenderProps } from './types'\n\nexport type ProfileMenuContentProps = {\n\tchildren: (props: SidebarProfileMenuRenderProps) => ReactNode\n}\n\nexport const ProfileMenuContent = ({ children }: ProfileMenuContentProps) => {\n\tconst {\n\t\tcurrentTeam,\n\t\totherTeams,\n\t\tshowUpgradeCta,\n\t\tshowBillingButton,\n\t\tallowTeamCreation,\n\t\tisProviderAlpha,\n\t\tcanAccessTeamSettings,\n\t\tisEndOfTrialActive,\n\t\tisTeamSuspended,\n\t\tisFullyAuthenticated,\n\t} = useProfileMenu()\n\n\treturn (\n\t\t<Menu\n\t\t\tmenuButton={() => (\n\t\t\t\t<button className={styles.profileButton} aria-label=\"Profile menu\" type=\"button\">\n\t\t\t\t\t{currentTeam?.logoUrl ? (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={currentTeam.logoUrl}\n\t\t\t\t\t\t\tclassName={clsx(styles.profileImage, {\n\t\t\t\t\t\t\t\t[styles.profileImageHighlight]: showUpgradeCta,\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\talt=\"Team Logo\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName={clsx(styles.userIconWrapper, 'flex-row', 'align-center', 'items-center', {\n\t\t\t\t\t\t\t\t[styles.profileImageHighlight]: showUpgradeCta,\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<UserIcon size={'25px'} />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t\t{showUpgradeCta && <UpgradeIcon className={styles.profileImageUpgradeIcon} />}\n\t\t\t\t</button>\n\t\t\t)}\n\t\t>\n\t\t\t<MenuList placement=\"right-end\" className={styles.menuContainer}>\n\t\t\t\t{children({\n\t\t\t\t\tallowTeamCreation,\n\t\t\t\t\totherTeams,\n\t\t\t\t\tcanAccessTeamSettings,\n\t\t\t\t\tisEndOfTrialActive,\n\t\t\t\t\tisTeamSuspended,\n\t\t\t\t\tshowBillingButton,\n\t\t\t\t\tisProviderAlpha,\n\t\t\t\t\tisFullyAuthenticated,\n\t\t\t\t})}\n\t\t\t</MenuList>\n\t\t</Menu>\n\t)\n}\n"],"names":["useProfileMenu","jsx","Menu","jsxs","styles","clsx","UserIcon","UpgradeIcon","MenuList"],"mappings":";;;;;;;;AAYO,MAAM,qBAAqB,CAAC,EAAE,eAAwC;AACtE,QAAA;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,MACGA,kCAAe;AAGlB,SAAAC,2BAAA;AAAA,IAACC,MAAA;AAAA,IAAA;AAAA,MACA,YAAY,MACXC,2BAAAA,KAAC,UAAO,EAAA,WAAWC,0BAAAA,QAAO,eAAe,cAAW,gBAAe,MAAK,UACtE,UAAA;AAAA,SAAA,2CAAa,WACbH,2BAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACA,KAAK,YAAY;AAAA,YACjB,WAAWI,KAAAA,KAAKD,0BAAA,QAAO,cAAc;AAAA,cACpC,CAACA,0BAAAA,QAAO,qBAAqB,GAAG;AAAA,YAAA,CAChC;AAAA,YACD,KAAI;AAAA,UAAA;AAAA,QAAA,IAGLH,2BAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACA,WAAWI,KAAK,KAAAD,0BAAA,QAAO,iBAAiB,YAAY,gBAAgB,gBAAgB;AAAA,cACnF,CAACA,0BAAAA,QAAO,qBAAqB,GAAG;AAAA,YAAA,CAChC;AAAA,YAED,UAAAH,2BAAAA,IAACK,MAAAA,UAAS,EAAA,MAAM,OAAQ,CAAA;AAAA,UAAA;AAAA,QACzB;AAAA,QAEA,kBAAkBL,2BAAA,IAACM,YAAY,aAAA,EAAA,WAAWH,0BAAAA,QAAO,wBAAyB,CAAA;AAAA,MAAA,GAC5E;AAAA,MAGD,yCAACI,gBAAS,EAAA,WAAU,aAAY,WAAWJ,kCAAO,eAChD,UAAS,SAAA;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MAAA,CACA,EACF,CAAA;AAAA,IAAA;AAAA,EACD;AAEF;;"}
@@ -1,20 +1,60 @@
1
- import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
- import { useSidebar } from "./harmony84.mjs";
3
- import { MenuItem, MenuDivider } from "@lokalise/louis";
4
- import { canCreateTeam } from "./harmony85.mjs";
5
- const CreateNewTeam = ({ onCreateTeam }) => {
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { Menu, MenuList, UserIcon } from "@lokalise/louis";
3
+ import { clsx } from "./harmony72.mjs";
4
+ import { UpgradeIcon } from "./harmony104.mjs";
5
+ import styles from "./harmony114.mjs";
6
+ import { useProfileMenu } from "./harmony100.mjs";
7
+ const ProfileMenuContent = ({ children }) => {
6
8
  const {
7
- data: { jwt }
8
- } = useSidebar();
9
- if (!canCreateTeam(jwt.result)) {
10
- return null;
11
- }
12
- return /* @__PURE__ */ jsxs(Fragment, { children: [
13
- /* @__PURE__ */ jsx(MenuItem, { onClick: onCreateTeam, children: "Create new team" }),
14
- /* @__PURE__ */ jsx(MenuDivider, {})
15
- ] });
9
+ currentTeam,
10
+ otherTeams,
11
+ showUpgradeCta,
12
+ showBillingButton,
13
+ allowTeamCreation,
14
+ isProviderAlpha,
15
+ canAccessTeamSettings,
16
+ isEndOfTrialActive,
17
+ isTeamSuspended,
18
+ isFullyAuthenticated
19
+ } = useProfileMenu();
20
+ return /* @__PURE__ */ jsx(
21
+ Menu,
22
+ {
23
+ menuButton: () => /* @__PURE__ */ jsxs("button", { className: styles.profileButton, "aria-label": "Profile menu", type: "button", children: [
24
+ (currentTeam == null ? void 0 : currentTeam.logoUrl) ? /* @__PURE__ */ jsx(
25
+ "img",
26
+ {
27
+ src: currentTeam.logoUrl,
28
+ className: clsx(styles.profileImage, {
29
+ [styles.profileImageHighlight]: showUpgradeCta
30
+ }),
31
+ alt: "Team Logo"
32
+ }
33
+ ) : /* @__PURE__ */ jsx(
34
+ "div",
35
+ {
36
+ className: clsx(styles.userIconWrapper, "flex-row", "align-center", "items-center", {
37
+ [styles.profileImageHighlight]: showUpgradeCta
38
+ }),
39
+ children: /* @__PURE__ */ jsx(UserIcon, { size: "25px" })
40
+ }
41
+ ),
42
+ showUpgradeCta && /* @__PURE__ */ jsx(UpgradeIcon, { className: styles.profileImageUpgradeIcon })
43
+ ] }),
44
+ children: /* @__PURE__ */ jsx(MenuList, { placement: "right-end", className: styles.menuContainer, children: children({
45
+ allowTeamCreation,
46
+ otherTeams,
47
+ canAccessTeamSettings,
48
+ isEndOfTrialActive,
49
+ isTeamSuspended,
50
+ showBillingButton,
51
+ isProviderAlpha,
52
+ isFullyAuthenticated
53
+ }) })
54
+ }
55
+ );
16
56
  };
17
57
  export {
18
- CreateNewTeam
58
+ ProfileMenuContent
19
59
  };
20
60
  //# sourceMappingURL=harmony98.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony98.mjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/CreateNewTeam/CreateNewTeam.tsx"],"sourcesContent":["import { useSidebar } from '@components/Sidebar/hooks/useSidebar'\nimport { MenuDivider, MenuItem } from '@lokalise/louis'\nimport { canCreateTeam } from '@utils/user/permissions'\n\ntype CreateNewTeamProps = {\n\tonCreateTeam: () => void\n}\n\n/**\n * A menu item component for creating a new team.\n * Checks the user's permissions using the Sidebar context and renders\n * nothing if the user does not have access.\n *\n * @example\n * ```\n * <CreateNewTeam onCreateTeam={handleCreateTeam} />\n * ```\n *\n * @note This component must be used within a Sidebar Context.\n */\n\nexport const CreateNewTeam = ({ onCreateTeam }: CreateNewTeamProps) => {\n\tconst {\n\t\tdata: { jwt },\n\t} = useSidebar()\n\n\tif (!canCreateTeam(jwt.result)) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem onClick={onCreateTeam}>Create new team</MenuItem>\n\t\t\t<MenuDivider />\n\t\t</>\n\t)\n}\n"],"names":[],"mappings":";;;;AAqBO,MAAM,gBAAgB,CAAC,EAAE,mBAAuC;AAChE,QAAA;AAAA,IACL,MAAM,EAAE,IAAI;AAAA,MACT,WAAW;AAEf,MAAI,CAAC,cAAc,IAAI,MAAM,GAAG;AACxB,WAAA;AAAA,EAAA;AAGR,SAEE,qBAAA,UAAA,EAAA,UAAA;AAAA,IAAC,oBAAA,UAAA,EAAS,SAAS,cAAc,UAAe,mBAAA;AAAA,wBAC/C,aAAY,CAAA,CAAA;AAAA,EAAA,GACd;AAEF;"}
1
+ {"version":3,"file":"harmony98.mjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/ProfileMenuContent.tsx"],"sourcesContent":["import { Menu, MenuList, UserIcon } from '@lokalise/louis'\nimport clsx from 'clsx'\nimport type { ReactNode } from 'react'\nimport { UpgradeIcon } from '../../UpgradeIcon/UpgradeIcon'\nimport styles from './ProfileMenuContent.module.css'\nimport { useProfileMenu } from './ProfileMenuContext'\nimport type { SidebarProfileMenuRenderProps } from './types'\n\nexport type ProfileMenuContentProps = {\n\tchildren: (props: SidebarProfileMenuRenderProps) => ReactNode\n}\n\nexport const ProfileMenuContent = ({ children }: ProfileMenuContentProps) => {\n\tconst {\n\t\tcurrentTeam,\n\t\totherTeams,\n\t\tshowUpgradeCta,\n\t\tshowBillingButton,\n\t\tallowTeamCreation,\n\t\tisProviderAlpha,\n\t\tcanAccessTeamSettings,\n\t\tisEndOfTrialActive,\n\t\tisTeamSuspended,\n\t\tisFullyAuthenticated,\n\t} = useProfileMenu()\n\n\treturn (\n\t\t<Menu\n\t\t\tmenuButton={() => (\n\t\t\t\t<button className={styles.profileButton} aria-label=\"Profile menu\" type=\"button\">\n\t\t\t\t\t{currentTeam?.logoUrl ? (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={currentTeam.logoUrl}\n\t\t\t\t\t\t\tclassName={clsx(styles.profileImage, {\n\t\t\t\t\t\t\t\t[styles.profileImageHighlight]: showUpgradeCta,\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\talt=\"Team Logo\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName={clsx(styles.userIconWrapper, 'flex-row', 'align-center', 'items-center', {\n\t\t\t\t\t\t\t\t[styles.profileImageHighlight]: showUpgradeCta,\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<UserIcon size={'25px'} />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t\t{showUpgradeCta && <UpgradeIcon className={styles.profileImageUpgradeIcon} />}\n\t\t\t\t</button>\n\t\t\t)}\n\t\t>\n\t\t\t<MenuList placement=\"right-end\" className={styles.menuContainer}>\n\t\t\t\t{children({\n\t\t\t\t\tallowTeamCreation,\n\t\t\t\t\totherTeams,\n\t\t\t\t\tcanAccessTeamSettings,\n\t\t\t\t\tisEndOfTrialActive,\n\t\t\t\t\tisTeamSuspended,\n\t\t\t\t\tshowBillingButton,\n\t\t\t\t\tisProviderAlpha,\n\t\t\t\t\tisFullyAuthenticated,\n\t\t\t\t})}\n\t\t\t</MenuList>\n\t\t</Menu>\n\t)\n}\n"],"names":[],"mappings":";;;;;;AAYO,MAAM,qBAAqB,CAAC,EAAE,eAAwC;AACtE,QAAA;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,MACG,eAAe;AAGlB,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,YAAY,MACX,qBAAC,UAAO,EAAA,WAAW,OAAO,eAAe,cAAW,gBAAe,MAAK,UACtE,UAAA;AAAA,SAAA,2CAAa,WACb;AAAA,UAAC;AAAA,UAAA;AAAA,YACA,KAAK,YAAY;AAAA,YACjB,WAAW,KAAK,OAAO,cAAc;AAAA,cACpC,CAAC,OAAO,qBAAqB,GAAG;AAAA,YAAA,CAChC;AAAA,YACD,KAAI;AAAA,UAAA;AAAA,QAAA,IAGL;AAAA,UAAC;AAAA,UAAA;AAAA,YACA,WAAW,KAAK,OAAO,iBAAiB,YAAY,gBAAgB,gBAAgB;AAAA,cACnF,CAAC,OAAO,qBAAqB,GAAG;AAAA,YAAA,CAChC;AAAA,YAED,UAAA,oBAAC,UAAS,EAAA,MAAM,OAAQ,CAAA;AAAA,UAAA;AAAA,QACzB;AAAA,QAEA,kBAAkB,oBAAC,aAAY,EAAA,WAAW,OAAO,wBAAyB,CAAA;AAAA,MAAA,GAC5E;AAAA,MAGD,8BAAC,UAAS,EAAA,WAAU,aAAY,WAAW,OAAO,eAChD,UAAS,SAAA;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MAAA,CACA,EACF,CAAA;AAAA,IAAA;AAAA,EACD;AAEF;"}
@@ -1,24 +1,45 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
- const useSidebar = require("./harmony84.cjs");
5
- const louis = require("@lokalise/louis");
6
- const permissions = require("./harmony85.cjs");
7
- const CreateNewTeamPlaceholder_module = require("./harmony113.cjs");
8
- const CreateNewTeamPlaceholder = ({ onClick }) => {
9
- const {
10
- data: { jwt }
11
- } = useSidebar.useSidebar();
12
- if (!permissions.canCreateTeam(jwt.result)) {
13
- return null;
14
- }
15
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
16
- /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { onClick, "data-testid": "sidebar-create-new-team-placeholder", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col", children: [
17
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: CreateNewTeamPlaceholder_module.default.mainLabel, children: "Create new team" }),
18
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: CreateNewTeamPlaceholder_module.default.subLabel, children: "Switch to Expert to create a new team" })
19
- ] }) }),
20
- /* @__PURE__ */ jsxRuntime.jsx(louis.MenuDivider, {})
21
- ] });
4
+ const plan = require("./harmony9.cjs");
5
+ const types = require("./harmony115.cjs");
6
+ const ProfileMenuContext = require("./harmony100.cjs");
7
+ const billingRoles = [
8
+ types.SidebarTeamRoles.biller,
9
+ types.SidebarTeamRoles.owner,
10
+ types.SidebarTeamRoles.admin
11
+ ];
12
+ const teamSettingsRoles = [
13
+ types.SidebarTeamRoles.biller,
14
+ types.SidebarTeamRoles.owner,
15
+ types.SidebarTeamRoles.admin
16
+ ];
17
+ const upgradeCtaRoles = [
18
+ types.SidebarTeamRoles.biller,
19
+ types.SidebarTeamRoles.owner
20
+ ];
21
+ const ProfileMenuProvider = ({ children, config }) => {
22
+ const { teams, currentTeamId, planId, isEndOfTrialActive, isFullyAuthenticated, userTeamRole } = config;
23
+ const currentTeam = teams.find((t) => t.id === currentTeamId);
24
+ const otherTeams = teams.filter((t) => t.id !== currentTeamId);
25
+ const canChangeBilling = billingRoles.includes(userTeamRole);
26
+ const canAccessTeamSettings = teamSettingsRoles.includes(userTeamRole);
27
+ const isOnFreeOrTrialPlan = plan.isFreePlan(planId) || plan.isTrialPlan(planId);
28
+ const showUpgradeCta = isFullyAuthenticated && isOnFreeOrTrialPlan && upgradeCtaRoles.includes(userTeamRole);
29
+ const showBillingButton = isFullyAuthenticated && canAccessTeamSettings && canChangeBilling;
30
+ const allowTeamCreation = isFullyAuthenticated && !isEndOfTrialActive;
31
+ const providerValue = {
32
+ ...config,
33
+ currentTeam,
34
+ otherTeams,
35
+ canChangeBilling,
36
+ canAccessTeamSettings,
37
+ isOnFreeOrTrialPlan,
38
+ showUpgradeCta,
39
+ showBillingButton,
40
+ allowTeamCreation
41
+ };
42
+ return /* @__PURE__ */ jsxRuntime.jsx(ProfileMenuContext.ProfileMenuContext.Provider, { value: providerValue, children });
22
43
  };
23
- exports.CreateNewTeamPlaceholder = CreateNewTeamPlaceholder;
44
+ exports.ProfileMenuProvider = ProfileMenuProvider;
24
45
  //# sourceMappingURL=harmony99.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony99.cjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/CreateNewTeamPlaceholder/CreateNewTeamPlaceholder.tsx"],"sourcesContent":["import { useSidebar } from '@components/Sidebar/hooks/useSidebar'\nimport { MenuDivider, MenuItem } from '@lokalise/louis'\nimport { canCreateTeam } from '@utils/user/permissions'\nimport styles from './CreateNewTeamPlaceholder.module.css'\n\ntype CreateNewTeamPlaceholderProps = {\n\tonClick: () => void\n}\n\n/**\n * A placeholder menu item for creating a new team.\n * Checks the user's permissions using the Sidebar context and renders\n * nothing if the user does not have access.\n *\n * @example\n * ```\n * <CreateNewTeamPlaceholder onClick={handleCreateTeam} />\n * ```\n *\n * @note This component must be used within a Sidebar Context.\n */\n\nexport const CreateNewTeamPlaceholder = ({ onClick }: CreateNewTeamPlaceholderProps) => {\n\tconst {\n\t\tdata: { jwt },\n\t} = useSidebar()\n\n\tif (!canCreateTeam(jwt.result)) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem onClick={onClick} data-testid=\"sidebar-create-new-team-placeholder\">\n\t\t\t\t<div className=\"flex flex-col\">\n\t\t\t\t\t<span className={styles.mainLabel}>Create new team</span>\n\t\t\t\t\t<span className={styles.subLabel}>Switch to Expert to create a new team</span>\n\t\t\t\t</div>\n\t\t\t</MenuItem>\n\t\t\t<MenuDivider />\n\t\t</>\n\t)\n}\n"],"names":["useSidebar","canCreateTeam","jsxs","Fragment","jsx","MenuItem","styles","MenuDivider"],"mappings":";;;;;;;AAsBO,MAAM,2BAA2B,CAAC,EAAE,cAA6C;AACjF,QAAA;AAAA,IACL,MAAM,EAAE,IAAI;AAAA,MACTA,sBAAW;AAEf,MAAI,CAACC,YAAA,cAAc,IAAI,MAAM,GAAG;AACxB,WAAA;AAAA,EAAA;AAGR,SAEEC,2BAAA,KAAAC,qBAAA,EAAA,UAAA;AAAA,IAAAC,2BAAAA,IAACC,kBAAS,SAAkB,eAAY,uCACvC,UAACH,2BAAAA,KAAA,OAAA,EAAI,WAAU,iBACd,UAAA;AAAA,MAAAE,2BAAA,IAAC,QAAK,EAAA,WAAWE,gCAAO,QAAA,WAAW,UAAe,mBAAA;AAAA,MACjDF,2BAAA,IAAA,QAAA,EAAK,WAAWE,gCAAA,QAAO,UAAU,UAAqC,wCAAA,CAAA;AAAA,IAAA,EAAA,CACxE,EACD,CAAA;AAAA,mCACCC,MAAY,aAAA,CAAA,CAAA;AAAA,EAAA,GACd;AAEF;;"}
1
+ {"version":3,"file":"harmony99.cjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/ProfileMenuProvider.tsx"],"sourcesContent":["import { isFreePlan, isTrialPlan } from '@utils'\nimport type { PropsWithChildren } from 'react'\nimport { type SidebarTeamRole, SidebarTeamRoles } from '../../types'\nimport { ProfileMenuContext } from './ProfileMenuContext'\nimport type { SidebarProfileMenuConfig } from './types'\n\ntype ProfileMenuProviderProps = PropsWithChildren<{\n\tconfig: SidebarProfileMenuConfig\n}>\n\nconst billingRoles: ReadonlyArray<SidebarTeamRole> = [\n\tSidebarTeamRoles.biller,\n\tSidebarTeamRoles.owner,\n\tSidebarTeamRoles.admin,\n]\n\nconst teamSettingsRoles: ReadonlyArray<SidebarTeamRole> = [\n\tSidebarTeamRoles.biller,\n\tSidebarTeamRoles.owner,\n\tSidebarTeamRoles.admin,\n]\n\nconst upgradeCtaRoles: ReadonlyArray<SidebarTeamRole> = [\n\tSidebarTeamRoles.biller,\n\tSidebarTeamRoles.owner,\n]\n\nexport const ProfileMenuProvider = ({ children, config }: ProfileMenuProviderProps) => {\n\tconst { teams, currentTeamId, planId, isEndOfTrialActive, isFullyAuthenticated, userTeamRole } =\n\t\tconfig\n\n\tconst currentTeam = teams.find((t) => t.id === currentTeamId)\n\n\tconst otherTeams = teams.filter((t) => t.id !== currentTeamId)\n\n\tconst canChangeBilling = billingRoles.includes(userTeamRole)\n\n\tconst canAccessTeamSettings = teamSettingsRoles.includes(userTeamRole)\n\n\tconst isOnFreeOrTrialPlan = isFreePlan(planId) || isTrialPlan(planId)\n\n\tconst showUpgradeCta =\n\t\tisFullyAuthenticated && isOnFreeOrTrialPlan && upgradeCtaRoles.includes(userTeamRole)\n\n\tconst showBillingButton = isFullyAuthenticated && canAccessTeamSettings && canChangeBilling\n\n\tconst allowTeamCreation = isFullyAuthenticated && !isEndOfTrialActive\n\n\tconst providerValue = {\n\t\t...config,\n\t\tcurrentTeam,\n\t\totherTeams,\n\t\tcanChangeBilling,\n\t\tcanAccessTeamSettings,\n\t\tisOnFreeOrTrialPlan,\n\t\tshowUpgradeCta,\n\t\tshowBillingButton,\n\t\tallowTeamCreation,\n\t}\n\n\treturn <ProfileMenuContext.Provider value={providerValue}>{children}</ProfileMenuContext.Provider>\n}\n"],"names":["SidebarTeamRoles","isFreePlan","isTrialPlan","ProfileMenuContext"],"mappings":";;;;;;AAUA,MAAM,eAA+C;AAAA,EACpDA,MAAAA,iBAAiB;AAAA,EACjBA,MAAAA,iBAAiB;AAAA,EACjBA,uBAAiB;AAClB;AAEA,MAAM,oBAAoD;AAAA,EACzDA,MAAAA,iBAAiB;AAAA,EACjBA,MAAAA,iBAAiB;AAAA,EACjBA,uBAAiB;AAClB;AAEA,MAAM,kBAAkD;AAAA,EACvDA,MAAAA,iBAAiB;AAAA,EACjBA,uBAAiB;AAClB;AAEO,MAAM,sBAAsB,CAAC,EAAE,UAAU,aAAuC;AACtF,QAAM,EAAE,OAAO,eAAe,QAAQ,oBAAoB,sBAAsB,iBAC/E;AAED,QAAM,cAAc,MAAM,KAAK,CAAC,MAAM,EAAE,OAAO,aAAa;AAE5D,QAAM,aAAa,MAAM,OAAO,CAAC,MAAM,EAAE,OAAO,aAAa;AAEvD,QAAA,mBAAmB,aAAa,SAAS,YAAY;AAErD,QAAA,wBAAwB,kBAAkB,SAAS,YAAY;AAErE,QAAM,sBAAsBC,KAAA,WAAW,MAAM,KAAKC,KAAAA,YAAY,MAAM;AAEpE,QAAM,iBACL,wBAAwB,uBAAuB,gBAAgB,SAAS,YAAY;AAE/E,QAAA,oBAAoB,wBAAwB,yBAAyB;AAErE,QAAA,oBAAoB,wBAAwB,CAAC;AAEnD,QAAM,gBAAgB;AAAA,IACrB,GAAG;AAAA,IACH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAEA,wCAAQC,mBAAAA,mBAAmB,UAAnB,EAA4B,OAAO,eAAgB,UAAS;AACrE;;"}
@@ -1,24 +1,45 @@
1
- import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
- import { useSidebar } from "./harmony84.mjs";
3
- import { MenuItem, MenuDivider } from "@lokalise/louis";
4
- import { canCreateTeam } from "./harmony85.mjs";
5
- import styles from "./harmony113.mjs";
6
- const CreateNewTeamPlaceholder = ({ onClick }) => {
7
- const {
8
- data: { jwt }
9
- } = useSidebar();
10
- if (!canCreateTeam(jwt.result)) {
11
- return null;
12
- }
13
- return /* @__PURE__ */ jsxs(Fragment, { children: [
14
- /* @__PURE__ */ jsx(MenuItem, { onClick, "data-testid": "sidebar-create-new-team-placeholder", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col", children: [
15
- /* @__PURE__ */ jsx("span", { className: styles.mainLabel, children: "Create new team" }),
16
- /* @__PURE__ */ jsx("span", { className: styles.subLabel, children: "Switch to Expert to create a new team" })
17
- ] }) }),
18
- /* @__PURE__ */ jsx(MenuDivider, {})
19
- ] });
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { isFreePlan, isTrialPlan } from "./harmony9.mjs";
3
+ import { SidebarTeamRoles } from "./harmony115.mjs";
4
+ import { ProfileMenuContext } from "./harmony100.mjs";
5
+ const billingRoles = [
6
+ SidebarTeamRoles.biller,
7
+ SidebarTeamRoles.owner,
8
+ SidebarTeamRoles.admin
9
+ ];
10
+ const teamSettingsRoles = [
11
+ SidebarTeamRoles.biller,
12
+ SidebarTeamRoles.owner,
13
+ SidebarTeamRoles.admin
14
+ ];
15
+ const upgradeCtaRoles = [
16
+ SidebarTeamRoles.biller,
17
+ SidebarTeamRoles.owner
18
+ ];
19
+ const ProfileMenuProvider = ({ children, config }) => {
20
+ const { teams, currentTeamId, planId, isEndOfTrialActive, isFullyAuthenticated, userTeamRole } = config;
21
+ const currentTeam = teams.find((t) => t.id === currentTeamId);
22
+ const otherTeams = teams.filter((t) => t.id !== currentTeamId);
23
+ const canChangeBilling = billingRoles.includes(userTeamRole);
24
+ const canAccessTeamSettings = teamSettingsRoles.includes(userTeamRole);
25
+ const isOnFreeOrTrialPlan = isFreePlan(planId) || isTrialPlan(planId);
26
+ const showUpgradeCta = isFullyAuthenticated && isOnFreeOrTrialPlan && upgradeCtaRoles.includes(userTeamRole);
27
+ const showBillingButton = isFullyAuthenticated && canAccessTeamSettings && canChangeBilling;
28
+ const allowTeamCreation = isFullyAuthenticated && !isEndOfTrialActive;
29
+ const providerValue = {
30
+ ...config,
31
+ currentTeam,
32
+ otherTeams,
33
+ canChangeBilling,
34
+ canAccessTeamSettings,
35
+ isOnFreeOrTrialPlan,
36
+ showUpgradeCta,
37
+ showBillingButton,
38
+ allowTeamCreation
39
+ };
40
+ return /* @__PURE__ */ jsx(ProfileMenuContext.Provider, { value: providerValue, children });
20
41
  };
21
42
  export {
22
- CreateNewTeamPlaceholder
43
+ ProfileMenuProvider
23
44
  };
24
45
  //# sourceMappingURL=harmony99.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony99.mjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/CreateNewTeamPlaceholder/CreateNewTeamPlaceholder.tsx"],"sourcesContent":["import { useSidebar } from '@components/Sidebar/hooks/useSidebar'\nimport { MenuDivider, MenuItem } from '@lokalise/louis'\nimport { canCreateTeam } from '@utils/user/permissions'\nimport styles from './CreateNewTeamPlaceholder.module.css'\n\ntype CreateNewTeamPlaceholderProps = {\n\tonClick: () => void\n}\n\n/**\n * A placeholder menu item for creating a new team.\n * Checks the user's permissions using the Sidebar context and renders\n * nothing if the user does not have access.\n *\n * @example\n * ```\n * <CreateNewTeamPlaceholder onClick={handleCreateTeam} />\n * ```\n *\n * @note This component must be used within a Sidebar Context.\n */\n\nexport const CreateNewTeamPlaceholder = ({ onClick }: CreateNewTeamPlaceholderProps) => {\n\tconst {\n\t\tdata: { jwt },\n\t} = useSidebar()\n\n\tif (!canCreateTeam(jwt.result)) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem onClick={onClick} data-testid=\"sidebar-create-new-team-placeholder\">\n\t\t\t\t<div className=\"flex flex-col\">\n\t\t\t\t\t<span className={styles.mainLabel}>Create new team</span>\n\t\t\t\t\t<span className={styles.subLabel}>Switch to Expert to create a new team</span>\n\t\t\t\t</div>\n\t\t\t</MenuItem>\n\t\t\t<MenuDivider />\n\t\t</>\n\t)\n}\n"],"names":[],"mappings":";;;;;AAsBO,MAAM,2BAA2B,CAAC,EAAE,cAA6C;AACjF,QAAA;AAAA,IACL,MAAM,EAAE,IAAI;AAAA,MACT,WAAW;AAEf,MAAI,CAAC,cAAc,IAAI,MAAM,GAAG;AACxB,WAAA;AAAA,EAAA;AAGR,SAEE,qBAAA,UAAA,EAAA,UAAA;AAAA,IAAA,oBAAC,YAAS,SAAkB,eAAY,uCACvC,UAAC,qBAAA,OAAA,EAAI,WAAU,iBACd,UAAA;AAAA,MAAA,oBAAC,QAAK,EAAA,WAAW,OAAO,WAAW,UAAe,mBAAA;AAAA,MACjD,oBAAA,QAAA,EAAK,WAAW,OAAO,UAAU,UAAqC,wCAAA,CAAA;AAAA,IAAA,EAAA,CACxE,EACD,CAAA;AAAA,wBACC,aAAY,CAAA,CAAA;AAAA,EAAA,GACd;AAEF;"}
1
+ {"version":3,"file":"harmony99.mjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/ProfileMenuProvider.tsx"],"sourcesContent":["import { isFreePlan, isTrialPlan } from '@utils'\nimport type { PropsWithChildren } from 'react'\nimport { type SidebarTeamRole, SidebarTeamRoles } from '../../types'\nimport { ProfileMenuContext } from './ProfileMenuContext'\nimport type { SidebarProfileMenuConfig } from './types'\n\ntype ProfileMenuProviderProps = PropsWithChildren<{\n\tconfig: SidebarProfileMenuConfig\n}>\n\nconst billingRoles: ReadonlyArray<SidebarTeamRole> = [\n\tSidebarTeamRoles.biller,\n\tSidebarTeamRoles.owner,\n\tSidebarTeamRoles.admin,\n]\n\nconst teamSettingsRoles: ReadonlyArray<SidebarTeamRole> = [\n\tSidebarTeamRoles.biller,\n\tSidebarTeamRoles.owner,\n\tSidebarTeamRoles.admin,\n]\n\nconst upgradeCtaRoles: ReadonlyArray<SidebarTeamRole> = [\n\tSidebarTeamRoles.biller,\n\tSidebarTeamRoles.owner,\n]\n\nexport const ProfileMenuProvider = ({ children, config }: ProfileMenuProviderProps) => {\n\tconst { teams, currentTeamId, planId, isEndOfTrialActive, isFullyAuthenticated, userTeamRole } =\n\t\tconfig\n\n\tconst currentTeam = teams.find((t) => t.id === currentTeamId)\n\n\tconst otherTeams = teams.filter((t) => t.id !== currentTeamId)\n\n\tconst canChangeBilling = billingRoles.includes(userTeamRole)\n\n\tconst canAccessTeamSettings = teamSettingsRoles.includes(userTeamRole)\n\n\tconst isOnFreeOrTrialPlan = isFreePlan(planId) || isTrialPlan(planId)\n\n\tconst showUpgradeCta =\n\t\tisFullyAuthenticated && isOnFreeOrTrialPlan && upgradeCtaRoles.includes(userTeamRole)\n\n\tconst showBillingButton = isFullyAuthenticated && canAccessTeamSettings && canChangeBilling\n\n\tconst allowTeamCreation = isFullyAuthenticated && !isEndOfTrialActive\n\n\tconst providerValue = {\n\t\t...config,\n\t\tcurrentTeam,\n\t\totherTeams,\n\t\tcanChangeBilling,\n\t\tcanAccessTeamSettings,\n\t\tisOnFreeOrTrialPlan,\n\t\tshowUpgradeCta,\n\t\tshowBillingButton,\n\t\tallowTeamCreation,\n\t}\n\n\treturn <ProfileMenuContext.Provider value={providerValue}>{children}</ProfileMenuContext.Provider>\n}\n"],"names":[],"mappings":";;;;AAUA,MAAM,eAA+C;AAAA,EACpD,iBAAiB;AAAA,EACjB,iBAAiB;AAAA,EACjB,iBAAiB;AAClB;AAEA,MAAM,oBAAoD;AAAA,EACzD,iBAAiB;AAAA,EACjB,iBAAiB;AAAA,EACjB,iBAAiB;AAClB;AAEA,MAAM,kBAAkD;AAAA,EACvD,iBAAiB;AAAA,EACjB,iBAAiB;AAClB;AAEO,MAAM,sBAAsB,CAAC,EAAE,UAAU,aAAuC;AACtF,QAAM,EAAE,OAAO,eAAe,QAAQ,oBAAoB,sBAAsB,iBAC/E;AAED,QAAM,cAAc,MAAM,KAAK,CAAC,MAAM,EAAE,OAAO,aAAa;AAE5D,QAAM,aAAa,MAAM,OAAO,CAAC,MAAM,EAAE,OAAO,aAAa;AAEvD,QAAA,mBAAmB,aAAa,SAAS,YAAY;AAErD,QAAA,wBAAwB,kBAAkB,SAAS,YAAY;AAErE,QAAM,sBAAsB,WAAW,MAAM,KAAK,YAAY,MAAM;AAEpE,QAAM,iBACL,wBAAwB,uBAAuB,gBAAgB,SAAS,YAAY;AAE/E,QAAA,oBAAoB,wBAAwB,yBAAyB;AAErE,QAAA,oBAAoB,wBAAwB,CAAC;AAEnD,QAAM,gBAAgB;AAAA,IACrB,GAAG;AAAA,IACH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAEA,6BAAQ,mBAAmB,UAAnB,EAA4B,OAAO,eAAgB,UAAS;AACrE;"}
@@ -1,4 +1,4 @@
1
- import { DropdownItem } from '../../types/navigation';
1
+ import { DropdownItem } from '../../../../features/navigation/types/navigation';
2
2
  export declare const DropdownContent: ({ items }: {
3
3
  items: DropdownItem[][];
4
4
  }) => import("react/jsx-runtime").JSX.Element;
@@ -1,4 +1,4 @@
1
- import { NavigationTabsItem as NavigationTabsItemTypes } from '../../types/navigation';
1
+ import { NavigationTabsItem as NavigationTabsItemTypes } from '../../../../features/navigation/types/navigation';
2
2
  type NavigationTabsProps = {
3
3
  navigation: NavigationTabsItemTypes[];
4
4
  activeItem: string;
@@ -1,2 +1,2 @@
1
- import { NavigationTabsItem } from '../../../types/navigation';
1
+ import { NavigationTabsItem } from '../../../../../features/navigation/types/navigation';
2
2
  export declare const navigation: NavigationTabsItem[];
@@ -1,2 +1,2 @@
1
- import { NavigationTabsItem } from '../../types/navigation';
1
+ import { NavigationTabsItem } from '../../../../features/navigation/types/navigation';
2
2
  export declare const isNavigationItemVisible: (item: NavigationTabsItem) => boolean;
@@ -1,19 +1,53 @@
1
- import { HTMLProps } from 'react';
2
- import { SidebarContentProps } from './SidebarContent/SidebarContent';
3
- import { SidebarConfig } from './types';
1
+ import { HTMLProps, PropsWithChildren, ReactNode } from 'react';
4
2
  type SidebarProps = HTMLProps<HTMLElement> & {
5
- config: SidebarConfig;
6
- children?: SidebarContentProps['children'];
3
+ children: ReactNode;
7
4
  };
8
5
  /**
9
- * The main Sidebar component. Wraps children with SidebarProvider and renders SidebarContent.
10
- *
11
- * @example
12
- * ```
13
- * <Sidebar config={sidebarConfig}>
14
- * <YourAppContent />
15
- * </Sidebar>
16
- * ```
6
+ * Sidebar is a self-contained component using widgets
17
7
  */
18
- export declare const Sidebar: ({ config, children, ...navProps }: SidebarProps) => import("react/jsx-runtime").JSX.Element;
19
- export {};
8
+ declare const Sidebar: {
9
+ ({ children, ...navProps }: SidebarProps): import("react/jsx-runtime").JSX.Element;
10
+ Top: ({ children }: PropsWithChildren) => import("react/jsx-runtime").JSX.Element;
11
+ Bottom: ({ children }: PropsWithChildren) => import("react/jsx-runtime").JSX.Element;
12
+ Avatar: ({ src, href, ariaLabel, alt, }: {
13
+ src: string;
14
+ href?: string;
15
+ ariaLabel?: string;
16
+ alt?: string;
17
+ }) => import("react/jsx-runtime").JSX.Element;
18
+ IconLink: ({ label, to, icon: Icon }: {
19
+ to: string;
20
+ label: string;
21
+ icon: import('react').FC<import('@lokalise/louis').SvgIconProps>;
22
+ }) => import("react/jsx-runtime").JSX.Element;
23
+ Menu: ({ children, icon: Icon }: {
24
+ icon: import('react').FC<import('@lokalise/louis').SvgIconProps>;
25
+ } & {
26
+ children?: ReactNode | undefined;
27
+ }) => import("react/jsx-runtime").JSX.Element;
28
+ ProfileMenu: ({ config, children }: {
29
+ config: import('./Widgets/ProfileMenu/types').SidebarProfileMenuConfig;
30
+ children: import('./Widgets/ProfileMenu/ProfileMenuContent').ProfileMenuContentProps["children"];
31
+ }) => import("react/jsx-runtime").JSX.Element;
32
+ TeamSwitch: ({ onSwitchTeam }: {
33
+ onSwitchTeam: (team: import('./types').SidebarTeam) => void;
34
+ }) => import("react/jsx-runtime").JSX.Element | null;
35
+ TeamMenuItem: ({ team, onClick, hidePlanLabel }: {
36
+ team?: import('./types').SidebarTeam;
37
+ onClick?: (team: import('./types').SidebarTeam) => void;
38
+ hidePlanLabel?: boolean;
39
+ }) => import("react/jsx-runtime").JSX.Element | null;
40
+ UpgradeMenuItem: ({ upgradeOptionHref }: {
41
+ upgradeOptionHref: string;
42
+ }) => import("react/jsx-runtime").JSX.Element | null;
43
+ ProfileSettingsMenuItem: ({ href, onClick, userEmail, hideBottomDivider, }: {
44
+ href: string;
45
+ userEmail: string;
46
+ onClick?: () => void;
47
+ hideBottomDivider?: boolean;
48
+ }) => import("react/jsx-runtime").JSX.Element | null;
49
+ Tasks: (props: {
50
+ config: import('./Widgets/Tasks/types').SidebarTasksConfig;
51
+ }) => import("react/jsx-runtime").JSX.Element;
52
+ };
53
+ export { Sidebar };
@@ -11,11 +11,6 @@ type AvatarProps = {
11
11
  /**
12
12
  * Display company main avatar / logo in the top section of the Sidebar.
13
13
  * Used as the main branding element and home navigation link.
14
- *
15
- * @example
16
- * ```
17
- * <Avatar src="/logo.png" href="/" ariaLabel="Home" alt="" />
18
- * ```
19
14
  */
20
15
  export declare const Avatar: ({ src, href, ariaLabel, alt, }: AvatarProps) => import("react/jsx-runtime").JSX.Element;
21
16
  export {};
@@ -1,9 +1,8 @@
1
1
  import { SvgIconProps } from '@lokalise/louis';
2
- import { ButtonHTMLAttributes, FC, PropsWithChildren } from 'react';
2
+ import { FC, PropsWithChildren } from 'react';
3
3
  type MenuProps = PropsWithChildren<{
4
4
  /** Icon component from @lokalise/louis to display in the menu button */
5
5
  icon: FC<SvgIconProps>;
6
- buttonProps?: Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'type'>;
7
6
  }>;
8
7
  /**
9
8
  * A dropdown menu component that displays an icon button which reveals a menu list when clicked.
@@ -21,5 +20,5 @@ type MenuProps = PropsWithChildren<{
21
20
  * </Menu>
22
21
  * ```
23
22
  */
24
- export declare const Menu: ({ children, icon: Icon, buttonProps }: MenuProps) => import("react/jsx-runtime").JSX.Element;
23
+ export declare const Menu: ({ children, icon: Icon }: MenuProps) => import("react/jsx-runtime").JSX.Element;
25
24
  export {};
@@ -1,17 +1,30 @@
1
- import { ProfileMenuConfig } from '../../types';
1
+ import { ProfileMenuContentProps } from './ProfileMenuContent';
2
+ import { SidebarProfileMenuConfig } from './types';
3
+ type ProfileMenuProps = {
4
+ /** Configuration object containing team and user settings */
5
+ config: SidebarProfileMenuConfig;
6
+ /** Render function for the menu content */
7
+ children: ProfileMenuContentProps['children'];
8
+ };
2
9
  /**
3
- * The main profile menu component, displaying team and user actions.
4
- * Renders optional menu items based on the provided config and user permissions.
10
+ * A contextual menu component that provides team management functionality.
11
+ * It manages team switching, profile settings, billing options, and upgrade prompts.
12
+ *
13
+ * The component uses a render prop pattern to provide context values to its children,
14
+ * allowing flexible composition of menu items based on user permissions and team status.
5
15
  *
6
16
  * @example
17
+ * ```tsx
18
+ * <ProfileMenu config={profileMenuConfig}>
19
+ * {({ allowTeamCreation, showBillingButton }) => (
20
+ * <>
21
+ * <TeamSwitch onSwitchTeam={handleTeamSwitch} />
22
+ * {allowTeamCreation && <MenuItem>Create new team</MenuItem>}
23
+ * {showBillingButton && <MenuItem href="/billing">Billing</MenuItem>}
24
+ * </>
25
+ * )}
26
+ * </ProfileMenu>
7
27
  * ```
8
- * <ProfileMenu config={...} />
9
- * ```
10
- *
11
- * @note This component must be used within a Sidebar Context.
12
28
  */
13
- type ProfileMenuProps = {
14
- config: ProfileMenuConfig;
15
- };
16
- export declare const ProfileMenu: ({ config }: ProfileMenuProps) => import("react/jsx-runtime").JSX.Element;
29
+ export declare const ProfileMenu: ({ config, children }: ProfileMenuProps) => import("react/jsx-runtime").JSX.Element;
17
30
  export {};
@@ -2,12 +2,14 @@ import { StoryObj } from '@storybook/react';
2
2
  import { ProfileMenu } from './ProfileMenu';
3
3
  declare const meta: {
4
4
  title: string;
5
- component: ({ config }: {
6
- config: import('../../types').ProfileMenuConfig;
5
+ component: ({ config, children }: {
6
+ config: import('./types').SidebarProfileMenuConfig;
7
+ children: import('./ProfileMenuContent').ProfileMenuContentProps["children"];
7
8
  }) => import("react/jsx-runtime").JSX.Element;
8
9
  tags: string[];
9
10
  decorators: ((Story: import('@storybook/core/csf').PartialStoryFn<import('@storybook/react').ReactRenderer, {
10
- config: import('../../types').ProfileMenuConfig;
11
+ config: import('./types').SidebarProfileMenuConfig;
12
+ children: import('./ProfileMenuContent').ProfileMenuContentProps["children"];
11
13
  }>) => import("react/jsx-runtime").JSX.Element)[];
12
14
  parameters: {
13
15
  layout: string;
@@ -0,0 +1,6 @@
1
+ import { ReactNode } from 'react';
2
+ import { SidebarProfileMenuRenderProps } from './types';
3
+ export type ProfileMenuContentProps = {
4
+ children: (props: SidebarProfileMenuRenderProps) => ReactNode;
5
+ };
6
+ export declare const ProfileMenuContent: ({ children }: ProfileMenuContentProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,3 @@
1
+ import { SidebarProfileMenuContextProps } from './types';
2
+ export declare const ProfileMenuContext: import('react').Context<SidebarProfileMenuContextProps>;
3
+ export declare const useProfileMenu: () => SidebarProfileMenuContextProps;
@@ -0,0 +1,7 @@
1
+ import { PropsWithChildren } from 'react';
2
+ import { SidebarProfileMenuConfig } from './types';
3
+ type ProfileMenuProviderProps = PropsWithChildren<{
4
+ config: SidebarProfileMenuConfig;
5
+ }>;
6
+ export declare const ProfileMenuProvider: ({ children, config }: ProfileMenuProviderProps) => import("react/jsx-runtime").JSX.Element;
7
+ export {};