@lokalise/harmony 2.1.1 → 2.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (493) hide show
  1. package/dist/harmony.cjs +135 -135
  2. package/dist/harmony.mjs +79 -79
  3. package/dist/harmony102.cjs +1 -1
  4. package/dist/harmony102.mjs +1 -1
  5. package/dist/harmony103.cjs +7 -7
  6. package/dist/harmony103.mjs +7 -7
  7. package/dist/harmony106.cjs +1 -1
  8. package/dist/harmony106.mjs +1 -1
  9. package/dist/harmony107.cjs +2 -2
  10. package/dist/harmony107.mjs +2 -2
  11. package/dist/harmony108.cjs +2 -2
  12. package/dist/harmony108.mjs +2 -2
  13. package/dist/harmony109.cjs +11 -3
  14. package/dist/harmony109.cjs.map +1 -1
  15. package/dist/harmony109.mjs +11 -3
  16. package/dist/harmony109.mjs.map +1 -1
  17. package/dist/harmony11.cjs +30 -55
  18. package/dist/harmony11.cjs.map +1 -1
  19. package/dist/harmony11.mjs +30 -55
  20. package/dist/harmony11.mjs.map +1 -1
  21. package/dist/harmony110.cjs +21 -18
  22. package/dist/harmony110.cjs.map +1 -1
  23. package/dist/harmony110.mjs +20 -17
  24. package/dist/harmony110.mjs.map +1 -1
  25. package/dist/harmony111.cjs +3 -76
  26. package/dist/harmony111.cjs.map +1 -1
  27. package/dist/harmony111.mjs +3 -76
  28. package/dist/harmony111.mjs.map +1 -1
  29. package/dist/harmony112.cjs +17 -11
  30. package/dist/harmony112.cjs.map +1 -1
  31. package/dist/harmony112.mjs +17 -11
  32. package/dist/harmony112.mjs.map +1 -1
  33. package/dist/harmony113.cjs +76 -34
  34. package/dist/harmony113.cjs.map +1 -1
  35. package/dist/harmony113.mjs +76 -34
  36. package/dist/harmony113.mjs.map +1 -1
  37. package/dist/harmony114.cjs +12 -9
  38. package/dist/harmony114.cjs.map +1 -1
  39. package/dist/harmony114.mjs +12 -9
  40. package/dist/harmony114.mjs.map +1 -1
  41. package/dist/harmony115.cjs +34 -47
  42. package/dist/harmony115.cjs.map +1 -1
  43. package/dist/harmony115.mjs +34 -47
  44. package/dist/harmony115.mjs.map +1 -1
  45. package/dist/harmony116.cjs +10 -10
  46. package/dist/harmony116.cjs.map +1 -1
  47. package/dist/harmony116.mjs +9 -9
  48. package/dist/harmony116.mjs.map +1 -1
  49. package/dist/harmony117.cjs +45 -9
  50. package/dist/harmony117.cjs.map +1 -1
  51. package/dist/harmony117.mjs +47 -11
  52. package/dist/harmony117.mjs.map +1 -1
  53. package/dist/harmony118.cjs +8 -20
  54. package/dist/harmony118.cjs.map +1 -1
  55. package/dist/harmony118.mjs +8 -20
  56. package/dist/harmony118.mjs.map +1 -1
  57. package/dist/harmony12.cjs +22 -30
  58. package/dist/harmony12.cjs.map +1 -1
  59. package/dist/harmony12.mjs +22 -30
  60. package/dist/harmony12.mjs.map +1 -1
  61. package/dist/harmony121.cjs +1 -1
  62. package/dist/harmony121.mjs +1 -1
  63. package/dist/harmony122.cjs +6 -98
  64. package/dist/harmony122.cjs.map +1 -1
  65. package/dist/harmony122.mjs +7 -82
  66. package/dist/harmony122.mjs.map +1 -1
  67. package/dist/harmony123.cjs +16 -86
  68. package/dist/harmony123.cjs.map +1 -1
  69. package/dist/harmony123.mjs +16 -86
  70. package/dist/harmony123.mjs.map +1 -1
  71. package/dist/harmony124.cjs +8 -30
  72. package/dist/harmony124.cjs.map +1 -1
  73. package/dist/harmony124.mjs +8 -30
  74. package/dist/harmony124.mjs.map +1 -1
  75. package/dist/harmony125.cjs +8 -7
  76. package/dist/harmony125.cjs.map +1 -1
  77. package/dist/harmony125.mjs +8 -7
  78. package/dist/harmony125.mjs.map +1 -1
  79. package/dist/harmony126.cjs +14 -16
  80. package/dist/harmony126.cjs.map +1 -1
  81. package/dist/harmony126.mjs +14 -16
  82. package/dist/harmony126.mjs.map +1 -1
  83. package/dist/harmony127.cjs +86 -7
  84. package/dist/harmony127.cjs.map +1 -1
  85. package/dist/harmony127.mjs +86 -7
  86. package/dist/harmony127.mjs.map +1 -1
  87. package/dist/harmony128.cjs +30 -8
  88. package/dist/harmony128.cjs.map +1 -1
  89. package/dist/harmony128.mjs +30 -8
  90. package/dist/harmony128.mjs.map +1 -1
  91. package/dist/harmony129.cjs +98 -14
  92. package/dist/harmony129.cjs.map +1 -1
  93. package/dist/harmony129.mjs +81 -14
  94. package/dist/harmony129.mjs.map +1 -1
  95. package/dist/harmony13.cjs +52 -11
  96. package/dist/harmony13.cjs.map +1 -1
  97. package/dist/harmony13.mjs +52 -11
  98. package/dist/harmony13.mjs.map +1 -1
  99. package/dist/harmony131.cjs +2 -2
  100. package/dist/harmony131.mjs +2 -2
  101. package/dist/harmony132.cjs +2 -2
  102. package/dist/harmony132.mjs +2 -2
  103. package/dist/harmony133.cjs +2 -2
  104. package/dist/harmony133.mjs +2 -2
  105. package/dist/harmony135.cjs +2 -2
  106. package/dist/harmony135.mjs +2 -2
  107. package/dist/harmony136.cjs +2 -2
  108. package/dist/harmony136.mjs +2 -2
  109. package/dist/harmony137.cjs +2 -2
  110. package/dist/harmony137.mjs +2 -2
  111. package/dist/harmony138.cjs +2 -2
  112. package/dist/harmony138.mjs +2 -2
  113. package/dist/harmony139.cjs +1 -1
  114. package/dist/harmony139.mjs +1 -1
  115. package/dist/harmony14.cjs +9 -55
  116. package/dist/harmony14.cjs.map +1 -1
  117. package/dist/harmony14.mjs +9 -55
  118. package/dist/harmony14.mjs.map +1 -1
  119. package/dist/harmony140.cjs +3 -3
  120. package/dist/harmony140.mjs +3 -3
  121. package/dist/harmony145.cjs +4 -6
  122. package/dist/harmony145.cjs.map +1 -1
  123. package/dist/harmony145.mjs +3 -5
  124. package/dist/harmony145.mjs.map +1 -1
  125. package/dist/harmony146.cjs +4 -6
  126. package/dist/harmony146.cjs.map +1 -1
  127. package/dist/harmony146.mjs +3 -5
  128. package/dist/harmony146.mjs.map +1 -1
  129. package/dist/harmony147.cjs +3 -10
  130. package/dist/harmony147.cjs.map +1 -1
  131. package/dist/harmony147.mjs +3 -10
  132. package/dist/harmony147.mjs.map +1 -1
  133. package/dist/harmony148.cjs +14 -3
  134. package/dist/harmony148.cjs.map +1 -1
  135. package/dist/harmony148.mjs +14 -3
  136. package/dist/harmony148.mjs.map +1 -1
  137. package/dist/harmony149.cjs +14 -3
  138. package/dist/harmony149.cjs.map +1 -1
  139. package/dist/harmony149.mjs +14 -3
  140. package/dist/harmony149.mjs.map +1 -1
  141. package/dist/harmony15.cjs +5 -30
  142. package/dist/harmony15.cjs.map +1 -1
  143. package/dist/harmony15.mjs +5 -30
  144. package/dist/harmony15.mjs.map +1 -1
  145. package/dist/harmony150.cjs +3 -3
  146. package/dist/harmony150.cjs.map +1 -1
  147. package/dist/harmony150.mjs +3 -3
  148. package/dist/harmony150.mjs.map +1 -1
  149. package/dist/harmony151.cjs +6 -15
  150. package/dist/harmony151.cjs.map +1 -1
  151. package/dist/harmony151.mjs +5 -14
  152. package/dist/harmony151.mjs.map +1 -1
  153. package/dist/harmony152.cjs +6 -15
  154. package/dist/harmony152.cjs.map +1 -1
  155. package/dist/harmony152.mjs +5 -14
  156. package/dist/harmony152.mjs.map +1 -1
  157. package/dist/harmony153.cjs +10 -3
  158. package/dist/harmony153.cjs.map +1 -1
  159. package/dist/harmony153.mjs +10 -3
  160. package/dist/harmony153.mjs.map +1 -1
  161. package/dist/harmony16.cjs +15 -18
  162. package/dist/harmony16.cjs.map +1 -1
  163. package/dist/harmony16.mjs +15 -18
  164. package/dist/harmony16.mjs.map +1 -1
  165. package/dist/harmony161.cjs +31 -95
  166. package/dist/harmony161.cjs.map +1 -1
  167. package/dist/harmony161.mjs +31 -95
  168. package/dist/harmony161.mjs.map +1 -1
  169. package/dist/harmony162.cjs +94 -11
  170. package/dist/harmony162.cjs.map +1 -1
  171. package/dist/harmony162.mjs +94 -11
  172. package/dist/harmony162.mjs.map +1 -1
  173. package/dist/harmony163.cjs +12 -13
  174. package/dist/harmony163.cjs.map +1 -1
  175. package/dist/harmony163.mjs +12 -13
  176. package/dist/harmony163.mjs.map +1 -1
  177. package/dist/harmony164.cjs +13 -35
  178. package/dist/harmony164.cjs.map +1 -1
  179. package/dist/harmony164.mjs +13 -35
  180. package/dist/harmony164.mjs.map +1 -1
  181. package/dist/harmony165.cjs +32 -24
  182. package/dist/harmony165.cjs.map +1 -1
  183. package/dist/harmony165.mjs +32 -24
  184. package/dist/harmony165.mjs.map +1 -1
  185. package/dist/harmony166.cjs +27 -31
  186. package/dist/harmony166.cjs.map +1 -1
  187. package/dist/harmony166.mjs +27 -31
  188. package/dist/harmony166.mjs.map +1 -1
  189. package/dist/harmony17.cjs +32 -28
  190. package/dist/harmony17.cjs.map +1 -1
  191. package/dist/harmony17.mjs +32 -28
  192. package/dist/harmony17.mjs.map +1 -1
  193. package/dist/harmony18.cjs +5 -14
  194. package/dist/harmony18.cjs.map +1 -1
  195. package/dist/harmony18.mjs +5 -14
  196. package/dist/harmony18.mjs.map +1 -1
  197. package/dist/harmony19.cjs +10 -13
  198. package/dist/harmony19.cjs.map +1 -1
  199. package/dist/harmony19.mjs +10 -13
  200. package/dist/harmony19.mjs.map +1 -1
  201. package/dist/harmony20.cjs +10 -13
  202. package/dist/harmony20.cjs.map +1 -1
  203. package/dist/harmony20.mjs +10 -13
  204. package/dist/harmony20.mjs.map +1 -1
  205. package/dist/harmony21.cjs +17 -13
  206. package/dist/harmony21.cjs.map +1 -1
  207. package/dist/harmony21.mjs +17 -13
  208. package/dist/harmony21.mjs.map +1 -1
  209. package/dist/harmony22.cjs +15 -13
  210. package/dist/harmony22.cjs.map +1 -1
  211. package/dist/harmony22.mjs +15 -13
  212. package/dist/harmony22.mjs.map +1 -1
  213. package/dist/harmony23.cjs +141 -12
  214. package/dist/harmony23.cjs.map +1 -1
  215. package/dist/harmony23.mjs +141 -12
  216. package/dist/harmony23.mjs.map +1 -1
  217. package/dist/harmony24.cjs +20 -22
  218. package/dist/harmony24.cjs.map +1 -1
  219. package/dist/harmony24.mjs +20 -22
  220. package/dist/harmony24.mjs.map +1 -1
  221. package/dist/harmony25.cjs +14 -13
  222. package/dist/harmony25.cjs.map +1 -1
  223. package/dist/harmony25.mjs +14 -13
  224. package/dist/harmony25.mjs.map +1 -1
  225. package/dist/harmony26.cjs +16 -12
  226. package/dist/harmony26.cjs.map +1 -1
  227. package/dist/harmony26.mjs +17 -13
  228. package/dist/harmony26.mjs.map +1 -1
  229. package/dist/harmony27.cjs +16 -15
  230. package/dist/harmony27.cjs.map +1 -1
  231. package/dist/harmony27.mjs +17 -16
  232. package/dist/harmony27.mjs.map +1 -1
  233. package/dist/harmony28.cjs +18 -15
  234. package/dist/harmony28.cjs.map +1 -1
  235. package/dist/harmony28.mjs +18 -15
  236. package/dist/harmony28.mjs.map +1 -1
  237. package/dist/harmony29.cjs +20 -15
  238. package/dist/harmony29.cjs.map +1 -1
  239. package/dist/harmony29.mjs +20 -15
  240. package/dist/harmony29.mjs.map +1 -1
  241. package/dist/harmony30.cjs +10 -15
  242. package/dist/harmony30.cjs.map +1 -1
  243. package/dist/harmony30.mjs +10 -15
  244. package/dist/harmony30.mjs.map +1 -1
  245. package/dist/harmony31.cjs +11 -15
  246. package/dist/harmony31.cjs.map +1 -1
  247. package/dist/harmony31.mjs +11 -15
  248. package/dist/harmony31.mjs.map +1 -1
  249. package/dist/harmony32.cjs +8 -16
  250. package/dist/harmony32.cjs.map +1 -1
  251. package/dist/harmony32.mjs +8 -16
  252. package/dist/harmony32.mjs.map +1 -1
  253. package/dist/harmony33.cjs +8 -16
  254. package/dist/harmony33.cjs.map +1 -1
  255. package/dist/harmony33.mjs +8 -16
  256. package/dist/harmony33.mjs.map +1 -1
  257. package/dist/harmony34.cjs +14 -16
  258. package/dist/harmony34.cjs.map +1 -1
  259. package/dist/harmony34.mjs +14 -16
  260. package/dist/harmony34.mjs.map +1 -1
  261. package/dist/harmony35.cjs +13 -16
  262. package/dist/harmony35.cjs.map +1 -1
  263. package/dist/harmony35.mjs +13 -16
  264. package/dist/harmony35.mjs.map +1 -1
  265. package/dist/harmony36.cjs +13 -16
  266. package/dist/harmony36.cjs.map +1 -1
  267. package/dist/harmony36.mjs +13 -16
  268. package/dist/harmony36.mjs.map +1 -1
  269. package/dist/harmony37.cjs +13 -14
  270. package/dist/harmony37.cjs.map +1 -1
  271. package/dist/harmony37.mjs +13 -14
  272. package/dist/harmony37.mjs.map +1 -1
  273. package/dist/harmony38.cjs +13 -16
  274. package/dist/harmony38.cjs.map +1 -1
  275. package/dist/harmony38.mjs +13 -16
  276. package/dist/harmony38.mjs.map +1 -1
  277. package/dist/harmony39.cjs +7 -16
  278. package/dist/harmony39.cjs.map +1 -1
  279. package/dist/harmony39.mjs +7 -16
  280. package/dist/harmony39.mjs.map +1 -1
  281. package/dist/harmony40.cjs +10 -17
  282. package/dist/harmony40.cjs.map +1 -1
  283. package/dist/harmony40.mjs +10 -17
  284. package/dist/harmony40.mjs.map +1 -1
  285. package/dist/harmony41.cjs +11 -14
  286. package/dist/harmony41.cjs.map +1 -1
  287. package/dist/harmony41.mjs +11 -14
  288. package/dist/harmony41.mjs.map +1 -1
  289. package/dist/harmony42.cjs +9 -14
  290. package/dist/harmony42.cjs.map +1 -1
  291. package/dist/harmony42.mjs +9 -14
  292. package/dist/harmony42.mjs.map +1 -1
  293. package/dist/harmony43.cjs +9 -124
  294. package/dist/harmony43.cjs.map +1 -1
  295. package/dist/harmony43.mjs +9 -124
  296. package/dist/harmony43.mjs.map +1 -1
  297. package/dist/harmony44.cjs +9 -82
  298. package/dist/harmony44.cjs.map +1 -1
  299. package/dist/harmony44.mjs +9 -82
  300. package/dist/harmony44.mjs.map +1 -1
  301. package/dist/harmony45.cjs +88 -6
  302. package/dist/harmony45.cjs.map +1 -1
  303. package/dist/harmony45.mjs +88 -6
  304. package/dist/harmony45.mjs.map +1 -1
  305. package/dist/harmony46.cjs +52 -25
  306. package/dist/harmony46.cjs.map +1 -1
  307. package/dist/harmony46.mjs +52 -25
  308. package/dist/harmony46.mjs.map +1 -1
  309. package/dist/harmony47.cjs +30 -23
  310. package/dist/harmony47.cjs.map +1 -1
  311. package/dist/harmony47.mjs +30 -23
  312. package/dist/harmony47.mjs.map +1 -1
  313. package/dist/harmony48.cjs +11 -141
  314. package/dist/harmony48.cjs.map +1 -1
  315. package/dist/harmony48.mjs +10 -140
  316. package/dist/harmony48.mjs.map +1 -1
  317. package/dist/harmony49.cjs +50 -32
  318. package/dist/harmony49.cjs.map +1 -1
  319. package/dist/harmony49.mjs +50 -32
  320. package/dist/harmony49.mjs.map +1 -1
  321. package/dist/harmony5.cjs +5 -5
  322. package/dist/harmony5.mjs +5 -5
  323. package/dist/harmony50.cjs +30 -26
  324. package/dist/harmony50.cjs.map +1 -1
  325. package/dist/harmony50.mjs +30 -26
  326. package/dist/harmony50.mjs.map +1 -1
  327. package/dist/harmony51.cjs +18 -4
  328. package/dist/harmony51.cjs.map +1 -1
  329. package/dist/harmony51.mjs +18 -4
  330. package/dist/harmony51.mjs.map +1 -1
  331. package/dist/harmony52.cjs +25 -81
  332. package/dist/harmony52.cjs.map +1 -1
  333. package/dist/harmony52.mjs +25 -81
  334. package/dist/harmony52.mjs.map +1 -1
  335. package/dist/harmony53.cjs +13 -57
  336. package/dist/harmony53.cjs.map +1 -1
  337. package/dist/harmony53.mjs +12 -56
  338. package/dist/harmony53.mjs.map +1 -1
  339. package/dist/harmony54.cjs +14 -18
  340. package/dist/harmony54.cjs.map +1 -1
  341. package/dist/harmony54.mjs +14 -18
  342. package/dist/harmony54.mjs.map +1 -1
  343. package/dist/harmony55.cjs +14 -30
  344. package/dist/harmony55.cjs.map +1 -1
  345. package/dist/harmony55.mjs +14 -30
  346. package/dist/harmony55.mjs.map +1 -1
  347. package/dist/harmony56.cjs +13 -22
  348. package/dist/harmony56.cjs.map +1 -1
  349. package/dist/harmony56.mjs +13 -22
  350. package/dist/harmony56.mjs.map +1 -1
  351. package/dist/harmony57.cjs +14 -52
  352. package/dist/harmony57.cjs.map +1 -1
  353. package/dist/harmony57.mjs +14 -52
  354. package/dist/harmony57.mjs.map +1 -1
  355. package/dist/harmony58.cjs +13 -9
  356. package/dist/harmony58.cjs.map +1 -1
  357. package/dist/harmony58.mjs +13 -9
  358. package/dist/harmony58.mjs.map +1 -1
  359. package/dist/harmony59.cjs +22 -5
  360. package/dist/harmony59.cjs.map +1 -1
  361. package/dist/harmony59.mjs +22 -5
  362. package/dist/harmony59.mjs.map +1 -1
  363. package/dist/harmony6.cjs +1 -1
  364. package/dist/harmony6.mjs +2 -2
  365. package/dist/harmony60.cjs +12 -14
  366. package/dist/harmony60.cjs.map +1 -1
  367. package/dist/harmony60.mjs +12 -14
  368. package/dist/harmony60.mjs.map +1 -1
  369. package/dist/harmony61.cjs +12 -31
  370. package/dist/harmony61.cjs.map +1 -1
  371. package/dist/harmony61.mjs +12 -31
  372. package/dist/harmony61.mjs.map +1 -1
  373. package/dist/harmony62.cjs +17 -5
  374. package/dist/harmony62.cjs.map +1 -1
  375. package/dist/harmony62.mjs +17 -5
  376. package/dist/harmony62.mjs.map +1 -1
  377. package/dist/harmony63.cjs +16 -10
  378. package/dist/harmony63.cjs.map +1 -1
  379. package/dist/harmony63.mjs +16 -10
  380. package/dist/harmony63.mjs.map +1 -1
  381. package/dist/harmony64.cjs +15 -11
  382. package/dist/harmony64.cjs.map +1 -1
  383. package/dist/harmony64.mjs +15 -11
  384. package/dist/harmony64.mjs.map +1 -1
  385. package/dist/harmony65.cjs +15 -18
  386. package/dist/harmony65.cjs.map +1 -1
  387. package/dist/harmony65.mjs +15 -18
  388. package/dist/harmony65.mjs.map +1 -1
  389. package/dist/harmony66.cjs +15 -16
  390. package/dist/harmony66.cjs.map +1 -1
  391. package/dist/harmony66.mjs +15 -16
  392. package/dist/harmony66.mjs.map +1 -1
  393. package/dist/harmony67.cjs +17 -142
  394. package/dist/harmony67.cjs.map +1 -1
  395. package/dist/harmony67.mjs +17 -142
  396. package/dist/harmony67.mjs.map +1 -1
  397. package/dist/harmony68.cjs +16 -19
  398. package/dist/harmony68.cjs.map +1 -1
  399. package/dist/harmony68.mjs +16 -19
  400. package/dist/harmony68.mjs.map +1 -1
  401. package/dist/harmony69.cjs +16 -13
  402. package/dist/harmony69.cjs.map +1 -1
  403. package/dist/harmony69.mjs +16 -13
  404. package/dist/harmony69.mjs.map +1 -1
  405. package/dist/harmony70.cjs +15 -15
  406. package/dist/harmony70.cjs.map +1 -1
  407. package/dist/harmony70.mjs +16 -16
  408. package/dist/harmony70.mjs.map +1 -1
  409. package/dist/harmony71.cjs +15 -16
  410. package/dist/harmony71.cjs.map +1 -1
  411. package/dist/harmony71.mjs +16 -17
  412. package/dist/harmony71.mjs.map +1 -1
  413. package/dist/harmony72.cjs +15 -20
  414. package/dist/harmony72.cjs.map +1 -1
  415. package/dist/harmony72.mjs +15 -20
  416. package/dist/harmony72.mjs.map +1 -1
  417. package/dist/harmony73.cjs +16 -19
  418. package/dist/harmony73.cjs.map +1 -1
  419. package/dist/harmony73.mjs +16 -19
  420. package/dist/harmony73.mjs.map +1 -1
  421. package/dist/harmony74.cjs +15 -8
  422. package/dist/harmony74.cjs.map +1 -1
  423. package/dist/harmony74.mjs +15 -8
  424. package/dist/harmony74.mjs.map +1 -1
  425. package/dist/harmony75.cjs +16 -9
  426. package/dist/harmony75.cjs.map +1 -1
  427. package/dist/harmony75.mjs +16 -9
  428. package/dist/harmony75.mjs.map +1 -1
  429. package/dist/harmony76.cjs +14 -9
  430. package/dist/harmony76.cjs.map +1 -1
  431. package/dist/harmony76.mjs +14 -9
  432. package/dist/harmony76.mjs.map +1 -1
  433. package/dist/harmony77.cjs +14 -9
  434. package/dist/harmony77.cjs.map +1 -1
  435. package/dist/harmony77.mjs +14 -9
  436. package/dist/harmony77.mjs.map +1 -1
  437. package/dist/harmony78.cjs +124 -15
  438. package/dist/harmony78.cjs.map +1 -1
  439. package/dist/harmony78.mjs +124 -15
  440. package/dist/harmony78.mjs.map +1 -1
  441. package/dist/harmony79.cjs +82 -14
  442. package/dist/harmony79.cjs.map +1 -1
  443. package/dist/harmony79.mjs +82 -14
  444. package/dist/harmony79.mjs.map +1 -1
  445. package/dist/harmony80.cjs +6 -14
  446. package/dist/harmony80.cjs.map +1 -1
  447. package/dist/harmony80.mjs +6 -14
  448. package/dist/harmony80.mjs.map +1 -1
  449. package/dist/harmony81.cjs +28 -14
  450. package/dist/harmony81.cjs.map +1 -1
  451. package/dist/harmony81.mjs +28 -14
  452. package/dist/harmony81.mjs.map +1 -1
  453. package/dist/harmony82.cjs +24 -14
  454. package/dist/harmony82.cjs.map +1 -1
  455. package/dist/harmony82.mjs +24 -14
  456. package/dist/harmony82.mjs.map +1 -1
  457. package/dist/harmony83.cjs +141 -8
  458. package/dist/harmony83.cjs.map +1 -1
  459. package/dist/harmony83.mjs +141 -8
  460. package/dist/harmony83.mjs.map +1 -1
  461. package/dist/harmony84.cjs +37 -11
  462. package/dist/harmony84.cjs.map +1 -1
  463. package/dist/harmony84.mjs +37 -11
  464. package/dist/harmony84.mjs.map +1 -1
  465. package/dist/harmony85.cjs +26 -11
  466. package/dist/harmony85.cjs.map +1 -1
  467. package/dist/harmony85.mjs +26 -11
  468. package/dist/harmony85.mjs.map +1 -1
  469. package/dist/harmony86.cjs +4 -9
  470. package/dist/harmony86.cjs.map +1 -1
  471. package/dist/harmony86.mjs +4 -9
  472. package/dist/harmony86.mjs.map +1 -1
  473. package/dist/harmony87.cjs +84 -9
  474. package/dist/harmony87.cjs.map +1 -1
  475. package/dist/harmony87.mjs +84 -9
  476. package/dist/harmony87.mjs.map +1 -1
  477. package/dist/harmony88.cjs +47 -9
  478. package/dist/harmony88.cjs.map +1 -1
  479. package/dist/harmony88.mjs +47 -9
  480. package/dist/harmony88.mjs.map +1 -1
  481. package/dist/harmony89.cjs +18 -88
  482. package/dist/harmony89.cjs.map +1 -1
  483. package/dist/harmony89.mjs +18 -88
  484. package/dist/harmony89.mjs.map +1 -1
  485. package/dist/harmony94.cjs +1 -1
  486. package/dist/harmony94.mjs +1 -1
  487. package/dist/harmony96.cjs +2 -2
  488. package/dist/harmony96.mjs +2 -2
  489. package/dist/harmony99.cjs +4 -4
  490. package/dist/harmony99.mjs +4 -4
  491. package/dist/types/src/features/publicApi/teamUsers.d.ts +5 -19
  492. package/dist/types/src/features/publicApi/types/teamUserTypes.d.ts +8 -32
  493. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"harmony115.cjs","sources":["../src/components/Sidebar/Widgets/HelpMenu/HelpMenu.tsx"],"sourcesContent":["import type { HelpMenuConfig } from '@components/Sidebar/types'\nimport { HelpCenterIcon, Menu, MenuDivider, MenuItem, MenuList, Tooltip } from '@lokalise/louis'\nimport clsx from 'clsx'\nimport styles from './HelpMenu.module.css'\n\n/**\n * Help menu component that provides links to tutorials, documentation, support, and more.\n *\n * @example\n * ```\n * <HelpMenu\n * contactSupport={{ onClick: handleContactSupport }}\n * keyboardShortcuts={{ onClick: handleShowShortcuts, label: '⌘K' }}\n * />\n * ```\n */\n\nexport const HelpMenu = ({ contactSupport, keyboardShortcuts }: HelpMenuConfig) => {\n\treturn (\n\t\t<Menu\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\tdata-testid=\"sidebar-help-menu-button\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<HelpCenterIcon 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\">\n\t\t\t\t<MenuItem href=\"https://lokalise.com/blog/category/tutorials/\" target=\"_blank\">\n\t\t\t\t\tTutorials\n\t\t\t\t</MenuItem>\n\t\t\t\t{contactSupport && <MenuItem onClick={contactSupport.onClick}>Contact support</MenuItem>}\n\t\t\t\t<MenuItem href=\"https://docs.lokalise.com/en/\" target=\"_blank\">\n\t\t\t\t\tDocumentation\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuDivider />\n\t\t\t\t{keyboardShortcuts && (\n\t\t\t\t\t<MenuItem className={styles.shortcutMenu} onClick={keyboardShortcuts.onClick}>\n\t\t\t\t\t\tKeyboard shortcuts{' '}\n\t\t\t\t\t\t<span className={styles.shortcutLabel}>{keyboardShortcuts.label}</span>\n\t\t\t\t\t</MenuItem>\n\t\t\t\t)}\n\t\t\t\t<MenuItem\n\t\t\t\t\thref=\"https://developers.lokalise.com/reference/lokalise-rest-api\"\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t>\n\t\t\t\t\tAPI reference\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuItem href=\"https://github.com/lokalise/lokalise-cli-2-go\" target=\"_blank\">\n\t\t\t\t\tCLI tool\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuDivider />\n\t\t\t\t<MenuItem href=\"https://lokalise.com/blog/category/product-updates/\" target=\"_blank\">\n\t\t\t\t\tWhat’s new\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuItem href=\"https://lokalise.com/blog/\" target=\"_blank\">\n\t\t\t\t\tBlog\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuItem href=\"https://lokalise.com/product/apps\" target=\"_blank\">\n\t\t\t\t\tApps\n\t\t\t\t</MenuItem>\n\t\t\t</MenuList>\n\t\t</Menu>\n\t)\n}\n"],"names":["jsx","Menu","Tooltip","clsx","styles","HelpCenterIcon","jsxs","MenuList","MenuItem","MenuDivider"],"mappings":";;;;;;AAiBO,MAAM,WAAW,CAAC,EAAE,gBAAgB,wBAAwC;AAEjF,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,gBAAA,QAAO,gBAAgB;AAAA,YACtC,CAACA,gBAAAA,QAAO,oBAAoB,GAAG;AAAA,UAAA,CAC/B;AAAA,UACD,eAAY;AAAA,UAEZ,UAAAJ,2BAAAA,IAACK,MAAAA,gBAAe,EAAA,MAAK,OAAO,CAAA;AAAA,QAAA;AAAA,MAAA,GAE9B;AAAA,MAGD,UAAAC,2BAAA,KAACC,MAAS,UAAA,EAAA,WAAU,eACnB,UAAA;AAAA,QAAAP,+BAACQ,MAAAA,UAAS,EAAA,MAAK,iDAAgD,QAAO,UAAS,UAE/E,aAAA;AAAA,QACC,kBAAmBR,2BAAAA,IAAAQ,MAAAA,UAAA,EAAS,SAAS,eAAe,SAAS,UAAe,mBAAA;AAAA,uCAC5EA,MAAAA,UAAS,EAAA,MAAK,iCAAgC,QAAO,UAAS,UAE/D,iBAAA;AAAA,uCACCC,MAAY,aAAA,EAAA;AAAA,QACZ,qDACCD,gBAAS,EAAA,WAAWJ,gBAAAA,QAAO,cAAc,SAAS,kBAAkB,SAAS,UAAA;AAAA,UAAA;AAAA,UAC1D;AAAA,yCAClB,QAAK,EAAA,WAAWA,gBAAAA,QAAO,eAAgB,4BAAkB,MAAM,CAAA;AAAA,QAAA,GACjE;AAAA,QAEDJ,2BAAA;AAAA,UAACQ,MAAA;AAAA,UAAA;AAAA,YACA,MAAK;AAAA,YACL,QAAO;AAAA,YACP,UAAA;AAAA,UAAA;AAAA,QAED;AAAA,uCACCA,MAAAA,UAAS,EAAA,MAAK,iDAAgD,QAAO,UAAS,UAE/E,YAAA;AAAA,uCACCC,MAAY,aAAA,EAAA;AAAA,uCACZD,MAAAA,UAAS,EAAA,MAAK,uDAAsD,QAAO,UAAS,UAErF,cAAA;AAAA,uCACCA,MAAAA,UAAS,EAAA,MAAK,8BAA6B,QAAO,UAAS,UAE5D,QAAA;AAAA,uCACCA,MAAAA,UAAS,EAAA,MAAK,qCAAoC,QAAO,UAAS,UAEnE,OAAA,CAAA;AAAA,MAAA,EACD,CAAA;AAAA,IAAA;AAAA,EACD;AAEF;;"}
