@lokalise/harmony 2.1.0-exp-testingContracts.5 → 2.1.0-exp-testingContracts.7

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 (717) hide show
  1. package/dist/harmony.cjs +69 -73
  2. package/dist/harmony.cjs.map +1 -1
  3. package/dist/harmony.mjs +69 -73
  4. package/dist/harmony.mjs.map +1 -1
  5. package/dist/harmony10.cjs +1 -1
  6. package/dist/harmony10.mjs +1 -1
  7. package/dist/harmony100.cjs +42 -65
  8. package/dist/harmony100.cjs.map +1 -1
  9. package/dist/harmony100.mjs +42 -65
  10. package/dist/harmony100.mjs.map +1 -1
  11. package/dist/harmony101.cjs +39 -3
  12. package/dist/harmony101.cjs.map +1 -1
  13. package/dist/harmony101.mjs +39 -3
  14. package/dist/harmony101.mjs.map +1 -1
  15. package/dist/harmony102.cjs +38 -43
  16. package/dist/harmony102.cjs.map +1 -1
  17. package/dist/harmony102.mjs +38 -43
  18. package/dist/harmony102.mjs.map +1 -1
  19. package/dist/harmony103.cjs +9 -39
  20. package/dist/harmony103.cjs.map +1 -1
  21. package/dist/harmony103.mjs +8 -38
  22. package/dist/harmony103.mjs.map +1 -1
  23. package/dist/harmony104.cjs +30 -35
  24. package/dist/harmony104.cjs.map +1 -1
  25. package/dist/harmony104.mjs +31 -36
  26. package/dist/harmony104.mjs.map +1 -1
  27. package/dist/harmony105.cjs +166 -9
  28. package/dist/harmony105.cjs.map +1 -1
  29. package/dist/harmony105.mjs +165 -8
  30. package/dist/harmony105.mjs.map +1 -1
  31. package/dist/harmony106.cjs +44 -33
  32. package/dist/harmony106.cjs.map +1 -1
  33. package/dist/harmony106.mjs +44 -33
  34. package/dist/harmony106.mjs.map +1 -1
  35. package/dist/harmony107.cjs +13 -165
  36. package/dist/harmony107.cjs.map +1 -1
  37. package/dist/harmony107.mjs +13 -165
  38. package/dist/harmony107.mjs.map +1 -1
  39. package/dist/harmony108.cjs +2 -43
  40. package/dist/harmony108.cjs.map +1 -1
  41. package/dist/harmony108.mjs +3 -44
  42. package/dist/harmony108.mjs.map +1 -1
  43. package/dist/harmony109.cjs +17 -13
  44. package/dist/harmony109.cjs.map +1 -1
  45. package/dist/harmony109.mjs +17 -13
  46. package/dist/harmony109.mjs.map +1 -1
  47. package/dist/harmony110.cjs +76 -3
  48. package/dist/harmony110.cjs.map +1 -1
  49. package/dist/harmony110.mjs +76 -3
  50. package/dist/harmony110.mjs.map +1 -1
  51. package/dist/harmony111.cjs +11 -17
  52. package/dist/harmony111.cjs.map +1 -1
  53. package/dist/harmony111.mjs +11 -17
  54. package/dist/harmony111.mjs.map +1 -1
  55. package/dist/harmony112.cjs +34 -76
  56. package/dist/harmony112.cjs.map +1 -1
  57. package/dist/harmony112.mjs +34 -76
  58. package/dist/harmony112.mjs.map +1 -1
  59. package/dist/harmony113.cjs +9 -12
  60. package/dist/harmony113.cjs.map +1 -1
  61. package/dist/harmony113.mjs +9 -12
  62. package/dist/harmony113.mjs.map +1 -1
  63. package/dist/harmony114.cjs +47 -34
  64. package/dist/harmony114.cjs.map +1 -1
  65. package/dist/harmony114.mjs +47 -34
  66. package/dist/harmony114.mjs.map +1 -1
  67. package/dist/harmony115.cjs +10 -10
  68. package/dist/harmony115.cjs.map +1 -1
  69. package/dist/harmony115.mjs +9 -9
  70. package/dist/harmony115.mjs.map +1 -1
  71. package/dist/harmony116.cjs +9 -44
  72. package/dist/harmony116.cjs.map +1 -1
  73. package/dist/harmony116.mjs +11 -46
  74. package/dist/harmony116.mjs.map +1 -1
  75. package/dist/harmony117.cjs +9 -6
  76. package/dist/harmony117.cjs.map +1 -1
  77. package/dist/harmony117.mjs +9 -6
  78. package/dist/harmony117.mjs.map +1 -1
  79. package/dist/harmony120.cjs +96 -9
  80. package/dist/harmony120.cjs.map +1 -1
  81. package/dist/harmony120.mjs +79 -9
  82. package/dist/harmony120.mjs.map +1 -1
  83. package/dist/harmony121.cjs +21 -13
  84. package/dist/harmony121.cjs.map +1 -1
  85. package/dist/harmony121.mjs +20 -12
  86. package/dist/harmony121.mjs.map +1 -1
  87. package/dist/harmony122.cjs +6 -98
  88. package/dist/harmony122.cjs.map +1 -1
  89. package/dist/harmony122.mjs +7 -82
  90. package/dist/harmony122.mjs.map +1 -1
  91. package/dist/harmony123.cjs +17 -20
  92. package/dist/harmony123.cjs.map +1 -1
  93. package/dist/harmony123.mjs +17 -20
  94. package/dist/harmony123.mjs.map +1 -1
  95. package/dist/harmony124.cjs +8 -7
  96. package/dist/harmony124.cjs.map +1 -1
  97. package/dist/harmony124.mjs +8 -7
  98. package/dist/harmony124.mjs.map +1 -1
  99. package/dist/harmony125.cjs +7 -16
  100. package/dist/harmony125.cjs.map +1 -1
  101. package/dist/harmony125.mjs +7 -16
  102. package/dist/harmony125.mjs.map +1 -1
  103. package/dist/harmony126.cjs +14 -7
  104. package/dist/harmony126.cjs.map +1 -1
  105. package/dist/harmony126.mjs +14 -7
  106. package/dist/harmony126.mjs.map +1 -1
  107. package/dist/harmony127.cjs +86 -7
  108. package/dist/harmony127.cjs.map +1 -1
  109. package/dist/harmony127.mjs +86 -7
  110. package/dist/harmony127.mjs.map +1 -1
  111. package/dist/harmony128.cjs +30 -15
  112. package/dist/harmony128.cjs.map +1 -1
  113. package/dist/harmony128.mjs +30 -15
  114. package/dist/harmony128.mjs.map +1 -1
  115. package/dist/harmony129.cjs +9 -87
  116. package/dist/harmony129.cjs.map +1 -1
  117. package/dist/harmony129.mjs +8 -86
  118. package/dist/harmony129.mjs.map +1 -1
  119. package/dist/harmony130.cjs +11 -29
  120. package/dist/harmony130.cjs.map +1 -1
  121. package/dist/harmony130.mjs +11 -29
  122. package/dist/harmony130.mjs.map +1 -1
  123. package/dist/harmony131.cjs +16 -6
  124. package/dist/harmony131.cjs.map +1 -1
  125. package/dist/harmony131.mjs +15 -5
  126. package/dist/harmony131.mjs.map +1 -1
  127. package/dist/harmony132.cjs +20 -6
  128. package/dist/harmony132.cjs.map +1 -1
  129. package/dist/harmony132.mjs +19 -5
  130. package/dist/harmony132.mjs.map +1 -1
  131. package/dist/harmony133.cjs +10 -9
  132. package/dist/harmony133.cjs.map +1 -1
  133. package/dist/harmony133.mjs +9 -8
  134. package/dist/harmony133.mjs.map +1 -1
  135. package/dist/harmony134.cjs +20 -6
  136. package/dist/harmony134.cjs.map +1 -1
  137. package/dist/harmony134.mjs +21 -7
  138. package/dist/harmony134.mjs.map +1 -1
  139. package/dist/harmony135.cjs +6 -9
  140. package/dist/harmony135.cjs.map +1 -1
  141. package/dist/harmony135.mjs +8 -11
  142. package/dist/harmony135.mjs.map +1 -1
  143. package/dist/harmony136.cjs +33 -14
  144. package/dist/harmony136.cjs.map +1 -1
  145. package/dist/harmony136.mjs +35 -16
  146. package/dist/harmony136.mjs.map +1 -1
  147. package/dist/harmony137.cjs +9 -7
  148. package/dist/harmony137.cjs.map +1 -1
  149. package/dist/harmony137.mjs +11 -9
  150. package/dist/harmony137.mjs.map +1 -1
  151. package/dist/harmony138.cjs +14 -18
  152. package/dist/harmony138.cjs.map +1 -1
  153. package/dist/harmony138.mjs +15 -19
  154. package/dist/harmony138.mjs.map +1 -1
  155. package/dist/harmony139.cjs +31 -7
  156. package/dist/harmony139.cjs.map +1 -1
  157. package/dist/harmony139.mjs +32 -8
  158. package/dist/harmony139.mjs.map +1 -1
  159. package/dist/harmony140.cjs +21 -38
  160. package/dist/harmony140.cjs.map +1 -1
  161. package/dist/harmony140.mjs +20 -37
  162. package/dist/harmony140.mjs.map +1 -1
  163. package/dist/harmony141.cjs +18 -9
  164. package/dist/harmony141.cjs.map +1 -1
  165. package/dist/harmony141.mjs +19 -10
  166. package/dist/harmony141.mjs.map +1 -1
  167. package/dist/harmony142.cjs +6 -22
  168. package/dist/harmony142.cjs.map +1 -1
  169. package/dist/harmony142.mjs +5 -21
  170. package/dist/harmony142.mjs.map +1 -1
  171. package/dist/harmony143.cjs +15 -36
  172. package/dist/harmony143.cjs.map +1 -1
  173. package/dist/harmony143.mjs +14 -35
  174. package/dist/harmony143.mjs.map +1 -1
  175. package/dist/harmony144.cjs +5 -21
  176. package/dist/harmony144.cjs.map +1 -1
  177. package/dist/harmony144.mjs +5 -21
  178. package/dist/harmony144.mjs.map +1 -1
  179. package/dist/harmony145.cjs +6 -22
  180. package/dist/harmony145.cjs.map +1 -1
  181. package/dist/harmony145.mjs +5 -21
  182. package/dist/harmony145.mjs.map +1 -1
  183. package/dist/harmony146.cjs +4 -7
  184. package/dist/harmony146.cjs.map +1 -1
  185. package/dist/harmony146.mjs +3 -6
  186. package/dist/harmony146.mjs.map +1 -1
  187. package/dist/harmony147.cjs +4 -16
  188. package/dist/harmony147.cjs.map +1 -1
  189. package/dist/harmony147.mjs +3 -15
  190. package/dist/harmony147.mjs.map +1 -1
  191. package/dist/harmony148.cjs +3 -10
  192. package/dist/harmony148.cjs.map +1 -1
  193. package/dist/harmony148.mjs +3 -10
  194. package/dist/harmony148.mjs.map +1 -1
  195. package/dist/harmony149.cjs +14 -3
  196. package/dist/harmony149.cjs.map +1 -1
  197. package/dist/harmony149.mjs +14 -3
  198. package/dist/harmony149.mjs.map +1 -1
  199. package/dist/harmony150.cjs +14 -3
  200. package/dist/harmony150.cjs.map +1 -1
  201. package/dist/harmony150.mjs +14 -3
  202. package/dist/harmony150.mjs.map +1 -1
  203. package/dist/harmony151.cjs +3 -3
  204. package/dist/harmony151.cjs.map +1 -1
  205. package/dist/harmony151.mjs +3 -3
  206. package/dist/harmony151.mjs.map +1 -1
  207. package/dist/harmony152.cjs +10 -14
  208. package/dist/harmony152.cjs.map +1 -1
  209. package/dist/harmony152.mjs +10 -14
  210. package/dist/harmony152.mjs.map +1 -1
  211. package/dist/harmony153.cjs +10 -15
  212. package/dist/harmony153.cjs.map +1 -1
  213. package/dist/harmony153.mjs +9 -14
  214. package/dist/harmony153.mjs.map +1 -1
  215. package/dist/harmony154.cjs +7 -4
  216. package/dist/harmony154.cjs.map +1 -1
  217. package/dist/harmony154.mjs +6 -3
  218. package/dist/harmony154.mjs.map +1 -1
  219. package/dist/harmony155.cjs +10 -97
  220. package/dist/harmony155.cjs.map +1 -1
  221. package/dist/harmony155.mjs +9 -96
  222. package/dist/harmony155.mjs.map +1 -1
  223. package/dist/harmony156.cjs +25 -14
  224. package/dist/harmony156.cjs.map +1 -1
  225. package/dist/harmony156.mjs +24 -13
  226. package/dist/harmony156.mjs.map +1 -1
  227. package/dist/harmony157.cjs +7 -15
  228. package/dist/harmony157.cjs.map +1 -1
  229. package/dist/harmony157.mjs +6 -14
  230. package/dist/harmony157.mjs.map +1 -1
  231. package/dist/harmony158.cjs +13 -37
  232. package/dist/harmony158.cjs.map +1 -1
  233. package/dist/harmony158.mjs +12 -36
  234. package/dist/harmony158.mjs.map +1 -1
  235. package/dist/harmony159.cjs +7 -29
  236. package/dist/harmony159.cjs.map +1 -1
  237. package/dist/harmony159.mjs +6 -28
  238. package/dist/harmony159.mjs.map +1 -1
  239. package/dist/harmony160.cjs +97 -10
  240. package/dist/harmony160.cjs.map +1 -1
  241. package/dist/harmony160.mjs +96 -9
  242. package/dist/harmony160.mjs.map +1 -1
  243. package/dist/harmony161.cjs +14 -7
  244. package/dist/harmony161.cjs.map +1 -1
  245. package/dist/harmony161.mjs +13 -6
  246. package/dist/harmony161.mjs.map +1 -1
  247. package/dist/harmony162.cjs +15 -10
  248. package/dist/harmony162.cjs.map +1 -1
  249. package/dist/harmony162.mjs +14 -9
  250. package/dist/harmony162.mjs.map +1 -1
  251. package/dist/harmony163.cjs +37 -25
  252. package/dist/harmony163.cjs.map +1 -1
  253. package/dist/harmony163.mjs +36 -24
  254. package/dist/harmony163.mjs.map +1 -1
  255. package/dist/harmony164.cjs +29 -7
  256. package/dist/harmony164.cjs.map +1 -1
  257. package/dist/harmony164.mjs +28 -6
  258. package/dist/harmony164.mjs.map +1 -1
  259. package/dist/harmony165.cjs +32 -12
  260. package/dist/harmony165.cjs.map +1 -1
  261. package/dist/harmony165.mjs +31 -11
  262. package/dist/harmony165.mjs.map +1 -1
  263. package/dist/harmony166.cjs +14 -7
  264. package/dist/harmony166.cjs.map +1 -1
  265. package/dist/harmony166.mjs +13 -6
  266. package/dist/harmony166.mjs.map +1 -1
  267. package/dist/harmony167.cjs +14 -12
  268. package/dist/harmony167.cjs.map +1 -1
  269. package/dist/harmony167.mjs +14 -12
  270. package/dist/harmony167.mjs.map +1 -1
  271. package/dist/harmony168.cjs +14 -13
  272. package/dist/harmony168.cjs.map +1 -1
  273. package/dist/harmony168.mjs +14 -13
  274. package/dist/harmony168.mjs.map +1 -1
  275. package/dist/harmony169.cjs +10 -15
  276. package/dist/harmony169.cjs.map +1 -1
  277. package/dist/harmony169.mjs +10 -15
  278. package/dist/harmony169.mjs.map +1 -1
  279. package/dist/harmony17.cjs +3 -3
  280. package/dist/harmony17.cjs.map +1 -1
  281. package/dist/harmony17.mjs +2 -2
  282. package/dist/harmony17.mjs.map +1 -1
  283. package/dist/harmony170.cjs +15 -31
  284. package/dist/harmony170.cjs.map +1 -1
  285. package/dist/harmony170.mjs +15 -31
  286. package/dist/harmony170.mjs.map +1 -1
  287. package/dist/harmony171.cjs +20 -10
  288. package/dist/harmony171.cjs.map +1 -1
  289. package/dist/harmony171.mjs +20 -10
  290. package/dist/harmony171.mjs.map +1 -1
  291. package/dist/harmony172.cjs +10 -14
  292. package/dist/harmony172.cjs.map +1 -1
  293. package/dist/harmony172.mjs +10 -14
  294. package/dist/harmony172.mjs.map +1 -1
  295. package/dist/harmony173.cjs +4 -21
  296. package/dist/harmony173.cjs.map +1 -1
  297. package/dist/harmony173.mjs +4 -21
  298. package/dist/harmony173.mjs.map +1 -1
  299. package/dist/harmony174.cjs +5 -11
  300. package/dist/harmony174.cjs.map +1 -1
  301. package/dist/harmony174.mjs +5 -11
  302. package/dist/harmony174.mjs.map +1 -1
  303. package/dist/harmony175.cjs +11 -5
  304. package/dist/harmony175.cjs.map +1 -1
  305. package/dist/harmony175.mjs +11 -5
  306. package/dist/harmony175.mjs.map +1 -1
  307. package/dist/harmony176.cjs +31 -11
  308. package/dist/harmony176.cjs.map +1 -1
  309. package/dist/harmony176.mjs +31 -11
  310. package/dist/harmony176.mjs.map +1 -1
  311. package/dist/harmony177.cjs +10 -28
  312. package/dist/harmony177.cjs.map +1 -1
  313. package/dist/harmony177.mjs +10 -28
  314. package/dist/harmony177.mjs.map +1 -1
  315. package/dist/harmony18.cjs +2 -2
  316. package/dist/harmony18.cjs.map +1 -1
  317. package/dist/harmony18.mjs +1 -1
  318. package/dist/harmony18.mjs.map +1 -1
  319. package/dist/harmony2.cjs +3 -3
  320. package/dist/harmony2.mjs +3 -3
  321. package/dist/harmony20.cjs +1 -1
  322. package/dist/harmony20.mjs +1 -1
  323. package/dist/harmony22.cjs +20 -16
  324. package/dist/harmony22.cjs.map +1 -1
  325. package/dist/harmony22.mjs +20 -16
  326. package/dist/harmony22.mjs.map +1 -1
  327. package/dist/harmony23.cjs +13 -141
  328. package/dist/harmony23.cjs.map +1 -1
  329. package/dist/harmony23.mjs +13 -141
  330. package/dist/harmony23.mjs.map +1 -1
  331. package/dist/harmony24.cjs +17 -20
  332. package/dist/harmony24.cjs.map +1 -1
  333. package/dist/harmony24.mjs +17 -20
  334. package/dist/harmony24.mjs.map +1 -1
  335. package/dist/harmony25.cjs +16 -12
  336. package/dist/harmony25.cjs.map +1 -1
  337. package/dist/harmony25.mjs +16 -12
  338. package/dist/harmony25.mjs.map +1 -1
  339. package/dist/harmony26.cjs +18 -15
  340. package/dist/harmony26.cjs.map +1 -1
  341. package/dist/harmony26.mjs +18 -15
  342. package/dist/harmony26.mjs.map +1 -1
  343. package/dist/harmony27.cjs +18 -16
  344. package/dist/harmony27.cjs.map +1 -1
  345. package/dist/harmony27.mjs +18 -16
  346. package/dist/harmony27.mjs.map +1 -1
  347. package/dist/harmony28.cjs +8 -18
  348. package/dist/harmony28.cjs.map +1 -1
  349. package/dist/harmony28.mjs +8 -18
  350. package/dist/harmony28.mjs.map +1 -1
  351. package/dist/harmony29.cjs +10 -19
  352. package/dist/harmony29.cjs.map +1 -1
  353. package/dist/harmony29.mjs +10 -19
  354. package/dist/harmony29.mjs.map +1 -1
  355. package/dist/harmony3.cjs +4 -4
  356. package/dist/harmony3.mjs +4 -4
  357. package/dist/harmony30.cjs +9 -10
  358. package/dist/harmony30.cjs.map +1 -1
  359. package/dist/harmony30.mjs +9 -10
  360. package/dist/harmony30.mjs.map +1 -1
  361. package/dist/harmony31.cjs +9 -11
  362. package/dist/harmony31.cjs.map +1 -1
  363. package/dist/harmony31.mjs +9 -11
  364. package/dist/harmony31.mjs.map +1 -1
  365. package/dist/harmony32.cjs +11 -5
  366. package/dist/harmony32.cjs.map +1 -1
  367. package/dist/harmony32.mjs +11 -5
  368. package/dist/harmony32.mjs.map +1 -1
  369. package/dist/harmony33.cjs +8 -7
  370. package/dist/harmony33.cjs.map +1 -1
  371. package/dist/harmony33.mjs +9 -8
  372. package/dist/harmony33.mjs.map +1 -1
  373. package/dist/harmony34.cjs +9 -11
  374. package/dist/harmony34.cjs.map +1 -1
  375. package/dist/harmony34.mjs +10 -12
  376. package/dist/harmony34.mjs.map +1 -1
  377. package/dist/harmony35.cjs +5 -5
  378. package/dist/harmony35.cjs.map +1 -1
  379. package/dist/harmony35.mjs +5 -5
  380. package/dist/harmony35.mjs.map +1 -1
  381. package/dist/harmony36.cjs +11 -10
  382. package/dist/harmony36.cjs.map +1 -1
  383. package/dist/harmony36.mjs +11 -10
  384. package/dist/harmony36.mjs.map +1 -1
  385. package/dist/harmony37.cjs +7 -9
  386. package/dist/harmony37.cjs.map +1 -1
  387. package/dist/harmony37.mjs +7 -9
  388. package/dist/harmony37.mjs.map +1 -1
  389. package/dist/harmony38.cjs +10 -13
  390. package/dist/harmony38.cjs.map +1 -1
  391. package/dist/harmony38.mjs +10 -13
  392. package/dist/harmony38.mjs.map +1 -1
  393. package/dist/harmony39.cjs +8 -5
  394. package/dist/harmony39.cjs.map +1 -1
  395. package/dist/harmony39.mjs +8 -5
  396. package/dist/harmony39.mjs.map +1 -1
  397. package/dist/harmony4.cjs +2 -2
  398. package/dist/harmony4.mjs +2 -2
  399. package/dist/harmony40.cjs +7 -9
  400. package/dist/harmony40.cjs.map +1 -1
  401. package/dist/harmony40.mjs +7 -9
  402. package/dist/harmony40.mjs.map +1 -1
  403. package/dist/harmony41.cjs +7 -9
  404. package/dist/harmony41.cjs.map +1 -1
  405. package/dist/harmony41.mjs +7 -9
  406. package/dist/harmony41.mjs.map +1 -1
  407. package/dist/harmony42.cjs +9 -9
  408. package/dist/harmony42.cjs.map +1 -1
  409. package/dist/harmony42.mjs +9 -9
  410. package/dist/harmony42.mjs.map +1 -1
  411. package/dist/harmony43.cjs +88 -9
  412. package/dist/harmony43.cjs.map +1 -1
  413. package/dist/harmony43.mjs +88 -9
  414. package/dist/harmony43.mjs.map +1 -1
  415. package/dist/harmony44.cjs +55 -9
  416. package/dist/harmony44.cjs.map +1 -1
  417. package/dist/harmony44.mjs +55 -9
  418. package/dist/harmony44.mjs.map +1 -1
  419. package/dist/harmony45.cjs +31 -88
  420. package/dist/harmony45.cjs.map +1 -1
  421. package/dist/harmony45.mjs +31 -88
  422. package/dist/harmony45.mjs.map +1 -1
  423. package/dist/harmony46.cjs +10 -54
  424. package/dist/harmony46.cjs.map +1 -1
  425. package/dist/harmony46.mjs +10 -54
  426. package/dist/harmony46.mjs.map +1 -1
  427. package/dist/harmony47.cjs +50 -26
  428. package/dist/harmony47.cjs.map +1 -1
  429. package/dist/harmony47.mjs +51 -27
  430. package/dist/harmony47.mjs.map +1 -1
  431. package/dist/harmony48.cjs +27 -8
  432. package/dist/harmony48.cjs.map +1 -1
  433. package/dist/harmony48.mjs +28 -9
  434. package/dist/harmony48.mjs.map +1 -1
  435. package/dist/harmony49.cjs +15 -52
  436. package/dist/harmony49.cjs.map +1 -1
  437. package/dist/harmony49.mjs +16 -53
  438. package/dist/harmony49.mjs.map +1 -1
  439. package/dist/harmony5.cjs +5 -5
  440. package/dist/harmony5.mjs +5 -5
  441. package/dist/harmony50.cjs +24 -26
  442. package/dist/harmony50.cjs.map +1 -1
  443. package/dist/harmony50.mjs +25 -27
  444. package/dist/harmony50.mjs.map +1 -1
  445. package/dist/harmony51.cjs +12 -16
  446. package/dist/harmony51.cjs.map +1 -1
  447. package/dist/harmony51.mjs +13 -17
  448. package/dist/harmony51.mjs.map +1 -1
  449. package/dist/harmony52.cjs +14 -28
  450. package/dist/harmony52.cjs.map +1 -1
  451. package/dist/harmony52.mjs +14 -28
  452. package/dist/harmony52.mjs.map +1 -1
  453. package/dist/harmony53.cjs +14 -14
  454. package/dist/harmony53.cjs.map +1 -1
  455. package/dist/harmony53.mjs +14 -14
  456. package/dist/harmony53.mjs.map +1 -1
  457. package/dist/harmony54.cjs +6 -6
  458. package/dist/harmony54.cjs.map +1 -1
  459. package/dist/harmony54.mjs +6 -6
  460. package/dist/harmony54.mjs.map +1 -1
  461. package/dist/harmony55.cjs +6 -6
  462. package/dist/harmony55.cjs.map +1 -1
  463. package/dist/harmony55.mjs +6 -6
  464. package/dist/harmony55.mjs.map +1 -1
  465. package/dist/harmony56.cjs +4 -5
  466. package/dist/harmony56.cjs.map +1 -1
  467. package/dist/harmony56.mjs +4 -5
  468. package/dist/harmony56.mjs.map +1 -1
  469. package/dist/harmony57.cjs +15 -7
  470. package/dist/harmony57.cjs.map +1 -1
  471. package/dist/harmony57.mjs +16 -8
  472. package/dist/harmony57.mjs.map +1 -1
  473. package/dist/harmony58.cjs +6 -6
  474. package/dist/harmony58.cjs.map +1 -1
  475. package/dist/harmony58.mjs +7 -7
  476. package/dist/harmony58.mjs.map +1 -1
  477. package/dist/harmony59.cjs +7 -16
  478. package/dist/harmony59.cjs.map +1 -1
  479. package/dist/harmony59.mjs +7 -16
  480. package/dist/harmony59.mjs.map +1 -1
  481. package/dist/harmony6.cjs +2 -2
  482. package/dist/harmony6.mjs +2 -2
  483. package/dist/harmony60.cjs +11 -7
  484. package/dist/harmony60.cjs.map +1 -1
  485. package/dist/harmony60.mjs +13 -9
  486. package/dist/harmony60.mjs.map +1 -1
  487. package/dist/harmony61.cjs +10 -6
  488. package/dist/harmony61.cjs.map +1 -1
  489. package/dist/harmony61.mjs +12 -8
  490. package/dist/harmony61.mjs.map +1 -1
  491. package/dist/harmony62.cjs +12 -14
  492. package/dist/harmony62.cjs.map +1 -1
  493. package/dist/harmony62.mjs +12 -14
  494. package/dist/harmony62.mjs.map +1 -1
  495. package/dist/harmony63.cjs +12 -14
  496. package/dist/harmony63.cjs.map +1 -1
  497. package/dist/harmony63.mjs +13 -15
  498. package/dist/harmony63.mjs.map +1 -1
  499. package/dist/harmony64.cjs +9 -9
  500. package/dist/harmony64.cjs.map +1 -1
  501. package/dist/harmony64.mjs +9 -9
  502. package/dist/harmony64.mjs.map +1 -1
  503. package/dist/harmony65.cjs +14 -12
  504. package/dist/harmony65.cjs.map +1 -1
  505. package/dist/harmony65.mjs +15 -13
  506. package/dist/harmony65.mjs.map +1 -1
  507. package/dist/harmony66.cjs +14 -12
  508. package/dist/harmony66.cjs.map +1 -1
  509. package/dist/harmony66.mjs +14 -12
  510. package/dist/harmony66.mjs.map +1 -1
  511. package/dist/harmony67.cjs +10 -10
  512. package/dist/harmony67.cjs.map +1 -1
  513. package/dist/harmony67.mjs +10 -10
  514. package/dist/harmony67.mjs.map +1 -1
  515. package/dist/harmony68.cjs +8 -8
  516. package/dist/harmony68.cjs.map +1 -1
  517. package/dist/harmony68.mjs +8 -8
  518. package/dist/harmony68.mjs.map +1 -1
  519. package/dist/harmony69.cjs +8 -8
  520. package/dist/harmony69.cjs.map +1 -1
  521. package/dist/harmony69.mjs +8 -8
  522. package/dist/harmony69.mjs.map +1 -1
  523. package/dist/harmony7.cjs +2 -2
  524. package/dist/harmony7.mjs +2 -2
  525. package/dist/harmony70.cjs +12 -14
  526. package/dist/harmony70.cjs.map +1 -1
  527. package/dist/harmony70.mjs +12 -14
  528. package/dist/harmony70.mjs.map +1 -1
  529. package/dist/harmony71.cjs +8 -8
  530. package/dist/harmony71.cjs.map +1 -1
  531. package/dist/harmony71.mjs +8 -8
  532. package/dist/harmony71.mjs.map +1 -1
  533. package/dist/harmony72.cjs +14 -12
  534. package/dist/harmony72.cjs.map +1 -1
  535. package/dist/harmony72.mjs +14 -12
  536. package/dist/harmony72.mjs.map +1 -1
  537. package/dist/harmony73.cjs +9 -8
  538. package/dist/harmony73.cjs.map +1 -1
  539. package/dist/harmony73.mjs +10 -9
  540. package/dist/harmony73.mjs.map +1 -1
  541. package/dist/harmony74.cjs +7 -10
  542. package/dist/harmony74.cjs.map +1 -1
  543. package/dist/harmony74.mjs +9 -12
  544. package/dist/harmony74.mjs.map +1 -1
  545. package/dist/harmony75.cjs +7 -11
  546. package/dist/harmony75.cjs.map +1 -1
  547. package/dist/harmony75.mjs +8 -12
  548. package/dist/harmony75.mjs.map +1 -1
  549. package/dist/harmony76.cjs +123 -13
  550. package/dist/harmony76.cjs.map +1 -1
  551. package/dist/harmony76.mjs +123 -13
  552. package/dist/harmony76.mjs.map +1 -1
  553. package/dist/harmony77.cjs +81 -13
  554. package/dist/harmony77.cjs.map +1 -1
  555. package/dist/harmony77.mjs +81 -13
  556. package/dist/harmony77.mjs.map +1 -1
  557. package/dist/harmony78.cjs +5 -123
  558. package/dist/harmony78.cjs.map +1 -1
  559. package/dist/harmony78.mjs +5 -123
  560. package/dist/harmony78.mjs.map +1 -1
  561. package/dist/harmony79.cjs +28 -82
  562. package/dist/harmony79.cjs.map +1 -1
  563. package/dist/harmony79.mjs +27 -81
  564. package/dist/harmony79.mjs.map +1 -1
  565. package/dist/harmony80.cjs +23 -5
  566. package/dist/harmony80.cjs.map +1 -1
  567. package/dist/harmony80.mjs +23 -5
  568. package/dist/harmony80.mjs.map +1 -1
  569. package/dist/harmony81.cjs +141 -28
  570. package/dist/harmony81.cjs.map +1 -1
  571. package/dist/harmony81.mjs +130 -17
  572. package/dist/harmony81.mjs.map +1 -1
  573. package/dist/harmony82.cjs +36 -23
  574. package/dist/harmony82.cjs.map +1 -1
  575. package/dist/harmony82.mjs +36 -23
  576. package/dist/harmony82.mjs.map +1 -1
  577. package/dist/harmony83.cjs +26 -141
  578. package/dist/harmony83.cjs.map +1 -1
  579. package/dist/harmony83.mjs +26 -141
  580. package/dist/harmony83.mjs.map +1 -1
  581. package/dist/harmony84.cjs +4 -37
  582. package/dist/harmony84.cjs.map +1 -1
  583. package/dist/harmony84.mjs +4 -37
  584. package/dist/harmony84.mjs.map +1 -1
  585. package/dist/harmony85.cjs +83 -25
  586. package/dist/harmony85.cjs.map +1 -1
  587. package/dist/harmony85.mjs +83 -25
  588. package/dist/harmony85.mjs.map +1 -1
  589. package/dist/harmony86.cjs +58 -4
  590. package/dist/harmony86.cjs.map +1 -1
  591. package/dist/harmony86.mjs +58 -4
  592. package/dist/harmony86.mjs.map +1 -1
  593. package/dist/harmony87.cjs +17 -83
  594. package/dist/harmony87.cjs.map +1 -1
  595. package/dist/harmony87.mjs +17 -83
  596. package/dist/harmony87.mjs.map +1 -1
  597. package/dist/harmony88.cjs +8 -58
  598. package/dist/harmony88.cjs.map +1 -1
  599. package/dist/harmony88.mjs +7 -57
  600. package/dist/harmony88.mjs.map +1 -1
  601. package/dist/harmony89.cjs +3 -19
  602. package/dist/harmony89.cjs.map +1 -1
  603. package/dist/harmony89.mjs +2 -18
  604. package/dist/harmony89.mjs.map +1 -1
  605. package/dist/harmony9.cjs +1 -1
  606. package/dist/harmony9.mjs +1 -1
  607. package/dist/harmony90.cjs +3 -9
  608. package/dist/harmony90.cjs.map +1 -1
  609. package/dist/harmony90.mjs +2 -8
  610. package/dist/harmony90.mjs.map +1 -1
  611. package/dist/harmony91.cjs +15 -2
  612. package/dist/harmony91.cjs.map +1 -1
  613. package/dist/harmony91.mjs +15 -2
  614. package/dist/harmony91.mjs.map +1 -1
  615. package/dist/harmony92.cjs +18 -2
  616. package/dist/harmony92.cjs.map +1 -1
  617. package/dist/harmony92.mjs +18 -2
  618. package/dist/harmony92.mjs.map +1 -1
  619. package/dist/harmony93.cjs +60 -14
  620. package/dist/harmony93.cjs.map +1 -1
  621. package/dist/harmony93.mjs +60 -14
  622. package/dist/harmony93.mjs.map +1 -1
  623. package/dist/harmony94.cjs +9 -19
  624. package/dist/harmony94.cjs.map +1 -1
  625. package/dist/harmony94.mjs +8 -18
  626. package/dist/harmony94.mjs.map +1 -1
  627. package/dist/harmony95.cjs +28 -60
  628. package/dist/harmony95.cjs.map +1 -1
  629. package/dist/harmony95.mjs +28 -60
  630. package/dist/harmony95.mjs.map +1 -1
  631. package/dist/harmony96.cjs +3 -8
  632. package/dist/harmony96.cjs.map +1 -1
  633. package/dist/harmony96.mjs +3 -8
  634. package/dist/harmony96.mjs.map +1 -1
  635. package/dist/harmony97.cjs +27 -27
  636. package/dist/harmony97.cjs.map +1 -1
  637. package/dist/harmony97.mjs +28 -28
  638. package/dist/harmony97.mjs.map +1 -1
  639. package/dist/harmony98.cjs +66 -3
  640. package/dist/harmony98.cjs.map +1 -1
  641. package/dist/harmony98.mjs +66 -3
  642. package/dist/harmony98.mjs.map +1 -1
  643. package/dist/harmony99.cjs +3 -29
  644. package/dist/harmony99.cjs.map +1 -1
  645. package/dist/harmony99.mjs +3 -29
  646. package/dist/harmony99.mjs.map +1 -1
  647. package/dist/types/src/features/auth/core/middleware/jwtAuthHeaderBuilderMiddleware.d.ts +1 -1
  648. package/dist/types/src/features/auth/core/middleware/publicApiHeaderBuilderMiddleware.d.ts +1 -1
  649. package/dist/types/src/features/auth/core/types/jwtTokenPayload.d.ts +35 -8
  650. package/dist/types/src/features/auth/core/types/jwtTokenPayload.fixture.d.ts +1 -1
  651. package/dist/types/src/features/auth/factories/headerBuilderFactories.d.ts +1 -1
  652. package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedProjectContributor.d.ts +4 -4
  653. package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedUser.d.ts +3 -3
  654. package/dist/types/src/features/auth/frontend/hooks/useGetPromotedClassicSessionJwtQuery.d.ts +1 -1
  655. package/dist/types/src/features/auth/frontend/services/generateTokenFromClassicSession.d.ts +4 -1
  656. package/dist/types/src/features/auth/frontend/services/refreshExpiredToken.d.ts +4 -1
  657. package/dist/types/src/features/auth/node.d.ts +0 -2
  658. package/dist/types/src/features/navigation/hooks/useNavigationQueries.d.ts +48 -48
  659. package/dist/types/src/features/publicApi/TESTING_CONTRACTS.d.ts +239 -2
  660. package/dist/types/src/features/publicApi/contributors.d.ts +1072 -5
  661. package/dist/types/src/features/publicApi/hooks/useAddContributorsMutation.d.ts +8 -8
  662. package/dist/types/src/features/publicApi/hooks/useAddLanguagesToProjectMutation.d.ts +3 -3
  663. package/dist/types/src/features/publicApi/hooks/useBulkUpdateProjectLanguagesMutation.d.ts +1 -1
  664. package/dist/types/src/features/publicApi/hooks/useCreateProjectMutation.d.ts +15 -15
  665. package/dist/types/src/features/publicApi/hooks/useCreateScoreMutation.d.ts +4 -4
  666. package/dist/types/src/features/publicApi/hooks/useDeleteContributorMutation.d.ts +1 -1
  667. package/dist/types/src/features/publicApi/hooks/useDeleteProjectMutation.d.ts +1 -1
  668. package/dist/types/src/features/publicApi/hooks/useDeleteScoreMutation.d.ts +1 -1
  669. package/dist/types/src/features/publicApi/hooks/useGetProjectPermissionMetaQuery.d.ts +1 -1
  670. package/dist/types/src/features/publicApi/hooks/useGetScoreQuery.d.ts +1 -1
  671. package/dist/types/src/features/publicApi/hooks/useGetTeamUsersQuery.d.ts +1 -1
  672. package/dist/types/src/features/publicApi/hooks/useGetUserTokenQuery.d.ts +1 -1
  673. package/dist/types/src/features/publicApi/hooks/useListContributorsQuery.d.ts +1 -1
  674. package/dist/types/src/features/publicApi/hooks/useListPermissionTemplates.d.ts +1 -1
  675. package/dist/types/src/features/publicApi/hooks/useListProjectLanguagesQuery.d.ts +1 -1
  676. package/dist/types/src/features/publicApi/hooks/useListProjectsQuery.d.ts +2 -2
  677. package/dist/types/src/features/publicApi/hooks/useListTeamUsersQuery.d.ts +1 -1
  678. package/dist/types/src/features/publicApi/hooks/useListTeamsQuery.d.ts +2 -2
  679. package/dist/types/src/features/publicApi/hooks/useRetrieveContributorQuery.d.ts +3 -3
  680. package/dist/types/src/features/publicApi/hooks/useRetrieveProjectQuery.d.ts +1 -1
  681. package/dist/types/src/features/publicApi/hooks/useRetrieveTeamQuery.d.ts +1 -1
  682. package/dist/types/src/features/publicApi/hooks/useRetrieveUserPermissions.d.ts +2 -2
  683. package/dist/types/src/features/publicApi/hooks/useUpdateContributorMutation.d.ts +6 -6
  684. package/dist/types/src/features/publicApi/hooks/useUpdateProjectMutation.d.ts +14 -14
  685. package/dist/types/src/features/publicApi/languages.d.ts +368 -3
  686. package/dist/types/src/features/publicApi/permissionTemplates.d.ts +117 -1
  687. package/dist/types/src/features/publicApi/projects.d.ts +1965 -6
  688. package/dist/types/src/features/publicApi/score.d.ts +290 -3
  689. package/dist/types/src/features/publicApi/team.d.ts +374 -2
  690. package/dist/types/src/features/publicApi/teamUsers.d.ts +318 -3
  691. package/dist/types/src/features/publicApi/types/contributorTypes.d.ts +834 -84
  692. package/dist/types/src/features/publicApi/types/languageTypes.d.ts +212 -22
  693. package/dist/types/src/features/publicApi/types/paginationTypes.d.ts +8 -2
  694. package/dist/types/src/features/publicApi/types/permissionTemplateTypes.d.ts +76 -71
  695. package/dist/types/src/features/publicApi/types/permissionTypes.d.ts +24 -48
  696. package/dist/types/src/features/publicApi/types/projectTypes.d.ts +1097 -211
  697. package/dist/types/src/features/publicApi/types/scoreTypes.d.ts +96 -32
  698. package/dist/types/src/features/publicApi/types/sharedTypes.d.ts +126 -30
  699. package/dist/types/src/features/publicApi/types/teamRoleTypes.d.ts +2 -7
  700. package/dist/types/src/features/publicApi/types/teamTypes.d.ts +328 -65
  701. package/dist/types/src/features/publicApi/types/teamUserTypes.d.ts +208 -91
  702. package/dist/types/src/features/publicApi/types/userTokenTypes.d.ts +39 -9
  703. package/dist/types/src/features/publicApi/userToken.d.ts +53 -1
  704. package/dist/types/tests/utils/apiHelpers.d.ts +1 -1
  705. package/package.json +1 -1
  706. package/dist/harmony178.cjs +0 -17
  707. package/dist/harmony178.cjs.map +0 -1
  708. package/dist/harmony178.mjs +0 -17
  709. package/dist/harmony178.mjs.map +0 -1
  710. package/dist/harmony179.cjs +0 -7
  711. package/dist/harmony179.cjs.map +0 -1
  712. package/dist/harmony179.mjs +0 -7
  713. package/dist/harmony179.mjs.map +0 -1
  714. package/dist/types/src/features/auth/core/headers/createHeaderBuilderMiddleware.d.ts +0 -32
  715. package/dist/types/src/features/auth/core/headers/createHeaderBuilderMiddleware.test.d.ts +0 -1
  716. package/dist/types/src/features/auth/core/headers/headerBuilder.d.ts +0 -171
  717. package/dist/types/src/features/auth/core/headers/headerBuilder.test.d.ts +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"harmony130.cjs","sources":["../src/features/navigation/schemas/navigationSchema.ts"],"sourcesContent":["import type { DropdownItem, NavItemIcon } from '@features/navigation/types/navigation'\n\nexport type NavKey = 'editor' | 'contributors' | 'orders' | 'billing' | 'settings' | 'dashboard'\n\nexport interface NavigationItem {\n\tkey: NavKey\n\tlabelKey: string // TODO: i18n key inside this package\n\tpath: ({ projectId }: { projectId: string }) => string\n\n\ticon?: NavItemIcon\n\tdropdown?: DropdownItem[][]\n\tbadge?: number | ((ctx: NavCtx) => number)\n\n\tshouldShow?: (ctx: NavCtx) => boolean\n\tdisabled?: boolean | ((ctx: NavCtx) => boolean)\n\tisActive?: (pathname: string) => boolean // custom match, else fallback\n}\n\n/** What the gate functions receive */\nexport interface NavCtx {\n\tflags: Record<string, string>\n\tpathname: string\n\tpermissions?: Array<string> // e.g. contributor admin_rights //TODO: Provide type for permissions\n}\n\n// TODO: Handle Translations on harmony side.\nexport const navigationItems: NavigationItem[] = [\n\t{\n\t\tkey: 'editor',\n\t\tlabelKey: 'Editor',\n\t\tpath: ({ projectId }) => `/project/${projectId}/editor`,\n\t},\n\t{\n\t\tkey: 'dashboard',\n\t\tlabelKey: 'Download',\n\t\tpath: ({ projectId }) => `/project/${projectId}/dashboard`,\n\t},\n\t{\n\t\tkey: 'contributors',\n\t\tlabelKey: 'Contributors',\n\t\tpath: ({ projectId }) => `/project/${projectId}/contributors`,\n\t},\n\n\t{\n\t\tkey: 'orders',\n\t\tlabelKey: 'Human proofreading',\n\t\tpath: ({ projectId }) => `/project/${projectId}/orders`,\n\t\tshouldShow: ({ flags }) => flags.ap_feature_hraas === 'on',\n\t},\n\t{\n\t\tkey: 'billing',\n\t\tlabelKey: 'Billing',\n\t\tpath: ({ projectId }) => `/project/${projectId}/billing`,\n\t\tshouldShow: ({ flags }) => flags.ap_feature_billing === 'on',\n\t},\n]\n"],"names":[],"mappings":";;AA0BO,MAAM,kBAAoC;AAAA,EAChD;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,EAC/C;AAAA,EACA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,EAC/C;AAAA,EACA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,EAC/C;AAAA,EAEA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,IAC9C,YAAY,CAAC,EAAE,YAAY,MAAM,qBAAqB;AAAA,EACvD;AAAA,EACA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,IAC9C,YAAY,CAAC,EAAE,YAAY,MAAM,uBAAuB;AAAA,EAAA;AAE1D;;"}
