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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (609) hide show
  1. package/dist/harmony.cjs +71 -68
  2. package/dist/harmony.cjs.map +1 -1
  3. package/dist/harmony.mjs +71 -68
  4. package/dist/harmony.mjs.map +1 -1
  5. package/dist/harmony10.cjs +30 -23
  6. package/dist/harmony10.cjs.map +1 -1
  7. package/dist/harmony10.mjs +30 -23
  8. package/dist/harmony10.mjs.map +1 -1
  9. package/dist/harmony100.cjs +13 -12
  10. package/dist/harmony100.cjs.map +1 -1
  11. package/dist/harmony100.mjs +12 -11
  12. package/dist/harmony100.mjs.map +1 -1
  13. package/dist/harmony101.cjs +12 -22
  14. package/dist/harmony101.cjs.map +1 -1
  15. package/dist/harmony101.mjs +11 -21
  16. package/dist/harmony101.mjs.map +1 -1
  17. package/dist/harmony102.cjs +21 -99
  18. package/dist/harmony102.cjs.map +1 -1
  19. package/dist/harmony102.mjs +20 -81
  20. package/dist/harmony102.mjs.map +1 -1
  21. package/dist/harmony103.cjs +96 -11
  22. package/dist/harmony103.cjs.map +1 -1
  23. package/dist/harmony103.mjs +79 -11
  24. package/dist/harmony103.mjs.map +1 -1
  25. package/dist/harmony104.cjs +14 -20
  26. package/dist/harmony104.cjs.map +1 -1
  27. package/dist/harmony104.mjs +14 -20
  28. package/dist/harmony104.mjs.map +1 -1
  29. package/dist/harmony105.cjs +20 -87
  30. package/dist/harmony105.cjs.map +1 -1
  31. package/dist/harmony105.mjs +20 -87
  32. package/dist/harmony105.mjs.map +1 -1
  33. package/dist/harmony106.cjs +87 -30
  34. package/dist/harmony106.cjs.map +1 -1
  35. package/dist/harmony106.mjs +87 -30
  36. package/dist/harmony106.mjs.map +1 -1
  37. package/dist/harmony107.cjs +31 -10
  38. package/dist/harmony107.cjs.map +1 -1
  39. package/dist/harmony107.mjs +30 -9
  40. package/dist/harmony107.mjs.map +1 -1
  41. package/dist/harmony108.cjs +9 -12
  42. package/dist/harmony108.cjs.map +1 -1
  43. package/dist/harmony108.mjs +8 -11
  44. package/dist/harmony108.mjs.map +1 -1
  45. package/dist/harmony109.cjs +6 -9
  46. package/dist/harmony109.cjs.map +1 -1
  47. package/dist/harmony109.mjs +8 -11
  48. package/dist/harmony109.mjs.map +1 -1
  49. package/dist/harmony11.cjs +16 -45
  50. package/dist/harmony11.cjs.map +1 -1
  51. package/dist/harmony11.mjs +16 -45
  52. package/dist/harmony11.mjs.map +1 -1
  53. package/dist/harmony110.cjs +5 -9
  54. package/dist/harmony110.cjs.map +1 -1
  55. package/dist/harmony110.mjs +5 -9
  56. package/dist/harmony110.mjs.map +1 -1
  57. package/dist/harmony111.cjs +16 -7
  58. package/dist/harmony111.cjs.map +1 -1
  59. package/dist/harmony111.mjs +17 -8
  60. package/dist/harmony111.mjs.map +1 -1
  61. package/dist/harmony112.cjs +7 -24
  62. package/dist/harmony112.cjs.map +1 -1
  63. package/dist/harmony112.mjs +7 -24
  64. package/dist/harmony112.mjs.map +1 -1
  65. package/dist/harmony113.cjs +21 -6
  66. package/dist/harmony113.cjs.map +1 -1
  67. package/dist/harmony113.mjs +22 -7
  68. package/dist/harmony113.mjs.map +1 -1
  69. package/dist/harmony114.cjs +7 -33
  70. package/dist/harmony114.cjs.map +1 -1
  71. package/dist/harmony114.mjs +9 -35
  72. package/dist/harmony114.mjs.map +1 -1
  73. package/dist/harmony115.cjs +33 -7
  74. package/dist/harmony115.cjs.map +1 -1
  75. package/dist/harmony115.mjs +35 -9
  76. package/dist/harmony115.mjs.map +1 -1
  77. package/dist/harmony116.cjs +8 -18
  78. package/dist/harmony116.cjs.map +1 -1
  79. package/dist/harmony116.mjs +8 -18
  80. package/dist/harmony116.mjs.map +1 -1
  81. package/dist/harmony117.cjs +13 -27
  82. package/dist/harmony117.cjs.map +1 -1
  83. package/dist/harmony117.mjs +13 -27
  84. package/dist/harmony117.mjs.map +1 -1
  85. package/dist/harmony118.cjs +36 -21
  86. package/dist/harmony118.cjs.map +1 -1
  87. package/dist/harmony118.mjs +35 -20
  88. package/dist/harmony118.mjs.map +1 -1
  89. package/dist/harmony119.cjs +21 -21
  90. package/dist/harmony119.cjs.map +1 -1
  91. package/dist/harmony119.mjs +20 -20
  92. package/dist/harmony119.mjs.map +1 -1
  93. package/dist/harmony12.cjs +51 -8
  94. package/dist/harmony12.cjs.map +1 -1
  95. package/dist/harmony12.mjs +51 -8
  96. package/dist/harmony12.mjs.map +1 -1
  97. package/dist/harmony120.cjs +21 -6
  98. package/dist/harmony120.cjs.map +1 -1
  99. package/dist/harmony120.mjs +20 -5
  100. package/dist/harmony120.mjs.map +1 -1
  101. package/dist/harmony121.cjs +3 -12
  102. package/dist/harmony121.cjs.map +1 -1
  103. package/dist/harmony121.mjs +3 -12
  104. package/dist/harmony121.mjs.map +1 -1
  105. package/dist/harmony122.cjs +15 -5
  106. package/dist/harmony122.cjs.map +1 -1
  107. package/dist/harmony122.mjs +15 -5
  108. package/dist/harmony122.mjs.map +1 -1
  109. package/dist/harmony123.cjs +5 -5
  110. package/dist/harmony123.mjs +5 -5
  111. package/dist/harmony124.cjs +6 -97
  112. package/dist/harmony124.cjs.map +1 -1
  113. package/dist/harmony124.mjs +5 -96
  114. package/dist/harmony124.mjs.map +1 -1
  115. package/dist/harmony125.cjs +94 -11
  116. package/dist/harmony125.cjs.map +1 -1
  117. package/dist/harmony125.mjs +94 -11
  118. package/dist/harmony125.mjs.map +1 -1
  119. package/dist/harmony126.cjs +12 -13
  120. package/dist/harmony126.cjs.map +1 -1
  121. package/dist/harmony126.mjs +12 -13
  122. package/dist/harmony126.mjs.map +1 -1
  123. package/dist/harmony127.cjs +13 -35
  124. package/dist/harmony127.cjs.map +1 -1
  125. package/dist/harmony127.mjs +13 -35
  126. package/dist/harmony127.mjs.map +1 -1
  127. package/dist/harmony128.cjs +32 -24
  128. package/dist/harmony128.cjs.map +1 -1
  129. package/dist/harmony128.mjs +32 -24
  130. package/dist/harmony128.mjs.map +1 -1
  131. package/dist/harmony129.cjs +28 -10
  132. package/dist/harmony129.cjs.map +1 -1
  133. package/dist/harmony129.mjs +28 -10
  134. package/dist/harmony129.mjs.map +1 -1
  135. package/dist/harmony13.cjs +8 -4
  136. package/dist/harmony13.cjs.map +1 -1
  137. package/dist/harmony13.mjs +8 -4
  138. package/dist/harmony13.mjs.map +1 -1
  139. package/dist/harmony130.cjs +10 -9
  140. package/dist/harmony130.cjs.map +1 -1
  141. package/dist/harmony130.mjs +9 -8
  142. package/dist/harmony130.mjs.map +1 -1
  143. package/dist/harmony131.cjs +6 -3
  144. package/dist/harmony131.cjs.map +1 -1
  145. package/dist/harmony131.mjs +6 -3
  146. package/dist/harmony131.mjs.map +1 -1
  147. package/dist/harmony132.cjs +3 -6
  148. package/dist/harmony132.cjs.map +1 -1
  149. package/dist/harmony132.mjs +3 -6
  150. package/dist/harmony132.mjs.map +1 -1
  151. package/dist/harmony133.cjs +6 -21
  152. package/dist/harmony133.cjs.map +1 -1
  153. package/dist/harmony133.mjs +6 -21
  154. package/dist/harmony133.mjs.map +1 -1
  155. package/dist/harmony134.cjs +21 -3
  156. package/dist/harmony134.cjs.map +1 -1
  157. package/dist/harmony134.mjs +21 -3
  158. package/dist/harmony134.mjs.map +1 -1
  159. package/dist/harmony135.cjs +3 -9
  160. package/dist/harmony135.cjs.map +1 -1
  161. package/dist/harmony135.mjs +3 -9
  162. package/dist/harmony135.mjs.map +1 -1
  163. package/dist/harmony136.cjs +9 -3
  164. package/dist/harmony136.cjs.map +1 -1
  165. package/dist/harmony136.mjs +9 -3
  166. package/dist/harmony136.mjs.map +1 -1
  167. package/dist/harmony137.cjs +7 -14
  168. package/dist/harmony137.cjs.map +1 -1
  169. package/dist/harmony137.mjs +6 -13
  170. package/dist/harmony137.mjs.map +1 -1
  171. package/dist/harmony138.cjs +12 -14
  172. package/dist/harmony138.cjs.map +1 -1
  173. package/dist/harmony138.mjs +12 -14
  174. package/dist/harmony138.mjs.map +1 -1
  175. package/dist/harmony139.cjs +13 -14
  176. package/dist/harmony139.cjs.map +1 -1
  177. package/dist/harmony139.mjs +13 -14
  178. package/dist/harmony139.mjs.map +1 -1
  179. package/dist/harmony14.cjs +5 -32
  180. package/dist/harmony14.cjs.map +1 -1
  181. package/dist/harmony14.mjs +5 -32
  182. package/dist/harmony14.mjs.map +1 -1
  183. package/dist/harmony140.cjs +15 -10
  184. package/dist/harmony140.cjs.map +1 -1
  185. package/dist/harmony140.mjs +15 -10
  186. package/dist/harmony140.mjs.map +1 -1
  187. package/dist/harmony141.cjs +10 -15
  188. package/dist/harmony141.cjs.map +1 -1
  189. package/dist/harmony141.mjs +10 -15
  190. package/dist/harmony141.mjs.map +1 -1
  191. package/dist/harmony142.cjs +13 -18
  192. package/dist/harmony142.cjs.map +1 -1
  193. package/dist/harmony142.mjs +13 -18
  194. package/dist/harmony142.mjs.map +1 -1
  195. package/dist/harmony143.cjs +19 -10
  196. package/dist/harmony143.cjs.map +1 -1
  197. package/dist/harmony143.mjs +19 -10
  198. package/dist/harmony143.mjs.map +1 -1
  199. package/dist/harmony144.cjs +11 -5
  200. package/dist/harmony144.cjs.map +1 -1
  201. package/dist/harmony144.mjs +11 -5
  202. package/dist/harmony144.mjs.map +1 -1
  203. package/dist/harmony145.cjs +5 -11
  204. package/dist/harmony145.cjs.map +1 -1
  205. package/dist/harmony145.mjs +5 -11
  206. package/dist/harmony145.mjs.map +1 -1
  207. package/dist/harmony146.cjs +11 -31
  208. package/dist/harmony146.cjs.map +1 -1
  209. package/dist/harmony146.mjs +11 -31
  210. package/dist/harmony146.mjs.map +1 -1
  211. package/dist/harmony147.cjs +28 -10
  212. package/dist/harmony147.cjs.map +1 -1
  213. package/dist/harmony147.mjs +28 -10
  214. package/dist/harmony147.mjs.map +1 -1
  215. package/dist/harmony148.cjs +17 -0
  216. package/dist/harmony148.cjs.map +1 -0
  217. package/dist/harmony148.mjs +17 -0
  218. package/dist/harmony148.mjs.map +1 -0
  219. package/dist/harmony15.cjs +32 -5
  220. package/dist/harmony15.cjs.map +1 -1
  221. package/dist/harmony15.mjs +32 -5
  222. package/dist/harmony15.mjs.map +1 -1
  223. package/dist/harmony16.cjs +5 -11
  224. package/dist/harmony16.cjs.map +1 -1
  225. package/dist/harmony16.mjs +5 -11
  226. package/dist/harmony16.mjs.map +1 -1
  227. package/dist/harmony17.cjs +9 -9
  228. package/dist/harmony17.cjs.map +1 -1
  229. package/dist/harmony17.mjs +9 -9
  230. package/dist/harmony17.mjs.map +1 -1
  231. package/dist/harmony18.cjs +9 -16
  232. package/dist/harmony18.cjs.map +1 -1
  233. package/dist/harmony18.mjs +9 -16
  234. package/dist/harmony18.mjs.map +1 -1
  235. package/dist/harmony19.cjs +16 -14
  236. package/dist/harmony19.cjs.map +1 -1
  237. package/dist/harmony19.mjs +16 -14
  238. package/dist/harmony19.mjs.map +1 -1
  239. package/dist/harmony20.cjs +13 -139
  240. package/dist/harmony20.cjs.map +1 -1
  241. package/dist/harmony20.mjs +13 -139
  242. package/dist/harmony20.mjs.map +1 -1
  243. package/dist/harmony21.cjs +142 -20
  244. package/dist/harmony21.cjs.map +1 -1
  245. package/dist/harmony21.mjs +142 -20
  246. package/dist/harmony21.mjs.map +1 -1
  247. package/dist/harmony22.cjs +20 -14
  248. package/dist/harmony22.cjs.map +1 -1
  249. package/dist/harmony22.mjs +20 -14
  250. package/dist/harmony22.mjs.map +1 -1
  251. package/dist/harmony23.cjs +13 -16
  252. package/dist/harmony23.cjs.map +1 -1
  253. package/dist/harmony23.mjs +13 -16
  254. package/dist/harmony23.mjs.map +1 -1
  255. package/dist/harmony24.cjs +10 -11
  256. package/dist/harmony24.cjs.map +1 -1
  257. package/dist/harmony24.mjs +10 -11
  258. package/dist/harmony24.mjs.map +1 -1
  259. package/dist/harmony25.cjs +16 -18
  260. package/dist/harmony25.cjs.map +1 -1
  261. package/dist/harmony25.mjs +16 -18
  262. package/dist/harmony25.mjs.map +1 -1
  263. package/dist/harmony26.cjs +17 -17
  264. package/dist/harmony26.cjs.map +1 -1
  265. package/dist/harmony26.mjs +18 -18
  266. package/dist/harmony26.mjs.map +1 -1
  267. package/dist/harmony27.cjs +19 -9
  268. package/dist/harmony27.cjs.map +1 -1
  269. package/dist/harmony27.mjs +19 -9
  270. package/dist/harmony27.mjs.map +1 -1
  271. package/dist/harmony28.cjs +7 -8
  272. package/dist/harmony28.cjs.map +1 -1
  273. package/dist/harmony28.mjs +7 -8
  274. package/dist/harmony28.mjs.map +1 -1
  275. package/dist/harmony29.cjs +11 -55
  276. package/dist/harmony29.cjs.map +1 -1
  277. package/dist/harmony29.mjs +11 -55
  278. package/dist/harmony29.mjs.map +1 -1
  279. package/dist/harmony3.cjs +3 -3
  280. package/dist/harmony3.mjs +3 -3
  281. package/dist/harmony30.cjs +49 -25
  282. package/dist/harmony30.cjs.map +1 -1
  283. package/dist/harmony30.mjs +50 -26
  284. package/dist/harmony30.mjs.map +1 -1
  285. package/dist/harmony31.cjs +28 -8
  286. package/dist/harmony31.cjs.map +1 -1
  287. package/dist/harmony31.mjs +29 -9
  288. package/dist/harmony31.mjs.map +1 -1
  289. package/dist/harmony32.cjs +10 -54
  290. package/dist/harmony32.cjs.map +1 -1
  291. package/dist/harmony32.mjs +10 -54
  292. package/dist/harmony32.mjs.map +1 -1
  293. package/dist/harmony33.cjs +50 -25
  294. package/dist/harmony33.cjs.map +1 -1
  295. package/dist/harmony33.mjs +51 -26
  296. package/dist/harmony33.mjs.map +1 -1
  297. package/dist/harmony34.cjs +27 -15
  298. package/dist/harmony34.cjs.map +1 -1
  299. package/dist/harmony34.mjs +28 -16
  300. package/dist/harmony34.mjs.map +1 -1
  301. package/dist/harmony35.cjs +15 -25
  302. package/dist/harmony35.cjs.map +1 -1
  303. package/dist/harmony35.mjs +16 -26
  304. package/dist/harmony35.mjs.map +1 -1
  305. package/dist/harmony36.cjs +25 -11
  306. package/dist/harmony36.cjs.map +1 -1
  307. package/dist/harmony36.mjs +26 -12
  308. package/dist/harmony36.mjs.map +1 -1
  309. package/dist/harmony37.cjs +14 -14
  310. package/dist/harmony37.cjs.map +1 -1
  311. package/dist/harmony37.mjs +14 -14
  312. package/dist/harmony37.mjs.map +1 -1
  313. package/dist/harmony38.cjs +6 -6
  314. package/dist/harmony38.cjs.map +1 -1
  315. package/dist/harmony38.mjs +6 -6
  316. package/dist/harmony38.mjs.map +1 -1
  317. package/dist/harmony39.cjs +4 -4
  318. package/dist/harmony39.cjs.map +1 -1
  319. package/dist/harmony39.mjs +4 -4
  320. package/dist/harmony39.mjs.map +1 -1
  321. package/dist/harmony4.cjs +2 -2
  322. package/dist/harmony4.mjs +2 -2
  323. package/dist/harmony40.cjs +6 -6
  324. package/dist/harmony40.cjs.map +1 -1
  325. package/dist/harmony40.mjs +6 -6
  326. package/dist/harmony40.mjs.map +1 -1
  327. package/dist/harmony41.cjs +6 -5
  328. package/dist/harmony41.cjs.map +1 -1
  329. package/dist/harmony41.mjs +6 -5
  330. package/dist/harmony41.mjs.map +1 -1
  331. package/dist/harmony42.cjs +6 -15
  332. package/dist/harmony42.cjs.map +1 -1
  333. package/dist/harmony42.mjs +7 -16
  334. package/dist/harmony42.mjs.map +1 -1
  335. package/dist/harmony43.cjs +16 -7
  336. package/dist/harmony43.cjs.map +1 -1
  337. package/dist/harmony43.mjs +16 -7
  338. package/dist/harmony43.mjs.map +1 -1
  339. package/dist/harmony44.cjs +4 -4
  340. package/dist/harmony44.cjs.map +1 -1
  341. package/dist/harmony44.mjs +4 -4
  342. package/dist/harmony44.mjs.map +1 -1
  343. package/dist/harmony45.cjs +7 -11
  344. package/dist/harmony45.cjs.map +1 -1
  345. package/dist/harmony45.mjs +9 -13
  346. package/dist/harmony45.mjs.map +1 -1
  347. package/dist/harmony46.cjs +8 -8
  348. package/dist/harmony46.cjs.map +1 -1
  349. package/dist/harmony46.mjs +8 -8
  350. package/dist/harmony46.mjs.map +1 -1
  351. package/dist/harmony47.cjs +14 -12
  352. package/dist/harmony47.cjs.map +1 -1
  353. package/dist/harmony47.mjs +14 -12
  354. package/dist/harmony47.mjs.map +1 -1
  355. package/dist/harmony48.cjs +8 -8
  356. package/dist/harmony48.cjs.map +1 -1
  357. package/dist/harmony48.mjs +9 -9
  358. package/dist/harmony48.mjs.map +1 -1
  359. package/dist/harmony49.cjs +9 -9
  360. package/dist/harmony49.cjs.map +1 -1
  361. package/dist/harmony49.mjs +10 -10
  362. package/dist/harmony49.mjs.map +1 -1
  363. package/dist/harmony5.cjs +25 -10
  364. package/dist/harmony5.cjs.map +1 -1
  365. package/dist/harmony5.mjs +25 -10
  366. package/dist/harmony5.mjs.map +1 -1
  367. package/dist/harmony50.cjs +12 -14
  368. package/dist/harmony50.cjs.map +1 -1
  369. package/dist/harmony50.mjs +12 -14
  370. package/dist/harmony50.mjs.map +1 -1
  371. package/dist/harmony51.cjs +10 -10
  372. package/dist/harmony51.cjs.map +1 -1
  373. package/dist/harmony51.mjs +10 -10
  374. package/dist/harmony51.mjs.map +1 -1
  375. package/dist/harmony52.cjs +8 -8
  376. package/dist/harmony52.cjs.map +1 -1
  377. package/dist/harmony52.mjs +8 -8
  378. package/dist/harmony52.mjs.map +1 -1
  379. package/dist/harmony53.cjs +7 -7
  380. package/dist/harmony53.cjs.map +1 -1
  381. package/dist/harmony53.mjs +7 -7
  382. package/dist/harmony53.mjs.map +1 -1
  383. package/dist/harmony54.cjs +8 -8
  384. package/dist/harmony54.cjs.map +1 -1
  385. package/dist/harmony54.mjs +8 -8
  386. package/dist/harmony54.mjs.map +1 -1
  387. package/dist/harmony55.cjs +14 -12
  388. package/dist/harmony55.cjs.map +1 -1
  389. package/dist/harmony55.mjs +14 -12
  390. package/dist/harmony55.mjs.map +1 -1
  391. package/dist/harmony56.cjs +12 -14
  392. package/dist/harmony56.cjs.map +1 -1
  393. package/dist/harmony56.mjs +12 -14
  394. package/dist/harmony56.mjs.map +1 -1
  395. package/dist/harmony57.cjs +8 -8
  396. package/dist/harmony57.cjs.map +1 -1
  397. package/dist/harmony57.mjs +8 -8
  398. package/dist/harmony57.mjs.map +1 -1
  399. package/dist/harmony58.cjs +8 -9
  400. package/dist/harmony58.cjs.map +1 -1
  401. package/dist/harmony58.mjs +9 -10
  402. package/dist/harmony58.mjs.map +1 -1
  403. package/dist/harmony59.cjs +11 -7
  404. package/dist/harmony59.cjs.map +1 -1
  405. package/dist/harmony59.mjs +12 -8
  406. package/dist/harmony59.mjs.map +1 -1
  407. package/dist/harmony6.cjs +9 -47
  408. package/dist/harmony6.cjs.map +1 -1
  409. package/dist/harmony6.mjs +11 -49
  410. package/dist/harmony6.mjs.map +1 -1
  411. package/dist/harmony60.cjs +4 -4
  412. package/dist/harmony60.cjs.map +1 -1
  413. package/dist/harmony60.mjs +4 -4
  414. package/dist/harmony60.mjs.map +1 -1
  415. package/dist/harmony61.cjs +13 -123
  416. package/dist/harmony61.cjs.map +1 -1
  417. package/dist/harmony61.mjs +13 -123
  418. package/dist/harmony61.mjs.map +1 -1
  419. package/dist/harmony62.cjs +102 -60
  420. package/dist/harmony62.cjs.map +1 -1
  421. package/dist/harmony62.mjs +102 -60
  422. package/dist/harmony62.mjs.map +1 -1
  423. package/dist/harmony63.cjs +80 -4
  424. package/dist/harmony63.cjs.map +1 -1
  425. package/dist/harmony63.mjs +80 -4
  426. package/dist/harmony63.mjs.map +1 -1
  427. package/dist/harmony64.cjs +4 -21
  428. package/dist/harmony64.cjs.map +1 -1
  429. package/dist/harmony64.mjs +4 -21
  430. package/dist/harmony64.mjs.map +1 -1
  431. package/dist/harmony65.cjs +20 -36
  432. package/dist/harmony65.cjs.map +1 -1
  433. package/dist/harmony65.mjs +20 -36
  434. package/dist/harmony65.mjs.map +1 -1
  435. package/dist/harmony66.cjs +34 -141
  436. package/dist/harmony66.cjs.map +1 -1
  437. package/dist/harmony66.mjs +31 -138
  438. package/dist/harmony66.mjs.map +1 -1
  439. package/dist/harmony67.cjs +145 -36
  440. package/dist/harmony67.cjs.map +1 -1
  441. package/dist/harmony67.mjs +144 -35
  442. package/dist/harmony67.mjs.map +1 -1
  443. package/dist/harmony68.cjs +36 -25
  444. package/dist/harmony68.cjs.map +1 -1
  445. package/dist/harmony68.mjs +36 -25
  446. package/dist/harmony68.mjs.map +1 -1
  447. package/dist/harmony69.cjs +24 -6
  448. package/dist/harmony69.cjs.map +1 -1
  449. package/dist/harmony69.mjs +24 -6
  450. package/dist/harmony69.mjs.map +1 -1
  451. package/dist/harmony7.cjs +45 -14
  452. package/dist/harmony7.cjs.map +1 -1
  453. package/dist/harmony7.mjs +47 -16
  454. package/dist/harmony7.mjs.map +1 -1
  455. package/dist/harmony70.cjs +6 -82
  456. package/dist/harmony70.cjs.map +1 -1
  457. package/dist/harmony70.mjs +6 -82
  458. package/dist/harmony70.mjs.map +1 -1
  459. package/dist/harmony71.cjs +79 -49
  460. package/dist/harmony71.cjs.map +1 -1
  461. package/dist/harmony71.mjs +79 -49
  462. package/dist/harmony71.mjs.map +1 -1
  463. package/dist/harmony72.cjs +53 -17
  464. package/dist/harmony72.cjs.map +1 -1
  465. package/dist/harmony72.mjs +53 -17
  466. package/dist/harmony72.mjs.map +1 -1
  467. package/dist/harmony73.cjs +19 -16
  468. package/dist/harmony73.cjs.map +1 -1
  469. package/dist/harmony73.mjs +18 -15
  470. package/dist/harmony73.mjs.map +1 -1
  471. package/dist/harmony74.cjs +15 -18
  472. package/dist/harmony74.cjs.map +1 -1
  473. package/dist/harmony74.mjs +15 -18
  474. package/dist/harmony74.mjs.map +1 -1
  475. package/dist/harmony75.cjs +18 -61
  476. package/dist/harmony75.cjs.map +1 -1
  477. package/dist/harmony75.mjs +18 -61
  478. package/dist/harmony75.mjs.map +1 -1
  479. package/dist/harmony76.cjs +59 -37
  480. package/dist/harmony76.cjs.map +1 -1
  481. package/dist/harmony76.mjs +59 -37
  482. package/dist/harmony76.mjs.map +1 -1
  483. package/dist/harmony77.cjs +37 -35
  484. package/dist/harmony77.cjs.map +1 -1
  485. package/dist/harmony77.mjs +38 -36
  486. package/dist/harmony77.mjs.map +1 -1
  487. package/dist/harmony78.cjs +37 -9
  488. package/dist/harmony78.cjs.map +1 -1
  489. package/dist/harmony78.mjs +36 -8
  490. package/dist/harmony78.mjs.map +1 -1
  491. package/dist/harmony79.cjs +10 -9
  492. package/dist/harmony79.cjs.map +1 -1
  493. package/dist/harmony79.mjs +9 -8
  494. package/dist/harmony79.mjs.map +1 -1
  495. package/dist/harmony8.cjs +15 -56
  496. package/dist/harmony8.cjs.map +1 -1
  497. package/dist/harmony8.mjs +16 -57
  498. package/dist/harmony8.mjs.map +1 -1
  499. package/dist/harmony80.cjs +5 -26
  500. package/dist/harmony80.cjs.map +1 -1
  501. package/dist/harmony80.mjs +8 -29
  502. package/dist/harmony80.mjs.map +1 -1
  503. package/dist/harmony81.cjs +29 -3
  504. package/dist/harmony81.cjs.map +1 -1
  505. package/dist/harmony81.mjs +29 -3
  506. package/dist/harmony81.mjs.map +1 -1
  507. package/dist/harmony82.cjs +3 -33
  508. package/dist/harmony82.cjs.map +1 -1
  509. package/dist/harmony82.mjs +3 -33
  510. package/dist/harmony82.mjs.map +1 -1
  511. package/dist/harmony83.cjs +33 -43
  512. package/dist/harmony83.cjs.map +1 -1
  513. package/dist/harmony83.mjs +33 -43
  514. package/dist/harmony83.mjs.map +1 -1
  515. package/dist/harmony84.cjs +43 -29
  516. package/dist/harmony84.cjs.map +1 -1
  517. package/dist/harmony84.mjs +43 -29
  518. package/dist/harmony84.mjs.map +1 -1
  519. package/dist/harmony85.cjs +26 -63
  520. package/dist/harmony85.cjs.map +1 -1
  521. package/dist/harmony85.mjs +26 -63
  522. package/dist/harmony85.mjs.map +1 -1
  523. package/dist/harmony86.cjs +66 -15
  524. package/dist/harmony86.cjs.map +1 -1
  525. package/dist/harmony86.mjs +66 -15
  526. package/dist/harmony86.mjs.map +1 -1
  527. package/dist/harmony87.cjs +15 -3
  528. package/dist/harmony87.cjs.map +1 -1
  529. package/dist/harmony87.mjs +15 -3
  530. package/dist/harmony87.mjs.map +1 -1
  531. package/dist/harmony88.cjs +3 -166
  532. package/dist/harmony88.cjs.map +1 -1
  533. package/dist/harmony88.mjs +3 -166
  534. package/dist/harmony88.mjs.map +1 -1
  535. package/dist/harmony89.cjs +159 -37
  536. package/dist/harmony89.cjs.map +1 -1
  537. package/dist/harmony89.mjs +160 -38
  538. package/dist/harmony89.mjs.map +1 -1
  539. package/dist/harmony9.cjs +59 -30
  540. package/dist/harmony9.cjs.map +1 -1
  541. package/dist/harmony9.mjs +59 -30
  542. package/dist/harmony9.mjs.map +1 -1
  543. package/dist/harmony90.cjs +43 -11
  544. package/dist/harmony90.cjs.map +1 -1
  545. package/dist/harmony90.mjs +43 -11
  546. package/dist/harmony90.mjs.map +1 -1
  547. package/dist/harmony91.cjs +4 -13
  548. package/dist/harmony91.cjs.map +1 -1
  549. package/dist/harmony91.mjs +3 -12
  550. package/dist/harmony91.mjs.map +1 -1
  551. package/dist/harmony92.cjs +18 -3
  552. package/dist/harmony92.cjs.map +1 -1
  553. package/dist/harmony92.mjs +18 -3
  554. package/dist/harmony92.mjs.map +1 -1
  555. package/dist/harmony93.cjs +71 -13
  556. package/dist/harmony93.cjs.map +1 -1
  557. package/dist/harmony93.mjs +73 -15
  558. package/dist/harmony93.mjs.map +1 -1
  559. package/dist/harmony94.cjs +11 -75
  560. package/dist/harmony94.cjs.map +1 -1
  561. package/dist/harmony94.mjs +11 -75
  562. package/dist/harmony94.mjs.map +1 -1
  563. package/dist/harmony95.cjs +30 -12
  564. package/dist/harmony95.cjs.map +1 -1
  565. package/dist/harmony95.mjs +30 -12
  566. package/dist/harmony95.mjs.map +1 -1
  567. package/dist/harmony96.cjs +9 -30
  568. package/dist/harmony96.cjs.map +1 -1
  569. package/dist/harmony96.mjs +9 -30
  570. package/dist/harmony96.mjs.map +1 -1
  571. package/dist/harmony97.cjs +46 -8
  572. package/dist/harmony97.cjs.map +1 -1
  573. package/dist/harmony97.mjs +47 -9
  574. package/dist/harmony97.mjs.map +1 -1
  575. package/dist/harmony98.cjs +9 -47
  576. package/dist/harmony98.cjs.map +1 -1
  577. package/dist/harmony98.mjs +8 -46
  578. package/dist/harmony98.mjs.map +1 -1
  579. package/dist/harmony99.cjs +12 -9
  580. package/dist/harmony99.cjs.map +1 -1
  581. package/dist/harmony99.mjs +11 -8
  582. package/dist/harmony99.mjs.map +1 -1
  583. package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileMenu.stories.d.ts +1 -0
  584. package/dist/types/src/components/Sidebar/utils/content.d.ts +4 -0
  585. package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedProjectContributor.d.ts +2 -2
  586. package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedUser.d.ts +2 -2
  587. package/dist/types/src/features/navigation/hooks/useNavigationQueries.d.ts +12 -12
  588. package/dist/types/src/features/publicApi/contributors.d.ts +32 -32
  589. package/dist/types/src/features/publicApi/hooks/useAddContributorsMutation.d.ts +2 -2
  590. package/dist/types/src/features/publicApi/hooks/useCreateProjectMutation.d.ts +2 -2
  591. package/dist/types/src/features/publicApi/hooks/useGetTeamUsersQuery.d.ts +2 -2
  592. package/dist/types/src/features/publicApi/hooks/useListContributorsQuery.d.ts +2 -2
  593. package/dist/types/src/features/publicApi/hooks/useListProjectsQuery.d.ts +3 -3
  594. package/dist/types/src/features/publicApi/hooks/useListTeamUsersQuery.d.ts +2 -2
  595. package/dist/types/src/features/publicApi/hooks/useListTeamsQuery.d.ts +4 -4
  596. package/dist/types/src/features/publicApi/hooks/useRetrieveContributorQuery.d.ts +2 -2
  597. package/dist/types/src/features/publicApi/hooks/useRetrieveProjectQuery.d.ts +2 -2
  598. package/dist/types/src/features/publicApi/hooks/useRetrieveTeamQuery.d.ts +4 -4
  599. package/dist/types/src/features/publicApi/hooks/useUpdateContributorMutation.d.ts +2 -2
  600. package/dist/types/src/features/publicApi/hooks/useUpdateProjectMutation.d.ts +2 -2
  601. package/dist/types/src/features/publicApi/projects.d.ts +22 -22
  602. package/dist/types/src/features/publicApi/team.d.ts +36 -36
  603. package/dist/types/src/features/publicApi/teamUsers.d.ts +16 -16
  604. package/dist/types/src/features/publicApi/types/contributorTypes.d.ts +36 -36
  605. package/dist/types/src/features/publicApi/types/projectTypes.d.ts +14 -14
  606. package/dist/types/src/features/publicApi/types/teamTypes.d.ts +42 -42
  607. package/dist/types/src/features/publicApi/types/teamUserTypes.d.ts +20 -20
  608. package/dist/types/src/node.d.ts +1 -0
  609. package/package.json +1 -1