1
+ {"version":3,"file":"harmony115.cjs","sources":["../src/utils/user/permissions.ts"],"sourcesContent":["import type { JwtTokenPayload } from '@features/auth/core/types/jwtTokenPayload'\nimport { isFreePlan, isTrialPlan } from '@utils'\n\ntype JwtCheckFn = (jwt: JwtTokenPayload) => boolean\n\nconst withJwtCheck =\n\t(checkFn: JwtCheckFn) =>\n\t(jwtPayload: JwtTokenPayload | null | undefined): boolean =>\n\t\t!!jwtPayload && checkFn(jwtPayload)\n\nexport const canAccessStyleGuide = withJwtCheck((jwt) =>\n\t['admin', 'biller', 'owner'].includes(jwt.userTeamRole),\n)\n\nexport const canAccessReporting = withJwtCheck((jwt) =>\n\t['admin', 'owner'].includes(jwt.userTeamRole),\n)\n\nexport const canAccessTeamSettings = withJwtCheck(\n\t(jwt) =>\n\t\t['admin', 'biller', 'owner'].includes(jwt.userTeamRole) &&\n\t\tjwt.isFullyAuthenticated &&\n\t\t!jwt.isEndOfTrialActive,\n)\n\nexport const canCreateTeam = withJwtCheck(\n\t(jwt) =>\n\t\t['admin', 'owner'].includes(jwt.userTeamRole) &&\n\t\tjwt.isFullyAuthenticated &&\n\t\t!jwt.isEndOfTrialActive,\n)\n\nexport const canUpgradePlan = withJwtCheck(\n\t(jwt) =>\n\t\t['owner', 'biller'].includes(jwt.userTeamRole) &&\n\t\tjwt.isFullyAuthenticated &&\n\t\t(isFreePlan(jwt.planId) || isTrialPlan(jwt.planId)),\n)\n\nexport const canChangeBilling = withJwtCheck(\n\t(jwt) =>\n\t\t['admin', 'owner', 'biller'].includes(jwt.userTeamRole) &&\n\t\tjwt.isFullyAuthenticated &&\n\t\t!jwt.isTeamSuspended &&\n\t\t!jwt.isEndOfTrialActive,\n)\n\nexport const canAccessProviderDashboard = withJwtCheck(\n\t(jwt) => jwt.isProviderAlpha && !jwt.isTeamSuspended && jwt.isFullyAuthenticated,\n)\n\nexport const canAccessProfileSettings = withJwtCheck(\n\t(jwt) => !jwt.isEndOfTrialActive && !jwt.isTeamSuspended,\n)\n"],"names":["isFreePlan","isTrialPlan"],"mappings":";;;AAKA,MAAM,eACL,CAAC,YACD,CAAC,eACA,CAAC,CAAC,cAAc,QAAQ,UAAU;AAE7B,MAAM,sBAAsB;AAAA,EAAa,CAAC,QAChD,CAAC,SAAS,UAAU,OAAO,EAAE,SAAS,IAAI,YAAY;AACvD;AAEO,MAAM,qBAAqB;AAAA,EAAa,CAAC,QAC/C,CAAC,SAAS,OAAO,EAAE,SAAS,IAAI,YAAY;AAC7C;AAEO,MAAM,wBAAwB;AAAA,EACpC,CAAC,QACA,CAAC,SAAS,UAAU,OAAO,EAAE,SAAS,IAAI,YAAY,KACtD,IAAI,wBACJ,CAAC,IAAI;AACP;AAEO,MAAM,gBAAgB;AAAA,EAC5B,CAAC,QACA,CAAC,SAAS,OAAO,EAAE,SAAS,IAAI,YAAY,KAC5C,IAAI,wBACJ,CAAC,IAAI;AACP;AAEO,MAAM,iBAAiB;AAAA,EAC7B,CAAC,QACA,CAAC,SAAS,QAAQ,EAAE,SAAS,IAAI,YAAY,KAC7C,IAAI,yBACHA,KAAW,WAAA,IAAI,MAAM,KAAKC,KAAA,YAAY,IAAI,MAAM;AACnD;AAEO,MAAM,mBAAmB;AAAA,EAC/B,CAAC,QACA,CAAC,SAAS,SAAS,QAAQ,EAAE,SAAS,IAAI,YAAY,KACtD,IAAI,wBACJ,CAAC,IAAI,mBACL,CAAC,IAAI;AACP;AAEO,MAAM,6BAA6B;AAAA,EACzC,CAAC,QAAQ,IAAI,mBAAmB,CAAC,IAAI,mBAAmB,IAAI;AAC7D;AAEO,MAAM,2BAA2B;AAAA,EACvC,CAAC,QAAQ,CAAC,IAAI,sBAAsB,CAAC,IAAI;AAC1C;;;;;;;;;"}
@@ -1,50 +1,37 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
- import { Menu, MenuList, MenuItem, MenuDivider, Tooltip, HelpCenterIcon } from "@lokalise/louis";
3
- import { clsx } from "./harmony92.mjs";
4
- import styles from "./harmony144.mjs";
5
- const HelpMenu = ({ contactSupport, keyboardShortcuts }) => {
6
- return /* @__PURE__ */ jsx(
7
- Menu,
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
- "data-testid": "sidebar-help-menu-button",
17
- children: /* @__PURE__ */ jsx(HelpCenterIcon, { size: "25px" })
18
- }
19
- ) }),
20
- children: /* @__PURE__ */ jsxs(MenuList, { placement: "right-start", children: [
21
- /* @__PURE__ */ jsx(MenuItem, { href: "https://lokalise.com/blog/category/tutorials/", target: "_blank", children: "Tutorials" }),
22
- contactSupport && /* @__PURE__ */ jsx(MenuItem, { onClick: contactSupport.onClick, children: "Contact support" }),
23
- /* @__PURE__ */ jsx(MenuItem, { href: "https://docs.lokalise.com/en/", target: "_blank", children: "Documentation" }),
24
- /* @__PURE__ */ jsx(MenuDivider, {}),
25
- keyboardShortcuts && /* @__PURE__ */ jsxs(MenuItem, { className: styles.shortcutMenu, onClick: keyboardShortcuts.onClick, children: [
26
- "Keyboard shortcuts",
27
- " ",
28
- /* @__PURE__ */ jsx("span", { className: styles.shortcutLabel, children: keyboardShortcuts.label })
29
- ] }),
30
- /* @__PURE__ */ jsx(
31
- MenuItem,
32
- {
33
- href: "https://developers.lokalise.com/reference/lokalise-rest-api",
34
- target: "_blank",
35
- children: "API reference"
36
- }
37
- ),
38
- /* @__PURE__ */ jsx(MenuItem, { href: "https://github.com/lokalise/lokalise-cli-2-go", target: "_blank", children: "CLI tool" }),
39
- /* @__PURE__ */ jsx(MenuDivider, {}),
40
- /* @__PURE__ */ jsx(MenuItem, { href: "https://lokalise.com/blog/category/product-updates/", target: "_blank", children: "What’s new" }),
41
- /* @__PURE__ */ jsx(MenuItem, { href: "https://lokalise.com/blog/", target: "_blank", children: "Blog" }),
42
- /* @__PURE__ */ jsx(MenuItem, { href: "https://lokalise.com/product/apps", target: "_blank", children: "Apps" })
43
- ] })
44
- }
45
- );
46
- };
1
+ import { isFreePlan, isTrialPlan } from "./harmony11.mjs";
2
+ const withJwtCheck = (checkFn) => (jwtPayload) => !!jwtPayload && checkFn(jwtPayload);
3
+ const canAccessStyleGuide = withJwtCheck(
4
+ (jwt) => ["admin", "biller", "owner"].includes(jwt.userTeamRole)
5
+ );
6
+ const canAccessReporting = withJwtCheck(
7
+ (jwt) => ["admin", "owner"].includes(jwt.userTeamRole)
8
+ );
9
+ const canAccessTeamSettings = withJwtCheck(
10
+ (jwt) => ["admin", "biller", "owner"].includes(jwt.userTeamRole) && jwt.isFullyAuthenticated && !jwt.isEndOfTrialActive
11
+ );
12
+ const canCreateTeam = withJwtCheck(
13
+ (jwt) => ["admin", "owner"].includes(jwt.userTeamRole) && jwt.isFullyAuthenticated && !jwt.isEndOfTrialActive
14
+ );
15
+ const canUpgradePlan = withJwtCheck(
16
+ (jwt) => ["owner", "biller"].includes(jwt.userTeamRole) && jwt.isFullyAuthenticated && (isFreePlan(jwt.planId) || isTrialPlan(jwt.planId))
17
+ );
18
+ const canChangeBilling = withJwtCheck(
19
+ (jwt) => ["admin", "owner", "biller"].includes(jwt.userTeamRole) && jwt.isFullyAuthenticated && !jwt.isTeamSuspended && !jwt.isEndOfTrialActive
20
+ );
21
+ const canAccessProviderDashboard = withJwtCheck(
22
+ (jwt) => jwt.isProviderAlpha && !jwt.isTeamSuspended && jwt.isFullyAuthenticated
23
+ );
24
+ const canAccessProfileSettings = withJwtCheck(
25
+ (jwt) => !jwt.isEndOfTrialActive && !jwt.isTeamSuspended
26
+ );
47
27
  export {
48
- HelpMenu
28
+ canAccessProfileSettings,
29
+ canAccessProviderDashboard,
30
+ canAccessReporting,
31
+ canAccessStyleGuide,
32
+ canAccessTeamSettings,
33
+ canChangeBilling,
34
+ canCreateTeam,
35
+ canUpgradePlan
49
36
  };
