@lokalise/harmony 2.1.0 → 2.1.1

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 (543) 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/harmony105.cjs +2 -2
  8. package/dist/harmony105.mjs +2 -2
  9. package/dist/harmony106.cjs +13 -165
  10. package/dist/harmony106.cjs.map +1 -1
  11. package/dist/harmony106.mjs +13 -165
  12. package/dist/harmony106.mjs.map +1 -1
  13. package/dist/harmony107.cjs +159 -37
  14. package/dist/harmony107.cjs.map +1 -1
  15. package/dist/harmony107.mjs +160 -38
  16. package/dist/harmony107.mjs.map +1 -1
  17. package/dist/harmony108.cjs +42 -12
  18. package/dist/harmony108.cjs.map +1 -1
  19. package/dist/harmony108.mjs +42 -12
  20. package/dist/harmony108.mjs.map +1 -1
  21. package/dist/harmony109.cjs +3 -12
  22. package/dist/harmony109.cjs.map +1 -1
  23. package/dist/harmony109.mjs +3 -12
  24. package/dist/harmony109.mjs.map +1 -1
  25. package/dist/harmony11.cjs +55 -30
  26. package/dist/harmony11.cjs.map +1 -1
  27. package/dist/harmony11.mjs +55 -30
  28. package/dist/harmony11.mjs.map +1 -1
  29. package/dist/harmony110.cjs +18 -12
  30. package/dist/harmony110.cjs.map +1 -1
  31. package/dist/harmony110.mjs +17 -11
  32. package/dist/harmony110.mjs.map +1 -1
  33. package/dist/harmony111.cjs +76 -3
  34. package/dist/harmony111.cjs.map +1 -1
  35. package/dist/harmony111.mjs +76 -3
  36. package/dist/harmony111.mjs.map +1 -1
  37. package/dist/harmony112.cjs +11 -17
  38. package/dist/harmony112.cjs.map +1 -1
  39. package/dist/harmony112.mjs +11 -17
  40. package/dist/harmony112.mjs.map +1 -1
  41. package/dist/harmony113.cjs +34 -76
  42. package/dist/harmony113.cjs.map +1 -1
  43. package/dist/harmony113.mjs +34 -76
  44. package/dist/harmony113.mjs.map +1 -1
  45. package/dist/harmony114.cjs +9 -12
  46. package/dist/harmony114.cjs.map +1 -1
  47. package/dist/harmony114.mjs +9 -12
  48. package/dist/harmony114.mjs.map +1 -1
  49. package/dist/harmony115.cjs +47 -34
  50. package/dist/harmony115.cjs.map +1 -1
  51. package/dist/harmony115.mjs +47 -34
  52. package/dist/harmony115.mjs.map +1 -1
  53. package/dist/harmony116.cjs +10 -10
  54. package/dist/harmony116.cjs.map +1 -1
  55. package/dist/harmony116.mjs +9 -9
  56. package/dist/harmony116.mjs.map +1 -1
  57. package/dist/harmony117.cjs +9 -45
  58. package/dist/harmony117.cjs.map +1 -1
  59. package/dist/harmony117.mjs +11 -47
  60. package/dist/harmony117.mjs.map +1 -1
  61. package/dist/harmony118.cjs +20 -8
  62. package/dist/harmony118.cjs.map +1 -1
  63. package/dist/harmony118.mjs +20 -8
  64. package/dist/harmony118.mjs.map +1 -1
  65. package/dist/harmony119.cjs +10 -9
  66. package/dist/harmony119.cjs.map +1 -1
  67. package/dist/harmony119.mjs +12 -11
  68. package/dist/harmony119.mjs.map +1 -1
  69. package/dist/harmony12.cjs +30 -22
  70. package/dist/harmony12.cjs.map +1 -1
  71. package/dist/harmony12.mjs +30 -22
  72. package/dist/harmony12.mjs.map +1 -1
  73. package/dist/harmony120.cjs +11 -20
  74. package/dist/harmony120.cjs.map +1 -1
  75. package/dist/harmony120.mjs +11 -20
  76. package/dist/harmony120.mjs.map +1 -1
  77. package/dist/harmony121.cjs +20 -7
  78. package/dist/harmony121.cjs.map +1 -1
  79. package/dist/harmony121.mjs +20 -7
  80. package/dist/harmony121.mjs.map +1 -1
  81. package/dist/harmony122.cjs +97 -15
  82. package/dist/harmony122.cjs.map +1 -1
  83. package/dist/harmony122.mjs +81 -16
  84. package/dist/harmony122.mjs.map +1 -1
  85. package/dist/harmony123.cjs +86 -7
  86. package/dist/harmony123.cjs.map +1 -1
  87. package/dist/harmony123.mjs +86 -7
  88. package/dist/harmony123.mjs.map +1 -1
  89. package/dist/harmony124.cjs +30 -8
  90. package/dist/harmony124.cjs.map +1 -1
  91. package/dist/harmony124.mjs +30 -8
  92. package/dist/harmony124.mjs.map +1 -1
  93. package/dist/harmony125.cjs +7 -15
  94. package/dist/harmony125.cjs.map +1 -1
  95. package/dist/harmony125.mjs +7 -15
  96. package/dist/harmony125.mjs.map +1 -1
  97. package/dist/harmony126.cjs +17 -20
  98. package/dist/harmony126.cjs.map +1 -1
  99. package/dist/harmony126.mjs +17 -20
  100. package/dist/harmony126.mjs.map +1 -1
  101. package/dist/harmony127.cjs +7 -98
  102. package/dist/harmony127.cjs.map +1 -1
  103. package/dist/harmony127.mjs +7 -81
  104. package/dist/harmony127.mjs.map +1 -1
  105. package/dist/harmony128.cjs +7 -86
  106. package/dist/harmony128.cjs.map +1 -1
  107. package/dist/harmony128.mjs +7 -86
  108. package/dist/harmony128.mjs.map +1 -1
  109. package/dist/harmony129.cjs +15 -30
  110. package/dist/harmony129.cjs.map +1 -1
  111. package/dist/harmony129.mjs +15 -30
  112. package/dist/harmony129.mjs.map +1 -1
  113. package/dist/harmony13.cjs +11 -52
  114. package/dist/harmony13.cjs.map +1 -1
  115. package/dist/harmony13.mjs +11 -52
  116. package/dist/harmony13.mjs.map +1 -1
  117. package/dist/harmony131.cjs +2 -2
  118. package/dist/harmony131.mjs +2 -2
  119. package/dist/harmony132.cjs +2 -2
  120. package/dist/harmony132.mjs +2 -2
  121. package/dist/harmony133.cjs +3 -3
  122. package/dist/harmony133.mjs +3 -3
  123. package/dist/harmony134.cjs +1 -1
  124. package/dist/harmony134.mjs +1 -1
  125. package/dist/harmony135.cjs +3 -3
  126. package/dist/harmony135.mjs +3 -3
  127. package/dist/harmony136.cjs +2 -2
  128. package/dist/harmony136.mjs +2 -2
  129. package/dist/harmony137.cjs +3 -3
  130. package/dist/harmony137.mjs +3 -3
  131. package/dist/harmony138.cjs +2 -2
  132. package/dist/harmony138.mjs +2 -2
  133. package/dist/harmony139.cjs +2 -2
  134. package/dist/harmony139.mjs +2 -2
  135. package/dist/harmony14.cjs +55 -9
  136. package/dist/harmony14.cjs.map +1 -1
  137. package/dist/harmony14.mjs +55 -9
  138. package/dist/harmony14.mjs.map +1 -1
  139. package/dist/harmony140.cjs +4 -4
  140. package/dist/harmony140.mjs +4 -4
  141. package/dist/harmony142.cjs +1 -1
  142. package/dist/harmony142.mjs +1 -1
  143. package/dist/harmony145.cjs +6 -4
  144. package/dist/harmony145.cjs.map +1 -1
  145. package/dist/harmony145.mjs +5 -3
  146. package/dist/harmony145.mjs.map +1 -1
  147. package/dist/harmony146.cjs +6 -4
  148. package/dist/harmony146.cjs.map +1 -1
  149. package/dist/harmony146.mjs +5 -3
  150. package/dist/harmony146.mjs.map +1 -1
  151. package/dist/harmony147.cjs +10 -3
  152. package/dist/harmony147.cjs.map +1 -1
  153. package/dist/harmony147.mjs +10 -3
  154. package/dist/harmony147.mjs.map +1 -1
  155. package/dist/harmony148.cjs +3 -14
  156. package/dist/harmony148.cjs.map +1 -1
  157. package/dist/harmony148.mjs +3 -14
  158. package/dist/harmony148.mjs.map +1 -1
  159. package/dist/harmony149.cjs +3 -14
  160. package/dist/harmony149.cjs.map +1 -1
  161. package/dist/harmony149.mjs +3 -14
  162. package/dist/harmony149.mjs.map +1 -1
  163. package/dist/harmony15.cjs +30 -5
  164. package/dist/harmony15.cjs.map +1 -1
  165. package/dist/harmony15.mjs +30 -5
  166. package/dist/harmony15.mjs.map +1 -1
  167. package/dist/harmony150.cjs +3 -3
  168. package/dist/harmony150.cjs.map +1 -1
  169. package/dist/harmony150.mjs +3 -3
  170. package/dist/harmony150.mjs.map +1 -1
  171. package/dist/harmony151.cjs +15 -6
  172. package/dist/harmony151.cjs.map +1 -1
  173. package/dist/harmony151.mjs +14 -5
  174. package/dist/harmony151.mjs.map +1 -1
  175. package/dist/harmony152.cjs +15 -6
  176. package/dist/harmony152.cjs.map +1 -1
  177. package/dist/harmony152.mjs +14 -5
  178. package/dist/harmony152.mjs.map +1 -1
  179. package/dist/harmony153.cjs +3 -10
  180. package/dist/harmony153.cjs.map +1 -1
  181. package/dist/harmony153.mjs +3 -10
  182. package/dist/harmony153.mjs.map +1 -1
  183. package/dist/harmony154.cjs +10 -97
  184. package/dist/harmony154.cjs.map +1 -1
  185. package/dist/harmony154.mjs +9 -96
  186. package/dist/harmony154.mjs.map +1 -1
  187. package/dist/harmony155.cjs +7 -14
  188. package/dist/harmony155.cjs.map +1 -1
  189. package/dist/harmony155.mjs +6 -13
  190. package/dist/harmony155.mjs.map +1 -1
  191. package/dist/harmony156.cjs +10 -15
  192. package/dist/harmony156.cjs.map +1 -1
  193. package/dist/harmony156.mjs +9 -14
  194. package/dist/harmony156.mjs.map +1 -1
  195. package/dist/harmony157.cjs +25 -37
  196. package/dist/harmony157.cjs.map +1 -1
  197. package/dist/harmony157.mjs +24 -36
  198. package/dist/harmony157.mjs.map +1 -1
  199. package/dist/harmony158.cjs +7 -29
  200. package/dist/harmony158.cjs.map +1 -1
  201. package/dist/harmony158.mjs +6 -28
  202. package/dist/harmony158.mjs.map +1 -1
  203. package/dist/harmony159.cjs +12 -32
  204. package/dist/harmony159.cjs.map +1 -1
  205. package/dist/harmony159.mjs +11 -31
  206. package/dist/harmony159.mjs.map +1 -1
  207. package/dist/harmony16.cjs +18 -15
  208. package/dist/harmony16.cjs.map +1 -1
  209. package/dist/harmony16.mjs +18 -15
  210. package/dist/harmony16.mjs.map +1 -1
  211. package/dist/harmony160.cjs +3 -6
  212. package/dist/harmony160.cjs.map +1 -1
  213. package/dist/harmony160.mjs +3 -6
  214. package/dist/harmony160.mjs.map +1 -1
  215. package/dist/harmony161.cjs +97 -7
  216. package/dist/harmony161.cjs.map +1 -1
  217. package/dist/harmony161.mjs +96 -6
  218. package/dist/harmony161.mjs.map +1 -1
  219. package/dist/harmony162.cjs +14 -10
  220. package/dist/harmony162.cjs.map +1 -1
  221. package/dist/harmony162.mjs +13 -9
  222. package/dist/harmony162.mjs.map +1 -1
  223. package/dist/harmony163.cjs +15 -25
  224. package/dist/harmony163.cjs.map +1 -1
  225. package/dist/harmony163.mjs +14 -24
  226. package/dist/harmony163.mjs.map +1 -1
  227. package/dist/harmony164.cjs +37 -7
  228. package/dist/harmony164.cjs.map +1 -1
  229. package/dist/harmony164.mjs +36 -6
  230. package/dist/harmony164.mjs.map +1 -1
  231. package/dist/harmony165.cjs +29 -13
  232. package/dist/harmony165.cjs.map +1 -1
  233. package/dist/harmony165.mjs +28 -12
  234. package/dist/harmony165.mjs.map +1 -1
  235. package/dist/harmony166.cjs +32 -6
  236. package/dist/harmony166.cjs.map +1 -1
  237. package/dist/harmony166.mjs +31 -5
  238. package/dist/harmony166.mjs.map +1 -1
  239. package/dist/harmony17.cjs +28 -32
  240. package/dist/harmony17.cjs.map +1 -1
  241. package/dist/harmony17.mjs +28 -32
  242. package/dist/harmony17.mjs.map +1 -1
  243. package/dist/harmony18.cjs +14 -5
  244. package/dist/harmony18.cjs.map +1 -1
  245. package/dist/harmony18.mjs +14 -5
  246. package/dist/harmony18.mjs.map +1 -1
  247. package/dist/harmony19.cjs +13 -10
  248. package/dist/harmony19.cjs.map +1 -1
  249. package/dist/harmony19.mjs +13 -10
  250. package/dist/harmony19.mjs.map +1 -1
  251. package/dist/harmony20.cjs +13 -10
  252. package/dist/harmony20.cjs.map +1 -1
  253. package/dist/harmony20.mjs +13 -10
  254. package/dist/harmony20.mjs.map +1 -1
  255. package/dist/harmony21.cjs +13 -17
  256. package/dist/harmony21.cjs.map +1 -1
  257. package/dist/harmony21.mjs +13 -17
  258. package/dist/harmony21.mjs.map +1 -1
  259. package/dist/harmony22.cjs +13 -15
  260. package/dist/harmony22.cjs.map +1 -1
  261. package/dist/harmony22.mjs +13 -15
  262. package/dist/harmony22.mjs.map +1 -1
  263. package/dist/harmony23.cjs +12 -141
  264. package/dist/harmony23.cjs.map +1 -1
  265. package/dist/harmony23.mjs +12 -141
  266. package/dist/harmony23.mjs.map +1 -1
  267. package/dist/harmony24.cjs +22 -20
  268. package/dist/harmony24.cjs.map +1 -1
  269. package/dist/harmony24.mjs +22 -20
  270. package/dist/harmony24.mjs.map +1 -1
  271. package/dist/harmony25.cjs +13 -14
  272. package/dist/harmony25.cjs.map +1 -1
  273. package/dist/harmony25.mjs +13 -14
  274. package/dist/harmony25.mjs.map +1 -1
  275. package/dist/harmony26.cjs +12 -16
  276. package/dist/harmony26.cjs.map +1 -1
  277. package/dist/harmony26.mjs +13 -17
  278. package/dist/harmony26.mjs.map +1 -1
  279. package/dist/harmony27.cjs +15 -16
  280. package/dist/harmony27.cjs.map +1 -1
  281. package/dist/harmony27.mjs +16 -17
  282. package/dist/harmony27.mjs.map +1 -1
  283. package/dist/harmony28.cjs +15 -18
  284. package/dist/harmony28.cjs.map +1 -1
  285. package/dist/harmony28.mjs +15 -18
  286. package/dist/harmony28.mjs.map +1 -1
  287. package/dist/harmony29.cjs +15 -20
  288. package/dist/harmony29.cjs.map +1 -1
  289. package/dist/harmony29.mjs +15 -20
  290. package/dist/harmony29.mjs.map +1 -1
  291. package/dist/harmony30.cjs +15 -10
  292. package/dist/harmony30.cjs.map +1 -1
  293. package/dist/harmony30.mjs +15 -10
  294. package/dist/harmony30.mjs.map +1 -1
  295. package/dist/harmony31.cjs +15 -11
  296. package/dist/harmony31.cjs.map +1 -1
  297. package/dist/harmony31.mjs +15 -11
  298. package/dist/harmony31.mjs.map +1 -1
  299. package/dist/harmony32.cjs +16 -8
  300. package/dist/harmony32.cjs.map +1 -1
  301. package/dist/harmony32.mjs +16 -8
  302. package/dist/harmony32.mjs.map +1 -1
  303. package/dist/harmony33.cjs +16 -8
  304. package/dist/harmony33.cjs.map +1 -1
  305. package/dist/harmony33.mjs +16 -8
  306. package/dist/harmony33.mjs.map +1 -1
  307. package/dist/harmony34.cjs +16 -14
  308. package/dist/harmony34.cjs.map +1 -1
  309. package/dist/harmony34.mjs +16 -14
  310. package/dist/harmony34.mjs.map +1 -1
  311. package/dist/harmony35.cjs +16 -13
  312. package/dist/harmony35.cjs.map +1 -1
  313. package/dist/harmony35.mjs +16 -13
  314. package/dist/harmony35.mjs.map +1 -1
  315. package/dist/harmony36.cjs +16 -13
  316. package/dist/harmony36.cjs.map +1 -1
  317. package/dist/harmony36.mjs +16 -13
  318. package/dist/harmony36.mjs.map +1 -1
  319. package/dist/harmony37.cjs +14 -13
  320. package/dist/harmony37.cjs.map +1 -1
  321. package/dist/harmony37.mjs +14 -13
  322. package/dist/harmony37.mjs.map +1 -1
  323. package/dist/harmony38.cjs +16 -13
  324. package/dist/harmony38.cjs.map +1 -1
  325. package/dist/harmony38.mjs +16 -13
  326. package/dist/harmony38.mjs.map +1 -1
  327. package/dist/harmony39.cjs +16 -7
  328. package/dist/harmony39.cjs.map +1 -1
  329. package/dist/harmony39.mjs +16 -7
  330. package/dist/harmony39.mjs.map +1 -1
  331. package/dist/harmony40.cjs +17 -10
  332. package/dist/harmony40.cjs.map +1 -1
  333. package/dist/harmony40.mjs +17 -10
  334. package/dist/harmony40.mjs.map +1 -1
  335. package/dist/harmony41.cjs +14 -11
  336. package/dist/harmony41.cjs.map +1 -1
  337. package/dist/harmony41.mjs +14 -11
  338. package/dist/harmony41.mjs.map +1 -1
  339. package/dist/harmony42.cjs +14 -9
  340. package/dist/harmony42.cjs.map +1 -1
  341. package/dist/harmony42.mjs +14 -9
  342. package/dist/harmony42.mjs.map +1 -1
  343. package/dist/harmony43.cjs +124 -9
  344. package/dist/harmony43.cjs.map +1 -1
  345. package/dist/harmony43.mjs +124 -9
  346. package/dist/harmony43.mjs.map +1 -1
  347. package/dist/harmony44.cjs +82 -9
  348. package/dist/harmony44.cjs.map +1 -1
  349. package/dist/harmony44.mjs +82 -9
  350. package/dist/harmony44.mjs.map +1 -1
  351. package/dist/harmony45.cjs +6 -88
  352. package/dist/harmony45.cjs.map +1 -1
  353. package/dist/harmony45.mjs +6 -88
  354. package/dist/harmony45.mjs.map +1 -1
  355. package/dist/harmony46.cjs +25 -52
  356. package/dist/harmony46.cjs.map +1 -1
  357. package/dist/harmony46.mjs +25 -52
  358. package/dist/harmony46.mjs.map +1 -1
  359. package/dist/harmony47.cjs +23 -30
  360. package/dist/harmony47.cjs.map +1 -1
  361. package/dist/harmony47.mjs +23 -30
  362. package/dist/harmony47.mjs.map +1 -1
  363. package/dist/harmony48.cjs +141 -11
  364. package/dist/harmony48.cjs.map +1 -1
  365. package/dist/harmony48.mjs +140 -10
  366. package/dist/harmony48.mjs.map +1 -1
  367. package/dist/harmony49.cjs +32 -50
  368. package/dist/harmony49.cjs.map +1 -1
  369. package/dist/harmony49.mjs +32 -50
  370. package/dist/harmony49.mjs.map +1 -1
  371. package/dist/harmony5.cjs +5 -5
  372. package/dist/harmony5.mjs +5 -5
  373. package/dist/harmony50.cjs +26 -30
  374. package/dist/harmony50.cjs.map +1 -1
  375. package/dist/harmony50.mjs +26 -30
  376. package/dist/harmony50.mjs.map +1 -1
  377. package/dist/harmony51.cjs +4 -18
  378. package/dist/harmony51.cjs.map +1 -1
  379. package/dist/harmony51.mjs +4 -18
  380. package/dist/harmony51.mjs.map +1 -1
  381. package/dist/harmony52.cjs +81 -25
  382. package/dist/harmony52.cjs.map +1 -1
  383. package/dist/harmony52.mjs +81 -25
  384. package/dist/harmony52.mjs.map +1 -1
  385. package/dist/harmony53.cjs +57 -13
  386. package/dist/harmony53.cjs.map +1 -1
  387. package/dist/harmony53.mjs +56 -12
  388. package/dist/harmony53.mjs.map +1 -1
  389. package/dist/harmony54.cjs +18 -14
  390. package/dist/harmony54.cjs.map +1 -1
  391. package/dist/harmony54.mjs +18 -14
  392. package/dist/harmony54.mjs.map +1 -1
  393. package/dist/harmony55.cjs +30 -14
  394. package/dist/harmony55.cjs.map +1 -1
  395. package/dist/harmony55.mjs +30 -14
  396. package/dist/harmony55.mjs.map +1 -1
  397. package/dist/harmony56.cjs +22 -13
  398. package/dist/harmony56.cjs.map +1 -1
  399. package/dist/harmony56.mjs +22 -13
  400. package/dist/harmony56.mjs.map +1 -1
  401. package/dist/harmony57.cjs +52 -14
  402. package/dist/harmony57.cjs.map +1 -1
  403. package/dist/harmony57.mjs +52 -14
  404. package/dist/harmony57.mjs.map +1 -1
  405. package/dist/harmony58.cjs +9 -13
  406. package/dist/harmony58.cjs.map +1 -1
  407. package/dist/harmony58.mjs +9 -13
  408. package/dist/harmony58.mjs.map +1 -1
  409. package/dist/harmony59.cjs +5 -22
  410. package/dist/harmony59.cjs.map +1 -1
  411. package/dist/harmony59.mjs +5 -22
  412. package/dist/harmony59.mjs.map +1 -1
  413. package/dist/harmony6.cjs +1 -1
  414. package/dist/harmony6.mjs +2 -2
  415. package/dist/harmony60.cjs +14 -12
  416. package/dist/harmony60.cjs.map +1 -1
  417. package/dist/harmony60.mjs +14 -12
  418. package/dist/harmony60.mjs.map +1 -1
  419. package/dist/harmony61.cjs +31 -12
  420. package/dist/harmony61.cjs.map +1 -1
  421. package/dist/harmony61.mjs +31 -12
  422. package/dist/harmony61.mjs.map +1 -1
  423. package/dist/harmony62.cjs +5 -17
  424. package/dist/harmony62.cjs.map +1 -1
  425. package/dist/harmony62.mjs +5 -17
  426. package/dist/harmony62.mjs.map +1 -1
  427. package/dist/harmony63.cjs +10 -16
  428. package/dist/harmony63.cjs.map +1 -1
  429. package/dist/harmony63.mjs +10 -16
  430. package/dist/harmony63.mjs.map +1 -1
  431. package/dist/harmony64.cjs +11 -15
  432. package/dist/harmony64.cjs.map +1 -1
  433. package/dist/harmony64.mjs +11 -15
  434. package/dist/harmony64.mjs.map +1 -1
  435. package/dist/harmony65.cjs +18 -15
  436. package/dist/harmony65.cjs.map +1 -1
  437. package/dist/harmony65.mjs +18 -15
  438. package/dist/harmony65.mjs.map +1 -1
  439. package/dist/harmony66.cjs +16 -15
  440. package/dist/harmony66.cjs.map +1 -1
  441. package/dist/harmony66.mjs +16 -15
  442. package/dist/harmony66.mjs.map +1 -1
  443. package/dist/harmony67.cjs +142 -17
  444. package/dist/harmony67.cjs.map +1 -1
  445. package/dist/harmony67.mjs +142 -17
  446. package/dist/harmony67.mjs.map +1 -1
  447. package/dist/harmony68.cjs +19 -16
  448. package/dist/harmony68.cjs.map +1 -1
  449. package/dist/harmony68.mjs +19 -16
  450. package/dist/harmony68.mjs.map +1 -1
  451. package/dist/harmony69.cjs +13 -16
  452. package/dist/harmony69.cjs.map +1 -1
  453. package/dist/harmony69.mjs +13 -16
  454. package/dist/harmony69.mjs.map +1 -1
  455. package/dist/harmony70.cjs +15 -15
  456. package/dist/harmony70.cjs.map +1 -1
  457. package/dist/harmony70.mjs +16 -16
  458. package/dist/harmony70.mjs.map +1 -1
  459. package/dist/harmony71.cjs +16 -15
  460. package/dist/harmony71.cjs.map +1 -1
  461. package/dist/harmony71.mjs +17 -16
  462. package/dist/harmony71.mjs.map +1 -1
  463. package/dist/harmony72.cjs +20 -15
  464. package/dist/harmony72.cjs.map +1 -1
  465. package/dist/harmony72.mjs +20 -15
  466. package/dist/harmony72.mjs.map +1 -1
  467. package/dist/harmony73.cjs +19 -16
  468. package/dist/harmony73.cjs.map +1 -1
  469. package/dist/harmony73.mjs +19 -16
  470. package/dist/harmony73.mjs.map +1 -1
  471. package/dist/harmony74.cjs +8 -15
  472. package/dist/harmony74.cjs.map +1 -1
  473. package/dist/harmony74.mjs +8 -15
  474. package/dist/harmony74.mjs.map +1 -1
  475. package/dist/harmony75.cjs +9 -16
  476. package/dist/harmony75.cjs.map +1 -1
  477. package/dist/harmony75.mjs +9 -16
  478. package/dist/harmony75.mjs.map +1 -1
  479. package/dist/harmony76.cjs +9 -14
  480. package/dist/harmony76.cjs.map +1 -1
  481. package/dist/harmony76.mjs +9 -14
  482. package/dist/harmony76.mjs.map +1 -1
  483. package/dist/harmony77.cjs +9 -14
  484. package/dist/harmony77.cjs.map +1 -1
  485. package/dist/harmony77.mjs +9 -14
  486. package/dist/harmony77.mjs.map +1 -1
  487. package/dist/harmony78.cjs +15 -124
  488. package/dist/harmony78.cjs.map +1 -1
  489. package/dist/harmony78.mjs +15 -124
  490. package/dist/harmony78.mjs.map +1 -1
  491. package/dist/harmony79.cjs +14 -82
  492. package/dist/harmony79.cjs.map +1 -1
  493. package/dist/harmony79.mjs +14 -82
  494. package/dist/harmony79.mjs.map +1 -1
  495. package/dist/harmony80.cjs +14 -6
  496. package/dist/harmony80.cjs.map +1 -1
  497. package/dist/harmony80.mjs +14 -6
  498. package/dist/harmony80.mjs.map +1 -1
  499. package/dist/harmony81.cjs +14 -28
  500. package/dist/harmony81.cjs.map +1 -1
  501. package/dist/harmony81.mjs +14 -28
  502. package/dist/harmony81.mjs.map +1 -1
  503. package/dist/harmony82.cjs +14 -24
  504. package/dist/harmony82.cjs.map +1 -1
  505. package/dist/harmony82.mjs +14 -24
  506. package/dist/harmony82.mjs.map +1 -1
  507. package/dist/harmony83.cjs +8 -141
  508. package/dist/harmony83.cjs.map +1 -1
  509. package/dist/harmony83.mjs +8 -141
  510. package/dist/harmony83.mjs.map +1 -1
  511. package/dist/harmony84.cjs +11 -37
  512. package/dist/harmony84.cjs.map +1 -1
  513. package/dist/harmony84.mjs +11 -37
  514. package/dist/harmony84.mjs.map +1 -1
  515. package/dist/harmony85.cjs +11 -26
  516. package/dist/harmony85.cjs.map +1 -1
  517. package/dist/harmony85.mjs +11 -26
  518. package/dist/harmony85.mjs.map +1 -1
  519. package/dist/harmony86.cjs +9 -4
  520. package/dist/harmony86.cjs.map +1 -1
  521. package/dist/harmony86.mjs +9 -4
  522. package/dist/harmony86.mjs.map +1 -1
  523. package/dist/harmony87.cjs +9 -84
  524. package/dist/harmony87.cjs.map +1 -1
  525. package/dist/harmony87.mjs +9 -84
  526. package/dist/harmony87.mjs.map +1 -1
  527. package/dist/harmony88.cjs +9 -58
  528. package/dist/harmony88.cjs.map +1 -1
  529. package/dist/harmony88.mjs +9 -58
  530. package/dist/harmony88.mjs.map +1 -1
  531. package/dist/harmony89.cjs +88 -18
  532. package/dist/harmony89.cjs.map +1 -1
  533. package/dist/harmony89.mjs +88 -18
  534. package/dist/harmony89.mjs.map +1 -1
  535. package/dist/harmony94.cjs +1 -1
  536. package/dist/harmony94.mjs +1 -1
  537. package/dist/harmony96.cjs +2 -2
  538. package/dist/harmony96.mjs +2 -2
  539. package/dist/harmony98.cjs +2 -2
  540. package/dist/harmony98.mjs +2 -2
  541. package/dist/harmony99.cjs +4 -4
  542. package/dist/harmony99.mjs +4 -4
  543. package/package.json +1 -1