1
+ {"version":3,"file":"harmony130.cjs","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 { jwt } = useSidebar()\n\n\tif (!canChangeBilling(jwt)) {\n\t\treturn null\n\t}\n\n\treturn <MenuItem href=\"/team#billing\">Billing</MenuItem>\n}\n"],"names":["useSidebar","canChangeBilling","jsx","MenuItem"],"mappings":";;;;;;AAiBO,MAAM,kBAAkB,MAAM;AAC9B,QAAA,EAAE,IAAI,IAAIA,sBAAW;AAEvB,MAAA,CAACC,YAAAA,iBAAiB,GAAG,GAAG;AACpB,WAAA;AAAA,EAAA;AAGR,SAAQC,2BAAAA,IAAAC,MAAAA,UAAA,EAAS,MAAK,iBAAgB,UAAO,WAAA;AAC9C;;"}
@@ -1,33 +1,15 @@
1
- const navigationItems = [
2
- {
3
- key: "editor",
4
- labelKey: "Editor",
5
- path: ({ projectId }) => `/project/${projectId}/editor`
6
- },
7
- {
8
- key: "dashboard",
9
- labelKey: "Download",
10
- path: ({ projectId }) => `/project/${projectId}/dashboard`
11
- },
12
- {
13
- key: "contributors",
14
- labelKey: "Contributors",
15
- path: ({ projectId }) => `/project/${projectId}/contributors`
16
- },
17
- {
18
- key: "orders",
19
- labelKey: "Human proofreading",
20
- path: ({ projectId }) => `/project/${projectId}/orders`,
21
- shouldShow: ({ flags }) => flags.ap_feature_hraas === "on"
22
- },
23
- {
24
- key: "billing",
25
- labelKey: "Billing",
26
- path: ({ projectId }) => `/project/${projectId}/billing`,
27
- shouldShow: ({ flags }) => flags.ap_feature_billing === "on"
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useSidebar } from "./harmony111.mjs";
3
+ import { MenuItem } from "@lokalise/louis";
4
+ import { canChangeBilling } from "./harmony112.mjs";
5
+ const BillingMenuItem = () => {
6
+ const { jwt } = useSidebar();
7
+ if (!canChangeBilling(jwt)) {
8
+ return null;
28
9
  }
29
- ];
10
+ return /* @__PURE__ */ jsx(MenuItem, { href: "/team#billing", children: "Billing" });
11
+ };
30
12
  export {
31
- navigationItems
13
+ BillingMenuItem
32
14
  };