50
37
  //# sourceMappingURL=harmony115.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony115.mjs","sources":["../src/components/Sidebar/Widgets/HelpMenu/HelpMenu.tsx"],"sourcesContent":["import type { HelpMenuConfig } from '@components/Sidebar/types'\nimport { HelpCenterIcon, Menu, MenuDivider, MenuItem, MenuList, Tooltip } from '@lokalise/louis'\nimport clsx from 'clsx'\nimport styles from './HelpMenu.module.css'\n\n/**\n * Help menu component that provides links to tutorials, documentation, support, and more.\n *\n * @example\n * ```\n * <HelpMenu\n * contactSupport={{ onClick: handleContactSupport }}\n * keyboardShortcuts={{ onClick: handleShowShortcuts, label: '⌘K' }}\n * />\n * ```\n */\n\nexport const HelpMenu = ({ contactSupport, keyboardShortcuts }: HelpMenuConfig) => {\n\treturn (\n\t\t<Menu\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\tdata-testid=\"sidebar-help-menu-button\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<HelpCenterIcon 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\">\n\t\t\t\t<MenuItem href=\"https://lokalise.com/blog/category/tutorials/\" target=\"_blank\">\n\t\t\t\t\tTutorials\n\t\t\t\t</MenuItem>\n\t\t\t\t{contactSupport && <MenuItem onClick={contactSupport.onClick}>Contact support</MenuItem>}\n\t\t\t\t<MenuItem href=\"https://docs.lokalise.com/en/\" target=\"_blank\">\n\t\t\t\t\tDocumentation\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuDivider />\n\t\t\t\t{keyboardShortcuts && (\n\t\t\t\t\t<MenuItem className={styles.shortcutMenu} onClick={keyboardShortcuts.onClick}>\n\t\t\t\t\t\tKeyboard shortcuts{' '}\n\t\t\t\t\t\t<span className={styles.shortcutLabel}>{keyboardShortcuts.label}</span>\n\t\t\t\t\t</MenuItem>\n\t\t\t\t)}\n\t\t\t\t<MenuItem\n\t\t\t\t\thref=\"https://developers.lokalise.com/reference/lokalise-rest-api\"\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t>\n\t\t\t\t\tAPI reference\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuItem href=\"https://github.com/lokalise/lokalise-cli-2-go\" target=\"_blank\">\n\t\t\t\t\tCLI tool\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuDivider />\n\t\t\t\t<MenuItem href=\"https://lokalise.com/blog/category/product-updates/\" target=\"_blank\">\n\t\t\t\t\tWhat’s new\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuItem href=\"https://lokalise.com/blog/\" target=\"_blank\">\n\t\t\t\t\tBlog\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuItem href=\"https://lokalise.com/product/apps\" target=\"_blank\">\n\t\t\t\t\tApps\n\t\t\t\t</MenuItem>\n\t\t\t</MenuList>\n\t\t</Menu>\n\t)\n}\n"],"names":[],"mappings":";;;;AAiBO,MAAM,WAAW,CAAC,EAAE,gBAAgB,wBAAwC;AAEjF,SAAA;AAAA,IAAC;AAAA,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,UACD,eAAY;AAAA,UAEZ,UAAA,oBAAC,gBAAe,EAAA,MAAK,OAAO,CAAA;AAAA,QAAA;AAAA,MAAA,GAE9B;AAAA,MAGD,UAAA,qBAAC,UAAS,EAAA,WAAU,eACnB,UAAA;AAAA,QAAA,oBAAC,UAAS,EAAA,MAAK,iDAAgD,QAAO,UAAS,UAE/E,aAAA;AAAA,QACC,kBAAmB,oBAAA,UAAA,EAAS,SAAS,eAAe,SAAS,UAAe,mBAAA;AAAA,4BAC5E,UAAS,EAAA,MAAK,iCAAgC,QAAO,UAAS,UAE/D,iBAAA;AAAA,4BACC,aAAY,EAAA;AAAA,QACZ,0CACC,UAAS,EAAA,WAAW,OAAO,cAAc,SAAS,kBAAkB,SAAS,UAAA;AAAA,UAAA;AAAA,UAC1D;AAAA,8BAClB,QAAK,EAAA,WAAW,OAAO,eAAgB,4BAAkB,MAAM,CAAA;AAAA,QAAA,GACjE;AAAA,QAED;AAAA,UAAC;AAAA,UAAA;AAAA,YACA,MAAK;AAAA,YACL,QAAO;AAAA,YACP,UAAA;AAAA,UAAA;AAAA,QAED;AAAA,4BACC,UAAS,EAAA,MAAK,iDAAgD,QAAO,UAAS,UAE/E,YAAA;AAAA,4BACC,aAAY,EAAA;AAAA,4BACZ,UAAS,EAAA,MAAK,uDAAsD,QAAO,UAAS,UAErF,cAAA;AAAA,4BACC,UAAS,EAAA,MAAK,8BAA6B,QAAO,UAAS,UAE5D,QAAA;AAAA,4BACC,UAAS,EAAA,MAAK,qCAAoC,QAAO,UAAS,UAEnE,OAAA,CAAA;AAAA,MAAA,EACD,CAAA;AAAA,IAAA;AAAA,EACD;AAEF;"}
