@lokalise/harmony 2.0.7 → 2.0.8

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 (587) hide show
  1. package/dist/harmony.cjs +135 -135
  2. package/dist/harmony.mjs +79 -79
  3. package/dist/harmony105.cjs +2 -2
  4. package/dist/harmony105.mjs +2 -2
  5. package/dist/harmony106.cjs +1 -1
  6. package/dist/harmony106.mjs +1 -1
  7. package/dist/harmony108.cjs +1 -1
  8. package/dist/harmony108.mjs +1 -1
  9. package/dist/harmony109.cjs +12 -12
  10. package/dist/harmony109.mjs +12 -12
  11. package/dist/harmony11.cjs +30 -55
  12. package/dist/harmony11.cjs.map +1 -1
  13. package/dist/harmony11.mjs +30 -55
  14. package/dist/harmony11.mjs.map +1 -1
  15. package/dist/harmony111.cjs +1 -1
  16. package/dist/harmony111.mjs +1 -1
  17. package/dist/harmony112.cjs +1 -1
  18. package/dist/harmony112.mjs +1 -1
  19. package/dist/harmony113.cjs +1 -1
  20. package/dist/harmony113.mjs +1 -1
  21. package/dist/harmony115.cjs +165 -11
  22. package/dist/harmony115.cjs.map +1 -1
  23. package/dist/harmony115.mjs +165 -11
  24. package/dist/harmony115.mjs.map +1 -1
  25. package/dist/harmony116.cjs +44 -12
  26. package/dist/harmony116.cjs.map +1 -1
  27. package/dist/harmony116.mjs +43 -11
  28. package/dist/harmony116.mjs.map +1 -1
  29. package/dist/harmony117.cjs +10 -9
  30. package/dist/harmony117.cjs.map +1 -1
  31. package/dist/harmony117.mjs +12 -11
  32. package/dist/harmony117.mjs.map +1 -1
  33. package/dist/harmony118.cjs +11 -20
  34. package/dist/harmony118.cjs.map +1 -1
  35. package/dist/harmony118.mjs +11 -20
  36. package/dist/harmony118.mjs.map +1 -1
  37. package/dist/harmony119.cjs +11 -166
  38. package/dist/harmony119.cjs.map +1 -1
  39. package/dist/harmony119.mjs +11 -166
  40. package/dist/harmony119.mjs.map +1 -1
  41. package/dist/harmony12.cjs +22 -30
  42. package/dist/harmony12.cjs.map +1 -1
  43. package/dist/harmony12.mjs +22 -30
  44. package/dist/harmony12.mjs.map +1 -1
  45. package/dist/harmony120.cjs +21 -44
  46. package/dist/harmony120.cjs.map +1 -1
  47. package/dist/harmony120.mjs +20 -43
  48. package/dist/harmony120.mjs.map +1 -1
  49. package/dist/harmony122.cjs +7 -20
  50. package/dist/harmony122.cjs.map +1 -1
  51. package/dist/harmony122.mjs +7 -20
  52. package/dist/harmony122.mjs.map +1 -1
  53. package/dist/harmony123.cjs +17 -9
  54. package/dist/harmony123.cjs.map +1 -1
  55. package/dist/harmony123.mjs +16 -8
  56. package/dist/harmony123.mjs.map +1 -1
  57. package/dist/harmony124.cjs +7 -11
  58. package/dist/harmony124.cjs.map +1 -1
  59. package/dist/harmony124.mjs +7 -11
  60. package/dist/harmony124.mjs.map +1 -1
  61. package/dist/harmony125.cjs +7 -14
  62. package/dist/harmony125.cjs.map +1 -1
  63. package/dist/harmony125.mjs +7 -14
  64. package/dist/harmony125.mjs.map +1 -1
  65. package/dist/harmony126.cjs +14 -18
  66. package/dist/harmony126.cjs.map +1 -1
  67. package/dist/harmony126.mjs +14 -18
  68. package/dist/harmony126.mjs.map +1 -1
  69. package/dist/harmony127.cjs +20 -10
  70. package/dist/harmony127.cjs.map +1 -1
  71. package/dist/harmony127.mjs +20 -10
  72. package/dist/harmony127.mjs.map +1 -1
  73. package/dist/harmony128.cjs +9 -26
  74. package/dist/harmony128.cjs.map +1 -1
  75. package/dist/harmony128.mjs +8 -25
  76. package/dist/harmony128.mjs.map +1 -1
  77. package/dist/harmony129.cjs +4 -4
  78. package/dist/harmony129.cjs.map +1 -1
  79. package/dist/harmony129.mjs +5 -5
  80. package/dist/harmony129.mjs.map +1 -1
  81. package/dist/harmony13.cjs +52 -11
  82. package/dist/harmony13.cjs.map +1 -1
  83. package/dist/harmony13.mjs +52 -11
  84. package/dist/harmony13.mjs.map +1 -1
  85. package/dist/harmony130.cjs +9 -32
  86. package/dist/harmony130.cjs.map +1 -1
  87. package/dist/harmony130.mjs +11 -34
  88. package/dist/harmony130.mjs.map +1 -1
  89. package/dist/harmony131.cjs +11 -4
  90. package/dist/harmony131.cjs.map +1 -1
  91. package/dist/harmony131.mjs +14 -7
  92. package/dist/harmony131.mjs.map +1 -1
  93. package/dist/harmony132.cjs +8 -20
  94. package/dist/harmony132.cjs.map +1 -1
  95. package/dist/harmony132.mjs +9 -21
  96. package/dist/harmony132.mjs.map +1 -1
  97. package/dist/harmony133.cjs +15 -25
  98. package/dist/harmony133.cjs.map +1 -1
  99. package/dist/harmony133.mjs +17 -27
  100. package/dist/harmony133.mjs.map +1 -1
  101. package/dist/harmony134.cjs +12 -21
  102. package/dist/harmony134.cjs.map +1 -1
  103. package/dist/harmony134.mjs +11 -20
  104. package/dist/harmony134.mjs.map +1 -1
  105. package/dist/harmony135.cjs +32 -15
  106. package/dist/harmony135.cjs.map +1 -1
  107. package/dist/harmony135.mjs +34 -17
  108. package/dist/harmony135.mjs.map +1 -1
  109. package/dist/harmony136.cjs +12 -6
  110. package/dist/harmony136.cjs.map +1 -1
  111. package/dist/harmony136.mjs +11 -5
  112. package/dist/harmony136.mjs.map +1 -1
  113. package/dist/harmony137.cjs +22 -15
  114. package/dist/harmony137.cjs.map +1 -1
  115. package/dist/harmony137.mjs +21 -14
  116. package/dist/harmony137.mjs.map +1 -1
  117. package/dist/harmony138.cjs +36 -7
  118. package/dist/harmony138.cjs.map +1 -1
  119. package/dist/harmony138.mjs +36 -7
  120. package/dist/harmony138.mjs.map +1 -1
  121. package/dist/harmony139.cjs +21 -17
  122. package/dist/harmony139.cjs.map +1 -1
  123. package/dist/harmony139.mjs +20 -16
  124. package/dist/harmony139.mjs.map +1 -1
  125. package/dist/harmony14.cjs +9 -55
  126. package/dist/harmony14.cjs.map +1 -1
  127. package/dist/harmony14.mjs +9 -55
  128. package/dist/harmony14.mjs.map +1 -1
  129. package/dist/harmony140.cjs +20 -7
  130. package/dist/harmony140.cjs.map +1 -1
  131. package/dist/harmony140.mjs +20 -7
  132. package/dist/harmony140.mjs.map +1 -1
  133. package/dist/harmony141.cjs +6 -8
  134. package/dist/harmony141.cjs.map +1 -1
  135. package/dist/harmony141.mjs +5 -7
  136. package/dist/harmony141.mjs.map +1 -1
  137. package/dist/harmony142.cjs +15 -15
  138. package/dist/harmony142.cjs.map +1 -1
  139. package/dist/harmony142.mjs +14 -14
  140. package/dist/harmony142.mjs.map +1 -1
  141. package/dist/harmony143.cjs +1 -1
  142. package/dist/harmony143.mjs +1 -1
  143. package/dist/harmony145.cjs +2 -2
  144. package/dist/harmony145.mjs +2 -2
  145. package/dist/harmony146.cjs +2 -2
  146. package/dist/harmony146.mjs +2 -2
  147. package/dist/harmony147.cjs +4 -10
  148. package/dist/harmony147.cjs.map +1 -1
  149. package/dist/harmony147.mjs +3 -9
  150. package/dist/harmony147.mjs.map +1 -1
  151. package/dist/harmony148.cjs +4 -7
  152. package/dist/harmony148.cjs.map +1 -1
  153. package/dist/harmony148.mjs +3 -6
  154. package/dist/harmony148.mjs.map +1 -1
  155. package/dist/harmony149.cjs +4 -10
  156. package/dist/harmony149.cjs.map +1 -1
  157. package/dist/harmony149.mjs +3 -9
  158. package/dist/harmony149.mjs.map +1 -1
  159. package/dist/harmony15.cjs +5 -30
  160. package/dist/harmony15.cjs.map +1 -1
  161. package/dist/harmony15.mjs +5 -30
  162. package/dist/harmony15.mjs.map +1 -1
  163. package/dist/harmony150.cjs +15 -25
  164. package/dist/harmony150.cjs.map +1 -1
  165. package/dist/harmony150.mjs +14 -24
  166. package/dist/harmony150.mjs.map +1 -1
  167. package/dist/harmony151.cjs +15 -7
  168. package/dist/harmony151.cjs.map +1 -1
  169. package/dist/harmony151.mjs +14 -6
  170. package/dist/harmony151.mjs.map +1 -1
  171. package/dist/harmony152.cjs +4 -13
  172. package/dist/harmony152.cjs.map +1 -1
  173. package/dist/harmony152.mjs +3 -12
  174. package/dist/harmony152.mjs.map +1 -1
  175. package/dist/harmony153.cjs +97 -7
  176. package/dist/harmony153.cjs.map +1 -1
  177. package/dist/harmony153.mjs +96 -6
  178. package/dist/harmony153.mjs.map +1 -1
  179. package/dist/harmony154.cjs +11 -94
  180. package/dist/harmony154.cjs.map +1 -1
  181. package/dist/harmony154.mjs +11 -94
  182. package/dist/harmony154.mjs.map +1 -1
  183. package/dist/harmony155.cjs +13 -12
  184. package/dist/harmony155.cjs.map +1 -1
  185. package/dist/harmony155.mjs +13 -12
  186. package/dist/harmony155.mjs.map +1 -1
  187. package/dist/harmony156.cjs +35 -13
  188. package/dist/harmony156.cjs.map +1 -1
  189. package/dist/harmony156.mjs +35 -13
  190. package/dist/harmony156.mjs.map +1 -1
  191. package/dist/harmony157.cjs +24 -32
  192. package/dist/harmony157.cjs.map +1 -1
  193. package/dist/harmony157.mjs +24 -32
  194. package/dist/harmony157.mjs.map +1 -1
  195. package/dist/harmony158.cjs +10 -29
  196. package/dist/harmony158.cjs.map +1 -1
  197. package/dist/harmony158.mjs +9 -28
  198. package/dist/harmony158.mjs.map +1 -1
  199. package/dist/harmony159.cjs +6 -10
  200. package/dist/harmony159.cjs.map +1 -1
  201. package/dist/harmony159.mjs +5 -9
  202. package/dist/harmony159.mjs.map +1 -1
  203. package/dist/harmony16.cjs +15 -18
  204. package/dist/harmony16.cjs.map +1 -1
  205. package/dist/harmony16.mjs +15 -18
  206. package/dist/harmony16.mjs.map +1 -1
  207. package/dist/harmony160.cjs +10 -4
  208. package/dist/harmony160.cjs.map +1 -1
  209. package/dist/harmony160.mjs +9 -3
  210. package/dist/harmony160.mjs.map +1 -1
  211. package/dist/harmony161.cjs +25 -4
  212. package/dist/harmony161.cjs.map +1 -1
  213. package/dist/harmony161.mjs +24 -3
  214. package/dist/harmony161.mjs.map +1 -1
  215. package/dist/harmony162.cjs +7 -4
  216. package/dist/harmony162.cjs.map +1 -1
  217. package/dist/harmony162.mjs +6 -3
  218. package/dist/harmony162.mjs.map +1 -1
  219. package/dist/harmony163.cjs +13 -15
  220. package/dist/harmony163.cjs.map +1 -1
  221. package/dist/harmony163.mjs +12 -14
  222. package/dist/harmony163.mjs.map +1 -1
  223. package/dist/harmony164.cjs +7 -15
  224. package/dist/harmony164.cjs.map +1 -1
  225. package/dist/harmony164.mjs +6 -14
  226. package/dist/harmony164.mjs.map +1 -1
  227. package/dist/harmony165.cjs +32 -3
  228. package/dist/harmony165.cjs.map +1 -1
  229. package/dist/harmony165.mjs +32 -3
  230. package/dist/harmony165.mjs.map +1 -1
  231. package/dist/harmony166.cjs +10 -13
  232. package/dist/harmony166.cjs.map +1 -1
  233. package/dist/harmony166.mjs +10 -13
  234. package/dist/harmony166.mjs.map +1 -1
  235. package/dist/harmony167.cjs +12 -14
  236. package/dist/harmony167.cjs.map +1 -1
  237. package/dist/harmony167.mjs +12 -14
  238. package/dist/harmony167.mjs.map +1 -1
  239. package/dist/harmony168.cjs +13 -14
  240. package/dist/harmony168.cjs.map +1 -1
  241. package/dist/harmony168.mjs +13 -14
  242. package/dist/harmony168.mjs.map +1 -1
  243. package/dist/harmony169.cjs +15 -10
  244. package/dist/harmony169.cjs.map +1 -1
  245. package/dist/harmony169.mjs +15 -10
  246. package/dist/harmony169.mjs.map +1 -1
  247. package/dist/harmony17.cjs +32 -28
  248. package/dist/harmony17.cjs.map +1 -1
  249. package/dist/harmony17.mjs +32 -28
  250. package/dist/harmony17.mjs.map +1 -1
  251. package/dist/harmony170.cjs +10 -15
  252. package/dist/harmony170.cjs.map +1 -1
  253. package/dist/harmony170.mjs +10 -15
  254. package/dist/harmony170.mjs.map +1 -1
  255. package/dist/harmony171.cjs +13 -18
  256. package/dist/harmony171.cjs.map +1 -1
  257. package/dist/harmony171.mjs +13 -18
  258. package/dist/harmony171.mjs.map +1 -1
  259. package/dist/harmony172.cjs +19 -10
  260. package/dist/harmony172.cjs.map +1 -1
  261. package/dist/harmony172.mjs +19 -10
  262. package/dist/harmony172.mjs.map +1 -1
  263. package/dist/harmony173.cjs +12 -32
  264. package/dist/harmony173.cjs.map +1 -1
  265. package/dist/harmony173.mjs +12 -32
  266. package/dist/harmony173.mjs.map +1 -1
  267. package/dist/harmony174.cjs +4 -6
  268. package/dist/harmony174.cjs.map +1 -1
  269. package/dist/harmony174.mjs +4 -6
  270. package/dist/harmony174.mjs.map +1 -1
  271. package/dist/harmony175.cjs +5 -11
  272. package/dist/harmony175.cjs.map +1 -1
  273. package/dist/harmony175.mjs +5 -11
  274. package/dist/harmony175.mjs.map +1 -1
  275. package/dist/harmony176.cjs +11 -31
  276. package/dist/harmony176.cjs.map +1 -1
  277. package/dist/harmony176.mjs +11 -31
  278. package/dist/harmony176.mjs.map +1 -1
  279. package/dist/harmony177.cjs +28 -10
  280. package/dist/harmony177.cjs.map +1 -1
  281. package/dist/harmony177.mjs +28 -10
  282. package/dist/harmony177.mjs.map +1 -1
  283. package/dist/harmony178.cjs +14 -4
  284. package/dist/harmony178.cjs.map +1 -1
  285. package/dist/harmony178.mjs +14 -4
  286. package/dist/harmony178.mjs.map +1 -1
  287. package/dist/harmony18.cjs +5 -14
  288. package/dist/harmony18.cjs.map +1 -1
  289. package/dist/harmony18.mjs +5 -14
  290. package/dist/harmony18.mjs.map +1 -1
  291. package/dist/harmony19.cjs +10 -13
  292. package/dist/harmony19.cjs.map +1 -1
  293. package/dist/harmony19.mjs +10 -13
  294. package/dist/harmony19.mjs.map +1 -1
  295. package/dist/harmony20.cjs +10 -13
  296. package/dist/harmony20.cjs.map +1 -1
  297. package/dist/harmony20.mjs +10 -13
  298. package/dist/harmony20.mjs.map +1 -1
  299. package/dist/harmony21.cjs +17 -13
  300. package/dist/harmony21.cjs.map +1 -1
  301. package/dist/harmony21.mjs +17 -13
  302. package/dist/harmony21.mjs.map +1 -1
  303. package/dist/harmony22.cjs +15 -13
  304. package/dist/harmony22.cjs.map +1 -1
  305. package/dist/harmony22.mjs +15 -13
  306. package/dist/harmony22.mjs.map +1 -1
  307. package/dist/harmony23.cjs +141 -12
  308. package/dist/harmony23.cjs.map +1 -1
  309. package/dist/harmony23.mjs +141 -12
  310. package/dist/harmony23.mjs.map +1 -1
  311. package/dist/harmony24.cjs +20 -22
  312. package/dist/harmony24.cjs.map +1 -1
  313. package/dist/harmony24.mjs +20 -22
  314. package/dist/harmony24.mjs.map +1 -1
  315. package/dist/harmony25.cjs +14 -13
  316. package/dist/harmony25.cjs.map +1 -1
  317. package/dist/harmony25.mjs +14 -13
  318. package/dist/harmony25.mjs.map +1 -1
  319. package/dist/harmony26.cjs +16 -12
  320. package/dist/harmony26.cjs.map +1 -1
  321. package/dist/harmony26.mjs +17 -13
  322. package/dist/harmony26.mjs.map +1 -1
  323. package/dist/harmony27.cjs +16 -15
  324. package/dist/harmony27.cjs.map +1 -1
  325. package/dist/harmony27.mjs +17 -16
  326. package/dist/harmony27.mjs.map +1 -1
  327. package/dist/harmony28.cjs +18 -15
  328. package/dist/harmony28.cjs.map +1 -1
  329. package/dist/harmony28.mjs +18 -15
  330. package/dist/harmony28.mjs.map +1 -1
  331. package/dist/harmony29.cjs +20 -15
  332. package/dist/harmony29.cjs.map +1 -1
  333. package/dist/harmony29.mjs +20 -15
  334. package/dist/harmony29.mjs.map +1 -1
  335. package/dist/harmony30.cjs +10 -15
  336. package/dist/harmony30.cjs.map +1 -1
  337. package/dist/harmony30.mjs +10 -15
  338. package/dist/harmony30.mjs.map +1 -1
  339. package/dist/harmony31.cjs +11 -15
  340. package/dist/harmony31.cjs.map +1 -1
  341. package/dist/harmony31.mjs +11 -15
  342. package/dist/harmony31.mjs.map +1 -1
  343. package/dist/harmony32.cjs +8 -16
  344. package/dist/harmony32.cjs.map +1 -1
  345. package/dist/harmony32.mjs +8 -16
  346. package/dist/harmony32.mjs.map +1 -1
  347. package/dist/harmony33.cjs +8 -16
  348. package/dist/harmony33.cjs.map +1 -1
  349. package/dist/harmony33.mjs +8 -16
  350. package/dist/harmony33.mjs.map +1 -1
  351. package/dist/harmony34.cjs +14 -16
  352. package/dist/harmony34.cjs.map +1 -1
  353. package/dist/harmony34.mjs +14 -16
  354. package/dist/harmony34.mjs.map +1 -1
  355. package/dist/harmony35.cjs +9 -16
  356. package/dist/harmony35.cjs.map +1 -1
  357. package/dist/harmony35.mjs +9 -16
  358. package/dist/harmony35.mjs.map +1 -1
  359. package/dist/harmony36.cjs +12 -16
  360. package/dist/harmony36.cjs.map +1 -1
  361. package/dist/harmony36.mjs +12 -16
  362. package/dist/harmony36.mjs.map +1 -1
  363. package/dist/harmony37.cjs +9 -14
  364. package/dist/harmony37.cjs.map +1 -1
  365. package/dist/harmony37.mjs +9 -14
  366. package/dist/harmony37.mjs.map +1 -1
  367. package/dist/harmony38.cjs +13 -16
  368. package/dist/harmony38.cjs.map +1 -1
  369. package/dist/harmony38.mjs +13 -16
  370. package/dist/harmony38.mjs.map +1 -1
  371. package/dist/harmony39.cjs +7 -16
  372. package/dist/harmony39.cjs.map +1 -1
  373. package/dist/harmony39.mjs +7 -16
  374. package/dist/harmony39.mjs.map +1 -1
  375. package/dist/harmony40.cjs +10 -17
  376. package/dist/harmony40.cjs.map +1 -1
  377. package/dist/harmony40.mjs +10 -17
  378. package/dist/harmony40.mjs.map +1 -1
  379. package/dist/harmony41.cjs +11 -14
  380. package/dist/harmony41.cjs.map +1 -1
  381. package/dist/harmony41.mjs +11 -14
  382. package/dist/harmony41.mjs.map +1 -1
  383. package/dist/harmony42.cjs +9 -14
  384. package/dist/harmony42.cjs.map +1 -1
  385. package/dist/harmony42.mjs +9 -14
  386. package/dist/harmony42.mjs.map +1 -1
  387. package/dist/harmony43.cjs +9 -124
  388. package/dist/harmony43.cjs.map +1 -1
  389. package/dist/harmony43.mjs +9 -124
  390. package/dist/harmony43.mjs.map +1 -1
  391. package/dist/harmony44.cjs +9 -82
  392. package/dist/harmony44.cjs.map +1 -1
  393. package/dist/harmony44.mjs +9 -82
  394. package/dist/harmony44.mjs.map +1 -1
  395. package/dist/harmony45.cjs +88 -6
  396. package/dist/harmony45.cjs.map +1 -1
  397. package/dist/harmony45.mjs +88 -6
  398. package/dist/harmony45.mjs.map +1 -1
  399. package/dist/harmony46.cjs +52 -25
  400. package/dist/harmony46.cjs.map +1 -1
  401. package/dist/harmony46.mjs +52 -25
  402. package/dist/harmony46.mjs.map +1 -1
  403. package/dist/harmony47.cjs +30 -23
  404. package/dist/harmony47.cjs.map +1 -1
  405. package/dist/harmony47.mjs +30 -23
  406. package/dist/harmony47.mjs.map +1 -1
  407. package/dist/harmony48.cjs +11 -141
  408. package/dist/harmony48.cjs.map +1 -1
  409. package/dist/harmony48.mjs +10 -140
  410. package/dist/harmony48.mjs.map +1 -1
  411. package/dist/harmony49.cjs +50 -32
  412. package/dist/harmony49.cjs.map +1 -1
  413. package/dist/harmony49.mjs +50 -32
  414. package/dist/harmony49.mjs.map +1 -1
  415. package/dist/harmony5.cjs +5 -5
  416. package/dist/harmony5.mjs +5 -5
  417. package/dist/harmony50.cjs +30 -26
  418. package/dist/harmony50.cjs.map +1 -1
  419. package/dist/harmony50.mjs +30 -26
  420. package/dist/harmony50.mjs.map +1 -1
  421. package/dist/harmony51.cjs +18 -4
  422. package/dist/harmony51.cjs.map +1 -1
  423. package/dist/harmony51.mjs +18 -4
  424. package/dist/harmony51.mjs.map +1 -1
  425. package/dist/harmony52.cjs +25 -81
  426. package/dist/harmony52.cjs.map +1 -1
  427. package/dist/harmony52.mjs +25 -81
  428. package/dist/harmony52.mjs.map +1 -1
  429. package/dist/harmony53.cjs +13 -57
  430. package/dist/harmony53.cjs.map +1 -1
  431. package/dist/harmony53.mjs +12 -56
  432. package/dist/harmony53.mjs.map +1 -1
  433. package/dist/harmony54.cjs +14 -18
  434. package/dist/harmony54.cjs.map +1 -1
  435. package/dist/harmony54.mjs +14 -18
  436. package/dist/harmony54.mjs.map +1 -1
  437. package/dist/harmony55.cjs +14 -30
  438. package/dist/harmony55.cjs.map +1 -1
  439. package/dist/harmony55.mjs +14 -30
  440. package/dist/harmony55.mjs.map +1 -1
  441. package/dist/harmony56.cjs +13 -22
  442. package/dist/harmony56.cjs.map +1 -1
  443. package/dist/harmony56.mjs +13 -22
  444. package/dist/harmony56.mjs.map +1 -1
  445. package/dist/harmony57.cjs +14 -52
  446. package/dist/harmony57.cjs.map +1 -1
  447. package/dist/harmony57.mjs +14 -52
  448. package/dist/harmony57.mjs.map +1 -1
  449. package/dist/harmony58.cjs +13 -9
  450. package/dist/harmony58.cjs.map +1 -1
  451. package/dist/harmony58.mjs +13 -9
  452. package/dist/harmony58.mjs.map +1 -1
  453. package/dist/harmony59.cjs +22 -5
  454. package/dist/harmony59.cjs.map +1 -1
  455. package/dist/harmony59.mjs +22 -5
  456. package/dist/harmony59.mjs.map +1 -1
  457. package/dist/harmony6.cjs +1 -1
  458. package/dist/harmony6.mjs +2 -2
  459. package/dist/harmony60.cjs +12 -14
  460. package/dist/harmony60.cjs.map +1 -1
  461. package/dist/harmony60.mjs +12 -14
  462. package/dist/harmony60.mjs.map +1 -1
  463. package/dist/harmony61.cjs +12 -31
  464. package/dist/harmony61.cjs.map +1 -1
  465. package/dist/harmony61.mjs +12 -31
  466. package/dist/harmony61.mjs.map +1 -1
  467. package/dist/harmony62.cjs +17 -5
  468. package/dist/harmony62.cjs.map +1 -1
  469. package/dist/harmony62.mjs +17 -5
  470. package/dist/harmony62.mjs.map +1 -1
  471. package/dist/harmony63.cjs +16 -10
  472. package/dist/harmony63.cjs.map +1 -1
  473. package/dist/harmony63.mjs +16 -10
  474. package/dist/harmony63.mjs.map +1 -1
  475. package/dist/harmony64.cjs +15 -11
  476. package/dist/harmony64.cjs.map +1 -1
  477. package/dist/harmony64.mjs +15 -11
  478. package/dist/harmony64.mjs.map +1 -1
  479. package/dist/harmony65.cjs +15 -18
  480. package/dist/harmony65.cjs.map +1 -1
  481. package/dist/harmony65.mjs +15 -18
  482. package/dist/harmony65.mjs.map +1 -1
  483. package/dist/harmony66.cjs +15 -16
  484. package/dist/harmony66.cjs.map +1 -1
  485. package/dist/harmony66.mjs +15 -16
  486. package/dist/harmony66.mjs.map +1 -1
  487. package/dist/harmony67.cjs +17 -142
  488. package/dist/harmony67.cjs.map +1 -1
  489. package/dist/harmony67.mjs +17 -142
  490. package/dist/harmony67.mjs.map +1 -1
  491. package/dist/harmony68.cjs +16 -19
  492. package/dist/harmony68.cjs.map +1 -1
  493. package/dist/harmony68.mjs +16 -19
  494. package/dist/harmony68.mjs.map +1 -1
  495. package/dist/harmony69.cjs +16 -13
  496. package/dist/harmony69.cjs.map +1 -1
  497. package/dist/harmony69.mjs +16 -13
  498. package/dist/harmony69.mjs.map +1 -1
  499. package/dist/harmony70.cjs +15 -15
  500. package/dist/harmony70.cjs.map +1 -1
  501. package/dist/harmony70.mjs +16 -16
  502. package/dist/harmony70.mjs.map +1 -1
  503. package/dist/harmony71.cjs +15 -16
  504. package/dist/harmony71.cjs.map +1 -1
  505. package/dist/harmony71.mjs +16 -17
  506. package/dist/harmony71.mjs.map +1 -1
  507. package/dist/harmony72.cjs +15 -20
  508. package/dist/harmony72.cjs.map +1 -1
  509. package/dist/harmony72.mjs +15 -20
  510. package/dist/harmony72.mjs.map +1 -1
  511. package/dist/harmony73.cjs +16 -19
  512. package/dist/harmony73.cjs.map +1 -1
  513. package/dist/harmony73.mjs +16 -19
  514. package/dist/harmony73.mjs.map +1 -1
  515. package/dist/harmony74.cjs +15 -8
  516. package/dist/harmony74.cjs.map +1 -1
  517. package/dist/harmony74.mjs +15 -8
  518. package/dist/harmony74.mjs.map +1 -1
  519. package/dist/harmony75.cjs +16 -9
  520. package/dist/harmony75.cjs.map +1 -1
  521. package/dist/harmony75.mjs +16 -9
  522. package/dist/harmony75.mjs.map +1 -1
  523. package/dist/harmony76.cjs +14 -9
  524. package/dist/harmony76.cjs.map +1 -1
  525. package/dist/harmony76.mjs +14 -9
  526. package/dist/harmony76.mjs.map +1 -1
  527. package/dist/harmony77.cjs +14 -9
  528. package/dist/harmony77.cjs.map +1 -1
  529. package/dist/harmony77.mjs +14 -9
  530. package/dist/harmony77.mjs.map +1 -1
  531. package/dist/harmony78.cjs +124 -15
  532. package/dist/harmony78.cjs.map +1 -1
  533. package/dist/harmony78.mjs +124 -15
  534. package/dist/harmony78.mjs.map +1 -1
  535. package/dist/harmony79.cjs +82 -10
  536. package/dist/harmony79.cjs.map +1 -1
  537. package/dist/harmony79.mjs +82 -10
  538. package/dist/harmony79.mjs.map +1 -1
  539. package/dist/harmony80.cjs +6 -13
  540. package/dist/harmony80.cjs.map +1 -1
  541. package/dist/harmony80.mjs +6 -13
  542. package/dist/harmony80.mjs.map +1 -1
  543. package/dist/harmony81.cjs +28 -10
  544. package/dist/harmony81.cjs.map +1 -1
  545. package/dist/harmony81.mjs +28 -10
  546. package/dist/harmony81.mjs.map +1 -1
  547. package/dist/harmony82.cjs +24 -14
  548. package/dist/harmony82.cjs.map +1 -1
  549. package/dist/harmony82.mjs +24 -14
  550. package/dist/harmony82.mjs.map +1 -1
  551. package/dist/harmony83.cjs +141 -8
  552. package/dist/harmony83.cjs.map +1 -1
  553. package/dist/harmony83.mjs +141 -8
  554. package/dist/harmony83.mjs.map +1 -1
  555. package/dist/harmony84.cjs +37 -11
  556. package/dist/harmony84.cjs.map +1 -1
  557. package/dist/harmony84.mjs +37 -11
  558. package/dist/harmony84.mjs.map +1 -1
  559. package/dist/harmony85.cjs +26 -11
  560. package/dist/harmony85.cjs.map +1 -1
  561. package/dist/harmony85.mjs +26 -11
  562. package/dist/harmony85.mjs.map +1 -1
  563. package/dist/harmony86.cjs +4 -9
  564. package/dist/harmony86.cjs.map +1 -1
  565. package/dist/harmony86.mjs +4 -9
  566. package/dist/harmony86.mjs.map +1 -1
  567. package/dist/harmony87.cjs +84 -9
  568. package/dist/harmony87.cjs.map +1 -1
  569. package/dist/harmony87.mjs +84 -9
  570. package/dist/harmony87.mjs.map +1 -1
  571. package/dist/harmony88.cjs +58 -9
  572. package/dist/harmony88.cjs.map +1 -1
  573. package/dist/harmony88.mjs +58 -9
  574. package/dist/harmony88.mjs.map +1 -1
  575. package/dist/harmony89.cjs +18 -88
  576. package/dist/harmony89.cjs.map +1 -1
  577. package/dist/harmony89.mjs +18 -88
  578. package/dist/harmony89.mjs.map +1 -1
  579. package/dist/harmony96.cjs +2 -2
  580. package/dist/harmony96.mjs +2 -2
  581. package/dist/harmony98.cjs +2 -2
  582. package/dist/harmony98.mjs +2 -2
  583. package/dist/harmony99.cjs +4 -4
  584. package/dist/harmony99.mjs +4 -4
  585. package/dist/types/src/features/publicApi/teamUsers.d.ts +2 -2
  586. package/dist/types/src/features/publicApi/types/teamUserTypes.d.ts +4 -4
  587. package/package.json +1 -1