33
15
  //# sourceMappingURL=harmony130.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony130.mjs","sources":["../src/features/navigation/schemas/navigationSchema.ts"],"sourcesContent":["import type { DropdownItem, NavItemIcon } from '@features/navigation/types/navigation'\n\nexport type NavKey = 'editor' | 'contributors' | 'orders' | 'billing' | 'settings' | 'dashboard'\n\nexport interface NavigationItem {\n\tkey: NavKey\n\tlabelKey: string // TODO: i18n key inside this package\n\tpath: ({ projectId }: { projectId: string }) => string\n\n\ticon?: NavItemIcon\n\tdropdown?: DropdownItem[][]\n\tbadge?: number | ((ctx: NavCtx) => number)\n\n\tshouldShow?: (ctx: NavCtx) => boolean\n\tdisabled?: boolean | ((ctx: NavCtx) => boolean)\n\tisActive?: (pathname: string) => boolean // custom match, else fallback\n}\n\n/** What the gate functions receive */\nexport interface NavCtx {\n\tflags: Record<string, string>\n\tpathname: string\n\tpermissions?: Array<string> // e.g. contributor admin_rights //TODO: Provide type for permissions\n}\n\n// TODO: Handle Translations on harmony side.\nexport const navigationItems: NavigationItem[] = [\n\t{\n\t\tkey: 'editor',\n\t\tlabelKey: 'Editor',\n\t\tpath: ({ projectId }) => `/project/${projectId}/editor`,\n\t},\n\t{\n\t\tkey: 'dashboard',\n\t\tlabelKey: 'Download',\n\t\tpath: ({ projectId }) => `/project/${projectId}/dashboard`,\n\t},\n\t{\n\t\tkey: 'contributors',\n\t\tlabelKey: 'Contributors',\n\t\tpath: ({ projectId }) => `/project/${projectId}/contributors`,\n\t},\n\n\t{\n\t\tkey: 'orders',\n\t\tlabelKey: 'Human proofreading',\n\t\tpath: ({ projectId }) => `/project/${projectId}/orders`,\n\t\tshouldShow: ({ flags }) => flags.ap_feature_hraas === 'on',\n\t},\n\t{\n\t\tkey: 'billing',\n\t\tlabelKey: 'Billing',\n\t\tpath: ({ projectId }) => `/project/${projectId}/billing`,\n\t\tshouldShow: ({ flags }) => flags.ap_feature_billing === 'on',\n\t},\n]\n"],"names":[],"mappings":"AA0BO,MAAM,kBAAoC;AAAA,EAChD;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,EAC/C;AAAA,EACA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,EAC/C;AAAA,EACA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,EAC/C;AAAA,EAEA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,IAC9C,YAAY,CAAC,EAAE,YAAY,MAAM,qBAAqB;AAAA,EACvD;AAAA,EACA;AAAA,IACC,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,EAAE,UAAU,MAAM,YAAY,SAAS;AAAA,IAC9C,YAAY,CAAC,EAAE,YAAY,MAAM,uBAAuB;AAAA,EAAA;AAE1D;"}