@@ -1,12 +1,33 @@
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
8
- };
9
- exports.active = active;
10
- exports.default = styles;
11
- exports.link = link;
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const navigationItems = [
4
+ {
5
+ key: "editor",
6
+ labelKey: "Editor",
7
+ path: ({ projectId }) => `/project/${projectId}/editor`
8
+ },
9
+ {
10
+ key: "dashboard",
11
+ labelKey: "Download",
12
+ path: ({ projectId }) => `/project/${projectId}/dashboard`
13
+ },
14
+ {
15
+ key: "contributors",
16
+ labelKey: "Contributors",
17
+ path: ({ projectId }) => `/project/${projectId}/contributors`
18
+ },
19
+ {
20
+ key: "orders",
21
+ labelKey: "Human proofreading",
22
+ path: ({ projectId }) => `/project/${projectId}/orders`,
23
+ shouldShow: ({ flags }) => flags.ap_feature_hraas === "on"
24
+ },
25
+ {
26
+ key: "billing",
27
+ labelKey: "Billing",
28
+ path: ({ projectId }) => `/project/${projectId}/billing`,
29
+ shouldShow: ({ flags }) => flags.ap_feature_billing === "on"
30
+ }
31
+ ];
32
+ exports.navigationItems = navigationItems;
12
33
  //# sourceMappingURL=harmony107.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony107.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