@@ -1,169 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const React = require("react");
4
- const NavigationClientProvider = require("./harmony60.cjs");
5
- const toolbarVisibility = require("./harmony143.cjs");
6
- const useExpertNavigation = (enabled, project, contributor) => {
7
- const adminRights = (contributor == null ? void 0 : contributor.admin_rights) || [];
8
- const marketingSupportProjectSelectedAppSlug = "selected-app-slug";
9
- const navigationClient = NavigationClientProvider.useNavigationClient();
10
- const expertUrl = navigationClient.getExpertUrl();
11
- return React.useMemo(() => {
12
- if (!project || !enabled) {
13
- return [];
14
- }
15
- const navigationVisibility = toolbarVisibility.getProjectNavigationVisibilityMap(
16
- project,
17
- adminRights,
18
- () => true
19
- );
20
- const appsNavigationItem = {
21
- key: "apps",
22
- label: "Apps",
23
- isActive: (input) => input === "apps",
24
- link: `${expertUrl}/apps/${project.project_id}/`,
25
- ...navigationVisibility.apps
26
- };
27
- const appsNavigationItemArrInMainMenu = [];
28
- const appsNavigationItemArrInMoreMenu = [];
29
- if (project.project_type === "content_integration") {
30
- appsNavigationItemArrInMoreMenu.push(appsNavigationItem);
31
- } else {
32
- appsNavigationItemArrInMainMenu.push(appsNavigationItem);
33
- }
34
- return [
35
- {
36
- key: "edit",
37
- label: "Editor",
38
- link: `${expertUrl}/project/${project.project_id}/`,
39
- isActive: (input) => input === "edit",
40
- ...navigationVisibility.editor
41
- },
42
- {
43
- key: "files",
44
- label: "Files",
45
- link: `${expertUrl}/files/${project.project_id}/`,
46
- isActive: (input) => input === "files",
47
- ...navigationVisibility.files
48
- },
49
- ...project.project_type === "content_integration" ? [
50
- {
51
- key: "contentManagement",
52
- label: "Content management",
53
- isActive: (input) => input === "apps",
54
- link: `${expertUrl}/apps/${project.project_id}/${marketingSupportProjectSelectedAppSlug}`,
55
- ...navigationVisibility.contentManagement
56
- }
57
- ] : [
58
- {
59
- key: "upload",
60
- label: "Upload",
61
- link: `${expertUrl}/upload/${project.project_id}/`,
62
- isActive: (input) => input === "upload",
63
- ...navigationVisibility.upload
64
- },
65
- {
66
- key: "download",
67
- label: "Download",
68
- link: `${expertUrl}/download/${project.project_id}/`,
69
- isActive: (input) => input === "download",
70
- ...navigationVisibility.download
71
- }
72
- ],
73
- {
74
- key: "tasks",
75
- label: "Tasks",
76
- link: `${expertUrl}/tasks/${project.project_id}/`,
77
- isActive: (input) => input === "tasks",
78
- // TODO: Add task count
79
- // badge: taskCount,
80
- ...navigationVisibility.tasks
81
- },
82
- {
83
- key: "workflows",
84
- label: "Workflows",
85
- link: `${expertUrl}/workflows/${project.project_id}/`,
86
- isActive: (input) => input === "workflows",
87
- novel: "New",
88
- onClick: () => {
89
- window.location.assign(`${expertUrl}/workflows/${project.project_id}/`);
90
- },
91
- ...navigationVisibility.workflows
92
- },
93
- {
94
- key: "contributors",
95
- label: "Contributors",
96
- link: `${expertUrl}/contributors/${project.project_id}/`,
97
- isActive: (input) => input === "contributors",
98
- ...navigationVisibility.contributors
99
- },
100
- {
101
- key: "screenshots",
102
- label: "Screenshots",
103
- link: `${expertUrl}/screenshots/${project.project_id}/`,
104
- isActive: (input) => input === "screenshots",
105
- ...navigationVisibility.screenshots
106
- },
107
- {
108
- key: "glossary",
109
- label: "Glossary",
110
- link: `${expertUrl}/glossary/${project.project_id}/`,
111
- isActive: (input) => input === "glossary",
112
- ...navigationVisibility.glossary
113
- },
114
- ...appsNavigationItemArrInMainMenu,
115
- {
116
- key: "more",
117
- label: "More...",
118
- isActive: (input) => ["settings", "statistics", "duplicates", "live edit"].includes(input),
119
- ...navigationVisibility.more,
120
- dropdown: [
121
- [
122
- {
123
- link: `${expertUrl}/settings/${project.project_id}/`,
124
- label: "Settings",
125
- ...navigationVisibility.settings
126
- },
127
- {
128
- link: `${expertUrl}/settings/${project.project_id}/#branches`,
129
- label: "Branches",
130
- ...navigationVisibility.branches
131
- },
132
- {
133
- link: `${expertUrl}/settings/${project.project_id}/#ota-bundles`,
134
- label: "OTA Bundles",
135
- ...navigationVisibility.otaBundles
136
- },
137
- {
138
- link: `${expertUrl}/settings/${project.project_id}/#project-automations`,
139
- label: "Automations",
140
- ...navigationVisibility.automations
141
- },
142
- {
143
- link: `${expertUrl}/dupes/${project.project_id}/`,
144
- label: "Duplicate finder",
145
- ...navigationVisibility.duplicateFinder
146
- }
147
- ],
148
- [
149
- ...appsNavigationItemArrInMoreMenu,
150
- {
151
- // TODO: This could be problematic tab, because it is not a link and we can't just redirect. We need to find a workaround for that.
152
- label: "Activity",
153
- onClick: () => {
154
- },
155
- ...navigationVisibility.activity
156
- },
157
- {
158
- link: `${expertUrl}/statistics/${project.project_id}/`,
159
- label: "Statistics",
160
- ...navigationVisibility.statistics
161
- }
162
- ]
163
- ]
164
- }
165
- ];
166
- }, [project, adminRights, enabled, expertUrl]);
167
- };
168
- exports.useExpertNavigation = useExpertNavigation;
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const louis = require("@lokalise/louis");
5
+ const styles_module = require("./harmony120.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;
169
14
  //# sourceMappingURL=harmony119.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony119.cjs","sources":["../src/features/navigation/hooks/useExpertNavigation.ts"],"sourcesContent":["import type { Contributor, Project } from '@features/node'\nimport { useMemo } from 'react'\nimport { useNavigationClient } from '../providers/NavigationClientProvider'\nimport type { NavigationTabsItem } from '../types/navigation'\nimport { getProjectNavigationVisibilityMap } from '../utils/toolbarVisibility'\n\n// TODO: Validate features types\nexport const getIsFeatureEnabled = (features: Record<string, boolean>, name: string) => {\n\tconst featureState = features[name]\n\n\treturn (\n\t\tfeatureState !== null &&\n\t\tfeatureState !== undefined &&\n\t\t[true, 'on', 'true'].includes(featureState)\n\t)\n}\n\n/**\n * Hook to generate legacy navigation items using the existing structure\n * but with context API instead of Redux\n */\nexport const useExpertNavigation = (\n\tenabled: boolean,\n\tproject?: Project,\n\tcontributor?: Contributor,\n) => {\n\t// Use contributor data if provided, otherwise use defaults\n\tconst adminRights = contributor?.admin_rights || []\n\t// TODO: Implement selected app slug, small investigation is needed\n\tconst marketingSupportProjectSelectedAppSlug = 'selected-app-slug'\n\tconst navigationClient = useNavigationClient()\n\tconst expertUrl = navigationClient.getExpertUrl()\n\n\treturn useMemo(() => {\n\t\t// Get data from contexts instead of Redux, or use provided data\n\t\tif (!project || !enabled) {\n\t\t\treturn []\n\t\t}\n\t\t/* TODO: We're missing badges API. We need to get it from the backend or find alternative way to get task count\n\t\t * Fetch tasks and calculate count is not a good idea, because it can have pagination, therefore we can\n\t\t * ask for an additional prop in tasks response: task_count based on branch_id + project_id + task_status\n\t\t */\n\t\t// const taskCount = getTaskCount(project, branch, badges.tasks)\n\n\t\t// TODO: Implement feature flags functionality, most likely separate package\n\t\t// const isFeatureEnabled = (feature: string) => getIsFeatureEnabled(features, feature)\n\n\t\tconst navigationVisibility = getProjectNavigationVisibilityMap(\n\t\t\tproject,\n\t\t\tadminRights,\n\t\t\t() => true /*isFeatureEnabled*/,\n\t\t)\n\n\t\tconst appsNavigationItem: NavigationTabsItem = {\n\t\t\tkey: 'apps',\n\t\t\tlabel: 'Apps',\n\t\t\tisActive: (input: string) => input === 'apps',\n\t\t\tlink: `${expertUrl}/apps/${project.project_id}/`,\n\t\t\t...navigationVisibility.apps,\n\t\t}\n\n\t\tconst appsNavigationItemArrInMainMenu: NavigationTabsItem[] = []\n\t\tconst appsNavigationItemArrInMoreMenu: NavigationTabsItem[] = []\n\n\t\tif (project.project_type === 'content_integration') {\n\t\t\tappsNavigationItemArrInMoreMenu.push(appsNavigationItem)\n\t\t} else {\n\t\t\tappsNavigationItemArrInMainMenu.push(appsNavigationItem)\n\t\t}\n\n\t\treturn [\n\t\t\t{\n\t\t\t\tkey: 'edit',\n\t\t\t\tlabel: 'Editor',\n\t\t\t\tlink: `${expertUrl}/project/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'edit',\n\t\t\t\t...navigationVisibility.editor,\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: 'files',\n\t\t\t\tlabel: 'Files',\n\t\t\t\tlink: `${expertUrl}/files/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'files',\n\t\t\t\t...navigationVisibility.files,\n\t\t\t},\n\t\t\t...(project.project_type === 'content_integration'\n\t\t\t\t? [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tkey: 'contentManagement',\n\t\t\t\t\t\t\tlabel: 'Content management',\n\t\t\t\t\t\t\tisActive: (input: string) => input === 'apps',\n\t\t\t\t\t\t\tlink: `${expertUrl}/apps/${project.project_id}/${marketingSupportProjectSelectedAppSlug}`,\n\t\t\t\t\t\t\t...navigationVisibility.contentManagement,\n\t\t\t\t\t\t},\n\t\t\t\t\t]\n\t\t\t\t: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tkey: 'upload',\n\t\t\t\t\t\t\tlabel: 'Upload',\n\t\t\t\t\t\t\tlink: `${expertUrl}/upload/${project.project_id}/`,\n\t\t\t\t\t\t\tisActive: (input: string) => input === 'upload',\n\t\t\t\t\t\t\t...navigationVisibility.upload,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tkey: 'download',\n\t\t\t\t\t\t\tlabel: 'Download',\n\t\t\t\t\t\t\tlink: `${expertUrl}/download/${project.project_id}/`,\n\t\t\t\t\t\t\tisActive: (input: string) => input === 'download',\n\t\t\t\t\t\t\t...navigationVisibility.download,\n\t\t\t\t\t\t},\n\t\t\t\t\t]),\n\t\t\t{\n\t\t\t\tkey: 'tasks',\n\t\t\t\tlabel: 'Tasks',\n\t\t\t\tlink: `${expertUrl}/tasks/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'tasks',\n\t\t\t\t// TODO: Add task count\n\t\t\t\t// badge: taskCount,\n\t\t\t\t...navigationVisibility.tasks,\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: 'workflows',\n\t\t\t\tlabel: 'Workflows',\n\t\t\t\tlink: `${expertUrl}/workflows/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'workflows',\n\t\t\t\tnovel: 'New',\n\t\t\t\tonClick: () => {\n\t\t\t\t\t// TODO: Resolve analytics globally, most likely separate package\n\t\t\t\t\t// track(AnalyticsEventName.EDITOR_WORKFLOWS_TAB_CLICKED);\n\t\t\t\t\twindow.location.assign(`${expertUrl}/workflows/${project.project_id}/`)\n\t\t\t\t},\n\t\t\t\t...navigationVisibility.workflows,\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: 'contributors',\n\t\t\t\tlabel: 'Contributors',\n\t\t\t\tlink: `${expertUrl}/contributors/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'contributors',\n\t\t\t\t...navigationVisibility.contributors,\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: 'screenshots',\n\t\t\t\tlabel: 'Screenshots',\n\t\t\t\tlink: `${expertUrl}/screenshots/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'screenshots',\n\t\t\t\t...navigationVisibility.screenshots,\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: 'glossary',\n\t\t\t\tlabel: 'Glossary',\n\t\t\t\tlink: `${expertUrl}/glossary/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'glossary',\n\t\t\t\t...navigationVisibility.glossary,\n\t\t\t},\n\t\t\t...appsNavigationItemArrInMainMenu,\n\t\t\t{\n\t\t\t\tkey: 'more',\n\t\t\t\tlabel: 'More...',\n\t\t\t\tisActive: (input: string) =>\n\t\t\t\t\t['settings', 'statistics', 'duplicates', 'live edit'].includes(input),\n\t\t\t\t...navigationVisibility.more,\n\t\t\t\tdropdown: [\n\t\t\t\t\t[\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/settings/${project.project_id}/`,\n\t\t\t\t\t\t\tlabel: 'Settings',\n\t\t\t\t\t\t\t...navigationVisibility.settings,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/settings/${project.project_id}/#branches`,\n\t\t\t\t\t\t\tlabel: 'Branches',\n\t\t\t\t\t\t\t...navigationVisibility.branches,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/settings/${project.project_id}/#ota-bundles`,\n\t\t\t\t\t\t\tlabel: 'OTA Bundles',\n\t\t\t\t\t\t\t...navigationVisibility.otaBundles,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/settings/${project.project_id}/#project-automations`,\n\t\t\t\t\t\t\tlabel: 'Automations',\n\t\t\t\t\t\t\t...navigationVisibility.automations,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/dupes/${project.project_id}/`,\n\t\t\t\t\t\t\tlabel: 'Duplicate finder',\n\t\t\t\t\t\t\t...navigationVisibility.duplicateFinder,\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t...appsNavigationItemArrInMoreMenu,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t// TODO: This could be problematic tab, because it is not a link and we can't just redirect. We need to find a workaround for that.\n\t\t\t\t\t\t\tlabel: 'Activity',\n\t\t\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\t\t\t// const showActivityEvent = new CustomEvent(\"show-activity\", {\n\t\t\t\t\t\t\t\t// \tdetail: {\n\t\t\t\t\t\t\t\t// \t\tprojectId: project.id,\n\t\t\t\t\t\t\t\t// \t\tbranchId: branch.branchId,\n\t\t\t\t\t\t\t\t// \t\tbranchName: branch.branchName,\n\t\t\t\t\t\t\t\t// \t},\n\t\t\t\t\t\t\t\t// });\n\t\t\t\t\t\t\t\t// document.dispatchEvent(showActivityEvent);\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t...navigationVisibility.activity,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/statistics/${project.project_id}/`,\n\t\t\t\t\t\t\tlabel: 'Statistics',\n\t\t\t\t\t\t\t...navigationVisibility.statistics,\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t],\n\t\t\t},\n\t\t]\n\t}, [project, adminRights, enabled, expertUrl])\n}\n\n// TODO: Helper function for getting task count from badge data\n// const _getTaskCount = (project: any, branch: any, taskBadges: any) => {\n// \tif (!taskBadges) return 0\n\n// \t// Implementation would depend on your getTaskCountFromTasks utility\n// \t// Simplified version:\n// \tconst projectTasks = taskBadges[project.id] || {}\n// \treturn projectTasks[branch.branchId || 'master'] || 0\n// }\n"],"names":["useNavigationClient","useMemo","getProjectNavigationVisibilityMap"],"mappings":"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"}
1
+ {"version":3,"file":"harmony119.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,169 +1,14 @@
1
- import { useMemo } from "react";
2
- import { useNavigationClient } from "./harmony60.mjs";
3
- import { getProjectNavigationVisibilityMap } from "./harmony143.mjs";
4
- const useExpertNavigation = (enabled, project, contributor) => {
5
- const adminRights = (contributor == null ? void 0 : contributor.admin_rights) || [];
6
- const marketingSupportProjectSelectedAppSlug = "selected-app-slug";
7
- const navigationClient = useNavigationClient();
8
- const expertUrl = navigationClient.getExpertUrl();
9
- return useMemo(() => {
10
- if (!project || !enabled) {
11
- return [];
12
- }
13
- const navigationVisibility = getProjectNavigationVisibilityMap(
14
- project,
15
- adminRights,
16
- () => true
17
- );
18
- const appsNavigationItem = {
19
- key: "apps",
20
- label: "Apps",
21
- isActive: (input) => input === "apps",
22
- link: `${expertUrl}/apps/${project.project_id}/`,
23
- ...navigationVisibility.apps
24
- };
25
- const appsNavigationItemArrInMainMenu = [];
26
- const appsNavigationItemArrInMoreMenu = [];
27
- if (project.project_type === "content_integration") {
28
- appsNavigationItemArrInMoreMenu.push(appsNavigationItem);
29
- } else {
30
- appsNavigationItemArrInMainMenu.push(appsNavigationItem);
31
- }
32
- return [
33
- {
34
- key: "edit",
35
- label: "Editor",
36
- link: `${expertUrl}/project/${project.project_id}/`,
37
- isActive: (input) => input === "edit",
38
- ...navigationVisibility.editor
39
- },
40
- {
41
- key: "files",
42
- label: "Files",
43
- link: `${expertUrl}/files/${project.project_id}/`,
44
- isActive: (input) => input === "files",
45
- ...navigationVisibility.files
46
- },
47
- ...project.project_type === "content_integration" ? [
48
- {
49
- key: "contentManagement",
50
- label: "Content management",
51
- isActive: (input) => input === "apps",
52
- link: `${expertUrl}/apps/${project.project_id}/${marketingSupportProjectSelectedAppSlug}`,
53
- ...navigationVisibility.contentManagement
54
- }
55
- ] : [
56
- {
57
- key: "upload",
58
- label: "Upload",
59
- link: `${expertUrl}/upload/${project.project_id}/`,
60
- isActive: (input) => input === "upload",
61
- ...navigationVisibility.upload
62
- },
63
- {
64
- key: "download",
65
- label: "Download",
66
- link: `${expertUrl}/download/${project.project_id}/`,
67
- isActive: (input) => input === "download",
68
- ...navigationVisibility.download
69
- }
70
- ],
71
- {
72
- key: "tasks",
73
- label: "Tasks",
74
- link: `${expertUrl}/tasks/${project.project_id}/`,
75
- isActive: (input) => input === "tasks",
76
- // TODO: Add task count
77
- // badge: taskCount,
78
- ...navigationVisibility.tasks
79
- },
80
- {
81
- key: "workflows",
82
- label: "Workflows",
83
- link: `${expertUrl}/workflows/${project.project_id}/`,
84
- isActive: (input) => input === "workflows",
85
- novel: "New",
86
- onClick: () => {
87
- window.location.assign(`${expertUrl}/workflows/${project.project_id}/`);
88
- },
89
- ...navigationVisibility.workflows
90
- },
91
- {
92
- key: "contributors",
93
- label: "Contributors",
94
- link: `${expertUrl}/contributors/${project.project_id}/`,
95
- isActive: (input) => input === "contributors",
96
- ...navigationVisibility.contributors
97
- },
98
- {
99
- key: "screenshots",
100
- label: "Screenshots",
101
- link: `${expertUrl}/screenshots/${project.project_id}/`,
102
- isActive: (input) => input === "screenshots",
103
- ...navigationVisibility.screenshots
104
- },
105
- {
106
- key: "glossary",
107
- label: "Glossary",
108
- link: `${expertUrl}/glossary/${project.project_id}/`,
109
- isActive: (input) => input === "glossary",
110
- ...navigationVisibility.glossary
111
- },
112
- ...appsNavigationItemArrInMainMenu,
113
- {
114
- key: "more",
115
- label: "More...",
116
- isActive: (input) => ["settings", "statistics", "duplicates", "live edit"].includes(input),
117
- ...navigationVisibility.more,
118
- dropdown: [
119
- [
120
- {
121
- link: `${expertUrl}/settings/${project.project_id}/`,
122
- label: "Settings",
123
- ...navigationVisibility.settings
124
- },
125
- {
126
- link: `${expertUrl}/settings/${project.project_id}/#branches`,
127
- label: "Branches",
128
- ...navigationVisibility.branches
129
- },
130
- {
131
- link: `${expertUrl}/settings/${project.project_id}/#ota-bundles`,
132
- label: "OTA Bundles",
133
- ...navigationVisibility.otaBundles
134
- },
135
- {
136
- link: `${expertUrl}/settings/${project.project_id}/#project-automations`,
137
- label: "Automations",
138
- ...navigationVisibility.automations
139
- },
140
- {
141
- link: `${expertUrl}/dupes/${project.project_id}/`,
142
- label: "Duplicate finder",
143
- ...navigationVisibility.duplicateFinder
144
- }
145
- ],
146
- [
147
- ...appsNavigationItemArrInMoreMenu,
148
- {
149
- // TODO: This could be problematic tab, because it is not a link and we can't just redirect. We need to find a workaround for that.
150
- label: "Activity",
151
- onClick: () => {
152
- },
153
- ...navigationVisibility.activity
154
- },
155
- {
156
- link: `${expertUrl}/statistics/${project.project_id}/`,
157
- label: "Statistics",
158
- ...navigationVisibility.statistics
159
- }
160
- ]
161
- ]
162
- }
163
- ];
164
- }, [project, adminRights, enabled, expertUrl]);
165
- };
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { Tag } from "@lokalise/louis";
3
+ import classes from "./harmony120.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
+ ] });
166
11
  export {
167
- useExpertNavigation
12
+ NavItemContents
168
13
  };