1
+ {"version":3,"file":"harmony115.mjs","sources":["../src/utils/user/permissions.ts"],"sourcesContent":["import type { JwtTokenPayload } from '@features/auth/core/types/jwtTokenPayload'\nimport { isFreePlan, isTrialPlan } from '@utils'\n\ntype JwtCheckFn = (jwt: JwtTokenPayload) => boolean\n\nconst withJwtCheck =\n\t(checkFn: JwtCheckFn) =>\n\t(jwtPayload: JwtTokenPayload | null | undefined): boolean =>\n\t\t!!jwtPayload && checkFn(jwtPayload)\n\nexport const canAccessStyleGuide = withJwtCheck((jwt) =>\n\t['admin', 'biller', 'owner'].includes(jwt.userTeamRole),\n)\n\nexport const canAccessReporting = withJwtCheck((jwt) =>\n\t['admin', 'owner'].includes(jwt.userTeamRole),\n)\n\nexport const canAccessTeamSettings = withJwtCheck(\n\t(jwt) =>\n\t\t['admin', 'biller', 'owner'].includes(jwt.userTeamRole) &&\n\t\tjwt.isFullyAuthenticated &&\n\t\t!jwt.isEndOfTrialActive,\n)\n\nexport const canCreateTeam = withJwtCheck(\n\t(jwt) =>\n\t\t['admin', 'owner'].includes(jwt.userTeamRole) &&\n\t\tjwt.isFullyAuthenticated &&\n\t\t!jwt.isEndOfTrialActive,\n)\n\nexport const canUpgradePlan = withJwtCheck(\n\t(jwt) =>\n\t\t['owner', 'biller'].includes(jwt.userTeamRole) &&\n\t\tjwt.isFullyAuthenticated &&\n\t\t(isFreePlan(jwt.planId) || isTrialPlan(jwt.planId)),\n)\n\nexport const canChangeBilling = withJwtCheck(\n\t(jwt) =>\n\t\t['admin', 'owner', 'biller'].includes(jwt.userTeamRole) &&\n\t\tjwt.isFullyAuthenticated &&\n\t\t!jwt.isTeamSuspended &&\n\t\t!jwt.isEndOfTrialActive,\n)\n\nexport const canAccessProviderDashboard = withJwtCheck(\n\t(jwt) => jwt.isProviderAlpha && !jwt.isTeamSuspended && jwt.isFullyAuthenticated,\n)\n\nexport const canAccessProfileSettings = withJwtCheck(\n\t(jwt) => !jwt.isEndOfTrialActive && !jwt.isTeamSuspended,\n)\n"],"names":[],"mappings":";AAKA,MAAM,eACL,CAAC,YACD,CAAC,eACA,CAAC,CAAC,cAAc,QAAQ,UAAU;AAE7B,MAAM,sBAAsB;AAAA,EAAa,CAAC,QAChD,CAAC,SAAS,UAAU,OAAO,EAAE,SAAS,IAAI,YAAY;AACvD;AAEO,MAAM,qBAAqB;AAAA,EAAa,CAAC,QAC/C,CAAC,SAAS,OAAO,EAAE,SAAS,IAAI,YAAY;AAC7C;AAEO,MAAM,wBAAwB;AAAA,EACpC,CAAC,QACA,CAAC,SAAS,UAAU,OAAO,EAAE,SAAS,IAAI,YAAY,KACtD,IAAI,wBACJ,CAAC,IAAI;AACP;AAEO,MAAM,gBAAgB;AAAA,EAC5B,CAAC,QACA,CAAC,SAAS,OAAO,EAAE,SAAS,IAAI,YAAY,KAC5C,IAAI,wBACJ,CAAC,IAAI;AACP;AAEO,MAAM,iBAAiB;AAAA,EAC7B,CAAC,QACA,CAAC,SAAS,QAAQ,EAAE,SAAS,IAAI,YAAY,KAC7C,IAAI,yBACH,WAAW,IAAI,MAAM,KAAK,YAAY,IAAI,MAAM;AACnD;AAEO,MAAM,mBAAmB;AAAA,EAC/B,CAAC,QACA,CAAC,SAAS,SAAS,QAAQ,EAAE,SAAS,IAAI,YAAY,KACtD,IAAI,wBACJ,CAAC,IAAI,mBACL,CAAC,IAAI;AACP;AAEO,MAAM,6BAA6B;AAAA,EACzC,CAAC,QAAQ,IAAI,mBAAmB,CAAC,IAAI,mBAAmB,IAAI;AAC7D;AAEO,MAAM,2BAA2B;AAAA,EACvC,CAAC,QAAQ,CAAC,IAAI,sBAAsB,CAAC,IAAI;AAC1C;"}
@@ -1,12 +1,12 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const sidebarContainer = "_sidebarContainer_1x0gj_1";
4
- const sidebarSkeleton = "_sidebarSkeleton_1x0gj_16";
5
- const styles = {
6
- sidebarContainer,
7
- sidebarSkeleton
8
- };
9
- exports.default = styles;
10
- exports.sidebarContainer = sidebarContainer;
11
- exports.sidebarSkeleton = sidebarSkeleton;
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const Avatar_module = require("./harmony143.cjs");
5
+ const Avatar = ({
6
+ src,
7
+ href = "/",
8
+ ariaLabel = "Lokalise App Home",
9
+ alt = "Lokalise Logo"
10
+ }) => /* @__PURE__ */ jsxRuntime.jsx("a", { className: Avatar_module.default.logoLink, href, "aria-label": ariaLabel, children: /* @__PURE__ */ jsxRuntime.jsx("img", { src, alt }) });
11
+ exports.Avatar = Avatar;
12
12
  //# sourceMappingURL=harmony116.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony116.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