1
+ {"version":3,"file":"harmony107.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,12 +1,33 @@
1
- const link = "_link_18vhx_1";
2
- const active = "_active_18vhx_18";
3
- const styles = {
4
- link,
5
- active
6
- };
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"
28
+ }
29
+ ];
7
30
  export {
8
- active,
9
- styles as default,
10
- link
31
+ navigationItems
11
32
  };
12
33
  //# sourceMappingURL=harmony107.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony107.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
1
+ {"version":3,"file":"harmony107.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,15 +1,12 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const jsxRuntime = require("react/jsx-runtime");
4
- const useSidebar = require("./harmony95.cjs");
5
- const louis = require("@lokalise/louis");
6
- const permissions = require("./harmony96.cjs");
7
- const BillingMenuItem = () => {
8
- const { jwt } = useSidebar.useSidebar();
9
- if (!permissions.canChangeBilling(jwt.result)) {
10
- return null;
11
- }
12
- return /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { href: "/team#billing", children: "Billing" });
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
13
8
  };
14
- exports.BillingMenuItem = BillingMenuItem;
9
+ exports.active = active;
10
+ exports.default = styles;
11
+ exports.link = link;
15
12
  //# sourceMappingURL=harmony108.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony108.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.result)) {\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;AAE3B,MAAI,CAACC,YAAA,iBAAiB,IAAI,MAAM,GAAG;AAC3B,WAAA;AAAA,EAAA;AAGR,SAAQC,2BAAAA,IAAAC,MAAAA,UAAA,EAAS,MAAK,iBAAgB,UAAO,WAAA;AAC9C;;"}