1
+ {"version":3,"file":"harmony130.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 { jwt } = useSidebar()\n\n\tif (!canChangeBilling(jwt)) {\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,EAAE,IAAI,IAAI,WAAW;AAEvB,MAAA,CAAC,iBAAiB,GAAG,GAAG;AACpB,WAAA;AAAA,EAAA;AAGR,SAAQ,oBAAA,UAAA,EAAS,MAAK,iBAAgB,UAAO,WAAA;AAC9C;"}
@@ -1,8 +1,18 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const _commonjsHelpers = require("./harmony175.cjs");
4
- const debounce$1 = require("./harmony155.cjs");
5
- var debounceExports = debounce$1.__require();
6
- const debounce = /* @__PURE__ */ _commonjsHelpers.getDefaultExportFromCjs(debounceExports);
7
- exports.default = debounce;
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const useSidebar = require("./harmony111.cjs");
5
+ const louis = require("@lokalise/louis");
6
+ const permissions = require("./harmony112.cjs");
7
+ const CreateNewTeam = ({ onCreateTeam }) => {
8
+ const { jwt } = useSidebar.useSidebar();
9
+ if (!permissions.canCreateTeam(jwt)) {
10
+ return null;
11
+ }
12
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
13
+ /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { onClick: onCreateTeam, children: "Create new team" }),
14
+ /* @__PURE__ */ jsxRuntime.jsx(louis.MenuDivider, {})
15
+ ] });
16
+ };
17
+ exports.CreateNewTeam = CreateNewTeam;
8
18
  //# sourceMappingURL=harmony131.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony131.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"harmony131.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 { jwt } = useSidebar()\n\n\tif (!canCreateTeam(jwt)) {\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,EAAE,IAAI,IAAIA,sBAAW;AAEvB,MAAA,CAACC,YAAAA,cAAc,GAAG,GAAG;AACjB,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,8 +1,18 @@