1
+ {"version":3,"file":"harmony116.cjs","sources":["../src/components/Sidebar/Widgets/Avatar/Avatar.tsx"],"sourcesContent":["import styles from './Avatar.module.css'\n\ntype AvatarProps = {\n\t/** URL of the avatar/logo image */\n\tsrc: string\n\t/** Link destination when avatar is clicked. Defaults to '/' */\n\thref?: string\n\t/** Accessibility label for the avatar link. Defaults to 'Home' */\n\tariaLabel?: string\n\t/** Alt text for the avatar image. Defaults to 'Lokalise' */\n\talt?: string\n}\n\n/**\n * Display company main avatar / logo in the top section of the Sidebar.\n * Used as the main branding element and home navigation link.\n *\n * @example\n * ```\n * <Avatar src=\"/logo.png\" href=\"/\" ariaLabel=\"Home\" alt=\"\" />\n * ```\n */\n\nexport const Avatar = ({\n\tsrc,\n\thref = '/',\n\tariaLabel = 'Lokalise App Home',\n\talt = 'Lokalise Logo',\n}: AvatarProps) => (\n\t<a className={styles.logoLink} href={href} aria-label={ariaLabel}>\n\t\t<img src={src} alt={alt} />\n\t</a>\n)\n"],"names":["jsx","styles"],"mappings":";;;;AAuBO,MAAM,SAAS,CAAC;AAAA,EACtB;AAAA,EACA,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,MAAM;AACP,MACEA,2BAAAA,IAAA,KAAA,EAAE,WAAWC,cAAA,QAAO,UAAU,MAAY,cAAY,WACtD,UAACD,2BAAAA,IAAA,OAAA,EAAI,KAAU,IAAA,CAAU,EAC1B,CAAA;;"}
@@ -1,12 +1,12 @@
1
- const sidebarContainer = "_sidebarContainer_1x0gj_1";
2
- const sidebarSkeleton = "_sidebarSkeleton_1x0gj_16";
3
- const styles = {
4
- sidebarContainer,
5
- sidebarSkeleton
6
- };
1
+ import { jsx } from "react/jsx-runtime";
2
+ import styles from "./harmony143.mjs";
3
+ const Avatar = ({
4
+ src,
5
+ href = "/",
6
+ ariaLabel = "Lokalise App Home",
7
+ alt = "Lokalise Logo"
8
+ }) => /* @__PURE__ */ jsx("a", { className: styles.logoLink, href, "aria-label": ariaLabel, children: /* @__PURE__ */ jsx("img", { src, alt }) });
7
9
  export {
8
- styles as default,
9
- sidebarContainer,
10
- sidebarSkeleton
10
+ Avatar
11
11
  };
12
12
  //# sourceMappingURL=harmony116.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony116.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