@@ -1,17 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const canPerformActionByProjectType = require("./harmony159.cjs");
4
- const hasAny = require("./harmony123.cjs");
5
- const has = require("./harmony124.cjs");
6
- const canDownloadFiles = ({ projectType, projectPermissions }) => canPerformActionByProjectType.canPerformActionByProjectType(projectType, {
7
- classic: () => has.has(projectPermissions, "download"),
8
- // This is a temporary workaround for the marketing project type - upload and download permissions are not yet supported
9
- // so to restrict translators from accessing the upload/download page we are checking that they have any permissions at all.
10
- // The reason for this is that, at the moment, the Translators role will assign no permissions to the user. So we are effectively
11
- // simulating a check for 'is this user a translator?' (since project 'roles' don't actually exist).
12
- // The correct check is to check for upload permission, so when that is implemented this will continue to work as expected,
13
- // but will need to remove this first part of the check.
14
- marketing: () => hasAny.hasAny(projectPermissions, "contributors", "settings", "manage_languages") || has.has(projectPermissions, "download")
15
- });
16
- exports.canDownloadFiles = canDownloadFiles;
3
+ const has = require("./harmony128.cjs");
4
+ const accessMarketingProjects = ({ enabledFeatureFlags }) => has.has(enabledFeatureFlags, "homeMarketingBeta");
5
+ exports.accessMarketingProjects = accessMarketingProjects;
17
6
  //# sourceMappingURL=harmony148.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony148.cjs","sources":["../src/features/permissions/action-resolvers/canDownloadFiles.ts"],"sourcesContent":["import { canPerformActionByProjectType } from '@features/permissions/utils/canPerformActionByProjectType'\nimport { hasAny } from '@features/permissions/utils/hasAny'\nimport type { ActionResolver } from '../types'\nimport { has } from '../utils/has'\n\nexport const canDownloadFiles: ActionResolver = ({ projectType, projectPermissions }) =>\n\tcanPerformActionByProjectType(projectType, {\n\t\tclassic: () => has(projectPermissions, 'download'),\n\n\t\t// This is a temporary workaround for the marketing project type - upload and download permissions are not yet supported\n\t\t// so to restrict translators from accessing the upload/download page we are checking that they have any permissions at all.\n\t\t// The reason for this is that, at the moment, the Translators role will assign no permissions to the user. So we are effectively\n\t\t// simulating a check for 'is this user a translator?' (since project 'roles' don't actually exist).\n\t\t// The correct check is to check for upload permission, so when that is implemented this will continue to work as expected,\n\t\t// but will need to remove this first part of the check.\n\t\tmarketing: () =>\n\t\t\thasAny(projectPermissions, 'contributors', 'settings', 'manage_languages') ||\n\t\t\thas(projectPermissions, 'download'),\n\t})\n"],"names":["canPerformActionByProjectType","has","hasAny"],"mappings":";;;;;AAKO,MAAM,mBAAmC,CAAC,EAAE,aAAa,mBAAmB,MAClFA,8BAAAA,8BAA8B,aAAa;AAAA,EAC1C,SAAS,MAAMC,IAAAA,IAAI,oBAAoB,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQjD,WAAW,MACVC,cAAO,oBAAoB,gBAAgB,YAAY,kBAAkB,KACzED,QAAI,oBAAoB,UAAU;AACpC,CAAC;;"}