1
- import { getDefaultExportFromCjs } from "./harmony175.mjs";
2
- import { __require as requireDebounce } from "./harmony155.mjs";
3
- var debounceExports = requireDebounce();
4
- const debounce = /* @__PURE__ */ getDefaultExportFromCjs(debounceExports);
1
+ import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
+ import { useSidebar } from "./harmony111.mjs";
3
+ import { MenuItem, MenuDivider } from "@lokalise/louis";
4
+ import { canCreateTeam } from "./harmony112.mjs";
5
+ const CreateNewTeam = ({ onCreateTeam }) => {
6
+ const { jwt } = useSidebar();
7
+ if (!canCreateTeam(jwt)) {
8
+ return null;
9
+ }
10
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
11
+ /* @__PURE__ */ jsx(MenuItem, { onClick: onCreateTeam, children: "Create new team" }),
12
+ /* @__PURE__ */ jsx(MenuDivider, {})
13
+ ] });
14
+ };
5
15
  export {
6
- debounce as default
16
+ CreateNewTeam
7
17
  };
8
18
  //# sourceMappingURL=harmony131.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony131.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
1
+ {"version":3,"file":"harmony131.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 { jwt } = useSidebar()\n\n\tif (!canCreateTeam(jwt)) {\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,EAAE,IAAI,IAAI,WAAW;AAEvB,MAAA,CAAC,cAAc,GAAG,GAAG;AACjB,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,8 +1,22 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const _commonjsHelpers = require("./harmony175.cjs");
4
- const throttle$1 = require("./harmony159.cjs");
5
- var throttleExports = throttle$1.__require();
6
- const throttle = /* @__PURE__ */ _commonjsHelpers.getDefaultExportFromCjs(throttleExports);
7
- exports.default = throttle;
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const useSidebar = require("./harmony111.cjs");
5
+ const louis = require("@lokalise/louis");
6
+ const permissions = require("./harmony112.cjs");
7
+ const CreateNewTeamPlaceholder_module = require("./harmony153.cjs");
8
+ const CreateNewTeamPlaceholder = ({ onClick }) => {
9
+ const { jwt } = useSidebar.useSidebar();
10
+ if (!permissions.canCreateTeam(jwt)) {
11
+ return null;
12
+ }
13
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
14
+ /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { onClick, "data-testid": "sidebar-create-new-team-placeholder", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col", children: [
15
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: CreateNewTeamPlaceholder_module.default.mainLabel, children: "Create new team" }),
16
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: CreateNewTeamPlaceholder_module.default.subLabel, children: "Switch to Expert to create a new team" })
17
+ ] }) }),
18
+ /* @__PURE__ */ jsxRuntime.jsx(louis.MenuDivider, {})
19
+ ] });
20
+ };
21
+ exports.CreateNewTeamPlaceholder = CreateNewTeamPlaceholder;
8
22
  //# sourceMappingURL=harmony132.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony132.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"harmony132.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 { jwt } = useSidebar()\n\n\tif (!canCreateTeam(jwt)) {\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,EAAE,IAAI,IAAIA,sBAAW;AAEvB,MAAA,CAACC,YAAAA,cAAc,GAAG,GAAG;AACjB,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,8 +1,22 @@