1
+ {"version":3,"file":"harmony108.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
@@ -1,15 +1,12 @@
1
- import { jsx } from "react/jsx-runtime";
2
- import { useSidebar } from "./harmony95.mjs";
3
- import { MenuItem } from "@lokalise/louis";
4
- import { canChangeBilling } from "./harmony96.mjs";
5
- const BillingMenuItem = () => {
6
- const { jwt } = useSidebar();
7
- if (!canChangeBilling(jwt.result)) {
8
- return null;
9
- }
10
- return /* @__PURE__ */ jsx(MenuItem, { href: "/team#billing", children: "Billing" });
1
+ const link = "_link_18vhx_1";
2
+ const active = "_active_18vhx_18";
3
+ const styles = {
4
+ link,
5
+ active
11
6
  };
12
7
  export {
13
- BillingMenuItem
8
+ active,
9
+ styles as default,
10
+ link
14
11
  };
15
12
  //# sourceMappingURL=harmony108.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony108.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.result)) {\n\t\treturn null\n\t}\n\n\treturn <MenuItem href=\"/team#billing\">Billing</MenuItem>\n}\n"],"names":[],"mappings":";;;;AAiBO,MAAM,kBAAkB,MAAM;AAC9B,QAAA,EAAE,IAAI,IAAI,WAAW;AAE3B,MAAI,CAAC,iBAAiB,IAAI,MAAM,GAAG;AAC3B,WAAA;AAAA,EAAA;AAGR,SAAQ,oBAAA,UAAA,EAAS,MAAK,iBAAgB,UAAO,WAAA;AAC9C;"}
1
+ {"version":3,"file":"harmony108.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -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("./harmony95.cjs");
4
+ const useSidebar = require("./harmony94.cjs");
5
5
  const louis = require("@lokalise/louis");
6
- const permissions = require("./harmony96.cjs");
7
- const CreateNewTeam = ({ onCreateTeam }) => {
6
+ const permissions = require("./harmony95.cjs");
7
+ const BillingMenuItem = () => {
8
8
  const { jwt } = useSidebar.useSidebar();
9
- if (!permissions.canCreateTeam(jwt.result)) {
9
+ if (!permissions.canChangeBilling(jwt.result)) {
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: "/team#billing", children: "Billing" });
16
13
  };
17
- exports.CreateNewTeam = CreateNewTeam;
14
+ exports.BillingMenuItem = BillingMenuItem;
18
15
  //# sourceMappingURL=harmony109.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony109.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.result)) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem onClick={onCreateTeam}>Create new team</MenuItem>\n\t\t\t<MenuDivider />\n\t\t</>\n\t)\n}\n"],"names":["useSidebar","canCreateTeam","jsxs","Fragment","jsx","MenuItem","MenuDivider"],"mappings":";;;;;;AAqBO,MAAM,gBAAgB,CAAC,EAAE,mBAAuC;AAChE,QAAA,EAAE,IAAI,IAAIA,sBAAW;AAE3B,MAAI,CAACC,YAAA,cAAc,IAAI,MAAM,GAAG;AACxB,WAAA;AAAA,EAAA;AAGR,SAEEC,2BAAA,KAAAC,qBAAA,EAAA,UAAA;AAAA,IAACC,2BAAA,IAAAC,MAAA,UAAA,EAAS,SAAS,cAAc,UAAe,mBAAA;AAAA,mCAC/CC,MAAY,aAAA,CAAA,CAAA;AAAA,EAAA,GACd;AAEF;;"}
1
+ {"version":3,"file":"harmony109.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.result)) {\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;AAE3B,MAAI,CAACC,YAAA,iBAAiB,IAAI,MAAM,GAAG;AAC3B,WAAA;AAAA,EAAA;AAGR,SAAQC,2BAAAA,IAAAC,MAAAA,UAAA,EAAS,MAAK,iBAAgB,UAAO,WAAA;AAC9C;;"}
@@ -1,18 +1,15 @@
1
- import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
- import { useSidebar } from "./harmony95.mjs";
3
- import { MenuItem, MenuDivider } from "@lokalise/louis";
4
- import { canCreateTeam } from "./harmony96.mjs";
5
- const CreateNewTeam = ({ onCreateTeam }) => {
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useSidebar } from "./harmony94.mjs";
3
+ import { MenuItem } from "@lokalise/louis";
4
+ import { canChangeBilling } from "./harmony95.mjs";
5
+ const BillingMenuItem = () => {
6
6
  const { jwt } = useSidebar();
7
- if (!canCreateTeam(jwt.result)) {
7
+ if (!canChangeBilling(jwt.result)) {
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: "/team#billing", children: "Billing" });
14
11
  };
15
12
  export {
16
- CreateNewTeam
13
+ BillingMenuItem
17
14
  };
18
15
  //# sourceMappingURL=harmony109.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony109.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.result)) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem onClick={onCreateTeam}>Create new team</MenuItem>\n\t\t\t<MenuDivider />\n\t\t</>\n\t)\n}\n"],"names":[],"mappings":";;;;AAqBO,MAAM,gBAAgB,CAAC,EAAE,mBAAuC;AAChE,QAAA,EAAE,IAAI,IAAI,WAAW;AAE3B,MAAI,CAAC,cAAc,IAAI,MAAM,GAAG;AACxB,WAAA;AAAA,EAAA;AAGR,SAEE,qBAAA,UAAA,EAAA,UAAA;AAAA,IAAC,oBAAA,UAAA,EAAS,SAAS,cAAc,UAAe,mBAAA;AAAA,wBAC/C,aAAY,CAAA,CAAA;AAAA,EAAA,GACd;AAEF;"}
1
+ {"version":3,"file":"harmony109.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.result)) {\n\t\treturn null\n\t}\n\n\treturn <MenuItem href=\"/team#billing\">Billing</MenuItem>\n}\n"],"names":[],"mappings":";;;;AAiBO,MAAM,kBAAkB,MAAM;AAC9B,QAAA,EAAE,IAAI,IAAI,WAAW;AAE3B,MAAI,CAAC,iBAAiB,IAAI,MAAM,GAAG;AAC3B,WAAA;AAAA,EAAA;AAGR,SAAQ,oBAAA,UAAA,EAAS,MAAK,iBAAgB,UAAO,WAAA;AAC9C;"}
@@ -1,55 +1,26 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
- const urlRegex = /(\b(https?|):\/\/[-a-zA-Zа-яА-Я0-9+&@#/%?=~_|!:,.;]*[-a-zA-Zа-яА-Я0-9+&@#/%=~_|])/gi;
5
- const matchUrl = (input) => input.match(urlRegex) ?? [];
6
- const replaceWithAnchor = (text, pattern, index) => {
7
- const components = text.split(pattern);
8
- if (components.length === 1) {
9
- return text;
4
+ const React = require("react");
5
+ const newLineRegExp = /\n/;
6
+ const replaceString = (text, search, replace) => text.split(search).flatMap((item, index) => {
7
+ if (index !== 0) {
8
+ return [React.cloneElement(replace, { key: Math.random().toString(32).slice(0, 10) }), item];
10
9
  }
11
- const result = [];
12
- if (components[0] !== "") {
13
- result.push(components[0]);
10
+ return item;
11
+ });
12
+ const replaceStringWithElement = (input, search, replace) => {
13
+ if (typeof input === "string") {
14
+ return replaceString(input, search, replace);
14
15
  }
15
- components.shift();
16
- if (components[components.length - 1] === "") {
17
- components.pop();
18
- }
19
- result.push(
20
- /* @__PURE__ */ jsxRuntime.jsx("a", { href: pattern, target: "_blank", rel: "noreferrer noopener", children: pattern }, pattern + index)
21
- );
22
- result.push(components.join(pattern));
23
- return result.filter((item) => item !== "");
24
- };
25
- const matchUrlsAndReplace = (text) => {
26
- const matchedUrls = matchUrl(text);
27
- if (!(matchedUrls == null ? void 0 : matchedUrls.length)) {
28
- return text;
29
- }
30
- return matchedUrls.reduce((accumulator, pattern, index) => {
31
- if (typeof accumulator === "string") {
32
- return replaceWithAnchor(accumulator, pattern, index);
33
- }
34
- return accumulator.flatMap((item) => {
35
- if (typeof item === "string") {
36
- return replaceWithAnchor(item, pattern, index);
37
- }
38
- return item;
39
- });
40
- }, text);
41
- };
42
- const makeUrlClickable = (text) => {
43
- if (typeof text === "string") {
44
- return matchUrlsAndReplace(text);
45
- }
46
- return text.flatMap((item) => {
16
+ return input.flatMap((item) => {
47
17
  if (typeof item === "string") {
48
- return matchUrlsAndReplace(item);
18
+ return replaceString(item, search, replace);
49
19
  }
50
20
  return item;
51
- }, text);
21
+ });
52
22
  };
53
- exports.makeUrlClickable = makeUrlClickable;
54
- exports.matchUrl = matchUrl;
23
+ const convertNewLineToBreakTag = (text) => replaceStringWithElement(text, newLineRegExp, /* @__PURE__ */ jsxRuntime.jsx("br", {}));
24
+ exports.convertNewLineToBreakTag = convertNewLineToBreakTag;
25
+ exports.replaceStringWithElement = replaceStringWithElement;
55
26
  //# sourceMappingURL=harmony11.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony11.cjs","sources":["../src/utils/content/url/url.tsx"],"sourcesContent":["import type { ReactNode } from 'react'\n\nconst urlRegex =\n\t/(\\b(https?|):\\/\\/[-a-zA-Zа-яА-Я0-9+&@#/%?=~_|!:,.;]*[-a-zA-Zа-яА-Я0-9+&@#/%=~_|])/gi\n\nexport const matchUrl = (input: string): readonly string[] => input.match(urlRegex) ?? []\n\nconst replaceWithAnchor = (text: string, pattern: string, index: number) => {\n\tconst components = text.split(pattern)\n\t// if there are no matches\n\tif (components.length === 1) {\n\t\treturn text\n\t}\n\n\tconst result = []\n\n\t// empty value in first position means string starts with pattern\n\tif (components[0] !== '') {\n\t\tresult.push(components[0])\n\t}\n\n\tcomponents.shift()\n\n\t// empty value in last position means string ends with pattern\n\tif (components[components.length - 1] === '') {\n\t\tcomponents.pop()\n\t}\n\n\tresult.push(\n\t\t<a key={pattern + index} href={pattern} target=\"_blank\" rel=\"noreferrer noopener\">\n\t\t\t{pattern}\n\t\t</a>,\n\t)\n\tresult.push(components.join(pattern))\n\n\treturn result.filter((item) => item !== '')\n}\n\nconst matchUrlsAndReplace = (text: string) => {\n\tconst matchedUrls = matchUrl(text)\n\n\tif (!matchedUrls?.length) {\n\t\treturn text\n\t}\n\n\treturn matchedUrls.reduce<string | ReactNode[]>((accumulator, pattern, index) => {\n\t\tif (typeof accumulator === 'string') {\n\t\t\treturn replaceWithAnchor(accumulator, pattern, index)\n\t\t}\n\n\t\treturn accumulator.flatMap((item) => {\n\t\t\tif (typeof item === 'string') {\n\t\t\t\treturn replaceWithAnchor(item, pattern, index)\n\t\t\t}\n\n\t\t\treturn item\n\t\t})\n\t}, text)\n}\n\nexport const makeUrlClickable = (text: string | ReactNode[]) => {\n\tif (typeof text === 'string') {\n\t\treturn matchUrlsAndReplace(text)\n\t}\n\n\treturn text.flatMap((item) => {\n\t\tif (typeof item === 'string') {\n\t\t\treturn matchUrlsAndReplace(item)\n\t\t}\n\n\t\treturn item\n\t}, text)\n}\n"],"names":["jsx"],"mappings":";;;AAEA,MAAM,WACL;AAEM,MAAM,WAAW,CAAC,UAAqC,MAAM,MAAM,QAAQ,KAAK,CAAA;AAEvF,MAAM,oBAAoB,CAAC,MAAc,SAAiB,UAAkB;AACrE,QAAA,aAAa,KAAK,MAAM,OAAO;AAEjC,MAAA,WAAW,WAAW,GAAG;AACrB,WAAA;AAAA,EAAA;AAGR,QAAM,SAAS,CAAC;AAGZ,MAAA,WAAW,CAAC,MAAM,IAAI;AAClB,WAAA,KAAK,WAAW,CAAC,CAAC;AAAA,EAAA;AAG1B,aAAW,MAAM;AAGjB,MAAI,WAAW,WAAW,SAAS,CAAC,MAAM,IAAI;AAC7C,eAAW,IAAI;AAAA,EAAA;AAGT,SAAA;AAAA,IACNA,2BAAAA,IAAC,KAAwB,EAAA,MAAM,SAAS,QAAO,UAAS,KAAI,uBAC1D,UADM,QAAA,GAAA,UAAU,KAElB;AAAA,EACD;AACA,SAAO,KAAK,WAAW,KAAK,OAAO,CAAC;AAEpC,SAAO,OAAO,OAAO,CAAC,SAAS,SAAS,EAAE;AAC3C;AAEA,MAAM,sBAAsB,CAAC,SAAiB;AACvC,QAAA,cAAc,SAAS,IAAI;AAE7B,MAAA,EAAC,2CAAa,SAAQ;AAClB,WAAA;AAAA,EAAA;AAGR,SAAO,YAAY,OAA6B,CAAC,aAAa,SAAS,UAAU;AAC5E,QAAA,OAAO,gBAAgB,UAAU;AAC7B,aAAA,kBAAkB,aAAa,SAAS,KAAK;AAAA,IAAA;AAG9C,WAAA,YAAY,QAAQ,CAAC,SAAS;AAChC,UAAA,OAAO,SAAS,UAAU;AACtB,eAAA,kBAAkB,MAAM,SAAS,KAAK;AAAA,MAAA;AAGvC,aAAA;AAAA,IAAA,CACP;AAAA,KACC,IAAI;AACR;AAEa,MAAA,mBAAmB,CAAC,SAA+B;AAC3D,MAAA,OAAO,SAAS,UAAU;AAC7B,WAAO,oBAAoB,IAAI;AAAA,EAAA;AAGzB,SAAA,KAAK,QAAQ,CAAC,SAAS;AACzB,QAAA,OAAO,SAAS,UAAU;AAC7B,aAAO,oBAAoB,IAAI;AAAA,IAAA;AAGzB,WAAA;AAAA,KACL,IAAI;AACR;;;"}
1
+ {"version":3,"file":"harmony11.cjs","sources":["../src/utils/content/text/text.tsx"],"sourcesContent":["import { type ReactElement, type ReactNode, cloneElement } from 'react'\n\nconst newLineRegExp = /\\n/\n\nconst replaceString = (text: string, search: RegExp, replace: ReactElement) =>\n\ttext.split(search).flatMap((item, index) => {\n\t\tif (index !== 0) {\n\t\t\treturn [cloneElement(replace, { key: Math.random().toString(32).slice(0, 10) }), item]\n\t\t}\n\n\t\treturn item\n\t})\n\nexport const replaceStringWithElement = (\n\tinput: string | readonly ReactNode[],\n\tsearch: RegExp,\n\treplace: ReactElement,\n): readonly ReactNode[] => {\n\tif (typeof input === 'string') {\n\t\treturn replaceString(input, search, replace)\n\t}\n\n\treturn input.flatMap((item) => {\n\t\tif (typeof item === 'string') {\n\t\t\treturn replaceString(item, search, replace)\n\t\t}\n\n\t\treturn item\n\t})\n}\n\nexport const convertNewLineToBreakTag = (text: string | ReactNode[]): readonly ReactNode[] =>\n\treplaceStringWithElement(text, newLineRegExp, <br />)\n"],"names":["cloneElement","jsx"],"mappings":";;;;AAEA,MAAM,gBAAgB;AAEtB,MAAM,gBAAgB,CAAC,MAAc,QAAgB,YACpD,KAAK,MAAM,MAAM,EAAE,QAAQ,CAAC,MAAM,UAAU;AAC3C,MAAI,UAAU,GAAG;AAChB,WAAO,CAACA,MAAa,aAAA,SAAS,EAAE,KAAK,KAAK,OAAO,EAAE,SAAS,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,CAAC,GAAG,IAAI;AAAA,EAAA;AAG/E,SAAA;AACR,CAAC;AAEK,MAAM,2BAA2B,CACvC,OACA,QACA,YAC0B;AACtB,MAAA,OAAO,UAAU,UAAU;AACvB,WAAA,cAAc,OAAO,QAAQ,OAAO;AAAA,EAAA;AAGrC,SAAA,MAAM,QAAQ,CAAC,SAAS;AAC1B,QAAA,OAAO,SAAS,UAAU;AACtB,aAAA,cAAc,MAAM,QAAQ,OAAO;AAAA,IAAA;AAGpC,WAAA;AAAA,EAAA,CACP;AACF;AAEa,MAAA,2BAA2B,CAAC,SACxC,yBAAyB,MAAM,eAAeC,2BAAA,IAAC,QAAG,CAAE;;;"}
@@ -1,55 +1,26 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
- const urlRegex = /(\b(https?|):\/\/[-a-zA-Zа-яА-Я0-9+&@#/%?=~_|!:,.;]*[-a-zA-Zа-яА-Я0-9+&@#/%=~_|])/gi;
3
- const matchUrl = (input) => input.match(urlRegex) ?? [];
4
- const replaceWithAnchor = (text, pattern, index) => {
5
- const components = text.split(pattern);
6
- if (components.length === 1) {
7
- return text;
2
+ import { cloneElement } from "react";
3
+ const newLineRegExp = /\n/;
4
+ const replaceString = (text, search, replace) => text.split(search).flatMap((item, index) => {
5
+ if (index !== 0) {
6
+ return [cloneElement(replace, { key: Math.random().toString(32).slice(0, 10) }), item];
8
7
  }
9
- const result = [];
10
- if (components[0] !== "") {
11
- result.push(components[0]);
8
+ return item;
9
+ });
10
+ const replaceStringWithElement = (input, search, replace) => {
11
+ if (typeof input === "string") {
12
+ return replaceString(input, search, replace);
12
13
  }
13
- components.shift();
14
- if (components[components.length - 1] === "") {
15
- components.pop();
16
- }
17
- result.push(
18
- /* @__PURE__ */ jsx("a", { href: pattern, target: "_blank", rel: "noreferrer noopener", children: pattern }, pattern + index)
19
- );
20
- result.push(components.join(pattern));
21
- return result.filter((item) => item !== "");
22
- };
23
- const matchUrlsAndReplace = (text) => {
24
- const matchedUrls = matchUrl(text);
25
- if (!(matchedUrls == null ? void 0 : matchedUrls.length)) {
26
- return text;
27
- }
28
- return matchedUrls.reduce((accumulator, pattern, index) => {
29
- if (typeof accumulator === "string") {
30
- return replaceWithAnchor(accumulator, pattern, index);
31
- }
32
- return accumulator.flatMap((item) => {
33
- if (typeof item === "string") {
34
- return replaceWithAnchor(item, pattern, index);
35
- }
36
- return item;
37
- });
38
- }, text);
39
- };
40
- const makeUrlClickable = (text) => {
41
- if (typeof text === "string") {
42
- return matchUrlsAndReplace(text);
43
- }
44
- return text.flatMap((item) => {
14
+ return input.flatMap((item) => {
45
15
  if (typeof item === "string") {
46
- return matchUrlsAndReplace(item);
16
+ return replaceString(item, search, replace);
47
17
  }
48
18
  return item;
49
- }, text);
19
+ });
50
20
  };
21
+ const convertNewLineToBreakTag = (text) => replaceStringWithElement(text, newLineRegExp, /* @__PURE__ */ jsx("br", {}));
51
22
  export {
52
- makeUrlClickable,
53
- matchUrl
23
+ convertNewLineToBreakTag,
24
+ replaceStringWithElement
54
25
  };
55
26
  //# sourceMappingURL=harmony11.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony11.mjs","sources":["../src/utils/content/url/url.tsx"],"sourcesContent":["import type { ReactNode } from 'react'\n\nconst urlRegex =\n\t/(\\b(https?|):\\/\\/[-a-zA-Zа-яА-Я0-9+&@#/%?=~_|!:,.;]*[-a-zA-Zа-яА-Я0-9+&@#/%=~_|])/gi\n\nexport const matchUrl = (input: string): readonly string[] => input.match(urlRegex) ?? []\n\nconst replaceWithAnchor = (text: string, pattern: string, index: number) => {\n\tconst components = text.split(pattern)\n\t// if there are no matches\n\tif (components.length === 1) {\n\t\treturn text\n\t}\n\n\tconst result = []\n\n\t// empty value in first position means string starts with pattern\n\tif (components[0] !== '') {\n\t\tresult.push(components[0])\n\t}\n\n\tcomponents.shift()\n\n\t// empty value in last position means string ends with pattern\n\tif (components[components.length - 1] === '') {\n\t\tcomponents.pop()\n\t}\n\n\tresult.push(\n\t\t<a key={pattern + index} href={pattern} target=\"_blank\" rel=\"noreferrer noopener\">\n\t\t\t{pattern}\n\t\t</a>,\n\t)\n\tresult.push(components.join(pattern))\n\n\treturn result.filter((item) => item !== '')\n}\n\nconst matchUrlsAndReplace = (text: string) => {\n\tconst matchedUrls = matchUrl(text)\n\n\tif (!matchedUrls?.length) {\n\t\treturn text\n\t}\n\n\treturn matchedUrls.reduce<string | ReactNode[]>((accumulator, pattern, index) => {\n\t\tif (typeof accumulator === 'string') {\n\t\t\treturn replaceWithAnchor(accumulator, pattern, index)\n\t\t}\n\n\t\treturn accumulator.flatMap((item) => {\n\t\t\tif (typeof item === 'string') {\n\t\t\t\treturn replaceWithAnchor(item, pattern, index)\n\t\t\t}\n\n\t\t\treturn item\n\t\t})\n\t}, text)\n}\n\nexport const makeUrlClickable = (text: string | ReactNode[]) => {\n\tif (typeof text === 'string') {\n\t\treturn matchUrlsAndReplace(text)\n\t}\n\n\treturn text.flatMap((item) => {\n\t\tif (typeof item === 'string') {\n\t\t\treturn matchUrlsAndReplace(item)\n\t\t}\n\n\t\treturn item\n\t}, text)\n}\n"],"names":[],"mappings":";AAEA,MAAM,WACL;AAEM,MAAM,WAAW,CAAC,UAAqC,MAAM,MAAM,QAAQ,KAAK,CAAA;AAEvF,MAAM,oBAAoB,CAAC,MAAc,SAAiB,UAAkB;AACrE,QAAA,aAAa,KAAK,MAAM,OAAO;AAEjC,MAAA,WAAW,WAAW,GAAG;AACrB,WAAA;AAAA,EAAA;AAGR,QAAM,SAAS,CAAC;AAGZ,MAAA,WAAW,CAAC,MAAM,IAAI;AAClB,WAAA,KAAK,WAAW,CAAC,CAAC;AAAA,EAAA;AAG1B,aAAW,MAAM;AAGjB,MAAI,WAAW,WAAW,SAAS,CAAC,MAAM,IAAI;AAC7C,eAAW,IAAI;AAAA,EAAA;AAGT,SAAA;AAAA,IACN,oBAAC,KAAwB,EAAA,MAAM,SAAS,QAAO,UAAS,KAAI,uBAC1D,UADM,QAAA,GAAA,UAAU,KAElB;AAAA,EACD;AACA,SAAO,KAAK,WAAW,KAAK,OAAO,CAAC;AAEpC,SAAO,OAAO,OAAO,CAAC,SAAS,SAAS,EAAE;AAC3C;AAEA,MAAM,sBAAsB,CAAC,SAAiB;AACvC,QAAA,cAAc,SAAS,IAAI;AAE7B,MAAA,EAAC,2CAAa,SAAQ;AAClB,WAAA;AAAA,EAAA;AAGR,SAAO,YAAY,OAA6B,CAAC,aAAa,SAAS,UAAU;AAC5E,QAAA,OAAO,gBAAgB,UAAU;AAC7B,aAAA,kBAAkB,aAAa,SAAS,KAAK;AAAA,IAAA;AAG9C,WAAA,YAAY,QAAQ,CAAC,SAAS;AAChC,UAAA,OAAO,SAAS,UAAU;AACtB,eAAA,kBAAkB,MAAM,SAAS,KAAK;AAAA,MAAA;AAGvC,aAAA;AAAA,IAAA,CACP;AAAA,KACC,IAAI;AACR;AAEa,MAAA,mBAAmB,CAAC,SAA+B;AAC3D,MAAA,OAAO,SAAS,UAAU;AAC7B,WAAO,oBAAoB,IAAI;AAAA,EAAA;AAGzB,SAAA,KAAK,QAAQ,CAAC,SAAS;AACzB,QAAA,OAAO,SAAS,UAAU;AAC7B,aAAO,oBAAoB,IAAI;AAAA,IAAA;AAGzB,WAAA;AAAA,KACL,IAAI;AACR;"}
1
+ {"version":3,"file":"harmony11.mjs","sources":["../src/utils/content/text/text.tsx"],"sourcesContent":["import { type ReactElement, type ReactNode, cloneElement } from 'react'\n\nconst newLineRegExp = /\\n/\n\nconst replaceString = (text: string, search: RegExp, replace: ReactElement) =>\n\ttext.split(search).flatMap((item, index) => {\n\t\tif (index !== 0) {\n\t\t\treturn [cloneElement(replace, { key: Math.random().toString(32).slice(0, 10) }), item]\n\t\t}\n\n\t\treturn item\n\t})\n\nexport const replaceStringWithElement = (\n\tinput: string | readonly ReactNode[],\n\tsearch: RegExp,\n\treplace: ReactElement,\n): readonly ReactNode[] => {\n\tif (typeof input === 'string') {\n\t\treturn replaceString(input, search, replace)\n\t}\n\n\treturn input.flatMap((item) => {\n\t\tif (typeof item === 'string') {\n\t\t\treturn replaceString(item, search, replace)\n\t\t}\n\n\t\treturn item\n\t})\n}\n\nexport const convertNewLineToBreakTag = (text: string | ReactNode[]): readonly ReactNode[] =>\n\treplaceStringWithElement(text, newLineRegExp, <br />)\n"],"names":[],"mappings":";;AAEA,MAAM,gBAAgB;AAEtB,MAAM,gBAAgB,CAAC,MAAc,QAAgB,YACpD,KAAK,MAAM,MAAM,EAAE,QAAQ,CAAC,MAAM,UAAU;AAC3C,MAAI,UAAU,GAAG;AAChB,WAAO,CAAC,aAAa,SAAS,EAAE,KAAK,KAAK,OAAO,EAAE,SAAS,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,CAAC,GAAG,IAAI;AAAA,EAAA;AAG/E,SAAA;AACR,CAAC;AAEK,MAAM,2BAA2B,CACvC,OACA,QACA,YAC0B;AACtB,MAAA,OAAO,UAAU,UAAU;AACvB,WAAA,cAAc,OAAO,QAAQ,OAAO;AAAA,EAAA;AAGrC,SAAA,MAAM,QAAQ,CAAC,SAAS;AAC1B,QAAA,OAAO,SAAS,UAAU;AACtB,aAAA,cAAc,MAAM,QAAQ,OAAO;AAAA,IAAA;AAGpC,WAAA;AAAA,EAAA,CACP;AACF;AAEa,MAAA,2BAA2B,CAAC,SACxC,yBAAyB,MAAM,eAAe,oBAAC,QAAG,CAAE;"}
@@ -1,22 +1,18 @@
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("./harmony95.cjs");
4
+ const useSidebar = require("./harmony94.cjs");
5
5
  const louis = require("@lokalise/louis");
6
- const permissions = require("./harmony96.cjs");
7
- const CreateNewTeamPlaceholder_module = require("./harmony130.cjs");
8
- const CreateNewTeamPlaceholder = ({ onClick }) => {
6
+ const permissions = require("./harmony95.cjs");
7
+ const CreateNewTeam = ({ onCreateTeam }) => {
9
8
  const { jwt } = useSidebar.useSidebar();
10
9
  if (!permissions.canCreateTeam(jwt.result)) {
11
10
  return null;
12
11
  }
13
12
  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
- ] }) }),
13
+ /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { onClick: onCreateTeam, children: "Create new team" }),
18
14
  /* @__PURE__ */ jsxRuntime.jsx(louis.MenuDivider, {})
19
15
  ] });
20
16
  };
21
- exports.CreateNewTeamPlaceholder = CreateNewTeamPlaceholder;
17
+ exports.CreateNewTeam = CreateNewTeam;
22
18
  //# sourceMappingURL=harmony110.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony110.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.result)) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem onClick={onClick} data-testid=\"sidebar-create-new-team-placeholder\">\n\t\t\t\t<div className=\"flex flex-col\">\n\t\t\t\t\t<span className={styles.mainLabel}>Create new team</span>\n\t\t\t\t\t<span className={styles.subLabel}>Switch to Expert to create a new team</span>\n\t\t\t\t</div>\n\t\t\t</MenuItem>\n\t\t\t<MenuDivider />\n\t\t</>\n\t)\n}\n"],"names":["useSidebar","canCreateTeam","jsxs","Fragment","jsx","MenuItem","styles","MenuDivider"],"mappings":";;;;;;;AAsBO,MAAM,2BAA2B,CAAC,EAAE,cAA6C;AACjF,QAAA,EAAE,IAAI,IAAIA,sBAAW;AAE3B,MAAI,CAACC,YAAA,cAAc,IAAI,MAAM,GAAG;AACxB,WAAA;AAAA,EAAA;AAGR,SAEEC,2BAAA,KAAAC,qBAAA,EAAA,UAAA;AAAA,IAAAC,2BAAAA,IAACC,kBAAS,SAAkB,eAAY,uCACvC,UAACH,2BAAAA,KAAA,OAAA,EAAI,WAAU,iBACd,UAAA;AAAA,MAAAE,2BAAA,IAAC,QAAK,EAAA,WAAWE,gCAAO,QAAA,WAAW,UAAe,mBAAA;AAAA,MACjDF,2BAAA,IAAA,QAAA,EAAK,WAAWE,gCAAA,QAAO,UAAU,UAAqC,wCAAA,CAAA;AAAA,IAAA,EAAA,CACxE,EACD,CAAA;AAAA,mCACCC,MAAY,aAAA,CAAA,CAAA;AAAA,EAAA,GACd;AAEF;;"}
1
+ {"version":3,"file":"harmony110.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.result)) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem onClick={onCreateTeam}>Create new team</MenuItem>\n\t\t\t<MenuDivider />\n\t\t</>\n\t)\n}\n"],"names":["useSidebar","canCreateTeam","jsxs","Fragment","jsx","MenuItem","MenuDivider"],"mappings":";;;;;;AAqBO,MAAM,gBAAgB,CAAC,EAAE,mBAAuC;AAChE,QAAA,EAAE,IAAI,IAAIA,sBAAW;AAE3B,MAAI,CAACC,YAAA,cAAc,IAAI,MAAM,GAAG;AACxB,WAAA;AAAA,EAAA;AAGR,SAEEC,2BAAA,KAAAC,qBAAA,EAAA,UAAA;AAAA,IAACC,2BAAA,IAAAC,MAAA,UAAA,EAAS,SAAS,cAAc,UAAe,mBAAA;AAAA,mCAC/CC,MAAY,aAAA,CAAA,CAAA;AAAA,EAAA,GACd;AAEF;;"}
@@ -1,22 +1,18 @@
1
1
  import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
- import { useSidebar } from "./harmony95.mjs";
2
+ import { useSidebar } from "./harmony94.mjs";
3
3
  import { MenuItem, MenuDivider } from "@lokalise/louis";
4
- import { canCreateTeam } from "./harmony96.mjs";
5
- import styles from "./harmony130.mjs";
6
- const CreateNewTeamPlaceholder = ({ onClick }) => {
4
+ import { canCreateTeam } from "./harmony95.mjs";
5
+ const CreateNewTeam = ({ onCreateTeam }) => {
7
6
  const { jwt } = useSidebar();
8
7
  if (!canCreateTeam(jwt.result)) {
9
8
  return null;
10
9
  }
11
10
  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
- ] }) }),
11
+ /* @__PURE__ */ jsx(MenuItem, { onClick: onCreateTeam, children: "Create new team" }),
16
12
  /* @__PURE__ */ jsx(MenuDivider, {})
17
13
  ] });
