@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,32 +1,21 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
- import { Tooltip } from "@lokalise/louis";
3
- import { clsx } from "./harmony70.mjs";
4
- import { forwardRef } from "react";
5
- import { NavItemContents } from "./harmony89.mjs";
6
- import classes from "./harmony90.mjs";
7
- const NavigationTabsItem = forwardRef(
8
- ({ label, href = "", disabled = false, badge, onClick, novel }, ref) => /* @__PURE__ */ jsx(Tooltip, { tooltip: "You do not have access to this function", show: disabled, children: /* @__PURE__ */ jsx(
9
- "div",
2
+ import { Tooltip, Link } from "@lokalise/louis";
3
+ import { clsx } from "./harmony72.mjs";
4
+ import styles from "./harmony96.mjs";
5
+ const IconLink = ({ label, to, icon: Icon }) => {
6
+ return /* @__PURE__ */ jsx(Tooltip, { placement: "right", tooltip: label, children: /* @__PURE__ */ jsx(
7
+ Link,
10
8
  {
11
- className: disabled ? classes.projectNavigationItemDisabled : classes.projectNavigationItem,
12
- children: onClick || disabled || !href ? /* @__PURE__ */ jsx(
13
- "button",
14
- {
15
- type: "button",
16
- ref,
17
- className: clsx(classes.withNavLinkStyle, {
18
- [classes.disabled]: disabled
19
- }),
20
- disabled,
21
- onClick,
22
- children: /* @__PURE__ */ jsx(NavItemContents, { label, badge, novel })
23
- }
24
- ) : /* @__PURE__ */ jsx("a", { href, className: classes.withNavLinkStyle, children: /* @__PURE__ */ jsx(NavItemContents, { label, badge, novel }) })
9
+ "aria-label": label,
10
+ className: clsx(styles.link, {
11
+ [styles.active]: typeof window !== "undefined" && window.location.pathname.startsWith(to)
12
+ }),
13
+ href: to,
14
+ children: /* @__PURE__ */ jsx(Icon, { size: "25px" })
25
15
  }
26
- ) })
27
- );
28
- NavigationTabsItem.displayName = "NavigationTabsItem";
16
+ ) });
17
+ };
29
18
  export {
30
- NavigationTabsItem
19
+ IconLink
31
20
  };
32
21
  //# sourceMappingURL=harmony77.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony77.mjs","sources":["../src/components/NavigationPanel/components/NavigationTabs/NavigationTabsItem/NavigationTabsItem.tsx"],"sourcesContent":["import { Tooltip } from '@lokalise/louis'\nimport clsx from 'clsx'\nimport { forwardRef } from 'react'\nimport { NavItemContents } from './NavItemContents'\nimport classes from './styles.module.css'\n\ntype NavigationTabsItemProps = {\n\tlabel: string\n\tbadge?: number\n\tdisabled?: boolean\n\tactive?: boolean\n\tonClick?: () => void\n\thref?: string\n\tnovel?: string\n}\n\nexport const NavigationTabsItem = forwardRef<HTMLButtonElement, NavigationTabsItemProps>(\n\t({ label, href = '', disabled = false, badge, onClick, novel }, ref) => (\n\t\t<Tooltip tooltip=\"You do not have access to this function\" show={disabled}>\n\t\t\t<div\n\t\t\t\tclassName={disabled ? classes.projectNavigationItemDisabled : classes.projectNavigationItem}\n\t\t\t>\n\t\t\t\t{onClick || disabled || !href ? (\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tref={ref}\n\t\t\t\t\t\tclassName={clsx(classes.withNavLinkStyle, {\n\t\t\t\t\t\t\t[classes.disabled]: disabled,\n\t\t\t\t\t\t})}\n\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\tonClick={onClick}\n\t\t\t\t\t>\n\t\t\t\t\t\t<NavItemContents label={label} badge={badge} novel={novel} />\n\t\t\t\t\t</button>\n\t\t\t\t) : (\n\t\t\t\t\t<a href={href} className={classes.withNavLinkStyle}>\n\t\t\t\t\t\t<NavItemContents label={label} badge={badge} novel={novel} />\n\t\t\t\t\t</a>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</Tooltip>\n\t),\n)\n\nNavigationTabsItem.displayName = 'NavigationTabsItem'\n"],"names":[],"mappings":";;;;;;AAgBO,MAAM,qBAAqB;AAAA,EACjC,CAAC,EAAE,OAAO,OAAO,IAAI,WAAW,OAAO,OAAO,SAAS,MAAA,GAAS,QAC/D,oBAAC,WAAQ,SAAQ,2CAA0C,MAAM,UAChE,UAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,WAAW,WAAW,QAAQ,gCAAgC,QAAQ;AAAA,MAErE,UAAA,WAAW,YAAY,CAAC,OACxB;AAAA,QAAC;AAAA,QAAA;AAAA,UACA,MAAK;AAAA,UACL;AAAA,UACA,WAAW,KAAK,QAAQ,kBAAkB;AAAA,YACzC,CAAC,QAAQ,QAAQ,GAAG;AAAA,UAAA,CACpB;AAAA,UACD;AAAA,UACA;AAAA,UAEA,UAAC,oBAAA,iBAAA,EAAgB,OAAc,OAAc,MAAc,CAAA;AAAA,QAAA;AAAA,MAAA,IAG5D,oBAAC,KAAE,EAAA,MAAY,WAAW,QAAQ,kBACjC,UAAA,oBAAC,iBAAgB,EAAA,OAAc,OAAc,MAAc,CAAA,EAC5D,CAAA;AAAA,IAAA;AAAA,EAAA,EAGH,CAAA;AAEF;AAEA,mBAAmB,cAAc;"}
1
+ {"version":3,"file":"harmony77.mjs","sources":["../src/components/Sidebar/Widgets/IconLink/IconLink.tsx"],"sourcesContent":["import { Link, type SvgIconProps, Tooltip } from '@lokalise/louis'\nimport clsx from 'clsx'\nimport type { FC } from 'react'\nimport styles from './IconLink.module.css'\n\ntype IconLinkProps = {\n\t/** URL destination for the link */\n\tto: string\n\t/** Text to display in the tooltip when hovering over the icon */\n\tlabel: string\n\t/** Icon component from @lokalise/louis to display */\n\ticon: FC<SvgIconProps>\n}\n\n/**\n * A navigation link component that displays an icon with a tooltip.\n * When hovered, shows a tooltip with the label text.\n * The link is highlighted when the current URL matches its destination.\n *\n * @example\n * ```tsx\n * <IconLink to=\"/projects\" label=\"Projects\" icon={FolderOpenIcon} />\n * ```\n */\nexport const IconLink = ({ label, to, icon: Icon }: IconLinkProps) => {\n\treturn (\n\t\t<Tooltip placement=\"right\" tooltip={label}>\n\t\t\t<Link\n\t\t\t\taria-label={label}\n\t\t\t\tclassName={clsx(styles.link, {\n\t\t\t\t\t[styles.active]: typeof window !== 'undefined' && window.location.pathname.startsWith(to),\n\t\t\t\t})}\n\t\t\t\thref={to}\n\t\t\t>\n\t\t\t\t<Icon size=\"25px\" />\n\t\t\t</Link>\n\t\t</Tooltip>\n\t)\n}\n"],"names":[],"mappings":";;;;AAwBO,MAAM,WAAW,CAAC,EAAE,OAAO,IAAI,MAAM,WAA0B;AACrE,SACE,oBAAA,SAAA,EAAQ,WAAU,SAAQ,SAAS,OACnC,UAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,cAAY;AAAA,MACZ,WAAW,KAAK,OAAO,MAAM;AAAA,QAC5B,CAAC,OAAO,MAAM,GAAG,OAAO,WAAW,eAAe,OAAO,SAAS,SAAS,WAAW,EAAE;AAAA,MAAA,CACxF;AAAA,MACD,MAAM;AAAA,MAEN,UAAA,oBAAC,MAAK,EAAA,MAAK,OAAO,CAAA;AAAA,IAAA;AAAA,EAAA,GAEpB;AAEF;"}
@@ -1,6 +1,26 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const hasVisibleItems = (dropdownSections) => (dropdownSections == null ? void 0 : dropdownSections.some((section) => section.some((item) => item.visible))) ?? false;
4
- const isNavigationItemVisible = (item) => item.visible && (!item.dropdown || hasVisibleItems(item.dropdown));
5
- exports.isNavigationItemVisible = isNavigationItemVisible;
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const louis = require("@lokalise/louis");
5
+ const clsx = require("./harmony72.cjs");
6
+ const Menu_module = require("./harmony97.cjs");
7
+ const Menu = ({ children, icon: Icon }) => {
8
+ return /* @__PURE__ */ jsxRuntime.jsx(
9
+ louis.Menu,
10
+ {
11
+ menuButton: ({ opened }) => /* @__PURE__ */ jsxRuntime.jsx(louis.Tooltip, { placement: "right", tooltip: "Help", children: /* @__PURE__ */ jsxRuntime.jsx(
12
+ "button",
13
+ {
14
+ type: "button",
15
+ className: clsx.clsx(Menu_module.default.dropdownButton, {
16
+ [Menu_module.default.dropdownButtonActive]: opened
17
+ }),
18
+ children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { size: "25px" })
19
+ }
20
+ ) }),
21
+ children: /* @__PURE__ */ jsxRuntime.jsx(louis.MenuList, { placement: "right-start", children })
22
+ }
23
+ );
24
+ };
25
+ exports.Menu = Menu;
6
26
  //# sourceMappingURL=harmony78.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony78.cjs","sources":["../src/components/NavigationPanel/components/NavigationTabs/helpers.ts"],"sourcesContent":["import type { DropdownItem, NavigationTabsItem } from '../../types/navigation'\n\nconst hasVisibleItems = (dropdownSections?: DropdownItem[][]): boolean =>\n\tdropdownSections?.some((section) => section.some((item) => item.visible)) ?? false\n\nexport const isNavigationItemVisible = (item: NavigationTabsItem): boolean =>\n\titem.visible && (!item.dropdown || hasVisibleItems(item.dropdown))\n"],"names":[],"mappings":";;AAEA,MAAM,kBAAkB,CAAC,sBACxB,qDAAkB,KAAK,CAAC,YAAY,QAAQ,KAAK,CAAC,SAAS,KAAK,OAAO,OAAM;AAEjE,MAAA,0BAA0B,CAAC,SACvC,KAAK,YAAY,CAAC,KAAK,YAAY,gBAAgB,KAAK,QAAQ;;"}