1
+ {"version":3,"file":"harmony148.cjs","sources":["../src/features/permissions/action-resolvers/accessMarketingProjects.ts"],"sourcesContent":["import type { ActionResolver } from '../types'\nimport { has } from '../utils/has'\n\nexport const accessMarketingProjects: ActionResolver = ({ enabledFeatureFlags }) =>\n\thas(enabledFeatureFlags, 'homeMarketingBeta')\n"],"names":["has"],"mappings":";;;AAGO,MAAM,0BAA0C,CAAC,EAAE,oBACzD,MAAAA,IAAA,IAAI,qBAAqB,mBAAmB;;"}
@@ -1,17 +1,6 @@
1
- import { canPerformActionByProjectType } from "./harmony159.mjs";
2
- import { hasAny } from "./harmony123.mjs";
3
- import { has } from "./harmony124.mjs";
4
- const canDownloadFiles = ({ projectType, projectPermissions }) => canPerformActionByProjectType(projectType, {
5
- classic: () => has(projectPermissions, "download"),
6
- // This is a temporary workaround for the marketing project type - upload and download permissions are not yet supported
7
- // so to restrict translators from accessing the upload/download page we are checking that they have any permissions at all.
8
- // The reason for this is that, at the moment, the Translators role will assign no permissions to the user. So we are effectively
9
- // simulating a check for 'is this user a translator?' (since project 'roles' don't actually exist).
10
- // The correct check is to check for upload permission, so when that is implemented this will continue to work as expected,
11
- // but will need to remove this first part of the check.
12
- marketing: () => hasAny(projectPermissions, "contributors", "settings", "manage_languages") || has(projectPermissions, "download")
13
- });
1
+ import { has } from "./harmony128.mjs";
2
+ const accessMarketingProjects = ({ enabledFeatureFlags }) => has(enabledFeatureFlags, "homeMarketingBeta");
14
3
  export {
15
- canDownloadFiles
4
+ accessMarketingProjects
16
5
  };