18
14
  };
19
15
  export {
20
- CreateNewTeamPlaceholder
16
+ CreateNewTeam
21
17
  };
22
18
  //# sourceMappingURL=harmony110.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony110.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.result)) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem onClick={onClick} data-testid=\"sidebar-create-new-team-placeholder\">\n\t\t\t\t<div className=\"flex flex-col\">\n\t\t\t\t\t<span className={styles.mainLabel}>Create new team</span>\n\t\t\t\t\t<span className={styles.subLabel}>Switch to Expert to create a new team</span>\n\t\t\t\t</div>\n\t\t\t</MenuItem>\n\t\t\t<MenuDivider />\n\t\t</>\n\t)\n}\n"],"names":[],"mappings":";;;;;AAsBO,MAAM,2BAA2B,CAAC,EAAE,cAA6C;AACjF,QAAA,EAAE,IAAI,IAAI,WAAW;AAE3B,MAAI,CAAC,cAAc,IAAI,MAAM,GAAG;AACxB,WAAA;AAAA,EAAA;AAGR,SAEE,qBAAA,UAAA,EAAA,UAAA;AAAA,IAAA,oBAAC,YAAS,SAAkB,eAAY,uCACvC,UAAC,qBAAA,OAAA,EAAI,WAAU,iBACd,UAAA;AAAA,MAAA,oBAAC,QAAK,EAAA,WAAW,OAAO,WAAW,UAAe,mBAAA;AAAA,MACjD,oBAAA,QAAA,EAAK,WAAW,OAAO,UAAU,UAAqC,wCAAA,CAAA;AAAA,IAAA,EAAA,CACxE,EACD,CAAA;AAAA,wBACC,aAAY,CAAA,CAAA;AAAA,EAAA,GACd;AAEF;"}