1
+ {"version":3,"file":"harmony78.cjs","sources":["../src/components/Sidebar/Widgets/Menu/Menu.tsx"],"sourcesContent":["import { MenuList, type SvgIconProps, Tooltip, Menu as UIMenu } from '@lokalise/louis'\nimport clsx from 'clsx'\nimport type { FC, PropsWithChildren } from 'react'\nimport styles from './Menu.module.css'\n\ntype MenuProps = PropsWithChildren<{\n\t/** Icon component from @lokalise/louis to display in the menu button */\n\ticon: FC<SvgIconProps>\n}>\n\n/**\n * A dropdown menu component that displays an icon button which reveals a menu list when clicked.\n * The menu is positioned to the right of the button and includes a tooltip.\n *\n * Used primarily for dropdown menus in the Sidebar, such as the Help menu.\n *\n * @example\n * ```tsx\n * <Menu icon={HelpCenterIcon}>\n * <MenuItem href=\"/docs\">Documentation</MenuItem>\n * <MenuItem href=\"/tutorial\">Tutorials</MenuItem>\n * <MenuDivider />\n * <MenuItem href=\"/blog\">Blog</MenuItem>\n * </Menu>\n * ```\n */\nexport const Menu = ({ children, icon: Icon }: MenuProps) => {\n\treturn (\n\t\t<UIMenu\n\t\t\tmenuButton={({ opened }) => (\n\t\t\t\t<Tooltip placement=\"right\" tooltip=\"Help\">\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName={clsx(styles.dropdownButton, {\n\t\t\t\t\t\t\t[styles.dropdownButtonActive]: opened,\n\t\t\t\t\t\t})}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Icon size=\"25px\" />\n\t\t\t\t\t</button>\n\t\t\t\t</Tooltip>\n\t\t\t)}\n\t\t>\n\t\t\t<MenuList placement=\"right-start\">{children}</MenuList>\n\t\t</UIMenu>\n\t)\n}\n"],"names":["jsx","UIMenu","Tooltip","clsx","styles","MenuList"],"mappings":";;;;;;AA0BO,MAAM,OAAO,CAAC,EAAE,UAAU,MAAM,WAAsB;AAE3D,SAAAA,2BAAA;AAAA,IAACC,MAAA;AAAA,IAAA;AAAA,MACA,YAAY,CAAC,EAAE,OAAO,qCACpBC,MAAQ,SAAA,EAAA,WAAU,SAAQ,SAAQ,QAClC,UAAAF,2BAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACA,MAAK;AAAA,UACL,WAAWG,KAAAA,KAAKC,YAAA,QAAO,gBAAgB;AAAA,YACtC,CAACA,YAAAA,QAAO,oBAAoB,GAAG;AAAA,UAAA,CAC/B;AAAA,UAED,UAAAJ,2BAAAA,IAAC,MAAK,EAAA,MAAK,OAAO,CAAA;AAAA,QAAA;AAAA,MAAA,GAEpB;AAAA,MAGD,UAACA,2BAAA,IAAAK,MAAA,UAAA,EAAS,WAAU,eAAe,SAAS,CAAA;AAAA,IAAA;AAAA,EAC7C;AAEF;;"}
@@ -1,6 +1,26 @@
1
- const hasVisibleItems = (dropdownSections) => (dropdownSections == null ? void 0 : dropdownSections.some((section) => section.some((item) => item.visible))) ?? false;
2
- const isNavigationItemVisible = (item) => item.visible && (!item.dropdown || hasVisibleItems(item.dropdown));
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { Menu as Menu$1, MenuList, Tooltip } from "@lokalise/louis";
3
+ import { clsx } from "./harmony72.mjs";
4
+ import styles from "./harmony97.mjs";
5
+ const Menu = ({ children, icon: Icon }) => {
6
+ return /* @__PURE__ */ jsx(
7
+ Menu$1,
8
+ {
9
+ menuButton: ({ opened }) => /* @__PURE__ */ jsx(Tooltip, { placement: "right", tooltip: "Help", children: /* @__PURE__ */ jsx(
10
+ "button",
11
+ {
12
+ type: "button",
13
+ className: clsx(styles.dropdownButton, {
14
+ [styles.dropdownButtonActive]: opened
15
+ }),
16
+ children: /* @__PURE__ */ jsx(Icon, { size: "25px" })
17
+ }
18
+ ) }),
19
+ children: /* @__PURE__ */ jsx(MenuList, { placement: "right-start", children })
20
+ }
21
+ );
22
+ };
3
23
  export {
4
- isNavigationItemVisible
24
+ Menu
5
25
  };
6
26
  //# sourceMappingURL=harmony78.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony78.mjs","sources":["../src/components/NavigationPanel/components/NavigationTabs/helpers.ts"],"sourcesContent":["import type { DropdownItem, NavigationTabsItem } from '../../types/navigation'\n\nconst hasVisibleItems = (dropdownSections?: DropdownItem[][]): boolean =>\n\tdropdownSections?.some((section) => section.some((item) => item.visible)) ?? false\n\nexport const isNavigationItemVisible = (item: NavigationTabsItem): boolean =>\n\titem.visible && (!item.dropdown || hasVisibleItems(item.dropdown))\n"],"names":[],"mappings":"AAEA,MAAM,kBAAkB,CAAC,sBACxB,qDAAkB,KAAK,CAAC,YAAY,QAAQ,KAAK,CAAC,SAAS,KAAK,OAAO,OAAM;AAEjE,MAAA,0BAA0B,CAAC,SACvC,KAAK,YAAY,CAAC,KAAK,YAAY,gBAAgB,KAAK,QAAQ;"}