169
14
  //# sourceMappingURL=harmony119.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony119.mjs","sources":["../src/features/navigation/hooks/useExpertNavigation.ts"],"sourcesContent":["import type { Contributor, Project } from '@features/node'\nimport { useMemo } from 'react'\nimport { useNavigationClient } from '../providers/NavigationClientProvider'\nimport type { NavigationTabsItem } from '../types/navigation'\nimport { getProjectNavigationVisibilityMap } from '../utils/toolbarVisibility'\n\n// TODO: Validate features types\nexport const getIsFeatureEnabled = (features: Record<string, boolean>, name: string) => {\n\tconst featureState = features[name]\n\n\treturn (\n\t\tfeatureState !== null &&\n\t\tfeatureState !== undefined &&\n\t\t[true, 'on', 'true'].includes(featureState)\n\t)\n}\n\n/**\n * Hook to generate legacy navigation items using the existing structure\n * but with context API instead of Redux\n */\nexport const useExpertNavigation = (\n\tenabled: boolean,\n\tproject?: Project,\n\tcontributor?: Contributor,\n) => {\n\t// Use contributor data if provided, otherwise use defaults\n\tconst adminRights = contributor?.admin_rights || []\n\t// TODO: Implement selected app slug, small investigation is needed\n\tconst marketingSupportProjectSelectedAppSlug = 'selected-app-slug'\n\tconst navigationClient = useNavigationClient()\n\tconst expertUrl = navigationClient.getExpertUrl()\n\n\treturn useMemo(() => {\n\t\t// Get data from contexts instead of Redux, or use provided data\n\t\tif (!project || !enabled) {\n\t\t\treturn []\n\t\t}\n\t\t/* TODO: We're missing badges API. We need to get it from the backend or find alternative way to get task count\n\t\t * Fetch tasks and calculate count is not a good idea, because it can have pagination, therefore we can\n\t\t * ask for an additional prop in tasks response: task_count based on branch_id + project_id + task_status\n\t\t */\n\t\t// const taskCount = getTaskCount(project, branch, badges.tasks)\n\n\t\t// TODO: Implement feature flags functionality, most likely separate package\n\t\t// const isFeatureEnabled = (feature: string) => getIsFeatureEnabled(features, feature)\n\n\t\tconst navigationVisibility = getProjectNavigationVisibilityMap(\n\t\t\tproject,\n\t\t\tadminRights,\n\t\t\t() => true /*isFeatureEnabled*/,\n\t\t)\n\n\t\tconst appsNavigationItem: NavigationTabsItem = {\n\t\t\tkey: 'apps',\n\t\t\tlabel: 'Apps',\n\t\t\tisActive: (input: string) => input === 'apps',\n\t\t\tlink: `${expertUrl}/apps/${project.project_id}/`,\n\t\t\t...navigationVisibility.apps,\n\t\t}\n\n\t\tconst appsNavigationItemArrInMainMenu: NavigationTabsItem[] = []\n\t\tconst appsNavigationItemArrInMoreMenu: NavigationTabsItem[] = []\n\n\t\tif (project.project_type === 'content_integration') {\n\t\t\tappsNavigationItemArrInMoreMenu.push(appsNavigationItem)\n\t\t} else {\n\t\t\tappsNavigationItemArrInMainMenu.push(appsNavigationItem)\n\t\t}\n\n\t\treturn [\n\t\t\t{\n\t\t\t\tkey: 'edit',\n\t\t\t\tlabel: 'Editor',\n\t\t\t\tlink: `${expertUrl}/project/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'edit',\n\t\t\t\t...navigationVisibility.editor,\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: 'files',\n\t\t\t\tlabel: 'Files',\n\t\t\t\tlink: `${expertUrl}/files/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'files',\n\t\t\t\t...navigationVisibility.files,\n\t\t\t},\n\t\t\t...(project.project_type === 'content_integration'\n\t\t\t\t? [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tkey: 'contentManagement',\n\t\t\t\t\t\t\tlabel: 'Content management',\n\t\t\t\t\t\t\tisActive: (input: string) => input === 'apps',\n\t\t\t\t\t\t\tlink: `${expertUrl}/apps/${project.project_id}/${marketingSupportProjectSelectedAppSlug}`,\n\t\t\t\t\t\t\t...navigationVisibility.contentManagement,\n\t\t\t\t\t\t},\n\t\t\t\t\t]\n\t\t\t\t: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tkey: 'upload',\n\t\t\t\t\t\t\tlabel: 'Upload',\n\t\t\t\t\t\t\tlink: `${expertUrl}/upload/${project.project_id}/`,\n\t\t\t\t\t\t\tisActive: (input: string) => input === 'upload',\n\t\t\t\t\t\t\t...navigationVisibility.upload,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tkey: 'download',\n\t\t\t\t\t\t\tlabel: 'Download',\n\t\t\t\t\t\t\tlink: `${expertUrl}/download/${project.project_id}/`,\n\t\t\t\t\t\t\tisActive: (input: string) => input === 'download',\n\t\t\t\t\t\t\t...navigationVisibility.download,\n\t\t\t\t\t\t},\n\t\t\t\t\t]),\n\t\t\t{\n\t\t\t\tkey: 'tasks',\n\t\t\t\tlabel: 'Tasks',\n\t\t\t\tlink: `${expertUrl}/tasks/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'tasks',\n\t\t\t\t// TODO: Add task count\n\t\t\t\t// badge: taskCount,\n\t\t\t\t...navigationVisibility.tasks,\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: 'workflows',\n\t\t\t\tlabel: 'Workflows',\n\t\t\t\tlink: `${expertUrl}/workflows/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'workflows',\n\t\t\t\tnovel: 'New',\n\t\t\t\tonClick: () => {\n\t\t\t\t\t// TODO: Resolve analytics globally, most likely separate package\n\t\t\t\t\t// track(AnalyticsEventName.EDITOR_WORKFLOWS_TAB_CLICKED);\n\t\t\t\t\twindow.location.assign(`${expertUrl}/workflows/${project.project_id}/`)\n\t\t\t\t},\n\t\t\t\t...navigationVisibility.workflows,\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: 'contributors',\n\t\t\t\tlabel: 'Contributors',\n\t\t\t\tlink: `${expertUrl}/contributors/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'contributors',\n\t\t\t\t...navigationVisibility.contributors,\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: 'screenshots',\n\t\t\t\tlabel: 'Screenshots',\n\t\t\t\tlink: `${expertUrl}/screenshots/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'screenshots',\n\t\t\t\t...navigationVisibility.screenshots,\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: 'glossary',\n\t\t\t\tlabel: 'Glossary',\n\t\t\t\tlink: `${expertUrl}/glossary/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'glossary',\n\t\t\t\t...navigationVisibility.glossary,\n\t\t\t},\n\t\t\t...appsNavigationItemArrInMainMenu,\n\t\t\t{\n\t\t\t\tkey: 'more',\n\t\t\t\tlabel: 'More...',\n\t\t\t\tisActive: (input: string) =>\n\t\t\t\t\t['settings', 'statistics', 'duplicates', 'live edit'].includes(input),\n\t\t\t\t...navigationVisibility.more,\n\t\t\t\tdropdown: [\n\t\t\t\t\t[\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/settings/${project.project_id}/`,\n\t\t\t\t\t\t\tlabel: 'Settings',\n\t\t\t\t\t\t\t...navigationVisibility.settings,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/settings/${project.project_id}/#branches`,\n\t\t\t\t\t\t\tlabel: 'Branches',\n\t\t\t\t\t\t\t...navigationVisibility.branches,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/settings/${project.project_id}/#ota-bundles`,\n\t\t\t\t\t\t\tlabel: 'OTA Bundles',\n\t\t\t\t\t\t\t...navigationVisibility.otaBundles,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/settings/${project.project_id}/#project-automations`,\n\t\t\t\t\t\t\tlabel: 'Automations',\n\t\t\t\t\t\t\t...navigationVisibility.automations,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/dupes/${project.project_id}/`,\n\t\t\t\t\t\t\tlabel: 'Duplicate finder',\n\t\t\t\t\t\t\t...navigationVisibility.duplicateFinder,\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t...appsNavigationItemArrInMoreMenu,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t// TODO: This could be problematic tab, because it is not a link and we can't just redirect. We need to find a workaround for that.\n\t\t\t\t\t\t\tlabel: 'Activity',\n\t\t\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\t\t\t// const showActivityEvent = new CustomEvent(\"show-activity\", {\n\t\t\t\t\t\t\t\t// \tdetail: {\n\t\t\t\t\t\t\t\t// \t\tprojectId: project.id,\n\t\t\t\t\t\t\t\t// \t\tbranchId: branch.branchId,\n\t\t\t\t\t\t\t\t// \t\tbranchName: branch.branchName,\n\t\t\t\t\t\t\t\t// \t},\n\t\t\t\t\t\t\t\t// });\n\t\t\t\t\t\t\t\t// document.dispatchEvent(showActivityEvent);\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t...navigationVisibility.activity,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/statistics/${project.project_id}/`,\n\t\t\t\t\t\t\tlabel: 'Statistics',\n\t\t\t\t\t\t\t...navigationVisibility.statistics,\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t],\n\t\t\t},\n\t\t]\n\t}, [project, adminRights, enabled, expertUrl])\n}\n\n// TODO: Helper function for getting task count from badge data\n// const _getTaskCount = (project: any, branch: any, taskBadges: any) => {\n// \tif (!taskBadges) return 0\n\n// \t// Implementation would depend on your getTaskCountFromTasks utility\n// \t// Simplified version:\n// \tconst projectTasks = taskBadges[project.id] || {}\n// \treturn projectTasks[branch.branchId || 'master'] || 0\n// }\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"harmony119.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,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