1
+ {"version":3,"file":"harmony110.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.result)) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem onClick={onCreateTeam}>Create new team</MenuItem>\n\t\t\t<MenuDivider />\n\t\t</>\n\t)\n}\n"],"names":[],"mappings":";;;;AAqBO,MAAM,gBAAgB,CAAC,EAAE,mBAAuC;AAChE,QAAA,EAAE,IAAI,IAAI,WAAW;AAE3B,MAAI,CAAC,cAAc,IAAI,MAAM,GAAG;AACxB,WAAA;AAAA,EAAA;AAGR,SAEE,qBAAA,UAAA,EAAA,UAAA;AAAA,IAAC,oBAAA,UAAA,EAAS,SAAS,cAAc,UAAe,mBAAA;AAAA,wBAC/C,aAAY,CAAA,CAAA;AAAA,EAAA,GACd;AAEF;"}
@@ -1,13 +1,22 @@
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("./harmony94.cjs");
4
5
  const louis = require("@lokalise/louis");
5
- const DarkModeToggle_module = require("./harmony131.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
- ] }) });
6
+ const permissions = require("./harmony95.cjs");
7
+ const CreateNewTeamPlaceholder_module = require("./harmony131.cjs");
8
+ const CreateNewTeamPlaceholder = ({ onClick }) => {
9
+ const { jwt } = useSidebar.useSidebar();
10
+ if (!permissions.canCreateTeam(jwt.result)) {
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
+ ] });
11
20
  };