1
- import { getDefaultExportFromCjs } from "./harmony175.mjs";
2
- import { __require as requireThrottle } from "./harmony159.mjs";
3
- var throttleExports = requireThrottle();
4
- const throttle = /* @__PURE__ */ getDefaultExportFromCjs(throttleExports);
1
+ import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
+ import { useSidebar } from "./harmony111.mjs";
3
+ import { MenuItem, MenuDivider } from "@lokalise/louis";
4
+ import { canCreateTeam } from "./harmony112.mjs";
5
+ import styles from "./harmony153.mjs";
6
+ const CreateNewTeamPlaceholder = ({ onClick }) => {
7
+ const { jwt } = useSidebar();
8
+ if (!canCreateTeam(jwt)) {
9
+ return null;
10
+ }
11
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
12
+ /* @__PURE__ */ jsx(MenuItem, { onClick, "data-testid": "sidebar-create-new-team-placeholder", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col", children: [
13
+ /* @__PURE__ */ jsx("span", { className: styles.mainLabel, children: "Create new team" }),
14
+ /* @__PURE__ */ jsx("span", { className: styles.subLabel, children: "Switch to Expert to create a new team" })
15
+ ] }) }),
16
+ /* @__PURE__ */ jsx(MenuDivider, {})
17
+ ] });
18
+ };
5
19
  export {
6
- throttle as default
20
+ CreateNewTeamPlaceholder
7
21
  };
8
22
  //# sourceMappingURL=harmony132.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony132.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
1
+ {"version":3,"file":"harmony132.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 { jwt } = useSidebar()\n\n\tif (!canCreateTeam(jwt)) {\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,EAAE,IAAI,IAAI,WAAW;AAEvB,MAAA,CAAC,cAAc,GAAG,GAAG;AACjB,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,12 +1,13 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const link = "_link_18vhx_1";
4
- const active = "_active_18vhx_18";
5
- const styles = {
6
- link,
7
- active
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const louis = require("@lokalise/louis");
5
+ const DarkModeToggle_module = require("./harmony154.cjs");
6
+ const DarkModeToggle = ({ onToggle, isDarkMode }) => {
7
+ return /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { onClick: onToggle, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `flex-row justify-between gap-1 ${DarkModeToggle_module.default.switchContainer}`, children: [
8
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: "Dark mode" }),
9
+ /* @__PURE__ */ jsxRuntime.jsx(louis.Switch, { defaultChecked: isDarkMode, "aria-label": "Toggle dark mode" })
10
+ ] }) });
8
11
  };
9
- exports.active = active;
10
- exports.default = styles;
11
- exports.link = link;
12
+ exports.DarkModeToggle = DarkModeToggle;
12
13
  //# sourceMappingURL=harmony133.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony133.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
1
+ {"version":3,"file":"harmony133.cjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/DarkModeToggle/DarkModeToggle.tsx"],"sourcesContent":["import { MenuItem, Switch } from '@lokalise/louis'\nimport styles from './DarkModeToggle.module.css'\n\ntype DarkModeToggleProps = {\n\tonToggle: () => void\n\tisDarkMode: boolean\n}\n\n/**\n * A menu item component for toggling dark mode.\n * Displays a switch and label, and calls the provided onToggle handler when clicked.\n *\n * @example\n * ```\n * <DarkModeToggle\n * isDarkMode={isDarkMode}\n * onToggle={handleToggleDarkMode}\n * />\n * ```\n */\n\nexport const DarkModeToggle = ({ onToggle, isDarkMode }: DarkModeToggleProps) => {\n\treturn (\n\t\t<MenuItem onClick={onToggle}>\n\t\t\t<div className={`flex-row justify-between gap-1 ${styles.switchContainer}`}>\n\t\t\t\t<span>Dark mode</span>\n\t\t\t\t<Switch defaultChecked={isDarkMode} aria-label=\"Toggle dark mode\" />\n\t\t\t</div>\n\t\t</MenuItem>\n\t)\n}\n"],"names":["jsx","MenuItem","jsxs","styles","Switch"],"mappings":";;;;;AAqBO,MAAM,iBAAiB,CAAC,EAAE,UAAU,iBAAsC;AAE/E,SAAAA,2BAAAA,IAACC,MAAAA,UAAS,EAAA,SAAS,UAClB,UAAAC,2BAAA,KAAC,SAAI,WAAW,kCAAkCC,sBAAO,QAAA,eAAe,IACvE,UAAA;AAAA,IAAAH,2BAAAA,IAAC,UAAK,UAAS,YAAA,CAAA;AAAA,IACdA,2BAAA,IAAAI,MAAA,QAAA,EAAO,gBAAgB,YAAY,cAAW,mBAAmB,CAAA;AAAA,EAAA,EAAA,CACnE,EACD,CAAA;AAEF;;"}
@@ -1,12 +1,13 @@
1
- const link = "_link_18vhx_1";
2
- const active = "_active_18vhx_18";
3
- const styles = {
4
- link,
5
- active
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { MenuItem, Switch } from "@lokalise/louis";
3
+ import styles from "./harmony154.mjs";
4
+ const DarkModeToggle = ({ onToggle, isDarkMode }) => {
5
+ return /* @__PURE__ */ jsx(MenuItem, { onClick: onToggle, children: /* @__PURE__ */ jsxs("div", { className: `flex-row justify-between gap-1 ${styles.switchContainer}`, children: [
6
+ /* @__PURE__ */ jsx("span", { children: "Dark mode" }),
7
+ /* @__PURE__ */ jsx(Switch, { defaultChecked: isDarkMode, "aria-label": "Toggle dark mode" })
8
+ ] }) });
6
9
  };
7
10
  export {
8
- active,
9
- styles as default,
10
- link
11
+ DarkModeToggle
11
12
  };
12
13
  //# sourceMappingURL=harmony133.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony133.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
1
+ {"version":3,"file":"harmony133.mjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/DarkModeToggle/DarkModeToggle.tsx"],"sourcesContent":["import { MenuItem, Switch } from '@lokalise/louis'\nimport styles from './DarkModeToggle.module.css'\n\ntype DarkModeToggleProps = {\n\tonToggle: () => void\n\tisDarkMode: boolean\n}\n\n/**\n * A menu item component for toggling dark mode.\n * Displays a switch and label, and calls the provided onToggle handler when clicked.\n *\n * @example\n * ```\n * <DarkModeToggle\n * isDarkMode={isDarkMode}\n * onToggle={handleToggleDarkMode}\n * />\n * ```\n */\n\nexport const DarkModeToggle = ({ onToggle, isDarkMode }: DarkModeToggleProps) => {\n\treturn (\n\t\t<MenuItem onClick={onToggle}>\n\t\t\t<div className={`flex-row justify-between gap-1 ${styles.switchContainer}`}>\n\t\t\t\t<span>Dark mode</span>\n\t\t\t\t<Switch defaultChecked={isDarkMode} aria-label=\"Toggle dark mode\" />\n\t\t\t</div>\n\t\t</MenuItem>\n\t)\n}\n"],"names":[],"mappings":";;;AAqBO,MAAM,iBAAiB,CAAC,EAAE,UAAU,iBAAsC;AAE/E,SAAA,oBAAC,UAAS,EAAA,SAAS,UAClB,UAAA,qBAAC,SAAI,WAAW,kCAAkC,OAAO,eAAe,IACvE,UAAA;AAAA,IAAA,oBAAC,UAAK,UAAS,YAAA,CAAA;AAAA,IACd,oBAAA,QAAA,EAAO,gBAAgB,YAAY,cAAW,mBAAmB,CAAA;AAAA,EAAA,EAAA,CACnE,EACD,CAAA;AAEF;"}
@@ -1,15 +1,29 @@
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("./harmony113.cjs");
4
+ const useSidebar = require("./harmony111.cjs");
5
5
  const louis = require("@lokalise/louis");
6
- const permissions = require("./harmony114.cjs");
7
- const BillingMenuItem = () => {
6
+ const permissions = require("./harmony112.cjs");
7
+ const ProfileSettingsMenuItem_module = require("./harmony155.cjs");
8
+ const ProfileSettingsMenuItem = ({ onClick }) => {
8
9
  const { jwt } = useSidebar.useSidebar();
9
- if (!permissions.canChangeBilling(jwt)) {
10
+ if (!permissions.canAccessProfileSettings(jwt)) {
10
11
  return null;
11
12
  }
12
- return /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { href: "/team#billing", children: "Billing" });
13
+ return /* @__PURE__ */ jsxRuntime.jsx(
14
+ louis.MenuItem,
15
+ {
16
+ "data-testid": "sidebar-profile-settings-menu-item",
17
+ href: "/profile",
18
+ onClick: () => {
19
+ onClick == null ? void 0 : onClick();
20
+ },
21
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `flex-col ${ProfileSettingsMenuItem_module.default.container}`, children: [
22
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: "Profile Settings" }),
23
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: ProfileSettingsMenuItem_module.default.profileEmail, children: jwt == null ? void 0 : jwt.userEmail })
24
+ ] })
25
+ }
26
+ );
13
27
  };
14
- exports.BillingMenuItem = BillingMenuItem;
28
+ exports.ProfileSettingsMenuItem = ProfileSettingsMenuItem;
15
29
  //# sourceMappingURL=harmony134.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony134.cjs","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 { jwt } = useSidebar()\n\n\tif (!canChangeBilling(jwt)) {\n\t\treturn null\n\t}\n\n\treturn <MenuItem href=\"/team#billing\">Billing</MenuItem>\n}\n"],"names":["useSidebar","canChangeBilling","jsx","MenuItem"],"mappings":";;;;;;AAiBO,MAAM,kBAAkB,MAAM;AAC9B,QAAA,EAAE,IAAI,IAAIA,sBAAW;AAEvB,MAAA,CAACC,YAAAA,iBAAiB,GAAG,GAAG;AACpB,WAAA;AAAA,EAAA;AAGR,SAAQC,2BAAAA,IAAAC,MAAAA,UAAA,EAAS,MAAK,iBAAgB,UAAO,WAAA;AAC9C;;"}