1
+ {"version":3,"file":"harmony78.mjs","sources":["../src/components/Sidebar/Widgets/Menu/Menu.tsx"],"sourcesContent":["import { MenuList, type SvgIconProps, Tooltip, Menu as UIMenu } from '@lokalise/louis'\nimport clsx from 'clsx'\nimport type { FC, PropsWithChildren } from 'react'\nimport styles from './Menu.module.css'\n\ntype MenuProps = PropsWithChildren<{\n\t/** Icon component from @lokalise/louis to display in the menu button */\n\ticon: FC<SvgIconProps>\n}>\n\n/**\n * A dropdown menu component that displays an icon button which reveals a menu list when clicked.\n * The menu is positioned to the right of the button and includes a tooltip.\n *\n * Used primarily for dropdown menus in the Sidebar, such as the Help menu.\n *\n * @example\n * ```tsx\n * <Menu icon={HelpCenterIcon}>\n * <MenuItem href=\"/docs\">Documentation</MenuItem>\n * <MenuItem href=\"/tutorial\">Tutorials</MenuItem>\n * <MenuDivider />\n * <MenuItem href=\"/blog\">Blog</MenuItem>\n * </Menu>\n * ```\n */\nexport const Menu = ({ children, icon: Icon }: MenuProps) => {\n\treturn (\n\t\t<UIMenu\n\t\t\tmenuButton={({ opened }) => (\n\t\t\t\t<Tooltip placement=\"right\" tooltip=\"Help\">\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName={clsx(styles.dropdownButton, {\n\t\t\t\t\t\t\t[styles.dropdownButtonActive]: opened,\n\t\t\t\t\t\t})}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Icon size=\"25px\" />\n\t\t\t\t\t</button>\n\t\t\t\t</Tooltip>\n\t\t\t)}\n\t\t>\n\t\t\t<MenuList placement=\"right-start\">{children}</MenuList>\n\t\t</UIMenu>\n\t)\n}\n"],"names":["UIMenu"],"mappings":";;;;AA0BO,MAAM,OAAO,CAAC,EAAE,UAAU,MAAM,WAAsB;AAE3D,SAAA;AAAA,IAACA;AAAAA,IAAA;AAAA,MACA,YAAY,CAAC,EAAE,OAAO,0BACpB,SAAQ,EAAA,WAAU,SAAQ,SAAQ,QAClC,UAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACA,MAAK;AAAA,UACL,WAAW,KAAK,OAAO,gBAAgB;AAAA,YACtC,CAAC,OAAO,oBAAoB,GAAG;AAAA,UAAA,CAC/B;AAAA,UAED,UAAA,oBAAC,MAAK,EAAA,MAAK,OAAO,CAAA;AAAA,QAAA;AAAA,MAAA,GAEpB;AAAA,MAGD,UAAC,oBAAA,UAAA,EAAS,WAAU,eAAe,SAAS,CAAA;AAAA,IAAA;AAAA,EAC7C;AAEF;"}
@@ -1,36 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
- const louis = require("@lokalise/louis");
5
- const reactTable = require("@tanstack/react-table");
6
- const clsx = require("./harmony70.cjs");
7
- const SortingIcon = require("./harmony91.cjs");
8
- const TableHeaderCell_module = require("./harmony92.cjs");
9
- const TableHeaderCell = ({
10
- header,
11
- align = "left",
12
- className,
13
- ...rest
14
- }) => /* @__PURE__ */ jsxRuntime.jsxs(
15
- louis.TableHeaderCell,
16
- {
17
- className: clsx.clsx(className, {
18
- [TableHeaderCell_module.default.centeredCell]: align === "center",
19
- [TableHeaderCell_module.default.rightAlignedCell]: align === "right"
20
- }),
21
- ...rest,
22
- children: [
23
- reactTable.flexRender(header.column.columnDef.header, header.getContext()),
24
- header.column.getCanSort() && /* @__PURE__ */ jsxRuntime.jsx(
25
- SortColumnButton,
26
- {
27
- direction: header.column.getIsSorted(),
28
- onSortToggle: header.column.getToggleSortingHandler()
29
- }
30
- )
31
- ]
32
- }
33
- );
34
- const SortColumnButton = ({ direction, onSortToggle }) => /* @__PURE__ */ jsxRuntime.jsx("button", { type: "button", onClick: onSortToggle, className: TableHeaderCell_module.default.headerSortButton, children: /* @__PURE__ */ jsxRuntime.jsx(SortingIcon.SortingIcon, { direction }) });
35
- exports.TableHeaderCell = TableHeaderCell;
4
+ const ProfileMenuContent = require("./harmony98.cjs");
5
+ const ProfileMenuProvider = require("./harmony99.cjs");
6
+ const ProfileMenu = ({ config, children }) => /* @__PURE__ */ jsxRuntime.jsx(ProfileMenuProvider.ProfileMenuProvider, { config, children: /* @__PURE__ */ jsxRuntime.jsx(ProfileMenuContent.ProfileMenuContent, { children }) });
7
+ exports.ProfileMenu = ProfileMenu;
36
8
  //# sourceMappingURL=harmony79.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony79.cjs","sources":["../src/components/Table/components/TableHeaderCell.tsx"],"sourcesContent":["import {\n\tTableHeaderCell as LouisTableHeaderCell,\n\ttype TableHeaderCellProps as LouisTableHeaderCellProps,\n} from '@lokalise/louis'\nimport { type Header, type SortDirection, flexRender } from '@tanstack/react-table'\nimport cx from 'clsx'\nimport { SortingIcon } from './SortingIcon'\nimport styles from './TableHeaderCell.module.css'\n\ntype TableHeaderProps<T> = LouisTableHeaderCellProps & {\n\theader: Header<T, unknown>\n}\n\nexport const TableHeaderCell = <T,>({\n\theader,\n\talign = 'left',\n\tclassName,\n\t...rest\n}: TableHeaderProps<T>) => (\n\t<LouisTableHeaderCell\n\t\tclassName={cx(className, {\n\t\t\t[styles.centeredCell]: align === 'center',\n\t\t\t[styles.rightAlignedCell]: align === 'right',\n\t\t})}\n\t\t{...rest}\n\t>\n\t\t{flexRender(header.column.columnDef.header, header.getContext())}\n\t\t{header.column.getCanSort() && (\n\t\t\t<SortColumnButton\n\t\t\t\tdirection={header.column.getIsSorted()}\n\t\t\t\tonSortToggle={header.column.getToggleSortingHandler()}\n\t\t\t/>\n\t\t)}\n\t</LouisTableHeaderCell>\n)\n\ntype SortColumnButtonProps = {\n\tdirection: SortDirection | false\n\tonSortToggle?: (event: unknown) => void\n}\n\nconst SortColumnButton = ({ direction, onSortToggle }: SortColumnButtonProps) => (\n\t<button type=\"button\" onClick={onSortToggle} className={styles.headerSortButton}>\n\t\t<SortingIcon direction={direction} />\n\t</button>\n)\n"],"names":["jsxs","LouisTableHeaderCell","cx","styles","flexRender","jsx","SortingIcon"],"mappings":";;;;;;;;AAaO,MAAM,kBAAkB,CAAK;AAAA,EACnC;AAAA,EACA,QAAQ;AAAA,EACR;AAAA,EACA,GAAG;AACJ,MACCA,2BAAA;AAAA,EAACC,MAAA;AAAA,EAAA;AAAA,IACA,WAAWC,UAAG,WAAW;AAAA,MACxB,CAACC,uBAAA,QAAO,YAAY,GAAG,UAAU;AAAA,MACjC,CAACA,uBAAA,QAAO,gBAAgB,GAAG,UAAU;AAAA,IAAA,CACrC;AAAA,IACA,GAAG;AAAA,IAEH,UAAA;AAAA,MAAAC,WAAA,WAAW,OAAO,OAAO,UAAU,QAAQ,OAAO,YAAY;AAAA,MAC9D,OAAO,OAAO,WAAA,KACdC,2BAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACA,WAAW,OAAO,OAAO,YAAY;AAAA,UACrC,cAAc,OAAO,OAAO,wBAAwB;AAAA,QAAA;AAAA,MAAA;AAAA,IACrD;AAAA,EAAA;AAEF;AAQD,MAAM,mBAAmB,CAAC,EAAE,WAAW,aAAa,qCAClD,UAAO,EAAA,MAAK,UAAS,SAAS,cAAc,WAAWF,+BAAO,kBAC9D,UAACE,2BAAA,IAAAC,yBAAA,EAAY,UAAsB,CAAA,GACpC;;"}
1
+ {"version":3,"file":"harmony79.cjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/ProfileMenu.tsx"],"sourcesContent":["import { ProfileMenuContent, type ProfileMenuContentProps } from './ProfileMenuContent'\nimport { ProfileMenuProvider } from './ProfileMenuProvider'\nimport type { SidebarProfileMenuConfig } from './types'\n\ntype ProfileMenuProps = {\n\t/** Configuration object containing team and user settings */\n\tconfig: SidebarProfileMenuConfig\n\t/** Render function for the menu content */\n\tchildren: ProfileMenuContentProps['children']\n}\n\n/**\n * A contextual menu component that provides team management functionality.\n * It manages team switching, profile settings, billing options, and upgrade prompts.\n *\n * The component uses a render prop pattern to provide context values to its children,\n * allowing flexible composition of menu items based on user permissions and team status.\n *\n * @example\n * ```tsx\n * <ProfileMenu config={profileMenuConfig}>\n * {({ allowTeamCreation, showBillingButton }) => (\n * <>\n * <TeamSwitch onSwitchTeam={handleTeamSwitch} />\n * {allowTeamCreation && <MenuItem>Create new team</MenuItem>}\n * {showBillingButton && <MenuItem href=\"/billing\">Billing</MenuItem>}\n * </>\n * )}\n * </ProfileMenu>\n * ```\n */\nexport const ProfileMenu = ({ config, children }: ProfileMenuProps) => (\n\t<ProfileMenuProvider config={config}>\n\t\t<ProfileMenuContent>{children}</ProfileMenuContent>\n\t</ProfileMenuProvider>\n)\n"],"names":["jsx","ProfileMenuProvider","ProfileMenuContent"],"mappings":";;;;;AA+BO,MAAM,cAAc,CAAC,EAAE,QAAQ,SAAS,MAC7CA,2BAAA,IAAAC,oBAAA,qBAAA,EAAoB,QACpB,UAAAD,2BAAA,IAACE,mBAAoB,oBAAA,EAAA,SAAS,CAAA,EAC/B,CAAA;;"}
@@ -1,36 +1,8 @@
1
- import { jsxs, jsx } from "react/jsx-runtime";
2
- import { TableHeaderCell as TableHeaderCell$1 } from "@lokalise/louis";
3
- import { flexRender } from "@tanstack/react-table";
4
- import { clsx } from "./harmony70.mjs";
5
- import { SortingIcon } from "./harmony91.mjs";
6
- import styles from "./harmony92.mjs";
7
- const TableHeaderCell = ({
8
- header,
9
- align = "left",
10
- className,
11
- ...rest
12
- }) => /* @__PURE__ */ jsxs(
13
- TableHeaderCell$1,
14
- {
15
- className: clsx(className, {
16
- [styles.centeredCell]: align === "center",
17
- [styles.rightAlignedCell]: align === "right"
18
- }),
19
- ...rest,
20
- children: [
21
- flexRender(header.column.columnDef.header, header.getContext()),
22
- header.column.getCanSort() && /* @__PURE__ */ jsx(
23
- SortColumnButton,
24
- {
25
- direction: header.column.getIsSorted(),
26
- onSortToggle: header.column.getToggleSortingHandler()
27
- }
28
- )
29
- ]
30
- }
31
- );
32
- const SortColumnButton = ({ direction, onSortToggle }) => /* @__PURE__ */ jsx("button", { type: "button", onClick: onSortToggle, className: styles.headerSortButton, children: /* @__PURE__ */ jsx(SortingIcon, { direction }) });
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { ProfileMenuContent } from "./harmony98.mjs";
3
+ import { ProfileMenuProvider } from "./harmony99.mjs";
4
+ const ProfileMenu = ({ config, children }) => /* @__PURE__ */ jsx(ProfileMenuProvider, { config, children: /* @__PURE__ */ jsx(ProfileMenuContent, { children }) });
33
5
  export {
34
- TableHeaderCell
6
+ ProfileMenu
35
7
  };