1
+ {"version":3,"file":"harmony116.mjs","sources":["../src/components/Sidebar/Widgets/Avatar/Avatar.tsx"],"sourcesContent":["import styles from './Avatar.module.css'\n\ntype AvatarProps = {\n\t/** URL of the avatar/logo image */\n\tsrc: string\n\t/** Link destination when avatar is clicked. Defaults to '/' */\n\thref?: string\n\t/** Accessibility label for the avatar link. Defaults to 'Home' */\n\tariaLabel?: string\n\t/** Alt text for the avatar image. Defaults to 'Lokalise' */\n\talt?: string\n}\n\n/**\n * Display company main avatar / logo in the top section of the Sidebar.\n * Used as the main branding element and home navigation link.\n *\n * @example\n * ```\n * <Avatar src=\"/logo.png\" href=\"/\" ariaLabel=\"Home\" alt=\"\" />\n * ```\n */\n\nexport const Avatar = ({\n\tsrc,\n\thref = '/',\n\tariaLabel = 'Lokalise App Home',\n\talt = 'Lokalise Logo',\n}: AvatarProps) => (\n\t<a className={styles.logoLink} href={href} aria-label={ariaLabel}>\n\t\t<img src={src} alt={alt} />\n\t</a>\n)\n"],"names":[],"mappings":";;AAuBO,MAAM,SAAS,CAAC;AAAA,EACtB;AAAA,EACA,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,MAAM;AACP,MACE,oBAAA,KAAA,EAAE,WAAW,OAAO,UAAU,MAAY,cAAY,WACtD,UAAC,oBAAA,OAAA,EAAI,KAAU,IAAA,CAAU,EAC1B,CAAA;"}
@@ -2,13 +2,49 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const louis = require("@lokalise/louis");
5
- const styles_module = require("./harmony118.cjs");
6
- const NavItemContents = ({ label, badge, novel }) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-1", children: [
7
- /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
8
- /* @__PURE__ */ jsxRuntime.jsx("span", { children: label }),
9
- !!badge && /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles_module.default.badge, "aria-label": `${badge} items requiring attention`, children: badge > 9 ? "9+" : badge })
10
- ] }),
11
- !!novel && /* @__PURE__ */ jsxRuntime.jsx(louis.Tag, { className: styles_module.default.tag, children: novel })
12
- ] });
13
- exports.NavItemContents = NavItemContents;
5
+ const clsx = require("./harmony92.cjs");
6
+ const HelpMenu_module = require("./harmony144.cjs");
7
+ const HelpMenu = ({ contactSupport, keyboardShortcuts }) => {
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(HelpMenu_module.default.dropdownButton, {
16
+ [HelpMenu_module.default.dropdownButtonActive]: opened
17
+ }),
18
+ "data-testid": "sidebar-help-menu-button",
19
+ children: /* @__PURE__ */ jsxRuntime.jsx(louis.HelpCenterIcon, { size: "25px" })
20
+ }
21
+ ) }),
22
+ children: /* @__PURE__ */ jsxRuntime.jsxs(louis.MenuList, { placement: "right-start", children: [
23
+ /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { href: "https://lokalise.com/blog/category/tutorials/", target: "_blank", children: "Tutorials" }),
24
+ contactSupport && /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { onClick: contactSupport.onClick, children: "Contact support" }),
25
+ /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { href: "https://docs.lokalise.com/en/", target: "_blank", children: "Documentation" }),
26
+ /* @__PURE__ */ jsxRuntime.jsx(louis.MenuDivider, {}),
27
+ keyboardShortcuts && /* @__PURE__ */ jsxRuntime.jsxs(louis.MenuItem, { className: HelpMenu_module.default.shortcutMenu, onClick: keyboardShortcuts.onClick, children: [
28
+ "Keyboard shortcuts",
29
+ " ",
30
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: HelpMenu_module.default.shortcutLabel, children: keyboardShortcuts.label })
31
+ ] }),
32
+ /* @__PURE__ */ jsxRuntime.jsx(
33
+ louis.MenuItem,
34
+ {
35
+ href: "https://developers.lokalise.com/reference/lokalise-rest-api",
36
+ target: "_blank",
37
+ children: "API reference"
38
+ }
39
+ ),
40
+ /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { href: "https://github.com/lokalise/lokalise-cli-2-go", target: "_blank", children: "CLI tool" }),
41
+ /* @__PURE__ */ jsxRuntime.jsx(louis.MenuDivider, {}),
42
+ /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { href: "https://lokalise.com/blog/category/product-updates/", target: "_blank", children: "What’s new" }),
43
+ /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { href: "https://lokalise.com/blog/", target: "_blank", children: "Blog" }),
44
+ /* @__PURE__ */ jsxRuntime.jsx(louis.MenuItem, { href: "https://lokalise.com/product/apps", target: "_blank", children: "Apps" })
45
+ ] })
46
+ }
47
+ );
48
+ };
49
+ exports.HelpMenu = HelpMenu;
14
50
  //# sourceMappingURL=harmony117.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony117.cjs","sources":["../src/components/NavigationPanel/components/NavigationTabs/NavigationTabsItem/NavItemContents.tsx"],"sourcesContent":["import { Tag } from '@lokalise/louis'\n\nimport classes from './styles.module.css'\n\ninterface NavItemContentProps {\n\tlabel: string\n\tbadge?: number\n\tnovel?: string\n}\nexport const NavItemContents = ({ label, badge, novel }: NavItemContentProps) => (\n\t<div className=\"flex gap-1\">\n\t\t<div>\n\t\t\t<span>{label}</span>\n\t\t\t{!!badge && (\n\t\t\t\t<div className={classes.badge} aria-label={`${badge} items requiring attention`}>\n\t\t\t\t\t{badge > 9 ? '9+' : badge}\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t\t{!!novel && <Tag className={classes.tag}>{novel}</Tag>}\n\t</div>\n)\n"],"names":["jsxs","jsx","classes","Tag"],"mappings":";;;;;AASa,MAAA,kBAAkB,CAAC,EAAE,OAAO,OAAO,YAC/CA,2BAAA,KAAC,OAAI,EAAA,WAAU,cACd,UAAA;AAAA,EAAAA,gCAAC,OACA,EAAA,UAAA;AAAA,IAAAC,2BAAAA,IAAC,UAAM,UAAM,MAAA,CAAA;AAAA,IACZ,CAAC,CAAC,SACFA,+BAAC,SAAI,WAAWC,cAAA,QAAQ,OAAO,cAAY,GAAG,KAAK,8BACjD,UAAQ,QAAA,IAAI,OAAO,MACrB,CAAA;AAAA,EAAA,GAEF;AAAA,EACC,CAAC,CAAC,SAASD,2BAAA,IAACE,aAAI,WAAWD,sBAAQ,KAAM,UAAM,MAAA,CAAA;AAAA,EACjD,CAAA;;"}
1
+ {"version":3,"file":"harmony117.cjs","sources":["../src/components/Sidebar/Widgets/HelpMenu/HelpMenu.tsx"],"sourcesContent":["import type { HelpMenuConfig } from '@components/Sidebar/types'\nimport { HelpCenterIcon, Menu, MenuDivider, MenuItem, MenuList, Tooltip } from '@lokalise/louis'\nimport clsx from 'clsx'\nimport styles from './HelpMenu.module.css'\n\n/**\n * Help menu component that provides links to tutorials, documentation, support, and more.\n *\n * @example\n * ```\n * <HelpMenu\n * contactSupport={{ onClick: handleContactSupport }}\n * keyboardShortcuts={{ onClick: handleShowShortcuts, label: '⌘K' }}\n * />\n * ```\n */\n\nexport const HelpMenu = ({ contactSupport, keyboardShortcuts }: HelpMenuConfig) => {\n\treturn (\n\t\t<Menu\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\tdata-testid=\"sidebar-help-menu-button\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<HelpCenterIcon 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\">\n\t\t\t\t<MenuItem href=\"https://lokalise.com/blog/category/tutorials/\" target=\"_blank\">\n\t\t\t\t\tTutorials\n\t\t\t\t</MenuItem>\n\t\t\t\t{contactSupport && <MenuItem onClick={contactSupport.onClick}>Contact support</MenuItem>}\n\t\t\t\t<MenuItem href=\"https://docs.lokalise.com/en/\" target=\"_blank\">\n\t\t\t\t\tDocumentation\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuDivider />\n\t\t\t\t{keyboardShortcuts && (\n\t\t\t\t\t<MenuItem className={styles.shortcutMenu} onClick={keyboardShortcuts.onClick}>\n\t\t\t\t\t\tKeyboard shortcuts{' '}\n\t\t\t\t\t\t<span className={styles.shortcutLabel}>{keyboardShortcuts.label}</span>\n\t\t\t\t\t</MenuItem>\n\t\t\t\t)}\n\t\t\t\t<MenuItem\n\t\t\t\t\thref=\"https://developers.lokalise.com/reference/lokalise-rest-api\"\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t>\n\t\t\t\t\tAPI reference\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuItem href=\"https://github.com/lokalise/lokalise-cli-2-go\" target=\"_blank\">\n\t\t\t\t\tCLI tool\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuDivider />\n\t\t\t\t<MenuItem href=\"https://lokalise.com/blog/category/product-updates/\" target=\"_blank\">\n\t\t\t\t\tWhat’s new\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuItem href=\"https://lokalise.com/blog/\" target=\"_blank\">\n\t\t\t\t\tBlog\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuItem href=\"https://lokalise.com/product/apps\" target=\"_blank\">\n\t\t\t\t\tApps\n\t\t\t\t</MenuItem>\n\t\t\t</MenuList>\n\t\t</Menu>\n\t)\n}\n"],"names":["jsx","Menu","Tooltip","clsx","styles","HelpCenterIcon","jsxs","MenuList","MenuItem","MenuDivider"],"mappings":";;;;;;AAiBO,MAAM,WAAW,CAAC,EAAE,gBAAgB,wBAAwC;AAEjF,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,gBAAA,QAAO,gBAAgB;AAAA,YACtC,CAACA,gBAAAA,QAAO,oBAAoB,GAAG;AAAA,UAAA,CAC/B;AAAA,UACD,eAAY;AAAA,UAEZ,UAAAJ,2BAAAA,IAACK,MAAAA,gBAAe,EAAA,MAAK,OAAO,CAAA;AAAA,QAAA;AAAA,MAAA,GAE9B;AAAA,MAGD,UAAAC,2BAAA,KAACC,MAAS,UAAA,EAAA,WAAU,eACnB,UAAA;AAAA,QAAAP,+BAACQ,MAAAA,UAAS,EAAA,MAAK,iDAAgD,QAAO,UAAS,UAE/E,aAAA;AAAA,QACC,kBAAmBR,2BAAAA,IAAAQ,MAAAA,UAAA,EAAS,SAAS,eAAe,SAAS,UAAe,mBAAA;AAAA,uCAC5EA,MAAAA,UAAS,EAAA,MAAK,iCAAgC,QAAO,UAAS,UAE/D,iBAAA;AAAA,uCACCC,MAAY,aAAA,EAAA;AAAA,QACZ,qDACCD,gBAAS,EAAA,WAAWJ,gBAAAA,QAAO,cAAc,SAAS,kBAAkB,SAAS,UAAA;AAAA,UAAA;AAAA,UAC1D;AAAA,yCAClB,QAAK,EAAA,WAAWA,gBAAAA,QAAO,eAAgB,4BAAkB,MAAM,CAAA;AAAA,QAAA,GACjE;AAAA,QAEDJ,2BAAA;AAAA,UAACQ,MAAA;AAAA,UAAA;AAAA,YACA,MAAK;AAAA,YACL,QAAO;AAAA,YACP,UAAA;AAAA,UAAA;AAAA,QAED;AAAA,uCACCA,MAAAA,UAAS,EAAA,MAAK,iDAAgD,QAAO,UAAS,UAE/E,YAAA;AAAA,uCACCC,MAAY,aAAA,EAAA;AAAA,uCACZD,MAAAA,UAAS,EAAA,MAAK,uDAAsD,QAAO,UAAS,UAErF,cAAA;AAAA,uCACCA,MAAAA,UAAS,EAAA,MAAK,8BAA6B,QAAO,UAAS,UAE5D,QAAA;AAAA,uCACCA,MAAAA,UAAS,EAAA,MAAK,qCAAoC,QAAO,UAAS,UAEnE,OAAA,CAAA;AAAA,MAAA,EACD,CAAA;AAAA,IAAA;AAAA,EACD;AAEF;;"}
@@ -1,14 +1,50 @@
1
- import { jsxs, jsx } from "react/jsx-runtime";
2
- import { Tag } from "@lokalise/louis";
3
- import classes from "./harmony118.mjs";
4
- const NavItemContents = ({ label, badge, novel }) => /* @__PURE__ */ jsxs("div", { className: "flex gap-1", children: [
5
- /* @__PURE__ */ jsxs("div", { children: [
6
- /* @__PURE__ */ jsx("span", { children: label }),
7
- !!badge && /* @__PURE__ */ jsx("div", { className: classes.badge, "aria-label": `${badge} items requiring attention`, children: badge > 9 ? "9+" : badge })
8
- ] }),
9
- !!novel && /* @__PURE__ */ jsx(Tag, { className: classes.tag, children: novel })
10
- ] });
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { Menu, MenuList, MenuItem, MenuDivider, Tooltip, HelpCenterIcon } from "@lokalise/louis";
3
+ import { clsx } from "./harmony92.mjs";
4
+ import styles from "./harmony144.mjs";
5
+ const HelpMenu = ({ contactSupport, keyboardShortcuts }) => {
6
+ return /* @__PURE__ */ jsx(
7
+ Menu,
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
+ "data-testid": "sidebar-help-menu-button",
17
+ children: /* @__PURE__ */ jsx(HelpCenterIcon, { size: "25px" })
18
+ }
19
+ ) }),
20
+ children: /* @__PURE__ */ jsxs(MenuList, { placement: "right-start", children: [
21
+ /* @__PURE__ */ jsx(MenuItem, { href: "https://lokalise.com/blog/category/tutorials/", target: "_blank", children: "Tutorials" }),
22
+ contactSupport && /* @__PURE__ */ jsx(MenuItem, { onClick: contactSupport.onClick, children: "Contact support" }),
23
+ /* @__PURE__ */ jsx(MenuItem, { href: "https://docs.lokalise.com/en/", target: "_blank", children: "Documentation" }),
24
+ /* @__PURE__ */ jsx(MenuDivider, {}),
25
+ keyboardShortcuts && /* @__PURE__ */ jsxs(MenuItem, { className: styles.shortcutMenu, onClick: keyboardShortcuts.onClick, children: [
26
+ "Keyboard shortcuts",
27
+ " ",
28
+ /* @__PURE__ */ jsx("span", { className: styles.shortcutLabel, children: keyboardShortcuts.label })
29
+ ] }),
30
+ /* @__PURE__ */ jsx(
31
+ MenuItem,
32
+ {
33
+ href: "https://developers.lokalise.com/reference/lokalise-rest-api",
34
+ target: "_blank",
35
+ children: "API reference"
36
+ }
37
+ ),
38
+ /* @__PURE__ */ jsx(MenuItem, { href: "https://github.com/lokalise/lokalise-cli-2-go", target: "_blank", children: "CLI tool" }),
39
+ /* @__PURE__ */ jsx(MenuDivider, {}),
40
+ /* @__PURE__ */ jsx(MenuItem, { href: "https://lokalise.com/blog/category/product-updates/", target: "_blank", children: "What’s new" }),
41
+ /* @__PURE__ */ jsx(MenuItem, { href: "https://lokalise.com/blog/", target: "_blank", children: "Blog" }),
42
+ /* @__PURE__ */ jsx(MenuItem, { href: "https://lokalise.com/product/apps", target: "_blank", children: "Apps" })
43
+ ] })
44
+ }
45
+ );
46
+ };
11
47
  export {
12
- NavItemContents
48
+ HelpMenu
13
49
  };