17
6
  //# sourceMappingURL=harmony148.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony148.mjs","sources":["../src/features/permissions/action-resolvers/canDownloadFiles.ts"],"sourcesContent":["import { canPerformActionByProjectType } from '@features/permissions/utils/canPerformActionByProjectType'\nimport { hasAny } from '@features/permissions/utils/hasAny'\nimport type { ActionResolver } from '../types'\nimport { has } from '../utils/has'\n\nexport const canDownloadFiles: ActionResolver = ({ projectType, projectPermissions }) =>\n\tcanPerformActionByProjectType(projectType, {\n\t\tclassic: () => has(projectPermissions, 'download'),\n\n\t\t// This is a temporary workaround for the marketing project type - upload and download permissions are not yet supported\n\t\t// so to restrict translators from accessing the upload/download page we are checking that they have any permissions at all.\n\t\t// The reason for this is that, at the moment, the Translators role will assign no permissions to the user. So we are effectively\n\t\t// simulating a check for 'is this user a translator?' (since project 'roles' don't actually exist).\n\t\t// The correct check is to check for upload permission, so when that is implemented this will continue to work as expected,\n\t\t// but will need to remove this first part of the check.\n\t\tmarketing: () =>\n\t\t\thasAny(projectPermissions, 'contributors', 'settings', 'manage_languages') ||\n\t\t\thas(projectPermissions, 'download'),\n\t})\n"],"names":[],"mappings":";;;AAKO,MAAM,mBAAmC,CAAC,EAAE,aAAa,mBAAmB,MAClF,8BAA8B,aAAa;AAAA,EAC1C,SAAS,MAAM,IAAI,oBAAoB,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQjD,WAAW,MACV,OAAO,oBAAoB,gBAAgB,YAAY,kBAAkB,KACzE,IAAI,oBAAoB,UAAU;AACpC,CAAC;"}
1
+ {"version":3,"file":"harmony148.mjs","sources":["../src/features/permissions/action-resolvers/accessMarketingProjects.ts"],"sourcesContent":["import type { ActionResolver } from '../types'\nimport { has } from '../utils/has'\n\nexport const accessMarketingProjects: ActionResolver = ({ enabledFeatureFlags }) =>\n\thas(enabledFeatureFlags, 'homeMarketingBeta')\n"],"names":[],"mappings":";AAGO,MAAM,0BAA0C,CAAC,EAAE,oBACzD,MAAA,IAAI,qBAAqB,mBAAmB;"}
@@ -1,17 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const canPerformActionByProjectType = require("./harmony159.cjs");
4
- const hasAny = require("./harmony123.cjs");
5
- const has = require("./harmony124.cjs");
6
- const canUploadFiles = ({ projectPermissions, projectType }) => canPerformActionByProjectType.canPerformActionByProjectType(projectType, {
7
- classic: () => has.has(projectPermissions, "upload"),
8
- // This is a temporary workaround for the marketing project type - upload and download permissions are not yet supported
9
- // so to restrict translators from accessing the upload/download page we are checking that they have any permissions at all.
10
- // The reason for this is that, at the moment, the Translators role will assign no permissions to the user. So we are effectively
11
- // simulating a check for 'is this user a translator?' (since project 'roles' don't actually exist).
12
- // The correct check is to check for upload permission, so when that is implemented this will continue to work as expected,
13
- // but will need to remove this first part of the check.
14
- marketing: () => hasAny.hasAny(projectPermissions, "contributors", "settings", "manage_languages") || has.has(projectPermissions, "upload")
15
- });
16
- exports.canUploadFiles = canUploadFiles;
3
+ const has = require("./harmony128.cjs");
4
+ const deleteProjects = ({ projectPermissions }) => has.has(projectPermissions, "settings");
5
+ exports.deleteProjects = deleteProjects;
17
6
  //# sourceMappingURL=harmony149.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony149.cjs","sources":["../src/features/permissions/action-resolvers/canUploadFiles.ts"],"sourcesContent":["import { canPerformActionByProjectType } from '@features/permissions/utils/canPerformActionByProjectType'\nimport { hasAny } from '@features/permissions/utils/hasAny'\nimport type { ActionResolver } from '../types'\nimport { has } from '../utils/has'\n\nexport const canUploadFiles: ActionResolver = ({ projectPermissions, projectType }) =>\n\tcanPerformActionByProjectType(projectType, {\n\t\tclassic: () => has(projectPermissions, 'upload'),\n\n\t\t// This is a temporary workaround for the marketing project type - upload and download permissions are not yet supported\n\t\t// so to restrict translators from accessing the upload/download page we are checking that they have any permissions at all.\n\t\t// The reason for this is that, at the moment, the Translators role will assign no permissions to the user. So we are effectively\n\t\t// simulating a check for 'is this user a translator?' (since project 'roles' don't actually exist).\n\t\t// The correct check is to check for upload permission, so when that is implemented this will continue to work as expected,\n\t\t// but will need to remove this first part of the check.\n\t\tmarketing: () =>\n\t\t\thasAny(projectPermissions, 'contributors', 'settings', 'manage_languages') ||\n\t\t\thas(projectPermissions, 'upload'),\n\t})\n"],"names":["canPerformActionByProjectType","has","hasAny"],"mappings":";;;;;AAKO,MAAM,iBAAiC,CAAC,EAAE,oBAAoB,YAAY,MAChFA,8BAAAA,8BAA8B,aAAa;AAAA,EAC1C,SAAS,MAAMC,IAAAA,IAAI,oBAAoB,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQ/C,WAAW,MACVC,cAAO,oBAAoB,gBAAgB,YAAY,kBAAkB,KACzED,QAAI,oBAAoB,QAAQ;AAClC,CAAC;;"}
1
+ {"version":3,"file":"harmony149.cjs","sources":["../src/features/permissions/action-resolvers/deleteProjects.ts"],"sourcesContent":["import type { ActionResolver } from '../types'\nimport { has } from '../utils/has'\n\nexport const deleteProjects: ActionResolver = ({ projectPermissions }) =>\n\thas(projectPermissions, 'settings')\n"],"names":["has"],"mappings":";;;AAGO,MAAM,iBAAiC,CAAC,EAAE,mBAChD,MAAAA,IAAA,IAAI,oBAAoB,UAAU;;"}
@@ -1,17 +1,6 @@
1
- import { canPerformActionByProjectType } from "./harmony159.mjs";
2
- import { hasAny } from "./harmony123.mjs";
3
- import { has } from "./harmony124.mjs";
4
- const canUploadFiles = ({ projectPermissions, projectType }) => canPerformActionByProjectType(projectType, {
5
- classic: () => has(projectPermissions, "upload"),
6
- // This is a temporary workaround for the marketing project type - upload and download permissions are not yet supported
7
- // so to restrict translators from accessing the upload/download page we are checking that they have any permissions at all.
8
- // The reason for this is that, at the moment, the Translators role will assign no permissions to the user. So we are effectively
9
- // simulating a check for 'is this user a translator?' (since project 'roles' don't actually exist).
10
- // The correct check is to check for upload permission, so when that is implemented this will continue to work as expected,
11
- // but will need to remove this first part of the check.
12
- marketing: () => hasAny(projectPermissions, "contributors", "settings", "manage_languages") || has(projectPermissions, "upload")
13
- });
1
+ import { has } from "./harmony128.mjs";
2
+ const deleteProjects = ({ projectPermissions }) => has(projectPermissions, "settings");
14
3
  export {
15
- canUploadFiles
4
+ deleteProjects
16
5
  };
17
6
  //# sourceMappingURL=harmony149.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony149.mjs","sources":["../src/features/permissions/action-resolvers/canUploadFiles.ts"],"sourcesContent":["import { canPerformActionByProjectType } from '@features/permissions/utils/canPerformActionByProjectType'\nimport { hasAny } from '@features/permissions/utils/hasAny'\nimport type { ActionResolver } from '../types'\nimport { has } from '../utils/has'\n\nexport const canUploadFiles: ActionResolver = ({ projectPermissions, projectType }) =>\n\tcanPerformActionByProjectType(projectType, {\n\t\tclassic: () => has(projectPermissions, 'upload'),\n\n\t\t// This is a temporary workaround for the marketing project type - upload and download permissions are not yet supported\n\t\t// so to restrict translators from accessing the upload/download page we are checking that they have any permissions at all.\n\t\t// The reason for this is that, at the moment, the Translators role will assign no permissions to the user. So we are effectively\n\t\t// simulating a check for 'is this user a translator?' (since project 'roles' don't actually exist).\n\t\t// The correct check is to check for upload permission, so when that is implemented this will continue to work as expected,\n\t\t// but will need to remove this first part of the check.\n\t\tmarketing: () =>\n\t\t\thasAny(projectPermissions, 'contributors', 'settings', 'manage_languages') ||\n\t\t\thas(projectPermissions, 'upload'),\n\t})\n"],"names":[],"mappings":";;;AAKO,MAAM,iBAAiC,CAAC,EAAE,oBAAoB,YAAY,MAChF,8BAA8B,aAAa;AAAA,EAC1C,SAAS,MAAM,IAAI,oBAAoB,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQ/C,WAAW,MACV,OAAO,oBAAoB,gBAAgB,YAAY,kBAAkB,KACzE,IAAI,oBAAoB,QAAQ;AAClC,CAAC;"}