36
8
  //# sourceMappingURL=harmony79.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony79.mjs","sources":["../src/components/Table/components/TableHeaderCell.tsx"],"sourcesContent":["import {\n\tTableHeaderCell as LouisTableHeaderCell,\n\ttype TableHeaderCellProps as LouisTableHeaderCellProps,\n} from '@lokalise/louis'\nimport { type Header, type SortDirection, flexRender } from '@tanstack/react-table'\nimport cx from 'clsx'\nimport { SortingIcon } from './SortingIcon'\nimport styles from './TableHeaderCell.module.css'\n\ntype TableHeaderProps<T> = LouisTableHeaderCellProps & {\n\theader: Header<T, unknown>\n}\n\nexport const TableHeaderCell = <T,>({\n\theader,\n\talign = 'left',\n\tclassName,\n\t...rest\n}: TableHeaderProps<T>) => (\n\t<LouisTableHeaderCell\n\t\tclassName={cx(className, {\n\t\t\t[styles.centeredCell]: align === 'center',\n\t\t\t[styles.rightAlignedCell]: align === 'right',\n\t\t})}\n\t\t{...rest}\n\t>\n\t\t{flexRender(header.column.columnDef.header, header.getContext())}\n\t\t{header.column.getCanSort() && (\n\t\t\t<SortColumnButton\n\t\t\t\tdirection={header.column.getIsSorted()}\n\t\t\t\tonSortToggle={header.column.getToggleSortingHandler()}\n\t\t\t/>\n\t\t)}\n\t</LouisTableHeaderCell>\n)\n\ntype SortColumnButtonProps = {\n\tdirection: SortDirection | false\n\tonSortToggle?: (event: unknown) => void\n}\n\nconst SortColumnButton = ({ direction, onSortToggle }: SortColumnButtonProps) => (\n\t<button type=\"button\" onClick={onSortToggle} className={styles.headerSortButton}>\n\t\t<SortingIcon direction={direction} />\n\t</button>\n)\n"],"names":["LouisTableHeaderCell","cx"],"mappings":";;;;;;AAaO,MAAM,kBAAkB,CAAK;AAAA,EACnC;AAAA,EACA,QAAQ;AAAA,EACR;AAAA,EACA,GAAG;AACJ,MACC;AAAA,EAACA;AAAAA,EAAA;AAAA,IACA,WAAWC,KAAG,WAAW;AAAA,MACxB,CAAC,OAAO,YAAY,GAAG,UAAU;AAAA,MACjC,CAAC,OAAO,gBAAgB,GAAG,UAAU;AAAA,IAAA,CACrC;AAAA,IACA,GAAG;AAAA,IAEH,UAAA;AAAA,MAAA,WAAW,OAAO,OAAO,UAAU,QAAQ,OAAO,YAAY;AAAA,MAC9D,OAAO,OAAO,WAAA,KACd;AAAA,QAAC;AAAA,QAAA;AAAA,UACA,WAAW,OAAO,OAAO,YAAY;AAAA,UACrC,cAAc,OAAO,OAAO,wBAAwB;AAAA,QAAA;AAAA,MAAA;AAAA,IACrD;AAAA,EAAA;AAEF;AAQD,MAAM,mBAAmB,CAAC,EAAE,WAAW,aAAa,0BAClD,UAAO,EAAA,MAAK,UAAS,SAAS,cAAc,WAAW,OAAO,kBAC9D,UAAC,oBAAA,aAAA,EAAY,UAAsB,CAAA,GACpC;"}