12
- exports.DarkModeToggle = DarkModeToggle;
21
+ exports.CreateNewTeamPlaceholder = CreateNewTeamPlaceholder;
13
22
  //# sourceMappingURL=harmony111.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony111.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
+ {"version":3,"file":"harmony111.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.result)) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem onClick={onClick} data-testid=\"sidebar-create-new-team-placeholder\">\n\t\t\t\t<div className=\"flex flex-col\">\n\t\t\t\t\t<span className={styles.mainLabel}>Create new team</span>\n\t\t\t\t\t<span className={styles.subLabel}>Switch to Expert to create a new team</span>\n\t\t\t\t</div>\n\t\t\t</MenuItem>\n\t\t\t<MenuDivider />\n\t\t</>\n\t)\n}\n"],"names":["useSidebar","canCreateTeam","jsxs","Fragment","jsx","MenuItem","styles","MenuDivider"],"mappings":";;;;;;;AAsBO,MAAM,2BAA2B,CAAC,EAAE,cAA6C;AACjF,QAAA,EAAE,IAAI,IAAIA,sBAAW;AAE3B,MAAI,CAACC,YAAA,cAAc,IAAI,MAAM,GAAG;AACxB,WAAA;AAAA,EAAA;AAGR,SAEEC,2BAAA,KAAAC,qBAAA,EAAA,UAAA;AAAA,IAAAC,2BAAAA,IAACC,kBAAS,SAAkB,eAAY,uCACvC,UAACH,2BAAAA,KAAA,OAAA,EAAI,WAAU,iBACd,UAAA;AAAA,MAAAE,2BAAA,IAAC,QAAK,EAAA,WAAWE,gCAAO,QAAA,WAAW,UAAe,mBAAA;AAAA,MACjDF,2BAAA,IAAA,QAAA,EAAK,WAAWE,gCAAA,QAAO,UAAU,UAAqC,wCAAA,CAAA;AAAA,IAAA,EAAA,CACxE,EACD,CAAA;AAAA,mCACCC,MAAY,aAAA,CAAA,CAAA;AAAA,EAAA,GACd;AAEF;;"}
@@ -1,13 +1,22 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
- import { MenuItem, Switch } from "@lokalise/louis";
1
+ import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
+ import { useSidebar } from "./harmony94.mjs";
3
+ import { MenuItem, MenuDivider } from "@lokalise/louis";
4
+ import { canCreateTeam } from "./harmony95.mjs";
3
5
  import styles from "./harmony131.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
+ const CreateNewTeamPlaceholder = ({ onClick }) => {
7
+ const { jwt } = useSidebar();
8
+ if (!canCreateTeam(jwt.result)) {
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
+ ] });
9
18
  };
10
19
  export {
11
- DarkModeToggle
20
+ CreateNewTeamPlaceholder
12
21
  };
13
22
  //# sourceMappingURL=harmony111.mjs.map