1
+ {"version":3,"file":"harmony149.mjs","sources":["../src/features/permissions/action-resolvers/deleteProjects.ts"],"sourcesContent":["import type { ActionResolver } from '../types'\nimport { has } from '../utils/has'\n\nexport const deleteProjects: ActionResolver = ({ projectPermissions }) =>\n\thas(projectPermissions, 'settings')\n"],"names":[],"mappings":";AAGO,MAAM,iBAAiC,CAAC,EAAE,mBAChD,MAAA,IAAI,oBAAoB,UAAU;"}
@@ -1,8 +1,33 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const React = require("react");
4
- const useEffectOnce = (effect) => {
5
- React.useEffect(effect, []);
6
- };
7
- exports.useEffectOnce = useEffectOnce;
3
+ const apiContracts = require("@lokalise/api-contracts");
4
+ const scoreTypes = require("./harmony49.cjs");
5
+ const sharedTypes = require("./harmony50.cjs");
6
+ const getScore = apiContracts.buildGetRoute({
7
+ description: "Fetch translation quality score",
8
+ requestHeaderSchema: sharedTypes.BASE_API_ENDPOINT_HEADER_SCHEMA,
9
+ requestPathParamsSchema: scoreTypes.SCORE_REQUEST_QUERY_SCHEMA,
10
+ pathResolver: ({ projectId, keyId, languageId }) => `/projects/${projectId}/keys/${keyId}/languages/${languageId}/lqa-report`,
11
+ successResponseBodySchema: scoreTypes.GET_SCORE_RESPONSE_SCHEMA
12
+ });
13
+ const deleteScore = apiContracts.buildDeleteRoute({
14
+ description: "Delete translation quality score",
15
+ requestHeaderSchema: sharedTypes.BASE_API_ENDPOINT_HEADER_SCHEMA,
16
+ requestPathParamsSchema: scoreTypes.SCORE_REQUEST_QUERY_SCHEMA,
17
+ pathResolver: ({ projectId, keyId, languageId }) => `/projects/${projectId}/keys/${keyId}/languages/${languageId}/lqa-report`,
18
+ isEmptyResponseExpected: true,
19
+ successResponseBodySchema: scoreTypes.DELETE_SCORE_RESPONSE_SCHEMA
20
+ });
21
+ const createScore = apiContracts.buildPayloadRoute({
22
+ description: "Create translation quality score",
23
+ method: "put",
24
+ requestHeaderSchema: sharedTypes.BASE_API_ENDPOINT_HEADER_SCHEMA,
25
+ requestBodySchema: scoreTypes.CREATE_SCORE_REQUEST_BODY_SCHEMA,
26
+ requestPathParamsSchema: scoreTypes.SCORE_REQUEST_QUERY_SCHEMA,
27
+ pathResolver: ({ projectId, keyId, languageId }) => `/projects/${projectId}/keys/${keyId}/languages/${languageId}/lqa-report/actions/generate`,
28
+ successResponseBodySchema: scoreTypes.CREATE_SCORE_RESPONSE_SCHEMA
29
+ });
30
+ exports.createScore = createScore;
31
+ exports.deleteScore = deleteScore;
32
+ exports.getScore = getScore;
8
33
  //# sourceMappingURL=harmony15.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony15.cjs","sources":["../src/utils/hooks/useEffectOnce.ts"],"sourcesContent":["import type { EffectCallback } from 'react'\nimport { useEffect } from 'react'\n\n/**\n * React hook that runs an effect only once.\n */\nexport const useEffectOnce = (effect: EffectCallback) => {\n\tuseEffect(effect, [])\n}\n"],"names":["useEffect"],"mappings":";;;AAMa,MAAA,gBAAgB,CAAC,WAA2B;AAC9CA,QAAA,UAAA,QAAQ,EAAE;AACrB;;"}
1
+ {"version":3,"file":"harmony15.cjs","sources":["../src/features/publicApi/score.ts"],"sourcesContent":["import { buildDeleteRoute, buildGetRoute, buildPayloadRoute } from '@lokalise/api-contracts'\nimport {\n\tCREATE_SCORE_REQUEST_BODY_SCHEMA,\n\tCREATE_SCORE_RESPONSE_SCHEMA,\n\tDELETE_SCORE_RESPONSE_SCHEMA,\n\tGET_SCORE_RESPONSE_SCHEMA,\n\tSCORE_REQUEST_QUERY_SCHEMA,\n} from './types/scoreTypes'\nimport { BASE_API_ENDPOINT_HEADER_SCHEMA } from './types/sharedTypes'\n\nexport const getScore = buildGetRoute({\n\tdescription: 'Fetch translation quality score',\n\trequestHeaderSchema: BASE_API_ENDPOINT_HEADER_SCHEMA,\n\trequestPathParamsSchema: SCORE_REQUEST_QUERY_SCHEMA,\n\tpathResolver: ({ projectId, keyId, languageId }) =>\n\t\t`/projects/${projectId}/keys/${keyId}/languages/${languageId}/lqa-report`,\n\tsuccessResponseBodySchema: GET_SCORE_RESPONSE_SCHEMA,\n})\n\nexport const deleteScore = buildDeleteRoute({\n\tdescription: 'Delete translation quality score',\n\trequestHeaderSchema: BASE_API_ENDPOINT_HEADER_SCHEMA,\n\trequestPathParamsSchema: SCORE_REQUEST_QUERY_SCHEMA,\n\tpathResolver: ({ projectId, keyId, languageId }) =>\n\t\t`/projects/${projectId}/keys/${keyId}/languages/${languageId}/lqa-report`,\n\tisEmptyResponseExpected: true,\n\tsuccessResponseBodySchema: DELETE_SCORE_RESPONSE_SCHEMA,\n})\n\nexport const createScore = buildPayloadRoute({\n\tdescription: 'Create translation quality score',\n\tmethod: 'put',\n\trequestHeaderSchema: BASE_API_ENDPOINT_HEADER_SCHEMA,\n\trequestBodySchema: CREATE_SCORE_REQUEST_BODY_SCHEMA,\n\trequestPathParamsSchema: SCORE_REQUEST_QUERY_SCHEMA,\n\tpathResolver: ({ projectId, keyId, languageId }) =>\n\t\t`/projects/${projectId}/keys/${keyId}/languages/${languageId}/lqa-report/actions/generate`,\n\tsuccessResponseBodySchema: CREATE_SCORE_RESPONSE_SCHEMA,\n})\n"],"names":["buildGetRoute","BASE_API_ENDPOINT_HEADER_SCHEMA","SCORE_REQUEST_QUERY_SCHEMA","GET_SCORE_RESPONSE_SCHEMA","buildDeleteRoute","DELETE_SCORE_RESPONSE_SCHEMA","buildPayloadRoute","CREATE_SCORE_REQUEST_BODY_SCHEMA","CREATE_SCORE_RESPONSE_SCHEMA"],"mappings":";;;;;AAUO,MAAM,WAAWA,aAAAA,cAAc;AAAA,EACrC,aAAa;AAAA,EACb,qBAAqBC,YAAA;AAAA,EACrB,yBAAyBC,WAAA;AAAA,EACzB,cAAc,CAAC,EAAE,WAAW,OAAO,WAAA,MAClC,aAAa,SAAS,SAAS,KAAK,cAAc,UAAU;AAAA,EAC7D,2BAA2BC,WAAAA;AAC5B,CAAC;AAEM,MAAM,cAAcC,aAAAA,iBAAiB;AAAA,EAC3C,aAAa;AAAA,EACb,qBAAqBH,YAAA;AAAA,EACrB,yBAAyBC,WAAA;AAAA,EACzB,cAAc,CAAC,EAAE,WAAW,OAAO,WAAA,MAClC,aAAa,SAAS,SAAS,KAAK,cAAc,UAAU;AAAA,EAC7D,yBAAyB;AAAA,EACzB,2BAA2BG,WAAAA;AAC5B,CAAC;AAEM,MAAM,cAAcC,aAAAA,kBAAkB;AAAA,EAC5C,aAAa;AAAA,EACb,QAAQ;AAAA,EACR,qBAAqBL,YAAA;AAAA,EACrB,mBAAmBM,WAAA;AAAA,EACnB,yBAAyBL,WAAA;AAAA,EACzB,cAAc,CAAC,EAAE,WAAW,OAAO,WAAA,MAClC,aAAa,SAAS,SAAS,KAAK,cAAc,UAAU;AAAA,EAC7D,2BAA2BM,WAAAA;AAC5B,CAAC;;;;"}
@@ -1,8 +1,33 @@
1
- import { useEffect } from "react";
2
- const useEffectOnce = (effect) => {
3
- useEffect(effect, []);
4
- };
1
+ import { buildGetRoute, buildDeleteRoute, buildPayloadRoute } from "@lokalise/api-contracts";
2
+ import { GET_SCORE_RESPONSE_SCHEMA, SCORE_REQUEST_QUERY_SCHEMA, DELETE_SCORE_RESPONSE_SCHEMA, CREATE_SCORE_RESPONSE_SCHEMA, CREATE_SCORE_REQUEST_BODY_SCHEMA } from "./harmony49.mjs";
3
+ import { BASE_API_ENDPOINT_HEADER_SCHEMA } from "./harmony50.mjs";
4
+ const getScore = buildGetRoute({
5
+ description: "Fetch translation quality score",
6
+ requestHeaderSchema: BASE_API_ENDPOINT_HEADER_SCHEMA,
7
+ requestPathParamsSchema: SCORE_REQUEST_QUERY_SCHEMA,
8
+ pathResolver: ({ projectId, keyId, languageId }) => `/projects/${projectId}/keys/${keyId}/languages/${languageId}/lqa-report`,
9
+ successResponseBodySchema: GET_SCORE_RESPONSE_SCHEMA
10
+ });
11
+ const deleteScore = buildDeleteRoute({
12
+ description: "Delete translation quality score",
13
+ requestHeaderSchema: BASE_API_ENDPOINT_HEADER_SCHEMA,
14
+ requestPathParamsSchema: SCORE_REQUEST_QUERY_SCHEMA,
15
+ pathResolver: ({ projectId, keyId, languageId }) => `/projects/${projectId}/keys/${keyId}/languages/${languageId}/lqa-report`,
16
+ isEmptyResponseExpected: true,
17
+ successResponseBodySchema: DELETE_SCORE_RESPONSE_SCHEMA
18
+ });
19
+ const createScore = buildPayloadRoute({
20
+ description: "Create translation quality score",
21
+ method: "put",
22
+ requestHeaderSchema: BASE_API_ENDPOINT_HEADER_SCHEMA,
23
+ requestBodySchema: CREATE_SCORE_REQUEST_BODY_SCHEMA,
24
+ requestPathParamsSchema: SCORE_REQUEST_QUERY_SCHEMA,
25
+ pathResolver: ({ projectId, keyId, languageId }) => `/projects/${projectId}/keys/${keyId}/languages/${languageId}/lqa-report/actions/generate`,
26
+ successResponseBodySchema: CREATE_SCORE_RESPONSE_SCHEMA
27
+ });
5
28
  export {
6
- useEffectOnce
29
+ createScore,
30
+ deleteScore,
31
+ getScore
7
32
  };
8
33
  //# sourceMappingURL=harmony15.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony15.mjs","sources":["../src/utils/hooks/useEffectOnce.ts"],"sourcesContent":["import type { EffectCallback } from 'react'\nimport { useEffect } from 'react'\n\n/**\n * React hook that runs an effect only once.\n */\nexport const useEffectOnce = (effect: EffectCallback) => {\n\tuseEffect(effect, [])\n}\n"],"names":[],"mappings":";AAMa,MAAA,gBAAgB,CAAC,WAA2B;AAC9C,YAAA,QAAQ,EAAE;AACrB;"}