1
+ {"version":3,"file":"harmony79.mjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/ProfileMenu.tsx"],"sourcesContent":["import { ProfileMenuContent, type ProfileMenuContentProps } from './ProfileMenuContent'\nimport { ProfileMenuProvider } from './ProfileMenuProvider'\nimport type { SidebarProfileMenuConfig } from './types'\n\ntype ProfileMenuProps = {\n\t/** Configuration object containing team and user settings */\n\tconfig: SidebarProfileMenuConfig\n\t/** Render function for the menu content */\n\tchildren: ProfileMenuContentProps['children']\n}\n\n/**\n * A contextual menu component that provides team management functionality.\n * It manages team switching, profile settings, billing options, and upgrade prompts.\n *\n * The component uses a render prop pattern to provide context values to its children,\n * allowing flexible composition of menu items based on user permissions and team status.\n *\n * @example\n * ```tsx\n * <ProfileMenu config={profileMenuConfig}>\n * {({ allowTeamCreation, showBillingButton }) => (\n * <>\n * <TeamSwitch onSwitchTeam={handleTeamSwitch} />\n * {allowTeamCreation && <MenuItem>Create new team</MenuItem>}\n * {showBillingButton && <MenuItem href=\"/billing\">Billing</MenuItem>}\n * </>\n * )}\n * </ProfileMenu>\n * ```\n */\nexport const ProfileMenu = ({ config, children }: ProfileMenuProps) => (\n\t<ProfileMenuProvider config={config}>\n\t\t<ProfileMenuContent>{children}</ProfileMenuContent>\n\t</ProfileMenuProvider>\n)\n"],"names":[],"mappings":";;;AA+BO,MAAM,cAAc,CAAC,EAAE,QAAQ,SAAS,MAC7C,oBAAA,qBAAA,EAAoB,QACpB,UAAA,oBAAC,oBAAoB,EAAA,SAAS,CAAA,EAC/B,CAAA;"}
package/dist/harmony8.cjs CHANGED
@@ -1,33 +1,62 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const FREE_PLAN_ID = 0;
4
- const TRIAL_PLAN_ID = 9999;
5
- const START_PLAN_IDS = [150, 151, 250, 251];
6
- const ESSENTIAL_PLAN_IDS = [152, 153, 252, 253];
7
- const PRO_PLAN_IDS = [154, 155, 157, 158, 254, 255, 258, 354, 355, 358];
8
- const ENTERPRISE_PLAN_IDS = [156, 159, 160, 256, 259, 260];
9
- const ENTERPRISE_OPENSOURCE_PLAN_ID = 9998;
10
- const isFreePlan = (planId) => planId === FREE_PLAN_ID;
11
- const isTrialPlan = (planId) => planId === TRIAL_PLAN_ID;
12
- const isStartPlan = (planId) => START_PLAN_IDS.includes(planId);
13
- const isEssentialPlan = (planId) => ESSENTIAL_PLAN_IDS.includes(planId);
14
- const isProPlan = (planId) => PRO_PLAN_IDS.includes(planId);
15
- const isEnterprisePlan = (planId) => ENTERPRISE_PLAN_IDS.includes(planId);
16
- const isPaidPlan = (planId) => planId > FREE_PLAN_ID && planId < ENTERPRISE_OPENSOURCE_PLAN_ID;
17
- const isEnterpriseOpenSourcePlan = (planId) => planId === ENTERPRISE_OPENSOURCE_PLAN_ID;
18
- exports.ENTERPRISE_OPENSOURCE_PLAN_ID = ENTERPRISE_OPENSOURCE_PLAN_ID;
19
- exports.ENTERPRISE_PLAN_IDS = ENTERPRISE_PLAN_IDS;
20
- exports.ESSENTIAL_PLAN_IDS = ESSENTIAL_PLAN_IDS;
21
- exports.FREE_PLAN_ID = FREE_PLAN_ID;
22
- exports.PRO_PLAN_IDS = PRO_PLAN_IDS;
23
- exports.START_PLAN_IDS = START_PLAN_IDS;
24
- exports.TRIAL_PLAN_ID = TRIAL_PLAN_ID;
25
- exports.isEnterpriseOpenSourcePlan = isEnterpriseOpenSourcePlan;
26
- exports.isEnterprisePlan = isEnterprisePlan;
27
- exports.isEssentialPlan = isEssentialPlan;
28
- exports.isFreePlan = isFreePlan;
29
- exports.isPaidPlan = isPaidPlan;
30
- exports.isProPlan = isProPlan;
31
- exports.isStartPlan = isStartPlan;
32
- exports.isTrialPlan = isTrialPlan;
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const NavigationPanel = require("./harmony3.cjs");
5
+ const Breadcrumbs = require("./harmony5.cjs");
6
+ const NavigationTabs = require("./harmony6.cjs");
7
+ const NavigationClient = require("./harmony90.cjs");
8
+ const useNavigation = require("./harmony91.cjs");
9
+ const useNavigationQueries = require("./harmony92.cjs");
10
+ const NavigationClientProvider = require("./harmony93.cjs");
11
+ const reactQuery = require("@tanstack/react-query");
12
+ const React = require("react");
13
+ const queryClient = require("./harmony94.cjs");
14
+ const ProjectNavigationPanelInner = ({
15
+ page,
16
+ projectId
17
+ }) => {
18
+ const {
19
+ data: { project, contributor },
20
+ isLoading,
21
+ error
22
+ } = useNavigationQueries.useNavigationData(projectId);
23
+ const navigationItems = useNavigation.useNavigation(page, project, contributor);
24
+ if (isLoading) {
25
+ return (
26
+ // TODO: replace with loading state
27
+ /* @__PURE__ */ jsxRuntime.jsxs(NavigationPanel.NavigationPanel, { children: [
28
+ /* @__PURE__ */ jsxRuntime.jsx(NavigationPanel.NavigationPanel.Header, { children: /* @__PURE__ */ jsxRuntime.jsx("div", { children: "Loading navigation..." }) }),
29
+ /* @__PURE__ */ jsxRuntime.jsx(NavigationPanel.NavigationPanel.Tabs, { children: /* @__PURE__ */ jsxRuntime.jsx("div", { children: "Loading..." }) })
30
+ ] })
31
+ );
32
+ }
33
+ if (error) {
34
+ return (
35
+ // TODO: replace with error state
36
+ /* @__PURE__ */ jsxRuntime.jsxs(NavigationPanel.NavigationPanel, { children: [
37
+ /* @__PURE__ */ jsxRuntime.jsx(NavigationPanel.NavigationPanel.Header, { children: /* @__PURE__ */ jsxRuntime.jsx("div", { children: "Error loading navigation" }) }),
38
+ /* @__PURE__ */ jsxRuntime.jsx(NavigationPanel.NavigationPanel.Tabs, { children: /* @__PURE__ */ jsxRuntime.jsx("div", { children: "Failed to load navigation data" }) })
39
+ ] })
40
+ );
41
+ }
42
+ const breadcrumbsItems = [
43
+ {
44
+ name: "Projects",
45
+ link: "/projects"
46
+ },
47
+ {
48
+ name: (project == null ? void 0 : project.name) || "Project",
49
+ link: `/project/${project == null ? void 0 : project.uuid}/`
50
+ }
51
+ ];
52
+ return /* @__PURE__ */ jsxRuntime.jsxs(NavigationPanel.NavigationPanel, { children: [
53
+ /* @__PURE__ */ jsxRuntime.jsx(NavigationPanel.NavigationPanel.Header, { children: /* @__PURE__ */ jsxRuntime.jsx(Breadcrumbs.Breadcrumbs, { items: breadcrumbsItems }) }),
54
+ /* @__PURE__ */ jsxRuntime.jsx(NavigationPanel.NavigationPanel.Tabs, { children: /* @__PURE__ */ jsxRuntime.jsx(NavigationTabs.NavigationTabs, { navigation: navigationItems, activeItem: page }) })
55
+ ] });
56
+ };
57
+ const ProjectNavigationPanel = ({ config, ...props }) => {
58
+ const navigationClient = React.useMemo(() => new NavigationClient.NavigationClient(config), [config]);
59
+ return /* @__PURE__ */ jsxRuntime.jsx(reactQuery.QueryClientProvider, { client: queryClient.queryClient, children: /* @__PURE__ */ jsxRuntime.jsx(NavigationClientProvider.NavigationClientProvider, { client: navigationClient, children: /* @__PURE__ */ jsxRuntime.jsx(ProjectNavigationPanelInner, { ...props }) }) });
60
+ };
61
+ exports.ProjectNavigationPanel = ProjectNavigationPanel;
33
62
  //# sourceMappingURL=harmony8.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony8.cjs","sources":["../src/utils/billing/plan/plan.ts"],"sourcesContent":["export const FREE_PLAN_ID = 0\nexport const TRIAL_PLAN_ID = 9999\nexport const START_PLAN_IDS = [150, 151, 250, 251]\nexport const ESSENTIAL_PLAN_IDS = [152, 153, 252, 253]\nexport const PRO_PLAN_IDS = [154, 155, 157, 158, 254, 255, 258, 354, 355, 358]\nexport const ENTERPRISE_PLAN_IDS = [156, 159, 160, 256, 259, 260]\nexport const ENTERPRISE_OPENSOURCE_PLAN_ID = 9998\n\nexport const isFreePlan = (planId: number) => planId === FREE_PLAN_ID\nexport const isTrialPlan = (planId: number) => planId === TRIAL_PLAN_ID\nexport const isStartPlan = (planId: number) => START_PLAN_IDS.includes(planId)\nexport const isEssentialPlan = (planId: number) => ESSENTIAL_PLAN_IDS.includes(planId)\nexport const isProPlan = (planId: number) => PRO_PLAN_IDS.includes(planId)\n// Enterprise open-source is NOT treated as real Enterprise plan anymore. It's a legacy now.\nexport const isEnterprisePlan = (planId: number) => ENTERPRISE_PLAN_IDS.includes(planId)\nexport const isPaidPlan = (planId: number) =>\n\tplanId > FREE_PLAN_ID && planId < ENTERPRISE_OPENSOURCE_PLAN_ID\nexport const isEnterpriseOpenSourcePlan = (planId: number) =>\n\tplanId === ENTERPRISE_OPENSOURCE_PLAN_ID\n"],"names":[],"mappings":";;AAAO,MAAM,eAAe;AACrB,MAAM,gBAAgB;AACtB,MAAM,iBAAiB,CAAC,KAAK,KAAK,KAAK,GAAG;AAC1C,MAAM,qBAAqB,CAAC,KAAK,KAAK,KAAK,GAAG;AACxC,MAAA,eAAe,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,GAAG;AACtE,MAAM,sBAAsB,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,GAAG;AACzD,MAAM,gCAAgC;AAEhC,MAAA,aAAa,CAAC,WAAmB,WAAW;AAC5C,MAAA,cAAc,CAAC,WAAmB,WAAW;AACnD,MAAM,cAAc,CAAC,WAAmB,eAAe,SAAS,MAAM;AACtE,MAAM,kBAAkB,CAAC,WAAmB,mBAAmB,SAAS,MAAM;AAC9E,MAAM,YAAY,CAAC,WAAmB,aAAa,SAAS,MAAM;AAElE,MAAM,mBAAmB,CAAC,WAAmB,oBAAoB,SAAS,MAAM;AAChF,MAAM,aAAa,CAAC,WAC1B,SAAS,gBAAgB,SAAS;AACtB,MAAA,6BAA6B,CAAC,WAC1C,WAAW;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"harmony8.cjs","sources":["../src/features/navigation/ProjectNavigationPanel.tsx"],"sourcesContent":["import { NavigationPanel } from '@components/NavigationPanel/NavigationPanel'\nimport { Breadcrumbs } from '@components/NavigationPanel/components/Breadcrumbs/Breadcrumbs'\nimport { NavigationTabs } from '@components/NavigationPanel/components/NavigationTabs/NavigationTabs'\nimport { NavigationClient, type NavigationConfig } from '@features/navigation/core/NavigationClient'\nimport { useNavigation } from '@features/navigation/hooks/useNavigation'\nimport { useNavigationData } from '@features/navigation/hooks/useNavigationQueries'\nimport { NavigationClientProvider } from '@features/navigation/providers/NavigationClientProvider'\nimport type { Project } from '@features/node'\nimport { QueryClientProvider } from '@tanstack/react-query'\nimport { useMemo } from 'react'\nimport { queryClient } from '../../shared/queryClient'\nimport type { Page } from './types/navigation'\n\nexport interface ProjectNavigationPanelProps {\n\tprojectId: Project['project_id']\n\tpage: Page\n\tconfig: NavigationConfig\n}\n\nconst ProjectNavigationPanelInner = ({\n\tpage,\n\tprojectId,\n}: Omit<ProjectNavigationPanelProps, 'config'>) => {\n\tconst {\n\t\tdata: { project, contributor },\n\t\tisLoading,\n\t\terror,\n\t} = useNavigationData(projectId)\n\n\tconst navigationItems = useNavigation(page, project, contributor)\n\n\tif (isLoading) {\n\t\treturn (\n\t\t\t// TODO: replace with loading state\n\t\t\t<NavigationPanel>\n\t\t\t\t<NavigationPanel.Header>\n\t\t\t\t\t<div>Loading navigation...</div>\n\t\t\t\t</NavigationPanel.Header>\n\t\t\t\t<NavigationPanel.Tabs>\n\t\t\t\t\t<div>Loading...</div>\n\t\t\t\t</NavigationPanel.Tabs>\n\t\t\t</NavigationPanel>\n\t\t)\n\t}\n\n\tif (error) {\n\t\treturn (\n\t\t\t// TODO: replace with error state\n\t\t\t<NavigationPanel>\n\t\t\t\t<NavigationPanel.Header>\n\t\t\t\t\t<div>Error loading navigation</div>\n\t\t\t\t</NavigationPanel.Header>\n\t\t\t\t<NavigationPanel.Tabs>\n\t\t\t\t\t<div>Failed to load navigation data</div>\n\t\t\t\t</NavigationPanel.Tabs>\n\t\t\t</NavigationPanel>\n\t\t)\n\t}\n\n\tconst breadcrumbsItems = [\n\t\t{\n\t\t\tname: 'Projects',\n\t\t\tlink: '/projects',\n\t\t},\n\t\t{\n\t\t\tname: project?.name || 'Project',\n\t\t\tlink: `/project/${project?.uuid}/`,\n\t\t},\n\t]\n\n\treturn (\n\t\t<NavigationPanel>\n\t\t\t<NavigationPanel.Header>\n\t\t\t\t<Breadcrumbs items={breadcrumbsItems} />\n\t\t\t\t{/* TODO: Add branch selector */}\n\t\t\t</NavigationPanel.Header>\n\n\t\t\t<NavigationPanel.Tabs>\n\t\t\t\t<NavigationTabs navigation={navigationItems} activeItem={page} />\n\t\t\t</NavigationPanel.Tabs>\n\t\t</NavigationPanel>\n\t)\n}\n\n/**\n * Complete self-contained ProjectNavigationPanel with all providers included.\n * No external setup required - just pass config and use.\n */\nexport const ProjectNavigationPanel = ({ config, ...props }: ProjectNavigationPanelProps) => {\n\t// Create stable instances\n\n\tconst navigationClient = useMemo(() => new NavigationClient(config), [config])\n\n\treturn (\n\t\t<QueryClientProvider client={queryClient}>\n\t\t\t<NavigationClientProvider client={navigationClient}>\n\t\t\t\t<ProjectNavigationPanelInner {...props} />\n\t\t\t</NavigationClientProvider>\n\t\t</QueryClientProvider>\n\t)\n}\n"],"names":["useNavigationData","useNavigation","NavigationPanel","jsx","Breadcrumbs","NavigationTabs","useMemo","NavigationClient","QueryClientProvider","queryClient","NavigationClientProvider"],"mappings":";;;;;;;;;;;;;AAmBA,MAAM,8BAA8B,CAAC;AAAA,EACpC;AAAA,EACA;AACD,MAAmD;AAC5C,QAAA;AAAA,IACL,MAAM,EAAE,SAAS,YAAY;AAAA,IAC7B;AAAA,IACA;AAAA,EAAA,IACGA,qBAAAA,kBAAkB,SAAS;AAE/B,QAAM,kBAAkBC,cAAA,cAAc,MAAM,SAAS,WAAW;AAEhE,MAAI,WAAW;AACd;AAAA;AAAA,sCAEEC,gBAAAA,iBACA,EAAA,UAAA;AAAA,QAAAC,2BAAAA,IAACD,gCAAgB,QAAhB,EACA,UAACC,2BAAAA,IAAA,OAAA,EAAI,kCAAqB,CAAA,GAC3B;AAAA,uCACCD,gBAAAA,gBAAgB,MAAhB,EACA,UAACC,+BAAA,OAAA,EAAI,wBAAU,EAChB,CAAA;AAAA,MAAA,EACD,CAAA;AAAA;AAAA,EAAA;AAIF,MAAI,OAAO;AACV;AAAA;AAAA,sCAEED,gBAAAA,iBACA,EAAA,UAAA;AAAA,QAAAC,2BAAAA,IAACD,gCAAgB,QAAhB,EACA,UAACC,2BAAAA,IAAA,OAAA,EAAI,qCAAwB,CAAA,GAC9B;AAAA,uCACCD,gBAAAA,gBAAgB,MAAhB,EACA,UAACC,+BAAA,OAAA,EAAI,4CAA8B,EACpC,CAAA;AAAA,MAAA,EACD,CAAA;AAAA;AAAA,EAAA;AAIF,QAAM,mBAAmB;AAAA,IACxB;AAAA,MACC,MAAM;AAAA,MACN,MAAM;AAAA,IACP;AAAA,IACA;AAAA,MACC,OAAM,mCAAS,SAAQ;AAAA,MACvB,MAAM,YAAY,mCAAS,IAAI;AAAA,IAAA;AAAA,EAEjC;AAEA,yCACED,iCACA,EAAA,UAAA;AAAA,IAAAC,2BAAAA,IAACD,gCAAgB,QAAhB,EACA,yCAACE,YAAY,aAAA,EAAA,OAAO,iBAAkB,CAAA,GAEvC;AAAA,IAEAD,2BAAAA,IAACD,gBAAgB,gBAAA,MAAhB,EACA,UAAAC,2BAAA,IAACE,iCAAe,YAAY,iBAAiB,YAAY,KAAM,CAAA,EAChE,CAAA;AAAA,EAAA,GACD;AAEF;AAMO,MAAM,yBAAyB,CAAC,EAAE,QAAQ,GAAG,YAAyC;AAGtF,QAAA,mBAAmBC,MAAAA,QAAQ,MAAM,IAAIC,kCAAiB,MAAM,GAAG,CAAC,MAAM,CAAC;AAE7E,SACEJ,2BAAAA,IAAAK,WAAAA,qBAAA,EAAoB,QAAQC,YAAAA,aAC5B,UAACN,2BAAA,IAAAO,mDAAA,EAAyB,QAAQ,kBACjC,UAACP,2BAAAA,IAAA,6BAAA,EAA6B,GAAG,MAAO,CAAA,EACzC,CAAA,GACD;AAEF;;"}