1
+ {"version":3,"file":"harmony134.cjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/ProfileSettingsMenuItem/ProfileSettingsMenuItem.tsx"],"sourcesContent":["import { useSidebar } from '@components/Sidebar/hooks/useSidebar'\nimport { MenuItem } from '@lokalise/louis'\nimport { canAccessProfileSettings } from '@utils/user/permissions'\nimport styles from './ProfileSettingsMenuItem.module.css'\n\n/**\n * A menu item component for navigating to the profile settings page.\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 * <ProfileSettingsMenuItem onClick={() => { }} />\n * ```\n *\n * @note This component must be used within a Sidebar Context.\n */\n\ntype ProfileSettingsMenuItem = {\n\tonClick?: () => void\n}\n\nexport const ProfileSettingsMenuItem = ({ onClick }: ProfileSettingsMenuItem) => {\n\tconst { jwt } = useSidebar()\n\n\tif (!canAccessProfileSettings(jwt)) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<MenuItem\n\t\t\tdata-testid=\"sidebar-profile-settings-menu-item\"\n\t\t\thref=\"/profile\"\n\t\t\tonClick={() => {\n\t\t\t\tonClick?.()\n\t\t\t}}\n\t\t>\n\t\t\t<div className={`flex-col ${styles.container}`}>\n\t\t\t\t<span>Profile Settings</span>\n\t\t\t\t<span className={styles.profileEmail}>{jwt?.userEmail}</span>\n\t\t\t</div>\n\t\t</MenuItem>\n\t)\n}\n"],"names":["useSidebar","canAccessProfileSettings","jsx","MenuItem","styles"],"mappings":";;;;;;;AAsBO,MAAM,0BAA0B,CAAC,EAAE,cAAuC;AAC1E,QAAA,EAAE,IAAI,IAAIA,sBAAW;AAEvB,MAAA,CAACC,YAAAA,yBAAyB,GAAG,GAAG;AAC5B,WAAA;AAAA,EAAA;AAIP,SAAAC,2BAAA;AAAA,IAACC,MAAA;AAAA,IAAA;AAAA,MACA,eAAY;AAAA,MACZ,MAAK;AAAA,MACL,SAAS,MAAM;AACJ;AAAA,MACX;AAAA,MAEA,0CAAC,OAAI,EAAA,WAAW,YAAYC,uCAAO,SAAS,IAC3C,UAAA;AAAA,QAAAF,2BAAAA,IAAC,UAAK,UAAgB,mBAAA,CAAA;AAAA,uCACrB,QAAK,EAAA,WAAWE,+BAAAA,QAAO,cAAe,qCAAK,UAAU,CAAA;AAAA,MAAA,EACvD,CAAA;AAAA,IAAA;AAAA,EACD;AAEF;;"}
@@ -1,15 +1,29 @@
1
- import { jsx } from "react/jsx-runtime";
2
- import { useSidebar } from "./harmony113.mjs";
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { useSidebar } from "./harmony111.mjs";
3
3
  import { MenuItem } from "@lokalise/louis";
4
- import { canChangeBilling } from "./harmony114.mjs";
5
- const BillingMenuItem = () => {
4
+ import { canAccessProfileSettings } from "./harmony112.mjs";
5
+ import styles from "./harmony155.mjs";
6
+ const ProfileSettingsMenuItem = ({ onClick }) => {
6
7
  const { jwt } = useSidebar();
7
- if (!canChangeBilling(jwt)) {
8
+ if (!canAccessProfileSettings(jwt)) {
8
9
  return null;
9
10
  }
10
- return /* @__PURE__ */ jsx(MenuItem, { href: "/team#billing", children: "Billing" });
11
+ return /* @__PURE__ */ jsx(
12
+ MenuItem,
13
+ {
14
+ "data-testid": "sidebar-profile-settings-menu-item",
15
+ href: "/profile",
16
+ onClick: () => {
17
+ onClick == null ? void 0 : onClick();
18
+ },
19
+ children: /* @__PURE__ */ jsxs("div", { className: `flex-col ${styles.container}`, children: [
20
+ /* @__PURE__ */ jsx("span", { children: "Profile Settings" }),
21
+ /* @__PURE__ */ jsx("span", { className: styles.profileEmail, children: jwt == null ? void 0 : jwt.userEmail })
22
+ ] })
23
+ }
24
+ );
11
25
  };
12
26
  export {
13
- BillingMenuItem
27
+ ProfileSettingsMenuItem
14
28
  };
15
29
  //# sourceMappingURL=harmony134.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony134.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 { jwt } = useSidebar()\n\n\tif (!canChangeBilling(jwt)) {\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,EAAE,IAAI,IAAI,WAAW;AAEvB,MAAA,CAAC,iBAAiB,GAAG,GAAG;AACpB,WAAA;AAAA,EAAA;AAGR,SAAQ,oBAAA,UAAA,EAAS,MAAK,iBAAgB,UAAO,WAAA;AAC9C;"}
1
+ {"version":3,"file":"harmony134.mjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/ProfileSettingsMenuItem/ProfileSettingsMenuItem.tsx"],"sourcesContent":["import { useSidebar } from '@components/Sidebar/hooks/useSidebar'\nimport { MenuItem } from '@lokalise/louis'\nimport { canAccessProfileSettings } from '@utils/user/permissions'\nimport styles from './ProfileSettingsMenuItem.module.css'\n\n/**\n * A menu item component for navigating to the profile settings page.\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 * <ProfileSettingsMenuItem onClick={() => { }} />\n * ```\n *\n * @note This component must be used within a Sidebar Context.\n */\n\ntype ProfileSettingsMenuItem = {\n\tonClick?: () => void\n}\n\nexport const ProfileSettingsMenuItem = ({ onClick }: ProfileSettingsMenuItem) => {\n\tconst { jwt } = useSidebar()\n\n\tif (!canAccessProfileSettings(jwt)) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<MenuItem\n\t\t\tdata-testid=\"sidebar-profile-settings-menu-item\"\n\t\t\thref=\"/profile\"\n\t\t\tonClick={() => {\n\t\t\t\tonClick?.()\n\t\t\t}}\n\t\t>\n\t\t\t<div className={`flex-col ${styles.container}`}>\n\t\t\t\t<span>Profile Settings</span>\n\t\t\t\t<span className={styles.profileEmail}>{jwt?.userEmail}</span>\n\t\t\t</div>\n\t\t</MenuItem>\n\t)\n}\n"],"names":[],"mappings":";;;;;AAsBO,MAAM,0BAA0B,CAAC,EAAE,cAAuC;AAC1E,QAAA,EAAE,IAAI,IAAI,WAAW;AAEvB,MAAA,CAAC,yBAAyB,GAAG,GAAG;AAC5B,WAAA;AAAA,EAAA;AAIP,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,eAAY;AAAA,MACZ,MAAK;AAAA,MACL,SAAS,MAAM;AACJ;AAAA,MACX;AAAA,MAEA,+BAAC,OAAI,EAAA,WAAW,YAAY,OAAO,SAAS,IAC3C,UAAA;AAAA,QAAA,oBAAC,UAAK,UAAgB,mBAAA,CAAA;AAAA,4BACrB,QAAK,EAAA,WAAW,OAAO,cAAe,qCAAK,UAAU,CAAA;AAAA,MAAA,EACvD,CAAA;AAAA,IAAA;AAAA,EACD;AAEF;"}
@@ -1,18 +1,15 @@
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("./harmony113.cjs");
4
+ const useSidebar = require("./harmony111.cjs");
5
5
  const louis = require("@lokalise/louis");
6
- const permissions = require("./harmony114.cjs");
7
- const CreateNewTeam = ({ onCreateTeam }) => {
6
+ const permissions = require("./harmony112.cjs");
7
+ const ProviderMenuItem = () => {
8
8
  const { jwt } = useSidebar.useSidebar();
9
- if (!permissions.canCreateTeam(jwt)) {
9
+ if (!permissions.canAccessProviderDashboard(jwt)) {
10
10
  return null;
11
11
  }
12
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
13
- /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { onClick: onCreateTeam, children: "Create new team" }),
14
- /* @__PURE__ */ jsxRuntime.jsx(louis.MenuDivider, {})
15
- ] });
12
+ return /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { href: "/provider", children: "Provider dashboard" });
16
13
  };
17
- exports.CreateNewTeam = CreateNewTeam;
14
+ exports.ProviderMenuItem = ProviderMenuItem;
18
15
  //# sourceMappingURL=harmony135.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony135.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 { jwt } = useSidebar()\n\n\tif (!canCreateTeam(jwt)) {\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,EAAE,IAAI,IAAIA,sBAAW;AAEvB,MAAA,CAACC,YAAAA,cAAc,GAAG,GAAG;AACjB,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":"harmony135.cjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/ProviderMenuItem/ProviderMenuItem.tsx"],"sourcesContent":["import { useSidebar } from '@components/Sidebar/hooks/useSidebar'\nimport { MenuItem } from '@lokalise/louis'\nimport { canAccessProviderDashboard } from '@utils/user/permissions'\n\n/**\n * A menu item component for navigating to the provider dashboard.\n * It checks the current user's permissions using the Sidebar context\n * and renders nothing if the user does not have access.\n *\n * @example\n * ```\n * <ProviderMenuItem />\n * ```\n *\n * @note This component must be used within a Sidebar Context.\n */\n\nexport const ProviderMenuItem = () => {\n\tconst { jwt } = useSidebar()\n\n\tif (!canAccessProviderDashboard(jwt)) {\n\t\treturn null\n\t}\n\n\treturn <MenuItem href=\"/provider\">Provider dashboard</MenuItem>\n}\n"],"names":["useSidebar","canAccessProviderDashboard","jsx","MenuItem"],"mappings":";;;;;;AAiBO,MAAM,mBAAmB,MAAM;AAC/B,QAAA,EAAE,IAAI,IAAIA,sBAAW;AAEvB,MAAA,CAACC,YAAAA,2BAA2B,GAAG,GAAG;AAC9B,WAAA;AAAA,EAAA;AAGR,SAAQC,2BAAAA,IAAAC,MAAAA,UAAA,EAAS,MAAK,aAAY,UAAkB,sBAAA;AACrD;;"}