1
+ {"version":3,"file":"harmony15.mjs","sources":["../src/features/publicApi/score.ts"],"sourcesContent":["import { buildDeleteRoute, buildGetRoute, buildPayloadRoute } from '@lokalise/api-contracts'\nimport {\n\tCREATE_SCORE_REQUEST_BODY_SCHEMA,\n\tCREATE_SCORE_RESPONSE_SCHEMA,\n\tDELETE_SCORE_RESPONSE_SCHEMA,\n\tGET_SCORE_RESPONSE_SCHEMA,\n\tSCORE_REQUEST_QUERY_SCHEMA,\n} from './types/scoreTypes'\nimport { BASE_API_ENDPOINT_HEADER_SCHEMA } from './types/sharedTypes'\n\nexport const getScore = buildGetRoute({\n\tdescription: 'Fetch translation quality score',\n\trequestHeaderSchema: BASE_API_ENDPOINT_HEADER_SCHEMA,\n\trequestPathParamsSchema: SCORE_REQUEST_QUERY_SCHEMA,\n\tpathResolver: ({ projectId, keyId, languageId }) =>\n\t\t`/projects/${projectId}/keys/${keyId}/languages/${languageId}/lqa-report`,\n\tsuccessResponseBodySchema: GET_SCORE_RESPONSE_SCHEMA,\n})\n\nexport const deleteScore = buildDeleteRoute({\n\tdescription: 'Delete translation quality score',\n\trequestHeaderSchema: BASE_API_ENDPOINT_HEADER_SCHEMA,\n\trequestPathParamsSchema: SCORE_REQUEST_QUERY_SCHEMA,\n\tpathResolver: ({ projectId, keyId, languageId }) =>\n\t\t`/projects/${projectId}/keys/${keyId}/languages/${languageId}/lqa-report`,\n\tisEmptyResponseExpected: true,\n\tsuccessResponseBodySchema: DELETE_SCORE_RESPONSE_SCHEMA,\n})\n\nexport const createScore = buildPayloadRoute({\n\tdescription: 'Create translation quality score',\n\tmethod: 'put',\n\trequestHeaderSchema: BASE_API_ENDPOINT_HEADER_SCHEMA,\n\trequestBodySchema: CREATE_SCORE_REQUEST_BODY_SCHEMA,\n\trequestPathParamsSchema: SCORE_REQUEST_QUERY_SCHEMA,\n\tpathResolver: ({ projectId, keyId, languageId }) =>\n\t\t`/projects/${projectId}/keys/${keyId}/languages/${languageId}/lqa-report/actions/generate`,\n\tsuccessResponseBodySchema: CREATE_SCORE_RESPONSE_SCHEMA,\n})\n"],"names":[],"mappings":";;;AAUO,MAAM,WAAW,cAAc;AAAA,EACrC,aAAa;AAAA,EACb,qBAAqB;AAAA,EACrB,yBAAyB;AAAA,EACzB,cAAc,CAAC,EAAE,WAAW,OAAO,WAAA,MAClC,aAAa,SAAS,SAAS,KAAK,cAAc,UAAU;AAAA,EAC7D,2BAA2B;AAC5B,CAAC;AAEM,MAAM,cAAc,iBAAiB;AAAA,EAC3C,aAAa;AAAA,EACb,qBAAqB;AAAA,EACrB,yBAAyB;AAAA,EACzB,cAAc,CAAC,EAAE,WAAW,OAAO,WAAA,MAClC,aAAa,SAAS,SAAS,KAAK,cAAc,UAAU;AAAA,EAC7D,yBAAyB;AAAA,EACzB,2BAA2B;AAC5B,CAAC;AAEM,MAAM,cAAc,kBAAkB;AAAA,EAC5C,aAAa;AAAA,EACb,QAAQ;AAAA,EACR,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,yBAAyB;AAAA,EACzB,cAAc,CAAC,EAAE,WAAW,OAAO,WAAA,MAClC,aAAa,SAAS,SAAS,KAAK,cAAc,UAAU;AAAA,EAC7D,2BAA2B;AAC5B,CAAC;"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const hasAny = require("./harmony123.cjs");
4
- const createProjects = ({ teamRole }) => hasAny.hasAny(teamRole, "owner", "biller", "admin");
5
- exports.createProjects = createProjects;
3
+ const has = require("./harmony128.cjs");
4
+ const manageContributors = ({ projectPermissions }) => has.has(projectPermissions, "contributors");
5
+ exports.manageContributors = manageContributors;
6
6
  //# sourceMappingURL=harmony150.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony150.cjs","sources":["../src/features/permissions/action-resolvers/createProjects.ts"],"sourcesContent":["import { hasAny } from '@features/permissions/utils/hasAny'\nimport type { ActionResolver } from '../types'\n\nexport const createProjects: ActionResolver = ({ teamRole }) =>\n\thasAny(teamRole, 'owner', 'biller', 'admin')\n"],"names":["hasAny"],"mappings":";;;AAGa,MAAA,iBAAiC,CAAC,EAAE,eAChDA,OAAO,OAAA,UAAU,SAAS,UAAU,OAAO;;"}
1
+ {"version":3,"file":"harmony150.cjs","sources":["../src/features/permissions/action-resolvers/manageContributors.ts"],"sourcesContent":["import type { ActionResolver } from '../types'\nimport { has } from '../utils/has'\n\nexport const manageContributors: ActionResolver = ({ projectPermissions }) =>\n\thas(projectPermissions, 'contributors')\n"],"names":["has"],"mappings":";;;AAGO,MAAM,qBAAqC,CAAC,EAAE,mBACpD,MAAAA,IAAA,IAAI,oBAAoB,cAAc;;"}
@@ -1,6 +1,6 @@
1
- import { hasAny } from "./harmony123.mjs";
2
- const createProjects = ({ teamRole }) => hasAny(teamRole, "owner", "biller", "admin");
1
+ import { has } from "./harmony128.mjs";
2
+ const manageContributors = ({ projectPermissions }) => has(projectPermissions, "contributors");
3
3
  export {
4
- createProjects
4
+ manageContributors
5
5
  };
6
6
  //# sourceMappingURL=harmony150.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony150.mjs","sources":["../src/features/permissions/action-resolvers/createProjects.ts"],"sourcesContent":["import { hasAny } from '@features/permissions/utils/hasAny'\nimport type { ActionResolver } from '../types'\n\nexport const createProjects: ActionResolver = ({ teamRole }) =>\n\thasAny(teamRole, 'owner', 'biller', 'admin')\n"],"names":[],"mappings":";AAGa,MAAA,iBAAiC,CAAC,EAAE,eAChD,OAAO,UAAU,SAAS,UAAU,OAAO;"}
1
+ {"version":3,"file":"harmony150.mjs","sources":["../src/features/permissions/action-resolvers/manageContributors.ts"],"sourcesContent":["import type { ActionResolver } from '../types'\nimport { has } from '../utils/has'\n\nexport const manageContributors: ActionResolver = ({ projectPermissions }) =>\n\thas(projectPermissions, 'contributors')\n"],"names":[],"mappings":";AAGO,MAAM,qBAAqC,CAAC,EAAE,mBACpD,MAAA,IAAI,oBAAoB,cAAc;"}
@@ -1,8 +1,17 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const _commonjsHelpers = require("./harmony175.cjs");
4
- const debounce$1 = require("./harmony154.cjs");
5
- var debounceExports = debounce$1.__require();
6
- const debounce = /* @__PURE__ */ _commonjsHelpers.getDefaultExportFromCjs(debounceExports);
7
- exports.default = debounce;
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const canPerformActionByProjectType = require("./harmony166.cjs");
4
+ const hasAny = require("./harmony127.cjs");
5
+ const has = require("./harmony128.cjs");
6
+ const canDownloadFiles = ({ projectType, projectPermissions }) => canPerformActionByProjectType.canPerformActionByProjectType(projectType, {
7
+ classic: () => has.has(projectPermissions, "download"),
8
+ // This is a temporary workaround for the marketing project type - upload and download permissions are not yet supported
9
+ // so to restrict translators from accessing the upload/download page we are checking that they have any permissions at all.
10
+ // The reason for this is that, at the moment, the Translators role will assign no permissions to the user. So we are effectively
11
+ // simulating a check for 'is this user a translator?' (since project 'roles' don't actually exist).
12
+ // The correct check is to check for upload permission, so when that is implemented this will continue to work as expected,
13
+ // but will need to remove this first part of the check.
14
+ marketing: () => hasAny.hasAny(projectPermissions, "contributors", "settings", "manage_languages") || has.has(projectPermissions, "download")
15
+ });
16
+ exports.canDownloadFiles = canDownloadFiles;
8
17
  //# sourceMappingURL=harmony151.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony151.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"harmony151.cjs","sources":["../src/features/permissions/action-resolvers/canDownloadFiles.ts"],"sourcesContent":["import { canPerformActionByProjectType } from '@features/permissions/utils/canPerformActionByProjectType'\nimport { hasAny } from '@features/permissions/utils/hasAny'\nimport type { ActionResolver } from '../types'\nimport { has } from '../utils/has'\n\nexport const canDownloadFiles: ActionResolver = ({ projectType, projectPermissions }) =>\n\tcanPerformActionByProjectType(projectType, {\n\t\tclassic: () => has(projectPermissions, 'download'),\n\n\t\t// This is a temporary workaround for the marketing project type - upload and download permissions are not yet supported\n\t\t// so to restrict translators from accessing the upload/download page we are checking that they have any permissions at all.\n\t\t// The reason for this is that, at the moment, the Translators role will assign no permissions to the user. So we are effectively\n\t\t// simulating a check for 'is this user a translator?' (since project 'roles' don't actually exist).\n\t\t// The correct check is to check for upload permission, so when that is implemented this will continue to work as expected,\n\t\t// but will need to remove this first part of the check.\n\t\tmarketing: () =>\n\t\t\thasAny(projectPermissions, 'contributors', 'settings', 'manage_languages') ||\n\t\t\thas(projectPermissions, 'download'),\n\t})\n"],"names":["canPerformActionByProjectType","has","hasAny"],"mappings":";;;;;AAKO,MAAM,mBAAmC,CAAC,EAAE,aAAa,mBAAmB,MAClFA,8BAAAA,8BAA8B,aAAa;AAAA,EAC1C,SAAS,MAAMC,IAAAA,IAAI,oBAAoB,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQjD,WAAW,MACVC,cAAO,oBAAoB,gBAAgB,YAAY,kBAAkB,KACzED,QAAI,oBAAoB,UAAU;AACpC,CAAC;;"}
@@ -1,8 +1,17 @@
1
- import { getDefaultExportFromCjs } from "./harmony175.mjs";
2
- import { __require as requireDebounce } from "./harmony154.mjs";
3
- var debounceExports = requireDebounce();
4
- const debounce = /* @__PURE__ */ getDefaultExportFromCjs(debounceExports);
1
+ import { canPerformActionByProjectType } from "./harmony166.mjs";
2
+ import { hasAny } from "./harmony127.mjs";
3
+ import { has } from "./harmony128.mjs";
4
+ const canDownloadFiles = ({ projectType, projectPermissions }) => canPerformActionByProjectType(projectType, {
5
+ classic: () => has(projectPermissions, "download"),
6
+ // This is a temporary workaround for the marketing project type - upload and download permissions are not yet supported
7
+ // so to restrict translators from accessing the upload/download page we are checking that they have any permissions at all.
8
+ // The reason for this is that, at the moment, the Translators role will assign no permissions to the user. So we are effectively
9
+ // simulating a check for 'is this user a translator?' (since project 'roles' don't actually exist).
10
+ // The correct check is to check for upload permission, so when that is implemented this will continue to work as expected,
11
+ // but will need to remove this first part of the check.
12
+ marketing: () => hasAny(projectPermissions, "contributors", "settings", "manage_languages") || has(projectPermissions, "download")
13
+ });
5
14
  export {
6
- debounce as default
15
+ canDownloadFiles
7
16
  };
8
17
  //# sourceMappingURL=harmony151.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony151.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
1
+ {"version":3,"file":"harmony151.mjs","sources":["../src/features/permissions/action-resolvers/canDownloadFiles.ts"],"sourcesContent":["import { canPerformActionByProjectType } from '@features/permissions/utils/canPerformActionByProjectType'\nimport { hasAny } from '@features/permissions/utils/hasAny'\nimport type { ActionResolver } from '../types'\nimport { has } from '../utils/has'\n\nexport const canDownloadFiles: ActionResolver = ({ projectType, projectPermissions }) =>\n\tcanPerformActionByProjectType(projectType, {\n\t\tclassic: () => has(projectPermissions, 'download'),\n\n\t\t// This is a temporary workaround for the marketing project type - upload and download permissions are not yet supported\n\t\t// so to restrict translators from accessing the upload/download page we are checking that they have any permissions at all.\n\t\t// The reason for this is that, at the moment, the Translators role will assign no permissions to the user. So we are effectively\n\t\t// simulating a check for 'is this user a translator?' (since project 'roles' don't actually exist).\n\t\t// The correct check is to check for upload permission, so when that is implemented this will continue to work as expected,\n\t\t// but will need to remove this first part of the check.\n\t\tmarketing: () =>\n\t\t\thasAny(projectPermissions, 'contributors', 'settings', 'manage_languages') ||\n\t\t\thas(projectPermissions, 'download'),\n\t})\n"],"names":[],"mappings":";;;AAKO,MAAM,mBAAmC,CAAC,EAAE,aAAa,mBAAmB,MAClF,8BAA8B,aAAa;AAAA,EAC1C,SAAS,MAAM,IAAI,oBAAoB,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQjD,WAAW,MACV,OAAO,oBAAoB,gBAAgB,YAAY,kBAAkB,KACzE,IAAI,oBAAoB,UAAU;AACpC,CAAC;"}
@@ -1,8 +1,17 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const _commonjsHelpers = require("./harmony175.cjs");
4
- const throttle$1 = require("./harmony158.cjs");
5
- var throttleExports = throttle$1.__require();
6
- const throttle = /* @__PURE__ */ _commonjsHelpers.getDefaultExportFromCjs(throttleExports);
7
- exports.default = throttle;
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const canPerformActionByProjectType = require("./harmony166.cjs");
4
+ const hasAny = require("./harmony127.cjs");
5
+ const has = require("./harmony128.cjs");
6
+ const canUploadFiles = ({ projectPermissions, projectType }) => canPerformActionByProjectType.canPerformActionByProjectType(projectType, {
7
+ classic: () => has.has(projectPermissions, "upload"),
8
+ // This is a temporary workaround for the marketing project type - upload and download permissions are not yet supported
9
+ // so to restrict translators from accessing the upload/download page we are checking that they have any permissions at all.
10
+ // The reason for this is that, at the moment, the Translators role will assign no permissions to the user. So we are effectively
11
+ // simulating a check for 'is this user a translator?' (since project 'roles' don't actually exist).
12
+ // The correct check is to check for upload permission, so when that is implemented this will continue to work as expected,
13
+ // but will need to remove this first part of the check.
14
+ marketing: () => hasAny.hasAny(projectPermissions, "contributors", "settings", "manage_languages") || has.has(projectPermissions, "upload")
15
+ });
16
+ exports.canUploadFiles = canUploadFiles;
8
17
  //# sourceMappingURL=harmony152.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony152.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"harmony152.cjs","sources":["../src/features/permissions/action-resolvers/canUploadFiles.ts"],"sourcesContent":["import { canPerformActionByProjectType } from '@features/permissions/utils/canPerformActionByProjectType'\nimport { hasAny } from '@features/permissions/utils/hasAny'\nimport type { ActionResolver } from '../types'\nimport { has } from '../utils/has'\n\nexport const canUploadFiles: ActionResolver = ({ projectPermissions, projectType }) =>\n\tcanPerformActionByProjectType(projectType, {\n\t\tclassic: () => has(projectPermissions, 'upload'),\n\n\t\t// This is a temporary workaround for the marketing project type - upload and download permissions are not yet supported\n\t\t// so to restrict translators from accessing the upload/download page we are checking that they have any permissions at all.\n\t\t// The reason for this is that, at the moment, the Translators role will assign no permissions to the user. So we are effectively\n\t\t// simulating a check for 'is this user a translator?' (since project 'roles' don't actually exist).\n\t\t// The correct check is to check for upload permission, so when that is implemented this will continue to work as expected,\n\t\t// but will need to remove this first part of the check.\n\t\tmarketing: () =>\n\t\t\thasAny(projectPermissions, 'contributors', 'settings', 'manage_languages') ||\n\t\t\thas(projectPermissions, 'upload'),\n\t})\n"],"names":["canPerformActionByProjectType","has","hasAny"],"mappings":";;;;;AAKO,MAAM,iBAAiC,CAAC,EAAE,oBAAoB,YAAY,MAChFA,8BAAAA,8BAA8B,aAAa;AAAA,EAC1C,SAAS,MAAMC,IAAAA,IAAI,oBAAoB,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQ/C,WAAW,MACVC,cAAO,oBAAoB,gBAAgB,YAAY,kBAAkB,KACzED,QAAI,oBAAoB,QAAQ;AAClC,CAAC;;"}
@@ -1,8 +1,17 @@
1
- import { getDefaultExportFromCjs } from "./harmony175.mjs";
2
- import { __require as requireThrottle } from "./harmony158.mjs";
3
- var throttleExports = requireThrottle();
4
- const throttle = /* @__PURE__ */ getDefaultExportFromCjs(throttleExports);
1
+ import { canPerformActionByProjectType } from "./harmony166.mjs";
2
+ import { hasAny } from "./harmony127.mjs";
3
+ import { has } from "./harmony128.mjs";
4
+ const canUploadFiles = ({ projectPermissions, projectType }) => canPerformActionByProjectType(projectType, {
5
+ classic: () => has(projectPermissions, "upload"),
6
+ // This is a temporary workaround for the marketing project type - upload and download permissions are not yet supported
7
+ // so to restrict translators from accessing the upload/download page we are checking that they have any permissions at all.
8
+ // The reason for this is that, at the moment, the Translators role will assign no permissions to the user. So we are effectively
9
+ // simulating a check for 'is this user a translator?' (since project 'roles' don't actually exist).
10
+ // The correct check is to check for upload permission, so when that is implemented this will continue to work as expected,
11
+ // but will need to remove this first part of the check.
12
+ marketing: () => hasAny(projectPermissions, "contributors", "settings", "manage_languages") || has(projectPermissions, "upload")
13
+ });
5
14
  export {
6
- throttle as default
15
+ canUploadFiles
7
16
  };
8
17
  //# sourceMappingURL=harmony152.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony152.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
1
+ {"version":3,"file":"harmony152.mjs","sources":["../src/features/permissions/action-resolvers/canUploadFiles.ts"],"sourcesContent":["import { canPerformActionByProjectType } from '@features/permissions/utils/canPerformActionByProjectType'\nimport { hasAny } from '@features/permissions/utils/hasAny'\nimport type { ActionResolver } from '../types'\nimport { has } from '../utils/has'\n\nexport const canUploadFiles: ActionResolver = ({ projectPermissions, projectType }) =>\n\tcanPerformActionByProjectType(projectType, {\n\t\tclassic: () => has(projectPermissions, 'upload'),\n\n\t\t// This is a temporary workaround for the marketing project type - upload and download permissions are not yet supported\n\t\t// so to restrict translators from accessing the upload/download page we are checking that they have any permissions at all.\n\t\t// The reason for this is that, at the moment, the Translators role will assign no permissions to the user. So we are effectively\n\t\t// simulating a check for 'is this user a translator?' (since project 'roles' don't actually exist).\n\t\t// The correct check is to check for upload permission, so when that is implemented this will continue to work as expected,\n\t\t// but will need to remove this first part of the check.\n\t\tmarketing: () =>\n\t\t\thasAny(projectPermissions, 'contributors', 'settings', 'manage_languages') ||\n\t\t\thas(projectPermissions, 'upload'),\n\t})\n"],"names":[],"mappings":";;;AAKO,MAAM,iBAAiC,CAAC,EAAE,oBAAoB,YAAY,MAChF,8BAA8B,aAAa;AAAA,EAC1C,SAAS,MAAM,IAAI,oBAAoB,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQ/C,WAAW,MACV,OAAO,oBAAoB,gBAAgB,YAAY,kBAAkB,KACzE,IAAI,oBAAoB,QAAQ;AAClC,CAAC;"}
@@ -1,13 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const hasAdminRight = (adminRights, right) => {
4
- if (!Array.isArray(adminRights)) return false;
5
- return adminRights.includes(right);
6
- };
7
- const hasAnyAdminRight = (adminRights, rights) => {
8
- if (!Array.isArray(adminRights)) return false;
9
- return rights.some((right) => adminRights.includes(right));
10
- };
11
- exports.hasAdminRight = hasAdminRight;
12
- exports.hasAnyAdminRight = hasAnyAdminRight;
3
+ const hasAny = require("./harmony127.cjs");
4
+ const createProjects = ({ teamRole }) => hasAny.hasAny(teamRole, "owner", "biller", "admin");
5
+ exports.createProjects = createProjects;
13
6
  //# sourceMappingURL=harmony153.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony153.cjs","sources":["../src/features/auth/utils/permissions.ts"],"sourcesContent":["// Helper function to check if user has a specific admin right\nexport const hasAdminRight = (adminRights: string[], right: string): boolean => {\n\tif (!Array.isArray(adminRights)) return false\n\treturn adminRights.includes(right)\n}\n\n// Helper function to check if user has any of the specified admin rights\nexport const hasAnyAdminRight = (adminRights: string[], rights: string[]): boolean => {\n\tif (!Array.isArray(adminRights)) return false\n\treturn rights.some((right) => adminRights.includes(right))\n}\n"],"names":[],"mappings":";;AACa,MAAA,gBAAgB,CAAC,aAAuB,UAA2B;AAC/E,MAAI,CAAC,MAAM,QAAQ,WAAW,EAAU,QAAA;AACjC,SAAA,YAAY,SAAS,KAAK;AAClC;AAGa,MAAA,mBAAmB,CAAC,aAAuB,WAA8B;AACrF,MAAI,CAAC,MAAM,QAAQ,WAAW,EAAU,QAAA;AACxC,SAAO,OAAO,KAAK,CAAC,UAAU,YAAY,SAAS,KAAK,CAAC;AAC1D;;;"}
1
+ {"version":3,"file":"harmony153.cjs","sources":["../src/features/permissions/action-resolvers/createProjects.ts"],"sourcesContent":["import { hasAny } from '@features/permissions/utils/hasAny'\nimport type { ActionResolver } from '../types'\n\nexport const createProjects: ActionResolver = ({ teamRole }) =>\n\thasAny(teamRole, 'owner', 'biller', 'admin')\n"],"names":["hasAny"],"mappings":";;;AAGa,MAAA,iBAAiC,CAAC,EAAE,eAChDA,OAAO,OAAA,UAAU,SAAS,UAAU,OAAO;;"}
@@ -1,13 +1,6 @@
1
- const hasAdminRight = (adminRights, right) => {
2
- if (!Array.isArray(adminRights)) return false;
3
- return adminRights.includes(right);
4
- };
5
- const hasAnyAdminRight = (adminRights, rights) => {
6
- if (!Array.isArray(adminRights)) return false;
7
- return rights.some((right) => adminRights.includes(right));
8
- };
1
+ import { hasAny } from "./harmony127.mjs";
2
+ const createProjects = ({ teamRole }) => hasAny(teamRole, "owner", "biller", "admin");
9
3
  export {
10
- hasAdminRight,
11
- hasAnyAdminRight
4
+ createProjects
12
5
  };
13
6
  //# sourceMappingURL=harmony153.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony153.mjs","sources":["../src/features/auth/utils/permissions.ts"],"sourcesContent":["// Helper function to check if user has a specific admin right\nexport const hasAdminRight = (adminRights: string[], right: string): boolean => {\n\tif (!Array.isArray(adminRights)) return false\n\treturn adminRights.includes(right)\n}\n\n// Helper function to check if user has any of the specified admin rights\nexport const hasAnyAdminRight = (adminRights: string[], rights: string[]): boolean => {\n\tif (!Array.isArray(adminRights)) return false\n\treturn rights.some((right) => adminRights.includes(right))\n}\n"],"names":[],"mappings":"AACa,MAAA,gBAAgB,CAAC,aAAuB,UAA2B;AAC/E,MAAI,CAAC,MAAM,QAAQ,WAAW,EAAU,QAAA;AACjC,SAAA,YAAY,SAAS,KAAK;AAClC;AAGa,MAAA,mBAAmB,CAAC,aAAuB,WAA8B;AACrF,MAAI,CAAC,MAAM,QAAQ,WAAW,EAAU,QAAA;AACxC,SAAO,OAAO,KAAK,CAAC,UAAU,YAAY,SAAS,KAAK,CAAC;AAC1D;"}
1
+ {"version":3,"file":"harmony153.mjs","sources":["../src/features/permissions/action-resolvers/createProjects.ts"],"sourcesContent":["import { hasAny } from '@features/permissions/utils/hasAny'\nimport type { ActionResolver } from '../types'\n\nexport const createProjects: ActionResolver = ({ teamRole }) =>\n\thasAny(teamRole, 'owner', 'biller', 'admin')\n"],"names":[],"mappings":";AAGa,MAAA,iBAAiC,CAAC,EAAE,eAChD,OAAO,UAAU,SAAS,UAAU,OAAO;"}
@@ -1,99 +1,12 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const isObject = require("./harmony155.cjs");
4
- const now = require("./harmony156.cjs");
5
- const toNumber = require("./harmony157.cjs");
6
- var debounce_1;
7
- var hasRequiredDebounce;
8
- function requireDebounce() {
9
- if (hasRequiredDebounce) return debounce_1;
10
- hasRequiredDebounce = 1;
11
- var isObject$1 = isObject.__require(), now$1 = now.__require(), toNumber$1 = toNumber.__require();
12
- var FUNC_ERROR_TEXT = "Expected a function";
13
- var nativeMax = Math.max, nativeMin = Math.min;
14
- function debounce(func, wait, options) {
15
- var lastArgs, lastThis, maxWait, result, timerId, lastCallTime, lastInvokeTime = 0, leading = false, maxing = false, trailing = true;
16
- if (typeof func != "function") {
17
- throw new TypeError(FUNC_ERROR_TEXT);
18
- }
19
- wait = toNumber$1(wait) || 0;
20
- if (isObject$1(options)) {
21
- leading = !!options.leading;
22
- maxing = "maxWait" in options;
23
- maxWait = maxing ? nativeMax(toNumber$1(options.maxWait) || 0, wait) : maxWait;
24
- trailing = "trailing" in options ? !!options.trailing : trailing;
25
- }
26
- function invokeFunc(time) {
27
- var args = lastArgs, thisArg = lastThis;
28
- lastArgs = lastThis = void 0;
29
- lastInvokeTime = time;
30
- result = func.apply(thisArg, args);
31
- return result;
32
- }
33
- function leadingEdge(time) {
34
- lastInvokeTime = time;
35
- timerId = setTimeout(timerExpired, wait);
36
- return leading ? invokeFunc(time) : result;
37
- }
38
- function remainingWait(time) {
39
- var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime, timeWaiting = wait - timeSinceLastCall;
40
- return maxing ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting;
41
- }
42
- function shouldInvoke(time) {
43
- var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime;
44
- return lastCallTime === void 0 || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait;
45
- }
46
- function timerExpired() {
47
- var time = now$1();
48
- if (shouldInvoke(time)) {
49
- return trailingEdge(time);
50
- }
51
- timerId = setTimeout(timerExpired, remainingWait(time));
52
- }
53
- function trailingEdge(time) {
54
- timerId = void 0;
55
- if (trailing && lastArgs) {
56
- return invokeFunc(time);
57
- }
58
- lastArgs = lastThis = void 0;
59
- return result;
60
- }
61
- function cancel() {
62
- if (timerId !== void 0) {
63
- clearTimeout(timerId);
64
- }
65
- lastInvokeTime = 0;
66
- lastArgs = lastCallTime = lastThis = timerId = void 0;
67
- }
68
- function flush() {
69
- return timerId === void 0 ? result : trailingEdge(now$1());
70
- }
71
- function debounced() {
72
- var time = now$1(), isInvoking = shouldInvoke(time);
73
- lastArgs = arguments;
74
- lastThis = this;
75
- lastCallTime = time;
76
- if (isInvoking) {
77
- if (timerId === void 0) {
78
- return leadingEdge(lastCallTime);
79
- }
80
- if (maxing) {
81
- clearTimeout(timerId);
82
- timerId = setTimeout(timerExpired, wait);
83
- return invokeFunc(lastCallTime);
84
- }
85
- }
86
- if (timerId === void 0) {
87
- timerId = setTimeout(timerExpired, wait);
88
- }
89
- return result;
90
- }
91
- debounced.cancel = cancel;
92
- debounced.flush = flush;
93
- return debounced;
94
- }
95
- debounce_1 = debounce;
96
- return debounce_1;
97
- }
98
- exports.__require = requireDebounce;
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ const mainLabel = "_mainLabel_1baso_1";
4
+ const subLabel = "_subLabel_1baso_5";
5
+ const styles = {
6
+ mainLabel,
7
+ subLabel
8
+ };
9
+ exports.default = styles;
10
+ exports.mainLabel = mainLabel;
11
+ exports.subLabel = subLabel;
99
12
  //# sourceMappingURL=harmony154.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"harmony154.cjs","sources":["../node_modules/lodash/debounce.js"],"sourcesContent":["var isObject = require('./isObject'),\n now = require('./now'),\n toNumber = require('./toNumber');\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\nmodule.exports = debounce;\n"],"names":["isObject","require$$0","now","require$$1","toNumber","require$$2"],"mappings":";;;;;;;;;;AAAA,MAAIA,aAAWC,SAAAA,UAAqB,GAChCC,QAAMC,IAAAA,UAAgB,GACtBC,aAAWC,SAAAA,UAAqB;AAGpC,MAAI,kBAAkB;AAGtB,MAAI,YAAY,KAAK,KACjB,YAAY,KAAK;AAwDrB,WAAS,SAAS,MAAM,MAAM,SAAS;AACrC,QAAI,UACA,UACA,SACA,QACA,SACA,cACA,iBAAiB,GACjB,UAAU,OACV,SAAS,OACT,WAAW;AAEf,QAAI,OAAO,QAAQ,YAAY;AAC7B,YAAM,IAAI,UAAU,eAAe;AAAA,IACvC;AACE,WAAOD,WAAS,IAAI,KAAK;AACzB,QAAIJ,WAAS,OAAO,GAAG;AACrB,gBAAU,CAAC,CAAC,QAAQ;AACpB,eAAS,aAAa;AACtB,gBAAU,SAAS,UAAUI,WAAS,QAAQ,OAAO,KAAK,GAAG,IAAI,IAAI;AACrE,iBAAW,cAAc,UAAU,CAAC,CAAC,QAAQ,WAAW;AAAA,IAC5D;AAEE,aAAS,WAAW,MAAM;AACxB,UAAI,OAAO,UACP,UAAU;AAEd,iBAAW,WAAW;AACtB,uBAAiB;AACjB,eAAS,KAAK,MAAM,SAAS,IAAI;AACjC,aAAO;AAAA,IACX;AAEE,aAAS,YAAY,MAAM;AAEzB,uBAAiB;AAEjB,gBAAU,WAAW,cAAc,IAAI;AAEvC,aAAO,UAAU,WAAW,IAAI,IAAI;AAAA,IACxC;AAEE,aAAS,cAAc,MAAM;AAC3B,UAAI,oBAAoB,OAAO,cAC3B,sBAAsB,OAAO,gBAC7B,cAAc,OAAO;AAEzB,aAAO,SACH,UAAU,aAAa,UAAU,mBAAmB,IACpD;AAAA,IACR;AAEE,aAAS,aAAa,MAAM;AAC1B,UAAI,oBAAoB,OAAO,cAC3B,sBAAsB,OAAO;AAKjC,aAAQ,iBAAiB,UAAc,qBAAqB,QACzD,oBAAoB,KAAO,UAAU,uBAAuB;AAAA,IACnE;AAEE,aAAS,eAAe;AACtB,UAAI,OAAOF,MAAK;AAChB,UAAI,aAAa,IAAI,GAAG;AACtB,eAAO,aAAa,IAAI;AAAA,MAC9B;AAEI,gBAAU,WAAW,cAAc,cAAc,IAAI,CAAC;AAAA,IAC1D;AAEE,aAAS,aAAa,MAAM;AAC1B,gBAAU;AAIV,UAAI,YAAY,UAAU;AACxB,eAAO,WAAW,IAAI;AAAA,MAC5B;AACI,iBAAW,WAAW;AACtB,aAAO;AAAA,IACX;AAEE,aAAS,SAAS;AAChB,UAAI,YAAY,QAAW;AACzB,qBAAa,OAAO;AAAA,MAC1B;AACI,uBAAiB;AACjB,iBAAW,eAAe,WAAW,UAAU;AAAA,IACnD;AAEE,aAAS,QAAQ;AACf,aAAO,YAAY,SAAY,SAAS,aAAaA,MAAG,CAAE;AAAA,IAC9D;AAEE,aAAS,YAAY;AACnB,UAAI,OAAOA,MAAK,GACZ,aAAa,aAAa,IAAI;AAElC,iBAAW;AACX,iBAAW;AACX,qBAAe;AAEf,UAAI,YAAY;AACd,YAAI,YAAY,QAAW;AACzB,iBAAO,YAAY,YAAY;AAAA,QACvC;AACM,YAAI,QAAQ;AAEV,uBAAa,OAAO;AACpB,oBAAU,WAAW,cAAc,IAAI;AACvC,iBAAO,WAAW,YAAY;AAAA,QACtC;AAAA,MACA;AACI,UAAI,YAAY,QAAW;AACzB,kBAAU,WAAW,cAAc,IAAI;AAAA,MAC7C;AACI,aAAO;AAAA,IACX;AACE,cAAU,SAAS;AACnB,cAAU,QAAQ;AAClB,WAAO;AAAA,EACT;AAEA,eAAiB;;;;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"harmony154.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}