package/dist/harmony8.mjs CHANGED
@@ -1,33 +1,62 @@
1
- const FREE_PLAN_ID = 0;
2
- const TRIAL_PLAN_ID = 9999;
3
- const START_PLAN_IDS = [150, 151, 250, 251];
4
- const ESSENTIAL_PLAN_IDS = [152, 153, 252, 253];
5
- const PRO_PLAN_IDS = [154, 155, 157, 158, 254, 255, 258, 354, 355, 358];
6
- const ENTERPRISE_PLAN_IDS = [156, 159, 160, 256, 259, 260];
7
- const ENTERPRISE_OPENSOURCE_PLAN_ID = 9998;
8
- const isFreePlan = (planId) => planId === FREE_PLAN_ID;
9
- const isTrialPlan = (planId) => planId === TRIAL_PLAN_ID;
10
- const isStartPlan = (planId) => START_PLAN_IDS.includes(planId);
11
- const isEssentialPlan = (planId) => ESSENTIAL_PLAN_IDS.includes(planId);
12
- const isProPlan = (planId) => PRO_PLAN_IDS.includes(planId);
13
- const isEnterprisePlan = (planId) => ENTERPRISE_PLAN_IDS.includes(planId);
14
- const isPaidPlan = (planId) => planId > FREE_PLAN_ID && planId < ENTERPRISE_OPENSOURCE_PLAN_ID;
15
- const isEnterpriseOpenSourcePlan = (planId) => planId === ENTERPRISE_OPENSOURCE_PLAN_ID;
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { NavigationPanel } from "./harmony3.mjs";
3
+ import { Breadcrumbs } from "./harmony5.mjs";
4
+ import { NavigationTabs } from "./harmony6.mjs";
5
+ import { NavigationClient } from "./harmony90.mjs";
6
+ import { useNavigation } from "./harmony91.mjs";
7
+ import { useNavigationData } from "./harmony92.mjs";
8
+ import { NavigationClientProvider } from "./harmony93.mjs";
9
+ import { QueryClientProvider } from "@tanstack/react-query";
10
+ import { useMemo } from "react";
11
+ import { queryClient } from "./harmony94.mjs";
12
+ const ProjectNavigationPanelInner = ({
13
+ page,
14
+ projectId
15
+ }) => {
16
+ const {
17
+ data: { project, contributor },
18
+ isLoading,
19
+ error
20
+ } = useNavigationData(projectId);
21
+ const navigationItems = useNavigation(page, project, contributor);
22
+ if (isLoading) {
23
+ return (
24
+ // TODO: replace with loading state
25
+ /* @__PURE__ */ jsxs(NavigationPanel, { children: [
26
+ /* @__PURE__ */ jsx(NavigationPanel.Header, { children: /* @__PURE__ */ jsx("div", { children: "Loading navigation..." }) }),
27
+ /* @__PURE__ */ jsx(NavigationPanel.Tabs, { children: /* @__PURE__ */ jsx("div", { children: "Loading..." }) })
28
+ ] })
29
+ );
30
+ }
31
+ if (error) {
32
+ return (
33
+ // TODO: replace with error state
34
+ /* @__PURE__ */ jsxs(NavigationPanel, { children: [
35
+ /* @__PURE__ */ jsx(NavigationPanel.Header, { children: /* @__PURE__ */ jsx("div", { children: "Error loading navigation" }) }),
36
+ /* @__PURE__ */ jsx(NavigationPanel.Tabs, { children: /* @__PURE__ */ jsx("div", { children: "Failed to load navigation data" }) })
37
+ ] })
38
+ );
39
+ }
40
+ const breadcrumbsItems = [
41
+ {
42
+ name: "Projects",
43
+ link: "/projects"
44
+ },
45
+ {
46
+ name: (project == null ? void 0 : project.name) || "Project",
47
+ link: `/project/${project == null ? void 0 : project.uuid}/`
48
+ }
49
+ ];
50
+ return /* @__PURE__ */ jsxs(NavigationPanel, { children: [
51
+ /* @__PURE__ */ jsx(NavigationPanel.Header, { children: /* @__PURE__ */ jsx(Breadcrumbs, { items: breadcrumbsItems }) }),
52
+ /* @__PURE__ */ jsx(NavigationPanel.Tabs, { children: /* @__PURE__ */ jsx(NavigationTabs, { navigation: navigationItems, activeItem: page }) })
53
+ ] });
54
+ };
55
+ const ProjectNavigationPanel = ({ config, ...props }) => {
56
+ const navigationClient = useMemo(() => new NavigationClient(config), [config]);
57
+ return /* @__PURE__ */ jsx(QueryClientProvider, { client: queryClient, children: /* @__PURE__ */ jsx(NavigationClientProvider, { client: navigationClient, children: /* @__PURE__ */ jsx(ProjectNavigationPanelInner, { ...props }) }) });
58
+ };
16
59
  export {
17
- ENTERPRISE_OPENSOURCE_PLAN_ID,
18
- ENTERPRISE_PLAN_IDS,
19
- ESSENTIAL_PLAN_IDS,
20
- FREE_PLAN_ID,
21
- PRO_PLAN_IDS,
22
- START_PLAN_IDS,
23
- TRIAL_PLAN_ID,
24
- isEnterpriseOpenSourcePlan,
25
- isEnterprisePlan,
26
- isEssentialPlan,
27
- isFreePlan,
28
- isPaidPlan,
29
- isProPlan,
30
- isStartPlan,
31
- isTrialPlan
60
+ ProjectNavigationPanel
32
61
  };