@@ -1 +1 @@
1
- {"version":3,"file":"harmony12.mjs","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":[],"mappings":";;;AAaO,MAAM,uBAAuB,cAAc;AAAA,EACjD,aAAa;AAAA,EAEb,qBAAqB;AAAA,EAErB,yBAAyB;AAAA,EACzB,cAAc,CAAC,EAAE,UAAU,MAAM,aAAa,SAAS;AAAA,EAEvD,2BAA2B;AAC5B,CAAC;AAEM,MAAM,wBAAwB,kBAAkB;AAAA,EACtD,aAAa;AAAA,EAEb,qBAAqB;AAAA,EAErB,QAAQ;AAAA,EACR,yBAAyB;AAAA,EACzB,cAAc,CAAC,EAAE,UAAU,MAAM,aAAa,SAAS;AAAA,EACvD,mBAAmB;AAAA,EAEnB,2BAA2B;AAC5B,CAAC;AAEM,MAAM,6BAA6B,kBAAkB;AAAA,EAC3D,aAAa;AAAA,EAEb,qBAAqB;AAAA,EAErB,QAAQ;AAAA,EACR,yBAAyB;AAAA,EACzB,cAAc,CAAC,EAAE,UAAU,MAAM,aAAa,SAAS;AAAA,EACvD,mBAAmB;AAAA,EAEnB,2BAA2B;AAC5B,CAAC;"}
1
+ {"version":3,"file":"harmony12.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;"}