@@ -1,18 +1,15 @@
1
- import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
- import { useSidebar } from "./harmony113.mjs";
3
- import { MenuItem, MenuDivider } from "@lokalise/louis";
4
- import { canCreateTeam } from "./harmony114.mjs";
5
- const CreateNewTeam = ({ onCreateTeam }) => {
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useSidebar } from "./harmony111.mjs";
3
+ import { MenuItem } from "@lokalise/louis";
4
+ import { canAccessProviderDashboard } from "./harmony112.mjs";
5
+ const ProviderMenuItem = () => {
6
6
  const { jwt } = useSidebar();
7
- if (!canCreateTeam(jwt)) {
7
+ if (!canAccessProviderDashboard(jwt)) {
8
8
  return null;
9
9
  }
10
- return /* @__PURE__ */ jsxs(Fragment, { children: [
11
- /* @__PURE__ */ jsx(MenuItem, { onClick: onCreateTeam, children: "Create new team" }),
12
- /* @__PURE__ */ jsx(MenuDivider, {})
13
- ] });
10
+ return /* @__PURE__ */ jsx(MenuItem, { href: "/provider", children: "Provider dashboard" });
14
11
  };
15
12
  export {
16
- CreateNewTeam
13
+ ProviderMenuItem
17
14
  };
18
15
  //# sourceMappingURL=harmony135.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony135.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 { jwt } = useSidebar()\n\n\tif (!canCreateTeam(jwt)) {\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,EAAE,IAAI,IAAI,WAAW;AAEvB,MAAA,CAAC,cAAc,GAAG,GAAG;AACjB,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":"harmony135.mjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/ProviderMenuItem/ProviderMenuItem.tsx"],"sourcesContent":["import { useSidebar } from '@components/Sidebar/hooks/useSidebar'\nimport { MenuItem } from '@lokalise/louis'\nimport { canAccessProviderDashboard } from '@utils/user/permissions'\n\n/**\n * A menu item component for navigating to the provider dashboard.\n * It checks the current user's permissions using the Sidebar context\n * and renders nothing if the user does not have access.\n *\n * @example\n * ```\n * <ProviderMenuItem />\n * ```\n *\n * @note This component must be used within a Sidebar Context.\n */\n\nexport const ProviderMenuItem = () => {\n\tconst { jwt } = useSidebar()\n\n\tif (!canAccessProviderDashboard(jwt)) {\n\t\treturn null\n\t}\n\n\treturn <MenuItem href=\"/provider\">Provider dashboard</MenuItem>\n}\n"],"names":[],"mappings":";;;;AAiBO,MAAM,mBAAmB,MAAM;AAC/B,QAAA,EAAE,IAAI,IAAI,WAAW;AAEvB,MAAA,CAAC,2BAA2B,GAAG,GAAG;AAC9B,WAAA;AAAA,EAAA;AAGR,SAAQ,oBAAA,UAAA,EAAS,MAAK,aAAY,UAAkB,sBAAA;AACrD;"}
@@ -1,22 +1,41 @@
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("./harmony113.cjs");
4
+ const useSidebar = require("./harmony111.cjs");
5
5
  const louis = require("@lokalise/louis");
6
- const permissions = require("./harmony114.cjs");
7
- const CreateNewTeamPlaceholder_module = require("./harmony160.cjs");
8
- const CreateNewTeamPlaceholder = ({ onClick }) => {
9
- const { jwt } = useSidebar.useSidebar();
10
- if (!permissions.canCreateTeam(jwt)) {
6
+ const plan = require("./harmony11.cjs");
7
+ const TeamMenuItem_module = require("./harmony156.cjs");
8
+ const TeamMenuItem = ({ team, onClick, hidePlanLabel }) => {
9
+ const {
10
+ jwt,
11
+ data: { currentTeam }
12
+ } = useSidebar.useSidebar();
13
+ const contextTeam = team ?? currentTeam.result;
14
+ if (!contextTeam || typeof (jwt == null ? void 0 : jwt.planId) !== "number" || !Number.isFinite(jwt.planId)) {
11
15
  return null;
12
16
  }
13
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
14
- /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { onClick, "data-testid": "sidebar-create-new-team-placeholder", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col", children: [
15
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: CreateNewTeamPlaceholder_module.default.mainLabel, children: "Create new team" }),
16
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: CreateNewTeamPlaceholder_module.default.subLabel, children: "Switch to Expert to create a new team" })
17
- ] }) }),
18
- /* @__PURE__ */ jsxRuntime.jsx(louis.MenuDivider, {})
19
- ] });
17
+ const planId = jwt.planId;
18
+ const planLabel = plan.isFreePlan(planId) ? "Free" : plan.isTrialPlan(planId) ? "Trial" : void 0;
19
+ const WrapperNode = onClick ? louis.MenuItem : "div";
20
+ const testId = onClick ? "sidebar-clickable-team-menu-item" : "sidebar-team-menu-item";
21
+ return /* @__PURE__ */ jsxRuntime.jsxs(
22
+ WrapperNode,
23
+ {
24
+ "data-testid": testId,
25
+ className: TeamMenuItem_module.default.wrapper,
26
+ ...onClick && { onClick: () => onClick(contextTeam) },
27
+ children: [
28
+ contextTeam.logoUrl ? /* @__PURE__ */ jsxRuntime.jsx("img", { className: TeamMenuItem_module.default.profileImage, src: contextTeam.logoUrl, alt: "Team logo" }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: `${TeamMenuItem_module.default.defaultProfileImage}`, children: /* @__PURE__ */ jsxRuntime.jsx(louis.UserIcon, { size: "25px" }) }),
29
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: TeamMenuItem_module.default.teamDetails, children: [
30
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: TeamMenuItem_module.default.planWrapper, children: [
31
+ /* @__PURE__ */ jsxRuntime.jsx("span", { title: contextTeam.name, className: TeamMenuItem_module.default.teamName, children: contextTeam.name }),
32
+ planLabel && !hidePlanLabel && /* @__PURE__ */ jsxRuntime.jsx("span", { className: TeamMenuItem_module.default.teamName, children: planLabel })
33
+ ] }),
34
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: TeamMenuItem_module.default.membership, children: contextTeam.role })
35
+ ] })
36
+ ]
37
+ }
38
+ );
20
39
  };
21
- exports.CreateNewTeamPlaceholder = CreateNewTeamPlaceholder;
40
+ exports.TeamMenuItem = TeamMenuItem;
22
41
  //# sourceMappingURL=harmony136.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony136.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 { jwt } = useSidebar()\n\n\tif (!canCreateTeam(jwt)) {\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,EAAE,IAAI,IAAIA,sBAAW;AAEvB,MAAA,CAACC,YAAAA,cAAc,GAAG,GAAG;AACjB,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":"harmony136.cjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/TeamMenuItem/TeamMenuItem.tsx"],"sourcesContent":["import { useSidebar } from '@components/Sidebar/hooks/useSidebar'\nimport { MenuItem, UserIcon } from '@lokalise/louis'\nimport { isFreePlan, isTrialPlan } from '@utils'\nimport type { SidebarTeam } from '../../../types'\nimport styles from './TeamMenuItem.module.css'\n\ntype TeamMenuItemProps = {\n\t/** Team to display. If not provided, uses the current team from context */\n\tteam?: SidebarTeam\n\t/** Callback for when the team item is clicked. If provided, renders as a clickable MenuItem */\n\tonClick?: (team: SidebarTeam) => void\n\t/** Whether to hide the plan label (Free/Trial). Useful when displaying multiple teams */\n\thidePlanLabel?: boolean\n}\n\n/**\n * A component that displays team information in a menu item format.\n * Renders team logo (or default user icon), team name, role, and plan label.\n *\n * The component can be used in two modes:\n * 1. As a static display of the current team (when no onClick handler is provided)\n * 2. As a clickable menu item for team switching (when onClick handler is provided)\n *\n * @example\n * ```tsx\n * // Static current team display\n * <TeamMenuItem />\n *\n * // Clickable team item for switching\n * <TeamMenuItem\n * team={someTeam}\n * onClick={(team) => handleTeamSwitch(team)}\n * hidePlanLabel\n * />\n * ```\n *\n * @note This component must be used within a Sidebar Context.\n */\n\nexport const TeamMenuItem = ({ team, onClick, hidePlanLabel }: TeamMenuItemProps) => {\n\tconst {\n\t\tjwt,\n\t\tdata: { currentTeam },\n\t} = useSidebar()\n\n\tconst contextTeam = team ?? currentTeam.result\n\n\tif (!contextTeam || typeof jwt?.planId !== 'number' || !Number.isFinite(jwt.planId)) {\n\t\treturn null\n\t}\n\n\tconst planId = jwt.planId\n\n\tconst planLabel = isFreePlan(planId) ? 'Free' : isTrialPlan(planId) ? 'Trial' : undefined\n\n\tconst WrapperNode = onClick ? MenuItem : 'div'\n\n\tconst testId = onClick ? 'sidebar-clickable-team-menu-item' : 'sidebar-team-menu-item'\n\n\treturn (\n\t\t<WrapperNode\n\t\t\tdata-testid={testId}\n\t\t\tclassName={styles.wrapper}\n\t\t\t{...(onClick && { onClick: () => onClick(contextTeam) })}\n\t\t>\n\t\t\t{contextTeam.logoUrl ? (\n\t\t\t\t<img className={styles.profileImage} src={contextTeam.logoUrl} alt=\"Team logo\" />\n\t\t\t) : (\n\t\t\t\t<span className={`${styles.defaultProfileImage}`}>\n\t\t\t\t\t<UserIcon size=\"25px\" />\n\t\t\t\t</span>\n\t\t\t)}\n\t\t\t<div className={styles.teamDetails}>\n\t\t\t\t<div className={styles.planWrapper}>\n\t\t\t\t\t<span title={contextTeam.name} className={styles.teamName}>\n\t\t\t\t\t\t{contextTeam.name}\n\t\t\t\t\t</span>\n\t\t\t\t\t{planLabel && !hidePlanLabel && <span className={styles.teamName}>{planLabel}</span>}\n\t\t\t\t</div>\n\t\t\t\t<span className={styles.membership}>{contextTeam.role}</span>\n\t\t\t</div>\n\t\t</WrapperNode>\n\t)\n}\n"],"names":["useSidebar","isFreePlan","isTrialPlan","MenuItem","jsxs","styles","jsx","UserIcon"],"mappings":";;;;;;;AAuCO,MAAM,eAAe,CAAC,EAAE,MAAM,SAAS,oBAAuC;AAC9E,QAAA;AAAA,IACL;AAAA,IACA,MAAM,EAAE,YAAY;AAAA,MACjBA,sBAAW;AAET,QAAA,cAAc,QAAQ,YAAY;AAEpC,MAAA,CAAC,eAAe,QAAO,2BAAK,YAAW,YAAY,CAAC,OAAO,SAAS,IAAI,MAAM,GAAG;AAC7E,WAAA;AAAA,EAAA;AAGR,QAAM,SAAS,IAAI;AAEb,QAAA,YAAYC,gBAAW,MAAM,IAAI,SAASC,iBAAY,MAAM,IAAI,UAAU;AAE1E,QAAA,cAAc,UAAUC,MAAAA,WAAW;AAEnC,QAAA,SAAS,UAAU,qCAAqC;AAG7D,SAAAC,2BAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,eAAa;AAAA,MACb,WAAWC,oBAAO,QAAA;AAAA,MACjB,GAAI,WAAW,EAAE,SAAS,MAAM,QAAQ,WAAW,EAAE;AAAA,MAErD,UAAA;AAAA,QAAY,YAAA,yCACX,OAAI,EAAA,WAAWA,oBAAAA,QAAO,cAAc,KAAK,YAAY,SAAS,KAAI,YAAA,CAAY,IAE9EC,+BAAA,QAAA,EAAK,WAAW,GAAGD,oBAAO,QAAA,mBAAmB,IAC7C,UAACC,2BAAAA,IAAAC,MAAAA,UAAA,EAAS,MAAK,OAAA,CAAO,EACvB,CAAA;AAAA,QAEAH,2BAAA,KAAA,OAAA,EAAI,WAAWC,oBAAAA,QAAO,aACtB,UAAA;AAAA,UAACD,2BAAA,KAAA,OAAA,EAAI,WAAWC,oBAAAA,QAAO,aACtB,UAAA;AAAA,YAACC,2BAAAA,IAAA,QAAA,EAAK,OAAO,YAAY,MAAM,WAAWD,oBAAAA,QAAO,UAC/C,sBAAY,KACd,CAAA;AAAA,YACC,aAAa,CAAC,iBAAiBC,2BAAAA,IAAC,UAAK,WAAWD,4BAAO,UAAW,UAAU,UAAA,CAAA;AAAA,UAAA,GAC9E;AAAA,yCACC,QAAK,EAAA,WAAWA,oBAAAA,QAAO,YAAa,sBAAY,KAAK,CAAA;AAAA,QAAA,EACvD,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACD;AAEF;;"}