33
62
  //# sourceMappingURL=harmony8.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony8.mjs","sources":["../src/utils/billing/plan/plan.ts"],"sourcesContent":["export const FREE_PLAN_ID = 0\nexport const TRIAL_PLAN_ID = 9999\nexport const START_PLAN_IDS = [150, 151, 250, 251]\nexport const ESSENTIAL_PLAN_IDS = [152, 153, 252, 253]\nexport const PRO_PLAN_IDS = [154, 155, 157, 158, 254, 255, 258, 354, 355, 358]\nexport const ENTERPRISE_PLAN_IDS = [156, 159, 160, 256, 259, 260]\nexport const ENTERPRISE_OPENSOURCE_PLAN_ID = 9998\n\nexport const isFreePlan = (planId: number) => planId === FREE_PLAN_ID\nexport const isTrialPlan = (planId: number) => planId === TRIAL_PLAN_ID\nexport const isStartPlan = (planId: number) => START_PLAN_IDS.includes(planId)\nexport const isEssentialPlan = (planId: number) => ESSENTIAL_PLAN_IDS.includes(planId)\nexport const isProPlan = (planId: number) => PRO_PLAN_IDS.includes(planId)\n// Enterprise open-source is NOT treated as real Enterprise plan anymore. It's a legacy now.\nexport const isEnterprisePlan = (planId: number) => ENTERPRISE_PLAN_IDS.includes(planId)\nexport const isPaidPlan = (planId: number) =>\n\tplanId > FREE_PLAN_ID && planId < ENTERPRISE_OPENSOURCE_PLAN_ID\nexport const isEnterpriseOpenSourcePlan = (planId: number) =>\n\tplanId === ENTERPRISE_OPENSOURCE_PLAN_ID\n"],"names":[],"mappings":"AAAO,MAAM,eAAe;AACrB,MAAM,gBAAgB;AACtB,MAAM,iBAAiB,CAAC,KAAK,KAAK,KAAK,GAAG;AAC1C,MAAM,qBAAqB,CAAC,KAAK,KAAK,KAAK,GAAG;AACxC,MAAA,eAAe,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,GAAG;AACtE,MAAM,sBAAsB,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,GAAG;AACzD,MAAM,gCAAgC;AAEhC,MAAA,aAAa,CAAC,WAAmB,WAAW;AAC5C,MAAA,cAAc,CAAC,WAAmB,WAAW;AACnD,MAAM,cAAc,CAAC,WAAmB,eAAe,SAAS,MAAM;AACtE,MAAM,kBAAkB,CAAC,WAAmB,mBAAmB,SAAS,MAAM;AAC9E,MAAM,YAAY,CAAC,WAAmB,aAAa,SAAS,MAAM;AAElE,MAAM,mBAAmB,CAAC,WAAmB,oBAAoB,SAAS,MAAM;AAChF,MAAM,aAAa,CAAC,WAC1B,SAAS,gBAAgB,SAAS;AACtB,MAAA,6BAA6B,CAAC,WAC1C,WAAW;"}
1
+ {"version":3,"file":"harmony8.mjs","sources":["../src/features/navigation/ProjectNavigationPanel.tsx"],"sourcesContent":["import { NavigationPanel } from '@components/NavigationPanel/NavigationPanel'\nimport { Breadcrumbs } from '@components/NavigationPanel/components/Breadcrumbs/Breadcrumbs'\nimport { NavigationTabs } from '@components/NavigationPanel/components/NavigationTabs/NavigationTabs'\nimport { NavigationClient, type NavigationConfig } from '@features/navigation/core/NavigationClient'\nimport { useNavigation } from '@features/navigation/hooks/useNavigation'\nimport { useNavigationData } from '@features/navigation/hooks/useNavigationQueries'\nimport { NavigationClientProvider } from '@features/navigation/providers/NavigationClientProvider'\nimport type { Project } from '@features/node'\nimport { QueryClientProvider } from '@tanstack/react-query'\nimport { useMemo } from 'react'\nimport { queryClient } from '../../shared/queryClient'\nimport type { Page } from './types/navigation'\n\nexport interface ProjectNavigationPanelProps {\n\tprojectId: Project['project_id']\n\tpage: Page\n\tconfig: NavigationConfig\n}\n\nconst ProjectNavigationPanelInner = ({\n\tpage,\n\tprojectId,\n}: Omit<ProjectNavigationPanelProps, 'config'>) => {\n\tconst {\n\t\tdata: { project, contributor },\n\t\tisLoading,\n\t\terror,\n\t} = useNavigationData(projectId)\n\n\tconst navigationItems = useNavigation(page, project, contributor)\n\n\tif (isLoading) {\n\t\treturn (\n\t\t\t// TODO: replace with loading state\n\t\t\t<NavigationPanel>\n\t\t\t\t<NavigationPanel.Header>\n\t\t\t\t\t<div>Loading navigation...</div>\n\t\t\t\t</NavigationPanel.Header>\n\t\t\t\t<NavigationPanel.Tabs>\n\t\t\t\t\t<div>Loading...</div>\n\t\t\t\t</NavigationPanel.Tabs>\n\t\t\t</NavigationPanel>\n\t\t)\n\t}\n\n\tif (error) {\n\t\treturn (\n\t\t\t// TODO: replace with error state\n\t\t\t<NavigationPanel>\n\t\t\t\t<NavigationPanel.Header>\n\t\t\t\t\t<div>Error loading navigation</div>\n\t\t\t\t</NavigationPanel.Header>\n\t\t\t\t<NavigationPanel.Tabs>\n\t\t\t\t\t<div>Failed to load navigation data</div>\n\t\t\t\t</NavigationPanel.Tabs>\n\t\t\t</NavigationPanel>\n\t\t)\n\t}\n\n\tconst breadcrumbsItems = [\n\t\t{\n\t\t\tname: 'Projects',\n\t\t\tlink: '/projects',\n\t\t},\n\t\t{\n\t\t\tname: project?.name || 'Project',\n\t\t\tlink: `/project/${project?.uuid}/`,\n\t\t},\n\t]\n\n\treturn (\n\t\t<NavigationPanel>\n\t\t\t<NavigationPanel.Header>\n\t\t\t\t<Breadcrumbs items={breadcrumbsItems} />\n\t\t\t\t{/* TODO: Add branch selector */}\n\t\t\t</NavigationPanel.Header>\n\n\t\t\t<NavigationPanel.Tabs>\n\t\t\t\t<NavigationTabs navigation={navigationItems} activeItem={page} />\n\t\t\t</NavigationPanel.Tabs>\n\t\t</NavigationPanel>\n\t)\n}\n\n/**\n * Complete self-contained ProjectNavigationPanel with all providers included.\n * No external setup required - just pass config and use.\n */\nexport const ProjectNavigationPanel = ({ config, ...props }: ProjectNavigationPanelProps) => {\n\t// Create stable instances\n\n\tconst navigationClient = useMemo(() => new NavigationClient(config), [config])\n\n\treturn (\n\t\t<QueryClientProvider client={queryClient}>\n\t\t\t<NavigationClientProvider client={navigationClient}>\n\t\t\t\t<ProjectNavigationPanelInner {...props} />\n\t\t\t</NavigationClientProvider>\n\t\t</QueryClientProvider>\n\t)\n}\n"],"names":[],"mappings":";;;;;;;;;;;AAmBA,MAAM,8BAA8B,CAAC;AAAA,EACpC;AAAA,EACA;AACD,MAAmD;AAC5C,QAAA;AAAA,IACL,MAAM,EAAE,SAAS,YAAY;AAAA,IAC7B;AAAA,IACA;AAAA,EAAA,IACG,kBAAkB,SAAS;AAE/B,QAAM,kBAAkB,cAAc,MAAM,SAAS,WAAW;AAEhE,MAAI,WAAW;AACd;AAAA;AAAA,2BAEE,iBACA,EAAA,UAAA;AAAA,QAAA,oBAAC,gBAAgB,QAAhB,EACA,UAAC,oBAAA,OAAA,EAAI,kCAAqB,CAAA,GAC3B;AAAA,4BACC,gBAAgB,MAAhB,EACA,UAAC,oBAAA,OAAA,EAAI,wBAAU,EAChB,CAAA;AAAA,MAAA,EACD,CAAA;AAAA;AAAA,EAAA;AAIF,MAAI,OAAO;AACV;AAAA;AAAA,2BAEE,iBACA,EAAA,UAAA;AAAA,QAAA,oBAAC,gBAAgB,QAAhB,EACA,UAAC,oBAAA,OAAA,EAAI,qCAAwB,CAAA,GAC9B;AAAA,4BACC,gBAAgB,MAAhB,EACA,UAAC,oBAAA,OAAA,EAAI,4CAA8B,EACpC,CAAA;AAAA,MAAA,EACD,CAAA;AAAA;AAAA,EAAA;AAIF,QAAM,mBAAmB;AAAA,IACxB;AAAA,MACC,MAAM;AAAA,MACN,MAAM;AAAA,IACP;AAAA,IACA;AAAA,MACC,OAAM,mCAAS,SAAQ;AAAA,MACvB,MAAM,YAAY,mCAAS,IAAI;AAAA,IAAA;AAAA,EAEjC;AAEA,8BACE,iBACA,EAAA,UAAA;AAAA,IAAA,oBAAC,gBAAgB,QAAhB,EACA,8BAAC,aAAY,EAAA,OAAO,iBAAkB,CAAA,GAEvC;AAAA,IAEA,oBAAC,gBAAgB,MAAhB,EACA,UAAA,oBAAC,kBAAe,YAAY,iBAAiB,YAAY,KAAM,CAAA,EAChE,CAAA;AAAA,EAAA,GACD;AAEF;AAMO,MAAM,yBAAyB,CAAC,EAAE,QAAQ,GAAG,YAAyC;AAGtF,QAAA,mBAAmB,QAAQ,MAAM,IAAI,iBAAiB,MAAM,GAAG,CAAC,MAAM,CAAC;AAE7E,SACE,oBAAA,qBAAA,EAAoB,QAAQ,aAC5B,UAAC,oBAAA,0BAAA,EAAyB,QAAQ,kBACjC,UAAC,oBAAA,6BAAA,EAA6B,GAAG,MAAO,CAAA,EACzC,CAAA,GACD;AAEF;"}
@@ -1,30 +1,35 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const React = require("react");
4
- const useSidebarDataLoader = (callback) => {
5
- const [result, setResult] = React.useState(null);
6
- const [loading, setLoading] = React.useState(true);
7
- const [error, setError] = React.useState(false);
8
- const loadData = async (args) => {
9
- const result2 = await callback(args);
10
- if (result2) {
11
- setResult(result2);
12
- setLoading(false);
13
- setError(false);
14
- return result2;
15
- }
16
- setError(true);
17
- setLoading(false);
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const louis = require("@lokalise/louis");
5
+ const ProfileMenuContext = require("./harmony100.cjs");
6
+ const ProfileSettingsMenuItem_module = require("./harmony101.cjs");
7
+ const ProfileSettingsMenuItem = ({
8
+ href,
9
+ onClick,
10
+ userEmail,
11
+ hideBottomDivider
12
+ }) => {
13
+ const { isEndOfTrialActive, isTeamSuspended } = ProfileMenuContext.useProfileMenu();
14
+ if (isEndOfTrialActive || isTeamSuspended) {
18
15
  return null;
19
- };
20
- return {
21
- data: {
22
- result,
23
- loading,
24
- error
25
- },
26
- loadData
27
- };
16
+ }
17
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
18
+ /* @__PURE__ */ jsxRuntime.jsx(
19
+ louis.MenuItem,
20
+ {
21
+ href,
22
+ onClick: () => {
23
+ onClick == null ? void 0 : onClick();
24
+ },
25
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `flex-col ${ProfileSettingsMenuItem_module.default.container}`, children: [
26
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: "Profile Settings" }),
27
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: ProfileSettingsMenuItem_module.default.profileEmail, children: userEmail })
28
+ ] })
29
+ }
30
+ ),
31
+ !hideBottomDivider && /* @__PURE__ */ jsxRuntime.jsx(louis.MenuDivider, {})
32
+ ] });
28
33
  };