14
50
  //# sourceMappingURL=harmony117.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony117.mjs","sources":["../src/components/NavigationPanel/components/NavigationTabs/NavigationTabsItem/NavItemContents.tsx"],"sourcesContent":["import { Tag } from '@lokalise/louis'\n\nimport classes from './styles.module.css'\n\ninterface NavItemContentProps {\n\tlabel: string\n\tbadge?: number\n\tnovel?: string\n}\nexport const NavItemContents = ({ label, badge, novel }: NavItemContentProps) => (\n\t<div className=\"flex gap-1\">\n\t\t<div>\n\t\t\t<span>{label}</span>\n\t\t\t{!!badge && (\n\t\t\t\t<div className={classes.badge} aria-label={`${badge} items requiring attention`}>\n\t\t\t\t\t{badge > 9 ? '9+' : badge}\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t\t{!!novel && <Tag className={classes.tag}>{novel}</Tag>}\n\t</div>\n)\n"],"names":[],"mappings":";;;AASa,MAAA,kBAAkB,CAAC,EAAE,OAAO,OAAO,YAC/C,qBAAC,OAAI,EAAA,WAAU,cACd,UAAA;AAAA,EAAA,qBAAC,OACA,EAAA,UAAA;AAAA,IAAA,oBAAC,UAAM,UAAM,MAAA,CAAA;AAAA,IACZ,CAAC,CAAC,SACF,oBAAC,SAAI,WAAW,QAAQ,OAAO,cAAY,GAAG,KAAK,8BACjD,UAAQ,QAAA,IAAI,OAAO,MACrB,CAAA;AAAA,EAAA,GAEF;AAAA,EACC,CAAC,CAAC,SAAS,oBAAC,OAAI,WAAW,QAAQ,KAAM,UAAM,MAAA,CAAA;AAAA,EACjD,CAAA;"}
1
+ {"version":3,"file":"harmony117.mjs","sources":["../src/components/Sidebar/Widgets/HelpMenu/HelpMenu.tsx"],"sourcesContent":["import type { HelpMenuConfig } from '@components/Sidebar/types'\nimport { HelpCenterIcon, Menu, MenuDivider, MenuItem, MenuList, Tooltip } from '@lokalise/louis'\nimport clsx from 'clsx'\nimport styles from './HelpMenu.module.css'\n\n/**\n * Help menu component that provides links to tutorials, documentation, support, and more.\n *\n * @example\n * ```\n * <HelpMenu\n * contactSupport={{ onClick: handleContactSupport }}\n * keyboardShortcuts={{ onClick: handleShowShortcuts, label: '⌘K' }}\n * />\n * ```\n */\n\nexport const HelpMenu = ({ contactSupport, keyboardShortcuts }: HelpMenuConfig) => {\n\treturn (\n\t\t<Menu\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\tdata-testid=\"sidebar-help-menu-button\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<HelpCenterIcon 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\">\n\t\t\t\t<MenuItem href=\"https://lokalise.com/blog/category/tutorials/\" target=\"_blank\">\n\t\t\t\t\tTutorials\n\t\t\t\t</MenuItem>\n\t\t\t\t{contactSupport && <MenuItem onClick={contactSupport.onClick}>Contact support</MenuItem>}\n\t\t\t\t<MenuItem href=\"https://docs.lokalise.com/en/\" target=\"_blank\">\n\t\t\t\t\tDocumentation\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuDivider />\n\t\t\t\t{keyboardShortcuts && (\n\t\t\t\t\t<MenuItem className={styles.shortcutMenu} onClick={keyboardShortcuts.onClick}>\n\t\t\t\t\t\tKeyboard shortcuts{' '}\n\t\t\t\t\t\t<span className={styles.shortcutLabel}>{keyboardShortcuts.label}</span>\n\t\t\t\t\t</MenuItem>\n\t\t\t\t)}\n\t\t\t\t<MenuItem\n\t\t\t\t\thref=\"https://developers.lokalise.com/reference/lokalise-rest-api\"\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t>\n\t\t\t\t\tAPI reference\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuItem href=\"https://github.com/lokalise/lokalise-cli-2-go\" target=\"_blank\">\n\t\t\t\t\tCLI tool\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuDivider />\n\t\t\t\t<MenuItem href=\"https://lokalise.com/blog/category/product-updates/\" target=\"_blank\">\n\t\t\t\t\tWhat’s new\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuItem href=\"https://lokalise.com/blog/\" target=\"_blank\">\n\t\t\t\t\tBlog\n\t\t\t\t</MenuItem>\n\t\t\t\t<MenuItem href=\"https://lokalise.com/product/apps\" target=\"_blank\">\n\t\t\t\t\tApps\n\t\t\t\t</MenuItem>\n\t\t\t</MenuList>\n\t\t</Menu>\n\t)\n}\n"],"names":[],"mappings":";;;;AAiBO,MAAM,WAAW,CAAC,EAAE,gBAAgB,wBAAwC;AAEjF,SAAA;AAAA,IAAC;AAAA,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,UACD,eAAY;AAAA,UAEZ,UAAA,oBAAC,gBAAe,EAAA,MAAK,OAAO,CAAA;AAAA,QAAA;AAAA,MAAA,GAE9B;AAAA,MAGD,UAAA,qBAAC,UAAS,EAAA,WAAU,eACnB,UAAA;AAAA,QAAA,oBAAC,UAAS,EAAA,MAAK,iDAAgD,QAAO,UAAS,UAE/E,aAAA;AAAA,QACC,kBAAmB,oBAAA,UAAA,EAAS,SAAS,eAAe,SAAS,UAAe,mBAAA;AAAA,4BAC5E,UAAS,EAAA,MAAK,iCAAgC,QAAO,UAAS,UAE/D,iBAAA;AAAA,4BACC,aAAY,EAAA;AAAA,QACZ,0CACC,UAAS,EAAA,WAAW,OAAO,cAAc,SAAS,kBAAkB,SAAS,UAAA;AAAA,UAAA;AAAA,UAC1D;AAAA,8BAClB,QAAK,EAAA,WAAW,OAAO,eAAgB,4BAAkB,MAAM,CAAA;AAAA,QAAA,GACjE;AAAA,QAED;AAAA,UAAC;AAAA,UAAA;AAAA,YACA,MAAK;AAAA,YACL,QAAO;AAAA,YACP,UAAA;AAAA,UAAA;AAAA,QAED;AAAA,4BACC,UAAS,EAAA,MAAK,iDAAgD,QAAO,UAAS,UAE/E,YAAA;AAAA,4BACC,aAAY,EAAA;AAAA,4BACZ,UAAS,EAAA,MAAK,uDAAsD,QAAO,UAAS,UAErF,cAAA;AAAA,4BACC,UAAS,EAAA,MAAK,8BAA6B,QAAO,UAAS,UAE5D,QAAA;AAAA,4BACC,UAAS,EAAA,MAAK,qCAAoC,QAAO,UAAS,UAEnE,OAAA,CAAA;AAAA,MAAA,EACD,CAAA;AAAA,IAAA;AAAA,EACD;AAEF;"}
@@ -1,24 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const badge = "_badge_1pc1v_1";
4
- const tag = "_tag_1pc1v_15";
5
- const withNavLinkStyle = "_withNavLinkStyle_1pc1v_42 _withLinkStyle_1pc1v_21";
6
- const disabled = "_disabled_1pc1v_57";
7
- const projectNavigationItem = "_projectNavigationItem_1pc1v_61";
8
- const projectNavigationItemDisabled = "_projectNavigationItemDisabled_1pc1v_67";
9
- const classes = {
10
- badge,
11
- tag,
12
- withNavLinkStyle,
13
- disabled,
14
- projectNavigationItem,
15
- projectNavigationItemDisabled
3
+ const sidebarContainer = "_sidebarContainer_1x0gj_1";
4
+ const sidebarSkeleton = "_sidebarSkeleton_1x0gj_16";
5
+ const styles = {
6
+ sidebarContainer,
7
+ sidebarSkeleton
16
8
  };
17
- exports.badge = badge;
18
- exports.default = classes;
19
- exports.disabled = disabled;
20
- exports.projectNavigationItem = projectNavigationItem;
21
- exports.projectNavigationItemDisabled = projectNavigationItemDisabled;
22
- exports.tag = tag;
23
- exports.withNavLinkStyle = withNavLinkStyle;
9
+ exports.default = styles;
10
+ exports.sidebarContainer = sidebarContainer;
11
+ exports.sidebarSkeleton = sidebarSkeleton;
24
12
  //# sourceMappingURL=harmony118.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony118.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"harmony118.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
@@ -1,24 +1,12 @@
1
- const badge = "_badge_1pc1v_1";
2
- const tag = "_tag_1pc1v_15";
3
- const withNavLinkStyle = "_withNavLinkStyle_1pc1v_42 _withLinkStyle_1pc1v_21";
4
- const disabled = "_disabled_1pc1v_57";
5
- const projectNavigationItem = "_projectNavigationItem_1pc1v_61";
6
- const projectNavigationItemDisabled = "_projectNavigationItemDisabled_1pc1v_67";
7
- const classes = {
8
- badge,
9
- tag,
10
- withNavLinkStyle,
11
- disabled,
12
- projectNavigationItem,
13
- projectNavigationItemDisabled
1
+ const sidebarContainer = "_sidebarContainer_1x0gj_1";
2
+ const sidebarSkeleton = "_sidebarSkeleton_1x0gj_16";
3
+ const styles = {
4
+ sidebarContainer,
5
+ sidebarSkeleton
14
6
  };
15
7
  export {
16
- badge,
17
- classes as default,
18
- disabled,
19
- projectNavigationItem,
20
- projectNavigationItemDisabled,
21
- tag,
22
- withNavLinkStyle
8
+ styles as default,
9
+ sidebarContainer,
10
+ sidebarSkeleton
23
11
  };
24
12
  //# sourceMappingURL=harmony118.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony118.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"harmony118.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -1,34 +1,26 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const languageTypes = require("./harmony44.cjs");
4
- const sharedTypes = require("./harmony50.cjs");
5
- const apiContracts = require("@lokalise/api-contracts");
6
- const listProjectLanguages = apiContracts.buildGetRoute({
7
- description: "List of project languages",
8
- requestHeaderSchema: sharedTypes.BASE_API_ENDPOINT_HEADER_SCHEMA,
9
- requestPathParamsSchema: languageTypes.LIST_PROJECT_LANGUAGES_PATH_PARAMS_SCHEMA,
10
- pathResolver: ({ projectId }) => `/projects/${projectId}/languages`,
11
- successResponseBodySchema: languageTypes.LIST_PROJECT_LANGUAGES_RESPONSE_SCHEMA
3
+ const jsxRuntime = require("react/jsx-runtime");
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];
9
+ }
10
+ return item;
12
11
  });