29
- exports.useSidebarDataLoader = useSidebarDataLoader;
34
+ exports.ProfileSettingsMenuItem = ProfileSettingsMenuItem;
30
35
  //# sourceMappingURL=harmony80.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony80.cjs","sources":["../src/components/Sidebar/hooks/useSidebarDataLoader.ts"],"sourcesContent":["import type { SidebarDataBase } from '@components/Sidebar/types'\nimport { useState } from 'react'\n\nexport const useSidebarDataLoader = <T, A = void>(\n\tcallback: (args: A) => Promise<T | null>,\n): {\n\tdata: SidebarDataBase<T>\n\tloadData: (args: A) => Promise<T | null>\n} => {\n\tconst [result, setResult] = useState<T | null>(null)\n\n\tconst [loading, setLoading] = useState(true)\n\n\tconst [error, setError] = useState(false)\n\n\tconst loadData = async (args: A): Promise<T | null> => {\n\t\tconst result = await callback(args)\n\n\t\tif (result) {\n\t\t\tsetResult(result)\n\t\t\tsetLoading(false)\n\t\t\tsetError(false)\n\n\t\t\treturn result\n\t\t}\n\n\t\tsetError(true)\n\t\tsetLoading(false)\n\t\treturn null\n\t}\n\n\treturn {\n\t\tdata: {\n\t\t\tresult,\n\t\t\tloading,\n\t\t\terror,\n\t\t},\n\t\tloadData,\n\t}\n}\n"],"names":["useState","result"],"mappings":";;;AAGa,MAAA,uBAAuB,CACnC,aAII;AACJ,QAAM,CAAC,QAAQ,SAAS,IAAIA,MAAAA,SAAmB,IAAI;AAEnD,QAAM,CAAC,SAAS,UAAU,IAAIA,MAAAA,SAAS,IAAI;AAE3C,QAAM,CAAC,OAAO,QAAQ,IAAIA,MAAAA,SAAS,KAAK;AAElC,QAAA,WAAW,OAAO,SAA+B;AAChDC,UAAAA,UAAS,MAAM,SAAS,IAAI;AAElC,QAAIA,SAAQ;AACX,gBAAUA,OAAM;AAChB,iBAAW,KAAK;AAChB,eAAS,KAAK;AAEPA,aAAAA;AAAAA,IAAA;AAGR,aAAS,IAAI;AACb,eAAW,KAAK;AACT,WAAA;AAAA,EACR;AAEO,SAAA;AAAA,IACN,MAAM;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,IACA;AAAA,EACD;AACD;;"}
1
+ {"version":3,"file":"harmony80.cjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/ProfileSettingsMenuItem/ProfileSettingsMenuItem.tsx"],"sourcesContent":["import { MenuDivider, MenuItem } from '@lokalise/louis'\nimport { useProfileMenu } from '../ProfileMenuContext'\nimport styles from './ProfileSettingsMenuItem.module.css'\n\ntype ProfileSettingsMenuItemProps = {\n\t/** URL to the profile settings page */\n\thref: string\n\t/** User's email address to display below \"Profile Settings\" */\n\tuserEmail: string\n\t/** Optional callback function for tracking or additional actions */\n\tonClick?: () => void\n\t/** Whether to hide the divider that appears below this menu item */\n\thideBottomDivider?: boolean\n}\n\n/**\n * A menu item component that provides access to profile settings.\n *\n * Features:\n * - Displays \"Profile Settings\" with the user's email address below\n * - Conditionally renders based on team status\n * - Includes an optional divider below the item\n * - Will not render if:\n * - Team is suspended\n * - Team's trial period has ended\n *\n * @example\n * ```tsx\n * <ProfileSettingsMenuItem\n * href=\"/settings/profile\"\n * userEmail=\"user@example.com\"\n * onClick={() => trackSettingsClick()}\n * />\n *\n * // Without bottom divider\n * <ProfileSettingsMenuItem\n * href=\"/settings/profile\"\n * userEmail=\"user@example.com\"\n * hideBottomDivider\n * />\n * ```\n *\n * @note This component must be used within a ProfileMenu component\n * as it requires access to the ProfileMenu context for team status information.\n */\nexport const ProfileSettingsMenuItem = ({\n\thref,\n\tonClick,\n\tuserEmail,\n\thideBottomDivider,\n}: ProfileSettingsMenuItemProps) => {\n\tconst { isEndOfTrialActive, isTeamSuspended } = useProfileMenu()\n\n\tif (isEndOfTrialActive || isTeamSuspended) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem\n\t\t\t\thref={href}\n\t\t\t\tonClick={() => {\n\t\t\t\t\tonClick?.()\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<div className={`flex-col ${styles.container}`}>\n\t\t\t\t\t<span>Profile Settings</span>\n\t\t\t\t\t<span className={styles.profileEmail}>{userEmail}</span>\n\t\t\t\t</div>\n\t\t\t</MenuItem>\n\n\t\t\t{!hideBottomDivider && <MenuDivider />}\n\t\t</>\n\t)\n}\n"],"names":["useProfileMenu","jsxs","Fragment","jsx","MenuItem","styles","MenuDivider"],"mappings":";;;;;;AA6CO,MAAM,0BAA0B,CAAC;AAAA,EACvC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,MAAoC;AACnC,QAAM,EAAE,oBAAoB,gBAAgB,IAAIA,kCAAe;AAE/D,MAAI,sBAAsB,iBAAiB;AACnC,WAAA;AAAA,EAAA;AAGR,SAEEC,2BAAA,KAAAC,qBAAA,EAAA,UAAA;AAAA,IAAAC,2BAAA;AAAA,MAACC,MAAA;AAAA,MAAA;AAAA,QACA;AAAA,QACA,SAAS,MAAM;AACJ;AAAA,QACX;AAAA,QAEA,0CAAC,OAAI,EAAA,WAAW,YAAYC,uCAAO,SAAS,IAC3C,UAAA;AAAA,UAAAF,2BAAAA,IAAC,UAAK,UAAgB,mBAAA,CAAA;AAAA,UACrBA,2BAAA,IAAA,QAAA,EAAK,WAAWE,+BAAA,QAAO,cAAe,UAAU,UAAA,CAAA;AAAA,QAAA,EAClD,CAAA;AAAA,MAAA;AAAA,IACD;AAAA,IAEC,CAAC,qBAAqBF,+BAACG,MAAAA,aAAY,CAAA,CAAA;AAAA,EAAA,GACrC;AAEF;;"}