13
- const addLanguagesToProject = apiContracts.buildPayloadRoute({
14
- description: "Add languages to existing project",
15
- requestHeaderSchema: sharedTypes.BASE_API_ENDPOINT_HEADER_SCHEMA,
16
- method: "post",
17
- requestPathParamsSchema: languageTypes.ADD_LANGUAGES_TO_PROJECT_PATH_PARAMS_SCHEMA,
18
- pathResolver: ({ projectId }) => `/projects/${projectId}/languages`,
19
- requestBodySchema: languageTypes.ADD_LANGUAGES_TO_PROJECT_REQUEST_BODY_SCHEMA,
20
- successResponseBodySchema: languageTypes.ADD_LANGUAGES_TO_PROJECT_RESPONSE_SCHEMA
21
- });
22
- const bulkUpdateProjectLanguages = apiContracts.buildPayloadRoute({
23
- description: "Bulk update project languages",
24
- requestHeaderSchema: sharedTypes.BASE_API_ENDPOINT_HEADER_SCHEMA,
25
- method: "put",
26
- requestPathParamsSchema: languageTypes.BULK_UPDATE_PROJECT_LANGUAGES_PATH_PARAMS_SCHEMA,
27
- pathResolver: ({ projectId }) => `/projects/${projectId}/languages/bulk-update`,
28
- requestBodySchema: languageTypes.BULK_UPDATE_PROJECT_LANGUAGES_REQUEST_BODY_SCHEMA,
29
- successResponseBodySchema: languageTypes.BULK_UPDATE_PROJECT_LANGUAGES_RESPONSE_SCHEMA
30
- });
31
- exports.addLanguagesToProject = addLanguagesToProject;
32
- exports.bulkUpdateProjectLanguages = bulkUpdateProjectLanguages;
33
- exports.listProjectLanguages = listProjectLanguages;
12
+ const replaceStringWithElement = (input, search, replace) => {
13
+ if (typeof input === "string") {
14
+ return replaceString(input, search, replace);
15
+ }
16
+ return input.flatMap((item) => {
17
+ if (typeof item === "string") {
18
+ return replaceString(item, search, replace);
19
+ }
20
+ return item;
21
+ });
22
+ };
23
+ const convertNewLineToBreakTag = (text) => replaceStringWithElement(text, newLineRegExp, /* @__PURE__ */ jsxRuntime.jsx("br", {}));
24
+ exports.convertNewLineToBreakTag = convertNewLineToBreakTag;
25
+ exports.replaceStringWithElement = replaceStringWithElement;
34
26
  //# sourceMappingURL=harmony12.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony12.cjs","sources":["../src/features/publicApi/languages.ts"],"sourcesContent":["import {\n\tADD_LANGUAGES_TO_PROJECT_PATH_PARAMS_SCHEMA,\n\tADD_LANGUAGES_TO_PROJECT_REQUEST_BODY_SCHEMA,\n\tADD_LANGUAGES_TO_PROJECT_RESPONSE_SCHEMA,\n\tBULK_UPDATE_PROJECT_LANGUAGES_PATH_PARAMS_SCHEMA,\n\tBULK_UPDATE_PROJECT_LANGUAGES_REQUEST_BODY_SCHEMA,\n\tBULK_UPDATE_PROJECT_LANGUAGES_RESPONSE_SCHEMA,\n\tLIST_PROJECT_LANGUAGES_PATH_PARAMS_SCHEMA,\n\tLIST_PROJECT_LANGUAGES_RESPONSE_SCHEMA,\n} from '@features/publicApi/types/languageTypes'\nimport { BASE_API_ENDPOINT_HEADER_SCHEMA } from '@features/publicApi/types/sharedTypes'\nimport { buildGetRoute, buildPayloadRoute } from '@lokalise/api-contracts'\n\nexport const listProjectLanguages = buildGetRoute({\n\tdescription: 'List of project languages',\n\n\trequestHeaderSchema: BASE_API_ENDPOINT_HEADER_SCHEMA,\n\n\trequestPathParamsSchema: LIST_PROJECT_LANGUAGES_PATH_PARAMS_SCHEMA,\n\tpathResolver: ({ projectId }) => `/projects/${projectId}/languages`,\n\n\tsuccessResponseBodySchema: LIST_PROJECT_LANGUAGES_RESPONSE_SCHEMA,\n})\n\nexport const addLanguagesToProject = buildPayloadRoute({\n\tdescription: 'Add languages to existing project',\n\n\trequestHeaderSchema: BASE_API_ENDPOINT_HEADER_SCHEMA,\n\n\tmethod: 'post',\n\trequestPathParamsSchema: ADD_LANGUAGES_TO_PROJECT_PATH_PARAMS_SCHEMA,\n\tpathResolver: ({ projectId }) => `/projects/${projectId}/languages`,\n\trequestBodySchema: ADD_LANGUAGES_TO_PROJECT_REQUEST_BODY_SCHEMA,\n\n\tsuccessResponseBodySchema: ADD_LANGUAGES_TO_PROJECT_RESPONSE_SCHEMA,\n})\n\nexport const bulkUpdateProjectLanguages = buildPayloadRoute({\n\tdescription: 'Bulk update project languages',\n\n\trequestHeaderSchema: BASE_API_ENDPOINT_HEADER_SCHEMA,\n\n\tmethod: 'put',\n\trequestPathParamsSchema: BULK_UPDATE_PROJECT_LANGUAGES_PATH_PARAMS_SCHEMA,\n\tpathResolver: ({ projectId }) => `/projects/${projectId}/languages/bulk-update`,\n\trequestBodySchema: BULK_UPDATE_PROJECT_LANGUAGES_REQUEST_BODY_SCHEMA,\n\n\tsuccessResponseBodySchema: BULK_UPDATE_PROJECT_LANGUAGES_RESPONSE_SCHEMA,\n})\n"],"names":["buildGetRoute","BASE_API_ENDPOINT_HEADER_SCHEMA","LIST_PROJECT_LANGUAGES_PATH_PARAMS_SCHEMA","LIST_PROJECT_LANGUAGES_RESPONSE_SCHEMA","buildPayloadRoute","ADD_LANGUAGES_TO_PROJECT_PATH_PARAMS_SCHEMA","ADD_LANGUAGES_TO_PROJECT_REQUEST_BODY_SCHEMA","ADD_LANGUAGES_TO_PROJECT_RESPONSE_SCHEMA","BULK_UPDATE_PROJECT_LANGUAGES_PATH_PARAMS_SCHEMA","BULK_UPDATE_PROJECT_LANGUAGES_REQUEST_BODY_SCHEMA","BULK_UPDATE_PROJECT_LANGUAGES_RESPONSE_SCHEMA"],"mappings":";;;;;AAaO,MAAM,uBAAuBA,aAAAA,cAAc;AAAA,EACjD,aAAa;AAAA,EAEb,qBAAqBC,YAAA;AAAA,EAErB,yBAAyBC,cAAA;AAAA,EACzB,cAAc,CAAC,EAAE,UAAU,MAAM,aAAa,SAAS;AAAA,EAEvD,2BAA2BC,cAAAA;AAC5B,CAAC;AAEM,MAAM,wBAAwBC,aAAAA,kBAAkB;AAAA,EACtD,aAAa;AAAA,EAEb,qBAAqBH,YAAA;AAAA,EAErB,QAAQ;AAAA,EACR,yBAAyBI,cAAA;AAAA,EACzB,cAAc,CAAC,EAAE,UAAU,MAAM,aAAa,SAAS;AAAA,EACvD,mBAAmBC,cAAA;AAAA,EAEnB,2BAA2BC,cAAAA;AAC5B,CAAC;AAEM,MAAM,6BAA6BH,aAAAA,kBAAkB;AAAA,EAC3D,aAAa;AAAA,EAEb,qBAAqBH,YAAA;AAAA,EAErB,QAAQ;AAAA,EACR,yBAAyBO,cAAA;AAAA,EACzB,cAAc,CAAC,EAAE,UAAU,MAAM,aAAa,SAAS;AAAA,EACvD,mBAAmBC,cAAA;AAAA,EAEnB,2BAA2BC,cAAAA;AAC5B,CAAC;;;;"}
1
+ {"version":3,"file":"harmony12.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,34 +1,26 @@
1
- import { LIST_PROJECT_LANGUAGES_RESPONSE_SCHEMA, LIST_PROJECT_LANGUAGES_PATH_PARAMS_SCHEMA, ADD_LANGUAGES_TO_PROJECT_RESPONSE_SCHEMA, ADD_LANGUAGES_TO_PROJECT_REQUEST_BODY_SCHEMA, ADD_LANGUAGES_TO_PROJECT_PATH_PARAMS_SCHEMA, BULK_UPDATE_PROJECT_LANGUAGES_RESPONSE_SCHEMA, BULK_UPDATE_PROJECT_LANGUAGES_REQUEST_BODY_SCHEMA, BULK_UPDATE_PROJECT_LANGUAGES_PATH_PARAMS_SCHEMA } from "./harmony44.mjs";
2
- import { BASE_API_ENDPOINT_HEADER_SCHEMA } from "./harmony50.mjs";
3
- import { buildGetRoute, buildPayloadRoute } from "@lokalise/api-contracts";
4
- const listProjectLanguages = buildGetRoute({
5
- description: "List of project languages",
6
- requestHeaderSchema: BASE_API_ENDPOINT_HEADER_SCHEMA,
7
- requestPathParamsSchema: LIST_PROJECT_LANGUAGES_PATH_PARAMS_SCHEMA,
8
- pathResolver: ({ projectId }) => `/projects/${projectId}/languages`,
9
- successResponseBodySchema: LIST_PROJECT_LANGUAGES_RESPONSE_SCHEMA
10
- });
11
- const addLanguagesToProject = buildPayloadRoute({
12
- description: "Add languages to existing project",
13
- requestHeaderSchema: BASE_API_ENDPOINT_HEADER_SCHEMA,
14
- method: "post",
15
- requestPathParamsSchema: ADD_LANGUAGES_TO_PROJECT_PATH_PARAMS_SCHEMA,
16
- pathResolver: ({ projectId }) => `/projects/${projectId}/languages`,
17
- requestBodySchema: ADD_LANGUAGES_TO_PROJECT_REQUEST_BODY_SCHEMA,
18
- successResponseBodySchema: ADD_LANGUAGES_TO_PROJECT_RESPONSE_SCHEMA
19
- });
20
- const bulkUpdateProjectLanguages = buildPayloadRoute({
21
- description: "Bulk update project languages",
22
- requestHeaderSchema: BASE_API_ENDPOINT_HEADER_SCHEMA,
23
- method: "put",
24
- requestPathParamsSchema: BULK_UPDATE_PROJECT_LANGUAGES_PATH_PARAMS_SCHEMA,
25
- pathResolver: ({ projectId }) => `/projects/${projectId}/languages/bulk-update`,
26
- requestBodySchema: BULK_UPDATE_PROJECT_LANGUAGES_REQUEST_BODY_SCHEMA,
27
- successResponseBodySchema: BULK_UPDATE_PROJECT_LANGUAGES_RESPONSE_SCHEMA
1
+ import { jsx } from "react/jsx-runtime";
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];
7
+ }
8
+ return item;
28
9
  });
10
+ const replaceStringWithElement = (input, search, replace) => {
11
+ if (typeof input === "string") {
12
+ return replaceString(input, search, replace);
13
+ }
14
+ return input.flatMap((item) => {
15
+ if (typeof item === "string") {
16
+ return replaceString(item, search, replace);
17
+ }
18
+ return item;
19
+ });
20
+ };
21
+ const convertNewLineToBreakTag = (text) => replaceStringWithElement(text, newLineRegExp, /* @__PURE__ */ jsx("br", {}));
29
22
  export {
30
- addLanguagesToProject,
31
- bulkUpdateProjectLanguages,
32
- listProjectLanguages
23
+ convertNewLineToBreakTag,
24
+ replaceStringWithElement
33
25
  };
34
26
  //# sourceMappingURL=harmony12.mjs.map